Les composants de l'architecture Von Neumann

L'unité Arithmétique et Logique


L'UAL (ou ALU en anglais) est la partie principale du microprocesseur. C'est elle qui réalise les opérations arithmétiques et logiques.


Il s'agit d'une structure combinatoire (les états logiques d'entrée conditionnent les états des sorties) dont la succession des opérations est commandée par l'unité de contrôle.

Selon le modèle d'UAL, le nombre d'opérations peut être plus ou moins important.


L'UAL est liée à un ou plusieurs registres appelées Accumulateurs qui permettent à l'UAL de recevoir les informations d'entrée et de stocker le résultat de l'opération.

Un registre est une mémoire capable de stocker un seul mot binaire.



Un autre registre appelée drapeau ou registre de Code Condition (CC) stocke des informations sur le résultat d'une opération (nul, négatif, dépassement de capacité, etc...).



Exemple d'exécution de l'opération $FF+$01 (Simulation de l'instruction ADDA avec MOTO6805):

Exemple d'addition avec une UAL en lien avec un seul accumulateur

Cliquez sur le lien :

Exemple d'opérations avec modification du registre de code condition

Cliquez sur le lien :



La mémoire

Elle contient les instructions du ou des programmes en cours d’exécution et les données associées à ce programme. Physiquement, elle se décompose souvent en :


    • une mémoire morte ou non volatile ( ROM = Read Only Memory ) chargée de stocker le programme. C’est une mémoire à lecture seule.
    • une mémoire vive ou volatile ( RAM = Random Access Memory ) chargée de stocker les données intermédiaires ou les résultats de calculs. On peut la lire ou l'écrire, mais ses données sont perdues à la mise hors tension.


Chaque cellule mémoire comporte une "adresse" unique qui lui est propre.

Cette adresse est véhiculée par le bus d'adresse tandis que la donnée est véhiculée sur le bus de données.

Exemple d'échange

Cliquez sur le lien :

Remarque :

Les disques durs, disquettes, CDROM, etc… sont des périphériques de stockage et sont considérés comme des mémoires secondaires. Elles nécessitent un contrôleur de disque.


L'unité d'entrées-sorties

Elle assure la communication entre le microprocesseur et les périphériques. (capteur, clavier, moniteur ou afficheur, imprimante, modem, etc…).


Elle est associée à des composants appelés COUPLEURS.


Les différents registres de ces coupleurs se comportent comme des cellules mémoires et possèdent de ce fait des adresses et des données qui précisent le comportement des entrées-sorties.

Remarque : Les périphériques d'entrée/sortie peuvent également accéder à la mémoire sans passer par le microprocesseur grâce à un circuit spécialisé appelé DMA  (Direct Memory Access).



L'unité de contrôle

L'unité de contrôle décode les instructions et assure le séquencement des opérations et en particulier le passage des données. Elle se comporte un peu comme un programmateur de lave-linge.

Elle est composée :

      • du registre d'instruction (IR) qui mémorise le code de l'instruction à exécuter
      • le décodeur d'instruction qui décode l'instruction pour que le séquenceur puisse organiser le séquencement des tâches
      • le séquenceur.


L'unité de contrôle a besoin du compteur de programme (PC) qui lui indique quelle est la prochaine instruction à exécuter.

Exemple d'exécution d'une instruction LDA #$10

Cliquez sur le lien