KR20090020995A - 비휘발성 메모리의 데이터 처리 장치 및 방법 - Google Patents

비휘발성 메모리의 데이터 처리 장치 및 방법 Download PDF

Info

Publication number
KR20090020995A
KR20090020995A KR1020070085686A KR20070085686A KR20090020995A KR 20090020995 A KR20090020995 A KR 20090020995A KR 1020070085686 A KR1020070085686 A KR 1020070085686A KR 20070085686 A KR20070085686 A KR 20070085686A KR 20090020995 A KR20090020995 A KR 20090020995A
Authority
KR
South Korea
Prior art keywords
page
bit
memory
memory cell
bit information
Prior art date
Application number
KR1020070085686A
Other languages
English (en)
Other versions
KR101270685B1 (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 KR1020070085686A priority Critical patent/KR101270685B1/ko
Priority to US12/196,717 priority patent/US7813173B2/en
Publication of KR20090020995A publication Critical patent/KR20090020995A/ko
Application granted granted Critical
Publication of KR101270685B1 publication Critical patent/KR101270685B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • 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

Abstract

본 발명은 비휘발성 메모리의 데이터 처리 장치 및 방법에 관한 것으로서, 더욱 상세하게는 하나의 메모리 셀에 적어도 2비트 이상의 정보를 저장할 수 있는 비휘발성 메모리에서 데이터의 유효성을 보장하기 위해 낭비되는 공간을 최소화할 수 있는 비휘발성 메모리의 데이터 처리 장치 및 방법에 관한 것이다.
본 발명의 실시예에 따른 비휘발성 메모리의 데이터 처리 장치는, 적어도 2비트 이상의 정보를 다수의 메모리 셀을 포함하는 비휘발성 메모리, 및 상기 비휘발성 메모리의 소정 워드 라인에서 비트 버퍼를 공유하는 제 1메모리 셀에 데이터를 기록한 다음, 상기 비트 버퍼를 공유하는 제 2메모리 셀에 데이터를 기록하는 제어부를 포함한다.
비휘발성 메모리, 페이지, MLC, MSB, LSB

Description

비휘발성 메모리의 데이터 처리 장치 및 방법{Apparatus and method for processing data of non-volitaile memory}
본 발명은 비휘발성 메모리의 데이터 처리 장치 및 방법에 관한 것으로서, 더욱 상세하게는 하나의 메모리 셀에 적어도 2비트 이상의 정보를 저장할 수 있는 비휘발성 메모리에서 데이터의 유효성을 보장하기 위해 낭비되는 공간을 최소화할 수 있는 비휘발성 메모리의 데이터 처리 장치 및 방법에 관한 것이다.
일반적으로, 가전 기기, 통신 기기, 셋탑 박스 등의 내장형 시스템(Embedded System)에서는 데이터를 저장하고 처리하기 위한 저장 매체로 비휘발성 메모리가 많이 사용되고 있다.
비휘발성 메모리 중에서 주로 사용되는 플래시 메모리는 전기적으로 데이터를 삭제하거나 다시 기록할 수 있는 비휘발성 기억 소자로서, 마그네틱 디스크 메모리를 기반으로 하는 저장 매체에 비해 전력 소모가 적으면서도 하드 디스크와 같은 빠른 액세스 타임(Access Time)을 가지며 크기가 작기 때문에 휴대 기기 등에 적합하다.
이러한 비휘발성 메모리에 데이터 비트가 저장되는 기본적인 메커니즘은, 메 모리 셀이다. 이러한 메모리 셀은 제어 게이트, 플로팅 게이트, 소스, 및 드레인을 포함한 단일 전계 효과 트랜지스터로 구성된다. 이때, 데이터 비트는 메모리 셀의 문턱 전압이 변화되도록 플로트 게이트 상의 전하량을 변경함으로써 저장된다. 또한, 메모리 셀은 제어 게이트의 워드 라인을 통해 선택 전압을 인가하여 판독된다.
일반적인 메모리 셀은 1비트를 통해 2가지의 상태를 저장하는 저장 능력을 제공한다. 다시 말해서, 메모리 셀은 인가되는 전압에 따라 데이터가 소거된 상태인 비트 1 또는 데이터가 저장된 상태인 비트 0을 저장하는 저장 능력을 제공한다.
비휘발성 메모리에서 비트 당 가격을 획기적으로 줄일 수 있는 기술이 1995년 2월, IEEE, ISSCC Digest of Technical Papers, pp. 132-133에 M.Bauer 등에 의해 A Multilevel-Cell 32Mb Flash Memory라는 제목으로 개제된 바 있으며, 이 문헌에는 메모리 셀 당 2비트를 통해 4가지 상태들의 저장 능력을 제공하는 기술이 포함되어 있다.
이와 같이, 메모리 셀당 2비트를 통해 4가지 상태들을 저장 능력을 가지는 비휘발성 메모리는 일반적으로 다중 레벨 셀(Multi Level Cell, 이하 MLC라 함) 비휘발성 메모리라 하며, 하나의 메모리 셀을 통해 2개의 페이지에 대한 비트 정보를 저장하게 된다. 또한, 하나의 메모리 셀에 대응되는 2개의 페이지는 각각 LSB(Least Significant Bit) 페이지 및 MSB(Most Significant Bit) 페이지라 칭하여지며, 비트 정보는 LSB 페이지부터 저장된다. 예를 들어, 2 레벨 MLC 플래시 메모리는 2비트를 이용하여 4개의 상태 즉, 00, 01, 10, 11을 구현하게 된다.
이러한 MLC 비휘발성 메모리는 다수의 셀이 직렬 연결된 다수의 비트 스트링 을 포함하고, 각 비트 스트링에서 동일한 오프셋을 가지는 메모리 셀들이 하나의 워드 라인을 이룬다.
이때, 비휘발성 메모리는 두 비트 스트링이 하나의 비트 버퍼를 공유하며, 페이지에 비트 정보를 저장하는 순서는 두 비트 스트링의 LSB 페이지부터 번갈아가면서 저장된다. 즉, 비트 버퍼를 공유하는 하나의 비트 스트링에 포함된 메모리 셀의 LSB 페이지에 비트 정보를 저장하고, 나머지 하나의 비트 스트링에 포함된 메모리 셀의 LSB 페이지에 비트 정보를 저장하는 것이다. 이후, LSB 페이지와 마찬가지로 두 비트 스트링에 포함된 메모리 셀의 MSB 페이지에 번갈아가며 비트 정보를 저장하게 된다.
이때, MLC 비휘발성 메모리에서는 MSB 페이지의 비트 정보 저장시 전원 공급 중단이나 시스템 오류로 인해 MSB 페이지의 비트 정보가 훼손되는 경우, 메모리 셀을 공유하는 LSB 페이지의 비트 정보가 훼손되는 경우가 발생한다. 따라서, 이러한 LSB 페이지의 비트 정보가 훼손되는 것을 방지하기 위하여 LSB 페이지의 비트 정보를 별도의 페이지에 백업하거나 페이지를 건너뛰어 비트 정보를 저장하게 된다.
즉, 도 1과 같이 MSB 페이지인 페이지 X의 비트 정보를 저장하는 도중 LSB 페이지인 페이지 E가 훼손되는 것을 방지하기 위하여 페이지 E를 백업하게 되는데, 이 경우 도 2와 같이 최대 2개의 페이지를 백업하게 된다. 또한, 도 3과 같이, LSB 페이지의 훼손을 방지하기 위하여 페이지를 건너뛰는 경우도 도 4와 같이, 최대 2개의 페이지를 건너뛰는 경우가 발생하게 된다.
이와 같이, LSB 페이지를 백업하거나 건너뛰는 것은, 양 데이터가 연관성이 없을 때 연관성이 없는 비트 정보로 인해 정상적인 비트 정보가 훼손되는 것을 방지하기 위해서이다. 예를 들어, 전술한 도 1에서 페이지 A, B, C, D 및 E가 연관된 데이터이고, 페이지 X가 별도의 데이터인 경우, 페이지 X의 비트 정보 저장시에 연관이 없는 페이지 E의 비트 정보가 훼손될 수 있기 때문이다.
그러나, MSB 페이지의 비트 정보 저장시, LSB 페이지의 훼손을 방지하기 위하여 페이지를 백업하거나 건너뛰는 경우 최대 2개의 페이지가 낭비되기 때문에 비휘발성 메모리의 공간 사용 효율이 저하되는 문제점이 있다.
한국 공개 특허 제2005-007653호는 2번의 LSB 페이지 독출 동작과 1번의 MSB 페이지 독출 동작을 수행하며, 프로그램 방법은 1번의 LSB 페이지 동작과 1번의 MSB 프로그램 동작이 수행되는 멀티 레벨 셀을 가지는 플래시 메모리와 그것의 독출 방법을 개시하고 있으나, 여전히 전술한 바와 같은 공간 낭비를 해결하기 위한 방안은 제안되고 있지 않다.
본 발명은 페이지의 비트 정보 저장 순서를 변경하여 MLC 비휘발성 메모리에서 메모리 셀을 공유하는 MSB 페이지의 훼손으로 인해 LSB 페이지가 훼손되는 것을 방지하기 위하여 추가적으로 사용되는 공간의 낭비를 최소화시킬 수 있는 비휘발성 메모리의 데이터 처리 장치 및 방법을 제공하는데 그 목적이 있다.
본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해되어 질 수 있을 것이다.
상기 목적을 달성하기 위하여, 본 발명의 실시예에 따른 비휘발성 메모리의 데이터 처리 장치는, 적어도 2비트 이상의 정보를 다수의 메모리 셀을 포함하는 비휘발성 메모리, 및 상기 비휘발성 메모리의 소정 워드 라인에서 비트 버퍼를 공유하는 제 1메모리 셀에 데이터를 기록한 다음, 상기 비트 버퍼를 공유하는 제 2메모리 셀에 데이터를 기록하는 제어부를 포함한다.
또한, 상기 목적을 달성하기 위하여, 본 발명의 실시예에 따른 비휘발성 메모리의 데이터 처리 방법은, 적어도 2비트 이상의 정보를 다수의 메모리 셀을 포함하는 비휘발성 메모리의 소정 워드 라인에서 비트 버퍼를 공유하는 제 1메모리 셀에 데이터를 기록하는 단계, 및 상기 비트 버퍼를 공유하는 제 2메모리 셀에 데이터를 기록하는 단계를 포함한다.
상기한 바와 같은 본 발명의 비휘발성 메모리의 데이터 처리 장치 및 방법에 따르면 다음과 같은 효과가 하나 혹은 그 이상 있다.
MLC 비휘발성 메모리에서 MSB 페이지에 발생된 장애로 인해, MSB 페이지와 메모리 셀을 공유하는 LSB 페이지의 데이터가 훼손되는 것을 방지하기 위하여 LSB 페이지의 비트 정보를 백업하거나 건너뛰어 저장할 때 필요로 하는 공간을 최소화하여 비휘발성 메모리에서의 공간 활용 효율을 향상시킬 수 있는 효과가 있다.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범수를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
이하, 본 발명의 실시예들에 의하여 비휘발성 메모리의 데이터 처리 장치 및 방법을 설명하기 위한 블록도 또는 처리 흐름도에 대한 도면들을 참고하여 본 발명에 대해 설명하도록 한다. 이 때, 처리 흐름도 도면들의 각 블록과 흐름도 도면들 의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있음을 이해할 수 있을 것이다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도 블록(들)에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도 블록(들)에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실행예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
도 5는 본 발명의 실시예에 따른 비휘발성 메모리의 데이터 처리 장치가 도시된 도면이다.
도시된 바와 같이, 본 발명의 실시예에 따른 비휘발성 메모리의 데이터 처리 장치(100)는, 비휘발성 메모리(110), 제어부(120) 및 사용자 입력부(130)를 포함할 수 있다.
비휘발성 메모리(110)는, 하나의 메모리 셀에 적어도 2비트 이상의 정보를 저장할 수 있는 MLC 비휘발성 메모리(예를 들어, MLC NAND 플래시 메모리 등)인 경우를 예를 들어 설명하기로 한다. 즉, 비휘발성 메모리(110)에서 하나의 메모리 셀은 두 개의 페이지에 대한 비트 정보를 저장할 수 있는 것이다.
예를 들어, MLC NAND 플래시 메모리에서 메모리 셀이 2비트 정보를 저장하는 경우, 동일한 메모리 셀에 대응하는 페이지들은 서로 바인딩되었다고 하며, 메모리 셀은 소정 블록에 포함된 페이지 중 서로 바인딩된 LSB 페이지 및 MSB 페이지에 대한 비트 정보를 저장할 수 있다. 이때, LSB 페이지와 MSB 페이지는 서로 연속적으로 위치될 수도 있고, 그렇지 않을 수도 있다.
또한, 본 발명의 실시예에서 메모리 셀이 2비트로 구현되는 4가지 상태를 통해 비트 정보를 저장하는 경우를 예를 들어 설명하고 있으나, 이는 본 발명의 이해를 돕기 위한 일 예에 불과한 것으로 2비트 이상의 비트 정보를 저장할 수도 있다.
도 6은 본 발명의 실시예에 따른 비휘발성 메모리의 구조가 도시된 도면이 다.
도시된 바와 같이, 본 발명의 실시예에 따른 비휘발성 메모리는(110)는, 다수의 메모리 셀이 직렬로 연결된 다수의 비트 스트링(BS1, BS2, BS3, BS4, BS5, BS6, BS7, BS8)를 포함하며, 두 개의 비트 스트링이 하나의 비트 버퍼(B 1, B2, B3, B4)를 공유한다. 또한, 비휘발성 메모리(110)는 다수의 비트 스트링(BS1, BS2, BS3, BS4, BS5, BS6, BS7, BS8)에서 동일한 오프셋을 가지는 메모리 셀들로 이루어지는 워드 라인을 포함할 수 있다.
이하, 본 발명의 실시예에서는 전술한 다수의 비트 스트링(BS1, BS2, BS3, BS4, BS5, BS6, BS7, BS8) 중에서 제 1비트 스트링(BS1) 및 제 2비트 스트링(BS2)을 예를 들어 설명하기로 하며, 0-31(WL00 ~ WL31)까의 워드 라인 중에서 워드 라인 0(WL00)을 예를 들어 설명하기로 한다. 또한, 워드 라인 0(WL00)에 포함된 각 비트 스트링(BS1, BS2, BS3, BS4, BS5, BS6, BS7, BS8)의 메모리 셀은 각각 C1, C2, C3, C4, C5, C6, C7, C8이라 칭하기로 하며, 본 발명의 실시예에서는 제 1비트 스트링(BS1) 및 제 2비트 스트링(BS2)에 포함된 제 1메모리 셀(C1) 및 제 2메모리 셀(C2)를 예를 들어 설명하기로 한다.
이때, 전술한 도 6의 비휘발성 메모리(110)는, 워드 라인은 00-31(WL00 ~ WL31)까지 총 32개를 포함하며, 각 워드 라인은 4개의 페이지에 대한 비트 정보가 저장되는 것으로 이해될 수 있다. 즉, 전술한 도 6에서 각 메모리 셀에 표시된 숫자는 페이지 번호로 이해될 수 있으며, 제 1메모리 셀(C1)은 페이지 0 및 페이지 1에 대한 비트 정보가 저장되고, 제 2메모리 셀(C2)은 페이지 2 및 페이지 3에 대한 비트 정보가 저장될 수 있는 것이다. 따라서, 전술한 도 6은 하나의 물리 블록에 총 128개의 페이지가 포함되는 것을 알 수 있다.
이러한 비휘발성 메모리(110)는 페이지에 비트 정보를 저장할 때 데이터의 유효성 보장을 위하여 낮은 번호의 워드 라인부터 저장되어야만 한다. 예를 들어, x번째의 워드 라인에 비트 정보가 저장되었다면, x보다 큰 번호의 워드 라인에 비트 정보를 저장해야만 한다. 이는 각 메모리 셀간의 간섭을 최소화하기 위한 것으로, 이를 지켜주지 않으면 해당 물리 블록 내의 비트 정보에 대한 유효성을 보장해줄 수 없게 된다. 이는 동일한 워드 라인에서는 비트 정보의 저장 순서가 자유로워진다는 것으로 이해될 수 있다.
제어부(120)는 전술한 바와 같은 비휘발성 메모리(110)에 비트 정보를 저장할 때, 워드 라인의 순서에 따라 저장되어야한 한다는 조건하에서 MLC 특성상 MSB 페이지의 비트 정보 저장시 에러가 발생한 경우, 메모리 셀을 공유하는 LSB 페이지에 정상적으로 저장된 비트 정보의 유효성을 보장하기 위하여 필요로 하는 백업이나 건너뛰어야 하는 페이지 수를 최소화시키도록 하는 순서에 따라 비트 정보를 저장할 수 있다.
도 7은 본 발명의 실시예에 따른 비트 정보 저장 순서가 도시된 도면이다. 이때, 도 7은 페이지 1, 페이지 2, 페이지 3, 페이지 4 및 페이지 5가 연관된 데이터이고, 페이지 X 및 페이지 Y가 페이지 1, 페이지 2, 페이지 3, 페이지 4 및 페이지 5와는 별도의 데이터이며, 4개의 페이지가 하나의 워드 라인에 저장되는 경우로 이해될 수 있다. 또한, 도 7에서 화살표 방향은 비트 정보를 저장하는 순서로 이해 될 수 있다.
도시된 바와 같이, 제어부(120)는 기존에는 비트 버퍼를 공유하는 비트 스트링에 번갈아가면서 비트 정보를 저장한 것에 비하여, 본 발명에서는 비트 버퍼를 공유하는 두 비트 스트링 중 어느 하나의 메모리 셀에 해당하는 LSB 페이지 및 MSB 페이지에 대한 비트 정보를 모두 저장한 다음, 비트 버퍼를 공유하는 두 비트 스트링 중 나머지 하나의 메모리 셀에 해당하는 LSB 페이지 및 MSB 페이지에 대한 비트 정보를 저장할 수 있다.
따라서, 도 8과 같이, 하나의 메모리 셀을 공유하는 LSB 페이지에 대한 비트 정보를 저장한 다음, MSB 페이지에 대한 비트 정보를 저장할 때, LSB 페이지에 대한 비트 정보의 유효성을 보장하기 위하여 LSB 페이지에 저장된 비트 정보를 백업할 경우, 최대 하나의 페이지만이 백업되기 때문에 LSB 페이지에 저장된 비트 정보의 유효성을 보장하기 위하여 필요한 공간이 감소하게 된다.
또한, 도 9와 같이, 하나의 메모리 셀을 공유하는 LSB 페이지에 대한 비트 정보를 저장한 다음, MSB 페이지에 대한 비트 정보를 저장할 때, LSB 페이지에 대한 비트 정보의 유효성을 보장하기 위하여 건너뛰어야 하는 페이지 또하나 최대 하나의 페이지만을 건너뛰기 때문에 낭비되는 공간이 감소하게 된다.
따라서, 전술한 도 8 및 도 9와 같이, 기존에는 최대 2개의 페이지를 백업하거나 건너뛰는 반면, 본 발명은 최대 하나의 페이지만을 백업하거나 건너뛰기 때문에 LSB 페이지의 유효성을 보장하기 위해 필요로 하는 공간이 감소되어 이로 인한 공간 낭비를 감소시킬 수 있다.
한편, 제어부(120)의 이러한 페이지 비트 정보 저장 순서는, 서로 연관되지 않은 데이터 저장시 유용하게 사용될 수 있다. 다시 말해서, 페이지 1, 페이지 2, 페이지 3, 페이지 4, 페이지 5 및 페이지 6을 저장한 다음, 페이지 X를 저장할 때 서로 연관이 없는 페이지 6의 비트 정보에 에러가 발생할 수 있는데, 본 발명의 페이지 비트 정보 저장 순서에 따르면, 이러한 에러가 발생되는 것을 미연에 방지할 수 있게 된다.
이때, 전술한 도 7 내지 도 9에서 페이지의 수가 서로 다르게 도시되어 있으나, 이는 본 발명의 이해를 돕기 위한 일예에 불과한 것으로 도 7 내지 도 9에서 페이지 번호가 숫자 및 영문자로 된 것은 서로 별도의 데이터임을 나타내기 위해서이다. 또한, 페이지 번호가 숫자인 것들이 서로 연관된 데이터이고, 페이지 번호가 영문자인 것들이 서로 연관된 데이터인 것으로 이해될 수 있다.
한편, 제어부(120)는 사용자 입력부(130)를 통해서 사용자가 페이지 1부터 페이지 6까지 비트 정보를 저장하려는 경우, 사용자는 페이지 1부터 페이지 6까지에 대한 비트 정보가 기존과 같이 저장되는 것으로 알지만, 실제 페이지 비트 정보 저장 순서는 비트 버퍼를 공유하는 비트 스트링에서 하나의 비트 스트링에 포함된 메모리 셀의 LSB 페이지 및 MSB 페이지를 모두 저장하고, 나머지 비트 스트링에 포함된 메모리 셀의 LSB 페이지 및 MSB 페이지를 저장할 수 있도록 도 10와 같은 변환 테이블을 사용할 수 있다.
이러한 변환 테이블은 가상 페이지 오프셋 및 실제 페이지 오프셋 필드를 가지고 있으며, 제어부(120)는 이러한 변환 테이블에 따라 페이지의 비트 정보 저장 순서를 변경할 수 있는 것이다.
이러한 변환 테이블은 비트 버퍼를 공유하는 두 비트 스트링에서 몇 개의 메모리 셀에 대해 비트 정보를 저장하느냐에 따라 달라질 수 있다. 예를 들어, 하나의 워드 라인에 대해서 비트 버퍼를 공유하는 두 개의 비트 스트링 중 하나의 비트 스트링에 대한 메모리 셀에 비트 정보를 저장하는 경우와 두개의 워드 라인에 대해서 비트 버퍼를 공유하는 두 개의 비트 스트링 중 하나의 비트 스트링에 대한 메모리 셀에 비트 정보를 저장하는 경우에 따라 달라질 수 있는 것이다.
표 1 및 표 2는 전술한 바와 같이, 몇 개의 워드 라인에 대해 비트 정보를 저장하느냐에 따라 달라지는 변환 테이블을 예를 든 것이며, 표 1은 하나의 워드 라인, 표 2는 두 개의 워드 라인에 대한 일 예로 이해될 수 있다.
[표 1]
Figure 112007061709802-PAT00001
[표 2]
Figure 112007061709802-PAT00002
또한, 본 발명의 실시예에 따른 비휘발성 메모리의 데이터 처리 장치(100)는 하나의 블록에 총 128개의 페이지를 가지는 물리 블록을 포함하는 비휘발성 메모리를 예를 들어 설명하고 있으나, 이는 본 발명의 이해를 돕기 위한 일 예에 불과한 것으로 이에 한정되지 않고 다양한 타입의 MLC 플래시 메모리에 적용될 수 있다.
도 11은 본 발명의 실시예에 따른 비휘발성 메모리의 데이터 처리 방법이 도시된 도면이다.
도시된 바와 같이, 본 발명의 실시예에 따른 비휘발성 메모리의 데이터 처리 방법은, 먼저 사용자가 사용자 입력부(130)를 통해 소정의 데이터에 대한 저장을 요청한다(S110).
제어부(120)는 사용자의 요청에 따라 비휘발성 메모리(110)에서 데이터를 저 장할 물리 블록을 할당받고, 할당받은 물리 블록의 페이지에 변환 테이블을 이용하여 비트 정보를 저장하게 된다(S120). 이때, 제어부(120)는 사용자에게는 순차적으로 페이지에 비트 정보를 저장하는 것으로 알리게 되나, 실제적으로는 전술한 변환 테이블을 이용하여 그에 따른 순서대로 페이지에 비트 정보를 저장하게 된다.
예를 들어, 제어부(120)는 제 1비트 스트링(BS1)의 제 1메모리 셀(C1)에 LSB 페이지 비트 정보 및 MSB 페이지 비트 정보를 모두 저장한 다음, 비트 버퍼(B1)를 공유하는 제 2비트 스트링(BS2)의 제 2메모리 셀(C2)에 LSB 페이지 비트 정보 및 MSB 페이지 비트 정보를 저장하게 된다.
이와 같이, 비트 버퍼(B1)를 공유하는 두 비트 스트링의 메모리 셀에 대하여 각각 LSB 페이지 비트 정보 및 MSB 페이지 비트 정보를 한꺼번에 번갈아가면 저장하는 것은, 비휘발성 메모리(110)에서 MSB 페이지의 비트 정보가 훼손되었을 때, 메모리 셀을 공유하는 LSB 페이지의 비트 정보가 훼손되는 것을 방지하기 위하여 LSB 페이지의 비트 정보를 백업하거나 건너뛰어 저장할 때 낭비되는 공간을 최소화하기 위해서이다.
제어부(120)는 전술한 S120 단계에서 소정 메모리 셀의 MSB 페이지의 비트 정보를 저장하는 도중, 예상치 못한 전원 공급 중단이나 시스템 오류 등과 같은 장애가 발생하는 경우에 MSB 페이지와 바인딩된 LSB 페이지의 훼손을 방지하기 위하여 MSB 페이지와 메모리 셀을 공유하는 LSB 페이지에 대하여 최대 하나의 LSB 페이지를 백업하거나 건너뛰어 저장하게 된다. 즉, 서로 연관되지 않은 데이터로 인해 LSB 페이지가 훼손되는 것을 방지하기 위하여 최대 하나의 LSB 페이지를 백업하거 나 건너뛰어 저장하는 것이다.
결국, 본 발명의 실시예에 따른 비휘발성 메모리의 데이터 관리 방법은, 별도의 하드웨어적인 변경없이 페이지의 비트 정보를 저장하는 순서만을 변경하여 워드 라인 순서대로 저장하는 원칙은 위배되지 않으면서도 LSB 페이지의 유효성을 보장하기 위해 사용되는 공간을 최소화하여 비휘발성 메모리(110)에서의 공간 활용 효율을 향상시키게 된다.
이상과 같이 본 발명에 따른 비휘발성 메모리의 데이터 처리 장치 및 방법을 예시된 도면을 참조로 하여 설명하였으나, 본 명세서에 개시된 실시예와 도면에 의해 본 발명은 한정되지 않으며 그 발명의 기술사상 범위내에서 당업자에 의해 다양한 변형이 이루어질 수 있음은 물론이다.
도 1 및 도 2는 종래의 기술에 따른 MLC 비휘발성 메모리에서의 LSB 페이지의 유효성을 보장을 위해 LSB 페이지를 백업하는 과정이 도시된 도면.
도 3 및 도 4는 종래의 기술에 따른 MLC 비휘발성 메모리에서의 LSB 페이지의 유효성을 보장을 위해 LSB 페이지를 건너뛰어 저장하는 과정이 도시된 도면.
도 5는 본 발명의 실시예에 따른 비휘발성 메모리의 데이터 처리 장치가 도시된 도면.
도 6은 본 발명의 실시예에 따른 MLC 비휘발성 메모리가 도시된 도면.
도 7은 본 발명의 실시예에 따른 MLC 비휘발성 메모리에서 페이지 저장 순서가 도시된 도면.
도 8은 본 발명의 실시예에 따른 MLC 비휘발성 메모리에서의 LSB 페이지의 유효성을 보장을 위해 LSB 페이지를 백업하는 과정이 도시된 도면.
도 9는 본 발명의 실시예에 따른 MLC 비휘발성 메모리에서의 LSB 페이지의 유효성을 보장을 위해 LSB 페이지를 건너뛰어 저장하는 과정이 도시된 도면.
도 10은 본 발명의 실시예에 따른 변환 테이블이 도시된 도면.
도 11은 본 발명의 실시예에 따른 비휘발성 메모리의 데이터 처리 방법이 도시된 도면.
<도면의 주요 부분에 관한 부호의 설명>
110: 비휘발성 메모리 120: 제어부
130: 사용자 입력부

Claims (11)

  1. 적어도 2비트 이상의 정보를 다수의 메모리 셀을 포함하는 비휘발성 메모리; 및
    상기 비휘발성 메모리의 소정 워드 라인에서 비트 버퍼를 공유하는 제 1메모리 셀에 데이터를 기록한 다음, 상기 비트 버퍼를 공유하는 제 2메모리 셀에 데이터를 기록하는 제어부를 포함하는 비휘발성 메모리의 데이터 처리 장치.
  2. 제 1 항에 있어서,
    상기 비휘발성 메모리는, 상기 다수의 메모리 셀이 직렬로 연결되며, 상기 비트 버퍼를 공유하는 제 1비트 스트링 및 제 2비트 스트링을 포함하고,
    상기 제 1비트 스트링 및 상기 제 2비트 스트링에서 동일한 오프셋을 가지는 상기 메모리 셀로 이루어지는 워드 라인을 포함하는 비휘발성 메모리의 데이터 처리 장치.
  3. 제 1 항에 있어서,
    상기 메모리 셀은 2비트 정보를 저장하는 비휘발성 메모리의 데이터 처리 장치.
  4. 제 1 항에 있어서,
    상기 제 1메모리 셀 및 상기 제 2메모리 셀은 각각 LSB 페이지 및 MSB 페이지의 비트 정보가 기록되고,
    상기 제어부는, 상기 제 1메모리셀에 상기 LSB 페이지 및 MSB 페이지의 비트 정보를 기록한 다음 상기 제 2메모리 셀의 LSB 페이지 및 MSB 페이지에 비트 정보를 기록하는 비휘발성 메모리의 데이터 처리 장치.
  5. 제 2 항에 있어서,
    상기 제어부는, 상기 워드 라인의 오프셋 순서에 따라 상기 데이터를 기록하는 비휘발성 메모리의 데이터 처리 장치.
  6. 적어도 2비트 이상의 정보를 다수의 메모리 셀을 포함하는 비휘발성 메모리의 소정 워드 라인에서 비트 버퍼를 공유하는 제 1메모리 셀에 데이터를 기록하는 단계; 및
    상기 비트 버퍼를 공유하는 제 2메모리 셀에 데이터를 기록하는 단계를 포함하는 비휘발성 메모리의 데이터 처리 방법.
  7. 제 6 항에 있어서,
    상기 비휘발성 메모리는, 상기 다수의 메모리 셀이 직렬로 연결되며, 상기 비트 버퍼를 공유하는 제 1비트 스트링 및 제 2비트 스트링을 포함하고,
    상기 제 1비트 스트링 및 상기 제 2비트 스트링에서 동일한 오프셋을 가지는 상기 메모리 셀로 이루어지는 워드 라인을 포함하는 비휘발성 메모리의 데이터 처리 방법.
  8. 제 6 항에 있어서,
    상기 메모리 셀은 2비트 정보를 저장하는 비휘발성 메모리의 데이터 처리 방법.
  9. 제 6 항에 있어서,
    상기 제 1메모리셀에 데이터를 기록하는 단계는, 상기 제 1메모리셀에 상기 LSB 페이지 및 MSB 페이지의 비트 정보를 기록하는 단계를 포함하는 비휘발성 메모리의 데이터 처리 방법.
  10. 제 6 항에 있어서,
    상기 제 2메모리에 데이터를 기록하는 단계는, 상기 제 2메모리 셀의 LSB 페이지 및 MSB 페이지에 비트 정보를 기록하는 단계를 포함하는 비휘발성 메모리의 데이터 처리 방법.
  11. 제 7 항에 있어서,
    상기 워드 라인의 오프셋 순서에 따라 상기 데이터를 기록하는 단계를더 포함하는 비휘발성 메모리의 데이터 처리 방법.
KR1020070085686A 2007-08-24 2007-08-24 비휘발성 메모리의 데이터 처리 장치 및 방법 KR101270685B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020070085686A KR101270685B1 (ko) 2007-08-24 2007-08-24 비휘발성 메모리의 데이터 처리 장치 및 방법
US12/196,717 US7813173B2 (en) 2007-08-24 2008-08-22 Multi-level cell memory devices and methods using sequential writing of pages to cells sharing bit buffers

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070085686A KR101270685B1 (ko) 2007-08-24 2007-08-24 비휘발성 메모리의 데이터 처리 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20090020995A true KR20090020995A (ko) 2009-02-27
KR101270685B1 KR101270685B1 (ko) 2013-06-03

Family

ID=40407218

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070085686A KR101270685B1 (ko) 2007-08-24 2007-08-24 비휘발성 메모리의 데이터 처리 장치 및 방법

Country Status (2)

Country Link
US (1) US7813173B2 (ko)
KR (1) KR101270685B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9159429B2 (en) 2013-09-10 2015-10-13 SK Hynix Inc. Data storage system and method of operating the same
US9460005B2 (en) 2012-12-04 2016-10-04 Samsung Electronics Co., Ltd. Storage devices including memory device and methods of operating the same
US11003544B2 (en) 2017-11-24 2021-05-11 SK Hynix Inc. Memory system and method of operating the same

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102106959B1 (ko) 2013-02-21 2020-05-07 에프아이오 세미컨덕터 테크놀로지스, 엘엘씨 멀티 레벨 셀 비휘발성 메모리 시스템
US10262728B2 (en) * 2016-10-07 2019-04-16 Samsung Electronics Co., Ltd. Mapping bits to memory cells using sector spreading
KR20180076605A (ko) * 2016-12-28 2018-07-06 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100206696B1 (ko) 1995-12-21 1999-07-01 김광호 불휘발성 반도체 메모리의 프로그램 방법
JP4023953B2 (ja) * 1999-06-22 2007-12-19 株式会社ルネサステクノロジ 不揮発性半導体記憶装置
US7526599B2 (en) * 2002-10-28 2009-04-28 Sandisk Corporation Method and apparatus for effectively enabling an out of sequence write process within a non-volatile memory system
KR100512181B1 (ko) 2003-07-11 2005-09-05 삼성전자주식회사 멀티 레벨 셀을 갖는 플래시 메모리 장치와 그것의 독출방법 및 프로그램 방법
JP2005285191A (ja) 2004-03-29 2005-10-13 Nec Electronics Corp 不揮発性半導体記憶装置及びその駆動方法
KR20060086717A (ko) 2005-01-27 2006-08-01 주식회사 팬택 무선통신 단말기에서의 디스플레이 정보 업데이트 방법
JP4177847B2 (ja) * 2006-01-06 2008-11-05 株式会社東芝 不揮発性半導体記憶装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9460005B2 (en) 2012-12-04 2016-10-04 Samsung Electronics Co., Ltd. Storage devices including memory device and methods of operating the same
US9159429B2 (en) 2013-09-10 2015-10-13 SK Hynix Inc. Data storage system and method of operating the same
US11003544B2 (en) 2017-11-24 2021-05-11 SK Hynix Inc. Memory system and method of operating the same

Also Published As

Publication number Publication date
US20090059662A1 (en) 2009-03-05
KR101270685B1 (ko) 2013-06-03
US7813173B2 (en) 2010-10-12

Similar Documents

Publication Publication Date Title
KR100736103B1 (ko) 비휘발성 메모리, 상기 비휘발성 메모리의 데이터 유효성을판단하는 장치 및 방법
US8423706B2 (en) Apparatus and method to prevent data loss in nonvolatile memory
KR101556779B1 (ko) 저장 장치의 액세스 방법
CN103632722B (zh) 存储系统及其编程方法和包括存储系统的计算系统
KR101464338B1 (ko) 불휘발성 메모리 장치를 이용한 데이터 저장장치, 메모리시스템, 그리고 컴퓨터 시스템
US7583545B2 (en) Method of storing data in a multi-bit-cell flash memory
CN103502958B (zh) 逻辑地址转译
US8090900B2 (en) Storage device and data management method
US8751735B2 (en) Protection against data corruption for multi-level memory cell (MLC) flash memory
KR20160074237A (ko) 데이터 저장 장치 및 그것의 동작 방법
JP2008181380A (ja) メモリシステムおよびその制御方法
KR20080067834A (ko) 프로그램 방식을 선택할 수 있는 메모리 시스템
EP2115594A1 (en) Memory system
US20130176785A1 (en) Method for accessing a flash memory, and associated flash memory system
KR101270685B1 (ko) 비휘발성 메모리의 데이터 처리 장치 및 방법
KR20130010343A (ko) 플래시 메모리 장치
US7945723B2 (en) Apparatus and method of managing mapping table of non-volatile memory
US20130205073A1 (en) Memory device, memory system, and programming method thereof
US8738848B2 (en) Methods, storage devices, and systems for promoting the endurance of non-volatile solid-state memory components
KR100703806B1 (ko) 비휘발성 메모리, 이를 위한 데이터 유효성을 판단하는장치 및 방법
Lee et al. Adaptive paired page prebackup scheme for mlc nand flash memory
KR101996136B1 (ko) 빠른 판독 다중 레벨 3d nand가 수명 용량 향상시키는 것을 가능하게 하는 데이터 매핑
US10783970B2 (en) Consolidation of copy-back and write in PRAM blocks
US8885406B2 (en) Memory device, memory control device, and memory control method
KR20080100079A (ko) 낸드 플래시 메모리에 프로그램 코드 및 매스 데이터를기록하여 시스템을 운영하는 방법 및 상기 방법을 수행하는시스템

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee