Hardware Reference
In-Depth Information
permits connection to another device or hub. Hubs can detect attachment and
detachment at each downstream port and provide power to any downstream
device that require it.
A hub consists of two elements: the hub controller and the hub repeater .
The hub repeater is a protocol-controlled switch between the upstream port and
downstream ports. It also has hardware support for reset and suspend/resume
signalling. The host controller provides the interface registers to allow commu-
nication to/from the host. Hub-specific status and control commands permit the
host to configure a hub and to monitor and control its ports.
Functions
A function is a USB device that is able to transmit or receive data or control
information over the bus. A function is typically implemented as a separate
peripheral device with a cable that plugs into a port on a hub. However, a
physical package may implement multiple functions and an embedded hub
with a single USB cable. This is known as a compound device . Such a device
appears to the host as a hub with one or more non-removable USB devices.
Each function must incorporate configuration information that describes
its capabilities and resource requirements. Before a function can be used, it
must be configured by the host. This configuration includes allocating USB
bandwidth and selecting function-specific configuration options. Examples of
functions include:
keyboards and keypads
printers
cameras
graphics tablets
mice
trackballs.
USB data flow model
The USB host (normally part of the motherboard) interacts with USB devices
and provides facilities for:
Detecting the attachment and removal of devices
Managing control flow between the host and devices
Managing data flow between the host and devices
Providing power to attached devices
Collecting status information.
The simple view of communication between a host and a single attached
USB device is shown in Figure 2.14. To account for the different layers, and
the transactions that take place between them, Figure 2.15 provides a view of
the underlying architecture of the interface.
For those who may be unfamiliar with the standard ISO model for Open
System Interconnection, it is worth examining each of the major layers present
within Figure 2.15. The Bus interface layer provides physical/signalling/packet
connectivity between the host and a device whereas the Device layer is the view
the USB system software has for performing generic USB operations with a
Search WWH ::




Custom Search