libftdi Archives

Subject: CPU Overhead?

From: Peter Witkowski <pwitkowski@xxxxxxxxx>
To: libftdi@xxxxxxxxxxxxxxxxxxxxxxx
Date: Thu, 9 May 2013 21:16:35 -0700
Hello,

I am writing an application that uses the FTDI FT2232H chip to read RS-485 data.  The data is coming in at a fairly high rate (6 Mbps baud rate with an effective data rate of about 3.2 Mbps).  My application must read in the data and then process it as quickly as possible.  Latency is frowned up, however I can generally accept up to 250 ms.

I have interfaced with the device using the D2XX driver provided by FTDI.  Overall, the application works fine from a functional standpoint.  However, the D2XX driver alone pulls about 45% CPU usage.  I have to run the application on an embedded ARM processor, which runs at 720 Mhz, so I don't have alot of horsepower per say.  I am using the FT_Read() function in a loop to extract the data and then pass it along.  In a simple application I wrote to test the driver, I extract the data in the loop and just write it to a file.  This alone pulls the 45% CPU usage figure (numbers from the top command) referenced earlier.

My problem is that I just received requirements forcing me to add to the application.  As a result, I was wondering if you all could give me some sense of the type of performance (in terms of CPU load) that I could expect comparatively from libftdi.  I'm primarily interested in ball park numbers of what I could expect using the ftdi_stream functionality.  Note that the application is written in C++, so if there are any things to worry about in terms of compiling with g++ vice gcc, please let me know.

Thank you in advance for your assistance.  I will keep you appraised of my progress.

--
Peter Witkowski


libftdi - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to libftdi+unsubscribe@xxxxxxxxxxxxxxxxxxxxxxx


Current Thread