MemorieFlash: Tecnologiae Progettazione - unicas.it NAND e RRAM sonoin faseavanzatadistudio con...
Transcript of MemorieFlash: Tecnologiae Progettazione - unicas.it NAND e RRAM sonoin faseavanzatadistudio con...
Memorie Flash:Tecnologia e Progettazione
©2010 Micron Technology, Inc. All rights reserved. Products are warranted only to meet Micron’s production data sheet specifications. Information, products, and/or specifications are subject to change without notice. All information is provided on an “AS IS” basis without warranties of any kind. Dates are estimates only. Drawings are not to scale. Micron and the Micron logo are trademarks of Micron Technology, Inc. All other trademarks are the property of their respective owners.
©2010 Micron Technology, Inc. | 1
Violante MoschianoPrincipal Design Engineer
Flash Memory Design Europe
Micron Technology
May 12
Memorie Flash:Tecnologia e Progettazione
• Mercato dei semiconduttori
▶ Mercato delle Memorie
▶ Applicazioni Memorie Flash
▶ Scaling e nuove tecnologie
• Il sistema memoria FLASH
▶ Evoluzione delle memorie non volatili
▶ Introduzione memorie ROM,EPROM,EEPROM,FLASH
©2010 Micron Technology, Inc. | 2
• NAND FLASH
▶ Caratteristiche, Architetture, principi di funzionamento
▶ Read, program, erase
▶ Amplificatore di lettura
▶ Program inhibit
▶ Erase inhibit
▶ Operazione di verifica (program/erase verify)
▶ Descrizione MLC/TLC
▶ Algoritmi TLC
▶ Architetture
May 12
Mercato dei SemiconduttoriPreliminary Annual Semiconductor Market Forecast - Millions of DollarsQ1 2012 Interim Update
CAGR2009 2010 2011 2012 2013 2014 2015 2010-15
Total Semiconductor 231,202 307,027 310,360 323,959 352,740 375,832 394,437 5.1% Integrated Circuits (IC) 193,122 254,916 254,173 263,161 285,984 304,155 319,332 4.6% Digital IC 156,985 207,976 207,005 214,127 231,930 246,561 259,179 4.5% Memory IC 44,201 67,381 58,493 57,059 64,280 70,402 74,504 2.0% DRAM 22,690 39,706 29,092 26,713 31,787 35,947 38,941 -0.4% SRAM 1,335 1,675 1,408 1,340 1,319 1,273 1,215 -6.2% Flash Memory 18,245 23,849 26,024 26,986 29,092 31,129 32,344 6.3% NAND 13,595 18,849 21,671 22,855 24,795 26,941 28,123 8.3% NOR 4,650 5,000 4,353 4,131 4,297 4,188 4,221 -3.3% Specialty Memory / EEPROM 1,931 2,151 1,969 2,020 2,082 2,053 2,004 -1.4%Source: IHS iSuppli (February 10, 2012)
©2010 Micron Technology, Inc. | 3May 12
Source : ESIA /WSTS� Il mercato dei semiconduttori e’ stimatooltre $300B per il 2012
� Analisi per il 2015 prevedono $400B
� Ad oggi, Asia-Pacific produce il 50% del mercato totale
� Il mercato delle memorie negli ultimi anni e’ cresciuto piu’ rapidamente di tutto ilmercato dei semiconduttori
Mercato delle Memorie
15,862
18,877
12,96211,486 11,527 11,669
16,395
21,843
11,75213,456
696
5,371
8,707
11,654
7,177
2,669
7,529
8,861 9,203 632
1,856
2,165
1,950
1,125
317
928
521 402
$5,000
$10,000
$15,000
$20,000
$25,000
$30,000
$35,000
$40,000
DRAM NAND NOR
©2010 Micron Technology, Inc. | 4May 12
3,870
7,7306,583 6,229
11,486
6,5334,368
6,066
11,527 11,669 11,752
5,351
8,418 8,339
$0
$5,000
1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011e 2012e
� Il mercato delle memorie e’ compostoprincipalmente da DRAM e FLASH (NAND/NOR).
� Nel 2012 il fatturato delle Nand Flash e’ previsto essere superiore a quello delleDRAM.
NAND/DRAM Revenue Market2. Worldwide NAND Revenue Share by Vendor, 2011 and 2010
2011 2010Rank Company Revenue($M) Share(%) Rank Company Revenue($M) Share(%)
1 Samsung 7,924 39.6% 1 Samsung 6,977 40.4%2 Toshiba 5,843 29.2% 2 Toshiba 5,534 32.1%3 Micron 2,387 11.9% 3 Micron 1,794 10.4%4 Hynix 2,333 11.7% 4 Hynix 1,646 9.5%5 Intel 1,534 7.7% 5 Intel 1,064 6.2%
6 Numonyx(ST Micro) 236 1.4%
Total Market 20,021 100.0% Total Market 17,251 100.0%
Notes: All are on branded product base.Source: IDC, March 2012
©2010 Micron Technology, Inc. | 5May 12
2. Worldwide DRAM Revenue Share by Vendor, 2011 and 20102011 2010
Rank Company Revenue($M) Share(%) Rank Company Revenue($M) Share(%)1 Samsung 12,587 42.9% 1 Samsung 14,995 38.2%2 Hynix 6,690 22.8% 2 Hynix 8,539 21.8%3 Elpida 3,871 13.2% 3 Elpida 6,428 16.4%4 Micron 3,524 12.0% 4 Micron 4,974 12.7%5 Nanya 1,192 4.1% 5 Nanya 1,700 4.3%6 PowerChip 485 1.6% 6 PowerChip 1,224 3.1%
7 Winbond 436 1.5% 7 ProMOS 650 1.7%8 ProMOS 347 1.2% 8 Winbond 478 1.2%
Others 237 0.8% Others 222 0.6%Total Market 29,368 100.0% Total Market 39,210 100.0%
Notes: All are on branded product base.Source: IDC, March 2012
Source: IDC, March 2012
Nand Flash Applicazioni
Attualmente Micron e’ leader
©2010 Micron Technology, Inc. | 6May 12
� Attualmente Micron e’ leader mondiale nel settore delle Nandflash con la realizzazione del dispositivo monolitico a piu’ altadensita’
Scaling e nuove tecnologieFrom RRAM set to follow 3-D flash, says IMECPeter Clarke EE Times
©2010 Micron Technology, Inc. | 7May 12
� Attualmente esistono diversi dispositivi a 18-20nm con la produzione iniziata e prevista crescente nei prossimi mesi
� 3D NAND e RRAM sono in fase avanzata di studio con diversi prototipi realizzati; ad oggi, entrambe le tecnologie risultano promettenti mantenendo le aspettative dicrescita del mercato delle memorie per i prossimi 10 anni.
Il sistema memoria FLASH Evoluzione delle memorie non volatili
� Una memoria a semiconduttore e’ NON VOLATILE quando mantiene i datimemorizzati anche in mancanza di tensione di alimentazione.
� Nel tempo sono stati sviluppati diversi tipi di memorie non volatili. Tutte sonocaratterizzate dal fatto che il numero di programmazioni possibili e’ limitato mentre ilnumero di letture e’ illimitato.
� Ogni singolo bit viene memorizzato in un singolo transistore di tipo MOS (cella) andando ad influenzare le caratteristiche di conduzione elettrica del transistore
©2010 Micron Technology, Inc. | 9May 12
andando ad influenzare le caratteristiche di conduzione elettrica del transistorestesso.
� La lettura del dato memorizzato avviene determinando il grado di conduzione del transistore contenente il dato, valutando la corrente che transita in esso; questo puo’ avvenire determinando il valore in termini assoluti oppure per confronto con la corrente che scorre in un transistore di riferimento.
� Nel corso degli ultimi dieci anni le memorie non volatili hanno maturato la capacita’ di immagazzinare piu’ di un bit per ogni cella: 2bc (MLC), 3bc(TLC), 4bc (NLC) .
Il sistema memoria FLASH Evoluzione delle memorie non volatili
� I piu’ diffusi tipi di memorie non volatili sono:� ROM Read Only Memory� EPROM Electrically Programmable Read Only Memory� EEPROM Electrically Erasable/Programmable Read Only Memory� FLASH Bulk Erasable Programmable Read Only Memory
� NOR FLASH� NAND FLASH
FA
MO
S
EP
RO
M
1T
EE
PR
OM
E2
PR
OM
NO
R F
lash
NA
ND
Fla
sh
MLC
NO
R
MLC
NA
ND
TLC
NA
ND
3D
NA
ND
©2010 Micron Technology, Inc. | 10May 12
Esiste una convenzione generalizzata per tutte le memorie non volatili di tipo Single level cell (SLC) per definire il dato programmato in una cella.Se una cella non e’ mai stata programmata, il transistore che la realizza e’ in grado di condurre corrente nel caso siano applicate le condizioniper la lettura e il dato corrispondente viene detto ‘1’.Nel caso una cella sia stata programmata, non sara in grado di condurre corrente e il dato viene detto ‘0’. Ne consegue che solo i bit ‘0’ di unaparola di dati sono programmati. Dove il bit vale ‘1’ , non viene fatto nulla.
1971 1977 1980 1985 1988 1989 1995 2005 2010
FA
MO
S
EP
RO
M
1T
EE
PR
OM
E2
PR
OM
NO
R F
lash
NA
ND
Fla
sh
MLC
NO
R
MLC
NA
ND
2008
TLC
NA
ND
3D
NA
ND
Il sistema memoria FLASHROM Read Only Memory
� L’elemento di memoria e’ un transistore MOS nel quale una parte, solitamente ilcontatto di drain, viene o non viene realizzato a seconda del dato da memorizzare. Se il contatto e’ realizzato, nel transistore puo’ passare corrente e il dato vale “1”. Al contrario, se nel transistore non passa mai corrente il dato vale “0”.
� I dati vengono programmati al momento della fabbricazione e non possono esseremai cambiati.
precharge
©2010 Micron Technology, Inc. | 11May 12
5V
0V
0
sensing
1 0 0
Il sistema memoria FLASHEPROM Electrically Programmable Read Only Memory
� L’elemento base costituente la memoria e’ il dispositivo FAMOS (Floating-gate Avalanche-injection MOS).
� I dispositivi FAMOS sono caratterizzati dalla presenza di due gate sovrapposte, di cui la gate piu’ vicina al canale e’ completamente isolata (circondata da ossido), mentre la gate piu’ lontana dalcanale e’ collegata come in un normale MOS.
� La gate isolata, sotto certe condizioni, puo’ accumulare elettroni e questo permette dimodificare la soglia di conduzione del dispositivo in modo che, per una certa tensione applicataalla gate di controllo, il transistore conduca corrente o meno.
� Il processo di accumulo di elettroni e’ determinato dalla generazione di elettroni “caldi” in regime di forte saturazione e dalla presenza di un forte campo trasversale tra gate e canale
©2010 Micron Technology, Inc. | 12May 12
regime di forte saturazione e dalla presenza di un forte campo trasversale tra gate e canaledovuto ad una elevata tensione sul terminale di gate.
� Esponendo la memoria a luce ultravioletta, i fotoni incidenti cedono energia agli elettroni cheritornano nella zona del canale.
Il sistema memoria FLASHEEPROM Electrically Erasable/Programmable Read Only Memory
� La memoria EEPROM e’ simile alla memoria EPROM con la possibilita’ di cancellaresingolarmente le celle per via elettrica.
� L’elemento base costituente la memoria e’ ancora una FAMOS, tuttavia una piccola appendiceche sovrappone la gate flottante al terminale di DRAIN cambia il meccanismo diprogrammazione/cancellazione.
� Lo spessore dell’ossido che separa il DRAIN dalla gate flottante e’ dell’ordine di alcuninanometri, che sono sufficienti ad indurre iniezione per effetto tunnel.
� La presenza di un transistor di selezione e’ resa necessaria perche’ il processo di cancellazione
©2010 Micron Technology, Inc. | 13May 12
� La presenza di un transistor di selezione e’ resa necessaria perche’ il processo di cancellazionepuo’ produrre una sovrascarica che lascia in conduzione il dispositivo FAMOS anche se la gate e’ zero (wordline non selezionata).
01
2V
Population Vth
SEL1 ROW1 BL1 SEL2 ROW2 BL2 AS
READ 2V 5V DAT 2V 0V FLT GND
WRITE 0 15V 15V 0V 0V 0V 15V FLT
WRITE1 0V 15V 15V 0V 0V 0V FLT
Il sistema memoria FLASHFLASH Bulk Erasable Programmable Read Only Memory
� La memoria di tipo FLASH e’ la memoria non volatile di piu’ grande diffusione in unaserie larghissima di applicazioni: telefoni cellulari, USB pen drivers, macchinefotografiche digitali , riproduttori MP3, SSD (Solid State Disk).
� La memoria flash e’ programmata e cancellata elettricamente. La programmazionepuo’ avvenire anche per singoli bit, ma la cancellazione avviene per singoli settori.
� Le memorie flash si dividono in due famiglie principali: NOR FLASH e NAND FLASH.
©2010 Micron Technology, Inc. | 14May 12
NOR FLASH
• Dimensione massima 1Gbit oggi• Random access time 60nS• Page size 8 byte• Serial access time 25nS• I/O X8, X16• Program speed 8uS/Byte• 700mS/Block
Adatta principalmente a contenere codiceeseguibile direttamente dalla memoria e dati
NAND FLASH
• Dimensione massima 128Gbit oggi• Random access time 50uS• Page size 16K byte• Serial access time 5nS• I/O X8• Program speed 200uS/512Byte• Erase speed 2mS/Block
Adatta principalmente a contenere file di datidi grandi dimensioni
Il sistema memoria FLASHComparazione flash NOR NAND
NOR
Word line(poly)
Bit line(metal)
Source line(Diff. Layer)
Unit Cell
Contact
NAND
Unit Cell
Word line(poly)
Source line
Cell Circuit
©2010 Micron Technology, Inc. | 15May 12
Source line(Diff. Layer)
2F2F2F2F
2F2F2F2F
4F2
Layout
Cross-sectionCell Size
5F5F5F5F
2F2F2F2F
10F2
Il sistema memoria FLASHNOR FLASH
� La memoria tipo NOR flash viene programmata con lo stesso meccanismo dellaEPROM iniettando elettroni nella gate flottante.
� La cancellazione avviene creando un campo elettrico tra gate flottante e Bulk disegno e di ampiezza tale da costringere gli elettroni a passare nel bulk per effettotunnel.
� Diverse configurazione possono essere usate per ottenere le condizioni dicancellazione:
Vg=-18V Vg=-9V Vg=0V
©2010 Micron Technology, Inc. | 16May 12
Vg=-18V Vg=-9V Vg=0V
VB=0V VB=9V VB=18
Il sistema memoria FLASHNAND FLASH
� La memoria tipo NAND flash viene programmata costringendo gli elettroni ad entrarenella gate flottante per effetto tunnel. E’ necessario che il canale sia formato e che ildrain sia polarizzato in modo tale da diventare una sorgente di elettroni.
� La cancellazione avviene costringendo gli elettroni a passare dalla gate flottante al Bulk applicando le condizioni Vg=0V e VB=18V. In questo caso gli elettroni sonoricevuti dal Bulk P-
©2010 Micron Technology, Inc. | 17May 12
Nand Flash � La memoria tipo NAND flash e’ sempre caratterizzata dalla presenza di una stringa di FAMOS.
� La stringa e’ selezionabile attraverso due MOS di controllo: SGS (select gate source) e SGD (select gate drain)
� Il drain della stringa e’ collegato alle bitline, SRC e Bulk sono comuni per tutto l’Array dimemoria
� Le operazioni di read e program avvengono per pagina. La pagina fisica e’ costituita da tutte le bl pari o dispari selezionate da una wl; questa classificazione e’ valida per le Nand flash definite come SBL (Shielded Bit Line Architecture)
� Negli ultimi anni sono state proposte architetture in cui la paginae’ costituita da tutte le bitline selezionate da una wl, in questo
©2010 Micron Technology, Inc. | 19May 12
e’ costituita da tutte le bitline selezionate da una wl, in questocaso si parla di ABL(All Bit Line Architecture)
WordlineCG
FG
X Cross-section Y Cross-section
Nand FlashArray Architecture
LWL31
RIN
G
CT
OR
n
X 2048
NAND BLOCK 0
LWL31
SGDSGD
LWL0
ST
RIN
G
SE
LE
CT
OR
n
SGS
SGD
LWL31
� Il Blocco e’ la minima unita’ cancellabile
©2010 Micron Technology, Inc. | 20May 12
SA – DATA IN 0
SA – DATA IN 1
SA – DATA IN 2
SA – DATA IN 3
SA – DATA IN 4
SA – DATA IN 5
SA – DATA IN 6
SA – DATA IN 7
MUX E/O
LWL0
GW
L31
GW
L0
ST
R
SE
LE
C
SA – DATA IN 0
SA – DATA IN 1
SA – DATA IN 2
SA – DATA IN 3
SA – DATA IN 4
SA – DATA IN 5
SA – DATA IN 6
SA – DATA IN 7
MUX E/O
DQ0 pin
DQ1 pin
DQ2 pin
DQ3 pin
DQ4 pin
DQ5 pin
DQ6 pin
DQ7 pin
NAND BLOCK nLWL0
SGS
SRC
SGS
cancellabile
� Dimensione fisica del blocco e’ :Nbitline X N Wordline
� Attualmente 32KByte bl x 64 wl= 16Mbit
Nand FlashOperazione elementare di lettura
� Cella programmata Vth=1-3V� Cella cancellata Vth<-1V
� Operazione di READ:� Tutte le BL della pagina selezionata (i.e. pagina pari)
sono precaricate a ~1V� Tutte le WL non selezionate sono polarizzate ad una
tensione piu’ alta della massima Vth presente in tuttala stringa ~5V (VPASS)
� I selettori di stringa del blocco selezionato sonopolarizzati a VCC (~2.4V) oppure a VPASS
©2010 Micron Technology, Inc. | 21May 12
polarizzati a VCC (~2.4V) oppure a VPASS� La WL selezionata e’ polarizzata alla tensione di lettura
VSEL (~0V) � Se la cella e’ cancellata, la stringa corrispondente sara’
conduttiva e la bl associata si potra’ scaricare, in queste condizioni l’amplificatore di lettura, connessoalla bl, discriminera’ un “1”
� Se la cella e’ programmata la stringa corrispondentenon sara’ conduttiva e la bl associata rimarra’ precaricata, in queste condizioni l’amplificatore dilettura, connesso alla bl, discriminera’ uno “0”
“1” “0”
0V-1V 1V 3V 5V
Population of
Nand FlashEffetto Tunnel
� La programmazione nelle nand flash avviene utilizzando l’effetto tunnel per il passaggio dielettroni dal substrato alla floating gate, durante il processo di cancellazione l’effetto tunnel sioccupa del passaggio inverso degli elettroni dalla floating gate al substrato.
� L’effetto tunnel consiste nella probabilita’ non nulla degli elettroni di superare una certa barrieradi potenziale (U) pur non avendo energia (E) superiore a detta barriera.
� L’effetto tunnel puo’ essere spiegato solo considerando le proprieta’ ondulatorie degli elettroni: la funzione Ψ penetra nella regione proibita e pur diminuendo esponenzialmente puo’ essere non nulla alla fine della regione proibita; poiche’ la funzione Ψ e’ legata alla probabilita’ di
©2010 Micron Technology, Inc. | 22May 12
non nulla alla fine della regione proibita; poiche’ la funzione Ψ e’ legata alla probabilita’ di trovare l’elettrone, ne consegue che la probabilita’ potrebbe essere non nulla.
Nand FlashOperazione di programmazione
� Nelle memorie Nand Flash, applicando una tensione alta alla gate e mantenendo il canale a zero (tramite S/D) e’ possibile indurre l’effetto tunnel.
� Nel caso in cui la barriera da superare ha forma triangolare l’effetto tunnel si definisce Fowler-Nordheim (FN).
� Il processo di iniezione di carica per FN modifica la tensione di soglia producendo l’operazionedi programmazione.
� La tensione di soglia nei MOS dipende dalla carica immagazzinata tra gate e canale:Vth = Vth0 −Q0/Cox
©2010 Micron Technology, Inc. | 23May 12
“0”-Program
P-well
N+
20V
0V 0V
N+
Vth = Vth0 −Q0/Cox L’accumulo di elettroni (-q) sulla Floating gate, produce uno spostamento positivo della Vth.
vpgmgnd
Nand FlashOperazione di cancellazione
� La cancellazione nelle nand flash avviene utilizzando l’effetto FN per il passaggio di elettronidalla floating gate al substrato.
0V
©2010 Micron Technology, Inc. | 24May 12
P-well
20V
Erase
N+ N+N+N+ N+
P-Well
NAND FLASH : Read, program, eraseAmplificatore di lettura (1)
� Nelle Nand Flash memory (SBL) ogni BL selezionata e’ collegata alla circuiteria di periferia dicolonna.
� La circuiteria di colonna e’ definita page buffer e include l’amplificatore di lettura e le circuiterieper la manipolazione dei dati. Il page buffer diventa di fatto il circuito di interfaccia tra array dimemoria e circuiti periferici.
� Il sistema di sensing diffusamente utilizzato nelle Nand flash memory e’ riportato sotto; la bl aifini del’operazione di lettura puo’ essere considerata una capacita’
� La sequenza di read prevede una fase di precarica della bl a seguito della quale, la bl e’ lasciata
©2010 Micron Technology, Inc. | 26May 12
� La sequenza di read prevede una fase di precarica della bl a seguito della quale, la bl e’ lasciatalibera di evolvere in funzione della conduzione della stringa.
PB
src
Shielded Bl sensing
Voltage sensing allowed: -precharge (red)-develop (blue)-strobe (green)
Blclamp xtr is the first stage of amplifier
blclampiload
Bl_0
Bl_1
Bl_2
icellTC
� Il transistor blclamp si occupa di definire la tensione di precarica della bl.
� Il valore della precarica di bl e’ definito dalla tensione di gate del xtr blclamp in configurazionecascode, la bl si precarichera’ al valore =( i ) – (vth del xtr blclamp).
� Alla fine della precarica (t1), la stringa e’ accesa attraverso il selettore di source (sgs) e la blpotra’ scaricarsi o meno a seconda della tensione di soglia della cella selezionata.
� Dopo un certo tempo (t2-t1) la bl viene campionata: il transistore di blclamp viene polarizzatoad una tensione (f) inferiore ad (i).
t1 t2
NAND FLASH : Read, program, eraseAmplificatore di lettura (2)
©2010 Micron Technology, Inc. | 27May 12
time
blclamp if
bl
sgstime
time
t1 t2
TC
time
0
1
� A questo punto:� Se il valore di tensione della bl e’ inferiore al valore =( f ) – (vth del xtr blclamp) il
transistor blclamp e’ acceso.� Se il valore di tensione della bl e’ superiore al valore =( f ) – (vth del xtr blclamp) il
transistor blclamp e’ spento.
� La capacita’ TC restera’ precaricata a vcc se il xtr blclamp e’ spento, mentre si portera’ a circa ilvalore della bl se il xtr blclamp e’ acceso. Il rapporto tra la capacita’ di Bl e quella di Tc e’ circa 100:1.
� La corrente di sensing puo’ essere quindi definita come la corrente in grado di scaricare la
NAND FLASH : Read, program, eraseAmplificatore di lettura (3)
©2010 Micron Technology, Inc. | 28May 12
� La corrente di sensing puo’ essere quindi definita come la corrente in grado di scaricare la capacita’ di bl della quantita’ (i)-(f) nel tempo di sensing pari a (t2-t1)
� Infine, il valore presente sulla capacita’ TC e’ “risquadrato”da una semplice circuito logico (latch o inverter).
blclamp
TC
)12(
)()(
tt
fixCIsen bl −
−=
NAND FLASH : Read, program, eraseLa corrente di stringa
VBL
Sourc
e (
0V)
Vg
Vpass
SGD (Vcc/Vpass)
SGS (Vcc/Vpass)
Vpass
Vpass
Vpass
� Il grafico vg/Id mostra la corrente di stringa (32 celle) funzione della tensione di gate di una cella selezionate(fissata la vth) mantenendo le celle non selezionate a Vpass.
� E’ possibile individuare tre zone di funzionamento
(1) La corrente e’ limitata dalla cella selezionata, la tensione di bl e quella di source si riportanodirettamente ai capi della cella selezionata quindila vds della cella e’ circa ~ vbl.
(2) Con l’aumento di corrente nella stringa la caduta
©2010 Micron Technology, Inc. | 29May 12
(2) Con l’aumento di corrente nella stringa la cadutadi tensione dal lato source e dal lato drain diventanon trascurabile e la vds della cella selezionata e’ funzione della stringa stessa.
(3) Un ulteriore aumento di corrente e’ pero’ limitatodalla resistenza totale delle isole di source e drain e dalla resistenza di canale, in queste condizioni la cella selezionata vede ai suoi capi vbl/32
� I parametri descritti nell’equazione della corrente disensing devono essere definiti in modo tale che la corrente di stringa si trovi nella zona (1)
(1)
(2)
(3)
NAND FLASH : Read, program, eraseProgrammazione
� L’operazione di program, dal punto di vista fisico, e’ stata descritta ed il fenomeno di FN indottoproduce lo spostamento della vth della cella selezionata.
� L’operazione di “inhibit” e’ necessaria per evitare di programmare una cella che alla fine del processo di programmazione deve contenere un dato “1”. L’operazione di “inhibit” sara’ poi necessaria per controllare le vth delle celle che vengono programmate con un dato “0” .
� A causa del fatto che la wl e’ comune (20V per tutte le celle) il modo per inibire le celle e’ quellodi polarizzare ad una tensione alta, circa 8V, il canale: in questo modo il campo tra gate e canale risulta essere insufficiente per la generazione del FN per le celle che non si devonoprogrammare o che hanno completato il processo di programmazione.
©2010 Micron Technology, Inc. | 30
(a) “0”-Program
8V8V
P-wellP-well
N+N+N+N+
20V20V
0V 0V
(b) “1”-Program (Inhibit)
May 12
programmare o che hanno completato il processo di programmazione.
� Il processo di polarizzazione ad alta tensione del canale non avviene per via diretta, ma per effetto capacitivo indotto dalle celle non selezionate/selezionate della stringa. Il processo e’ definito “Channel Boost”.
� L’operazione di inhibit e’ tra le piu’ complesse nella progettazione di memorie nand flash. Un processo di inhibit inefficace produce disturbi che riducono l’affidabilita’ della NAND flash.
� Il processo piu’ complesso nella operazione di inibizione e’ quello di “Channel Boost”, esistonomolte tecniche che permettono di massimizzare l’efficienza di boosting:
SB: Self Boost (Conventional SLC NAND) LSB: Local Self Boost DSSB: Drain Side Self Boost MDSSB: Modified Drain Side Self Boost EMDSSB: Enhanced Modified Drain Side Self Boost AMDSSB: Advanced Modified Drain Side Self Boost
NAND FLASH : Read, program, eraseProgram Inhibit (1)
©2010 Micron Technology, Inc. | 31
(a) “0”-Program
8V8V
P-wellP-well
N+N+N+N+
20V20V
0V 0V
(b) “1”-Program (Inhibit)
May 12
� Le diverse tecniche di boosting sono state introdotte per ridurre i fenomeni che limitano la tensione di canale contrastando i fattori che determinano la riduzione di potenziale (leakage, GIDL, etc.)
� In figura sono riportate due diverse celle, sulla stessa riga, ma appartenenti a due stringhedifferenti e quindi collegate a due distinte bl.
� L’informazione di inhibit e’ riportata sulle BLs e questo permette di applicare l’inibizione in modoselettivo: una cella da programmare avra’ uno “0” sulla rispettiva bl, mentre una cella che non sivuole programmare avra’ la vcc sulla rispettiva bl.
� Lo schema riportato nel grafico temporale si riferisce alla tecnica di “self boost”
vcc0sgd
Vcc (or bias)
t1 t2 t3
NAND FLASH : Read, program, eraseProgram Inhibit (2)
©2010 Micron Technology, Inc. | 32May 12
timeChannel Bl
Bl
Unsel Wl
selWl
time
time
time
time
Vcc -vthBoost (~8V)
vseedvinhibit
vseedvinhibit
vpgm
� Nella prima fase (t1-t0) di generazione del boost, il selettore di drain (sgd) e’ polarizzato ad una tensione paria vcc (i.e. 2.4V), le wl non selezionate e selezionata vengono portate ad una tensione pari a vseed.
� Le bl che sono polarizzate a vcc caricheranno il canale ad una tensione pari a Vcc-vth(sgd), il transistor sgd in queste condizioni e’ al limite dello spegnimento. Le bl che sono polarizzate a zero polarizzeranno il canale e iltransistor sgd rimarra’ in accensione per tutta le sequenza.
� A questo punto, le wl vengono fatte passare dalla tensione di vseed a quella di vinhibit (t2-t1).
sgdVcc (or bias)
t1 t2 t3t0
� Le stringhe il cui canale e’ polarizzato a Vcc-vth(sgd) sono di fatto“flottanti” e tenderanno ad accoppiarsi capacitivamente seguendo la salita della wl (channel boost).
NAND FLASH : Read, program, eraseProgram Inhibit (3)
©2010 Micron Technology, Inc. | 33May 12
timeChannel Bl
Bl
Unsel Wl
selWl
time
time
time
time
Vcc -vthBoost (~8V)
vseedvinhibit
vseedvinhibit
vpgm
� Le stringhe il cui canale e’ polarizzato a zero non subiranno l’effettodi accoppiamento poiche’ il transistor sgd terra’ il canale collegatoalla bl.
� Nell’ultima fase (t3-t2), la wl selezionata viene portata alla tensionedi program (~20V), le celle da programmare vedranno una differenzadi potenziale tra gate e canale ~20V, mentre le celle da inibire dicirca 12V (20V-8V).
� Il fenomeno di tunnelling si attiva solo se tra gate e canale sidetermina una differenza di potenziale di circa 15V, ne consegue chele celle le cui bl si trovano a zero si programmeranno, mentre le cellele cui bl sono a vcc saranno inibite non cambiando le proprie vth.
NAND FLASH : Read, program, eraseI disturbi di program
� Vpgm disturb: disturbo indotto sulla wl selezionataper le celle che devono essere inibite.
� Vpass disturb: disturbo indotto sulle wl non selezionate il cui canale e’ tenuto a zero.
� Per ridurre il Vpgm disturb, e’ necessario aumentareil valore di tensione di Vpass usato per le wl non selezionate durante la fase di “channel boost”, questo aumenta il valore del potenziale del canale
©2010 Micron Technology, Inc. | 34May 12
questo aumenta il valore del potenziale del canaleottenuto per accoppiamento. Tuttavia, aumentando ilvalore di vpass si aumenta la differenza di potenzialetra le wl non selezionate e il canale tenuto a zero per le bl da programmare.
� Esiste solo una possibile finestra di valori di vpasstali da ottenere un compromesso tra Vpass disturb e Vpgm disturb
� Lo scaling della tecnologia riduce la finestra e questoe’ un serio limite allo sviluppo delle NAND flash.
NAND FLASH : Read, program, eraseErase inhibit
� Il processo di cancellazione segue quello di programmazione in modo inverso
� Nelle normali flash NAND, le tensioni negative non sono presenti e quindi il FN inverso vieneapplicato polarizzando P-well (bulk) ad alta tensione (20V) e lasciando le wl del bloccoselezionato a zero.
� Il bulk risulta comune a tutta la memoria e quindi a molteplici blocchi. Il modo per ottenere la cancellazione del blocco selezionato evitando la cancellazione del blocco non selezionato e’ definito “erase inhibit”.
� L’inibizione di Erase e’ ottenuta mantenendo “float” le wl dei blocchi non selezionatipermettendo loro di essere “boostati” in modo da mantenere la differenza di potenziale
©2010 Micron Technology, Inc. | 35May 12
permettendo loro di essere “boostati” in modo da mantenere la differenza di potenzialeinsufficiente ad attivare FN.
P-wellP-well
N+N+N+N+
20V20V
0V ~16V by Boosting
(a) Erase (b) Erase-inhibit
Nand array
NAND FLASH : Read, program, eraseOperazione di verifica
� A causa di effeti di non idealita’ e di differenze tra le celle, il processo di iniezione di carica per effetto FN avviene con valori diversi di tensione di gate e con risposte diverse da cella a cella.
� In Figura e’ riportata una distribuzione di Vth “libera di evolvere” applicando una specificatensione di gate incrementale (impulso, rilettura, impulso, rilettura).
� Come e’ possibile osservare applicando 18V ad una wl e programmando con un singolo impulso, otteniamo una distribuzione di vth di celle programmate che varia da ~0.250V- 2.5V.
� Il processo di scaling aumenta drasticamente la sigma di questa di distribuzione, che impone un processo adattativo nella costruzione degli stati di program e di erase.
©2010 Micron Technology, Inc. | 36May 12
processo adattativo nella costruzione degli stati di program e di erase.
NAND FLASH : Read, program, eraseOperazione di verifica
� La programmazione di una memoria FLASH e’ quindi un processo adattativo la cui sequenzapuo’ essere descritta dai seguenti step:1) Applicazione di un’impulso di programmazione2) Verifica mediante lettura che la cella si sia programmata ( lettura di uno “0” ) “Program
Verify”
� Questo processo viene ripetuto fino a quando tutte le celle hanno superato il valore di verificacon successo. Questo pero’ garantisce solo che il verify e’ passato nelle condizioni ditemperatura e di tensione di alimentazione presenti nel momento in cui e’ stato eseguito. Se le condizioni di temperatura e tensione di alimentazione cambiano, cambia la Vt dei transistoriMOS e la velocita’ di commutazione dei circuiti di lettura. E’ quindi possibile che una cella
©2010 Micron Technology, Inc. | 37May 12
MOS e la velocita’ di commutazione dei circuiti di lettura. E’ quindi possibile che una cellaprogrammata abbia passato il program verify al tempo zero, ma poi fallisca la lettura in un istante successivo.
� E’ quindi necessario eseguire il program verify introducendo un margine tale da garantire che, in qualunque condizione la cella sia stata verificata, sicuramente passera’ sempre come programmata durante la lettura in qualsiasi condizione. Questo puo’ essere ottenuto eseguendoil program verify con una tensione applicata piu’ alta di quella della normale lettura.
� Analoghe considerazione possono essere fatte per il processo di cancellazione e la rispettivaverifica definita come erase verify
Memorie MLC/TLC� Le tecniche Multy-Level-Cell (MLC) permettono di aumentare la capacita’ di una memoria
NAND/NOR pur mantenendo lo stesso array fisico di celle. Chiaramente, questo riduce il costoper bit poiche’ l’area di silicio resta invariata, ma la dimensione logica aumenta.
� MLC� 2bit/cell 4 stati logici, TLC � 3bit/cell 8 stati logici
population
SLC
1 0
� Il compromesso da accettare quando si utilizzanomemorie a piu’ bit per cella e’ quello di unariduzione delle performance (read/program) e diaffidabilita’. Molte applicazioni utilizzano questo tipodi memorie per ridurre i costi dell’ hardware
©2010 Micron Technology, Inc. | 39May 12
population
1 0
11 01 00 10
population
111L1 L7
MLC
TLC
di memorie per ridurre i costi dell’ hardware favorendone lo sviluppo.
� La complessita’ nel progettare una memoria flash aumenta (legge non lineare) con l’aumento del numero di bit cella e con lo scaling della tecnologia.
� Negli ultimi anni, nuovi algoritmi, sistemi dicontrollo e algorithmi di ECC (error correction code) sono stati sviluppati per permettere di mantenere le prospettive di crescita delle memorie multy-livello
Memorie MLC/TLC algoritmiProgram
Program start
Lower page
Middle page
Pgm pulse
Pgm vfy LP
Pgm pulse
Pgm vfyL1/L2/L3
Pread Lp
Pgm pulse
Pgm vfyL1/L2/L3 /L4/L5/L6/L7
Pread Mp
Pread LpUpper page
©2010 Micron Technology, Inc. | 40May 12
Count fails
#fails<max fails
loop<max
Y
N
Pgm fail
Y N
Pgm pass
L1/L2/L3
Count fails
#fails<max fails
loop<max
Y
N
Pgm fail
Y N
/L4/L5/L6/L7
Count fails
#fails<max fails
loop<max
Y
N
Pgm fail
Y N
Pgm pass Pgm pass
Memorie MLC/TLC algoritmiRead
Read start
Lower page
Middle page
Read L4
Read L2
Read L6
Read L1
Read L3
Read L5
Upper page
Lp =1 se le celle hanno una vth < RL4
Mp=1 se le celle hanno una vth <RL2 oppure le celle hanno una vth >RL6
Up=1 se le celle hanno una vth < RL1 oppure le celle hanno un RL3<vth<RL5oppure le celle hanno una vth > RL7
©2010 Micron Technology, Inc. | 41May 12
Read L5
Read L7
exit exitexit
111 001011 101
RL1
000100 010 110
Vt
RL2 RL3 RL4 RL5 RL6 RL7
Lower page bit
Middle page bit
Upper page bit
Memorie MLC/TLC algoritmiERASE
Erase start
Preprogram
Erase pulse
Erase vfy (true)
Count fails
#fails<max fails
N
Soft Program
Soft pgm vfy
Count fails
#fails<max fails
N
Erase vfy
Count fails
#fails<max fails
N
©2010 Micron Technology, Inc. | 42May 12
loop<max
N
Ers fail
Y
N
loop<max
N
Ers fail
Y
N
loop<max
N
Ers fail
Y
NGoto erase pulse
Erase PASS
� Soft program/preprogram e’ un impulso di program eseguito su tutte le celle di una stringacontemporaneamente.
� Erase VFY/Softpgmvfy e’ una operazione di lettura per stringa, il risultato e’ sensibile alla cellacon la vth piu’ alta di tutta la stringa.
NAND FLASH TLC: Chip Architecture
ARRAY
Page Buffer(sense amplifier, data cache, I/O)
©2010 Micron Technology, Inc. | 43May 12
Data path (pileline, redundancy)
Analog blocks (charge pumps, reference, voltages regulators)
Microcontroller(ALU,ROM,RAM )
G. G. Marotta, et al., "A 3bit/cell 32Gb NAND flash memory at 34nm with 6MB/s program throughput and with dynamic 2b/cell blocks configuration mode for a program throughput increase up to 13MB/s " ISSCC Dig. Tech.. Papers, Feb. 2010, pp. 444-445