CN103310842A - 烧录***及烧录方法 - Google Patents

烧录***及烧录方法 Download PDF

Info

Publication number
CN103310842A
CN103310842A CN201210056477.2A CN201210056477A CN103310842A CN 103310842 A CN103310842 A CN 103310842A CN 201210056477 A CN201210056477 A CN 201210056477A CN 103310842 A CN103310842 A CN 103310842A
Authority
CN
China
Prior art keywords
subregion
bad piece
storage block
priority level
storage
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
Application number
CN201210056477.2A
Other languages
English (en)
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.)
Shenzhen Yuzhan Precision Technology Co ltd
Hon Hai Precision Industry Co Ltd
Original Assignee
Shenzhen Yuzhan Precision Technology Co ltd
Hon Hai Precision Industry Co 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 Shenzhen Yuzhan Precision Technology Co ltd, Hon Hai Precision Industry Co Ltd filed Critical Shenzhen Yuzhan Precision Technology Co ltd
Priority to CN201210056477.2A priority Critical patent/CN103310842A/zh
Priority to TW101108338A priority patent/TW201337939A/zh
Priority to US13/447,298 priority patent/US20130238835A1/en
Publication of CN103310842A publication Critical patent/CN103310842A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/88Masking faults in memories by using spares or by reconfiguring with partially good memories
    • G11C29/883Masking faults in memories by using spares or by reconfiguring with partially good memories using a single defective memory device with reduced capacity, e.g. half capacity
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/816Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout
    • G11C29/822Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout for read only memories

Landscapes

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

Abstract

本发明提供一种烧录***和烧录方法。该方法包括:识别该闪存所有的存储块中不能用于存储数据的坏块;依次读取所有的存储块,当读取到坏块时,将该读取到的坏块与其之前读取到的存储块划分为一个分区;统计出各分区的坏块率;根据各分区的坏块率确定该些分区的优先等级,并将各优先等级和对应分区的地址进行关联;和按照优先等级从高到低的顺序从相应的地址开始先后向各存储块中写入程序。本发明通过坏块的分布位置将闪存所有的存储块划分为若干个分区并进行各分区优先等级的排序,然后优先选择坏块率少的分区进行程序烧录,有利于提高烧录及生产效率。

Description

烧录***及烧录方法
技术领域
本发明涉及烧录***及烧录方法。
背景技术
将程序烧录至闪存(flash)必须在其空白区域进行,如果目标区域已经有数据,必须先擦除后写入。在反复的擦写过程中,flash可能会产生很多坏块,而flash烧录必须跳过这些不能用于存储数据的坏块。现有的flash烧录一般先将flash分为多个分区,然后对该几个分区进行程序的烧录。然而现有的分区比较杂乱,每个分区里面都可能会存在一定数量的坏块,而且坏块随机分布。因此,传统的烧录装置在烧录前需要先进行初始化扫描以发现坏块,并将坏块标记为不可用,这样,烧录时若访问到标记为不可用的坏块就会自动跳到下一个位置继续烧录。
由于坏块分布无规律性,通常,某些分区的坏块数量较大,某些分区的坏块数量较少。然而,现有的烧录装置无法根据坏块的整体分布情况对坏块数量较少的分区进行优先烧录。若从坏块较多的分区开始烧录,则无疑使得访问时间增加,导致生产效率降低。
发明内容
有鉴于此,有必要提供一种烧录***及烧录方法,以解决上述问题。
一种烧录***,应用于一电子装置中,用于将若干程序烧录至一闪存,该***包括:一识别模块,用于识别该闪存的所有存储块中不能用于存储数据的坏块;一分区模块,用于依次读取所有的存储块是否为坏块,在欲存储程序的大小小于依序读取的非坏块存储块总容量时,将该读取到的坏块与其之前读取到的存储块划分为一个分区;一统计模块,用于在该划分的分区多于一个时统计出各分区的坏块率,其中,该坏块率为各分区的坏块数量和该分区的存储块数量的比值;一索引模块,用于根据各分区的坏块率确定该些分区的优先等级,并将各优先等级和对应分区的地址进行关联,其中,坏块率低的分区优先等级较高;坏块率高的分区优先等级较低;和一烧录模块,用于按照优先等级从高到低的顺序从相应的地址开始先后向各存储块中写入程序。
一种烧录方法,用于将程序烧录至一闪存上,该方法包括:识别该闪存所有的存储块中不能用于存储数据的坏块;依次读取所有的存储块,当读取到坏块时,将该读取到的坏块与其之前读取到的存储块划分为一个分区;统计出各分区的坏块率,其中,该坏块率为各分区的坏块数量和该分区的存储块数量的比值;根据各分区的坏块率确定该些分区的优先等级,并将各优先等级和对应分区的地址进行关联,其中,坏块率低的分区优先等级较高;坏块率高的分区优先等级较低;和按照优先等级从高到低的顺序从相应的地址开始先后向各存储块中写入程序。
本发明还提供另一种烧录***以及烧录方法。
本发明的烧录***及烧录方法通过坏块的分布位置将闪存所有的存储块划分为若干个分区并进行各分区优先等级的排序,然后优先选择坏块率少的分区进行程序烧录,有利于提高烧录及生产效率。
附图说明
图1为本发明一较佳实施方式中运行在烧录装置上的烧录***的模块图。
图2为本发明一实施例中的闪存的结构示意图。
图3为本发明一较佳实施方式中的烧录方法的流程图。
图4为本发明另一实施方式中的烧录方法的流程图。
主要元件符号说明
  烧录***   100
  电子装置   200
  闪存   300
  识别模块   11
  分区模块   12
  统计模块   13
  索引模块   14
  烧录模块   15
  擦除模块   16
  第一分区   31
  第二分区   32
  第三分区   33
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
图1为本发明一实施例中的烧录***100的模块图。该烧录***100应用于一电子装置200中,用于将若干程序烧录至一闪存300。在本实施方式中,该电子装置200为一计算机,待烧录至闪存300的程序存储于该电子装置200中。
在本实施方式中,该烧录***100包括一识别模块11、一分区模块12、一统计模块13、一索引模块14和一烧录模块15。
该识别模块11用于识别该闪存300的所有存储块中不能用于存储数据的坏块,其中,所述坏块指不能用于存储数据的坏的存储块。众所周知,每一闪存300包括多个存储块(擦除闪存的基本单位),每个存储块包括多个页(读写闪存的基本单位),每个页包括多个位(取值为0或1),存在位取值不能实现从0到1和从1到0的逆转换的存储块即为坏块。在本实施方式中,该烧录***100还包括一擦除模块16,用于对该闪存300所有存储块的数据进行擦除。该识别模块11在该擦除模块16完成对所有存储块的擦除操作后扫描各存储块的数据是否完全被擦除,若经过擦除后该存储块存在取值不全为1的位,表明该存储块的数据没有完全被擦除,则该识别模块11确定该存储块为坏块。当然,该识别模块11识别某一存储块是否为坏块的方式并不局限于以上实施例所述的。
该分区模块12用于依次读取所有的存储块,当读取到坏块时,将该读取到的坏块与其之前读取到的存储块划分为一个分区。更具体的,该分区模块12在读取到连续分布的坏块时,将该连续分布的所有坏块和与其之前读取到的所有的存储块划分为一个分区。如图2所示,闪存300以2Gb的容量为例进行说明,该闪存300由2048个存储块组成。若该识别模块11识别第16存储块、第17存储块、第18存储块以及第411存储块为坏块,则该分区模块12将该闪存300划分为三个分区:第一分区31从第1存储块到第18存储块;第二分区32从第19存储块到第411存储块;第三分区33从第412存储块到第2048存储块。
该统计模块13用于统计出各分区的坏块率,其中,该坏块率为各分区的坏块数量和该分区的存储块数量的比值。根据上述例子,该统计模块13计算结果为:第一分区31的坏块率为3/18;第二分区32的坏块率为1/(411-19+1);第三分区33的坏块率为1/(2048-412+1)。
该索引模块14用于根据各分区的坏块率确定该些分区的优先等级,并将各优先等级和对应分区的地址进行关联。其中,坏块率低的分区优先等级较高;坏块率高的分区优先等级较低。根据上述例子,第一分区31的优先等级最低,而第三分区33的优先等级最高。各分区的地址即各分区的第一个存储块的起始地址,如第三分区33的地址为第412存储块的地址。
该烧录模块15用于按照优先等级从高到低的顺序从相应的地址开始先后向各存储块中写入程序。
在另一实施方式中,该分区模块12依次读取所有的存储块是否为坏块,当欲存储程序的大小小于依序读取的非坏块存储块总容量时,将该读取到的坏块与其之前读取到的存储块划分为一个分区。反之,该分区模块12在该若干程序的大小不小于依序读取的非坏块存储块总容量时,停止将该些存储块划分成分区,在这种情况下,该烧录模块15直接从该闪存300的第一个存储块的地址开始依次向各存储块中写入程序。
同样的,该统计模块13在该划分的分区多于一个时,统计出各分区的坏块率。反之,该统计模块13在该划分的分区为一个时,不对该分区的坏块率进行统计。在这种情况下,该烧录模块15从该闪存300的第一个存储块的地址开始依次向各存储块中写入程序。
如图3所示,为本发明一较佳实施例中的烧录方法的流程图。该烧录方法包括由烧录***100执行的步骤:
步骤S31:该擦除模块16对该闪存300所有存储块的数据进行擦除操作。
步骤S32:该识别模块11在该擦除模块16完成对所有存储块的擦除操作后扫描各存储块的数据是否完全被擦除,并识别该些数据没有完全被擦除的存储块为坏块。
步骤S33:该分区模块12依次读取所有的存储块,当读取到坏块时,将该读取到的坏块与其之前读取到的存储块划分为一个分区。
步骤S34:该统计模块13统计出各分区的坏块率,其中,该坏块率为各分区的坏块数量和该分区的存储块数量的比值。
步骤S35:该索引模块14根据各分区的坏块率确定该些分区的优先等级,并将各优先等级和对应分区的地址进行关联。
步骤S36:该烧录模块15按照优先等级从高到低的顺序从相应的地址开始先后向各存储块中写入程序。
如图4所示,为本发明另一实施例中的烧录方法的流程图。该烧录方法包括由烧录***100执行的步骤:
步骤S41:该擦除模块16对该闪存300所有存储块的数据进行擦除操作。
步骤S42:该识别模块11在该擦除模块16完成对所有存储块的擦除操作后扫描各存储块的数据是否完全被擦除,并识别该些数据没有完全被擦除的存储块为坏块。
步骤S43:该分区模块12依次读取所有的存储块是否为坏块,当欲存储程序的大小小于依序读取的非坏块存储块总容量时,将该读取到的坏块与其之前读取到的存储块划分为一个分区。
步骤S44:该统计模块13在该划分的分区多于一个时,统计出各分区的坏块率,其中,该坏块率为各分区的坏块数量和该分区的存储块数量的比值。
步骤S45:该索引模块14根据各分区的坏块率确定该些分区的优先等级,并将各优先等级和对应分区的地址进行关联。
步骤S46:该烧录模块15按照优先等级从高到低的顺序从相应的地址开始先后向各存储块中写入程序。
本技术领域的普通技术人员应当认识到,以上的实施方式仅是用来说明本发明,而并非用作为对本发明的限定,只要在本发明的实质精神范围之内,对以上实施例所作的适当改变和变化都落在本发明要求保护的范围之内。

Claims (11)

1.一种烧录***,应用于一电子装置中,用于将若干程序烧录至一闪存,其特征在于,该烧录***包括:
一识别模块,用于识别该闪存的所有存储块中不能用于存储数据的坏块;
一分区模块,用于依次读取所有的存储块,当读取到坏块时,将该读取到的坏块与其之前读取到的存储块划分为一个分区;
一统计模块,用于统计出各分区的坏块率,其中,该坏块率为各分区的坏块数量和该分区的存储块数量的比值;
一索引模块,用于根据各分区的坏块率确定该些分区的优先等级,并将各优先等级和对应分区的地址进行关联,其中,坏块率低的分区优先等级较高;坏块率高的分区优先等级较低;和
一烧录模块,用于按照优先等级从高到低的顺序从相应的地址开始先后向各存储块中写入程序。
2.如权利要求1所述的烧录***,其特征在于,该烧录***还包括一擦除模块,用于对所有存储块的数据进行擦除,该识别模块在该擦除模块完成对所有存储块的擦除操作后扫描各存储块的数据是否完全被擦除,并识别该些数据没有完全被擦除的存储块为坏块。
3.如权利要求1所述的烧录***,其特征在于,该分区模块在读取到连续分布的坏块时,将该连续分布的所有坏块和与其之前读取到的所有的存储块划分为一个分区。
4.如权利要求1所述的烧录***,其特征在于,该些分区的地址为各分区的第一个存储块的起始地址。
5.一种烧录方法,用于将程序烧录至一闪存上,其特征在于,该烧录方法包括:
识别该闪存所有的存储块中不能用于存储数据的坏块;
依次读取所有的存储块,当读取到坏块时,将该读取到的坏块与其之前读取到的存储块划分为一个分区;
统计出各分区的坏块率,其中,该坏块率为各分区的坏块数量和该分区的存储块数量的比值;
根据各分区的坏块率确定该些分区的优先等级,并将各优先等级和对应分区的地址进行关联,其中,坏块率低的分区优先等级较高;坏块率高的分区优先等级较低;和
按照优先等级从高到低的顺序从相应的地址开始先后向各存储块中写入程序。
6.如权利要求5所述的烧录方法,其特征在于,所述步骤“识别该闪存所有的存储块中不能用于存储数据的坏块”包括:
对所有存储块的数据进行擦除;
扫描各存储块的数据是否完全被擦除;和
识别该些数据没有完全被擦除的存储块为坏块。
7.如权利要求5所述的烧录方法,其特征在于,该些分区的地址为各分区的第一个存储块的起始地址。
8.一种烧录***,应用于一电子装置中,用于将若干程序烧录至一闪存,其特征在于,该烧录***包括:
一识别模块,用于识别该闪存的所有存储块中不能用于存储数据的坏块;
一分区模块,用于依次读取所有的存储块是否为坏块,在欲存储程序的大小小于依序读取的非坏块存储块总容量时,将该读取到的坏块与其之前读取到的存储块划分为一个分区;
一统计模块,用于在该划分的分区多于一个时,统计出各分区的坏块率,其中,该坏块率为各分区的坏块数量和该分区的存储块数量的比值;
一索引模块,用于根据各分区的坏块率确定该些分区的优先等级,并将各优先等级和对应分区的地址进行关联,其中,坏块率低的分区优先等级较高;坏块率高的分区优先等级较低;和
一烧录模块,用于按照优先等级从高到低的顺序从相应的地址开始先后向各存储块中写入程序。
9.如权利要求8所述的烧录***,其特征在于,该分区模块在该若干程序的大小不小于依序读取的非坏块存储块总容量时,停止将该些存储块划分成分区,该烧录模块直接从该闪存的第一个存储块的地址开始依次向各存储块中写入程序。
10.如权利要求8所述的烧录***,其特征在于,该统计模块在该划分的分区为一个时,不对该分区的坏块率进行统计,该烧录模块直接从该闪存的第一个存储块的地址开始依次向各存储块中写入程序。
11.一种烧录方法,用于将程序烧录至一闪存上,其特征在于,该烧录方法包括:
识别该闪存所有的存储块中不能用于存储数据的坏块;
依次读取所有的存储块是否为坏块,在欲存储程序的大小小于依序读取的非坏块存储块总容量时,将该读取到的坏块与其之前读取到的存储块划分为一个分区;
在该划分的分区多于一个时,统计出各分区的坏块率,其中,该坏块率为各分区的坏块数量和该分区的存储块数量的比值;
根据各分区的坏块率确定该些分区的优先等级,并将各优先等级和对应分区的地址进行关联,其中,坏块率低的分区优先等级较高,坏块率高的分区优先等级较低;和
按照优先等级从高到低的顺序从相应的地址开始先后向各存储块中写入程序。
CN201210056477.2A 2012-03-06 2012-03-06 烧录***及烧录方法 Pending CN103310842A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201210056477.2A CN103310842A (zh) 2012-03-06 2012-03-06 烧录***及烧录方法
TW101108338A TW201337939A (zh) 2012-03-06 2012-03-12 燒錄系統及燒錄方法
US13/447,298 US20130238835A1 (en) 2012-03-06 2012-04-16 Burning system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210056477.2A CN103310842A (zh) 2012-03-06 2012-03-06 烧录***及烧录方法

Publications (1)

Publication Number Publication Date
CN103310842A true CN103310842A (zh) 2013-09-18

Family

ID=49115122

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210056477.2A Pending CN103310842A (zh) 2012-03-06 2012-03-06 烧录***及烧录方法

Country Status (3)

Country Link
US (1) US20130238835A1 (zh)
CN (1) CN103310842A (zh)
TW (1) TW201337939A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104317618A (zh) * 2014-10-24 2015-01-28 福州瑞芯微电子有限公司 一种固件分区处理方法和装置
CN105117266A (zh) * 2015-09-22 2015-12-02 Tcl移动通信科技(宁波)有限公司 一种移动终端的刷机方法及***
CN103744694B (zh) * 2013-12-24 2017-08-11 武汉烽火众智数字技术有限责任公司 基于Nand闪存的动态分区搜索装置及其方法
CN109375931A (zh) * 2018-12-20 2019-02-22 苏州易德龙科技股份有限公司 一种芯片烧录***及控制方法
CN109656584A (zh) * 2019-02-15 2019-04-19 京信通信***(中国)有限公司 一种程序的烧录方法及装置
CN109979518A (zh) * 2019-03-07 2019-07-05 深圳警翼智能科技股份有限公司 用于执法记录仪存储介质的坏区标识方法及***
CN110473584A (zh) * 2018-05-11 2019-11-19 光宝电子(广州)有限公司 固态储存装置中已抹除区块的再验证方法

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103778964B (zh) * 2013-12-30 2016-08-17 上海晨思电子科技有限公司 一种NAND Flash烧写数据的处理、使用方法及装置、***
KR20190041082A (ko) * 2017-10-12 2019-04-22 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
US10509747B2 (en) * 2018-05-17 2019-12-17 Seagate Technology Llc Memory access operation suspend/resume
CN109614118B (zh) * 2018-11-23 2022-05-06 信利光电股份有限公司 一种SPI Flash固件烧录方法及装置
US11112979B2 (en) * 2019-07-26 2021-09-07 Micron Technology, Inc. Runtime memory allocation to avoid and delay defect effects in memory sub-systems

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040049617A1 (en) * 2002-09-05 2004-03-11 Integrated Circuit Solution Inc. Method of firmware update by USB interface
TWI450099B (zh) * 2009-12-10 2014-08-21 Phison Electronics Corp 模擬可覆寫光碟裝置的儲存系統、控制器、電腦系統及方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103744694B (zh) * 2013-12-24 2017-08-11 武汉烽火众智数字技术有限责任公司 基于Nand闪存的动态分区搜索装置及其方法
CN104317618A (zh) * 2014-10-24 2015-01-28 福州瑞芯微电子有限公司 一种固件分区处理方法和装置
CN104317618B (zh) * 2014-10-24 2018-03-27 福州瑞芯微电子股份有限公司 一种固件分区处理方法和装置
CN105117266A (zh) * 2015-09-22 2015-12-02 Tcl移动通信科技(宁波)有限公司 一种移动终端的刷机方法及***
CN110473584A (zh) * 2018-05-11 2019-11-19 光宝电子(广州)有限公司 固态储存装置中已抹除区块的再验证方法
CN109375931A (zh) * 2018-12-20 2019-02-22 苏州易德龙科技股份有限公司 一种芯片烧录***及控制方法
CN109656584A (zh) * 2019-02-15 2019-04-19 京信通信***(中国)有限公司 一种程序的烧录方法及装置
CN109979518A (zh) * 2019-03-07 2019-07-05 深圳警翼智能科技股份有限公司 用于执法记录仪存储介质的坏区标识方法及***

Also Published As

Publication number Publication date
TW201337939A (zh) 2013-09-16
US20130238835A1 (en) 2013-09-12

Similar Documents

Publication Publication Date Title
CN103310842A (zh) 烧录***及烧录方法
CN101354681B (zh) 存储器***、非易失性存储器的磨损均衡方法及装置
US8433844B2 (en) Method for managing a memory device having multiple channels and multiple ways, and associated memory device and controller thereof
US8095724B2 (en) Method of wear leveling for non-volatile memory and apparatus using via shifting windows
JP5002201B2 (ja) メモリシステム
CN103562883B (zh) 存储器装置中的动态存储器高速缓存大小调整
CN104008061B (zh) 内存回收方法及装置
CN102043721B (zh) 闪存存储管理方法
CN102411544A (zh) 管理对于非易失性半导体存储器的存取的存储器管理装置及方法
US8892812B2 (en) Flash memory device and data writing method for a flash memory
CN104699622B (zh) 数据储存装置以及其数据抹除方法
CN101908368A (zh) 电子存储装置及其操作方法
CN105718381A (zh) 存储设备、非易失性存储器以及操作其的方法
US20110264847A1 (en) Data Writing Method and Data Storage Device
CN102955743A (zh) 固态储存装置及其损耗平均控制方法
CN107329902A (zh) 数据储存装置以及快闪存储器控制方法
US8954646B2 (en) Method for managing a plurality of blocks of a flash memory, and associated memory device and controller thereof
CN106155572B (zh) 数据储存装置以及数据存取方法
CN109256166A (zh) 闪存器的擦除方法及闪存器
EP1607984A1 (en) Method for managing bad memory blocks in a nonvolatile memory device, and nonvolatile memory device implementing the management method
CN107391035B (zh) 一种通过编程错误感知降低固态盘磨损的方法
CN103377135A (zh) 寻址方法、装置及***
US20130138910A1 (en) Information Processing Apparatus and Write Control Method
CN111913890B (zh) 一种基于安全模组的非易失存储器随机化读写方法
US8307189B2 (en) Information processing apparatus and semiconductor storage device

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130918