CN111433754B - 先占式闲置时间读取扫描 - Google Patents

先占式闲置时间读取扫描 Download PDF

Info

Publication number
CN111433754B
CN111433754B CN201780096675.2A CN201780096675A CN111433754B CN 111433754 B CN111433754 B CN 111433754B CN 201780096675 A CN201780096675 A CN 201780096675A CN 111433754 B CN111433754 B CN 111433754B
Authority
CN
China
Prior art keywords
read
memory
read scan
memory array
scan 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.)
Active
Application number
CN201780096675.2A
Other languages
English (en)
Other versions
CN111433754A (zh
Inventor
A·马尔谢
H·桑吉迪
K·K·姆奇尔拉
M·G·米勒
S·瑞特南
约翰·张
周杰
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 CN111433754A publication Critical patent/CN111433754A/zh
Application granted granted Critical
Publication of CN111433754B publication Critical patent/CN111433754B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • G06F11/106Correcting systematically all correctable errors, i.e. scrubbing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • 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/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5642Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • 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/021Detection or location of defective auxiliary circuits, e.g. defective refresh counters in voltage or current generators
    • 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/52Protection of memory contents; Detection of errors in memory contents
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/06Sense amplifiers; Associated circuits, e.g. timing or triggering circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7211Wear leveling
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • 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
    • G11C2029/0409Online test
    • 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
    • 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/2272Latency related aspects
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5644Multilevel memory comprising counting devices

Abstract

本发明揭示用于在基于快闪的存储系统中起始及控制先占式闲置时间读取扫描的装置及技术。在实例中,存储器装置包含:NAND存储器阵列;及存储器控制器,其用以调度并起始所述存储器阵列的多个位置中的读取扫描,其中此类读取扫描在所述存储器装置的闲置(背景)状态期间先占地触发,因此缩减在所述存储器装置的活动(前景)状态中的读取及写入操作期间的主机延时。在实例中,优化技术包含:调度读取扫描操作;监测主机IO操作的活动或闲置状态;及在所述读取扫描操作经调度发生之前,在进入闲置状态时先占地起始所述读取扫描操作。在另外实例中,所述读取扫描可基于基于时间的调度、基于频率的条件或触发所述读取扫描的事件驱动条件而先占地发生。

Description

先占式闲置时间读取扫描
背景技术
存储器装置通常是提供为计算机或其它电子装置中的内部半导体集成电路。存在数个不同类型的存储器,包含易失性存储器及非易失性存储器。
易失性存储器需要电力来维持其数据,且包含随机存取存储器(RAM)、动态随机存取存储器(DRAM)或同步动态随机存取存储器(SDRAM)等。
非易失性存储器可在未供电时保留所存储数据,且包含快闪存储器、只读存储器(ROM)、电可擦除可编程ROM(EEPROM)、静态RAM(SRAM)、可擦除可编程ROM(EPROM)、电阻可变存储器(例如相变随机存取存储器(PCRAM))、电阻性随机存取存储器(RRAM)、磁阻性随机存取存储器(MRAM)或3D XPointTM存储器等。
快闪存储器是作为非易失性存储器用于广泛范围的电子应用。快闪存储器装置通常包含允许高存储器密度、高可靠性及低电力消耗的单晶体管、浮动栅极或电荷俘获存储器单元的一或多个群组。
两种常见类型的快闪存储器阵列架构包含以每一者的基本存储器单元配置布置成的逻辑形式命名的NAND及NOR架构。存储器阵列的存储器单元通常布置成矩阵。在实例中,阵列的行中的每一浮动栅极存储器单元的栅极耦合到存取线(例如,字线)。在NOR架构中,阵列的列中的每一存储器单元的漏极耦合到数据线(例如,位线)。在NAND架构中,阵列的串中的每一存储器单元的漏极串联、源极到漏极耦合在一起,耦合于源极线与位线之间。
NOR及NAND架构半导体存储器阵列两者是通过解码器存取,所述解码器通过选择耦合到特定存储器单元的栅极的字线而激活特定存储器单元。在NOR架构半导体存储器阵列中,一旦经激活,所选择的存储器单元便可将其数据值放置于位线上,从而取决于编程特定单元的状态而引起不同电流流动。在NAND架构半导体存储器阵列中,高偏压电压经施加到漏极侧选择栅极(SGD)线。耦合到每一群组的未经选择的存储器单元的栅极的字线是以指定通过电压(例如,Vpass)驱动以将每一群组的所述未经选择的存储器单元作为传递晶体管操作(例如,以不受其存储的数据值限制的方式传递电流)。电流接着通过仅由每一群组的所选择的存储器单元限制的每一串联耦合群组而从源极线流动到位线,以将所选择的存储器单元的经电流编码数据值放置于位线上。
NOR或NAND架构半导体存储器阵列中的每一快闪存储器单元可经个别或共同地编程到一个或数个编程状态。例如,单电平单元(SLC)可表示两个编程状态(例如,1或0)中的一者(表示一个数据位)。
然而,快闪存储器单元还可表示两个以上编程状态中的一者,从而允许在不增加存储器单元的数目的情况下制造较高密度存储器,因为每一单元可表示一个以上二进制数(例如,一个以上位)。此类单元可被称为多状态存储器单元、多数字单元或多电平单元(MLC)。在某些实例中,MLC可指代每单元可存储两个数据位(例如,四个编程状态中的一者)的存储器单元,三电平单元(TLC)可指代每单元可存储三个数据位(例如,八个编程状态中的一者)的存储器单元,且四电平单元(QLC)可每单元存储四个数据位。MLC在本文中以其更广泛上下文使用以可指代每单元可存储一个以上数据位(即,可表示两个以上编程状态)的任何存储器单元。
传统存储器阵列是布置于半导体衬底的表面上的二维(2D)结构。为针对给定区域增加存储器容量并降低成本,已减小个别存储器单元的大小。然而,对于减小个别存储器单元的大小及因此2D存储器阵列的存储器密度存在技术限制。作为响应,正开发三维(3D)存储器结构(例如3D NAND架构半导体存储器装置)以进一步增加存储器密度及降低存储器成本。
此类3D NAND装置通常包含串联(例如,漏极到源极)耦合于接近源极的一或多个源极侧选择栅极(SGS)与接近位线的一或多个漏极侧选择栅极(SGD)之间的存储单元串。在实例中,所述SGS或SGD可包含一或多个场效晶体管(FET)或金属氧化物半导体(MOS)结构装置等。在一些实例中,所述串将垂直延伸通过含有相应字线的多个垂直间隔层。半导体结构(例如,多晶硅结构)可邻近一串存储单元延伸以形成用于所述串的所述存储单元的沟道。在垂直串的实例中,所述多晶硅结构可呈垂直延伸柱的形式。在一些实例中,所述串可经“折叠”,且因此相对于U形柱布置。在其它实例中,多个垂直结构可堆叠于彼此之上以形成存储单元串的堆叠阵列。
存储器阵列或装置可组合在一起以形成存储器系统的存储体,例如固态驱动(SSD)、通用快闪存储(UFSTM)装置、多媒体卡(MMC)固态存储装置、嵌入式MMC装置(eMMCTM)等。SSD尤其可用作在例如性能、大小、重量、耐久性、操作温度范围及电力消耗方面具有优于具有移动零件的传统硬驱动的优点的计算机的主存储装置。例如,SSD可具有与磁盘驱动相关联的缩减的搜索时间、延时或其它延迟(例如,机电延迟等)。SSD使用非易失性存储器单元(例如快闪存储器单元)以消除内部电池供应要求,从而允许驱动更通用及紧致。
SSD可包含数个存储器装置(包含数个裸片或逻辑单元(例如,逻辑单元号或LUN)),且可包含执行操作所述存储器装置或与外部系统介接所需的逻辑功能的一或多个处理器或其它控制器。此类SSD可包含一或多个快闪存储器裸片,其包含数个存储器阵列及其上的外围电路系统。所述快闪存储器阵列可包含组织成数个物理页的数个存储器单元块。在许多实例中,SSD还将包含DRAM或SRAM(或其它形式的存储器裸片或其它存储器结构)。SSD可从主机接收与存储器操作相关联的命令,所述存储器操作例如在存储器装置与主机之间传送数据(例如,用户数据及相关联完整性数据,例如错误数据及地址数据等)的读取或写入操作,或从存储器装置擦除数据的擦除操作。
在基于NAND快闪的存储系统中,成功地执行读取操作所需的读取电压阈值(Vt)持续经受偏移。这些偏移可归因于NAND快闪上的众所周知的应力(例如读取干扰、数据保留、交叉温度效应以及其它条件)而发生。此外,存储器阵列内的不同NAND块可经历引发变化量的电荷损失或电荷增益的变化量的应力;同样地,存储器阵列的不同NAND块常常在不同温度下写入及读取。因此,NAND Vt与存储系统实际使用的读取电压之间的失配在许多案例中发生,且用于读取电压校准的技术由NAND存储系统用于根据NAND Vt调整读取电压。
用于跟踪NAND健康及对应Vt变化的现有方法包含跟踪原始位错误率(RBER)趋势,例如从通过读取扫描读取NAND块中的页而确定的RBER趋势。执行读取扫描的目的是提供实时NAND RBER反馈,使得系统可最佳校准NAND读取电压以最小化错误处置触发率,或起始先占式行动以缓解由NAND块中的各种应力因素引发的数据完整性风险。然而,执行读取扫描常常对存储系统强加性能额外开销,且增加主机命令延时。
附图说明
在不一定按比例绘制的图式中,相同数字可描述不同视图中的类似组件。具有不同字母后缀的相同数字可表示类似组件的不同例子。所述图式通常通过实例而非通过限制说明本文档中所论述的各个实施例。
图1说明包含存储器装置的环境的实例。
图2到3说明3D NAND架构半导体存储器阵列的实例的示意图。
图4说明存储器模块的实例框图。
图5说明包含适于实施先占式闲置时间读取扫描操作的存储器装置的实例系统的框图。
图6A说明实施用于存储器装置中的先占式闲置时间读取扫描操作的基于时间的条件触发的实例读取扫描触发准则的时间线。
图6B说明实施用于存储器装置中的先占式闲置时间读取扫描操作的基于事件的条件触发的实例读取扫描触发准则的时间线。
图7说明适于在存储器装置中执行先占式闲置时间读取扫描操作的一组实例操作的流程图。
图8是说明其上可实施一或多个实施例的机器的实例的框图。
具体实施方式
本文中所论述的系统、过程及配置涉及用于在NAND存储器装置中触发及执行先占式闲置时间读取扫描的优化技术。明确来说,揭示使用基于窗的准则来代替绝对准则以在主机读取/写入驱动活动的闲置状态期间可应用时先占地触发读取扫描的实例技术。在此类闲置状态期间执行读取扫描可减小读取扫描对主机读取/写入性能的影响。此外,揭示使基于窗的触发准则能够响应于时间触发、基于频率的触发或基于事件的触发而使用的实例技术。又进一步,先占式读取扫描触发可用于为存储器系统提供在闲置状态期间在背景中执行额外维护任务的机会,因此减轻在前景中进行此类维护任务的主机IO性能影响。
电子装置(例如移动电子装置(例如,智能电话、平板计算机等)、用于汽车应用中的电子装置(例如,汽车传感器、控制单元、驾驶辅助系统、乘客安全或舒适系统等),及因特网连接设备或装置(例如,物联网(IoT)装置等))尤其取决于电子装置的类型、使用环境、性能预期等以及其它方面而具有变化存储需求。
电子装置可分成若干主要组件:处理器(例如,中央处理单元(CPU)或其它主处理器);存储器(例如,一或多个易失性或非易失性随机存取存储器(RAM)存储器装置,例如动态RAM(DRAM)、移动或低功率双倍数据速率同步DRAM(DDR SDRAM)等);及存储装置(例如,非易失性存储器(NVM)装置,例如快闪存储器、只读存储器(ROM)、SSD、MMC或其它存储器卡结构或组合件等)。在某些实例中,电子装置可包含用户接口(例如,显示器、触摸屏、键盘、一或多个按钮等)、图形处理单元(GPU)、电力管理电路、基带处理器或一或多个收发器电路等。
图1说明包含经配置以经由通信接口通信的主机装置105及存储器装置110的环境100的实例。主机装置105或存储器装置110可包含于各种产品150(例如物联网(IoT)装置(例如,冰箱或其它设备、传感器、电动机或致动器、移动通信装置、汽车、无人机等))中以支持产品150的处理、通信或控制。
存储器装置110包含存储器控制器115及(例如)包含数个个别存储器裸片(例如,三维(3D)NAND裸片的堆叠)的存储器阵列120。在3D架构半导体存储器技术中,垂直结构经堆叠,从而增加层、物理页的数目且相应地增加存储器装置(例如,存储装置)的密度。在实例中,存储器装置110可为离散存储器或主机装置105的存储装置组件。在其它实例中,存储器装置110可为与主机装置105的一或多个其它组件堆叠或以其它方式一起包含的集成电路的一部分(例如,芯片上系统(SOC)等)。
一或多个通信接口可用于在存储器装置110与主机装置105的一或多个其它组件之间传送数据,例如串行高级附接技术(SATA)接口、外围组件互连高速(PCIe)接口、通用串行总线(USB)接口、通用快闪存储(UFS)接口、eMMCTM接口,或一或多个其它连接器或接口。主机装置105可包含主机系统、电子装置、处理器、存储器卡读取器,或在存储器装置110外部的一或多个其它电子装置。在一些实例中,主机105可为具有参考图8的机器800所论述的组件的某部分或全部的机器。
存储器控制器115可从主机105接收指令,且可与存储器阵列通信(例如)以传送(例如,写入或擦除)数据到存储器阵列的存储器单元、平面、子块、块或页中的一或多者或从存储器阵列的存储器单元、平面、子块、块或页中的一或多者传送(例如,读取)数据。存储器控制器115可尤其包含电路系统或固件(包含一或多个组件或集成电路)。例如,存储器控制器115可包含经配置以控制跨存储器阵列120的存取及提供主机105与存储器装置110之间的转译层的一或多个存储器控制单元、电路或组件。存储器控制器115可包含一或多个输入/输出(I/O)电路、线或接口以传送数据到存储器阵列120或从存储器阵列120传送数据。存储器控制器115可包含存储器管理器125及阵列控制器135。
存储器管理器125可尤其包含电路系统或固件,例如与各种存储器管理功能相关联的数个组件或集成电路。出于本发明描述的目的,实例存储器操作及管理功能将在NAND存储器的上下文中描述。所属领域的技术人员将认知,其它形式的非易失性存储器可具有类似存储器操作或管理功能。此类NAND管理功能包含损耗平衡(例如,废弃项目收集或回收)、错误检测或校正、块引退(retirement),或一或多个其它存储器管理功能。存储器管理器125可将主机命令(例如,从主机接收的命令)剖析或格式化成装置命令(例如,与存储器阵列的操作相关联的命令等),或产生用于阵列控制器135或存储器装置110的一或多个其它组件的装置命令(例如,以完成各种存储器管理功能)。
存储器管理器125可包含经配置以维持与存储器装置110的一或多个组件相关联的各种信息(例如,与耦合到存储器控制器115的存储器阵列或一或多个存储器单元相关联的各种信息)的一组管理表130。例如,管理表130可包含关于耦合到存储器控制器115的存储器单元的一或多个块的块年限、块擦除计数、错误历史或一或多个错误计数(例如,写入操作错误计数、读取位错误计数、读取操作错误计数、擦除错误计数等)的信息。在某些实例中,如果错误计数中的一或多者的经检测错误的数目高于阈值,那么位错误可被称为不可校正位错误。管理表130尤其可维持可校正或不可校正位错误的计数。
阵列控制器135可尤其包含经配置以控制与将数据写入到耦合到存储器控制器115的存储器装置110的一或多个存储器单元、从所述一或多个存储器单元读取数据或擦除所述一或多个存储器单元相关联的存储器操作的电路系统或组件。所述存储器操作可基于(例如)从主机105接收或在内部由存储器管理器125产生(例如,与损耗平衡、错误检测或校正等相关联)的主机命令。
阵列控制器135可包含错误校正码(ECC)组件140,ECC组件140可尤其包含经配置以检测或校正与将数据写入到耦合到存储器控制器115的存储器装置110的一或多个存储器单元或从所述一或多个存储器单元读取数据相关联的错误的ECC引擎或其它电路系统。存储器控制器115可经配置以主动地检测与数据的各种操作或存储相关联的错误发生(例如,位错误、操作错误等)及从所述错误发生恢复,同时维持在主机105与存储器装置110之间传送的数据的完整性,或维持经存储数据的完整性(例如,使用冗余RAID存储等),且可移除(例如,引退)失效存储器资源(例如,存储器单元、存储器阵列、页、块等)以防止未来错误。
存储器阵列120可包含布置成(例如)数个装置、平面、子块、块或页的若干存储器单元。作为实例,48GB TLC NAND存储器装置可包含每页18,592个数据字节(B)(16,384+2208个字节)、每块1536页、每平面548个块及每装置4个或4个以上平面。作为另一实例,32GB MLC存储器装置(每单元存储两个数据位(即,4个可编程状态))可包含每页18,592个数据字节(B)(16,384+2208个字节)、每块1024页、每平面548个块及每装置4个平面,但具有对应TLC存储器装置的一半所需写入时间及两倍编程/擦除(P/E)循环。其它实例可包含其它数目或布置。在一些实例中,存储器装置或其一部分可选择性地在SLC模式或在所要MLC模式(例如TLC、QLC等)中操作。
在操作中,数据通常以页写入到NAND存储器装置110或从NAND存储器装置110读取,且以块擦除。然而,一或多个存储器操作(例如,读取、写入、擦除等)可视需要对较大或较小群组的存储器单元执行。NAND存储器装置110的数据传送大小通常被称为页,而主机的数据传送大小通常被称为区段。
尽管数据页可包含用户数据(例如,包含数个数据区段的数据有效负载)及其对应元数据的数个字节,但所述页的大小通常仅指代用于存储所述用户数据的字节的数目。作为实例,具有4KB的页大小的数据页可包含4KB的用户数据(例如,呈现512B的区段大小的8个区段)以及对应于所述用户数据的数个字节(例如,32B、54B、224B等)的元数据,例如完整性数据(例如,错误检测或校正码数据)、地址数据(例如,逻辑地址数据等)或与用户数据相关联的其它元数据。
不同类型的存储器单元或存储器阵列120可提供不同页大小,或可需要与其相关联的不同量的元数据。例如,不同存储器装置类型可具有不同位错误率,此可导致确保所述页数据的完整性所需的不同量的元数据(例如,具有较高位错误率的存储器装置与具有较低位错误率的存储器装置相比可需要更多字节的错误校正码数据)。作为实例,多电平单元(MLC)NAND快闪装置可具有高于对应单电平单元(SLC)NAND快闪装置的位错误率。因而,与对应SLC装置相比,MLC装置可需要更多元数据字节用于错误数据。
图2说明包含组织成块(例如,块A 201A、块B 201B等)及子块(例如,子块A0 201A0、子块An 201An、子块B0 201B0、子块Bn 201Bn等)的数串存储器单元(例如,第一到第三A0存储器串205A0到207A0、第一到第三An存储器串205An到207An、第一到第三B0存储器串205B0到207B0、第一到第三Bn存储器串205Bn到207Bn等)的3D NAND架构半导体存储器阵列200的实例示意图。存储器阵列200表示通常将在存储器装置的块、装置或其它单元中找到的较大数目个类似结构的一部分。
每一存储器单元串包含沿着Z方向、源极到漏极堆叠于源极线(SRC)235或源极侧选择栅极(SGS)(例如,第一到第三A0 SGS 231A0到233A0、第一到第三An SGS 231An到233An、第一到第三B0 SGS 231B0到233B0、第一到第三Bn SGS 231Bn-233Bn,等)与漏极侧选择栅极(SGD)(例如,第一到第三A0 SGD 226A0到228A0、第一到第三An SGD 226An到228An、第一到第三B0 SGD 226B0到228B0、第一到第三Bn SGD 226Bn到228Bn等)之间的电荷存储晶体管(例如,浮动栅极晶体管、电荷俘获结构等)的数个层。3D存储器阵列中的每一串存储器单元可沿着X方向布置为数据线(例如,位线(BL)BL0到BL2 220到222),且沿着Y方向布置为物理页。
在物理页内,每一层表示存储器单元行,且每一存储器单元串表示列。子块可表示一或多个物理页。块可包含数个子块(或物理页)(例如,128个、256个、384个等)。尽管本文中说明为具有两个块,每一块具有两个子块,每一子块具有单个物理页,物理页具有三串存储器单元,且每一串具有存储器单元的8个层,但在其它实例中,存储器阵列200可包含更多或更少块、子块、物理页、存储器单元串、存储器单元或层。例如,每一串存储器单元可视需要包含更多或更少层(例如,16个、32个、64个、128个等),以及在电荷存储晶体管(例如,选择栅极、数据线等)上方或下方的一或多个额外半导体材料层。作为实例,48GB TLC NAND存储器装置可包含每页18,592个数据字节(B)(16,384+2208个字节)、每块1536页、每平面548个块及每装置4个或4个以上平面。
存储器阵列200中的每一存储器单元包含耦合到(例如,电连接到或以其它方式可操作地连接到)存取线(例如,字线(WL)WL00到WL70 210A到217A、WL01到WL71 210B到217B等)的控制栅极(CG),所述存取线视需要共同耦合跨特定层或层的一部分的控制栅极(CG)。3D存储器阵列中的特定层及相应地串中的特定存储器单元可使用相应存取线存取或控制。选择栅极群组可使用各种选择线存取。例如,第一到第三A0 SGD 226A0到228A0可使用A0SGD线SGDA0 225A0存取,第一到第三An SGD 226An到228An可使用An SGD线SGDAn 225An存取,第一到第三B0 SGD 226B0到228B0可使用B0 SGD线SGDB0 225B0存取,且第一到第三Bn SGD226Bn到228Bn可使用Bn SGD线SGDBn 225Bn存取。第一到第三A0 SGS 231A0到233A0及第一到第三An SGS 231An到233An可使用栅极选择线SGS0 230A存取,且第一到第三B0 SGS 231B0到233B0及第一到第三Bn SGS 231Bn到233Bn可使用栅极选择线SGS1 230B存取。
在实例中,存储器阵列200可包含经配置以耦合所述阵列的相应层的每一存储器单元的控制栅极(CG)或选择栅极(或CG或选择栅极的一部分)的数个半导体材料(例如,多晶硅等)层。阵列中的特定存储器单元串可使用位线(BL)及选择栅极等的组合存取、选择或控制,且在所述特定串中的一或多个层处的特定存储器单元可使用一或多个存取线(例如,字线)存取、选择或控制。
图3说明包含布置成串(例如,第一到第三串305到307)及层(例如,说明为相应字线(WL)WL0到WL7 310到317、漏极侧选择栅极(SGD)线325、源极侧选择栅极(SGS)线330等)的二维阵列的多个存储器单元302及感测放大器或装置360的NAND架构半导体存储器阵列300的一部分的实例示意图。例如,存储器阵列300可说明例如图2中所说明的3D NAND架构半导体存储器装置的存储器单元的一个物理页的一部分的实例示意图。
每一存储器单元串使用相应源极侧选择栅极(SGS)(例如,第一到第三SGS 331到333)耦合到源极线(SRC)335,且使用相应漏极侧选择栅极(SGD)(例如,第一到第三SGD 326到328)耦合到相应数据线(例如,第一到第三位线(BL)BL0到BL2 320到322)。尽管在图3的实例中经说明具有8个层(例如,使用字线(WL)WL0到WL7 310到317)及三个数据线(BL0到BL2 320到322),但其它实例可视需要包含具有更多或更少层或数据线的存储器单元串。
在NAND架构半导体存储器阵列(例如实例存储器阵列300)中,所选择的存储器单元302的状态可通过感测与含有所述所选择的存储器单元的特定数据线相关联的电流或电压变化而存取。存储器阵列300可(例如,通过控制电路、一或多个处理器、数字逻辑等)使用一或多个驱动器存取。在实例中,一或多个驱动器可通过取决于需要对特定存储器单元或存储器单元集合执行的操作的类型驱动特定电势到一或多个数据线(例如,位线BL0到BL2)、存取线(例如,字线WL0到WL7)或选择栅极而激活所述特定存储器单元或存储器单元集合。
为将数据编程或写入到存储器单元,可将编程电压(Vpgm)(例如,一或多个编程脉冲等)施加到所选择的字线(例如,WL4)且因此施加到耦合到所述所选择的字线的每一存储器单元的控制栅极(例如,耦合到WL4的存储器单元的第一到第三控制栅极(CG)341到343)。编程脉冲可(例如)以15V或接近15V开始,且在某些实例中可在每一编程脉冲施加期间增加量值。在程序电压施加到所选择的字线时,电势(例如接地电势(例如,Vss))可施加到经标定用于编程的存储器单元的数据线(例如,位线)及衬底(及因此源极与漏极之间的沟道),从而导致从所述沟道到标定存储器单元的浮动栅极的电荷转移(例如,直接注入或福勒-诺德汉(FN)穿隧等)。
相比来说,通过电压(Vpass)可施加到具有未经标定用于编程的存储器单元的一或多个字线,或禁止电压(例如,Vcc)可施加到具有未经标定用于编程的存储器单元的数据线(例如,位线)(例如)以禁止电荷从沟道转移到此类非标定存储器单元的浮动栅极。所述通过电压可(例如)取决于经施加通过电压对经标定用于编程的字线的近接性而改变。所述禁止电压可包含相对于接地电势(例如,Vss)的供应电压(Vcc),例如来自外部源或供应器(例如,电池、AC到DC转换器等)的电压。
作为实例,如果将编程电压(例如,15V或更大)施加到特定字线(例如WL4),那么可将10V的通过电压施加到一或多个其它字线(例如WL3、WL5等)以禁止编程非标定存储器单元,或保留存储于未经标定用于编程的此类存储器单元上的值。在经施加编程电压与非标定存储器单元之间的距离增加时,抑制编程非标定存储器单元所需的通过电压可减小。例如,在将15V的编程电压施加到WL4的情况下,可将10V的通过电压施加到WL3及WL5,可将8V的通过电压施加到WL2及WL6,可将7V的通过电压施加到WL1及WL7等。在其它实例中,通过电压或字线的数目等可更高或更低,或更多或更少。
耦合到数据线(例如,第一、第二或第三位线(BL0到BL2)320到322)中的一或多者的感测放大器360可通过感测特定数据线上的电压或电流而检测相应数据线中的每一存储器单元的状态。
在施加一或多个编程脉冲(例如,Vpgm)之间,可执行验证操作以确定所选择的存储器单元是否已达到其预期编程状态。如果所述所选择的存储器单元已达到其预期编程状态,那么其可被禁止进一步编程。如果所述所选择的存储器单元尚未达到其预期编程状态,那么可施加额外编程脉冲。如果所选择的存储器单元在特定数目个(例如,最大数目)编程脉冲之后未达到其预期编程状态,那么所选择的存储器单元或与此所选择的存储器单元相关联的串、块或页可经标记为有缺陷。
为擦除存储器单元或一群组的存储器单元(例如,通常以块或子块执行擦除),可将擦除电压(Vers)(例如,通常为Vpgm)施加到经标定用于擦除的存储器单元的衬底(及因此源极与漏极之间的沟道)(例如,使用一或多个位线、选择栅极等),而使标定存储器单元的字线保持于电势(例如接地电势(例如,Vss)),从而导致自标定存储器单元的浮动栅极到沟道的电荷转移(例如,直接注入或福勒-诺德汉(FN)穿隧等)。
图4说明包含具有多个存储器单元404的存储器阵列402及用以提供与存储器阵列402的通信或对存储器阵列402执行一或多个存储器操作的一或多个电路或组件的存储器装置400的实例框图。存储器装置400可包含行解码器412、列解码器414、感测放大器420、页缓冲器422、选择器424、输入/输出(I/O)电路426及存储器控制单元430。
存储器阵列402的存储器单元404可布置成块(例如第一块402A及第二块402B)。每一块可包含子块。例如,第一块402A可包含第一子块402A0及第二子块402An,且第二块402B可包含第一子块402B0及第二子块402Bn。每一子块可包含数个物理页,每一页包含数个存储器单元404。尽管本文中说明为具有两个块,每一块具有两个子块,且每一子块具有数个存储器单元404,但在其它实例中,存储器阵列402可包含更多或更少块、子块、存储器单元等。在其它实例中,存储器单元404可布置成数个行、列、页、子块、块等,且使用(例如)存取线406、第一数据线410或一或多个选择栅极、源极线等存取。
存储器控制单元430可根据在控制线432上接收的一或多个信号或指令(例如,包含指示所要操作(例如,写入、读取、擦除等)的一或多个时钟信号或控制信号)或在一或多个地址线416上接收的地址信号(A0到AX)来控制存储器装置400的存储器操作。在存储器装置400外部的一或多个装置可控制控制线432上的控制信号的值或地址线416上的地址信号。在存储器装置400外部的装置的实例可包含(但不限于)图4中未说明的主机、存储器控制器、处理器或一或多个电路或组件。
存储器装置400可使用存取线406及第一数据线410以将数据传送(例如,写入或擦除)到存储器单元404中的一或多者或从存储器单元404中的一或多者传送(例如,读取)数据。行解码器412及列解码器414可从地址线416接收及解码地址信号(A0到AX),可确定应存取的存储器单元404,且可提供信号到例如上文所描述的存取线406(例如,多个字线(WL0到WLm)中的一或多者)或第一数据线410(例如,多个位线(BL0到BLn)中的一或多者)中的一或多者。
存储器装置400可包含经配置以使用第一数据线410确定存储器单元404上的数据的值(例如,读取)或确定写入到存储器单元404的数据的值的感测电路系统(例如感测放大器420)。例如,在存储器单元404的所选择的串中,感测放大器420中的一或多者可响应于在存储器阵列402中流动通过所述所选择的串到数据线410的读取电流而读取所选择的存储器单元404中的逻辑电平。
在存储器装置400外部的一或多个装置可使用I/O线(DQ0到DQN)408、地址线416(A0到AX)或控制线432与存储器装置400通信。输入/输出(I/O)电路426可使用I/O线408根据(例如)控制线432及地址线416将数据值传送于存储器装置400中或从存储器装置400传送出数据值(例如传送于页缓冲器422或存储器阵列402中或从页缓冲器422或存储器阵列402传送出)。页缓冲器422可在将从存储器装置400外部的一或多个装置接收的数据编程到存储器阵列402的相关部分中之前存储所述数据,或可在将从存储器阵列402读取的数据传输到存储器装置400外部的一或多个装置之前存储所述数据。
列解码器414可接收地址信号(A0到AX)并将其解码成一或多个列选择信号(CSEL1到CSELn)。选择器424(例如,选择电路)可接收所述列选择信号(CSEL1到CSELn)且选择页缓冲器422中的表示将从存储器单元404读取或编程到存储器单元404中的数据的值的数据。所选择的数据可使用第二数据线418在页缓冲器422与I/O电路426之间传送。
存储器控制单元430可从外部源或供应器(例如,内部或外部电池、AC到DC转换器等)接收正及负供应信号,例如供应电压(Vcc)434及负供应电压(Vss)436(例如,接地电势)。在某些实例中,存储器控制单元430可包含在内部提供正或负供应信号的调节器428。
以下技术及配置提供针对读取扫描优化的方面在NAND存储器装置内实施的技术,包含调度、触发及控制此类读取扫描操作。本文中所论述的技术及配置可特定应用于基于3D NAND快闪的存储系统,例如体现上文所论述的3D NAND架构特征的系统。然而,将明白,所揭示的读取扫描优化技术及配置还可应用于其它形式的NAND快闪装置(包含其中NAND快闪装置的组件以其它外观尺寸或布置应用)。
在基于NAND快闪的存储系统中,NAND存储器阵列包含经历不同量的电荷损失及电荷增益的各种块,及在不同温度下编程(写入)的各种块。因此,用以读取存储器阵列的任何特定块或区域的Vt可从存储器阵列的另一块或另一区域改变。此外,用于存储器的特定块或区域的Vt归因于应力而持续经受偏移,且因此Vt可在任一方向上偏移。
读取干扰是在NAND快闪装置上发生的影响Vt的应力的实例。在主机或应用程序从快闪装置检索特定数据时,如果所述主机利用数据的特别高读取速率或读取密集型应用程序(取决于数据如何分散于快闪装置内),那么读取干扰应力可增大。例如,如果逻辑块地址(LBA)映像到NAND块的特定物理位置,那么由于所述块内的偏压条件,在未经选择的字线上可引发引起存储器单元的Vt偏移的应力。
交叉温度效应是在NAND快闪装置上发生的影响Vt的应力的另一实例。交叉温度效应引起NAND块中的单元Vt由于写入时间与读取时间之间的温度差而向右或向左偏移。例如,在将数据写入到NAND快闪装置(例如,SSD驱动,或SD/MMC卡)时,读取所述数据所需的Vt是基于在写入所述数据时的环境温度。然而,因为数据可保持驻留于快闪装置上达长时间段,所以快闪装置不太可能在相同温度下读取。
用于读取块的读取电压与用于特定块的Vt之间的失配将导致数据错误。数据错误的一个表示(不良位计数)可在NAND存储系统中作为“原始位错误率”(RBER)测量。因此,RBER提供读取电压与Vt之间的失配的函数。因此,在许多现有基于NAND快闪的存储系统的操作中,RBER提供测量以确定读取电压是否不正确,及是否应进行电压校准。
如由RBER的趋势或测量指示的NAND健康可通过从NAND存储器阵列的各种块读取页进行跟踪。用于读取页的此技术通常被称为“读取扫描”,且涉及跨NAND块在不同读取电压下读取一组随机或经确定的经取样页或字线。在现有存储器装置中,读取扫描可从同步事件以常规节奏触发以跟踪时间相依应力效应(例如数据保留);或读取扫描可基于块使用或来自异步事件的主机工作负载模式而触发(例如在读取干扰的情况下)。
读取扫描的主要目的是提供实时NAND RBER反馈,使得存储器装置确定何时校准NAND读取电压以最小化错误处置触发率,或何时起始先占式行动以缓解由NAND块中的各种应力因素引发的数据完整性风险。通过现有形式的读取扫描过程,在不同读取电压下取样RBER影响主机性能且增加命令延时。因此,通过现有形式的读取扫描过程使用的取样通常以足够慢速率执行使得不会影响主机性能。
本文中论述用以通过与经调度条件(例如基于时间窗、基于频率或基于事件的条件)协调以在主机IO闲置时间期间先占地触发读取扫描而改进系统性能的技术及配置。此为存储器系统提供基于经调度条件的绝对触发减少前景中的主机IO争用且因此在基准工作负载及典型用户工作负载下改进性能及缩减主机操作的延时的机会。
本文中所论述的技术包含使用基于窗的准则代替绝对准则以在存储器装置活动的闲置周期中先占地触发读取扫描。特定来说,移动装置及消费性SSD中所使用的存储器装置通常经历通过允许存储器系统固件执行背景任务(例如读取扫描)的频繁主机闲置时间特性化的突发性工作负载。本文中所论述的读取扫描管理技术允许存储器装置固件在主机闲置事件期间主动地执行读取扫描并减小对主机性能的影响。
在本文中所论述的实例中,基于窗的准则可应用于时间触发、频域触发或基于事件的触发以允许响应于存储器装置的同步及异步事件的部署。当满足基于窗的触发准则时,存储器装置在下一主机闲置状态期间起始对经取样NAND块的读取扫描作为背景任务。读取扫描接着可具有在原本将发生开始读取扫描的经调度条件之前以先占方式在发生闲置状态之后完成的机会。
此先占式读取扫描为存储器装置提供在主机闲置时间期间在背景中执行数据完整性特定维护任务的机会,借此缓解在前景中运行的主机IO性能影响。因此,可最小化在前景中的主机IO存取与读取扫描之间的冲突或争用。又因此,存储器装置可利用经识别的主机闲置时间以按优化或优先化方式进行读取扫描及其它背景任务,以针对移动装置及消费性SSD的典型使用提供改进的主机IO性能及延时。此方法与一些移动装置及消费性SSD中发现的各种低功率要求互补,所述低功率要求通常会对存储器装置强加趋于限制背景闲置时间的可用性的积极的电力管理策略。
本文中所论述的技术还可用于主动地隐藏由背景主机闲置时间中的读取扫描所引起的延时。所述技术还有助于最小化与前景中的主机IO的读取扫描相关冲突,借此改进性能并缩减用于存储器装置读取/写入操作的延时额外开销。此外,所述技术提供用于基准工作负载的更佳性能及延时一致性,以及用于运用频繁主机闲置时间特性化的典型用户工作负载的优化。从以下实例配置及实施方案将明白这些及其它技术优点。
图5提供包含适于实施本文中所论述的读取扫描优化技术的具有含控制模块542的存储器控制器540的存储器装置510(例如,SSD存储装置、SD/MMC卡等)的实例系统500的框图。在实例中,控制模块542的功能性可实施于存储器控制器540的固件中的相应模块中。然而,将理解,控制器540可利用各种形式的软件、固件及硬件以实施控制模块542及本文中所论述的其它技术。
如所展示,存储器装置510包含具有多个裸片(裸片1到N)的NAND存储器阵列530,其中每一裸片包含一或多个块(块1到N)。所述一或多个块中的每一者可包含进一步划分的部分,例如每块一或多个字线(未展示);且所述一或多个字线中的每一者可取决于所述字线的存储器单元经配置以存储的数据状态的数目而进一步包括每字线一或多页(未展示)。
在实例中,存储器阵列530的存储器单元的块包含以下至少一者的群组:单电平单元(SLC)、多层单元(MLC)、三层单元(TLC)或四层单元(QLC)NAND存储器单元。此外,在实例中,存储器阵列530是布置成三维(3D)NAND裸片的堆叠,使得拥有相应块的多个块的相应群组是由3D NAND裸片的堆叠中的相应裸片提供的块群组的成员。为简洁起见,在图5中未说明存储器阵列530的这些配置及进一步详细组件。然而,存储器阵列530可并入有这些或上文参考3D NAND架构装置或其它形式的NAND存储装置的特征所描述的特征中的任一者。
存储器装置510经展示为经由控制器540可操作地耦合到主机520。控制器540经调适以接收及处理主机IO命令525(例如读取操作、写入操作、擦除操作及类似物)以读取、写入、擦除及管理存储于存储器装置530内的数据。为简洁起见,也未描绘存储器装置510的各种其它组件(例如存储器管理器,及其它电路系统或操作组件)及控制器540的各种其它组件。
控制器540经描绘为包含存储器544(例如,易失性存储器)、处理电路系统546(例如,微处理器)及存储媒体548(例如,非易失性存储器),用于执行指令(例如,由存储媒体548所拥有、加载到存储器544中及由处理电路系统546执行的指令)以实施控制模块542以用于管理及使用存储器阵列530。由控制模块542提供的功能性可包含(但不限于):IO操作监测550(例如,监测源自于主机命令的读取及写入IO操作);主机操作处理555(例如,用以解译及处理主机IO命令525,及发出进一步命令到存储器阵列530以执行相应读取、写入、擦除或其它主机起始的操作);读取扫描控制560(例如,用以控制存储器阵列530上的相应读取扫描操作585的时序、准则、条件及参数);读取电压控制570(例如,用以建立、设置及利用读取电压电平以读取存储器阵列530的特定部分);读取电平校准580(例如,用以操作校准程序以识别存储器阵列530的一或若干特定部分的新读取电压电平;及错误检测处理590(例如,用以识别及校正来自读取操作中所获得的数据的错误,识别用于特定读取操作或操作集合的一或多个RBER等)。
在实例中,主机操作处理555是用于解译及处理主机IO命令525(例如,读取及写入命令)并起始控制器540及存储器阵列530中的随附命令以完成主机IO命令525。此外,响应于主机IO命令525及IO操作监测550及错误检测处理590,主机操作处理555可协调读取扫描控制560的时序、条件及参数。
在实例中,IO操作监测550操作以跟踪由主机IO命令起始的对存储器阵列的读取及写入。IO操作监测550还操作以跟踪随附IO操作及状态,例如主机IO主动或非活动状态(例如,其中活动状态对应于控制器540及存储器阵列530主动地执行自主机520起始的读取或写入IO操作的状态,且其中非活动状态对应于未执行从主机520起始的此类IO操作)。IO操作监测550还可结合确定用于如本文中所论述的读取扫描控制560的参数而监测伴随从主机520起始的IO操作发生的电压电平及读取错误率的方面。
在实例中,读取扫描控制560操作以例如基于IO条件(例如,通过IO操作监测550指示)或错误条件(例如,通过错误检测处理590指示)识别存储器阵列530及控制器540中用于调度及进行读取扫描操作585的参数。读取扫描控制560进一步定义一或多个经调度条件及一或多个触发窗以用于调度读取扫描操作585及在所述触发窗期间先占地开始读取扫描操作585。读取扫描控制560进一步操作以通过如下文参考图6A及6B所说明及论述的同步或异步事件处理基于这些或其它参数起始及执行读取扫描操作585。
在实例中,读取电压控制570是用于建立、改变及提供用于读取存储器的特定区域(例如存储器阵列530中的相应块)的电压值。例如,读取电压控制570可实施各种正或负位移以读取相应存储器单元及包含所述相应存储器单元的存储器位置(例如,页、块、裸片)。
在实例中,读取电平校准580是用于建立(例如,改变、更新、复位等)通过读取电压控制570实施的读取电压的值。读取电平校准580可通过对存储器阵列530执行的多个取样命令而实施,例如在变化电压下发出到存储器阵列的多个区域的取样命令(其尝试确定优化到所述区域的Vt的读取电压)。读取电平校准580可结合主机操作处理555、读取扫描控制560或错误检测处理590的特征而操作。例如,主机操作处理555可基于对用于取样的存储器位置的IO读取操作来识别所述位置;又例如,读取扫描控制560可响应于各种读取扫描的增加RBER趋势而触发读取电平校准580的执行;又例如,错误检测处理590可响应于错误的特定条件或读取数据(例如,在从块读取的数据中)的错误率超过特定阈值而触发读取电平校准580。
在实例中,错误检测处理590可检测用于存储器阵列的存储器单元、单元群组或较大区域(例如,来自块、块群组、裸片、裸片群组等的平均值或样本)的可恢复错误条件(例如,RBER值或RBER趋势)、不可恢复错误条件或其它测量或错误条件。又在实例中,错误检测处理590可操作以经由读取扫描控制560触发读取扫描的事件或条件,或凭借读取电平校准580触发或调度校准操作。
如本文中所论述,读取扫描控制560可涉及以下方面:调度并协调在经调度条件下或响应于所述经调度条件(例如,在经确定时间,响应于特定事件或发生)发生的读取扫描操作585;识别触发窗以先占地触发所述读取扫描操作;及在所述触发窗中的闲置状态期间在所述经调度条件之前先占地起始读取扫描操作。当经触发时,读取扫描操作可包含执行存储器阵列530的多个块的经取样页或字线的集合的读取;读取扫描操作还可在存储器阵列530的多个块当中运用不同读取电压执行此类读取。在实例中,读取扫描控制560操作以从存储器阵列530内随机选择多个块(例如,通过随机取样);在另一实例中,读取扫描控制560操作以基于以下各者选择特定多个块:存取的频率或新近度、数据保留的年限,或在特定位置(例如基于如通过IO操作监测550跟踪的读取操作的位置)处的读取操作的错误率(例如,RBER)。
此外,在读取扫描中通过读取扫描控制560执行的取样及读取操作可允许例如来自以下各者的规范(例如,经确定设置或计算)的配置:经取样的数据(例如,对应于页、块、块群组、裸片的数据)的大小;经取样的页的总数;块内的经取样的页数;是否对特定单元、页、块、裸片或特定类型的此类单元、页、块、裸片取样;及类似物。同样地,在读取扫描中通过读取扫描控制560执行的取样可根据特定基准、用户模型、读取存取模型或其它特性调整以匹配存储装置的真实世界实际或预期用途。
除了本文中所论述的技术之外,还可通过控制器540中的控制操作542实施维护操作的其它方面。此类操作可包含对存储器阵列530执行的废弃项目收集或回收、损耗平衡、块管理及其它形式的背景活动。此类背景活动可在由IO操作监测550检测的闲置状态期间(例如紧接在读取扫描操作之后或与所述读取扫描操作同时)触发。
图6A说明实施用于存储器装置中的先占式闲置时间读取扫描操作的基于时间的条件触发的实例读取扫描触发准则的时间线案例600A。明确来说,时间线案例600A说明从t0到t发生的事件时间线620A,如与说明从主机IO发生的读取及写入操作的IO操作时间线610相比。
如所展示,事件时间线620A包含基于同步活动的用于读取扫描操作的各种经调度触发,包含经调度条件X(在时间X发生)及经调度条件Y(在时间Y发生)。例如,可以每Y-X分钟(例如,每n秒、分钟、小时、天等)发生的规则间隔调度读取扫描操作。在时间线案例600A的描绘中,事件时间线620A可操作以确保相应读取扫描操作不迟于经调度时间X及经调度时间Y开始,此意味着相应读取扫描操作可在触发窗内早于时间X及时间Y开始。
相比来说,IO操作时间线610包含不太可能根据经定义调度发生的主机IO活动的突发。如所展示,除了其中未进行IO操作的时间周期(由空白区指定)之外,IO操作时间线610还包含数个IO操作(由相应“X”字母指定)。其中未进行IO操作的时间周期包含指示主机IO操作的闲置状态的周期640A、640B、640C。将理解,周期640A、640B、640C及时间线610、620A出于说明性目的具有简化表示,此是因为出于简洁目的在时间线案例600A中未说明其它存储器装置操作。
事件时间线620A进一步描绘用于指定执行读取扫描操作的先占式时间周期的相应先占地触发窗630A、630B。明确来说,触发窗630A开始于时间X-t且继续直到时间X;触发窗630B开始于时间Y-t且继续直到时间Y。存储器装置可监测主机IO操作的相应闲置状态,其中所述闲置状态用于在触发窗630A、630B内发生的闲置状态内起始及进行读取扫描操作。
时间线案例600A提供基于时间间隔或其它时间预调度的先占式同步化读取扫描的实施方案。例如,当利用同步化读取扫描时,用于读取扫描的绝对触发限制可设置到每N个时间单位(例如,秒、分钟、小时或天),且用于较低触发限制的基于窗的准则是N-t个时间单位,其中t可为可配置参数。在此案例中,如果主机IO闲置,那么可在背景中每N-t个时间单位触发先占式读取扫描;否则,在前景中按N个时间单位触发所述先占式读取扫描。相比来说,运用基于绝对触发的方法,读取扫描仅在X时触发(甚至在主机IO活动时)。
作为第一实例,在触发窗630A(开始于时间X-t)内,主机IO活动继续直到第一闲置周期640A。响应于主机IO变成闲置且存储器装置进入对应闲置状态,先占式读取扫描操作可开始。明确来说,原本经调度以在时间X发生(最初经调度条件)的读取扫描操作现将在第一闲置周期640A期间开始。倘若先占式读取扫描操作因为主机IO活动发生而无法在背景中在第一闲置周期640A内完成,那么先占式读取扫描操作可延迟或可继续。在实例中,先占式读取扫描操作可暂停直到在时间X继续。在另一实例中,先占式读取扫描操作可在主机IO活动继续时以低于主机IO操作的先占式继续,但接着在时间X经优先化以确保读取扫描完成。
作为第二实例,在触发窗630B(开始于时间Y-t)内,主机IO活动继续直到第二闲置周期640B。响应于主机IO变成闲置且存储器装置进入对应闲置状态,另一先占式读取扫描操作可开始。明确来说,原本经调度以在时间Y发生的此读取扫描操作现将在第二闲置周期640B期间开始。类似于上文实例,倘若先占式读取扫描操作无法在第二闲置周期640B内完成(例如,因为主机IO活动发生),那么先占式读取扫描操作可延迟或可继续。在另一实例中,当通过主机IO活动中断时,先占式读取扫描操作可延迟直到另一主机闲置时间发生(例如,在第三闲置周期640C);在另一实例中,先占式读取扫描操作可延迟不超过时间Y。
图6B说明实施用于存储器装置中的先占式闲置时间读取扫描操作的基于事件的条件触发的实例读取扫描触发准则的时间线案例600B。以类似于时间线案例600A的方式,时间线案例600B说明从t0到t发生的事件时间线620B,如与说明从主机IO发生的读取及写入操作的IO操作时间线610相比。然而,事件时间线620B包含由事件或发生触发(例如,异步活动)而非由经预先确定时间引起的经调度条件。
如所展示,事件时间线620B包含基于异步活动的读取扫描操作的各种经调度触发,包含经调度条件X(由于特定事件或发生而发生)及经调度条件Y(由于特定事件或发生而发生)。例如,读取扫描操作可经调度以在错误(例如,在块中的错误处置触发事件)的频率超过特定比率或量时、在事件计数超过经确定阈值时或在检测(例如,存储器阵列、存储器控制器,或存储器控制器的固件中的一或多个模块的)特定属性时发生。在时间线案例600B的操作中,事件时间线620B可操作以确保相应读取扫描操作不迟于经调度条件X及经调度条件Y而开始,此意味着所述读取扫描操作可在触发窗内早于经调度事件X及经调度事件Y开始。
同样相比来说,IO操作时间线610包含不太可能根据经定义调度发生的主机IO活动的突发。如所展示,IO操作时间线610包含数个IO操作及其中未进行IO操作的时间周期(周期640A、640B、640C)。事件时间线620B进一步描绘事件的异步性质,及用于指定执行读取扫描操作的先占式时间周期的不同大小的触发窗650A、650B。明确来说,触发窗650A以事件X'的发生开始且继续到事件X的发生;触发窗650B以事件Y'的发生开始且继续到事件Y的发生。应注意,归因于在存储器装置及主机IO中发生的事件的异步性质,触发窗650A小于触发窗650B。然而,存储器装置可继续监测用于在触发窗650A、650B内执行读取扫描操作的相应闲置状态。
时间线案例600B提供用于寻址读取干扰的先占式异步读取扫描的实施方案,例如其中触发事件是基于块读取计数阈值。例如,可针对触发窗设置基于窗的读取计数阈值准则,使得一旦满足针对所述阈值的下限(事件X'),存储装置便可调度读取扫描以在主机IO遇见闲置事件时(在事件X之前)先占地发生。此外,在另一实例中,窗触发准则可响应于特定事件触发(例如错误处置的程度(例如,在错误处置流程中的步骤数目))而调制。基于恢复错误所需的错误处置流程中的步骤数目或错误处置触发率,系统可调制基于时间或基于块使用情况的读取扫描准则以适于变化的媒体特性。
作为第一实例,在触发窗650A(以事件X'的发生开始)内,主机IO活动继续直到第一闲置周期640A。响应于主机IO变成闲置且存储器装置进入对应闲置状态,先占式读取扫描操作可开始。明确来说,原本经调度以在事件X的发生时(或之后)发生的读取扫描操作现将在第一闲置周期640A期间开始。倘若读取扫描操作因为主机IO活动发生而无法在背景中在第一闲置周期640A内完成,那么读取扫描操作可延迟或可继续(例如,如上文参考时间线案例600A所论述)。
作为第二实例,在触发窗650B(以事件Y'的发生开始)内,主机IO活动继续直到第二闲置周期640B。响应于主机IO变成闲置且存储器装置进入对应闲置状态,另一先占式读取扫描操作可开始。明确来说,原本经调度以在事件Y的发生时或之后发生的此读取扫描操作现将在第二闲置周期640B期间开始。应注意,归因于事件的异步性质,触发窗650B经指示为具有与触发窗650A不同的大小。因此,如所展示,额外主机闲置周期(第三闲置周期640C)可在触发窗650B内发生。第三闲置周期640C可用于开始额外背景操作以完成读取扫描操作,或执行额外经调度及协调的闲置时间任务。
与图6A及6B中所说明的技术相比,常规方法通常利用时间、频率或其它度量的单个、绝对准则以触发读取扫描操作。因此,常规方法未经优化以在背景主机闲置时间期间执行读取扫描且可导致与主机IO的较高冲突率。特定来说,读取扫描触发通常在前景中发生,此引起存储装置多路复用读取扫描操作以及主机IO业务,因此影响两种类型的操作的性能。冲突还导致服务主机IO命令的延时增加。这些问题是用本文中所论述的方法解决,所述方法提供灵活性及优化以先占地调度及开始读取扫描,且在适当情况下延迟及协调此类读取扫描。
图7说明适于在存储器装置中执行先占式闲置时间读取扫描操作的一组实例操作的流程图700。在实例中,流程图700的操作可由存储装置的控制器(例如,控制器115、540)通过软件、固件或经配置硬件中的经执行操作的组合来实施。然而,以下技术的一些或所有方面可由其它组件(例如,如由主机起始)结合其它命令、控件及编制形式而实施。
在实例中,流程图700的操作可在存储器装置中实施,所述存储器装置包括具有多个存储器单元块的群组的NAND存储器阵列,及可操作地耦合到所述存储器阵列的存储器控制器,其中所述存储器控制器经调适(例如,经配置、布置、编程)以执行相应操作。在另一实例中,流程图700的操作可在由存储器控制器或在所述存储器控制器上(或运用所述存储器控制器的模块)执行的方法中实施,所述存储器控制器控制NAND存储器阵列,所述存储器阵列具有多个存储器单元块的群组。在实例中,流程图700的操作可在装置可读存储媒体中实施,所述装置可读存储媒体提供指令以在经执行时(例如,在由存储器装置的控制器执行时)执行相应操作。
流程图700经展示为以识别存储器装置中用于调度读取扫描操作的条件开始(操作710)。这些条件可包含:建立用于读取扫描的经调度时间条件(例如,使得必须每n个时间间隔执行或尝试读取扫描);建立经调度频率或评估条件(例如,使得必须响应于n次读取发生或响应于错误率超过m而执行读取扫描);或建立基于事件的条件(例如,使得必须响应于特定经检测条件(例如存储器装置内的事件或属性)执行读取扫描)。
读取扫描调度的定义伴随着用于先占式读取扫描操作的触发窗的定义(操作720)。例如,触发窗的定义可基于经调度事件的变化、存储器装置中的条件或基于时间的窗,此在经调度条件之前。结合触发窗的定义,读取扫描操作经调度以在经调度条件发生之后发生(操作730),此与经定义触发窗的结束协调。经调度条件可为基于时间、频率或事件,如本文中的异步及同步实例中所论述。
如本文中所论述,读取扫描操作可经定义以通过在存储器阵列的多个位置处执行读取而取样所述多个位置处的数据。在另外实例中,读取扫描操作可包含跟踪错误率、错误率趋势及基于多个位置当中的读取扫描的结果的其它条件。例如,读取扫描操作可包含执行存储器阵列的多个块的经取样页或字线的集合的读取,使得在所述多个块当中运用不同读取电压执行所述读取。在又另外实例中,从NAND存储器阵列内随机选择所述多个块。
流程图700继续运用存储器装置监测主机IO操作的操作状态(操作740)。在实例中,此可包含监测存储器装置的操作状态以识别对应于从主机起始的操作的执行的活动状态,或对应于不存在从所述主机起始的操作的闲置状态。基于此监测,可在经调度条件之前在经定义触发窗内识别及检测主机IO操作的闲置状态(操作750)。
响应于存储器装置在触发窗期间进入闲置状态的操作状态,可先占地起始读取扫描操作(操作760)。因此,在触发窗内的主机IO操作的闲置状态期间,读取扫描操作可在经调度条件之前先占地发生。
流程图700以任选条件继续以暂停未完成的读取扫描操作(操作770)。读取扫描操作的暂停可在经调度条件之前(例如在闲置状态转变成主机IO操作的活动状态时)在触发窗内发生。通过此任选条件,流程图700继续等待识别主机IO操作的闲置状态(操作750),及在触发窗内闲置状态发生之后起始读取扫描操作(操作760)。
流程图700以完成读取扫描操作且执行(若干)任何额外操作(例如基于读取扫描的读取电压校准)而结束(操作780)。如果在(若干)闲置状态期间因经调度事件而未完成读取扫描操作(例如,如通过操作770暂停),那么读取扫描操作可在经调度条件发生之后完成。
最后,在其中存储器装置保持于闲置状态中的任选实例中,可在存储器装置上起始额外维护任务(例如废弃项目收集或回收、损耗平衡、块引退及类似物)(操作790)。明确来说,先占式读取扫描可为通过存储器装置在主机闲置状态期间执行的若干背景任务中的一者。在另一实例中,存储器装置的背景模块控管所述维护任务的先占式及调度方面。例如,读取扫描可在主机闲置时间期间基于触发窗先占地触发,但并不一定采用高于由所述背景模块管理的其它背景任务的先占式。因此,可通过背景模块执行协调及调度以允许维护任务在读取扫描操作之前、之后、同时进行或与读取扫描操作互补。
响应于存储器阵列在触发窗期间未进入闲置状态的操作状态,可起始读取扫描操作以不迟于经调度事件而发生。例如,考虑其中第二读取扫描操作经调度以在第二经调度条件发生之后进行的案例。所述第二读取扫描可响应于存储器在所述第二经调度条件之前未进入闲置状态的操作状态而起始,使得第二读取扫描操作响应于第二经调度条件(例如,未进行先占式调度)而起始以发生。因此,如果先占式调度不成功或不能用作触发窗内的背景操作,那么读取扫描操作可仍在前景内起始。
将理解,上文所论述的这些及其它实例实施方案提供为实例,且可伴随其它时间及操作优化以最小化闲置时间的效率及使用。此外,用于取样及触发电压校准的技术可经修改以与使用现有读取扫描触发、条件及操作整合,以提供如相较于常规读取扫描触发技术的最小或甚至零影响。
图8说明其上可执行本文中所论述的技术(例如,方法论)中的任一者或多者的实例机器800的框图。在替代性实施例中,机器800可作为独立装置操作或可连接(例如,联网)到其它机器。在联网部署中,机器800可作为主从式网络环境中的服务器机器或客户端机器或两者而操作。在实例中,机器800可充当对等(P2P)(或其它分布式)网络环境中的对等机器。机器800可为个人计算机(PC)、平板计算机PC、机顶盒(STB)、个人数字助理(PDA)、移动电话、网络设备、IoT装置、汽车系统,或能够(循序或以其它方式)执行指定由所述机器所采取的动作的指令的任何机器。此外,虽然仅说明单个机器,但术语“机器”还应被视为包含个别或联合执行一(或多个)指令集以执行本文中所论述的方法论中的任一者或多者(例如云计算、软件即服务(SaaS)、其它计算机集群配置)的机器的任何集合。
如本文中所描述,实例可包含逻辑、组件、装置、封装或机构,或可通过逻辑、组件、装置、封装或机构操作。电路系统是在包含硬件(例如,简单电路、门、逻辑等)的有形实体中实施的电路集合(例如,一组电路)。电路系统成员资格可随着时间及基础硬件可变性而灵活。电路系统包含在操作时可单独或组合地执行特定任务的成员。在实例中,电路系统的硬件可经恒定地设计以实行特定操作(例如,硬接线)。在实例中,电路系统的硬件可包含可变连接的物理组件(例如,执行单元、晶体管、简单电路等),包含物理上经修改(例如,不变质量的粒子磁性、电、可移动放置等)以编码所述特定操作的指令的计算机可读媒体。在连接物理组件中,硬件构成的基础电性质(例如)从绝缘体改变到导体或反之亦然。指令使参与硬件(例如,执行单元或负载机构)能够经由可变连接产生硬件中的电路系统的成员以在操作中实行特定任务的部分。因此,当装置操作时,计算机可读媒体通信地耦合到电路系统的其它组件。在实例中,物理组件中的任一者可用于一个以上电路系统的一个以上成员中。例如,在操作下,执行单元可在时间点用于第一电路系统的第一电路中且在不同时间由第一电路系统中的第二电路或由第二电路系统中的第三电路重用。
机器(例如,计算机系统)800(例如,主机装置105、存储器装置110等)可包含硬件处理器802(例如,中央处理单元(CPU)、图形处理单元(GPU)、硬件处理器核心或其任何组合,例如存储器控制器115等)、主存储器804及静态存储器806,其中一些或全部可经由互连(例如,总线)808彼此通信。机器800可进一步包含显示器单元810、字母数字输入装置812(例如,键盘)及用户接口(UI)导航装置814(例如,鼠标)。在实例中,显示器单元810、输入装置812及UI导航装置814可为触摸屏显示器。机器800可另外包含存储装置(例如,驱动单元)821、信号产生装置818(例如,扬声器)、网络接口装置820及一或多个传感器816(例如全球定位系统(GPS)传感器、指南针、加速度计或其它传感器)。机器800可包含输出控制器828,例如用以通信或控制一或多个外围装置(例如,打印机、读卡器等)的串行(例如,通用串行总线(USB))、并行、或其它有线或无线(例如,红外(IR)、近场通信(NFC)等)连接。
存储装置821可包含其上存储体现本文中所描述的技术或功能中的任一者或多者或由本文中所描述的技术或功能中的任一者或多者利用的一或多组数据结构或指令824(例如,软件)的机器可读媒体822。指令824还可完全或至少部分驻留于主存储器804内、静态存储器806内或在所述指令由机器800执行期间驻留于硬件处理器802内。在实例中,硬件处理器802、主存储器804、静态存储器806或存储装置821中的一者或任何组合可构成机器可读媒体822。
虽然机器可读媒体822说明为单个媒体,但术语“机器可读媒体”可包含经配置以存储一或多个指令824的单个媒体或多个媒体(例如,集中式或分布式数据库或相关联高速缓存及服务器)。
术语“机器可读媒体”可包含能够存储、编码或载送由机器800执行的指令且引起机器800执行本发明的技术中的任一者或多者,或能够存储、编码或载送使用此类指令使用或与此类指令相关联的数据结构的任何媒体。非限制性机器可读媒体实例可包含固态存储器以及光学及磁性媒体。在实例中,集结型(massed)机器可读媒体包括具有含不变(例如,静止)质量的多个粒子的机器可读媒体。因此,集结型机器可读媒体并非是暂时性传播信号。集结型机器可读媒体的特定实例可包含:非易失性存储器,例如半导体存储器装置(例如,电可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM))及快闪存储器装置;磁盘,例如内部硬盘及可抽换式磁盘;磁光盘;及CD-ROM及DVD-ROM磁盘。
指令824(例如,软件、程序、操作系统(OS)等)或其它数据经存储于存储装置821上,可由存储器804存取以供处理器802使用。存储器804(例如,DRAM)通常是快速但易失性的,且因此不同于存储装置821(例如,SSD)的存储类型,存储装置821适于长期存储(包含在“关闭”状态时)。由用户或机器800使用的指令824或数据通常加载于存储器804中以供处理器802使用。当存储器804已满时,可分配来自存储装置821的虚拟空间以补充存储器804;然而,因为存储装置821通常慢于存储器804,且写入速度通常是读取速度的至少1/2,所以使用虚拟存储器会归因于存储装置延时而大幅降低用户体验(相比于存储器804,例如,DRAM)。此外,将存储装置821用于虚拟存储器可大幅地缩减存储装置821的可用使用期限。
相比于虚拟存储器,虚拟存储器压缩(例如,核心特征“ZRAM”)使用存储器的部分作为经压缩块存储装置以避免分页到存储装置821。分页在经压缩块中发生直到必须将此数据写入到存储装置821。虚拟存储器压缩增加存储器804的可用大小,同时减少存储装置821上的损耗。
经优化用于移动电子装置或移动存储装置的存储装置通常包含MMC固态存储装置(例如,微型安全数字(microSDTM)卡等)。MMC装置包含具有主机装置的数个并行接口(例如,8位并行接口),且通常为可从所述主机装置卸除及分离的组件。相比来说,eMMCTM装置经附接到电路板且被视为主机装置的组件,所述组件具有匹敌基于串行ATATM(串行AT(高级技术)附接,或SATA)的SSD装置的读取速度。然而,对于移动装置性能的需求持续增加,例如完全启用虚拟或增强现实装置,利用增加的网络速度等。响应于此需求,存储装置已从并列通信接口转换到串行通信接口。通用快闪存储(UFS)装置(包含控制器及固件)使用具有专用读取/写入路径的低电压差分信令(LVDS)串行接口与主机装置通信,从而进一步提高更大读取/写入速度。
指令824可进一步通过通信网络826使用传输媒体经由利用数个传送协议中的任一者(例如,帧中继、因特网协议(IP)、传输控制协议(TCP)、用户数据报协议(UDP)、超文本传送协议(HTTP)等)的网络接口装置820加以发射或接收。实例通信网络可包含局域网络(LAN)、广域网(WAN)、分组数据网络(例如,因特网)、移动电话网络(例如,蜂窝网络)、简易老式电话(POTS)网络及无线数据网络(例如,电气及电子工程师协会(IEEE)802.11系列标准(称为)、IEEE 802.16系列标准(称为/>)、IEEE 802.15.4系列标准、对等(P2P)网络,等等)。在实例中,网络接口装置820可包含一或多个物理插孔(例如,以太网络、同轴或电话插孔)或一或多个天线以连接到通信网络826。在实例中,网络接口装置820可包含多个天线以使用单输入多输出(SIMO)、多输入多输出(MIMO)或多输入单输出(MISO)技术中的至少一者进行无线通信。术语“传输媒体”应被视为包含能够存储、编码或载送由机器800执行的指令的任何无形媒体,且包含促进此软件的通信的数字或模拟通信信号或其它无形媒体。
上文实施方式包含对形成实施方式的一部分的附图的参考。图式通过说明的方式展示可实践本发明的特定实施例。这些实施例在本文中还称为“实例”。此类实例可包含除所展示或所描述元件之外的元件。然而,本发明人还预期其中仅提供那些所展示或所描述元件的实例。此外,本发明人还预期使用关于特定实例(或其一或多个方面)或关于本文中所展示或所描述的其它实例(或其一或多个方面)所展示或所描述的那些元件的任何组合或排列的实例(或其一或多个方面)。
在本文档中,在专利文档中常使用术语“一(a或an)”来包含一个或一个以上,其独立于“至少一个”或“一或多个”的任何其它例子或使用。在本文档中,使用术语“或”指代非排他性“或”,使得“A或B”包含“A但非B”、“B但非A”及“A及B”,除非另有指示。在所附权利要求书中,术语“包含”及“其中(in which)”用作相应术语“包括”及“其中(wherein)”的普通英语等效形式。此外,在以下权利要求书中,术语“包含”及“包括”是开放式的,即,在权利要求中除列于此术语之后的那些元件之外还包含若干元件的系统、装置、对象、或过程仍被视为在那个权利要求的范围内。此外,在以下权利要求书中,术语“第一”、“第二”及“第三”等仅用作标签,并不希望对其对象强加数值要求。
在各个实例中,本文中所描述的组件、控制器、处理器、单元、引擎或表可尤其包含存储于物理装置上的物理电路系统或固件。如本文中所使用,“处理器”意味着任何类型的计算电路,例如(但不限于)微处理器、微控制器、图形处理器、数字信号处理器(DSP),或任何其它类型的处理器或处理电路(包含处理器群组或多核心装置)。
如此文档中所使用的术语“水平”是定义为平行于衬底的常规平面或表面的平面(例如下伏于晶片或裸片的平面),而与所述衬底在任何时间点的实际定向无关。术语“垂直”指代垂直于如上文所定义的水平的方向。介词(例如“在…上”、“在…上方”及“在…下方”)是相对于常规平面或表面定义为在衬底的顶部或经暴露表面上,而与衬底的定向无关;而“在...上”希望表明一个结构相对于所述结构位于其“上”的另一结构的直接接触(在没有明确相反指示的情况下);术语“在...上方”及“在...下方”明确地希望识别结构(或层、特征等)的相对放置,其明确地包含(但不限于)经识别结构之间的直接接触,除非明确识别。类似地,术语“在...上方”及“在...下方”不限于水平定向,由于如果在某个时间点是在所论述的结构的最外部分,那么结构可在参考结构“上方”,即使此结构相对于参考结构而垂直地延伸,而不是在水平定向上延伸。
术语“晶片”及“衬底”在本文中通常用于指代其上形成集成电路的任何结构,且也指代在集成电路制造的各个阶段期间的此类结构。因此,以下详细描述不应被视为限制意义,且各个实施例的范围仅由所附权利要求书以及此类权利要求所授权的等效物的全范围而定义。
根据本发明及本文中所描述的各个实施例包含利用存储器单元的垂直结构(例如,NAND存储器单元串)的存储器。如本文中所使用,方向性形容词将被视为相对于其上形成存储器单元的衬底的表面(即,垂直结构将被视为延伸远离衬底表面,垂直结构的底端将被视为最靠近衬底表面的端部且所述垂直结构的顶端将被视为最远离衬底表面的端部)。
如本文中所使用,方向性形容词(例如水平、垂直、法向、平行、垂直等)可指代相对定向,且除非另有说明,否则并不希望要求严格遵守特定几何性质。例如,如本文中所使用,垂直结构不需要严格地垂直于衬底的表面,但可代替性地大体上垂直于所述衬底的所述表面,且可与所述衬底的所述表面形成锐角(例如,在60度与120度之间等)。
在本文中所描述的一些实施例中,不同掺杂配置可应用于源极侧选择栅极(SGS)、控制栅极(CG)及漏极侧选择栅极(SGD),其中的每一者在此实例中可由多晶硅形成或至少包含多晶硅,结果使得这些层(例如,多晶硅等)可在暴露到蚀刻溶液时具有不同蚀刻率。例如,在3D半导体装置中形成单体柱的过程中,SGS及CG可形成凹部,而SGD可保持较少凹入或甚至未凹入。这些掺杂配置可因此通过使用蚀刻溶液(例如,氢氧化四甲基铵(TMCH))实现选择性蚀刻到所述3D半导体装置中的相异层(例如,SGS、CG及SGD)中。
如本文中所使用,操作存储器单元包含从所述存储器单元读取、写入到所述存储器单元或擦除所述存储器单元。将存储器单元放置于预期状态中的操作在本文中被称为“编程”,且可包含写入到所述存储器单元或从所述存储器单元擦除两者(例如,所述存储器单元可经编程到经擦除状态)。
根据本发明的一或多个实施例,定位于存储器装置内部或外部的存储器控制器(例如,处理器、控制器、固件等)能够确定(例如,选择、设置、调整、计算、改变、清除、通信、调适、导出、定义、利用、修改、应用等)损耗循环的数量或损耗状态(例如,记录损耗循环、计数存储器装置的操作(在其发生时)、跟踪其起始的存储器装置的操作、评估对应于损耗状态的存储器装置特性等)。
根据本发明的一或多个实施例,存储器存取装置可经配置以用每一存储器操作提供损耗循环信息到存储器装置。存储器装置控制电路系统(例如,控制逻辑)可经编程以补偿对应于损耗循环信息的存储器装置性能变化。存储器装置可接收损耗循环信息且响应于损耗循环信息确定一或多个操作参数(例如,值、特性)。
将理解,当元件被称为在另一元件“上”、“连接到”另一元件或与另一元件“耦合”时,其可直接在所述另一元件上、连接到所述另一元件或与所述另一元件耦合或可存在中介元件。相比来说,当元件被称为“直接在另一元件上”、“直接连接到”另一元件或“直接与另一元件耦合”时,不存在中介元件或层。除非另有指示,否则如果两个元件在图式中展示为用线连接它们,那么所述两个元件可耦合或直接耦合。
本文中所描述的方法实例可至少部分经机器或计算机实施。一些实例可包含用可操作以配置电子装置以执行如上文实例中所描述的方法的指令编码的计算机可读媒体或机器可读媒体。此类方法的实施方案可包含代码,例如伪代码、汇编语言代码、高级语言代码或类似物。此代码可包含用于执行各种方法的计算机可读指令。所述代码可形成计算机程序产品的部分。此外,代码可有形地存储于一或多个易失性或非易失性有形计算机可读媒体上(例如在执行期间或在其它时间)。这些有形计算机可读媒体的实例可包含(但不限于):硬盘、可卸除式磁盘、可卸除式光学磁盘(例如,光盘及数字视频磁盘)、卡式磁带、存储器卡或棒、随机存取存储器(RAM)、只读存储器(ROM)、固态磁盘驱动(SSD)、通用快闪存储(UFS)装置、嵌入式MMC(eMMC)装置及类似物。
根据上文所描述及以下实例及权利要求书中所指定的结构及技术建议当前描述的实施例的额外实例。
实例1是一种存储器装置,其包括:NAND存储器阵列;及存储器控制器,其可操作地耦合到所述存储器阵列,所述存储器控制器用以执行包括以下各者的操作:调度对所述存储器阵列的读取扫描操作以在经调度条件之后发生,其中所述读取扫描操作用以通过在所述存储器阵列的多个位置处执行读取而取样所述多个位置处的数据;监测所述存储器阵列的操作状态,所述存储器阵列的所述操作状态包含对应于执行从主机起始的操作的活动状态,及对应于不存在从所述主机起始的操作的闲置状态;及响应于所述存储器阵列进入所述闲置状态的操作状态而起始所述读取扫描操作,其中所述读取扫描操作经起始以在所述经调度条件之前先占地发生。
在实例2中,实例1的主题包含,所述读取扫描操作执行所述存储器阵列的多个块的经取样页或字线的集合的读取,其中在所述多个块当中运用不同读取电压执行所述读取。
在实例3中,实例2的主题包含,所述多个块从所述NAND存储器阵列内随机选择。
在实例4中,实例1到3的主题包含:调度对所述存储器阵列的第二读取扫描操作以在第二经调度条件之后进行;及响应于所述存储器阵列在所述第二经调度条件之前未进入闲置状态的操作状态而起始所述第二读取扫描操作,其中所述第二读取扫描操作经起始以在所述第二经调度条件之后发生。
在实例5中,实例1到4的主题包含,所述经调度条件是从经调度时间间隔确定的时间,其中所述读取扫描操作的所述起始在所述经调度条件之前在经预先确定时间周期期间进入所述闲置状态之后先占地发生。
在实例6中,实例1到5的主题包含,所述经调度条件是基于频率的条件,其中所述读取扫描操作的所述调度响应于块中的错误处置触发事件的频率超过经确定阈值而执行。
在实例7中,实例1到6的主题包含,所述经调度条件是经预先确定事件,其中所述读取扫描操作的所述调度响应于在所述存储器控制器内发生所述经预先确定事件或响应于从所述存储器阵列、所述存储器控制器或所述存储器控制器的固件中的一或多个模块的属性识别所述经预先确定事件而执行。
在实例8中,实例7的主题包含,在所述存储器控制器内发生的所述经预先确定事件对应于块读取计数超过经确定块读取计数阈值。
在实例9中,实例1到8的主题包含,响应于所述存储器阵列进入所述闲置状态的所述操作状态而起始损耗平衡操作,其中所述损耗平衡操作经起始以在完成所述读取扫描操作之后发生。
在实例10中,实例1到9的主题包含,响应于起始所述读取扫描操作以在所述经调度条件之前先占地发生:响应于所述存储器阵列在所述经调度条件之前进入所述活动状态的操作状态而停止所述读取扫描操作;及响应于重新进入所述闲置状态或响应于所述经调度条件的发生,继续所述读取扫描操作。
在实例11中,实例1到10的主题包含,从所述主机起始的所述操作包含读取操作或写入操作,其中所述操作进一步包括:响应于所述经调度条件发生在所述读取扫描操作的先占完成之前,使所述读取扫描操作优先于从所述主机起始的操作。
在实例12中,实例1到11的主题包含,响应于通过所述读取扫描操作从所述存储器阵列的所述多个位置当中进行的读取获得的数据,起始所述存储器阵列的至少一部分的读取电压校准。
在实例13中,实例12的主题包含,所述读取扫描操作在所述存储器阵列中的所述多个位置当中使用多个读取电压执行从所述多个位置取样原始位错误率(RBER),其中所述读取电压校准响应于所述RBER超过经预先确定阈值而执行。
在实例14中,实例1到13的主题包含,所述存储器阵列包含以下的至少一者:单电平单元(SLC)、多层单元(MLC)、三层单元(TLC)或四层单元(QLC)NAND存储器单元。
在实例15中,实例1到14的主题包含,所述存储器阵列布置成三维(3D)NAND裸片的堆叠。
实例16是一种用于在存储器装置中执行先占式读取扫描的方法,所述方法包括由存储器控制器对所述存储器装置的NAND存储器阵列执行的多个操作,其中所述操作包括:调度对所述存储器阵列的读取扫描操作以在经调度条件之后进行,其中所述读取扫描操作用以通过在所述存储器阵列的多个位置处执行读取而取样所述多个位置处的数据,且其中在所述多个位置当中运用不同读取电压执行所述读取;监测所述存储器阵列的操作状态,所述存储器阵列的所述操作状态包含对应于执行从主机起始的操作的活动状态,及对应于不存在从所述主机起始的操作的闲置状态;及响应于所述存储器阵列进入所述闲置状态的操作状态而起始所述读取扫描操作,其中所述读取扫描操作经起始以在所述经调度条件之前先占地发生。
在实例17中,实例16的主题包含,所述读取扫描操作执行所述存储器阵列的多个块的经取样页或字线的集合的读取,其中在所述多个块当中运用不同读取电压执行读取。
在实例18中,实例17的主题包含,所述多个块从所述NAND存储器阵列内随机选择。
在实例19中,实例16到18的主题包含:调度对所述存储器阵列的第二读取扫描操作以在第二经调度条件之后进行;及响应于所述存储器阵列在所述第二经调度条件之前未进入闲置状态的操作状态而起始所述第二读取扫描操作,其中所述第二读取扫描操作经起始以在所述第二经调度条件之后发生。
在实例20中,实例16到19的主题包含,所述经调度条件是从经调度时间间隔确定的时间,其中所述读取扫描操作的所述起始在所述经调度条件之前在经预先确定时间周期期间进入所述闲置状态之后先占地发生。
在实例21中,实例16到20的主题包含,所述经调度条件是基于频率的条件,其中所述读取扫描操作的所述调度响应于块中的错误处置触发事件的频率超过经确定阈值而执行。
在实例22中,实例16到21的主题包含,所述经调度条件是经预先确定事件,其中所述读取扫描操作的所述调度响应于在所述存储器控制器内发生所述经预先确定事件或响应于从所述存储器阵列、所述存储器控制器或所述存储器控制器的固件中的一或多个模块的属性识别所述经预先确定事件而执行。
在实例23中,实例22的主题包含,在所述存储器控制器内发生的所述经预先确定事件对应于块读取计数超过经确定块读取计数阈值。
在实例24中,实例16到23的主题包含:响应于所述存储器阵列进入所述闲置状态的所述操作状态而起始损耗平衡操作,其中所述损耗平衡操作经起始以在完成所述读取扫描操作之后发生。
在实例25中,响应于起始所述读取扫描操作以在所述经调度条件之前先占地发生,实例16到24的主题包含:响应于所述存储器阵列在所述经调度条件之前进入所述活动状态的操作状态而停止所述读取扫描操作;及响应于重新进入所述闲置状态或响应于所述经调度条件的发生,继续所述读取扫描操作。
在实例26中,实例16到25的主题包含,从所述主机起始的所述操作包含读取操作或写入操作,其中所述操作进一步包括:响应于所述经调度条件发生在所述读取扫描操作的先占完成之前,使所述读取扫描操作优先于从所述主机起始的操作。
在实例27中,实例16到26的主题包含,响应于通过所述读取扫描操作从所述存储器阵列的所述多个位置当中进行的所述读取获得的数据,起始所述存储器阵列的至少一部分的读取电压校准。
在实例28中,实例27的主题包含,所述读取扫描操作在所述存储器阵列中的所述多个位置当中使用多个读取电压执行从所述多个位置取样原始位错误率(RBER),其中所述读取电压校准响应于所述RBER超过经预先确定阈值而执行。
在实例29中,实例16到28的主题包含,其中所述存储器阵列包含以下的至少一者:单电平单元(SLC)、多层单元(MLC)、三层单元(TLC)或四层单元(QLC)NAND存储器单元。
在实例30中,实例16到29的主题包含,其中所述存储器阵列布置成三维(3D)NAND裸片的堆叠。
实例31是一种装置可读存储媒体,其提供在通过存储器装置的控制器执行时对所述存储器装置的NAND存储器阵列执行先占式读取扫描的指令,其中所述指令引起所述控制器执行如实例1到30的技术中的任一者的操作。
实例32是一种包括用于执行实例1到30的方法或技术中的任一者的相应构件的设备。
实例33是一种执行实例1到30中任一者的操作的系统、设备或装置。
实例34是一种体现用以执行或实施实例1到30中任一者的操作的指令的有形机器可读媒体。
实例35是一种用以执行实例1到30中任一者的操作的方法。
上文描述希望是说明性而非限制性。举例来说,上文所述的实例(或其一或多个方面)可彼此组合使用。在检视上文描述后,例如所属领域的一般技术人员可使用其它实施例。主张理解其并非用于解释或限制权利要求书的范围或含义。此外,在上文实施方式中,各种特征可集合在一起以简化本发明。此不应被解译为期望未主张的揭示特征是任何权利要求的关键。而是,本发明主题可能在于少于特定揭示实施例的全部特征。因此,下文权利要求书在此并入实施方式中,其中每一权利要求自身作为单独实施例,且预期此类实施例可以各种组合或排列彼此组合。应参考所附权利要求书连同此类权利要求所授权的等效物的全范围来确定实施例的范围。

Claims (31)

1.一种存储器装置,其包括:
NAND存储器阵列;及
存储器控制器,其可操作地耦合到所述存储器阵列,所述存储器控制器用以执行包括以下各者的操作:
调度对所述存储器阵列的读取扫描操作以在经调度条件时进行,其中所述读取扫描操作用以通过在所述存储器阵列的多个位置处执行读取而取样所述多个位置处的数据;
定义触发窗以用于经调度的读取扫描操作;
监测所述存储器阵列的操作状态,所述存储器阵列的所述操作状态包含对应于执行从主机起始的操作的活动状态,及对应于不存在从所述主机起始的操作的闲置状态;及
响应于所述存储器阵列在所述触发窗期间进入所述闲置状态的所述操作状态而起始所述读取扫描操作,其中所述读取扫描操作经起始以在所述经调度条件之前先占地发生。
2.根据权利要求1所述的存储器装置,其中所述读取扫描操作包含执行所述存储器阵列的多个块的经取样页或字线的集合的读取,且其中在所述多个块当中运用不同读取电压执行所述读取。
3.根据权利要求2所述的存储器装置,其中所述多个块从所述NAND存储器阵列内随机选择。
4.根据权利要求1所述的存储器装置,所述操作进一步包括:
调度对所述存储器阵列的第二读取扫描操作以在第二经调度条件之后进行;
定义第二触发窗以用于经调度的第二读取扫描操作;及
响应于所述存储器阵列在所述第二触发窗期间未进入闲置状态的所述操作状态而起始所述第二读取扫描操作,其中所述第二读取扫描操作经起始以在所述第二触发窗结束时发生。
5.根据权利要求1所述的存储器装置,其中所述经调度条件是从经调度时间间隔确定的时间,且其中所述读取扫描操作的所述起始在所述经调度条件之前在经预先确定时间周期期间进入所述闲置状态之后先占地发生。
6.根据权利要求1所述的存储器装置,其中所述经调度条件是基于频率的条件,且其中所述读取扫描操作的所述调度响应于块中的错误处置触发事件的频率超过经确定阈值而执行。
7.根据权利要求1所述的存储器装置,其中所述经调度条件是经预先确定事件,且其中所述读取扫描操作的所述调度响应于在所述存储器控制器内发生所述经预先确定事件或响应于从所述存储器阵列、所述存储器控制器或所述存储器控制器的固件中的一或多个模块的属性识别所述经预先确定事件而执行。
8.根据权利要求7所述的存储器装置,其中在所述存储器控制器内发生的所述经预先确定事件对应于块读取计数超过经确定块读取计数阈值。
9.根据权利要求1所述的存储器装置,所述操作进一步包括:
响应于所述存储器阵列进入所述闲置状态的所述操作状态而起始损耗平衡操作,其中所述损耗平衡操作经起始以在完成所述读取扫描操作之后发生。
10.根据权利要求1所述的存储器装置,其中响应于起始所述读取扫描操作以在所述经调度条件之前先占地发生,所述操作进一步包括:
响应于所述存储器阵列在所述经调度条件之前进入所述活动状态的所述操作状态而停止所述读取扫描操作;及
响应于重新进入所述闲置状态或响应于所述经调度条件的发生,继续所述读取扫描操作。
11.根据权利要求1所述的存储器装置,其中从所述主机起始的所述操作包含读取操作或写入操作,其中所述操作进一步包括:
响应于所述经调度条件发生在所述读取扫描操作的先占完成之前,使所述读取扫描操作优先于从所述主机起始的操作。
12.根据权利要求1所述的存储器装置,所述操作进一步包括:
响应于通过所述读取扫描操作从所述存储器阵列的所述多个位置当中进行的所述读取获得的数据,起始所述存储器阵列的至少一部分的读取电压校准。
13.根据权利要求12所述的存储器装置,其中所述读取扫描操作在所述存储器阵列中的所述多个位置当中使用多个读取电压执行从所述多个位置取样原始位错误率RBER,且其中所述读取电压校准响应于所述RBER超过经预先确定阈值而执行。
14.根据权利要求1所述的存储器装置,其中所述存储器阵列包含以下中的至少一者:单电平单元SLC、多层单元MLC、三层单元TLC或四层单元QLC NAND存储器单元。
15.根据权利要求1所述的存储器装置,其中所述存储器阵列布置成三维3D NAND裸片的堆叠。
16.一种用于在存储器装置中执行先占式读取扫描的方法,所述方法包括由存储器控制器对所述存储器装置的NAND存储器阵列执行的多个操作,其中所述操作包括:调度对所述存储器阵列的读取扫描操作以在经调度条件之后进行,其中所述读取扫描操作用以通过在所述存储器阵列的多个位置处执行读取而取样所述多个位置处的数据,且其中在所述多个位置当中运用不同读取电压执行所述读取;
定义触发窗以用于经调度的读取扫描操作;
监测所述存储器阵列的操作状态,所述存储器阵列的所述操作状态包含对应于执行从主机起始的操作的活动状态,及对应于不存在从所述主机起始的操作的闲置状态;及
响应于所述存储器阵列在所述触发窗期间进入所述闲置状态的所述操作状态而起始所述读取扫描操作,其中所述读取扫描操作经起始以在所述经调度条件之前先占地发生。
17.根据权利要求16所述的方法,其中所述读取扫描操作包含执行所述存储器阵列的多个块的经取样页或字线的集合的读取,且其中所述多个块从所述NAND存储器阵列内随机选择。
18.根据权利要求16所述的方法,其中所述经调度条件是从经调度时间间隔确定的时间,且其中所述读取扫描操作的所述起始在所述经调度条件之前在经预先确定时间周期期间进入所述闲置状态之后先占地发生。
19.根据权利要求16所述的方法,其中所述读取扫描操作的所述调度响应于以下各者而执行:块中的错误处置触发事件的频率超过经确定阈值;在所述存储器控制器内发生事件;或从所述存储器阵列、所述存储器控制器或所述存储器控制器的固件中的一或多个模块的属性识别事件。
20.根据权利要求16所述的方法,其中响应于起始所述读取扫描操作以在所述经调度条件之前先占地发生,所述操作进一步包括:
响应于所述存储器阵列在所述经调度条件之前进入所述活动状态的所述操作状态而停止所述读取扫描操作;及
响应于重新进入所述闲置状态或响应于所述经调度条件的发生,继续所述读取扫描操作。
21.根据权利要求16所述的方法,其中从所述主机起始的所述操作包含读取操作或写入操作,其中所述操作进一步包括:
响应于所述经调度条件发生在所述读取扫描操作的先占完成之前,使所述读取扫描操作优先于从所述主机起始的操作。
22.根据权利要求16所述的方法,所述操作进一步包括:
响应于通过所述读取扫描操作从所述存储器阵列的所述多个位置当中进行的所述读取获得的数据,起始所述存储器阵列的至少一部分的读取电压校准。
23.根据权利要求22所述的方法,其中所述读取扫描操作在所述存储器阵列中的所述多个位置当中使用多个读取电压执行从所述多个位置取样原始位错误率RBER,且其中所述读取电压校准响应于所述RBER超过经预先确定阈值而执行。
24.一种装置可读存储媒体,其提供在由存储器装置的存储器控制器执行时对所述存储器装置的NAND存储器阵列执行先占式读取扫描的指令,其中所述指令引起所述控制器执行包括以下各者的操作:
调度对所述存储器阵列的读取扫描操作以在经调度条件下进行,其中所述读取扫描操作用以通过在所述存储器阵列的多个位置处执行读取而取样所述多个位置处的数据,且其中在所述多个位置当中运用不同读取电压执行所述读取;
定义触发窗以用于经调度的读取扫描操作;
监测所述存储器阵列的操作状态,所述存储器阵列的所述操作状态包含对应于执行从主机起始的操作的活动状态,及对应于不存在从所述主机起始的操作的闲置状态;及
响应于所述存储器阵列在所述触发窗期间进入所述闲置状态的所述操作状态而起始所述读取扫描操作,其中所述读取扫描操作经起始以在所述经调度条件之前先占地发生。
25.根据权利要求24所述的装置可读存储媒体,其中所述读取扫描操作包含执行所述存储器阵列的多个块的经取样页或字线的集合的读取,且其中所述多个块从所述存储器阵列内随机选择。
26.根据权利要求24所述的装置可读存储媒体,其中所述经调度条件是从经调度时间间隔确定的时间,且其中所述读取扫描操作的所述起始在所述经调度条件之前在经预先确定时间周期期间进入所述闲置状态之后先占地发生。
27.根据权利要求24所述的装置可读存储媒体,其中所述读取扫描操作的所述调度响应于以下各者而执行:块中的错误处置触发事件的频率超过经确定阈值;在所述存储器控制器内发生事件;或从所述存储器阵列、所述存储器控制器或所述存储器控制器的固件中的一或多个模块的属性识别事件。
28.根据权利要求24所述的装置可读存储媒体,其中响应于起始所述读取扫描操作以在所述经调度条件之前先占地发生,所述操作进一步包括:
响应于所述存储器阵列在所述经调度条件之前进入所述活动状态的所述操作状态而停止所述读取扫描操作;及
响应于重新进入所述闲置状态或响应于所述经调度条件的发生,继续所述读取扫描操作。
29.根据权利要求24所述的装置可读存储媒体,其中从所述主机起始的所述操作包含读取操作或写入操作,其中所述操作进一步包括:
响应于所述经调度条件发生在所述读取扫描操作的先占完成之前,使所述读取扫描操作优先于从所述主机起始的操作。
30.根据权利要求29所述的装置可读存储媒体,所述操作进一步包括:
响应于通过所述读取扫描操作从所述存储器阵列的所述多个位置当中进行的所述读取获得的数据,起始所述存储器阵列的至少一部分的读取电压校准。
31.根据权利要求30所述的装置可读存储媒体,其中所述读取扫描操作在所述存储器阵列中的所述多个位置当中使用多个读取电压执行从所述多个位置取样原始位错误率RBER,且其中所述读取电压校准响应于所述RBER超过经预先确定阈值而执行。
CN201780096675.2A 2017-09-30 2017-09-30 先占式闲置时间读取扫描 Active CN111433754B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/104945 WO2019061480A1 (en) 2017-09-30 2017-09-30 PRE-EVEN READING SCANS IN PERIOD OF INACTIVITY

Publications (2)

Publication Number Publication Date
CN111433754A CN111433754A (zh) 2020-07-17
CN111433754B true CN111433754B (zh) 2024-03-29

Family

ID=65896198

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780096675.2A Active CN111433754B (zh) 2017-09-30 2017-09-30 先占式闲置时间读取扫描

Country Status (6)

Country Link
US (3) US10283205B2 (zh)
EP (1) EP3688599A4 (zh)
KR (1) KR20200067848A (zh)
CN (1) CN111433754B (zh)
TW (1) TWI696077B (zh)
WO (1) WO2019061480A1 (zh)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11614893B2 (en) 2010-09-15 2023-03-28 Pure Storage, Inc. Optimizing storage device access based on latency
US10756816B1 (en) 2016-10-04 2020-08-25 Pure Storage, Inc. Optimized fibre channel and non-volatile memory express access
US10140040B1 (en) 2017-05-25 2018-11-27 Micron Technology, Inc. Memory device with dynamic program-verify voltage calibration
US10452480B2 (en) 2017-05-25 2019-10-22 Micron Technology, Inc. Memory device with dynamic processing level calibration
US11947814B2 (en) 2017-06-11 2024-04-02 Pure Storage, Inc. Optimizing resiliency group formation stability
US10283205B2 (en) 2017-09-30 2019-05-07 Micron Technology, Inc. Preemptive idle time read scans
US10860475B1 (en) 2017-11-17 2020-12-08 Pure Storage, Inc. Hybrid flash translation layer
CN109840047A (zh) * 2017-11-27 2019-06-04 华为技术有限公司 一种降低读延时的方法及装置
US20190171481A1 (en) * 2017-12-06 2019-06-06 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Performing maintenance tasks on composed systems during workload execution
US10566063B2 (en) 2018-05-16 2020-02-18 Micron Technology, Inc. Memory system with dynamic calibration using a trim management mechanism
US10664194B2 (en) 2018-05-16 2020-05-26 Micron Technology, Inc. Memory system with dynamic calibration using a variable adjustment mechanism
US10990466B2 (en) 2018-06-20 2021-04-27 Micron Technology, Inc. Memory sub-system with dynamic calibration using component-based function(s)
US11188416B2 (en) 2018-07-12 2021-11-30 Micron Technology, Inc. Enhanced block management for a memory sub-system
US11113129B2 (en) 2018-07-13 2021-09-07 Micron Technology, Inc. Real time block failure analysis for a memory sub-system
US11500570B2 (en) 2018-09-06 2022-11-15 Pure Storage, Inc. Efficient relocation of data utilizing different programming modes
US11520514B2 (en) 2018-09-06 2022-12-06 Pure Storage, Inc. Optimized relocation of data based on data characteristics
US10936246B2 (en) 2018-10-10 2021-03-02 Micron Technology, Inc. Dynamic background scan optimization in a memory sub-system
US10811091B2 (en) * 2018-10-12 2020-10-20 Western Digital Technologies, Inc. Adaptive processing for read threshold voltage calibration
US10553289B1 (en) * 2018-10-16 2020-02-04 Micron Technology, Inc. Apparatus and methods for determining an expected data age of memory cells
US10629280B1 (en) 2018-10-16 2020-04-21 Micron Technology, Inc. Methods for determining an expected data age of memory cells
US11086705B2 (en) * 2019-03-18 2021-08-10 International Business Machines Corporation Managing the reliability of pages in non-volatile random access memory
US11714572B2 (en) 2019-06-19 2023-08-01 Pure Storage, Inc. Optimized data resiliency in a modular storage system
US11017864B2 (en) * 2019-06-26 2021-05-25 Seagate Technology Llc Preemptive mitigation of cross-temperature effects in a non-volatile memory (NVM)
US11614890B2 (en) * 2019-07-30 2023-03-28 Micron Technology, Inc. Handling of host-initiated requests in memory sub-systems
US11450392B2 (en) * 2019-12-17 2022-09-20 Micron Technology, Inc. Selective read disturb sampling
TWI730600B (zh) * 2020-01-21 2021-06-11 群聯電子股份有限公司 資料寫入方法、記憶體控制電路單元以及記憶體儲存裝置
US11385984B2 (en) 2020-02-24 2022-07-12 Western Digital Technologies, Inc. Variable read scan for solid-state storage device quality of service
US11507297B2 (en) 2020-04-15 2022-11-22 Pure Storage, Inc. Efficient management of optimal read levels for flash storage systems
US11474986B2 (en) 2020-04-24 2022-10-18 Pure Storage, Inc. Utilizing machine learning to streamline telemetry processing of storage media
US11416338B2 (en) 2020-04-24 2022-08-16 Pure Storage, Inc. Resiliency scheme to enhance storage performance
US11768763B2 (en) 2020-07-08 2023-09-26 Pure Storage, Inc. Flash secure erase
US11681448B2 (en) 2020-09-08 2023-06-20 Pure Storage, Inc. Multiple device IDs in a multi-fabric module storage system
US11513974B2 (en) 2020-09-08 2022-11-29 Pure Storage, Inc. Using nonce to control erasure of data blocks of a multi-controller storage system
US11222704B1 (en) * 2020-12-17 2022-01-11 Micron Technology, Inc. Power state aware scan frequency
US11487455B2 (en) 2020-12-17 2022-11-01 Pure Storage, Inc. Dynamic block allocation to optimize storage system performance
US11393548B2 (en) 2020-12-18 2022-07-19 Micron Technology, Inc. Workload adaptive scans for memory sub-systems
US11630593B2 (en) 2021-03-12 2023-04-18 Pure Storage, Inc. Inline flash memory qualification in a storage system
JP7178465B1 (ja) 2021-08-31 2022-11-25 ウィンボンド エレクトロニクス コーポレーション 半導体記憶装置
US20230068702A1 (en) * 2021-08-31 2023-03-02 Micron Technology, Inc. On-die cross-temperature management for a memory device
US11832410B2 (en) 2021-09-14 2023-11-28 Pure Storage, Inc. Mechanical energy absorbing bracket apparatus
CN114281247B (zh) * 2021-11-29 2022-10-14 深圳三地一芯电子有限责任公司 一种基于混合介质的flash带宽分配方法及装置
CN114360628B (zh) * 2022-03-07 2022-08-16 阿里巴巴(中国)有限公司 闪存的检测方法以及装置
CN116909495B (zh) * 2023-09-14 2023-12-15 合肥康芯威存储技术有限公司 一种存储装置及其控制方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7206230B2 (en) 2005-04-01 2007-04-17 Sandisk Corporation Use of data latches in cache operations of non-volatile memories
US7701797B2 (en) * 2006-05-15 2010-04-20 Apple Inc. Two levels of voltage regulation supplied for logic and data programming voltage of a memory device
US7730293B2 (en) * 2006-10-26 2010-06-01 Hewlett-Packard Development Company, L.P. Hard disk drive self-test system and method
US7957187B2 (en) * 2008-05-09 2011-06-07 Sandisk Corporation Dynamic and adaptive optimization of read compare levels based on memory cell threshold voltage distribution
US20090327581A1 (en) 2008-06-30 2009-12-31 Coulson Richard L Nand memory
US8122294B2 (en) * 2008-11-03 2012-02-21 Lenovo (Singapore) Pte. Ltd. Apparatus, system, and method for rapid grading of computer storage operating condition
US8700840B2 (en) 2009-01-05 2014-04-15 SanDisk Technologies, Inc. Nonvolatile memory with write cache having flush/eviction methods
CN101699413B (zh) * 2009-10-30 2011-12-07 成都市华为赛门铁克科技有限公司 硬盘数据读写控制方法和装置
US8589655B2 (en) * 2010-09-15 2013-11-19 Pure Storage, Inc. Scheduling of I/O in an SSD environment
JP2012133642A (ja) * 2010-12-22 2012-07-12 Sony Corp メモリ装置、メモリ制御方法、およびプログラム
US9176800B2 (en) * 2011-08-31 2015-11-03 Micron Technology, Inc. Memory refresh methods and apparatuses
US9298603B2 (en) * 2011-09-09 2016-03-29 OCZ Storage Solutions Inc. NAND flash-based storage device and methods of using
US20130343131A1 (en) 2012-06-26 2013-12-26 Lsi Corporation Fast tracking for flash channels
US8971111B2 (en) * 2013-05-23 2015-03-03 Seagate Technology Llc Threshold voltage calibration using reference pattern detection
TWI521513B (zh) * 2013-06-28 2016-02-11 群聯電子股份有限公司 讀取電壓設定方法、控制電路與記憶體儲存裝置
US9478292B2 (en) 2013-10-27 2016-10-25 Sandisk Technologies Llc Read operation for a non-volatile memory
US9620202B2 (en) 2013-11-01 2017-04-11 Seagate Technology Llc Reduction or elimination of a latency penalty associated with adjusting read thresholds for non-volatile memory
US9230689B2 (en) 2014-03-17 2016-01-05 Sandisk Technologies Inc. Finding read disturbs on non-volatile memories
US10078546B2 (en) 2014-10-24 2018-09-18 Micron Technology, Inc. Temperature related error management
US10283205B2 (en) 2017-09-30 2019-05-07 Micron Technology, Inc. Preemptive idle time read scans

Also Published As

Publication number Publication date
US20210027846A1 (en) 2021-01-28
US10818361B2 (en) 2020-10-27
US20190103164A1 (en) 2019-04-04
EP3688599A4 (en) 2021-07-28
TW201923602A (zh) 2019-06-16
TWI696077B (zh) 2020-06-11
US11250918B2 (en) 2022-02-15
CN111433754A (zh) 2020-07-17
EP3688599A1 (en) 2020-08-05
US10283205B2 (en) 2019-05-07
WO2019061480A1 (en) 2019-04-04
US20190237146A1 (en) 2019-08-01
KR20200067848A (ko) 2020-06-12

Similar Documents

Publication Publication Date Title
CN111433754B (zh) 先占式闲置时间读取扫描
KR102365950B1 (ko) 호스트 io 동작에 기초하는 판독 전압 교정
US20190065331A1 (en) Flash memory block retirement policy
CN111226192B (zh) 受管理的多个裸片存储器qos
CN111247587B (zh) 优化扫描间隔
TW201921253A (zh) 單級晶胞快取管理
CN112817519B (zh) 存储器装置的温度管理
US10559369B2 (en) Voltage degradation aware NAND array management
CN111183483B (zh) Nand温度数据管理
CN113168377B (zh) Slc高速缓存分配
US10891072B2 (en) NAND flash thermal alerting
US10453543B2 (en) End of life performance throttling to prevent data loss
US20210073070A1 (en) Methods and system with dynamic ecc voltage and frequency
US10366763B2 (en) Block read count voltage adjustment
US10424382B2 (en) Increased NAND performance under high thermal conditions

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
GR01 Patent grant
GR01 Patent grant