KR20090083204A - 메모리 장치 및 메모리 데이터 읽기 방법 - Google Patents

메모리 장치 및 메모리 데이터 읽기 방법 Download PDF

Info

Publication number
KR20090083204A
KR20090083204A KR1020080009218A KR20080009218A KR20090083204A KR 20090083204 A KR20090083204 A KR 20090083204A KR 1020080009218 A KR1020080009218 A KR 1020080009218A KR 20080009218 A KR20080009218 A KR 20080009218A KR 20090083204 A KR20090083204 A KR 20090083204A
Authority
KR
South Korea
Prior art keywords
group
reference voltage
bit cells
bit
memory
Prior art date
Application number
KR1020080009218A
Other languages
English (en)
Other versions
KR101437103B1 (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 KR1020080009218A priority Critical patent/KR101437103B1/ko
Priority to US12/219,264 priority patent/US7764543B2/en
Publication of KR20090083204A publication Critical patent/KR20090083204A/ko
Application granted granted Critical
Publication of KR101437103B1 publication Critical patent/KR101437103B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/14Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
    • 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
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5642Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • 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/563Multilevel memory reading aspects
    • G11C2211/5634Reference cells

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Power Engineering (AREA)
  • Read Only Memory (AREA)

Abstract

메모리 장치 및 메모리 데이터 읽기 방법이 제공된다. 본 발명의 메모리 장치는 멀티 비트 셀 어레이, 및 상기 멀티 비트 셀 어레이 내의 메모리 페이지의 멀티 비트 셀들을 제1 그룹 및 제2 그룹으로 분할하는 판정부 - 상기 제1 그룹은 문턱 전압이 기준 전압보다 높은 멀티 비트 셀들로 이루어지고, 상기 제2 그룹은 문턱 전압이 상기 기준 전압보다 낮은 멀티 비트 셀들로 이루어짐 - 를 포함하고, 상기 판정부는 상기 기준 전압을 변화시켜 가며 상기 제1 그룹 및 상기 제2 그룹을 업데이트하며, 이를 통해 데이터를 읽는 시간을 단축하고 하드웨어 복잡도를 줄일 수 있다.
멀티 비트 셀, 멀티 레벨 셀, 메모리 읽기, 문턱 전압

Description

메모리 장치 및 메모리 데이터 읽기 방법 {MEMORY DEVICE AND MEMORY DATA READ METHOD}
본 발명은 메모리 장치의 데이터를 읽는 방법에 관한 것으로, 보다 상세하게는 멀티 레벨 셀(Multi-level Cell, MLC) 또는 멀티 비트 셀(Multi-Bit Cell, MBC) 메모리 장치의 데이터를 읽는 장치 및 방법에 관한 것이다.
싱글 레벨 셀(SLC: single-level cell) 메모리는 하나의 메모리 셀에 1비트의 데이터를 저장하는 메모리이다. 싱글 레벨 셀 메모리는 싱글 비트 셀(SBC: single-bit cell) 메모리로도 불린다. 싱글 레벨 셀 메모리에서는 1비트의 데이터는 메모리 셀에 프로그램된 문턱 전압(threshold voltage)에 의하여 구분되는 2개의 산포(distribution)에 포함되는 전압으로 저장되고, 판독된다. 싱글 레벨 셀 메모리들 간의 미세한 전기적 특성의 차이로 인해 프로그램된 문턱 전압은 일정한 범위의 산포를 가지게 된다. 예를 들어, 메모리 셀로부터 판독된 전압이 0.5-1.5 볼트인 경우에는 상기 메모리 셀에 저장된 데이터는 논리 "1"이고, 메모리 셀로부터 판독된 전압이 2.5-3.5 볼트인 경우에는 상기 메모리 셀에 저장된 데이터는 논리 "0"으로 해석된다. 메모리 셀에 저장된 데이터는 판독 동작 시 셀 전류/전압의 차이에 의하여 구분된다.
한편 메모리의 고집적화 요구에 응답하여 하나의 메모리 셀에 2비트 이상의 데이터를 저장할 수 있는 멀티 레벨 셀(MLC: multi-level cell) 메모리가 제안되었다. 멀티 레벨 셀 메모리는 멀티 비트 셀(MBC: multi-bit cell) 메모리로도 불린다. 그러나, 하나의 메모리 셀에 저장하는 비트의 수가 증가할수록 신뢰성은 떨어지고, 판독 실패율(read failure rate)은 증가하게 된다. 하나의 메모리 셀에 m개의 비트를 저장하려면, 2m개의 산포(distribution)를 형성하여야 한다. 그러나, 메모리의 전압 윈도우(voltage window)는 제한되어 있기 때문에, m이 증가함에 따라 제한된 전압 윈도우 내에 존재하는 산포들의 개수는 2m으로 증가한다. 따라서 인접한 산포들 간의 문턱 전압(threshold voltage)의 간격은 줄어들 수 있고, 심한 경우 산포들이 오버랩될 수 있다. 산포들이 오버랩되는 경우 판독 실패율이 증가할 수 있다. 이러한 이유로 종래기술에 따르면, 멀티 레벨 셀(MLC: multi-level cell) 메모리를 이용한 저장 밀도의 향상이 용이하지 않았다.
멀티 레벨 셀 메모리의 이용이 최근의 추세로 확산되고 있는 가운데, 데이터를 저장하고 읽는 과정에서 발생하는 에러를 검출하고, 검출된 에러를 정정하는 에러 정정 코드 또는 에러 제어 코드(error correction codes or error control codes, ECC)의 이용이 활발해지고 있다.
본 발명의 일 실시예에 따르면 멀티 레벨 셀 메모리에 새로운 멀티 레벨(멀티 비트) 읽기 기법을 적용함으로써 데이터를 읽을 때의 오류를 줄일 수 있다.
본 발명의 일 실시예에 따르면 멀티 레벨 셀 메모리에 새로운 멀티 레벨(멀티 비트) 읽기 기법을 적용함으로써 하드웨어 복잡도를 줄일 수 있다.
본 발명의 일 실시예에 따르면 프리 차징(pre-charging) 횟수를 줄임으로써 데이터를 읽는 시간을 줄일 수 있다.
본 발명의 일 실시예에 따른 메모리 장치는 멀티 비트 셀 어레이 및 상기 멀티 비트 셀 어레이 내의 메모리 페이지의 멀티 비트 셀들을 제1 그룹 및 제2 그룹으로 분할하는 판정부 - 상기 제1 그룹은 문턱 전압이 기준 전압보다 높은 멀티 비트 셀들로 이루어지고, 상기 제2 그룹은 문턱 전압이 상기 기준 전압보다 낮은 멀티 비트 셀들로 이루어짐 - 를 포함할 수 있다. 이 때, 상기 판정부는 상기 기준 전압을 변화시켜 가며 상기 제1 그룹 및 상기 제2 그룹을 업데이트할 수 있다.
본 발명의 다른 실시예에 따른 메모리 장치는 멀티 비트 셀 어레이, 상기 멀티 비트 셀 어레이 내의 메모리 페이지에 대한 프로그램 동작 동안 프로그램되는 데이터를 저장하는 페이지 버퍼, 및 상기 멀티 비트 셀 어레이 내의 메모리 페이지에 대한 읽기 동작 동안 상기 메모리 페이지의 멀티 비트 셀들을 제1 그룹 및 제2 그룹으로 분할하는 판정부를 포함할 수 있다. 이 때, 상기 제1 그룹은 문턱 전압 이 기준 전압보다 높은 멀티 비트 셀들로 이루어지고, 상기 제2 그룹은 문턱 전압이 기준 전압보다 낮은 멀티 비트 셀들로 이루어질 수 있다. 이 때, 상기 페이지 버퍼는 상기 읽기 동작 동안 상기 메모리 페이지 내의 멀티 비트 셀들 각각이 상기 제1 그룹 또는 상기 제2 그룹 중 어느 그룹에 포함되는지를 나타내는 플래그(flag)를 저장할 수 있다. 이 때, 상기 판정부는 상기 읽기 동작 동안 상기 기준 전압을 변화시켜 가며 상기 제1 그룹 및 상기 제2 그룹을 업데이트할 수 있다.
본 발명의 또 다른 실시예에 따른 멀티 비트 셀 어레이 내의 메모리 페이지에 저장된 멀티 비트 데이터를 읽는 방법은 복수의 기준 전압 레벨들 중 어느 하나를 선택하고, 선택된 기준 전압 레벨을 기준 전압으로 설정하는 단계, 상기 메모리 페이지의 멀티 비트 셀들의 문턱 전압을 상기 기준 전압과 비교하는 단계, 상기 비교된 문턱 전압이 상기 기준 전압보다 높은 멀티 비트 셀들 각각에 대한 정보를 저장하는 단계, 상기 비교된 문턱 전압이 상기 기준 전압보다 낮은 멀티 비트 셀들 각각에 대한 정보를 저장하는 단계를 포함할 수 있다. 이 때, 상기 선택된 기준 전압 레벨을 기준 전압으로 설정하는 단계는 나머지 단계들이 수행된 후에 상기 선택된 기준 전압 레벨을 제외한 나머지 기준 전압 레벨들 중 어느 하나를 선택하고, 선택된 기준 전압을 새로운 기준 전압으로 설정할 수 있다. 이 때, 상기 멀티 비트 데이터를 읽는 방법은 선택되지 않은 기준 전압 레벨이 없을 때까지 상기 단계들을 반복할 수 있다.
이하에서, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 일 실시예에 따른 메모리 장치(100)를 도시하는 도면이다.
도 1을 참조하면, 메모리 장치(100)는 멀티 비트 셀 어레이(110) 및 판정부(120)를 포함한다.
멀티 비트 셀 어레이(110)는 복수의 멀티 비트 셀들을 포함한다. 하나의 멀티 비트 셀은 멀티 비트 데이터를 저장할 수 있다. 메모리 장치(100)가 하나의 멀티 비트 셀에 데이터를 저장하는 과정은 '프로그래밍'이라고도 불리며, F-N 터널링 (Fowler-Nordheim tunneling, F-N tunneling) 등의 메커니즘을 이용하여 수행될 수 있다.
프로그래밍 과정은 멀티 비트 셀의 문턱 전압을 변화시킨다. 하나의 멀티 비트 셀이 최대 m비트의 데이터를 저장할 수 있다면, 하나의 멀티 비트 셀에 형성될 수 있는 문턱 전압은 2m 개 중 하나이다.
프로그래밍 과정은 데이터를 읽는 과정에 비해 긴 시간을 필요로 하므로 메모리 장치(100)는 물리적으로 인접한 다수의 멀티 비트 셀들을 동시에 프로그래밍함으로써 멀티 비트 셀 어레이 전체에 대한 프로그래밍 시간을 단축할 수 있다. 이 때, 동시에 프로그래밍되는 물리적인 멀티 비트 셀들의 집합을 메모리 페이 지(111)라 하며, 메모리 페이지(111)는 하나의 워드 라인(word line)에 연결된 멀티 비트 셀들의 집합일 수 있다.
메모리 페이지(111)가 p개의 멀티 비트 셀들로 이루어지고 하나의 멀티 비트 셀이 m비트의 데이터를 저장할 수 있다면, 메모리 페이지(111)는 (p x m) 비트의 데이터를 저장할 수 있다.
하나의 멀티 비트 셀에 저장되는 m비트의 데이터는 최상위 비트(most significant bit, MSB)로부터 최하위 비트(least significant bit, LSB)로 정렬될 수 있다. 메모리 장치(100)는 하나의 멀티 비트 셀에 MSB를 저장한 후 MSB보다 하위 비트들을 순차적으로 저장할 수 있다. 이 때, LSB가 상기 멀티 비트 셀에 마지막으로 저장될 수 있다.
실시예에 따라서는, 메모리 장치(100)는 하나의 멀티 비트 셀에 LSB를 저장한 후 LSB보다 상위 비트들을 순차적으로 저장할 수 있다. 이 때, MSB가 상기 멀티 비트 셀에 마지막으로 저장될 수 있다.
메모리 장치(100)는 메모리 페이지(111) 내의 멀티 비트 셀들 각각에 상기 멀티 비트 셀들 각각의 MSB들을 저장한 후 MSB보다 하위 비트들을 순차적으로 저장할 수 있다. 메모리 페이지(111)의 멀티 비트 셀들 각각에 저장되는 MSB들의 집합을 하나의 데이터 페이지라 할 수 있다. 메모리 페이지(111)가 p개의 멀티 비트 셀들을 포함하는 경우 데이터 페이지는 p 비트일 수 있다.
메모리 장치(100)는 메모리 페이지(111) 내의 멀티 비트 셀들 각각에 상기 멀티 비트 셀들 각각의 LSB들을 마지막으로 저장할 수 있다. 메모리 페이지(111) 내의 멀티 비트 셀들 각각에 저장되는 LSB들의 집합을 또 하나의 데이터 페이지라 할 수 있다.
메모리 페이지(111) 내의 멀티 비트 셀들 각각이 m비트의 데이터를 저장할 수 있으면, m개의 데이터 페이지들이 메모리 페이지(111)에 저장될 수 있다.
메모리 장치(100)가 하나의 페이지에 m개의 데이터 페이지를 저장하기 위해서는, m개의 페이지 프로그래밍 동작(page programming operation)들이 필요하다. 페이지 프로그래밍 동작들 각각은 하나의 데이터 페이지를 하나의 페이지에 저장하는 과정이다.
페이지 버퍼(도시되지 않음)는 페이지 프로그래밍 동작 동안 m개의 데이터 페이지를 저장하는 메모리이다. 페이지 버퍼는 페이지 프로그래밍 동작이 실행되는 동안 데이터를 저장하고 있으면 충분하므로, 페이지 버퍼는 비휘발성(non-volatile) 메모리일 필요는 없다. 페이지 버퍼는 일반적으로 스태틱 램(Static RAM) 또는 그 유사한 메모리로 구성될 수 있다. 페이지 버퍼는 적어도 하나 이상의 데이터 페이지를 저장할 수 있고, 최대 m개의 데이터 페이지들을 저장할 수 있다.
메모리 장치(100)가 제1 페이지 프로그래밍 동작에 의해 제1 데이터 페이지를 메모리 페이지(111)에 저장하면, 메모리 페이지(111)의 멀티 비트 셀들 각각의 문턱 전압은 2개의 문턱 전압 상태들을 형성할 수 있다.
예를 들어, 메모리 장치(100)가 데이터 "1"이 저장되는 멀티 비트 셀의 문턱 전압을 1V로 변화시키고, 데이터 "0"이 저장되는 멀티 비트 셀의 문턱 전압을 2.5V 로 변화시키는 경우에, 실제로는 멀티 비트 셀들의 전기적 특성이 미세하게 다르므로, 데이터 "1"이 저장된 멀티 비트 셀들의 문턱 전압은 0.7V ~ 1.3V 의 범위의 산포(distribution)를 가질 수 있고, 데이터 "0"이 저장된 멀티 비트 셀들의 문턱 전압은 2.2V ~ 2.8V의 범위의 산포를 가질 수 있다.
본 명세서에서는 하나의 데이터를 저장하는 멀티 비트 셀들이 가지는 일정한 범위의 문턱 전압의 산포를 산포 상태(distribution state) 또는 문턱 전압 상태(threshold voltage state)라고 명명하기로 한다. 산포 상태 또는 문턱 전압 상태는 설명을 단순히 하기 위한 용어로서 이로 인해 본 발명의 권리 범위가 제한적으로 해석되어서는 안 될 것이다.
메모리 장치(100)가 제1 페이지 프로그래밍 동작을 수행한 후 제2 페이지 프로그래밍 동작을 수행하여 제1 데이터 페이지 및 제2 데이터 페이지를 메모리 페이지(111)에 저장하면, 메모리 페이지(111)의 멀티 비트 셀들의 문턱 전압은 4개의 문턱 전압 상태들을 형성할 수 있다.
메모리 페이지(111) 내의 멀티 비트 셀들이 m비트의 데이터를 저장하는 경우에 메모리 페이지(111) 내의 멀티 비트 셀들의 문턱 전압은 2m개의 문턱 전압 상태들을 형성할 수 있다. 문턱 전압 상태들 간의 간격이 작을수록 데이터를 잘못 읽을 가능성이 높아지므로 마지막 페이지 프로그래밍 동작 동안 저장되는 데이터 페이지(예를 들어, LSB에 대응하는 데이터 페이지)는 먼저 저장된 데이터 페이지들보다 많은 오류를 포함할 수 있다.
판정부(120)는 메모리 페이지(111) 내의 멀티 비트 셀들을 문턱 전압에 따라 제1 그룹 및 제2 그룹으로 분할한다. 판정부(120)는 기준 전압보다 높은 문턱 전압을 가지는 멀티 비트 셀들을 제1 그룹으로 선택하고, 기준 전압보다 낮은 문턱 전압을 가지는 멀티 비트 셀들을 제2 그룹으로 선택한다. 판정부(120)는 기준 전압을 변화시켜 가며 제1 그룹 및 제2 그룹을 업데이트한다.
예를 들어 판정부(120)는 제1 시간 구간 동안 제1 전압 레벨을 기준 전압으로 설정할 수 있다. 판정부(120)는 제1 시간 구간 동안 제1 전압 레벨보다 높은 문턱 전압을 가지는 멀티 비트 셀들을 제1 그룹으로 선택하고, 제1 전압 레벨보다 낮은 문턱 전압을 가지는 멀티 비트 셀들을 제2 그룹으로 선택할 수 있다. 판정부(120)는 제2 시간 구간 동안 제2 전압 레벨을 기준 전압으로 설정할 수 있다. 판정부(120)는 제2 시간 구간 동안 제2 전압 레벨보다 높은 문턱 전압을 가지는 멀티 비트 셀들을 제1 그룹으로 선택하고, 제2 전압 레벨보다 낮은 문턱 전압을 가지는 멀티 비트 셀들을 제2 그룹으로 선택할 수 있다. 메모리 장치(100)는 제1 시간 구간의 제1 그룹 및 제2 그룹에 대한 정보를 저장하고, 제2 시간 구간의 제1 그룹 및 제2 그룹에 대한 정보를 저장할 수 있다. 메모리 페이지(111) 내의 임의의 (any) 멀티 비트 셀은 제1 시간 구간에는 제1 그룹에 포함되고 제2 시간 구간에는 제2 그룹에 포함될 수 있다. 판정부(120)는 상기 멀티 비트 셀이 포함되는 그룹이 변화하는 히스토리에 기초하여 상기 멀티 비트 셀에 저장된 데이터를 식별할 수 있다.
도 3은 도 1의 판정부(120)의 동작을 도시하는 도면이다.
도 3을 참조하면, 가로축은 멀티 비트 셀들의 문턱 전압을 나타내고, 세로축은 해당 문턱 전압을 가지는 멀티 비트 셀들의 개수를 나타낸다.
메모리 페이지(111)의 멀티 비트 셀들은 4개의 문턱 전압 상태들(310 내지 340)을 형성한다.
판정부(120)는 전압 레벨(370)을 제1 시간 구간 동안 기준 전압으로 설정할 수 있다. 판정부(120)는 전압 레벨(370)보다 높은 문턱 전압을 가지는 문턱 전압을 가지는 멀티 비트 셀들을 제1 그룹으로 선택할 수 있다. 판정부(120)에 의해 제1 시간 구간 동안 제1 그룹으로 선택되는 멀티 비트 셀들은 문턱 전압 상태(340)를 가지는 멀티 비트 셀들이다. 판정부(120)는 전압 레벨(370)보다 낮은 문턱 전압을 가지는 멀티 비트 셀들을 제2 그룹으로 선택할 수 있다. 판정부(120)에 의해 제1 시간 구간 동안 제2 그룹으로 선택되는 멀티 비트 셀들은 문턱 전압 상태(310), 문턱 전압 상태(320) 및 문턱 전압 상태(330)를 가지는 멀티 비트 셀들이다.
메모리 장치(100)는 제1 시간 구간 동안 메모리 페이지(111)의 멀티 비트 셀들 각각이 제1 그룹에 포함되었는지 제2 그룹에 포함되었는지에 대한 정보를 저장할 수 있다. 메모리 장치(100)는 상기 정보를 페이지 버퍼에 저장할 수 있다. 이 때, 페이지 버퍼는 프로그래밍 동작 동안에는 프로그램되는 데이터를 저장하고, 읽기 동작 동안에는 판정부(120)의 동작에 의해 멀티 비트 셀들 각각이 대응하는 그룹 정보(멀티 비트 셀들 각각이 제1 그룹에 포함되었는지 제2 그룹에 포함되었는지)를 저장할 수 있다. 메모리 장치(100)는 제1 시간 구간 동안 페이지 버퍼에 저 장된 멀티 비트 셀들 각각에 대응하는 그룹 정보를 컨트롤러(도시되지 않음)로 전달할 수 있다.
메모리 장치(100)의 실시예에 따라서는, 메모리 장치(100)는 제1 시간 구간 동안 멀티 비트 셀들 각각이 대응하는 그룹 정보를 컨트롤러에 전달할 수 있다. 이 때, 컨트롤러는 전달된 그룹 정보를 컨트롤러 내부의 메모리(도시되지 않음)에 저장할 수 있다.
판정부(120)는 전압 레벨(360)을 제2 시간 구간 동안 기준 전압으로 설정할 수 있다. 판정부(120)는 전압 레벨(360)보다 높은 문턱 전압을 가지는 문턱 전압을 가지는 멀티 비트 셀들을 제2 시간 구간의 제1 그룹으로 선택할 수 있다. 판정부(120)에 의해 제2 시간 구간의 제1 그룹으로 선택되는 멀티 비트 셀들은 문턱 전압 상태(330) 및 문턱 전압 상태(340)를 가지는 멀티 비트 셀들이다. 판정부(120)는 전압 레벨(360)보다 낮은 문턱 전압을 가지는 멀티 비트 셀들을 제2 시간 구간의 제2 그룹으로 선택할 수 있다. 판정부(120)에 의해 제2 시간 구간의 제2 그룹으로 선택되는 멀티 비트 셀들은 문턱 전압 상태(310), 및 문턱 전압 상태(320)를 가지는 멀티 비트 셀들이다. 판정부(120)는 제2 시간 구간 동안에 변화된 기준 전압 - 전압 레벨(360) - 을 이용하여 제1 그룹 및 제2 그룹을 업데이트할 수 있다. 메모리 장치(100)는 제2 시간 구간 동안 멀티 비트 셀들 각각에 대응하는 업데이트된 그룹 정보를 페이지 버퍼에 저장할 수 있다. 메모리 장치(100)는 제2 시간 구간 동안 페이지 버퍼에 저장된 업데이트된 그룹 정보를 컨트롤러로 전달할 수 있다.
판정부(120)는 전압 레벨(350)을 제3 시간 구간 동안 기준 전압으로 설정할 수 있다. 판정부(120)는 전압 레벨(350)보다 높은 문턱 전압을 가지는 문턱 전압을 가지는 멀티 비트 셀들을 제3 시간 구간의 제1 그룹으로 선택할 수 있다. 판정부(120)에 의해 제3 시간 구간의 제1 그룹으로 선택되는 멀티 비트 셀들은 문턱 전압 상태(320), 문턱 전압 상태(330) 및 문턱 전압 상태(340)를 가지는 멀티 비트 셀들이다. 판정부(120)는 전압 레벨(350)보다 낮은 문턱 전압을 가지는 멀티 비트 셀들을 제3 시간 구간의 제2 그룹으로 선택할 수 있다. 판정부(120)에 의해 제3 시간 구간의 제2 그룹으로 선택되는 멀티 비트 셀들은 문턱 전압 상태(310)를 가지는 멀티 비트 셀들이다. 판정부(120)는 제3 시간 구간 동안에 변화된 기준 전압 - 전압 레벨(350) - 을 이용하여 제1 그룹 및 제2 그룹을 업데이트할 수 있다. 메모리 장치(100)는 제3 시간 구간 동안 멀티 비트 셀들 각각에 대응하는 업데이트된 그룹 정보를 페이지 버퍼에 저장할 수 있다. 메모리 장치(100)는 제3 시간 구간 동안 페이지 버퍼에 저장된 업데이트된 그룹 정보를 컨트롤러로 전달할 수 있다.
메모리 장치(100)의 실시예에 따라서는, 메모리 장치(100)는 제1 시간 구간 동안 판정부(120)에 의해 판정된 멀티 비트 셀들 각각에 대응하는 그룹 정보를 컨트롤러로 전달하고, 제2 시간 구간 동안 멀티 비트 셀들 각각에 대응하는 업데이트된 그룹 정보를 컨트롤러로 전달하고, 제3 시간 구간 동안 멀티 비트 셀들 각각에 대응하는 업데이트된 그룹 정보를 컨트롤러로 전달할 수 있다. 이 때, 컨트롤러는 전달된 그룹 정보로부터 멀티 비트 셀들 각각에 저장된 데이터를 식별할 수 있다.
판정부(120)는 제1 시간 구간 동안 제1 그룹으로 선택된 멀티 비트 셀들에 저장된 데이터를 "01"로 식별할 수 있다. 제1 시간 구간의 제1 그룹은 문턱 전압 상태(340)를 가지는 멀티 비트 셀들이므로 문턱 전압 상태(340)가 데이터 "01"에 대응하는 것으로 간주될 수 있다.
판정부(120)는 제2 시간 구간 동안 제1 그룹으로 선택된 멀티 비트 셀들 중에서 제1 시간 구간 동안 제2 그룹으로 선택되었던 멀티 비트 셀들에 저장된 데이터를 "00"로 식별할 수 있다. 제2 시간 구간의 제1 그룹은 문턱 전압 상태(330) 및 문턱 전압 상태(340)를 가지는 멀티 비트 셀들이다. 문턱 전압 상태(340)는 데이터 "01"에 대응하므로 문턱 전압 상태(340)를 가지는 멀티 비트 셀들 - 제1 시간 구간의 제1 그룹 - 을 제외한 나머지 멀티 비트 셀들 - 문턱 전압 상태(330)를 가지는 - 에 저장된 데이터를 "00"로 식별할 수 있다. 문턱 전압 상태(330)는 데이터 "00"에 대응하는 것으로 간주될 수 있다.
판정부(120)는 제2 시간 구간 동안 제2 그룹으로 선택되었던 멀티 비트 셀들에 저장된 데이터를 제3 시간 구간의 업데이트된 그룹 정보에 따라서 식별할 수 있다. 제2 시간 구간의 제2 그룹은 문턱 전압 상태(310) 및 문턱 전압 상태(320)를 가지는 멀티 비트 셀들이고, 제3 시간 구간 동안 제1 그룹으로 선택된 멀티 비트 셀들은 문턱 전압 상태(320), 문턱 전압 상태(330), 문턱 전압 상태(340)를 가지는 멀티 비트 셀들이다. 문턱 전압 상태(330)는 데이터 "00", 문턱 전압 상태(340)는 데이터 "01"에 대응하므로, 판정부(120)는 제3 시간 구간의 제1 그룹 중 문턱 전압 상태(330) 및 문턱 전압 상태(340)를 제외한 나머지 멀티 비트 셀들에 저장된 데이터를 "10"로 식별할 수 있다. 판정부(120)는 제3 시간 구간의 제2 그룹의 멀티 비 트 셀들 - 문턱 전압 상태(310) - 에 저장된 데이터를 "11"로 식별할 수 있다.
이상에서 기술된 실시예의 판정부(120)는 제1 시간 구간 동안 기준 전압을 제1 기준 전압 레벨 - 전압 레벨(370) - 로 설정하고 제1 그룹 및 제2 그룹을 분할한 후, 제2 시간 구간 동안 제1 기준 전압 레벨보다 낮은 기준 전압 레벨인 전압 레벨(360)로 기준 전압을 재설정하고 제1 그룹 및 제2 그룹을 업데이트할 수 있다. 기준 전압 레벨들은 미리 정의된 복수의 전압 레벨들 - 도 3에서는 전압 레벨(350), 전압 레벨(360) 및 전압 레벨(370) - 일 수 있다.
메모리 장치(100)의 실시예에 따라서는, 판정부(120)는 제1 시간 구간 동안 기준 전압을 제1 기준 전압 레벨 - 전압 레벨(350) - 로 설정하고, 제1 그룹 및 제2 그룹을 분할할 수 있다. 판정부(120)는 제2 시간 구간 동안 제1 기준 전압 레벨보다 높은 전압 레벨인 전압 레벨(360)로 기준 전압을 재설정하고 제1 그룹 및 제2 그룹을 업데이트할 수 있다. 판정부(130)는 제3 시간 구간 동안 전압 레벨(360)보다 높은 전압 레벨(370)로 기준 전압을 재설정하고 제1 그룹 및 제2 그룹을 업데이트할 수 있다.
판정부(120)는 미리 정의된 기준 전압 레벨들 - 도 3에서는 전압 레벨(350), 전압 레벨(360) 및 전압 레벨(370) - 중에서 하나의 기준 전압 레벨을 선택할 수 있다. 기준 전압 레벨들은 메모리 장치(100)가 메모리 페이지(111)에 데이터를 프로그램하는 과정에서 이용된 검증 전압 레벨들과 관련되어 미리 정의될 수 있다.
메모리 페이지(111)의 멀티 비트 셀들은 프로그램되기 전에 소거(erase)될 수 있다. 소거된 멀티 비트 셀들은 초기화된 문턱 전압 상태를 가질 수 있다. 초 기화된 문턱 전압 상태는 문턱 전압 상태(310)와 유사하거나 동일하다고 가정할 수 있다.
메모리 장치(100)는 데이터 "11"이 저장될 멀티 비트 셀들에 대해서는 더 이상의 프로그램을 수행하지 않을 수 있다. 데이터 "11"은 초기화된 문턱 전압 상태(310)에 대응하기 때문이다.
메모리 장치(100)는 데이터 "10"이 저장될 멀티 비트 셀들에 대하여 제1 검증 전압 레벨(도시되지 않음)을 이용하여 데이터를 프로그램할 수 있다. 메모리 장치(100)는 복수의 단위 프로그래밍 동작(unit programming operation)들을 반복적으로 수행하여 멀티 비트 셀들의 문턱 전압을 상승시킬 수 있다. 메모리 장치(100)는 단위 프로그래밍 동작 각각이 종료될 때마다 데이터 "10"이 저장될 멀티 비트 셀들의 문턱 전압이 제1 검증 전압 레벨보다 높은지 여부를 판정할 수 있다. 메모리 장치(100)는 제1 검증 전압 레벨보다 높은 문턱 전압을 가지는 멀티 비트 셀들에 대해서는 더 이상의 단위 프로그래밍 동작을 수행하지 않을 수 있다. 메모리 장치(100)는 제1 검증 전압 레벨보다 낮은 문턱 전압을 가지는 멀티 비트 셀들에 대해서만 단위 프로그래밍 동작을 추가적으로 수행할 수 있다.
메모리 장치(100)가 제1 검증 전압 레벨을 이용하여 데이터 "10"에 대응하는 문턱 전압 상태(320)를 형성하기 위해서는 제1 검증 전압 레벨은 문턱 전압 상태(320)의 가장 낮은 경계를 형성하는 전압 레벨일 수 있다.
판정부(120)가 검증 전압으로 선택할 수 있는 기준 전압 레벨 중 하나인 전압 레벨(350)은 제1 검증 전압 레벨보다 낮고, 문턱 전압 상태(310)보다는 높은 전 압 레벨일 수 있다. 이러한 방법으로, 기준 전압 레벨들은 프로그램 과정에 이용되는 검증 전압 레벨들로부터 생성될 수 있다. 일반적으로 기준 전압 레벨들은 검증 전압 레벨들보다 일정 간격만큼 낮은 전압 레벨이다. 예를 들어 검증 전압 레벨들이 1.0V, 2.0V, 3.0V 이면, 기준 전압 레벨들은 0.7V, 1.7V, 2.7V 일 수 있다.
판정부(120)는 메모리 페이지(111) 내의 멀티 비트 셀들 각각에 대응하는 그룹 정보로부터 메모리 페이지(111) 내의 멀티 비트 셀들 각각의 문턱 전압의 변화를 검출할 수 있다. 판정부(120)는 그룹 정보로부터 메모리 페이지(111)에 저장된 데이터를 식별할 수 있다. 판정부(120)는 식별된 데이터를 오류 제어 코드(Error Control Codes, ECC) 디코드하여 식별된 데이터에 오류가 있는지 여부를 판정하고, 오류가 있으면 오류의 개수를 셀 수 있다. 판정부(120)가 ECC 디코드된 데이터로부터 획득할 수 있는 정보는 ECC 디코딩 기법(ECC decoding scheme)에 따라 결정될 수 있다. 판정부(120)는 식별된 데이터의 오류의 개수 및 오류의 패턴에 따라 메모리 페이지(111) 내의 멀티 비트 셀들 각각의 문턱 전압의 변화를 검출할 수 있다.
예를 들어, 데이터 "01"이 저장된 멀티 비트 셀들 - 문턱 전압 상태(340)에 대응 - 중 k개의 문턱 전압이 감소하여 전압 레벨(370)보다 낮아진 경우를 가정할 수 있다. 판정부(120)는 데이터를 ECC 디코드한 결과로부터 데이터 "01" 중 k개가 데이터 "00"으로 잘못 식별되었음을 알 수 있다. 판정부(120)는 문턱 전압 상태(340)를 가지는 멀티 비트 셀들 중 문턱 전압이 변화하여 전압 레벨(370)보다 낮아진 멀티 비트 셀들의 비율을 추출할 수 있고, 추출된 비율로부터 멀티 비트 셀들 의 문턱 전압의 변화 경향을 추정할 수 있다. 판정부(120)는 추정된 문턱 전압의 변화 경향을 이용하여 ECC 디코딩 과정에 이용할 수 있다.
판정부(120)는 멀티 비트 셀들의 문턱 전압의 변화 경향을 추정하여 기준 전압 레벨들을 조정할 수 있다. 멀티 비트 셀들의 문턱 전압의 변화 경향은 읽기 동작 동안 추정될 수도 있고, 메모리 장치(100)의 제조 과정에서 미리 입력되어 있을 수도 있다.
판정부(120)는 추가적인 오버헤드 없이 멀티 비트 셀들의 문턱 전압들의 변화 경향을 추정할 수 있다. 본 실시예에 따르면 메모리 장치(100)는 멀티 비트 셀들의 문턱 전압들의 변화 경향을 추정하기 위해 추가적인 저장 영역(storage area)을 필요로 하지 않고, 변화 경향을 추정하기 위한 추가적인 동작도 최소화할 수 있다.
멀티 비트 셀들의 문턱 전압을 변화시키는 메커니즘으로는 부유 게이트(Floating Gate, FG) 커플링 메커니즘 또는 전하 유실(charge loss) 메커니즘 등을 들 수 있다. FG 커플링 메커니즘 또는 전하 유실 메커니즘은 이하 도 4를 이용해 설명하기로 한다.
도 4는 멀티 비트 셀들의 문턱 전압이 변화하는 과정을 도시하는 도면이다.
도 4를 참조하면, 가로축은 멀티 비트 셀들의 문턱 전압을 나타내고, 세로축은 해당 문턱 전압을 가지는 멀티 비트 셀들의 개수를 나타낸다.
특정 데이터에 대응하는 프로그래밍 과정이 수행된 후의 멀티 비트 셀들은 문턱 전압 상태(420)를 가진다고 가정한다. 시간이 경과함에 따라 상기 멀티 비트 셀들의 문턱 전압이 감소하면 상기 멀티 비트 셀들은 문턱 전압 상태(410)를 가질 수 있다. 상기 멀티 비트 셀들의 문턱 전압을 감소시키는 원인은 전하 유실 메커니즘일 수 있다.
일반적으로 멀티 비트 셀은 제어 게이트(control gate, CG) 및 FG 사이에 절연체(insulator) 층이 삽입되고, FG 및 substrate 사이에도 절연체 층이 삽입된 구조를 가진다. 제어 게이트 및 substrate 에 전압이 인가되어 프로그래밍 바이어스(bias) 조건이 충족되면 substrate의 전하(charge)가 FG로 이동하여 FG에 충전된다. 이상적으로는, FG에 충전된 전하는 소거(erase) 바이어스 조건이 충족되기 전에는 이동하지 않아야 한다. 실제로는 FG 주변의 절연체 층의 결함(defect) 등으로 인해 FG로부터 전하가 누설될 수 있는 경로가 형성된다. FG에 충전된 전하가 누설 경로를 경유하여 방전(discharge)되는 메커니즘을 전하 유실(charge loss) 메커니즘이라고 한다. FG에 충전된 전하는 누설 경로 이외에도 터널링(tunneling) 등의 메커니즘에 의해 시간이 경과됨에 따라 방전될 수 있다.
멀티 비트 셀들이 문턱 전압 상태(420)로부터 문턱 전압 상태(410)로 천이(transit)되는 과정(440)은 전하 유실 메커니즘 등의 원인에 의해 일어날 수 있다.
시간이 경과함에 따라 상기 멀티 비트 셀들의 문턱 전압이 증가하면 상기 멀티 비트 셀들은 문턱 전압 상태(430)를 가질 수 있다. 이 때, 상기 멀티 비트 셀들이 문턱 전압 상태(420)로부터 문턱 전압 상태(430)로 천이하는 과정(450)은 FG 커플링 메커니즘 등에 의하여 일어날 수 있다.
FG 커플링이란, 중심 멀티 비트 셀의 문턱 전압이 주변의 멀티 비트 셀들의 문턱 전압의 변화량에 따라 영향 받는 현상을 말한다. 멀티 비트 셀들의 FG들 간의 기생 커패시턴스(parasitic capacitance)의 커플링으로 인해 중심 멀티 비트 셀의 문턱 전압이 영향 받는다.
만일, 프로그래밍 과정이 멀티 비트 셀들의 문턱 전압을 증가시킨다면, 중심 멀티 비트 셀의 문턱 전압은 FG 커플링에 의해 원하는 값보다 증가하게 된다.
FG 커플링 또는 전하 유실 등의 메커니즘에 의해, 멀티 비트 셀들의 문턱 전압의 산포는 확산되는 경향을 가진다. 멀티 비트 셀이 동작하는 전압 윈도우는 제한되어 있으므로, 문턱 전압의 산포가 확산될수록 문턱 전압의 산포가 겹칠 가능성이 높아지게 된다. 문턱 전압의 산포가 겹치는 정도가 심할수록 프로그래밍된 데이터를 정확하게 읽어내지 못하는 오류 비율(error rate)이 증가하게 된다.
메모리 장치(100)는 문턱 전압 상태들을 높은 문턱 전압 레벨부터 낮은 문턱 전압 레벨로 순차적으로 판정해 나가므로 (또는 반대로 낮은 문턱 전압 레벨부터 높은 문턱 전압 레벨로 순차적으로 판정) 멀티 비트 데이터 및 문턱 전압 상태 간의 매핑(mapping) 기법에 의한 영향을 최소화할 수 있다. 따라서, 메모리 장치(100)는 데이터 페이지들 각각의 비트 오류 비율(bit error rate, BER)에 기초하여 멀티 비트 데이터 및 문턱 전압 상태 간의 매핑 기법을 선택할 수 있다.
즉, 앞서 설명한 실시예에서는 문턱 전압 상태(310)는 데이터 "11", 문턱 전압 상태(320)는 데이터 "10", 문턱 전압 상태(330)는 데이터 "00", 문턱 전압 상태(330)는 데이터 "01"에 대응하는 매핑 기법이 이용된 것으로 간주할 수 있다.
메모리 장치(100)의 실시예에 따라서는, 판정부(120)의 하드웨어 복잡도를 최소화할 수 있는 매핑 기법이 이용될 수 있다.
메모리 장치(100)의 저장 밀도가 높아짐에 따라 오류 제어 코드 또는 오류 정정 코드 (error control codes or error correction codes, ECC) 를 메모리 장치(100)에 적용하는 경우가 보편화되고 있다. 메모리 장치(100)는 멀티 비트 셀에 데이터를 저장하는 과정에서 저장되는 데이터를 ECC 인코드한 후에 저장하고, 멀티 비트 셀로부터 읽은 데이터를 ECC 디코드하여 저장된 데이터를 복원할 수 있다.
ECC 디코더의 오류 정정 능력(error correcting capability)이 클수록 ECC 디코더를 구현하기 위한 하드웨어 복잡도는 증가하기 마련이다. ECC 디코딩 과정은 데이터 페이지들 각각에 대하여 실행될 수 있고, 특정 데이터 페이지에 대한 BER이 나머지 데이터 페이지들에 대한 BER보다 지나치게 높으면 특정 데이터 페이지의 오류를 정정하기 위해 큰 오류 정정 능력을 가진 ECC 디코더가 필요하게 될 수 있다. 메모리 장치(100)에 포함되는 ECC 디코더의 하드웨어 복잡도를 감소시키기 위해서는 특정 데이터 페이지의 BER이 지나치게 높지 않도록 조정되어야 한다.
본 실시예에 따르면 데이터 값들과 문턱 전압의 산포 간의 매핑을 조정하여 특정 데이터 페이지의 BER이 평균 값보다 지나치게 높지 않도록 규제(regulate)할 수 있다. 따라서 메모리 장치(100)는 메모리 장치(100)에 포함되는 ECC 디코더의 하드웨어 복잡도를 감소시킬 수 있다.
메모리 장치(100)의 실시예에 따라서는, 모든 데이터 페이지의 BER을 유사한 레벨로 조정할 수 있는 매핑 기법이 이용될 수 있다.
메모리 장치(100)의 실시예에 따라서는, 메모리 장치(100)는 문턱 전압 상태들(도시되지 않음)을 복수의 그룹으로 나눌 수 있다. 예를 들어, 메모리 장치(100)는 문턱 전압 상태들을 높은 문턱 전압을 가지는 문턱 전압 상태들의 제1 상태 그룹 및 낮은 문턱 전압을 가지는 문턱 전압 상태들의 제2 상태 그룹으로 나눌 수 있다. 메모리 장치(100)는 제1 상태 그룹에 속하는 문턱 전압 상태들에 대한 읽기 동작을 수행한 후 제2 상태 그룹에 속하는 문턱 전압 상태들에 대한 읽기 동작을 수행할 수 있다.
도 2는 본 발명의 다른 실시예에 따른 메모리 장치(200)를 도시하는 도면이다.
도 2를 참조하면, 메모리 장치(200)는 멀티 비트 셀 어레이(210) 및 판정부(220)를 포함하고, 버퍼 메모리(230), 프리차지(pre-charge) 회로(240) 및 제어부(250)를 더 포함한다.
판정부(220)는 멀티 비트 셀 어레이(210) 내의 메모리 페이지(211)의 멀티 비트 셀들을 문턱 전압에 따라 제1 그룹 및 제2 그룹으로 분할한다. 제1 그룹은 기준 전압보다 높은 문턱 전압을 가지는 멀티 비트 셀들로 이루어지고, 제2 그룹은 기준 전압보다 낮은 문턱 전압을 가지는 멀티 비트 셀들로 이루어진다.
판정부(220)는 기준 전압을 변화시켜 가며 제1 그룹 및 제2 그룹을 업데이트한다.
버퍼 메모리(230)는 제1 그룹의 멀티 비트 셀들 각각 및 제2 그룹의 멀티 비트 셀들 각각에 대한 정보를 저장한다. 버퍼 메모리(230)는 제1 그룹 및 제2 그룹 이 업데이트되면, 업데이트된 제1 그룹 및 업데이트된 제2 그룹에 대응하는 정보를 저장한다.
버퍼 메모리(230)는 메모리 페이지(211) 내의 멀티 비트 셀들 각각이 제1 그룹에 속하는지 제2 그룹에 속하는지를 나타내는 플래그(flag)를 저장할 수 있다. 버퍼 메모리(230)는 메모리 페이지(211) 내의 멀티 비트 셀들의 개수만큼의 플래그들을 저장할 수 있다.
프리차지 회로(240)는 메모리 페이지(211)의 멀티 비트 셀들 각각의 비트 라인을 프리차지한다. 프리차지 회로는 판정부(220)가 기준 전압을 변화시켜 가며 제1 그룹 및 제2 그룹을 분할하는 동안 프리차지 동작을 수행하지 않을 수 있다.
메모리 페이지(211)의 멀티 비트 셀들 각각의 비트 라인을 프리차지하는 동작은 비트 라인들 각각의 기생 커패시턴스(parasitic capacitance)를 충전하기 때문에 긴 시간이 소요된다. 본 실시예에 따르면, 프리차지 회로(240)는 판정부(220)가 기준 전압을 변화시켜 가며 멀티 비트 셀들의 문턱 전압을 기준 전압과 비교하는 동안 프리차지 동작을 수행하지 않을 수 있다. 메모리 장치(200)는 한번의 프리차지 동작을 수행한 후 메모리 페이지(211) 내의 멀티 비트 셀들에 연결된 워드 라인의 전압을 변화시켜 가며 상기 멀티 비트 셀들의 문턱 전압을 기준 전압과 비교할 수 있다. 이 때, 워드 라인에 인가되는 전압은 기준 전압에 따라 결정될 수 있다. 메모리 장치(200)는 비트 라인들 각각을 프리차지하는 횟수를 줄일 수 있으므로, 프리차지 동작에 소요되는 시간만큼 데이터 읽기 시간을 줄일 수 있다.
제어부(250)는 버퍼 메모리(230)에 저장된 제1 그룹 및 제2 그룹에 대응하는 정보 - 멀티 비트 셀들 각각이 제1 그룹인지 제2 그룹인지를 나타내는 정보 - 를 읽는다. 상기 정보는 멀티 비트 셀들 각각에 대응하는 플래그(flag)일 수 있다. 제어부(250)는 제1 그룹 및 제2 그룹이 업데이트되면, 이전에 읽은 정보 및 업데이트된 제1 그룹 및 업데이트된 제2 그룹에 대응하는 정보에 기초하여 메모리 페이지(211)의 멀티 비트 셀들에 저장된 데이터를 식별할 수 있다.
메모리 장치(200)의 동작을 도 3 및 도 5를 이용하여 상세히 설명한다.
도 3은 앞에서 메모리 장치(100)에 대응하여 설명되었지만, 메모리 장치(200)의 동작도 도 3을 이용하여 메모리 장치(100)의 동작과 유사한 방법으로 수행될 수 있다.
도 5는 버퍼 메모리(230)에 저장된 플래그의 일 예를 도시하는 도면이다.
도 5를 참조하면, 각 행(row)은 동일한 시간 구간에서의 버퍼 메모리(230)에 저장된 플래그를 나타내고, 각 열(column)은 동일한 멀티 비트 셀에 대한 플래그의 시간에 따른 변화를 나타낸다.
설명의 편의상, 가장 왼쪽의 열은 제1 멀티 비트 셀에 대한 플래그라 하고, 나머지 열들은 순차적으로 제2 멀티 비트 셀, 제3 멀티 비트 셀 및 제4 멀티 비트 셀에 대한 플래그라 명명한다.
행(510)은 초기화된 버퍼 메모리(230)의 플래그를 나타낸다. 메모리 장치(200)의 읽기 동작이 시작되기 전에 버퍼 메모리(230)는 "0000"으로 초기화된다.
행(520)은 제1 시간 구간 동안 버퍼 메모리(230)에 저장된 플래그를 나타낸 다. 제1 시간 구간 동안 판정부(220)는 전압 레벨(370)을 기준 전압으로 설정하여 메모리 페이지(211) 내의 멀티 비트 셀들을 제1 그룹 및 제2 그룹으로 분할할 수 있다.
제2 멀티 비트 셀만이 제1 시간 구간 동안 제1 그룹에 포함되었다면, 버퍼 메모리(230)에는 플래그 "0100"이 저장될 수 있다. 제1 시간 구간의 제1 그룹은 문턱 전압 상태(340)에 대응하고 문턱 전압 상태(340)는 데이터 "01"에 대응하므로, 제어부(250)는 제2 멀티 비트 셀에 저장된 데이터가 "01"임을 식별할 수 있다.
행(530)은 제2 시간 구간 동안 버퍼 메모리(230)에 저장된 플래그를 나타낸다. 제2 시간 구간 동안 판정부(220)는 전압 레벨(360)을 기준 전압으로 설정하여 메모리 페이지(211) 내의 멀티 비트 셀들을 제1 그룹 및 제2 그룹으로 분할할 수 있다.
제1 멀티 비트 셀, 제2 멀티 비트 셀 및 제4 멀티 비트 셀이 제2 시간 구간의 제1 그룹에 포함되고, 제3 멀티 비트 셀은 제2 시간 구간의 제2 그룹에 포함되었다면, 버퍼 메모리(230)에는 플래그 "1101"이 저장될 수 있다. 제어부(250)는 제1 시간 구간 동안 버퍼 메모리(230)에 저장되었던 플래그 및 제2 시간 구간 동안 버퍼 메모리(230)에 저장된 플래그에 기초하여 제1 멀티 비트 셀 및 제4 멀티 비트 셀의 데이터를 식별할 수 있다. 제어부(250)는 제1 멀티 비트 셀 및 제4 멀티 비트 셀은 제1 시간 구간의 제2 그룹에 포함되고 제2 시간 구간의 제1 그룹에 포함되므로 문턱 전압 상태(330)를 가짐을 알 수 있다. 문턱 전압 상태(330)는 데이터 "00"에 대응하므로 제어부(250)는 제1 멀티 비트 셀 및 제4 멀티 비트 셀에 저장된 데이터가 "00"임을 식별할 수 있다.
행(540)은 제3 시간 구간 동안 버퍼 메모리(230)에 저장된 플래그를 나타낸다. 제3 시간 구간 동안 판정부(220)는 전압 레벨(350)을 기준 전압으로 설정하여 메모리 페이지(211) 내의 멀티 비트 셀들을 제1 그룹 및 제2 그룹으로 분할할 수 있다.
제1 멀티 비트 셀, 제2 멀티 비트 셀 및 제4 멀티 비트 셀이 제3 시간 구간의 제1 그룹에 포함되고, 제3 멀티 비트 셀은 제3 시간 구간의 제2 그룹에 포함되었다면, 버퍼 메모리(230)에는 플래그 "1101"이 저장될 수 있다.
제어부(250)는 제3 시간 구간 동안 버퍼 메모리(230)에 저장된 플래그에 기초하여 제3 멀티 비트 셀에 저장된 데이터를 식별할 수 있다. 제3 멀티 비트 셀은 제3 시간 구간의 제2 그룹이므로 문턱 전압 상태(310)에 대응하고, 문턱 전압 상태(310)는 데이터 "11"에 대응하므로, 제어부(250)는 제3 멀티 비트 셀에 저장된 데이터가 "11"임을 식별할 수 있다.
버퍼 메모리(230)는 기준 전압 및 멀티 비트 셀의 문턱 전압을 비교하여 기준 전압보다 높은 문턱 전압을 가지는 멀티 비트 셀에 대해서는 플래그 "1"을 저장하고, 기준 전압보다 낮은 문턱 전압을 가지는 멀티 비트 셀에 대해서는 플래그 "0"을 저장할 수 있다. 따라서 버퍼 메모리(230)는 단순한 구성 만으로 플래그를 저장할 수 있으며, 제어부(250)는 데이터를 식별하기 위한 상대적으로 복잡한 하드웨어 구성을 가지게 된다.
도 6은 본 발명의 또 다른 실시예에 따른 메모리 장치(600)를 도시하는 도면 이다.
도 6을 참조하면, 메모리 장치(600)는 멀티 비트 셀 어레이(610), 페이지 버퍼(620) 및 판정부(630)를 포함한다.
페이지 버퍼(620)는 멀티 비트 셀 어레이(610) 내의 메모리 페이지(611)에 대한 프로그램 동작 동안 프로그램되는 데이터를 저장한다.
판정부(630)는 멀티 비트 셀 어레이(610) 내의 메모리 페이지(611)에 대한 읽기 동작 동안 메모리 페이지(611)의 멀티 비트 셀들을 제1 그룹 및 제2 그룹으로 분할한다. 판정부(630)는 메모리 페이지(611)의 멀티 비트 셀들의 문턱 전압에 따라 상기 멀티 비트 셀들을 제1 그룹 및 제2 그룹으로 분할한다. 제1 그룹은 기준 전압보다 높은 문턱 전압을 가지는 멀티 비트 셀들로 이루어지고, 제2 그룹은 기준 전압보다 낮은 문턱 전압을 가지는 멀티 비트 셀들로 이루어진다.
페이지 버퍼(620)는 읽기 동작 동안 메모리 페이지(611) 내의 메모리 멀티 비트 셀들 각각이 제1 그룹 또는 제2 그룹 중 어느 그룹에 포함되었는지를 나타내는 플래그를 저장한다. 페이지 버퍼(620)는 프로그램 동작 동안 저장된 데이터를 읽기 동작이 수행되기 전에 소거(erase)할 수 있다.
판정부(630)는 읽기 동작 동안 기준 전압을 변화시켜 가며 제1 그룹 및 제2 그룹을 업데이트한다. 판정부(630)는 기준 전압을 제1 기준 전압 레벨로 설정하고, 설정된 기준 전압 (제1 기준 전압 레벨)에 따라 제1 그룹 및 제2 그룹을 분할한다. 판정부(630)는 기준 전압을 제1 기준 전압 레벨보다 낮은 기준 전압 레벨로 순차적으로 변화시켜 가며 제1 그룹 및 제2 그룹을 업데이트할 수 있다.
기준 전압 레벨들 - 제1 기준 전압 레벨을 포함한다 - 은 프로그램 동작 동안 이용되는 검증 전압 레벨들과 관련되어 결정될 수 있다.
페이지 버퍼(620)는 제1 그룹 및 제2 그룹이 업데이트되면, 이전에 제1 그룹이었던 멀티 비트 셀들 각각에 대한 플래그를 고정하고 이전에 제2 그룹이었던 멀티 비트 셀들 각각에 대하여 업데이트된 제1 그룹 및 업데이트된 제2 그룹에 대응하는 플래그를 저장할 수 있다.
페이지 버퍼(620)는 제1 시간 구간 동안 제1 그룹이었던 멀티 비트 셀들 각각에 대하여 제2 시간 구간 및 이후부터는 고정된 플래그를 저장할 수 있다. 이 때, 고정된 플래그는 제1 시간 구간 동안 제1 그룹이었던 멀티 비트 셀들 각각에 대하여 저장된 플래그와 동일한 값을 가질 수 있다. 메모리 장치(600)의 실시예에 따라서는, 고정된 플래그는 제1 시간 구간 동안 제1 그룹이었던 멀티 비트 셀들 각각에 대하여 저장된 플래그와 다른 값을 가질 수도 있다.
예를 들어 페이지 버퍼(620)에 제1 시간 구간 동안 제1 그룹이었던 멀티 비트 셀들 각각에 대하여 플래그 "1"이 저장되면, 제2 시간 구간 및 이후부터는 페이지 버퍼(620)에 제1 시간 구간 동안 제1 그룹이었던 멀티 비트 셀들 각각에 대하여 플래그 "1"이 고정되어 저장될 수도 있고, 반대로 플래그 "0"이 고정되어 저장될 수도 있다.
제1 시간 구간 동안 저장된 플래그 "1"과 다른 플래그 "0"이 제2 시간 구간 및 이후부터 고정되어 저장되는 실시예에서는, 메모리 장치(600) 외부의 호스트(host) - 컴퓨팅 시스템을 포함한다 - 또는 메모리 장치(600) 내부의 컨트롤러 (도시되지 않음)는 각 시간 구간마다 페이지 버퍼(620)로부터 읽은 데이터를 이용하여 멀티 비트 셀들 각각에 저장된 데이터를 식별할 수 있다. 이 때, 페이지 버퍼(620)는 플래그를 식별하고 고정하는 논리 회로를 더 포함하게 되어 페이지 버퍼(620)의 하드웨어 복잡도는 증가하고, 호스트 또는 컨트롤러의 하드웨어 복잡도는 상대적으로 감소할 수 있다.
메모리 장치(600)의 동작의 일 실시예를 도 3 및 도 7을 이용하여 상세히 설명한다.
도 3은 앞에서 메모리 장치(100) 또는 메모리 장치(200)에 대응하여 설명되었지만, 메모리 장치(600)의 동작도 도 3을 이용하여 메모리 장치(100) 또는 메모리 장치(200)의 동작과 유사한 방법으로 수행될 수 있다.
도 7은 페이지 버퍼(620)에 저장된 플래그 일 실시예를 도시하는 도면이다.
도 7을 참조하면, 각 행은 동일한 시간 구간에서의 페이지 버퍼(620)에 저장된 플래그를 나타내고, 각 열은 동일한 멀티 비트 셀에 대한 플래그의 시간에 따른 변화를 나타낸다.
설명의 편의상, 가장 왼쪽의 열은 제1 멀티 비트 셀에 대한 플래그라 하고, 나머지 열들은 순차적으로 제2 멀티 비트 셀, 제3 멀티 비트 셀 및 제4 멀티 비트 셀에 대한 플래그라 명명한다.
행(710)은 초기화된 페이지 버퍼(620)의 플래그를 나타낸다. 메모리 장치(600)의 읽기 동작이 시작되기 전에 페이지 버퍼(620)는 "0000"으로 초기화된다.
행(720)은 제1 시간 구간 동안 페이지 버퍼(620)에 저장된 플래그를 나타낸 다. 제1 시간 구간 동안 판정부(630)는 전압 레벨(370)을 기준 전압으로 설정하여 메모리 페이지(611) 내의 멀티 비트 셀들을 제1 그룹 및 제2 그룹으로 분할할 수 있다.
제2 멀티 비트 셀만이 제1 시간 구간 동안 제1 그룹에 포함되었다면, 페이지 버퍼(620)에는 플래그 "0100"이 저장될 수 있다. 제1 시간 구간의 제1 그룹은 문턱 전압 상태(340)에 대응하고 문턱 전압 상태(340)는 데이터 "01"에 대응하므로, 컨트롤러 또는 호스트(도시되지 않음)는 제1 시간 구간 동안 페이지 버퍼(620)로부터 읽은 데이터에 기초하여 제2 멀티 비트 셀에 저장된 데이터가 "01"임을 식별할 수 있다. 컨트롤러 또는 호스트는 제1 시간 구간 동안 저장된 플래그 "1"에 대응하는 제2 멀티 비트 셀에 저장된 데이터가 "01"임을 식별할 수 있다.
행(730)은 제2 시간 구간 동안 페이지 버퍼(620)에 저장된 플래그를 나타낸다. 제2 시간 구간 동안 판정부(630)는 전압 레벨(360)을 기준 전압으로 설정하여 메모리 페이지(611) 내의 멀티 비트 셀들을 제1 그룹 및 제2 그룹으로 분할할 수 있다.
페이지 버퍼(620)는 제1 시간 구간 동안 저장된 플래그 "1"에 대응하는 제2 멀티 비트 셀에 대응하는 플래그를 제2 시간 구간부터는 "0"으로 고정하여 저장할 수 있다.
제1 멀티 비트 셀, 제2 멀티 비트 셀 및 제4 멀티 비트 셀이 제2 시간 구간의 제1 그룹에 포함되고, 제3 멀티 비트 셀은 제2 시간 구간의 제2 그룹에 포함되었다면, 페이지 버퍼(620)에는 플래그 "1001"이 저장될 수 있다.
컨트롤러 또는 호스트는 제2 시간 구간 동안 저장된 플래그 "1"에 대응하는 제1 멀티 비트 셀 및 제4 멀티 비트 셀에 저장된 데이터가 "00"임을 식별할 수 있다.
제1 멀티 비트 셀 및 제4 멀티 비트 셀의 문턱 전압은 전압 레벨(370)보다 낮고 전압 레벨(360)보다 높으므로 제1 멀티 비트 셀 및 제4 멀티 비트 셀은 문턱 전압 상태(330)를 가진다. 문턱 전압 상태(330)는 데이터 "00"에 대응하므로 메모리 장치(600)는 제1 멀티 비트 셀 및 제4 멀티 비트 셀에 저장된 데이터를 정확히 식별할 수 있다.
행(740)은 제3 시간 구간 동안 페이지 버퍼(620)에 저장된 플래그를 나타낸다. 제3 시간 구간 동안 판정부(630)는 전압 레벨(350)을 기준 전압으로 설정하여 메모리 페이지(611) 내의 멀티 비트 셀들을 제1 그룹 및 제2 그룹으로 분할할 수 있다.
페이지 버퍼(620)는 제2 멀티 비트 셀에 대응하는 플래그를 제2 시간 구간부터는 "0"으로 고정하여 저장하고, 제2 시간 구간 동안 저장된 플래그 "1"에 대응하는 제1 멀티 비트 셀 및 제4 멀티 비트 셀에 대응하는 플래그들을 제3 시간 동안 "0"으로 고정하여 저장할 수 있다.
제1 멀티 비트 셀, 제2 멀티 비트 셀 및 제4 멀티 비트 셀이 제3 시간 구간의 제1 그룹에 포함되고, 제3 멀티 비트 셀은 제3 시간 구간의 제2 그룹에 포함되었다면, 페이지 버퍼(620)에는 플래그 "0000"이 저장될 수 있다.
제1 시간 구간 또는 제2 시간 구간 동안 페이지 버퍼(620)에 저장된 플래그 "1"에 대응하는 제1 멀티 비트 셀, 제2 멀티 비트 셀 및 제4 멀티 비트 셀에 대해서는 제1 시간 구간 또는 제2 시간 구간에 데이터의 식별이 수행되었으므로 컨트롤러 또는 호스트는 제3 시간 구간 동안 제3 멀티 비트 셀에 저장된 데이터를 식별할 수 있다.
제3 멀티 비트 셀은 제3 시간 구간의 제2 그룹이므로 문턱 전압 상태(310)에 대응하고, 문턱 전압 상태(310)는 데이터 "11"에 대응하므로, 컨트롤러 또는 호스트는 제3 멀티 비트 셀에 저장된 데이터가 "11"임을 식별할 수 있다.
페이지 버퍼(620)는 기준 전압 및 멀티 비트 셀의 문턱 전압을 비교하여 기준 전압보다 높은 문턱 전압을 가지는 멀티 비트 셀에 대해서는 플래그 "1"을 저장하고, 기준 전압보다 낮은 문턱 전압을 가지는 멀티 비트 셀에 대해서는 플래그 "0"을 저장하고, 이전 시간 구간 동안 저장된 플래그 "1"에 대응하는 멀티 비트 셀에 대해서는 다음 시간 구간 이후 플래그 "0"을 고정하여 저장할 수 있다. 페이지 버퍼(620)는 현재 시간 구간의 판정부(630)의 판정 결과 및 이전 시간 구간의 플래그에 기초하여 현재 시간 구간 동안 저장되는 플래그를 결정할 수 있다.
따라서 페이지 버퍼(630)는 상대적으로 복잡한 구성을 가지게 되고 컨트롤러 또는 호스트는 현재 시간 구간 동안 페이지 버퍼(630)로부터 읽은 데이터에 기초하여 멀티 비트 셀에 저장된 데이터를 식별할 수 있으므로 상대적으로 간단한 구성을 가질 수 있다.
다시 도 6을 참조하면, 판정부(630)는 읽기 동작 동안 기준 전압을 변화시켜 가며 제1 그룹 및 제2 그룹을 업데이트한다. 판정부(630)는 기준 전압을 제2 기준 전압 레벨로 설정하고, 설정된 기준 전압 (제2 기준 전압 레벨)에 따라 제1 그룹 및 제2 그룹을 분할한다. 판정부(630)는 기준 전압을 제2 기준 전압 레벨보다 높은 기준 전압 레벨로 순차적으로 변화시켜 가며 제1 그룹 및 제2 그룹을 업데이트할 수 있다.
기준 전압 레벨들 - 제2 기준 전압 레벨을 포함한다 - 은 프로그램 동작 동안 이용되는 검증 전압 레벨들과 관련되어 결정될 수 있다.
페이지 버퍼(620)는 제1 그룹 및 제2 그룹이 업데이트되면, 이전에 제2 그룹이었던 멀티 비트 셀들 각각에 대한 플래그를 고정하고 이전에 제1 그룹이었던 멀티 비트 셀들 각각에 대하여 업데이트된 제1 그룹 및 업데이트된 제2 그룹에 대응하는 플래그를 저장할 수 있다.
페이지 버퍼(620)는 제1 시간 구간 동안 제2 그룹이었던 멀티 비트 셀들 각각에 대하여 제2 시간 구간 및 이후부터는 고정된 플래그를 저장할 수 있다. 이 때, 고정된 플래그는 제1 시간 구간 동안 제2 그룹이었던 멀티 비트 셀들 각각에 대하여 저장된 플래그와 동일한 값을 가질 수 있다. 메모리 장치(600)의 실시예에 따라서는, 고정된 플래그는 제1 시간 구간 동안 제2 그룹이었던 멀티 비트 셀들 각각에 대하여 저장된 플래그와 다른 값을 가질 수도 있다.
예를 들어 페이지 버퍼(620)에 제1 시간 구간 동안 제2 그룹이었던 멀티 비트 셀들 각각에 대하여 플래그 "1"이 저장되면, 제2 시간 구간 및 이후부터는 페이지 버퍼(620)에 제1 시간 구간 동안 제2 그룹이었던 멀티 비트 셀들 각각에 대하여 플래그 "1"이 고정되어 저장될 수도 있고, 반대로 플래그 "0"이 고정되어 저장될 수도 있다.
도 8은 본 발명의 일 실시예에 따른 멀티 비트 셀 어레이 내의 메모리 페이지에 저장된 멀티 비트 데이터를 읽는 방법을 도시하는 동작 흐름도이다.
도 8을 참조하면, 방법은 복수의 기준 전압 레벨들 중 어느 하나를 선택한다(S810).
방법은 선택된 기준 전압 레벨을 기준 전압으로 설정한다(S820).
방법은 메모리 페이지의 멀티 비트 셀의 문턱 전압을 기준 전압과 비교한다(S830).
방법은 비교된 문턱 전압이 기준 전압보다 높은 멀티 비트 셀들 각각에 대한 정보를 저장한다(S840).
방법은 비교된 문턱 전압이 기준 전압보다 낮은 멀티 비트 셀들 각각에 대한 정보를 저장한다(S850).
방법은 기준 전압 레벨들 중 선택된 기준 전압 레벨을 제거한다(S860).
방법은 선택되지 않은 기준 전압 레벨이 남아 있는지 판단한다(S870).
방법은 선택되지 않은 기준 전압 레벨이 남아 있으면 단계(S810)를 다시 수행한다. 이 때, 방법은 남아 있는 기준 전압 레벨들 중 어느 하나를 선택한다(S810).
방법은 선택되지 않은 기준 전압 레벨이 없을 때까지 단계(S810) 내지 단계(S870)를 반복 수행한다.
방법은 단계(S810) 내지 단계(S870)를 수행하기 전에 메모리 페이지의 멀티 비트 셀들 각각의 비트 라인을 프리차지(pre-charge)할 수 있다.
방법은 단계(S810) 내지 단계(S870)를 반복 수행하는 동안 프리차지 동작을 수행하지 않을 수 있다.
본 발명에 따른 멀티 비트 데이터 읽기 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
본 발명에 따른 플래시 메모리 장치 그리고/또는 메모리 컨트롤러는 다양한 형태들의 패키지를 이용하여 구현될 수 있다. 예를 들면, 본 발명에 따른 플래시 메모리 장치 그리고/또는 메모리 컨트롤러는 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), 등과 같은 패키지들을 이용하여 구현될 수 있다.
플래시 메모리 장치와 메모리 컨트롤러는 메모리 카드를 구성할 수 있다. 이러한 경우, 메모리 컨트롤러는 USB, MMC, PCI-E, SATA, PATA, SCSI, ESDI, 그리고 IDE 등과 같은 다양한 인터페이스 프로토콜들 중 하나를 통해 외부(예를 들면, 호스트)와 통신하도록 구성될 수 있다.
플래시 메모리 장치는 전력이 차단되어도 저장된 데이터를 유지할 수 있는 비휘발성 메모리 장치이다. 셀룰러 폰, PDA 디지털 카메라, 포터블 게임 콘솔, 그리고 MP3P와 같은 모바일 장치들의 사용 증가에 따라, 플래시 메모리 장치는 데이터 스토리지 뿐만 아니라 코드 스토리지로서 보다 널리 사용될 수 있다. 플래시 메모리 장치는, 또한, HDTV, DVD, 라우터, 그리고 GPS와 같은 홈 어플리케이션에 사용될 수 있다.
본 발명에 따른 컴퓨팅 시스템은 버스에 전기적으로 연결된 마이크로프로세 서, 사용자 인터페이스, 베이스밴드 칩셋(baseband chipset)과 같은 모뎀, 메모리 컨트롤러, 그리고 플래시 메모리 장치를 포함한다. 플래시 메모리 장치에는 마이크로프로세서에 의해서 처리된/처리될 N-비트 데이터(N은 1 또는 그 보다 큰 정수)가 메모리 컨트롤러를 통해 저장될 것이다. 본 발명에 따른 컴퓨팅 시스템이 모바일 장치인 경우, 컴퓨팅 시스템의 동작 전압을 공급하기 위한 배터리가 추가적으로 제공될 것이다.
본 발명에 따른 컴퓨팅 시스템에는 응용 칩셋(application chipset), 카메라 이미지 프로세서(Camera Image Processor: CIS), 모바일 디램, 등이 더 제공될 수 있음은 이 분야의 통상적인 지식을 습득한 자들에게 자명하다. 메모리 컨트롤러와 플래시 메모리 장치는, 예를 들면, 데이터를 저장하는 데 비휘발성 메모리를 사용하는 SSD(Solid State Drive/Disk)를 구성할 수 있다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
도 1은 본 발명의 일 실시예에 따른 메모리 장치(100)를 도시하는 도면이다.
도 2는 본 발명의 다른 실시예에 따른 메모리 장치(200)를 도시하는 도면이다.
도 3은 도 1의 판정부(120), 도 2의 판정부(220) 또는 도 6의 판정부(630)의 동작의 일 예를 도시하는 도면이다.
도 4는 멀티 비트 셀들의 문턱 전압이 변화하는 과정을 도시하는 도면이다.
도 5는 버퍼 메모리(230)에 저장된 플래그의 일 예를 도시하는 도면이다.
도 6은 본 발명의 또 다른 실시예에 따른 메모리 장치(600)를 도시하는 도면이다.
도 7은 페이지 버퍼(620)에 저장된 플래그 일 실시예를 도시하는 도면이다.
도 8은 본 발명의 일 실시예에 따른 멀티 비트 셀 어레이 내의 메모리 페이지에 저장된 멀티 비트 데이터를 읽는 방법을 도시하는 동작 흐름도이다.
<도면의 주요 부분에 대한 부호의 설명>
110: 멀티 비트 셀 어레이
111: 메모리 페이지
120: 판정부

Claims (17)

  1. 멀티 비트 셀 어레이; 및
    상기 멀티 비트 셀 어레이 내의 메모리 페이지의 멀티 비트 셀들을 제1 그룹 및 제2 그룹으로 분할하는 판정부 - 상기 제1 그룹은 문턱 전압이 기준 전압보다 높은 멀티 비트 셀들로 이루어지고, 상기 제2 그룹은 문턱 전압이 상기 기준 전압보다 낮은 멀티 비트 셀들로 이루어짐 -
    를 포함하고,
    상기 판정부는 상기 기준 전압을 변화시켜 가며 상기 제1 그룹 및 상기 제2 그룹을 업데이트하는 메모리 장치.
  2. 제1항에 있어서,
    상기 제1 그룹의 멀티 비트 셀들 각각 및 상기 제2 그룹의 멀티 비트 셀들 각각에 대한 정보를 저장하는 버퍼 메모리
    를 더 포함하고,
    상기 버퍼 메모리는 상기 제1 그룹 및 상기 제2 그룹이 업데이트되면, 상기 업데이트된 제1 그룹 및 상기 업데이트된 제2 그룹에 대응하는 정보를 저장하는 메모리 장치.
  3. 제1항에 있어서,
    상기 판정부는
    상기 기준 전압을 소정의 제1 기준 전압 레벨로 설정하고 상기 제1 그룹 및 상기 제2 그룹을 분할한 후 상기 기준 전압을 순차적으로 상기 제1 기준 전압 레벨보다 낮은 기준 전압 레벨로 변화시켜 가며 상기 제1 그룹 및 상기 제2 그룹을 업데이트하는 메모리 장치.
  4. 제1항에 있어서,
    상기 판정부는
    상기 기준 전압을 소정의 제1 기준 전압 레벨로 설정하고 상기 제1 그룹 및 상기 제2 그룹을 분할한 후 상기 기준 전압을 순차적으로 상기 제1 기준 전압 레벨보다 높은 기준 전압 레벨로 변화시켜 가며 상기 제1 그룹 및 상기 제2 그룹을 업데이트하는 메모리 장치.
  5. 제1항에 있어서,
    상기 메모리 페이지의 멀티 비트 셀들 각각의 비트 라인을 프리차지하는 프리차지 회로
    를 더 포함하고,
    상기 프리차지 회로는 상기 판정부가 상기 기준 전압을 변화시켜 가며 상기 제1 그룹 및 상기 제2 그룹을 분할하는 동안 프리차지 동작을 수행하지 않는 메모리 장치.
  6. 제1항에 있어서,
    상기 판정부는 상기 정보로부터 상기 메모리 페이지 내의 멀티 비트 셀들의 문턱 전압의 변화를 검출하는 메모리 장치.
  7. 제1항에 있어서,
    상기 판정부는 부유 게이트 메커니즘 또는 전하 유실 메커니즘 중 하나 이상을 반영하여 상기 기준 전압의 전압 레벨을 조정하는 메모리 장치.
  8. 제1항에 있어서,
    상기 버퍼 메모리는
    상기 메모리 페이지 내의 멀티 비트 셀들 각각이 상기 제1 그룹에 속하는지 상기 제2 그룹에 속하는지를 나타내는 플래그를 저장하는 메모리 장치.
  9. 제1항에 있어서,
    상기 버퍼 메모리에 저장된 상기 정보를 읽고, 상기 제1 그룹 및 상기 제2 그룹이 업데이트되면, 이전에 읽은 정보 및 상기 업데이트된 제1 그룹 및 상기 업데이트된 제2 그룹에 대응하는 정보에 기초하여 상기 메모리 페이지의 멀티 비트 셀들에 저장된 데이터를 식별하는 제어부
    를 더 포함하는 메모리 장치.
  10. 멀티 비트 셀 어레이;
    상기 멀티 비트 셀 어레이 내의 메모리 페이지에 대한 프로그램 동작 동안 프로그램되는 데이터를 저장하는 페이지 버퍼; 및
    상기 멀티 비트 셀 어레이 내의 메모리 페이지에 대한 읽기 동작 동안 상기 메모리 페이지의 멀티 비트 셀들을 제1 그룹 및 제2 그룹으로 분할하는 판정부 - 상기 제1 그룹은 문턱 전압이 기준 전압보다 높은 멀티 비트 셀들로 이루어지고, 상기 제2 그룹은 문턱 전압이 기준 전압보다 낮은 멀티 비트 셀들로 이루어짐 -
    를 포함하고,
    상기 페이지 버퍼는 상기 읽기 동작 동안 상기 메모리 페이지 내의 멀티 비트 셀들 각각이 상기 제1 그룹 또는 상기 제2 그룹 중 어느 그룹에 포함되는지를 나타내는 플래그를 저장하고,
    상기 판정부는 상기 읽기 동작 동안 상기 기준 전압을 변화시켜 가며 상기 제1 그룹 및 상기 제2 그룹을 업데이트하는 메모리 장치.
  11. 제10항에 있어서,
    상기 판정부는
    상기 기준 전압을 제1 기준 전압 레벨로 설정하고 상기 제1 그룹 및 상기 제2 그룹을 분할한 후 상기 기준 전압을 순차적으로 상기 제1 기준 전압 레벨보다 낮은 기준 전압 레벨로 변화시켜 가며 상기 제1 그룹 및 상기 제2 그룹을 업데이트하 는 메모리 장치.
  12. 제11항에 있어서,
    상기 페이지 버퍼는
    상기 제1 그룹 및 상기 제2 그룹이 업데이트되면, 이전에 상기 제1 그룹이었던 멀티 비트 셀들 각각에 대한 플래그를 고정하고 이전에 상기 제2 그룹이었던 멀티 비트 셀들 각각에 대하여 상기 업데이트된 제1 그룹 및 상기 업데이트된 제2 그룹에 대응하는 플래그를 저장하는 메모리 장치.
  13. 제10항에 있어서,
    상기 판정부는
    상기 기준 전압을 제2 기준 전압 레벨로 설정하고 상기 제1 그룹 및 상기 제2 그룹을 분할한 후 상기 기준 전압을 순차적으로 상기 제2 기준 전압 레벨보다 높은 기준 전압 레벨로 변화시켜 가며 상기 제1 그룹 및 상기 제2 그룹을 업데이트하는 메모리 장치.
  14. 제13항에 있어서,
    상기 페이지 버퍼는
    상기 제1 그룹 및 상기 제2 그룹이 업데이트되면, 이전에 상기 제2 그룹이었던 멀티 비트 셀들 각각에 대한 플래그를 고정하고 이전에 상기 제1 그룹이었던 멀 티 비트 셀들 각각에 대하여 상기 업데이트된 제1 그룹 및 상기 업데이트된 제2 그룹에 대응하는 플래그를 저장하는 메모리 장치.
  15. 멀티 비트 셀 어레이 내의 메모리 페이지에 저장된 멀티 비트 데이터를 읽는 방법에 있어서,
    복수의 기준 전압 레벨들 중 어느 하나를 선택하고, 선택된 기준 전압 레벨을 기준 전압으로 설정하는 단계;
    상기 메모리 페이지의 멀티 비트 셀들의 문턱 전압을 상기 기준 전압과 비교하는 단계;
    상기 비교된 문턱 전압이 상기 기준 전압보다 높은 멀티 비트 셀들 각각에 대한 정보를 저장하는 단계;
    상기 비교된 문턱 전압이 상기 기준 전압보다 낮은 멀티 비트 셀들 각각에 대한 정보를 저장하는 단계
    를 포함하고,
    상기 기준 전압으로 설정하는 단계는 나머지 단계들이 수행된 후에 상기 선택된 기준 전압 레벨을 제외한 나머지 기준 전압 레벨들 중 어느 하나를 선택하고, 선택된 기준 전압을 새로운 기준 전압으로 설정하고,
    선택되지 않은 기준 전압 레벨이 없을 때까지 상기 단계들을 반복하는 멀티 비트 데이터를 읽는 방법.
  16. 제15항에 있어서,
    상기 단계들이 수행되기 전에 상기 메모리 페이지의 멀티 비트 셀들 각각의 비트 라인을 프리차지하는 단계
    를 더 포함하는 멀티 비트 데이터를 읽는 방법.
  17. 제15항 내지 제16항 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록 매체.
KR1020080009218A 2008-01-29 2008-01-29 메모리 장치 및 메모리 데이터 읽기 방법 KR101437103B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020080009218A KR101437103B1 (ko) 2008-01-29 2008-01-29 메모리 장치 및 메모리 데이터 읽기 방법
US12/219,264 US7764543B2 (en) 2008-01-29 2008-07-18 Memory device and method of reading memory data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080009218A KR101437103B1 (ko) 2008-01-29 2008-01-29 메모리 장치 및 메모리 데이터 읽기 방법

Publications (2)

Publication Number Publication Date
KR20090083204A true KR20090083204A (ko) 2009-08-03
KR101437103B1 KR101437103B1 (ko) 2014-09-02

Family

ID=40899055

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080009218A KR101437103B1 (ko) 2008-01-29 2008-01-29 메모리 장치 및 메모리 데이터 읽기 방법

Country Status (2)

Country Link
US (1) US7764543B2 (ko)
KR (1) KR101437103B1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8811076B2 (en) 2012-07-30 2014-08-19 Sandisk Technologies Inc. Systems and methods of updating read voltages
US8874992B2 (en) * 2012-08-31 2014-10-28 Sandisk Technologies Inc. Systems and methods to initiate updating of reference voltages
KR102125371B1 (ko) * 2012-12-04 2020-06-22 삼성전자주식회사 비휘발성 메모리 장치 및 그것의 동작방법
US9576683B2 (en) * 2014-02-06 2017-02-21 Seagate Technology Llc Systems and methods for hard error reduction in a solid state memory device
US9858994B2 (en) * 2015-06-18 2018-01-02 Samsung Electronics Co., Ltd. Memory system with MLC memory cells and partial page compression or reduction

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1011983A (ja) 1996-06-28 1998-01-16 Sony Corp 半導体不揮発性記憶装置
JPH11185484A (ja) 1997-12-10 1999-07-09 Neucore Technol Inc 不揮発性半導体多値メモリ装置
US6707713B1 (en) 2000-03-01 2004-03-16 Advanced Micro Devices, Inc. Interlaced multi-level memory
KR100386296B1 (ko) 2000-12-30 2003-06-02 주식회사 하이닉스반도체 멀티레벨을 가지는 플래쉬 메모리를 프로그램/리드하기위한 회로 및 그 방법
KR100512181B1 (ko) 2003-07-11 2005-09-05 삼성전자주식회사 멀티 레벨 셀을 갖는 플래시 메모리 장치와 그것의 독출방법 및 프로그램 방법
KR100597790B1 (ko) 2005-05-04 2006-07-06 삼성전자주식회사 멀티레벨 불휘발성 반도체 메모리 장치 및 이에 대한데이터 독출방법
KR100729357B1 (ko) 2005-08-25 2007-06-15 삼성전자주식회사 읽기 속도를 향상시킬 수 있는 플래시 메모리 장치
KR101198161B1 (ko) 2006-01-23 2012-11-12 엘지전자 주식회사 감시용 디지털 비디오 레코더에서의 램디스크를 이용한알람 녹화방법

Also Published As

Publication number Publication date
KR101437103B1 (ko) 2014-09-02
US20090190396A1 (en) 2009-07-30
US7764543B2 (en) 2010-07-27

Similar Documents

Publication Publication Date Title
KR101378349B1 (ko) 메모리 장치 및 메모리 데이터 읽기 방법
KR101665280B1 (ko) 메모리 디바이스에서의 에러 정정 동작들
KR101414494B1 (ko) 메모리 장치 및 메모리 데이터 읽기 방법
US9087608B2 (en) Method of programming non-volatile memory device and non-volatile memory device using the same
KR101528167B1 (ko) 메모리 장치 및 메모리 데이터 판정 방법
JP5090538B2 (ja) メモリ装置およびメモリデータ読み出し方法
US8479083B2 (en) Flash memory devices having multi-bit memory cells therein with improved read reliability
US7508704B2 (en) Non-volatile semiconductor storage system
KR101979734B1 (ko) 메모리 장치의 독출 전압 제어 방법 및 이를 이용한 데이터 독출 방법
US20090296486A1 (en) Memory device and memory programming method
KR101378602B1 (ko) 메모리 장치 및 메모리 프로그래밍 방법
US10320429B2 (en) Memory controller, memory system and memory control method
US9478298B2 (en) Memory system and method of reading data thereof
KR20090090063A (ko) 메모리 장치 및 메모리 데이터 읽기 방법
KR20090099265A (ko) 메모리 장치 및 데이터 판정 방법
KR20090117172A (ko) 메모리 장치 및 메모리 데이터 읽기 방법
KR101437103B1 (ko) 메모리 장치 및 메모리 데이터 읽기 방법
US8830750B1 (en) Data reading method, and control circuit, memory module and memory storage apparatus using the same
US20140050024A1 (en) Data reading method, and circuit, rewritable non-volatile memory module and memory storage apparatus using the same
US11941271B2 (en) Storage devices performing secure erase and operating methods thereof

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

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190731

Year of fee payment: 6