0% found this document useful (0 votes)
52 views

An Introduction To USB Software

USB is an alternative interface standard that simplifies I/O and offers plug-and-play connectivity. It supports multiple data rates and device topologies with a host and hubs connecting peripherals. A USB peripheral uses endpoints and pipes for communication over the bus using various transfer types.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
52 views

An Introduction To USB Software

USB is an alternative interface standard that simplifies I/O and offers plug-and-play connectivity. It supports multiple data rates and device topologies with a host and hubs connecting peripherals. A USB peripheral uses endpoints and pipes for communication over the bus using various transfer types.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 9

An Introduction to USB

Software

from

Embedded Software: The Works


2005 Mentor Graphics Corporation

What is USB?
Alternative to old-fashioned serial and parallel
interfaces
Minimises number of PC connectors
Simplifies I/O and offers true plug-n-play
Supports up to 127 devices
Multiple data rates
USB 1.1: full speed [12Mb/s] and low speed [1.5Mb/s]
USB 2.0: high speed [480Mb/s]

from

Embedded Software: The Works


2005 Mentor Graphics Corporation

USB Topology
Host
Root Hub
Hub
1

Peripheral

Hub
3

Peripheral

Peripheral

Hub
2

Peripheral

Hub
4

Peripheral

Peripheral

Peripheral

from

Embedded Software: The Works


2005 Mentor Graphics Corporation

A USB Peripheral

Buffers called endpoints


Use logical channels called virtual pipes
Control pipe is Endpoint 0
One or more data pipes [Endpoints 1, 2, 3
Two configurations:
IN: device to host
OUT: host to device
from

Embedded Software: The Works


2005 Mentor Graphics Corporation

A USB Peripheral
USB Peripheral Controller

Endpoint n
To
host
or hub

USB
Interface

CPU
Endpoint 1
Endpoint 0

Input/Output Device
from

Embedded Software: The Works


2005 Mentor Graphics Corporation

USB Communications
USB is a master/slave protocol
4 types of data transfer:
Control
Bulk
volume, non-time-critical data

Interrupt
polled, low-volume data

Isochronous
volume, time-critical data
from

Embedded Software: The Works


2005 Mentor Graphics Corporation

USB Software Layers


Host

Function

Application
Application
Middleware
Class Driver

Class Driver

Host Stack

Function Stack

Hardware
Controller Driver

Hardware
Controller Driver

from

Embedded Software: The Works


2005 Mentor Graphics Corporation

USB and Embedded Systems


Usually building a device
a USM Function
need software for that end of the bus

Could build USB host


e.g. set-top box

Embedded device could be both


need both stacks
or use USB On-The-Go
from

Embedded Software: The Works


2005 Mentor Graphics Corporation

Both Sides of the Bus

from

Embedded Software: The Works


2005 Mentor Graphics Corporation

You might also like