Mémoires : Types, Tailles, Utilisation
Total Page:16
File Type:pdf, Size:1020Kb
Cours de Systèmes Logiques 1 Mémoires : Types, tailles, utilisation Etienne Messerli & Yann Thoma Reconfigurable and Embedded Digital Systems Institute Haute Ecole d’Ingénierie et de Gestion du Canton de Vaud This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License Septembre 2019 E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 1 / 38 Plan 1 Introduction 2 Types de mémoires 3 PROM E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 2 / 38 Introduction Caractéristique des mémoires But : conserver des informations 3 modes de fonctionnement : Accès en lecture Read pour obtenir l’information enregistrée dans une case spécifiée (adresse) Accès en écriture Write pour enregistrer une information dans une case spécifiée (adresse) Aucun accès à la mémoire (maintien) E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 3 / 38 Introduction Les unités des mémoires Le bit : unité élémentaire d’information (0 ou 1) L’octet ou byte : paquet de 8 bits (vecteur, nombre), que l’on peut manipuler simultanément. On l’associe parfois à un caractère (code ASCII) Le mot ou word : paquet de bits que l’on peut manipuler simultanément (généralement 16, 32 ou 64 bits) Poids des bits dans un nombre entier : Le bit de poids fort d’un nombre est le bit de gauche en anglais : MSB pour most significant bit Le bit de poids faible d’un nombre est le bit de droite en anglais : LSB pour least significant bit E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 4 / 38 Introduction Les unités des mémoires Kilo, paquet de 1’024 éléments (210) 1K byte = 1024 bytes Méga, paquet de 1’048’576 éléments, (220) 1M byte = 1024 K bytes = 1’048’576 bytes Giga, paquet de 1’073’741’824 éléments (230) 1G byte = 1024 M bytes = 1’048’576 K bytes Tera, paquet de 1’099’511’627’776 éléments (240) 1T byte = 1024 G bytes = 1’048’576 M bytes Peta ... Convention pour l’indication de bit ou byte : 1Kb : 1 kilo bits 1KB : 1 kilo bytes Oui, mais ... E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 5 / 38 Introduction Unités précises... Décimal Binaire Valeur Métrique Valeur IEC 1000 kbit kilobit 1024 kibit kibibit 10002 Mbit megabit 10242 Mibit mebibit 10003 Gbit gigabit 10243 Gibit gibibit 10004 Tbit terabit 10244 Tibit tebibit 10005 Pbit petabit 10245 Pibit pebibit 10006 Ebit exabit 10246 Eibit exbibit 10007 Zbit zettabit 10247 Zibit zebibit 10008 Ybit yottabit 10248 Yibit yobibit Les disques durs sont vendus en décimal Les mémoires sont en binaire E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 6 / 38 Types de mémoires Les types de mémoires Les mémoires "vives" Informations perdues à la mise hors tension Lecture et écriture en cours d’utilisation Les mémoires "mortes" Informations conservées à la mise hors tension Lecture en cours d’utilisation Ecriture (« programmation ») durant la fabrication de la mémoire ou Ecriture particulière durant fonctionnement du système qui la contient, implique un effacement ! E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 7 / 38 Types de mémoires Les types de mémoires Mémoires volatiles (vives) RAM (random-access memory) : mémoire vive, volatile SRAM static random access memory DRAM dynamic random access memory Mémoires non-volatiles (mortes) ROMy read-only memory PROMy programmable read-only memory EPROM ou UV-EPROM erasable programmable read-only memory EEPROM ou E2PROM electrically EPROM Flash memory FeRAM, MRAM, PRAM E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 8 / 38 Types de mémoires Les types de mémoires volatiles RAM (random-access memory) : mémoire vive, volatile SRAM static random access memory : http://en.wikipedia.org/wiki/Static_random-access_memory L’information est conservée dans des transistors. Elle est maintenue tant que la tension d’alimentation est présente DRAM dynamic random access memory http://en.wikipedia.org/wiki/Dynamic_random-access_memory L’information est conservée dans un condensateur et maintenue tant que la tension d’alimentation est présente. Il faut recharger (rafraîchir) périodiquement les cellules de mémoire. SDRAM Synchronous dynamic RAM DDR SDRAM Double data rate Synchronous dynamic RAM DDR 100MHz, DDR2 133MHz, DDR3 166MHz, DDR4 200MHz GRDDR : DDDR dédiée aux cartes graphiques HMC : Hybrid Memory Cube E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 9 / 38 Types de mémoires Evolution des mémoires (chip) Source : http://thenextwavefutures.wordpress.com/2009/08/02/the-end-of-moores-law/ E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 10 / 38 Types de mémoires Evolution des mémoires (chip) Source : DRAM refresher : Problems the technology is set to encounter, Chris Edwards, site newelectronics voir : www.newelectronics.co.uk/electronics-technology/dram-refresher-problems-the-technology-is-set-to-encounter/34922/ E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 11 / 38 Types de mémoires Caractéristique des SDRAM SDRAM SDRAM PC100 à 100MHz, PC 133 à 133MHz DDR1, 2 et 3 LPDDRx est basé sur la même technologie mais pour du mobile ) Low Power GDDRx est basée sur la DDR3 et est associée au processeur graphique (donc pas au CPU) E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 12 / 38 Types de mémoires Caractéristique des SDRAM SDRAM SDRAM PC100 à 100MHz, PC 133 à 133MHz DDR1, 2 et 3 Type Data bus Bank Bus clock Data rate Max capacity (bits) (MHz) (MT/s) (Gbits) DDR 64 1 100 to 200 200 to 400 1 DDR 64 2 200 to 533 400 to 1066 4 DDR 64 4 400 to 1066 800 to 2133 8 Transfert sur les deux flancs du clock Data rate = 2 * Bus clock A chaque évolution, le nombre de rangée de circuits double. Dès lors le débit double. E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 13 / 38 Types de mémoires HMC : mémoire série La mémoire Hybrid Memory Cube (HMC) est une mémoire constituée de couches empilées de mémoire de type DRAM. Cet empilement donne une troisième dimension à la mémoire (habituellement organisée sur une grille bidimensionnelle), d’où le terme cube. La partie de contrôle et la partie stockage de la mémoire sont fusionnées (habituellement, ce sont deux entités séparées sur une DRAM), d’où le terme « Hybrid » E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 14 / 38 Types de mémoires Mémoires non volatiles ROM y : contenu définit lors de la fabrication PROMy : contenu programmable une seule fois (fusible) EPROM ou UV-EPROM : contenu programmable électriquement et effaçable avec rayons EEPROM : contenu (mot) programmable et effaçable électriquement (quelques millisecondes) Flash memory : contenu programmable électriquement mot par mot et effaçable électriquement par bloc. Type : NOR Flash, NAND Flash http://en.wikipedia.org/wiki/Non-volatile_memory E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 15 / 38 Types de mémoires Utilisation SRAM Capacités moyenne 4Kb-128Mb Rapide jusqu’à 600 MHz pas de latence annoncé jusqu’à 1 GHz Prix élevé des circuits SRAM mémoire cache pour processeurs SRAM interne au chip, la mémoire fonctionne à la fréquence du CPU ! E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 16 / 38 Types de mémoires Utilisation DRAM Grandes capacités jusqu’à 128 Gbits Rapides : 500MHz Attention : latence importante Limitations accès (pages) Rafraichissement Mémoire centrale des ordinateurs Différents types : DRAMs asynchrones SDRAMs synchrones E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 17 / 38 Types de mémoires Utilisation mémoires Flash NAND : 512Gbits ou + Haute capacité Contraintes : accès, correction erreur, ... Rapide en effacement et écriture NOR : 2Gbits Accès aléatoire rapide Plus lente en effacement et écriture Plus chère E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 18 / 38 Types de mémoires Utilisation mémoires Flash NAND Utilisée dans : Clé USB SDCARD pour appareil photo SSD NOR Utilisée dans : Configuration des FPGA ou DSP Téléphones portables pour contenir l’OS E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 19 / 38 Types de mémoires Utilisation EEPROM Petites capacités : 1Mbits Sauvegarde de paramètres Parallèle ou série Utilisé dans appareil électronique pour quelques paramètres E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 20 / 38 PROM Mémoire morte : PROM Une mémoire morte 1 bit programmable, une seule fois, peut être réalisée avec une résistance et un fusible. VCC VCC VCC R R R Sortie Sortie = '1' Sortie = '0' Fusible GND GND GND Avant programmation Après programmation E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 21 / 38 PROM Mémoire morte 4 × 1 bits Fonction de sortie = somme de mintermes Un décodeur permet de sélectionner un bit (minterme) parmi les 4 Un ou-câblé peut être réalisé avec des portes à collecteur ouvert. VCC F u s ib le X/Y A0 1 0 S0 A1 2 1 S1 P o rte 3 E n a b le EN 2 S2 é ta ts 3 S3 S o rtie OE E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 22 / 38 PROM Mémoire morte 4 × 2 bits 2 bits de donnée : 2 colonnes de fusibles VCC VCC VCC VCC VCC VCC R R R R R R '1' '1' '1' '1' '1' '1' 'Z' 'Z' 'Z' '0' '0' '0' '0' Si-1 Si-1 Si-1 '0' '1' '0' '1' '0' '1' Si '1' '0' Si '1' '0' Si '1' '0' D0 '1' D0 '1' D0 '1' D1 '1' FAUX D1 '1' FAUX D1 '1' FAUX court-circuit ! E.