USB Josh Rickmar John Marcoux
Topics Purpose and Goals History Bus Design Power Differential Signaling Connectors Changes in USB 3.0
Purpose and Development History Goal: easier to connect external peripherals o Replace multitude of connectors o Simplify software configuration of all devices o Provide higher data rates Development began in 1994, led by seven companies o Compaq, DEC, IBM, Intel, Microsoft, NEC, Nortel o USB Implementers Forum formed shortly after First USB IC developed by Intel in 1995 Now used for keyboards, mice, cameras, printers, media players, disk drives (mass storage), network adapters, power, etc.
Version History USB : November 1994-August 1995 USB 1: January 1996 USB 1.1: August 1998 USB 2.0: April 2000 o Engineering Change Notices (ECNs) added to provide new features Mini-A and Mini-B Connector: October 2000 Implemented On-The-Go Battery Charging Specification 1.1: March 2007 Micro-USB Specification 1.01: April 2007 USB 3.0: November 2008
USB 1/1.1 Data rates of 1.5 Mbps (Low-Bandwidth) and 12 Mbps (Full-Bandwidth) Many limitations (timing and power issues) o No extension cables o No pass-through monitors Not widely adopted until version 1.1 due to bugs in the version 1 specification
USB 2.0 Added new "Hi-Speed" maximum signaling rate of 480 Mbps Later additions to the specification added with Engineering Change Notices USB 2.0 hosts backwards compatible with USB 1/1.1 devices
Topics Purpose and Goals History Bus Design o High level design o Transaction protocol and packets o Logical pipes and endpoints o Device functions and interfaces o Enumeration Power Differential Signaling Connectors Changes in USB 3.0
High-Level Design USB is a host-centric bus o Single host connects to multiple devices o Maximum of 127 devices Device functions defined by USB specification o Human Interface, Mass Storage, Audio, Video, etc. Composite devices may implement many device functions o Webcam uses both video and audio device functions
High-Level Design
Transaction Protocol All transactions transmitted as packets All packet transactions initiated by host controller First packet (token packet) of every transaction specifies type OUT packets inform the device the host wishes to send information IN packets inform the device the host wishes to read information Other tokens for synchronization For more information about the transaction protocol:
Logical Pipes and Endpoints USB defines multiple (<= 32) logical pipes (connections) to device endpoints o Endpoints are permanent, pipes are transient Two types of pipes o Stream: Unidirectional, used for isochronous (continuous and periodic), interrupt (device wants an ISR run), or bulk (large, non-periodic) transfers Ex: streaming a video (isochronous) Ex: sending a print job (bulk) Interrupt streams require host polling (USB 1-2.0) o Message: Bidirectional, used for control transfers Ex: command from host and device's response
High-Level Design (Logical Pipes)
High-Level Design (Endpoints)
Device Functions and Interfaces Multiple endpoints are grouped into interfaces Each interface is associated with a single device function Endpoint 0 is the exception o Connects to a message pipe o Used for device configuration o Only one Endpoint 0 for composite devices
High-Level Design (Device Functions)
Enumeration Upon first connection, enumeration process begins o Reset signal sent to USB device o Data rate is determined during reset signaling o Host reads device's information o Device assigned unique 7-bit address o Device drivers are loaded (if supported)
High-Level Design (Enumeration)
Topics Purpose and Goals History Bus Design Power o Standards o Improvements Differential Signaling Connectors Changes in USB 3.0
Power Defines devices to be high-power/low-power USB 1.x and 2.0: o Provides 5 V (+- 5%) supply o Defines a unit load as 100 mA o Can supply up to 5 unit loads o low-power: at most 1 unit load (100 mA) & minimum operating voltage of 4.4 V o high-power: at most 5 unit loads (500 mA) & up to maximum operating voltage Some devices require more than 500 mA to power them, which 1.x-2.0 cannot provide Solution: two USB connectors (373 SmartFusions) 1 for power+data, 1 for power
USB Battery Charging Specification 2007: Charging ports, unlike the standard downstream ports, can supply above 500 mA Dedicated charging ports (DCP) o Does not support data transfer o mA Charging downstream ports (CDP) o Supports data transfer o Higher current draw can interfere with high-speed transfer (usually limited to 900 mA) 2010: they introduced another ECN which upped the max current to 5A for DCP and 1.5A for CDP
Topics Purpose and Goals History Bus Design Power Differential Signaling o Technique used to reduce electromagnetic noise o Used since USB 1.0 Connectors Changes in USB 3.0
Differential Signaling: Basics Sending data on two lines, which are twisted together to form a differential pair o Each wire is sent the complement of the other External noise affects the pair equally Data is then received on the other side by taking the difference of the two signals Reduces electromagnetic noise
How Differential Signaling Works with editing
How Differential Signaling Works with editing
Topics Purpose and Goals History Bus Design Power Differential Signaling Connectors o Standard Connectors o Different types of USB Connectors Changes in USB 3.0
Standard Connectors Connection "A" o Host connection Connection "B" o Device connection
Mini and Micro Connectors Mini - Released October 2000 o Had A, B, and A-B receptacles o On-The-Go o Introduced a 5th pin (ID Pin) Allows distinction between host/slave devices (PDA's) Micro - Released April 2007 o Thinner, more durable o 2009: almost all cell phone manufacturers accepted it as standard charging port o Mini deprecated shortly after *not to scale
Topics Purpose and Goals History Bus Design Power Differential Signaling Connectors Changes in USB 3.0 o Similar concepts (endpoints, logical pipes) o Different electrical connection and implementation o Improvements
USB 3.0 Released November 2008 New transfer type o SuperSpeed (SS) - 5 Gbit/s (10x faster than 2.0) Includes overhead (~4.8 Gbits/s) Increased Bandwidth o Uses additional two unidirectional data paths: one to receive data, one to send Better Bus Utilization o Added the use of new packets to avoid polling Increase maximum current o Defines a unit load of 150 mA o Low-power: 1 unit load (150 mA), 4 V o High-power: up to 6 unit loads (900 mA), 5 V
USB 3.0 Connector 3.0's new dual-bus architecture allows both 2.0 (High/Low/Full speed) and 3.0 (SuperSpeed) to take place at the same time /11/apples_new_9_pin_dock_connec tor_for_iphone_5_may_support_usb _30
USB 3.0 Connector 3.0's new dual-bus architecture allows both 2.0 (High/Low/Full speed) and 3.0 (SuperSpeed) to take place at the same time Allows backward compatibility o Except the 'B' side /11/apples_new_9_pin_dock_connec tor_for_iphone_5_may_support_usb _30
scheme/507/USB%203.0%20SuperSpeed
USB 3.0 Bus Utilization Prior to 3.0, the host controller would poll the bus for traffic o The addition of 2 additional differential pairs allows communication to be full duplex Introduced the use of NRDY and ERDY packets o Because 3.0 is full duplex, the device can communicate to the host Device sends a NRDY (Not Ready) packet to host if it needs to catch up (full buffer, etc) Once device is ready to receive data again, it sends a ERDY (Endpoint Ready) packet Data transmission resumes
Conclusion Purpose and Goals History Bus Design Connectors Power Differential Signaling Changes in USB 3.0
Sources