« Fonctionnement d'un ordinateur/Les mémoires DRAM synchrones » : différence entre les versions

Contenu supprimé Contenu ajouté
Ligne 135 :
Les commandes des mémoires DDR sont globalement les mêmes que celles des mémoires SDRAM, vues plus haut. Les modifications entre SDRAM, DDR1, DDR2, DDR3, DDR4, et DDR5 sont assez mineures. Les seules différences sont l'addition de bits pour la transmission des adresses, des bits en plus pour la sélection des banques, un registre de mode un peu plus grand (13 bits sur la DDR 2, au lieu de 10 sur les SDRAM). En clair, une simple augmentation quantitative.
 
Avant la DDR4, les modifications des commandes sont mineures. La DDR2 supprime la commande ''Burst Terminate'', la DDR3 et la DDR4 utilisent le bit A12 pour préciser s'il faut faire une rafale complète, ou une rafale de moitié moins de données. Mais avec la DDR4, les choses changent, notamment au niveau de la commande ACT. Avec l'augmentation de la capacité des barrettes mémoires, la taille des adresses est devenue trop importante. Il a donc fallu rajouter des bits d'adresses. Mais pour éviter d'avoir à rajouter des broches sur des barrettes déjà bien fournies, les concepteurs du standard DDR4 ont décidé de ruser. Lors d'une commande ACT, les bits RAS, CAS et WE sont utilisés comme bits d'adresse, alors qu'ils ont leur signification normale pour les autres commandes. Pour éviter toute confusion, un nouveau bit ACT est ajouté pour indiquer la présence d'une commande ACT : il est à 1 pour une commande ACT, 0 pour les autres commandes.
 
 
{| class="wikitable" style="text-align:center"
! Bit CS || Bit ACT || Bit RAS || Bit CAS || Bit WE || Bits de sélection de banque (2 bits) || Bit du bas d'adresse A10 || Reste du bus d'adresse || Nom de la commande : Description
|-
| 1
| colspan="6" | X
| Absence de commandes.
|-
| 0 || 0 || 1 || 1 || 1 || colspan="3" | X || No Operation : Pas d'opération
|-
| 0 || 0 || 1 || 1 || 0 || colspan="3" | X || Burst Terminante : Arrêt d'un accès en rafale en cours.
|-
| 0 || 0 || 1 || 0 || 1 || Adresse de la banque || 0 || Adresse de la colonne || READ : lire une donnée depuis la ligne active.
|-
| 0 || 0 || 1 || 0 || 1 || Adresse de la banque || 1 || Adresse de la colonne || READA : lire une donnée depuis la ligne active, avec rafraichissement automatique de la ligne.
|-
| 0 || 0 || 1 || 0 || 0 || Adresse de la banque || 0 || Adresse de la colonne || WRITE : écrire une donnée depuis la ligne active.
|-
| 0 || 0 || 1 || 0 || 0 || Adresse de la banque || 1 || Adresse de la colonne || WRITEA : écrire une donnée depuis la ligne active, avec rafraichissement automatique de la ligne.
|- style="background: #CCFFCC"
| 0 || 1 || colspan="3" | Adresse de la ligne (bits de poids forts) || Adresse de la banque || colspan="2" | Adresse de la ligne (bits de poids faible) || ACT : charge une ligne dans le ''row buffer''.
|-
| 0 || 0 || 0 || 1 || 0 || Adresse de la banque || 0 || X || PRECHARGE : précharge le ''row buffer'' dans la banque voulue.
|-
| 0 || 0 || 0 || 1 || 0 || Adresse de la X || 1 || X || PRECHARGE ALL : précharge le ''row buffer'' dans toutes les banques.
|-
| 0 || 0 || 0 || 0 || 1 || colspan="3" | X || Auto refresh : Demande de rafraichissement, gérée par la SDRAM.
|-
| 0 || 0 || 0 || 0 || 0 || 00 || colspan="2" | Nouveau contenu du registre de mode || LOAD MODE REGISTER : configure le registre de mode.
|}
 
===Les types de mémoires DDR===