12Mbps USB Controller core

description

The USB Function Controller is a flexible solution to add USB functionality to virtually any application. It includes all functionality required to implement a USB bus interface within a single FPGA or ASIC device with only an external USB Transceiver required. Up to four Endpoints are supported, each of them easily attachable to standard micro controller busses.
 
<TODO: put a block diagram here>

features

synthesis

The core was successfully synthesized with the following tools: Synopsys FPGA Express, Xilinx XST, Mentor Leonardo Spectrum. Resource usage depends on the endpoint configuration and size of the endpoint FIFOs. This is a summary of the required resources for a minimal HID design:

verification

The USB core was verified on different levels:
The following reference designs have been implemented:
documents