CN116472519A - 存储器系统的维护命令接口 - Google Patents

存储器系统的维护命令接口 Download PDF

Info

Publication number
CN116472519A
CN116472519A CN202180049890.3A CN202180049890A CN116472519A CN 116472519 A CN116472519 A CN 116472519A CN 202180049890 A CN202180049890 A CN 202180049890A CN 116472519 A CN116472519 A CN 116472519A
Authority
CN
China
Prior art keywords
memory system
memory
maintenance
indication
maintenance operation
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
CN202180049890.3A
Other languages
English (en)
Inventor
D·卡拉乔
D·巴卢智
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 CN116472519A publication Critical patent/CN116472519A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding 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/1068Adding 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3037Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a memory, e.g. virtual memory, cache
    • 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
    • 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/0284Multiple user address space allocation, e.g. using different base addresses
    • 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/10Address translation
    • G06F12/109Address translation for multiple virtual address spaces, e.g. segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold
    • 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/1016Performance improvement
    • G06F2212/1024Latency reduction
    • 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/15Use in a specific computing environment
    • G06F2212/151Emulated environment, e.g. virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/65Details of virtual memory and virtual address translation
    • G06F2212/651Multi-level translation tables
    • 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/7208Multiple 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)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

描述用于存储器系统的维护命令接口的方法、系统和装置。主机系统和存储器系统可根据共享协议来配置,所述共享协议支持主机系统与存储器系统之间的维护操作的增强管理,例如解决存储器系统的物理地址处的错误条件的维护操作。在一些实例中,存储器系统可基于所述存储器系统处执行的检测而起始维护操作,且所述存储器系统可为所述主机系统提供维护指示。在一些实例中,主机系统可基于所述主机系统处执行的检测而起始维护操作。在各种实例中,所描述维护信令可包含所述主机系统与存储器系统之间的能力信令、所述主机系统与存储器系统之间的状态指示和其它维护管理技术。

Description

存储器系统的维护命令接口
交叉引用
本专利申请案要求由卡拉乔(CARACCIO)等人于2021年7月14日提交的标题为“存储器系统的维护命令接口(MAINTENANCE COMMAND INTERFACES FOR A MEMORY SYSTEM)”的第17/375,832号美国专利申请案以及由卡拉乔(CARACCIO)等人于2020年7月30日提交的标题为“存储器系统的维护命令接口(MAINTENANCE COMMAND INTERFACES FOR A MEMORYSYSTEM)”的第63/058,895号美国临时专利申请案的优先权;所述申请案中的每一者转让给本受让人,且所述申请案中的每一者以引用的方式明确并入本文中。
背景技术
下文大体上涉及存储器的一或多个系统,且更具体地说,涉及存储器系统的维护命令接口。
存储器装置广泛用于将信息存储在例如计算机、无线通信装置、相机、数字显示器等各种电子装置中。通过将存储器装置内的存储器单元编程为不同状态来存储信息。例如,二进制存储器单元可经编程为两种支持状态中的一种,通常由逻辑1或逻辑0标示。在一些实例中,单个存储器单元可以支持多于两种状态,所述状态中的任一种可以被存储。为了存取所存储信息,组件可以读取或感测存储器装置中的至少一种所存储状态。为了存储信息,组件可以写入存储器装置中的状态或对所述状态进行编程。
存在各种类型的存储器装置和存储器单元,包含磁性硬盘、随机存取存储器(RAM)、只读存储器(ROM)、动态RAM(DRAM)、同步动态RAM(SDRAM)、铁电RAM(FeRAM)、磁性RAM(MRAM)、电阻式RAM(RRAM)、快闪存储器、相变存储器(PCM)、自选存储器、硫属化物存储器技术等。存储器单元可以是易失性或非易失性的。例如FeRAM的非易失性存储器即使在无外部电源存在的情况下仍可以维持其所存储逻辑状态很长一段时间。例如DRAM的易失性存储器装置可能会在与外部电源断开连接时丢失其所存储状态。
附图说明
图1说明根据如本文中所公开的实例的支持存储器系统的维护命令接口的系统的实例。
图2说明根据如本文中所公开的实例的支持存储器系统的维护命令接口的存储器裸片的实例。
图3到6说明根据如本文中所公开的实例的支持存储器系统的维护命令接口的过程流程的实例。
图7展示根据本公开的各方面的支持存储器系统的维护命令接口的主机系统的框图。
图8展示根据本公开的各方面的支持存储器系统的维护命令接口的存储器系统的框图。
图9到12展示根据如本文中所公开的实例的流程图,其说明支持存储器系统的维护命令接口的一或多种方法。
具体实施方式
一些存储器系统可包含一或多个存储器裸片,其可被称为存储器芯片。存储器系统可包含存储器系统控制器,其用于对存储器裸片执行操作,且用于同与存储器系统耦合的主机系统介接(例如,用于经由存储器接口交换信息或命令)。在一些实例中,存储器系统在其生命周期期间可能需要现场或操作中维护动作,这可包含例如封装后修复(PPR)的操作。然而,一些存储器管理技术可能缺少存储器系统与主机系统之间用于管理维护操作以解决存储器系统的错误条件的命令或协议。
根据如本文中所公开的实例,主机系统和存储器系统可以根据共享协议来配置,所述共享协议支持主机系统与存储器系统之间的维护操作的增强管理,例如解决存储器系统的物理地址处的错误条件的维护操作(例如,在存储器系统的存储器裸片的物理地址处,由控制器(例如,存储器系统的控制器)实施的维护操作,其可以从需要修复的一或多个地址复制数据到控制器中的一或多个资源(例如静态随机存取存储器(SRAM)),并且控制器可以管理更新,例如将一或多个地址重映射到包含准确数据的其它资源)。在一些实例中,所描述技术可支持存储器系统基于在存储器系统处执行的检测而起始维护操作。存储器系统可为主机系统提供维护指示,其可包含执行维护操作的请求(例如,请求来自主机系统的许可、请求来自主机系统的显式维护命令)或存储器系统正进行维护操作的指示。在一些实例中,所描述技术可支持主机系统基于在主机系统处执行的检测而起始维护操作。在各种实例中,所描述维护信令可包含所述主机系统与存储器系统之间的能力信令、所述主机系统与存储器系统之间的状态指示和其它维护管理技术。
通过支持与主机系统与存储器系统之间的维护操作管理有关的这些和其它技术,系统可向主机系统和存储器系统的操作提供各种改进。例如,所描述技术可支持更可靠的操作、操作之间的优先级划分(例如,对存取操作与维护操作进行优先级划分)、更高效的操作(例如,延迟或取消维护操作、停止使用不再需要的存储器地址)、减少的延迟或提高的吞吐量,以及与其它存储器技术相比的其它益处。
最初在参考图1和2所描述的系统和裸片的上下文中描述本公开的特征。在如参考图3-6所描述的系统和相关联信令及操作的上下文中描述本公开的特征。通过与如参考图7-12所描述的存储器系统的维护命令接口相关的设备图和流程图进一步说明本公开的这些和其它特征并且参考所述设备图和流程图描述所述特征。
图1说明根据如本文中所公开的实例的支持存储器系统的维护命令接口的系统100的实例。系统100可包含主机系统105(例如,主机装置)、存储器系统110(例如,存储器模块、存储器装置)以及(例如,根据存储器接口,根据存储器协议)耦合主机系统105与存储器系统110的多个信道115。系统100可包含一或多个存储器系统110,但一或多个存储器系统110的各方面可在单个存储器系统(例如,存储器系统110)的上下文中加以描述。
系统100可包含电子装置的部分,例如计算装置、移动计算装置、无线装置、图形处理装置、车辆或其它系统。例如,系统100可说明计算机、膝上型计算机、平板计算机、智能手机、蜂窝式电话、可穿戴装置、因特网连接装置、车辆控制器等的各方面。存储器系统110可以是可用以存储系统100的一或多个其它组件的数据的系统的组件。
系统100的至少部分可以是主机系统105的实例。主机系统105可以是使用存储器来执行例如计算装置、移动计算装置、无线装置、图形处理装置、计算机、膝上型计算机、平板计算机、智能手机、蜂窝式电话、可穿戴装置、因特网连接装置、车辆控制器、芯片上系统(SoC)或某一其它固定或便携式电子装置内的过程的装置内的处理器或其它电路系统的实例,以及其它实例。在一些实例中,主机系统105可指实施外部存储器控制器120的功能的硬件、固件、软件或其组合。在一些实例中,外部存储器控制器120可被称为主机或主机系统105。
存储器系统110可以是可用以提供可供系统100使用或参考的物理存储器地址/空间的独立装置或组件。在一些实例中,存储器系统110可为可配置的以与一或多个不同类型的主机系统一起工作。主机系统105与存储器系统110之间的信令可用以支持以下中的一或多个:用以调制信号的调制方案、用于传送信号的各种引脚配置、用于主机系统105和存储器系统110的物理封装的各种形状因数、主机系统105与存储器系统110之间的时钟信令和同步、时序惯例,或其它因素。
存储器系统110可用以存储主机系统105的组件的数据。在一些实例中,存储器系统110可充当主机系统105的从属型装置(例如,对通过外部存储器控制器120由主机系统105提供的命令作出响应且执行所述命令)。此类命令可包含用于写入操作的写入命令、用于读取操作的读取命令、用于刷新操作的刷新命令或其它命令中的一或多者。
主机系统105可包含外部存储器控制器120、处理器125、基本输入/输出系统(BIOS)组件130或例如一或多个外围组件或一或多个输入/输出控制器等其它组件中的一或多者。主机系统105的组件可使用总线135彼此耦合。
处理器125可用以针对系统100的至少部分或主机系统105的至少部分提供控制或其它功能性。处理器125可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或另一可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件,或这些组件的组合。在此类实例中,处理器125可以是中央处理单元(CPU)、图形处理单元(GPU)、通用GPU(GPGPU)或SoC的实例以及其它实例。在一些实例中,外部存储器控制器120可由处理器125实施或作为所述处理器的一部分。
BIOS组件130可以是包含用作固件的BIOS的软件组件,其可初始化并运行系统100或主机系统105的各种硬件组件。BIOS组件130还可管理处理器125与系统100或主机系统105的各个组件之间的数据流。BIOS组件130可包含存储在只读存储器(ROM)、快闪存储器或另一非易失性存储器中的程序或软件。
存储器系统110可包含存储器系统控制器155和一或多个存储器裸片160(例如,存储器芯片)以支持用于数据存储的所要容量或指定容量。每个存储器裸片160可包含本地存储器控制器165(例如,本地存储器控制器165-a、本地存储器控制器165-b、本地存储器控制器165-N),以及存储器阵列170(例如,存储器阵列170-a、存储器阵列170-b、存储器阵列170-N)。存储器阵列170可为存储器单元的集合(例如,一或多个栅格、一或多个存储体、一或多个拼片、一或多个区段),其中每个存储器单元可用以存储至少一个位的数据。包含两个或更多个存储器裸片160的存储器系统110可被称为多裸片存储器或多裸片封装,或者多芯片存储器或多芯片封装。
存储器系统控制器155可包含可用以控制存储器系统110的操作的电路、逻辑或组件。存储器系统控制器155可包含使得存储器系统110能够执行各种操作的硬件、固件或指令,且可用以接收、传输或执行与存储器系统110的组件相关的命令、数据或控制信息。存储器系统控制器155可用以与外部存储器控制器120、一或多个存储器裸片160或处理器125中的一或多者通信。在一些实例中,存储器系统控制器155可控制本文中结合存储器裸片160的本地存储器控制器165所描述的存储器系统110的操作。
在一些实例中,存储器系统110(例如,存储器系统控制器155)可从主机系统105(例如,经由一或多个信道115,根据存储器接口或存储器协议)接收数据或命令或这两者。例如,存储器系统110可接收写入命令或读取命令,所述写入命令指示存储器系统110将存储用于主机系统105的数据,所述读取命令指示存储器系统110将向主机系统105提供存储于存储器裸片160中的数据。
本地存储器控制器165(例如,对于存储器裸片160来说是本地的)可包含可用以控制存储器裸片160的操作的电路、逻辑或组件。在一些实例中,本地存储器控制器165可用以与存储器系统控制器155通信(例如,接收或传输数据或命令或这两者)。在一些实例中,存储器系统110可不包含存储器系统控制器155,且本地存储器控制器165或外部存储器控制器120可执行本文中所描述的各种功能。因此,本地存储器控制器165可用以与存储器系统控制器155、与其它本地存储器控制器165,或直接与外部存储器控制器120或处理器125或其组合通信。存储器系统控制器155或本地存储器控制器165或这两者中可包含的组件的实例可包含:用于(例如,从外部存储器控制器120)接收信号的接收器,用于(例如,向外部存储器控制器120)传输信号的传输器,用于解码或解调接收到的信号的解码器,用于编码或调制待传输信号的编码器,或可用以支持所描述的存储器系统控制器155或本地存储器控制器165或这两者的操作的各种其它电路或控制器。在本公开的一些实例中,一或多个维护操作可由控制器(例如,存储器系统控制器155、本地存储器控制器165-a-1、外部存储器控制器120)实施,例如可实施一或多个维护操作的存储器系统的控制器。例如,(例如,可在存储器模块内部的)控制器可从需要修复的一或多个地址(例如,一或多个组件行)复制数据到控制器中的或与控制器耦合的一或多个资源(例如,控制器的专用SRAM、SRAM或与控制器耦合的其它存储器)。控制器可经配置以管理一或多个地址到控制器中的或与控制器耦合的第二一或多个资源(例如,用于控制器的专用SRAM、SRAM或与控制器耦合的其它存储器)的更新(例如,重映射、写入),例如一或多个地址到包含准确数据的其它资源中的重映射。
外部存储器控制器120可用以启用系统100或主机系统105(例如,处理器125)的组件与存储器系统110之间信息、数据或命令中的一或多者的传送。外部存储器控制器120可转换或翻译在主机系统105的组件与存储器系统110之间交换的通信。在一些实例中,外部存储器控制器120或系统100或主机系统105的其它组件或本文所描述的其功能可由处理器125实施。例如,外部存储器控制器120可为由处理器125或系统100或主机系统105的另一组件实施的硬件、固件或软件或其一些组合。虽然将外部存储器控制器120描绘为在存储器系统110外部,但在一些实例中,外部存储器控制器120或本文中所描述的其功能可由存储器系统110的一或多个组件(例如,存储器系统控制器155、本地存储器控制器165)实施,或反之亦然。
主机系统105的组件可使用一或多个信道115与存储器系统110交换信息。信道115可用以支持外部存储器控制器120与存储器系统110之间的通信。每个信道115可为在主机系统105与存储器系统110之间携载信息的传输媒体的实例。每个信道115可包含与系统100的组件相关联的端之间的一或多个信号路径或传输媒体(例如,导体)。信号路径可为可用以携载信号的导电路径的实例。例如,信道115可包含第一端,所述第一端包含主机系统105处的一或多个引脚或衬垫和存储器系统110处的一或多个引脚或衬垫。引脚可为系统100的装置的导电输入或输出点的实例,且引脚可用以充当信道的部分。
信道115(以及相关联的信号路径和端)可专用于传送一或多种类型的信息。例如,信道115可包含一或多个命令和地址(CA)信道186、一或多个时钟信号(CK)信道188、一或多个数据(DQ)信道190、一或多个其它信道192,或其组合。在一些实例中,可使用单数据速率(SDR)信令或双数据速率(DDR)信令通过信道115传送信令。在SDR信令中,可针对(例如,在时钟信号的上升沿或下降沿上的)每个时钟周期登记信号的一个调制符号(例如,信号电平)。在DDR信令中,可针对(例如,在时钟信号的上升沿和下降沿两者上的)每个时钟周期登记信号的两个调制符号(例如,信号电平)。
在一些实例中,CA信道186可用以在主机系统105与存储器系统110之间传达命令,包含与所述命令相关联的控制信息(例如,地址信息)。例如,CA信道186所携载的命令可包含具有所需数据的地址的读取命令。在一些实例中,CA信道186可包含对地址或命令数据中的一或多者进行解码的任何数目个信号路径(例如,八个或九个信号路径)。
在一些实例中,数据信道190可用以在主机系统105与存储器系统110之间传送数据或控制信息中的一或多者。例如,数据信道190可(例如,双向)传送待写入到存储器系统110的信息或从存储器系统110读取的信息。
在一些实例中,一或多个其它信道192可包含一或多个错误检测码(EDC)信道。EDC信道可用以传送错误检测信号,例如校验和,以提高系统可靠性。EDC信道可包含任何数量的信号路径。
在一些实例中,主机系统105与存储器系统110之间的接口可支持根据高速计算链路(CXL)标准或可指定支持相干性、存储器存取的动态协议多路复用的相对较低时延、高带宽离散或导通封装链路的其它协议或I/O协议的操作或通信。在一些实例中,根据此类协议的存储器系统110可包含主机管理的装置存储器(HDM),其可指映射到系统相干地址空间且可由主机系统105使用标准写回语义存取的装置附接的存储器。在一些实例中,根据此类协议的存储器系统110可包含专用装置存储器(PDM),其可指未映射到系统地址空间或不可由主机系统105直接存取作为可高速缓存存储器(例如,如在一些PCIe装置中)的装置附接的存储器。在一些实例中,此类协议可支持使用加速器来存取系统存储器作为高速缓存代理或主机系统存储器,其中加速器可包含可由在主机系统105的处理器上运行的软件用以分担或执行计算或I/O任务的装置。加速器的实例可包含可编程代理(例如,GPU、GPCPU)、固定功能代理或可重配置代理(例如,FPGA)。
在一些实例中,存储器系统110可指包含附接到装置(例如,根据CXL协议的第2类型装置)的存储器(例如,双倍数据速率(DDR)存储器、高带宽存储器(HBM)、存储器裸片160)的装置。此类装置可针对存储器执行,但其性能可涉及加速器与装置附接的存储器之间的相对较高带宽。一些存储器协议的目标可为提供主机系统105将操作数推送到存储器系统110(例如,装置附接的存储器)中的构件,且提供主机系统105以避免可能偏移加速器的益处的软件和硬件开销的方式将结果从存储器系统110中拉出的构件。在一些实例中,此类相干-地址装置附接的存储器可被称为HDM。
在一些实例中,存储器系统110可指不具有作用中计算引擎的装置,且可经配置为用于主机系统105的存储器扩展器(例如,根据CXL协议的第3类型装置)。在一些实例中,此配置可能不涉及加速器,且装置可不通过支持主机存储器的装置高速缓存的代理相干协议(例如,经由CXL.cache)传输任何请求。确切地说,在一些实例中,此配置可主要通过支持装置附接的存储器的存储器存取协议(例如,通过CXL.mem)进行操作。此架构可独立于存储器技术,且可取决于主机系统105中实施的支持而允许一定范围的存储器组织技术。
在一些实例中,主机系统105、存储器系统110或这两者可支持用于寻址和地址翻译的各种协议。例如,主机物理地址(HPA)可用于在主机系统105与存储器系统110之间传送逻辑地址(例如,包含于来自主机系统105的命令中的地址)。在一些实例中,装置物理地址(DPA)可为由存储器系统110在存储器系统110的主机管理的装置存储器(HDM)解码器处进行解码的地址,其中此解码可从接收到的HPA开始(例如,当对来自主机系统105的命令中的HPA进行解码时)。在存储器系统110处,DPA可指映射到物理地址(例如,信道、等级、存储体、存储体组、行或列)的逻辑地址,所述映射可为根据存储器系统110处的逻辑到物理(L2P)映射或L2P表的映射,且可进一步包含到存储器系统110的特定存储器裸片160(例如,存储器系统110的多个存储器裸片160)的映射。DPA可指存储器系统110的相连地址空间。
在一些实例中,系统100可包含交换机,其包含另一HDM解码器。此交换机可指主机系统105的组件,或主机系统105与一或多个存储器系统110之间的组件,其可支持各种存储器交织技术。例如,经由具有HDM解码器的交换机的存储器交织可支持从映射到不同存储器系统110的主机系统105的角度来看的连续存储器地址(例如,可以均匀间隔映射的连续HPA)。在一组交错存储器系统110中的每一者处,相应存储器系统110可将来自交换机的HPA转换为相应存储器系统110处的DPA。
在一些实例中,可能需要现场或操作中维护动作来解决存储器系统110处的错误,所述动作可包含存储器系统110处的例如封装后修复(PPR)的操作。然而,一些存储器管理技术可能缺少存储器系统110与主机系统105之间用于管理维护操作以解决存储器系统110的此类错误条件的命令、协议或握手。例如,存储器系统110可经配置以(例如,在存储器系统的模式寄存器中)存储各种事件记录,例如一般媒体事件记录、DRAM事件记录、存储器模块事件记录或供应商专用事件记录,或其各种组合。然而,此类事件记录可能缺少在维护标志发出时对主机系统105的动作的规定,或可能缺少对主机系统105的存储器系统110正请求或已起始的维护操作的指示。
根据如本文中所公开的实例,主机系统105和存储器系统110可以根据共享协议来配置,所述共享协议支持主机系统105与存储器系统110之间的维护操作的增强管理,例如解决存储器系统110的物理地址处的错误条件的维护操作(例如,在存储器系统110的存储器裸片160的物理地址处),或例如解决存储器系统110的物理地址处的错误条件的维护操作。在一些实例中,所描述技术可支持存储器系统110基于在存储器系统110处执行的检测而起始维护操作。存储器系统110可为主机系统105提供维护指示,其可包含执行维护操作的请求(例如,请求来自主机系统105的许可、请求来自主机系统105的起始维护操作的显式维护命令)或存储器系统110正进行维护操作的指示。在一些实例中,所描述技术可支持主机系统105基于在主机系统105处执行的检测而起始维护操作。在各种实例中,所描述维护信令可包含主机系统105与存储器系统110之间的能力信令、主机系统105与存储器系统110之间的状态指示和其它维护管理技术。
通过支持与主机系统105与存储器系统110之间的维护操作管理有关的这些和其它技术,系统100可向主机系统105和存储器系统110的操作提供各种改进。例如,所描述技术可支持更可靠的操作、操作之间的优先级划分(例如,对存取操作与维护操作进行优先级划分)、更高效的操作(例如,延迟或取消维护操作、停止使用不再需要的存储器地址)、减少的延迟或提高的吞吐量,以及与其它存储器技术相比的其它益处。
图2说明根据如本文中所公开的实例的支持存储器系统的维护命令接口的存储器裸片200的实例。存储器裸片200可以是参考图1所描述的存储器裸片160的实例。在一些实例中,存储器裸片200可称为存储器芯片、存储器装置或电子存储器设备。存储器裸片200可包含一或多个存储器单元205,其可各自可编程以存储不同逻辑状态(例如,经编程为一组两种或更多种可能状态中的一者)。例如,存储器单元205可用以每次存储一位的信息(例如,逻辑0或逻辑1)。在一些实例中,存储器单元205(例如,多层级存储器单元)可用以每次存储多于一位的信息(例如,逻辑00、逻辑01、逻辑10、逻辑11)。在一些实例中,存储器单元205可布置成阵列,如参考图1所描述的存储器阵列170。
存储器单元205可在电容器中存储表示可编程状态的电荷。DRAM架构可包含电容器,所述电容器包含电介质材料以存储表示可编程状态的电荷。在其它存储器架构中,其它存储装置和组件是可能的。例如,可采用非线性电介质材料。存储器单元205可包含例如电容器230和切换组件235的逻辑存储组件。电容器230可以是电介质电容器或铁电电容器的实例。电容器230的节点可与电压源240耦合,所述电压源可为单元板参考电压,例如Vpl,或可为接地,例如Vss。
存储器裸片200可包含以例如网格状图案的图案布置的一或多个存取线(例如,一或多个字线210和一或多个数字线215)。存取线可为与存储器单元205耦合的导电线,并且可用于对存储器单元205执行存取操作。在一些实例中,字线210可被称为行线。在一些实例中,数字线215可被称为列线或位线。对存取线、行线、列线、字线、数字线或位线等的引用可在不影响理解或操作的情况下互换。存储器单元205可定位在字线210与数字线215的相交部处。
可通过激活或选择例如字线210或数字线215中的一或多者的存取线来对存储器单元205执行例如读取和写入等操作。通过对字线210和数字线215施加偏压(例如,将电压施加到字线210或数字线215),可存取其相交部处的单个存储器单元205。处于二维或三维配置中的字线210与数字线215的相交部可被称为存储器单元205的地址(例如,物理地址)。
可通过行解码器220或列解码器225控制对存储器单元205的存取。例如,行解码器220可从本地存储器控制器260接收行地址且基于接收到的行地址来激活字线210。列解码器225可从本地存储器控制器260接收列地址并且可基于接收到的列地址而激活数字线215。
可通过使用字线210激活或去激活切换组件235来实现选择或取消选择存储器单元205。电容器230可使用切换组件235与数字线215耦合。例如,当去激活切换组件235时,电容器230可与数字线215隔离,并且当激活切换组件235时,电容器230可与数字线215耦合。
感测组件245可用以检测存储在存储器单元205的电容器230上的状态(例如,电荷)且基于所存储状态而确定存储器单元205的逻辑状态。感测组件245可包含一或多个感测放大器以放大或以其它方式转换因存取存储器单元205而产生的信号。感测组件245可将从存储器单元205检测到的信号与参考250(例如,参考电压)进行比较。存储器单元205的检测到的逻辑状态可作为感测组件245的输出提供(例如,提供到输入/输出255),且可向包含存储器裸片200的存储器装置的另一组件指示检测到的逻辑状态。
本地存储器控制器260可通过各种组件(例如,行解码器220、列解码器225、感测组件245)控制对存储器单元205的存取。本地存储器控制器260可为参考图1描述的本地存储器控制器165的实例。在一些实例中,行解码器220、列解码器225和感测组件245中的一或多者可与本地存储器控制器260并置。本地存储器控制器260可用以接收来自一或多个不同存储器控制器(例如,与主机系统105相关联的外部存储器控制器120、与存储器裸片200相关联的另一控制器)的命令或数据中的一或多者,将所述命令或数据(或这两者)转换为可由存储器裸片200使用的信息,对存储器裸片200执行一或多个操作,且基于执行一或多个操作而将数据从存储器裸片200传送到主机系统105。本地存储器控制器260可生成行信号和列地址信号以激活目标字线210和目标数字线215。本地存储器控制器260还可产生并控制在存储器裸片200的操作期间使用的各种电压或电流。一般来说,本文中所论述的所施加电压或电流的幅度、形状或持续时间可变化,且对于在操作存储器裸片200时所论述的各种操作来说可能不同。在本公开的一些实例中,一或多个维护操作可由控制器(例如,本地存储器控制器260)实施,例如可实施一或多个维护操作的存储器系统的控制器。例如,(例如,可在存储器模块内部的)控制器可从需要修复的一或多个地址(例如,一或多个组件行)复制数据到控制器中的或与控制器耦合的一或多个资源(例如,控制器的专用SRAM、SRAM或与控制器耦合的其它存储器)。控制器可经配置以管理一或多个地址到控制器中的或与控制器耦合的第二一或多个资源(例如,用于控制器的专用SRAM、SRAM或与控制器耦合的其它存储器)的更新(例如,重映射、写入),例如一或多个地址到包含准确数据的其它资源中的重映射。
本地存储器控制器260可用以对存储器裸片200的一或多个存储器单元205执行一或多个存取操作。存取操作的实例可包含写入操作、读取操作、刷新操作、预充电操作或激活操作等。在一些实例中,存取操作可由本地存储器控制器260响应于各种存取命令(例如,来自主机系统105)而执行或以其它方式协调。本地存储器控制器260可用以执行此处未列出的其它存取操作或与存储器裸片200的操作有关的不与存取存储器单元205直接相关的其它操作。
本地存储器控制器260可用以对存储器裸片200的一或多个存储器单元205执行读取操作(例如,感测操作)。在读取操作期间,可以确定存储在存储器裸片200的存储器单元205中的逻辑状态。本地存储器控制器260可标识将对其执行读取操作的目标存储器单元205。本地存储器控制器260可标识与目标存储器单元205(例如,目标存储器单元205的地址)耦合的目标字线210和目标数字线215。本地存储器控制器260可激活目标字线210和目标数字线215(例如,将电压施加到字线210或数字线215)以存取目标存储器单元205。目标存储器单元205可响应于对存取线加偏压而将信号传送到感测组件245。感测组件245可放大信号。本地存储器控制器260可激活感测组件245(例如,锁存感测组件),从而将从存储器单元205接收到的信号与参考250进行比较。基于所述比较,感测组件245可确定存储于存储器单元205上的逻辑状态。
在一些实例中,包含存储器裸片200的存储器系统110可以根据共享协议来配置,所述共享协议支持存储器系统110与同存储器系统110耦合的主机系统之间的维护操作的增强管理,例如解决存储器裸片200的物理地址处的错误条件的维护操作。在一些实例中,此类维护操作可包含对存储器裸片200执行封装后修复。例如,存储器裸片200可经配置以将一或多个地址(例如,行、列)重映射到存储器裸片200的存储器阵列的不同部分,或以其它方式映射或启用存储器裸片的不同存储器单元205。在一些实例中,存储器裸片200可经配置以重映射存取操作以利用存储器裸片200的不同组件或电路系统,例如重映射操作以利用不同(例如,冗余)行解码器220、列解码器225、感测组件245、I/O组件255、本地存储器控制器260或其各种组件或其各种组合。此重映射可借助于逻辑重配置(例如,在本地存储器控制器处)或借助于物理重配置(例如,经由切换组件、经由熔断器或反熔断器)来执行。在一些实例中,封装后修复可与存储器系统110相关联,所述存储器系统停用或空闲第一存储器裸片200,且将存取操作重映射到(例如,同一存储器系统110的)第二不同存储器裸片200。
图3说明根据如本文中所公开的实例的支持存储器系统的维护命令接口的过程流程300的实例。参考主机系统105-b和存储器系统110-b描述过程流程300,所述主机系统和所述存储器系统可经由接口以物理方式或以操作方式耦合(例如,经由信道115,根据存储器接口或存储器协议)。存储器系统110-b可包含存储器系统控制器155-b和存储器裸片160-b。虽然存储器系统110-b说明为具有一个存储器裸片160,但根据过程流程300的各方面的存储器系统110可包含任何数量的存储器裸片160。另外,虽然主机系统105-b说明为与一个存储器系统110耦合,但根据过程流程300的各方面的主机系统105可与任何数量的存储器系统110耦合。过程流程300可说明根据如本文中所公开的实例的存储器起始的维护的各方面。
在305处,存储器系统110-b(例如,存储器系统控制器155-b)可从存储器裸片160-b接收数据。在一些实例中,可通过存取存储器裸片160-b的一或多个存储器单元205来接收数据,这可为对来自主机系统105-b的命令(例如,由存储器系统控制器155-b接收且经处理以存取存储器裸片160-b的读取命令)的响应,或可为对存储器系统110-b内的其它存取的响应(例如,与存储器系统110-b的存储器管理技术相关,不是对来自主机系统105-b的命令的响应)。
在310处,存储器系统110-b(例如,存储器系统控制器155-b)可确定与存储器裸片160-b的物理地址相关联的错误条件。例如,存储器系统控制器155-b可确定数据305中的错误的数量满足阈值,或数据305中的错误的比例满足阈值。
在315处,存储器系统110-b(例如,存储器系统控制器155-b)可确定与数据305相关联的逻辑地址(例如,对应于存储器裸片160-b的物理地址)。在一些实例中,存储器系统110-b可确定DPA(例如,根据存储器系统110-b的L2P映射)或HPA(例如,根据存储器系统110-b的HDM解码器),或这两者。
在320处,存储器系统110-b(例如,存储器系统控制器155-b)可向主机系统105-b传输维护指示(例如,用于修复存储器裸片160-b的物理地址的维护操作的指示)。传输维护指示320可至少部分地基于确定错误条件(例如,在310处),或确定与数据305相关联的逻辑地址(例如,在315处),或这两者。在一些实例中,维护指示320可包含存储器系统110-b正执行或将执行维护操作的指示。在一些实例中,维护指示320可包含执行维护操作的请求(例如,请求来自主机系统105-b的许可或显式命令)。
在一些实例中,在325处,主机系统105-b可基于接收到维护指示320而执行操作。在一些实例中,主机系统105-b可(例如,向存储器系统110-b)发出执行维护操作或避免执行维护操作的命令。在一些实例中,主机系统105-b可向存储器系统110-b指示与所指示地址相关联的数据可被清除,或地址可被停止使用。
在一些实例中,在330处,存储器系统110-b可执行维护操作。例如,存储器系统110-b(例如,存储器系统控制器155-b)可对存储器裸片160-b起始封装后修复。在各种实例中,执行维护操作330可基于确定错误条件(例如,在310处),或由主机系统105-b(例如,在325处)执行的操作,例如主机系统105-b传输维护命令。
另外或替代地,在本公开的一些实例中,可由控制器(例如,存储器系统控制器155-b)实施一或多个维护操作,例如可实施一或多个维护操作的存储器系统的控制器。例如,(例如,可在存储器模块内部的)控制器可从需要修复的一或多个地址(例如,一或多个组件行)复制数据到控制器中的或与控制器耦合的一或多个资源(例如,控制器的专用SRAM、SRAM或与控制器耦合的其它存储器)。控制器可经配置以管理一或多个地址到控制器中的或与控制器耦合的第二一或多个资源(例如,用于控制器的专用SRAM、SRAM或与控制器耦合的其它存储器)的更新(例如,重映射、写入),例如一或多个地址到包含准确数据的其它资源中的重映射。
尽管在对存储器裸片160-b的所标识物理地址执行的维护(例如,与物理地址的错误相关联)的上下文中进行描述,但所描述技术可理解为扩展到额外情形。例如,存储器系统110-b可标识对非直接或严格地与被检测到具有错误的存储器裸片160-b的物理地址相关或非受限于所述物理地址的维护的需要。此维护可更一般地与存储器裸片160-b的存储媒体相关,且可由一或多个其它条件触发。在此类实例中,维护指示320可省略地址的指示(例如,不包含HPA、DPA或其它地址的指示)。
图4说明根据如本文中所公开的实例的支持存储器系统的维护命令接口的过程流程400的实例。参考主机系统105-c和存储器系统110-c描述过程流程400,所述主机系统和所述存储器系统可经由接口以物理方式或以操作方式耦合(例如,经由信道115,根据存储器接口或存储器协议)。存储器系统110-c可包含存储器系统控制器155-c和存储器裸片160-c。虽然存储器系统110-c说明为具有一个存储器裸片160,但根据过程流程400的各方面的存储器系统110可包含任何数量的存储器裸片160。另外,虽然主机系统105-c说明为与一个存储器系统110耦合,但根据过程流程400的各方面的主机系统105可与任何数量的存储器系统110耦合。
过程流程400可说明根据如本文中所公开的实例的存储器起始的维护的各方面。过程流程400和相关描述可包含对模块事件记录(例如,存储器系统110-c的事件记录的存储器模块事件记录)的各种增强,其可包含添加与维护相关的各种信息。过程流程400和相关描述还可说明在存储器装置命令接口中实施专用命令集合以管理维护操作,包含用于此管理的能力指示、状态指示和寄存器的实例。
在405处,存储器系统110-c(例如,存储器系统控制器155-c)可从存储器裸片160-c接收数据。在一些实例中,可通过存取存储器裸片160-c的一或多个存储器单元205来接收数据。在一些实例中,在存储器系统控制器155-c处接收数据可为对来自主机系统105-c的命令(例如,由存储器系统控制器155-c接收且经处理以存取存储器裸片160-c的读取命令)的响应,且在一些实例中,从存储器裸片160-c接收到的数据可转发到主机系统105-c。在一些实例中,在存储器系统控制器155-c处接收数据可为对存储器系统110-c内的其它存取的响应(例如,与存储器系统110-c的存储器管理技术相关,不是对来自主机系统105-c的命令的响应),且在一些实例中,此类数据可不转发到主机系统105-c。
在410处,存储器系统110-c(例如,存储器系统控制器155-c)可确定与存储器裸片160-c的物理地址相关联的错误条件。例如,存储器系统控制器155-c可确定数据405中的错误的数量满足阈值,或数据405中的错误的比例满足阈值,或某一阈值量的错误或数据中毒(例如,错误的数目满足阈值的指示、指示错误数据的代码)以其它方式存在于数据405中。在一些实例中,至少部分地基于确定错误条件(例如,数量或比例或错误满足阈值),存储器系统110-c(例如,存储器系统控制器155-c)可确定起始或执行内部维护操作(例如,执行维护440)。
在415处,存储器系统110-c(例如,存储器系统控制器155-c)可确定与数据405相关联的逻辑地址(例如,对应于存储器裸片160-c的物理地址)。在一些实例中,存储器系统110-c可确定DPA(例如,根据存储器系统110-c的L2P映射)或HPA(例如,根据存储器系统110-c的HDM解码器),或这两者。
在420处,存储器系统110-c(例如,存储器系统控制器155-c)可向主机系统105-c传输或以其它方式传送维护指示(例如,用于修复存储器裸片160-c的物理地址的维护操作的指示、存储器事件的指示)。传输维护指示420可至少部分地基于确定错误条件(例如,在410处),或确定与数据405相关联的逻辑地址(例如,在415处),或这两者。在各种实例中,维护指示420可实施为存储器系统110-c的中断,作为对主机系统105-c轮询存储器系统110-c的专用寄存器的响应,或通过存储器系统110-c发出的事务实施。维护指示420可包含维护操作类型的指示,或存储器系统110-c的地址(例如,HPA、DPA),或这两者。
在一些实例中,维护指示420可包含存储器系统110-c正执行或将执行维护操作(例如,执行存储器起始的维护操作,而不接收或等待来自主机系统105-c的显式维护命令)的指示。例如,存储器系统110-c可标识所需的内部维护操作,且存储器系统110-a可向主机系统105-c报告维护事件。
在一些实例中,维护指示420可包含执行维护操作的请求(例如,请求来自主机系统105-c的许可或显式命令)。在其中维护指示420与此请求相关联的实例中,存储器系统110-c可在执行维护操作之前等待来自主机系统105-c的响应。
表1-存储器模块事件记录
表1说明可支持发信号通知维护指示420的存储器模块事件记录的第一实例。在一些实例中,存储器模块事件记录可实施为存储器系统110-c处的寄存器(例如,存储器系统控制器155-c的寄存器),其可由主机系统105-c轮询。在一些实例中,可在存储器裸片160-c处实施类似或替代事件记录(例如,作为DRAM事件记录)。存储器模块事件记录可包含装置健康信息字段,其可指示存储器系统110-a处是否需要维护。存储器模块事件记录还可包含维护操作字段,其指示维护操作的各种详细信息,例如维护操作类型。在一些实例中,值00h可指示“无操作”,其可指示存储器系统110-c的不可修复部分,或存储器系统110-c的某一位置由于例如缺乏维护资源而不可修复,或维护操作选择可由主机系统105-c执行。在一些实例中,地址字段可用于指示检测到的错误的地址,例如DPA、HPA或存储器系统110-c的物理地址(例如,存储器裸片160-c的物理地址),但在指示较普遍维护的情况下可省略地址(例如,维护更一般地涉及存储器裸片160-c的存储媒体)。在一些实例中,可预配存储器模块事件记录的一或多个字段以支持通用参数,或针对其它应用程序重新定义。表2说明可在存储器模块事件记录的常见事件记录字段中实施的事件记录标志的实例,例如存储器系统110-c可针对维护指示420使用的“需要维护”字段。
表2-事件记录标志
在实例中,针对维护指示420,存储器系统110-c可使用表3中所给出的模块事件记录作为“需要维护”指示:
表3-用于需要维护指示的模块事件记录
/>
表4-用于需要维护指示的事件记录标志
主机系统105-c可基于接收到维护指示420而执行各种操作。例如,主机系统105-c可根据表5的维护命令集合发出一或多个信号或指示:
表3-维护命令集合
在一些实例中,主机系统105-c和存储器系统110-c可经配置以支持相对于维护操作(例如,440)的能力信令的各种方面。例如,在425处,主机系统105-c可向存储器系统110-c传输查询(例如,使用维护命令集合的检查维护资源字段)以请求存储器系统110-c执行维护操作的能力的指示。在430处,存储器系统110-c可用能力指示来作出响应。此能力指示可指示存储器系统110-c处的一定数量的可用修复,例如一定数量的用于重映射操作的可交换行,或一些其它数量的冗余或以其它方式可用的组件。在一些实例中,此能力指示可包含通过维护操作类型或其它维护参数组织或传送的可用维护操作的数量,所述参数例如与存储器系统110-c支持的每种类型的维护命令相关联的时延或超时。在一些实例中,查询425可包含主机系统105-c进行的目标地址(例如,目标DPA、目标HPA)是否可修复的查询。尽管在握手或响应信令的上下文中进行描述,但在一些实例中,可主动地发信号通知(例如,无需传输或接收查询425)能力指示430。在一些实例中,可省略、不配置或以其它方式不执行能力信令,在此情况下可省略操作425及430。
在一些实例中,主机系统105-c和存储器系统110-c可经配置以支持相对于维护440的维护请求和响应命令的各种方面。例如,当维护指示420包含存储器系统110-c进行的执行维护操作的请求时,在435处,主机系统105-c可传输响应性维护命令,所述响应性维护命令可为用于存储器系统110-c执行维护操作440(例如,使用维护命令集合的开始维护字段)的显式命令。在一些实例中,维护命令435可为如由存储器系统110-c自身指示的在目标地址(例如,DPA、HPA)上开始维护操作的显式命令。
在一些实例中,维护请求420可指示维护操作的类型,且主机系统105-c可评估是否批准所请求维护操作、拒绝请求维护操作或发出针对不同类型的操作的维护命令。例如,响应于请求420,主机系统105-c可传输起始软修复以最小化执行时延的维护命令,或可传输避免执行维护操作或停止使用地址空间中的地址(例如,停止使用维护指示420中所指示的HPA或DPA,例如当不再需要所寻址数据时)的命令。在一些实例中,维护命令435可基于由主机系统105-c确定的延迟稍后发出,或可指定存储器系统110-c执行维护操作的时间。在一些实例中,维护指示420的此请求可根据开始维护输入参数,例如表4中给定的那些参数。
表4-开始维护输入参数
在实例中,针对维护命令435,主机系统105-c可使用如表3中所给出的开始维护命令作为维护命令:
字节 描述
0 动作 00h(存储器模块修复0-快速修复操作)
1 维护中断设定 00h(无中断)
9-2 DPA XX...XXh
表6-开始维护命令(4700h)
在一些实例中,存储器系统110-c可经配置以响应于维护命令435(例如,使用表3的输出有效负载)而提供返回代码。在一些实例中,此返回代码可存储于存储器系统110-c的寄存器处,使得主机系统105-c可在435处传输命令且读取寄存器以获得返回代码或其它输出有效负载。在各种实例中,此返回代码可指示成功、无效参数、不支持操作、内部错误、需要进行重试、存储器系统110-c正忙(例如,正处理另一维护命令)、维护操作中止、用于修复的资源已耗尽、各种命令效果或已执行维护操作。
在一些实例中,主机系统105-c可经配置以从存储器系统110-c复制数据(例如,如在405处从存储器系统110-c传送,与维护指示420中指示的逻辑或物理地址相关联)到不同位置。例如,所执行维护操作可能对存储于存储器裸片160-c处的逻辑状态为破坏性的,或主机系统105-c可主动地保存或检索经推断为存储于存储器裸片160-c的降级部分中的数据。在一些实例中,所传送的此类数据可包含如405处所传送的数据,以及可能受维护操作影响的其它数据。在一些实例中,主机系统105-c可在执行此传送之前评估或确定此类数据是否有效。
在一些实例中,在440处,存储器系统110-c可执行维护操作。例如,在441处,存储器系统110-c(例如,存储器系统控制器155-c)可起始对存储器裸片160-c的封装后修复,可包含将修复起始信号或命令传输到存储器裸片160-c。在各种实例中,执行维护操作430可基于确定错误条件(例如,在410处),或由主机系统105-c执行的操作,例如主机系统105-c(例如,在435处)传输维护命令。在442处,存储器裸片160-c可执行封装后修复(例如,响应于信令441)。在一些实例中,在443处,存储器裸片160-c可提供封装后修复的状态(例如,完成)的指示,其可包含显式指示(例如,位、标志)或隐式指示(例如,存储器裸片160-c可用于进行存取的指示)。
在各种实例中,在440处执行的维护可在前台或后台执行。例如,在后台操作中,存储器系统110-c可支持进行中的存取操作(例如,在445处),例如支持由主机系统105-c发出的读取或写入命令。在前台维护操作中,存储器系统110-c可不支持进行中的操作,且因此可避免在维护操作440期间执行存取操作。在一些实例中,存储器系统110-c可提供用于在维护操作期间执行存取操作的能力的指示(例如,在430处的能力指示中)。在一些实例中,如果执行维护操作440超过两秒或某一其它阈值持续时间,则维护操作可移动到后台处理。
在一些实例中,主机系统105-c和存储器系统110-c可经配置以支持相对于维护440的状态信令的各种方面。例如,在455处,存储器系统110-c可传输维护操作440的状态的指示。如果在完成维护操作440之后传输状态指示455(例如,如图所示),则状态指示455可指示维护操作已完成。如果在完成维护操作440之前传输状态指示455,则状态指示455可指示维护操作440正进行中,这可包含完成百分比或剩余百分比或持续时间的指示,或状态指示455可指示维护操作440已失败或已中止。在一些实例中,可主动地发信号通知状态指示,例如根据接收到维护命令之后的持续时间或根据完成百分比(例如,其中存储器系统110-c可指示相对长时间的操作情况下的操作进度)。在其它实例中,状态指示455可为对请求的响应,例如由主机系统105-c在450处传输以检查维护操作的状态的状态请求。在一些实例中,此请求可指对存储器系统110-c的状态寄存器的轮询。在一些实例中,可根据(例如,表3中说明的维护命令集合的)获得维护命令状态命令提供状态指示455。
另外或替代地,在本公开的一些实例中,可由控制器(例如,存储器系统控制器155-c)实施一或多个维护操作,例如可实施一或多个维护操作的存储器系统的控制器。例如,(例如,可在存储器模块内部的)控制器可从需要修复的一或多个地址(例如,一或多个组件行)复制数据到控制器中的或与控制器耦合的一或多个资源(例如,控制器的专用SRAM、SRAM或与控制器耦合的其它存储器)。控制器可经配置以管理一或多个地址到控制器中的或与控制器耦合的第二一或多个资源(例如,用于控制器的专用SRAM、SRAM或与控制器耦合的其它存储器)的更新(例如,重映射、写入),例如一或多个地址到包含准确数据的其它资源中的重映射。
图5说明根据如本文中所公开的实例的支持存储器系统的维护命令接口的过程流程500的实例。参考主机系统105-d和存储器系统110-d描述过程流程500,所述主机系统和所述存储器系统可经由接口以物理方式或以操作方式耦合(例如,经由信道115,根据存储器接口或存储器协议)。存储器系统110-d可包含存储器系统控制器155-d和存储器裸片160-d。虽然存储器系统110-d说明为具有一个存储器裸片160,但根据过程流程500的各方面的存储器系统110可包含任何数量的存储器裸片160。另外,虽然主机系统105-d说明为与一个存储器系统110耦合,但根据过程流程500的各方面的主机系统105可与任何数量的存储器系统110耦合。过程流程500可说明根据如本文中所公开的实例的主机起始的维护的各方面。
在505处,主机系统105-d可从存储器系统110-d(例如,从存储器系统控制器155-d)接收数据。数据505可与存储器系统110-d的逻辑地址(例如,HPA、DPA)相关联。在一些实例中,可通过存取存储器裸片160-d的一或多个存储器单元205从存储器裸片160-d检索数据,这可为对来自主机系统105-d的命令(例如,由存储器系统控制器155-d接收且经处理以存取存储器裸片160-d的读取命令)的响应,或可为对存储器系统110-d内的其它存取的响应(例如,与存储器系统110-d的存储器管理技术相关,不是对来自主机系统105-d的命令的响应)。
在510处,主机系统105-d可确定与存储器系统110-d的物理地址(例如,存储器裸片160-d的物理地址,基于数据505)相关联的错误条件。例如,主机系统105-d可确定数据505中的错误的数量满足阈值,或数据505中的错误的比例满足阈值。
在515处,主机系统105-d可向存储器系统110-d传输维护命令(例如,执行与存储器系统110-d的逻辑地址相关联的维护操作的命令)。在515处传输维护命令可至少部分地基于在510处确定错误条件。
在520处,存储器系统110-d可执行维护操作(例如,基于接收到命令515)。例如,存储器系统110-d(例如,存储器系统控制器155-d)可对存储器裸片160-d起始封装后修复。
另外或替代地,在本公开的一些实例中,可由控制器(例如,存储器系统控制器155-d)实施一或多个维护操作,例如可实施一或多个维护操作的存储器系统的控制器。例如,(例如,可在存储器模块内部的)控制器可从需要修复的一或多个地址(例如,一或多个组件行)复制数据到控制器中的或与控制器耦合的一或多个资源(例如,控制器的专用SRAM、SRAM或与控制器耦合的其它存储器)。控制器可经配置以管理一或多个地址到控制器中的或与控制器耦合的第二一或多个资源(例如,用于控制器的专用SRAM、SRAM或与控制器耦合的其它存储器)的更新(例如,重映射、写入),例如一或多个地址到包含准确数据的其它资源中的重映射。
尽管在对存储器裸片160-d的物理地址执行的维护(例如,与物理地址的错误相关联)的上下文中进行描述,但所描述技术可扩展到额外情形。例如,主机系统105-d可标识对非严格地与被检测到具有错误的存储器裸片160-d的物理地址相关或非受限于所述物理地址的维护的需要。此维护可更一般地与存储器裸片160-d的存储媒体相关,且可由其它各种条件触发。
图6说明根据如本文中所公开的实例的支持存储器系统的维护命令接口的过程流程600的实例。参考主机系统105-e和存储器系统110-e描述过程流程600,所述主机系统和所述存储器系统可经由接口以物理方式或以操作方式耦合(例如,经由信道115,根据存储器接口或存储器协议)。存储器系统110-e可包含存储器系统控制器155-e和存储器裸片160-e。虽然存储器系统110-e说明为具有一个存储器裸片160,但根据过程流程600的各方面的存储器系统110可包含任何数量的存储器裸片160。另外,虽然主机系统105-e说明为与一个存储器系统110耦合,但根据过程流程600的各方面的主机系统105可与任何数量的存储器系统110耦合。
过程流程600可说明根据如本文中所公开的实例的主机起始的维护的各方面。过程流程600和相关描述可包含对模块事件记录(例如,存储器系统110-e的事件记录的存储器模块事件记录)的各种增强,其可包含添加与维护相关的各种信息。过程流程600和相关描述还可说明在存储器装置命令接口中实施专用命令集合以管理维护操作,包含用于此管理的能力指示、状态指示和寄存器的实例。
在605处,主机系统105-e可从存储器系统110-e(例如,从存储器系统控制器155-e)接收数据。数据605可与存储器系统110-e的逻辑地址(例如,HPA、DPA)相关联。在一些实例中,可通过存取存储器裸片160-e的一或多个存储器单元205从存储器裸片160-e检索数据,这可为对来自主机系统105-e的命令(例如,由存储器系统控制器155-e接收且经处理以存取存储器裸片160-e的读取命令)的响应,或可为对存储器系统110-e内的其它存取的响应(例如,与存储器系统110-e的存储器管理技术相关,不是对来自主机系统105-e的命令的响应)。
在610处,主机系统105-e可确定与存储器系统110-e的物理地址(例如,存储器裸片160-e的物理地址,基于数据605)相关联的错误条件。例如,主机系统105-e可确定数据605中的错误的数量满足阈值,或数据605中的错误的比例满足阈值,或某一阈值量的错误或数据中毒以其它方式存在于数据605中。
在一些实例中,主机系统105-e可经配置以从存储器系统110-e复制数据(例如,如在605处从存储器系统110-e传送,与数据605的逻辑或物理地址相关联)到不同位置。例如,所执行维护操作可能对存储于存储器裸片160-e处的逻辑状态为破坏性的,或主机系统105-e可主动地保存或检索经推断为存储于存储器裸片160-e的降级部分中的数据。在一些实例中,所传送的此类数据可包含如605处所传送的数据,以及可能受维护操作影响的其它数据。在一些实例中,主机系统105-e可在执行此传送或复制之前评估或确定此类数据是否有效。
在一些实例中,主机系统105-e和存储器系统110-e可经配置以支持相对于维护操作(例如,640)的能力信令的各种方面。例如,在615处(例如,基于在610处确定错误条件),主机系统105-e可向存储器系统110-e传输查询(例如,使用如表3中说明的维护命令集合的检查维护资源字段)以请求存储器系统110-e执行维护操作的能力的指示。在620处,存储器系统110-e可用能力指示来作出响应。此能力指示可指示存储器系统110-e处的一定数量的可用修复,例如一定数量的用于重映射操作的可交换行,或一些其它数量的冗余或以其它方式可用的组件。在一些实例中,此能力指示可包含通过维护操作类型或其它维护参数组织或传送的可用维护操作的数量,所述参数例如与存储器系统110-e支持的每种类型的维护命令相关联的时延或超时。在一些实例中,查询615可包含主机系统105-e进行的目标地址(例如,目标DPA、目标HPA)是否可修复的查询。尽管在握手或响应信令的上下文中进行描述,但在一些实例中,可主动地发信号通知(例如,无需传输或接收查询615)能力指示620。在一些实例中,可省略、不配置或以其它方式不执行能力信令,在此情况下可省略操作615及620。
在625处,主机系统105-e可向存储器系统110-e(例如,向存储器系统控制器155-e)发出维护命令。维护命令625可为存储器系统110-e执行维护操作640(例如,使用如表3中说明的维护命令集合中的开始维护字段)的显式命令。在一些实例中,维护命令625可为在与数据605相关联的且由主机系统105-e标识为具有错误条件(例如,在610处)的地址(例如,DPA、HPA)上开始维护操作的命令。在一些实例中,维护命令625可基于由主机系统105-e确定的延迟稍后发出,或可指定存储器系统110-e执行维护操作的时间。
在一些实例中,存储器系统110-e可经配置以响应于维护命令625(例如,使用表3的输出有效负载)而提供返回代码。在一些实例中,此返回代码可存储于存储器系统110-e的寄存器处,使得主机系统105-e可在625处传输命令且读取寄存器以获得返回代码或其它输出有效负载。在各种实例中,此返回代码可指示成功、无效参数、不支持操作、内部错误、需要进行重试、存储器系统110-e正忙(例如,正处理另一维护命令)、维护操作中止、各种命令效果或已执行维护操作。
在630处,存储器系统110-e(例如,存储器系统控制器155-e)可标识用于执行所命令维护的物理地址。例如,维护命令625可与HPA的指示相关联(例如,包含所述指示),所述HPA可通过存储器系统110-c的HDM解码器翻译为DPA。所确定DPA可使用存储器系统110-c的L2P映射进一步翻译,以确定存储器裸片160-e的用于执行维护操作的物理地址。替代地,在一些实例中,维护命令625可与DPA的指示相关联(例如,包含所述指示),所述DPA可翻译为存储器裸片160-e的物理地址。
在635处,存储器系统110-e可(例如,对在630处标识的物理地址)执行维护操作。例如,在636处,存储器系统110-e(例如,存储器系统控制器155-e)可起始对存储器裸片160-e的封装后修复,可包含将修复起始信号或命令传输到存储器裸片160-e。在637处,存储器裸片160-e可执行封装后修复(例如,响应于信令636)。在一些实例中,在638处,存储器裸片160-e可提供封装后修复的状态(例如,完成)的指示,其可包含显式指示或隐式指示。
在各种实例中,在635处执行的维护可在前台或后台执行。例如,在后台操作中,存储器系统110-e可支持进行中的存取操作(例如,在640处),例如支持由主机系统105-e发出的读取或写入命令,或支持对配置存储器系统110-e的存取、对存储器系统110-e的发现能力的存取,或对检查存储器系统110-e的状态的存取。在前台维护操作中,存储器系统110-e可不支持进行中的操作,且因此可避免在维护操作635期间执行存取操作。在一些实例中,存储器系统110-e可提供用于在维护操作期间执行存取操作的能力的指示(例如,在620处的能力指示中)。在一些实例中,如果执行维护操作635超过两秒或某一其它阈值持续时间,则维护操作可移动到后台处理。
在一些实例中,主机系统105-e和存储器系统110-e可经配置以支持相对于维护635的状态信令的各种方面。例如,在650处,存储器系统110-e可传输维护操作635的状态的指示。如果在完成维护操作635之后传输状态指示650(例如,如图所示),则状态指示650可指示维护操作已完成。如果在完成维护操作635之前传输状态指示650,则状态指示650可指示维护操作635正进行中,这可包含完成百分比或剩余百分比或持续时间的指示,或状态指示650可指示维护操作635已失败或已中止。在一些实例中,可主动地发信号通知状态指示,例如根据接收到维护命令之后的持续时间或根据完成百分比(例如,其中存储器系统110-e可指示相对长时间的操作情况下的操作进度)。在其它实例中,状态指示650可为对请求的响应,例如由主机系统105-e在645处传输以检查维护操作的状态的状态请求。在一些实例中,此请求可指对存储器系统110-e的状态寄存器的轮询。在一些实例中,可根据(例如,表3中说明的维护命令集合的)获得维护命令状态命令提供状态指示650。
另外或替代地,在本公开的一些实例中,可由控制器(例如,存储器系统控制器155-e)实施一或多个维护操作,例如可实施一或多个维护操作的存储器系统的控制器。例如,(例如,可在存储器模块内部的)控制器可从需要修复的一或多个地址(例如,一或多个组件行)复制数据到控制器中的或与控制器耦合的一或多个资源(例如,控制器的专用SRAM、SRAM或与控制器耦合的其它存储器)。控制器可经配置以管理一或多个地址到控制器中的或与控制器耦合的第二一或多个资源(例如,用于控制器的专用SRAM、SRAM或与控制器耦合的其它存储器)的更新(例如,重映射、写入),例如一或多个地址到包含准确数据的其它资源中的重映射。
图7展示根据如本文中所公开的实例的支持存储器系统的维护命令接口的主机系统705的框图700。主机系统705可为如参考图1到6所描述的主机系统的各方面的实例,且可包含经配置以用于与存储器系统耦合的电路系统。主机系统705可包含数据接收组件710、维护命令传输组件715、错误条件确定组件720、能力标识组件725、维护状态标识组件730、维护指示接收组件735和主机操作管理组件740。这些模块中的每一者可直接或间接地(例如,经由一或多个总线)彼此通信。
数据接收组件710可从存储器系统接收与存储器系统的逻辑地址相关联的数据。
维护命令传输组件715可向存储器系统且基于确定存储器系统的与逻辑地址相关联的物理地址具有错误条件,传输执行与存储器系统的逻辑地址相关联的维护操作的命令。
在一些实例中,维护命令传输组件715可向存储器系统传输存储器系统的逻辑地址的指示以及命令。在一些实例中,维护命令传输组件715可向存储器系统传输维护操作的类型的指示以及命令。
在一些实例中,维护命令传输组件715可确定在确定执行维护操作与传输执行维护操作的命令之间的延迟,并且可根据延迟传输执行维护操作的命令。在一些实例中,维护命令传输组件715可向存储器系统传输存储器系统延迟执行维护操作的指示。在一些情况下,命令可指示执行维护操作的时间或执行维护操作之前的延迟。
在一些实例中,维护命令传输组件715可基于接收到请求而向存储器系统传输执行维护操作的命令。在一些实例中,维护命令传输组件715可基于接收到请求而向存储器系统传输避免执行维护操作的命令。
在一些实例中,维护命令传输组件715可向存储器系统传输存储器系统可清除与物理地址相关联的数据的指示。在一些实例中,维护命令传输组件715可向存储器系统传输存储器系统可停止使用与物理地址相关联的逻辑地址映射的指示。
错误条件确定组件720可确定数据中的错误的数量或数据中的错误的比例满足阈值。
能力标识组件725可从存储器系统接收能力的指示。在一些实例中,能力标识组件725可基于接收到指示而确定存储器系统执行维护操作的能力。在一些实例中,能力标识组件725可基于确定执行维护操作而向存储器系统传输查询,并且响应于传输查询而接收能力的指示。
在一些实例中,接收存储器系统的能力的指示可包含能力标识组件725读取存储器系统的寄存器且标识写入到寄存器的指示存储器系统的能力的位组合。在一些情况下,能力的指示包含与逻辑地址相关联的存储器系统的一部分是否可修复的指示,或用于存储器系统的修复的可用资源的数量,或其组合。
维护状态标识组件730可接收维护操作的状态的指示。在一些实例中,维护状态标识组件730可向存储器系统传输请求,并且响应于传输请求而接收维护操作的状态的指示。
维护指示接收组件735可从存储器系统接收用于修复存储器系统的物理地址的维护操作的指示。在一些实例中,维护指示接收组件735可从存储器系统接收执行维护操作的请求。在一些实例中,维护指示接收组件735可从存储器系统接收存储器系统正执行维护操作的指示。
在一些实例中,维护指示接收组件735可从存储器系统接收对应于物理地址的逻辑地址的指示。在一些实例中,维护指示接收组件735可从存储器系统接收物理地址的指示。在一些实例中,维护指示接收组件735可从存储器系统接收维护操作的类型的指示。
主机操作管理组件740可基于接收到维护操作的指示而执行主机系统的操作。
图8展示根据如本文中所公开的实例的支持存储器系统的维护命令接口的存储器系统805的框图800。存储器系统805可以是如参考图1到6所描述的存储器系统的各方面的实例。存储器系统805可包含各自具有多个存储器单元的一或多个存储器裸片。存储器系统805还可包含经配置以用于与主机系统耦合且用于操作一或多个存储器裸片的电路系统。存储器系统805可包含数据传输组件810、维护命令接收组件815、维护操作管理组件820、存取操作管理组件825、能力指示组件830、维护状态指示组件835、数据接收组件840、维护操作指示组件845以及错误条件确定组件850。这些模块中的每一者可直接或间接地(例如,经由一或多个总线)彼此通信。
数据传输组件810可向主机系统传输与存储器系统805的逻辑地址相关联的数据。
维护命令接收组件815可从主机系统接收执行与存储器系统805的逻辑地址相关联的维护操作的命令。在一些实例中,维护命令接收组件815可接收维护操作的类型的指示以及命令。在一些情况下,命令可指示执行维护操作的时间或执行维护操作之前的延迟。
维护操作管理组件820可基于接收到执行与存储器系统805的逻辑地址相关联的维护操作的命令且确定存储器裸片的对应于逻辑地址的物理地址而对存储器系统805的存储器裸片执行维护操作。
在一些实例中,维护操作管理组件820(例如,维护操作管理组件820的控制器或与所述维护操作管理组件耦合的控制器)可起始修复操作。例如,一或多个维护操作可由控制器(例如,维护操作管理组件820的控制器或与所述维护操作管理组件耦合的控制器)实施,例如存储器系统的控制器。控制器(例如,可在存储器模块内部的控制器,维护操作管理组件820的控制器或与所述维护操作管理组件耦合的控制器)可从需要修复的一或多个地址(例如,一或多个组件行)复制数据到控制器中的或与所述控制器耦合的一或多个资源(例如,用于控制器的专用SRAM、SRAM或与控制器耦合的其它存储器)。控制器可经配置以管理一或多个地址到控制器中的或与控制器耦合的第二一或多个资源(例如,用于控制器的专用SRAM、SRAM或与控制器耦合的其它存储器)的更新(例如,重映射、写入),例如一或多个地址到包含准确数据的其它资源中的重映射。在一些实例中,由控制器实施的一或多个维护操作可为可不同于替代修复操作(例如,封装后修复(PPR))的供应商专用修复操作。在一些实例中,维护操作管理组件820可在存储器裸片上起始封装后修复操作。在一些实例中,维护操作控制组件820可接收存储器系统805的逻辑地址的指示以及命令。在一些实例中,维护操作管理组件820可基于接收到命令而执行维护操作。在一些实例中,维护操作管理组件820可在存储器裸片的物理地址上或根据所述物理地址起始封装后修复操作。
数据接收组件840可从存储器系统805的存储器裸片接收数据。
维护操作指示组件845可向主机系统并且基于确定与存储器裸片的物理地址相关联的错误条件且确定对应于存储器裸片的物理地址的逻辑地址,传输用于修复存储器裸片的物理地址的维护操作的指示。
在一些实例中,维护操作指示组件845可向主机系统传输执行维护操作的请求。在一些实例中,维护操作指示组件845可基于传输执行维护操作的请求而从主机系统接收执行维护操作的命令。
在一些实例中,维护操作指示组件845可向主机系统传输存储器系统正执行维护操作的指示。
在一些实例中,维护操作指示组件845可向主机系统传输逻辑地址的指示。在一些实例中,维护操作指示组件845可向主机系统传输物理地址的指示。在一些实例中,维护操作指示组件845可向主机系统传输维护操作的类型的指示。
存取操作管理组件825可在对存储器裸片执行维护操作的同时禁止存储器系统805的存取操作。在一些实例中,存取操作管理组件825可在对存储器裸片执行维护操作的同时执行存储器系统805的存取操作。
能力指示组件830可向主机系统传输来自存储器系统805的能力的指示,并且接收执行维护操作的命令可基于传输指示。在一些实例中,能力指示组件830可从主机系统接收查询,并且响应于接收到查询而传输能力的指示。在一些实例中,为了传输存储器系统805的能力的指示,能力指示组件830可从存储器系统805的寄存器传输写入到寄存器的指示存储器系统805的能力的位组合。在一些情况下,能力的指示包含与逻辑地址相关联的存储器系统的一部分是否可修复的指示,或用于存储器系统的修复的可用资源的数量,或其组合。
维护状态指示组件835可向主机系统传输维护操作的状态的指示。在一些实例中,维护状态指示组件835可从主机系统接收请求,并且响应于接收到请求而传输维护操作的状态的指示。
在一些实例中,维护操作管理组件820可基于错误条件确定组件850确定与存储器裸片的物理地址相关联的错误条件而执行维护操作。
在一些实例中,维护操作管理组件820可基于错误条件确定组件850确定数据中的错误的数量或数据中的错误的比例满足阈值而确定执行维护操作。
图9展示说明根据本公开的各方面的支持存储器系统的维护命令接口的一或多种方法900的流程图。方法900的操作可由如本文中所描述的主机系统或其组件来实施。例如,方法900的操作可由如参考图7所描述的主机系统执行。在一些实例中,主机系统可执行指令集合以控制主机系统的功能元件来执行所描述功能。另外或替代地,主机系统可使用专用硬件来执行所描述功能的各方面。
在905处,主机系统可从存储器系统接收与存储器系统的逻辑地址相关联的数据。可根据本文中所描述的方法来执行操作905。在一些实例中,可由如参考图7所描述的数据接收组件执行操作905的各方面。
在910处,主机系统可向存储器系统且基于确定存储器系统的与逻辑地址相关联的物理地址具有错误条件,传输执行与存储器系统的逻辑地址相关联的维护操作的命令。可根据本文中所描述的方法来执行操作910。在一些实例中,可由如参考图7所描述的维护命令传输组件来执行操作910的各方面。
在一些实例中,如本文中所描述的设备可执行一或多种方法,例如方法900。设备可包含特征、电路系统、逻辑、构件或指令(例如,存储可由处理器执行的指令的非暂时性计算机可读媒体),用于:在主机系统处从存储器系统接收与存储器系统的逻辑地址相关联的数据;以及向存储器系统且基于确定存储器系统的与逻辑地址相关联的物理地址具有错误条件,传输执行与存储器系统的逻辑地址相关联的维护操作的命令。
本文中所描述的方法900和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:向存储器系统传输存储器系统的逻辑地址的指示以及命令。
本文中所描述的方法900和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:向存储器系统传输维护操作的类型的指示以及命令。
本文中所描述的方法900和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:确定数据中的错误的数量或数据中的错误的比例满足阈值。
本文中所描述的方法900和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:在主机系统处接收来自存储器系统的能力的指示;以及基于接收到指示而确定存储器系统执行维护操作的能力。
在本文中所描述的方法900和设备的一些实例中,能力的指示包含与逻辑地址相关联的存储器系统的一部分是否可修复的指示,或用于存储器系统的修复的可用资源的数量,或其组合。
本文中所描述的方法900和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:基于确定执行维护操作而向存储器系统传输查询,并且接收能力的指示可为对传输查询的响应。
在本文中所描述的方法900和设备的一些实例中,接收存储器系统的能力的指示可包含操作、特征、电路系统、逻辑、构件或指令,用于:读取存储器系统的寄存器;以及标识写入到寄存器的指示存储器系统的能力的位组合。
本文中所描述的方法900和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:在主机系统处接收维护操作的状态的指示。
本文中所描述的方法900和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:向存储器系统传输请求,并且接收维护操作的状态的指示可为对传输请求的响应。
在本文中所描述的方法900和设备的一些实例中,命令指示执行维护操作的时间或执行维护操作之前的延迟。
本文中所描述的方法900和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:确定在确定执行维护操作与传输执行维护操作的命令之间的延迟,并且可根据延迟传输执行维护操作的命令。
本文中所描述的方法900和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:确定数据有效;以及至少部分地基于确定数据有效而将数据保存在不同于存储器系统的物理地址的位置处。
图10展示说明根据本公开的各方面的支持存储器系统的维护命令接口的一或多种方法1000的流程图。方法1000的操作可由如本文中所描述的存储器系统或其组件来实施。例如,方法1000的操作可由如参考图8所描述的存储器系统执行。在一些实例中,存储器系统可执行指令集合以控制存储器系统的功能元件来执行所描述功能。另外或替代地,存储器系统可使用专用硬件来执行所描述功能的各方面。
在1005处,存储器系统可向主机系统传输与存储器系统的逻辑地址相关联的数据。可根据本文中所描述的方法来执行操作1005。在一些实例中,可由如参考图8所描述的数据传输组件执行操作1005的各方面。
在1010处,存储器系统可从主机系统接收执行与存储器系统的逻辑地址相关联的维护操作的命令。可根据本文所描述的方法来执行操作1010。在一些实例中,可由如参考图8所描述的维护命令接收组件来执行操作1010的各方面。
在1015处,存储器系统可基于接收到执行与存储器系统的逻辑地址相关联的维护操作的命令且确定存储器系统的对应于逻辑地址的物理地址而对存储器系统的存储器裸片执行维护操作。可根据本文中所描述的方法来执行操作1015。在一些实例中,可由如参考图8所描述的维护操作管理组件来执行操作1015的各方面。
在一些实例中,如本文中所描述的设备可执行一或多种方法,例如方法1000。设备可包含特征、电路系统、逻辑、构件或指令(例如,存储可由处理器执行的指令的非暂时性计算机可读媒体),用于:从存储器系统向主机系统传输与存储器系统的逻辑地址相关联的数据;在存储器系统处且从主机系统接收执行与存储器系统的逻辑地址相关联的维护操作的命令;以及基于接收到执行与存储器系统的逻辑地址相关联的维护操作的命令且确定存储器系统的对应于逻辑地址的物理地址而对存储器系统的存储器裸片执行维护操作。
本文中所描述的方法1000和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:在对存储器裸片执行维护操作的同时,禁止存储器系统的存取操作。
本文中所描述的方法1000和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:在对存储器裸片执行维护操作的同时,执行存储器系统的存取操作。
在本文中所描述的方法1000和设备的一些实例中,执行维护操作可包含用于起始维护操作的操作、特征、电路系统、逻辑、构件或指令。在一些实例中,控制器可起始修复操作。例如,一或多个维护操作可由控制器实施,例如存储器系统的控制器。(例如,可在存储器模块内部的)控制器可从需要修复的一或多个地址(例如,一或多个组件行)复制数据到控制器中的或与控制器耦合的一或多个资源(例如,用于控制器的专用SRAM、SRAM或与控制器耦合的其它存储器)。控制器可经配置以管理一或多个地址到控制器中的或与控制器耦合的第二一或多个资源(例如,用于控制器的专用SRAM、SRAM或与控制器耦合的其它存储器)的更新(例如,重映射、写入),例如一或多个地址到包含准确数据的其它资源中的重映射。在一些实例中,由控制器实施的一或多个维护操作可为可不同于替代修复操作(例如,封装后修复(PPR))的供应商专用修复操作。
在本文中所描述的方法1000和设备的一些实例中,执行维护操作可包含用于在存储器裸片上起始封装后修复操作的操作、特征、电路系统、逻辑、构件或指令。
本文中所描述的方法1000和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:在存储器系统处接收存储器系统的逻辑地址的指示以及命令。
本文中所描述的方法1000和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:在存储器系统处接收维护操作的类型的指示以及命令。
本文中所描述的方法1000和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:向主机系统传输来自存储器系统的能力的指示,并且接收执行维护操作的命令可基于传输指示。
在本文中所描述的方法1000和设备的一些实例中,能力的指示包含与逻辑地址相关联的存储器系统的一部分是否可修复的指示,或用于存储器系统的修复的可用资源的数量,或其组合。
本文中所描述的方法1000和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:从主机系统接收查询的,并且传输能力的指示可为对接收到查询的响应。
在本文中所描述的方法1000和设备的一些实例中,传输存储器系统的能力的指示可包含操作、特征、电路系统、逻辑、构件或指令,用于:从存储器系统的寄存器传输写入到寄存器的指示存储器系统的能力的位组合。
本文中所描述的方法1000和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:向主机系统传输维护操作的状态的指示。
本文中所描述的方法1000和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:从主机系统接收请求,并且传输维护操作的状态的指示可为对接收到请求的响应。
在本文中所描述的方法1000和设备的一些实例中,命令指示执行维护操作的时间或执行维护操作之前的延迟。
图11展示说明根据本公开的各方面的支持存储器系统的维护命令接口的一或多种方法1100的流程图。方法1100的操作可由如本文所描述的存储器系统或其组件来实施。例如,方法1100的操作可由如参考图8所描述的存储器系统执行。在一些实例中,存储器系统可执行指令集合以控制存储器系统的功能元件来执行所描述功能。另外或替代地,存储器系统可使用专用硬件来执行所描述功能的各方面。
在1105处,存储器系统可从存储器系统的存储器裸片接收数据。可根据本文中所描述的方法来执行操作1105。在一些实例中,可由如参考图8所描述的数据接收组件执行操作1105的各方面。
在1110处,存储器系统可向主机系统并且基于确定与存储器裸片的物理地址相关联的错误条件且确定对应于存储器系统的物理地址的逻辑地址,传输用于修复存储器裸片的物理地址的维护操作的指示。可根据本文中所描述的方法来执行操作1110。在一些实例中,可由如参考图8所描述的维护操作指示组件来执行操作1110的各方面。
在一些实例中,如本文中所描述的设备可执行一或多种方法,例如方法1100。设备可包含特征、电路系统、逻辑、构件或指令(例如,存储可由处理器执行的指令的非暂时性计算机可读媒体),用于:在存储器系统处接收来自存储器系统的存储器裸片的数据;以及向主机系统并且基于确定与存储器裸片的物理地址相关联的错误条件且确定对应于存储器系统的物理地址的逻辑地址,传输用于修复存储器裸片的物理地址的维护操作的指示。
在本文中所描述的方法1100和设备的一些实例中,传输维护操作的指示可包含用于向主机系统传输执行维护操作的请求的操作、特征、电路系统、逻辑、构件或指令。
本文中所描述的方法1100和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:基于传输执行维护操作的请求而从主机系统接收执行维护操作的命令;以及基于接收到命令而执行维护操作。
本文中所描述的方法1100和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:基于确定与存储器裸片的物理地址相关联的错误条件而执行维护操作。
在本文中所描述的方法1100和设备的一些实例中,传输维护操作的指示可包含用于向主机系统传输存储器系统正执行维护操作的指示的操作、特征、电路系统、逻辑、构件或指令。
本文中所描述的方法1100和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:在对存储器裸片执行维护操作的同时,禁止存储器系统的存取操作。
本文中所描述的方法1100和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:在对存储器裸片执行维护操作的同时,执行存储器系统的存取操作。
在本文中所描述的方法1100和设备的一些实例中,执行维护操作可包含用于在存储器裸片的物理地址上起始封装后修复操作的操作、特征、电路系统、逻辑、构件或指令。
在本文中所描述的方法1100和设备的一些实例中,传输维护操作的指示可包含用于向主机系统传输逻辑地址的指示的操作、特征、电路系统、逻辑、构件或指令。
在本文中所描述的方法1100和设备的一些实例中,传输维护操作的指示可包含用于向主机系统传输物理地址的指示的操作、特征、电路系统、逻辑、构件或指令。
在本文中所描述的方法1100和设备的一些实例中,传输维护操作的指示可包含用于向主机系统传输维护操作的类型的指示的操作、特征、电路系统、逻辑、构件或指令。
本文中所描述的方法1100和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:基于数据中的错误的数量或数据中的错误的比例满足阈值而确定执行维护操作。
本文中所描述的方法1100和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:向主机系统传输维护操作的状态的指示。
本文中所描述的方法1100和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:从主机系统接收请求,并且传输维护操作的状态的指示可为对接收到请求的响应。
图12展示说明根据本公开的各方面的支持存储器系统的维护命令接口的一或多种方法1200的流程图。方法1200的操作可由如本文中所描述的主机系统或其组件来实施。例如,方法1200的操作可由如参考图7所描述的主机系统执行。在一些实例中,主机系统可执行指令集合以控制主机系统的功能元件来执行所描述功能。另外或替代地,主机系统可使用专用硬件来执行所描述功能的各方面。
在1205处,主机系统可从存储器系统接收用于修复存储器系统的物理地址的维护操作的指示。可根据本文中所描述的方法来执行操作1205。在一些实例中,可由如参考图7所描述的维护指示接收组件来执行操作1205的各方面。
在1210处,主机系统可基于接收到维护操作的指示而执行主机系统的操作。可根据本文中所描述的方法来执行操作1210。在一些实例中,可由如参考图7所描述的主机操作控制组件执行操作1210的各方面。
在一些实例中,如本文所描述的设备可执行一或多种方法,例如方法1200。设备可包含特征、电路系统、逻辑、构件或指令(例如,存储可由处理器执行的指令的非暂时性计算机可读媒体),用于:在主机系统处从存储器系统接收用于修复存储器系统的物理地址的维护操作的指示;以及基于接收到维护操作的指示而执行主机系统的操作。
在本文中所描述的方法1200和设备的一些实例中,接收维护操作的指示可包含用于从存储器系统接收执行维护操作的请求的操作、特征、电路系统、逻辑、构件或指令。
在本文中所描述的方法1200和设备的一些实例中,执行主机系统的操作可包含用于基于接收到请求而向存储器系统传输执行维护操作的命令的操作、特征、电路系统、逻辑、构件或指令。
在本文中所描述的方法1200和设备的一些实例中,执行主机系统的操作可包含用于基于接收到请求而向存储器系统传输避免执行维护操作的命令的操作、特征、电路系统、逻辑、构件或指令。
在本文中所描述的方法1200和设备的一些实例中,接收维护操作的指示可包含用于从存储器系统接收存储器系统正执行维护操作的指示的操作、特征、电路系统、逻辑、构件或指令。
在本文中所描述的方法1200和设备的一些实例中,执行主机系统的操作可包含用于向存储器系统传输存储器系统可清除与物理地址相关联的数据的指示的操作、特征、电路系统、逻辑、构件或指令。
在本文中所描述的方法1200和设备的一些实例中,执行主机系统的操作可包含用于向存储器系统传输存储器系统可停止使用与物理地址相关联的逻辑地址映射的指示的操作、特征、电路系统、逻辑、构件或指令。
在本文中所描述的方法1200和设备的一些实例中,执行主机系统的操作可包含操作、特征、电路系统、逻辑、构件或指令,用于:接收与存储器系统的物理地址相关联的数据;确定数据有效;以及至少部分地基于确定数据有效而将数据保存在不同于存储器系统的物理地址的位置处。
在本文中所描述的方法1200和设备的一些实例中,执行主机系统的操作可包含用于向存储器系统传输用于存储器系统延迟执行维护操作的指示的操作、特征、电路系统、逻辑、构件或指令。
在本文中所描述的方法1200和设备的一些实例中,接收维护操作的指示可包含用于从存储器系统接收对应于物理地址的逻辑地址的指示的操作、特征、电路系统、逻辑、构件或指令。
在本文中所描述的方法1200和设备的一些实例中,接收维护操作的指示可包含用于从存储器系统接收物理地址的指示的操作、特征、电路系统、逻辑、构件或指令。
在本文中所描述的方法1200和设备的一些实例中,接收维护操作的指示可包含用于从存储器系统接收维护操作的类型的指示的操作、特征、电路系统、逻辑、构件或指令。
本文中所描述的方法1200和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:从存储器系统接收维护操作的状态的指示。
本文中所描述的方法1200和设备的一些实例可进一步包含操作、特征、电路系统、逻辑、构件或指令,用于:向存储器系统传输请求,并且接收维护操作的状态的指示可为对传输请求的响应。
应注意,本文中所描述的方法描述了可能的实施方案,并且操作和步骤可重新布置或以其它方式加以修改,并且其它实施方案也是可能的。另外,可以组合来自所述方法中的两种或更多种的部分。
描述了一种设备。所述设备可包含经配置以用于与存储器系统耦合的电路系统。所述电路系统可用以:从存储器系统接收与存储器系统的逻辑地址相关联的数据;并且向存储器系统且至少部分地基于确定存储器系统的与逻辑地址相关联的物理地址具有错误条件,传输执行与存储器系统的逻辑地址相关联的维护操作的命令。
描述了另一种设备。所述设备可包含存储器系统的存储器裸片,所述存储器裸片包括多个存储器单元,以及存储器系统的与存储器裸片耦合且经配置以用于与主机系统耦合的电路系统。电路系统可用以:向主机系统传输与存储器系统的逻辑地址相关联的数据;从主机系统接收执行与存储器系统的逻辑地址相关联的维护操作的命令;并且至少部分地基于接收到执行与存储器系统的逻辑地址相关联的维护操作的命令且确定存储器系统的对应于逻辑地址的物理地址而对存储器裸片执行维护操作。
描述了另一种设备。所述设备可包含存储器系统的存储器裸片,所述存储器裸片包括多个存储器单元,以及存储器系统的与存储器裸片耦合且经配置以用于与主机系统耦合的电路系统。电路系统可为这样的电路系统,其用以:从存储器裸片接收数据;并且至少部分地基于确定与存储器裸片的物理地址相关联的错误条件且确定对应于存储器裸片的物理地址的逻辑地址,向主机系统传输用于修复存储器裸片的物理地址的维护操作的指示。
描述了另一种设备。所述设备可包含经配置以用于与存储器系统耦合的电路系统。电路系统可用以:从存储器系统接收用于修复存储器系统的物理地址的维护操作的指示;并且至少部分地基于从存储器系统接收到维护操作的指示而执行操作。
可以使用各种不同技艺和技术中的任一者来表示本文所描述的信息和信号。例如,可用电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示在整个上文描述中可能参考的数据、指令、命令、信息、信号、位、符号和芯片。一些图式可以将信号示出为单个信号;然而,本领域的普通技术人员将理解,所述信号可以表示信号总线,其中总线可以具有多种位宽度。
术语“电子通信”、“导电接触”、“连接”和“耦合”可以指支持信号在组件之间流动的组件之间的关系。如果组件之间存在可以在任何时间支持信号在组件之间流动的任何导电路径,则认为组件彼此电子通信(或彼此导电接触、或彼此连接、或彼此耦合)。在任何给定时间,基于包含所连接组件的装置的操作,彼此电子通信(或彼此导电接触,或彼此连接,或彼此耦合)的组件之间的导电路径可为开路或闭路。所连接组件之间的导电路径可为组件之间的直接导电路径,或所连接组件之间的导电路径可为间接导电路径,其可包含例如开关、晶体管或其它组件的中间组件。在一些实例中,可以例如使用例如开关或晶体管的一或多个中间组件来中断信号在所连接组件之间的流动一段时间。
术语“耦合”是指从组件之间的开路关系移动到组件之间的闭路关系的条件,在所述开路关系中,信号当前无法通过导电路径在所述组件之间传送,在所述闭路关系中,信号能够通过所述导电路径在所述组件之间传送。当例如控制器的组件将其它组件耦合在一起时,组件起始允许信号通过先前不准许信号流动的导电路径在其它组件之间流动的改变。
术语“隔离”是指其中信号当前无法在组件之间流动的组件之间的关系。如果组件之间存在开路,则组件彼此隔离。例如,由定位在两个组件之间的开关分离的所述组件在开关断开时彼此隔离。当控制器隔离两个组件时,控制器实现以下改变:防止信号使用先前准许信号流动的导电路径在组件之间流动。
本文所论述的包含存储器阵列的装置可以形成于例如硅、锗、硅锗合金、砷化镓、氮化镓等半导体衬底上。在一些实例中,衬底为半导体晶片。在其它实例中,衬底可以是绝缘体上硅(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两者。换句话说,如本文所使用,短语“基于”应以与短语“至少部分地基于”相同的方式解释。
提供本文中的描述以使本领域的技术人员能够制造或使用本公开。本领域的技术人员将显而易见对本公开的各种修改,并且本文中所定义的一般原理可以在不脱离本公开的范围的情况下应用于其它变体。因此,本公开不限于本文中所描述的实例和设计,而是被赋予与本文中所公开的原理和新颖特征一致的最广泛范围。

Claims (27)

1.一种方法,其包括:
在主机系统处从存储器系统接收与所述存储器系统的逻辑地址相关联的数据;以及
向所述存储器系统且至少部分地基于确定所述存储器系统的与所述逻辑地址相关联的物理地址具有错误条件,传输执行与所述存储器系统的所述逻辑地址相关联的维护操作的命令。
2.根据权利要求1所述的方法,其进一步包括:
向所述存储器系统传输所述存储器系统的所述逻辑地址的指示以及所述命令。
3.根据权利要求1所述的方法,其进一步包括:
向所述存储器系统传输维护操作的类型的指示以及所述命令。
4.根据权利要求1所述的方法,其进一步包括:
确定所述数据中的错误的数量或所述数据中的错误的比例满足阈值。
5.根据权利要求1所述的方法,其进一步包括:
在所述主机系统处接收来自所述存储器系统的能力的指示;以及
至少部分地基于接收到所述指示而确定所述存储器系统执行所述维护操作的能力。
6.根据权利要求5所述的方法,其中所述能力的所述指示包括与所述逻辑地址相关联的所述存储器系统的一部分是否可修复的指示,或用于所述存储器系统的修复的可用资源的数量,或其组合。
7.根据权利要求5所述的方法,其进一步包括:
至少部分地基于确定执行所述维护操作而向所述存储器系统传输查询,其中接收所述能力的所述指示是对传输所述查询的响应。
8.根据权利要求5所述的方法,其中接收所述存储器系统的所述能力的所述指示包括:
读取所述存储器系统的寄存器;以及
标识写入到所述寄存器的指示所述存储器系统的所述能力的位组合。
9.根据权利要求1所述的方法,其进一步包括:
在所述主机系统处接收所述维护操作的状态的指示。
10.根据权利要求9所述的方法,其进一步包括:
向所述存储器系统传输请求,其中接收所述维护操作的所述状态的所述指示是对传输所述请求的响应。
11.根据权利要求1所述的方法,其中所述命令指示执行所述维护操作的时间或执行所述维护操作之前的延迟。
12.根据权利要求1所述的方法,其进一步包括:
确定在确定执行所述维护操作与传输执行所述维护操作的所述命令之间的延迟,其中根据所述延迟传输执行所述维护操作的所述命令。
13.根据权利要求1所述的方法,其进一步包括:
确定所述数据有效;以及
至少部分地基于确定所述数据有效而将所述数据保存在不同于所述存储器系统的所述物理地址的位置处。
14.一种方法,其包括:
从存储器系统向主机系统传输与所述存储器系统的逻辑地址相关联的数据;
在所述存储器系统处且从所述主机系统接收执行与所述存储器系统的所述逻辑地址相关联的维护操作的命令;以及
至少部分地基于接收到执行与所述存储器系统的所述逻辑地址相关联的所述维护操作的所述命令且确定所述存储器系统的对应于所述逻辑地址的物理地址而对所述存储器系统的存储器裸片执行所述维护操作。
15.根据权利要求14所述的方法,其进一步包括:
在对所述存储器裸片执行所述维护操作的同时,禁止所述存储器系统的存取操作。
16.根据权利要求14所述的方法,其进一步包括:
在对所述存储器裸片执行所述维护操作的同时,执行所述存储器系统的存取操作。
17.根据权利要求14所述的方法,其进一步包括:
在与所述存储器裸片耦合的控制器处起始维护操作,所述维护操作包括从需要修复的一或多个地址复制数据到所述控制器中的或与所述控制器耦合的一或多个资源,且包括将所述一或多个地址映射到所述控制器中的或与所述控制器耦合的第二一或多个资源。
18.根据权利要求14所述的方法,其中执行所述维护操作包括:
起始对所述存储器裸片的封装后修复操作。
19.根据权利要求14所述的方法,其进一步包括:
在所述存储器系统处接收所述存储器系统的所述逻辑地址的指示以及所述命令。
20.根据权利要求14所述的方法,其进一步包括:
在所述存储器系统处接收维护操作的类型的指示以及所述命令。
21.根据权利要求14所述的方法,其进一步包括:
向所述主机系统传输来自所述存储器系统的能力的指示,其中接收执行所述维护操作的所述命令至少部分地基于传输所述指示。
22.根据权利要求21所述的方法,其中所述能力的所述指示包括与所述逻辑地址相关联的所述存储器系统的一部分是否可修复的指示,或用于所述存储器系统的修复的可用资源的数量,或其组合。
23.根据权利要求21所述的方法,其进一步包括:
从所述主机系统接收查询,其中传输所述能力的所述指示是对接收所述查询的响应。
24.根据权利要求21所述的方法,其中传输所述存储器系统的所述能力的所述指示包括:
从所述存储器系统的寄存器传输写入到所述寄存器的指示所述存储器系统的所述能力的位组合。
25.根据权利要求14所述的方法,其进一步包括:
向所述主机系统传输所述维护操作的状态的指示。
26.根据权利要求25所述的方法,其进一步包括:
从所述主机系统接收请求,其中传输所述维护操作的所述状态的所述指示是对接收所述请求的响应。
27.根据权利要求14所述的方法,其中所述命令指示执行所述维护操作的时间或执行所述维护操作之前的延迟。
CN202180049890.3A 2020-07-30 2021-07-19 存储器系统的维护命令接口 Pending CN116472519A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202063058895P 2020-07-30 2020-07-30
US63/058,895 2020-07-30
US17/375,832 US11579970B2 (en) 2020-07-30 2021-07-14 Maintenance command interfaces for a memory system
US17/375,832 2021-07-14
PCT/US2021/042175 WO2022026235A1 (en) 2020-07-30 2021-07-19 Maintenance command interfaces for a memory system

Publications (1)

Publication Number Publication Date
CN116472519A true CN116472519A (zh) 2023-07-21

Family

ID=80002967

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180049890.3A Pending CN116472519A (zh) 2020-07-30 2021-07-19 存储器系统的维护命令接口

Country Status (3)

Country Link
US (2) US11579970B2 (zh)
CN (1) CN116472519A (zh)
WO (1) WO2022026235A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11579970B2 (en) * 2020-07-30 2023-02-14 Micron Technology, Inc. Maintenance command interfaces for a memory system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180039578A1 (en) * 2016-08-04 2018-02-08 Samsung Electronics Co., Ltd. Data storage device using host memory and method of operating same
US20200034307A1 (en) * 2018-07-26 2020-01-30 Sandisk Technologies Llc Memory controller assisted address mapping
US20200117392A1 (en) * 2018-10-16 2020-04-16 Micron Technology, Inc. Memory command verification
CN111149091A (zh) * 2017-10-02 2020-05-12 西部数据技术公司 基于跨多个装置的协调内部地址方案的冗余编码条带
US20200167231A1 (en) * 2017-02-06 2020-05-28 Samsung Electronics Co., Ltd. Storage device for processing corrupted metadata and method of operating the same

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI604373B (zh) 2016-12-13 2017-11-01 慧榮科技股份有限公司 資料儲存裝置及其資料維護方法
US10909011B2 (en) 2018-10-16 2021-02-02 Micron Technology, Inc. Intelligent post-packaging repair
US11579970B2 (en) * 2020-07-30 2023-02-14 Micron Technology, Inc. Maintenance command interfaces for a memory system
US20220326887A1 (en) * 2021-04-06 2022-10-13 Micron Technology, Inc. Log management maintenance operation and command

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180039578A1 (en) * 2016-08-04 2018-02-08 Samsung Electronics Co., Ltd. Data storage device using host memory and method of operating same
US20200167231A1 (en) * 2017-02-06 2020-05-28 Samsung Electronics Co., Ltd. Storage device for processing corrupted metadata and method of operating the same
CN111149091A (zh) * 2017-10-02 2020-05-12 西部数据技术公司 基于跨多个装置的协调内部地址方案的冗余编码条带
US20200034307A1 (en) * 2018-07-26 2020-01-30 Sandisk Technologies Llc Memory controller assisted address mapping
US20200117392A1 (en) * 2018-10-16 2020-04-16 Micron Technology, Inc. Memory command verification

Also Published As

Publication number Publication date
US11880276B2 (en) 2024-01-23
US20230153204A1 (en) 2023-05-18
WO2022026235A1 (en) 2022-02-03
US20220035701A1 (en) 2022-02-03
US11579970B2 (en) 2023-02-14

Similar Documents

Publication Publication Date Title
CN111198658B (zh) 用于数据迁移的系统、装置、技术及方法
CN114981890A (zh) 具有自动预充电的存储器存取
US12001358B2 (en) Status check using signaling from a memory device
CN114974349A (zh) 数据迁移动态随机存取存储器
CN117203622A (zh) 日志管理维护操作及命令
CN113889173A (zh) 用于错误检测及校正的存储器旁路
CN115705887A (zh) 存储器操作完成标记
US20220342544A1 (en) Dynamic superblocks
US11880276B2 (en) Maintenance command interfaces for a memory system
US20220398024A1 (en) Dynamic interval for a memory device to enter a low power state
US11995342B2 (en) Host initiated garbage collection
US20220406344A1 (en) Programmable column access
CN113192945B (zh) 具有内部信道的多芯片存储器封装
WO2022193126A1 (en) Performance benchmark for host performance booster
CN113838502A (zh) 高速缓存元数据管理
US12007897B2 (en) Split cache for address mapping data
US11379367B2 (en) Enhancement for activation and deactivation of memory address regions
CN115114197B (zh) 多存储器装置中的战略性电力模式转变
WO2022193144A1 (en) Read operations for active regions of memory device
US11816028B2 (en) Host side memory address management
US20220292027A1 (en) Shared virtual address spaces
US10908823B2 (en) Data transfer for wear leveling with bank clusters
WO2022192808A1 (en) Virtual addresses for a memory system
CN113918482A (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