Bus Universel en Série (USB – Universal Serial Bus)

Slides:



Advertisements
Présentations similaires
Module Systèmes d’exploitation
Advertisements

L’électronique numérique
Module 5 : Implémentation de l'impression
Le bus de terrain AS-i Bus AS-i (Actuator Sensor interface ) Fichiers
Serveur jeu Le serveur fait partie d'un logiciel de jeu en ligne multi joueur en architecture client serveur. Il répond à des demandes.
GEF 435 Principes des systèmes d’exploitation
Protocole PPP* *Point-to-Point Protocol.
USB Présentation du protocole Exemple de réalisation hardware
Architecture de réseaux
Suivant CIRCUITS DE PUISSANCE P_B122 1 Centre dintérêt n° 8 : Pilotage, contrôle et comportement dun système pluritechnologique. LIAISON REFERENTIEL :
Cours d’initiation en Informatique
Système d’exploitation : Assembleur
Interface USB Introduction.
ENVIRONNEMENT WINDOWS
Liaison de Données M1/M2 ISV M2 IPS 2006/ Neilze Dorta
Chapitre n°2 : Architecture d'un ordinateur
BUS de TERRAIN CANOPEN.
LA TRANSMISSION DE DONNEES
(Universal Serial Bus)
Le modèle O.S.I..
Gestion des Périphériques
Quels sont les différents modèles ?
NOTE : Pour faire évoluer le diaporama, si le clic de souris ne fait rien utilisez les touches du clavier : Pg up Pg down.
Interface série de type I2C
TRANSMISSION DES DONNEES.
Fonction COMMUNIQUER les liaisons série
LIAISON MODBUS.
Chapitre 4.
NOTE : Pour faire évoluer le diaporama, si le clic de souris ne fait rien utilisez les touches du clavier : Pg up Pg down.
Communications séries synchrones
Architecture d ’un système à MICROPROCESSEUR
LES SYSTEMES AUTOMATISES
PROFIBUS-DP pour le process : zone Ex, Hart©
Périphériques et bus système
Communication Juillet 2014.
Informatique 1. Les applications de l’informatique
TCP – Transmission Control Protocol
République Algérienne Démocratique et Populaire Ministère de l'enseignement supérieur et de herche scientifique Université de Ferhat Abbas -Sétif.
Universal Serial Bus L’USB et sa norme
PLAN 1-Présentation du protocole ICMP: . VIDEO . ICMP
Cours de Réseaux Informatiques
KRIKORIAN Pierre HILMI Brahim
Cours 5 Le modèle de référence.
Les réseaux locaux virtuels : VLAN
détecteurs thermiques
Ordinateur portable: Comment éviter l’échauffement excessif de l’Unité centrale, entraînant le vieillissement prématuré de l’Ordinateur ? 1.En disposant.
Création d'un diaporama sous Open Office
Frédéric Mardon Laurent Martinou Benjamin Thominet Frédéric Mardon Laurent Martinou Benjamin Thominet.
SURVEILLANCE VIDEO SUR RESEAU ETHERNET
La programmation de l’interface FischerTechnik
Exemple de mise en oeuvre
PERI Master ACSI cours Gestion des Périphériques Année (Transparents de F. Dromard)
1. Introduction Le traitement informatisé de données requiert un dialogue, une communication entre l’homme et la machine, et parfois, entre plusieurs.
Système slow-control au LAPP
PERI Master ACSI cours Gestion des Périphériques Année (Transparents de F. Dromard)

Protocole DMX P.G D’après un travail d’élèves de 1ère SIN 2012
UE3-1 RESEAU Introduction
Source : La liaison série RS232 Source : P.G Lycée Vaucanson Grenoble.
Les bases du protocole Modbus
Représentation digitale des données Trois formats de base: 1) Décimale: base 10 (Une constante i.e dimension d ’1 vecteur) 2) Binaire: base 2 ( Mask, set/reset.
USB (Universal Serial Bus)
Description d’une liaison série
Encadrer par Mr Chelly Nizar
GESTION DU BUS Hugo Descoubes - Octobre 2012 Universal Serial Bus.
APPLICATION LAYER Hugo Descoubes - Octobre 2012 Universal Serial Bus.
Les ports de l’ordinateur
INTRODUCTION Hugo Descoubes - Octobre 2012 Universal Serial Bus.
Architecture d’un ordinateur
ARCHITECTURE MATERIELLE D’UN SYSTEME A MICROPROCESSEUR
Transcription de la présentation:

Bus Universel en Série (USB – Universal Serial Bus) 27 / 05 / 2014

La communication USB La communication entre le AT91SAM9G45 et le PC se fait via un port USB. Le port USB est configuré en HID (Human Interface Device) Cette configuration est celle utilisée pour les souris et les claviers USB. Elle est utilisé par certains capteurs USB.

USB Ce port a été introduit dans la dernière moitié de la décennie 1990. Il permet de connecter jusqu’à 127 périphériques. Son architecture est de type maitre/esclave. L’hôte est le maitre. Le standard USB 2.0 existe en 3 vitesses: USB 2.0 LS (low speed  équivalent au USB 1.1 à 1.5 Mbits/s); USB 2.0 FS (fast speed  équivalent au USB 1.1 à 12 Mbits/s); USB 2.0 HS (high speed  480 Mbits/sec); Le USB 3.0 transmet à 5 Gbits/s.

USB – Gestion de l’alimentation Un périphérique peut avoir sa propre alimentation ou peut être alimenté via le port USB. Il faut indiquer ce fait dans la configuration. La tension d’alimentation sur le bus USB est garantie être au dessus de 4.35 V (car on annonce cette tension à 5 V). L’alimentation est la responsabilité de l’hôte. La consommation normale prévue pour le périphérique est de 100 mA. Ce peut être jusqu’à 500 mA, après négociation avec l’hôte. L’hôte est en droit de retirer l’alimentation à un périphérique ayant un comportement anormal.

USB – Transactions Une transaction comporte 3 composants. Jeton : Adresse du périphérique Numéro du point dans le périphérique Type de transfert Données (optionnel): Données à transférer Handshake : Confirmation du transfert

USB – Transactions

Détection du périphérique USB L’équipement qui est l’hôte du réseau est équipé de deux résistances « pull-down » (de 15 kOhms) connectant les broches D+ et D- à la masse. En fait, cette tâche est faite par le concentrateur (hub) de l’hôte. L’élément que l’on connectera au port USB comporte une résistance en « pull-up » (de 1.5 kOhms) entre la broche D+ et l’alimentation à 3.3 volts. (full speed) … une résistance en « pull-up » (de 1.5 kOhms) entre la broche D- et l’alimentation à 3.3 volts. (low speed)

Détection du périphérique USB Lorsque rien n’est branché au port USB de l’hôte, la tension aux broches D+ et D- est à 0 volt. L’état du port est identifié SE0. En branchant un équipement sur le port USB, la broche DP+ est forcée à une tension de 3.3 V et le port passe à l’état « idle ». L’hôte détecte donc ce changement et force le port à faire une remise à 0 de l’équipement en envoyant 0 V sur les broches D+ et D-.

Détection du périphérique USB Ensuite, l’hôte envoie une requête à l’équipement au travers de l’adresse de contrôle défini par défaut (adresse #0), car un nouvel équipement détecté sur le port USB se voit attribuer l’adresse 0. On passe alors à la phase d’énumération.

Énumération La requête de l’hôte lançant l’énumération assigne une adresse au périphérique. En réponse à la requête de l’hôte, l’équipement connecté sur le USB doit répondre par des données décrivant cet équipement à l’hôte. L’hôte fait la lecture des informations de configuration de l’équipement branché. Enfin, il configure et assigne une valeur à cette configuration.

Transactions lors de l’énumération

Configuration du périphérique USB

Description de l’équipement (device descriptor) Le descripteur de l’équipement du périphérique USB donne des informations sur le périphérique telles: Version USB supportée; Taille maximale de paquet; Codes identifiants le constructeur et les produits et le nombre de configurations possibles que peut avoir le périphérique.

Description de l’équipement

Description des configurations (configurations descriptor) Un périphérique USB peut avoir plusieurs configurations différentes. La description des configurations précise: La façon dont l'appareil est alimenté consommation électrique maximale, Le nombre d'interfaces qu'il possède. Note: Une seule configuration à la fois est active.

Description des configurations (configurations descriptor)

Description des interfaces (interfaces descriptor) Un périphérique USB peut avoir plusieurs interfaces différentes, associées chacune à des terminaisons. Un bon exemple: J’ai un périphérique qui rempli 3 fonctions : fax / scanner / imprimante. Interface 1 – les terminaisons de la fonction fax ; Interface 2 – les terminaisons de la fonction scanner; Interface 3 – les terminaisons de la fonction imprimante.

Description des interfaces (interfaces descriptor)

Description des terminaisons (endpoints descriptor) Pour chaque terminaison il faut donner: Son adresse; Si c’est une entrée/sortie; Type de transfert de données; Taille maximale à transmettre par paquet (charge utile); Intervalle de temps pour interroger les terminaison.

Description des terminaisons (endpoints descriptor)

Canaux logiques (terminaisons) Chaque canal logique correspond à un type de transfert. Un canal logique correspond à une terminaison. Le canal 0 est généralement utilisé pour la configuration.

Canaux logiques (terminaisons) Un canal logique peut être une source ou un drain de données. Par exemple, supposons que la police du périphérique envoie des données à l’entrée EP1 du périphérique. Comme la source des données est l’hôte, ces données arriveront à la mémoire tampon EP1 OUT.

Canaux logiques (terminaisons) Le logiciel du périphérique peut alors lire et traiter les données reçues. Toutefois, le périphérique ne peut pas écrire de lui même des données sur le fort USB, car il n’en a pas le contrôle. Il écrit simplement les données dans la mémoire tampon EP1 IN. Ces données attendront que l’hôte envoi une requête de lecture à EPI IN.

Canaux logiques (terminaisons) Un canal logique est donc une interface entre le matériel et le logiciel tournant sur le périphérique. Tous les périphériques doivent prévoir un canal 0, car c’est ce canal qui reçoit les requêtes de commande et d’état durant la phase d’énumération et tout le temps ou le périphérique est branché.

Canaux Logiques (terminaisons)

Transactions Une transaction USB comprend 3 paquets. 1) Un jeton: Adresse du périphérique, adresse du point et type de transfert Envoyé par l’hôte 2) Les données: Envoyé par l’hôte ou le périphérique 3) Le Handshake: Pour avoir la confirmation que le transfert s’est bien passé (ou non) Envoyé par le périphérique

Transactions USB 1) Jeton 0- trame SYNC : Champ de 8 bits sur USB 1 ou 32 bits sur USB 2. Synchronisation de l’horloge du périphérique sur l’horloge de l’hôte. PID : Identification du type de paquet de donnée. 4 bits plus les même 4 bits inversés = 8 bits ADDR : Adresse du périphérique (7 bits) ENDP : Adresse de la terminaison (4 bits) CRC5 : Cycling redundancy check (5 bits) EOP : Fin du paquet

Transactions USB 1) Jeton – types IN : demande de lecture de données du périphérique par l’hôte. PID = 1001 OUT : demande d’écriture de données sur le périphérique par l’hôte. PID = 0001 SETUP : Pour commande ou demande d’état PID = 1101

Transactions USB 2) Données (si nécessaire) SYNC : Champ de 8 bits sur USB 1 ou 32 bits sur USB 2. Synchronisation de l’horloge du périphérique sur l’horloge de l’hôte. PID : Identification du type de paquet de donnée. 4 bits plus les même 4 bits inversés = 8 bits DATA : Données (charge utile) Maximum de 8 octets sur USB low speed Maximum de 1023 octets sur USB high speed Maximum de 1024 octets sur USB very high speed CRC16 : Cycling redundancy check (16 bits) EOP : Fin du paquet

Transactions USB 3) Handshake - trames SYNC : Champ de 8 bits sur USB 1 ou 32 bits sur USB 2. Synchronisation de l’horloge du périphérique sur l’horloge de l’hôte. PID : Identification du type de « handshake ». 4 bits plus les même 4 bits inversés = 8 bits EOP : Fin du paquet

Transactions USB 3) Handshake - types ACK : Confirmation que la donnée à bien été reçue PID = 0010 NAK : Le périphérique n’est pas prêt à recevoir ou envoyer des sonnées PID = 1010 STALL : Le périphérique est bloqué. Une intervention de l’hôte est nécessaire pour le débloquer. PID = 1110

Transactions USB 4) Paquets de début de trame Envoyé tout les 1ms sur un bus pleine vitesse 4) Paquets de début de trame SYNC : Champ de 8 bits sur USB 1 ou 32 bits sur USB 2. Synchronisation de l’horloge du périphérique sur l’horloge de l’hôte. PID : Identification du type de trame. 4 bits plus les même 4 bits inversés = 8 bits FN : Numéro de trame CRC5 : Cycling redundancy check (5 bits) EOP : Fin du paquet

Type de transferts Commande: En masse (Bulk): Pour la configuration, la commande et l’état Bidirectionnel Plusieurs paquets, jusqu’à 64 octets chacun Livraison garantie (renvoi des paquets erronés) En masse (Bulk): Pour le transfert d’un grand nombre de données Unidirectionnel Acheminement garanti (bande passante pas garantie) Périphériques de stockage

Type de transferts Isochrone: Cadence constante, transferts tolérants aux erreurs. Unidirectionnel Un seul paquet, jusqu’à 1024 octets Acheminement non garanti (bande passante garantie et en temps réel) Périphériques audio et vidéo Interruption (pas au sens habituel du terme): Pour envoi et réception de données Un seul paquet, jusqu’à 64 octets Souris et clavier

Installation Requête: Échange de données:

Transfert en bloc (bulk transfert)