CN114446379A - 基于各种定时容限参数设定的性能度量来对存储器装置进行评级 - Google Patents

基于各种定时容限参数设定的性能度量来对存储器装置进行评级 Download PDF

Info

Publication number
CN114446379A
CN114446379A CN202111294668.8A CN202111294668A CN114446379A CN 114446379 A CN114446379 A CN 114446379A CN 202111294668 A CN202111294668 A CN 202111294668A CN 114446379 A CN114446379 A CN 114446379A
Authority
CN
China
Prior art keywords
memory
errors
timing margin
determining
cross
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
CN202111294668.8A
Other languages
English (en)
Inventor
郎慕蓉
黄健
许中广
周振明
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 CN114446379A publication Critical patent/CN114446379A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • 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/008Reliability or availability analysis
    • 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/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/24Marginal checking or other specified testing methods not covered by G06F11/26, e.g. race tests
    • 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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0617Improving the reliability of storage systems in relation to availability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/023Detection or location of defective auxiliary circuits, e.g. defective refresh counters in clock generator or timing circuitry
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/028Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • G11C29/50012Marginal testing, e.g. race, voltage or current testing of timing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device
    • 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
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/835Timestamp
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/22Control and timing of internal memory operations
    • G11C2207/2254Calibration

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本公开涉及基于各种定时容限参数设定的性能度量来对存储器装置进行评级。确定了一种与将要安装在存储器子系统处的存储器装置相关联的操作定时条件。所述存储器装置可以包含非易失性存储器单元的交叉点阵列。所述操作定时条件对应于非易失性存储器单元的所述交叉点阵列的第一操作延迟定时容限设定。根据低于所述第一操作延迟定时容限设定的第二操作延迟定时容限设定在非易失性存储器单元的所述交叉点阵列处执行第一存储器存取操作集合。确定在执行所述第一存储器存取操作集合期间发生的第一错误数目。响应于确定所述第一错误数目满足错误条件,将第一质量等级分配给所述存储器装置。响应于确定所述第一错误数目不满足所述错误准则,基于一或多个电力电平设定针对非易失性存储器单元的所述交叉点阵列执行进一步测试。

Description

基于各种定时容限参数设定的性能度量来对存储器装置进行 评级
技术领域
本公开的实施例大体上涉及存储器子系统,且更具体地说,涉及基于各种时间容限参数设定的性能度量来对存储器装置进行评级。
背景技术
存储器子系统可以包含存储数据的一或多个存储器装置。存储器装置可以为例如非易失性存储器装置和易失性存储器装置。一般来说,主机系统可以利用存储器子系统以在存储器装置处存储数据且从存储器装置检索数据。
发明内容
在一个方面中,本公开涉及一种方法,其包括:确定与将要安装在存储器子系统处的存储器装置相关联的操作定时条件,所述存储器装置包括非易失性存储器单元的交叉点阵列,其中所述操作定时条件对应于非易失性存储器单元的所述交叉点阵列的第一操作延迟定时容限设定;根据第二操作延迟定时容限设定在非易失性存储器单元的所述交叉点阵列处执行第一存储器存取操作集合,其中所述第二操作延迟定时容限设定低于所述第一操作延迟定时容限设定;确定在执行所述第一存储器存取操作集合期间发生的第一错误数目;响应于确定所述第一错误数目满足错误准则,将第一质量等级分配给所述存储器装置;以及响应于确定所述第一错误数目不满足所述错误准则,基于一或多个电力电平设定而针对非易失性存储器单元的所述交叉点阵列执行进一步测试。
在另一方面中,本公开涉及一种系统,其包括:存储器装置;以及耦合到所述存储器装置的处理装置,所述处理装置用以执行包括以下各项的操作:确定与各自包括非易失性存储器单元的交叉点阵列且将要安装在一或多个存储器子系统处的存储器装置的集合相关联的操作定时条件,其中所述操作定时条件对应于非易失性存储器单元的所述交叉点阵列的与第一定时容限相关联的第一电力电平设定;根据第二电力电平设定在存储器装置的所述集合中的每一者的非易失性存储器单元的所述交叉点阵列处执行第一存储器存取操作集合,其中所述第二电力电平设定与小于所述第一定时容限的第二定时容限相关联;针对存储器装置的所述集合中的每一者确定在执行所述第一存储器存取操作集合期间发生的错误数目;标识存储器装置的所述集合中的各自与满足错误准则的相应错误数目相关联的一或多个存储器装置;以及将第一质量等级分配给所标识的一或多个存储器装置中的每一者。
在另外的方面中,本公开涉及一种非暂时性计算机可读存储媒体,其包括指令,所述指令在由处理装置执行时使得所述处理装置执行包括以下各项的操作:确定与将要安装在存储器子系统处的存储器装置相关联的操作定时条件,所述存储器装置包括非易失性存储器单元的交叉点阵列,其中所述操作定时条件对应于非易失性存储器单元的所述交叉点阵列的第一操作延迟定时容限设定;根据第二操作延迟定时容限设定在非易失性存储器单元的所述交叉点阵列处执行第一存储器存取操作集合,其中所述第二操作延迟定时容限设定低于所述第一操作延迟定时容限设定;确定在执行所述第一存储器存取操作集合期间发生的第一错误数目;响应于确定所述第一错误数目满足错误准则,将第一质量等级分配给所述存储器装置;以及响应于确定所述第一错误数目不满足所述错误准则,基于一或多个电力电平设定而针对非易失性存储器单元的所述交叉点阵列执行进一步测试。
附图说明
根据下文给出的具体实施方式和本公开的各个实施例的附图,将更充分地理解本公开。然而,图式不应视为将本公开限于具体实施例,而是仅用于解释和理解。
图1示出了根据本公开的一些实施例的包含存储器子系统的示例计算系统。
图2示出了根据本公开的一些实施例的示例制造环境。
图3是根据本公开的实施例的用于基于定时容限性能度量来对存储器装置进行评级的示例方法的流程图。
图4是用于基于定时容限性能度量来对存储器装置进行评级的另一示例方法的流程图。
图5是根据本公开的一些实施例的用于基于定时容限性能度量来对存储器装置的集合进行评级的示例方法的流程图。
图6是本公开的实施例可以在其中操作的示例计算机系统的框图。
具体实施方式
本公开的各方面涉及基于各种时间容限参数设定的性能度量来对存储器装置进行评级。存储器子系统可以为存储装置、存储器模块,或存储装置和存储器模块的组合。下文结合图1描述存储装置和存储器模块的实例。一般来说,主机系统可以利用包含一或多个组件(例如,存储数据的存储器装置)的存储器子系统。主机系统可以提供将要存储在存储器子系统处的数据并且可以请求将要从存储器子系统检索的数据。
存储器子系统可以包含高密度非易失性存储器装置,其中当没有电力被供应到存储器装置时需要数据的保持。非易失性存储器装置的一个实例是与非(NAND)存储器装置。另一实例是包含非易失性存储器单元阵列的三维交叉点(“3D交叉点”)存储器装置。3D交叉点存储器装置可以结合可堆叠交叉网格化数据存取阵列基于体电阻的改变来执行位存储。下文结合图1描述非易失性存储器装置的其它实例。非易失性存储器装置是一或多个裸片的封装。每一裸片可以由一或多个平面组成。对于一些类型的非易失性存储器装置(例如,NAND装置),每一平面由物理块集合组成。每一块由页集合组成。每一页由存储器单元的集合(“单元”)组成。单元是存储信息的电子电路。取决于单元类型,单元可以存储二进制信息的一或多个位,且具有与正存储的位数相关的各种逻辑状态。逻辑状态可以由二进制值(例如,“0”和“1”)或此类值的组合表示。
存储器装置可以由布置在二维(2D)或三维(3D)网格中的位组成。存储器单元被蚀刻到列(下文也被称为位线(BL))和行(下文也被称为字线(WL))的阵列中的硅晶片上。字线可以指存储器装置的存储器单元的一或多个行,所述一或多个行与一或多个位线一起使用以生成存储器单元中的每一者的地址。位线和字线的相交点构成存储器单元的地址。下文中,块是指用于存储数据的存储器装置的单元,并且可以包含存储器单元的群组、字线群组、字线或个体存储器单元。可以将一或多个块分组在一起以形成存储器装置的平面,以便允许在每一平面上进行并发操作。基于3D交叉点的存储器装置(以及其控制器)被称为“驱动器”,其具有在存储器装置中被称为“层面”的多个平面中分层的多个裸片。
存储器子系统控制器可以通过向存储数据的存储器单元施加用于操作的特定电压来执行存储器存取操作(例如,读取操作、写入操作等),以存取存储在存储器装置处的数据。对于某些类型的存储器装置,存储器存取操作(例如,读取操作)可以改变存储器单元的阈值电压分布,这被称为部分写入效应。随着时间的推移,由存储器存取操作引起的部分写入效应可能会恶化存储器单元的阈值电压分布,并且相同存储器单元处的后续存储器存取操作可能具有更高的错误率。在数据被编程到存储器装置之后,阈值电压分布可能会发生变化。例如,在特定电压电平下,相较于在数据已被写入之后的稍晚时间即执行存储器存取操作的情况,如果在数据已被编程之后不久即执行存储器存取操作,则存储器单元损坏的影响可能会更大。随着自数据已被编程以来经过的时间不断增加,损坏的影响可能会继续减小。因此,由特定存储器存取电压导致的存储器单元损坏在数据已被编程时和数据正被读取时可能会不同。
存储器子系统控制器可以依据各种操作定时条件执行存储器存取操作,以减少部分写入效应对存储器单元的影响。操作定时条件的一个实例是执行初始存储器存取操作之后与可以执行后续存储器存取操作之前经过的时间量。例如,在将数据写入存储器装置的存储器单元之后,存储器子系统控制器可以延迟存储器单元处的后续读取操作,直到与操作定时条件相关联的时间量已过去。这种类型的延迟被称为操作到操作延迟。可以优化特定存储器存取操作之间的延迟的时间量,以减少由存储器存取操作损坏引起的错误数目。
集成电路(IC)中的定时容限对应于信号到达电路的时间与信号可以到达电路以正确地起作用的最晚时间之间的差。特定存储器装置的定时容限的大小可以与存储器装置的组件的质量直接相关。例如,质量较低的存储器装置的定时容限的大小可以小于质量较高的存储器装置的定时容限的大小。关于存储器存取操作的执行,定时容限对应于执行初始存储器存取操作之后的一段时间,在所述时间内可以根据用于存储器子系统的操作定时条件和性能条件(例如,效率条件、时延条件等)来向存储器单元施加用于后续存储器存取操作的电压。存储器子系统根据各种定时容限参数设定进行操作,所述定时容限参数设定使得存储器子系统控制器在对应于所述存储器存取操作的定时容限内向存储器单元施加用于特定存储器存取操作的电压。例如,写入到读取延迟的定时容限可以为100纳秒(ns)。写入到读取延迟定时容限参数可以使得存储器子系统控制器在与写入到读取延迟相关联的100ns的定时容限内向存储器单元施加用于后续读取操作的电压信号。
如上文所描述,质量较低的存储器装置的定时容限的大小可以小于质量较高的存储器装置的定时容限的大小。根据先前的实例,质量较低的存储器装置处的写入到读取延迟的定时容限可以为90ns而不是100ns。这被称为负定时容限。如果存储器子系统控制器根据使得存储器子系统控制器在100ns的定时容限内施加用于后续读取操作的电压的定时容限参数设定进行操作,则可能会引起部分写入效应,所述部分写入效应可能会恶化存储器单元的阈值电压分布。
例如基于3D交叉点的存储器装置的高级存储器装置以极高速度运行且具有非常精密的定时容限。如先前所描述,由于制造期间的工艺变化,不同的裸片可能具有不同的定时容限。此外,组装的存储器装置的信号或电力可能会导致驱动器电压电平波动,这可能会加剧裸片之间的定时容限的变化。如果存储器装置的定时容限变为负且存储器子系统控制器以高频率驱动存储器装置,则存储器装置无法正常工作,从而增加与存储器装置相关联的错误率。存储器子系统控制器可以执行大量的错误校正操作来校正存储器装置处的缺陷,这导致存储器子系统的性能降低。在一些情况下,负定时容限可能会导致写入/读取失效超出错误校正码(ECC)校正数据的能力。在此情况下,存储器子系统报告不可校正的错误校正码(UECC)事件的发生。
本公开的各方面通过基于各种定时参数容限设定的性能度量来对存储器装置进行评级来解决上述和其它缺陷。用于制造系统的测试设备可以根据各种定时容限参数设定(例如,操作延迟定时容限设定、电力电平设定等)来对每一存储器装置执行测试,并且基于测试期间存储器装置的性能来对每一存储器装置进行评级。在一些实施例中,测试设备可以基于在执行存储器存取操作集合之后检测到的总错误数目(例如,UECC事件报告的总数目)来测量存储器装置的性能。响应于确定错误的数目满足错误准则(例如,超过阈值错误数目),测试设备可以将第一质量等级分配给存储器装置。响应于确定错误的数目不满足错误准则,测试设备可以针对存储器装置执行额外测试,并且基于额外测试的结果将第二质量等级或第三质量等级分配给存储器装置。
本公开的优点包含但不限于增加存储器子系统的总体使用寿命。通过使用各种定时容限参数设定来测试存储器装置,测试设备可以更易于标识包含制造缺陷的存储器装置,从而产生较小的定时容限。由于较小的定时容限可能会在于存储器装置处执行存储器存取操作期间产生大量错误,因此测试设备可以将适当的质量等级分配给所述装置。制造系统的组装设备可以依据每一装置的质量等级来组装存储器子系统。例如,制造系统的组装设备可以使用存储器装置等级来组装仅包含分配有高质量等级的存储器装置的存储器子系统,这可能会产生存储器子系统的较低总体错误率。存储器子系统的较低总体错误率减少了针对存储器子系统执行的错误校正操作的数目,并且可以减小不可恢复的数据丢失的可能性。在另一实例中,组装设备可以使用存储器装置质量等级来组装包含分配有低质量等级的存储器装置与分配有高质量等级的存储器装置的相等混合的存储器子系统,这避免组装具有大量较低等级的存储器装置的存储器子系统。另外或替代地,测试设备可以标识具有可能会在存储器子系统的操作期间产生大量错误的较小定时容限的存储器装置。这些所标识的存储器装置可以被标记为有缺陷的,并且制造系统可以防止组装设备将这些存储器装置包含在任何存储器子系统中。
图1示出了根据本公开的一些实施例的包含存储器子系统110的示例计算系统100。存储器子系统110可以包含媒体,例如一或多个易失性存储器装置(例如,存储器装置140)、一或多个非易失性存储器装置(例如,存储器装置130)或这些的组合。
存储器子系统110可以为存储装置、存储器模块,或存储装置和存储器模块的混合。存储装置的实例包含固态驱动器(SSD)、快闪驱动器、通用串行总线(USB)快闪驱动器、嵌入式多媒体控制器(eMMC)驱动器、通用快闪存储(UFS)驱动器、安全数字(SD)卡和硬盘驱动器(HDD)。存储器模块的实例包含双列直插式存储器模块(DIMM)、小型DIMM(SO-DIMM)以及各种类型的非易失性双列直插式存储器模块(NVDIMM)。
计算系统100可以是计算装置,例如台式计算机、膝上型计算机、网络服务器、移动装置、载具(例如,飞机、无人机、火车、汽车或其它运输工具)、支持物联网(IoT)的装置、嵌入式计算机(例如,载具、工业设备或联网商业装置中包含的嵌入式计算机),或包含存储器和处理装置的此类计算装置。
计算系统100可以包含耦合到一或多个存储器子系统110的主机系统120。在一些实施例中,主机系统120耦合到不同类型的存储器子系统110。图1示出了耦合到一个存储器子系统110的主机系统120的一个实例。如本文中所使用,“耦合到”或“与……耦合”通常是指组件之间的连接,所述连接可以是间接通信连接或直接通信连接(例如,不具有中间组件),不管有线还是无线的,包含例如电气、光学、磁性等的连接。
主机系统120可以包含处理器芯片组和由处理器芯片组执行的软件堆叠。处理器芯片组可以包含一或多个核心、一或多个高速缓冲存储器、存储器控制器(例如,NVDIMM控制器)和存储协议控制器(例如,PCIe控制器、SATA控制器)。主机系统120使用存储器子系统110,例如以将数据写入存储器子系统110和从存储器子系统110读取数据。
主机系统120可以经由物理主机接口耦合到存储器子系统110。物理主机接口的实例包含但不限于串行高级技术附件(SATA)接口、外围组件互连高速(PCIe)接口、通用串行总线(USB)接口、光纤通道、串行连接的SCSI(SAS)、双数据速率(DDR)存储器总线、小型计算机系统接口(SCSI)、双列直插式存储器模块(DIMM)接口(例如,支持双数据速率(DDR)的DIMM套接接口)等。物理主机接口可以用于在主机系统120与存储器子系统110之间传输数据。当存储器子系统110通过PCIe接口与主机系统120耦合时,主机系统120可以进一步利用NVM高速(NVMe)接口来存取组件(例如,存储器装置130)。物理主机接口可以提供用于在存储器子系统110与主机系统120之间传递控制、地址、数据和其它信号的接口。图1示出了存储器子系统110作为实例。一般来说,主机系统120可以经由相同通信连接、多个单独通信连接和/或通信连接的组合存取多个存储器子系统。
存储器装置130、140可以包含不同类型的非易失性存储器装置和/或易失性存储器装置的任何组合。易失性存储器装置(例如,存储器装置140)可以是但不限于随机存取存储器(RAM),例如动态随机存取存储器(DRAM)和同步动态随机存取存储器(SDRAM)。
非易失性存储器装置(例如,存储器装置130)的一些实例包含与非(NAND)型快闪存储器和就地写入存储器,例如三维交叉点(“3D交叉点”)存储器装置,其为非易失性存储器单元的交叉点阵列。非易失性存储器的交叉点阵列可以结合可堆叠交叉网格化数据存取阵列基于体电阻的变化来执行位存储。另外,与许多基于快闪的存储器相比,交叉点非易失性存储器可以执行就地写入操作,其中可以在不预先擦除非易失性存储器单元的情况下对非易失性存储器单元进行编程。NAND型快闪存储器包含例如二维NAND(2D NAND)和三维NAND(3D NAND)。
存储器装置130中的每一者可以包含一或多个存储器单元阵列。一种类型的存储器单元,例如单级单元(SLC)每单元可以存储一个位。其它类型的存储器单元,例如多层单元(MLC)、三层单元(TLC)、四层单元(QLC)和五层单元(PLC)每单元可以存储多个位。在一些实施例中,存储器装置130中的每一者可以包含一或多个存储器单元阵列,例如SLC、MLC、TLC、QLC或其任何组合。在一些实施例中,特定存储器装置可以包含存储器单元的SLC部分,以及MLC部分、TLC部分、QLC部分或PLC部分。存储器装置130的存储器单元可以分组为可指代用于存储数据的存储器装置的逻辑单元的页。在一些类型的存储器(例如,NAND)的情况下,页可以分组以形成块。一些类型的存储器(例如,3D交叉点)可以将跨裸片和通道的页分组以形成管理单元(MU)。
尽管描述了非易失性存储器装置,例如非易失性存储器单元的3D交叉点阵列和NAND型快闪存储器(例如,2D NAND、3D NAND),但存储器装置130可以基于任何其它类型的非易失性存储器,例如只读存储器(ROM)、相变存储器(PCM)、自选存储器、其它基于硫属化物的存储器、铁电晶体管随机存取存储器(FeTRAM)、铁电随机存取存储器(FeRAM)、磁随机存取存储器(MRAM)、自旋转移力矩(STT)-MRAM、导电桥接RAM(CBRAM)、电阻性随机存取存储器(RRAM)、基于氧化物的RRAM(OxRAM)、或非(NOR)快闪存储器,以及电可擦除可编程只读存储器(EEPROM)。
存储器子系统控制器115(或为简单起见,控制器115)可以与存储器装置130通信以执行例如在存储器装置130处读取数据、写入数据或擦除数据等操作以及其它此类操作。存储器子系统控制器115可以包含硬件,例如一或多个集成电路和/或离散组件、缓冲器存储器,或其组合。硬件可以包含具有执行本文中所描述的操作的专用(即,硬译码)逻辑的数字电路系统。存储器子系统控制器115可以为微控制器、专用逻辑电路系统(例如,现场可编程门阵列(FPGA)、专用集成电路(ASIC)等)或其它合适的处理器。
存储器子系统控制器115可以为处理装置,其包含经配置以执行存储于本地存储器119中的指令的一或多个处理器(例如,处理器117)。在所示的实例中,存储器子系统控制器115的本地存储器119包含经配置以存储指令的嵌入式存储器,所述指令用于执行控制存储器子系统110的操作(包含处理存储器子系统110与主机系统120之间的通信)的各种过程、操作、逻辑流程和例程。
在一些实施例中,本地存储器119可以包含存储存储器指针、所提取数据等的存储器寄存器。本地存储器119还可以包含用于存储微码的只读存储器(ROM)。尽管图1中的示例存储器子系统110已示出为包含存储器子系统控制器115,但在本公开的另一实施例中,存储器子系统110不包含存储器子系统控制器115,并且可以替代地依赖于(例如,由外部主机或由与存储器子系统分离的处理器或控制器提供的)外部控制。
一般来说,存储器子系统控制器115可以从主机系统120接收命令或操作,并且可以将所述命令或操作转换为指令或适当命令以实现对存储器装置130的所需存取。存储器子系统控制器115可以负责其它操作,例如耗损均衡操作、垃圾收集操作、错误检测及错误校正码(ECC)操作、加密操作、高速缓存操作,以及与存储器装置130相关联的逻辑地址(例如,逻辑块地址(LBA)、名字空间)与物理地址(例如,物理MU地址、物理块地址)之间的地址翻译。存储器子系统控制器115可以进一步包含主机接口电路系统,以经由物理主机接口与主机系统120通信。主机接口电路系统可以将从主机系统接收到的命令转换成命令指令以存取存储器装置130,并且将与存储器装置130相关联的响应转换成用于主机系统120的信息。
存储器子系统110还可以包含未示出的额外电路系统或组件。在一些实施例中,存储器子系统110可以包含高速缓冲存储器或缓冲器(例如,DRAM)和地址电路系统(例如,行解码器和列解码器),所述地址电路系统可以从存储器子系统控制器115接收地址且对所述地址进行解码以存取存储器装置130。
在一些实施例中,存储器装置130包含本地媒体控制器135,其结合存储器子系统控制器115操作以对存储器装置130的一或多个存储器单元执行操作。外部控制器(例如,存储器子系统控制器115)可以在外部管理存储器装置130(例如,对存储器装置130执行媒体管理操作)。在一些实施例中,存储器装置130是受管理存储器装置,其为与本地控制器(例如,本地控制器135)组合以在同一存储器装置封装内进行媒体管理的原始存储器装置。受管理存储器装置的实例是受管理NAND(MNAND)装置。
在一些情况下,可以在存储器装置130、140安装在存储器子系统110处之前针对存储器装置130、140执行一或多个测试。例如,在将存储器装置130、140安装在存储器子系统110处之前,可以在制造系统的测试设备处测试存储器装置130。存储器装置130可以插入于测试设备处。制造环境的制造组件可以在插入于测试设备处的存储器装置处执行一或多个操作。存储器装置130的本地媒体控制器135可以包含存储器装置测试组件113,所述存储器装置测试组件可以收集与在存储器装置130处执行的一或多个操作相关联的测试数据。测试数据可以包含用于确定存储器装置的性能(例如,耐久性、操作错误率、时延、吞吐量等)的任何数据。例如,测试数据可以包含在存储器装置处执行一或多个操作期间发生的错误数目、开始操作的实例与完成操作的实例之间的时间量等。响应于收集测试数据,存储器装置测试组件113可以将测试数据传输到制造组件。下文关于图2描述了关于存储器装置测试组件113和制造组件的操作的进一步细节。
图2示出了根据本公开的一些实施例的示例制造环境200。制造环境200可以包含服务器210、制造设备220、测试设备230、客户端装置240和数据存储装置250。在一些实施例中,服务器210、制造设备220、测试设备230、客户端装置240和数据存储装置250中的每一者可以经由网络270连接。
服务器210可以包含经配置以促进制造环境200处的一或多个过程的制造组件212。在一些实施例中,制造组件212可以包含存储器子系统组装模块214(在本文中被称为组装模块214)、存储器装置测试模块216(在本文中被称为装置测试模块216)和存储器装置模拟模块218(在本文中被称为装置模拟模块218)。组装模块214经配置以促进例如存储器子系统110的存储器子系统在制造设备220处的组装。
如关于图1所描述,存储器子系统110可以包含存储器子系统控制器(例如,存储器子系统控制器115)和一或多个存储器装置(例如,存储器装置130)。在一些实施例中,组装模块214可以依据每一存储器装置130的质量等级260而选择将要安装在存储器子系统110处的特定存储器装置130。制造组件212可以基于每一存储器装置130的所测量性能来确定每一存储器装置130的质量等级260。存储器装置的性能可以指存储在存储器装置130处的数据的质量(例如,存在于所存储数据中的错误的数目)和/或在存储器装置处执行的操作的效率。在一些实施例中,制造组件212可以基于在执行存储器存取操作集合之后检测到的总错误数目(例如,UECC事件报告的总数目)来测量存储器装置130的性能。
在一些实施例中,制造组件212可以基于由装置测试模块216针对存储器装置130收集的测试数据(例如,测试数据256)来测量存储器装置130的性能。装置测试模块216可以促进存储器装置130在测试设备230处的测试。在一些实施例中,测试设备230可以包含存储器装置测试架,所述存储器装置测试架包含多个存储器装置测试槽。存储器装置130可以插入到相应存储器装置测试槽中,并且装置测试模块216可以执行将要在插入的存储器装置处执行的一或多个测试操作。
在一些实施例中,装置测试模块216可以通过执行一或多个指令以根据一或多个操作定时条件252执行存储器存取操作(例如,写入操作、读取操作等)集合来促进存储器装置130在测试设备230处的测试。操作定时条件252是指执行初始存储器存取操作之后与可以执行后续存储器存取操作之前的时间量。操作定时条件252可以对应于在存储器装置处执行的初始存储器存取操作与后续存储器存取操作之间的延迟的时间长度,其被称为操作到操作延迟(例如,写入到写入延迟、写入到读取延迟、读取到读取延迟等)。例如,在将数据写入存储器装置130的存储器单元之后,存储器子系统控制器115可以延迟存储器单元处的后续读取操作,直到与操作定时条件252相关联的时间量(被称作写入到读取延迟)已过去。
定时容限对应于执行初始存储器存取操作之后的时间容限,在所述时间容限内可以根据用于存储器子系统110的操作定时条件252和其它性能条件(例如,效率条件、时延条件等)来向存储器单元施加用于后续存储器存取操作的电压。包含存储器装置130的存储器子系统110可以根据各种定时容限参数设定254进行操作。定时容限参数设定254是指特定设定(例如,操作延迟定时容限设定、电力电平设定等),其使得处理装置在对应于特定类型的存储器存取操作的定时容限内施加用于所述类型的存储器存取操作的电压。例如,写入到读取延迟定时容限设定254可以使得存储器子系统控制器115在100ns的定时容限内施加读取操作电压。在另一实例中,电力电平设定可以使得处理装置向存储器装置130提供特定的电力电平,其维持在存储器装置130处执行的存储器存取操作的定时容限。
操作定时条件252可以对应于定时容限参数设定的第一集合,其包含经优化以减少在执行存储器存取操作期间发生的错误数目的一或多个定时容限参数设定254。定时容限参数设定254可以包含写入到读取延迟定时容限设定、写入到读取延迟定时容限设定、读取到读取延迟定时容限设定或电力电平设定中的至少一者。在一些实施例中,制造系统200的用户——例如操作员、工程师、程序员等,可以(例如,经由客户端装置240)提供存储器装置130的定时容限参数设定254的第一集合中的每一者。在其它或类似实施例中,装置测试模块216可以在测试设备230处针对存储器装置130执行一系列测试以确定定时容限参数设定的第一集合中的每一者。
在一些实施例中,装置测试模块216可以在针对特定存储器装置130执行测试之前获得目标测试数据256。例如,装置测试模块216可以根据定时容限参数设定的第一集合在测试设备230处的存储器装置130处执行存储器存取操作集合。存储器存取操作集合可以包含:第一系列操作,其包含存储器装置130处的存储器单元集合的写入操作和后续写入操作;第二系列操作,其包含存储器装置130处的存储器单元集合的写入操作和后续读取操作;或第三系列操作,其包含存储器装置130处的存储器单元的读取操作和后续读取操作。
装置测试模块216可以根据定时容限参数设定的第一集合来确定在执行操作集合期间发生的错误数目。例如,装置测试组件113可以检测由于在存储器装置130处执行存储器存取操作集合而产生的一或多个错误,并且可以(例如,经由网络270)将指示发生的总错误数目的消息传输到装置测试模块216。在一些实施例中,总错误数目可以对应于执行存储器存取操作集合期间在存储器装置130处检测到的UECC事件的总数目。在一些实施例中,装置测试组件113可以不检测由于执行存储器操作集合而产生的任何错误,并且将指示未检测到错误的消息传输到装置测试模块216。响应于从装置测试组件113接收到消息,装置测试模块216可以将接收到的错误数目或未检测到错误的指示作为目标测试数据256存储在数据存储装置处。如先前所描述,优化定时容限参数设定的第一集合中的每一者以减少在于存储器装置130处执行存储器存取操作期间发生的错误数目。组装模块214可以使用目标测试数据256作为指示与存储器装置130的优化后定时容限参数设定254相关联的错误数目的参考数据。
在一些实施例中,装置测试模块216可以通过针对存储器装置130执行存储器存取操作来获得目标测试数据256,如先前所描述。在其它或类似实施例中,装置测试模块216可以不通过针对存储器装置130执行存储器存取操作来获得目标测试数据256,且替代地,可以从具有定时容限参数设定的第一集合的制造系统200的用户接收目标测试数据256。在其它或类似实施例中,根据先前所描述的实施例,装置测试模块216可以在执行一系列测试期间确定目标测试数据256以确定定时容限参数设定的第一集合中的每一者。
装置测试模块216可以根据定时容限参数设定的第二集合在测试设备230处通过执行指令以在存储器装置130处执行存储器存取操作集合来测试存储器装置130。应注意,装置测试模块216可以对同一存储器装置130或不同存储器装置130执行本文中所描述的每一存储器存取操作集合。例如,装置测试模块216可以在第一存储器装置130处根据定时容限参数设定的第一集合执行第一操作集合并且在第二存储器装置130处根据定时容限参数设定的第二集合执行第二操作集合。基于定时容限参数设定的第二集合的用于测试的操作集合可以包含相同操作(或一系列操作)或可以包含不同操作,其包含在用于获得目标测试数据256的操作集合中。
定时容限参数设定的第二集合可以包含不同于定时容限参数设定的第一集合的至少一个设定。例如,定时容限参数设定的第二集合可以包含使得处理装置在95ns的定时容限内施加用于后续读取操作的电压的操作延迟定时参数设定,所述定时容限小于用于第一集合的操作延迟定时容限参数设定的100ns的定时容限。在另一实例中,相比于第一集合的对应电力电平设定,第二集合的电力电平设定可以使得处理装置在执行存储器存取操作集合期间向存储器装置提供较小的电力电平。装置测试模块216可以根据测试容限参数设定的第二集合来确定在执行存储器存取操作集合期间发生的错误数目,并且可以将接收到的错误数目作为测试数据256存储在数据存储装置250处,如先前所描述。
在一些实施例中,装置测试模块216可以根据测试容限参数设定的不同集合针对存储器装置130执行多个测试。例如,装置测试模块可以根据测试容限参数设定的第三集合在存储器装置130处执行额外的操作集合。测试容限参数设定的第三集合可以包含不同于测试容限参数设定的第一集合和/或第二集合的对应参数设定的至少一个定时容限参数设定。例如,测试容限参数设定的第三集合可以包含使得处理装置在90ns的定时容限内施加用于后续读取操作的电压的操作延迟定时容限设定,所述定时容限小于用于第二集合的操作延迟定时容限设定的95ns的定时容限和用于第一集合的操作延迟定时容限设定的1000ns的定时容限。在其它或类似实施例中,测试容限参数设定的第三集合可以包含使得处理装置在100ns的定时容限内施加用于后续读取操作的电压的操作延迟定时容限设定,但还可以包含电力电平设定,其使得处理装置向存储器装置提供比在根据定时容限参数设定的第一和/或第二集合执行操作集合期间所提供的电力电平较小的电力电平。根据先前所描述的实施例,装置测试模块216可以确定在执行额外的存储器存取操作集合期间发生的错误数目,并且可以将错误数目作为测试数据258存储在数据存储装置250处。
组装模块214可以使用测试数据258来确定特定存储器装置130的质量等级。例如,组装模块214可以确定在测试期间执行存储器存取操作集合期间检测到的错误数目是否满足错误准则。组装模块214可以响应于确定错误数目达到或超过阈值错误数目而确定错误数目满足错误准则。在一些实施例中,阈值错误数目可以对应于目标测试数据256的检测到的错误的数目。在说明性实例中,目标测试数据256可以包含在存储器装置130处根据定时容限参数设定的第一集合执行操作集合期间未检测到错误的指示。测试数据258可以包含装置测试组件113在根据定时容限参数设定的第二集合执行操作集合之后检测到一或多个错误的指示。因而,组装模块214可以确定在执行第二存储器存取操作集合期间检测到的错误数目超过阈值错误数目。
响应于确定错误数目满足错误准则,组装模块214可以将低质量等级260分配给存储器装置130。在一些实施例中,响应于确定错误数目不满足错误准则(例如,错误数目不满足阈值),组装模块可以将高质量等级260分配给存储器装置130。在一些实施例中,低质量等级260可以表示比与高质量等级260相关联的存储器装置130质量低的存储器装置130、140。在一些实施例中,组装模块214可以使用由装置测试模块216收集的其它测试数据258来确定存储器装置130的质量等级260。例如,装置测试模块216可以在存储器装置130、140处根据定时容限参数设定的第三集合来执行额外的存储器存取操作集合,如先前所描述。响应于确定针对执行额外的存储器存取操作集合检测到的错误数目满足错误准则,组装模块214可以将中等质量等级260分配给存储器装置130。响应于确定错误数目不满足错误准则,组装模块214可以将高质量等级260分配给存储器装置130,如先前所描述。
在一些实施例中,组装模块214可以生成指令并将指令传输到制造设备220,以基于存储器装置130的质量等级260将特定存储器130安装在存储器子系统110处。例如,组装模块214可以生成使得制造设备220将具有高质量等级260的存储器装置130安装在特定存储器子系统110处的指令。在另一实例中,组装模块214可以生成使得制造设备220以大致相等(即,50/50)的混合将具有低质量等级260的存储器装置130和具有高质量等级260的存储器装置130安装在特定存储器子系统110处的指令。在其它或类似实施例中,组装模块214可以使用质量等级260来标识可能有缺陷且将不会安装在存储器子系统110处的存储器装置130。例如,组装模块214可以生成制造设备220不会将具有低质量等级260的任何存储器装置130安装在存储器子系统110处的指令。响应于生成关于将存储器装置130安装在存储器子系统110处的指令,组装模块214可以将指令传输到制造设备220。制造设备220可以依据指令来组装包含特定存储器装置130的存储器子系统110。
图3和4是根据本公开的实施例的用于基于定时容限性能度量来对存储器装置进行评级的示例方法300、400的流程图。图5是根据本公开的一些实施例的用于基于定时容限性能度量来对存储器装置的集合进行评级的示例方法的流程图。可以通过处理逻辑执行方法300、400和/或500,所述处理逻辑可以包含硬件(例如,处理装置、电路系统、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件(例如,在处理装置上运行或执行的指令),或其组合。在一些实施例中,通过图2的制造组件212执行方法300、400和/或500。尽管以特定顺序或次序示出,但除非另外规定,否则可以修改过程的次序。因此,所示实施例应仅作为实例理解,并且所示过程可以不同次序执行,且一些过程可以并行执行。另外,可以在各种实施例中省略一或多个过程。因此,并非每一实施例中都需要所有过程。其它过程流程是可能的。
现参考图3,在操作310,处理逻辑可以确定与将要安装在存储器子系统处的存储器装置相关联的操作定时条件。所述存储器装置可以包含非易失性存储器单元的交叉点阵列。在一些实施例中,操作定时条件可以为关于图2描述的操作定时条件252。操作定时条件252可以对应于第一操作延迟定时容限参数设定,其经优化以减少在于非易失性存储器单元的交叉点阵列处执行存储器存取操作期间发生的错误数目。在操作320,处理逻辑可以根据第二操作延迟定时容限参数设定在非易失性存储器单元的交叉点阵列处执行存储器存取操作集合。在一些实施例中,第二操作延迟定时容限参数设定可以低于第一操作延迟定时容限参数设定,如先前所描述。在一些实施例中,在执行存储器存取操作集合之前,处理逻辑可以修改存储器装置的一或多个错误校正设定以校正错误校正组件,从而防止校正在执行存储器存取操作期间在非易失性存储器单元的交叉点阵列处发生的错误。例如,处理逻辑可以修改错误校正设定以防止存储器装置执行冗余磁盘存储(RAID)错误校正操作。
在操作330,处理逻辑可以确定在执行存储器存取操作集合期间发生的错误数目。例如,存储器装置130的装置测试组件113可以检测在执行存储器存取操作集合期间发生的错误数目并且将指示检测到的错误数目的消息传输到制造组件212,如先前所描述。在操作340,处理逻辑可以确定错误数目是否满足错误准则。在一些实施例中,处理逻辑可以通过确定错误数目是否超过阈值错误数目来确定错误数目是否满足错误准则。在一个实施例中,如果错误数目达到或超过阈值错误数目,则处理逻辑可以确定满足错误准则。如果错误数目未达到或超出阈值错误数目,则处理逻辑可以确定不满足错误准则。响应于处理逻辑确定满足错误准则,方法300可以继续到操作350,其中处理逻辑可以将第一质量等级(例如,低质量等级)分配给存储器装置。响应于处理逻辑确定不满足错误准则,方法300可以继续到操作360,其中处理逻辑可以基于一或多个电力电平设定执行存储器装置的进一步测试。关于图4提供了关于基于一或多个电力电平设定测试存储器装置的进一步细节。
图4是用于基于定时容限性能度量来对存储器装置进行评级的另一示例方法400的流程图。在一些实施例中,处理逻辑可以响应于方法300的一或多个操作的完成而执行方法400的一或多个操作。例如,响应于方法300继续到操作360,处理逻辑可以从操作410或操作420开始执行方法400的一或多个操作。在其它或类似实施例中,处理逻辑可以在不完成方法300的一或多个操作的情况下执行方法400的一或多个操作。例如,处理逻辑可以从操作410开始执行400的一或多个操作。
在操作410,根据先前所描述的实施例,处理逻辑可以确定与存储器装置相关联的操作定时条件。存储器装置可以包含非易失性存储器单元的交叉点阵列,如先前所描述。在一些实施例中,操作定时条件可以对应于非易失性存储器单元的交叉点阵列的与特定定时容限相关联的电力电平设定。在操作420,处理逻辑可以根据第二电力电平设定在存储器装置的非易失性存储器单元的交叉点阵列处执行第一存储器存取操作集合。电力电平设定可以与小于第一定时容限的第二定时容限相关联。在操作430,根据先前所描述的实施例,处理逻辑可以确定在执行存储器存取操作集合期间发生的错误数目。在操作440,处理逻辑可以确定在执行存储器存取操作集合期间检测到的错误数目是否满足错误准则。在一个实施例中,如果错误数目达到或超过阈值错误数目,则处理逻辑可以确定满足错误准则。如果错误数目未达到或超出阈值错误数目,则处理逻辑可以确定不满足错误准则。
在一些实施例中,响应于处理逻辑确定满足错误准则,处理逻辑可以将第一质量等级或第二质量等级分配给存储器装置。例如,如果处理逻辑执行方法400的操作而不执行方法300的操作(即,不基于修改后的操作延迟定时容限参数设定来测试存储器装置),则处理逻辑可以响应于确定满足错误准则而将第一质量等级(例如,低质量等级)分配给存储器装置。在此类实施例中,根据先前所描述的实施例,处理逻辑可以随后执行方法300的一或多个操作(即,以基于修改后的操作延迟定时容限参数设定来测试存储器装置)。在其它或类似实施例中,方法400可以终止。
在另一实例中,如果处理逻辑在执行方法300的一或多个操作之后执行方法400的操作(即,基于修改后的延迟定时容限参数设定来测试存储器装置),则响应于处理逻辑在操作440确定满足错误准则,方法400可以继续到操作450,其中处理逻辑将第二质量等级(例如,中等质量等级)分配给存储器装置。响应于处理逻辑确定不满足错误准则,方法400继续到操作460,其中处理逻辑将第三质量等级(例如,高质量等级)分配给存储器装置。
图5是根据本公开的一些实施例的用于基于定时容限性能度量来对存储器装置的集合进行评级的示例方法500的流程图。应注意,尽管关于图5描述的实施例涉及基于修改后的电力电平设定来测试存储器装置,但根据本文所描述的实施例,处理逻辑可以执行方法500的此类操作以基于修改后的操作延迟定时容限设定来测试存储器装置。在操作510,处理逻辑可以确定与将要安装在一或多个存储器子系统处的存储器装置的集合相关联的操作定时条件。每一存储器装置可以包含非易失性存储器单元的交叉点阵列。操作定时条件可以对应于非易失性存储器单元的交叉点阵列的与第一定时容限相关联的第一电力电平设定。在操作520,根据先前所描述的实施例,处理逻辑可以根据第二电力电平设定在存储器装置的集合中的每一者处执行存储器存取操作集合。第二电力电平设定可以与小于第一定时容限的第二定时容限相关联。在操作530,处理逻辑可以确定在针对存储器装置的集合中的每一者执行存储器存取操作集合期间发生的错误数目。在操作540,处理逻辑可以标识存储器装置的集合中的各自与满足错误准则的相应错误数目相关联的一或多个存储器装置。在一些实施例中,处理逻辑可以通过确定错误数目超过阈值错误数目来确定存储器装置的错误数目满足错误准则。在其它或类似实施例中,处理逻辑可以通过确定特定存储器装置的错误数目大于存储器装置的集合中的另一存储器装置的错误数目来确定错误数目满足错误准则。在操作550,处理逻辑可以将第一质量等级分配给所标识的一或多个存储器装置中的每一者。在一些实施例中,处理逻辑可以标识存储器装置的集合中的具有不满足错误准则的相应错误数目的一或多个额外的存储器装置。在此类实施例中,根据先前所描述的实施例,处理逻辑可以对额外的存储器装置中的每一者执行和进行额外测试(例如,根据第三电力电平设定或修改后的操作延迟定时容限设定执行另一存储器存取操作集合)。
图6示出了计算机系统600的示例机器,所述示例机器内可以执行用于使得所述机器执行本文所论述的方法中的任何一或多种方法的指令集。在一些实施例中,计算机系统600可以对应于主机系统(例如,图1的主机系统120),其包含、耦合到或利用存储器子系统(例如,图1的存储器子系统110)或可以用于执行控制器的操作(例如,用于执行操作系统以执行对应于图1的装置测试组件113的操作)。在其它或类似实施例中,计算机系统可以对应于用于执行制造组件(例如,图2的制造组件212)的操作的制造系统的服务器。在替代实施例中,所述机器可以连接(例如,联网)到LAN、内联网、外联网和/或因特网中的其它机器。机器可以作为点对点(或分散式)网络环境中的对等机器或作为云计算基础设施或环境中的服务器或客户端机器而以客户端-服务器网络环境中的服务器或客户端机器操作。
机器可以是个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、蜂窝式电话、网络器具、服务器、网络路由器、交换机或桥接器,或能够(依序或以其它方式)执行指定将由所述机器采取的动作的指令集的任何机器。另外,尽管示出了单个机器,但还应认为术语“机器”包含机器的任何集合,所述集合单独地或共同地执行指令集(或多个指令集)以执行本文中所论述的方法中的任何一或多种方法。
示例计算机系统600包含经由总线630彼此通信的处理装置602、主存储器604(例如,只读存储器(ROM)、快闪存储器、动态随机存取存储器(DRAM),例如同步DRAM(SDRAM)或RDRAM等)、静态存储器606(例如,快闪存储器、静态随机存取存储器(SRAM)等)以及数据存储系统618。
处理装置602表示一或多个通用处理装置,例如微处理器、中央处理单元等。更具体地,处理装置可以是复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器、超长指令字(VLIW)微处理器、或实施其它指令集的处理器或实施指令集的组合的处理器。处理装置602也可以是一或多个专用处理装置,例如专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)、网络处理器等。处理装置602经配置以执行指令626,以用于执行本文中所论述的操作和步骤。计算机系统600可以进一步包含通过网络620通信的网络接口装置608。
数据存储系统618可以包含机器可读存储媒体624(也称为计算机可读媒体),其上存储有一或多个指令集626或体现本文中所描述的方法或功能中的任何一或多种的软件。指令626还可以在其由计算机系统600执行期间完全或至少部分地驻存在主存储器604内和/或处理装置602内,主存储器604和处理装置602也构成机器可读存储媒体。机器可读存储媒体624、数据存储系统618和/或主存储器604可以对应于图1的存储器子系统110或图2的服务器210。
在一个实施例中,指令626包含用以实施对应于制造组件(例如,图2的制造组件212)的功能性的指令。尽管机器可读存储媒体624在示例实施例中示出为单个媒体,但术语“机器可读存储媒体”应被认为包含存储一或多个指令集的单个媒体或多个媒体。术语“机器可读存储媒体”还应被认为包含能够存储供机器执行的指令的集或对所述指令的集进行编码以及使机器执行本公开的方法中的任何一或多种方法的任何媒体。因此,应认为术语“机器可读存储媒体”包含但不限于固态存储器、光学媒体和磁性媒体。
已依据计算机存储器内的数据位的操作的算法和符号表示呈现了先前详细描述的一些部分。这些算法描述和表示是数据处理领域的技术人员用于将其工作的主旨最有效地传达给本领域的其他技术人员的方式。算法在这里并且通常被认为是引起期望结果的操作的自洽序列。操作是需要物理量的物理操纵的那些操作。这些量通常但不一定呈能够被存储、组合、比较和以其它方式操控的电或磁信号的形式。有时,主要出于通用的原因,已经证明将这些信号称为位、值、元素、符号、字符、术语、数量等是方便的。
然而,应牢记,所有这些和类似术语应与恰当的物理量相关联,并且仅是应用于这些量的方便标记。本公开可以指计算机系统或类似电子计算装置的操控计算机系统的寄存器和存储器内的表示为物理(电子)量的数据并将所述数据变换为计算机系统的存储器或寄存器或其它此类信息存储系统内的类似地表示为物理量的其它数据的动作和过程。
本公开还涉及用于执行本文中的操作的设备。可以出于预期目的而专门构造此设备,或所述设备可以包含通过存储在计算机中的计算机程序选择性地激活或重新配置的通用计算机。此类计算机程序可以存储在计算机可读存储媒体中,例如但不限于任何类型的盘,包含软盘、光盘、CD-ROM和磁性光盘、只读存储器(ROM)、随机存取存储器(RAM)、EPROM、EEPROM、磁卡或光卡,或者适于存储电子指令的任何类型的媒体,它们各自耦合到计算机系统总线。
本文中呈现的算法和显示本质上并不与任何特定计算机或其它设备相关。各种通用系统可以与根据本文中的教示的程序一起使用,或其可以证明构造用以执行所述方法的更加专用的设备是方便的。将如下文描述中所阐述的那样来呈现多种这些系统的结构。另外,不参考任何特定编程语言来描述本公开。将了解,可以使用各种编程语言来实施如本文中所描述的本公开的教示。
本公开可以提供为计算机程序产品或软件,其可以包含在其上存储有可以用于对计算机系统(或其它电子装置)进行编程以执行根据本公开的过程的指令的机器可读媒体。机器可读媒体包含用于以机器(例如,计算机)可读的形式存储信息的任何机制。在一些实施例中,机器可读(例如计算机可读)媒体包含机器(例如计算机)可读存储媒体,例如只读存储器(“ROM”)、随机存取存储器(“RAM”)、磁盘存储媒体、光学存储媒体、快闪存储器组件等。
在前述说明书中,已参考其具体示例实施例描述了本公开的实施例。将显而易见的是,可以在不脱离如所附权利要求书中阐述的本公开的实施例的更广精神和范围的情况下对本公开进行各种修改。因此,说明书和图式应被视为说明性的而非限制性的。

Claims (20)

1.一种方法,其包括:
确定与将要安装在存储器子系统处的存储器装置相关联的操作定时条件,所述存储器装置包括非易失性存储器单元的交叉点阵列,其中所述操作定时条件对应于非易失性存储器单元的所述交叉点阵列的第一操作延迟定时容限设定;
根据第二操作延迟定时容限设定在非易失性存储器单元的所述交叉点阵列处执行第一存储器存取操作集合,其中所述第二操作延迟定时容限设定低于所述第一操作延迟定时容限设定;
确定在执行所述第一存储器存取操作集合期间发生的第一错误数目;
响应于确定所述第一错误数目满足错误准则,将第一质量等级分配给所述存储器装置;以及
响应于确定所述第一错误数目不满足所述错误准则,基于一或多个电力电平设定而针对非易失性存储器单元的所述交叉点阵列执行进一步测试。
2.根据权利要求1所述的方法,其中所述第一操作延迟定时容限设定和所述第二操作延迟定时容限设定包含写入到写入操作延迟定时容限设定、写入到读取操作延迟定时容限设定或读取到读取操作延迟定时容限设定中的至少一者。
3.根据权利要求1所述的方法,其中确定在执行所述第一存储器存取操作集合期间发生的所述第一错误数目包括:
在执行所述第一存储器存取操作集合期间接收一或多个不可校正的错误报告;以及
计算一或多个接收到的不可校正的错误报告的数目。
4.根据权利要求1所述的方法,其中所述第一存储器存取操作集合包括以下各者中的至少一者:包括写入操作和后续写入操作的第一系列操作、包括另一写入操作和后续读取操作的第二系列操作,或包括读取操作和另一后续读取操作的第三系列操作。
5.根据权利要求1所述的方法,其中基于所述一或多个电力电平设定而对非易失性存储器单元的所述交叉点阵列执行进一步测试包括:
标识非易失性存储器单元的所述交叉点阵列的对应于所述操作定时条件的第一电力电平设定;
根据第二电力电平设定在非易失性存储器单元的所述交叉点阵列处执行第二存储器存取操作集合,其中所述第二电力电平设定低于所述第一电力电平设定;
确定在执行所述第二存储器存取操作集合期间发生的第二错误数目;以及
响应于确定所述第二错误数目满足所述错误准则,将第二质量等级分配给所述存储器装置,其中所述第一质量等级对应于比与所述第二质量等级相关联的装置质量低的存储器装置。
6.根据权利要求5所述的方法,其进一步包括:
在基于所述一或多个电力电平设定而对非易失性存储器单元的所述交叉点阵列执行进一步测试之前,根据第三操作延迟定时容限设定在非易失性存储器单元的所述交叉点阵列处执行第三存储器存取操作集合,其中所述第三操作延迟定时容限设定低于所述第二操作延迟定时容限设定;
确定在执行所述第三存储器存取操作集合期间发生的第三错误数目;以及
响应于确定所述第三错误数目满足所述错误准则,将第三质量等级分配给所述存储器装置,其中所述第一质量等级对应于比与所述第三质量等级相关联的装置质量低的存储器装置。
7.根据权利要求1所述的方法,其进一步包括:
在于非易失性存储器单元的所述交叉点阵列处执行所述第一存储器存取操作集合之前,修改所述存储器装置的一或多个错误校正设定以防止错误校正组件校正在所述执行所述第一存储器存取操作集合期间在非易失性存储器单元的所述交叉点阵列处发生的错误。
8.根据权利要求1所述的方法,其中确定所述第一错误数目满足所述错误准则包括:
确定所述第一错误数目超过阈值错误数目。
9.一种系统,其包括:
存储器装置;以及
耦合到所述存储器装置的处理装置,所述处理装置用以执行包括以下各项的操作:
确定与各自包括非易失性存储器单元的交叉点阵列且将要安装在一或多个存储器子系统处的存储器装置的集合相关联的操作定时条件,其中所述操作定时条件对应于非易失性存储器单元的所述交叉点阵列的与第一定时容限相关联的第一电力电平设定;
根据第二电力电平设定在存储器装置的所述集合中的每一者的非易失性存储器单元的所述交叉点阵列处执行第一存储器存取操作集合,其中所述第二电力电平设定与小于所述第一定时容限的第二定时容限相关联;
针对存储器装置的所述集合中的每一者确定在执行所述第一存储器存取操作集合期间发生的错误数目;
标识存储器装置的所述集合中的各自与满足错误准则的相应错误数目相关联的一或多个存储器装置;以及
将第一质量等级分配给所标识的一或多个存储器装置中的每一者。
10.根据权利要求9所述的系统,其中为了针对存储器装置的所述集合中的每一者确定在执行所述第一存储器存取操作集合期间发生的所述错误数目,所述处理装置用以:
在于相应存储器装置的非易失性存储器单元的所述交叉点阵列处执行所述第一存储器存取操作集合期间接收一或多个不可校正的错误报告;以及
针对所述相应存储器装置计算一或多个接收到的不可校正的错误报告的数目。
11.根据权利要求9所述的系统,其中所述第一存储器存取操作集合包括以下各者中的至少一者:包括写入操作和后续写入操作的第一系列操作、包括另一写入操作和后续读取操作的第二系列操作,或包括读取操作和另一后续读取操作的第三系列操作。
12.根据权利要求9所述的系统,其中所述处理装置用以执行进一步包括以下各项的操作:
标识存储器装置的所述集合中的各自与不满足所述错误准则的相应错误数目相关联的一或多个额外的存储器装置;以及
根据非易失性存储器单元的所述交叉点阵列的与第三定时容限相关联的第三电力电平设定在所标识的一或多个额外的存储器装置中的每一者的非易失性存储器单元的所述交叉点阵列处执行第二存储器存取操作集合,其中所述第三定时容限小于所述第二定时容限;
确定在执行所述第二存储器存取操作集合期间发生的第二错误数目;
响应于确定所述第二错误数目满足所述错误准则,将所述第一质量等级或第二质量等级中的至少一者分配给所述所标识的一或多个额外的存储器装置中的每一者;以及
响应于确定所述第二错误数目不满足所述错误准则,将第三质量等级分配给所述一或多个额外的存储器装置中的每一者,其中所述第三质量等级对应于比与所述第一质量等级和所述第二质量等级相关联的装置质量高的装置。
13.根据权利要求9所述的系统,其中所述处理装置用以执行进一步包括以下各项的操作:
标识非易失性存储器单元的所述交叉点阵列的对应于所述操作定时条件的第一操作延迟定时容限设定;
在存储器装置的所述集合中的与不满足所述错误准则的相应错误数目相关联的每一存储器装置的非易失性存储器单元的所述交叉点阵列处执行第三存储器存取操作集合,其中所述第三存储器存取操作集合是根据非易失性存储器单元的所述交叉点阵列的低于所述第一操作延迟定时容限设定的第二操作延迟定时容限设定执行的;
确定在执行所述第三存储器存取操作集合期间发生的第三错误数目;
响应于确定所述第三错误数目满足所述错误准则,将所述第一质量等级或第二质量等级中的至少一者分配给所述所标识的一或多个额外的存储器装置中的每一者;以及
响应于确定所述第三错误数目不满足所述错误准则,将第三质量等级分配给所述所标识的一或多个额外的存储器装置中的每一者,其中所述第三质量等级对应于比与所述第一质量等级和所述第二质量等级相关联的装置质量高的装置。
14.根据权利要求13所述的系统,其中所述第一操作延迟定时容限设定和所述第二操作延迟定时容限设定包含写入到写入操作延迟定时容限设定、写入到读取操作延迟定时容限设定或读取到读取操作延迟定时容限设定中的至少一者。
15.根据权利要求9所述的系统,其中标识所述一或多个存储器装置包括:
确定与所述一或多个存储器装置中的每一者相关联的所述相应错误数目超过阈值数目。
16.根据权利要求9所述的系统,其中标识所述一或多个存储器装置包括:
确定与所述一或多个存储器装置中的每一者相关联的所述相应错误数目大于存储器装置的所述集合中的每一额外的存储器装置的所述错误数目。
17.一种非暂时性计算机可读存储媒体,其包括指令,所述指令在由处理装置执行时使得所述处理装置执行包括以下各项的操作:
确定与将要安装在存储器子系统处的存储器装置相关联的操作定时条件,所述存储器装置包括非易失性存储器单元的交叉点阵列,其中所述操作定时条件对应于非易失性存储器单元的所述交叉点阵列的第一操作延迟定时容限设定;
根据第二操作延迟定时容限设定在非易失性存储器单元的所述交叉点阵列处执行第一存储器存取操作集合,其中所述第二操作延迟定时容限设定低于所述第一操作延迟定时容限设定;
确定在执行所述第一存储器存取操作集合期间发生的第一错误数目;
响应于确定所述第一错误数目满足错误准则,将第一质量等级分配给所述存储器装置;以及
响应于确定所述第一错误数目不满足所述错误准则,基于一或多个电力电平设定而针对非易失性存储器单元的所述交叉点阵列执行进一步测试。
18.根据权利要求17所述的非暂时性计算机可读存储媒体,其中所述第一操作延迟定时容限设定和所述第二操作延迟定时容限设定包含写入到写入操作延迟定时容限设定、写入到读取操作延迟定时容限设定或读取到读取操作延迟定时容限设定中的至少一者。
19.根据权利要求17所述的非暂时性计算机可读存储媒体,其中为确定在执行所述第一存储器存取操作集合期间发生的所述第一错误数目,所述处理装置用以执行包括以下各项的操作:
在执行所述第一存储器存取操作集合期间接收一或多个不可校正的错误报告;以及
计算一或多个接收到的不可校正的错误报告的数目。
20.根据权利要求17所述的非暂时性计算机可读存储媒体,其中所述第一存储器存取操作集合包括以下各者中的至少一者:包括写入操作和后续写入操作的第一系列操作、包括另一写入操作和后续读取操作的第二系列操作,或包括读取操作和另一后续读取操作的第三系列操作。
CN202111294668.8A 2020-11-03 2021-11-03 基于各种定时容限参数设定的性能度量来对存储器装置进行评级 Pending CN114446379A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/088,280 2020-11-03
US17/088,280 US20220137854A1 (en) 2020-11-03 2020-11-03 Rating memory devices based on performance metrics for various timing margin parameter settings

Publications (1)

Publication Number Publication Date
CN114446379A true CN114446379A (zh) 2022-05-06

Family

ID=81362711

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111294668.8A Pending CN114446379A (zh) 2020-11-03 2021-11-03 基于各种定时容限参数设定的性能度量来对存储器装置进行评级

Country Status (2)

Country Link
US (1) US20220137854A1 (zh)
CN (1) CN114446379A (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230205302A1 (en) * 2021-12-28 2023-06-29 Seagate Technology Llc Electronic device power consumption grading

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8862953B2 (en) * 2013-01-04 2014-10-14 International Business Machines Corporation Memory testing with selective use of an error correction code decoder
US9594615B2 (en) * 2014-09-30 2017-03-14 Apple Inc. Estimating flash quality using selective error emphasis

Also Published As

Publication number Publication date
US20220137854A1 (en) 2022-05-05

Similar Documents

Publication Publication Date Title
US11682446B2 (en) Selective wordline scans based on a data state metric
CN113168875A (zh) 读取干扰扫描合并
US11762767B2 (en) Storing highly read data at low impact read disturb pages of a memory device
US11810627B2 (en) Selective read disturb sampling
WO2023028347A1 (en) Monitoring memory device health according to data storage metrics
WO2023034459A1 (en) Optimized seasoning trim values based on form factors in memory sub-system manufacturing
CN116168753A (zh) 存储器装置缺陷扫描
US11994945B2 (en) Managing write disturb for units of memory in a memory sub-system
CN113096712A (zh) 存储器子系统中的选择栅极维护
CN112346901A (zh) 具有时变错误率的存储器中的抢先式读取刷新
CN114446379A (zh) 基于各种定时容限参数设定的性能度量来对存储器装置进行评级
US11709732B2 (en) Mitigating read disturb effects in memory devices
US20240071528A1 (en) Managing defective blocks during multi-plane programming operations in memory devices
Swami et al. E3R: Energy efficient error recovery for multi/triple-level cell non-volatile memories
US11861225B2 (en) Management unit based media management operations in memory devices
US20240062834A1 (en) Adaptive integrity scan in a memory sub-system
US20240062835A1 (en) Adaptive integrity scan rates in a memory sub-system based on block health metrics
US20240069776A1 (en) Super block management for efficient utilization
US11790998B2 (en) Eliminating write disturb for system metadata in a memory sub-system
US12007838B2 (en) Accessing data using error correction operation(s) to reduce latency at a memory sub-system
US11929138B2 (en) Recovery management of retired super management units
US20230186995A1 (en) Performing data integrity checks to identify defective wordlines
US20230197163A1 (en) Concurrent programming of retired wordline cells with dummy data
US20220398022A1 (en) Deck based media management operations in memory devices
CN114077405A (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