What API are you using to make these transfers? Xferdata or Begindataxfer / waitforxfer / finishdataxfer??
I have the same problem.
We have developped a USB camera using the CY7C68013 and we transfert the data in Bukl mode using Xferdata interface and the speed on Win XP is almost twice the speed on Windows Vista/7.
And it seems we can't do much about it with the Cypress Driver.
Any ideas ?
/* Style Definitions */
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-fareast-font-family:"Times New Roman";
Christian Bouvier, PhD
New Imaging Technologies
A World Class Supplier of CMOS Sensors
1-4 impasse de la noisette, Bat D, 1er Etage, 91370 Verrières le buisson, France
Use the streamer/screamer example that comes as part of SuiteUSB as reference and modify the code to use begindataxfer/waitforxfer/finishdataxfer.... That should provide an improvement.
Already tried that, unfortunately that does not improve much the transfert speed.
The problem is that we can achieve 27 MB/s speed with Win Xp and only 9 MB/s on Win 7 with the same code running on the device and on the host. We want to send 768x576 images with pixel depth of 16 bits at 30 FPS which works great on Win Xp and the limit is at only 10 FPS with Win 7 which is very annoying.
One other thing you might want to try is,
The variable XferSize determines the size of buffer allocated on the host controller driver. By default it is set to 8*endpoint size. You might want to set it to 64k and see how the performance varies.
It doesn't change anything, the buffer already has been set to the size of a image.
After further analysis, the problem seems to be related to the USB bandwith management with windows Vista/7.
When we are using Win Vusta/7, the latency is higher than with Win XP during packet transfert and at some point, the transfert is not fast enough and we have a buffer overload on the FIFO side on the device which is already a Quad buffer. Any ideas why the bandwith seems to be reduced with Vista/7.
After another test, we have found that when the FIFO is set to Byte length without modifying anything else, we are able to go up to 45 FPS with win Vista/7 with now 768x576 image with pixel depth of 8 bits. Ideas ?
Vs 768x576 image with pixel depth of 16 bits at only 10 FPS when FIFO are set to WORD length
No ideas from the people of Cypress on this speed limitation on Win Vista/7 ?