数据处理方法及对应的数据储存装置与流程

文档序号:28372919发布日期:2022-01-07 20:19阅读:57来源:国知局
1.本发明有关于一种可有效改善存储器装置的存取效能的数据处理方法及对应的数据储存装置。
背景技术
::2.随着数据储存装置的科技在近几年快速地成长,许多数据储存装置,如符合安全数位(securedigital,缩写为sd)/多媒体卡(multimediacard,缩写为mmc)规格、复合式快闪存储器(compactflash,缩写为cf)规格、记忆条(memorystick,缩写为ms)规格与极数位(extremedigital,缩写为xd)规格的记忆卡、固态硬碟、嵌入式多媒体记忆卡(embeddedmultimediacard,缩写为emmc)以及通用快闪存储器储存(universalflashstorage,缩写为ufs)已经广泛地被应用在多种用途上。因此,在这些数据储存装置上,有效率的存取控制也变成一个重要的议题。3.为了辅助数据储存装置的存取操作,数据储存装置端可建立并维护一或多个映射表格,用以记录实体地址与逻辑地址间的映射关系。逻辑地址为由连接数据储存装置的一主机装置所使用的地址,主机装置可利用逻辑地址识别不同的记忆空间。实体地址为数据储存装置所使用的地址,数据储存装置可利用实体地址识别不同的记忆空间。存储器控制器根据存储器装置的存取操作管理这些映射表格。4.响应于带有欲读取的逻辑地址的一读取指令,存储器控制器必须查找映射表格,以取得储存欲读取的逻辑地址的数据的实体地址。然而,表格的查找或搜寻通常为较耗时的操作。此外,表格大小通常会随着存储器装置的容量增加而增加。因此,在映射表格中查找或搜索所需的时间会随着映射表格的大小增加而大幅增加。5.为解决此问题并且改善存储器装置的读取速度,需要一种可有效处理存储器装置所储存的数据并改善存储器装置存取效能的数据处理方法。技术实现要素:6.本发明的一目的在于解决上述问题,并改善存储器装置的读取速度。7.根据本发明的一实施例,一种数据储存装置包括一存储器装置与一存储器控制器。存储器装置包括多个存储器区块。存储器控制器耦接至存储器装置,用以存取存储器装置。存储器控制器配置一既定存储器区块作为用以自一主机装置接收数据的一现用存储器区块,并且对应地于一第一映射表格中记录多个逻辑地址。第一映射表格包括多个栏位,第一映射表格的一栏位用以记录现用存储器区块的一实体地址的映射资讯,并且实体地址的映射资讯为储存于现用存储器区块的实体地址的数据是指向哪个逻辑地址的一实体至逻辑映射资讯。响应于需要建议活化存储器装置之一或多个子区域或传送一或多个主机性能增强器(hostperformancebooster,缩写hpb)项目的判断,存储器控制器更于传送一或多个hpb项目至主机装置前,根据第一映射表格更新一第二映射表格。第二映射表格包括多个栏位,第二映射表格的一栏位用以记录一逻辑地址的映射资讯,并且逻辑地址的映射资讯为存储器装置的哪个实体地址储存逻辑地址的数据的一逻辑至实体映射资讯,并且存储器控制器更于第二映射表格根据第一映射表格被更新后,根据第二映射表格产生一或多个hpb项目,并且传送包含一或多个hpb项目的一封包至主机装置。8.根据本发明的另一实施例,一种数据处理方法,适用于一数据储存装置,其中数据储存装置包括一存储器装置与一存储器控制器,存储器装置包括多个存储器区块,存储器控制器耦接至存储器装置用以存取存储器装置,数据处理方法由存储器控制器所执行并包括:配置一既定存储器区块作为用以自一主机装置接收数据的一现用存储器区块,并且对应地于一第一映射表格中记录多个逻辑地址,其中第一映射表格包括多个栏位,第一映射表格的一栏位用以记录现用存储器区块的一实体地址的映射资讯,并且实体地址的映射资讯为储存于现用存储器区块的实体地址的数据是指向哪个逻辑地址的一实体至逻辑映射资讯;响应于需要建议活化存储器装置之一或多个子区域或传送一或多个主机性能增强器(hostperformancebooster,缩写hpb)项目的判断,于传送一或多个hpb项目至主机装置前根据第一映射表格更新一第二映射表格,其中第二映射表格包括多个栏位,第二映射表格的一栏位用以记录一逻辑地址的映射资讯,并且逻辑地址的映射资讯为存储器装置的哪个实体地址储存逻辑地址的数据的一逻辑至实体映射资讯;于第二映射表格根据第一映射表格被更新后根据第二映射表格产生一或多个hpb项目;以及传送包含一或多个hpb项目的一封包至主机装置。附图说明9.图1是显示根据本发明的一实施例所述的数据储存装置的方块图范例。10.图2是显示逻辑单元与其对应的逻辑区块地址的一个范例。11.图3是显示于主机控制模式下可有的操作。12.图4是显示于装置控制模式下可有的操作。13.图5是显示hpb项目的一个范例格式。14.图6是显示hpb读取指令的对应操作。15.图7是显示根据本发明的一实施例所述的可改善存储器装置的读取速度的数据处理方法流程图。16.【符号说明】17.100:数据储存装置18.110:存储器控制器19.112:微处理器20.112c:程序码21.112m:只读存储器22.114:存储器接口23.116:缓冲存储器24.118:主机接口25.120:存储器装置26.130:主机装置27.132:编码器28.134:解码器29.200:逻辑单元30.a-1、a-2、a-3、a-4、b-1、b-2、b-3、c-1、c-2、c-3、c-4、c-5、c-6、d-1、d-2、d-3、d-4、d-5、d-6、d-7:操作31.datainupiu:送入数据之通用快闪存储器储存通讯协定资讯单元32.hpb_rgn_0、hpb_rgn_(n-1):hpb区域33.hpb_sub_rgn_0、hpb_sub_rgn_(l-1):hpb子区域34.lba:逻辑区块地址具体实施方式35.在下文中,描述了许多具体细节以提供对本发明实施例的透彻理解。然而,本领域技术人员仍将理解如何在缺少一个或多个具体细节或依赖于其他方法、元件或材料的情况下实施本发明。在其他情况下,未详细示出或描述公知的结构、材料或操作,以避免模糊本发明的主要概念。36.在整个说明书中对"一实施例"或"一范例"的引用意味着结合该实施例或范例所描述的特定特征、结构或特性包括于本发明的多个实施例的至少一个实施例中。因此,贯穿本说明书在各个地方出现的短语"于本发明的一实施例中"、"根据本发明的一实施例"、"于一范例中"或"根据本发明的一范例"不一定都指到相同的实施例或范例。此外,特定特征、结构或特性可以在一个或多个实施例或范例中以任何合适的组合和/或子组合进行结合。37.此外,为让本发明的目的、特征和优点能更明显易懂,下文特举出本发明的具体实施例,并配合附图,作详细说明如下。目的在于说明本发明的精神而非用以限定本发明的保护范围,应理解下列实施例可经由软体、硬体、韧体、或上述任意组合来实现。38.图1是显示根据本发明的一实施例所述的数据储存装置的方块图范例。数据储存装置100可包括一存储器装置120与一存储器控制器110。存储器控制器110用以存取(access)存储器装置120及控制存储器装置120的运作。存储器装置120可为一非挥发性(non-volatile,缩写为nv)存储器装置(例如,一快闪存储器(flashmemory)),并且可包括一或多个记忆元件(例如,一或多个快闪存储器晶粒、一或多个快闪存储器晶片、或其他类似元件)。39.数据储存装置100可耦接至一主机装置130。主机装置130可至少包括一处理器、一电源电路、以及至少一随机存取存储器(randomaccessmemory,缩写为ram),例如至少一动态随机存取存储器(dynamicram,缩写为dram)、至少一静态随机存取存储器(staticram,缩写为sram)等(以上未示于图1)。处理器与随机存取存储器可透过一总线彼此相互连接,并且可耦接至电源电路以取得电源。处理器可控制主机装置130的运作。电源电路可将电源供应至处理器、随机存取存储器以及数据储存装置100,例如输出一或多个驱动电压至数据储存装置100。数据储存装置100可自主机装置130取得所述驱动电压作为数据储存装置100的电源,并且为主机装置130提供储存空间。40.根据本发明的一实施例,存储器控制器110可包括一微处理器112、一只读存储器(readonlymemory,缩写为rom)112m、一存储器接口114、一缓冲存储器116、与一主机接口118。只读存储器112m是用以储存程序码112c。而微处理器112则用来执行程序码112c以控制对存储器装置120的存取。程序码112c可包括一或多个程序模块,例如启动载入(bootloader)程序码。当数据储存装置100自主机装置130取得电源时,微处理器112可藉由执行程序码112c执行数据储存装置100的一初始化程序。于初始化程序中,微处理器112可自存储器装置120载入一组系统内编程(in-systemprogramming,缩写为isp)程序码(未示于图1)。微处理器112可执行该组系统内编程程序码,使得数据储存装置100可具备各种功能。根据本发明的一实施例,该组系统内编程程序码可包括,但不限于:一或多个与存储器存取(例如,读取、写入与抹除)相关的程序模块,例如一读取操作模块、一查找表格模块、一损耗均衡(wearleveling)模块、一读取刷新(readrefresh)模块、一读取回收(readreclaim)模块、一垃圾回收模块、一非预期断电恢复(suddenpoweroffrecovery,缩写为spor)模块、以及一不可更正错误更正码(uncorrectableerrorcorrectioncode,缩写为uecc)模块,其分别被提供用以执行对应的读取、查找表格、损耗均衡、读取刷新、读取回收、垃圾回收、非预期断电恢复以及对侦测到的uecc错误进行错误处理等操作。41.存储器接口114包含了一编码器132以及一解码器134,其中编码器132用来对需被写入存储器装置120的数据进行编码,例如执行ecc编码,而解码器134用来对从存储器装置120所读出的数据进行解码。42.于典型状况下,存储器装置120包含了多个记忆元件,例如多个快闪存储器晶粒或多个快闪存储器晶片,各记忆元件可包含多个存储器区块(block)。存储器控制器110对存储器装置120进行抹除数据运作是以区块为单位来进行。另外,一存储器区块可记录(包含)特定数量的数据页(page),例如,实体数据页,其中存储器控制器110对存储器装置120进行写入数据的运作是以数据页为单位来进行写入。43.实作上,存储器控制器110可利用其本身内部的元件来进行诸多控制运作,例如:利用存储器接口114来控制存储器装置120的存取运作(尤其是对至少一存储器区块或至少一数据页的存取运作)、利用缓冲存储器116进行所需的缓冲处理、以及利用主机接口118来与主机装置130沟通。44.在一实施例中,存储器控制器110透过主机接口118并使用一标准通讯协定与主机装置130沟通。举例而言,上述的标准通讯协定包含(但不限于):通用序列总线(universalserialbus,缩写为usb)标准、sd接口标准、超高速一代(ultrahighspeed-i,缩写为uhs-i)接口标准、超高速二代(ultrahighspeed-ii,缩写为uhs-ii)接口标准、cf接口标准、mmc接口标准、emmc接口标准、ufs接口标准、高技术组态(advancedtechnologyattachment,缩写为ata)标准、序列高技术组态(serialata,缩写为sata)标准、快捷外设互联标准(peripheralcomponentinterconnectexpress,缩写为pci-e)标准、并列先进附件(paralleladvancedtechnologyattachment,缩写为pata)标准等。45.在一实施例中,缓冲存储器116是以随机存取存储器来实施。例如,缓冲存储器116可以是静态随机存取存储器,但本发明亦不限于此。于其他实施例中,缓冲存储器116可以是动态随机存取存储器。46.在一实施例中,数据储存装置100可以是可携式存储器装置(例如:符合sd/mmc、cf、ms、xd标准的记忆卡),且主机装置130为一可与数据储存装置连接的电子装置,例如手机、笔记型电脑、桌上型电脑…等等。而在另一实施例中,数据储存装置100可以是固态硬碟或符合ufs或emmc规格的嵌入式储存装置,并且可被设置在一电子装置中,例如设置在手机、笔记型电脑、桌上型电脑之中,而此时主机装置130可以是该电子装置的一处理器。47.主机装置130可对数据储存装置100发出指令,例如,读取指令或写入指令,用以存取存储器装置120所储存的数据,或者主机装置130可对数据储存装置100发出指令以进一步控制、管理数据储存装置100。48.存储器装置120可储存一全域逻辑至实体(logicaltophysical,缩写为l2p)(或称主机至快闪存储器(hosttoflash,缩写为h2f))映射表格,供存储器控制器110存取存储器装置120的数据时使用。全域l2p映射表格可位于存储器装置120的一既定区域,例如一系统区域,但本发明并不限于此。全域l2p映射表格可被分为多个区域l2p映射表格,区域l2p映射表格可被储存于相同或不同的记忆元件内。例如,一记忆元件可储存一个区域l2p映射表格。于需要时,存储器控制器110可将全域l2p映射表格的至少一部分(例如,一部分或全部)载入缓冲存储器116或其他存储器内。例如,存储器控制器110可载入一区域l2p映射表格作为一暂时的l2p映射表格,用以根据此区域l2p映射表格存取存储器装置120的数据,但本发明并不限于此。49.为了改善读取效能,近期已发布了主机性能增强器(hostperformancebooster,缩写为hpb)系列标准。hpb利用主机装置端的一个存储器装置(例如,主机装置130的dram)暂存于ufs装置端(例如,依循ufs规格实施的数据储存装置100)所维护的映射资讯。所述映射资讯可自前述的全域或区域l2p映射表格中取得。借助此映射资讯,主机装置130可发出带有主机装置130所欲读取的逻辑地址(例如,逻辑区块地址(logicalblockaddresses,缩写为lbas)所对应的实体地址的相关资讯(例如,实体区块地址(physicalblockaddresses,缩写为pbas)的特定读取指令(以下称为hpb读取(hpbread)指令)以读取数据,其中所述实体地址的相关资讯可被承载于一或多个hpb项目(hpbentry)中。如此一来,存储器控制器110可节省自存储器装置120读取及载入全域或区域l2p映射表格所花费的时间,以及节省于载入的l2p映射表格中搜寻出主机装置130所欲读取的逻辑地址所对应的实体地址所花费的时间。藉此,读取效能可被改善。50.一般而言,存储器装置120可被划分为多个分区,各分区可被视为一个逻辑单元,且各逻辑单元可对应于多个逻辑区块地址。图2是显示逻辑单元200与其对应的逻辑区块地址的一个范例。如hpb规格所定义,各逻辑单元所对应的逻辑区块地址(例如,逻辑区块地址lba0~lbaz,其中z为正整数)可被划分为多个hpb区域(例如,hpb区域hpb_rgn_0~hpb_rgn_(n-1),其中n为大于1的一正整数),并且各hpb区域可进一步被划分为多个hpb子区域(例如,hpb子区域hpb_sub_rgn_0~hpb_sub_rgn_(l-1),其中l为一正整数)。一个hpb子区域的大小可小于或等于一个hpb区域的大小。为简化说明,以下将hpb子区域简称为子区域,以及将hpb区域简称为区域。51.于本发明的实施例中,有两种取得hpb项目的模式,包括主机控制模式与装置控制模式。52.图3为一示意图,用以显示于主机控制模式下可有的操作。于主机控制模式下,主机系统(例如,主机装置130)可确认要被活化(activate)的新的子区域(操作a-1),并发出一hpb读取缓冲(hpbreadbuffer)指令(操作a-2),以请求要被活化的子区域所对应的hpb项目。响应于hpb读取缓冲指令的接收,ufs装置(例如,存储器控制器110)可自存储器装置120读取l2p映射表格的至少一部分(例如,读取全域l2p映射表格或区域l2p映射表格),该部分是对应于选定要被活化的子区域,并且根据l2p映射表格所记录的映射资讯提供hpb项目(操作a-3)。ufs装置接着可透过送入数据(datain)的通用快闪存储器储存通讯协定资讯单元(ufsprotocolinformationunit,缩写为upiu)封包将hpb项目传送至主机系统(操作a-4)。主机系统可于系统存储器内配置一hpb区域(亦可称为hpb快取区),用以储存hpb项目(操作a-5)。53.主机系统亦可确认要被去活化(deactivate)的区域(操作b-1),并发出一hpb写入缓冲(hpbwritebuffer)指令,以请求将一区域去活化(操作b-2)。ufs装置可响应于hpb写入缓冲指令的接收将对应的区域去活化(操作b-3)。54.此外,当ufs装置判断需要更新任何子区域所对应的hpb项目时,例如,当ufs装置修改了一已活化的子区域所对应的l2p映射资讯(操作c-1),ufs装置可传送一回应upiu封包至主机系统,以建议主机系统更新子区域所对应的hpb项目(操作c-2)。响应于回应upiu封包的接收,主机系统可发出一hpb读取缓冲指令(操作c-3),并将的传送给ufs装置以请求已活化的子区域所对应的更新过的hpb项目(操作c-4)。响应于hpb读取缓冲指令的接收,ufs装置可读取l2p映射表格中的对应于已活化的子区域的部分,并且根据l2p映射表格所记录的映射资讯提供hpb项目(操作c-5)。同样地,ufs装置接着可透过送入数据的通用快闪存储器储存通讯协定资讯单元(datainupiu)封包将hpb项目传送至主机系统(操作c-6)。主机系统可根据接收到的资讯更新hpb快取区内所储存的hpb项目(操作c-7)。55.图4为一示意图,用以显示于装置控制模式下可有的操作。于装置控制模式下,ufs装置可确认要被活化的新的子区域及/或要被去活化的区域(操作d-1),并传送一回应upiu封包至主机系统,以建议主机系统活化选定的新的子区域或去活化选定的区域(操作d-2)。对于将选定的区域去活化,主机系统可舍弃不再活化的区域所对应的hpb项目(操作d-3)。对于活化的新的子区域,主机系统可发出一hpb读取缓冲指令,并将的传送给ufs装置以请求要被活化的子区域所对应的hpb项目(操作d-4)。类似地,响应于hpb读取缓冲指令的接收,ufs装置可自存储器装置120读取l2p映射表格的至少一部分(例如,读取全域l2p映射表格或区域l2p映射表格),该部分是对应于选定要被活化的子区域,并且根据l2p映射表格所记录的映射资讯提供hpb项目(操作d-5)。ufs装置接着可透过送入数据的通用快闪存储器储存通讯协定资讯单元(datainupiu)封包将hpb项目传送至主机系统(操作d-6)。主机系统可于系统存储器内配置一hpb区域(亦可称为hpb快取区),用以储存hpb项目(操作d-7)。56.图5是显示hpb项目的一个范例格式。于本发明的一实施例中,一个hpb项目的大小为8位元组(byte)。于此范例格式中,4位元组用以记载自l2p映射表格(例如,全域或区域l2p映射表格,或者由存储器控制器110载入缓冲存储器116的暂时的l2p映射表格)取得的实体地址,而其余4位元组用以记载另一实体地址,此实体地址是快闪存储器内实际用以储存前述全域或区域l2p映射表格的地址。更具体的说,于图5所示的范例格式中,第一个4位元组大小的pba与第二个4位元组大小的pba被合并形成一个hpb项目,其中第一个pba为储存于表格1(亦称为t1表格)的实体区块地址,此实体区块地址为一逻辑区块地址所映射的实体区块地址,而第二个pba为储存于表格2(亦称为t2表格)的实体区块地址,此实体区块地址则为t1表格的实体区块地址。于此,t1表格可以是存储器装置120内所储存的全域或区域l2p映射表格,t2表格可以一个系统表格,用以记录各管理表格(例如,全域或区域l2p映射表格)实际被储存于存储器装置120的实体地址。57.由于当一管理表格(例如,全域或区域l2p映射表格)的内容(例如,映射资讯)需被更新时,存储器控制器110可配置另一个存储器空间储存此管理表格更新后的内容,因此,当由一逻辑区块地址所映射的实体区块地址改变时,不仅t1表格的内容需要修改,t1表格的更新内容也会被储存于存储器装置120的另一个新的储存空间。因此,系统表格内所记录的t1表格所对应的实体地址也会随的改变。如此一来,hpb项目内所记载的t2表格的内容便能用于验证由此hpb项目所对应的一逻辑区块地址所映射的实体区块地址所储存数据是否仍为有效数据。当hpb项目所记载的t2表格内容与存储器控制器110所维护的最新的t1表格的实体地址相符时,代表储存于此hpb项目所记载的实体区块地址(t1表格内容)的数据仍为有效数据。反之,代表储存于此hpb项目所记载的实体区块地址的数据已为无效数据。需注意的是,前述一实体区块地址所储存的数据是否仍为有效数据的验证可由数据储存装置端的存储器控制器110执行。58.借助hpb项目所提供的资讯,主机装置130可发出前述hpb读取指令,此hpb读取指令可承载主机装置130试图读取的起始逻辑地址、传输长度(transferlength)、以及hpb项目所记载的内容等相关资讯,用以读取数据。图6为一示意图,用以显示hpb读取指令的对应操作。主机系统可自hpb快取区取得所需的hpb项目资讯,并且传送一hpb读取指令给ufs装置(操作e-1),此hpb读取指令带有一逻辑区块地址lba(例如,起始lba)、此lba所对应的hpb项目内容以及传输长度,并透过hpb读取指令upiu封包传送(操作e-2)。于一特定实施例中,传输长度可被限定为1,但本发明并不限于此。于本发明的其他实施例中,传输长度可被设定为任意正整数。于接收到hpb读取指令时,ufs装置可解码此对应于主机装置130试图读取的一个选定的lba的hpb项目,以取得此选定的lba所对应的实体地址或pba的相关资讯,并且根据此实体地址或pba的相关资讯存取存储器装置,以取得主机装置130试图读取的数据(操作e-3)。ufs装置可于操作e-3中判断接收到的hpb项目是否仍为有效。例如,透过前述判断hpb项目所记载的t2表格内容与存储器控制器110所维护的最新的t1表格的实体地址是否相符判断hpb项目是否仍为有效。若hpb项目的内容为有效的,ufs装置可取得主机装置130试图读取的数据(即,图中所示的"逻辑区块数据"),并传送一或多个送入数据的通用快闪存储器储存通讯协定资讯单元(datainupiu)封包至主机系统,以传送此数据(操作e-4)给主机系统,并且于数据传输完成后传送回应upiu封包(操作e-5)至主机系统,其中所述"逻辑区块数据"是指主机装置130所选定欲读取的逻辑地址lba所对应的数据。另一方面,若判断接收到的hpb项目为无效的,则ufs装置可略过操作e-4,直接执行操作e-5,藉由传送一回应upiu封包至主机系统,以建议主机系统更新对应的hpb项目。59.需注意的是,于本发明的一些实施例中,ufs装置端可主动地建议主机系统更新hpb项目,例如,于前述操作c-2或操作d-2中ufs装置端藉由传送一回应upiu封包主动地建议主机系统更新hpb项目或建议主机系统活化新的子区域。而于本发明的另一些实施例中,ufs装置端也可不主动地建议主机系统更新hpb项目。于该些实施例中,ufs装置端可改为在判断hpb项目为无效的之后,再藉由传送一回应upiu封包至主机系统,以建议主机系统更新对应的hpb项目。例如,ufs装置于接收到hpb读取指令后,若于前述操作e-3中判断hpb项目为无效的,透过回应upiu封包建议主机系统更新对应的hpb项目。60.根据本发明的一实施例,存储器控制器110可配置一既定存储器区块作为用以自主机装置130接收数据的一现用(active)存储器区块(亦可称为缓存器),并且对应地于一映射表格中记录多个逻辑地址。此映射表格可为一实体至逻辑(physicaltological,缩写为p2l)(或称快闪存储器至主机(flashtohost,缩写为f2h))映射表格。不同于前述储存于存储器装置120的全域或区域l2p映射表格,对应于现用存储器区块的p2l映射表格通常被储存于缓冲存储器116内,作为一临时的映射表格。61.于本发明的一实施例中,p2l映射表格可包括多个栏位,p2l映射表格的一栏位对应于现用存储器区块的一个实体地址,用以记录此实体地址的映射资讯,其中四个实体地址可对应于一实体数据页。例如,一实体地址可用以储存4千位元组(kb)的数据,而一实体数据页的大小可为16kb。现用存储器区块的p2l映射表格内所记录的一个实体地址的映射资讯为储存于现用存储器区块的该实体地址的数据是指向哪个逻辑地址的实体至逻辑映射资讯。62.此外,储存于存储器装置120的全域或区域l2p映射表格(以下一并称为l2p映射表格)可包括多个栏位,l2p映射表格的一栏位用以记录一逻辑地址的映射资讯。其中一逻辑地址可对应于一逻辑数据页。l2p映射表格内所记录的一逻辑地址或一逻辑数据页的映射资讯为存储器装置的哪个实体地址储存此逻辑地址或逻辑数据页的数据的逻辑至实体映射资讯。63.一般而言,现用存储器区块所对应的p2l映射表格的内容仅会在现用存储器区块被写满且将被更新为存储器装置120内的数据区域的一个数据区块时,被更新至存储器装置120所储存的l2p映射表格。即,于传统的设计中,当现用存储器区块仍作为现役的缓存器且仍被用于自主机装置130接收数据时,现用存储器区块所对应的p2l映射表格的内容不会被更新至l2p映射表格。因此,当接收到一个带有主机装置130所欲读取的数据的一指定逻辑地址的读取指令时,存储器控制器110仍必须先根据指定逻辑地址查找现用存储器区块所对应的p2l映射表格,以判断现用存储器区块是否储存了指定逻辑地址的数据。若是,由于现用存储器区块所储存的数据为最新的数据,存储器控制器110将现用存储器区块中所储存的此指定逻辑地址所对应的数据提供给主机装置130。若否,则存储器控制器110必须进一步载入l2p映射表格(例如,当未应用hpb相关技术时),并且查找l2p映射表格以取得储存此欲读取的指定逻辑地址所对应的数据的实体地址。64.然而,如上所述,在映射表格中查找或搜索表格内容为相当耗时的操作。为了解决此问题,并进一步改善存储器装置的读取速度,特别是当应用了hpb相关技术时,于本发明的实施例中,响应于需要建议活化存储器装置之一或多个子区域(例如,当hpb应用于装置控制模式下)或需要传送一或多个hpb项目(例如,当hpb应用于主机控制模式下)的判断,存储器控制器110于传送一或多个hpb项目至主机装置130前,直接根据现用存储器区块所对应的存有最新映射资讯的p2l映射表格更新l2p映射表格的内容。于l2p映射表格的内容根据现用存储器区块所对应的p2l映射表格被更新后,存储器控制器110可根据记录了最新映射资讯的l2p映射表格的内容产生hpb项目,并传送包含此hpb项目的一封包(例如,前述的送入数据的通用快闪存储器储存通讯协定资讯单元(datainupiu)封包)至主机装置130。65.图7是显示根据本发明的一实施例所述的可改善存储器装置的读取速度的数据处理方法流程图。此方法是由存储器控制器110所执行,并且可包括以下步骤:66.步骤s702:于传送一或多个hpb项目至主机装置前,根据现用存储器区块所对应的p2l映射表格更新l2p映射表格的内容。根据本发明的一实施例,步骤s702的执行可响应于需要建议活化存储器装置之一或多个子区域(例如,当hpb应用于装置控制模式下)的判断或需要送一或多个hpb项目(例如,当hpb应用于主机控制模式下)的判断。67.步骤s704:根据更新过的l2p映射表格产生所述hpb项目。68.步骤s706:传送包含所述hpb项目的一封包(例如,datainupiu封包)至主机装置。69.根据本发明的一实施例,于根据现用存储器区块所对应的p2l映射表格更新l2p映射表格的内容时,无论目前现用存储器区块是否已被写满,现用存储器区块所对应的p2l映射表格所记录的映射资讯皆会被更新至l2p映射表格。换言之,于本发明的实施例中,步骤s702可于现用存储器区块尚未被写满并且仍被用于自主机装置130接收数据使用时被执行。因此,于本发明的实施例中,于根据现用存储器区块所对应的p2l映射表格更新l2p映射表格的内容时,现用存储器区块的状态可以是已被写满或尚未被写满。70.此外,根据本发明的一实施例,存储器控制器110可响应于一hpb读取缓冲指令的接收而判断需要传送一或多个hpb项目至主机装置130。更具体的说,当hpb应用于主机控制模式下,或者当数据储存装置100被配置为于主机控制模式下支援hpb时,于自主机装置130接收hpb读取缓冲指令后,存储器控制器110可判断接下来需要传送一或多个hpb项目至主机装置130。71.根据本发明的另一实施例,当hpb应用于装置控制模式下,或者当数据储存装置100被配置为于装置控制模式下支援hpb时,当存储器装置110确认要被活化的新的子区域时,存储器装置110可决定需要向主机装置建议活化存储器装置之一或多个子区域。于本发明的实施例中,存储器装置110可于执行垃圾回收操作后确认要被活化的新的子区域。72.参考回如图3所示的于主机控制模式下的操作,于本发明的实施例中,图7的步骤s702可合并于操作a-3。即,在将l2p映射表格的一选定部分所记载的内容整理为hpb项目前,其中此l2p映射表格的选定部分是主机系统于hpb读取缓冲指令内具体指出要被活化的子区域所对应的部分,无论目前现用存储器区块是否已被写满,存储器控制器110直接根据现用存储器区块所对应的p2l映射表格更新l2p映射表格的内容。于更新l2p映射表格的内容后,存储器控制器110可将l2p映射表格的所述选定部分所记载的内容整理为hpb项目,用以根据有着最新映射资讯的l2p映射表格所记录的映射资讯产生hpb项目,并且将包含hpb项目的datainupiu封包传送至主机装置130。73.参考回如图4所示的于装置控制模式下的操作,于本发明的其他实施例中,图7的步骤s702可合并于ufs装置端的操作d-1或d-5,或者可于操作d-1或d-5之间被插入。当步骤s702合并于操作d-1时,存储器控制器110可在确认要被活化的新的子区域(因而判断需要建议活化存储器装置之一或多个子区域)时,于操作d-1中直接根据现用存储器区块所对应的p2l映射表格更新l2p映射表格的内容。例如,存储器控制器110可于传送回应upiu封包至主机系统用以建议活化新的子区域/或去活化选定的区域之前,根据现用存储器区块所对应的p2l映射表格更新l2p映射表格的内容。当步骤s702合并于操作d-5时,存储器控制器110可在将l2p映射表格的一选定部分所记载的内容整理为hpb项目前,其中此l2p映射表格的选定部分是主机系统于hpb读取缓冲指令内具体指出要被活化的子区域所对应的部分,直接根据现用存储器区块所对应的p2l映射表格更新l2p映射表格的内容。于更新l2p映射表格的内容后,存储器控制器110可将l2p映射表格中选定部分所记载的内容整理为hpb项目,用以根据有着最新映射资讯的l2p映射表格所记录的映射资讯产生hpb项目,并且将包含hpb项目的datainupiu封包传送至主机装置130。74.于本发明的实施例中,当存储器控制器110知道需要将hpb项目提供给主机装置130时,在提供hpb项目前,藉由直接根据可能仍正在被使用(或,尚未被写满)的现用存储器区块所对应的p2l映射表格更新l2p映射表格的内容,可使得提供给主机装置130的hpb项目具有最新的映射资讯。由于提供给主机装置130的hpb项目具有最新的映射资讯,当主机装置130欲读取数据时,存储器控制器110可省略传统技艺中所需要的根据主机装置130所欲读取的指定的逻辑地址查找现用存储器区块所对应的p2l映射表格的操作,因此,可有效加速读取操作。75.以上所述仅为本发明的较佳实施例,凡依本发明权利要求所做的均等变化与修饰,皆应属本发明的涵盖范围。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1