KR100328818B1 - 플래시 메모리의 데이타 저장방법 - Google Patents
플래시 메모리의 데이타 저장방법 Download PDFInfo
- Publication number
- KR100328818B1 KR100328818B1 KR1019980038438A KR19980038438A KR100328818B1 KR 100328818 B1 KR100328818 B1 KR 100328818B1 KR 1019980038438 A KR1019980038438 A KR 1019980038438A KR 19980038438 A KR19980038438 A KR 19980038438A KR 100328818 B1 KR100328818 B1 KR 100328818B1
- Authority
- KR
- South Korea
- Prior art keywords
- information
- data
- sector
- ecc
- area
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing 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에 도시된 바와 같이 다수개의 섹터(sector 0∼sector n)로 구분되고, 각 섹터는 호스트 또는 외부의 시스템에서 제공하는 데이터를 저장하기 위한 유저 영역(user area)과; 메모리를 관리하기 위한 ECC 패리티 정보(정보 전달 동작 중에 에러가 발생했을 때, 이를 검출하기 위해 이용되는 것) 및 디펙션(Defection) 정보 등을 저장하는 오버헤드 영역(overhead area)으로 구성되어 있다.
도2는 종래 방법에 의한 플래시 메모리의 라이트 및 리드 과정을 개략적으로 보인 모식도로서, 이에 도시된 바와 같이 라이트 과정은 호스트(50)로 부터 유저 데이터를 받아 버퍼(10)에 저장하는 단계(ST1)와; 상기 버퍼(10)에 저장된 모든 유저 데이터에서 각각의 ECC 블록에 해당하는 정보를 메모리 어레이(20)와 ECC 유니트(30)로 입력하여 ECC 패리티를 생성한 후, 그 패리티를 임시 저장하는 단계(ST2)와; 상기 임시로 저장된 패리티 정보 및 각 섹터의 상태정보는 메모리 어레이(20)의 오버헤드 영역에 따로 저장하는 단계(ST3)로 이루어 진다.
이에 따라, 상기 메모리 어레이(20)에 기록되는 데이터의 구조를 살펴보면 도 3에 도시된 바와 같다.
이에 도시된 바와 같이, 유저영역에는 n개로 나누어진 ECC 블록이 순차로 저장되어 있고, 바로 이어서 오버헤드 영역에는 상기 각 ECC 블록에 대한 패리티 및 디펙트 정보 등이 저장되어 있다.
즉, 유저영역에는 ECC 블록만 저장되고, 오버헤드 영역에는 패리티 정보만 따로 저장되는 것이다.
다음, 상기와 같이 섹터의 각 영역에 구분되어져 있는 정보들의 리드 과정을 도 2를 참조하여 설명하면 다음과 같다.
먼저, 메모리 제어부(40)에서 메모리 어레이(20)의 오버헤드 영역에 저장되어 있는 패리티 및 각각의 ECC 블록에 해당되는 데이터를 리드하는 단계(ST4)와; 상기 단계(ST4)에서 리드된 패리티를 ECC 유니트(30)로 전송하여 신드롬(Syndrome)을 계산하는 단계(ST5)와; 상기 단계(ST5)에서 계산된 신드롬에 의해 에러 발생 여부를 판단하여 에러 정정을 수행하는 단계(ST6)로 이루어진다.
여기서, 신드롬(Syndrome)이란 상기의 패리티 정보를 이용하여 리드된 데이터의 열중에서 오류가 발생한 위치를 찾아 내는 것으로, 그 값이 '0'이 아닐 경우에는 에러가 발생한 것으로 판단한다.
그러나, 상기 종래의 기술에 있어서는 메모리 어레이의 영역을 구분하여 유저 데이터와 에러 정정을 위한 정보를 따로 저장함으로써, 오버헤드 영역에 저장되는 데이터중, 디펙션정보 등 섹터의 상태를 나타내는 정보는 에러를 대비한 어떠한 정보도 포함되어 있지 않기 때문에, 이 메모리 영역에 에러가 발생했을 때는 데이터의 복구가 불가능할 뿐 아니라, 상기와 같은 이유로 섹터의 상태정보를 저장하는위치가 디펙트 프리 영역(defect free area)으로만 제한되는 문제점이 있었다.
따라서, 본 발명은 상기와 같은 종래의 문제점을 해결하기 위하여 창출한 것으로, 오버헤드 영역을 따로 구분하지 않고 데이터 라이트시 섹터의 상태정보를 함께 라이트 함으로써, 오버헤드 영역의 설정이 자유롭게 되고, 섹터내의 어떠한 부분에서 에러가 발생하더라도 ECC에 의한 에러정정이 가능하도록 하는 플래시 메모리의 데이터 저장방법을 제공 하는데 그 목적이 있다.
도1은 플래시 메모리의 기본 어레이 구성을 보인 예시도.
도2는 종래 방법에 의한 플래시 메모리의 라이트 및 리드 과정을 개략적으로 보인 모식도.
도3은 상기 도2의 과정에 의해 메모리 어레이에 기록되는 데이터의 구조도.
도4는 본 발명에 의한 데이터의 라이트 및 리드 과정을 개략적으로 보인 모식도.
도5는 상기 도4의 라이트 과정에 의해 메모리 어레이에 기록되는 데이터의 구조도.
이와 같은 목적을 달성하기 위한 본 발명은, 유저 데이터에 섹터정보를 추가하여 그 섹터정보가 추가된 모든 유저 데이터를 N개의 ECC 블록으로 나누고, 각 ECC 블록에 해당하는 패리티 정보를 생성한 후, 그 패리티 정보를 상기 ECC 블록에 바로 이어서 저장하도록 구성된 것을 특징으로 한다.
상기와 같은 방법에 의해 데이터를 저장할 경우, 리드 방법은 메모리 어레이로 부터 섹터정보와 유저 데이터가 포함된 하나의 ECC 블록과 패리티를 리드하여 신드롬을 계산하고, 그 계산된 신드롬에 의해 에러 발생 여부를 판단하여 에러가 발생할 경우, ECC에 의해 에러 정정을 수행하는 것은 종래와 큰 차이가 없다.
그러나, 저장된 데이터의 구조상 각 ECC 블록에 패리티 정보가 바로 이어서 저장되어 있기 때문에 섹터내의 어떠한 부분에서 에러가 발생하더라도 ECC에 의한 에러정정이 가능하게 된다.
이하, 본 발명에 의한 데이터의 라이트 및 리드 방법에 대해 첨부한 도면을 참조하여 설명하면 다음과 같다.
도4는 본 발명에 의한 데이터의 라이트 및 리드 과정을 개략적으로 보인 모식도로서, 이에 도시한 바와 같이 라이트 방법은, 데이터를 저장할 메모리 어레이(20)의 각 섹터에 대한 섹터정보를 리드(ST1)하여 내부의 레지스터(미도시) 등에 임시 저장한 다음 호스트(50)로 부터 유저 데이터를 입력받아 버퍼(10)에 저장한다(ST2).
다음, 상기 버퍼(10)에 저장된 유저 데이터에 메모리 어레이(20)의 각 섹터에 대한 섹터정보를 추가하여(ST3) 이를 N개의 블록으로 나누고, 각 블록에 해당하는 데이터를 메모리 어레이(20)및 ECC 유니트(30)에 입력하고, ECC 유니트(30)에서는 ECC 패리티를 생성하여 메모리 어레이(20)에 상기에서 입력시킨 블록에 바로 이어서 저장한다(ST4).
도5는 상기 도4의 라이트 과정에 의해서 메모리 어레이(20)에 기록되는 데이터의 구조도로서, 종래와 달리 유저 영역과 오버헤드 영역의 구분이 없이, 유저 데이터와 섹터정보가 포함된 데이터가 N개의 ECC 블록으로 나뉘어져 저장되고, 각 ECC 블록에 바로 이어서 그에 해당하는 블록의 패리티 정보가 저장되어 있다.
이와 같은 방법으로 라이트되어 있는 데이터의 리드 방법은 종래와 큰 차이가 없다.
즉, 메모리 어레이(20)에 저장되어 있는 각 ECC 블록과 그 블록에 해당하는 패리티 정보를 함께 리드하여 신드롬을 계산하고(ST5), 상기 계산된 신드롬에 의해 에러 발생 여부를 판단하여, 에러가 발생할 경우는 ECC에 의해 에러 정정(ST6)을 하도록 이루어졌다.
이상에서 설명한 바와 같이 본 발명 플래시 메모리의 데이터 저장방법은, 오버헤드 영역을 따로 구분하지 않고 데이터 저장시 섹터의 상태정보를 함께 저장함으로써, 오버헤드 영역의 설정이 자유롭게 되고 섹터내의 어떤 부분에서 발생된 에러도 ECC에 의한 에러정정이 가능해져 플래시 메모리의 에러 대처 능력을 향상시키는 효과가 있다.
Claims (1)
- 플레시 메모리에 데이터를 저장함에 있어서,메모리에 저장할 유저 데이터에 섹터정보를 추가하는 제1단계와;상기 섹터정보가 추가된 모든 유저 데이터를 N개의 ECC(Error Correction Code) 블록으로 분할하는 제2단계와;상기 분할된 각 ECC 블록에 해당하는 패리티 정보를 생성하는 제3단계와;상기 생성된 각 패리티 정보를 해당하는 각 ECC 블록에 바로 이어서 저장하는 제4단계로 이루어진 것을 특징으로 하는 플래시 메모리의 데이터 저장방법.
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 KR20000020028A (ko) | 2000-04-15 |
KR100328818B1 true 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) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4323707B2 (ja) * | 2000-10-25 | 2009-09-02 | 富士通マイクロエレクトロニクス株式会社 | フラッシュメモリの欠陥管理方法 |
KR100645058B1 (ko) | 2004-11-03 | 2006-11-10 | 삼성전자주식회사 | 데이터 신뢰성을 향상시킬 수 있는 메모리 관리 기법 |
-
1998
- 1998-09-17 KR KR1019980038438A patent/KR100328818B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR20000020028A (ko) | 2000-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4733396A (en) | Apparatus for detecting and correcting data transfer errors of a magnetic disk system | |
JPS63197123A (ja) | エラ−訂正及びチエツク装置 | |
EP1206739B1 (en) | Methods and apparatus for correcting soft errors in digital data | |
US6681299B1 (en) | Cache-tag control method in information processing apparatus having cache, with error checking mechanism in cache tag, and information processing apparatus using this control method | |
JPS6310460B2 (ko) | ||
US20070050663A1 (en) | Error correction apparatus for performing consecutive reading of multiple code words | |
CN113220221B (zh) | 存储器控制器与数据处理方法 | |
KR100328818B1 (ko) | 플래시 메모리의 데이타 저장방법 | |
US6697921B1 (en) | Signal processor providing an increased memory access rate | |
US10297304B1 (en) | Memory device and operating method thereof | |
JP4742553B2 (ja) | 記憶装置 | |
US7269779B2 (en) | Data reproducing method and data reproducing apparatus | |
JPS6129024B2 (ko) | ||
US5805618A (en) | Reproducing apparatus for reproducing video information recorded together with error correction codes | |
JP2000010807A (ja) | ディジタルデータ再生装置 | |
JP4692843B2 (ja) | メモリコントローラ及びフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP3022688B2 (ja) | 補助記憶装置 | |
JPH0520215A (ja) | 情報処理装置 | |
JPH0816488A (ja) | 電子ディスク装置 | |
JP3908386B2 (ja) | 磁気テープ装置のバックワードリード回路およびバックワードリード方法 | |
JPS5870500A (ja) | 半導体記憶回路 | |
KR100307517B1 (ko) | 플래시메모리의디펙트셀검출방법 | |
JPS63271555A (ja) | 記憶制御方式 | |
JPH1011284A (ja) | 制御記憶装置 | |
JPH0756816A (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 |