Pourquoi la SRAM est-elle plus rapide que la DRAM?

14

Dans les processeurs multicœurs modernes, les caches de processeur ( L1,L2et L3) sont constitués de SRAMvitesses décroissantes (les L2caches sont des SRAM à vitesse plus élevée que les L3caches, ce qui est un compromis de coût). La principale raison d'utiliser SRAMest son avantage de vitesse sur la mémoire principale qui l'utilise DRAM. Je voudrais comprendre pourquoi SRAMa un avantage de vitesse sur DRAM?

Geek
la source

Réponses:

24

Tiré d'un article sur HowStuffWorks (résumé):

RAM dynamique:

À l'intérieur d'une puce de RAM dynamique (DRAM), chaque cellule de mémoire contient un bit d'information et se compose de deux parties: un transistor et un condensateur. Le transistor agit comme un interrupteur qui permet aux circuits de commande sur la puce de mémoire de lire le condensateur ou de changer son état.

L'article passe ensuite à comparer les condensateurs sur DRAM à des seaux, où la DRAM est remplie d'électrons pour stocker des informations (stocker 1s). Ces électrons sont vidés lorsque les informations sont supprimées (stockage de 0). Le problème avec les condensateurs est qu'ils ont des fuites et perdent des informations assez rapidement. Afin de conserver les informations, une source extérieure ( CPUou Memory Controller) doit recharger tous les condensateurs contenant un 1 avant de se décharger.

Cette opération de rafraîchissement est l'endroit où la RAM dynamique tire son nom. La RAM dynamique doit être actualisée dynamiquement tout le temps ou elle oublie ce qu'elle contient. L'inconvénient de tout cela est qu'il prend du temps et ralentit la mémoire.

RAM statique:

La RAM statique utilise une technologie complètement différente. Dans la RAM statique, une forme de bascule contient chaque bit de mémoire. Une bascule pour une cellule mémoire prend 4 ou 6 transistors avec un certain câblage, mais n'a jamais besoin d'être rafraîchie. Cela rend la RAM statique beaucoup plus rapide que la RAM dynamique. Cependant, parce qu'elle a plus de parties, une cellule de mémoire statique prend beaucoup plus d'espace sur une puce qu'une cellule de mémoire dynamique. Par conséquent, vous obtenez moins de mémoire par puce, ce qui rend la RAM statique beaucoup plus chère.

C'est un article assez intéressant, donc je suggère de le lire. J'ai pris les points les plus pertinents de l'article pour répondre à votre question.

Yass
la source
7
Il y a un malentendu concernant la DRAM et la SRAM. La DRAM est optimisée pour la densité (capacité supérieure) et la SRAM est optimisée pour la vitesse (latence d'accès). Donc, en général, SRAM est plus rapide que DRAM. Cependant, il est fondamentalement possible de concevoir une DRAM plus rapide que la SRAM, mais les fabricants de DRAM ne le font pas car le facteur de vente le plus important pour eux est le coût par bit. Ils réduisent donc le coût par bit au détriment de la vitesse. Beaucoup de gens comprennent mal ce fait essentiel.
aminfar
@aminfar: Vous avez dit qu'il était fondamentalement possible de rendre la DRAM plus rapide que la SRAM, mais cela coûterait cher. Mais SRAM est déjà cher. Pourquoi ne voyons-nous pas la DRAM utilisée comme caches CPU alors?
Tara
@Dudeson, ils ont des processus et des exigences de fabrication différents. Peut-être, l'utilisation de DRAM pour les caches CPU avec une bonne latence d'accès serait encore plus chère que SRAM. Il y a d'autres choses à considérer en dehors de la fabrication, comme le rafraîchissement.
aminfar