CN114842896A - 基于写入行为预测的写入控制方法、存储装置及控制电路 - Google Patents

基于写入行为预测的写入控制方法、存储装置及控制电路 Download PDF

Info

Publication number
CN114842896A
CN114842896A CN202210482949.4A CN202210482949A CN114842896A CN 114842896 A CN114842896 A CN 114842896A CN 202210482949 A CN202210482949 A CN 202210482949A CN 114842896 A CN114842896 A CN 114842896A
Authority
CN
China
Prior art keywords
write
data
time range
speed
host system
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.)
Pending
Application number
CN202210482949.4A
Other languages
English (en)
Inventor
王智麟
易凡
曹快
陈阳
陶勤勤
饶东升
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hefei Core Storage Electronic Ltd
Original Assignee
Hefei Core Storage Electronic Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hefei Core Storage Electronic Ltd filed Critical Hefei Core Storage Electronic Ltd
Priority to CN202210482949.4A priority Critical patent/CN114842896A/zh
Priority to TW111117481A priority patent/TWI804308B/zh
Priority to US17/745,891 priority patent/US20230359357A1/en
Publication of CN114842896A publication Critical patent/CN114842896A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/109Control signal input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1096Write circuits, e.g. I/O line write drivers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供一种基于写入行为预测的写入控制方法、存储器存储装置及存储器控制电路单元。所述方法包括:监测主机系统在第一时间范围内的第一数据写入行为;根据第一数据写入行为,预测主机系统在第二时间范围内的第二数据写入行为;获得对应于第一数据写入行为的第一测量参数与第一目标参数;根据第一测量参数、第一目标参数及第二数据写入行为,决定写入控制参数;以及根据所述写入控制参数发送写入指令序列,以指示可复写式非易失性存储器模块在第二时间范围内基于多个写入模式执行数据写入。藉此,可提高存储器存储装置的数据写入速度的稳定性。

Description

基于写入行为预测的写入控制方法、存储装置及控制电路
技术领域
本发明涉及一种存储器控制技术,尤其涉及一种基于写入行为预测的写入控制方法、存储器存储装置及存储器控制电路单元。
背景技术
部分类型的存储器存储装置支援多种写入模式,例如单阶存储单元(SingleLevel Cell,SLC)模式搭配三阶存储单元(Triple Level Cell,TLC)模式。在一般情况下,存储器存储装置可基于SLC模式将数据存储至SLC区,以减少单个存储单元的存储容量并尽可能提高数据存储速度。在SLC区被用尽后,存储器存储装置可改为基于TLC模式以较慢的速度来存储数据,但可提高单个存储单元的存储容量。藉此,存储器存储装置可在不同的情境下采用不同的写入模式来存储数据,以在数据存储速度与存储器容量之间取得平衡。然而,实务上,TLC模式往往会伴随垃圾回收(garbage collection,GC)程序同步执行,从而导致存储器存储装置在TLC模式中的数据存储速度更为下降。此外,写入模式之间的频繁切换也容易导致存储器存储装置的数据存储速度难以维持稳定。
发明内容
有鉴于此,本发明提供一种基于写入行为预测的写入控制方法、存储器存储装置及存储器控制电路单元,可提高存储器存储装置的数据写入速度的稳定性。
本发明的范例实施例提供一种基于写入行为预测的写入控制方法,其用于可复写式非易失性存储器模块,所述写入控制方法包括:监测主机系统在第一时间范围内的第一数据写入行为;根据所述第一数据写入行为,预测所述主机系统在第二时间范围内的第二数据写入行为,其中所述第二时间范围不同于所述第一时间范围;获得对应于所述第一数据写入行为的第一测量参数与第一目标参数;根据所述第一测量参数、所述第一目标参数及所述第二数据写入行为,决定写入控制参数;以及根据所述写入控制参数发送写入指令序列,以指示所述可复写式非易失性存储器模块在所述第二时间范围内基于多个写入模式执行数据写入,其中所述多个写入模式所各别对应的写入数据量受所述写入控制参数控制。
本发明的范例实施例另提供一种存储器存储装置,其包括连接接口单元、可复写式非易失性存储器模块及存储器控制电路单元。所述连接接口单元用以连接至主机系统。所述存储器控制电路单元连接至所述连接接口单元与所述可复写式非易失性存储器模块。所述存储器控制电路单元用以:监测所述主机系统在第一时间范围内的第一数据写入行为;根据所述第一数据写入行为,预测所述主机系统在第二时间范围内的第二数据写入行为,其中所述第二时间范围不同于所述第一时间范围;获得对应于所述第一数据写入行为的第一测量参数与第一目标参数;根据所述第一测量参数、所述第一目标参数及所述第二数据写入行为,决定写入控制参数;以及根据所述写入控制参数发送写入指令序列,以指示所述可复写式非易失性存储器模块在所述第二时间范围内基于多个写入模式执行数据写入,其中所述多个写入模式所各别对应的写入数据量受所述写入控制参数控制。
本发明的范例实施例另提供一种存储器控制电路单元,其用以控制可复写式非易失性存储器模块,所述存储器控制电路单元包括主机接口、存储器接口及存储器管理电路。所述主机接口用以连接至主机系统。所述存储器接口用以连接至可复写式非易失性存储器模块。所述存储器管理电路连接至所述主机接口与所述存储器接口。所述存储器管理电路用以:监测所述主机系统在第一时间范围内的第一数据写入行为;根据所述第一数据写入行为,预测所述主机系统在第二时间范围内的第二数据写入行为,其中所述第二时间范围不同于所述第一时间范围;获得对应于所述第一数据写入行为的第一测量参数与第一目标参数;根据所述第一测量参数、所述第一目标参数及所述第二数据写入行为,决定写入控制参数;以及根据所述写入控制参数发送写入指令序列,以指示所述可复写式非易失性存储器模块在所述第二时间范围内基于多个写入模式执行数据写入,其中所述多个写入模式所各别对应的写入数据量受所述写入控制参数控制。
基于上述,在监测主机系统在第一时间范围内的第一数据写入行为后,所述主机系统在第二时间范围内的第二数据写入行为可根据第一数据写入行为而被预测。此外,在获得对应于第一数据写入行为的第一测量参数与第一目标参数后,根据第一测量参数、第一目标参数及第二数据写入行为,写入控制参数可被决定且写入指令序列可根据所述写入控制参数而被发送,以指示可复写式非易失性存储器模块在第二时间范围内基于多个写入模式执行数据写入。特别是,所述多个写入模式所各别对应的写入数据量受所述写入控制参数控制。藉此,可提高存储器存储装置的数据写入速度的稳定性。
附图说明
图1是根据本发明的范例实施例所示出的主机系统、存储器存储装置及输入/输出(I/O)装置的示意图;
图2是根据本发明的范例实施例所示出的主机系统、存储器存储装置及I/O装置的示意图;
图3是根据本发明的范例实施例所示出的主机系统与存储器存储装置的示意图;
图4是根据本发明的范例实施例所示出的存储器存储装置的示意图;
图5是根据本发明的范例实施例所示出的存储器控制电路单元的示意图;
图6是根据本发明的范例实施例所示出的管理可复写式非易失性存储器模块的示意图;
图7是根据本发明的范例实施例所示出的第一时间范围与第二时间范围及相应的第一数据写入行为与第二数据写入行为的示意图;
图8是根据本发明的范例实施例所示出的基于写入行为预测的写入控制方法的流程图。
具体实施方式
现将详细地参考本发明的示范性实施例,示范性实施例的实例说明于附图中。只要有可能,相同元件符号在附图和描述中用来表示相同或相似部分。
一般而言,存储器存储装置(亦称,存储器存储系统)包括可复写式非易失性存储器模块(rewritable non-volatile memory module)与控制器(亦称,控制电路)。存储器存储装置可与主机系统一起使用,以使主机系统可将数据写入至存储器存储装置或从存储器存储装置中读取数据。
图1是根据本发明的范例实施例所示出的主机系统、存储器存储装置及输入/输出(I/O)装置的示意图。图2是根据本发明的范例实施例所示出的主机系统、存储器存储装置及I/O装置的示意图。
请参照图1与图2,主机系统11可包括处理器111、随机存取存储器(random accessmemory,RAM)112、只读存储器(read only memory,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可例如是U盘201、存储卡202、固态硬盘(Solid State Drive,SSD)203或无线存储器存储装置204。无线存储器存储装置204可例如是近场通信(Near Field Communication,NFC)存储器存储装置、无线传真(WiFi)存储器存储装置、蓝牙(Bluetooth)存储器存储装置或低功耗蓝牙存储器存储装置(例如,iBeacon)等以各式无线通信技术为基础的存储器存储装置。此外,主机板20也可以通过系统总线110连接至全球定位系统(Global Positioning System,GPS)模块205、网络接口卡206、无线传输装置207、键盘208、屏幕209、喇叭210等各式I/O装置。例如,在一范例实施例中,主机板20可通过无线传输装置207存取无线存储器存储装置204。
在一范例实施例中,主机系统11为计算机系统。在一范例实施例中,主机系统11可为可实质地与存储器存储装置配合以存储数据的任意系统。在一范例实施例中,存储器存储装置10与主机系统11可分别包括图3的存储器存储装置30与主机系统31。
图3是根据本发明的范例实施例所示出的主机系统与存储器存储装置的示意图。请参照图3,存储器存储装置30可与主机系统31搭配使用以存储数据。例如,主机系统31可以是数码相机、摄像机、通信装置、音频播放器、视频播放器或平板计算机等系统。例如,存储器存储装置30可为主机系统31所使用的安全数字(Secure Digital,SD)卡32、小型快闪(Compact Flash,CF)卡33或嵌入式存储装置34等各式非易失性存储器存储装置。嵌入式存储装置34包括嵌入式多媒体卡(embedded Multi Media Card,eMMC)341和/或嵌入式多芯片封装(embedded Multi Chip Package,eMCP)存储装置342等各类型将存储器模块直接连接于主机系统的基板上的嵌入式存储装置。
图4是根据本发明的范例实施例所示出的存储器存储装置的示意图。请参照图4,存储器存储装置10包括连接接口单元41、存储器控制电路单元42与可复写式非易失性存储器模块43。
连接接口单元41用以将存储器存储装置10连接主机系统11。存储器存储装置10可经由连接接口单元41与主机系统11通信。在一范例实施例中,连接接口单元41是相容于外设部件互连局部总线(Peripheral Component Interconnect Express,PCI Express)标准。在一范例实施例中,连接接口单元41亦可以是符合串行高级技术附件(SerialAdvanced Technology Attachment,SATA)标准、并行高级技术附件(Parallel AdvancedTechnology Attachment,PATA)标准、电气和电子工程师协会(Institute of Electricaland Electronic Engineers,IEEE)1394标准、通用串行总线(Universal Serial Bus,USB)标准、SD接口标准、超高速一代(Ultra High Speed-I,UHS-I)接口标准、超高速二代(UltraHigh Speed-II,UHS-II)接口标准、存储棒(Memory Stick,MS)接口标准、MCP接口标准、MMC接口标准、eMMC接口标准、通用快闪存储器(Universal Flash Storage,UFS)接口标准、eMCP接口标准、CF接口标准、整合式驱动电子接口(Integrated Device Electronics,IDE)标准或其他适合的标准。连接接口单元41可与存储器控制电路单元42封装在一个芯片中,或者连接接口单元41是布设于一包含存储器控制电路单元42的芯片外。
存储器控制电路单元42连接至连接接口单元41与可复写式非易失性存储器模块43。存储器控制电路单元42用以执行以硬件型式或固件型式实作的多个逻辑门或控制指令并且根据主机系统11的指令在可复写式非易失性存储器模块43中进行数据的写入、读取与抹除等运作。
可复写式非易失性存储器模块43用以存储主机系统11所写入的数据。可复写式非易失性存储器模块43可包括SLC NAND型快闪存储器模块(即,一个存储单元中可存储1个比特的快闪存储器模块)、二阶存储单元(Multi Level Cell,MLC)NAND型快闪存储器模块(即,一个存储单元中可存储2个比特的快闪存储器模块)、TLC NAND型快闪存储器模块(即,一个存储单元中可存储3个比特的快闪存储器模块)、四阶存储单元(Quad Level Cell,QLC)NAND型快闪存储器模块(即,一个存储单元中可存储4个比特的快闪存储器模块)、其他快闪存储器模块或其他具有相同特性的存储器模块。
可复写式非易失性存储器模块43中的每一个存储单元是以电压(以下亦称为临界电压)的改变来存储一或多个比特。具体来说,每一个存储单元的控制门(control gate)与通道之间有一个电荷捕捉层。通过施予一写入电压至控制门,可以改变电荷补捉层的电子量,进而改变存储单元的临界电压。此改变存储单元的临界电压的操作亦称为“把数据写入至存储单元”或“程序化(programming)存储单元”。随着临界电压的改变,可复写式非易失性存储器模块43中的每一个存储单元具有多个存储状态。通过施予读取电压可以判断一个存储单元是属于哪一个存储状态,藉此取得此存储单元所存储的一或多个比特。
在一范例实施例中,可复写式非易失性存储器模块43的存储单元可构成多个实体程序化单元,并且此些实体程序化单元可构成多个实体抹除单元。具体来说,同一条字线上的存储单元可组成一或多个实体程序化单元。若每一个存储单元可存储2个以上的比特,则同一条字线上的实体程序化单元可至少可被分类为下实体程序化单元与上实体程序化单元。例如,一存储单元的最低有效比特(Least Significant Bit,LSB)是属于下实体程序化单元,并且一存储单元的最高有效比特(Most Significant Bit,MSB)是属于上实体程序化单元。一般来说,在MLC NAND型快闪存储器中,下实体程序化单元的写入速度会大于上实体程序化单元的写入速度,和/或下实体程序化单元的可靠度是高于上实体程序化单元的可靠度。
在一范例实施例中,实体程序化单元为程序化的最小单元。即,实体程序化单元为写入数据的最小单元。例如,实体程序化单元可为实体页(page)或是实体扇(sector)。若实体程序化单元为实体页,则此些实体程序化单元可包括数据比特区与冗余(redundancy)比特区。数据比特区包含多个实体扇,用以存储用户数据,而冗余比特区用以存储系统数据(例如,错误更正码等管理数据)。在一范例实施例中,数据比特区包含32个实体扇,且一个实体扇的大小为512字节(byte,B)。然而,在其他范例实施例中,数据比特区中也可包含8个、16个或数目更多或更少的实体扇,并且每一个实体扇的大小也可以是更大或更小。另一方面,实体抹除单元为抹除的最小单位。亦即,每一实体抹除单元含有最小数目的一并被抹除的存储单元。例如,实体抹除单元为实体区块(block)。
图5是根据本发明的范例实施例所示出的存储器控制电路单元的示意图。请参照图5,存储器控制电路单元42包括存储器管理电路51、主机接口52及存储器接口53。
存储器管理电路51用以控制存储器控制电路单元42的整体运作。具体来说,存储器管理电路51具有多个控制指令,并且在存储器存储装置10运作时,此些控制指令会被执行以进行数据的写入、读取与抹除等运作。以下说明存储器管理电路51的操作时,等同于说明存储器控制电路单元42的操作。
在一范例实施例中,存储器管理电路51的控制指令是以固件型式来实作。例如,存储器管理电路51具有微处理器单元(未示出)与只读存储器(未示出),并且此些控制指令是被烧录至此只读存储器中。当存储器存储装置10运作时,此些控制指令会由微处理器单元来执行以进行数据的写入、读取与抹除等运作。
在一范例实施例中,存储器管理电路51的控制指令亦可以程序码型式存储于可复写式非易失性存储器模块43的特定区域(例如,存储器模块中专用于存放系统数据的系统区)中。此外,存储器管理电路51具有微处理器单元(未示出)、只读存储器(未示出)及随机存取存储器(未示出)。特别是,此只读存储器具有开机码(boot code),并且当存储器控制电路单元42被致能时,微处理器单元会先执行此开机码来将存储于可复写式非易失性存储器模块43中的控制指令载入至存储器管理电路51的随机存取存储器中。之后,微处理器单元会运转此些控制指令以进行数据的写入、读取与抹除等运作。
在一范例实施例中,存储器管理电路51的控制指令亦可以一硬件型式来实作。例如,存储器管理电路51包括微控制器、存储单元管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路。存储单元管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路是连接至微控制器。存储单元管理电路用以管理可复写式非易失性存储器模块43的存储单元或存储单元群组。存储器写入电路用以对可复写式非易失性存储器模块43下达写入指令序列以将数据写入至可复写式非易失性存储器模块43中。存储器读取电路用以对可复写式非易失性存储器模块43下达读取指令序列以从可复写式非易失性存储器模块43中读取数据。存储器抹除电路用以对可复写式非易失性存储器模块43下达抹除指令序列以将数据从可复写式非易失性存储器模块43中抹除。数据处理电路用以处理欲写入至可复写式非易失性存储器模块43的数据以及从可复写式非易失性存储器模块43中读取的数据。写入指令序列、读取指令序列及抹除指令序列可各别包括一或多个程序码或指令码并且用以指示可复写式非易失性存储器模块43执行相对应的写入、读取及抹除等操作。在一范例实施例中,存储器管理电路51还可以下达其他类型的指令序列给可复写式非易失性存储器模块43以指示执行相对应的操作。
主机接口52是连接至存储器管理电路51。存储器管理电路51可通过主机接口52与主机系统11通信。主机接口52可用以接收与识别主机系统11所传送的指令与数据。例如,主机系统11所传送的指令与数据可通过主机接口52来传送至存储器管理电路51。此外,存储器管理电路51可通过主机接口52将数据传送至主机系统11。在本范例实施例中,主机接口52是相容于PCI Express标准。然而,必须了解的是本发明不限于此,主机接口52亦可以是相容于SATA标准、PATA标准、IEEE 1394标准、USB标准、SD标准、UHS-I标准、UHS-II标准、MS标准、MMC标准、eMMC标准、UFS标准、CF标准、IDE标准或其他适合的数据传输标准。
存储器接口53是连接至存储器管理电路51并且用以存取可复写式非易失性存储器模块43。例如,存储器管理电路51可通过存储器接口53存取可复写式非易失性存储器模块43。也就是说,欲写入至可复写式非易失性存储器模块43的数据会经由存储器接口53转换为可复写式非易失性存储器模块43所能接受的格式。具体来说,若存储器管理电路51要存取可复写式非易失性存储器模块43,存储器接口53会传送对应的指令序列。例如,这些指令序列可包括指示写入数据的写入指令序列、指示读取数据的读取指令序列、指示抹除数据的抹除指令序列、以及用以指示各种存储器操作(例如,改变读取电压电平或执行垃圾回收操作等等)的相对应的指令序列。这些指令序列例如是由存储器管理电路51产生并且通过存储器接口53传送至可复写式非易失性存储器模块43。这些指令序列可包括一或多个信号,或是在总线上的数据。这些信号或数据可包括指令码或程序码。例如,在读取指令序列中,会包括读取的辨识码、存储器地址等信息。
在一范例实施例中,存储器控制电路单元42还包括错误检查与校正电路54、缓冲存储器55及电源管理电路56。
错误检查与校正电路(亦称为解码电路)54是连接至存储器管理电路51并且用以执行错误检查与校正操作以确保数据的正确性。具体来说,当存储器管理电路51从主机系统11中接收到写入指令时,错误检查与校正电路54会为对应此写入指令的数据产生对应的错误更正码(error correcting code,ECC)和/或错误检查码(error detecting code,EDC),并且存储器管理电路51会将对应此写入指令的数据与对应的错误更正码和/或错误检查码写入至可复写式非易失性存储器模块43中。之后,当存储器管理电路51从可复写式非易失性存储器模块43中读取数据时会同时读取此数据对应的错误更正码和/或错误检查码,并且错误检查与校正电路54会依据此错误更正码和/或错误检查码对所读取的数据执行错误检查与校正操作。
缓冲存储器55是连接至存储器管理电路51并且用以暂存数据。电源管理电路56是连接至存储器管理电路51并且用以控制存储器存储装置10的电源。
在一范例实施例中,图4的可复写式非易失性存储器模块43可包括快闪存储器模块。在一范例实施例中,图4的存储器控制电路单元42可包括快闪存储器控制器。在一范例实施例中,图5的存储器管理电路51可包括快闪存储器管理电路。
图6是根据本发明的范例实施例所示出的管理可复写式非易失性存储器模块的示意图。请参照图6,存储器管理电路51可将可复写式非易失性存储器模块43中的实体单元610(0)~610(B)逻辑地分组至存储区601与闲置(spare)区602。
在一范例实施例中,一个实体单元是指一个实体地址或一个实体程序化单元。在一范例实施例中,一个实体单元亦可以是由多个连续或不连续的实体地址组成。在一范例实施例中,一个实体单元亦可以是指一个虚拟区块(VB)。一个虚拟区块可包括多个实体地址或多个实体程序化单元。
存储区601中的实体单元610(0)~610(A)用以存储用户数据(例如来自图1的主机系统11的用户数据)。例如,存储区601中的实体单元610(0)~610(A)可存储有效(valid)数据与无效(invalid)数据。闲置区602中的实体单元610(A+1)~610(B)未存储数据(例如有效数据)。例如,若某一个实体单元未存储有效数据,则此实体单元可被关联(或加入)至闲置区602。此外,闲置区602中的实体单元(或未存储有效数据的实体单元)可被抹除。在写入新数据时,一或多个实体单元可被从闲置区602中提取以存储此新数据。在一范例实施例中,闲置区602亦称为闲置池(free pool)。
存储器管理电路51可配置逻辑单元612(0)~612(C)以映射存储区601中的实体单元610(0)~610(A)。在一范例实施例中,每一个逻辑单元对应一个逻辑地址。例如,一个逻辑地址可包括一或多个逻辑区块地址(Logical Block Address,LBA)或其他的逻辑管理单元。在一范例实施例中,一个逻辑单元也可对应一个逻辑程序化单元或者由多个连续或不连续的逻辑地址组成。
须注意的是,一个逻辑单元可被映射至一或多个实体单元。若某一实体单元当前有被某一逻辑单元映射,则表示此实体单元当前存储的数据包括有效数据。反之,若某一实体单元当前未被任一逻辑单元映射,则表示此实体单元当前存储的数据为无效数据。
存储器管理电路51可将描述逻辑单元与实体单元之间的映射关系的管理数据(亦称为逻辑至实体映射信息)记录于至少一逻辑至实体映射表。当主机系统11欲从存储器存储装置10读取数据或写入数据至存储器存储装置10时,存储器管理电路51可根据此逻辑至实体映射表中的信息来存取可复写式非易失性存储器模块43。
可复写式非易失性存储器模块43可基于多个写入模式(亦称为程序化模式)来程序化存储单元以存储数据。在以下范例实施例中,是以所述多个写入模式包括第一写入模式与第二写入模式作为范例,但本发明不限于此。在其他范例实施例中,可复写式非易失性存储器模块43还可基于更多写入模式(例如第三写入模式)来存储数据,本发明不加以限制。
在一范例实施例中,可复写式非易失性存储器模块43中基于第一写入模式所程序化的一个存储单元可用以存储p个比特。可复写式非易失性存储器模块43中基于第二写入模式所程序化的一个存储单元可用以存储p个比特。p与q皆为正整数,且p不同于q。
在一范例实施例中,第一写入模式可包括SLC模式或虚拟(pseudo)SLC模式,且第二写入模式可包括TLC模式。因此,p可为1,且q可为3,但本发明不限于此。在一范例实施例中,第一写入模式与第二写入模式可分别包括其他程序化模式,且p和/或q可为其他正整数,只要满足p小于q(或p不同于q)即可。
存储器管理电路51可监测主机系统11在一个时间范围(亦称为第一时间范围)内的数据写入行为(亦称为第一数据写入行为)。例如,第一数据写入行为可用以在第一时间范围内将来自主机系统11的数据(亦称为第一数据)写入至可复写式非易失性存储器模块43中。
根据第一数据写入行为,存储器管理电路51可预测主机系统11在另一时间范围(亦称为第二时间范围)内的数据写入行为(亦称为第二数据写入行为)。例如,第二数据写入行为可用以在第二时间范围内将来自主机系统11的数据(亦称为第二数据)写入至可复写式非易失性存储器模块43中。第二时间范围可不同于第一时间范围。例如,第二时间范围可接续在第一时间范围之后。
另一方面,存储器管理电路51可获得对应于第一数据写入行为的测量参数(亦称为第一测量参数)与目标参数(亦称为第一目标参数)。第一测量参数可通过实时监测第一数据写入行为而获得。例如,第一测量参数可反映所测得的第一数据的实际写入速度。
在一范例实施例中,存储器管理电路51可根据第一数据写入行为的类型(例如为循序(sequential)写入和/或随机(random)写入)及所采用的写入模式(例如为第一写入模式和/或第二写入模式)而获得第一数据写入行为所对应的目标参数(即第一目标参数)。例如,第一目标参数可反映第一数据写入行为所对应的预设写入速度(亦称为目标写入速度)。
在一范例实施例中,一个管理表格可预先存储于可复写式非易失性存储器模块43中(例如存储于可复写式非易失性存储器模块43中的系统区)。所述管理表格可记载不同的数据写入行为所分别对应的目标参数。因此,根据第一数据写入行为,存储器管理电路51可从此管理表格中取得相应的目标参数作为第一目标参数。例如,假设第一数据写入行为的类型为循序写入且第一数据写入行为所采用的写入模式为第一写入模式(例如SLC模式),则存储器管理电路51可根据此信息查询所述管理表格以获得所述第一目标参数。在一范例实施例中,存储器管理电路51还可根据所述第一测量参数来更新(例如调整)管理表格中的信息(例如对应于第一数据写入行为的第一目标参数),以持续优化所述管理表格。
存储器管理电路51可根据第一测量参数、第一目标参数及第二数据写入行为,决定至少一写入控制参数。然后,存储器管理电路51可根据所述写入控制参数发送至少一写入指令序列至可复写式非易失性存储器模块43,以指示可复写式非易失性存储器模块43在第二时间范围内基于多个写入模式执行数据写入。特别是,所述多个写入模式所各别对应的写入数据量可受所述写入控制参数控制。
图7是根据本发明的范例实施例所示出的第一时间范围与第二时间范围及相应的第一数据写入行为与第二数据写入行为的示意图。请参照图7,假设第一时间范围介于时间点T(0)~T(1)之间,且第二时间范围介于时间点T(1)~T(2)之间。第二时间范围在时间轴(即图7的横轴)上排序在第一时间范围之后,且第一时间范围与第二时间范围不彼此重叠。第一时间范围所涵盖的时间长度ΔT(1)可相同或不同于第二时间范围所涵盖的时间长度ΔT(2)。此外,在一范例实施例中,第一时间范围与第二时间范围之间也可具有些许时间间隔,本发明不加以限制。
在一范例实施例中,存储器管理电路51可根据主机系统11在第一时间范围内的第一数据写入行为,预测主机系统11在第二时间范围内的写入数据量(即第二数据的数据量)。例如,存储器管理电路51可根据第一数据写入行为所对应的写入数据量(即第一数据的数据量)及第一时间范围所涵盖的时间长度ΔT(1),获得主机系统11在第一时间范围内的实际写入速度(即第一数据的实际写入速度)。然后,存储器管理电路51可根据此实际写入速度及第二时间范围所涵盖的时间长度ΔT(2)来预测主机系统11在第二时间范围内的写入数据量。例如,存储器管理电路51可根据以下方程式(1.1)与(1.2)来预测主机系统11在第二时间范围内的写入数据量。
V(1)=S(1)/ΔT(1)(1.1)
S(2)=V(1)×ΔT(2)(1.2)
在方程式(1.1)与(1.2)中,V(1)表示主机系统11在第一时间范围内的实际写入速度,S(1)表示第一数据的数据量,且S(2)表示第二数据的数据量。
在预测出主机系统11在第二时间范围内的写入数据量(即第二数据的数据量)后,存储器管理电路51可通过所述写入控制参数控制可复写式非易失性存储器模块43在第二时间范围存储所述第二数据,以尝试使主机系统11在第二时间范围内的数据写入速度保持稳定和/或避免此数据写入速度在第二时间范围内变化过大。
在一范例实施例中,所述写入控制参数可用以控制在第二时间范围中对应于第一写入模式的写入数据量(亦称为第一写入数据量)与对应于第二写入模式的写入数据量(亦称为第二写入数据量)。特别是,所述写入控制参数可用以控制所述第一写入数据量与所述第二写入数据量的总和不小于(即大于或等于)所预测的主机系统11在第二时间范围内的(总)写入数据量。藉此,可确保第二数据可以顺利在第二时间范围内被完整存储至可复写式非易失性存储器模块43中。
在一范例实施例中,存储器管理电路51可根据以下方程式(2.1)来决定所述写入控制参数。
S(2)=V(M1)×ΔT(1)×x%+V(M2)×ΔT(1)×y%(2.1)
在方程式(2.1)中,V(M1)代表可复写式非易失性存储器模块43基于第一写入模式存储数据的预设写入速度,V(M2)代表可复写式非易失性存储器模块43基于第二写入模式存储数据的预设写入速度,且参数x、y表示所述写入控制参数。根据方程式(2.1),参数x可用以控制在第二数据中基于第一写入模式存储的部分数据的数据量,且参数y可用以控制在第二数据中基于第二写入模式存储的部分数据的数据量。
在一范例实施例中,存储器管理电路51可通过动态设定或调整所述写入控制参数(例如方程式(2.1)中的参数x、y),来满足所预测的主机系统11在第二时间范围内的数据(即第二数据)存储需求并使第二数据的写入速度保持稳定。
在一范例实施例中,所述第一测量参数包括主机系统11在第一时间范围内的实际写入速度,且所述第一目标参数包括主机系统11在第一时间范围内的目标写入速度。例如,主机系统11在第一时间范围内的实际写入速度可通过实时监测第一数据写入行为而获得。此外,主机系统11在第一时间范围内的目标写入速度可包括第一数据写入行为所对应的预设写入速度(即目标写入速度)。
在一范例实施例中,存储器管理电路51可根据所述实际写入速度与所述目标写入速度,决定所述写入控制参数。通过动态设定或调整所述写入控制参数,存储器管理电路51可尝试将所预测的主机系统11在第二时间范围内的数据写入速度控制为介于所述实际写入速度与所述目标写入速度之间。
在一范例实施例中,存储器管理电路51可根据以下方程式(3.1)来决定所述写入控制参数。
V(2)=V(M1)×x%+V(M2)×y% (3.1)
在方程式(3.1)中,V(2)表示主机系统11在第二时间范围内的预估写入速度。通过动态设定或调整方程式(3.1)中的参数x、y,存储器管理电路51可尝试将所预测的主机系统11在第二时间范围内的数据写入速度控制为介于所述实际写入速度与所述目标写入速度之间。
在一范例实施例中,存储器管理电路51还可根据所述实际写入速度决定一个容许速度(亦称为波动容许速度)。所述波动容许速度与所述实际写入速度之间的误差小于预设比率。例如,所述预设比率可表示为z%,且z的数值可根据实务需求调整。
在一范例实施例中,存储器管理电路51可根据所述实际写入速度与所述波动容许速度,决定所述写入控制参数。通过动态设定或调整所述写入控制参数,存储器管理电路51可尝试将所预测的主机系统11在第二时间范围内的数据写入速度控制为介于所述实际写入速度与所述波动容许速度之间。藉此,同样可达到使主机系统11在第二时间范围内的数据写入速度保持稳定的效果。
在一范例实施例中,在所述实际写入速度大于所述目标写入速度的情况下,存储器管理电路51可动态设定或调整所述写入控制参数,以将所预测的主机系统11在第二时间范围内的数据写入速度控制为介于所述实际写入速度与一个参考临界值(亦称为第一参考临界值)之间。例如,所述第一参考临界值为所述目标写入速度与所述波动容许速度中较大者。例如,存储器管理电路51可比较所述目标写入速度与所述波动容许速度。若所述目标写入速度大于所述波动容许速度,存储器管理电路51可将所述目标写入速度设定为所述第一参考临界值。或者,若所述目标写入速度小于所述波动容许速度,存储器管理电路51可将所述波动容许速度设定为所述第一参考临界值。
在一范例实施例中,在所述实际写入速度小于所述目标写入速度的情况下,存储器管理电路51可动态设定或调整所述写入控制参数,以将所预测的主机系统11在第二时间范围内的数据写入速度控制为介于所述实际写入速度与另一个参考临界值(亦称为第二参考临界值)之间。例如,所述第二参考临界值为所述目标写入速度与所述波动容许速度中较小者。例如,存储器管理电路51可比较所述目标写入速度与所述波动容许速度。若所述目标写入速度大于所述波动容许速度,存储器管理电路51可将所述波动容许速度设定为所述第二参考临界值。或者,若所述目标写入速度小于所述波动容许速度,存储器管理电路51可将所述目标写入速度设定为所述第二参考临界值。
在一范例实施例中,在根据方程式(2.1)和/或(3.1)来决定所述写入控制参数(例如参数x、y)的过程中,存储器管理电路51会从多个(x,y)的解集合中选择包含最大的参数y的解集合作为最佳解集合。藉此,在第二数据写入操作中,存储器管理电路51可尽可能放大基于第二写入模式(例如TLC模式)来存储的数据的数据量和/或减少基于第一写入模式(例如SLC模式)来存储的数据的数据量,从而降低可复写式非易失性存储器模块43中基于第一写入模式(例如SLC模式)进行程序化的实体单元的消耗速度。
须注意的是,在前述范例实施例中,皆是以第二数据写入行为包含基于多种写入模式进行数据存储作为范例进行说明。然而,在另一范例实施例中,第二时间范围中的第二数据写入行为亦可以只基于第一写入模式与第二写入模式的其中之一来进行数据存储,本发明不加以限制。例如,在一范例实施例中,若将方程式(2.1)和/或(3.1)中的参数y设定为零,即表示在第二时间范围内只通过第一写入模式来存储数据(即不启用第二写入模式)。或者,在一范例实施例中,若将方程式(2.1)和/或(3.1)中的参数x设定为零,即表示在第二时间范围内只通过第二写入模式来存储数据(即不启用第一写入模式)。
在一范例实施例中,存储器管理电路51可实时监控可复写式非易失性存储器模块43中对应于第一写入模式(例如SLC模式)的可用容量。存储器管理电路51可根据所述可用容量决定是否在第二时间范围内启用第二写入模式。例如,存储器管理电路51可判断可复写式非易失性存储器模块43中对应于第一写入模式(例如SLC模式)的可用容量是否小于预设值。若所述可用容量小于预设值,存储器管理电路51可决定在第二时间范围内启用第二写入模式(即将方程式(2.1)和/或(3.1)中的参数y设定为大于零的数值)。或者,若所述可用容量不小于预设值,则存储器管理电路51可决定在第二时间范围内不启用第二写入模式(即将方程式(2.1)和/或(3.1)中的参数y设定为零)。
在一范例实施例中,响应于所述可用容量小于预设值,存储器管理电路51可在第二时间范围内进一步执行垃圾回收(GC)程序。在所述GC程序中,有效数据可从来源单元(即存储有有效数据的实体单元)中复制到目标单元,藉以增加对应于第一写入模式的可用容量。
在一范例实施例中,存储器管理电路51可根据所预测的主机系统11在第二时间范围内的写入数据量(即第二数据的数据量)及可复写式非易失性存储器模块43中对应于第一写入模式(例如SLC模式)的可用容量,来决定是否在第二时间范围内启用第二写入模式。例如,若所预测的主机系统11在第二时间范围内的写入数据量大于所述可用容量,存储器管理电路51可决定在第二时间范围内启用第二写入模式(即将方程式(2.1)和/或(3.1)中的参数y设定为大于零的数值)。或者,若所预测的主机系统11在第二时间范围内的写入数据量不大于所述可用容量,则存储器管理电路51可决定在第二时间范围内不启用第二写入模式(即将方程式(2.1)和/或(3.1)中的参数y设定为零)。此外,存储器管理电路51还可以搭配其他管理规则来决定是否在第二时间范围中启用第二写入模式,本发明不加以限制。
图8是根据本发明的范例实施例所示出的基于写入行为预测的写入控制方法的流程图。请参照图8,在步骤S801中,监测主机系统在第一时间范围内的第一数据写入行为。在步骤S802中,根据所述第一数据写入行为,预测所述主机系统在第二时间范围内的第二数据写入行为,其中所述第二时间范围不同于所述第一时间范围。在步骤S803中,获得对应于所述第一数据写入行为的第一测量参数与第一目标参数。在步骤S804中,根据所述第一测量参数、所述第一目标参数及所述第二数据写入行为,决定写入控制参数。在步骤S805中,根据所述写入控制参数发送写入指令序列,以指示可复写式非易失性存储器模块在所述第二时间范围内基于多个写入模式执行数据写入,其中所述多个写入模式所各别对应的写入数据量受所述写入控制参数控制。
然而,图8中各步骤已详细说明如上,在此便不再赘述。值得注意的是,图8中各步骤可以实作为多个程序码或是电路,本发明不加以限制。此外,图8的方法可以搭配以上范例实施例使用,也可以单独使用,本发明不加以限制。
综上所述,本发明所提出的范例实施例可根据主机系统在第一时间范围内的第一数据写入行为来预测主机系统在第二时间范围内的第二数据写入行为并根据预测结果决定写入控制参数。特别是,所述写入控制参数可用以控制第二时间范围内多个写入模式所各别对应的写入数据量。藉此,可有效提高存储器存储装置的数据写入速度的稳定性。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (21)

1.一种基于写入行为预测的写入控制方法,其特征在于,用于可复写式非易失性存储器模块,所述写入控制方法包括:
监测主机系统在第一时间范围内的第一数据写入行为;
根据所述第一数据写入行为,预测所述主机系统在第二时间范围内的第二数据写入行为,其中所述第二时间范围不同于所述第一时间范围;
获得对应于所述第一数据写入行为的第一测量参数与第一目标参数;
根据所述第一测量参数、所述第一目标参数及所述第二数据写入行为,决定写入控制参数;以及
根据所述写入控制参数发送写入指令序列,以指示所述可复写式非易失性存储器模块在所述第二时间范围内基于多个写入模式执行数据写入,
其中所述多个写入模式所各别对应的写入数据量受所述写入控制参数控制。
2.根据权利要求1所述的写入控制方法,其中所述多个写入模式包括第一写入模式与第二写入模式,
所述可复写式非易失性存储器模块中基于所述第一写入模式所程序化的一个存储单元用以存储p个比特,
所述可复写式非易失性存储器模块中基于所述第二写入模式所程序化的一个存储单元用以存储q个比特,
p与q皆为正整数,且p不同于q。
3.根据权利要求1所述的写入控制方法,其中根据所述第一数据写入行为,预测所述主机系统在所述第二时间范围内的所述第二数据写入行为的步骤包括:
根据所述第一数据写入行为,预测所述主机系统在所述第二时间范围内的写入数据量。
4.根据权利要求1所述的写入控制方法,其中所述多个写入模式包括第一写入模式与第二写入模式,
所述写入控制参数用以控制在所述第二时间范围中对应于所述第一写入模式的第一写入数据量与对应于所述第二写入模式的第二写入数据量,并且
所述第一写入数据量与所述第二写入数据量的总和不小于所预测的所述主机系统在所述第二时间范围内的写入数据量。
5.根据权利要求1所述的写入控制方法,其中所述第一测量参数包括所述主机系统在所述第一时间范围内的实际写入速度,所述第一目标参数包括所述主机系统在所述第一时间范围内的目标写入速度,且根据所述第一测量参数、所述第一目标参数及所述第二数据写入行为,决定所述写入控制参数的步骤包括:
根据所述实际写入速度与所述目标写入速度,决定所述写入控制参数,以将所预测的所述主机系统在所述第二时间范围内的数据写入速度控制为介于所述实际写入速度与所述目标写入速度之间。
6.根据权利要求5所述的写入控制方法,其中根据所述实际写入速度与所述目标写入速度,决定所述写入控制参数的步骤还包括:
根据所述实际写入速度决定波动容许速度,其中所述波动容许速度与所述实际写入速度之间的误差小于预设比率;以及
根据所述实际写入速度与所述波动容许速度,决定所述写入控制参数,以将所预测的所述主机系统在所述第二时间范围内的数据写入速度控制为介于所述实际写入速度与所述波动容许速度之间。
7.根据权利要求1所述的写入控制方法,其中所述多个写入模式包括第一写入模式与第二写入模式,且根据所述第一数据写入行为,预测所述主机系统在所述第二时间范围内的所述第二数据写入行为的步骤包括:
根据所述可复写式非易失性存储器模块中对应于所述第一写入模式的可用容量,决定是否在所述第二时间范围内启用所述第二写入模式。
8.一种存储器存储装置,其特征在于,包括:
连接接口单元,用以连接至主机系统;
可复写式非易失性存储器模块;以及
存储器控制电路单元,连接至所述连接接口单元与所述可复写式非易失性存储器模块,
其中所述存储器控制电路单元用以:
监测所述主机系统在第一时间范围内的第一数据写入行为;
根据所述第一数据写入行为,预测所述主机系统在第二时间范围内的第二数据写入行为,其中所述第二时间范围不同于所述第一时间范围;
获得对应于所述第一数据写入行为的第一测量参数与第一目标参数;
根据所述第一测量参数、所述第一目标参数及所述第二数据写入行为,决定写入控制参数;以及
根据所述写入控制参数发送写入指令序列,以指示所述可复写式非易失性存储器模块在所述第二时间范围内基于多个写入模式执行数据写入,其中所述多个写入模式所各别对应的写入数据量受所述写入控制参数控制。
9.根据权利要求8所述的存储器存储装置,其中所述多个写入模式包括第一写入模式与第二写入模式,
所述可复写式非易失性存储器模块中基于所述第一写入模式所程序化的一个存储单元用以存储p个比特,
所述可复写式非易失性存储器模块中基于所述第二写入模式所程序化的一个存储单元用以存储q个比特,
p与q皆为正整数,且p不同于q。
10.根据权利要求8所述的存储器存储装置,其中所述存储器控制电路单元根据所述第一数据写入行为,预测所述主机系统在所述第二时间范围内的所述第二数据写入行为的操作包括:
根据所述第一数据写入行为,预测所述主机系统在所述第二时间范围内的写入数据量。
11.根据权利要求8所述的存储器存储装置,其中所述多个写入模式包括第一写入模式与第二写入模式,
所述写入控制参数用以控制在所述第二时间范围中对应于所述第一写入模式的第一写入数据量与对应于所述第二写入模式的第二写入数据量,并且
所述第一写入数据量与所述第二写入数据量的总和不小于所预测的所述主机系统在所述第二时间范围内的写入数据量。
12.根据权利要求8所述的存储器存储装置,其中所述第一测量参数包括所述主机系统在所述第一时间范围内的实际写入速度,所述第一目标参数包括所述主机系统在所述第一时间范围内的目标写入速度,且所述存储器控制电路单元根据所述第一测量参数、所述第一目标参数及所述第二数据写入行为,决定所述写入控制参数的操作包括:
根据所述实际写入速度与所述目标写入速度,决定所述写入控制参数,以将所预测的所述主机系统在所述第二时间范围内的数据写入速度控制为介于所述实际写入速度与所述目标写入速度之间。
13.根据权利要求12所述的存储器存储装置,其中所述存储器控制电路单元根据所述实际写入速度与所述目标写入速度,决定所述写入控制参数的操作还包括:
根据所述实际写入速度决定波动容许速度,其中所述波动容许速度与所述实际写入速度之间的误差小于预设比率;以及
根据所述实际写入速度与所述波动容许速度,决定所述写入控制参数,以将所预测的所述主机系统在所述第二时间范围内的数据写入速度控制为介于所述实际写入速度与所述波动容许速度之间。
14.根据权利要求8所述的存储器存储装置,其中所述多个写入模式包括第一写入模式与第二写入模式,且所述存储器控制电路单元根据所述第一数据写入行为,预测所述主机系统在所述第二时间范围内的所述第二数据写入行为的操作包括:
根据所述可复写式非易失性存储器模块中对应于所述第一写入模式的可用容量,决定是否在所述第二时间范围内启用所述第二写入模式。
15.一种存储器控制电路单元,其特征在于,用以控制可复写式非易失性存储器模块,所述存储器控制电路单元包括:
主机接口,用以连接至主机系统;
存储器接口,用以连接至可复写式非易失性存储器模块;以及
存储器管理电路,连接至所述主机接口与所述存储器接口,
其中所述存储器管理电路用以:
监测所述主机系统在第一时间范围内的第一数据写入行为;
根据所述第一数据写入行为,预测所述主机系统在第二时间范围内的第二数据写入行为,其中所述第二时间范围不同于所述第一时间范围;
获得对应于所述第一数据写入行为的第一测量参数与第一目标参数;
根据所述第一测量参数、所述第一目标参数及所述第二数据写入行为,决定写入控制参数;以及
根据所述写入控制参数发送写入指令序列,以指示所述可复写式非易失性存储器模块在所述第二时间范围内基于多个写入模式执行数据写入,
其中所述多个写入模式所各别对应的写入数据量受所述写入控制参数控制。
16.根据权利要求15所述的存储器控制电路单元,其中所述多个写入模式包括第一写入模式与第二写入模式,
所述可复写式非易失性存储器模块中基于所述第一写入模式所程序化的一个存储单元用以存储p个比特,
所述可复写式非易失性存储器模块中基于所述第二写入模式所程序化的一个存储单元用以存储q个比特,
p与q皆为正整数,且p不同于q。
17.根据权利要求15所述的存储器控制电路单元,其中所述存储器管理电路根据所述第一数据写入行为,预测所述主机系统在所述第二时间范围内的所述第二数据写入行为的操作包括:
根据所述第一数据写入行为,预测所述主机系统在所述第二时间范围内的写入数据量。
18.根据权利要求15所述的存储器控制电路单元,其中所述多个写入模式包括第一写入模式与第二写入模式,
所述写入控制参数用以控制在所述第二时间范围中对应于所述第一写入模式的第一写入数据量与对应于所述第二写入模式的第二写入数据量,并且
所述第一写入数据量与所述第二写入数据量的总和不小于所预测的所述主机系统在所述第二时间范围内的写入数据量。
19.根据权利要求15所述的存储器控制电路单元,其中所述第一测量参数包括所述主机系统在所述第一时间范围内的实际写入速度,所述第一目标参数包括所述主机系统在所述第一时间范围内的目标写入速度,且所述存储器管理电路根据所述第一测量参数、所述第一目标参数及所述第二数据写入行为,决定所述写入控制参数的操作包括:
根据所述实际写入速度与所述目标写入速度,决定所述写入控制参数,以将所预测的所述主机系统在所述第二时间范围内的数据写入速度控制为介于所述实际写入速度与所述目标写入速度之间。
20.根据权利要求19所述的存储器控制电路单元,其中所述存储器管理电路根据所述实际写入速度与所述目标写入速度,决定所述写入控制参数的操作还包括:
根据所述实际写入速度决定波动容许速度,其中所述波动容许速度与所述实际写入速度之间的误差小于预设比率;以及
根据所述实际写入速度与所述波动容许速度,决定所述写入控制参数,以将所预测的所述主机系统在所述第二时间范围内的数据写入速度控制为介于所述实际写入速度与所述波动容许速度之间。
21.根据权利要求15所述的存储器控制电路单元,其中所述多个写入模式包括第一写入模式与第二写入模式,且所述存储器管理电路根据所述第一数据写入行为,预测所述主机系统在所述第二时间范围内的所述第二数据写入行为的操作包括:
根据所述可复写式非易失性存储器模块中对应于所述第一写入模式的可用容量,决定是否在所述第二时间范围内启用所述第二写入模式。
CN202210482949.4A 2022-05-05 2022-05-05 基于写入行为预测的写入控制方法、存储装置及控制电路 Pending CN114842896A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202210482949.4A CN114842896A (zh) 2022-05-05 2022-05-05 基于写入行为预测的写入控制方法、存储装置及控制电路
TW111117481A TWI804308B (zh) 2022-05-05 2022-05-10 基於寫入行為預測的寫入控制方法、記憶體儲存裝置及記憶體控制電路單元
US17/745,891 US20230359357A1 (en) 2022-05-05 2022-05-17 Write control method based on write behavior prediction, memory storage device, and memory control circuit unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210482949.4A CN114842896A (zh) 2022-05-05 2022-05-05 基于写入行为预测的写入控制方法、存储装置及控制电路

Publications (1)

Publication Number Publication Date
CN114842896A true CN114842896A (zh) 2022-08-02

Family

ID=82568400

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210482949.4A Pending CN114842896A (zh) 2022-05-05 2022-05-05 基于写入行为预测的写入控制方法、存储装置及控制电路

Country Status (3)

Country Link
US (1) US20230359357A1 (zh)
CN (1) CN114842896A (zh)
TW (1) TWI804308B (zh)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014141411A1 (ja) * 2013-03-13 2014-09-18 株式会社日立製作所 ストレージシステムおよびストレージシステム制御方法
US10452302B2 (en) * 2015-04-09 2019-10-22 Hitachi, Ltd. Storage system and data control method
US9703664B1 (en) * 2015-06-24 2017-07-11 EMC IP Holding Company LLC Self adaptive workload classification and forecasting in multi-tiered storage system using ARIMA time series modeling
US10547680B2 (en) * 2015-12-29 2020-01-28 Intel Corporation Systems, methods, and apparatuses for range protection
KR20180027710A (ko) * 2016-09-06 2018-03-15 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 스토리지 장치 및 불휘발성 메모리 장치의 액세스 방법
CN114168495A (zh) * 2020-09-10 2022-03-11 西部数据技术公司 存储设备的增强的预读能力

Also Published As

Publication number Publication date
US20230359357A1 (en) 2023-11-09
TW202344969A (zh) 2023-11-16
TWI804308B (zh) 2023-06-01

Similar Documents

Publication Publication Date Title
CN110333770B (zh) 存储器管理方法、存储器存储装置及存储器控制电路单元
CN111400201B (zh) 快闪存储器的数据整理方法、存储装置及控制电路单元
US11693567B2 (en) Memory performance optimization method, memory control circuit unit and memory storage device
CN111078146B (zh) 存储器管理方法、存储器存储装置及存储器控制电路单元
CN106775479B (zh) 存储器管理方法、存储器储存装置及存储器控制电路单元
CN107817943B (zh) 数据传输方法、存储器存储装置及存储器控制电路单元
US10614892B1 (en) Data reading method, storage controller and storage device
TWI757216B (zh) 溫度控制方法、記憶體儲存裝置及記憶體控制電路單元
US11960761B2 (en) Memory control method, memory storage device and memory control circuit unit
CN114822664A (zh) 基于数据优先级的风险评估方法、存储装置及控制电路
CN111831210B (zh) 存储器管理方法、存储器控制电路单元及存储器存储装置
CN112988076A (zh) 快闪存储器控制方法、存储装置及控制器
CN112835536A (zh) 存储器控制方法、存储器存储装置及存储器控制电路单元
US20230359357A1 (en) Write control method based on write behavior prediction, memory storage device, and memory control circuit unit
CN117632038B (zh) 损耗平衡方法、存储器存储装置及存储器控制电路单元
CN112445417A (zh) 存储器控制方法、存储器存储装置及存储器控制电路单元
CN117636967B (zh) 存储器控制方法、存储器存储装置及存储器控制电路单元
CN113312274B (zh) 存储器的数据整理方法、存储器存储装置及控制电路单元
CN113724773B (zh) 存储器管理方法、存储器存储装置及存储器控制电路单元
CN114115739B (zh) 存储器管理方法、存储器存储装置及存储器控制电路单元
TWI840148B (zh) 記憶體的性能匹配方法、記憶體儲存裝置及記憶體控制電路單元
CN117632042B (zh) 存储器管理方法、存储器存储装置及存储器控制电路单元
US20240086109A1 (en) Data writing method, memory storage device, and memory control circuit unit
US20230161503A1 (en) Memory management method, memory storage device and memory control circuit unit
CN117174149A (zh) 存储器控制方法、存储器存储装置及存储器控制电路单元

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