LA MEMOIRE

publicité
LA MEMOIRE
1. Les différents types de supports physiques
1.1 Format d'une barrette SIMM 8 bits
1.2 Format d'une barrette SIMM 32 bits
1.3 Format d'une barrette DIMM 64 bits
1.4 Format de la barrette RDRAM
2. Bancs de mémoire
2.1 Mémoire avec Parité et sans Parité
3. Structure physique de la mémoire
3.1 Architectures interne de la SRAM
3.2 Chronogramme des cycles d'accès
3.3 Cycle de lecture
3.4 Cycle d'écriture
3.5 Cycle de rafraîchissement
4. Description des différents types de mémoires
4.1 La mémoire FPM
4.2 La mémoire EDO
4.3 La mémoire BEDO
4.4 La mémoire SDRAM
4.5 La mémoire DDR SDRAM, QBM et DDR-II SDRAM
4.6 La mémoire QDR SDRAM et QDR-II SDRAM
4.7 La mémoire Rambus DRAM (RDRAM) et SLDRAM
4.8 La mémoire Auto-correctrice ECC et AECC
5. Taux de transfert des différents types de mémoires
6. Liens utiles
1. Les différents types de supports physiques
Il y a plusieurs manières d'intégrer physiquement des puces RAM à la carte mère ou à la carte d'extension. Les systèmes
anciens utilisent des puces mémoire séparées, appelées des puces DIP (à doubles rangées de broches), qui étaient
raccordées par des connecteurs ou soudées directement à une carte.
La plupart des systèmes modernes utilisent des barrettes mémoires appelées SIMM ( Single In-line Memory Module =
module mémoire à simple rangée de broches de connexion ).
Ce type de module combine plusieurs puces sur une petite plaquette enclenchée dans un socle de maintien. Le module
SIPP est semblable à un SIMM, mais utilise des broches à la place du connecteur plat pour se connecter à la carte mère.
Il est possible de transformer une barrette SIPP en SIMM en supprimant les broches, ou de transformer une SIMM en
SIPP en soudant les broches. Certaines sociétés fabriquent des convertisseurs de SIPP en SIMM qui permettent au SIPP de
se brancher sur des connecteurs SIMM 30 broches conventionnels. Il existe donc actuellement 4 types de support de
mémoire. Les puce DIP, les barrettes SIPP, SIMM et DIMM. Viens ensuite la génération de mémoires, RDRAM.
Fig. 1: Des barrettes SIP, avec leurs fines pattes soudées sont presque aussi délicates à installer que les puces
traditionnelles
1.1 Format d'une barrette SIMM 8 bits
Fig. 2: Les barrettes SIMM 30 broches sont plus pratiques. L'échancrure à gauche évite qu'elles soient montées à
l'envers. Ce sont des barrettes 8 bits.
1.2 Format d'uns barrette SIMM 32 bits
Barrette SIMM 72 broches 32 bits
Montage d'une barrette SIMM 72 broches
L'échancrure au milieu et à gauche évite qu'elle soit montée
à l'envers.
1.3 Format d'uns barrette DIMM 64 bits
Barrette DIMM 168 broches en 64 bits.
Montage d'une barrette DIMM 168 broches
Les deux échancrures au milieu évitent de monter la barrette à l'envers. Ces
barrettes existent en 3,3 v et en 5 v. La positions des échancrures varie en fonction
de la tension de la barrette.
Barrette DIMM 184 broches en 64 bits.
On voit qu'ici il n'y a qu'une seul échancrure.
Ces barrettes existent en 2,5 v.
Barrette DIMM 208 broches en 64 bits (QBM).
On voit ici la serie de petit composants situés en
dessous des blocs mémoires.
Le format DIMM est utilisé, entre autre, par des mémoires de type SDRAM en 168 broches puis par des mémoires DDR
SDRAM et QDR SDRAM en 184 broches et le 208 broches pour les mémoires QBM.
1.4 Format de la barrette RDRAM
Ce sont des barrettes mémoires séries constituées de composants 16 bits ( ou 18 bits ) avec un connecteur de 184 broches.
On a donc une largeur de bus de 16 bits ( Oui j'ai bien dit 16 bits ). Ce type de mémoire a fait son apparition début 1999 et
aurait dut se généraliser en 2002 malheureusement sont prix était trop excessif par rapport à la DDR Ram. Ce qui a eu
pour conséquence de faire disparaître petit à petit ce type de mémoire.
2. Bancs de mémoire
Les barrettes mémoire ( SIPP, SIMM et DIMM ) sont organisées en bancs sur les cartes mères et les cartes mémoires.
Vous devez connaître l'agencement du banc de mémoire et sa position sur les cartes mères et les cartes mémoires quand
vous ajoutez de la mémoire au système. En outre, les diagnostics mémoire indiquent les emplacements des erreurs par
octet et par adresse et vous devez utiliser ces chiffres pour savoir où se trouve le banc défectueux. Les bancs de mémoire
correspondent, en général, à la capacité du bus de données du microprocesseur.
Le Tableau suivant montre la taille de chaque banc selon le type de PC :
Processeur
8088
8086
286
386SX, SL, SLC
386DX
486SLC,SLC2
486SX, DX, DX2,
DX4
Pentium
Bus de
données
8 bits
16 bits
16 bits
16 bits
32 bits
16 bits
Taille du banc
( Parité )
9 bits
18 bits
18 bits
18 bits
36 bits
18 bits
SIMM 30 broches par
banc
1
2
2
2
4
2
SIMM 72 broches par
banc
1 (4bancs)
1 (2bancs)
1 (2bancs)
1 (2bancs)
1
1 (2bancs)
32 bits
36 bits
4
1
64 bits
72 bits
8
2
Le nombre de bits de chaque banc peut être fait de simples puces ou de SIMM. Par exemple, dans un système 286 utilisant
un banc 18 bits, vous pourriez faire un bloc de 18 puces d'une capacité de 1 bit, ou utiliser quatre puces d'une capacité de 4
bits, pour les bits de données, et deux puces d'une capacité de 1 bit comme bits de parité. La plupart des systèmes
modernes n’utilisent pas de puces mais des SIMM. Si le système dispose d'un banc 18 bits, il utilisera plutôt des SIMM 30
broches, deux par banc. Toutes les barrettes SIMM d'un même banc doivent être de la même taille et du même type.
Comme vous pouvez le constater, les SIMM 30 broches sont moins intéressants pour les systèmes 32 bits parce que vous
devez en utiliser quatre par banc !
Ces SIMM n’étant disponibles qu’en 1 Mo ou 4 Mo, cela signifie qu'un banc doit faire 4 Mo ou 16 Mo de mémoire. II
n'y a pas de capacité intermédiaire.
L'utilisation de SIMM 30 broches dans un système 32 bits limite artificiellement la configuration de la mémoire et n'est
pas conseillé. Sur les systèmes 32 bits qui utilisent des SIMM 72 broches, chaque SIMM représente un banc séparé et
peut être ajouté ou enlevé individuellement, et non forcément par groupe de quatre. La configuration de la mémoire est
ainsi plus facile et plus souple. Par contre sur des systèmes 64 bits comme les Pentium II, les barrettes SIMM doivent être
utilisées par paires. Seules les barrettes DIMM de 64 bits peuvent être montées par unité.
La disposition physique sur les cartes mères ou les cartes mémoire est arbitraire, elle est déterminée par les constructeurs.
Vous pouvez choisir la disposition de votre carte mère ou de vos cartes d'extension en faisant des tests, mais cela prend du
temps et ce n'est pas toujours facile, surtout si vous avez des problèmes avec votre système. La documentation de votre
système ou de votre carte vous y aidera.
2.1 Mémoire avec Parité et sans Parité
Les mémoires avec parité sont des mémoires qui utilisent 1 bit supplémentaire pour stocker la parité d'un octet ( 8 bits ).
C'est à dire que lorsque le système écrit un octet, par exemple 0000 0010, il compte le nombre de bit qui sont à 1. Si ce
nombre est pair alors le bit de parité est mis à 0 sinon il est mis à 1. De même, à chaque lecture, le système recalcule le
nombre de bit à 1 et vérifie que le résultat correspond bien à la valeur stockée. Pour que le contrôle de parité soit effectué,
il faut au préalable qu'il soit activé dans le bios. Lorsqu'une erreur de parité est détectée, le système est toujours arrêté
brutalement avec un message du type :
'PARITY ERROR AT 0AB5:00BE. SYSTEM HALTED.'
Et cela pour les systèmes d'exploitation DOS, Windows v3.11 et Windows 95, car c'est une erreur matérielle classifiée de
'FATALE' et que l'on ne peut pas ignorer. Par contre certains systèmes comme Linux ou SCO-Unix, gèrent eux même
cette erreur soit en détournant l'interruption 02h soit en mettant à zéro le bit 7 du port 70h. Certain type de mémoire stocke
le nombre de bit impair au lieu du nombre de bit pair. Le tableau suivant fournit la valeur du bit de parité en fonction du
type de mémoire
Type
Parité pair
Parité impaire
Bits de données
0000 0000
1000 1001
Nombre de 1
pair
impair
Bit de parité
0
1
1000 1000
pair
1
0111 0000
impair
0
3. Structure physique de la mémoire
La mémoire est organisée sous la forme d'une grille dont chaque nœud correspond à un transistor. On utilise la capacité
résiduelle du transistor pour stoker l'information.



Le processeur envoie l'adresse complète au multiplexeur / démultiplexeur de la mémoire, le MUX, et spécifie s'il
s'agit d'une lecture ou d'une écriture.
Le circuit de multiplexage divise l'adresse en deux parties. Les bits de poids fort contiennent l'adresse de la ligne
et les bits de poids faibles l'adresse de la colonne. Le signal Row Adress Strob ( RAS ) est généré pour indiquer à
la DRAM qu'il s'agit d'une adresse ligne. Puis le signal Column Adress Strob ( CAS ) est généré pour indiquer à
la DRAM qu'il s'agit d'une adresse colonne.
Si une lecture est effectuée alors le bit, situé à l'intersection de la ligne et de la colonne, est envoyé sur la ligne de
donnée. Dans le cas contraire la donnée est écrite à la même intersection.
La mémoire est composée de transistors que l'on utilise comme des condensateurs. Afin de compenser les pertes de charge
de ces condensateurs la mémoire doit être régulièrement rafraîchie. Pendant le rafraîchissement, il n'y a pas d'accès
possible à la mémoire, ni en lecture ni en écriture. Le processeur doit attendre quelques cycles pour que le
rafraîchissement soit terminé. Ces temps d'attente, appelé en anglais Waitstates ou Temps de Latence, font chuter les
performances du système. On s'efforce donc de les réduire autant que faire se peut. Ils ne sont pas les mêmes pour tous les
composants, de sorte qu'il existe des composants de mémoire plus ou moins rapides.
Les temps d'accès s'évaluent en nano secondes et sont compris entre 40 ns et 120 ns. Une nano seconde vaut un
milliardième de seconde = 10-9 s ! ). Plus ce temps est long, plus le composant de mémoire est lent.
La vitesse de rafraîchissement ne peut pas s'adapter à la vitesse d'accès des composants de mémoire. Elle est tenue de
respecter des limites bien précises imposées par la construction de la carte mère. Pour les cartes mères modernes, on exige
en général un temps d'accès de 60 ns , 70 ns ou 80 ns. L'utilisation de composants de mémoire plus lents provoque en
général de graves erreurs de lecture alors que des composants plus rapides n'apportent aucun gain de vitesse
supplémentaire. Au contraire, les mémoires très rapides, par exemple avec 40 ns de temps d'accès nécessitent
éventuellement aussi un rafraîchissement plus rapide et si la carte mère ne le fournit pas en temps voulu, il y a de fortes
chances pour que la mémoire ait déjà tout oublié. La perte de performance due aux temps d'attente est très sensible sur les
cartes mères modernes cadencées à 100 MHz et davantage. Pour remédier à ce problème, on utilise deux procédés
fondamentalement différents, seuls ou combiné:
Un cache externe de mémoire statique, généralement de 256 Ko.
De nouvelles technologies des mémoires, les RAM EDO, BEDO, SDRAM, DDR SDRAM, QDR SDRAM et
RDRAM
3.1 Architectures interne de la SRAM
Il existe plusieurs type d'architecture interne des composants mémoires SRAM.
SyncBurst en Flow-throught, Pipelined SCD (Single cycle deselect), Pipelined DCD (Double cycle deselect).
ZBT (Zero Bus Turnaround ) Flow-throught et ZBT Pipelined.
QDR 2-word burst et QDR 4-word burst.
DDR 2-word burst et DDR 4-word burst avec des entrées/sorties communes ou séparées..
La composant mémoire SRAM de base ne change pas. Par contre ce qui change c'est la façon de gérer les entrées/sorties.
Par exemple le SyncBurst permet à 2 bus de gérer le composant. 4-word burst signifie que l'on peut lire en 1 seul cycle
une donné sur 64 bits. D'une façon générale, on vas surtout essayer avec le ZBT, DDR et QDR de diminuer les cycles
d'horloge utilisés entre les lectures/écritures et d'optimiser la gestion du décodage des adresses.
Exemple d'architecture DDR
3.2 Chronogramme des cycles d'accès
Les boîtiers de mémoire dynamique n'ont pas de commande de validation. Ce rôle est remplit par la conjonction des signaux
RAS et CAS. Il y a trois cycles de base pour une mémoire dynamique, le cycle de lecture, le cycle d'écriture et le cycle de
rafraîchissement
3.3 Cycle de lecture



TaccèsRAS : C'est le temps d'accès à partir de l'activation du signal RAS. Il s'agit du temps d'accès effectif en lecture.
TaccèsCAS :C'est le temps d'accès à partir de l'activation du signal CAS.
TpréchargeCAS :C'est le temps de préchargement du signal RAS. Après chaque accès il faut garantir une certaine
durée d'inactivité ( RAS désactivé ) avant de pouvoir commencer un nouveau cycle ( par exemple de 60 ns ).
Le temps de cycle est l'intervalle de temps minimum séparant deux demandes d'accès successives en lecture ou en écriture
3.4 Cycle d'écriture
Le mode le plus fréquent est le mode "contrôlé par CAS". Le signal d'écriture RW est positionné avant le CAS ce qui
provoque l'écriture. Dans le mode 'late write cycle" on génère le signal RW après le CAS. Dans ce cas c'est le signal RW
qui provoque l'écriture. Cela permet de lire et d'écrire un mot en un seul cycle.

Twrite est la durée du signal RAS en écriture, il est souvent égale à TaccèsRAS.
3.5 Cycle de rafraîchissement
A l'intérieur du boîtier, le rafraîchissement se fait par ligne entière. Chaque accès provoque le rafraîchissement de toute la
ligne adressée.
Un mécanisme de rafraîchissement doit garantir l'accès périodique à chaque ligne, en fournissant son adresse accompagné
du signal RAS. Ceci dit, à ces caractéristiques temporelles s'ajoutent de nombreuses contraintes secondaires comme le
temps de prépositionnement des adresses avant le RAS et le CAS, la durée minimale du signal CAS, le temps de
prépositionnement de la donnée en écriture avant le RAS etc… Chaque modèle a ses contraintes particulières. Il peut y
avoir plus de 40 paramètres temporels…
4. Description des différents types de mémoires
4.1 Mémoire FPM DRAM.
Pour de la mémoire DRAM tout court, l'accès à une donnée se fait en modifiant le signal RAS et CAS pour chaque
lecture/écriture et ceci même si la donnée suivante se trouve sur la même ligne ou colonne.
Cycle de lecture de la mémoire FPM
Pour la mémoire FPM DRAM, lorsque la donnée se trouve sur la même ligne, la descente du signal RAS mémorise
l'adresse de la ligne durant tout l'accès. Donc pour accéder à plusieurs colonnes de cette ligne (dans un ordre quelconque),
il est juste nécessaire de présenter l'adresse de la colonne désirée dans la ligne sélectionnée par le RAS. Cela permet
d'accélérer l'accès aux données se trouvant sur la même ligne. On économise ainsi le Timing du RAS. Pour accéder à la
donnée, le signal CAS doit rester à l'état bas.
La notion de Fast Page vient du fait que la sélection de la ligne correspond à la sélection d'une page dans une livre et la
lecture dans cette page correspond à la lecture des différentes colonnes.
Cas de plusieurs accès consécutif :
La mémoire FPM ( Fast Page Mode ) existe en 70 et 60 ns. L'accès le plus rapide de la FPM est 5-3-3-3 ( à 66MHz )
contrairement à la RAM classique qui est de 5-5-5-5. En fait cela correspond au cycle CPU nécessaire à la lecture ou à
l'écriture. Cela signifie qu'il faut 5 cycles d'horloge pour lire/écrire la première donnée, puis 3 cycles pour les 3 autres. La
bande passante maximale est de 174 Mo/s.
4.2 Mémoire EDO.
Cette abréviation, signifie Extended Data Out. Les composants de cette mémoire permettent de conserver plus longtemps
l'information, on peut donc ainsi espacer les cycles de rafraîchissement. D'autre part, par rapport à la FPM, le signal CAS
n'a pas besoin d'être maintenu pour lire la donné, on peut donc anticiper sur le prochain Precharge Time de la mémoire,
c'est à dire le prochain cycle mémoire.
La RAM EDO, qui n'existe qu'en modules SIMM, nécessite une logique de rafraîchissement particulière. Elle ne peut
donc pas être utilisée sur les anciennes cartes mères de 486 ou de Pentium car les contrôleurs de mémoire de ces cartes ne
sont pas conçus à cet effet.
Si le CACHE secondaire constitue le remède le plus courant pour pallier la lenteur de la RAM par rapport à la vitesse des
processeurs, la mémoire EDO ( Extended Data Out ou HPM pour Hyper Page Mode) entend parvenir au même résultat (
pour certaines cartes mères non équipées de cache L2 ).
L'ajout d'un verrou de type D (D-Latch) permet de charger une nouvelle adresse en entrée sans attendre la validation d'une
donnée en sortie. Les cycles de latence entre deux lectures sont minimisés, d'où un fonctionnement de l'ordre de 50 MHz ,
contre 25 MHz pour de la DRAM à 70 ns en FPM. Non contente de s'adapter à la fréquence externe d'un processeur
comme le Pentium/100, voire le Pentium/133 en mode burst, la mémoire EDO n'engendre qu'un surcoût limité à 5 %.
Compatible avec la DRAM classique, elle exige toutefois une carte mère spécifique pour tourner à pleine vitesse.
Cycle de lecture de la mémoire EDO
La RAM EDO permet la réduction de la durée des cycles de mémoire en condensant la temporisation des CAS pour
obtenir plus de données en sortie d'une séquence d'accès. En cycle d'horloge cela se représente par 5-2-2-2. Des
augmentations de performances des ordinateurs de l'ordre de 15% sont possibles par rapport à la mémoire FPM DRAM.
Le débit maximum de la mémoire EDO DRAM se situe aux alentours de 264 Mo/s.
Toutefois, face à la popularité grandissante de la mémoire SDRAM ce type de mémoire devrait débuter son cycle de
désuétude vers la fin 1998.
4.3 Mémoire BEDO
La RAM BEDO (Burst Extended Data Out) est une évolution de la RAM EDO il s'agit d'une variante de l'EDO ou les
lectures et les écritures sont effectuées en mode rafale.
Le secret réside dans le mode Burst que l'on arrive à faire supporter à ces composants. On n'adresse plus chaque unité de
mémoire individuellement lorsqu'il faut y lire ou y écrire des données. On se contente de transmettre l'adresse de départ du
processus de lecture/écriture et la longueur du bloc de données ( Burst ). Ce procédé permet de gagner beaucoup de temps,
notamment avec les grands paquets de données tels qu'on en manipule avec les applications modernes.
La RAM BEDO permet d'accélérer les accès en mémoire de 50 % à 100 % pour atteindre 66 MHz. Cela suffit pour obtenir
un accès sans Wait States sur tous les systèmes Pentium existant à l'heure actuelle et ceci pour des frais de fabrication à
peine plus élevés que pour la classique DRAM.
Comme pour la "simple" RAM EDO, il faut aussi, pour la RAM BEDO, que la carte mère soit adaptée à la technologie en
question, c'est-à-dire qu'elle comporte un jeu de puces et un BIOS qui soient capables de supporter ce type de mémoire. La
RAM BEDO ne fonctionne pas sur les anciennes cartes mères, pas même sur celles qui comportent un support pour la
RAM EDO !
Malheureusement cette mémoire n'était supportée que par peu de chipsets, et posait des problèmes avec les bus cadencés à
plus de 66 MHz, d'ou une disparition très rapide du marché. L'accès le plus rapide de la BEDO est 5-1-1-1 à 66MHz.
4.4 Mémoire SDRAM
La Synchronuous Dynamic Random Access Memory est également une évolution de la classique DRAM.
Contrairement à la RAM BEDO, on a choisi ici un procédé très complexe pour accéder plus rapidement aux contenus de
la mémoire.
La SDRAM se compose en interne de deux bancs de mémoire et des données peuvent être lues alternativement sur l'un
puis sur l'autre de ces bancs grâce à un procédé d'entrelacement spécial. Le protocole d'attente devient donc tout à fait
inutile.
La SDRAM peut être cadencée à la même vitesse que le processeur, la deuxième génération de ces composants pouvant
atteindre des fréquences jusqu'à 160 MHz. On peut ainsi synchroniser les entrées/sorties avec l'horloge système, ce qui
accélère considérablement les échanges. La SDRAM maîtrise en outre le mode Pipelined Burst qui apporte un gain de
vitesse supplémentaire, comme pour la RAM BEDO.
La SDRAM n'est disponible qu'en modules DIMM. Il faut donc des emplacements spéciaux sur la carte mère et, comme
pour la RAM EDO et BEDO, un jeu de puces et un BIOS adaptés.
C'est la seule RAM actuelle a supporter un bus de 100 MHz ! Enfin du moins théoriquement, c'est ce qui était prévu. En
fait les SDRAM 10 ns étaient prévues pour passer à cette fréquence, mais dans la pratique cela ne sera vrai que pour les
SDRAM 10 ns de très bonne qualité. Logiquement les SDRAM supportant cette fréquence a coup sur ont des temps
d'accès de 8ns ...
La vitesse de la SDRAM se mesure normalement en MHz, alors que l'EDO se mesure en ns ( nano seconde ). Si les
SDRAM sont spécifiées à 10 ou 12 ns, ces vitesses ne sont pas comparables aux 60ns de l'EDO. Les 10 ns de la SDRAM
correspondent seulement à une partie du cycle entrées/sorties mémoire, alors que les 60 ns de l'EDO correspondent à un
cycle différent.
Sachez enfin que le changement de mémoire de l'EDO à la SDRAM n'apporte qu'un gain minime sur les performances
générales de la machine (1 à 2%).
L'accès le plus rapide de la SDRAM est 5-1-1-1 à 66MHz. Elle est donc synchrone avec l'horloge système pour la
lecture/écriture des 3 dernières données. La bande passante maximale est de 524 Mo/s à 66 Mhz puis à 800 Mo/s à 100
Mhz et à 1064 Mo/s en 133 Mhz.
4.5 Mémoire DDR SDRAM, QBM et DDR-II SDRAM
La DDR RAM peut être cadencée entre 100 Mhz et 200 Mhz. C'est une autre variante de la mémoire SDRAM. On utilise
souvent pour la dénommer le terme de PCxxxx ou xxxx correspond, en million d'octets, à la valeur arrondie du taux de
transfert théorique.
Type
PC1600
PC2100
PC2700
PC3000
PC3200
PC3500
PC3700
PC4000
Appellation
DDR200
DDR266
DDR333
DDR360
DDR400
DDR433
DDR466
DDR500
Fréquence du bus mémoire
100 Mhz
133 Mhz
166 Mhz
180 Mhz
200 Mhz
216 Mhz
233 Mhz
250 Mhz
Taux de transfert en Mo
1600
2133
2666
2880
3200
3500
3700
4000
La différence principale entre la SDRAM et la DDR SDRAM est que la DDR SDRAM a la capacité d'utiliser le front
montant et descendant du signal (horloge) pour transférer les données ce qui a pour conséquence de doubler ses
performances de transfert de données. Cela veux dire que pour 1 cycle d'horloge on peut transférer 2 groupes de mots.
C'est à dire que cette mémoire fonctionne comme une mémoire de type SDRAM qui serait cadencée entre 200 Mhz et 500
Mhz. Alors que le FSB (fréquence du bus processeur) à une fréquence qui varie de 100 à 250 Mhz. Le taux de transfert
maximum de la DDR SDRAM est de 4 Go/s avec un FSB de 250 Mhz.
Mémoire DDR RAM
Un nouvelle version de la DDR RAM sortira début 2003. Il s'agit de la DDR-II RAM 400 conforme aux spécifications
JTAG 1149.1. Des version à 533Mhz et 667 Mhz sont prévus pour 2004. Cependant des versions à 700 Mbits/s et 1 Gb/s
étaient déjà sorties en 2002 pour les cartes graphique de NVdia au format 165 FBGA (11*15). La principale amélioration
par rapport à la DDR Ram est l'optimisation du contrôleur logique qui permet de gérer le flux des entrée/sorties. Cela
permet, entre autre, d'augmenter la fréquence. La tension passe de 2,5V pour la DDR-RAM à 1,8V pour la DDR-II RAM.
Le circuit de contrôle des opération d'entrées/sorties ( Burst Logic ) passe de 4 bits à 2 bits, ce qui permet d'augmenter la
bande passante ( Voir les DataSheets du K7H163654A et K7I323682M de Samsung).
Type
PC4300
PC5400
Appellation
DDR II 533
DDR II 667
Fréquence du bus mémoire
266 Mhz
333 Mhz
Taux de transfert en Mo
4300
5400
Kentron Technology est un des 1er fabricant de barrettes QBM = Quad Band Memory. Il s'agit d'une autre façon de
gérer de la mémoire DDR. Le module mémoire fonctionne en 128-bit. Pour cela il utilise, de façon alternative, deux
canaux de 64-bit. On peut ainsi et avec une seule et unique barrette doubler la bande passante mémoire disponible.
Contrairement au système d'IBM qui prévois d'utiliser 2 barttes de DDR Ram. Le taux de transfert des barrettes QBM533,
basées sur des modules DDR266, sera de 4.2Go/sec. Alors que celui des barrettes QBM800, basées sur des modules
DDR400, sera de 6.4Go/sec en mode simple canal et de 12,8Go/s en mode "dual canal".
Mémoire QBM RAM
4.6 Mémoire QDR SDRAM et QDR-II SDRAM
La mémoire QDR RAM - Quad Data Rate RAM permettra d'avoir des débits dépassant les 10 Gb/s. Cette mémoire est
très similaire à la DDR SDRAM. Mais sa particularité est de permettre de lire et d'écrire simultanément dans le
composant mémoire. Suivant les modèles, on peut lire ou écrire 2 mots en un cycle d'horloge (2-word burst) ou 4 mots en
2 cycles d'horloge (4-word burst). Attention, en temps normal, entre chaque lecture/écriture il y a plusieurs cycles qui sont
utilisés, entre autre, pour la synchronisation. C'est pour cela que 4 mots en 2 cycles ne fait pas 2 fois 2 mots en un cycle
d'horloge. On peut donc avec la QDR transférer aux maximum 8 mots ( 4 lectures + 4 écritures ). En mode 2-word burst
les fréquences sont de 167 et 200 Mhz. En mode 4-word burst les fréquences sont de 200 et 233 Mhz.
La différence entre QDR SDRAM et la QDR-II SDRAM, prévus pour 2004, est essentiellement due à une modification du
circuit permettant de gérer la fréquence, qui devrait aller de 400 Mhz à 1,5 Ghz.
Mémoire QDR RAM
4.7 Mémoire Rambus DRAM (RDRAM) et SLDRAM.
La SLDRAM ( Synchronous-Link DRAM ) correspond au premier concept de mémoire série. Elle est cadencée entre 200
Mhz et 800 Mhz. Cette mémoire est en fait une version équivalente de la RamBus. Initialement définit par le Consortium
Synclink, cette version a totalement été supplantée par la RamBus.
La RDRAM est un concept entièrement nouveau qui utilise une nouvelle architecture de module de mémoire possédant
beaucoup moins de broches. Ses principales caractéristiques sont :
une vitesse très élevée de 400 Mhz, 800 Mhz et 1066 Mhz.
une architecture synchrone
l'utilisation de la montée et de la descente des cycles d'horloge ( 800 Mhz ou 1066 Mhz pour les données ).
Puisque chacun des aspects de sa structure interne comme la longueur des conducteurs, la capacité (µF) des inter-broches,
l'oscillation de la tension ont été rigoureusement redéfinis, ce type de mémoire peut offrir des rendements très élevés. Une
simple barrette de mémoire RAMBUS fourni des performances environ 3 fois supérieures aux modules de mémoire de
SDRAM de 64-bits à 100mhz. En fait il s'agit de bloc mémoire de 16 ou 18 bits montés en séries avec une fréquence de
800 Mhz ce qui donne un taux de transfert de 1,6 Go/s et de 2,132 Go/s avec une fréquence de 1066 Mhz.
Par exemple un système à un seul canal de cette mémoire peut atteindre jusqu'à 1,6 Go/s de taux de transfert. L'avantage
principal avec la Rambus est que des contrôleurs peuvent être conçus pour utiliser 2 ou même 4 canaux en parallèle. Un
système à 2 canaux atteindra 3,2 Go/s tandis qu'un système à 4 canaux pourra aller aussi haut que 6,4 Go/s !
Bus mémoire conventionnel
Bus série RamBus
Contrôleur avec un canal = 1,6 Go/s
Il s'agit d'une barrette de 64 bits constituée de 4 composants
mémoires de 16 bits montées en série. On a donc un bus de 16
bits cadencé à 800 Mhz. ( ( 800 000 000 * 16 ) / 8 bits ) / ( 1024
* 1024 ) = 1,6 Go/s
Contrôleur avec deux canaux = 3,2 Go/s
Contrôleur avec quatre canaux = 6,4 Go/s
Il s'agit d'une barrette de 64 bits
constituée de 16 composants mémoires
de 4 bits montées en parallèle.
Les barrettes RDRAM peuvent être chaînés sur une bus.
4.8 Mémoire Auto-correctrice ECC et AECC.
La mémoire ECC ( Error Correcting Code ) est une mémoire qui peut détecter 4 erreurs et corriger une erreur sans arrêter
le système.
Alors que la mémoire AECC ( Advanced Error Correcting Code ) est une mémoire qui peut détecter 4 erreurs et corriger 4
erreurs sans arrêter le système.
On à donc une augmentation du niveau de sécurité, la contre partie de ce gain de sécurité est une consommation plus
importante des ressources système pour enregistrer les données. Ce qui dégrade légèrement les performances du système.
5. Taux de transfert théorique des différents types de mémoires en
mode synchrone
En ce qui concerne le bus mémoire il fonctionne à la même fréquence que le bus processeur sauf
pour la RAMBUS.
Largeur
du bus de
données en
bit
Fréquence
du bus en
Mhz
Taux de
transfert
en Mo/s
Taux de
transfert
en MB/s
SD
EDO RA
M
SD
RA
M
PC
100
SD
RAM
PC
133
DDR
SD
RAM
PC
1600
DDR
SD
RAM
PC
2100
DDR
SD
RAM
PC
2700
DDR
SD
RAM
PC
4000
QD
Ram
RamBus
R
Bus 4
1 canal
SDR
canaux
PC800
AM
PC800
Ram
Bus 4
canaux
PC1066
32
64
64
64
64
64
64
64
2x64 16
16
16
66
66
100 133
100
133
166
250
1500 800
800
1066
267
533
800 1064
1600
2133
2666
4000
2400
1600
0*
6400
8528
254
508
763 1017
1526
2034
2543
3815
2288
1526
8*
6104
8133

= Il s'agit d'une valeur maximal théorique basé sur l'utilisation simultané de lecture et d'écriture.
Le taux en lecture seule donnerais 11,444 Go/s.
1 MB = Mega Byte = Mega Octects = Mo ( Informatique ).
Taux de transfert maximal du bus mémoire synchrone
Taux = (Largeur du bus de données en bit X Fréquence du bus en Hertz ) / ( 8 * 1024 * 1024 )
Il s'agit d'un taux de transfert théorique basé sur des lectures/écritures de données contiguës. Si vous avez un bus asynchrone
du genre 5.2.2.2 il faudra diviser ce taux par 2. Idem, pour un bus à 5.x.x.x il faudra le diviser par x.
1 Mo (Marketing ) = 1 Million d'octects.
Taux = (Largeur du bus de données en bit X Fréquence du bus en Mhz ) / 8
Exemple pour l'EDO : Taux = (32 X 66 666 666)/( 8 * 1024 * 1024 )= 254,31 MB/s.
Attention, quand on dit 66Mhz la valeur exacte est en fait 66,666666Mhz même chose pour 133Mhz => 133,333333 Mz.
Pour les mémoires DDR quand on parle de DDR333=PC2700 cela signifie que l'on utilise une fréquence de bus à 166 Mhz.
Comme la DDR utilise le front montant et descendant du signal, cela signifie qu'elle fonctionne comme une mémoire SDRAM
cadencée à 333 Mhz. Même chose pour la DDR500=PC4000.
6. Liens utiles
Il existe des utilitaires permettant de tester la mémoire. Vous avez par exemple :
Utilitaires
Adresse
L'utilitaire C't CM v1.7
L'utilitaire c't-Ramtest v5.1
DataSheet des mémoire DDR-II SDRAM
Spécification de la QDR-II RAM et DDR-II
RAM
Spécification de la QBM RAM
Cypress
IDT
Micron
NEC
Hitachi
ctcm1.7a.zip
ctramtst.zip
samsungelectronics.com
Kingston
Le JEDEC - Organisme de normalisation des
composants mémoires
Kentron Technology
http://www.qdrsram.com/
http://www.quadbandmemory.com/
http://www.cypress.com/
http://www.idt.com/
http://www.micron.com/
http://www.nec-global.com/
global.hitachi.com
http://www.kingston.com/tools/umg/de
fault.asp
http://www.jedex.org/
http://www.kentrontech.com/Kentron_
Products/QBM.htm
http://worldserver.oleane.com/heissler/
memoire/
Téléchargement