Longueur de rafale variable
Contexte
De nombreux types de systèmes informatiques différents utilisent des DRAM. Lorsque différents types de système informatique peuvent utiliser la même DRAM, il est alors possible de réaliser des économies d’échelle par l'amortissement des coûts de conception et de fabrication. Bien que les systèmes de différents segments informatiques puissent avoir des besoins similaires en matière de capacité de DRAM, chaque segment a des besoins qui lui sont propres. L’un de ces besoins est la longueur des rafales, c'est-à-dire la quantité de données transférées pendant les transactions de lecture et d'écriture de la mémoire. Certains segments informatiques utilisent des architectures de système mémoire qui nécessitent des rafales de longueur courte, alors que d’autres nécessitent des rafales plus longues. Une innovation visant à satisfaire un grand nombre d’utilisateurs consiste à pouvoir faire varier la longueur des rafales dans la DRAM. Une longueur de rafale variable permet aux systèmes informatiques de choisir la longueur à utiliser en fonction des besoins du système. Au début des années 90, Rambus a commercialisé la première DRAM à longueur de rafale variable, permettant ainsi aux fabricants de systèmes d’adapter aux besoins de leurs systèmes la quantité de données transférées par demande. En introduisant cette technologie, il devenait alors possible de concevoir et de fabriquer une seule DRAM adaptée à plusieurs architectures de système, ce qui a conduit à une diminution des coûts et une augmentation de la flexibilité des systèmes.
La mémoire Flash est une autre technologie de mémoire répandue utilisée dans de nombreux systèmes informatiques. La longueur de rafale variable a également été adoptée dans certains dispositifs de mémoire Flash. Elle fonctionne de la même manière dans les DRAM et les dispositifs de mémoire Flash et fournit les mêmes avantages aux systèmes qui utilisent cette fonctionnalité.
Qu'est-ce que la longueur de rafale variable ?
Lorsqu’une DRAM reçoit une demande de lecture de la mémoire, elle répond en transférant des données par les fils du bus mémoire. La taille du bloc de données qui est transféré en réponse à cette demande dépend de la longueur de rafale de la DRAM. La figure 1 illustre la différence entre une longueur de rafale de 4 et une longueur de rafale de 8. Comme le montre cette figure, une DRAM dont la longueur de rafale est de 8 (illustrée en bas de la figure 1) renvoie deux fois plus de données en réponse à une demande de lecture qu’une DRAM dont la longueur de rafale est de 4

Comme le montre la figure 1, la longueur de rafale variable est utile pour permettre à la même DRAM d’être utilisée dans différents systèmes mémoire nécessitant la transmission de quantités de données différentes vers et depuis les DRAM. Bien que les DRAM d'une longueur de rafale de 4 puissent être utilisées pour transférer 8 bits de données par fil en effectuant deux transactions de lecture de suite, cette opération nécessite deux fois plus de bande passante d’adressage et de contrôle pour lancer les deux demandes. Dans les systèmes dont la bande passante d’adressage ou de contrôle est limitée, il peut s’avérer impossible de fournir une bande passante d’adressage/contrôle suffisante pour garantir le débit de données maximal (voir les informations sur la technologie de bus à double débit). La longueur de rafale variable résout ce problème en réduisant la quantité de bande passante d’adressage et de contrôle nécessaire pour transférer des données.
Les figures 2 et 3 illustrent l'utilisation de la longueur de rafale variable dans deux systèmes mémoire différents utilisant les mêmes dispositifs DRAM. Le système informatique de la figure 2 se compose d'un processeur, d'un contrôleur mémoire et d'une mémoire qui, dans ce cas, se trouve sur les modules de mémoire. Ce système peut correspondre à un ordinateur bas de gamme ou à faible encombrement. Dans ce système, la largeur de la partie données du bus mémoire est de 64 bits et le processeur accède aux données par morceaux de 64 octets, ce qui peut correspondre à la taille de la ligne de la mémoire cache du processeur. Pour optimiser l’efficacité du système, le contrôleur mémoire règle la longueur de rafale des DRAM sur 8 afin de pouvoir transférer un bloc de 64 octets de données à partir de la mémoire (8 x 64 bits = 64 octets) en réponse à une seule demande du contrôleur mémoire.

La figure 3 illustre une architecture représentative d’un serveur, d'un serveur lame ou d'un ordinateur haut de gamme. Ce système mémoire est doté d’une part de données d’une largeur de 128 bits sur le bus mémoire. Bien qu’il y ait deux fois plus de lignes de données que dans le système mémoire de la figure 2, les deux architectures peuvent utiliser le même processeur avec les mêmes besoins en termes de taille de bloc de données, ce qui permet aux fabricants de processeurs d'exploiter la conception d’un processeur sur plusieurs marchés. Dans ce système, si la longueur de rafale était fixée à 8, alors les modules de mémoire répondraient à une seule demande du contrôleur mémoire avec 128 octets, plus que le processeur n’en a besoin, ce qui gaspillerait la bande passante mémoire. Cependant, grâce à la possibilité de fixer la longueur de rafale des dispositifs de mémoire à 4 (4 x 128 bits = 64 octets), chaque dispositif de mémoire transfère autant de données qu’il le ferait pour une longueur de rafale de 8. Cela permet au contrôleur mémoire de maximiser l’efficacité du système mémoire en obtenant toutes les données demandées à l'aide d'une seule demande et sans produire de données supplémentaires inutiles.

La longueur de rafale variable permet aux mêmes dispositifs DRAM d’être utilisés dans plusieurs architectures de système, ce qui réduit le nombre de dispositifs DRAM et d’architectures de module nécessaires. La possibilité d'utiliser les mêmes dispositifs DRAM dans de nombreux systèmes réduit les coûts de fabrication et la valeur des stocks, ce qui bénéficie aux fabricants comme aux clients. La flexibilité apportée par la longueur de rafale variable garantit l'utilisation de longueurs de rafale en parfaite adéquation avec les besoins des systèmes, ce qui réduit la bande passante de contrôle et assure une utilisation efficace du bus mémoire.
Qui en bénéficie ?
Voici quelques exemples de groupes bénéficiant de la longueur de rafale variable :
- Concepteurs de processeurs : la longueur de rafale variable permet d’utiliser une seule configuration de DRAM ou de mémoire Flash dans plusieurs architectures de système mémoire. Cela permet aux concepteurs de processeurs d’être présents sur plusieurs marchés, ce qui diminue les coûts de développement, les coûts de fabrication (grâce aux économies d’échelle réalisées) et la valeur des stocks.
- Intégrateurs de systèmes : les intégrateurs de systèmes qui travaillent sur plusieurs marchés peuvent définir et stocker un seul type de DRAM ou de mémoire Flash utilisable dans plusieurs gammes de produits. Cela réduit les coûts de contrôle des stocks.
- Fabricants de mémoires : en utilisant la longueur de rafale variable, les fabricants de mémoires peuvent exploiter la même DRAM ou mémoire Flash sur plusieurs marchés, ce qui fournit des avantages en termes de coûts (réduction des coûts de développement et de fabrication, et de la valeur des stocks) identiques à ceux dont profitent les concepteurs de processeurs.
