libftdi Archives

Subject: RE: thruput testing on FTDI245BM

From: "Steve DeLaney" <onramp123@xxxxxxxxx>
To: <libftdi@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Tue, 17 Feb 2009 06:36:51 -0800
Hi Thomas, when we ran the thruput test it was not in bitbang mode. 
Our test is based on enabling the FIFO Tx and Rx buffers.

I'm a little puzzled by the documentation.   
The DS245B Version 1.7 datasheet page 6 references USB protocol engine
described in Chapter 9. But Chapter 9 is just disclaimer. 
and FTDI doesn't provide a register level specification.

Is there a better datasheet to use ?

Thanks,
Steve
 

-----Original Message-----
From: Thomas Jarosch [mailto:thomas.jarosch@xxxxxxxxxxxxx] 
Sent: Tuesday, February 17, 2009 1:43 AM
To: libftdi@xxxxxxxxxxxxxxxxxxxxxxx
Subject: Re: thruput testing on FTDI245BM

Steve,

On Saturday, 14. February 2009 19:07:51 Steve DeLaney wrote:
> Thanks to help on this forum I was able to resolve this issue and get 
> FTDI up and running.  starting from examples/bitbang.c, I made a 
> simple bulk transfer throughput test to measure the effect of baudrate 
> and block size
>
> the results executing on x86 show a dramatic difference.
> starting with default block size of 64 bytes/9600 "baud" yieds around 
> 250Kbit/second, to 4096 block size/921600 baud yields over 4.5Mbit/sec
>
> but now I'm starting to wonder about whats going on "under the hood"
> so to speak.  for starters,
>
> what is the effect of ftdi_set_baudrate()?
> is this like a classic serial port rate, or can an arbitrary clock 
> rate be selected?  it seems to limit out at some point and return an
error.

So, which FTDI chip are you using?

> its hard to tell for sure whats going on in the chip since there is no 
> register level spec. bitbang.c includes a couple of steps that seem 
> optional:  "turning everything on", and "turning everything off", 
> writing 0x0 and 0xff respectively to the bulk endpoint.  Is that just 
> required for bitbang?  because the thruput test works OK without it.
>
> and what the heck is ftdi_enable_bitbang() doing?  writing to the 
> control endpoint?

Yes, it enables the bitbang mode. Bitbang mode is basically configuring the
chip as a general purpose input/output port.
See the datasheet of the chip for details.

So you did your thruput tests in bitbang mode? The actual baudrate is 4x
higher than the configured baudrate in this mode.

Thomas


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



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

Current Thread