CN101996688B - 应用可变动错误更正码容量的快闪存储器控制方法 - Google Patents

应用可变动错误更正码容量的快闪存储器控制方法 Download PDF

Info

Publication number
CN101996688B
CN101996688B CN 200910169423 CN200910169423A CN101996688B CN 101996688 B CN101996688 B CN 101996688B CN 200910169423 CN200910169423 CN 200910169423 CN 200910169423 A CN200910169423 A CN 200910169423A CN 101996688 B CN101996688 B CN 101996688B
Authority
CN
China
Prior art keywords
length
flash memory
error correcting
correcting code
data
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
Application number
CN 200910169423
Other languages
English (en)
Other versions
CN101996688A (zh
Inventor
高龙毅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Asolid Technology Co Ltd
Original Assignee
Innostor Tech Corp
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 Innostor Tech Corp filed Critical Innostor Tech Corp
Priority to CN 200910169423 priority Critical patent/CN101996688B/zh
Publication of CN101996688A publication Critical patent/CN101996688A/zh
Application granted granted Critical
Publication of CN101996688B publication Critical patent/CN101996688B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明为一种应用可变动错误更正码容量的快闪存储器控制方法,在快闪存储器中的第一通道中,根据数据页面容量及第一管理数据的长度,设定具有第一长度的错误更正码;在快闪存储器中的第二通道中,根据数据页面容量及第二管理数据的长度,设定具有第二长度的错误更正码;设定该第一长度的错误更正码及第二长度的错误更正码分别具有不同的识别码,其中,第一长度小于第二长度。

Description

应用可变动错误更正码容量的快闪存储器控制方法
技术领域
本发明关于一种快闪存储器控制技术,尤指一种应用可变动错误更正码容量的快闪存储器控制方法。
背景技术
快闪存储器为类似EEPROM的结构,因为半导体设计的原因,有一定的错误机率,所以使用错误更正码(Error Correction Code,ECC)来纠正发生错误的数据。
错误更正的能力及快闪存储器内用以管理数据的空间大小取决于ECC的容量,习知技术乃以一个最大允许容量的ECC来实现错误更正的功能,所以所有数据的错误更正能力皆为相同。
请参考图4所示,为4K的数据页面(page)在不同通道下管理数据(MD,Management Data)的长度和ECC长度的关系,若采用BCH(Bose,Ray-Chaudhuri,Hocquenghem)理论所推算出来的ECC容量,允许在数据区域(data area)内产生8个比特(bit)的错误,在此8个bit的错误更正能力下,需要用到13个比特组的容量。
一般而言,采用上述固定式ECC设计的快闪存储器控制器,无法充分使用大数据页面(data page)型的快闪存储器(例如8K page)容量。
发明内容
本发明的目的在于,解决现有快闪存储器当中的错误更正码(ECC)及管理数据(MD,Management Data)设计均采固定长度,无法有效提高错误更正能力及有效使用大型数据页面的技术问题。
为达成前述目的,本发明应用可变动错误更正码容量的快闪存储器控制方法,包含有以下步骤:
首先,根据数据页面的容量及第一管理数据的长度,于快闪存储器的第一通道中,预设定具有第一长度的错误更正码,且根据该数据页面的容量及第二管理数据的长度,于快闪存储器的第二通道中,预设定具有第二长度的错误更正码;
接着,检查目前所欲存取的通道是否为第一通道,若是,则将第一通道的错误更正码长度设定为第一长度;若否,则将第二通道的错误更正码长度设定为第二长度。
本发明的有益效果在于,藉由上述方法,通道1以后的错误更正码长度可被提高,本发明采用不同容量的错误更正码(ECC),即对不同通道设定具有不同长度的错误更正码(ECC),可使整体快闪存储器的错误更正能力得以有效提升。
附图说明
图1为依据本发明技术,2K数据页面于不同通道下,管理数据长度和ECC码长度的关系示意图。
图2为依据本发明技术,4K数据页面于不同通道下,管理数据长度和ECC码长度的关系示意图。
图3为依据本发明对多通道的快闪存储器设定其更正比特数的步骤流程图。
图4为习知4K数据页面于不同通道下,管理数据长度和ECC码长度的关系示意图。
具体实施方式
NAND快闪存储器的架构是由多个数据页面(page)组成,每一个数据页面包含数据(data)及空余(spare)两区域,故每个数据页面的大小为(512+16)×N,其中N代表一个数据页面中所对应的磁区数目,例如2K数据页面的快闪存储器,其N为4,4K数据页面的N=8,目前NAND快闪存储器的数据页面大致上可分成512、2K、4K、8K bytes等数种规格,然后由64个或128个数据页面组成一个区块(block)。
在快闪存储器不同应用的区块(block)及不同的通道中,所需要的管理容量也不同。一般而言,2K数据页面的快闪存储器中,其空余(spare)区域大小为16×4=64个比特组。若配合以BCH理论所推算出来的8个比特更正能力,错误更正码(ECC)所占用的大小为13×4=52个比特组,所以只允许管理数据长度为64-52=12个比特组。
本发明的控制方法为在快闪存储器中的第一通道中,根据数据页面容量及第一管理数据的长度,设定具有第一长度的错误更正码;
在快闪存储器中的第二通道中,根据数据页面容量及第二管理数据的长度,设定具有第二长度的错误更正码;
设定该第一长度的错误更正码及第二长度的错误更正码分别具有不同的识别码,其中,第一长度小于第二长度,以下配合图式加以详细说明。
请参考图1所示,以2K容量的数据页面为范例说明,依据本发明的技术,快闪存储器控制器于管理快闪存储器时,在通道0上会放置完整的管理数据,以便在读取时能一次读出所需的管理数据,因此将通道0的错误更正码(ECC)定义为52bytes、管理数据长度定义为12bytes;但自通道1以后,所需要的管理数据量缩减到约4bytes,换言之可供存放错误更正码(ECC)的空间为便可提高为64-4=60bytes。
本发明即是对通道0与其它通道分别指定不同长度的错误更正码及管理数据,使各通道能获得更多比特组的错误更正码,藉此提升数据更正的能力。请参考图2所示,当本发明应用于4K数据页面的快闪存储器时,通道0具有3×8bytes的管理数据,而错误更正码的长度为13×8bytes,通道1以后的管理数据缩减成2×8bytes,故有更多空间存放错误更正码,错误更正码的长度提高为14×8bytes。本发明可以在不同的通道上采用不同容量的错误更正码(ECC),藉此提高错误更正效能。发生错误的通道是随机的,所以平均来说整体效能会较固定式的要高。
为了辨识不同长度的错误更正码(ECC)以利于读取,所以本发明于错误更正码当中加入一识别码,该识别码存放在一固定位置以快速被读出。较佳位置为错误更正码的最前一个比特组或最后一个比特组。
为加速决定错误更正码更正能力的设定,可以设定一套规则来决定不同通道不同区块上的更正能力,举例来说,该规则可为:将系统的区块(Block)分为数据区块(Data block)、临时区块(Temp block)、信息区块(Info block)等不同种类,每种区块各给予一个ID。于数据区决(Data block)中又可分为“通道0”及“非通道0的其余通道”两种,对应到的错误更正码(ECC)可分成两种形式,分别是ECC0及ECC1,其中:
ECC0:指定用于临时区块(Temp block)、通道0的数据区块(data block)和信息区块(Info block)。
ECC1:指定用于通道1以后的数据区块(data block)。故读取识别码后就可决定为ECC0或ECC1其中一种。
请参考图3所示,为依据本发明的实施例,当要存取(例如写入或读出)多通道的快闪存储器之前,可经由以下步骤对快闪存储器控制器设定其更正比特数:
首先,根据数据页面的容量及管理数据的长度决定ECC0及ECC1的长度(步骤300),例如,在4K数据页面的快闪存储器内,ECC0的长度为13×8bytes,ECC1的长度为14×8bytes;
接着,对快闪存储器进行存取,本实施例中以读/写为存取动作进行说明(步骤301);
然后,判断是否为数据区块(Data block)(步骤302),若是则执行下一步骤(步骤303),若否则执行步骤304;
接着,检查目前所欲读写的通道是否为通道0(步骤303),若是则设定为ECC0(步骤304),若否则设定为ECC1;
最后,判断是否为写入动作(步骤305),若为写入,则配合ECC0或ECC1填入管理数据至空余(Spare)区域并结束写入动作;若否,则自空余(Spare)区域读取管理数据,配合ECC0或ECC1分析管理数据并结束读取动作。
本发明的技术在较小的数据页面上具有相当明显的效果,当应用于大数据页面的快闪存储器时,此技术更能发挥大数据页面快闪存储器的优势。相对于传统固定长度错误更正码的作法,本发明针对不同通道、不同数据页面长度的快闪存储器搭配不同的ECC更正设定的方法,在数据储存的安全性上远高于固定式的,亦不受最小数据页面的快闪存储器而有限制错误更正码ECC能力的问题。
以上对本发明的描述是说明性的,而非限制性的,本专业技术人员理解,在权利要求限定的精神与范围之内可对其进行许多修改、变化或等效,但是它们都将落入本发明的保护范围内。

Claims (8)

1.一种应用可变动错误更正码容量的快闪存储器控制方法,其特征在于,包含:
根据一快闪存储器内,一数据页面的容量及一第一管理数据的长度,在该快闪存储器的一第一通道中,预设定具有一第一长度的错误更正码;
根据该数据页面的容量及一第二管理数据的长度,在该快闪存储器的一第二通道中,预设定具有一第二长度的错误更正码;
检查目前所欲存取的通道是否为该第一通道;
若是,则将该第一通道的错误更正码长度设定为该第一长度;以及
若否,则将该第二通道的错误更正码长度设定为该第二长度。
2.如权利要求1所述的应用可变动错误更正码容量的快闪存储器控制方法,其特征在于,更包括下列步骤:
根据所储存数据的种类,在该快闪存储器中,设定一第一种类区块及一第二种类区块;
其中,该第一种类区块的错误更正码长度等于该第一长度。
3.如权利要求2所述的应用可变动错误更正码容量的快闪存储器控制方法,其特征在于,位于该第一通道的该第二种类区块的错误更正码长度等于该第一长度。
4.如权利要求3所述的应用可变动错误更正码容量的快闪存储器控制方法,其特征在于,位于该第二通道的该第二种类区块的错误更正码长度等于该第二长度。
5.如权利要求1所述的应用可变动错误更正码容量的快闪存储器控制方法,其特征在于,更包括下列步骤:
在该第一长度的错误更正码中,建立一第一识别码;以及
在该第二长度的错误更正码中,建立一第二识别码。
6.如权利要求5所述的应用可变动错误更正码容量的快闪存储器控制方法,其特征在于,该第一及该第二识别码分别位于该第一长度及该第二长度的错误更正码的最前一个比特组或最后一个比特组。
7.如权利要求1所述的应用可变动错误更正码容量的快闪存储器控制方法,其特征在于,更包括下列步骤:
在通道的错误更正码长度设定完成之后,根据该快闪存储器的存取动作,若为该第一通道,则在该第一通道中,存取该第一管理数据;以及
在通道的错误更正码长度设定完成之后,根据该快闪存储器的存取动作,若为该第二通道,则在该第二通道中,存取该第二管理数据。
8.如权利要求1所述的应用可变动错误更正码容量的快闪存储器控制方法,其特征在于,该第二长度大于该第一长度。
CN 200910169423 2009-08-31 2009-08-31 应用可变动错误更正码容量的快闪存储器控制方法 Active CN101996688B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200910169423 CN101996688B (zh) 2009-08-31 2009-08-31 应用可变动错误更正码容量的快闪存储器控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200910169423 CN101996688B (zh) 2009-08-31 2009-08-31 应用可变动错误更正码容量的快闪存储器控制方法

Publications (2)

Publication Number Publication Date
CN101996688A CN101996688A (zh) 2011-03-30
CN101996688B true CN101996688B (zh) 2013-03-06

Family

ID=43786702

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200910169423 Active CN101996688B (zh) 2009-08-31 2009-08-31 应用可变动错误更正码容量的快闪存储器控制方法

Country Status (1)

Country Link
CN (1) CN101996688B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI467364B (zh) 2011-07-12 2015-01-01 Phison Electronics Corp 記憶體儲存裝置、記憶體控制器與資料寫入方法
CN106970852A (zh) * 2016-01-14 2017-07-21 钰创科技股份有限公司 闪存错误控制电路及其方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101000569A (zh) * 2006-12-29 2007-07-18 福昭科技(深圳)有限公司 一种对多重扇区进行错误修正编码的方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101000569A (zh) * 2006-12-29 2007-07-18 福昭科技(深圳)有限公司 一种对多重扇区进行错误修正编码的方法

Also Published As

Publication number Publication date
CN101996688A (zh) 2011-03-30

Similar Documents

Publication Publication Date Title
CN101685381B (zh) 固态大容量存储装置的数据串流
US20190252035A1 (en) Decoding method, memory storage device and memory control circuit unit
CN101889267B (zh) 存储器阵列中的差错校正
US20150339073A1 (en) Selection of redundant storage configuration based on available memory space
US9741451B2 (en) Data storage device and data maintenance method thereof
US10445002B2 (en) Data accessing method, memory controlling circuit unit and memory storage device
US10062418B2 (en) Data programming method and memory storage device
CN102394114B (zh) 具有自适应纠错能力的bch码纠错方法
US11210005B2 (en) Unbalanced plane management method, associated data storage device and controller thereof
US10318379B2 (en) Decoding method, memory storage device and memory control circuit unit
US9230684B2 (en) Memory controller, storage device, and memory control method
CN103531246B (zh) 快速以读代写的存储器纠错方法
US11488671B2 (en) Method, associated memory device and controller thereof for performing programming management
CN101794623B (zh) 存储设备的纠错装置及方法
CN105280239A (zh) 一种动态实现固态硬盘ecc校验码的方法和装置
CN108062260A (zh) 一种利用假数据的闪存数据保护方法
EP2889751A1 (en) Method and apparatus for determining redundant array of independent disks
CN101996688B (zh) 应用可变动错误更正码容量的快闪存储器控制方法
US20200185032A1 (en) Decoding method, memory controlling circuit unit and memory storage device
US11101822B1 (en) Data writing method, memory control circuit unit and memory storage apparatus
US20190026227A1 (en) Data writing method, memory control circuit unit and memory storage device
CN103353855A (zh) 一种nand闪存存储设备及其带外数据读取方法
CN110058955B (zh) 具有错误纠正功能的内存和相关内存系统
CN112948166B (zh) 数据处理方法及相关产品
US9436547B2 (en) Data storing method, memory control circuit unit and memory storage device

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210430

Address after: 1 / F, 7 / F, No. 83, Section 2, gongdaowu Road, East District, Hsinchu, Taiwan, China

Patentee after: Asolid Technology Co.,Ltd.

Address before: Hsinchu City, Taiwan, China

Patentee before: INNOSTOR TECHNOLOGY Corp.