USB is intended to replace many legacy varieties of serial and parallel ports. USB can connect computer peripherals such as mice, keyboards, PDAs, gamepads and joysticks, scanners, digital cameras, printers, personal media players, and flash drives. For many of those devices USB has become the standard connection method. USB was originally designed for personal computers, but it has become commonplace on other devices such as PDAs and video game consoles, and as a bridging power cord between a device and an AC adapter plugged into a wall plug for charging purposes. As of 2008, there are about 2 billion USB devices in the world.
The design of USB is standardized by the USB Implementers Forum (USB-IF), an industry standards body incorporating leading companies from the computer and electronics industries. Notable members have included Agere (now merged with LSI Corporation), Apple Inc., Hewlett-Packard, Intel, NEC, and Microsoft.
The USB 1.0 specification model was introduced in 1996. USB was created by the core group of companies that consisted of Intel, Compaq, Microsoft, Digital, IBM, and Northern Telecom. Intel produced the UHCI host controller and open software stack; Microsoft produced a USB software stack for Windows and co-authored the OHCI host controller specification with National Semiconductor and Compaq; Philips produced early USB-Audio; and TI produced the most widely used hub chips. Originally USB was intended to replace the multitude of connectors at the back of PCs, as well as to simplify software configuration of communication devices.
The original Apple "Bondi blue" iMac G3, introduced May 6, 1998, was the first computer to offer USB ports without offering "legacy" ports. USB 1.1 came out in September 1998 to help rectify the adoption problems that occurred with earlier iterations of USB, mostly those relating to hubs.
USB 2.0 specification was released in April 2000 and was standardized by the USB-IF at the end of 2001. Hewlett-Packard, Intel, Lucent (now LSI Corporation since its merger with Lucent spinoff Agere Systems), Microsoft, NEC, and Philips jointly led the initiative to develop a higher data transfer rate than the 1.1 specification.
Version 1.0 of the USB 3.0 specification was annouced on November 17, 2008 by the USB 3.0 Promoter Group.
Equipment conforming with any version of the standard will also work with devices designed to any previous specification (known as backward compatibility).
A USB system has an asymmetric design, consisting of a host, a multitude of downstream USB ports, and multiple peripheral devices connected in a tiered-star topology. Additional USB hubs may be included in the tiers, allowing branching into a tree structure with up to five tier levels. A USB host may have multiple host controllers and each host controller may provide one or more USB ports. Up to 127 devices, including the hub devices, may be connected to a single host controller.
USB devices are linked in series through hubs. There always exists one hub known as the root hub, which is built into the host controller. So-called "sharing hubs", which allow multiple computers to access the same peripheral device(s), also exist and work by switching access between PCs, either automatically or manually. They are popular in small-office environments. In network terms, they converge rather than diverge branches.
A physical USB device may consist of several logical sub-devices that are referred to as device functions. A single device may provide several functions, for example, a webcam (video device function) with a built-in microphone (audio device function).
USB endpoints actually reside on the connected device: the channels to the host are referred to as pipes.
USB device communication is based on pipes (logical channels). Pipes are connections from the host controller to a logical entity on the device named an endpoint. The term endpoint is occasionally used to incorrectly refer to the pipe. A USB device can have up to 32 active pipes, 16 into the host controller and 16 out of the controller.
Each endpoint can transfer data in one direction only, either into or out of the device, so each pipe is uni-directional. Endpoints are grouped into interfaces and each interface is associated with a single device function. An exception to this is endpoint zero, which is used for device configuration and which is not associated with any interface.
When a USB device is first connected to a USB host, the USB device enumeration process is started. The enumeration starts by sending a reset signal to the USB device. The speed of the USB device is determined during the reset signaling. After reset, the USB device's information is read by the host, then the device is assigned a unique 7-bit address. If the device is supported by the host, the device drivers needed for communicating with the device are loaded and the device is set to a configured state. If the USB host is restarted, the enumeration process is repeated for all connected devices.
The host controller directs traffic flow to devices, so no USB device can transfer any data on the bus without an explicit request from the host controller. In USB 2.0, host controller polls the bus for traffic, usually in a round-robin fashion. In SuperSpeed USB, connected device can request service from host.
Overview
Mister Wong
Digg
Del.icio.us
Slashdot
Furl
Yahoo
Technorati
Newsvine
Googlize this
Blinklist
Facebook
Wikio