Usb host port (uhp), 1 description, 2 block diagram – Rainbow Electronics AT91CAP9S250A User Manual
Page 841

841
6264A–CAP–21-May-07
AT91CAP9S500A/AT91CAP9S250A
43. USB Host Port (UHP)
43.1
Description
The USB Host Port (UHP) interfaces the USB with the host application. It handles Open HCI
protocol (Open Host Controller Interface) as well as USB v2.0 Full-speed and Low-speed
protocols.
The USB Host Port integrates a root hub and transceivers on downstream ports. It provides sev-
eral high-speed half-duplex serial communication ports at a baud rate of 12 Mbit/s. Up to 127
USB devices (printer, camera, mouse, keyboard, disk, etc.) and the USB hub can be connected
to the USB host in the USB “tiered star” topology.
The USB Host Port controller is fully compliant with the OpenHCI specification. The standard
OHCI USB stack driver can be easily ported to ATMEL’s architecture in the same way all exist-
ing class drivers run without hardware specialization.
This means that all standard class devices are automatically detected and available to the user
application. As an example, integrating an HID (Human Interface Device) class driver provides a
plug & play feature for all USB keyboards and mouses.
43.2
Block Diagram
Figure 43-1. Block Diagram
Access to the USB host operational registers is achieved through the AHB bus slave interface.
The OpenHCI host controller initializes master DMA transfers through the ASB bus master inter-
face as follows:
• Fetches endpoint descriptors and transfer descriptors
• Access to endpoint data from system memory
• Access to the HC communication area
• Write status and retire transfer Descriptor
PORT S/M
PORT S/M
USB transceiver
USB transceiver
DP
DM
DP
DM
Embedded USB
v2.0 Full-speed Transceiver
Root Hub
and
Host SIE
List Processor
Block
FIFO 64 x 8
HCI
Slave Block
OHCI
Registers
OHCI Root
Hub Registers
AHB
ED & TD
Regsisters
Control
HCI
Master Block
Data
uhp_int
MCK
UHPCK
AHB
Slave
Master