The invention discloses a garbage collection method for a data storage device. The data storage device includes a NAND flash memory, and NAND flash memory includes a number of data blocks, each of which contains a number of data pages. In the garbage collection method, a destination data block is selected from the data block. Before the user data is written to the target data block, a number of image tables are set up for the target data to record the relationship between the logical address of the user's data and the entity address, and establish an associated bitmap. Each bit in the associated bitmap corresponds to a mapping table. Then, select a data block to be recovered. Then, the related image table is read according to the associated bitmap of the data block to be recovered. Then, one by one determines whether all the data pages of the data block to be recovered are in the relevant image table. If a data page in the recovered data block is in the related image table, the data page is set as a valid data page. Then, the data of the valid data page is written to the destination data block.
【技术实现步骤摘要】
数据贮存装置的垃圾回收方法
本专利技术有关于数据贮存装置,特别有关于数据贮存装置的垃圾回收方法。
技术介绍
闪存转换层(FlashTranslationLayer:FTL)泛指实现于闪存的韧体算法。闪存分为NOR和NAND闪存。以下主要讨论NAND闪存的FTL(或称NFTL)。NAND闪存的闪存,不论SLC(Single-LevelChip)或MLC(Multi-LevelChip),有三个物理特性。第一,写过的地址须抹除后方能再写。第二,一次读或写的单位小而一次抹除的单位大。举例而言,一次读或写的单位是一数据页(Page)而一次抹除的单位是一数据区块(Block)。通常,一数据区块包括许多数据页。第三,每一数据区块的抹除次数受限。举例而言,SLC的抹除次数的限制是约100000次,MLC的抹除次数之限制是约10000次。如图1所示,一个FTL管理一个NAND闪存,并连接一个文件系统。NAND闪存被分成若干数据区块。如图2所示,每一数据区块有若干数据页及若干备用部(Spare)。如上所述,对FTL而言,读及写的最小单位是一数据页,抹除的最小单位是一数据区块。数据页贮存用户数据。备用部,又称作元数据(Metadata),贮存关于对应数据页的信息,例如这数据页对应的逻辑位置及ECC信息。FTL的主要工作是处理逻辑地址(LogicAddress)与实体地址(PhysicalAddress)的映像关系(Mapping)。所以,FTL会用一些表格记录这些关系,方便查表及写入。FTL在写入后,更新表格。FTL在内存里配置表格空间,并在写满表格后,把数据从该表格下刷到N ...
【技术保护点】
1.一种数据贮存装置的垃圾回收方法,其特征在于,包括以下步骤:(a)提供一种数据贮存装置,该数据贮存装置包括一个NAND闪存(16),该NAND闪存(16)包括若干数据区块(30),每一个数据区块(30)包括若干数据页;(b)从数据区块(30)选一个目的数据区块(30);(c)把用户数据写入目的数据区块(30)以前,为目的数据建立若干映像表(22)来记录用户数据的逻辑地址与实体地址的关系,并建立一个关联性位图(24),关联性位图(24)中的每一个位对应一个映像表(22);(d)从数据区块(30)选一个待回收数据区块(30);(e)依待回收数据区块(30)的关联性位图(24)读取相关映射表(22);(f)逐一判断待回收数据区块(30)的全部数据页是否在相关映像表(22)里;(g)若待回收数据区块(30)的一数据页在相关映像表(22)里,则把该数据页设为有效数据页;及(h)把有效数据页的数据写入另一个数据区块(30)。
【技术特征摘要】
1.一种数据贮存装置的垃圾回收方法,其特征在于,包括以下步骤:(a)提供一种数据贮存装置,该数据贮存装置包括一个NAND闪存(16),该NAND闪存(16)包括若干数据区块(30),每一个数据区块(30)包括若干数据页;(b)从数据区块(30)选一个目的数据区块(30);(c)把用户数据写入目的数据区块(30)以前,为目的数据建立若干映像表(22)来记录用户数据的逻辑地址与实体地址的关系,并建立一个关联性位图(24),关联性位图(24)中的每一个位对应一个映像表(22);(d)从数据区块(30)选一个待回收数据区块(30);(e)依待回收数据区块(30)的关联性位图(24)读取相关映射表(22);(f)逐一判断待回收数据区块(30)的全部数据页是否在相关映像表(22)里;(g)若待回收数据区块(30)的一数据页在相关映像表(22)里,则把该数据页设为有效数据页;及(h)把有效数据页的数据写入另一个数据区块(30)。2.如权利要求1所述的数据贮存装置的垃圾回收方法,其特征在于,步骤(g)包括以下步骤:(g1)建立一个有效数据页位图(20),有效数据页位图(20)中每一个位对应该待回收数据区块(30)的一数据页。3.如权利要求2所述的数据贮存装置的垃...
【专利技术属性】
技术研发人员:许嫣兰,徐伯贤,张柏坚,
申请(专利权)人:国科美国研究实验室,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。