- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
HI, there
I'm working on the USB3 vision project. According to the command from PC, I had to send a 64KB package or 256KB or 1MB package to the PC, depend on different software.
As we know that the DMA buffer size in FX3 could be 65535 as maximum, and the ram only about 256KB available for data.
How I could implement the function meet above requests?
Best regards.
Solved! Go to Solution.
- Tags:
- data traffic
- dma
- fx3
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello zhijian wu,
- When you transfer 64KB to the Host (when requested) on the USB lines the data wouldn't go as single 64KB chunk (you might already know this, Max packet size is 1KB for bulk endpoint).
- As long as data is available to FX3 (from the camera/FPGA), and as we commit the data to the USB in the firmware, the data transfer would be continuous.
You need not have 1MB RAM to perform what you require.
- The Host would request 64KB/256KB/1MB and once it gets this amount from FX3, the API in the Host would return data to the application thereby ending that particular transfer.
Hope it is clear. Let me know for any doubts.
And you can also try this to see what I have mentioned: Please load bulksrcsink example which is in FX3 SDK. After device re-enumerates, open control center and request 64KB of data on the IN endpoint.
Regards,
Hemanth
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello zhijian wu,
- When you transfer 64KB to the Host (when requested) on the USB lines the data wouldn't go as single 64KB chunk (you might already know this, Max packet size is 1KB for bulk endpoint).
- As long as data is available to FX3 (from the camera/FPGA), and as we commit the data to the USB in the firmware, the data transfer would be continuous.
You need not have 1MB RAM to perform what you require.
- The Host would request 64KB/256KB/1MB and once it gets this amount from FX3, the API in the Host would return data to the application thereby ending that particular transfer.
Hope it is clear. Let me know for any doubts.
And you can also try this to see what I have mentioned: Please load bulksrcsink example which is in FX3 SDK. After device re-enumerates, open control center and request 64KB of data on the IN endpoint.
Regards,
Hemanth
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,Hemanth
Thanks for your conformation. It just like what I thought it should be.