CN114981784A - 用于控制数据储存装置之方法及相关闪存控制器 - Google Patents
用于控制数据储存装置之方法及相关闪存控制器 Download PDFInfo
- Publication number
- CN114981784A CN114981784A CN202180004607.5A CN202180004607A CN114981784A CN 114981784 A CN114981784 A CN 114981784A CN 202180004607 A CN202180004607 A CN 202180004607A CN 114981784 A CN114981784 A CN 114981784A
- Authority
- CN
- China
- Prior art keywords
- data
- memory
- buffer
- memory portion
- communication interface
- 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
Links
- 230000015654 memory Effects 0.000 title claims abstract description 479
- 238000000034 method Methods 0.000 title claims abstract description 54
- 238000013500 data storage Methods 0.000 title abstract description 91
- 239000000872 buffer Substances 0.000 claims abstract description 134
- 238000004891 communication Methods 0.000 claims description 123
- 238000012937 correction Methods 0.000 claims description 39
- 238000012546 transfer Methods 0.000 claims description 24
- 230000004044 response Effects 0.000 claims description 8
- 230000005055 memory storage Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 16
- 238000005516 engineering process Methods 0.000 description 5
- 230000000052 comparative effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000002356 single layer Substances 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 239000012536 storage buffer Substances 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/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]
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- 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/061—Improving I/O performance
-
- 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
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- 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
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7203—Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7208—Multiple device management, e.g. distributing data over multiple flash devices
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)
- Computer Security & Cryptography (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本申请涉及了一种用于控制一数据储存装置(100)的方法。数据储存装置(100)包括闪存控制器(11)及闪存模块(12)。闪存控制器(11)具有第一缓冲存储器(113)及第二缓冲存储器(114)。存储器模块(12)具有至少第一存储器部分(122)及第二存储器部分(123)。所述方法包括:自主机装置(50)接收第一数据;将第一数据储存于第一缓冲存储器(113)中;将第一数据自第一缓冲存储器(113)传输至闪存模块(12)的第一存储器部分(122);并且将第一数据自第一缓冲存储器(113)传输至主机装置(50)中的主机内存缓冲区(52)。第一数据对应于待写入至第二存储器部分(123)的第二数据的至少一部分。
Description
技术领域
本申请大体上涉及一种数据储存装置、闪存控制器、主机以及一种用于控制数据储存装置、闪存控制器及主机之方法。
背景技术
近年来,归因于内存技术之持续发展,多种携带型或非携带型数据储存装置(例如,通用快闪储存装置(UFS)标准记忆卡、固态磁盘(SSD)及符合UFS或EMMC规范之嵌入式储存装置)广泛地实施于许多应用中。因此,对此等数据储存装置中之内存之访问控制已成为相当热门的话题。
常用NAND闪存主要包含单位阶胞元(SLC)、多位阶胞元(MLC)、三位阶胞元(TLC)及四位阶胞元(QLC)闪存。归因于其较高储存密度及较大内存容量,QLC闪存已逐渐成为NAND闪存之有利组态。
QLC之字线包含四页储存空间。若未充分写入彼等储存空间页,则NAND快闪控制器可能无法自彼等写入页面获得正确数据。更糟糕的是,若QLC之整个区块未经充分写入,则NAND快闪控制器可能无法自彼等写入页面获得正确数据。必须解决此类问题,因为其可能损害数据完整性。
因此,本申请提出一种可解决上述问题之一种数据储存装置、闪存控制器、主机以及一种用于控制数据储存装置、闪存控制器及主机之方法。
发明内容
本申请提出一种用于控制数据储存装置之方法。数据储存装置包括闪存控制器及闪存模块。闪存控制器具有第一缓冲存储器及第二缓冲存储器。存储器模块具有至少第一存储器部分及第二存储器部分。方法包括:自主机装置接收第一数据;将第一数据储存于第一缓冲存储器中;将第一数据自第一缓冲存储器传输至闪存模块之第一存储器部分;并且将第一数据自第一缓冲存储器传输至主机装置中之主机内存缓冲区。第一数据对应于待写入至第二存储器部分之第二数据的至少一部分。
本申请提出一种用于控制具有至少第一存储器部分及第二存储器部分之闪存模块的闪存控制器。闪存控制器包括第一通信接口、第一缓冲存储器以及第二通信接口。第一通信接口经组配以自主机装置接收第一数据。第一缓冲存储器与第一通信接口耦合且经组配以储存第一数据。第二通信接口经组配以将第一数据自第一缓冲存储器传输至闪存模块之第一存储器部分。第一通信接口经进一步组配以将第一数据自第一缓冲存储器传输至主机装置之主机内存缓冲区。第一数据对应于待写入至第二存储器部分之第二数据的至少一部分。
本申请提出一种包括闪存模块及闪存控制器之数据储存装置。闪存模块具有至少第一存储器部分及第二存储器部分。闪存控制器与闪存模块耦合。闪存控制器包括第一通信接口、第一缓冲存储器以及第二通信接口。第一通信接口经组配以自主机装置接收第一数据。第一缓冲存储器与第一通信接口耦合且经组配以储存第一数据。第二通信接口经组配以将第一数据自第一缓冲存储器传输至闪存模块之第一存储器部分。第一通信接口经进一步组配以将第一数据自第一缓冲存储器传输至主机装置之主机内存缓冲区。第一数据对应于待写入至第二存储器部分之第二数据的至少一部分。
本申请提出一种用于控制主机装置之方法。方法包括:经由第一通信接口将第一数据传输至数据储存装置;经由第一通信接口自数据储存装置接收第一数据;并且将所接收之第一数据储存于主机内存缓冲区中。第一数据对应于待写入至数据储存装置之第二数据的至少一部分。
在阅读各种图及图式中所示出之较佳实施例的以下详细描述之后,对于一般熟习此项技术者而言,本申请之目标无疑将变得显而易见。
附图说明
图1示出根据本申请的一些实施例的数据储存装置及主机装置的示意图。
图2示出根据本申请的一些实施例的数据储存装置及主机装置中的写入顺序的示意图。
图3示出根据本申请的一些实施例的用于按写入顺序控制数据储存装置及主机装置的方法的流程图。
图4示出根据本申请的一些实施例的数据储存装置及主机装置中的写入顺序之示意图。
图5示出根据本申请的一些实施例的用于按写入顺序控制数据储存装置及主机装置的方法的流程图。
图6示出根据本申请的一些实施例的数据储存装置及主机装置中的读取顺序之示意图。
图7示出根据本申请的一些实施例的用于按读取顺序控制数据储存装置及主机装置之方法的流程图。
图8示出根据本申请的一些实施例的数据储存装置及主机装置中的读取顺序之示意图。
图9示出根据本申请的一些实施例的用于按读取顺序控制数据储存装置及主机装置之方法的流程图。
具体实施方式
本申请主张2020年10月29日申请之第63/107,420号美国临时专利申请案之优先权,所述专利申请案特此以全文引用之方式并入。
图1示出根据本申请的一些实施例的数据储存装置100及主机装置50的示意图。数据储存装置100可包括携带型或非携带型数据储存装置,例如符合SD/MMC、CF、MS或XD标准之记忆卡、非挥发性(NV)内存装置、闪存装置或固态驱动机(SSD)。主机装置50可包括多功能移动电话、平板计算机、穿戴式装置以及诸如桌面计算机或膝上型计算机之个人计算机。数据储存装置100可经由电线、系统总线或以无线方式与主机装置50通信。数据可在数据储存装置100与主机装置50之间传输。
如图1中所绘示,数据储存装置100可包括存储器控制器11及存储器模块12。存储器控制器11可经由电线、系统总线或以无线方式与存储器模块12通信。存储器控制器11可经组配以存取存储器模块12。存储器模块12可经组配以储存数据。存储器控制器11可包括NV存储器控制器、闪存控制器或类似者。存储器模块12可包括NV存储器模块、闪存模块或类似者。
在一些实施例中,存储器控制器11可将系统操作信息写入至存储器模块12中,系统操作信息例如为独立磁盘冗余数组(RAID)信息、错误校正码(ECC)奇偶校验、对映表、控制旗标等。可在写入数据的任何步骤,例如数据随机化程序或类似者中添加系统操作信息。
如图1中所绘示,存储器控制器11可包括通信接口111、通信接口112、缓冲存储器113、缓冲存储器114、微处理器115以及只读存储器(ROM)115m,其中此等组件可经由总线彼此耦合。
主机装置50可藉由将复数个主机装置命令及对应逻辑地址发送至存储器控制器11来间接存取数据储存装置100中之存储器模块12。存储器控制器11可经由通信接口111接收复数个主机装置命令及逻辑地址。存储器控制器110可将复数个主机装置命令转译成记忆体操作命令,且随后控制存储器模块12对存储器模块12内具有特定实体地址的内存单元或页面执行读取、写入/程序化或抹除。实体地址可对应于逻辑地址。
通信接口111可接收或传输一或多个主机装置命令。通信接口111可接收或传输数据,其中数据可包括一或多个逻辑地址或数据页。通信接口112可接收或传输一或多个记忆体操作命令。通信接口112可接收或传输数据,其中数据可包括一或多个实体地址或数据页。通信接口111可为用于自例如为其中的集成电路的主机装置50至存储器控制器11的微控制器115或缓冲存储器113及114的通信的总线协议。通信接口112可为用于自存储器控制器11至存储器模块12的通信的总线协议。通信接口111或通信接口112可符合特定通信规范(例如,序列先进技术附接(SATA)规范、通用串行总线(USB)规范、周边组件互连标准(PCIE)规范)或符合非挥发性内存标准(NVMe),且可基于此特定通信规范执行通信。通信接口111可为NVMe接口。通信接口112可为快闪接口。
缓冲存储器113可藉由随机存取内存(RAM)实施。缓冲存储器114可藉由随机存取内存(RAM)实施。缓冲存储器113可经组配以储存信息。缓冲存储器113可经组配以储存数据页,或来自主机装置50的主机装置命令。缓冲存储器114可经组配以储存信息。缓冲存储器114可经组配以储存数据页。缓冲存储器113或缓冲存储器114可包括随机存取内存(RAM)。
微处理器115可经组配以执行储存于ROM 115m中的程序码115c以便控制对存储器模块12的存取。应注意,程序码115c亦可储存于缓冲存储器113、缓冲存储器114或任何类型的内存中。
存储器模块12可包括缓冲存储器121及复数个存储器部分12m,此等组件可经由总线彼此耦合。缓冲存储器121可与存储器控制器11,例如通信接口112通信。缓冲器112可经组配以储存来自存储器控制器11的一或多个记忆体操作命令。缓冲器112可经组配以储存包括来自存储器控制器11之实体地址的数据。缓冲器112可经组配以储存数据页。存储器部分12m之数量可大于1。存储器部分可包括但不限于复数个闪存芯片或晶粒。存储器部分12m可包括SLC、MLC、TLC或QLC。举例而言,存储器部分12m中的每一者可包含复数个区块。包含N个字线{WL(0)、WL(1)、WL(2)...WL(N-3)、WL(N-2)、WL(N-1)}的一个区块可被视为复数个区块中的任一者的实例,其中N为正整数。存储器控制器11可藉由使用QLC写入模式将用户数据写入至区块中的一页字线。换言之,QLC的字线可储存四页用户数据。在一些实施例中,存储器控制器11可藉由使用SLC、MLC或TLC写入模式将用户数据写入至区块中的一页字线,且可在完成写入至整个区块之前进行写入数据的验证。在一些实施例中,存储器部分12m中的每一者可充当SLC、MLC、TLC或QLC。存储器模块12可包括微处理器(未绘示),微处理器经组配以布置以SLC、MLC、TLC或QLC操作模式操作之存储器部分12m中的每一者。
存在用于制造存储器模块12的各种技术;例如,其中内存胞元布置于单层中之2D/平面NAND快闪技术,以及其中内存胞元布置于多层中且竖直地堆栈的3D NAND快闪技术。根据一些实施例,存储器模块12可实施为具有单层内存胞元的平面NAND快闪架构。根据一些实施例,存储器模块12可实施为内存胞元竖直地堆栈在多层中的3DNAND快闪架构。
仍参看图1,主机装置50可包括通信接口51及主机储存器缓冲器52。通信接口51可传输一或多个主机装置命令。通信接口51可接收或传输数据,其中数据可包括一或多个逻辑地址或数据页。通信接口51可符合特定通信规范(例如,序列先进技术附接(SATA)规范、通用串行总线(USB)规范、周边组件互连标准(PCIE)规范)或符合非挥发性内存标准(NVMe),且可基于此特定通信规范执行通信。通信接口51可为NVMe接口。
主机储存器缓冲器(HMB)52可为主机装置50(亦即,主机内存)之内部储存器的一部分。HMB 52可具有64兆字节(MB)或128MB或更大之容量。HMB 52可包括随机存取内存(RAM)或只读存储器(ROM)。
HMB 52可提供对主机内存之区块的随机存取,其提供对HMB 52中的所有组件的存取。在数据储存装置侧上,HMB 52可尽可能快速地在系统总线上传送数据,而非尝试使总线带宽优化。在主机侧,HMB 52及通信接口51可提供对内存的低负担存取,其允许对物理内存的高效能存取。
图2示出根据本申请的一些实施例的数据储存装置(例如,数据储存装置100)及主机装置(例如,主机装置50)中的写入顺序的示意图。如以下段落/区段中所论述,揭示于图2的实施例中的操作可在微处理器115执行程序码115c的一或多个码时受其控制。
如图2中所绘示,主机装置50可将数据或主机装置命令传输至数据储存装置100(S11)。数据储存装置100的通信接口111可经组配以自主机装置50接收数据或主机装置命令(S11)。通信接口111可经组配以自主机装置50接收数据D1。数据D1可包括数据页。在替代实施例中,数据D1可包括复数个数据页。通信接口111可经组配以将数据D1传输至缓冲存储器113(S12),缓冲存储器经由例如总线与通信接口111耦合。缓冲存储器113可经组配以储存数据D1。
缓冲存储器113可经组配以将数据D1传输至通信接口112(S21)。通信接口112可经组配以将数据D1传输至缓冲存储器121(S22)。存储器部分12m可包括一或多个存储器部分122及一或多个存储器部分123(亦即,一或多个QLC存储器部分)。存储器部分123可包括SLC或QLC。存储器部分123可包括SLC。换言之,存储器部分122可具有SLC操作模式,且存储器部分123可具有QLC操作模式。缓冲存储器121经由例如总线与存储器部分122及存储器部分123耦合。缓冲存储器121可经组配以将数据D1传输至存储器部分122(S23)。在一些实施例中,通信接口112可经组配以将数据D1自缓冲存储器113传输至存储器部分12m之存储器部分122中的一者。
在一些实施例中,微处理器115可经组配以产生指示将数据D1写入存储器部分122的信号。信号可在数据D1自缓冲存储器113传输至存储器模块12的存储器部分122之后经由通信接口111传输至主机装置50。
缓冲存储器113可经组配以将数据D1传输至通信接口111(S31),且随后通信接口111可经组配以将数据D1传输至通信接口51(S32)。通信接口51可经组配以将数据D1传输至HMB 52(S33)。在一些实施例中,通信接口111可经组配以将数据D1自存储器控制器11的缓冲存储器113传输至主机装置50的HMB 52。
HMB 52可经组配以将数据D1传输至通信接口51(S41),且随后通信接口51可经组配以将数据D1传输至通信接口111(S42)。微处理器115可经组态以藉由例如用错误校正码(ECC)、奇偶校验技术或类似者修改数据D1来产生数据D2。数据D1可对应于数据D2的至少一部分。数据D2可包括复数个数据页。通信接口111可经组配以将数据D2传输至缓冲存储器114(S43)。在一些实施例中,数据D2可经由通信接口111自HMB 52传输至缓冲存储器114。缓冲存储器114可经组配以将数据D2传输至通信接口112(S45)。通信接口112可经组配以将数据D2传输至缓冲存储器121(S46)。缓冲存储器121可经组配以将数据D2传输至存储器部分123中之一者(S47)。在一些实施例中,通信接口112可经组配以将数据D2自缓冲存储器114传输至存储器模块12的存储器部分123中的一者。
在一些实施例中,微处理器115可经组配以产生指示数据D1的抹除的抹除信号。通信接口111可经组配以在数据D2经传输至存储器部分123之后将抹除信号传输至HMB52。在一些实施例中,数据D1自缓冲存储器113至存储器部分12m的存储器部分122的传输速率大于数据D2自缓冲存储器114至存储器模块12的存储器部分123的传输速率。
在一些比较实施例中,存储器控制器可经组态以实施用于将一或多个数据页自主机装置储存至存储器模块之QLC存储器部分的写入操作。然而,QLC之字线包含四页储存空间。QLC之写入操作使用不同感测位准(例如,具有不同偏压之16个感测位准)以界定不同充电状态(例如,16个充电状态),且按顺序执行QLC存储器部分中之每一者的写入操作。若4页储存空间未经完全写入,则QLC可能未储存完整且正确的数据页。当开放字线(open wordline)或急剧功率损耗之问题出现时,若已仅藉由用第一感测位准,例如最高有效位(MSB)写入数据页执行写入操作,则QLC存储器部分可能未储存完整数据页。因此,应储存于存储器模块中之数据页可能丢失或损坏。亦即,存储器控制器仅可在QLC区块经完全写入之后获得写入资料。因此,存储器控制器应保持整个数据区块,直至整个QLC区块已被成功地写入为止。其将占用大量存储器空间。
在本申请中,可实现双重写入操作。数据D1自缓冲存储器113传输至存储器部分122,且对应于数据D1的数据D2自缓冲存储器114传输至存储器部分123。数据D1可在数据D2的写入操作完成于存储器部分123中之前储存于存储器部分122中。存储器控制器11可将存储器部分122的写入操作设定为具有比存储器部分123的写入操作更高的优先权,以确保数据储存装置100的时延。因而,可解决开放字线或急剧功率损耗之问题,且可保持数据储存装置之速度及容量。将数据D1储存于存储器部分122中确保自主机装置50传输至数据储存装置100的数据的完整性,且将第二数据D2储存于存储器部分123中保持存储器模块12的容量。此外,数据D1可在数据D2的写入操作完成于QLC部分123中之前储存于HMB 52中。因而,可解决开放字线或急剧功率损耗之问题。将数据D1储存于HMB 52中确保自主机装置50传输至数据储存装置100之数据的完整性。此外,由于在完成传输数据D2之后可抹除HMB 52中的数据D1,HMB 52的尺寸可能相对较小。
图3示出根据本申请的一些实施例的用于按写入顺序控制数据储存装置(例如,数据储存装置100)及主机装置(例如,主机装置50)的方法的流程图。详细步骤如下:
步骤201:数据储存装置100可自主机装置50接收数据D1。数据D1可包括数据页。在替代实施例中,数据D1可包括复数个数据页。数据D1可经由通信接口111接收。
步骤203:数据储存装置100可将数据D1储存于缓冲存储器113中。数据D1可自通信接口111传输至缓冲存储器113。
步骤205:数据储存装置100可将数据D1自缓冲存储器113传输至存储器模块12之存储器部分122。数据D1可经由通信接口112传输。
步骤207:数据储存装置100可在将数据D1自缓冲存储器113传输至存储器模块12的存储器部分122之后用信号响应主机装置50。信号指示将数据D1写入存储器部分122。信号可经由通信接口111传输。
步骤209:数据储存装置100可将数据D1自缓冲存储器113传输至主机装置50中的HMB 52。数据D1可经由通信接口111传输。
步骤211:数据储存装置100可自HMB 52接收数据D1。此外,若HMB 52中之数据D1不可用,则主机装置50可将针对数据D1的请求传输至数据储存装置100。
步骤213:数据储存装置100可将数据D2储存于缓冲存储器114中。数据D1可对应于数据D2的至少一部分。数据D2可由微处理器115藉由例如用错误校正码(ECC)、奇偶校验技术或类似者修改数据D1而产生。
步骤215:数据储存装置100可将数据D2自缓冲存储器114传输至存储器模块12的存储器部分123。数据D2可经由通信接口112传输。
步骤217:主机装置50可在数据D2经传输至存储器部分123之后自HMB 52抹除数据D1。数据储存装置100可产生抹除信号且经由通信接口111将抹除信号传输至主机装置50。主机装置50可响应于抹除信号而自HMB 52中抹除资料D1。此外,主机装置50可在数据D2成功地写入至数据储存装置100之后将指示数据D1的抹除的抹除信号传输至HMB 52。
熟习此项技术者将自以上申请理解,可调整以上步骤的次序,诸如调整待执行的步骤的次序或添加额外一或多个步骤。
图4示出根据本申请的一些实施例的数据储存装置200及主机装置(例如,主机装置50)中的写入顺序的示意图。如下文所论述,与图4的实施例相关的操作可在微处理器115执行程序码115c的一或多个码时受微处理器控制。
数据储存装置200类似于图1及图2中的数据储存装置100,不同之处在于除存储器控制器11外,数据储存装置200还包括错误校正单元116。错误校正单元116可经由例如总线与通信接口111及缓冲存储器114耦合。数据D1可经由通信接口111自HMB 52传输至错误校正单元116(S43')。错误校正单元116可经组配以响应于数据D1的错误校正而产生数据D2。数据D2可基于所接收之复数个数据D1的错误校正而产生。错误校正单元116可经组配以将数据D2传输至缓冲存储器114(S44)。数据D1的错误校正可包括ECC、奇偶校验技术或类似者。数据D1的错误校正侦测并校正发生于内存中的n个位数据毁损以确保数据完整性。错误校正单元116可为微处理器115的一部分。错误校正单元116可整合于微处理器115中。此外,微处理器115可能够在执行程序码115c时实施错误校正。
在一些比较实施例中,所储存的数据页可自存储器部分直接复制至存储器模块中的另一存储器部分。然而,所储存的数据页可含有已翻转至错误状态之位。所储存之数据页可能不正确且存储器模块可能不能够侦测及校正错误。因此,可出现盲复本的问题。在本申请中,已侦测、校正数据D1,且随后将其转译成资料D2。本申请保证自主机装置50至存储器模块12的数据的完整性。
图5示出根据本申请的一些实施例的用于按写入顺序控制数据储存装置(例如,数据储存装置200)及主机装置(例如,主机装置50)的方法的流程图。
图5的方法的流程图类似于图3的方法的流程图,不同之处在于图5的方法还包括步骤219。在步骤219中,错误校正单元116可基于数据D1的错误校正而产生数据D2。
熟习此项技术者将自以上申请理解,可调整以上步骤的次序,诸如调整待执行的步骤的次序或添加额外一或多个步骤。
图6示出根据本申请的一些实施例的数据储存装置(例如,数据储存装置100或200)及主机装置(例如,主机装置50)中的读取顺序的示意图。如下文所论述,与图6的实施例相关的操作可在微处理器115执行程序码115c的一或多个码时受微处理器控制。
如图6中所绘示,主机装置50可将请求存取或读取操作的主机装置命令发送至存储器模块12(R11)。可藉由通信接口111接收与来自主机装置50的数据D2相关联的读取请求。通信接口111可经组配以将读取请求传输至微处理器115(R12)。微处理器115可经组配以响应于读取请求而发送记忆体操作命令以侦测是否完全写入存储器模块12的存储器部分123(R13/R14)。存储器模块12可经组配以提供关于存储器部分123的状态的反馈,其中数据D2经指定以由微处理器115储存(F11/F12)。微处理器115可经组配以响应于存储器部分123的状态而发送内存装置命令以存取存储器模块12(R21/R22)。若存储器模块12的存储器部分123未经完全写入,则数据D1经由通信接口112自存储器部分122传输至存储器控制器11(F21/F22/F23)。若存储器模块12的存储器部分12m的存储器部分123经完全写入,则数据D2可经由通信接口112自存储器部分123传输至存储器控制器11(F21'/F22/F23)。微处理器115可经组配以依据存储器部分123的状态而经由通信接口111将数据D1或数据D2传输至主机装置50。因而,当存储器部分123尚未完全写入时,存储器控制器11可存取存储器部分122中的数据D1,使得可解决开放字线之问题(亦即读取不完整数据页)。当存储器部分122已接收到四个SLC数据块或存储器部分123与数据D2一起完全写入时,存储器控制器11可存取数据D2。同时,存储器控制器11可抹除存储器部分122中的数据D1。
图7示出根据本申请的一些实施例的用于按读取顺序控制数据储存装置(例如,数据储存装置100或数据储存装置200)及主机装置(例如,主机装置50)的方法的流程图。
熟习此项技术者将自以上申请理解,可调整以上步骤的次序,诸如调整待执行的步骤的次序或添加额外一或多个步骤。详细步骤如下:
步骤401:数据储存装置100可自主机装置50接收与数据D2相关联的读取请求。
步骤403:数据储存装置100可判定存储器模块12的存储器部分123是否完全写入。若存储器部分123经完全写入,则流程图继续进行至步骤405。若未完全写入,则流程图继续进行至步骤407。
步骤405:数据储存装置100可将数据D2自存储器模块12的存储器部分123传输至主机装置50。
步骤407:数据储存装置100可将数据D1自存储器模块12的存储器部分122传输至主机装置50。
熟习此项技术者将自以上申请理解,可调整以上步骤的次序,诸如调整待执行的步骤的次序或添加额外一或多个步骤。
图8示出根据本申请的一些实施例的数据储存装置(例如,数据储存装置100或200)及主机装置(例如,主机装置50)中的阅读顺序的示意图。如下文所论述,与图8的实施例相关的操作可在微处理器115执行程序码116c的一或多个码时受微处理器控制。
如图8中所绘示,主机装置50可将请求存取或读取操作的主机装置命令发送至存储器模块12(R11)。可藉由通信接口接收与来自主机装置50的数据D2相关联的读取请求。通信接口111可经组配以将读取请求传输至微处理器115(R12)。微处理器115可经组配以响应于读取请求而发送记忆体操作命令以侦测是否完全写入存储器模块12的存储器部分123(R13/R14)。存储器模块12可经组配以提供关于存储器部分123的状态的反馈,其中数据D2经指定以由微处理器115储存(F11/F12)。若存储器模块12的存储器部分123未经完全写入,则存储器控制器11可经组配以经由通信接口111向HMB 52发送存取请求(R31/R32/R33)。可自HMB 52读取数据D1以用于主机装置50(F31)。
图9示出根据本申请的一些实施例的用于按阅读顺序控制数据储存装置(例如,数据储存装置100或数据储存装置200)及主机装置(例如,主机装置50)的方法的流程图。
图9的方法的流程图类似于图8的方法的流程图,不同之处在于步骤407被替换为步骤409。在步骤409中,若存储器部分123未与数据D2一起完全写入,则主机装置50可在接收到与数据D2相关联的请求后存取HMB 52中的数据D1。
习此项技术者将自以上申请理解,可调整以上步骤的次序,诸如调整待执行之步骤的次序或添加额外一或多个步骤。
可使用以下条项进一步描述本申请:
1.一种用于控制内存储存装置的方法,所述内存储存装置包含:
闪存控制器,其具有第一缓冲存储器及第二缓冲存储器;以及
闪存模块,其具有至少第一存储器部分及第二存储器部分,
方法包含:
自主机装置接收第一数据;
将第一数据储存于第一缓冲存储器中;
将第一数据自第一缓冲存储器传输至闪存模块的第一存储器部分;并且
将第一数据自第一缓冲存储器传输至主机装置中的主机内存缓冲区,
其中第一数据对应于待写入至第二存储器部分的第二数据的至少一部分。
2.如条项1的方法,其进一步包含:
自HMB接收第一数据;
基于第一数据的错误校正而产生第二数据;
将第二数据储存于第二缓冲存储器中;并且
将第二数据自第二缓冲存储器传输至闪存模块的第二存储器部分。
3.如条项2的方法,其中第二数据系基于所接收的复数个第一数据的错误校正而产生。
4.如条项2的方法,其中第一数据自第一缓冲存储器至第一存储器部分的传输速率大于第二数据自第二缓冲存储器至第二存储器部分的传输速率。
5.如条项2的方法,其进一步包含:
在第二数据经传输至第二存储器部分之后,自主机内存缓冲区中抹除第一数据。
6.如条项1的方法,其进一步包含:
自主机装置接收与第二数据相关联的读取请求;并且
若闪存模块的第二存储器部分经完全写入,则将第二数据自第二存储器部分传输至主机装置;
若闪存模块的第二存储器部分未经完全写入,则将第一数据自闪存模块的第一存储器部分传输至主机装置。
7.如条项3的方法,其中第一数据报括数据页,且第二数据报括复数个资料页。
8.如条项1的方法,其进一步包含:
在第一数据自第一缓冲存储器传输至闪存模块的第一存储器部分之后,用第一信号响应主机装置,
其中第一信号指示将第一数据写入第一存储器部分。
9.如条项1的方法,其中第一存储器部分具有第一操作模式,且第二存储器部分具有第二操作模式,其中第一操作模式不同于第二操作模式。
10.如条项9的方法,其中第一存储器部分包含四位阶胞元(QLC)或单位阶胞元,且第二存储器部分包含QLC。
11.一种用于控制具有至少第一存储器部分及第二存储器部分的闪存模块的闪存控制器,所述闪存控制器包含:
第一通信接口,其经组配以自主机装置接收第一数据;
第一缓冲存储器,其与第一通信接口耦合且经组配以储存第一数据;
第二通信接口,其经组配以将第一数据自第一缓冲存储器传输至闪存模块的第一存储器部分;
其中第一通信接口经进一步组配以将第一数据自第一缓冲存储器传输至主机装置的主机内存缓冲区;以及
其中第一数据对应于待写入至第二存储器部分的第二数据的至少一部分。
12.如条项11的闪存控制器,其进一步包含:
错误校正单元,其与第一通信接口耦合,其中第一数据经由第一通信接口自主机内存缓冲区传输至错误校正单元,且其中错误校正单元经组配以响应于第一数据的错误校正而产生第二数据;以及
第二缓冲存储器,其与错误校正单元及第二通信接口耦合,其中第二缓冲存储器经组配以储存第二数据,
其中第二通信接口经进一步组配以将第二数据自第二缓冲存储器传输至闪存模块的第二存储器部分。
13.如条项12的闪存控制器,其中第二数据系基于所接收的复数个第一数据之错误校正而产生。
14.如条项12的闪存控制器,其中第一数据自第一缓冲存储器至第一存储器部分的传输速率大于第二数据自第二缓冲存储器至第二存储器部分的传输速率。
15.如条项12的闪存控制器,其中第一通信接口经进一步组配以在第二数据经传输至第二存储器部分之后将指示第一数据的抹除的抹除信号传输至主机内存缓冲区。
16.如条项11的闪存控制器,其中在藉由第一通信接口自主机装置接收与第二数据相关联的读取请求后:
若闪存模块的第二存储器部分经完全写入,则第二数据自第二存储器部分传输至主机装置;
若闪存模块的第二存储器部分未经完全写入,则第一数据经由第二通信接口自第一存储器部分传输至主机装置。
17.如条项11的闪存控制器,其中第一数据报括数据页,且第二数据报括复数个资料页。
18.如条项11的闪存控制器,其中
在第一数据自第一缓冲存储器传输至闪存模块的第一存储器部分之后,第一信号经由第一通信接口传输至主机装置,
其中第一信号指示将第一数据写入第一存储器部分。
19.如条项1的闪存控制器,其中第一存储器部分具有第一操作模式,且第二存储器部分具有第二操作模式,其中第一操作模式不同于第二操作模式。
20.如条项19的闪存控制器,其中第一存储器部分包含QLC或SLC,且第二存储器部分包含QLC。
21.如条项11的闪存控制器,其中第一通信接口为非挥发性内存标准(NVMe)接口。
22.如条项12的闪存控制器,其中第二通信接口为快闪接口。
23.一种数据储存装置,其包含:
闪存模块,其具有至少第一存储器部分及第二存储器部分;
与闪存模块耦合之闪存控制器,闪存控制器包含:
第一通信接口,其经组配以自主机装置接收第一数据,
第一缓冲存储器,其与第一通信接口耦合且经组配以储存第一数据,以及
第二通信接口,其经组配以将第一数据自第一缓冲存储器传输至闪存模块的第一存储器部分;
其中第一通信接口经进一步组配以将第一数据自第一缓冲存储器传输至主机装置之主机内存缓冲区,
其中第一数据对应于待写入至第二存储器部分的第二数据的至少一部分。
24.如条项23的数据储存装置,其中闪存控制器进一步包含:
错误校正单元,其与第一通信接口耦合,其中第一数据经由第一通信接口自主机内存缓冲区传输至错误校正单元,且其中错误校正单元经组配以响应于第一数据的错误校正而产生第二数据;以及
第二缓冲存储器,其与错误校正单元及第二通信接口耦合,其中第二缓冲存储器经组配以储存第二数据,
其中第二通信接口经进一步组配以将第二数据自第二缓冲存储器传输至闪存模块的第二存储器部分。
25.如条项24的数据储存装置,其中第二数据系基于所接收的复数个第一数据的错误校正而产生。
26.如条项24的数据储存装置,其中第一数据自第一缓冲存储器至第一存储器部分的传输速率大于第二数据自第二缓冲存储器至第二存储器部分的传输速率。
27.如条项24的数据储存装置,其中第一通信接口经进一步组配以在第二数据经传输至第二存储器部分之后将指示第一数据的抹除的抹除信号传输至主机内存缓冲区。
28.如条项23的数据储存装置,其中在藉由第一通信接口自主机装置接收与第二数据相关联的读取请求后:
若闪存模块的第二存储器部分经完全写入,则第二数据自第二存储器部分传输至主机装置;
若闪存模块的第二存储器部分未经完全写入,则第一数据自第一存储器部分传输至主机装置。
29.如条项23的数据储存装置,其中第一数据报括数据页,且第二数据报括复数个资料页。
30.如条项23的数据储存装置,其中
在第一数据自第一缓冲存储器传输至闪存模块的第一存储器部分之后,第一信号经由第一通信接口传输至主机装置,
其中第一信号指示将第一数据写入第一存储器部分。
31.如条项23的数据储存装置,其中第一存储器部分具有第一操作模式,且第二存储器部分具有第二操作模式,其中第一操作模式不同于第二操作模式。
32.如条项31的数据储存装置,其中第一存储器部分包含QLC或SLC,且第二存储器部分包含QLC。
33.如条项23的数据储存装置,其中第一通信接口为非挥发性内存标准(NVMe)接口。
34.如条项23的数据储存装置,其中第二通信接口为快闪接口。
35.一种用于控制主机装置的方法,其包含:
经由第一通信接口将第一数据传输至数据储存装置;
经由第一通信接口自数据储存装置接收第一数据;以及
将所接收的第一数据储存于主机内存缓冲区中,
其中第一数据对应于待写入至数据储存装置的第二数据的至少一部分。
36.如条项35的方法,其进一步包含在第二数据成功地写入至数据储存装置之后将指示第一数据的抹除的抹除信号传输至主机内存缓冲区。
37.如条项35的方法,其进一步包含若第二数据未经完全写入,则在接收到与第二数据相关联的请求后存取主机内存缓冲区中之第一数据。
38.如条项37的方法,其进一步包含若主机内存缓冲区中之第一数据不可用,则将针对第一数据的请求传输至数据储存装置。
应注意,以上揭示内容系出于说明之目的且不应被视为限制本申请。熟习此项技术者将容易地观测到,可在保留本申请的教示的同时进行装置及方法的许多修改及变更。因此,上述揭示内容应被解释为仅受所附申请专利范围之边界及界限限制。
Claims (20)
1.一种用于控制一内存储存装置的方法,所述内存储存装置包含:
闪存控制器,其具有第一缓冲存储器及第二缓冲存储器;以及
闪存模块,其具有至少第一存储器部分及第二存储器部分,
所述方法包含:
自主机装置接收第一数据;
将所述第一数据储存于所述第一缓冲存储器中;
将所述第一数据自所述第一缓冲存储器传输至所述闪存模块的所述第一存储器部分;且
将所述第一数据自所述第一缓冲存储器传输至所述主机装置中的主机内存缓冲区(HMB),
其中所述第一数据对应于待写入至所述第二存储器部分的第二数据的至少一部分。
2.根据权利要求1所述的方法,其进一步包含:
自所述HMB接收所述第一数据;
基于所述第一数据的错误校正而产生所述第二数据;
将所述第二数据储存于所述第二缓冲存储器中;且
将所述第二数据自所述第二缓冲存储器传输至所述闪存模块的所述第二存储器部分。
3.根据权利要求2所述的方法,其中所述第二数据系基于所接收的复数个第一数据的错误校正而产生。
4.根据权利要求2所述的方法,其中所述第一数据自所述第一缓冲存储器至所述第一存储器部分的传输速率大于所述第二数据自所述第二缓冲存储器至所述第二存储器部分的传输速率。
5.根据权利要求2所述的方法,其进一步包含:
在所述第二数据经传输至所述第二存储器部分之后,自所述主机内存缓冲区抹除所述第一数据。
6.根据权利要求1所述的方法,其进一步包含:
自所述主机装置接收与所述第二数据相关联的读取请求;且
若所述闪存模块的所述第二存储器部分经完全写入,则将所述第二数据自所述第二存储器部分传输至所述主机装置;
若所述闪存模块的所述第二存储器部分未经完全写入,则将所述第一数据自所述闪存模块的所述第一存储器部分传输至所述主机装置。
7.根据权利要求3所述的方法,其中所述第一数据包含数据页,且所述第二数据包含复数个数据页。
8.根据权利要求1所述的方法,其进一步包含:
在所述第一数据自所述第一缓冲存储器传输至所述闪存模块的所述第一存储器部分之后,用第一信号响应所述主机装置,
其中所述第一信号指示将所述第一数据写入所述第一存储器部分。
9.根据权利要求1所述的方法,其中所述第一存储器部分具有第一操作模式,且所述第二存储器部分具有第二操作模式,其中所述第一操作模式不同于所述第二操作模式。
10.根据权利要求9所述的方法,其中所述第一存储器部分包含四位阶胞元(QLC)或单位阶胞元,且所述第二存储器部分包含QLC。
11.一种用于控制闪存模块的闪存控制器,所述闪存模块具有至少第一存储器部分及第二存储器部分的,所述闪存控制器包含:
第一通信接口,其经组配以自主机装置接收第一数据;
第一缓冲存储器,其与所述第一通信接口耦合且经组配以储存所述第一数据;
第二通信接口,其经组配以将所述第一数据自所述第一缓冲存储器传输至所述闪存模块的所述第一存储器部分;
其中所述第一通信接口经进一步组配以将所述第一数据自所述第一缓冲存储器传输至所述主机装置的主机内存缓冲区;及
其中所述第一数据对应于待写入至所述第二存储器部分的第二数据的至少一部分。
12.根据权利要求11所述的闪存控制器,其进一步包含:
错误校正单元,其与所述第一通信接口耦合,其中所述第一数据经由所述第一通信接口自所述主机内存缓冲区传输至所述错误校正单元,且其中所述错误校正单元经组配以响应于所述第一数据的错误校正而产生所述第二数据;以及
第二缓冲存储器,其与所述错误校正单元及所述第二通信接口耦合,其中所述第二缓冲存储器经组配以储存所述第二数据,
其中所述第二通信接口经进一步组配以将所述第二数据自所述第二缓冲存储器传输至所述闪存模块的所述第二存储器部分。
13.根据权利要求12所述的闪存控制器,其中所述第二数据系基于所接收的复数个第一数据的错误校正而产生。
14.根据权利要求12所述的闪存控制器,其中所述第一数据自所述第一缓冲存储器至所述第一存储器部分的一传输速率大于所述第二数据自所述第二缓冲存储器至所述第二存储器部分的传输速率。
15.根据权利要求12所述的闪存控制器,其中所述第一通信接口经进一步组配以在所述第二数据经传输至所述第二存储器部分之后将指示所述第一数据的抹除的抹除信号传输至所述主机内存缓冲区。
16.根据权利要求11所述的闪存控制器,其中在藉由所述第一通信接口自所述主机装置接收与所述第二数据相关联的读取请求后:
若所述闪存模块的所述第二存储器部分经完全写入,则所述第二数据自所述第二存储器部分传输至所述主机装置;
若所述闪存模块的所述第二存储器部分未经完全写入,则所述第一数据经由所述第二通信接口自所述第一存储器部分传输至所述主机装置。
17.根据权利要求11所述的闪存控制器,其中所述第一数据包含数据页,且所述第二数据包含复数个数据页。
18.根据权利要求11所述的闪存控制器,其中
在所述第一数据自所述第一缓冲存储器传输至所述闪存模块的所述第一存储器部分之后,第一信号经由所述第一通信接口传输至所述主机装置,
其中所述第一信号指示将所述第一数据写入所述第一存储器部分。
19.根据权利要求11所述的闪存控制器,其中所述第一存储器部分具有第一操作模式,且所述第二存储器部分具有第二操作模式,其中所述第一操作模式不同于所述第二操作模式。
20.根据权利要求19所述的闪存控制器,其中所述第一存储器部分包含QLC或SLC,且所述第二存储器部分包含QLC。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063107420P | 2020-10-29 | 2020-10-29 | |
US63/107,420 | 2020-10-29 | ||
PCT/CN2021/121572 WO2022089138A1 (en) | 2020-10-29 | 2021-09-29 | Methods for controlling data storage device, and associated flash memory controller |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114981784A true CN114981784A (zh) | 2022-08-30 |
Family
ID=78821826
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180004607.5A Pending CN114981784A (zh) | 2020-10-29 | 2021-09-29 | 用于控制数据储存装置之方法及相关闪存控制器 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11630604B2 (zh) |
EP (1) | EP4014121A4 (zh) |
CN (1) | CN114981784A (zh) |
WO (1) | WO2022089138A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11733914B2 (en) * | 2021-10-29 | 2023-08-22 | Western Digital Technologies, Inc. | Direct write operation for quad-level cell based data storage devices |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130060990A1 (en) * | 2011-09-06 | 2013-03-07 | Phison Electronics Corp. | Data moving method for flash memory module, and memory controller and memory storage apparatus using the same |
US20150355965A1 (en) * | 2013-03-07 | 2015-12-10 | Charles I. Peddle | High speed flash controllers |
US20180253240A1 (en) * | 2017-03-01 | 2018-09-06 | Seagate Technology Llc | Open block handling to reduce write errors |
US20200012595A1 (en) * | 2018-07-09 | 2020-01-09 | Western Digital Technologies, Inc. | Buffering storage device data in a host memory buffer |
WO2020154352A1 (en) * | 2019-01-23 | 2020-07-30 | Thstyme Bermuda Limited | Solid state drive architectures |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9152496B2 (en) | 2007-12-21 | 2015-10-06 | Cypress Semiconductor Corporation | High performance flash channel interface |
US9252810B2 (en) * | 2014-02-20 | 2016-02-02 | Kabushiki Kaisha Toshiba | Memory system and method of controlling memory system |
US10521118B2 (en) * | 2016-07-13 | 2019-12-31 | Sandisk Technologies Llc | Methods, systems, and computer readable media for write classification and aggregation using host memory buffer (HMB) |
US10360156B2 (en) | 2016-08-04 | 2019-07-23 | Samsung Electronics Co., Ltd. | Data storage device using host memory and method of operating same |
JP6967959B2 (ja) * | 2017-12-08 | 2021-11-17 | キオクシア株式会社 | メモリシステムおよび制御方法 |
US10831379B2 (en) * | 2018-10-30 | 2020-11-10 | Western Digital Technologies, Inc. | Method for enhancing SSD endurance by utilizing host DRAM |
KR102599176B1 (ko) | 2018-11-14 | 2023-11-08 | 삼성전자주식회사 | 호스트 메모리 버퍼를 사용하는 스토리지 장치 및 그것의 메모리 관리 방법 |
-
2021
- 2021-09-29 US US17/489,088 patent/US11630604B2/en active Active
- 2021-09-29 WO PCT/CN2021/121572 patent/WO2022089138A1/en unknown
- 2021-09-29 EP EP21810266.3A patent/EP4014121A4/en not_active Withdrawn
- 2021-09-29 CN CN202180004607.5A patent/CN114981784A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130060990A1 (en) * | 2011-09-06 | 2013-03-07 | Phison Electronics Corp. | Data moving method for flash memory module, and memory controller and memory storage apparatus using the same |
US20150355965A1 (en) * | 2013-03-07 | 2015-12-10 | Charles I. Peddle | High speed flash controllers |
US20180253240A1 (en) * | 2017-03-01 | 2018-09-06 | Seagate Technology Llc | Open block handling to reduce write errors |
US20200012595A1 (en) * | 2018-07-09 | 2020-01-09 | Western Digital Technologies, Inc. | Buffering storage device data in a host memory buffer |
WO2020154352A1 (en) * | 2019-01-23 | 2020-07-30 | Thstyme Bermuda Limited | Solid state drive architectures |
Also Published As
Publication number | Publication date |
---|---|
WO2022089138A1 (en) | 2022-05-05 |
EP4014121A4 (en) | 2023-08-30 |
US20220137874A1 (en) | 2022-05-05 |
US11630604B2 (en) | 2023-04-18 |
EP4014121A1 (en) | 2022-06-22 |
TW202217574A (zh) | 2022-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11488648B2 (en) | Data storage device and operating method thereof | |
US10249383B2 (en) | Data storage device and operating method thereof | |
US10102059B2 (en) | Data storage device capable of preventing a data retention fail of a nonvolatile memory device and operating method thereof | |
US8812784B2 (en) | Command executing method, memory controller and memory storage apparatus | |
CN107957959B (zh) | 具有文件级安全擦除的存储器系统及其操作方法 | |
US8902671B2 (en) | Memory storage device, memory controller thereof, and method for programming data thereof | |
KR20150044753A (ko) | 데이터 저장 장치의 동작 방법 | |
US11704048B2 (en) | Electronic device | |
CN112542201A (zh) | 存储设备及操作该存储设备的方法 | |
CN113885808B (zh) | 映射信息记录方法以及存储器控制电路单元与存储装置 | |
US11630604B2 (en) | Methods for controlling data storage device, and associated flash memory controller | |
US11726871B2 (en) | Storage controller for selecting a gear level of a storage device and storage system including the same | |
US11586379B2 (en) | Memory system and method of operating the same | |
US20220276802A1 (en) | Nonvolatile memory device, memory controller, and reading method of storage device including the same | |
US9778864B2 (en) | Data storage device using non-sequential segment access and operating method thereof | |
US20210278994A1 (en) | Data storage device and data processing method | |
TWI840703B (zh) | 用於控制資料儲存裝置之方法及相關快閃記憶體控制器 | |
KR20210156010A (ko) | 저장 장치 및 그 동작 방법 | |
CN113568565B (zh) | 存储器控制器及其操作方法 | |
US11954347B2 (en) | Memory system and operating method thereof | |
US11782644B2 (en) | Memory system and method of operating the same | |
US20220171707A1 (en) | Storage device and operating method thereof | |
CN106326131B (zh) | 存储器管理方法、存储器控制电路单元及存储器存储装置 | |
CN114637630A (zh) | 异常断电恢复方法、存储器控制器及存储器存储装置 | |
CN116246681A (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 |