The Mentor Graphics?MUSBHSFC core provides a USB function controller that conforms to the USB 2.0 specification for Hi-/Full-Speed (480/12 Mbps) functions. The core is user-configurable for up to 15 IN Endpoints and up to 15 OUT Endpoints in addition to Endpoint 0 (EP0). These a bulk/interrupt or isochronous transfers. Each Endpoint requires an associated FIFO. The MUSBHSFC has a RAM interface for connecting to a single block of synchronous single-port RAM. The FIFO for Endpoint 0 is fixed at 64 bytes. The other Endpoint FIFOs may be from 8 to 192 bytes in size and can buffer either 1 or 2 packets. Separate FIFOs may be associated with each Endpoint. Alternatively, an IN and OUT Endpoint with the same Endpoint number can be configured to use the same FIFO.