Vous êtes sur la page 1sur 29

Université M’hamed Bougera de Boumerdes

Faculté des Technologies


Département d’Ingénierie des Systèmes Électriques

Master 1 Machines Electriques


Master 1 Electroniques des Systèmes Embarqués

Module: µProcesseurs &


µContrôleurs
Chapitre 1

• Architecture et fonctionnement d’un Microprocesseur.


Chapitre 1: Architecture et fonctionnement d’un
Microprocesseur.

• Objectifs de ce chapitre:
Comprendre la structure interne et le fonctionnement d’un microprocesseur (μP).

• Plan du chapitre:
1. Rappels.
2. Architecture d’un ordinateur.
3. Architecture d’un microprocesseur.
4. Mémoire
5. Une unité de transfert des données (bus).
1. Rappels
• La table de conversion Décimal, Hexadécimal et Binaire :
Décimal Hexadécimal Binaire
0 0 0000
1 1 0001
2 2 0010
3 3 0011
4 4 0100
5 5 0101
6 6 0110
7 7 0111
8 8 1000
9 9 1001
10 A 1010
11 B 1011
12 C 1100
13 D 1101
14 E 1110
15 F 1111
1. Rappels
• La table de conversion Décimal, Hexadécimal et Binaire :
Décimal Hexadécimal Binaire Décimal Hexadécimal Binaire Décimal Hexadécimal Binaire
0 0 0000 16 10 0001 0000 16 20 0010 0000
1 1 0001 17 11 0001 0001 17 21 0010 0001
2 2 0010 18 12 0001 0010 18 22 0010 0010
3 3 0011 19 13 0001 0011 19 23 0010 0011
4 4 0100 20 14 0001 0100 20 24 0010 0100
5 5 0101 21 15 0001 0101 21 25 0010 0101
6 6 0110 22 16 0001 0110 22 26 0010 0110
7 7 0111 23 17 0001 0111 23 27 0010 0111
8 8 1000 24 18 0001 1000 24 28 0010 1000
9 9 1001 25 19 0001 1001 25 29 0010 1001
10 A 1010 26 1A 0001 1010 26 2A 0010 1010
11 B 1011 27 1B 0001 1011 27 2B 0010 1011
12 C 1100 28 1C 0001 1100 28 2C 0010 1100
13 D 1101 29 1D 0001 1101 29 2D 0010 1101
14 E 1110 30 1E 0001 1110 30 2E 0010 1110
15 F 1111 31 1F 0001 1111 31 2F 0010 1111
1. Rappels
• 1 Bit : 1 ou 0
• 1 Octet = 8 bits
• [00h .. FF] en Héxadécimal
• [00000000 .. 11111111] en Binaire
• [0 .. 255] en Décimal
 Un octet permet de représenter 256 valeurs
• Unités :
• 1 Octet = 8 bits
• 1 K Octets = 210 Octets = 1024 Octets
• 1 M Octets = 210 K Octets = 220 Octets = 1 048 576 octets
• 1 G Octets = 210 M Octets = 230 Octets = 1 073 741 824 octets
• 1 T Octets = 210 G Octets = 240 Octets = 1 099 511 627 776 Octets
2. Architecture d’un ordinateur

Unité d’entrée/sortie Mémoire

Entrée programme

Microprocesseur

Sortie Données
2. Architecture d’un ordinateur

Les éléments fondamentaux d’un ordinateur sont :


1. Un microprocesseur : pour effectuer les calculs.
2. Une mémoire : pour stocker le programme et les données.
3. Une unité de transfert des données (bus).
4. Une unité d’entrée/sortie : périphériques.
3. Architecture d’un Microprocesseur
• Le Microprocesseur est un circuit intégré encapsulé (packaged) avec des
broches pour les connexions.
• Deux types d’encapsulation:
• DIP (Dual In-Line Package);
• PGA (Pin Grid Array).

DIP package PGA package


3. Architecture d’un Microprocesseur

Unité d’entrée/sortie Unité de


Processeur commande/ Programme
Control
Entrée

Registres UAL Données


Sortie
Mémoire
3. Architecture d’un Microprocesseur

Le Microprocesseur est l’unité de calcul et de traitement d’un ordinateur, il


est composé :
1. D’une unité arithmétique et logique UAL (ALU) qui effectue les opérations.
2. Des registres pour stocker les Données.
3. D’une unité de contrôle qui coordonne les opérations.
3. Architecture d’un Microprocesseur
3.1. Unité arithmétique et Logique (UAL)

L’UAL permet d’exécuter les opérations:


1. Arithmétique: Addition, soustraction, négation, multiplication, division, …
2. Logique: And, Or, XOR,...
3. Rotation à droite, Rotation à gauche, décalage à droite, Décalage à gauche.
3. Architecture d’un Microprocesseur
3.2. Registres

Les registres sont des éléments mémoire de n ( n= taille du registre) bits qui
permettent de stocker des données.
1. On a des registres de 8 bits (1 octet), 16 bits (2 octets), 32 bits (4 octet), …
2. Les registres du Microprocesseur 8086 sont de 16 bits.
3. Architecture d’un Microprocesseur
3.2. Registres

Il existe plusieurs types de registres dans un μP:


1. Registres généraux : registres tampon pour effectuer les opérations.
2. Registres d’index et de segments : Ils permettent de sélectionner les blocs mémoire
à adresser.
3. Registres de pointeurs : Ils contiennent des adresses des codes utiles.
4. Registre d’état : Il contient des indicateurs (flags) sur l’opération exécutée.
3. Architecture d’un Microprocesseur
3.2.1. Registres Généraux
Pour le 8086:
 4 Registres généraux : AX, BX, CX et DX de 2 octets (16 bits).
 Chaque registre général est composé de deux registres de 1 octets (8 bits):
AX est composé de AH et AL CX est composé de CH et CL
BX est composé de BH et BL DX est composé de DH et DL

AX

AH AL
3. Architecture d’un Microprocesseur
3.2.2. Registres d’index et de Segment

Pour le 8086:
 2 Registres d’index : SI (Source Index) et DI (Destination Index). (A revoir dans le
chapitre 2 – Modes d’adressage).
 4 Registres de Segments: CS (Code Segment), DS (Data Segment), ES (Extra
Segment) et SS (Stack Segment). (A revoir dans la partie – organisation de la
mémoire).
3. Architecture d’un Microprocesseur
3.2.2. Registres de Pointeur

Pour le 8086:
 3 Registres de Pointeur : IP (Instruction Pointer), SP (Stack Pointer) et BP (Base
Pointer).
3. Architecture d’un Microprocesseur
3.2.4. Registre d’état (les Flags)

Pour le 8086:
1. Over flow Flag (OF)
 Cet indicateur est positionné à 1 si le dernier résultat a débordé de la taille du registre.
2. Direction Flag (DF)
 Cet indicateur est positionné à 1 si le transfert de données se fait en décrémentant les
offsets.
 Il est positionné à 0 si le transfert de données se fait en incrémentant les offsets.
3. Architecture d’un Microprocesseur
3.2.4. Registre d’état (les Flags)

Pour le 8086:
3. Interrupt Flag (IF)
 Cet indicateur est positionné à 1 si les interruptions sont autorisées.
4. Sign Flag (SF)
 Cet indicateur est positionné à 1 si la dernière opération a générée un résultat négatif.
3. Architecture d’un Microprocesseur
3.2.4. Registre d’état (les Flags)

Pour le 8086:
5. Zero Flag (ZF)

 Cet indicateur est positionné à 1 si la différence entre deux opérandes est nulle.
3. Architecture d’un Microprocesseur
3.2.4. Registre d’état (les Flags)

Pour le 8086:

6. Auxiliary carry Flag (AF)


 Cet indicateur est positionné à 1 si la dernière opérande a générée une retenue du bit
numéro 3 vers le bit numéro 4.
 Sous DEBUG:
AC (Retenue auxiliaire)
NA (Pas de Retenue auxiliaire)
3. Architecture d’un Microprocesseur
3.2.4. Registre d’état (les Flags)

Pour le 8086:
7. Parity Flag (PF)
 Cet indicateur est positionné à 1 si dans les 8 bits de poids faible du résultats de la dernière
opération, le nombre de bits à 1 est pair.
8. Carry Flag (CF)
 Cet indicateur est positionné à 1 si la dernière opération a générée une retenue.
4. Mémoire

Mémoire

• La mémoire est l’élément de stockage des programme

informations (programme et données)

Données
4. Mémoire

• Il existe 2 types de mémoire:


• Mémoire morte (ROM) : Read Only Memory
• Mémoire à lecture seulement
• Plusieur types de ROM : PROM, EPROM, EEPROM

• Mémoire vive (RAM) : Random Access Memory


• Mémoire à écriture et lecture
• 2 types de RAM : Dynamique (DRAM) et Statique (SRAM)
4. Mémoire

Schéma d’une mémoire


4. Mémoire

Connexion de la mémoire avec un microprocesseur


4. Mémoire

Organisation d’une mémoire de 256 octets (2048 bits ou 2kbits)


4. Mémoire
4.1. Organisation de la mémoire

• Une mémoire est composée de N cellules (ou cases);


• chaque cellule contient un nombre fixe de bits (1 Octet ou 8 bits pour le
microprocesseur 8086);
• Chaque cellule est repérée par un numéro unique qui est l’adresse de la cellule
(20 Bits pour le microprocesseur 8086).
4. Mémoire
4.2. Taille de la mémoire
• Avec un bus d’adresse de N bits le μP peut adresser 2N cellules
• 8 bits --> 28 = 256 cellules
• 16 bits --> 216 = 65 536 cellules ou 64 k cellules
• 20 bits --> 220 = 1 048 576 cellules de 1 octet chacune (pour le µprocesseur 8086)
• 32 bits --> 232 = 4 G cellules
• Taille en bits d’une Mémoire est:
• Taille(bits) = 2N *n Avec N :Nombre de bits par cellules

Vous aimerez peut-être aussi