Universal Serial Bus Jordan Weichel Jacob Lucero Tony Lucchesi 1
Outline Overview Design Interface Power 2
History USB 1.0 o Full Speed 12 Mbits/s (1.5 MB/s) o Low Speed 1.5 Mbits/s (0.2 MB/s) o 1996 o USB 1.1 (1998) USB 2.0 o High Speed 480 Mbits/s (60 MB/s) o 2000 USB 3.0 o SuperSpeed 5.0 Gbits/s (625 MB/s) o
USB in Embedded Systems 4 Self powered Fast communication Most reliable way to talk to computers
USB Wires and Ports 5
High-level Design 6
Endpoints Endpoints o 32 per device o (Device_addr, endpoint_num) 7
Pipes Message pipes o Control Short and simple for commands and queries Stream pipes o Interrupt Small bounded latency for quick transfers o Bulk Large transfers use remaining bandwidth o Isochronous Guaranteed data rate 8
Process Picture from beyster 1695 p28 Enumeration o Host assigns each device an address o Host acquires stream transfer types o Post enumeration 9
USB Protocols 1.Token Packet o Initiatiates communication 2.Data Packet o Contains information / payload 3.Status Packet o Acknowledges transactions o Reports errors 10
Transaction 11
USB to UART Example 12 USB VCC(+5v) Data+ Data- USB GND Data Out Data In
Power Pins 13
Vocabulary 100 mA = 1 unit load V bus = V CC o 500 mA max draw from V bus per device o 5 V goal Source o Powered vs. unpowered 14
Power Overview 1. Low-power 2. High-power 3. Self-power 15
Low-Power Functions Max draw o 1 unit load (100 mA) Power comes exclusively from V bus Voltage o 4.40 V min o 5.25 V max 16
High-Powered Functions Max draw o 5 unit loads (500 mA) Power comes exclusively from V bus Voltage o 4.40 V min o 5.25 V max 17
Self-Powered Functions 1 unit load from V bus Rest of the power from external source o Requires safety catch to never draw more than 1 unit load from V bus 18
Power Hiccups Suspended devices o Draw no more than 500 µA V bus unstable o Devices are plugged / unplugged Transient voltage dips as low as 4.1 V o Need to design device to handle situation 19
Pros and Cons Universal transfer protocol Increased reliability and speed of data transfers Pre-implemented drivers Many devices per host Dedicated hardware Complex debugging 20
Questions? 21
References