USB: UNIVERSAL SERIAL BUS Joe Kaewbaidhoon Alex Motalleb Vishal Joshi Prepared for EECS 373 University of Michigan, Ann Arbor 1.

Slides:



Advertisements
Similar presentations
Bus Interface ISA (Industry Standard Architecture) VESA local bus
Advertisements

IO Interfaces and Bus Standards. Interface circuits Consists of the cktry required to connect an i/o device to a computer. On one side we have data bus.
Protocol Layer Bottom-up view of the USB protocol Bottom-up view of the USB protocol –Byte/Bit Ordering –SYNC Field –Packet Field Formats PID Field PID.
Universal Serial Bus Grant Heileman. The History of USB In 1994 a collaborative effort to design a standard for peripheral devices was made between Compaq,
ITEC 352 Lecture 33 USB (2). Review Intro to USB –History –Rationale –Competitors –Serial versus parallel –Topology.
1 USB 2.0 Specification  General Description  From where we could begin the work  What would be valid to do?  Main doubts  What is OTG (On the Go)
1 USB 2.0 Specification  General Description  What is OTG (On the Go)  From where we could begin the work  What would be valid to do?
USB – An Overview Group 3 Kaushik Nandha Bikram What is the Universal Serial bus (USB)? Is a cable bus that supports data exchange between a host computer.
1 COMP541 Interrupts, DMA, Serial I/O Montek Singh April 24, 2007.
Anush Rengarajan Feng Zheng Thomas Madaelil
Dr A Sahu Dept of Comp Sc & Engg. IIT Guwahati. USB Introduction USB Architecture USB Framming USB Drivers URB (USB request Block)
USB 2.0 INTRODUCTION NTUT CSIE 學 生:許家豪 指導教授:柯開維教授.
© 2006 Pearson Education, Upper Saddle River, NJ All Rights Reserved.Brey: The Intel Microprocessors, 7e Chapter 15 PC Standard Bus Interfaces WK.
Introduction to USB. 2 Agenda Introduction to USB LPC23xx Block diagram MCB2300 demo.
EE 446 Embedded Architecture. Universal Serial Bus A representative peripheral interface Universal Serial Bus (USB) provides a serial bus standard for.
Local Asynchronous Communications. Bit-wise data transmission Data transmission requires: Encoding bits as energy Transmitting energy through medium Decoding.
Choosing (and Implementing) the Correct USB Connectivity for Your Embedded System Steve Wetterling, MSEE = Pat Barrett,
Computer communication. Introduction Mechanisms applied in communicating between a computer and another computer or with other devices. Mainly serial.
18 - Winter 2003 EE EE 766 Computer Interfacing and Protocols 1 USB (Universal Serial Bus) Need for “Plug and Play” capability for PC peripherals outside.
- Madhav Singh-.  This presentation describe the basics of USB device and Host side i.e. descriptors, endpoints, device controller, root hub etc.  It.
Serial Interfaces. Bit serial bus New generation of busses Uses bit-serial, differential drive technology Uses on-line device drivers (Hot-plug technology)
USB Josh Rickmar John Marcoux. Topics Purpose and Goals History Bus Design Power Differential Signaling Connectors Changes in USB 3.0.
SERIAL BUS COMMUNICATION PROTOCOLS
Universal Serial Bus Host Specification and Implementation
Peripheral Buses COMP Jamie Curtis. PC Buses ISA is the first generation bus 8 bit on IBM XT 16 bit on 286 or above (16MB/s) Extended through.
May 8, The EASY Way to Create I/O Devices John Hyde Intel Corporation intel.com.
Spring 2014 SILICON VALLEY UNIVERSITY CONFIDENTIAL 1 Introduction to Embedded Systems Dr. Jerry Shiao, Silicon Valley University.
Computers in Surveying SVY2301 / E4006 Automated Surveying.
Embedded Systems Architecture Class Project USB 2.0 Function Controller December 12, 2008 Brandon Wolfe, Ben Marrou, Daniel Chan.
Introduction Electrical Considerations Data Transfer Synchronization Bus Arbitration VME Bus Local Buses PCI Bus PCI Bus Variants Serial Buses 11/06/20141Input/Output.
Chapter 8 Input/Output. Busses l Group of electrical conductors suitable for carrying computer signals from one location to another l Each conductor in.
Peripheral Busses COMP Jamie Curtis. PC Busses ISA is the first generation bus 8 bit on IBM XT 16 bit on 286 or above (16MB/s) Extended through.
Introduction to USB Development. USB Development Introduction Technical Overview USB in Embedded Systems Recent Developments Extensions to USB USB as.
Introduction to USB © 2010 Renesas Electronics America Inc. All rights reserved.
USB host for web camera connection
USB Link Layer Protocol
LSU 10/22/2004Serial I/O1 Programming Unit, Lecture 5.
HL CE M, lehmann usb_tele ESC spring.ppt 1 - 9/8/2015, 10:22 START first foil.
ECE 371 – UNIT 20 Universal Serial Bus (USB). References 1. Universal Serial Bus Specification, Revision 2.0. This specification is available on the World.
USB 2.0 Spec. Chapter4 Architectural Overview Chapter5 USB Data Flow Model.
Universal Serial Bus - USB Historical Perspective The Universal Serial Bus was originally developed in 1995 by a group of industry.
Microprocessor-based Systems
DEVICES AND COMMUNICATION BUSES FOR DEVICES NETWORK
BR 6/001 Universal Serial Bus Universal Serial Bus is a new synchronous serial protocol for low to medium speed data transmission Full speed signaling.
Input/Output 2 What is I/O? How we get the CPU to communicate with devices From the computer’s point of view, it’s just 1’s and 0’s Gets interpreted.
Computer Maintenance Copyright © Texas Education Agency, All rights reserved. 1 FireWire Ports.
February 10 th 2010 Dehmani Feth-Allah M2 ISTRe Oral Presentation Universal Serial Bus.
Universal Serial Bus By Clint Johnston. 1. What is USB? USB or Universal Serial Bus is specification to establish communication between devices and a.
Data Communications (E&T2760): USB and IEEE USB and IEEE 1394.
Computer communication. Introduction Mechanisms applied in communicating between a computer and another computer or with other devices. Mainly serial.
Team 4 Project 1 Presentation Mapping Parallel Ports to LPT’s & USB Host Controller Interfaces Tom, Jen, Curtis, Ashley, Scott.
L/O/G/O Input Output Chapter 4 CS.216 Computer Architecture and Organization.
Computer Maintenance UNT in partnership with TEA, Copyright ©. All rights reserved1 FireWire Ports.
©F.M. Rietti Communication Lines Fundamentals. ©F.M. Rietti LM-18 Computer Science SSI Embedded Systems I 2 Communication Lines Generally used to connect.
1 Device Controller I/O units typically consist of A mechanical component: the device itself An electronic component: the device controller or adapter.
USB Universal Serial Bus. University of Tehran 2.
Chapter 6 Input/Output Organization
I/O SYSTEMS MANAGEMENT Krishna Kumar Ahirwar ( )
USB PHYISICAL LAYER PROTOCOL ENGINE LAYER APPLICATION LAYER
Computer Hardware By Millie Hay.
Operating Systems (CS 340 D)
USB Universal Serial Bus
C_ITCO011/C_ITCO111 LECTURER: E.DONDO
Universal Serial Bus Specification 1.0
USB- Universal Serial Bus
USB : Universal Serial Bus
Greg Bell Business Development Mgr Industrial & Security Markets
Universal Serial Bus (USB)
Presentation transcript:

USB: UNIVERSAL SERIAL BUS Joe Kaewbaidhoon Alex Motalleb Vishal Joshi Prepared for EECS 373 University of Michigan, Ann Arbor 1

2  What do we use to connect a device to a computer? dellcomputer.jpg drives.ecoustics.com/d/f/USB-3.0

USB  The most widely used hardware interface for connecting peripheral devices to a computer.

History  Developed in the mid 1990’s by Compaq, DEC, IBM, Intel, Microsoft, NEC, Nortel  Purpose:  Reduce cabling  Reduce type of ports  Simplifying software configuration  More efficient transfers, higher data rates  Versions: 1.0, 2.0, and 3.0 4

5  How do we physically connect a device?

Connectors  Single master, up to 127 slaves  Type A (faces upstream)  The connector found on host and hubs  Type B (faces downstream)  The connector found on slave devices  miniA, miniB, and several other types used for smaller devices 6

Pins/wires  4 pins  Ground  V cc : power the devices (5V output from master), note that some devices can draw power from 2 USB ports  2 data lines (D + and D - ) Twisted Pair Differential Transmission: If D + - D - > 200 mV, send ‘1’. If D - - D + > 200 mV, send ‘0’. Polarity switches with speed 7

J-K state 8  Polarity switches with speed  J and K are logical states Hi-speed differential signal Low-speed differential signal J state10 K state01

9  Once connected, how does the hardware communicate?

Protocol Terms  Hub:  Connects slaves to host (master)  Endpoint: a logical entity, found on a device. A USB connection may have up to 32 endpoints (16 for master and 16 for slave) in one connections  Pipes: connection from one endpoint to another 10 vd-rom/cd-rw_slim_external_combo_drive

Endpoint Example 11

Hardware Initialization 12  Hub port has status bits  plugged in, status bit = 1  Idle = 0  Hub automatically updates when something plugs in  Host polls the status bits  If 1, initializes the hardware and software protocol

Powering a Device with V cc  Devices can be powered using the V bus (V cc ) line  Functions divided into three types  Low-power bus powered function May use up to one unit load (100 mA)  High-power bus powered function May use up to 5 unit loads (500 mA) after configuration  Self-powered function May use up to one unit load Rest of the power supplied by external source 13

Transfer Speeds on D + and D -  Low speed = KB/s  Used for Human Interactive devices (ex. keyboard, mouse, etc)  Full speed = 500 KB/s – 10 MB/s  Used for audio and compressed video (ex. Microphone)  High speed = MB/s  Used for video and storage (ex. Digital camera) USB 1.0 USB

Drivers  Once the connector is plugged in, the host detects and interrogates it  Loads appropriate driver based on PID/VID (Product ID/Vendor ID) combination  VID provided by USB Implementer's forum for a fee 15

16  Once connected and synchronized, how is the software going to facilitate communication?

Hierarchy of Data Transfers 17

Hierarchy of Data Transfers 18

Transfers  Control: used for command and status operations  Most common type of transfer  Interrupt: a polling transfer which checks devices for interrupts  Isochronous: continuous, periodic transfers  Generally used for audio or video streaming  Bulk: used for large bursts of data  Example: print-job, scanner image 19

Hierarchy of Data Transfers 20

Stages  Typical stage involves three types of packets  Token: Describes what follows, read/write, address of device, designated endpoint  Data (optional): Carries the payload Low speed – 8 bytes Full speed – 1023 bytes High speed – 1024 bytes  Status: reports whether data/token was received, if endpoint stalled 21

Control Transfer: Setup Stage  Setup Stage: 3 packets – Token, Data0, Ack 22

Control Transfer: Data Stage  Data Stage: IN or OUT depending on direction of transfer 23

Control Transfer: Status Stage  Status Stage: IN or OUT depending on direction of transfer 24

Hierarchy of Data Transfers 25

Packet Types  Token Packets  In: Host requests read  Out: Host requests write  Setup: Used to begin control transfers  Data Packets  Data0  Data1  Handshake Packets  ACK: Successfully received  NAK: Failed to receive (also used during interrupts)  STALL: Host must intervene 26

Hierarchy of Data Transfers 27

Packet Fields  Sync: 8-32 bits used to synchronize host clock with device clock  Packet ID (PID): defines the type of packet being sent  Sent as 8 bits ->  ADDR: specifies which device the packet is being sent to  7 bits for addressing to 127 slaves  Address 0 is invalid 28 shell/usb3.shtml

More Packet Fields  ENDP: defines the target endpoint  4 bits for 16 possible endpoints  Endpoint 0 must exist  CRC: Cyclic Redundancy Checks  5 bits within token  16 bits within data  EOP: End of packet 29

Data Encoding  Uses NRZI (Non Return to Zero Inverted)  Transition -> 0  No transition -> 1 30 Adapted from

Bit Stuffing 31  Bit stuffing after 6 th consecutive ‘1’

Questions? 32

References   