USB superspeed peripherals Forum Discussions
I am working with a FX3 Super Speed Explorer Kit in Linux and I am using the SlaveFIFOSync in APP note AN65974. I was able to get the USB 3 running at about 2Gbps, but USB 2.0 is only 30Mbps (bits NOT bytes). I notice that the burst length in the code is not 16 for the "case CY_U3P_HIGH_SPEED:", but rather it is set to 1. I tried to change it to 16, 8, 4, and 2 and they all will not allow the image to load on the board. I don't know if I am even looking in the right place to speed up the USB 2.0, but I figured it was a good place to start. I need to get the USB 2.0 to run at the ~480Mbps rate. Does anyone have any experience with the USB 2.0 side of the SlaveFIFOSync code?
Thanks
Show LessIn datasheet on FX3 CYUSB301X/CYUSB201X (Rev. *R March 27, 2015) is specified that USB3.0 controller supplied in commercial and industrial temperature ranges. I need CYUSB3014-BZXI in 121pin BGA package and industrial temperature range. But the "Ordering Information" on page 45 in this datasheet shows me "GPIF II Data Bus Width" in 32 bit. I have limitation of 16 bit data width in my artix-7 FPGA design. I can't find any exact answer in that datasheet and on this forum for my answer. Can this controller (CYUSB3014-BZXI) works in 16 bit data width even in case with industrial temperature range?
Show LessI init the gpio with interrupt,when the MCU get a interrupt event,and then if i can disable the interrupt,because i use this gpio as other function?
Show LessHello,
I write a simple code to evaluate FX3 Super Speed capabilities for the project ahead. My Idea is to implement a one BULK out endpoint for video data a 2 Interrupt (IN + OUT) for control/status from sensor unit. Bulk endpoint behave as expected but interrupt one produce a message :<INTERRUPT IN transfer
INTERRUPT IN transfer failed with Error Code:997>
Where I can get info what that means. (All example projects with use of interrupt endpoints I already had examined)
Show LessI was noted that "currently the source code for CCG2 is not available to the customers. We have plans to make Software Development Kit (SDK) available to the customers from February 2016 which will enable the you to develop your own code."
I am wondering why our customers like chiconypower.com.tw can configure the CCG1/2 on their PD charger control board. This board can send CC command to the PD charger to change its output voltage when one some button on the board is clicked.
Show LessHello
The datasheet does not spec the current draw of the VBUS pin for a CYUSB2014. What is the current draw on this pin when using the USB2.0 phy enabled in High Speed mode?
Thank you
Gary
Show LessI'm considering the CYUSB2014 for a USB 2.0 application where I'll be receiving analog video. I'd like to use a simple Video decoder IC like a T.I. TVP5150AM1, which puts out 8-bit ITU-R BT.656 codes as well as horizontal and vertical syncs and active video signals. The data clock is 27 MHz with two clocks per pixel during 720 active pixels (1440 bytes) per line. I only really need monochrome images, so I would like to know if it is possible to program the GPIF II to accept only every other byte during the active video. Otherwise I may need to go to a more advanced chip like the T.I. TVP5146M2, which puts out separate Y and CrCb buses at 13.5 MHz. This is a very space-limited application so I'd prefer to use the smaller IC if possible. Are there any gotchas I'm missing if I go ahead with the ITU-R BT.656 style decoder with 8-bit bus at 27 MHz? I'm worried that if I can't filer out the CrCb bytes of the line I will lose data using USB 2.0. The line-average data rate for this chip in color would be 22.66 MB/s, which is pretty close to the raw bandwidth of the USB at high speed. Filtering out the color components would get it down to a more comfortable 11.33 MB/s (line average). I don't have the option to use USB 3.0 in this application.
Show LessHi,
I'm trying to add C++ files to the sample projects and am getting a linker error when compiling. In "Tool Settings" there is:
"ARM Sourcery Windows GCC C++ Compiler" (additional Compiler setting)
"ARM Sourcery Windows GCC C++ Linker" (replaces "ARM Sourcery Windows GCC C Linker)
I've tried to copy all the linker settings from the sample C projects, but must still be missing something.
Here is the error:
'Building target: AFProfileSensor.elf'
'Invoking: ARM Sourcery Windows GCC C++ Linker'
arm-none-eabi-gcc -T"C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\/firmware/common/fx3.ld" -nostartfiles -Xlinker --gc-sections -Wl,-Map,AFProfileSensor.map -Wl,-d -Wl,--no-wchar-size-warning -Wl,--entry,CyU3PFirmwareEntry "C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\/firmware/u3p_firmware/lib/fx3_release/cyu3lpp.a" "C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\/firmware/u3p_firmware/lib/fx3_release/cyfxapi.a" "C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\/firmware/u3p_firmware/lib/fx3_release/cyu3threadx.a" "C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\/arm-none-eabi/lib/libc.a" "C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\/lib/gcc/arm-none-eabi/4.5.2/libgcc.a" -mcpu=arm926ej-s -mthumb-interwork -o "AFProfileSensor.elf" ./af_analyze.o ./cyfx_gcc_startup.o ./cyfxtx.o ./cyfxusbenumdscr.o ./cyfxusbspiregmode.o
./cyfxusbspiregmode.o: In function `main':
cyfxusbspiregmode.c:(.text.main+0xa8): undefined reference to `CyU3PDeviceConfigureIOMatrix'
cyfxusbspiregmode.c:(.text.main+0xb4): undefined reference to `_tx_initialize_kernel_enter'
collect2: ld returned 1 exit status
cs-make: *** [AFProfileSensor.elf] Error 1
**** Build Finished ****
Here is the original good build with only C files:
'Building target: UsbSpiRegMode.elf'
'Invoking: ARM Sourcery Windows GCC C Linker'
arm-none-eabi-gcc ./cyfx_gcc_startup.o ./cyfxtx.o ./cyfxusbenumdscr.o ./cyfxusbspiregmode.o -T"C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\/firmware/common/fx3.ld" -nostartfiles -Xlinker --gc-sections -Wl,-Map,UsbSpiRegMode.map -Wl,-d -Wl,--no-wchar-size-warning -Wl,--entry,CyU3PFirmwareEntry "C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\/firmware/u3p_firmware/lib/fx3_release/cyu3lpp.a" "C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\/firmware/u3p_firmware/lib/fx3_release/cyfxapi.a" "C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\/firmware/u3p_firmware/lib/fx3_release/cyu3threadx.a" "C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\/arm-none-eabi/lib/libc.a" "C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\/lib/gcc/arm-none-eabi/4.5.2/libgcc.a" -mcpu=arm926ej-s -mthumb-interwork -o "UsbSpiRegMode.elf"
'Finished building target: UsbSpiRegMode.elf'
' '
cs-make --no-print-directory post-build
'Generate boot-loadable binary image'
'C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\/util/elf2img/elf2img.exe' -i UsbSpiRegMode.elf -o UsbSpiRegMode.img
Note: 256 bytes of interrupt vector code have been removed from the image.
Use the "-vectorload yes" option to retain this code.
' '
'Invoking: ARM Sourcery Windows GNU Print Size'
arm-none-eabi-size --format=berkeley UsbSpiRegMode.elf
text data bss dec hex filename
82536 660 11588 94784 17240 UsbSpiRegMode.elf
'Finished building: UsbSpiRegMode.siz'
' '
**** Build Finished ****
Which .a file contains CyU3PDeviceConfigureIOMatrix?
Thanks for any help.
Show LessHello
Thank you for all your help.
We are going to use the CYUSB2014 part. Now Pins A2 and B5 were previously USRXVDDQ and USTXVDDQ in the CYUSB301X parts. Now in the CYUSB2014 part these pins are VDD so they just hook up to the core Voltage, 1.2V correct?
Now in the app note AN70707 the USRXVDDQ and USTXVDDQ had an individual inductor for each pin and a 22uF and .1uF for each pin. Do I still need this for the A2 and B5 pins for the CYUSB2014? I would think not but wanted to check with you.
Thank you
Gary
Sorry if this is a repeat question as I could not find the answer here.
Show LessI guess this is one easy thing to fix but I didn't get the clue...
My FX3 board works perfect when using stand alone but using it with my evaluation board (Xilinx Kintex Ultrascale, KCU-105) Both "USB Serial" Interfaces are available at the Control Center but not the programmable interface. In Addition the reset Switch (SW1) didn't seem to work anymore.
So I programmed the SRAM example (SRAM FX3.img) into RAM and I2C Eeprom but no changes so I guess it's not a problem with some initialization or wrong code.
Maybe someone know what's wrong with this situation or at least why my FX didn't work? The KCU-105 starts up with the default firmware that makes some LED animations. It looks like the programmable part of the FX3 board is held in reset somehow but I have no idea why.
Show Less