CN108073473A - 一种闪存坏列表压缩方法 - Google Patents
一种闪存坏列表压缩方法 Download PDFInfo
- Publication number
- CN108073473A CN108073473A CN201810030361.9A CN201810030361A CN108073473A CN 108073473 A CN108073473 A CN 108073473A CN 201810030361 A CN201810030361 A CN 201810030361A CN 108073473 A CN108073473 A CN 108073473A
- Authority
- CN
- China
- Prior art keywords
- flash memory
- bad
- error checking
- data
- error
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1044—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
- G06F11/106—Correcting systematically all correctable errors, i.e. scrubbing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
本发明公开了一种闪存坏列表压缩方法,包括一个数据缓冲区,一个错误检查和纠正的硬件装置,一个坏列表和闪存,当写入时从数据缓冲区透过总线传输数据传递到闪存,途中先跳过坏列块所指定的位置,再由错误检查和纠正装置产生纠错码后写入闪存。反之亦然,读取时先由坏列表跳过所指定的位置,再经由错误检查和纠正装置产生纠错码后传递到数据缓存区。错误检查和纠正技术在一定的区域内保护了错误比特率,本发明能够大幅缩小坏列表的大小,保护数据的正确性。
Description
技术领域
本发明涉及闪存技术领域,具体为一种闪存坏列表压缩方法。
背景技术
闪存是一种长寿命的非易失性(在断电情况下仍能保持所存储的数据信息)的存储器,数据删除不是以单个的字节为单位而是以固定的区块为单位,区块大小一般为256KB到20MB。闪存是电子可擦除只读存储器(EEPROM)的变种,闪存与EEPROM不同的是,EEPROM能在字节水平上进行删除和重写而不是整个芯片擦写,而闪存的大部分芯片需要块擦除。由于其断电时仍能保存数据,闪存通常被用来保存设置信息,如在电脑的BIOS(基本程序)、PDA(个人数字助理)、数码相机中保存资料等;闪存正朝大容量、低功耗、低成本的方向发展。与传统硬盘相比,闪存的读写速度高、功耗较低,市场上已经出现了闪存硬盘,也就是SSD硬盘,该硬盘的性价比进一步提升。随着制造工艺的提高、成本的降低,闪存将更多地出现在日常生活之中。
闪存为非消失性的存储器装置,由块组成,每个块又分成多个页,每个页会有多个列组合而成。随者制造工艺提升,越先进的工艺闪存执行动作时会产生高温,因此闪存数据的错误比特会上升,导致数据错误。当反复读取数据后,发现数据再固定的列上都会发生错误,我们称之为坏列。对于闪存,最常利用错误检查和纠正技术(例如:二元线性循环码或低密度奇偶校验码)来作为错误修正的方法。错误检查和纠正技术可以在一定的区域内保护N个比特错误,如果不使用坏列表,ECC就会为了修正坏列,使其他数据的保护能力下降。因此产生坏列表来记录列的错误数据,读取时跳过坏列的区块使数据正确。减少错误检查和纠正的负担。
发明内容
本发明的目的在于提供一种闪存坏列表压缩方法,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:一种闪存坏列表压缩方法,包括一个数据缓冲区,一个错误检查和纠正的硬件装置,一个坏列表和闪存,所述数据缓冲区通过总线连接错误检查和纠正的硬件装置,所述坏列表设置在错误检查和纠正的硬件装置内,所述错误检查和纠正的硬件装置通过总线连接闪存。
优选的,所述闪存有1024个块,每个块有256个页,每个页有32个扇形组合而成。
优选的,压缩方法包括以下步骤:
A、当写入时从数据缓冲区通过总线传输数据传递到闪存;
B、途中先跳过坏列块所指定的位置,再由错误检查和纠正装置产生纠错码后写入闪存;
C、反之亦然,读取时先由坏列表跳过所指定的位置,再经由错误检查和纠正装置产生纠错码后传递到数据缓存区;错误检查和纠正技术在一定的区域内保护了错误比特率。
与现有技术相比,本发明的有益效果是:本发明提供得一种闪存坏列表压缩方法,当写入时从数据缓冲区透过总线传输数据传递到闪存,途中先跳过坏列块所指定的位置,再由错误检查和纠正装置产生纠错码后写入闪存。反之亦然,读取时先由坏列表跳过所指定的位置,再经由错误检查和纠正装置产生纠错码后传递到数据缓存区。错误检查和纠正技术在一定的区域内保护了错误比特率,本发明能够大幅缩小坏列表的大小,保护数据的正确性。
附图说明
图1为本发明结构示意图;
图2为本发明实施例压缩示意图;
图3为本发明实施例压缩后示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1-3,本发明提供一种技术方案:一种闪存坏列表压缩方法,包括一个数据缓冲区1,一个错误检查和纠正的硬件装置2,一个坏列表3和闪存4,所述数据缓冲区1通过总线连接错误检查和纠正的硬件装置2,所述坏列表3设置在错误检查和纠正的硬件装置2内,所述错误检查和纠正的硬件装置2通过总线连接闪存4;闪存4有1024个块,每个块有256个页,每个页有32个扇形组合而成。
本发明中,压缩方法包括以下步骤:
A、当写入时从数据缓冲区通过总线传输数据传递到闪存;
B、途中先跳过坏列块所指定的位置,再由错误检查和纠正装置产生纠错码后写入闪存;
C、反之亦然,读取时先由坏列表跳过所指定的位置,再经由错误检查和纠正装置产生纠错码后传递到数据缓存区;错误检查和纠正技术在一定的区域内保护了错误比特率。
坏列表为代表坏列在一个页中的位置,传统的坏列表用两个字节代表一个坏列,当闪存越大时需要的坏列表就越大,才能保护数据的正确性。
实施例:本发明提供了一个压缩坏列表的方法,每一组坏列,由两个部分组成,坏列的位置和坏列的长度。如图2所示,假设一个页中坏列在,列5、列6、列7、列8、列9、列10和列22、列23、列24产生错误,传统的方法一个坏列需要两个字节纪录,所以需要18个字节记录,如图3所示,本发明只需要8个字节就可以记录完成。分别为坏列起始位置5和坏列长度6,坏列位置22,坏列长度3。由此例子指节省55%内存使用量,利用本发明大幅缩小坏列表的大小。
本发明提供得一种闪存坏列表压缩方法,当写入时从数据缓冲区透过总线传输数据传递到闪存,途中先跳过坏列块所指定的位置,再由错误检查和纠正装置产生纠错码后写入闪存。反之亦然,读取时先由坏列表跳过所指定的位置,再经由错误检查和纠正装置产生纠错码后传递到数据缓存区。错误检查和纠正技术在一定的区域内保护了错误比特率,本发明能够大幅缩小坏列表的大小,保护数据的正确性。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (3)
1.一种闪存坏列表压缩方法,其特征在于:包括一个数据缓冲区(1),一个错误检查和纠正的硬件装置(2),一个坏列表(3)和闪存(4),所述数据缓冲区(1)通过总线连接错误检查和纠正的硬件装置(2),所述坏列表(3)设置在错误检查和纠正的硬件装置(2)内,所述错误检查和纠正的硬件装置(2)通过总线连接闪存(4)。
2.根据权利要求1所述的一种闪存坏列表压缩方法,其特征在于:所述闪存(4)有1024个块,每个块有256个页,每个页有32个扇形组合而成。
3.根据权利要求1所述的一种闪存坏列表压缩方法,其特征在于:压缩方法包括以下步骤:
A、当写入时从数据缓冲区通过总线传输数据传递到闪存;
B、途中先跳过坏列块所指定的位置,再由错误检查和纠正装置产生纠错码后写入闪存;
C、反之亦然,读取时先由坏列表跳过所指定的位置,再经由错误检查和纠正装置产生纠错码后传递到数据缓存区;错误检查和纠正技术在一定的区域内保护了错误比特率。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201810030361.9A CN108073473A (zh) | 2018-01-12 | 2018-01-12 | 一种闪存坏列表压缩方法 |
| PCT/CN2018/099747 WO2019136970A1 (zh) | 2018-01-12 | 2018-08-09 | 一种闪存坏列表压缩方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201810030361.9A CN108073473A (zh) | 2018-01-12 | 2018-01-12 | 一种闪存坏列表压缩方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN108073473A true CN108073473A (zh) | 2018-05-25 |
Family
ID=62156733
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201810030361.9A Pending CN108073473A (zh) | 2018-01-12 | 2018-01-12 | 一种闪存坏列表压缩方法 |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN108073473A (zh) |
| WO (1) | WO2019136970A1 (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2019136970A1 (zh) * | 2018-01-12 | 2019-07-18 | 江苏华存电子科技有限公司 | 一种闪存坏列表压缩方法 |
| CN113885777A (zh) * | 2020-07-03 | 2022-01-04 | 慧荣科技股份有限公司 | 数据的写入方法及其数据存储装置 |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI763608B (zh) * | 2021-11-02 | 2022-05-01 | 慧榮科技股份有限公司 | 資料儲存裝置及其損壞資料行的篩選方法 |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103092717A (zh) * | 2013-01-18 | 2013-05-08 | 深圳市硅格半导体有限公司 | 闪存的数据处理方法及装置 |
| CN103279424A (zh) * | 2013-05-15 | 2013-09-04 | 建荣集成电路科技(珠海)有限公司 | 一种Nand Flash的坏列管理装置和方法 |
| CN106155572A (zh) * | 2015-03-25 | 2016-11-23 | 慧荣科技股份有限公司 | 数据储存装置以及数据存取方法 |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN100458718C (zh) * | 2006-12-29 | 2009-02-04 | 福昭科技(深圳)有限公司 | 一种闪存存储装置及其数据读取和写入方法 |
| US9146807B2 (en) * | 2012-12-04 | 2015-09-29 | Sandisk Technologies Inc. | Bad column handling in flash memory |
| CN203311409U (zh) * | 2013-05-15 | 2013-11-27 | 建荣集成电路科技(珠海)有限公司 | 一种Nand Flash的坏列管理装置 |
| CN108073473A (zh) * | 2018-01-12 | 2018-05-25 | 江苏华存电子科技有限公司 | 一种闪存坏列表压缩方法 |
-
2018
- 2018-01-12 CN CN201810030361.9A patent/CN108073473A/zh active Pending
- 2018-08-09 WO PCT/CN2018/099747 patent/WO2019136970A1/zh not_active Ceased
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103092717A (zh) * | 2013-01-18 | 2013-05-08 | 深圳市硅格半导体有限公司 | 闪存的数据处理方法及装置 |
| CN103279424A (zh) * | 2013-05-15 | 2013-09-04 | 建荣集成电路科技(珠海)有限公司 | 一种Nand Flash的坏列管理装置和方法 |
| CN106155572A (zh) * | 2015-03-25 | 2016-11-23 | 慧荣科技股份有限公司 | 数据储存装置以及数据存取方法 |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2019136970A1 (zh) * | 2018-01-12 | 2019-07-18 | 江苏华存电子科技有限公司 | 一种闪存坏列表压缩方法 |
| CN113885777A (zh) * | 2020-07-03 | 2022-01-04 | 慧荣科技股份有限公司 | 数据的写入方法及其数据存储装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2019136970A1 (zh) | 2019-07-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN101763903B (zh) | 快闪存储器控制器、其纠错码控制器及其方法和系统 | |
| TWI516927B (zh) | 資料寫入方法、記憶體控制器與記憶體儲存裝置 | |
| US8560926B2 (en) | Data writing method, memory controller and memory storage apparatus | |
| US8726140B2 (en) | Dummy data padding and error code correcting memory controller, data processing method thereof, and memory system including the same | |
| KR101576102B1 (ko) | 플래시 메모리의 블록으로부터 데이터를 판독하는 방법 및 관련 메모리 장치 | |
| US8732553B2 (en) | Memory system and control method thereof | |
| TWI446350B (zh) | 用來減少無法更正的錯誤之方法以及記憶裝置及其控制器 | |
| TWI633428B (zh) | 資料儲存裝置與記憶體裝置之資料處理方法 | |
| CN105808371A (zh) | 数据备份与恢复方法、控制芯片及存储装置 | |
| WO2008083557A1 (fr) | Procédé de correction d'erreur de codage pour secteurs multiples | |
| US8433981B1 (en) | Coding across data blocks to reduce write amplification in NAND flash | |
| TWI802324B (zh) | 異常斷電恢復方法、記憶體控制電路單元以及記憶體儲存裝置 | |
| CN101324862A (zh) | 闪存存储管理方法 | |
| TWI529530B (zh) | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
| TW201913382A (zh) | 解碼方法、記憶體儲存裝置及記憶體控制電路單元 | |
| CN105204958B (zh) | 一种延长NAND Flash数据可靠存储时间的编码方法 | |
| WO2019136968A1 (zh) | 一种数据数组保护和修复闪存内数据方法 | |
| TWI545432B (zh) | 資料管理方法、記憶體控制電路單元以及記憶體儲存裝置 | |
| CN108073473A (zh) | 一种闪存坏列表压缩方法 | |
| WO2019136971A1 (zh) | 一种利用假数据的闪存数据保护方法 | |
| CN104467871A (zh) | 提高NAND Flash存储可靠性的数据存储方法 | |
| JP7177338B2 (ja) | メモリコントローラ装置、メモリコントローラ装置を有するメモリ装置及びメモリコントロール方法 | |
| CN105653391B (zh) | 数据存取方法、存储器控制电路单元及存储器储存装置 | |
| CN101308702A (zh) | 适用于闪存的数据结构及其数据写入方法和数据读取方法 | |
| US11055231B2 (en) | Data storage devices and data processing methods of skipping editing of fields in H2F table when consecutive addresses are present in F2H table |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180525 |
|
| RJ01 | Rejection of invention patent application after publication |