This IP Core provides a function (peripheral device) interface. It can be used to interface almost any peripheral to a computer via USB. This core fully complies to the USB 2.0 specification and can operate at USB Full and High-speed rates.
Features
USB device controller fully compliant with the USB 2.0 Specification
Supports high speed (480Mbps)
Supports 8bit UTMI (Universal Transceiver Macrocell Interface) Interface and 8bit ULPI (ULMI+Low Pin Interface) interface
Supports four endpoints, including:
- Endpoint 0, control endpoint;
- Endpoint 1, IN endpoint, support bulk, interrupt and isochronous transfer;
- Endpoint 2, OUT endpoint, support bulk, interrupt and isochronous transfer;
- Endpoint 3, OUT endpoint, support bulk, interrupt and isochronous transfer;
- The endpoints number is configurable
* all 4 endpoints are endpoint 0.1.2 & 3;
* only CTRL+IN endpoints, that is endpoints 0&1;
* only CTRL+OUT endpoints, that is endpoints 0, 2 & 3
Packet-level transmission/reception (token, data, and handshake packets)
The 4 endpoints share 1 receive FIFO (128x32) and 2 transmit FIFO (128x64)
Error detection includes: CRC, invalid PID, and data payload errors
With EMIF (External Memory Interface) interface and AHB interface to configure IP related registers
With memory and handshake interface to access the 2KB (512x32) local memory. 1KB used as transmit buffer and the other 1KB used as receive buffer. User can send data to host and get data from host through this local memory
With interrupt interface to help user handle the data reception from host
Supports Vendor Device Request of Control endpoint 0