0% ont trouvé ce document utile (0 vote)
20 vues8 pages

Chap 2

Le document présente la structure et le fonctionnement d'un microprocesseur standard, en détaillant les composants clés tels que les registres, le décodeur d'instructions, et l'unité de contrôle. Il aborde également les différents types de registres, y compris les registres d'adresse, de travail, et les unités arithmétiques et logiques. La conclusion souligne l'importance de comprendre le fonctionnement de chaque bloc interne pour utiliser efficacement un microprocesseur.

Transféré par

MJ Ced
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
20 vues8 pages

Chap 2

Le document présente la structure et le fonctionnement d'un microprocesseur standard, en détaillant les composants clés tels que les registres, le décodeur d'instructions, et l'unité de contrôle. Il aborde également les différents types de registres, y compris les registres d'adresse, de travail, et les unités arithmétiques et logiques. La conclusion souligne l'importance de comprendre le fonctionnement de chaque bloc interne pour utiliser efficacement un microprocesseur.

Transféré par

MJ Ced
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

IUT FOTSO VICTOR DE BANDJOUN UNIVERSITE DE DSCHANG

LICENCE DE TECHNOLOGIE GENIE ELECTRIQUE


UV : GE 325 MICROPROCESSEURS

Chapitre 2 Structure et fonctionnement d’un microprocesseur

Objectifs pédagogiques :

1-Connaître la structure interne d’un microprocesseur standard (8 fils de données et 16 fils d’adresses).
2-Maîtriser le fonctionnement d’un microprocesseur.

SOMMAIRE
2-1 Rappel sur les registres………………………………………….1
2-2 Registre d’instruction…………………………………………….1
2-3 Le décodeur d’instruction………………………………………..4
2-4 L’unité de contrôle et de séquencement………………………..4
2-5 Les registres d’adresse (16 bits)…………………………………4
2-6 Registres de travail (8 ou 16 bits)……………………………….5
2-7 L’unité arithmétique et logique (UAL ou ALU)………………..6
2-8 Les indicateurs……………………………………………………..6
2-9 Conclusion………………………………………………………….7

2-1 Rappel sur les registres

Les registres sont des circuits numériques composés de bascules mémoires (appelées aussi latchs ; ex :
bascules D, JK, etc). Ils servent à mémoriser une valeur numérique sur activation de l’horloge. Lorsqu’une
donnée est par exemple envoyée par un circuit interne du microprocesseur sur le bus de données, elle se
retrouve appliquée sur toutes les entrées de registres connectés au bus. Le microprocesseur valide le chargement
de cette donnée en activant l’horloge du registre correspondant.
Un microprocesseur comprend essentiellement : (voir le schéma structurel page suivante)

2-2 Le registre d’instruction (8 bits)

Le processeur va chercher en mémoire ROM, via le bus de données externe et interne, l’instruction à
exécuter pour la stocker dans un registre où elle sera décodée : c’est le registre instruction. Cela correspond au
cycle de recherche de l’instruction (valable pour toute instruction). Il reçoit le ou les octets appelés opérandes
associés au code opération s’il y en a. L’opérande pourra être :
- une opérande immédiate telle qu’une donnée
Ex : MVI A,42H est une instruction associée à l’opérande 42H ; c’est une addition de la valeur 42H
- une opérande directe telle qu’une adresse
Ex : STA 2F34H est un chargement dans la case mémoire d’adresse 2F34H
- une opérande indexée, indirecte, relative, etc. (voir chapitre programmation)

A partir de ce registre le microprocesseur :


- décode l’instruction pour reconnaître le travail à réaliser telle qu’une addition, un chargement, etc., et
active les signaux nécessaires à la réalisation de cette instruction.
- calcule si nécessaire l’adresse de l’opérande. Ce registre est donc lié à l’unité de calcule d’adresse.
Ex : branchement relatif (6809) BRA 33 (branchement à l’adresse courante à laquelle s’ajoute la valeur
33H)
2-3 Le décodeur d’instruction

C’est l’unité qui décode les instructions. Il est aussi appelé unité de gestion des microprogrammes
(MCU : Microprogram Control Unit). Il calcule l’adresse de la prochaine instruction à exécuter et l’adresse
correspondant à l’instruction pour la micro-mémoire de l’unité de contrôle et de séquencement.

2-4 L’unité de contrôle et de séquencement

Elle possède une mémoire ROM très rapide qui contient des microprogrammes. En effet, chaque instruction
est décomposée en une suite de séquences élémentaires. Cette micro-mémoire est associée à une unité de
séquencement qui met en œuvre les signaux de commande nécessaire à l’exécution de l’instruction. Elle est en
liaison avec tous les circuits internes et externes (bus de contrôle) du microprocesseur.
Ex : L’instruction STA A02C qui consiste à effectuer un chargement d’une valeur du microprocesseur vers
une case mémoire d’adresse A02C est réalisée en 4 phases élémentaires :

1ère-décodage de l’instruction STA


2nde –sortir A0 (poids faibles de l’adresse)
3ème – sortir 2C (poids forts de l’adresse)
4ème – exécuter STA (chargement en case mémoire)

Elle fournit les signaux de contrôle des circuits externes et renseigne sur l’état du microprocesseur.
Elle reçoit les signaux d’interruption de l’extérieur.

2-5 Les registres d’adresse (16 bits)


a) Le compteur ordinal ou Program Counter (PC)
Il contient l’adresse de la prochaine instruction à exécuter (en ROM).
Son contenu est modifié par :
- Incrémentation automatique lors de l’exécution d’une instruction. La valeur de l’incrément dépend de la
taille de l’instruction.
- RAZ (remise à zéro) matérielle du microprocesseur (RESET) ou interruption.
Ce sont des valeurs particulières : FFFF pour le 6809
0000 pour le 8085
- Interruption : adresse de début d’interruption (PC)
- des instructions de branchement (JMP adr (PC))
- l’appel à un sous programme (CALL adr (PC))
- le pointeur de pile (retour de sous-programme RET)
- les registres HL (ex : instruction PCHL (HL) (PC)
Les adresses du PC sont fournies au bus d’adresses par l’intermédiaire d’un registre tampon pour le calcul
éventuel, et d’un amplificateur de bus.
b) Le pointeur de pile ou Stack Pointer (SP)

C’est un registre qui permet de gérer une zone mémoire appelée « pile »
(Stack) où l’on stocke provisoirement les données. Les données à sauvegarder sont empilées puis dépilées
lors de leur restitution. En microinformatique les piles sont du type LIFO. (Last In – First Out). Le pointeur
contient l’adresse du haut de la pile.
L’écriture en pile d’une donnée provoque le décrément de la valeur du contenu de SP:
(SP)- 1 (SP))
La lecture en pile d’une donnée d’une donnée provoque l’incrément de la valeur du contenu de SP :
(SP)- 1 (SP))

Il existe deux modes de fonctionnement de la pile :


-mode automatique : lors d’un appel à un sous programme le microprocesseur empile automatiquement
le contenu du PC (pour le retour).
-Mode manuel : à l’aide d’instructions (PUSH, POP), on peut empiler et dépiler le contenu de registres
pour les réutiliser.
Attention : Il faut que : nombre de PUSH = nombre de POP

c) Registre d’index (seulement chez Motorola

Il s’utilise pour l’adressage indexé. C’est un type d’adressage crée afin de faciliter la lecture d’une suite
d’octets dans des cases mémoires adjacentes. Il permet une gestion aisée des tableaux (voir chapitre
programmation)

2-6 Registres de travail (8 ou 16 bits)

a) Accumulateur (8 bits)
Il sert pour les opérations arithmétiques et logiques. L’accumulateur est le registre particulier où sont
stockés les résultats d’une opération. Pour toutes les opérations de calcul une opérande est chargée dans
l’accumulateur. Il est donc directement lié à l’UAL .
L’accumulateur reçoit (et envoie) les données en provenance (et vers) les éléments extérieurs au
microprocesseur à savoir :
- les mémoires
- les interfaces périphériques
- les circuits spéciaux
donc tous les transferts de données passe par l’accumulateur. Certains microprocesseurs peuvent posséder
plusieurs accumulateurs.

b) Registres B, C, D, E, H, L (8 ou 16 bits)
Ce sont de registres internes au microprocesseur pour le stockage provisoire des données ou adresses, pour
des opérations logiques de calcul ou d’échange entre registres, avec l’accumulateur ou la mémoire. Ils sont
équivalents à des cases-mémoires internes auxquelles on accède, non pas avec une adresse, mais par une lettre.
(A, B, C, D, E, H, L). On peut les considérer comme des éléments de 8 bits (données) ou encore comme des
registres travaillant en double longueur. Dans ce dernier cas on pourra effectuer certaines opérations
directement sur 16 bits (adressage).

2-7 L’unité arithmétique et logique (UAL ou ALU)

C’est un ensemble de circuits logiques capable de réaliser des fonctions logiques et arithmétiques simples
(pas de multiplication et pas de division). Elle est associée avec trois registres :
- l’accumulateur
- le registre tampon
- le registre des indicateurs (Flag Register)
L’une des opérandes est contenu dans l’accumulateur. L’autre, venue d’un registre de travail, de
l’accumulateur ou d’une case mémoire via le bus interne est chargée dans un registre temporaire. Le résultat est
stocké dans l’accumulateur via le bus interne.
Il est constitué de circuits logiques permettant de réaliser :
- addition, soustraction (incréments, décréments) sur 8 ou 16 bits
- décalages vers la droite ou la gauche des registres internes
- les fonctions logiques : NOT, OU, ET et OU exclusif (XOR)

2-8 Les indicateurs

A cette ALU sont associés les indicateurs contenus dans un registre, celui des indicateurs ou des drapeaux
(FLAGS). C’est un registre constitué de bascules indépendantes positionnées automatiquement par l’exécution
de certaines instructions.
La plupart des microprocesseurs possèdent les indicateurs suivants :
- signe
- débordement
- retenue
- résultat nul
- parité
- retenues auxiliaires utilisées en calcul décimal
- signaux d’interruption (associé à l’unité de contrôle et de séquencement)
Certains de ces indicateurs seront testés par des instructions appelées instructions conditionnelles.
D’autres indicateurs sont positionnés par des événements externes au microprocesseur. C’est le cas des signaux
d’interruptions ou d’entrées.
Le nom de ces registres diffère suivant le type de microprocesseur :PSW ( Processor Status Word);
CCR( Registre Code Condition) ; FW ( Flags Word) ; IM ( Interruption Mask). Le contenu de ces registres est
accessible par le programmeur.

2-9 Conclusion

Les modules et les registres principaux d’un microprocesseur standard viennent d’être décrits ci-dessus.
L’utilisation d’un microprocesseur suppose la bonne maîtrise du fonctionnement de chacun de ses blocs
internes. A titre indicatif le schéma bloc interne du microprocesseur INTEL 8085 est illustré à la page suivante.
Le lecteur pourra consulter avec profit le site de INTEL pour informations complémentaire. Le 6809 de
MOTOROLLA est un microprocesseur standard , les informations concernant ce microprocesseur peuvent être
obtenues en consultant le site de MOTOROLLA.

Vous aimerez peut-être aussi