: 비휘발성 메모리
앞선 포스트에서 공부하였던 DRAM의 경우는 휘발성 메모리로 전원이 끊어지면 저장된 데이터가 휘발되지만
Flash Memory의 경우 전원이 끊어져도 저장된 데이터를 보존하는 메모리입니다.
Flash Memory는 MOSFET과 플로팅 게이트(Floating Gate)가 합쳐진 구조라 볼 수 있습니다.
이때 플로팅 게이트에 데이터가 반영구적으로 저장됩니다.
여기서 Flash Memory는 셀이 직렬로 배열된 NAND Flash와 셀이 병렬로 배열된 NOR Flash로 나눌 수 있습니다.
Floating Gate Transistor는 다음과 같은 구조로 이루어져 있습니다.
이때 Tunnel Oxide 두께는 최대 8~9nm 정도인데, 이는 Control Gate에 전압을 인가하였을 때 전자의 터널링이 잘 일어나야 하지만 전압을 인가하지 않았을 때 저장된 전자가 쉽게 빠져나오지 못하도록 하기 위함입니다.
Inter Poly Dielectric의 경우 두께가 최대 15nm로, 전자가 Control Gate로 더이상 터널링을 하지 못하고 튕겨져 나오도록 하기 위해 Tunnel Oxide보다 두껍게 됩니다.
1. Program Mechanism
① Channel Hot Electron (CHE)
: 높은 드레인 전압에 의해 소스에서 드레인으로 이동하는 전자가 공핍 영역에서 강한 전계로 인해 높은 운동 에너지를 가지게 되면서 일부가 산화막 전위 장벽을 뚫고 들어가 Floating Gate에 Trap
② Channel F-N
: FN Tunneling을 활용하여 Floating Gate에 전자 Trap
→ 드레인에 0 전압을 인가하기 때문에 소스에서 드레인으로 전자 이동이 없다.
2. Erase Mechanism
① Source F-N
: 게이트에 0 전압, 소스에 높은 전압을 인가하여 FN Tunneling을 활용하여 Floating Gate에서 전자를 소스로 방출
② Channel F-N
: 게이트에 0 전압, 바디에 높은 전압을 인가하여 FN Tunneling을 활용하여 Floating Gate에서 전자를 방출
※ FN Tunneling vs Direct Tunneling
① FN(Fowler-Nordheim) Tunneling
: Electric Field가 강해서 산화막의 에너지 밴드 기울기가 급격해져 Barrier의 두께가 얇아짐에 따라 발생하는 터널링
② Direct Tunneling
: 게이트 산화막 두께 자체가 얇아서 발생하는 터널링
1. NOR Flash Memory
- NOR Flash Array Architecture
Cell이 병렬로 연결된 것을 확인할 수 있습니다.
- NOR Layout
위의 Layout에서 확인할 수 있듯이 Cell Size는 10F^2입니다.
NAND Flash와 비교할 때 NOR의 Cell Size가 더 큰데, 이는 BL Contact 때문입니다.
2. NAND Flash Memory
- NAND Flash Array Architecture
Cell이 직렬로 연결된 것을 확인할 수 있습니다.
- NAND Layout
위의 Layout에서 확인할 수 있듯이 Cell Size는 4F^2입니다.
1. Erase Operation
소스에 Strong Positive Voltage를 인가하면 Source FN Tunneling이 발생하여 Erase를 하게 됩니다.
2. Program Operation
드레인에 Strong Positive Voltage를 인가하면 Channel Hot Electron Injection이 발생하여 Program를 하게 됩니다.
3. Read Operation
문턱 전압의 변화를 이용하여 전류의 흐름을 감지해 데이터를 Read 하게 됩니다.
1. Erase Operation
Body에 Strong Positive Voltage를 인가하면 Floating Gate에 있는 전자가 빠져나와 Erase를 하게 됩니다.
2. Program/Inhibit Operation
- Program
게이트에 Strong Positive Voltage를 인가하면 FN Tunneling이 발생하여
Floating Gate에 전자가 Trap되어 Program을 하게 됩니다.
다른 셀에서는 Tunneling이 발생하지 않도록 Vpgm(20V)보다 낮은 전압을 WL에 인가해줍니다.
- Inhibit
다른 WL에 연결된 Cell (다른 Page 내의 Cell)의 경우 전압을 보다 낮게 인가해주어 Tunneling이 발생하는 것을 방지할 수 있지만 같은 Page 내의 Cell이 Programming 되는 것을 방지하기 위한 다른 조치가 필요하게 됩니다.
Selected Cell과 같은 WL을 공유하는 다른 Unselected Cell들이 Program되지 않도록 BL에 Vinh전압(약 9V)을 인가해주어야 합니다. 이렇게 높은 전압을 인가해주면 위에서 볼 수 있듯이 BL에 인가된 전압은 Substrate의 전압을 결정하고, 이로 인해 게이트와 Substrate 사이의 전압차가 감소하여 Program을 방지할 수 있습니다.
그러나 BL에 높은 전압을 인가하는 것에는 단점이 존재합니다.
먼저 해당 BL에 연결된 트렌지스터들은 높은 전압을 견딜 수 있어야 하고, 따라서 옥사이드 두께가 두꺼워야 하기 때문에 칩 사이즈가 커지게 됩니다.
또한, BL의 길이가 길기 때문에 저항이 커지고, 따라서 RC Delay가 발생하게 됩니다.
이러한 문제를 해결하기 위해 고안된 것이 Channel Self-Boosting입니다.
즉, 높은 전압을 인가하지 않아도 Substrate의 전압을 조절하여 Program이 발생하는 것을 방지할 수 있습니다.
▶ Channel Self-Boosting Operation
: Selected Cell과 WL을 공유하는 Unselected Cell의 Program을 방지하는 기술
위의 Inhibit 동작과 다르게 BL에 천천히 Vcc(약 3V) 정도의 전압을 인가시켜주면 메모리 셀의 채널이 Vcc에서 SSL의 트렌지스터의 문턱 전압을 뺀 만큼의 값(Vcc-Vth)으로 Precharge 됩니다.
이후 점점 증가하는 BL의 전압값에 따라 채널의 전압이 Vcc-Vth에 도달하면 SSL의 트렌지스터가 Floating 상태가 됩니다.
이후 프로그래밍 전압(Vpgm)과 패스 전압(Vpass)을 인가하면 워드라인과 채널 사이의 커플링 커패시턴스에 의해 채널 전압이 프로그램 방지전압(약 8V)까지 상승하게 됩니다.
(Vch = Ccell*Vpassw/(Ccell+Csub))
그러면 역시나 게이트와 Substrate 간의 전압차가 감소하여 Program을 방지할 수 있는 것입니다.
※ Floating 상태
: 외부와 완벽히 고립되어 주변 상태에 영향을 크게 받는 상태
※ Coupling Capacitance (커플링 커패시턴스)
: 두 인접한 도체 사이의 정전기적 상호작용
: 한 도체의 전압이 변하면 해당 전위 변화가 다른 도체에도 영향
3. Read Operation
읽고 싶은 Cell의 WL에는 0V를, BL에는 1V 미만의 전압을 인가하고,
그 외의 WL에는 4V 이상의 전압을 인가해준 뒤 BL의 Current를 Sensing하여 저장된 데이터를 Read 해 줍니다.
0V를 인가하는 이유는 만약 "1"이 저장되어 있다면 음의 문턱전압을 가지고, "0"이 저장되어 있다면 양의 문턱전압을 가지기 때문에 전류가 흐르는지 아닌지를 확임함으로써 저장된 데이터를 읽을 수 있습니다.
또한, 다른 WL에 4V 이상의 전압을 인가해주는 이유는 "0"이 저장되어 있는 경우에도 문턱전압이 4V 미만이기 때문에 어떤 데이터가 저장되어 있던 전류가 발생하게 되기 때문입니다.
CMOS (Complementary MOSFET) (0) | 2024.12.16 |
---|---|
DRAM (0) | 2024.11.15 |