KR101634363B1 - 불휘발성 메모리 장치 및 그것의 프로그램 방법 - Google Patents

불휘발성 메모리 장치 및 그것의 프로그램 방법 Download PDF

Info

Publication number
KR101634363B1
KR101634363B1 KR1020090094376A KR20090094376A KR101634363B1 KR 101634363 B1 KR101634363 B1 KR 101634363B1 KR 1020090094376 A KR1020090094376 A KR 1020090094376A KR 20090094376 A KR20090094376 A KR 20090094376A KR 101634363 B1 KR101634363 B1 KR 101634363B1
Authority
KR
South Korea
Prior art keywords
program
loop
voltage
bit line
memory device
Prior art date
Application number
KR1020090094376A
Other languages
English (en)
Other versions
KR20110037100A (ko
Inventor
김보근
박기태
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020090094376A priority Critical patent/KR101634363B1/ko
Priority to US12/793,007 priority patent/US8498160B2/en
Publication of KR20110037100A publication Critical patent/KR20110037100A/ko
Application granted granted Critical
Publication of KR101634363B1 publication Critical patent/KR101634363B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • 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/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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/562Multilevel memory programming aspects
    • G11C2211/5621Multilevel programming verification
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1048Data bus control circuits, e.g. precharging, presetting, equalising

Landscapes

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

Abstract

본 발명은 불휘발성 메모리 장치 및 그것의 프로그램 방법에 관한 것이다. 본 발명의 불휘발성 메모리 장치의 프로그램 방법은, (a) 비활성화된 검증 동작에 의하여 메모리 셀들을 프로그램하는 단계; 및 (b) 활성화된 검증 동작에 의하여 상기 메모리 셀들을 프로그램하는 단계를 포함하되, 상기 비활성화된 검증 동작시, 상기 메모리 셀들의 비트 라인들에 대한 프리차지가 차단된다.

Description

불휘발성 메모리 장치 및 그것의 프로그램 방법{NONVOLITILE MEMORY DEVICE AND PROGRAM METHOD THEREOF}
본 발명은 반도체 메모리 장치에 관한 것으로, 좀 더 구체적으로는 불휘발성 메모리 장치에 관한 것이다.
반도체 메모리 장치는 일반적으로 DRAM, SRAM 등과 같은 휘발성 메모리 장치와 EEPROM, FRAM, PRAM, MRAM, 플래시 메모리 등과 같은 불휘발성 메모리 장치로 구분할 수 있다. 휘발성 메모리 장치는 전원이 차단될 때 저장된 데이터를 잃지만, 불휘발성 메모리는 전원이 차단되더라도 저장된 데이터를 보존한다. 특히, 플래시 메모리는 높은 프로그래밍 속도, 낮은 전력 소비, 대용량 데이터 저장 등의 장점을 가지므로, 컴퓨터 시스템 등에서 저장 매체로 광범위하게 사용되고 있다.
플래시 메모리는 하나의 메모리 셀에 하나의 비트 데이터를 저장할 수도 있고, 두 비트 이상의 데이터를 저장할 수 있다. 일반적으로, 하나의 비트 데이터를 저장하는 메모리 셀을 싱글 레벨 셀(SLC: Single Level Cell)이라 하고, 두 비트 이상의 데이터를 저장하는 메모리 셀을 멀티 레벨 셀(MLC: Multi Level Cell)이라 한다. 싱글 레벨 셀은 문턱 전압에 따라 소거 상태와 프로그램 상태를 갖는다. 멀 티 레벨 셀은 문턱 전압에 따라 소거 상태와 복수의 프로그램 상태를 갖는다.
멀티 레벨 셀을 갖는 플래시 메모리(이하, MLC 플래시 메모리라 함)는 프로그램 상태의 문턱 전압 분포의 폭을 좁혀서, 각 프로그램 상태들 간의 마진을 확보하는 것이 중요하다.
본 발명의 목적은 문턱 전압 분포를 좁게 할 수 있는 불휘발성 메모리 장치를 제공하는 데 있다.
본 발명의 실시 예에 불휘발성 메모리 장치의 프로그램 방법은, (a) 비활성화된 검증 동작에 의하여 메모리 셀들을 프로그램하는 단계; 및 (b) 활성화된 검증 동작에 의하여 상기 메모리 셀들을 프로그램하는 단계를 포함하되, 상기 비활성화된 검증 동작시, 상기 메모리 셀들의 비트 라인들에 대한 프리차지가 차단된다.
실시 예로서, 상기 메모리 셀들은, 상기 (a) 단계에 의하여 초기 상태에서 임시 상태로, 상기 (b) 단계에 의하여 상기 임시 상태로부터 타깃 상태로 프로그램된다.
다른 실시 예로서, 상기 임시 상태는 상기 활성화된 검증 동작시 상기 메모리 셀들의 드레인-소스 전류가 기준치보다 작은 문턱 전압 범위이다.
또 따른 실시 예로서, 상기 임시 상태는 상기 활성화된 검증 동작시 상기 메모리 셀들과 연결되는 공통 소스 라인(CSL) 전류가 기준치보다 작은 문턱 전압 범 위이다.
상술한 목적을 달성하기 위한 본 발명의 실시 예에 불휘발성 메모리 장치는, 메모리 셀; 상기 메모리 셀의 비트 라인에 연결되는 페이지 버퍼; 및 특정 루프 카운트 이전의 프로그램 검증 동작시에는 상기 비트 라인의 프리차지가 비활성화되도록, 그리고 상기 특정 루프 카운트 및 그 이후의 루프 카운트에서의 프로그램 검증 동작시 상기 비트 라인의 프리차지가 활성화되도록 상기 페이지 버퍼를 제어하는 제어 로직을 포함한다.
실시 예로서, 상기 페이지 버퍼는 상기 루프 카운트 값을 저장하기 위한 복수의 래치들을 포함한다.
다른 실시 예로서, 상기 제어 로직은 매 프로그램 루프마다 상기 루프 카운트 값이 상기 복수의 래치들에 업데이트 되도록 제어한다.
본 발명의 실시 예에 따른 불휘발성 메모리 장치에 의하면, 문턱 전압 분포를 좁힐 수 있을 뿐만 아니라, 프로그램 동작에 소요되는 전력 소모를 줄일 수 있다.
앞의 일반적인 설명 및 다음의 상세한 설명 모두 예시적이라는 것이 이해되어야 하며, 청구된 발명의 부가적인 설명이 제공되는 것으로 여겨져야 한다. 참조 부호들이 본 발명의 바람직한 실시 예들에 상세히 표시되어 있으며, 그것의 예들이 참조 도면들에 표시되어 있다. 가능한 어떤 경우에도, 동일한 참조 번호들이 동일 한 또는 유사한 부분을 참조하기 위해서 설명 및 도면들에 사용된다.
아래에서, 플래시 메모리 장치가 본 발명의 특징 및 기능을 설명하기 위한 불휘발성 메모리 장치의 한 예로서 사용된다. 하지만, 이 기술 분야에 정통한 사람은 여기에 기재된 내용에 따라 본 발명의 다른 이점들 및 성능을 쉽게 이해할 수 있을 것이다. 예를 들면, 저장 매체로서 PRAM, MRAM, ReRAM, FRAM, NOR 플래시 메모리 등이 사용될 수 있으며, 이종의 메모리 장치들이 혼용되는 메모리 시스템에도 적용될 수 있다. 또한, 본 발명은 다른 실시 예들을 통해 구현되거나 적용될 수 있을 것이다. 게다가, 상세한 설명은 본 발명의 범위, 기술적 사상 그리고 다른 목적으로부터 상당히 벗어나지 않고 관점 및 사용에 따라 수정되거나 변경될 수 있다.
도 1은 본 발명의 실시 예에 따른 불휘발성 메모리 장치(100)를 보여주는 블록도이다. 도 1을 참조하면, 불휘발성 메모리 장치(100)는 셀 어레이(110),디코더(120), 페이지 버퍼(130), 그리고 제어 로직(140)을 포함한다.
셀 어레이(110)는 복수의 메모리 블록(Memory Block)으로 구성될 수 있다. 도 1에서는 예로서 하나의 메모리 블록이 도시되어 있다. 각각의 메모리 블록은 복수의 페이지(Page)로 구성될 수 있다. 그리고 각각의 페이지(예를 들면, 112)는 복수의 메모리 셀들로 구성될 수 있다. 불휘발성 메모리 장치(100)에서, 메모리 블록 단위로 소거 동작이 수행되고, 페이지 단위로 쓰기 또는 읽기 동작이 수행될 수 있다.
셀 어레이(110)는 셀 스트링 구조(Cell String Structure)로 되어 있다. 하나의 셀 스트링(예를 들면, 111)은 스트링 선택 라인(SSL: String Selection Line) 에 연결되는 스트링 선택 트랜지스터(SST), 복수의 워드 라인(WL0~WL31)에 연결되는 복수의 메모리 셀들, 그리고 접지 선택 라인(GSL: Ground Selection Line)에 연결되는 접지 선택 트랜지스터(GST)를 포함한다. 스트링 선택 트랜지스터(SST)는 비트 라인(BL)에 연결되고, 접지 선택 트랜지스터(GST)는 공통 소스 라인(CSL: Common Source Line)에 연결된다.
하나의 워드 라인(예를 들면, WL1)에는 복수의 메모리 셀들이 연결될 수 있다. 하나의 워드 라인에 연결되고, 동시에 프로그램되는 메모리 셀들의 집합은 일반적으로 페이지(Page)라 부른다. 예를 들어 하나의 페이지(112)를 프로그램할 때, 워드 라인(WL1)으로는 프로그램 전압(Vpgm)과 검증 전압(Verify voltage)이 교대로 제공된다. 그리고, 프로그램 동작시에는 선택된 페이지(112)에 연결되는 비트 라인들로는 프로그램 데이터가 공급된다. 검증 동작을 위해서 선택된 페이지(112)의 메모리 셀들 각각에 연결되는 비트 라인들이 프리차지된다. 그리고, 프리차지된 비트 라인의 전압 변화가 감지된다. 감지된 비트 라인의 전압 변화에 의거하여 메모리 셀들의 프로그램 성공 여부가 판단된다.
디코더(120)는 선택 라인(SSL, GSL) 또는 워드 라인(WL0~WL31)을 통해 셀 어레이(110)와 연결된다. 프로그램 또는 읽기 동작 시에, 디코더(120)는 어드레스(Address)를 입력받고, 어느 하나의 워드 라인(예를 들면, WL1)을 선택한다. 한편, 디코더(120)는 선택 워드 라인(WL1) 또는 비선택 워드 라인(WL1을 제외한 나머지)으로 프로그램 또는 읽기 동작에 필요한 전압을 전달한다.
페이지 버퍼(130)는 비트 라인(BL1~BLn)을 통해 셀 어레이(110)와 연결된다. 페이지 버퍼(130)는 프로그램 동작 시에는 데이터(Data)를 입력받아 선택 페이지(112)에 전달한다. 페이지 버퍼(130)는 읽기 동작 시에 선택 페이지(112)로부터 데이터를 읽고, 외부로 데이터(Data)를 출력한다.
페이지 버퍼(130)는 선택 페이지(112)에 프로그램될 데이터나 선택 페이지(112)로부터 읽은 데이터를 임시로 저장할 수 있다. 페이지 버퍼(130)는 프로그램 실행(Program execution) 동작시, 비트 라인들(BL1~BLn)로 프로그램 데이터를 전달한다. 그리고 페이지 버퍼(130)는 프로그램 검증(Program verify) 동작시에는 비트 라인을 통해서 선택 페이지(112)에 포함되는 메모리 셀들을 센싱한다. 특히, 페이지 버퍼(130)는 고속으로 메모리 셀들의 프로그램 여부를 검출하기 위하여 비트 라인들을 프리차지한다. 페이지 버퍼(130)는 프리차지된 비트 라인들(BL1~BLn)의 전압 변화를 감지하여 선택 페이지(112)에 포함되는 메모리 셀들의 프로그램 여부를 센싱한다.
본 발명의 실시 예에 따르면, 프로그램 동작시 일부 프로그램 루프에서는 검증 동작이 스킵(Skip) 될 수 있다. 또는, 프로그램 동작시 일부 프로그램 루프에서는 검증 동작을 위한 비트 라인의 프리차지가 스킵 될 수 있다. 좀더 구체적으로, 페이지 버퍼(130)는 프로그램 검증 동작시, 특정 루프에서는 비트 라인들을 프리차지하지 않는다. 그리고 페이지 버퍼(130)는 나머지 프로그램 루프에서는 비트 라인을 프리차지하여 검증 동작을 실행할 수 있다.
제어 로직(140)은 불휘발성 메모리 장치(100)의 프로그램, 읽기, 및 소거 등의 동작을 제어할 수 있다. 예를 들면, 프로그램 동작시 제어 로직(140)은 디코 더(120)를 선택 워드 라인으로 프로그램 전압이 제공되도록 제어할 수 있다. 제어 로직(140)은 페이지 버퍼(130)를 제어함으로 선택 페이지(112)에 프로그램 데이터가 제공되도록 할 수 있다.
특히, 제어 로직(140)은 프로그램 루프 수(Loop count)를 참조하여 선택 페이지의 비트 라인들의 프리차지 여부를 결정한다. 즉, 제어 로직(140)은 특정 루프의 검증 동작에서는 비트 라인을 프리차지하지 않도록 페이지 버퍼(130)를 제어한다. 그리고, 제어 로직(140)은 특정 루프를 제외한 나머지 프로그램 루프에서는 비트 라인을 프리차지하고, 프리차지된 비트 라인의 전압 변화를 감지하도록 페이지 버퍼(130)를 제어한다.
본 발명의 실시 예에 따른 불휘발성 메모리 장치(100)는 프로그램 동작시 특정 루프에서는 검증을 위한 비트 라인의 프리차지를 수행하지 않는다. 그리고, 나머지 루프의 검증 동작에서는 비트 라인의 프리차지가 활성화된다. 프리차지된 비트 라인을 통해서 선택 페이지의 프로그램 성공 여부가 검출될 수 있다.
도 2는 본 발명의 프로그램 동작을 보여주는 다이어그램이다. 도 2를 참조하면, 메모리 셀들은 문턱 전압의 분포에 따라 복수의 상태들 중 어느 하나로 프로그램될 수 있다. 여기에서는, 선택된 메모리 셀들이 상태 (S1)으로부터 다른 하나의 상태 (S2)로 프로그램되는 과정을 도시하였다.
상태 (S1)은 검증 전압 (Vfy1)에 의해서 형성된 문턱 전압 분포이다. 상태 (S2)는 검증 전압 (Vfy2)에 의해서 형성되는 문턱 전압 분포이다. 상태 (S1)으로부터 상태 (S2)로 메모리 셀들을 프로그램할 때, 선택된 메모리 셀들의 게이트에는 프로그램 전압 (Vpgm)과 검증 전압 (Vfy2)이 교대로 인가될 것이다. 프로그램 전압 (Vpgm)과 검증 전압 (Vfy2)이 각각 1회씩 인가되는 프로그램 동작 단위를 프로그램 루프(Program Loop)라 한다. 하나의 프로그램 루프에서 서로 다른 검증 전압이 복수 회 제공되는 프로그램 방식에서도 본 발명은 적용될 수 있다. 본 발명에서는 설명의 편의를 위해서, 하나의 루프에서 각각 1회씩의 프로그램 전압(Vpgm)과 검증 전압 (Vfy2)이 인가되는 예에 대해서만 기술하기로 한다.
프로그램 검증 동작을 위해서 먼저 비트 라인이 프리차지된다. 이어서, 워드 라인에 검증 전압(예를 들면, Vfy2)이 제공된다. 워드 라인에 제공되는 검증 전압에 의해서 선택된 메모리 셀이 턴온(Turn-on)되거나 턴오프(Turn-off)될 수 있다. 검증 전압에 의해서 턴온되는 메모리 셀은 프로그램이 덜된 페일 셀(Fail cell)이다. 반면에, 검증 전압에 의해서 턴오프되는 메모리 셀은 프로그램이 완료된 패스 셀(Pass cell)이다. 패스 셀과 페일 셀은 프리차지된 비트 라인의 전압 변화를 통해서 식별될 수 있다.
상태 (S1)으로부터 상태 (S2)로 메모리 셀들을 프로그램할 때, 본 발명의 실시 예에 따른 프로그램 절차에 의하면, 일부 프로그램 루프에서만 프로그램 검증을 위한 비트 라인의 프리차지가 실시된다. 도 2를 예로 설명하면, 총 4회의 프로그램 루프를 통해서 메모리 셀들이 상태 (S1)으로부터 상태 (S2)로 프로그램된다고 가정하자. 문턱 전압이 타깃 상태 (S2)에 근접하게 되는 루프(예를 들면, Loop4)에서의 검증 동작에서만 비트 라인이 프리차지된다. 하지만, 최초 루프를 포함하는 루프들(Loop1~Loop3)에서의 검증 동작에서는 비트 라인이 프리차지되지 않는다.
결국, 선택된 메모리 셀들의 문턱 전압이 타깃 상태 (S2)에 근접한 프로그램 루프에서만 검증을 위한 비트 라인의 프리차지가 실행된다. 셀 어레이(110, 도 1 참조)에 포함되는 각각의 셀 스트링은 공통 소스 라인(CSL)과 접속된다. 이때, 공통 소스 라인은 저항 성분을 포함한다. 프로그램 검증 동작시, 이 저항 성분에 의하여 각각의 메모리 셀들의 소스 전위가 편차를 갖는다. 소스 전위의 편차로 인하여 각각의 메모리 셀들에 실질적으로 인가되는 검증 전압은 달라진다. 이러한 현상에 의하여 타깃 상태 (S2)로 프로그램되는 경우, 메모리 셀들의 문턱 전압 분포는 더욱 넓어질 수 있다.
본 발명의 실시 예에 따른 프로그램 방법은 이러한 공통 소스 라인에 의한 전압 상승을 최소화하기 위하여 일부 루프에서의 검증 동작시에서만 비트 라인을 프리차지한다. 즉, 메모리 셀들의 문턱 전압이 적어도 기준 전압(V′) 이상으로 프로그램되었다고 판단되는 시점부터 비로소 검증을 위한 비트 라인의 프리차지를 활성화한다. 또는, 최초 프로그램 루프로부터 특정 루프 횟수가 경과한 이후부터 검증을 위한 비트 라인 프리차지를 실시한다.
도 3은 도 1의 선택 워드 라인(WL1)에 인가되는 워드 라인 전압들(Vpgm, Vfy2)을 보여주는 타이밍도이다. 여기에서, 프로그램 전압(Vpgm)은 선택된 메모리 셀들을 도 2에 도시된 타깃 상태 (S2)로 프로그램하기 위한 전압이다. 불휘발성 메모리 장치(100)는 프로그램 루프(Program Loop)에 따라 프로그램 전압(Vpgm)을 점차로 증가할 수 있다. 이와 같은 프로그램 방식을 ISPP(Incremental Step Pulse Program) 방식이라 한다. 한편, 불휘발성 메모리 장치(100)는 프로그램 전압(Vpgm) 을 일정하게 유지하거나 점차로 감소할 수도 있다.
도 3은 많은 수의 프로그램 루프 중에서 일부 루프들(Loop1~Loop5)에서의 워드 라인 전압(VWL)을 보여준다. 도 3을 참조하면, 루프1 (Loop1)에서는 프로그램 전압 (Vpgm1)과 검증 전압 (Vfy2)이 인가된다. 검증 전압 (Vfy2)는 프로그램 전압 (Vpgm1)에 의하여 선택 메모리 셀들이 타깃 상태 (S2)로 프로그램되었는지를 검증하기 위한 전압이다. 마찬가지로, 루프2 (Loop2)에서는 프로그램 전압 (Vpgm2)와 검증 전압 (Vfy2)이 인가된다. 루프3 (Loop3)에서는 프로그램 전압 (Vpgm3)와 검증 전압 (Vfy2)이, 루프4 (Loop4)에서는 프로그램 전압 (Vpgm4)와 검증 전압 (Vfy2)이, 루프5 (Loop5)에서는 프로그램 전압 (Vpgm5)와 검증 전압 (Vfy2)이 인가된다.
여기서, 루프1 내지 루프3 (Loop1~Loop3)에서의 검증 동작시에는 비트 라인의 프리차지는 비활성화(Inactive)된다. 반면에, 선택된 메모리 셀들의 문턱 전압이 타깃 상태 (S2)에 근접되었다고 예측되는 루프4 (Loop4)부터의 검증 동작시에는 비트 라인의 프리차지가 활성화(Active)된다. 선택된 메모리 셀들의 문턱 전압이 타깃 상태 (S2)에 근접했다고 예측되는 루프(예를 들면, Loop4)는 ISPP 파라미터로부터 계산 또는 예측될 수 있다. 예를 들면, 1회의 프로그램 루프를 통해서 상승하는 메모리 셀들의 문턱 전압의 폭이 ISPP 파라미터에 포함될 수 있다. 이러한 정보를 참조하여, 선택된 메모리 셀들의 문턱 전압이 타깃 상태 (S2)에 근접했다고 예측되는 루프 수의 선택이 가능하다.
이상의 실시 예에서, 루프1 내지 루프3 (Loop1~Loop3)에서의 검증 동작시 비 트 라인의 프리차지가 비활성화(Inactive)되는 예가 설명되었다. 하지만, 본 발명은 이에 국한되지 않는다. 예를 들면, 루프1 내지 루프3 (Loop1~Loop3)에서 비트 라인의 프리차지 동작 및 검증 전압(Vfy2)의 공급이 모두 생략될 수 있을 것이다.
도 4는 도 1에 도시된 불휘발성 메모리 장치(100)의 프로그램 방법을 보여주는 순서도이다. 이하에서는, 앞서 설명된 도 1을 참조하여 도 4의 프로그램 절차들이 설명될 것이다.
프로그램 동작이 시작되면, 제어 로직(140, 도 1 참조)에는 루프 카운트(Loop count)가 제공될 수 있다. 최초 프로그램 루프에서는 루프 카운트는 1(Loop=1)로 초기화된다. 이러한 루프 초기화는 S110 단계에 도시되어 있다.
S120 단계에서, 제어 로직(140)은 루프 카운트가 기준값에 도달했는지 판단한다. 여기서, 기준값(예를 들면, 4)은 검증 동작시에 비트 라인의 프리차지 여부를 결정하기 위해 미리 예측된 루프 카운트 값이다. 즉, 기준값은 메모리 셀들의 문턱 전압들이 적어도 기준 전압(V′, 도 2 참조) 이상으로 프로그램되었다고 판단되는 루프 카운트 값을 의미한다. 만일, 루프 카운트가 기준값 4보다 작다면, 절차는 검증 동작시 비트 라인의 프리차지없이 프로그램이 진행되는 S130 단계로 이동한다. 반면, 루프 카운트가 기준값 4 이상인 경우에는 검증 동작시 비트 라인의 프리차지가 활성화되는 S160 단계로 이동하게 될 것이다.
S130 단계에서, 선택 워드 라인(예를 들면, WL1)으로는 프로그램 전압 (Vpgm)이 인가된다. 프로그램 전압 (Vpgm)이 인가되는 동안에, 선택된 메모리 셀들 각각의 비트 라인으로는 비트 라인 프로그램 전압(약 0V) 또는 비트 라인 프로그램 금지 전압(Vcc)이 제공된다. 이때, 비트 라인에 제공되는 비트 라인 프로그램 전압 또는 비트 라인 프로그램 금지 전압은 페이지 버퍼(130)에 로드된 프로그램 데이터에 의해서 결정된다.
S140 단계에서, 검증 동작은 생략될 수 있다. 즉, 비트 라인의 프리차지 동작과 워드 라인으로의 검증 전압(Vfy2)의 제공이 모두 스킵될 수 있다. 또는, 비트 라인의 프리차지없이 검증 전압 (Vfy2)만 워드 라인으로 제공되는 방식으로 검증 절차가 진행될 수 있다. 즉, 루프 카운트가 기준값에 도달하기까지는 실질적인 검증 동작이 수행되지 않는다.
S150 단계에서, 루프 카운트가 1만큼 증가한다. 그리고, 절차는 증가된 루프 카운트가 기준값 4에 도달하였는지 판단하기 위한 S120 단계로 궤환한다.
루프 카운트가 기준값에 도달한 경우에 절차는 S160 단계로 이동한다. 그러면, 통상의 프로그램 동작과 검증 동작에 의해서 선택 메모리 셀들이 프로그램된다. 즉, S160 단계에서는 선택 워드 라인(예를 들면, WL1)으로는 프로그램 전압 (Vpgm)이 인가된다. 프로그램 전압 (Vpgm)이 인가될 때, 선택 메모리 셀들 각각의 비트 라인은 비트 라인 프로그램 전압(약 0V) 또는 비트 라인 프로그램 금지 전압(Vcc)을 제공받는다.
S170 단계에서, 제어 로직(140)은 비트 라인을 프리차지하고, 선택 워드 라인으로 검증 전압(Vfy2)을 제공하는 검증 동작을 실행한다. 루프 카운트가 기준값 이상에 도달되었다는 것은, 선택된 메모리 셀들의 문턱 전압이 타깃 상태 (S2)에 근접해 있다는 것을 의미한다. 따라서, 검증 전압(Vfy2)에 의하여 선택된 메모리 셀들 중 페일 셀들의 소스로 흐르는 전류는 상대적으로 작을 것이다. 그러므로, 공통 소스 라인(CSL)으로 유입되는 전류는 상대적으로 작다. 따라서, 저항 성분에 의한 선택 메모리 셀들의 소스 전압(Source voltage)의 바운싱(Bouncing)은 줄어들 수 있다.
S180 단계에서는 검증 동작에 의하여 센싱된 메모리 셀들의 프로그램 여부가 판정된다. 만일, 선택된 모든 메모리 셀들 중 어느 하나라도 페일로 검출되면, 절차는 루프 카운트를 증가하는 S150 단계로 이동한다. 그러나, 선택된 모든 메모리 셀들이 타깃 상태 (S2)에 대응하는 문턱 전압 이상으로 프로그램된 것으로 검출되면, 제반 프로그램 동작은 종료된다.
도 5는 본 발명의 실시 예에 따른 메모리 셀들의 문턱 전압 변화를 간략히 보여주는 다이어그램이다. 도 5를 참조하면, 각각의 프로그램 루프의 진행에 따라서 메모리 셀들의 문턱 전압의 이동 위치를 도시하였다. 즉, 최초 프로그램 루프에 의해서 선택 메모리 셀들의 문턱 전압이 상태 (P1)으로 이동한다고 가정할 수 있다. 그리고 이어지는 프로그램 루프들에 의해서 메모리 셀들의 문턱 전압은 (P2), (P3), (S3) 상태로 이동할 수 있다.
먼저, 상태 (S1)은 프로그램 동작이 시작되기 이전의 메모리 셀들의 문턱 전압을 나타낸다. 상태 (S1)에 대응하는 메모리 셀들의 문턱 전압은 검증 전압 (Vfy2)와 가장 큰 레벨 차이를 가진다. 즉, 상태 (S1)에서 메모리 셀들의 문턱 전압은 검증 전압 (Vfy2)와 최소(ΔV2), 최대(ΔV1)의 전압 차이를 갖는다. 비트 라인이 프리차지되고, 검증 전압 (Vfy2)가 게이트에 제공된다면, 메모리 셀은 상대적 으로 큰 턴온 전류를 야기하게 될 것이다. 따라서, 프로그램 상태 (P3)에 도달하기 전까지는 비트 라인의 프리차지는 비활성화된다. 상태 (P1)의 메모리 셀들의 문턱 전압은 검증 전압 (Vfy2)과 (ΔV3 ~ΔV2)의 전압 차이를 갖는다. 상태 (P2)의 메모리 셀들의 문턱 전압은 검증 전압 (Vfy2)과 (ΔV4~ΔV3)의 전압 차이를 갖는다.
그러나, 프로그램 루프가 증가할수록, 선택 메모리 셀들의 문턱 전압은 높아진다. 상태 (P3)의 메모리 셀들의 문턱 전압은 검증 전압 (Vfy2)과 (ΔV2~ΔV1)의 전압 차이를 갖는다. 따라서, 검증 동작시 온 셀(On cell)들(예를 들면, 페일 셀들)의 채널 전류는 복수의 상태들 (S1, P1, P2, P3) 중 상태 (P3)의 메모리 셀들이 가장 작을 것이다. 따라서, 선택 메모리 셀들의 문턱 전압이 타깃 상태 (S2)에 근접한 상태 (P3)로 이동한 이후에, 검증을 위한 비트 라인의 프리차지가 활성화된다.
온 셀에 흐르는 전류는 프로그램 동작시에 발생하는 공통 소스 라인(CSL) 잡음을 초래한다. 그래서, 검증 동작시 비트 라인이 프리차지되는 루프 수를 최소화하면 그만큼 에러를 차단할 수 있다는 것을 의미한다.
도 6a 및 도 6b는 도 5에서 설명된 현상에 따른 소스 라인 전류들을 보여주는 회로도들이다. 도 6a는 선택 메모리 셀들의 문턱 전압(Vth)이 기준 전압(V′, 도 2 참조) 보다 낮은 경우, 도 6b는 선택 메모리 셀들의 문턱 전압(Vth)이 기준 전압(V′)과 같거나 높은 경우의 비트 라인 전류의 흐름을 각각 보여준다.
도 6a를 참조하면, 선택 메모리 셀들의 문턱 전압(Vth)은 기준 전압(V′)보다 낮다. 따라서, 검증 동작시 비트 라인들(BL1~BLn)의 프리차지는 생략된다. 검증 전압(Vfy2)이 선택 메모리 셀들의 워드 라인에 제공되면, 선택 메모리 셀들 대부분은 턴온될 수 있다. 하지만, 선택 메모리 셀들의 비트 라인들(BL1~BL7)은 프리차지되어 있지 않다. 따라서, 선택 메모리 셀들의 드레인 전압은 실질적으로 전류를 흐르게 할 만큼 높지 않다. 선택 메모리 셀들이 턴온 되더라도, 비트 라인(또는, 드레인)과 소스 사이의 전류는 실질적으로 무시할 정도로 작다. 따라서, 공통 소스 라인(CSL)에 유입되는 전류도 무시할 수 있을 정도로 작아진다.
도 6b를 참조하면, 선택 메모리 셀들의 문턱 전압(Vth)이 기준 전압(V′)과 같거나 높다. 따라서, 본 발명의 프로그램 방법에 의하여 검증 동작시 비트 라인들(BL1~BLn)의 프리차지는 활성화된다. 비트 라인의 프리차지 이후에 검증 전압(Vfy2)이 선택 메모리 셀들의 워드 라인에 제공된다. 검증 전압(Vfy2)에 의하여, 선택 메모리 셀들은 턴온되거나 턴오프될 수 있다. 물론, 이 경우에는 턴온되는 메모리 셀들의 채널에는 전류가 흐르게 된다. 즉, 비트 라인에 프리차지된 전하가 메모리 셀들의 소스로 이동하고, 공통 소스 라인(CSL)에는 전류가 유입된다.
그러나, 문턱 전압(Vth)은 기준 전압(V′)보다 낮은 이전의 프로그램 동작에서 실질적인 프로그램 검증 동작은 실행되지 않았다. 공통 소스 라인(CSL)의 바운싱에 의해서 검증 동작이 반복될수록 메모리 셀들의 산포는 확산될 수밖에 없다. 비트 라인의 프리차지가 차단된 이전 루프의 프로그램 동작에 의해서 문턱 전압의 산포 확산은 상당히 억제된 상태이다. 따라서, 공통 소스 라인(CSL) 전류가 흐르는 프로그램 루프가 추가적으로 진행되더라도 산포의 확산은 최소화될 수 있을 것이다.
도 7은 본 발명의 다른 실시 예에 따른 불휘발성 메모리 장치(200)를 보여주는 블록도이다. 도 7을 참조하면, 불휘발성 메모리 장치(200)는 셀 어레이(210), 디코더(220), 페이지 버퍼(230), 그리고 제어 로직(240)을 포함한다. 셀 어레이(210)와 디코더(220)는 실질적으로 도 1의 구성과 동일하므로 상세한 설명은 생략하기로 한다.
페이지 버퍼(230)는 비트 라인(BL1~BLn)을 통해 셀 어레이(210)와 연결된다. 페이지 버퍼(230)는 프로그램 동작 시에는 외부로부터 데이터(Data)를 입력받고, 선택된 페이지에 프로그램 데이터(Program data)를 전달한다. 페이지 버퍼(230)는 읽기 동작 시에 선택 페이지로부터 데이터를 읽고, 외부로 데이터(Data)를 출력한다.
페이지 버퍼(230)는 선택 페이지에 프로그램될 데이터나 선택 페이지로부터 읽은 데이터를 임시로 저장할 수 있다. 페이지 버퍼(230)는 프로그램 실행(Program execution) 동작시, 비트 라인들(BL1~BLn)로 프로그램 데이터를 전달한다. 그리고 프로그램 검증(Program verify) 동작시에는 비트 라인을 통해서 선택 페이지를 센싱한다. 센싱 결과에 따라서, 선택 페이지에 대한 프로그램 성공 여부가 결정된다.
특히, 페이지 버퍼(230)는 고속으로 메모리 셀들을 센싱하기 위하여 비트 라인을 프리차지한다. 페이지 버퍼(230)는 프리차지된 비트 라인들(BL1~BLn)의 전압 변화를 감지하여 선택 페이지에 포함되는 메모리 셀들의 프로그램 여부를 센싱한다.
페이지 버퍼(230)는 프로그램 동작 모드에서 일부 프로그램 루프에서는 프로 그램 검증 동작을 스킵할 수 있다. 좀더 구체적으로, 페이지 버퍼(230)는 프로그램 검증 동작시, 특정 루프에서는 비트 라인들을 프리차지하지 않는다. 그리고 나머지 프로그램 루프에서는 비트 라인을 프리차지하여 프로그램 검증을 실행한다.
이를 위하여 페이지 버퍼(230)는 각각 복수의 래치들을 포함하는 페이지 버퍼 유닛들(PB1, PB2, …, PBn)을 포함한다. 페이지 버퍼 유닛들(PB1, PB2, …, PBn) 각각은 복수의 래치를 포함할 수 있다. 그리고 복수의 래치들에는 비트 라인으로 전달되는 프로그램 데이터를 저장하는 래치가 포함된다. 복수의 래치들 중 일부는 외부로부터 제공받는 프로그램 데이터를 저장할 수 있다. 복수의 래치들 중 일부는 비트 라인의 전압 변화를 감지하여 저장하는 센싱 래치로 사용된다.
본 발명의 페이지 버퍼 유닛들(PB1, PB2, …, PBn) 각각은 루프 카운트 값을 저장하기 위하여 상술한 래치들 외에 여분의 래치들을 포함한다. 멀티 레벨 셀(MLC)을 구동하기 위한 페이지 버퍼 유닛에는 복수의 래치들이 구비된다. 본 발명의 페이지 버퍼 유닛들(PB1, PB2, …, PBn) 각각은 프로그램 동작시에 사용되지 않는 여분의 래치들을 루프 카운트 값을 저장하도록 설정할 수 있다. 이하에서는 이러한 래치를 카운트 래치라 칭하기로 한다.
카운트 래치에는 매 프로그램 루프마다 카운트-업되는 루프 카운트가 입력된다. 그리고, 검증 동작시 기준값 미만에서는 카운트 래치의 값에 의하여 비트 라인의 프리차지 동작이 디스에이블(Disable)된다. 카운트 래치의 값이 기준값에 도달한 이후의 검증 동작시, 비로소 카운트 래치의 비트 조합에 의하여 비트 라인의 프리차지 동작이 활성화된다. 카운트 래치의 예시적인 구성은 후술하는 도 8에서 설 명하기로 한다.
제어 로직(240)은 불휘발성 메모리 장치(200)의 프로그램, 읽기, 소거 등의 동작을 제어할 수 있다. 예를 들면, 제어 로직(240)은 프로그램 동작시에, 디코더(220)를 제어함으로 선택 워드 라인으로 프로그램 전압이 제공되도록 하고, 페이지 버퍼(230)를 제어함으로 선택 페이지에 프로그램 데이터가 제공되도록 할 수 있다.
특히, 제어 로직(240)은 루프 카운트(Loop count)를 참조하여 페이지 버퍼(230)의 페이지 버퍼 유닛들(PB1, PB2, …, PBn) 각각의 카운트 래치를 설정할 수 있다. 즉, 매 프로그램 루프들에서 루프 수가 페이지 버퍼 유닛들(PB1, PB2, …, PBn) 각각의 카운트 래치에 업데이트 되도록 페이지 버퍼(230)를 제어할 수 있다. 본 발명에서는 제어 로직(240)이 카운트 래치를 설정하는 예에 대해서만 설명하고 있으나, 본 발명은 이에 국한되지 않는다. 카운트 래치의 설정이 또 다른 구성이나 외부에서 입력되는 데이터로 설정될 수 있을 것이다.
이상의 구성을 통해서, 본 발명의 다른 실시 예에 따른 불휘발성 메모리 장치(200)는 특정 루프에서의 검증 동작시에는 비트 라인의 프리차지를 수행하지 않는다. 그리고, 나머지 프로그램 루프에서의 검증 동작에서는 비트 라인의 프리차지 동작이 수행된다. 이후에 프리차지된 비트 라인을 통해서 선택된 페이지의 프로그램 여부가 검출될 수 있다.
도 8은 도 7에서 설명된 페이지 버퍼 유닛들(PB1, PB2, …, PBn) 각각의 예시적 구성을 간략히 보여주는 블록도이다. 도 8에는 예시적으로 페이지 버퍼 유 닛(PB1)에 포함되는 래치들이 도시되어 있다. 그러나, 나머지 페이지 버퍼 유닛들의 구성도 페이지 버퍼 유닛 (PB1)과 실질적으로 동일하다.
페이지 버퍼 유닛 (PB1)에는 복수의 래치들이 포함된다. 예를 들면, 검증 동작시 비트 라인(BL1)과 연결되는 센싱 노드(SO)의 전압 변화를 감지하여 저장하는 센싱 래치(S_LT)가 페이지 버퍼 유닛 (PB1)에 포함된다. 그리고, 프로그램 동작을 위해서 적어도 2개의 래치가 사용된다. 즉, 비트 라인(BL1)으로 프로그램 데이터를 전달하기 위한 래치(LT1)와 외부로부터 제공받은 프로그램 데이터를 저장하는 래치(LT2)가 페이지 버퍼 유닛 (PB1)에 포함된다. 래치들(LT1, LT2)는 데이터 래치라 칭하기로 한다.
본 발명의 실시 예에 따른 페이지 버퍼 유닛 (PB1)은 프로그램 동작시에 루프 카운트 값을 저장하는 래치가 더 포함된다. 즉, 래치들(LT3, LT4)이 루프 수를 저장하는 기능을 갖는다. 루프 수를 저장하는 래치를 이하에서는 카운트 래치(Count Latch)라 칭하기로 한다. 카운트 래치의 수는 2개 또는 그 이상으로 선택될 수 있다. 카운트 래치들이 특정 루프 수에 도달하면, 각각에 저장된 비트 값들의 조합에 의하여 프리차지 제어 신호(nPRCH)가 활성화된다. 이러한 동작을 위하여 페이지 버퍼 유닛(PB1)에는 카운트 래치들 각각의 출력에 따라 프리차지 제어 신호(nPRCH)를 활성화 또는 비활성화하는 조합 회로가 더 포함될 수 있다.
도 9는 도 8의 불휘발성 메모리 장치의 프로그램 동작을 보여주는 타이밍도이다. 여기에서, 프로그램 전압(Vpgm)은 선택된 메모리 셀들을 도 2에 도시된 타깃 상태 (S2)로 프로그램하기 위한 전압이다. 불휘발성 메모리 장치(200)는 프로그램 루프(Program Loop)에 따라 프로그램 전압(Vpgm)을 점차로 증가할 수 있다. 이와 같은 프로그램 방식을 ISPP(Incremental Step Pulse Program) 방식이라 한다. 한편, 불휘발성 메모리 장치(100)는 프로그램 전압(Vpgm)을 일정하게 유지하거나 점차로 감소할 수도 있다.
도 9는 많은 수의 프로그램 루프 중에서 일부 루프들에서의 워드 라인 전압들을 보여준다. 특히, 루프 카운트는 카운트 래치에 저장된 2진 데이터로 나타난다. 도 9를 참조하면, 루프 '00'에서는 프로그램 전압 (Vpgm1)과 검증 전압 (Vfy2)이 인가된다. 검증 전압 (Vfy2)는 프로그램 전압 (Vpgm1)인가 후에, 타깃 상태 (S2)로의 프로그램 여부를 검증하기 위한 전압이다. 마찬가지로, 루프 '01'에서는 프로그램 전압 (Vpgm2)와 검증 전압 (Vfy2)이 인가된다. 루프 '10'에서는 프로그램 전압 (Vpgm3)와 검증 전압 (Vfy2)이, 루프 '11'에서는 프로그램 전압 (Vpgm4)와 검증 전압 (Vfy2)이, 루프 (Loop5)에서는 프로그램 전압 (Vpgm5)와 검증 전압 (Vfy2)이 인가된다.
여기서, 루프 '10'까지의 검증 동작에서는 비트 라인의 프리차지 동작이 비활성화(Inactive)된다. 반면에, 선택된 메모리 셀들의 문턱 전압이 타깃 상태 (S2)에 근접했다고 예측되는 루프 '11'(Loop4)부터의 검증 동작시에는 비트 라인의 프리차지가 활성화(Active)된다. 선택된 메모리 셀들의 문턱 전압이 타깃 상태 (S2)에 근접했다고 예측되는 루프 '11'(Loop4)의 선택은 ISPP의 파라미터를 사용하여 계산 또는 예측될 수 있다.
상술한 실시 예에서, 루프 '00' 내지 루프 '10' (Loop1~Loop3)에서의 검증 동작시 비트 라인의 프리차지만 비활성화(Inactive)되는 예가 설명되었다. 하지만, 본 발명은 이에 국한되지 않는다. 예를 들면, 루프 '00' 내지 루프 '10' (Loop1~Loop3)에서 비트 라인의 프리차지 동작과 검증 전압(Vfy2)의 공급이 모두 생략될 수 있을 것이다.
도 10은 본 발명의 또 다른 실시 예에 따른 불휘발성 메모리 장치(300)를 보여주는 블록도이다. 도 10을 참조하면, 불휘발성 메모리 장치(300)는 셀 어레이(310), 디코더(320), 페이지 버퍼(330), 그리고 제어 로직(340)을 포함한다. 셀 어레이(310)와 디코더(320)는 실질적으로 도 1의 구성과 동일하므로 상세한 설명은 생략하기로 한다.
페이지 버퍼(330)는 비트 라인(BL1~BLn)을 통해 셀 어레이(310)와 연결된다. 페이지 버퍼(330)는 프로그램 동작 시에는 외부로부터 데이터(Data)를 입력받고, 선택된 페이지에 프로그램 데이터(Program data)를 전달한다. 페이지 버퍼(330)는 읽기 동작 시에 선택 페이지로부터 데이터를 읽고, 외부로 데이터(Data)를 출력한다.
페이지 버퍼(330)는 선택 페이지에 프로그램될 데이터나 선택 페이지로부터 읽은 데이터를 임시로 저장할 수 있다. 페이지 버퍼(330)는 프로그램 실행(Program execution) 동작시, 비트 라인들(BL1~BLn)로 프로그램 데이터를 전달한다. 그리고 프로그램 검증(Program verify) 동작시, 페이지 버퍼(330)는 비트 라인을 통해서 선택 페이지를 센싱한다. 센싱 결과에 따라서, 선택 페이지에 대한 프로그램 성공 여부가 결정될 것이다.
이 실시 예에 따른 페이지 버퍼(330)는 내부에 루프 카운트 회로(331)를 포함할 수 있다. 페이지 버퍼(330)는 루프 카운트 회로(331)로부터 제공되는 루프 카운트 수를 참조하여, 프로그램 검증시에 비트 라인의 프리차지 동작을 활성화하거나 비활성화할 수 있다.
페이지 버퍼(330)는 프로그램 동작 모드에서 일부 프로그램 루프에서는 프로그램 검증 동작을 스킵할 수 있다. 좀더 구체적으로, 페이지 버퍼(330)는 프로그램 검증 동작시, 특정 루프에서는 비트 라인들을 프리차지하지 않는다. 그리고 나머지 프로그램 루프에서는 비트 라인을 프리차지하여 프로그램 검증을 실행한다.
제어 로직(340)은 불휘발성 메모리 장치(300)의 프로그램, 읽기, 소거 등의 동작을 제어할 수 있다. 예를 들면, 제어 로직(340)은 프로그램 동작 시에, 디코더(320)를 제어함으로 선택 워드 라인으로 프로그램 전압이 제공되도록 하고, 페이지 버퍼(230)를 제어함으로 선택 페이지에 프로그램 데이터가 제공되도록 할 수 있다.
이상의 구성을 통해서, 본 발명의 또 다른 실시 예에 따른 불휘발성 메모리 장치(300)는 특정 프로그램 루프의 프로그램 검증에서는 비트 라인의 프리차지를 수행하지 않는다. 그리고, 나머지 프로그램 루프의 프로그램 검증에서는 비트 라인의 프리차지 동작이 수행된다. 이후에 프리차지된 비트 라인을 통해서 선택된 페이지의 프로그램 여부가 검출될 수 있다.
이상에서 설명된 본 발명의 실시 예에 따른 불휘발성 메모리 장치들(100, 200, 300)은 여러 가지 제품에 적용 또는 응용될 수 있다. 본 발명의 실시 예에 따 른 불휘발성 메모리 장치는 퍼스널 컴퓨터, 디지털 카메라, 캠코더, 휴대 전화, MP3, PMP, PSP, PDA 등과 같은 전자 장치들뿐만 아니라, 메모리 카드, USB 메모리, 솔리드 스테이트 드라이브(Solid State Drive, 이하 SSD라 함) 등과 같은 저장 장치로 구현될 수 있다.
도 11은 본 발명의 실시 예에 따른 불휘발성 메모리 장치를 포함하는 메모리 시스템(400)을 보여주는 블록도이다. 도 11을 참조하면, 본 발명에 따른 메모리 시스템(400)은 불휘발성 메모리 장치(420)와 메모리 컨트롤러(410)를 포함한다. 메모리 컨트롤러(410)는 ECC 엔진(411)을 포함한다. 불휘발성 메모리 장치(420)는 셀 어레이(421)와 페이지 버퍼(422)를 포함한다.
메모리 컨트롤러(410)는 호스트(Host)로부터의 읽기/쓰기 요청에 응답하여 불휘발성 메모리 장치(420)를 액세스한다. 메모리 컨트롤러(410)는 불휘발성 메모리 장치(420)로부터 독출된 데이터에 에러가 존재하는지 검출한다. 메모리 컨트롤러(410)는 독출된 데이터에 에러가 존재하면 에러 정정 연산을 실행하여 독출된 데이터의 에러를 제거한다. 에러의 정정과 연산을 위해 메모리 컨트롤러(410)는 ECC 엔진(411)을 포함한다.
메모리 컨트롤러(410)는 호스트로부터 쓰기 요청이 있을 때, 불휘발성 메모리 장치(420)에 기입되는 데이터를 참조하여 메타 데이터(Meta data)를 생성한다. 예를 들면, 기입되는 하나의 페이지에 대응하는 페이지 메타(Page meta)가 ECC 엔진(411)에 의해서 생성된다. 페이지 메타(Page meta)는 유저 데이터(User data)와 함께 불휘발성 메모리 장치(420)에 제공되고 동일 페이지에 기입될 것이다. ECC 엔 진(411)은 독출 동작시, 페이지 메타를 참조하여 에러의 검출 및 정정 연산을 수행할 것이다.
특히, 메모리 컨트롤러(410)에 의해서 페이지 메타 외에 페이지 속성 비트(Property bit)가 더 생성된다. 즉, 프로그램될 페이지 내에서 논리 '1'이나 논리 '0'의 비트 수가 기준값를 초과하는 지의 여부가 페이지 속성 비트에 설정된다. 예를 들면, 프로그램될 페이지에 논리 '1'의 비트 수가 기준값을 초과하면 메모리 컨트롤러(410)는 속성 비트를 '1'로 설정한다. 반면, 프로그램될 페이지에 논리 '1'의 비트 수가 기준값을 미만이면, 메모리 컨트롤러(410)는 속성 비트를 '0'로 설정할 수 있다. 그 반대의 논리값에 의하여 속성 비트가 설정될 수도 있다.
불휘발성 메모리 장치(420)는 데이터를 프로그램할 때, 상술한 속성 비트를 참조하여 제 1 프로그램 모드 또는 제 2 프로그램 모드에 따라서 선택된 페이지를 프로그램한다. 제 1 프로그램 모드는 일부 프로그램 루프의 검증 동작에서 비트 라인의 프리차지가 차단되는 동작 모드이다. 제 2 프로그램 모드는 모든 프로그램 루프에서 비트 라인의 프리차지가 활성화되는 동작 모드이다.
만일, 프로그램되는 페이지에 논리 '1'이 기준값를 초과하면, 프로그램 금지(Program inhibit)되는 메모리 셀들의 수가 기준값를 초과함을 의미한다. 즉, 프로그램 및 프로그램 검증의 대상이 되는 메모리 셀의 수는 상대적으로 적다. 따라서, 불휘발성 메모리 장치(420)는 제 2 프로그램 모드에 따라 선택된 페이지를 프로그램한다. 반면, 프로그램되는 페이지에 논리 '1'이 기준값 미만이면, 프로그램 금지(Program inhibit)되는 메모리 셀들의 수가 기준값 미만임을 의미한다. 즉, 프 로그램 및 프로그램 검증의 대상이 되는 메모리 셀들의 수가 상대적으로 많음을 의미한다. 이 경우, 검증 동작시 공통 소스 라인(CSL)의 바운싱에 의한 노이즈가 증가할 수 있다. 따라서, 불휘발성 메모리 장치(420)는 제 1 프로그램 모드에 따라 선택된 페이지를 프로그램한다.
도 12는 도 11의 프로그램 데이터(Program data)를 간략히 보여주는 도면이다. 도 12를 참조하면, 프로그램 데이터(Program data)의 예로 하나의 페이지가 도시되어 있다. 하나의 페이지에는 유저 데이터(User data)와 유저 데이터에 대한 제어 정보를 포함하는 페이지 메타(Page meta)가 포함된다. 특히, 본 발명의 메모리 컨트롤러(410)는 유저 데이터(User data)에 포함되는 논리 '1' 또는 논리 '0'의 비트 수에 대한 정보를 더 포함한다. 즉, 페이지 속성 비트(Property bit)가 더 포함될 수 있다.
예를 들면, 메모리 컨트롤러(410)는 프로그램 데이터의 페이지에 포함되는 논리 '1'의 비트 수를 카운트하여 기준값를 초과하는지 판단하여, 속성 비트의 값을 결정한다. 속성 비트는 페이지 메타(Page meta)와 함께 프로그램 데이터에 포함되며, 불휘발성 메모리 장치(420)에 제공된다.
도 13은 본 발명의 실시 예에 따른 불휘발성 메모리 장치를 포함하는 SSD를 보여주는 블록도이다. 도 13을 참조하면, SSD 시스템(1000)은 호스트(1100)와 SSD(1200)를 포함한다. SSD(1200)는 SSD 컨트롤러(1210), 버퍼 메모리(1220), 그리고 불휘발성 메모리 장치(1230)를 포함한다.
SSD 컨트롤러(1210)는 호스트(1100)와 SSD(1200)와의 물리적 연결을 제공한 다. 즉, SSD 컨트롤러(1210)는 호스트(1100)의 버스 포맷(Bus format)에 대응하여 SSD(1200)와의 인터페이싱을 제공한다. 특히, SSD 컨트롤러(1210)는 호스트(1100)로부터 제공되는 명령어를 디코딩한다. 디코딩된 결과에 따라, SSD 컨트롤러(1210)는 불휘발성 메모리 장치(1230)를 액세스한다. 호스트(1100)의 버스 포맷(Bus format)으로 USB(Universal Serial Bus), SCSI(Small Computer System Interface), PCI express, ATA, PATA(Parallel ATA), SATA(Serial ATA), SAS(Serial Attached SCSI) 등이 포함될 수 있다.
버퍼 메모리(1220)에는 호스트(1100)로부터 제공되는 쓰기 데이터 또는 불휘발성 메모리 장치(1230)로부터 읽혀진 데이터가 일시 저장된다. 호스트(1100)의 읽기 요청시에 불휘발성 메모리 장치(1230)에 존재하는 데이터가 캐시되어 있는 경우에는, 버퍼 메모리(1220)는 캐시된 데이터를 직접 호스트(1100)로 제공하는 캐시 기능을 지원한다. 일반적으로, 호스트(1100)의 버스 포맷(예를 들면, SATA 또는 SAS)에 의한 데이터 전송 속도는 SSD(1200)의 메모리 채널의 전송 속도보다 월등히 빠르다. 즉, 호스트(1100)의 인터페이스 속도가 월등히 높은 경우, 대용량의 버퍼 메모리(1220)를 제공함으로써 속도 차이로 발생하는 퍼포먼스 저하를 최소화할 수 있다.
버퍼 메모리(1220)는 대용량의 보조 기억 장치로 사용되는 SSD(1200)에서 충분한 버퍼링을 제공하기 위해 동기식 DRAM(Synchronous DRAM)으로 제공될 수 있다. 하지만, 버퍼 메모리(1220)가 여기의 개시에 국한되지 않음은 이 분야의 통상적인 지식을 습득한 자들에게 자명하다.
불휘발성 메모리 장치(1230)는 SSD(1200)의 저장 매체로서 제공된다. 예를 들면, 불휘발성 메모리 장치(1230)는 대용량의 저장 능력을 가지는 낸드 플래시 메모리(NAND-type Flash memory)로 제공될 수 있다. 불휘발성 메모리 장치(1230)는 복수의 메모리 장치로 구성될 수 있다. 이 경우, 각각의 메모리 장치들은 채널 단위로 SSD 컨트롤러(1210)와 연결된다. 저장 매체로서 불휘발성 메모리 장치(1230)가 낸드 플래시 메모리를 예로 들어 설명되었으나, 또 다른 불휘발성 메모리 장치들로 구성될 수 있다. 예를 들면, 저장 매체로서 PRAM, MRAM, ReRAM, FRAM, NOR 플래시 메모리 등이 사용될 수 있으며, 이종의 메모리 장치들이 혼용되는 메모리 시스템도 적용될 수 있다. 그리고 저장 매체로서 휘발성 메모리 장치(예를 들면, DRAM)이 포함될 수도 있다.
도 13에서, 적어도 하나의 불휘발성 메모리 장치(1230)는 도 1, 도 7 또는 도 10에 도시된 불휘발성 메모리 장치(100, 200, 300)를 포함할 수 있다. 즉, 불휘발성 메모리 장치(1230)는 특정 프로그램 루프에서, 프로그램 검증 동작을 스킵하거나 프로그램 검증시 비트 라인의 프리차자만을 스킵할 수 있다.
도 14는 본 발명에 따른 메모리 시스템(2000)을 간략히 보여주는 블록도이다. 도 14를 참조하면, 본 발명에 따른 메모리 시스템(1200)은 불휘발성 메모리 장치(2200)와 메모리 컨트롤러(2100)를 포함한다.
불휘발성 메모리 장치(2200)는 앞서 설명된 도 1, 도 7 또는 도 10에 도시된 불휘발성 메모리 장치(100, 200, 300)들 어느 하나일 수 있다. 메모리 컨트롤러(2100)는 불휘발성 메모리 장치(2200)를 제어하도록 구성될 것이다. 불휘발성 메 모리 장치(2200)와 메모리 컨트롤러(2100)의 결합에 의해 메모리 카드 또는 반도체 디스크 장치(Solid State Disk: SSD)로 제공될 수 있을 것이다. SRAM(2110)은 프로세싱 유닛(2120)의 동작 메모리로 사용된다. 호스트 인터페이스(2130)는 메모리 시스템(2000)과 접속되는 호스트의 데이터 교환 프로토콜을 구비한다. 에러 정정 블록(2140)은 불휘발성 메모리 장치(2200)로부터 독출된 데이터에 포함되는 에러를 검출 및 정정한다. 메모리 인터페이스(2150)는 본 발명의 불휘발성 메모리 장치(2200)와 인터페이싱 한다. 프로세싱 유닛(2120)은 메모리 컨트롤러(2100)의 데이터 교환을 위한 제반 제어 동작을 수행한다. 비록 도면에는 도시되지 않았지만, 본 발명에 따른 메모리 시스템(2000)은 호스트(Host)와의 인터페이싱을 위한 코드 데이터를 저장하는 ROM(미도시됨) 등이 더 제공될 수 있음은 이 분야의 통상적인 지식을 습득한 자들에게 자명하다. 불휘발성 메모리 장치(2200)는 복수의 플래시 메모리 칩들로 구성되는 멀티-칩 패키지로 제공될 수도 있다. 이상의 본 발명의 메모리 시스템(2000)은 에러의 발생 확률이 낮은 고신뢰성의 저장 매체로 제공될 수 있다. 특히, 최근 활발히 연구되고 있는 반도체 디스크 장치(Solid State Disk: 이하 SSD)와 같은 메모리 시스템에서 본 발명의 플래시 메모리 장치가 구비될 수 있다. 이 경우, 메모리 컨트롤러(2100)는 USB, MMC, PCI-E, SAS, SATA, PATA, SCSI, ESDI, 그리고 IDE 등과 같은 다양한 인터페이스 프로토콜들 중 하나를 통해 외부(예를 들면, 호스트)와 통신하도록 구성될 것이다. 또한, 메모리 컨트롤러(2100)에는 랜덤 연산을 수행하기 위한 구성이 더 포함될 수 있다.
도 15에는 본 발명에 따른 불휘발성 메모리 장치(3120)를 포함한 컴퓨팅 시 스템(3000)이 개략적으로 도시되어 있다. 본 발명에 따른 컴퓨팅 시스템(3000)은 시스템 버스(3600)에 전기적으로 연결된 마이크로프로세서(3200), 램(3300), 사용자 인터페이스(3400), 베이스밴드 칩셋(Baseband chipset)과 같은 모뎀(3500) 및 메모리 시스템(3100)을 포함한다. 메모리 시스템(3100)은 도 12에 도시된 것과 실질적으로 동일하게 구성될 것이다. 본 발명에 따른 컴퓨팅 시스템(3000)이 모바일 장치인 경우, 컴퓨팅 시스템(3000)의 동작 전압을 공급하기 위한 배터리(미도시됨)가 추가적으로 제공될 것이다. 비록 도면에는 도시되지 않았지만, 본 발명에 따른 컴퓨팅 시스템(3000)에는 응용 칩셋(Application chipset), 카메라 이미지 프로세서(Camera Image Processor: CIS), 모바일 디램, 등이 더 제공될 수 있음은 이 분야의 통상적인 지식을 습득한 자들에게 자명하다. 메모리 시스템(3100)은, 예를 들면, 데이터를 저장하는 데 불휘발성 메모리를 사용하는 SSD(Solid State Drive/Disk)를 구성할 수 있다. 또는, 메모리 시스템(3100)은, 퓨전 플래시 메모리(예를 들면, 원낸드 플래시 메모리)로 제공될 수 있다.
본 발명에 따른 불휘발성 메모리 장치 그리고/또는 메모리 컨트롤러는 다양한 형태들의 패키지를 이용하여 실장될 수 있다. 예를 들면, 본 발명에 따른 플래시 메모리 장치 그리고/또는 메모리 컨트롤러는 PoP(Package on Package), Ball grid arrays(BGAs), Chip scale packages(CSPs), Plastic Leaded Chip Carrier(PLCC), Plastic Dual In-Line Package(PDIP), Die in Waffle Pack, Die in Wafer Form, Chip On Board(COB), Ceramic Dual In-Line Package(CERDIP), Plastic Metric Quad Flat Pack(MQFP), Thin Quad Flatpack(TQFP), Small Outline(SOIC), Shrink Small Outline Package(SSOP), Thin Small Outline(TSOP), Thin Quad Flatpack(TQFP), System In Package(SIP), Multi Chip Package(MCP), Wafer-level Fabricated Package(WFP), Wafer-Level Processed Stack Package(WSP), 등과 같은 패키지들을 이용하여 실장될 수 있다.
이상에서와 같이 도면과 명세서에서 최적 실시 예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
도 1은 본 발명의 일 실시 예의 불휘발성 메모리 장치를 보여주는 블록도;
도 2는 본 발명의 프로그램 단계들을 보여주는 다이어그램;
도 3은 프로그램 동작시 워드 라인 전압의 파형을 보여주는 타이밍도;
도 4는 본 발명의 일 실시 예에 따른 프로그램 방법을 보여주는 순서도;
도 5는 본 발명의 효과를 간략히 보여주는 다이어그램;
도 6a 및 도 6b는 본 발명의 검증 동작을 각각 보여주는 회로도;
도 7은 본 발명의 다른 실시 예의 불휘발성 메모리 장치를 보여주는 블록도;
도 8은 도 7의 페이지 버퍼의 구성을 보여주는 블록도;
도 9는 도 7의 불휘발성 메모리 장치의 동작을 보여주는 타이밍도;
도 10은 본 발명의 또 다른 실시 예의 불휘발성 메모리 장치를 보여주는 블록도;
도 11은 본 발명의 실시 예에 따른 메모리 시스템을 보여주는 블록도;
도 12는 도 11의 프로그램 데이터를 보여주는 블록도;
도 13은 본 발명의 실시 예에 따른 불휘발성 메모리 장치를 포함하는 솔리드 스테이트 드라이브(SSD)를 보여주는 블록도;
도 14는 본 발명의 실시 예에 따른 불휘발성 메모리 장치를 포함하는 메모리 시스템을 보여주는 블록도; 및
도 15는 본 발명의 불휘발성 메모리 장치를 포함하는 컴퓨팅 시스템을 보여주는 블록도.

Claims (10)

  1. 불휘발성 메모리 장치의 프로그램 방법에 있어서:
    메모리 셀의 워드 라인에 제 1 프로그램 펄스를 인가하는 제 1 프로그램 동작 및 상기 메모리 셀의 비트 라인을 제 1 프리차지 전압으로 충전하는 제 1 검증 동작을 포함하는 제 1 프로그램 루프를 실행하는 단계; 및
    상기 워드 라인에 제 2 프로그램 펄스를 인가하는 제 2 프로그램 동작 및 상기 비트 라인을 제 2 프리차지 전압으로 충전하는 제 2 검증 동작을 포함하는 제 2 프로그램 루프를 실행하는 단계를 포함하되,
    상기 제 2 프로그램 펄스의 레벨은 상기 제 1 프로그램 펄스의 레벨보다 높고, 상기 제 1 프리차지 전압과 상기 제 2 프리차지 전압 중 어느 하나는 비활성화되는 프로그램 방법.
  2. 제 1 항에 있어서,
    상기 제 2 프로그램 루프는 상기 제 1 프로그램 루프에 연속하여 수행되는 프로그램 방법.
  3. 삭제
  4. 제 2 항에 있어서,
    상기 제 1 프리차지 전압은 차단되고, 상기 제 2 프리차지 전압은 공급되는 프로그램 방법.
  5. 제 2 항에 있어서,
    상기 제 1 프리차지 전압은 공급되고 상기 제 2 프리차지 전압은 차단되는 프로그램 방법.
  6. 제 1 항에 있어서,
    상기 제 1 프로그램 루프에서 상기 제 2 프로그램 루프로의 이동은 상기 메모리 셀에 대한 프로그램 루프 카운트의 증가에 따라 수행되는 프로그램 방법.
  7. 제 1 항에 있어서,
    상기 제 1 프리차지 전압과 상기 제 2 프리차지 전압 중 어느 하나가 비활성화되는 프로그램 루프의 검증 동작시, 상기 메모리 셀들의 워드 라인에는 검증 전압의 제공이 차단되는 프로그램 방법.
  8. 메모리 셀;
    상기 메모리 셀의 비트 라인에 연결되는 페이지 버퍼; 및
    제 1 프로그램 펄스가 제공되는 제 1 루프 카운트에 대응하는 프로그램 검증 동작시에는 상기 비트 라인의 프리차지가 비활성화되도록, 그리고 제 2 프로그램 펄스가 제공되는 제 2 루프 카운트에 대응하는 프로그램 검증 동작시 상기 비트 라인의 프리차지가 활성화되도록 상기 페이지 버퍼를 제어하는 제어 로직을 포함하되,
    상기 제 1 프로그램 펄스의 레벨은 상기 제 2 프로그램 펄스의 레벨보다 낮은 불휘발성 메모리 장치.
  9. 제 8 항에 있어서,
    상기 페이지 버퍼는 상기 제 1 루프 카운트 또는 상기 제 2 루프 카운트 값을 저장하기 위한 복수의 래치들을 포함하는 불휘발성 메모리 장치.
  10. 제 9 항에 있어서,
    상기 제어 로직은 매 프로그램 루프마다 상기 루프 카운트 값이 업데이트 되도록 상기 복수의 래치들을 제어하는 불휘발성 메모리 장치.
KR1020090094376A 2009-10-05 2009-10-05 불휘발성 메모리 장치 및 그것의 프로그램 방법 KR101634363B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020090094376A KR101634363B1 (ko) 2009-10-05 2009-10-05 불휘발성 메모리 장치 및 그것의 프로그램 방법
US12/793,007 US8498160B2 (en) 2009-10-05 2010-06-03 Nonvolatile memory device and related programming method using selective bit line precharging

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090094376A KR101634363B1 (ko) 2009-10-05 2009-10-05 불휘발성 메모리 장치 및 그것의 프로그램 방법

Publications (2)

Publication Number Publication Date
KR20110037100A KR20110037100A (ko) 2011-04-13
KR101634363B1 true KR101634363B1 (ko) 2016-06-29

Family

ID=43823065

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090094376A KR101634363B1 (ko) 2009-10-05 2009-10-05 불휘발성 메모리 장치 및 그것의 프로그램 방법

Country Status (2)

Country Link
US (1) US8498160B2 (ko)
KR (1) KR101634363B1 (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101115242B1 (ko) * 2010-04-13 2012-02-15 주식회사 하이닉스반도체 반도체 메모리 장치의 프로그램 방법
KR101211840B1 (ko) * 2010-12-30 2012-12-12 에스케이하이닉스 주식회사 반도체 메모리 장치의 프로그램 방법
KR101787612B1 (ko) * 2011-07-12 2017-10-19 삼성전자주식회사 비휘발성 메모리 장치의 데이터 저장 방법 및 구동 방법
KR101942274B1 (ko) * 2012-02-13 2019-01-28 삼성전자주식회사 저항성 메모리 장치
JP5992983B2 (ja) * 2014-12-03 2016-09-14 ウィンボンド エレクトロニクス コーポレーション 不揮発性半導体記憶装置
KR102458918B1 (ko) * 2016-02-24 2022-10-25 삼성전자주식회사 메모리 장치 및 메모리 시스템
US11574691B2 (en) 2016-02-24 2023-02-07 Samsung Electronics Co., Ltd. Memory device and memory system
KR20190014301A (ko) * 2017-08-01 2019-02-12 에스케이하이닉스 주식회사 메모리 장치 및 그것의 동작 방법
US10573390B1 (en) * 2018-11-30 2020-02-25 Samsung Electronics Co., Ltd. High-density storage system
CN111863087B (zh) * 2019-04-29 2022-08-30 北京兆易创新科技股份有限公司 一种控制编程性能的方法和装置
WO2021223099A1 (en) * 2020-05-06 2021-11-11 Yangtze Memory Technologies Co., Ltd. Control method and controller of 3d nand flash
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
US11475957B2 (en) * 2021-01-14 2022-10-18 Sandisk Technologies Llc Optimized programming with a single bit per memory cell and multiple bits per memory cell

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3935139B2 (ja) 2002-11-29 2007-06-20 株式会社東芝 半導体記憶装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3940544B2 (ja) * 2000-04-27 2007-07-04 株式会社東芝 不揮発性半導体メモリのベリファイ方法
JP2002109890A (ja) 2000-10-03 2002-04-12 Hitachi Ltd 不揮発性半導体メモリ
KR100562506B1 (ko) * 2003-12-01 2006-03-21 삼성전자주식회사 플래시 메모리 장치 및 그것의 프로그램 방법
DE102005009700B4 (de) 2004-02-26 2009-02-05 Samsung Electronics Co., Ltd., Suwon Programmierverfahren und nichtflüchtiger Speicher
KR100525004B1 (ko) 2004-02-26 2005-10-31 삼성전자주식회사 멀티레벨 셀(Multi-level cell)플래쉬메모리장치 및 이의 프로그램 방법
KR100648290B1 (ko) * 2005-07-26 2006-11-23 삼성전자주식회사 프로그램 속도를 향상시킬 수 있는 불 휘발성 메모리 장치및 그것의 프로그램 방법
US7675783B2 (en) * 2007-02-27 2010-03-09 Samsung Electronics Co., Ltd. Nonvolatile memory device and driving method thereof
KR100932369B1 (ko) 2007-06-28 2009-12-16 주식회사 하이닉스반도체 불휘발성 메모리 장치
KR101321472B1 (ko) * 2007-07-23 2013-10-25 삼성전자주식회사 비휘발성 메모리 장치 및 그것의 프로그램 방법
KR100967007B1 (ko) * 2007-11-29 2010-06-30 주식회사 하이닉스반도체 불휘발성 메모리 소자의 프로그램 검증 방법
KR100967003B1 (ko) * 2008-05-29 2010-07-02 주식회사 하이닉스반도체 불휘발성 메모리 소자 및 그 동작 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3935139B2 (ja) 2002-11-29 2007-06-20 株式会社東芝 半導体記憶装置

Also Published As

Publication number Publication date
US20110080791A1 (en) 2011-04-07
KR20110037100A (ko) 2011-04-13
US8498160B2 (en) 2013-07-30

Similar Documents

Publication Publication Date Title
KR101634363B1 (ko) 불휘발성 메모리 장치 및 그것의 프로그램 방법
USRE46238E1 (en) Semiconductor memory device and related method of programming
US9741441B2 (en) Nonvolatile memory system including nonvolatile memory device and memory controller and operating method of memory controller
US8665649B2 (en) Non-volatile memory device and ISPP programming method
JP5829837B2 (ja) ダイナミック検証モード選択を有する不揮発性メモリー装置とその動作方法、駆動方法、並びにプログラミング方法、メモリーシステム、メモリーカード及びソリッドステートドライバー
US9183944B2 (en) Method of writing data in non-volatile memory device
US8264888B2 (en) Flash memory device configured to reduce common source line noise, methods of operating same, and memory system incorporating same
US9355738B2 (en) Nonvolatile memory system and operating method of memory controller
US8611150B2 (en) Flash memory device including flag cells and method of programming the same
US8902666B2 (en) Programming method for nonvolatile memory device
KR101278103B1 (ko) 불휘발성 메모리 장치 및 그것의 프로그램 방법
JP2009037619A (ja) メモリシステム及びその読み出し方法
US9251901B2 (en) Semiconductor memory device with high threshold voltage distribution reliability method
KR20110125029A (ko) 불휘발성 메모리 장치 및 그것의 프로그램 방법
US9466389B2 (en) Multiple programming pulse per loop programming and verification method for non-volatile memory devices
KR101999764B1 (ko) 반도체 메모리 장치
US9269443B2 (en) Semiconductor device and program fail cells
KR20140144990A (ko) 반도체 메모리 장치 및 그것의 동작 방법
KR101642930B1 (ko) 더미 셀을 갖는 불휘발성 메모리 장치 및 그것의 프로그램 방법
US20150194220A1 (en) Semiconductor device and memory system including the same
US11848054B2 (en) Memory device determining precharge time based on a number of times that a program voltage is applied to word line and operating method of memory device

Legal Events

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

Payment date: 20190530

Year of fee payment: 4