用来管理一记忆装置的方法以及其相关的记忆装置与流程

文档序号:13109771阅读:123来源:国知局
本申请是申请日为2009年08月27日、申请号为200910172850.9(分案申请号为201310348181.2)、发明创造名称为“用来管理一记忆装置的方法以及其相关的记忆装置”的中国发明申请的分案申请。技术领域本发明涉及数据通信中闪存(FlashMemory)的控制技术领域,更具体地说,涉及一种用来管理一记忆装置的方法以及其相关的记忆装置。

背景技术:
当一主装置存取一记忆装置例如固态硬盘(SolidStateDrive,SSD)时,该主装置于典型状况下会送出一存取指令与至少一对应的逻辑地址至该记忆装置。该记忆装置的一控制器接收该逻辑地址并藉由利用一逻辑实体地址链结表将该逻辑地址转换为一实体地址。如此,该控制器藉由利用该实体地址来存取该记忆装置的至少一物理内存组件。例如:该内存组件可用一个或多个闪存芯片(为了简明起见,其可称为快闪芯片)来实施。该逻辑实体地址链结表可依照该内存组件中的一记忆单位来建立。例如:该逻辑实体地址链结表可依照区块或页来建立。当该逻辑实体地址链结表依照区块来建立时,该逻辑实体地址链结表可称为逻辑实体区块地址链结表。当该逻辑实体地址链结表依照页来建立时,该逻辑实体地址链结表可称为逻辑实体页地址链结表。另外,一逻辑实体页地址链结表可称为全局页地址链结表,其包含关于该记忆装置中的多个区块(或全部的区块)的诸页的链结关系。假设该内存组件具有X个实体区块,且每一实体区块具有Y个实体页。在该逻辑实体地址链结表依照区块来建立的状况下,该相关的逻辑实体区块地址链结表的建立可透过读取每一实体区块的一页所储存的一逻辑区块地址以及记录该实体区块与相关的逻辑区块之间的关系来实现。为了建立该逻辑实体区块地址链结表,必须读取分别对应于该X个实体区块的X页,其中所需时间假设为x秒。在该逻辑实体地址链结表依照页来建立的状况下,该相关的全局页地址链结表的建立可透过读取全部的实体区块的每一实体页所储存的一逻辑页地址以及记录该实体页与该相关的逻辑页之间的关系来实现。为了建立该全局页地址链结表,必须读取至少X·Y页,需要x·Y秒。若一区块具有1024页,则建立该全局页地址链结表所需时间是建立该逻辑实体区块地址链结表所需时间的1024倍,即1024·x秒;由于处理速度实在太慢了,此为令人无法接受的处理时间。亦即,当按照此方式实施该全局页地址链结表时,存取该记忆装置的整体效能会被拖垮。因此,需要一新颖的方法以便有效率地建立该逻辑实体地址链结表,并且需要相关方法以便管理透过该新颖的方法来运作的记忆装置。

技术实现要素:
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种用来管理一记忆装置的方法以及其相关的记忆装置,以针对该记忆装置的一备用区(SpareRegion)与一数据区的安排进行优化。本发明解决其技术问题所采用的技术方案之一是:构造一种用来管理一记忆装置的方法,该记忆装置包含至少一非遗失性内存组件,每一非遗失性内存组件包含多个区块,该方法包含:自一主装置接收一第一存取指令;分析该第一存取指令以取得属于一第一逻辑区块的一第一主装置地址;将该第一主装置地址链结至一实体区块;自该主装置接收一第二存取指令;分析该第二存取指令以取得属于一第二逻辑区块的一第二主装置地址,其中该第二逻辑区块异于该第一逻辑区块;以及将该第二主装置地址链结至该实体区块。优选的,该第一主装置地址固有地属于该第一逻辑区块,且该第二主装置地址固有地属于该第二逻辑区块。优选的,该方法还包含:分析该第一存取指令以取得一第一数据;分析该第二存取指令以取得一第二数据;将该第一数据写入该实体区块;以及将该第二数据写入该实体区块。优选的,该第一主装置地址链结至该实体区块的至少一第一页,且该第二主装置地址链结至该实体区块的至少一第二页。一种用来管理一记忆装置的方法,该记忆装置包含至少一非遗失性内存组件,每一非遗失性内存组件包含多个区块,该方法包含:自一主装置接收一第一存取指令;分析该第一存取指令以取得属于一逻辑区块的一第一主装置地址;将该第一主装置地址链结至一第一实体区块的至少一页;自该主装置接收一第二存取指令;分析该第二存取指令以取得属于该逻辑区块的一第二主装置地址;以及将该第二主装置地址链结至一第二实体区块的至少一页,其中该第二实体区块异于该第一实体区块。优选的,该第一主装置地址与该第二主装置地址固有地属于该逻辑区块。优选的,该方法还包含:分析该第一存取指令以取得一第一数据;分析该第二存取指令以取得一第二数据;将该第一数据写入该第一实体区块;以及将该第二数据写入该第二实体区块。优选的,该第一主装置地址链结至该第一实体区块的至少一第一页,且该第二主装置地址链结至该第二实体区块的至少一第二页。一种用来管理一记忆装置的方法,该记忆装置包含至少一非遗失性内存组件,每一非遗失性内存组件包含多个区块,该方法包含:提供至少一局部页地址链结表给该记忆装置的至少一区块,其中该至少一局部页地址链结表包含多个页的实体页地址与逻辑页地址之间的链结关系;以及依据该至少一局部页地址链结表建立该记忆装置的一全局页地址链结表;其中,提供至少一局部页地址链结表给该记忆装置的至少一区块的步骤包含:针对该局部页地址链结表建立一暂时局部页地址链结表,其中该暂时局部页地址链结表对应于该记忆装置的写入运作;以及暂时地在该记忆装置的一遗失性内存中储存该暂时局部页地址链结表,并且,若该区块中一页的一实体页地址与一逻辑页地址之间的任何链结关系改变,则更新该暂时局部页地址链结表。优选的,在该区块中的数据页被完全写入之前,该暂时局部页地址链结表暂时地被储于该记忆装置的遗失性内存且被更新。优选的,其中,提供至少一局部页地址链结表给该记忆装置的至少一区块的步骤还包含:复制该暂时局部页地址链结表以建立该局部页地址链结表。优选的,该暂时局部页地址链结表的一字段的排列顺位代表一实体页地址,且该字段的内容代表一相关的逻辑页地址。一种记忆装置,包含:至少一非遗失性内存组件,每一非遗失性内存组件包含多个区块;以及一处理单元,用来依据内嵌于该处理单元或接收自该处理单元之外的一程序代码来管理该记忆装置,其中该处理单元用于提供至少一局部页地址链结表给该记忆装置的至少一区块,该局部页地址链结表包含多个页的实体页地址与逻辑页地址之间的链结关系,其中该处理单元用于依据该至少一局部页地址链结表建立该记忆装置的一全局页地址链结表;其中该处理单元针对该局部页地址链结表建立一暂时局部页地址链结表,该暂时局部页地址链结表对应于该记忆装置的写入运作;在该区块中的数据页被完全写入之前,该处理单元暂时地在该记忆装置的一遗失性内存中储存该暂时局部页地址链结表;以及若该区块中一页的一实体页地址与一逻辑页地址之间的任何链结关系改变时,则该处理单元更新该暂时局部页地址链结表。优选的,在该区块中的数据页被完全写入之前,该暂时局部页地址链结表暂时地被储存于遗失性内存且被更新。优选的,该处理单元复制该暂时局部页地址链结表以建立该局部页地址链结表。优选的,该暂时局部页地址链结表的一字段的排列顺位代表一实体页地址,且该字段的内容代表一相关的逻辑页地址。一种用来管理一记忆装置的方法,该记忆装置包含至少一非遗失性内存组件,每一非遗失性内存组件包含多个区块,该方法包含:提供至少一局部页地址链结表给该记忆装置的至少一区块,其中该局部页地址链结表包含该至少一区块的至少一实体页地址与至少一逻辑页地址之间的链结关系;以及依据该至少一局部页地址链结表建立该记忆装置的一全局页地址链结表。优选的,提供至少一局部页地址链结表给该记忆装置的至少一区块的步骤包含:针对该局部页地址链结表建立一暂时局部页地址链结表,其中该暂时局部页地址链结表对应于该记忆装置的写入运作。优选的,当该区块中至少一数据页已被写入时,该局部页地址链结表被建立。优选的,当该区块中的全部数据页已被写入时,该局部页地址链结表被建立。优选的,该局部页地址链结表的一字段的排列顺位代表一实体页地址,且该字段的内容代表一相关的逻辑页地址。优选的,该局部页地址链结表位于该区块。优选的,该方法还包含:将该局部页地址链结表存入该区块中的一预定页。优选的,提供至少一局部页地址链结表给该记忆装置的至少一区块的步骤还包含:分别提供多个局部页地址链结表给该记忆装置的多个区块;其中依据该局部页地址链结表建立该记忆装置的该全局页地址链结表的步骤还包含:依据这些局部页地址链结表建立该全局页地址链结表。优选的,依据该局部页地址链结表建立该记忆装置的该全局页地址链结表的步骤包含:读取这些局部页地址链结表中的一者以更新该全局页地址链结表。优选的,依据该局部页地址链结表建立该记忆装置的该全局页地址链结表的步骤包含:读取该至少一局部页地址链结表中的每一者以建立该全局页地址链结表。优选的,依据该局部页地址链结表建立该记忆装置的该全局页地址链结表的步骤包含:自该至少一局部页地址链结表读取一第一页的一第一实体页地址与一第一逻辑页地址之间的一第一链结关系;将该第一链结关系写入该全局页地址链结表;自该至少一局部页地址链结表读取该第一页的另一实体页地址与该第一逻辑页地址之间的一第二链结关系;以及将该第二链结关系写入该全局页地址链结表以更新该全局页地址链结表。优选的,该至少一局部页地址链结表包含多个局部页地址链结表;以及该第一链结关系是读取自该至少一局部页地址链结表的一第一局部页地址链结表,且该第二链结关系是读取自该至少一局部页地址链结表的一第二局部页地址链结表。优选的,该全局页地址链结表的一字段的排列顺位代表一逻辑页地址,且该字段的内容代表一相关的实体页地址。优选的,该局部页地址链结表中的逻辑页地址的范围大于该区块中的页数。一种记忆装置,包含:至少一非遗失性内存组件,每一非遗失性内存组件包含多个区块;以及一处理单元,用来依据内嵌于该处理单元或接收自该处理单元之外的一程序代码来管理该记忆装置,其中该处理单元用来提供至少一局部页地址链结表给该记忆装置的至少一区块,该局部页地址链结表包含该至少一区块的至少一实体页地址与至少一逻辑页地址之间的链结关系;其中该处理单元用来依据该至少一局部页地址链结表建立该记忆装置的一全局页地址链结表。优选的,该处理单元针对该局部页地址链结表建立一暂时局部页地址链结表,其中该暂时局部页地址链结表对应于该记忆装置的写入运作。优选的,当该区块中至少一数据页已被写入时,该处理单元建立该局部页地址链结表。优选的,当该区块中的全部数据页已被写入时,该处理单元建立该局部页地址链结表。优选的,该局部页地址链结表的一字段的排列顺位代表一实体页地址,且该字段的内容代表一相关的逻辑页地址。优选的,该局部页地址链结表位于该区块。优选的,该处理单元将该局部页地址链结表存入该区块中的一预定页。优选的,该处理单元分别提供多个局部页地址链结表给该记忆装置的多个区块;以及该处理单元依据该局部页地址链结表建立该全局页地址链结表。优选的,该处理单元读取该至少一局部页地址链结表中的一者以更新该全局页地址链结表。优选的,该处理单元读取该局部页地址链结表中的每一者以建立该全局页地址链结表。优选的,该处理单元自该至少一局部页地址链结表读取一第一页的一第一实体页地址与一第一逻辑页地址之间的一第一链结关系、将该第一链结关系写入该全局页地址链结表、自该至少一局部页地址链结表读取该第一页的另一实体页地址与该第一逻辑页地址之间的一第二链结关系、以及将该第二链结关系写入该全局页地址链结表以更新该全局页地址链结表。优选的,该至少一局部页地址链结表包含多个局部页地址链结表;以及该第一链结关系是读取自该至少一局部页地址链结表的一第一局部页地址链结表,且该第二链结关系是读取自该至少一局部页地址链结表的一第二局部页地址链结表。优选的,该全局页地址链结表的一字段的排列顺位代表一逻辑页地址,且该字段的内容代表一相关的实体页地址。优选的,该局部页地址链结表中的逻辑页地址的范围系大于该区块中的页数。一种用来管理一记忆装置的方法,该记忆装置包含至少一非遗失性内存组件,每一非遗失性内存组件包含多个区块,该方法包含:自一主装置接收一第一存取指令;分析该第一存取指令以取得一第一主装置地址;将该第一主装置地址链结至一实体区块;自该主装置接收一第二存取指令;分析该第二存取指令以取得一第二主装置地址;以及将该第二主装置地址链结至该实体区块;其中该第一主装置地址与该第二主装置地址之间的差值大于该实体区块的页数。优选的,该方法还包含:分析该第一存取指令以取得一第一数据;分析该第二存取指令以取得一第二数据;将该第一数据存入该实体区块;以及将该第二数据存入该实体区块。优选的,该第一主装置地址链结至该实体区块的至少一第一页,且该第二主装置地址链结至该实体区块的至少一第二页。一种用来管理一记忆装置的方法,该记忆装置包含至少一非遗失性内存组件,每一非遗失性内存组件包含多个区块,该方法包含:自一主装置接收一第一存取指令;分析该第一存取指令以取得一第一主装置地址;将该第一主装置地址链结至一第一实体区块的至少一页;自该主装置接收一第二存取指令;分析该第二存取指令以取得一第二主装置地址;以及将该第二主装置地址链结至一第二实体区块的至少一页,其中该第二实体区块异于该第一实体区块;其中该第一主装置地址与该第二主装置地址之间的差值小于该第一实体区块与该第二实体区块中的任一者的页数。优选的,该方法还包含:分析该第一存取指令以取得一第一数据;分析该第二存取指令以取得一第二数据;将该第一数据存入该第一实体区块;以及将该第二数据存入该第二实体区块。优选的,该第一主装置地址链结至该第一实体区块的至少一第一页,且该第二主装置地址链结至该第二实体区块的至少一第二页。一种用来管理一记忆装置的方法,该记忆装置包含至少一非遗失性内存组件,每一非遗失性内存组件包含多个区块,该方法包含:记录至少一区块的使用信息;以及依据该使用信息决定是否抹除这些区块的一部分;其中该使用信息包含一有效/无效页数量表,用来记录这些区块各自的有效/无效页数量。一种记忆装置,包含:至少一非遗失性内存组件,每一非遗失性内存组件包含多个区块;以及一处理单元,用来依据内嵌于该处理单元或接收自该处理单元之外的一程序代码来管理该记忆装置,其中该处理单元用来记录至少一区块的使用信息;其中该处理单元依据该使用信息决定是否抹除这些区块的一部分;以及该使用信息包含一有效/无效页数量表,用来记录这些区块各自的有效/无效页数量。一种用来管理一记忆装置的方法,该记忆装置包含至少一非遗失性内存组件,每一非遗失性内存组件包含多个区块,该方法包含:记录这些区块中的至少一个区块的使用信息;以及依据该使用信息抹除这些区块中的至少一特定区块;其中该使用信息包含数量信息,用来代表该至少一特定区块的有效/无效页数量。优选的,该数量信息包含这些区块各自的有效/无效页数量。一种记忆装置,包含:至少一非遗失性内存组件,每一非遗失性内存组件包含多个区块;以及一处理单元,用来依据内嵌于该处理单元或接收自该处理单元之外的一程序代码来管理该记忆装置,其中该处理单元用来记录这些区块中的至少一区块的使用信息,且用来依据该使用信息控制针对这些区块中的至少一特定区块的一抹除运作;其中该使用信息包含数量信息,用来代表该至少一特定区块的有效/无效页数量。优选的,该数量信息包含这些区块各自的有效/无效页数量。一种用来管理一记忆装置的方法,该记忆装置包含至少一非遗失性内存组件,每一非遗失性内存组件包含多个区块,该方法包含:记录这些区块中的至少一区块的使用信息;以及依据该使用信息抹除这些区块中的至少一特定区块;其中该使用信息包含页数信息,用来代表该至少一特定区块的有效连结页的数量。优选的,该页数信息包含这些区块各自的有效连结页的数量。一种记忆装置,包含:至少一非遗失性内存组件,每一非遗失性内存组件包含多个区块;以及一处理单元,用来依据内嵌于该处理单元或接收自该处理单元之外的一程序代码来管理该记忆装置,其中该处理单元系用来记录这些区块中的至少一区块的使用信息,且用来依据该使用信息控制针对这些区块中的至少一特定区块的一抹除运作;其中该使用信息包含页数信息,用来代表该至少一特定区块的有效连结页的数量。优选的,该页数信息包含这些区块各自的有效连结页的数量。一种用来管理一记忆装置的方法,该记忆装置包含至少一非遗失性内存组件,每一非遗失性内存组件包含多个区块,该多个区块分别包含多页,该方法包含:记录至少一区块的有效/无效页位置信息;以及依据该有效/无效页位置信息移动该区块中的至少一有效页内的有效数据;其中该区块为一抹除单位。优选的,该有效/无效页位置信息包含该区块中的该有效数据的相对位置信息。优选的,该有效/无效页位置信息包含多个位,每一位的排列顺位代表该区块中的一对应页的页地址偏移,以及所述每一位指出该区块中的该对应页是否为有效页或无效页。优选的,该方法还包含:在该记忆装置进行关机之前,将该有效/无效页位置信息存入该至少一非遗失性内存组件。优选的,记录该至少一区块的有效/无效页位置信息的步骤另包含:在该记忆装置开机之后,搜寻一页地址链结表。实施本发明的方法及装置,具有以下有益效果:本发明的方法与装置可大幅地省下建立逻辑实体地址链结表的时间,诸如建立一全局页地址链结表的时间。因此,本发明提供较习知技术更佳的效能。本发明的方法与装置可于存取该些页期间记录使用信息,而因此可依据该使用信息来有效率地管理全部的区块的使用。于是,该备用区与该数据区的安排可被优化。附图说明下面将结合附图及实施例对本发明作进一步说明,附图中:图1为是本发明一第一实施例的一种记忆装置的示意图;图2A是图1所示的非遗失性内存组件中之一者的一区块当中的一局部页地址链结表,其中该非遗失性内存组件于本实施例中为快闪芯片;图2B比较图2A所示的局部页地址链结表的一维数组示例与二维数组示例;图3A至图3F分别是本发明一实施例中关于图1所示的记忆装置的一个全局页地址链结表的数个范例版本;图4是本发明一实施例中关于图2A所示的快闪芯片的一个区块中的一局部页地址链结表;图5A至图5B分别是图4所示的实施例中关于图1所示的记忆装置的全局页地址链结表的数个范例版本;图6是本发明一实施例中关于图1所示的非遗失性内存组件中之一者的内容安排,其中该非遗失性内存组件于本实施例中为快闪芯片;图7A至图7D是本发明一实施例中关于图1所示的非遗失性内存组件中的实体地址,其中该些非遗失性内存组件于本实施例中为多个快闪芯片;图8是用来管理图7A至图7D所示的快闪芯片的一数据区与一备用区(SpareRegion);图9A至图9D分别是图7A至图7D所示的实施例中的一全局页地址链结表的数个范例版本;图10A至图10F分别是图7A至图7D所示的实施例中的一有效页数量表的数个范例版本;图11是本发明一实施例中关于图7A至图7D所示的快闪芯片的一个有效页位置表。【主要组件符号说明】100记忆装置110处理单元120遗失性内存130传输接口140_0,140_1,…,140_N非遗失性内存组件150总线具体实施方式请参考图1,是依据本发明一第一实施例的一种记忆装置100的示意图。记忆装置100包含:一处理单元110,一遗失性(Volatile)内存120,一传输接口130,多个非遗失性(Non-volatile,NV)内存组件140_0、140_1、…、与140_N(例如:快闪芯片),以及一总线150。于典型状况下,于传输接口130耦接至一主装置(未显示于图1)之后,该主装置可透过传输接口130来存取(Access)记忆装置100。举例来说,该主装置可代表一个人计算机,例如一膝上型计算机或一桌面计算机。处理单元110可依据内嵌于处理单元110中或接收自处理单元110之外的程序代码(未显示于图1)来管理记忆装置100。例如:该程序代码可为内嵌于处理单元110的硬件码,尤其是一只读存储器码(ROMcode)。又例如:该程序代码可为接收自处理单元110之外的韧体码。尤其是,处理单元110用来控制遗失性内存120、传输接口130、非遗失性内存组件140_0、140_1、…、与140_N、以及总线150。本实施例的处理单元110可为一高级缩减指令集计算机机器(AdvancedReducedInstructionSetComputerMachine,AdvancedRISCMachine,ARM)处理单元或一亚哥缩减指令集计算机核心(ArgonautRISCCore,ARC)处理单元。这只是为了说明目的而已,并非对本发明的限制。依据本实施例的不同的变化例,处理单元110可为其它种处理单元。另外,遗失性内存120用来储存一全局页地址链结表(GlobalPageAddressLinkingTable)、该主装置(未显示)所存取的资料、以及用来存取记忆装置100的其它所需信息。本实施例的遗失性内存120可为一动态随机存取内存(DynamicRandomAccessMemory,DRAM)或一静态随机存取内存(StaticRandomAccessMemory,SRAM)。这只是为了说明目的而已,并非对本发明的限制。依据本实施例的不同的变化例,遗失性内存120可为其它种遗失性内存。依据本实施例,图1所示的传输接口130用来传输数据以及该主装置与记忆装置100之间的指令,其中传输接口130符合一特定通讯标准诸如串行高级技术附件(SerialAdvancedTechnologyAttachment,SATA)标准、并列高级技术附件(ParallelAdvancedTechnologyAttachment,PATA)标准、或通用串行总线(UniversalSerialBus,USB)标准。例如:记忆装置100是一设置于该主装置中的固态硬盘(SolidStateDrive,SSD),且该特定通讯标准可以用来实施该主装置的内部通讯的一些典型通讯标准,诸如串行高级技术附件标准或并列高级技术附件标准。又例如:记忆装置100是一固态硬盘且位于该主装置之外,并且该特定通讯标准可以用来实施该主装置的外部通讯的一些典型通讯标准,诸如通用串行总线标准。这只是为了说明目的而已,并非对本发明的限制。依据本实施例的不同的变化例,记忆装置100可为一可携式记忆装置诸如一记忆卡,且该特定通讯标准可为用来实施一记忆卡的输入/输出接口的一些典型通讯标准,诸如安全数码(SecureDigital,SD)标准或小型快闪(CompactFlash,CF)标准。另外,非遗失性内存组件140_0、140_1、…、与140_N用来储存数据,其中非遗失性内存组件140_0、140_1、…、与140_N可为(但不限于)NAND型快闪芯片。总线150用来耦接处理单元110、遗失性内存120、传输接口130、和非遗失性内存组件140_0、140_1、…、与140_N,以及用来进行其通讯。依据本实施例,处理单元110可于记忆装置100中提供至少一局部页地址链结表(LocalPageAddressLinkingTable)予记忆装置100的至少一区块(Block),其中该局部页地址链结表包含多个页的实体页地址与逻辑页地址之间的链结关系。于本实施例中,处理单元110于记忆装置100的写入运作期间建立该局部页地址链结表。处理单元110可另依据该局部页地址链结表建立上述的全局页地址链结表。例如:处理单元110自该至少一局部页地址链结表读取一特定页的一第一实体页地址与一第一逻辑页地址之间的一第一链结关系,然后将该第一链结关系记录进该全局页地址链结表。处理单元110可自该至少一局部页地址链结表另读取该特定页的一第二实体页地址与该第一逻辑页地址之间的一第二链结关系,然后将该第二链结关系写入/记录进该全局页地址链结表,以更新该全局页地址链结表。尤其是,处理单元110于记忆装置100中分别提供多个局部页地址链结表予记忆装置100的多个区块。亦即,上述的至少一局部页地址链结表包含多个局部页地址链结表。处理单元110可另依据该些局部页地址链结表建立上述的全局页地址链结表。更明确而言,处理单元110可读取该些局部页地址链结表中之一者以更新上述的全局页地址链结表。例如:一第一实体页的第一链结关系读取自该些局部页地址链结表的一第一局部页地址链结表,而一第二实体页的第二链结关系读取自该些局部页地址链结表的一第二局部页地址链结表。该些局部页地址链结表的实施细节另参考图2A说明如下。图2A是非遗失性内存组件140_0的一区块当中的一局部页地址链结表,其中为了简明起见,非遗失性内存组件140_0于本实施例中称为快闪芯片0。如图2A所示,快闪芯片0包含多个区块,例如本实施例中为区块0、1、2、…、M。请注意,一区块是一抹除单位。换言之,当需要抹除数据时,处理单元110同时抹除储存于该区块的全部数据。另外,一区块,诸如图2A所示的区块0,包含多个页。例如:快闪芯片0的区块0包含128页。在一区块诸如区块0当中,这些页被区分为两个分区,即用来储存数据的一数据分区以及用来储存一局部页地址链结表0的一表格分区。该区块的资料分区内的诸页可称为该区块的资料页。依据本实施例,该数据分区内的页数以及该表格分区内的页数可依需要来订定。例如:页0、1、2、…、126用来储存数据,且该区块中剩下的页用来储存局部页地址链结表0。这只是为了说明目的而已,并非对本发明的限制。依据本实施例的一变化例,该资料分区可包含少于127页,且该表格分区可包含两页或更多页。依据本实施例的另一变化例,该区块内的总页数、该数据分区内的页数以及该表格分区内的页数可分别予以变化。请注意,一页是一写入单位。换言之,当需要写入数据时,处理单元110一次将相当于一页的资料写入一页。依据本实施例,图1所示的非遗失性内存组件140_0、140_1、…、与140_N分别称为快闪芯片0、1、…、与N,其中非遗失性内存组件140_0、140_1、…、与140_N中的每一区块可具有一局部页地址链结表。为了简明起见,只有快闪芯片0的区块0的局部页地址链结表0绘示于图2A,是因为每一局部页地址链结表的功能与运作都彼此相似。于本实施例中,局部页地址链结表0被建立的时间点是当区块0中的全部数据页已被写入,也就是被完全写入(FullyProgrammed)之时。然而,于区块0中的数据页被完全写入之前,处理单元110会暂时地在遗失性内存120中储存一暂时局部页地址链结表0;当区块0中一实体页地址与一逻辑页地址之间的任何链结关系改变时,处理单元110就更新暂时局部页地址链结表0。依据本实施例,该暂时/非暂时局部页地址链结表(例如:该暂时局部页地址链结表0或局部页地址链结表0)的一字段(项目)的排列顺位代表一实体页地址,而此字段中的内容代表一相关的逻辑页地址。例如:假设iP与jP分别为图2A所示的暂时/非暂时局部页地址链结表的示例表格位置(iP,jP)当中的列数与行数,并且iP=0、1、…等且jP=0、1、…等。在图2A所示的暂时/非暂时局部页地址链结表的这个二维数组示例中,对应于第(iP*4+jP)个字段的示例表格位置(iP,jP)代表一实体页地址PPN,其可描述如下:PPN=(PBN*DPC+iP*4+jP)其中参数PBN表示讨论中的实体区块的实体区块编号(例如:PBN=0、1、2、…等,分别对应于区块0、1、2、…等),而参数DPC则表示每一区块的资料页数量(例如:于本实施例中为127)。这只是为了说明目的而已,并非对本发明的限制。为了便于理解,该暂时/非暂时局部页地址链结表可绘示为单一行,如图2B右半部所示。给定iP仍为列数且iP=0、1、…等,则在图2B右半部所示的这个一维数组示例当中,针对区块PBN的暂时/非暂时局部页地址链结表而言,对应于第iP个字段的示例表格位置iP代表一实体页地址(PBN*DPC+iP)。亦即,针对这个一维数组示例,上式可被重新改写如下:PPN=(PBN*DPC+iP)请注意,于本实施例中,局部页地址链结表0中的逻辑页地址的范围不大于区块0中的页数(于本实施例中即128)。这只是为了说明目的而已,并非对本发明的限制。依据本实施例的一变化例,一局部页地址链结表诸如局部页地址链结表0中的逻辑页地址的范围可大于一区块诸如区块0中的页数。于图2A所示的暂时局部页地址链结表0或局部页地址链结表0当中,对应于第一字段的示例表格位置(0,0)(即左上角位置)代表实体页地址0x0000,对应于第二字段的示例表格位置(0,1)代表实体页地址0x0001,对应于第三字段的示例表格位置(0,2)代表实体页地址0x0002,对应于第四字段的示例表格位置(0,3)代表实体页地址0x0003,对应于第五字段的示例表格位置(1,0)代表实体页地址0x0004,如此这般。依据图2A所示的实施例,当该主装置传送一指令0予处理单元110以在一逻辑页地址0x0002写入数据0时,处理单元110将数据0与逻辑页地址0x0002写入快闪芯片0的区块0的页0,其中资料0被写入页0的一数据字节区(DataByteRegion,于图2A中标示为“DBR”),而逻辑页地址0x0002则被写入页0的一备用字节区(SpareByteRegion,于图2A中标示为“SBR”)作为备用信息。另外,处理单元110将逻辑页地址0x0002写入该暂时局部页地址链结表0的第一字段(于本实施例中或为其示例表格位置(0,0),即第一列、第一行的示例表格位置),以藉此指出逻辑页地址0x0002链结/映像至快闪芯片0的区块0的页0,其实体页地址为0x0000。相仿地,当该主装置接着传送一指令1予处理单元110以在一逻辑页地址0x0001写入数据1时,处理单元110将数据1与逻辑页地址0x0001写入快闪芯片0的区块0的页1,其中资料1被写入页1的一数据字节区(标示为“DBR”),且逻辑页地址0x0001被写入页1的一备用字节区(标示为“SBR”)作为备用信息。另外,处理单元110将逻辑页地址0x0001写入该暂时局部页地址链结表0的第二字段(于本实施例中或为其示例表格位置(0,1),即第一列、第二行的示例表格位置),以藉此指出逻辑页地址0x0001链结/映像到快闪芯片0的区块0的页1,其实体页地址为0x0001。之后,当该主装置传送一指令2予处理单元110以在逻辑页地址0x0002写入数据2时,处理单元110将数据2与逻辑页地址0x0002写入区块0的页2,其中资料2被写入页2的一数据字节区(标示为“DBR”),且逻辑页地址0x0002被写入页2的一备用字节区(标示为“SBR”)作为备用信息。另外,处理单元110将逻辑页地址0x0002写入该暂时局部页地址链结表0的第三字段(于本实施例中或为其示例表格位置(0,2),即第一列、第三行的示例表格位置),以藉此更新链结/映射关系:逻辑页地址0x0002链结/映像到快闪芯片0的区块0的页2,其实体页地址为0x0002。为了简明起见,后续各页的运作与前述相仿之处不再重复赘述。请参考图2A的右上角部分,在以上运作之后,一系列的逻辑页地址{0x0002,0x0001,0x0002,0x0005,0x0003,0x0007,0x0010,0x0008,…,0x0000,0x0009,0x0004
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1