CN113870928A - 智能工厂重置程序 - Google Patents

智能工厂重置程序 Download PDF

Info

Publication number
CN113870928A
CN113870928A CN202110724302.3A CN202110724302A CN113870928A CN 113870928 A CN113870928 A CN 113870928A CN 202110724302 A CN202110724302 A CN 202110724302A CN 113870928 A CN113870928 A CN 113870928A
Authority
CN
China
Prior art keywords
memory
data
memory blocks
memory arrays
arrays
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110724302.3A
Other languages
English (en)
Inventor
G·卡列洛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Micron Technology Inc
Original Assignee
Micron Technology Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Micron Technology Inc filed Critical Micron Technology Inc
Publication of CN113870928A publication Critical patent/CN113870928A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/08Address circuits; Decoders; Word-line control circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0253Garbage collection, i.e. reclamation of unreferenced memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0292User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0891Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using clearing, invalidating or resetting means
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7205Cleaning, compaction, garbage collection, erase control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本申请案涉及智能工厂重置程序。根据如本文中所公开的实例,存储器系统可接收与重置程序相关联的一或多个命令。所述存储器系统可响应于所述一或多个命令而将所述存储器系统的一或多个存储器阵列的第一部分识别为存储用户数据且将所述一或多个存储器阵列的第二部分识别为存储与操作系统相关联的数据。所述存储器系统可基于识别所述第一部分和所述第二部分而更新所述存储器系统的映射。所述存储器系统可将与所述操作系统相关联的所述数据传送到所述一或多个存储器阵列的第三部分,且对所述物理地址集合的物理地址子集执行擦除操作。

Description

智能工厂重置程序
交叉引用
本专利申请案要求由卡里罗(Cariello)在2020年6月30日申请的标题为“智能工厂重置程序(SMART FACTORY RESET PROCEDURE)”的第16/917,510号美国专利申请案的优先权,所述申请案让与给本受让人且明确地以全文引用的方式并入本文中。
技术领域
技术领域涉及智能工厂重置程序。
背景技术
存储器装置广泛用于将信息存储在例如计算机、无线通信装置、相机、数字显示器和类似物的各种电子装置中。通过将存储器装置内的存储器单元编程到不同状态来存储信息。举例来说,二进制存储器单元可编程到常常对应于逻辑1或逻辑0的两个支持状态中的一个。在一些实例中,单个存储器单元可支持多于两个可能状态,存储器单元可存储所述可能状态中的任一个。为了存取由存储器装置存储的信息,组件可读取或感测存储器装置内的一或多个存储器单元的状态。为了存储信息,组件可将存储器装置内的一或多个存储器单元写入或编程到对应状态。
存在各种类型的存储器装置,包含磁性硬盘、随机存取存储器(RAM)、只读存储器(ROM)、动态RAM(DRAM)、同步动态RAM(SDRAM)、铁电RAM(FeRAM)、磁性RAM(MRAM)、电阻式RAM(RRAM)、快闪存储器、相变存储器(PCM)、三维交叉点存储器(3D XPoint)、或非(NOR)和与非(NAND)存储器装置等。存储器装置可为易失性或非易失性的。易失性存储器单元(例如,DRAM单元)除非由外部电源周期性地刷新,否则可能随时间推移而丢失其编程状态。非易失性存储器单元(例如,NAND存储器单元)即使在不存在外部电源的情况下仍可维持其编程状态很长一段时间。
在包含存储器系统的一些系统中,可执行工厂重置程序。举例来说,用户可能希望将存储器系统恢复到工厂(例如,初始或先前)状态。然而,因子重置程序的传统方法可能存在一或多个缺陷。
发明内容
描述一种设备。所述设备可包含:一或多个存储器阵列;控制组件,其与一或多个存储器阵列耦合且配置成使得设备:接收与包含一或多个存储器阵列的存储器系统的重置程序相关联的一或多个命令;响应于一或多个命令,将一或多个存储器阵列的第一部分识别为存储用户数据且将一或多个存储器阵列的第二部分识别为存储与操作系统相关联的数据;至少部分地基于识别第一部分和第二部分而更新所述存储器系统的映射,所述映射包括一或多个存储器阵列的逻辑地址集合与物理地址集合之间的对应关系;将与操作系统相关联的数据传送到一或多个存储器阵列的第三部分;和对物理地址集合的物理地址子集执行擦除操作,所述物理地址子集对应于一或多个存储器阵列的第一部分和一或多个存储器阵列的第二部分。
描述一种存储代码的非暂时性计算机可读媒体。所述存储代码的非暂时性计算机可读媒体可包含指令,所述指令在由包括存储器系统的电子系统的处理器执行时使得电子系统:接收与存储器系统的重置程序相关联的一或多个命令,其中存储器系统包括一或多个存储器阵列;响应于一或多个命令,将一或多个存储器阵列的第一部分识别为存储用户数据且将一或多个存储器阵列的第二部分识别为存储与操作系统相关联的数据;至少部分地基于识别第一部分和第二部分而更新存储器系统的映射,所述映射包括一或多个存储器阵列的逻辑地址集合与物理地址集合之间的对应关系;将与操作系统相关联的数据传送到一或多个存储器阵列的第三部分;和对物理地址集合的物理地址子集执行擦除操作,所述物理地址子集对应于一或多个存储器阵列的第一部分和一或多个存储器阵列的第二部分。
描述一种由包含一或多个存储器阵列的存储器系统执行的方法。所述方法可包含:接收与一或多个存储器阵列的重置程序相关联的一或多个命令;响应于一或多个命令,将一或多个存储器阵列的第一部分识别为存储用户数据且将一或多个存储器阵列的第二部分识别为存储与操作系统相关联的数据;至少部分地基于识别第一部分和第二部分而更新存储器系统的映射,所述映射包括一或多个存储器阵列的逻辑地址集合与物理地址集合之间的对应关系;将与操作系统相关联的数据传送到一或多个存储器阵列的第三部分;和对物理地址集合的物理地址子集执行擦除操作,所述物理地址子集对应于一或多个存储器阵列的第一部分和一或多个存储器阵列的第二部分。
附图说明
图1说明根据如本文中所公开的实例的支持智能工厂重置程序的系统的实例。
图2说明根据如本文中所公开的实例的支持智能工厂重置程序的过程流程的实例。
图3说明根据如本文中所公开的实例的支持智能工厂重置程序的流程图的实例。
图4展示根据本公开的各方面的支持智能工厂重置程序的存储器阵列的框图。
图5展示说明根据如本文中所公开的实例的支持智能工厂重置程序的一种方法或多种方法的流程图。
具体实施方式
在一些系统中,主机系统可执行工厂重置程序。举例来说,用户可能希望将装置恢复到工厂状态,且可在主机系统处初始化工厂重置程序。作为响应,主机系统可执行用于存储器系统的工厂重置程序。举例来说,主机系统可移除存储器系统的用户数据且维持存储器系统的操作系统(OS)数据,例如OS图像。
在一些情况下,主机系统可通过发出用于用户数据的取消映射命令集合(例如,而非用于相对大量的数据的单个取消映射命令,其可产生具有使得系统超时的时延的取消映射操作)来执行或以其它方式协调工厂重置程序。主机系统可另外或替代地发出命令(例如,清除命令)以擦除取消映射的用户数据,这可出于安全性目的而确保用户数据从存储器物理地擦除。然而,一些重置程序可能相对低效。举例来说,存储器系统可能未察觉命令集合共同地对应于工厂重置程序,且因此存储器系统可以与工厂重置上下文之外相同的方式响应于每一个别命令而执行各种操作,这可能导致各种低效。
举例来说,作为响应于取消映射命令集合中的每一个别取消映射命令而执行取消映射操作的部分,存储器系统可更新各种映射表,这可鉴于即将到来的清除命令而低效(例如,时间和资源的浪费)。作为另一实例,存储器系统可在响应于清除命令而执行擦除操作之前搜索且重定位剩余映射数据,这可能涉及当清除命令结合工厂重置程序时不必要的或以其它方式低效的进一步映射更新操作。此类操作可能导致用于执行重置程序的时间相对较长且存储器系统的电力消耗增加。
本文中所描述的系统、装置和技术可使得存储器系统能够实现工厂重置程序的改进的效率,例如用于执行重置程序的时间(例如,等待时间)相对较短且电力消耗减少,以及其它益处。举例来说,主机系统可将一或多个命令发送到存储器系统以执行可作为工厂重置程序的重置程序。存储器系统可基于接收一或多个命令来识别重置程序。举例来说,存储器系统可基于一或多个命令的模式辨识(例如,命令(例如取消映射命令集合,接着为清除命令)的模式可由存储器系统自主地辨识为共同地指示存储器装置执行重置程序)来确定正在执行重置程序。另外或替代地,一或多个命令可包含定义为工厂重置命令的命令。
响应于与重置程序相关联的一或多个命令,存储器系统可将存储器系统的第一部分识别为存储用户数据(例如,使用指示存储用户数据的物理位置的第一集合的映射信息)。存储器系统可将存储器系统的第二部分识别为存储OS数据(例如,使用指示存储OS图像的物理位置的第二集合的映射信息)。存储器系统可基于识别第一部分和第二部分来更新映射。举例来说,存储器系统可取消映射存储用户数据的第一部分(例如,存储器系统可更新较高层级逻辑到物理(L2P)表以逻辑上取消映射包含用户数据的一或多个存储器阵列的区域)。存储器系统可将来自存储器系统的第二部分的OS数据(例如,OS图像)传送到存储器系统的第三部分。存储器系统可基于所述传送来执行擦除操作。举例来说,存储器系统可物理地擦除存储器块(例如,具有比在存储器系统的第三部分处存储重定位的OS数据的一或多个块更早的版本的块)。通过实施此类技术,主机系统或存储器系统可实现重置程序的增强的效率。
首先在如参考图1所描述的系统和裸片的上下文中描述本公开的特征。在参考图2和3所描述的过程流程和流程图的上下文中描述本公开的特征。参考如参考图4和5所描述的涉及智能工厂重置程序的设备图和流程图进一步说明且描述本公开的这些和其它特征。
图1为根据如本文中所公开的实例的支持智能工厂重置程序的系统100的实例。系统100包含与存储器系统110耦合的主机系统105。
存储器系统110可为或包含任何装置或装置的集合,其中装置或装置的集合包含至少一个存储器阵列。举例来说,存储器系统110可为或包含通用快闪存储(UFS)装置、嵌入式多媒体控制器(eMMC)装置、快闪装置、通用串行总线(USB)快闪装置、安全数字(SD)卡、固态驱动器(SSD)、硬盘驱动器(HDD)、双列直插式存储器模块(DIMM)、小型DIMM(SO-DIMM),或非易失性DIMM(NVDIMM),以及其它可能性。
系统100可包含在计算装置中,所述计算装置例如台式计算机、膝上型计算机、网络服务器、移动装置、交通工具(例如,飞机、无人机、火车、汽车或其它运输工具)、具有物联网(IoT)功能的装置、嵌入式计算机(例如,交通工具、工业设备或联网商业装置中包含的嵌入式计算机),或包含存储器和处理装置的任何其它计算装置。
系统100可包含可与存储器系统110耦合的主机系统105。主机系统105可包含一或多个装置,且在一些情况下可包含处理器芯片组和通过处理器芯片组执行的软件堆栈。举例来说,主机系统105可包含配置成用于与存储器系统110或其中的装置通信的应用程序。处理器芯片组可包含一或多个核心、一或多个高速缓存器(例如,在主机系统105本地的或包含在所述主机系统中的存储器)、存储器控制器(例如,NVDIMM控制器)和存储协议控制器(例如,PCIe控制器、串行高级技术附件(SATA)控制器)。主机系统105可使用存储器系统110,例如,将数据写入到存储器系统110且从存储器系统110读取数据。尽管图1中展示一个存储器系统110,但应理解,主机系统105可与任何数量的存储器系统110耦合。
主机系统105可经由至少一个物理主机接口与存储器系统110耦合。在一些情况下,主机系统105和存储器系统110可配置成使用相关联协议经由物理主机接口通信(例如,以在存储器系统110与主机系统105之间交换或以其它方式通信控制、地址、数据和其它信号)。物理主机接口的实例可包含但不限于SATA接口、UFS接口、eMMC接口、外围组件互连高速(PCIe)接口、USB接口、光纤通道、小型计算机系统接口(SCSI)、串行附接SCSI(SAS)、双数据速率(DDR)、双列直插式存储器模块(DIMM)接口(例如,支持DDR的DIMM套接接口)、开放NAND快闪接口(ONFI)、低功率双数据速率(LPDDR)。在一些实例中,一或多个此类接口可包含在主机系统105的主机系统控制器106与存储器系统110的存储器系统控制器115中或以其它方式在其间得到支持。在一些实例中,主机系统105可经由用于包含在存储器系统110中的每一存储器装置130或存储器装置140的相应物理主机接口,或经由用于包含在存储器系统110中的每一类型的存储器装置130或存储器装置140的相应物理主机接口而与存储器系统110耦合(例如,主机系统控制器106可与存储器系统控制器115耦合)。
存储器系统110可包含存储器系统控制器115、存储器装置130和存储器装置140。存储器装置130可包含第一类型的存储器单元(例如,一种类型的非易失性存储器单元)的一或多个存储器阵列,且存储器装置140可包含第二类型的存储器单元(例如,一种类型的易失性存储器单元)的一或多个存储器阵列。尽管在图1的实例中展示一个存储器装置130和一个存储器装置140,但应理解,存储器系统110可包含任何数量的存储器装置130和存储器装置140,且在一些情况下,存储器系统110可缺乏存储器装置130或存储器装置140。
存储器系统控制器115可与主机系统105耦合且通信(例如,经由物理主机接口)。存储器系统控制器115还可与存储器装置130或存储器装置140耦合且通信以执行例如在存储器装置130或存储器装置140处读取数据、写入数据、擦除数据或刷新数据的操作,和可通常被称作存取操作的其它此类操作。在一些情况下,存储器系统控制器115可从主机系统105接收命令且与一或多个存储器装置130或存储器装置140通信以执行此类命令(例如,在所述一或多个存储器装置130或存储器装置140内的存储器阵列处)。举例来说,存储器系统控制器115可从主机系统105接收命令或操作,且可将命令或操作转换成指令或适当的命令,以实现对存储器装置130或存储器装置140的所要存取。且在一些情况下,存储器系统控制器115可与主机系统105及一或多个存储器装置130或存储器装置140交换数据(例如,响应于或以其它方式结合来自主机系统105的命令)。举例来说,存储器系统控制器115可将与存储器装置130或存储器装置140相关联的响应(例如,数据包或其它信号)转换成用于主机系统105的对应信号。
存储器系统控制器115可配置成用于与存储器装置130或存储器装置140相关联的其它操作。举例来说,存储器系统控制器115可执行或管理操作,例如,耗损均衡操作、垃圾收集操作、例如错误检测操作或错误校正操作的错误控制操作、加密操作、高速缓存操作、媒体管理操作、后台刷新、健康监测,及与来自主机系统105的命令相关联的逻辑地址(例如,逻辑块地址(LBA))和与存储器装置130或存储器装置140内的存储器单元相关联的物理地址(例如,物理块地址)之间的地址转换。
存储器系统控制器115可包含硬件,例如一或多个集成电路或离散组件、缓冲存储器,或其组合。硬件可包含具有专用(例如,硬译码)逻辑的电路系统,以执行本文中归于存储器系统控制器115的操作。存储器系统控制器115可为或包含微控制器、专用逻辑电路系统(例如,现场可编程门阵列(FPGA)、专用集成电路(ASIC)、数字信号处理器(DSP)),或任何其它合适的处理器或处理电路系统。
存储器系统控制器115还可包含本地存储器120。在一些情况下,本地存储器120可包含只读存储器(ROM)或其它存储器,其可存储可由存储器系统控制器115执行的操作代码(例如,可执行指令)以执行本文中归于存储器系统控制器115的功能。在一些情况下,本地存储器120可另外或替代地包含静态随机存取存储器(SRAM)或其它存储器,其可由存储器系统控制器115用于例如与本文中归于存储器系统控制器115的功能有关的内部存储或运算。另外或替代地,本地存储器120可充当用于存储器系统控制器115的高速缓存。举例来说,在从存储器装置130或存储器装置140读取或向存储器装置130或存储器装置140写入时,数据可存储到本地存储器120,且可在本地存储器120内可用以用于根据高速缓存策略由主机系统105后续检索或操纵(例如,更新)(例如,在相对于存储器装置130或存储器装置140的减少的时延的情况下)。
尽管图1中的存储器系统110的实例已说明为包含存储器系统控制器115,但在一些情况下,存储器系统110可不包含存储器系统控制器115。举例来说,存储器系统110可另外或替代地依赖于外部控制器(例如,由主机系统105实施)或可分别在存储器装置130或存储器装置140内部的一或多个本地控制器135或本地控制器145,以执行本文中归于存储器系统控制器115的功能。一般来说,本文中归于存储器系统控制器115的一或多个功能可在一些情况下改为由主机系统105、本地控制器135或本地控制器145或其任何组合执行。
存储器装置140可包含易失性存储器单元的一或多个阵列。举例来说,存储器装置140可包含随机存取存储器(RAM)存储器单元,例如动态RAM(DRAM)存储器单元和同步DRAM(SDRAM)存储器单元。在一些实例中,存储器装置140可在相对于存储器装置130的减小的时延的情况下支持随机接入操作(例如,由主机系统105进行),或可提供相对于存储器装置130的一或多个其它性能差异。
存储器装置130可包含非易失性存储器单元的一或多个阵列。举例来说,存储器装置130可包含NAND(例如,NAND快闪)存储器、ROM、相变存储器(PCM)、自选存储器、其它基于硫族化物的存储器、铁电RAM(FeRAM)、磁性RAM(MRAM)、NOR(例如,NOR快闪)存储器、自旋转移力矩(STT)-MRAM、导电桥接RAM(CBRAM)、电阻式随机存取存储器(RRAM)、基于氧化物的RRAM(OxRAM)和电可擦除可编程ROM(EEPROM)。
在一些实例中,存储器装置130或存储器装置140可分别包含(例如,在同一裸片上或同一封装内)本地控制器135或本地控制器145,其可对存储器装置130或存储器装置140的一或多个存储器单元执行操作。本地控制器135或本地控制器145可结合存储器系统控制器115操作,或可执行本文中归于存储器系统控制器115的一或多个功能。在一些情况下,包含本地控制器135或本地控制器145的存储器装置130或存储器装置140可被称为受管理存储器装置,且可包含与本地(例如,裸片上或封装内)控制器(例如,本地控制器135或本地控制器145)组合的存储器阵列和相关电路系统。受管理存储器装置的实例为受管理NAND(MNAND)装置。
在一些情况下,存储器装置130可为或包含NAND装置(例如,NAND快闪装置)。存储器装置130可为包含一或多个裸片160的封装。在一些实例中,裸片160可为从晶片切割的一块电子级半导体(例如,从硅晶片切割的硅裸片)。每一裸片160可包含一或多个平面165,且每一平面165可包含块170的相应集合,其中每一块170可包含页175的相应集合,且每一页175可包含存储器单元的集合。
在一些情况下,NAND存储器装置130可包含配置成各自存储一个信息位的存储器单元,其可称为单层级单元(SLC)。另外或替代地,NAND存储器装置130可包含配置成各自存储多个信息位的存储器单元,如果配置成各自存储两个信息位,则其可称为多层级单元(MLC),如果配置成各自存储三个信息位,则其可称为三层级单元(TLC),如果配置成各自存储四个信息位,则其可称为四层级单元(QLC),或更一般地称为多层级存储器单元。多层级存储器单元可相对于SLC存储器单元提供更大的存储密度,但在一些情况下,可涉及用于支持电路系统的更窄读取或写入裕度或更大复杂度。
在一些情况下,平面165可指块170的群组,且在一些情况下,可在不同平面165内发生并行操作。举例来说,可对不同块170内的存储器单元执行并行操作,只要不同块170处于不同平面165中即可。在一些情况下,在不同平面165中执行并行操作可受制于一或多个限制,例如对不同页175内的存储器单元执行并行操作,所述存储器单元在其相应平面165内具有相同页地址(例如,与命令解码、页地址解码电路系统,或跨越平面165共享的其它电路系统有关)。
在一些情况下,块170可包含组织成行(页175)和列(例如串,未展示)的存储器单元。举例来说,同一页175中的存储器单元可共享共同字线(例如,与其耦合),且同一串中的存储器单元可共享共同数字线(其可替代地称为位线)(例如,与其耦合)。
对于一些NAND架构,存储器单元可在第一粒度级别(例如,在页粒度级别)读取及编程(例如,写入),但可在第二粒度级别(例如,在块粒度级别)擦除。也就是说,页175可为可独立地编程或读取(例如,作为单个编程或读取操作的一部分同时编程或读取)的存储器(例如,存储器单元的集合)的最小单元,且块170可为可独立地擦除(例如,作为单个擦除操作的一部分同时擦除)的存储器(例如,存储器单元的集合)的最小单元。此外,在一些情况下,NAND存储器单元可在可使用新数据重新写入之前被擦除。因此,举例来说,在一些情况下,可不更新所使用的页175,直到已擦除包含页175的整个块170为止。
在一些情况下,为了在块170内更新一些数据,同时保留块170内的其它数据,存储器装置130可将待保留的数据复制到新块170且将更新的数据写入到新块170的一或多个剩余页面。存储器装置130(例如,本地控制器135)或存储器系统控制器115可将保留在旧块170中的数据标记或以其它方式表示为无效或过时,且更新L2P映射表以使数据的逻辑地址(例如,LBA)与新的有效块170而不是旧的无效块170相关联。在一些情况下,例如由于时延或耗损考虑,此类复制和重新映射可能比擦除和重新写入整个旧块170更佳。在一些情况下,L2P映射表的一或多个副本可存储在存储器装置130的存储器单元内(例如,一或多个块170或平面165内),以供本地控制器135或存储器系统控制器115使用(例如,参考及更新)。
在一些情况下,可维护L2P表且可在页粒度级别将数据标记为有效或无效,并且页175可含有效数据、无效数据或不含数据。无效数据可为由于数据的最新版本或更新版本存储在存储器装置130的不同页175中而过时的数据。无效数据先前已被编程到无效页175,但可能不再与有效逻辑地址,例如由主机系统105参考的逻辑地址相关联。有效数据可为存储在存储器装置130上的此数据的最新版本。不包含数据的页175可为从未被写入或已被擦除的页175。
在一些情况下,存储器系统控制器115、本地控制器135或本地控制器145可执行存储器装置130或存储器装置140的操作(例如,作为一或多个媒体管理算法的一部分),例如耗损均衡、后台刷新、垃圾收集、清理、块扫描、健康监测,或其它操作,或其任何组合。举例来说,在存储器装置130内,块170可具有含有有效数据的一些页175和含有无效数据的一些页175。为了避免等待块170中的所有页175具有无效数据以便擦除和重复使用块170,可调用称为“垃圾收集”的算法,以允许块170被擦除和释放为用于后续写入操作的空闲块。垃圾收集可指媒体管理操作的集合,其包含例如选择含有有效和无效数据的块170、选择块中含有有效数据的页175、将来自所选页175的有效数据复制到新位置(例如,另一块170中的空闲页175)、将先前选择的页175中的数据标记为无效,和擦除选定块170。因此,可增加已擦除的块170的数目,使得可使用更多的块170来存储后续数据(例如,随后从主机系统105接收到的数据)。
系统100可包含支持智能工厂重置程序的任何数量的非暂时性计算机可读媒体。举例来说,主机系统105、存储器系统控制器115、存储器装置130或存储器装置140可包含或以其它方式可存取一或多个非暂时性计算机可读媒体,所述非暂时性计算机可读媒体存储指令(例如,固件)以用于执行本文中归于主机系统105、存储器系统控制器115、存储器装置130或存储器装置140的功能。举例来说,此类指令当由主机系统105(例如,由主机系统控制器106)、由存储器系统控制器115、由存储器装置130(例如,由本地控制器135)或由存储器装置140(例如,由本地控制器145)执行时可使得主机系统105、存储器系统控制器115、存储器装置130或存储器装置140执行如本文中所描述的相关联功能。
在一些实例中,系统100可实施一或多个操作以提高用以实现工厂重置程序的改进的效率,例如用于执行重置程序的时间相对较短且电力消耗减少,以及其它益处。举例来说,主机系统105可作为重置程序的部分将一或多个命令发送到存储器系统110。存储器系统110(例如,存储器系统控制器115、存储器装置130、存储器装置140等)可基于接收一或多个命令来识别重置程序(例如,可识别一或多个命令共同地指示存储器系统100执行重置程序)。举例来说,一或多个命令可包含工厂重置命令。另外或替代地,存储器系统110可基于一或多个命令的模式辨识(例如,取消映射命令集合,接着为清除命令)来确定正在执行重置程序。
存储器系统110可将存储器系统110的第一部分识别为存储用户数据(例如,使用指示存储用户数据的存储器装置130的物理位置的第一集合的映射信息)。存储器系统110可将存储器系统110的第二部分识别为存储OS数据(例如,使用指示存储OS图像的物理位置的第二集合的映射信息)。存储器系统110可基于识别第一部分和第二部分来更新映射。举例来说,存储器系统110可取消映射存储用户数据的第一部分(例如,存储器系统110可更新较高层级L2P表以逻辑上取消映射包含用户数据的一或多个存储器阵列的区域)。存储器系统110可将来自存储器系统110的第二部分的OS数据(例如,OS图像)传送到存储器系统110的第三部分。存储器系统110可基于所述传送来执行擦除操作。举例来说,存储器系统110可物理地擦除存储器块(例如,具有比在存储器系统110的第三部分处存储重定位的OS数据的一或多个块更早的版本的块)。通过实施此类技术,系统100可实现重置程序的增强的效率。
图2说明根据如本文中所公开的实例的支持智能工厂重置程序的过程流程200的实例。过程流程200可由处理逻辑实施,所述处理逻辑可包含硬件(例如,处理装置、电路系统、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件(例如,在处理装置上运行或执行的指令),或其组合。在一些实例中,过程流程200可由如本文中所描述的系统实施。举例来说,过程流程200可由主机系统105-a和存储器系统110-a实施,所述系统可为参考图1所描述的对应系统的实例。在一些实例中,系统可执行代码集合以控制系统的功能元件从而执行下文所描述的功能。另外或替代地,系统可使用专用硬件来执行下文所描述的操作的各方面。在一些实例中,存储器系统110-a(例如,存储器系统110-a的存储器装置130)可包含具有多个多层级NAND存储器单元的存储器阵列。然而,本文中所描述的技术可应用于其它存储器架构以及主机系统105和存储器系统110的其它配置。
可通过改进的重置程序启用主机系统105-a和存储器系统110-a。举例来说,主机系统105-a和存储器系统110-a可配置成利用装置的固件的一或多个特性执行操作以更高效地执行重置程序,这可能使得效率增强、电力消耗减少、用户体验改进,以及其它益处。作为说明性实例,一或多个特性可包含位于相对较大逻辑单元数目(LUN)地址范围的开始处的OS图像(例如,将保存在重置程序中)。另外或替代地,用户分区(例如,存储用户数据的存储器系统110-a的一部分)可位于LUN地址范围的末端处或可被取消映射(例如,完全被取消映射,例如,作为重置程序的部分)。可实施过程流程200或流程图300的操作以利用此类特性来实现改进的重置程序。举例来说,可使用本文中所描述的技术来避免贯穿重置程序的冗余映射更新,可启用存储器系统110-a以识别重置程序已在主机系统105-a处初始化,以及其它益处。
在一些实例中,在205处,主机系统105-a可初始化重置程序。举例来说,主机系统105-a或存储器系统110-a的用户可能希望将装置恢复到工厂状态(例如,用户特定数据未存储在装置处的状态)。在一些实例中,主机系统105-a可从用户接收指示重置程序的初始化的输入。主机系统105-a可初始化一或多个操作以移除装置的用户数据且维持(例如,读取和重写)装置的OS数据,例如与装置(例如,包含主机系统105-a或存储器系统110-a的装置)相关联的OS图像。
在210处,主机系统105-a可例如基于初始化重置程序而将一或多个命令传输到存储器系统110-a作为重置程序的部分。在一些实例中,主机系统105-a可配置成传输指示重置程序的一个命令。在一些其它实例中,主机系统105-a可传输命令集合作为重置程序的部分。举例来说,主机系统105-a可传输与存储器系统110-a的用户数据分区相关联的取消映射命令集合,接着是清除命令(例如,在传输取消映射命令集合之后或与其同时)或用以在用户数据的取消映射之后(例如,在用户数据的逻辑擦除之后)从存储器系统110物理地擦除取消映射的用户数据(例如,出于安全性或保密性的目的)的其他类型的命令。
在一些实例中,在215处,存储器系统110-a可基于在210处接收一或多个命令来识别重置程序。在一些实例中,存储器系统110-a可基于接收指示重置程序的命令来识别重置程序(例如,使用与主机系统105-a的接口以用于执行重置程序)。另外地或替代地,存储器系统110-a可配置成自动地检测重置程序。举例来说,存储器系统110-a可确定一或多个命令的模式(例如,取消映射命令集合,接着为清除命令,以及与重置程序相关联的命令的模式的其它实例)。存储器系统110-a可基于所确定的模式来识别重置程序。
在220处,存储器系统110-a可识别图像数据区域和用户数据区域。举例来说,存储器系统110-a可识别一或多个存储器阵列的哪一物理位置存储OS数据(例如,对应于待保存在重置程序中的OS图像的数据),且一或多个存储器阵列的哪一物理位置存储用户数据(例如,对应于待在重置程序中移除的用户的数据)。在一些实例中,此识别可基于映射信息。举例来说,存储器系统110-a可包含具有存储器系统110-a的逻辑地址与存储器系统110-a的物理地址之间的对应关系的映射表(例如,具有每一条目的L2P映射表包含逻辑存储器块的指示和根据L2P映射表的粒度的一或多个物理存储器块的指示)。另外或替代地,存储器系统110-a可基于用于物理块的最小到最大逻辑黑色地址(LBA)表、包含用户数据或OS数据的存储器块的一或多个位图等来识别数据区域。
存储器系统110-a可基于识别图像区域和用户区域来更新映射信息。举例来说,存储器系统110-a可更新映射表(例如,较高层级L2P表)以逻辑上取消映射用户区域。作为说明性实例,较低分级层级L2P表可包含将用户区域的逻辑地址链接到用户区域的物理地址的一或多个条目。存储器系统110-a可更新(例如,移除或修改)较高层级L2P表中的一或多个条目,其可移除对应于较高层级L2P表的较低层级表中映射的一或多个条目,以及更新映射信息以逻辑上取消映射用户区域的其它实例。另外或替代地,L2P表可包含不同分级层级(例如,粒度)处的映射表集合,其中较低层级处的表映射到更粒度(例如,特定)物理位置(例如,页地址),且较高层级处的表映射到较小的粒度(例如,特定)物理位置(例如,块或平面地址)。在物理地址的足够大或连续部分待取消映射的情况下,更新较高层级表而不更新一或多个较低层级表可提供时延和效率的益处。
在225处,存储器系统110-a可重定位图像数据。举例来说,存储器系统110-a可将OS数据从存储器系统110-a的一部分(例如,第二部分)传送到存储器系统110-a的另一部分(例如,第三部分)。在一些实例中,存储器系统110-a可实施如参考图3所描述的重定位方案以重定位图像数据。举例来说,存储器系统110-a可按照LBA次序读取和重写映射数据(例如,在存储器系统110-a更新L2P表以取消映射用户数据之后保持映射的OS数据)。
在230处,存储器系统110-a可执行擦除操作。举例来说,存储器系统110-a可对物理地址(例如,包含作为重置程序的部分待移除的数据(例如用户数据)的物理地址)执行擦除操作。作为说明性实例,存储器系统110-a可使用当前主机块(例如,其中写入最新数据和/或块与第一块版本相关联的块)停止,断开具有不同块版本的新存储器块(例如,比第一块版本相对更近的第二块版本),且在225处将OS传送到新存储器块。存储器系统110-a可对具有比在重定位图像数据之前断开的新存储器块更早的版本的块执行擦除操作。举例来说,存储器系统110-a可利用较早的块版本物理地擦除存储器块(例如,存储器系统110-a可擦除一或多个存储器阵列的与用户数据相关联的第一部分和一或多个存储器阵列的包含OS数据的开始位置的第二部分,且存储器系统110-a可保留一或多个存储器阵列的包含重定位的OS数据的第三部分)。
在一些实例中,参考与存储器系统110-a相关联的过程流程200所描述的操作和信令可由如参考图1所描述的存储器系统控制器115执行或以其它方式由所述存储器系统控制器115支持。尽管在主机系统105-a和存储器系统110-a的上下文中说明,但在一些实例中,所描述的技术可说明与存储器装置130或存储器装置140(例如,本地控制器135、本地控制器145)相关联的操作或信令,所述操作或信令可或可不由存储器系统控制器115支持或经由所述存储器系统控制器115通信。在一些实例中,通过存储器系统110-a说明的某些操作或信令可在系统层级(例如,由存储器系统控制器115)执行,且某些操作或信令可在装置层级(例如,由本地控制器135,由本地控制器145)执行。在各种实例中,存储器系统控制器115、或本地控制器135、或本地控制器145、或其组合可被称为与存储器系统110-a的存储器阵列耦合且配置成使得存储器系统110-a执行本文中所描述的各种操作的控制组件。此外,在各种实例中,主机系统105-a或其组件可被称为配置成与存储器系统110-a耦合且配置成使得主机系统105-a执行本文中所描述的各种操作的控制组件。
图3说明根据如本文中所公开的实例的支持智能工厂重置程序的流程图300的实例。流程图300可由处理逻辑实施,所述处理逻辑可包含硬件(例如,处理装置、电路系统、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件(例如,在处理装置上运行或执行的指令),或其组合。在一些实例中,流程图300可由如本文中所描述的系统实施。举例来说,流程图300可由存储器系统110实施,所述系统可为参考图1和2所描述的对应系统的实例。流程图300可说明例如存储器系统100可实施以重定位如本文中所描述的OS数据的实例数据重定位方案。
在一些实例中,OS数据可位于相对紧密的物理空间(例如,相对连续的空间)中,例如,归因于在装置的制造阶段期间依序写入的OS数据或场系统更新,以及其它实例。另外或替代地,OS数据可被视为“冷”数据(例如,可相对不频繁地存取OS数据)。在一些实例中,存储器系统(例如,MNAND装置的固件)可维持一些自由存储器块(例如,可用于数据存储的存储器块),其可提供用于存储器系统的性能提升能力。在一些此类实例中,存储器系统可在不触发一或多个垃圾收集程序的情况下重定位OS数据(例如,包含复制到新块的图像数据的冷块可在重定位期间释放,且可在重定位之前自动补充自由存储器块的库)。
在一些其它实例中,可在数据重定位期间触发垃圾收集程序(例如,存储器系统可试图通过刷新开始重定位数据的物理位置而将从一或多个存储器阵列的第一部分重定位的“旧”OS数据释放到一或多个存储器阵列的第三部分)。存储器系统可实施用以识别无效存储器块的技术,其可使得存储器系统能够避免由遗漏或未完成的取消映射操作引起的低效(例如,计时惩罚)。举例来说,存储器系统可维持包含图像数据的存储器块的位图,存储器系统可跟踪每一物理块所含有的最小和最大LBA,以及用以识别无效存储器块的技术的其它实例。存储器系统可避免针对所识别的无效块执行垃圾收集程序,例如,直到当可擦除“旧”块时重置程序结束为止,这可通过避免同时擦除小部分中的块而不是擦除较大部分中的所有块来提高效率。
另外或替代地,存储器系统可实施流程图300的一或多个方面以将新块创建并入到重定位程序中。举例来说,流程图300可使得存储器系统能够确保在不触发相对大量的垃圾收集程序的情况下存在可用于数据存储(例如,用于来自源存储器块的数据重定位)的自由存储器块(例如,目标存储器块)。在一些实例中,源块或目标块可为或对应于虚拟块(例如,虚拟块可对应于一或多个存储器阵列的物理块集合)。此数据重定位方案可使得重置程序的效率提高,以及其它益处。
在305处,可初始化数据重定位程序。举例来说,存储器系统可初始化数据重定位程序(例如,以便开始将OS数据从一或多个存储器阵列的第一物理部分传送到一或多个存储器阵列的不同物理部分作为重置程序的部分)。在一些实例中,存储器系统可将第一物理部分识别为OS图像区域,且不同物理部分可为包含可用于数据存储的一或多个自由存储器块的目标区域。
在310处,可确定自由存储器块的量是否满足阈值。举例来说,存储器系统可确定自由存储器块的量是否满足自由存储器块的阈值量。在一些实例中,存储器系统可确定自由存储器块(例如,两个或更多个自由存储器块)的量满足自由存储器块(例如,至少两个自由存储器块)的阈值以继续进行到315。在此类实例中,可重定位图像数据且可更新映射表。举例来说,存储器系统可将一些OS图像数据(例如,从存储OS数据的一或多个存储器阵列的第一部分的源块)传送到大量自由存储器块中的至少一个(例如,存储器系统可选择自由存储器块中的一个作为用于重定位图像数据的目标块)。存储器系统可基于传送数据来更新映射信息。举例来说,存储器系统可更新包含重定位的图像数据的逻辑地址与重定位的图像数据的物理地址之间的对应关系的映射表。
在320处,可确定图像是否完成。举例来说,存储器系统可确定是否存在剩余的OS数据(例如,OS图像数据,以及保存在重置程序中的数据的其它实例)从存储OS数据的一或多个存储器阵列的所识别部分传送。在一些实例中,存储器系统可确定图像完成。在此类实例中,在325处,可擦除旧块。举例来说,存储器系统可对如参考图2所描述的一或多个源块(例如,在重定位OS数据之前存储OS数据的存储器块)执行擦除操作。在一些其它实例中,存储器系统可确定图像未完成。举例来说,可用于数据存储的目标存储器块在310处可完成(例如,目标存储器块可不包含可用存储区域),但存储器系统可确定存在待重定位以完成图像的更多OS数据。在此类实例中,存储器系统可返回到310。
在一些实例中,在310处,可确定自由块的量未能满足阈值。举例来说,存储器系统可确定自由块(例如,可用于数据存储的一个块)的量低于阈值量(例如,可用于数据存储的两个块)。在此类实例中,存储器系统可继续进行到330。
在330处,可确定是否断开源块。举例来说,存储器系统可确定源块尚未断开以用于数据重定位。在此类实例中,在335处,可选择源块。举例来说,存储器系统可从一或多个存储器阵列的一部分选择存储OS数据的存储器块。如果存储器系统在330处确定源块断开,或存储器系统在335处选择源块,那么存储器系统可继续进行到340。
在340处,可读取数据或元数据且可获得源块的LBA。举例来说,存储器系统可通过读取元数据而识别源块中的一些数据的LBA。另外或替代地,存储器系统可使用读取操作读取数据(例如,以便使用重写操作将数据重定位到目标存储器块)。
在345处,可确定LBA是否在图像范围中。举例来说,存储器系统可确定所识别LBA是否在对应于存储OS数据的LBA的LBA范围内(例如,存储器系统可将LBA与包含存储OS数据的LBA的范围的映射信息进行比较)。
在一些实例中,如果LBA在图像范围内,那么在350处可确定数据是否有效。举例来说,存储器系统可读取数据且确定数据有效,且与所述数据相关联的LBA在图像范围内。在此类实例中,存储器系统可继续进行到315(例如,可将有效数据重定位到目标存储器块)。
在一些其它实例中,如果LBA不在图像范围内或如果数据不是有效数据,那么可确定源块是否完成。举例来说,存储器系统可确定源块未完成(例如,可有效且在图像范围内的另外的LBA和数据保持在源块中)。在此类实例中,存储器系统可继续进行到340且重复340到355直到源块完成为止。举例来说,存储器系统可确定源块完成(例如,图像范围内的每一有效OS数据已重定位到目标存储器块),且存储器系统可继续进行到320。存储器系统可重复本文中所描述的各种操作中的一或多个,直到图像完成为止。
在一些实例中,存储器系统(或主机系统)可通过实施流程图300的操作而实现一或多个优点。举例来说,在310处,如果满足自由块的阈值量(例如,两个或更多个块可用于数据存储),那么通过继续进行到315,存储器系统可相对高效地重定位数据。如果在310处未满足块的阈值量(例如,仅剩下一个自由块作为目标块,但可能剩余OS数据的多于一个源块来完成图像),那么通过继续进行到330到355,存储器系统可使用新块创建作为数据重定位方案的部分。举例来说,来自源块的有效数据可传送到目标块(例如,310处的最后剩余的自由存储器块),直到源块完成为止。在一些实例中,在确定源块完成(例如,源块不包含待保存在重置程序中的OS数据)之后,存储器系统可将完成源块的数据擦除为新的自由存储器块,且存储器系统可实施操作310到355,直到图像完成为止。
图4展示根据如本文中所公开的实例的支持智能工厂重置程序的存储器系统405的组件的框图400。存储器系统405的组件可为如参考图1至3所描述的存储器系统的各方面的实例。存储器系统405可包含命令组件410、部分组件415、映射组件420、数据传送组件425、擦除组件430、存储器块组件435、LBA组件440、验证组件445、元数据组件450和垃圾收集组件455。这些模块中的每一个可直接或间接地彼此通信(例如,经由一或多个总线)。举例来说,在一些情况下,存储器系统405的一些或所有组件可包含在如参考图1所描述的存储器系统控制器115中。另外或替代地,存储器系统405的一些或所有组件可包含在如参考图1所描述的本地控制器135中。
命令组件410可接收与一或多个存储器阵列的重置程序相关联的一或多个命令。在一些实例中,命令组件410可基于一或多个命令包含取消映射命令和清除命令的模式来识别重置程序。
部分组件415可响应于一或多个命令而将一或多个存储器阵列的第一部分识别为存储用户数据且将一或多个存储器阵列的第二部分识别为存储与操作系统相关联的数据。
映射组件420可基于识别第一部分和第二部分来更新存储器系统的映射,所述映射包含一或多个存储器阵列的逻辑地址集合与物理地址集合之间的对应关系。在一些情况下,映射包含在第一分级层级处的第一表和在第一分级层级下方的第二分级层级处的第二表,且其中更新映射包含取消映射第一表的至少一部分,所述第一表的至少部分对应于一或多个存储器阵列的第一部分。在一些情况下,映射包含L2P映射,一或多个存储器阵列的第一部分包含一或多个存储器阵列内的存储器块的第一集合,一或多个存储器阵列的第二部分包含一或多个存储器阵列内的存储器块的第二集合,或其任何组合。
数据传送组件425可将与操作系统相关联的数据传送到一或多个存储器阵列的第三部分。在一些实例中,数据传送组件425可将与操作系统相关联的数据的一部分传送到一或多个存储器块,一或多个存储器阵列的第三部分包含一或多个存储器块。在一些实例中,数据传送组件425可基于所述确定将存储在一或多个存储器块中的数据传送到一或多个存储器块的第二集合,一或多个存储器阵列的第三部分包含一或多个存储器块的第二集合。
擦除组件430可对物理地址集合的物理地址子集执行擦除操作,物理地址子集对应于一或多个存储器阵列的第一部分和一或多个存储器阵列的第二部分。在一些实例中,擦除组件430可对具有比存储器块的第二集合的版本更早的版本的存储器块的第一集合执行擦除操作。
存储器块组件435可识别一或多个存储器阵列内的可用于数据存储的一或多个存储器块。在一些实例中,存储器块组件435可识别存储数据的一或多个存储器块,所述一或多个存储器块对应于映射的一或多个条目。在一些实例中,存储器块组件435可断开一或多个存储器阵列内的存储器块,存储器系统的第三部分包含存储器块。
在一些实例中,存储器块组件435可闭合具有比断开的存储器块的版本更早的版本的主机存储器块,其中传送数据是基于闭合主机存储器块。在一些实例中,存储器块组件435可识别与包含在一或多个命令中的一或多个取消映射命令相关联的一或多个存储器阵列的一或多个存储器块。在一些实例中,存储器块组件435可维持包含与操作系统相关联的数据的存储器块的位图,包含与操作系统相关联的数据的存储器块不同于所述一或多个存储器块。
LBA组件440可确定存储器块的逻辑块地址是否在存储与操作系统相关联的数据的逻辑块地址的范围内。在一些实例中,LBA组件440可基于读取元数据来识别与一或多个存储器块相关联的逻辑块地址,其中确定逻辑块地址是否在逻辑块地址的范围内是基于识别逻辑块地址。
验证组件445可确定存储在一或多个存储器块中的数据为有效数据,其中将存储在一或多个存储器块中的数据传送到一或多个存储器块的第二集合是基于确定存储在存储器块中的数据为有效数据。
元数据组件450可读取存储在一或多个存储器块中的数据的元数据。
垃圾收集组件455可基于传送数据来执行垃圾收集程序。在一些实例中,垃圾收集组件455可避免对所识别的一或多个存储器块执行垃圾收集程序。
图5展示说明根据本公开的各方面的支持智能工厂重置程序的一或多种方法500的流程图。方法500的操作可由如本文中所描述的存储器系统或其组件(例如,存储器系统控制器、存储器装置、本地控制器)实施。举例来说,方法500的操作可由如参考图4所描述的存储器系统执行,在一些实例中,所述存储器系统可包含具有多个多层级NAND存储器单元的存储器阵列。在一些实例中,存储器系统可执行指令集合(例如,软件或固件)以控制存储器系统的功能元件从而执行所描述的功能的各方面。另外或替代地,存储器系统可使用专用硬件来执行所描述的功能的各方面。
在505处,存储器系统可接收与一或多个存储器阵列的重置程序相关联的一或多个命令。可根据本文中所描述的方法来执行505的操作。在一些实例中,505的操作的各方面可由如参考图4所描述的命令组件执行。
在510处,存储器系统可响应于一或多个命令而将一或多个存储器阵列的第一部分识别为存储用户数据且将一或多个存储器阵列的第二部分识别为存储与操作系统相关联的数据。可根据本文中所描述的方法来执行510的操作。在一些实例中,510的操作的各方面可由如参考图4所描述的部分组件执行。
在515处,存储器系统可至少部分地基于识别第一部分和第二部分来更新存储器系统的映射,所述映射包含一或多个存储器阵列的逻辑地址集合与物理地址集合之间的对应关系。可根据本文中所描述的方法来执行515的操作。在一些实例中,515的操作的各方面可由如参考图4所描述的映射组件执行。
在520处,存储器系统可将与操作系统相关联的数据传送到一或多个存储器阵列的第三部分。可根据本文中所描述的方法来执行520的操作。在一些实例中,520的操作的各方面可由如参考图4所描述的数据传送组件执行。
在525处,存储器系统可对物理地址集合的物理地址子集执行擦除操作,所述物理地址子集对应于一或多个存储器阵列的第一部分和一或多个存储器阵列的第二部分。可根据本文中所描述的方法来执行525的操作。在一些实例中,525的操作的各方面可由如参考图4所描述的擦除组件执行。
在一些实例中,如本文中所描述的设备可执行一或多种方法,例如方法500。所述设备可包含用于进行以下操作的特征、构件或指令(例如,存储可由处理器执行的指令的非暂时性计算机可读媒体):接收与存储器系统中所包含的一或多个存储器阵列的重置程序相关联的一或多个命令;响应于一或多个命令,将一或多个存储器阵列的第一部分识别为存储用户数据且将一或多个存储器阵列的第二部分识别为存储与操作系统相关联的数据;基于识别第一部分和第二部分而更新存储器系统的映射,所述映射包含一或多个存储器阵列的逻辑地址集合与物理地址集合之间的对应关系;将与操作系统相关联的数据传送到一或多个存储器阵列的第三部分;和对物理地址集合的物理地址子集执行擦除操作,所述物理地址子集对应于一或多个存储器阵列的第一部分和一或多个存储器阵列的第二部分。
在本文中所描述的方法500和设备的一些实例中,传送数据可包含用于进行以下操作的操作、特征、构件或指令:在一或多个存储器阵列内识别可用于数据存储的一或多个存储器块;和将与操作系统相关联的数据的一部分传送到一或多个存储器块,一或多个存储器阵列的第三部分包含一或多个存储器块。
在本文中所描述的方法500和设备的一些实例中,传送数据可包含用于进行以下操作的操作、特征、构件或指令:在一或多个存储器阵列内识别存储数据的一或多个存储器块,所述一或多个存储器块对应于映射的一或多个条目;确定与一或多个存储器块相关联的逻辑块地址是否在与操作系统相关联的数据的逻辑块地址范围内;和基于所述确定而将存储在一或多个存储器块中的数据传送到一或多个存储器块的第二集合,一或多个存储器阵列的第三部分包含一或多个存储器块的第二集合。
本文中所描述的方法500和设备的一些实例可进一步包含用于进行以下操作的操作、特征、构件或指令:确定存储在一或多个存储器块中的数据可为有效数据,其中将存储在一或多个存储器块中的数据传送到一或多个存储器块的第二集合可基于确定存储在一或多个存储器块中的数据为有效数据。
本文中所描述的方法500和设备的一些实例可进一步包含用于进行以下操作的操作、特征、构件或指令:读取存储在一或多个存储器块中的数据的元数据;和基于读取元数据而识别与一或多个存储器块相关联的逻辑块地址,其中确定逻辑块地址是否在逻辑块地址的范围内可基于识别逻辑块地址。
在本文中所描述的方法500和设备的一些实例中,一或多个命令包含初始化重置程序的命令。
本文中所描述的方法500和设备的一些实例可进一步包含用于进行以下操作的操作、特征、构件或指令:基于一或多个命令包含取消映射命令和清除命令的模式而识别重置程序。
本文中所描述的方法500和设备的一些实例可进一步包含用于进行以下操作的操作、特征、构件或指令:断开一或多个存储器阵列内的存储器块,一或多个存储器阵列的第三部分包含存储器块;和闭合具有比断开的存储器块的版本更早的版本的主机存储器块,其中传送数据可基于闭合主机存储器块。
在本文中所描述的方法500和设备的一些实例中,对物理地址子集执行擦除操作可包含用于进行以下操作的操作、特征、构件或指令:对可具有比存储器块的第二集合的版本更早的版本的存储器块的第一集合执行擦除操作。
本文中所描述的方法500和设备的一些实例可进一步包含用于进行以下操作的操作、特征、构件或指令:基于传送数据而执行垃圾收集程序。
本文中所描述的方法500和设备的一些实例可进一步包含用于进行以下操作的操作、特征、构件或指令:识别可与一或多个命令中所包含的一或多个取消映射命令相关联的一或多个存储器阵列的一或多个存储器块;和避免针对所识别的一或多个存储器块执行垃圾收集程序。
在本文中所描述的方法500和设备的一些实例中,识别一或多个存储器块可包含用于进行以下操作的操作、特征、构件或指令:维持包含与操作系统相关联的数据的存储器块的位图,包含与操作系统相关联的数据的存储器块不同于所述一或多个存储器块。
在本文中所描述的方法500和设备的一些实例中,识别一或多个存储器块可基于更新映射。
在本文中所描述的方法500和设备的一些实例中,映射包含在第一分级层级处的第一表和在第一分级层级下方的第二分级层级处的第二表,且其中更新映射包含取消映射第一表的至少一部分,所述第一表的至少部分对应于存储器系统的第一部分。
在本文中所描述的方法500和设备的一些实例中,映射包含L2P映射,一或多个存储器阵列的第一部分包含一或多个存储器阵列内的存储器块的第一集合,一或多个存储器阵列的第二部分包含一或多个存储器阵列内的存储器块的第二集合,或其任何组合。
应注意,上文描述的方法描述了可能的实施方案,且操作和步骤可重新布置或以其它方式加以修改,且其它实施方案是可能的。此外,可组合方法中的两个或更多个的各部分。
描述一种用于由存储器系统执行的方法的设备。设备可包含一或多个存储器阵列和与一或多个存储器阵列耦合的控制组件。控制组件可配置成使得设备:接收与一或多个存储器阵列的重置程序相关联的一或多个命令;响应于一或多个命令,将一或多个存储器阵列的第一部分识别为存储用户数据且将一或多个存储器阵列的第二部分识别为存储与操作系统相关联的数据;基于识别第一部分和第二部分而更新存储器系统的映射,所述映射包含一或多个存储器阵列的逻辑地址集合与物理地址集合之间的对应关系;将与操作系统相关联的数据传送到一或多个存储器阵列的第三部分;和对物理地址集合的物理地址子集执行擦除操作,所述物理地址子集对应于一或多个存储器阵列的第一部分和一或多个存储器阵列的第二部分。
在一些实例中,控制组件可进一步配置成使得设备:在一或多个存储器阵列内识别可用于数据存储的一或多个存储器块;和将与操作系统相关联的数据的一部分传送到一或多个存储器块,一或多个存储器阵列的第三部分包含一或多个存储器块。
在一些实例中,控制组件可进一步配置成使得设备:在一或多个存储器阵列内识别存储数据的一或多个存储器块,一或多个存储器块对应于映射的一或多个条目;确定与一或多个存储器块相关联的逻辑块地址是否在与操作系统相关联的数据的逻辑块地址的范围内;和基于所述确定而将存储在一或多个存储器块中的数据传送到一或多个存储器块的第二集合,一或多个存储器阵列的第三部分包含一或多个存储器块的第二集合。
在一些实例中,控制组件可进一步配置成使得设备确定存储在一或多个存储器块中的数据为有效数据,其中将存储在一或多个存储器块中的数据传送到一或多个存储器块的第二集合可基于确定存储在一或多个存储器块中的数据为有效数据。
在一些实例中,控制组件可进一步配置成使得设备:读取存储在一或多个存储器块中的数据的元数据;和基于读取元数据而识别与一或多个存储器块相关联的逻辑块地址,其中确定逻辑块地址是否在逻辑块地址的范围内可基于识别逻辑块地址。
在一些实例中,一或多个命令可包含初始化重置程序的命令。
在一些实例中,控制组件可进一步配置成使得设备基于一或多个命令包含取消映射命令和清除命令的模式而识别重置程序。
在一些实例中,控制组件可进一步配置成使得设备:断开一或多个存储器阵列内的存储器块,一或多个存储器阵列的第三部分包含存储器块;和闭合具有比断开的存储器块的版本更早的版本的主机存储器块,其中传送数据可基于闭合主机存储器块。
在一些实例中,控制组件可进一步配置成使得设备对具有比存储器块的第二集合的版本更早的版本的存储器块的第一集合执行擦除操作。
在一些实例中,控制组件可进一步配置成使得设备基于传送数据而执行垃圾收集程序。
在一些实例中,控制组件可进一步配置成使得设备:识别与一或多个命令中包含的一或多个取消映射命令相关联的一或多个存储器阵列的一或多个存储器块;和避免针对所识别的一或多个存储器块执行垃圾收集程序。
在一些实例中,控制组件可进一步配置成使得设备维持包含与操作系统相关联的数据的存储器块的位图,包含与操作系统相关联的数据的存储器块不同于所述一或多个存储器块。
在一些实例中,控制组件可进一步配置成使得设备基于更新映射而识别一或多个存储器块。
在一些实例中,映射可包含在第一分级层级处的第一表和在第一分级层级下方的第二分级层级处的第二表,且更新映射可包含取消映射第一表的至少一部分,所述第一表的至少部分对应于存储器系统的第一部分。
在一些实例中,映射可包含L2P映射,一或多个存储器阵列的第一部分可包含一或多个存储器阵列内的存储器块的第一集合,且一或多个存储器阵列的第二部分可包含一或多个存储器阵列内的存储器块的第二集合,或其任何组合。
可使用多种不同技术和技艺中的任一个来表示本文中所描述的信息和信号。举例来说,可通过电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示在整个上文描述中可能参考的数据、指令、命令、信息、信号、位、符号和码片。一些图式可将信号说明为单个信号;然而,所属领域的一般技术人员将理解,所述信号可表示信号总线,其中总线可具有多种位宽度。
术语“电子通信”、“导电接触”、“连接”和“耦合”可指代支持信号在组件之间流动的组件之间的关系。如果组件之间存在可以在任何时间支持信号在组件之间流动的任何导电路径,那么认为组件彼此电子通信(或彼此导电接触、或彼此连接、或彼此耦合)。在任何给定时间,基于包含所连接组件的装置的操作,彼此电子通信(或彼此导电接触、或彼此连接、或彼此耦合)的组件之间的导电路径可以是开路或闭路。所连接组件之间的导电路径可以是组件之间的直接导电路径,或所连接组件之间的导电路径可以是可包含例如开关、晶体管或其它组件的中间组件的间接导电路径。在一些实例中,可以例如使用例如开关或晶体管的一或多个中间组件来中断所连接组件之间的信号流一段时间。
术语“耦合”是指从组件之间的开路关系移动到组件之间的闭路关系的条件,在所述开路关系中,信号当前无法通过导电路径在所述组件之间传达,在所述闭路关系中,信号能够通过导电路径在所述组件之间传达。当例如控制器的组件将其它组件耦合在一起时,组件发起允许信号通过先前不准许信号流动的导电路径在其它组件之间流动的改变。
术语“隔离”是指信号当前不能在组件之间流动的组件之间的关系。如果组件之间存在开路,那么所述组件彼此隔离。举例来说,由定位在两个组件之间的开关间隔开的所述组件在开关断开时彼此隔离。当控制器隔离两个组件时,所述控制器实现以下改变:阻止信号使用先前准许信号流动的导电路径在组件之间流动。
本文中所论述的包含存储器阵列的装置可形成在半导体衬底上,例如硅、锗、硅锗合金、砷化镓、氮化镓等。在一些实例中,衬底为半导体晶片。在其它实例中,衬底可以是绝缘体上硅(SOI)衬底,例如玻璃上硅(SOG)或蓝宝石上硅(SOP),或另一衬底上的半导体材料的外延层。可通过使用包含但不限于磷、硼或砷的各种化学物种的掺杂来控制衬底或衬底的子区的导电性。可在衬底的初始形成或生长期间,通过离子植入或通过任何其它掺杂方法来执行掺杂。
本文中所论述的开关组件或晶体管可表示场效应晶体管(FET),且包括包含源极、漏极和栅极的三端装置。所述端可通过例如金属的导电材料连接到其它电子元件。源极和漏极可为导电的,且可包括重度掺杂(例如简并)的半导体区。源极与漏极可通过轻度掺杂的半导体区或通道分离。如果沟道是n型(即,大部分载流子为电子),那么FET可被称作n型FET。如果沟道是p型(即,大部分载流子为空穴),那么FET可被称作p型FET。所述沟道可由绝缘栅极氧化物封端。可通过将电压施加到栅极来控制沟道导电率。举例来说,将正电压或负电压分别施加到n型FET或p型FET可使沟道变为导电的。在将大于或等于晶体管的阈值电压的电压施加到晶体管栅极时,晶体管可“接通”或“激活”。在将小于晶体管的阈值电压的电压施加到晶体管栅极时,晶体管可“断开”或“去活”。
本文中结合附图阐述的描述内容描述了实例配置,且并不表示可以实施的或在权利要求书的范围内的所有实例。本文中所使用的术语“示范性”是指“充当实例、例子或说明”,且不“优选于”或“优于”其它实例。具体实施方式包含提供对所描述技术的理解的具体细节。然而,可在没有此等具体细节的情况下实践此等技术。在一些情况下,以框图形式展示众所周知的结构及装置以免混淆所描述实例的概念。
在附图中,类似组件或特征可具有相同参考标记。另外,可通过在参考标记之后跟着短划线和在类似组件当中进行区分的第二标记来区分相同类型的各种组件。如果在说明书中仅使用第一参考标记,那么描述内容适用于具有相同第一参考标记而与第二参考标记无关的类似组件中的任何一个。
可使用多种不同技术和技艺中的任一个来表示本文中所描述的信息和信号。举例来说,可通过电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示在整个上文描述中可能参考的数据、指令、命令、信息、信号、位、符号和码片。
可利用通用处理器、DSP、ASIC、FPGA或其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件或其被设计成执行本文中所描述的功能的任何组合来实施或执行结合本文中的本公开而描述的各种说明性块和模块。通用处理器可为微处理器,但在替代方案中,处理器可以是任何处理器、控制器、微控制器或状态机。处理器还可被实施为计算装置的组合(例如,DSP与微处理器的组合、多个微处理器、结合DSP核心的一或多个微处理器,或任何其它此配置)。
本文中所描述的功能可以硬件、由处理器执行的软件、固件或其任何组合实施。如果以由处理器执行的软件实施,那么可将功能作为一或多个指令或代码存储在计算机可读媒体上或通过计算机可读媒体传输。其它实例和实施方案在本公开及所附权利要求书的范围内。举例来说,由于软件的本质,上文所描述的功能可使用由处理器执行的软件、硬件、固件、硬连线或这些中的任一个的组合来实施。实施功能的特征也可物理上位于各个位置处,包含被分布以使得功能的各部分在不同物理位置处实施。此外,如本文(包含在权利要求书中)所使用,如在项列表(例如,以例如“中的至少一个”或“中的一或多个”的短语开头的项列表)中所使用的“或”指示包含性列表,使得例如A、B或C中的至少一个的列表意指A或B或C或AB或AC或BC或ABC(即,A和B和C)。此外,如本文中所使用,短语“基于”不应被理解为指代封闭条件集合。举例来说,在不脱离本公开的范围的情况下,描述为“基于条件A”的示范性步骤可基于条件A和条件B两者。换句话说,如本文中所使用,短语“基于”应同样地解释为短语“至少部分地基于”。
计算机可读媒体包含非暂时性计算机存储媒体和通信媒体两者,通信媒体包含促进将计算机程序从一处传送到另一处的任何媒体。非暂时性存储媒体可为可由通用或专用计算机存取的任何可用媒体。借助于实例而非限制,非暂时性计算机可读媒体可包括RAM、ROM、电可擦除可编程只读存储器(EEPROM)、光盘(CD)ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,或可用于携载或存储呈指令或数据结构形式的所要程序代码构件且可由通用或专用计算机或通用或专用处理器存取的任何其它非暂时性媒体。此外,恰当地将任何连接称作计算机可读媒体。举例来说,如果使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)或例如红外线、无线电和微波的无线技术从网站、服务器或其它远程源传输软件,那么所述同轴电缆、光纤电缆、双绞线、数字订户线(DSL)或例如红外线、无线电和微波的无线技术包含在媒体的定义中。如本文中所使用,磁盘和光盘包含CD、激光光盘、光学光盘、数字多功能光盘(DVD)、软盘和蓝光光盘,其中磁盘通常以磁性方式复制数据,而光盘利用激光以光学方式复制数据。上述各项的组合也包含在计算机可读媒体的范围内。
提供本文中的描述以使所属领域的技术人员能够制造或使用本公开。对本公开的各种修改对所属领域的技术人员来说将是显而易见的,且本文中所定义的一般原理可在不脱离本公开的范围的情况下应用于其它变体。因此,本公开不限于本文中所描述的实例和设计,而是被赋予与本文中所公开的原理和新颖特征一致的最宽范围。

Claims (25)

1.一种设备,其包括:
一或多个存储器阵列;
控制组件,其与所述一或多个存储器阵列耦合且配置成使得所述设备:
接收与包含所述一或多个存储器阵列的存储器系统的重置程序相关联的一或多个命令;
响应于所述一或多个命令,将所述一或多个存储器阵列的第一部分识别为存储用户数据且将所述一或多个存储器阵列的第二部分识别为存储与操作系统相关联的数据;
至少部分地基于识别所述第一部分和所述第二部分而更新所述存储器系统的映射,所述映射包括所述一或多个存储器阵列的逻辑地址集合与物理地址集合之间的对应关系;
将与所述操作系统相关联的所述数据传送到所述一或多个存储器阵列的第三部分;和
对所述物理地址集合的物理地址子集执行擦除操作,所述物理地址子集对应于所述一或多个存储器阵列的所述第一部分和所述一或多个存储器阵列的所述第二部分。
2.根据权利要求1所述的设备,其中所述控制组件进一步配置成使得所述设备:
在所述一或多个存储器阵列内识别可用于数据存储的一或多个存储器块;和
将与所述操作系统相关联的所述数据的一部分传送到所述一或多个存储器块,所述一或多个存储器阵列的所述第三部分包括所述一或多个存储器块。
3.根据权利要求1所述的设备,其中所述控制组件进一步配置成使得所述设备:
在所述一或多个存储器阵列内识别存储数据的一或多个存储器块,所述一或多个存储器块对应于所述映射的一或多个条目;
确定与所述一或多个存储器块相关联的逻辑块地址是否在与所述操作系统相关联的所述数据的逻辑块地址的范围内;和
至少部分地基于所述确定而将存储在所述一或多个存储器块中的所述数据传送到一或多个存储器块的第二集合,所述一或多个存储器阵列的所述第三部分包括一或多个存储器块的所述第二集合。
4.根据权利要求3所述的设备,其中所述控制组件进一步配置成使得所述设备:
确定存储在所述一或多个存储器块中的所述数据是有效数据,其中所述控制组件配置成使得所述设备至少部分地基于确定存储在所述一或多个存储器块中的所述数据是有效数据而将存储在所述一或多个存储器块中的所述数据传送到一或多个存储器块的所述第二集合。
5.根据权利要求3所述的设备,其中所述控制组件进一步配置成使得所述设备:
读取存储在所述一或多个存储器块中的所述数据的元数据;和
至少部分地基于读取所述元数据而识别与所述一或多个存储器块相关联的所述逻辑块地址,其中所述控制组件配置成使得所述设备至少部分地基于识别所述逻辑块地址而确定所述逻辑块地址是否在逻辑块地址的所述范围内。
6.根据权利要求1所述的设备,其中所述一或多个命令包括初始化所述重置程序的命令。
7.根据权利要求1所述的设备,其中所述控制组件进一步配置成使得所述设备:
至少部分地基于所述一或多个命令包括取消映射命令和清除命令的模式而识别所述重置程序。
8.根据权利要求1所述的设备,其中所述控制组件进一步配置成使得所述设备:
断开所述一或多个存储器阵列内的存储器块,所述一或多个存储器阵列的所述第三部分包括所述存储器块;和
闭合具有比所述断开的存储器块的版本更早的版本的主机存储器块,其中所述控制组件配置成使得所述设备至少部分地基于闭合所述主机存储器块而传送所述数据。
9.根据权利要求8所述的设备,其中所述控制组件进一步配置成使得所述设备:
对具有比存储器块的第二集合的版本更早的版本的存储器块的第一集合执行所述擦除操作。
10.根据权利要求1所述的设备,其中所述控制组件进一步配置成使得所述设备:
至少部分地基于传送所述数据而执行垃圾收集程序。
11.根据权利要求10所述的设备,其中所述控制组件进一步配置成使得所述设备:
识别与所述一或多个命令中包含的一或多个取消映射命令相关联的所述一或多个存储器阵列的一或多个存储器块;和
避免针对所述识别的一或多个存储器块执行所述垃圾收集程序。
12.根据权利要求11所述的设备,其中所述控制组件进一步配置成使得所述设备:
维持包含与所述操作系统相关联的所述数据的存储器块的位图,包含与所述操作系统相关联的所述数据的所述存储器块不同于所述一或多个存储器块。
13.根据权利要求11所述的设备,其中所述控制组件配置成使得所述设备至少部分地基于更新所述映射而识别所述一或多个存储器块。
14.根据权利要求1所述的设备,其中所述映射包括在第一分级层级处的第一表和在所述第一分级层级下方的第二分级层级处的第二表,且其中所述控制组件配置成使得所述设备通过取消映射所述第一表的至少一部分而更新所述映射,所述第一表的所述至少所述部分对应于所述存储器系统的所述第一部分。
15.根据权利要求1所述的设备,其中所述映射包括逻辑到物理L2P映射表,所述一或多个存储器阵列的所述第一部分包括所述一或多个存储器阵列内的存储器块的第一集合,所述一或多个存储器阵列的所述第二部分包括所述一或多个存储器阵列内的存储器块的第二集合,或其任何组合。
16.一种存储代码的包括指令的非暂时性计算机可读媒体,所述指令在由包括存储器系统的电子系统的处理器执行时使得所述电子系统:
接收与所述存储器系统的重置程序相关联的一或多个命令,其中所述存储器系统包括一或多个存储器阵列;
响应于所述一或多个命令,将所述一或多个存储器阵列的第一部分识别为存储用户数据且将所述一或多个存储器阵列的第二部分识别为存储与操作系统相关联的数据;
至少部分地基于识别所述第一部分和所述第二部分而更新所述存储器系统的映射,所述映射包括所述一或多个存储器阵列的逻辑地址集合与物理地址集合之间的对应关系;
将与所述操作系统相关联的所述数据传送到所述一或多个存储器阵列的第三部分;和
对所述物理地址集合的物理地址子集执行擦除操作,所述物理地址子集对应于所述一或多个存储器阵列的所述第一部分和所述一或多个存储器阵列的所述第二部分。
17.根据权利要求16所述的非暂时性计算机可读媒体,其中所述指令在由所述电子系统的所述处理器执行时进一步使得所述电子系统:
在所述一或多个存储器阵列内识别可用于数据存储的一或多个存储器块;和
将与所述操作系统相关联的所述数据的一部分传送到所述一或多个存储器块,所述一或多个存储器阵列的所述第三部分包括所述一或多个存储器块。
18.根据权利要求16所述的非暂时性计算机可读媒体,其中所述指令在由所述电子系统的所述处理器执行时进一步使得所述电子系统:
在所述一或多个存储器阵列内识别存储数据的一或多个存储器块,所述一或多个存储器块对应于所述映射的一或多个条目;
确定与所述一或多个存储器块相关联的逻辑块地址是否在与所述操作系统相关联的所述数据的逻辑块地址的范围内;和
至少部分地基于所述确定而将存储在所述一或多个存储器块中的所述数据传送到一或多个存储器块的第二集合,所述一或多个存储器阵列的所述第三部分包括一或多个存储器块的所述第二集合。
19.根据权利要求16所述的非暂时性计算机可读媒体,其中所述一或多个命令包括初始化所述重置程序的命令。
20.根据权利要求16所述的非暂时性计算机可读媒体,其中所述指令可进一步由所述处理器执行以:
至少部分地基于所述一或多个命令包括取消映射命令和清除命令的模式而识别所述重置程序。
21.一种由包含一或多个存储器阵列的存储器系统执行的方法,所述方法包括:
接收与所述一或多个存储器阵列的重置程序相关联的一或多个命令;
响应于所述一或多个命令,将所述一或多个存储器阵列的第一部分识别为存储用户数据且将所述一或多个存储器阵列的第二部分识别为存储与操作系统相关联的数据;
至少部分地基于识别所述第一部分和所述第二部分而更新所述存储器系统的映射,所述映射包括所述一或多个存储器阵列的逻辑地址集合与物理地址集合之间的对应关系;
将与所述操作系统相关联的所述数据传送到所述一或多个存储器阵列的第三部分;和
对所述物理地址集合的物理地址子集执行擦除操作,所述物理地址子集对应于所述一或多个存储器阵列的所述第一部分和所述一或多个存储器阵列的所述第二部分。
22.根据权利要求21所述的方法,其中传送所述数据包括:
在所述一或多个存储器阵列内识别可用于数据存储的一或多个存储器块;和
将与所述操作系统相关联的所述数据的一部分传送到所述一或多个存储器块,所述一或多个存储器阵列的所述第三部分包括所述一或多个存储器块。
23.根据权利要求21所述的方法,其中传送所述数据包括:
在所述一或多个存储器阵列内识别存储数据的一或多个存储器块,所述一或多个存储器块对应于所述映射的一或多个条目;
确定与所述一或多个存储器块相关联的逻辑块地址是否在与所述操作系统相关联的所述数据的逻辑块地址的范围内;和
至少部分地基于所述确定而将存储在所述一或多个存储器块中的所述数据传送到一或多个存储器块的第二集合,所述一或多个存储器阵列的所述第三部分包括一或多个存储器块的所述第二集合。
24.根据权利要求21所述的方法,其中所述一或多个命令包括初始化所述重置程序的命令。
25.根据权利要求21所述的方法,其进一步包括:
至少部分地基于所述一或多个命令包括取消映射命令和清除命令的模式而识别所述重置程序。
CN202110724302.3A 2020-06-30 2021-06-29 智能工厂重置程序 Pending CN113870928A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/917,510 2020-06-30
US16/917,510 US11544182B2 (en) 2020-06-30 2020-06-30 Smart factory reset procedure using one or more commands at least on user data and system data

Publications (1)

Publication Number Publication Date
CN113870928A true CN113870928A (zh) 2021-12-31

Family

ID=78990049

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110724302.3A Pending CN113870928A (zh) 2020-06-30 2021-06-29 智能工厂重置程序

Country Status (2)

Country Link
US (2) US11544182B2 (zh)
CN (1) CN113870928A (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11520525B2 (en) 2021-05-07 2022-12-06 Micron Technology, Inc. Integrated pivot table in a logical-to-physical mapping having entries and subsets associated via a flag
US20230281122A1 (en) * 2022-03-04 2023-09-07 Western Digital Technologies, Inc. Data Storage Device and Method for Host-Determined Proactive Block Clearance

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9031237B2 (en) * 2009-02-19 2015-05-12 GM Global Technology Operations LLC Method and apparatus for protecting private data on a vehicle
US8639973B2 (en) * 2010-12-14 2014-01-28 Microsoft Corporation System reset
WO2015020661A1 (en) * 2013-08-08 2015-02-12 Hewlett-Packard Development Company, L.P. Boot from modified factory image
US9606734B2 (en) * 2014-12-22 2017-03-28 International Business Machines Corporation Two-level hierarchical log structured array architecture using coordinated garbage collection for flash arrays
US9817838B2 (en) * 2015-02-26 2017-11-14 General Motors Llc Purging user data from vehicle memory
US9880770B2 (en) * 2015-09-02 2018-01-30 SK Hynix Inc. Supporting invalidation commands for non-volatile memory
KR20180093153A (ko) * 2017-02-09 2018-08-21 에스케이하이닉스 주식회사 데이터 저장 장치의 동작 방법
KR102411290B1 (ko) * 2017-10-24 2022-06-22 삼성전자주식회사 선택적으로 퍼지 동작을 수행하도록 구성되는 호스트 장치 및 스토리지 장치를 포함하는 스토리지 시스템
US11120147B2 (en) * 2018-09-11 2021-09-14 International Business Machines Corporation Operating system garbage-collection with integrated clearing of sensitive data
US20200098049A1 (en) * 2018-09-21 2020-03-26 Ford Global Technologies, Llc Securing a vehicle on owner change
CN113495850B (zh) * 2020-04-08 2024-02-09 慧荣科技股份有限公司 管理垃圾回收程序的方法、装置及计算机可读取存储介质

Also Published As

Publication number Publication date
US20230185711A1 (en) 2023-06-15
US20210406168A1 (en) 2021-12-30
US11544182B2 (en) 2023-01-03

Similar Documents

Publication Publication Date Title
US20230185711A1 (en) Smart factory reset procedure
US11907556B2 (en) Data relocation operation techniques
US11625333B2 (en) Configurable flush operation speed
US12007889B2 (en) Valid data identification for garbage collection
US11836074B2 (en) Multiple flash translation layers at a memory device
US20240220162A1 (en) Integrated pivot table in a logical-to-physical mapping
CN114639418A (zh) 取消映射操作技术
CN114822670A (zh) 有效数据感知媒体可靠性扫描
US11709617B2 (en) Multi-stage memory device performance notification
US20230297501A1 (en) Techniques for accessing managed nand
CN114691031A (zh) 基于分片操作的存储器系统的存取
CN114443514A (zh) 用于存储器系统的存储器单元存取技术
US20240281373A1 (en) Memory system host data reset function
US20240061587A1 (en) Zone write operation techniques
US11989133B2 (en) Logical-to-physical mapping compression techniques
CN114546895B (zh) 主机侧存储器地址管理
US20240295971A1 (en) Dynamic memory management operation
US20240220126A1 (en) Folding operations for improved sequential read performance
US20220300208A1 (en) Memory read performance techniques
US20240184463A1 (en) Data type based write management techniques
CN113741982A (zh) 用于系统启动程序的数据技术
CN114116526A (zh) 用于用嵌入式存储器系统进行受管理nand转译的技术
CN113885786A (zh) 用于垃圾收集的数据分离
CN114546893A (zh) 用于地址映射数据的分离高速缓存器
CN115605850A (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