Académique Documents
Professionnel Documents
Culture Documents
3.1. Généralités
Barrette de RAM de 64 MB
Il existe différents types ou méthodes d’accès suivant les fonctions mémoire désirées:
• Accès séquentiel (temps d’accès linéaire) : pour accéder à une donnée, il faut
parcourir toutes celles qui la précèdent. Ex : bandes magnétiques.
• Accès direct ou aléatoire ou sélectif (temps d’accès constant) : la donnée
possède une adresse propre qui permet de la localiser directement. Ex :
mémoire RAM.
• Accès semi- séquentiel ou mixte : C’est une combinaison entre l’accès direct et
l’accès séquentiel (ex : Disque dur). Pour un disque magnétique, l’accès à la piste
est direct, puis l’accès au secteur est séquentiel.
• Accès par contenu ou accès associatif (temps d’accès constant) : la donnée est
identifiée par une clé de recherche dans une table (mémoire cache).
- La capacité : c’est le nombre total de bits que contient la mémoire. Elle s’exprime
aussi souvent en bits ou en octet.
- Le format des données : c’est le nombre de bits que l’on peut mémoriser par
case mémoire. On dit aussi que c’est la largeur du mot binaire mémorisable.
- Le temps d’accès : c’est le temps qui s’écoule entre l’instant où on a lancé une
opération de lecture/écriture en mémoire et l’instant où la première donnée est
disponible sur le tampon entrée/sortie.
On rencontre :
3.2.1. Constitution
Pour utiliser toute la surface de la puce, les cellules mémoires doivent être réparties en
colonnes (profondeur de la mémoire) et en lignes (largeur de la mémoire) sous forme
de matrice. Chaque mot binaire (case mémoire) est affecté d’une adresse qui indique
son emplacement.
Dans le cas général, il existe plusieurs boîtiers mémoire sur la carte, tous
branchés sur le même bus données. Dans ce cas, il est nécessaire de construire un
signal qui permettra à un seul boîtier d'accéder au bus de données. Ce signal est appelé
« chip select » (CS : sélection de boîtier) ou « chip enable (CE : validation de boîtier). Il
faut créer autant de CS qu'il y a de boîtiers mémoires (CS0, CS1, CS2, …).
Architecture des Microprocesseurs – Janvier 2012 III - 6
Ir. Paul KAPULULA MUMBA Dubois
En-1 E1 E0 : entrées de données
Tampons d’entrée
Entrées d’adresses
D
Ao Ak-1 RD/WR Cs Vcc
E Registre 0
C
O Registre 1
---
D
A0 E Registre 2
A1 U
R C.I.
--- A --- Mémoire
Ak-1 D --- N x n eb.
R ---
E
S
S Registre N-1 ----
E
En-1/Sn-1 …… E1/S1 E0/S0 M
Tampons de sortie
009H 14H
---- ---
003H 05H
002H A4H
001H 05H
000H 7EH
Remarque
- Un plan mémoire est l'assemblage de plusieurs boîtiers pour former une mémoire de plus
grande capacité.
- L'assemblage horizontal (en largeur) permet de réaliser des mémoires de mots plus grands,
les boîtiers partagent le même bus adresses et de contrôle.
- Tandis que l'assemblage vertical (en profondeur) augmente la capacité (taille) mémoire du
micro-ordinateur, les boîtiers partagent le même bus de données.
Chronogramme d’écriture
Ce sont des mémoires volatiles, généralement utilisées pour stocker les informations
variables (données) dans un système à µP. On peut y lire, y écrire à volonté. On
rencontre dans cette famille des :
- RAM statiques (SRAM)
- RAM dynamiques (DRAM).
3.3.1. SRAM
Un bit mémoire d'une RAM statique est composé d'une bascule (Flip flop). Tant que le
circuit est alimenté, l'information est sauvegardée.. Chaque bascule contient 4 à 6
transistors.
Les transistors T3 et T4 servent d'interrupteurs et sont passants lorsque ce point mémoire est
sélectionné. Lors d'une écriture, une tension appliquée sur X et son inverse provoque le
positionnement de Q et de . La lecture se fait à l'aide d'un amplificateur
icateur de lecture.
3.3.2. DRAM
Une RAM dynamique stocke un bit d'information sous la forme d'une charge. Elle utilise
pour cela l'effet capacitif de certaines fonctions des semi-conducteurs
semi conducteurs. Basée sur la
charge de condensateurs grille substrat d’un transistor MOS (condensateur
condensateur chargé = 1,
condensateur déchargé = 0) 0
condensateur
- DRAM EDO (Extended data Output) : Elle est structurée comme la DRAM, à une petite
différence près : un petit circuit a été ajouté, qui agit comme une minuscule zone de
stockage ou tampon servant à sauvegarder les adresses. Ce tampon reçoit l’adresse de
la prochaine donnée à lire ou à écrire avant même que la donnée précédemment lue ou
écrite ait été traitée.
3.3.4. Comparaison
Une Cellule mémoire d'une RAM dynamique occupe 4 fois moins de place que celle
d'une RAM statique.
Avantages : plus grande densité d’intégration et moins coûteuse qu'une RAM statique
(plus rapide).
Architecture des Microprocesseurs – Janvier 2012 III - 11
Ir. Paul KAPULULA MUMBA Dubois
Inconvénient : Mais il faut un circuit supplémentaire de rafraîchissement. Le
rafraîchissement retarde les accès à la mémoire (1 à 5%).
Application : réalisation de la mémoire vive des ordinateurs (barrettes mémoire SIMM :
Single In-line Memory module).
3.4.1. Définition
Inconvénients
- Écriture impossible ;
- Modification impossible (toute erreur est fatale) ;
- Délai de fabrication masque : 3 à 6 semaines ;
- Obligation : fabrication en grandes quantités.
Inconvénients
- Écriture impossible ;
- Modification impossible (toute erreur est fatale).
Pour faciliter la mise au point d'un programme ou tout simplement permettre une
erreur, il serait intéressant de reprogrammer une PROM. Pour cela, la technique du
claquage ne le permet pas et de plus génère des déchets dans le silicium. Ce qui
provoque un vieillissement prématuré de la mémoire.
3.4.4.
Mémoires mortes effaçables et programmables (EPROM :
Erasable PROM)
Appelée aussi UVPROM : ROM programmable électriquement
avec un programmateur et effaçable par exposition à un rayonnement ultraviolet
pendant 30 minutes.
Avantages :
Comportement d'une RAM non Volatile.
Programmation et effacement mot par mot possible.
Inconvénients :
Très lente pour une utilisation en RAM.
Coût de réalisation élevé.
Les boîtiers mémoires possèdent une broche notée CS ou CE. Lorsque cette
broche est active (état bas), le circuit peut être lu ou écrit. Lorsqu’elle est inactive (état
haut), le circuit est exclu du service : ses broches de données D0 à D7 passent à l’état
de haute impédance : tout se passe comme si la mémoire était déconnectée du bus de
données du µP, d’où la possibilité de connecter plusieurs boîtiers mémoires sur un
même bus : un seul signal CS doit être actif à un instant donné pour éviter les conflits
entre les différents boîtiers.
Ainsi notre mémoire répondra bien aux adresses allant de 000 hexa à 1FFF hexa. Mais
elle ne forcera ses sorties sur le bus de données que lorsque l’activation du signal de
lecture RD provoquera l’activation des sorties (Output Enable, OE).
Les trois bits A13, A14 et A15 utilisées précédemment fournissent en fait 8
combinaisons, de 000 à 111, d’où la possibilité de connecter jusqu’à 8 boîtiers mémoire
de 8 Ko sur le bus. La mémoire totale implantée devient donc de 8 × 8 Ko = 64 Ko :
valeur maximale possible avec 16 bits d’adresses.
3.6.1. Problème
L’écart entre le µP et la mémoire centrale ne cesse de s’accroître. En effet, les
composants mémoire bénéficient des mêmes progrès technologique que les µP, mais le
décodage des adresses et la lecture/écriture d’une donnée sont des étapes difficiles à
accélérer. Ainsi, le temps de cycle processeur décroît plus vite que le temps d’accès
mémoire entraînant un goulot d’étranglement. La mémoire n’est plus en mesure de
délivrer des données aussi rapidement que le processeur est capable de les traiter. Il
existe donc une latence d’accès entre ces deux organes.
3.6.2. Principe
Depuis les années 1980, une des solutions utilisées pour masquer cette
latence est de disposer une mémoire très rapide entre le µP et la mémoire centrale
(MC). Elle est appelée cache mémoire. On compense ainsi la faible vitesse relative de la
mémoire en permettant au µP d’acquérir les données à sa vitesse propre. On la réalise à
partir de cellule SRAM de taille réduite (à cause du coût). Sa capacité mémoire est donc
très inférieure à celle de la mémoire principale (MP) et sa fonction est de stocker les
données les plus récentes ou les plus souvent utilisées par le µP. Au départ, la cache
mémoire était intégrée en dehors du µP mais elle fait maintenant partie intégrante du
µP et se décline même sur plusieurs niveaux.
2. Soit la donnée ou l’instruction n’est pas dans la cache et le contrôleur de cache envoie
alors une requête à la mémoire principale. Une fois la donnée récupérée, il la renvoie
au µP tout en la stockant dans la cache. On parle de défaut de cache.
La mémoire cache de second niveau (appelée L2 Cache, pour Level 2 Cache) est située
au niveau du boîtier contenant le processeur (dans la puce). Le cache de second niveau
vient s'intercaler entre le processeur avec son cache interne et la mémoire vive. Il est plus
rapide d'accès que cette dernière mais moins rapide que le cache de premier niveau.
Tous ces niveaux de cache permettent de réduire les temps de latence des différentes
mémoires lors du traitement et du transfert des données. Pendant que le processeur
travaille, le contrôleur de cache de premier niveau peut s'interfacer avec celui de second
niveau pour faire des transferts de
de données sans bloquer le processeur. De même, le cache
de second niveau est interfacé avec celui de la mémoire vive (cache de troisième niveau),
pour permettre des transferts sans bloquer le fonctionnement normal du processeur.
N.B.
Une cache est placée entre deux organes possédant des vitesses différentes. Quelquefois la cache
est matérielle, mais plus souvent elle est logicielle. Les caches ne sont parfois utilisées que pour
emmagasiner de données,, elles peuvent posséder également leur propre logique leur permettant de
se vider et lire d'avance (prefetch) ce qu’on
qu risque d'avoir besoin plus tard.
Une file est constituée de n registres à décalage comptant chacun m cases. Le nombre n
correspond à la largeur des mots, alors que m est la profondeur de la file ou sa capacité. Un registre
interne indique l'état (libre ou occupé) de chacun des étages. La logique de contrôle décale
automatiquement chaque étage occupé vers un étage libre.
*
** **