La Double Data Rate 5 Synchronous Dynamic Random-Access Memory, ou DDR5 SDRAM, est un type de mémoire vive dynamique qui succède à la DDR4 SDRAM et dont les spécifications faites par le JEDEC[1] ont été finalisées en 2020[2],[3].
Elles sont prévues pour diminuer la consommation électrique par rapport aux DDR4, tout en doublant la bande passante[4],[5].
Une nouvelle fonctionnalité appelée Decision Feedback Equalization (DFE) permet l’évolutivité de la vitesse d’entrée/sortie (E/S) pour une bande passante plus élevée et une amélioration des performances. La DDR5 a à peu près la même latence (environ 14 ns) que la DDR4 et la DDR3[6]. La mémoire DDR5 multiplie par huit la capacité maximale des barrettes DIMM qui passe de 64 Go à 512 Go[7],[8]. La DDR5 a également des taux de transfert plus élevés que la DDR4, jusqu’à 8 GT/s, ce qui se traduit par une bande passante de 64 Go/s (8 GT/s * 64 bits de largeur / 8 bits/octet = 64 Go/s) par DIMM[9].
La société coréenne SK Hynix a produit les premières DDR5 16 Go fin 2018[10].
Samsung a annoncé la disponibilité des DDR5 pour la fin de l'année 2019[11] et présente le Samsung Galaxy S20 le 11 février 2020, premier smartphone possédant de la mémoire LPDDR5.
La norme distincte JEDEC Low Power Double Data Rate 5 (LPDDR5), prévue pour les PC portables et les smartphones, est sortie en février 2019[12].
Contrairement à la DDR4, toutes les puces DDR5 disposent d’un code de correction d’erreur sur puce, où les erreurs sont détectées et corrigées avant d’envoyer les données au processeur. Cependant, ce n’est pas la même chose qu’une véritable mémoire ECC avec des puces de correction de données supplémentaires sur le module de mémoire. La correction d’erreur sur puce de la DDR5 permet d’améliorer la fiabilité et d’autoriser des puces de RAM plus denses, ce qui réduit le taux de défauts par puce. Il existe encore des variantes DIMM DDR5 non ECC et ECC ; les variantes ECC ont des lignes de données supplémentaires vers le processeur pour envoyer des données de détection d’erreurs, ce qui permet au processeur de détecter et de corriger les erreurs qui se produisent en transit[13].
Chaque module DIMM DDR5 dispose de deux canaux indépendants. Les générations précédentes de barrettes DIMM ne comportaient qu’un seul canal et un seul bus CA (commande/adresse) contrôlant l’ensemble du module de mémoire avec ses 64 bits (pour les mémoires non ECC) ou 72 bits (pour les mémoires ECC). Les deux sous-canaux d’un module DIMM DDR5 ont chacun leur propre bus CA, contrôlant 32 bits pour la mémoire non ECC et 36 ou 40 bits pour la mémoire ECC, ce qui donne un nombre total de 64, 72 ou 80 bits. La largeur réduite du bus est compensée par une longueur de rafale minimale doublée de 16, ce qui préserve la taille d’accès minimale de 64 octets, ce qui correspond à la taille de la ligne de cache utilisée par les microprocesseurs x86 modernes[14].
Plusieurs puces de mémoire DDR5 peuvent être montées sur une carte de circuit imprimé pour former des modules mémoire. Pour une utilisation dans les ordinateurs personnels et les serveurs, la mémoire DDR5 est généralement fournie dans des modules mémoire en ligne doubles à 288 broches, plus communément appelés DIMM. Comme pour les générations de mémoire précédentes, il existe plusieurs variantes de DIMM disponibles pour la DDR5.
Les modules de mémoire sans tampon (UDIMM) exposent directement l’interface de la puce mémoire au connecteur du module. Les variantes à registres ou à charge réduite (RDIMM/LRDIMM) utilisent un circuit actif supplémentaire sur le module mémoire afin de mettre en mémoire tampon le signal entre le contrôleur de mémoire et les puces DRAM. Cela réduit la charge capacitive sur le bus DDR5.
Les RDIMM/LRDIMM DDR5 utilisent une alimentation 12 V et les UDIMM utilisent une alimentation 5 V[15]. Afin d’éviter tout dommage dû à l’insertion accidentelle d’un mauvais type de mémoire, les UDIMM DDR5 et les (L)RDIMM ne sont pas compatibles mécaniquement. De plus, les DIMM DDR5 sont alimentés avec une alimentation d’interface de gestion à 3,3 V[16],[17],[18] et utilisent des circuits intégrés (un circuit intégré de gestion de l’alimentation et des composants passifs associés) pour produite la tension inférieure requise par les puces de mémoire. La régulation finale de la tension près du point d’utilisation fournit une alimentation plus stable et reflète le développement des modules de régulation de tension pour les alimentations CPU.
DDR5-, suivi de quatre chiffres, indique le taux de transfert de données (en MT/s) qui est normalement utilisé pour décrire les puces DDR.
PC5-, suivi de cinq chiffres, indique la bande passante, en mégaoctets par seconde, et ne s’applique qu’aux modules (modules DIMM assemblés). Étant donné que les modules de mémoire DDR5 transfèrent les données sur un bus de 8 octets (64 bits de données) de large, la bande passante maximale du module (en Mo/s) est calculée en multipliant par huit le nombre de transfert par seconde.
Les processeurs Alder Lake de 12e génération et Raptor Lake de 13e génération prennent en charge à la fois la DDR5 et la DDR4 mais, généralement, il n’y a des barrettes DIMM que d'un seul type sur une carte mère. Certaines cartes mères équipées du chipset H610 d’Intel prennent en charge à la fois la DDR4 et la DDR5, mais pas simultanément[19].
Les processeurs de serveur Sapphire Rapids (en) ainsi que les processeurs Meteor Lake prennent en charge la DDR5 mais pas la DDR4.
La DDR5 et la LPDDR5 sont prises en charge par les APU mobiles Ryzen série 6000, d'architecture Zen 3+. Les processeurs de bureau Ryzen série 7000 (Zen 4) prennent uniquement en charge la mémoire DDR5[20].
Les processeurs de serveur Epyc Genoa et Bergamo de quatrième génération prennent en charge la DDR5 à 12 canaux sur le socket SP5[21],[22].
« La dram ddr5 sera dans les ordinateurs à partir de 2020 », sur Le Monde informatique (consulté le ).