CN110890113A - 存储设备及其操作方法 - Google Patents
存储设备及其操作方法 Download PDFInfo
- Publication number
- CN110890113A CN110890113A CN201910680939.XA CN201910680939A CN110890113A CN 110890113 A CN110890113 A CN 110890113A CN 201910680939 A CN201910680939 A CN 201910680939A CN 110890113 A CN110890113 A CN 110890113A
- Authority
- CN
- China
- Prior art keywords
- memory device
- volatile memory
- block
- storage
- power
- 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
- 238000000034 method Methods 0.000 title claims abstract description 20
- 239000000725 suspension Substances 0.000 claims abstract description 44
- 230000004044 response Effects 0.000 claims abstract description 11
- 230000015654 memory Effects 0.000 claims description 234
- 238000013508 migration Methods 0.000 claims description 12
- 230000005012 migration Effects 0.000 claims description 12
- 238000013507 mapping Methods 0.000 claims description 11
- 238000012937 correction Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 4
- 238000011017 operating method Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 26
- 101100481704 Arabidopsis thaliana TMK3 gene Proteins 0.000 description 19
- 101100481703 Arabidopsis thaliana TMK2 gene Proteins 0.000 description 17
- 101100481702 Arabidopsis thaliana TMK1 gene Proteins 0.000 description 16
- 238000013519 translation Methods 0.000 description 11
- 239000003990 capacitor Substances 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 101000711846 Homo sapiens Transcription factor SOX-9 Proteins 0.000 description 2
- 101100232371 Hordeum vulgare IAT3 gene Proteins 0.000 description 2
- 102100034204 Transcription factor SOX-9 Human genes 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 229910052715 tantalum Inorganic materials 0.000 description 2
- GUVRBAGPIYLISA-UHFFFAOYSA-N tantalum atom Chemical compound [Ta] GUVRBAGPIYLISA-UHFFFAOYSA-N 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/14—Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
- G11C5/141—Battery and back-up supplies
-
- 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
- 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/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
-
- 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0625—Power saving in storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- 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/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/52—Protection of memory contents; Detection of errors in memory contents
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/14—Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
- G11C5/148—Details of power up or power down circuits, standby circuits or recovery circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0411—Online error correction
-
- 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)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Power Engineering (AREA)
- Computer Security & Cryptography (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
提供了一种包括第一非易失性存储器设备和第二非易失性存储器设备的存储设备及其操作方法。该方法包括:检测突然断电;响应于检测到的突然断电,暂停第一非易失性存储器设备中正在执行的操作;将关于所暂停操作的暂停信息写入第二非易失性存储器设备;并且在突然断电之后的通电时,基于写入第二非易失性存储器设备的暂停信息,对第一非易失性存储器设备执行块管理操作。
Description
相关申请的交叉引用
本申请要求向韩国知识产权局于2018年8月21日提交的韩国专利申请No.10-2018-0097281和于2018年12月6日提交的韩国专利申请No.10-2018-0156245的优先权,其全部公开内容通过引用的方式并入本文中。
技术领域
本发明构思的实施例涉及半导体存储器,并且更具体地涉及一种存储设备及其操作方法。
背景技术
半导体存储器设备分类为存储数据在电力关闭时会消失的易失性存储器设备,比如静态随机存取存储器(SRAM)或动态随机存取存储器(DRAM),或者即使在电力关闭时存储数据也能得到保留的非易失性存储器设备,比如闪存设备,相变RAM(PRAM)、磁性RAM(MRAM)、电阻RAM(RRAM)或铁电RAM(FRAM)。
基于闪存的高容量存储设备通过外部电力操作。在这种情况下,如果在存储设备操作期间发生了突然断电(SPO),那么,存储设备通过使用单独的辅助电源(如超级电容器或钽电容器)来完成存储设备中正在执行的操作(例如,编程操作或擦除操作)。然而,由于完成存储设备正在执行的操作要花费大量的时间,因此需要高容量的辅助电源,由此造成存储设备的面积及成本的增加。
发明内容
本发明构思的实施例提供了一种能够使用缩减的辅助电源来应对突然断电的存储设备及其操作方法。
根据一些示例性实施例,一种包括第一非易失性存储器设备和第二非易失性存储器设备的存储设备的操作方法包括:检测突然断电;响应于检测的突然断电,暂停在第一非易失性存储器设备中正在执行的操作;将关于所暂停操作的暂停信息写入第二非易失性存储器设备;并且在突然断电之后的通电时,基于写入第二非易失性存储器设备的暂停信息,对第一非易失性存储器设备执行块管理操作。
根据一些示例性实施例,一种存储设备包括:第一非易失性存储器设备,存储用户数据;第二非易失性存储器设备,存储关于第一非易失性存储器设备的操作的操作信息;以及存储控制器,在发生突然断电时暂停在第一非易失性存储器设备中正在执行的操作,在存储在第二非易失性存储器设备中的操作信息之中与所暂停操作对应的操作信息中写入突然断电标志,并且在突然断电之后的通电时,基于写入第二非易失性存储器设备的突然断电标志,对第一非易失性存储器设备执行块管理操作。
根据一些示例性实施例,一种存储设备包括:第一非易失性存储器设备;第二非易失性存储器设备,临时存储待存储到第一非易失性存储器设备的用户数据;以及存储控制器,在突然断电时暂停在第一非易失性存储器设备中执行的操作,对于临时存储在第二非易失性存储器设备中的用户数据之中未存储在第一非易失性存储器设备中的数据,写入突然断电标志,并且在突然断电之后的通电时,基于写入第二非易失性存储器设备的突然断电标志,执行未存储在第一非易失性存储器设备中的数据从第二非易失性存储器设备到第一非易失性存储器设备的迁移。
附图说明
参考附图,通过详细地描述本发明构思的示例性实施例,本发明构思的上述及其他目的和特征将变得显而易见。
图1是示出了根据本发明构思的一些示例性实施例的存储系统的框图。
图2是示出了图1的存储系统的软件层的框图。
图3是示出了图1的存储控制器的框图。
图4是示出了图1的存储设备的操作的流程图。
图5是示出了图4的操作S160的流程图。
图6A至图6C是描述了根据图4和图5的流程图的存储设备的操作的示图。
图7A和图7B是描述了根据在擦除操作之前执行验证操作的方式的擦除操作的示图。
图8A和图8B是示出了将暂停信息写入第二非易失性存储器设备的操作的时序图。
图9、图10A和图10B是描述了根据本发明构思的一些示例性实施例的存储设备的操作的示图。
图11是示出了根据本发明构思的一些示例性实施例的存储系统的框图。
图12是示出了根据本发明构思的一些示例性实施例的存储系统的框图。
图13是示出了图12的存储设备的操作的流程图。
图14A至图14C是描述了根据图13的流程图的操作的示图。
图15是示出了根据本发明构思的一些示例性实施例的存储系统的框图。
图16是示出了根据本发明构思的一些示例性实施例的存储系统的框图。
图17是示出了根据本发明构思的一些示例性实施例的存储系统的框图。
具体实施方式
在下文中,可以详细且清楚地描述本发明构思的一些示例性实施例,使得本领域的普通技术人员能够容易地实现本发明构思。
图1是示出了根据本发明构思的一些示例性实施例的存储系统的框图。参考图1,存储系统10可以包括主机11和存储设备100。存储系统10可以是计算系统,诸如个人计算机、服务器、工作站、笔记本、数码相机和/或智能手机。存储设备100可以用作存储系统10的高容量存储介质。
主机11可以将数据存储到存储设备100或者可以读取存储在存储设备100中的数据。在一些示例性实施例中,主机11可以向存储设备100提供电力PWR。
存储设备100可以包括存储控制器110、第一非易失性存储器设备120、第二非易失性存储器设备130和/或电源管理集成电路PMIC。
在主机11的控制下,存储控制器110可以将数据存储到第一非易失性存储器设备120,或者可以读取存储在第一非易失性存储器设备120中的数据。
第一非易失性存储器设备120可以在存储控制器110的控制下操作。第二非易失性存储器设备130可以存储存储控制器110进行操作所需的各种信息。
在一些示例性实施例中,第一非易失性存储器设备120可以是NAND闪存设备,而第二非易失性存储器设备130可以是磁性随机存取存储器(MRAM)。然而,本发明构思并不局限于此。例如,第一非易失性存储器设备120和第二非易失性存储器设备130可以包括各种非易失性存储器设备,诸如闪存、MRAM、PRAM、RRAM和FRAM。在一些示例性实施例中,第二非易失性存储器设备130可以具有比第一非易失性存储器设备120更高的操作速度。
电源管理集成电路PMIC可以基于来自主机11的电力PWR提供存储设备100进行操作所需的电力。例如,电源管理集成电路PMIC可以供应存储控制器110、第一非易失性存储器设备120和第二非易失性存储器设备130中的每一个进行操作所需的电力。
在一些示例性实施例中,来自主机11的电力PWR可能突然被阻断或关闭。这称为“突然断电(SPO)”。电源管理集成电路PMIC可以检测这种突然断电,并且可以将突然断电信号(下文中称为“SPO信号”)发送到存储控制器110。
响应于SPO信号,存储控制器110可以暂停第一非易失性存储器设备120的操作,并且可以将关于所暂停操作的信息作为暂停信息SPI存储到第二非易失性存储器设备130。暂停信息SPI可以包括关于第一非易失性存储器设备120中暂停的操作的命令信息和地址信息。
在突然断电之后,在存储设备100通电的情况下(例如,电力供应得到恢复),存储控制器110可以基于存储在第二非易失性存储器设备130中的暂停信息SPI,执行各种块管理操作。下面将参考附图更全面地描述通电后基于暂停信息SPI的块管理操作。
在一些示例性实施例中,可以使用包括在存储设备100中的单独的辅助电源(未示出)来执行将暂停信息SPI写入第二非易失性存储器设备130的操作。例如,存储设备100可以包括用于提供辅助电力的单独设备(未示出),如超级电容器或钽电容器。在发生突然断电的情况下,电源管理集成电路PMIC可以使用该单独设备向存储控制器110、第一非易失性存储器设备120和第二非易失性存储器设备130提供辅助电力。第二非易失性存储器设备130可以使用辅助电力来执行与上述暂停信息SPI相关联的写入操作。
在一些示例性实施例中,在发生突然断电的情况下,传统存储设备使用辅助电力来完成在第一非易失性存储器设备120中正在执行的操作(例如,读取操作、编程操作或擦除操作)。在这种情况下,由于第一非易失性存储器设备120的操作速度比第二非易失性存储器设备130的操作速度慢,因此,需要花费大量时间来完成正在执行的操作。这会引起在发生突然断电时所需的辅助电源容量的增加。
相反,在发生突然断电的情况下,根据本发明构思的一些示例性实施例的存储设备100暂停在第一非易失性存储器设备120中正在执行的操作,并将关于所暂停操作的操作信息(例如,暂停信息)写入第二非易失性存储器设备130。也就是说,由于仅对操作速度相对较高的第二非易失性存储器设备130执行写入操作,因此,与相关技术相比,根据本发明构思的一些示例性实施例的存储设备100可以使用相对较小的辅助电源来应对突然断电。
在一些示例性实施例中,突然断电被描述为从主机11提供的电力PWR突然被阻断的情况,但是,本发明构思并不局限于此。例如,即使从主机11提供的电力PWR得到均衡的保持,但由于存储设备100的各种内部问题,因此,提供给存储控制器110、第一非易失性存储器设备120或第二非易失性存储器设备130的电力可能变得不稳定。在这种情况下,电源管理集成电路PMIC可以确定出关于特定设备出现了突然断电情形,并且可以输出SPO信号。
在一些示例性实施例中,描述了电源管理集成电路PMIC检测到突然断电并输出SPO信号,但是本发明构思并不局限于此。例如,存储控制器110、第一非易失性存储器设备120和第二非易失性存储器设备130中的每一个可以包括电力检测器(未示出)或电压检测器(未示出)。包括在存储控制器110、第一非易失性存储器设备120和第二非易失性存储器设备130中的每一个中的电力检测器可以配置为检测关于相关配置而发生的突然断电情形。也就是说,包括在存储控制器110中的电力检测器可以检测关于提供给存储控制器110的电力的突然断电。替代地,包括在第一非易失性存储器设备120中的电力检测器可以检测关于提供给第一非易失性存储器设备120的电力的突然断电。替代地,包括在第二非易失性存储器设备130中的电力检测器可以检测关于提供给第二非易失性存储器设备130的电力的突然断电。
也就是说,突然断电可以指示与提供给存储设备100的电力相关联的突然断电,或者可以指示与存储控制器110、第一非易失性存储器设备120和第二非易失性存储器设备130中的每一个相关联的突然断电。在下文中,将会描述的是,突然断电是与存储设备100相关联的突然断电;然而,如上所述,突然断电可以指示与每个组件相关联的突然断电。
图2是示出了图1的存储系统的软件层的框图。参考图1和图2,存储系统10的软件层可以包括应用11a、文件系统11b和/或闪存转换层FTL。
应用11a可以包括在存储系统10或主机11上驱动的各种应用程序。文件系统11b可以对应用11a所使用的文件或数据进行组织。例如,文件系统11b可以利用逻辑地址管理存储设备100的存储空间,并且可以将逻辑地址分配给存储在存储设备100中的或者待存储到存储设备100的数据,以便进行管理。
在一些示例性实施例中,文件系统11b的类型可以因存储系统10或主机11的操作系统OS而不同。在一些示例性实施例中,文件系统11b可以包括FAT(文件分配表)、FAT32、NTFS(NT文件系统)、HFS(分层文件系统)、JSF2(日志文件系统2)、XFS、ODS-5(磁盘上结构-5)、UDF、ZFS、UFS(Unix文件系统)、ext2、ext3、ext4、ReiserFS、Reiser4、ISO 9660、GnomeVFS、BFS、WinFS等。在一些示例性实施例中,应用11a和文件系统11b可以是在主机11上驱动的软件层。
闪存转换层FTL可以在主机11与第一非易失性存储器设备120之间执行各种维护操作,从而高效地使用第一非易失性存储器设备120。例如,闪存转换层FTL可以执行逻辑地址与物理地址之间的转换操作。逻辑地址是由文件系统11b管理的信息,而物理地址是指示第一非易失性存储器设备120的要存储数据的物理位置的信息。闪存转换层FTL通过映射表(未示出)管理上述地址转换操作。
在一些示例性实施例中,可以由闪存转换层FTL执行基于暂停信息SPI的块管理操作(参考图1进行描述)。例如,闪存转换层FTL可以基于暂停信息SPI对映射表进行更新或重映射,或者可以调整第一非易失性存储器设备120的存储块的垃圾收集(GC)优先级。
图3是示出了图1的存储控制器110的框图。参考图1和图3,存储控制器110可以包括处理器111、静态RAM(SRAM)112、纠错码(ECC)引擎113、非易失性存储器管理器114、主机接口115和/或闪存接口116。
处理器111可以控制存储控制器110的整体操作。SRAM 112可以用作存储控制器110的高速缓冲存储器或工作存储器。在一些示例性实施例中,参考图2描述的闪存转换层FTL可以以软件的形式提供,并且可以将与闪存转换层FTL相关联的程序代码、指令等存储到SRAM 112。存储到SRAM 112的闪存转换层FTL可以由处理器111执行。
ECC引擎113可以配置为纠正通过存储控制器110交换的各种数据的错误。例如,ECC引擎113可以生成针对从主机11提供的数据的纠错码。替代地,ECC引擎113可以基于从第一非易失性存储器设备120提供的数据以及纠错码来纠正错误。在一些示例性实施例中,ECC引擎113可以对存储在第二非易失性存储器设备130中的数据执行纠错操作。
非易失性存储器管理器114可以配置为控制第二非易失性存储器设备130。例如,非易失性存储器管理器114可以读取存储在第二非易失性存储器设备130中的数据或者可以将数据写入第二非易失性存储器设备130。
存储控制器110可以通过主机接口115与主机11进行通信。主机接口115可以包括各种接口中的至少一种,比如,双倍数据速率(DDR)接口、低功率DDR(LPDDR)接口、通用串行总线(USB)接口、多媒体卡(MMC)接口、外围组件互连(PCI)接口、PCI高速(PCI-e)接口、高级技术附件(ATA)接口、串行ATA(SATA)接口、并行ATA(PATA)接口、小型计算机小型接口(SCSI)接口、增强型小型磁盘接口(ESDI)、集成驱动电路(IDE)接口、移动产业处理器接口(MIPI)、非易失性存储器高速(NVM-e)接口和通用闪存存储(UFS)接口。
存储控制器110可以通过闪存接口116与第一非易失性存储器设备120进行通信。闪存接口116可以包括NAND接口。
图4是示出了图1的存储设备的操作的流程图。参考图1和图4,在操作S110中,存储设备100可以检测突然断电。例如,电源管理集成电路PMIC可以检测从主机11提供的电力PWR的关断。响应于检测到突然断电,电源管理集成电路PMIC可以将SPO信号提供给存储控制器110。
在一些示例性实施例中,如上所述,电源管理集成电路PMIC可以配置为检测与存储设备100的每个组件相关联的突然断电,或者存储设备100的每个组件可以配置为通过每个组件中包括的电力检测器检测突然断电。
在操作S120中,存储设备100可以暂停第一非易失性存储器设备120的操作。例如,在检测到突然断电的时间点处,第一非易失性存储器设备120可能正在执行诸如编程操作、读取操作或擦除操作之类的操作。存储控制器110可以响应于SPO信号而暂停当前在第一非易失性存储器设备120中正在执行的操作(例如,编程操作、读取操作或擦除操作)。在一些示例性实施例中,存储控制器110可以向第一非易失性存储器设备120提供用于暂停第一非易失性存储器设备120的操作的单独的暂停命令。
在操作S130中,存储设备100可以基于暂停的操作将暂停信息SPI写入第二非易失性存储器设备130。例如,存储控制器110可以将与暂停的操作对应的命令和与暂停的操作对应的地址作为暂停信息SPI写入。也就是说,在暂停与第一非易失性存储器设备120的多个存储块中的第一存储块相关联的编程操作的情况下,存储控制器110可以将第一存储块的地址和编程命令作为暂停信息SPI写入。在下文中,为了便于描述,包括在暂停信息SPI中的命令称为“暂停的命令”,并且包括在暂停信息SPI中的地址称为“暂停的地址”。
之后,在操作S140中,可以使存储设备100通电。
在通电之后,在操作S150中,存储设备100可以扫描存储在第二非易失性存储器设备130中的暂停信息SPI。例如,在根据通电的初始化操作中,存储控制器110可以读取存储在第二非易失性存储器设备130中的暂停信息SPI。
在操作S160中,存储设备100可以基于暂停信息SPI来执行块管理操作。例如,存储控制器110可以执行块管理,比如,基于暂停信息SPI中包括的暂停的命令和暂停的地址处理存储块上的无效块、数据迁移或者调整GC优先级。
在一些示例性实施例中,在检测到与第一非易失性存储器设备120相关联的突然断电的情况下,可以执行根据图4的流程图的操作。在一些示例性实施例中,在检测到关于第二非易失性存储器设备130的突然断电并且未检测到关于第一非易失性存储器设备120的突然断电的情况下,可以不执行单独暂停操作,并且可以继续执行第一非易失性存储器设备120的一般性操作(例如,编程操作或读取操作)。
图5是示出了图4的操作S160的流程图。参考图1、图4和图5,存储设备100可以在操作S150之后执行操作S160。操作S160可以包括操作S161至操作S163。
在操作S161中,存储设备100可以确定命令类型。例如,存储控制器110可以确定暂停的命令是读取命令RD、编程命令PGM还是擦除命令ERS。
当暂停的命令是读取命令RD时,存储设备100可以不执行单独的块管理操作。例如,如上所述,暂停的命令指示与在第一非易失性存储器设备120中暂停的操作对应的命令。在暂停与读取命令RD对应的操作(例如,读取操作)的情况下,存储在第一非易失性存储器设备120中的数据可以不改变。也就是说,在暂停的命令是读取命令RD的情况下,存储在第一非易失性存储器设备120中的数据可以不改变。因此,即使存储设备100不执行单独的块管理操作,也可以维护存储在第一非易失性存储器设备120中的数据。
在暂停的命令是编程命令PGM的情况下,在操作S162中,存储设备100可以重映射与暂停的地址对应的存储块。例如,存储控制器110可以将与暂停的地址对应的存储块设置为无效块,可以将存储在设置为无效块的存储块中的数据迁移到任何其他存储块(例如,空闲存储块),并且可以对映射表进行更新。
具体地,在暂停与第一非易失性存储器设备120的第一存储块相关联的编程操作的情况下,数据可能没有正常地存储到第一存储块。也就是说,由于不能确保要存储到第一存储块的数据的可靠性,因此,存储控制器110可以将第一存储块设置为无效块。然而,为了确保先前存储在第一存储块中的数据(例如,在暂停编程操作之前存储的数据)的可靠性,存储在设置为无效块的第一存储块中的数据可以迁移到任何其他存储块(例如,空闲存储块)。在这种情况下,存储控制器110可以将存储在第一存储块中的数据的逻辑地址映射到空闲存储块的物理地址上。
如上所述,通过将第一存储块(其编程操作被暂停)设置为无效块,执行存储在第一存储块中的数据到空闲存储块的迁移并且将迁移数据的逻辑地址映射到空闲存储块的物理地址上,可以确保先前存储在第一存储块中的数据的可靠性。在下文中,为了便于描述,将上述操作称为“对第一存储块的重映射操作”。也就是说,在暂停的命令是编程命令PGM的情况下,存储控制器110可以对与暂停的地址对应的存储块执行重映射操作。
在暂停的命令是擦除命令ERS的情况下,在操作S163中,存储设备100可以调整与暂停的地址对应的存储块的GC优先级。例如,在暂停的命令是擦除命令ERS的情况下,存储控制器110可以将与暂停的地址对应的存储块设置为无效块,并且可以使该存储块的GC优先级较高。存储控制器110可以根据GC优先级执行垃圾收集。也就是说,存储控制器110可以首先将与暂停的地址对应的存储块(例如,其擦除操作被暂停的存储块)选为目标存储块,并且可以对目标存储块执行擦除操作。
由于存储块(其擦除操作被暂停)的存储单元的阈值电压低于一般存储块(例如,其中存储了用户数据的存储块)的存储单元的阈值电压,因此,相比于一般存储块,其擦除操作被暂停的存储块可以被更快地擦除。也就是说,首先选择其擦除操作被暂停的存储块,可以快速地对目标存储块执行擦除操作,从而提高垃圾收集操作的整体速度。
图6A至图6C是描述了根据图4和图5的流程图的存储设备的操作的示图。为了便于描述,假设第一非易失性存储器设备120包括第一存储块BLK1至第六存储块BLK6,并且第一存储块BLK1至第六存储块BLK6分别对应于第一地址ADDR1至第六地址ADDR6。此外,假设第一非易失性存储器设备120正分别对第一存储块BLK1、第二存储块BLK2和第三存储块BLK3执行读取操作、编程操作和擦除操作。然而,本发明构思并不局限于此。
参考图6A,突然断电可能在存储设备100处发生。电源管理集成电路PMIC可以检测突然断电并且可以将SPO信号提供给存储控制器110。存储控制器110可以响应于SPO信号而暂停在第一非易失性存储器设备120中正在执行的操作(例如,读取操作、编程操作和擦除操作)。
之后,存储控制器110可以将关于暂停的操作的信息写入第二非易失性存储器设备130,作为暂停信息SPI。暂停信息SPI可以包括与暂停的操作相关联的暂停的命令和暂停的地址。
例如,如图6A所示,在暂停在第一存储块BLK1处执行的读取操作的情况下,存储控制器110可以将指示在第一存储块BLK1处暂停的读取操作RD的第一暂停命令CMD1以及与第一存储块BLK1对应的第一暂停地址ADDR1作为暂停信息SPI写入第二非易失性存储器设备130。同样地,在暂停在第二存储块BLK2和第三存储块BLK3处执行的编程操作和擦除操作的情况下,存储控制器110可以将指示在第二存储块BLK2和第三存储块BLK3处暂停的编程操作PGM和擦除操作ERS的第二暂停命令CMD2和第三暂停命令CMD3以及与第二存储块BLK2和第三存储块BLK3对应的第二暂停地址ADDR2和第三暂停地址ADDR3作为暂停信息SPI写入第二非易失性存储器设备130。
然后,如图6B和图6C所示,可以使存储设备100通电。在这种情况下,存储控制器110可以基于存储在第二非易失性存储器设备130中的暂停信息SPI来执行块管理操作。
例如,如图6B所示,存储控制器110可以基于存储在第二非易失性存储器设备130中的暂停信息SPI对特定存储块执行重映射操作。具体地,存储控制器110可以基于暂停信息SPI识别出暂停了与第二暂停地址ADDR2对应的第二存储块BLK2的编程操作PGM。在这种情况下,存储控制器110可以对第二存储块BLK2执行重映射操作。
也就是说,如上所述,存储控制器110可以将第二存储块BLK2设置为无效块INV,并且可以执行存储在第二存储块BLK2中的数据到第五存储块BLK5的迁移。根据上述迁移操作,存储控制器110可以通过如下方式对映射表进行重映射或更新:将与存储在第二存储块BLK2中的数据对应的第二逻辑地址LA2映射到第五存储块BLK5的第五地址ADDR5上,并且将第二存储块BLK2的第二地址ADDR2标记到无效块INV。
也就是说,在此之后,在主机11访问与第二逻辑地址LA2对应的数据的情况下,存储控制器110可以基于经过重映射的映射表来访问存储在第五存储块BLK5中的数据。
如图6C所示,存储控制器110可以基于存储在第二非易失性存储器设备130中的暂停信息SPI来调整特定存储块的GC优先级。例如,存储控制器110可以基于存储在第二非易失性存储器设备130中的暂停信息SPI,识别出暂停了与第三暂停地址ADDR3对应的第三存储块BLK3的擦除操作ERS。在这种情况下,如上所述,存储控制器110可以使第三存储块BLK3的GC优先级较高。
具体地,如图6C所示,第六存储块BLK6可以是空闲存储块,而第二存储块BLK2可以是无效块。存储控制器110可以将第六存储块BLK6的GC优先级确定为第一优先级#1,并且可以将第二存储块BLK2的GC优先级确定为第二优先级#2。在这种状态下,在执行垃圾收集的情况下,存储控制器110可以将优先级较高的第六存储块BLK6选为目标存储块,并且可以对第六存储块BLK6执行擦除操作。
在突然断电时暂停第三存储块BLK3的擦除操作,并且随后使存储设备100通电的情况下,存储控制器110可以基于存储在第二非易失性存储器设备130中的暂停信息SPI,识别出暂停了第三存储块BLK3的擦除操作。在这种情况下,存储控制器110可以将第三存储块BLK3的GC优先级确定为第一优先级#1,并且可以将第六存储块BLK6和第二存储块BLK2的GC优先级调整或更新为第二优先级#2和第三优先级#3。在这种状态下,在执行垃圾收集的情况下,存储控制器110可以将优先级最高的第三存储块BLK3选为目标存储块,并且可以对目标存储块执行擦除操作。
在一些示例性实施例中,可以根据设置为无效块的存储块的P/E周期来进一步调整该设置为无效块的存储块的GC优先级。例如,存储控制器110可以对第一非易失性存储器设备120的多个存储块执行损耗均衡。也就是说,存储控制器110可以使具有第一P/E周期的存储块的GC优先级比具有大于第一P/E周期的第二P/E周期的存储块的GC优先级高,因此在垃圾收集时,可以首先将具有第一P/E周期的存储块选为目标存储块。在这种情况下,如果具有第二P/E周期的存储块是擦除暂停的存储块,则存储控制器110可以调整GC优先级,使得具有第二P/E周期的存储块首先被选为目标存储块。然而,在第二P/E周期与第一P/E周期之间的差值不小于参考值的情况下(例如,第二P/E周期比第一P/E周期大参考值那么多,或者更大),存储控制器110可以调整GC优先级,使得具有第一P/E周期的存储块首先被选为目标存储块,以进行存储块的损耗均衡管理。
如上所述,在突然断电情形下,存储设备100可以暂停第一非易失性存储器设备120的操作,并且可以将关于所暂停操作的信息写入第二非易失性存储器设备130,作为暂停信息SPI。之后,在存储设备100通电的情况下,存储设备100可以基于存储在第二非易失性存储器设备130中的暂停信息SPI,对第一非易失性存储器设备120执行重映射操作或GC优先级调整操作。
图7A和图7B是描述了根据在擦除操作之前执行验证操作的方式的擦除操作的示图。参考图1、图7A和图7B,如图7A所示,包括在第一非易失性存储器设备120中的多个存储块的正常存储块中的每一个存储单元可以具有擦除状态“E”和第1至第15编程状态P1至P15中的任何一个。当对正常存储块执行第一擦除操作1st ERS时,正常存储块的存储单元可以具有擦除状态“E”。例如,如图7B中所示,存储设备100可以通过执行包括多个擦除循环EL1至ELn的第一擦除操作1st ERS来对正常存储块执行擦除操作。多个擦除循环EL1至ELn中的每一个可以包括:通过向存储单元施加擦除电压来降低其阈值电压;并且通过应用擦除验证电压Vvfy_e来验证存储块是否被正常擦除。
相反,其擦除操作被暂停的存储块(例如,图6的第三存储块BLK3)(为了便于描述,称为“擦除暂停存储块”)的存储单元可以形成图7A所示的阈值电压分布。在这种情况下,擦除暂停存储块中的存储单元的阈值电压分布的上限值Vth2可以低于正常存储块中的存储单元的阈值电压分布的上限值Vth1。在这种情况下,当对擦除暂停存储块执行第二擦除操作2nd ERS时,擦除暂停存储块的存储单元可以具有擦除状态“E”。例如,存储设备100可以执行包括初始验证间隔Int.VFY和多个擦除循环EL1至ELk的第二擦除操作2nd ERS,如图7B所示。
初始验证间隔Int.VFY可以用于通过将多个验证电压施加到擦除暂停存储块来检测擦除暂停存储块中的存储单元的阈值电压分布的上限值(例如,Vth2)。存储设备100可以根据初始验证间隔Int.VFY的结果执行多个擦除循环EL1至ELk。在这种情况下,基于初始验证间隔Int.VFY的结果,可以确定在多个擦除循环EL1至ELk中的每一个中施加擦除电压的时间Ters2、多个擦除循环EL1至ELk的数量或初始擦除电压Vers2的大小。例如,当依据初始验证间隔Int.VFY而确定的上限值Vth2的大小增大时,在多个擦除循环EL1至ELk中的每一个中施加擦除电压的时间Ters2、多个擦除循环EL1至ELk的数量或初始擦除电压Vers2的大小可以增大。
在一些示例性实施例中,在第二擦除操作2nd ERS的多个擦除循环EL1至ELk中的每一个中施加擦除电压的时间Ters2、多个擦除循环EL1至ELk的数量或初始擦除电压Vers2的大小可以小于在第一擦除操作1st ERS的多个擦除循环EL1至ELn中的每一个中施加擦除电压的时间Ters1、多个擦除循环EL1至ELn的数量或初始擦除电压Vers1的大小。也就是说,执行第二擦除操作2nd ERS的时间可以比执行第一擦除操作1st ERS的时间短。
如上所述,存储控制器110可以对正常存储块和擦除暂停存储块执行不同的擦除操作。例如,存储控制器110可以对正常存储块执行第一擦除操作1st ERS,并且可以对擦除暂停存储块执行第二擦除操作2nd ERS。如上所述,由于执行第二擦除操作2nd ERS的时间短于执行第一擦除操作1st ERS的时间,因此,可以首先将擦除暂停存储块选为目标存储块,以便执行第二擦除操作2nd ERS,因而执行垃圾收集所花费的时间可以减少。
图8A和图8B是示出了将暂停信息写入第二非易失性存储器设备的操作的时序图。图8A和图8B中所示的时序图可以是描述第二非易失性存储器设备的操作的示例性时序图,并且本发明构思并不局限于此。例如,第二非易失性存储器设备130可以配置为基于各种接口中的任何一个接口与存储控制器110通信。
参考图1、图3、图8A和图8B,第二非易失性存储器设备130可以响应于从非易失性存储器管理器114接收的信号而操作。例如,如图8A所示,在芯片选择信号CS和写入使能信号WEN的活动间隔(例如,逻辑低的间隔)期间,第二非易失性存储器设备130可以从存储控制器110的非易失性存储器管理器114与时钟信号CLK同步地接收地址AD1至AD4和数据DT1至DT4。第二非易失性存储器设备130可以将接收到的数据DT1至DT4写入与接收到的地址AD1至AD4对应的区域中。
如图8B所示,在发生突然断电SPO的情况下,存储控制器110可以激活SPO信号(例如,可以允许SPO信号转变为逻辑低),并且可以在指定时间过去之后将特定地址AD_pd和暂停信息SPI提供到第二非易失性存储器设备130。第二非易失性存储器设备130可以响应于SPO信号将暂停信息SPI写入与接收到的特定地址AD_pd对应的区域。
在一些示例性实施例中,第二非易失性存储器设备130可以在从SPO信号被激活的时间点开始经过了指定时间(例如,时钟信号CLK的若干周期)之后,执行写入暂停信息SPI的操作。在一些示例性实施例中,特定地址AD_pd可以是对应于第二非易失性存储器设备130的存储区域中的如下区域的地址:该区域是预先确定的以便写入暂停信息SPI。在一些示例性实施例中,为了写入暂停信息SPI,第二非易失性存储器设备130可以在突发模式下操作。
第二非易失性存储器设备130的上述操作是示例,并且可以理解的是,在不脱离本发明构思的技术理念的情况下,可以对第二非易失性存储器设备130的操作作出各种改变或修改。
图9、图10A和图10B是描述了根据本发明构思的一些示例性实施例的存储设备的操作的示图。参考图9、图10A和图10B,在操作S205中,存储设备200可以将关于第一非易失性存储器设备220的操作信息写入和管理到第二非易失性存储器设备230中。例如,如图10A所示,存储设备200可以对第一非易失性存储器设备220的第一存储块BLK1执行读取操作RD,对第二存储块BLK2执行编程操作PGM,对第三存储块BLK3执行擦除操作ERS,并且对第四存储块BLK4执行编程操作PGM。在这种情况下,存储设备200可以将第一非易失性存储器设备220中正在执行的操作的信息写入和管理到第二非易失性存储器设备230中,作为操作信息。
存储在第二非易失性存储器设备230中的操作信息可以包括关于与第一非易失性存储器设备220中正在执行的操作相关联的命令和地址的信息。在一些示例性实施例中,存储在第二非易失性存储器设备230中的操作信息可以是单独管理的管理信息,或者可以是由存储控制器110管理的第一非易失性存储器设备220的命令队列。
之后,存储设备200可以执行操作S210和操作S220。存储设备200可以执行操作S210和操作S220,即,检测突然断电并且暂停第一非易失性存储器设备220的操作。操作S210和操作S220类似于图4的操作S110和操作S120,因此为了避免重复,将省略额外的描述。
在操作S230中,存储设备200可以在与暂停的操作对应的操作信息中写入SPO标志。例如,如图10B所示,存储控制器210可以响应于SPO信号而暂停在第一非易失性存储器设备220中正执行的操作。在这种情况下,第四存储块BLK4的编程操作PGM可以在接收到SPO信号的时间点处完成,并且可以暂停在第一存储块BLK1、第二存储块BLK2和第三存储块BLK3中执行的读取操作RD、编程操作PGM和擦除操作ERS。
存储控制器210可以在与暂停的操作对应的操作信息中写入SPO标志。例如,在暂停在第一存储块BLK1、第二存储块BLK2和第三存储块BLK3中正执行的读取操作RD、编程操作PGM和擦除操作ERS的情况下,在存储在第二非易失性存储器设备230中的操作信息中的与第一存储块BLK1至第三存储块BLK3对应的操作信息(例如,CMD1/ADDR1、CMD2/ADDR2、CMD3/ADDR3)中,存储控制器210可以写入SPO标志。由于完成了第四存储块BLK4的编程操作PGM,因此,存储控制器210可以不在与第四存储块BLK4对应的操作信息CMD4/ADD4中写入单独的SPO标志。
也就是说,存储控制器210可以将关于在第一非易失性存储器设备220中正执行的操作的操作信息(例如,命令和地址)存储到第二非易失性存储器设备230,以便进行管理,并且当发生突然断电时,可以在与第一非易失性存储器设备220中暂停的操作对应的操作信息中写入SPO标志。
然后,在操作S240中,可以使存储设备200通电。
在操作S250中,存储设备200可以从存储在第二非易失性存储器设备230中的操作信息扫描SPO标志。例如,存储控制器210可以通过从存储在第二非易失性存储器设备230中的操作信息扫描SPO标志来识别在突然断电时在第一非易失性存储器设备220中暂停的操作。
然后,在操作S260中,存储设备200可以基于扫描出的SPO标志执行块管理操作。例如,如上所述,存储控制器210可以通过从存储在第二非易失性存储器设备230中的操作信息扫描SPO标志来识别在突然断电时在第一非易失性存储器设备220中暂停的操作。存储控制器210可以基于暂停的操作来执行块管理操作,比如,参考图1至图7B描述的重映射操作或GC优先级调整操作。上面描述了块管理操作,因此,这里将不再进行赘述。
如上所述,存储设备200可以将关于第一非易失性存储器设备220中正在执行的操作的操作信息存储到第二非易失性存储器设备230中,以便进行管理。在发生突然断电的情况下,存储设备200可以暂停第一非易失性存储器设备220中正执行的操作,并且可以在第二非易失性存储器设备处在与暂停的操作对应的操作信息中写入SPO标志。因此,当发生突然断电时,一旦存储设备200将SPO标志写入第二非易失性存储器设备230,而第一非易失性存储器设备220的操作没有完成,存储设备200就可以使用容量较小的辅助电源来应对突然断电。此外,在突然断电之后的通电时,存储设备200可以基于存储在第二非易失性存储器设备230中的操作信息和SPO标志来执行块管理操作,因而可以确保存储在第一非易失性存储器设备220中的数据的可靠性。
图11是示出了根据本发明构思的一些示例性实施例的存储系统的框图。参考图11,存储系统30可以包括主机31和/或存储设备300。存储设备300可以包括存储控制器310、第一非易失性存储器设备320、第二非易失性存储器设备330、电源管理集成电路PMIC和/或温度传感器340。上面描述了主机31、存储设备300、存储控制器310、第一非易失性存储器设备320、第二非易失性存储器设备330和电源管理集成电路PMIC,因此为了避免重复,将省略额外的描述。
温度传感器340可以检测存储设备300的温度,并且可以将关于检测到的温度的温度信息TEMP提供给存储控制器310。存储控制器310可以配置为基于温度信息TEMP控制第二非易失性存储器设备330。例如,第二非易失性存储器设备330可以基于存储设备300的温度来调整第二非易失性存储器设备230被重写的次数。在一些示例性实施例中,当发生突然断电时,存储控制器310可以将温度信息TEMP写入第二非易失性存储器设备330。
图12是示出了根据本发明构思的一些示例性实施例的存储系统的框图。参考图12,存储系统40可以包括主机41和/或存储设备400。存储设备400可以包括存储控制器410、第一非易失性存储器设备420、第二非易失性存储器设备430和/或电源管理集成电路PMIC。上面描述了主机41、存储控制器400、第一非易失性存储器设备420和电源管理集成电路PMIC,因此为了避免重复,将省略额外的描述。
图12的第二非易失性存储器设备430可以用作存储设备400的数据缓冲器。例如,从主机41接收的用户数据UD可以存储到第二非易失性存储器设备430,并且存储在第二非易失性存储器设备430中的用户数据UD可以选择性地移动(或复制)到第一非易失性存储器设备420。替代地,第二非易失性存储器设备430可以配置为存储从第一非易失性存储器设备420读取的用户数据UD,并将存储的用户数据UD提供给主机41。
响应于来自电源管理集成电路PMIC的SPO信号,存储控制器410可以暂停第一非易失性存储器设备420的操作,并且可以写入与要从第二非易失性存储器设备430提供给第一非易失性存储器设备420的用户数据UD相关联的SPO标志。在一些示例性实施例中,要提供给第一非易失性存储器设备420的用户数据UD可以指示未存储在第一非易失性存储器设备420中的用户数据或者与在第一非易失性存储器设备420中暂停的编程操作对应的用户数据。
在突然断电之后使存储设备400通电的情况下,存储控制器410可以基于存储在第二非易失性存储器设备430中的用户数据UD和SPO标志,执行用户数据UD从第二非易失性存储器设备430到第一非易失性存储器设备420的迁移。
如上所述,当发生突然断电时,存储设备400可以暂停第一非易失性存储器设备420的操作,并且可以将与要存储到第一非易失性存储器设备420的用户数据UD相关联的SPO标志写入第二非易失性存储器设备430。也就是说,当发生突然断电时,一旦存储设备400将SPO标志写入第二非易失性存储器设备430,而没有完成第一非易失性存储器设备420的操作,则存储设备420可以使用容量减小的辅助电源来应对突然断电情形。
图13是示出了图12的存储设备的操作的流程图。图14A至图14C是描述了根据图13的流程图的操作的示图。参考图12、图13以及图14A至图14C,存储设备400可以执行操作S405和操作S410。操作S405和操作S410类似于图4的操作S110和操作S120,因此为了避免重复,将省略额外的描述。
在操作S420中,存储设备400可以确定在第一非易失性存储器设备420中暂停的操作是否是编程操作PGM。例如,如图14A中所示,第二非易失性存储器设备430可以存储分别对应于第一用户数据UD1、第二用户数据UD2和第三用户数据UD3的第一地址ADDR1、第二地址ADDR2和第三地址ADDR3。存储控制器410可以从第二非易失性存储器设备430读取第一用户数据UD1至第三用户数据UD3,并且可以将读取的第一用户数据UD1至第三用户数据UD编程到分别与第一地址ADDR1至第三地址ADDR3对应的第一存储块BLK1至第三存储块BLK3。图14A中示出的存储设备400的实施例表明了其中第三用户数据UD3已完全编程到第三存储块BLK3中,并且第一用户数据UD1和第二用户数据UD2正在编程到第一存储块BLK1和第二存储块BLK2中的情况。
在一些示例性实施例中,存储控制器410的ECC引擎413可以纠正从第二非易失性存储器设备430读取的用户数据的错误,并且可以将纠错后的用户数据编程到第一非易失性存储器设备420中。
在图14A所示的存储设备400的实施例中,在发生突然断电的情况下,存储控制器410可以确定在第一非易失性存储器设备420中暂停的操作是否是编程操作。
在暂停操作是编程操作的情况下,在操作S425中,存储设备400可以确定是否对要编程到第一非易失性存储器设备420中的数据完全执行了ECC操作。例如,如图14A所示,存储控制器410可以从第二非易失性存储器设备430读取第一用户数据UD1,可以对读取的第一用户数据UD1执行ECC操作,并且可以将经过纠错的第一用户数据UD1′提供给第一非易失性存储器设备420。第一非易失性存储器设备420可以将经过纠错的第一用户数据UD1′编程到第一存储块BLK1中。此时,可能会发生突然断电。
也就是说,在对第一用户数据UD1完全执行了ECC操作之后,当在经过纠错的第一用户数据UD1′被编程到第一非易失性存储器设备420期间发生突然断电时(换言之,在操作S425的结果对应于“是”的情况下),在操作S430中,存储设备400可以将被编程的用户数据重写入第二非易失性存储器设备430。
例如,如图14B所示,存储设备400可以将经过纠错的第一用户数据UD1′写入第二非易失性存储器设备430。在一些示例性实施例中,存储控制器410可以将经过纠错的第一用户数据UD1′重写入第二非易失性存储器设备430的存储第一用户数据UD1的区域,或者重写入单独的区域。也就是说,由于经过纠错的第一用户数据UD1′被重写入第二非易失性存储器设备430时,因此可以提高第一用户数据UD1的可靠性。
当操作S425的结果对应于“否”时,存储设备400可以不执行单独的数据写入操作。例如,如图14A和图14B所示,在发生突然断电的时间点下,存储控制器410可以处于未对第二用户数据UD2完全执行ECC操作的状态下(例如,正在从第二非易失性存储器设备430读取第二用户数据UD2的状态下)。在这种情况下,由于第二用户数据UD2存储在第二非易失性存储器设备430中,因此,可以不执行单独的重写操作。
之后,在操作S435中,存储设备400可以将SPO标志写入第二非易失性存储器设备430中。例如,如图14B所示,存储设备400可以写入与用户数据UD1和UD2相关联的SPO标志,用户数据UD1和UD2与在第一非易失性存储器设备420中暂停的编程操作对应。
在操作S440中,可以使存储设备400通电。
在操作S445中,存储设备400可以从第二非易失性存储器设备430扫描SPO标志。例如,在根据通电的初始化操作中,存储设备400可以读取存储在第二非易失性存储器设备430中的SPO标志。存储设备400可以基于从第二非易失性存储器设备430读取的SPO标志识别出未存储在第一非易失性存储器设备420中的用户数据(例如,UD1′和UD2)。
在操作S450中,基于扫描出的SPO标志,存储设备400可以执行用户数据从第二非易失性存储器设备430到第一非易失性存储器设备420的迁移。例如,如图14C所示,第二非易失性存储器设备430可以包括与第一用户数据UD1′和第二用户数据UD2相关联的SPO标志。存储控制器410可以读取其中分别写入SPO标志的第一用户数据UD1′和第二用户数据UD2,并且可以对第一用户数据UD1′和第二用户数据UD2执行纠错操作(由ECC引擎413执行)。可以将经过纠错的第一用户数据UD1′和第二用户数据UD2′分别写入第五存储块BLK5和第六存储块BLK6。
在一些示例性实施例中,第一用户数据UD1和第二用户数据UD2可以是在突然断电之前要写入第一存储块BLK1和第二存储块BLK2的用户数据;然而,当因为突然断电而暂停第一存储块BLK1和第二存储块BLK2的编程操作时,第一存储块BLK1和第二存储块BLK2可以被处理为是无效的。上面描述了无效块处理操作,因此为了避免重复,将省略额外的描述。这样,存储控制器410可以将第一用户数据UD1′和第二用户数据UD2编程到任何其他存储块(例如,BLK5和BLK6)中,而不是编程到被设置为无效块的第一存储块BLK1和第二存储块BLK2中。在一些示例性实施例中,当第一用户数据UD1′和第二用户数据UD2被编程到任何其他存储块(例如,BLK5和BLK6)中时,可以更新关于第一用户数据UD1′和第二用户数据UD2的映射信息。在一些示例性实施例中,映射信息可以由存储控制器410管理,或者可以与第一用户数据UD1′和第二用户数据UD2一起存储到第二非易失性存储器设备430中。
如上所述,在第二非易失性存储器设备430用作存储设备400的数据缓冲器的情况下,当发生突然断电时,存储设备400可以暂停第一非易失性存储器设备的操作,并且可以写入与存储在第二非易失性存储器设备430中的用户数据之中未存储在第一非易失性存储器设备420中的用户数据相关联的SPO标志。之后,在存储设备400通电的情况下,存储设备400可以扫描第二非易失性存储器设备430的SPO标志,并且可以执行用户数据从第二非易失性存储器设备430到第一非易失性存储器设备420的迁移或复制。
图15是示出了根据本发明构思的一些示例性实施例的存储系统的框图。参考图15,存储系统50可以包括主机51和/或存储设备500。存储设备500可以包括存储控制器510、第一非易失性存储器设备520、第二非易失性存储器设备530和/或电源管理集成电路PMIC。上面描述了主机51、存储设备500、存储控制器510、第一非易失性存储器设备520和电源管理集成电路PMIC,因此为了避免重复,将省略额外的描述。
如在参考图12至图14C给出的描述中那样,图15的第二非易失性存储器设备530可以用作存储设备500的数据缓冲器。也就是说,第二非易失性存储器设备530可以配置为存储要编程到第一非易失性存储器设备中的用户数据UD或者从第一非易失性存储器设备520读取的用户数据UD。另外,如参考图1至图11所述,图15的第二非易失性存储器设备530可以配置为存储关于第一非易失性存储器设备520的暂停信息SPI或操作信息。也就是说,第二非易失性存储器设备530可以用作存储设备500的数据缓冲器和管理缓冲器。
在这种情况下,如参照图1至图11所述,在突然断电时,存储设备500可以暂停第一非易失性存储器设备520中正在执行的操作,并且可以将关于暂停的操作的信息写入第二非易失性存储器设备530,作为暂停信息。而且,如参考图12至图14C所述,存储设备500可以在与暂停的编程操作对应的用户数据中写入SPO标志。
图16是示出了根据本发明构思的一些示例性实施例的存储系统的框图。参考图16,存储系统60可以包括主机61和/或存储设备600。存储设备600可以包括存储控制器610、第一非易失性存储器设备620、第二非易失性存储器设备630、电源管理集成电路PMIC和/或DRAM缓冲器640。上面描述了主机61、存储设备600、存储控制器610、第一非易失性存储器设备620、第二非易失性存储器设备630和电源管理集成电路PMIC,因此为了避免重复,将省略额外的描述。
图16的存储设备600可以包括DRAM缓冲器640。DRAM缓冲器640可以用作存储设备600的数据缓冲器。也就是说,DRAM缓冲器640可以配置为临时存储从主机61接收的用户数据或从第一非易失性存储器设备620读取的用户数据。替代地,DRAM缓冲器640可以配置为存储存储设备600进行操作所需的各种元信息(例如,映射表和FTL)。
在一些示例性实施例中,在发生突然断电的情况下,基于参照图1至图11所描述的方法,存储控制器610可以暂停第一非易失性存储器设备620中正在执行的操作,并且可以将关于暂停的操作的暂停信息SPI写入第二非易失性存储器设备630。在这种情况下,存储控制器610可以将存储在DRAM缓冲器640中的用户数据或元信息写入第二非易失性存储器设备630。
在突然断电之后,在存储设备600通电的情况下,通过参考图1至图15所描述的方法,存储设备600可以基于存储在第二非易失性存储器设备630中的信息来执行块管理操作。
图17是示出了根据本发明构思的一些示例性实施例的存储系统的框图。参考图17,存储系统1000可以包括主机1100和存储设备1200。存储设备1200可以包括存储控制器1210、多个非易失性存储器设备NVM、多个非易失性存储器控制器1221至122n、多个非易失性RAM1231至123n、电源管理集成电路PMIC和/或RAM缓冲器1240。
存储控制器1210可以配置为在主机1100的控制下控制存储设备1200的整体操作。多个非易失性存储器控制器(下文中称为“NVM控制器”)1221至122n可以配置为分别控制多个非易失性存储设备NVM和多个非易失性RAM 1231至123n。在一些示例性实施例中,存储控制器1210可以通过多个通道与多个NVM控制器1221和122n通信。
在一些示例性实施例中,NVM控制器1221至122n可以基于参考图1至图16描述的操作方法来控制多个非易失性存储器设备NVM和多个非易失性RAM 1231至123n。例如,当发生突然断电时,NVM控制器1221至122n可以暂停多个非易失性存储器设备NVM的操作,并且可以将暂停信息或SPO标志写入多个非易失性RAM 1231至123n。在通电时,NVM控制器1221至122n可以基于来自多个非易失性RAM 1231至123n的暂停信息或SPO标志来执行块管理操作或数据迁移操作。
RAM缓冲器1240可以配置为存储存储设备1200进行操作所需的各种信息。替代地,RAM缓冲器1240可以用作存储设备1200的数据缓冲器。
基于来自主机1100的电力,电源管理集成电路PMIC可以提供存储设备1200进行操作所需的各种电压。电源管理集成电路PMIC可以检测在存储设备1200处发生的突然断电。
根据本发明构思,在发生突然断电的情况下,存储设备可以暂停在第一非易失性存储器设备中正执行的操作,并且可以将关于暂停的操作的信息写入第二非易失性存储器设备。在这种情况下,由于在将关于暂停的操作的信息写入第二非易失性存储器设备时的功耗小于完成第一非易失性存储器设备的操作时的功耗,因此,存储设备可以使用容量减小的辅助电源来应对突然断电。因此,提供了一种成本降低和/或面积减小的存储设备及其操作方法。
尽管已经参考本发明的示例性实施例描述了本发明构思,但是对于本领域普通技术人员来说显而易见的是,在不脱离由以下权利要求阐述的本发明构思的精神和范围的前提下,可以对其作出各种改变和修改。
Claims (20)
1.一种包括第一非易失性存储器设备和第二非易失性存储器设备的存储设备的操作方法,所述方法包括:
检测突然断电;
响应于检测到的突然断电,暂停所述第一非易失性存储器设备中正在执行的操作;
将关于所暂停操作的暂停信息写入所述第二非易失性存储器设备;并且
在所述突然断电之后的通电时,基于写入所述第二非易失性存储器设备的所述暂停信息,对所述第一非易失性存储器设备执行块管理操作。
2.根据权利要求1所述的方法,其中所述暂停信息包括与所暂停操作对应的暂停的命令和暂停的地址。
3.根据权利要求2所述的方法,其中所述块管理操作包括重映射操作和垃圾收集GC优先级调整操作,
其中当所述暂停的命令是编程命令时,对与所述暂停的地址对应的存储块执行所述重映射操作,并且
其中当所述暂停的命令是擦除命令时,对与所述暂停的地址对应的所述存储块执行所述GC优先级调整操作。
4.根据权利要求3所述的方法,其中所述重映射操作包括:将与所述暂停的地址对应的所述存储块作为无效块处理,执行存储在所述存储块中的数据到另一个存储块的迁移,并且将与所迁移数据对应的逻辑地址映射到所述另一个存储块的物理地址上。
5.根据权利要求3所述的方法,其中所述GC优先级调整操作包括提高与所述暂停的地址对应的所述存储块的GC优先级,
所述方法还包括:
基于所述GC优先级,对所述第一非易失性存储器设备执行垃圾收集操作。
6.根据权利要求5所述的方法,其中基于所述存储块的编程和擦除周期进一步调整所述存储块的所述GC优先级。
7.根据权利要求2所述的方法,还包括:
对所述第一非易失性存储器设备执行擦除操作,
其中,当所述擦除操作针对的存储块对应于所述暂停的地址时,按照在所述擦除操作之前执行验证操作的方式擦除所述存储块,并且
其中,当所述擦除操作针对的所述存储块不对应于所述暂停的地址时,基于正常擦除方式擦除所述存储块。
8.根据权利要求1所述的方法,其中所述突然断电是与所述第一非易失性存储器设备相关联的突然断电。
9.根据权利要求1所述的方法,其中所述第二非易失性存储器设备的操作速度比所述第一非易失性存储器设备的操作速度快。
10.根据权利要求1所述的方法,其中所述第一非易失性存储器设备是NAND闪存设备,并且所述第二非易失性存储器设备是磁性随机存取存储器MRAM。
11.一种存储设备,包括:
第一非易失性存储器设备,配置为存储用户数据;
第二非易失性存储器设备,配置为存储关于所述第一非易失性存储器设备的操作的操作信息;以及
存储控制器,配置为:在发生突然断电时暂停在所述第一非易失性存储器设备中正在执行的操作;在存储在所述第二非易失性存储器设备中的所述操作信息之中与所暂停操作对应的操作信息中写入突然断电标志,并且在所述突然断电之后的通电时,基于写入所述第二非易失性存储器设备的所述突然断电标志,对所述第一非易失性存储器设备执行块管理操作。
12.根据权利要求11所述的存储设备,其中所述操作信息包括与所述第一非易失性存储器设备的所述操作相关联的操作命令和操作地址。
13.根据权利要求12所述的存储设备,其中所述块管理操作包括重映射操作和垃圾收集GC优先级调整操作,
其中,当与所述突然断电标志对应的所述操作命令是编程命令时,对所述第一非易失性存储器设备的多个存储块中的与所述操作地址对应的存储块执行所述重映射操作,并且
其中,当所述操作命令是擦除命令时,对与所述操作地址对应的所述存储块执行所述GC优先级调整操作。
14.根据权利要求13所述的存储设备,其中所述重映射操作包括:将与所述操作地址对应的所述存储块作为无效块处理,执行存储在所述存储块中的数据到另一个存储块的迁移,并且将与所迁移数据对应的逻辑地址映射到所述另一个存储块的物理地址上。
15.根据权利要求13所述的存储设备,其中所述GC优先级调整操作包括提高与所述操作地址对应的所述存储块的GC优先级,并且
其中所述存储控制器还配置为基于所述GC优先级对所述第一非易失性存储器设备执行垃圾收集操作。
16.根据权利要求11所述的存储设备,其中所述第二非易失性存储器设备的操作速度比所述第一非易失性存储器设备的操作速度快。
17.根据权利要求11所述的存储设备,还包括:
电源管理电路,配置为向所述第一非易失性存储器设备、所述第二非易失性存储器设备和所述存储控制器供电,检测与所述第一非易失性存储器设备、所述第二非易失性存储器设备和所述存储控制器中的至少一个相关联的突然断电,并向所述存储控制器提供突然断电信号。
18.一种存储设备,包括:
第一非易失性存储器设备;
第二非易失性存储器设备,配置为临时存储待存储到所述第一非易失性存储器设备的用户数据;以及
存储控制器,配置为:在突然断电时暂停在所述第一非易失性存储器设备中正在执行的操作;对于临时存储在所述第二非易失性存储器设备中的所述用户数据之中未存储在所述第一非易失性存储器设备中的数据,写入突然断电标志;并且在所述突然断电之后的通电时,基于写入所述第二非易失性存储器设备的所述突然断电标志,执行未存储在所述第一非易失性存储器设备中的数据从所述第二非易失性存储器设备到所述第一非易失性存储器设备的迁移。
19.根据权利要求18所述的存储设备,其中所述存储控制器包括:纠错码ECC引擎,配置为对所述用户数据执行纠错操作。
20.根据权利要求19所述的存储设备,其中在所述突然断电时,所述存储控制器还配置为:将来自所述第二非易失性存储器设备的所述用户数据之中由所述ECC引擎完成了所述纠错操作的用户数据重写入所述第二非易失性存储器设备。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2018-0097281 | 2018-08-21 | ||
KR20180097281 | 2018-08-21 | ||
KR10-2018-0156245 | 2018-12-06 | ||
KR1020180156245A KR20200021861A (ko) | 2018-08-21 | 2018-12-06 | 저장 장치 및 그것의 동작 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110890113A true CN110890113A (zh) | 2020-03-17 |
Family
ID=69583474
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910680939.XA Pending CN110890113A (zh) | 2018-08-21 | 2019-07-25 | 存储设备及其操作方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11112997B2 (zh) |
CN (1) | CN110890113A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112270945A (zh) * | 2020-10-22 | 2021-01-26 | 深圳市芯天下技术有限公司 | 记录是否有擦除时掉电的方法、装置、存储介质和终端 |
WO2023071701A1 (zh) * | 2021-10-26 | 2023-05-04 | 苏州浪潮智能科技有限公司 | 一种日志记录方法、装置及电子设备 |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190092054A (ko) * | 2018-01-30 | 2019-08-07 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
WO2019203782A1 (en) * | 2018-04-16 | 2019-10-24 | Hewlett-Packard Development Company, L.P. | Data storage device power provisions |
US11327551B2 (en) | 2019-02-14 | 2022-05-10 | Micron Technology, Inc. | Methods and apparatus for characterizing memory devices |
US11068359B2 (en) * | 2019-06-26 | 2021-07-20 | EMC IP Holding Company LLC | Stream level uninterrupted restore operation using data probe |
US10867655B1 (en) * | 2019-07-08 | 2020-12-15 | Micron Technology, Inc. | Methods and apparatus for dynamically adjusting performance of partitioned memory |
WO2021066620A1 (ko) * | 2019-10-04 | 2021-04-08 | 엘지이노텍 주식회사 | 낸드 플래시 메모리 소자의 제어 장치 및 이의 제어 방법 |
US11449577B2 (en) | 2019-11-20 | 2022-09-20 | Micron Technology, Inc. | Methods and apparatus for performing video processing matrix operations within a memory array |
US11853385B2 (en) | 2019-12-05 | 2023-12-26 | Micron Technology, Inc. | Methods and apparatus for performing diversity matrix operations within a memory array |
US11314301B2 (en) * | 2020-01-03 | 2022-04-26 | Micron Technolgoy, Inc. | Power management for memory device |
KR20210154401A (ko) * | 2020-06-12 | 2021-12-21 | 에스케이하이닉스 주식회사 | 스토리지 장치 및 그 동작 방법 |
KR20220053376A (ko) * | 2020-10-22 | 2022-04-29 | 에스케이하이닉스 주식회사 | 컨트롤러 및 그 동작 방법 |
US11899577B2 (en) * | 2020-11-24 | 2024-02-13 | Micron Technology, Inc. | Selective garbage collection |
US20240319905A1 (en) * | 2023-03-21 | 2024-09-26 | Sandisk Technologies Llc | Non-volatile memory with adapting erase process |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1639799A (zh) * | 2002-03-05 | 2005-07-13 | 皇家飞利浦电子股份有限公司 | 用于防止错误的数据存储的产品和方法 |
CN101901041A (zh) * | 2009-05-26 | 2010-12-01 | C·维拉 | 用于控制功率损耗的方法和设备 |
US20110208898A1 (en) * | 2010-02-23 | 2011-08-25 | Samsung Electronics Co., Ltd. | Storage device, computing system, and data management method |
US20150117107A1 (en) * | 2013-10-27 | 2015-04-30 | Fusion-Io, Inc. | Read operation for a non-volatile memory |
US20150186042A1 (en) * | 2014-01-02 | 2015-07-02 | Samsung Electronics Co., Ltd. | Nonvolatile memory device, nonvolatile memory system including the same, and method of operating the same |
CN106598479A (zh) * | 2015-08-17 | 2017-04-26 | 哈曼贝克自动系统股份有限公司 | 闪速存储器的故障安全擦除的方法和装置 |
CN107025185A (zh) * | 2016-02-01 | 2017-08-08 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8140739B2 (en) | 2008-08-08 | 2012-03-20 | Imation Corp. | Flash memory based storage devices utilizing magnetoresistive random access memory (MRAM) to store files having logical block addresses stored in a write frequency file buffer table |
WO2011033600A1 (ja) | 2009-09-21 | 2011-03-24 | 株式会社 東芝 | 仮想記憶管理装置 |
KR101602939B1 (ko) | 2009-10-16 | 2016-03-15 | 삼성전자주식회사 | 불휘발성 메모리 시스템 및 그것의 데이터 관리 방법 |
US20140047161A1 (en) | 2012-08-08 | 2014-02-13 | Avalanche Technology, Inc. | System Employing MRAM and Physically Addressed Solid State Disk |
US9009396B2 (en) | 2011-09-23 | 2015-04-14 | Avalanche Technology, Inc. | Physically addressed solid state disk employing magnetic random access memory (MRAM) |
US9892798B2 (en) | 2012-09-11 | 2018-02-13 | Seagate Technology Llc | Data protection for unexpected power loss |
JP6479608B2 (ja) | 2015-08-28 | 2019-03-06 | 東芝メモリ株式会社 | メモリ装置およびメモリ制御方法 |
US10719236B2 (en) | 2015-11-20 | 2020-07-21 | Arm Ltd. | Memory controller with non-volatile buffer for persistent memory operations |
US10139884B2 (en) | 2015-12-23 | 2018-11-27 | Toshiba Memory Corporation | Power loss protection for solid state drives |
-
2019
- 2019-04-25 US US16/394,506 patent/US11112997B2/en active Active
- 2019-07-25 CN CN201910680939.XA patent/CN110890113A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1639799A (zh) * | 2002-03-05 | 2005-07-13 | 皇家飞利浦电子股份有限公司 | 用于防止错误的数据存储的产品和方法 |
CN101901041A (zh) * | 2009-05-26 | 2010-12-01 | C·维拉 | 用于控制功率损耗的方法和设备 |
US20110208898A1 (en) * | 2010-02-23 | 2011-08-25 | Samsung Electronics Co., Ltd. | Storage device, computing system, and data management method |
US20150117107A1 (en) * | 2013-10-27 | 2015-04-30 | Fusion-Io, Inc. | Read operation for a non-volatile memory |
US20150186042A1 (en) * | 2014-01-02 | 2015-07-02 | Samsung Electronics Co., Ltd. | Nonvolatile memory device, nonvolatile memory system including the same, and method of operating the same |
CN106598479A (zh) * | 2015-08-17 | 2017-04-26 | 哈曼贝克自动系统股份有限公司 | 闪速存储器的故障安全擦除的方法和装置 |
CN107025185A (zh) * | 2016-02-01 | 2017-08-08 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112270945A (zh) * | 2020-10-22 | 2021-01-26 | 深圳市芯天下技术有限公司 | 记录是否有擦除时掉电的方法、装置、存储介质和终端 |
WO2023071701A1 (zh) * | 2021-10-26 | 2023-05-04 | 苏州浪潮智能科技有限公司 | 一种日志记录方法、装置及电子设备 |
US12111742B2 (en) | 2021-10-26 | 2024-10-08 | Suzhou Metabrain Intelligent Technology Co., Ltd. | Method for log recording, electronic device and non-transitory computer-readable storage medium |
Also Published As
Publication number | Publication date |
---|---|
US11112997B2 (en) | 2021-09-07 |
US20200065029A1 (en) | 2020-02-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110890113A (zh) | 存储设备及其操作方法 | |
US9507711B1 (en) | Hierarchical FTL mapping optimized for workload | |
CN108369818B (zh) | 一种闪存设备的刷新方法和装置 | |
US8819358B2 (en) | Data storage device, memory system, and computing system using nonvolatile memory device | |
US11030093B2 (en) | High efficiency garbage collection method, associated data storage device and controller thereof | |
US7529879B2 (en) | Incremental merge methods and memory systems using the same | |
WO2016172235A1 (en) | Method and system for limiting write command execution | |
US20210034536A1 (en) | Storage device, memory system comprising the same, and operating method thereof | |
CN111755039A (zh) | 在恢复进程期间减少存储器系统中单元干扰的设备及方法 | |
US11681619B2 (en) | Controller and operation method thereof for managing read count information of memory block | |
US10990292B2 (en) | Flash memory controller, control method of flash memory controller and associated electronic device | |
KR20200057866A (ko) | 불휘발성 메모리 장치를 포함하는 스토리지 장치 및 이의 동작 방법 | |
US11645007B2 (en) | Memory device including plurality of buffer areas for supporting fast write and fast read and storage device including the same | |
CN112582011A (zh) | 存储器设备及其操作方法 | |
KR20210157544A (ko) | 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법 | |
CN111796763A (zh) | 存储器系统、存储器控制器及存储器控制器的操作方法 | |
US11662944B2 (en) | Method and apparatus for performing resuming management | |
KR20200021861A (ko) | 저장 장치 및 그것의 동작 방법 | |
CN114327240A (zh) | 计算机可读存储介质、闪存存储器的数据存储方法及装置 | |
CN111164694B (zh) | 存储器设备和用于存储器设备的易失性管理的方法 | |
CN108509295B (zh) | 存储器系统的操作方法 | |
US11182088B2 (en) | Operation method of a controller | |
US20240143226A1 (en) | Data storage device and method for managing a write buffer | |
CN117785071B (zh) | 一种存储器及其性能优化方法 | |
US20240126473A1 (en) | Data storage device and method for managing a write buffer |
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 |