CN104572336A - 一种闪存错误检测方法及装置 - Google Patents

一种闪存错误检测方法及装置 Download PDF

Info

Publication number
CN104572336A
CN104572336A CN201510017290.5A CN201510017290A CN104572336A CN 104572336 A CN104572336 A CN 104572336A CN 201510017290 A CN201510017290 A CN 201510017290A CN 104572336 A CN104572336 A CN 104572336A
Authority
CN
China
Prior art keywords
page
ecc
flash memory
block
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.)
Granted
Application number
CN201510017290.5A
Other languages
English (en)
Other versions
CN104572336B (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.)
Beijing Zhongxin Information Technology Co ltd
Original Assignee
GUANGDONG ELECTRONICS INFORMATION INDUSTRY GROUP Ltd
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 GUANGDONG ELECTRONICS INFORMATION INDUSTRY GROUP Ltd filed Critical GUANGDONG ELECTRONICS INFORMATION INDUSTRY GROUP Ltd
Priority to CN201510017290.5A priority Critical patent/CN104572336B/zh
Publication of CN104572336A publication Critical patent/CN104572336A/zh
Application granted granted Critical
Publication of CN104572336B publication Critical patent/CN104572336B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

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

Abstract

本发明提供了一种闪存错误检测方法及装置。根据闪存中各页所在位置的物理特性,将一个块中的页按照ECC增长的速度差异分为不同的组,在实际巡检操作中,根据不同的页组的ECC增长速度差异分配不同的ECC巡检门限值,ECC增长越快的页面,ECC巡检门限值越低,反之越高;对某个块中的某一页的读取操作完成后,判断该页当前ECC值是否已经超过该页所在组的巡检门限,否,则等待一个定时周期后,继续读取下一个页;是,则将新数据写入新的页面,让所述该页内数据中的ECC归零。各页面的寿命得到了最大程度的利用,也提升了巡检操作的效率。

Description

一种闪存错误检测方法及装置
技术领域
本发明涉及一种闪存错误检测方法及装置,特别是涉及一种适用于包含Nand Flash闪存介质的存储器的闪存错误检测方法及装置。
背景技术
目前,Nand Flash作为非易失存储介质,从TF卡、SD卡到SSD硬盘及各种电子设备,都得到了广泛的应用。Nand Flash闪存的对外封装形式是颗粒设计,每个颗粒中有一个或多个Die,每个Die有数个块组成,而块则由页组成,页中包含数个数据单元,这些数据单元根据设计可以存储1bit到几bit的数据。在操作上,必须要先擦除才能写入,擦除以块为最小单位,写入和读取以页为最小单位。Nand Flash闪存存在寿命,以擦除/写入周期作为衡量标准指标。
Nand Flash闪存本身存在着固有缺陷,存储数据的单元中的电子数目会随着时间发生变化,当这种变化累积到一定程度之后,就会出现读取状态的变化,即该Bit的值发生了翻转。同时,随着加工工艺的进步,Nand Flash颗粒的制程进一步缩小,也加剧了该问题的发生概率。
在Bit翻转问题的处理上,通用的处理方式是加入ECC校验功能。将一个页中的数据划分为数个ECC单元,当ECC单元内的数据发生翻转的Bit数是在ECC引擎的纠错能力范围内,则该ECC单元中的数据都可以保证正确。但Bit翻转数会随着时间的增长而增加,随着时间累积,ECC单元中Bit翻转的总数目会超过ECC引擎能力,从而导致整个ECC单元的数据失效。这种情况在现实应用中是存在的,比如数据中心的某条历史记录,存放进Nand Flash介质之后只会在查阅时被读取,而不会再次写入。
为解决长期存储的数据有可能超过ECC引擎能力的问题,有一种通用的处理方法,业界称为巡检,即存储器的控制器将按照块的顺序,依次读取块中的每个页,设定一个统一的ECC门限值,读取时发现超过门限值的页,数据会被写入到新页中,由于读取过程中经过了ECC引擎的纠错,则重新写入的数据中无ECC,避免了在本周期内出现数据不可纠正的问题。在一个块读取完成后,继续对下一个块执行同样的操作。
发明内容
巡检技术在解决问题的同时,也引入了新的问题。如图1所示,在一个产品中,其ECC最大可纠值是固定的,代表了一个ECC单元内最大允许出错的Bit数。现有的巡检技术中,ECC巡检门限值也是一个全局的值。但实际观测发现,一个块内,不同的页在同一周期内,其ECC增幅是不一样的。由于ECC巡检门限采用全局统一值,表示需要考虑一个块内最恶劣的页,要保证一个巡检周期内,其ECC的增幅不超过ECC最大可纠值和ECC巡检门限值的差值,而这之中,ECC最大可纠值和巡检周期是在设计初期定下来的,则可调整的是ECC巡检门限值。
采用统一的ECC巡检门限值,覆盖了情况最恶劣的页,但是对于ECC情况较好的页,则在该页离ECC最大可纠值还有很长一段时间的情况下,就会将该页进行重写,会增加擦除/写入周期,这个是对产品寿命的牺牲。特别是在情况恶劣的页在块内的数量较少的情况下,对整个产品的寿命影响牺牲更大。
本发明要解决的技术问题是提供一种延长产品寿命、提升巡检操作效率的闪存错误检测方法及装置。
本发明采用的技术方案如下:一种闪存错误检测方法,根据闪存中各页所在位置的物理特性,将一个块中的页按照ECC增长的速度差异分为不同的组,在实际巡检操作中,根据不同的页组的ECC增长速度的差异分配不同的ECC巡检门限值,ECC增长越快的页面,ECC巡检门限值越低,反之越高。
作为优选,所述方法还包括,对某个块中的某一页的读取操作完成后,判断该页当前ECC值是否已经超过该页所在组的巡检门限,否,则等待一个定时周期后,继续读取下一个页;是,则将新数据写入新的页面,并让所述新页面内数据中的ECC归零。
作为优选,所述方法还包括,在将所述新页面内数据中的ECC归零的同时,将该块内,后面还没有被读取过的页面,不等待巡检的定时器,依次读完,在确认读操作的过程中,依然和本页面所在的组对应的巡检门限值进行对比。
作为优选,所述方法还包括,将所述块读取完成后,选择下一个块的第一页,巡检的定时器重新工作。
一种闪存错误检测方法,对某个块中的某一页的读取操作完成后,判断该页当前ECC值是否已经超过该页所在组的巡检门限,否,则等待一个定时周期后,继续读取下一个页;是,则将新数据写入新的页面,并让所述新页面内数据中的ECC归零。
作为优选,所述方法还包括,在将所述新页面内数据中的ECC归零的同时,将该块内,后面还没有被读取过的页面,不等待巡检的定时器,依次读完,在确认读操作的过程中,依然和本页面所在的组对应的巡检门限值进行对比。
作为优选,所述方法还包括,将所述块读取完成后,选择下一个块的第一页,巡检的定时器重新工作。
一种闪存错误检测装置,其特征在于,包括
页分组模块,根据闪存中各页所在位置的物理特性,将一个块中的页按照ECC增长的速度差异分为不同的组;
巡检门限值分配模块,根据不同的页组的ECC增长速度的差异分配不同的ECC巡检门限值,ECC增长越快的页面,ECC巡检门限值越低,反之越高。
作为优选,还包括,
巡检门限超出判断模块,对某个块中的某一页的读取操作完成后,判断该页当前ECC值是否已经超过该页所在组的巡检门限;
超出巡检门限处理模块,将超出的新数据写入新的页面,并让所述新页面内数据中的ECC归零。
作为优选,还包括,读取操作模块,在将所述新页面内数据中的ECC归零的同时,将该块内,后面还没有被读取过的页面,不等待巡检的定时器,依次读完。
与现有技术相比,本发明的有益效果是:根据各页面实际的不同,分别进行了ECC巡检门限的设置,各页面的寿命得到了最大程度的利用;读取到ECC超限的情况后,会对本块内的所有页全部读取一遍,由于一个块内的页之间相互影响较大,这种情况下,发现这个块内其他页同样出现ECC超限的几率也会大大增加,因此,也提升了巡检操作的效率。
附图说明
图1为ECC累积值示意图。
图2为本发明其中一实施例的分组逻辑示意图。
图3为本发明其中一实施例的巡检控制流程示意图。
图4为本发明其中一实施例的ECC超限处理流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本说明书(包括任何附加权利要求、摘要和附图)中公开的任一特征,除非特别叙述,均可被其他等效或者具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
Nand Flash闪存以页作为其操作过程中最小的读写单位,若干个页Page(128/256/512)组成一个块Block。现有的巡检方案按照块的顺序依次读取块中的每一个页,以此确定是否有页出现了超过ECC门限的情况。由于采用的全局统一的ECC门限值,很多ECC情况较好的页也会在超过这个统一门限值的情况下被重写,浪费了一部分寿命。
在本发明方案中,基于颗粒实际的情况,根据闪存中各页所在位置的物理特性,将一个块中的页按照ECC增长的速度差异分为不同的组,在实际巡检操作中,根据不同的页组的ECC增长速度的差异分配不同的ECC巡检门限值,ECC增长越快的页面,ECC巡检门限值越低,反之越高。
如图2所示,需要根据块内各页的特性差异以及特定的技术手段,将同一个块内的各页分成不同的组,组内的页越容易出现Bit翻转的情况,则其对应的ECC巡检门限值越低。
将页面进行分组,为每组分配不同的ECC巡检门限值,确保在巡检周期不变的情况下,本组内的页面在一个周期内,其ECC增长值不会由本组的ECC巡检门限值增长到超过ECC最大可纠值。在不增加成本和保证数据的前提下,保证产品寿命的最大实现,从而提升产品的可靠性。
如图3所示,启动巡检后,先按照块的顺序选择块,依次选择块内的各页,当一次读写操作的定时器到时后,将当前页发送给读取操作执行结构进行读取操作,在读取完成后,和该页所在的组对应的ECC巡检门限值进行对比,即图中的门限值n,判断该页当前ECC值是否已经超过该页所在组的巡检门限,在门限以下,则等待巡检定时器发起下一个页面的读取,等待一个定时周期后,继续读取下一个页;超过该组的门限,则将新数据写入新的页面,并让所述新页面内数据中的ECC归零。
如图4所示,读取到ECC超限之后,会先将该页的数据写入到一个新页面中,由于经过了ECC引擎的纠正,则该页面中发生Bit翻转的数据已经被纠正,即写入新页的数据是没有Bit翻转的。
在将所述新页面内数据中的ECC归零的同时,将该块内,后面还没有被读取过的页面,不等待巡检的定时器,依次读完,在确认读操作的过程中,依然和本页面所在的组对应的巡检门限值进行对比,,直到将整个块遍历完成,在这个过程中,发现的ECC超限的页也会进行一样的操作步骤,即经过ECC引擎纠错后,写入新页,将所有发生Bit翻转的数据均纠正过来。
将所述块读取完成后,即在该块的所有页被遍历完成后,等待定时器的下次启动,选择下一个块的第一页,巡检的定时器重新工作。
现有的技术,没有对各块内的页进行区分,设定的ECC巡检门限是为了满足情况最恶劣的页面,相对于其他的页面而言,对其寿命有较大的浪费。
本方案中,根据各页面实际的不同,分别进行了ECC巡检门限的设置,也就是说,各页面的寿命得到了最大程度的利用。
同时,本方案中,读取到ECC超限的情况后,会对本块内的所有页全部读取一遍。由于一个块内的页之间相互影响较大,这种情况下,发现这个块内其他页同样出现ECC超限的几率也会大大增加。因此,也提升了巡检操作的效率。
可以举例分析该方案的实际效果。采用本方案后,最差组含有2%的页,需要在巡检周期t内进行一次重写,其ECC门限值为E1;中间组含有49%的页,可以在4个巡检周期内被重写,其在2t时间内ECC数增长到E1;最优组含有49%的页,可以在8个巡检周期内被重写,其在4t时间内ECC数增长到E1。假设一个块内有128页面。则现有方案,8t时间内,
(2%*8 + 49%*(8t/2t) + 49%*(8t/4t))*128=396页被重新写入,才有本方案后,8t时间内
(2%*8 + 49%*(8t/4t) + 49%*(8t/8t))*128=208页被重新写入。
可见,在数据不变的情况下,同样的时间内,为保证数据的可靠,现方案耗费的新页面数接近本方案的两倍。

Claims (10)

1.一种闪存错误检测方法,根据闪存中各页所在位置的物理特性,将一个块中的页按照ECC增长的速度差异分为不同的组,在实际巡检操作中,根据不同的页所在组的ECC增长速度差异分配不同的ECC巡检门限值,ECC增长越快的页面,ECC巡检门限值越低,反之越高。
2.根据权利要求1所述的闪存错误检测方法,所述方法还包括,对某个块中的某一页的读取操作完成后,判断该页当前ECC值是否已经超过该页所在组的巡检门限,否,则等待一个定时周期后,继续读取下一个页;是,则将新数据写入新的页面,并让所述新页面内数据中的ECC归零。
3.根据权利要求2所述的闪存错误检测方法,所述方法还包括,在将所述新页面内数据中的ECC归零的同时,将该块内,后面还没有被读取过的页面,不等待巡检的定时器,依次读完,在确认读操作的过程中,依然和本页面所在的组对应的巡检门限值进行对比。
4.根据权利要求3所述的闪存错误检测方法,所述方法还包括,将所述块读取完成后,选择下一个块的第一页,巡检的定时器重新工作。
5.一种闪存错误检测方法,对某个块中的某一页的读取操作完成后,判断该页当前ECC值是否已经超过该页所在组的巡检门限,否,则等待一个定时周期后,继续读取下一个页;是,则将新数据写入新的页面,并让所述新页面内数据中的ECC归零。
6.根据权利要求5所述的闪存错误检测方法,所述方法还包括,在将所述新页面内数据中的ECC归零的同时,将该块内,后面还没有被读取过的页面,不等待巡检的定时器,依次读完,在确认读操作的过程中,依然和本页面所在的组对应的巡检门限值进行对比。
7.根据权利要求6所述的闪存错误检测方法,所述方法还包括,将所述块读取完成后,选择下一个块的第一页,巡检的定时器重新工作。
8.一种闪存错误检测装置,其特征在于,包括
页分组模块,根据闪存中各页所在位置的物理特性,将一个块中的页按照ECC增长的速度差异分为不同的组;
巡检门限值分配模块,根据不同的页组的ECC增长速度的差异分配不同的ECC巡检门限值,ECC增长越快的页面,ECC巡检门限值越低,反之越高。
9.根据权利要求8所述的闪存错误检测装置,其特征在于,还包括,
巡检门限超出判断模块,对某个块中的某一页的读取操作完成后,判断该页当前ECC值是否已经超过该页所在组的巡检门限;
超出巡检门限处理模块,将超出的新数据写入新的页面,并让所述新页面内数据中的ECC归零。
10.根据权利要求9所述的闪存错误检测装置,其特征在于,还包括,读取操作模块,在将所述新页面内数据中的ECC归零的同时,将该块内,后面还没有被读取过的页面,不等待巡检的定时器,依次读完。
CN201510017290.5A 2015-01-14 2015-01-14 一种闪存错误检测方法及装置 Active CN104572336B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510017290.5A CN104572336B (zh) 2015-01-14 2015-01-14 一种闪存错误检测方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510017290.5A CN104572336B (zh) 2015-01-14 2015-01-14 一种闪存错误检测方法及装置

Publications (2)

Publication Number Publication Date
CN104572336A true CN104572336A (zh) 2015-04-29
CN104572336B CN104572336B (zh) 2018-01-26

Family

ID=53088475

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510017290.5A Active CN104572336B (zh) 2015-01-14 2015-01-14 一种闪存错误检测方法及装置

Country Status (1)

Country Link
CN (1) CN104572336B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111078498A (zh) * 2019-12-03 2020-04-28 山东华芯半导体有限公司 一种ssd中数据巡检的方法
CN111737042A (zh) * 2020-05-26 2020-10-02 上海汽车工业(集团)总公司 Nand-flash page位翻转控制方法及控制模块

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090204752A1 (en) * 2006-10-20 2009-08-13 Fujitsu Limited Memory device and refresh adjusting method
CN101796497A (zh) * 2007-07-18 2010-08-04 富士通株式会社 存储器刷新装置和存储器刷新方法
US20100332943A1 (en) * 2009-06-29 2010-12-30 Sandisk Corporation Method and device for selectively refreshing a region of a non-volatile memory of a data storage device
CN103092531A (zh) * 2013-01-21 2013-05-08 中国科学院苏州纳米技术与纳米仿生研究所 一种消除固态存储系统读取错误的方法
CN103745753A (zh) * 2013-12-17 2014-04-23 记忆科技(深圳)有限公司 基于闪存的纠错方法与系统
CN103839578A (zh) * 2012-11-27 2014-06-04 李欣 一种提高基于nand的固态存储器数据保持时间的方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090204752A1 (en) * 2006-10-20 2009-08-13 Fujitsu Limited Memory device and refresh adjusting method
CN101796497A (zh) * 2007-07-18 2010-08-04 富士通株式会社 存储器刷新装置和存储器刷新方法
US20100332943A1 (en) * 2009-06-29 2010-12-30 Sandisk Corporation Method and device for selectively refreshing a region of a non-volatile memory of a data storage device
CN103839578A (zh) * 2012-11-27 2014-06-04 李欣 一种提高基于nand的固态存储器数据保持时间的方法
CN103092531A (zh) * 2013-01-21 2013-05-08 中国科学院苏州纳米技术与纳米仿生研究所 一种消除固态存储系统读取错误的方法
CN103745753A (zh) * 2013-12-17 2014-04-23 记忆科技(深圳)有限公司 基于闪存的纠错方法与系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111078498A (zh) * 2019-12-03 2020-04-28 山东华芯半导体有限公司 一种ssd中数据巡检的方法
CN111737042A (zh) * 2020-05-26 2020-10-02 上海汽车工业(集团)总公司 Nand-flash page位翻转控制方法及控制模块

Also Published As

Publication number Publication date
CN104572336B (zh) 2018-01-26

Similar Documents

Publication Publication Date Title
CN106486170B (zh) 固态硬盘的潜在坏块定位方法及装置
CN103455386A (zh) 一种修复出错数据的方法和设备
CN103955431A (zh) 一种闪存存储设备中数据管理的方法及装置
CN106484761A (zh) 用于改进储存日志的方法和系统
KR20150095741A (ko) 솔리드 스테이트 드라이브에서 하위 페이지 데이터 복구를 위한 시스템 및 방법
CN104156174A (zh) 基于条带的固态硬盘raid实现方法及装置
CN103049354B (zh) 数据修复方法、数据修复装置以及存储系统
US20240168837A1 (en) Performance Improvement For Storage Devices
CN113366452A (zh) 存储器子系统的事件日志信息的管理
CN103279424A (zh) 一种Nand Flash的坏列管理装置和方法
CN104794063A (zh) 一种具备电阻式存储器的固态储存装置的控制方法
CN104658610A (zh) 一种动态调整的闪存错误检测方法及装置
CN105529050B (zh) 一种降低对uwl进行读取发生时间超时错误的方法
CN102981969A (zh) 重复数据删除的方法及其固态硬盘
CN102981930A (zh) 一种磁盘阵列多级数据自动修复的方法
CN106205731A (zh) 信息处理方法及存储设备
CN107632778B (zh) 一种Nand Flash扫描检测方法和系统
CN107170482B (zh) 存储器读取方法及存储器装置
CN104572336A (zh) 一种闪存错误检测方法及装置
WO2022037168A1 (zh) 一种闪存芯片中块读取与页读取换算关系测试方法及系统
CN110444243A (zh) 存储设备读错误纠错能力的测试方法、系统及存储介质
CN104615503A (zh) 降低对存储器接口性能影响的闪存错误检测方法及装置
CN203311409U (zh) 一种Nand Flash的坏列管理装置
KR101512927B1 (ko) 비휘발성 메모리의 페이지 관리 방법 및 장치
CN115509466B (zh) 一种数据管理方法、装置及电子设备和存储介质

Legal Events

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

Effective date of registration: 20180704

Address after: 511458 room 805, No. 80, Hong Kong Road, Nansha District, Guangzhou, Guangdong.

Patentee after: Guangdong Huasheng Data Solid State Storage Co.,Ltd.

Address before: 510507 8, 188, Yue Ken Road, Tianhe District, Guangzhou, Guangdong.

Patentee before: GUANGDONG ELECTRONICS INFORMATION INDUSTRY GROUP LTD.

PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Method and device for detecting flash memory errors

Effective date of registration: 20200629

Granted publication date: 20180126

Pledgee: GUANGDONG ELECTRONICS INFORMATION INDUSTRY Group Ltd.

Pledgor: Guangdong Huasheng Data Solid State Storage Co.,Ltd.

Registration number: Y2020440000171

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240403

Address after: Building 6 (North), 1st Floor, No. 1 Shuangqing Road, Haidian District, Beijing, 100000, 123-6

Patentee after: Beijing Zhongxin Information Technology Co.,Ltd.

Country or region after: China

Address before: 511458 room 805, No. 80, Hong Kong Road, Nansha District, Guangzhou, Guangdong.

Patentee before: Guangdong Huasheng Data Solid State Storage Co.,Ltd.

Country or region before: China