Jump to content

USB

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Advantecheautomation (talk | contribs) at 13:35, 23 April 2007 (External links). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
USB
Universal Serial Bus
The USB "trident" Icon
Year createdJanuary 1996
Width in bits1
No. of devices127 per host
SpeedUp to 480 Mbit/s (USB 2.0)
StyleSerial
Hotplugging interfaceYes
External interfaceYes
Websitewww.usb.org

Universal Serial Bus (USB) is a serial bus standard to interface devices. A major component in the legacy-free PC, USB was devised to help retire all serial and parallel ports since these were not standardized and required a multitude of device drivers to be developed and maintained. USB was designed to allow peripherals to be connected without expansion cards for the computer's ISA, EISA, or PCI bus, to improve plug-and-play capabilities by allowing devices to be connected and disconnected without rebooting the computer (hot swapping), and to allow specific classes of hardware to be used without requiring individual drivers to be installed.

USB can connect computer peripherals such as mouse devices, keyboards, PDAs, gamepads and joysticks, scanners, digital cameras and printers. For many devices such as scanners and digital cameras, USB has become the standard connection method. USB is also used extensively to connect non-networked printers; USB simplifies connecting several printers to one computer. USB was originally designed for personal computers, but it has become commonplace on other devices such as PDAs and video game consoles. In 2004, there were about 1 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 Apple Computer, Hewlett-Packard, NEC, Microsoft, Intel, and Agere.

History

File:Original usb.gif
Original USB Logo

As of 2006, the USB specification is at version 2.0 (with revisions). Hewlett-Packard, Intel, Lucent, Microsoft, NEC, and Philips jointly led the initiative to develop a higher data transfer rate than the 1.1 specification. The USB 2.0 specification was released in April 2000 and was standardized by the USB-IF at the end of 2001. Previous notable releases of the specification were 0.9, 1.0, and 1.1. Equipment conforming with any version of the standard will also work with devices designed to any previous specification (known as: backward compatibility).

Smaller USB plugs and receptacles for use in handheld and mobile devices, called Mini-B, were added to USB specification in the first engineering change notice. A new variant of smaller USB plugs and receptables, Micro-USB, was announced by the USB Implementers Forum on January 4, 2007 [1].

Overview

A USB hub

A USB system has an asymmetric design, consisting of a host controller and multiple daisy-chained peripheral devices. Additional USB hubs may be included in the chain, allowing branching into a tree structure, subject to a limit of 5 levels of branching per controller. No more than 127 devices, including the bus devices, may be connected to a single host controller. Modern computers often have several host controllers, allowing a very large number of USB devices to be connected. USB cables do not need to be terminated.

In USB terminology, individual devices are referred to as functions, because each individual physical device may actually host several functions, such as a webcam with a built-in microphone. Functions are linked in series through hubs. The hubs are special-purpose devices that are not considered functions. There always exists one hub known as the root hub, which is attached directly to the host controller.

USB endpoints actually reside on the connected device: the channels to the host are referred to as pipes

Functions and hubs have associated pipes (logical channels). Pipes are connections from the host controller to a logical entity on the device named an endpoint. The term endpoint is also occasionally used to refer to the entire pipe. A function 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/function, so each pipe is uni-directional.

When a device is first connected, the host enumerates and recognizes it, and loads the device driver it needs. When a function or hub is attached to the host controller through any hub on the bus, it is given a unique 7 bit address on the bus by the host controller. The host controller then polls the bus for traffic, usually in a round-robin fashion, so no function can transfer any data on the bus without explicit request from the host controller.

Host controllers

The computer hardware that contains the host controller and the root hub has an interface geared toward the programmer which is called Host Controller Device (HCD) and is defined by the hardware implementer.

At version 1.0 and 1.1 there were two competing HCD implementations. Compaq's Open Host Controller Interface (OHCI) was adopted as the standard by the USB-IF. However, Intel subsequently created a specification they called the Universal Host Controller Interface (UHCI) and insisted other implementers pay to license and implement UHCI. VIA Technologies licensed the UHCI standard from Intel; all other chipset implementers use OHCI. The main difference between OHCI and UHCI is the fact that UHCI is more software-driven than OHCI is, making UHCI slightly more processor-intensive but cheaper to implement (excluding the license fees). The dueling implementations forced operating system vendors and hardware vendors to develop and test on both implementations which increased cost.

During the design phase of USB 2.0 the USB-IF insisted on only one implementation. The USB 2.0 HCD implementation is called the Extended Host Controller Interface (EHCI). Only EHCI can support hi-speed transfers. Each EHCI controller contains four virtual HCD implementations to support Full Speed and Low Speed devices. The virtual HCD on Intel and VIA EHCI controllers are UHCI. All other vendors use virtual OHCI controllers.

Device classes

Devices that attach to the bus can be full-custom devices requiring a full-custom device driver to be used, or may belong to a device class. These classes define an expected behavior in terms of device and interface descriptors so that the same device driver may be used for any device that claims to be a member of a certain class. An operating system is supposed to implement all device classes so as to provide generic drivers for any USB device. Device classes are decided upon by the Device Working Group of the USB Implementers Forum.

Example device classes include:[2]

USB mass-storage

A Flash Drive, a typical USB mass-storage device

USB implements connections to storage devices using a set of standards called the USB mass storage device class (referred to as MSC or UMS). This was initially intended for traditional magnetic and optical drives, but has been extended to support a wide variety of devices. USB is not intended to be a primary bus for a computer's internal storage: buses such as ATA (IDE), Serial ATA (SATA), and SCSI fulfill that role.

However, USB has one important advantage in making it possible to install and remove devices without opening the computer case, making it useful for external drives. Today a number of manufacturers offer external portable USB hard drives, or empty enclosures for drives, that offer performance comparable to internal drives. These external drives usually contain a translating device that interfaces a drive of conventional technology (IDE, ATA, SATA, ATAPI, or even SCSI) to a USB port. Functionally, the drive appears to the user just like another internal drive. Other competing standards that allow for external connectivity are eSATA and Firewire.

Human-interface devices (HIDs)

Mice and keyboards are frequently fitted with USB connectors, but because, most PC motherboards still retain PS/2 connectors for the keyboard and mouse as of 2006, are generally supplied with a small USB-to-PS/2 adaptor so that they can be used with either USB or PS/2 ports. There is no logic inside these adaptors: they make use of the fact that such HID interfaces are equipped with controllers that are capable of serving both the USB and the PS/2 protocol, and automatically detect which type of port they are plugged in to. Joysticks, keypads, tablets and other human-interface devices are also progressively migrating from MIDI, PC game port, and PS/2 connectors to USB.

Apple Macintosh computers have used USB exclusively for all wired mice and keyboards since January 1999.

USB signaling

The USB standard uses the NRZI system to encode data.

USB signals are transmitted on a twisted pair of data cables, labelled D+ and D−. These collectively use half-duplex differential signaling to combat the effects of electromagnetic noise on longer lines. D+ and D− usually operate together; they are not separate simplex connections. Transmitted signal levels are 0.0–0.3 volts for low and 2.8–3.6 volts for high.

USB supports three data rates:

  • A Low Speed rate of up to 1.5 Mbit/s (187.5 kB/s) that is mostly used for Human Interface Devices (HID) such as keyboards, mice, and joysticks.
  • A Full Speed rate of up to 12 Mbit/s (1.5 MB/s). Full Speed was the fastest rate before the USB 2.0 specification and many devices fall back to Full Speed. Full Speed devices divide the USB bandwidth between them in a first-come first-served basis and it is not uncommon to run out of bandwidth with several isochronous devices. All USB Hubs support Full Speed.
  • A Hi-Speed rate of up to 480 Mbit/s (60 MB/s).

Though Hi-Speed devices are commonly referred to as "USB 2.0" and advertised as "up to 480 Mbit/s", not all USB 2.0 devices are Hi-Speed. The maximum rate currently (2006) attained with real devices is about half of the full theoretical (60 MB/s) data throughput rate.[3] Most hi-speed USB devices typically operate at much slower speeds, often about 3 MB/s overall, sometimes up to 10-20 MB/s. The USB-IF certifies devices and provides licenses to use special marketing logos for either "Basic-Speed" (low and full) or Hi-Speed after passing a compliancy test and paying a licensing fee. All devices are tested according to the latest spec, so recently-compliant Low Speed devices are also 2.0.

USB connectors

Series "A" plug and receptacle.

The connectors which the USB committee specified were designed to support a number of USB's underlying goals, and to reflect lessons learned from the varied menagerie of connectors then in service. In particular:

  • The connectors are designed to be robust. Many previous connector designs were fragile, with pins or other delicate components prone to bending or breaking, even with the application of only very modest force. The electrical contacts in a USB connector are protected by an adjacent plastic tongue, and the entire connecting assembly is further protected by an enclosing metal sheath. As a result USB connectors can safely be handled, inserted, and removed, even by a small child. The encasing sheath and the tough moulded plug body mean that a connector can be dropped, stepped upon, even crushed or struck, all without damage; a considerable degree of force is needed to significantly damage a USB connector.
  • It is difficult to incorrectly attach a USB connector. Connectors cannot be plugged-in upside down, and it is clear from the appearance and kinesthetic sensation of making a connection when the plug and socket are correctly mated. However, it is not obvious at a glance to the inexperienced user (or to a user without sight of the installation) which way round a connector goes, so it is often necessary to try both ways.
  • The connectors are particularly cheap to manufacture.
  • The connectors enforce the directed topology of a USB network. USB does not support cyclical networks, so the connectors from incompatible USB devices are themselves incompatible. Unlike other communications systems (e.g. RJ-45 cabling) gender-changers are almost never used, making it difficult to create a cyclic USB network.
  • A moderate insertion/removal force is specified. USB cables and small USB devices are held in place by the gripping force from the receptacle (without the need for the screws, clips, or thumbturns other connectors require). The force needed to make or break a connection is modest, allowing connections to be made in awkward circumstances or by those with motor disabilities.
  • The connector construction always ensures that the external sheath on the plug contacts with its counterpart in the receptacle before the four connectors within are connected. This sheath is typically connected to the system ground, allowing otherwise damaging static charges to be safely discharged by this route (rather than via delicate electronic components). This means of enclosure also means that there is a (moderate) degree of protection from electromagnetic interference afforded to the USB signal while it travels through the mated connector pair (this is the only location when the otherwise twisted data pair must travel a distance in parallel). In addition, the power and common connections are made after the system ground but before the data connections. This type of staged make-break timing allows for safe hot-swapping and has long been common practice in the design of connectors in the aerospace industry.
  • The USB standard specifies relatively low tolerances for compliant USB connectors, intending to minimize incompatibilities in connectors produced by different vendors (a goal that has been very successfully achieved). Unlike most other connector standards, the USB spec also defines limits to the size of a connecting device in the area around its plug. This was done to avoid circumstances where a device complies with the connector specification but its large size blocks adjacent ports. Compliant devices must either fit within the size restrictions or support a compliant extension cable which does.
File:USB TypeAB Diagram.svg
The USB (Type A and B) Connectors

Cables have only plugs, and hosts and devices have only receptacles. Hosts have type-A receptacles; devices have type-B. Type-A plugs only mate with type-A receptacles, and type-B with type-B. There are several types of USB connectors, and some have been added as the specification has progressed. An extension to USB called USB On-The-Go allows a single port to act as either a host or a device - chosen by which end of the cable plugs into the socket on the unit. Even after the cable is hooked up and the units are talking, the two units may "swap" ends under program control. This facility targets units such as PDAs where the USB link might connect to a PC's host port as a device in one instance, yet connect as a host itself to a keyboard and mouse device in another instance.

The original USB specification detailed Standard-A and Standard-B plugs and receptacles. The first engineering change noticed to the USB 2.0 specification added Mini-B plugs and receptacles.

USB On-The-Go defined two small form factor connectors, the Mini-A and Mini-B, and a universal socket (Mini-AB) for dual host by host/device units.

A USB Series “A” plug

Micro-USB is a connector announced by the USB Implementers Forum (USB-IF) on January 4 2007.[4] It is intended to replace the Mini-USB plugs used in many new smartphones and PDATooltip Personal digital assistants. The Micro-USB plug is rated for 10,000 connect-disconnect cycles. It is about half the height of the mini-USB connector but features a similar width. The Universal Serial Bus Micro-USB Cables and Connectors Specification added Micro-A plugs, Micro-AB receptacles, and Micro-B plugs and receptacles, along with a Standard-A receptacle to Micro-A plug adapter.

The Mini-B, Micro-A, Micro-B, and Micro-AB connectors are used for smaller devices such as PDAs, mobile phones or digital cameras. The Standard-A plug is approximately 4 by 12 mm, the Standard-B approximately 7 by 8 mm, and the Micro-A and Micro-B plugs approximately 2 by 7 mm.

Microsoft's original Xbox game console uses standard USB 1.1 signaling in its controllers, but features a proprietary connector rather than the standard USB connector. With the introduction of the newer Xbox 360 model, Microsoft switched to the standard USB connector. Similarly, IBM UltraPort uses standard USB signaling, but via a proprietary connection format.

The maximum length of a USB cable is 5 meters; greater lengths require hubs.[5] USB Connections can be extended to 50 m over CAT5 or up to 10 km over fiber by using special USB Extender products developed by various manufacturers.

Power

File:Usblowpowerwarning.png
Mac OS X dialog displayed when a USB device requires more current than the port can supply

The USB specification provides a 5 V (volts) supply on a single wire from which connected USB devices may draw power. The specification provides for no more than 5.25 V and no less than 4.35 V between the +ve and -ve bus power lines. Initially, a device is only allowed to draw 100 mA. It may request more current from the upstream device in units of 100 mA up to a maximum of 500 mA.

If a bus-powered hub is used, the devices downstream may only use a total of four units — 400 mA — of current. This limits compliant bus-powered hubs to 4 ports, among other things. The host operating system typically keeps track of the power requirements of the USB network and may warn the computer's operator when a given segment requires more power than is available.

On-The-Go and Battery Charging Specification both add new powering modes to the USB specification.

Some USB devices draw more power than is permitted by the specification for a single port. This is a common requirement of external hard and optical disc drives and other devices with motors or lamps. Such devices can be used with an external power supply of adequate rating; some external hubs may, in practice, supply sufficient power. For portable devices where external power is not available, but not more than 1 A is required at 5 V, devices may have connectors to allow the use of two USB cables, doubling available power but reducing the number of USB ports available to other devices. Amongst others, a number of peripherals for Lenovo laptops are designed to use dual USB connections.

A number of devices use the 5 V power supply without participating in a proper USB network. The typical example is a USB-powered reading light; fans, mug heaters, battery chargers (particularly for mobile telephones) and even miniature vacuum cleaners are also available. In most cases, these items contain no digitally based circuitry, and thus are not proper USB devices at all. This can cause problems with some computers — the USB specification requires that devices connect in a low-power mode (100 mA maximum) and state how much current they need, before switching, with the host's permission, into high-power mode. An additional concern is that in addition to limiting the total average power used by the device, the USB specification limits the inrush current (to charge decoupling and bulk capacitors) when the device is first connected; otherwise, connecting a device could cause glitches in the host's internal power.

There are also devices at the host end that do not support negotiation, such as battery packs that can power USB powered devices; some provide power, while others pass through the data lines to a host PC. There are also USB AC adapters and DC adapters that can be used to power or charge USB powered devices. Some of these devices can supply up to 1A of power. Without negotiation, the powered USB device is unable to inquire if it is allowed to draw 100 mA, 500 mA, or 1 A.

USB compared to FireWire

USB was originally seen as a complement to FireWire (IEEE 1394), which was designed as a high-speed serial bus which could efficiently interconnect peripherals such as hard disks, audio interfaces, and video equipment. USB originally operated at a far lower data rate and used much simpler hardware, and was suitable for small peripherals such as keyboards and mice.

About the time that the 1394a standard was reaching completion, Apple threatened to charge $1.00 per port to license Apple's patents relating to 1394a (Apple had previously not charged any patent royalties for 1394). This fee was considered by many of the USB Core companies to be excessive so they started work on updating the USB standard to offer data rates that were competitive with 1394a. Even though the 1394 patent license fee was eventually set at $0.25 per system (a price set by a group of companies owning the "essential patents" contained in 1394), the work on USB 2.0 continued. Intel chose to use USB 2.0 in their chipsets rather than to require additional connectors to support 1394 as well as USB. Lack of 1394 support on Intel’s chipset virtually assured that 1394 would have no significant market penetration in the commercial PC market.

The most significant technical differences between FireWire and USB include the following:

  • USB networks use a tiered-star topology, while FireWire networks use a repeater-based topology.
  • USB uses a "speak-when-spoken-to" protocol; peripherals cannot communicate with the host unless the host specifically requests communication. A FireWire device can communicate with any other node at any time, subject to network conditions.
  • A USB network relies on a single host at the top of the tree to control the network. In a FireWire network, any capable node can control the network.

These and other differences reflect the differing design goals of the two buses: USB was designed for simplicity and low cost, while FireWire was designed for high performance, particularly in time-sensitive applications such as audio and video.

USB 2.0 Hi-Speed versus FireWire 400

The signaling rate of USB 2.0 Hi-Speed mode is 480 Mb/s, while the signaling rate of FireWire 400 (IEEE 1394a, the slower, yet more common variant of firewire as of 2007) is 393.216 Mb/s.[6] In practice, other design factors can dwarf a relatively small difference in signaling rate. USB requires more host processing power than FireWire due to the need for the host to provide the arbitration and scheduling of transactions. The peer-to-peer nature of FireWire requires devices to arbitrate, which means a FireWire bus must wait until a given signal has propagated to all devices on the bus. The more devices on the bus, the lower is its peak performance. Conversely, for USB the maximum timing model is fixed and is limited only by the host-device branch (not the entire network). Furthermore, the host-centric nature of USB allows the host to allocate more bandwidth to high priority devices instead of forcing them to compete for bandwidth as in FireWire.[7] USB transfer rates are theoretically higher than FireWire due to the need for FireWire devices to arbitrate for bus access. A single FireWire device may achieve a transfer rate for FireWire 400 as high as 41 MB/s, while for USB 2.0 the rate can theoretically be 55 MB/s (for a single device). In a multi-device environment FireWire rapidly loses ground to USB: FireWire's mixed speed networks and long connection chains dramatically affect its performance.[citation needed]

USB 2.0 Hi-Speed reached a performance level sufficient for consumer equipment while retaining compatibility with older devices. An example of how the popularity of USB displaced FireWire in a commercial device is the Apple iPod. It was originally released with a FireWire connector, which was eventually modified to allow for both USB and FireWire connections when the product was released for Windows. 3rd generation iPods used USB and Firewire for data transfer and only allows a FireWire connection to charge the battery from the main adapter. The iPod does charge via both cables when connected to the host computer. With the 4th generation and newer, iPods use USB for data transfer and both USB and Firewire for charging. The Firewire controller chip set has been removed in favour with reduced costs. The iPod Nano and shuffle only support USB.[8]

Today, USB Hi-Speed is used in many consumer products. FireWire, however, retains its popularity in areas such as video and audio production.

FireWire 800 (Apple's name for the 9-pin "S800 bilingual" version of the IEEE 1394b standard) was introduced commercially by Apple in 2003. This newer 1394 specification and corresponding products allow a transfer rate of 786.432 Mbit/s.[9]

Version history

File:Hispeed usb.gif
Hi-Speed USB Logo
File:Otg usb.gif
USB OTG Logo
  • USB 0.7: Released in November 1994.
  • USB 0.8: Released in December 1994.
  • USB 0.9: Released in April 1995.
  • USB 0.99: Released in August 1995.
  • USB 1.0 Release Candidate: Released in November 1995.
  • USB 1.0: Released in January 1996.
    Specified data rates of 1.5 Mbps (Low-Speed) and 12 Mbps (Full-Speed). Did not anticipate or pass-through monitors. Few such devices actually made it to market.
  • USB 1.1: Released in September 1998.
    Fixed problems identified in 1.0, mostly relating to hubs. Earliest revision to be widely adopted.
  • USB 2.0: Released in April 2000.
    Added higher maximum speed of 480 Mbps (now called Hi-Speed).
    • Mini-B Connector ECN: Released in October 2000.
      Specifications for Mini-B plug and receptable. These should not be confused with Micro-B plug and receptable.
    • Errata as of December 2000: Released in December 2000.
    • Resistor ECN: Released in May 2002.
    • Errata as of May 2002: Released in May 2002.
    • Interface Associations ECN: Released in May 2003.
      New standard desriptor was added that allows multiple interfaces to be associated with a single device function.
    • Rounded Chamfer ECN: Released in October 2003.
    • Unicode ECN: Released in February 2005.
  • MicroUSB 1.01: Released in April 2007.
  • Inter-Chip USB 1.0: Released in March 2006.
  • Battery Charging Specification 1.0: Released in March 2007.
    Adds support for dedicated chargers (power supplies with USB connectors), host chargers (USB hosts that can act as chargers) and the Dead Battery Provision which allows devices to temporarily draw 100 mA current after they have been attached.

The PictBridge standard allows for interconnecting consumer imaging devices. It typically uses USB as the underlying communication layer.

The USB Implementers Forum is working on a wireless networking standard based on the USB protocol. Wireless USB is intended as a cable-replacement technology, and will use Ultra-wideband wireless technology for data rates of up to 480 Mbit/s. Wireless USB is well suited to wireless connection of PC centric devices, just as Bluetooth is now widely used for mobile phone centric personal networks (at much lower data rates).

Powered USB uses standard USB signaling with the addition of extra power lines for point-of-sale terminals. It uses 4 additional pins to supply up to 6A at either 5V, 12V, or 24V (depending on keying) to peripheral devices. The wires and contacts on the USB portion have also been upgraded to support higher amperage on the 5V line, as well. This is commonly used in Point of Sale applications and provides enough power to operate stationary barcode scanners, printers, pin pads, and signature capture devices, etc. This standard was developed by IBM, NCR, and FCI/Berg. It is essentially two connectors stacked such that the bottom connector accepts a standard USB plug and the top connector takes a power connector.

References

  1. ^ [1] "USB Developers Approve Micro-USB Connector Specification", InformationWeek, Jan 4, 2007
  2. ^ USB Class Codes
  3. ^ http://www.barefeats.com/usb2.html
  4. ^ "Mobile phones to adopt new, smaller USB connector" (PDF) (Press release). USB Implementers Forum. 2007-01-04. Retrieved 2007-01-08. {{cite press release}}: Check date values in: |date= (help)
  5. ^ http://www.usb.org/developers/usbfaq/#cab1
  6. ^ http://www.choice.com.au/viewArticle.aspx?id=104527&catId=100274&tid=100008&p=1
  7. ^ "USB 2.0 vs. FireWire". digit-life.com. Retrieved 19 March. {{cite web}}: Check date values in: |accessdate= (help); Unknown parameter |accessyear= ignored (|access-date= suggested) (help)
  8. ^ "How Fast Does A USB 2.0 Drive Go On The Newest Macs? How Does It Compare To FireWire?". Bare Feats. Retrieved 19 March. {{cite web}}: Check date values in: |accessdate= (help); Unknown parameter |accessyear= ignored (|access-date= suggested) (help)
  9. ^ "FireWire vs. USB 2.0". USB Ware. Retrieved 19 March. {{cite web}}: Check date values in: |accessdate= (help); Unknown parameter |accessyear= ignored (|access-date= suggested) (help)

See also

Template:Step

Template:Link FA