CN110442300B - 整理指令记录方法、存储器控制电路单元与存储装置 - Google Patents
整理指令记录方法、存储器控制电路单元与存储装置 Download PDFInfo
- Publication number
- CN110442300B CN110442300B CN201810413001.7A CN201810413001A CN110442300B CN 110442300 B CN110442300 B CN 110442300B CN 201810413001 A CN201810413001 A CN 201810413001A CN 110442300 B CN110442300 B CN 110442300B
- Authority
- CN
- China
- Prior art keywords
- physical
- unit
- memory
- data
- logical
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
本发明提出一种整理指令记录方法、存储器控制电路单元与存储装置。所述方法包括:从主机***接收写入指令;将对应所述写入指令的数据写入至所述多个物理抹除单元中的第一物理抹除单元的第一物理程序化单元;以及当从所述主机***接收整理指令时,将对应所述整理指令的整理指令纪录写入至所述第一物理抹除单元的第二物理程序化单元中。
Description
技术领域
本发明涉及一种整理指令记录方法,尤其涉及一种用于可复写式非易失性存储器模块的整理指令记录方法及使用此方法的存储器控制电路单元与存储器存储装置。
背景技术
数码相机、手机与MP3在这几年来的成长十分迅速,使得消费者对存储媒体的需求也急速增加。由于可复写式非易失性存储器(rewritable non-volatile memory)具有数据非易失性、省电、体积小、无机械结构、读写速度快等特性,最适于可携式电子产品,例如笔记本电脑。固态硬盘就是一种以快闪存储器作为存储媒体的存储器存储装置。因此,近年快闪存储器产业成为电子产业中相当热门的一环。
快闪存储器模块具有多个物理抹除单元且每一物理抹除单元具有多个物理程序化单元(physical page),其中在物理抹除单元中写入数据时必须依据物理程序化单元的顺序写入数据。此外,已被写入数据的物理程序化单元并需先被抹除后才能再次用于写入数据。特别是,物理抹除单元为抹除的最小单位,并且物理程序化单元为程序化(也称写入)的最小单元。因此,在快闪存储器模块的管理中,物理抹除单元会被区分为数据区与闲置区。
数据区的物理抹除单元是用以存储主机***所存储的数据。具体来说,存储器存储装置中的存储器控制电路单元会将主机***所存取的逻辑地址转换为逻辑区块的逻辑地址并且将逻辑区块的逻辑地址映射至数据区的物理抹除单元的物理程序化单元。也就是说,快闪存储器模块的管理上数据区的物理抹除单元是被视为已被使用的物理抹除单元(例如,已存储主机***所写入的数据)。例如,存储器控制电路单元会使用逻辑-物理地址映射表来记载逻辑区块与数据区的物理抹除单元的映射关系,其中逻辑区块中的逻辑地址是对应所映射的物理抹除单元的物理程序化单元。
闲置区的物理抹除单元是用以轮替数据区中的物理抹除单元。具体来说,如上所述,已写入数据的物理抹除单元必须被抹除后才可再次用于写入数据,因此,闲置区的物理抹除单元是被设计用于写入数据以替换映射逻辑区块的物理抹除单元。基此,在闲置区中的物理抹除单元为空或可使用的物理抹除单元,即无记录数据或标记为已没用的无效数据。也就是说,数据区与闲置区的物理抹除单元的物理程序化单元是以轮替方式来映射逻辑区块的逻辑地址,以存储主机***所写入的数据。
在目前的快闪存储器存储技术中,当主机***欲删除逻辑地址上的数据时,其会下达整理指令以通知存储器控制电路单元哪些逻辑地址上的数据已被删除。一般来说,当存储器控制电路单元从主机***接收到整理指令(trim command)时,存储器控制电路单元并不会立即地执行对应整理指令的整理操作来更改逻辑-物理映射表中的映射信息,而是会存储对应整理指令的纪录在易失性存储器中的整理表(trim table)并传送确认信息给主机***以快速地回应整理指令。之后在适当的时机(例如,存储器控制电路单元处于闲置状态时),存储器控制电路单元才会根据易失性存储器中的纪录来执行对应整理指令的整理操作。需注意的是,当存储器存储装置异常断电时,存储在易失性存储器中的整理表也会跟着遗失。当存储器存储装置重新上电时,存储器控制电路单元并无法根据整理表中的整理指令来执行整理操作,进而造成原本应被删除的逻辑地址上的数据仍然被保留在非易失性存储器中而无法被回收,并且无法根据整理表来更改逻辑-物理映射表中的映射信息。因此,如何在存储器存储装置重新上电后取得断电前的整理指令纪录并执行对应的整理操作,是此领域技术人所致力的目标。
发明内容
本发明提供一种整理指令记录方法、存储器控制电路单元与存储器存储装置,可以在存储器存储装置重新上电后取得断电前的整理指令纪录并执行对应的整理操作,进而避免在异常断电后整理表中的信息遗失所造成的问题。
本发明提出一种整理指令记录方法,用于存储器存储装置。所述存储器存储装置具有可复写式非易失性存储器模块,所述可复写式非易失性存储器模块包括多个物理抹除单元,所述多个物理抹除单元中的每一个物理抹除单元包括多个物理程序化单元,所述整理指令记录方法包括:从主机***接收写入指令;将对应所述写入指令的数据写入至所述多个物理抹除单元中的第一物理抹除单元的第一物理程序化单元;以及当从所述主机***接收整理指令时,将对应所述整理指令的整理指令纪录写入至所述第一物理抹除单元的第二物理程序化单元中。
在本发明的一实施例中,所述整理指令指示将第一逻辑地址上的数据删除。
在本发明的一实施例中,所述整理指令纪录用以记录关于所述第一逻辑地址上的数据被删除的信息。
在本发明的一实施例中,所述方法还包括:当所述存储器存储装置在断电后重新上电时,根据存储在所述第二物理程序化单元中的所述整理指令纪录回复逻辑-物理映射表中的多个映射信息。
在本发明的一实施例中,其中根据存储在所述第二物理程序化单元中的所述整理指令纪录回复所述逻辑-物理映射表中的所述多个映射信息的步骤包括:将在所述逻辑-物理映射表中对应所述整理指令所指示的所述第一逻辑地址的映射更改为空值。
在本发明的一实施例中,所述方法还包括:标记所述第二物理程序化单元以表示所述第二物理程序化单元用以存储所述整理指令纪录。
本发明提出一种存储器控制电路单元,此存储器控制电路单元包括主机接口、存储器接口与存储器管理电路。主机接口用以电性连接至主机***。存储器接口用以电性连接至可复写式非易失性存储器模块,其中所述可复写式非易失性存储器模块包括多个物理抹除单元,所述多个物理抹除单元中的每一个物理抹除单元包括多个物理程序化单元。存储器管理电路电性连接至所述主机接口与所述存储器接口,并且用以执行下述运作:从主机***接收写入指令;将对应所述写入指令的数据写入至所述多个物理抹除单元中的第一物理抹除单元的第一物理程序化单元;以及当从所述主机***接收整理指令时,将对应所述整理指令的整理指令纪录写入至所述第一物理抹除单元的第二物理程序化单元中。
在本发明的一实施例中,所述整理指令指示将第一逻辑地址上的数据删除。
在本发明的一实施例中,所述整理指令纪录用以记录关于所述第一逻辑地址上的数据被删除的信息。
在本发明的一实施例中,当所述存储器控制电路单元在断电后重新上电时,所述存储器管理电路还用以根据存储在所述第二物理程序化单元中的所述整理指令纪录回复逻辑-物理映射表中的多个映射信息。
在本发明的一实施例中,其中在根据存储在所述第二物理程序化单元中的所述整理指令纪录回复所述逻辑-物理映射表中的所述多个映射信息的运作中,所述存储器管理电路还用以将在所述逻辑-物理映射表中对应所述整理指令所指示的所述第一逻辑地址的映射更改为空值。
在本发明的一实施例中,所述存储器管理电路还用以标记所述第二物理程序化单元以表示所述第二物理程序化单元用以存储所述整理指令纪录。
在本发明的提出一种存储器存储装置,此存储器存储装置包括连接接口单元、可复写式非易失性存储器模块以及存储器控制电路单元。连接接口单元用以电性连接至主机***。可复写式非易失性存储器模块具有多个物理抹除单元,所述多个物理抹除单元中的每一个物理抹除单元包括多个物理程序化单元;存储器控制电路单元电性连接至所述连接接口单元与所述可复写式非易失性存储器模块,并用以执行下述运作:从主机***接收写入指令;将对应所述写入指令的数据写入至所述多个物理抹除单元中的第一物理抹除单元的第一物理程序化单元;以及当从所述主机***接收整理指令时,将对应所述整理指令的整理指令纪录写入至所述第一物理抹除单元的第二物理程序化单元中。
在本发明的一实施例中,所述整理指令指示将第一逻辑地址上的数据删除。
在本发明的一实施例中,所述整理指令纪录用以记录关于所述第一逻辑地址上的数据被删除的信息。
在本发明的一实施例中,当所述存储器存储装置在断电后重新上电时,所述存储器控制电路单元还用以根据存储在所述第二物理程序化单元中的所述整理指令纪录回复逻辑-物理映射表中的多个映射信息。
在本发明的一实施例中,其中在根据存储在所述第二物理程序化单元中的所述整理指令纪录回复所述逻辑-物理映射表中的所述多个映射信息的运作中,所述存储器控制电路单元还用以将在所述逻辑-物理映射表中对应所述整理指令所指示的所述第一逻辑地址的映射更改为空值。
在本发明的一实施例中,所述存储器控制电路单元还用以标记所述第二物理程序化单元以表示所述第二物理程序化单元用以存储所述整理指令纪录。
基于上述,本发明的整理指令记录方法、存储器控制电路单元与存储器存储装置可以在存储器管理电路接收到整理指令时,存储对应于整理指令的整理指令纪录于目前正在用于写入的物理抹除单元中。当存储器存储装置发生异常断电且重新上电后,存储器管理电路可以根据所存储的整理指令纪录来回复逻辑-物理映射表中的映射信息,进而避免在异常断电后整理表中的信息遗失所造成的无法顺利执行整理操作的问题。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详细说明如下。
附图说明
图1是根据一范例实施例所示出的主机***与存储器存储装置。
图2是根据一范例实施例所示出的电脑、输入/输出装置与存储器存储装置的示意图。
图3是根据一范例实施例所示出的主机***与存储器存储装置的示意图。
图4是根据一范例实施例所示出的存储器存储装置的概要方块图。
图5A与图5B是根据一范例实施例所示出的存储单元存储架构与物理抹除单元的示意图。
图6是根据一范例实施例所示出的存储器控制电路单元的概要方块图。
图7与图8是根据第一范例实施例所示出的管理物理区块的范例示意图。
图9~图17是根据本发明一范例实施例所示出的写入数据的范例。
图18是根据一范例实施例所示出的整理表的示意图。
图19是根据一范例实施例所示出的将对应整理指令的整理指令纪录写入至一物理程序化单元的示意图。
图20是根据一范例实施例所示出执行整理操作前后的逻辑-物理映射表的示意图。
图21是根据一范例实施例所示出在执行整理操作后的逻辑地址与物理地址之间的映射状态的示意图。
图22是根据一范例实施例示出的整理指令记录方法的流程图。
附图标记说明
10:存储器存储装置
11:主机***
12:输入/输出(I/O)装置
110:***总线
111:处理器
112:随机存取存储器(RAM)
113:只读存储器(ROM)
114:数据传输接口
20:主机板
201:U盘
202:存储卡
203:固态硬盘
204:无线存储器存储装置
205:全球定位***模块
206:网络接口卡
207:无线传输装置
208:键盘
209:屏幕
210:喇叭
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):逻辑区块地址
LZ(0)~LZ(M):逻辑区域
UD1~UD8:数据
TL:整理指令纪录
2400:整理表
2500-1、2500-2:逻辑-物理映射表
S2201:从主机***接收写入指令的步骤
S2203:将对应写入指令的数据写入至多个物理抹除单元中的第一物理抹除单元的第一物理程序化单元的步骤
S2205:当从主机***接收整理指令时,将对应此整理指令的整理指令纪录写入至第一物理抹除单元的第二物理程序化单元中的步骤
S2207:标记第二物理程序化单元以表示第二物理程序化单元用以存储整理指令纪录的步骤
S2209:判断存储器存储装置是否在断电后重新上电的步骤
S2211:根据存储在第二物理程序化单元中的整理指令纪录回复逻辑-物理映射表中的映射信息的步骤
具体实施方式
一般而言,存储器存储装置(也称,存储器存储***)包括可复写式非易失性存储器模块与控制器(也称,控制电路单元)。通常存储器存储装置是与主机***一起使用,以使主机***可将数据写入至存储器存储装置或从存储器存储装置中读取数据。
图1是根据一范例实施例所示出的主机***、存储器存储装置及输入/输出(I/O)装置的示意图,并且图2是根据另一范例实施例所示出的主机***、存储器存储装置及输入/输出(I/O)装置的示意图。
请参照图1与图2,主机***11一般包括处理器111、随机存取存储器(randomaccess memory,RAM)112、只读存储器(read only memory,ROM)113及数据传输接口114。处理器111、随机存取存储器112、只读存储器113及数据传输接口114皆电性连接至***总线(system bus)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可例如是U盘201、存储卡202、固态硬盘(Solid State Drive,SSD)203或无线存储器存储装置204。无线存储器存储装置204可例如是近距离无线通讯(Near FieldCommunication Storage,NFC)存储器存储装置、无线传真(WiFi)存储器存储装置、蓝牙(Bluetooth)存储器存储装置或低功耗蓝牙存储器存储装置(例如,iBeacon)等以各式无线通讯技术为基础的存储器存储装置。此外,主机板20也可以通过***总线110电性连接至全球定位***(Global Positioning System,GPS)模块205、网络接口卡206、无线传输装置207、键盘208、屏幕209、喇叭210等各式I/O装置。例如,在一范例实施例中,主机板20可通过无线传输装置207存取无线存储器存储装置204。
在一范例实施例中,所提及的主机***为可实质地与存储器存储装置配合以存储数据的任意***。虽然在上述范例实施例中,主机***是以电脑***来作说明,然而,图3是根据另一范例实施例所示出的主机***与存储器存储装置的示意图。请参照图3,在另一范例实施例中,主机***31也可以是数码相机、摄影机、通讯装置、音频播放器、视频播放器或平板电脑等***,而存储器存储装置30可为其所使用的SD卡32、CF卡33或嵌入式存储装置34等各式非易失性存储器存储装置。嵌入式存储装置34包括嵌入式多媒体卡(embeddedMMC,eMMC)341和/或嵌入式多芯片封装存储装置(embedded Multi Chip Package,eMCP)342等各类型将存储器模块直接电性连接于主机***的基板上的嵌入式存储装置。
图4是根据一范例实施例所示出的主机***与存储器存储装置的概要方块图。
请参照图4,存储器存储装置10包括连接接口单元402、存储器控制电路单元404与可复写式非易失性存储器模块406。
在本范例实施例中,连接接口单元402是相容于串行高级技术福建(SerialAdvanced Technology Attachment,SATA)标准。然而,必须了解的是,本发明不限于此,连接接口单元402也可以是符合并行高级技术附件(Parallel Advanced TechnologyAttachment,PATA)标准、电气和电子工程师协会(Institute of Electrical andElectronic Engineers,IEEE)1394标准、高速周边零件连接接口(Peripheral ComponentInterconnect Express,PCI Express)标准、通用串行总线(Universal Serial Bus,USB)标准、超高速一代(Ultra High Speed-I,UHS-I)接口标准、超高速二代(Ultra HighSpeed-II,UHS-II)接口标准、安全数字(Secure Digital,SD)接口标准、存储棒(MemoryStick,MS)接口标准、多芯片封装(Multi-Chip Package)接口标准、多媒体存储卡(MultiMedia Card,MMC)接口标准、嵌入式多媒体存储卡(Embedded Multimedia Card,eMMC)接口标准、通用快闪存储器(Universal Flash Storage,UFS)接口标准、嵌入式多芯片封装(embedded Multi Chip Package,eMCP)接口标准、小型快闪(Compact Flash,CF)接口标准、整合式驱动电子接口(Integrated Device Electronics,IDE)标准或其他适合的标准。在本范例实施例中,连接接口单元402可与存储器控制电路单元404封装在一个芯片中,或者连接接口单元402是布设于一包含存储器控制电路单元的芯片外。
存储器控制电路单元404用以执行以硬件型式或固件型式实作的多个逻辑门或控制指令,并且根据主机***11的指令在可复写式非易失性存储器模块406中进行数据的写入、读取与抹除等运作。
可复写式非易失性存储器模块406是电性连接至存储器控制电路单元404,并且用以存储主机***11所写入的数据。可复写式非易失性存储器模块406具有物理抹除单元410(0)~410(N)。例如,物理抹除单元410(0)~410(N)可属于同一个存储器晶粒(die)或者属于不同的存储器晶粒。每一物理抹除单元分别具有复数个物理程序化单元,其中属于同一个物理抹除单元的物理程序化单元可被独立地写入且被同时地抹除。然而,必须了解的是,本发明不限于此,每一物理抹除单元是可由64个物理程序化单元、256个物理程序化单元或其他任意个物理程序化单元所组成。
更详细来说,物理抹除单元为抹除的最小单位。也即,每一物理抹除单元含有最小数目之一并被抹除的存储单元。物理程序化单元为程序化的最小单元。即,物理程序化单元为写入数据的最小单元。每一物理程序化单元通常包括数据比特区与冗余比特区。数据比特区包含多个物理存取地址用以存储使用者的数据,而冗余比特区用以存储***的数据(例如,控制信息与错误更正码)。在本范例实施例中,每一个物理程序化单元的数据比特区中会包含8个物理存取地址,且一个物理存取地址的大小为512字节(byte)。然而,在其他范例实施例中,数据比特区中也可包含数目更多或更少的物理存取地址,本发明并不限制物理存取地址的大小以及个数。例如,在一范例实施例中,物理抹除单元为物理区块,并且物理程序化单元为物理页面或物理扇区,但本发明不以此为限。
在本范例实施例中,可复写式非易失性存储器模块406为三阶存储单元(TrinaryLevel Cell,TLC)NAND型快闪存储器模块(即,一个存储单元中可存储3个数据比特的快闪存储器模块)。然而,本发明不限于此,可复写式非易失性存储器模块406也可是多阶存储单元(Multi Level Cell,MLC)NAND型快闪存储器模块(即,一个存储单元中可存储2个数据比特的快闪存储器模块)或其他具有相同特性的存储器模块。
图5A与图5B是根据本范例实施例所示出的存储单元存储架构与物理抹除单元的范例示意图。
请参照图5A,可复写式非易失性存储器模块406的每个存储单元的存储状态可被识别为“111”、“110”、“101”、“100”、“011”、“010”、“001”或“000”(如图5A所示),其中左侧算起的第1个比特为LSB、从左侧算起的第2个比特为CSB以及从左侧算起的第3个比特为MSB。此外,排列在同一条字元线上的数个存储单元可组成3个物理程序化单元,其中由此些存储单元的LSB所组成的物理程序化单元称为下物理程序化单元,由此些存储单元的CSB所组成的物理程序化单元称为中物理程序化单元,并且由此些存储单元的MSB所组成的物理程序化单元称为上物理程序化单元。
请参照图5B,一个物理抹除单元是由多个物理程序化单元组所组成,其中每个物理程序化单元组包括由排列在同一条字元线上的数个存储单元所组成的下物理程序化单元、中物理程序化单元与上物理程序化单元。例如,在物理抹除单元中,属于下物理程序化单元的第0个物理程序化单元、属于中物理程序化单元的第1个物理程序化单元和属于上物理程序化单元的第2个物理程序化单元会被视为一个物理程序化单元组。类似地,第3、4、5个物理程序化单元会被视为一个物理程序化单元组,并且以此类推其他物理程序化单元也是依据此方式被区分为多个物理程序化单元组。也就是说,在图5B的范例实施例中,物理抹除单元总共有258个物理程序化单元,且由于排列在同一条字元线上的数个存储单元所组成的下物理程序化单元、中物理程序化单元与上物理程序化单元会组成一个物理程序化单元组,故图5B的物理抹除单元总共可以分成86个物理程序化单元组。然而需注意的是,本发明并不用于限定物理抹除单元中的物理程序化单元或物理程序化单元组的个数。
图6是根据一范例实施例所示出的存储器控制电路单元的概要方块图。
请参照图6,存储器控制电路单元404包括存储器管理电路502、主机接口504与存储器接口506、缓冲存储器508、电源管理电路510与错误检查与校正电路512。
存储器管理电路502用以控制存储器控制电路单元404的整体运作。具体来说,存储器管理电路502具有多个控制指令,并且在存储器存储装置10运作时,此些控制指令会被执行以进行数据的写入、读取与抹除等运作。以下说明存储器管理电路502或任何包含于存储器控制电路单元404中的电路元件的操作时,等同于说明存储器控制电路单元404的操作。
在本范例实施例中,存储器管理电路502的控制指令是以固件型式来实作。例如,存储器管理电路502具有微处理器单元(未示出)与只读存储器(未示出),并且此些控制指令是被烧录至此只读存储器中。当存储器存储装置10运作时,此些控制指令会由微处理器单元来执行以进行数据的写入、读取与抹除等运作。
图7与图8是根据一范例实施例所示出的管理物理抹除单元的范例示意图。
必须了解的是,在此描述可复写式非易失性存储器模块406的物理抹除单元的运作时,以“提取”、“分组”、“划分”、“关联”等词来操作物理抹除单元是逻辑上的概念。也就是说,可复写式非易失性存储器模块的物理抹除单元的实际位置并未更动,而是逻辑上对可复写式非易失性存储器模块的物理抹除单元进行操作。
请参照图7,存储器控制电路单元404(或存储器管理电路502)会将物理抹除单元410(0)~410(N)逻辑地分组为数据区602、闲置区604、***区606与取代区608。
逻辑上属于数据区602与闲置区604的物理抹除单元是用以存储来自于主机***11的数据。具体来说,数据区602的物理抹除单元是被视为已存储数据的物理抹除单元,而闲置区604的物理抹除单元是用以替换数据区602的物理抹除单元。也就是说,当从主机***11接收到写入指令与欲写入的数据时,存储器控制电路单元404(或存储器管理电路502)会使用从闲置区604中提取物理抹除单元来写入数据,以替换数据区602的物理抹除单元。
逻辑上属于***区606的物理抹除单元是用以记录***数据。例如,***数据包括关于可复写式非易失性存储器模块的制造商与型号、可复写式非易失性存储器模块的物理抹除单元数、每一物理抹除单元的物理程序化单元数等。
逻辑上属于取代区608中的物理抹除单元是用于坏物理抹除单元取代程序,以取代损坏的物理抹除单元。具体来说,倘若取代区608中仍存有正常的物理抹除单元并且数据区602的物理抹除单元损坏时,存储器控制电路单元404(或存储器管理电路502)会从取代区608中提取正常的物理抹除单元来更换损坏的物理抹除单元。
特别是,数据区602、闲置区604、***区606与取代区608的物理抹除单元的数量会根据不同的存储器规格而有所不同。此外,必须了解的是,在存储器存储装置10的运作中,物理抹除单元关联至数据区602、闲置区604、***区606与取代区608的分组关系会动态地变动。例如,当闲置区604中的物理抹除单元损坏而被取代区608的物理抹除单元取代时,则原本取代区608的物理抹除单元会被关联至闲置区604。
请参照图8,存储器控制电路单元404(或存储器管理电路502)会配置逻辑区块地址LBA(0)~LBA(H)以映射数据区602的物理抹除单元,其中每一逻辑区块地址具有多个逻辑地址以映射对应的物理抹除单元的物理程序化单元。并且,当主机***11欲写入数据至逻辑地址或更新存储于逻辑地址中的数据时,存储器控制电路单元404(或存储器管理电路502)会从闲置区604中提取一个物理抹除单元作为作动物理抹除单元来写入数据,以轮替数据区602的物理抹除单元。并且,当此作为作动物理抹除单元的物理抹除单元被写满时,存储器管理电路502会再从闲置区604中提取空的物理抹除单元作为作动物理抹除单元,以继续写入对应来自于主机***11的写入指令的更新数据。此外,当闲置区604中可用的物理抹除单元的数目小于预设值时,存储器管理电路502会执行垃圾搜集(garbagecollection)操作(也称为,有效数据合并操作)来整理数据区602中的有效数据,以将数据区602中无存储有效数据的物理抹除单元重新关联至闲置区604。
为了识别每个逻辑地址的数据被存储在哪个物理程序化单元,在本范例实施例中,存储器控制电路单元404(或存储器管理电路502)会记录逻辑地址与物理程序化单元之间的映射关系。例如,在本范例实施例中,存储器控制电路单元404(或存储器管理电路502)会在可复写式非易失性存储器模块406中存储逻辑-物理映射表来记录每一逻辑地址所映射的物理程序化单元。当欲存取数据时存储器控制电路单元404(或存储器管理电路502)会将逻辑-物理映射表载入至缓冲存储器508来维护,并且依据逻辑-物理映射表来写入或读取数据。
值得一提的是,由于缓冲存储器508的容量有限无法存储记录所有逻辑地址的映射关系的映射表,因此,在本范例实施例中,存储器控制电路单元404(或存储器管理电路502)会将逻辑区块地址LBA(0)~LBA(H)分组为多个逻辑区域LZ(0)~LZ(M),并且为每一逻辑区域配置一个逻辑-物理映射表。特别是,当存储器控制电路单元404(或存储器管理电路502)欲更新某个逻辑区块地址的映射时,对应此逻辑区块地址所属的逻辑区域的逻辑-物理映射表会被载入至缓冲存储器508来被更新。具体来说,若对应此逻辑区块地址所属的逻辑区域的逻辑-物理映射表未被暂存在缓冲存储器508中(即,缓冲存储器508中所暂存的逻辑-物理映射表未记录欲更新的逻辑区块地址的映射时,存储器控制电路单元404(或存储器管理电路502)会执行映射表交换操作(mapping table swapping operation)以将目前暂存在缓冲存储器508中逻辑-物理映射表回存至可复写式非易失性存储器模块406,并且将记录有欲更新的逻辑区块地址所映射的逻辑-物理映射表载入至缓冲存储器508中。
在本发明另一范例实施例中,存储器管理电路502的控制指令也可以程序码型式存储于可复写式非易失性存储器模块406的特定区域(例如,存储器模块中专用于存放***数据的***区)中。此外,存储器管理电路502具有微处理器单元(未示出)、只读存储器(未示出)及随机存取存储器(未示出)。特别是,此只读存储器具有驱动码,并且当存储器控制电路单元404被致能时,微处理器单元会先执行此驱动码段来将存储于可复写式非易失性存储器模块406中的控制指令载入至存储器管理电路502的随机存取存储器中。之后,微处理器单元会运转此些控制指令以进行数据的写入、读取与抹除等运作。
此外,在本发明另一范例实施例中,存储器管理电路502的控制指令也可以一硬件型式来实作。例如,存储器管理电路502包括微控制器、存储单元管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路。存储单元管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路是电性连接至微控制器。其中,存储单元管理电路用以管理可复写式非易失性存储器模块406的物理抹除单元;存储器写入电路用以对可复写式非易失性存储器模块406下达写入指令以将数据写入至可复写式非易失性存储器模块406中;存储器读取电路用以对可复写式非易失性存储器模块406下达读取指令以从可复写式非易失性存储器模块406中读取数据;存储器抹除电路用以对可复写式非易失性存储器模块406下达抹除指令以将数据从可复写式非易失性存储器模块406中抹除;而数据处理电路用以处理欲写入至可复写式非易失性存储器模块406的数据以及从可复写式非易失性存储器模块406中读取的数据。
请再参照图6,主机接口504是电性连接至存储器管理电路502并且用以电性连接至连接接口单元402,以接收与识别主机***11所传送的指令与数据。也就是说,主机***11所传送的指令与数据会通过主机接口504来传送至存储器管理电路502。在本范例实施例中,主机接口504是相容于SATA标准。然而,必须了解的是本发明不限于此,主机接口504也可以是相容于PATA标准、IEEE 1394标准、PCI Express标准、USB标准、UHS-I接口标准、UHS-II接口标准、SD标准、MS标准、MMC标准、CF标准、IDE标准或其他适合的数据传输标准。
存储器接口506是电性连接至存储器管理电路502并且用以存取可复写式非易失性存储器模块406。也就是说,欲写入至可复写式非易失性存储器模块406的数据会经由存储器接口506转换为可复写式非易失性存储器模块406所能接受的格式。
缓冲存储器508是电性连接至存储器管理电路502并且用以暂存来自于主机***11的暂存数据与指令或来自于可复写式非易失性存储器模块406的数据。
电源管理电路510是电性连接至存储器管理电路502并且用以控制存储器存储装置10的电源。
错误检查与校正电路512是电性连接至存储器管理电路502并且用以执行错误检查与校正程序以确保数据的正确性。例如,当存储器管理电路502从主机***11中接收到写入指令时,错误检查与校正电路512会为对应此写入指令的数据产生对应的错误检查与校正码(Error Checking and Correcting Code,ECC Code),并且存储器管理电路502会将对应此写入指令的数据与对应的错误检查与校正码写入至可复写式非易失性存储器模块406中。之后,当存储器管理电路502从可复写式非易失性存储器模块406中读取数据时会同时读取此数据对应的错误检查与校正码,并且错误检查与校正电路512会根据此错误检查与校正码对所读取的数据执行错误检查与校正程序。
值得一提的是,在本范例实施例中,存储器控制电路单元404(存储器管理电路502)会在不同的状态使用不同的程序化模式来将数据程序化至可复写式非易失性存储器模块406。例如,存储器控制电路单元404(存储器管理电路502)可使用单页程序化模式或多页程序化模式来将数据程序化至物理抹除单元。在此,基于单页程序化模式来程序化存储单元的程序化速度会高于基于多页程序化模式来程序化存储单元的程序化速度(即,使用多页程序化模式来程序化数据的所需操作时间大于使用单页程序化模式来程序化数据的所需操作时间),而基于单页程序化模式而被存储的数据的可靠度也往往高于基于多页程序化模式而被存储的数据的可靠度。单页程序化模式例如是单阶存储单元(single layermemory cell,SLC)程序化模式、下物理程序化(lower physical programming)模式、混合程序化(mixture programming)模式及少阶存储单元(less layer memory cell)程序化模式的其中之一。更详细来说,在单阶存储单元模式中,一个存储单元只存储一个比特的数据。在下物理程序化模式中,只有下物理程序化单元会被程序化,而此下物理程序化单元所对应的上物理程序化单元可不被程序化。在混合程序化模式中,有效数据(或,真实数据)会被程序化于下物理程序化单元中,而同时虚拟数据(dummy data)会被程序化至存储有效数据的下物理程序化单元所对应的上物理程序化单元中。在少阶存储单元模式中,一个存储单元存储一第一数目的比特的数据,例如,此第一数目可设为“1”。多页程序化模式例如是多阶存储单元(MLC)程序化模式、三阶(TLC)存储单元程序化模式或类似模式。在多页程序化模式中,一个存储单元存储有一第二数目的比特的数据,其中此第二数目等于或大于“2”。例如,此第二数目可设为2或3。在另一范例实施例中,上述单页程序化模式中的第一数目与多页程序化模式中的第二数目皆可以是其他数目,只要满足第二数目大于第一数目即可。换句话说,构成第一类物理抹除单元的每一个存储单元在使用单页程序化模式程序化后所存储的比特数据的数目(也即第一数目)会小于构成第二类物理抹除单元的每一个存储单元在使用多页程序化模式程序化后所存储的比特数据的数目(也即第二数目)。
基于上述,使用多页程序化模式程序化的存储单元所存储的数据比特数大于使用单页程序化模式程序化的存储单元所存储的数据比特数,因此,使用多页程序化模式所程序化的物理抹除单元的数据容量会大于使用单页程序化模式。例如,在本范例实施例中,当可复写式非易失性存储器模块406所存储的数据量较少时,存储器控制电路单元404(存储器管理电路502)会使用单页程序化模式来缩短程序化的所需时间(即,提升程序化速度),而当可复写式非易失性存储器模块406所存储的数据量超过预先定义值时,存储器控制电路单元404(存储器管理电路502)会改使用多页程序化模式来写入数据。
图9~图17是根据本发明一范例实施例所示出的写入数据的范例。在此范例中,是以多页程序化模式程序化数据至物理抹除单元,即每个物理程序化单元都会被用来存储数据。
请参照图9,为方便说明,在此假设数据区602初始地未有映射逻辑区块地址的物理抹除单元(即,存储器存储装置10于开卡后尚未写入过使用者数据),闲置区604具有5个物理抹除单元,每一物理抹除单元具有3个物理程序化单元,欲写入至每一物理抹除单元的数据必须依照物理程序化单元的顺序来被写入。此外,假设存储器管理电路502会配置3个逻辑区块地址以供主机***11存取。
请参照图10,假设欲程序化数据UD1并且数据UD1是属于逻辑区块地址LBA(0)的第1个逻辑地址时,存储器管理电路502会从闲置区604中提取物理抹除单元410(0),下达程序化指令以将此数据UD1写入至物理抹除单元410(0)的第0个物理程序化单元。此外,存储器管理电路502会在逻辑-物理映射表中将逻辑区块地址LBA(0)的第1个逻辑地址映射至物理抹除单元410(0)的第0物理程序化单元(即,物理抹除单元410(0)会被关联至数据区602)。
请参照图11,接续图10,假设欲再程序化数据UD2并且数据UD2是属于逻辑区块地址LBA(1)的第0个逻辑地址时,存储器管理电路502会下达程序化指令以将此数据UD2写入至物理抹除单元410(0)的第1个物理程序化单元。此外,存储器管理电路502会在逻辑-物理映射表中将逻辑区块地址LBA(1)的第0个逻辑地址映射至物理抹除单元410(0)的第1物理程序化单元。
请参照图12,接续图11,假设欲再程序化数据UD3并且数据UD3是属于逻辑区块地址LBA(2)的第1个逻辑地址时,存储器管理电路502会下达程序化指令以将此数据UD3写入至物理抹除单元410(0)的第2个物理程序化单元。此外,存储器管理电路502会在逻辑-物理映射表中将逻辑区块地址LBA(2)的第1个逻辑地址映射至物理抹除单元410(0)的第2物理程序化单元。
请参照图13,接续图12,假设欲再程序化数据UD4并且数据UD4是属于逻辑区块地址LBA(0)的第0个逻辑地址时,由于物理抹除单元410(0)已无存储空间,因此,存储器管理电路502会从闲置区604中提取物理抹除单元410(1),下达程序化指令以将此数据UD4写入至物理抹除单元410(1)的第0个物理程序化单元并且将物理抹除单元410(1)关联至数据区602。此外,存储器管理电路502会在逻辑-物理映射表中将逻辑区块地址LBA(0)的第0个逻辑地址映射至物理抹除单元410(1)的第0物理程序化单元(即,物理抹除单元410(1)会被关联至数据区602)。
请参照图14,接续图13,假设欲再程序化数据UD5并且数据UD5是属于逻辑区块地址LBA(1)的第1个逻辑地址时,存储器管理电路502会下达程序化指令以将此数据UD5写入至物理抹除单元410(1)的第1个物理程序化单元。此外,存储器管理电路502会在逻辑-物理映射表中将逻辑区块地址LBA(1)的第1个逻辑地址映射至物理抹除单元410(1)的第1物理程序化单元。
请参照图15,接续图14,假设欲再程序化数据UD6并且数据UD6是属于逻辑区块地址LBA(0)的第2个逻辑地址时,存储器管理电路502会下达程序化指令以将此数据UD6写入至物理抹除单元410(1)的第2个物理程序化单元。此外,存储器管理电路502会在逻辑-物理映射表中将逻辑区块地址LBA(0)的第2个逻辑地址映射至物理抹除单元410(1)的第2物理程序化单元。
请参照图16,接续图15,假设欲再程序化数据UD7并且数据UD7是属于逻辑区块地址LBA(2)的第0个逻辑地址时,由于物理抹除单元410(1)已无存储空间,因此,存储器管理电路502会从闲置区604中提取物理抹除单元410(2),下达程序化指令以将此数据UD7写入至物理抹除单元410(2)的第0个物理程序化单元并且将物理抹除单元410(2)关联至数据区602。此外,存储器管理电路502会在逻辑-物理映射表中将逻辑区块地址LBA(2)的第0个逻辑地址映射至物理抹除单元410(2)的第0物理程序化单元(即,物理抹除单元410(2)会被关联至数据区602)。
请参照图17,接续图16,假设欲再程序化数据UD8并且数据UD8是属于逻辑区块地址LBA(1)的第2个逻辑地址时,存储器管理电路502会下达程序化指令以将此数据UD8写入至物理抹除单元410(2)(也称为,第一物理抹除单元)的第1个物理程序化单元(也称为,第一物理程序化单元)。此外,存储器管理电路502会在逻辑-物理映射表中将逻辑区块地址LBA(1)的第2个逻辑地址映射至物理抹除单元410(2)的第1物理程序化单元。
值得一提的是,在本范例实施中,存储器管理电路502会判断是否从主机***11接收整理指令(trim command)。在此,整理指令是泛指用以告知哪些逻辑地址上的数据已不再被使用或已被删除的指令。例如,整理指令也可被参考为删除指令(delete command)、移除指令(remove command)或其他具相同功能的指令。特别是,当判断接收到此整理指令时,存储器管理电路502会在整理表(trim table)中记录关于此整理指令的信息(例如,数据已被删除的逻辑地址),并且传送一确认信息给主机***11以回应此整理指令,由此快速回应主机***11以避免延迟或逾时。
图18是根据一范例实施例所示出的整理表的示意图。
请参照图18,假设在如图17的状态下,存储器存储装置10接收到整理指令且此整理指令告知逻辑区块地址LBA(0)的第0个逻辑地址(也称为,第一逻辑地址)上的数据已被删除时,存储器管理电路502会在整理表2400中记录逻辑区块地址LBA(0)的第0个逻辑地址(例如,LBA(0)-0)。特别是,在整理表2400中记录此整理指令的信息后,存储器管理电路502会传送确认信息给主机***11,以表示此整理指令已被处理。
之后,存储器管理电路502会在适当时机,启动整理操作来执行整理表中所记录的整理指令的对应操作。例如,存储器管理电路502启动整理操作来根据整理指令所指示逻辑地址,在逻辑-物理映射表中将所指示的逻辑地址的映射更改为空值(Null),以表示此逻辑地址原先映射的物理程序化单元上已无有效数据。
然而需注意的是,在本范例实施例中,整理表2400是存储于缓冲存储器508中,倘若存储器存储装置10在根据整理表2400启动整理操作之前发生异常断电,则存储在整理表2400中的信息也会遗失。因此,当存储器存储装置10重新上电后,存储器管理电路502并无法根据整理表2400来执行整理操作,进而造成原本应被删除的逻辑区块地址LBA(0)的第0个逻辑地址上的数据(即,数据UD4)仍然被保留在物理抹除单元410(1)的第1个物理程序化单元中,而存储器管理电路502并无法根据整理表2400来更改逻辑-物理映射表中的映射信息。
因此,图19是根据一范例实施例所示出的将对应整理指令的整理指令纪录写入至一物理程序化单元的示意图。
请参照图19,在本范例实施例中,当存储器管理电路502从主机***接收到整理指令且此整理指令告知逻辑区块地址LBA(0)的第0个逻辑地址上的数据已被删除时,存储器管理电路502会将对应此整理指令的一整理指令纪录TL写入至目前正在用于写入的物理抹除单元410(2)的第2个物理程序化单元(也称为,第二物理程序化单元)中。其中,整理指令纪录TL包括用以存储关于逻辑区块地址LBA(0)的第0个逻辑地址上的数据已被删除的信息。此外,在一实施例中,整理指令纪录TL还可以包括在接收到整理指令当下逻辑地址与物理地址之间的映射关系。
之后,假设在根据整理表2400执行整理操作前存储器存储装置10发生异常断电,当存储器存储装置10重新上电后,由于整理指令纪录TL是存储在非易失性存储器中,故整理指令纪录TL并不会因为存储器存储装置10发生异常断电而遗失。因此当存储器存储装置10在断电后重新上电时,存储器管理电路502会根据存储在物理抹除单元410(2)的第2个物理程序化单元中的整理指令纪录TL回复逻辑-物理映射表中的映射信息。
更详细来说,图20是根据一范例实施例所示出执行整理操作前后的逻辑-物理映射表的示意图。
请参照图20,逻辑-物理映射表2500-1是根据图19的状态所示出的逻辑地址与物理地址之间的映射关系,左栏记录的是逻辑地址的编号,右栏是记录映射的物理程序化单元的编号。
逻辑-物理映射表2500-2是根据整理指令纪录TL启动整理操作来处理整理指令后的逻辑地址与物理地址之间的映射关系。具体来说,存储器管理电路502会根据整理指令纪录TL中所记录的逻辑地址(即,逻辑区块地址LBA(0)的第0个逻辑地址),将逻辑-物理映射表2500-1中逻辑区块地址LBA(0)的第0个逻辑地址的映射更改为空值(NULL)。
因此,图21是根据一范例实施例所示出在执行整理操作后的逻辑地址与物理地址之间的映射状态的示意图。
请参照图21,当存储器管理电路502根据整理指令纪录TL中所记录的逻辑地址(即,逻辑区块地址LBA(0)的第0个逻辑地址),将逻辑-物理映射表2500-1中逻辑区块地址LBA(0)的第0个逻辑地址的映射更改为空值后,逻辑区块地址LBA(0)的第0个逻辑地址不会映射至物理抹除单元410(1)的第0个物理程序化单元。因此,物理抹除单元410(1)的第0个物理程序化单元所存储的数据UD4会被识别为无效数据。之后,当存储器管理电路502例如要执行垃圾搜集(garbage collection)操作时,并不会搬移物理抹除单元410(1)的第0个物理程序化单元所存储的数据UD4。
此外,在一实施例中,存储器管理电路502还会标记物理抹除单元410(2)的第2个物理程序化单元以表示此物理程序化单元是用以存储整理指令纪录TL。例如,存储器管理电路502会在***区606中存储关于物理抹除单元410(2)的第2个物理程序化单元用以存储整理指令纪录TL的信息。当存储器存储装置10重新上电后,存储器管理电路502可以根据被标记的物理程序化单元来快速地找到用于存储整理指令纪录TL的物理程序化单元。
图22是根据一范例实施例示出的整理指令记录方法的流程图。
请参照图22,在步骤S2201中,存储器管理电路502从主机***11接收写入指令。在步骤S2203中,存储器管理电路502将对应前述写入指令的数据写入至多个物理抹除单元中的第一物理抹除单元的第一物理程序化单元。在步骤S2205中,当存储器管理电路502从主机***11接收整理指令时,存储器管理电路502将对应前述整理指令的整理指令纪录写入至第一物理抹除单元的第二物理程序化单元中。之后在步骤S2207中,存储器管理电路502标记第二物理程序化单元以表示此第二物理程序化单元用以存储整理指令纪录。之后在步骤S2209中,存储器管理电路502会判断存储器存储装置10是否在断电后重新上电。当存储器存储装置10没有发生断电时,可以返回执行步骤S2201。当存储器存储装置10在断电后重新上电时,在步骤S2211中,存储器管理电路502根据存储在第二物理程序化单元中的整理指令纪录回复逻辑-物理映射表中的映射信息。
综上所述,本发明的整理指令记录方法、存储器控制电路单元与存储器存储装置可以在存储器管理电路502接收到整理指令时,存储对应于整理指令的整理指令纪录于目前正在用于写入的物理抹除单元中。当存储器存储装置10发生异常断电且重新上电后,存储器管理电路502可以根据所存储的整理指令纪录来回复逻辑-物理映射表中的映射信息,进而避免在异常断电后整理表中的信息遗失所造成的无法顺利执行整理操作的问题。
虽然本发明已以实施例揭示如上,然其并非用以限定本发明,任何所属技术领域中技术人员,在不脱离本发明的精神和范围内,当可作些许的更改与润饰,故本发明的保护范围当视权利要求所界定者为准。
Claims (15)
1.一种整理指令记录方法,其特征在于,用于存储器存储装置,所述存储器存储装置具有可复写式非易失性存储器模块,所述可复写式非易失性存储器模块包括多个物理抹除单元,所述多个物理抹除单元中的每一个物理抹除单元包括多个物理程序化单元,所述整理指令记录方法包括:
从主机***接收写入指令;
将对应所述写入指令的数据写入至所述多个物理抹除单元中的第一物理抹除单元的第一物理程序化单元;以及
响应于从所述主机***接收的整理指令,将对应所述整理指令的整理指令纪录写入至所述第一物理抹除单元的第二物理程序化单元中,其中所述整理指令纪录用于记录第一逻辑地址以及所述第一逻辑地址与映射至所述第一逻辑地址的物理地址之间的映射关系,所述整理指令指示所述第一逻辑地址上的数据已被删除。
2.根据权利要求1所述的整理指令记录方法,其中所述整理指令纪录用以记录关于所述第一逻辑地址上的数据被删除的信息。
3.根据权利要求2所述的整理指令记录方法,还包括:
当所述存储器存储装置在断电后重新上电时,根据存储在所述第二物理程序化单元中的所述整理指令纪录回复逻辑-物理映射表中的多个映射信息。
4.根据权利要求3所述的整理指令记录方法,其中根据存储在所述第二物理程序化单元中的所述整理指令纪录回复所述逻辑-物理映射表中的所述多个映射信息的步骤包括:
将在所述逻辑-物理映射表中对应所述整理指令所指示的所述第一逻辑地址的映射更改为空值。
5.根据权利要求1所述的整理指令记录方法,还包括:
标记所述第二物理程序化单元以表示所述第二物理程序化单元用以存储所述整理指令纪录。
6.一种存储器控制电路单元,其特征在于,包括:
主机接口,用以电性连接至主机***;
存储器接口,用以电性连接至可复写式非易失性存储器模块,其中所述可复写式非易失性存储器模块包括多个物理抹除单元,所述多个物理抹除单元中的每一个物理抹除单元包括多个物理程序化单元;以及
存储器管理电路,电性连接至所述主机接口与所述存储器接口,
其中所述存储器管理电路用以从所述主机***接收写入指令,
其中所述存储器管理电路还用以将对应所述写入指令的数据写入至所述多个物理抹除单元中的第一物理抹除单元的第一物理程序化单元,
其中当所述存储器管理电路响应于从所述主机***接收的整理指令,所述存储器管理电路还用以将对应所述整理指令的整理指令纪录写入至所述第一物理抹除单元的第二物理程序化单元中,其中所述整理指令纪录用于记录第一逻辑地址以及所述第一逻辑地址与映射至所述第一逻辑地址的物理地址之间的映射关系,所述整理指令指示所述第一逻辑地址上的数据已被删除。
7.根据权利要求6所述的存储器控制电路单元,其中所述整理指令纪录用以记录关于所述第一逻辑地址上的数据被删除的信息。
8.根据权利要求7所述的存储器控制电路单元,其中
当所述存储器控制电路单元在断电后重新上电时,所述存储器管理电路还用以根据存储在所述第二物理程序化单元中的所述整理指令纪录回复逻辑-物理映射表中的多个映射信息。
9.根据权利要求8所述的存储器控制电路单元,其中在根据存储在所述第二物理程序化单元中的所述整理指令纪录回复所述逻辑-物理映射表中的所述多个映射信息的运作中,
所述存储器管理电路还用以将在所述逻辑-物理映射表中对应所述整理指令所指示的所述第一逻辑地址的映射更改为空值。
10.根据权利要求6所述的存储器控制电路单元,其中
所述存储器管理电路还用以标记所述第二物理程序化单元以表示所述第二物理程序化单元用以存储所述整理指令纪录。
11.一种存储器存储装置,其特征在于,包括:
连接接口单元,用以电性连接至主机***;
可复写式非易失性存储器模块,具有多个物理抹除单元,所述多个物理抹除单元中的每一个物理抹除单元包括多个物理程序化单元;以及
存储器控制电路单元,电性连接至所述连接接口单元与所述可复写式非易失性存储器模块,
其中所述存储器控制电路单元用以从所述主机***接收写入指令,
其中所述存储器控制电路单元还用以将对应所述写入指令的数据写入至所述多个物理抹除单元中的第一物理抹除单元的第一物理程序化单元,
其中当所述存储器控制电路单元响应于从所述主机***接收的整理指令,所述存储器控制电路单元还用以将对应所述整理指令的整理指令纪录写入至所述第一物理抹除单元的第二物理程序化单元中,其中所述整理指令纪录用于记录第一逻辑地址以及所述第一逻辑地址与映射至所述第一逻辑地址的物理地址之间的映射关系,所述整理指令指示所述第一逻辑地址上的数据已被删除。
12.根据权利要求11所述的存储器存储装置,其中所述整理指令纪录用以记录关于所述第一逻辑地址上的数据被删除的信息。
13.根据权利要求12所述的存储器存储装置,其中
当所述存储器存储装置在断电后重新上电时,所述存储器控制电路单元还用以根据存储在所述第二物理程序化单元中的所述整理指令纪录回复逻辑-物理映射表中的多个映射信息。
14.根据权利要求13所述的存储器存储装置,其中在根据存储在所述第二物理程序化单元中的所述整理指令纪录回复所述逻辑-物理映射表中的所述多个映射信息的运作中,
所述存储器控制电路单元还用以将在所述逻辑-物理映射表中对应所述整理指令所指示的所述第一逻辑地址的映射更改为空值。
15.根据权利要求11所述的存储器存储装置,其中
所述存储器控制电路单元还用以标记所述第二物理程序化单元以表示所述第二物理程序化单元用以存储所述整理指令纪录。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810413001.7A CN110442300B (zh) | 2018-05-03 | 2018-05-03 | 整理指令记录方法、存储器控制电路单元与存储装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810413001.7A CN110442300B (zh) | 2018-05-03 | 2018-05-03 | 整理指令记录方法、存储器控制电路单元与存储装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110442300A CN110442300A (zh) | 2019-11-12 |
CN110442300B true CN110442300B (zh) | 2022-12-13 |
Family
ID=68427736
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810413001.7A Active CN110442300B (zh) | 2018-05-03 | 2018-05-03 | 整理指令记录方法、存储器控制电路单元与存储装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110442300B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112860193B (zh) * | 2021-03-15 | 2023-05-16 | 群联电子股份有限公司 | 整理指令处理方法、存储器控制电路单元与存储装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1713391A (zh) * | 2004-06-24 | 2005-12-28 | 旺宏电子股份有限公司 | 集成电路装置 |
CN104699413A (zh) * | 2013-12-09 | 2015-06-10 | 群联电子股份有限公司 | 数据管理方法、存储器存储装置及存储器控制电路单元 |
CN104793894A (zh) * | 2014-01-22 | 2015-07-22 | 群晖科技股份有限公司 | 用来管理一固态硬盘的方法、装置、计算器程序产品 |
CN107103930A (zh) * | 2016-02-19 | 2017-08-29 | 群联电子股份有限公司 | 数据写入方法、内存控制电路单元与内存储存装置 |
TW201740265A (zh) * | 2016-05-04 | 2017-11-16 | 群聯電子股份有限公司 | 整理指令處理方法、記憶體控制電路單元與記憶體儲存裝置 |
CN107357520A (zh) * | 2016-05-10 | 2017-11-17 | 群联电子股份有限公司 | 整理指令处理方法、存储器控制电路单元及其存储装置 |
CN107402716A (zh) * | 2016-05-20 | 2017-11-28 | 合肥兆芯电子有限公司 | 数据写入方法、内存控制电路单元与内存储存装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8850114B2 (en) * | 2010-09-07 | 2014-09-30 | Daniel L Rosenband | Storage array controller for flash-based storage devices |
US8949512B2 (en) * | 2012-02-17 | 2015-02-03 | Apple Inc. | Trim token journaling |
US8966160B2 (en) * | 2012-09-28 | 2015-02-24 | Intel Corporation | Storage device trimming |
TWI506430B (zh) * | 2013-03-20 | 2015-11-01 | Phison Electronics Corp | 映射資訊記錄方法、記憶體控制器與記憶體儲存裝置 |
US9558125B2 (en) * | 2014-10-27 | 2017-01-31 | Sandisk Technologies Llc | Processing of un-map commands to enhance performance and endurance of a storage device |
-
2018
- 2018-05-03 CN CN201810413001.7A patent/CN110442300B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1713391A (zh) * | 2004-06-24 | 2005-12-28 | 旺宏电子股份有限公司 | 集成电路装置 |
CN104699413A (zh) * | 2013-12-09 | 2015-06-10 | 群联电子股份有限公司 | 数据管理方法、存储器存储装置及存储器控制电路单元 |
CN104793894A (zh) * | 2014-01-22 | 2015-07-22 | 群晖科技股份有限公司 | 用来管理一固态硬盘的方法、装置、计算器程序产品 |
CN107103930A (zh) * | 2016-02-19 | 2017-08-29 | 群联电子股份有限公司 | 数据写入方法、内存控制电路单元与内存储存装置 |
TW201740265A (zh) * | 2016-05-04 | 2017-11-16 | 群聯電子股份有限公司 | 整理指令處理方法、記憶體控制電路單元與記憶體儲存裝置 |
CN107357520A (zh) * | 2016-05-10 | 2017-11-17 | 群联电子股份有限公司 | 整理指令处理方法、存储器控制电路单元及其存储装置 |
CN107402716A (zh) * | 2016-05-20 | 2017-11-28 | 合肥兆芯电子有限公司 | 数据写入方法、内存控制电路单元与内存储存装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110442300A (zh) | 2019-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107844431B (zh) | 映射表更新方法、存储器控制电路单元与存储器存储装置 | |
US20180260317A1 (en) | Method for managing the copying and storing of data in garbage collection, memory storage device and memory control circuit unit using the same | |
US9268687B2 (en) | Data writing method, memory control circuit unit and memory storage apparatus | |
US9582416B2 (en) | Data erasing method, memory control circuit unit and memory storage apparatus | |
US9280460B2 (en) | Data writing method, memory control circuit unit and memory storage apparatus | |
CN107402716B (zh) | 数据写入方法、存储器控制电路单元与存储器储存装置 | |
US9940189B2 (en) | Method and system for data rebuilding and memory control circuit unit thereof | |
US9880742B2 (en) | Valid data merging method, memory controller and memory storage apparatus | |
CN106681932B (zh) | 存储器管理方法、存储器控制电路单元及存储器存储装置 | |
TWI660271B (zh) | 整理指令記錄方法、記憶體控制電路單元與記憶體儲存裝置 | |
CN107590080B (zh) | 映射表更新方法、存储器控制电路单元及存储器存储装置 | |
CN107544922B (zh) | 数据写入方法、存储器控制电路单元及存储器存储装置 | |
CN107357520B (zh) | 整理指令处理方法、存储器控制电路单元及其存储装置 | |
CN107346211B (zh) | 映射表加载方法、存储器控制电路单元与存储器储存装置 | |
CN106959818B (zh) | 数据写入方法、存储器控制电路单元与存储器储存装置 | |
CN112860193B (zh) | 整理指令处理方法、存储器控制电路单元与存储装置 | |
CN109273033B (zh) | 存储器管理方法、存储器控制电路单元与存储器存储装置 | |
CN107103930B (zh) | 数据写入方法、存储器控制电路单元与存储器存储装置 | |
CN107204205B (zh) | 存储器管理方法、存储器控制电路单元与存储器存储装置 | |
US10824340B2 (en) | Method for managing association relationship of physical units between storage area and temporary area, memory control circuit unit, and memory storage apparatus | |
CN111208932B (zh) | 映射表更新方法、存储器控制电路单元与存储器存储装置 | |
CN110442299B (zh) | 数据写入方法、存储器控制电路单元以及存储器储存装置 | |
CN110442300B (zh) | 整理指令记录方法、存储器控制电路单元与存储装置 | |
CN113138720B (zh) | 数据存储方法、存储器控制电路单元以及存储器存储装置 | |
US11609822B2 (en) | Data storing method, memory control circuit unit and memory storage device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |