首页> 中国专利> 资料区块的资料管理方法及其相关资料存取系统

资料区块的资料管理方法及其相关资料存取系统

摘要

本发明提供一种将所有管理资料储存于一非挥发性存储器中一管理资料区块的资料管理方法与资料存取系统。该资料管理方法包含有:将该非挥发性存储器分成多个区块,其中各区块包含一属性字段;当一第一区块,其属性字段对应一第一数值,已无剩余的储存空间时,其后续处理方法包含有:找一第二区块,其属性字段对应一第二数值;将该第一区块中所储存的有效资料复制至该第二区块内;设定该第二区块的该属性字段对应该第一数值;以及抹除该第一区块中所储存的资料。

著录项

  • 公开/公告号CN1673978A

    专利类型发明专利

  • 公开/公告日2005-09-28

    原文格式PDF

  • 申请/专利权人 联发科技股份有限公司;

    申请/专利号CN200510002421.9

  • 发明设计人 傅洪勋;

    申请日2005-01-20

  • 分类号G06F12/02;G06F17/30;

  • 代理机构11127 北京三友知识产权代理有限公司;

  • 代理人李强

  • 地址 台湾省新竹科学工业园区

  • 入库时间 2023-12-17 16:29:32

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-01-10

    未缴年费专利权终止 IPC(主分类):G06F12/02 授权公告日:20080430 终止日期:20190120 申请日:20050120

    专利权的终止

  • 2008-04-30

    授权

    授权

  • 2005-11-23

    实质审查的生效

    实质审查的生效

  • 2005-09-28

    公开

    公开

说明书

技术领域

本发明提供一种资料管理方法与资料存取系统,尤指一种将管理资料储存于一非挥发性存储器的资料管理方法与资料存取系统。

背景技术

随着消费性电子产品的日益发展,利用非挥发性存储器(non-volatilememory)来储存数字信息的电子产品的数量也日益增多,举例来说,闪存(flash memory)可应用于数字相机以及移动电话等等,用来储存使用者资料。一般而言,闪存是由多个抹除单元(erase unit)所组成,且在使用上具有一些先天的限制,像是一旦在闪存内某个地址写入资料后,该地址便不能够再被写入新的资料,若要于该地址写入新的资料,则该地址须先被抹除(erase)过而还原回未被写过的状态之后,才能够重新于该地址写入新的资料,而一抹除单元便是一最小抹除单位,亦即于该闪存内做抹除动作时的最小区块;然而,对闪存做写入动作时,最小写入单位(即为一写入单元)的大小并不一定等于抹除区块的大小,而是依据闪存的型态有所不同。一般而言,一个抹除单元的大小通常是一个写入单元大小的数十倍以上,故一个抹除单元亦可视为多个写入单元的集合。因此,对一闪存而言,通常是从头到尾写入一个抹除单元,直到该抹除单元已被写满后,寻找下一个仍有空间的抹除单元继续写入资料,而若要于一已被写满的抹除单元内写入其它资料时,则须先抹除该已被写满的抹除单元内的资料,之后才能将资料写入该抹除单元。

由于闪存具有重复抹写上限的限制,故一般在使用闪存时,会使用软件或是逻辑模块对闪存做抹写均匀化(wear leveling)的处理,如此将使得使用者资料随机散布在闪存内部各处,使得重复抹写的次数获得平均,以延长闪存的使用寿命。然而,当要把用来管理使用者资料的一些管理资料,例如使用者资料文件对照表等,也一起写在闪存上时,便会面临抉择,一是让这些管理资料与使用者资料一起做抹写均匀化的动作,如此一来管理资料便散布在闪存内的各处,会造成管理上的不便,且于计算机重新开机时需要花费一段时间来找寻这些散落四处的管理资料与使用者资料;另一个选择是将管理资料集中地固定储存于闪存的某一个部分内,如此一来管理资料不会与使用者资料混杂在一起,如此可便于管理该些管理资料,且于计算机开机时更可以迅速地找到该些管理资料,但由于管理资料更新的频率往往比使用者资料更加频繁,如此将使得闪存放置管理资料的部分的重复抹写次数高于其它有做抹写均匀化的部分(亦即放置一般资料的部分),此举将使得闪存的寿命因更新管理资料的需求而大幅缩短。

发明内容

因此本发明的目的之一在于提供一种将管理资料储存于一非挥发性存储器的资料管理方法与资料存取系统,以解决上述问题。

本发明提供一种将管理资料储存于一非挥发性(non-volatile)存储器的资料管理方法与资料管理系统。该资料管理方法包含有:将该非挥发性存储器分成多个区块(bank),其中各区块包含一属性字段;当一第一区块,其属性字段对应一第一数值,已无剩余的储存空间时,其后续处理方法包含有:找一第二区块,其属性字段对应一第二数值;将该第一区块中所储存的有效资料复制至该第二区块内;设定该第二区块的该属性字段对应该第一数值;以及抹除第一区块中所储存的资料。

此外,本发明的申请专利范围另提供一种资料存取系统。该资料存取系统包含有:一非挥发性(non-volatile)存储器,其包含有多个区块(bank),其中每一区块均包含一属性字段;一资料存取模决,电连接于该非挥发性存储器,用来将资料写入该非挥发性存储器中一区块内;一资料抹除模块,电连接于该非挥发性存储器,用以抹除该非挥发性存储器中一区块内储存的资料;以及一控制模块,电连接于该资料存取模块、该资料抹除模块与该非挥发性存储器,用来检查一第一区块的属性字段与剩余空间,当该第一区块的该属性字段对应一第一数值,且该第一区块已无剩余的储存空间时,该控制模块会找属性字段对应一第二数值的一第二区块;控制该资料存取模块将该第一区块中所储存的有效资料复制至该第二区块内,并设定该第二区块的该属性字段对应该第一数值;以及控制该资料抹除模块抹除该第一区块中所储存的资料。

本发明资料管理方法与资料存取系统能够将管理资料集中储存在闪存内的一管理资料区块中以便管理与更新管理资料,如此可减少更新及搜寻管理资料的复杂度,以及加快电子装置开机时寻找该闪存内的管理资料的速度,并同时顾及到该闪存需要抹写均匀化的需求,以进一步地延长该闪存的使用寿命。

附图说明

图1为本发明资料存取系统的功能方块图。

图2为图1所示的区块的示意图。

图3为图1所示的区块的状态转换示意图。

图4为图1所示的资料存取系统控制管理资料区块以更新管理资料的流程图。

图5至图9分别为图1所示的闪存执行抹写均匀化的示意图。

符号说明:

10资料存取系统                               12闪存

14a、14b、14c、14d、14e、14f         区块

16a、16b、16c、16d、16e、16f         属性字段

17a、17b、17c、17d、17e              抹除单元

18资料存取模块      20资料抹除模块           22控制模块

具体实施方式

请参阅图1,图1为本发明资料存取系统10的功能方块图。资料存取系统10包含有一闪存12、一资料存取模块18、一资料抹除模块20,以及一控制模块22。闪存12包含有多个区块(bank),一区块皆有一属性字段用以识别该区块内容的属性,一区块包含有多个闪存12本身的最小抹除单元。本实施例中,每一区块的容量大小相同,本发明的抹除单位为区块。如图1所述的例子,闪存12包含有6个容量大小相同的区块14a、14b、14c、14d、14e、14f,其各自包含有一属性字段16a、16b、16c、16d、16e、16f,此外,属性字段16a、16b、16c、16d、16e、16f是分别位于区块14a、14b、14c、14d、14e、14f中的特定位置,例如,每一区块14a、14b、14c、14d、14e、14f的属性字段16a、16b、16c、16d、16e、16f皆位于其区块的最前端,而属性字段16a、16b、16c、16d、16e、16f的用途会于之后的篇幅说明。

资料存取模块18是电连接于闪存12,用来将资料(未显示)写入闪存12内某一区块内,而资料抹除模块20是电连接于闪存12,用以抹除闪存12中某一指定区块内所储存的资料。控制模块22是电连接于资料存取模块18、资料抹除模块20与闪存12,其可控制资料存取模块18将资料写入闪存12内的一区块内,或是设定一区块的属性字段纪录数值为VE、VD、或VM,分别代表该区块的属性为空白区块、一般资料区块、或是管理资料区块。举例言,VE=11、VD=10、VM=01。此外,控制模块22亦可控制资料抹除模块20以抹除闪存12的一区块内所有的资料---包含该区块的属性字段,最后,控制模块22会使该属性字段刚好重设成该默认值VE代表该区块为一空白区块。本发明资料存取系统10的详细运作于后详述。

如上所述,每一区块14a、14b、14c、14d、14e、14f包含有多个抹除单元,以区块14a为例,请参阅图2,图2为图1所示的区块14a的示意图。区块14a包含有五个闪存12本身的最小抹除单元17a、17b、17c、17d、17e,而最小抹除单元17a包含有属性字段16a,请注意,在不影响本发明技术揭露之下,图2仅显示出五个抹除单元17a、17b、17c、17d、17e,然而,本发明并未限制一区块中抹除单元的数量,抹除单元的数量可依据管理资料的大小来进行调整。

请参阅图3,图3为图1所示的区块14a、14b、14c、14d、14e、14f的状态转换示意图。任一个区块14a、14b、14c、14d、14e、14f可对应三种操作状态,分别为:一空白区块、一管理资料区块以及一一般资料区块。一空白区块即为一区块在被抹除其内储存的所有资料之后,即没有再写入任何有效资料(valid data),也就是该空白区块的内容皆为相同的逻辑值,例如“1”,因此,此时该空白区块的属性字段即纪录数值VE=“11”,属性字段刚好不需额外的设定操作。若一空白区块将被写入一管理资料(例如闪存12内一区块14a、14b、14c、14d、14e、14f的抹除次数),则该区块的属性字段的值会从原本的数值VE变成另一数值VM,代表该区块为一管理资料区块,请注意,该管理资料区块并不会储存有一般资料(使用者资料)。若一空白区块将被写入一般资料,则该区块的属性字段的值会从原本的数值VE变成另一数值VD,代表该区块为一一般资料区块,请注意,该一般资料区块不会储存有管理资料。

然而,当一管理资料区块或是一一般资料区块写满资料以后,若要继续储存新的资料的话,则必须先经过资料抹除的动作,也就是依序抹除该区块内(前述的管理资料区块或是一般资料区块)每一个最小抹除单元所储存的资料(包含该区块的属性字段内储存的数值),直到该区块中所有最小抹除单元还原成为空白的抹除单元为止(举例言,抹除后所有的内容都是“1”),最后,该区块即还原成为一空白区块,此时该区块的属性字段的值自然成为数值VE=“11”。因此,由上可知,本发明资料存取系统10可藉由一区块的属性字段的值来辨认该区块为一管理资料区块、一空白区块或是一一般资料区块。此外,若区块内所储存的资料(一般资料或管理资料)为最新的资料或是仍需被使用的资料,则被定义为有效资料,否则即视为无效资料。

假设资料存取系统10中的区块14c为一管理资料区块,区块14e、14f为空白区块,而其余的区块14a、14b、14d皆为一般资料区块。由于区块14c为一管理资料区块,因此控制模块22会驱动资料存取模块18将区块14c的属性字段16c的值设定为数值“01”,而关于所有区块14a、14b、14c、14d、14e、14f的管理资料都会被集中并且只储存在区块14c内,因此,若有任何关于管理资料的更新,都只会在区决14c内进行写入与更新的动作。当一执行信息存取系统10的电子装置(例如一计算机或一手机)开机时,控制模块22便藉由检查每一区块14a、14b、14c、14d、14e、14f的属性字段16a、16b、16c、16d、16e、16f的值,必然可在6次(闪存12内的区块的个数为6)搜寻操作以内就可找出闪存12中区块14c(属性字段16c的值为数值“01”)即为管理资料区块,进而在区块14c内重新定位并找齐所有的管理资料,相较于现有分散储存管理资料的机制,本发明资料存取系统10可省去搜寻整个闪存12的动作,并进一步加快了该电子装置的开机速度。

请参阅图4,图4为图1所示的资料存取系统10控制管理资料区块以更新管理资料的流程图。资料存取系统10更新管理资料的运作包含有下列步骤:

步骤200:开始;

步骤202:一管理资料区块BlockM是否已被写满而无剩余的储存空间?若是,执行步骤204;若否,执行步骤212;

步骤204:找出一空白区块BlockE,该空白区块即将成为新的管理资料区块;

步骤206:将区块BlockM中所储存的所有有效资料复制至该区块BlockE内;

步骤208:设定该区块BlockE的属性字段值为VM,使该区块成为该新的管理资料区块;

步骤210:抹除该区块BlockM中所储存的所有资料;

步骤212:使用目前的管理资料区块做为管理资料的储存/更新的空间;以及

步骤214:结束。

上述操作兹配合图1详述如下。于资料存取系统10内,承上所述,假设目前的管理资料区块为区块14c,而控制模块22欲控制资料存取模块18以更新管理资料,亦即希望将新的管理资料循序地写入(program)区块14c内,然而,控制模块须先检查区块14c中剩余的储存空间,亦即先判断区块14c是否已被写满(步骤202)。举例来说,若区块14c剩余的储存空间不足以纪录新的管理资料时,控制模块22便判断区块14c已被写满,或者,当区块14c剩余的储存空间低于一临界值时,控制模块22便判断区块14c已被写满,均属本发明的范畴。

若区块14c尚有空间可用来储存新的管理资料,因此控制模块22控制资料存取模块18,将管理资料写入目前的管理资料区块,也就是区块14c内(步骤212);然而,若区块14c已被写满时,此时控制模块22需要找出一个空白区块作为新的管理资料区块,且为顾及闪存12抹写均匀化的需求,控制模块22从闪存12中所有属性字段对应数值VE的空白区块中选出具有最少资料抹除次数的一个空白区块,例如,本实施例选出空白区块14e来作为新的管理资料区块(步骤204),此时,虽然区块14c(旧的管理资料区块)已经被写满了,但其内部储存的管理资料新旧不一,而只有最新的管理资料为需要被保留下来的有效资料,因此,控制模块22控制资料存取模块18,将区块14c中所储存的所有有效资料复制至区块14e(新的管理资料区块)内(步骤206)。接下来,控制模块22驱动资料存取模块18设定区块14e的属性字段16e值为数值VM,使该区块14e正式成为一管理资料区块(步骤208),然后,控制模块22便控制资料抹除模块20抹除区块14c中所储存的所有资料,其包含有无效资料与属性字段16c内所储存的值,换句话说,区块14c最后便成为一空白区块,此时,区块14c的属性字段16c数值为VE(步骤210)。之后,控制模块22控制资料存取模块18,将新的管理资料写入目前的管理资料区块,也就是区块14e内(步骤212)以完成更新管理资料的操作(步骤214)。

如此一来,只要于信息存取系统10内保持至少一空白区块,便可不断的更换管理资料区块以成功地储存与更新管理资料,且信息存取系统10可以透过属性字段的内容便可快速地找到目前的管理资料区块为哪一区块。本发明信息存取系统10与其采用的资料管理方法减少更新及搜寻管理资料的复杂度,此外,如上所述,于写入管理资料的操作中,为了顾及闪存12抹写均匀化的需求,控制模块22从闪存12中所有属性字段对应数值VE的空白区块中选出具有最少资料抹除次数的一个空白区块,因此可避免下列情况发生:若管理资料都储存于固定的一个区块内,当该区块因为更新过度频繁而造成该区块的抹除次数达到上限时,此时,该区块便无法用来正确地纪录资料,因而导致闪存12无法继续被使用,形同闪存12的使用寿命减少。

请参阅图5至图9,图5至图9分别为图1所示的闪存12执行抹写均匀化的示意图。不论是写入管理资料或一般资料,闪存12均会执行抹写均匀化的操作以达到延长闪存12的使用寿命的目的。当管理资料区块14c写满资料而无法继续储存新的管理资料时,控制模块22便比较资料抹除次数来找到一空白区块(如区块14e),如图5所示,区块14e便预定成为闪存12中新的管理资料区块;接着,控制模块22控制资料存取模块18,将区块14c(旧的管理资料区块)中所储存的所有的有效资料复制至区块14e(新的管理资料区块)内,之后并进一步地控制资料抹除模块18将区块14c抹除还原成为一空白区块,其操作结果如图6所示。此时,区块14e便可以继续接受新的管理资料的写入,直至被写满为止。

通常于更新一般资料时,也会一并更新管理资料,而管理资料的更新与写入已详述如上,对于一般资料的更新与写入而言,当一个一般资料区块写满之后,若在闪存12内包含有两个以上的空白区块时,其中一空白区块便被选取以作为下一个用来写入一般资料的一般资料区块,此时控制模块22控制资料存取模块18将该选取的空白区决的属性字段设定为数值VD,亦即该选取的空白区块便转变成为一一般资料区块,换句话说,于一个一般资料区块写满之后,才需再寻找另一个空白区块来作为所需的一般资料区块,以此类推,直到闪存12内仅剩一空白区块时,此时信息存取系统10便需执行必要的垃圾收集(garbage collection)程序,其运作将会于之后的篇幅中详加叙述。

如图6所示,区块14d(其为一般资料区块)仍有储存空间可写入一般资料,于区块14d被写满之后,控制模块22从闪存12中所有属性字段对应数值VE的区块14c、14f(其为空白区块)中选出具有最少资料抹除次数的一个空白区块,于此一实施例中,假设所选出的是区块14f,之后,控制模块22控制资料存取模块18将区块14f的属性字段16f设定为数值VD,以使其成为一般资料区块,用来继续储存新的一般资料,其操作结果如图7所示。之后,在区块14f亦已被写满后,并且闪存12内仅剩下一个空白区块(亦即区块14c)时,则信息存取系统10须开始执行上述所提到的垃圾收集程序。首先须从区块14a、14b、14d、14e、14f中选出一区块来作为一需执行垃圾收集的对象,其可为一一般资料区块或为一管理资料区块,因此控制模块22便控制资料存取模块18来读取管理资料区块14e内所储存的管理资料来得知区块14a、14b、14d、14e、14f中每一区块的抹除次数,以选择一抹除次数最少的区块作为该垃圾收集对象。于本实施例中,假设区块14a被选为该垃圾收集对象,如图8所示。

之后,控制模块22便控制资料存取模块18将区块14a内有效的一般资料复制到目前唯一的空白区块(区块14c)中,并且将区块14c的属性字段16c变更为数值VD,接着,控制模块22再控制资料抹除模块20抹除区块14a中所有的资料,也就是区块14a被还原成为一空白区块。如图9所示,区块14a后续便能用来写入资料。由于在选择垃圾收集对象时须尽量配合让闪存12抹写均匀化的特性,所以当要更新储存管理资料的管理资料区块时,所选择的空白区块(即为下一个管理资料区块)也是在顾及闪存12抹写均匀化后所清理出来的,故由此实施例可以看出,既使管理资料被更新的频率比一般资料高,也就是更新管理资料区块的频率较高,然而透过本发明更新管理资料区块的方式,仍然能够达成驱使闪存12抹写均匀化的目的。

请注意,于本实施例中的属性字段的使用仅为一个分辨管理资料区块、一般资料区块或是空白区块的方式,亦可利用其它方式达成相同功用,且本发明虽是以闪存为例,然而并未被限制只能应用于闪存上,亦即,本发明方法可应用于一具有与闪存类似的特征与功能的资料储存装置上,像是若该资料储存装置内已被写入资料的部分想要被重复写入资料,则须先抹除该部分所储存的资料后,才能在该部分再次写入资料,且该资料储存装置可被区分成多个区块,依据该多个区块储存的内容,可将该多个区块分配为管理资料区块及一般资料区块。

相较于现有技术,本发明资料管理方法与资料存取系统能够将管理资料集中储存在闪存内的一管理资料区块中以便管理与更新管理资料,如此可减少更新及搜寻管理资料的复杂度,以及加快电子装置开机时寻找该闪存内的管理资料的速度,并同时顾及到该闪存需要抹写均匀化的需求,以进一步地延长该闪存的使用寿命。

以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号