Packet
Encode/Decode
Endpoint Control
EP0
±
7
Control
Transmit
Receive
Combine
Endpoints
Host
Transaction
Scheduler
Packet Encode
Packet Decode
CRC Gen/Check
FIFO RAM
Controller
Cycle Control
Rx
Buff
Rx
Buff
Tx
Buff
Tx
Buff
CPU Interface
Interrupt
Control
EP Reg.
Decoder
Common
Regs
Cycle
Control
FIFO
Decoder
Interrupts
AHB bus
±
Slave mode
USB0DM &
USB0DP
0
1
USBPC.ULPIEN
USB0DIR
USB0NXT
USB0STP
USB0CLK
USB0D[7:0]
AHB Master Bus
USB
FS/LS
PHY
ULPI
Interface
Introduction
1673
SLAU723A – October 2017 – Revised October 2018
Copyright © 2017–2018, Texas Instruments Incorporated
Universal Serial Bus (USB) Controller
27.1 Introduction
The USB controller operates as a full-speed or low-speed function controller during point-to-point
communications with USB host, device, or OTG functions. If the integrated ULPI interface is used, the
USB can operate at high speed. The controller complies with the USB 2.0 standard, which includes
SUSPEND and RESUME signaling. 16 endpoints, including two hard-wired for control transfers (one
endpoint for IN and one endpoint for OUT) and 14 endpoints defined by firmware along with a dynamic
sizable FIFO, support multiple packet queueing. USB DMA access to the FIFO allows minimal interference
from system software. Software-controlled connect and disconnect allows flexibility during USB device
start-up. The controller complies with the OTG Session Request Protocol (SRP) and Host Negotiation
Protocol (HNP).
The USB module has the following features:
•
Complies with USB Implementer's Forum (USB-FI) certification standards
•
USB 2.0 high-speed (480 Mbps) operation with the integrated ULPI interface communicating with an
external PHY
•
Link power management support which uses link-state awareness to reduce power usage
•
Four transfer types: control, interrupt, bulk, and isochronous
•
16 endpoints
–
One dedicated control IN endpoint and one dedicated control OUT endpoint
–
Seven configurable IN endpoints and seven configurable OUT endpoints
•
4KB of dedicated endpoint memory: one endpoint may be defined for double-buffered 1023-byte
isochronous packet size
•
VBUS droop detection and interrupt
•
Integrated USB DMA with bus master capability
–
Up to eight RX Endpoint channels and up to eight TX Endpoint channels are available.
–
Each channel can be separately programmed to operate in different modes
–
Incremental burst transfers of 4, 8, 16, or unspecified length supported
27.2 Block Diagram
shows the USB module block diagram.
Figure 27-1. USB Module Block Diagram