FTDI Community

Please login or register.

Login with username, password and session length.
Advanced Search  

News:

Welcome to the FTDI Community!

Please read our Welcome Note

Technical Support enquires
please contact the team
@ FTDI Support


New Bridgetek Community is now open

Please note that we have created the Bridgetek Community to discuss all Bridgetek products e.g. EVE, MCU.

Please follow this link and create a new user account to get started.

Bridgetek Community

Show Posts

You can view here all posts made by this member. Note that you can only see posts made in areas to which you currently have access.

Messages - lordcape

Pages: [1]
1
Hi Bob. Yes, we have solved our issue. I don't remember quite well which was the puntual solution. I have some recomendations here that perhaps can help you:

1. You should program one long USB session (one call of the FT_Read
API) or queue appropriate number of the asynchronous FT_Read. You must
have queued transfers in D3xx/driver at any time. The ulBufferLength
parameter in FT_ReadPipe can be set to be able to deliver block of data
at constant rate. Try
ulBufferLength = 262144 or 65536 or >262144.

2. You must add memory buffer, e.g. FIFO, RAM, in FPGA side. It
prevents data loss when writes to FT60x are temporary impossible due to
USB protocol or USB transfers management in software.  The connection I
tested was with 80 kB additional FIFO buffer and queued transfers (Fig.
6). For 100 MB/s the buffer size may be smaller. Try 32-64 kB.

3. FPGA master should write data in burst transactions with the size of
4096 B (245 mode, 1 EP IN, 1 EP Out). It is pointed in  FTDI
application notes. The transfer is finished when short packet is
written to FT60x. If you write e.g. 4 samples 32-bit, stop, write
again, it is impossible to achieve 100 MB/s throughput.

4. For the best throughput, consider the FT_StreamPipe API. Transfer
switching is more lightweight when this function is used. But
additional memory buffer was still required.

5. Some steps to synchronize OS environment and the application may be
required. Consider continuous work with dummy data at the beginning and
valid data streaming after command trigger.

Two years ago I found a paper called "An Universal USB 3.0 FIFO Interface For Data Acquisition" by Krzysztof Mroczek and I wrote to him and he gave me those recomendations.

Best regards,

SR


2
Thanks asmi for your answer. Very helpful to me. Regards

SR

3
Hi. I have a proposal for a project where I have to manage the samples of an ADC of 8 bits @ 100 MHz. I have to deliver the samples to a PC quite fast, so I think that the FT600/601 would be a nice choice for that. The thing is that I've used in the past the FT232H with the FIFO sync mode (60 MHz clk FIFO) and the bottleneck where in FTDI D2xx drivers...they limited my data transfer speed much below the 480 Mbits of USB 2.0 (and in Windows worked faster than Linux, FTDI support said in that moment).

So I write this post to ask you if you (people of FTDI) have a practical (not the theoretical 5Gbps) number of the transfer rate in MB/s with the FT600/601 working in SYNC FIFO using D3xx drivers. My application needs 100 Ms/s maximum but if I use the 32 bits parallel FIFO I only would need 25 Ms/s. I would like to have a good margin to be sure that I don't loose samples (as in my FT232H old project)....

Thanks and regards

SR

4
Hi. In my application I have three FT4232H connected to a hub. The hub is connected to a PC with Linux. Each FT4232H shows four tty that I use as UARTS. Each FTDI has a hardware device (the same) connected to it. Each of these devices uses each UART to send messages with a different protocol between them four. The problem is that when I connect the hub, the host PC can ennumerate in different ways the ttys between power shutdown of the PC. And I can confuse the UARTS so I can confuse of the device I'm listening.

My question is if there is any possibility to know, before listening the UARTS,which tty is connected with which FTDI. Also, to know which tty is connected to the hardware FTDI port (A,B,C or D).

Now I'm solving this by trial and error, what is time wasting and very uncomfortable for the user.

I hope you can understand my poor english. Thanks and regards

SR


5
Discussion - Hardware / Use of a Hub IC to connect 3 FT4232H
« on: December 07, 2017, 03:44:06 PM »
Hi. I have used in many projects the FT4232H. In a new project, I need to use three FT4232H to get 12 independent UARTS but only one USB cable. So I need to use a HUB. Can FTDI recommend me a part to develop my project? I looked for the TUSB4041I from TI but perhaps FTDI can recommend another part. Thanks and regards!

SR

Pages: [1]