存储器的数据写入方法及数据储存装置的制作方法

文档序号:6600823阅读:135来源:国知局
专利名称:存储器的数据写入方法及数据储存装置的制作方法
技术领域
本发明涉及存储器技术领域,更具体地说,涉及一种存储器的数据写入方法及数据储存装置。
背景技术
闪存(flash memory)包括多个区块(block),每一区块包括多个页(page)以供数据储存。此外,闪存的每一区块分别对应至不同的地址。当主机欲存取闪存的数据时,主机会向闪存的控制器发送存取命令,该存取命令包括所欲存取的区块的地址。例如,当闪存自控制器接收写入命令时,便依控制器的指示将数据储存至写入地址所对应的区块的某些页。当闪存自控制器收到读取命令时,便依控制器的指示自读取地址对应的区块的某些页读出数据而回传数据至控制器。当闪存的一区块的多个页皆被写入数据后,该区块便无法再次被写入数据。因此, 闪存的多个区块可以大致分为数据区与空白区(spare pool)两区,数据区的区块为已储存数据的区块,而空白区的区块为未储存数据的区块。当主机欲写入数据至对应于位于数据区的一数据区块的地址时,由于该数据区块已无法再被写入更新数据,控制器便只好自空白区取得一空白区块,将该空白区块的地址改为该数据区块的地址,再将更新数据转写入至该空白区块。此时原本的数据区块已无用,控制器便抹除该数据区块的数据,以将数据区块转换为空白区块而置入空白区中。一般来说,当控制器自空白区选取一空白区块供写入更新数据时,控制器运用先进先出法(first-in first-Out,FIF0)。亦即,控制器会由空白区中选取被删除数据的时间最早的空白区块。图2为习知数据写入方法200的流程图。首先,控制器自主机接收一写入命令(步骤202)。假设该写入命令要求控制器将写入数据写入至闪存的一第一数据区块。 由于该第一数据区块已储存数据,控制器无法再将写入数据写入该第一数据区块。因此,控制器必须自闪存的空白区取得一目标空白区块以代替该第一数据区块储存数据。依据先进先出法,控制器由空白区选取被清除数据的时间最早的一第一空白区块(步骤204)。接着, 控制器以该第一空白区块作为一目标空白区块(步骤206)。接着,控制器将该写入数据写入该目标空白区块(步骤218)。此时,该目标空白区块音储存了写入数据而取代了第一数据区块的地位,并被置入数据区。原本的第一数据区块因储存旧数据而无用。因此,控制器清除该第一数据区块的数据,以转换该第一数据区块为一空白区块(步骤220),并将该第一数据区块置入空白区,以留待日后使用。图IA为闪存的数据区110与空白区120中区块的示意图。假设数据区110包括数据区块111、112、11K、11P、11Y、11Z,各具有3、5、15、6、17、10次的清除次数。空白区120 包括空白区块121、122、123、124、12Χ,各具有7、11、30、9、12次的清除次数。假设控制器收到一写入命令,欲将更新数据写入数据区110的数据区块11Κ。由于数据区块IlK已无法重新写入数据,因此控制器依据先进先出法由空白区120选取数据清除时间最早的空白区块121储存数据区块IlK的更新数据。区块121储存数据后被置入数据区110,如第IB图所示。而数据区块1IK被删除数据后成为空白区块被置入空白区120,且其清除次数增加为 16次,如第IB图所示。接着,假设控制器收到一写入命令,欲将更新数据写入数据区110的数据区块IIP。由于数据区块IlP已无法重新写入数据,因此控制器依据先进先出法由空白区120选取数据清除时间最早的空白区块122储存数据区块IlP的更新数据。区块122储存数据后被置入数据区110,如图IC所示。而数据区块IlP被删除数据后成为空白区块被置入空白区120,且其清除次数增加为7次,如图IC所示。然而,图2的数据写入方法200具有缺陷存在。由于控制器在选取供储存数据区块的更新数据的目标空白区块时仅依据先进先出法(步骤204),控制器不会对目标空白区块的清除次数大小进行判断。因此,当目标空白区块的清除次数很大时,一再使用该目标空白区块储存更新数据会使该目标空白区块的清除次数增加快速,而提前磨损该区块直至无法储存数据。图3A为原图IC的数据区110与空白区120中多个区块的示意图。于图3A 中,假设控制器收到一写入命令,欲将更新数据写入数据区110的数据区块111。由于数据区块111已无法重新写入数据,因此控制器依据先进先出法由空白区120选取数据清除时间最早的空白区块123储存数据区块111的更新数据。区块123储存数据后被置入数据区 110,如图3B所示。而数据区块111被删除数据后成为空白区块被置入空白区120,且其清除次数增加为4次,如图3B所示。空白区块123的清除次数已达到30,却仍被运用来储存更新数据后置入数据区110,当区块123再度被删除数据时,会使区块123的清除次数增高, 而提早磨损。一般而言,控制器在选取目标空白区块时必须尽量使用清除次数较低的空白区块,避免使用清除次数很高的空白区块,以使各区块的使用频率均等,从而延长存储器的使用年限。因此,为了解决上述的问题,需要一种新的数据写入方法。

发明内容
本发明要解决的技术问题在于,针对现有技术的上述控制器在选取目标空白区块时某些特定区块具有极高清除次数以使磨损较大的缺陷,提供一种存储器的数据写入方法及数据储存装置。本发明解决其技术问题所采用的技术方案之一是构造一种存储器的数据写入方法,该存储器包含一数据区与一空白区(spare pool),该数据区包含已储存数据的多个数据区块,且该空白区包括未储存数据的多个空白区块;首先,自一主机接收欲将一写入数据写入至该存储器的一第一数据区块的一写入命令;接着,自该空白区选取具有最早清除时间的一第一空白区块;接着,检查是否该第一空白区块的清除次数小于或等于一第一界限值;当该第一空白区块的清除次数小于或等于该第一界限值时,将该写入数据写入该第一空白区块;最后,清除该第一数据区块储存的数据,以转换该第一数据区块为空白区块并置入该空白区。本发明所述的存储器的数据写入方法,其中该方法更包括当该第一空白区块的清除次数大于该第一界限值时,自该空白区中搜寻清除次数小于或等于该第一界线值的一第二空白区块;将该写入数据写入该第二空白区块;以及清除该第一数据区块储存的数据,以转换该第一数据区块为空白区块并置入该空白区。
本发明所述的存储器的数据写入方法,其中该方法更包括当无法由该空白区中搜寻到清除次数小于或等于该第一界线值的该第二空白区块时,进行一磨损平均程序以将该数据区中的一第二数据区块转换为该空白区的一第三空白区块;将该写入数据写入该第三空白区块;以及清除该第一数据区块储存的数据,以转换该第一数据区块为空白区块并置入该空白区;其中该第三空白区块的清除次数小于或等于该第一界线值。本发明所述的存储器的数据写入方法,其中该磨损平均程序的进行更包括自该数据区中搜寻清除次数小于该第一界限值的该第二数据区块;自该空白区中搜寻清除次数大于一第二界限值的一第四空白区块;将该第二数据区块所储存的数据写入该第四空白区块;以及清除该第二数据区块的数据,以转换该第二数据区块为该第三空白区块并置入该空白区;其中该第二界限值大于该第一界限值。本发明所述的存储器的数据写入方法,其中该磨损平均程序的进行更包括自该数据区中搜寻清除次数小于该第一界限值的该第二数据区块;自该空白区中搜寻清除次数最大的一第四空白区块;将该第二数据区块所储存的数据写入该第四空白区块;以及清除该第二数据区块的数据,以转换该第二数据区块为该第三空白区块并置入该空白区;其中该第二界限值大于该第一界限值。本发明所述的存储器的数据写入方法,其中该第二数据区块的取得步骤包括当该数据区不具有清除次数小于该第一界限值的数据区块时,将该数据区的所有数据区块的清除次数减去一预定次数;以及自该数据区重新寻找清除次数小于该第一界限值的该第二数据区块。本发明所述的存储器的数据写入方法,其中该预定次数等于该第一界限值。本发明解决其技术问题所采用的技术方案之二是构造一种数据储存装置,该数据储存装置包括一存储器以及一控制器,该存储器包含一数据区与一空白区(spare pool),其中该数据区包含已储存数据的多个数据区块,该空白区包括未储存数据的多个空白区块;该控制器自一主机接收欲将一写入数据写入至该存储器的一第一数据区块的一写入命令,自该空白区选取具有最早清除时间的一第一空白区块,检查是否该第一空白区块的清除次数小于或等于一第一界限值,以及当该第一空白区块的清除次数小于或等于该第一界限值时,将该写入数据写入该第一空白区块,以及清除该第一数据区块储存的数据以转换该第一数据区块为空白区块并置入该空白区。本发明所述的数据储存装置,其中当该第一空白区块的清除次数大于该第一界限值时,该控制器自该空白区中搜寻清除次数小于或等于该第一界线值的一第二空白区块, 将该写入数据写入该第二空白区块,以及清除该第一数据区块储存的数据以转换该第一数据区块为空白区块并置入该空白区。
本发明所述的数据储存装置,其中当无法由该空白区中搜寻到清除次数小于或等于该第一界线值的该第二空白区块时,该控制器进行一磨损平均程序以将该数据区中的一第二数据区块转换为该空白区的一第三空白区块,将该写入数据写入该第三空白区块,以及清除该第一数据区块储存的数据以转换该第一数据区块为空白区块并置入该空白区,其中该第三空白区块的清除次数小于或等于该第一界线值。本发明所述的数据储存装置,其中该控制器自该数据区中搜寻清除次数小于该第一界限值的该第二数据区块,自该空白区中搜寻清除次数大于一第二界限值的一第四空白区块,将该第二数据区块所储存的数据写入该第四空白区块,以及清除该第二数据区块的数据以转换该第二数据区块为该第三空白区块并置入该空白区,以进行该磨损平均程序, 其中该第二界限值大于该第一界限值。本发明所述的数据储存装置,其中该控制器自该数据区中搜寻清除次数小于该第一界限值的该第二数据区块,自该空白区中搜寻清除次数最大的一第四空白区块,将该第二数据区块所储存的数据写入该第四空白区块,以及清除该第二数据区块的数据以转换该第二数据区块为该第三空白区块并置入该空白区,以进行该磨损平均程序,其中该第二界限值大于该第一界限值。本发明所述的数据储存装置,其中当该数据区不具有清除次数小于该第一界限值的数据区块时,该控制器将该数据区的所有数据区块的清除次数减去一预定次数,以及自该数据区重新寻找清除次数小于该第一界限值的该第二数据区块,以取得该第二数据区块。实施本发明的存储器的数据写入方法及数据储存装置,具有以下有益效果控制器可避免使用清除次数很高的空白区块作为目标空白区块以储存更新数据,以使存储器的各区块的使用频率均等,从而使各区块的清除次数较为平均,以延长存储器的使用年限。因此,本发明的数据储存装置可避免习知技术中某些特定区块具有极高清除次数的情形,从而提升数据储存装置的效能。


下面将结合附图及实施例对本发明作进一步说明,附图中图IA为将数据写入存储器的习知方法的第一示意图;图IB为将数据写入存储器的习知方法的第二示意图;图IC为将数据写入存储器的习知方法的第三示意图;图2为习知数据写入方法的流程图;图3A为显示数据写入方法的缺点的第一示意图;图3B为显示数据写入方法的缺点的第二示意图;图4为依据本发明的数据储存装置的区块图;图5为依据本发明的数据写入方法的流程图;图6A为控制器依据本发明进行数据写入的第一示意图;图6B为控制器依据本发明进行数据写入的第二示意图;图6C为控制器依据本发明进行数据写入的第三示意图;图7A为控制器依据本发明进行磨损平均动作的第一示意图7B为控制器依据本发明进行磨损平均动作的第一示意图;图7C为控制器依据本发明进行磨损平均动作的第二示意图。主要组件符号说明402 控制器;404 存储器;406 主机;408 数据储存装置;410 数据区;420 空白区;411-41Z 数据区块;421-42X 空白区块。
具体实施例方式图4为依据本发明的数据储存装置408的区块图。数据储存装置408耦接至一主机406,包括控制器402与存储器404。于一实施例中,存储器404为一闪存。存储器404 包含多个区块可储存数据。存储器404的区块可分为两群组。数据区410的区块为已储存数据的数据区块411、412、…、41Z。空白区420的区块为未储存数据的空白区块421、 422、…、42X。控制器402则自主机406接收存取命令,再依据存取命令存取存储器404的数据。当控制器402由主机406接收到一写入命令时,控制器402会依据写入命令包含的地址找出于存储器404中所对应的区块。若该区块位于数据区410中的数据区块,则因为该区块已储存数据,无法再将更新数据写入该区块。此时,控制器402便会由空白区420 中取得一空白区块,以供储存原本欲写入数据区块的更新数据。然而,控制器402由空白区 420中选取空白区块的方法,除了依据先进先出法选取清除时间最早的空白区块以外,还需将被选取的空白区块的清除次数(erase count)与一第一界限值比较,其中该清除次数表示第一空白区块被删除数据的次数。若被选取的空白区块的清除次数低于或等于第一界限值,被选取的空白区块才能成为合适的目标空白区块,以供储存原本欲写入数据区块的更新数据。若被选取的空白区块的清除次数大于第一界限值,控制器则必需另行由空白区420中寻找清除次数低于或等于第一界限值的空白区块作为目标空白区块,以供储存原本欲写入数据区块的更新数据。 如此,每次控制器402执行写入命令时,用以储存写入数据的空白区块都是空白区420中清除次数较小的空白区块。因此,控制器可避免使用清除次数很高的空白区块作为目标空白区块以储存更新数据,以使存储器404的各区块的使用频率均等,从而使各区块的清除次数较为平均,以延长存储器404的使用年限。因此,本发明的数据储存装置408可避免习知技术中某些特定区块具有极高清除次数的情形,从而提升数据储存装置408的效能。图5为依据本发明的数据写入方法500的流程图。首先,控制器402自主机406 接收一写入命令(步骤502)。假设该写入命令要求控制器402将写入数据写入至一写入地址,其中该写入地址对应于存储器404的数据区410的一第一数据区块。由于该第一数据区块已储存数据,因此控制器402无法直接将写入数据写入该第一数据区块。因此,控制器
8402自空白区420中取得一空白区块以储存原欲写入第一数据区块的写入数据。首先,控制器402依先进先出法由空白区420中选取被清除数据的时间最早的一第一空白区块(步骤 504)。接着,控制器402将该第一空白区块的清除次数与一第一界限值相比较(步骤506)。 若该第一空白区块的清除次数小于或等于该第一界限值(步骤506),则控制器402可直接以该第一空白区块作为供替代该第一数据区块以储存写入数据的一目标空白区块(步骤 508)。接着,控制器402将该写入数据写入该第一空白区块(步骤510),并将该第一空白区块的逻辑地址设为该第一数据区块的逻辑地址。此时储存旧数据的第一数据区块已被储存新数据的第一空白区块所取代,因此控制器402清除该第一数据区块的数据(步骤512),以转换该第一数据区块为空白区块并置入空白区420中。当控制器402将该第一空白区块的清除次数与第一界限值相比较时(步骤506), 若该第一空白区块的清除次数大于该第一界限值,则该第一空白区块不适合作为储存写入数据的目标空白区块。因此,控制器402必须由空白区420中另选目标空白区块。此时,控制器402自空白区420中搜寻清除次数小于或等于该第一界线值的一第二空白区块(步骤 514)。若控制器402成功地由空白区420的多个空白区块中找到清除次数小于或等于该第一界线值的第二空白区块,则该第二空白区块可直接作为供替代该第一数据区块以储存写入数据的目标空白区块(步骤518)。接着,控制器402将该写入数据写入该第二空白区块 (步骤510),并将该第二空白区块的逻辑地址设为该第一数据区块的逻辑地址。此时储存旧数据的第一数据区块已被储存新数据的第二空白区块所取代,因此控制器402清除该第一数据区块的数据(步骤512),以转换该第一数据区块为空白区块并置入空白区420中。图6A为闪存的数据区410与空白区420中区块的示意图。假设数据区410包括数据区块411、412、41K、41P、41Y、41Z,各具有3、5、15、6、17、10次的清除次数。空白区420包括空白区块421、422、423、424、425,各具有7、11、30、9、12次的清除次数,且空白区块421、 422、423、424、425删除数据的时间依序由早至晚排列。假设控制器402收到一写入命令,欲将更新数据写入数据区410的数据区块41Κ。由于数据区块41Κ已无法重新写入数据,因此控制器402依据方法500由空白区420选取被清除数据的时间最早的空白区块421。假设第一界限值为10。由于被选取的空白区块421的清除次数为7,该清除次数7小于第一界限值10,符合目标空白区块的筛选条件,因此控制器402选择空白区块421作为目标空白区块,以供储存数据区块41Κ的更新数据。接着,空白区块421储存更新数据后被置入数据区410,如图6Β所示。而数据区块41Κ被删除数据后成为空白区块,并被置入空白区420, 且其清除次数增加为16次,如图6Β所示。接着,假设控制器420收到一写入命令,欲将更新数据写入数据区410的数据区块 41Ρ。由于数据区块41Ρ已无法重新写入数据,因此控制器402依据方法500由空白区420 选取被清除数据的时间最早的空白区块422。由于被选取的空白区块422的清除次数为11, 该清除次数11大于第一界限值10而不符合目标空白区块的筛选条件,因此控制器402必须自空白区420中另行选取其它空白区块作为目标空白区块。后续的空白区块423的清除次数为30,该清除次数30同样大于第一界限值10而不符合目标空白区块的筛选条件。再后续的空白区块424的清除次数为9,该清除次数9因小于第一界限值10而符合目标空白区块的筛选条件,因此控制器402可选择空白区块424作为目标空白区块,以供储存数据区块41Ρ的更新数据。空白区块424储存数据后被置入数据区410,如图6C所示。而数据区块41P被删除数据后成为空白区块,被置入空白区420,且其清除次数增加为7次,如图6C 所示。图5的数据写入方法500中的步骤520 528称为磨损平均(wear-leveling)程序。于步骤514中,控制器402于空白区420中搜寻清除次数小于或等于该第一界线值的第二空白区块。然而,若空白区420中的所有空白区块的清除次数均大于第一界限值,则控制器402无法由空白区420中找到适合的第二空白区块(步骤516)。然而,写入数据仍需储存至一目标空白区块,才能完成写入命令的执行。此时,控制器402进行磨损平均程序以将数据区410中的数据区块转换为空白区420的空白区块,以作为目标空白区块供储存写入数据。首先,控制器402自数据区410搜寻清除次数小于该第一界限值的一第二数据区块(步骤520)。接着,控制器402自空白区420搜寻清除次数大于一第二界限值的一第三空白区块,以供与第二数据区块互换(步骤522),其中该第二界限值大于该第一界限值。于一实施例中,控制器402自空白区420中搜寻清除次数最大的空白区块作为该第三空白区块。接着,控制器402将该第二数据区块储存的数据写入该第三空白区块(步骤524), 并将该第三空白区块的逻辑地址设为该第二数据区块的逻辑地址。此时第二数据区块已被清除次数较大的第三空白区块所取代,而控制器402接着便可清除该第二数据区块的数据,以转换该第二数据区块为一第四空白区块(步骤526)。由于第四空白区块的清除次数为第二数据区块的清除次数加一,必然小于或等于第一界限值,因此符合目标空白区块的筛选条件。因此,控制器402接着便以该第四空白区块作为供替代该第一数据区块以储存写入数据的目标空白区块(步骤528)。接着,控制器402将该写入数据写入该第四空白区块(步骤510),并将该第四空白区块的逻辑地址设为该第一数据区块的逻辑地址。此时储存旧数据的第一数据区块已被储存新数据的第四空白区块所取代,因此控制器402清除该第一数据区块的数据(步骤512),以转换该第一数据区块为空白区块并置入空白区420中。图7A、图7B、及图7C为控制器依据本发明进行磨损平均动作的示意图。假设数据区710包括数据区块711、712、713、714、71Z,各具有16、18、12、7、8次的清除次数。空白区 720包括空白区块721、722、723、724、725,各具有12、11、30、32、20次的清除次数,且空白区块721、722、723、724、725被删除数据的时间依序由早至晚排列。于图7A,假设控制器402 收到一写入命令,欲将更新数据写入数据区710的数据区块71Z。由于数据区块71Z储存有数据而已无法重新写入数据,因此控制器402依据方法500由空白区420选取一目标空白区块,以供储存欲写入数据区块71Z的更新数据。假设第一界限值为10,而第二界限值为 30。由于空白区块721 725的清除次数均大于第一界限值10,因此均不适合作为目标空白区块。此时控制器402便依据图5的步骤520 528实行磨损平均程序。控制器402首先由数据区710搜寻到具有小于第一界限值10的清除次数7的数据区块714,并由空白区 720搜寻到具有高于第二界限值30的清除次数32的空白区块724。接着,控制器402以空白区块724储存数据区块714的数据,并自数据区块714删除数据后置入空白区720,且其清除次数增加为8次。此时控制器402已藉实行磨损平均程序而完成区块724与714的互换,如图7B所示。此时空白区720中已有一空白区块714的清除次数8小于第一界限值10,从而空白区块714符合目标空白区块的筛选条件。因此,控制器402选择空白区块714作为目标空白区块,以供储存数据区块71Z的更新数据。接着,空白区块714储存更新数据后被置入数据区710,如图7C所示。而数据区块71Z被删除数据后成为空白区块,并被置入空白区 720,且其清除次数增加为9次,如图7C所示。最后,于进行磨损平均动作的步骤522时,控制器402可能无法于数据区410搜寻到清除次数小于第一界限值的的第二数据区块。此时,表示数据区410中所有的数据区块的清除次数皆大于第一界限值。为使流程继续进行,控制器将存储器404的数据区410中的所有数据区块的清除次数减去一数值,从而使所有数据区块的清除次数变小。于一实施例中,该数值为清除次数的界限值的一半。当数据区410的数据区块的清除次数皆变小后, 控制器402便可自数据区410重新寻找清除次数小于第一界限值的第二数据区块,以供与第三空白区块互换。虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明,任何熟习此项技术者,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,因此本发明的保护范围当视后附的申请专利范围所界定者为准。
权利要求
1.一种存储器的数据写入方法,其中该存储器包含一数据区与一空白区,该数据区包含已储存数据的多个数据区块,该空白区包括未储存数据的多个空白区块,其特征在于,该方法包括自一主机接收欲将一写入数据写入至该存储器的一第一数据区块的一写入命令; 自该空白区选取具有最早清除时间的一第一空白区块; 检查是否该第一空白区块的清除次数小于或等于一第一界限值; 当该第一空白区块的清除次数小于或等于该第一界限值时,将该写入数据写入该第一空白区块;以及清除该第一数据区块储存的数据,以转换该第一数据区块为空白区块并置入该空白区。
2.根据权利要求1所述的存储器的数据写入方法,其特征在于,其中该方法更包括 当该第一空白区块的清除次数大于该第一界限值时,自该空白区中搜寻清除次数小于或等于该第一界线值的一第二空白区块; 将该写入数据写入该第二空白区块;以及清除该第一数据区块储存的数据,以转换该第一数据区块为空白区块并置入该空白区。
3.根据权利要求2所述的存储器的数据写入方法,其特征在于,其中该方法更包括 当无法由该空白区中搜寻到清除次数小于或等于该第一界线值的该第二空白区块时,进行一磨损平均程序以将该数据区中的一第二数据区块转换为该空白区的一第三空白区块;将该写入数据写入该第三空白区块;以及清除该第一数据区块储存的数据,以转换该第一数据区块为空白区块并置入该空白区;其中该第三空白区块的清除次数小于或等于该第一界线值。
4.根据权利要求3所述的存储器的数据写入方法,其特征在于,其中该磨损平均程序的进行更包括自该数据区中搜寻清除次数小于该第一界限值的该第二数据区块; 自该空白区中搜寻清除次数大于一第二界限值的一第四空白区块; 将该第二数据区块所储存的数据写入该第四空白区块;以及清除该第二数据区块的数据,以转换该第二数据区块为该第三空白区块并置入该空白区;其中该第二界限值大于该第一界限值。
5.根据权利要求3所述的存储器的数据写入方法,其特征在于,其中该磨损平均程序的进行更包括自该数据区中搜寻清除次数小于该第一界限值的该第二数据区块; 自该空白区中搜寻清除次数最大的一第四空白区块; 将该第二数据区块所储存的数据写入该第四空白区块;以及清除该第二数据区块的数据,以转换该第二数据区块为该第三空白区块并置入该空白区;其中该第二界限值大于该第一界限值。
6.根据权利要求4所述的存储器的数据写入方法,其特征在于,其中该第二数据区块的取得步骤包括当该数据区不具有清除次数小于该第一界限值的数据区块时,将该数据区的所有数据区块的清除次数减去一预定次数;以及自该数据区重新寻找清除次数小于该第一界限值的该第二数据区块。
7.根据权利要求6所述的存储器的数据写入方法,其特征在于,其中该预定次数等于该第一界限值。
8.一种数据储存装置,其特征在于,包括一存储器,包含一数据区与一空白区,其中该数据区包含已储存数据的多个数据区块, 该空白区包括未储存数据的多个空白区块;以及一控制器,自一主机接收欲将一写入数据写入至该存储器的一第一数据区块的一写入命令,自该空白区选取具有最早清除时间的一第一空白区块,检查是否该第一空白区块的清除次数小于或等于一第一界限值,以及当该第一空白区块的清除次数小于或等于该第一界限值时,将该写入数据写入该第一空白区块,以及清除该第一数据区块储存的数据以转换该第一数据区块为空白区块并置入该空白区。
9.根据权利要求8所述的数据储存装置,其特征在于,其中当该第一空白区块的清除次数大于该第一界限值时,该控制器自该空白区中搜寻清除次数小于或等于该第一界线值的一第二空白区块,将该写入数据写入该第二空白区块,以及清除该第一数据区块储存的数据以转换该第一数据区块为空白区块并置入该空白区。
10.根据权利要求9所述的数据储存装置,其特征在于,其中当无法由该空白区中搜寻到清除次数小于或等于该第一界线值的该第二空白区块时,该控制器进行一磨损平均程序以将该数据区中的一第二数据区块转换为该空白区的一第三空白区块,将该写入数据写入该第三空白区块,以及清除该第一数据区块储存的数据以转换该第一数据区块为空白区块并置入该空白区,其中该第三空白区块的清除次数小于或等于该第一界线值。
11.根据权利要求10所述的数据储存装置,其特征在于,其中该控制器自该数据区中搜寻清除次数小于该第一界限值的该第二数据区块,自该空白区中搜寻清除次数大于一第二界限值的一第四空白区块,将该第二数据区块所储存的数据写入该第四空白区块,以及清除该第二数据区块的数据以转换该第二数据区块为该第三空白区块并置入该空白区,以进行该磨损平均程序,其中该第二界限值大于该第一界限值。
12.根据权利要求10所述的数据储存装置,其特征在于,其中该控制器自该数据区中搜寻清除次数小于该第一界限值的该第二数据区块,自该空白区中搜寻清除次数最大的一第四空白区块,将该第二数据区块所储存的数据写入该第四空白区块,以及清除该第二数据区块的数据以转换该第二数据区块为该第三空白区块并置入该空白区,以进行该磨损平均程序,其中该第二界限值大于该第一界限值。
13.根据权利要求11所述的数据储存装置,其特征在于,其中当该数据区不具有清除次数小于该第一界限值的数据区块时,该控制器将该数据区的所有数据区块的清除次数减去一预定次数,以及自该数据区重新寻找清除次数小于该第一界限值的该第二数据区块, 以取得该第二数据区块。
全文摘要
本发明涉及一种存储器的数据写入方法及数据储存装置,该存储器包含一数据区与一空白区,该数据区包含已储存数据的多个数据区块,且该空白区包括未储存数据的多个空白区块;首先,自一主机接收欲将一写入数据写入至该存储器的一第一数据区块的一写入命令;接着,自该空白区选取具有最早清除时间的一第一空白区块;接着,检查是否该第一空白区块的清除次数小于或等于一第一界限值;当该第一空白区块的清除次数小于或等于该第一界限值时,将该写入数据写入该第一空白区块;最后,清除该第一数据区块储存的数据,以转换该第一数据区块为空白区块并置入该空白区。本发明可使存储器的各区块的使用频率均等,清除次数较为平均,以延长存储器的使用年限。
文档编号G06F12/06GK102222044SQ20101014829
公开日2011年10月19日 申请日期2010年4月16日 优先权日2010年4月16日
发明者萧惟益 申请人:慧荣科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1