I'm developing a custom PCB with the CYUSB3065. I know questions regarding USB 3 enumeration have been asked many times, but I haven't been able to solve my problem so I need a bit more detail. At this stage I'm not really sure what the problem is, as I believe I have designed my board to the specifications, but happy to be proven wrong.
- My custom PCB will enumerate as a USB 2.1 High Speed device, but not a USB 3.0 Superspeed device.
- I believe this is a hardware issue because my PCB fails to enumerate when only running the example program cyfxbulksrcsink that comes with the EZ-USB FX3 SDK.
- I am using the DENEBOLA CX3 Reference Design Kit as a reference - everything works fine on here, including my custom firmware.
- I've read the application note AN70707 EZ-USB FX3/FX3S Hardware Design Guidelines and Schematic Checklist.pdf.
- I've also read the Trouble Shooting Guide for the FX3/FX3S/CX3 Enumeration - KBA222372 .
- I designed my board considering both of the above documents.
- I've attached the output from cyfxbulksrcsink (built in debug mode) for my custom board (USBBulkSourceSink-debug-output.txt)
I think there is still a power supply issue - maybe caused by the inrush current event when the USB3.0 SuperSpeed PHY is enabled?
Is this too much noise?
See these three images. The red trace is the working Denebola CX3 board. The blue trace is my custom PCB. The green trace is a GPIO pin that is set just before USB 3.0 is enabled. I've attached the portion of code used to capture these images (USB-3-test.txt).
On the blue traces (my custom PCB), for U3TXVDDQ and U3RXVDDQ, the minimum voltage is about 1.1V, and the peak is about 1.27V. This doesn't seem drastically greater than the red reference trace.
See also this - the 5V VBUS supply (in blue). There is a voltage drop of 500mV when USB 3.0 is enabled (from 5V down to 4.5V).
I can reduce this voltage drop to only 250mV by adding a large capacitor across VBUS, but doing that doesn't cause the board to magically enumerate.
Is any of this noise likely to be the cause of my device failing to enumerate as USB 3.0?
Any help appreciated,
P.S. I've also attached pictures comparing my custom PCB power supplies with that of the the Denebola CX3 board (Supplies.zip). In all images my custom PCB is the yellow trace, and the Denebola board is the green trace. I captured both so I could be sure I wasn't seeing just the noise on my oscilloscope - it's clearly common to both boards. I'm pretty sure these supplies are within the stated 20 mV/100 mV spec.