存储器装置的存取管理方法、存储器装置、电子装置以及存储器装置的控制器与流程

未命名 09-16 阅读:83 评论:0
1.本发明有关于存储器控制,且尤指一种借助序号分配时序控制来进行存储器装置的存取管理的方法以及相关装置(例如存储器装置以及其中的存储器控制器)。
背景技术
::2.存储器技术的发展使得各种不同的可携式或不可携式存储器装置(例如分别符合sd/mmc、cf、ms以及xd规范的记忆卡或分别符合通用快闪储存(universalflashstorage,ufs)以及嵌入式多媒体卡(embeddedmultimediacard,emmc)规范的嵌入式存储器装置)可以广泛地被应用,改善这些存储器装置的存取控制仍然是本领域有待解决的问题。3.反及闸(nand)快闪存储器可以包含有单层单元(singlelevelcell,slc)快闪存储器以及多层单元(multiplelevelcell,mlc)快闪存储器,在单层单元快闪存储器中,用作存储器单元的每个晶体管可以储存分别对应于逻辑值0以及逻辑值1的两个电荷值中的任一个,相比之下,多层单元快闪存储器中用作存储器单元的每个晶体管的储存能力可以被充分利用,多层单元快闪存储器中的晶体管可以被更高的电压所驱动,且可以利用不同的电压准位来记录至少两个位元(例如00、01、11或10)的资讯,从理论上来说,多层单元快闪存储器的记录密度可以达到至少两倍于单层单元快闪存储器的记录密度,因此是反及闸快闪存储器制造商的首选。4.多层单元快闪存储器的低成本和大容量意味着它比单层单元快闪存储器更可应用于存储器装置中,然而,多层单元快闪存储器有着不稳定的问题,为了确保对存储器装置中快闪存储器的存取控制满足要求的规范,快闪存储器的控制器可以具备某些管理机制来适当地管理数据存取。5.然而,即使有着上述管理机制的存储器装置仍可能具有某些缺陷,举例来说,可进行一垃圾回收(garbagecollection,gc)操作来解决相关技术的现有问题,其中对该垃圾回收操作的一判断区块上的额外最终页面进行编程(program)可能会影响服务品质(qualityofservice,qos),以及对于一企业级产品来说,此服务品质问题可能会变得更加严重。此外,当垃圾回收操作期间发生一非预期断电(suddenpoweroff,spo)事件并且需要进行一非预期断电恢复(suddenpoweroffrecovery,spor)时,上述管理机制可能无法针对垃圾回收操作的来源区块处理一特殊案例,因此,于非预期断电恢复期间可能会发生一错误操作。6.因此,需要一种新颖的方法以及相关架构,以在不引入副作用的情况下或以不太可能引入副作用的方式来解决相关技术的问题。技术实现要素:7.本发明的目的之一在于提供一种借助序号分配时序控制来进行存储器装置的存取管理的方法以及相关装置(例如存储器装置以及其中的存储器控制器),以解决上述问题。8.本发明之至少一实施例提供了一种借助序号分配时序控制来进行存储器装置的存取管理的方法,其中该方法应用于存储器装置的一控制器。存储器装置可包含有控制器以及一非挥发性存储器,并且非挥发性存储器可包含有至少一非挥发性存储器元件(例如一个或多个非挥发性存储器元件),其中至少一非挥发性存储器元件可包含有多个区块。该方法可包含有:藉由一备用池来管理多个备用区块,其中多个区块包含有多个备用区块;自备用池提取一第一区块以作为一主机数据区块,并且对主机数据区块进行一组第一后续操作,其中主机数据区块用以自一主机装置接收数据,以及针对该组第一后续操作,自第一区块从备用池被提取以作为主机数据区块开始,主机数据区块的序号分配对应于完全地编程主机数据区块的一时序,以供指示多个数据区块之中主机数据区块的一顺序来作为非预期断电恢复中进一步的使用,其中多个区块包含有多个数据区块;以及自备用池提取一第二区块以作为一垃圾回收目的地区块,并且对垃圾回收目的地区块进行一组第二后续操作,其中垃圾回收目的地区块用以于一垃圾回收程序期间自一垃圾回收来源区块接收数据,以及针对该组第二后续操作,自第二区块从备用池被提取以作为垃圾回收目的地区块开始,垃圾回收目的地区块的序号分配对应于开始利用垃圾回收目的地区块的一时序,以供指示多个数据区块之中垃圾回收目的地区块的一顺序来作为非预期断电恢复中进一步的使用。9.除了上述方法之外,本发明亦提供了一种存储器装置,并且存储器装置包含有一非挥发性存储器以及一控制器。非挥发性存储器用以储存资讯,其中非挥发性存储器可包含有至少一非挥发性存储器元件(例如一个或多个非挥发性存储器元件),以及至少一非挥发性存储器元件可包含有多个区块。控制器耦接于非挥发性存储器,并且用以控制存储器装置的操作,此外,控制器包含有一处理电路,其中处理电路用以根据来自一主机装置的多个主机命令来控制控制器,以允许主机装置透过控制器来存取非挥发性存储器。举例来说,控制器藉由一备用池来管理多个备用区块,其中多个区块包含有多个备用区块;控制器自备用池提取一第一区块以作为一主机数据区块,并且对主机数据区块进行一组第一后续操作,其中主机数据区块用以自一主机装置接收数据,以及针对该组第一后续操作,自第一区块从备用池被提取以作为主机数据区块开始,主机数据区块的序号分配对应于完全地编程主机数据区块的一时序,以供指示多个数据区块之中主机数据区块的一顺序来作为非预期断电恢复中进一步的使用,其中多个区块包含有多个数据区块;以及控制器自备用池提取一第二区块以作为一垃圾回收目的地区块,并且对垃圾回收目的地区块进行一组第二后续操作,其中垃圾回收目的地区块用以于一垃圾回收程序期间自一垃圾回收来源区块接收数据,以及针对该组第二后续操作,自第二区块从备用池被提取以作为垃圾回收目的地区块开始,垃圾回收目的地区块的序号分配对应于开始利用垃圾回收目的地区块的一时序,以供指示多个数据区块之中垃圾回收目的地区块的一顺序来作为非预期断电恢复中进一步的使用。10.根据某些实施例,本发明亦提供了一种电子装置。该电子装置可包含有上述存储器装置,并且可另包含有:耦接于存储器装置的主机装置。主机装置可包含有:至少一处理器,用以控制主机装置的操作;以及一电源供应电路,耦接于至少一处理器,并用以提供电源至至少一处理器以及存储器装置。此外,存储器装置可提供储存空间给主机装置。11.除了上述方法之外,本发明亦提供了一种存储器装置的控制器,其中存储器装置包含有控制器以及一非挥发性存储器。非挥发性存储器可包含有至少一非挥发性存储器元件(例如一个或多个非挥发性存储器元件),并且至少一非挥发性存储器元件可包含有多个区块,此外,控制器包含有一处理电路,其中处理电路用以根据来自一主机装置的多个主机命令来控制控制器,以允许主机装置透过控制器来存取非挥发性存储器。举例来说,控制器藉由一备用池来管理多个备用区块,其中多个区块包含有多个备用区块;控制器自备用池提取一第一区块以作为一主机数据区块,并且对主机数据区块进行一组第一后续操作,其中主机数据区块用以自一主机装置接收数据,以及针对该组第一后续操作,自第一区块从备用池被提取以作为主机数据区块开始,主机数据区块的序号分配对应于完全地编程主机数据区块的一时序,以供指示多个数据区块之中主机数据区块的一顺序来作为非预期断电恢复中进一步的使用,其中多个区块包含有多个数据区块;以及控制器自备用池提取一第二区块以作为一垃圾回收目的地区块,并且对垃圾回收目的地区块进行一组第二后续操作,其中垃圾回收目的地区块用以于一垃圾回收程序期间自一垃圾回收来源区块接收数据,以及针对该组第二后续操作,自第二区块从备用池被提取以作为垃圾回收目的地区块开始,垃圾回收目的地区块的序号分配对应于开始利用垃圾回收目的地区块的一时序,以供指示多个数据区块之中垃圾回收目的地区块的一顺序来作为非预期断电恢复中进一步的使用。12.本发明所提供的方法以及相关装置可以确保在不同的情况下适当地操作存储器装置,其中上述装置的范例包含有:控制器以及存储器装置等等。举例来说,借助序号分配时序控制,本发明所提供的方法以及相关装置可以正确地进行非预期断电恢复,此外,本发明所提供的方法以及相关装置可以确保自存储器装置至主机装置的即时回应(real-timeresponse),并因此可改善整体性能。附图说明13.图1为依据本发明一实施例的电子装置的示意图。14.图2为依据本发明一实施例的借助序号分配时序控制来进行存储器装置(例如图1所示的存储器装置)存取管理的方法的数据接收控制方案的示意图。15.图3为依据本发明一实施例的该方法的区块连结控制方案的示意图。16.图4为依据本发明一实施例的该方法的序号分配控制方案的示意图。17.图5的下半部为依据本发明一实施例的该方法的垃圾回收时序感知(gc-timing-aware)非预期断电恢复控制方案的下半部示意图,其中为了更好的理解,图5的上半部为另一非预期断电恢复控制方案。18.图6为依据本发明一实施例的该方法的区块连结校正控制方案的示意图。19.图7为依据本发明一实施例的该方法的映射表重建控制方案的示意图。20.图8a为依据本发明一实施例的该方法的工作流程的第一部分示意图。21.图8b为依据本发明一实施例的该方法的工作流程的第二部分示意图。22.图8c为依据本发明一实施例的该方法的工作流程的第三部分示意图。23.【符号说明】24.10:电子装置25.50:主机装置26.52:处理器27.54:电源供应电路28.100:存储器装置29.110:存储器控制器30.112:微处理器31.112c:程序码32.112m:只读存储器33.114:控制逻辑电路34.116:随机存取存储器35.116t,122t:表36.118:传输接口电路37.120:非挥发性存储器38.122-1~122-n:非挥发性存储器元件39.lpt,lpt’:逻辑至实体表40.wp:写入保护资讯41.sp:备用池42.blk_act(0):主机数据区块43.blk_act(1):垃圾回收目的地区块44.linkpg:连结页面45.mapinfopg:逻辑至实体映射存在资讯页面46.s10,s11a,s11b,s12a,s12b,s13a,s13b,s14a,s14b,s15a,s15b,s20,s21,s22,s30,s31,s32,s33,s40,s41a,s41b,s42,s43,s44a,s44b,s45a,s45b,s46,s47,s48,s49:步骤具体实施方式47.图1为依据本发明一实施例的电子装置10的示意图,其中电子装置10可包含有主机装置50以及存储器装置100。主机装置50可包含有至少一处理器(例如一个或多个处理器;其可被统称为处理器52),并且主机装置50可另包含有耦接于处理器52的电源供应电路54。处理器52用以控制主机装置50的操作,以及电源供应电路54用以提供电源至处理器52以及存储器装置100,并输出一个或多个驱动电压至存储器装置100。存储器装置100可用以提供储存空间给主机装置50,并且可自主机装置50取得一个或多个驱动电压以作为存储器装置100的电源。主机装置50的范例可包含有但不限于:多功能手机、平板电脑、可穿戴装置以及个人电脑,例如桌上型电脑以及笔记型电脑,存储器装置100的范例可包含有但不限于:可携式存储器装置(例如符合sd/mmc、cf、ms或xd规范的记忆卡、固态硬碟(solidstatedrive,ssd)以及不同类型的嵌入式存储器装置(例如符合通用快闪储存(universalflashstorage,ufs)规范或嵌入式多媒体卡(embeddedmultimediacard,emmc)规范的嵌入式存储器装置)。根据本实施例,存储器装置100可包含有一控制器,诸如存储器控制器110,并且可另包含有非挥发性(non-volatile,nv)存储器120(为简洁起见,在图1中标记为“nv存储器”),其中该控制器用以控制存储器装置100的操作并存取非挥发性存储器120,以及非挥发性存储器120用以储存资讯。非挥发性存储器120可包含有至少一非挥发性存储器元件(例如一个或多个非挥发性存储器元件),诸如多个非挥发性存储器元件122-1、122-2、…、以及122-n(为简洁起见,在图1中分别标记为“nv存储器元件”),其中“n”可以代表大于1的正整数,举例来说,非挥发性存储器120可以是快闪存储器,并且多个非挥发性存储器元件122-1、122-2、…、以及122-n可以是多个快闪存储器晶片或多个快闪存储器裸晶(die),但是本发明不限于此。48.如图1所示,存储器控制器110可包含有一处理电路(例如微处理器112)、一储存单元(例如只读存储器(read-onlymemory,rom)112m;为简洁起见,标记为“rom”)、控制逻辑电路114、随机存取存储器116(randomaccessmemory,ram;为简洁起见,标记为“ram”)以及传输接口电路118,其中上述元件之至少一部分(例如一部分或全部)可通过汇流排彼此耦接。随机存取存储器116可藉由一静态随机存取存储器(staticrandomaccessmemory,sram)来实现,但本发明不限于此,随机存取存储器116可用以提供内部储存空间给存储器控制器110,举例来说,随机存取存储器116可作为一缓冲存储器来缓冲数据,此外,本实施例的只读存储器112m用以储存程序码112c,并且微处理器112用以执行程序码112c以控制非挥发性存储器120的存取,要注意的是,在某些实施例中,程序码112c也可被储存于随机存取存储器116或任一类型的存储器,此外,控制逻辑电路114中的一数据保护电路(未显示)可保护数据及/或进行错误校正,并且传输接口电路118可符合一特定通讯规范(例如序列先进技术附件(serialadvancedtechnologyattachment,sata)规范、通用序列汇流排(universalserialbus,usb)规范、快捷外部连接标准(peripheralcomponentinterconnectexpress,pcie)规范、嵌入式多媒体卡规范或通用快闪储存规范),并可根据该特定通讯规范来进行通讯。49.在本实施例中,主机装置50可以藉由将主机命令以及相对应的逻辑地址传送至存储器控制器110来存取存储器装置100,存储器控制器110接收主机命令以及逻辑地址,并且将主机命令转换成存储器操作命令(其可简称为操作命令),再利用操作命令来控制非挥发性存储器,以对在非挥发性存储器120中的有着实体地址的存储器单元(例如数据页面(datapage))进行读取或写入/编程等等,其中实体地址可以与逻辑地址相关。当存储器控制器110对多个非挥发性存储器元件122-1、122-2、…以及122-n之中的任一个非挥发性存储器元件122-n(符号“n”可代表在区间[1,n]中的任一整数)进行抹除(erase)操作时,非挥发性存储器元件122-n的多个区块的至少一区块会被抹除,其中该多个区块中的每一个区块可包含有多个页面(例如数据页面),并且可以对一个或多个页面进行存取操作(例如读取或写入)。[0050]根据某些实施例,处理电路(例如微处理器112)可根据来自主机装置50的多个主机命令来控制存储器控制器110,以允许主机装置50透过存储器控制器110来存取非挥发性存储器120。存储器控制器110可为主机装置50将数据储存至非挥发性存储器120中,因应来自主机装置50的一主机命令(例如该多个主机命令的其一)来读取储存数据,以及提供自非挥发性存储器120读取的数据给主机装置50。在非挥发性存储器120(例如快闪存储器)中,上述至少一非挥发性存储器元件(例如多个非挥发性存储器元件122-1、122-2、…以及122-n)可包含有多个区块,诸如在非挥发性存储器元件122-1中的第一组实体区块、在非挥发性存储器元件122-2中的第二组实体区块、…以及在非挥发性存储器元件122-n中的第n组实体区块。存储器控制器110可以被设计来适当地管理该多个区块(例如复数组实体区块)。[0051]为了更好的理解,该多个区块(例如复数组实体区块)可包含有多个数据区块(例如储存着有效数据的多个有效区块)以及多个备用(spare)区块(例如多个空白(blank)区块,诸如准备好被使用的抹除后区块),主机装置50可传送一第一写入要求以供写入数据至某一逻辑地址,并且存储器控制器110可将数据写入至非挥发性存储器120内的一第一位置(例如与该逻辑地址相关的一实体地址),接着,主机装置50可传送一第二写入要求以供写入数据至同一逻辑地址,并且存储器控制器110可写入数据至非挥发性存储器120内的一第二位置(例如与该逻辑地址相关的另一实体地址),并将位于非挥发性存储器120内的第一位置的数据判断为无效数据,此外,存储器控制器110可触发一垃圾回收(garbagecollection,gc)程序来丢弃多个数据区块之中一个或多个数据区块中的无效数据并使得该一个或多个数据区块中的有效数据被储存至其它地方,尤其是,自多个备用区块择取一个或多个备用区块以作为多个数据区块的一个或多个新数据区块,将来自该一个或多个数据区块的有效区块复制至该一个或多个新数据区块,并且抹除该一个或多个数据区块以作为多个备用区块的一个或多个新备用区块,以准备更多储存空间来进一步地储存新数据。[0052]针对至少一表(例如表116t以及表122t)中的区块管理,存储器控制器110可记录、维持及/或更新区块管理资讯,其中表116t可包含有表122t之至少一部分(例如一部分或全部)的一暂时版本。举例来说,表122t可包含有至少一逻辑至实体(logical-to-physical,l2p)地址映射表(例如一个或多个逻辑至实体地址映射表;其可以被统称为逻辑至实体表lpt),以供记录逻辑地址与实体地址之间的映射关系,并且表116t可包含有逻辑至实体表lpt之至少一子表(sub-table;例如一个或多个子表)的一暂时版本,其中上述至少一子表的该暂时版本可被统称为逻辑至实体表lpt’,但是本发明不限于此。举例来说,针对区块管理,存储器控制器110可进一步地记录、维持及/或更新写入保护(writeprotection,wpro)资讯wp以供保护存储器控制器110的存取管理机制,尤其是,防止由于任一非预期断电(suddenpoweroff,spo)事件所造成的存储器控制器110的存取管理机制故障(例如不正常操作)。在非预期断电事件之后,存储器控制器110可至少根据写入保护资讯wp来进行非预期断电恢复(suddenpoweroffrecovery,spor)。[0053]存储器控制器110可备份(backup)表116t至非挥发性存储器120(例如多个非挥发性存储器元件122-1、122-2、…以及122-n中的一个或多个非挥发性存储器元件)中的表122t,并且存储器控制器110可以为了快速参考而将表122t的至少一部分(例如一部分或全部)加载至随机存取存储器116以成为表116t,其中表122t可以绘示于某个非挥发性存储器元件(例如非挥发性存储器元件122-1)中,以指示表122t可以被储存至非挥发性存储器元件122-1中,但是本发明不限于此。根据某些实施例,表122t可以被划分为多个部分以储存至多个非挥发性存储器元件122-1、122-2、…以及122-n中的两个或多个非挥发性存储器元件之中,并且表122t可以被绘示为分别储存在两个或多个非挥发性存储器元件中的多个部分。[0054]图2为依据本发明一实施例的借助序号分配时序控制来进行存储器装置(例如图1所示的存储器装置100)存取管理的方法的数据接收控制方案的示意图。如图2下半部所示,根据该方法而操作的存储器装置100可具备一备用池sp,并且可藉由备用池sp来管理多个备用区块(为简洁起见,在图2中标记为“区块”),尤其是,可自备用池sp提取(pop)一第一区块以作为一主机数据区块blk_act(0),并自备用池sp提取一第二区块以作为一垃圾回收目的地区块(gcdestinationblock)blk_act(1)。如图2中的虚线箭头所示,主机数据区块blk_act(0)可用以自主机装置50接收数据,并且垃圾回收目的地区块blk_act(1)可用以于垃圾回收程序期间自一垃圾回收来源区块接收数据,举例来说,因应来自主机装置50的一写入要求(例如第一写入要求以及第二写入要求等等),存储器控制器110可自主机装置50取得数据(例如待写入数据)并将数据写入(例如编程(program))至主机数据区块blk_act(0)中,又例如,于垃圾回收程序期间,存储器控制器110可自垃圾回收来源区块(例如该一个或多个数据区块的任一个数据区块)读取数据并将数据写入(例如编程)至垃圾回收目的地区块blk_act(1)中。[0055]根据该方法而操作的存储器装置100可有效地进行垃圾回收程序,其中对垃圾回收程序的垃圾回收目的地区块blk_act(1)上额外的最终页面进行编程不会影响服务品质(qualityofservice,qos),并且根据该方法而操作的存储器装置100可以改善服务品质,尤其是对于存储器装置被实现为企业级产品的案例。此外,当于垃圾回收程序期间发生非预期断电事件并需要进行非预期断电恢复时,根据该方法而操作的存储器装置100可以在不同状况中适当地进行非预期断电恢复,因此,于非预期断电恢复期间不会发生错误操作。[0056]图3为依据本发明一实施例的该方法的区块连结(blocklink)控制方案的示意图。如图3上半部所示,写入保护资讯wp可包含有至少一连结页面(例如一个或多个连结页面;其可被统称为连结页面linkpg)以及至少一逻辑至实体映射存在(l2p-mapping-existence)资讯页面(例如一个或多个逻辑至实体映射存在资讯页面;其可被统称为逻辑至实体映射存在资讯页面mapinfopg)。[0057]存储器控制器110可管理一区块连结中的多个数据区块(例如区块#1、区块#2、区块#3等等)以供指示区块#1、区块#2、区块#3等等的各自的存取时序,以使得非预期断电恢复根据区块#1、区块#2、区块#3等等的各自的存取时序而被进行,以保证非预期断电恢复的正确性。为了更好的理解,非预期断电恢复可包含有以下非预期断电恢复操作:[0058](1)重建某个区块的一实体至逻辑(physical-to-logical,p2l)地址映射表来在该实体至逻辑地址映射表内的一组相对应实体至逻辑表项目(entry)正确地记录与该区块的一组实体页面的一组实体地址相关的一组逻辑地址,以供指示自该组实体地址至该组逻辑地址的一组实体至逻辑映射关系;以及[0059](2)根据该实体至逻辑地址映射表来更新逻辑至实体表lpt以正确地在逻辑至实体表lpt内的一组相对应逻辑至实体表项目正确地记录该组实体地址,以供指示自该组逻辑地址至该组实体地址的一组逻辑至实体映射关系;[0060]其中在上述两组映射关系(亦即自该组实体地址至该组逻辑地址的该组实体至逻辑映射关系以及自该组逻辑地址至该组实体地址的该组逻辑至实体映射关系)之中的任一组映射关系可被视为上述两组映射关系之中另一组映射关系的一组反向(reverse)映射关系。[0061]由于主机装置50可传送两个或多个写入要求(例如第一写入要求以及第二写入要求)以将数据写入至相同逻辑地址,因此倘若该相同逻辑地址是该组逻辑地址的其一的话,上述两组映射关系中的某组映射关系可能会变得过时(outofdate;尤其是,不正确)。存储器控制器110可利用连结页面linkpg来记录区块#1、区块#2、区块#3等等的一系列的区块序号以建立区块连结来指示区块#1、区块#2、区块#3等等的各自的存取时序,并可进一步地利用逻辑至实体映射存在资讯页面mapinfopg来记录区块连结的记录状态(例如逻辑至实体映射存在资讯),诸如区块连结中区块#1、区块#2、区块#3等等之内的哪个区块是最后逻辑至实体映射关系更新后区块,其中最后逻辑至实体映射关系更新后区块的逻辑至实体映射关系(例如该组逻辑至实体映射关系)已经被更新至逻辑至实体表l2p以供指示区块连接中一系列连续的逻辑至实体映射关系更新后区块(例如自第一逻辑至实体映射关系更新后区块(例如区块#1)至最后逻辑至实体映射关系更新后区块)的逻辑至实体映射关系已经根据区块#1、区块#2、区块#3等等的各自的存取时序(为简洁起见,在图3中标记为“存在于逻辑至实体表的映射关系”)而被更新至逻辑至实体表lpt。[0062]当于垃圾回收程序期间发生非预期断电事件并需要进行非预期断电恢复时,存储器装置100可根据写入保护资讯wp(例如连结页面linkpg以及逻辑至实体映射存在资讯页面mapinfopg)来对区块连结中区块#1、区块#2、区块#3等等之中的一个或多个需要进行非预期断电恢复的区块(例如一个或多个开放区块(openblock))进行非预期断电恢复操作,尤其是,根据该一个或多个需要进行非预期断电恢复的区块的各自的存取时序的次序(order)来进行非预期断电恢复操作,以保证非预期断电恢复的正确性,因此,根据该方法而操作的存储器装置100(例如存储器控制器110)可始终地胜过一些最好的竞争对手。[0063]图4为依据本发明一实施例的该方法的序号分配控制方案的示意图。举例来说,存储器控制器110可藉由备用池sp来管理多个备用区块。[0064]在步骤s10中,存储器控制器110可判断准备好被使用的一区块是否为主机数据区块blk_act(0),如果是(例如准备好被使用的该区块为主机数据区块blk_act(0)),进入步骤s11a;如果否(例如准备好被使用的该区块为垃圾回收目的地区块blk_act(1)而不是主机数据区块blk_act(0)),则进入步骤s11b。[0065]在步骤s11a中,存储器控制器110可自备用池sp提取一区块(例如一第一区块)来作为主机数据区块blk_act(0)。[0066]在图4左半部所示的自步骤s11a开始的部份工作流程中,存储器控制器110可进一步地对主机数据区块blk_act(0)进行一组第一后续操作,其中主机数据区块blk_act(0)可用以自主机装置50接收数据。尤其是,针对该组第一后续操作,自该第一区块从备用池sp被提取以作为主机数据区块blk_act(0)开始,主机数据区块blk_act(0)的序号分配可对应于完全地编程主机数据区块blk_act(0)的一时序(例如一第一时间点),以供指示多个数据区块之中主机数据区块blk_act(0)的一顺序(rank)来在非预期断电恢复中做进一步的使用,举例来说,该组第一后续操作可包含有步骤s12a、s13a、s14a以及s15a的操作。[0067]在步骤s12a中,存储器控制器110可编程该区块(亦即主机数据区块blk_act(0),诸如该第一区块)。[0068]在步骤s13a中,存储器控制器110可判断主机数据区块blk_act(0)(例如该第一区块)是否为满(full),如果是(例如主机数据区块blk_act(0)(例如该第一区块)被完全地编程),进入步骤s14a;如果否(主机数据区块blk_act(0)(例如该第一区块)还没被完全地编程),则进入步骤s12a。[0069]在步骤s14a中,因应主机数据区块blk_act(0)为满,存储器控制器110可取得一区块序号(例如一第一区块序号),尤其是,分配该第一区块序号为主机数据区块blk_act(0)(例如该第一区块)的序号。尤其是,当写入(例如编程)区块关闭(end-of-block,eob)资讯至主机数据区块blk_act(0)以关闭(close)主机数据区块blk_act(0)时,存储器控制器110可取得该第一区块序号并分配该第一区块序号为主机数据区块blk_act(0)的序号。[0070]在步骤s15a中,存储器控制器110可将该区块(亦即主机数据区块blk_act(0),例如该第一区块)加入至区块连结,举例来说,区块连结的最新版本可指示多个数据区块的次序。[0071]在步骤s11b中,存储器控制器110可自备用池sp提取一区块(例如一第二区块)来作为垃圾回收目的地区块blk_act(1)。[0072]在如图4右半部所示的自步骤s11b开始的部分工作流程中,存储器控制器110可进一步地对垃圾回收目的地区块blk_act(1)进行一组第二后续操作,其中垃圾回收目的地区块blk_act(1)可用以于垃圾回收程序期间自垃圾回收来源区块接收数据。尤其是,针对该组第二后续操作,自该第二区块从备用池sp被提取以作为垃圾回收目的地区块blk_act(1)开始,垃圾回收目的地区块blk_act(1)的序号分配可对应于开始利用垃圾回收目的地区块blk_act(1)的一时序(例如一第二时间点),以供指示多个数据区块之中垃圾回收目的地区块blk_act(1)的一顺序来在非预期断电恢复中做进一步的使用,举例来说,该组第二后续操作可包含有步骤s12b、s13b、s14b以及s15b的操作。[0073]在步骤s12b中,存储器控制器110可取得一区块序号(例如一第二区块序号),尤其是,可将该第二区块序号分配为垃圾回收目的地区块blk_act(1)(例如该第二区块)的序号。尤其是,当存储器控制器110开放(open)垃圾回收目的地区块blk_act(1)(例如该第二区块)时,存储器控制器110可取得该第二区块序号并将第二区块序号分配为垃圾回收目的地区块blk_act(1)的序号。[0074]在步骤s13b中,存储器控制器110可编程该区块(亦即垃圾回收目的地区块blk_act(1),例如该第二区块)。[0075]在步骤s14b中,存储器控制器110可判断垃圾回收目的地区块blk_act(1)(例如该第二区块)是否为满,如果是(例如垃圾回收目的地区块blk_act(1)(例如该第二区块)被完全地编程),进入步骤s15b;如果否(垃圾回收目的地区块blk_act(1)(例如该第二区块)还没被完全地编程),则进入步骤s13b。[0076]在步骤s15b中,因应垃圾回收目的地区块blk_act(1)为满,存储器控制器110可以将该区块(亦即垃圾回收目的地区块blk_act(1),例如该第二区块)加入至区块连结中,尤其是,当垃圾回收目的地区块blk_act(1)(例如该第二区块)为满时,存储器控制器110可将区块关闭资讯写入(例如编程)至垃圾回收目的地区块blk_act(1)中以关闭垃圾回收目的地区块blk_act(1),并根据垃圾回收目的地区块blk_act(1)的区块序号来将垃圾回收目的地区块blk_act(1)加入至区块连结中(例如根据区块连结中其它区块的区块序号之中垃圾回收目的地区块blk_act(1)的区块序号来将垃圾回收目的地区块blk_act(1))插入(insert)至区块连结内正确的区块连结位置。举例来说,区块连结的最新版本可指示多个数据区块的次序。[0077]根据本实施例,针对时序控制,存储器控制器110可在不同方法中分别进行主机数据区块blk_act(0)的序号分配以及垃圾回收目的地区块blk_act(1)的序号分配。举例来说,自第一区块从备用池sp被提取以作为主机数据区块blk_act(0)开始,在发生主机数据区块blk_act(0)被完全地编程之后,存储器控制器110可随即将第一区块序号分配为主机数据区块blk_act(0)(例如第一区块)的序号,并因此可使得主机数据区块blk_act(0)的序号分配与关闭主机数据区块blk_act(0)(例如第一区块)的操作有关。又例如,在第二区块从备用池sp被提取以作为垃圾回收目的地区块blk_act(1)之后,存储器控制器110可随即将第二区块序号分配为垃圾回收目的地区块blk_act(1)(例如第二区块)的序号,并因此可使得垃圾回收目的地区块blk_act(1)的序号分配与开放垃圾回收目的地区块blk_act(1)(例如第二区块)的操作有关。[0078]为了更好的理解,该方法可以图4所示的工作流程来阐明,但本发明不限于此,根据某些实施例,一个或多个步骤可于图4所示的工作流程中增加、删除或修改。[0079]根据某些实施例,存储器控制器110可利用一尾序号参数(tailserialnumberparameter)tailserial来记录多个分配后区块序号之中的最新分配后区块序号,其中该多个分配后区块序号可代表多个候选区块序号的所有区块序号中已经被分配的区块序号(例如第一区块序号以及第二区块序号),举例来说,在存储器装置100的生命期(lifetime)的一开始时(例如在存储器装置100的使用者拥有存储器装置100并开始使用存储器装置100之前),存储器控制器110可将尾序号参数tailserial预设为一初始值(例如0;诸如tailserial=0),并当将一区块序号分配为多个数据区块中任一个区块的序号时更新尾序号参数tailserial,举例来说,当将一区块序号(例如1)分配为区块#1的序号时,存储器控制器110可将一预定增量(例如1)增加至尾序号参数tailserial以将尾序号参数tailserial更新为一新值(例如1;亦即tailserial=1);当将一区块序号(例如2)分配为区块#2的序号时,存储器控制器110可将预定增量(例如1)增加至尾序号参数tailserial以将尾序号参数tailserial更新为一新值(例如2;亦即tailserial=2);以及其余可以此类推。为简洁起见,对于该些实施例的类似内容在此不再重复详细描述。[0080]根据某些实施例,基于序号分配时序控制,存储器控制器110可至少根据主机数据区块blk_act(0)(例如第一区块)与垃圾回收目的地区块blk_act(1)(例如第二区块)的各自的序号来进行非预期断电恢复,以防止于非预期断电恢复期间的任一错误操作,举例来说,当需要时,存储器控制器110可择取主机数据区块blk_act(0)(例如第一区块)以作为垃圾回收程序的垃圾回收来源区块,并因此垃圾回收程序的垃圾回收来源区块可等于主机数据区块blk_act(0),在此情况中,于非预期断电恢复期间不会发生错误操作。为简洁起见,对于该些实施例的类似内容在此不再重复详细描述。[0081]图5的下半部为依据本发明一实施例的该方法的垃圾回收时序感知(gc-timing-aware)非预期断电恢复控制方案的示意图,其中为了更好的理解,图5的上半部为另一非预期断电恢复控制方案。针对垃圾回收程序,根据垃圾回收时序感知非预期断电恢复控制方案而操作的存储器控制器110可感知垃圾回收时序,诸如自第二区块从备用池sp被提取以作为垃圾回收目的地区块blk_act(1)开始,开始利用垃圾回收目的地区块blk_act(1)的时序(例如第二时间点),并因此可在一情况时(例如当非预期断电事件发生时;为简洁起见,标记为“@spo”)适当地维持区块连结以分别使得区块连结内所有区块位于正确位置。[0082]如图5上半部所示,假设存储器装置100(例如存储器控制器110)可暂时地根据其它非预期断电恢复控制方案来操作,并自第二区块从备用池sp被提取以作为垃圾回收目的地区块blk_act(1)开始,垃圾回收目的地区块blk_act(1)的序号分配可对应于完全地编程垃圾回收目的地区块blk_act(1)的一时序(例如一第三时间点)。举例来说,在区块#1、区块#2与区块#3已经被完全地编程并关闭之后非预期断电事件可能发生(其被图5上半部中通过区块连接中区块#3与区块#5之间的部分区块连结的垂直虚线所指示),此外,连结页面linkpg可能已经记录区块连结中区块#1、区块#2与区块#3等等的一系列的区块序号,并且逻辑至实体映射存在资讯页面mapinfopg可能已经记录在非预期断电事件中区块连结的记录状态(例如逻辑至实体映射存在资讯;为简洁起见,标记为“记录状态@spo”),诸如在区块连结中区块#1、区块#2与区块#3等等之中哪个区块(例如区块#3)是最后逻辑至实体映射关系更新后区块,其中最后逻辑至实体映射关系更新后区块的逻辑至实体映射关系(例如该组逻辑至实体映射关系)已经被更新至逻辑至实体表lpt以供指示图5上半部的区块连结中一系列连续的逻辑至实体映射关系更新后区块(例如自第一逻辑至实体映射关系更新后区块(例如区块#1)至最后逻辑至实体映射关系更新后区块(例如区块#3))的逻辑至实体映射关系已经根据区块#1、区块#2与区块#3等等的各自的存取时序而被更新至逻辑至实体表lpt(为简洁起见,在图5中标记为“逻辑至实体表中存在的映射关系”)。在其它非预期断电恢复控制方案中垃圾回收目的地区块blk_act(1)的序号分配可能造成非预期断电事件中的主机数据区块blk_act(0)(例如第一区块;为简洁起见,标记为“blk_act(0)@spo”),诸如区块#5,在区块连结中立即出现在区块#3之后,因此非预期断电恢复操作可能会由于区块连结的一错误版本而被错误地进行。[0083]如图5的下半部所示,在存储器装置100(例如存储器控制器110)根据垃圾回收时序感知非预期断电恢复控制方案而操作的情况中,自第二区块从备用池sp被提取以作为垃圾回收目的地区块blk_act(1)开始,垃圾回收目的地区块blk_act(1)的序号分配可对应于开始利用垃圾回收目的地区块blk_act(1)的时序(例如第二时间点),举例来说,在区块#1、区块#2与区块#3已经被完全地编程并关闭之后非预期断电事件可能发生(其被图5下半部中通过区块连接中区块#3与区块#5之间的部分区块连结的垂直虚线所指示),此外,连结页面linkpg可能已经记录区块连结中区块#1、区块#2与区块#3等等的一系列的区块序号,并且逻辑至实体映射存在资讯页面mapinfopg可能已经记录在非预期断电事件中区块连结的记录状态(例如逻辑至实体映射存在资讯;为简洁起见,标记为“记录状态@spo”),诸如在区块连结中区块#1、区块#2与区块#3等等之中哪个区块(例如区块#3)是最后逻辑至实体映射关系更新后区块,其中最后逻辑至实体映射关系更新后区块的逻辑至实体映射关系(例如该组逻辑至实体映射关系)已经被更新至逻辑至实体表lpt以供指示图5下半部的区块连结中一系列连续的逻辑至实体映射关系更新后区块(例如自第一逻辑至实体映射关系更新后区块(例如区块#1)至最后逻辑至实体映射关系更新后区块(例如区块#3))的逻辑至实体映射关系已经根据区块#1、区块#2与区块#3等等的各自的存取时序而被更新至逻辑至实体表lpt(为简洁起见,在图5中标记为“逻辑至实体表中存在的映射关系”)。垃圾回收时序感知非预期断电恢复控制方案中垃圾回收目的地区块blk_act(1)的序号分配可能造成非预期断电事件中垃圾回收目的地区块blk_act(1)(例如第二区块;为简洁起见,标记为“blk_act(1)@spo”),诸如区块#4,在区块连结中立即地出现在区块#3之后,并进一步地造成在非预期断电事件中主机数据区块blk_act(0)(例如第一区块;为简洁起见,标记为“blk_act(0)@spo”),诸如区块#5,在区块连结中立即地出现在区块#4之后,因此,非预期断电恢复操作可根据区块连结的一正确版本而被正确地进行。[0084]由于自第二区块从备用池sp被提取以作为垃圾回收目的地区块blk_act(1)开始,垃圾回收目的地区块blk_act(1)的序号分配可对应于开始利用垃圾回收目的地区块blk_act(1)的时序(例如第二时间点),因此根据垃圾回收时序感知非预期断电恢复控制方案而操作的存储器控制器110可根据多个数据区块之中垃圾回收目的地区块blk_act(1)的顺序来适当地维持区块连结,以在非预期断电恢复中做进一步的使用,为简洁起见,对于此实施例的类似内容在此不再重复详细描述。[0085]为了更好的理解,区块#1、区块#2、区块#3、区块#5、区块#6与区块#7等等可绘示于图5上半部的区块连结中来指示区块#1、区块#2、区块#3与区块#5的次序以作为一范例并进一步地指示后续区块(例如区块#6与区块#7等等)的可能趋势,以及区块#1、区块#2、区块#3、区块#4、区块#5与区块#6等等可绘示于图5下半部的区块连结中来指示区块#1、区块#2、区块#3、区块#4与区块#5的次序以作为一范例并进一步地指示后续区块(例如区块#6等等)的可能趋势,但是本发明不限于此根据某些实施例,区块连结中的区块可能会变化。[0086]根据某些实施例,当非预期断电事件发生时,写入保护资讯wp(例如连结页面linkpg以及逻辑至实体映射存在资讯页面mapinfopg)可能会不完整,尤其是,可能还没即时地被完整储存或更新,并因此可能变得不可靠,在此情况中,存储器控制器110可扫描多个数据区块中的所有区块来重建写入保护资讯wp以供决定区块连结的最新版本(例如正确版本),为简洁起见,对于该些实施例的类似内容在此不再重复详细描述。[0087]图6为依据本发明一实施例的该方法的区块连结校正控制方案的示意图。[0088]在步骤s20中,存储器控制器110可判断准备好被使用的区块是否为垃圾回收目的地区块blk_act(1),如果是(例如准备好被使用的区块为垃圾回收目的地区块blk_act(1)),进入步骤s21;如果否(准备好被使用的区块为主机数据区块blk_act(0)),则进入步骤s22。[0089]在步骤s21中,存储器控制器110可根据区块连结中其它区块的区块序号之中垃圾回收目的地区块blk_act(1)的区块序号来将垃圾回收目的地区块blk_act(1)插入至区块连结内正确的区块连结位置。[0090]在步骤s22中,存储器控制器110可进行后续处理,举例来说,当非预期断电事件发生时,存储器控制器110可进行非预期断电恢复操作。[0091]为了更好的理解,该方法可以图6所示的工作流程来阐明,但本发明不限于此,根据某些实施例,一个或多个步骤可于图6所示的工作流程中增加、删除或修改。[0092]根据某些实施例,存储器控制器110可对区块#i进行非预期断电恢复操作,其中区块索引i可以是一正整数,但是本发明不限于此。根据某些实施例,存储器控制器110可判断是否先对区块#i进行非预期断电恢复操作,举例来说,倘若判断在区块#i进行非预期断电恢复操作,则存储器控制器110对区块#i进行非预期断电恢复操作;否则,存储器控制器110略过区块#i并防止对区块#i进行非预期断电恢复操作。为简洁起见,对于该些实施例的类似内容在此不再重复详细描述。[0093]图7为依据本发明一实施例的该方法的映射表重建控制方案的示意图。[0094]在步骤s30中,存储器控制器110可将区块索引i设置为区块索引i的一初始值i0(为简洁起见,标记为“i=i0”),举例来说,初始值i0可指示于非预期断电恢复期间存储器控制器110应先处理区块#i0,其中存储器控制器110可根据写入保护资讯wp(例如连结页面linkpg以及逻辑至实体映射存在资讯页面mapinfopg)来决定初始值i0,但是本发明不限于此,根据某些实施例,存储器控制器110可根据其它资讯来决定初始值i0。[0095]在步骤s31中,存储器控制器110可重建区块#i的一实体至逻辑表(例如一实体至逻辑地址映射表),尤其是,重建区块#i的实体至逻辑地址映射表来正确地记录区块#i的实体至逻辑地址映射表内位于一组相对应实体至逻辑表项目之与区块#i的一组实体页面的一组实体地址相关的一组逻辑地址,以供指示自该组实体地址至该组逻辑地址的一组实体至逻辑映射关系。[0096]在步骤s32中,存储器控制器110可根据区块#i的实体至逻辑表来更新逻辑至实体表lpt,尤其是,根据区块#i的实体至逻辑表来更新逻辑至实体表lpt以正确地记录逻辑至实体表lpt内位于一组相对应逻辑至实体表项目的(区块#i的该组实体页面的)该组实体地址,以供指示自该组逻辑地址至该组实体地址的一组逻辑至实体映射关系。[0097]在步骤s33中,根据至少一预定状况(例如一个或多个预定状况)是否被满足,存储器控制器110可判断非预期断电恢复是否完成,如果是(例如上述至少一预定状况被满足),图7所示的工作流程结束;如果否(例如上述至少一预定状况没有被满足),则进入步骤s31来处理下一个区块,其中存储器控制器110可将一预定增量(例如1)增加至区块索引i(为简洁起见,标记为“i++”)。[0098]为了更好的理解,该方法可以图7所示的工作流程来阐明,但本发明不限于此,根据某些实施例,一个或多个步骤可于图7所示的工作流程中增加、删除或修改。[0099]根据某些实施例,上述至少一预定状况可包含有:[0100](1)在非预期断电恢复中没有待处理的满数据区块(fulldatablock);以及[0101](2)没有开放区块(openblock);[0102]但是本发明不限于此,根据某些实施例,上述至少一预定状况可能会变化。[0103]根据某些实施例,存储器控制器110可根据该方法的上述控制方案之中两个或多个控制方案而操作,为简洁起见,对于该些实施例的类似内容在此不再重复详细描述。[0104]图8a、图8b与图8c分别为依据本发明一实施例的该方法的工作流程的第一部分、第二部分与第三部分的示意图,其中图8b所示的第二部分(例如步骤s43、s44a、s45b以及s46)可以透过节点a而连接至图8a所示的第一部分(例如步骤s40、s41a、s41b以及s42),以及图8c所示的第三部分(例如步骤s44b、s45a、s47、s48以及s49)可透过节点b、节点c与节点d而连接至图8b所示的第二部分。举例来说,存储器控制器110可根据该方法的上述控制方案中的大部分控制方案(除了该其它非预期断电恢复控制方案)来操作,但是本发明不限于此。[0105]在步骤s40中,存储器控制器110可判断是否信任(trust)写入保护资讯wp(例如连结页面linkpg以及逻辑至实体映射存在资讯页面mapinfopg)以供指示区块连结中一个或多个现用区块(activeblock)的状态(为简洁起见,标记为“写入保护现用资讯”),如果是,进入步骤s41a;如果否,则进入步骤s41b。[0106]在步骤s41a中,存储器控制器110可根据写入保护资讯wp来扫描未储存区块(例如在非预期断电恢复中还未储存的区块,诸如在非预期断电恢复操作中待处理的区块)。[0107]在步骤s41b中,存储器控制器110可根据多个数据区块的区块序号来扫描多个数据区块的所有区块来取得区块连结,尤其是,可更新写入保护资讯wp(例如连结页面linkpg以及逻辑至实体映射存在资讯页面mapinfopg)来指示区块连结以及其记录状态。[0108]在步骤s42中,倘若垃圾回收目的地区块blk_act(1)(例如第二区块)存在的话,存储器控制器110可取得垃圾回收目的地区块blk_act(1)的序号(为简洁起见,标记为“倘若blk_act(1)存在的话,取得sn(blk_act(1))”)。接着,可透过节点a来进入图8b所示的步骤s43,其中存储器控制器110可将区块索引i设置为区块索引i的初始值i0(为简洁起见,标记为“i=i0”),举例来说,初始值i0可指示于非预期断电恢复期间存储器控制器110应先处理区块#i0,并且存储器控制器110可根据写入保护资讯wp(例如连结页面linkpg以及逻辑至实体映射存在资讯页面mapinfopg)来决定初始值i0。[0109]在步骤s43中,存储器控制器110可判断是否存在任一个满数据区块,尤其是,判断区块#i是否为一满数据区块,如果是(例如区块#i为满数据区块),步骤进入s44a;如果否(例如区块#i不是满数据区块),则透过节点b进入图8c所示的步骤s44b。举例来说,满数据区块可代表多个数据区块之中一数据区块被完全地编程。[0110]在步骤s44a中,存储器控制器110可判断区块#i的序号是否大于垃圾回收目的地区块blk_act(1)的序号(为简洁起见,标记为“sn(blk#i)》sn(blk_act(1))”),如果是,透过节点c进入图8c所示的步骤s45a;如果否,则进入图8b所示的步骤s45b。[0111]在步骤s45b中,存储器控制器110可根据一关闭区块(例如在步骤s43中被判断为满数据区块的区块#i)的实体至逻辑页面来建立该关闭区块的实体至逻辑表(例如实体至逻辑地址映射表),其中实体至逻辑页面可储存该关闭区块的一组实体至逻辑映射关系(例如上述实体至逻辑映射关系)。[0112]在步骤s46中,存储器控制器110可根据该关闭区块(例如在步骤s43中被判断为满数据区块的区块#i)的实体至逻辑表来更新逻辑至实体表lpt。接着,进入步骤s43,其中存储器控制器110可将预定增量(例如1)增加至区块索引i(为简洁起见,标记为“i++”)。[0113]在图8c所示的步骤s44b中,存储器控制器110可判断是否存在任一个开放区块,尤其是,判断区块#i是否为一开放区块,如果是(例如区块#i为开放区块),进入步骤s45a;如果否(例如区块#i不是开放区块),则图8a、图8b与图8c所示的工作流程结束。[0114]在步骤s45a中,存储器控制器110可判断开放区块(例如在步骤s44b中被判断为开放区块的区块#i)中是否存在一个或多个实体至逻辑页面,如果是,进入步骤s47;如果否,则进入步骤s48。举例来说,存储器控制器110可能已经分别根据开放区块中一组编程后页面的备用区域中的元数据(metadata)来决定该组编程后页面的一组实体至逻辑映射关系,并可能已经将该组实体至逻辑映射关系收集并记录至一个或多个实体至逻辑页面中,以供加速建立开放区块的实体至逻辑表(例如实体至逻辑地址映射表),其中该组编程后页面的备用区域中的元数据可分别指示该组实体至逻辑映射关系,但是本发明不限于此。[0115]在步骤s47中,存储器控制器110可根据该一个或多个实体至逻辑页面来建立开放区块(例如在步骤s44b中被判断为开放区块的区块#i)的实体至逻辑表,尤其是,自该一个或多个实体至逻辑页面取得该组实体至逻辑映射关系并记录一组实体至逻辑项目至开放区块的实体至逻辑表中,其中该组实体至逻辑项目分别指示该组实体至逻辑映射关系。[0116]在步骤s48中,存储器控制器110可根据开放区块(例如在步骤s44b中被判断为开放区块的区块#i)的多个编程后页面的至少一部分(例如一部分或全部)的各自的备用区域中的元数据来建立开放区块的实体至逻辑表,举例来说,当步骤s45a的判断结果为“是”时(亦即在执行步骤s47后执行步骤s48),存储器控制器110可自开放区块的多个编程后页面之中的额外编程后页面(例如除了该组编程后页面之外,多个编程后页面之中的剩余编程后页面)取得额外实体至逻辑映射关系,并记录额外实体至逻辑项目至实体至逻辑表中,其中该额外实体至逻辑项目分别指示该额外实体至逻辑映射关系。又例如,当步骤s45a的判断结果为“否”时(亦即在执行步骤s45后执行步骤s48,而步骤s47被略过),存储器控制器110可自开放区块的多个编程后页面取得多个实体至逻辑映射关系,并记录多个实体至逻辑项目至实体至逻辑表中,其中该多个实体至逻辑项目分别指示该多个实体至逻辑映射关系。[0117]在步骤s49中,存储器控制器110可根据开放区块(例如在步骤s44b中被判断为开放区块的区块#i)的实体至逻辑表来更新逻辑至实体表lpt。接着,可透过节点d来进入图8b所示的步骤s43,其中存储器控制器110可将预定增量(例如1)增加至区块索引i(为简洁起见,标记为“i++”)。[0118]根据本实施例,倘若垃圾回收目的地区块blk_act(1)存在的话,存储器控制器110可藉由执行步骤s42来取得区块连结的正确版本,当轮到图8b所示的第二部分(例如步骤s43、s44a、s45b以及s46)的回圈中的垃圾回收目的地区块blk_act(1)时,存储器控制器110可根据区块连结的正确版本来取得步骤s44a的判断结果“是”(例如透过节点c进入步骤s45a),并在包含有图8c所示的步骤s45a、s47、s48与s49的部份工作流程处理非预期断电恢复操作中的垃圾回收目的地区块blk_act(1)。[0119]为了更好的理解,该方法可以图8a、图8b与图8c所示的工作流程来阐明,但本发明不限于此,根据某些实施例,一个或多个步骤可于图8a、图8b与图8c所示的工作流程中增加、删除或修改。[0120]根据某些实施例,当开放垃圾回收目的地区块blk_act(1)(例如第二区块)时,存储器控制器110可取得第二区块序号并将第二区块序号分配为垃圾回收目的地区块blk_act(1)的序号,并进一步地记录此时的主机数据区块blk_act(0)(例如第一区块)的序号(例如上述第一区块序号)。尤其是,当写入(例如编程)数据至垃圾回收目的地区块blk_act(1)之任一个页面(例如每一个页面)中的一数据区域中时,存储器控制器110可将此时的主机数据区块blk_act(0)(例如第一区块)的序号(例如上述第一区块序号)写入(例如编程)至垃圾回收目的地区块blk_act(1)的该任一个页面中的一备用区域以作为该任一个页面的部分元数据(例如元数据的一部分),其中存储器控制器110可利用该任一个页面中该备用区域的一部分备用区域(例如具有一预定大小,诸如一个或多个位元组)来储存主机数据区块blk_act(0)(例如第一区块)的序号,但是本发明不限于此。此外,在垃圾回收目的地区块blk_act(1)(例如第二区块)变得满(full;例如被完全地编程)之前主机数据区块blk_act(0)(例如第一区块)可能会变得满(例如被完全地编程),在此情况中,存储器控制器110可将区块关闭资讯写入(例如编程)至第一区块以关闭第一区块,并自备用池sp提取另一个区块(例如一第三区块)以作为最新主机数据区块blk_act(0),而无需将待写入(例如待编程)的序号(例如第一区块的第一区块序号)插入至(replaceinto)垃圾回收目的地区块blk_act(1)的任一个页面的备用区域,因此,根据图5下半部所示的垃圾回收时序感知非预期断电恢复控制方案而操作的存储器控制器110可感知此情况,并因此可适当地维持区块连结以使得区块连结内的所有区块分别位于其正确的位置。[0121]以图5下半部所示的区块连结为例,在发生非预期断电事件之前,存储器控制器110可能已经将对应于非预期断电事件的主机数据区块blk_act(0)(为简洁起见,在图5中标记为“blk_act(0)@spo”)的序号(例如区块#5的区块序号“5”)写入(编程)至对应于非预期断电事件的垃圾回收目的地区块blk_act(1)(例如区块#4)的一个或多个编程后页面之中任一个页面中的备用区域中,以作为该任一个页面的部分元数据(例如元数据的一部分),于非预期断电恢复期间,存储器控制器110可判断在非预期断电恢复操作中的待处理的一目标区块(targetblock)是否为一等待区块(awaitingblock;例如区块#5),其中该等待区块是藉由记录于对应于非预期断电事件的垃圾回收目的地区块blk_act(1)(例如区块#4)之一个或多个编程后页面之中任一个页面中的备用区域中的区块序号(例如5)所指示。倘若在非预期断电恢复操作中的待处理的目标区块是等待区块(例如区块#5)的话,则存储器控制器110可先处理在非预期断电恢复操作中对应于非预期断电事件的垃圾回收目的地区块blk_act(1)(例如区块#4),接着再处理自等待区块(例如区块#5)开始的一个或多个后续区块,为了简洁起见,对于该些实施例的类似内容在此不再重复详细描述。[0122]根据某些实施例,当将数据写入(例如编程)至垃圾回收目的地区块blk_act(1)之任一个页面(例如每一个页面)中的数据区域时,存储器控制器110可将此时的主机数据区块blk_act(0)(例如第一区块)的序号(例如上述第一区块序号)写入(例如编程)至垃圾回收目的地区块blk_act(1)(例如第二区块)之任一个页面中的备用区域,以作为该任一个页面的部分元数据,此外,在垃圾回收目的地区块blk_act(1)(例如第二区块)关闭之前,存储器控制器110可防止利用主机数据区块blk_act(0)(例如第一区块)来作为垃圾回收程序的垃圾回收来源区块,但是本发明不限于此,为了简洁起见,对于该些实施例的类似内容在此不再重复详细描述。[0123]根据某些实施例,当将数据写入(例如编程)至垃圾回收目的地区块blk_act(1)之任一个页面(例如每一个页面)中的数据区域时,存储器控制器110可将此时的主机数据区块blk_act(0)(例如第一区块)的序号(例如上述第一区块序号)写入(例如编程)至垃圾回收目的地区块blk_act(1)(例如第二区块)之任一个页面中的备用区域,以作为该任一个页面的部分元数据,此外,在垃圾回收目的地区块blk_act(1)(例如第二区块)关闭之前,存储器控制器110可防止主机数据区块blk_act(0)(例如第一区块)被移除,当存储器装置100y在任一时间点开启电源时,存储器控制器110可利用主机数据区块blk_act(0)(例如第一区块)来作为一开始点以供参考,但是本发明不限于此,为了简洁起见,对于该些实施例的类似内容在此不再重复详细描述。[0124]以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。当前第1页12当前第1页12
技术特征:
1.一种借助序号分配时序控制来进行一存储器装置的存取管理的方法,该方法应用于该存储器装置的一控制器,该存储器装置包含有该控制器以及一非挥发性存储器,该非挥发性存储器包含有至少一非挥发性存储器元件,该至少一非挥发性存储器元件包含有多个区块,该方法包含有:藉由一备用池来管理多个备用区块,其中该多个区块包含有该多个备用区块;自该备用池提取一第一区块以作为一主机数据区块,并且对该主机数据区块进行一组第一后续操作,其中该主机数据区块系用以自一主机装置接收数据,以及针对该组第一后续操作,自该第一区块从该备用池被提取以作为该主机数据区块开始,该主机数据区块的序号分配对应于完全地编程该主机数据区块的一时序,以供指示多个数据区块之中该主机数据区块的一顺序(rank)来作为非预期断电恢复中进一步的使用,其中该多个区块包含有该多个数据区块;以及自该备用池提取一第二区块以作为一垃圾回收目的地区块(destination block),并且对该垃圾回收目的地区块进行一组第二后续操作,其中该垃圾回收目的地区块系用以于一垃圾回收程序期间自一垃圾回收来源区块接收数据,以及针对该组第二后续操作,自该第二区块从该备用池被提取以作为该垃圾回收目的地区块开始,该垃圾回收目的地区块的序号分配对应于开始利用该垃圾回收目的地区块的一时序,以供指示该多个数据区块之中该垃圾回收目的地区块的一顺序来作为非预期断电恢复中进一步的使用。2.如权利要求1所述的方法,其特征在于,该组第一后续操作包含有:对该主机数据区块进行编程;判断该主机数据区块是否为满;因应该主机数据区块为满,取得一第一区块序号并将该第一区块序号分配为该主机数据区块的一序号;以及将该主机数据区块加入至一区块连结,其中该区块连结指示该多个数据区块的次序。3.如权利要求1所述的方法,其特征在于,该组第二后续操作包含有:取得一第二区块序号并将该第二区块序号分配为该垃圾回收目的地区块的一序号;对该垃圾回收目的地区块进行编程;判断该垃圾回收目的地区块是否为满;以及因应该垃圾回收目的地区块为满,将该垃圾回收目的地区块加入至一区块连结,其中该区块连结指示该多个数据区块的次序。4.如权利要求1所述的方法,其特征在于,自该第一区块从该备用池被提取以作为该主机数据区块开始,在发生该主机数据区块被完全地编程之后,一第一区块序号随即被分配为该主机数据区块的一序号;以及在该第二区块从该备用池被提取以作为该垃圾回收目的地区块之后,一第二区块序号随即被分配为该垃圾回收目的地区块的一序号。5.如权利要求1所述的方法,其特征在于,另包含有:在一非预期断电事件之后,至少根据该主机数据区块与该垃圾回收目的地区块的各自的序号来进行该非预期断电恢复。6.如权利要求5所述的方法,其特征在于,至少根据该主机数据区块与该垃圾回收目的地区块的该各自的序号来进行该非预期断电恢复,以防止于该非预期断电恢复的期间发生任一错误操作。
7.如权利要求1所述的方法,其特征在于,该主机数据区块被择取以作为该垃圾回收程序的该垃圾回收来源区块。8.一种存储器装置,包含有:一非挥发性存储器,用以储存资讯,其中该非挥发性存储器包含有至少一非挥发性存储器元件,以及该至少一非挥发性存储器元件包含有多个区块;以及一控制器,耦接于该非挥发性存储器,并且用以控制该存储器装置的操作,其中该控制器包含有:一处理电路,用以根据来自一主机装置的多个主机命令来控制该控制器,以允许该主机装置透过该控制器存取该非挥发性存储器;其中:该控制器藉由一备用池来管理多个备用区块,其中该多个区块包含有该多个备用区块;该控制器自该备用池提取一第一区块以作为一主机数据区块,并且对该主机数据区块进行一组第一后续操作,其中该主机数据区块系用以自一主机装置接收数据,以及针对该组第一后续操作,自该第一区块从该备用池被提取以作为该主机数据区块开始,该主机数据区块的序号分配对应于完全地编程该主机数据区块的一时序,以供指示多个数据区块之中该主机数据区块的一顺序(rank)来作为非预期断电恢复中进一步的使用,其中该多个区块包含有该多个数据区块;以及该控制器自该备用池提取一第二区块以作为一垃圾回收目的地区块(destination block),并且对该垃圾回收目的地区块进行一组第二后续操作,其中该垃圾回收目的地区块系用以于一垃圾回收程序期间自一垃圾回收来源区块接收数据,以及针对该组第二后续操作,自该第二区块从该备用池被提取以作为该垃圾回收目的地区块开始,该垃圾回收目的地区块的序号分配对应于开始利用该垃圾回收目的地区块的一时序,以供指示该多个数据区块之中该垃圾回收目的地区块的一顺序来作为非预期断电恢复中进一步的使用。9.一种电子装置,其包含有权利要求8所述的存储器装置,并且另包含有:该主机装置,耦接于该存储器装置,其中该主机装置包含有:至少一处理器,用以控制该主机装置的操作;以及一电源供应电路,耦接于该至少一处理器,并且用以提供电源至该至少一处理器以及该存储器装置;其中该存储器装置提供储存空间给该主机装置。10.一种存储器装置的控制器,该存储器装置包含有该控制器以及一非挥发性存储器,该非挥发性存储器包含有至少一非挥发性存储器元件,该至少一非挥发性存储器元件包含有多个区块,该控制器包含有:一处理电路,用以根据来自一主机装置的多个主机命令来控制该控制器,以允许该主机装置透过该控制器存取该非挥发性存储器;其中:该控制器藉由一备用池来管理多个备用区块,其中该多个区块包含有该多个备用区块;该控制器自该备用池提取一第一区块以作为一主机数据区块,并且对该主机数据区块
进行一组第一后续操作,其中该主机数据区块系用以自一主机装置接收数据,以及针对该组第一后续操作,自该第一区块从该备用池被提取以作为该主机数据区块开始,该主机数据区块的序号分配对应于完全地编程该主机数据区块的一时序,以供指示多个数据区块之中该主机数据区块的一顺序(rank)来作为非预期断电恢复中进一步的使用,其中该多个区块包含有该多个数据区块;以及该控制器自该备用池提取一第二区块以作为一垃圾回收目的地区块(destination block),并且对该垃圾回收目的地区块进行一组第二后续操作,其中该垃圾回收目的地区块系用以于一垃圾回收程序期间自一垃圾回收来源区块接收数据,以及针对该组第二后续操作,自该第二区块从该备用池被提取以作为该垃圾回收目的地区块开始,该垃圾回收目的地区块的序号分配对应于开始利用该垃圾回收目的地区块的一时序,以供指示该多个数据区块之中该垃圾回收目的地区块的一顺序来作为非预期断电恢复中进一步的使用。

技术总结
本发明涉及借助序号分配时序控制来进行存储器装置的存取管理的方法、存储器装置、电子装置以及存储器装置的控制器。本发明提供的借助序号分配时序控制来进行一存储器装置的存取管理的方法包含:藉由备用池来管理多个备用区块;自备用池提取一第一区块以作为一主机数据区块,并进行一组第一后续操作,其中该主机数据区块用以自一主机装置接收数据,以及主机数据区块的序号分配对应于完全地编程主机数据区块的一时序;以及自备用池提取一第二区块以作为一垃圾回收目的地区块,并进行一组第二后续操作,其中垃圾回收目的地区块用以于一垃圾回收程序期间自一垃圾回收来源区块接收数据,以及垃圾回收目的地区块的序号分配对应于开始利用垃圾回收目的地区块的一时序。于开始利用垃圾回收目的地区块的一时序。于开始利用垃圾回收目的地区块的一时序。


技术研发人员:洪文琦 曾新翔
受保护的技术使用者:慧荣科技股份有限公司
技术研发日:2023.03.10
技术公布日:2023/9/13
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐