cours de systèmes logiques 1 - institut de la heig-vd · 2019. 11. 1. · cours de systèmes...
Post on 21-Jun-2021
8 Views
Preview:
TRANSCRIPT
Cours de Systèmes Logiques 1Mémoires : Types, tailles, utilisation
Etienne Messerli & Yann Thoma
Reconfigurable and Embedded Digital Systems InstituteHaute 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 informations3 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 manipulersimultané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 mostsignificant bitLe bit de poids faible d’un nombre est le bit de droite en anglais : LSB pour leastsignificant 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 bits1KB : 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
Valeur Métrique1000 kbit kilobit10002 Mbit megabit10003 Gbit gigabit10004 Tbit terabit10005 Pbit petabit10006 Ebit exabit10007 Zbit zettabit10008 Ybit yottabit
Binaire
Valeur IEC1024 kibit kibibit10242 Mibit mebibit10243 Gibit gibibit10244 Tibit tebibit10245 Pibit pebibit10246 Eibit exbibit10247 Zibit zebibit10248 Yibit yobibit
Les disques durs sont vendus en décimalLes 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 tensionLecture et écriture en cours d’utilisation
Les mémoires "mortes"Informations conservées à la mise hors tensionLecture en cours d’utilisationEcriture (« programmation ») durant la fabrication de la mémoireouEcriture particulière durant fonctionnement du système qui la contient, implique uneffacement !
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, volatileSRAM static random access memoryDRAM dynamic random access memory
Mémoires non-volatiles (mortes)ROM† read-only memoryPROM† programmable read-only memoryEPROM ou UV-EPROM erasable programmable read-only memoryEEPROM ou E2PROM electrically EPROMFlash memoryFeRAM, 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, volatileSRAM static random access memory :
http://en.wikipedia.org/wiki/Static_random-access_memoryL’information est conservée dans des transistors. Elle est maintenue tant que la tensiond’alimentation est présente
DRAM dynamic random access memoryhttp://en.wikipedia.org/wiki/Dynamic_random-access_memoryL’information est conservée dans un condensateur et maintenue tant que la tensiond’alimentation est présente. Il faut recharger (rafraîchir) périodiquement les cellules demémoire.SDRAM Synchronous dynamic RAMDDR SDRAM Double data rate Synchronous dynamic RAMDDR 100MHz, DDR2 133MHz, DDR3 166MHz, DDR4 200MHz
GRDDR : DDDR dédiée aux cartes graphiquesHMC : 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
SDRAMSDRAM PC100 à 100MHz, PC 133 à 133MHz
DDR1, 2 et 3LPDDRx est basé sur la même technologie mais pour du mobile⇒ Low PowerGDDRx est basée sur la DDR3 et est associée au processeur graphique (donc pasau 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
SDRAMSDRAM 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 1DDR 64 2 200 to 533 400 to 1066 4DDR 64 4 400 to 1066 800 to 2133 8
Transfert sur les deux flancs du clockData rate = 2 * Bus clockA 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 couchesempilées de mémoire de type DRAM. Cet empilement donne une troisièmedimension à 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 sontfusionnées (habituellement, ce sont deux entités séparées sur une DRAM), d’où leterme « 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 † : contenu définit lors de la fabricationPROM† : contenu programmable une seule fois (fusible)EPROM ou UV-EPROM : contenu programmable électriquement et effaçable avecrayonsEEPROM : contenu (mot) programmable et effaçable électriquement (quelquesmillisecondes)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-128MbRapide jusqu’à 600 MHz
pas de latenceannoncé jusqu’à 1 GHz
Prix élevé des circuits SRAMmé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 GbitsRapides : 500MHz
Attention : latence importante
Limitations accès (pages)RafraichissementMémoire centrale des ordinateursDifférents types :
DRAMs asynchronesSDRAMs 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 : 2GbitsAccès aléatoire rapidePlus lente en effacement et écriturePlus 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
NANDUtilisée dans :
Clé USBSDCARD pour appareil photoSSD
NORUtilisée dans :
Configuration des FPGA ou DSPTé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 : 1MbitsSauvegarde de paramètresParallèle ou sérieUtilisé 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 unerésistance et un fusible.
VCC
GND
R
Fusible
Sortie
Avant programmation
Sortie = '1'
VCC
GND
R
VCC
GND
R
Sortie = '0'
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 mintermesUn décodeur permet de sélectionner un bit (minterme) parmi les 4Un ou-câblé peut être réalisé avec des portes à collecteur ouvert.
A 0
A 1
E n a b le
S 3
V C C
S o r t ie
F u s ib le
P o r te 3
é ta ts
O E
S 2
S 1
S 0
X /Y
1 0
2
1
E N 2
3
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
'1'
R
Si
D1
VCC
R
D0
'0'
'1'
'1'
'1' FAUX
'1' '1''Z'
Si-1'0'
'0'
VCC
'1'
R
Si
D1
VCC
R
D0
'0'
'1'
'1'
'1' FAUX
'1' '1''Z'
Si-1'0'
'0'
VCC
'1'
R
Si
D1
VCC
R
D0
'0'
'1'
'1'
'1' FAUX
'1' '1''Z'
Si-1'0' '0'
'0'
court-circuit !
E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 23 / 38
PROM
Mémoire morte 4× 2 bits
Des diodes sont ajoutées pour éviter les court-circuits
VCC
'1'
R
Si
D1
VCC
R
D0
'0'
'1''0'
'1'
'0' Juste
'Z''1' '1'
Si-1'0' Chemin bloqué
VCC
'1'
R
Si
D1
VCC
R
D0
'0'
'1''0'
'1'
'0' Juste
'Z''1' '1'
Si-1'0' Chemin bloqué
E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 24 / 38
PROM
Mémoire morte 4× 2 bits
A 0
A 1
X /Y
1 0
2
1
E N 2
3
E n a b le
S 3
V C C
S o r t ie s
F u s ib le s
O E
S 2
S 1
S 0
D 0
D 1
P o r te s
3 é ta ts
E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 25 / 38
PROM
Mémoire morte 8× 2 bits
Une entrée d’activation du circuit Chip Select (CS)(peut aussi commander la mise sous tension des blocs internes)
Une entrée de 3 bits (Address) pour sélectionner une case de la mémoireUne entrée Output Enable (OE) pour commander l’activation de la sortie de donnéesUne sortie de 2 bits (Data) fournissant la valeur lue
E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 26 / 38
PROM
Mémoire morte 8× 2 bits
Architecture de la mémoire
A 0
A 1
D é c o d e u r
1 x 8
V C C O NE N
S 0
S 1
S 2
S 3
V C C O N
D 0
D 1
A 2
S 4
S 5
S 6
S 7
A d re s s e
s u r
3 b i ts
D o n n é e
s u r
2 b i ts
O E
« O u tp u t E n a b le »
C S
« C h ip S e le c t »
E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 27 / 38
PROM
Mémoire ROM 256× 4 bits
Capacité totale : 1024 bitsDécomposée en une matrice 32× 32 bits
E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 28 / 38
PROM
Extension des addresses : profondeur
Les entrées de sélection du circuit permettent d’étendre la profondeur en utilisantplusieurs circuits
M é m o ire 1 6 x 2 b i ts
A 3
A 2
A 1
A 0
C S
M é m o ire
C S
8 x 2 b i ts
A 2
A 1
A 0
D 1
D 0
O E
D 1
D 0
M é m o ire
C S
8 x 2 b i ts
A 2
A 1
A 0
D 1
D 0
O E
O E
E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 29 / 38
PROM
Extension des données (largeur)
Il suffit d’utiliser 2 circuits en parallèle
M é m o ire 8 x 4 b i ts
A 2
A 1
A 0
C S
M é m o ire
C S
8 x 2 b i ts
A 2
A 1
A 0
D 1
D 0
O E
D 3
D 2
D 1
D 0
M é m o ire
C S
8 x 2 b i ts
A 2
A 1
A 0
D 1
D 0
O E
O E
E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 30 / 38
PROM
Symbole CEI d’une PROM
Mémoire HM-7621, capacité 512x4
PROM HM-7621
0
1
2 0
3 0 1
4 A 2
5 511 3
6
7
8
CS
& OE
A0
A1
A2
A3
A4
A5
A6
A7
A8
nCS
nOE
D0
D1
D2
D3
E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 31 / 38
PROM
symbole CEI d’une PROM
Mémoire HM-7621, capacité 512x4Représentation avec des bus (plus lisible)
PROM HM-7621
0 0
.. A 3 ..0
8 511
CS
& OE
nCS
nOE
D3..0A8..0
E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 32 / 38
PROM
Mémoire comme système combinatoire
Les bits d’adresse sont les entréesLes bits de donnée sont les sortiesLa valeur mémorisée à l’adresse x est celle qui figure dans la table de vérité pour lacombinaison x des entrées
E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 33 / 38
PROM
Mémoire comme système combinatoire
Exemple : circuit calculant le nombre de ’1’ dans un mot de 3 bits
C B A Nb_1 N1 N00 0 0 0 0 00 0 1 1 0 10 1 0 1 0 10 1 1 2 1 01 0 0 1 0 11 0 1 2 1 01 1 0 2 1 01 1 1 3 1 1
Adresse DonnéeA2 A1 A0 D1 D00 0 0 0 00 0 1 0 10 1 0 0 10 1 1 1 01 0 0 0 11 0 1 1 01 1 0 1 01 1 1 1 1
Memoire 8x2
EN’1’
A0A
A1B
A2C
D0 N0
D1 N1
E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 34 / 38
PROM
Mémoire en système combinatoire
Les temps de réaction entrées/sorties sont plus grands (rapport 1 à 10 fréquent) quepour une réalisation avec des portesLes transitoires ne sont pas maîtrisablesUne mémoire à n bits d’adresse permet de réaliser toutes les fonctionscombinatoires à n entrées.Une mémoire à m bits de données permet de réaliser m fonctions des mêmesentrées
E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 35 / 38
PROM
Exercices
1 Vous disposez de plusieurs PROM de type HM-7611 (256x4)1 Réalisez une mémoire de capacité 256x122 Réalisez une mémoire de capacité 1024x43 Réalisez une mémoire de capacité 512x8
2 Vous disposez de PROM de type HM-7649 (512x8). Dessinez le schéma permettantde réaliser une mémoire d’une capacité de 1Kx4 bits.
3 Vous disposez de PROM de type HM-7603 (32x8). Dessinez le schéma permettantde réaliser une PROM d’une capacité de 128x2 bits.
E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 36 / 38
PROM
Symbole PROM 256x4
Mémoire HM-7611, capacité 256x4
PROM HM-7611
0 0.. A 3 ..07 255
CS
& OE
nCS
nOE
D3..0A7..0
E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 37 / 38
PROM
Symbole PROM 32x8
Mémoire HM-7603, capacité 32x8
PROM HM-7611
0 0.. A 7 ..04 31
CS
& OE
nCS
nOE
D7..0A4..0
E. Messerli, Y. Thoma (HES-SO / HEIG-VD / REDS) Mémoires : Types, tailles, utilisation Septembre 2019 38 / 38
top related