La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Architecture des ordinateurs cours 5 Les entrées/sorties et les bus

Présentations similaires


Présentation au sujet: "Architecture des ordinateurs cours 5 Les entrées/sorties et les bus"— Transcription de la présentation:

1 Architecture des ordinateurs cours 5 Les entrées/sorties et les bus
Agata Savary, IUT de Blois, Département GTR, 1e année,

2 Entrées Sorties clavier keyboard écran screen souris mouse
imprimante printer scanner scanner haut parleurs joystick graveur CD-R appareil photo numérique carte réseau network card modem A. SAVARY IUT Blois GTR1, 2004/05

3 Moniteur graphique Dans un tube à vide, un canon électronique envoie un faisceau d’électrons vers un écran luminescent (le moniteurs couleurs ont trois canons à électrons, un pour chaque couleur primaire). Lorsque les électrons frappent l’écran un point lumineu apparaît. Le faisceau balaye l’écran ligne par ligne fois par seconde. L’image sur l’écran correspond à une matrice (appelée bitmap) d’éléments graphiques (pixels) de taille entre 512  340 et 1560  1280. Une couleur est représentée par une combinaison de 3 couleurs de base (rouge, vert, bleu) à intensité variable. Un ensemble de bits représente la couleur d’un pixel ; sa taille (8, 16 ou 24 bits) définit le nombre de couleurs disponibles (e.g. 8 bits = 256 couleurs différentes) A. SAVARY IUT Blois GTR1, 2004/05

4 Souris Une boule en caoutchouc entre en contact avec une paire de roues : l’une représente l’axe horizontal, l’autre l’axe vertical. Chacune des 2 roues fait tourner une roue dentée, à travers laquelle une diode électroluminescente illumine un dispositif photosensible. Mouvement de la souris  rotation des roues  incrémentation ou décrémentation des compteurs qui déterminent la position du curseur sur l’écran A. SAVARY IUT Blois GTR1, 2004/05

5 Papier blanc Papier imprimé Rouleaux chauffants Toner Faisceau laser Laser Sortie papier Nettoyage Surface du tambour chargée électiquement Miroir octogonal rotatif Tambour Imprimante laser Le tambour, chargé électriquement devient photosensible Il est balayé ligne par ligne par un rayon de laser dirigé à l’aide d’un miroir rotatif. Un point du tambour touché par le rayon perd sa charge électrique. Chaque ligne touche ensuite au reservoir de poudre électrostatique d’encre (toner). La poudre se dépose sur les points qui ont perdu leur charge électrique. Une ligne d’image en encre est ainsi formée. Le tambour est pressé contre une feuille de papier et y dépose l’encre. La feuille est chauffée pour rendre l’impression permanente. Le tambour en quittant la feuille est déchargé électriquement et nettoyé des restes de toner avant de recommencer la même série d’actions. A. SAVARY IUT Blois GTR1, 2004/05

6 Contrôleurs des disques et périphériques
A. SAVARY IUT Blois GTR1, 2004/05

7 Structure d’un ordinateur simple
Moniteur Clavier Processeur Disque souple Disque dur Mémoire Contrôleur video de clavier de disque dur Bus Contrôleur de périphérique = circuit intégré spécialisé qui pilote le fonctionnement du périphérique, son accès au bus et sa communication avec le système A. SAVARY IUT Blois GTR1, 2004/05

8 Contrôleur de disque controller
Contrôleur de disque = circuit intégré spécialisé qui pilote le fonctionnement du disque Peut contenir un véritable processeur Reçoit et effectue les ordres de l’unité centrale (READ, WRITE, FORMAT,…) Traduits ces ordres en des tâches comme : Positionnement du bras Détection et correction d’erreurs Conversion d’octets reçus en parallèle en un flot de bits en série (lors de l’écriture) et inversement (lors de la lecture) Gestion de secteurs défectueux Gestion de buffeurs qui stockent les données lues en avance Etc. A. SAVARY IUT Blois GTR1, 2004/05

9 Signaux vidéo analogiques
Carte vidéo Moniteur Processeur Mémoire Contrôleur video RAM vidéo Carte vidéo Bus Signaux vidéo analogiques La carte vidéo contient une mémoire vidéo pour sauvegarder le bitmap. Le contrôleur d’écran lit constamment la mémoire vidéo et génère les signaux analogiques correspondants au bitmap pour guider le faisceau d’électrons Si le processeur veut afficher une image sur l’écran il envoie son bitmap dans la mémoire vidéo. La taille élevée d’un bitmap (e.g. 2 Mo pour une image, repétés fois/sec pour une animation) nécessite un bus performant (e.g. PCI). A. SAVARY IUT Blois GTR1, 2004/05

10 Contrôleur d’imprimante
Le contrôleur d’imprimante contient une mémoire de quelques Mo pour stocker les pages à imprimer. Une image est transmise au contrôleur soit sous forme d’un bitmap, soit sous forme d’un programme écrit en un langage de description de page comme PCL (Hewlett Packard) ou PostScript (Adobe) ; ce programme est interpreté par le contrôleur en des instructions qui précisent où l’imprimante doit placer des points sur une feuille Un langage de description de pages permet l’emploi des polices vectorisées qui décrivent la forme des lettres par des formules mathématiques (intervalle d’une longueur donnée, angle d’un grade donné, fraction d’un cercle d’un diamètre donné, etc.). Grâce à cette description mathématique l’agrandissement et la reduction d’une image donnent des images exactement proportionnelles (ceci n’est pas le cas pour les bitmaps) la description est plus compacte qu’un bitmap A. SAVARY IUT Blois GTR1, 2004/05

11 Polices vectorisées (vectorielles)
Agrandissement d’une police bitmap revient à l’agrandissement des pixels How computer works, p. 260 Dans une police vectorielle le contour est décrit par un ensemble de courbes définies mathématiquement Agrandissement d’une police vectorielle donne une image parfaitement proportionnelle à celle d’origine A. SAVARY IUT Blois GTR1, 2004/05

12 Accès aux entrées/sorties en dehors du système d ’exploitation - le BIOS
Le BIOS (Basic Input/Output System) est un ensemble de fonctionnalités basiques permettant d’accéder aux périphériques sans recours au système d’exploitation. Il est habituellement contenu dans une mémoire ROM (récemment aussi du type Flash) pour des raisons de fiabilité. Lorsqu’on allume un ordinateur, le premier programme lancé est le BIOS. Il lance les contrôleurs des périphériques vérifie si toutes les cases de la mémoire vive sont opérationnelles il charge la partie initialle du système d’exploitation (boot) du disque en mémoire vive Le BIOS est attaché à une architecture matérielle particulière. On met à jour le SE sans modifier le BIOS. A. SAVARY IUT Blois GTR1, 2004/05

13 Gestion des entrées/sorties (couche du système d’exploitation)
A. SAVARY IUT Blois GTR1, 2004/05

14 Entrées/sorties - pilotes
driver Système d’exploitation Pilote de disque dur (composant logiciel) Pilote d’imprimante Pilote d’écran controller Contrôleur de disque (composant électronique) Un pilote du périphérique est une partie du SE responsable de la communication avec le contrôleur du périphérique Chaque fabricant d’un périphérique doit fournir le pilote pour chacun des SE auxquels ce périphérique est destiné Disque (composant mécanique) Lecteur de disque A. SAVARY IUT Blois GTR1, 2004/05

15 Entrées/sorties - registres et tampons
Le processeur est le premier responsable de la communication avec les périphériques. Cette communications se fait par biais de deux types d’objets : registres de contrôle : le processeur y met les commandes déstinées au contrôleur (e.g. lire) ; le contrôleur y met les informations sur son état (e.g. prêt à accepter une nouvelle commande) tampons de données : le processeur y met les données pour le contrôleur (e.g. pour écriture sur disque) ; le contrôleur y met les données pour le processeur (e.g. suite à une lecture sur un disque) Deux solutions existent pour le placement des registres de contrôle : ports d’E/S : registres spécialisés en dehors de la mémoire E/S mappées en mémoire : cases mémoire reservées pour la communication d’E/S (e.g. Pentium) A. SAVARY IUT Blois GTR1, 2004/05

16 Dialogue entre le processeur et les E/S
Trois types essentiel de communication entre le processeur et les entrées/sorties sont : la communication par scrutation la communication par interruptions le DMA A. SAVARY IUT Blois GTR1, 2004/05

17 Prêt pour caractère suivant
Dialogue entre le processeur et les E/S : Scrutation (Attente Active=Busy Waiting) Dans des ordinateurs très simples ou/et bas de gamme, le processeur est lui même responsable de tout échange de données avec les périphériques. La méthode la plus simple (mais la moins efficace) est la communication par scrutation. Exemple : saisie de caractères tapés sur un clavier et leur affichage sur un écran alphanumérique : Tampon clavier Tampon écran Caractère disponible Prêt pour caractère suivant Caractère reçu Caractère à afficher faire { prêt = lire(caractère_disponible); } tant que (! prêt) ; lire(tampon_clavier); remettre_à_zéro(caractère_disponible); prêt = lire(pret_pour_caractere_suivant); ecrire(tampon_ecran); remettre_à_zéro(pret_pour_caractere_suivant); Le processeur reste en attente tant que le périphérique n’est pas prêt. Puis il saisie/envoie un caractère et se remet à attendre. A. SAVARY IUT Blois GTR1, 2004/05

18 Scrutation dans JASPer
Dans JASPer les E/S sont mappée en mémoire. Voici le masque mémoire : IDR (input data register) est un tampon d’entrée : le périphérique y accède pour mettre une donnée, le processeur y accède pour lire la donnée ISR (input status register) est un registre de contrôle d’entrée : le processeur peut lire la donnée dans IDR uniquement si ISR est égal à 1 (ceci évite de lire la même donnée plusieurs fois) ODR (output data register) est un tampon de sortie : le processeur y accède pour mettre une donnée, le périphérique y accède pour lire la donnée OSR (output status register) est un registre de contrôle de sortie : le processeur peut mettre la donnée suivante dans ODR uniquement si OSR est égal à 1 (ceci évite d’écraser les données nos saisies par le périphérique) 00FF Reservé pour le SE 00F0 OSR 00E3 ODR 00E2 ISR 00E1 IDR 00E0 00DF Programmes et données de l’utilisateur 0000 A. SAVARY IUT Blois GTR1, 2004/05

19 Dialogue entre le processeur et les E/S : Interruptions (Interrupts)
Interruption : signal passé au processeur par une broche particulière ; ce signal avértit le processeur d’une situation “exceptionnelle” (i.e. rare et dont le moment précis et impossible à prévoir) ; le processeur doit suspendre l’action qu’il était en train de faire afin de “traiter l’interruption” ; puis il retourne à l’action précédente. Avantage : le processeur ne perd pas son temps à attendre qu’une opération d’E/S se termine ; il peut faire autre chose en attendant une interruption. A. SAVARY IUT Blois GTR1, 2004/05

20 Interruptions - parallèle avec la vie courante
Je me mets à réaliser une recette de cuisine (exécution du processus 1). Je remarque qu’il me manque de la farine alors je mémorise la dernière action effectuée de la recette (enregistrement de l’état du processus 1) et je demande à ma fille d’aller au magasin (demande d’opération d’E/S). En attendant le retour de ma fille je m’asseois pour lire un livre (exécution du processus 2). Au millieu de cette action mon fils crie (emission de l’interruption 1) car il s’est blessé. J’arrête de lire après avoir mis un marque-page à la dernière page lue (enregistrement de l’état du processus 2) et je lui fais un pensement (traitement de l’interruption). Je me remets à lire à l’endroit marqué par le marque-page (reprise du processus 2). Ma fille sonne à la porte (emission de l’interruption 2), j’arrête de lire, je prends la farine en remerciant ma fille (traitement de l’interruption). Je reprends ma recette à l’endroit où je m’étais arrêtée (reprise du processus 1). A. SAVARY IUT Blois GTR1, 2004/05

21 Pourquoi les interruptions sont-elles nécessaires ?
Sans elles il faut perdre une bonne partie de son temps en “attente active” : le processus doit de sa propre initiative vérifier si une situation “exceptionnelle” ne viens pas de se produire. Supposons que dans la vie courante les interruptions (sonnette, crie de l’enfant, sonnerie du téléphone, reveil, voyants de contrôle dans une voiture, etc.) n’existent pas Les “algorithmes” de la vie courantes doivent alors intégrer des vérifications suffisamment fréquentes des situation “exceptionnelles” lire (pendant un temps “raisonnable”), puis s’arrêter pour : vérifier si mon fils va bien; vérifier si ma fille ni personne d’autre ne se trouve derrière la porte vérifier décrocher le téléphone au cas où quelqu’un était justement en train de m’appeler etc. en conduisant, s’arrêter de temps en temps pour vérifier s’il ne manque pas d’essence, huile, liquide de refroidissement, etc. A. SAVARY IUT Blois GTR1, 2004/05

22 Interruptions dans JASPer
Le registre PSR contient : un bit pour bloquer/débloquer les interruptions (si IE=0 alors aucune interruption ne peut interrompre le processeur, si IE=1, inversement) trois bits (VVV) pour le vecteur d’interruptions : chaque type d’interruption à son numéro (vecteur) ; lorsqu’un périphérique émet une interruption, son vecteur s’enregistre dans La valeur vvv indique où se trouve en mémoire l’adresse du programme de traitement de l’interruption A. SAVARY IUT Blois GTR1, 2004/05

23 DMA (Direct Memory Access)
La vitesse de transfert de donnés par les périphériques est beaucoup plus basse que celle du processeur. Dans un système du type busy waiting le processeur passe la casi totalité de son temps à attendre les réponses des périphériques. Dans un système à interruptions les données sont traitées par petits blocs (e.g. un caractère à la fois) donc les interruption arrivent relativement souvent et le processeur passe une bonne partie de son temps à traiter les interruptions Solution : interruptions + DMA Lorsqu’un programme sollicite un périphérique, le processeur envoi la demande à un circuit spécifique DMA (Direct Memory Access) et, si nécessaire, suspend le programme en cours pour en exécuter un autre. Le circuit DMA entre en communication avec le périphérique en lui permettant de lire ou écrire des mots directement en mémoire sans intervention du processeur. Lorsque le transfert est terminé le contrôleur avertit le processeur en générant une interruption ; le processeur traite l’interruption (une seule pour tous le transfert), puis reprend le programme qui attendait la fin de l’opération d’entrée/sortie (E/S). A. SAVARY IUT Blois GTR1, 2004/05

24 Bus A. SAVARY IUT Blois GTR1, 2004/05

25 Types de bus Un bus = une ou plusieurs lignes conductrices regroupées ensemble selon leurs fonction Bus internes : relient les différents éléments du processeur entre eux : l’unité de contrôle, l’UAL, les registres Bus externes : relient le processeur avec la mémoire et avec les entrées/sorties En fonction de ce qu’ils transportent, les bus (internes et externes) se divisent en Bus d’adresses Bus de données Bus de contrôles (de commandes) Le fonctionnement des bus internes peut être déterminé arbitrairement par le fabricant du processeur (selon ses propres besoins) Le fonctionnement des bus externes doit garantir la bonne communication entre le processeur, les mémoires et les E/S (dont les fabricants sont souvent différents du celui du processeur). Le bus doit donc respecter certaines normes appelées protocole du bus (e.g. protocoles ISA, PCI, SCSI, USB). A. SAVARY IUT Blois GTR1, 2004/05

26 Types de connexions à un bus
Un circuit conntecté à un bus peut être soit maître, soit esclave. Un maître est actif, i.e. il peut prendre l’initiative de communication sur un bus. Un esclave est passif, i.e. il ne peut que répondre à l’initiative de communication prise par un maître. Exemples : Demande de lecture sur un disque : le processeur est maître (c’est lui qui envoie par le bus de contrôle la demande de lecture au contrôleur du disque), le contrôleur du disque est esclave Accès direct à la mémoire (DMA) : le contrôleur du disque est maître (c’est lui qui demande à la mémoire d’enregistrer les données provenant du disque), la mémoire est esclave Il arrive que plusieurs maîtres souhaitent utiliser un bus commun au même moment. Cette situation doit être exclue. Le gestion de conflits d’accès au bus s’appelle arbitrage du bus. A. SAVARY IUT Blois GTR1, 2004/05

27 Bus ISA et PCI Bus ISA : l’un des plus ancient standards des bus externes de la gamme IBM PC permet de transmettre des données de 16 bits à la fois Fréquence : 8,33 MHz Bande passante (throughput) : (2 octets * 8,33 M/sec) 16,7 Mo/s Peu cher Le développement d’applications graphiques et des multimédia a vite posé des problèmes à la capacité de transmission du bus ISA - on a introduit un nouveau standard, le bus PCI qui est arrivé à sa version 2.2 (donnée de 2001) : permet de transmettre des données de 64 bits à la fois Fréquence : 66 MHz Bande passante : (8 octets * 66 M/sec) 528 Mo/s Cher Le bus ISA a dû être maintenu pour des raisons de compatibilité : il est employé pour des périphériques lents (modem, imprimante,…) et est interconnecté avec un bus PCI A. SAVARY IUT Blois GTR1, 2004/05

28 Bus USB (Universal Serial Bus)
Destiné aux périphériques lents : souris, clavier, imprimante,… Le boîtier de l’ordinateur n’a pas besoin d’être ouvert pour connecter un nouveau périphérique Un seul type de cable pour tous les périphériques Jusqu’à 127 périphériques peuvent être connectés à un même ordinateur Les équipements peuvent être branchés et débrancher sans couper l’alimentation électrique de l’ordinateur Il n’est pas nécessaire de réinitialiser le système après avoir branché un nouveau périphérique Bande passante : 1,5 Mo/s Peu cher A. SAVARY IUT Blois GTR1, 2004/05

29 Architecture à plusieurs bus (ex. de Pentium II)
Bus local Bus mémoire UC Contrôleur PCI Mémoire principale Bus SCSI cache Appelé “pont PCI”; Contient l’arbitre du bus Contrôleur SCSI Contrôleur vidéo Contrôleur de réseau Scanner Disque Bus PCI Appelé “pont ISA” Contrôleur USB Bus USB Carte son Contrôleur imprimante Contrôleur ISA/PCI Tanenbaum fig p.91 Traduire en francais ; SCSI Modem Souris Clavier Bus ISA A. SAVARY IUT Blois GTR1, 2004/05


Télécharger ppt "Architecture des ordinateurs cours 5 Les entrées/sorties et les bus"

Présentations similaires


Annonces Google