Vous êtes sur la page 1sur 10

Universal Serial Bus _________________________________________________2002

Universal Serial Bus

1 CARACTERISTIQUES PHYSIQUES
1.1 Introduction :

Le nouveau Bus de connexion srie, promu par les principaux constructeurs informatiques et diteurs de logiciels (Compaq, DEC, IBM, Intel, Microsoft, NEC, Nortel) et dont les premires spcifications (version 1.0) sont du 15/01/1996, doit permettre le raccordement sur une prise unique de plusieurs quipements divers (imprimante, tlphone, modem, fax, clavier, souris, scanners, crans...). On dsire ainsi viter la multiplication actuelle des connecteurs sur les PC. Ce BUS permet la transmission de donnes, de la voix et de l'image compresse. Cette nouvelle technique se doit d'tre rapide, bidirectionnelle, synchrone, de faible cot et l'attachement d'un nouveau priphrique doit tre dynamique. De plus la tl alimentation des quipements est possible. Une version 2.0 (spcification dites en 1999) permet un dbit jusqu 40 fois plus important afin de raccorder des quipements vhiculant de limage (scanner, camra ...). Consultez www.usb.org

Techniques existantes : 1.2 ADB "Apple Desktop Bus" : 16 appareils , 90 kbit/s. RS485 : 32 appareils, 2 Mbit/s max. IC "Inter Integrated Circuit" (Phillips) : 127 appareils, 100 kbit/s. IEEE P1394 (vido...) : jusqu' 100 Mbit/s. IEE 488 (Hewlett-Packard) : Bus parallle, 15 appareils, 1 Mo/s max., 20m.

Caractristiques gnrales :
HOST Device RootHUB Device

Compound device

Device

HUB

HUB

Figure 1. Icne USB


Device Device Device Device

Figure 2. topologie USB

LESCOP Yves [V2.1]

1/10

Post BTS R2i

Universal Serial Bus _________________________________________________2002

Dbit : jusqu 12 Mbit/s maxi. (option faible cot possible = basse vitesse : 1,5 Mbit/s maxi). Attention : cest le dbit brut (mission plus rception) qui doit tre partag entre tous les appareils connects au BUS. 127 appareils maximum. Topologie : BUS toil via des "HUB", chaque lien est de type point point. Maximum 5 HUB traverss entre le matre (Host) et un esclave (function). Cble : 1 paire (torsade) pour les donnes + 1 paire pour lalimentation (5 v). Connecteur : miniature (1cm), 4 contacts. 2 modles proposs.

Port #1

Port #2

Port #3 Port #4

Upstream Port

HUB
Port #6

Port #7
Figure 3. HUB Typique

Port #5

1.3

Caractristiques mcaniques : 1.3.1 Cble


5 meters max

VBus D+ DGND

... ...

VBus D+ DGND

Figure 4. Cble USB

Longueur maxi = 5 m (3m si 1.5Mbit/s). Temps de propagation maxi = 30 ns ( < 1/2 bit). Diamtre extrieur : 3,4..5,3 mm - couleur = blanc. ! 1 Paire donnes : torsade (6..8 cm) (non torsade tolr si 1.5Mbit/s), 28 AWG mini, isolant polythylne, Zc = 90 15% , attnuation = 38 dB/1000 pieds 10MHz. ! 1 Paire alimentation : non torsade possible, isolant PVC, pour alim. = 5 V, 0.5A max. ! cran : ncessaire si 12Mbit/s ou plus (optionnel si 1.5Mbit/s).

LESCOP Yves [V2.1]

2/10

Post BTS R2i

Universal Serial Bus _________________________________________________2002 1.3.2 Connecteurs Afin de permettre la distribution de lalimentation sans ambigut sur le sens de diffusion, on impose 2 connecteurs. Les cordons dtachables possderont obligatoirement un connecteur A une extrmit et un connecteur B lautre.

Figure 5. Connecteurs

! Connecteur srie A : Destin au raccordement montant vers le Host , lalimentation est sortante sur le rceptacle femelle (chssis). 4 contacts plat (D+ et D- au milieu et plus courts). ! Connecteur srie B : Destin au raccordement descendant du Host sur les priphriques, lorsquil y a un connecteur entrant. Lalimentation est entrante sur le rceptacle. 4 contacts (+v et -data d'un cot, Gnd et +data de l'autre).
Contact Number
1 2 3 4

Color
Red White Green Black

Signal Name
VCC - Data + Data Ground

Comment
Cable power

Cable ground

LESCOP Yves [V2.1]

3/10

Post BTS R2i

Universal Serial Bus _________________________________________________2002 1.4 Caractristiques lectriques : 1.4.1 Etats de D+ et D-

Etat repos : D+=VOH et D-=VOL (inverse si 1,5Mbit/s). Transmission de donnes : D+ inverse de D- (mode diffrentiel). Fin de paquet ("EOP") : D+ = D- = VOL pendant 2 bits. Dconnexion : D+ tend vers VOL car R2 dbranche (D- si 1,5Mbit/s).

R2 D+ D+ R1 DR1 Twisted Pair Shielded 5 Meters max. Z 0=90 15% R1=15K R2=1.5K D-

F.S./L.S. USB Transceiver

F.S. USB Transceiver

Hub Port 0
or

Host or Hub Port

Full Speed Function

Figure 6. Full Speed Connections

R2 D+ D+ R1 DR1 Untwisted, Unshielded 3 Meters max. R1=15K R2=1.5K

F.S./L.S. USB Transceiver

L.S. USB Transceiver

D- Slow Slew Rate Buffers

Host or Hub Port

Low Speed Function


Figure 7. Low Speed Connections

1.4.2

Emetteur sur D+ et DOutput Imped. = 3 (min.) to 15 (max.) 27 Identical CMOS Buffers 27 D(30 to 42 Equiv. Imped.) D+ (30 to 42 Equiv. Imped.)

Data

OE

Figure 8. Exemple de Circuit de sortie

LESCOP Yves [V2.1]

4/10

Post BTS R2i

Universal Serial Bus _________________________________________________2002 Impdance de sortie : 30..42 (cble = 90). Niveau haut : VOH > 2,8V (avec R=15k sur masse) VOHmax=3,6V. Niveau bas : VOL < 0,3V (avec R=1,5k sur +V). Temps de monte/descente : 4..20ns (75..300ns si 1,5Mbit/s). 1.4.3 Rcepteur sur D+ et D-

- Mode diffrentiel (rception de donnes) : Sensibilit > 200mV pour signal entre 0,8v et 2,5v. - Mode commun (D+ ou D- par rapport la masse) : Seuil = niveau TTL (0,8..2V) avec hystrsis conseill. 1.4.4 Alimentation

Port gnrateur = 5V (4.75..5.25V) / 0,5A. Un HUB aliment doit pouvoir fournir 0,5A sur ses ports (pas forcement tous en mme temps). Un HUB tl aliment doit pouvoir fournir 100mA sur ses ports avec une perte maxi de 350mV.

1.5

Codage des donnes :

Code NRZI (Non Return to Zero Inverted) : "0" cod par une inversion et "1" par aucun changement. Pour conserver l'horloge lorsque l'on rencontre une suite de "1", on insre systmatiquement un "0" aprs 6 "1" conscutifs. Data TTL NRZI 0 1 1 0 1 0 0 1 1 1

2 TRANSMISSION SUR LE BUS


Le matre met un paquet SOF toutes les 1ms 0,05% (125s pour la version USB2 Hight speed ). Ce paquet synchronise tous les changes. Durant cet intervalle (trame) plusieurs changes entre le matre et les dispositifs connects peuvent avoir lieu selon les besoins prdtermins par le matre. Le taux de transfert ncessaire pour chaque sens et pour chaque dispositif dtermine la taille maximum de chaque paquet de donnes autoriss. 2.1 Format des Paquets : Les octets sont transmis avec LSB (Less Significant Bit) en tte.

LESCOP Yves [V2.1]

5/10

Post BTS R2i

Universal Serial Bus _________________________________________________2002 Les changes sont composs de petits paquets, il existe 4 types de paquets : jeton, SOF, donnes, contrle. Toutes les paquets commencent par un octet synchro et un octet PID. Le dbut de paquet est marqu par la premire transition D+D- (synchro) et la fin de paquet par l'tat particulier EOP (End Of Packet) : D+=D-=0 pendant 2 bits puis on passe l'tat repos. 2.1.1 Synchronisation En dbut de paquet, on met l'octet $80 gnrant en NRZI 7 transitions (les "0") puis une absence de transition (le "1").
S YN C P A TTE R N N R Z ID at a E ncodi ng

I dl e

PI D 0 PI D1

2.1.2

PID = Packet Identifier Field

Les 4 bits B0..B3 dsignent le type du paquet et les 4 bits B4..B7 sont les complmentaires de B0..B3 respectivement. Type de paquet selon B1-B0 : 00 : Spcial (prambule pour passage en faible vitesse). 01 : paquet jeton (Token). 10 : paquet contrle (Handshake). 11 : paquet donnes (Data).
PID Type
Token

PID Name
OUT

PID[3:0]
b0001

Description
Address + endpoint number in host -> function transaction Address + endpoint number in function -> host transaction Start of frame marker and frame number Address + endpoint number in host -> function transaction for setup to a control endpoint Data packet PID even Data packet PID odd Receiver accepts error free data packet Rx device cannot accept data or Tx device cannot send data Endpoint is stalled Host-issued preamble. Enables downstream bus traffic to low speed devices.

IN

b1001

SOF SETUP

b0101 b1101

Data

DATA0 DATA1

b0011 b1011 b0010 b1010

Handshake

ACK NAK

STALL Special PRE

b1110 b1100

LESCOP Yves [V2.1]

6/10

Post BTS R2i

Universal Serial Bus _________________________________________________2002

2.2

Paquet Jeton (Token) :


8 bits PID 7 bits ADDR 4 bits ENDP 5 bits CRC5

Figure 9. Format du Paquet jeton (Token Format)

Ce paquet comporte : - un champ ADDR (adresse) de 7 bits (0..127) dsignant la source ou le destinataire de la transaction (adresse du dispositif). - un champ ENDP (End point) de 4 bits (0..15) dsignant un sous-canal ventuel. - un CRC sur 5 bits (x5+x2+1).

2.3

Paquet SOF (Start Of Frame) :


8 bits PID 11 bits Frame Number 5 bits CRC5

Figure 10. Format du Paquet SOF (Start Of Frame Packet)

Ce paquet est mis par le matre toutes les 1ms et sert de synchro trame, il comporte : - un champ numro de trame de 11 bits (ventuellement ignor par les rcepteurs). - un CRC sur 5 bits (x5+x2+1).

2.4

Paquet Donnes (Data) :


8 bits PID 0-1023 bytes DATA 16 bits CRC16

Figure 11. Format du Paquet de donnes (Data Format)

Ce paquet comporte : - un champ donnes (0..1023 octets maxi). - un CRC sur 16 bits (x16+x15+x2+1). 2.5 Paquet de contrle (Handshake) :
8 bits PID

Figure 12. Format du Paquet de contrle (Handshake Packet)

LESCOP Yves [V2.1]

7/10

Post BTS R2i

Universal Serial Bus _________________________________________________2002

Ce paquet ne comporte qu'un PID indiquant le l'tat de la transaction : - ACK : Donnes acceptes, - NAK : Donnes refuses (erreur, non disponible...), - STALL : La fonction est indisponible (intervention du matre ncessaire).

3 TRANSFERT DES DONNEES


3.1 Modle :

Un modle en trois couches permet de reprsenter les changes via USB, les couches sont diffrentes chez le matre (Host) de chez les dispositifs connects (Devices). Host Client USB System (USBD+HCD) USB Host controller Physical device Function (interface) USB logical device USB Bus interface

3 - Function 2 - "USB device" 1 - "USB interface"

Couche 3 : Permet d'tablir une relation fonctionnelle unique avec un dispositif (device). Le client du matre (Host) communique via des "pipes" avec les diffrents dispositifs, un n de sous-canal (endpoint) peut tre dfini pour les dispositifs ncessitant plusieurs "pipes". Chaque dispositif possde une adresse unique attribue par le matre lors de son branchement. Couche 2 : Ralise l'toile logique entre le matre et les diffrents dispositifs. Dfinit les oprations USB gnriques (transactions). Couche 1 : Connexion physique vers le BUS arborescent USB.

3.2

Transfert de donnes : Le client initialise chaque canal selon les besoins du dispositif (celui-ci peut les fournir au matre) : maximum de data transmissible par IRP (In/out Request Packet), intervalle maxi (en ms) entre IRP ... Le client met/reoit ses donnes par IRP vers l'USBD (USB Driver), l'tat de l'IRP (tat du buffer...) est retourn au client. USBD vrifie que la demande de bande passante est ralisable et cre alors un canal appropri. Lorsque le canal est dfinit les IRP peuvent transiter. HCD (Host Controller Driver) vrifie que les IRP transitent correctement et que la bande alloue n'est pas dpasse. HCD met les IRP dans une liste de transactions et alerte le client. Le "Host Controller" est responsable de la transmission des transactions sur le BUS, il assure l'accs au Bus et le respect des dlais. Le HC est gnralement matriel (hardware) et il est aussi responsable du dcoupage en trames de 1ms (paquets SOF mis toutes les 1ms).

LESCOP Yves [V2.1]

8/10

Post BTS R2i

Universal Serial Bus _________________________________________________2002 3.3 Transactions :

Une transaction est un change entre le matre et un des dispositif. Elle est obligatoirement d'une dure infrieure 1ms. Une transaction commence toujours par l'mission par le matre d'un paquet Jeton (Token) indiquant l'adresse du dispositif concern et le sens des donnes suivantes. Il existe 4 types de transactions : 3.4 Volume (Bulk) : TOKEN (in/out) du host + Data + ACK/NAK (rponse). Contrle : TOKEN (setup) du host + Data (host) + ACK/NAK (rponse). Interruption : TOKEN (in) du host + Data (device) + ACK (rponse). isochrone : TOKEN (in/out) du host + Data.

Bande passante :

Le dbit brut du Bus USB est de 12Mbit/s (480Mbit/s en USB2), il sera rparti entre tous les dispositifs selon leurs besoins (dbit et sens). L'allocation de bande passante est tablie en dfinissant la taille maximum (en octets) du paquet de donnes transmissible dans une transaction. La trame tant de 1ms, elle peut contenir 1500 octets brut. 10% au moins sont ncessaire au contrle des transferts. Le matre doit calculer la bande passante disponible avant d'ouvrir un nouveau canal. Transferts asynchrones : Pour du transfert de donnes, on pourra disposer par exemple de 19 canaux de 64 octets (512kbit/s) ou 33 de 32 octets (256kbit/s)... ou 71 de 8 (64kbit/s).. ou 107 canaux de 1 octet (8kbit/s). Un mixage de canaux de tailles diffrentes est videmment possible. Pour un BUS 1.5Mbit/s, le maximum est de 8 canaux de 8 octets (64kbit/s). Transferts isochrones : 1 canal de 1023 octets (8Mbit/s) ou 2 de 512 (4Mbit/s) ou 5 de 256 (2Mbit/s) ou 10 de 128 (1Mbit/s), 20 de 64 (512kBit/s) ...150 de 1 octet (8kBit/s). remarque : les canaux sont unidirectionnels !

LESCOP Yves [V2.1]

9/10

Post BTS R2i

Universal Serial Bus _________________________________________________2002

4 USB version 2
Afin de permettre le raccordement dquipements vido ou graphiques, une augmentation du dbit jusqu un facteur de 40 (480 Mbit/s brut) est prvue par la version 2.0 de la norme ( hight speed ). Cette version est compatible avec la version 1.1 prcdente, largement diffuse. Les connecteurs et les cbles ont les mmes formats mais lcran doit tre total et mis la masse. Des HUB la norme 2.0 permettent de raccorder des quipement divers dbits (480Mbit/s, 12Mbit/s, 1.5Mbit/s). Pour permettre le haut dbit, la liaison avec le Host devra aussi tre haut dbit.

LESCOP Yves [V2.1]

10/10

Post BTS R2i