USB Dual-Mode Function IP Core Development

This paper describes the specification and implement of a Universal Serial Bus (USB) dual-mode function IP core used for embedded system. Controlled by micro controller/CPU, the novel IP core can function as a USB host controller or USB peripheral controller. When configured as a USB host controller, it supports all USB 1.1 transaction types; supports automatic preamble insertion, and automatic SOF generation and transmission. Otherwise, when it is configured as a USB device by a microprocessor, it operates as a USB peripheral controller compliant with USB2.0 specification.