Hardware Reference
In-Depth Information
4. I/O devices should get their power from the cable.
5. Up to 127 devices should be attachable to a single computer.
6. The system should support real-time devices (e.g., sound, telephone).
7. Devices should be installable while the computer is running.
8. No reboot should be needed after installing a new device.
9. The new bus and its I/O devices should be inexpensive to manufac-
ture.
USB meets all these goals. It is designed for low-speed devices such as keyboards,
mice, still cameras, snapshot scanners, digital telephones, and so on. Version 1.0
has a bandwidth of 1.5 Mbps, which is enough for keyboards and mice. Version
1.1 runs at 12 Mbps, which is enough for printers, digital cameras, and many other
devices. Version 2.0 supports devices with up to 480 Mbps, which is sufficient to
support external disk drives, high-definition webcams, and network interfaces. The
recently defined USB version 3.0 pushes speeds up to 5 Gbps; only time will tell
what new and bandwidth-hungry applications will
spring forth from this
ultra-high-bandwidth interface.
A USB system consists of a root hub that plugs into the main bus (see
Fig. 3-51). This hub has sockets for cables that can connect to I/O devices or to
expansion hubs, to provide more sockets, so the topology of a USB system is a tree
with its root at the root hub, inside the computer. The cables have different con-
nectors on the hub end and on the device end, to prevent people from accidentally
connecting two hub sockets together.
The cable consists of four wires: two for data, one for power (+5 volts), and
one for ground. The signaling system transmitsa0asavoltage transition and a 1
as the absence of a voltage transition, so long runs of 0s generate a regular pulse
stream.
When a new I/O device is plugged in, the root hub detects this event and inter-
rupts the operating system. The operating system then queries the device to find
out what it is and how much USB bandwidth it needs. If the operating system
decides that there is enough bandwidth for the device, it assigns the new device a
unique address (1-127) and downloads this address and other information to con-
figuration registers inside the device. In this way, new devices can be added on-
the-fly, without requiring any user configuration or the installation of any new ISA
or PCI cards. Uninitialized cards start out with address 0, so they can be ad-
dressed. To make the cabling simpler, many USB devices contain built-in hubs to
accept additional USB devices. For example, a monitor might have two hub sock-
ets to accommodate the left and right speakers.
Logically, the USB system can be viewed as a set of bit pipes from the root
hub to the I/O devices. Each device can split its bit pipe up into a maximum of 16
subpipes for different types of data (e.g., audio and video). Within each pipe or
 
Search WWH ::




Custom Search