SlideShare a Scribd company logo
USB 2.0 Basics

Vinchip Systems
(a Design and Verification Company)

         Chennai.
Universal Serial Bus
 History of USB
 Why We Need USB ?

 Architectural Overview

 USB communication flow

 Protocol Layer

 Conclusion
History of USB
   Universal Serial Bus (USB) is an industry standard developed in the mid-1990
   USB was designed to standardize the connection of computer peripherals
     Keyboard

     Mouse

     Digital cameras

     Printers

     Portable media players

     HD drives

     Mobile devices

     PDA
Overview
 Key   features of USB:
    Low cost
    Single connector type
    Hot pluggable
    Device handling
    Cable power
USB
Three generations of USB
    USB 1.0
    USB 2.0
    USB 3.0 and WUSB
Version History
   Prereleases
   The USB standard evolved through several versions before its official
    release in 1995:
   USB 0.7: Released in November 1994.
   USB 0.8: Released in December 1994.
   USB 0.9: Released in April 1995.
   USB 0.99: Released in August 1995.
   USB 1.0 Released in January 1996.
   USB 2.0: Released in April 2000
   USB 3.0 was released in November 2008.
Speed Specifications
Why We Need USB ?

   Connection of the PC to the telephone :

           =>In order to transmit data
   Ease-of-use :

           =>Support plug and play
   Port expansion :

          =>Up to 127 devices

           =>Can add lots of device to a XX
   The logical topology of the USB is a star structure
   It is similar to computer network
USB Can Do
   Combines low speed and high speed bus activity , USB enables
    shared access for both speed
   Automatic configuring of devices and a serial bus which is
    simplified and easy to plug into
   Attach / detach easily without restarting system
USB 2.0 Specs
   USB 2.0: Released in April 2000
   maximum signaling rate of 480 Mbit/s
   effective throughput up to 35 MB/s
   Mini-A
   Mini-B Connector
Architectural Overview
 USB System Member - 1
 USB System Member - 2

 USB System Member - 3
USB System Member - 1
   Host : only one
       The smartest element in the USB system
       Responsible to the complexity of the protocol to make
        devices design simple and low cost
       Control the media access ( no one can
       Access the bus unless it get an approval   required
        from the host )
USB System Member - 2
 Hub: one or more
 =>Like the hubs used for computer network
 =>Enables many devices to connect to a single
 USB port
USB System Member - 3
   Device : one or more

    =>Everything in the USB system , which is not a host , is a
    device ( include hubs)

    =>A device may provides one or more USB functions

    =>Has an unique address at the end of the enumeration
    process
Communication Flow
Pipes (1)
   The logic communication between the client software on the
    host and the function on the device is done through pipes
   It is a association between a specific endpoint on the device
    and the appropriate software in the host
Pipes (2)
   An endpoint is the source or destination of the data that
    transmitted on the USB cable
   Two direction
    =>OUT :
       data flows from the host to the device
    =>IN :
       data flows from the device to the host
Signaling On The Bus
   The USB cable is 4 wire cable
   Signal on the bus is done by signaling over tow wires ( D+ and
    D_ )
       1 : D_ low , D+ high
       0 : D_ high , D+ low
   Data encoding and decoding is done using NRZI ( Non Return
    to Zero Inverted )
SIE - Serial Interface Engine


   SIE : Serial Interface Engine
       It is part of both the host’s and the device’s physical layer
       Serialization and Deserialization
       Encoding and Decoding
       Generate (for out) and Verify (for in) CRC
HC -Host Controller
   It is an additional hardware to ensure that everything which is
    transmitted on the bus is correct
   It serves both the USB and the host and has the same
    functionality in ever USB system
Transaction
   USB transactions are done through packets include three
    phases
   Token phase :
       host initiates token indicating the future transfer type

   Data phase :
       Actual data transmitted

   Handshake phase :
       Indicate the success or failure of the transaction
Transfer Types (1)
 Control  Transfer
  =>Used to configure a device (enumeration)
  =>Compose of three phases (setup, data, status)
 Isochronous Transfer

  =>Used for multimedia devices
  =>It is guarantee the required bandwidth
  =>No handshake phase
Transfer Types (2)
 Bulk  Transfer
  =>Used for large burst data
  =>Guarantee of delivery , no guarantee of
     bandwidth or minimum latency
 Interrupt Transfer

  =>If there is a pending interrupt , the function
     will send details to host after host poll it
Packet (1)
 PID   : Packet Identifier Field



 Address   Field



 =>So , there are up to 127 devices in USB
Packet
   Data Packet      Handshake Packet




                      =>Such as ACK 、
                      NAK 、 STALL…etc.
Conclusion
 USB  is powerful and easy to use
 The complex host make the device easy to design
Cable
NRZI (1)
   Want to transmit :
    =>1 : without changing the level of the
           level of the signaling
    =>0 : flip the value of the differential pair
    example :
NRZI (2)
 Problem   :
  When we send “1” stream , the transmission
  line will stay static ( no change period )
 Solution :

  “Bit stuffing” , performed before the NRZI
  example :
  data : 010111111101
  send : 0101111110101

More Related Content

What's hot

Microblaze loader
Microblaze loaderMicroblaze loader
Microblaze loader
Takefumi MIYOSHI
 
LXC入門 - Osc2011 nagoya
LXC入門 - Osc2011 nagoyaLXC入門 - Osc2011 nagoya
LXC入門 - Osc2011 nagoya
Masahide Yamamoto
 
10分で分かるLinuxブロックレイヤ
10分で分かるLinuxブロックレイヤ10分で分かるLinuxブロックレイヤ
10分で分かるLinuxブロックレイヤTakashi Hoshino
 
20111015 勉強会 (PCIe / SR-IOV)
20111015 勉強会 (PCIe / SR-IOV)20111015 勉強会 (PCIe / SR-IOV)
20111015 勉強会 (PCIe / SR-IOV)
Kentaro Ebisawa
 
ACRiウェビナー:小野様ご講演資料
ACRiウェビナー:小野様ご講演資料ACRiウェビナー:小野様ご講演資料
ACRiウェビナー:小野様ご講演資料
直久 住川
 
UEFIによるELFバイナリの起動
UEFIによるELFバイナリの起動UEFIによるELFバイナリの起動
UEFIによるELFバイナリの起動
uchan_nos
 
Project ACRN hypervisor introduction
Project ACRN hypervisor introduction Project ACRN hypervisor introduction
Project ACRN hypervisor introduction
Project ACRN
 
UEFIベアメタルプログラミング
UEFIベアメタルプログラミングUEFIベアメタルプログラミング
UEFIベアメタルプログラミング
Yuma Ohgami
 
Making Linux do Hard Real-time
Making Linux do Hard Real-timeMaking Linux do Hard Real-time
Making Linux do Hard Real-time
National Cheng Kung University
 
Achieving the ultimate performance with KVM
Achieving the ultimate performance with KVM Achieving the ultimate performance with KVM
Achieving the ultimate performance with KVM
ShapeBlue
 
Continguous Memory Allocator in the Linux Kernel
Continguous Memory Allocator in the Linux KernelContinguous Memory Allocator in the Linux Kernel
Continguous Memory Allocator in the Linux Kernel
Kernel TLV
 
Understanding and Measuring I/O Performance
Understanding and Measuring I/O PerformanceUnderstanding and Measuring I/O Performance
Understanding and Measuring I/O Performance
Glenn K. Lockwood
 
The Linux Kernel Scheduler (For Beginners) - SFO17-421
The Linux Kernel Scheduler (For Beginners) - SFO17-421The Linux Kernel Scheduler (For Beginners) - SFO17-421
The Linux Kernel Scheduler (For Beginners) - SFO17-421
Linaro
 
ACRi HLSチャレンジ 高速化テクニック紹介
ACRi HLSチャレンジ 高速化テクニック紹介ACRi HLSチャレンジ 高速化テクニック紹介
ACRi HLSチャレンジ 高速化テクニック紹介
Jun Ando
 
あるコンテキストスイッチの話
あるコンテキストスイッチの話あるコンテキストスイッチの話
あるコンテキストスイッチの話
nullnilaki
 
CXL_説明_公開用.pdf
CXL_説明_公開用.pdfCXL_説明_公開用.pdf
CXL_説明_公開用.pdf
Yasunori Goto
 
BeagleBone Black: Platform Bring-Up with Upstream Components
BeagleBone Black: Platform Bring-Up with Upstream ComponentsBeagleBone Black: Platform Bring-Up with Upstream Components
BeagleBone Black: Platform Bring-Up with Upstream Components
GlobalLogic Ukraine
 
FPGAを用いたEdge AIの現状
FPGAを用いたEdge AIの現状FPGAを用いたEdge AIの現状
FPGAを用いたEdge AIの現状
Yukitaka Takemura
 
AI Platform with Kubernetes and GPU in Private Cloud #GTC21
AI Platform with Kubernetes and GPU in Private Cloud #GTC21AI Platform with Kubernetes and GPU in Private Cloud #GTC21
AI Platform with Kubernetes and GPU in Private Cloud #GTC21
Yahoo!デベロッパーネットワーク
 

What's hot (20)

Microblaze loader
Microblaze loaderMicroblaze loader
Microblaze loader
 
LXC入門 - Osc2011 nagoya
LXC入門 - Osc2011 nagoyaLXC入門 - Osc2011 nagoya
LXC入門 - Osc2011 nagoya
 
10分で分かるLinuxブロックレイヤ
10分で分かるLinuxブロックレイヤ10分で分かるLinuxブロックレイヤ
10分で分かるLinuxブロックレイヤ
 
20111015 勉強会 (PCIe / SR-IOV)
20111015 勉強会 (PCIe / SR-IOV)20111015 勉強会 (PCIe / SR-IOV)
20111015 勉強会 (PCIe / SR-IOV)
 
ACRiウェビナー:小野様ご講演資料
ACRiウェビナー:小野様ご講演資料ACRiウェビナー:小野様ご講演資料
ACRiウェビナー:小野様ご講演資料
 
UEFIによるELFバイナリの起動
UEFIによるELFバイナリの起動UEFIによるELFバイナリの起動
UEFIによるELFバイナリの起動
 
Project ACRN hypervisor introduction
Project ACRN hypervisor introduction Project ACRN hypervisor introduction
Project ACRN hypervisor introduction
 
Gpu vs fpga
Gpu vs fpgaGpu vs fpga
Gpu vs fpga
 
UEFIベアメタルプログラミング
UEFIベアメタルプログラミングUEFIベアメタルプログラミング
UEFIベアメタルプログラミング
 
Making Linux do Hard Real-time
Making Linux do Hard Real-timeMaking Linux do Hard Real-time
Making Linux do Hard Real-time
 
Achieving the ultimate performance with KVM
Achieving the ultimate performance with KVM Achieving the ultimate performance with KVM
Achieving the ultimate performance with KVM
 
Continguous Memory Allocator in the Linux Kernel
Continguous Memory Allocator in the Linux KernelContinguous Memory Allocator in the Linux Kernel
Continguous Memory Allocator in the Linux Kernel
 
Understanding and Measuring I/O Performance
Understanding and Measuring I/O PerformanceUnderstanding and Measuring I/O Performance
Understanding and Measuring I/O Performance
 
The Linux Kernel Scheduler (For Beginners) - SFO17-421
The Linux Kernel Scheduler (For Beginners) - SFO17-421The Linux Kernel Scheduler (For Beginners) - SFO17-421
The Linux Kernel Scheduler (For Beginners) - SFO17-421
 
ACRi HLSチャレンジ 高速化テクニック紹介
ACRi HLSチャレンジ 高速化テクニック紹介ACRi HLSチャレンジ 高速化テクニック紹介
ACRi HLSチャレンジ 高速化テクニック紹介
 
あるコンテキストスイッチの話
あるコンテキストスイッチの話あるコンテキストスイッチの話
あるコンテキストスイッチの話
 
CXL_説明_公開用.pdf
CXL_説明_公開用.pdfCXL_説明_公開用.pdf
CXL_説明_公開用.pdf
 
BeagleBone Black: Platform Bring-Up with Upstream Components
BeagleBone Black: Platform Bring-Up with Upstream ComponentsBeagleBone Black: Platform Bring-Up with Upstream Components
BeagleBone Black: Platform Bring-Up with Upstream Components
 
FPGAを用いたEdge AIの現状
FPGAを用いたEdge AIの現状FPGAを用いたEdge AIの現状
FPGAを用いたEdge AIの現状
 
AI Platform with Kubernetes and GPU in Private Cloud #GTC21
AI Platform with Kubernetes and GPU in Private Cloud #GTC21AI Platform with Kubernetes and GPU in Private Cloud #GTC21
AI Platform with Kubernetes and GPU in Private Cloud #GTC21
 

Similar to USB 2.0

USB 2.0
USB 2.0USB 2.0
Usb
UsbUsb
wireless-usb-207-ipx1bSv.pptx
wireless-usb-207-ipx1bSv.pptxwireless-usb-207-ipx1bSv.pptx
wireless-usb-207-ipx1bSv.pptx
TanmayaKar4
 
Universal Serial Bus (USB)
Universal Serial Bus (USB)Universal Serial Bus (USB)
Universal Serial Bus (USB)
OECLIB Odisha Electronics Control Library
 
Advance of usb
Advance of usb Advance of usb
Advance of usb
PREMAL GAJJAR
 
Usb 72213 76207
Usb 72213 76207Usb 72213 76207
Usb 72213 76207
Muruly Krishan
 
USB presentation by Mishuk
USB presentation by MishukUSB presentation by Mishuk
USB presentation by Mishuk
mks mk
 
U S B
U S BU S B
U S B
bcyramesh
 
USB TO USB Data Transfer without PC
USB TO USB Data Transfer without PCUSB TO USB Data Transfer without PC
USB TO USB Data Transfer without PC
IJERD Editor
 
usb protocol and its various application
usb protocol and its various applicationusb protocol and its various application
usb protocol and its various application
deosaugat144
 
Usb universal serial bus
Usb   universal serial busUsb   universal serial bus
Usb universal serial bus
Dr. Anita Bhandari
 
Labview -USB
Labview -USB Labview -USB
Labview -USB
Jabez Winston
 
Choosing_(and_Implem..
Choosing_(and_Implem..Choosing_(and_Implem..
Choosing_(and_Implem..webhostingguy
 
Universal serial bus
Universal serial busUniversal serial bus
Universal serial bus
Muhammad Muzaffar Khan
 
Cp33551556
Cp33551556Cp33551556
Cp33551556
IJERA Editor
 
Cp33551556
Cp33551556Cp33551556
Cp33551556
IJERA Editor
 
Networking devices
Networking devicesNetworking devices
Networking devices
frestoadi
 

Similar to USB 2.0 (20)

USB 2.0
USB 2.0USB 2.0
USB 2.0
 
Usb
UsbUsb
Usb
 
wireless-usb-207-ipx1bSv.pptx
wireless-usb-207-ipx1bSv.pptxwireless-usb-207-ipx1bSv.pptx
wireless-usb-207-ipx1bSv.pptx
 
Universal Serial Bus (USB)
Universal Serial Bus (USB)Universal Serial Bus (USB)
Universal Serial Bus (USB)
 
Usb Overview
Usb OverviewUsb Overview
Usb Overview
 
Advance of usb
Advance of usb Advance of usb
Advance of usb
 
Usb 72213 76207
Usb 72213 76207Usb 72213 76207
Usb 72213 76207
 
USB BASIC
USB BASICUSB BASIC
USB BASIC
 
USB presentation by Mishuk
USB presentation by MishukUSB presentation by Mishuk
USB presentation by Mishuk
 
U S B
U S BU S B
U S B
 
USB TO USB Data Transfer without PC
USB TO USB Data Transfer without PCUSB TO USB Data Transfer without PC
USB TO USB Data Transfer without PC
 
usb protocol and its various application
usb protocol and its various applicationusb protocol and its various application
usb protocol and its various application
 
Usb universal serial bus
Usb   universal serial busUsb   universal serial bus
Usb universal serial bus
 
Labview -USB
Labview -USB Labview -USB
Labview -USB
 
Choosing_(and_Implem..
Choosing_(and_Implem..Choosing_(and_Implem..
Choosing_(and_Implem..
 
USB 3.0
USB 3.0USB 3.0
USB 3.0
 
Universal serial bus
Universal serial busUniversal serial bus
Universal serial bus
 
Cp33551556
Cp33551556Cp33551556
Cp33551556
 
Cp33551556
Cp33551556Cp33551556
Cp33551556
 
Networking devices
Networking devicesNetworking devices
Networking devices
 

More from Vinchipsytm Vlsitraining

VLSI_ASIC_Training_Summer_Offer
VLSI_ASIC_Training_Summer_OfferVLSI_ASIC_Training_Summer_Offer
VLSI_ASIC_Training_Summer_Offer
Vinchipsytm Vlsitraining
 
Verilog Tasks and functions
Verilog Tasks and functionsVerilog Tasks and functions
Verilog Tasks and functions
Vinchipsytm Vlsitraining
 
Hard ip based SoC design
Hard ip based SoC designHard ip based SoC design
Hard ip based SoC design
Vinchipsytm Vlsitraining
 
Optimizing for low power in embedded mcu designs
Optimizing for low power in embedded mcu designsOptimizing for low power in embedded mcu designs
Optimizing for low power in embedded mcu designs
Vinchipsytm Vlsitraining
 
Coding style for good synthesis
Coding style for good synthesisCoding style for good synthesis
Coding style for good synthesis
Vinchipsytm Vlsitraining
 

More from Vinchipsytm Vlsitraining (12)

VLSI_ASIC_Training_Summer_Offer
VLSI_ASIC_Training_Summer_OfferVLSI_ASIC_Training_Summer_Offer
VLSI_ASIC_Training_Summer_Offer
 
Verilog Tasks and functions
Verilog Tasks and functionsVerilog Tasks and functions
Verilog Tasks and functions
 
Hard ip based SoC design
Hard ip based SoC designHard ip based SoC design
Hard ip based SoC design
 
Optimizing for low power in embedded mcu designs
Optimizing for low power in embedded mcu designsOptimizing for low power in embedded mcu designs
Optimizing for low power in embedded mcu designs
 
Coding style for good synthesis
Coding style for good synthesisCoding style for good synthesis
Coding style for good synthesis
 
system verilog
system verilogsystem verilog
system verilog
 
Chip packaging technology
Chip packaging technologyChip packaging technology
Chip packaging technology
 
SOC design
SOC design SOC design
SOC design
 
Axi
AxiAxi
Axi
 
Usb 2
Usb 2Usb 2
Usb 2
 
Low power vlsi design
Low power vlsi designLow power vlsi design
Low power vlsi design
 
Verification strategies
Verification strategiesVerification strategies
Verification strategies
 

Recently uploaded

UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 

Recently uploaded (20)

UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 

USB 2.0

  • 1. USB 2.0 Basics Vinchip Systems (a Design and Verification Company) Chennai.
  • 2. Universal Serial Bus  History of USB  Why We Need USB ?  Architectural Overview  USB communication flow  Protocol Layer  Conclusion
  • 3. History of USB  Universal Serial Bus (USB) is an industry standard developed in the mid-1990  USB was designed to standardize the connection of computer peripherals  Keyboard  Mouse  Digital cameras  Printers  Portable media players  HD drives  Mobile devices  PDA
  • 4. Overview  Key features of USB:  Low cost  Single connector type  Hot pluggable  Device handling  Cable power
  • 5. USB Three generations of USB  USB 1.0  USB 2.0  USB 3.0 and WUSB
  • 6. Version History  Prereleases  The USB standard evolved through several versions before its official release in 1995:  USB 0.7: Released in November 1994.  USB 0.8: Released in December 1994.  USB 0.9: Released in April 1995.  USB 0.99: Released in August 1995.  USB 1.0 Released in January 1996.  USB 2.0: Released in April 2000  USB 3.0 was released in November 2008.
  • 8. Why We Need USB ?  Connection of the PC to the telephone : =>In order to transmit data  Ease-of-use :   =>Support plug and play  Port expansion : =>Up to 127 devices   =>Can add lots of device to a XX  The logical topology of the USB is a star structure  It is similar to computer network
  • 9. USB Can Do  Combines low speed and high speed bus activity , USB enables shared access for both speed  Automatic configuring of devices and a serial bus which is simplified and easy to plug into  Attach / detach easily without restarting system
  • 10. USB 2.0 Specs  USB 2.0: Released in April 2000  maximum signaling rate of 480 Mbit/s  effective throughput up to 35 MB/s  Mini-A  Mini-B Connector
  • 11. Architectural Overview  USB System Member - 1  USB System Member - 2  USB System Member - 3
  • 12. USB System Member - 1  Host : only one  The smartest element in the USB system  Responsible to the complexity of the protocol to make devices design simple and low cost  Control the media access ( no one can  Access the bus unless it get an approval required from the host )
  • 13. USB System Member - 2  Hub: one or more =>Like the hubs used for computer network =>Enables many devices to connect to a single USB port
  • 14. USB System Member - 3  Device : one or more =>Everything in the USB system , which is not a host , is a device ( include hubs) =>A device may provides one or more USB functions =>Has an unique address at the end of the enumeration process
  • 16. Pipes (1)  The logic communication between the client software on the host and the function on the device is done through pipes  It is a association between a specific endpoint on the device and the appropriate software in the host
  • 17. Pipes (2)  An endpoint is the source or destination of the data that transmitted on the USB cable  Two direction =>OUT : data flows from the host to the device =>IN : data flows from the device to the host
  • 18.
  • 19. Signaling On The Bus  The USB cable is 4 wire cable  Signal on the bus is done by signaling over tow wires ( D+ and D_ )  1 : D_ low , D+ high  0 : D_ high , D+ low  Data encoding and decoding is done using NRZI ( Non Return to Zero Inverted )
  • 20. SIE - Serial Interface Engine  SIE : Serial Interface Engine  It is part of both the host’s and the device’s physical layer  Serialization and Deserialization  Encoding and Decoding  Generate (for out) and Verify (for in) CRC
  • 21. HC -Host Controller  It is an additional hardware to ensure that everything which is transmitted on the bus is correct  It serves both the USB and the host and has the same functionality in ever USB system
  • 22. Transaction  USB transactions are done through packets include three phases  Token phase :  host initiates token indicating the future transfer type  Data phase :  Actual data transmitted  Handshake phase :  Indicate the success or failure of the transaction
  • 23. Transfer Types (1)  Control Transfer =>Used to configure a device (enumeration) =>Compose of three phases (setup, data, status)  Isochronous Transfer =>Used for multimedia devices =>It is guarantee the required bandwidth =>No handshake phase
  • 24. Transfer Types (2)  Bulk Transfer =>Used for large burst data =>Guarantee of delivery , no guarantee of bandwidth or minimum latency  Interrupt Transfer =>If there is a pending interrupt , the function will send details to host after host poll it
  • 25. Packet (1)  PID : Packet Identifier Field  Address Field =>So , there are up to 127 devices in USB
  • 26. Packet  Data Packet  Handshake Packet =>Such as ACK 、 NAK 、 STALL…etc.
  • 27. Conclusion  USB is powerful and easy to use  The complex host make the device easy to design
  • 28. Cable
  • 29. NRZI (1)  Want to transmit : =>1 : without changing the level of the level of the signaling =>0 : flip the value of the differential pair example :
  • 30. NRZI (2)  Problem : When we send “1” stream , the transmission line will stay static ( no change period )  Solution : “Bit stuffing” , performed before the NRZI example : data : 010111111101 send : 0101111110101