Upload
neva-pouliquen
View
120
Download
0
Embed Size (px)
Citation preview
Les mémoires :
Mémoriser
Enregistrer
Conserver
Restituer
MémoriserEnregistrer
Conserver
Sur quel support physique ?
Suivant quel processus ?
Electronique
Magnétique
Optique
Autres...(quantique)
Séquentiel
Aléatoire
Restituer
A quelle fréquence ?
Rarement
Rapidement
Très rapidement
Liste ou Pilebande magnétiqueMémoire de masse
RAM
RAMROM
Disque dur
CD, DVD
Mémoire de masse ( HD)
RAM statique (cache 2ème niveau)
RAM statique (cache 1er niveau)
(Suivant quel processus ? Voir « Enregistrer »)
Souvent RAM dynamique ( SDRAM sur CM)
Type Elément de base Avantages Inconvénients
RAM Statique Bascule logique (20 tr)Très rapide, simple à utiliser,
pas de raffraîchissementFaible capacité
RAM DynamiqueCapacité gate substrat d’un
transistor MOS Rapide, grande capacité
Complexe à utiliserà cause du
rafraîchissementpériodique
ROMDiode câblée lors de la
fabrication du Circuit intégré
Grande capacité, mémoirepermanente,
Simple à utiliser
Coûteuse àfabriquer,
impossible à effacer,Rapide
UVPROM Transistor FAMOS
Capacité moyenne, mémoirepermanente,
Simple à utiliser,effaçable
Coûteuse à l’achat,nécessite un
équipement UVpour les effacer,
Lente
EEPROM Transistor MNOS
Capacité moyenne, mémoirepermanente,
Simple à utiliser,Effaçable électriquement
Coûteuse,Lente
Flash( EEPROM rapide)
Transitor MNOS idem Couteuse
Mémoire de masse Support magnétiqueou optique
Très grande CapacitéCoût très faible
Complexe à utiliser,très lente
Les technologies des composants électroniques ? ( à voir )
Organisation d'une mémoire RAM
Réseau Mémoire( stockage)
Entrée ( écriture) Sortie ( lecture)
Décodeur d'adresseA
dres
se
CS
HorlogeR/W
NB : Il existe d'autres organisations possibles : Liste ou pile, RAM associative, ...
Quelques technologies de Mémoires Vives
Statique :
SRAM
PBS
NVRAM
Dynamique :
DRAM
SDRAM
DRDRAM
DDR-SDRAM
QDR-RAM
VRAM
EDO
Un bit mémoire est réalisé par un composant logique appelé « bascule ».
Statis RAM 20 ns( Mémoire cache )
Pipelined synchronous Burst 4 ns ( µprogramme)
Non volatile RAM pile ( config BIOS, Horloge )
Un bit mémoire est réalisé par un condensateur ( capacité GS d'un MOS ).
Dynamic RAM ( il faut réécrire périodiquement la donnée : rafraîchissement 64 ms)
Synchronous RAM : synchrone avec la fréquence BUS 8 ns
Direct Rambus DRAM : synchrone avec le bus utilise les fronts montant et descendant. 1ns
Double Data Rate : deux accès par cycle horloge
Quad Data rate
Video RAM : Deux port d'IO ( 1 pour le processeur Video 1 pour le DAC ) 20ns
Extended Data Output 50ns DRAM avec buffer de sortie.Voir FPM acces Rapide à une zone mémoire ( page )
Apparence physique Ouvrons un PC
Organisation de la mémoire
En fonction de la taille du bus de donnée :
Le processeur accède en une seule fois :
8 bits de données soit 1 octet.
16 bits de données soit 2 octets.
32 bits de données soit 4 octets.
64 bits de données soit 8 octets.
n bits de données soit 2n/8 octets.
Cependant la plupart des systèmes actuels veulent pouvoir accéder à chaque octets indépendamment. Ce qui oblige à garder une organisation de la mémoire en cellule de 1 octet.
Définitions : ,
Un bit peut avoir la valeur 0 ou 1 . C'est la plus petite information possible.
Il peut être physiquement représenté par :
Une tension : 0 V représente 0, 5 V représente 1 technologie TTL.
Un courant : Pas de courant représente 0, un courant représente 1 ( différentiel : -i -> 0 et +i -> 1 )
De la lumière : 0 pas lumière, 1 lumière.Une fréquence, un changement de phase, un fraont montant ou descendant.
Une différence de tension : -V représente 0 et + V représente 1.
Dans une mémoire statique , un bit est mémorisé dans une bascule.Dans une mémoire dynamique, un bit est mémorisé dans une capacité ( chargé = 1 ou déchargé = 0 )
Un bit peut être : acquis, transmis, mémoriser.
Une cellule de mémoire est la plus petite quantité de mémoire directement adressable.Chaque cellule a sa propre adresse. La cellule d'adresse A est suivi de la cellule d'adresse A+1.
Un mot correspond à la taille des registres de travail et souvent à la taille du bus de données.
Si la taille des bus d'adresses ( et donc des registres d'adressage) est de n bits alors le nombrede cellules adressables est de 2n.
Dans les microordinateurs actuels, une cellule comprend 8 bits càd 1 octet.
Le pentium avec L'architecture IA32, la taille du mot est de 32 bits soient 4 octets.Le pentium avec L'architecture Intel64, la taille du mot est de 64 bits soient 8 octets.
Par exemple : si la cellule est l'octet, la taille du bus d'adresse 20 alors le processeur peut adresser 220 = 1048576 soit 1 Mo.
Hiérarchie des mémoires
On peut distinguer trois niveaux de mémoire dans un ordinateur :
Registres
Mémoire demasse
Mémoire centraleRAM
Capacité
Vit
esse
d'a
ccès
Registres
Mémoire demasse
Mémoire centraleRAM
Capacité
Vit
esse
d'a
ccès
On peut tenir compte de la mémoire cache
Mémoire Cache
Avec le Pentium IV
Modèle d'organisation de la mémoire
Segmenté
Simple
Paginé
Selecteur de segment
Mémoire virtuelle
La longueur des mots adresses correspondent au bus d'adresse
La longueur des mots adresses est plus petite que celle du bus d'adresse
La mémoire physique est découpée en page
Faire croire que la mémoire du système est beaucoup plus grande que la mémoire physique.
Un segment est repéré par un numéro dans une table de descripteurs.
Simple La longueur des mots adresses correspondent au bus d'adresse
Modèle d'organisation de la mémoire
Adresse 16 bits64 Ko de mémoireadressable
0
FFFFh
NB : pour un processeur 32 ou 64 bits, ce modèles'appelle FLAT et utilise des registres d'adresses 32 ou64 bits.
Segmenté
Modèle d'organisation de la mémoire
Adresse physique20 bits
1Mo de mémoireadressable
0
FFFFFh
La longueur des mots adresses est plus petite que celle du bus d'adresse.
Mots adresse 16bits
Segment 16 bits
50002
0002
5000
Exemple : on veut adresser l'octet n° 50002h
Registre de segment
On utilise un registrepréalablement initialisé appelé :
Index :
Segment :
Adresse mémoire :
Modèle d'organisation de la mémoire
Adresse 30 bits
1Go de mémoireadressable
0
3FFFFFFFh
Modèle Paginé : La mémoire physique est découpée en pages.
Si la taille de la page est de 16 octets.
Adresse sur 32 bits
Numéro de page
Offset page
Table de correspondancenuméro de page -> adresse physique
Modèle d'organisation de la mémoire
Adresse 32 bits
4 Go de mémoireadressable
0
FFFFFFFFh
Table de descripteur desegment
Selecteur de segment : Un segment est repéré par un numéro dans une table de descripteurs.
déplacement 16 bits ou 32 bits
Numéro de Segment 16 bits
Registre descripteur de segment
On utilise un registre préalablement initialisé appelé :
A laquelle on ajoute un déplacement (offset)
Mot adresse 32 bits
Modèle d'organisation de la mémoire
Adresse 30 bits
1Go de mémoireadressable
0
3FFFFFFFh
Mémoire virtuelle Faire croire que la mémoire du système est beaucoup plus grande que la mémoire physique.
Si la taille de la page est de 64k octets.
Adresse sur 32 bits
Numéro de page Offset page
Table de correspondancenuméro de page -> adresse physiqueIndicateur de présencePosition dans la mémoire de masse.
La table des pages comprend un indicateur pour savoirsi la page existe dans la mémoire physique.
Si la page n'est pasen mémoire RAMalors demandé à l'OS d'aller la liredans la mémoire demasse.
C'est une « amélioration » d'un modèle paginée ou à sélecteur.
Contrôle d'intégrité de la mémoire
Que se passe-t-il si une des cases mémoires ne fonctionne pas bien ?
Pe : le processeur place 0 dans une cellule mais la cellule enregistre 1.
Comme le processeur est un automate cela peut conduire à un état indéterminé ( bug).
Il faut absolument détecter se type d'erreurs.
La méthode la plus simple est le Test de parité :
le principe : ajouter une information redondante.
bit de parité : on ajoute un bit qui indique si le nombre de bit 1 dans un octet de mémoire est pair. A la lecture, un mécanisme vérifie si le le bit de parité correspond à la parité de l'octet.Sinon c'est qu'il y a au moins 1 erreur.
Exemple :
01010011 Contient un nombre paire de bit 1 donc le neuvième bit (caché) est 1.On écrit
A la lecture, on découvre 00010011 Dont la parité devrait être 0.
Donc le mécanisme de vérification de parité déclenche une erreur appelé « Parity error ».
© F.Minon 2008
A suivre …