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

Contenu supprimé Contenu ajouté
 
Ligne 71 :
||tCAS-to-CAS||Temps minimum entre deux sélections de deux colonnes différentes.
|}
 
Ces timings influencent grandement la vitesse à laquelle on accède à une donnée dans la mémoire. Eh oui, car suivant la disposition des données dans la mémoire, l'accès peut être plus ou moins rapide. Avant d'aller plus loin, nous devons rappeler que les mémoires DRAM sont généralement des mémoires à tampon de ligne. C'est à dire que lors d'un accès mémoire, une ligne complète est chargée dans un registre, avant qu'un multiplexeur accède à la colonne voulue. Le registre s'appelle le tampon de ligne (''row buffer'', en anglais).
 
[[File:Mémoire à tampon de ligne.png|centre|vignette|upright=2|Mémoire à tampon de ligne]]
 
Le point important est que quand une ligne est chargée dans le tampon de ligne, elle reste dans ce tampon durant plusieurs accès consécutif, avant qu'une nouvelle commande PRECHARGE réinitialise le tampon de ligne. Et les accès ultérieurs peuvent utiliser cette possibilité. Nous allons supposer qu'une ligne a été copiée dans le tampon de registre, lors d'un accès précédent. Deux cas sont alors possibles.
* Premier cas : la donnée à lire/écrire est dans la ligne chargée dans le tampon de registre. Ce genre de situation s'appelle un '''succès de tampon de ligne'''. Cela se produit souvent lorsque l'on doit accéder à des données proches les unes des autres en mémoire. Dans ce cas, la ligne entière a été recopiée dans le tampon de ligne et on n'a pas à la sélectionner : on doit juste changer de colonne. Le temps nécessaire pour accéder à notre donnée est donc égal au temps nécessaire pour sélectionner une colonne (le tCAS), auquel il faut parfois ajouter le temps nécessaire entre deux sélections de deux colonnes différentes (le t-CAS-To-CAS).
* Second cas : on accède à une donnée située dans une ligne différente : c'est un '''défaut de tampon de ligne'''. Dans ce cas, il faut vider le tampon de ligne avec une commande PRECHARGE, en plus de sélectionner la ligne adéquate et la colonne. On doit donc ajouter le tRP au tRAS et au tCAS pour avoir le temps d'accès total à notre donnée.
 
Les délais/timings mémoire ne sont pas les mêmes suivant la barrette de mémoire que vous achetez. Certaines mémoires sont ainsi conçues pour avoir des timings assez bas et sont donc plus rapides, et surtout : beaucoup plus chères que les autres. Le gain en performances dépend beaucoup du processeur utilisé et est assez minime comparé au prix de ces barrettes. Les circuits de notre ordinateur chargés de communiquer avec la mémoire (ceux placés soit sur la carte mère, soit dans le processeur), doivent connaitre ces timings et ne pas se tromper : sans ça, l’ordinateur ne fonctionne pas.