| 1. | How do I verify core functionality in hardware as well as in simulation? |
|
The SLS USB 2.0 IP Core package includes the CoreCommander board that can be used to verify the core functionality in hardware. The package also includes a Modelsim precompiled library to simulate the design and verify basic transactions.
|
|
| 2. | I start the test application as per the instructions in the manual, but I still get a "USB device not recognized." Message. How can I solve this problem? Is there some problem with the files I downloaded? |
|
There is nothing wrong with the application or the files downloaded. After successfully downloading the .elf file, run the usbview utility to verify the USB device connection. If the device is not connected properly, you will see the message "Enumeration failed" and in such case you will find the the message USB device not recognized. To solve this error, follow the steps below:
- Plug in one end of the 'b' type USB cable to the device and other end to the PC.
- Check that the USB cable comply with the specification and it is not faulty.
- Connect the USB cable to another USB port.
|
| 3. |
Where does 60 MHz clock come from in USB20HR reference design? |
|
In the reference design provided, the 60 MHz clock comes from the PHY chip. It is recommended to use the same clock for the PHY chip and the IP core to avoid synchronization issues.
|
|
| 4. | Can I use 70 MHz system clock while designing a USB20HR system in SOPC builder. |
|
Yes, you can use 70 MHz clock.
|
|
| 5. |
How do I generate a 19.2 MHz clock and why it is needed in USB20HR system provided in the package? |
|
You can generate a 19.2 MHz clock from PLL and it is exported. If you do not want to use crystal on the CoreCommander board for driving the PHY chip in clock signal, this clock signal is used.
|
|
| 6. |
Can we use development board clock for the USB20HR Core? |
|
Yes, the development board clock can definitely be used with the core if the clock synchronization between PHY and core, clock is taken care of in the design.
|
|
| 7. |
What size of Transmit and Receive buffers are needed for the Bulk IN/OUT endpoint of USB20HR Core? |
|
The buffer size depends upon the data memory provided in the Nios II project and what the application demands.
|
|
| 8. |
Can the Transmit and Receive operations run in background or are they the primary thread for USB20HR Core? |
|
No, Transmit and Receive operations cannot run in background. Both Read and Write operations of the HAL driver are in the blocking mode on the NIOS side.
|
|
| 9. | When performing Bulk operation, how do I determine how many bytes were received? |
|
The HAL driver API on the Nios side returns the count value of the number of bytes received.
|
|
| 10. | Is there a method to know if the device is successfully enumerated? If not, can I force enumeration? |
|
Yes, the speed negotiation register may be read and the appropriate bit extracted.
Yes enumeration may be forced using the disconnect API. This will force the PHY chip to disconnect, and reconnection will occur using the connect API.
|
|
| 11. |
Does the USB20HR IP core support packet size adjustment according to USB speed? |
|
Yes, the USB 2.0 core will adjust speed based on which mode is selected. When enumerated, the core supports 64Byte packets in Full Speed mode and 512Bytes in Hi Speed mode.
|
|
| 12. |
Do I need the Clock Crossing Bridge while designing a USB20HR System in SOPC builder? |
|
No, you do not need to use the Clock Crossing Bridge compulsorily with the USB20HR
system in SOPC builder. This is optional and system can be generated without it.
|
|
| 13. |
Does the Data Catche create a problem? |
|
Data cache can not create any hardware related problem. It can give mismatch of data value if cache is not handled properly on Nios II application side.
|
|
| 14. | Can you provide Nios II USB HOST Stack? Is it necessary to run one OS for the USB? |
|
We do provide USB Host Stack, but not in source code form. Also, no OS is required since our stack is a standalone stack. |
|
| 15. | The USB20HR IP Core that I have does not support UTMI interface. How do I enable that? |
|
The USB20HR IP Core does not come with direct support of UTMI interface. However, it is possible to have the UTMI interface
enabled by replacing a existing TCL file.
Please download and extract the TCL file for UTMI interface from: http://www.slscorp.com/download/sls_avalon_usb20hr_hw.zip.
Delete the existing TCL file located at ../hardware/component folder and copy the extracted file at
this location.
Restart the Quartus II software and SOPC Builder. After updating the project you will be able to see the UTMI interface
enabled in the USB20HR IP Core.
|