KR100515867B1 - 불휘발성 반도체 메모리 - Google Patents

불휘발성 반도체 메모리 Download PDF

Info

Publication number
KR100515867B1
KR100515867B1 KR10-2003-0066492A KR20030066492A KR100515867B1 KR 100515867 B1 KR100515867 B1 KR 100515867B1 KR 20030066492 A KR20030066492 A KR 20030066492A KR 100515867 B1 KR100515867 B1 KR 100515867B1
Authority
KR
South Korea
Prior art keywords
data
data storage
storage unit
memory cell
read
Prior art date
Application number
KR10-2003-0066492A
Other languages
English (en)
Other versions
KR20040027407A (ko
Inventor
다나까도모하루
Original Assignee
가부시끼가이샤 도시바
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 가부시끼가이샤 도시바 filed Critical 가부시끼가이샤 도시바
Publication of KR20040027407A publication Critical patent/KR20040027407A/ko
Application granted granted Critical
Publication of KR100515867B1 publication Critical patent/KR100515867B1/ko

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • G11C11/5635Erasing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5642Sensing or reading circuits; Data output circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Read Only Memory (AREA)
  • Semiconductor Memories (AREA)

Abstract

면적의 증가없이, 프로그램 시의 임계값 제어를 고정밀도로 행한다. 비트선 BLek, BLok에는 프로그램/리드 시에 사용하는 데이터 회로 REGR이 접속된다. 데이터 회로 REGR은 데이터 기억부 DS1, DS2, DS3을 갖는다. 데이터 기억부 DS1은, 비트선 BLek, BLok에 접속된다. 데이터 기억부 DS1과 데이터 기억부 DS3과의 사이에는, 데이터 전송 회로 Qn10이 접속된다. 데이터 기억부 DS2와 데이터 기억부 DS3과의 사이에는 데이터 전송 회로 Qn9가 접속된다. 데이터 기억부 DS2는 자신이 기억하는 데이터에 기초하여, 데이터 기억부 DS1의 데이터를 강제로 변경하는 기능을 갖는다.

Description

불휘발성 반도체 메모리{NON-VOLATILE SEMICONDUCTOR MEMORY}
본 발명은 불휘발성 반도체 메모리에 관한 것으로, 특히 다치 NAND 셀형 플래시 메모리(Multi-level NAND cell type flash memory), 예를 들면 4치 NAND 셀형 플래시 메모리에 사용된다.
플래시 메모리는 부유 게이트 전극 및 컨트롤 게이트 전극을 갖는 메모리 셀로 구성되며, 데이터 프로그램/소거는 부유 게이트 전극 내의 전하량의 조절에 의해 실현된다. 이 전하량은 메모리 셀의 임계값 전압을 결정하는데, 예를 들면 메모리 셀이 마이너스의 임계값 전압을 갖고 있는 경우를 "1" 상태, 메모리 셀이 플러스의 임계값 전압을 갖고 있는 경우를 "0" 상태로 한다.
최근, 1 비트당 가격(비트 단가)을 내리거나, 또는 1 메모리칩이 갖는 기억 용량을 증가시키는 것을 목적으로 하여, 1 메모리 셀이 복수 비트 데이터를 기억하는 다치 플래시 메모리의 연구, 개발이 진행되고 있다.
여기서, 1 메모리 셀이 n(n은 2 이상의 자연수) 비트 데이터, 즉 2n값을 기억하는 경우, 그 메모리 셀은 2n 가지의 상태(2n의 임계값대)를 갖게 된다. 예를 들면, 1 메모리 셀이 2 비트 데이터를 기억하는 경우, 그 메모리 셀은 4개의 임계값 대를 갖는다.
이 임계값대의 수는, 1 메모리 셀에 기억하는 비트 수의 증가에 비례하여 증가하는 한편, 플래시 메모리의 내부 전원 전압은 저하하는 경향이 있다. 즉, 1 메모리 셀에 기억하는 비트 수가 증가함에 따라, 임계값대의 수가 증가하고, 1개의 임계값대의 폭은 좁아진다. 따라서, 다치 플래시 메모리에서는 메모리 셀의 임계값 전압의 제어를 정밀하게 행하여, 신뢰성을 향상시키는 것이 중요하게 된다.
메모리 셀의 임계값 전압을 높은 정밀도로 제어하기 위한 기술로서는, 예를 들면 라이트(기입) 횟수에 대응하여, 라이트 전압을 일정한 비율로 단계를 상승시키는 방법(단계 상승법)이 알려져 있다(예를 들면, 비특허 문헌1 참조).
이 방법에 대하여 간단히 설명하면, 라이트 전압의 단계 상승은 연속하는 복수의 라이트 펄스의 크기를 바꾸는 것에 의해 실현된다. 예를 들면, 이들 라이트 펄스의 크기는 0.2V/10μsec의 비율로, 점점 크게 한다. 라이트 펄스를 라이트 동작의 대상이 되는 복수의 메모리 셀에 인가할 때마다, 이들 메모리 셀의 임계값 전압을 확인(검증)하는데, 예를 들면 이들 모든 메모리 셀의 임계값 전압이 소정의 검증 레벨에 도달하면, 라이트 펄스의 인가를 종료한다.
[비특허 문헌1]
Fast and Accurate Programming Method for Multi-level NAND EEPROMs, pp.129-130, Digest of 1995 Symposium on VLSI Technology
다치 플래시 메모리에서도, 1 메모리칩이 갖는 기억 용량을 증가시키는 것을 목적으로 하여, 메모리 셀의 미세화가 진행되고 있다. 이 미세화에 수반하여, 메모리 셀끼리의 간격이 좁아져, 다양한 문제를 야기시키고 있다.
특히, 메모리 셀의 부유 게이트 전극끼리의 간격이 좁아지면, 상호 인접하는 복수의 부유 게이트 전극 사이의 정전 용량이 증가한다. 그 결과, 선택된 1 메모리 셀에 소정의 데이터를 기입하면, 그 1 메모리 셀에 인접하는 비선택의 메모리 셀의 부유 게이트 전극의 전위가 변화한다. 이것은, 비선택의 메모리 셀의 임계값 전압이, 라이트 동작과는 별도로, 변동하는 것을 의미하며, 다치 플래시 메모리의 신뢰성을 저하시킨다.
이러한 문제에 대응할 수 있는 기술로서는, 1 메모리 셀에 대하여, 2회의 라이트 루틴에 의해 라이트 동작을 실행하는 방법(2회 기록법)이 알려져 있다. 각 루틴에서는, 각각 예를 들면 상술한 단계 상승법이 적용된다. 이에 의해, 부유 게이트 전극 사이의 정전 용량의 증가에 기인하는 메모리 셀의 임계값 전압의 변동에 영향을 받지 않는 고정밀도의 임계값 제어를 실현할 수 있다.
그러나, 소위 2회 기록법을 채용하는 경우, 1회째의 라이트 루틴의 개시로부터 2회째의 라이트 루틴의 종료까지, 라이트 데이터를 어딘가에 유지해 두어야한다. 왜냐하면, 라이트 데이터의 값에 대응하여, 부유 게이트 전극에 전하를 주입하는지의 여부가 결정되기 때문이다.
따라서, 다치 플래시 메모리에서는 라이트 데이터를 기억해 두기 위한 기억 회로만큼, 칩 사이즈가 증대하고, 또한 이것이 제조 비용의 증대를 초래하는 원인이 되기도 한다.
본 발명의 목적은, 메모리 셀에 기억하는 데이터를 다치화해도, 칩 면적이 극단적으로 증가하지 않거나, 또는 메모리 셀의 임계값 전압을 고정밀도로 제어할 수 있는 2회 기록법을 적용할 수 있는 다치 플래시 메모리의 데이터 회로(라이트/리드 시에 다치 데이터를 일시적으로 기억해 두는 기억 회로)를 제공하는 것에 있다.
본 발명의 불휘발성 반도체 메모리는 메모리 셀과, 상기 메모리 셀의 일단에 접속되는 비트선과, 상기 비트선에 접속되어, 상기 메모리 셀에 관한 프로그램 데이터 또는 리드 데이터를 일시적으로 기억하는 데이터 회로를 구비하고, 상기 데이터 회로는 제1, 제2 및 제3 데이터 기억부와, 상기 제1 및 제3 데이터 기억부 사이에 접속되는 제1 데이터 전송 회로와, 상기 제2 및 제3 데이터 기억부 사이에 접속되는 제2 데이터 전송 회로를 갖고, 상기 제1 데이터 기억부는 상기 비트선에 접속되며, 상기 제2 데이터 기억부는 자신이 기억하는 데이터에 기초하여, 상기 제1 데이터 기억부의 데이터를 강제로 변경하는 기능을 갖는다.
상기 제1 및 제2 데이터 기억부는 캐패시터에 의해 구성된다. 상기 제1 데이터 기억부는 MOS 캐패시터에 의해 구성된다. 상기 제2 데이터 기억부는 게이트가 상기 제2 데이터 전송 회로에 접속되는 MOS 트랜지스터에 의해 구성되고, 상기 MOS 트랜지스터의 드레인과 상기 제1 데이터 기억부와의 사이에는 제3 데이터 전송 회로에 접속된다.
상기 제3 데이터 기억부는 래치 회로에 의해 구성된다. 상기 래치 회로는 CM0S 플립플롭 회로에 의해 구성된다.
상기 데이터 회로는 컬럼 선택 스위치를 경유하여 데이터선에 접속되는 제4 데이터 기억부와, 상기 제1 및 제4 데이터 기억부 사이에 접속되는 제4 데이터 전송 회로를 더 갖는다.
상기 제4 데이터 기억부는 래치 회로에 의해 구성된다. 상기 래치 회로는 CM0S 플립플롭 회로에 의해 구성된다.
상기 데이터 회로는, 상기 비트선과 상기 제1 데이터 기억부와의 사이에 접속되는 클램프 회로와, 상기 제1 데이터 기억부에 접속되는 프리차지 회로를 더 포함한다.
본 발명의 불휘발성 반도체 메모리는 상기 제3 데이터 기억부에 기억된 데이터에 기초하여, 상기 메모리 셀에 대한 프로그램의 완료 유무를 판단하는 검지 회로를 더 구비한다.
상기 제1 및 제2 데이터 전송 회로는 MOS 트랜지스터에 의해 구성된다. 상기 제3 및 제4 데이터 전송 회로는 MOS 트랜지스터에 의해 구성된다. 상기 메모리 셀은 2 비트 이상의 데이터를 기억한다. 상기 메모리 셀은 부유 게이트 전극과 컨트롤 게이트 전극을 갖는 불휘발성 메모리 셀이다.
본 발명의 불휘발성 반도체 메모리는, 상기 데이터 회로 내에서의 상기 리드 데이터의 이동을 제어하는 제어 회로를 더 구비한다.
상기 메모리 셀이 4개의 상태를 갖는 경우에, 상기 제어 회로는 제1 리드 전위에서 상기 메모리 셀로부터 판독한 제1 리드 데이터를 상기 제3 데이터 기억부에 기억시키는 수단과, 상기 제1 리드 데이터를 상기 3 데이터 기억부로부터 상기 제2 데이터 기억부로 전송시키는 수단과, 제2 리드 전위로 상기 메모리 셀로부터 판독한 제2 리드 데이터를 상기 제1 데이터 기억부에 기억시키는 수단과, 상기 제2 데이터 기억부에 기억된 상기 제1 리드 데이터에 기초하여, 상기 제1 데이터 기억부에 기억된 상기 제2 리드 데이터의 값을 강제로 변경시키는 수단과, 상기 제2 리드 데이터를 상기 1데이터 기억부로부터 상기 제4 데이터 기억부로 전송시키는 수단을 포함한다.
본 발명의 불휘발성 반도체 메모리는 상기 데이터 회로 내에서의 상기 프로그램 데이터의 이동을 제어하는 제어 회로를 더 구비한다.
상기 제어 회로는, 상기 프로그램 데이터를 상기 제4 데이터 기억부에 기억시키는 수단과, 상기 프로그램 데이터를 상기 제4 데이터 기억부로부터 상기 제3 데이터 기억부로 전송시키는 수단과, 상기 프로그램 데이터를 상기 제3 데이터 기억부로부터 상기 제2 데이터 기억부로 전송시키는 수단을 포함한다.
상기 메모리 셀이 2 비트 데이터를 기억하는 기능을 갖고, 또한 그 중 1 비트 데이터가 이미 상기 메모리 셀에 기억되어 있는 경우에, 상기 제어 회로는, 상기 프로그램 데이터를 상기 제4 데이터 기억부로부터 상기 제3 데이터 기억부로 전송시킨 후에, 상기 제4 데이터 기억부의 상태를 리세트하는 수단과, 상기 메모리 셀에 기억된 상기 1 비트 데이터를 상기 제4 데이터 기억부에 판독하는 수단을 포함한다.
상기 제어 회로는 라이트 동작 시에, 상기 제3 데이터 기억부에 기억된 상기 프로그램 데이터의 값에 기초하여, 상기 메모리 셀의 임계값 전압을 변동시킬지의 여부를 결정하는 수단을 포함한다.
상기 제3 데이터 기억부에 기억된 상기 프로그램 데이터의 값은, 검증 판독에 의해 상기 메모리 셀로부터 판독된 데이터에 의해 변경된다. 상기 제2 데이터 기억부에 기억된 상기 프로그램 데이터의 값은, 항상 변화하지 않는다.
상기 제어 회로는, 상기 메모리 셀에 대한 프로그램이 완료된 후, 상기 제3 데이터 기억부의 상태를 리세트하는 수단과, 상기 제2 데이터 기억부에 기억된 상기 프로그램 데이터를 상기 제3 데이터 기억부로 전송하는 수단을 포함한다.
상기 제2 및 제3 데이터 기억부에 상기 프로그램 데이터가 기억되고, 라이트 동작 시에, 상기 제3 데이터 기억부에 기억된 상기 프로그램 데이터의 값에 기초하여, 상기 메모리 셀의 임계값 전압을 변동시킬지의 여부를 결정하는 경우에, 상기 제어 회로는 검증 판독에 의해 상기 리드 데이터를 상기 제1 데이터 기억부에 기억시키는 수단과, 상기 제2 데이터 기억부에 기억된 상기 프로그램 데이터의 값에 대응하여, 상기 제1 데이터 기억부에 기억된 상기 리드 데이터의 값을 강제로 변경시키는 수단과, 상기 제1 데이터 기억부에 기억된 상기 리드 데이터를 상기 프로그램 데이터로서 상기 제3 데이터 기억부에 기억시키는 수단을 포함한다.
상기 제어 회로는 검증 판독에 의해 상기 리드 데이터를 상기 제1 데이터 기억부에 기억시키는 수단과, 상기 제4 데이터 기억부에 기억된 상기 1 비트 데이터의 값에 대응하여, 상기 제1 데이터 기억부에 기억된 상기 리드 데이터의 값을 강제로 변경시키는 수단과, 상기 제1 데이터 기억부에 기억된 상기 리드 데이터를, 상기 프로그램 데이터로서 상기 제3 데이터 기억부에 기억시키는 수단을 포함한다.
본 발명의 불휘발성 반도체 메모리는 전기적으로 재기록 가능한 불휘발성 반도체 메모리 셀과, 상기 메모리 셀에 연결되는 비트선과, 상기 메모리 셀의 데이터를 판독하기 위한 판독 회로를 구비한다. 또한, 상기 판독 회로는, 비트선과 연결되는 제1 데이터 기억부와, 상기 제1 데이터 기억부의 데이터를 자신이 기억하고 있는 데이터에 따라 재기입하는 기능을 갖춘 제2 데이터 기억부와, 상기 제1 데이터 기억부의 데이터를 판독하는 기능을 갖춘 제3 데이터 기억부와, 상기 제3 데이터 기억부의 데이터를 상기 제2 데이터 기억부로 전송하는 데이터 전송 회로를 구비한다.
또한, 본 발명의 불휘발성 반도체 메모리는, 상기 메모리 셀의 데이터를 상기 비트선을 통하여 상기 제1 데이터 기억부에 판독하고, 상기 제2 데이터 기억부의 데이터에 따라 상기 제1 데이터 기억부의 판독 데이터를 재기입하고, 그 후 상기 제3 데이터 기억부의 데이터를 상기 제2 데이터 기억부로 전송하고, 또한 그 후, 상기 제3 데이터 기억부에서 상기 제1 데이터 기억부의 데이터를 판독하는 판독 제어 회로를 구비한다.
상기 제1 및 제2 데이터 기억부는 캐패시터에 전하를 축적함으로써 데이터를 기억한다.
상기 데이터 전송 회로는 제1 MOS 트랜지스터로 구성되고, 상기 제2 데이터 기억 회로는 제2 MOS 트랜지스터로 구성되며, 상기 제2 MOS 트랜지스터의 소스는 제3 MOS 트랜지스터를 통하여 상기 제1 데이터 기억 회로의 캐패시터의 제1 전극에 연결되고, 상기 제2 MOS 트랜지스터의 게이트는 상기 제1 MOS 트랜지스터의 소스에 연결된다.
상기 제3 데이터 기억 회로는 2개의 CMOS 플립플롭으로 구성되고, 상기 제1 MOS 트랜지스터의 드레인에 접속되고, 또한 제4 MOS 트랜지스터를 통하여 상기 제1 데이터 기억 회로의 캐패시터의 제1 전극에 연결된다.
이하, 도면을 참조하면서, 본 발명의 불휘발성 반도체 메모리에 대하여 상세히 설명한다.
1. 전제
우선, 이하의 설명을 이해하기 쉽게 하기 위해, 전제 조건에 대하여 다음과 같이 규정한다. 단, 이 전제 조건은, 설명을 이해하기 쉽게 하기 위해 설정하는 것으로, 본 발명은 이 전제 조건 이외의 조건인 경우에도 성립하는 것이다.
본 발명은 1 메모리 셀에 n(n은, 2 이상의 자연수) 비트 데이터, 즉 2n값이 기억되는 다치 플래시 메모리를 대상으로 하지만, 이하의 실시예에서는 그 대표예 로서, 4치 NAND 셀형 플래시 메모리에 대하여 설명한다.
메모리 셀에는 4 종류의 데이터 "00", "01", "10", "11"이 기억되는 것으로 한다. 메모리 셀의 임계값 전압이 가장 낮은 상태, 예를 들면 임계값 전압이 마이너스이고, 제1 임계값대에 속하는 상태를 데이터 "11"이 기억된 상태로 하고, 메모리 셀의 임계값 전압이 2번째로 낮은 상태, 예를 들면 임계값 전압이 플러스이고, 제2 임계값대에 속하는 상태를 데이터 "10"이 기억된 상태로 하고, 메모리 셀의 임계값 전압이 3번째로 낮은 상태, 예를 들면, 임계값 전압이 플러스이고, 제3 임계값대에 속하는 상태를 데이터 "00"이 기억된 상태로 하고, 메모리 셀의 임계값 전압이 가장 높은 상태, 예를 들면 임계값 전압이 플러스이고, 제4 임계값 대에 속하는 상태를 데이터 "01"이 기억된 상태로 한다.
또한, 메모리 셀에는, 4 종류의 데이터, 즉 4치 데이터가 기억되는 것으로 했기 때문에, 예를 들면 데이터 프로그램/리드 시에는, 논리 하위 페이지 데이터에 대한 프로그램/리드 동작과, 논리 상위 페이지 데이터에 대한 프로그램/리드 동작이 필요하게 된다. 여기서, 데이터 "**" 중 우측의 *를 논리 하위 페이지 데이터로 하고, 좌측의 *를 논리 상위 페이지 데이터로 한다.
또한, 메모리 셀에 관해서는, 데이터 "11"이 기억되어 있는 상태를 소거 상태로 하고, 데이터 "10", "00", "01"이 기억되어 있는 상태를 라이트 상태로 한다.
2. 개요
(D 전체 구성 예
도 1은 본 발명의 일례에 따른 4치 NAND 셀형 플래시 메모리의 주요부를 도시하고 있다.
참조 부호 1은, 메모리 셀 어레이이다. 메모리 셀 어레이(1)는 예를 들면, 직렬 접속된 복수의 메모리 셀과 그 양단에 1개씩 접속된 2개의 셀렉트 트랜지스터로 구성되는 NAND 셀 유닛을 갖는다. 메모리 셀 어레이(1)의 회로 예 및 구조 예에 대해서는 후술하겠다.
데이터 회로(2)는 복수의 기억 회로를 포함하고 있다. 데이터 회로(2)의 회로 예에 대해서는 후술하겠다. 여기서는, 데이터 회로(2)의 기능에 대하여 간단히 설명한다.
데이터 회로(2)는 라이트 시에 2 비트(4치)의 라이트 데이터를, 리드 시에 2 비트(4치)의 리드 데이터를, 각각 일시적으로 기억한다. 이 때문에, 라이트/리드 동작의 대상이 되는 선택된 메모리 셀에 접속되는 1개의 비트선에 대하여, 최저 2개의 기억 회로가 설치된다. 2개의 기억 회로 중 하나는 논리 하위 페이지 데이터를 기억하고, 다른 하나는 논리 상위 페이지 데이터를 기억한다.
워드선 제어 회로(3)는 로우 어드레스 디코더 및 워드선 드라이버를 포함하고 있다. 워드선 제어 회로(3)는 동작 모드(라이트, 소거, 리드 등)와 로우 어드레스 신호가 지정하는 어드레스에 기초하여, 메모리 셀 어레이(1) 내의 복수의 워드선의 전위를 제어한다. 워드선 제어 회로(3)의 회로 예에 대해서는 후술한다.
컬럼 디코더(4)는 컬럼 어드레스 신호에 기초하여, 메모리 셀 어레이(1)의 컬럼을 선택한다.
프로그램시, 라이트 데이터는 데이터 입출력 버퍼(7) 및 I/O 감지 증폭기(6)를 경유하여, 선택된 컬럼에 속하는 데이터 회로(2) 내의 기억 회로 내에 입력된다. 또한, 리드시 리드 데이터는 선택된 컬럼에 속하는 데이터 회로(2) 내의 기억 회로 내에 일시적으로 기억되고, 이 후 I/O 감지 증폭기(6) 및 데이터 입출력 버퍼(7)를 경유하여, 메모리칩(11)의 외부로 출력된다.
로우 어드레스 신호는 어드레스 버퍼(5)를 경유하여 워드선 제어 회로(3)에 입력된다. 컬럼 어드레스 신호는 어드레스 버퍼(5)를 경유하여, 컬럼 디코더(4)에 입력된다.
웰/소스선 전위 제어 회로(8)는 동작 모드(라이트, 소거, 리드 등)에 기초하여, 메모리 셀 어레이(1)를 구성하는 복수의 블록에 대응하는 복수의 웰 영역(예를 들면, n 웰과 p 웰로 이루어지는 더블 웰 영역)의 전위, 및 소스선의 전위를 각각 제어한다.
전위 발생 회로(승압 회로 : 9A)는, 예를 들면 라이트 시에, 라이트 전위(예를 들면, 약 20V)Vpp나, 전송 전위(예를 들면, 약 10V)Vpass 등을 발생시킨다. 이들 전위 Vpp, Vpass는 전환 회로(9B)에 의해, 예를 들면 메모리 셀 어레이(1)를 구성하는 복수의 블록 중 선택된 블록 내의 복수개의 워드선으로 분류된다.
또한, 전위 발생 회로(9A)는, 예를 들면 소거 시에 소거 전위(예를 들면, 약 20V)VppE를 발생시키고, 이 전위 VppE를 메모리 셀 어레이(1)를 구성하는 복수의 블록 중 1개 또는 2개 이상의 선택된 블록에 대응하는 1개 또는 2개 이상의 웰 영역(n 웰과 p 웰의 쌍방)에 제공한다.
일괄 검지 회로(batch detection circuit : 10)는 프로그램 시에, 메모리 셀에 정확하게 소정의 데이터가 기입되었는지의 여부를 검증하고, 소거 시에, 메모리 셀의 데이터가 깔끔하게 소거되었는지의 여부를 검증한다.
커맨드 인터페이스 회로(12)는, 메모리칩(11)과는 별도의 칩(예를 들면, 호스트 마이크로 컴퓨터)에 의해 생성되는 제어 신호에 기초하여, 데이터 입출력 버퍼(7)에 입력되는 데이터가 호스트 마이크로 컴퓨터로부터 제공된 커맨드 데이터인지의 여부를 판단한다. 데이터 입출력 버퍼(7)에 입력되는 데이터가 커맨드 데이터인 경우, 커맨드 인터페이스 회로(12)는 커맨드 데이터를 스테이트 머신(제어 회로 : 13)으로 전송한다.
스테이트 머신(13)은 커맨드 데이터에 기초하여, 플래시 메모리의 동작 모드(라이트, 소거, 리드 등)를 결정하고, 또한 그 동작 모드에 대응하여, 플래시 메모리의 전체 동작, 구체적으로 설명하면, 데이터 회로(2), 워드선 제어 회로(3), 컬럼 디코더(4), 어드레스 버퍼(5), I/O 감지 증폭기(6), 데이터 입출력 버퍼(7), 웰/소스선 전위 제어 회로(8), 전위 생성 회로(9A), 전환 회로(9B) 및 일괄 검지 회로(10)의 동작을 제어한다.
(2) 메모리 셀 어레이의 구성 예
도 2는 메모리 셀 어레이의 구성예를 도시하고 있다. 도 3은, 도 2에 도시하는 복수의 블록 중 1개 BLOCKi의 회로 예이다.
메모리 셀 어레이(1)는 복수(본 예에서는, 1024개)의 블록 BLOCK0∼BLOCK1023으로 구성된다. 복수의 블록 BLOCK0∼BLOCK1023은 Y 방향으로 배열되어 배치된다. 블록이란, 소거의 최소 단위, 즉 한번에 소거할 수 있는 최소의 메모리 셀 수를 의미한다.
1개의 블록 BLOCKi는 X 방향으로 배열된 복수(본 예에서는, 8512개)의 NAND 셀 유닛 U로 구성된다. 1개의 NAND 셀 유닛 U는 직렬 접속되는 4개의 메모리 셀 M1, M2, M3, M4로 이루어지는 NAND 열과, NAND 열의 일단에 접속되는 셀렉트 게이트 트랜지스터 S1과, NAND 열의 타단에 접속되는 셀렉트 게이트 트랜지스터 S2로 구성된다.
본 예에서는, NAND 열은 4개의 메모리 셀 M1, N12, M3, M4로 구성되지만, 1개 또는 2개 이상의 메모리 셀로 구성되어 있으면 되며, 특별히 4개로 한정하는 것은 아니다.
셀렉트 게이트 트랜지스터 S1은 비트선 BLek 또는 비트선 BLok에 접속되고 (k=0, 1, …4255), 셀렉트 게이트 트랜지스터 S2는 소스선 C-source에 접속된다.
워드선(컨트롤 게이트선) WL0-i, WL1-i, WL2-i, WL3-i는 X 방향으로 연장되어, X 방향의 복수의 메모리 셀에 공통으로 접속된다. 셀렉트 게이트선 SGD-i는 X 방향으로 연장되고, X 방향의 복수의 셀렉트 게이트 트랜지스터 S1에 공통으로 접속된다. 셀렉트 게이트선 SGS-i도 X 방향으로 연장되고, X 방향의 복수의 셀렉트 게이트 트랜지스터 S2에 공통으로 접속된다.
본 예에서는 라이트/리드 동작 시에, 블록 BLOCKi의 일단측으로부터 세어 짝수번째(even)에 위치하는 복수의 비트선 BLe0, BLe1, …BLe4255와, 그 일단측으로부터 세어 홀수번째(odd)에 위치하는 복수의 비트선 BLo0, BLo1, …BLo4255는 상호 독립적으로 구동된다. 단, 비트선은 0부터 세는 것으로 한다.
즉, 1개의 워드선, 예를 들면 워드선 WL3-i에 접속되는 8512개의 메모리 셀 중 짝수번째에 위치하는 복수의 비트선 BLe0, BLe1, …BLe4255에 접속되는 4256개의 메모리 셀(△로 나타냄)에 대하여, 동시에 라이트/리드 동작이 실행된다. 또한, 워드선 WL3-i에 접속되는 8512개의 메모리 셀 중 홀수번째에 위치하는 복수의 비트선 BLo0, BLo1, …BLo4255에 접속되는 4256개의 메모리 셀(○로 나타냄)에 대하여, 동시에 라이트/리드 동작이 실행된다.
1 메모리 셀이 1 비트 데이터를 기억하는 경우, 1개의 워드선, 예를 들면 워드선 WL3-i와 짝수번째의 복수의 비트선 BLe0, BLe1, …BLe4255와의 교점에 위치하는 4256개의 메모리 셀(△로 나타냄)은, 페이지라는 단위를 구성한다. 마찬가지로, 워드선 WL3-i와 홀수번째의 복수의 비트선 BLo0, BLo1, …BLo4255와의 교점에 위치하는 4256개의 메모리 셀(○로 나타냄)도 페이지라는 단위를 구성한다.
또한, 본예와 같이, 1 메모리 셀이 2 비트 데이터를 기억하는 경우, 4256개의 메모리 셀(△로 나타냄)은 2 페이지분의 데이터를 기억하고, 4256개의 메모리 셀(○로 나타냄)도 2페이지분의 데이터를 기억한다.
(3) 디바이스 구조 예
① 웰 구조 예
도 4는 NAND 셀형 플래시 메모리의 웰 구조의 예를 도시하고 있다.
p형 실리콘 기판(p-sub : 11-1) 내에는 n형 웰 영역(Cell n-well : 11-2) 및 p형 웰 영역(Cellp-well : 11-3)으로 구성되는 소위 더블 웰 영역, n형 웰 영역(n-well : 11-4), 및 p형 웰 영역(p-well : 11-5)이 형성된다.
더블 웰 영역은 메모리 셀 어레이부에 형성되고, n형 웰 영역(11-4) 및 p형 웰 영역(11-5)은 주변 회로부에 형성된다.
메모리 셀은 n 채널 MOS 트랜지스터로 구성되고, p형 웰 영역(11-3) 내에 배치된다. n형 웰 영역(11-2) 및 p형 웰 영역(11-3)은 동일 전위로 설정된다.
전원 전압보다도 높은 전압이 인가되는 고전압 n 채널 MOS 트랜지스터는 P형 실리콘 기판(p-sub : 11-1) 내에 형성된다. 전원 전압이 인가되는 저전압 p 채널 MOS 트랜지스터는 n형 웰 영역(n-well : 11-4) 내에 형성되고, 전원 전압이 인가되는 저전압 n 채널 MOS 트랜지스터는 p형 웰 영역(p-well : 11-5) 내에 형성된다.
② 셀 어레이 구조 예
도 5는 NAND 셀형 플래시 메모리의 메모리 셀 어레이부의 Y 방향의 단면 구조의 예를 도시하고 있다.
p형 실리콘 기판(11-1) 내에는 n형 웰 영역(11-2) 및 p형 웰 영역(11-3)으로 구성되는 더블 웰 영역이 형성된다.
직렬 접속된 4개의 메모리 셀 M1, M2, M3, M4는 p형 웰 영역(11-3) 내에 배치된다. 4개의 메모리 셀 M1, M2, M3, M4는 각각 N채널 MOS 트랜지스터로 구성되고, 또한 부유 게이트 전극 FG와 컨트롤 게이트 전극 WL0-i, WL1-i, WL2-i, WL3-i로 이루어지는 스택 게이트 구조를 갖는다.
직렬 접속된 메모리 셀 M1, M2, M3, M4로 이루어지는 NAND 열의 일단에는, 셀렉트 게이트 트랜지스터 S1이 접속되고, 그 타단에는 셀렉트 게이트 트랜지스터 S2가 접속된다. 셀렉트 게이트 트랜지스터 S1, S2는 N채널 MOS 트랜지스터로 구성되고, 메모리 셀 M1, M2, M3, M4에 근사하는 구조, 즉 이중 구조의 셀렉트 게이트선 SGS-i, SGD-i를 갖는다.
NAND 셀 유닛의 일단, 즉 셀렉트 게이트 트랜지스터 S1의 확산층(드레인 확산층 : 14)은 컨택트 플러그 CB1을 경유하여, 제1 메탈 배선층 M0에 접속된다. 또한, 제1 메탈 배선층 M0은 비아 플러그 V1을 경유하여, 비트선 BL로서의 제2 메탈 배선층 M1에 접속된다. 비트선 BL은 데이터 회로에 접속된다.
NAND 셀 유닛의 타단, 즉 셀렉트 게이트 트랜지스터 S2의 확산층(소스 확산층 : 15)은 컨택트 플러그 CB2를 경유하여, 소스선 C-source로서의 제1 메탈 배선층 M0에 접속된다. 소스선 C-source는 소스 전위 제어 회로에 접속된다.
n형 웰 영역(Celln-well : 11-2)은 n형 확산층(16)을 경유하여, C-p-well 전위 설정선(18)에 접속되고, p형 웰 영역(Cell p-well : 11-3)은 p형 확산층(17)을 경유하여, C-p-well 전위 설정선(18)에 접속된다. 즉, n형 웰 영역(11-2)과 p형 웰 영역(11-3)은 동일 전위로 설정된다. C-p-well 전위 설정선(18)은 웰 전위 제어 회로에 접속된다.
또, 부유 게이트 전극 FG, 컨트롤 게이트 전극 WL0-i, WL1-i, WL2-i, WL3-i 및 셀렉트 게이트선 SGS-i, SGD-i는 예를 들면, 불순물을 포함하는 도전성 폴리실리콘으로 구성된다. 또한, 제1 및 제2 메탈 배선층 M0, M1은, 예를 들면 알루미늄, 구리, 이들의 합금 등으로 구성된다.
도 6은 메모리 셀의 X 방향의 단면 구조의 예를 도시하고, 도 7은 셀렉트 게이트 트랜지스터의 X 방향의 단면 구조의 예를 도시하고 있다.
X 방향의 복수의 메모리 셀(FG+WL)은 STI(Shallow Trench Isolation) 구조의 소자 분리층(19)에 의해, 상호 전기적으로 분리되어 있다. P형 웰 영역(11-3) 위에는 매우 얇은 터널 산화막(20)을 경유하여, 부유 게이트 전극 FG가 배치된다. 부유 게이트 전극 FG 위에는 ONO(oxide/nitride/oxide)막(21)을 경유하여, 컨트롤 게이트 전극 WL이 배치된다.
셀렉트 게이트선 SGS/SGD는 이중 구조로 되어 있다. 하측의 셀렉트 게이트선 SGS/SGD와 상측의 셀렉트 게이트선 SGS/SGD는, 메모리 셀 어레이의 단부에서 상호 전기적으로 접속됨과 함께, 메모리 셀 어레이 내에서도 일정 간격, 예를 들면 512개의 비트선마다 상호 전기적으로 접속된다.
(4) 일괄 검지 회로의 구성 예
도 8은 일괄 검지 회로의 구성예를 도시하고 있다.
일괄 검지 회로(10)는 검증 판독 후, 선택된 모든 메모리 셀에 대하여, 깔끔하게 라이트 또는 소거가 행해졌는지의 여부를 조사하는 기능을 갖는다(Program/Erase completion detection).
본 예에서는, 메모리 셀 어레이의 구성 예에서도 설명한 바와 같이, 라이트/리드 동작 시에, 짝수번째의 복수의 비트선과 홀수번째의 복수의 비트선이 상호 독립적으로 구동되는 것을 전제로 한다. 이 때문에, 짝수번째의 하나의 비트선과 홀수번째의 1개의 비트선으로 이루어지는 합계 2개의 비트선에 대하여, 1개의 서브데이터 회로가 설치된다.
구체적으로 설명하면, 8512개의 비트선 BLek, BLok(k=0, 1, …4225)이 존재하기 때문에, 데이터 회로(2)는 4256개의 서브데이터 회로로 구성된다. 또, 데이터 회로(2) 내의 각 서브데이터 회로의 구성 예에 대해서는 후술하겠다.
본 예에서는, 4256개의 서브데이터 회로 중 8개의 서브데이터 회로 REGR1-0, REGR1-1, REGR1-2, REGR1-3, REGR2-0, REGR2-1, REGR2-2, REGR2-3만을 나타내고 있다.
서브데이터 회로 REGR1-y는 2개의 비트선 BLej+y, BLoj+y에 접속됨과 함께, I/O 선쌍 IOj+y, nIOj+y에 접속된다. 또한, 서브데이터 회로 REGR2-y는 2개의 비트선 BLej+y+4, BLoj+y+4에 접속됨과 함께, I/O 선쌍 IOj+y+4, nIOj+y+4에 접속된다. 단, y=0, 1, 2, 3이다.
제1 내지 제4 서브데이터 회로 REGR1-0, REGR1-1, REGR1-2, REGR1-3의 출력 노드 RCD1은 공통 접속되고, 그 접속 노드 RCD1은 P 채널 MOS 트랜지스터 TP2의 게이트에 접속된다. 마찬가지로, 제5 내지 제8 서브데이터 회로 REGR2-0, REGR2-1, REGR2-2, REGR2-3의 출력 노드 RCD2도 공통 접속되며, 그 접속 노드 RCD2는 P 채널 MOS 트랜지스터 TP3의 게이트에 접속된다.
P 채널 MOS 트랜지스터 TP13, TP14는 Program/Erase completion detection 시에 제어 신호 COMHn에 기초하여, 노드 RCD1, RCD2를 프리차지하는 기능을 갖는다. 즉, 제어 신호 COMHn을 "L"로 하여, 노드 RCD1, RCD2를 전원 전위 Vdd로 설정한 후, 제어 신호 COMHn을 "L"로 하여, 노드 RCD1, RCD2를 부유 상태로 한다. 이 때, P 채널 MOS 트랜지스터 TP2, TP3은 오프 상태로 된다.
N 채널 MOS 트랜지스터 TN15는 Program/Erase completion detection 시에, 노드 NCOM을 접지 전위 Vss로 설정한 후, 부유 상태로 하는 기능을 갖는다. MOS 트랜지스터 TN15는 제어 신호 NCOML에 의해 제어된다.
Program/Erase completion detection 시, 라이트/소거가 충분히 행해지고 있지 않은 메모리 셀에 대응하는 서브데이터 회로는 공통 노드 RCD1 또는 공통 노드 RCD2의 전위 레벨을 "H"로부터 "L"로 저하시킨다.
따라서, 라이트/소거가 충분히 행해지고 있지 않은 메모리 셀이 적어도 1개 존재하는 경우에는 P 채널 MOS 트랜지스터 TP2 또는 P 채널 MOS 트랜지스터 TP3이 온 상태로 되고, 노드 NCOM이 "L"로부터 "H"가 되고, FLAG가 "L"로 된다.
한편, 모든 메모리 셀에 대하여, 라이트/소거가 충분히 행해지고 있는 경우에는, 모든 서브데이터 회로는 공통 노드 RCD1, RCD2의 전위 레벨을 "H"로 유지한다. 따라서, 노드 NCOM은 "L" 상태이고, FLAG는 "H"로 된다.
이와 같이, FLAG의 전위 레벨을 검출하는 것에 의해, 선택된 모든 메모리 셀에 대하여, 깔끔하게 라이트/소거가 행해졌는지의 여부를 조사할 수 있다.
본 예에서는 8개의 서브데이터 회로를 1개로 통합하고, 이들 8개의 서브데이터 회로마다 Program/Erase completion detection, 즉 FRAG의 전압 레벨의 검출을 행하고 있다.
이와 같이, 8개의 서브데이터 회로를 일괄한 것은, 이들 8개의 서브데이터 회로에 대응하는 8 컬럼 단위로, 리던던시 회로에 의한 메모리 셀의 치환을 행하고 있기 때문이다. 즉, 퓨즈 소자(파선으로 둘러싼 부분)를 절단하면, 이들 8개의 서브데이터 회로에 접속되는 메모리 셀은 항상 비선택 상태로 되고, 이것을 대신하여, 리던던시 영역의 예비 메모리 셀이 선택된다.
따라서, 리던던시 회로에 의한 메모리 셀의 치환을 n(n은, 자연수)개의 서브데이터 회로에 대응하는 n 컬럼 단위로 행하는 경우에는 n개의 서브데이터 회로를 하나로 통합한다.
또, FRAG는 모든 컬럼에 대응하는 공통 노드로 되어 있다. 예를 들면, 데이터 회로(2)가 4256개의 서브데이터 회로로 구성되는 경우, 8개의 서브데이터 회로를 리던던시 치환의 1 단위로 하면, 칩 내에는 도 8에 도시하는 회로가 532개 존재하게 된다. 그리고, 이들 532개의 회로는 공통 노드 FRAG에 접속된다.
(5) 데이터 회로의 구성 예
도 9는 데이터 회로 내의 서브데이터 회로의 구성예를 도시하고 있다.
본 예에서는 데이터 회로는, 복수개(예를 들면, 4256개)의 서브데이터 회로로 구성되고, 각 서브데이터 회로는 도 9와 같은 구성을 갖고 있다.
서브데이터 회로 REGR은, 4개의 데이터 기억부 DS1, DS2, DS3, DS4를 갖고 있다. 이들 데이터 기억부 DS1, DS2, DS3, DS4를 사용하여, 선택된 1 메모리 셀에 대하여, 2 비트 데이터의 리드 동작 및 프로그램 동작을 실행한다. 프로그램 동작에는 라이트 동작이나 검증 동작 등이 포함된다.
또한, 서브데이터 회로는 짝수번째의 1개의 비트선과 홀수번째의 1개의 비트선으로 이루어지는 합계 2개의 비트선에 대하여 1개 설치된다. 짝수번째의 비트선 BLek는 N채널 MOS 트랜지스터 Qn1을 경유하여, 서브데이터 회로 REGR에 접속되고, 홀수번째의 비트선 BLok은 N채널 MOS 트랜지스터 Qn2를 경유하여, 서브데이터 회로 REGR에 접속된다.
제어 신호 BLSe가 "H", 제어 신호 BLSo가 "L"일 때, N채널 MOS 트랜지스터 Qn1이 온 상태로 되기 때문에, 짝수번째의 비트선 BLek는 서브데이터 회로 REGR에 전기적으로 접속된다. 또한, 제어 신호 BLSe가 "L", 제어 신호 BLSo가 "H"일 때, N채널 MOS 트랜지스터 Qn2가 온 상태로 되기 때문에, 홀수번째의 비트선 BLok은 서브데이터 회로 REGR에 전기적으로 접속된다.
또, 제어 신호 BLSe는 짝수번째의 비트선 BLek에 접속되는 MOS 트랜지스터 Qn1의 게이트에 공통으로 입력되고, 제어 신호 BLSo은 홀수번째의 비트선 BLok에 접속되는 MOS 트랜지스터 Qn2의 게이트에 공통으로 입력된다.
도 10은, 도 9의 서브데이터 회로의 회로예를 도시하고 있다.
본 예에서는, 도 9에 대응시켜, 1 컬럼분(2개의 비트선 BLek, BLok에 대응)의 서브데이터 회로를 도시한다.
서브데이터 회로 REGR은 4개의 데이터 기억부 DS1, DS2, DS3, DS4를 갖고 있다.
데이터 기억부 DS1은 공핍 타입 N 채널 MOS 캐패시터 C1로 구성된다. 데이터 기억부 DS2는 N채널 MOS 트랜지스터 Qn8로 구성된다. 데이터 기억부 DS3은 클럭 동기식 인버터 CI1, CI2를 갖는 CMOS 플립플롭 회로로 구성되고, 데이터 기억부 DS4는 클럭 동기식 인버터 CI3, CI4를 갖는 CMOS 플립플롭 회로로 구성된다.
MOS 캐패시터 C1의 일단은 N채널 MOS 트랜지스터 Qn5, Qn1, Qn2를 경유하여, 비트선 BLek, BLok에 접속되고, 그 타단은 접지점 Vss에 접속된다. MOS 트랜지스터 Qn5는 비트선 Qn1, Qn2측의 노드 N1과 MOS 캐패시터 C1측의 노드 N2와의 전기적 접속/절단을 행하는 클램프 트랜지스터이다.
제어 신호 BLCLAMP가 "H"일 때, MOS 트랜지스터 Qn5는 온 상태로 되고, 예를 들면 짝수번째의 비트선 BLek가 MOS 캐패시터 C1의 일단에 전기적으로 접속된다. 이 때, 제어 신호 BLSe는 "H", 제어 신호 BLSo는 "L"로 설정되어 있다. 또한, 이 때, 제어 신호 BIASe는 "L", 제어 신호 BIASo는 "H"로 설정되고, 바이어스 전위(예를 들면, 접지 전위) BLCRL이 홀수번째의 비트선 BLok로 공급된다.
또한, 홀수번째의 비트선 BLok가 MOS 캐패시터 C1의 일단에 전기적으로 접속되는 경우, 제어 신호 BLSe은 "L", 제어 신호 BLSo는 "H"로 설정된다. 또한, 이 때, 제어 신호 BIASe는 "H", 제어 신호 BIASo는 "L"로 설정되고, 바이어스 전위(예를 들면, 접지 전위) BLCRL이 짝수번째의 비트선 BLek에 공급된다.
제어 신호 BLCLAMP가 "L"일 때는 MOS 트랜지스터 Qn5는 오프 상태로 되기 때문에, 비트선 Qn1, Qn2측의 노드 N1과 MOS 캐패시터 C1 측의 노드 N2는 전기적으로 절단된다.
N 채널 MOS 트랜지스터 Qn6은 MOS 캐패시터 C1의 일단에 접속된다. MOS 트랜지스터 Qn6은 MOS 캐패시터 C1의 일단을, 프리차지 전위 VPRE에 충전하기 위한 소자이다. 제어 신호 BLPRE가 "H"일 때, MOS 캐패시터 C1의 일단은 프리차지 전위 VPRE에 충전된다.
N 채널 MOS 트랜지스터 Qn8은 N채널 MOS 트랜지스터 Qn7을 경유하여, MOS 캐패시터 C1의 일단에 접속된다. 제어 신호 REG가 "H", 즉 MOS 트랜지스터 Qn7이 온 상태일 때, MOS 트랜지스터 Qn8은 데이터 기억부 DS2에 기억된 데이터의 값에 기초하여, MOS 캐패시터 C1의 일단의 전위를 강제로 VREG로 한다.
예를 들면, 데이터 기억부 DS2에 기억된 데이터가 "1", 즉 MOS 트랜지스터의 게이트의 레벨이 "H"일 때는 제어 신호 REG가 "H"가 되면, MOS 캐패시터 C1의 일단이 강제로 VREG로 설정된다. 또한, 데이터 기억부 DS2에 기억된 데이터가 "0", 즉 MOS 트랜지스터의 게이트의 레벨이 "L"일 때는 MOS 캐패시터 C1의 일단의 전위는 VREG에 영향받지는 않는다.
데이터 기억부 DS3, DS4는 상술한 바와 같이, 모두 CMOS 플립플롭 회로로 구성된다.
N 채널 MOS 트랜지스터 Qn11은 데이터 기억부 DS3 내의 CMOS 플립플롭 회로의 2개의 입력 단자, 즉 클럭 동기식 인버터 CI1, CI2의 입력 단자의 전위를 이퀄라이즈하기 위한 소자이다. 또한, N채널 MOS 트랜지스터 Qn13은 데이터 기억부 DS4 내의 CMOS 플립플롭 회로의 2개의 입력 단자, 즉 클럭 동기식 인버터 CI3, CI4의 입력 단자의 전위를 이퀄라이즈하기 위한 소자이다.
MOS 트랜지스터 Qn11은 제어 신호 EQ1에 의해 제어되고, MOS 트랜지스터 Qn13은 제어 신호 EQ2에 의해 제어된다.
클럭 동기식 인버터 CI1은 클럭 신호 SEN1, SEN1n에 동기하여 동작하고, 클럭 동기식 인버터 CI2는 클럭 신호 LAT1, LAT1n에 동기하여 동작하고, 클럭 동기식 인버터 CI3은 클럭 신호 LAT2, LAT2n에 동기하여 동작하고, 클럭 동기식 인버터 CI4는 클럭 신호 SEN2, SEN2n에 동기하여 동작한다.
또, 신호 "***n"은 신호"***"의 레벨을 반전한 반전 신호를 의미하고 있다. 또한, 클럭 동기식 인버터 CI1, CI2, CI3, CI4의 구성예로는 예를 들면, 도 11에 도시한 바와 같다.
도 11의 클럭 동기식 인버터는 클럭 신호 CLK가 "H", 클럭 신호 CLKn이 "L"일 때, CMOS 인버터로서 동작한다. 클럭 신호 CLK가 "L", 클럭 신호 CLKn이 "H"일 때에는 입력 신호 IN과 출력 신호 OUT은 무관하게 된다.
데이터 기억부 DS1과 데이터 기억부 DS3과의 사이, 즉 CMOS 캐패시터 C1의 일단(노드 N2)과 클럭 동기식 인버터 CI1의 입력 단자(노드 N3)와의 사이에는 스위치 소자로서의 N 채널 MOS 트랜지스터 Qn10이 접속된다. MOS 트랜지스터 Qn10은 제어 신호 BLC1에 의해 제어되고, 데이터 기억부 DS1과 데이터 기억부 DS3과의 사이에서의 데이터의 전송을 실행하기 위해 사용된다.
데이터 기억부 DS2와 데이터 기억부 DS3과의 사이, 즉 N채널 MOS 트랜지스터 Qn8의 게이트와 클럭 동기식 인버터 CI1의 입력 단자와의 사이에는 스위치 소자로서의 N 채널 MOS 트랜지스터 Qn9가 접속된다. MOS 트랜지스터 Qn9는 제어 신호 DTG에 의해 제어되고, 데이터 기억부 DS3에 기억된 데이터를 데이터 기억부 DS2로 전송하기 위해 사용된다.
데이터 기억부 DS1과 데이터 기억부 DS4와의 사이, 즉 CMOS 캐패시터 C1의 일단(노드 N2)과 클럭 동기식 인버터 CI4의 입력 단자(노드 N4)와의 사이에는 스위치 소자로서의 N 채널 MOS 트랜지스터 Qn12가 접속된다. MOS 트랜지스터 Qn12는 제어 신호 BLC2에 의해 제어되고, 데이터 기억부 DS1과 데이터 기억부 DS4와의 사이에서의 데이터의 전송을 실행하기 위해 사용된다.
N 채널 MOS 트랜지스터 Qn14는 데이터 기억부 DS4의 데이터를 리세트하기 위한 소자이다. 예를 들면, 라이트 동작 시, MOS 트랜지스터 Qn14는 라이트 데이터가 데이터 기억부 DS4에 입력하기 전에, 데이터 기억부 DS4의 상태를 "1"-데이터 유지의 상태, 즉 노드 N4를 "H"의 상태로 설정한다.
구체적으로 설명하면, 제어 신호 PRST가 "H"가 되면, 클럭 동기식 인버터 CI4의 출력 단자는 "L"가 되고, 노드 N4는 "H"가 된다.
데이터 기억부 DS4는 컬럼 선택 스위치로서의 N 채널 MOS 트랜지스터 Qn15, Qn16을 경유하여, I/O 선(데이터선) IO, nIO에 접속된다.
컬럼 어드레스 신호에 의해 선택된 컬럼에서는, 컬럼 선택 신호 CSLk(K=0, 1, …4255)가 "H"가 되기 때문에, 그 선택된 컬럼 내의 데이터 기억부 DS4와 I/O선 IO, nIO가 전기적으로 접속된다.
N 채널 MOS 트랜지스터 Qn17은 데이터 기억부 DS3에 기억된 데이터에 기초하여, 공통 노드 PCD의 레벨을 결정하기 위한 소자이다.
예를 들면, "0"-프로그래밍시, "0"-데이터는 데이터 기억부 DS3에 기억된다. 즉, 노드 N4가 "L", 노드 N5가 "H"의 상태이기 때문에, N채널 MOS 트랜지스터 Qn17은 온 상태로 되고, 공통 노드 PCD의 레벨을 "L"로 한다. 검증 판독시, 메모리 셀에 깔끔하게 "0"-데이터가 라이트되어 있으면, 리드 데이터는 "1"이 되기 때문에, 데이터 기억부 DS4에 "1"-데이터가 기억된다. 즉, 노드 N4가 "H", 노드 N5이 "L"의 상태로 변화하기 때문에, N채널 MOS 트랜지스터 Qn17은 오프 상태로 되고, 공통 노드 PCD의 레벨을 "H"로 한다.
또, 자세한 동작에 대해서는, 후술하겠다.
상술한 설명에서는 데이터에 관해서는, "0"과 "1"이 존재하며, 노드의 레벨에 관해서는 "L"과 "H"가 존재하지만, 양자의 관계는 "0"이 "L"에 상당하고, "1"이 "H"에 상당한다.
또한, 본 예에서는 1 컬럼 내에 2개의 비트선 BLek, BLok이 배치되고, 이 2개의 비트선 BLek, BLok에 1개의 서브데이터 회로가 접속된다. 이와 같이, 1개의 서브데이터 회로에 2개의 비트선 BLek, BLok을 접속하는 이유는 ① 판독 시에서, 상호 인접하는 비트선간 용량 결합에 의한 노이즈가 생기는 것을 방지한다(실드 비트선 판독 방법의 채용), ② 데이터 회로의 수를 줄여, 칩 면적의 축소를 도모하는 등의 목적을 달성하는 것에 있다.
(6) 워드선 제어 회로의 구성 예
도 12는 워드선 제어 회로의 구성예를 도시하고 있다.
메모리 셀 어레이(1)는 Y 방향으로 배치된 복수개의 메모리 셀 블록으로 구성된다. 각각의 메모리 셀 블록은 X 방향으로 배치된 복수의 NAND 셀 유닛을 갖는다. 메모리 셀 어레이 및 NAND 셀 유닛의 회로 예에 대해서는, 도 3에 도시한 바와 같다.
단, 본 예에서는 1 블록 내의 워드선 WL1, …WL16의 수는 16개를 전제로 하고 있으며, 상술한 예(도 3)와는 다르다. 그러나, 이 점은 특별히 중요한 점이 아니므로, 그대로 설명한다.
본 예에서는, 1개의 메모리 셀 블록에 대응하여, 1개의 로우 어드레스 디코더와 1개의 워드선 드라이버가 설치된다.
예를 들면, 제1 메모리 셀 블록 내의 워드선 WL1, …WL16 및 셀렉트 게이트선 SG1, SG2는 제1 워드선 드라이버 RMAIN1에 접속되고, 제1 워드선 드라이버 RMAIN1은 제1 메모리 셀 블록의 선택/비선택을 정하는 제1 로우 어드레스 디코더 RADD1의 출력 신호(디코드 결과)를 받는다.
이와 같이, 제i(i=1, 2, …)의 메모리 셀 블록 내의 워드선 WL1, …WL16 및 셀렉트 게이트선 SG1, SG2는 제i 워드선 드라이버 RMAINi에 접속되고, 제i 워드선 드라이버 RMAINi는 제i 메모리 셀 블록의 선택/비선택을 정하는 제i 로우 어드레스 디코더 RADDi의 출력 신호(디코드 결과)를 받는다.
여기서, 본 예에서는 워드선 드라이버를 메모리 셀 어레이(1)의 양측(X 방향의 2개의 단부)에 배치하고 있다.
구체적으로 설명하면, 홀수번째의 메모리 셀 어레이 블록에 대응하는 워드선 드라이버 RMAIN1, RMAIN3, …은 메모리 셀 어레이(1)의 X 방향의 2개의 단부 중 한쪽(좌측)에 배치되고, 짝수번째의 메모리 셀 어레이 블록에 대응하는 워드선 드라이버 RMAIN2, RMAIN4, …는 메모리 셀 어레이(1)의 X 방향의 2개의 단부 중 다른 쪽(우측)에 배치된다.
이와 같이, 워드선 드라이버 RMAINi를 메모리 셀 어레이(1)의 양단에 배치하는 것에 의해, 워드선 드라이버 RMAINi의 설계를 쉽게 할 수 있다(또는 레이아웃의 자유도를 크게 할 수 있다). 즉, 본 예의 경우, 1개의 워드선 드라이버는 Y 방향에 관한 것으로, 메모리 셀 블록 2개분의 레이아웃 스페이스를 확보할 수 있다.
또한, 1개의 메모리 셀 블록 내의 워드선 WL1, …WL16 및 셀렉트 게이트선 SG1, SG2는 이 메모리 셀 블록에 대응하는 워드선 드라이버에 의해, 항상 메모리 셀 어레이(1)의 한쪽 측(또는 다른 쪽측)으로부터 구동되기 때문에, 선택된 블록 내의 소정의 1개의 NAND 셀 유닛 내의 메모리 셀 및 셀렉트 트랜지스터에 관하여, 구동 신호가 공급되는 타이밍의 편차는 발생되지 않는다.
한편, 로우 어드레스 디코더 RADDi(i=1, 2, …)는 메모리 셀 어레이(1)의 X 방향의 2개의 단부 중 한쪽에만 배치된다. 이 경우, 로우 어드레스 신호를 로우 어드레스 디코더 RADDi로 공급하기 위한 신호선(어드레스 버스)을 메모리 셀 어레이(1)의 한쪽에만 배치하면 되기 때문에, 어드레스 버스의 면적을 줄일 수 있고, 결과적으로 칩 면적의 축소에 공헌할 수 있다.
즉, 만약 워드선 드라이버 RMAINi와 마찬가지로, 로우 어드레스 디코더 RADDi를 메모리 셀 어레이(1)의 X 방향의 2개의 단부 각각에 배치하면, 어드레스 버스에 대해서도, 메모리 셀 어레이(1)의 X 방향의 2개의 단부 각각에 배치해야 하므로, 칩 면적의 축소에 관해서는 불리하게 된다.
로우 어드레스 디코더 RADDi를, 메모리 셀 어레이(1)의 X 방향의 2개의 단부 중 한쪽에만 배치한 결과, 본 예에서는 신호선(22)이 메모리 셀 어레이(1) 위에 배치된다. 신호선(22)은 짝수번째의 메모리 셀 어레이 블록에 대응하는 로우 어드레스 디코더 RADD2, RADD4, …의 출력 신호(디코드 결과) RDECADS를, 워드선 드라이버 RMAIN2, RMAIN4, …로 공급하기 위해 사용된다.
이 신호선(22)에는, 통상 동작 시에, 신호 RDECADS가 전해진다. 따라서, 통상 동작 시, 이 신호선(22)의 전위가 메모리 셀의 동작에 악영향을 끼치지 않도록 할 필요가 있다. 또, 신호선(22)의 전위가 메모리 셀의 동작에 악영향을 끼치지 않는 로우 어드레스 디코더 RADDi 및 워드선 드라이버 RMAINi에 대해서는 후술하겠다.
전위 발생 회로(9A)는 승압 회로(차지 펌프 회로)를 갖고, 예를 들면 라이트 동작 시에 사용하는 라이트 전위 Vpp나 전송 전위 Vpass를 생성한다. 전위 발생 회로(9A)는 전환 회로(9B)에 접속된다. 전환 회로(9B)는 라이트 전위 Vpp, 전송 전위 Vpass, 칩내 전원 전위 Vdd, 접지 전위 Vss 등의 전위를, 워드선 WL1, …WL16에 대응하는 신호선 CG1, …CG16으로 분류하는 기능을 갖는다.
신호선 CG1, …CG16은, 워드선 드라이버 RMAINi에 접속된다. 즉, 신호선 CG1, …CG16은 워드선 드라이버 RMAINi 내의 전위 전송용 트랜지스터 HNt1, HNt2, …HNt16(후술하겠음)을 경유하여, 워드선 WL1, …WL16에 접속된다.
(7) 로우 어드레스 디코더 및 워드선 드라이버의 회로 예
도 13은 홀수번째의 메모리 셀 블록에 대응하여 설치되는 로우 어드레스 디코더의 주요부를 도시하고 있다.
이 로우 어드레스 디코더 RADD1은, 정확하게는 블록 디코더로서 기능한다. 즉, 예를 들면 제1 메모리 셀 블록이 선택될 때, 로우 어드레스 신호 AROWi, …AROWj 모두가 "H"로 되고, 출력 신호 RDECAD가 "H"로 된다.
도 14는 홀수번째의 메모리 셀 블록에 대응하여 설치되는 워드선 드라이버의 주요부를 도시하고 있다.
워드선 드라이버 RMAIN1의 주된 구성 요소는 고전압 스위칭 회로(26)와 전송용 MOS 트랜지스터 HN5, HN6, HNt1, …HNt16이다.
고전압 스위칭 회로(26)는 MOS 캐패시터 DHN4 및 MOS 트랜지스터 IHN1로 이루어지는 제1 승압 유닛과, MOS 캐패시터 DHN5 및 MOS 트랜지스터 IHN2로 이루어지는 제2 승압 유닛을 구비한다.
MOS 트랜지스터 HN3의 게이트는 MOS 트랜지스터 IHN1, IHN2의 접속 노드 B에 접속된다. 이 경우, MOS 트랜지스터 HN3의 게이트와 소스의 전위 레벨이 역상을 유지하면서, 클럭 신호 Owc에 동기하여, 점차 각 노드 A, B, TransferG1의 전위가 상승하기 때문에, 승압 효율이 향상한다.
고전압 스위칭 회로(26)는 로우 어드레스 디코더 RADD1의 출력 신호 RDECAD가 "H"일 때, 동작 상태로 된다. 즉, 출력 신호 RDECAD가 "H"일 때, NAND 회로 NAND1의 출력 신호는 클럭 신호 Owc와 역상의 클럭 신호로 된다. NAND 회로 NAND1의 출력 신호는 MOS 캐패시터 DHN4, DHN5의 일단에 인가된다.
그 결과, 전송용 MOS 트랜지스터 HN5, HN6, HNt1, …HNt16의 게이트에 승압 전위가 인가되고, 전송용 MOS 트랜지스터 HN5, HN6, HNt1, …HNt16은 온 상태로 된다.
로우 어드레스 디코더 RADD1의 출력 신호 RDECAD가 "H"일 때, MOS 트랜지스터 HN7, HN8은 오프 상태로 된다. 이 때, 신호선 SGD, SGS는, 예를 들면 칩 내의 전원 전위 Vdd로 되고, 이 Vdd는 전송용 MOS 트랜지스터 HN5, HN6을 경유하여, 셀렉트 게이트선 SG1, SG2로 공급된다.
또한, 신호선 CG1, CG2, …CG16은 전환 회로(9B)(도 1 참조)에 의해, 각각 동작 모드에 대응하여 소정의 전위로 설정된다. 그리고, 신호선 CG1, CG2, …CG16의 전위는 전송용 MOS 트랜지스터 HNt1, …HNt16을 경유하여, 워드선 WL1, WL2, …WL16으로 공급된다.
도 15는 짝수번째의 메모리 셀 블록에 대응하여 설치되는 로우 어드레스 디코더의 주요부를 도시하고 있다.
로우 어드레스 디코더 RADD2는 도 13의 로우 어드레스 디코더 RADD1과 동일한 회로를 포함하고 있다. 즉, 파선 X1로 둘러싼 부분의 회로는, 도 13의 로우 어드레스 디코더 RADD1과 동일하다. 또, 도 15에서, 도 13과 동일한 부분에는 동일한 부호가 붙어져 있다.
이 로우 어드레스 디코더 RADD2는 인버터 I4, 클럭드 인버터 CINV3, CINV4 및 공핍형 고전압 N 채널 MOS 트랜지스터 DHN6, DHN7을 갖고 있다.
클럭드 인버터 CINV4는 소거 시에, 선택된 메모리 셀 블록에 대응하는 로우 어드레스 디코더의 출력 신호 RDECADS(도 12의 신호선(22)의 전위)를 접지 전위 Vss로 하고, 비선택의 메모리 셀 블록에 대응하는 로우 어드레스 디코더의 출력 신호 RDECADS를 칩 내의 전원 전위 Vdd로 하는 기능을 갖는다.
MOS 트랜지스터 DHN6은 후술하는 도 16의 트랜지스터 DHN9와 함께, 신호선(22)(도 12 참조)을 부유 상태로 하는 기능을 갖는다.
소거시, 선택된 메모리 셀 블록에서는 신호 RDECADS1은 "H(Vdd)"로 되고, 비선택의 메모리 셀 블록에서는 신호 RDECADS1은 "L(Vss)" 상태로 된다.
만약, 이 신호 RDECADS1을 메모리 셀 어레이 상의 신호선(22)(도 12 참조)에 제공하면, 비선택의 메모리 셀 블록에서는 메모리 셀 어레이 상의 신호선(22)(도 12 참조)이 "L(Vss)" 상태로 된다.
이 경우, 셀 웰과 워드선의 용량 커플링에 의해, 셀 웰에 소거 전위 Vera를 제공했을 때에 비선택의 메모리 셀 블록 내의 워드선의 전위를 상승시키고자 하면, 접지 전위 Vss인 신호선(22)(도 12)의 영향에 의해, 워드선의 전위가 충분하게 상승하지 않게 된다.
본 예에서는, 클럭드 인버터 CINV4를 설치하고 있기 때문에, 소거시 선택된 메모리 셀 블록에서는 출력 신호 RDECADS는, "L(Vss)" 상태로 되고, 비선택의 메모리 셀 블록에서는 신호 RDECADS는 "H(Vdd)" 상태로 된다.
즉, 비선택의 메모리 셀 블록에서는, 메모리 셀 어레이 상의 신호선(22)(도 12 참조)은 "H(Vdd)"로 되고, 또한 MOS 트랜지스터 DHN6과 MOS 트랜지스터 DHN9(도 16)의 차단에 의해 부유 상태로 된다.
따라서, 셀 웰과 워드선의 용량 커플링에 의해, 비선택의 메모리 셀 블록 내의 워드선의 전위를 상승시키는 경우, 칩내 전원 전위 Vdd인 신호선(22)(도 12)의 영향은 적어져, 워드선의 전위가 충분히 상승한다.
도 16은 짝수번째의 메모리 셀 블록에 대응하여 설치되는 워드선 드라이버의 주요부를 도시하고 있다.
워드선 드라이버 RMAIN2의 주된 구성 요소 중 고전압 스위치 회로(26)와 전송용 MOS 트랜지스터 HN5, HN6, HNt1, …HNt16에 관해서는, 도 14에 도시하는 워드선 드라이버 RMAIN1과 동일하다. 즉, 파선 X2로 둘러싼 부분의 회로는 도 14의 로우 어드레스 디코더 RADD1과 거의 동일하다. 또, 도 16에서, 도 14와 동일한 부분에는 동일한 부호가 붙여 있다.
워드선 드라이버 RMAIN2는 클럭드 인버터 CINV5, CINV6, CINV7, 공핍형 고전압 N 채널 MOS 트랜지스터 DHN8, DHN9 및 증강형 P 채널 MOS 트랜지스터 TP6, TP7을 갖고 있다.
클럭드 인버터 CINV7은, 소거 시에 선택된 메모리 셀 블록에 대응하는 로우 어드레스 디코더의 출력 신호 RDECADS(도 12의 신호선(22)의 전위)를 접지 전위 Vss로부터 칩내 전원 전위 Vdd로 되돌리고, 비선택의 메모리 셀 블록에 대응하는 로우 어드레스 디코더의 출력 신호 RDECADS를 칩 내의 전원 전위 Vdd로부터 접지 전위 Vss로 복귀한 후에, 파선 X2 내의 회로에 신호 RDECADS2로서 제공하는 기능을 갖는다.
MOS 트랜지스터 DHN9는 도 15의 트랜지스터 DHN6과 함께, 신호선(22)(도 12 참조)을 부유 상태로 하는 기능을 갖는다.
이와 같이, 도 15의 로우 어드레스 디코더 RADD2 내의 인버터 I4, 클럭드 인버터 CINV3, CINV4 및 공핍형 고전압 N 채널 MOS 트랜지스터 DHN6, DHN7과, 도 16의 워드선 드라이버 RMAIN2 내의 클럭드 인버터 CINV5, CINV6, CINV7, 공핍형 고전압 N 채널 MOS 트랜지스터 DHN8, DHN9 및 증강형 P 채널 MOS 트랜지스터 TP6, TP7은 동일한 목적을 달성하기 위해, 쌍으로 사용된다.
또, 도 13 내지 도 16에서는 이들 회로에 전원 전위로서 Vdd(외부 전원 전위 Vcc보다도 낮은 칩내 전원 전위)를 공급했지만, 이것을 대신하여 예를 들면 외부 전원 전위 Vcc를 공급해도 된다.
(8) 신호선(22)의 전위 레벨에 관하여
이어서, 각 동작 모드에서, 신호선(22)(도 12 참조)의 전위 레벨이 어떻게 될지에 대하여 설명한다. 또, 여기서는 신호선(22)의 전위 레벨에 대해서만 설명한다.
본 예에서는, 신호선(22)(도 12)은 짝수번째의 메모리 셀 블록에 대응하는 로우 어드레스 디코더(도 15)와 워드선 드라이버(도 16)를 접속한다. 따라서, 도 15 및 도 16을 참조하면서, 신호선(22)(도 12)을 전달하는 워드선 드라이버 선택 신호 RDECADS의 전위 레벨에 대하여 설명한다.
로우 어드레스 디코더 RADD2의 출력 신호 RDECADS의 전위 레벨은, 동작 모드에 따라 서로 다르다.
소거 동작 이외의 동작(라이트, 리드, 검증 판독)에서는 ROWERASE1B, ROWPROG1, ROWERASE2B, ROWERASE3n, ROlVGATE를 각각 전원 전위 Vdd(외부 전원 전위 Vcc보다도 낮은 칩내 전원 전위. 단, 외부 전원 전위 Vcc이어도 무방함)로 설정하고, ROWERASE1, ROWPROG1B, ROWERASE2를 각각 접지 전위 Vss로 설정한다.
이 때, 클럭드 인버터 CINV3, CINV5, CINV6이 동작 상태로 되고, 클럭드 인버터 CINV4, CINV7가 비동작 상태로 된다. 또한, MOS 트랜지스터 TP6은 오프 상태로 된다.
선택된 메모리 셀 블록에서는, 파선 X1로 둘러싼 부분의 출력 신호 RDECADS1은 "H", 즉 칩내 전원 전위 Vdd가 되고, 로우 어드레스 디코더 RADD2의 출력 신호 RDECADS도 "H", 즉 칩내 전원 전위 Vdd가 된다.
한편, 비선택의 메모리 셀 블록에서는 파선 X1로 둘러싼 부분의 출력 신호 RDECADS1은 "L", 즉 접지 전위 Vss가 되고, 로우 어드레스 디코더 RADD2의 출력 신호 RDECADS도, "L", 즉 접지 전위 Vss가 된다.
따라서, 소거 동작 이외의 동작에서는 비선택의 메모리 셀 블록 내의 메모리 셀 어레이 상에 배치되는 신호선(22)(도 12 참조)은 접지 전위 Vss, 비선택의 메모리 셀 블록 내의 셀렉트 게이트선 SG1, SG2도 접지 전위 Vss로 되고, 이들 신호선(22), SG1, SG2는 비트선과 워드선 사이의 실드선으로서 기능한다. 결과적으로, 비트선을 전달하는 데이터에 생기는 커플링 노이즈를 저감시킬 수 있다.
소거 동작에서는, ROWERASE1B, ROWPROG1, ROWERASE2B, ROWERASE3n, ROWGATE를 각각 접지 전위 Vss로 설정하고, ROWERASE1, ROWPROG1B, ROWERASE2를 각각 칩내 전원 전위 Vdd(전원 전위 Vcc이어도 무방함)로 설정한다.
이 때, 클럭드 인버터 CINV4, CINV7이 동작 상태로 되고, 클럭드 인버터 CINV3, CINV5, CINV6이 비동작 상태로 된다. 또한, MOS 트랜지스터 TP6은 온 상태로 된다.
선택된 메모리 셀 블록에서는 파선 X1로 둘러싼 부분의 출력 신호 RDECADS1은 "H", 즉 칩내 전원 전위 Vdd가 되고, 로우 어드레스 디코더 RADD2의 출력 신호 RDECADS는 "L", 즉 접지 전위 Vss가 된다.
한편, 비선택의 메모리 셀 블록에서는 파선 X1로 둘러싼 부분의 출력 신호 RDECADS1은 "L", 즉 접지 전위 Vss가 되고, 로우 어드레스 디코더 RADD2의 출력 신호 RDECADS는 "H", 즉 칩내 전원 전위 Vdd가 된다.
또한, ROWGATE가 접지 전위 Vss이기 때문에, 비선택의 메모리 셀 블록 내의 신호선(22)(도 12 참조)은 그 전위(RDECADS의 전위)가 1∼1.5V정도가 되면, MOS 트랜지스터 DHN6, DHN9가 차단하는 것에 의해, 부유 상태로 된다.
이와 같이, 소거 동작에서는 비선택의 메모리 셀 블록 내의 메모리 셀 어레이상에 배치되는 신호선(22)(도 12 참조)은 1∼1.5V이고, 또한 부유 상태로 된다. 즉, 셀 웰에 소거 전위 Vera를 제공했을 때에 신호선(22)(도 12)의 전위도 워드선과 마찬가지로, 용량 커플링에 의해 상승하기 때문에, 신호선(22)(도 12)이 워드선의 전위의 상승을 억제하지는 않는다.
따라서, 셀 웰에 소거 전위 Vera를 제공했을 때에, 셀 웰과 워드선 사이의 용량 커플링에 의해, 비선택의 메모리 셀 블록 내의 워드선의 전위가 상승하기 쉬워지는 효과를 얻을 수 있다.
또한, 이것에 수반하여, 비선택의 메모리 셀 블록 내의 메모리 셀의 터널 산화막에 큰 전계가 걸리지 않기 때문에, 비선택의 메모리 셀 블록에서의 오소거를 방지할 수 있다.
그런데, 도 15의 파선 X 내의 퓨즈 소자(도 13의 퓨즈 소자도 동일함)는, 그 퓨즈 소자(로우 어드레스 디코더)에 대응하는 메모리 셀 블록을 사용자용의 통상의 메모리 영역으로 하는 경우에는 절단되지 않는다.
그러나, 그 퓨즈 소자(로우 어드레스 디코더)에 대응하는 메모리 셀 블록을, 예를 들면 디바이스·코드를 기억하는 ROM·BLOCK 영역으로 하는 경우에는 그 퓨즈 소자를 절단하고, 사용자가 ROM·BLOCK 영역에 대하여, 자유롭게 라이트/소거를 행할 수 없게 하고 있다.
이 ROM·BLOCK 영역은 아래와 같은 의의가 있다.
최근, NAND형 플래시 메모리는 다양한 전자 기기의 메모리에 사용되고 있다. 그러나, 전화 통신에 의해 음악 정보를 기억하기 위한 메모리 등, NAND형 플래시 메모리는 저작권에 관한 데이터의 메모리로서 사용되는 경우가 있다.
따라서, NAND형 플래시 메모리에는 부정 복사를 방지하기 위해, 칩의 번호, 즉 디바이스·코드가 기억된다.
이 디바이스·코드는 개개의 NAND형 플래시 메모리에 고유한 것이지만, 만약 사용자가 이 디바이스·코드를 자유롭게 재기록할 수 있게 되면, 디바이스·코드의 본래 목적을 달성할 수 없다.
이 때문에, 디바이스·코드는 제품의 출하 전에, NAND형 플래시 메모리의 ROM·BLOCK 영역에 기입되고, ROM·BLOCK 영역에 대해서는 사용자가 라이트/소거를 행할 수 없게 하고 있다. 즉, ROM·BLOCK 영역으로 되는 메모리 셀 블록에서는 퓨즈 소자가 절단된다.
이에 의해, 예를 들면 정보 제공측의 NAND형 플래시 메모리로부터 정보 수취측의 NAND형 플래시 메모리에 음악 정보를 복사하려는 경우, 정보 제공측의 NAND형 플래시 메모리로부터 디바이스·코드를 판독하고, 이것이 정보 수취측의 NAND형 플래시 메모리의 디바이스·코드와 서로 다른 경우에는 복사를 할 수 없게 하고 있다.
퓨즈 소자는 ROM·BLOCK 영역으로 되는 메모리 셀 블록에 디바이스·코드를 프로그램한 직후에 절단한다.
만약, 퓨즈 소자를 절단하지 않은 상태에서 출하 전 시험을 행하면, 이 시험에서, 디바이스·코드가 소거되기 때문이다.
즉, 출하 전 시험에서는 시험 시간의 단축을 위해, 전체 블록을 동시에 선택하여, 라이트/소거를 행한다. 즉, 모든 로우 어드레스 신호 AROWi, AROWj가 "H"가 되기 때문에, 퓨즈 소자가 절단되어 있지 않으면, CMD ROMBA가 "L"이어도, RDECADS1이 "H"(도 13에서는 RDECAD가 "H")가 되고, ROM·BLOCK 영역으로 되는 메모리 셀 블록이 선택된다.
한편, 출하 전 시험에서, 모든 로우 어드레스 신호 AROWi, …AROWj가 "H"로 되어도, 퓨즈 소자가 절단되어 있으면, CMD ROMBA가 "L"이기 때문에, RDECADS1이 "L"(도 13에서는, RDECAD가 "L")이 되고, ROM·BLOCK 영역으로 되는 메모리 셀 블록은 선택되지 않는다.
퓨즈 소자를 절단해도, ROM·BLOCK 영역에 기억된 디바이스·코드를 판독할 필요가 있다.
ROM·BLOCK 영역에 대한 데이터 판독은 CMD ROMBA를 "H"로 하는 것에 의해 달성할 수 있다. 즉, CMD ROMBA가 "H", ROM·BLOCK 영역 내의 AROWi, …AROWj가 "H"가 되면, ROM·BLOCK 영역으로 되는 메모리 셀 블록이 선택된다.
또한, 퓨즈 소자를 절단한 후에도, 특수한 커맨드를 입력함으로써, CMD ROMBA 및 ROM·BLOCK 영역 내의 AROWi, …AROWj를 "H"로 하는 것에 의해, ROM·BLOCK 영역 내의 데이터를 재기록하는 것도 가능하다. 이 경우에는, CMD ROMBA를 "H"로 하는 커맨드는 일반 사용자에게는 비공개로 하고, 부정하게 ROM·BLOCK 영역 내의 데이터가 재기록되지 않도록 한다.
또, 본 예에서는 ROM·BLOCK 영역의 퓨즈를 절단하는 경우를 설명했지만, 도 13의 퓨즈나 도 15의 파선 X 내의 퓨즈는 메모리 셀 블록이 불량 블록인 경우에도 절단된다. 이 경우, 이 불량 블록은 리던던시 회로에 의해, 예비 블록으로 치환된다.
3. 기본 동작의 설명
이하에서는 리드, 프로그램 등의 각 동작 모드에서의 본 발명의 4치 NAND 셀형 플래시 메모리(도 1)의 주요부, 특히 데이터 회로(도 10)의 동작에 대하여 상세히 설명한다.
동작의 설명을 행하기 전에, 우선 메모리 셀의 임계값 전압과 프로그래밍/리드 방법의 일례에 대하여 간단히 설명한다.
(1) 메모리 셀의 임계값 전압과 프로그래밍/리드 방법
도 17은 4치 NAND 셀형 플래시 메모리의 메모리 셀의 임계값 전압(Vth)의 분포를 도시하고 있다.
1개의 메모리 셀에는 2 비트 데이터(4치 데이터)가 기억된다. 본 예에서는, 상술한 바와 같이, 2 비트 데이터를 "11", "10", "00", "01"로 한다. 2 비트 데이터 중 1 비트는 논리 하위 페이지 데이터(□로 나타냄)로 하고, 또한 다른 1 비트는 논리 상위 페이지 데이터(○로 나타냄)로 하여, 동일한 메모리 셀에 기억된다.
2 비트 데이터("11", "10", "00", "01")와 메모리 셀의 임계값 전압과의 관계는 도 17에 도시하는 관계가 된다.
"11"은 소거 상태이다. 소거 상태에서는 논리 하위 페이지 데이터의 값 및 논리 상위 페이지 데이터의 값이, 모두 "1"로 되어 있다. 소거 상태의 메모리 셀은 마이너스의 임계값 전압 Vth를 갖는다.
"10", "00", "01"은 라이트 상태이다. 라이트 상태의 메모리 셀은 플러스의 임계값 전압 Vth를 갖는다. 또한, 라이트 상태 중, "10" 상태는, 가장 낮은 임계값 전압을 갖고, "01" 상태는 가장 높은 임계값 전압을 갖고, "00" 상태는 "10" 상태와 "01" 상태 사이의 임계값 전압을 갖는다.
2 비트 데이터는 상술한 바와 같이, 논리 하위 페이지 데이터와 논리 상위 페이지 데이터로 이루어지며, 2회의 기입 동작에 의해, 메모리 셀에 기입된다.
우선, 논리 하위 페이지 데이터의 프로그래밍이 행해진다.
당초, 모든 메모리 셀은 소거 상태, 즉 "11" 상태에 있는 것으로 한다. 이 후, 도 18에 도시한 바와 같이, 논리 하위 페이지 데이터의 프로그래밍을 행하면, 메모리 셀의 임계값 전압 Vth의 분포는, 라이트 데이터(논리 하위 페이지 데이터)의 값("1", "0")에 대응하여, 2개로 나누어진다.
즉, 논리 하위 페이지 데이터가 "1"인 경우에는 비트선을 "H"로 함으로써(워드선은 라이트 전위), 메모리 셀의 터널 산화막에 고전계가 걸리지 않도록 하고, 메모리 셀의 임계값 전압 Vth의 상승을 방지한다. 그 결과, 메모리 셀은 소거 상태("11" 상태)를 유지한다(논리 하위 페이지 데이터 "1"의 프로그래밍).
한편, 논리 하위 페이지 데이터가 "0"인 경우에는 비트선을 "L"로 함으로써(워드선은 라이트 전위), 메모리 셀의 터널 산화막에 고전계를 인가하고, 부유 게이트 전극에 전자를 주입하여, 메모리 셀의 임계값 전압 Vth를 소정량만큼 상승시킨다. 그 결과, 메모리 셀은 라이트 상태("10" 상태)로 변화한다(논리 하위 페이지 데이터 "0"의 프로그래밍).
이 후, 논리 상위 페이지 데이터의 프로그래밍이 행해진다.
논리 상위 페이지 데이터의 프로그래밍은, 칩의 외부로부터 입력되는 라이트 데이터(즉, 논리 상위 페이지 데이터)와, 이미 메모리 셀에 프로그래밍되어 있는 논리 하위 페이지 데이터에 기초하여 행해진다.
또, 논리 하위 페이지 데이터에 대해서는, 논리 상위 페이지 데이터의 프로그래밍 전에 메모리 셀로부터 데이터 회로에 판독하고, 또한 유지해 둔다(Internal data load).
도 19에 도시한 바와 같이, 논리 상위 페이지 데이터가 "1"인 경우에는 비트선을 "H"로 함으로써(워드선은 라이트 전위), 메모리 셀의 터널 산화막에 고전계가 걸리지 않도록 하고, 메모리 셀의 임계값 전압 Vth의 상승을 방지한다. 그 결과, 논리 하위 페이지 데이터가 "1"인 "11" 상태(소거 상태)의 메모리 셀은 "11" 상태를 그대로 유지한다(논리 상위 페이지 데이터 "1"의 프로그래밍). 또한, 논리 하위 페이지 데이터가 "0"인 "10" 상태의 메모리 셀은 "10" 상태를 그대로 유지한다(논리 상위 페이지 데이터 "1"의 프로그래밍).
한편, 도 19에 도시한 바와 같이, 논리 상위 페이지 데이터가 "0"인 경우에는, 비트선을 "L"로 함으로써, 메모리 셀의 터널 산화막에 고전계를 인가하고, 부유 게이트 전극에 전자를 주입하여, 메모리 셀의 임계값 전압 Vth를 소정량만 상승시킨다. 그 결과, 논리 하위 페이지 데이터가 "1"인 "11" 상태(소거 상태)의 메모리 셀은 "01" 상태로 변화한다(논리 상위 페이지 데이터 "0"의 프로그래밍). 또한, 논리 하위 페이지 데이터가 "0"인 "10" 상태의 메모리 셀은 "00" 상태로 변화한다(논리 상위 페이지 데이터 "0"의 프로그래밍).
즉, 본 예에서는 논리 하위 페이지 데이터가 "1", 논리 상위 페이지 데이터가 "1"일 때, 데이터 "11"이 메모리 셀에 기입되고, 논리 하위 페이지 데이터가 "0", 논리 상위 페이지 데이터가 "1"일 때, 데이터 "10"이 메모리 셀에 기입된다. 또한, 논리 하위 페이지 데이터가 "1", 논리 상위 페이지 데이터가 "0"일 때, 데이터 "01"이 메모리 셀에 기입되고, 논리 하위 페이지 데이터가 "0", 논리 상위 페이지 데이터가 "0"일 때, 데이터 "00"이 메모리 셀에 기입된다.
이와 같이, 2회의 프로그래밍 동작에 의해, 메모리 셀의 임계값 전압 Vth의 분포는 4개("11", "10", "00", "01")로 분리된다.
본 예에서는 논리 상위 페이지 데이터가 "0"일 때, "11" 상태의 메모리 셀은 "01" 상태로 변화하고, "10" 상태의 메모리 셀은 "00" 상태로 변화한다(도 19 참조).
여기서, 도 19로부터 분명히 알 수 있듯이, "11" 상태를 "01" 상태로 바꾸는 경우의 임계값 전압의 변동량은 "10" 상태를 "00" 상태로 바꾸는 경우의 임계값 전압의 변동량보다도 크다. 즉, "00"-프로그래밍을 행하는 메모리 셀 및 "01"-프로그래밍을 행하는 메모리 셀에 대하여, 라이트 펄스는 동일 조건에서 제공되기 때문에, "00"-프로그래밍은 "01"-프로그래밍보다도 빨리 종료한다.
이 경우, "00"-프로그래밍 종료 후의 "00"- 검증 판독을 생략하고, 이 후 "01"-검증 판독만을 행하도록 하여, 프로그램 시간의 단축을 도모할 수도 있다.
또, 도 17에서 Vcgv10은 "10"-검증 판독에 이용하는 리드 전위이며, 예를 들면, 0.4V로 된다. Vcgv00은 "00"-검증 판독에 이용하는 리드 전위(예를 들면, 1.4V)이고, Vcgv01은 "01"-검증 판독에 이용하는 리드 전위(예를 들면, 2.4V)이다. Vread는 비선택의 워드선에 제공하는 전송 전위이다.
메모리 셀의 임계값 전압이 Vcgr10 미만이면, 메모리 셀의 데이터는 "11"이고, 메모리 셀의 임계값 전압이 Vcgr10을 넘고, Vcgr00을 하회하는 경우에는 메모리 셀의 데이터는 "10"이고, 메모리 셀의 임계값 전압이 Vcgr00을 초과하며, Vcgr01을 하회하는 경우에는 메모리 셀의 데이터는 "00"이고, 메모리 셀의 임계값 전압이 Vcgr01을 초과하는 경우에는 메모리 셀의 데이터는 "01"로 된다.
논리 하위 페이지 데이터의 통상의 판독은 2회의 리드 동작("READ01", "READ10")에 의해 실현할 수 있다. READ01은 리드 전위로서 Vcgr01(예를 들면, 2V)을 이용한 리드 동작을 의미하고, READ10은 리드 전위로서 VCgr10(예를 들면, 0V)을 이용한 리드 동작을 의미한다. 또, 논리 상위 페이지 데이터의 판독은 1회의 판독 동작(READ "00")에 의해 실현할 수 있다. READ00은 리드 전위로서, Vcgr00(예를 들면, 1V)을 이용한 리드 동작을 의미한다.
이와 같이, 본 예에서는 합계 3회의 리드 동작에 의해, 2 비트 데이터를 판독할 수 있고, 리드 시간의 단축 또는 리드 동작의 고속화를 달성할 수 있다.
(2) 리드 동작
우선, 리드 동작에 대하여 설명한다.
① 알고리즘
도 20은 리드 동작의 알고리즘을 도시하고 있다.
우선, 커맨드 인터페이스 회로가 호스트 마이크로 컴퓨터로부터 제공되는 리드 커맨드를 확인하면, 이것을 받아 리드 커맨드가 스테이트 머신(제어 회로) 내로 설정된다(단계 S1).
또한, 어드레스 신호가 호스트 마이크로 컴퓨터로부터 메모리 칩 내로 공급되면, 이것을 받아 리드 페이지를 선택하기 위한 어드레스가 스테이트 머신 내로 설정된다(단계 S2).
스테이트 머신 내에, 리드 커맨드 및 어드레스 신호가 설정되면, 스테이트 머신에 의한 제어 하에서 단계 S3으로부터 단계 S6까지의 동작이 자동적으로 실행된다.
논리 하위 페이지 데이터의 리드를 행하는 경우에는, 상술한 바와 같이 2회의 리드 동작("READ01", "READ10")이 실행된다(단계 S3∼S5). 자세히 후술하겠지만, READ01(Vcgr01=2V)에 의해 판독된 리드 데이터는 데이터 기억부 DS1을 경유하여, 데이터 기억부 DS3에 기억된다. READ10(Vcgr10=0V)에서는 리드 데이터 및 데이터 기억부 DS3의 데이터에 의존하는 데이터가 데이터 기억부 DS1로부터 데이터 기억부 DS4로 전송된다.
논리 상위 페이지 데이터의 리드를 행하는 경우에는 1회의 판독 동작(READ "00")이 실행된다(단계 S3, S6). 자세히 후술하겠지만, READ00(Vcgr00=1V)에 의해 판독된 리드 데이터는 데이터 기억부 DS1을 경유하여, 데이터 기억부 DS4로 전송된다.
데이터 기억부(4)에 기억된 리드 데이터는, I/O선 IO, nIO, 감지 증폭기, 및 데이터 입출력 버퍼를 경유하여, 메모리칩의 외부로 출력된다.
② 동작 파형에 의한 동작 설명
이하, 도 21의 동작 타이밍도를 이용하여, 구체적인 동작 설명을 행한다.
리드 동작은 논리 하위 페이지 데이터의 리드 동작과 논리 상위 페이지 데이터의 리드 동작으로 이루어진다.
또, 도 21의 동작 타이밍도에서, 특별히 도시되어 있지 않는 한, "L" 레벨은 Vss(예를 들면, 0V), "H" 레벨은 Vdd(예를 들면, 3V)이다. 또한, 이 동작 타이밍도에서는, 1개의 블록 BLOCKi가 선택되고, 그 블록 BLOCKi 내의 워드선 WL2-i와 홀수번째의 비트선 BLek가 선택되는 것으로 한다(도 3 참조).
[1] 논리 하위 페이지 데이터의 리드 동작
논리 하위 페이지 데이터의 리드 동작은 2회의 리드 동작, 즉 "READ01"과 "READ10"으로 이루어진다. 우선, "READ01"이 행해지고, 이어서 "READ10"이 행해진다.
"READ01" 및 "READ10"은, 각각 이들 2개의 리드 동작에 공통된 데이터 리드에 관한 부분(RCLK 1-E, SCLK 1-E, RRCV 1-E)과, 각 리드 동작으로 고유의 데이터 트랜스퍼에 관한 부분(EXCLK 루틴)으로 구성된다.
[I]-1 "READ01"
"READ01" 동작은 리드 전위(선택된 워드선 WL2-i의 전위)를 Vcgr01(예를 들면, 2V)로 설정하고, 메모리 셀의 데이터가 "01"이거나, 또는 그 외의 데이터 "11", "10", "00"인지를 인식하는 동작이다.
[1]-1-1 데이터 리드
우선, 비트선측의 셀렉트 게이트선 SGD 및 비선택의 워드선 WL0-i, WL1-i, WL3-i에 각각 전송 전위 Vread(예를 들면, 4.5V)이 부여되고, 선택된 워드선 WL2-i에 리드 전위 Vcgr01이 부여된다(RCLK 1-2).
제어 신호 BLPRE가 "H"로 되고, N채널 MOS 트랜지스터 Qn6(도 10)이 온 상태로 된다. 또, 제어 신호 BLCLAMP가 Vclamp(예를 들면, 2V)로 되고, 제어 신호 BLSe가 Vsghh(예를 들면, 4.5V)이 됨으로써, 홀수번째의 비트선 BLek가 소정 전위(예를 들면, 1V 정도)로 프리차지된다. 한편, 제어 신호 BIASo가 Vsghh(예를 들면, 45V)로 되기 때문에, 짝수번째의 비트선 BLok는 Vss(예를 들면, 0V)로 고정되어, 실드 비트선으로서 기능하게 된다(RCLK 2-4).
이 후, 제어 신호 BLCLAMP가 Vss(예를 들면, 0V), 제어 신호 BLPRE가 "L"로 되고, 홀수번째의 비트선 BLek는 부유 상태로 된다(RCLK 5-7).
소스선측의 셀렉트 게이트선 SGS의 전위가 전송 전위 Vread로 설정되면, 선택된 메모리 셀의 상태, 즉 그 메모리 셀에 기억된 데이터의 값에 대응하여, 비트선 BLek의 전위에 영향이 나타난다.
즉, 선택된 메모리 셀의 데이터가 "11", "10", "00"인 경우에는, 리드 전위 Vcgr01에 의해, 이 선택된 메모리 셀은 온 상태로 된다. 이 때문에, 비트선 BLek의 전하가 방전되고, 비트선 BLek의 전위는 0.8V 이하로 저하한다(선택 블록 내의 비선택의 메모리 셀은 Vread에 의해 온 상태임).
한편, 선택된 메모리 셀의 데이터가 "01"인 경우에는 리드 전위 Vcgr01에 의해서는, 이 선택된 메모리 셀은 온 상태로 되지 않는다. 이 때문에, 비트선 BLek의 전하가 방전되지는 않으며, 비트선 BLek는 프리차지 전위(약 1V)를 유지한다(RCLK 6-E).
제어 신호 BLPRE가 4.5V 정도가 되고, 제어 신호 VPRE가 Vdd(예를 들면, 3V)이 되는 것에 의해, 데이터 기억부 DS1의 캐패시터 C1의 일단, 즉 노드 N2는 Vdd에 충전된다. 이 후, 제어 신호 BLCLAMP가 Vsense(예를 들면, 1.8V)이 되면, 데이터 기억부 DS1의 캐패시터 C1의 일단의 전위는 이하와 같이 변화한다.
즉, 비트선 BLek의 전위가 프리차지 전위(약 1V)인 상태인 경우(메모리 셀의 데이터가 "01"인 경우)에는 N채널 MOS 트랜지스터(클램프 트랜지스터) Qn5(도 10)는 오프 상태이고, 데이터 기억부 DS1의 캐패시터 C1의 일단의 전위는 Vdd("H")로 유지된다.
한편, 비트선 BLek의 전위가 0.8V이하인 경우(메모리 셀의 데이터가 "11", "10", "00"인 경우)에는, N채널 MOS 트랜지스터(클램프 트랜지스터)Qn5(도 10)는 온 상태이고, 데이터 기억부 DS1의 캐패시터 C1의 일단의 전하는 비트선 BLek에 방전되고, 그 전위는 Vdd보다도 낮은 값("L")으로 저하한다(SCLK 4-5).
그 결과, 데이터 기억부 DS1(캐패시터 C1의 일단)에는, 리드 전위 Vcgr01에 의한 리드 데이터가 기억된다. 즉, 메모리 셀의 데이터가 "11", "10", "00"인 경우에는 "L", 즉 "0"-데이터가 기억되고, 메모리 셀의 데이터가 "01"인 경우에는 "H", 즉 "1"-데이터가 기억된다.
[1]-1-2 데이터 트랜스퍼
"READ01" 동작에서는 메모리 셀의 데이터를 데이터 기억부 DS1에 판독한 후, 이 데이터 기억부 DS1에 기억된 리드 데이터를 데이터 기억부 DS3으로 전송하는 데이터 트랜스퍼가 실행된다. 이 동작은, 도 22에 도시하는 EXCLK 루틴에 따른다.
우선, 제어 신호 SEN1, LAT1이 모두 "L"로 되고(EXCLK 6), 또한 제어 신호 EQ1이 "H"로 됨으로써(EXCLK 7-8), 데이터 기억부 DS3을 구성하는 플립플롭 회로(도 10)의 상태가 리세트된다.
이 후, 제어 신호 BLC1이 4.5V로 되고(EXCLK 9), N채널 MOS 트랜지스터 Qn10이 온 상태로 된다. 그 결과, 데이터 기억부 DS1과 데이터 기억부 DS3은 상호 전기적으로 접속된다(도 10).
제어 신호 SEN1이 "H"로 되면(EXCLK 10), 데이터 기억부 DS1(캐패시터 C1의 일단)에 기억된 리드 데이터는 MOS 트랜지스터 Qn10을 경유하여, 데이터 기억부 DS3을 구성하는 클럭 동기식 인버터 CI1에 의해 감지된다. 또한, 제어 신호 LAT1이 "H"로 되면(EXCLK 11), 이 리드 데이터는 데이터 기억부 DS3에 기억된다(도 10).
또, "READ01" 동작은 선택된 워드선 WL2-i에 접속되는 4256개의 메모리 셀에 대하여 동시에 행해진다.
[1]-2 "READ10"
"READ10" 동작은 리드 전위(선택된 워드선 WL2-i의 전위)를 Vcgr10(예를 들면, 0V)으로 설정하고, 메모리 셀의 데이터가 "11"인지, 또는 그 이외의 데이터 "10", "00", "01"인지를 인식하는 동작이다.
[1]-2-1 데이터 리드
우선, 비트선측의 셀렉트 게이트선 SGD 및 비선택의 워드선 WL0-i, WL1-i, WL3-i에, 각각 전송 전위 Vread(예를 들면, 4.5V)가 부여되고, 선택된 워드선 WL2-i에 리드 전위 Vcgr10이 부여된다(RCLK 1-2).
제어 신호 BLPRE가 "H"로 되고, N채널 MOS 트랜지스터 Qn6(도 10)이 온 상태로 된다. 또, 제어 신호 BLCLAMP가 Vclamp(예를 들면, 2V)로 되고, 제어 신호 BLSe가 Vsghh(예를 들면, 4.5V)로 됨으로써, 홀수번째의 비트선 BLek이 소정 전위(예를 들면, 1V 정도)로 프리차지된다. 한편, 제어 신호 BIASo가 Vsghh(예를 들면, 4.5V)로 되기 때문에, 짝수번째의 비트선 BLok는 Vss(예를 들면, 0V)로 고정되고, 실드 비트선으로서 기능하게 된다(RCLK 2-4).
이 후, 제어 신호 BLCLAMP가 Vss(예를 들면, 0V), 제어 신호 BLPRE가 "L"이 되고, 홀수번째의 비트선 BLek는 부유 상태로 된다(RCLK 5-7).
소스선측의 셀렉트 게이트선 SGS의 전위가 전송 전위 Vread로 설정되면, 선택된 메모리 셀의 상태, 즉 그 메모리 셀에 기억된 데이터의 값에 대응하여, 비트선 BLek의 전위에 영향이 나타난다.
즉, 선택된 메모리 셀의 데이터가 "11"인 경우에는 리드 전위 Vcgr10에 의해, 이 선택된 메모리 셀은 온 상태로 된다. 이 때문에, 비트선 BLek의 전하가 방전되고, 비트선 BLek의 전위는 0.8V 이하로 저하한다(선택 블록 내의 비선택의 메모리 셀은 Vread에 의해 온 상태임).
한편, 선택된 메모리 셀의 데이터가 "10", "00", "01"인 경우에는 리드 전위 Vcgr10에 의해서는 이 선택된 메모리 셀은 온 상태로 되지 않는다. 이 때문에, 비트선 BLek의 전하가 방전되지 않으며, 비트선 BLek는 프리차지 전위(약 1V)를 유지한다(RCLK 6-E).
제어 신호 BLPRE가 4.5V 정도가 되고, 제어 신호 VPRE가 Vdd(예를 들면, 3V)이 되는 것에 의해, 데이터 기억부 DS1의 캐패시터 C1의 일단, 즉 노드 N2는 Vdd에 충전된다. 이 후, 제어 신호 BLCLAMP가 Vsense(예를 들면, 1.8V)이 되면, 데이터 기억부 DS1의 캐패시터 C1의 일단의 전위는 이하와 같이 변화한다.
즉, 비트선 BLek의 전위가 프리차지 전위(약 1V)의 상태일 경우(메모리 셀의 데이터가 "10", "00", "01"인 경우)에는 N채널 MOS 트랜지스터(클램프 트랜지스터) Qn5(도 10)는 오프 상태이고, 데이터 기억부 DS1의 캐패시터 C1의 일단의 전위는 Vdd("H")로 유지된다.
한편, 비트선 BLek의 전위가 0.8V 이하인 경우(메모리 셀의 데이터가 "11"인 경우)에는 N채널 MOS 트랜지스터(클램프 트랜지스터) Qn5(도 10)는 온 상태이고, 데이터 기억부 DS1의 캐패시터 C1의 일단의 전하는 비트선 BLek에 방전되며, 그 전위는 Vdd보다도 낮은 값("L")으로 저하한다(SCLK 4-5).
그 결과, 데이터 기억부 DS1(캐패시터 C1의 일단)에는 리드 전위 Vcgr10에 의한 리드 데이터가 기억된다. 즉, 메모리 셀의 데이터가 "11"인 경우에는 "L", 즉 "0"-데이터가 기억되고, 메모리 셀의 데이터가 "10", "00", "01"인 경우에는 "H", 즉 "1"-데이터가 기억된다.
[1]-2-2 데이터 트랜스퍼
"READ10" 동작에서는 메모리 셀의 데이터를 데이터 기억부 DS1에 판독한 후, 데이터 기억부 DS1의 데이터를 데이터 기억부 DS3의 데이터, 즉 "READ01"에 의해 메모리 셀로부터 판독된 리드 데이터의 값에 기초하여, 유지하거나, 강제로 변경하는 동작, 및 그 후, 데이터 기억부 DS1에 기억된 리드 데이터를 데이터 기억부 DS4로 전송하는 데이터 트랜스퍼가 실행된다. 이 동작은 도 23에 도시하는 EXCLK 루틴에 따른다.
우선, 제어 신호 DTG가 4.5V가 되고, N채널 MOS 트랜지스터 Qn9(도 10)가 온 상태로 된다. 그 결과, 데이터 기억부 DS2와 데이터 기억부 DS3이 상호 전기적으로 접속되며, 데이터 기억부 DS3의 데이터는 데이터 기억부 DS2, 즉 N채널 MOS 트랜지스터 Qn8의 게이트로 전송된다(EXCLK 2-4).
이 후, 제어 신호 REG가 "H"가 되면, 데이터 기억부 DS1에 기억된 리드 데이터, 즉 "READ10"에 의해 메모리 셀로부터 판독된 리드 데이터는 데이터 기억부 DS3에 기억된 데이터의 값에 대응하여, 유지되거나, 강제로 변경된다(EXCLK 3-4).
예를 들면, 데이터 기억부 DS3에 기억되어 있는 데이터가 "0"인 경우에는, N 채널 MOS 트랜지스터 Qn8의 게이트의 전위 레벨은 "L"이 되기 때문에, 이 N 채널 MOS 트랜지스터 Qn8은 오프 상태로 된다(도 10). 따라서, 데이터 기억부 DS1은 "READ10"에 의해 메모리 셀로부터 판독된 리드 데이터의 값을 그대로 유지한다.
또한, 데이터 기억부 DS3에 기억되어 있는 데이터가 "1"인 경우에는 N채널 MOS 트랜지스터 Qn8의 게이트의 전위 레벨은 "H"로 되기 때문에, 이 N 채널 MOS 트랜지스터 Qn8은 온 상태로 된다(도 10). 따라서, 데이터 기억부 DS1의 데이터는 "READ10"에 의해 메모리 셀로부터 판독된 리드 데이터의 값과 무관하게, 강제로 "0"으로 설정된다.
이 후, 제어 신호 SEN2, LAT2가 모두 "L"이 되고(EXCLK 6), 또한 제어 신호 EQ2가 "H"가 됨으로써(EXCLK 7-8), 데이터 기억부 DS4를 구성하는 플립플롭 회로(도 10)의 상태가 리세트된다.
이 후, 제어 신호 BLC2가 4.5V로 되고(EXCLK 9), N채널 MOS 트랜지스터 Qn12가 온 상태로 된다. 그 결과, 데이터 기억부 DS1과 데이터 기억부 DS4는 상호 전기적으로 접속된다(도 10).
제어 신호 SEN2가 "H"가 되면 (EXCLK 10), 데이터 기억부 DS1(캐패시터 C1의 일단)에 기억된 리드 데이터는 MOS 트랜지스터 Qn12를 경유하여, 데이터 기억부 DS4를 구성하는 클럭 동기식 인버터 CI4에 의해 감지된다. 또한, 제어 신호 LAT2가 "H"가 되면 (EXCLK 11), 이 리드 데이터는 데이터 기억부 DS4에 기억된다(도 10).
또, "READ10" 동작은 선택된 워드선 WL2-i에 접속되는 4256개의 메모리 셀에 대하여 동시에 행해진다.
[1]-3 통합
도 25는 논리 하위 페이지 데이터의 리드 동작에서의 리드 데이터의 흐름을 간단히 도시한 것이다.
"READ01"에서는 리드 전위로서 Vcgr01(예를 들면, 2V)을 이용하여 리드 동작을 실행하고, 그 때의 리드 데이터를 데이터 기억부 DS1에 기억한다. 즉, 선택된 메모리 셀의 데이터가 "11", "10", "00"인 경우에는 캐패시터 C1의 일단(노드 N2)의 전위는 "L"로 되고, 선택된 메모리 셀의 데이터가 "01"인 경우에는 캐패시터 C1의 일단(노드 N2)의 전위는 "H"로 된다(①).
이 후, 데이터 기억부 DS1의 데이터는 데이터 기억부 DS3으로 전송되고, 또한 기억된다(①).
"READ01"이 종료된 시점에서는, 데이터 기억부 DS3의 데이터가 "H"일 때는 메모리 셀의 데이터는 "01", 즉 논리 하위 페이지 데이터는 "1"인 것이 판명되었지만, 데이터 기억부 DS3의 데이터가 "L"일 때는 메모리 셀의 데이터는 "11", "10", "00" 중 하나이며, 논리 하위 페이지 데이터의 값을 특정할 수는 없다.
따라서, "READ01"에 이어, "READ10"이 행해진다.
"READ10"에서는 리드 전위로서 Vcgr10(예를 들면, 0V)을 이용하여 리드 동작을 실행하고, 그 때의 리드 데이터를 데이터 기억부 DS1에 기억한다. 즉, 선택된 메모리 셀의 데이터가 "11"인 경우에는 캐패시터 C1의 일단(노드 N2)의 전위는 "L"로 되고, 선택된 메모리 셀의 데이터가 "10", "00", "01"인 경우에는 캐패시터 C1의 일단(노드 N2)의 전위는 "H"로 된다.
단, 데이터 기억부 DS3의 데이터가 "H"일 때, 즉 메모리 셀의 데이터가 "01"일 때에 관해서는 N채널 MOS 트랜지스터 Qn8을 온 상태로 하여, 캐패시터 C1의 일단(노드 N2)의 전위를 강제로 "L"로 변경한다(②).
그 결과, 선택된 메모리 셀의 데이터가 "11", "01"일 때에는 데이터 기억부 DS1의 데이터는 "L"로 되기 때문에, 선택된 메모리 셀의 논리 하위 페이지 데이터로서 "1"이 확인된다. 또한, 선택된 메모리 셀의 데이터가 "10", "00"일 때에는, 데이터 기억부 DS1의 데이터는 "H"로 되기 때문에, 선택된 메모리 셀의 논리 하위 페이지 데이터로서 "0"이 확인된다(②).
또, 이 시점에서는, "L"="0" 및 "H"="1"의 관계가 역전하고 있다. 즉, "L"="1" 및 "H"="0"의 관계로 되어 있다.
이 후, 데이터 기억부 DS1의 데이터는 데이터 기억부 DS4로 전송되고, 또한 기억된다. 데이터 기억부 DS4의 데이터는 컬럼 셀렉트 신호 CSLk(도 10)가 "H"로 됨으로써, I/O선(IO, nIO)에 출력되고, 또한 데이터 입출력 버퍼를 경유하여, 메모리칩의 외부로 출력된다.
[2] 논리 상위 페이지 데이터의 리드 동작
논리 상위 페이지 데이터의 리드 동작은 1회의 리드 동작, 즉 "READ00"으로 이루어진다. "READ00"은 데이터 리드에 관한 부분(RCLK 1-E, SCLK 1-E, RRCV 1-E)과, 데이터 트랜스퍼에 관한 부분(EXCLK 루틴)으로 구성된다.
[2]-1 "READ00"
"READ00" 동작은 리드 전위(선택된 워드선 WL2-i의 전위)를 Vcgr00(예를 들면, 1V)로 설정하고, 메모리 셀의 데이터가 "11", "10"(논리 상위 페이지 데이터가 "1")인지, 또는 "00", "01"(논리 상위 페이지 데이터가 "0")인지 인식하는 동작이다.
[2]-1-1 데이터 리드
우선, 비트선측의 셀렉트 게이트선 SGD 및 비선택의 워드선 WL0-i, WL1-i, WL3-i에, 각각 전송 전위 Vread(예를 들면, 4.5V)가 부여되고, 선택된 워드선 WL2-i에 리드 전위 Vcgr00이 부여된다(RCLK 1-2).
제어 신호 BLPRE가 "H"로 되고, N채널 MOS 트랜지스터 Qn6(도 10)이 온 상태로 된다. 또, 제어 신호 BLCLAMP가 Vclamp(예를 들면, 2V)로 되고, 제어 신호 BLSe가 Vsghh(예를 들면, 4.5V)로 됨으로써, 홀수번째의 비트선 BLek가 소정 전위(예를 들면, 1V 정도)로 프리차지된다. 한편, 제어 신호 BIASo이 Vsghh(예를 들면, 45V)이 되기 때문에, 짝수번째의 비트선 BLok은 Vss(예를 들면, 0V)로 고정되어, 실드 비트선으로서 기능하게 된다(RCLK 2-4).
이 후, 제어 신호 BLCLAMP가 Vss(예를 들면, 0V), 제어 신호 BLPRE가 "L"로 되고, 홀수번째의 비트선 BLek는 부유 상태로 된다(RCLK 5-7).
소스선측의 셀렉트 게이트선 SGS의 전위가 전송 전위 Vread로 설정되면, 선택된 메모리 셀의 상태, 즉 그 메모리 셀에 기억된 데이터의 값에 대응하여, 비트선 BLek의 전위에 영향이 나타난다.
즉, 선택된 메모리 셀의 데이터가 "11", "10"인 경우에는 리드 전위 Vcgr00에 의해, 이 선택된 메모리 셀은 온 상태로 된다. 이 때문에, 비트선 BLek의 전하가 방전되고, 비트선 BLek의 전위는 0.8V 이하로 저하한다(선택 블록 내의 비선택의 메모리 셀은 Vread에 의해 온 상태임).
한편, 선택된 메모리 셀의 데이터가 "00", "01"인 경우에는 리드 전위 Vcgr00에 의해서는 이 선택된 메모리 셀은 온 상태로 되지 않는다. 이 때문에, 비트선 BLek의 전하가 방전되지 않고, 비트선 BLek는 프리차지 전위(약 1V)를 유지한다(RCLK 6-E).
제어 신호 BLPRE가 4.5V정도가 되고, 제어 신호 VPRE가 Vdd(예를 들면, 3V)가 되는 것에 의해, 데이터 기억부 DS1의 캐패시터 C1의 일단, 즉 노드 N2는 Vdd로 충전된다. 이 후, 제어 신호 BLCLAMP가 Vsense(예를 들면, 1.8V)가 되면, 데이터 기억부 DS1의 캐패시터 C1의 일단의 전위는 이하와 같이 변화한다.
즉, 비트선 BLek의 전위가 프리차지 전위(약 1V)의 상태인 경우(메모리 셀의 데이터가 "00", "01"인 경우)에는 N채널 MOS 트랜지스터(클램프 트랜지스터) Qn5(도 10)는 오프 상태이고, 데이터 기억부 DS1의 캐패시터 C1의 일단의 전위는 Vdd("H")로 유지된다.
한편, 비트선 BLek의 전위가 0.8V이하인 경우(메모리 셀의 데이터가 "11", "10"인 경우)에는, N채널 MOS 트랜지스터(클램프 트랜지스터) Qn5(도 10)는 온 상태이고, 데이터 기억부 DS1의 캐패시터 C1의 일단의 전하는 비트선 BLek로 방전되며, 그 전위는 Vdd보다도 낮은 값("L")으로 저하한다(SCLK 4-5).
그 결과, 데이터 기억부 DS1(캐패시터 C1의 일단)에는 리드 전위 Vcgr00에 의한 리드 데이터가 기억된다. 즉, 메모리 셀의 데이터가 "11", "10"인 경우에는 "L", 즉 "1"-데이터가 기억되고, 메모리 셀의 데이터가 "00", "01"인 경우에는 "H", 즉 "0"-데이터가 기억된다.
또, 이 시점에서는 "L"="0" 및 "H"="1"의 관계가 역전하고 있다. 즉, "L"="1" 및 "H"="0"의 관계로 되어 있다.
[2]-1-2 데이터 트랜스퍼
"READ00" 동작에서는 메모리 셀의 데이터를 데이터 기억부 DS1에 판독한 후, 이 데이터 기억부 DS1에 기억된 리드 데이터를, 데이터 기억부 DS4로 전송하는 데이터 트랜스퍼가 실행한다. 이 동작은 도 24에 도시하는 EXCLK 루틴에 따른다.
우선, 제어 신호 SEN2, LAT2가 모두 "L"로 되고(EXCLK 6), 또한 제어 신호 EQ2가 "H"로 됨으로써(EXCLK 7-8), 데이터 기억부 DS4를 구성하는 플립플롭 회로(도 10)의 상태가 리세트된다.
이 후, 제어 신호 BLC2가 4.5V로 되고(EXCLK 9), N채널 MOS 트랜지스터 Qn12가 온 상태로 된다. 그 결과, 데이터 기억부 DS1과 데이터 기억부 DS4는 상호 전기적으로 접속된다(도 10).
제어 신호 SEN2가 "H"로 되면(EXCLK 10), 데이터 기억부 DS1(캐패시터 C1의 일단)에 기억된 리드 데이터는 MOS 트랜지스터 Qn12를 경유하여, 데이터 기억부 DS4를 구성하는 클럭 동기식 인버터 CI4에 의해 감지된다. 또한, 제어 신호 LAT2가 "H"가 되면 (EXCLK 11), 이 리드 데이터는 데이터 기억부 DS4에 기억된다(도 10).
또, "READ00" 동작은 선택된 워드선 WL2-i에 접속되는 4256개의 메모리 셀에 대하여 동시에 행해진다.
[2]-3 통합
도 26은 논리 상위 페이지 데이터의 리드 동작에서의 리드 데이터의 흐름을 간단히 도시한 것이다.
"READ00"에서는, 리드 전위로서 Vcgr00(예를 들면, 1V)을 이용하여 리드 동작을 실행하고, 그 때의 리드 데이터를 데이터 기억부 DS1에 기억한다. 즉, 선택된 메모리 셀의 데이터가 "11", "10"(논리 상위 페이지 데이터가 "1")인 경우에는 캐패시터 C1의 일단(노드 N2)의 전위는, "L"로 되고, 선택된 메모리 셀의 데이터가 "00", "01"(논리 상위 페이지 데이터가 "0")인 경우에는, 캐패시터 C1의 일단(노드 N2)의 전위는 "H"로 된다.
또, 이 시점에서는, "L"="0" 및 "H"="1"의 관계가 역전하고 있다. 즉, "L"="1" 및 "H"="0"의 관계로 되어 있다.
이 후, 제어 신호 BLC2가 4.5V가 되는 것에 의해, 데이터 기억부 DS1의 데이터는 데이터 기억부 DS4에 전송되고, 또한 기억된다. 데이터 기억부 DS4의 데이터는 컬럼 셀렉트 신호 CSLk(도 10)가 "H"가 됨으로써, I/O선(IO, nIO)에 출력되고, 또한 데이터 입출력 버퍼를 경유하여, 메모리칩의 외부로 출력된다.
(3) 프로그램 동작
이어서, 프로그램 동작에 대하여 설명한다.
(1) 알고리즘
[1] 프로그램 동작(1)
도 27 내지 도 29는 프로그램 동작의 알고리즘의 일례를 도시하고 있다.
이 예는 Pass Write라고 하는 기입 원리를 채용했을 때의 알고리즘으로 되어 있다. Pass Write란, 프로그램 검증을 패스한 메모리 셀에 대하여, 다시 프로그램 동작을 실행하고, 그 임계값 전압을 고정밀도로 제어하는데, 즉 임계값 분포의 폭을 좁게 하는 방법(2회 기록)이며, 1번째의 프로그램과 2번째의 프로그램으로 이루어진다.
또, 1번째의 프로그램은 1st Pass라고 하며, 2번째의 프로그램은 2nd Pass라고 한다.
우선, 커맨드 인터페이스 회로가 호스트 마이크로 컴퓨터로부터 제공되는 데이터 입력 커맨드를 수취하고, 이것을 받아, 데이터 입력 커맨드가 스테이트 머신(제어 회로) 내에 설정된다(단계 S1).
또한, 어드레스 신호가 호스트 마이크로 컴퓨터로부터 메모리 칩 내로 공급되면, 이것을 받아 프로그램의 대상이 되는 페이지를 선택하기 위한 어드레스가 스테이트 머신 내에 설정된다(단계 S2).
그리고, 1페이지분의 프로그램 데이터가 데이터 입출력 버퍼를 경유하여, 메모리칩 내에 입력되면, 이들 1 페이지분의 프로그램 데이터는 데이터 기억부 DS4에 기억된다(단계 S3). 또, 데이터 기억부 DS4는 1 페이지에 대응하는 수만큼 존재한다.
이 후, 커맨드 인터페이스 회로가 호스트 마이크로 컴퓨터로부터 제공되는 라이트 커맨드를 확인하면, 이것을 받아 라이트 커맨드가 스테이트 머신 내에 설정된다(단계 S4). 그 결과, 스테이트 머신에 의한 제어 하에서, 도 28의 단계 S5로부터 도 29의 단계 S28까지의 동작이 자동적으로 실행된다.
[1]-1 1st Pass
우선, 도 28에 도시하는 1번째의 프로그램(1st Pass)이 실행된다.
데이터 기억부 DS4에 기억되어 있는 프로그램 데이터는 데이터 기억부 DS2, DS3에 각각 복사된다(단계 S5).
이 후, 만약 프로그램의 대상이 되는 페이지가 논리 상위 페이지이면, 라이트 동작에 앞서, Internal Data Load가 실행된다(단계 S6). Internal Data Load란, 프로그램의 대상이 되는 논리 상위 페이지를 갖는 선택된 메모리 셀의 논리 하위 페이지에 기억된 데이터를 판독하는 동작을 의미한다.
Internal Data Load가 필요한 이유는, 선택된 메모리 셀의 논리 상위 페이지에 기입하는 데이터가 동일해도, 그 선택된 메모리 셀의 논리 하위 페이지에 기억된 데이터의 값에 의해, 라이트 동작에서 목표로 하는 임계값 전압이 상이하게 되기 때문이다(도 19 참조).
Internal Data Load에 의해 판독된 논리 하위 페이지 데이터는 데이터 기억부 DS1을 경유하여, 데이터 기억부 DS4에 기억된다.
여기서, 주의할 점은 논리 하위 페이지 데이터가 "1"인 경우에는, Internal Data Load에 의한 리드 데이터는 "0"(="L")이고, "0"-데이터가 데이터 기억부 DS4(노드 N4)에 기억되거나, 또는 논리 하위 페이지 데이터가 "0"인 경우에는, Internal Data Load에 의한 리드 데이터는, "1"(="H")이고, "1"-데이터가 데이터 기억부 DS4(노드 N4)에 기억되는 것이다.
단, 이 현상에 대해서는, 동작적으로 전혀 문제가 없으며, 오히려 후술하는 2nd Pass에서의 "Verify00(2nd Pass)"를 실행하는데 적합하게 되어 있다.
이 후, 논리 하위 페이지에 대한 프로그램이면, 라이트 전압 Vpgm을 12V로 설정하고, 논리 상위 페이지에 대한 프로그램이면, 라이트 전압 Vpgm을 13V로 설정한다. 또한, 스테이트 머신 내의 프로그램 카운터의 값 PC를 0으로 설정한다(단계 S7). 또, 프로그램 카운터의 값 PC는 라이트 동작의 횟수를 나타내고 있다.
이어서, 라이트 동작을 실행한다(단계 S8).
데이터 기억부 DS3에 기억된 프로그램 데이터가 "0"인 경우에는, 예를 들면 기판과 부유 게이트 전극과의 사이에 고전압을 부여하고, 부유 게이트 전극에 전자를 주입하여, 메모리 셀의 임계값 전압을 높인다("0"-programming). 데이터 기억부 DS3에 기억된 프로그램 데이터가 "1"인 경우에는, 예를 들면 기판과 부유 게이트 전극과의 사이에 고전압이 부여되지 않도록 하고, 부유 게이트 전극에 대한 전자의 주입을 방지하여, 메모리 셀의 임계값 전압을 변화시키지 않는다("1"-programming).
이 라이트 동작을 행한 후에, 프로그램 카운터의 값 PC에 "1"을 더한다(단계 S8).
이 후, 데이터 기억부 DS3에 기억된 데이터에 기초하여, 프로그램 검증이 Pass인 상태(프로그램이 완료되어 있는 상태)로 되어 있거나, 또는 NG인 상태(프로그램이 완료되지 않은 상태)로 되어 있는지 판정한다(단계 S9).
여기서, 최초의 라이트 동작 직후에는 "Verify00(1st Pass)" 및 "Verify10(1st Pass)"은 한번도 행해지지 않기 때문에, 데이터 기억부 DS3은 프로그램 데이터 그 자체를 기억하고 있다.
모든 컬럼 내의 데이터 기억부 DS3(예를 들면, 4256개)이 "1"-데이터를 기억하고 있는 경우, 즉 논리 하위 페이지 또는 논리 상위 페이지에 대한 프로그램 데이터가 모두 "1"인 경우에는 모든 컬럼에서, 도 10의 N 채널 MOS 트랜지스터 Qn17은 오프 상태이고, 예를 들면 도 8의 FLAG는 "H"를 유지한다.
따라서, 프로그램 검증이 Pass인 상태(프로그램이 완료되어 있는 상태)로 되어 있다고 판단되어, 2nd Pass로 이행한다(단계 S15).
이것에 대하여, 적어도 1개의 컬럼 내의 데이터 기억부 DS3이 "0"-데이터를 기억하고 있는 경우, 즉 논리 하위 페이지 또는 논리 상위 페이지에 대한 프로그램 데이터 중 적어도 1개가 "0"인 경우에는 "0"-데이터를 기억하는 데이터 기억부 DS3에 접속되는 N 채널 MOS 트랜지스터 Qn17(도 10)은 온 상태이고, 예를 들면 도 8의 FLAG는 "L"이 된다.
따라서, 프로그램 검증이 NG인 상태(프로그램이 완료되지 않은 상태)로 되어 있다고 판단되어, "Verify00(1st Pass)" 또는 "Verify10(1st Pass)"으로 이행한다.
논리 하위 페이지에 대한 프로그램이면, "Verify10(1st Pass)"이 실행된다(단계 S12).
"Verify10(1st Pass)"은, 프로그램의 대상이 되는 선택된 메모리 셀에 대하여, 리드 전위 Vcgv10(도 17 참조)을 이용하여 리드 동작을 실행하고, 이 리드 동작에 의해 얻어지는 리드 데이터와 데이터 기억부 DS2의 데이터(프로그램 데이터)에 기초하여, 데이터 기억부 DS3에 새롭게 기억하는 데이터의 값을 결정하는 동작을 의미한다.
논리 하위 페이지에 대한 프로그램의 경우, 당초 프로그램의 대상이 되는 선택된 모든 메모리 셀은 "11" 상태로 되어 있다. 이 때문에, "1"-programming의 대상이 되는 메모리 셀("1"-데이터를 기억하는 데이터 기억부 DS3에 대응하는 메모리 셀)에 관해서는, 임계값 전압의 변동은 없기 때문에, "Verify10(1st Pass)"에 의해 판독되는 리드 데이터는 항상 "0"이다.
따라서, 데이터 기억부 DS1에는 "0"이 기억된다. 그러나, 후술한 바와 같이, 데이터 기억부 DS2에 "1"이 기억되어 있는 경우에는 데이터 기억부 DS1의 데이터는 리드 데이터와 무관하게, 강제로 "1"로 변경된다. 즉, 이 "1"-데이터가 데이터 기억부 DS1로부터 다시 데이터 기억부 DS3에 기억된다.
한편, "0"-programming의 대상이 되는 메모리 셀("0"-데이터를 기억하는 데이터 기억부 DS3에 대응하는 메모리 셀)에 관해서는 라이트 동작(단계 S8)에 의해 충분히 임계값 전압이 상승(프로그램이 완료)하고 있는 경우에는 "Verify10(1st Pass)"에 의해 판독되는 리드 데이터는 "1"로 된다.
따라서, 데이터 기억부 DS1에는 "1"이 기억된다. 이 "1"-데이터는 데이터 기억부 DS1로부터 데이터 기억부 DS3으로 전송된다. 즉, 데이터 기억부 DS3의 데이터는 "0"에서 "1"로 변한다.
또한 "0"-programming의 대상이 되는 메모리 셀("0"-데이터를 기억하는 데이터 기억부 DS3에 대응하는 메모리 셀)에 관한 것으로, 라이트 동작(단계 S8)에 의해 충분히 임계값 전압이 상승하지 않은(프로그램이 완료되지 않은) 경우에는 "Verify10 (1st Pass)"에 의해 판독되는 리드 데이터는 "0"으로 된다.
따라서, 데이터 기억부 DS1에는 "0"이 기억된다. 이 "0"-데이터는 데이터 기억부 DS1로부터 데이터 기억부 DS3으로 전송된다. 즉, 데이터 기억부 DS3의 데이터는 "0"을 유지한다.
논리 상위 페이지에 대한 프로그램이면 "Verify00(1st Pass)"가 실행된다(단계 S11).
"Verify00(1st Pass)"이란, 프로그램의 대상이 되는 선택된 메모리 셀에 대하여, 리드 전위 Vcgv00(도 17 참조)을 이용하여 리드 동작을 실행하고, 이 리드 동작에 의해 얻어지는 리드 데이터와 데이터 기억부 DS2의 데이터(프로그램 데이터)에 기초하여, 데이터 기억부 DS3에 새롭게 기억하는 데이터의 값을 결정하는 동작을 의미한다.
논리 상위 페이지에 대한 프로그램의 경우, 당초 프로그램의 대상이 되는 선택된 메모리 셀은 "11" 상태 또는 "10" 상태로 되어 있다. 이 때문에, "1"-programming의 대상이 되는 메모리 셀("1"-데이터를 기억하는 데이터 기억부 DS3에 대응하는 메모리 셀)에 관해서는 임계값 전압의 변동은 없기 때문에, "Verify00(1st Pass)"에 의해 판독되는 리드 데이터는 항상 "0"이다.
따라서, 데이터 기억부 DS1에는 "0"이 기억된다. 그러나, 후술한 바와 같이, 데이터 기억부 DS2에 "1"이 기억되어 있는 경우에는 데이터 기억부 DS1의 데이터는 리드 데이터와 무관하게, 강제로 "1"로 변경된다. 즉, 이 "1"-데이터가 데이터 기억부 DS1로부터, 다시 데이터 기억부 DS3에 기억된다.
한편, "0"-programming의 대상이 되는 메모리 셀("0"-데이터를 기억하는 데이터 기억부 DS3에 대응하는 메모리 셀)에 관해서는 라이트 동작(단계 S8)에 의해 충분히 임계값 전압이 상승(프로그램이 완료)하고 있는 경우에는 "Verify00(1st Pass)"에 의해 판독되는 리드 데이터는 "1"로 된다.
따라서, 데이터 기억부 DS1에는 "1"이 기억된다. 이 "1"-데이터는 데이터 기억부 DS1로부터 데이터 기억부 DS3으로 전송된다. 즉, 데이터 기억부 DS3의 데이터는 "0"에서 "1"로 변경된다.
또, 이 단계에서는 "0"-programming의 대상이 되는 메모리 셀은 모두 "00" 상태로 되지만, Internal Data Load(단계 S6)에 의해 판독된 논리 하위 페이지 데이터(데이터 기억부 DS4에 기억되어 있음)에 기초하여, 2nd Pass에서, "Verify00(2 ndpass)"을 행하기 위해("00" 상태와 "01" 상태로 분리), 논리 하위 페이지 데이터를 그 상태에서, 논리 상위 페이지 데이터를 프로그램할 수 있다.
또한, "0"-programming의 대상이 되는 메모리 셀("0"-데이터를 기억하는 데이터 기억부 DS3에 대응하는 메모리 셀)에 관한 것으로, 라이트 동작(단계 S8)에 의해 충분히 임계값 전압이 상승하지 않은(프로그램이 완료하지 않은) 경우에는 "Verify00(1st Pass)"에 의해 판독되는 리드 데이터는 "0"으로 된다.
따라서, 데이터 기억부 DS1에는 "0"이 기억된다. 이 "0"-데이터는 데이터 기억부 DS1로부터 데이터 기억부 DS3으로 전송된다. 즉, 데이터 기억부 DS3의 데이터는 "0"을 유지한다.
이 후, 만약 프로그램 카운터의 값 PC가 미리 설정된 최대 라이트 횟수 PC max 1st에 도달했다면, 스테이트 머신 내의 스테이터스 레지스터에 Fail(프로그램불량)을 설정하고, 프로그램 동작을 종료한다(단계 S13, S16).
또한, 만약 프로그램 카운터의 값 PC가 미리 설정된 최대 라이트 횟수 PC max 1st보다도 작으면, 라이트 전압 Vpgm을, 예를 들면 0.2V 정도 상승(단계 상승)시킨 후, 재차 라이트 동작을 실행한다(단계 S13, S14, S8).
이 후, 프로그램 검증이 행해지지만(단계 S9), 상술한 바와 같이, "1"-programming의 경우에는 데이터 기억부 DS3의 데이터는 항상 "1"로 되어 있다. 또한, "0"-programming의 경우에는 "0"-programming이 완료되어 있는 경우에는, 데이터 기억부 DS3의 데이터는 "0"에서 "1"로 변경되고, "0"-programming이 완료되지 않은 경우에만 데이터 기억부 DS3의 데이터는 "0"을 유지한다.
따라서, 프로그램의 대상이 되는 선택된 모든 메모리 셀에 대하여, 프로그래밍("1"-programming 또는 "0"-programming)이 완료되는 경우에는 모든 데이터 기억부 DS3이 "1"-데이터를 기억하게 된다. 즉, 모든 컬럼에서 도 10의 N 채널 MOS 트랜지스터 Qn17은 오프 상태이고, 도 8의 FLAG가 "H"(프로그램 검증이 Pass의 상태)로 되어, 2nd Pass로 이행한다(단계 S15).
또한, 프로그램의 대상이 되는 선택된 메모리 셀 중 적어도 1개에 대하여, 프로그래밍("0"-programming)이 완료되지 않은 경우에는 적어도 1개의 데이터 기억부 DS3이 "0"-데이터를 기억하고 있게 된다. 즉, 적어도 1개의 컬럼에서, 도 10의 N 채널 MOS 트랜지스터 Qn17은 온 상태로 되고, 도 8의 FLAG가 "L"(프로그램 검증이 NG의 상태)로 되며, 다시 검증 판독와 라이트 동작이 반복된다(단계 S10∼S14, S16, S8).
이와 같이, 데이터 기억부 DS3에 기억된 데이터에 기초하여, 프로그램이 완료되었는지의 여부를 판단할 수 있다.
[1]-2 2nd Pass
1번째의 프로그램(1st Pass)의 단계 S9에서, 프로그램 검증이 Pass인 경우에는, 계속해서 2번째의 프로그램(2nd Pass)이 실행된다.
2nd Pass에서는, 우선 데이터 기억부 DS2에 기억되어 있는 프로그램 데이터를 데이터 기억부 DS3에 카피 백(copy-back)한다(단계 S17).
이 카피 백은, 이하의 의의를 갖는다.
당초, 프로그램 데이터는 데이터 기억부 DS2, DS3에 기억된다(단계 S5). 그러나, 1st Pass에서는 상술한 바와 같이, 데이터 기억부 DS3의 데이터는 "Verify10(1st Pass)" 또는 "Verify00(1st Pass)"의 결과에 의해 변경된다. 최종적으로, 즉 1st Pass의 단계 S9에서 프로그램 검증이 Pass인 경우에는 모든 데이터 기억부 DS3의 값은 "1"로 되어 있다.
따라서, 2nd Pass에서는 데이터 기억부 DS3에 다시 프로그램 데이터를 기억시키기 위해, 데이터 기억부 DS2로부터 데이터 기억부 DS3에 프로그램 데이터를 전송한다. 이것이, 단계 S17의 카피 백의 의의이다.
이 후, 논리 하위 페이지에 대한 프로그램이면, 라이트 전압 Vpgm을 12V로 재설정하고, 논리 상위 페이지에 대한 프로그램이면, 라이트 전압 Vpgm을 13V로 재설정한다. 또한, 스테이트 머신 내의 프로그램 카운터의 값 PC을 0으로 재설정한다(단계 S7).
이어서, "Verify10(2nd Pass)" 또는 "Verify01"이 실행된다.
논리 하위 페이지에 대한 프로그램이면, "Verify10(2nd Pass)"가 실행된다(단계 S19∼ST20).
"Verify10(2nd Pass)"이란, 프로그램의 대상이 되는 선택된 메모리 셀에 대하여, 리드 전위 Vcgv10(도 17 참조)을 이용하여 리드 동작을 실행하고, 이 리드 동작에 의해 얻어지는 리드 데이터와 데이터 기억부 DS2의 데이터(프로그램 데이터)에 기초하여, 데이터 기억부 DS3에 새롭게 기억하는 데이터의 값을 결정하는 동작을 의미한다.
2nd Pass에서는, "1"-programming의 대상이 되는 메모리 셀("1"-데이터를 기억하는 데이터 기억부 DS3에 대응하는 메모리 셀)에 관해서는, "11" 상태를 유지하고 있기 때문에, "Verify10(2nd Pass)"에 의해 판독되는 리드 데이터도 항상 "0"이다.
따라서, 데이터 기억부 DS1에는 "0"이 기억된다. 또한, 데이터 기억부 DS2에 "1"이 기억되어 있기 때문에, 데이터 기억부 DS1의 데이터는 리드 데이터와 무관하게 강제로 "1"로 변경된다. 이 때문에, "1" 데이터가 데이터 기억부 DS1로부터 데이터 기억부 DS3으로 전송된다.
한편, "0"-programming의 대상이 되는 메모리 셀("0"-데이터를 기억하는 데이터 기억부 DS3에 대응하는 메모리 셀)에 관해서는, 1st Pass에 의해, 거의 "10" 상태로 되는 것으로 생각되어진다.
충분히 임계값 전압이 상승(프로그램이 완료)하고 있는 메모리 셀에 대해서는, "Verify10(2nd PaSS)"에 의해 판독되는 리드 데이터는 "1"로 된다.
따라서, 데이터 기억부 DS1에는 "1"이 기억된다. 이 "1"-데이터는 데이터 기억부 DS1로부터 데이터 기억부 DS3으로 전송된다. 즉, 데이터 기억부 DS3의 데이터는 "0"에서 "1"로 변경된다.
충분히 임계값 전압이 상승하지 않는(프로그램이 완료되지 않은) 메모리 셀에 대해서는 "Verify10(1st Pass)"에 의해 판독되는 리드 데이터는 "0"으로 된다.
따라서, 데이터 기억부 DS1에는 "0"이 기억된다. 이 "0"-데이터는 데이터 기억부 DS1로부터 데이터 기억부 DS3으로 전송된다. 즉, 데이터 기억부 DS3의 데이터는 "0"을 유지한다.
논리 상위 페이지에 대한 프로그램이면, "Verify01" 및 "Verify00(2nd Pass)"이 연속하여 실행된다(단계 S21∼S22).
"Verify01"이란, 프로그램의 대상이 되는 선택된 메모리 셀에 대하여, 리드 전위 Vcgv01(도 17 참조)을 이용하여 리드 동작을 실행하고, 이 리드 동작에 의해 얻어지는 리드 데이터와 데이터 기억부 DS2의 데이터(프로그램 데이터)에 기초하여, 데이터 기억부 DS3에 새롭게 기억하는 데이터의 값을 결정하는 동작을 의미한다.
"Verify00(2nd Pass)"은 프로그램의 대상이 되는 선택된 메모리 셀에 대하여, 리드 전위 Vcgv00(도 17 참조)을 이용하여 리드 동작을 실행하고, 이 리드 동작에 의해 얻어지는 리드 데이터와 데이터 기억부 DS2의 데이터(프로그램 데이터)와 데이터 기억부 DS4의 데이터(논리 하위 페이지 데이터)에 기초하여, 데이터 기억부 DS3에 새롭게 기억하는 데이터의 값을 결정하는 동작을 의미한다.
2nd Pass에서는 "1"-programming의 대상이 되는 메모리 셀("1"-데이터를 기억하는 데이터 기억부 DS3에 대응하는 메모리 셀)에 관해서는, "11" 상태 또는 "10" 상태를 유지하고 있기 때문에, "Verify01"에 의해 판독되는 리드 데이터도 항상 "0"이다.
따라서, 데이터 기억부 DS1에는 "0"이 기억된다. 또한, 데이터 기억부 DS2에 "1"이 기억되고 있기 때문에, 데이터 기억부 DS1의 데이터는 리드 데이터와 무관하게, 강제로 "1"로 변경된다. 이 때문에 "1" 데이터가 데이터 기억부 DS1로부터 데이터 기억부 DS3으로 전송된다.
또한, "Verify00(2nd pass)"에 의해 판독되는 리드 데이터도 항상 "0"이다.
따라서, 데이터 기억부 DS1에는 "0"이 기억된다. 그러나, 데이터 기억부 DS2에 "1"이 기억되어 있기 때문에, 데이터 기억부 DS1의 데이터는 리드 데이터 및 데이터 기억부 DS4의 논리 하위 페이지 데이터와 무관하게, 강제로, "1"로 변경된다. 이 때문에, "1"-데이터가 데이터 기억부 DS1로부터 데이터 기억부 DS3으로 전송된다.
한편, "0"-programming의 대상이 되는 메모리 셀("0"-데이터를 기억하는 데이터 기억부 DS3에 대응하는 메모리 셀)에 관해서는, 1st Pass에 의해 "00" 상태로 되는 것으로 생각되어진다.
따라서, 최초로, "Verify01"에 의해 판독되는 리드 데이터는 "0"으로 된다. 이 때문에, 데이터 기억부 DS1에는 "0"이 기억된다. 이 "0"-데이터는 데이터 기억부 DS1로부터 데이터 기억부 DS3으로 전송된다. 즉, 데이터 기억부 DS3의 데이터는 "0"을 유지한다.
이 후, "Verify01"에 이어서, "Verify00(2nd pass)"가 실행된다.
충분히 임계값 전압이 상승("00"-programming이 완료)하고 있는 메모리 셀에 대해서는 "Verify00(2nd Pass)"에 의해 판독되는 리드 데이터는 "1"로 된다.
따라서, 데이터 기억부 DS1에는 "1"이 기억된다.
그러나, 여기서 데이터 기억부 DS1의 데이터는 데이터 기억부 DS4에 기억된 논리 하위 페이지 데이터에 영향을 받는다.
즉, 논리 하위 페이지 데이터가 "1"인 경우에는 데이터 기억부 DS4(노드 N4)는 "0"(="L")을 기억하고 있다. 따라서, 데이터 기억부 DS1의 데이터는 강제로 "0"으로 변경된다. 이것은, 논리 하위 페이지 데이터가 "1"일 때에, 논리 상위 페이지 데이터로서 "0"을 프로그램할 때는, 메모리 셀을 "01" 상태(도 19 참조)로 하는 것을 의미한다.
이 "0"-데이터는 데이터 기억부 DS1로부터 데이터 기억부 DS3으로 전송된다. 즉, 데이터 기억부 DS3의 데이터는 "0"인 상태이다.
논리 하위 페이지 데이터가 "0"인 경우에는 데이터 기억부 DS4(노드 N4)는 "1"(="H")을 기억하고 있다. 따라서, 데이터 기억부 DS1의 데이터는 "1"인 상태이다.
이 "1"-데이터는 데이터 기억부 DS1로부터 데이터 기억부 DS3으로 전송된다. 즉, 데이터 기억부 DS3의 데이터는 "0"에서 "1"로 변경된다.
그런데, 상술한 바와 같이, 논리 상위 페이지 데이터로서 "0"을 프로그래밍할 경우, 논리 하위 페이지 데이터가 "0"일 때에는, 메모리 셀은 "00"인 상태로 하고, 논리 하위 페이지 데이터가 "1"일 때는 메모리 셀은 "01"인 상태로 해야 한다.
또한, 1st Pass가 종료한 시점에서는, 논리 상위 페이지 데이터로서, "0"을 프로그래밍하는 메모리 셀은 논리 하위 페이지 데이터의 값과 무관하게, "00"인 상태로 되어 있다.
본 예의 시퀀스에서는, "Verify01"의 직후에 "Verify00(2nd Pass)"을 연속하여 행하고 있기 때문에, 논리 하위 페이지 데이터가 "1"인 메모리 셀만의 임계값 전압을, 라이트 동작 및 "Verify01"에 의해 상승시켜, "01"의 상태로 할 수 있다. 즉, 논리 하위 페이지 데이터가 "0"인 메모리 셀에 대해서는 "Verify00(2nd Pass)"에 의해, 라이트 동작(부유 게이트 전극에 대한 전자의 주입)을 "00" 상태로 된 시점에서 멈출 수 있다.
이 후, 만약 프로그램 카운터의 값 PC가 미리 설정된 최대 라이트 횟수 PC max 2nd에 도달했다면, 스테이트 머신 내의 스테이터스 레지스터에 Fail(프로그램불량)을 설정하여, 프로그램 동작을 종료시킨다(단계 S23, S28).
또한, 만약 프로그램 카운터의 값 PC가 미리 설정된 최대 라이트 횟수 PC max 2nd보다도 작으면, 라이트 전압 Vpgm을, 예를 들면 02V 정도 상승(단계 상승)시킨 후, 라이트 동작을 실행한다(단계 S23, S24, S25).
데이터 기억부 DS3에 기억된 프로그램 데이터가 "0"인 경우에는, 예를 들면 기판과 부유 게이트 전극과의 사이에 고전압을 제공하여, 부유 게이트 전극에 전자를 주입하고, 메모리 셀의 임계값 전압을 높인다("0"-programming). 데이터 기억부 DS3에 기억된 프로그램 데이터가 "1"인 경우에는, 예를 들면 기판과 부유 게이트 전극과의 사이에 고전압이 부여되지 않도록 하여, 부유 게이트 전극에 대한 전자의 주입을 방지하고, 메모리 셀의 임계값 전압을 변화시키지 않는다("1"-programming).
이 라이트 동작을 행한 후에, 프로그램 카운터의 값 PC에 "1"을 더한다(단계 S25).
이 후, 데이터 기억부 DS3에 기억된 데이터에 기초하여, 프로그램 검증을 실행하여, 프로그램 검증이 Pass(프로그램이 완료되어 있는 상태)인지, 또는 NG(프로그램이 완료되지 않은 상태)인지 판정한다(단계 S26).
논리 상위 페이지에 대한 프로그램 데이터가 "1"("1"-programming)인 경우에는, 데이터 기억부 DS3의 데이터는 항상 "1"로 되어 있다.
또한, 논리 상위 페이지에 대한 프로그램 데이터가 "0"이며, 논리 하위 페이지 데이터가 "0"인 경우("00"-programming)에는 "00"-programming이 완료되어 있는 경우에는 데이터 기억부 DS3의 데이터는 "Verify00(2nd Pass)"에 의해 "0"에서 "1"로 변경된다.
또한, 논리 상위 페이지에 대한 프로그램 데이터가 "0"이며, 논리 하위 페이지 데이터가 "1"인 경우("00"-programming)에는 "00"-programming이 완료되어 있는 경우에는 데이터 기억부 DS3의 데이터는 "Verify01"에 의해 "0"에서 "1"로 변경된다.
따라서, 프로그램의 대상이 되는 선택된 모든 메모리 셀에 대하여, 프로그래밍("00"-programming 또는 "01"-programming)이 완료되어 있는 경우에는, 모든 데이터 기억부 DS3이 "1"-데이터를 기억하고 있게 된다. 즉, 모든 컬럼에서, 도 10의 N 채널 MOS 트랜지스터 Qn17은 오프 상태이고, 도 8의 FLAG가 "H"(프로그램 검증이 Pass의 상태) 상태로 된다. 그리고, 스테이트 머신 내의 스테이터스 레지스터에, Pass(프로그램 완료)를 설정하여, 프로그램 동작을 종료한다(단계 S26, S27).
또한, 프로그램의 대상이 되는 선택된 메모리 셀 중 적어도 1개에 대하여, 프로그래밍("01"-programming)이 완료되지 않은 경우에는 적어도 1개의 데이터 기억부 DS3이 "0"-데이터를 기억하고 있게 된다. 즉, 적어도 1개의 컬럼에서, 도 10의 N 채널 MOS 트랜지스터 Qn17은 온 상태로 되고, 도 8의 FLAG가 "L"(프로그램 검증이 NG인 상태)로 되어, 다시 검증 판독와 라이트 동작이 반복된다(단계 S19∼S25, S28).
이와 같이, 데이터 기억부 DS3에 기억된 데이터에 기초하여, 프로그램이 완료되었는지의 여부를 판단할 수 있다.
[2] 프로그램 동작2
도 30은 프로그램 동작의 알고리즘의 다른 예를 도시하고 있다.
이 예는 Quick Pass Write(QPW)라고 하는 기입 원리를 채용했을 때의 알고리즘으로 되어 있다. Quick Pass Write란, Pass Write(2회 기록)의 개량예이고, Pass Write에서의 1st Pass와 2nd Pass를 병렬 처리하여, 기입 시간의 단축을 도모한 점에 특징을 갖는다.
우선, 커맨드 인터페이스 회로가 호스트 마이크로 컴퓨터로부터 제공되는 데이터 입력 커맨드를 수취하고, 이것을 받아, 데이터 입력 커맨드가 스테이트 머신(제어 회로)내에 설정된다(단계 S1).
또한, 어드레스 신호가 호스트 마이크로 컴퓨터로부터 메모리칩 내로 공급되면, 이것을 받아 프로그램의 대상이 되는 페이지를 선택하기 위한 어드레스가 스테이트 머신 내로 설정된다(단계 S2).
그리고, 1 페이지분의 프로그램 데이터가 데이터 입출력 버퍼를 경유하여, 메모리 칩 내에 입력되면, 이들 1페이지분의 프로그램 데이터는 데이터 기억부 DS4에 기억된다(단계 S3).
이 후, 커맨드 인터페이스 회로가 호스트 마이크로 컴퓨터로부터 제공되는 라이트 커맨드를 확인하면, 이것을 받아, 라이트 커맨드가 스테이트 머신 내로 설정된다(단계 S4). 그 결과, 스테이트 머신에 의한 제어 하에서, 단계 S5로부터 단계 S17까지의 동작이 자동적으로 실행된다.
우선, 데이터 기억부 DS4에 기억되어 있는 프로그램 데이터는 데이터 기억부 DS2, DS3에 각각 복사된다(단계 S5).
이 후, 만약 프로그램의 대상이 되는 페이지가 논리 상위 페이지이면, 라이트 동작에 앞서, Internal Data Load가 실행된다(단계 S6). Internal Data Load에 의해 판독된 논리 하위 페이지 데이터는 데이터 기억부 DS1을 경유하여, 데이터 기억부 DS4로 기억된다.
논리 하위 페이지 데이터가 "1"인 경우에는 Internal Data Load에 의한 리드 데이터는 "0"(="L")이 되고, "0"-데이터가 데이터 기억부 DS4(노드 N4)에 기억된다. 논리 하위 페이지 데이터가 "0"인 경우에는 Internal Data Load에 의한 리드 데이터는 "1"(="H")이 되고, "1" 데이터가 데이터 기억부 DS4(노드 N4)에 기억된다.
이 후, 논리 하위 페이지에 대한 프로그램이면, 라이트 전압 Vpgm을 12V로 설정하고, 논리 상위 페이지에 대한 프로그램이면, 라이트 전압 Vpgm을 13V로 설정한다. 또한, 스테이트 머신 내의 프로그램 카운터의 값 PC를 0으로 설정한다(단계 S7). 또, 프로그램 카운터의 값 PC는 라이트 동작의 횟수를 나타내고 있다.
이어서, 라이트 동작을 실행한다(단계 S8).
데이터 기억부 DS3에 기억된 프로그램 데이터가 "0"인 경우에는, 예를 들면 기판과 부유 게이트 전극과의 사이에 고전압을 제공하여, 부유 게이트 전극에 전자를 주입하고, 메모리 셀의 임계값 전압을 높인다("0"-programming). 데이터 기억부 DS3에 기억된 프로그램 데이터가 "1"인 경우에는, 예를 들면 기판과 부유 게이트 전극과의 사이에 고전압이 부여되지 않도록 하여, 부유 게이트 전극에 대한 전자의 주입을 방지하고, 메모리 셀의 임계값 전압을 변화시키지 않는다("1"-programming).
이 라이트 동작을 행한 후에, 프로그램 카운터의 값 PC에 "1"을 더한다(단계 S8).
이 후, 데이터 기억부 DS3에 기억된 데이터에 기초하여, 프로그램 검증이 Pass인 상태(프로그램이 완료되어 있는 상태)로 되어 있거나, 또는 NG 상태(프로그램이 완료되지 않은 상태)로 되어 있는지 판정한다(단계 S9).
최초의 라이트 동작 직후에는 "Verify01", "Verify00" 및 "Verify10"은 한번도 행해지지 않기 때문에, 데이터 기억부 DS3은 프로그램 데이터 그 자체를 기억하고 있다.
모든 컬럼 내의 데이터 기억부 DS3(예를 들면, 4256개)이 "1"-데이터를 기억하고 있는 경우, 즉 논리 하위 페이지 또는 논리 상위 페이지에 대한 프로그램 데이터가 모두 "1"인 경우에는 모든 컬럼에서 도 10의 N 채널 MOS 트랜지스터 Qn17은 오프 상태이고, 예를 들면 도 8의 FLAG는 "H"를 유지한다.
따라서, 프로그램 검증이 Pass인 상태(프로그램이 완료되어 있는 상태)로 되어 있다고 판단되며, 그 결과 스테이터스 레지스터에 Pass가 설정되어, 프로그램 동작이 종료한다(단계 S16).
이것에 대하여, 적어도 1개의 컬럼 내의 데이터 기억부 DS3이 "0"-데이터를 기억하고 있는 경우, 즉 논리 하위 페이지 또는 논리 상위 페이지에 대한 프로그램 데이터 중 적어도 1개가 "0"인 경우에는 "0"-데이터를 기억하는 데이터 기억부 DS3에 접속되는 N 채널 MOS 트랜지스터 Qn17(도 10)은 온 상태이고, 예를 들면 도 8의 FLAG는 "L"이 된다.
따라서, 프로그램 검증이 NG 상태(프로그램이 완료되지 않은 상태)로 되어 있다고 판단되며, 그 결과 "Verify10" 또는 "Verify01"로 이행한다.
논리 하위 페이지에 대한 프로그램이면, "Verify10"이 실행된다(단계 S11).
"Verify10"이란, 프로그램의 대상이 되는 선택된 메모리 셀에 대하여, 리드 전위 Vcgv10(도 17 참조)을 이용하여 리드 동작을 실행하고, 이 리드 동작에 의해 얻어지는 리드 데이터와 데이터 기억부 DS2의 데이터(프로그램 데이터)에 기초하여, 데이터 기억부 DS3에 새롭게 기억하는 데이터의 값을 결정하는 동작을 의미한다.
논리 하위 페이지에 대한 프로그램의 경우, 당초에는 프로그램의 대상이 되는 선택된 모든 메모리 셀은 "11" 상태로 되어 있다. 이 때문에, "1"-programming의 대상이 되는 메모리 셀("1"-데이터를 기억하는 데이터 기억부 DS3에 대응하는 메모리 셀)에 관해서는, 임계값 전압의 변동은 없기 때문에, "Verify10"에 의해 판독되는 리드 데이터는 항상 "0"이다.
따라서, 데이터 기억부 DS1에는 "0"이 기억된다. 그러나, 데이터 기억부 DS2에 "1"이 기억되어 있는 경우에는 데이터 기억부 DS1의 데이터는 리드 데이터와 무관하게, 강제로 "1"로 변경된다. 즉, 이 "1"-데이터가 데이터 기억부 DS1로부터 다시 데이터 기억부 DS3으로 기억된다.
한편, "0"-programming의 대상이 되는 메모리 셀("0"-데이터를 기억하는 데이터 기억부 DS3에 대응하는 메모리 셀)에 관해서는, 라이트 동작(단계 S8)에 의해 충분히 임계값 전압이 상승(프로그램이 완료)하고 있는 경우에는, "Verify10"에 의해 판독되는 리드 데이터는 "1"로 된다.
따라서, 데이터 기억부 DS1에는 "1"이 기억된다. 이 "1"-데이터는 데이터 기억부 DS1로부터 데이터 기억부 DS3으로 전송된다. 즉, 데이터 기억부 DS3의 데이터는 "0"에서 "1"로 변경된다.
또한, "0"-programming의 대상이 되는 메모리 셀("0"-데이터를 기억하는 데이터 기억부 DS3에 대응하는 메모리 셀)에 관한 것으로, 라이트 동작(단계 S8)에 의해 충분히 임계값 전압이 상승하지 않은(프로그램이 완료되지 않은) 경우에는 "Verify10"에 의해 판독되는 리드 데이터는 "0"으로 된다.
따라서, 데이터 기억부 DS1에는 "0"이 기억된다. 이 "0"-데이터는 데이터 기억부 DS1로부터 데이터 기억부 DS3으로 전송된다. 즉, 데이터 기억부 DS3의 데이터는 "0"을 유지한다.
논리 상위 페이지에 대한 프로그램이면, "Verify01" 및 "Verify00"이 연속하여 실행된다(단계 S12, S13).
"Verify01"이란, 프로그램의 대상이 되는 선택된 메모리 셀에 대하여, 리드 전위 Vcgv01(도 17 참조)을 이용하여 리드 동작을 실행하고, 이 리드 동작에 의해 얻어지는 리드 데이터와 데이터 기억부 DS2의 데이터(프로그램 데이터)에 기초하여, 데이터 기억부 DS3에 새롭게 기억하는 데이터의 값을 결정하는 동작을 의미한다.
"Verify00"이란, 프로그램의 대상이 되는 선택된 메모리 셀에 대하여, 리드 전위 Vcgv00(도 17 참조)을 이용하여 리드 동작을 실행하고, 이 리드 동작에 의해 얻어지는 리드 데이터와 데이터 기억부 DS2의 데이터(프로그램 데이터)와 데이터 기억부 DS4의 데이터(논리 하위 페이지 데이터)에 기초하여, 데이터 기억부 DS3에 새롭게 기억하는 데이터의 값을 결정하는 동작을 의미한다.
논리 상위 페이지 데이터 "1"의 프로그래밍("1"-programming)의 대상이 되는 메모리 셀("1"-데이터를 기억하는 데이터 기억부 DS3에 대응하는 메모리 셀)에 관해서는, "11" 상태 또는 "10" 상태를 유지하기 때문에, "Verify01"에 의해 판독되는 리드 데이터도 항상 "0"이다.
따라서, 데이터 기억부 DS1에는 "0"이 기억된다. 또한, 데이터 기억부 DS2에 "1"이 기억되어 있기 때문에, 데이터 기억부 DS1의 데이터는 리드 데이터와 무관하게, 강제로 "1"로 변경된다. 이 때문에, "1"-데이터가 데이터 기억부 DS1로부터 데이터 기억부 DS3으로 전송된다.
또한, "Verify00"에 의해 판독되는 리드 데이터도 항상 "0"이다.
따라서, 데이터 기억부 DS1에는 "0"이 기억된다. 그러나, 데이터 기억부 DS2에 "1"이 기억되어 있기 때문에, 데이터 기억부 DS1의 데이터는 리드 데이터 및 데이터 기억부 DS4의 논리 하위 페이지 데이터와 무관하게, 강제로 "1"로 변경된다. 이 때문에, "1"-데이터가 데이터 기억부 DS1로부터 데이터 기억부 DS3으로 전송된다.
한편, 논리 상위 페이지 데이터 "0"의 프로그래밍("0"-programming)의 대상이 되는 메모리 셀("0"-데이터를 기억하는 데이터 기억부 DS3에 대응하는 메모리 셀)에 대해서는, "11" 상태 또는 "10" 상태로부터 "00" 상태로 된 후, 또는 "01" 상태 쪽으로 변화한다.
따라서, 최초에는 "Verify01"에 의해 판독되는 리드 데이터는 "0"으로 된다. 이 때문에, 데이터 기억부 DS1에는 "0"이 기억된다. 이 "0"-데이터는 데이터 기억부 DS1로부터 데이터 기억부 DS3으로 전송된다. 즉, 데이터 기억부 DS3의 데이터는 "0"을 유지한다.
이 후, "Verify01"에 이어서 "Verify00"이 실행된다.
충분히 임계값 전압이 상승("00"-programming이 완료)하고 있는 메모리 셀에 대해서는 "Verify00"에 의해 판독되는 리드 데이터는 "1"로 된다.
따라서, 데이터 기억부 DS1에는 "1"이 기억된다.
그러나, 여기서 데이터 기억부 DS1의 데이터는 데이터 기억부 DS4에 기억된 논리 하위 페이지 데이터에 영향을 받는다.
즉, 논리 하위 페이지 데이터가 "1"인 경우에는, 데이터 기억부 DS4(노드 N4)는 "0"(="L")을 기억하고 있다. 따라서, 데이터 기억부 DS1의 데이터는 강제로 "0"으로 변경된다. 이것은, 논리 하위 페이지 데이터가 "1"일 때에, 논리 상위 페이지 데이터로서 "0"을 프로그램할 때는 메모리 셀의 임계값 전압을 "01" 상태(도 19 참조)까지 상승시키는 것을 의미한다.
이 "0"-데이터는, 데이터 기억부 DS1로부터 데이터 기억부 DS3으로 전송된다. 즉, 데이터 기억부 DS3의 데이터는 "0"인 상태이다.
논리 하위 페이지 데이터가 "0"인 경우에는, 데이터 기억부 DS4(노드 N4)는 "1"(="H")을 기억하고 있다. 따라서, 데이터 기억부 DS1의 데이터는 "1"인 상태이다. 이것은 논리 하위 페이지 데이터가 "0"일 때에, 논리 상위 페이지 데이터로서 "0"을 프로그램할 때에는 메모리 셀의 임계값 전압을 "00" 상태(도 19 참조)에서 멈추는 것을 의미한다.
이 "1"-데이터는 데이터 기억부 DS1로부터 데이터 기억부 DS3으로 전송된다. 즉, 데이터 기억부 DS3의 데이터는 "0"에서 "1"로 변경된다.
이 후, 만약 프로그램 카운터의 값 PC가 미리 설정된 최대 라이트 횟수 PC max에 도달하였다면, 스테이트 머신 내의 스테이터스 레지스터에 Fail(프로그램 불량)을 설정하여, 프로그램 동작을 종료한다(단계 S14, S17).
또한, 만약 프로그램 카운터의 값 PC가 미리 설정된 최대 라이트 횟수 PC max보다도 작으면, 라이트 전압 Vpgm을, 예를 들면 0.2V 정도 상승(단계 상승)시킨 후, 라이트 동작을 실행한다(단계 S14, S15, S8).
이 후, 데이터 기억부 DS3에 기억된 데이터에 기초하여, 프로그램 검증을 실행하여, 프로그램 검증이 Pass(프로그램이 완료되어 있는 상태)인지, 또는 NG(프로그램이 완료되지 않은 상태)인지 판정한다(단계 S9).
논리 상위 페이지에 대한 프로그램 데이터가 "1"("1"-programming)인 경우에는, 데이터 기억부 DS3의 데이터는 항상 "1"로 되어 있다.
또한, 논리 상위 페이지에 대한 프로그램 데이터가 "0"이며, 논리 하위 페이지 데이터가 "0"인 경우("00"-programming)에는, "00"-programming이 완료되어 있는 경우에는 데이터 기억부 DS3의 데이터는 "Verify00"에 의해 "0"에서 "1"로 변경된다.
또한, 논리 상위 페이지에 대한 프로그램 데이터가 "0"이며, 논리 하위 페이지 데이터가 "1"인 경우("01"-programming)인 경우에는 "O1"-programming이 완료되어 있는 경우에는 데이터 기억부 DS3의 데이터는 "Verify01"에 의해 "0"에서 "1"로 변경된다.
따라서, 프로그램의 대상이 되는 선택된 모든 메모리 셀에 대하여, 프로그래밍("00"-programming 또는 "01"-programming)이 완료되어 있는 경우에는 모든 데이터 기억부 DS3이 "1"-데이터를 기억하고 있게 된다. 즉, 모든 컬럼에서, 도 10의 N 채널 MOS 트랜지스터 Qn17은 오프 상태이고, 도 8의 FLAG가 "H"(프로그램 검증이 Pass인 상태)로 된다. 그리고, 스테이트 머신 내의 스테이터스 레지스터에, Pass(프로그램 완료)를 설정하여, 프로그램 동작을 종료시킨다(단계 S16).
또한, 프로그램의 대상이 되는 선택된 메모리 셀 중 적어도 하나에 대하여, 프로그래밍("00"-programming, "01"-programming)이 완료되지 않은 경우에는, 적어도 하나의 데이터 기억부 DS3이 "0"-데이터를 기억하고 있게 된다. 즉, 적어도 하나의 컬럼에서, 도 10의 N채널 NlOS 트랜지스터 Qn17은 온 상태로 되고, 도 8의 FLAG가 "L"(프로그램 검증이 NG의 상태)로 되어, 다시 검증 판독와 라이트 동작이 반복된다(단계 S8∼S17).
이와 같이, 데이터 기억부 DS3에 기억된 데이터에 기초하여, 프로그램이 완료되었는지의 여부를 판단할 수 있다.
② 동작 파형에 의한 동작 설명
이하, 동작 타이밍도를 이용하여, 구체적인 동작 설명을 행한다.
프로그램 동작(Pass Write)의 주요부는 데이터 기억부 DS4로부터 데이터 기억부 DS2, DS3으로의 프로그램 데이터의 복사 동작, Internal Data Load 동작, 데이터 기억부 DS2로부터 데이터 기억부 DS3으로의 프로그램 데이터의 복사 동작, 라이트 동작(Write), 및 검증 동작(Verify 10/00/01)으로 이루어진다.
또한, 프로그램 동작(Quick Pass Write)의 주요부는 데이터 기억부 DS4로부터 데이터 기억부 DS2, DS3에 대한 프로그램 데이터의 복사 동작, Internal Data Load 동작, 라이트 동작(Write), 및 검증 동작(Verify 10/00/01)으로 이루어진다.
따라서, 이들의 동작에 대하여 설명한다.
또, 이하에 설명하는 동작 타이밍도에서, 특별히 도시되어 있지 않는 한, "L" 레벨은 Vss(예를 들면, 0V), "H" 레벨은 Vdd(예를 들면, 3V)이다. 또한, 이 동작 타이밍도에서는 하나의 블록 BLOCKi가 선택되어, 그 블록 BLOCKi 내의 워드선 WL2-i와 홀수번째의 비트선 BLek이 선택되는 것으로 한다(도 3 참조).
[1] DS4로부터 DS2, DS3으로의 복사 동작
도 31은 데이터 기억부 DS4로부터 데이터 기억부 DS2, DS3으로의 프로그램 데이터의 복사 동작의 동작 파형도를 도시하고 있다. 도 32는 데이터 기억부 DS4로부터 데이터 기억부 DS2, DS3으로의 프로그램 데이터의 복사 동작에서의 데이터의 흐름을 도시하고 있다.
이 복사 동작은 도 28 및 도 30의 단계 S5에 상당한다.
우선, 타이밍 CPCLK 1에서, 제어 신호 VPRE가 "H"가 되고, 타이밍 CPCLK 2에서 제어 신호 BLPRE가 4.5V가 된다. 그 결과, N채널 MOS 트랜지스터 Qn6(도 10)이 온 상태로 되고, 데이터 기억부 DS1(노드 N2)은 "H" 레벨(Vdd)로 충전된다.
이 후, 타이밍 CPCLK 6에서 제어 신호 BLC2가 "H"가 되면, N채널 MOS 트랜지스터 Qn12는 온 상태로 되고, 데이터 기억부 DS1과 데이터 기억부 DS4가 전기적으로 접속된다.
그리고, 만약 데이터 기억부 DS4(노드 N4)가 프로그램 데이터로서 "1"(="H")을 기억하고 있으면, 데이터 기억부 DS1, 즉 캐패시터 C1의 일단(노드 N2)은 "H" 레벨(Vdd)을 유지한다. 또한, 만약 데이터 기억부 DS4(노드 N4)가 프로그램 데이터로서 "0"(="L")을 기억하고 있으면, 데이터 기억부 DS1, 즉 캐패시터 C1의 일단(노드 N2)의 전하는 방전되고, 데이터 기억부 DS1의 데이터는 "H"로부터 "L"로 변화한다.
한편, 타이밍 CPCLK 8에서 제어 신호 SEN1, LAT1이 "L"로 되고, 또한 타이밍 CPCLK 9에서, 제어 신호 EQ1이 "H"로 되는 것에 의해, 데이터 기억부 DS3의 상태는 리세트된다.
타이밍 CPCLK 11에서 제어 신호 BLC1이 "H"가 되면, N채널 MOS 트랜지스터 Qn10이 온 상태로 되고, 데이터 기억부 DS1과 데이터 기억부 DS3이 전기적으로 접속된다. 또한, 타이밍 CPCLK 12에서, 제어 신호 SEN1이 "H"로 되면, 데이터 기억부 DS1, 즉 캐패시터 C1의 일단(노드 N2)의 데이터는 클럭 동기식 인버터 CI1에 의해 감지된다.
이 후, 타이밍 CPCLK 13에서 제어 신호 LAT1이 "H"가 되면, 데이터 기억부 DS1의 데이터는 데이터 기억부 DS3에 기억된다. 마지막으로, 타이밍 CPCLK 14에서 제어 신호 DTG가 4.5V가 되면, N 채널 MOS 트랜지스터 Qn9가 온 상태로 되고, 데이터 기억부 DS3의 데이터는 데이터 기억부 DS2로 전송된다. 또한, 타이밍 CPCLK 15에서 제어 신호 DTG가 "L"로 되면, 데이터 기억부 DS3의 데이터는 데이터 기억부 DS2에 기억된다.
예를 들면, 데이터 기억부 DS1, DS4의 데이터가 "1"(노드 N2, N4가 "H")이면, 데이터 기억부 DS2, DS3의 데이터도 "1"(노드 N3, N6이 "H")이 된다. 또한, 데이터 기억부 DS1, DS4의 데이터가 "0"(노드 N2, N4가 "L")이면, 데이터 기억부 DS2, DS3의 데이터도 "0"(노드 N3, N6이 "L")이 된다.
또, DS4로부터 DS2, DS3으로의 복사 동작은 모든 컬럼(예를 들면, 4256개)의 데이터 회로에서 동시에 행해진다.
[2] Internal Data Load 동작
도 33 및 도 34는 Internal Data Load 동작의 동작 파형도를 도시하고 있다. 도 35는 Internal Data Load 동작에서의 데이터의 흐름을 도시하고 있다.
Internal Data Load 동작은 도 28 및 도 30의 단계 S6에 상당한다.
Internal Data Load 동작이란, 논리 하위 페이지 데이터의 프로그램을 행한 후, 논리 상위 페이지 데이터의 프로그램을 행하는 경우에, 논리 상위 페이지 데이터의 프로그램에서 목표로 하는 임계값 전압을 결정하기 위해, 미리 논리 하위 페이지 데이터를 판독해 두는 동작을 의미한다.
구체적으로 설명하면, 리드 전위(선택된 워드선 WL2-i의 전위)를 Vcgr10(예를 들면, 0V)으로 설정하고, 메모리 셀의 데이터가 "11"(논리 하위 페이지 데이터가 "1")인지, 또는 "10"(논리 하위 페이지 데이터가 "0")인지 인식한다.
Internal Data Load 동작은 데이터 리드에 관한 부분(RCLK 1-E, SCLK 1-E, RRCV 1-E)과, 데이터 트랜스퍼에 관한 부분(EXCLK 루틴)으로 구성된다.
[2]-1 데이터 리드
우선, 비트선측의 셀렉트 게이트선 SGD 및 비선택의 워드선 WL0-i, WL1-i, WL3-i에 각각 전송 전위 Vread(예를 들면, 4.5V)가 부여되고, 선택된 워드선 WL2-i에 리드 전위 Vcgr10(예를 들면, OV)이 부여된다(RCLK 1-2).
제어 신호 BLPRE가 "H"로 되고, N채널 MOS 트랜지스터 Qn6(도 10)이 온 상태로 된다. 또, 제어 신호 BLCLAMP가 Vclamp(예를 들면, 2V)로 되고, 제어 신호 BLSe가 Vsghh(예를 들면, 4.5V)로 됨으로써, 홀수번째의 비트선 BLek이 소정 전위(예를 들면, 1V 정도)로 프리차지된다. 한편, 제어 신호 BIASo가 Vsghh(예를 들면, 4.5V)로 되기 때문에, 짝수번째의 비트선 BLok는 Vss(예를 들면, 0V)로 고정되어, 실드 비트선으로서 기능하게 된다(RCLK 2-4).
이 후, 제어 신호 BLCLAMP가 Vss(예를 들면, 0V), 제어 신호 BLPRE가 "L"로 되고, 홀수번째의 비트선 BLek는 부유 상태로 된다(RCLK 5-7).
소스선측의 셀렉트 게이트선 SGS의 전위가 전송 전위 Vread로 설정되면, 선택된 메모리 셀의 상태, 즉 그 메모리 셀에 기억된 데이터의 값에 대응하여, 비트선 BLek의 전위에 영향이 나타난다.
즉, 선택된 메모리 셀의 데이터가 "11"인 경우에는 리드 전위 Vcgr10에 의해, 이 선택된 메모리 셀은 온 상태로 된다. 이 때문에, 비트선 BLek의 전하가 방전되고, 비트선 BLek의 전위는 0.8V 이하로 저하된다(선택 블록 내의 비선택의 메모리 셀은 Vread에 의해 온 상태임).
한편, 선택된 메모리 셀의 데이터가 "10"인 경우에는, 리드 전위 Vcgr10에 의해서는 이 선택된 메모리 셀은 온 상태로 되지 않는다. 이 때문에, 비트선 BLek의 전하가 방전되지 않으며, 비트선 BLek는 프리차지 전위(약 1V)를 유지한다(RCLK 6-E).
제어 신호 BLPRE가 4.5V 정도가 되고, 제어 신호 VPRE가 Vdd(예를 들면, 3V)가 되는 것에 의해, 데이터 기억부 DS1의 캐패시터 C1의 일단, 즉 노드 N2는 Vdd에 충전된다. 이 후, 제어 신호 BLCLAMP가 Vsensc(예를 들면, 1.8V)이 되면, 데이터 기억부 DS1의 캐패시터 C1의 일단의 전위는 이하와 같이 변화한다.
즉, 비트선 BLek의 전위가 프리차지 전위(약 1V)의 상태인 경우(메모리 셀의 데이터가 "10"인 경우)에는 N채널 MOS 트랜지스터(클램프 트랜지스터) Qn5(도 10)는 오프 상태이고, 데이터 기억부 DS1의 캐패시터 C1의 일단의 전위는 Vdd("H")로 유지된다.
한편, 비트선 BLek의 전위가 0.8V 이하인 경우(메모리 셀의 데이터가 "11"인 경우)에는 N채널 MOS 트랜지스터(클램프 트랜지스터) Qn5(도 10)는 온 상태이고, 데이터 기억부 DS1의 캐패시터 C1의 일단의 전하는 비트선 BLek에 방전되고, 그 전위는 Vdd보다도 낮은 값("L")으로 저하한다(SCLK 4-5).
그 결과, 데이터 기억부 DS1(캐패시터 C1의 일단)에는 리드 전위 Vcgr10에 의한 리드 데이터가 기억된다. 즉, 메모리 셀의 데이터가 "11"인 경우에는 "L", 즉 "1"-데이터가 기억되고, 메모리 셀의 데이터가 "10"인 경우에는 "H", 즉 "0"-데이터가 기억된다.
또, Internal Data Load 동작에서는 "L"="0" 및 "H"="1"의 관계가 역전하고 있다. 즉, "L"="1" 및 "H"="0"의 관계로 되어 있다.
[2]-2 데이터 트랜스퍼
Internal Data Load 동작에서는, 메모리 셀의 데이터를 데이터 기억부 DS1에 판독한 후, 이 데이터 기억부 DS1에 기억된 리드 데이터를 데이터 기억부 DS4로 전송하는 데이터 트랜스퍼가 실행된다. 이 동작은, 도 34에 도시하는 EXCLK 루틴에 따른다.
우선, 제어 신호 SEN2, LAT2가 모두 "L"이 되고(EXCLK 6), 또한 제어 신호 EQ2가 "H"가 됨으로써(EXCLK 7-8), 데이터 기억부 DS4를 구성하는 플립플롭 회로(도 10)의 상태가 리세트된다.
이 후, 제어 신호 BLC2가 4.5V로 되고(EXCLK 9), N채널 MOS 트랜지스터 Qn12가 온 상태로 된다. 그 결과, 데이터 기억부 DS1과 데이터 기억부 DS4는 상호 전기적으로 접속된다.
제어 신호 SEN2가 "H"가 되면(EXCLK 10), 데이터 기억부 DS1(캐패시터 C1의 일단)에 기억된 리드 데이터는 MOS 트랜지스터 Qn12를 경유하여, 데이터 기억부 DS4를 구성하는 클럭 동기식 인버터 CI4에 의해 감지된다. 또한, 제어 신호 LAT2가 "H"가 되면 (EXCLK 11), 이 리드 데이터는 데이터 기억부 DS4에 기억된다.
또, Internal Data Load 동작은 모든 컬럼(예를 들면, 4256개)의 데이터 회로에서 동시에 행해진다.
[3] DS2로부터 DS3으로의 복사(카피 백) 동작
도 36은 데이터 기억부 DS2로부터 데이터 기억부 DS3으로의 프로그램 데이터의 복사 동작의 동작 파형도를 도시하고 있다. 도 37은 데이터 기억부 DS2로부터 데이터 기억부 DS3으로의 프로그램 데이터의 복사 동작에서의 데이터의 흐름을 도시하고 있다.
이 복사 동작은 도 29의 단계 S17에 상당한다.
우선, 타이밍 CPCLK 3에서 제어 신호 BLPRE가 "H"가 되면, N채널 MOS 트랜지스터 Qn6(도 10)이 온 상태로 된다. 이 때, 제어 신호 VPRE는 Vss(0V)인 상태이기 때문에, 데이터 기억부 DS1(노드 N2)은 "L" 레벨(Vss)로 충전된다.
이 후, 타이밍 CPCLK 5에서 제어 신호 VREG가 "H"로 된다. 또한, 제어 신호 REG가 4.5V가 되면, N채널 MOS 트랜지스터 Qn7은 온 상태로 되고, 데이터 기억부 DS1과 데이터 기억부 DS2가 전기적으로 접속된다.
그리고, 만약 데이터 기억부 DS2(노드 N6)가 프로그램 데이터로서 "1"(="H")을 기억하고 있으면, N채널 MOS 트랜지스터 Qn8의 게이트 전위는 부팅 스트랩 현상에 의해 Vdd 정도에서 5V 정도까지 상승한다. 그 결과, VREG(=Vdd)는 N채널 MOS 트랜지스터 Qn7, Qn8을 경유하여, 데이터 기억부 DS1로 전송된다. 즉, 데이터 기억부 DS1, 즉 캐패시터 C1의 일단(노드 N2)의 레벨은 "L"에서 "H"로 변화한다.
또한, 만약 데이터 기억부 DS2(노드 N6)가 프로그램 데이터로서 "0"(="L")을 기억하고 있으면, N채널 MOS 트랜지스터 Qn8의 게이트 전위는 Vss(=0V)로 되어 있다. 그 결과, VREG(=Vdd)는 데이터 기억부 DS1로 전송되지 않고, 데이터 기억부 DS1, 즉 캐패시터 C1의 일단(노드 N2)은 "L" 레벨을 유지한다.
타이밍 CPCLK 8에서, 제어 신호 SEN1, LAT1이 "L"이 되고, 또한 타이밍 CPCLK 9에서 제어 신호 EQ1이 "H"로 되는 것에 의해, 데이터 기억부 DS3의 상태는 리세트된다.
타이밍 CPCLK 11에서, 제어 신호 BLC1이 "H"가 되면, N채널 MOS 트랜지스터 Qn10이 온 상태로 되고, 데이터 기억부 DS1과 데이터 기억부 DS3이 전기적으로 접속된다. 또한, 타이밍 CPCLK 12에서, 제어 신호 SEN1이 "H"가 되면, 데이터 기억부 DS1, 즉 캐패시터 C1의 일단(노드 N2)의 데이터는 클럭 동기식 인버터 CI1에 의해 감지된다.
이 후, 타이밍 CPCLK 13에서, 제어 신호 LAT1이 "H"가 되면, 데이터 기억부 DS1의 데이터는 데이터 기억부 DS3에 기억된다.
이상의 동작에 의해, 데이터 기억부 DS2로부터 데이터 기억부 DS3으로의 프로그램 데이터의 복사 동작, 소위 카피 백이 종료된다.
또, DS2로부터 DS3으로의 복사 동작은 모든 컬럼(예를 들면, 4256개)의 데이터 회로에서 동시에 행해진다.
[4] 라이트 동작(Write)
도 38은 라이트 동작의 동작 파형도를 도시하고 있다. 도 39는 라이트 동작에서의 데이터의 흐름을 도시하고 있다.
또, 도시되어 있지 않는 한, "L" 레벨은 0V, "H" 레벨은 Vdd(예를 들면, 3V)이다. 또한, 선택된 블록 내에서 선택된 워드선은 WL2이고, 선택된 비트선은 BLe 이다.
라이트 동작은 도 28 및 도 30의 단계 S8, 및 도 29의 단계 S25에 상당한다.
우선, 타이밍 PCLK 1에서 제어 신호 BLCLAMP, BLC1이 4.5V가 된다. 또한, 타이밍 PCLK 3에서 BLSe가 4.5V가 되면 비트선 BLek와 데이터 기억부 DS3이 전기적으로 접속된다.
데이터 기억부 DS3(노드 N3)의 데이터가 "1"인 경우, 비트선 BLek는 Vdd로 충전된다. 또한, 데이터 기억부 DS3(노드 N3)의 데이터가 "0"인 경우, 비트선 BLek는 Vss(0V)로 충전된다.
또한, 타이밍 PCLK 3에서, 제어 신호 BLCRL이 "H"가 되고, 제어 신호 BIASo가 4.5V가 된다. 그 결과, 비트선 BLeo는 Vdd로 충전된다.
이 후, 타이밍 PCLK 6에서, 비선택의 워드선 WL0-i, WL1-i, WL3-i에 10V가 부여되고, 타이밍 PCLK 7에서 선택된 워드선 WL2-i에 Vpgm(처음에는 12V 또는 13V. 라이트 횟수에 대응하여, 0.2V씩 상승함)이 부여된다. 그 결과, 메모리 셀에 대한 프로그래밍이 실행된다.
예를 들면, 데이터 기억부 DS3에 기억되어 있는 데이터가 "1"인 경우, 비트선 BLek는 Vdd이고, 워드선(컨트롤 게이트 전극) WL2-i와 메모리 셀의 채널과의 사이의 전위차는 메모리 셀의 부유 게이트 전극에 전자를 주입하는데 충분한 값으로 되지 않는다.
이것에 대하여, 데이터 기억부 DS3에 기억되어 있는 데이터가 "0"인 경우, 비트선 BLek는 0V이고, 워드선(컨트롤 게이트 전극) WL2-i와 메모리 셀의 채널과의 사이의 전위차는 메모리 셀의 부유 게이트 전극에 전자를 주입하는데 충분한 값이 된다.
따라서, 데이터 기억부 DS3에 기억되어 있는 데이터가 "1"인 경우에는 메모리 셀의 임계값 전압은 상승하지 않고, 데이터 기억부 DS3에 기억되어 있는 데이터가 "0"인 경우에는 메모리 셀의 임계값 전압은 상승한다.
QPW(Quick Pass Write) 시에는 타이밍 PCLK 4에서 제어 신호 VREG가 Vdd로 되고, 타이밍 PCLK 5에서 제어 신호 BLC1이 "L"이 되고, 타이밍 PCLK 6에서 제어 신호 REG가 2.0V로 설정된다.
따라서, 만약 데이터 기억부 DS2의 데이터(프로그램 데이터)가 "1"인 경우에는 N채널 MOS 트랜지스터 Qn8의 게이트는 부팅 스트랩 현상에 의해, Vdd 정도에서 5V 정도까지 상승한다. 이 때문에, VREG(=Vdd)는 제어 신호 REG(=2.0V)에 제한되면서, 비트선 BLek로 전송된다.
그 결과, 비트선 BLek의 전위는 데이터 기억부 DS3에 기억되어 있는 데이터와 무관하게, 예를 들면 1V 정도가 된다.
만약, 데이터 기억부 DS2의 데이터(프로그램 데이터)가 "0"인 경우에는 N채널 MOS 트랜지스터 Qn8의 게이트는 0V이기 때문에, 비트선 BLek의 전위는 Vdd(데이터 기억부 DS3의 데이터가 "1") 또는 0V(데이터 기억부 DS3의 데이터가 "0")를 유지한다.
또, 라이트 동작은 선택된 워드선 WL2-i에 접속되는 4256개의 메모리 셀에 대하여 동시에 행해진다.
[5] 검증 동작(Verify 10/00/01)
도 40 및 도 41은 검증 동작에서의 검증 판독의 동작 파형도를 도시하고 있다. 도 42 내지 도 45는 검증 판독에서의 데이터의 흐름을 도시하고 있다.
또, 도시되어 있지 않는 한, "L" 레벨은 0V, "H" 레벨은 Vdd(예를 들면, 3V)이다. 또한, 선택된 블록 내에서 선택된 워드선은 WL2이고, 선택된 비트선은 BLe 이다.
검증 동작은, 검증 판독와 Completion Detection으로 이루어진다. Completion Detection이란, 검증 판독에 의해 판독된 데이터에 기초하여, 선택된 모든 메모리 셀에 대하여 데이터 프로그램이 완료되었는지의 여부를 검출하는 동작을 의미한다. 여기서는 주로, 검증 판독에 대하여 설명한다.
검증 판독은 도 28의 단계 S11, S12, 도 29의 단계 S20, S21, S22, 및 도 30의 단계 S11, S12, S13에 상당한다.
검증 판독은 라이트 동작 후에 행해지며, 메모리 셀의 임계값 전압이 소정의 레벨에 도달했는지의 여부를 판단하기(Completion Detection) 위한 데이터를 메모리 셀로부터 판독하는 동작을 의미한다.
본 예에서는, Pass Write(2회 기록)를 채용하는 경우의 검증 판독에 대하여 설명한다. 상술한 바와 같이, 1번째의 프로그램은 1st Pass라고 하며, 2번째의 프로그램은 2nd Pass라고 한다. 1st Pass와 2nd Pass를 병렬 처리하는 프로그램 방법은 QPW(Quick Pass Write)라고 한다. QPW시에는, 예를 들면 스테이트 머신(제어 회로) 내의 QPW 레지스터가 "1"로 되고, 통상의 Pass Write인 경우에는 스테이트 머신 내의 QPW 레지스터가 "0"으로 된다.
우선, 타이밍 RCLK 1-2에서 비트선측의 셀렉트 게이트선 SGD 및 비선택의 워드선 WL0-i, WL1-i, WL3-i에 각각 전송 전위 Vread(예를 들면, 4.5V)가 부여되고, 선택된 워드선 WL2-i에 검증 판독 전위 Vcgvxx가 부여된다.
검증 판독 전위 Vcgvxx는, 검증 판독의 종류에 대응하여, 예를 들면 이하와 같이 변경된다.
[Pass Write 시]
VERIFY10 1stPass→Vcgvxx=0.25V, VERIFY10 2nd Pass→Vcgvxx=0.40V, VERIFY00 1stPass→Vcgvxx=1.25V, VERIFY00 2nd Pass→Vcgvxx=1.40V, VERIFY01→Vcgvxx=2.40V
[QPW 시]
VERIFY10→Vcgvxx=0.25V, VERIFY00→Vcgvxx=1.25V, VERIFY01→Vcgvxx=2.25V
타이밍 RCLK 2-4에서, 제어 신호 BLPRE가 "H"로 되고, N채널 MOS 트랜지스터 Qn6(도 10)이 온 상태로 된다. 또, 제어 신호 BLCLAMP가 Vclamp(예를 들면, 2V)로 되고, 제어 신호 BLSe가 Vsghh(예를 들면, 4.5V)로 됨으로써, 홀수번째의 비트선 BLek는 VPRE(=Vdd)에 전기적으로 접속된다.
그 결과, 비트선 BLek는 N채널 MOS 트랜지스터 Qn5의 임계값 전압으로 제한되는 소정의 전위, 예를 들면 1V 정도로 프리차지된다. 또한, 제어 신호 BIASo가 Vsghh(예를 들면, 4.5V)로 되기 때문에, 짝수번째의 비트선 BLok는 Vss(예를 들면, 0V)로 고정되어, 실드 비트선으로서 기능하게 된다.
원칙적으로, 비트선 BLek에 대한 프리차지원은, 상술한 바와 같이 VPRE이다. 그러나, Pass Write 동작에서의 2nd Pass 시의 "Verify00(2nd Pass)"과, QPW 동작에서의 "Verify00"에 관해서는 비트선에 대한 프리차지원은 데이터 기억부 DS4로 된다.
따라서, "Verify00(2nd Pass)" 및 "Verify00"에서는 타이밍 RCLK 2이며, 제어 신호 BLC2가 "H"로 되는 한편, 제어 신호 BLPRE는 타이밍 RCLK 2-6이며, "L"의 상태로 된다.
그 결과, 비트선 BLek는 데이터 기억부 DS4에 전기적으로 접속된다. 그리고, 데이터 기억부 DS4(노드 N3)의 데이터가 "1"인 경우에는 비트선 BLek는 N채널 MOS 트랜지스터 Qn5의 임계값 전압에서 제한되는 소정의 전위, 예를 들면 1V 정도로 프리차지된다. 또한, 데이터 기억부 DS4(노드 N3)의 데이터가 "0"인 경우에는 비트선 BLek는 0V로 프리차지된다.
이 후, 타이밍 RCLK 5-7에서 제어 신호 BLCLAMP가 Vss(예를 들면, 0V), 제어 신호 BLPRE가 "L"로 되고, 비트선 BLek는 부유 상태로 된다.
소스선측의 셀렉트 게이트선 SGS의 전위가 전송 전위 Vread로 설정되면, 선택된 메모리 셀의 상태, 즉 그 메모리 셀의 현재의 임계값 전압에 대응하여, 비트선 BLek의 전위에 영향이 나타난다.
즉, 선택된 메모리 셀의 임계값 전압이 선택된 워드선 WL2-i의 전위(검증 판독 전위)Vcgvxx보다도 낮은 경우에는, 이 검증 판독 전위 Vcgvxx에 의해 선택된 메모리 셀은 온 상태로 된다. 이 때문에, 비트선 BLek의 전하가 방전되고, 비트선 BLek의 전위는 0.8V 이하로 저하한다(선택 블록 내의 비선택의 메모리 셀은 Vread에 의해 온 상태임).
한편, 선택된 메모리 셀의 임계값 전압이 검증 판독 전위 Vcgvxx보다도 높은 경우에는 이 검증 판독 전위 Vcgvxx에 의해, 선택된 메모리 셀은 온 상태로 되지는 않는다. 이 때문에, 비트선 BLek의 전하가 방전되지는 않으며, 비트선 BLek는 프리차지 전위(약 1V)를 유지한다.
또, "Verify00(2nd Pass)" 및 "Verify00"에서는 비트선 BLek는 0V로 프리차지되어 있기 때문에, 선택된 메모리 셀의 상태와 무관하게, 비트선 BLek는 항상 0V이다.
타이밍 RCLK 8-E에서, 제어 신호 BLPRE가 "H"가 되면, 데이터 기억부 DS1의 캐패시터 C1의 일단, 즉 노드 N2는 VPRE(=0V)로 충전된다. 또한, QPW 동작이 아니면(QPW 레지스터의 값="0"), 이 후 도 41에 도시한 EXCLK 루틴이 실행된다(SCLK 1-2).
우선, 타이밍 EXCLK 2에서, 제어 신호 VREG가 "H"가 된다. 또한, 제어 신호 REG가 4.5V가 되면, N채널 MOS 트랜지스터 Qn7이 온 상태로 되기 때문에, 데이터 기억부 DS1의 캐패시터 C1의 일단(노드 N2)의 전위는 데이터 기억부 DS2에 기억된 데이터에 영향을 받는다.
예를 들면, 데이터 기억부 DS2에 기억된 데이터(프로그램 데이터)가 "1"인 경우에는 N채널 MOS 트랜지스터 Qn8의 게이트 전위는 부팅 스트랩 현상에 의해, Vdd 정도부터 5V정도까지 상승하고, VREG(=Vdd)가 데이터 기억부 DS1의 캐패시터 C1의 일단(노드 N2)으로 전송된다.
또한, 데이터 기억부 DS2에 기억된 데이터(프로그램 데이터)가 "0"인 경우에는 N채널 MOS 트랜지스터 Qn8의 게이트 전위는 0V이기 때문에, VREG(=Vdd)가 데이터 기억부 DS1의 캐패시터 C1의 일단(노드 N2)으로 전송되지는 않는다. 즉, 데이터 기억부 DS1의 캐패시터 C1의 일단의 전위는 변화하지 않는다.
또한, 타이밍 EXCLK 4-5에서 제어 신호 DTG가 4.5V가 되면, 데이터 기억부 DS3의 데이터가 데이터 기억부 DS2로 전송된다.
이 후, 제어 신호 SEN1, LAT1이 모두 "L"로 되고(EXCLK 6), 또한 제어 신호 EQ1이 "H"가 됨으로써(EXCLK 7-8), 데이터 기억부 DS3을 구성하는 플립플롭 회로(도 10)의 상태가 리세트된다.
이 후, 제어 신호 BLC1이 4.5V로 되고(EXCLK 9), N채널 MOS 트랜지스터 Qn10이 온 상태로 된다. 그 결과, 데이터 기억부 DS1과 데이터 기억부 DS3은 상호 전기적으로 접속된다.
제어 신호 SEN1이 "H"가 되면 (EXCLK 10), 데이터 기억부 DS1(캐패시터 C1의 일단)에 기억된 데이터는 MOS 트랜지스터 Qn10을 경유하여, 데이터 기억부 DS3을 구성하는 클럭 동기식 인버터 CI1에 의해 감지된다. 또한, 제어 신호 LAT1이 "H"가 되면(EXCLK 11), 이 데이터는 데이터 기억부 DS3에 기억된다.
타이밍 SCLK 2에서 제어 신호 BLPRE가 4.5V 정도가 되고, 제어 신호 VPRE가 Vdd(예를 들면, 3V)가 되는 것에 의해, 데이터 기억부 DS1의 캐패시터 C1의 일단, 즉 노드 N2는 Vdd에 충전된다. 이 후, 제어 신호 BLCLAMP가 Vsense(예를 들면, 1.8V)가 되면, 데이터 기억부 DS1의 캐패시터 C1의 일단의 전위는 이하와 같이 변화한다.
즉, 비트선 BLek의 전위가 프리차지 전위(약 1V) 상태인 경우(메모리 셀의 임계값 전압이 Vcgvxx보다도 높은 경우)에는, N채널 MOS 트랜지스터(클램프 트랜지스터) Qn5(도 10)는 오프 상태이고, 데이터 기억부 DS1의 캐패시터 C1의 일단의 전위는 Vdd("H")로 유지된다.
한편, 비트선 BLek의 전위가 0.8V 이하인 경우(메모리 셀의 임계값 전압이 Vcgvxx보다도 낮은 경우)에는 N채널 MOS 트랜지스터(클램프 트랜지스터) Qn5(도 10)는 온 상태로서, 데이터 기억부 DS1의 캐패시터 C1의 일단의 전하는 비트선 BLek에 방전되며, 그 전위는 Vdd보다도 낮은 값("L")으로 저하한다(SCLK 4-5).
그 결과, 데이터 기억부 DS1(캐패시터 C1의 일단)에는 검증 판독 전위 Vcgvxx에 의한 리드 데이터가 기억된다. 즉, 메모리 셀의 임계값 전압이 Vcgvxx보다도 낮은 경우에는 "L", 즉 "0"-데이터가 데이터 기억부 DS1에 기억되고, 메모리 셀의 임계값 전압이 Vcgvxx보다도 높은 경우에는 "H", 즉 "1"-데이터가 데이터 기억부 DS1에 기억된다.
이 후, 도 41에 도시하는 EXCLK 루틴이 실행된다(SCLK 5-E). 도 41의 EXCLK 루틴에 대해서는 이미 설명하였으므로, 여기서는 그 설명에 대하여 생략한다.
타이밍 QPWCLK 1-E에서의 동작에 대해서는, 만약 QPW 동작이 아니면(QPw 레지스터의 값="0"), 생략된다.
QPW 동작(QPW 레지스터의 값="1")이면, 스테이트 머신에 의해, QPWCLK 루틴이 실행된다(QPWCLK 1-E).
QPW시에는 타이밍 SCLK 6에서, 선택된 워드선 WL2-i의 전위(검증 판독 전위)Vcgvxx가 0.15V 정도 상승된다. 즉, Vcgvxx는 4.5V+0.15V로 된다.
타이밍 QPWCLK 2에서, 제어 신호 BLPRE가 4.5V 정도가 되고, 제어 신호 VPRE가 Vdd(예를 들면, 3V)가 되는 것에 의해, 데이터 기억부 DS1의 캐패시터 C1의 일단, 즉 노드 N2는 Vdd에 충전된다. 이 후, 타이밍 QPWCLK 4에서 제어 신호 BLCLAMP가 Vsense(예를 들면, 1.8V)가 되면, 데이터 기억부 DS1의 캐패시터 C1의 일단의 전위는 이하와 같이 변화한다.
즉, 비트선 BLek의 전위가 프리차지 전위(약 1V) 상태인 경우(메모리 셀의 임계값 전압이 Vcgvxx보다도 높은 경우)에는, N채널 MOS 트랜지스터(클램프 트랜지스터) Qn5(도 10)는 오프 상태이고, 데이터 기억부 DS1의 캐패시터 C1의 일단의 전위는 Vdd("H")로 유지된다.
한편, 비트선 BLek의 전위가 0.8V 이하인 경우(메모리 셀의 임계값 전압이 Vcgvxx보다도 낮은 경우)에는 N채널 MOS 트랜지스터(클램프 트랜지스터) Qn5(도 10)는 온 상태이고, 데이터 기억부 DS1의 캐패시터 C1의 일단의 전하는 비트선 BLek에 방전되어, 그 전위는 Vdd보다도 낮은 값("L")으로 저하한다(QPWCLK 4-5).
그 결과, 데이터 기억부 DS1(캐패시터 C1의 일단)에는 검증 판독 전위 Vcgvxx에 의한 리드 데이터가 기억된다. 즉, 메모리 셀의 임계값 전압이 Vcgvxx보다도 낮은 경우에는 "L", 즉 "0"-데이터가 데이터 기억부 DS1에 기억되고, 메모리 셀의 임계값 전압이 Vcgvxx보다도 높은 경우에는 "H", 즉 "1"-데이터가 데이터 기억부 DS1에 기억된다.
이 후, 도 41에 도시하는 EXCLK 루틴이 실행된다(QPWCLK 5-E). 도 41의 EXCLK 루틴에 대해서는 이미 설명했으므로, 여기서는 그 설명에 대해서는 생략한다.
또, 검증 동작은 선택된 워드선 WL2-i에 접속되는 4256개의 메모리 셀에 대하여 동시에 행해진다.
4. 기타
본 실시예에서는, 다치 NAND셀형 플래시 메모리를 예로 들어 설명했지만, 본 발명은 당연히 다른 타입의 다치 메모리에 적용이 가능하다. 예를 들면, 메모리 셀 어레이로서는 NOR형, AND형(A.Nozoe : ISSCC, Digest of Technichal Papers, 1995), DINOR형(S.Kobayashi : ISSCC, Digest of Technichal Papers, 1995), Virtual Ground Array형(Lee, et al. : Symposium on VLSI Circuits, Digest of Technichal Papers, 1994), 3-tr NAND형 4-tr NAND형이어도 된다.
또한, 본 발명은 플래시 메모리(Flash memory)에 한하지 않고, 예를 들면 마스크 ROM, EPROM 등의 불휘발성 반도체 메모리에도 적용할 수 있다.
이상, 설명한 바와 같이, 본 발명에 따르면, 메모리셀에 기억하는 데이터를 다치화해도 칩 면적이 극단적으로 증가하지 않고, 또한 메모리셀의 임계값 전압을 고정밀도로 제어할 수 있는 2회 기록법을 적용할 수 있는 다치 플래시 메모리의 데이터 회로를 제공할 수 있다.
도 1은 본 발명의 실시예에 따른 불휘발성 반도체 메모리를 도시하는 블록도.
도 2는 본 발명에 따른 반도체 메모리의 메모리 셀 어레이의 구성예를 도시하는 도면.
도 3은 본 발명에 따른 반도체 메모리의 메모리 셀 어레이의 구성예를 도시하는 도면.
도 4는 본 발명에 따른 반도체 메모리의 디바이스 구조의 예를 도시하는 단면도.
도 5는 본 발명에 따른 반도체 메모리의 디바이스 구조의 예를 도시하는 단면도.
도 6은 본 발명에 따른 반도체 메모리의 디바이스 구조의 예를 도시하는 단면도.
도 7은 본 발명에 따른 반도체 메모리의 디바이스 구조의 예를 도시하는 단면도.
도 8은 본 발명에 따른 반도체 메모리의 일괄 검지 회로의 예를 도시하는 회로도.
도 9는 본 발명에 따른 반도체 메모리의 데이터 회로의 구성예를 도시하는 도면.
도 10은 본 발명에 따른 반도체 메모리의 데이터 회로의 예를 도시하는 회로도.
도 11은 클럭 동기식 인버터의 구성예를 도시하는 도면.
도 12는 본 발명에 따른 반도체 메모리의 워드선 제어 회로의 구성예를 도시하는 도면.
도 13은 도 12의 RADD1의 회로예를 도시하는 도면.
도 14는 도 12의 RMAIN1의 회로예를 도시하는 도면.
도 15는 도 12의 RADD2의 회로예를 도시하는 도면.
도 16은 도 12의 RMAIN2의 회로예를 도시하는 도면.
도 17은 메모리 셀의 데이터와 임계값 전압 분포와의 관계를 도시하는 도면.
도 18은 논리 하위 페이지 데이터의 프로그램 시의 임계값 전압의 변화의 모습을 도시하는 도면.
도 19는 논리 상위 페이지 데이터의 프로그램 시의 임계값 전압의 변화의 모습을 도시하는 도면.
도 20은 리드 동작의 알고리즘을 도시하는 도면.
도 21은 리드 동작의 동작 파형을 도시하는 도면.
도 22는 도 21의 동작 중의 EXCLK 루틴의 동작 파형을 도시하는 도면.
도 23은 도 21의 동작 중의 EXCLK 루틴의 동작 파형을 도시하는 도면.
도 24는 도 21의 동작 중의 EXCLK 루틴의 동작 파형을 도시하는 도면.
도 25는 논리 하위 페이지 데이터의 판독 시의 데이터의 흐름을 설명하는 도면.
도 26은 논리 상위 페이지 데이터의 판독 시의 데이터의 흐름을 설명하는 도면.
도 27은 Pass Write에 의한 프로그램 동작의 알고리즘을 도시하는 도면.
도 28은 Pass Write에 의한 프로그램 동작의 알고리즘을 도시하는 도면.
도 29는 Pass Write에 의한 프로그램 동작의 알고리즘을 도시하는 도면.
도 30은 QPW에 의한 프로그램 동작의 알고리즘을 도시하는 도면.
도 31은 프로그램 동작의 한 단계에서의 동작 파형을 도시하는 도면.
도 32는 도 31에서의 단계 시의 데이터의 흐름을 설명하는 도면.
도 33은 Internal Data Load 동작의 동작 파형을 도시하는 도면.
도 34는 도 33의 동작 중의 EXCLK 루틴의 동작 파형을 도시하는 도면.
도 35는 Internal Data Load 동작 시의 데이터의 흐름을 설명하는 도면.
도 36은 프로그램 동작의 한 단계에서의 동작 파형을 도시하는 도면.
도 37은 도 36에서의 단계 시의 데이터의 흐름을 설명하는 도면.
도 38은 라이트 동작의 동작 파형을 도시하는 도면.
도 39는 라이트 동작 시의 데이터의 흐름을 설명하는 도면.
도 40은 검증 판독 동작의 동작 파형을 도시하는 도면.
도 41은 도 40의 동작 중의 EXCLK 루틴의 동작 파형을 도시하는 도면.
도 42는 검증 판독 동작 시의 데이터의 흐름을 설명하는 도면.
도 43은 검증 판독 동작 시의 데이터의 흐름을 설명하는 도면.
도 44는 검증 판독 동작 시의 데이터의 흐름을 설명하는 도면.
도 45는 검증 판독 동작 시의 데이터의 흐름을 설명하는 도면.
<도면의 주요 부분에 대한 부호의 설명>
1 : 메모리 셀 어레이
2 : 데이터 회로
3 : 워드선 제어 회로
4 : 컬럼 디코더
5 : 어드레스 버퍼
6 : I/O 감지 증폭기
7 : 데이터 입출력 버퍼
8 : 웰/소스선 전위 제어 회로
9A : 전위 생성 회로
9B : 전환 회로
10 : 일괄 검지 회로
11 : 메모리칩
11-1 : p형 실리콘 기판
11-2, 11-4 : n형 웰 영역
11-3, 11-5 : p형 웰 영역
12 : 커맨드 인터페이스 회로
13 : 스테이트 머신
14 : 드레인 확산층
15 : 소스 확산층
16 : n형 확산층
17 : p형 확산층
18 : 전위 설정선
19 : 소자 분리층
20, 21 : 절연층
DS1, DS2, DS3, DS4 : 데이터 기억부
Qn1, …Qn19 : n 채널 MOS 트랜지스터
QD1, QP2 : p 채널 MOS 트랜지스터
M1, M2, M3, M4 : 메모리 셀
S1, S2 : 셀렉트 게이트 트랜지스터
U : NAND 셀 유닛

Claims (30)

  1. 메모리 셀과,
    상기 메모리 셀의 일단에 접속되는 비트선과,
    상기 비트선에 접속되며, 상기 메모리 셀에 관한 프로그램 데이터 또는 리드 데이터를 일시적으로 기억하는 데이터 회로를 구비하고,
    상기 데이터 회로는 제1, 제2 및 제3 데이터 기억부와, 상기 제1 및 제3 데이터 기억부 사이에 접속되는 제1 데이터 전송 회로와, 상기 제2 및 제3 데이터 기억부 사이에 접속되는 제2 데이터 전송 회로를 갖고,
    상기 제1 데이터 기억부는, 상기 비트선에 접속되며, 상기 제2 데이터 기억부는 자신이 기억하는 데이터에 기초하여, 상기 제1 데이터 기억부의 데이터를 강제로 변경하는 기능을 갖는 것을 특징으로 하는 불휘발성 반도체 메모리.
  2. 제1항에 있어서,
    상기 제1 및 제2 데이터 기억부는 캐패시터에 의해 구성되는 것을 특징으로 하는 불휘발성 반도체 메모리.
  3. 제1항에 있어서,
    상기 제1 데이터 기억부는 MOS 캐패시터에 의해 구성되는 것을 특징으로 하는 불휘발성 반도체 메모리.
  4. 제1항에 있어서,
    상기 제2 데이터 기억부는 게이트가 상기 제2 데이터 전송 회로에 접속되는 MOS 트랜지스터에 의해 구성되고, 상기 MOS 트랜지스터의 드레인과 상기 제1 데이터 기억부와의 사이에는 제3 데이터 전송 회로가 접속되는 것을 특징으로 하는 불휘발성 반도체 메모리.
  5. 제1항에 있어서,
    상기 제3 데이터 기억부는 래치 회로에 의해 구성되는 것을 특징으로 하는 불휘발성 반도체 메모리.
  6. 제5항에 있어서,
    상기 래치 회로는 CMOS 플립플롭 회로에 의해 구성되는 것을 특징으로 하는 불휘발성 반도체 메모리.
  7. 제4항에 있어서,
    상기 데이터 회로는 컬럼 선택 스위치를 경유하여 데이터선에 접속되는 제4 데이터 기억부와, 상기 제1 및 제4 데이터 기억부 사이에 접속되는 제4 데이터 전송 회로를 더 갖는 것을 특징으로 하는 불휘발성 반도체 메모리.
  8. 제7항에 있어서,
    상기 제4 데이터 기억부는 래치 회로에 의해 구성되는 것을 특징으로 하는 불휘발성 반도체 메모리.
  9. 제8항에 있어서,
    상기 래치 회로는 CMOS 플립플롭 회로에 의해 구성되는 것을 특징으로 하는 불휘발성 반도체 메모리.
  10. 제1항에 있어서,
    상기 데이터 회로는 상기 비트선과 상기 제1 데이터 기억부와의 사이에 접속되는 클램프 회로와, 상기 제1 데이터 기억부에 접속되는 프리차지 회로를 더 갖는 것을 특징으로 하는 불휘발성 반도체 메모리.
  11. 제1항에 있어서,
    상기 제3 데이터 기억부에 기억된 데이터에 기초하여, 상기 메모리 셀에 대한 프로그램의 완료의 유무를 판단하는 검지 회로를 더 구비하는 것을 특징으로 하는 불휘발성 반도체 메모리.
  12. 제1항에 있어서,
    상기 제1 및 제2 데이터 전송 회로는 MOS 트랜지스터에 의해 구성되는 것을 특징으로 하는 불휘발성 반도체 메모리.
  13. 제7항에 있어서,
    상기 제3 및 제4 데이터 전송 회로는 MOS 트랜지스터에 의해 구성되는 것을 특징으로 하는 불휘발성 반도체 메모리.
  14. 제1항에 있어서,
    상기 메모리 셀은 2 비트 이상의 데이터를 기억하는 것을 특징으로 하는 불휘발성 반도체 메모리.
  15. 제1항에 있어서,
    상기 메모리 셀은 부유 게이트 전극과 컨트롤 게이트 전극을 갖는 불휘발성 메모리 셀인 것을 특징으로 하는 불휘발성 반도체 메모리.
  16. 제7항에 있어서,
    상기 데이터 회로 내에서의 상기 리드 데이터의 이동을 제어하는 제어 회로를 더 구비하는 것을 특징으로 하는 불휘발성 반도체 메모리.
  17. 제16항에 있어서,
    상기 메모리 셀이 4개의 상태를 갖는 경우에, 상기 제어 회로는 제1 리드 전위로 상기 메모리 셀로부터 판독한 제1 리드 데이터를 상기 제3 데이터 기억부에 기억시키는 수단과, 상기 제1 리드 데이터를 상기 3 데이터 기억부로부터 상기 제2 데이터 기억부로 전송시키는 수단과, 제2 리드 전위로 상기 메모리 셀로부터 판독한 제2 리드 데이터를 상기 제1 데이터 기억부에 기억시키는 수단과, 상기 제2 데이터 기억부에 기억된 상기 제1 리드 데이터에 기초하여, 상기 제1 데이터 기억부에 기억된 상기 제2 리드 데이터의 값을 강제로 변경시키는 수단과, 상기 제2 리드 데이터를 상기 제1 데이터 기억부로부터 상기 제4 데이터 기억부로 전송시키는 수단을 포함하는 것을 특징으로 하는 불휘발성 반도체 메모리.
  18. 제7항에 있어서,
    상기 데이터 회로 내에서의 상기 프로그램 데이터의 이동을 제어하는 제어 회로를 더 구비하는 것을 특징으로 하는 불휘발성 반도체 메모리.
  19. 제18항에 있어서,
    상기 제어 회로는, 상기 프로그램 데이터를 상기 제4 데이터 기억부에 기억시키는 수단과, 상기 프로그램 데이터를 상기 제4 데이터 기억부로부터 상기 제3 데이터 기억부로 전송시키는 수단과, 상기 프로그램 데이터를 상기 제3 데이터 기억부로부터 상기 제2 데이터 기억부로 전송시키는 수단을 포함하는 것을 특징으로 하는 불휘발성 반도체 메모리.
  20. 제19항에 있어서,
    상기 메모리 셀이 2 비트 데이터를 기억하는 기능을 갖고, 또한 그 중 1 비트 데이터가 이미 상기 메모리 셀에 기억되어 있는 경우에, 상기 제어 회로는 상기 프로그램 데이터를 상기 제4 데이터 기억부로부터 상기 제3 데이터 기억부로 전송시킨 후에, 상기 제4 데이터 기억부의 상태를 리세트하는 수단과, 상기 메모리 셀에 기억된 상기 1 비트 데이터를 상기 제4 데이터 기억부에 판독하는 수단을 포함하는 것을 특징으로 하는 불휘발성 반도체 메모리.
  21. 제19항에 있어서,
    상기 제어 회로는 라이트 동작 시에, 상기 제3 데이터 기억부에 기억된 상기 프로그램 데이터의 값에 기초하여, 상기 메모리 셀의 임계값 전압을 변동시킬지의 여부를 결정하는 수단을 포함하는 것을 특징으로 하는 불휘발성 반도체 메모리.
  22. 제21항에 있어서,
    상기 제3 데이터 기억부에 기억된 상기 프로그램 데이터의 값은, 검증 판독에 의해 상기 메모리 셀로부터 판독된 데이터에 의해 변경되는 것을 특징으로 하는 불휘발성 반도체 메모리.
  23. 제22항에 있어서,
    상기 제2 데이터 기억부에 기억된 상기 프로그램 데이터의 값은, 항상 변화하지 않는 것을 특징으로 하는 불휘발성 반도체 메모리.
  24. 제23항에 있어서,
    상기 제어 회로는, 상기 메모리 셀에 대한 프로그램이 완료된 후, 상기 제3 데이터 기억부의 상태를 리세트하는 수단과, 상기 제2 데이터 기억부에 기억된 상기 프로그램 데이터를 상기 제3 데이터 기억부에 전송하는 수단을 포함하는 것을 특징으로 하는 불휘발성 반도체 메모리.
  25. 제1항에 있어서,
    상기 제2 및 제3 데이터 기억부에 상기 프로그램 데이터가 기억되고, 라이트 동작 시에, 상기 제3 데이터 기억부에 기억된 상기 프로그램 데이터의 값에 기초하여, 상기 메모리 셀의 임계값 전압을 변동시킬지의 여부를 결정하는 경우에, 상기 제어 회로는 검증 판독에 의해 상기 리드 데이터를 상기 제1 데이터 기억부에 기억시키는 수단과, 상기 제2 데이터 기억부에 기억된 상기 프로그램 데이터의 값에 대응하여, 상기 제1 데이터 기억부에 기억된 상기 리드 데이터의 값을 강제로 변경시키는 수단과, 상기 제1 데이터 기억부에 기억된 상기 리드 데이터를, 상기 프로그램 데이터로서 상기 제3 데이터 기억부에 기억시키는 수단을 포함하는 것을 특징으로 하는 불휘발성 반도체 메모리.
  26. 제20항에 있어서,
    상기 제어 회로는 검증 판독에 의해 상기 리드 데이터를 상기 제1 데이터 기억부에 기억시키는 수단과, 상기 제4 데이터 기억부에 기억된 상기 1 비트 데이터의 값에 대응하여, 상기 제1 데이터 기억부에 기억된 상기 리드 데이터의 값을 강제로 변경시키는 수단과, 상기 제1 데이터 기억부에 기억된 상기 리드 데이터를, 상기 프로그램 데이터로서 상기 제3 데이터 기억부에 기억시키는 수단을 포함하는 것을 특징으로 하는 불휘발성 반도체 메모리.
  27. 전기적으로 재기록 가능한 불휘발성 반도체 메모리 셀과,
    상기 메모리 셀에 연결되는 비트선과,
    상기 메모리 셀의 데이터를 판독하기 위한 판독 회로를 구비하고,
    상기 판독 회로는, 비트선과 연결되는 제1 데이터 기억부와, 상기 제1 데이터 기억부의 데이터를 자신이 기억하고 있는 데이터에 따라서 재기입하는 기능을 갖는 제2 데이터 기억부와, 상기 제1 데이터 기억부의 데이터를 판독하는 기능을 갖는 제3 데이터 기억부와, 상기 제3 데이터 기억부의 데이터를 상기 제2 데이터 기억부에 전송하는 데이터 전송 회로를 구비하고,
    상기 메모리 셀의 데이터를 상기 비트선을 통하여 상기 제1 데이터 기억부에 판독하고, 상기 제2 데이터 기억부의 데이터에 따라 상기 제1 데이터 기억부의 판독 데이터를 재기입하고, 그 후 상기 제3 데이터 기억부의 데이터를 상기 제2 데이터 기억부에 전송하며, 또한 그 후 상기 제3 데이터 기억부에 의해 상기 제1 데이터 기억부의 데이터를 판독하는 판독 제어 회로를 더 구비하는 것을 특징으로 하는 불휘발성 반도체 메모리.
  28. 제27항에 있어서,
    상기 제1 및 제2 데이터 기억부는 캐패시터에 전하를 축적하는 것으로 데이터를 기억하는 것을 특징으로 하는 불휘발성 반도체 메모리.
  29. 제28항에 있어서,
    상기 데이터 전송 회로는, 제1 MOS 트랜지스터로 구성되고, 상기 제2 데이터 기억 회로는 제2 MOS 트랜지스터로 구성되며, 상기 제2 MOS 트랜지스터의 소스는 제3 MOS 트랜지스터를 통하여 상기 제1 데이터 기억 회로의 캐패시터의 제1 전극에 연결되고, 상기 제2 MOS 트랜지스터의 게이트는 상기 제1 MOS 트랜지스터의 소스에 연결되는 것을 특징으로 하는 불휘발성 반도체 메모리.
  30. 제29항에 있어서,
    상기 제3 데이터 기억 회로는 2개의 CMOS 플립플롭으로 구성되며, 상기 제1 MOS 트랜지스터의 드레인에 접속되고, 또한 제4 MOS 트랜지스터를 통하여 상기 제1 데이터 기억 회로의 캐패시터의 제1 전극에 연결되는 것을 특징으로 하는 불휘발성 반도체 메모리.
KR10-2003-0066492A 2002-09-26 2003-09-25 불휘발성 반도체 메모리 KR100515867B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002281205A JP4270832B2 (ja) 2002-09-26 2002-09-26 不揮発性半導体メモリ
JPJP-P-2002-00281205 2002-09-26

Publications (2)

Publication Number Publication Date
KR20040027407A KR20040027407A (ko) 2004-04-01
KR100515867B1 true KR100515867B1 (ko) 2005-09-21

Family

ID=31973305

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-0066492A KR100515867B1 (ko) 2002-09-26 2003-09-25 불휘발성 반도체 메모리

Country Status (7)

Country Link
US (2) US6850435B2 (ko)
EP (1) EP1403877B1 (ko)
JP (1) JP4270832B2 (ko)
KR (1) KR100515867B1 (ko)
CN (1) CN1295794C (ko)
DE (1) DE60314068T2 (ko)
TW (1) TWI247427B (ko)

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3631463B2 (ja) 2001-12-27 2005-03-23 株式会社東芝 不揮発性半導体記憶装置
JP3977799B2 (ja) * 2003-12-09 2007-09-19 株式会社東芝 不揮発性半導体記憶装置
TWI292914B (ko) * 2002-01-17 2008-01-21 Macronix Int Co Ltd
JP3935139B2 (ja) * 2002-11-29 2007-06-20 株式会社東芝 半導体記憶装置
US6657891B1 (en) 2002-11-29 2003-12-02 Kabushiki Kaisha Toshiba Semiconductor memory device for storing multivalued data
US7392436B2 (en) * 2003-05-08 2008-06-24 Micron Technology, Inc. Program failure recovery
JP4170952B2 (ja) * 2004-01-30 2008-10-22 株式会社東芝 半導体記憶装置
JP4504138B2 (ja) * 2004-09-03 2010-07-14 株式会社東芝 記憶システム及びそのデータコピー方法
JP4417813B2 (ja) * 2004-10-01 2010-02-17 株式会社東芝 半導体記憶装置及びメモリカード
JP4786171B2 (ja) 2004-12-10 2011-10-05 株式会社東芝 半導体記憶装置
US7564713B2 (en) * 2005-04-28 2009-07-21 Kabushiki Kaisha Toshiba Semiconductor integrated circuit device wherein during data write a potential transferred to each bit line is changed in accordance with program order of program data
KR100673703B1 (ko) * 2005-06-14 2007-01-24 주식회사 하이닉스반도체 멀티 레벨 셀들을 포함하는 플래시 메모리 장치의 카피백동작 제어 방법
KR100729355B1 (ko) * 2005-07-04 2007-06-15 삼성전자주식회사 멀티 레벨 셀을 갖는 노어 플래시 메모리 장치 및 그것의읽기 방법
KR100642892B1 (ko) 2005-07-19 2006-11-03 주식회사 하이닉스반도체 면적이 감소된 페이지 버퍼 회로와 그 독출 및 프로그램동작 방법
KR100729359B1 (ko) 2005-09-23 2007-06-15 삼성전자주식회사 낸드 플래시 메모리 장치 및 그것의 프로그램 방법
JP2007102848A (ja) * 2005-09-30 2007-04-19 Toshiba Corp 半導体集積回路装置
US7286406B2 (en) * 2005-10-14 2007-10-23 Sandisk Corporation Method for controlled programming of non-volatile memory exhibiting bit line coupling
US7206235B1 (en) 2005-10-14 2007-04-17 Sandisk Corporation Apparatus for controlled programming of non-volatile memory exhibiting bit line coupling
US7517482B2 (en) * 2005-11-09 2009-04-14 Industrial Technology Research Institute Method for producing polymeric membranes with high-recovery rate
JP2007164892A (ja) * 2005-12-13 2007-06-28 Toshiba Corp 不揮発性半導体記憶装置のしきい値読み出し方法及び不揮発性半導体記憶装置
JP2007280505A (ja) * 2006-04-06 2007-10-25 Toshiba Corp 半導体記憶装置
JP4896569B2 (ja) * 2006-04-10 2012-03-14 株式会社東芝 半導体集積回路装置及びそのダイナミックラッチのリフレッシュ方法
US7499326B2 (en) 2006-04-12 2009-03-03 Sandisk Corporation Apparatus for reducing the impact of program disturb
JP4995264B2 (ja) * 2006-04-12 2012-08-08 サンディスク コーポレイション 読み出し中におけるプログラム外乱による影響の軽減
JP2007310936A (ja) * 2006-05-17 2007-11-29 Toshiba Corp 半導体記憶装置
KR100754226B1 (ko) * 2006-08-22 2007-09-03 삼성전자주식회사 비휘발성 데이터 저장장치의 프로그래밍 방법 및 그 장치
US7593259B2 (en) * 2006-09-13 2009-09-22 Mosaid Technologies Incorporated Flash multi-level threshold distribution scheme
JP2008111921A (ja) * 2006-10-30 2008-05-15 Renesas Technology Corp 表示制御用半導体集積回路
KR100801035B1 (ko) * 2006-12-14 2008-02-04 삼성전자주식회사 멀티 레벨 셀의 프로그램 방법, 페이지 버퍼 블록 및 이를포함하는 불휘발성 메모리 장치
KR100885912B1 (ko) 2007-01-23 2009-02-26 삼성전자주식회사 기입된 데이터 값에 기초하여 데이터를 선택적으로검증하는 데이터 검증 방법 및 반도체 메모리 장치
KR100855971B1 (ko) 2007-01-23 2008-09-02 삼성전자주식회사 초기 독출 동작없이 메모리 셀에 데이터를 프로그래밍할 수있는 메모리 셀 프로그래밍 방법 및 반도체 메모리 장치
KR100819102B1 (ko) 2007-02-06 2008-04-03 삼성전자주식회사 개선된 멀티 페이지 프로그램 동작을 갖는 불휘발성 반도체메모리 장치
US7646636B2 (en) 2007-02-16 2010-01-12 Mosaid Technologies Incorporated Non-volatile memory with dynamic multi-mode operation
US7577059B2 (en) * 2007-02-27 2009-08-18 Mosaid Technologies Incorporated Decoding control with address transition detection in page erase function
US7804718B2 (en) * 2007-03-07 2010-09-28 Mosaid Technologies Incorporated Partial block erase architecture for flash memory
US7577029B2 (en) 2007-05-04 2009-08-18 Mosaid Technologies Incorporated Multi-level cell access buffer with dual function
KR100965066B1 (ko) * 2008-03-28 2010-06-21 주식회사 하이닉스반도체 플래시 메모리 소자 및 그 블록 선택 회로
KR20100050789A (ko) * 2008-11-06 2010-05-14 삼성전자주식회사 메모리 장치 및 그것을 포함하는 메모리 시스템
JP5193830B2 (ja) 2008-12-03 2013-05-08 株式会社東芝 不揮発性半導体メモリ
JP2010140521A (ja) * 2008-12-09 2010-06-24 Powerchip Semiconductor Corp 不揮発性半導体記憶装置とその読み出し方法
JP2011003850A (ja) * 2009-06-22 2011-01-06 Toshiba Corp 半導体記憶装置
JP2011008838A (ja) * 2009-06-23 2011-01-13 Toshiba Corp 不揮発性半導体記憶装置およびその書き込み方法
KR101009751B1 (ko) * 2009-06-24 2011-01-19 주식회사 아이에스시테크놀러지 Led용 전기적 검사장비
JP5075992B2 (ja) * 2011-02-02 2012-11-21 株式会社東芝 半導体記憶装置
JP5380506B2 (ja) * 2011-09-22 2014-01-08 株式会社東芝 不揮発性半導体記憶装置
US9588883B2 (en) 2011-09-23 2017-03-07 Conversant Intellectual Property Management Inc. Flash memory system
CN103455440A (zh) * 2012-06-04 2013-12-18 慧荣科技股份有限公司 快闪内存装置及快闪内存的数据存取方法
TWI506630B (zh) * 2012-06-11 2015-11-01 Macronix Int Co Ltd 具有變動壓降的位元線偏壓電路
US9530469B2 (en) * 2013-03-15 2016-12-27 Sony Semiconductor Solutions Corporation Integrated circuit system with non-volatile memory stress suppression and method of manufacture thereof
CN107370351B (zh) * 2016-05-13 2019-12-27 中芯国际集成电路制造(天津)有限公司 电荷泄放电路
KR102540765B1 (ko) * 2016-09-07 2023-06-08 에스케이하이닉스 주식회사 메모리 장치 및 이를 포함하는 메모리 시스템

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR960002006B1 (ko) * 1991-03-12 1996-02-09 가부시끼가이샤 도시바 2개의 기준 레벨을 사용하는 기록 검증 제어기를 갖는 전기적으로 소거 가능하고 프로그램 가능한 불휘발성 메모리 장치
US5357462A (en) * 1991-09-24 1994-10-18 Kabushiki Kaisha Toshiba Electrically erasable and programmable non-volatile semiconductor memory with automatic write-verify controller
JP3421365B2 (ja) * 1992-07-29 2003-06-30 直 柴田 半導体装置
JP3252306B2 (ja) * 1993-08-10 2002-02-04 株式会社日立製作所 半導体不揮発性記憶装置
KR0169267B1 (ko) * 1993-09-21 1999-02-01 사토 후미오 불휘발성 반도체 기억장치
US5969985A (en) * 1996-03-18 1999-10-19 Kabushiki Kaisha Toshiba Nonvolatile semiconductor memory device
JP3863330B2 (ja) * 1999-09-28 2006-12-27 株式会社東芝 不揮発性半導体メモリ
JP3784229B2 (ja) * 2000-01-21 2006-06-07 シャープ株式会社 不揮発性半導体記憶装置およびそれを用いたシステムlsi
JP3983969B2 (ja) * 2000-03-08 2007-09-26 株式会社東芝 不揮発性半導体記憶装置
JP2002207715A (ja) * 2001-01-11 2002-07-26 Mitsubishi Electric Corp マイクロコンピュータ及びそれに用いるメモリ制御方法
US6480419B2 (en) * 2001-02-22 2002-11-12 Samsung Electronics Co., Ltd. Bit line setup and discharge circuit for programming non-volatile memory

Also Published As

Publication number Publication date
EP1403877B1 (en) 2007-05-30
DE60314068D1 (de) 2007-07-12
EP1403877A1 (en) 2004-03-31
TW200409360A (en) 2004-06-01
KR20040027407A (ko) 2004-04-01
US20040062077A1 (en) 2004-04-01
JP4270832B2 (ja) 2009-06-03
CN1295794C (zh) 2007-01-17
CN1497730A (zh) 2004-05-19
US20040174741A1 (en) 2004-09-09
JP2004118940A (ja) 2004-04-15
US6885583B2 (en) 2005-04-26
DE60314068T2 (de) 2008-01-24
US6850435B2 (en) 2005-02-01
TWI247427B (en) 2006-01-11

Similar Documents

Publication Publication Date Title
KR100515867B1 (ko) 불휘발성 반도체 메모리
US10964394B2 (en) Semiconductor memory system including a plurality of semiconductor memory devices
KR100502129B1 (ko) 불휘발성 반도체 메모리
KR100715412B1 (ko) 비휘발성 반도체 메모리
JP4427361B2 (ja) 不揮発性半導体メモリ
JP3863330B2 (ja) 不揮発性半導体メモリ
US6154391A (en) Nonvolatile semiconductor memory device
JP5065594B2 (ja) 半導体記憶装置

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120821

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20130820

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150819

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20160816

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20170818

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20180816

Year of fee payment: 14