Sunteți pe pagina 1din 7

Circuite integrate numerice- Circuite de memorie FLASH

Circuite de memorie FLASH

Pentru a sublinia importanta categoriei de circuite de memorie care va face


obiectul acestei prezentari, în graficul alaturat sunt descrise cotele de piata (exprimate în
miliarde de dolari-B$), si evolutia acestora, pentru trei mari categorii de circuite de
memorie: SRAM (RAM static), DRAM (RAM dinamic) si FLASH.

1. Introducere

La fel ca la un circuit UV-EPROM (UV-UltraViolet, cu stergere cu ultraviolete) o


celula de memorare EEPROM are la baza un tranzistor cu doua grile, unde o grila zisa
flotanta (floating gate) exista între grila propriu-zisa, de control (control gate) si substratul P
(P-substrate). O grila flotanta este perfect izolata de un izolator – un start de dioxid de siliciu-
sticla (silicon dioxide) astfel ca electronii injectati în grila ramân acolo si când circuitul nu
mai este alimentat. Pe scurt, acesta este mecanismul de memorare si pentru o memorie
FLASH EEPROM.
La fel ca la UV-EPROM un circuit FLASH EEPROM este programat prin injectia de
electroni “fierbinti” în grila flotanta si este sters prin emisia de câmp din aceiasi grila. Intr-un
circuit Flash EEPROM stergerea se face pentru întreg circuitul simultan, pe când la un
EEPROM propriu-zis stergerea se face octet cu octet. Daca se elimina facilitatea de stergere
octet cu octet, o celula de memorare poate fi realizata folosind un singur tranzistor. Si la un
circuit UV-EPROM celula de memorare are un singur tranzistor si stergerea se face simultan
pentru întreg circuitul, prin expunere la radiatii ultraviolete. In acest sens, din punct de vedere
al functionalitatii, un FLASH EEPROM este asemanator unui circuit UV-EPROM, cu
exceptia modalitatii de stergere.
Pentru toate circuitele FLASH exista o asa zisa structura logica, circuitul fiind
împartit in mai multe blocuri de date (cu dimensiuni tipice de 16kocteti-bytes sau mai mari),
iar blocurile sunt împartite într-un numar fix de pagini de date. O pagina are la rândul ei un

1
Circuite integrate numerice- Circuite de memorie FLASH

anumit numar de octeti-bytes, de obicei de ordinul sutelor sau mai mare. Stergerea se face de
fapt nu la nivelul întregului circuit, ci la nivelul unuia sau mai multor blocuri de date.
Pentru întelegerea acestei structuri logice si utilizarea ei corecta (si nu numai!) este
obligatorie consultarea foilor de catalog ale circuitului respectiv.

2. Circuite NOR Flash


Structurile traditionale de memorii realizeaza accesul aleator prin conectarea in
paralel a celulelor de memorare la liniile de bit (BL). Astfel bitii corespunzatori
cuvintelor diferite sunt conectati si accesati „în paralel”. Aceasta caracteristica se întâlneste
si la structura Flash NOR, prima aparuta in ordine cronologica. In figura alaturata se observa
ca liniile de bit (BL0, BL1, ..), care formeaza fiecare cuvânt, sunt realizate prin
conectarea comuna, în drena (D), a tranzistoarelor cu grila flotanta. La nivelul fiecarei
linii de bit este realizat de fapt un SAU cablat (OR-wired). Un bit în „0” va trage toata
linia de bit BL în „0”, indiferent de starea celorlalti biti. Sursa (S) a tuturor tranzistoarelor
este conectata in acelasi punct (Source), linia respectiva servind la activarea întregii
matrici de memorie. Liniile de cuvant (WL0, WL1, WL2, ..) realizeaza selectia unuia din
cuvinte, fiind conectate la grilele de control. In momentul activarii unui cuvânt, prin linia
corespunzatoare WL, un tranzistor în conductie (programat) din linia de bit BL va trage
potentialul acesteia în “0”. In figura nu este prezentata sarcina activa (pull-up) existenta
pentru fiecare linie de bit

Aceasta modalitate de conectare are avantaje majore din punct de vedere al timpului
de acces aleator (linia de bit se prezinta ca o poarta NOR, tranzistoarele fiind conectate in
paralel). Din pacate ea prezinta si un dezavantaj din punct de vedere al realizarii tehnologice,
si anume presupune o suprafata mare ocupata la nivelul microcircuitului, datorita

2
Circuite integrate numerice- Circuite de memorie FLASH

configuratiei particulare de interconexiuni care trebuie realizate. Cu alte cuvinte, este


neeconomica din punct de vedere al pretului de cost per bit.
In figura alaturata este prezentata structura de baza a unui tranzistor cu grila flotanta
folosit într-un circuit NOR Flash. Grila de control (control gate) si cea flotanta (floating gate)
sunt realizate din siliciu policristalin (poly) conductor.
Programarea se face prin injectia de
electroni “fierbinti” (CHE- Channel Hot
Electron injection), iar stergerea prin efectul
de tunel Fowler-Nordheim (Fowler-
Nordheim FN-tunneling). La fel ca la UV-
EPROM programarea unui bit înseamna
modificarea tensiunii de prag a
tranzistorului, iar un bit “programat” este în
“0”, pe când unul “neprogramat” este în “1”.
O mentiune importanta care trebuie
facuta relativ la circuitele NOR este ca la
acestea, la livrare, se garanteaza ca toate
locat iile de memorie sunt “bune” si au
acelasi numa r garantat de cicluri de
stergere-programare. Mai mult, în faza de
fabricatie se realizeaza un numar destul de
mare de locatii “de rezerva” (un alt aspect neeconomic), care vor fi utilizate pentru repararea
eventualelor locatii cu defecte si producerea astfel a unui circuit perfect.
Timpii de acces la citire pentru majoritatea circuitelor NOR Flash sunt de cca 70nsec.
Densitatea maxima la care au ajuns (2004) aceste circuite este de cca 512Mbiti în conditiile
folosirii unei tehnologii cu dimensiunea minima de cca 70 de nanometri.

3. Circuitele NAND Flash

O noua tehnologie FLASH (promovata de Toshiba si Samsung) a cunoscut o


dezvoltare dramatica în ultimii ani. Tehnologia respectiva numita NAND Flash are la
baza conceptul de acces secvential s i nu aleator la informatie. Nu trebuie uitat ca unul
din scopurile initiale ale acestei tehnologii a fost înlocuirea dispozitivele de memorare
externe de tip hard-disk, având piese în miscare, cu dispozitive statice de memorare (solid
state mass storage), mai fiabile si cu timpi de acces la informatie mai buni. Hard-disk-ul este
în esenta un dispozitiv care acceseaza informatia secvential, desi acest aspect este mascat
prin intermediul asa zisului timp de acces aleator, rezultat în urma cautarii-regasirii (seek
time) acestei informatii într-o structura de date secventiala.
Exista si alte noi tehnologii FLASH, mai mult sau mai putin înrudite, cum ar fi
DINOR FLASH (DIvided bit line NOR- cu linie de bit divizata) promovata de Mitsubishi,
AND FLASH promovata de Hitachi sau T-Poly a firmei SanDisk.
Memoria NAND Flash este o configuratie relativ noua care reduce suprafata
ocupata de celula de memorie astfel încât sa creasca densitatea de integrare (si implicit
capacitatea), în conditiile scaderii pretului de cost per bit. O astfel de structura o fost
realizata prima data de Toshiba în 1987 prin conectarea în serie a câte opt celule de
memorie (tranzistori). Dimensiunea unei celule de memorie NAND este aproape jumatate
din cea a unei celule NOR. Ea este mai mica deoarece prin fiecare tranzistor va circula un
curent mai mic, nefiind nevoie sa comande o linie de bit lunga, cu capacitate proprie mare.

3
Circuite integrate numerice- Circuite de memorie FLASH

Un alt câstig major vine si de la faptul ca noua topologie de interconectare a celulelor de


memorare este mult mai economica din punct de vedere al suprafet ei ocupate pe
microcircuit. Aproape singurul dezavantaj este ca aceasta structura este poate fi accesata doar
secvential si este optimizata în acest sens.
In figura urmatoare este prezentata o astfel de structura tipica care foloseste 16
tranzistoare-celule de memorare (exista si variante cu 32 de tranzistoare). In figura nu
sunt prezentate si sarcinile active conectate la liniile de bit Bit Line.

Prin intermediul tranzistoarelor normale (NMOS) comandate în grila cu semnalele de tip


Select (BSL-Bit Select Line, GSL-Ground Select Line) se implementeaza un mecanism de
selectie a liniei de bit Bit Line si conectare la masa a sirului de celule de memorare înseriate.
Un tranzistor care este “programat”(are sarcina negativa acumulata pe grila flotanta)
va avea tensiunea de prag VT > 0, pe cand unul “neprogramat” are tensiunea de prag VT
<0.
Pentru o operat ie de citire a celulei identificata de semnalul de selectie WLn
ambii tranzistori de selectie sunt adusi în conductie. Daca tensiunea de alimentare este, de
exemplu, VDD, aceasta este folosita pentru comanda lor în grila. Grila de control a
celulei din mijloc WLn este si ea selectata (tot cu VDD) în timp ce celelalte grile de
control sunt conectate la o tensiune mai mare decât VDD, fortând toate celulele de
memorie (tranzistoarele) sa conduca, indiferent daca au sau nu sarcina acumulata pe grila
flotanta. Daca celula în cauza (cea citita) nu a fost programata (nu exista sarcina în grila
flotanta) canalul va intra în conductie si va conecta linia de bit BL la masa, citindu-se un
“0”. Daca celula nu e programata, canalul nu intra în conductie, linia de bit mentinându-
se la valoarea la care a fost preîncarcata (VDD), citindu-se astfel un “1”.
Este evident ca citirea sirului de celule presupune o secventa ordonata în timp a semnalelor
GSL, BSL si WL0..WL15.
Datorita conectarii în serie a celulelor de memorare (a tranzistoarelor) timpul de
acces la primul octet de date dintr-un acces secvential este considerabil mai mare decât

4
Circuite integrate numerice- Circuite de memorie FLASH

acelasi acces aleator la un octet pentru un circuit NOR. Chiar si asa, el este totusi
incomparabil mai mic dacât timpul minim de cautare (seek time) la un hard disk.

In figura alaturata este prezentata


structura de baza a doua din
tranzistoarele adiacente cu grila flotanta
conectate în serie, folosite intr-un circuit
NAND Flash. Regiunea sursa-drena
pentru cele doua tranzistoare adiacente
este comuna, de unde si o economie de
spatiu. Grilele de control (control gate) si
cele flotante (floating gate) sunt realizate
din siliciu policristalin (poly) conductor.
Atât programarea cât si stergerea
se realizeaza uniform, printr-un efect de
tunel Fowler-Nordheim (Fowler-
Nordheim FN-tunneling), între grila
flotanta si substrat.

Timpul de acces pentru o citire aleatoare este de cca 25usec (comparat cu 70nsec la
un NOR Flash) pe când timpul de acces pentru o citire secventiala este de cca 50nsec.
Avantaje evidente pentru un utilizator ale unui circuit NAND Flash sunt timpii de
stergere si (re)programare scurti. Timpul de stergere pentru un bloc de 16 kocteti sau mai
mare la un circuit NAND este de 2msec, comparativ cu 700msec pentru acelasi bloc la un
circuit NOR.
Curentul de programare necesar pentru injectia de sarcina în grila flotanta este mai
mic deoarece se utilizeaza efectul de tunel Fowler-Nordheim (Fowler-Nordheim FN-
tunneling) atât pentru stergere cât si programare. Astfel puterea necesara pentru programare
ramâne mica, chiar daca se programeaza simultan un numar mare de celule de memorare.
Este astfel posibil sa se programeze simultan un numar mare de celule si astfel timpul de
programare per octet (byte) devine foarte scurt. La un circuit NAND Flash programarea se
face la nivel de pagina .
Comparativ, un circuit NOR Flash poate fi programat doar octet cu octet (sau
cuvânt cu cuvânt) si. deoarece utilizeaza injectia de electroni “fierbinti” (CHE) pentru
programare, consuma mai mult si timpul de programare este mai lung, numai daca
comparatia se face la nivel de pagina. Tipic acesta este mai lung cu un ordin de marime
(x10) decât la un NAND Flash: 4msec pentru 512 octeti fata de 200usec tot pentru 512octeti.
In orice situatie, consumul de putere pentru orice circuit FLASH este incomparabil
mai mic decât cel al unui hard-disk.
Atât pentru circuitele NOR cât si pentru cele NAND numa rul de cicluri de
stergere-programare este limitat (endurance), existând si not iunea de uzura (wear).
Pentru a înlocui un circuit UV-EPROM, un numar de 1000 de cicluri era considerat suficient.
S-a estimat însa ca pentru a putea înlocui un hard-disk, numarul de cicluri trebuie sa fie de
cel putin 1 000 000. La un circuit NOR Flash mecanismele de stergere (FN) si programare
(CHE) sunt diferite, neuniforme, fluxul de electroni din grila (la stergere) sau în grila (la
programare) are cai diferite si în consecinta “uzura” asociata este mai mare. Astfel “durata

5
Circuite integrate numerice- Circuite de memorie FLASH

de viata” Totusi,
a unui exista
circuit
si unNORavantaj
Flashmajor
estealdeinterfet
cca 100 ei 000
indirecte,
de cicluri
si anume
de faptul ca pin-
stergere/programare.
out-ul (numarul de conexiuni externe) circuitului nu se modifica funct ie de capacitatea
La un
circuitului decircuit
memorie, NAND stergerea
registrul si programarea
de adrese se face uniform, prin acelasi efect de
fiind interior.
tunel FN, Densitatea
fluxul demaxima
electronilaavând
care au mereu
ajunsaceiasi
(2004)cale.
acesteAstfel
circuite
“durata
este de
de viata”
cca 8Gbiti
e prelungita
în la
cel putin 1000 000 de cicluri.
conditiile folosirii unei tehnologii cu dimensiunea minima de 60 nanometri!
Astfel un circuit NAND Flash va fi caracterizat inerent printr-un numar posibil mai
mare de ciclurisoftware
4. Suportul de stergere/programare.
pentru circuitele De altfel,
FLASH si la unele circuite NOR Flash mai recente
modalitatea de stergere a fost modificata,
Spre deosebire de alte circuite de memorie, devenind similara
pentrucu cea de la NAND
utilizatorul Flash. FLASH
tehnologiei
exista Comparativ
si o componenta cu un hard-disk
software, atât circuitele
a carei NOR este
prezenta cât siobligatorie,
cele NAND mai trebuie
alessterse
în cazul
înainte de scriere,
circuitelor NAND FLASH. lucru care nu e necesar în cazul hard-disk-ului. Astfel în cazul unui acces
continuuExista
de scriere, unde timpul de cautare (seek time) este negijabil,
doua nivele diferite pentru suportul software: un nivel de baza pentru un hard-disk este mai
eficient.
operatiile de citire-stergere-scriere s i un nivel superior, pentru emularea unui hard-disk
La un circuit
s i gestionarea NAND
algoritmilor Flash,tehnologiei
specifici producatorul FLASHNU se garanteaza
(marirea durateicade toate locatiile de
viata,
memorie sunt “bune” si au acelasi
uniformizare uzura, optimizare performante, etc.). numar garantat de cicluri de stergere-programare.
DeasemeneaPentru se realizeaza
a citi informat un numar ie sifoarte
eventualmic adeexecuta
locatii “decodrezerva”, care pot fiNOR
dintr-o memorie utilizate
pentru repararea eventualelor locatii cu defecte, rezultând
Flash nu este practic nevoie de nici un suport software. Pentru a executa însa o economie în plus. La uncod
astfel de
circuit trebuie sa existe un mecanism de detectie a erorilor si de gestionare al locat iilor
dintr-o memorie NAND este neparata nevoie de un driver (pe lânga hardware-ul
defecte, circuitul putând fi livrat, din considerente economice, cu locatii defecte! Mai mult
suplimentar)! Aceasta categorie de drivere poarta denumirea de drivere asociate
este perfect posibil ca unele celule sa-si epuizeze resursa de stergere-programare mai
tehnologiei
devreme decâtdealtele,
memorie- MTD (Memory
pe parcursul Technology Driver/Device). Atât circuitele
utilizarii circuitului.
NOR cât si cele NAND au nevoie de un
Daca o locatie de memorie este defecta, sau devine driver MTDdefecta,
pentruatunci
operat iileblocul
întreg de stergere si
scriere.
careia Daca un
îi apartine va driver
fi marcat MTD este (bad
ca defect tot ce e nevoie
block) si nu pentru
va mai fiautilizat.
sterge/scrie un circuit NOR, la
un circuit NAND
Un bloc pentrutrebuie sa mai
un circuit NAND existe
are,unîn suport
mod tipic, suplimentar
16, 32 sau 64 pentru detectia
de pagini. Pentruerorilor de
bit si gestionarea
marea majoritate a acestorblocurilorcircuitedefecte
o pagina (bad
are block
512 octetimangement).
de date, plus înca 16 octeti cu
coduri de control
Un exemplu desisoftware
corectie-ECC. Codurile
de nivel ECC utilizate
superior, axat pepermit, de obicei,
tehnologia NAND detectia
Flash,uneieste
erori
cel aldefirmei
2 biti siMSystems,
corectia unei erori de
numit 1 bit per (True
TrueFFS pagina.Flash File System) care realizeaza atât
emularea Din hard-disk-urilor,
punct de vedere practic, al proiectantului
gestionarea blocurilor de sistem
defecte si utilizatorului, cea mai uzurii (wear
cât si uniformizarea
mare
leveling), usurând în mod esential integrarea în sistem a acestor circuite. circuit
diferenta între cele doua categorii de circuite este interfat a utilizator. Un NOR
O versiune
Flash este foarte asemanator din punct de vedere al interfetei cu un circuit EPROM (sau
TrueFFS exista este si pentru tehnologia NOR Flash.
SRAM),TrueFFS disponibil,
având linii (magistrale) ca adrese
de surse si/sau
si dateexecutabile,
dedicate. Elpentrupoate fitoate
mapatsistemele de
cu usurinta,
operare majore
natural, în spatiul cum de ar fi: VxWorks,
memorie Windows
al unui sistem CE, Linux,
de calcul. Astfel,QNX/Neutrino,
sistemul de calcul Windows
poate citi în
XP/XPE,
mod natural Windows
cod memoratNT/ NTE, într-un DOSNOR si multe
Flash altele.
si îl poate executa.
Pe de alta parte un circuit NAND Flash nu are linii de adrese dedicate. El este
5. Aplicatii
controlat printr-o interfata similara dispozitivelor de intrare/iesire, prin trimiterea de
comenzi si adrese, printr-o magistrala unica de 8 biti (tipic), catre registrele interne de
Cota semnificativa
comenzi si adrese. De de piata aechivalentul
exemplu, acestor circuite nu exprima
unui ciclu de citirealtceva
presupune:decâtscrierea
o gama în
foarte larga
registrul de aplicatii.
de comanda VolumulREAD,
a comenzii si diversitatea
scrierea în aplicatiilor
registrul dea crescut
adrese major
a unei odata
adresecu
devoltarea
formate dintehnologiei
pâna la 4 octeti NAND Flash.
(bytes) Putempropriu-zisa
si citirea enumera în aacest uneisens
pagini : de date (cu
- terminale
dimensiunea de telefonie
tipica de 528 demobilaocteti, cu(cell
512phones)
octeti date si 16 octeti coduri ECC de corectie)
dintr-un registruGPS
- terminale de date. Exista si un registru de stare care este folosit pentru sincronizarea
operatiilor
- camere de foto
stergere-scriere.
si video digitale Circuitele mai noi au în componenta si un buffer de tip SRAM
în care este memorata
- sisteme de calcultemporar
portabileinformatia
de tip PDA, care se va scrie
Palmtop, etc.într-o pagina, fiind astfel posibila
suprapunerea operatiilor de citire
- înregistratoare de voce (voice recorders) si scriere: se poate citi o pagina în timp ce alta este scrisa.
Functionarea
- playere MP3 unui NAND Flash este similara altor dispozitive de intrare–iesire, cum
ar fi-simemory
hard-disk-ul pe care
sticks USBacesta(USBdoreste
drives,sa-lkeyînlocuiasca.
drives) Datorita acestei interfete indirecte
un sistem de calcul nu poate executa codul memorat într-un NAND Flash decât prin
- memory
intermediul unui
cards (PC card,
controler
ATA card,
de memorie
Compact Flash, Multimedia card, Smart
sau al unei masini secventiale dedicate.
Media, Secure Digital, etc.)

76

S-ar putea să vă placă și