`Specification
`
`Compaq
`
`Hewlett-Packard
`
`Intel
`
`Lucent
`
`Microsoft
`
`NEC
`
`Philips
`
`Revision 2.0
`
`April 27, 2000
`
`Petitioners Ex. 1011
`IPR USP 7,239,111
`Page 1 of 650
`
`
`
`Universal Serial Bus Specification Revision 2.0
`
`Scope of this Revision
`The 2.0 revision of the specification is intended for product design. Every attempt has been made to ensure a
`consistent and implementable specification. Implementations should ensure compliance with this revision.
`
`Revision History
`
`Revision
`
`Issue Date
`
`Comments
`
`0.7
`
`0.8
`
`0.9
`
`0.99
`
`November 11, 1994
`
`Supersedes 0.6e.
`
`December 30, 1994
`
`Revisions to Chapters 3-8, 10, and 11. Added
`appendixes.
`
`April 13, 1995
`
`Revisions to all the chapters.
`
`August 25, 1995
`
`Revisions to all the chapters.
`
`1.0 FDR
`
`November 13, 1995
`
`Revisions to Chapters 1, 2, 5-11.
`
`1.0
`
`1.1
`
`January 15, 1996
`
`Edits to Chapters 5, 6, 7, 8, 9, 10, and 11 for
`consistency.
`
`September 23, 1998
`
`Updates to all chapters to fix problems identified.
`
`2.0 (draft 0.79) October 5, 1999
`
`Revisions to chapters 5, 7, 8, 9, 11 to add high
`speed.
`
`2.0 (draft 0.9)
`
`December 21, 1999
`
`Revisions to all chapters to add high speed.
`
`2.0
`
`April 27, 2000
`
`Revisions for high-speed mode.
`
`Universal Serial Bus Specification
`Copyright © 2000, Compaq Computer Corporation,
`Hewlett-Packard Company, Intel Corporation, Lucent Technologies Inc,
`Microsoft Corporation, NEC Corporation, Koninklijke Philips Electronics N.V.
`All rights reserved.
`
`INTELLECTUAL PROPERTY DISCLAIMER
`THIS SPECIFICATION IS PROVIDED TO YOU “AS IS” WITH NO WARRANTIES WHATSOEVER,
`INCLUDING ANY WARRANTY OF MERCHANTABILITY, NON-INFRINGEMENT, OR FITNESS FOR
`ANY PARTICULAR PURPOSE. THE AUTHORS OF THIS SPECIFICATION DISCLAIM ALL LIABILITY,
`INCLUDING LIABILITY FOR INFRINGEMENT OF ANY PROPRIETARY RIGHTS, RELATING TO USE
`OR IMPLEMENTATION OF INFORMATION IN THIS SPECIFICATION. THE PROVISION OF THIS
`SPECIFICATION TO YOU DOES NOT PROVIDE YOU WITH ANY LICENSE, EXPRESS OR IMPLIED,
`BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS.
`
`All product names are trademarks, registered trademarks, or servicemarks of their respective owners.
`
`Please send comments via electronic mail to techsup@usb.org
`For industry information, refer to the USB Implementers Forum web page at http://www.usb.org
`
`ii
`
`Petitioners Ex. 1011
`IPR USP 7,239,111
`Page 2 of 650
`
`
`
`Universal Serial Bus Specification Revision 2.0
`
`Acknowledgement of USB 2.0 Technical Contribution
`
`The authors of this specification would like to recognize the following people who participated in the USB
`2.0 Promoter Group technical working groups. We would also like to thank others in the USB 2.0
`Promoter companies and throughout the industry who contributed to the development of this specification.
`
`Hub Working Group
`John Garney
`Ken Stufflebeam
`David Wooten
`Matt Nieberger
`John Howard
`Venkat Iyer
`Steve McGowan
`Geert Knapen
`Zong Liang Wu
`Jim Clee
`Jim Guziak
`Dave Thompson
`John Fuller
`Nathan Sherman
`Mark Williams
`Nobuo Furuya
`Toshimi Sakurai
`Moto Sato
`Katsuya Suzuki
`
`Intel Corporation (Chair/Editor)
`Compaq Computer Corporation
`Compaq Computer Corporation
`Hewlett-Packard Company
`Intel Corporation
`Intel Corporation
`Intel Corporation
`Royal Philips Electronics
`Royal Philips Electronics
`Lucent Technologies Inc
`Lucent Technologies Inc
`Lucent Technologies Inc
`Microsoft Corporation
`Microsoft Corporation
`Microsoft Corporation
`NEC Corporation
`NEC Corporation
`NEC Corporation
`NEC Corporation
`
`Electrical Working Group
`Jon Lueker
`Intel Corporation (Chair/Editor)
`David Wooten
`Compaq Computer Corporation
`Matt Nieberger
`Hewlett-Packard Company
`Larry Taugher
`Hewlett-Packard Company
`Venkat Iyer
`Intel Corporation
`Steve McGowan
`Intel Corporation
`Mike Pennell
`Intel Corporation
`Todd West
`Intel Corporation
`Gerrit den Besten
`Royal Philips Electronics
`Marq Kole
`Royal Philips Electronics
`Zong Liang Wu
`Royal Philips Electronics
`Jim Clee
`Lucent Technologies Inc
`Jim Guziak
`Lucent Technologies Inc
`Par Parikh
`Lucent Technologies Inc
`Dave Thompson
`Lucent Technologies Inc
`Ed Giaimo
`Microsoft Corporation
`Mark Williams
`Microsoft Corporation
`Toshihiko Ohtani
`NEC Corporation
`Kugao Ouchi
`NEC Corporation
`Katsuya Suzuki
`NEC Corporation
`Toshio Tasaki
`NEC Corporation
`
`iii
`
`Petitioners Ex. 1011
`IPR USP 7,239,111
`Page 3 of 650
`
`
`
`Universal Serial Bus Specification Revision 2.0
`
`iv
`
`Petitioners Ex. 1011
`IPR USP 7,239,111
`Page 4 of 650
`
`
`
`Universal Serial Bus Specification Revision 2.0
`
`Contents
`
`CHAPTER 1 INTRODUCTION
`
`1.1 Motivation .............................................................................................................................................. 1
`
`1.2 Objective of the Specification ............................................................................................................... 1
`
`1.3
`
`Scope of the Document .......................................................................................................................... 2
`
`1.4 USB Product Compliance ..................................................................................................................... 2
`
`1.5 Document Organization ........................................................................................................................ 2
`
`CHAPTER 2 TERMS AND ABBREVIATIONS
`
`CHAPTER 3 BACKGROUND
`
`3.1 Goals for the Universal Serial Bus ..................................................................................................... 11
`
`3.2
`
`Taxonomy of Application Space......................................................................................................... 12
`
`3.3
`
`Feature List .......................................................................................................................................... 13
`
`CHAPTER 4 ARCHITECTURAL OVERVIEW
`
`4.1 USB System Description ..................................................................................................................... 15
`4.1.1
`Bus Topology ................................................................................................................................. 16
`
`Physical Interface ................................................................................................................................ 17
`4.2
`4.2.1
`Electrical......................................................................................................................................... 17
`4.2.2 Mechanical ..................................................................................................................................... 18
`
`Power .................................................................................................................................................... 18
`4.3
`4.3.1
`Power Distribution ......................................................................................................................... 18
`4.3.2
`Power Management........................................................................................................................ 18
`
`4.4
`
`Bus Protocol ......................................................................................................................................... 18
`
`4.5 Robustness............................................................................................................................................ 19
`4.5.1
`Error Detection............................................................................................................................... 19
`4.5.2
`Error Handling................................................................................................................................ 19
`
`System Configuration.......................................................................................................................... 19
`4.6
`4.6.1 Attachment of USB Devices........................................................................................................... 20
`4.6.2
`Removal of USB Devices............................................................................................................... 20
`4.6.3
`Bus Enumeration ............................................................................................................................ 20
`
`v
`
`Petitioners Ex. 1011
`IPR USP 7,239,111
`Page 5 of 650
`
`
`
`Universal Serial Bus Specification Revision 2.0
`
`4.7 Data Flow Types ...................................................................................................................................20
`4.7.1
`Control Transfers.............................................................................................................................21
`4.7.2
`Bulk Transfers .................................................................................................................................21
`4.7.3
`Interrupt Transfers...........................................................................................................................21
`4.7.4
`Isochronous Transfers .....................................................................................................................21
`4.7.5 Allocating USB Bandwidth.............................................................................................................21
`
`4.8 USB Devices ..........................................................................................................................................22
`4.8.1 Device Characterizations.................................................................................................................22
`4.8.2 Device Descriptions ........................................................................................................................22
`
`4.9 USB Host: Hardware and Software...................................................................................................24
`
`4.10 Architectural Extensions......................................................................................................................24
`
`CHAPTER 5 USB DATA FLOW MODEL
`
`5.1
`
`Implementer Viewpoints......................................................................................................................25
`
`Bus Topology ........................................................................................................................................27
`5.2
`5.2.1 USB Host ........................................................................................................................................27
`5.2.2 USB Devices ...................................................................................................................................28
`5.2.3
`Physical Bus Topology....................................................................................................................29
`5.2.4
`Logical Bus Topology.....................................................................................................................30
`5.2.5
`Client Software-to-function Relationship........................................................................................31
`
`5.3 USB Communication Flow ..................................................................................................................31
`5.3.1 Device Endpoints ............................................................................................................................33
`5.3.2
`Pipes ................................................................................................................................................34
`5.3.3
`Frames and Microframes.................................................................................................................36
`
`Transfer Types......................................................................................................................................36
`5.4
`5.4.1
`Table Calculation Examples............................................................................................................37
`
`5.5 Control Transfers .................................................................................................................................38
`5.5.1
`Control Transfer Data Format .........................................................................................................38
`5.5.2
`Control Transfer Direction ..............................................................................................................39
`5.5.3
`Control Transfer Packet Size Constraints........................................................................................39
`5.5.4
`Control Transfer Bus Access Constraints........................................................................................40
`5.5.5
`Control Transfer Data Sequences....................................................................................................43
`
`Isochronous Transfers..........................................................................................................................44
`5.6
`5.6.1
`Isochronous Transfer Data Format..................................................................................................44
`5.6.2
`Isochronous Transfer Direction.......................................................................................................44
`5.6.3
`Isochronous Transfer Packet Size Constraints ................................................................................44
`5.6.4
`Isochronous Transfer Bus Access Constraints ................................................................................47
`5.6.5
`Isochronous Transfer Data Sequences.............................................................................................47
`
`Interrupt Transfers ..............................................................................................................................48
`5.7
`5.7.1
`Interrupt Transfer Data Format .......................................................................................................48
`5.7.2
`Interrupt Transfer Direction ............................................................................................................48
`5.7.3
`Interrupt Transfer Packet Size Constraints......................................................................................48
`5.7.4
`Interrupt Transfer Bus Access Constraints......................................................................................49
`5.7.5
`Interrupt Transfer Data Sequences ..................................................................................................52
`
`vi
`
`Petitioners Ex. 1011
`IPR USP 7,239,111
`Page 6 of 650
`
`
`
`Universal Serial Bus Specification Revision 2.0
`
`Bulk Transfers ..................................................................................................................................... 52
`5.8
`5.8.1
`Bulk Transfer Data Format............................................................................................................. 52
`5.8.2
`Bulk Transfer Direction.................................................................................................................. 52
`5.8.3
`Bulk Transfer Packet Size Constraints ........................................................................................... 53
`5.8.4
`Bulk Transfer Bus Access Constraints ........................................................................................... 53
`5.8.5
`Bulk Transfer Data Sequences ....................................................................................................... 55
`
`5.9 High-Speed, High Bandwidth Endpoints........................................................................................... 56
`5.9.1 High Bandwidth Interrupt Endpoints ............................................................................................. 56
`5.9.2 High Bandwidth Isochronous Endpoints ........................................................................................ 57
`
`5.10 Split Transactions................................................................................................................................ 58
`
`5.11 Bus Access for Transfers..................................................................................................................... 58
`5.11.1 Transfer Management..................................................................................................................... 59
`5.11.2 Transaction Tracking...................................................................................................................... 61
`5.11.3 Calculating Bus Transaction Times................................................................................................ 63
`5.11.4 Calculating Buffer Sizes in Functions and Software ...................................................................... 65
`5.11.5 Bus Bandwidth Reclamation .......................................................................................................... 65
`
`5.12 Special Considerations for Isochronous Transfers........................................................................... 65
`5.12.1 Example Non-USB Isochronous Application................................................................................. 66
`5.12.2 USB Clock Model .......................................................................................................................... 69
`5.12.3 Clock Synchronization ................................................................................................................... 71
`5.12.4 Isochronous Devices....................................................................................................................... 71
`5.12.5 Data Prebuffering ........................................................................................................................... 80
`5.12.6 SOF Tracking ................................................................................................................................. 81
`5.12.7 Error Handling................................................................................................................................ 81
`5.12.8 Buffering for Rate Matching .......................................................................................................... 82
`
`CHAPTER 6 MECHANICAL
`
`6.1 Architectural Overview....................................................................................................................... 85
`
`6.2 Keyed Connector Protocol.................................................................................................................. 85
`
`6.3 Cable ..................................................................................................................................................... 86
`
`6.4 Cable Assembly.................................................................................................................................... 86
`6.4.1
`Standard Detachable Cable Assemblies ......................................................................................... 86
`6.4.2 High-/full-speed Captive Cable Assemblies................................................................................... 88
`6.4.3
`Low-speed Captive Cable Assemblies ........................................................................................... 90
`6.4.4
`Prohibited Cable Assemblies.......................................................................................................... 92
`
`6.5 Connector Mechanical Configuration and Material Requirements................................................ 93
`6.5.1 USB Icon Location......................................................................................................................... 93
`6.5.2 USB Connector Termination Data ................................................................................................. 94
`6.5.3
`Series “A” and Series “B” Receptacles .......................................................................................... 94
`6.5.4
`Series “A” and Series “B” Plugs .................................................................................................... 98
`
`vii
`
`Petitioners Ex. 1011
`IPR USP 7,239,111
`Page 7 of 650
`
`
`
`Universal Serial Bus Specification Revision 2.0
`
`6.6 Cable Mechanical Configuration and Material Requirements ......................................................102
`6.6.1 Description ....................................................................................................................................102
`6.6.2
`Construction ..................................................................................................................................103
`6.6.3
`Electrical Characteristics...............................................................................................................105
`6.1.4
`Cable Environmental Characteristics ............................................................................................106
`6.1.5
`Listing ...........................................................................................................................................106
`
`Electrical, Mechanical, and Environmental Compliance Standards .............................................106
`6.7
`6.7.1 Applicable Documents ..................................................................................................................114
`
`6.8 USB Grounding ..................................................................................................................................114
`
`6.9
`
`PCB Reference Drawings...................................................................................................................114
`
`CHAPTER 7 ELECTRICAL
`
`Signaling..............................................................................................................................................119
`7.1
`7.1.1 USB Driver Characteristics ...........................................................................................................123
`7.1.2 Data Signal Rise and Fall, Eye Patterns ........................................................................................129
`7.1.3
`Cable Skew....................................................................................................................................139
`7.1.4
`Receiver Characteristics ................................................................................................................139
`7.1.5 Device Speed Identification ..........................................................................................................141
`7.1.6
`Input Characteristics......................................................................................................................142
`7.1.7
`Signaling Levels............................................................................................................................144
`7.1.8 Data Encoding/Decoding ..............................................................................................................157
`7.1.9
`Bit Stuffing....................................................................................................................................157
`7.1.10 Sync Pattern ..................................................................................................................................159
`7.1.11 Data Signaling Rate.......................................................................................................................159
`7.1.12 Frame Interval ...............................................................................................................................159
`7.1.13 Data Source Signaling...................................................................................................................160
`7.1.14 Hub Signaling Timings .................................................................................................................162
`7.1.15 Receiver Data Jitter .......................................................................................................................164
`7.1.16 Cable Delay...................................................................................................................................165
`7.1.17 Cable Attenuation..........................................................................................................................167
`7.1.18 Bus Turn-around Time and Inter-packet Delay.............................................................................168
`7.1.19 Maximum End-to-end Signal Delay..............................................................................................168
`7.1.20 Test Mode Support ........................................................................................................................169
`
`Power Distribution .............................................................................................................................171
`7.2
`7.2.1
`Classes of Devices.........................................................................................................................171
`7.2.2 Voltage Drop Budget ....................................................................................................................175
`7.2.3
`Power Control During Suspend/Resume.......................................................................................176
`7.2.4 Dynamic Attach and Detach..........................................................................................................177
`
`Physical Layer.....................................................................................................................................178
`7.3
`7.3.1
`Regulatory Requirements ..............................................................................................................178
`7.3.2
`Bus Timing/Electrical Characteristics...........................................................................................178
`7.3.3
`Timing Waveforms .......................................................................................................................191
`
`viii
`
`Petitioners Ex. 1011
`IPR USP 7,239,111
`Page 8 of 650
`
`
`
`Universal Serial Bus Specification Revision 2.0
`
`CHAPTER 8 PROTOCOL LAYER
`
`8.1
`
`Byte/Bit Ordering .............................................................................................................................. 195
`
`8.2
`
`SYNC Field......................................................................................................................................... 195
`
`Packet Field Formats......................................................................................................................... 195
`8.3
`8.3.1
`Packet Identifier Field .................................................................................................................. 195
`8.3.2 Address Fields .............................................................................................................................. 197
`8.3.3
`Frame Number Field..................................................................................................................... 197
`8.3.4 Data Field ..................................................................................................................................... 197
`8.3.5
`Cyclic Redundancy Checks.......................................................................................................... 198
`
`Packet Formats .................................................................................................................................. 199
`8.4
`8.4.1
`Token Packets............................................................................................................................... 199
`8.4.2
`Split Transaction Special Token Packets...................................................................................... 199
`8.4.3
`Start-of-Frame Packets ................................................................................................................. 204
`8.4.4 Data Packets ................................................................................................................................. 206
`8.4.5 Handshake Packets ....................................................................................................................... 206
`8.4.6 Handshake Responses .................................................................................................................. 207
`
`Transaction Packet Sequences.......................................................................................................... 209
`8.5
`8.5.1 NAK Limiting via Ping Flow Control.......................................................................................... 217
`8.5.2
`Bulk Transactions......................................................................................................................... 221
`8.5.3
`Control Transfers.......................................................................................................................... 225
`8.5.4
`Interrupt Transactions................................................................................................................... 228
`8.5.5
`Isochronous Transactions ............................................................................................................. 229
`
`8.6 Data Toggle Synchronization and Retry ......................................................................................... 232
`8.6.1
`Initialization via SETUP Token ................................................................................................... 233
`8.6.2
`Successful Data Transactions ....................................................................................................... 233
`8.6.3 Data Corrupted or Not Accepted.................................................................................................. 233
`8.6.4
`Corrupted ACK Handshake.......................................................................................................... 234
`8.6.5
`Low-speed Transactions............................................................................................................... 235
`
`Error Detection and Recovery.......................................................................................................... 236
`8.7
`8.7.1
`Packet Error Categories................................................................................................................ 236
`8.7.2
`Bus Turn-around Timing.............................................................................................................. 237
`8.7.3
`False EOPs ................................................................................................................................... 237
`8.7.4
`Babble and Loss of Activity Recovery......................................................................................... 238
`
`ix
`
`Petitioners Ex. 1011
`IPR USP 7,239,111
`Page 9 of 650
`
`
`
`Universal Serial Bus Specification Revision 2.0
`
`CHAPTER 9 USB DEVICE FRAMEWORK
`
`9.1 USB Device States...............................................................................................................................239
`9.1.1 Visible Device States.....................................................................................................................239
`9.1.2
`Bus Enumeration ...........................................................................................................................243
`
`9.2 Generic USB Device Operations .......................................................................................................244
`9.2.1 Dynamic Attachment and Removal...............................................................................................244
`9.2.2 Address Assignment......................................................................................................................244
`9.2.3
`Configuration ................................................................................................................................244
`9.2.4 Data Transfer.................................................................................................................................245
`9.2.5
`Power Management.......................................................................................................................245
`9.2.6
`Request Processing........................................................................................................................245
`9.2.7
`Request Error ................................................................................................................................247
`
`9.3 USB Device Requests..................................................................................................................