KR20070067011A - 비휘발성 메모리의 프로그램 제어를 위한 비트라인 조절방식의 접근법 - Google Patents

비휘발성 메모리의 프로그램 제어를 위한 비트라인 조절방식의 접근법 Download PDF

Info

Publication number
KR20070067011A
KR20070067011A KR1020067025631A KR20067025631A KR20070067011A KR 20070067011 A KR20070067011 A KR 20070067011A KR 1020067025631 A KR1020067025631 A KR 1020067025631A KR 20067025631 A KR20067025631 A KR 20067025631A KR 20070067011 A KR20070067011 A KR 20070067011A
Authority
KR
South Korea
Prior art keywords
voltage
programming
program
bit line
nonvolatile storage
Prior art date
Application number
KR1020067025631A
Other languages
English (en)
Other versions
KR100806327B1 (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 US10/839,806 external-priority patent/US7020026B2/en
Priority claimed from US10/839,764 external-priority patent/US7023733B2/en
Application filed by 샌디스크 코포레이션 filed Critical 샌디스크 코포레이션
Publication of KR20070067011A publication Critical patent/KR20070067011A/ko
Application granted granted Critical
Publication of KR100806327B1 publication Critical patent/KR100806327B1/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/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/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
    • 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
    • G11C16/12Programming voltage switching 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/24Bit-line control 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Read Only Memory (AREA)

Abstract

비휘발성 저장 장치 프로그래밍을 위한 시스템에서, 높은 정확성과 빠른 속도로 프로그래밍하는 기술을 제공한다. 일 실시예에서, 제 1 전압이 제 1 비휘발성 저장 소자에 공급되어 제 1 비휘발성 저장 소자를 금지한다. 제 1 프로그램 전압이 제 1 비휘발성 저장 소자에 인가된다. 예를 들어 프로그램 펄스는 제 1 비휘발성 저장 소자의 제어 게이트로 인가된다. 프로그램 펄스 동안, 비트 라인은 제 1 전압에서 제 2 전압으로 변경되며, 여기서 상기 제 2 전압은 제 1 비휘발성 저장 소자가 프로그램되도록 한다.

Description

비휘발성 메모리의 프로그램 제어를 위한 비트라인 조절 방식의 접근법{BITLINE GOVERNED APPROACH FOR PROGRAM CONTROL OF NON-VOLATILE MEMORY}
본 출원은 출원인 Daniel C. Guterman, Nima Mokhlesi 및 Yupin Fong, 대리인 Docket No.SAND-01028US0에 의해 "BOOSTING TO CONTROL PROGRAMMING OF NON-VOLATILE MEMORY"라는 명칭으로 본 출원과 동일자로 출원된 미국 특허출원 제 10/839,764호와 관계가 있으며, 상기 출원은 그 자체가 본 명세서에 참조로서 인용된다.
본 발명은 비휘발성 메모리의 프로그래밍을 위한 기술에 관한 것이다.
반도체 메모리 장치는 다양한 전자 장치에서 더욱더 일반적으로 사용되어 왔다. 예를 들어, 비휘발성 반도체 메모리는 셀룰러 전화기, 디지털 카메라, 개인 휴대정보 단말기, 휴대용 컴퓨터, 비-휴대용 컴퓨터 및 기타 장치에서 사용된다. 전자적으로 소거가능하고 프로그램가능한 판독 전용 메모리(Electrical Erasable Programmable Read Only Memory, EEPROM) 및 플래시 메모리가 가장 일반적인 비휴발성 반도체 메모리이다.
EEPROM과 플래시 메모리는 둘 다 반도체 기판의 채널 영역 상부에 위치하며 이 채널 영역으로부터 절연되는 플로팅 게이트(floating gate)를 이용한다. 플로팅 게이트는 소스와 드레인 영역 사이에 위치한다. 제어 게이트(control gate)는 플로팅 게이트 위에 제공되어 이로부터 절연된다. 트랜지스터의 문턱 전압(threshold voltage)은 플로팅 게이트 상에 유지되는 전하량에 의해 제어된다. 즉, 트랜지스터가 자신의 소스와 드레인 사이가 도통(conduction) 되도록 턴 온 되기 전에, 제어 게이트에 인가해야할 최소 전압 크기는, 플로팅 게이트 상의 전하 레벨에 의해 제어된다.
일부 EEPROM과 플래시 메모리 장치는 2개의 전하 범위를 저장하기 위해 사용되는 플로팅 게이트를 구비하고, 이에 따라 메모리 셀은 2개의 상태(소거된 상태와 프로그래밍된 상태) 사이에서 프로그래밍/소거될 수 있다. 모두 터널링된 상태의 EEPROM 또는 플래시 메모리 장치를 프로그래밍할 때, 일반적으로 제어 게이트에 프로그램 전압이 인가되고 비트 라인은 접지된다. 채널로부터 전자들이 플로팅 게이트로 주입된다. 전자들이 플로팅 게이트에 축적될 때, 플로팅 게이트는 음으로 대전되고 메모리 셀의 문턱 전압은 메모리 셀이 프로그래밍 상태가 되도록 증가한다. 프로그래밍에 대한 더 많은 정보는 "Self Boosting Technique"란 제목으로 2003년 3월 5일에 출원된 미국 특허출원 제10/379,608호와 "Detecting Over Programmed Memory"라는 제목으로 2003년 7월 29일에 출원된 미국 특허출원 제10/629,068호에서 찾을 수 있으며, 이들은 모두 본 명세서에 참조 문헌으로서 인용된다.
금지 전압 범위에 의해 구별되는 다수의, 특징적인 문턱 전압 범위를 인식함으로써 멀티-스테이트(multi-state) 플래시 메모리 셀이 실행된다. 각각 별개의 문턱 전압 범위는 데이터 비트 세트를 위해 미리 결정된 값에 상응한다.
일반적으로, 제어 게이트에 인가되는 프로그램 전압은 일련의 펄스로서 인가된다. 펄스의 크기는 미리 결정된 계단 크기(예를 들어, 0.2V)만큼 각 연속된 펄스에서 증가한다. 펄스 사이의 주기에 검증 동작(verify operation)이 수행된다. 프로그램 가능한 상태의 수가 증가하면, 검증 동작의 수도 증가하고 더 많은 시간이 소요된다. 검증을 위한 시간의 부담을 줄이는 하나의 방법은 "Smart Verify for Muliti-State Memories"라는 제목으로 2002년 12월 5일에 출원된 미국 특허출원 제10/314,055호에 개시된 과정과 같이 더 효율적인 검증 동작을 사용하는 것이며, 이 출원은 본 명세서에 참조로서 인용된다. 그러나, 소비자들은 가능한 더 빨리 프로그래밍하는 메모리 장치를 요구한다. 예를 들어, 플래시 메모리에 이미지를 저장하는 디지털 카메라의 사용자는 사진이 넘어가는 동안 기다리는 것을 원하지 않는다.
멀티-스테이트 메모리 셀에 적당한 데이터 저장 공간을 확보하기 위해서는 상당한 속도로 프로그래밍하는 것 외에도, 멀티-스테이트 메모리 셀의 다수 범위의 문턱 전압 레벨이 충분한 마진(sufficient margin)을 갖고 구분되어야 하며, 이로 인해 메모리 셀의 레벨은 분명하게 프로그램되고 판독될 수 있다. 게다가, 조밀한 문턱 전압 분포가 권장된다. 지금까지는 조밀한 문턱 전압 분포를 획득하기 위해 작은 프로그램 스텝(step)을 사용하였으나, 그로 인해 셀에 문턱 전압을 프로그래밍하는 것이 더욱 느려졌다. 조밀한 임계 분포가 요구될수록, 스텝은 작아지고 프로그래밍 프로세스는 늦어진다.
프로그래밍 프로세스 속도가 유지되면서 조밀한 임계 분포를 획득할 수 있는 하나의 방법은 두 가지 과정의 프로그래밍 프로세스를 사용하는 것이다. 제 1 과정 인, 거침(coarse) 프로그래밍 과정에서는 좀 더 빠른 속도로 문턱 전압의 상승을 시도하며 조밀한 임계 분포를 획득하기 위한 주의는 별로 기울이지 않는다. 제 2 과정인, 미세(fine) 프로그래밍 과정에서는 조밀한 임계 분포를 획득하면서 목표(target) 문턱 전압에 도달할 수 있도록 좀 더 느린 속도로 문턱 전압의 상승을 시도한다. 거침/미세 프로그래밍 방법론의 예는 "Efficient Verification for Coarse/Fine Programming of Non-Volatile Memory"라는 제목으로 2004년 1월 27일 출원된 미국 특허출원 제10/766,217호, "Non-Volatile Semiconductor Memory Deice Adapted to Store A Multi-Valued Data in a Single Memory Cell"이라는 제목으로 2002년 1월 22일에 출원된 미국 특허출원 제10/051,372호, 미국 특허 제6,301,161호, 미국 특허 제5,712,815호, 미국 특허 제5,220,531호 및 미국 특허 제5,761,222호에서 찾을 수 있으며, 이들은 본 명세서에 참조로서 인용된다.
메모리 장치가 소형화 및 고집적화됨에 따라 좀 더 조밀한 문턱 전압 분포와 빠른 프로그래밍 속도에 대한 요구가 점차 커져 왔다. 거침/미세 프로그래밍 방법론이 어느 정도 해결점을 제시하고 있지만, 좀 더 획기적으로 조밀한 임계 분포와 빠른 프로그래밍 속도를 제공하기 위해 거침/미세 프로그래밍 방법론의 개선이 필요하다.
본 발명은 개략적으로 높은 정확성과 빠른 프로그래밍 속도를 갖는 비휘발성 메모리의 프로그래밍 기술에 관한 것이다. 본 발명은 거침/미세 프로그래밍 방법론을 개선하는데 사용될 수 있고, 거침/미세 프로그래밍을 실행하지 않고 독립적으로 사용될 수도 있다.
본 발명의 일 실시예는 제 1 비활성 저장 소자를 위한 비트 라인에 제 1 전압을 인가하는 단계와, 상기 제 1 비활성 저장 소자를 위한 비트 라인에 제 1 전압을 인가하는 동안 상기 제 1 비활성 저장 소자의 제어 게이트에 제 1 프로그램 전압을 인가하는 단계와, 상기 제 1 비활성 저장 소자를 위한 비트 라인에 제 1 전압을 인가하는 동안 상기 제 1 비활성 저장 소자로 인가된 상기 제 1 프로그램 전압을 낮추는 단계와, 상기 제 1 프로그램 전압이 낮춰지는 동안 상기 비트 라인에 제 2 전압을 인가하는 단계와, 그리고 상기 제 1 비활성 저장 소자를 위한 비트 라인에 제 2 전압을 인가하는 동안 상기 제 1 비활성 저장 소자의 상기 제어 게이트로 인가된 상기 제 1 프로그램 전압을 올리는 단계를 포함한다.
예를 들어 일 실시예에서, 상기 제 1 비휘발성 저장 소자는 일부가 낸드 스트링으로 구성된 낸드 타입 플래시 메모리 장치이다. 제 1 프로그램 전압의 적용에는 낸드 타입 플래시 메모리 장치의 제어 게이트에 프로그램 펄스를 인가하는 것이 포함된다. 비트 라인에 인가되는 제 1 전압은 프로그래밍을 금지하는 전압 레벨이고, 비트 라인에 인가되는 제 2 전압은 프로그래밍을 허용하는 전압 레벨이다. 비트 라인은 프로그램 펄스가 인가되는 시간 동안 제 1 전압에서 제 2 전압으로 변경된다. 이 프로세스는 추가적인 프로그램 펄스에서 반복될 수 있다.
본 발명의 다른 실시예는 복수의 비휘발성 저장 소자들에 제 1 프로그램 전압을 인가하는 단계로서, 제 1 세트의 상기 비휘발성 저장 소자들은 거침(coarse) 프로그래밍 모드에 있고, 제 2 세트의 상기 비휘발성 저장 소자들은 미세(fine) 프로그래밍 모드에 있는 단계를 포함한다. 이러한 프로세스는 상기 제 1 프로그램 전압 동안 상기 제 1 세트의 비휘발성 저장 소자들을 위한 비트 라인들에 프로그래밍 비트 라인 전압을 공급하는 단계와, 상기 제 1 프로그램 전압 동안 상기 제 2 세트의 비휘발성 저장 소자들을 위한 비트 라인들에 금지 비트 라인 전압을 공급하는 단계와, 상기 제 2 세트의 비휘발성 저장 소자들의 프로그래밍을 위해 상기 제 1 프로그램 전압 동안 상기 제 2 세트의 비휘발성 저장 소자들의 상기 비트 라인들을 변경시키는 단계를 더 포함한다.
본 발명의 하나 이상의 실행 단계에서는 하나 이상의 비휘발성 저장 소자를 프로그래밍하는 단계를 포함할 수 있다. 예를 들어 본 발명은 플래시 메모리 장치의 어레이를 프로그램하는데 사용될 수 있다. 일부 실시예의 실행 시, 하나 이상의 비휘발성 저장 소자의 프로그래밍은 제어 회로에서 또는 제어 회로에 의해서 수행된다. 제어 회로의 구성요소는 적용 방식에 따라 달라질 수 있다. 예를 들어 제어 회로는 컨트롤러, 명령 회로(command circuit), 상태 머신, 로우 제어 회로, 컬럼 제어 회로, 소스 제어 회로, p-웰 또는 n-웰 제어 회로 또는 유사한 기능을 수행하는 다른 회로들 중 어느 하나 또는 이것의 조합을 포함할 수 있다.
본 발명의 이러한 목적과 장점은 첨부 도면을 참조하여 설명되는 본 발명의 바람직한 실시예들에 대한 다음의 설명으로부터 더욱 명확하게 될 것이다.
도 1은 낸드 스트링(NAND string)의 평면도이다.
도 2는 낸드 스트링의 등가 회로도이다.
도 3은 낸드 스트링의 단면도이다.
도 4는 본 발명의 다양한 특징들이 구현되는 비휘발성 메모리 시스템의 일 실시예에 대한 블록도이다.
도 5는 메모리 어레이의 예시적인 구조를 도시한다.
도 6은 멀티-스테이트 비휘발성 메모리 장치를 위한 문턱 전압 분포를 보인 것이다.
도 7은 프로그래밍 전압 신호를 도시하며, 시간의 경과에 따라 크기가 증가하는 일련의 프로그래밍 펄스를 포함한다.
도 8은 도 7에 도시된 신호에서 추출한 3개의 프로그래밍 펄스와 그 사이의 검증 펄스를 도시한다.
도 9는 플래시 메모리를 프로그래밍하기 위한 프로세스의 일 실시예를 설명하는 흐름도이다.
도 10은 검증 및 거침/미세 모드 결정을 수행하기 위한 프로세스의 일 실시예를 설명하는 흐름도이다.
도 11A 내지 11C는 프로그래밍 프로세스의 다양한 실시예를 도시한 타이밍도이다.
도 11D, 11E 및 11F는 다양한 조합의 채널(낸드 스트링) 전압에서 프로그래밍 속도 그리고/또는 프로그래밍 시간이 감소하는 실험 결과를 도시한다.
도 12는 비휘발성 메모리 셀의 검증 및 프로그램에 사용되는 구성 요소들의 일 실시예를 도시한 블록도이다.
도 12A는 감지 시간에 따른 비트 라인 전압의 그래프이다.
도 13A는 서로 다른 비트 라인 전압에서 거침/미세 프로그래밍의 미세 상태 동안 인가되는 프로그램 펄스에 대한 문턱 전압의 변화를 도시한 그래프이다.
도 13B는 서로 다른 부스팅 전압에서 거침/미세 프로그래밍의 미세 상태 동안 인가되는 프로그램 펄스에 대한 문턱 전압의 변화를 도시한 그래프이다.
도 14A, 14B, 14C 및 15는 프로그래밍을 위한 다양한 실시예의 프로세스를 도시한 타이밍도이다.
도 16은 플래시 메모리를 프로그램하기 위한 프로세스의 일 실시예를 도시한 흐름도이다.
도 17A와 17B는 프로그래밍 프로세스의 다양한 실시예를 도시하기 위한 타이밍도이다.
도 18은 비휘발성 메모리 셀을 검증하고 프로그래밍하기 위해 사용되는 구성 요소들의 일 실시예를 도시한 블록도이다.
도 19는 플래시 메모리의 프로그래밍 프로세스의 일 실시예를 도시하기 위한 흐름도이다.
도 20은 비휘발성 메모리 셀을 검증하고 프로그래밍하기 위해 사용되는 구성 요소들의 일 실시예를 도시한 블록도이다.
본 발명은 실시예에 의해 설명되지만 이에 한정되지 않으며, 첨부된 도면의 숫자는 유사한 요소들을 유사한 참조번호로 나타낸다. 여기에 개시된 하나 또는 일 실시예를 참조하는 것은 반드시 동일한 실시예일 필요는 없고 그와 같은 참조가 적어도 하나임을 의미한다.
아래의 설명에서 본 발명의 다양한 양상들이 설명될 것이다. 그러나 본 발명이 속하는 분야의 숙련자는 본 발명에 제시된 일부 또는 모든 양상들에 의해 재현가능할 것이다. 본 발명이 잘 이해되도록 설명하기 위하여 구체적인 숫자, 자료 및 구성이 제시된다. 그러나, 본 발명이 속하는 분야에 익숙한 사람은 세부적인 모든 설명이 없어도 재현가능할 것이다. 다른 사례에서는, 본 발명을 명확하게 하기 위해 잘 알려진 특징이 생략되거나 단순화되었다.
본 발명을 이해하기에 유익하도록 다양한 실시예들이 다수의 각 단계들에 의해 차례로 설명될 것이다. 그러나, 이러한 설명 순서는 동작이 반드시 순서에 따라 이루어지는 것을 암시하는 것은 아니다.
본 발명을 구현하기에 적합한 플래시 메모리 시스템의 일 실시예는 2개의 선택 게이트(select gate) 사이에 직렬로 연결된 다수의 트랜지스터가 배열된 낸드(NAND) 구조를 사용한다. 직렬인 트랜지스터들과 선택 게이트들은 낸드 스트링으로 지칭된다. 도 1은 하나의 낸드 스트링을 도시하는 평면도이다. 도 2는 그것의 등가 회로도이다. 도 1과 2에 도시된 낸드 스트링은 직렬인 4개의 트랜지스터(100, 102, 104 및 106)를 포함하며, 이것은 제 1 선택 게이트(120)와 제 2 선택 게이트(122) 사이에 위치한다. 선택 게이트(120)는 낸드 스트링을 비트라인(126)에 연결한다. 선택 게이트(122)는 낸드 스트링을 소스 라인(128)에 연결한다. 선택 게이트(120)는 제어 게이트(120CG)에 적절한 전압을 인가하여 제어된다. 선택 게이 트(122)는 제어 게이트(122CG)에 적절한 전압을 인가하는 것에 의해 제어된다. 트랜지스터(100, 102, 104 및 106) 각각은 제어 게이트와 플로팅 게이트를 갖는다. 트랜지스터(100)는 제어 게이트(100CG)와 플로팅 게이트(100FG)를 포함한다. 트랜지스터(102)는 제어 게이트(102CG)와 플로팅 게이트(102FG)를 가진다. 트랜지스터(104)는 제어 게이트(104CG)와 플로팅 게이트(104FG)를 포함한다. 트랜지스터(106)는 제어 게이트(106CG)와 플로팅 게이트(106FG)를 포함한다. 제어 게이트(100CG)는 워드라인(WL3)과 연결되고, 제어 게이트(102CG)는 워드 라인(WL2)과 연결되고, 제어 게이트(104CG)는 워드 라인(WL1)과 연결되고, 제어 게이트(106CG)는 워드 라인(WL0)과 연결된다. 일 실시예에 있어서, 트랜지스터(100,102, 104 및 106)는 각 메모리 셀이다. 일 실시예에 있어서, 메모리 셀은 다수의 트랜지스터를 포함할 수 있으며, 도 1 및 2에 도시된 것과 다를 수 있다. 선택 게이트(120)는 선택 라인(SGD)에 연결되고, 선택 게이트(122)는 선택 라인(SGS)과 연결된다.
도 3은 전술한 낸드 스트링의 단면도를 제공한다. 도 3에 도시된 바와 같이, 낸드 스트링의 트랜지스터는 p-웰 영역(140)에 형성된다. 각 트랜지스터는 제어 게이트(100CG, 102CG, 104CG 및 106CG)와 플로팅 게이트(100FG, 102FG, 104FG 및 106FG)로 구성된 스택 게이트 구조(stacked gate structure)를 포함한다. 플로팅 게이트는 산화막 최상부의 p-웰 표면상에 형성된다. 제어 게이트는 플로팅 게이트 상에 위치하고, 인터-폴리실리콘 층간 절연막(inter-polysilicon dielectric layer)에 의해 제어 게이트와 플로팅 게이트가 분리된다. 메모리 셀(100, 102, 104, 106)의 제어 게이트는 워드 라인을 형성한다. N+ 확산층(130, 132, 134, 136 및 138)은 인접하는 셀들 사이에 공유되고, 이에 따라 셀들은 낸드 스트링을 형성하기 위하여 서로 직렬로 연결된다. 이러한 N+ 확산층은 셀 각각에 소스와 드레인을 형성한다. 예를 들어, N+ 확산층(130)은 트랜지스터(122)의 드레인 및 트랜지스터(106)의 소스로서 역할을 하고, N+ 확산층(132)는 트랜지스터(106)의 드레인 및 트랜지스터(104)의 소스로서 역할을 하고, N+ 확산층(134)는 트랜지스터(104)의 드레인 및 트랜지스터(102)의 소스로서 역할을 하고, N+ 확산층(136)은 트랜지스터(102)의 드레인 및 트랜지스터(100)의 소스로서 역할을 하고, N+ 확산층(138)은 트랜지스터(100)의 드레인 및 트랜지스터(120)의 소스로서 역할을 한다. N+ 확산층(126)은 낸드 스트링을 위한 비트 라인에 연결되고, N+ 확산층(128)은 다수 낸드 스트링들을 위한 공통 소스 라인에 연결된다.
도 1 내지 3이 낸드 스트링 내에 4개의 메모리 셀을 도시하고 있지만, 4개의 트랜지스터의 사용은 단지 예시적인 것으로 이해되어야 한다. 낸드 스트링은 4개의 메모리 셀보다 적거나 많은 셀을 사용할 수 있다. 예를 들어, 일부 낸드 스트링은 8개, 16개, 32개의 메모리 셀 등을 포함할 것이다. 여기에서의 논의는 낸드 스트링내의 메모리 셀을 임의의 특정 개수로 한정하지 않는다.
각 메모리 셀은 아날로그 또는 디지털로 표현되는 데이터를 저장할 수 있다. 1 비트의 디지털 데이터를 저장할 때, 메모리 셀의 가능한 문턱 전압의 범위는 논리 데이터 "1" 과 "0"이 할당되는 2개의 범위로 분할된다. 낸드 타입 플래시 메모리의 일 실시예에서, 문턱 전압은 메모리 셀이 소거된 후 음의 값을 갖고, 논리 "1"로 정의된다. 프로그램 동작 후 문턱 전압은 양의 값을 갖고, 논리 "0"으로 정 의된다. 문턱 전압이 음의 값이고 판독(read)이 시도될 때, 메모리 셀은 논리 "1"이 저장되어 있다는 것을 나타내기 위해 턴 온(turn on)될 것이다. 문턱 전압이 양의 값이고 판독이 시도될 때, 메모리 셀은 논리 "0"이 저장되어 있다는 것을 나타내기 위해 턴 온되지 않을 것이다. 메모리 셀은 예를 들어, 다수의 디지털 데이터 비트와 같은 다수의 정보 레벨을 저장할 수 있다. 다수의 데이터 레벨을 저장하는 경우에는 가능한 문턱 전압의 범위는 저장 레벨의 수로 나누어진다. 예를 들어, 4개의 정보 레벨이 저장된다면, 데이터 값 "11", "10", "01", "00"에 할당된 4개의 문턱 전압 범위가 존재할 것이다. 낸드 타입 메모리의 일 실시예에서, 소거 동작 후 문턱 전압은 음의 값을 갖고 "11"으로 정의된다. 양의 문턱 전압은 "10", "01" 및 "00"의 상태를 위해 사용된다.
낸드 타입 플래시 메모리와 이의 동작에 대한 관련된 예들은 본 명세서에 참조 문헌으로서 인용되는 다음의 미국 특허/특허출원: 미국 특허 제5,570,315호, 미국 특허 제5,774,397호, 미국 특허 제6,046,935호, 미국 특허 제5,386,422호, 미국 특허 제6,456,528호 및 미국 특허출원 제09/893,277호(공개번호 US2003/0002348)에서 제공된다. 자기 부스팅 기술을 포함한 낸드 플래시 메모리의 프로그래밍에 대한 정보는 본 명세서에 참조 문헌으로서 인용되는 "Self Boosting Technique"이라는 제목으로 2003년 3월 5일에 출원된 미국 특허출원 제10/379,608호와 "Detecting Over Programmed Memory"라는 제목으로 2003년 7월 29일에 출원된 미국 특허출원 제10/629,068호에서 얻을 수 있다. 다른 타입의 플래시 메모리도 본 발명에 사용될 수 있다. 예를 들어 본 명세서에 참조 문헌으로서 인용되는 미국 특허 제5,095,344 호, 제5,172,338호, 제5,890,192호 및 제6,151,248호에서 기술하는 노어(NOR) 타입 플래시 메모리가 그러하다. 다른 플래시메모리 타입에 대한 예는 미국 특허 제6,151,248호에 제시되며, 이는 본 발명의 명세서에 참조 문헌으로서 인용된다.
도 4는 본 발명을 구현하기 위해 사용될 수 있는 플래시 메모리 시스템의 일 실시예의 블록도이다. 메모리 셀 어레이(302)는 칼럼 제어 회로(304), 로우 제어 회로(306), c-소스 제어 회로(310) 및 p-웰 제어 회로(308)에 의해 제어된다. 칼럼 제어 회로(304)는 메모리 셀에 저장된 데이터를 판독하기 위해, 프로그램 동작 동안 메모리 셀의 상태를 결정하기 위해, 그리고 프로그래밍을 촉진하거나 금지하기 위한 비트 라인의 전위(potential)레벨 제어를 위해, 메모리 셀 어레이(302)의 비트 라인에 연결된다. 로우 제어 회로(306)는 워드 라인 중 하나를 선택하기 위해, 프로그램 전압을 인가하기 위해, 그리고 소거 전압을 인가하기 위해, 워드 라인에 연결된다. C-소스 제어 회로(310)는 메모리 셀들에 연결된 공통 소스 라인(도 5에 "C-소스"로 표시됨)을 제어한다. P-웰 제어 회로(308)는 p-웰 전압을 제어한다.
메모리 셀에 저장된 데이터는 칼럼 제어 회로(304)에 의해 판독되고 데이터 입/출력 버터(312)를 통해 외부 I/O 라인에 출력된다. 메모리 셀에 저장될 프로그램 데이터는 외부 I/O 라인을 거쳐 데이터 입/출력 버퍼(312)로 입력되고, 칼럼 제어 회로(304)에 전달된다. 외부 I/O 라인은 제어기(318)에 연결된다.
플래시 메모리를 제어하기 위한 명령 데이터는 제어기(318)로 입력된다. 명령 데이터는 플래시 메모리에게 어떤 동작이 요구되는지를 알린다. 입력 명령은 상태 머신(316)에 전달되어, 칼럼 제어 회로(304), 로우 제어 회로(306), c-소스 제 어 회로(310), p-웰 제어 회로(308) 및 데이터 입/출력 버퍼(312)를 제어한다. 상태 머신(316)은 READY/BUSY 또는 PASS/FAIL 같은 플래시 메모리의 상태 데이터를 출력할 수 있다.
제어기(318)는 개인용 컴퓨터, 디지털 카메라, 개인 휴대정보 단말기 등과 같은 호스트 시스템에 연결되거나, 이들에 연결 가능하다. 제어기(318)는 호스트로부터 명령을 수신하기 위해 호스트와 통신하고, 호스트로부터 데이터를 수신하고, 호스트에 데이터를 제공하며, 호스트에 상태 정보를 제공한다. 제어기(318)는 호스트로부터 명령을 명령 회로(command circuit, 314)에 의해 해석되고 실행될 수 있는 명령 신호로 변환하는데, 상기 명령 회로(314)는 상태 머신(316)과 통신 연결된다. 제어기(318)는 통상적으로 사용자 데이터가 메모리 어레이에 기록되거나 그로부터 독출되는 버퍼 메모리를 포함한다.
하나의 예시적인 메모리 시스템은 제어기(318)를 포함하는 하나의 집적 회로와, 각각이 메모리 어레이 및 연관된 제어, 입/출력 상태 머신 회로를 포함하는 하나 이상의 집적 회로를 포함한다. 메모리 어레이와 시스템의 제어기 회로는 하나 이상의 집적 회로 칩에 함께 집적되는 것이 추세이다. 메모리 시스템은 호스트 시스템의 일부로서 구현되거나 호스트 시스템으로 탈착 가능하게 삽입되는 메모리 카드(또는 다른 패키지)에 포함될 수 있다. 이러한 탈착 가능한 카드는 (예를 들어 제어기를 포함하는) 전체 메모리 시스템 또는 단지 메모리 어레이와 연관된 주변 회로(여기에서 제어기는 호스트에 구현됨)를 포함할 수 있다. 따라서, 제어기는 호스트에 구현되거나 탈착 가능한 메모리 시스템 내에 포함될 수 있다.
일부 실행 예에 있어서, 도 4의 구성요소 중 일부가 연결될 수 있다. 다양한 설계에 의해, 메모리 셀 어레이(302)를 제외한 도 4에 도시된 하나 이상의 구성요소가 제어 회로로 간주될 수 있다.
도 5를 참조하여, 메모리 셀 어레이(302)의 예시적인 구조가 설명된다. 일 예로서, 낸드 플래시 메모리 EEPROM은 1,024 블록으로 나뉜 것으로 설명된다. 각 블록에 저장된 데이터는 자동으로 소거된다. 일 실시예에서, 블록은 자동으로 소거되는 최소 셀 단위이다. 상기 예에서의 각 블록에서, 짝수 칼럼(even column)과 홀수 칼럼(add column)으로 분할되는 8,512개의 칼럼이 존재한다. 비트 라인은 또한 짝수 비트 라인(BLe)과 홀수 비트 라인(BLo)으로 분할된다. 도 5는 낸드 스트링을 형성하기 위해 직렬로 연결된 4개의 메모리 셀을 도시한다. 4개의 셀이 각각의 낸드 스트링에 포함된 것으로 도시되어 있지만, 4개 이상 또는 이하가 사용될 수 있다. 낸드 스트링의 일 단자는 제 1 선택 트랜지스터(SGD)를 통해 상응하는 비트 라인에 연결되고, 다른 단자는 제 2 선택 트랜지스터(SGS)를 통해 c-소스에 연결된다.
판독 및 프로그래밍 동작 동안, 4,256개의 메모리 셀이 동시에 선택된다. 선택된 메모리 셀은 동일한 워드 라인과 동일한 종류의 비트 라인(예를 들어 짝수 비트 라인 또는 홀수 비트 라인)을 구비한다. 따라서, 532개의 데이터 바이트가 동시에 판독되거나 프로그래밍될 수 있다. 동시에 판독되거나 프로그래밍되는 이러한 532개의 데이터 바이트는 논리 페이지(logical page)를 형성한다. 따라서, 하나의 블록은 적어도 8개의 논리 페이지(각각 홀수 및 짝수 페이지를 구비한 4개의 워드 라인들)를 저장할 수 있다. 각 메모리 셀이 2개의 데이터 비트(예를 들어 다수-레벨 셀)를 저장할 때, 여기서 이러한 두 비트 각각은 다른 페이지에 저장되고, 하나의 블록은 16개의 논리 페이지를 저장한다. 또한, 다른 크기의 블록과 페이지도 본 발명에서 사용될 수 있다. 추가적으로, 도 4 및 5 이외의 구조 역시 본 발명에서 사용될 수 있다.
메모리 셀은 p-웰을 소거 전압(예를 들어 20V)까지 상승시키고, 선택된 블록의 워드 라인들을 접지시킴으로써 소거된다. 소스 및 비트 라인이 플로팅된다. 소거는 전체 메모리 어레이, 별개의 블록 또는 다른 셀 유닛 상에서 수행될 수 있다. (일 실시예에서) 전자가 플로팅 게이트로부터 p-웰 영역으로 전달되고, 문턱 전압이 음의 값을 갖는다.
판독 및 검증 동작에서, 선택 게이트(SGD 및 SGS)와 비선택 워드 라인(예를 들어, WL0, WL2 및 WL3)은 판독 통과(read pass) 전압(예를 들어 4.5V)까지 상승하여 트랜지스터가 통과 게이트(pass gate)로 동작하도록 한다. 선택 워드 라인(예를 들어, WL1)은 전압에 연결되는데, 이 전압 레벨은 관련된 메모리 셀의 문턱 전압이 상기 레벨 이상 또는 이하인지를 결정하기 위해 각각의 판독 및 검증 동작에 대해 특정된다. 예를 들어, 2-레벨 메모리 셀을 위한 판독 동작에서, 선택 워드 라인(WL1)은 접지될 수 있고, 이에 따라 문턱 전압이 0V보다 높은지가 결정된다. 2-레벨 메모리 셀을 위한 검증 동작에서, 선택 워드 라인(WL1)은 예를 들어 0.8V에 연결되고, 이에 따라 문턱 전압이 적어도 0.8V에 도달했는지 여부가 검증된다. 소스와 p-웰은 0V 상태이다. 선택 비트 라인(BLe)은 예를 들어 0.7V의 레벨로 사전- 충전된다. 워드 라인에서 문턱 전압이 판독 또는 검증 레벨보다 높은 경우, 관련된 비트 라인(BLe)(셀(330)의 BLe1)의 전위 레벨은 비-전도성 메모리 셀 때문에 높은 레벨을 유지한다. 다른 한편으로, 문턱 전압이 판독 또는 검증 레벨 이하인 경우, 관련된 비트 라인(BLe)의 전위 레벨은 전도성 메모리 셀 때문에 예를 들어 0.5V 이하의 낮은 레벨로 감소한다. 메모리 셀의 상태는 비트 라인에 연결된 감지 증폭기에 의해 검출된다.
전술한 소거, 판독 및 검증 동작은 당업계의 공지된 기술에 따라 수행된다. 따라서, 설명된 상세한 내용은 당업자에 의해 변형될 수 있다. 이 분야에서 알려진 다른 판독 및 검증 기술이 이용될 수 있다.
도 6은 2개의 데이터 비트(예를 들어 4개의 데이터 상태)를 저장하는 메모리 셀에 대한 문턱 전압 분포를 도시한다. 일 실시예에서, 분포(460)는 소거된 상태(예를 들어 "11"을 저장 중)인 셀의 문턱 전압 분포를 나타내고, 음의 문턱 전압 레벨을 갖는다. 분포(462)는 "10"을 저장하는 셀의 문턱 전압 분포를 나타내고 양의 문턱 전압 레벨을 갖는다. 분포(464)는 "00"을 저장하는 셀의 문턱 전압 분포를 나타낸다. 분포(466)는 "01"을 저장하는 셀의 문턱 전압 분포를 나타낸다. 다른 실시예에서, 각각의 분포는 상술한 것과 다른 데이터 상태와 대응할 수 있다. (상기 예시된 것과 같은) 일 실시예에서, 이러한 데이터 값(예를 들어 논리 상태)은 그레이 코드 할당(gray code assignment)을 이용하여 문턱 범위에서 할당되고, 이에 따라 플로팅 게이트의 문턱 전압이 인접한 물리적 상태로 잘못 변화하는 경우에, 단지 하나의 논리 비트만이 영향을 받도록 될 것이다. 메모리 셀에 프로그램된 데이 터와 셀의 문턱 전압 사이의 명확한 관계는 메모리 셀에 채용된 데이터 인코딩 스킴(scheme)에 의해 좌우된다. 예를 들어, 본 명세서에 참조로서 인용되는 "Tracking Cells For A Memory System"라는 제목으로 2003년 6월 13일에 출원된 미국 특허 제6,222,762호 및 미국 특허출원 제10/461,244호는 멀티-스테이트 플래시 메모리 셀을 위한 다양한 데이터 인코딩 스킴을 개시한다. 또한, 본 발명은 2 비트 이상의 데이터를 저장하는 메모리 셀에서도 동작할 수 있다.
일 실시예에서, 소거 상태(예를 들어 분포 460)인 메모리 셀은 어느 하나의 프로그램 상태(분포 462, 464, 466)로 프로그램될 수 있다. 다른 실시예에서, 소거 상태인 메모리 셀은 2단계 방법론(methodology)에 의해 프로그램된다. 이러한 2단계 방법론에서, 데이터 상태에 저장된 각 비트는 서로 다른 논리 페이지에 대응한다. 즉, 메모리 셀에 저장된 각 비트는 하위 논리 페이지와 상위 논리 페이지에 속하는 서로 다른 논리 페이지 주소를 갖는다. 예를 들어, 상태 "10"에서, "0"은 하위 논리 페이지에 저장되고, "1"은 상위 논리 페이지에 저장된다. 제 1 프로그래밍 단계에서, 셀의 문턱 전압 레벨은 하위 논리 페이지에 프로그램된 비트에 따라 부여된다. 비트가 논리 "1"이면, 문턱 전압은 먼저 소거된 결과로서 적절한 상태에 존재하므로, 변화되지 않는다. 그러나, 비트가 논리 "0"으로 프로그램되면, 문턱 전압 분포(462) 내에 존재하도록 셀의 문턱 전압이 증가한다.
제 2 프로그래밍 단계에서, 상위 논리 페이지로 프로그램된 비트에 따라 메모리 셀의 문턱 전압 레벨이 설정된다. 상위 논리 페이지 비트가 논리 "1"이 되면, 더 이상의 프로그램이 이루어지지 않는다. 왜냐하면, 셀이 상위 논리 페이지 비트 를 "1"로 유도하는 문턱 전압 분포(460 또는 460) 중 하나의 상태에 존재하기 때문이다. 상위 논리 페이지 비트가 논리 "0"이고 제 1 프로그래밍 단계의 결과로 셀이 임계 분포(460) 상태로 소거되었다면, 제 2 프로그래밍 단계는 문턱 전압 분포(466) 내로 문턱 전압을 상승시키는 단계를 포함한다. 상위 논리 페이지 비트가 논리 "0"이고 제 1 프로그래밍 단계의 결과로 셀이 임계 분포(462) 상태로 프로그램되었다면, 제 2 프로그래밍 단계는 문턱 전압 분포(464) 내로 문턱 전압을 상승시키는 단계를 포함한다. 두 단계 프로세스는 멀티-스테이트 메모리를 프로그래밍하기 위한 방법론의 일 실시예에 불과하다. 하나 또는 둘 이상의 단계를 갖는 다른 방법론이 이용될 수 있다. 도 6은 4개의 상태(2 비트)를 도시하고 있으나, 본 발명은 8개의 상태, 16개의 상태, 32개의 상태 및 이외 것을 포함하는 다른 멀티-스테이트 구조에서도 이용될 수 있다.
모두 터널링된 EEPROM이나 플래시 메모리 장치를 프로그래밍할 때, 일반적으로 제어 게이트에 프로그램 전압이 인가되고 비트 라인이 접지된다. 채널로부터의 전자들이 플로팅 게이트로 주입된다. 전자들이 플로팅 게이트에 축적될 때, 플로팅 게이트는 음으로 대전되고 메모리 셀의 문턱 전압은 상술한 문턱 전압 분포 중 어느 하나로 증가한다. 일반적으로, 제어 게이트에 인가되는 프로그램 전압은 일련의 펄스로서 인가된다. 일 실시예에서, 펄스의 크기는 각 연속 펄스를 사용하여 미리 결정된 스텝 크기(예를 들어, 0.4V, 0.2V 또는 다른 전압)만큼 증가한다. 도 7은 플래시 메모리 셀의 제어 게이트(또는 일부 경우에는 조종 게이트(steering gate))로 인가되는 프로그램 전압 신호(Vpgm)를 나타낸다. 프로그램 전압 신호(Vpgm)는 시간 경과에 따라 크기가 증가하는 일련의 펄스를 포함한다.
프로그램 펄스들 사이의 구간에서, 검증 동작이 수행된다. 즉, 셀 그룹의 각 셀의 프로그래밍 레벨이 병렬로 프로그램되는 연속된 프로그래밍 펄스 사이에 판독되어, 셀 그룹의 각 셀의 프로그래밍 레벨이 프로그램되는 검증 레벨과 같거나 큰지 여부가 결정된다. 메모리 셀이 검증 레벨과 연관된 데이터에 도달하였는지 여부를 결정하도록, 멀티-스테이트 플래시 메모리 셀의 어레이에 대해 각 상태의 검증 단계를 수행할 것이다. 예를 들어 4 개의 상태 데이터를 저장할 수 있는 멀티-스테이트 메모리 셀은 세 개의 비교 지점(compare point)에서 검증 동작이 수행될 필요가 있다. 도 8은 3 개의 프로그래밍 펄스(10a, 10b, 10c)(이들 각각은 도 8에 역시 도시됨)를 도시한다. 프로그래밍 펄스 사이에는 3개의 검증 동작을 수행하기 위한 3개의 검증 펄스가 있다. 3개의 검증 동작에 의해, 메모리 셀이 그것에 상응하는 데이터 상태 검증 레벨에 도달하였는지 여부를 시스템이 결정할 수 있다. 검증 레벨 중 하나는 0V임을 주의하자.
도 9는 거침/미세(coarse/fine) 프로그래밍 프로세스를 사용하여 프로그래밍하는 과정의 일 실시예를 도시한 흐름도이다. 단계(502)에서, 메모리에 프로그램 될 부분이 선택된다. 일 실시예에서, 이것은 메모리 구조에 적절한 하나 이상의 쓰기 유닛(write unit)일 수 있다. 쓰기 유닛의 일예는 페이지로 지칭된다. 다른 실시예에서, 다른 유닛 그리고/또는 구조가 사용될 수 있다. 단계(504)에서, 사전-프로그래밍(또는 사전-소거) 프로세스가 때때로 사용되며, 이 경우에 주소가 할당된 메모리 셀에는 넌-데이터 종속 프로그래밍(non-data dependent programming)이 이 루어진다. 이는 저장 소자 사용(storage element wear)을 고르게 하고 후속 소거에 대해 좀 더 균일한 시작 시점을 제공하도록 하기 위한 것이다. 단계(506)에서, 사용된 저장 소자의 타입에 적당하게 소거 프로세스가 수행된다. 적당한 소거 프로세스의 일 예는 본 명세서에 참조 문헌으로 인용되는 미국 특허 제5,095,344호에 기술되어 있다. 단계(508)는 실제 쓰기 상태에서 소거된 메모리 셀의 문턱 전압이 좀 더 균일한 시작 범위에 놓이도록 하는 소프트 프로그래밍 프로세스 단계를 포함한다. 일 실시예에서, 어느 메모리 셀이 소거(또는 소프트 프로그래밍) 동안 검증에 실패하면, 논리 주소 공간(logical address space)에 매핑될 수 있다. 이때 메모리는 데이터 조건부 프로그래밍 단계(data conditional programming phase)를 준비한다.
단계(510)에서, 프로그램 전압(Vpgm)은 초기값으로 설정된다. 예를 들어 일부 실시예에서 도 7의 계단(staircase) 파 형태가 사용되고, 단계(510)는 초기 펄스 설정을 포함한다. 또한, 단계(510)에서, 프로그램 카운터(PC)는 제로로 초기화되고, (일반적으로) 프로그래밍 동작과 관련된 레지스터는 거침(coarse) 모드로 설정된다. 단계(520)에서, 낸드 스트링의 부스팅이 수행되고 프로그램 펄스가 인가된다. 단계(520)에 대한 추가 정보는 후술 된다. 단계(522)에서, 검증 프로세스가 수행된다. 요구에 따라 어떠한 메모리 셀도 거침 프로그래밍에서 검증되지 않거나, 하나 이상의 메모리 셀이 거침 프로그래밍에서 검증되고, 어떠한 메모리 셀도 미세 프로그래밍에서 검증되지 않거나 하나 이상의 메모리 셀이 미세 프로그래밍에서 검증된다. 예를 들어 이진(binary, 예컨데 두 상태) 메모리 셀에 있어서, 어떤 메모 리 셀이 거침 프로그래밍에서 검증되는 동안, 다른 메모리 셀은 미세 프로그래밍에서 검증된다. 멀티-스테이트 메모리 셀과 관련하여 어떤 메모리 셀이 특수 상태를 위해 거침 프로그래밍에서 검증될 때, 다른 메모리 셀은 동일한 특수 상태를 위해 미세 프로그래밍에서 검증된다. 멀티-상태 메모리 셀에 관한 다른 실시예에서, 다른 메모리 셀은 일부 메모리 셀은 거침 프로그래밍에서 검증되고 일부 메모리 셀은 미세 프로그래밍에서 검증되는 서로 다른 상태에서 동시에 프로그램/검증될 수 있다. 또한, 단계(522)에서 시스템은 메모리 셀이 거침 프로그래밍 모드에서 미세 프로그래밍 모드로 스위칭이 필요한지 여부를 결정한다. 단계(522)의 좀 더 구체적인 내용은 이하에서 설명된다.
단계(524)에서, 모든 메모리 셀에서 그것의 문턱 전압이 각각의 최종 또는 목표 문턱 전압을 만족하는 것으로 확인되었는지 여부를 조사한다. 만약 그렇다면 프로그래밍 프로세스는 단계(526)에서 성공적으로 완료(상태=통과)된다. 모든 메모리 셀에서 확인되지 않았다면, 프로그램 카운터(PC)가 20 미만인지 여부를 조사한다. 프로그램 카운터(PC)가 20 미만이 아니면(단계(528)), 프로그램 프로세스는 실패된다(단계(530)). 프로그램 카운터(PC)가 20 미만이면, 단계(532)에서 프로그램 카운터(PC)는 "1"이 증가하고 프로그램 전압은 다음 펄스로 상승한다. 단계(532) 이후에, 프로세스 루프는 단계(520)로 돌아가서 메모리 셀에 다음 프로그램 펄스를 인가한다.
도 10은 검증 및 프로그래밍 모드를 결정하는(도 9의 단계(522)) 프로세스의 일 실시예를 좀 더 구체적으로 도시한 흐름도를 제공한다. 도 10의 단계(562)에서, 시스템은 각 플래시 메모리 셀이 거침 프로그래밍 모드에 있을지 또는 미세 프로그래밍 모드에 있을지 여부를 결정하기 위하여 레지스터(또는 다른 저장 장치)를 확인할 것이다. 메모리 셀이 거침 프로그래밍 모드(단계(564))에 있으면, 단계(566)에서 거침 검증 동작이 수행된다. 예를 들어 도 6에서와 같이 메모리 셀은 프로그래밍 동작을 위해 최종 또는 목표 문턱 전압 레벨(VF)보다 약간 낮은 문턱 전압 레벨(VC)과 비교된 그것의 문턱 전압을 가질 수 있다. 도 6은 문턱 전압 분포(462)에 대한 VC 와 VF 를 도시하지만, 많은 실시예에서 메모리 셀이 프로그램되기 위한 각 문턱 전압 분포마다 VC 와 VF이 존재함을 주의하자. 메모리 셀의 문턱 전압이 목표 상태에 대한 VC 이상이면, 메모리 셀에 거침 검증 검사(단계(568))가 수행된다. 메모리 셀의 문턱 전압이 목표 상태에 대한 VC 미만이면, 메모리 셀은 거침 검증 검사가 수행되지 않는다. 메모리 셀에 거침 검증 검사(단계(568))가 수행되지 않으면, 메모리 셀은 거침 프로그래밍 모드(단계(570))에 남는다. 메모리 셀에 거침 검증 검사가 수행되고 나면, 메모리 셀의 프로그래밍 모드는 미세 프로그래밍 모드(단계(572))로 변경될 것이다.
단계(564)에서, 메모리 셀이 미세 프로그래밍 모드로 결정되었으면, 단계(580)에서 미세 검증 프로세스가 수행될 것이다. 예를 들어 도 6에서와 같이 메모리 셀의 문턱 전압은 최종 목표 문턱 전압(VF)과 비교될 수 있다. 메모리 셀의 문턱 전압이 목표 전압(VF) 이상이면(단계(582)), 미세 검증 검사를 거쳐 메모리 셀은 프로그래밍 세션(session) 동안 후속 프로그래밍으로부터 금지되거나 차단될 것이다(단계(584)). 후속 프로그래밍으로부터 메모리 셀을 차단하기 위한 일 실시예는 프로그래밍 동작 동안 비트 라인을 Vdd로 상승시키는 것이다. 메모리 셀을 차단시키기 위한 다른 방법들 역시 사용될 수 있다. 단계(582)에서, (메모리 셀의 문턱 전압이 목표 전압(VF) 미만이어서) 검증 동작이 수행되지 않으면, 메모리 셀은 후속 프로그래밍으로부터 금지되지 않을 것이다(단계(586)).
도 10의 프로세스는 각 셀에서 수행된다. 많은 실시예에서, 다수 메모리 셀은 동시에 프로그램될 수 있다. 따라서, 도 10의 프로세스는 다수 메모리 셀에서 동시에 수행될 것이다. 이러한 프로그래밍 동안, 메모리 셀의 일부는 거침 프로그래밍 프로세스에 있고 다른 셀들은 미세 프로그래밍 프로세스에 있어 여전히 프로그래밍으로부터 금지될 것이다.
상술한 일 실시예에 따라 프로그래밍이 이루어질 때, 하나씩 걸러진 비트 라인이 프로그래밍을 위해 선택된다. 예를 들어 프로그래밍 시 모든 짝수 비트 라인들이 선택되고, 모든 홀수 비트 라인들은 선택되지 않을 수 있다. 다른 실시예에서, 프로그래밍을 위해 서로 다른 그룹의 비트 라인들이 선택될 수 있다. 비트 라인을 선택하는 것은 각 프로그래밍 동작 동안 낸드 스트링들이 프로그램될 것인지 여부를 선택하는 하나의 수단이다. 어떤 프로그래밍 동작을 위해 낸드 스트링 상의 하나의 메모리 셀이 선택될 것이다. 예를 들어 도 5에 도시된 메모리 셀(330)이 프로그래밍하도록 선택되었다고 가정하자. 따라서, 짝수의 비트 라인들과 워드 라 인(WL1)이 프로그래밍을 위해 선택된다. 도 5에 도시한 바와 같이 WL1은 메모리 셀(330)과 메모리 셀(332) 둘 다에 연결되어 있다. 따라서, 메모리 셀(330)은 프로그래밍을 위해 선택되고 메모리 셀(332)은 선택되지 않은 경우라 할지라도, 워드 라인 프로그램 펄스가 메모리 셀(330)과 메모리 셀(332) 모두에 인가된다. 잘 알려진 바와 같이 동일 워드 라인에 연결된 모든 셀들에 프로그래밍하지 않고 하나의 워드 라인 상의 하나의 셀에 프로그램을 하고자 할 때에는 문제가 발생할 수 있다. 프로그램 전압은 워드 라인에 연결된 모든 셀에 인가되기 때문에, 선택되지 않은 셀(메모리 셀(332))에 의도하지 않은 프로그램(또는 부분적인 프로그램)이 발생될 수 있다. 선택되지 않은 셀에 동시에 존재하는 프로그래밍은 "프로그램 혼란(program disturb)"으로 지칭된다.
프로그램 혼란을 방지하기 위해 몇 가지 기술들이 이용될 수 있다. "자기-부스팅(self boosting)"으로 알려진 일 방법에서, 프로그래밍 동안에 비선택 비트 라인들은 금지 전압(예를 들어 Vdd)으로 상승하고, 비선택 워드 라인들에는 통과 전압(예를 들어 9V)이 인가된다. 따라서, 약 7.5V의 전위로 잠재된 채널(underlying channel)이 커플링되고 분포(이들의 시작 조건은 예를 들어 1.5V의 사전-충전 상태로 선택적으로 초기화될 수 있다.)가 연결된다. 프로그래밍 제어 게이트(이것의 전위는 결국 약 20V까지 단계적으로 상승할 수 있다)와 관련된 메모리 셀의 채널이 7.5V로 상승하는 결과를 가져오고, 이에 따라 프로그램 혼란 등을 금지하기 위해 터널링 옥사이드를 따라 다른 전압을 낮춘다.
좀 더 구체적으로, VG-VS > VTH 이면 낸드 스트링의 트랜지스터가 턴 온되며, 이때 VG는 트랜지스터의 게이트에 공급되는 전압,VS는 소스에 공급되는 전압, VTH는 문턱 전압으로 간주한다. 낸드 트랜지스터의 양쪽 대칭적인 부분은 소스 또는 드레인일 수 있다. 낮은 전압을 갖는 쪽이 일반적으로 소스로 지칭된다. 따라서, 전압이 변화되는 것에 따라 소스 측과 드레인 측 또한 변경될 수 있다. VG-VS 이 VTH 보다 낮으면, 장치는 컷 오프(cut off, 소스와 드레인 사이에 도통이 없음)된다. 주어진 VG 에서, VS 와 VD 가 VG-VS < VTH (VD ≥ VS 임을 기억하라)이 되도록 충분히 증가되면, 장치는 역시 컷 오프된다.
낸드 스트링의 프로그래밍을 금지하기 위해서 비선택 비트 라인들을 Vdd로 상승시킨다. 일 실시예에서, 선택 게이트가 낸드 스트링에 연결된 낮게 바이어스된 소스와 도전되기 때문에, 드레인 측 선택 게이트(도 2의 SGC)의 선택된 제어 게이트에도 역시 Vdd가 인가된다. 비선택 비트 라인들과 연결된 비선택된 낸드 스트링들은 이러한 낸드 스트링들과 연결된 비선택 워드 라인들에 인가되는 통과 전압에 의해 부스팅된다. 이는 낸드 스트링들 내의 전압을 용량성으로 상승하게 한다. 낸드 스트링의 전압이 VG-VTH에 도달할 때, 선택 게이트는 컷 오프될 것이고, 이에 따라 낸드 스트링에 커플링된 전압이 비트 라인으로 방전되지 않도록 낸드 스트링이 비트 라인으로부터 격리된다. 낸드 스트링의 전압은 VG보다 높아지도록 통과 전압이 상승하는 것에 맞춰 계속 증가될 것이다. 그러나, 비트 라인 바이어스는 최소한 VG- VTH이기 때문에, 선택 게이트는 낸드 스트링의 전압을 약 7.5V로 상승시키는 것을 지속하기 위하여 컷 오프 상태로 남아있을 것이다. 채널에서 전압이 7.5V일 때, 선택 워드 라인의 터널 절연막(tunnel dielectric)에 따른 전압 차이값은 플로팅 게이트로 전자를 터널링할 만큼 충분하지 않다. 프로그램 혼란을 감소시키기 위한 다른 방법으로는, 국부 셀프 부스팅(local self-boosting)과 소거 영역 셀프 부스팅(erased area self-boosting)이 있다. 이와 같은 부스팅에 의한 접근은 "Self-Boosting Technique"이라는 제목으로 2003년 3월 5일에 출원된 미국 특허 출원 제10/379,608호에 개시되어 있으며, 이것은 본 명세서에 참조문헌으로서 인용된다.
도 11A, 11B 및 11C는 도 9의 부스팅 및 프로그램 펄스를 수행하는 단계(520)의 다양한 실시예를 도시한 타이밍도이다. 수평 축은 μsec 단위의 시간을 표시한다. 도 11A는 하나의 펄스를 포함하여 단계(520)를 한번 반복하기 위한 비선택 비트 라인(예를 들어 도 5의 메모리 셀(332)과 관련된 짝수 비트 라인)과 관련된 다양한 신호들의 양상을 도시한다. 도 11A는 비트 라인 전압(VBL)이 5μsec부터 40μsec까지 Vdd(예를 들어 2.5V)를 갖는 것을 보인다. 이것은 각 비트 라인과 연결된 낸드 스트링의 프로그램을 금지시킨다. 선택 게이트 전압(VSGD)(선택 트랜지스터(SGD)의 제어 게이트의 전압)은 5μsec일 때 5V로 상승하고, 10μsec일 때 2.5V(예를 들어 Vdd)로 낮아져, 40μsec까지 유지된다. VSGD가 5V인 5μsec부터 10μsec까지 동안 낸드 스트링의 사전-충전 전압 레벨은 증가한다. 상술한 바대로 이 실시예에서, 메모리 셀(330)이 프로그래밍을 위해 선택되었다고 가정한다. 따라서 WL1은 선택 워드 라인이고, WL0, WL2 및 WL3은 비선택 워드 라인들이다. 통과 전압이라 지칭되는 비 선택 워드 라인들의 전압(VUWL)은 비 선택 워드 라인들에 연결된 메모리 셀의 제어 게이트 전압과 대응하고, 사전-충전을 위해 5μsec일 때 5V로 상승하며, 비 선택 비트 라인들과 관계하는 낸드 스트링을 부스팅하기 위해 10μsec일 때 약 9V로 상승한다. 9V의 통과 전압은 약 35μsec까지 비 선택 워드 라인들에 유지될 것이다. 선택 워드 라인(예를 들어 WL1)에 전압(VSWL)은 사전 충전을 위해 5μsec일 때 5V로 상승된다. 15μsec일 때 프로그램 펄스는 35μsec까지 인가된다. 일 실시예에서, 프로그래밍 펄스는 12V 내지 20V 범위일 수 있다. 소스측 선택 게이트의 제어 전압(VSGS)은 계속 0V이고, 소스 전압(VS)은 2.5μsec에서 Vdd로 상승하여 40μsec까지 유지된다. 낸드 스트링의 결과 전압(resultant voltage, VNAND)은 먼저 사전 충전 레벨이 되고 비 선택된 메모리 셀들의 프로그래밍을 금지하기 위하여 약 7.5V로 부스팅된다.
도 11B는 거침 프로그래밍 상태에서 선택 비트 라인과 관련된 다양한 신호들의 양상을 도시한 타이밍도이다. 이 실시예에서, 프로그래밍을 위한 전체 시간 동안 비트 라인 전압(VBL)이 0V이다. 모든 비트 라인에 같은 선택 게이트 전압(VSGD)이 인가되기 때문에, 드레인측 선택 게이트 트랜지스터는 도 11A에 도시된 것과 같이 전압(VSGD)을 받는다. 유사하게, 일 실시예에서 모든 낸드 스트링들이 금지되었는지 여부와 거침 프로그래밍 또는 미세 프로그래밍인지 여부와 관계없이 동일한 비 선 택 워드 라인 전압(VUWL)과 동일한 선택 워드 라인 전압(VSWL)을 전달받는다. 따라서, 도 11B과 11C에서 VUWL VSWL는 도 11A와 동일하고, VSGD와 VS 도 동일하다. 그러나, 비트 라인 전압이 0V이기 때문에, 부스팅 전위로부터 전압이 접지된 비트 라인으로 전달되며 흩어져 낸드 스트링의 전압은 거의 0V로 유지된다. 그 결과, 15 μsec에서 프로그래밍 펄스가 입력되면, 전자는 플로팅 게이트로 터널링되고 선택된 메모리 셀이 프로그램된다.
도 11C는 미세 프로그래밍 모드의 일 실시예에서 선택 비트 라인과 관련된 다양한 신호의 양상을 도시한 타이밍 도이다. 프로그램의 미세 제어를 인식하기 위해, 일 실시예에서는, 각각의 관련 프로그래밍 펄스에서 플로팅 게이트로 터널링된 누적 전하의 양을 줄인다. 일 실시예에서, 이것은 비트 라인 제어를 이용하여 이루어진다. 미세 제어를 위한 일 실시예는 프로그래밍 펄스의 시작 시점에 프로그램 금지 조건에서 시작된다. 그리고나서, 프로그램 펄스(예를 들어 10μsec에서 20μsec까지 프로그램 펄스)를 통과하는 중에, 비트 라인을 미세 프로그래밍 레벨(예를 들어 0볼트, 1/2 볼트 또는 다른 값)로 떨어뜨리고, 나머지 프로그램 펄스 동안에, 비트 라인을 그 레벨로 유지한다. 이는 낸드 스트링 전압이 약 7.5볼트에서 비트 라인 전압 (예를 들어 0볼트, 1/2 볼트 또는 다른 값)에 가까운 값으로 감소하도록 한다.
금지 모드에서 비트 라인에 의한 프로그램 펄스 개시와 프로그램 펄스 통과 도중에 비트 라인을 드롭하는 것은 유효 프로그래밍 시간을 감소시켜 프로그램 펄 스의 영향을 줄이는 효과를 가진다. 도 11D는 프로그램 펄스를 짧게 하였을 때 효과를 도시한 것이다. 도시된 바와 같이 긴 프로그램 펄스(예를 들어 20μsec)는 짧은 프로그램 펄스(예를 들어 10μsec)보다 높은 문턱 전압을 갖는다.
일부 실시예에서, 비트 라인은 금지 레벨부터 낮은 값(예를 들어 0.5V 또는 0V 정도의 적절하게 낮은 전압)으로 감소하여, 낸드 스트링은 거침/미세 프로그래밍의 미세 상태를 위한 프로그램 펄스의 일부를 금지하지 않는 동안 OV 이상의 전위을 갖는다. 이하 설명될 것과 같이, 0V 이상의 금지 전압 레벨을 갖는 낸드 스트링은 좀 더 느리고 정확한 프로그래밍 프로세스를 허용한다. 예를 들어, 도 11E와 11F는 다양한 채널(낸드 스트링)의 조합에서 프로그래밍 속도가 줄어들고 (예를 들어 프로그램 펄스의 일부를 위해 금지된)프로그래밍 시간이 감소한 실험 결과의 플롯이다. 도 11E는 거침 프로그래밍에 이은 미세 프로그래밍(Vt)의 4개의 커브를 나타낸다. 3개의 커브(0V인 채널, 0.6V인 채널, 1V인 채널)는 펄스 스텝 크기가 스텝 당 400mv 증가하는 20 μsec동안 금지되지 않는 프로그램 펄스를 위한 것이다. 네번째 커브는 0.6V인 채널에 관한 것으로 펄스 스텝 크기가 스텝 당 400mv 증가하는 10 μsec동안 금지되지 않는 프로그램 펄스를 위한 것이다. 제 1 펄스는 각 커브에서 동일한 조건(예를 들어 거침 펄스의 마지막 것)하에 있고, 그 변화는 제 2 펄스(또는 미세 프로그래밍 개시에 즉시 따르는)에서 시작한다. 유사하게, 도 11F는 4개의 커브를 나타낸다. 2개의 커브(0V인 채널과 1.6V인 채널)는 400mv의 펄스 스텝 크기가 증가하며, 40μsec동안 금지되지 않는 프로그램 펄스를 위한 것이다. 세 번째 커브는 0.6V인 채널에 관한 것으로 펄스 스텝 크기가 스텝 당 400mv 증가하 며, 20μsec동안 금지되지 않는 프로그램 펄스를 위한 것이다. 네 번째 커브는 0.6V인 채널에 관한 것으로 펄스 스텝 크기가 스텝 당 400mv 증가하는 프로그램 펄스와 10μsec동안 금지되지 않는 프로그램 펄스를 위한 것이다. 제 1 펄스는 각 커브에 대한 마지막 거침 모드 프로그래밍 펄스를 나타내고, 미세 프로그래밍에 관한 변화는 제 2 펄스에서 시작되는 것임을 주의하자.
상술한 설명에 따라, 도 11C의 타이밍 도는 5μsec에 Vdd로 상승하고 25μsec일 때 프로그래밍 펄스의 중앙까지 Vdd를 유지하는 것을 나타낸다. 다른 실시에에서, 비트 라인은 펄스를 통과하는 도중(예, 1/4의 펄스 통과 중, 3/4의 펄스 통과 중 등) 이외에도 종종 Vdd로부터 0볼트로 전압 강하될 수 있다. 다른 실시예에서, 비트 라인은 프로그래밍 펄스 통과 중 또는 다른 선택된 시간에서 Vdd부터 0V 정도의 낮은 전압(예를 들어 0.6V)으로 떨어질 수 있다. 선택 게이트의 전압(VSGD)과 비 선택 워드 라인 전압(VUWL)과 선택 워드 라인 전압(VSWL)은 도 11A 및 도11B에 관하여 상술한 것과 동일하다. 낸드 스트링의 전압은 5 μsec일 때 최초 사전 충전되고, 10 μsec일 때 약 7.5V로 부스팅된다. 비트 라인 전압이 펄스 동안 떨어질 때, 낸드 전압은 동시에 7.5V부터 약 0V(또는 다른 미리 결정된 낮은 비트 라인 전압)까지 감소할 것이다. 선택 워드 라인 프로그래밍 펄스는 15 μsec부터 35 μsec까지 인가된다.
도 12는 도 9 내지 11의 프로세스의 일 실시예를 실행하기 위해 사용되는 구성요소들을 도시한다. 도 12는 하나의 비트 라인을 위한 회로를 보인다. 일 실시예 에서, 이러한 회로는 어레이의 각 비트 라인을 위한 것일 수 있다. 다른 실시예에서, 이러한 회로는 한 쌍(예를 들어 각 짝수/홀수 쌍)의 비트 라인을 위한 것일 수 있다. 도 12는 스위치(600)와 커패시터(602)와 연결된 비트 라인을 도시한다. 커패시터의 다른 단자는 접지와 같은 기준 전위와 연결된다. 전기 용량은 그것의 비트 라인과 연결된 커패시터로부터 기인한다. 스위치(600)는 사전 충전 전압 회로(Vprecharge)와 연결되며, 감지 증폭기(610)의 입력과도 연결된다. 신호(Vref)는 감지 증폭기(610)의 입력과 또한 연결된다. 감지 증폭기(610)의 출력은 C/F 레지스터(620)와 록 아웃 레지스터(622)에 제공된다. C/F 레지스터(620)의 출력은 멀티플렉서(630)와 멀티플렉서(604)로 데이터를 제공한다. 멀티플렉서(630)는 스트로브 신호(Tc와 Tf)를 전달받고, C/F 레지스터(620)로부터의 데이터에 따라 두 신호들 중 하나를 선택한다. 멀티플렉서(630)의 출력은 감지 증폭기(610)와 연결되어 시간에 따른 감지를 제어한다.
도 12의 구성요소들의 검증 동작은 비트 라인 방전 확인 프로세스에 기초한다. 우선 비트 라인은 사전-충전된다. 이어서 검증 펄스가 비트 라인에 붙어있는 메모리 셀의 제어 게이트로 제공된다. 따라서 비트 라인은 방전된다. 방전률에 따라 메모리 셀이 특정 문턱 전압 레벨 이상인지 또는 이하인지가 결정될 수 있다.
도 12A는 시간에 따른 비트 라인 전압(Vb1)의 그래프이다. 일 실시예에서, 사전-충전 상태에서 시작한 비트 라인은 시간 T의 주기를 지나며 방전된다. 시간 T일 때, 비트 라인의 전압은 기준 전압(Vref)과 비교된다. 비트 라인 전압이 Vref보다 높으면, 메모리 셀은 낮은 구동력을 갖고 목표 문턱 전압(target thereshold voltage)보다 더 프로그램된다. 시간 T일 때, 비트 라인 전압이 Vref보다 낮으면, 메모리 셀의 문턱 전압은 목표 문턱 전압보다 낮다. 거침/미세 프로그래밍 방법론을 사용하여 프로그램되는 메모리 셀에 적용을 위해, 일 실시예에서(도 12) 시간 T는 거침 프로그래밍에 관련된 방전 시간 Tc와 미세 프로그래밍에 관련된 방전 시간 Tf로 변화될 수 있다. 선택 가능한 실시예에서, 거침 프로그래밍에 대한 하나의 Vref와 미세 프로그래밍에 대한 다른 Vref를 가지도록 함으로써, 비교 지점이 거침/미세 프로그래밍 사이에서 변경될 수 있다.
도 12에 도시된 장치의 일 실시예에서, C/F 레지스터(420)는 특정 메모리 셀이 거침 프로그래밍 모드인지 또는 미세 프로그래밍 모드인지를 표시하는 1-비트 레지스터(또는 래치)이다. C/F 레지스터(620)에 저장된 값은 멀티플렉서(630)로 전달된다. 감지 증폭기(610)는 멀티플렉서(630)에 의해 지시된 기준 시간 스트로브에서 비트 라인 전압과 기준 전압(Vref)을 비교하는 회로를 포함한다. 프로그래밍을 하는 동안, 메모리 셀이 거침 프로그래밍 모드에 있으면, 멀티플렉서(630)는 거침 모드 프로그래밍 기준 시간 스트로브(Tc)를 감지 증폭기(610)로 전송할 것이다. 거침 모드 동안, 비트 라인은 Tc로 표시되는 시간 동안 기준 값(Vref) 이하로 방전되지 않기 때문에 감지 증폭기(610)는 거침 검증 프로세스가 성공적으로 수행되었다고 판단하고, C/F 레지스터(620)를 거침 상태(C)에서 미세 상태(F)로 전환할 것이다. 메모리 셀이 미세 프로그래밍 모드이면, 멀티플렉서(630)는 미세 모드 프로그래밍 기준 시간 스트로브(Tf)를 감지 증폭기(610)로 전송할 것이다. 미세 모드 동안, 비트 라인은 Tf로 표시되는 시간 동안 기준 값(Vref) 이하로 방전되지 않기 때 문에 감지 증폭기(610)는 미세 검증 프로세스가 성공적으로 수행되었다고 판단하고, 록 아웃 레지스터(622)가 후속 프로그래밍으로부터 메모리 셀이 차단되는 것을 표시하도록 할 것이다.
스위치(600)는 멀티플렉서(604)로부터 입력을 받는다. 멀티플렉서(604)는 선택될 수 있는 두 개의 입력, 0 볼트(프로그래밍을 허락함)와 Vdd(프로그래밍을 금지함)을 갖는다. 다른 실시예에서, 다른 전압이 사용될 수 있으며, (예를 들어 2 이상의 입력을 갖는 멀티플렉서를 이용하여) 두 개 이상의 전압이 사용될 수도 있다. 멀티플렉서(604)는 선택 논리 회로(636)에 의해 제어된다. 선택 논리 회로(636)는 C/F 레지스터(620), 록 아웃 레지스터(622) 및 타이머(또는 카운터)(634)로부터 데이터를 입력받는다. C/F 레지스터(620)는 메모리 셀이 거침 또는 미세 모드인지 여부를 나타낸다. 록 아웃 레지스터(622)는 메모리 셀이 후속 프로그래밍 시 록 아웃(금지)되어야 하는지 여부를 나타낸다. 일 실시예에서, 타이머(634)는 프로그램 펄스가 시작될 때 카운트 다운이 시작되도록 프로그램될 수 있는 타이머이다. 타이머(634)는 프로그램 펄스 중간에 0에 이르도록(그리고 출력이 0을 나타내도록) 프로그램된다. 다른 실시예에서, 타이머는 펄스를 통과하는 중간 이외의 경우에도 때때로 0을 나타낼 수 있다.
선택 논리 회로(636)는 메모리 셀의 프로그래밍이 록 아웃될 때 멀티플렉서(604)가 비트 라인으로 Vdd를 인가하도록 한다. 선택 논리 회로(636)는 메모리 셀이 거침 모드에서 프로그램될 때 멀티플렉서(604)가 비트 라인에 0V를 인가하도록 한다. 메모리 셀이 미세 모드에서 프로그램될 때 선택 논리 회로(636)는 초기에 멀티 플렉서(604)가 비트 라인에 Vdd를 인가하도록 한다. 선택 논리 회로(636)는 (타이머(634)에 의해 제어되는) 멀티플렉서(604)로 전달되는 선택 신호를 변경하여 비트 라인 전압이 변화되도록 하며, 따라서 프로그램 펄스를 통과하는 중(예, 절반 지점)에 프로그램 펄스의 멀티플렉서(604)의 출력이 Vdd에서 0볼트로 변화한다.
일부(전부가 아님) 실시예에서, 많은 수의 메모리 셀들이 동시에, 병렬로, 프로그램되며, 프로그램 펄스 동안 비트 라인 전압을 변경하는 것은 (일부의 경우에), 매우 짧은 시간 간격 동안 가로놓인 제어 게이트 상에 특정 전압 노이즈를 결합하여 프로그램 제어에 충격을 가하거나 취약성을 증가시킬 수 있다. 어느 정도까지 이런 현상이 특정 설계의 상세 사항에 따른 한계가 된다. 이러한 문제점에 대처하는 하나의 방법은 비트 라인의 전압을 낮추기 바로 전에 프로그램 전압(VSWL)을 2.5볼트로 낮춘 다음, 비트 라인의 전압이 낮아진 후에 프로그램 전압을 최대 크기로 다시 증가시키는 것이다. 예를 들어, 도 11A-C는 점선(590)을 도시한다. 점선은 23μsec에서 프로그램 전압을 2.5볼트로 낮춘 후에 27μsec에서 프로그램 전압을 다시 전체 크기로 키우는 것(이는 비트 라인이 낮아진 후이다)을 나타낸다.
본 발명의 다른 실시예 세트는 낸드 스트링에 전압 레벨을 제어하기에 적합하다. 상기 논의된 두개의 제한 조건(낸드 스트링의 총 부스팅 대 0V 또는 이에 가까운 전압을 갖는 낸드 스트링의 프로그램 조건)은 가능한 전압 조건의 연속체(continuum)이고, 그 값은 낸드 스트링에 유지되는 전압(예를 들어 0V부터 7.5V의 범위)에 의해 표시될 수 있다. 주어진 제어 게이트 전압 조건에서, 낸드 스트링 에서 전압 상승은 프로그래밍 속도를 늦춘다. 예를 들어 도 13A는 서로 다른 비트 라인 전압들에 대한 거침 단계에 바로 뒤이은 거침/미세 프로그래밍의 미세 단계에서 인가되는 프로그램 펄스에 대한 문턱 전압의 변화를 나타낸다. 상승한 비트 라인 전압(일반적으로 거침 프로그래밍 동안 0V)은 낸드 스트링을 통과하고, 결과적으로 프로그램된 셀의 터널 옥사이드를 따라 채널 전위를 상승시키고 그 결과 전압을 감소시킨다. 따라서, 메모리 셀 프로그램은 느려진다. 도 13A는 프로그램 펄스를 위해 0.4mV 계단 크기를 갖는 제어 게이트 계단(도 7을 보라)의 경우에 있어서 프로그래밍 속도가 감소하는 것을 제공한다. 도 13A는 비트 라인 전압(Vb1)이 0V, 0.4V, 0.8V, 1.2V, 1.6V 및 2V일 때, 거침 상태(Vb1 이 0V임)에 곧 이어서 거침/미세 프로그래밍의 미세 상태를 위한 문턱 전압 대 프로그램 펄스 수의 점진적인 증가에 대한 플롯이다. 예를 들어, 비트 라인 전압을 1.2V로 증가시킴으로써, 프로그램 동작이 느려진다. 이에 따라, 비트 라인 전압이 0볼트에서 유지되고 메모리 셀은 10의 계수로 느려지는 미세 모드에서 하나의 펄스 후에 문턱 전압을 359mv 만큼(비트 라인 전압이 0볼트에서 유지되는 경우) 증가시키기보다는 34mv 만큼 증가시킨다.
제어 게이트 커플링을 거쳐 낸드 스트링에 임의의 전압 레벨(즉, 최대 승압된 7.5볼트의 전위보다 작은 전위)을 실현하기 위해, 낸드 스트링이 보이는 커플링의 순 크기(net amount)를 제어하는 것이 필요하다. 이를 수행하기 위한 일 예는 커플링된 전하의 일부를 방전하는 것이다. 이러한 방전이 어떻게 수행되는지 설명 하기 위해, 제어 게이트의 부스팅 파형을 계단식으로 시각화하는 것이 (예시적인 목적으로) 유용하다. 실제 구현 예는 설계시의 필요성에 따라 이러한 개념적 접근법과 달라질 수 있다. 예를 들어, 9볼트 부스팅 파형이 한 단계당 1볼트를 가지는 9 단계의 계단파 형식으로 형성된다. 9 단계는 시간 빈(bin)과 관련된다. 제어 게이트 상에 1 볼트가 증가 될 때마다 약 0.8 볼트만큼 낸트 스트링 전압이 상승하며, 대응하는 비트 라인 전압이 금지 레벨(예, Vdd)에서 유지되는 동안 낸드 스트링은 유사한 계단 파형(단계 당 0.8 볼트 식 증가하는)을 입력받는다. 비트 라인 전압이 0 볼트를 유지하는 경우에, 전압 부스팅이 발생하지 않는다(즉, 낸드 스트링은 0 볼트이다). 부분적인 부스팅을 실현하기 위해서, 계단 파형으로 전압을 부스팅 하는 동안에 어느 시점에서 비트 라인 전압이 0 볼트 레벨로부터 금지 레벨로 상승할 수 있다. 제 1 단계 후에 이와 같이 상승한다면, 제어 게이트와 8볼트로 커플링되거나 약 6.5볼트로 부스팅된다. 마찬가지로, 제 2 단계 후에 상승한다면, 낸드 스프링은 약 5.6 볼트 등으로 부스팅되며, 이로써 0.8 볼트, 1.6 볼트, 2.4 볼트...총 부스팅 전위에 이르는 (이 실시예에서) 커플링된 전압 레벨을 제공한다. 계단 파형 종료 후에 발생하도록 금지 조건이 정해지는 경우에, 0볼트 전위도 사용가능하다는 점에 주목하자.
이러한 접근법은 거침/미세 프로그래밍 프로세스의 미세 프로그래밍 과정에 적용될 수 있다. 이는, 충분한 미세 프로그래밍을 하기 위해 (일 실시예에서) 낸드 스트링에 약 1.6볼트가 필요하다. 제어 게이트 부스팅 전압은 두 단계로 구성된다. 제 1 단계는 부스팅 전압을 7 볼트로 상승하는 단계를 포함한다. 제 2 단계는 부스 팅 전압을 7볼트에서 9볼트로 상승시키는 것을 포함한다. 거침 프로그래밍의 경우, 두 단계를 거치는 내내 비트 라인이 접지 상태를 유지한다. 프로그램 금지 동안에, 비트 라인은 두 단계를 거치는 내내 금지 전압을 유지한다. 그러나, 메모리 셀이 미세 프로그램 단계에 있으면, 제 1 부스팅 단계 동안 관련 비트 라인이 접지 상태를 유지하고, 이 비트 라인은 제 2 단계 동안 금지 레벨로 상승한다. 부스팅의 남아있는 2 볼트로 인해 낸드 스트링은 1.6v 전압 레벨로 커플링된다.
하나의 이슈는 제한된 저장 낸드 스트링(예, 8, 16, 32 등의 셀)이 상술한 조건 하에서 유용한 터널링을 뒤받침할 수 있는가 하는 것이다. 예시적인 목적으로, 약 0.8fF의 전체 커패시턴스(capacitance, 전기 용량)를 가지도록 설정된 16 셀의 낸드 스트링에 대해 고려한다. 이러한 전기 용량의 주요한 두 가지 구성요소는 (1)바이패스된 15 개의 낸드 셀들과 축적가능한 낸드 스트링 정션(junction)으로부터 제어 게이트 캐퍼시턴스(예, 터널 옥사이드 캐퍼시턴스를 통해 플로팅 게이트 향하는 채널과 인터폴리(interpoly) ONO 커패시턴스-셀 당 약 0.05fF로 설정됨- 통해 제어 게이트로 향하는 플로팅 게이트로의 채널의 일련의 조합)로의 채널 그리고 (2)기판/웰(well)로의 채널 전기 용량이다. 단일 플로팅 게이트의 전기 용량은 약 0.2fF로 설정된다. 단일 프로그래밍 펄스(예, 미세 프로그래밍을 위해)에서 약 100mV 씩 셀의 문턱 전압을 이동시키는 목적을 위해, 60% 제어 게이트 커플링 비를 가정한다. 이것은 낸드 스트링 양극(cathode)으로부터 터널링된 전하에 의해 음 전압에서 60mV 상승으로 이동한다. 플로팅 게이트 전기 용량에 따라 주어진 4:1 비율의 낸드 스트링 전기 용량은 낸드 스트링 전위에서 60/4=15mV 상승으로 이동한다. 양극 전위에 상승에도 불구하고 터널링 전류는 감소하는 반면, 이와 같은 상대적으로 작은 상승은 프로그래밍에 비례하는 작은 충격을 가한다.
더 큰 충격은 낸드 스트링으로 프로그래밍 제어 게이트(약 20V로 상승할 수 있음)의 전기 용량 커플링에서 온다. 대략 6.25%(약 0.05fF÷0.8fF)의 커플링을 계획하기 위해, 총 20V 제어 게이트 스윙(예를 들어 0V에서 시작됨)은 낸드 스트링으로 1.2V까지 용량적으로 이동하여, 터널링 전류를 감소시키는데 더 많은 충격을 가진다. 커플링된 크기를 감소시키기 위해, 전압 스윙이 감소되어야 하고, 프로그래밍 제어 게이트가 어떤 중간 전압(intermediate voltage)에서 시작되는 것에 의해 이루어질 수 있다. 하나의 접근법은 부스팅 상태 동안 비 선택된 제어 게이트의 파형 형태를 따르는(또는 부분적으로 따르는) 선택된 제어 게이트를 갖는 것이다. 이로 인해 20V 레벨을 얻기 위한 추가적인 전압 상승은 감소한다. 어쨌든 선택된 제어 게이트가 어드레스가 지정된 메모리 셀에 비트 라인부터 낸드 스트링의 나머지(소스 측)으로 전송 패스를 보증하기 위하여 초기 부스팅에 참여하는 것은 유익하다.
데이터 패턴 민감도에 대한 이슈는 낸드 스트링 전체에 걸친 통신 가능성에 대한 이슈와 관련된다. 특히, 이러한 셀들을 프로그래밍하여야 하기 때문에, 프로그래밍 되는 목표 셀과 소스 측 사이에서 셀에 통신이 유지될 필요가 있다. 통신에 의해, 낸드 스트링으로 인가되는 부스팅 전위는 어떤 것이든지 낸드 스트링에 속하는 모든 메모리 셀이 (일 실시예에서) 데이터 패턴에 독립적으로 그 값을 제공하는데 관여한다. 어느 메모리 셀에 할당된 최대 문턱 전압으로 인해 부스팅 제어 게이 트는 비트 라인이 접지부터 금지 전위까지 구동될 때 적어도 최소 문턱 전압(가드 반(guard ban)을 위해 약간의 여분을 더함)의 바닥 레벨까지 도달하는 것을 의미한다. 낸드 스트링 내의 모든 바이패스 메모리 셀은 데이터 패턴과 상관없이 같은 크기의 채널 부스팅을 얻는 것을 의미한다. 문턱 전압의 바닥이 4.25V이고 최대 제어 게이트 부스팅 레벨은 9V로 가정하면, 부스팅이 가능한 것은 약 4.75V으로 거침/미세 프로그래밍에서 필요한 것보다 더 충분하다.
도 13B는 다른 부스팅 전압을 위해 거침/미세 프로그래밍의 미세 상태 동안 인가되는 프로그램 펄스를 위한 문턱 전압의 변화를 도시한 그래프이다. 도 13B에 도시된 데이터는 낸드 스트링의 전압 상승을 위해 부스팅 전위를 사용하는 것이 정확한 프로그래밍 제어를 위해 사용되어 질 수 있다는 개념을 명확하게 하는 것이다. 예를 들어 도 13B는 6개의 커브를 도시하는데, 이는 거침 프로그래밍에 즉시 이어서 거침/미세 프로그래밍의 미세 모드 시 펄스에 따라 문턱 전압이 변화하는 것을 도시한다. 즉, 펄스 #1은 미세 모드의 제 1 펄스이고 거침 모드를 따른다. 6개 커브 각각은 프로그램 펄스 적용에 앞서 낸드 스트링에 존재하는 서로 다른 부스팅 전압과 관련된다. 아무런 데이터도 표시되지 않은 제 1 커브는 프로그램 펄스의 적용에 앞선 낸드 스트링내의 0V의 부스팅 전압과 관련된다. 제 2 커브는 프로그램 펄스의 적용에 앞선 낸드 스트링내의 0.5V의 부스팅 전압과 관련된다. 제 3 커브는 프로그램 펄스의 적용에 앞선 낸드 스트링내의 1.0V의 부스팅 전압과 관련된다. 제 4 커브는 프로그램 펄스의 적용에 앞선 낸드 스트링내의 1.5V의 부스팅 전압과 관련된다. 제 5 커브는 프로그램 펄스의 적용에 앞선 낸드 스트링내의 2.0V 의 부스팅 전압과 관련된다. 제 6 커브는 프로그램 펄스의 적용에 앞선 낸드 스트링내의 2.5V의 부스팅 전압과 관련된다. 도시된 바와 같이, 낸드 스트링에 부스팅 전위의 상승은 프로그래밍 속도를 늦춘다. 예를 들어 미세 모드에서 두개의 펄스 이후에, 부스팅 전위 1V의 영향을 받는 메모리 셀은 미세 모드 동안 그것의 문턱 전압이 385mv상승하고, 부스팅 전위 2.5V의 영향을 받는 메모리 셀은 미세 모드 동안 그것의 문턱 전압이 31mv 상승한다. 도 13B의 케이스의 동작에서, 선택 워드 라인은 통과 워드 라인의 부스팅 전압 레벨로 상승하기보다는 부스팅 상태 동안 0V를 유지했다.
도 14A, 14B 및 14C는 상술한 바와 같이 채널/낸드 스트링을 각기 부스팅함으로써 비휘발성 메모리 셀을 부스팅 및 프로그래밍(도 9의 단계(520)의 이행)하기 위한 실시예들을 도시한 타이밍도이다. 특히, 도 14A는 프로그래밍을 위해 선택되어 미세 프로그래밍 모드를 수행하는 낸드 스트링의 다양한 신호의 양상을 도시한 것이다. 선택 트랜지스터의 제어 게이트의 전압(VSGD)은 모든 낸드 스트링에 사전 충전을 허용하기 위해 5μsec 시 5V로 초기에 상승된다. 10μsec 시, VSGD는 금지를 인에이블 하기 위해 필요한 바이어스 레벨을 나타내기 위해 Vdd로 떨어지고 약 43μsec까지 유지한다. 비선택 워드 라인의 전압(VUWL)은 5μsec 시 약 7V로 상승하여 15 μsec까지 유지되고, 이어 약 9V로 상승되어 40 μsec까지 유지된다. 선택 워드 라인의 전압(VSWL)은 5 μsec 시 약 5V로 상승하여 프로그램 펄스 시작 시까지 유지된다. 프로그램 펄스는 20 μsec에서 시작되어 약 40 μsec에 끝난다. 소스 측 선택 게이트 트랜지스터의 전압(VSGS)은 접지되고, 소스 전압(VS)는 Vdd이다. 낸드 스트링 전압(VNAND)은 비트 라인이 제 1 부스팅 펄스 동안 (VUWL 이 0V부터 7V로 상승할 때)접지되므로 초기에 0V이다. 비트 라인은 제 2 부스팅 상태(예를 들어 이전 VUWL 이 9V로 막 상승할 때)를 위해 약 12 μsec에서 Vdd로 상승하기 때문에, 낸드 스트링 전압은 15 μsec에서 약 1.6V로 부스팅될 것이다. 프로그램 펄스가 20 μsec에서 시작될 때, 낸드 스트링 전압은 약간 상승하고(이전 언급된 커플링과 터널링 메카니즘을 통해 실제 전압과 전기 용량에 따라 의존되고 1V 정도일 수 있음), 약 40μsec까지 조건이 유지된다. 낸드 스트링은 적어도 부분적으로 부스팅되기 때문에, 프로그래밍이 늦어질 수 있다. 즉, 플로팅 게이트로 터널링되는 전자의 수는 감소될 것이며, 따라서 문턱 전압은 거침 프로그래밍 동안 보다 약간 증가할 것이다.
도 14B는 거침 프로그래밍 모드에 있는 선택 비트 라인 및 워드 라인 상의 신호의 양상을 도시한 타이밍 도이다. 관련된 시간 프레임 동안, 비트 라인은 접지된다. 드레인 측 선택 게이트 트랜지스터의 제어 게이트에 전압(VSGD), 비 선택 워드 라인의 전압(VUWL), 선택 워드 라인의 전압(VSWL), 소스 전압 및 소스 측 선택 게이트 트랜지스터의 전압(VSGS)(프로그램을 위해 선택된 블록의 모든 셀에 공통됨)은 도 14A에 도시된 것과 동일하다. 비트 라인이 접지되었기 때문에, 낸드 스트링 전위는 접지 전압 또는 그 근방으로 유지되고 거침 프로그래밍 모드가 발생된다.
도 14C는 비 선택 비트 라인과 연결된 관련 신호들의 양상을 도시한 타이밍도이다. 비트 라인이 프로그래밍을 위해 선택되지 않았기 때문에, 비트 라인은 Vdd로 유지된다. 드레인 측 선택 트랜지스터, 비 선택 워드 라인, 선택 워드 라인, 소스측 선택 트랜지스터 및 소스의 전압은 도 14A에 도시된 것과 같다. 완전한 부스팅 프로세스를 위해 비트 라인은 Vdd를 유지하기 때문에, 낸드 스트링은 각 부스팅 신호에 따라 최대 전위 레벨로 부스팅될 것이다. 따라서, 프로그램은 금지된다. 예를 들어 낸드 스트링은 부스팅 신호의 제 1 상태에 의해 5.6V로 부스팅되고, 여기에 이어서 부스팅 신호의 제 2 상태에 의해 7.2V로 부스팅될 것이다. 프로그램 펄스가 20μsec에서 시작될 때, 낸드 스트링의 전압은 약간 증가하고(커플링으로 인해, 크기는 실제 전압과 전기 용량에 따라 달라짐), 프로그램 동작이 끝나는 지점인 약 40μsec까지 금지 상태가 유지된다.
상술한 실시예의 일 측면은 단지 제 2 부스팅에 앞서 낸드 스트링 사전-충전 전위를 소개한다. 이는 연결된 비트 라인을 0V부터 금지 전압 레벨(예를 들어 Vdd)까지 상승시킴으로써 제 2 부스팅이 인에이블되기 때문에 발생한다. 이러한 비트 라인 전압 상승 프로세스 동안, 낸드 스트링 전압은 바이어스된 선택 게이트 전압(VSGD)의 소스 팔로어(follower) 동작에 의해 지시되는 레벨로 증가할 것이다. 이런 (바람직하지 못한 범위로의) 추가적인 낸드 전압 상승을 최소화하기 위하여, 선택 게이트의 전압 선택이 최소화될 수 있다.
도 15는 드레인 측 선택 트랜지스터의 제어 게이트에 인가되는 전압(VSGD)을 감소시키는 선택적인 실시예에 따라 미세 상태 프로그래밍 동안 프로그래밍하도록 선택된 낸드 스트링을 위한 신호의 양상을 도시한 것이다. 도 15와 도 14A의 핵심적인 차이점은 선택 게이트(VSGD) 파형 형태이다. 낸드 스트링과 그에 연결된 비트 라인 간의 전송을 제어하는 선택 게이트 신호(VSGD)는 도 14A와 동일하게 우선 5 μsec일 때 5V로 상승한다. 선택 게이트 전압(VSGD)은 대략 10 μsec일 때 전압을 0V로 떨어뜨려 대략 17 μsec까지 유지한다. 떨어진 선택 게이트 전압(VSGD)은 10 μsec부터 17 μsec 기간 동안 비트 라인 전압을 (초기 부스팅을 방전하기 위해 사용되는) 0V부터 (제 2 부스팅을 인에이블하기 위해 준비된) 금지 전압으로 상승하고 제 2 부스팅 단계를 수행하여 연결된 비트 라인으로부터 낸드 스트링을 컷 오프한다. VSGD 장치와 그것에 연결된 소스 팔로어(source follower) 작동 개시 전에 먼저 이 부스팅을 실행함으로써, 낸드 스트링은 제 2 부스팅 이전에 상기 기술된 소스 폴로어 전압 개시 조건으로 상승되지 않는다. 이러한 부스팅 접근법은 일단 커플링된 전압이 선택 게이트 전압과 문턱 전압의 차를 초과하면 커플링된 전기 용량을 초과하여 낸드 스트링으로 추가적인 전압을 더 이상 유발하지 않는다.
도 12의 장치(또는 그것의 변형)는 도 14 내지 15의 실시예들을 구현하기 위해 사용될 수 있음을 주지하라. 카운트다운 타이머(634)는 부스팅 전압의 주기 내에서 비트 라인 전압(VBL)을 상승시키기 위한 타이밍을 결정하는데 사용될 수 있다. 적절하게, 상승될 비트 라인의 타이밍은 소프트웨어에 의해 구현되거나, 비선택 워 드 라인 전압을 비교기로 비교하는 것에 의해 구현되거나, 알려지거나 당업자에 의해 알 수 있는 다른 수단에 의해 구현될 수 있다. 도 9 및 10의 프로세스는 도 14 내지 15의 실시예에 적용된다.
상술한 실시예들은 거침/미세 프로그래밍을 잘 수행하기 위하여 프로그램 시간 제어 또는 낸드 스트링 전압(또는 채널 전압) 제어에 의해 프로그래밍 속도 그리고/또는 정확성을 제어한다. 이와 같은 기술은 거침/미세 프로그래밍을 사용하지 않는 메모리 셀의 정확성 및 타이밍 제어에도 사용되어 질 수 있다. 예를 들어 위와 같은 접근은 지시된 프로그래밍 낸드 스트링 또는 시간의 데이터-상태를 제공하는 것에 의해 데이터-상태 커스토마이징 프로그래밍(data-state customized programming)을 제공하는데 제공될 수도 있다. 일 실시예에서, 상기 아이디어는 각 데이터 상태에 대한 적합한 낸드 스트링(또는 채널) 전압 또는 프로그램 시간을 제공한다.
부스팅된 낸드 스트링 전압 기술을 이용하여, 최고 문턱 전압 상태의 프로그래밍에 최저 부스팅된 전압(아마도 낸드 스트링은 고정적으로 0V임)을 사용할 수 있으며, 점차 낮은 문턱 전압 상태는 높은 부스팅 전압을 사용한다. 모든 상태를 동시에 프로그램하는 동안, 모든 서로 다른 문턱 전압 상태를 프로그램하는데 필요한 펄스의 수가 감소될 수 있다. 가변 비트 라인 전압을 구현하여 직접 통신에서 고정된 낸드 스트링 전압을 사용하는 경우에도 유사한 고려사항이 적용된다.
프로그램 펄스가 사용되는 동안의 타이밍에 있어서, 비트 라인은 각 메모리 셀에 프로그램될 데이터 상태에 따라 서로 다른 시간에 Vdd로부터 0V까지 떨어진 다. 높은 문턱 전압 상태는 빠르게 비트 라인을 떨어뜨릴 수 있으며, 낮은 상태는 나중에 비트 라인을 떨어뜨린다. 예를 들어 4개의 상태 메모리 셀에 있어서, 최고로 높게 프로그램된 상태(도 6의 문턱 전압 분포 466를 보라)는 비트 라인이 프로그램 펄스 인가 전에 떨어진다. 메모리 셀이 중간 프로그램 상태(도 6의 문턱 전압 분포 464를 보라)이면, 비트 라인은 Vdd부터 0V까지 프로그램 펄스의 25% 지점(20 μsec 펄스에서 5 μsec)에서 떨어진다. 메모리 셀이 최저 프로그램 상태(도 6의 문턱 전압 분포 462를 보라)이면, 비트 라인은 프로그램 펄스의 50% 지점(20 μsec 펄스에서 10 μsec)에서 떨어진다.
도 16은 상술한 대로 다수 메모리 셀이 비트 라인을 적절하게 조정하여 다수의 프로그래밍 상태로 동시에 프로그래밍 되는 변경 실시예에 따라 프로그래밍하는 프로세스를 도시하기 위한 흐름도이다. 단계(652 내지 660)는 도 9의 단계(502 내지 510)와 유사하다. 단계(670)에서, 적절한 비트 라인 시간이 설정된다. 예를 들어 프로그램 펄스 동안 비트 라인 전압이 변화되는 실시예에서, 시간 값은 비트 라인을 Vdd부터 0V로 떨어지게 하는 펄스로부터 얼마나 떨어져 있는지를 나타내기 위해 각 비트 라인에 저장될 것이다. 다수 부스팅 상태를 사용하는 실시예를 위해, 시간 값은 비트 라인이 상승하도록 하는 부스팅 상태 동안의 시간을 나타내기 위해 각 비트 라인을 위해 저장될 것이다. 단계(672)에서, 부스팅이 수행되고 프로그램 펄스가 인가된다. 단계(674)에서, 문턱 전압이 상태 목표(target) 레벨에 도달하였는지 여부를 조사하기 위해 메모리 셀이 검증된다. 도 16의 단계(676 내지 684)는 도 9의 단계(524 내지 532)와 유사하다. 단계(684) 이후에, 다음 프로그램 펄스를 위해 프로세스 루프가 단계(672)로 복귀한다.
도 17A는 다수의 부스팅 상태가 프로그래밍을 제어하기 위해 사용될 때 구현하기 위한 도 16의 단계(672)를 수행하는 프로세스의 일 실시에를 도시한다. 도 17A는 프로그램된 3개의 서로 다른 메모리 셀에 대한 3개의 비트 라인 전압을 도시한다. 비트 라인 전압(S2-VBL)은 도 6의 문턱 전압 분포(466)로 프로그램된 메모리 셀에 대응된다. 비트 라인 전압(S1-VBL)은 문턱 전압 분포(464)로 프로그램된 메모리 셀에 대응된다. 비트 라인 전압(S0-VBL)은 문턱 전압 분포(462)로 프로그램된 메모리 셀에 대응된다. 선택 게이트 파형 형태(VSGD)와 선택 워드 라인 파형 폼(VSWL)은 도 14A에 나타난 것과 유사하다. 그러나, 비 선택 워드 라인 전압(VUWL)은 세가지 부스팅 상태의 단계로 나뉜다. 비 선택 워드 라인 전압(VUWL)이 5μsec에서 0V부터 3V로 상승할 때 제 1 부스팅 상태가 발생한다. 제 2 부스팅 상태는 비 선택 워드 라인 전압(VUWL)이 10μsec에서 3V부터 6V로 상승할 때 발생한다. 제 3 부스팅 상태는 비선택 워드 라인 전압(VUWL)이 15μsec에서 6V부터 9V로 상승할 때 발생한다. 다른 값이 사용될 수도 있음을 주의하라. 가장 많이 프로그램된 문턱 전압 분포(예를 들어 도 6의 분포(466))로 프로그램된 메모리 셀을 위해, 비트 라인은 제 3 부스팅 상태 이후까지 Vdd로 상승하지 않는다. 특정 상태(S2-VBL)는 선택적으로 0V에 걸쳐 유지될 수 있다. 임계 분포(464)로 프로그램된 메모리 셀(S1-VBL과 대응 됨)은 제 2 부스팅 상태 이후에 그것의 비트 라인을 상승시킴으로써 제 3 부스팅 상태에 참여할 것이다. 임계 분포(462)로 프로그램된 메모리 셀(S0-VBL과 대응 됨)은 제 1 부스팅 상태 이후에 그것의 비트 라인을 상승시킴으로써 제 2 부스팅 상태와 제 3 부스팅 상태에 참여할 것이다. 비선택 워드 라인의 부스팅 신호는 계단 형태로 보이나, 부스팅 신호가 일직선이거나, 일부는 일직선이지만 일부는 커브를 갖는 등의 다양한 부스팅 상태를 갖는 커브 형태로 나타낼 수 있다.
도 17B는 프로그램 펄스 동안 비트 라인 전압을 변경하는 것에 의해 프로그래밍을 제어하기 위한 기술을 실행하는 도 16의 단계(672)와 선택 가능한 실시예이다. 도 17B는 3개의 메모리 셀을 위한 비트 라인 전압을 도시한다. 비트 라인 전압(V2BL)은 도 6의 임계 분포(466)로 프로그램된 메모리 셀과 대응된다. 비트 라인 전압(V1BL)은 임계 분포(464)로 프로그램된 메모리 셀과 대응한다. 비트 라인 전압(V0BL)은 임계 분포(462)로 프로그램된 메모리 셀과 대응한다. 비트 라인 전압(V2BL)은 20 μsec에서 Vdd부터 0V까지 변화하는데, 이는 프로그램 펄스(VSWL)의 25%에 해당한다. 프로그램 펄스(VSWL)는 15μsec 시점에서 시작하여 35μsec 시점에서 끝난다. 비트 라인 전압(V1BL)은 25 μsec에서 Vdd부터 0V까지 변화하는데, 이는 전압 펄스의 절반이다. 비트 라인 전압(V0BL)은 30 μsec에서 Vdd부터 0V까지 변화하는데, 이는 전압 펄스의 75%에 해당한다. V2BL은 시간 순서상 빨리 변화하기 때 문에, V2BL 연결된 메모리 셀은 더 많은 프로그램 펄스를 전송받고, V1BL 또는 V0BL과 연결된 메모리 셀보다 많이 프로그램될 것이다. 동일한 프로그래밍 하중 관계를 유지하기 위하여 다른 시간이 사용될 수도 있다.
도 18은 도 17A 및 도 17B의 실시예들에 대한 프로그램 및 검증 동작을 실행하는데 사용되는 구성 요소들의 일 실시예를 나타내는 블럭도이다. 도 18에 도시된 많은 구성요소들은 도 12의 구성요소들과 유사하다. 도 18은 스위치(700)와 커패시터(702)에 연결된 비트 라인을 도시한다. 커패시터의 다른 단자는 접지와 같은 기준 전위에 연결된다. 스위치(700)는 사전 충전 전압회로(Vprecharge)에 연결되고, 감지 증폭기(704)의 입력과 멀티플렉서(714)의 출력에 함께 연결된다. 신호(VREF)는 감지 증폭기(704)의 입력에 연결된다. 감지 증폭기(704)의 출력은 데이터를 록 아웃 레지스터(706)로 제공한다. 록 아웃 레지스터(706)의 출력은 선택 논리 회로(708)에 제공된다. 일 실시예에서, 도 18의 장치는 거침/미세 프로그래밍을 수행하지 않고, 두개의 다른 타이밍 스트로브(도 12에 도시된)를 전달받을 필요도 없다. 오히려, 타이밍 스트로브는 감지 증폭기(704) 내부에 있을 수 있다. 선택 가능한 실시예에서, 도 18의 구성요소들은 거침/미세 프로그래밍을 수행하여, 도 17A와 17B에 도시된 실시예들이 하나 이상의 프로그램 가능한 상태의 거침/미세 프로그래밍 중 미세 모드를 위해 사용될 수 있다. 이 경우, 멀티플렉서는 거침 또는 미세 검증 상태를 위한 다른 타이밍 스트로브 또는 다른 기준 전압을 제공하기 위해 사용될 수 있다. 카운터(710)는 선택 논리 회로(708)와 연결된다. 데이터 레지스 터(712)는 카운터(710)와 연결된다. 선택 논리 회로(708)의 출력은 멀티플렉서(714)와 연결되고, 멀티플렉서(714)는 선택 논리 회로(708)의 출력을 받고 이에 따라 0V와 Vdd 사이의 전압을 선택한다.
일 실시예에서, 프로그램될 데이터가 데이터 레지스터(712)에 로드된다. 이 데이터는 프로그램 펄스 동안 비트 라인 전압이 낮춰질 때(도 17B 참조), 선택 논리 회로(708)에 정보를 주기 위한 카운터(710)에 카운트를 설정하는데 사용된다. 다른 실시예에서, 데이터 레지스터(712)는 다양한 부스팅 상태 동안 비트 라인을 상승될 때(도 17A를 보라), 선택 논리 회로(708)에 알리기 위한 카운터(710)에 카운트를 설정하는데 사용되어 멀티플렉서(714)에 의해 공급된 적절한 전압 레벨을 설정한다.
다른 실시예에서, 프로그램 펄스 동안 비트 라인을 낮추기 위한 때 또는 다양한 부스팅 상태 동안 비트 라인을 상승시키기 위한 때의 타이밍은 메모리 셀이 미세 프로그래밍에 들어가자마자 일련의 펄스의 펄스 수에 기초하여 변화된다. 예를 들어 미세 프로그래밍 상태에서 각 연속되는 펄스를 갖는 비트 라인은 프로그램 펄스 동안 점차 늦은 시간으로 Vdd에서 0V로 낮아질 것이다. 유사하게, 미세 상태 동안 각 연속된 펄스를 위해 비트 라인은 빠른 부스팅 상태 동안 0V에서 Vdd로 상승될 수 있다. 이러한 실시예는 미세 프로그래밍 상태를 진행하는 것에 의해 더 나은 제어를 제공한다.
다른 실시예는 비휘발성 메모리를 프로그래밍하기 위해 적합한 모든 제어방식을 포함한다. 이 실시예에서는 메모리 셀의 프로그래밍 동안 검증 프로세스에 따 른 아날로그 에러 신호(error signal)를 사용한다. 에러 신호는 셀 마다 이루어지는(cell-by-cell basis) 후속 프로그래밍의 균형적 제어를 위해 사용된다. 따라서, 짧은 프로그래밍 시간 내에 조밀한 프로그래밍 분포를 얻을 수 있다. 예를 들어 검증 동작 동안 생성된 감지된 아날로그 전압 신호는 다음 프로그램 펄스에 대한 낸드 부스팅의 양을 제어하기 위한 에러 신호나 타이밍 신호로 변환될 수 있다. 이러한 에러 신호는 차례로 더 높이 부스팅된 낸드 스트링 전압(예, 여기서 비트 라인 전압이 0에서 컷오프 전압 레벨로 변경되는 부스팅 단계에서의 시간 단축 )을 발생하며, 결과적으로 다음 프로그램 펄스 동안에 감소 프로그램이 이루어진다. 프로그래밍 상태를 획득하기 위한 이와 같은 점진적인 접근법은 프로그래밍에서 금지로 천이됨에 따라 가장 근접한 인접 셀의 록 아웃으로 발생된 프로그래밍 킥 효과(programming kick effect)를 완충하는 경향을 보인다. Raul-Adrian Cernea, Yan Li, Mehrdad Mofidi 및 Khalid에 의해 "Non-Volatile Memory And Method With Bit Line To Bit Line Coupled Compensation"이라는 명칭으로 2003년 9월 17일에 출원된 미국 특허출원 제10/667,222호와 Shahzad Khalid, Yan Li, Raul-Adrian Cernea 및 Mehrdad Mofidi에 의해 "Non-Volaitle Memory and Method with Bit Line Compensation Dependent on Neighboring Operating Modes"라는 명칭으로 2003년 9월 17일에 출원된 미국 특허 출원 제10/667,223호에서 찾아 볼 수 있고, 이들은 본 명세서에 참조문헌으로 인용된다. 에러 신호는 도 11A 내지 11C의 실시예에 따라 프로그램 펄스가 인가되는 동안 비트 라인 전압이 Vdd부터 0V까지 낮아지는 시간을 변화시키기 위해 사용될 수 있다. 문턱 전압이 목표 문턱 전압과 가까워질수록, 비 트 라인이 Vdd에서 0V로 떨어지는 시간이 늦어진다. 시 변환 회로(time conversion circuit)로 인가되는 전압은 충전 전류 소스에 의해 감지 전압부터 높은 트립-전압 레벨로 커패시터를 충전하여 얻어진다. 감지 전압이 낮아질수록 트립 시간은 길어진다.
도 19는 에러 신호를 사용한 실시예 또는 연속 펄스의 프로그래밍을 감소시키는 실시예에 따른 프로그래밍 과정을 도시한 흐름도이다. 도 19의 단계 802 내지 810은 도 9의 단계 502 내지 510과 유사하다. 단계 820에서, 부스팅이 수행되고 프로그램 펄스가 상술한 바와 같이 인가된다. 단계 822에서, 검증 동작이 수행된다. 일 실시예에서, 도 19의 프로세스는 거침/미세 프로그래밍을 수행하지 않는 실시예를 위해 적용된다. 다른 실시예에서, 거침/미세 프로그래밍이 수행되고 단계 822는 상술한 바와 같이 모드를 결정하기 위해 사용된다. 단계(824 내지 832)는 단계(524 내지 532)와 유사하다. 단계(832) 이후에, 시스템은 단계(834)의 에러 신호에 따라 비트 라인 타이밍을 조절한다. 단계(822)에서, 검증 동작 동안, 에러 신호가 생성되었다. 이러한 에러 신호는 각 메모리 셀을 위한 목표 문턱 전압과 문턱 전압의 전류 레벨 사이의 차이를 나타낸다. 에러 신호는 단계(834)에서 (상술된) 비트 라인 전압의 타이밍을 조절하기 위해 사용된다. 단계(834) 이후에, 프로세스의 루프는 단계(820)로 이동하고, 부스팅 및 프로그램 전압이 제공되며, 단계(834)에서 설정된 타이밍에 따라 비트 라인은 제어된다. 비트 라인 타이밍이 연속된 펄스에서 자동적으로 조절되는 일 실시예에서, 이러한 조절은 에러 신호 필요없이(이 경우 단계(834)는 펄스 수에 기초하여 비트 라인 타이밍을 조절하는 방식으로) 단 계(834)에서 이루어진다.
도 20은 도 19와 관련된 실시예들을 실행하는데 사용될 수 있는 구성요소들의 일 실시예를 나타내기 위해 도시한 블록도이다. 도 19와 도 20은 스위치(850)와 커패시터(852)에 연결된 비트 라인을 도시한다. 커패시터의 다른 단자는 접지 같은 기준 전위에 연결된다. 스위치(850)는 사전-충전 전압 회로(VPRECHARGE)와 연결되며, 감지 증폭기(860)의 입력과 연결된다. 신호(VREF) 역시 감지 증폭기(860)의 입력과 연결된다. 감지 증폭기(860)의 출력은 제어 논리 회로(882)에 제공된다. 감지 증폭기(860)는 메모리의 문턱 전압이 목표 레벨에 도달하는지 여부를 검증하고, 만약 그러하다면 제어 논리 회로(882)에 록 아웃 상태를 제공한다. 목표 레벨에 도달하지 않았으면, 감지 증폭기(860)는 상술한 바와 같이 에러 신호를 결정한다. 감지 증폭기는 제어 논리 회로(882)에 에러 신호를 제공한다. 에러 신호에 따라, 제어 논리 회로(882)는 멀티플렉서(854)에 대한 선택 라인의 입력이 0V와 Vdd 사이의 값을 선택하도록 적절하게 제어하여, 적절한 비트 라인 전압이 적절한 시기에 스위치(850)를 거쳐 다음 프로그램 펄스 동안 비트 라인으로 제공된다.
본 발명의 상세한 설명은 예시와 설명의 목적을 위해 제공되었다. 이러한 설명은 본 발명을 개시된 설명에 한정하기 위한 것이 아니다. 다양한 수정과 변형이 전술한 기술의 면에서 가능하다. 기술된 실시예들은 본 발명의 사상과 실제적인 응용예를 가장 잘 설명하기 위해 선택되었고, 이에 따라 당업자는 발명을 다양한 실시예에서 사용할 수 있고 예정된 특정 사용에 적합하도록 다양한 변형을 할 수 있 을 것이다. 본 발명의 범위는 이하 첨부된 청구범위에 의해 한정되는 것으로 이해하여야 한다.

Claims (9)

  1. 제 1 비휘발성 저장 소자를 위한 비트 라인에 제 1 전압을 인가하는 단계와;
    상기 제 1 비휘발성 저장 소자를 위한 비트 라인에 제 1 전압을 인가하는 동안에 상기 제 1 비휘발성 저장 소자의 제어 게이트에 제 1 프로그램 전압을 인가하는 단계와;
    상기 제 1 비휘발성 저장 소자를 위한 비트 라인에 상기 제 1 전압을 인가하는 동안에 상기 제 1 비휘발성 저장 소자에 인가된 상기 제 1 프로그램 전압을 낮추는 단계와;
    상기 제 1 프로그램 전압을 낮추는 동안에 상기 비트 라인으로 제 2 전압을 인가하는 단계와; 그리고
    상기 제 1 비휘발성 저장 소자를 위한 상기 비트 라인으로 상기 제 2 전압을 인가하는 동안에 상기 제 1 비휘발성 저장 소자의 상기 제어 게이트로 인가된 상기 제 1 프로그램 전압을 올리는 단계를 포함하는 것을 특징으로 하는 비휘발성 저장 소자의 프로그래밍 방법.
  2. 복수의 비휘발성 저장 소자들로 제 1 프로그램 전압을 인가하는 단계와, 여기서 제 1 세트의 상기 비휘발성 저장 소자들은 거침 프로그래밍 모드에 있고 제 2 세트의 상기 비휘발성 저장 소자들은 미세 프로그래밍 모드에 있으며;
    상기 제 1 프로그램 전압 동안 상기 제 1 세트의 비휘발성 저장 소자들을 위 한 비트 라인들에 프로그래밍 비트 라인 전압을 제공하는 단계와;
    상기 제 1 프로그램 전압 동안 상기 제 2 세트의 비휘발성 저장 소자들을 위한 비트 라인들에 금지 비트 라인 전압을 제공하는 단계와;
    상기 제 2 세트의 비휘발성 저장 소자들의 프로그래밍이 이루어지도록, 상기 제 1 프로그램 전압 동안, 상기 제 2 세트의 비휘발성 저장 소자들을 위한 상기 비트 라인들을 변경시키는 단계를 포함하는 것을 특징으로 하는 비휘발성 저장 소자의 프로그래밍 방법.
  3. 제 2 항에 있어서,
    상기 제 1 프로그램 전압을 인가하는 단계는 제 1 워드 라인에 프로그램 펄스를 인가하는 것을 포함하고; 그리고
    상기 비트 라인들을 변경하는 단계는 상기 펄스 동안 상기 제 2 세트의 비휘발성 저장 소자들을 위한 상기 비트 라인들을 금지 레벨에서 프로그램 레벨로 낮추는 것을 포함하는 것을 특징으로 하는 비휘발성 저장 소자의 프로그래밍 방법.
  4. 제 2 항에 있어서,
    상기 제 1 프로그램 전압을 인가하는 단계는 제 1 워드 라인에 프로그램 펄스를 인가하는 것을 포함하고; 그리고
    상기 비트 라인들을 변경하는 단계는 전류 문턱 전압 레벨과 목표 문턱 전압 레벨 사이의 차이에 근거하여, 상기 펄스 동안 서로 다른 시간에서, 상기 제 2 세 트의 비휘발성 저장 소자들을 위한 상기 비트 라인들을 금지 레벨에서 프로그램 레벨로 낮추는 것을 포함하는 것을 특징으로 하는 비휘발성 저장 소자의 프로그래밍 방법.
  5. 제 1 비휘발성 저장 소자와; 그리고
    상기 제 1 비휘발성 저장 소자를 위한 제 1 비트 라인에 제 1 전압을 인가하고, 상기 제 1 비트 라인에 상기 제 1 전압이 인가되는 동안 상기 제 1 비휘발성 저장 소자의 제어 게이트에 제 1 프로그램 전압을 인가하고, 상기 제 1 프로그램 전압을 낮추고, 상기 제 1 프로그램 전압이 낮아지는 동안 상기 제 1 비트 라인을 상기 제 1 전압에서 제 2 전압으로 변경시키고, 이어서 상기 제 1 프로그램 전압을 상승시키는 제어 회로를 포함하는 것을 특징으로 하는 비휘발성 저장 시스템.
  6. 제 5항에 있어서,
    상기 제어 회로는 컨트롤러, 상태 머신, 디코더, 및 감지 증폭기를 포함하는 것을 특징으로 하는 비휘발성 저장 시스템.
  7. 제 5 항에 있어서,
    상기 제 1 비휘발성 저장 소자는 낸드 스트링의 일부이고;
    상기 비휘발성 저장 시스템은 비트 라인들과 관계하는 다수의 낸드 스트링들을 포함하고;
    상기 비휘발성 저장 시스템은 상기 다수의 낸드 스트링들과 연결된 다수의 워드 라인들을 포함하고;
    상기 제어 회로는 상기 다수의 워드 라인들 중 제 1 워드 라인에 제 1 펄스를 인가함으로써 상기 제 1 프로그램 전압을 인가하고;
    상기 제어 회로는 상기 제 1 펄스 동안 상기 제 1 프로그램 전압을 낮추고; 그리고
    상기 제어 회로는 상기 제 1 펄스 시간 동안 상기 제 1 비트 라인을 변경시키는 것을 특징으로 하는 비휘발성 저장 시스템.
  8. 제 5 항에 있어서,
    상기 제어 회로는 제 1 세트의 비휘발성 저장 소자들이 거침 모드에서 프로그램되도록 하고; 그리고
    상기 제어 회로는 제 2 세트의 비휘발성 저장 소자들이 미세 모드에서 프로그램되도록 하며,
    상기 제 2 세트의 비휘발성 저장 소자들은 상기 제 1 세트의 비휘발성 저장 소자들을 포함하는 것을 특징으로 하는 비휘발성 저장 시스템.
  9. 제 1 비휘발성 저장 소자와 그리고 제어 회로를 포함하여 구성되며,
    상기 제어 회로는:
    복수의 비휘발성 저장 소자에 제 1 프로그램 전압을 인가하는 단계와, 여기 서 제 1 세트의 상기 비휘발성 저장 소자들은 거침 프로그래밍 모드에 있고, 제 2 세트의 상기 비휘발성 저장 소자들은 미세 프로그래밍 모드에 있으며;
    상기 제 1 프로그램 전압이 인가되는 동안에 상기 제 1 세트의 비휘발성 저장 소자들을 위한 비트 라인들에 프로그래밍 전압을 공급하는 단계와;
    상기 제 1 프로그램 전압이 인가되는 동안 상기 제 2 세트의 비휘발성 저장 소자들을 위한 비트 라인들에 금지 전압을 공급하는 단계와; 그리고
    상기 제 2 세트의 비휘발성 저장 소자들을 프로그래밍하기 위한 상기 제 1 프로그램 전압을 인가하는 동안 상기 제 2 세트의 비휘발성 저장 소자들을 위한 상기 비트 라인들을 변경하는 단계로 이루어지는 비휘발성 저장 소자의 프로그래밍 방법을 수행하는 것을 특징으로 하는 비휘발성 저장 시스템.
KR1020067025631A 2004-05-05 2005-04-20 비휘발성 메모리의 프로그램 제어를 위한 비트라인 조절방식의 접근법 KR100806327B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US10/839,764 2004-05-05
US10/839,806 2004-05-05
US10/839,806 US7020026B2 (en) 2004-05-05 2004-05-05 Bitline governed approach for program control of non-volatile memory
US10/839,764 US7023733B2 (en) 2004-05-05 2004-05-05 Boosting to control programming of non-volatile memory

Publications (2)

Publication Number Publication Date
KR20070067011A true KR20070067011A (ko) 2007-06-27
KR100806327B1 KR100806327B1 (ko) 2008-02-27

Family

ID=34966408

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020067025631A KR100806327B1 (ko) 2004-05-05 2005-04-20 비휘발성 메모리의 프로그램 제어를 위한 비트라인 조절방식의 접근법

Country Status (6)

Country Link
EP (2) EP1751771B1 (ko)
JP (2) JP4763687B2 (ko)
KR (1) KR100806327B1 (ko)
AT (2) ATE516584T1 (ko)
TW (2) TWI305361B (ko)
WO (2) WO2005112037A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7130210B2 (en) * 2005-01-13 2006-10-31 Spansion Llc Multi-level ONO flash program algorithm for threshold width control
US7626866B2 (en) * 2006-07-28 2009-12-01 Micron Technology, Inc. NAND flash memory programming
US7511996B2 (en) * 2006-11-30 2009-03-31 Mosaid Technologies Incorporated Flash memory program inhibit scheme
JP4640658B2 (ja) * 2008-02-15 2011-03-02 マイクロン テクノロジー, インク. マルチレベル抑制スキーム
US8081514B2 (en) * 2009-08-25 2011-12-20 Sandisk Technologies Inc. Partial speed and full speed programming for non-volatile memory using floating bit lines
JP4922464B1 (ja) * 2011-05-02 2012-04-25 株式会社東芝 半導体記憶装置
TWI675273B (zh) * 2019-03-28 2019-10-21 友達光電股份有限公司 升壓電路、輸出緩衝電路與顯示面板
CN112652345B (zh) * 2019-10-12 2022-10-28 长江存储科技有限责任公司 对存储器件进行编程的方法及相关存储器件

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1224062B (it) 1979-09-28 1990-09-26 Ates Componenti Elettron Metodo di programmazione per una memoria a semiconduttore non volatile elettricamente alterabile
US5313421A (en) 1992-01-14 1994-05-17 Sundisk Corporation EEPROM with split gate source side injection
KR0169267B1 (ko) 1993-09-21 1999-02-01 사토 후미오 불휘발성 반도체 기억장치
KR100253868B1 (ko) * 1995-11-13 2000-05-01 니시무로 타이죠 불휘발성 반도체기억장치
JP3504057B2 (ja) * 1996-03-18 2004-03-08 株式会社東芝 不揮発性半導体記憶装置
US5969985A (en) * 1996-03-18 1999-10-19 Kabushiki Kaisha Toshiba Nonvolatile semiconductor memory device
US5712815A (en) 1996-04-22 1998-01-27 Advanced Micro Devices, Inc. Multiple bits per-cell flash EEPROM capable of concurrently programming and verifying memory cells and reference cells
JP3481817B2 (ja) * 1997-04-07 2003-12-22 株式会社東芝 半導体記憶装置
JP4157189B2 (ja) * 1997-05-14 2008-09-24 株式会社東芝 不揮発性半導体記憶装置
JP3906545B2 (ja) * 1998-02-03 2007-04-18 ソニー株式会社 不揮発性半導体記憶装置
JP3999900B2 (ja) * 1998-09-10 2007-10-31 株式会社東芝 不揮発性半導体メモリ
JP4154771B2 (ja) * 1998-11-10 2008-09-24 ソニー株式会社 不揮発性半導体記憶装置およびそのデータ書き込み方法
JP2000149577A (ja) * 1998-11-10 2000-05-30 Sony Corp 不揮発性半導体記憶装置およびそのデータ書き込み方法
JP2001067884A (ja) * 1999-08-31 2001-03-16 Hitachi Ltd 不揮発性半導体記憶装置
US6301161B1 (en) * 2000-04-25 2001-10-09 Winbond Electronics Corporation Programming flash memory analog storage using coarse-and-fine sequence
JP3810985B2 (ja) * 2000-05-22 2006-08-16 株式会社東芝 不揮発性半導体メモリ
JP3631463B2 (ja) * 2001-12-27 2005-03-23 株式会社東芝 不揮発性半導体記憶装置
KR100453854B1 (ko) * 2001-09-07 2004-10-20 삼성전자주식회사 향상된 프로그램 방지 특성을 갖는 불휘발성 반도체메모리 장치 및 그것의 프로그램 방법

Also Published As

Publication number Publication date
KR100806327B1 (ko) 2008-02-27
EP1751770B1 (en) 2011-05-25
TW200625333A (en) 2006-07-16
EP1751770A1 (en) 2007-02-14
JP2007536682A (ja) 2007-12-13
JP2007536681A (ja) 2007-12-13
JP4879168B2 (ja) 2012-02-22
JP4763687B2 (ja) 2011-08-31
WO2005112036A1 (en) 2005-11-24
ATE511187T1 (de) 2011-06-15
TW200620300A (en) 2006-06-16
TWI305361B (en) 2009-01-11
EP1751771B1 (en) 2011-07-13
ATE516584T1 (de) 2011-07-15
WO2005112037A1 (en) 2005-11-24
TWI279808B (en) 2007-04-21
EP1751771A1 (en) 2007-02-14

Similar Documents

Publication Publication Date Title
US7088621B2 (en) Bitline governed approach for coarse/fine programming
US7411827B2 (en) Boosting to control programming of non-volatile memory
EP1812932B1 (en) High speed programming system with reduced over programming
KR100868570B1 (ko) 비휘발성 메모리의 동시 프로그래밍
EP1866928B1 (en) Faster programming of higher level states in multi-level cell flash memory
KR100751579B1 (ko) 비휘발성 메모리 프로그래밍
JP4884372B2 (ja) 非揮発性メモリの可変プログラミング
EP2165338B1 (en) Coarse/fine program verification in non-volatile memory using different reference levels for improved sensing
KR20060002801A (ko) 비휘발성 메모리에 대한 자기 부스팅 기술
KR100806327B1 (ko) 비휘발성 메모리의 프로그램 제어를 위한 비트라인 조절방식의 접근법
JP2009512115A (ja) ビット線結合を生じる不揮発性メモリを制御してプログラムする方法
KR100852506B1 (ko) 비휘발성 메모리의 프로그래밍을 제어하기 위한 부스팅
JP4820879B2 (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: 20130117

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140117

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150119

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160119

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20170119

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20180118

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20190116

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20200115

Year of fee payment: 13