Introduction à l’Informatique pour les Sciences Humaines
IMM - Lettres - Université de Lausanne
Notes de cours
L'ordinateur.II
Brigitte Zellner Keller
Architecture des processeurs
Evolution des processeurs
Programmes
Documentation complémentaire recommandée
http://www.scedu.umontreal.ca/sites/histoiredestec/histoire/tdmhiste.htm
http://www.howstuffworks.com/pc.htm
2
1. Le Processeur ou "Central Processing Unit" (CPU)
Composante essentielle de l'ordinateur qui exécute pas à pas un programme, calcule et
ordonne le déplacement des données d'une partie de l'ordinateur vers une autre.
CPU + mémoire centrale = Unité centrale
La CPU consiste en un circuit électronique qui peut accomplir en un ou plusieurs cycles
d’horloge des opérations élémentaires appelées "instructions".
=> chaque instruction n'accomplit qu'une petite portion d'un travail donné.
=> Une CPU est construite pour comprendre un lexique limité d'instructions différentes.
Typiquement, une CPU comprend plusieurs unités fonctionnelles qui collaborent ensemble
grâce à diverses connections électriques (BUS). Bien que variables d'une architecture à une
autre, une CPU comprend au moins
une unité de contrôle (ou commande)
et une unité arithmétique et logique (UAL).
http://www-gtr.iutv.univ-paris13.fr/Cours/Mat/Architecture/Cours/polyarch
Copyright © 2002Brigitte Zellner Keller Lettres, Université de Lausanne
3
1. Architecture d’un processeur
Figure de Joelle Delacroix, Architecture des machines et systèmes informatiques
Les 4 phases suivantes représentent un cycle machine.
• Phase 1
Les instructions d'un programme sont stockées dans une mémoire qui se trouve
généralement à l'extérieur de la CPU. La première tâche de la CPU consiste donc à aller
chercher (fetch) puis lire la première instruction qui se trouve en mémoire. Pour cela,
l'unité de commande envoie une adresse et une commande en code binaire vers la
mémoire. Cette instruction est transférée via le Bus du processeur — système de
connection électrique reliant la mémoire à la CPU.
• Phase 2
L’Unité de contrôle (voir ci-après) reçoit l'instruction provenant du bus et elle commande
les autres composantes selon ces instructions. Après avoir décodé une instruction (traduit),
elle envoie ses ordres à l'unité arithmétique et logique pour générer les calculs nécéssaires.
• Phase 3
L’Unité arithmétique et logique (Arithmetic Logic Unit, ALU) exécute l’arithmétique et les
opérations logiques (négation, opérations ET, OU, OU exclusif).
L'exécution d'une instruction est décomposée en une série d'étapes correspondant aux
principales opérations nécessaires à l'exécution de l'instruction. Selon sa complexité, une
instruction requiert 3, 4 ou 5 cycles d’horloge pour s'exécuter.
• Phase 4
Le résultat est transféré en mémoire
Copyright © 2002Brigitte Zellner Keller Lettres, Université de Lausanne
4
2. Composantes activées lors d'un cycle machine
• Registre CO (compteur ordinal) contenant l'adresse où est stockée la prochaine instruction
à chercher en mémoire.
• Registre RI (registre d'instruction) dans lequel le CPU transfert l'instruction suivante à
exécuter, à partir de la mémoire.
• Décodeur qui détermine quelle opération doit être effectuée.
• Horloge qui émet des impulsions régulières, synchronisant toutes les actions de l'unité
centrale. On parle de cycle ou fréquence d'horloge. Le standard actuel varie de 500 MHz à
3 GHz selon les appareils (Mhz: millions de cyles par seconde, GHz: milliards de Hz). Pour
des raisons techniques, l’horloge n’est pas directement placée sur le processeur. Un
oscillateur interne est synchronisé sur un signal d'horloge externe, souvent fourni par un
oscillateur à quartz. La cadence de l’oscillateur interne est un multiple de la cadence du bus
système (voir plus loin) : 2.3, 4, 10 selon les architectures.
• Séquenceur qui génère les signaux de commande. Cet automate distribue des signaux de
commande aux diverses unités participant à l'exécution d'une instruction.
• Registres: petites mémoires internes très rapides d'accès utilisées pour stocker
temporairement une donnée, une instruction ou une adresse. Chaque cellule mémoire est
généralement aussi large que le bus du processeur (la taille de cette cellule ou mot est
spécifique au processeur, soit typiquement 8, 16 ou 32 bits). Les registres servent de
tampon à la mémoire.
3. Explications supplémentaires
Mémoire cache (tampon)
Le principe de la mémoire cache est un procédé qui permet de réduire les délais d'attentes
car il s'appuie sur le principe de localité. Au lieu par exemple d'aller chercher une
instruction après une autre en RAM (où le temps d'accès est supérieur à un cycle
d'horloge), on préstocke ces informations dans des registres proches du processeur. Cette
astuce permet de réduire considérablement les temps de calcul. Les processeurs actuels
utilisent plusieurs niveaux de mémoire cache (voir section Mémoire) : L1 pour Level 1, L2
pour Level 2,etc.
Taille du mot
L'information étant codée en bit (binary digit), le processeur fonctionne par "paquets" de x
bits, qui sont des multiples d'octets. L'information est donc transmise simultanément sur "x
bits": la taille du mot du processeur. (Attention, la taille du mot dans le système
d’exploitation peut être différente de celle du processeur. Par exemple, dans Windows, la
taille du mot des deux octets. Lors de la conception des systèmes Windows, cette taille
corrspodait à celle des processeurs). Plus la taille d'un mot est importante, moins le
Copyright © 2002Brigitte Zellner Keller Lettres, Université de Lausanne
5
processeur a besoin de décomposer l'information en unités plus petites, d'où un gain de
temps. Le standard actuel est de 64 ou 128 bits (soit 8 ou 16 octets).
Le lexique des instructions
La MMI (mémoire des micro instructions), est une mémoire morte, contenant toutes les
micro instructions nécessaires au processeur pour exécuter les instructions du langage
machine.
Liaison processeur-mémoire
Les informations échangées entre la mémoire et le processeur circulent sur des bus. Un bus
est un ensemble de fils conducteurs, utilisés pour transporter des signaux binaires.
Le bus d'adresse est un bus unidirectionnel: seul le processeur envoie des adresses.
Le bus de données est un bus bidirectionnel. Lors d'une lecture, c'est la mémoire
qui envoie un mot sur le bus; lors d'une écriture, c'est le processeur qui envoie la donnée.
Les interruptions
Les interruptions permettent au matériel de communiquer avec le processeur. Les
interruptions sont surtout utilisées pour la gestion des périphériques de l'ordinateur (ex :
frappe d'un caractère au clavier).
Une interruption est signalée au processeur par un signal éléctrique sur une borne spéciale.
Lors de la réception de ce signal, le processeur ``traite'' l'interruption généralement dès la
fin de l'instruction qu'il était en train d'exécuter.
2. Evolution des processeurs
1. Processeurs CISC - RISC
Chaque type de processeur possède son jeu d'instructions. Par exemple les processeurs
Motorola 68k (incorporés sur les Macinstoshs) utilisaient un jeu d'instructions complexes
(processeurs CISC) différent du jeu d'instructions de la génération plus récente des
processeurs PowerPC (qui utilisent un jeu d'instructions réduit, RISC).
L'architecture CISC
L'architecture “pure” CISC (“Complex Instruction Set Computer”) offre un jeu
d'instructions complexes. L‘architecture CISC était utilisé par tous les processeurs de type
486, c'est-à-dire les processeurs fabriqués par Intel, AMD, Motorola 68k, etc.
Ces processeurs pouvaient traiter directement un grand nombre d'instructions
complexes mais souvent peu fréquentes. En effet, des études statistiques ont montré qu’en
moyenne, 25% des instructions CISC étaient utilisées 95% du temps. Compte tenu du coût
du silicium, la question se posait de l’efficience de cette architecture. Les opérations les
plus courantes étant: les opérations d'échange entre l'unité centrale et la mémoire, ainsi que
Copyright © 2002Brigitte Zellner Keller Lettres, Université de Lausanne
1 / 10 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !