KR101317625B1 - 비휘발성 메모리에서 향상된 프로그램-검증 작동을 위한방법 및 장치 - Google Patents

비휘발성 메모리에서 향상된 프로그램-검증 작동을 위한방법 및 장치 Download PDF

Info

Publication number
KR101317625B1
KR101317625B1 KR1020087015676A KR20087015676A KR101317625B1 KR 101317625 B1 KR101317625 B1 KR 101317625B1 KR 1020087015676 A KR1020087015676 A KR 1020087015676A KR 20087015676 A KR20087015676 A KR 20087015676A KR 101317625 B1 KR101317625 B1 KR 101317625B1
Authority
KR
South Korea
Prior art keywords
programming
memory
threshold voltage
group
cells
Prior art date
Application number
KR1020087015676A
Other languages
English (en)
Other versions
KR20080096645A (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
Priority claimed from US11/323,596 external-priority patent/US7224614B1/en
Priority claimed from US11/323,577 external-priority patent/US7310255B2/en
Application filed by 샌디스크 테크놀로지스, 인코포레이티드 filed Critical 샌디스크 테크놀로지스, 인코포레이티드
Publication of KR20080096645A publication Critical patent/KR20080096645A/ko
Application granted granted Critical
Publication of KR101317625B1 publication Critical patent/KR101317625B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells

Landscapes

  • Read Only Memory (AREA)

Abstract

프로그래밍 펄스를 인가하고 프로그래밍을 검증하는 것을 교호로 행하는 것을 수반하는 비휘발성 메모리를 프로그램함에 있어서, 메모리 셀들의 상태들에 따라, 검증 작동의 부분이 불필요한 것으로 인지되어 스킵될 때 프로그램 검증 부분에서 시간이 절약된다. 바람직하게, 두 메모리 상태들 간을 분리하기 위해 경계 임계 레벨에 관한 프로그램 검증 작동에서, 검증 작동은 두 개의 검증 하위-사이클들의 시퀀스를 포함하는데, 제1 하위-사이클은 경계 임계 레벨 이하의 소정의 마진에서 제1 임계 레벨에 관하여 검증을 수행하며 제2 하위-사이클은 경계 임계 레벨과 동등한 제2 임계 레벨에 관하여 검증을 수행한다. 종래의 경우들과는 달리, 제2 하위-사이클은 그룹의 임의의 한 메모리 셀이 제1 임계를 통과한 것으로 검증될 때까지 수행되지 않는다.

Description

비휘발성 메모리에서 향상된 프로그램-검증 작동을 위한 방법 및 장치{METHODS AND DEVICE FOR IMPROVED PROGRAM-VERIFY OPERATIONS IN NON-VOLATILE MEMORIES}
이 발명은 일반적으로 전기적으로 소거가능하고 프로그램가능한 독출전용 메모리(EEPROM) 및 플래시 EEPROM과 같은 비휘발성 반도체 메모리에 관한 것으로, 특히 프로그램 검증 작동들 동안 시간 절약 특징들을 구현하는 비휘발성 반도체 메모리들에 관한 것이다.
비휘발성으로 전하를 저장할 수 있는, 특히 소형 폼 팩터(form factor) 카드로서 패키지되는 EEPROM 및 플래시 EEPROM 형태의 고체상태 메모리는 최근에 다양한 이동 및 휴대 장치들, 특히 정보기기들 및 소비자 전자제품들에서 선택되는 저장장치가 되었다. 고체상태 메모리인 RAM(랜덤 액세스 메모리)와는 달리, 플래시 메모리는 파워가 턴 오프 된 후에도 그의 저장된 데이터를 보존하는 비휘발성이다. 높은 가격에도 불구하고, 플래시 메모리는 대량 저장 애플리케이션들에서 점점 더 사용되고 있다. 하드 드라이브들 및 플로피 디스크들과 같은 회전 자기 매체에 기초한, 종래의 대량 저장장치는 이동 및 휴대 환경엔 적합하지 않다. 이것은 디스크 드라이브들이 부피가 큰 경향이 있고 기계적 고장이 나기 쉬우며 큰 레이턴 시(latency)와 큰 파워 요건들을 갖고 있기 때문이다. 이들 바람직하지 못한 속성들은 디스크 기반의 저장장치를 대부분의 이동 및 휴대 애플리케이션들에서 비현실적이게 한다. 반면, 내장형임과 아울러 착탈가능한 카드 형태인 플래시 메모리는 이의 작은 크기, 낮은 파워 소비, 고속 및 고 신뢰성 특징들 때문에 이상적으로 이동 및 휴대 환경에서 적합하다.
EEPROM 및 전기적으로 프로그램가능한 독출전용 메모리(EPROM)는 소거되어 이들의 메모리 셀들에 새로운 데이터가 기입 혹은 "프로그램"되게 할 수 있는 비휘발성 메모리이다. 이들 둘은 전계효과 트랜지스터 구조에서 소스영역과 드레인 영역 사이에, 반도체 기판 내 채널영역 상에 위치한, 플로팅(비접속된) 도전성 게이트를 이용한다. 제어 게이트는 플로팅 게이트 상에 제공된다. 트랜지스터의 임계전압 특징은 플로팅 게이트 상에 보존된 전하량에 의해 제어된다. 즉, 플로팅 게이트 상의 주어진 레벨의 전하에 대해서, 소스영역과 드레인 영역간에 전도가 될 수 있게 트랜지스터가 턴 "온" 되기 전에 제어 게이트에 인가되어야 하는 대응 전압(임계)이 있다.
플로팅 게이트는 일정 범위의 전하를 유지할 수 있고 그러므로 임계 전압 윈도우 내 임의의 임계 전압 레벨로 프로그램될 수 있다. 임계 전압 윈도우의 크기는 장치의 최소 임계 레벨과 최대 임계 레벨에 의해 경계가 정해지고, 이들 레벨들은 플로팅 게이트에 프로그램될 수 있는 일정 범위의 전하들에 대응한다. 일반적으로 임계 윈도우는 메모리 장치의 특징들, 작동 조건들 및 이력에 따른다. 윈도우 내 각각의 구별되는 분해가능한 임계 전압 레벨 범위는, 기본적으로, 셀의 명확한 메 모리 상태를 지정하는데 사용될 수 있다.
메모리 셀로서 작용하는 트랜지스터는 통상적으로 2가지 메커니즘들 중 한 메커니즘에 의해 "프로그램된" 상태로 프로그램된다. "핫 전자 주입"에서, 드레인에 인가되는 하이(high) 전압은 기판 채널영역을 횡단하는 전자들을 가속화한다. 동시에 제어 게이트에 인가되는 하이 전압은 핫 전자들을 얇은 게이트 유전체를 통과시켜 플로팅 게이트로 이끌어낸다. "터널링 주입"에서, 하이 전압은 기판에 관하여 제어 게이트에 인가된다. 이런 식으로, 전자들이 기판으로부터 개재된 플로팅 게이트로 이끌어내어진다.
메모리 장치는 다수의 메커니즘들에 의해 소거될 수 있다. EPROM에 있어서, 메모리는 자외선 방사에 의해 플로팅 게이트로부터 전하를 제거함으로써 대량으로 소거될 수 있다. EEPROM에 있어서, 메모리 셀은 플로팅 게이트 내 전자들을 얇은 산화물을 통과하여 기판 채널영역으로 유도시키기 위해서(즉, 파울러-노다임 터널링) 제어 게이트에 관하여 기판에 하이 전압을 인가함으로써 전기적으로 소거될 수 있다. 통상적으로, EEPROM은 바이트씩으로 소거될 수 있다. 플래시 EEPROM에 있어서, 메모리는 모두 한꺼번에 혹은 한번에 하나 이상의 블록들 -한 블록은 512바이트 혹은 그 이상의 메모리로 구성될 수 있다- 을 전기적으로 소거할 수 있다.
비휘발성 메모리 셀의 예
통상적으로 메모리 장치들은 카드 상에 장착될 수 있는 하나 이상의 메모리 칩들을 포함한다. 각 메모리 칩은 디코더들 및 소거, 기입 및 독출회로들과 같은 주변회로들에 의해 지원되는 메모리 셀 어레이를 포함한다. 보다 정교한 메모리 장치들은, 지능형이고 보다 높은 레벨의 메모리 작동들 및 인터페이싱을 수행하는 제어기가 부수된다. 최근에 사용되는 많은 상업적으로 성공한 비휘발성 고체상태 메모리 장치들이 있다. 이들 메모리 장치들은 각 유형이 하나 이상의 전하 저장 소자를 구비하는 것인 서로 다른 유형들의 메모리 셀들을 채용할 수 있다.
도 1a-1e는 비휘발성 메모리 셀들의 서로 다른 예들을 개략적으로 도시한 것이다.
도 1a는 전하를 저장하기 위한 플로팅 게이트를 구비한 EEPROM 셀 형태의 비휘발성 메모리를 개략적으로 도시한 것이다. 전기적으로 소거가능하고 프로그램가능한 독출전용 메모리(EEPROM)는 EPROM과 유사한 구조를 가지나, UV 방사에 노출할 필요없이 적합한 전압들의 인가시 플로팅 게이트로부터 전하를 전기적으로 로딩 및 제거하는 메커니즘을 추가로 제공한다. 이러한 셀들 및 이들을 제조하는 방법들의 예들은 미국특허 5,595,924에 주어져 있다.
도 1b는 선택 게이트와 제어 혹은 조정 게이트 둘 다를 구비한 플래시 EEPROM 셀을 개략적으로 도시한 것이다. 메모리 셀(10)은 소스(14) 확산부와 드레인(16) 확산부 사이에 "분할-채널"(12)을 구비한다. 셀은 효과적으로 직렬의 두 개의 트랜지스터들(T1, T2)로 형성된다. T1은 플로팅 게이트(20) 및 제어 게이트(30)를 구비한 메모리 트랜지스터로서 작용한다. 플로팅 게이트는 선택가능한 전하량을 저장할 수 있다. 채널의 T1 부분을 통하여 흐를 수 있는 전류량은 제어 게이트(30) 상에 전압과 개재된 플로팅 게이트(20) 상에 놓인 전하량에 따른다. T2는 선택 게 이트(40)를 구비한 선택 트랜지스터로서 작용한다. T2가 선택 게이트(40)에서의 전압에 의해 턴 온 되었을 때, 이것은 채널의 T1 부분 내 전류가 소스와 드레인 사이에서 통과하게 한다. 선택 트랜지스터는 제어 게이트의 전압과 무관하게 소스-드레인 채널을 따른 스위치를 제공한다. 한 이점은 이것이 플로팅 게이트들에서의 전하 공핍(포지티브(positive))에 기인하여 제로 제어 게이트 전압에서 여전히 전도하여 있는 셀들을 턴 오프 하는데 사용될 수 있다는 것이다. 다른 이점은 소스측 주입 프로그래밍이 보다 쉽게 구현될 수 있게 한다는 것이다.
분할-채널 메모리 셀의 한 간단한 실시예는 선택 게이트 및 제어 게이트가 도 1b에 도시된 점선으로 개략적으로 나타낸 바와 같이 동일 워드라인에 접속되는 경우이다. 이것은 전하 저장 소자(플로팅 게이트)를 채널의 한 부분 상에 놓이게 하고 제어 게이트 구조(워드라인의 일부)를 전하 저장 소자 위만이 아니라 다른 채널 부분 위에 놓여지게 함으로써 달성된다. 이것은 직렬의 두 개의 트랜지스터를 구비한 셀을 효과적으로 형성하는데, 한 트랜지스터(메모리 트랜지스터)는 전하 저장 소자 상의 전하량과 채널의 부분을 통해 흐를 수 있는 전류량을 제어하는 워드라인 상의 전압과의 조합을 가지며, 다른 트랜지스터(선택 트랜지스터)는 이의 게이트로서 단독으로 작용하는 워드라인을 구비한다. 이러한 셀들, 메모리 시스템들에서 이들의 사용들 및 이들을 제조하는 방법들의 예들은 미국특허들 5,070,032, 5,095,344, 5,315,541, 5,343,063, 및 5,661,053에 주어져 있다.
도 1b에 도시된 분할-채널 셀의 보다 개선된 실시예는 선택 게이트와 제어 게이트가 독립적이고 이들간에 점선에 의해 연결되지 않을 때이다. 한 구현은 셀 어레이 내 한 열(column)의 제어 게이트들을 워드라인에 수직한 제어(혹은 조정) 라인에 연결한다. 효과는 선택된 셀을 독출 혹은 프로그래밍할 때 워드라인이 동시에 2가지 기능들을 수행해야 하는 것에서 구제하는 것이다. 이들 두 가지 기능들은 (1) 선택 트랜지스터의 게이트로서 작용하는 것 -이에 따라 선택 트랜지스터를 턴 온 및 오프 시키기 위한 적합한 전압을 요구하게 된다- 과, (2) 전하 저장 소자의 전압을 워드라인과 전하 저장 소자간 전계(용량성) 커플링을 통해 원하는 레벨로 구동하는 것이다. 단일의 전압으로 이들 기능들 둘 다를 최적으로 수행하는 것은 흔히 어렵다. 제어 게이트 및 선택 게이트의 개별적 제어에 있어선, 워드라인은 기능 (1)을 수행하는 것만을 필요로 하고, 추가된 제어라인은 기능 (2)를 수행한다. 이러한 능력은 프로그래밍 전압이 타겟의 데이터에 맞추어지는 보다 높은 수행의 프로그래밍을 설계할 수 있게 한다. 플래시 EEPROM 어레이에서 독립적 제어(혹은 조정) 게이트들의 사용은 예를 들면 미국특허들 5,313,421 및 6,222,762에 기술되어 있다.
도 1c는 2중 플로팅 게이트들 및 독립적 선택 및 제어 게이트들을 구비한 또 다른 플래시 EEPROM 셀을 개략적으로 도시한 것이다. 메모리 셀(10)은 효과적으로 직렬의 3개의 트랜지스터들을 구비하는 것을 제외하곤 도 1b와 유사하다. 이러한 유형의 셀에서, 2개의 저장 소자들(즉, T1-좌측 및 T1-우측의 소자)은 소스 확산부와 드레인 확산부 사이 내 선택 트랜지스터(T1)를 구비하여 이들 확산부들간 채널 상에 포함된다. 메모리 트랜지스터들은 플로팅 게이트들(20, 20'), 및 제어 게이트들(30, 30')을 각각 구비한다. 선택 트랜지스터(T2)는 선택 게이트(40)에 의해 제 어된다. 임의의 한 시간에서, 메모리 트랜지스터들의 쌍 중 단지 하나만이 독출 혹은 기입을 위해 액세스된다. 저장유닛(T1-좌측)이 액세스되고 있을 때, T2 및 T1-우측 둘 다는 턴 온 되어 채널의 T1-좌측 부분 내 전류가 소스와 드레인간에 통과할 수 있게 된다. 유사하게, 저장유닛(T1-우측)이 액세스되고 있을 때, T2 및 T1-좌측이 턴 온 된다. 소거는 선택 게이트 폴리실리콘의 부분이 플로팅 게이트에 근접하게 하고 플로팅 게이트 내 저장된 전자들이 선택 게이트 폴리실리콘으로 터널링할 수 있도록 상당한 양(positive)의 전압(예를 들면, 20V)을 선택 게이트에 인가함으로써 달성된다.
도 1d는 NAND 셀로 구성된 메모리 셀들의 스트링을 개략적으로 도시한 것이다. NAND 셀(50)은 소스들 및 드레인들이 데이지-체인형으로 연결된 직렬의 메모리 트랜지스터들(Ml, M2,...Mn (n= 4, 8, 16 혹은 그 이상))로 구성된다. 선택 트랜지스터의 쌍(S1, S2)는 NAND 셀의 소스 단자(54)와 드레인 단자(56)를 통해 외부에의 메모리 트랜지스터 체인의 접속을 제어한다. 메모리 어레이에서, 소스 선택 트랜지스터(S1)가 턴 온 되었을 때, 소스 단자는 소스라인에 결합된다. 마찬가지로, 드레인 선택 트랜지스터(S2)가 턴 온 되었을 때, NAND 셀의 드레인 단자는 메모리 어레이의 비트라인에 결합된다. 체인 내 각각의 메모리 트랜지스터는 의도된 메모리 상태를 나타내기 위해서, 주어진 전하량을 저장하는 전하 저장 소자를 구비한다. 각각의 메모리 트랜지스터의 제어 게이트는 독출 및 기입 작동들에 대해 제어를 제공한다. 선택 트랜지스터들(S1, S2) 각각의 제어 게이트는 각각 이의 소스 단자(54) 및 드레인 단자(56)를 통해 NAND 셀에의 제어 액세스를 제공한다.
NAND 셀 내 어드레스된 메모리 트랜지스터가 프로그래밍 동안 독출되고 검증될 때, 이의 제어 게이트에는 적합한 전압이 공급된다. 동시에, NAND 셀(50) 내 비-어드레스된 나머지 메모리 트랜지스터들은 이들의 제어 게이트들 상에 충분한 전압의 인가에 의해 완전히 턴 온 된다. 이런 식으로, 도전성 경로가 개개의 메모리 트랜지스터의 소스에서 NAND 셀의 소스 단자(54)로 효과적으로 생성되고 셀의 드레인 단자(56)에의 개개의 메모리 트랜지스터의 드레인에 대해서도 마찬가지이다. 이러한 NAND 셀 구조들을 가진 메모리 장치들은 미국특허들 5,570,315, 5,903,495, 6,046,935에 기술되어 있다.
도 1e는 전하를 저장하기 위한 유전층을 구비한 비휘발성 메모리를 개략적으로 도시한 것이다. 앞서 기술된 도전성 플로팅 게이트 소자들 대신에, 유전층이 사용된다. 유전 저장 소자를 이용한 이러한 메모리 장치들은 Eitan 등의 "NROM:A Novel Localized Trapping, 2-Bit Nonvolatile Memory Cell" IEEE Electron Device Letters, vol. 21, no. 11, November 2000, pp. 543-545에 기술되어 있다. ONO 유전층은 소스 확산부와 드레인 확산부간 채널을 가로질러 확장한다. 하나의 데이터 비트를 위한 전하는 드레인에 이웃한 유전층 내 국부화되고, 다른 데이터 비트를 위한 전하는 소스에 이웃한 유전층 내 국부화된다. 예를 들면, 미국특허들 5,768,192 및 6,011,725는 2개의 이산화실리콘층들 사이에 개재된 트랩핑(trapping) 유전체를 구비한 비휘발성 메모리 셀을 개시한다. 복수-상태 데이터 저장장치는 유전체 내 공간적으로 분리된 전하 저장 영역들의 바이너리 상태들을 개별적으로 독출함으로써 구현된다.
메모리 어레이
통상적으로 메모리 장치는, 행들 및 열들로 배열되고 워드라인들 및 비트라인들에 의해 어드레스될 수 있는 2차원 메모리 셀들의 어레이를 포함한다. 어레이는 NOR형 혹은 NAND형 구조에 따라 형성될 수 있다.
NOR 어레이
도 2는 NOR 메모리 셀 어레이의 예를 도시한 것이다. NOR형 구조를 가진 메모리 장치들은 도 1b 혹은 도 1c에 도시된 유형의 셀들로 구현되었다. 메모리 셀들의 각 행은 데이지-체인식으로 이들의 소스들 및 드레인들에 의해 접속된다. 이 설계는 종종 가상 접지 설계라고도 한다. 각 메모리 셀(10)은 소스(14), 드레인(16), 제어 게이트(30) 및 선택 게이트(40)를 구비한다. 행 내 셀들은 워드라인(42)에 접속된 선택 게이트들을 구비한다. 열 내 셀들은 선택된 비트라인들(34, 36)에 각각 접속된 소스들 및 드레인들을 구비한다. 메모리 셀들이 독립적으로 제어되는 이들의 제어 게이트 및 선택 게이트를 구비한 일부 실시예들에서, 조정 라인(36)은 열 내 셀들의 제어 게이트들을 연결한다.
많은 플래시 EEPROM 장치들은 각각이 이의 제어 게이트 및 선택 게이트가 함께 접속되어 형성된 메모리 셀들로 구현된다. 이 경우, 조정 라인들에 대한 필요성은 없으며 워드라인은 단순히 각 행을 따라 셀들의 모든 제어 게이트들 및 선택 게이트들을 연결한다. 이들 설계들의 예들은 미국특허들 5,172,338 및 5,418,752에 개시되어 있다. 이들 설계들에서, 워드라인은 근본적으로 두 가지 기능들로서, 행 선택과, 독출 혹은 프로그래밍을 위해 행 내 모든 셀들에 제어 게이트 전압을 공급하는 것을 수행한다.
NAND 어레이
도 3은 이를테면 도 1d에 도시된 것과 같은, NADN 메모리 셀 어레이의 예를 도시한 것이다. NAND 체인들의 각 열을 따라, 비트라인은 각각의 NAND 체인의 드레인 단자(56)에 결합된다. NAND 체인들의 각 행을 따라, 소스 라인은 모든 이들의 소스 단자들(54)을 연결할 수 있다. 또한, 행을 따른 NAND 체인들의 제어 게이트들은 일련의 대응 워드라인들에 연결된다. 전체 행의 NAND 체인들은 연결된 워드라인들을 통해 제어 게이트들 상에 적합한 전압들로 선택 트랜지스터들의 쌍(도 1d 참조)을 턴 온 시킴으로써 어드레스될 수 있다. NAND 체인 내 메모리 셀을 나타내는 메모리 트랜지스터가 독출되고 있을 때, 체인을 통해 흐르는 전류가 근본적으로 독출되는 셀에 저장된 전하의 레벨에 따르도록 체인 내 나머지 메모리 트랜지스터들은 이들의 연관된 워드라인들을 통해 강하게 턴 온 된다. 메모리 시스템의 일부로서 NAND 구조 어레이 및 이의 작동의 예는 미국특허들 5,570,315, 5,774,397 및 6,046,935에서 볼 수 있다.
프로그램 및 프로그램 금지
NAND 메모리를 프로그래밍하는 경우에, 프로그래밍 전압 펄스는 선택된 메모 리 셀들의 페이지에 연결하는 워드라인에 인가된다. 페이지 내에, 프로그램될 이들 메모리 셀들은 이들의 비트라인 전압을 0V에 설정되게 하는 한편 프로그램되지 않을 다른 메모리 셀들은 프로그래밍을 금지하기 위해서 이들의 비트라인 전압을 시스템 공급전압(Vdd)에 설정되게 한다. 비트라인을 Vdd에 설정하는 것은 NAND 체인의 드레인측에 선택 트랜지스터를 효과적으로 턴 오프 할 것이며 따라서 플로팅된 채널이 될 것이다. 프로그래밍 동안에, 플로팅된 채널에 전압은 고 워드라인 전압들에 의해 상승될 것이다. 이것은 채널과 전하 저장 유닛간에 전위차를 효과적으로 감소시킬 것이며, 이에 의해서 전자들이 채널로부터 전하 저장유닛으로 가지 못하게 되어 프로그래밍을 달성한다.
블록 소거
전하 저장 메모리 장치들의 프로그래밍은 이 장치의 전하 저장 소자들에 더 많은 전하를 부가하는 결과가 될 수 있을 뿐이다. 그러므로, 프로그램 작동에 앞서, 전하 저장 소자 내 현존하는 전하는 제거되어야 한다(혹은 소거되어야 한다). 소거 회로들(도시생략)은 메모리 셀들의 하나 이상의 블록들을 소거하기 위해 제공된다. EEPROM과 같은 비휘발성 메모리는 셀들의 전체 어레이의 , 혹은 어레이의 상당수의 그룹들의 셀들이 함께 전기적으로 소거될 때(즉, 플래시로) "플래시" EEPROM이라 한다. 일단 소거되면, 셀들의 그룹은 재-프로그램될 수 있다. 함께 소거될 수 있는 셀들의 그룹은 하나 이상의 어드레스가능한 소거단위로 구성될 수 있다. 통상적으로 소거단위 혹은 블록은 한 페이지 이상의 데이터를 저장하며, 페이 지는 프로그래밍 및 독출단위이지만, 1이상의 페이지가 단일 작동으로 프로그램 또는 독출될 수도 있다. 통상적으로 각 페이지는 하나 이상의 섹터들의 데이터를 저장하며, 섹터의 크기는 호스트 시스템에 의해 정의된다. 예로서는 자기 디스크 드라이브들에 확립된 표준에 따라, 512 바이트의 섹터의 사용자 데이터와, 이에 더하여 사용자 데이터 및/또는 이것이 저장되는 블록에 관한 몇 바이트들의 오버헤드 정보이다.
독출 / 기입 회로들
통상적인 2상태 EEPROM 셀에서, 전도 윈도우를 2개의 영역들로 분할하기 위해서 적어도 하나의 전류 구분 레벨이 정해진다. 소정의 고정된 전압들을 인가함으로써 셀이 독출될 때, 이의 소스/드레인 전류는 구분 레벨(혹은 기준 전류(IREF))과 비교함으로써 메모리 상태로 분해된다. 읽혀진 전류가 구분 레벨보다 높다면, 셀은 한 논리 상태(예를 들면, "0" 상태)에 있는 것으로 판정된다. 반면, 전류가 구분 레벨 이하라면, 셀은 다른 논리 상태(예를 들면, "1" 상태)에 있는 것으로 판정된다. 이에 따라, 이러한 2상태 셀은 1비트의 디지털 정보를 저장한다. 외부에서 프로그램할 수 있는 기준 전류원은 흔히 구분 레벨 전류를 발생하기 위해 메모리 시스템의 일부로서 제공된다.
메모리 용량을 증가시키기 위해서, 플래시 EEPROM 장치들은 반도체 기술의 상태가 진보함에 따라 더욱 더 고 밀도로 제조되고 있다. 저장용량을 증가시키는 또 다른 방법은 각각의 메모리 셀이 2보다 더 많은 상태들을 저장하게 하는 것이다.
복수-상태 혹은 복수-레벨 EEPROM 메모리 셀에 있어서, 전도 윈도우는 각 셀이 1비트 이상의 데이터를 저장할 수 있게 1이상 구분에 의해 2이상 영역들로 분할된다. 주어진 EEPROM 어레이가 저장할 수 있는 정보는 각 셀이 저장할 수 있는 상태들의 수에 따라 증가된다. 복수-상태 혹은 복수-레벨 메모리 셀들을 가진 EEPROM 혹은 플래시 EEPROM은 미국특허 5,172,338에 기술되어 있다.
실제로, 셀의 메모리 상태는 통상적으로 기준전압이 제어 게이트에 인가되었을 때 셀의 소스 전극 및 드레인 전극에 걸친 전도 전류를 감지함으로써 독출된다. 이와 같이 하여, 셀의 플로팅 게이트 상에 각각의 주어진 전하에 대해서, 고정된 기준 제어 게이트 전압에 관하여 대응하는 전도 전류가 검출될 수 있다. 유사하게, 플로팅 게이트에 프로그램될 수 있는 전하의 범위는 대응하는 임계 전압 윈도우 혹은 대응하는 전도 전류 윈도우를 정의한다.
대안적으로, 분할된 전류 윈도우 중의 전도 전류를 검출하는 대신에, 제어 게이트에 테스트 하에 주어진 메모리 상태에 대해 임계 전압을 설정하고 전도 전류가 임계 전류보다 낮거나 높은지를 검출하는 것이 가능하다. 한 구현에서, 임계 전류에 대한 전도 전류의 검출은 비트라인의 정전용량(capacitance)을 통해 전도 전류가 방전하는 레이트를 조사함으로써 달성된다.
도 4는 임의의 한 시간에 플로팅 게이트가 선택적으로 저장하고 있을 수 있 는 4개의 서로 다른 전하들 Q1-Q4에 대해 소스-드레인 전류(ID)와 제어 게이트 전압(VCG)간에 관계를 도시한 것이다. 4개의 ID 대 VCG의 실선 곡선들은 4개의 가능한 메모리 상태들에 각각 대응하여, 메모리 셀의 플로팅 게이트에 프로그램될 수 있는 4개의 가능한 전하 레벨들을 나타낸다. 예로서, 셀들의 모집단(population of cells)의 임계 전압 윈도우는 0.5V 내지 3.5V의 범위일 수 있다. 6개의 메모리 상태들은 각각 0.5V의 간격으로 임계 윈도우를 5개의 영역들로 분할함으로써 분리될 수 있다. 예를 들면, 도시된 바와 같이 2㎂의 기준전류(IREF)가 사용된다면, Q1으로 프로그램되는 셀은 이의 곡선이 VCG=0.5V 및 1.0V로 분리된 임계 윈도우의 영역에서 IREF와 교차하기 때문에 메모리 상태 "1"에 있는 것으로 간주될 수 있다. 유사하게, Q4는 메모리 상태 "5"에 있다.
위의 설명으로부터 알 수 있는 바와 같이, 메모리 셀에 저장할 상태들을 더 많게 할수록, 이의 임계 윈도우는 더욱 미세하게 분할된다. 이것은 요구된 분해능을 달성할 수 있기 위해서 프로그래밍 및 독출작동들에 있어 더 높은 정밀도를 요구할 것이다.
미국특허 4,357,685는 셀이 주어진 상태로 프로그램될 때, 플로팅 게이트에 증가된 전하를 부가할 때마다 연속된 프로그래밍 전압 펄스들이 가해지는, 2상태 EPROM을 프로그램하는 방법을 개시한다. 펄스들 사이에서, 셀은 구분 레벨에 대해 소스-드레인 전류를 판정하기 위해 다시 읽혀지거나 검증된다. 프로그래밍은 원하 는 상태에 도달한 것으로 전류 상태가 검증되었을 때 중지한다. 사용되는 프로그래밍 펄스 열(train)은 증가하는 기간 혹은 진폭을 가질 수 있다.
종래 기술의 프로그래밍 회로들은 단순히 타겟 상태에 도달될 때까지 소거된 혹은 접지 상태(ground state)로부터 임계 윈도우를 단계적으로 거치게 프로그래밍 펄스들을 인가한다. 실제로, 적합히 분해될 수 있게, 각각의 분할된 혹은 분리된 영역은 적어도 약 5개의 프로그래밍 단계들을 거칠 것을 요구할 것이다. 수행은 2상태 메모리 셀들에 대해서 수락될 수 있다. 그러나, 복수-상태 셀들에 대해서, 요구되는 단계 수는 분할 수에 따라 증가하며 따라서, 프로그래밍 정밀도 혹은 분해능은 증가되어야 한다. 예를 들면, 16-상태 셀은 타겟 상태로 프로그램하기 위해 평균하여 적어도 40 프로그래밍 펄스들을 요구할 수도 있다.
도 5는 행 디코더(130) 및 열 디코더(160)를 통해 독출/기입 회로들(170)에 의해 액세스될 수 있는 전형적인 배열의 메모리 어레이(100)를 구비한 메모리 장치를 개략적으로 도시한 것이다. 도 2 및 도 3에 관련하여 기술된 바와 같이, 메모리 어레이(100) 내 메모리 셀의 메모리 트랜지스터는 선택된 워드라인(들) 및 비트라인(들)의 세트를 통해 어드레스될 수 있다. 어드레스된 메모리 트랜지스터의 각각의 게이트들에 적합한 전압들을 인가하기 위해 행 디코더(130)는 하나 이상의 워드라인들을 선택하며 열 디코더(160)는 하나 이상의 비트라인들을 선택한다. 독출/기입 회로들(170)은 어드레스된 메모리 트랜지스터들의 메모리 상태들을 독출 혹은 기입(프로그램)하기 위해 제공된다. 독출/기입 회로들(170)은 어레이 내 메모리 소자들에 비트라인을 통해 접속될 수 있는 다수의 독출/기입 모듈들을 포함한다.
독출/기입 수행 및 정확도에 영향을 미치는 요인들
독출 및 프로그램 수행을 향상시키기 위해서, 어레이 내 복수의 전하 저장 소자들 혹은 메모리 트랜지스터들은 병렬로 독출 혹은 프로그램된다. 이에 따라, 메모리 소자들의 논리 "페이지"는 함께 독출 혹은 프로그램된다. 현존의 메모리 구조들에서, 통상적으로 행은 몇몇의 인터리브된 페이지들을 내포한다. 페이지의 모든 메모리 소자들은 함께 독출 혹은 프로그램될 것이다. 열 디코더는 인터리브된 페이지들의 각각을 대응하는 수의 독출/기입 모듈들에 선택적으로 접속할 것이다. 예를 들면, 한 구현에서, 메모리 어레이는 532바이트(512바이트와 이에 더하여 20바이트의 오버헤드들)의 페이지 크기를 갖도록 설계된다. 각 열이 드레인 비트라인을 내포하고 행 당 2개의 인터리브된 페이지들이 있다면, 이것은 각 페이지가 4256 열들에 연관되어 전부 8512 열들에 이른다. 모든 우수 비트라인들 혹은 기수 비트라인들을 병렬로 독출 혹은 기입하기 위해 접속될 수 있는 4256 감지 모듈들이 있을 것이다. 이런 식으로, 4256비트들(즉, 532 바이트)의 페이지의 데이터는 병렬로 메모리 소자들의 페이지로부터 독출 혹은 이들에 프로그램된다. 독출/기입 회로들(170)을 형성하는 독출/기입 모듈들은 다양한 구조들로 배열될 수 있다.
전에 언급된 바와 같이, 종래의 메모리 장치들은 한번에 모든 우수 혹은 모든 기수 비트라인들을 대량으로 병렬로 작동시킴으로써 독출/기입 작동들을 개선한다. 2개의 인터리브된 페이지들로 구성된 행의 이러한 "교호-비트라인" 구조는 독출/기입 회로들의 블록에 맞추는 문제를 완화시키는데 도움을 줄 것이다. 또한, 비 트라인간 용량성 커플링을 제어하는 것을 고려함으로써 정해진다. 우수 페이지 혹은 기수 페이지에 독출/기입 모듈들의 세트를 멀티플렉싱하기 위해 블록 디코더가 사용된다. 이런 식으로, 한 세트의 비트라인들이 독출 혹은 프로그램될 때마다, 인터리빙된 세트는 바로 옆 이웃 커플링을 최소화하기 위해 접지될 수 있다.
그러나, 인터리빙 페이지 구조는 적어도 3가지 면에서 단점이 있다. 먼저, 추가의 멀티플렉싱 회로를 요구한다. 두 번째로, 수행이 느리다. 워드라인에 의해 혹은 행에 연결된 메모리 셀들의 독출 혹은 프로그램을 마치기 위해서, 2번의 독출 혹은 2번의 프로그램 작동들이 요구된다. 세 번째로, 2개의 이웃들이 서로 다른 시간들에서, 이를테면 개별적으로 기수 및 우수 페이지들에서 프로그램될 때 플로팅 게이트 레벨에서 이웃한 전하 저장 소자들간의 필드 커플링과 같은 다른 교란 영향들을 해결함에 있어 최적이 아니다.
미국특허 공개 2004-0057318-A1은 복수의 인접한 메모리 셀들을 병렬로 감지할 수 있게 하는 메모리 장치 및 이의 방법을 개시한다. 예를 들면, 동일 워드라인들을 공유하는 행을 따른 모든 메모리 셀들은 페이지로서 함께 독출 혹은 프로그램된다. 이 "전-비트라인" 구조("all-bit-line" architecture)는 이웃 교란 영향들에 의해 야기되는 오류들을 최소화하면서도 "교호-비트라인" 구조("alternate-bit-line" architecture)의 성능에 두배가 된다. 그러나, 모든 비트라인들을 감지하는 것은 이들의 상호 정전용량으로부터 유발되는 전류들에 기인하여 이웃 비트라인들간에 크로스토크의 문제를 일으킨다. 이것은 각 이웃한 쌍의 비트라인들의 전도 전류들이 감지되고 있는 중에 이들 비트라인들간에 전압차를 실질적으로 시간에 무관 하게 유지함으로써 해결된다. 이 상태가 부과되었을 때, 여러 비트라인들의 정전용량에 기인한 모든 변위 전류들은 이들 모두가 시변 전압차에 따르기 때문에 사라진다. 각 비트라인에 결합된 감지회로는 임의의 이웃한 쌍의 접속된 비트라인들상에 전위차가 시간에 독립적이 되도록 비트라인 상에 전압 클램프를 구비한다. 비트라인 전압이 클램프되었을 때, 비트라인 정전용량에 기인한 방전을 감지하는 종래의 방법은 적용될 수 없다. 대신에, 감지 회로 및 방법은 비트라인에 무관하게 주어진 커패시터를 방전 혹은 충전하는 레이트를 노트함으로써 메모리 셀의 전도 전류를 판정할 수 있게 한다. 이것은 감지회로를 메모리 어레이의 구조와는 관계없게 할 것이다(즉, 비트라인 정전용량과 무관하게). 특히, 이것은 비트라인 크로스토크를 피하기 위해서 감지하는 동안 비트라인 전압들이 클램프되게 한다.
비휘발성 메모리들의 수행에 중요한 면은 프로그래밍 속도이다. 통상적으로 프로그램 작동은 프로그래밍 펄스를 인가하고 이어서 메모리 셀이 의도된 상태로 프로그램되었는지를 프로그램 검증(program verify)하기 위해 감지하는 사이클들을 번갈아 행하는 것을 포함한다.
그러므로, 수행이 향상된 고 수행 및 고용량 비휘발성 메모리에 대한 전반적인 필요성이 있다. 특히, 프로그램 검증 작동들을 향상시키는 것을 포함하여 프로그램 수행을 향상시킬 필요성이 있다.
발명의 요약
본 발명에 따라서, 프로그램 검증 작동 동안 감지되는 메모리 셀들의 상태들 에 따라, 검증 작동의 일부는 불필요한 것으로 인정되어 시간을 절약하기 위해 스킵된다. 바람직한 실시예에서, 병렬로 프로그램되고 2개의 메모리 상태들간을 분리하기 위한 소정의 임계 레벨에 관하여 검증하는 것을 수반하는 메모리 셀들의 그룹에 대한 프로그램 검증 작동에서, 검증 작동은 일련의 2개의 검증 하위-사이클을 포함하는데, 제1 하위-사이클은 주어진 임계 레벨 미만의 소정의 마진에서 제1 임계 레벨에 관하여 검증을 수행하며, 제2 하위-사이클은 주어진 임계 레벨과 동일한 제2 임계 레벨에 관하여 검증을 수행한다. 그러나, 종래의 경우들과는 달리, 제2 하위-사이클은 그룹의 어떠한 한 메모리 셀이 제1 임계를 통과한 것으로 검증될 때까지 수행되지 않는다.
바람직한 실시예에서, "1-비트-패스"("OBP")라고 하는 작동은 그룹의 임의의 한 메모리 셀이 제1 임계 레벨을 지나 프로그램되었는지의 경우에 대해 체크하기 위해 제1 하위-사이클의 끝에서 수행된다. 이 경우, 후속의 검증 사이클은 더 이상 필요하지 않을 것이지만 OBP는 제2 하위-사이클을 포함할 것이다.
본 발명의 추가의 특징들 및 이점들은 이의 바람직한 실시예들의 다음의 설명으로부터 이해될 것이며, 이 설명은 첨부한 도면들과 함께 취해질 것이다.
도 1a-1e는 비휘발성 메모리 셀들의 서로 다른 예들을 개략적으로 도시한 것이다.
도 2는 NOR 어레이의 메모리 셀들의 예를 도시한 것이다.
도 3은 도 1d에 도시된 것과 같은 NAND 메모리 셀 어레이의 예를 도시한 것 이다.
도 4는 플로팅 게이트가 임의의 한 시간에 저장하고 있을 수 있는 4개의 서로 다른 전하들 Q1-Q4에 대해 소스-드레인 전류와 제어 게이트 전압간에 관계를 도시한 것이다.
도 5는 행 및 열 디코더들을 통해 독출/기입 회로들에 의해 액세스될 수 있는 메모리 어레이의 전형적인 배열을 개략적으로 도시한 것이다.
도 6a는 본 발명이 구현되는 정황을 제공하는, 독출/기입회로들의 뱅크를 구비하는 콤팩트한 메모리 장치를 개략적으로 도시한 것이다.
도 6b는 도 6a에 도시된 콤팩트한 메모리 장치의 바람직한 구성을 도시한 것이다.
도 6c는 다수의 감지 모듈들을 독출/기입 스택으로의 바람직한 그룹화를 도시한 것이다.
도 6d는 도 6c에 도시된 독출/기입 스택에 기본 성분들의 일반적인 구성을 개략적으로 도시한 것이다.
도 7a는 각각의 메모리 셀이 종래의 그레이 코드를 사용하여 2비트의 데이터를 저장할 때 4상태 메모리 어레이의 임계 전압 분포들을 도시한 것이다.
도 7b는 그레이 코드를 사용하는 현존의 2-패스 프로그램 방법에서 하위 페이지 프로그래밍을 도시한 것이다.
도 7c는 그레이 코드를 사용하는 현존의 2-패스 프로그래밍 방법에 있어 상위 페이지 프로그래밍을 도시한 것이다.
도 7d는 그레이 코드로 엔코딩된 4-상태 메모리의 하위 비트를 식별하는데 요구되는 독출작동을 도시한 것이다.
도 7e는 그레이 코드로 엔코딩된 4-상태 메모리의 상위 비트를 식별하는데 요구되는 독출작동을 도시한 것이다.
도 8a는 각각의 메모리 셀이 LM 코드를 사용하여 2비트의 데이터를 저장할 때 4상태 메모리 어레이의 임계 전압 분포들을 도시한 것이다.
도 8b는 LM 코드를 사용하는 현존의 2-패스 프로그래밍 방법에서 하위 페이지 프로그래밍을 도시한 것이다.
도 8c는 LM 코드를 사용한 현존의 2-패스 프로그래밍 방법에서 상위 페이지 프로그래밍을 도시한 것이다.
도 8d는 LM 코드로 엔코딩된 4상태 메모리의 하위 비트를 식별하는데 요구되는 독출작동을 도시한 것이다.
도 8e는 LM 코드로 엔코딩된 4상태 메모리의 상위 비트를 식별하는데 요구되는 독출 작동을 도시한 것이다.
도 9a는 각 메모리 셀이 LM New 코드를 사용하여 2비트의 데이터를 저장할 때 4상태 메모리 어레이의 임계 전압 분포들을 도시한 것이다.
도 9b는 LM New 코드를 사용한 현존의 2-패스 프로그래밍 방법에서 하위 페이지 프로그래밍을 도시한 것이다.
도 9c는 LM New 코드를 사용한 현존의 2-패스 프로그래밍 방법에서 상위 페이지 프로그래밍을 도시한 것이다.
도 9d는 LM New 코드로 엔코딩된 4상태 메모리의 하위 비트를 구별하는데 요구되는 독출 작동을 도시한 것이다.
도 9e는 LM New 코드로 엔코딩된 4상태 메모리의 상위 비트를 식별하는데 요구되는 독출 작동을 도시한 것이다.
도 10은 기술된 메모리를 감지하는데 적합한 도 6a에 도시된 감지 모듈을 보다 상세히 개략적으로 도시한 것이다.
도 11은 소정의 프로그램된 메모리 상태를 가진 메모리 셀들의 2개의 분포들을 도시한 것으로, 더 퍼진 분포는 VL 레벨에서 검증된 단일-패스 프로그래밍에 의해 생성되며 보다 좁혀진 분포는 제2 패스를 VH 레벨에서 검증된 2-패스 프로그래밍에 의해 생성된다.
도 12는 2-패스 프로그래밍 파형의 예를 도시한 것이다.
도 13은 2-패스 프로그래밍 작동에 대한 검증 작동에서 감지하기 위한 타이밍도이다.
도 14는 신속 패스 기입의 단일-패스 프로그래밍 파형을 도시한 것이다.
도 15는 1-패스 QPW 프로그래밍 작동에 대한 검증 작동에서 감지하기 위한 타이밍도이다.
도 16은 본 발명에 따라, 개선된 프로그램 검증 작동에 대한 흐름도이다.
도 17은 임의의 비트가 VL을 통과하기 전에 SQPW 검증에 대한 타이밍도이다. 이것은 SPQW 검증의 단축된 사이클의 현시로서 간주될 수 있고 셀들의 그룹 내 어떠한 비트도 VL을 통과하지 않았을 때마다 적용할 수 있다.
도 18은 비트가 VL을 통과하는 첫번째 경우가 지금 발생한 경우 SQPW 검증에 대한 타이밍도이다.
도 19는 적어도 한 비트가 VL을 통과한 직후에 사이클에 이어지는 후속 사이클들에서의 SQPW 검증에 대한 타이밍도이다.
도 20a는 3개의 임계 레벨들을 수반하는 SQPW의 타이밍도이며 verifyA만을 수반하는 초기 프로그래밍 단계를 나타낸다.
도 20b는 3개의 임계 레벨들을 수반하는 SQPW의 타이밍도이며 verifyA에 더하여 verifyB가 시작될 때 중간 프로그래밍 단계를 나타낸다.
도 20c는 3개의 임계 레벨들을 수반하는 SQPW의 타이밍도이며 verifyA 및 verifyB에 더하여 vefifyC가 시작될 때 최종 프로그래밍 단계를 나타낸다.
도 6a는 본 발명이 구현되는 정황을 제공하는, 독출/기입회로들의 뱅크를 구비하는 콤팩트한 메모리 장치를 개략적으로 도시한 것이다. 메모리 장치는 2차원 어레이의 메모리 셀들(300), 제어 회로(310), 및 독출/기입 회로들(370)을 포함한다. 메모리 어레이(300)는 행 디코더(330)를 통해서 워드라인들에 의해서 그리고 열 디코더(360)를 통해서 비트라인들에 의해 어드레스될 수 있다. 독출/기입 회로들(370)은 감지 모듈들의 뱅크(480)로서 구현되고 메모리 셀들의 블록("페이지"라고도 함)이 병렬로 독출 혹은 프로그램되게 한다. 바람직한 실시예에서, 페이지는 연속한 행의 메모리 셀들로 구성된다. 메모리 셀들의 행이 복수의 블록들 혹은 페이지들로 분할되는 또 다른 실시예에서, 독출/기입 회로들(370)을 개개의 블록들에 멀티플렉싱하기 위해 블록 멀티플렉서(350)가 제공된다.
제어회로(310)는 메모리 어레이(300)에 대해서 메모리 작동들을 수행하기 위해 독출/기입회로들(370)과 협동한다. 제어회로(310)는 상태 머신(312), 온-칩 어드레스 디코더(314) 및 파워 제어 모듈(316)을 포함한다. 상태 머신(312)은 메모리 작동들의 칩 레벨 제어를 제공한다. 온-칩 어드레스 디코더(314)는 디코더들(330, 370)에 의해 사용되는 하드웨어 어드레스에 호스트 혹은 메모리 제어기에 의해 사용되는 것 간에 어드레스 인터페이스를 제공한다. 파워 제어 모듈(316)은 메모리 작동들 동안 워드라인들 및 비트라인들에 공급되는 파워 및 전압들을 제어한다.
도 6b는 도 6a에 도시된 콤팩트한 메모리 장치의 바람직한 구성을 도시한 것이다. 다양한 주변회로들에 의한 메모리 어레이(300)에의 액세스는 각 측 상의 액세스 라인들 및 회로가 반으로 감소되게 어레이의 대향한 측들에서, 대칭으로 이행된다. 이에 따라, 행 디코더는 행 디코더들(330A, 330B)로 분할되고 열 디코더는 열 디코더들(360A, 360B)로 분할된다. 메모리 셀들의 행이 복수의 블록들로 분할된 실시예에서, 블록 멀티플렉서(350)는 블록 멀티플렉서들(350A, 350B)로 분할된다. 마찬가지로, 독출/기입 회로들은 어레이(300)의 하부로부터 비트라인들에 연결하는 독출/기입 회로들(370A) 및 어레이(300)의 상부로부터 비트라인들에 연결하는 독출/기입회로들(370B)로 분할된다. 이런 식으로, 독출/기입 모듈들의 밀도, 따라서, 감지 모듈들의 뱅크(380)의 밀도는 근본적으로 반만큼 감소된다.
병렬로 작동하는 전체 뱅크의 p 감지 모듈들(480)은 행을 따른 p 셀들의 블록(또는 페이지)이 병렬로 독출 혹은 프로그램될 수 있게 한다. 한 예로서의 메모 리 어레이는 p=512 바이트(512x8 비트)를 가질 수 있다. 바람직한 실시예에서, 블록은 연속된 전체 행의 셀들이다. 또 다른 실시예에서, 블록은 행 내 셀들의 부분집합(subset)이다. 예를 들면, 셀들의 부분집합은 전체 행의 반 혹은 전체 한 행의 1/4일 수도 있을 것이다. 셀들의 부분집합은 연속된 인접한 셀들 혹은 한 모든 다른 셀이거나, 한 모든 소정 수의 셀들일 수도 있을 것이다. 각각의 감지 모듈은 메모리 셀의 전도 전류를 감지하기 위한 감지 증폭기를 포함한다.
도 6c는 다수의 감지 모듈들의 독출/기입 스택으로의 바람직한 그룹화를 도시한 것이다. 독출/기입 스택(490)은 도 6a에 도시된 감지 모듈들의 그룹이 감지 모듈들간에 공통의 성분들을 가려내게 할 공간 효율적인 방식으로 구현되게 한다.
도 6d는 도 6c에 도시된 독출/기입 스택 내 기본 성분들의 일반적인 구성을 개략적으로 도시한 것이다. 독출/기입 스택(490)은 k 비트라인들을 감지하기 위한 감지 증폭기들의 스택(212), I/O 버스(231)를 통해 데이터의 입력 혹은 출력을 위한 I/O 모듈(440), 입력 혹은 출력 데이터를 저장하기 위한 데이터 래치들의 스택(430), 독출/기입 스택(400) 간에 데이터를 처리하여 저장하기 위한 공통 프로세서(500), 및 스택 성분들간에 통신을 위한 스택 버스(421)를 포함한다. 독출/기입 회로들(370) 간에 스택 버스 제어기는 독출/기입 스택들 간에 다양한 성분들을 제어하기 위해 라인들(411)을 통해 제어 및 타이밍 신호들을 제공한다. 공통 프로세서는 처리동안 데이터를 임시로 저장하기 위한 하나 이상의 레지스터들 혹은 래치들(520)을 포함한다.
바람직한 독출/기입 스택은 2004년 12월 29일에 출원된 미국특허출원 11/026,536에 개시되어 있다. 바람직한 감지 증폭기는 미국특허 공개 2004-0109357-A1에 개시되어 있다. 이들 두 언급된 문헌들은 참조로 여기 포함시킨다.
복수상태 메모리에 대한 독출 및 프로그램의 예들
도 7a-7e, 8a-8e, 9a-9e는 각각 4-상태 메모리에 대한 복수-비트 엔코딩의 3가지 예들을 도시한 것이다. 4-상태 메모리 셀에서, 4개의 상태들은 2개의 비트들에 의해 표현될 수 있다. 한 현존의 기술은 이러한 메모리를 프로그램하기 위해 2-패스 프로그래밍을 사용하는 것이다. 제1 비트(하위 페이지 비트)가 제1 패스에 의해 프로그램된다. 이어서, 원하는 제2 비트(상위 페이지 비트)를 나타내기 위해 동일 셀이 제2 패스에서 프로그램된다. 제2 패스에서 제1 비트의 값을 변경하지 않기 위해서, 제2 비트의 메모리 상태 표현은 제1 비트의 값에 의존하게 한다.
도 7a-7e는 종래의 2비트 그레이 코드로 엔코딩된 4상태 메모리의 프로그래밍 및 독출을 도시한 것이다. 프로그램가능한 임계 전압들(임계 윈도우)의 메모리 셀의 범위는, 프로그램되지 않은 "U" 상태, 및 3개의 이외 다른 증가적으로 프로그램된 상태들로서 "A", "B", 및 "C"를 나타내는 4개의 영역들로 분할된다. 4개의 영역들은 각각 경계 임계 전압들(DA, DB, DC)로 분리된다.
도 7a는 각각의 메모리 셀이 종래의 그레이 코드를 사용하여 2비트의 데이터를 저장할 때 4상태 메모리 어레이의 임계 전압 분포들을 도시한 것이다. 4개의 분포들은 4개의 메모리 상태들로서 "U", "A", "B" 및 "C"의 모집단을 나타낸다. 메모 리 셀이 프로그램되기 전에, 먼저 이 메모리 셀의 "U" 혹은 "프로그램되지 않은" 상태로 소거된다. 메모리 상태들 "A", "B" 및 "C"은 메모리 셀이 증가적으로 프로그램될 때 점진적으로 도달된다. 그레이 코드는 (1,1)로서 "U"를, (1,0)로서 "A" 를, (0,0)로서 "B"를, (0,1)로서 "C"를 지정하기 위해 (상위 비트, 하위 비트)를 사용한다.
도 7b는 그레이 코드를 사용하는 현존의 2-패스 프로그램 방법에서 하위 페이지 프로그래밍을 도시한 것이다. 셀들의 페이지가 병렬로 프로그램되게 하기 위해서, 상위 및 하위 비트들은 하위 비트들로 구성된 논리 하위 페이지와 상위 비트들로 구성된 논리 상위 페이지인 2개의 논리 페이지들을 발생시킬 것이다. 제1 프로그래밍 패스는 논리 하위 페이지 비트들만을 프로그래밍한다. 적합한 코딩에 의해서, 동일 페이지의 셀들에 대한 후속되는 제2 프로그래밍 패스는 논리 하위 페이지 비트들을 리셋함이 없이 논리 상위 페이지 비트들을 프로그램할 것이다. 그레이 코드는 이웃 상태로 천이할 때 단지 한 비트만이 변경하는 일반적으로 사용되는 코드이다. 그러므로, 이 코드는 단지 한 비트만이 연루되기 때문에 오류 정정에 대해 덜 요구하는 이점이 있다.
그레이 코드를 사용함에 있어 일반적인 방법은 "1"을 "프로그램지 않은" 상태를 표현하게 하는 것이다. 이에 따라, 소거된 메모리 상태 "U"는 (상위 페이지 비트, 하위 페이지 비트)=(1,1)로 표현된다. 그러므로, 논리 하위 페이지를 프로그램하는 제1 패스에서, 비트 "0"을 저장할 임의의 셀은 (x,1)에서 (x,0)로의 논리 상태 천이를 가질 것이며, 여기서 "x"는 상위 비트의 "돈 캐어(don't care)" 값을 나타낸다. 그러나, 상위 비트가 아직 프로그램되지 않았기 때문에, "x"도 일관성을 위해 "1"로 표기될 수도 있다. (1,0) 논리 상태는 셀을 메모리 상태 "A"로 프로그래밍함으로써 표현된다. 즉, 제2 프로그램 패스에 앞서, "0"의 하위 비트값은 메모리 상태 "A"로 표현된다.
도 7c는 그레이 코드를 사용하는 현존의 2-패스 프로그래밍 방법에 있어 상위 페이지 프로그래밍을 도시한 것이다. 제2 패스 프로그래밍은 논리 상위 페이지의 비트들을 저장하기 위해 수행된다. "0"의 상위 페이지 비트값을 필요로 하는 셀들만이 프로그램될 것이다. 제1 패스 후에, 페이지 내 셀들은 논리 상태 (1,1)이나 (1,0)에 있다. 제2 패스에서 하위 페이지의 값들을 보존하기 위해서, "0" 혹은 "1"의 하위 비트 값이 구별될 필요가 있다. (1,0)에서 (0,0)으로의 천이에 있어서, 관련 메모리 셀들은 메모리 상태 "B"로 프로그램된다. (1,1)에서 (0,1)으로의 천이에 있어서, 관련 메모리 셀은 메모리 상태 "C"로 프로그램된다. 이런 식으로, 독출동안에, 셀에 프로그램된 메모리 상태를 판정함으로써, 하위 페이지 비트 및 상위 페이지 비트 둘 다가 디코딩될 수 있다.
프로그래밍은 프로그래밍 펄스를 메모리 셀들의 페이지에 병렬로 교번하여 인가하고 이어서 셀들 중 어느 것이 이들의 타겟 상태들로 프로그램되었는지를 판정하기 위해 이들 셀들 각각에 대해 감지 혹은 프로그램 검증함으로써 달성된다. 셀이 프로그램 검증되었을 때마다, 그룹 내 다른 셀들의 프로그래밍을 완료하기 위해 프로그래밍 펄스들이 계속하여 인가될 때라도 차후 프로그래밍이 차단되거나 혹은 프로그램 금지된다. 도 7b 및 도 7c로부터, 하위 페이지 프로그래밍 동안에, 프 로그램 검증이 분할 임계 전압 DA으로 상태 "A"("verifyA"로 표기되었음)에 관하여 수행될 필요가 있음을 알 수 있다. 그러나, 상위 페이지 프로그래밍에 있어서, 프로그램 검증은 상태 "B" 및 상태 "C"에 관하여 수행될 필요가 있다. 이에 따라, 상위 페이지 검증은 각각 경계 임계 전압들 DB 및 DC에 관하여, "verifyB 및 "verifyC"의 2-패스 검증을 요구할 것이다.
도 7d는 그레이 코드로 엔코딩된 4-상태 메모리의 하위 비트를 식별하는데 요구되는 독출작동을 도시한 것이다. (1,0)으로 엔코딩된 메모리 상태 "A"와 (0,0)로 엔코딩된 메모리 상태 "B" 둘 다는 이들의 하위 비트들로서 "0"을 갖기 때문에, 메모리 셀이 상태 "A" 혹은 상태 "B"로 프로그램될 때마다 하위 비트 "0"이 검출될 것이다. 반대로, 메모리 셀이 상태 "U"에서 프로그램되지 않거나 상태 "C"로 프로그램될 때마다 하위 비트 "1"이 검출될 것이다. 이에 따라, 독출된 하위 페이지는 각각 경계 임계 전압들 DA 및 DC에 관하여, readA 및 readC의 2-패스 독출을 요구할 것이다.
도 7e는 그레이 코드로 엔코딩된 4-상태 메모리의 상위 비트를 식별하는데 요구되는 독출작동을 도시한 것이다. 이것은 경계 임계전압(DB)에 관하여 realB의 1회의 독출 패스를 요구할 것이다. 이런 식으로, DB 이하의 프로그램된 임계 전압들을 가진 어떠한 셀들이든 "1"의 메모리 상태에 있는 것으로 검출될 것이며 그 반대는 0으로 검출될 것이다.
그레이-코드, 2-패스 프로그래밍 방법은 제2-패스 프로그래밍이 오류가 되었을 때 문제가 될 수 있다. 예를 들면, 하위 비트가 "1"에 있을 때 "0"으로의 상위 페이지 비트의 프로그래밍은 (1, 1)에서 (0, 1)로의 천이를 야기할 것이다. 이것은 메모리 셀이 "U"에서 "A" 및 "B"를 거쳐 "C"로 점진적으로 프로그램될 것을 요구한다. 프로그래밍의 완료 전에 파워 중단이 있다면, 메모리 셀은 천이 메모리 상태 중 하나, 예를 들면 "A"로 끝날 수도 있다. 메모리 셀이 독출될 때, "A"는 논리 상태 (1,0)으로서 디코딩될 것이다. (0,1)이었을 수 있기 때문에, 이것은 상위 비트 및 하위 비트 둘 다에 대해 틀린 결과들을 준다. 유사하게, "B"에 도달되었을 때 프로그래밍이 중단된다면, 이것은 (0,0)에 대응할 것이다. 현재 상위 비트는 정확하나, 하위 비트는 여전히 틀리다. 또한, 프로그램되지 않은 상태 "U"에서 언제라도 최대로 프로그램된 상태 "C"로 가능한 천이 때문에, 이 코드 방법은 서로 다른 시간들에서 프로그램된 이웃한 셀들의 전하 레벨들간에 잠재적 차이들을 더 심해지게 하는 결과를 갖는다. 이에 따라, 이웃한 플로팅 게이트들간에 전계효과 커플링("유핀(Yupin) 효과")이 더 심해지게 한다.
도 8a-8e는 또 다른 논리 코드("LM" 코드)로 엔코딩된 4-상태 메모리의 프로그래밍 및 독출을 도시한 것이다. 이 코드는 보다 더 고장 내성(fault- tolerance)을 제공하며 유핀 효과(Yupin Effect)에 기인한 이웃 셀 커플링을 완화시킨다. 도 8a는 각각의 메모리 셀이 LM 코드를 사용하여 2비트의 데이터를 저장할 때 4상태 메모리 어레이의 임계 전압 분포들을 도시한 것이다. LM 코딩은 상위 및 하위 비트들이 상태 "A" 및 상태 "C"에 대해 반대로 되는 점에서 도 7a에 도시된 종래의 그 레이 코드와는 다르다. "LM" 코드는 미국특허 6,657,891에 개시되어 있고 전하들의 큰 변화를 요구하는 프로그램 작동들을 피함으로써 이웃 플로팅 게이트들간의 전계효과 커플링을 감소시키는 데에 이점이 있다.
도 8b는 LM 코드를 사용하는 현존의 2-라운드 프로그래밍 방법에서 하위 페이지 프로그래밍을 도시한 것이다. 고장 내성 LM 코드는 임의의 중간 상태들을 거쳐 천이하는 임의의 상위 페이지 프로그래밍을 근본적으로 피한다. 이에 따라, 제1 라운드 하위 페이지 프로그래밍은 "프로그램되지 않은" 메모리 상태 "U"에서 DA보다는 크나 DC 이하인 넓은 분포 중에서 프로그램 임계 전압으로 (x,0)에 의해 지정된 "중간" 상태로 프로그래밍함으로써 나타내어지는 바와 같이 어떤 중간 상태 (x,0)로의 논리 상태 (1,1) 천이들을 갖는다. 도 8c는 LM 코드를 사용한 현존의 2-라운드 프로그래밍 방법에서 상위 페이지 프로그래밍을 도시한 것이다. 상위 페이지 비트를 "0"으로 프로그래밍하는 제2 라운드에서, 하위 페이지 비트가 "1"에 있다면, 논리 상태 (1,1)은 "프로그램되지 않은" 메모리 상태 "U"를 "A"로 프로그래밍함으로서 나타내어지는 바와 같이 (0,1)로 천이한다. 하위 페이지 비트가 "0"에 있다면, 논리 상태 (0,0)은 "중간" 상태에서 "B"로 프로그래밍함으로써 얻어진다. 유사하게, 하위 페이지가 "0"으로 프로그램되었으나, 상위 페이지가 "1" 상태에 있어야 할 것이라면, "중간" 상태에서 "C"로 프로그래밍함으로써 나타내어지는 바와 같이, "중간" 상태에서 (1,0)로의 천이를 요구할 것이다. 상위 페이지 프로그래밍이 다음 인접 메모리 상태로의 프로그래밍만을 수반하기 때문에, 어떠한 많은 량의 전하들 도 라운드간에 변경되지 않는다. "U"에서 대략 "중간" 상태로 하위 페이지 프로그래밍은 시간을 절약하기 위해 설계된다. 그러나, 이것은 상위 페이지 프로그래밍 동안 "LM" 코드가 상위 페이지 프로그램 오류 혹은 파워 단절에 똑같이 취약하게 하는 결과를 초래할 것이다. 예를 들면, 상태 "A"는 "중간" 상태와는 구별될 수 없는 임계전압으로 이동할 수도 있다.
도 8d는 LM 코드로 엔코딩된 4상태 메모리의 하위 비트를 식별하는데 요구되는 독출작동을 도시한 것이다. 디코딩은 상위 페이지가 프로그램되었는지 여부에 따를 것이다. 상위 페이지가 프로그램되었다면, 하위 페이지를 독출하는 것은 경계 임계 전압 DB에 관하여 readB의 1회의 독출 패스를 요구할 것이다. 반면, 상위 페이지가 아직 프로그램되지 않았다면, 하위 페이지는 "중간" 상태(도 8b)로 프로그램되고, readB는 오류를 야기할 것이다. 오히려, 하위 페이지를 독출하는 것은 경계 임계 전압 DA에 관하여 readA의 1회의 독출 패스를 요구할 것이다. 두 경우들을 구별하기 위해서, 상위 페이지가 프로그램되고 있을 때 상위 페이지에 플래그("LM" 플래그)가 기입된다. 독출 동안에, 먼저 상위 페이지가 프로그램되었고 따라서 readB 작동이 수행될 것으로 가정할 것이다. LM 플래그가 읽혀지면, 가정은 맞는 것이고 독출작동이 행해진다. 반면, 제1 독출이 플래그를 내주지 않았다면, 이것은 상위 페이지가 프로그램되지 않았으며 따라서 하위 페이지는 readA 작동에 의해 독출되어야 할 것임을 나타낼 것이다.
도 8e는 LM 코드로 엔코딩된 4상태 메모리의 상위 비트를 식별하는데 요구되 는 독출 작동을 도시한 것이다. 도면으로부터 명백한 바와 같이, 상위 페이지는 각각 경계 임계 전압들 DA 및 DC에 관하여, readA 및 readC의 2-패스 독출을 요구할 것이다. 마찬가지로, 상위 페이지의 디코딩은 상위 페이지가 아직 프로그램되지 않았다면 "중간" 상태에 의해 혼동될 수 있다. 다시 한번 LM 플래그는 상위 페이지가 프로그램되었는지를 나타낼 것이다. 상위 페이지가 프로그램되지 않았다면, 독출된 데이터는 상위 페이지 데이터가 프로그램되지 않은 것을 나타내는 "1"로 리셋될 것이다.
LM 코드는 부분적 페이지 프로그래밍을 지원하는 메모리에서 문제가 될 수 있다. 메모리 셀들의 페이지가 병렬로 프로그램되거나 독출될 때, 부분적 페이지 프로그래밍은 1 패스에서 페이지의 일부가 프로그램될 수 있게 하며 프로그램되지 않은 남은 부분은 후속 패스에서 프로그램될 수 있게 한다. LM 코드는 상위 페이지가 부분적으로만 데이터로 채워지는 프로그래밍 작동에 있어 문제를 나타낸다. 부분적으로 채워지지 않은 페이지를 완료하기 위해 후속되는 상위 페이지 프로그래밍에서, 데이터는 잘못된 상태들로 프로그램될 수도 있다. 관례로 "1" 비트는 "프로그램되지 않은(no program)" 상태를 나타내며 따라서 하위 및 상위 비트 둘 다는 초기에 프로그램되지 않은 "U" 상태로 "1"로 내정된다. 상위 페이지 비트는 채워지지 않은 부분 내 셀들을 나타내는 "1"이 되어야 한다. 채워지지 않은 부분 내 셀에 대한 하위 페이지 비트가 "1"으로 된 경우, 결과적인 논리 상태 (1,1)은 셀을 "U"인 상태에 있게 할 것이다. 그러나, 하위 페이지 비트가 "0"이면, 셀을 최대로 프 로그램된(가장 큰 임계 전압) "C" 상태로 프로그램되게 할 논리 상태 (1,0)가 될 것이다. 채워지지 않은 부분을 완성하기 위해 후속되는 프로그래밍 패스는 "C"로부터 덜 프로그램된 상태로 내리는 것이 가능하지 않기 때문에 (0,0) 혹은 "B" 상태로 될 가능성을 더 이상 지닐 수 없다.
도 9a-9e는 바람직한 논리 코드("LM NEW" 코드)로 엔코딩된 4상태 메모리의 프로그래밍 및 독출을 도시한 것이다. LM New 코드는 LM 코드와 유사하나 위에 기술된 단점이 없다. 도 9a는 각 메모리 셀이 LM New 코드를 사용하여 2비트의 데이터를 저장할 때 4상태 메모리 어레이의 임계 전압 분포들을 도시한 것이다. LM New 코드는 "NON-VOLATILE MEMORY AND CONTROL WITH IMPROVED PARTIAL PAGE PROGRAM CAPABILITY" 명칭으로 Li 등에 의해 2005년 10월 27일 출원된 미국특허출원공보 2005-0237814 A1에 개시되어 있다. 코드는 상태들 "B" 및 "C"에 대한 논리 코딩이 상호교환되는 점에서 도 8a에 도시된 LM 코드와는 다르다. 이에 따라, "U"에 대한 (상위 비트, 하위비트)는 (1,1)이고 "A"에 대해서는 (0,1)이고 "B"에 대해선 (1,0)이고 "C"에 대해선 (0,0)이다. 이 코딩은 하위 비트가 "0"에 있을 때 부분적으로 채워지지 않은 상위 페이지가 "B" 상태로 현재 프로그램되기 때문에 위에 기술된 LM 코드에서 부분적 페이지 프로그래밍의 문제를 피한다. 부분적으로 채워지지 않은 부분의 후속되는 프로그래밍은 (1,0)에서 (0,0) 논리 상태로 프로그래밍이 되게 할 것이며, 이것은 "B"에서 "C"상태로 프로그래밍하는 것에 대응한다.
도 9b는 LM New 코드를 사용한 현존의 2-패스 프로그래밍 방법에서 하위 페이지 프로그래밍을 도시한 것이다. 고장 내성 LM New 코드는 임의의 중간 상태들을 거쳐 천이하는 임의의 상위 페이지 프로그래밍을 근본적으로 회피한다. 이에 따라, 제1 패스 하위 페이지 프로그래밍은 DA 이상이지만 DC 이하인 프로그램된 임계 전압으로 (x,0)에 의해 지정된 "중간" 상태로 "프로그램되지 않은" 메모리 상태 "U"를 프로그래밍함으로써 나타내어지는 바와 같이 어떤 중간 상태 (x,0)으로 논리 상태 (1,1)의 천이들을 갖는다.
도 9c는 LM New 코드를 사용한 현존의 2-패스 프로그래밍 방법에서 상위 페이지 프로그래밍을 도시한 것이다. 상위 페이지 비트를 "0"으로 프로그래밍하는 제2 패스에서, 하위 페이지 비트가 "1"에 있다면, 논리 상태 (1,1)은 "프로그램되지 않은" 메모리 상태 "U"를 "A"로 프로그램함으로써 나타내어지는 바와 같이 (0,1)로 천이한다. 하위 페이지 비트가 "0"에 있다면, 논리 상태 (0,0)은 "중간" 상태에서 "C"로 프로그래밍함으로써 얻어진다. 유사하게, 하위 페이지가 "0"으로 프로그램된 동안, 상위 페이지가 "1" 상태에 있어야 할 것이라면, "중간" 상태를 "B"로 프로그래밍함으로써 나타내어지는 바와 같이 "중간" 상태에서 (1,0)로의 천이를 요구할 것이다.
도 9d는 LM New 코드로 엔코딩된 4상태 메모리의 하위 비트를 식별하는데 요구되는 독출 작동을 도시한 것이다. 여기에서는 LM 코드에 대한 경우에서와 같이 동일한 고찰이 적용된다. 먼저 LM 플래그가 독출될 수 있는지를 판정하기 위해 readB 작동이 수행된다. 그러하다면, 상위 페이지는 프로그램되어 있으며 readB 작동은 하위 페이지 데이터를 정확하게 내어줄 것이다. 반면, 상위 페이지가 아직 프 로그램되지 않았다면, 하위 페이지 데이터는 readA 작동에 의해 독출될 것이다.
도 9e는 LM New 코드로 엔코딩된 4상태 메모리의 상위 비트를 식별하는데 요구되는 독출 작동을 도시한 것이다. 도면으로부터 명백한 바와 같이, 상위 페이지 독출은 각각 경계 임계 전압들 DA, DB, DC에 관하여, readA, readB, 및 readC의 3-패스 독출을 요구할 것이다. 상위 페이지의 디코딩은 위에 LM 코드에 대한 LM 플래그에 관하여 기술된 것과 동일한 고찰을 갖는다.
예로서 4상태 메모리에 대해 위에 다양한 코드들의 논의는 프로그램된 임계 전압을 경계 임계 전압 DB에 관하여 비교하는 "readB"에서처럼 독출작동이 단일 감지 패스를 수반할 수 있음을 보여준다. readB 작동은 종래의 그레이 코드 하에 상위 페이지를 독출하거나 LM 코드 하에 하위 페이지를 독출하거나 LM New 코드 하에 하위 페이지를 독출하는데 적용할 수 있다.
독출 작동은 종래의 그레이 코드 하에 하위 페이지를 독출하거나 LM 코드 하에 상위 페이지를 독출함에 있어 readA 및 readC에서처럼 2-패스 독출을 수반할 수도 있다.
독출 작동은 LM 코드 하에 상위 페이지를 독출함에 있어 readA, readB, readC에서처럼 3-패스 독출을 수반할 수도 있다.
도 10은 기술된 메모리를 감지하는데 적합한 도 6a에 도시된 감지 모듈을 보다 상세히 개략적으로 도시한 것이다. 감지 모듈(480)은 결합된 비트라인(36)을 통해 NAND 체인(50) 내 메모리 셀의 전도 전류를 감지한다. 비트라인, 감지 증폭 기(600) 혹은 판독 버스(499)에 선택적으로 결합될 수 있는 감지 노드(481)를 구비한다. 초기에, 분리 트랜지스터(482)는 신호(BLS)에 의해 활성화되었을 때 비트라인(36)을 감지 노드(481)에 연결한다. 감지 증폭기(600)는 감지 노드(481)를 감지한다. 감지 증폭기는 프리차지/클램프 회로(640), 셀 전류 판별기(650) 및 래치(660)를 포함한다.
감지 모듈(480)은 NAND 체인 내 선택된 메모리 셀의 전도 전류가 감지될 수 있게 한다. 감지에 앞서, 선택된 메모리 셀의 게이트들에의 전압들은 적합한 워드라인들 및 비트라인을 통해 설정되어야 한다. 후술하는 바와 같이, 프리차지 작동은 비선택된 워드라인을 전압(Vread)으로 충전하고 이어서 선택된 워드라인을 고찰 하의 주어진 메모리 상태에 대해 소정의 임계 전압(VT(i))으로 충전하는 것부터 시작한다. 이어서, 프리차지 회로(640)는 비트라인 전압을 감지에 적합한 소정의 드레인 전압에 이르게 한다. 이것은 소스-드레인 전도 전류가 NAND 체인(50) 내 선택된 메모리 셀에서 흐르게 할 것이며, 이는 결합된 비트라인(36)을 통해 NAND 체인의 채널로부터 검출된다. 전도 전류는 메모리 셀에 프로그램된 전하와 메모리 셀의 소스와 드레인간 공칭 전압차가 존재할 때 인가된 VT(i)와의 함수이다.
VT(i) 전압이 안정적일 때, 선택된 메모리 셀의 전도 전류 혹은 프로그램된 임계 전압은 신호(XXL)에 의해 게이트된 트랜지스터(630)을 통해 결합된 비트라인(36)을 통해 감지될 수 있다. 셀 전류 판별기(650)는 전류 레벨들의 판별기 혹은 비교기로서 작용한다. 이것은 메모리 셀에 전도 전류를 감지하기 위해 감지 노드에 결합된다. 감지는 신호(HHL)에 의해 제어되는 트랜지스터(632)에 의해 프리차지가 차단되었을 때 시작한다. 전도 전류는 셀 전류 판별기(650) 내 기준 정전용량을 방전시킬 것이다. 소정의 방전기간은 신호(XXL)가 트랜지스터(630)을 턴 오프 함으로써 셀이 분리될 때 종료한다. 감지된 전도 전류의 크기는 이 기간의 끝에서 기준 커패시터의 전압 방전량에 의해 반영되며 이 결과는 스트로브 신호(STB)에 의해 제어될 때 래치(660) 내에 래치된다. 셀 전류 판별기(650)는 셀의 전도 전류가 주어진 경계 전류값 I0(j)보다 큰지 아니면 작은지를 효과적으로 판정한다. 크다면, 래치(660)는 신호 IVN=1(HIGH)에 의해 소정의 상태로 설정된다.
풀-다운(pull-down) 회로(486)는 래치(660)가 신호(INV)를 HIGH로 설정하는 것에 응하여 활성화된다. 이것은 감지 노드(481)를 풀-다운할 것이며 따라서 연결된 비트라인(36)을 접지 전압으로 풀-다운할 것이다. 이것은 소스와 드레인간에 어떠한 전압차도 없을 것이기 때문에 제어 게이트 전압과는 무관하게 메모리 셀(10)에 전도 전류 흐름을 금지할 것이다.
일반적으로, 대응하는 수의 복수-패스 감지 모듈들(480)에 의해 작동되는 메모리 셀들의 페이지가 있을 것이다. 페이지 제어기(498)는 제어 및 타이밍 신호들을 감지 모듈들 각각에 공급한다. 페이지 제어기(498)는 소정 수의 패스들(j=1 내지 N)을 통해 복수-패스 감지 모듈(480)의 각각을 사이클링하며 또한 각 패스에 있어 소정의 경계 전류값(I0(j))을 공급한다. 이 기술에 공지된 바와 같이, 분할 전류값은 경계 임계 전압, 혹은 감지를 위한 기간으로서 구현될 수 있다. 마지막 패스 후에, 페이지 제어기(498)는 신호(NCO)로 전송 게이트(488)가 판독 버스(499)에 감지된 데이터로서 감지 노드(481)의 상태를 독출할 수 있게 한다. 결국, 감지 데이터의 페이지는 모든 복수-패스 모듈들(480)로부터 판독될 것이다. 유사한 감지 모듈들이 "IMPROVED MEMORY SENSING CIRCUIT AND METHOD FOR LOW VOLTAGE OPERATION" 명칭으로 Cernea 등에 의해 2005년 8월 4일 미국특허공보 2005-0169082-A1에 개시되어 있다. 미국특허공보 2005-0169082-A1 전체 개시된 바를 참조로 여기 포함시킨다.
스마트 시간-절약 프로그램 검증
비휘발성 메모리들의 수행에서 중요한 면은 프로그래밍 속도이다. 이 절은 복수-상태 비휘발성 메모리들의 프로그래밍 수행을 향상시키는 방법을 논한다. 구체적으로, 향상된 프로그래밍 작동은 시간 절약 프로그램 검증에 의해 구현된다.
신속 패스 기입 (" QPW ")
바람직한 프로그램 작동은 "신속 패스 기입(혹은 "QPW")라고 하며, 이것은 미국특허 6,643,188에 개시되어 있으며, 그 전체를 참조로 여기 포함시킨다.
메모리를 프로그래밍을 함에 있어 목적은 데이터를 신속하게, 그러나 정확하게 기입하는 것이다. 바이너리 메모리에서, 2개의 메모리 상태들간을 구별하기 위해서는 한 경계 임계 레벨을 사용하는 것만이 필요하다. 메모리 셀이 경계 임계 레벨 이상의 임계값으로 프로그램될 때 이것은 "프로그램된" 상태에 있는 것으로 간 주되고, 그렇지 않다면 "프로그램되지 않은" 상태에 있는 것이다. 대안적으로, 주어진 게이트 전압에 대해서, 덜 프로그램된 셀은 더 많은 전도 전류를 가질 것이다. 이에 따라, 경계 임계 전압이 메모리 셀의 게이트에 인가될 때, 대응하는 경계 전도 전류가 있게 될 것이다. 셀이 경계 전도 전류보다 큰 전도 전류를 갖는다면, 프로그램되지 않은 상태에 있는 것으로 간주되고, 그렇지 않다면 프로그램된 상태에 있는 것이다.
복수-상태 메모리에서는, 각각의 중간 상태들에 있어서, 2개의 경계 임계 레벨들 사이에서 분리되기 때문에 상황은 더 복잡하다. 중간 상태로 프로그래밍할 때, 셀은 2개의 경계 레벨들 사이의 임계값으로 프로그램되어야 한다. 따라서, 이것은 제1 경계 레벨 이상에 놓여야 하지만 그 이상으로 너무 높게 놓이지 않아야 하며 그렇지 않다면 제2 경계 레벨을 벗어날 것이다. 이에 따라, 정확한 프로그래밍에 대한 필요성이 있다. 메모리 셀들의 모집단을 프로그래밍하는 것에 관하여, 이것은 셀 클러스터들의 모집단을 경계 레벨들 사이 내에 촘촘히 갖는 것과 매한가지이다(도 7-8 참조). 프로그래밍함에 있어 어떠한 부정확성들이든 주어진 상태의 분포가 이의 경계 레벨들을 넘어 잘못 퍼지게 할 것이다. 분포가 한계 내에 있지만 한계까지 퍼져 있을지라도, 프로그램 교란 혹은 다른 환경적 영향들에 기인하여 오류가 나기 쉬울 것이다. 이 문제는 상태들의 수가 증가함에 따라, 혹은 가용 임계 윈도우가 감소될 때, 혹은 둘 다의 경우에 악화된다.
상태 분포를 엄밀하게 하는 한 기술은 동일 데이터를 복수회 프로그래밍하는 것이다. 예는 참조로 여기 포함시키는 미국특허 6,738,289에 기술된 개략-상세 프 로그래밍 방법이다.
도 11은 소정의 프로그램된 메모리 상태를 가진 메모리 셀들의 2개의 분포들을 도시한 것으로, 더 퍼진 분포는 VL 레벨에서 검증된 단일-패스 프로그래밍에 의해 생성되며 보다 좁혀진 분포는 제2 패스를 VH 레벨에서 검증하는 2-패스 프로그래밍에 의해 생성된다. 제1 패스에서, 셀들은 분포(1301)를 생성하는 제1의 저 검증 레벨 VL를 사용하여 프로그래밍 파형(PW1)로 기입되었다. 이어서 프로그래밍 파형은 제2 패스를 위해서 낮은 값에서 다시 시작한다. 제2 패스에서, 프로그래밍 파형(PW2)은 이것을 분포(1303)로 옮기기 위해서 제2의 고 검증 레벨(VH)을 사용한다. 이것은 제1 패스에서 셀들을 대략적 분포에 놓여지게 하고 이어서 제2 패스에서 더 좁혀지게 한다.
도 12는 2-패스 프로그래밍 파형의 예를 도시한 것이다. 각 프로그래밍 펄스 사이에는 마지막 프로그래밍 펄스 후에 메모리 셀의 상태를 감지하기 위한 보다 작은 게이트 전압 레벨이 있다. 제1 계단 PW1(1401)는 저 검증 레벨(VL)을 사용하며, PW2는 고 검증 레벨(VH)를 사용한다. 제2 패스 PW2(1403))은 미국특허 6,738,289에 기술된 바와 같이, 작은 스텝 크기를 사용할 수 있는데, 검증 레벨들이 서로 상이한 것을 제외하곤, 프로세스들은 동일하다. 이 방법의 단점은 프로그래밍 파형이 1401을 실행하고 1403부터 다시 시작하는 전체 계단들 둘 다를 거쳐야 하는 두 패스들을 각 프로그래밍 시퀀스가 필요로 한다는 것이다.
도 13은 2-패스 프로그래밍 작동에 대한 검증 작동에서 감지하기 위한 타이밍도이다. 먼저, 워드라인(WL)이 프리차지된다. 이에 이어 비트라인들(BL)을 프리 차지한다. 프리차지된 전압들이 안정하게 되었을 때, 제1 스트로브(STB)는 메모리 셀들의 고 전도상태들을 감지하고 이들을 래치할 것이다. 이들 고 전도상태들의 비트라인들은 이들이 후속 감지에 대해 소스 바이어스 오류들을 야기하지 못하게 접지에 래치된다. 비트라인들에 전압들이 안정상태로 복구된 후에, 제2 스트로브(STB)에서 메모리 셀들이 감지된다. 그 후에, 워드라인은 방전되고 다음 프로그래밍 펄스에 대해 셋업할 준비를 한다. 감지된 데이터는 SCAN 신호가 어써트(asserted)되었을 때 데이터 래치들에 이송된다. 2 패스-프로그래밍 작동에서, 검증 작동은 제1 패스동안에 WL을 VL에 설정되게 하고 이어서 제2 패스 동안에 VH에 설정되게 한다.
기입은 단일 계단의 프로그래밍 펄스들에 의한 단일 패스를 사용하는 것이 가능하였다면 분포가 저 검증(VL)에 기초하여 초기 프로그래밍 국면에 관계되어 보다 신속하게 실행될 수도 있을 것이지만 일단 이 초기 레벨에 도달되면 프로세스를 늦출 수 있어 고 검증 VH를 사용하여 분포를 분명하게 한다. 이것은 프로그래밍 파형에 대한 단일 계단 시퀀스로 프로그램하기 위해 비트라인 바이어스를 사용하는 "신속 패스 기입"을 통해 달성될 수 있다. 이 알고리즘은 2-패스 기입과 유사한 효과를 달성할 수 있고 미국특허 6,643,188에 보다 상세히 기술되어 있다.
도 14는 신속 패스 기입의 단일-패스 프로그래밍 파형을 도시한 것이다. 프로그래밍 파형 QPW(1501)은 검증 작동이 VL 및 VH 레벨 둘 다에서 수행되는 것을 제외하곤, 2-패스 알고리즘의 제1 국면과 유사하다(각 프로그래밍 펄스 사이에 작은 2-스텝의 펄스를 참조). 그러나, VL에서 검증이 일단 행해지면, 계단 파형을 다 시 시작하기보다는, 계단을 계속하는데, 그러나 셀들이 VH에서 검증할 때까지 계속됨에 따라 비트라인 전압은 상승되어 프로그래밍 레이트를 느려지게 한다. 이것은 프로그램/검증 사이클들을 현저하게 단축시킬 뿐만 아니라 프로그래밍 파형의 펄스들을 단조로 감소하지 않게 한다.
도 15는 1-패스 QPW 프로그래밍 작동에 대한 검증 작동에서 감지하기 위한 타이밍도이다. 먼저, 워드라인(WL)이 VL까지 프리차지된다. 이에 이어 비트라인들(BL)을 프리차지한다. 프리차지된 전압들이 안정하게 되었을 때, VL 스트로브(STB)는 메모리 셀들을 감지하여 이들을 래치할 것이다. 감지 VL 데이터는 제1 SCAN 신호가 어써트되었을 때 데이터 래치들에 전송된다. VL에서 성공적으로 검증된 셀들은 이들의 비트라인들을 프로그래밍을 늦추게 될 전압에 설정되게 한다. 이어서 워드라인은 레벨 VH까지 상승된다. 프리차지된 전압들이 안정하게 된 후에, 제1 VH 스트로브(STB)는 메모리 셀들을 감지할 것이며 메모리 셀들의 고 전도상태들을 확인하고 이들을 래치할 것이다. 이들 고 전도 상태들의 비트라인들은 이들이 후속 감지에 대해 소스 바이어스 오류들을 야기하지 못하게 접지에 래치된다. 비트라인들에 전압들이 안정 상태로 복구된 후에, 메모리 셀들은 제2 VH 스트로브(STB)에서 감지된다. 그 후에, 워드라인은 방전되며 다음 프로그래밍 펄스에 대해 셋업할 준비를 한다. 감지된 VH 데이터는 제2 SCAN 신호가 어써트되었을 때 데이터 래치들에 이송된다.
스마트 신속 패스 기입 (" SQPW ")
현 신속 패스 기입(QPW) 검증 방법은 2개의 개별적인 개개의 VL 및 VH 검증을 한 검증 시퀀스로 결합한다. 이 방법에서 WL은 방전하고 다시 충전함이 없이 동일 검증 시퀀스 내에서 VL에서 VH로 변하고 있고, 그럼으로써 도 12 및 도 13에 관련하여 기술된 2-패스 프로그래밍 방법에 비해 시간을 절약한다. 그러나, 도 15로부터 알 수 있는 바와 같이, 각 검증 사이클은 VL 하위-사이클 및 VH 하위-사이클을 항시 포함한다.
본 발명에 따라서, 프로그램 검증 작동 동안 감지되는 메모리 셀들의 상태들에 따라, 검증 작동의 일부는 불필요한 것으로 인정되어 시간을 절약하기 위해 스킵된다. 바람직한 실시예에서, 병렬로 프로그램되고 2개의 메모리 상태들간을 분리하기 위한 소정의 임계 레벨에 관하여 검증하는 것을 수반하는 메모리 셀들의 그룹에 대한 프로그램 검증 작동에서, 검증 작동은 일련의 2개의 검증 하위-사이클을 포함하는데, 제1 하위-사이클은 주어진 임계 레벨 미만의 소정의 마진에서 제1 임계 레벨에 관하여 검증을 수행하며, 제2 하위-사이클은 주어진 임계 레벨과 동일한 제2 임계 레벨에 관하여 검증을 수행한다. 그러나, 종래의 경우들과는 달리, 제2 하위-사이클은 그룹의 어떠한 한 메모리 셀이 제1 임계를 통과한 것으로 검증될 때까지 수행되지 않는다.
바람직한 실시예에서, "1-비트-패스"("OBP")라고 하는 작동은 그룹의 임의의 한 메모리 셀이 제1 임계 레벨을 지나 프로그램되었는지의 경우에 대해 체크하기 위해 제1 하위-사이클의 끝에서 수행된다. 이 경우, 후속의 검증 사이클들에서처럼 제2 하위-사이클이 추가될 것이다. 또한, 후속의 검증 사이클들에서 OBP 작동은 수 행되지 않는다. 도 6d를 참조하면, 메모리 셀들의 페이지가 병렬로 작동되게 작용되게 작용하는 독출/기입 스택들(490)의 각각은 감지 증폭기(212)에서 감지된 데이터를 일련으로 래치(520)에 축적되게 할 것이다. 프로그램된 상태가 제1 임계 레벨 미만의 임계 레벨을 가질 때, 이것은 논리 "0"에 있다. 감지된 상태 중 어느 하나가 제1 임계 레벨이 통과되었을 때, 이것은 논리 "1"에 있다. 따라서, OBP 작동은 래치가 값 "0"을 갖고 있는지 여부를 알기 위해서 단지 전송의 끝에서 체크해야 한다. "0"에 있다면, 검증 사이클은 계속하여 제2 하위-사이클을 스킵한다. "0"이 아닌 것이 일단 검출되면, 제2 하위-사이클이 추가되고, 후속의 검증 사이클에서, OBP 작동은 더 이상 수행되지 않는다.
도 16은 본 발명에 따라, 개선된 프로그램 검증 작동에 대한 흐름도이다.
단계 710: 병렬로 프로그램하기 위해 메모리 셀들의 그룹을 선택한다.
프로그램 사이클
단계 712: 그룹에 공통되는 워드라인에 적합한 프로그래밍 펄스를 인가한다.
제1 임계에 대한 제1 검증 하위-사이클
단계 720: 프로그램된 셀들이 제2 임계 전압에 관하여 검증되고 있을 때, 제2 임계 전압 미만의 소정의 마진에서 워드라인을 제1 임계 전압까지 프리차지한다.
단계 722: 그룹에 연관된 비트라인들을, 감지하기에 적합한 전압들까지 프리차지한다.
단계 724: 메모리 셀들의 그룹을 병렬로 감지한다.
단계 726: 제1 임계 전압에 관하여 임의의 셀이 성공적으로 검증되었다면(즉, "1-비트 패스"에 대해 체크), 이어서 단계 730에서 제2 검증 하위-사이클로 진행하고, 그렇지 않으면 제2 하위-사이클을 스킵하고 단계 712에서 다음 프로그램 펄스로 진행한다.
제2 임계에 관한 제2 검증 하위-사이클
단계 730: 프로그래밍을 늦추기 위해서, 검증된 셀의 비트라인 전압을 수정한다.
단계 740: 감지가 제2 임계 전압에 관하여 수행될 이 제2 임계전압까지 워드라인을 프리차지한다.
단계 742: 메모리 셀들의 그룹을 병렬로 감지한다.
단계 744: 제2 임계 전압에 관하여 임의의 셀이 성공적으로 검증되었다면, 단계 750으로 진행하고, 그렇지 않으면 단계 712에서 다음 프로그램 펄스로 진행한다.
단계 750: 제2 임계에 관하여 검증될 필요가 있는 그룹 내 모든 셀들이 성공적으로 검증되었다면, 단계 760으로 진행하고 그렇지 않다면 단계 752로 진행한다.
단계 752: 지금 검증된 셀이 프로그램되지 못하게 하고 단계 712에서 다음 프로그램 펄스로 진행한다.
단계 760: 프로그래밍은 제2 임계 전압에 대한 검증에 관하여 행해진다.
여기서 중요한 특징은 제1 VL 검증 하위-사이클의 끝에서, 그룹에 어떠한 셀도 VL을 통과하지 않는다면, 제2 VH 감증 하위-사이클은 불필요할 것이라는 것이다. VH 데이터에 대해 감지, 스트로브, 및 스캔하는 시간을 낭비할 필요성이 없다. 이에 따라, 제2 VH 검증 하위-사이클은 그룹 내 어떠한 셀도 VL을 통과하지 않는 한 스킵되고, 그럼으로써 얼마간의 시간 절약을 실현한다. 일반적으로, 메모리 셀이 더 많은 레벨로 분할될수록, 정밀 프로그래밍에 대해 더 요구될 것이고, 본 SQPW 검증 방법은 훨씬 더 이익이 될 것이다.
바람직한 실시예에서, 본 SQPW 검증은 VL 데이터를 감지하고 스트로브한 후에 VL을 통과하는 임의의 비트를 검출하기 위해 1-비트-패스(OBP) 스캔 작동을 사용한다. 어떠한 비트도 VL을 통과하지 않는다면, 직접 다음 프로그램 펄스로 갈 것이다. 임의의 비트가 VL을 통과한다면, 정규 VL 스캔으로 되돌아가 나머지를 정규 QPW처럼 행할 것이다. 다음 검증 펄스에서, OBP 스캔 작동은 스킵될 것이다.
도 17은 임의의 비트가 VL을 통과하기 전에 SQPW 검증에 대한 타이밍도이다. 이것은 SPQW 검증의 단축된 사이클 현시로서 간주될 수 있고 셀들의 그룹 내 어떠한 비트도 VL을 통과하지 않았을 땐 언제나 적용할 수 있다. 이것은 근본적으로 도 15에 도시된 QPW의 VL 하위-사이클이지만 임의의 한 비트가 VL를 통과하였는지 아니면 (OBP)스캔 작동을 통과하였는지의 판정이 추가된다. OBP 스캔 작동은 VL 하위-사이클의 끝에서 그리고 SCAN 신호에 대한 OBP 파형에 의해 보인 바와 같이 VH 하위-사이클의 시작에서 행해진다. 이것은 근본적으로 병렬로 프로그램되는 셀들의 그룹에 대한 VL에 관한 감지 결과를 체크함으로써 임의의 한 비트가 VL를 통과하는 지를 검출한다.
도 17에 도시된 단축된 사이클에 대한 시퀀스는 다음과 같다.
국면 1 : 선택된 워드라인(WL)을 VL까지 프리차지한다.
국면 2: 비트라인들(BL)을 감지에 적합한 전압까지 프리차지한다.
국면 3 : 감지하고 STB를 스트로브한다(VL 스트로브).
국면 4: 비트라인들의 전압들이 복구된 후에, 워드라인(WL)의 전압을 VL에서 VH로 변경하고, 임의의 한 비트가 VL에서 검증되었는지를 판정하기 위해 OBP(1-비트 패스)를 수행한다.
OBP 스캔 작동이 어떠한 비트도 VL을 통과하지 않은 것으로 판정한다면, 단축 사이클에 이어 워드라인을 방전하고 다음 프로그래밍 펄스로 이어진다. 이 단축 사이클에서 임의의 비트가 VL을 통과한다면, VH 레벨에서의 검증도 갖는 완전 사이클이 되도록 사이클이 확장될 것이다.
도 18은 비트가 VL을 통과하는 첫번째 경우가 지금 발생한 경우 SQPW 검증에 대한 타이밍도이다. 이것은 SPQW 검증의 확장된 사이클 현시로서 간주될 수 있고 셀들의 그룹 내 비트가 VL 검증을 통과하는 첫 번째 발생에 적용할 수 있다. 이것은 근본적으로 VL 하위-사이클이며 이에 이어 OBP 스캔 작동이 이어지고 도 15에 도시된 QPW의 VH 하위-사이클로 더욱 확장된다.
도 18에 도시된 확장된 사이클에 대한 시퀀스는 다음과 같다.
국면들 1-4: 도 17에 도시된 단축 사이클의 것과 동일하다.
국면 5: 감지된 VL 데이터를 데이터 래치들에 전송한다(VL SCAN). 국면 4에 서 시작된 WL 충전이 비교적 긴 시간이 걸리기 때문에, 시간을 절약하기 위해서 동일 검증 시퀀스에서 OBP가 임의의 비트가 VL을 통과한 것을 검출한 직후에 VL SCAN을 수행하는 것이 바람직하다.
국면 6: 감지 및 스트로브를 행한다(VH 제1 스트로브). 바람직한 실시예에서, 이것은 고 전류 상태들이 후속 감지에 간섭하지 않도록 턴 오프 될 수 있도록 이들 고 전류 상태를 검출하는 예비 신속 감지이다.
단계 7: 비트라인들(BL)이 적합한 전압들로 복구하게 한다.
국면 8: 감지 및 스트로브를 행한다(VH 제2 스트로브).
국면 9: 워드라인(WL)을 방전한다.
국면 10: 감지된 VH 데이터를 데이터 래치들에 전송한다(VH SCAN).
도 19는 적어도 한 비트가 VL을 통과한 직후에 사이클에 이어지는 후속 사이클들에서의 SQPW 검증에 대한 타이밍도이다. 이것은 SPQW 검증의 정규 사이클 현시로서 간주될 수 있고 셀들의 그룹 내 적어도 한 비트가 VL을 통과한 것에 이은 후속되는 검증 사이클들에서 적용할 수 있다. 이것은 근본적으로 도 15에 도시된 바와 같이 VL 하위-사이클 및 VH 하위-사이클 둘 다를 가진 정규 신속 패스 기입(Quick Pass Write) 검증이다.
국면 1 : 선택된 워드라인(WL)을 VL까지 프리차지 한다.
국면 2 : 비트라인(BL)을 감지에 적합한 전압까지 프리차지한다.
국면 3 : 감지 및 STB 스트로브를 행한다(VL 스트로브)
국면 4 : 워드라인(WL)의 전압을 VL에서 VH로 변경하고 감지된 VL 데이터를 데이터 래치들에 전송한다(VL SCAN).
국면 5: 감지 및 스트로브를 행한다(VH 제1 스트로브). 바람직한 실시예에서, 이것은 실질적으로 VH 레벨 미만의 고 전류 상태들이 후속 감지에 간섭하지 않도록 턴 오프 될 수 있도록 이들 고 전류 상태를 검출하기 위한 예비 신속 감지이다.
국면 6: 비트라인들(BL)이 적합한 전압들로 복구하게 한다.
국면 7: 감지하고 감지된 VH 데이터에 대해 스트로브를 행한다(VH 제2 스트로브).
국면 8: 워드라인(WL)을 방전한다.
국면 9: 감지된 VH 데이터를 데이터 래치들에 전송한다(VH SCAN).
SQPW 에 의한 A-B-C 검증의 예
SQWP에 대해 앞에서 기술한 것은 소정의 임계 레벨에 관한 프로그램 검증에 대한 것이다. 검증할 하나보다 더 많은 임계 레벨이 있더라도 근본적으로 동일 원리가 적용된다. 이것은 2-비트 혹은 3개의 임계 레벨들 VA, VB 및 VC에 의해 분리되는 4-상태 메모리와 같은 복수-레벨 메모리를 프로그래밍할 때 일어날 수 있다. 예를 들면, 도 9c에 도시된 바와 같이 LM New 코드를 사용한 상위 페이지의 프로그래밍은 3개의 모든 임계 레벨들에 관하여 프로그램 검증을 요구할 것이다.
바람직한 실시예에서, 3개의 임계 레벨들 각각에 관한 검증 작동은 저 워드라인(WL) 전압에서 고 워드라인(WL) 전압까지 연속적으로 감지하게 연속적으로 진 행할 수 있다. 프로그램 검증은 초기에는 단지 VA, 즉 VerifyA에 대한 것이다. 프로그래밍이 계속됨에 따라, 적어도 한 비트가 VA를 넘어 프로그램되었을 때, 프로그램 검증은 VerifyA 및 VerifyB 둘 다를 갖는다. 유사하게, 적어도 한 비트가 VB를 넘어 프로그램되었다면, 프로그램 검증은 VerifyA, VerifyB 및 VerifyB로 모든 3개의 임계 레벨들을 체크한다. 유사한 스마트 검증 방법들이 미국특허공보 2004-0109362-A1에 개시되어 있다. 이 공보의 전체 개시된 바는 참조로 여기 포함시킨다.
도 20a는 3개의 임계 레벨들을 수반하는 SQPW의 타이밍도이며 verifyA만을 수반하는 초기 프로그래밍 단계를 나타낸다. 임의의 비트가 VAL을 통과하기 전에, VL 및 VH를 각각 VAL 및 VAH로 교체한 도 17에 도시된 단축 사이클이 적용된다. OBP 작동 후에 한 비트가 VAL을 통과하는 첫 번째 경우에서, 시퀀스는 도 18에 도시된 확장된 사이클과 동일하다. 그 후에, 도 19의 정규 사이클이 적용된다. 시간 SQPW 절약들은 단축 사이클이 유효할 때일 것이며, 이것은 단축 사이클 횟수(정규 사이클 기간에서 단축 사이클의 기간을 감한 것) 및 OBP와 VL 스캔 간에 스캔 시간 차이이다.
도 20b는 3개의 임계 레벨들을 수반하는 SQPW의 타이밍도이며 verifyA에 더하여 verifyB가 시작될 때 중간 프로그래밍 단계를 나타낸다. 이 단계에서 적어도 한 비트가 이미 VAL을 통과하였기 때문에, OBP 작동이 이 경우에 대해 체크할 필요성이 없다. VAL 및 VAH에서 감지는 단순히 도 19에 도시된 바와 같이 정규 QPW 검증 사이클에 따른다.
VBL에서 감지는 초기에는 도 17에 도시된 바와 같이 단축 사이클이 될 것이다. 다시, OBP 후에 임의의 비트가 VBL을 통과한다면, VB 검증은 도 18에 도시된 확장된 사이클과 유사하다. 또한, 다음 감지 사이클에서, 도 19의 것과 유사한 정규 사이클이 재개될 것이다. VB 레벨에서의 검증에 있어서의 시간 SQPW 절약들 및 낭비들은 VA에 대한 것과 유사한 방식으로 계산될 것이다.
도 20c는 3개의 임계 레벨들을 수반하는 SQPW의 타이밍도이며 verifyA 및 verifyB에 더하여 vefifyC가 시작될 때 최종 프로그래밍 단계를 나타낸다. 이 단계에서 적어도 한 비트는 이미 VAL을 통과하였기 때문에, OBP 작동이 이 경우에 대해 체크할 필요성은 없다. 다시, OBP 후에 임의의 비트가 VCL을 통과한다면, VC 검증은 도 18에 도시된 확장된 사이클과 유사하다. 또한, 다음 감지 사이클에서, 도 19의 것과 유사한 정규 사이클이 재개될 것이다. VC 레벨에서의 검증에 있어서의 시간 SQPW 절약들 및 낭비들은 임의의 비트가 VAL을 통과하기에 앞서, verifyA만을 수반하는 프로그램 검증의 초기 단계에 대한 것과 유사한 방식으로 계산될 것이다.
본 발명의 여러 면들이 어떤 실시예들에 관하여 기술되었으나, 첨부된 청구항들의 전체 범위 내에서 발명이 보호되게 한 것임을 알 것이다.

Claims (30)

  1. 경계 임계 전압에 관하여 메모리 셀들의 그룹을 병렬로 프로그램하는 방법에 있어서,
    (a) 프로그래밍 펄스를 메모리 셀들의 그룹에 인가하는 단계;
    (b) 상기 경계 임계 전압의 것보다 미만의 소정의 마진에서 제1 기준 임계 전압에 관하여 상기 그룹의 셀들을 검증하는 단계;
    (c) 상기 셀들 중 하나가 상기 제1 기준 임계 전압에 관하여 검증될 때까지 (a) 내지 (b)를 반복하는 단계;
    (d) 상기 제1 기준 임계 전압에 대해 검증된 메모리 셀에 대한 프로그래밍 셋업을 이들 셀들에 대한 후속의 프로그래밍을 늦추기 위해 수정하는 단계;
    (e) 프로그래밍 펄스를 상기 메모리 셀들의 그룹에 인가하는 단계;
    (f) 상기 경계 임계 전압의 것보다 미만의 소정의 마진에서 상기 제1 기준 임계 전압에 관하여 상기 그룹의 상기 셀들을 검증하는 단계;
    (g) 상기 제1 기준 임계 전압에 대해 검증된 메모리 셀에 대한 상기 프로그래밍 셋업을 이들 셀들에 대한 후속의 프로그래밍을 늦추기 위해 수정하는 단계;
    (h) 상기 경계 임계 전압에 대하여 상기 그룹의 상기 셀들을 검증하는 단계;
    (i) 상기 경계 임계 전압 에 대하여 검증된 메모리 셀의 추가적인 프로그래밍을 금지하는 단계; 및
    (j) 상기 그룹 내 모들 셀들이 상기 경계 임계 전압에 대하여 프로그램 검증 될 때까지 (e) 내지 (i)를 반복하는 단계를 포함하는, 메모리 셀 프로그래밍 방법.
  2. 제1항에 있어서, 연관된 비트라인들에 의해 상기 메모리 셀들의 그룹을 액세스하는 단계를 더 포함하고,
    프로그래밍 셋업을 수정하는 상기 단계는 상기 제1 기준 임계 전압에 대해 검증된 상기 셀의 상기 비트라인 상의 전압을 상기 프로그래밍을 늦추기 위해 상승시키는 것을 포함하는, 메모리 셀 프로그래밍 방법.
  3. 제1항에 있어서, 연관된 비트라인들에 의해 상기 메모리 셀들의 그룹을 액세스하는 단계;
    공급 전압을 제공하는 단계를 더 포함하고,
    메모리 셀의 추가적인 프로그램을 금지하는 상기 단계는 금지되지 않은 셀들이 이들의 비트라인들이 실질적으로 제로 전압에 있는 동안 상기 메모리 셀에 연관된 상기 비트라인들을 실질적으로 상기 공급 전압까지 상승시키는 단계를 포함하는, 메모리 셀 프로그래밍 방법.
  4. 제1항에 있어서, 상기 프로그래밍 펄스는 매 펄스에 단조로 증가하는, 메모리 셀 프로그래밍 방법.
  5. 제1항에 있어서, 상기 메모리 셀들의 그룹은 플래시 EEPROM의 일부인, 메모 리 셀 프로그래밍 방법.
  6. 제1항에 있어서, 상기 메모리 셀들의 그룹은 메모리 카드 내 구현되는, 메모리 셀 프로그래밍 방법.
  7. 경계 임계 전압에 대하여 메모리 셀들의 그룹을 병렬로 프로그램하는 방법에 있어서,
    프로그래밍 펄스를 인가하는 것과 상기 메모리 셀들의 그룹에 대한 상기 프로그램된 결과를 병렬로 검증하는 단계를 번갈아 행하는 단계를 포함하고,
    상기 검증단계는, 상기 경계 임계 전압의 것보다 미만의 소정의 마진에서 제1 기준 임계 전압에 대한 제1 검증;
    상기 제1 기준 임계 전압에 대하여 검증된 상기 셀의 상기 프로그래밍을 늦추는 단계;
    상기 경계 임계 전압에 대한 제2 검증; 및
    상기 경계 임계 전압에 대하여 검증된 상기 메모리 셀의 추가적인 프로그래밍을 금지하는 단계를 더 포함하고,
    상기 제2 검증은 상기 그룹의 상기 메모리 셀들 중 적어도 하나가 상기 제1 임계 전압에 대해서 검증될 때까지 스킵되는, 메모리 셀 프로그래밍 방법.
  8. 제7항에 있어서, 연관된 비트라인들에 의해 상기 메모리 셀들의 그룹을 액세 스하는 단계를 더 포함하고,
    프로그래밍 셋업을 수정하는 상기 단계는 상기 제1 기준 임계 전압에 대해 검증된 상기 셀의 상기 비트라인 상의 전압을 상기 프로그래밍을 늦추기 위해 상승시키는 것을 포함하는, 메모리 셀 프로그래밍 방법.
  9. 제7항에 있어서, 연관된 비트라인들에 의해 상기 메모리 셀들의 그룹을 액세스하는 단계;
    공급 전압을 제공하는 단계를 더 포함하고,
    메모리 셀의 추가적인 프로그래밍을 금지하는 상기 단계는 금지되지 않은 셀들이 이들의 비트라인들이 실질적으로 제로 전압에 있는 동안 상기 메모리 셀에 연관된 상기 비트라인들을 실질적으로 상기 공급 전압까지 상승시키는 단계를 포함하는, 메모리 셀 프로그래밍 방법.
  10. 제7항에 있어서, 상기 프로그래밍 펄스는 매 펄스에 단조로 증가하는, 메모리 셀 프로그래밍 방법.
  11. 제7항에 있어서, 상기 메모리 셀들의 그룹은 플래시 EEPROM의 일부인, 메모리 셀 프로그래밍 방법.
  12. 제7항에 있어서, 상기 메모리 셀들의 그룹은 메모리 카드 내 구현되는, 메모 리 셀 프로그래밍 방법.
  13. 제1항 내지 제12항 중 어느 한 항에 있어서, 개개의 메모리 셀들은 각각 두 상태들 중 한 상태로 프로그램가능하며 상기 경계 임계 전압은 상기 두 상태들을 분리하기 위한 것인, 메모리 셀 프로그래밍 방법.
  14. 제1항 내지 제12항 중 어느 한 항에 있어서, 개개의 메모리 셀들은 각각 2보다 더 많은 상태들 중 한 상태로 프로그램가능하며 상기 경계 임계 전압은 상기 2보다 더 많은 상태들을 분리하기 위한 복수의 경계 임계 전압 중 하나인, 메모리 셀 프로그래밍 방법.
  15. 제14항에 있어서, 상기 복수의 경계 임계 전압들 각각에 대해 상기 단계들을 반복하는 것을 더 포함하는, 메모리 셀 프로그래밍 방법.
  16. 비휘발성 메모리에 있어서,
    경계 임계 전압에 대해서 프로그램될 메모리 셀들의 어레이,
    메모리 셀들의 그룹에 프로그래밍 펄스를 인가하기 위한 프로그래밍 회로;
    상기 경계 임계 전압의 것보다 미만의 소정의 마진에서 제1 기준 임계 전압에 대하여 상기 그룹의 상기 셀들을 검증하는 제1 구성을 구비한 감지 회로;
    메모리 제어기;
    상기 제어기는 상기 제1 기준 임계 전압에 대해서 상기 셀들 중 하나가 검증될 때까지 상기 프로그래밍 회로의 작동과 상기 제1 구성을 구비한 상기 감지 회로의 작동을 번갈아 제어하며;
    상기 제1 기준 임계 전압에 대해 검증된 메모리 셀의 후속 프로그래밍을 늦추기 위한 프로그램 지체 회로;
    상기 경계 임계 전압에 대하여 검증된 메모리 셀의 추가적인 프로그래밍을 금지하기 위한 프로그램 금지 회로; 및
    상기 제어기는 상기 그룹 내 모든 셀들이 상기 경계 임계 전압에 대해서 프로그램 검증될 때까지 상기 제1 기준 임계 전압에 대해 상기 그룹의 상기 셀들을 검증하고 이어서 상기 경계 임계 전압에 대해 검증하기 위해 상기 프로그래밍 회로의 작동과 상기 감지 회로의 작동을 번갈아 제어하는 것을 포함하는, 비휘발성 메모리.
  17. 제16항에 있어서, 연관된 비트라인들에 의해 상기 메모리 셀들의 그룹을 액세스하는 것을 더 포함하고;
    프로그래밍 셋업을 수정하는 것은 상기 제1 기준 임계 전압에 대해 검증된 상기 셀의 상기 비트라인 상의 전압을 상기 프로그래밍을 늦추기 위해 상승시키는 것을 포함하는, 비휘발성 메모리.
  18. 제16항에 있어서, 연관된 비트라인들에 의해 상기 메모리 셀들의 그룹을 액세스하는 것을 더 포함하고;
    상기 프로그램 금지 회로는 금지되지 않은 셀들이 이들의 비트라인들이 실질적으로 제로 전압에 있는 동안, 금지된 상기 메모리 셀에 연관된 상기 비트라인을 실질적으로 공급 전압까지 상승시키는 것을 포함하는, 비휘발성 메모리.
  19. 제16항에 있어서, 상기 프로그래밍 펄스는 매 펄스에 단조로 증가하는, 비휘발성 메모리.
  20. 제16항에 있어서, 상기 메모리 셀들의 그룹은 플래시 EEPROM의 일부인, 비휘발성 메모리.
  21. 제16항에 있어서, 상기 메모리 셀들의 그룹은 메모리 카드 내 구현되는, 비휘발성 메모리.
  22. 비휘발성 메모리에 있어서,
    경계 임계 전압에 대해서 프로그램될 메모리 셀들의 어레이;
    메모리 셀들의 그룹에 프로그래밍 펄스를 인가하기 위한 프로그래밍 회로;
    상기 경계 임계 전압의 것보다 미만의 소정의 마진에서 제1 기준 임계 전압에 대하여 상기 그룹의 상기 셀들을 검증하는 제1 구성을 구비한 감지 회로;
    프로그래밍 펄스를 인가하는 것과 상기 메모리 셀들의 그룹에 대한 상기 프 로그램된 결과를 병렬로 검증하는 것을 번갈아 행하는 메모리 제어기를 포함하고,
    상기 검증은,
    상기 경계 임계 전압의 것보다 미만의 소정의 마진에서 제1 기준 임계 전압에 대한 제1 검증;
    상기 제1 기준 임계 전압에 대하여 검증된 상기 셀의 상기 프로그래밍을 늦추는 것과;
    상기 경계 임계 전압에 대한 제2 검증; 및
    상기 경계 임계 전압에 대하여 검증된 상기 메모리 셀의 추가적인 프로그래밍을 금지하는 것을 더 포함하고,
    상기 제2 검증은 상기 그룹의 상기 메모리 셀들 중 적어도 하나가 상기 제1 임계 전압에 대해서 검증될 때까지 스킵되는, 비휘발성 메모리.
  23. 제22항에 있어서, 연관된 비트라인들에 의해 상기 메모리 셀들의 그룹을 액세스하는 것을 더 포함하고;
    프로그래밍 셋업을 수정하는 것은 상기 제1 기준 임계 전압에 대해 검증된 상기 셀의 상기 비트라인 상의 전압을 상기 프로그래밍을 늦추기 위해 상승시키는 것을 포함하는, 비휘발성 메모리.
  24. 제22항에 있어서, 연관된 비트라인들에 의해 상기 메모리 셀들의 그룹을 액세스하는 것을 더 포함하고;
    상기 프로그램 금지 회로는 금지되지 않은 셀들이 이들의 비트라인들이 실질적으로 제로 전압에 있는 동안, 금지될 상기 메모리 셀에 연관된 상기 비트라인을 실질적으로 공급 전압까지 상승시키는 것을 포함하는, 비휘발성 메모리.
  25. 제22항에 있어서, 상기 프로그래밍 펄스는 매 펄스에 단조로 증가하는, 비휘발성 메모리.
  26. 제22항에 있어서, 상기 메모리 셀들의 그룹은 플래시 EEPROM의 일부인, 비휘발성 메모리.
  27. 제22항에 있어서, 상기 메모리 셀들의 그룹은 메모리 카드 내 구현되는, 비휘발성 메모리.
  28. 비휘발성 메모리에 있어서,
    경계 임계 전압에 대해서 프로그램될 메모리 셀들의 어레이,
    메모리 셀들의 그룹에 프로그래밍 펄스를 인가하기 위한 프로그래밍 회로;
    상기 경계 임계 전압의 것보다 미만의 소정의 마진에서 제1 기준 임계 전압에 대하여 상기 그룹의 상기 셀들을 검증하는 제1 구성을 구비한 감지 회로;
    프로그래밍 펄스를 인가하는 것과 상기 메모리 셀들의 그룹에 대한 상기 프로그램된 결과를 병렬로 검증하는 것을 번갈아 행하는 수단을 포함하고,
    상기 검증은,
    상기 경계 임계 전압의 것보다 미만의 소정의 마진에서 제1 기준 임계 전압에 대한 제1 검증;
    상기 제1 기준 임계 전압에 대하여 검증된 상기 셀의 상기 프로그래밍을 늦추는 것과;
    상기 경계 임계 전압에 대한 제2 검증; 및
    상기 경계 임계 전압에 대하여 검증된 상기 메모리 셀의 추가적인 프로그래밍을 금지하는 것을 더 포함하고,
    상기 제2 검증은 상기 그룹의 상기 메모리 셀들 중 적어도 하나가 상기 제1 임계 전압에 대해서 검증될 때까지 스킵되는, 비휘발성 메모리.
  29. 제16항 내지 제28항 중 어느 한 항에 있어서, 개개의 메모리 셀들은 각각 두 상태들 중 한 상태로 프로그램가능하며 상기 경계 임계 전압은 상기 두 상태들을 분리하기 위한 것인, 비휘발성 메모리.
  30. 제16항 내지 제28항 중 어느 한 항에 있어서, 개개의 메모리 셀들은 각각 2보다 더 많은 상태들 중 한 상태로 프로그램가능하며 상기 경계 임계 전압은 상기 2보다 더 많은 상태들을 분리하기 위한 복수의 경계 임계 전압 중 하나인, 비휘발성 메모리.
KR1020087015676A 2005-12-29 2006-12-27 비휘발성 메모리에서 향상된 프로그램-검증 작동을 위한방법 및 장치 KR101317625B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US11/323,596 US7224614B1 (en) 2005-12-29 2005-12-29 Methods for improved program-verify operations in non-volatile memories
US11/323,577 2005-12-29
US11/323,596 2005-12-29
US11/323,577 US7310255B2 (en) 2005-12-29 2005-12-29 Non-volatile memory with improved program-verify operations
PCT/US2006/062627 WO2007076512A2 (en) 2005-12-29 2006-12-27 Methods and device for improved program-verify operations in non-volatile memories

Publications (2)

Publication Number Publication Date
KR20080096645A KR20080096645A (ko) 2008-10-31
KR101317625B1 true KR101317625B1 (ko) 2013-10-10

Family

ID=38110643

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087015676A KR101317625B1 (ko) 2005-12-29 2006-12-27 비휘발성 메모리에서 향상된 프로그램-검증 작동을 위한방법 및 장치

Country Status (5)

Country Link
EP (1) EP1966802A2 (ko)
JP (1) JP4638544B2 (ko)
KR (1) KR101317625B1 (ko)
TW (1) TWI328231B (ko)
WO (1) WO2007076512A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11594293B2 (en) 2020-07-10 2023-02-28 Samsung Electronics Co., Ltd. Memory device with conditional skip of verify operation during write and operating method thereof

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7606076B2 (en) 2007-04-05 2009-10-20 Sandisk Corporation Sensing in non-volatile storage using pulldown to regulated source voltage to remove system noise
ITRM20080114A1 (it) * 2008-02-29 2009-09-01 Micron Technology Inc Compensazione della perdita di carica durante la programmazione di un dispositivo di memoria.
JP5172555B2 (ja) 2008-09-08 2013-03-27 株式会社東芝 半導体記憶装置
JP5193830B2 (ja) 2008-12-03 2013-05-08 株式会社東芝 不揮発性半導体メモリ
KR101005117B1 (ko) * 2009-01-23 2011-01-04 주식회사 하이닉스반도체 불휘발성 메모리 장치의 동작 방법
JP5039079B2 (ja) * 2009-03-23 2012-10-03 株式会社東芝 不揮発性半導体記憶装置
KR101554727B1 (ko) 2009-07-13 2015-09-23 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 프로그램 방법
US8223556B2 (en) * 2009-11-25 2012-07-17 Sandisk Technologies Inc. Programming non-volatile memory with a reduced number of verify operations
KR101633018B1 (ko) 2009-12-28 2016-06-24 삼성전자주식회사 플래시 메모리 장치 및 그것의 프로그램 방법
JP2011258289A (ja) * 2010-06-10 2011-12-22 Toshiba Corp メモリセルの閾値検出方法
KR101656384B1 (ko) * 2010-06-10 2016-09-12 삼성전자주식회사 불휘발성 메모리 장치의 데이터 기입 방법
JP5380506B2 (ja) * 2011-09-22 2014-01-08 株式会社東芝 不揮発性半導体記憶装置
JP2014053060A (ja) 2012-09-07 2014-03-20 Toshiba Corp 半導体記憶装置及びその制御方法
JP2014063551A (ja) 2012-09-21 2014-04-10 Toshiba Corp 半導体記憶装置
TWI514394B (zh) * 2013-08-27 2015-12-21 Toshiba Kk Semiconductor memory device and its control method
EP3891745B1 (en) * 2019-10-12 2023-09-06 Yangtze Memory Technologies Co., Ltd. Method of programming memory device and related memory device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050162916A1 (en) 2004-01-27 2005-07-28 Guterman Daniel C. Efficient verification for coarse/fine programming of non-volatile memory
US20050162923A1 (en) 2004-01-27 2005-07-28 Guterman Daniel C. Charge packet metering for coarse/fine programming of non-volatile memory
US20050248988A1 (en) 2004-05-05 2005-11-10 Guterman Daniel C Boosting to control programming of non-volatile memory

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3679544B2 (ja) * 1997-03-28 2005-08-03 三洋電機株式会社 不揮発性半導体メモリ装置
JP3977799B2 (ja) * 2003-12-09 2007-09-19 株式会社東芝 不揮発性半導体記憶装置
US7136304B2 (en) * 2002-10-29 2006-11-14 Saifun Semiconductor Ltd Method, system and circuit for programming a non-volatile memory array
US7170793B2 (en) * 2004-04-13 2007-01-30 Sandisk Corporation Programming inhibit for non-volatile memory
ITRM20050310A1 (it) * 2005-06-15 2006-12-16 Micron Technology Inc Convergenza a programmazione selettiva lenta in un dispositivo di memoria flash.

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050162916A1 (en) 2004-01-27 2005-07-28 Guterman Daniel C. Efficient verification for coarse/fine programming of non-volatile memory
US20050162923A1 (en) 2004-01-27 2005-07-28 Guterman Daniel C. Charge packet metering for coarse/fine programming of non-volatile memory
US20050248988A1 (en) 2004-05-05 2005-11-10 Guterman Daniel C Boosting to control programming of non-volatile memory

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11594293B2 (en) 2020-07-10 2023-02-28 Samsung Electronics Co., Ltd. Memory device with conditional skip of verify operation during write and operating method thereof

Also Published As

Publication number Publication date
EP1966802A2 (en) 2008-09-10
WO2007076512A3 (en) 2007-08-16
TWI328231B (en) 2010-08-01
JP2009522707A (ja) 2009-06-11
KR20080096645A (ko) 2008-10-31
JP4638544B2 (ja) 2011-02-23
TW200746151A (en) 2007-12-16
WO2007076512A2 (en) 2007-07-05

Similar Documents

Publication Publication Date Title
KR101317625B1 (ko) 비휘발성 메모리에서 향상된 프로그램-검증 작동을 위한방법 및 장치
US7310255B2 (en) Non-volatile memory with improved program-verify operations
US7224614B1 (en) Methods for improved program-verify operations in non-volatile memories
KR101197478B1 (ko) 파워 절약 독출 및 프로그램 검증 동작들을 구비한비휘발성 메모리 및 방법
KR101106976B1 (ko) 비휘발성 메모리의 복수-국면 프로그래밍에서의 데이터래치의 사용
KR101578812B1 (ko) 가장 빠른 및/또는 가장 느린 프로그래밍 비트를 무시하여 프로그램 검증이 감소된 비휘발성 메모리와 방법
US8300459B2 (en) Non-volatile memory and method for power-saving multi-pass sensing
US7447094B2 (en) Method for power-saving multi-pass sensing in non-volatile memory
KR20130125754A (ko) Nand 플래시 메모리에서 워드라인들의 고속 정착을 위한 기술
EP1966803A2 (en) Non-volatile memory operated on the basis of a two-step bit-line precharge operation and a two-pass sensing operation

Legal Events

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

Payment date: 20160921

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170919

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180903

Year of fee payment: 6