KR101456592B1 - 멀티-비트 플래시 메모리 장치 및 그것의 플래그 셀 분석방법 - Google Patents

멀티-비트 플래시 메모리 장치 및 그것의 플래그 셀 분석방법 Download PDF

Info

Publication number
KR101456592B1
KR101456592B1 KR1020080056897A KR20080056897A KR101456592B1 KR 101456592 B1 KR101456592 B1 KR 101456592B1 KR 1020080056897 A KR1020080056897 A KR 1020080056897A KR 20080056897 A KR20080056897 A KR 20080056897A KR 101456592 B1 KR101456592 B1 KR 101456592B1
Authority
KR
South Korea
Prior art keywords
flag
cells
flag cells
program
margin
Prior art date
Application number
KR1020080056897A
Other languages
English (en)
Other versions
KR20090131105A (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 KR1020080056897A priority Critical patent/KR101456592B1/ko
Priority to US12/467,529 priority patent/US8218371B2/en
Publication of KR20090131105A publication Critical patent/KR20090131105A/ko
Application granted granted Critical
Publication of KR101456592B1 publication Critical patent/KR101456592B1/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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • 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/564Miscellaneous aspects
    • G11C2211/5646Multilevel memory with flag bits, e.g. for showing that a "first page" of a word line is programmed but not a "second page"

Abstract

본 발명의 멀티-비트 플래시 메모리 장치는, 복수의 메모리 셀들과 복수의 플래그 셀들을 구비한 메모리 셀 어레이, 그리고 상기 플래그 셀들의 읽기 마진에 대응되는 판정 기준을 적용하여 상기 플래그 셀들의 프로그램 여부를 판정하고, 상기 판정 결과에 응답해서 상기 메모리 셀들의 프로그램 동작을 제어하는 제어회로를 포함한다. 이와 같은 구성에 따르면, 읽기 마진이 비대칭적으로 구성된다 하더라도 이를 고려하여 플래그 셀들의 프로그램 상태를 정확히 판정할 수 있고, 멀티-비트 프로그램의 정확도를 높일 수 있게 된다.
플래시 메모리, 프로그램, 읽기, MLC

Description

멀티-비트 플래시 메모리 장치 및 그것의 플래그 셀 분석 방법{MULTI-BIT FLASH MEMORY DEVICE AND ANALYSIS METHOD OF FLAG CELLS FOR THE SAME}
본 발명은 반도체 메모리 장치에 관한 것으로, 좀 더 구체적으로는 멀티 비트 플래시 메모리의 프로그램에 관한 것이다.
반도체 메모리 장치는 크게 휘발성 반도체 메모리 장치(volatile semiconductor memory device)와 불 휘발성 반도체 메모리 장치(non-volatile semiconductor memory device)로 구분된다.
휘발성 반도체 메모리 장치는 읽고 쓰는 속도가 빠르지만 외부 전원 공급이 끊기면 저장된 내용이 사라져 버리는 단점이 있다. 반면에 불 휘발성 반도체 메모리 장치는 외부 전원 공급이 중단되더라도 그 내용을 보존한다. 그러므로, 불 휘발성 반도체 메모리 장치는 전원이 공급되었는지의 여부에 관계없이 보존되어야 할 내용을 기억시키는 데 쓰인다. 불 휘발성 반도체 메모리 장치로는 마스크 롬(mask read-only memory, MROM), 프로그램 가능한 롬(programmable read-only memory, PROM), 소거 및 프로그램 가능한 롬(erasable programmable read-only memory, EPROM), 전기적으로 소거 및 프로그램 가능한 롬(electrically erasable programmable read-only memory, EEPROM) 등이 있다.
일반적으로, MROM, PROM 및 EPROM은 시스템 자체적으로 소거 및 쓰기가 자유롭지 않아서 일반 사용자들이 기억 내용을 갱신하기가 용이하지 않다. 이에 반해 EEPROM은 전기적으로 소거 및 쓰기가 가능하기 때문에, 계속적인 갱신이 필요한 시스템 프로그래밍(system programming)이나 보조 기억 장치로의 응용이 확대되고 있다. 특히 플래시(flash) EEPROM은 기존의 EEPROM에 비해 집적도가 높아, 대용량 보조 기억 장치로의 응용에 매우 유리하다. 플래시 EEPROM 중에서도 낸드형(NAND-type) 플래시 EEPROM(이하, '낸드형 플래시 메모리'라 칭함)은 다른 플래시 EEPROM에 비해 집적도가 매우 높은 장점을 가진다.
플래시 메모리 장치는, 각각의 메모리 셀에 저장되는 비트 수에 따라서 각각의 메모리 셀에 저장 가능한 데이터 상태가 결정된다. 하나의 메모리 셀에 1-비트 데이터를 저장하는 메모리 셀을 단일 비트 셀(single-bit cell) 또는 단일 레벨 셀(single-level cell ; SLC)이라 한다. 그리고, 하나의 메모리 셀에 멀티-비트 데이터(예를 들면, 2 비트 이상)를 저장하는 멀티 비트 셀(multi-bit cell), 멀티 레벨 셀(multi-level cell ; MLC), 또는 멀티 스테이트 셀(multi-state cell)이라 한다. 최근 들어, 메모리 장치에 대한 고집적 요구가 높아짐에 따라, 하나의 메모리 셀에 멀티-비트 데이터를 저장하는 멀티 레벨 플래시 메모리에 대한 연구가 활발히 진행되고 있다.
본 발명의 목적은 멀티-비트 플래시 메모리 장치의 플래그 셀의 비대칭적인 읽기 마진(read margin) 특성을 개선할 수 있는 멀티-비트 플래시 메모리 장치 및 그것의 플래그 셀 분석 방법을 제공하는 데 있다.
본 발명의 또 다른 목적은 멀티-비트 프로그램의 정확도를 높일 수 있는 멀티-비트 플래시 메모리 장치 및 그것의 플래그 셀 분석 방법을 제공하는 데 있다.
상기의 과제를 이루기 위하여 본 발명에 의한 멀티-비트 플래시 메모리 장치는, 복수의 메모리 셀들과 복수의 플래그 셀들을 구비한 메모리 셀 어레이; 그리고 상기 플래그 셀들의 읽기 마진에 대응되는 판정 기준을 적용하여 상기 플래그 셀들의 프로그램 여부를 판정하고, 상기 판정 결과에 응답해서 상기 메모리 셀들의 프로그램 동작을 제어하는 제어회로를 포함하는 것을 특징으로 한다.
이 실시예에 있어서, 상기 복수의 메모리 셀들은 페이지 단위로 프로그램되고, 상기 각각의 페이지에는 상기 플래그 셀들이 복수 개 할당되는 것을 특징으로 한다.
이 실시예에 있어서, 상기 복수의 플래그 셀들은 대응되는 상기 페이지의 상기 메모리 셀들에서 적어도 하나 이상의 상위 비트가 프로그램되는 동안 프로그램되는 것을 특징으로 한다.
이 실시예에 있어서, 상기 플래그 셀들의 상기 읽기 마진은 읽기 전압을 기준으로 비대칭적인 크기를 갖는 것을 특징으로 한다.
이 실시예에 있어서, 상기 각각의 플래그 셀은 제 1 데이터 상태와 제 2 데 이터 상태 중 어느 하나로 프로그램되는 것을 특징으로 한다.
이 실시예에 있어서, 상기 플래그 셀들은, 상기 제 1 데이터 상태와 읽기 전압 사이에 제 1 마진을, 상기 제 2 데이터 상태와 상기 읽기 전압 사이에 상기 제 1 마진과 다른 크기의 제 2 마진을 갖는 것을 특징으로 한다.
이 실시예에 있어서, 상기 제어회로는 상기 제 1 마진에는 a개의 프로그램 페일을 허용하고, 상기 제 2 마진에는 b 개의 상기 프로그램 페일을 허용하며, 상기 a,b는 자연수인 것을 특징으로 한다.
이 실시예에 있어서, 상기 제 2 마진에서 상기 b개 이하의 프로그램 페일이 발생된 경우, 상기 제어회로는 상기 복수의 플래그 셀들이 상기 제 1 데이터 상태로 프로그램된 것으로 판정하는 것을 특징으로 한다.
이 실시예에 있어서, 상기 제 1 마진에서 상기 a개 이하의 프로그램 페일이 발생된 경우, 상기 제어회로는 상기 복수의 플래그 셀들이 상기 제 2 데이터 상태로 프로그램된 것으로 판정하는 것을 특징으로 한다.
이 실시예에 있어서, 상기 제 1 마진이 상기 제 2 마진 보다 큰 경우, a > b 인 것을 특징으로 한다.
이 실시예에 있어서, 하나의 페이지에 할당된 상기 플래그 셀들의 개수가 N개인 경우, N > a + b이고, 상기 N은 자연수인 것을 특징으로 한다.
상기의 과제를 이루기 위하여 본 발명에 의한 멀티-비트 플래시 메모리 장치의 플래그 셀 분석 방법은, 복수 개의 플래그 셀들에 기록된 복수 개의 플래그 정보들을 분석하는 단계; 그리고 상기 분석 결과에 응답해서 상기 플래그 셀들에 대 응되는 복수 개의 메모리 셀들의 프로그램 동작을 제어하는 단계를 포함하며, 상기 분석 단계에서는, 상기 플래그 셀들의 읽기 마진에 대응되는 판정 기준을 적용하여 상기 플래그 셀들의 프로그램 여부가 판정되는 것을 특징으로 한다.
이 실시예에 있어서, 상기 각각의 플래그 셀은 제 1 데이터 상태와 제 2 데이터 상태 중 어느 하나로 프로그램되는 것을 특징으로 한다.
이 실시예에 있어서, 상기 플래그 셀들은, 상기 제 1 데이터 상태와 읽기 전압 사이에 제 1 마진을, 상기 제 2 데이터 상태와 상기 읽기 전압 사이에 상기 제 1 마진과 다른 크기의 제 2 마진을 갖는 것을 특징으로 한다.
이 실시예에 있어서, 상기 제 1 마진이 상기 제 2 마진 보다 큰 경우 상기 제 1 마진에는 a개의 프로그램 페일을 허용하고, 상기 제 2 마진에는 상기 a개 보다 큰 b 개의 상기 프로그램 페일을 허용하며, 상기 a, b는 자연수인 것을 특징으로 한다.
이 실시예에 있어서, 하나의 페이지에 할당된 상기 플래그 셀들의 개수가 N개이고, 상기 제 1 마진에는 a개의 프로그램 페일이 허용되고, 상기 제 2 마진에는 b개의 상기 프로그램 페일이 허용되는 경우, N > a + b이고, 상기 a, b, N은 자연수인 것을 특징으로 한다.
이 실시예에 있어서, 상기 분석 단계에서는 상기 제 2 마진에서 상기 b개 이하의 프로그램 페일이 발생된 경우, 상기 복수의 플래그 셀들이 상기 제 1 데이터 상태로 프로그램된 것으로 판정하는 것을 특징으로 한다.
이 실시예에 있어서, 상기 분석 단계에서는 상기 제 1 마진에서 상기 a개 이 하의 프로그램 페일이 발생된 경우, 상기 복수의 플래그 셀들이 상기 제 2 데이터 상태로 프로그램된 것으로 판정하는 것을 특징으로 한다.
이상과 같은 본 발명에 의하면, 멀티-비트 플래시 메모리 장치의 플래그 셀들이 비대칭적인 읽기 마진을 갖더라도 플래그 셀로부터 정확한 읽기 동작을 수행할 수 있게 된다. 그 결과, 멀티-비트 플래시 메모리 장치의 플래그 셀의 읽기 마진을 개선할 수 있고, 멀티-비트 프로그램의 정확도를 높일 수 있게 된다.
이하 본 발명에 따른 실시예를 첨부된 도면을 참조하여 상세히 설명한다. 아래에 설명될 본 발명에 따른 플래시 메모리 장치의 회로 구성과, 그것에 의해 수행되는 프로그램 동작 및 플래그 셀의 읽기 동작은 예를 들어 설명한 것에 불과하며 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 다양한 변화 및 변경이 가능하다.
본 발명의 신규한 멀티-비트 플래시 메모리 장치는, 플래그 셀들이 가지고 있는 비대칭적인 읽기 마진에 대응되는 판정 기준을 적용하여 플래그 셀들의 프로그램 여부를 판정한다. 그리고, 상기 판정 결과에 응답해서 메모리 셀들의 프로그램 동작을 제어한다. 본 발명에서 플래그 셀들의 프로그램 여부를 판정하는데 사용되는 판정 기준은, 플래그 셀들의 읽기 마진 특성에 대응되도록 구성되기 때문에, 읽기 마진이 비대칭적으로 구성된다 하더라도 이를 고려하여 플래그 셀들의 프로그램 상태를 정확히 판정할 수 있고, 멀티-비트 프로그램의 정확도를 높일 수 있게 된다.
도 1은 본 발명에 따른 플래시 메모리 장치(100)의 개략적인 구성을 보여주는 도면이다.
도 1을 참조하면, 본 발명의 플래시 메모리 장치(100)는 메모리 셀 어레이(110)를 포함한다. 메모리 셀 어레이(110)는 복수의 행들(또는 워드 라인들)과 복수의 열들(또는 비트 라인들)로 배열된 메모리 셀들을 포함한다. 메모리 셀 어레이(110)를 구성하는 각각의 메모리 셀은 1-비트 데이터 또는 N-비트 데이터를 저장하도록 구성될 수 있다. 이를 위해 메모리 셀 어레이(110)는 MLC로 구성될 수도 있고, SLC로 구성될 수도 있고, 그리고 MLC와 SLC가 혼합된 형태로 구성될 수도 있다. 또한, 메모리 셀 어레이(110)는 일반 데이터를 저장하기 위한 메인 영역과, 메인 영역 및 일반 데이터와 관련된 부가 정보(예를 들면, 플래그 정보, 에러 정정 코드, 디바이스 코드, 메이커 코드, 페이지 정보 등)를 저장하기 위한 스페어 영역으로 구분될 수 있다. 메인 영역에 포함된 메모리 셀들 각각은 1-비트 데이터 또는 N-비트 데이터를 저장하도록 구성될 수 있다. 스페어 영역에 포함된 메모리 셀들 역시 각각이 1-비트 데이터 또는 N-비트 데이터를 저장하도록 구성될 수 있다.
도 2 및 도 3은 도 1에 도시된 셀 어레이(110)의 구성 예를 보여주는 도면이다.
셀 어레이(110)를 구성하는 복수의 메모리 셀들은 복수의 메모리 블록들(Memory Blocks ; MBs)을 구성할 수 있다. 각각의 메모리 블록(MB)에 포함된 메모리 셀들은 도 2에 도시된 바와 같이 낸드(NAND) 스트링 구조를 가질 수 있고, 도 3에 도시된 바와 같이 노어(NOR) 구조를 가질 수 있다. 도 2 및 도 3에 도시된 메모리 셀들의 구성은 메인 영역에 포함된 메모리 셀들은 물론, 스페어 영역에 포함된 메모리 셀들에도 모두 적용 가능하다.
아래에서 상세히 설명되겠지만, 본 발명의 플래시 메모리 장치(100)의 동작 특성, 특히 복수의 플래그 셀들로부터 읽혀진 결과들을 분석하는 방법은 도 2 및 도 3에 도시된 메모리 셀들에게 모두 적용될 수 있다. 이와 같은 본 발명의 플래그 셀의 분석 방법은 전하 저장층이 전도성 부유 게이트로 구성된 플래시 메모리 장치는 물론, 전하 저장층이 절연막으로 구성된 차지 트랩형 플래시(Charge Trap Flash, "CTF"라 불림)에도 모두 적용될 수 있고, MROM, PROM과 같은 다른 종류의 불휘발성 메모리 장치에도 적용될 수 있다.
도 2 및 도 3을 참조하여 메모리 셀 어레이의 구성을 살펴보면 다음과 같다.
도 2를 참조하면, 하나의 메모리 블록(MB)에는 복수의 열들 또는 비트 라인들(BL0∼BLn-1)에 각각 대응하는 복수의 스트링들(111)이 포함된다. 각 스트링(111)에는 스트링 선택 트랜지스터(SST), 복수 개의 메모리 셀들(M0∼Mm-1), 그리고 접지 선택 트랜지스터(GST)가 포함된다. 각 스트링(111)에 있어서, 스트링 선택 트랜지스터(SST)의 드레인은 대응하는 비트 라인에 연결되고, 접지 선택 트랜지스터(GST)의 소오스는 공통 소오스 라인(CSL)에 연결된다. 그리고, 스트링 선택 트랜지스터(SST)의 소오스와 접지 선택 트랜지스터(GST)의 드레인 사이에는 복수 개의 메모리 셀들(M0∼Mm-1)이 직렬 연결된다. 동일 행에 배열된 메모리 셀들의 제어 게이트들은 대응되는 워드라인(WL0∼WLm-1)과 공통으로 연결된다. 스트링 선택 트 랜지스터(SST)는 스트링 선택 라인(SSL)을 통해 인가되는 전압에 의해 제어되고, 접지 선택 트랜지스터(GST)는 접지 선택 라인(GSL)을 통해 인가되는 전압에 의해 제어된다. 그리고, 메모리 셀들(M0∼Mm-1)은 대응하는 워드 라인(WL0∼WLm-1)을 통해 인가되는 전압에 의해서 제어된다. 각각의 워드 라인(WL0∼WLm-1)에 접속된 메모리 셀들은 한 페이지 또는 복수 개의 페이지 분량에 해당되는 데이터를 저장한다.
낸드형 플래시 메모리의 프로그램 또는 읽기 동작은 페이지 단위로 수행되고, 프로그램된 데이터의 소거 동작은 페이지가 여러 개 모인 단위인 블록 단위로 수행된다. 각각의 페이지에 대한 프로그램 동작 또는 소거 동작과 관련된 정보는 스페어 영역(또는 메인 영역의 일부 영역)에 할당된 메모리 셀에 저장된다. 이를 플래그 정보(FL)라 하고, 플래그 정보를 저장하는 메모리 셀을 플래그 셀(MF)이라 한다. 플래그 셀(MF)에 저장된 플래그 정보를 분석함으로써, 대응되는 페이지의 프로그램 상태(특히, 멀티 레벨 셀의 상위 비트(MSB)의 프로그램 상태)를 식별할 수 있게 된다.
셀 당 N 비트의 데이터가 저장되는 멀티 레벨 셀의 경우, 각각의 비트에 대한 프로그램 동작이 최대 N회까지 각각 독립적으로 수행될 수 있다. 그리고, 각각의 프로그램 동작은 복수 개의 프로그램 루프들로 구성될 수 있다. 멀티 레벨 셀의 각 비트(예를 들면, LBB 비트, MSB 비트)에 대한 프로그램 동작은 동일 워드 라인(WL0∼WLm-1)에 접속된 셀들에서 페이지 단위로 수행된다. 프로그램 동작시 할당되는 페이지 어드레스는 워드라인 방향으로 연속적으로 할당될 수도 있고, 비연속 적으로 할당될 수 있다. 내부적으로 할당되는 페이지 어드레스는 선택된 메모리 셀의 사용 빈도 등을 고려하여 내부적으로 결정될 수 있다. 각각의 페이지에 대한 페이지 프로그램 수행 정보(이하, 플래그 정보라 칭함)는 대응되는 플래그 셀(MF)에 각각 독립적으로 저장된다.
플래그 셀(MF)은 대응되는 페이지의 메모리 셀들의 MSB 프로그램 수행 여부를 식별할 수 있도록 구성된다. 이를 위해, 플래그 셀(MF)은 대응되는 페이지의 메모리 셀들이 MSB 프로그램되는 동안 프로그램되도록 구성될 수 있다. 플래그 셀(MF)로부터 읽혀진 플래그 정보(FL)에 따라서 대응되는 페이지의 메모리 셀들의 MSB 프로그램 여부를 식별할 수 있게 된다. 하나의 페이지에는 하나 또는 그 이상의 플래그 셀들(MF)이 할당될 수 있다. 본 발명에서는 각각의 페이지에 복수의 플래그 셀들(MF)(예를 들면, 20개의 플래그 셀들)이 할당된 경우가 예시적으로 설명될 것이다.
예시적인 실시예에 있어서, 플래그 셀(MF)은 도 2에 도시된 낸드 스트링의 구조와 동일한 구조를 가지는 멀티 레벨 셀(MLC) 및/또는 단일 레벨 셀(SLC)로 구성될 수 있다. 그리고, 상기 플래그 셀(MF)이 구성되는 물리적인 위치는 특정 영역에 국한되지 않는다. 예를 들면, 플래그 셀(MF)은 셀 어레이(110)의 스페어 영역 내에 형성될 수도 있고, 셀 어레이(110)의 메인 영역 내에 형성될 수도 있다. 플래그 셀의 형태 및 개수는 셀 어레이(110)의 구조에 따라 다양하게 변형될 수 있다.
아래에서 상세히 설명되겠지만, 멀티 레벨 셀들로 구성된 멀티-비트 플래시 메모리 장치의 경우, 플래그 셀들(MF)은 프로그램 특성상 비대칭적인 읽기 마 진(read margin)을 갖게 된다. 본 발명에서는 플래그 셀들(MF)의 프로그램 상태에 대한 분석의 정확도와 멀티-비트 프로그램의 정확도를 높이기 위해, 비대칭적인 읽기 마진을 개선할 수 있는 새로운 방식의 플래그 셀 분석 방법을 제공한다. 본 발명의 플래그 셀 분석 방법은 도 4 내지 도 6을 참조하여 아래에서 상세히 설명될 것이다.
다시 도 1을 참조하면, 제어 회로(150)는 플래시 메모리(100)의 프로그램, 소거, 및 읽기 동작과 관련된 제반 동작을 제어한다. 프로그램될 데이터는 제어 회로(150)의 제어에 따라 버퍼(미 도시됨)를 통해 기입 독출회로(read/write circuit ; 130)로 로딩된다. 제어 회로(150)는 프로그램 구간 동안 선택된 워드 라인으로 프로그램 전압(Vpgm)이, 비선택된 워드 라인들로 패스 전압(Vpass)이, 그리고 메모리 셀들이 형성된 벌크에 0V의 전압이 인가될 수 있도록 디코딩 회로(120), 전압 발생 회로(160), 그리고 기입 독출회로(130)를 제어한다. 프로그램 전압(Vpgm)은 증가형 스텝 펄스 프로그래밍(incremental step pulse programming: ISPP) 방식에 따라 발생된다. 프로그램 전압(Vpgm)의 레벨은 프로그램 루프들이 반복됨에 따라 소정의 전압 증가분(△V) 만큼 단계적으로 증가한다. 각각의 프로그램 루프에서 사용되는 프로그램 전압들(Vpgm)의 인가 횟수, 전압 레벨, 그리고 전압 인가 시간 등은, 각 페이지의 프로그램의 진행 상태를 근거로 하여 외부(예를 들면, 메모리 컨트롤러) 또는 내부(예를 들면, 제어 회로(150))의 제어에 의해 다양한 형태로 변경 및 변형될 수 있다.
각 페이지의 프로그램의 진행 상태는 플래시 메모리(100)의 프로그램 동작을 제어하는데 중요한 역할을 한다. 플래시 메모리(100)가 셀 당 복수의 비트가 저장되는 멀티-비트 플래시 메모리인 경우, 플래그 셀들(MF)에 저장된 플래그 정보(FL)를 읽어옴으로써 대응되는 페이지의 MSB 프로그램의 완료 여부를 인식할 수 있게 된다. 플래그 셀들(MF)의 읽기 동작은 기입독출회로(130)를 통해 수행되고, 플래그 셀들(MF)로부터 읽혀진 플래그 정보(FL)는 제어 회로(150)에서 분석된다.
이 분야의 통상의 지식을 가진 이들에게 잘 알려져 있는 바와 같이, 플래시 메모리 장치는 프로그램된 메모리 셀에 다른 데이터를 재프로그램하는 것이 불가능하다. 따라서, 데이터를 프로그램하기에 앞서 소거 동작이 선행되어야만 한다. 소거된 메모리 셀에는 0 또는 1의 데이터 값이 프로그램된다. 소거된 메모리 셀의 상태는 1의 데이터 값이 프로그램된 것과 사실상 동일하다.
플래그 셀(MF)의 읽기 결과, 플래그 셀이 소거 상태(즉, 데이터 1의 상태)에 있으면, 제어 회로(150)는 선택된 페이지에서 MSB 프로그램이 완료되지 않은 것으로 인식한다. 그리고, 플래그 셀(MF)의 읽기 결과 플래그 셀이 프로그램 상태(즉, 데이터 0의 상태)에 있으면, 제어 회로(150)는 선택된 페이지에서 MSB 프로그램이 완료된 것으로 인식한다. 하나의 페이지에는 하나 또는 그 이상의 플래그 셀들(MF)이 할당될 수 있다.
하나의 페이지에 복수 개의 플래그 셀들(MF)이 할당되는 경우, 제어 회로(150)는 복수 개의 플래그 셀들(MF)로부터 읽혀진 결과들을 통합적으로 분석하여 선택된 페이지의 MSB의 프로그램 상태를 인식하게 된다. 예를 들면, 복수의 플래그 셀들(MF) 중에서 MSB 프로그램이 정상적으로 완료된 것으로 읽혀진 플래그 셀의 개 수를 분석하여 선택된 페이지의 MSB의 프로그램 상태를 인식하게 된다. 본 발명에서는 복수 개의 플래그 셀들(MF)로부터 읽혀진 결과들을 분석함에 있어서, 플래그 셀들(MF)이 가지고 있는 읽기 마진의 비대칭적인 특성을 고려하여 최적의 결과를 도출해 낸다. 본 발명에 따른 플래그 셀들의 분석 방법은 아래에서 상세히 설명될 것이다.
도 1에서, 전압 발생 회로(160)는 동작 모드에 따라서 각각의 워드 라인들으로 공급될 워드 라인 전압들(예를 들면, 프로그램 전압(Vpgm), 읽기 전압(Vread), 패스 전압(Vpass) 등)과, 메모리 셀들이 형성된 벌크(예를 들면, 웰 영역)로 공급될 전압을 발생한다. 전압 발생 회로(160)의 전압 발생 동작은 제어 회로(150)의 제어에 의해 수행된다. 디코딩 회로(120)는 제어 회로(150)의 제어에 응답해서 메모리 셀 어레이(110)의 메모리 블록들(또는 섹터들) 중 하나를 선택하고, 선택된 메모리 블록의 워드 라인들 중 하나를 선택한다. 디코딩 회로(120)는 제어 회로(150)의 제어에 응답해서 전압 발생 회로(160)로부터 발생된 워드라인 전압을 선택된 워드 라인 및 비선택된 워드 라인들로 각각 제공한다.
기입 독출 회로(130)는 제어 회로(150)에 의해서 제어되며, 동작 모드에 따라 감지 증폭기(sense amplifier)로서 또는 기입 드라이버(write driver)로서 동작한다. 예를 들면, 검증/정상 읽기 동작의 경우 기입 독출 회로(130)는 메모리 셀 어레이(110)로부터 데이터를 읽기 위한 감지 증폭기로서 동작한다. 정상 읽기 동작시 기입 독출 회로(130)로부터 읽혀진 데이터는 버퍼를 통해 외부(예를 들면, 메모리 컨트롤러 또는 호스트)로 출력된다. 그리고, 검증 읽기 동작시 읽혀진 데이터는 외부로 출력되지 않고 패스/페일 검증 회로(미 도시됨)로 제공된다.
프로그램 동작의 경우 기입 독출 회로(130)는 메모리 셀 어레이(110)에 저장될 데이터에 따라 비트 라인들을 구동하는 기입 드라이버로서 동작한다. 기입 독출 회로(130)는 프로그램 동작시 메모리 셀 어레이(110)에 쓰일 데이터를 버퍼로부터 입력받고, 입력된 데이터에 따라 비트라인들을 구동한다. 이를 위해 기입 독출 회로(130)는 열들(또는 비트 라인들) 또는 열쌍(또는 비트 라인 쌍들)에 각각 대응되는 복수 개의 페이지 버퍼들(미도시됨)로 구성될 수 있다. 기입 독출 회로(130)에 의해 수행되는 프로그램 동작 및 읽기 동작은 제어 회로(150)의 제어에 응답해서 멀티 레벨 셀(MLC)을 구성하는 각각의 비트(예를 들면, LSB 비트 및 MSB 비트)에 대해 각각 독립적으로 수행된다. 이 경우, 프로그램/읽기 동작에 사용될 프로그램/읽기 전압은, 현재 프로그램되는 멀티 레벨 셀(MLC)의 각각의 비트에 대한 프로그램 수행 여부에 따라서 달라지게 된다.
도 4는 도 2에 도시된 플래시 메모리 셀의 프로그램 상태 분포를 보여주는 도면이다. 도 4에는 2 비트 멀티 레벨 셀로 구성된 메인 메모리 셀과 플래그 셀(FM)들의 프로그램 상태 분포가 예시적으로 도시되어 있다. 그러나, 이는 본 발명이 적용되는 일 예로서, 도 4에 도시된 프로그램 상태의 분포는 다양한 형태로 변경 가능하다.
도 4를 참조하면, 하나의 메모리 셀에는 N 비트(예를 들면, 2 비트)의 프로그램 데이터가 저장 가능하며, 각각의 비트는 독립적으로 수행되는 페이지 프로그램 동작을 통해 각각 독립적으로 프로그램된다. 예를 들면 2 비트 멀티 레벨 셀의 경우, 2 비트의 프로그램 데이터 중 하위 비트(LSB)는 LSB 페이지 프로그램 동작을 통해, 그리고 2 비트의 프로그램 데이터 중 상위 비트(MSB)는 MSB 페이지 프로그램 동작을 통해 각각 독립적으로 프로그램될 수 있다. MSB 페이지 프로그램 동작은 LSB 페이지 프로그램 동작이 수행된 이후에 수행될 수 있다. LSB 페이지 프로그램 동작과 MSB 페이지 프로그램 동작은 각각 ISPP 프로그램 스킴을 따르는 복수의 프로그램 루프들로 구성될 수 있다.
LSB 페이지 프로그램 동작에서는 페이지 버퍼에 로딩된 LSB 데이터 값에 따라 메모리 셀의 LSB 비트의 값만 "1" 또는 "0"의 값으로 프로그램된다. 이때, 상위의 비트(즉, MSB 비트)는 소거 상태를 유지한다. 도 4에서, LSB 비트가 "1"의 값으로 프로그램된 경우의 프로그램 상태는 ST0으로 표시되어 있다. 그리고, LSB 비트가 "0"의 값으로 프로그램된 경우의 프로그램 상태는 ST1'으로 표시되어 있다. 예시적인 실시예에 있어서, ST0의 프로그램 상태는 2 비트 멀티 레벨 셀에 저장 가능한 데이터 상태들 중 "11"의 데이터 상태에 대응될 수 있다. 그리고, ST1'의 프로그램 상태는 "10"의 데이터 상태에 대응될 수 있다. LSB 비트의 값이 "1"의 값으로 프로그램되었는지 또는 "0"의 값으로 프로그램되었는지 여부는 제 1 읽기 전압(VR1)을 이용한 읽기 동작을 통해 인식될 수 있다. 선택된 페이지에서 LSB 페이지 프로그램이 수행되는 동안, 대응되는 플래그 셀은 소거 상태(즉, ST0의 프로그램 상태)를 유지한다.
LSB 페이지 프로그램 동작이 완료되면, MSB 페이지 프로그램 동작이 수행될 수 있다. MSB 페이지 프로그램 동작에서는 페이지 버퍼에 로딩된 MSB 데이터 값에 따라 메모리 셀의 MSB 비트의 값이 "1" 또는 "0"의 값으로 프로그램된다. 그 결과, 각각의 메모리 셀은 4 개의 프로그램 상태들(ST0-ST3) 중 하나를 갖게 된다. 예시적인 실시예에 있어서, ST0의 프로그램 상태는 "11"의 데이터 상태에 대응될 수 있고, ST1의 프로그램 상태는 "10"의 데이터 상태에 대응될 수 있다. 그리고, ST2의 프로그램 상태는 "01"의 데이터 상태에 대응될 수 있고, ST3의 프로그램 상태는 "00"의 데이터 상태에 대응될 수 있다. 그러나, 도 4에 도시된 프로그램 상태들(ST0-ST3)과 데이터 상태들의 관계는 일 실시예에 불과하며, 이는 다양한 형태로 변경 및 변형 가능하다.
도 4에는 하나의 페이지에 할당된 복수의 플래그 셀들(MF) 중 1개의 프로그램 상태 천이가 예시적으로 도시되어 있다. 본 발명에서 하나의 페이지에는 복수 개(예를 들면, 20개의 플래그 셀들(MF)이 할당될 수 있다. 선택된 페이지에서 MSB 페이지 프로그램이 수행되는 동안, 상기 페이지에 대응되는 복수 개의 플래그 셀들(MF)은 각각 ST0의 프로그램 상태에서 ST2의 프로그램 상태로 프로그램될 것이다. 도 4에 도시된 플래그 셀(MF)의 프로그램 상태 천이는 본 발명이 적용되는 일 예로서, 플래그 셀(MF)의 상태는 도 4에 도시된 ST0내지 ST3 중 어느 하나의 상태로 프로그램될 수 있다.
각각의 플래그 셀(MF)의 프로그램 여부는 제 2 읽기 전압(VR2)이 적용된 읽기(read) 동작을 통해 인식된다. 읽기 결과, 플래그 셀(MF)이 ST0의 프로그램 상태에 있으면, 대응되는 페이지에서 MLC 프로그램이 완료되지 않은 것으로 인식된다. 반면에, 플래그 셀(MF)이 ST2의 프로그램 상태에 있으면, 대응되는 페이지에서 MLC 프로그램이 완료된 것으로 인식된다. 각각의 플래그 셀(MF)로부터 읽혀진 결과들은 제어회로(150)로 제공되어 통합적으로 분석된다.
도 4에서 알 수 있는 바와 같이, 플래그 셀(MF)이 가질 수 있는 프로그램 상태들(ST0, ST2)은 제 2 읽기 전압(VR2)을 기준으로 서로 비대칭적인 특성을 갖는다. 즉, ST0의 상태로부터 제 2 읽기 전압(VR2)까지의 마진(M1, 이하 제 1 마진이라 칭함)은, ST2의 상태로부터 제 2 읽기 전압(VR2)까지의 마진(M2, 이하 제 2 마진이라 칭함) 보다 크다. 실험적인 수치에 의하면, 플래그 셀(MF)의 제 1 마진(M1)은 약 3V 정도의 값을 가질 수 있고, 플래그 셀(MF)의 제 2 마진(M2)은 약 0.5V 정도의 값을 가질 수 있다. 본 발명에서는 이와 같은 플래그 셀(MF)의 읽기 마진의 비대칭적인 특성을 고려하여 제어회로(150)가 복수의 플래그 셀들로부터 읽혀진 결과들을 종합적으로 분석한다. 그리고, 상기 분석 결과를 근거로 하여 선택된 페이지에 대한 MSB 프로그램 완료 여부를 판별한다.
도 5 및 도 6은 플래그 셀(MF)의 비대칭적인 읽기 마진을 고려한 본 발명의 플래그 셀들(MF)의 분석 방법을 설명하기 위한 도면이다. 도 5 및 도 6에는 MSB 프로그램 동작이 수행된 이후의 복수의(예를 들면, 20개) 플래그 셀들(MF)의 문턱전압 분포가 도시되어 있다. 도 5 및 도 6에 도시된 문턱전압 분포는 하나의 페이지에 할당된 플래그 셀들(MF)의 문턱전압 분포에 대응된다.
도 5 및 도 6을 참조하면, 각각의 페이지에 할당된 복수의 플래그 셀들(MF)은, 프로그램 동작시 여러 가지 원인으로 인해 프로그램 페일이 발생될 수 있다. 본 발명에서는 복수의 플래그 셀들(MF)로부터 읽혀진 플래그 정보들(FL)을 분석함 에 있어서, 플래그 셀들(MF)이 가지고 있는 비대칭적인 읽기 마진을 고려하여 허용 가능한 페일의 범위를 결정한다. 그리고, 결정된 허용 가능한 페일의 범위를 고려하여 복수의 플래그 셀들(MF)의 MSB 프로그램 여부를 최종적으로 판정한다. 이와 같이, 플래그 셀들(MF)이 가지고 있는 비대칭적인 읽기 마진은, 플래그 셀들(MF)의 프로그램 페일의 허용 범위와도 밀접한 관계를 가지며, 허용 가능한 페일의 범위는 복수의 플래그 셀들(MF)의 MSB 프로그램 여부를 최종적으로 판정하는데 중요한 요소가 된다. 프로그램 동작시 플래그 셀들에서 발생될 수 있는 페일들의 유형과, 각각의 페일 형태에 대해 허용 가능한 페일의 범위는 다음과 같다.
먼저 도 5를 참조하면, ST0의 데이터 상태를 갖는 플래그 셀들(MF)은, MLC 프로그램 동작시 인접 메모리 셀들로부터 디스터브(program disturb)의 영향을 받아 문턱전압 분포가 참조번호 10에서 참조번호 20으로 변경될 수 있다. 디스터브 현상에 따르면, ST0의 데이터 상태를 갖는 플래그 셀들(MF)에서 프로그램이 진행되어, 플래그 셀의 읽기에 사용되는 제 2 읽기 전압(VR2)이상으로 문턱전압이 증가하게 된다. 이 경우, 'B' 영역의 문턱전압 분포를 갖는 플래그 셀들(MF)은 ST2의 상태로 읽혀지는 오류가 발생하게 된다. 본 발명에서는 플래그 셀들(MF)의 읽기 오류의 허용 범위를 소정의 개수(예를 들면, 7개) 이내로 설정한다. 허용 가능한 읽기 오류의 허용 범위(즉, 페일이 발생된 플래그 셀들의 개수)는 플래그 셀들(MF)이 가지고 있는 비 대칭적인 읽기 마진과 밀접한 관계를 갖는다.
하나의 페이지에 20개의 플래그 셀들(MF)이 할당된 경우, 'B' 영역에는 최대 7개의 플래그 셀들(MF)이 포함되는 것을 허용할 수 있다. 즉, 제어회로(150)는 7개 이하의 플래그 셀들(MF)에서 디스터브로 인한 페일이 발생되는 것을 허용할 수 있다. 이 경우, ST0의 데이터 상태를 갖는 것으로 읽혀진 플래그 셀들(MF)의 개수는 13개 이상이 될 것이다. ST0의 데이터 상태를 갖는 것으로 읽혀진 플래그 셀들(MF)의 개수 또는 'B' 영역에 포함된 플래그 셀들의 개수는, 프로그램된 페이지에 대응되는 전체 플래그 셀들(MF)의 프로그램 상태를 판별하는 판정 기준으로서 사용된다.
예를 들어, 20 개의 플래그 셀들(MF) 중에서 7개 이하의 플래그 셀들(MF)이 ST2의 데이터 상태를 갖는 것으로 읽혀진 경우, 제어회로(150)는 프로그램된 페이지에 대응되는 복수의 플래그 셀들(MF)이 ST0의 데이터 상태를 갖는 것으로 판별한다. 제어회로(150)는 플래그 셀들(MF)의 판별 결과를 근거로 하여, 대응되는 페이지에서 MLC 프로그램이 수행되지 않은 것으로 인식하게 된다. 반면에, 20 개의 플래그 셀들(MF) 중에서 7개를 초과하는(즉, 8개 이상) 플래그 셀들(MF)이 ST2의 데이터 상태를 갖는 것으로 읽혀진 경우, 제어회로(150)는 프로그램된 페이지에 대응되는 복수의 플래그 셀들(MF)이 ST2의 데이터 상태를 갖는 것으로 판별하고, 대응되는 페이지에서 MLC 프로그램이 수행된 것으로 인식한다. 이 경우, 제어회로(150)는 ST2의 데이터 상태로 읽혀진 플래그 셀들(MF)이 정상적으로 프로그램된 것으로 인식하고, ST0의 데이터 상태로 읽혀진 플래그 셀들(MF)에서 페일이 발생된 것으로 인식하게 된다. 이 때, ST0의 데이터 상태를 갖는 것으로 읽혀진 플래그 셀들(MF)의 개수는 12개 이하가 될 것이다.
계속해서, 도 6을 참조하면, ST2의 데이터 상태를 갖는 플래그 셀들(MF)은, MLC 프로그램 동작시 발생된 챠지 로스(charge loss)로 인해 문턱전압 분포가 참조번호 30에서 참조번호 40으로 변경될 수 있다. 챠지 로스 현상에 따르면, ST2의 데이터 상태를 갖는 플래그 셀들(MF)에서 전하가 빠져나가게 되어, 플래그 셀의 읽기에 사용되는 제 2 읽기 전압(VR2) 미만으로 문턱전압이 감소하게 된다. 이 경우, 'A' 영역의 문턱전압 분포를 갖는 플래그 셀들(MF)이 ST0의 상태로 읽혀지는 오류가 발생하게 된다. 본 발명에서는 플래그 셀들(MF)의 챠지 로스로 인한 읽기 오류의 허용 범위를 소정의 개수(예를 들면, 12개) 이내로 설정한다. 허용 가능한 읽기 오류의 허용 범위(즉, 페일이 발생된 플래그 셀들의 개수)는 플래그 셀들(MF)이 가지고 있는 비 대칭적인 읽기 마진과 밀접한 관계를 갖는다.
하나의 페이지에 20개의 플래그 셀들(MF)이 할당된 경우, 'A' 영역에는 최대 12개의 플래그 셀들(MF)이 포함되는 것을 허용할 수 있다. 즉, 제어회로(150)는 12개 이하의 플래그 셀들(MF)에서 챠지 로스로 인한 페일이 발생되는 것을 허용할 수 있다. 이 경우, ST2의 데이터 상태를 갖는 것으로 읽혀진 플래그 셀들(MF)의 개수는 8개 이상이 될 것이다. ST2의 데이터 상태를 갖는 것으로 읽혀진 플래그 셀들(MF)의 개수 또는 'A' 영역에 포함된 플래그 셀들의 개수는, 프로그램된 페이지에 대응되는 전체 플래그 셀들(MF)의 프로그램 상태를 판별하는 판정 기준으로서 사용된다.
예를 들면, 20 개의 플래그 셀들(MF) 중에서 12개 이하의 플래그 셀들(MF)이 ST0의 데이터 상태를 갖는 것으로 읽혀진 경우, 제어회로(150)는 프로그램된 페이지에 대응되는 복수의 플래그 셀들(MF)이 ST2의 데이터 상태를 갖는 것으로 판별한 다. 제어회로(150)는 플래그 셀들(MF)의 판별 결과를 근거로 하여, 대응되는 페이지에서 MLC 프로그램이 수행된 것으로 인식하게 된다. 반면에, 20 개의 플래그 셀들(MF) 중에서 12개를 초과(즉, 13개 이상)하는 플래그 셀들(MF)이 ST0의 데이터 상태를 갖는 것으로 읽혀진 경우, 제어회로(150)는 프로그램된 페이지에 대응되는 복수의 플래그 셀들(MF)이 ST0의 데이터 상태를 갖는 것으로 판별하고, 대응되는 페이지에서 MLC 프로그램이 수행된 것으로 인식한다. 이 경우, 제어회로(150)는 ST10의 데이터 상태로 읽혀진 플래그 셀들(MF)을 정상적으로 프로그램된 것으로 인식하고, ST2의 데이터 상태로 읽혀진 플래그 셀들(MF)에서는 페일이 발생된 것으로 인식하게 된다. 이때, ST2의 데이터 상태를 갖는 것으로 읽혀진 플래그 셀들(MF)의 개수는 7개 이하가 될 것이다.
앞에서 설명한 바와 같이, 복수의 플래그 셀들(MF)의 전체 프로그램 상태는 복수 개의 플래그 셀들(MF)의 읽기 결과로 얻어진 'A' 영역 또는 'B' 영역에 속한 플래그 셀들(MF)의 개수, 또는 ST0 또는 ST2 상태로 프로그램된 플래그 셀들(MF)의 개수에 따라 판정됨을 알 수 있다. 특히, 본 발명에서 복수의 플래그 셀들(MF)의 전체 프로그램 상태를 판별하는 기준(즉, 허용 가능한 페일의 범위)은, 도 4에 도시된 플래그 셀(MF)의 읽기 마진과 마찬가지로 비대칭적인 특징을 갖는다.
도 4에 도시된 플래그 셀(MF)의 읽기 마진을 참조하면, ST0 상태에 대응되는 제 1 마진(M1)은 ST2에 대응되는 제 2 마진(M2) 보다 더 크다. 따라서, 본 발명에서는 제 1 마진(M1) 내에서 발생될 수 있는 플래그 셀들의 페일의 개수를 제 2 마진(M2) 내에서 발생될 수 있는 페일의 개수보다 더 크게 허용한다. 예를 들어, 제 1 마진(M1) 내에서 발생될 수 있는 플래그 셀들의 페일의 허용 개수가 a이고(도 6의 'A'참조), 제 2 마진(M2) 내에서 발생될 수 있는 플래그 셀들의 페일의 허용 개수가 b(도 5의 'B'참조)라 하자. 제 1 마진(M1)이 제 2 마진(M2) 보다 더 큰 경우, a > b인 특성을 갖는다 (여기서, a, b는 자연수). 도 5 및 도 6에 도시된 바와 같이, 제 1 마진(M1) 내에서 허용 가능한 페일의 개수는 12개(a=12)로 정의될 수 있고, 제 2 마진(M2) 내에서 허용 가능한 페일의 개수는 7개(b=7)로 정의될 수 있다. 즉, 본 발명에서는 읽기 마진이 넓은 쪽에 플래그 셀의 페일의 허용 개수를 더 크게 주고, 읽기 마진이 좁은 쪽에 플래그 셀의 페일의 허용 개수를 더 작게 준다. 이와 같이, 플래그 셀들의 페일의 허용 개수는 상기 플래그 셀들이 가지고 있는 읽기 마진의 크기에 비례하도록 정의될 수 있다. 정의된 플래그 셀들의 페일의 허용 개수는, 플래그 셀들의 프로그램 여부를 판정하는 판정 기준으로서 사용된다.
도 5 및 도 6에 도시되어 있는 플래그 셀의 페일의 허용 범위(예를 들면, A, 또는 B 영역)는 특정 크기에 국한되지 않고, 다양한 형태로 변경 및 변형 가능하다. 예를 들면, 제 2 마진(M2) 내에서 발생될 수 있는 플래그 셀들의 페일의 허용 개수는 7개로 한정되지 않고, 다양한 크기로 변경 가능하다. 그리고 제 1 마진(M1) 내에서 발생될 수 있는 플래그 셀들의 페일의 허용 개수 역시 12개로 한정되지 않고, 다양한 크기로 변경 가능하다. 하나의 페이지에 할당되는 플래그 셀들(MF)의 개수가 N이고, 제 2 마진(M2) 내에서 발생될 수 있는 플래그 셀들의 페일의 허용 개수가 a이고, 제 1 마진(M1) 내에서 발생될 수 있는 플래그 셀들의 페일의 허용 개수가 b라 하자. 이 경우, 하나의 페이지에 할당되는 플래그 셀들(MF)의 개수 N 은, N > a+b인 특성을 갖는다.
도 7은 도 1에 도시된 본 발명의 플래시 메모리 장치(100)를 포함하는 메모리 시스템(1000)의 개략적인 구성을 보여주는 도면이다.
도 7을 참조하면, 본 발명에 따른 메모리 시스템(1000)은 플래시 메모리 장치(100)와 메모리 컨트롤러(200)를 포함한다. 플래시 메모리 장치(100)의 구성은 도 1에 도시된 것과 실질적으로 동일하다. 그러므로, 그것에 대한 중복되는 설명은 이하 생략된다. 메모리 컨트롤러(200)는 플래시 메모리 장치(100)를 제어하도록 구성된다. 플래시 메모리 장치(100)는 앞서 설명된 플래그 셀들(MF)의 분석 방법에 따라서 멀티 레벨 메모리 장치의 MLC 프로그램의 여부를 확인하고, 확인된 결과에 따라 멀티 레벨 메모리 장치의 프로그램 동작을 제어한다. 멀티 레벨 메모리 장치의 MLC 프로그램의 여부는 각각의 페이지에 할당된 플래그 셀(FM)의 프로그램 여부에 의해 판정된다. MLC 프로그램의 여부에 대한 판단의 정확도를 높이기 위해, 본 발명에서는 하나의 페이지에 복수의 플래그 셀들(MF)을 할당한다.
본 발명의 플래그 셀들(MF)의 분석 방법에서는, 복수의 플래그 셀들(MF)에 대한 최종 프로그램 여부를 판정하는 기준(예를 들면, 플래그 셀들의 페일의 허용 개수)을 비대칭적으로 적용한다. 예를 들면, 본 발명에서는 플래그 셀들(MF)의 비대칭적인 읽기 마진(M1, M2)의 특성을 고려하여 읽기 마진이 큰 쪽(예를 들면, M1)에는 허용되는 페일의 개수를 많이 설정하고, 읽기 마진이 작은 쪽(예를 들면, M2)에는 허용되는 페일의 개수를 적게 설정한다. 각각의 마진(M1, M2)에 대해 설정된 페일의 허용 범위는, 결국 정상적으로 프로그램된(또는 정상적으로 프로그램되지 않은) 플래그 셀들(MF)의 개수를 정확히 카운트하는데 사용된다. 카운트된 결과는 선택된 페이지에 할당된 플래그 셀들(MF)의 프로그램 여부를 종합적으로 판정하는데 사용된다. 그 결과, 본 발명에 따른 플래그 셀들(MF)의 분석 방법에 따르면, 플래그 셀들(MF)의 비대칭적인 읽기 마진(M1, M2) 특성이 복수의 플래그 셀들(MF)의 프로그램 여부를 최종적으로 판별하는데 효과적으로 반영될 수 있게 된다. 판별된 복수의 플래그 셀들(MF)의 프로그램 여부에 따라서, 선택된 페이지의 MSB 프로그램 여부가 판별되고, 플래시 메모리 장치(100)에 대한 프로그램 동작이 제어된다.
도 7에 도시된 플래시 메모리 시스템(1000)은 메모리 카드 및/또는 메모리 카드 시스템을 구성할 수 있다. 이러한 경우, 메모리 컨트롤러(200)는 USB, MMC, PCI-E, ATA(Advanced Technology Attachment), Serial-ATA, Parallel-ATA, SCSI, ESDI, 그리고 IDE(Integrated Drive Electronics) 등과 같은 다양한 인터페이스 프로토콜들 중 하나를 통해 외부(예를 들면, 호스트)와 통신하도록 구성될 수 있다. 잘 알려져 있는 바와 같이, 플래시 메모리 장치는 전력이 차단되어도 저장된 데이터를 유지할 수 있는 불 휘발성 메모리 장치이다. 이와 같은 특성 때문에 플래시 메모리장치는 데이터 스토리지 뿐만 아니라 전원 공급에 상관없이 보존되어야 할 내용을 기억시키는 코드 스토리지로서 보다 널리 사용된다. 이와 같은 특성을 갖는 플래시 메모리 장치는 셀룰러 폰, PDA 디지털 카메라, 포터블 게임 콘솔, 그리고 MP3P와 같은 모바일 장치들에 사용될 수 있고, HDTV, DVD, 라우터, 그리고 GPS와 같은 홈 어플리케이션에도 사용될 수 있다.
도 8은 본 발명에 따른 플래시 메모리 장치(100)를 포함하는 컴퓨팅 시스 템(2000)의 개략적인 구성을 보여주는 도면이다.
도 8을 참조하면, 본 발명에 따른 컴퓨팅 시스템(2000)은 버스(400)에 전기적으로 연결된 플래시 메모리 장치(100), 메모리 컨트롤러(200), 베이스밴드 칩셋(baseband chipset)과 같은 모뎀(300), 마이크로프로세서(500), 그리고 사용자 인터페이스(600)를 포함한다. 도 8에 도시된 플래시 메모리 장치(100)는 도 1에 도시된 것과 실질적으로 동일하게 구성된다. 플래시 메모리 장치(100)에는 마이크로프로세서(500)에 의해서 처리된/처리될 N-비트 데이터(N은 1 또는 그 보다 큰 정수)가 메모리 컨트롤러(200)를 통해 저장된다.
플래시 메모리 장치(100)가 셀 당 N-비트 데이터를 저장하는 멀티-비트 플래시 메모리 장치인 경우, 앞서 설명된 플래그 셀들의 분석 방법에 따라서 선택된 페이지의 MSB 프로그램 여부가 판별된다. 그리고, 판별된 MSB 프로그램 결과에 따라서 선택된 메모리 셀의 각 비트의 프로그램 동작이 제어된다. 프로그램 및 읽기에 사용될 프로그램 전압 및 읽기 전압은 메모리 컨트롤러(200) 또는 플래시 메모리 장치(100) 내부의 제어 회로(150)의 제어에 의해 선택된다. 프로그램 및 읽기에 사용될 프로그램 전압 및 읽기 전압은, 선택된 메모리 셀에서 수행된 각 비트의 프로그램 수행 여부를 고려하여 메모리 컨트롤러(200) 또는 내부의 제어 회로(150)에 의해서 결정된다.
본 발명에 따른 컴퓨팅 시스템이 모바일 장치인 경우, 컴퓨팅 시스템의 동작 전압을 공급하기 위한 배터리(700)가 추가적으로 제공된다. 비록 도면에는 도시되지 않았지만, 본 발명에 따른 컴퓨팅 시스템에는 응용 칩셋(application chipset), 카메라 이미지 프로세서(Camera Image Processor: CIS), 모바일 디램, 등이 더 제공될 수 있음은 이 분야의 통상적인 지식을 습득한 자들에게 자명하다. 메모리 컨트롤러(200)와 플래시 메모리 장치(100)는, 예를 들면, 데이터를 저장하는 데 불 휘발성 메모리를 사용하는 SSD(Solid State Drive/Disk)를 구성할 수 있다.
본 발명에 따른 플래시 메모리 장치 그리고/또는 메모리 컨트롤러는 다양한 형태들의 패키지를 이용하여 실장될 수 있다. 예를 들면, 본 발명에 따른 플래시 메모리 장치 그리고/또는 메모리 컨트롤러는 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은 도 1에 도시된 셀 어레이의 구성 예를 보여주는 도면이다.
도 4는 도 2에 도시된 플래시 메모리 셀의 프로그램 상태 분포를 보여주는 도면이다.
도 5 및 도 6은 플래그 셀(MF)의 비대칭적인 읽기마진을 고려한 본 발명의 플래그 셀들(MF)의 분석 방법을 설명하기 위한 도면이다.
도 7은 도 1에 도시된 본 발명의 플래시 메모리 장치를 포함하는 메모리 시스템의 개략적인 구성을 보여주는 도면이다.
도 8은 본 발명에 따른 플래시 메모리 장치를 포함하는 컴퓨팅 시스템의 개략적인 구성을 보여주는 도면이다.
*도면의 주요 부분에 대한 부호의 설명*
100 : 플래시 메모리 110 : 셀 어레이
120 : 디코딩 회로 130 : 기입 독출회로
150 : 제어 회로 160 : 전압 발생 회로
200 : 메모리 컨트롤러 1000 : 메모리 시스템
2000 : 컴퓨팅 시스템

Claims (20)

  1. 복수의 메모리 셀들과 복수의 플래그 셀들을 구비한 메모리 셀 어레이; 그리고
    제어 회로를 포함하되,
    상기 복수의 메모리 셀들은 제 1 워드라인에 연결되어 최상위 비트(MSB; most significant bit) 페이지를 포함하는 페이지 데이터를 저장하고,
    상기 복수의 플래그 셀들은 상기 제 1 워드라인에 연결되고, 상기 페이지 데이터에 할당되고,
    상기 제어 회로는 상기 플래그 셀들의 읽기 마진에 대응되는 판정 기준을 적용하여 상기 플래그 셀들 중 프로그램된 플래그 셀들의 개수를 판별하고, 상기 판별된 플래그 셀들의 개수가 기준 개수 이상인지에 따라 상기 MSB 페이지의 프로그램 여부를 판정하고, 상기 판정 결과에 응답해서 상기 메모리 셀들의 프로그램 동작을 제어하고,
    상기 기준 개수는 상기 플래그 셀들의 개수보다 작고,
    상기 플래그 셀들의 상기 읽기 마진은 읽기 전압을 기준으로 비대칭적인 크기를 갖는 멀티-비트 플래시 메모리 장치.
  2. 제 1 항에 있어서,
    상기 복수의 메모리 셀들은 페이지 단위로 프로그램되고, 상기 각각의 페이지에는 상기 플래그 셀들이 복수 개 할당되는 멀티-비트 플래시 메모리 장치.
  3. 제 2 항에 있어서,
    상기 복수의 플래그 셀들은 대응되는 상기 페이지의 상기 메모리 셀들에서 적어도 하나 이상의 상위 비트가 프로그램되는 동안 프로그램되는 멀티-비트 플래시 메모리 장치.
  4. 삭제
  5. 제 1 항에 있어서,
    상기 각각의 플래그 셀은 제 1 데이터 상태와 제 2 데이터 상태 중 어느 하나로 프로그램되는 멀티-비트 플래시 메모리 장치.
  6. 제 5 항에 있어서,
    상기 플래그 셀들은, 상기 제 1 데이터 상태와 읽기 전압 사이에 제 1 마진을, 상기 제 2 데이터 상태와 상기 읽기 전압 사이에 상기 제 1 마진과 다른 크기의 제 2 마진을 갖는 멀티-비트 플래시 메모리 장치.
  7. 제 6 항에 있어서,
    상기 제어회로는 상기 제 1 마진에는 a개의 프로그램 페일을 허용하고, 상기 제 2 마진에는 b 개의 상기 프로그램 페일을 허용하며, 상기 a,b는 자연수인 멀티-비트 플래시 메모리 장치.
  8. 제 7 항에 있어서,
    상기 제 2 마진에서 상기 b개 이하의 프로그램 페일이 발생된 경우, 상기 제어회로는 상기 복수의 플래그 셀들이 상기 제 1 데이터 상태로 프로그램된 것으로 판정하고,
    상기 제 1 마진에서 상기 a개 이하의 프로그램 페일이 발생된 경우, 상기 제어회로는 상기 복수의 플래그 셀들이 상기 제 2 데이터 상태로 프로그램된 것으로 판정하는 멀티-비트 플래시 메모리 장치.
  9. 삭제
  10. 제 7 항에 있어서,
    상기 제 1 마진이 상기 제 2 마진 보다 큰 경우, a > b 인 멀티-비트 플래시 메모리 장치.
  11. 제 7 항에 있어서,
    하나의 페이지에 할당된 상기 플래그 셀들의 개수가 N개인 경우, N > a + b이고, 상기 N은 자연수인 멀티-비트 플래시 메모리 장치.
  12. 삭제
  13. 삭제
  14. 제 1 워드 라인과 연결된 복수 개의 플래그 셀들에 기록된 복수 개의 플래그 정보들을 분석하는 단계; 그리고
    상기 분석 결과에 응답해서 상기 제 1 워드라인과 연결된 복수 개의 메모리 셀들의 프로그램 동작을 제어하는 단계를 포함하며,
    상기 분석 단계에서는, 상기 플래그 셀들의 읽기 마진에 대응되는 판정 기준을 적용하여 상기 플래그 셀들 중 프로그램된 플래그 셀들의 개수가 기준 개수를 초과하였는지 판별하는 단계를 포함하고,
    상기 기준 개수는 상기 플래그 셀들의 개수보다 작은 멀티-비트 플래시 메모리 장치의 플래그 셀 분석 방법.
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
KR1020080056897A 2008-06-17 2008-06-17 멀티-비트 플래시 메모리 장치 및 그것의 플래그 셀 분석방법 KR101456592B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020080056897A KR101456592B1 (ko) 2008-06-17 2008-06-17 멀티-비트 플래시 메모리 장치 및 그것의 플래그 셀 분석방법
US12/467,529 US8218371B2 (en) 2008-06-17 2009-05-18 Multi-bit flash memory device and method of analyzing flag cells of the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080056897A KR101456592B1 (ko) 2008-06-17 2008-06-17 멀티-비트 플래시 메모리 장치 및 그것의 플래그 셀 분석방법

Publications (2)

Publication Number Publication Date
KR20090131105A KR20090131105A (ko) 2009-12-28
KR101456592B1 true KR101456592B1 (ko) 2014-10-31

Family

ID=41415821

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080056897A KR101456592B1 (ko) 2008-06-17 2008-06-17 멀티-비트 플래시 메모리 장치 및 그것의 플래그 셀 분석방법

Country Status (2)

Country Link
US (1) US8218371B2 (ko)
KR (1) KR101456592B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9524791B1 (en) 2015-09-04 2016-12-20 SK Hynix Inc. Data storage device and operating method thereof

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101716716B1 (ko) 2010-10-28 2017-03-15 삼성전자주식회사 플래그 셀들을 갖는 플래시 메모리 장치 및 그것의 프로그램 동작 방법
KR20120066347A (ko) * 2010-12-14 2012-06-22 삼성전자주식회사 비휘발성 메모리 장치 및 그 구동 방법
JP2012128644A (ja) * 2010-12-15 2012-07-05 Toshiba Corp メモリシステム
US8886911B2 (en) 2011-05-31 2014-11-11 Micron Technology, Inc. Dynamic memory cache size adjustment in a memory device
KR101878455B1 (ko) 2011-11-18 2018-07-16 삼성전자주식회사 비휘발성 메모리 장치의 데이터 독출 방법 및 구동 방법
KR102116983B1 (ko) 2013-08-14 2020-05-29 삼성전자 주식회사 메모리 장치 및 메모리 시스템의 동작 방법.

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080089123A1 (en) * 2006-09-06 2008-04-17 Dong-Hyuk Chae Method for Programming a Multi-Level Non-Volatile Memory Device

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1055687A (ja) 1996-08-09 1998-02-24 Sony Corp 不揮発性半導体記憶装置
US7272041B2 (en) * 2005-06-30 2007-09-18 Intel Corporation Memory array with pseudo single bit memory cell and method
KR100782329B1 (ko) 2006-10-02 2007-12-06 삼성전자주식회사 메모리 셀 어레이에 분산 배열된 플래그 셀 어레이를구비하는 비휘발성 메모리 장치 및 상기 메모리 장치의구동 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080089123A1 (en) * 2006-09-06 2008-04-17 Dong-Hyuk Chae Method for Programming a Multi-Level Non-Volatile Memory Device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9524791B1 (en) 2015-09-04 2016-12-20 SK Hynix Inc. Data storage device and operating method thereof

Also Published As

Publication number Publication date
US8218371B2 (en) 2012-07-10
US20090313423A1 (en) 2009-12-17
KR20090131105A (ko) 2009-12-28

Similar Documents

Publication Publication Date Title
KR101391881B1 (ko) 멀티-비트 플래시 메모리 장치 및 그것의 프로그램 및 읽기방법
US8446766B2 (en) Nonvolatile memory device and related programming method
US9406394B2 (en) Flash memory device using adaptive program verification scheme and related method of operation
US9087608B2 (en) Method of programming non-volatile memory device and non-volatile memory device using the same
KR101633018B1 (ko) 플래시 메모리 장치 및 그것의 프로그램 방법
KR101401558B1 (ko) 플래시 메모리 장치, 그것의 프로그램 및 소거 방법들,그리고 그것을 포함하는 메모리 시스템 및 컴퓨터 시스템
KR100771883B1 (ko) 멀티-레벨 불휘발성 메모리 장치 및 프로그램 방법
KR102106866B1 (ko) 멀티레벨 불휘발성 메모리 장치 및 프로그램 방법
US10573378B2 (en) Methods of programming memory devices
KR101308014B1 (ko) 플래시 메모리 장치 및 그것의 프로그램 리커버리 방법
KR20100010355A (ko) 플래시 메모리 장치 및 그것의 프로그램 및 소거 방법
KR20150091665A (ko) 불휘발성 메모리 장치 및 그것의 프로그램 방법
KR101456592B1 (ko) 멀티-비트 플래시 메모리 장치 및 그것의 플래그 셀 분석방법
KR101391361B1 (ko) 플래시 메모리 장치 및 그것의 소거 방법
KR101642930B1 (ko) 더미 셀을 갖는 불휘발성 메모리 장치 및 그것의 프로그램 방법
KR20200071955A (ko) 비휘발성 메모리 장치의 동작 방법, 스토리지 장치의 동작 방법 및 스토리지 장치
KR101642935B1 (ko) 더미 셀을 갖는 불휘발성 메모리 장치 및 그것의 바이어스 방법

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: 20180927

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190930

Year of fee payment: 6