闪存储存系统、闪存控制器与数据处理方法

文档序号:6583153阅读:216来源:国知局

专利名称::闪存储存系统、闪存控制器与数据处理方法
技术领域
:本发明涉及一种闪存储存系统,尤其涉及一种能够识别闪存中已被主机系统删除的数据的闪存储存系统、闪存控制器与数据处理方法。
背景技术
:数字相机、手机与MP3在这几年来的成长十分迅速,使得消费者对储存媒体的需求也急速增加。由于闪存(FlashMemory)具有数据非挥发性、省电、体积小与无机械结构等的特性,适合可携式应用,最适合使用于这类可携式由电池供电的产品上。固态硬盘(SolidStateDrive,SSD)就是一种以NAND闪存作为储存媒体的储存装置。由于闪存体积小容量大,所以已广泛用于个人重要数据的储存。因此,近年闪存产业成为电子产业中相当热门的一环。在闪存储存装置中闪存芯片具有多个实体区块且每一实体区块具有多个实体页,其中实体区块是闪存芯片的抹除单位并且实体页是闪存芯片的写入单位。由于在闪存芯片执行程序化(即,写入程序)时,仅能执行单向的程序化(即,仅能将记忆胞的值由1程序化为0),因此无法对已程序化的实体页(即,存有旧数据的页面)直接进行写入,而是必须先将此实体页抹除后方可重新程序化。特别是,由于闪存芯片的抹除是以实体区块为单位,所以当欲将存有旧数据的实体页执行抹除运作时,必须对此实体页所属的整个实体区块进行抹除。基于闪存以实体页为写入单元而以实体区块为抹除单位的特性,实体区块会由闪存储存装置的闪存控制器逻辑地分组为系统区(systemarea)、数据区(dataarea),备用区(sparearea)与取代区(replacementarea)0系统区的实体区块是用以储存闪存储存装置的相关重要资讯,而取代区的实体区块是用以取代数据区或备用区中已损坏的实体区块(即,坏实体区块),因此在一般存取状态下,主机系统是无法存取系统区与取代区中的实体区块。至于归类为数据区的实体区块中会储存由写入指令所写入的有效数据,而备用区中的实体区块是用以在执行写入指令时替换数据区中的实体区块。具体来说,当闪存储存装置接受到主机系统的写入指令而欲对数据区的实体区块进行写入时,闪存储存装置会从备用区中提取一实体区块并且将在数据区中欲写入的实体区块中的有效旧数据与欲写入的新数据写入至从备用区中提取的实体区块中并且将已写入新数据的实体区块逻辑地关联为数据区,并且将原本数据区的实体区块进行抹除并逻辑地关联为备用区。为了能够让主机系统能够顺利地存取以轮替方式储存数据的实体区块,闪存储存装置会提供逻辑地址给主机系统。也就是说,闪存储存装置会通过在逻辑地址-实体地址映射表(logicaladdress-physicaladdressmappingtable)^id^^^ifi^^i&tlh^^iglSW实体区块之间的映射关系来反映实体区块的轮替,所以主机系统仅需要针对所提供逻辑地址进行写入而闪存储存装置会依据逻辑地址-实体地址映射表对所映射的实体地址进行读取或写入数据。一般来说,主机系统是使用档案系统(filesystem)来管理连接至主机系统的储存周边设备(例如,上述闪存储存装置),其中当主机系统欲删除先前储存于储存周边设备中的数据时,主机系统仅会更新档案系统的空间资讯,而不会指示储存周边设备将数据进行实际地删除,因此储存周边设备的控制电路是无法得知哪些实体地址中的数据已被主机系统删除。特别是,以上述闪存储存装置为例,由于闪存储存装置的闪存控制器无法确认实体地址中的数据是否已被主机系统所删除,因此闪存控制器在以上述轮替方式管理闪存芯片的实体区块时往往会花费许多时间来维护已被主机系统删除的数据,而严重影响闪存储存装置的写入速度与效能。
发明内容本发明提供一种闪存储存系统,其能够识别已被主机系统删除的数据。本发明提供一种闪存控制器,其能够识别已被主机系统删除的数据。本发明提供一种数据处理方法,其能够识别已被主机系统删除的数据。本发明范例实施例提出一种闪存储存系统,其包括闪存芯片、连接器与闪存控制器。闪存芯片具有多个实体区块并且每一实体区块具有多个实体地址。连接器是用以电性连接至一主机系统。闪存控制器是电性连接至闪存芯片与连接器。闪存控制器配置多个逻辑地址并且将逻辑地址映射至部分实体地址,其中上述主机系统使用一档案系统来存取这些逻辑地址,并且该档案系统包括至少一档案系统空间资讯。此外,闪存控制器识别逻辑地址之中的已删除逻辑地址并且将该已删除逻辑地址所映射的实体地址中的数据标记为无效,其中在档案系统空间资讯中,储存于该已删除逻辑地址中的数据已被删除。本发明范例实施例提出一种闪存控制器,配置于一闪存储存装置中,用于管理该闪存储存装置的一闪存芯片,其中该闪存芯片具有多个实体区块,每一实体区块具有多个实体地址且闪存储存装置电性连接至一主机系统。本闪存控制器包括微处理器单元、闪存接口单元、主机接口单元与存储器管理单元。闪存接口单元是电性连接至微处理器单元,且用以电性连接至闪存芯片。主机接口单元是电性连接至微处理器单元,且用以电性连接至主机系统。存储器管理单元电性连接至微处理器单元,并且用以配置多个逻辑地址及将这些逻辑地址映射至部分实体地址,其中主机系统使用一档案系统来存取这些逻辑地址,并且该档案系统包括至少一档案系统空间资讯。此外,存储器管理单元识别这些逻辑地址之中的已删除逻辑地址并且将该已删除逻辑地址所映射的实体地址中的数据标记为无效,其中在档案系统的空间资讯中,储存于该已删除逻辑地址中的数据已被删除。本发明范例实施例提出一种数据处理方法,用于管理一闪存芯片,其中该闪存芯片具有多个实体区块且每一实体区块具有多个实体地址。本数据处理方法包括提供一闪存控制器;配置多个逻辑地址;并且将这些逻辑地址映射至部分实体地址,其中一主机系统使用一档案系统来存取这些逻辑地址,并且该档案系统包括至少一档案系统空间资讯。本数据处理方法也包括识别这些逻辑地址之中的已删除逻辑地址以及由闪存控制器将该已删除逻辑地址所映射的实体地址中的数据标记为无效,其中在档案系统空间资讯中,储存于该已删除逻辑地址中的数据已被删除。基于上述,本发明范例实施例的闪存储存装置能够识别已被主机系统删除的数据,由此闪存储存装置的写入速度与效能可有效地被提升。为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图式作详细说明如下。图。例。列表。案列表。图IA是根据本发明第一范例实施例的主机系统与闪存储存装置的方块图。图IB是根据本发明范例实施例的电脑、输入/输出装置与闪存储存装置的示意图IC是根据本发明另一范例实施例的主机系统与闪存储存装置的示意图。图2是根据本发明另一范例实施例的闪存控制器的概要方块图。图3A是根据本发明第一范例实施例的闪存芯片的方块图。图3B是根据本发明第一范例实施例的逻辑地址与实体地址的映射示意图。图4为根据本发明第一范例实施例的以FAT档案系统格式化闪存储存装置的范图5A与5B为根据本发明第一范例实施例的一范例的部分档案配置表与部分档案图6A与6B为根据本发明第一范例实施例的另一范例的部分档案配置表与部分档图7是根据本发明第一范例实施例的数据处理方法的流程图。图8是根据本发明第二范例实施例的主机系统与闪存储存装置的方块图。图9是根据本发明第二范例实施例的数据处理方法的流程图。图10是根据本发明第三范例实施例的主机系统与闪存储存装置的方块图。图11根据本发明第三范例实施例的数据处理方法的流程图。主要附图标记说明1000、8000、9000主机系统;1102中央处理单元;1106:输入/输出装置;1110:数据传输接口;1204键盘;1208打印机;1214记忆卡;1310数字相机;1314=MMC卡;1318=CF卡;100、800、900闪存储存装置;104,104'、804、904闪存控制器;122-(0)122-(N)实体区块;204,204',204"存储器管理单元;206主机接口单元;208闪存接口单元;252:缓冲存储器;254电源管理单元;256错误校正单元;302系统区;304储存区;30:数据区;304b:备用区;1100,8100,9100电脑;1104:主存储器;1108系统总线;1202鼠标;1206显示器;1212随身碟;1216固态硬盘;1312=SD卡;1316记忆棒;1320嵌入式储存装置;102连接器;106闪存芯片;202微处理器单元;8306取代区;402主启动区;406:目录区;502档案配置表;502b链接值字段;504a:档案名称字段;1112档案系统分析单元;9112:档案读取单元;504b起始地址字段;400档案系统;404FAT区;408档案区;50:逻辑地址索引字段;504档案列表;LBA(O)LBA(L)逻辑地址;S701、S703、S705数据处理方法的步骤;S901、S903、S905数据处理方法的步骤;Sl101、Sl103、Sl105数据处理方法的步骤。具体实施例方式闪存储存装置(亦称,闪存储存系统)一般而言包括闪存芯片与控制器(亦称,控制电路)。通常闪存储存装置会与主机系统一起使用,以使主机系统可将数据写入至闪存储存装置或从闪存储存装置中读取数据。另外,也有闪存储存装置是包括嵌入式闪存与可执行于主机系统上以实质地作为此嵌入式闪存的控制器的软体。图IA是根据本发明第一范例实施例的主机系统与闪存储存装置的方块图。图IB是根据本发明范例实施例的电脑、输入/输出装置与闪存储存装置的示意图。请参照图1A,主机系统1000包括电脑1100与输入/输出(input/output,I/O)装置1106。电脑1100包括中央处理单元1102、主存储器1104、系统总线1108与数据传输接口1110。输入/输出装置1106包括如图IB所示的鼠标1202、键盘1204、显示器1206与打印机1208。必须了解的是,图IB所示的装置非限制输入/输出装置1106,输入/输出装置1106可还包括其他装置。在本发明实施例中,闪存储存装置100是通过数据传输接口1110与主机系统1000的其他元件电性连接。通过中央处理单元1102、主存储器1104与输入/输出装置1106的处理主机系统1000可将数据写入至闪存储存装置100或从闪存储存装置100中读取数据。例如,闪存储存装置100可以是如图IB所示的随身碟1212、记忆卡1214或固态硬盘(SolidStateDrive,SSD)1216。一般而言,主机系统1000为可储存数据的任意系统。虽然在本范例实施例中,主机系统1000是以电脑系统来作说明,然而,在本发明另一范例实施例中,主机系统1000也可以是数字相机、摄影机、通信装置、音讯播放器或视讯播放器等系统。图IC是根据本发明另一范例实施例的主机系统与闪存储存装置的示意图。例如,在主机系统为数字相机1310时,闪存储存装置则为其所使用的SD卡1312、MMC卡1314、记忆棒(memorystick)1316,CF卡1318或嵌入式储存装置1320(如图IC所示)。嵌入式储存装置1320包括嵌入式多媒体卡(EmbeddedMMC,eMMC)。值得一提的是,嵌入式多媒体卡是直接电性连接于主机系统的基板上。闪存储存装置100包括连接器102、闪存控制器104与闪存芯片106。连接器102是电性连接至闪存控制器104并且用以电性连接至主机系统1000。在本范例实施例中,连接器102为序列先进附件(SerialAdvancedTechnologyAttachment,SATA)连接器。然而,必须了解的是本发明不限于此,连接器102也可以是平行先进附件(ParallelAdvancedTechnologyAttachment,PATA)连接器、通用序列总线(UniversalSerialBus,USB)连接器、电气和电子工程师协会QnstituteofElectricalandElectronicEngineers,IEEE)1394连接器、高速周边零件连接接口(PeripheralComponentInterconnectExpress,PCIExpress)连接器、安全数字(securedigital,SD)接口连接器、记忆棒(MemorySick,MS)接口连接器、多媒体储存卡(MultiMediaCard,MMC)接口连接器、小型快闪(CompactFlash,CF)接口连接器、整合式驱动电子接口(IntegratedDeviceElectronics,IDE)连接器或其他适合的连接器。闪存控制器104会执行以硬体型式或韧体型式实作的多个逻辑闸或控制指令,并且根据主机系统1000的指令在闪存芯片106中进行数据的写入读取与抹除等运作。闪存控制器104包括微处理器单元202、存储器管理单元204、主机接口单元206与闪存接口单元208。微处理器单元202为闪存控制器104的主控单元,用以与存储器管理单元204、主机接口单元206与闪存接口单元208等协同合作以进行闪存储存装置100的各种运作。存储器管理单元204是电性连接至微处理器单元202,用以执行根据本范例实施例的数据写入与处理机制以及存储器管理机制,存储器管理单元204的运作将于以下作详细说明。在本范例实施例中,存储器管理单元204是以一韧体型式实作在闪存控制器104中。例如,将包括多个控制指令的存储器管理单元204烧录至一程序存储器(例如,只读存储器(ReadOnlyMemory,ROM))中并且将此程序存储器嵌入在闪存控制器104中,当闪存储存装置100运作时,存储器管理单元204的多个控制指令会由微处理器单元202来执行以完成根据本发明实施例的数据写入与处理机制及存储器管理机制。在本发明另一范例实施例中,存储器管理单元204的控制指令也可以程序代码型式储存于闪存芯片106的特定区域(例如,闪存芯片中专用于存放系统数据的系统区)中。同样的,当闪存储存装置100运作时,存储器管理单元204的多个控制指令会由微处理器单元202来执行。此外,在本发明另一范例实施例中,存储器管理单元204也可以一硬体型式实作在闪存控制器104中。主机接口单元206是电性连接至微处理器单元202并且用以接收与识别主机系统1000所传送的指令与数据。也就是说,主机系统1000所传送的指令与数据会通过主机接口单元206来传送至微处理器单元202。在本范例实施例中,主机接口单元206是SATA接口。然而,必须了解的是本发明不限于此,主机接口单元210也可以是PATA接口、USB接口、IEEE1394接口、PCIExpress接口、SD接口、MS接口、匪C接口、CF接口、IDE接口或其他适合的数据传输接口。闪存接口单元208是电性连接至微处理器单元202并且用以存取闪存芯片106。也就是说,欲写入至闪存芯片106的数据会经由闪存接口单元208转换为闪存芯片106所能接受的格式。在本发明另一范例实施例中,闪存控制器也可还包括其他功能模组。图2是根据本发明另一范例实施例的闪存控制器的概要方块图。请参照图2,除了微处理器单元202、存储器管理单元204、主机接口单元206与闪存接口单元208之外,闪存控制器104'还包括缓冲存储器252、电源管理单元2M与错误校正单元256。缓冲存储器252是电性连接至微处理器单元202并且用以暂存来自于主机系统1000的数据与指令或来自于闪存芯片106的数据。电源管理单元2M是电性连接至微处理器单元202并且用以控制闪存储存装置100的电源。错误校正单元256是电性连接至微处理器单元202并且用以执行一错误校正程序以确保数据的正确性。具体来说,当存储器管理单元204从主机系统1000中接收到主机写入指令时,错误校正单元256会为对应此主机写入指令的写入数据产生对应的错误检查与校正码(ErrorCheckingandCorrectingCode,ECCCode),并且存储器管理单元204会将此写入数据与对应的错误校正码写入至闪存芯片106中。之后,当存储器管理单元204从闪存芯片106中读取数据时会同时读取此数据对应的错误校正码,并且错误校正单元256会依据此错误校正码对所读取的数据执行错误校正程序。请再参照图1A,闪存芯片106是电性连接至闪存控制器104并且用以储存数据。图3A是根据本发明第一范例实施例的闪存芯片的方块图。请参照图3A,闪存芯片106具有实体区块122-(0)122-(N)。实体区块为抹除的最小单位。亦即,每一实体区块含有最小数目的一并被抹除的记忆胞。每一实体区块具有1个实体地址(即,实体页面)。在本范例实施例中,实体地址为程序化的最小单元。换言之,实体地址为写入数据或读取数据的最小单元。每一实体页面通常包括使用者数据区与冗余区。使用者数据区用以储存使用者的数据,而冗余区用以储存系统的数据(例如,错误检查与校正码)。然而,必须了解的,本发明不限于每一实体区块具有1个实体地址,在本发明另一范例实施例中,实体区块的实体地址数也可以是64、256或其他适当数目。在本范例实施例中,闪存芯片106为多层记忆胞(MultiLevelCell,MLC)NAND闪存芯片。然而,本发明不限于此,闪存芯片106也可是单层记忆胞(SingleLevelCe11,SLC)NAND闪存-H-·II心片。存储器管理单元204会将实体区块122-(0)122_(N)逻辑地分组为系统区(systemarea)302、储存区(storagearea)304与取代区(replacementarea)306o必须了解的是,在此描述闪存的实体区块的运作时,以“提取”、“交换”、“分组”、“轮替”等词来操作实体区块是逻辑上的概念。也就是说,闪存的实体区块的实际位置并未更动,而是逻辑上对闪存的实体区块进行操作。逻辑上属于系统区302的实体区块122-(0)122_(S)是用以记录系统数据,此系统数据包括关于闪存芯片的制造商与型号、每一实体区块的实体地址数等。逻辑上属于储存区304的实体区块122_(S+1)122_(A)是用以储存主机系统1000所写入的数据。也就是说,闪存储存装置100会使用分组为储存区304的实体区块来实际地储存主机系统1000所写入的数据。更详细来说,储存区304的实体区块122-(S+1)122-(A)还分组为数据区30与备用区304b,其中数据区30的实体区块122-(S+1)122-(D)是已被写满数据的实体区块,而备用区304b的实体区块122-(D+1)122_(A)是未被使用来储存数据的实体区块。具体来说,当存储器管理单元204从备用区304b提取实且将所提取的实体区块写满数据时,所提取的实体区块会被关联至数据区30,并且当关联至数据区30的实体区块被执行抹除运作之后已抹除的实体区块会被关联至备用区304b。逻辑上属于取代区306中的实体区块122-(A+1)122-(N)是替代实体区块。例如,闪存芯片106于出厂时会预留4%的实体区块作为更换使用。也就是说,当系统区302与储存区304中的实体区块损毁时,预留于取代区306中的实体区块可用以取代损坏的实体区块(S卩,坏实体区块(badblock))。因此,倘若取代区306中仍存有可用的实体区块且发生实体区块损毁时,存储器管理单元204会从取代区306中提取可用的实体区块来更换损毁的实体区块。倘若取代区306中无可用的实体区块且发生实体区块损毁时,则闪存储存装置100将会被宣告为写入保护(writeprotect),而无法再写入数据。必须了解的是,在闪存储存装置100的运作中,实体区块122-(0)122_(N)被分组为系统区302、数据区30、备用区304b与取代区306的映射关系会动态地变动。也就是说,当存储器管理单元204将数据写入至原本属于备用区304b的实体区块(例如,实体区块122-(D+2))后,此实体区块会被关联至数据区3(Ma。或者,当数据区30(或备用区304b)中的实体区块损坏时而被取代区306的实体区块取代时,则原本取代区306的实体区块会被关联至数据区30(或备用区304b)。由于闪存储存装置100是以轮替地使用储存区304的实体区块来储存主机系统1000欲写入的数据,因此存储器管理单元204会提供逻辑地址LBA(O)LBA(L)给主机系统1000以进行数据存取,并且存储器管理单元204会将这些逻辑地址映射至储存区304的实体区块的实体地址(如图3B所示)。其中,图:3B是根据本发明第一范例实施例的逻辑地址与实体地址的映射示意图。例如,存储器管理单元204会维护逻辑地址转实体地址映射表以及实体地址转逻辑地址映射表来记录逻辑地址与实体地址之间的映射关系。在本范例实施例中,在闪存储存装置100第一次被电性连接至主机系统1000并且被执行初始化时,主机系统1000会使用一档案系统(filesystem)来格式化闪存储存装置100的逻辑地址LBA(O)LBA(L),并且将作业系统(未绘示)安装至闪存储存装置100的逻辑地址LBA(O)LBA(L)中。此时,存储器管理单元204会依据主机系统1000的写入指令将档案系统的空间资讯与作业系统写入至所映射的实体地址中。之后,当主机系统1000重新被启动时,作业系统会被载入至主存储器1104中运转以控制主机系统1000的运作,其中主机系统1000会依据所使用的档案系统来存取闪存储存装置100。为了方便说明,以下将以档案配置表(FileAllocationTable,FAT)档案系统为例进行说明,然而,必须了解的是,本发明不限于此,本发明也可应用于NTFS档案系统或其他档案系统。图4为根据本发明第一范例实施例的以FAT档案系统格式化闪存储存装置的范例。请参照图4,例如,当主机系统1000使用档案系统400来格式化闪存储存装置100时,逻辑地址LBA(O)LBA(L)会被依序地划分为主启动区402、FAT区404、目录区406与档案区408,其中主启动区402、FAT区404与目录区406是用以储存FAT档案系统的空间资讯。主启动区402的逻辑地址LBA(0)LBA(M)是用以储存闪存储存装置100的可储存空间的系统资讯。12FAT区404的逻辑地址LBA(M+1)LBA(F)是用以储存档案配置表。档案配置表是用以记录档案逻辑地址的状态。例如,FAT区404中会储存两个档案配置表,其中一个档案配置表为正常存取所使用,而另一个档案配置表为备份档案配置表。目录区406的逻辑地址LBA(F+1)LBA(C)是用以储存档案列表,其用以记录目前储存于闪存储存装置100中的档案的档案描述资讯。档案区408的逻辑地址LBA(C+1)LBA(L)是用以实际地储存档案的内容。具体来说,在主机系统1000格式化闪存储存装置100的逻辑地址LBA(O)LBA(L)之后,当主机系统1000是使用档案系统400的空间资讯(包括在主启动区402、FAT区404与目录区406中的资讯来将欲储存的档案(或数据)储存至档案区408,而存储器管理单元204会依据逻辑地址与实体地址的映射关系将主机系统1000在逻辑地址中所写入的数据实际地写入至所映射的实体地址中。图5A与5B为根据本发明第一范例实施例的一范例的部分档案配置表与部分档案列表。请参照图5A,在此范例中档案配置表502的逻辑地址索引字段50与链接值字段502b依序地记录每一逻辑地址对应的链接值,其中在档案配置表502的链接值会以特殊字符来表示每一逻辑地址的状态。例如,以FAT32为例,“0X?0000000”表示此逻辑地址为闲置逻辑地址(即,未储存数据),“0X?FFFFFF8”-“0X?FFFFFFF”表示此逻辑地址为储存档案的最后一个逻辑地址等。请参照图5B,档案列表504的档案名称字段50与起始地址字段504b是用以记录在闪存储存装置100中所储存的档案的档案名称及储存此档案的起始逻辑地址。必须了解的是,档案列表504仅为一范例,实际上档案列表504还包括档案长度等其他属性字段来描述所储存的档案的资讯。请同时参照图5A与图5B,从档案列表504中的空间资讯可以得知,闪存储存装置100中储存有“fl.exe”与“f2.com”两个档案,其中储存“fl.exe"的起始逻辑地址为逻辑地址LBA(C+50)而储存“f2.com"的起始逻辑地址为逻辑地址LBA(C+30)。此外,结合档案配置表502与档案列表504中的空间资讯还可得知“fl.exe"的内容是依序地被储存在逻辑地址LBA(C+50)、逻辑地址LBA(C+54)与逻辑地址LBA(C+52)中。图6A与6B为根据本发明第一范例实施例的另一范例的部分档案配置表与部分档案列表。请参照图6A与6B,当在上述图5A与图5B所示的状态下,主机系统1000删除“Π.exe"时,主机系统1000会更新档案配置表502与档案列表504,其中在档案配置表502中逻辑地址LBA(C+50)、与逻辑地址LBA(C+54)与逻辑地址LBA(C+52)所对应的链接值会被更改为“0X?0000000”,而在档案列表504中关于“fl.exe”的资讯会被删除。此时,逻辑地址LBA(C+50)、与逻辑地址LBA(C+54)与逻辑地址LBA¢+5会变成为闲置逻辑地址。但必须了解的是,当主机系统1000删除“Π.exe”时,存储器管理单元204是依据主机系统1000的指示来更新储存于实体地址中的档案配置表502与档案列表504,而储存在逻辑地址LBA(C+50)、与逻辑地址LBA(C+54)与逻辑地址LBA(C+52)所映射的实体地址中的数据并不会因此被删除。也就是说,在档案系统400的空间资讯中储存于逻辑地址LBA(C+50)、与逻辑地址LBA(C+54)与逻辑地址LBA(C+52)中的数据已被删除,然而逻辑地址LBA(C+50)、与逻辑地址LBA(C+54)与逻辑地址LBA¢+5所映射的实体地址中仍储存有数据。在此,在档案系统400的空间资讯中其所储存的数据已被删除的逻辑地址称为已删除逻辑地址。值得一提的是,在本范例实施例中,档案系统分析单元1112是被配置在主机系统1000中,以分析档案系统400中的空间资讯。具体来说,档案系统分析单元1112会从闪存芯片106读取档案配置表502,并且扫描每一逻辑地址对应的链接值来识别哪些逻辑地址为闲置逻辑地址。例如,以FAT32为例,当逻辑地址对应的链接值为“0X?0000000”时,则档案系统分析单元1112会将此逻辑地址识别为闲置逻辑地址。特别是,档案系统分析单元1112会将关于闲置逻辑地址的资讯通过主机接口单元206传送给闪存控制器104。此外,当闪存控制器104的存储器管理单元204经由主机接口单元206接收到此资讯时,存储器管理单元204会依据所接收的资讯将闲置逻辑地址识别为已删除逻辑地址并且将已删除逻辑地址所映射的实体地址标示为无效。在本范例实施例中,当存储器管理单元204以上述轮替地使用储存区304的实体区块来储存主机系统1000欲写入的数据时,存储器管理单元204不会搬移(或整理)已被标记为无效的实体地址中的数据,由此写入数据的速度可被有效地提升。值得一提的是,在本范例实施例中,当档案系统分析单元1112侦测到主机系统1000修改档案配置表502时,则档案系统分析单元1112会执行上述识别闲置逻辑地址的程序,并且将所识别的结果传送给闪存控制器104。然而,必须了解的是,本发明不限于此,档案系统分析单元1112也可以定期方式(例如,每隔5分钟)来执行上述识别闲置逻辑地址的程序,并且将所识别的结果传送给闪存控制器104,或者也可由闪存控制器104的存储器管理单元204发送启动指令来请求档案系统分析单元1112执行上述识别闲置逻辑地址的程序并回传所识别的结果。此外,在本范例实施例中,档案系统分析单元1112是以一硬体型式被配置在主机系统1000中。然而,本发明不限于此,在本发明另一范例实施例中,档案系统分析单元1112也可以一应用程序型式或一驱动程序型式安装在主机系统1000中,并且在主机系统1000启动时被载入至主存储器1104中执行。图7是根据本发明第一范例实施例的数据处理方法的流程图。请参照图7,首先,在步骤S701中档案系统分析单元1112从闪存芯片106的实体地址中读取档案配置表502。之后,在步骤S703中档案系统分析单元1112依据对应每一逻辑地址的链接值来识别闲置逻辑地址,并且将关于所识别的闲置逻辑地址的资讯传送给闪存储存装置100。接着,在步骤S705中闪存控制器104依据所接收的资讯将闲置逻辑地址识别为已删除逻辑地址,并且将已删除逻辑地址所映射的实体地址中的数据标记为无效。图8是根据本发明第二范例实施例的主机系统与闪存储存装置的方块图。请参照图8,主机系统8000包括电脑8100与输入/输出(input/output,I/O)装置1106。电脑8100包括中央处理单元1102、主存储器1104、系统总线1108与数据传输接口1110。闪存储存装置800是通过数据传输接口1110与主机系统8000的其他元件电性连接。闪存储存装置800包括连接器102、闪存控制器804与闪存芯片106,其中闪存控制器804包括微处理器单元202、存储器管理单元204'、主机接口单元206与闪存接口单14元208。在此,连接器102、闪存芯片106、微处理器单元202、主机接口单元206与闪存接口单元208的功能与结构已于第一范例实施例中描述,在此不重复说明。闪存控制器804的存储器管理单元204'本质上是相同于存储器管理单元204,其不同之处在于存储器管理单元204是依据配置在主机系统1000中的档案系统分析单元1112所提供的资讯来搜寻已删除逻辑地址,而存储器管理单元204'是直接从闪存芯片106中读取档案系统的空间资讯来搜寻已删除逻辑地址。具体来说,闪存控制器804的存储器管理单元204'会从闪存芯片106读取档案配置表502,并且扫描每一逻辑地址对应的链接值来识别哪些逻辑地址为闲置逻辑地址。例如,以FAT32为例,当逻辑地址对应的链接值为“0X?0000000”时,则闪存控制器804的存储器管理单元204'会将此逻辑地址识别为已删除逻辑地址并且将已删除逻辑地址所映射的实体地址标示为无效。图9是根据本发明第二范例实施例的数据处理方法的流程图。请参照图9,首先,在步骤S901中闪存控制器804从闪存芯片106中读取档案配置表502。之后,在步骤S903中闪存控制器804依据对应每一逻辑地址的链接值来搜寻已删除逻辑地址,并且在步骤S905中闪存控制器804将已删除逻辑地址所映射的实体地址中的数据标记为无效。图10是根据本发明第三范例实施例的主机系统与闪存储存装置的方块图。请参照图10,主机系统9000包括电脑9100与输入/输出(input/output,I/O)装置1106。电脑9100包括中央处理单元1102、主存储器1104、系统总线1108与数据传输接口1110。闪存储存装置900是通过数据传输接口1110与主机系统9000的其他元件电性连接。闪存储存装置900包括连接器102、闪存控制器904与闪存芯片106,其中闪存控制器904包括微处理器单元202、存储器管理单元204"、主机接口单元206与闪存接口单元208。在此,连接器102、闪存芯片106、微处理器单元202、主机接口单元206与闪存接口单元208的功能与结构已于第一范例实施例中描述,在此不重复说明。闪存控制器904的存储器管理单元204〃本质上是相同于存储器管理单元204,其不同之处在于存储器管理单元204是依据配置在主机系统1000中的档案系统分析单元1112所提供的资讯来搜寻已删除逻辑地址,而存储器管理单元204"是根据档案读取单元9112的运作来搜寻已删除逻辑地址。档案读取单元9112是被配置在主机系统9000中,并且依据档案系统400中的空间资讯读取目前储存于闪存储存装置900中的档案(或数据)。具体来说,档案读取单元9112会依据档案系统400的目录区406中的档案列表504来读取目前储存于逻辑地址中的档案。特别是,当存储器管理单元204"依据来自于档案读取单元9112的主机读取指令来从实体地址中读取数据时,存储器管理单元204"会记录哪些逻辑地址被读取且哪些逻辑地址未被读取,其中存储器管理单元204"会将档案读取单元9112未读取的逻辑地址识别为已删除逻辑地址。更详细来说,由于目录区406中的档案列表504仅会记录目前主机系统9000所储存的档案,因此,在档案读取单元9112依序地读取记录于档案列表504中的所有档案之后,档案读取单元9112会完成存取用于储存所有未被主机系统删除的数据的逻辑地址。此外,当档案读取单元9112读取档案时,闪存控制器904的存储器管理单元204"会依据逻辑地址与实体地址的映射关系来在实体地址中读取数据。在本范例实施例中,在档案读取单元9112执行读取的过程中,存储器管理单元204"会记录所读取的每一逻辑地址,并且在档案读取单元9112完成读取之后,存储器管理单元204"会依据档案读取单元9112所读取的逻辑地址来将未被读取的逻辑地址识别为已删除逻辑地址。值得一提的是,在本范例实施例中,当档案读取单元9112侦测到主机系统9000修改档案配置表502时,则档案读取单元9112会执行上述读取程序。然而,必须了解的是,本发明不限于此,档案读取单元9112也可以定期方式(例如,每隔5分钟)来执行上述读取程序,或者也可由存储器管理单元204"发送启动指令来请求档案读取单元9112执行上述读取程序。图11是根据本发明第三范例实施例的数据处理方法的流程图。请参照图11,首先,在步骤SllOl中档案读取单元9112依据档案系统400中的空间资讯读取目前储存于逻辑地址中的档案。并且,在步骤S1103中闪存控制器904记录档案读取单元9112未读取的逻辑地址,并且将档案读取单元9112未读取的逻辑地址识别为已删除逻辑地址。最后,在步骤S1105中闪存控制器904将已删除逻辑地址所映射的实体地址中的数据标记为无效。值得一提的是,在本范例实施例中,存储器管理单元204"是依据档案读取单元9112所读取的逻辑地址来将未被读取的逻辑数据识别为已删除逻辑地址。然而,在本发明另一范例实施例中,存储器管理单元204"也可依据当档案读取单元9112执行读取程序时未被读取的实体地址来识别已删除逻辑地址。具体来说,如上所述,逻辑地址LBA(O)LBA(L)是映射储存区304中的实体区块的实体地址。因此,存储器管理单元204"也可通过判断在档案读取单元9112执行读取的过程中储存区304之中哪些实体地址未被读取并且将未被读取的实体地址所映射的逻辑地址识别为已删除逻辑地址。综上所述,在本发明范例实施例中闪存储存装置能够确认实体地址中的数据是否已被主机系统所删除,由此避免耗费资源来维护(或整理)已被主机系统删除的数据,进而提升闪存储存装置的效能。最后应说明的是以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。1权利要求1.一种闪存储存系统,包括一闪存芯片,具有多个实体区块并且每一所述实体区块具有多个实体地址一连接器,用以电性连接至一主机系统;以及一闪存控制器,电性连接至该闪存芯片与该连接器,用以配置多个逻辑地址并且将所述逻辑地址映射至部分所述实体地址,其中该主机系统使用一档案系统来存取所述逻辑地址,并且该档案系统包括至少一档案系统空间资讯,其中该闪存控制器识别所述逻辑地址之中的至少一已删除逻辑地址并且将该至少一已删除逻辑地址所映射的实体地址中的数据标记为无效,其中在该至少一档案系统空间资讯中,储存于该至少一已删除逻辑地址中的数据已被删除。2.根据权利要求1所述的闪存储存系统,还包括一档案系统分析单元,其中该档案系统分析单元配置在该主机系统中,其中该档案系统分析单元扫描该至少一档案系统空间资讯以识别所述逻辑地址之中的至少一闲置逻辑地址,并且该闪存控制器将该至少一闲置逻辑地址识别为该至少一已删除逻辑地址。3.根据权利要求2所述的闪存储存系统,其中该至少一档案系统空间资讯至少包括一档案配置表,并且该档案配置表记录对应每一所述逻辑地址的一链接值,其中该档案系统分析单元依据对应每一所述逻辑地址的链接值来识别所述逻辑地址之中的该至少一闲置逻辑地址。4.根据权利要求1所述的闪存储存系统,其中该档案系统分析单元是以一应用程序型式或一驱动程序型式配置在该主机系统中。5.根据权利要求1所述的闪存储存系统,其中该闪存控制器扫描该至少一档案系统空间资讯以识别所述逻辑地址之中的至少一闲置逻辑地址并且将该至少一闲置逻辑地址识别为该至少一已删除逻辑地址。6.根据权利要求5所述的闪存储存系统,其中该至少一档案系统空间资讯至少包括一档案配置表,并且该档案配置表记录对应每一所述逻辑地址的一链接值,其中该闪存控制器依据对应每一所述逻辑地址的链接值来识别所述逻辑地址之中的该至少一闲置逻辑地址。7.根据权利要求1所述的闪存储存系统,还包括一档案读取单元,其中该档案读取单元配置在该主机系统中,其中该档案读取单元依据该至少一档案系统空间资讯来从所述逻辑地址中读取未被删除的所有数据,其中该闪存控制器从该档案读取单元所读取的逻辑地址所映射的实体地址中读取未被删除的所有数据。8.根据权利要求7所述的闪存储存系统,其中该闪存控制器记录所述逻辑地址之中未被该档案读取单元读取的至少一逻辑地址,并且将未被该档案读取单元读取的该至少一逻辑地址识别为该至少一已删除逻辑地址。9.根据权利要求7所述的闪存储存系统,其中该闪存控制器记录所述实体地址之中至少一未被读取的实体地址,并且将该至少一未被读取的实体地址所映射的至少一逻辑地址识别为该至少一已删除逻辑地址。10.根据权利要求7所述的闪存储存系统,其中该档案读取单元是以一应用程序型式或一驱动程序型式配置在该主机系统中。11.一种闪存控制器,配置于一闪存储存装置中,用于管理该闪存储存装置的一闪存芯片,其中该闪存芯片具有多个实体区块,每一所述实体区块具有多个实体地址且该闪存储存装置电性连接至一主机系统,该闪存控制器包括一微处理器单元;一闪存接口单元,电性连接至该微处理器单元,用以电性连接至该闪存芯片;一主机接口单元,电性连接至该微处理器单元,用以电性连接至该主机系统;以及一存储器管理单元,电性连接至该微处理器单元,用以配置多个逻辑地址并且将所述逻辑地址映射至部分所述实体地址,其中该主机系统使用一档案系统来存取所述逻辑地址,并且该档案系统包括至少一档案系统空间资讯,其中该存储器管理单元识别所述逻辑地址之中的至少一已删除逻辑地址并且将该至少一已删除逻辑地址所映射的实体地址中的数据标记为无效,其中在该至少一档案系统空间资讯中,储存于该至少一已删除逻辑地址中的数据已被删除。12.根据权利要求11所述的闪存控制器,其中该主机系统包括一档案系统分析单元,其中当该档案系统分析单元扫描该至少一档案系统空间资讯以识别所述逻辑地址之中的至少一闲置逻辑地址并且将关于该至少一闲置逻辑地址的资讯通过该主机接口单元传送给该存储器管理单元时,该存储器管理单元将该至少一闲置逻辑地址识别为该至少一已删除逻辑地址。13.根据权利要求12所述的闪存控制器,其中该至少一档案系统空间资讯至少包括一档案配置表,并且该档案配置表记录对应每一所述逻辑地址的一链接值,其中该档案系统分析单元依据对应每一所述逻辑地址的链接值来识别所述逻辑地址之中的该至少一闲置逻辑地址。14.根据权利要求11所述的闪存控制器,其中该存储器管理单元扫描该至少一档案系统空间资讯以识别所述逻辑地址之中的至少一闲置逻辑地址并且将该至少一闲置逻辑地址识别为该至少一已删除逻辑地址。15.根据权利要求14所述的闪存控制器,其中该至少一档案系统空间资讯至少包括一档案配置表,并且该档案配置表记录对应每一所述逻辑地址的一链接值,其中该存储器管理单元依据对应每一所述逻辑地址的链接值来识别所述逻辑地址之中的该至少一闲置逻辑地址。16.根据权利要求11所述的闪存控制器,其中该主机系统包括一档案读取单元,其中当该档案读取单元依据该至少一档案系统空间资讯来从所述逻辑地址中读取未被删除的所有数据时,该存储器管理单元从该档案读取单元所读取的逻辑地址所映射的实体地址中读取未被删除的所有数据。17.根据权利要求16所述的闪存控制器,其中该存储器管理单元记录所述逻辑地址之中未被该档案读取单元读取的至少一逻辑地址,并且将未被该档案读取单元读取的该至少一逻辑地址识别为该至少一已删除逻辑地址。18.根据权利要求16所述的闪存控制器,其中该存储器管理单元记录所述实体地址之中至少一未被读取的实体地址,并且将该至少一未被读取的实体地址所映射的至少一逻辑地址识别为该至少一已删除逻辑地址。19.一种数据处理方法,用于管理一闪存芯片,其中该闪存芯片具有多个实体区块且每一所述实体区块具有多个实体地址,该数据处理方法包括提供一闪存控制器;配置多个逻辑地址并且将所述逻辑地址映射至部分所述实体地址,其中一主机系统使用一档案系统来存取所述逻辑地址,并且该档案系统包括至少一档案系统空间资讯;识别所述逻辑地址之中的至少一已删除逻辑地址,其中在该至少一档案系统空间资讯中,储存于该至少一已删除逻辑地址中的数据已被删除;以及由该闪存控制器将该至少一已删除逻辑地址所映射的实体地址中的数据标记为无效。20.根据权利要求19所述的数据处理方法,其中识别所述逻辑地址之中的该至少一已删除逻辑地址的步骤包括在该主机系统中配置一档案系统分析单元;使用该档案系统分析单元来扫描该至少一档案系统空间资讯以识别所述逻辑地址之中的至少一闲置逻辑地址;以及将该至少一闲置逻辑地址识别为该至少一已删除逻辑地址。21.根据权利要求20所述的数据处理方法,其中使用该档案系统分析单元来扫描该至少一档案系统空间资讯以识别所述逻辑地址之中的该至少一闲置逻辑地址的步骤包括读取该至少一档案系统空间资讯中的一档案配置表,其中该档案配置表记录对应每一所述逻辑地址的一链接值;以及依据对应每一所述逻辑地址的链接值来识别所述逻辑地址之中的该至少一闲置逻辑地址。22.根据权利要求19所述的数据处理方法,其中识别所述逻辑地址之中的该至少一已删除逻辑地址的步骤包括由该闪存控制器来扫描该至少一档案系统空间资讯以识别所述逻辑地址之中的至少一闲置逻辑地址;以及将该至少一闲置逻辑地址识别为该至少一已删除逻辑地址。23.根据权利要求22所述的数据处理方法,其中由该闪存控制器来扫描该至少一档案系统空间资讯以识别所述逻辑地址之中的该至少一闲置逻辑地址的步骤包括由该闪存控制器读取该至少一档案系统空间资讯的一档案配置表,其中该档案配置表记录对应每一所述逻辑地址的一链接值;以及依据对应每一所述逻辑地址的链接值来识别所述逻辑地址之中的该至少一闲置逻辑地址。24.根据权利要求19所述的数据处理方法,其中识别所述逻辑地址之中的该至少一已删除逻辑地址的步骤包括在该主机系统中配置一档案读取单元;使用该档案读取单元依据该至少一档案系统空间资讯来从所述逻辑地址中读取未被删除的所有数据,其中该闪存控制器从该档案读取单元所读取的逻辑地址所映射的实体地址中读取未被删除的所有数据;以及由该闪存控制器记录所述逻辑地址之中未被该档案读取单元读取的至少一逻辑地址,并且将未被该档案读取单元读取的该至少一逻辑地址识别为该至少一已删除逻辑地址。25.根据权利要求19所述的数据处理方法,其中识别所述逻辑地址之中的该至少一已删除逻辑地址的步骤包括在该主机系统中配置一档案读取单元;使用该档案读取单元依据该至少一档案系统空间资讯来从所述逻辑地址中读取未被删除的所有数据,其中该闪存控制器从映射该档案读取单元所读取的逻辑地址的实体地址中读取未被删除的所有数据;以及记录所述实体地址之中未被该闪存控制器读取的至少一实体地址,并且将未被该闪存控制器读取的该至少一实体地址所映射的至少一逻辑地址识别为该至少一已删除逻辑地址。全文摘要本发明提供了一种闪存储存系统、闪存控制器与数据处理方法,该闪存储存系统包括闪存芯片、连接器与闪存控制器。闪存控制器配置多个逻辑地址并且将逻辑地址映射至闪存芯片中的部分实体地址,其中主机系统使用一档案系统来存取这些逻辑地址。此外,闪存控制器识别逻辑地址之中的已删除逻辑地址并且将此已删除逻辑地址所映射的实体地址中的数据标记为无效。基此,本闪存储存系统能够识别在实体地址中已被主机系统删除的数据,而有效地减少整理数据所需的时间。文档编号G06F3/06GK102053796SQ20091021159公开日2011年5月11日申请日期2009年11月10日优先权日2009年11月10日发明者叶志刚申请人:群联电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1