Vous êtes sur la page 1sur 14

CHAPITRE VIII

ARCHITECTURE DES MEMOIRES ET DES PROCESSEURS

Objectifs :

- Savoir la structure interne d‟une mémoire


- Connaître l'adressage des mémoires
- Comprendre les méthodes d‟association des mémoires
- Savoir la structure interne d‟un processeur
- Comprendre la connexion entre le processeur et les mémoires
- Comprendre les étapes d‟exécution d‟un programme par un processeur

Sommaire

I- Définition et schéma fonctionnel


II- Classification de mémoires
III- Interfaçage Mémoire-Processeur
IV- Le processeur
Chapitre VIII Architecture des mémoires et des processeurs

CHAPITRE VIII

ARCHITECTURE DES MEMOIRES ET DES PROCESSEURS

I- Définitions et schéma fonctionnel


Mémoire : Unité Fonctionnelle qui peut recevoir, conserver et restituer des informations.
Cellule mémoire : Plus petite subdivision d'une mémoire dans laquelle un élément
d'information peut être introduit, conservé ou extrait.
Il existe différentes technologies de cellule qui caractérisent d'ailleurs la catégorie de mémoires
associées. Conceptuellement, on représentera souvent une cellule mémoire par un registre de n
bits c'est a dire n bascules D synchronisée sur la même horloge. Les n bits caractérisent le
format de donnée que l'on peut mémoriser : Historiquement 8 bits (un octet), on trouve
aujourd'hui des mémoires de 16, 32 voir 64 bits. Ils sont notés Dn, Dn-1, …, D0.

D7 D1 D0

Q7 Q1 Q0 H signal d‟horloge

Fig 1 : représentation d'une cellule mémoire de 8 bits

Chaque mémoire contient un grand nombre de cellules élémentaires. Pour sélectionner une
cellule particulière parmi les autres, on identifie chaque cellule par un numéro unique que l'on
appellé adresse. Cette adresse est elle-même codée en binaire et est notée An, An-1, …, A0. Bien
sur, plus la mémoire a une capacité importante, plus n est grand. La taille de la cellule mémoire
est totalement indépendante de celle de l'adresse. Pour spécifier complètement une mémoire, il
est bien indispensable de donner les deux paramètres, par exemple : 32k x 8 caractérise une
mémoire contenant 32768 cellules de 8 bits chacune.
Les cellules élémentaires mises à la suite forment un tableau (espace mémoire). Chaque ligne
correspond à une adresse unique. Toutes les adresses transitent par les mêmes fils qui forment
le bus d'adresse Toutes les données écrites dans les cellules élémentaires transitent également
par un réseau unique de fils appelé bus de données. Il existe symétriquement le bus de
données en lecture qui est souvent commun avec le précédent, on parle alors de bus de
données bidirectionnel. Le sens de transfert est alors défini par le signal supplémentaire R/W
et la validation par cs (bus de contrôle).

32
Chapitre VIII Architecture des mémoires et des processeurs

Mémoire et bus

Principe simplifié d’un circuit de mémoire (Mémoire unidimensionnelle)

33
Chapitre VIII Architecture des mémoires et des processeurs

Mémoire bi-dimentionnelle

Dans une mémoire bi-dimentionnelle, les mots mémoires (ici, des mots de 8 bits) sont
organisées selon un tableau bi-dimensionnel: entrées E et sorties S sont reliées à tous les mots
mémoires. Un seul mot est actif pour l'écriture (R/W = 0 et CS = 0) car un seul couple ligne-
colonne est à 1. Ceci est assuré par les décodeurs de ligne et de colonne d'entrées
respectivement AL et AC.
En ce qui concerne la sortie, on remarque que la sortie de chaque mot mémoire d'une même
colonne est reliée à un même bus via une porte trois-états Pour la lecture (R/W = 1 et CS = 0),
le principe est alors le même que pour les sorties des mots mémoire par colonne, le décodeur de
ligne n'activant qu'une seule porte trois-états par colonne.

34
Chapitre VIII Architecture des mémoires et des processeurs

II- Classification de mémoires

1- Types de mémoires :

De nos jours, on identifie différents types des mémoires à semiconducteurs.

Fig. 3: types de mémoires


a) Mémoires mortes :
 ROM : Read Only Memory. Mémoire à lecture seule, sans écriture. Son contenu est
programmé une fois pour toutes par le constructeur. Avantage : faible coût.
Inconvénient : nécessite une production en très grande quantité.
 PROM : Programmable Read Only Memory. ROM programmable une seule fois par
l‟utilisateur en faisant sauter des fusibles.
 EPROM : Erasable PROM, appelée aussi UVPROM. ROM programmable
électriquement avec un programmateur et effaçable par exposition à un rayonnement
ultraviolet pendant 30 minutes. Avantage : reprogrammable par l‟utilisateur.
 EEPROM : Electrically Erasable PROM. ROM programmable et effaçable
électriquement. Application : les EEPROM contiennent des données qui peuvent être
modifiées de temps en temps. Avantage : programmation sans extraction de la carte et
sans programmateur. Inconvenient: coût élevé.
b) Mémoires vives :
 SRAM : Static Random Access Memory. Mémoire statique à accès aléatoire, à base de
bascules à semiconducteurs. Avantage : très rapide, simple d‟utilisation.
 DRAM : Dynamic RAM. Basée sur la charge de condensateurs : condensateur chargé
= 1, condensateur déchargé = 0. Avantage : intégration élevée, faible coût. Inconvénient :
Moins rapide, nécessite un rafraîchissement périodique à cause du courant de fuite des
condensateurs.

2- Classification des mémoires par leur capacité et leur vitesse:


Pour des raisons technologiques (l'augmentation de la taille d'une mémoire s'accompagne
toujours de l'augmentation du temps d'accès) et des raisons économiques (plus vite = plus cher),
on utilise différents types de mémoires. La vitesse d'une mémoire (temps d'accès et débit) est
inversement proportionnel à sa taille usuelle". On a le schéma suivant :

35
Chapitre VIII Architecture des mémoires et des processeurs

III- Interfaçage Processeur-Mémoire

1-Localisation de différentes mémoires et du processeur dans un ordinateur :

Localisation de différentes mémoires et du processeur dans un ordinateur

2-Communication entre le processeur et la mémoire :

Le principe de la communication entre le processeur et la mémoire peut être représenté par le


schéma suivant qui illustre les opérations de lecture et d‟écriture dans la mémoire.

36
Chapitre VIII Architecture des mémoires et des processeurs

MC : Mémoire centrale

Interfaçage d’un microprocesseur avec une mémoire

3- Interfaçage d’un processeur avec plusieurs mémoires :

Dans la réalité, un système à microprocesseurs possède toujours plusieurs mémoires séparées


(au moins une RAM et une ROM). Cet ensemble est vu comme une mémoire unique globale
par le microprocesseur et est appelé espace d'adressage.
Comme le bus de données est commun à toutes les mémoires, il est indispensable d'ajouter des
composants logiques pour activer une mémoire à la fois en fonction de l'adresse qui nous
intéresse. Cette tache est classiquement dévolue à des démultiplexeurs ou des décodeurs dont
le rôle est d'activer le bon /cs.

37
Chapitre VIII Architecture des mémoires et des processeurs

Interfaçage d’un microprocesseur avec huit mémoires (Utilisation d’un décodeur 32 vers 8)

IV- Le processeur :
Un processeur est un circuit électronique qui peut compter des millions de transistors.
L'unité centrale de traitement (UCT ou CPU : Central Processing Unit), encore dénommée
processeur ou microprocesseur, est l'élément de l'ordinateur qui interprète et exécute les
instructions d'un programme.
Les instructions à exécuter par le microprocesseur doivent être tout d‟abord transférées de la
mémoire centrale pour être logées dans l‟UCT.
Une instruction est composée de deux parties : l‟action et les opérandes.
- L‟action est l‟opération à exécuter telle que l‟addition, la soustraction…
- Les opérandes sont les données sur lesquelles l‟action va opérer.
Le processeur se compose essentiellement des parties suivantes :
- L‟unité de commande
- L‟unité de traitement
- Les registres
- Et éventuellement une mémoire cache

1- L’unité de commande :
Elle permet de séquencer le déroulement des instructions. Elle effectue la recherche en
mémoire de l'instruction, le décodage de l‟instruction codée sous forme binaire. Enfin elle
pilote l‟exécution de l‟instruction.

39
Chapitre VIII Architecture des mémoires et des processeurs

Les blocs de l‟unité de commande :


a. Le compteur de programme (PC : Program Counter) appelé aussi Compteur Ordinal
(CO) :
Il est constitué par un registre dont le contenu est initialisé avec l'adresse de la première
instruction du programme. Il contient toujours l‟adresse de la prochaine instruction à exécuter.
b. Le registre d'instruction et le décodeur d'instruction :
Chacune des instructions à exécuter est transférée depuis la mémoire dans le registre instruction
puis est décodée par le décodeur d‟instruction.
c. Bloc logique de commande (ou séquenceur) : Il organise l'exécution des instructions au
rythme d‟une horloge. Il élabore tous les signaux de synchronisation internes ou externes (bus
de commande) du microprocesseur en fonction de l‟instruction qu‟il a à exécuter. Il s'agit d'un
automate réalisé de façon microprogrammée.

2- L’unité de traitement :
Elle regroupe les circuits qui assurent les traitements nécessaires à l'exécution des instructions.

Les blocs de l‟unité de traitement :


a. Les accumulateurs sont des registres de travail qui servent à stocker un opérande au début
d'une opération arithmétique et le résultat à la fin de l'opération.

40
Chapitre VIII Architecture des mémoires et des processeurs

b. L’Unité Arithmétique et Logique (UAL) est un circuit qui assure les fonctions logiques
(ET, OU, Comparaison, Décalage, etc…) ou arithmétiques (Addition, soustraction…).
c. Le registre d'état est généralement composé de 8 bits à considérer individuellement. Chacun
de ces bits est un indicateur dont l'état dépend du résultat de la dernière opération effectuée par
l‟UAL. On les appelle indicateur d’état ou flag ou drapeaux. Dans un programme le résultat du
test de leur état conditionne souvent le déroulement de la suite du programme. On peut citer par
exemple les indicateurs de : Retenue (carry : C), Débordement (overflow : OV ou V), Zéro
(Z)

Ci-dessous, un exemple simple d‟une UAL à 1 bit (Addition, ET, OU, NON)

3- Le traitement des instructions :


Le microprocesseur ne comprend qu‟un certain nombre d‟instructions qui sont codées en
binaire. Une instruction est composée de deux éléments :
- Le code opération : C‟est un code binaire qui correspond à l‟action à effectuer par le
processeur
- Le champ opérande : Donnée ou bien adresse de la donnée.
La taille d'une instruction peut varier, elle est généralement de quelques octets (1 à 8), elle
dépend également de l'architecture du processeur.

La valeur du compteur de programme (PC) est placée sur le bus d'adresse par l'unité de
commande qui émet un ordre de lecture.
- Après le temps d'accès à la mémoire, le contenu de la case mémoire sélectionnée est
disponible sur le bus des données.
- L'instruction est stockée dans le registre d‟instruction du processeur.
L'unité de commande transforme l'instruction en une suite de commandes élémentaires
nécessaires au traitement de l'instruction.
- Si l'instruction nécessite une donnée en provenance de la mémoire, l'unité de commande
récupère sa valeur sur le bus de données.
- L‟opérande est stocké dans le registre de données.

41
Chapitre VIII Architecture des mémoires et des processeurs

Le séquenceur réalise l'instruction.


- Les drapeaux sont positionnés (registre d'état).
- L'unité de commande positionne le PC pour l'instruction suivante.

En resumé, le principe d„exécution d'un programme consiste à répeter le même


cycle d'opérations, appelé cycle “chercher-décoder-exécuter” présenté ci-dessous:

CO : Compteur ordinal (En anglais : Program Counter (PC))


RI : Registre d‟instruction.

42
Chapitre VIII Architecture des mémoires et des processeurs

Exemple d’application :
On donne les codes d‟instruction suivante

On se propose d‟exécuter le programme simple ci-dessous par un processeur

Etapes d’exécution de la première instruction :


0: 1010 charger dans ACC mot 10 (valeur 23)

On a utilisé les abréviations suivantes :


ACC (Registre accumulateur), SEQ (Séquenceur), UAL (Unité arithmétique et logique), Drap
(Registre d‟état), RI (Registre d‟instruction), RA (Registre d‟adresses), RM (Registre des mots
ou registre des données)

43
Chapitre VIII Architecture des mémoires et des processeurs

44
Chapitre VIII Architecture des mémoires et des processeurs

Identifier les étapes d‟exécution du reste de ce programme.

45

Vous aimerez peut-être aussi