KR101871682B1 - 페이지 단위의 ldpc 복호 반복 횟수 기록 및 마모도 모니터링을 통한 신뢰도 높은 웨어-레벨링 수행방법 - Google Patents
페이지 단위의 ldpc 복호 반복 횟수 기록 및 마모도 모니터링을 통한 신뢰도 높은 웨어-레벨링 수행방법 Download PDFInfo
- Publication number
- KR101871682B1 KR101871682B1 KR1020170014957A KR20170014957A KR101871682B1 KR 101871682 B1 KR101871682 B1 KR 101871682B1 KR 1020170014957 A KR1020170014957 A KR 1020170014957A KR 20170014957 A KR20170014957 A KR 20170014957A KR 101871682 B1 KR101871682 B1 KR 101871682B1
- Authority
- KR
- South Korea
- Prior art keywords
- page
- decoding
- itr
- wear
- leveling
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- 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
-
- 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/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/349—Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Description
도 2는 본 발명의 바람직한 실시예에 따른 페이지 단위의 LDPC 복호 반복 횟수 기록 및 마모도 모니터링을 통한 신뢰도 높은 웨어-레벨링 시스템의 구성을 개략적으로 나타낸 블록도이다.
도 3은 본 발명의 바람직한 실시예에 따른 복호 반복 횟수 기록부가 페이지 읽기 동작에서 복호 반복 횟수를 갱신하는 과정을 나타낸 흐름도이다.
도 4는 본 발명의 바람직한 실시예에 따른 웨어-레벨링 수행부가 페이지 쓰기 동작 발생 시 복호 반복 횟수 기록부(110)에 기록된 복호 반복 횟수 정보를 바탕으로 각 페이지의 쓰기 동작을 제한하여 실제 웨어-레벨링을 수행하는 과정을 나타낸 흐름도이다.
110 : 복호 반복 횟수 기록부
120 : 웨어-레벨링 수행부
Claims (5)
- 블록 또는 페이지 단위로 동작하고 LDPC 코드를 이용하여 오류 여부를 확인하기 위하여, 데이터 읽기 동작마다 페이지 단위 및 블록 단위의 복호 반복 횟수 정보를 획득하고 이를 페이지 단위 및 블록 단위로 저장하는 복호 반복 횟수 기록부, 및 상기 복호 반복 횟수 기록부에 기록된 정보들을 바탕으로 각 페이지의 쓰기 동작을 제한하여 페이지 단위의 웨어-레벨링을 수행하는 웨어-레벨링 수행부를 포함하는 플래시 메모리 기반 저장 장치의 웨어-레벨링 수행방법으로서,
상기 복호 반복 횟수 기록부는,
페이지 읽기 동작 시, 해당 페이지의 복호 반복 횟수 정보(ITRP Pre )와 해당 블록의 복호 반복 횟수 정보(ITRB Pre )를 테이블에서 불러오는 단계;
해당 페이지 읽기 동작의 LDPC 코드의 복호 수행 후, 상기 복호 수행에 따른 해당 페이지의 현재 복호 반복 횟수(ITRP Cur )와 테이블에 저장된 해당 페이지의 복호 반복 횟수 정보(ITRP Pre )를 비교하는 단계; 및
비교 결과, 해당 페이지의 현재 복호 반복 횟수(ITRP Cur )와 상기 테이블에 저장된 해당 페이지의 복호 반복 횟수 정보(ITRP Pre )가 같은 경우 페이지 읽기 동작을 수행하고, 다를 경우 복호 반복 횟수 정보들을 갱신하는 단계;를 수행하고,
갱신되어 테이블에 저장될 해당 페이지의 복호 반복 횟수 정보(ITRP New )와 갱신되어 테이블에 저장될 해당 블록의 복호 반복 횟수 정보(ITRB New )의 값은 각각 다음 식에 의해 계산되는 것을 특징으로 하는 웨어-레벨링 수행방법:
상기 식에서 a 및 b는 현재 복호 과정에서 얻은 복호 반복 횟수와 테이블에 저장된 과거 복호 반복 횟수 가중치를 조절하는 변수이다. - 삭제
- 삭제
- 청구항 1에 있어서,
상기 웨어-레벨링 수행부는,
특정 페이지에 쓰기 동작 발생 시, 상기 복호 반복 횟수 기록부의 테이블에 저장된 해당 페이지의 복호 반복 횟수(ITRP Pre )와 해당 블록의 복호 반복 횟수(ITRB Pre )를 불러오는 단계;
상기 해당 블록의 복호 반복 횟수(ITRB Pre ) 값에 임계치 조절 변수(c)를 곱하여 임계치(c·ITRB Pre )를 생성하는 단계;
상기 임계치(c·ITRB Pre )와 상기 해당 페이지의 복호 반복 횟수(ITRP Pre ) 값을 비교하는 단계;
상기 비교 결과, 상기 해당 페이지의 복호 반복 횟수(ITRP Pre ) 값이 상기 임계치(c·ITRB Pre )보다 낮을 경우 해당 페이지에 상기 쓰기 동작을 수행하고, 그렇지 않을 경우 해당 페이지의 쓰기 동작을 중단하고 해당 페이지의 무효(invalid)를 표시한 다음 해당 데이터가 다른 페이지에 매핑시키는 단계를 수행하는 것을 특징으로 하는 웨어-레벨링 수행방법. - 청구항 4에 있어서,
상기 조절 변수(c)는 웨어-레벨링의 강도를 조절하는 변수인 것을 특징으로 하는 웨어-레벨링 수행방법.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020170014957A KR101871682B1 (ko) | 2017-02-02 | 2017-02-02 | 페이지 단위의 ldpc 복호 반복 횟수 기록 및 마모도 모니터링을 통한 신뢰도 높은 웨어-레벨링 수행방법 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020170014957A KR101871682B1 (ko) | 2017-02-02 | 2017-02-02 | 페이지 단위의 ldpc 복호 반복 횟수 기록 및 마모도 모니터링을 통한 신뢰도 높은 웨어-레벨링 수행방법 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| KR101871682B1 true KR101871682B1 (ko) | 2018-06-28 |
Family
ID=62780293
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020170014957A Active KR101871682B1 (ko) | 2017-02-02 | 2017-02-02 | 페이지 단위의 ldpc 복호 반복 횟수 기록 및 마모도 모니터링을 통한 신뢰도 높은 웨어-레벨링 수행방법 |
Country Status (1)
| Country | Link |
|---|---|
| KR (1) | KR101871682B1 (ko) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20200021253A (ko) * | 2018-08-20 | 2020-02-28 | 에스케이하이닉스 주식회사 | 디코더, 그것의 동작 방법 및 메모리 시스템 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2013546039A (ja) * | 2010-09-29 | 2013-12-26 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ソリッド・ステート・メモリ・デバイスにおける復号 |
| KR101466555B1 (ko) | 2010-03-12 | 2014-12-02 | 엘에스아이 코포레이션 | 플래시 메모리들을 위한 ldpc 소거 디코딩 |
| KR101484066B1 (ko) | 2013-11-29 | 2015-01-19 | 한국과학기술원 | 엘디피시 부호의 디코딩 방법 |
| KR20150024489A (ko) | 2013-08-26 | 2015-03-09 | 삼성전자주식회사 | 메모리 시스템에서의 ldpc 디코딩 방법 및 이를 이용한 ldpc 디코더 |
-
2017
- 2017-02-02 KR KR1020170014957A patent/KR101871682B1/ko active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101466555B1 (ko) | 2010-03-12 | 2014-12-02 | 엘에스아이 코포레이션 | 플래시 메모리들을 위한 ldpc 소거 디코딩 |
| JP2013546039A (ja) * | 2010-09-29 | 2013-12-26 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ソリッド・ステート・メモリ・デバイスにおける復号 |
| KR20150024489A (ko) | 2013-08-26 | 2015-03-09 | 삼성전자주식회사 | 메모리 시스템에서의 ldpc 디코딩 방법 및 이를 이용한 ldpc 디코더 |
| KR101484066B1 (ko) | 2013-11-29 | 2015-01-19 | 한국과학기술원 | 엘디피시 부호의 디코딩 방법 |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20200021253A (ko) * | 2018-08-20 | 2020-02-28 | 에스케이하이닉스 주식회사 | 디코더, 그것의 동작 방법 및 메모리 시스템 |
| KR102475805B1 (ko) | 2018-08-20 | 2022-12-09 | 에스케이하이닉스 주식회사 | 디코더, 그것의 동작 방법 및 메모리 시스템 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8769374B2 (en) | Multi-write endurance and error control coding of non-volatile memories | |
| US9037951B2 (en) | Data management in solid state storage systems | |
| CN105009088B (zh) | 具有运行时变量raid保护方案的方法、固态驱动器控制器以及数据存储设备 | |
| US8904261B2 (en) | Data management in solid state storage devices | |
| JP5846589B2 (ja) | ソリッド・ステート・メモリ・デバイスにおける復号 | |
| CN102693760B (zh) | Nand快闪存储器的错误校正方法 | |
| US9583217B2 (en) | Decoding method, memory storage device and memory control circuit unit | |
| US9910606B2 (en) | End of life extension of solid state memory | |
| US9543983B2 (en) | Decoding method, memory storage device and memory control circuit unit | |
| US10284231B2 (en) | Adaptive outer code for consistent overprovisioning (OP) level | |
| JP2012137994A (ja) | メモリシステムおよびその制御方法 | |
| US20160350179A1 (en) | Decoding method, memory storage device and memory control circuit unit | |
| JP2015056184A (ja) | メモリにおけるデータの管理のための方法および装置 | |
| US8463985B2 (en) | Constrained coding to reduce floating gate coupling in non-volatile memories | |
| WO2011153124A1 (en) | Data hardening to compensate for loss of data retention characteristics in a non-volatile memory | |
| US10459630B2 (en) | Memory management method, memory storage device and memory controlling circuit unit | |
| JP2010079485A (ja) | 半導体記録装置 | |
| CN101308706B (zh) | 适用于闪存的数据写入方法及错误修正编解码方法 | |
| JP2009271852A (ja) | 半導体記憶装置 | |
| JP7177338B2 (ja) | メモリコントローラ装置、メモリコントローラ装置を有するメモリ装置及びメモリコントロール方法 | |
| KR101871682B1 (ko) | 페이지 단위의 ldpc 복호 반복 횟수 기록 및 마모도 모니터링을 통한 신뢰도 높은 웨어-레벨링 수행방법 | |
| KR101893064B1 (ko) | Ldpc 복호 반복 횟수 기록 및 모니터링을 통한 웨어-레벨링 신뢰도 향상 시스템 및 방법 | |
| CN104681095A (zh) | 储存装置及其操作方法 | |
| CN106297881B (zh) | 非挥发性存储器的健康管理 | |
| JP2015138498A (ja) | フラッシュメモリの誤り訂正符号化装置および方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20170202 |
|
| PA0201 | Request for examination | ||
| PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20171218 Patent event code: PE09021S01D |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20180620 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20180621 Patent event code: PR07011E01D |
|
| PR1002 | Payment of registration fee |
Payment date: 20180622 End annual number: 3 Start annual number: 1 |
|
| PG1601 | Publication of registration | ||
| PR1001 | Payment of annual fee |
Payment date: 20210527 Start annual number: 4 End annual number: 4 |
|
| PR1001 | Payment of annual fee |
Payment date: 20220510 Start annual number: 5 End annual number: 5 |
|
| PR1001 | Payment of annual fee |
Payment date: 20230524 Start annual number: 6 End annual number: 6 |
|
| PR1001 | Payment of annual fee |
Payment date: 20240429 Start annual number: 7 End annual number: 7 |
|
| PR1001 | Payment of annual fee |
Payment date: 20250402 Start annual number: 8 End annual number: 8 |