USB
Universal Serial Bus
Basic Architecture
Host-to-Device Connections and Transactions
Features
n Asynchronous serial communication.
n Attachment is detected and device is configured
automatically.
n Single standard connector.
n 127 devices can be connected via hubs.
n Three device speeds:
n Low (1.5Mb/s)
n Full (12Mb/s)
n High (480Mb/s)
n Power: 5V, 100mA-500mA
n Error detection/recovery is automatic.
Terminology
PC Host Software
(USB Communication Flow)
I/O Device
Multiple Personalities
Enumeration
n When a device is attached, the OS “enumerates” the
device, identifies its driver, and assigns an address to
it.
n In the numeration process, data structures (transfer
descriptors) contain information needed by the host
to generate transactions. This information includes:
n USB device address.
n Type of transfer.
n Direction of transfer (write or read).
n Transfer size (# of bytes).
n Speed.
n Address of the device driver’s memory buffer.
Enumeration Steps
n Getting the device descriptor.
n Setting an address.
n Getting the device descriptor again.
n Getting the configuration descriptor.
n Selecting the device driver.
n Setting the configuration.
Frames
The Fundamental Packet
n All communications on the USB are
organized into small packets.
n Four types of packets:
n Token, Data, Handshake, and Special.
n Each packets consists of 3 parts:
n Start (SYNC), information and end.
Packet Types
Ping
0100
Split
1000
ERR
1100
PREamble
1100
Special
NYET (No Response Yet)
0110
STALL Handshake
1110
NAK Handshake
1010
ACK Handshake
0010
Handshake
MDATA
1111
DATA2
0111
DATA1
1011
DATA0
0011
Data
SETUP Token
1101
SOF Token
0101
IN Token
1001
OUT Token
0001
Token
Packet Identifier
PID Value
Group
Four Transaction Types
Examples
Max size
HS
Max size
FS
Max size
LS
Important
attributes
Type
System
control
64
64
8
Quality +
time
Control
Audio, video
3072
1023
-
time
Isochronous
Printer,
scanner
512
64
-
Quality
Bulk
Mouse,
keyboard
3072
64
8
Quality +
time
Interrupt
Interrupt Transfer
Isochronous Transfer
Control Transfer

USB and communication protocols- Embedded System

  • 1.
    USB Universal Serial Bus BasicArchitecture Host-to-Device Connections and Transactions
  • 2.
    Features n Asynchronous serialcommunication. n Attachment is detected and device is configured automatically. n Single standard connector. n 127 devices can be connected via hubs. n Three device speeds: n Low (1.5Mb/s) n Full (12Mb/s) n High (480Mb/s) n Power: 5V, 100mA-500mA n Error detection/recovery is automatic.
  • 3.
  • 4.
    PC Host Software (USBCommunication Flow)
  • 5.
  • 6.
  • 7.
    Enumeration n When adevice is attached, the OS “enumerates” the device, identifies its driver, and assigns an address to it. n In the numeration process, data structures (transfer descriptors) contain information needed by the host to generate transactions. This information includes: n USB device address. n Type of transfer. n Direction of transfer (write or read). n Transfer size (# of bytes). n Speed. n Address of the device driver’s memory buffer.
  • 8.
    Enumeration Steps n Gettingthe device descriptor. n Setting an address. n Getting the device descriptor again. n Getting the configuration descriptor. n Selecting the device driver. n Setting the configuration.
  • 9.
  • 10.
    The Fundamental Packet nAll communications on the USB are organized into small packets. n Four types of packets: n Token, Data, Handshake, and Special. n Each packets consists of 3 parts: n Start (SYNC), information and end.
  • 11.
    Packet Types Ping 0100 Split 1000 ERR 1100 PREamble 1100 Special NYET (NoResponse Yet) 0110 STALL Handshake 1110 NAK Handshake 1010 ACK Handshake 0010 Handshake MDATA 1111 DATA2 0111 DATA1 1011 DATA0 0011 Data SETUP Token 1101 SOF Token 0101 IN Token 1001 OUT Token 0001 Token Packet Identifier PID Value Group
  • 12.
    Four Transaction Types Examples Maxsize HS Max size FS Max size LS Important attributes Type System control 64 64 8 Quality + time Control Audio, video 3072 1023 - time Isochronous Printer, scanner 512 64 - Quality Bulk Mouse, keyboard 3072 64 8 Quality + time Interrupt
  • 13.
  • 14.
  • 15.