Universal Serial Bus

Un article de Wikipédia, l'encyclopédie libre.
(Redirigé depuis USB)
Aller à : navigation, rechercher
Page d'aide sur l'homonymie Pour les articles homonymes, voir USB (homonymie).
Connecteur USB de type A mâle.
Symbole de l'USB

Le Universal Serial Bus (USB, en français Bus universel en série, dont le sigle, inusité, est BUS) est une norme relative à un bus informatique en transmission série qui sert à connecter des périphériques informatiques à un ordinateur. Le bus USB permet de connecter des périphériques à chaud (quand l'ordinateur est en marche) et en bénéficiant du Plug and Play (le système reconnaît automatiquement le périphérique). Il peut alimenter les périphériques peu gourmands en énergie (disques SSD en particulier). Apparu en 1996, ce connecteur s'est généralisé dans les années 2000 pour connecter souris, clavier d'ordinateur, imprimantes, clés USB et autres périphériques bon marché sur les ordinateurs personnels.

L'USB s'est depuis déclinée en version 2 (0,48 Gb/s) et version 3 (5 Gb/s) puis en août 2013 est annoncé le standard 3.1[1] à 10 Gb/s.

Le terme clé USB désigne un petit média amovible qui se branche sur le port USB d'un ordinateur, et comportant généralement une mémoire de masse.

Historique[modifier | modifier le code]

L’USB a été conçu au milieu des années 1990 afin de remplacer les nombreux ports externes d’ordinateurs lents et incompatibles. Différentes versions de la norme ont été développées au fur et à mesure des avancées technologiques.

  • En 1996, la première version de la norme, l'USB 1.0, est spécifiée par sept partenaires industriels (Compaq, DEC, IBM, Intel, Microsoft, NEC et Northern Telecom).
  • En 1998, la version USB 1.1 apporte des corrections et deux vitesses de communications : 1,5 Mbit/s (faible vitesse, ou Low Speed), et 12 Mbit/s (soit 1,5 Mo/s) (pleine vitesse ou Full Speed). En août 1998, Apple est le premier[2] constructeur à uniquement proposer les ports USB (en remplacement des ports d'ancienne génération), avec la sortie de l'iMac G3, ce qui a fait décoller[2] le marché des périphériques USB.
  • En 2000, la version USB 2.0 ajoute des communications à 480 Mbit/s (haute vitesse ou High Speed) (soit 60 Mo/s).
  • En 2005, le Wireless USB, une version sans-fil de l'USB, est spécifiée par le Wireless USB Promoter Group. Elle promet 480 Mbit/s à une distance de 3 m et 110 Mbit/s à 10 m[3].
  • En 2008, l'USB 3.0 transmet à 5 Gbit/s[4] (soit 600 Mo/s) (vitesse supérieure ou SuperSpeed) et 4,5 Watts. Les nouveaux périphériques disposent de connexions à 6 contacts au lieu de 4, mais la compatibilité ascendante des prises et câbles avec les versions précédentes est assurée. La compatibilité descendante est impossible, les câbles USB 3.0 de type B n'étant pas compatibles avec les prises USB 1.1/2.0[5], mais il existe des adaptateurs.
  • Début 2010 introduction de l'USB 3 dans des produits grand public. Les prises femelles correspondantes sont signalées par une couleur bleue. Apparition aussi des prises femelles USB rouges, signalant une puissance électrique disponible supérieure, et appropriée au chargement rapide de petits appareils y compris (à condition de le paramétrer dans le BIOS ou l'EFI) lorsque l'ordinateur est éteint.
  • Août 2013, l’USB 3.1 est officialisé et promet des débits doubles de ceux de l'USB 3.0, soit 10 Gbits/s (1,2 Go/s). Le nouveau standard (câbles, interface) sera rétro compatible avec l’USB 3.0 et l'USB 2.0[6]. Toutefois la connectique change, elle sera plus fine et n'imposera pas de sens de branchement. Pour tout de même permettre la connexion vers des connecteurs USB 2.0 et 3.0, le standard devra prendre en compte la possibilité d'avoir des adaptateurs passifs (à l'inverse des adaptateurs Lightning, le connecteur réversible qu'Apple a lancé avec l'iPhone 5 en 2012), pour garder une taille réduite et un coût de fabrication mesuré[7]. Cette nouvelle connectique se nommera Type C[8].
Version USB 1.0 USB 1.1 USB 2.0 Wireless USB USB 3.0 USB 3.1
Année 1996 1998 2000 2005 2008 2013
Débit 1,5 Mbit/s soit 0,19 Mo/s 12 Mbit/s soit 1,5 Mo/s 480 Mbit/s soit 60 Mo/s 480 Mbit/s soit 60 Mo/s 5 Gbit/s soit 600 Mo/s 10 Gbit/s soit 1,2 Go/s

Marché concerné[modifier | modifier le code]

USB a supplanté divers bus qui équipaient auparavant les ordinateurs : port série RS-232, port parallèle, port PS/2, port joystick (ou port MIDI), port SCSI, et même des bus internes comme PCI pour la connexion de certains dispositifs (par exemple cartes son ou cartes de réception TV).

Même si la gamme des périphériques disponibles pour le bus USB est extrêmement vaste, on retrouve les classes d'applications suivantes :

Le bus USB peut alimenter en énergie les périphériques, dans une certaine limite de courant consommé (2 A pour une application haute puissance, 100 mA pour une application normale[9]). Ceci est notamment mis à profit pour permettre la recharge d'appareils portables, pour lesquels on voit apparaître des adaptateurs secteur disposant d'une connectique USB limitée à l'alimentation électrique. La connectique USB a donc une diffusion au-delà des périphériques informatiques stricto sensu comme connecteur électrique de faible puissance. Par exemple, un certain nombre de gadgets alimentés sur port USB qui ne sont pas des périphériques informatiques sont apparus sur le marché : lampes d'appoint, petits ventilateurs, etc. Pour les périphériques qui demandent plus de courant que ce que peut fournir un port USB, par exemple certains disques durs externes, on utilise un deuxième port USB pour compléter l'alimentation ou bien un bloc d'alimentation branché sur le secteur.

Le bus USB est utilisé en interne dans certains ordinateurs pour connecter des périphériques tels que webcams, récepteurs infrarouges[N 1] ou lecteurs de cartes mémoire.

Spécifications techniques[modifier | modifier le code]

Caractéristiques générales[modifier | modifier le code]

L’Universal Serial Bus est une connexion à haute vitesse qui permet de connecter des périphériques externes à un ordinateur (hôte dans la terminologie USB). Il permet le branchement simultané de 127 périphériques par contrôleur (hôte). Le bus autorise les branchements et débranchements à chaud (« Hot-Plug », sans avoir besoin de redémarrer l’ordinateur) et fournit l’alimentation électrique des périphériques sous 5 V, dans la limite de 0,5 A, soit 2,5 W.

D'un point de vue logiciel, le bus possède une topologie arborescente (dite également en étoile) : les feuilles de cet arbre sont les périphériques ; les nœuds internes sont des hubs qui permettent de greffer des sous-arborescences dans l'arborescence principale. On trouve dans le commerce ces hubs sous forme de petits boîtiers alimentés soit sur le bus, soit sur le secteur, et qui s'utilisent comme des multiprises. Certains périphériques intègrent également un hub (moniteurs, claviers…). Cependant, tout bus USB possède au moins un hub situé sur le contrôleur : le hub racine, qui peut gérer les prises USB de l'ordinateur. Le nombre de hubs connectés en cascade est limité : hub racine compris, il ne doit pas exister plus de 7 couches dans l'arborescence[10].

À plus bas niveau, il s'agit d'un anneau à jeton (ou Token Ring) : chaque nœud dispose successivement du bus. Il n'y a pas de collision de paquets comme en Ethernet, mais le nombre maximal de nœuds est prédéfini. Pour cette raison, l'USB n'est pas adapté aux communications réseau : l'apparition des "modems" ADSL USB était un moyen de diffuser l'ADSL à une époque où la plupart des PC bas de gamme disposaient du port USB mais pas d'Ethernet[réf. nécessaire].

La version 1.x du bus peut communiquer dans deux modes : lent (1,5 Mbit/s) ou rapide (12 Mbit/s, soit 1,5 Mo/s) :

  • le mode lent (« Low Speed ») permet de connecter des périphériques qui ont besoin de transférer peu de données, comme les claviers et souris ;
  • le mode rapide (« Full Speed ») est utilisé pour connecter des imprimantes, scanners, disques durs, graveurs de CD et autres périphériques ayant besoin de plus de rapidité. Néanmoins il est insuffisant pour beaucoup de périphériques de stockage de masse (ce mode permet la vitesse « 10 X » des CD).

USB 2.0 introduit un troisième mode permettant de communiquer à 480 Mbit/s. Ce mode est appelé « High Speed ». Il est utilisé par les périphériques rapides : disques durs, graveurs… Mais en 2009, la plupart des périphériques ont une vitesse inférieure à ce que permet l'USB 2.0.

La dernière version, l’USB 3.0, comporte un quatrième mode (« Super Speed ») permettant de communiquer à 5 Gbit/s. Ce nouveau mode utilisant un codage des données de type 8b/10b, la vitesse de transfert effective des données est de seulement 4 Gbit/s (500 Mo/s).

Lorsque l’on parle d’un équipement USB, il est nécessaire de préciser la version de la norme (1.1, 2.0 ou 3.0) mais également la vitesse (Low, Full ou High Speed). Une clef USB spécifiée en USB 2.0 n’est pas forcément High Speed si cela n’est pas précisé par un logo « High Speed ».

Le bus USB reste plus lent que des interfaces internes comme PCI ou AGP ou SATA /e-Sata (dans sa version 1.x et 2.0).

Connectique et caractéristiques électriques[modifier | modifier le code]

Différents connecteurs de type USB 1 et 2, de gauche à droite :
• micro B mâle,
• UC-E6 propriétaire (non USB),
• mini B mâle 5 pin,
• A femelle,
• A mâle
• B mâle.
Différents types de prises USB 1 et 2.
Prises USB de type A et B, vue de face. USB 1 et 2.
Prise Micro-B USB 3.
Description prise Micro-B USB 3
• 1 : alimentation (VBUS)
• 2 : USB 2.0 paire différentielle (D−)
• 3 : USB 2.0 paire différentielle (D+)
• 4 : USB OTG ID pour identifier les lignes
• 5 : masse
• 6 : USB 3.0 ligne de transmission du signal (−)
• 7 : USB 3.0 ligne de transmission du signal (+)
• 8 : masse
• 9 : USB 3.0 ligne de réception du signal (−)
• 10 : USB 3.0 ligne de réception du signal (+)

L’architecture USB a pour caractéristique de fournir aussi l’alimentation électrique aux périphériques en utilisant pour cela un câble composé de quatre fils pour les USB 1 et 2 (la masse GND, l’alimentation VBUS et deux fils de données appelés D- et D+) et de 6 fils pour l'USB 3 (séparation des données IN/OUT). Les fils D+ et D- forment une paire torsadée et utilisent le principe de la transmission différentielle afin de garantir une certaine immunité aux bruits parasites de l’environnement physique du périphérique ou de son câble.

De base, le bus USB ne permet pas de relier entre eux deux périphériques ou deux hôtes : le seul schéma de connexion autorisé est un périphérique sur un hôte. Pour éviter des branchements incorrects, la norme spécifie deux types de connecteurs : le type A, destiné à être situé sur l'hôte, et le type B, destiné à être situé sur le périphérique. Un hub peut comporter à la fois un connecteur B, qui permet de le relier à l'hôte, et des connecteurs A, qui permettent d'y relier des périphériques. Les appareils (hôte et périphériques) sont équipés de connecteurs femelles. Les câbles de connexion ont toujours une extrémité de type A mâle, et une extrémité de type B mâle, ce qui garantit le respect de la topologie du bus. Il peut aussi exister des câbles de prolongation équipés de connecteurs de même type mais de genres différents.

Au départ il existait donc quatre connecteurs, pour deux types et deux genres. Par la suite, devant le développement d'appareils compacts, une version miniature du connecteur B a été spécifiée. Elle est fonctionnellement équivalente au connecteur B, mais de dimensions nettement réduites.

La version deux de la norme a introduit connecteur mini-AB, utilisé dans le cadre de l'extension « On-The-Go », qui permet à certains appareils compatibles de jouer selon les cas, soit le rôle d'hôte, soit le rôle de périphérique.

Le brochage des connecteurs est le suivant :

Fonction Couleur Numéro de broche pour
les types A et B
Numéro de broche pour
le type mini B
Alimentation +5 V (VBUS) Rouge 1 1
Données (D-) Blanc 2 2
Données (D+) Vert 3 3
Masse (GND) Noir 4 5[11]

Protocole[modifier | modifier le code]

La bande passante est partagée temporellement entre tous les périphériques connectés. Le temps est subdivisé en trames (frames) ou microtrames (microframes) pendant lesquels plusieurs transferts peuvent avoir lieu.

La communication entre l’hôte (l’ordinateur) et les périphériques se fait selon un protocole basé sur l'interrogation successive de chaque périphérique par l'ordinateur. Lorsque l’hôte désire communiquer avec un périphérique, il émet un jeton (un paquet de données, contenant l’adresse du périphérique, codée sur sept bits) désignant un périphérique. Si le périphérique reconnait son adresse dans le jeton, il envoie un paquet de données (de 8 à 255 octets) en réponse. Les données ainsi échangées sont codées selon le codage NRZI. Puisque l’adresse est codée sur 7 bits, 128 périphériques (27) peuvent être connectés simultanément à un port de ce type. Il convient en réalité de ramener ce chiffre à 127 car l’adresse 0 est une adresse réservée.

USB définit quatre types de transferts :

  • transfert de commande, utilisé pour l'énumération et la configuration des périphériques. Il convient pour des données de taille restreinte ; il y a garantie de livraison (renvoi des paquets erronés) ;
  • transfert d’interruption, utilisé pour fournir des informations de petite taille avec une latence faible. Ce ne sont pas des interruptions au sens informatique du terme : le périphérique doit attendre que l’hôte l’interroge avant de pouvoir effectuer un tel transfert. Ce type de transfert est notamment utilisé par les claviers et les souris ;
  • transfert isochrone, utilisé pour effectuer des transferts volumineux (bande passante garantie), et en temps réel. Il n'y a pas de garantie sur l'acheminement des données. Ce type de transfert est utilisé pour les flux audio et vidéo ;
  • transfert en masse (bulk), utilisé pour transférer des informations volumineuses, avec garantie d'acheminement, mais sans garantie de bande passante. Ce type de transfert est utilisé par les dispositifs de stockage.

Il est possible de structurer la communication entre un hôte et un périphérique en plusieurs canaux logiques (pipes et endpoints) pour simplifier la commande du périphérique du port USB.

Connexion à chaud et Plug and Play : processus d'énumération[modifier | modifier le code]

Les ports USB supportent la connexion à chaud et la reconnaissance automatique des dispositifs (Plug and Play). Ainsi, les périphériques peuvent être branchés sans éteindre l’ordinateur.

Lors de la connexion du périphérique à l’hôte, ce dernier détecte l’ajout du nouvel élément grâce au changement de la tension entre les fils D+ et D-. À ce moment, l’ordinateur envoie un signal d’initialisation au périphérique pendant 10 ms, puis lui fournit du courant grâce aux fils GND et VBUS (jusqu’à 100 mA). Le périphérique est alors alimenté en courant électrique et peut utiliser temporairement l’adresse par défaut (l’adresse 0). L’étape suivante consiste à lui fournir son adresse définitive et à obtenir sa description : c’est la procédure d’énumération.

En effet, après avoir reçu son adresse, le périphérique transmet à l'hôte une liste de caractéristiques qui permettent à ce dernier de l'identifier (type, constructeur, nom, version). L’hôte, disposant de toutes les caractéristiques nécessaires est alors en mesure de charger le pilote approprié.

Les périphériques sont regroupés en types ou classes dans la terminologie USB. Tous les dispositifs d'une classe donnée reconnaissent le même protocole normalisé. Il existe par exemple une classe pour les périphériques de stockage de masse (mass storage class, MSC), implémentée par la quasi-totalité des clés USB, disques durs externes, appareils photo et par certains baladeurs. La plupart des systèmes d’exploitation possèdent des pilotes génériques, pour chaque type de périphérique. Ces pilotes génériques donnent accès aux fonctions de base, mais des fonctions avancées peuvent manquer.

Norme « On-The-Go » (OTG)[modifier | modifier le code]

Article détaillé : USB On-The-Go.

L'extension On-The-Go (OTG), ajoutée à la norme USB 2.0, permet d'effectuer des échanges de données point à point entre deux périphériques sans avoir à passer par un hôte (généralement un ordinateur personnel). La norme OTG, entrée en vigueur en 2007, s'impose désormais comme un standard.

Un périphérique OTG peut se connecter à:

  • un autre périphérique OTG;
  • un périphérique non OTG;
  • un hôte.

Dans le cas d’une connexion OTG-OTG, c’est la position du connecteur du câble sur la prise mini AB, à chaque extrémité, qui va permettre de déclarer lequel des deux périphériques OTG va être l’hôte. Ensuite, il peut se produire un renversement des rôles suite à une étape de négociation entre les deux systèmes OTG (protocole HNP)[12].

Quelques exemples d'application de cette technologie:

  • la connexion directe d’un appareil photo avec une imprimante
  • la connexion d’un mobile avec un lecteur MP3

Alimentation[modifier | modifier le code]

USB Battery Charging 1.0 à 1.2[modifier | modifier le code]

USB Power Delivery[modifier | modifier le code]

USB Power Delivery permet de délivrer jusqu'à 100 W de puissance sur une tension maximale de 20 V au travers de l'USB, tout en maintenant la communication. L'alimentation électrique est désormais bidirectionnelle, elle peut se faire dans les deux sens.

Lors de la connexion, les deux périphériques négocient la puissance à délivrer par l'intermédiaire de contrôleurs spécifiques et chaque port USB pourra ainsi indiquer les tensions et intensités qu'il supporte.

La norme prévoit 5 profils :

  • Profil 1 : 5V / 2A → 10W
  • Profil 2 : 5V / 2A et 12V / 1.5A → 18W
  • Profil 3 : 5V / 2A et 12V / 3A → 36W
  • Profil 4 : 5V / 2A et 12V ou 20V / 3A → 60W
  • Profil 5 : 5V / 2A et 12V ou 20V / 5A → 100W

Notes et références[modifier | modifier le code]

Notes[modifier | modifier le code]

  1. La webcam et le récepteur infrarouge des MacBook Pro sont connectés sur le bus USB en interne.

Références[modifier | modifier le code]

  1. USB 3.1 officialisé: Le haut débit à 10 Gb/seconde, sur le site zone-numerique.com
  2. a et b IBM - The ins and outs of USB, voir le paragraphe "Enter the iMac."
  3. (en) Wireless USB from the USB-IF, sur le site usb.org
  4. (en) SuperSpeed USB from the USB-IF, sur le site usb.org
  5. (en) Jamais les deux ne se rencontreront, sur le site tomshardware.com
  6. USB 3.1 officialisé: Le haut débit à 10 Gb/seconde, sur le site zone-numerique.com
  7. http://www.pcinpact.com/news/84729-lusb-3-1-proposera-nouveau-connecteur-totalement-reversible.htm
  8. L'USB 3.1 devrait venir avec un nouveau format réversible , sur le site lesnumeriques.com
  9. (en) USB 2.0 Specification, 7.3.2 Bus Timing/Electrical Characteristics, table 7.7
  10. (en) Universal Serial Bus Specification, révision 2.0, 27 avril 2000, chapitre 4, Architectural Overview.
  11. (en) By default, a Mini-b cable is presumed to have 5 pins., sur le site cablestogo.com
  12. (en) FAQ l'USB - Question 53, sur le site microchip.com

Annexes[modifier | modifier le code]

Sur les autres projets Wikimedia :

Articles connexes[modifier | modifier le code]

Liens externes[modifier | modifier le code]