|
|
|
|
| SYSTEM ARCHITECTURE |
 |
Introduction to USB |
 |
Management of periodic traffics |
 |
Software organization |
 |
Highlighting the differences between transfer, transaction and packet |
 |
Device configuration, standard descriptors and commands |
| ELECTRICAL SPECIFICATION |
 |
Cable and connectors |
 |
Low Speed / Full Speed signalling |
 |
Reset sequence |
 |
High Speed signalling |
 |
Reset sequence, chirp negotiation |
| TRANSFER PROTOCOL |
 |
Low Speed / Full Speed protocol |
 |
Periodic traffics in High Speed systems |
 |
Non periodic traffics in High Speed systems |
 |
Error detection |
 |
Power management |
| BUS CONFIGURATION |
 |
Device configuration – Standard descriptors |
 |
Device configuration – Standard commands |
 |
Initialization sequence |
|
 |
A trace is studied to understand the initialization sequence by using the ability of the trace viewer to decode standard requests |
|
 |
Purpose of USB classes, list of classes |
| USB ON-THE-GO 2.0 |
 |
Typical applications |
 |
New plug and receptacles |
 |
Electrical requirements |
 |
Attach Detection Protocol |
 |
Session Request Protocol |
 |
Host Negociation Protocol |
 |
Testing the interface |
| BATTERY CHARGING SPECIFICATION |
 |
Accessory Charger Adapter |
 |
Charger detection hardware |
 |
Primary detection |
 |
Secondary detection |
 |
Charger detection algorithms |
 |
Electrical requirements |
| HUB OPERATION |
 |
Hub architecture |
 |
Split transactions |
 |
The Hub class - Descriptors |
 |
The Hub class - Commands |
|
 |
A trace is studied to understand the configuration of a hub by using the ability of the trace viewer to decode hub class requests |
| TRANSCEIVER STANDARD INTERFACES |
 |
UTMI, elastic buffer, transmit and receive transmit diagrams |
 |
Carkit, multiplexing USB traffic, UART and analog audio on the USB cable |
 |
UTMI+ 1.0, description of new signals required to support OTG |
 |
UTMI+ 1.0, level 2 and 3 |
 |
ULPI 1.1, low pin count interface, transfer protocol |
| HOST CONTROLLER OPERATION |
 |
OHCI |
 |
UHCI |
 |
Introduction to EHCI |
 |
Host Controller initialisation |
 |
Port routing and control |
 |
Periodic schedule |
 |
Asynchronous schedule |
 |
Managing Control / Bulk / Interrupt transfer via Queue Heads |
| DEBUGGING A USB APPLICATION |
 |
Compliance checklists released by the USB Implementers Forum |
 |
USB2.0 electrical test specification |
 |
Detailing the list of tests to be run on the oscilloscope |
 |
Lecroy solutions: protocol analysers / exercicers, test of the physical layer |
| HID CLASS DEVICES [On request] |
 |
Operational model, item parser, report ID |
 |
Descriptors, HID descriptor, report descriptor: main item, global item, local item |
 |
Requests: GetReport/SetReport, GetIdle/SetIdle, GetProtocol/SetProtocol |
 |
Boot interface descriptors: mouse and keyboard |
|
 |
A trace related to a mouse is used all along this chapter to provide practical examples of HID report descriptor and mouse report transfer format |
| MASS STORAGE CLASS DEVICES [On request] |
 |
Relationship with ATAPI specification |
 |
Reduced Block commands |
 |
SCSI primary commands |
 |
MMC command set |
 |
Control, Bulk, Interrupt transport |
 |
Standard descriptors |
 |
Bulk only transport |
|
 |
USB memory stick traffic has been captured to explain the various protocols described in this chapter |
| USB FOR SMARTCARD [On request] |
 |
Basics of ISO/IEC 7816-3 |
 |
Answer To Reset |
 |
Protocol and Parameter Selection |
 |
Interchip USB, voltage class negotiation |
 |
Interchip USB, device attachment / detachment, highlighting when RPU and RPD have to be connected and disconnected |
 |
ETSI TS 102 600 UICC-Terminal interface, Characteristics of the USB interface |
 |
SimCard, ICCD class, transporting ISO messages over USB |
 |
Managing a POS, CCID class |