USB: Universal Serial Bus Overview

written by: Emy Roberts; article published: year 2010, month 06;

In: Root » Computers and technology » Memory Processor Motherboards and buses

  Share  
|
  PL  |  NL  |  FR  |  ES  |  PT  |  IT  |  DE  |  DK  |  NO  |  SE  |  FI  |  GR  |  JP  |  CN  |  KR  |  RU  |  AE


Three drawbacks head any list of the most aggravating aspects of serial ports: low speed, complex cabling, and the limited number of ports. The Universal Serial Bus breaks through all three, combining a signaling rate of 12 Mbits/sec with a mistake proof wiring system and almost unlimited number of connections. The standard also supports lower speed devices sharing the same wiring system along with high speed devices. The low speed signaling rate is 1.5 Mbits/sec.

First introduced in 1996, the USB is more than a successor to the RS-232C serial port. It provides the basic mechanism for connecting most, if not all, peripherals to your PC. Everything from your keyboard to cash register drawer can connect simply and quickly with a USB plug.

Designed for those who would rather compute than worry about hardware, the premise underlying USB is the substitution of software intelligence for cabling confusion. USB handles all the issues involved in linking multiple devices with different capabilities and data rates with a layer cake of software. Along the way, it introduces its own new technology and terminology.

USB divides serial hardware into two classes, hubs and functions. A USB hub provides jacks into which you can plug functions. A USB function is a device that actually does something. USB's designers imagined that a function may be anything that you can connect to your computer including keyboards, mice, modems, printers, plotters, scanners, or whatever.

Rather than a simple point to point port, the USB acts as an actual bus that allows you to connect multiple peripherals to one jack on your PC with all of the linked devices sharing exactly the same signals. Information passes across the bus in the form of packets, and all functions receive all packets. Your PC accesses individual functions by adding a specific address to the packets, and only the function with the correct address acts on the packets addressed to it.

The physical manifestation of USB is a port, a jack that's part of a hub. Each physical USB port connects to a single device, and a hub offers multiple jacks to let you plug in several devices. You can plug one hub into another to provide several additional jacks and ports to connect more devices. The USB design envisions a hierarchical system with hubs connected to hubs connected to hubs. In that each hub allows multiple connections, the reach of the USB system branches out like a tree-or a tree's roots.

Figure 21.16 USB hierarchical interconnection scheme.

Your PC acts as the base hub for a USB system and is termed the host. The circuitry in your PC that controls this integral hub and the rest of the USB system is called the bus controller. Each USB system has one and only one bus controller.

The USB system doesn't care which device you plug into which hub or how many levels down the hub hierarchy you put a particular device. All the system requires is that you properly plug everything together following its simple rule-each device must plug into a hub-and the USB software sorts everything out. This software, making up the USB protocol, is the most complex part of the design. In comparison, the actual hardware is simple-but the hardware won't work without the protocol.

The wiring hardware imposes no limit on the number of devices and functions that you can connect in a USB system. You can plug hubs into hubs into hubs fanning out into as many ports as you like. You do face limits, however. The protocol limits the number of functions on one bus to 127 because of addressing limits. Seven bits are allowed for encoding function addresses, and one of the potential 128 is reserved.

In addition, the wiring limits the distance at which you can place functions from hubs. The maximum length of a USB cable is five meters. Because hubs can regenerate signals, however, your USB system can stretch out for greater distances by making multiple hops through hubs.

As part of the Plug-and-Play process, the USB controller goes on a device hunt when you start your PC. It interrogates each device to find out what it is. It then builds a map that locates each device by hub and port number. These become part of the packet address. When the USB driver sends data out the port, it routes it to the proper device by this hub and port address.

Wiring with USB is, by design, trouble free. Because all devices receive all signals, you face no issues of routing. Because each port has a single jack that accepts one and only one connector-and a connector of a specific matching type-you don't have to worry about adapters, crossover cables or the other minutiae required to make old style serial connections work.

On the other hand, USB requires specific software support. Any device with a USB connector has the necessary firmware to handle USB built in. But your PC also requires software to make the USB system work. Your PC's operating system must know how to send the appropriate signals to its USB ports. In addition, each function must have a matching software driver. The function driver creates the commands or packages the data for its associated device. An overall USB driver acts as the delivery service, providing the channel-called, in USB terminology, a pipe-for routing the data to the various functions. Consequently, each USB you add to your PC requires software installation along with plugging in the hardware.

Share

Disclaimer

1) E-articles is not responsible for the information contained by this article as well for any and all copyright infringements by authors and writers. E-articles is a free information resource. If you suspect this article for any copyright infringement, please read the terms of service and contact us or use the "Report this article" button on this page to investigate the problem.
2) E-articles is not responsible for inaccuracies, falsehoods, or any other types of misinformation this article may contain and will not be liable for any loss or damage suffered by a user through the user's reliance on the information gained here.