Introduction to USB Deveopment
Introduction Technica Overview USB in Embedded Systems Recent Deveopments Extensions to USB USB as compared to other technoogies
USB: Universa Seria Bus A seria bus standard for connecting devices usuay periphera devices to computers. Need for USB To eiminate a proiferation of the cabes Eiminate the need for pug in expansion cards Standardization Design of USB standardized by USB impementers forum Why USB for Embedded Systems?
USB: Offers simpe connectivity Low cost Ease of use Manages power effecienty Supports a kinds of Data
Seria Protoco and Physica Link uses two pairs of wires Upstream Connection and Downstream Connection Uses three types of cabes and two types of connectors High Speed cabes at 480 Mbps Fu Speed cabes at 12 Mbps and Low Speed cabes at 1.5 Mbps USB standard uses NZRI system to encode data
Two Types of Connectors: Type A Type B
Architecture of a USB network Consists of one host device and mutipe daisy chained devices
Foows a Tiered star Topoogy and consists of: Peripheras Hubs Host controer Peripheras receive and respond to the commands from the host. E.g. Mice, Keyboard, Joysticks Two types of Peripheras Standaone and Compound Device
Host recognizes the periphera through a process caed Enumerations Host communicates with the periphera to earn its identity and identifies which device driver is required Host suppies the periphera with an address HUBS: Aows many USB devices to share a singe USB port USB devices with some incorporated inteigence Increase the ogica and physica fan out Singe upstream connection and one-many down stream connection
Two kinds of Hubs: Bus Powered Hub: Draws power from the host computers USB interface Sef Powered Hub: Has a buit in power suppy. Smart wire passing data between the periphera and Host Direct connection exists between host and peripheras Host is the controer of the entire network.e.g.pc
!""# Peripheras connected regardess of the power state A pair of wires to suppy power to the peripheras Manage power by enabing and disabing power to devices Removes eectricay i behaved systems from the network
$%"% % Communication between the host and the end points ocated in the periphera End point is a unique point in the device which is the source or the receiver of the data End point has a definite address associated with it Codes indicate the type of transfer 16 end points within each device each end point has a 4 bit address End point 0 reserved for contro transfers
$%"% % Transactions between the host and end point take pace through virtua pipes Pipes are ogica channes which connect the host to the end points Once the communication is estabished the end points return a descriptor Descriptor is a data structure tes the host about the end points configuration and expectations
$%"% % USB supports four transfer types of data: Contro Transfers: exchange information such as configuration, command information, set up between host and end point Buk Transfers: Supports buk amounts of data when timey deivery isn t critica.e.g. Printers and Scanners Isochronous transfers: Hande transfers ike streaming data Interrupt transfers: Po devices to see if they need service
USB is a compex standard requires enormous amount of software support both of firmware side and the host support USB communication mode reies on the Win32 Driver mode Win32 driver mode ayers different processes of communication into a stack Its organized into Appication Layer, Driver casses, Bus Driver and Host controer driver
%% Appication Code reacts with the drivers using API cas Within the stack itsef the communication is through Interrupt I/O request packets USB Bus driver manages Enumeration, power management and other USB transactions
% Two types of drivers. Cass Drivers and Custom Drivers Drivers are organized into casses where hardware that fas into a singe cass share simiar interfaces E.g. HID Cass which supports devices ike mice, Joy sticks Monitor cass which supports image position, aignment Custom Driver expoits capabiities of a particuar piece of Hardware E.g. A Data Acquisition system
%&''' Processor based USB controer adding Keyboard and mouse to an existing design USB Host controer wi communicate with the existing design via an UART Code for the Host USB controer wi contain a Library of routines and an Appication ayer Firmware Code from the Library wi take care of enumerating newy attached or removed devices, communication to and from the devices, Memory management, etc.
%&''' Whie creating the code the first step is to determine how many and what type of devices wi be supported The next step is to create appication code for each device. The driver tempate wi incude start, stop and run functionaity Addition of Hub Support is the key design consideration
( USB 2.0 PictBridge Standard to communicate imaging devices Microsoft X box consoe IBM Utraport USB 1.0 OTG USB 1.0a suppement OTG Wireess USB
)*)+ * # USB On-The-Go Technoogy is used to provide dua roe to the peripheras Enabes direct communication between the hosts without invoving the processor Incorporates Mini A, Mini B, Mini AB pugs and receptaces Highy compex design
*+ Advantages: Provides Dua Roe Devices Introduces new connector types, Mini A, Mini B, Mini AB Provides with Aggressive Power Management On the Go Functionaity of the USB can be impemented: Using a Fu soution Approach Using a USB microcontroer Designing a custom IC
% A Paradigm deveoped by Cypress that aows devices to be connected but appear as if they are connected to the host over norma USB connectivity Addresses many of the Design issues of Wireess networking An evoution that reies on famiiar and existing technoogies Desirabe for point to point devices Features of Wireess USB are its Ease of use, simpe connectivity and conservation of the battery power
" "' * "'"',-%%. USB Connects peripheras to the computers Operates at ow data rates Cannot be intended to act as an interna bus for storage Foows a tiered star topoogy USB uses a speak when spoken to protoco Reies on a singe host to contro the network FireWire A technoogy to interconnect mass storage devices Has higher data rates Uses a repeater based topoogy Can connect with any node at a time Any capabe node can contro the network FireWire ports are expensive
- http://en.wikipedia.org/wiki/usb http://www.embeddedcomputing.com/artices/wright_et_a/ http://www.embedded.com/2000/0003/0003ia2.htm Introduction to USB for Design Engineers- A Webminar : http://www.pmc-sierra.com/webinars/usb.htm
/00