存储器管理方法、存储器控制电路单元与存储器储存装置与流程

文档序号:11176721阅读:469来源:国知局
本发明涉及一种存储器管理方法,尤其涉及用于可复写式非易失性存储器的一种存储器管理方法、存储器控制电路单元与存储器储存装置。
背景技术
::数码相机、手机与mp3在这几年来的成长十分迅速,使得消费者对储存媒体的需求也急速增加。由于可复写式非易失性存储器(rewritablenon-volatilememory)具有数据非易失性、省电、体积小、无机械结构、读写速度快等特性,最适于此些电子产品。因此,近年闪存产业成为电子产业中相当热门的一环。例如,广泛用于行动电子装置上的嵌入式多媒体卡(embeddedmultimediacard,emmc)就是一种以闪存作为储存媒体的储存装置。一般来说,闪存储存装置的闪存会划分为多个实体单元并且此些实体单元会分组为数据区(dataarea)与备用区(sparearea)。归类为数据区的实体单元中会储存由写入指令所写入的有效数据,而备用区中的实体单元是用以在执行写入指令时替换数据区中的实体单元。具体来说,当闪存储存装置接受到主机的写入指令而欲对数据区的实体单元进行写入时,闪存储存装置会从备用区中提取一实体单元并且将在数据区中欲写入的实体单元中的有效旧数据与欲写入的新数据写入至从备用区中提取的实体单元并且将已写入新数据的实体单元关联为数据区,并且将原本数据区的实体单元进行抹除并关联为备用区。为了能够让主机能够顺利地存取以轮替方式储存数据的实体单元,闪存储存装置会提供逻辑单元给主机。也就是说,闪存储存装置会建立逻辑转实体映像表(logicaltophysicalmappingtable)或实体转逻辑映像表(physicaltologicalmappingtable),并且在所述映像表中记录与更新逻辑单元与数据区的实体单元之间的对映关系来反映实体单元的轮替,所以主机仅需要针对所提供逻辑单元进行写入而闪存储存装置会依据逻辑转实体映像表或实体转逻辑映像表对所对映的实体单元进行读取或写入数据。然而,随着闪存制程上的进步而使得每一实体单元的设计容量与数量会越来越大的同时,所述映像表的大小以及所需的更新时间也相应地增加。为了克服此问题,目前会在闪存储存装置中设置一动态随机存取存储器(dynamicrandomaccessmemory,dram)或静态随机存取存储器(staticrandomaccessmemory,sram)作为一个高速缓存。在此架构中,闪存储存装置会先将上述的映像表暂时地储存在此高速缓存中以增进整体系统的运作效率。一般来说,若储存装置接收到来自主机系统的关闭(shutdown)指令,储存装置会将如上所述的映像表或其他用以管理储存装置的系统数据/档案写入到储存装置的可复写式非易失性存储器中。然而,在储存装置接收到关机指令后,储存装置可能会需再处理一或多个写入指令后才真正断电。如此一来,由于之前所储存的映像表或系统数据/档案并不能确实反映出关机指令后所进行的写入操作,因此,之前所储存的映像表以及系统数据/档案有可能会不正确,进而使得储存装置在下次开电的时候会进入不正常断电的处理流程,增加了开机所需要的时间。技术实现要素:本发明提供用于可复写式非易失性存储器模块的一种存储器管理方法、存储器控制电路单元与存储器储存装置,可加快系统开机的速度,进而增加工作效率。本发明的一范例实施例提供用于可复写式非易失性存储器模块的一种存储器管理方法,其包括于供电所述可复写式非易失性存储器模块后使用第一管理模式来管理所述可复写式非易失性存储器模块;以及若从主机系统接收关机指令,使用第二管理模式来管理所述可复写式非易失性存储器模块,其中所述第二管理模式不同于所述第一管理模式,且所述第二管理模式为在背景中执行至少一强制处理程序。在本发明的一实施例中,其中所述至少一强制处理程序包括若从所述主机系统接收清除指令,强制将储存于存储器中的至少一第一系统数据写入至所述可复写式非易失性存储器模块,其中所述清除指令用以指示将暂存于所述存储器中的至少一用户数据写入至所述可复写式非易失性存储器模块。在本发明的一实施例中,其中所述至少一第一系统数据包括映像表。在本发明的一实施例中,其中上述使用所述第一管理模式来管理所述可复写式非易失性存储器模块的步骤包括若从所述主机系统接收清除指令,不将储存于存储器中的至少一第一系统数据写入至所述可复写式非易失性存储器模块,其中所述清除指令用以指示将暂存于所述存储器中的至少一用户数据写入至所述可复写式非易失性存储器模块。在本发明的一实施例中,其中所述至少一强制处理程序包括调整执行至少一系统指令之等待时间,其中所述至少一系统指令用以指示于背景中对所述可复写式非易失性存储器模块进行至少一系统操作,其中所述至少一系统指令是根据所述等待时间被执行的。在本发明的一实施例中,其中所述至少一系统操作为垃圾回收操作。在本发明的一实施例中,其中上述调整执行所述至少一系统指令的等待时间的步骤包括根据从主机系统接收到关机指令至主机系统停止供电的时间来调整所述等待时间,以使所述等待时间大于所述时间。在本发明的一实施例中,上述的存储器管理方法还包括反应于所述关机指令,写入至少一第二系统数据至所述可复写式非易失性存储器模块。本发明的一范例实施例提供用于控制存储器储存装置的一种存储器控制电路单元。所述存储器控制电路单元包括主机接口、存储器接口与存储器管理电路。主机接口电性连接至主机系统。存储器接口电性连接至可复写式非易失性存储器模块。存储器管理电路电性连接至所述主机接口与所述存储器接口。所述存储器管理电路用以于供电所述可复写式非易失性存储器模块后使用第一管理模式来管理所述可复写式非易失性存储器模块。若从所述主机系统接收关机指令,所述存储器管理电路更用以使用第二管理模式来管理所述可复写式非易失性存储器模块,其中所述第二管理模式不同于所述第一管理模式,且所述第二管理模式为在背景中执行至少一强制处理程序。在本发明的一实施例中,其中所述至少一强制处理程序包括若从所述主机系统接收清除指令,所述存储器管理电路强制将储存于存储器中的至少一第一系统数据写入至所述可复写式非易失性存储器模块,其中所述清除指令用以指示将暂存于所述存储器中的至少一用户数据写入至所述可复写式非易失性存储器模块。在本发明的一实施例中,在上述使用所述第一管理模式来管理所述可复写式非易失性存储器模块的运作中,若从所述主机系统接收清除指令,所述存储器管理电路不将储存于存储器中的至少一第一系统数据写入至所述可复写式非易失性存储器模块,其中所述清除指令用以指示将暂存于所述存储器中的至少一用户数据写入至所述可复写式非易失性存储器模块。在本发明的一实施例中,其中所述至少一强制处理程序包括所述存储器管理电路调整执行至少一系统指令的等待时间,其中所述至少一系统指令用以指示于背景中对所述可复写式非易失性存储器模块进行至少一系统操作,其中所述至少一系统指令是根据所述等待时间被执行的。在本发明的一实施例中,在上述所述存储器管理电路调整执行至少一系统指令的等待时间的运作中,所述存储器管理电路根据从主机系统接收到关机指令至主机系统停止供电的时间来调整所述等待时间,以使所述等待时间大于所述时间。在本发明的一实施例中,反应于所述关机指令,所述存储器管理电路写入至少一第二系统数据至所述可复写式非易失性存储器模块。本发明的一范例实施例提供一种存储器储存装置,其包括连接接口单元、可复写式非易失性存储器模块与存储器控制电路单元。连接接口单元用以电性连接至主机系统。存储器控制电路单元电性连接至所述连接接口单元与所述可复写式非易失性存储器模块。所述存储器控制电路单元用以于供电所述可复写式非易失性存储器模块后使用第一管理模式来管理所述可复写式非易失性存储器模块。若从所述主机系统接收关机指令,所述存储器控制电路单元更用以使用第二管理模式来管理所述可复写式非易失性存储器模块,其中所述第二管理模式不同于所述第一管理模式,且所述第二管理模式为在背景中执行至少一强制处理程序。在本发明的一实施例中,所述至少一强制处理程序包括若从所述主机系统接收清除指令,所述存储器控制电路单元强制将储存于存储器中的至少第一系统数据写入至所述可复写式非易失性存储器模块,其中所述清除指令用以指示将暂存于所述存储器中的至少一用户数据写入至所述可复写式非易失性存储器模块。在本发明的一实施例中,在上述使用所述第一管理模式来管理所述可复 写式非易失性存储器模块的运作中,若从所述主机系统接收清除指令,所述存储器控制电路单元不将储存于存储器中的至少一第一系统数据写入至所述可复写式非易失性存储器模块,其中所述清除指令用以指示将暂存于所述存储器中的至少一用户数据写入至所述可复写式非易失性存储器模块。在本发明的一实施例中,所述至少一强制处理程序包括所述存储器控制电路单元调整执行至少一系统指令的等待时间,其中所述至少一系统指令用以指示于背景中对所述可复写式非易失性存储器模块进行至少一系统操作,其中所述至少一系统指令是根据所述等待时间被执行的。在本发明的一实施例中,在上述所述存储器控制电路单元调整执行至少一系统指令的等待时间的运作中,所述存储器控制电路单元根据从主机系统接收到关机指令至主机系统停止供电的时间来调整所述等待时间,以使所述等待时间大于所述时间。在本发明的一实施例中,反应于所述关机指令,所述存储器控制电路单元写入至少一第二系统数据至所述可复写式非易失性存储器模块。基于上述,本发明的范例实施例所提供的用于可复写式非易失性存储器模块的一种存储器管理方法、存储器控制电路单元与存储器储存装置,可在接收到关机指令后,使用对应关机指令的特殊管理模式来管理所述可复写式非易失性存储器模块,以反应于清除指令来将储存于高速缓存的系统数据写入至可复写式非易失性存储器模块。如此一来,可避免在下次系统开机时因为系统数据不正确而导致的处理程序,进而加快系统开机的速度,增加工作效率。为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详细说明如下。附图说明图1是根据本发明的一范例实施例所显示的主机系统、存储器储存装置及输入/输出(i/o)装置的示意图;图2是根据本发明的另一范例实施例所显示的主机系统、存储器储存装置及i/o装置的示意图;图3是根据本发明的另一范例实施例所显示的主机系统与存储器储存装 置的示意图;图4是根据本发明的一范例实施例所显示的存储器储存装置的概要方框图;图5是根据本发明的一范例实施例所显示的存储器控制电路单元的概要方框图;图6是根据本发明的一范例实施例所显示的管理可复写式非易失性存储器模块的装置的示意图;图7是根据本发明的一范例实施例所显示的管理可复写式非易失性存储器模块的装置的示意图;图8是根据本发明的一范例实施例所显示的存储器储存装置的断电操作的示意图;图9是根据本发明的一范例实施例所显示的存储器储存装置的断电操作的运作流程图;图10是根据本发明的一范例实施例所显示的存储器管理方法的流程图。附图标记:10:存储器储存装置11:主机系统110:系统总线111:处理器112:随机存取存储器113:只读存储器114:数据传输接口12:i/o装置20:主板201:随身碟202:记忆卡203:固态硬盘204:无线存储器储存装置205:全球定位系统模块206:网络适配器207:无线传输装置208:键盘209:屏幕210:喇叭211:鼠标30:存储器储存装置31:主机系统32:sd卡33:cf卡34:嵌入式储存装置341:嵌入式多媒体卡342:嵌入式多芯片封装储存装置402:连接接口单元404:存储器控制电路单元406:可复写式非易失性存储器模块410(0)~410(n):实体抹除单元502:存储器管理电路504:主机接口506:存储器接口508:缓冲存储器510:电源管理电路512:错误检查与校正电路602:数据区604:闲置区606:系统区608:取代区lba(0)、lba(h):逻辑单元t1、t2.1、t2.2、t2.3、t2.4、t3、t4:时间810:关机指令820、821、822、823、824:指令830:清除指令步骤s901:主机系统发送关机指令至存储器控制电路单元步骤s903:在接收到关机指令后,存储器控制电路单元会将储存于缓冲存储器的至少一系统数据写入至可复写式非易失性存储器模块,以响应关机指令,并且使用第二管理模式来管理可复写式非易失性存储器模块。步骤s905:存储器控制电路单元从主机系统接收了至少一写入指令步骤s907:存储器控制电路单元将用户数据写入至可复写式非易失性存储器模块中,以响应所述至少一写入指令步骤s908:存储器控制电路单元根据至少一系统指令对可复写式非易失性存储器模块进行对应的至少一系统操作步骤s909:主机系统发送清除指令至存储器控制电路单元步骤s911:存储器控制电路单元会将储存在缓冲存储器的用户数据以及储存于缓冲存储器的系统数据写入至可复写式非易失性存储器模块中步骤s913:存储器控制电路单元可响应主机系统清除指令已完成步骤s1001:于供电所述可复写式非易失性存储器模块后使用第一管理模式来管理所述可复写式非易失性存储器模块步骤s1003:若从主机系统接收关机指令,使用第二管理模式来管理所述可复写式非易失性存储器模块具体实施方式图1是根据本发明的一范例实施例所显示的主机系统、存储器储存装置及输入/输出(i/o)装置的示意图。图2是根据本发明的另一范例实施例所显示的主机系统、存储器储存装置及i/o装置的示意图。请参照图1与图2,主机系统11一般包括处理器111、随机存取存储器(randomaccessmemory,ram)112、只读存储器(readonlymemory,rom)113及数据传输接口114。处理器111、随机存取存储器112、只读存储器113及数据传输接口114皆电性连接至系统总线(systembus)110。在本范例实施例中,主机系统11是通过数据传输接口114与存储器储存装置10电性连接。例如,主机系统11可经由数据传输接口114将数据写入至存储器储存装置10或从存储器储存装置10中读取数据。此外,主机系统 11是通过系统总线110与i/o装置12电性连接。例如,主机系统11可经由系统总线110将输出信号传送至i/o装置12或从i/o装置12接收输入信号。在本范例实施例中,处理器111、随机存取存储器112、只读存储器113及数据传输接口114可设置在主机系统11的主板20上。数据传输接口114的数目可以是一或多个。通过数据传输接口114,主板20可以经由有线或无线方式电性连接至存储器储存装置10。存储器储存装置10可例如是随身碟201、记忆卡202、固态硬盘(solidstatedrive,ssd)203或无线存储器储存装置204。无线存储器储存装置204可例如是近距离无线通信(nearfieldcommunication,nfc)存储器储存装置、无线传真(wifi)存储器储存装置、蓝牙(bluetooth)存储器储存装置或低功耗蓝牙存储器储存装置(例如,ibeacon)等以各式无线通信技术为基础的存储器储存装置。此外,主板20也可以通过系统总线110电性连接至全球定位系统(globalpositioningsystem,gps)模块205、网络适配器206、无线传输装置207、键盘208、屏幕209、喇叭210、鼠标211等各式i/o装置。例如,在一范例实施例中,主板20可通过无线传输装置207存取无线存储器储存装置204。在一范例实施例中,所提及的主机系统为可实质地与存储器储存装置配合以储存数据的任意系统。虽然在上述范例实施例中,主机系统是以计算机系统来作说明,然而,图3是根据本发明的另一范例实施例所显示的主机系统与存储器储存装置的示意图。请参照图3,在另一范例实施例中,主机系统31也可以是数码相机、摄影机、通信装置、音频播放器、视频播放器或平板电脑等系统,而存储器储存装置30可为其所使用的sd卡32、cf卡33或嵌入式储存装置34等各式非易失性存储器储存装置。嵌入式储存装置34包括嵌入式多媒体卡(embeddedmmc,emmc)341和/或嵌入式多芯片封装储存装置(embeddedmultichippackage,emcp)342等各类型将存储器模块直接电性连接于主机系统的基板上的嵌入式储存装置。图4是根据本发明的一范例实施例所显示的存储器储存装置的概要方框图。请参照图4,存储器储存装置10包括连接接口单元402、存储器控制电路单元404与可复写式非易失性存储器模块406。在本范例实施例中,连接接口单元402是兼容于序列先进附件(serial advancedtechnologyattachment,sata)标准。然而,必须了解的是,本发明不限于此,连接接口单元402亦可以是符合并列先进附件(paralleladvancedtechnologyattachment,pata)标准、电气和电子工程师协会(instituteofelectricalandelectronicengineers,ieee)1394标准、高速周边零件连接接口(peripheralcomponentinterconnectexpress,pciexpress)标准、通用串行总线(universalserialbus,usb)标准、安全数字(securedigital,sd)接口标准、超高速一代(ultrahighspeed-i,uhs-i)接口标准、超高速二代(ultrahighspeed-ii,uhs-ii)接口标准、记忆棒(memorystick,ms)接口标准、多芯片封装(multi-chippackage)接口标准、多媒体储存卡(multimediacard,mmc)接口标准、嵌入式多媒体储存卡(embeddedmultimediacard,emmc)接口标准、通用闪存(universalflashstorage,ufs)接口标准、嵌入式多芯片封装(embeddedmultichippackage,emcp)接口标准、小型快闪(compactflash,cf)接口标准、整合式驱动电子接口(integrateddeviceelectronics,ide)标准或其他适合的标准。连接接口单元402可与存储器控制电路单元404封装在一个芯片中,或者连接接口单元402是布设于一包含存储器控制电路单元404的芯片外。存储器控制电路单元404用以执行以硬件型式或固件型式实作的多个逻辑门或控制指令,并且根据主机系统11的指令在可复写式非易失性存储器模块406中进行数据的写入、读取与抹除等运作。可复写式非易失性存储器模块406是电性连接至存储器控制电路单元404,并且用以储存主机系统11所写入的数据。可复写式非易失性存储器模块406具有实体抹除单元410(0)~410(n)。例如,实体抹除单元410(0)~410(n)可属于同一个存储器晶粒(die)或者属于不同的存储器晶粒。每一实体抹除单元分别具有多个实体程序化单元,其中属于同一个实体抹除单元之实体程序化单元可被独立地写入且被同时地抹除。然而,必须了解的是,本发明不限于此,每一实体抹除单元是可由64个实体程序化单元、256个实体程序化单元或其他任意个实体程序化单元所组成。更详细来说,实体抹除单元为抹除的最小单位。亦即,每一实体抹除单元含有最小数目之一并被抹除的记忆胞。实体程序化单元为程序化的最小单元。即,实体程序化单元为写入数据的最小单元。每一实体程序化单元通常包括数据位区与冗余位区。数据位区包含多个实体存取地址用以储存用户的 数据,而冗余位区用以储存系统的数据(例如,控制信息与错误更正码)。在本范例实施例中,每一个实体程序化单元的数据位区中会包含8个实体存取地址,且一个实体存取地址的大小为512字节(byte)。然而,在其他范例实施例中,数据位区中也可包含数目更多或更少的实体存取地址,本发明并不限制实体存取地址的大小以及个数。例如,在一范例实施例中,实体抹除单元为实体区块,并且实体程序化单元为实体页面或实体扇区,但本发明不以此为限。在本范例实施例中,可复写式非易失性存储器模块406为多阶记忆胞(multilevelcell,mlc)nand型闪存模块(即,一个记忆胞中可储存2个数据位的闪存模块)。然而,本发明不限于此,可复写式非易失性存储器模块406亦可是单阶记忆胞(singlelevelcell,slc)nand型闪存模块(即,一个记忆胞中可储存1个数据位的闪存模块)、三阶记忆胞(trinarylevelcell,tlc)nand型闪存模块(即,一个记忆胞中可储存3个数据位的闪存模块)、其他闪存模块或其他具有相同特性的存储器模块。图5是根据一范例实施例所显示的存储器控制电路单元的概要方框图。请参照图5,存储器控制电路单元404包括存储器管理电路502、主机接口504与存储器接口506。存储器管理电路502用以控制存储器控制电路单元404的整体运作。具体来说,存储器管理电路502具有多个控制指令,并且在存储器储存装置10运作时,此些控制指令会被执行以进行数据的写入、读取与抹除等运作。在本范例实施例中,存储器管理电路502的控制指令是以固件型式来实作。例如,存储器管理电路502具有微处理器单元(未显示)与只读存储器(未显示),并且此些控制指令是被刻录至此只读存储器中。当存储器储存装置10运作时,此些控制指令会由微处理器单元来执行以进行数据的写入、读取与抹除等运作。在本发明另一范例实施例中,存储器管理电路502的控制指令亦可以程序代码型式储存于可复写式非易失性存储器模块406的特定区域(例如,存储器模块中专用于存放系统数据的系统区)中。此外,存储器管理电路502具有微处理器单元(未显示)、只读存储器(未显示)及随机存取存储器(未显示)。特别是,此只读存储器具有驱动码,并且当存储器控制电路单元404被致能时, 微处理器单元会先执行此驱动码段来将储存于可复写式非易失性存储器模块406中的控制指令加载至存储器管理电路502的随机存取存储器中。之后,微处理器单元会运转此些控制指令以进行数据的写入、读取与抹除等运作。主机接口504是电性连接至存储器管理电路502并且用以电性连接至连接接口单元402,以接收与识别主机系统11所传送的指令与数据。也就是说,主机系统11所传送的指令与数据会通过主机接口504来传送至存储器管理电路502。在本范例实施例中,主机接口504是兼容于emmc标准。然而,必须了解的是本发明不限于此,主机接口504亦可以是兼容于pata标准、ieee1394标准、pciexpress标准、ufs标准、uhs-i接口标准、uhs-ii接口标准、sd标准、ms标准、sata标准、cf标准、ide标准或其他适合的数据传输标准。存储器接口506是电性连接至存储器管理电路502并且用以存取可复写式非易失性存储器模块406。也就是说,欲写入至可复写式非易失性存储器模块406的数据会经由存储器接口506转换为可复写式非易失性存储器模块406所能接受的格式。在一范例实施例中,存储器控制电路单元404还包括缓冲存储器508、电源管理电路510与错误检查与校正电路512。缓冲存储器508是电性连接至存储器管理电路502并且用以暂存来自于主机系统11的数据与指令或来自于可复写式非易失性存储器模块406的数据。缓冲存储器508例如是动态随机存取存储器或静态随机存取存储器或其他访问速度较可复写式非易失性存储器模块406快的存储器模块。电源管理电路510是电性连接至存储器管理电路502并且用以控制存储器储存装置10的电源。错误检查与校正电路512是电性连接至存储器管理电路502并且用以执行错误检查与校正程序以确保数据的正确性。具体来说,当存储器管理电路502从主机系统11中接收到写入指令时,错误检查与校正电路512会为对应此写入指令的数据产生对应的错误检查与校正码(errorcheckingandcorrectingcode,ecccode),并且存储器管理电路502会将对应此写入指令的数据与对应的错误检查与校正码写入至可复写式非易失性存储器模块406中。之后,当存储器管理电路502从可复写式非易失性存储器模块406中读 取数据时会同时读取此数据对应的错误检查与校正码,并且错误检查与校正电路512会依据此错误检查与校正码对所读取的数据执行错误检查与校正程序。图6是根据第一范例实施例所显示的管理可复写式非易失性存储器模块的装置的示意图。必须了解的是,在此描述可复写式非易失性存储器模块406运作时,“选择”、“分组”、“划分”、“关联”等词是逻辑上的概念。也就是说,可复写式非易失性存储器模块的实体抹除单元的实际位置并未更动,而是逻辑上对可复写式非易失性存储器模块的实体抹除单元进行操作。请参照图6,可复写式非易失性存储器模块406具有多个实体抹除单元410(0)~410(n),每一实体抹除单元具有多个实体程序化单元。在本范例实施例中,实体程序化单元为程序化的最小单元。即,实体程序化单元为写入数据的最小单元。例如,实体程序化单元为实体页面或是实体扇(sector)。若实体程序化单元为实体页面,则每一个实体程序化单元通常包括数据位区与冗余位区。数据位区包含多个实体扇,用以储存用户的数据,而冗余位区用以储存系统的数据(例如,错误更正码或其他系统用于管理的数据)。另一方面,实体抹除单元为抹除的最小单位。即,每一实体抹除单元含有最小数目的一并被抹除的记忆胞。例如,实体抹除单元为实体区块。存储器控制电路单元404(或存储器管理电路502)会将可复写式非易失性存储器模块406的实体抹除单元410(0)~410(n)逻辑地分组为数据区602、闲置区604、系统区606与取代区608。逻辑上属于数据区602与闲置区604的实体抹除单元是用以储存来自于主机系统11的数据,并且在数据区602与闲置区604的实体抹除单元可被映像至主机系统11的多个逻辑单元(如,数据区602与闲置区604的实体区块被映像至主机系统11的逻辑区块)。具体来说,数据区602的实体抹除单元是被视为已储存数据的实体抹除单元,而闲置区604的实体抹除单元是用以替换数据区602的实体抹除单元。也就是说,假设存储器控制电路单元404(或存储器管理电路502)从主机系统11接收到写入指令与对应此写入指令的欲写入的数据。所述写入指令指示将欲写入的数据储存至至少一第一逻辑单元。反应此写入指令,存储器控制电路单元404(或存储器管理电路502)会将此欲 写入的数据储存至映像至至少一第一逻辑单元的可复写式非易失性存储器模块406的至少一第一实体抹除单元。或者,若数据区602)没有任何已映像至至少一第一逻辑单元的实体抹除单元,存储器控制电路单元404(或存储器管理电路502)会从闲置区604中选择至少一实体抹除单元做为至少一第一实体抹除单元,再将数据写入至所选择的至少一第一实体抹除单元,以替换数据区602的实体抹除单元。逻辑上属于系统区606的实体抹除单元是用以记录关于可复写式非易失性存储器模块406的系统数据。例如,系统数据包括关于可复写式非易失性存储器模块406的制造商与型号、可复写式非易失性存储器模块406所属的存储器晶粒编号、实体抹除单元数、每一实体抹除单元的实体程序化单元数等。逻辑上属于取代区608中的实体抹除单元是用于坏实体抹除单元取代程序,以取代损坏的实体抹除单元。具体来说,倘若取代区608中仍存有正常之实体抹除单元并且数据区602的实体抹除单元损坏时,存储器控制电路单元404(或存储器管理电路502)会从取代区608中选择正常的实体抹除单元来更换损坏的实体抹除单元。特别是,可复写式非易失性存储器模块406的数据区602、闲置区604、系统区606与取代区608的实体抹除单元的数量会依据不同的存储器规格而有所不同。此外,必须了解的是,在存储器储存装置10的运作中,实体抹除单元关联至数据区602、闲置区604、系统区606与取代区608的分组关系会动态地变动。例如,当闲置区604中的实体抹除单元损坏而被取代区608的实体抹除单元取代时,则原本取代区608的实体抹除单元会被关联至闲置区604。或是,从闲置区604选择实体抹除单元来储存写入数据之后,存储器控制电路单元404(或存储器管理电路502)会将此实体抹除单元关联至数据区602并且将对应所写入的数据的逻辑单元映像至此实体抹除单元。图7是根据第一范例实施例所显示的管理可复写式非易失性存储器模块的装置的示意图。以下配合图6、图7来说明可复写式非易失性存储器模块的装置的管理架构。请参照图7,假设存储器控制电路单元404(或存储器管理电路502)已配置逻辑单元lba(0)~lba(h)来映像数据区602的实体抹除单元 410(0)~410(f-1),并且主机系统11是通过逻辑单元lba(0)~lba(h)来存取数据区602中的数据。在此,每一个逻辑单元lba(0)~lba(h)可以是由一或多个逻辑地址组成。例如,逻辑单元可以是逻辑区块(logicalblock)、逻辑页面(logicalpage)或是逻辑扇区(logicalsector)。一个逻辑单元可以是映像至一或多个实体单元,其中实体单元可以是一或多个实体地址、一或多个实体扇、一或多个实体程序化单元或者一或多个实体抹除单元。在本范例实施例中,存储器控制电路单元404(或存储器管理电路502)会建立用以管理存储器储存装置10的系统数据(如,映像表),并且将系统数据储存至缓冲存储器已进行存取。举例来说,存储器控制电路单元404(或存储器管理电路502)会建立逻辑转实体地址映像表与实体转逻辑地址映像表,以记录逻辑单元(如,逻辑区块、逻辑页面或逻辑扇区)与实体单元(如,实体抹除单元、实体程序化单元、实体扇区)之间的映像关系。换言之,存储器控制电路单元404(或存储器管理电路502)可藉由逻辑转实体地址映像表来查找一逻辑单元所映像的实体单元,并且存储器控制电路单元404(或存储器管理电路502)可藉由实体转逻辑地址映像表来查找一实体单元所映像的逻辑单元。当存储器控制电路单元404(或存储器管理电路502)欲更新某个逻辑单元的映像时,对应此逻辑单元所属的逻辑转实体地址映像表会被加载至缓冲存储器来被更新。相似地,存储器控制电路单元404亦会对应地更新实体转逻辑地址映像表。在本范例实施例中,存储器控制电路单元404(或存储器管理电路502)可直接建立上述的映像表(如,逻辑转实体地址映像表与实体转逻辑地址映像表)于缓冲存储器508中,或是从可复写式非易失性存储器模块406读取上述的映像表且将之储存于缓冲存储器508中。如此一来,由于缓冲存储器508的访问速度远高于可复写式非易失性存储器模块406。因此,藉由将所述映像表储存在缓冲存储器508可增进维护/更新/存取所述映射表的效率。在另一实施例中,存储器控制电路单元404(或存储器管理电路502)亦可将所述映像表储存在其他合适的存储器中。此外,在另一实施例中,存储器控制电路单元404(或存储器管理电路502)亦可将其他用以管理存储器储存装置10的系统数据暂存于缓冲存储器508中,以增进维护/更新/存取所述储存在缓冲存储器508的系统数据的效率。然而,一般而言,储存在缓冲存储器508的数据会随着缓冲存储器508被断电而消失。因此,在缓冲存储器508被断电(如,存储器储存装置10进行关机操作)之前,存储器控制电路单元404(或存储器管理电路502)会将储存于缓冲存储器508的数据(如,来自主机系统11的用户数据以及用以管理存储器储存装置10的系统数据)写入至可复写式非易失性存储器模块406。如此一来,可在下次存储器储存装置10开电时(如,存储器储存装置10被供电时),加载储存于可复写式非易失性存储器模块406的系统数据至缓冲存储器508。以下将配合图8与图9来详细说明本范例实施例所提供的关于存储器储存装置断电操作的存储器管理方法。图8是根据本发明的一范例实施例所显示的存储器储存装置的断电操作的示意图。图9是根据本发明的一范例实施例所显示的存储器储存装置的断电操作的运作流程图。在本范例实施例中,请参照图8,举例来说,假设存储器控制电路单元404(或存储器管理电路502)依照时间t1、时间t2.1、时间t2.2、时间t2.3、时间t2.4、时间t3的顺序分别从主机系统接收到关机指令(shutdowncommand)810、指令821、指令822、指令823、指令824(亦合称,指令820)与清除指令830。应注意的是,本发明并不限于在接收到关机指令810后,从主机系统11所接收的指令820的数量。也就是说,存储器控制电路单元404(或存储器管理电路502)可在接收到关机指令810后,从主机系统接收一或多个指令820。时间t4用以表示主机系统11停止供应电源给存储器储存装置10的时间点。在本范例实施例中,关机指令810用以指示存储器储存装置10可进行断电。例如,当主机系统11进行关机操作或是主机系统11进入了特定的电源状态(例如,系统休眠、系统睡眠等等)时,主机系统11会下达关机指令810给存储器储存装置10。尔后,主机系统11会准备切断提供给存储器储存装置10的电源。如上所述,储存在缓冲存储器508的数据会随着缓冲存储器508被断电而消失。在本范例实施例中,若接收到关机指令810,存储器控制电路单元404(或存储器管理电路502)会将储存于缓冲存储器508的系统数据(亦称,第二系统数据)写入至可复写式非易失性存储器模块406中。值得一提的是,响 应于关机指令810而被存入可复写式非易失性存储器模块406中的第二系统数据包括上述的映像表(如,逻辑转实体地址映像表与实体转逻辑地址映像表)。然而,厂商更可根据需求,响应于所接收的关机指令810来储存其他合适的系统数据至可复写式非易失性存储器模块406中。更详细地说,在本范例实施例中,若从主机系统11接收关机指令810,存储器控制电路单元404(或存储器管理电路502)会使用一个特殊管理模式(亦称,第二管理模式)来管理该可复写式非易失性存储器模块406。相对地,于主机系统11(或是外部电源)供电至可复写式非易失性存储器模块406(或存储器储存装置10)后,存储器控制电路单元404(或存储器管理电路502)会使用不同于特殊管理模式的一般管理模式(亦称,第一管理模式)来管理该可复写式非易失性存储器模块406。换言之,存储器控制电路单元404(或存储器管理电路502)会反应于可复写式非易失性存储器模块406(或存储器储存装置10)的开电(power-on),使用第一管理模式来管理该可复写式非易失性存储器模块406。以下会说明第一管理模式与第二管理模式的差异之处。在本范例实施例中,第二管理模式不同于第一管理模式的地方在于,若存储器控制电路单元404(或存储器管理电路502)使用一个特殊管理模式(亦称,第二管理模式)来管理该可复写式非易失性存储器模块406,存储器控制电路单元404(或存储器管理电路502)会在背景中执行至少一强制处理程序。换句话说,存储器控制电路单元404(或存储器管理电路502)不会在使用第一管理模式来管理可复写式非易失性存储器模块406的期间执行上述的对应第二管理模式的强制处理程序。举例来说,假设在接收到关机指令810后,存储器控制电路单元404(或存储器管理电路502)已使用第二管理模式来管理该可复写式非易失性存储器模块406。在此情况下,若存储器控制电路单元404(或存储器管理电路502)从主机系统11接收清除指令830,存储器控制电路单元404(或存储器管理电路502)会“强制”将储存于缓冲存储器508中的系统数据(以下亦称,第一系统数据)写入至可复写式非易失性存储器模块406。值得一提的是,在本范例实施例中,所述清除指令(flushcommand)830用以指示将缓冲存储器508中的数据清除。具体来说,当存储器控制电路单元404(或存储器管理电路502)从主机系统11接收到清除指令830时,存储器控制电路单元404(或存储器管理电 路502)会将储存在缓冲存储器508中的用户数据写入至可复写式非易失性存储器模块406中对应的实体单元,并且根据所写入的实体地址更新储存在缓冲存储器508中的系统数据(如,更新逻辑转实体地址映像表或/和实体转逻辑地址映像表)。也就是说,在第二管理模式之下,若存储器控制电路单元404(或存储器管理电路502)从主机系统11接收到清除指令830,存储器控制电路单元404(或存储器管理电路502)除了会写入用户数据与更新系统数据(第一系统数据)之外,还会强制地将储存于缓冲存储器508中的(已更新的)第一系统数据写入至可复写式非易失性存储器模块406中。相对地,在第一管理模式之下,若存储器控制电路单元404(或存储器管理电路502)从主机系统11接收到清除指令830,存储器控制电路单元404(或存储器管理电路502)会响应于清除指令,而写入用户数据至可复写式非易失性存储器模块406中,并且更新储存在缓冲存储器中的第一系统数据。但是,存储器控制电路单元404(或存储器管理电路502)不会将储存于缓冲存储器508中的(已更新的)第一系统数据写入至可复写式非易失性存储器模块406中。更详细来说,在本范例实施例中,若在第二管理模式中,在响应于清除指令以更新完储存在缓冲存储器508中的所有系统数据后,存储器控制电路单元404(或存储器管理电路502)会将储存于缓冲存储器508的系统数据写入至可复写式非易失性存储器模块406中。例如,存储器控制电路单元404(或存储器管理电路502)会将全部的或是特定的(如,第一系统数据)系统数据写入至可复写式非易失性存储器模块406中划分至系统区的实体抹除单元中,或将全部的或是特定的(如,第一系统数据)系统数据写入至可复写式非易失性存储器模块406的一特定实体抹除单元中,其中此特定实体抹除单元为默认的用于储存系统数据的实体抹除单元。值得一提的是,第一系统数据与第二系统数据,如上所述,可以是映像表(如,更新逻辑转实体地址映像表或/和实体转逻辑地址映像表)。然而,上述第一系统数据与第二系统数据的区别在于第二系统数据是响应于关机指令810而储存的系统数据,并且第一系统数据是响应于清除指令而储存的系统数据。在本范例实施例中,指令820例如是写入指令,其用以指示将用户数据写入至存储器储存装置10。写入指令可包括欲写入的用户数据以及用以指示储存用户数据的信息(例如,用以储存用户数据的逻辑地址)。然而,在另一范例实施例中,指令820还包括用以指示于背景中对可复写式非易失性存储器模块406进行系统操作的系统指令(如,垃圾回收指令)。换句话说,指令820还可以视为分别于时间t2.1~t2.4对可复写式非易失性存储器模块406所执行的系统指令821~824。此外,由于根据垃圾回收指令而对可复写式非易失性存储器模块所进行的垃圾回收操作会使得逻辑单元与实体单元的映像关系发生变化。因此,存储器控制电路单元404(或存储器管理电路502)还会根据执行完垃圾回收操作后的逻辑单元与实体单元的映像关系来更新暂存于缓冲存储器508中的上述的映像表或其他对应的系统数据。换句话说,在此另一实施例中,来自主机系统11的写入指令或是其他来自存储器控制电路单元404(或存储器管理电路502)的系统指令会影响储存于缓冲存储器508中的映像表或其他对应所述系统指令的系统数据。应注意的是,上述指令820的数量可以是一个或是多个,并且指令820可同时包括上述系统指令与写入指令。此外,在另一范例实施例中,假设指令820为系统指令820。所述的强制处理程序包括在第二管理模式中,存储器控制电路单元404(或存储器管理电路502)会调整执行系统指令820的等待时间。在此另一范例实施例中,所述系统指令是根据所述等待时间被执行的。例如,假设系统指令是用以指示于背景中对可复写式非易失性存储器模块406进行垃圾回收操作的垃圾回收指令。存储器控制电路单元404(或存储器管理电路502)会根据对应垃圾回收指令的等待时间来执行垃圾回收指令。更详细来说,存储器控制电路单元404(或存储器管理电路502)会在存储器储存装置10处于闲置状态(如,不进行任何操作)的时间超过等待时间后,存储器控制电路单元404(或存储器管理电路502)会执行垃圾回收指令。又例如,在另一范例实施例中,若存储器控制电路单元404(或存储器管理电路502)判定要执行垃圾回收指令,存储器控制电路单元404(或存储器管理电路502)会根据当前的等待时间,在经过等待时间之后,才执行垃圾回收指令。应注意的是,厂商可以预先设定等待时间的长度。此外,在存储器控制电路单元404(或存储器管理电路502)会调整执行系统指令820的等待时间的运作中,所述存储器控制电路单元404(或存储器管理电路502)会根据从主机系统11接收到关机指令至主机系统11停止供电的时间来调整所述等待时间,以使所述等待时间大于所述时间。更详细来说,从主机系统11接收到关机指令之后,存储器控制电路单元404(或存储器管理电路502)会辨识(或记录)从接收到关机指令的时间点到主机系统11真的停止供电的时间点之间的时间。并且,存储器控制电路单元404(或存储器管理电路502)会根据所述时间来调整所述等待时间。具体来说,存储器控制电路单元404(或存储器管理电路502)会根据所述时间来调整所述等待时间,以使等待时间大于所述时间(即从接收到关机指令的时间点到主机系统11真的停止供电的时间点之间的时间)。如此一来,由于对应系统指令820的等待时间已经被调整,从主机系统11接收到关机指令到主机系统11真的停止供电的这段期间,存储器控制电路单元404(或存储器管理电路502)便不会执行系统指令820。藉此,储存在缓冲存储器508的系统数据不会因为系统指令820的执行而被影响(被更新)。换句话说,如此一来,响应于所接收的关机指令810而储存的系统数据(如,第二系统数据)不会因为在关机指令810之后所执行的系统指令820而成为无效的(或是过期的)系统数据,进而可以在下次存储器储存装置10被供电后,使用已储存在可复写式非易失性存储器模块406中的有效的系统数据。请同时参照图8与图9,举例来说,在运作步骤s901中,于时间t1,主机系统11发送关机指令810至存储器控制电路单元404。在运作步骤s903中,在接收到关机指令810后,存储器控制电路单元404会将储存于缓冲存储器508的至少一系统数据(亦称,第二系统数据)写入至可复写式非易失性存储器模块406,以响应关机指令810,并且使用第二管理模式来管理可复写式非易失性存储器模块406。接着,在运作步骤s905中,存储器控制电路单元404从主机系统11接收了至少一写入指令(如,对应时间t2.1~t2.4的指令821~824)。所述写入指令820用以指示将用户数据写入至可复写式非易失性存储器模块406中。在运作步骤s907中,存储器控制电路单元404将对应所述至少一写入指令820的用户数据写入至可复写式非易失性存储器模块406中,以响应所述至少一 写入指令820。在运作步骤s908中,存储器控制电路单元404根据至少一系统指令对可复写式非易失性存储器模块406进行对应的至少一系统操作。应注意的是,运作步骤s905、步骤s907、步骤s908是选择性的,即,可以不会发生的。此外,运作步骤s905、步骤s907、步骤s908的顺序可以彼此调换。例如,存储器控制电路单元404先从主机系统11接收了写入指令(步骤s905)。接着,存储器控制电路单元404执行系统指令(如,垃圾回收指令)(步骤s908),并且在完成对应系统指令的系统操作(如,垃圾回收操作)后,存储器控制电路单元404再将对应写入指令的用户数据写入至可复写式非易失性存储器模块406中(步骤s907)。又例如,存储器控制电路单元404先进行运作步骤s908,然后进行运作步骤s905,接着进行运作步骤s907。在运作步骤s909中,主机系统11发送清除指令830至存储器控制电路单元404。在运作s911中,存储器控制电路单元404会将储存在缓冲存储器508的用户数据以及储存于缓冲存储器508的系统数据写入至可复写式非易失性存储器模块406中。在将用户数据与系统数据写入至可复写式非易失性存储器模块406后,在运作s913中,存储器控制电路单元404可响应主机系统11清除指令830已完成。图10是根据本发明的一范例实施例所显示的存储器管理方法的流程图。请参考图10,在步骤s1001中,存储器控制电路单元404(或存储器管理电路502)会于供电所述可复写式非易失性存储器模块后使用第一管理模式来管理所述可复写式非易失性存储器模块。在步骤s1003中,若从主机系统接收关机指令,存储器控制电路单元404(或存储器管理电路502)会使用第二管理模式来管理所述可复写式非易失性存储器模块。综上所述,本发明的范例实施例所提供的用于可复写式非易失性存储器模块的一种存储器管理方法、存储器控制电路单元与存储器储存装置,可在接收到关机指令后,使用对应关机指令的特殊管理模式来管理所述可复写式非易失性存储器模块,以反应于清除指令来将储存于高速缓存的系统数据写入至可复写式非易失性存储器模块。如此一来,可避免在下次系统开机时因为系统数据不正确而导致的处理程序,进而加快系统开机的速度,增加工作效率。虽然本发明已以实施例揭示如上,然其并非用以限定本发明,任何所属
技术领域
:中普通技术人员,在不脱离本发明的精神和范围内,当可作些许的改动与润饰,故本发明的保护范围当视所附权利要求界定范围为准。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1