2 Replies Latest reply on Feb 22, 2012 12:31 AM by GayathriV_16

    Does your deivce provide a special driver for USB high speed bulk data transfer?

      Now I am considering to work on FX2LP(CY3684) Development Board Kits for USB High Speed Controller.


      For this work, I have several questions.


      I would like to make CY7C68013A as a slave deivce and AT91SAM3U(ARM cortex processor) as host device. Even though the host device also provides usb high speed(480mbps), it does not provide the driver and an example for bulk transfer. That is why I choose Cypress chip.


      1. Do these chips (CY7C6801xx Series) or some example source provide USB high speed Bulk transfer driver for windows xp or 7 (32bit and 64bit)? I read most of document about the development kits, so it seems they provide it. I just hope to make it sure before I purchase the kit.


          - If it provides USB high speed Bulk transfer. How fast it is when no slave device has communication with host PC. I think it cannot be equal to 480 mbps.


         - The most important thing is the bulk data transfer rate, given by Cypress Bulk Transfer driver, should be higher than 200mbps in average. I hope your device can make it.


      2. I am looking though Cypress Suite USB 3.4.7. Does C# library in the software also provides necessary methods for bulk transfer?


      3. It seems I should put some program code for 8051 to make it work. According to the datasheet(#38-08032), 8051 code can be loaded from USB, EEPROM, and external memory device. However, if the code is loaded from USB or external memory, the code cannot be kept when power is off, which means the only way to keep the 8051 code for usb controller is to save the code into EEPROM, am I right?.


      4. What is the purpose of the General Programmable Interface(GPIF)? Why it is needed?


      Please answer these questions.. if somebody have some exprience about these matters.

        • 1. Re: Does your deivce provide a special driver for USB high speed bulk data transfer?

           1. Yes Cypress provides drivers for high speed devices. I am not sure about the speeds. I am letting the other USB experts on the forum to let this question to be answered.


          2.Cypress USB Suite 3.4.7 provides C# classes, objects and methods to access a USB device and perform Bulk transfer.

          • 2. Re: Does your deivce provide a special driver for USB high speed bulk data transfer?






            1. Actually the rates being mentioned in the datasheet are signalling rates not data rates, i.e. 480Mbps for high speed


            With Fx2lp you can reach upto 35-40MBps, we have a streamer application with which you can check the throughput of the device.


            2. Cypress provides drivers (CyUSB.sys) which also supports Bulk transfers. C# library (CyUSB.dll) provided along with Cyress SuiteUSB, has APIs for handling all kinds of transfers including Bulk transfers.


            3. Now, about the firmware download: if you are downloading over USB, it would be loaded into volatile memory, thus need to be downloaded every time the power goes off. Now, apart from EEPROM and USB we also have another method of loading firmware using script. If interested, you may find ore details on      www.cypress.com/?docID=33099     .


            4. GPIF will enable FX2LP to act as a master to build an interface with a peripheral device.  If you want to connect FX2LP to slave peripheral devices like an SRAM, then you will need GPIF. GPIF can generate control signals and accept a few ready signals necessary for handshaking across the interface. The timing waveforms can be generated easily using GPIF designer. If GPIF is not used, i.e. if FX2LP is configured in SLave mode, then there should be external master (i.e. the peripheral device should act as the master) which can drive the necessary signals and initiate the data transfers, and thus act as the master for the interface.