D) Technologie de fabrication des mémoires numériques ou

publicité
Les Mémoires
D) Technologie de fabrication des mémoires numériques ou digitales:
D.1.) Organisation des mémoires à semi-conducteur.
L'ensemble des mémoires à semi-conducteur utilisent un élément de base appelé point mémoire ou
bit.
Ces points mémoire sont réalisés de différentes façon suivant le type de mémoire (SRAM,
DRAM, ROM, EPROM, EEPROM...). La réalisation d'un point mémoire entraîne une surface
plus ou moins grande suivant le type de mémoire et conditionne les capacités maximales réalisables dans chaque type de mémoire.
Les points mémoire sont organisés en tableau (matrice) de n ligne et m colonnes pour obtenir une
capacité mémoire importante (n * m bits).
La gestion de ces lignes et colonnes nécessite différentes fonctions ou blocs internes, en principe
au nombre de 5:
- 1) La matrice de point.
- 2) Le décodeur ligne "démultiplexeur".
- 3) Le multiplexeur colonne.
- 4) Les circuits d'entrée sortie des données (Formés d'amplificateurs trois états).
- 5) La logique de contrôle permettant le fonctionnement de l'ensemble, à partir des signaux
de sélection (/CE Chip Enable ou /CS Chip Select), /OE Output Enable, R/ W̄
¯ Read / Write,
et éventuellement RAS
¯¯¯¯ et CAS
¯¯¯¯ pour les RAM Dynamiques).
Organisation matricielle des
mémoires à semi-conducteur
colonne1
2
Ai
colonne m
col 3
ligne2
Sélectiond'une ligne
Démultiplexeur
A1
Décodeur ligne
A0
Points mémoires
col 2
ligne1
EN, (/RAS)
1
Matrice de points mémoire
ligne n
Ai+1
Ai+2
Multiplexeur 3
k
Sélection de x colonnes parmi m=x.2
Ai+k
EN/ (/CAS)
/CE
EN, (/RAS)
/OE
R/W
(/RAS)
(/CAS)
EN/ (/CAS)
Logique
de contrôle
5
EN
Circuits d'entrée sortie des données
4
/OE
Q0
Q1
Q(x-1)
a) Description des points mémoires élémentaires:
Dans les PROMs le point mémoire est réalisé soit par fusibles métalliques (Ni-Cr ou Ti), soit par
fusibles silicium, soit par jonctions court-circuitées. Pour les jonction court-circuitées, à la livraison chaque liaison est formée de 2 jonctions en sens inverse en série (équivalent à un circuit
ouvert). La mise en avalanche d'une jonction la court-circuite (fusion => chemin conducteur).
Les points mémoires sont organisés en matrice (Voir paragraphe suivant sur l'organisation des
points mémoire).
Chaque point est à l'intersection d'une ligne et d'une colonne, afin d'obtenir un nombre de point
mémoire très important (nombre de point = produit des lignes et des colonnes).
Les mémoires suite2.lwp
Page - 7 -
Les Mémoires
Chaque point permet d'établir un état logique 0 sur la
colonne qui lui correspond lorsque la ligne qui le
commande est sélectionnée, et que la liaison par le fusible
ou la jonction sont présent. Lorsque le fusible à été
programmé (=> détruit), la sélection de la ligne ne permet
pas au transistor d'imposer l'état bas. La résistance de tirage
de la colonne maintient alors l'état haut.
Rem: Ces mémoires existent aussi en MOS. Le principe
reste le même mais le transistor bipolaire est remplacé par
un transistor MOS. La résistance est également remplacée
par un MOS en générateur de courant.
Point mémoire
d'une PROM
+5V
décodage ligne
ligne
fusible
colonne
Gnd
Pour les mémoires SRAMs le point mémoire est équivalent à une bascule D (à 4 ou 6 transistors).
Le point mémoire est alors ré-inscriptible en positionnant la bascule à l'état désiré en sélectionnant
sa ligne, un circuit de lecture
Point mémoire
écriture vient soit lire l'état de la
+5V
colonne n (ou /n) ou impose les
MOS en
d'une SRAM MOS
en
générateur
générateur
de courant
états des colonnes N et /n. La
de courant
Q3
Q4
décodage ligne
bascule adopte alors cet état
ligne
logique, et le conserve même
Q5
Q6
lorsque la ligne est désélectionMOS
MOS
canal N
canal N
née. Le point mémoire est donc
MOS
canal N
MOS
RW, et de plus statique, mais
canal N
Q1
Q2
les dimensions d'un tel point
mémoire empêchent d'obtenir
Col n
Col /n
Gnd
des capacités importantes dans
colonne n et /n vers circuits de lecture écriture
un espace réduit.
Rem: Les transistors Q1 et Q2
sont dit actifs, ce sont eux qui permettent le changement d'état de la bascule (FLIP FLOP), Q3 et
Q4 sont utilisés comme générateurs de courant (équivalent à une résistance de tirage ou charge).
Les transistors Q5 et Q6 permettent d'isoler le point mémoire lorsque la ligne n'est pas sélectionnée, ou au contraire de relier le point mémoire aux circuit de lecture / écriture lorsque la ligne est
sélectionnée. Dans ce cas l'information R/ W̄
¯ place les circuits de sortie de la mémoire en lecture
(Read) ou écriture (Write).
Dans le cas des mémoires dynamique (DRAM) le point mémoire se limite à un transistor MOS et
un condensateur de très faible valeur.
Point mémoire
d'une DRAM
Le principe de fonctionnement de la cellule mémoire est
assez simple : l'écriture respectivement d'un 1 ou d'un 0
consiste à charger ou à décharger le condensateur en rendant
le transistor MOS conducteur.
Une logique (amplificateur détecteur) permet de lire ou
d'écrire l'état logique de ce condensateur.
décodage ligne
MOS
canal N
ligne
condensateur
de mémorisation
Gnd
colonne vers
ampli détecteur
pour lecture,
écriture et
rafraichissement
Il est possible d'obtenir une grande intégration car le point mémoire est de dimension très faible,
et il est facile de multiplier ce motif. L'inconvénient est la perte progressive de la charge des
condensateurs de mémorisation, donc perte de l'état logique mémorisé. Il est donc nécessaire de
procéder régulièrement à un rafraîchissement des points mémoires.
Les mémoires suite2.lwp
Page - 8 -
Les Mémoires
Remarque: Le condensateur est automatiquement rechargé
lors d'une lecture, par le principe de l'ampli détecteur.
Lors d'une écriture la broche de donnée (I/O) recopiera sont
état logique sur le condensateur Cn en fermant les interrupteurs (transistors MOS) Qad1 et Qn. Lors d'une lecture ou
d'un rafraîchissement on ferme Qn, Qad2 et Qad1. Ainsi A1
sert de comparateur et A2 d'amplificateur assurant la
recharge du condensateur.
Ampli détecteur (DRAM)
décodage ligne
et colonne
Qad1
A2
I/O
Qn
Gnd
Cn
condensateur
de mémorisation
point mémoire
A1
Qad2
ampli détecteur
pour lecture,
écriture et
rafraichissement
Une fois chargé à 5 V, le condensateur a une tension
Vc qui chute à cause de sa très faible valeur, de sa
propre résistance de fuite et de la résistance non infinie
des interrupteurs 1012 Ohms.
Au bout d'un certain temps (autour de 20 ms) sa
tension a chuté de moitié et donc l'information (qui
était un 1) sera vu après ce temps comme un 0. La
donnée est perdue.
Il est donc nécessaire de rafraîchir à intervalles
réguliers les données. Si la tension Vc est supérieure à
2,5 V alors S =5V (S : tension en sortie de Qad2) et
sinon S=0V.
C'est son principe de fonctionnement qui a donné le nom à la DRAM (Dynamic RAM).
Dans les premières mémoires DRAM, il fallait par un circuit extérieur à la mémoire (circuit dédié
ou microprocesseur) faire une lecture de toutes les cases mémoires (rafraîchissement) toutes les
20 ms. Aujourd'hui les mémoires DRAM possèdent leur propre circuit de rafraîchissement
interne. Cette opération est donc devenue en partie transparente pour l'utilisateur.
De part sa structure la DRAM fournit une grande capacité mémoire et donc demande un grand
nombre de broches sur le bus d'adresse.
Ainsi pour éviter l'utilisation de boîtiers ayant un nombre de broches importants, on a décidé de
diviser par 2 le nombre de broches d'adresse. L'adresse complète est fournie en deux fois: Adresse
de ligne validée par /RAS (Row address strobe), puis adresse de colonne validée par /CAS
(column address strobe).
Les chronogrammes ci-dessous montrent la gestion en lecture et écriture des mémoires DRAMs.
Pour le cycle de lecture, le signal /WE reste à l'état haut.
Les mémoires suite2.lwp
Page - 9 -
Les Mémoires
Dans les deux cycles, l'adresse complète délivrée par le microprocesseur est fournie en deux
parties par des multiplexeurs 2 vers 1, tout en générant les signaux /RAS et /CAS. Le front
descendant de ces signaux permet à la mémoire de démultiplexer l'adresse délivrée par le micro.
Toute la logique nécessaire au fonctionnement des mémoires dynamiques (décodage,
multiplexeur, séquenceur...) Est de plus en plus souvent confiée à un circuit logique programmable (FPGA). Dans le cas des ordinateurs de type PC, cette tâche est confiée à un circuit FPGA
dédié appelé "ChipSet", adapté à chaque évolution de processeur et de téchnologie de mémoires.
Avant 1990, la technologie des DRAMs n'avait pas évolué. Seule la capacité mémoire augmentait
et le temps d'accès était passé de 150 ns à 80 ns. Depuis le début des années 90, le marché des
mémoires DRAM est en pleine effervescence. En effet, voyant que le temps d'accès, de par la
technologie employée, ne pouvait pas être diminué de façon significative, les constructeurs ont
cherché à améliorer la technique d'accès aux données. Depuis 1995 , le rythme des nouvelles
technologies annoncées s'est accéléré. On compte actuellement plusieurs technologies sur le
marché: DRAM classiques, EDO, SDRAM, DDRAM, RAMBUS....
boîtier SIMM ou DIMM
Les mémoires DRAM sont principalement utilisées dans les PC sous forme de barrettes. Il existe
2 types de barrettes mémoires :
Les barrettes SIMM : à l'origine (PC386), les premières barrettes SIMM comportaient 30 broches
et devaient se placer par quatre (chaque barrette faisait 8 bits de données ) pour un bus de 32 bits.
Avec l'arrivée des PC 486 et PENTIUM, sont apparues les barrettes SIMM 72 broches. Bus de
données sur 32 bits + bus d'adresse sur 32 bits (possibilité d'adresser 4 Go) + bus de contrôle. Sur
les cartes mères Pentium il fallait placer les barrettes SIMM par paires (bus de données sur 64
bits).
Depuis 1995 et les nouvelles cartes mères à base de Pentium II, sont apparues les barrettes
DIMM 168 broches. Bus de données sur 64 bits + bus d'adresse sur 32 bits + signaux de contrôle.
Le bus de données peut être complété avec des bits supplémentaires de correction d'erreur (8 bits
de parité impaire ou code ECC Error Code Check ). Les barrettes sont alimentées en 5V ou en
3,3V.
Les mémoires suite2.lwp
Page - 10 -
Les Mémoires
b) Organisation des points mémoires:
Dans tous les cas ces points sont organisés en lignes et en colonnes afin d'obtenir des capacités
importantes.
Une partie des adresses de la mémoires permettent la sélection d'une ligne unique parmi n lignes à
l'aide d'un démultiplexeur 1 parmi n. De même l'autre partie des adresses permet la sélection d'une
ou de plusieurs colonnes. Si la mémoire délivre une donnée sous forme d'octet, il faut donc un
Organisation matricielle des
points mémoire d'une PROM
décodage ligne
+5V
+5V
colonne1
colonne2
fusible
fusible
+5V
colonne m
ligne1
A0
Sélectiond'une ligne
Démultiplexeur
A1
Gnd
ligne2
fusible
Gnd
Gnd
Fusible détruit ou défaut de
métallisation dû au masque
fusible
Gnd
fusible
Gnd
Gnd
ligne n
Ai
EN
fusible
/CE
Ai+1
Ai+2
Gnd
fusible
Gnd
Gnd
EN
Multiplexeur
Ai+k
Sélection de x colonnes parmi m=x.2
k
/OE
/OE
Q0
Q1
Q(x-1)
multiplexeur de sortie fournissant 8 colonnes parmi m. Si le nombre de fils d'adresses de ce multiplexeur est k, il y a alors m = 2k colonnes.
Rem: 2 broches de contrôle sont présentes dans les mémoires:
/CE (ou /CS) Chip Enable ou Chip Select, permet la sélection ou la désélection du boîtier
complet.
/OE (Output Enable) permet la mise en basse ou en haute impédances des tampons de sortie, et
permet ainsi la lecture de la mémoire (Si /CE est aussi actif).
Important: Lorsque le boîtier est désélectionné (/CE inactif), il est fréquent d'obtenir une
consommation inférieure.
Il est donc intéressant d'utiliser cette broche pour la commande par le décodage d'adresse, afin de
réduire la consommation. Malheureusement le temps d'accès aux données est alors souvent
supérieur si la commande est réalisée par la broche /CE, que si la commande est effectuée par
/OE.
Les mémoires suite2.lwp
Page - 11 -
Les Mémoires
(Voir DOc AMD Am27C256 page 2-33, Dans le tableau PRODUCT SELECTOR GUIDE
ci-dessous).
Pour Une Am27C256-120 (120ns), le temps d'acces tacc est de 120ns si la commande est effectuée par /CE. Alors que tacc est de 50ns si la commande est faite par /OE.
Par contre (Voir page 2-40) les courants Icc1 à Icc3 montre qu'en mode standby le courant reste
inférieur à 1mA (/CE = VIH), alors qu'en mode actif Icc1 = 25mA (/CE = VIL).
Dans toutes les mémoires une logique de sélection permet de mettre en relation un certain nombre
d'éléments (bit) avec la (ou les) broche(s) de donnée(s) de la mémoire. Le mot mémoire appelé
aussi case mémoire correspond à une adresse définie, soit en parallèle par démultiplexage des fils
d'adresses de la mémoire, soit en série par une procédure séquentielle (interface série SPI, I2C...).
Organisation d'une Mémoire de type parallèle (Ex: ROM).
On remarque les sorties (DQ0 à DQ7)
en provenance des buffers de sortie
(Output Buffers).
La matrice est indiquée par (262144 Bit
Cell Matrix) ce qui correspond à:
256 x 1024 bits.
Pour lire la donnée correspondant à
1 octet, il faut donc disposer une adresse
sur les fil de A0 à A14.
Une partie de ces fils d'adresses permettent la sélection d'une ligne de la matrice par le
décodeur (X Decoder).
Les autres fils d'adresses restants permettent à
l'aide du décodeur (Y Decoder), la sélection des 8 colonnes correspondant à l'octet désiré sur la
ligne sélectionnée de la matrice.
La donnée n'apparaîtra en sortie que si les broches OE
¯¯ et CE
¯¯ sont actives (donc ici à l'état bas).
Les mémoires suite2.lwp
Page - 12 -
Les Mémoires
N
N Convention de représentation des chronogrammes pour la gestion des mémoires..
Le tableau ci-contre montre les conventions de
représentation utilisées par les constructeurs de
mémoire, afin de spécifier aux utilisateurs les
conditions de fonctionnement limites de leurs
circuits.
(Extrait de la documentation: Am27C256
De chez : AMD
Chronogrammes en lecture de l'UVPROM
Am27256.
Les mémoires suite2.lwp
Page - 13 -
Les Mémoires
1.
Technologie de fabrication des mémoires EEPROM
Les EEPROM peuvent être programmées et effacées électriquement. Ci dessous on peut voir la structure flotox (Floating Gate Tunnel Oxyde).
Dans les EEPROM la faible l'épaisseur de l'oxyde entre la grille flottante et le silicium (quelques dizaines de nanomètres) rend facile l'élimination par voie électrique des électrons piégés dans la grille
flottante
L'oxyde est de 15 nm environ au niveau du drain, et les électrons peuvent alors voyager dans les deux
sens par effet tunnel à travers la couche d'oxyde (SIO2) sous l'effet d’un champ électrique issu d'une
tension de +/- 20 V durant 10 ms.
(Structure FLOTOX Source ST Microelectronics).
Pour bloquer un transistor, la source et le drain sont mis à
la masse, et une impulsion de tension positive est appliquée entre la seconde grille en Si polycristalin (+VG) et la
masse, des électrons issus du drain traversent la mince
couche d'oxyde et viennent se piéger dans la grille
flottante (au centre).
De même que pour les EPROM, l'accroissement de tension de seuil qui en résulte pour la deuxième
grille interdit au MOS de devenir conducteur au cours d'une lecture ultérieure tant que des électrons
sont piégés dans la grille flottante.
Pour supprimer ce blocage du transistor la seconde grille (VG) et la source sont mises à la masse, et
l'impulsion de tension est appliquée entre drain et masse; les électrons précédemment piégés dans la
grille flottante transitent en sens inverse à travers l'oxyde mince et la tension de seuil redevient normale.
La possibilité de reprogrammer facilement les EEPROM (voir les mémoires flash) justifie le succès de
ce type de point mémoire
Organisation des cellules mémoires (doc Intel, DATA BOOK Applications 1981):
Ü Pour effacer un bit, on place une tension de 20v sur la ligne et 0v sur la colonne.
Ü Pour écrire un bit la colonne est
placée sous une tension de 18 à 20v
et la ligne à 0v.
Les mémoires suite2.lwp
Page - 14 -
Téléchargement