Chapter 3 Semiconductor Memories

Transcription

Chapter 3 Semiconductor Memories
Chapter 3
Semiconductor Memories
Jin-Fu Li
Department of Electrical Engineering
National Central University
Jungli, Taiwan
Outline





Introduction
Random Access Memories
Content Addressable Memories
Read Only Memories
Flash Memories
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
2
Overview of Memory Types
Semiconductor Memories
Read/Write Memory or
Random Access Memory (RAM)
Read Only Memory (ROM)
Random Access
Memory (RAM)
Non-Random Access
Memory (RAM)
•Static RAM (SRAM)
•Dynamic RAM (DRAM)
•Register File
•FIFO/LIFO
•Shift Register
•Content Addressable
Memory (CAM)
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
•Mask (Fuse) ROM
•Programmable ROM (PROM)
•Erasable PROM (EPROM)
•Electrically EPROM (EEPROM)
•Flash Memory
•Ferroelectric RAM (FRAM)
•Magnetic RAM (MRAM)
3
Memory Elements – Memory Architecture
 Memory elements may be divided into the
following categories
Random access memory
Serial access memory
Content addressable memory
 Memory architecture
2m+k bits
row decoder
row decoder
2n-k words
row decoder
row decoder
column decoder
k
n-bit address
2m-bit data I/Os
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
column mux,
sense amp,
write buffers
4
1-D Memory Architecture
S1
S2
S0
Word0
S1
Word1
S2
Word2
A0
S3
Decoder
S0
A1
Ak-1
Sn-2
Sn-1
Wordn-2
Sn-1
Wordn-1
Advanced Reliable Systems (ARES) Lab.
Word2
Wordn-2
Wordn-1
m-bit
Input/Output
m-bit
Input/Output
n select signals: S0-Sn-1
Word1
S3
Sn-2
Storage
element
Word0
n select signals are reduced
to k address signals: A0-Ak-1
Jin-Fu Li, EE, NCU
5
Memory Architecture
S0
A0
A1
Ak-1
Wordi-1
Row Decoder
S1
Word0
Sn-1
A0
Aj-1
Wordni-1
Column Decoder
Sense Amplifier
Read/Write Circuit
m-bit Input/Output
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
6
Block
Column
Row
Hierarchical Memory Architecture
Input/Output
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
7
SRAM Block Diagram
[A. Pavlov and M. Sachdev, “Power-Aware
SRAM Design and Test”, 2008, Springer.]
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
8
Address
Row Decoder
Conceptual 2-D Memory Organization
Memory Cell
Column decoder
Data I/Os
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
9
Memory Elements – RAM
Generic RAM circuit
Bit line conditioning
Clocks
RAM Cell
n-1:k
k-1:0
Address
Advanced Reliable Systems (ARES) Lab.
Sense Amp, Column
Mux, Write Buffers
write data
Jin-Fu Li, EE, NCU
Write
Clocks
read data
10
RAM – SRAM Cells
6-T SRAM cell
word line
bit
- bit
bit
- bit
4-T SRAM cell
word line
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
11
RAM – DRAM Cells
4-T dynamic RAM (DRAM) cell
word line
bit
- bit
3-T DRAM cell
Read
Write
Read
data
Write
data
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
12
RAM – DRAM Cells
1-T DRAM cell
word line
word line
Vdd or
Vdd/2
bit
bit
Layout of 1-T DRAM (right)
Vdd
word line
bit
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
13
RAM – DRAM Retention Time
Write and hold operations in a DRAM cell
WL=1
+
on
Cs
+
WL=0
Input Vdd
-
+
off
Vs
Cs
-
Vs
Write Operation
Hold
Vs  Vmax  VDD  Vtn
Qmax  C s (VDD  Vtn )
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
14
RAM – DRAM Retention Time
Charge leakage in a DRAM Cell
Vs(t)
WL=0
Vmax
IL
+
off
Cs
-
Minimum logic 1
voltage
V1
Vs(t)
th
t
dQs
)
dt
dVs
I L  C s (
)
dt
Vs
I L  C s (
)
t
C
t h | t | ( s ) Vs
IL
I L  (
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
15
RAM – DRAM Refresh Operation
As an example, if IL=1nA, Cs=50fF, and the difference of Vs is 1V, the
hold time is
50 10 15
t h
1  0.5s
9
110
Memory units must be able to hold data so long as the power is
applied. To overcome the charge leakage problem, DRAM arrays
employ a refresh operation where the data is periodically read from
every cell, amplified, and rewritten.
The refresh cycle must be performed on every cell in the array with a
minimum refresh frequency of about
1
f refresh
2t h
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
16
RAM – DRAM Read Operation
WL=1
IL
+
on
Cbit
Cs
+
-
Vbit
-
Vs
Vf
Vf
Qs  C sV s
Qs  C sV f  CbitV f
Vf  (
Cs
)Vs
C s  Cbit
This shows that Vf<Vs for a store logic 1. In practice, Vf is usually
reduced to a few tenths of a volt, so that the design of the sense
amplifier becomes a critical factor
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
17
RAM – SRAM Read Operation
Vdd precharge
precharge
precharge
bit, -bit
word line
word
data
- bit
bit
data
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
18
RAM – SRAM Read Operation
Vdd-Vtn precharge
precharge
precharge
Vdd
bit, -bit
word line
word
data
- bit
bit
data
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
19
RAM – SRAM Read Operation
bit, -bit
word
data
- bit
bit
load
V2
sense +
pass
sense -
V1
sense common
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
pulldown
20
RAM – Write Operation
N5
N6
write data
word
write
N3
N4
word
- bit
write
bit
N1
bit, -bit
N2
cell, -cell
write data
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
21
RAM – Write Operation
- bit
Pbit
5V -cell
bit
cell 0V
Nbit
- write
write
ND
Advanced Reliable Systems (ARES) Lab.
PD
write-data
Jin-Fu Li, EE, NCU
22
RAM – Read Stability
[A. Pavlov and M. Sachdev, “Power-Aware
SRAM Design and Test”, 2008, Springer.]
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
23
RAM – Write Stability
[A. Pavlov and M. Sachdev, “Power-Aware
SRAM Design and Test”, 2008, Springer.]
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
24
RAM – Row Decoder
a<1> a<0>
Advanced Reliable Systems (ARES) Lab.
word<3>
word<0>
word<2>
word<1>
word<1>
word<2>
word<0>
word<3>
a<1> a<0>
Jin-Fu Li, EE, NCU
25
RAM – Row Decoder
word
a1
a0
a0
a1
Complementary AND gate
Advanced Reliable Systems (ARES) Lab.
a2
a3
Pseudo-nMOS gate
Jin-Fu Li, EE, NCU
26
RAM – Row Decoder
Symbolic layout of row decoder
output
Vss
Advanced Reliable Systems (ARES) Lab.
Vdd
Jin-Fu Li, EE, NCU
Vss
27
RAM – Row Decoder
Symbolic layout of row decoder
Vdd
output
Vss
a3
-a3
a2
Advanced Reliable Systems (ARES) Lab.
-a2
a1
-a1
a0
Jin-Fu Li, EE, NCU
28
RAM – Row Decoder
Predecode circuit
word<7>
word<6>
word<5>
word<4>
word<3>
word<2>
word<1>
word<0>
a2
Advanced Reliable Systems (ARES) Lab.
a1
a0
Jin-Fu Li, EE, NCU
29
RAM – Row Decoder
Actual implementation
a0
a4
a3
a2
a1
word
-a0
clk
Pseudo-nMOS example
a0
word
a1
Advanced Reliable Systems (ARES) Lab.
a2
en
Jin-Fu Li, EE, NCU
30
RAM – Column Decoder
bit<7>
bit<6>
bit<5>
bit<4>
selected-data
bit<3>
bit<2>
bit<1>
bit<0>
to sense amps and write ckts
-bit<7>
-bit<6>
-bit<5>
-bit<4>
-selected-data
-bit<3>
-bit<2>
-bit<1>
-bit<0>
a0
-a0
Advanced Reliable Systems (ARES) Lab.
a1
-a1
a2
Jin-Fu Li, EE, NCU
-a2
31
RAM – Multi-port RAM
write
read0
read1
-rbit1 -rbit0 -rwr_data
rwr_data rbit0
-rbit1 -rwr_data
rwr_data rbit0
rbit1
write
read0
read1
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
32
RAM – Expandable Reg. File Cell
wr-b addr<3:0>
rd-a addr<3:0>
rd-b addr<3:0>
write-data
write-data
read-data 0 read-data 1
write-enable(row)
read0
read1
Write-enable (column)
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
33
Specific Memory – FIFO
Two port RAM
Write-Data
Read-Data
Write-Address
Read-Address
Write-Clock
Read-Clock
Full
Empty
FIFO Write (Read) address control design
WP (RP)
0
0
1
Write
(Read)
rst
clk
Advanced Reliable Systems (ARES) Lab.
1
1
incrementer
Jin-Fu Li, EE, NCU
34
Specific Memory – LIFO
LIFO (Stack)
Require:
Single port RAM
One address counter
Empty/Full detector
Algorithm:
Address
Advanced Reliable Systems (ARES) Lab.
Write: write current address
Address=Address+1
Read: Address=Address-1
read current address
Empty: Address=0
Full : Address=FFF…
Jin-Fu Li, EE, NCU
35
Specific Memory – LIFO
LIFO address control design
-1
0
1
0
decrementer
0
1
Write
1
1
rst
clk
incrementer
Empty
Read
Write
Full
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
36
Specific Memory – SIPO
SIPO cell design
Read
Parallel-data
Sh-In
Sh-Out
Clk
-Clk
SIPO
Read
Sh-In
Clk
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
37
Specific Memory – Tapped Delay Line
delay<5>
din
Clk
delay<4>
delay<3>
delay<2>
delay<1>
delay<0>
0
0
0
0
0
0
1
1
1
1
1
1 dout
32-stage SR
16-stage SR
Advanced Reliable Systems (ARES) Lab.
8-stage SR
4-stage SR
Jin-Fu Li, EE, NCU
2-stage SR
1-stage SR
38
Read-Only Memories
 Read-Only Memories are nonvolatile
 Retain their contents when power is removed
 Mask-programmed ROMs use one transistor per
bit
 Presence or absence determines 1 or 0
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
39
Non-volatile Memory – ROM
4x4 NOR-type ROM
Vdd
WL0
GND
WL1
WL2
GND
WL3
BL0
Advanced Reliable Systems (ARES) Lab.
BL1
BL2
Jin-Fu Li, EE, NCU
BL3
40
Non-volatile Memory – ROM
4x4 NAND-type ROM
Vdd
BL0
BL1
BL2
BL3
WL0
WL1
WL2
WL3
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
41
ROM Example
 4-word x 6-bit ROM
 Represented with dot diagram
 Dots indicate 1’s in ROM
weak
pseudo-nMOS
pullups
A1 A0
Word 0: 010101
Word 1: 011001
Word 2: 100101
Word 3: 101010
2:4
DEC
ROM Array
Y5
Y4
Y3
Y2
Y1
Y0
Looks like 6 4-input pseudo-nMOS NORs
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
42
ROM Array Layout
 Unit cell is 12 x 8 (about 1/10 size of SRAM)
Unit
Cell
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
43
Row Decoders
 ROM row decoders must pitch-match with ROM
 Only a single track per word!
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
44
Complete ROM Layout
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
45
Building Logic with ROMs
 Use ROM as lookup table containing truth table
 n inputs, k outputs requires 2n words x k bits
 Changing function is easy – reprogram ROM
 Finite State Machine
 n inputs, k outputs, s bits of state
 Build with 2n+s x (k+s) bit ROM and (k+s) bit reg
inputs
n
ROM Array
2n wordlines
DEC
inputs
n ROM k
s
outputs
k
s
state
k outputs
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
46
Specific Memory – CAM
Content addressable memories (CAMs) play an
important role in digital systems and applications
 such as communication, networking, data compression,
etc.
Each storage element of a CAM has the hardware
capability to store and compare its contents with
the data broadcasted by the control unit
CAM types
 dynamic or static
 binary or ternary
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
47
Difference Between RAM and CAM
Address
RAM
Data
R/W
Data
Hit
CAM
Cmd
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
Address
48
CAM – Applications
CAM architecture
CAM Memory Array
NxM-bit words
Data
Match
Cache architecture
CAM
Match 0
Match 1
Data In
CAM Memory Array
NxM-bit words
Match 2
Match 3
Match 4
Match 5
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
RAM
Word 0
Word 1
Word 2
Word 3
Word 4
Word 5
Data I/Os
49
CAM – Architecture
Comparand Register
Responder
Memory Array
Valid Bit
Address
Input
Address Decoder
Mask Register
Hit
Address
Output
I/O Register
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
50
CAM – Basic Components
Comparand Register
 It contains the data to be compared with the content of the memory
array
Mask Register
 It is used to mask off portions of the data word(s) which do not
participate in the operations
Memory Array
 It provides storage and search (compare) medium for data
Responder
 It indicates success or failure of a compare operation
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
51
CAM – Binary Cell
NAND-type BCAM cell
NOR-type BCAM cell
bit
-bit
bit
-bit
WL
WL
-d
d
-d
d
M2
M1
M2
M1
Match
M3
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
M3
Match
52
CAM – Ternary Cell
A ternary CAM (TCAM) cell stores one of the
following values
 0, 1, and X (don’t care)
A typical TCAM cell structure
 Let (QL,QR)=(CL,CR)=(0,1), (1,0), and (0,0) denote the
ternary data 0, 1, and X
WL
Vss
QL
QR
ML
CR
Advanced Reliable Systems (ARES) Lab.
CL
Jin-Fu Li, EE, NCU
53
CAM – Ternary Cell
NAND-type TCAM cell
NOR-type TCAM cell
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
54
CAM – Word Structure
bit[0]
bit[0]
bit[w-1]
bit[w-1]
Wi
1
0
Vdd
P
Mi
10
0
1
comparison logic
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
55
CAM – Organization
CAM circuit
Match Data In
Read Data (Test)
Normal RAM Read/Write Circuitry
Hit
Match0
Match1
Match2
Match3
precharge
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
56
Non-volatile Memory – Flash Memory
Flash memory
 A nonvolatile, in-system-updateable, high-density memory
technology that is per-bit programmable and per-block or perchip erasable
In-system updateable
 A memory whose contents can be easily modified by
the system processor
Block size
 The number of cells that are erased at the same time
Cycling
 The process of programming and erasing a flash
memory cell
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
57
Flash Memory – Definition
Erase
 To change a flash memory cell value from 0 to 1
Program
 To change a flash memory cell value from 1 to 0
Endurance
 The capability of maintaining the stored information
after erase/program/read cycling
Retention
 The capability of keeping the stored information in time
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
58
Basics
How can a memory cell commute from one state
to the others independently of external condition?
 One solution is to have a transistor with a threshold voltage that can
change repetitively from a high to a low state
 The high state corresponding to the binary value “1”
 The low state corresponding to the binary value “0”
Threshold voltage of a MOS transistor
 VT  K  Q' / Cox
 K is a constant depending on the gate and substrate material,
doping, and gate oxide thickness
 Q’ is the charge in the gate oxide
 Cox is the gate oxide capacitance
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
59
Floating Gate Transistor
Floating gate (FG) transistor
Control Gate
CFC
Floating Gate
CFS
CFB
Source
CFD
Drain
Substrate
Energy band diagram of an FG transistor
Substrate
Advanced Reliable Systems (ARES) Lab.
Floating
Gate
Jin-Fu Li, EE, NCU
Control
Gate
60
Flash Memory – Threshold Voltage
 When the voltages (VCG & VD) are applied to the control
gate and the drain, the voltage at the floating gate (VFG) by
capacitive coupling is expressed as
 V FG  Q FG  C FC VCG  C FD V D
C
C
C
 C  Ctotal  Ctotal  C total
C FD
total
FC
FS
FB
 The minimum control gate voltage required to turn on the
control gate is
C
Q
C
total
FG
FD
 VT (CG )  C VT ( FG )  C  C VD
FC
FC
FC
 where VT(FG) is the threshold voltage to turn on the floating gate
transistor
 The difference of threshold voltages between two memory
data states (“0” and “1” ) can be expressed as
 VT (CG )   QFG
C FC
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
61
Flash Memory – Structures
[R. Micheloni, L. Crippa, and A. Marelli, “Inside NAND Flash Memories”, 2010, Springer.]
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
62
Flash Memory – Structures
Basic
unit
Bit line
Bit line
WL 1
Select
gate
(drain)
WL 2
WL 1
Basic
unit
WL 2
WL 3
WL 3
WL 4
WL N
WL N
Select
gate
(source)
Source line
NOR structure
Advanced Reliable Systems (ARES) Lab.
NAND structure
Jin-Fu Li, EE, NCU
63
Flash Memory – Program Operation
 Program operation of the Intel’s ETOX flash cells (NOR structure)
 Apply 6V between drain and source
 Generates hot electrons that are swept across the channel from source
to drain
 Apply 12 V between source and control gate
 The high voltage on the control gate overcomes the oxide energy
barrier, and attracts the electrons across the thin oxide, where they
accumulate on the floating gate
 Called channel hot-electron injection (HEI)
+12V
Control Gate
GND
+6V
Floating Gate
Source
Drain
Substrate
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
64
Flash Memory – Erase Operation
 Erase operation of the Intel’s ETOX flash cells (NOR
structure)
 Floating the drain, grounding the control gate, and applying 12V to the
source
 A high electric field pulls electrons off the floating gate
 Called Fowler-Nordheim (FN) tunneling
GND
Control Gate
+12V
Floating Gate
Source
Drain
Substrate
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
65
Flash Memory – Erase Operation
 Threshold voltage depends on oxide thickness
 Flash memory cells in the array may have slightly
different gate oxide thickness, and the erase
mechanism is not self-limiting
 After an erase pulse we may have “typical bits” and
“fast erasing bits”
VT
typical bit
fast erasing bit
log t
0
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
66
Flash Memory – Read Operation
 Read operation of the Intel’s ETOX flash cells (NOR
structure)
 Apply 5V on the control gate and drain, and source is grounded
 In an erased cell, the VC>VT
 The drain to source current is detected by the sense amplifier
 In a programmed cell, the VC<VT
 The applied voltage on the control gate is not sufficient to turn it on.
The absence of current results in a 0 at the corresponding flash
memory output
+5V
GND
Control Gate
+5V
Floating Gate
Source
Drain
Substrate
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
67
Flash Memory – Array
[R. Micheloni, L. Crippa, and A. Marelli, “Inside NAND Flash Memories”, 2010, Springer.]
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
68
Flash Memory – Dual-Plane NAND Flash
[R. Micheloni, L. Crippa, and A. Marelli, “Inside NAND Flash Memories”, 2010, Springer.]
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
69
Flash Memory – NAND Flash Organization
[C.-W. Chou and J.-F. Li, IEEE VLSI-DAT 2011.]
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
70