CN115938416A - 多平面存储器装置中并行平面存取期间的余量管理 - Google Patents
多平面存储器装置中并行平面存取期间的余量管理 Download PDFInfo
- Publication number
- CN115938416A CN115938416A CN202211217604.2A CN202211217604A CN115938416A CN 115938416 A CN115938416 A CN 115938416A CN 202211217604 A CN202211217604 A CN 202211217604A CN 115938416 A CN115938416 A CN 115938416A
- Authority
- CN
- China
- Prior art keywords
- memory device
- high current
- memory
- driver circuits
- events occurring
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/08—Address circuits; Decoders; Word-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/24—Bit-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本申请涉及多平面存储器装置中并行平面存取期间的余量管理。一种存储器装置包含:存储器阵列,其包括多个平面;及多个独立平面驱动器电路。所述存储器装置进一步包含控制逻辑以接收所述多个独立平面驱动器电路中的一者对所述存储器装置中的所述多个平面中的对应一者执行高电流事件的请求。所述控制逻辑进一步使跟踪在所述存储器装置中发生的高电流事件的数目的计数器递增,且确定在所述存储器装置中发生的高电流事件的所述数目是否满足阈值准则。响应于确定在所述存储器装置中发生的高电流事件的所述数目满足所述阈值准则,所述控制逻辑将使得所述高电流事件的执行延迟。
Description
技术领域
本公开的实施例大体上涉及存储器子系统,且更具体地说,涉及存储器子系统中的多平面存储器装置中并行平面存取期间的余量管理。
背景技术
存储器子系统可包含存储数据的一或多个存储器装置存储器装置可例如为非易失性存储器装置和易失性存储器装置。一般来说,主机系统可利用存储器子系统以在存储器装置处存储数据且从存储器装置检索数据。
发明内容
在一方面中,本申请提供一种存储器装置,其包括:存储器阵列,其包括多个平面;多个独立平面驱动器电路,其以操作方式与所述多个平面耦合;及控制逻辑,其以操作方式与所述多个独立平面驱动器电路耦合,以执行包括以下的操作:接收所述多个独立平面驱动器电路中的一者对所述多个平面中的对应一者执行高电流事件的请求;使跟踪在所述存储器装置中发生的高电流事件的数目的计数器递增;确定在所述存储器装置中发生的高电流事件的所述数目是否满足阈值准则;及响应于确定在所述存储器装置中发生的高电流事件的所述数目满足所述阈值准则,使得所述高电流事件的执行延迟。
在另一方面中,本申请提供一种方法,其包括:接收存储器装置中的多个独立平面驱动器电路中的一者对所述存储器装置中的多个平面中的对应一者执行高电流事件的请求;使跟踪在所述存储器装置中发生的高电流事件的数目的计数器递增;确定在所述存储器装置中发生的高电流事件的所述数目是否满足阈值准则;及响应于确定在所述存储器装置中发生的高电流事件的所述数目满足所述阈值准则,使得所述高电流事件的执行延迟。
在又一方面中,本申请提供一种存储器装置,其包括:存储器阵列,其包括多个平面;多个独立平面驱动器电路,其以操作方式与所述多个平面耦合;及控制逻辑,其以操作方式与所述多个独立平面驱动器电路耦合,以执行包括以下的操作:接收指向所述存储器装置的多个读取命令;将所述多个读取命令分配到与所述多个平面耦合的所述多个独立平面驱动器电路;确定用于所述多个独立平面驱动器电路的仲裁方案;及基于用于所述多个独立平面驱动器电路的所述仲裁方案而管理对应于所述多个读取命令的高电流事件。
附图说明
将从下文给出的实施方式和从本公开的各种实施例的附图更充分地理解本公开。
图1A说明根据本公开的一些实施例的包含存储器子系统的实例计算系统。
图1B为根据本公开的一些实施例的与存储器子系统的存储器子系统控制器通信的存储器装置的框图。
图2为根据本公开的一些实施例的如可用于参考图1B所描述的类型的存储器中的存储器单元阵列的部分的示意图。
图3为说明根据本公开的一些实施例的经配置以用于并行平面存取期间的余量装置的多平面存储器装置的框图。
图4为根据本公开的一些实施例的存储器子系统中的多平面存储器装置中并行平面存取期间的余量管理的实例方法的流程图。
图5为根据本公开的一些实施例的存储器子系统中的多平面存储器装置中并行平面存取期间的余量管理的实例方法的流程图。
图6为本公开的实施例可在其中操作的实例计算机系统的框图。
具体实施方式
本公开的各方面涉及存储器子系统中的多平面存储器装置中并行平面存取期间的余量管理。存储器子系统可为存储装置、存储器模块,或存储装置与存储器模块的混合。下文结合图1A描述存储装置和存储器模块的实例。一般来说,主机系统可利用包含一或多个组件(例如存储数据的存储器装置)的存储器子系统。主机系统可提供要存储在存储器子系统处的数据,且可请求要从存储器子系统检索的数据。
存储器子系统可包含高密度非易失性存储器装置,其中当没有电力被供应到存储器装置时需要数据的保持。非易失性存储器装置的一个实例为与非(NAND)存储器装置。下文结合图1A描述非易失性存储器装置的其它实例。非易失性存储器装置为一或多个裸片的封装。每一裸片可由一或多个平面组成。对于一些类型的非易失性存储器装置(例如,NAND装置),每一平面由一组物理块组成。每一块由一组页组成。每一页由一组存储器单元(“单元”)组成。所述单元为存储信息的电子电路。取决于单元类型,单元可存储二进制信息的一或多个位,且具有与所存储的位数相关的各种逻辑状态。逻辑状态可由二进制值(例如“0”和“1”)或此类值的组合表示。
存储器装置可由按二维或三维网格布置的位组成。将存储器单元形成到列(下文也称为位线)和行(下文也称为字线)的阵列中的硅晶片上。字线可指存储器装置的存储器单元的一或多个行,所述一或多个行与一或多个位线一起使用以产生存储器单元中的每一者的地址。位线和字线的相交点构成存储器单元的地址。下文中,块是指用于存储数据的存储器装置的单元,并且可包含存储器单元群组、字线群组、字线或个别存储器单元。可将一或多个块分组在一起以形成存储器装置的平面,以便允许在每一平面上进行并发操作。存储器装置可包含执行两个或更多个存储器平面的并发存储器页存取的电路系统。举例来说,存储器装置可包含可由存储器装置的平面共享的多个存取线驱动器电路和电力电路,以促进两个或更多个存储器平面的包含不同页类型的页的并发存取。为易于描述,这些电路通常可称为独立平面驱动器电路。每一独立平面驱动器电路可由对应处理器(或处理线程)控制。
在某些存储器装置中,独立平面驱动器电路中的每一者可共享供电系统,包含电流源和一系列供电线和总线。由独立平面驱动器电路中的一或多者执行的某些操作可汲取相对高的峰值电流。举例来说,在从存储器阵列中的平面的存储器单元读取数据的某些操作期间,将数据临时存储在与平面相关联的页缓冲器的锁存器中。在此读取过程期间,从供电系统汲取高电平电流。此类发生在本文中可被称为“高电流事件”。存储器装置中的供电系统可仅在任何一个时间点处提供一定量的电流。因此,为了确保存储器装置的恰当操作,媒体装置上的本地媒体控制器可试图维持一定量的电流余量(即,最大可用电流与在给定时间点所请求的电流量之间的差)。由于可存在在多平面存储器装置的不同平面上独立地操作的多个独立平面驱动器电路和多个处理器,因此有可能同时在不同存储器平面上发生多个高电流事件(即,至少部分地在时间上重叠)。取决于供电系统的细节,如果同时发生足够多的高电流事件,那么与那些高电流事件相关联的峰值电流使用可超过存储器装置中的可用的电流余量,从而导致性能下降或甚至某些操作失败。另外,在某些存储器装置中,独立平面驱动器电路和处理器独立地操作而无需相对于对每一存储器平面执行的相应操作彼此通信的机制,由此限制了在存储器装置中存在足够的电流余量时调度高电流事件的任何能力。随着存储器装置中存储器平面以及对应的独立平面驱动器电路和处理器的数目增加,同时发生多个高电流事件的可能性也会增加。
本公开的各方面通过在存储器子系统中的多平面存储器装置中的并行平面存取操作期间提供余量管理来解决以上及其它不足。通过管理与对多平面存储器装置的单独平面同时执行的存储器存取操作相关联的高电流事件的发生,本地媒体控制器可在电流余量受到限制的某些时间段期间减少由独立平面驱动器电路请求的总峰值电流。如本文中所描述,多平面存储器装置可包含多个平面,每一平面具有相关联的独立平面驱动器电路以及经配置以同时执行存储器存取操作的处理器或处理线程。在这些存储器存取操作的过程期间,某一独立平面驱动器电路可能会遇到高电流事件(例如,所请求的峰值电流高于正常值的一段时间)。当遇到此类高电流事件时,对应处理器可将准许执行高电流事件的请求或其它通知发送到存储器装置上的余量管理组件。余量管理组件可确定任何其它独立平面驱动器电路是否同时请求执行高电流事件的许可。在一个实施例中,余量管理组件可维持可基于存储器装置中的电流余量同时执行的高电流事件的阈值数目。在一个实施例中,阈值数目可配置(例如,通过可控制微调设置),以基于存储器装置中的供电系统的细节而增加或减少高电流事件的数目。如果在任何一个时间点执行高电流事件的请求的总数目满足阈值准则(例如,满足或超过阈值数目),那么余量管理组件可根据所定义仲裁方案(例如,令牌环计数器)拒绝或延迟所述请求,直到足够的电流余量可用为止。否则,余量管理组件可授权所述请求,且请求处理器可在对应存储器平面上继续执行高电流事件。
此方法的优点包含但不限于防止由多个独立平面驱动器电路同时请求的峰值电流超过存储器装置中的可用电流量。这防止存储器存取操作的失败且可改进存储器装置的性能。举例来说,可减少与执行存储器存取操作相关联的错误率而不显著影响等待时间。因此,存储器装置提供的总体服务质量水平得以改进。
图1A说明根据本公开的一些实施例的包含存储器子系统110的实例计算系统100。存储器子系统110可包含媒体,例如一或多个易失性存储器装置(例如,存储器装置140)、一或多个非易失性存储器装置(例如,存储器装置130),或此类媒体的组合。
存储器子系统110可为存储装置、存储器模块,或存储装置与存储器模块的混合。存储装置的实例包含固态驱动器(SSD)、快闪驱动器、通用串行总线(USB)快闪驱动器、嵌入式多媒体控制器(eMMC)驱动器、通用快闪存储(UFS)驱动器、安全数字(SD)卡以及硬盘驱动器(HDD)。存储器模块的实例包含双列直插式存储器模块(DIMM)、小型DIMM(SO-DIMM),及各种类型的非易失性双列直插式存储器模块(NVDIMM)。
计算系统100可为计算装置,例如台式计算机、膝上型计算机、网络服务器、移动装置、运载工具(例如,飞机、无人机、火车、汽车或其它运输工具)、支持物联网(IoT)的装置、嵌入式计算机(例如,运载工具、工业设备或联网商业装置中包含的嵌入式计算机),或包含存储器和处理装置的此类计算装置。
计算系统100可包含耦合到一或多个存储器子系统110的主机系统120。在一些实施例中,主机系统120耦合到不同类型的存储器子系统110。图1A说明耦合到一个存储器子系统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之间传送控制、地址、数据和其它信号的接口。图1A说明存储器子系统110作为实例。一般来说,主机系统120可经由同一通信连接、多个单独通信连接和/或通信连接的组合存取多个存储器子系统。
存储器装置130、140可包含不同类型的非易失性存储器装置和/或易失性存储器装置的任何组合。易失性存储器装置(例如,存储器装置140)可为但不限于随机存取存储器(RAM),例如动态随机存取存储器(DRAM)和同步动态随机存取存储器(SDRAM)。
非易失性存储器装置(例如,存储器装置130)的一些实例包含与非(NAND)型快闪存储器以及就地写入存储器,例如三维交叉点(“3D交叉点”)存储器,其为非易失性存储器单元的交叉点阵列。非易失性存储器的交叉点阵列可结合可堆叠交叉网格化数据存取阵列基于体电阻的改变来执行位存储。另外,与许多基于快闪的存储器形成对比,交叉点非易失性存储器可执行就地写入操作,其中可在不预先擦除非易失性存储器单元的情况下对非易失性存储器单元进行编程。NAND型快闪存储器包含例如二维NAND(2DNAND)和三维NAND(3DNAND)。
存储器装置130中的每一者可包含一或多个存储器单元阵列。一种类型的存储器单元,例如,单层级单元(SLC)可每单元存储一个位。其它类型的存储器单元,例如,多层级单元(MLC)、三层级单元(TLC)、四层级单元(QLC)和五层级单元(PLC),可每单元存储多个位。在一些实施例中,存储器装置130中的每一者可包含一或多个存储器单元阵列,例如SLC、MLC、TLC、QLC或此类存储器单元阵列的任何组合。在一些实施例中,特定存储器装置可包含存储器单元的SLC部分,以及MLC部分、TLC部分、QLC部分或PLC部分。存储器装置130的存储器单元可分组为可指用于存储数据的存储器装置的逻辑单元的页。对于一些类型的存储器(例如,NAND),页可经分组以形成块。
虽然描述了非易失性存储器组件,例如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)。虽然在图1A中的实例存储器子系统110已说明为包含存储器子系统控制器115,但在本公开的另一实施例中,存储器子系统110不包含存储器子系统控制器115,而是可依靠外部控制(例如,由外部主机或由与存储器子系统分开的处理器或控制器提供)。
一般来说,存储器子系统控制器115可从主机系统120接收命令或操作,且可将所述命令或操作转换为指令或适当命令以实现对存储器装置130的所需存取。存储器子系统控制器115可负责其它操作,例如耗损均衡操作、垃圾收集操作、错误检测和错误校正码(ECC)操作、加密操作、高速缓存操作以及与存储器装置130相关联的逻辑地址(例如,逻辑块地址(LBA)、名称空间)与物理地址(例如,物理块地址)之间的地址转换。存储器子系统控制器115还可包含主机接口电路系统,以经由物理主机接口与主机系统120通信。主机接口电路系统可将从主机系统接收到的命令转换为命令指令以存取存储器装置130,以及将与存储器装置130相关联的响应转换为主机系统120的信息。
存储器子系统110还可包含未说明的额外电路系统或组件。在一些实施例中,存储器子系统110可包含高速缓存器或缓冲器(例如,DRAM)和地址电路系统(例如,行解码器和列解码器),所述地址电路可从存储器子系统控制器115接收地址并对所述地址进行解码以存取存储器装置130。
在一些实施例中,存储器装置130包含本地媒体控制器135,其结合存储器子系统控制器115操作以对存储器装置130的一或多个存储器单元执行操作。外部控制器(例如,存储器子系统控制器115)可在外部管理存储器装置130(例如,对存储器装置130执行媒体管理操作)。在一些实施例中,存储器装置130为受管理存储器装置,其为具有裸片上的控制逻辑(例如,本地控制器135)和用于相同存储器装置封装内的媒体管理的控制器(例如,存储器子系统控制器115)的原始存储器装置130。受管理存储器装置的实例为受管理NAND(MNAND)装置。举例来说,存储器装置130可表示具有体现在其上的一些控制逻辑(例如,本地媒体控制器135)的单个裸片。在一些实施例中,可省略存储器子系统110的一或多个组件。
在一个实施例中,存储器子系统110包含存储器接口组件113。存储器接口组件113负责处理存储器子系统控制器115与存储器子系统110的存储器装置(例如,存储器装置130)的交互。举例来说,存储器接口组件113可将与从主机系统120接收到的请求相对应的存储器存取命令发送到存储器装置130,所述存储器存取命令例如为编程命令、读取命令或其它命令。另外,存储器接口组件113可从存储器装置130接收数据,例如响应于读取命令或成功执行编程命令的确认而检索的数据。在一些实施例中,存储器子系统控制器115包含存储器接口113的至少一部分。举例来说,存储器子系统控制器115可包含处理器117(例如,处理装置),其经配置以执行存储在本地存储器119中的用于执行本文中所描述的操作的指令。在一些实施例中,存储器接口组件113是主机系统110、应用程序或操作系统的部分。
在一个实施例中,存储器装置130进一步包含余量管理组件(HR Mgmt Comp)150。在一个实施例中,存储器装置130的本地媒体控制器135包含余量管理组件150的至少一部分。在此类实施例中,可使用存储于存储器装置130上的硬件或固件来实施余量管理组件150,所述硬件或固件由控制逻辑(例如,本地媒体控制器135)执行以在本文中所描述的并行平面存取操作期间执行与余量管理相关的操作。
在一个实施例中,余量管理组件150可管理与对存储器装置130的单独平面同时执行的存储器存取操作相关联的高电流事件,以便在特定时间段期间减小峰值电流电平。存储器装置130可为包含多个平面的多平面存储器装置,每一平面具有经配置以同时执行存储器存取操作(例如,至少部分地在时间上重叠)的相关联的独立平面驱动器电路。在这些存储器存取操作的执行期间,某一独立平面驱动器电路可能会遇到高电流事件(例如,由独立平面驱动器电路使用的峰值电流在其期间将超过电流阈值量的操作)。当遇到此类高电流事件时,余量管理组件150可确定当前在存储器装置中发生的高电流事件的总数目是否满足阈值准则(例如,满足或超过阈值数目)。如果不满足阈值准则,那么余量管理组件150可提供对执行高电流事件的授权。然而,如果满足阈值准则,那么余量管理组件150可使高电流事件的执行延迟。一旦当前发生的高电流事件的数目不再满足阈值准则,余量管理组件150就可基于仲裁方案识别与独立平面驱动器电路中的一者相关联的额外高电流事件以供执行。下文描述关于余量管理组件150的操作的其它细节。
图1B为根据实施例的呈存储器装置130形式的第一设备与呈存储器子系统(例如,图1A的存储器子系统110)的存储器子系统控制器115形式的第二设备通信的简化框图。电子系统的一些实例包含个人计算机、个人数字助理(PDA)、数字相机、数字媒体播放器、数字记录器、游戏、电气设备、车辆、无线装置、移动电话等。存储器子系统控制器115(例如,存储器装置130外部的控制器)可为存储器控制器或其它外部主机装置。
存储器装置130包含以行和列逻辑地布置的存储器单元阵列104。逻辑行的存储器单元通常连接到同一存取线(例如,字线),而逻辑列的存储器单元通常选择性地连接到同一数据线(例如,位线)。单个存取线可与存储器单元的多于一个逻辑行相关联,并且单个数据线可与多于一个逻辑列相关联。存储器单元阵列104的至少一部分的存储器单元(图1B中未展示)能够经编程为至少两个目标数据状态中的一者。
提供行解码电路系统108和列解码电路系统109以对地址信号进行解码。接收地址信号并对其进行解码以存取存储器单元阵列104。存储器装置130还包含输入/输出(I/O)控制电路系统160,其用以管理命令、地址和数据到存储器装置130的输入以及数据和状态信息从存储器装置130的输出。地址寄存器114与I/O控制电路系统160和行解码电路系统108以及列解码电路系统109通信以在解码之前锁存地址信号。命令寄存器124与I/O控制电路系统160和本地媒体控制器135通信以锁存传入命令。
控制器(例如,存储器装置130内部的本地媒体控制器135)响应于命令而控制对存储器单元阵列104的存取,且生成外部存储器子系统控制器115的状态信息,即,本地媒体控制器135经配置以对存储器单元阵列104执行存取操作(例如,读取操作、编程操作和/或擦除操作)。本地媒体控制器135与行解码电路系统108和列解码电路系统109通信,以响应于地址而控制行解码电路系统108和列解码电路系统109。在一个实施例中,本地媒体控制器135包含余量管理组件150,其可管理与对存储器装置130的单独平面同时执行的存储器存取操作相关联的高电流事件,以便在特定时间段期间减小峰值电流电平。
本地媒体控制器135还与高速缓冲寄存器172通信。高速缓冲寄存器172锁存如由本地媒体控制器135引导的传入或传出数据以暂时存储数据,而存储器单元阵列104忙于分别写入或读取其它数据。在编程操作(例如,写入操作)期间,可将数据从高速缓存寄存器172传送到数据寄存器170以用于传送到存储器单元阵列104;接着可将新数据从I/O控制电路系统160锁存在高速缓存寄存器172中。在读取操作期间,数据可从高速缓冲寄存器172传送到I/O控制电路160以用于输出到存储器子系统控制器115;接着可将新数据从数据寄存器170传送到高速缓冲寄存器172。高速缓冲寄存器172和/或数据寄存器170可形成存储器装置130的页缓冲器(例如,可形成其部分)。页缓冲器可进一步包含感测装置(在图1B中未展示),以例如通过感测连接到存储器单元阵列104的存储器单元的数据线的状态来感测所述存储器单元的数据状态。状态寄存器122可与I/O控制电路系统160和本地存储器控制器135通信以锁存状态信息以用于输出到存储器子系统控制器115。
存储器装置130经由控制链路132从本地媒体控制器135接收存储器子系统控制器115处的控制信号。举例来说,控制信号可包含芯片启用信号CE#、命令锁存启用信号CLE、地址锁存启用信号ALE、写入启用信号WE#、读取启用信号RE#和写入保护信号WP#。取决于存储器装置130的性质,可进一步经由控制链路132接收额外或替代性控制信号(未展示)。在一个实施例中,存储器装置130经由多路复用的输入/输出(I/O)总线134从存储器子系统控制器115接收命令信号(其表示命令)、地址信号(其表示地址)和数据信号(其表示数据),且经由I/O总线134将数据输出到存储器子系统控制器115。
举例来说,可经由I/O控制电路系统160处的I/O总线134的输入/输出(I/O)引脚[7:0]接收命令,且接着可将所述命令写入到命令寄存器124中。可在I/O控制电路系统160处经由输入/输出(I/O)总线134的I/O引脚[7:0]接收地址,且接着可将所述地址写入到地址寄存器114中。可在I/O控制电路系统160处经由用于8位装置的输入/输出(I/O)引脚[7:0]或用于16位装置的输入/输出(I/O)引脚[15:0]接收数据,且接着可将所述数据写入到高速缓冲寄存器172中。随后可将数据写入到数据寄存器170中以用于编程存储器单元阵列104。
在实施例中,可省略高速缓冲寄存器172,且可将数据直接写入到数据寄存器170中。还可在用于8位装置的输入/输出(I/O)引脚[7:0]或用于16位装置的输入/输出(I/O)引脚[15:0]上输出数据。虽然可参考I/O引脚,但其可包含实现通过外部装置(例如,存储器子系统控制器115)电连接到存储器装置130的任何导电节点,例如常用的导电垫或导电凸块。
本领域的技术人员应了解,可提供额外的电路系统和信号并且已简化图1B的存储器装置130。应认识到,参考图1B描述的各种块组件的功能性可能不一定与集成电路装置的不同组件或组件部分分离。举例来说,集成电路装置的单个组件或组件部分可适于执行图1B的多于一个块组件的功能性。替代地,可组合集成电路装置的一或多个组件或组件部分以执行图1B的单个块组件的功能性。另外,虽然根据各种信号的接收和输出的流行惯例来描述特定I/O引脚,但应注意,可在各种实施例中使用其它I/O引脚(或其它I/O节点结构)的组合或其它数目个I/O引脚(或其它I/O节点结构)。
图2为根据实施例的如可用于参考图1B所描述的类型的存储器中的存储器单元阵列104(例如,NAND存储器阵列)的部分的示意图。存储器阵列104包含例如字线2020至202N的存取线以及例如位线2040至204M的数据线。字线202可以多对一关系连接到未在图2中展示的全局存取线(例如,全局字线)。对于一些实施例,存储器阵列104可形成于半导体上方,所述半导体例如可经导电掺杂以具有例如p型导电性的导电类型以例如形成p阱,或具有例如n型导电性的导电类型以例如形成n阱。
存储器阵列104可布置成行(每一行对应于字线202)和列(每一列对应于位线204)。每一列可包含串联连接的存储器单元(例如,非易失性存储器单元)串,例如NAND串2060至206M中的一者。每一NAND串206可连接(例如,选择性地连接)到共同源极(SRC)216且可包含存储器单元2080至208N。存储器单元208可表示用于存储数据的非易失性存储器单元。每一NAND串206的存储器单元208可在选择栅极210(例如,场效应晶体管)与选择栅极212(例如,场效应晶体管)之间串联连接,所述选择栅极例如为选择栅极2100至210M中的一者(例如,其可为源极选择晶体管,通常被称为选择栅极源极),且所述选择栅极例如为选择栅极2120至212M中的一者(例如,其可为漏极选择晶体管,通常被称为选择栅极漏极)。选择栅极2100至210M可共同地连接到选择线214,例如源极选择线(SGS),并且选择栅极2120至212M可共同地连接到选择线215,例如漏极选择线(SGD)。虽然描绘为传统的场效应晶体管,但选择栅极210和212可利用与存储器单元208类似(例如,相同)的结构。选择栅极210和212可表示串联连接的数个选择栅极,其中串联的每一选择栅极经配置以接收相同或独立的控制信号。
每一选择栅极210的源极可连接到共同源极216。每一选择栅极210的漏极可连接到对应NAND串206的存储器单元2080。举例来说,选择栅极2100的漏极可连接到对应NAND串2060的存储器单元2080。因此,每个选择栅极210可被配置成将对应NAND串206选择性地连接到共同源极216。每一选择栅极210的控制栅极可连接到选择线214。
每一选择栅极212的漏极可连接到位线204以用于对应的NAND串206。举例来说,选择栅极2120的漏极可连接到位线2040以用于对应的NAND串2060。每一选择栅极212的源极可连接到对应NAND串206的存储器单元208N。举例来说,选择栅极2120的源极可连接到对应NAND串2060的存储器单元208N。因此,每一选择栅极212可经配置以将对应NAND串206选择性地连接到对应位线204。每一选择栅极212的控制栅极可连接到选择线215。
图2中的存储器阵列104可为准二维存储器阵列,且可具有大体上平面结构,例如,其中共同源极216、NAND串206和位线204在大体上平行的平面中延伸。替代地,图2中的存储器阵列104可为三维存储器阵列,例如其中NAND串206可以大体上垂直于含有共同源极216的平面且大体上垂直于含有位线204的平面的方式延伸,所述位线可大体上平行于含有共同源极216的平面。
存储器单元208的典型构造包含可(例如,通过阈值电压的改变)确定存储器单元的数据状态的数据存储结构234(例如,浮动栅极、电荷捕获等)和控制栅极236,如图2中展示。数据存储结构234可包含导电结构和介电结构两者,而控制栅极236通常由一或多个导电材料形成。在一些情况下,存储器单元208可进一步具有所定义源极/漏极(例如,源极)230和所定义源极/漏极(例如,漏极)232。存储器单元208使其控制栅极236连接到(并且在一些情况下,形成)字线202。
存储器单元208的列可为NAND串206或选择性地连接到给定位线204的数个NAND串206。存储器单元208的行可为共同连接到给定字线202的存储器单元208。存储器单元208的行可(但未必)包含共同地连接到给定字线202的所有存储器单元208。存储器单元208的行可通常被划分成存储器单元208的物理页的一或多个群组,且存储器单元208的物理页通常包含每隔一个地共同连接到给定字线202的存储器单元208。举例来说,共同地连接到字线202N且选择性地连接到偶数位线204(例如,位线2040、2042、2044等)的存储器单元208可以是存储器单元208的一个物理页(例如,偶数存储器单元),而共同地连接到字线202N且选择性地连接到奇数位线204(例如,位线2041、2043、2045等)的存储器单元208可以是存储器单元208(例如,奇数存储器单元)的另一物理页。
虽然图2中未明确描绘位线2043至2045,但从图中显而易见的是,存储器单元阵列104的位线204可从位线2040连续编号到位线204M。共同地连接到给定字线202的存储器单元208的其它分组还可限定存储器单元208的物理页。对于某些存储器装置,共同地连接到给定字线的所有存储器单元可被视为存储器单元的物理页。存储器单元的物理页(在一些实施例中,其可仍为整个行)中的在单个读取操作期间读取或在单个编程操作期间编程的部分(例如,存储器单元的上部页或下部页)可被视为存储器单元的逻辑页。存储器单元块可包含经配置以一起被擦除的那些存储器单元,例如连接到字线2020至202N的所有存储器单元(例如,共享共同字线202的所有NAND串206)。除非明确地区分,否则对存储器单元页的参考在本文中是指存储器单元的逻辑页的存储器单元。虽然结合NAND快闪存储器论述图2的实例,但本文中所描述的实施例和概念不限于特定阵列架构或结构,且可包含其它结构(例如,SONOS、相变、铁电等)和其它架构(例如,AND阵列、NOR阵列等)。
图3为说明根据本公开的一些实施例的经配置以用于独立的并行平面存取的多平面存储器装置130的框图。存储器平面372(0)-372(3)可各自划分成数据块,其中在存储器存取操作期间可并发地存取来自存储器平面372(0)-372(3)中的两者或更多者的不同相对数据块。举例来说,在存储器存取操作期间,可各自并发地存取存储器平面372(0)的数据块382、存储器平面372(1)的数据块383、存储器平面372(2)的数据块384和存储器平面372(3)的数据块385中的两者或更多者。
存储器装置130包含划分成存储器平面372(0)-372(3)的存储器阵列104,所述存储器平面各自包含相应数目的存储器单元。多平面存储器装置130可进一步包含本地媒体控制器135,包含用于针对不同的存储器平面372(0)-372(3)并发地执行存储器存取操作的电力控制电路和存取控制电路。存储器单元可为非易失性存储器单元,例如NAND快闪单元,或可通常为任何类型的存储器单元。
存储器平面372(0)-372(3)可各自划分成数据块,其中在存储器存取操作期间可并发地存取来自存储器平面372(0)-372(3)中的每一者的不同相对数据块。举例来说,在存储器存取操作期间,可各自并发地存取存储器平面372(0)的数据块382、存储器平面372(1)的数据块383、存储器平面372(2)的数据块384和存储器平面372(3)的数据块385。
存储器平面372(0)-372(3)中的每一者可耦合到相应的页缓冲器376(0)-376(3)。每一页缓冲器376(0)-376(3)可经配置以将数据提供到相应存储器平面372(0)-372(3)或从所述相应存储器平面接收数据。页缓冲器376(0)-376(3)可由本地媒体控制器135控制。从相应存储器平面372(0)-372(3)接收到的数据可分别锁存在页缓冲器376(0)-376(3)处,且由本地媒体控制器135检索,且经由NVMe接口提供到存储器子系统控制器115。
存储器平面372(0)-372(3)中的每一者可进一步耦合到相应的存取驱动器电路374(0)-374(3),例如存取线驱动器电路。驱动器电路374(0)-374(3)可经配置以调节相关联的存储器平面372(0)-372(3)的相应块的页以供进行存储器存取操作,例如编程数据(即,写入数据)、读取数据或擦除数据。驱动器电路374(0)-374(3)中的每一者可耦合到与相应存储器平面372(0)-372(3)相关联的相应全局存取线。全局存取线中的每一者可在与块内的页相关联的存储器存取操作期间选择性地耦合到平面的块内的相应本地存取线。可基于来自本地媒体控制器135的信号来控制驱动器电路374(0)-374(3)。驱动器电路374(0)-374(3)中的每一者可包含或耦合到相应电力电路,且可基于由相应电力电路提供的电压而将电压提供到相应存取线。由电力电路提供的电压可基于从本地媒体控制器135接收到的信号。
本地媒体控制器135可控制驱动器电路374(0)-374(3)和页缓冲器376(0)-376(3)以并发地执行与(例如,从存储器子系统控制器115接收到的)存储器命令的群组和地址对中的每一者相关联的存储器存取操作。举例来说,本地媒体控制器135可控制驱动器电路374(0)-374(3)和页缓冲器376(0)-376(3)以执行并发存储器存取操作。本地媒体控制器135可包含:电力控制电路,其针对并发存储器存取操作而串行配置驱动器电路374(0)-374(3)中的两者或更多者;以及存取控制电路,其经配置以控制页缓冲器376(0)-376(3)中的两者或更多者以感测并锁存来自相应存储器平面372(0)-372(3)的数据,或将数据编程到相应存储器平面372(0)-372(3)以执行并发存储器存取操作。
在操作中,本地媒体控制器135可经由NVMe总线接收存储器命令的群组和地址对,其中每一对并行或串行到达。在一些实例中,存储器命令的群组和地址对可各自与存储器阵列104的不同相应存储器平面372(0)-372(3)相关联。本地媒体控制器135可经配置以响应于存储器命令的群组和地址对而针对存储器阵列104的不同存储器平面372(0)-372(3)执行并发存储器存取操作(例如,读取操作或编程操作)。举例来说,对于基于相应页类型(例如,UP、MP、LP、XP、SLC/MLC/TLC/QLC页)的并发存储器存取操作,本地媒体控制器135的电力控制电路可针对与存储器命令的群组和地址对相关联的两个或更多个存储器平面372(0)-372(3)而串行配置驱动器电路374(0)-374(3)。在已配置存取线驱动器电路374(0)-374(3)之后,本地媒体控制器135的存取控制电路可并行地控制页缓冲器376(0)-376(3),以在并发存储器存取操作期间存取与存储器命令的群组和地址对相关联的两个或更多个存储器平面372(0)-372(3)中的每一者的相应页,例如检索数据或写入数据。举例来说,存取控制电路可并发地(例如,并行地和/或同时)控制页缓冲器376(0)-376(3)以对位线进行充电/放电、感测来自两个或更多个存储器平面372(0)-372(3)的数据和/或锁存所述数据。
基于从本地媒体控制器135接收到的信号,耦合到与存储器命令的群组和地址命令对相关联的存储器平面372(0)-372(3)的驱动器电路374(0)-374(3)可从相关联的存储器平面372(0)-372(3)选择存储器块或存储器单元,以用于存储器操作,例如读取、编程和/或擦除操作。驱动器电路374(0)-374(3)可耦合到与相应存储器平面372(0)-372(3)相关联的不同相应全局存取线。例如,驱动器电路374(0)可以驱动与存储器平面372(0)相关联的第一全局存取线上的第一电压,驱动器电路374(1)可以驱动与存储器平面372(1)相关联的第三全局存取线上的第二电压,驱动器电路374(2)可以驱动与存储器平面372(2)相关联的第七全局存取线上的第三电压等,并且可以驱动其余全局存取线中的每一者上的其它电压。在一些实例中,除了与要存取的存储器平面372(0)-372(3)的页相关联的存取线之外,可以在所有存取线上提供通过电压。本地媒体控制器135、驱动器电路374(0)-374(3)可以允许并发地存取存储器单元的不同相应块内的不同相应页和页缓冲器376(0)-376(3)。举例来说,可并发地存取第一存储器平面的第一块的第一页以及第二存储器平面的第二块的第二页,而不管页类型如何。
页缓冲器376(0)-376(3)可以响应于来自本地媒体控制器135和相应存储器平面372(0)-372(3)的信号而在存储器存取操作期间将数据提供到本地媒体控制器135或从所述本地媒体控制器接收数据。本地媒体控制器135可将所接收的数据提供到存储器子系统控制器115。
应了解,存储器装置130可以包含多于或少于四个存储器平面、驱动器电路和页缓冲器。还应了解,相应全局存取线可包含8、16、32、64、128个等全局存取线。当不同相应页是不同页类型时,本地媒体控制器135和驱动器电路374(0)-374(3)可以并发地存取不同存储器平面的不同相应块内的不同相应页。在另一实施例中,存储器装置130可包含比平面少的驱动器电路。在此类实施例中,存储器装置130可进一步包含由从本地媒体控制器135接收到的控制信号控制的平面选择电路(例如,数个双向多路复用器电路)。平面选择电路使得驱动器电路中的任一者选择性地耦合到存储器装置130中的存储器平面中的任一者。以此方式,驱动器电路中的任一者与平面中的任一者之间不存在固定关联。
在一个实施例中,驱动器电路374(0)-374(3)共享共同电压供应线360。取决于实施例,共同电压供应线360可将正电压信号、负电压信号或接地电压信号提供到驱动器电路374(0)-374(3)以使得例如nMOS晶体管等某些组件能够在驱动器电路374(0)-374(3)内操作。在存取不同存储器平面时,驱动器电路374(0)-374(3)可执行包含高电流事件的存储器存取操作。高电流事件包含由一或多个驱动器电路374(0)-374(3)使用的峰值电流在其期间将超过电流阈值量的操作或时间段。举例来说,高电流事件可包含感测操作、数据锁存操作、从存储器阵列104中的存储器平面372(0)-372(3)中的一者的存储器单元读取数据并临时存储在页缓冲器376(0)-376(3)中的一者的锁存器中的操作,或由驱动器电路274(0)-274(3)执行的其它操作。取决于有多少驱动器电路374(0)-374(3)同时对对应存储器平面372(0)-372(3)执行高电流事件,可超过存储器装置130中的可用电流余量。
在一个实施例中,存储器装置130包含余量管理组件150,其可管理与由驱动器电路274(0)-274(3)在平面372(0)-372(3)上并发地执行的存储器存取操作相关联的高电流事件,以便在特定时间段期间减小峰值电流电平。在一个实施例中,余量管理组件150包含余量管理器352和处理器354(0)-354(3)。在一个实施例中,处理器354(0)-354(3)中的每一者对应于驱动器电路374(0)-374(3)中的一者,且负责监测和控制其操作。举例来说,处理器354(0)-354(3)中的每一者可监测由驱动器电路374(0)-374(3)中的对应一者执行的操作的状态且将所述状态报告到余量管理器352。举例来说,当调度要由驱动器电路374(0)-374(3)中的一者执行的高电流事件时,处理器354(0)-354(3)中的对应一者可将执行高电流事件的请求发布到余量管理器352。另外,处理器354(0)-354(3)中的每一者可从余量管理器352接收指令,例如在由驱动器电路374(0)-374(3)中的对应一者执行的操作期间是否准许、暂停或恢复高电流事件。高电流管理器352可管理驱动器电路374(0)-374(3)的状态,识别高电流事件,确定是否准许高电流事件(例如,基于计数器356的值,所述值在请求高电流事件时递增且在高电流事件已完成时递减),且基于所定义仲裁方案而准许高电流事件,如本文所描述。
图4为根据本公开的一些实施例的存储器子系统中的多平面存储器装置中并行平面存取期间的余量管理的实例方法的流程图。方法400可由处理逻辑进行,所述处理逻辑可包含硬件(例如,处理装置、电路系统、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件(例如,在处理装置上运行或执行的指令),或其组合。在一些实施例中,方法400由图1A的余量管理组件150执行。虽然以特定顺序或次序来展示,但是除非另外指定,否则可修改过程的次序。因此,所说明的实施例应理解为仅作为实例,且所说明的过程可以不同次序执行,并且一些过程可并行执行。另外,可在各种实施例中省略一或多个过程。因此,并非在每一实施例中需要所有过程。其它过程流程是可能的。
在操作405处,接收存储器存取命令。举例来说,处理逻辑(例如,本地媒体控制器135)可接收指向存储器装置(例如,存储器装置130)的一系列存储器存取命令。在一个实施例中,存储器存取命令为读取命令,其可从控制器(例如,存储器子系统控制器115、存储器子系统110的一些其它组件)或从外部组件(例如,主机系统120)接收。在一个实施例中,读取命令指定与要从存储器装置130读取的数据相关联的逻辑或物理地址中的至少一者。
在操作410处,针对每一存储器存取命令识别存储器装置的对应平面。举例来说,处理逻辑可识别每一读取命令指向的存储器装置的存储器阵列104的数个平面(例如,存储器平面372(0)-372(3))中的对应一者。在一个实施例中,处理逻辑识别存储与包含于每一所接收读取命令中的逻辑或物理地址相对应的数据块的存储器平面372(0)-372(3)的平面。举例来说,本地媒体控制器135可维持存储器地址到存储器平面372(0)-372(3)中的每一者的映射。在识别到对应平面后,处理逻辑可在与存储器平面372(0)-372(3)相关联的独立平面驱动器电路374(0)-374(3)中分配读取命令。在一个实施例中,每一驱动器电路与存储器平面372(0)-372(3)中的一者相关联。因此,处理逻辑可将每一读取命令分配到与读取命令所指向的存储器平面372(0)-372(3)中的一者相关联的驱动器电路374(0)至374(3)中的一者。在一个实施例中,为了将读取命令分配到驱动器电路374(0)-374(3)中的一者,处理逻辑可将读取命令的指示添加到与驱动器电路相关联的命令的队列(例如,缓冲器、FIFO等)且由处理器354(0)-354(3)中的相关联一者处理所述指示。处理器354(0)-354(3)中的相关联一者随后可将读取命令从相关联队列发送到驱动器电路,所述驱动器电路可对对应存储器平面的块执行存储器存取操作。
在操作415处,确定仲裁方案。举例来说,处理逻辑可确定用于处理独立平面驱动器电路274(0)-274(3)之间的冲突的仲裁方案。在一个实施例中,余量管理组件150可实施令牌环计数器,所述令牌环计数器在独立平面驱动器电路374(0)-374(3)之间周期性地循环令牌。在某一时间段之后,令牌从一个驱动器电路旋转到另一驱动器电路。在发出执行高电流事件的请求时,令牌持有者被授予优先于其它驱动器电路374(0)-374(3)的权利。在另一实施例中,仲裁方案是基于在存储器装置130处接收到与存储器存取操作对应的命令的次序。举例来说,如果在指向第二平面372(1)且分配到驱动器电路274(1)的另一命令之前接收到指向第一平面372(0)且分配到驱动器电路274(0)的特定命令,那么余量管理组件150可将比驱动器电路274(1)高的优先级分配到驱动器电路274(0)。在一个实施例中,余量管理组件150可维持每一命令的有序列表或其它数据结构,指示它们的接收次序以及它们被缓和的驱动器电路274(0)-274(3)中的一者。因此,为了确定相应优先级,余量管理组件150可比较列表中任何两个或更多个读取命令和/或驱动器电路的位置,以确定接收这些读取命令的次序。
在操作420处,管理存储器存取操作的执行期间发生的事件。举例来说,处理逻辑可基于仲裁方案而管理对应于读取命令的高电流事件。如本文所描述,余量管理组件150可监测当前在存储器装置130中发生的高电流事件的数目(例如,分别通过使例如计数器356等计数器递增和递减)。如果计数器的值满足阈值准则(例如,满足或超过阈值),余量管理组件150可使新请求的高电流事件的执行延迟。举例来说,余量管理组件150可不提供对执行新请求的高电流事件的授权,这可使请求处理器和独立平面驱动器电路等待执行高电流事件。在一个实施例中,一旦一或多个高电流事件已结束且在存储器装置130中发生的高电流事件的数目不再满足阈值准则(例如,小于阈值),余量管理组件150便可基于仲裁方案而识别与多个独立平面驱动器电路中的一者相关联的额外高电流事件以供执行。举例来说,额外高电流事件可包含旋转令牌的当前持有者所请求的高电流事件、最近最少接收到请求的待决高电流事件,或具有最高优先级的一些其它高电流事件。
图5为根据本公开的一些实施例的存储器子系统中的多平面存储器装置中并行平面存取期间的余量管理的实例方法的流程图。方法500可由处理逻辑执行,所述处理逻辑可包含硬件(例如,处理装置、电路系统、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件(例如,在处理装置上运行或执行的指令),或其组合。在一些实施例中,方法500由图1A的余量管理组件150执行。虽然以特定顺序或次序来展示,但是除非另外指定,否则可修改过程的次序。因此,所说明的实施例应理解为仅作为实例,且所说明的过程可以不同次序执行,并且一些过程可并行执行。另外,可在各种实施例中省略一或多个过程。因此,并非在每一实施例中需要所有过程。其它过程流程是可能的。
在操作505处,接收到请求。举例来说,处理逻辑(例如,余量管理组件150)可跟踪独立平面驱动器电路374(0)-374(3)的状态。在一个实施例中,跟踪状态可包含监测在存储器装置130的存储器平面372(0)-372(3)上由独立平面驱动器电路374(0)-374(3)执行的存储器存取操作(例如读取操作)的执行。在一个实施例中,余量管理组件150维持要在余量管理操作期间参考的一些本地存储器中的状态的指示。在一个实施例中,处理逻辑可检测与第一独立平面驱动器电路(例如驱动器电路374(0))相关联的高噪声事件的发生,所述第一独立平面驱动器电路与存储器装置130的多个存储器平面372(0)-372(3)的第一平面(例如,存储器平面372(0))对应。举例来说,余量管理组件150的余量管理器352可接收驱动器电路374(0)对对应存储器平面372(0)执行高电流事件的请求。在一个实施例中,从处理器(例如,对应于驱动器电路374(0)的处理器354(0))接收请求。高电流事件可包含例如由驱动器电路374(0)使用的峰值电流在其期间将超过电流阈值量的操作。在一个实施例中,电流阈值量可配置,且可根据特定存储器装置130的规范进行调整。
在操作510处,跟踪事件的数目。举例来说,处理逻辑可使例如计数器356等计数器递增,从而跟踪在存储器装置130中发生的高电流事件的数目。在一个实施例中,在存储器装置130中发生的高电流事件的数目(如由计数器356的值表示)可与驱动器电路374(0)-374(3)中的任一者相关联。举例来说,每当接收到对存储器装置130的存储器平面372(0)-372(3)中的任一者执行高电流事件的请求时,计数器356可在初始值(例如,零)处开始,可按设定量(例如,一)递增。类似地,一旦高电流事件中的任一者结束(例如,终止或以其它方式结束执行),计数器356就可按设定量(例如,一)递减。
在操作515处,作出确定。举例来说,处理逻辑可确定在存储器装置130中发生的高电流事件的数目是否满足阈值准则。在一个实施例中,如果在存储器装置130中发生的高电流事件的数目(如由计数器356的值表示)大于或等于事件的阈值数目,那么余量管理组件150可确定在存储器装置130中发生的高电流事件的数目满足阈值准则。在一个实施例中,事件的阈值数目可配置,且可根据特定存储器装置130的规范进行调整。
如果在存储器装置130中发生的高电流事件的数目不满足阈值准则,那么在操作520处,提供授权。举例来说,处理逻辑可提供对执行高电流事件的授权。在一个实施例中,余量管理器352可将表示授权的信号发送到处理器354(0),或最初发送执行高电流事件的请求的任何其它处理器。由于在存储器装置130中发生的高电流事件的数目小于事件的阈值数目,因此存储器装置130中存在足以支持所请求的高电流事件的执行而不会对执行产生负面影响的电流余量。
如果在存储器装置130中发生的高电流事件的数目满足阈值准则,那么在操作525处,执行被延迟。举例来说,处理逻辑可使所请求的高电流事件的执行延迟。在一个实施例中,余量管理器352不将表示授权的信号发送到处理器354(0),或最初发送执行高电流事件的请求的任何其它处理器。由于在存储器装置130中发生的高电流事件的数目大于或等于事件的阈值数目,因此存储器装置130中不存在足以支持所请求的高电流事件的执行的电流余量,且可对执行产生负面影响。
在操作530处,作出确定。举例来说,处理逻辑可确定存储器装置130中发生的一或多个高电流事件是否结束,且存储器装置130中发生的高电流事件的数目是否不再满足阈值准则。在实施例中,余量管理组件150可(例如,从处理器354(0)-354(3)中的一者)接收在存储器平面372(0)-372(3)中的对应一者上发生的高电流事件已结束的通知。在另一实施例中,余量管理组件150确定在授予执行高电流事件的许可以来经过所限定时间段之后,高电流事件已结束。在任一情况下,余量管理组件150可响应于确定高电流事件已结束而使计数器356按设定量(例如,一)递减。作为响应,余量管理组件150可确定存储器装置130中发生的高电流事件的数目(如由计数器356的递减值指示)是否不再满足阈值准则(例如,小于事件的阈值数目)。
在操作535处,识别到事件。举例来说,处理逻辑可基于仲裁方案而识别与多个独立平面驱动器电路374(0)-374(3)中的一者相关联的额外高电流事件以供执行。举例来说,额外高电流事件可包含旋转令牌的当前持有者所请求的高电流事件、最近最少接收到请求的待决高电流事件,或具有最高优先级的一些其它高电流事件。在一个实施例中,余量管理组件150可提供对执行高电流事件的授权。在一个实施例中,可重复操作505至535以管理存储器装置130中的额外高电流事件的处理。
图6说明计算机系统600的实例机器,在所述计算机系统内可执行用于使得机器执行本文中所论述方法中的任何一或多种的一组指令。在一些实施例中,计算机系统600可对应于主机系统(例如,图1A的主机系统120),其包含、耦合到或利用存储器子系统(例如,图1A的存储器子系统110)或可用于执行控制器的操作(例如,执行操作系统以执行对应于图1A的余量管理组件150的操作)。在替代实施例中,机器可连接(例如联网)到LAN、内联网、外联网和/或因特网中的其它机器。机器可作为对等(或分布式)网络环境中的对等机器或作为云计算基础设施或环境中的服务器或客户端机器而以客户端-服务器网络环境中的服务器或客户端机器的能力进行操作。
机器可为个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、蜂窝式电话、网络器具、服务器、网络路由器、交换机或桥接器,或能够(依序或以其它方式)执行将由所述机器采取的指定动作的一组指令的任何机器。此外,虽然说明单个机器,但应认为术语“机器”还包含机器的任何集合,所述机器单独地或共同地执行一组(或多组)指令以执行本文中所论述的方法中的任何一或多种。
实例计算机系统600包含经由总线630彼此通信的处理装置602、主存储器604(例如,只读存储器(ROM)、快闪存储器、动态随机存取存储器(DRAM),例如同步DRAM(SDRAM)或Rambus DRAM(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可对应于图1A的存储器子系统110。
在一个实施例中,指令626包含用以实施对应于图1A的余量管理组件150的功能性的指令。尽管机器可读存储媒体624在实例实施例中展示为单个媒体,但术语“机器可读存储媒体”应被认为包含存储一或多组指令的单个媒体或多个媒体。还应认为术语“机器可读存储媒体”包含能够存储或编码供机器执行的一组指令且使得机器执行本公开的方法中的任何一或多种的任何媒体。因此,应认为术语“机器可读存储媒体”包含但不限于固态存储器、光学媒体和磁性媒体。
已依据计算机存储器内的数据位的操作的算法和符号表示呈现了先前详细描述的一些部分。这些算法描述和表示是数据处理领域的技术人员用以将其工作的主旨最有效地传达给本领域的其他技术人员的方式。本文的算法通常是指产生所要结果的操作的自洽序列。操作为要求对物理量进行物理控制的操作。这些量通常但未必呈能够被存储、组合、比较和以其它方式操控的电或磁信号的形式。主要出于通用的原因,已经证明将这些信号称为位、值、元件、符号、字符、术语、数字等有时是便利的。
然而,应牢记,所有这些和类似术语应与适当物理量相关联,且仅为应用于这些量的方便标签。本公开可指将计算机系统的寄存器和存储器内的表示为物理(电子)量的数据操控和变换为计算机系统存储器或寄存器或其它这类信息存储系统内的类似地表示为物理量的其它数据的计算机系统或类似电子计算装置的动作和过程。
本公开还涉及用于执行本文的操作的设备。此设备可出于预期目的而专门构造,或其可包含通过存储在计算机中的计算机程序选择性地激活或重新配置的通用计算机。此类计算机程序可存储在计算机可读存储媒体中,例如但不限于任何类型的盘,包含软盘、光盘、CD-ROM和磁性光盘、只读存储器(ROM)、随机存取存储器(RAM)、EPROM、EEPROM、磁卡或光卡,或适合于存储电子指令的任何类型的媒体,其各自耦合到计算机系统总线。
本文中所呈现的算法和显示本质上不与任何特定计算机或其它设备相关。各种通用系统可与根据本文中的教示的程序一起使用,或其可证明构造用以执行所述方法更加专用的设备是便利的。将如下文描述中所示呈现用于多种这些系统的结构。另外,不参考任何特定编程语言描述本公开。将了解,可使用各种编程语言来实施如本文中所描述的本公开的教示。
本公开可以提供为计算机程序产品或软件,其可包含在其上存储有可用于编程计算机系统(或其它电子装置)以执行根据本公开的过程的指令的机器可读媒体。机器可读媒体包含用于以机器(例如,计算机)可读的形式存储信息的任何机制。在一些实施例中,机器可读(例如计算机可读)媒体包含机器(例如计算机)可读存储媒体,例如只读存储器(“ROM”)、随机存取存储器(“RAM”)、磁盘存储媒体、光学存储媒体、快闪存储器组件等等。
在前述说明书中,已参考本公开的特定实例实施例描述本公开的实施例。将显而易见的是,可在不脱离如所附权利要求书中阐述的本公开的实施例的更广精神和范围的情况下对本发明进行各种修改。因此,说明书和图式应被视为说明性的而非限制性的。
Claims (20)
1.一种存储器装置,其包括:
存储器阵列,其包括多个平面;
多个独立平面驱动器电路,其以操作方式与所述多个平面耦合;及
控制逻辑,其以操作方式与所述多个独立平面驱动器电路耦合,以执行包括以下的操作:
接收所述多个独立平面驱动器电路中的一者对所述多个平面中的对应一者执行高电流事件的请求;
使跟踪在所述存储器装置中发生的高电流事件的数目的计数器递增;
确定在所述存储器装置中发生的高电流事件的所述数目是否满足阈值准则;及
响应于确定在所述存储器装置中发生的高电流事件的所述数目满足所述阈值准则,使得所述高电流事件的执行延迟。
2.根据权利要求1所述的存储器装置,其中所述高电流事件包括由所述多个独立平面驱动器电路中的所述一者使用的峰值电流在其期间将超过电流阈值量的操作。
3.根据权利要求1所述的存储器装置,其中在所述存储器装置中发生的高电流事件的所述数目与所述多个独立平面驱动器电路中的任一者相关联。
4.根据权利要求1所述的存储器装置,其中所述控制逻辑将进一步执行包括以下的操作:
如果在所述存储器装置中发生的高电流事件的所述数目大于或等于事件的阈值数目,那么确定在所述存储器装置中发生的高电流事件的所述数目满足所述阈值准则。
5.根据权利要求4所述的存储器装置,其中事件的所述阈值数目是基于所述多个独立平面驱动器电路中的独立平面驱动器电路的数目。
6.根据权利要求1所述的存储器装置,其中所述控制逻辑将进一步执行包括以下的操作:
确定一或多个高电流事件已结束且在所述存储器装置中发生的高电流事件的所述数目不再满足所述阈值准则;及
基于仲裁方案,识别与所述多个独立平面驱动器电路中的一者相关联的额外高电流事件以供执行。
7.根据权利要求6所述的存储器装置,其中所述仲裁方案包括在所述多个独立平面驱动器电路之中周期性地循环的令牌环计数器。
8.根据权利要求1所述的存储器装置,其中所述控制逻辑将进一步执行包括以下的操作:
响应于确定在所述存储器装置中发生的高电流事件的所述数目不满足所述阈值准则,提供对执行所述高电流事件的授权。
9.一种方法,其包括:
接收存储器装置中的多个独立平面驱动器电路中的一者对所述存储器装置中的多个平面中的对应一者执行高电流事件的请求;
使跟踪在所述存储器装置中发生的高电流事件的数目的计数器递增;
确定在所述存储器装置中发生的高电流事件的所述数目是否满足阈值准则;及
响应于确定在所述存储器装置中发生的高电流事件的所述数目满足所述阈值准则,使得所述高电流事件的执行延迟。
10.根据权利要求9所述的方法,其中所述高电流事件包括由所述多个独立平面驱动器电路中的所述一者使用的峰值电流在其期间将超过电流阈值量的操作。
11.根据权利要求9所述的方法,其中在所述存储器装置中发生的高电流事件的所述数目与所述多个独立平面驱动器电路中的任一者相关联。
12.根据权利要求9所述的方法,其进一步包括:
如果在所述存储器装置中发生的高电流事件的所述数目大于或等于事件的阈值数目,那么确定在所述存储器装置中发生的高电流事件的所述数目满足所述阈值准则。
13.根据权利要求12所述的方法,其中事件的所述阈值数目是基于所述多个独立平面驱动器电路中的独立平面驱动器电路的数目。
14.根据权利要求9所述的方法,其进一步包括:
确定一或多个高电流事件已结束且在所述存储器装置中发生的高电流事件的所述数目不再满足所述阈值准则;及
基于仲裁方案,识别与所述多个独立平面驱动器电路中的一者相关联的额外高电流事件以供执行。
15.根据权利要求14所述的方法,其中所述仲裁方案包括在所述多个独立平面驱动器电路之中周期性地循环的令牌环计数器。
16.根据权利要求9所述的方法,其进一步包括:
响应于确定在所述存储器装置中发生的高电流事件的所述数目不满足所述阈值准则,提供对执行所述高电流事件的授权。
17.一种存储器装置,其包括:
存储器阵列,其包括多个平面;
多个独立平面驱动器电路,其以操作方式与所述多个平面耦合;及
控制逻辑,其以操作方式与所述多个独立平面驱动器电路耦合,以执行包括以下的操作:
接收指向所述存储器装置的多个读取命令;
将所述多个读取命令分配到与所述多个平面耦合的所述多个独立平面驱动器电路;
确定用于所述多个独立平面驱动器电路的仲裁方案;及
基于用于所述多个独立平面驱动器电路的所述仲裁方案而管理对应于所述多个读取命令的高电流事件。
18.根据权利要求17所述的存储器装置,其中所述仲裁方案包括在所述多个独立平面驱动器电路之中周期性地循环的令牌环计数器。
19.根据权利要求17所述的存储器装置,其中管理所述高电流事件包括:
确定在所述存储器装置中发生的高电流事件的数目是否满足阈值准则;及
响应于确定在所述存储器装置中发生的高电流事件的所述数目满足所述阈值准则,使得至少一个高电流事件的执行延迟。
20.根据权利要求17所述的存储器装置,其中管理所述高电流事件包括:
确定在所述存储器装置中发生的高电流事件的数目是否满足阈值准则;及
响应于确定在所述存储器装置中发生的高电流事件的所述数目不满足所述阈值准则,提供对执行所述高电流事件的授权。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163262053P | 2021-10-04 | 2021-10-04 | |
US63/262,053 | 2021-10-04 | ||
US17/886,364 | 2022-08-11 | ||
US17/886,364 US20230105208A1 (en) | 2021-10-04 | 2022-08-11 | Headroom management during parallel plane access in a multi-plane memory device |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115938416A true CN115938416A (zh) | 2023-04-07 |
Family
ID=85571003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211217604.2A Pending CN115938416A (zh) | 2021-10-04 | 2022-09-30 | 多平面存储器装置中并行平面存取期间的余量管理 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230105208A1 (zh) |
CN (1) | CN115938416A (zh) |
DE (1) | DE102022003657A1 (zh) |
-
2022
- 2022-08-11 US US17/886,364 patent/US20230105208A1/en active Pending
- 2022-09-30 CN CN202211217604.2A patent/CN115938416A/zh active Pending
- 2022-10-04 DE DE102022003657.6A patent/DE102022003657A1/de active Pending
Also Published As
Publication number | Publication date |
---|---|
DE102022003657A1 (de) | 2023-04-06 |
US20230105208A1 (en) | 2023-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11113198B2 (en) | Timed data transfer between a host system and a memory sub-system | |
US11782841B2 (en) | Management of programming mode transitions to accommodate a constant size of data transfer between a host system and a memory sub-system | |
US11726690B2 (en) | Independent parallel plane access in a multi-plane memory device | |
US11699491B2 (en) | Double interleaved programming of a memory device in a memory sub-system | |
WO2021179164A1 (en) | Maintaining queues for memory sub-systems | |
US20230060312A1 (en) | Continuous memory programming operations | |
US20230105208A1 (en) | Headroom management during parallel plane access in a multi-plane memory device | |
US11735272B2 (en) | Noise reduction during parallel plane access in a multi-plane memory device | |
US20240143179A1 (en) | Resuming suspended program operations in a memory device | |
US20230350587A1 (en) | Peak power management priority override | |
US20230305616A1 (en) | Peak power management with data window reservation | |
US11886346B2 (en) | Cache read context switching in a memory sub-system | |
US20230195312A1 (en) | Peak power management in a memory device during suspend status | |
US20230393784A1 (en) | Data path sequencing in memory systems | |
US12019550B2 (en) | Concurrent page cache resource access in a multi-plane memory device | |
CN115273925B (zh) | 存储器子系统刷新 | |
US11901014B2 (en) | Partial block handling in a non-volatile memory device | |
US11669456B2 (en) | Cache release command for cache reads in a memory sub-system | |
US20240055058A1 (en) | Scheduled interrupts for peak power management token ring communication | |
US20220391321A1 (en) | Concurrent page cache resource access in a multi-plane memory device | |
US20230059543A1 (en) | Independent plane architecture in a memory device | |
US20230386578A1 (en) | Partial block handling protocol in a non-volatile memory device |
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 |