Plan du cours 1 Histoire de l’ordinateur 2 Présentation générale 3 Représentation interne des informations 4 Encodage de l’information 5 Circuits logiques 6 Composants électroniques 7 Mémoires 8 Unité centrale de traitement 9 Superordinateurs et microprocesseurs 10 Entrées / sorties 11 Assembleur 12 Introduction au langage MIPS Clement Jonquet (Polytech’ Montpellier) Architecture des ordinateurs IG3 2011-2012 203 / 264 Principe de fonctionnement Les entrées/sorties dans l’architecture de Von Neumann unités d’entrée/sortie s duUnités programmed’entrées-sorties de la mémoire Transfèrent les informations entre l’unité centrale truction et passage à l’UALetpourles unités périphériques. avec éventuellement appel à la e. Bus Ensemble des lignes de liaison qui assurent les communications entre les différents composants de l’ordinateur. Clement Jonquet (Polytech’ Montpellier) . . . unité centrale de traitement unité de contrôle ou ou unité de commande registres Un ordinateur a besoin d’échanger de l’information avec l’environnement extérieur (e.g., charger des nnées depuis un périphérique dans la programmes, communiquer, afficher). Architecture des ordinateurs mémoire centrale unité arithmétique et logique ou ou principale unité de traitement ou unité de calcul périphériques IG3 2011-2012 204 / 264 Entrées-sorties et périphériques Unités périphériques Unités d’échange de données avec le monde extérieur (écran, clavier, souris, imprimante, modem) et mémoires auxiliaires (disques) qui permettent de stocker de façon permanente. Chaque périphérique est associé à un contrôleur. Clement Jonquet (Polytech’ Montpellier) Architecture des ordinateurs IG3 2011-2012 205 / 264 Architectures et procédures d’entrées/sorties C’est le CPU qui prend l’initiative de toute entrée ou sortie. Comment gérer les entrées/sorties sans dégrader les performances de toute la machine ? Liaison directe CPU-périphérique. Problème de la grande différence de vitesse et perte de temps du CPU qui est bloqué pendant l’échange ; Liaison directe avec interruption ; Délégation de la gestion de l’échange (canaux, DMA). L’idée est de suspendre l’exécution du programme le temps d’un cycle-mémoire et de le donner à un composant qui gère l’échange (technique du vol-de-cycle). Clement Jonquet (Polytech’ Montpellier) Architecture des ordinateurs IG3 2011-2012 206 / 264 Système d’interruption Lorsque le périphérique est prêt à effectuer un échange élémentaire, il envoi un signal au CPU pour ”interrompre” l’exécution en cours. Le contrôle du CPU est renvoyé à un programme de traitement de l’évènement stocké en mémoire à partir d’une adresse liée à l’interruption. Le CPU n’attends pas ; Temps perdu à échanger les programmes et leur contexte. Système d’interruption Dispositif, incorporé au niveau du séquenceur, qui enregistre et traite les signaux d’interruption envoyés au CPU : 1 Arrêter le programme en cours ; 2 Sauvegarder l’état de la machine ; 3 Exécuter le programme de service de l’interruption ; 4 Rétablir l’état de la machine ; 5 Reprendre l’exécution du programme interrompu. Clement Jonquet (Polytech’ Montpellier) Architecture des ordinateurs IG3 2011-2012 207 / 264 Accès direct à la mémoire (DMA) Le DMA est connecté entre un contrôleur de périphérique et le bus système, permettant ainsi au périphérique d’accéder à la mémoire sans passer par le CPU. Transfère des blocs de données ; Prioritaire sur le CPU ; Intégrité des données non vérifiée ; Possède son propre RA et RM ainsi qu’un compteur (pour savoir quand signaler au CPU que les données sont prêtes). Clement Jonquet (Polytech’ Montpellier) Architecture des ordinateurs IG3 2011-2012 208 / 264 Canaux d’entrées/sorties Processeurs spécialisés pouvant exécuter des programmes d’entrées/sorties. Programmables ; Prioritaire sur le CPU ; Plus performant que les DMA ; Vérifie l’intégrité des données ; Permet a plusieurs périphériques de travailler en même temps. Clement Jonquet (Polytech’ Montpellier) Architecture des ordinateurs IG3 2011-2012 209 / 264 Contrôleur de périphérique Chaque périphérique doit être relié à un bus ou à un canal par l’intermédiaire d’une électronique appropriée : le contrôleur (ou unité de liaison). Il adapte la diversité des périphériques à une interface commune, obéissant aux normes adoptées par le constructeur. Soulage le canal ou tout autre dispositif d’échange ; Processeur spécialisé avec ses registres, sa mémoire tampon, ses circuits, etc ; Un contrôleur peut contrôler plusieurs périphériques de mémé type ; S’occupe de la gestion des incidents, détection des erreurs, conversion de formats, etc. Clement Jonquet (Polytech’ Montpellier) Architecture des ordinateurs IG3 2011-2012 210 / 264 Bus (1/2) Bus Système de câblage transportant des signaux électriques qui interconnecte les unités de l’ordinateur. Transmet des signaux correspondant à trois type d’information : adresses, données et commandes. Architectures à bus unique (e.g., microordinateur) ; Architectures à bus spécialisés ; Maximum 2 unités peuvent utiliser un bus en même temps ; Un bus est caractérisé par sa fréquence et le nombre de bits qu’il peut transmettre simultanément (si >1 alors bus parallèle, sinon bus série). Clement Jonquet (Polytech’ Montpellier) Architecture des ordinateurs IG3 2011-2012 211 / 264 Bus (2/2) Les bus peuvent être : synchrone : la transmission des données est cadencée par une horloge ; asynchrone : la transmission des données est réalisée à intervalle de temps variable (e.g., après un ordre du CPU). Types de bus et technologies On distingue les bus suivants : Le bus système (bus interne) : permet au processeur de communiquer avec la mémoire centrale (+1Go/s) ; Le bus d’extension (bus local, bus E/S) : permet l’ajout de périphérique, relié au bus système par un bridge e.g., PCI, PCI-X, AGP, PCI-Express, ExpressCard Les bus externes : qui viennent se connecter sur le bus d’extension e.g., ATA, SATA, SCSI, SAS, PC Card, IEEE1394 (FireWire), USB Clement Jonquet (Polytech’ Montpellier) Architecture des ordinateurs IG3 2011-2012 212 / 264