Cours sur la mémoire


Bouton de retour sur la page d'index   Par Frédéric Heissler   Cliquez ici pour m'envoyer un message






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énomer le terme de PCxxxx ou xxxx correspond, en million d'octect, à la valeur arrondie du taux de transfert théorique.


Type Appellation Fréquence du bus mémoire Taux de transfert en Mo
PC1600 DDR200 100 Mhz 1600
PC2100 DDR266 133 Mhz 2133
PC2700 DDR333 166 Mhz 2666
PC3000 DDR360 180 Mhz 2880
PC3200 DDR400 200 Mhz 3200
PC3500 DDR433 216 Mhz 3500
PC3700 DDR466 233 Mhz 3700
PC4000 DDR500 250 Mhz 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écififications 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 controleur logic 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 control 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 Appellation Fréquence du bus mémoire Taux de transfert en Mo
PC4300 DDR II 533 266 Mhz 4300
PC5400 DDR II 667 333 Mhz 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 transferer 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é supplenté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érieurse 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

    Il s'agit d'une barette de 64 bits constituée de 16 composants mémoires de 4 bits montées en parrallèles.
     
    Contrôleur avec un canal = 1,6 Go/s


    Il s'agit d'une barette 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


     

    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.


    Mem EDO Mem SDRAM Mem SDRAM PC100 Mem SDRAM PC133 Mem DDR SDRAM PC1600 Mem DDR SDRAM PC2100 Mem DDR SDRAM PC2700 Mem DDR SDRAM PC4000 Mem QDR SDRAM Mem RamBus 1 canal PC800 Mem RamBus 4 canaux PC800 Mem RamBus 4 canaux PC1066
    Largeur du bus de données en bit 32 64 64 64 64 64 64 64 2x64 16 16 16
    Fréquence du bus en Mhz 66 66 100 133 100 133 166 250 1500 800 800 1066
    Taux de transfert en Mo/s 266,66 533,33 800 1064 1600 2133 2666 4000 24000* 1600 6400 8528
    Taux de transfert en MB/s 254,31 508,62 762.93 1017.25 1525.87 2034.50 2543.13 3814.69 22888* 1525.87 6103.51 8132.93

    * = 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 (Marqueting ) = 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 decendant 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 ctcm1.7a.zip
    L'utilitaire c't-Ramtest v5.1 ctramtst.zip
    DataSheet des mémoire DDR-II SDRAM samsungelectronics.com
    Spécification de la QDR-II RAM et DDR-II RAM http://www.qdrsram.com/
    Spécification de la QBM RAM http://www.quadbandmemory.com/
    Cypress www.cypress.com
    IDT www.idt.com
    Micron www.micron.com
    NEC www.nec-global.com
    Hitachi global.hitachi.com
    Kingston http://www.kingston.com/tools/umg/default.asp
    Le JEDEC - Organisme de normalisation des composants mémoires http://www.jedex.org/
    Kentron Technology http://www.kentrontech.com/Kentron_Products/QBM.htm
    
    
    
    Retourner au début de la page