ARCHITECTURE


Mais comment fonctionne une unité centrale?
L'architecture utilisée est celle de von Neumann (1946) . C'est un automate.

Tout d'abord il y a un programme (un exécutable ou un fichier binaire) qui est une suite de bits directement interprétable par la machine (langage machine).
Une instruction suivie d'un ou plusieurs opérande(s) est représentée par un certain nombre de bits.
Cette suite d'instructions est chargée dans la ram puis , instruction par instruction , il y chargement de l'instruction dans le registre RI ainsi que ses opérandes dans d'autres registres , puis décodage de l'instruction par l'unité de commande et enfin exécution de l'instruction par l'unité arithmétique.
Le compteur ordinal est incrémenté automatiquement au début de chaque instruction.
C'est l'unité de commande qui "lit" les instructions et l'unité arithmétique et logique qui les exécute.
Une case mémoire a une adresse et un contenu aussi il est nécessaire de les mémoriser dans des mémoires spécifiques que sont le registre d'adresses RA et le registre de données RD.
La ram est utilisée pour charger la liste d'instructions qui composent le programme et les données manipulées par ce programme , en particulier lors de déclarations de variables.
Il y a donc plusieurs registres:
RA (pour les adresses) CO (pour le compteur ordinal d'instructions) RI(pour charger les instructions) RD(pour les données) A et B pour le fonctionnement de l'unité arithmétique qui effectue les calculs.
Les registres ainsi que des caches sont des mémoires directement accessibles par l'unité arithmétique donc d'accès très rapide. L'accès à la ram est plus lent d'où l'intérêt de ces registres.
Les bus d'adresses et de données permettent l'accès à une adresse donnée et l'écriture ou la lecture d'une donnée à cette adresse.
L'ensemble est "orchestré" cadencé par l'horloge qui donne le tempo pendant l'exécution de toutes ces opérations.
Voici une présentation qui donne quelques explications.

Les composants "atomiques" qui constituent l'ensemble sont des circuits électroniques (des transistors) assemblés qui réalisent des fonctions logiques.
Ces "portes" logiques ont des entrées et des sorties (des fils électriques) .L'absence de courant correspond au bit 0 et la présence au bit 1.
Il y a les fonctions logiques combinatoires (comme un additionneur n bits , un décodeur , un codeur , un multiplexeur , un démultiplexeur etc..) et les fonctions logiques séquentielles qui permettent la mémorisation de données (les bascules RS , D , les verrous etc..)

Le cours consistera à comprendre quelques fonctions logiques combinatoires et séquentielles à partir de l'agèbre de Boole puis à regarder sur des exemples simples le séquencement des instructions en langage machine.

TD et TP:
n°1 : logique combinatoire (format doc)
n°1 : logique combinatoire (format txt)
additionneur complet
n°2 : logique séquentielle : comment mémoriser 1 bit
n°3 : langage machine

ANNEXES:

Retour vers la page précédente