KR20000020028A - 플래시 메모리의 엔코딩 및 디코딩 방법 - Google Patents

플래시 메모리의 엔코딩 및 디코딩 방법 Download PDF

Info

Publication number
KR20000020028A
KR20000020028A KR1019980038438A KR19980038438A KR20000020028A KR 20000020028 A KR20000020028 A KR 20000020028A KR 1019980038438 A KR1019980038438 A KR 1019980038438A KR 19980038438 A KR19980038438 A KR 19980038438A KR 20000020028 A KR20000020028 A KR 20000020028A
Authority
KR
South Korea
Prior art keywords
ecc
memory array
user data
sector
encoding
Prior art date
Application number
KR1019980038438A
Other languages
English (en)
Other versions
KR100328818B1 (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 KR1019980038438A priority Critical patent/KR100328818B1/ko
Publication of KR20000020028A publication Critical patent/KR20000020028A/ko
Application granted granted Critical
Publication of KR100328818B1 publication Critical patent/KR100328818B1/ko

Links

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/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Abstract

본 발명은 플래시 메모리의 엔코딩 및 디코딩 방법에 관한 것으로, 종래의 기술에 있어서는 메모리 어레이의 오버헤드 영역의 데이터중 디펙션 정보등 섹터의 상태를 나타내는 정보는 에러를 대비한 어떠한 정보도 포함되어 있지 않으므로 이 영역에 에러가 발생했을 때는 복구가 불가능할 뿐 아니라, 상기와 같은 이유로 섹터의 상태정보를 저장하는 위치가 디펙트 프리 영역(defect free area)으로만 제한 되는 문제점이 있었다. 따라서, 본 발명은 오버헤드 영역을 따로 구분하지 않고 데이터 엔코딩시 섹터의 상태정보를 함께 엔코딩시킴으로써 오버헤드 영역의 설정이 자유롭게 되고, 섹터내의 어떤 부분에서 발생된 에러도 ECC에 의한 에러정정이 가능해져 플래시 메모리의 에러 대처 능력을 향상시키는 효과가 있다.

Description

플래시 메모리의 엔코딩 및 디코딩 방법
본 발명은 플래시 메모리의 엔코딩 및 디코딩 방법에 관한 것으로, 특히 에러 발생시 메모리 셀의 오버헤드 영역에 대해서도 에러 정정 코드(ECC : Error Correction Code)를 이용하여 에러를 보정할 수 있도록 한 플래시 메모리의 엔코딩 및 디코딩 방법에 관한 것이다.
일반적으로 플래시 메모리 시스템은 유저 데이터 및 메모리의 각종 상태 정보를 저장할 수 있는 다수의 메모리 셀로 된 메모리 어레이와 상기 메모리 셀에 데이터의 리드 및 라이트 수행시 주소 변환 및 그 동작을 제어하는 메모리 제어부와 상기의 각종 제어시 발생되는 데이터등을 필요한 조작을 위해 임시 저장하는 버퍼와 에러 발생시 ECC를 이용하여 에러를 보정하는 ECC 유니트로 구성이 되는데, 특히 상기 메모리 어레이는 도1에 도시된 바와 같이 다수개의 섹터(sector0∼sectorn)로 구분되고, 각 섹터는 또한 호스트 또는 외부의 시스템에서 제공하는 데이터를 저장하기 위한 유저 영역(user area)과; 메모리를 관리하기 위한 ECC 패리티 정보(정보 전달 동작 중에 에러가 발생했을 때 이를 검출하기 위해 이용되는 것) 및 디펙션 정보 등을 저장하는 오버헤드 영역(overhead area)으로 구성되어 있다.
도2는 종래 방법에 의한 플래시 메모리의 엔코딩 및 디코딩 과정을 개략적으로 보인 모식도로서, 이에 도시된 바와 같이 엔코딩 과정은 일단, 호스트(50)로 부터 유저 데이터를 받아 버퍼(10)에 저장하는 단계(ST1)와; 상기 단계(ST1)에서 버퍼(10)에 저장된 모든 유저 데이터에서 각각의 ECC 블록에 해당하는 정보를 메모리 어레이(20)와 ECC 유니트(30)로 입력하여 ECC 패리티를 생성 후 그 패리티를 임시저장하는 단계(ST2)와; 상기 단계(ST2)에서 임시로 저장된 패리티 정보와 각 섹터의 상태정보를 메모리 어레이(20)의 오버헤드 영역에 저장하는 단계(ST3)로 이루어 진다.
이때, 상기 과정에서 보듯이 섹터의 상태정보는 에러에 대비하기 위한 어떠한 동작도 포함되어 있지 않다.
도3은 상기 도2의 엔코딩 과정에서 메모리 어레이(20)에 기록되는 섹터정보의 배열을 보인 구성도로서, 이에 도시된 바와 같이 상기 도1에서 설명한 유저영역은 n개의 ECC 블록으로 나뉘어져 있고, 오버헤드 영역에는 상기 각 ECC 블록에 대한 패리티 및 디펙트 정보 등 각종 정보들이 나열되어 있다.
이와 같이 논리적으로 구분된 각 영역의 정보들의 디코딩 과정을 보면 도2에서 메모리 제어부(40)가 오버헤드 영역에 저장되어 있는 패리티 및 각각의 ECC 블록에 해당되는 데이터를 함께 리드하는 단계(ST4)와; 상기 단계(ST4)에서 리드된 패리티를 ECC 유니트(30)로 전송하여 신드롬(Syndrome)을 계산하는 단계(ST5)와; 상기 단계(ST5)에서 계산된 신드롬이 0이 아닐 경우 즉, 에러가 발생한 경우 ECC를 이용하여 에러 정정을 수행하는 단계(ST6)로 이루어 졌다.
여기서, 신드롬(Syndrome)이란 상기의 패리티를 이용하여 디코딩된 정보의 열중에서 오류가 발생한 위치를 찾아 내는 것이다.
그러나, 상기 종래의 기술에 있어서는 메모리 어레이의 오버헤드 영역의 데이터중 디펙션 정보등 섹터의 상태를 나타내는 정보는 에러를 대비한 어떠한 정보도 포함되어 있지 않으므로 이 영역에 에러가 발생했을 때는 복구가 불가능할 뿐 아니라, 상기와 같은 이유로 섹터의 상태정보를 저장하는 위치가 디펙트 프리 영역(defect free area)으로만 제한 되는 문제점이 있었다.
따라서, 본 발명은 상기와 같은 종래의 문제점을 해결하기 위하여 창출한 것으로, 오버헤드 영역을 따로 구분하지 않고 데이터 엔코딩시 섹터의 상태정보를 함께 엔코딩시킴으로써 오버헤드 영역의 설정이 자유롭게 되고, 섹터내의 어떤 부분에서 발생된 에러도 ECC에 의한 에러정정이 가능한 플래시 메모리의 엔코딩 및 디코딩 방법을 제공 하는데 그 목적이 있다.
도1은 플래시 메모리의 기본 어레이 구성을 보인 예시도.
도2는 종래 방법에 의한 플래시 메모리의 엔코딩 및 디코딩 과정을 개략적으로 보인 모식도.
도3은 상기 도2의 엔코딩 과정에서 메모리 어레이에 기록되는 섹터정보의 배열을 보인 구성도.
도4는 본 발명에 의한 엔코딩 및 디코딩 과정을 개략적으로 보인 모식도.
도5는 상기 도4의 엔코딩 과정에 의해서 메모리 어레이에 기록되는 섹터정보의 배열을 보인 구성도.
이와 같은 목적을 달성하기 위한 본 발명의 엔코딩 방법은, 데이터를 저장할 메모리 어레이의 각 섹터의 섹터정보를 리드하여 임시 저장하는 단계(ST1)와; 호스트로 부터 유저 데이터를 버퍼에 저장하는 단계(ST2)와; 상기 단계(ST2)에서 저장된 유저 데이터에 상기 단계(ST1)에서 리드한 섹터정보를 추가하는 단계(ST3)와; 상기 단계(ST3)에서 섹터정보가 추가된 모든 유저 데이터를 N개의 블록으로 나누어 각 블록에 해당하는 데이터를 메모리 어레이및 ECC 유니트에 입력하여 ECC 패리티를 생성후 그 패리티를 메모리 어레이에 바로 이어서 입력시키는 단계(ST4)로 이루어지는 것을 특징으로 한다.
또한, 디코딩 방법은 메모리 어레이로 부터 섹터정보와 유저 데이터가 포함된 하나의 ECC 블록과 패리티를 리드하여 신드롬을 계산하는 단계(ST5)와; 상기 단계(ST6)에서 계산된 신드롬이 0이 아닐 경우 즉, 에러가 발생할 경우 ECC에 의해 에러를 정정을 하는 단계(ST6)로 이루어져 달성되는 것으로, 본 발명에 의한 플래시 메모리의 엔코딩 및 디코딩 방법에 대한 작용 및 효과를 첨부한 도면을 참조하여 상세히 설명하면 다음과 같다.
도4는 본 발명에 의한 엔코딩 및 디코딩 과정을 개략적으로 보인 모식도로서, 이에 도시한 바와 같이 엔코딩 방법은, 데이터를 저장할 메모리 어레이(20)의 각 섹터에 대한 섹터정보를 리드(ST1)하여 내부의 레지스터(미도시) 등에 임시 저장한 다음 호스트(50)로 부터 유저 데이터를 입력받아 버퍼(10)에 저장한다(ST2).
다음, 상기 버퍼(10)에 저장된 유저 데이터에 메모리 어레이(20)의 각 섹터에 대한 섹터정보를 추가하여(ST3) 이를 N개의 블록으로 나누고, 각 블록에 해당하는 데이터를 메모리 어레이(20)및 ECC 유니트(30)에 입력하고, ECC 유니트(30)에서는 ECC 패리티를 생성하여 메모리 어레이(20)에 상기에서 입력시킨 블록에 바로 이어서 입력시킨다(ST4).
도5는 상기 도4의 엔코딩에 의해서 메모리 어레이(20)에 기록되는 섹터정보의 배열을 보인 구성도로서, 이에 도시된 바와 같이 따로 유저영역과 오버헤드 영역의 구분이 없이 유저 데이터와 섹터정보가 포함된 데이터가 N개의 ECC 블록으로 나뉘어져 있고, 바로 뒤에 해당하는 블록의 패리티가 나열되어 있다.
이와 같은 구성으로 엔코딩되어 있는 데이터의 디코딩 방법은 메모리 어레이(20)로 부터 섹터정보와 유저 데이터가 포함되어 나뉜 하나의 ECC 블록과 패리티를 리드하여 신드롬을 계산하고(ST5), 상기 계산된 신드롬에 의해 0일 경우는 에러가 발생되지 않은 것이고, 0이 아닐 경우는 에러가 발생할 경우로 이때는 ECC에 의해 에러 정정(ST6) 하도록 이루어 졌다.
이상에서 설명한 바와 같이 본 발명 플래시 메모리의 엔코딩 및 디코딩 방법은 오버헤드 영역을 따로 구분하지 않고 데이터 엔코딩시 섹터의 상태정보를 함께 엔코딩시킴으로써 오버헤드 영역의 설정이 자유롭게 되고, 섹터내의 어떤 부분에서 발생된 에러도 ECC에 의한 에러정정이 가능해져 플래시 메모리의 에러 대처 능력을 향상시키는 효과가 있다.

Claims (2)

  1. 데이터를 저장할 메모리 어레이의 각 섹터의 섹터정보를 리드하여 임시 저장하는 단계(ST1)와; 호스트로 부터 유저 데이터를 버퍼에 저장하는 단계(ST2)와; 상기 단계(ST2)에서 저장된 유저 데이터에 상기 단계(ST1)에서 리드한 섹터정보를 추가하는 단계(ST3)와; 상기 단계(ST3)에서 섹터정보가 추가된 모든 유저 데이터를 N개의 블록으로 나누어 각 블록에 해당하는 데이터를 메모리 어레이및 ECC 유니트에 입력하여 ECC 패리티를 생성후 그 패리티를 메모리 어레이에 바로 이어서 입력시키는 단계(ST4)로 이루어진 것을 특징으로 하는 플래시 메모리의 엔코딩 방법.
  2. 메모리 어레이로 부터 섹터정보와 유저 데이터가 포함된 하나의 ECC 블록과 패리티를 리드하여 신드롬을 계산하는 단계(ST5)와; 상기 단계(ST6)에서 계산된 신드롬이 0이 아닐 경우 즉, 에러가 발생할 경우 ECC에 의해 에러를 정정을 하는 단계(ST6)로 이루어진 것을 특징으로 하는 플래시 메모리의 디코딩 방법.
KR1019980038438A 1998-09-17 1998-09-17 플래시 메모리의 데이타 저장방법 KR100328818B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980038438A KR100328818B1 (ko) 1998-09-17 1998-09-17 플래시 메모리의 데이타 저장방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980038438A KR100328818B1 (ko) 1998-09-17 1998-09-17 플래시 메모리의 데이타 저장방법

Publications (2)

Publication Number Publication Date
KR20000020028A true KR20000020028A (ko) 2000-04-15
KR100328818B1 KR100328818B1 (ko) 2002-10-19

Family

ID=19550924

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980038438A KR100328818B1 (ko) 1998-09-17 1998-09-17 플래시 메모리의 데이타 저장방법

Country Status (1)

Country Link
KR (1) KR100328818B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100781952B1 (ko) * 2000-10-25 2007-12-06 후지쯔 가부시끼가이샤 플래시 메모리 내의 결함 관리 방법
US7412575B2 (en) 2004-11-03 2008-08-12 Samsung Electronics Co., Ltd. Data management technique for improving data reliability

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100781952B1 (ko) * 2000-10-25 2007-12-06 후지쯔 가부시끼가이샤 플래시 메모리 내의 결함 관리 방법
US7412575B2 (en) 2004-11-03 2008-08-12 Samsung Electronics Co., Ltd. Data management technique for improving data reliability

Also Published As

Publication number Publication date
KR100328818B1 (ko) 2002-10-19

Similar Documents

Publication Publication Date Title
JP3405712B2 (ja) データ回復方法およびデータ記憶装置
US5757824A (en) Code error correction apparatus
US4785451A (en) Generator for an error correcting code, a decoder therefore, and a method for the same
US6158038A (en) Method and apparatus for correcting data errors
US6367047B1 (en) Multi-level error detection and correction technique for data storage recording device
US7188295B2 (en) Method and apparatus for embedding an additional layer of error correction into an error correcting code
US8448045B2 (en) Outer code error correction
EP1640988B1 (en) Method and apparatus for decoding multiword information
KR950007947B1 (ko) 에러 정정 장치
JPH04320114A (ja) 符号化/復号化回路
US20220004457A1 (en) Nonvolatile memory device and memory system including nonvolatile memory device
US6662335B1 (en) Method and apparatus for accessing DVD data
KR900003603B1 (ko) Pcm신호의 에러 플래그 처리를 위한 방법 및 장치
JP2009529172A (ja) エクストラデータを含むページを記憶するメモリーマトリックスを有する電子回路
US9015560B1 (en) Method and apparatus for ceasing access to a portion of a flash memory when less than a number of errors correctable by an error correction code exists
US6697921B1 (en) Signal processor providing an increased memory access rate
KR20000020028A (ko) 플래시 메모리의 엔코딩 및 디코딩 방법
US6167549A (en) Memory access control device, and its control method
US6675343B1 (en) Code error correcting and detecting apparatus
KR100189531B1 (ko) Cd-rom 드라이브에 있어서 섹터 데이타 디코딩방법 및 회로
EP0803094B1 (en) Method and device for error protection of programmable memories
US6694473B1 (en) Parallel signal decoding method
US6615384B1 (en) Encoding/decoding method and apparatus and disk storage device
JPH0816488A (ja) 電子ディスク装置
JPH0628343B2 (ja) 積符号の復号方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B701 Decision to grant
N231 Notification of change of applicant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20110222

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee