Circuits Numériques CHAPITRE 17: Architecture élémentaire des ordinateurs: les entrées-sorties et autres périphériques BRS - N3/U3 - Mars 2005 - Archi E/S 1/16 Objectifs A la fin de ce chapitre, vous devriez être capables: D’expliquer les principes des différents périphériques d’entrée-sortie décrits, sans entrer dans le détail de leur fonctionnement ou de leur programmation BRS - N3/U3 - Mars 2005 - Archi E/S 2/16 Sommaire 1. Vue d’ensemble 2. Les ports d’entrée-sortie 3. Autres périphériques: les compteurs/timers 4. Autres périphériques: la liaison série SPI 5. Glossaire BRS - N3/U3 - Mars 2005 - Archi E/S 3/16 1. Vue d’ensemble Entrées-sorties (E/S ou I/O) et périphériques: ensemble de ressources qui permet d’utiliser le calculateur dans un environnement réel: Stockage de masse: disque dur, clé USB, CD/DVD Liaisons: vers interfaces homme-machine vers capteurs et actionneurs entre calculateurs protocoles: RS232, SPI, USB, Centronics, I2C, CAN, GPIB, etc.... Microprocesseur / Processeur: puissance de calcul mais pas vraiment d’E/S Exemple du Pentium4: virgule flottante sur 128bits, instructions spécialisées multimédia, mémoire cache, pipeline .... Microcontrôleur: moindre puissance de calcul mais nombreuses E/S sur le circuit Exemple du ST7: opérations sur 8bits, interfaces SCI, SPI, I2C, PWM, LCD, DAC, ADC ... Gestion des E/S: soit par scrutation continue sous le contrôle du processeur (Polling), soit par interruptions BRS - N3/U3 - Mars 2005 - Archi E/S 4/16 2. Les ports d’entrée-sortie Vue d’ensemble: Permettent le transfert de données numériques Peuvent être programmés en entrée ou en sortie par groupe de bits ou bit à bit Peuvent être utilisés comme entrée de déclenchement d’interruption Peuvent être associés à des fonctions analogiques (conversion A/N et N/A) Sont contrôlés via 3 registres spécialisés: Data Register (DR) Data Direction Register (DDR) Option Register (OR) entrée analogique sortie numérique entrée numérique BRS - N3/U3 - Mars 2005 - Archi E/S 5/16 2. Les ports d’entrée-sortie Exemple S7Lite: 2 ports d’entrée-sortie PA (8bits) et PB (7bits) Exemples: configurer le bit 6 du port A en sortie push-pull: écrire un 1 dans le bit 6 du registre PADDR = sortie écrire un 1 dans le bit 6 du registre PAOR = push-pull utiliser le port: écrire la donnée à sortir (0/1) dans le bit 6 du registre PADR BRS - N3/U3 - Mars 2005 - Archi E/S 6/16 2. Les ports d’entrée-sortie Les différentes configurations VDD Sortie PUSH-PULL DR VDD DR VDD pull-up éventuel Sortie drain ouvert DR entrée analogique Entrée BRS - N3/U3 - Mars 2005 - Archi E/S 7/16 2. Les ports d’entrée-sortie Exemple S7Lite: entrée sur convertisseur analogique-numérique (port B) configuration entrées résultat (8 ou 10 bits) BRS - N3/U3 - Mars 2005 - Archi E/S 8/16 3. Autres périphériques: les compteurs/timers Vue d’ensemble: Compteurs à fréquence d’horloge sélectionnable Fonctions possibles: rechargement automatique à une valeur particulière (autoreload) capture de la valeur instantanée du compteur par un signal d’entrée (input capture) déclenchement d’une action sur une valeur instantanée particulière du compteur (output compare) Applications: temporisations diverses (utilisation de la fonction "autoreload" ou "output compare") mesure d’intervalles de temps (utilisation de la fonction "input capture") génération de signaux PWM veille de sécurité (fonction "watchdog") BRS - N3/U3 - Mars 2005 - Archi E/S 9/16 3. Autres périphériques: les compteurs/timers Exemple S7Lite: compteur 12 bits avec autoreload, input capture, output compare et PWM génération d’interruptions sur évènement registre de configuration sélection de l’horloge registre de rapport cyclique pour PWM ou output compare génération de PWM BRS - N3/U3 - Mars 2005 - Archi E/S 10/16 3. Autres périphériques: les compteurs/timers La fonction input capture: stocke la valeur courante du compteur à chaque front montant ou descendant de l’entrée extérieure ATIC broche extérieure action résultat courant Par exemple, sur un signal périodique: la différence entre la valeur n et la valeur n+1 correspond à une largeur d’impulsion la différence entre la valeur n et la valeur n+2 correspond à la période du signal BRS - N3/U3 - Mars 2005 - Archi E/S 11/16 3. Autres périphériques: les compteurs/timers La fonction PWM: A fréquence d’horloge donnée: la valeur du registre ATR fixe la fréquence du signal PWM la valeur du registre DCR fixe le rapport cyclique du signal PWM Duty Cycle = rapport cyclique = ton / T ton T La valeur moyenne du signal PWM vaut: t on VPWM avg = VDD ⋅ -------T La valeur moyenne est obtenue par filtrage passe-bas, c’est une sorte de conversion N-A Remarque: l’inertie est assimilable à un filtrage passe-bas BRS - N3/U3 - Mars 2005 - Archi E/S 12/16 3. Autres périphériques: les compteurs/timers La fonction watchdog Utilisé pour détecter une condition d’erreur (interférence extérieure, condition non prévue par le logiciel) qui déroute le programme de sa séquence normale Génération d’une remise à zéro de l’unité centrale à la fin d’une durée Tw programmée à moins d’avoir ré initialisé le circuit RAZ quand T6 passe à 0 activation du watchdog programmation de la durée Nw Exemple S7Lite Nw Tw = 16000 ⋅ --------------f CPU BRS - N3/U3 - Mars 2005 - Archi E/S 13/16 4. Autres périphériques: la liaison série SPI Liaison série, full-duplex, synchrone entre un maître et plusieurs esclaves La transmission est initiée par le maître Une donnée transmise par le maître implique une donnée transmise par l’esclave Le maître fournit l’horloge de synchronisation sélection maître-esclave MISO = Master In Slave Out MOSI = Master Out Slave In BRS - N3/U3 - Mars 2005 - Archi E/S 14/16 4. Autres périphériques: la liaison série SPI Exemple S7Lite: contrôleur SPI interruption SPI registres de configuration Registre de données programmation de la vitesse de transmission BRS - N3/U3 - Mars 2005 - Archi E/S 15/16 5. Glossaire SPI (Serial Peripheral Interface): interface et protocole de liaison série développés par Motorola SCI (Serial Communication Interface) I2C (Inter Circuit Communication): protocole série développé par Philips pour les liaisons basse vitesse entre circuits intégrés sur une même carte CAN (Controller Area Network): protocole série asynchrone multi-maître développé à l’origine pour les applications automobiles PWM (Pulse Width Modulation): modulation de largeur d’impulsion LCD (Liquid Crystal Display): afficheur à cristaux liquides USB (Universal Serial Bus) GPIB / IEE488: protocole de liaison parallèle développé à l’origine par Hewlett-Packard principalement utilisé pour les appareils de mesure Centronics: port parallèle développé à l’origine pour les imprimantes, tend à devenir obsolète RS232: liaison série d’usage général, maintenant obsolète DAC (Digital to Analog Converter): convertisseur numérique/analogique (CNA) ADC (Analog to Digital Converter): convertisseur analogique/numérique (CAN) BRS - N3/U3 - Mars 2005 - Archi E/S 16/16