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
AUDIO CLASS [On Request]
- Audio device types
- Synchronization issues, difference between synchronous and isochronous
- Synchronous, asynchronous and adaptive synchronizations
- Feedback pipe
- Isochronous endpoint descriptor
- Interface descriptor
- Audio Control
- Unit descriptors
- Audio specific requests
- Retrieving the audio system architecture through the chained units and terminals