CN112486417B - 存储器控制方法、存储器存储装置及存储器控制电路单元 - Google Patents
存储器控制方法、存储器存储装置及存储器控制电路单元 Download PDFInfo
- Publication number
- CN112486417B CN112486417B CN202011395835.3A CN202011395835A CN112486417B CN 112486417 B CN112486417 B CN 112486417B CN 202011395835 A CN202011395835 A CN 202011395835A CN 112486417 B CN112486417 B CN 112486417B
- Authority
- CN
- China
- Prior art keywords
- data
- memory
- type
- buffer memory
- threshold value
- 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/0604—Improving or facilitating administration, e.g. storage management
-
- 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/0629—Configuration or reconfiguration 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/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]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明提供一种存储器控制方法、存储器存储装置及存储器控制电路单元。所述方法包括:将第一类数据缓存于缓冲存储器,其中第一类数据默认是以第一编程模式存储至可复写式非易失性存储器模块;在第一类数据缓存于缓冲存储器的状态下,将第二类数据缓存于缓冲存储器,其中第二类数据默认是以第二编程模式存储至可复写式非易失性存储器模块;在缓冲存储器中,若第一类数据的数据量未达第一门槛值,而第二类数据的数据量达到第二门槛值,将缓冲存储器中的第一类数据存储至可复写式非易失性存储器模块,从而提高对于缓存数据的管理效率。
Description
技术领域
本发明涉及一种存储器控制技术,尤其涉及一种存储器控制方法、存储器存储装置及存储器控制电路单元。
背景技术
数码相机、移动电话与MP3播放器在这几年来的成长十分迅速,使得消费者对存储媒体的需求也急速增加。由于可复写式非易失性存储器模块(rewritable non-volatilememory module)(例如,快闪存储器)具有数据非易失性、省电、体积小,以及无机械结构等特性,所以非常适合内建于上述所举例的各种可携式多媒体装置中。
一般来说,来自主机***的数据会先被缓存在缓冲存储器中。当缓冲存储器中待存储的数据量符合一个基本写入数据单位所对应的数据量时,缓冲存储器中待存储的数据可基于此基本写入数据单位被存储至可复写式非易失性存储器模块中。例如,假设此基本写入数据单位所对应的数据量为16千字节(KB),则表示对于可复写式非易失性存储器模块的每一次的数据写入都是以16KB为单位。然而,在某些情况下,可能因为突然的断电而导致缓冲存储器中尚未满足写入条件的数据意外遗失。特别是,针对支援多分流写入的存储器存储装置而言,早期接收的数据可能因为迟迟无法满足写入条件而导致最终因断电而意外遗失,甚至使得遗失的总数据量超过预期。
发明内容
本发明提供一种存储器控制方法、存储器存储装置及存储器控制电路单元,可改善上述问题并提高对于缓存数据的管理效率。
本发明的范例实施例提供一种存储器控制方法,其用于存储器存储装置。所述存储器存储装置包括缓冲存储器与可复写式非易失性存储器模块。所述存储器控制方法包括:将第一类数据缓存于所述缓冲存储器中的第一存储空间,其中所述第一类数据默认是以第一编程模式存储至所述可复写式非易失性存储器模块;在所述第一类数据缓存于所述缓冲存储器的状态下,将第二类数据缓存于所述缓冲存储器中的第二存储空间,其中所述第二类数据默认是以第二编程模式存储至所述可复写式非易失性存储器模块,且所述第一编程模式不同于所述第二编程模式;以及在所述缓冲存储器中的所述第一类数据的数据量未达第一门槛值的状态下,若所述缓冲存储器中的所述第二类数据的数据量达到第二门槛值,将所述缓冲存储器中的所述第一类数据存储至所述可复写式非易失性存储器模块中,其中所述第一门槛值小于所述第二门槛值。
在本发明的一范例实施例中,所述的存储器控制方法还包括:从主机***接收写入指令,其中所述写入指令指示存储属于特定逻辑单元的数据;以及根据所述特定逻辑单元决定所述数据属于所述第一类数据或所述第二类数据。
在本发明的一范例实施例中,所述的存储器控制方法还包括:根据所述缓冲存储器的容量决定所述第二门槛值。
在本发明的一范例实施例中,所述的存储器控制方法还包括:在所述缓冲存储器中的所述第一类数据的所述数据量未达所述第一门槛值的所述状态下,若所述缓冲存储器中的所述第二类数据的所述数据量未达所述第二门槛值,将所述第一类数据保存于所述缓冲存储器且不将所述缓冲存储器中的所述第一类数据存储至所述可复写式非易失性存储器模块中。
在本发明的一范例实施例中,所述的存储器控制方法还包括:若所述缓冲存储器中的所述第一类数据的所述数据量达到所述第一门槛值,将所述缓冲存储器中的所述第一类数据存储至所述可复写式非易失性存储器模块中。
本发明的范例实施例另提供一种存储器存储装置,其包括连接接口单元、可复写式非易失性存储器模块及存储器控制电路单元。所述连接接口单元用以连接至主机***。所述存储器控制电路单元连接至所述连接接口单元与所述可复写式非易失性存储器模块。所述存储器控制电路单元用以将第一类数据缓存于缓冲存储器中的第一存储空间,且所述第一类数据默认是以第一编程模式存储至所述可复写式非易失性存储器模块。在所述第一类数据缓存于所述缓冲存储器的状态下,所述存储器控制电路单元还用以将第二类数据缓存于所述缓冲存储器中的第二存储空间,其中所述第二类数据默认是以第二编程模式存储至所述可复写式非易失性存储器模块,且所述第一编程模式不同于所述第二编程模式。在所述缓冲存储器中的所述第一类数据的数据量未达第一门槛值的状态下,若所述缓冲存储器中的所述第二类数据的数据量达到第二门槛值,所述存储器控制电路单元还用以发送写入指令序列以将所述缓冲存储器中的所述第一类数据存储至所述可复写式非易失性存储器模块中,其中所述第一门槛值小于所述第二门槛值。
在本发明的一范例实施例中,所述存储器控制电路单元还用以从所述主机***接收写入指令。所述写入指令指示存储属于特定逻辑单元的数据。所述存储器控制电路单元还用以根据所述特定逻辑单元决定所述数据属于所述第一类数据或所述第二类数据。
在本发明的一范例实施例中,所述存储器控制电路单元还用以根据所述缓冲存储器的容量决定所述第二门槛值。
在本发明的一范例实施例中,在所述缓冲存储器中的所述第一类数据的所述数据量未达所述第一门槛值的所述状态下,若所述缓冲存储器中的所述第二类数据的所述数据量未达所述第二门槛值,所述存储器控制电路单元还用以将所述第一类数据保存于所述缓冲存储器且不将所述缓冲存储器中的所述第一类数据存储至所述可复写式非易失性存储器模块中。
在本发明的一范例实施例中,若所述缓冲存储器中的所述第一类数据的所述数据量达到所述第一门槛值,所述存储器控制电路单元还用以发送另一写入指令序列以将所述缓冲存储器中的所述第一类数据存储至所述可复写式非易失性存储器模块中。
本发明的范例实施例另提供一种存储器控制电路单元,其用于控制可复写式非易失性存储器模块。所述存储器控制电路单元包括主机接口、存储器接口、缓冲存储器及存储器管理电路。所述主机接口用以连接至主机***。所述存储器接口用以连接至所述可复写式非易失性存储器模块。所述存储器管理电路连接至所述主机接口、所述存储器接口及所述缓冲存储器。所述存储器管理电路用以将第一类数据缓存于所述缓冲存储器中的第一存储空间,且所述第一类数据默认是以第一编程模式存储至所述可复写式非易失性存储器模块。在所述第一类数据缓存于所述缓冲存储器的状态下,所述存储器管理电路还用以将第二类数据缓存于所述缓冲存储器中的第二存储空间,其中所述第二类数据默认是以第二编程模式存储至所述可复写式非易失性存储器模块,且所述第一编程模式不同于所述第二编程模式。在所述缓冲存储器中的所述第一类数据的数据量未达第一门槛值的状态下,若所述缓冲存储器中的所述第二类数据的数据量达到第二门槛值,所述存储器管理电路还用以发送写入指令序列以将所述缓冲存储器中的所述第一类数据存储至所述可复写式非易失性存储器模块中,其中所述第一门槛值小于所述第二门槛值。
在本发明的一范例实施例中,所述存储器管理电路还用以从所述主机***接收写入指令。所述写入指令指示存储属于特定逻辑单元的数据。所述存储器管理电路还用以根据所述特定逻辑单元决定所述数据属于所述第一类数据或所述第二类数据。
在本发明的一范例实施例中,所述第一编程模式是用以将P个比特存储于所述可复写式非易失性存储器模块中的单一个存储单元,所述第二编程模式是用以将Q个比特存储于所述可复写式非易失性存储器模块中的单一个存储单元,P与Q皆为正整数,且P不等于Q。
在本发明的一范例实施例中,P小于Q。
在本发明的一范例实施例中,所述存储器管理电路还用以根据所述缓冲存储器的容量决定所述第二门槛值。
在本发明的一范例实施例中,所述第一门槛值对应所述可复写式非易失性存储器模块的基本写入数据单位。
在本发明的一范例实施例中,在所述缓冲存储器中的所述第一类数据的所述数据量未达所述第一门槛值的所述状态下,若所述缓冲存储器中的所述第二类数据的所述数据量未达所述第二门槛值,所述存储器管理电路还用以将所述第一类数据保存于所述缓冲存储器且不将所述缓冲存储器中的所述第一类数据存储至所述可复写式非易失性存储器模块中。
在本发明的一范例实施例中,若所述缓冲存储器中的所述第一类数据的所述数据量达到所述第一门槛值,所述存储器管理电路还用以发送另一写入指令序列以将所述缓冲存储器中的所述第一类数据存储至所述可复写式非易失性存储器模块中。
基于上述,第一类数据默认是以第一编程模式存储至所述可复写式非易失性存储器模块。第二类数据默认是以第二编程模式存储至所述可复写式非易失性存储器模块。第一编程模式不同于第二编程模式。在第一类数据与第二类数据同时缓存于缓冲存储器中的状态下,若第一类数据的数据量未达第一门槛值且第二类数据的数据量达到第二门槛值,缓冲存储器中的第一类数据可(直接)被存储至可复写式非易失性存储器模块中,其中所述第一门槛值小于所述第二门槛值。藉此,可减少缓冲存储器中早期接收的数据意外遗失的机率和/或降低非预期断电时可能会遗失的总数据量,从而提高对于缓存数据的管理效率。
附图说明
图1是根据本发明的一范例实施例所示出的主机***、存储器存储装置及输入/输出(I/O)装置的示意图;
图2是根据本发明的另一范例实施例所示出的主机***、存储器存储装置及I/O装置的示意图;
图3是根据本发明的另一范例实施例所示出的主机***与存储器存储装置的示意图;
图4是根据本发明的一范例实施例所示出的存储器存储装置的概要框图;
图5是根据本发明的一范例实施例所示出的存储器控制电路单元的概要框图;
图6是根据本发明的一范例实施例所示出的管理可复写式非易失性存储器模块的示意图;
图7是根据本发明的一范例实施例所示出的根据数据所属的逻辑范围决定以特定编程模式来存储数据的示意图;
图8是根据本发明的一范例实施例所示出的基于数据量来决定是否编程数据的示意图;
图9与图10是根据本发明的一范例实施例所示出的管理缓冲存储器中的数据的示意图;
图11是根据本发明的一范例实施例所示出的管理缓冲存储器中的数据的示意图;
图12是根据本发明的一范例实施例所示出的存储器控制方法的流程图。
具体实施方式
现将详细地参考本发明的示范性实施例,示范性实施例的实例说明于附图中。只要有可能,相同元件符号在附图和描述中用来表示相同或相似部分。
一般而言,存储器存储装置(亦称,存储器存储***)包括可复写式非易失性存储器模块(rewritable non-volatile memory module)与控制器(亦称,控制电路)。通常存储器存储装置是与主机***一起使用,以使主机***可将数据写入至存储器存储装置或从存储器存储装置中读取数据。
图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,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可为其所使用的安全数位(SecureDigital,SD)卡32、小型快闪(Compact Flash,CF)卡33或嵌入式存储装置34等各式非易失性存储器存储装置。嵌入式存储装置34包括嵌入式多媒体卡(embedded Multi MediaCard,eMMC)341和/或嵌入式多芯片封装(embedded Multi Chip Package,eMCP)存储装置342等各类型将存储器模块直接连接于主机***的基板上的嵌入式存储装置。
图4是根据本发明的一范例实施例所示出的存储器存储装置的概要框图。请参照图4,存储器存储装置10包括连接接口单元402、存储器控制电路单元404与可复写式非易失性存储器模块406。
连接接口单元402用以将存储器存储装置10连接至主机***11。存储器存储装置10可通过连接接口单元402与主机***11通信。在本范例实施例中,连接接口单元402是相容于串行高级技术附件(Serial Advanced Technology Attachment,SATA)标准。然而,必须了解的是,本发明不限于此,连接接口单元402亦可以是符合并行高级技术附件(Parallel Advanced Technology Attachment,PATA)标准、电气和电子工程师协会(Institute of Electrical and Electronic Engineers,IEEE)1394标准、高速周边零件连接接口(Peripheral Component Interconnect Express,PCI Express)标准、通用串行总线(Universal Serial Bus,USB)标准、SD接口标准、超高速一代(Ultra High Speed-I,UHS-I)接口标准、超高速二代(Ultra High Speed-II,UHS-II)接口标准、存储棒(MemoryStick,MS)接口标准、MCP接口标准、MMC接口标准、eMMC接口标准、通用快闪存储器(Universal Flash Storage,UFS)接口标准、eMCP接口标准、CF接口标准、整合式驱动电子接口(Integrated Device Electronics,IDE)标准或其他适合的标准。连接接口单元402可与存储器控制电路单元404封装在一个芯片中,或者连接接口单元402是布设于一包含存储器控制电路单元404的芯片外。
存储器控制电路单元404用以执行以硬件型式或固件型式实作的多个逻辑门或控制指令并且根据主机***11的指令在可复写式非易失性存储器模块406中进行数据的写入、读取与擦除等运作。
可复写式非易失性存储器模块406是连接至存储器控制电路单元404并且用以存储主机***11所写入的数据。可复写式非易失性存储器模块406可以是单阶存储单元(Single Level Cell,SLC)NAND型快闪存储器模块(即,一个存储单元中可存储1个比特的快闪存储器模块)、多阶存储单元(Multi Level Cell,MLC)NAND型快闪存储器模块(即,一个存储单元中可存储2个比特的快闪存储器模块)、三阶存储单元(Triple Level Cell,TLC)NAND型快闪存储器模块(即,一个存储单元中可存储3个比特的快闪存储器模块)、四阶存储单元(Quad Level Cell,TLC)NAND型快闪存储器模块(即,一个存储单元中可存储4个比特的快闪存储器模块)、其他快闪存储器模块或其他具有相同特性的存储器模块。
可复写式非易失性存储器模块406中的每一个存储单元是以电压(以下亦称为阈值电压)的改变来存储一或多个比特。具体来说,每一个存储单元的控制门(control gate)与通道之间有一个电荷捕捉层。通过施予一写入电压至控制门,可以改变电荷补捉层的电子量,进而改变存储单元的阈值电压。此改变存储单元的阈值电压的操作亦称为“把数据写入至存储单元”或“编程(programming)存储单元”。随着阈值电压的改变,可复写式非易失性存储器模块406中的每一个存储单元具有多个存储状态。通过施予读取电压可以判断一个存储单元是属于哪一个存储状态,藉此取得此存储单元所存储的一或多个比特。
在本范例实施例中,可复写式非易失性存储器模块406的存储单元可构成多个物理编程单元,并且此些物理编程单元可构成多个物理擦除单元。具体来说,同一条字线上的存储单元可组成一或多个物理编程单元。若每一个存储单元可存储2个以上的比特,则同一条字线上的物理编程单元可至少可被分类为下物理编程单元与上物理编程单元。例如,一存储单元的最低有效比特(Least Significant Bit,LSB)是属于下物理编程单元,并且一存储单元的最高有效比特(Most Significant Bit,MSB)是属于上物理编程单元。一般来说,在MLC NAND型快闪存储器中,下物理编程单元的写入速度会大于上物理编程单元的写入速度,和/或下物理编程单元的可靠度是高于上物理编程单元的可靠度。
在本范例实施例中,物理编程单元为编程的最小单元。即,物理编程单元为写入数据的最小单元。例如,物理编程单元可为物理页面(page)或是物理扇(sector)。若物理编程单元为物理页面,则此些物理编程单元可包括数据比特区与冗余(redundancy)比特区。数据比特区包含多个物理扇,用以存储使用者数据,而冗余比特区用以存储***数据(例如,纠错码等管理数据)。在本范例实施例中,数据比特区包含32个物理扇,且一个物理扇的大小为512字节(byte,B)。然而,在其他范例实施例中,数据比特区中也可包含8个、16个或数目更多或更少的物理扇,并且每一个物理扇的大小也可以是更大或更小。另一方面,物理擦除单元为擦除的最小单位。亦即,每一物理擦除单元含有最小数目的一并被擦除的存储单元。例如,物理擦除单元为物理块(block)。
图5是根据本发明的一范例实施例所示出的存储器控制电路单元的概要框图。请参照图5,存储器控制电路单元404包括存储器管理电路502、主机接口504及存储器接口506。
存储器管理电路502用以控制存储器控制电路单元404的整体运作。具体来说,存储器管理电路502具有多个控制指令,并且在存储器存储装置10运作时,此些控制指令会被执行以进行数据的写入、读取与擦除等运作。以下说明存储器管理电路502的操作时,等同于说明存储器控制电路单元404的操作。
在本范例实施例中,存储器管理电路502的控制指令是以固件型式来实作。例如,存储器管理电路502具有微处理器单元(未示出)与只读存储器(未示出),并且此些控制指令是被烧录至此只读存储器中。当存储器存储装置10运作时,此些控制指令会由微处理器单元来执行以进行数据的写入、读取与擦除等运作。
在另一范例实施例中,存储器管理电路502的控制指令亦可以程序码型式存储于可复写式非易失性存储器模块406的特定区域(例如,存储器模块中专用于存放***数据的***区)中。此外,存储器管理电路502具有微处理器单元(未示出)、只读存储器(未示出)及随机存取存储器(未示出)。特别是,此只读存储器具有开机码(boot code),并且当存储器控制电路单元404被致能时,微处理器单元会先执行此开机码来将存储于可复写式非易失性存储器模块406中的控制指令载入至存储器管理电路502的随机存取存储器中。之后,微处理器单元会运转此些控制指令以进行数据的写入、读取与擦除等运作。
此外,在另一范例实施例中,存储器管理电路502的控制指令亦可以一硬件型式来实作。例如,存储器管理电路502包括微控制器、存储单元管理电路、存储器写入电路、存储器读取电路、存储器擦除电路与数据处理电路。存储单元管理电路、存储器写入电路、存储器读取电路、存储器擦除电路与数据处理电路是连接至微控制器。存储单元管理电路用以管理可复写式非易失性存储器模块406的存储单元或存储单元群组。存储器写入电路用以对可复写式非易失性存储器模块406下达写入指令序列以将数据写入至可复写式非易失性存储器模块406中。存储器读取电路用以对可复写式非易失性存储器模块406下达读取指令序列以从可复写式非易失性存储器模块406中读取数据。存储器擦除电路用以对可复写式非易失性存储器模块406下达擦除指令序列以将数据从可复写式非易失性存储器模块406中擦除。数据处理电路用以处理欲写入至可复写式非易失性存储器模块406的数据以及从可复写式非易失性存储器模块406中读取的数据。写入指令序列、读取指令序列及擦除指令序列可各别包括一或多个程序码或指令码并且用以指示可复写式非易失性存储器模块406执行相对应的写入、读取及擦除等操作。在一范例实施例中,存储器管理电路502还可以下达其他类型的指令序列给可复写式非易失性存储器模块406以指示执行相对应的操作。
主机接口504是连接至存储器管理电路502。存储器管理电路502可通过主机接口504与主机***11通信。主机接口504可用以接收与识别主机***11所传送的指令与数据。例如,主机***11所传送的指令与数据可通过主机接口504来传送至存储器管理电路502。此外,存储器管理电路502可通过主机接口504将数据传送至主机***11。在本范例实施例中,主机接口504是相容于SATA标准。然而,必须了解的是本发明不限于此,主机接口504亦可以是相容于PATA标准、IEEE 1394标准、PCI Express标准、USB标准、SD标准、UHS-I标准、UHS-II标准、MS标准、MMC标准、eMMC标准、UFS标准、CF标准、IDE标准或其他适合的数据传输标准。
存储器接口506是连接至存储器管理电路502并且用以存取可复写式非易失性存储器模块406。也就是说,欲写入至可复写式非易失性存储器模块406的数据会通过存储器接口506转换为可复写式非易失性存储器模块406所能接受的格式。具体来说,若存储器管理电路502要存取可复写式非易失性存储器模块406,存储器接口506会传送对应的指令序列。例如,这些指令序列可包括指示写入数据的写入指令序列、指示读取数据的读取指令序列、指示擦除数据的擦除指令序列、以及用以指示各种存储器操作(例如,改变读取电压电平或执行垃圾回收操作等等)的相对应的指令序列。这些指令序列例如是由存储器管理电路502产生并且通过存储器接口506传送至可复写式非易失性存储器模块406。这些指令序列可包括一或多个信号,或是在总线上的数据。这些信号或数据可包括指令码或程序码。例如,在读取指令序列中,会包括读取的识别码、存储器地址等信息。
在一范例实施例中,存储器控制电路单元404还包括差错校验电路508、缓冲存储器510与电源管理电路512。
差错校验电路508是连接至存储器管理电路502并且用以执行差错校验操作以确保数据的正确性。具体来说,当存储器管理电路502从主机***11中接收到写入指令时,差错校验电路508会为对应此写入指令的数据产生对应的纠错码(error correcting code,ECC)和/或检错码(error detecting code,EDC),并且存储器管理电路502会将对应此写入指令的数据与对应的纠错码和/或检错码写入至可复写式非易失性存储器模块406中。之后,当存储器管理电路502从可复写式非易失性存储器模块406中读取数据时会同时读取此数据对应的纠错码和/或检错码,并且差错校验电路508会依据此纠错码和/或检错码对所读取的数据执行差错校验操作。
缓冲存储器510是连接至存储器管理电路502并且用以缓存来自于主机***11的数据与指令或来自于可复写式非易失性存储器模块406的数据。电源管理电路512是连接至存储器管理电路502并且用以控制存储器存储装置10的电源。
在一范例实施例中,图4的可复写式非易失性存储器模块406亦称为快闪(flash)存储器模块,存储器控制电路单元404亦称为用于控制快闪存储器模块的快闪存储器控制器,和/或图5的存储器管理电路502亦称为快闪存储器管理电路。
图6是根据本发明的一范例实施例所示出的管理可复写式非易失性存储器模块的示意图。请参照图6,存储器管理电路502会将可复写式非易失性存储器模块406的物理单元610(0)~610(B)逻辑地分组至存储区601与替换区602。存储区601中的物理单元610(0)~610(A)是用以存储数据,而替换区602中的物理单元610(A+1)~610(B)则是用以替换存储区601中损坏的物理单元。例如,若从某一个物理单元中读取的数据所包含的错误过多而无法被更正时,此物理单元会被视为是损坏的物理单元。须注意的是,若替换区602中没有可用的物理擦除单元,则存储器管理电路502可能会将整个存储器存储装置10宣告为写入保护(write protect)状态,而无法再写入数据。
在本范例实施例中,每一个物理单元是指一个物理编程单元。然而,在另一范例实施例中,一个物理单元亦可以是指一个物理地址、一个物理擦除单元或由多个连续或不连续的物理地址组成。存储器管理电路502会配置逻辑单元612(0)~612(C)以映射存储区601中的物理单元610(0)~610(A)。在本范例实施例中,每一个逻辑单元是指一个逻辑地址。然而,在另一范例实施例中,一个逻辑单元也可以是指一个逻辑编程单元、一个逻辑擦除单元或者由多个连续或不连续的逻辑地址组成。此外,逻辑单元612(0)~612(C)中的每一者可被映射至一或多个物理单元。
在一范例实施例中,存储器管理电路502可将逻辑单元与物理单元之间的映射关系(亦称为逻辑-物理地址映射关系)记录于至少一逻辑-物理地址映射表。当主机***11欲从存储器存储装置10读取数据或写入数据至存储器存储装置10时,存储器管理电路502可根据此逻辑-物理地址映射表来执行对于存储器存储装置10的数据存取操作。
在一范例实施例中,存储器管理电路502可从主机***11接收写入指令。此写入指令可指示存储属于某一逻辑单元的数据。存储器管理电路502可获得此待存储数据的类型并将此数据缓存于缓冲存储器510。须注意的是,缓存于缓冲存储器510中的数据可包括第一类数据与第二类数据。
在一范例实施例中,存储器管理电路502可根据某一待存储数据所属的逻辑单元而决定此数据是属于第一类数据或第二类数据。例如,假设某一待存储数据所属的逻辑单元落于某一逻辑范围(亦称为第一逻辑范围),存储器管理电路502可判定此数据是属于第一类数据。或者,假设某一待存储数据所属的逻辑单元落于另一逻辑范围(亦称为第二逻辑范围),存储器管理电路502可判定此数据是属于第二类数据。第一逻辑范围可不同于第二逻辑范围。
在一范例实施例中,第一类数据是指默认是以某一编程模式(亦称为第一编程模式)存储至可复写式非易失性存储器模块406的数据。第二类数据是指默认是以另一编程模式(亦称为第二编程模式)存储至可复写式非易失性存储器模块406的数据。第一编程模式不同于第二编程模式。
在一范例实施例中,第一编程模式是用以将P个比特存储于可复写式非易失性存储器模块406中的单一个存储单元,而第二编程模式是用以将Q个比特存储于可复写式非易失性存储器模块406中的单一个存储单元。P与Q皆为正整数,且P不等于Q。
在一范例实施例中,第一编程模式是指SLC编程模式、虚拟(pseudo)SLC编程模式、下物理编程(lower physical programming)模式、混合编程(mixture programming)模式及少层存储单元(less layer memory cell)模式的其中之一。在SLC编程模式与虚拟SLC编程模式中,一个存储单元只存储一个比特的数据。在下物理编程模式中,只有下物理编程单元会被编程,而此下物理编程单元所对应的上物理编程单元可不被编程。在混合编程模式中,有效数据(或真实数据)会被编程于下物理编程单元中,而同时虚拟数据(dummy data)会被编程至存储有效数据的下物理编程单元所对应的上物理编程单元中。在少层存储单元模式中,一个存储单元存储一第一数目的比特的数据。例如,此第一数目可设为“1”。
在一范例实施例中,第二编程模式是指MLC编程模式、TLC编程模式、QLC编程模式或类似模式。在第二编程模式中,一个存储单元可存储有一第二数目的比特的数据,其中此第二数目等于或大于“2”。例如,此第二数目可设为“2”、“3”或“4”。在另一范例实施例中,上述第一编程模式中的第一数目与第二编程模式中的第二数目皆可以是其他数目,只要满足第二数目大于第一数目即可。
在一范例实施例中,P小于Q。例如,P可为“1”,而Q可为“2”、“3”或“4”。
图7是根据本发明的一范例实施例所示出的根据数据所属的逻辑范围决定以特定编程模式来存储数据的示意图。请参照图7,假设将所有逻辑单元(例如图6的逻辑单元612(0)~612(C))所涵盖的逻辑范围划分为逻辑范围0~L(1)及L(1)~L(2)。逻辑范围0~L(1)可视为第一逻辑范围。逻辑范围L(1)~L(2)可视为第二逻辑范围。在一范例实施例中,以1TB的总逻辑范围为例,逻辑范围0~L(1)可以是指0~100GB之间的逻辑范围,而逻辑范围L(1)~L(2)可以是指100GB~1TB之间的逻辑范围。然而,在另一范例实施例中,逻辑范围的划分可视实务需求调整。
在一范例实施例中,若某一待存储数据所属的逻辑单元位于逻辑范围0~L(1)中,则存储器管理电路502可判定此数据是属于第一类数据并且后续将以第一编程模式来编程此数据。或者,在一范例实施例中,若某一待存储数据所属的逻辑单元位于逻辑范围L(1)~L(2)中,则存储器管理电路502可判定此数据是属于第二类数据并且后续将以第二编程模式来编程此数据。
在一范例实施例中,存储器管理电路502可持续判断缓冲存储器510中的第一类数据或第二类数据的数据量是否达到某一门槛值(亦称为第一门槛值)。此第一门槛值对应于可复写式非易失性存储器模块406的一个基本写入数据单位。例如,假设此基本写入数据单位规范单次的数据写入是以16KB为单位,则此第一门槛值可为16KB。在一范例实施例中,一个基本写入数据单位可对应一个物理单元(例如一个物理编程单元)的容量。
在一范例实施例中,若缓冲存储器510中的第一类数据的数据量达到第一门槛值,存储器管理电路502可发送写入指令序列至可复写式非易失性存储器模块406以指示可复写式非易失性存储器模块406基于第一编程模式来存储缓冲存储器510中数据量达到第一门槛值的第一类数据。或者,在一范例实施例中,若缓冲存储器510中的第二类数据的数据量达到第一门槛值,存储器管理电路502可发送写入指令序列至可复写式非易失性存储器模块406以指示可复写式非易失性存储器模块406基于第二编程模式来存储缓冲存储器510中数据量达到第一门槛值的第二类数据。
在一范例实施例中,若缓冲存储器510中的第一类数据的数据量未达第一门槛值,则存储器管理电路502可暂时将第一类数据保存于缓冲存储器510中且暂不将缓冲存储器510中的第一类数据存储至可复写式非易失性存储器模块406。或者,在一范例实施例中,若缓冲存储器510中的第二类数据的数据量未达第一门槛值,则存储器管理电路502可暂时将第二类数据保存于缓冲存储器510中且暂不将缓冲存储器510中的第二类数据存储至可复写式非易失性存储器模块406。
图8是根据本发明的一范例实施例所示出的基于数据量来决定是否编程数据的示意图。请参照图8,假设第一门槛值为16KB。若缓冲存储器510中的数据801(可为第一类数据或第二类数据)的数据量达到16KB,则数据801可被编程至可复写式非易失性存储器模块406。然而,若另一数据(可为第一类数据或第二类数据)中的一部分数据802的数据量达到16KB但另一部分的数据803的数据量(例如4KB)未达16KB,则仅数据802可被编程,数据803须暂时保存于缓冲存储器510中而不被编程。
须注意的是,在前述范例实施例中关于数据量是否大于第一门槛值的判断,是以缓冲存储器510中相同类型的数据的总数据量来与第一门槛值进行比较,而不是以混合类型的数据的总数据量来与第一门槛值进行比较。也就是说,在一范例实施例中,假设缓冲存储器510中的第一类数据的数据量为8KB且第二类数据的数据量为12KB。虽然第一类数据的数据量与第二类数据的数据量的总和(例如20KB)大于第一门槛值(例如16KB),但由于第一类数据的数据量与第二类数据的数据量皆未达到第一门槛值,故缓冲存储器510中的第一类数据与第二类数据皆不会被编程至可复写式非易失性存储器模块406。
在一范例实施例中,存储器管理电路502可将第一类数据缓存于缓冲存储器510中的特定存储空间(亦称为第一存储空间)。在第一类数据缓存于缓冲存储器510的状态下,存储器管理电路502可将第二类数据同时缓存于缓冲存储器510中的另一存储空间(亦称为第二存储空间)并将缓冲存储器510中达到第一门槛值的第二类数据存储至可复写式非易失性存储器模块406。例如,缓冲存储器510中数据量大于第一门槛值的第二类数据可持续基于第二编程模式而编程可复写式非易失性存储器模块406中。须注意的是,第一存储空间与第二存储空间彼此不重叠。因此,缓冲存储器510中的第一类数据与第二类数据可同时存在且不彼此覆写。
在一范例实施例中,在缓冲存储器510中的第一类数据的数据量未达第一门槛值的状态下,若缓冲存储器510中的第二类数据的数据量达到另一门槛值(亦称为第二门槛值),存储器管理电路502可将缓冲存储器510中的第一类数据存储至可复写式非易失性存储器模块406中。换言之,在一范例实施例中,即便缓冲存储器510中的第一类数据的数据量未达第一门槛值,只要缓冲存储器510中的第二类数据的数据量达到第二门槛值,存储器管理电路502即可直接基于第一编程模式将缓冲存储器510中的第一类数据编程至可复写式非易失性存储器模块406中。第二门槛值大于第一门槛值。
图9与图10是根据本发明的一范例实施例所示出的管理缓冲存储器中的数据的示意图。请参照图9,假设第一类数据D(1)先被存储至缓冲存储器510且第一类数据D(1)的数据量(例如4KB)未达第一门槛值TH(1)。之后,第二类数据D(2)开始被接收并且也存储于缓冲存储器510中。在接收第二类数据D(2)的同时,符合写入条件(即数据量大于第一门槛值TH(1)的条件)的第二类数据可持续被存储至可复写式非易失性存储器模块406。
在某一时间点,缓冲存储器510中的第二类数据D(2)的数据量(例如2MB)达到第二门槛值TH(2)。响应于第二类数据D(2)的数据量达到第二门槛值TH(2),对于第一类数据D(1)的数据整理可被触发。响应于第一类数据D(1)的数据整理被触发,缓冲存储器510中的第一类数据D(1)可直接被存储至可复写式非易失性存储器模块406,如图10所示。此时,所存储的第一类数据D(1)可不符合默认的写入条件(即数据量大于第一门槛值TH(1)的条件)。
在图9与图10的范例实施例中,当缓冲存储器510中累积一定量的第二类数据D(2)(而非写满缓冲存储器510)时即触发对于第一类数据D(1)的数据整理,可减少因突然的断电而导致较早接收到的第一类数据D(1)意外遗失的机率。
在一范例实施例中,在触发对于第一类数据D(1)的数据整理后,直到缓冲存储器510中的第一类数据D(1)被完整存储至可复写式非易失性存储器模块406之前,新的第二类数据D(2)可持续被缓存至缓冲存储器510中的未使用空间。但是,在触发对于第一类数据D(1)的数据整理后,直到缓冲存储器510中的第一类数据D(1)被完整存储至可复写式非易失性存储器模块406之前,第二类数据D(2)可被暂停存储至可复写式非易失性存储器模块406中,以避免干扰第一类数据D(1)的存储和/或加速对于第一类数据D(1)的存储。
在一范例实施例中,存储器管理电路502可根据缓冲存储器510的容量(即总容量)决定第二门槛值。例如,存储器管理电路502可根据缓冲存储器510的容量的一半或者其他比例值来决定第二门槛值。以图9为例,假设缓冲存储器510的容量为4MB,则存储器管理电路502可根据缓冲存储器510的容量的一半将第二门槛值TH(2)决定为2MB。
在图9的范例实施例中,在缓冲存储器510中的第一类数据D(1)的数据量未达第一门槛值TH(1)的状态下,若缓冲存储器510中的第二类数据D(2)的数据量也未达第二门槛值TH(2)(即在触发对第一类数据D(1)的数据整理之前),则存储器管理电路502可将第一类数据D(1)保存于缓冲存储器510且不将缓冲存储器510中的第一类数据D(1)存储至可复写式非易失性存储器模块406中。但是,若缓冲存储器510中的第一类数据D(1)的数据量达到第一门槛值TH(1),则存储器管理电路502即可将缓冲存储器510中的第一类数据D(1)存储至可复写式非易失性存储器模块406中。
图11是根据本发明的一范例实施例所示出的管理缓冲存储器中的数据的示意图。请参照图11,在一范例实施例中,在缓冲存储器510中同时保存了第一类数据D(1)与第二类数据D(2)的状态下,若第一类数据D(1)的累积数据量(即总数据量)达到第一门槛值TH(1)(例如16KB),则存储器管理电路502可将缓冲存储器510中的第一类数据D(1)存储至可复写式非易失性存储器模块406中。此时,缓冲存储器510中的第二类数据D(2)的数据量可能未达到第二门槛值TH(2)。
须注意的是,在前述范例实施例中,响应于缓冲存储器510中的第一类数据D(1)本身的数据量达到第一门槛值TH(1),缓冲存储器510中的第一类数据D(1)可被存储至可复写式非易失性存储器模块406。此外,响应于缓冲存储器510中的第二类数据D(2)的数据量达到第二门槛值TH(2),第一类数据D(1)的数据整理也可被触发,以将缓冲存储器510中的第一类数据D(1)存储至可复写式非易失性存储器模块406。藉此,可有效减少因突然的断电而导致较早接收到的第一类数据D(1)意外遗失的机率。
在一范例实施例中,在采用前述范例实施例所提出的数据管理机制后,当存储器存储装置10发生无预警断电时,无论缓冲存储器510中的第一类数据D(1)是否已被存储至可复写式非易失性存储器模块406,缓冲存储器510中可能会遗失的数据的总数据量可以被控制在合理范围,从而提高后续错误处理或电源恢复的执行效率。
图12是根据本发明的一范例实施例所示出的存储器控制方法的流程图。请参照图12,在步骤S1201中,将第一类数据缓存于所述缓冲存储器中的第一存储空间,其中所述第一类数据默认是以第一编程模式存储至可复写式非易失性存储器模块。在步骤S1202中,在所述第一类数据缓存于所述缓冲存储器的状态下,将第二类数据缓存于所述缓冲存储器中的第二存储空间,其中所述第二类数据默认是以第二编程模式存储至所述可复写式非易失性存储器模块,且所述第一编程模式不同于所述第二编程模式。在步骤S1203中,判断第一类数据的数据量是否达到第一门槛值。若第一类数据的数据量达到第一门槛值,在步骤S1204中,将第一类数据存储至可复写式非易失性存储器模块。若第一类数据的数据量未达到第一门槛值,在步骤S1205中,判断第二类数据的数据量是否达到第二门槛值。若第二类数据的数据量达到第二门槛值,在步骤S1206中,将所述缓冲存储器中的所述第一类数据存储至所述可复写式非易失性存储器模块中,其中所述第一门槛值小于所述第二门槛值。此外,若第二类数据的数据量未达到第二门槛值,可回到步骤S1201(或S1202)。
然而,图12中各步骤已详细说明如上,在此便不再赘述。值得注意的是,图12中各步骤可以实作为多个程序码或是电路,本发明不加以限制。此外,图12的方法可以搭配以上范例实施例使用,也可以单独使用,本发明不加以限制。
综上所述,在多种编程模式(例如SLC与QLC)并存的多分流写入的存储器存储装置中,通过监控缓冲存储器中第二类数据的数据量来额外触发对于第一类数据的数据整理,可减少缓冲存储器中早期接收的数据意外遗失的机率和/或降低非预期断电时可能会遗失的总数据量。藉此,可有效提高对于缓存数据的管理效率。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (24)
1.一种存储器控制方法,其特征在于,用于存储器存储装置,其中所述存储器存储装置包括缓冲存储器与可复写式非易失性存储器模块,且所述存储器控制方法包括:
将第一类数据缓存于所述缓冲存储器中的第一存储空间,并且基于所述第一类数据所属的逻辑单元的第一逻辑范围,确定通过第一编程模式将所述第一类数据存储至所述可复写式非易失性存储器模块中;
在所述第一类数据缓存于所述缓冲存储器的状态下,将第二类数据缓存于所述缓冲存储器中的第二存储空间,并且基于所述第二类数据所属的逻辑单元的第二逻辑范围,确定通过第二编程模式将所述第二类数据存储至所述可复写式非易失性存储器模块中,其中所述第一编程模式不同于所述第二编程模式;
判断所述缓冲存储器中的所述第一类数据的数据量是否达到第一门槛值,其中,所述缓冲存储器中的所述第一类数据的数据量是否达到所述第一门槛值的判断结果不影响用于将所述第一类数据存储在所述可复写式非易失性存储器模块中的所述第一编程模式的决定;
判断所述缓冲存储器中的所述第二类数据的数据量是否达到第二门槛值,其中,所述缓冲存储器中的所述第二类数据的数据量是否达到所述第二门槛值的判断结果不影响用于将所述第二类数据存储到所述可复写式非易失性存储器模块中的所述第二编程模式的决定;以及
在所述缓冲存储器中的所述第一类数据的数据量未达第一门槛值的状态下,若所述缓冲存储器中的所述第二类数据的数据量达到第二门槛值,将所述缓冲存储器中的所述第一类数据存储至所述可复写式非易失性存储器模块中,其中所述第一门槛值小于所述第二门槛值。
2.根据权利要求1所述的存储器控制方法,还包括:
从主机***接收写入指令,其中所述写入指令指示存储属于特定逻辑单元的数据;以及
根据所述特定逻辑单元决定所述数据属于所述第一类数据或所述第二类数据。
3.根据权利要求1所述的存储器控制方法,其中所述第一编程模式是用以将P个比特存储于所述可复写式非易失性存储器模块中的单一个存储单元,所述第二编程模式是用以将Q个比特存储于所述可复写式非易失性存储器模块中的单一个存储单元,P与Q皆为正整数,且P不等于Q。
4.根据权利要求3所述的存储器控制方法,其中P小于Q。
5.根据权利要求1所述的存储器控制方法,其中所述第一门槛值对应所述可复写式非易失性存储器模块的基本写入数据单位。
6.根据权利要求1所述的存储器控制方法,还包括:
根据所述缓冲存储器的容量决定所述第二门槛值。
7.根据权利要求1所述的存储器控制方法,还包括:
在所述缓冲存储器中的所述第一类数据的所述数据量未达所述第一门槛值的所述状态下,若所述缓冲存储器中的所述第二类数据的所述数据量未达所述第二门槛值,将所述第一类数据保存于所述缓冲存储器且不将所述缓冲存储器中的所述第一类数据存储至所述可复写式非易失性存储器模块中。
8.根据权利要求1所述的存储器控制方法,还包括:
若所述缓冲存储器中的所述第一类数据的所述数据量达到所述第一门槛值,将所述缓冲存储器中的所述第一类数据存储至所述可复写式非易失性存储器模块中。
9.一种存储器存储装置,其特征在于,包括:
连接接口单元,用以连接至主机***;
可复写式非易失性存储器模块;以及
存储器控制电路单元,连接至所述连接接口单元与所述可复写式非易失性存储器模块,
其中所述存储器控制电路单元用以将第一类数据缓存于缓冲存储器中的第一存储空间,并且基于所述第一类数据所属的逻辑单元的第一逻辑范围,确定通过第一编程模式将所述第一类数据存储至所述可复写式非易失性存储器模块中,
在所述第一类数据缓存于所述缓冲存储器的状态下,所述存储器控制电路单元还用以将第二类数据缓存于所述缓冲存储器中的第二存储空间,并且基于所述第二类数据所属的逻辑单元的第二逻辑范围,确定通过第二编程模式将所述第二类数据存储至所述可复写式非易失性存储器模块中,其中所述第一编程模式不同于所述第二编程模式,
所述存储器控制电路单元还用以判断所述缓冲存储器中的所述第一类数据的数据量是否达到第一门槛值,其中,所述缓冲存储器中的所述第一类数据的数据量是否达到所述第一门槛值的判断结果不影响用于将所述第一类数据存储在所述可复写式非易失性存储器模块中的所述第一编程模式的决定,
所述存储器控制电路单元还用以判断所述缓冲存储器中的所述第二类数据的数据量是否达到第二门槛值,其中,所述缓冲存储器中的所述第二类数据的数据量是否达到所述第二门槛值的判断结果不影响用于将所述第二类数据存储到所述可复写式非易失性存储器模块中的所述第二编程模式的决定,并且
在所述缓冲存储器中的所述第一类数据的数据量未达第一门槛值的状态下,若所述缓冲存储器中的所述第二类数据的数据量达到第二门槛值,所述存储器控制电路单元还用以发送写入指令序列以将所述缓冲存储器中的所述第一类数据存储至所述可复写式非易失性存储器模块中,其中所述第一门槛值小于所述第二门槛值。
10.根据权利要求9所述的存储器存储装置,其中所述存储器控制电路单元还用以从所述主机***接收写入指令,所述写入指令指示存储属于特定逻辑单元的数据,并且
所述存储器控制电路单元还用以根据所述特定逻辑单元决定所述数据属于所述第一类数据或所述第二类数据。
11.根据权利要求9所述的存储器存储装置,其中所述第一编程模式是用以将P个比特存储于所述可复写式非易失性存储器模块中的单一个存储单元,所述第二编程模式是用以将Q个比特存储于所述可复写式非易失性存储器模块中的单一个存储单元,P与Q皆为正整数,且P不等于Q。
12.根据权利要求11所述的存储器存储装置,其中P小于Q。
13.根据权利要求9所述的存储器存储装置,其中所述存储器控制电路单元还用以根据所述缓冲存储器的容量决定所述第二门槛值。
14.根据权利要求9所述的存储器存储装置,其中所述第一门槛值对应所述可复写式非易失性存储器模块的基本写入数据单位。
15.根据权利要求9所述的存储器存储装置,其中在所述缓冲存储器中的所述第一类数据的所述数据量未达所述第一门槛值的所述状态下,若所述缓冲存储器中的所述第二类数据的所述数据量未达所述第二门槛值,所述存储器控制电路单元还用以将所述第一类数据保存于所述缓冲存储器且不将所述缓冲存储器中的所述第一类数据存储至所述可复写式非易失性存储器模块中。
16.根据权利要求9所述的存储器存储装置,其中若所述缓冲存储器中的所述第一类数据的所述数据量达到所述第一门槛值,所述存储器控制电路单元还用以发送另一写入指令序列以将所述缓冲存储器中的所述第一类数据存储至所述可复写式非易失性存储器模块中。
17.一种存储器控制电路单元,其特征在于,用于控制可复写式非易失性存储器模块,所述存储器控制电路单元包括:
主机接口,用以连接至主机***;
存储器接口,用以连接至所述可复写式非易失性存储器模块;
缓冲存储器;以及
存储器管理电路,连接至所述主机接口、所述存储器接口及所述缓冲存储器,
其中所述存储器管理电路用以将第一类数据缓存于所述缓冲存储器中的第一存储空间,并且基于所述第一类数据所属的逻辑单元的第一逻辑范围,确定通过第一编程模式将所述第一类数据存储至所述可复写式非易失性存储器模块中,
在所述第一类数据缓存于所述缓冲存储器的状态下,所述存储器管理电路还用以将第二类数据缓存于所述缓冲存储器中的第二存储空间,并且基于所述第二类数据所属的逻辑单元的第二逻辑范围,确定通过第二编程模式将所述第二类数据存储至所述可复写式非易失性存储器模块中,其中所述第一编程模式不同于所述第二编程模式,
所述存储器管理电路还用以判断所述缓冲存储器中的所述第一类数据的数据量是否达到第一门槛值,其中,所述缓冲存储器中的所述第一类数据的数据量是否达到所述第一门槛值的判断结果不影响用于将所述第一类数据存储在所述可复写式非易失性存储器模块中的所述第一编程模式的决定,
所述存储器管理电路还用以判断所述缓冲存储器中的所述第二类数据的数据量是否达到第二门槛值,其中,所述缓冲存储器中的所述第二类数据的数据量是否达到所述第二门槛值的判断结果不影响用于将所述第二类数据存储到所述可复写式非易失性存储器模块中的所述第二编程模式的决定,并且
在所述缓冲存储器中的所述第一类数据的数据量未达第一门槛值的状态下,若所述缓冲存储器中的所述第二类数据的数据量达到第二门槛值,所述存储器管理电路还用以发送写入指令序列以将所述缓冲存储器中的所述第一类数据存储至所述可复写式非易失性存储器模块中,其中所述第一门槛值小于所述第二门槛值。
18.根据权利要求17所述的存储器控制电路单元,其中所述存储器管理电路还用以从所述主机***接收写入指令,所述写入指令指示存储属于特定逻辑单元的数据,并且
所述存储器管理电路还用以根据所述特定逻辑单元决定所述数据属于所述第一类数据或所述第二类数据。
19.根据权利要求17所述的存储器控制电路单元,其中所述第一编程模式是用以将P个比特存储于所述可复写式非易失性存储器模块中的单一个存储单元,所述第二编程模式是用以将Q个比特存储于所述可复写式非易失性存储器模块中的单一个存储单元,P与Q皆为正整数,且P不等于Q。
20.根据权利要求19所述的存储器控制电路单元,其中P小于Q。
21.根据权利要求17所述的存储器控制电路单元,其中所述存储器管理电路还用以根据所述缓冲存储器的容量决定所述第二门槛值。
22.根据权利要求17所述的存储器控制电路单元,其中所述第一门槛值对应所述可复写式非易失性存储器模块的基本写入数据单位。
23.根据权利要求17所述的存储器控制电路单元,其中在所述缓冲存储器中的所述第一类数据的所述数据量未达所述第一门槛值的所述状态下,若所述缓冲存储器中的所述第二类数据的所述数据量未达所述第二门槛值,所述存储器管理电路还用以将所述第一类数据保存于所述缓冲存储器且不将所述缓冲存储器中的所述第一类数据存储至所述可复写式非易失性存储器模块中。
24.根据权利要求17所述的存储器控制电路单元,其中若所述缓冲存储器中的所述第一类数据的所述数据量达到所述第一门槛值,所述存储器管理电路还用以发送另一写入指令序列以将所述缓冲存储器中的所述第一类数据存储至所述可复写式非易失性存储器模块中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011395835.3A CN112486417B (zh) | 2020-12-03 | 2020-12-03 | 存储器控制方法、存储器存储装置及存储器控制电路单元 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011395835.3A CN112486417B (zh) | 2020-12-03 | 2020-12-03 | 存储器控制方法、存储器存储装置及存储器控制电路单元 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112486417A CN112486417A (zh) | 2021-03-12 |
CN112486417B true CN112486417B (zh) | 2023-07-04 |
Family
ID=74938002
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011395835.3A Active CN112486417B (zh) | 2020-12-03 | 2020-12-03 | 存储器控制方法、存储器存储装置及存储器控制电路单元 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112486417B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113504880B (zh) * | 2021-07-27 | 2024-02-23 | 群联电子股份有限公司 | 存储器缓冲区管理方法、存储器控制电路单元与存储装置 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104583977A (zh) * | 2012-08-23 | 2015-04-29 | 苹果公司 | 主机辅助的存储块的压缩 |
CN106484307A (zh) * | 2015-08-25 | 2017-03-08 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元及存储器存储装置 |
CN106681932A (zh) * | 2016-11-14 | 2017-05-17 | 合肥兆芯电子有限公司 | 存储器管理方法、存储器控制电路单元及存储器存储装置 |
CN106775436A (zh) * | 2015-11-24 | 2017-05-31 | 群联电子股份有限公司 | 数据存取方法、存储器控制电路单元与存储器 |
TWI641948B (zh) * | 2017-07-27 | 2018-11-21 | 群聯電子股份有限公司 | 資料儲存方法、記憶體控制電路單元及記憶體儲存裝置 |
CN208400167U (zh) * | 2017-12-19 | 2019-01-18 | 合肥芯福传感器技术有限公司 | 一种神经网络传感器 |
CN110727403A (zh) * | 2019-09-12 | 2020-01-24 | 华为技术有限公司 | 元数据管理方法及装置 |
CN110879793A (zh) * | 2018-09-05 | 2020-03-13 | 群联电子股份有限公司 | 存储器管理方法、存储器存储装置及存储器控制电路单元 |
CN111143253A (zh) * | 2018-11-02 | 2020-05-12 | 群联电子股份有限公司 | 数据储存方法、存储器控制电路单元以及存储器储存装置 |
CN111399869A (zh) * | 2020-02-28 | 2020-07-10 | 合肥芯碁微电子装备股份有限公司 | 控制直写式曝光机软件升级的方法、控制单元和曝光机 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI479492B (zh) * | 2012-11-20 | 2015-04-01 | Phison Electronics Corp | 記憶體儲存裝置、其記憶體控制器與資料寫入方法 |
TWI650639B (zh) * | 2016-11-07 | 2019-02-11 | 群聯電子股份有限公司 | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 |
JP2018160059A (ja) * | 2017-03-22 | 2018-10-11 | 東芝メモリ株式会社 | メモリコントローラ |
TWI681295B (zh) * | 2017-07-07 | 2020-01-01 | 群聯電子股份有限公司 | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 |
CN107844431B (zh) * | 2017-11-03 | 2022-01-25 | 合肥兆芯电子有限公司 | 映射表更新方法、存储器控制电路单元与存储器存储装置 |
JP2020155052A (ja) * | 2019-03-22 | 2020-09-24 | キオクシア株式会社 | メモリシステムおよび制御方法 |
-
2020
- 2020-12-03 CN CN202011395835.3A patent/CN112486417B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104583977A (zh) * | 2012-08-23 | 2015-04-29 | 苹果公司 | 主机辅助的存储块的压缩 |
CN106484307A (zh) * | 2015-08-25 | 2017-03-08 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元及存储器存储装置 |
CN106775436A (zh) * | 2015-11-24 | 2017-05-31 | 群联电子股份有限公司 | 数据存取方法、存储器控制电路单元与存储器 |
CN106681932A (zh) * | 2016-11-14 | 2017-05-17 | 合肥兆芯电子有限公司 | 存储器管理方法、存储器控制电路单元及存储器存储装置 |
TWI641948B (zh) * | 2017-07-27 | 2018-11-21 | 群聯電子股份有限公司 | 資料儲存方法、記憶體控制電路單元及記憶體儲存裝置 |
CN208400167U (zh) * | 2017-12-19 | 2019-01-18 | 合肥芯福传感器技术有限公司 | 一种神经网络传感器 |
CN110879793A (zh) * | 2018-09-05 | 2020-03-13 | 群联电子股份有限公司 | 存储器管理方法、存储器存储装置及存储器控制电路单元 |
CN111143253A (zh) * | 2018-11-02 | 2020-05-12 | 群联电子股份有限公司 | 数据储存方法、存储器控制电路单元以及存储器储存装置 |
CN110727403A (zh) * | 2019-09-12 | 2020-01-24 | 华为技术有限公司 | 元数据管理方法及装置 |
CN111399869A (zh) * | 2020-02-28 | 2020-07-10 | 合肥芯碁微电子装备股份有限公司 | 控制直写式曝光机软件升级的方法、控制单元和曝光机 |
Also Published As
Publication number | Publication date |
---|---|
CN112486417A (zh) | 2021-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111078149B (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
CN110333770B (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
CN111880749B (zh) | 数据读取方法、存储器存储装置及存储器控制电路单元 | |
CN110879793B (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
CN113885692B (zh) | 存储器效能优化方法、存储器控制电路单元以及存储装置 | |
CN111078146B (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
CN113885808B (zh) | 映射信息记录方法以及存储器控制电路单元与存储装置 | |
CN112051971B (zh) | 数据整并方法、存储器存储装置及存储器控制电路单元 | |
CN110308876B (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
CN112486417B (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
US11960761B2 (en) | Memory control method, memory storage device and memory control circuit unit | |
US20210223981A1 (en) | Data writing method, memory controlling circuit unit and memory storage device | |
CN112445417B (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
CN111831210B (zh) | 存储器管理方法、存储器控制电路单元及存储器存储装置 | |
CN111610937A (zh) | 数据写入方法、存储器存储装置及存储器控制电路单元 | |
CN117632038B (zh) | 损耗平衡方法、存储器存储装置及存储器控制电路单元 | |
CN112015327B (zh) | 数据写入方法、存储器存储装置及存储器控制电路单元 | |
CN114138207B (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
CN113312274B (zh) | 存储器的数据整理方法、存储器存储装置及控制电路单元 | |
CN112053724B (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
CN114115739B (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
CN112347010B (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
CN113220213B (zh) | 数据写入方法、存储器控制电路单元以及存储器存储装置 | |
CN112181859B (zh) | 有效数据合并方法、存储器控制电路单元与存储装置 | |
CN111435287B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |