CN115114197B - 多存储器装置中的战略性电力模式转变 - Google Patents

多存储器装置中的战略性电力模式转变 Download PDF

Info

Publication number
CN115114197B
CN115114197B CN202210272301.4A CN202210272301A CN115114197B CN 115114197 B CN115114197 B CN 115114197B CN 202210272301 A CN202210272301 A CN 202210272301A CN 115114197 B CN115114197 B CN 115114197B
Authority
CN
China
Prior art keywords
volatile memory
power mode
memory
command
mode
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
CN202210272301.4A
Other languages
English (en)
Other versions
CN115114197A (zh
Inventor
S·S·马利克
C·巴拉普拉姆
宋泽尚
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 CN115114197A publication Critical patent/CN115114197A/zh
Application granted granted Critical
Publication of CN115114197B publication Critical patent/CN115114197B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • 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/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
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/128Replacement control using replacement algorithms adapted to multidimensional cache systems, e.g. set-associative, multicache, multiset or multilevel
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0634Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
    • 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
    • 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/30Power supply 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0868Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • G06F2212/1024Latency reduction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1028Power efficiency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/21Employing a record carrier using a specific recording technology
    • G06F2212/214Solid state disk
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/28Using a specific disk cache architecture
    • G06F2212/283Plural cache memories
    • G06F2212/284Plural cache memories being distributed
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/31Providing disk cache in a specific location of a storage system
    • G06F2212/313In storage device
    • 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/7203Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Memory System (AREA)
  • Power Sources (AREA)

Abstract

本申请案针对于多存储器装置中的战略性电力模式转变。控制器可从主机装置接收指示所述控制器将使易失性存储器和非易失性存储器从相应深度睡眠模式转变的命令指示。在第一实例中,所述控制器可通过使所述易失性存储器转变到用于所述易失性存储器的待机电力模式并且使所述非易失性存储器转变到用于所述非易失性存储器的中间电力模式来对所述命令作出响应,所述中间电力模式与用于所述非易失性存储器的待机模式相比消耗较少电力。在第二实例中,所述控制器可通过使所述易失性存储器转变到用于所述易失性存储器的所述待机电力模式并且将所述非易失性存储器维持于所述深度睡眠模式中直到发生例如未命中条件为止,以此对所述命令作出响应。

Description

多存储器装置中的战略性电力模式转变
相关申请案的交叉引用
本专利申请案主张以下申请案的优先权:马利克(MALIK)等人在2022年1月19日提交的标题为“多存储器装置中的战略性电力模式转变(STRATEGIC POWER MODE TRANSITIONIN A MULTI-MEMORY DEVICE)”的美国专利申请案第17/648,398号;和马利克等人在2021年3月18日提交的标题为“多存储器装置中的战略性电力模式转变(STRATEGIC POWER MODETRANSITION IN A MULTI-MEMORY DEVICE)”的美国临时专利申请案第63/162,839号,这两篇申请案均转让给本受让人,并且均以全文引用的方式明确并入本文中。
技术领域
技术领域涉及多存储器装置中的战略性电力模式转变。
背景技术
存储器装置广泛用于将信息存储在例如计算机、无线通信装置、相机、数字显示器等的各种电子装置中。通过将存储器装置内的存储器单元编程为各种状态来存储信息。例如,二进制存储器单元可以被编程为两个支持状态中的一个,经常由逻辑1或逻辑0表示。在一些实例中,单个存储器单元可以支持超过两个状态,其中的任一状态可存储。为了存取所存储信息,组件可以读取或感测存储器装置中的至少一个所存储状态。为了存储信息,组件可在存储器装置中写入状态或对状态进行编程。
存在各种类型的存储器装置和存储器单元,包含磁性硬盘、随机存取存储器(RAM)、只读存储器(ROM)、动态RAM(DRAM)、同步动态RAM(SDRAM)、静态RAM(SRAM)、铁电RAM(FeRAM)、磁性RAM(MRAM)、电阻式RAM(RRAM)、快闪存储器、相变存储器(PCM)、自选存储器、硫属化物存储器技术等。存储器单元可为易失性的或非易失性的。非易失性存储器,例如FeRAM,可维持其所存储的逻辑状态很长一段时间,即使无外部电源存在也是这样。易失性存储器装置(例如DRAM)在与外部电源断开连接时可能丢失其所存储状态。
发明内容
描述一种设备。所述设备可包含非易失性存储器;易失性存储器,其被配置成用作所述非易失性存储器的高速缓存器;和接口控制器,其与所述非易失性存储器和所述易失性存储器耦合。所述接口控制器可为可操作的以致使所述设备进行以下操作:从主机装置接收指示所述设备将从一电力状态转变的命令,在所述电力状态中,所述设备在用于所述易失性存储器的电力模式中操作所述易失性存储器并且在用于所述非易失性存储器的电力模式中操作所述非易失性存储器;至少部分地基于所述命令,使所述易失性存储器从用于所述易失性存储器的所述电力模式转变到用于所述易失性存储器的空闲电力模式,所述空闲电力模式与用于所述易失性存储器的所述电力模式相比消耗更多电力;和至少部分地基于所述命令,使所述非易失性存储器从用于所述非易失性存储器的所述电力模式转变到用于所述非易失性存储器的第一空闲电力模式,所述第一空闲电力模式与用于所述易失性存储器的所述电力模式相比消耗更多电力且与用于所述非易失性存储器的第二空闲电力模式相比消耗较少电力。
描述一种设备。所述设备可包含非易失性存储器;易失性存储器,其被配置成用作所述非易失性存储器的高速缓存器;和接口控制器,其与所述非易失性存储器和所述易失性存储器耦合。所述接口控制器可为可操作的以致使所述设备进行以下操作:从主机装置接收指示所述设备将从一电力状态转变的命令,在所述电力状态中,所述设备在用于所述易失性存储器的电力模式中操作所述易失性存储器并且在用于所述非易失性存储器的电力模式中操作所述非易失性存储器;至少部分地基于所述命令,使所述易失性存储器从用于所述易失性存储器的所述电力模式转变到用于所述易失性存储器的空闲电力模式;和至少部分地基于所述命令,使所述非易失性存储器从用于所述非易失性存储器的所述电力模式转变到用于所述非易失性存储器的空闲电力模式,其中延迟所述转变直到从所述主机装置接收到与存储于所述非易失性存储器而非所述易失性存储器中的数据相关联的存取命令之后为止。
描述一种由存储器装置执行的方法。所述方法可包含从主机装置接收指示所述存储器装置将从一电力状态转变的命令,在所述电力状态中,所述存储器装置在用于易失性存储器的电力模式中操作所述易失性存储器并且在用于非易失性存储器的电力模式中操作所述非易失性存储器;至少部分地基于所述命令,使所述易失性存储器从用于所述易失性存储器的所述电力模式转变到用于所述易失性存储器的空闲电力模式,所述空闲电力模式与用于所述易失性存储器的所述电力模式相比消耗更多电力;和至少部分地基于所述命令,使所述非易失性存储器从用于所述非易失性存储器的所述电力模式转变到用于所述非易失性存储器的第一空闲电力模式,所述第一空闲电力模式与用于所述易失性存储器的所述电力模式相比消耗更多电力且与用于所述非易失性存储器的第二空闲电力模式相比消耗较少电力。
描述一种由存储器装置执行的方法。所述方法可包含从主机装置接收指示所述存储器装置将从一电力状态转变的命令,在所述电力状态中,所述存储器装置在用于易失性存储器的电力模式中操作所述易失性存储器并且在用于非易失性存储器的电力模式中操作所述非易失性存储器;至少部分地基于所述命令,使所述易失性存储器从用于所述易失性存储器的所述电力模式转变到用于所述易失性存储器的空闲电力模式;和至少部分地基于所述命令,使所述非易失性存储器从用于所述非易失性存储器的所述电力模式转变到用于所述非易失性存储器的空闲电力模式,其中延迟所述转变直到从所述主机装置接收到与存储于所述非易失性存储器而非所述易失性存储器中的数据相关联的存取命令之后为止。
附图说明
图1说明根据本文所公开的实例的支持多存储器装置中的战略性电力模式转变的系统的实例。
图2说明根据本文所公开的实例的支持多存储器装置中的战略性电力模式转变的存储器子系统的实例。
图3说明根据本文所公开的实例的支持多存储器装置中的战略性电力模式转变的系统的实例。
图4说明根据本文所公开的实例的支持多存储器装置中的战略性电力模式转变的过程流的实例。
图5说明根据本文所公开的实例的支持多存储器装置中的战略性电力模式转变的过程流的实例。
图6示出根据本文所公开的实例的支持多存储器装置中的战略性电力模式转变的存储器装置的框图。
图7和8示出说明根据本文所公开的实例的支持多存储器装置中的战略性电力模式转变的一或多种方法的流程图。
具体实施方式
例如电子装置的装置可包含非易失性存储器(例如,用于存储其它操作当中的信息的主存储器)和可用作非易失性存储器的高速缓存器的易失性存储器(例如,辅助存储器)。这类配置可允许装置得益于非易失性存储器的优点(例如,非易失性的永久性存储、高存储容量、低电力消耗),同时通过易失性存储器维持与主机装置的兼容性以及其它方面。
易失性存储器和非易失性存储器可各自支持相应深度睡眠模式,所述相应深度睡眠模式相对于存储器支持的其它模式可消耗较少电力(且在一些实例中,消耗最少电量)并且可不同于停电模式。主机装置可使用命令(例如电力模式命令,如深度睡眠退出命令)发指令给装置使易失性存储器和非易失性存储器从相应深度睡眠模式转变到一或多个其它较高电力模式。响应于深度睡眠退出命令,所述装置可使易失性存储器和非易失性存储器转变到与深度睡眠模式相比消耗更多电力的相应待机电力模式。但是非易失性存储器到待机电力模式的转变可能过早(例如,相对于存取非易失性存储器),这可引起多余的电力消耗,以及其它缺点。
根据本文中所描述的技术,装置可通过延迟非易失性存储器从深度睡眠模式到另一模式,例如待机电力模式或另一较高电力模式的转变直到发生一或多个条件,例如直到在接收到深度睡眠退出命令之后发生未命中为止,以此实现电力节约,以及其它优点。在第一实例(例如,与转变模式1有关)中,装置可通过使非易失性存储器转变到与待机电力模式相比消耗较少电力的中间电力模式来对深度睡眠退出命令作出响应。在第二实例(例如,与转变模式2有关)中,所述装置可通过将非易失性存储器保持于深度睡眠模式中直到发生未命中来对深度睡眠退出命令作出响应,在发生未命中时,装置可使非易失性存储器转变到较高电力模式(例如,中间电力模式、待机电力模式、活动模式)。因此,装置可战略上使非易失性存储器从深度睡眠模式转变到另一模式,这可允许装置节约电力并且更动态地进行操作,还有其它优点。
首先在如参考图1和2所描述的系统和存储器子系统的上下文中描述本公开的特征。在如参考图3所描述的装置和如参考图4和5所描述的过程流的上下文中描述本公开的特征。参考涉及如参考图6-8所描述的战略性电力模式转变的设备图和流程图进一步说明且描述本公开的这些和其它特征。
图1说明根据本文所公开的实例的支持多存储器装置中的战略性电力模式转变的系统100的实例。系统100可以包含在例如计算机或电话的电子装置中。系统100可包含主机装置105和存储器子系统110。主机装置105可为与接口控制器115介接的处理器或芯片上系统(SoC)以及包含系统100的电子装置的其它组件。存储器子系统110可存储用于主机装置105的电子信息(例如,数字信息、数据)并且提供对所述电子信息的存取。存储器子系统110可包含接口控制器115、易失性存储器120和非易失性存储器125。在一些实例中,接口控制器115、易失性存储器120和非易失性存储器125可包含在例如封装130的同一物理封装中。然而,接口控制器115、易失性存储器120和非易失性存储器125可安置于不同的相应裸片(例如,硅裸片)上。
系统100中的装置可以通过各种导线(例如,迹线、印刷电路板(PCB)布线、再分布层(RDL)布线)耦合,所述导线可以实现装置之间的信息(例如,命令、地址、数据)传送。导线可以构成信道、数据总线、命令总线、地址总线等。
存储器子系统110可被配置成提供非易失性存储器125的益处同时维持与支持用于不同的类型的存储器的协议的主机装置105的兼容性,所述存储器例如易失性存储器120,以及其它实例。举例来说,非易失性存储器125可以提供(例如,相对于易失性存储器120的)益处,例如非易失性、较高容量,或较低电力消耗。但主机装置105可为与非易失性存储器125的各种方面不兼容的或低效配置的。举例来说,主机装置105可支持与非易失性存储器125不兼容的电压、存取时延、协议、页大小等。为了补偿主机装置105与非易失性存储器125之间的不兼容性,存储器子系统110可被配置成具有易失性存储器120,其可与主机装置105兼容且充当非易失性存储器125的高速缓存器。因此,主机装置105可使用易失性存储器120所支持的协议同时受益于非易失性存储器125的优点。
在一些实例中,系统100可以包含在计算装置、电子装置、移动计算装置或无线装置中,或与计算装置、电子装置、移动计算装置或无线装置耦合。装置可为便携式电子装置。举例来说,装置可以是计算机、手提式计算机、平板计算机、智能手机、蜂窝电话、可穿戴装置、因特网连接装置等。在一些实例中,装置可被配置成用于经由基站或存取点的双向无线通信。在一些实例中,与系统100相关联的装置能够进行机器类型通信(MTC)、机器对机器(M2M)通信或装置对装置(D2D)通信。在一些实例中,与系统100相关联的装置可称作用户设备(UE)、站(STA)、移动终端等。
主机装置105可被配置成使用接口控制器115所支持的第一协议(例如,低电力双数据速率(LPDDR))与存储器子系统110介接。因此,在一些实例中,主机装置105可与接口控制器115直接介接并且与非易失性存储器125和易失性存储器120间接介接。在替代性实例中,主机装置105可与非易失性存储器125和易失性存储器120直接介接。主机装置105还可以与包含系统100的电子装置的其它组件介接。主机装置105可以是或包含SoC、通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件,或这些类型的组件的组合。在一些实例中,主机装置105可以被称作主机。
接口控制器115可被配置成(例如,基于或响应于由主机装置105发出的一或多个命令或请求)代表主机装置105与易失性存储器120和非易失性存储器125介接。举例来说,接口控制器115可以代表主机装置105促进易失性存储器120和非易失性存储器125中的数据的检索和存储。因此,接口控制器115可促进各种子组件之间的数据传送,如在主机装置105、易失性存储器120或非易失性存储器125中的至少一些之间的数据传送。接口控制器115可使用第一协议与主机装置105和易失性存储器120介接,且可使用由非易失性存储器125支持的第二协议与非易失性存储器125介接。
非易失性存储器125可被配置成存储数字信息(例如,数据)用于包含系统100的电子装置。因此,非易失性存储器125可包含一或多个存储器单元阵列以及被配置成操作存储器单元阵列的本地存储器控制器。在一些实例中,存储器单元可为或包含FeRAM单元(例如,非易失性存储器125可为FeRAM)。非易失性存储器125可配置成使用不同于在接口控制器115与主机装置105之间使用的第一协议的第二协议来与接口控制器115介接。在一些实例中,非易失性存储器125可能比易失性存储器120具有更长的存取操作时延。举例来说,从非易失性存储器125检索数据与从易失性存储器120检索数据相比可能需要更久。类似地,将数据写入到非易失性存储器125可能比将数据写入到易失性存储器120花费更长的时间。在一些实例中,如本文中所描述,非易失性存储器125可能比易失性存储器120具有更小页大小。
易失性存储器120可被配置成用作用于一或多个组件(例如,非易失性存储器125)的高速缓存器。举例来说,易失性存储器120可存储用于包含系统100的电子装置的信息(例如,数据)。因此,易失性存储器120可以包含一或多个存储器单元阵列以及被配置成操作存储器单元阵列的本地存储器控制器。在一些实例中,存储器单元可为或包含DRAM单元(例如,易失性存储器可为DRAM)。非易失性存储器125可以被配置成使用在接口控制器115与主机装置105之间使用的第一协议与接口控制器115介接。
在一些实例中,易失性存储器120可能比非易失性存储器125具有更短的存取操作时延。举例来说,从易失性存储器120检索数据与从非易失性存储器125检索数据相比可能需要较少时间。类似地,将数据写入到易失性存储器120可能比将数据写入到非易失性存储器125花费更少的时间。在一些实例中,易失性存储器120可能比非易失性存储器125具有更大页大小。举例来说,易失性存储器120的页大小可为2千字节(2kB)且非易失性存储器125的页大小可为64字节(64B)或128字节(128B)。
虽然非易失性存储器125可以是比易失性存储器120更高密度的存储器,但存取非易失性存储器125可能要比存取易失性存储器120花费更长的时间(例如,由于不同架构和协议,以及其它原因)。因此,将易失性存储器120用作高速缓存器可减少系统100中的时延。作为实例,通过从易失性存储器120而不是从非易失性存储器125检索数据,可以相对快速地满足对来自主机装置105的数据的存取请求。为了促进易失性存储器120作为高速缓存器的操作,接口控制器115可包含多个缓冲器135。缓冲器135可以与接口控制器115安置在同一裸片上并且可被配置成临时存储数据以用于在一或多个存取操作(例如,存储和检索操作)期间在易失性存储器120、非易失性存储器125或主机装置105(或其任何组合)之间传送。
存取操作也可称作存取过程或存取程序,且可涉及由存储器子系统110的组件中的一或多个执行的一或多个子操作。存取操作的实例可包含:存储操作,其中将由主机装置105提供的数据存储在(例如,写入到)易失性存储器120或非易失性存储器125(或两者)中;以及检索操作,其中从易失性存储器120或非易失性存储器125获得(例如,读取)由主机装置105请求的数据且将其返回到主机装置105。
为了将数据存储在存储器子系统110中,主机装置105可通过将存储命令(也被称为存储请求、写入命令,或写入请求)发射到接口控制器115来发起存储操作(或“存储过程”)。存储命令可以非易失性存储器125中的非易失性存储器单元集为目标。在一些实例中,存储器单元集也可以被称作存储器的一部分。主机装置105还可将待写入到非易失性存储器单元集的数据提供到接口控制器115。接口控制器115可将数据暂时存储在缓冲器135-a中。在将数据存储在缓冲器135-a中之后,接口控制器115可以将数据从缓冲器135-a传送到易失性存储器120或非易失性存储器125或这两者。在直写模式中,接口控制器115可以将数据传送到易失性存储器120和非易失性存储器125这两者。在写回模式中,接口控制器115可仅将数据传送到易失性存储器120(其中在稍后的逐出过程期间将数据传送到非易失性存储器125)。
在任一模式中,接口控制器115可以标识易失性存储器120中的一或多个易失性存储器单元的适当集,以用于存储与存储命令相关联的数据。为此,接口控制器115可实施集关联映射,其中可将非易失性存储器125中的一或多个非易失性存储器单元的每个集映射到易失性存储器120中的易失性存储器单元的多个集(例如,行)。举例来说,接口控制器115可实施n向关联映射,这允许来自非易失性存储器单元的集的数据将被存储在易失性存储器120中的易失性存储器单元的n个集中的一个中。因此,接口控制器115可通过参考与非易失性存储器单元的目标集相关联的易失性存储器单元的n个集来管理易失性存储器120作为非易失性存储器125的高速缓存器。如本文中所使用,除非以其它方式描述或提及,否则对象的“集”可以指对象中的一或多个。虽然参考集相联映射进行描述,但接口控制器115可以通过实施一或多种其它类型的映射(例如直接映射或相联映射,以及其它实例)来管理易失性存储器120作为高速缓冲存储器。
在确定哪n个易失性存储器单元集与目标非易失性存储器单元集相关联之后,接口控制器115可以将数据存储在n个易失性存储器单元集中的一或多个中。因此,通过从较低时延易失性存储器120检索数据而不是从较高时延非易失性存储器125检索数据,可高效地满足来自主机装置105的针对数据的后续(例如,随后的)检索命令。接口控制器115可基于与存储在易失性存储器120的n个集中的数据相关联的一或多个参数(如数据的有效性、新旧或修改状态)或响应于所述一或多个参数来确定易失性存储器120的n个集中的哪一个存储数据。因此,通过主机装置105的存储命令可以通过将数据存储在易失性存储器120中而完全地(例如,在写回模式中)或部分地(例如,在直写模式中)得到满足。为了跟踪存储在易失性存储器120中的数据,接口控制器115可以为易失性存储器单元的一或多个集(例如,为易失性存储器单元的每个集)存储标签地址,所述标签地址向非易失性存储器单元指示存储在易失性存储器单元的给定集中的数据。
为了从存储器子系统110检索数据,主机装置105可通过将检索命令(也被称为检索请求、读取命令或读取请求)发射到接口控制器115来发起检索操作(也被称为检索过程)。检索命令可以非易失性存储器125中的一或多个非易失性存储器单元的集为目标。在接收到检索命令之后,接口控制器115可在易失性存储器120中检查所请求的数据。举例来说,接口控制器115可在与非易失性存储器单元的目标集相关联的易失性存储器单元的n个集中检查所请求数据。如果易失性存储器单元的n个集中的一个存储所请求的数据(例如,为目标非易失性存储器单元集存储数据),那么接口控制器115可将数据从易失性存储器120传送到缓冲器135-a(例如,响应于确定易失性存储器单元的n个集中的一个存储所请求的数据,如图4和5中所描述)使得其可以发射到主机装置105。
一般来说,术语“命中”可用于指代其中易失性存储器120存储被主机装置105定为目标的数据的情境。如果一或多个易失性存储器单元的n个集不存储所请求的数据(例如,易失性存储器单元的n个集存储用于除目标非易失性存储器单元集以外的非易失性存储器单元集的数据),那么接口控制器115可将所请求的数据从非易失性存储器125传送到缓冲器135-a(例如,响应于确定易失性存储器单元的n个集不存储所请求的数据,如参考图4和5所描述)以使得其可发射到主机装置105。一般来说,术语“未命中”可用于指代其中易失性存储器120不存储被主机装置105定为目标的数据的情境。
在未命中情境中,在将所请求的数据传送到缓冲器135-a之后,接口控制器115可将所请求的数据从缓冲器135-a传送到易失性存储器120,使得对数据的后续读取请求可以通过易失性存储器120而不是非易失性存储器125得到满足。举例来说,接口控制器115可在与非易失性存储器单元的目标集相关联的易失性存储器单元的n个集中的一个中存储数据。但易失性存储器单元的n个集可能已为非易失性存储器单元的其它集存储数据。因此,为了保留此其它数据,接口控制器115可以将其它数据传送到缓冲器135-b以便所述数据可以传送到非易失性存储器125以用于存储。这种过程可以被称作“逐出”,并且从易失性存储器120传送到缓冲器135-b的数据可以被称作“受害”数据。
在一些情况下,接口控制器115可将受害数据的子集从缓冲器135-b传送到非易失性存储器125。举例来说,接口控制器115可以传送自从数据最初存储在非易失性存储器125中以来已改变的一或多个受害数据子集。在易失性存储器120与非易失性存储器125之间不一致的数据(例如,由于在一个存储器中的更新而不是在其它存储器中的更新)在一些情况下可以被称作“经修改”或“脏”数据。在一些实例中(例如,在接口控制器在如写回模式的一个模式中操作时),脏数据可以是存在于易失性存储器120中但不存在于非易失性存储器125中的数据。
因此,如果易失性存储器120已满,那么接口控制器115可执行逐出程序以将来自易失性存储器120的数据保存到非易失性存储器125(例如,以为易失性存储器120中的新数据腾出空间)。在一些实例中,接口控制器115可执行在其中将来自非易失性存储器125的数据保存到易失性存储器120的“填充”程序。接口控制器115可在未命中的情况下执行填充程序(例如,以用相关数据填充易失性存储器120)。举例来说,在当来自主机装置105的读取命令以为存储于非易失性存储器125而非易失性存储器120中的数据目标时发生的读取未命中的情况下,接口控制器115可(从非易失性存储器125)检索被读取命令请求的数据并且除了将数据返回给主机装置之外,还将数据存储于易失性存储器120中(例如,使得可在未来快速检索数据)。
因此,存储器子系统110可取决于来自主机装置105的请求(例如,读取命令、写入命令)的命中或未命中状态,使用易失性存储器120或非易失性存储器125满足(或“实现”)所述请求。举例来说,在读取未命中的情况下,非易失性存储器125可满足来自主机装置105的读取命令,这意味着从主机装置105返回的数据可来源于非易失性存储器125。并且在读取命中的情况下,易失性存储器120可满足来自主机装置105的读取命令,这意味着从主机装置105返回的数据可来源于易失性存储器120。在一些实例中,命中与未命中的比率(“命中-未命中比率”)可相对高(例如,命中百分比(或“命中率”)可为大约85%,而未命中百分比(或“未命中率”)可为大约15%)。
易失性存储器120和非易失性存储器125可支持提供不同级的功能性、消耗不同的电量或具有不同退出时延以及其它差异的各种电力模式。为了在本文中区分易失性存储器120的电力模式与非易失性存储器125的电力模式,关于易失性存储器120的电力模式之前可加上字母‘VM’(针对易失性存储器)且关于非易失性存储器125的电力模式之前可加上字母‘NVM’(针对非易失性存储器)。虽然描述用于易失性存储器120和非易失性存储器125的各种电力模式,但涵盖其它电力模式,且在一些实例中,描述的用于易失性存储器120的各种电力模式还可以适用于非易失性存储器125,且反之亦然。
易失性存储器120可支持VM活动模式、一或多个VM空闲模式和VM深度睡眠模式。VM活动模式可指其中易失性存储器120响应于来自主机装置105的功能命令而执行命令的模式。VM空闲模式可为其中易失性存储器120部分地断电并且例如正在等待来自主机装置105的功能命令的模式。在一些实例中,VM空闲模式可被称为VM待机电力模式或IDD2N模式。VM深度睡眠模式可指其中易失性存储器120几乎或近似而非完全断电的模式。在一些实例中,易失性存储器120的VM深度睡眠模式可被称为自刷新(SR)模式。VM活动模式与VM待机电力模式相比可消耗更多电力,所述VM待机电力模式与VM深度睡眠模式相比可消耗更多电力,所述VM深度睡眠模式相对于易失性存储器120支持的其它电力模式消耗最少电量。
VM电力模式可具有相关联退出时延,所述相关联退出时延是指易失性存储器120从所述VM电力模式转变到较高VM电力模式(例如,VM活动模式)所花费的时间量。VM待机电力模式与VM深度睡眠模式相比可具有较短退出时延,所述VM深度睡眠模式相对于易失性存储器120支持的其它电力模式可具有最长退出时延。VM电力模式的退出时延可随将在转变期间通电的组件的类型、将在转变期间通电的组件的数量或这两者以及其它因素而变。
非易失性存储器125可支持NVM活动模式、一或多个NVM空闲模式和NVM深度睡眠模式。NVM活动模式可指其中非易失性存储器125响应于来自主机装置105的功能命令而执行命令的模式。NVM空闲模式可为其中非易失性存储器125部分地断电并且正在等待来自主机装置105的功能命令的模式。在一些实例中,非易失性存储器125可支持多个NVM空闲电力模式,例如第一NVM空闲电力模式和第二NVM空闲电力模式。为易于区分,第一NVM空闲电力模式可被称为NVM待机电力模式(或“PRE-STDBY”)且第二NVM空闲电力模式可被称为NVM中间电力模式(或“PRE-PD”)。NVM深度睡眠模式可指其中非易失性存储器125存储器几乎完全断电的模式。在一些实例中,易失性存储器120的NVM深度睡眠模式可被称为PDN2模式。NVM活动模式与NVM待机电力模式相比可消耗更多电力,所述NVM待机电力模式与NVM中间电力模式相比可消耗更多电力,所述NVM中间电力模式与NVM深度睡眠模式相比可消耗更多电力,所述NVM深度睡眠模式相对于非易失性存储器125支持的其它电力模式可消耗最少电量。
NVM电力模式可具有相关联退出时延,所述相关联退出时延是指非易失性存储器125从所述NVM电力模式转变到较高NVM电力模式(例如,NVM活动模式)花费的时间量。NVM待机电力模式与NVM中间电力模式相比可具有较短退出时延,所述NVM中间电力模式与NVM深度睡眠模式相比可具有较短退出时延,所述NVM深度睡眠模式相对于非易失性存储器125支持的其它电力模式可具有最长退出时延。NVM电力模式的退出时延可随将在转变期间通电的组件的类型、将在转变期间通电的组件的数量或这两者以及其它因素而变。
存储器子系统110可从主机装置105接收电力模式命令。电力模式命令可指指示电力模式(例如,将使用的电力模式、将退出的电力模式)的命令。电力模式命令可不同于功能命令(也可被称作“存取命令”),所述功能命令是指致使存取存储器的命令,例如激活命令、预充电命令、读取命令、写入命令等等。
在一些实例中,存储器子系统110可从主机装置105接收命令,例如深度睡眠退出命令。深度睡眠退出命令可为电力模式命令的实例并且可指示存储器子系统110将使易失性存储器120和非易失性存储器125从相应深度睡眠模式转变。在一些系统中,存储器子系统110可通过使易失性存储器120转变到VM待机电力模式并且使非易失性存储器125转变到NVM待机电力模式来对深度睡眠退出命令作出响应,所述NVM待机电力模式可为非易失性存储器125的相当于VM待机电力模式的电力模式。但如果存储器子系统110在未命中发生之前不存取非易失性存储器125(这归因于存储器子系统110的高命中率而可能花费不可忽略的时间量),那么在NVM待机电力模式中操作非易失性存储器125可浪费电力。
根据本文中所描述的技术,存储器子系统110可通过战略上使非易失性存储器125从NVM深度睡眠模式转变,节约电力以及其它优点。在转变模式1中,存储器子系统110可通过响应于深度休眠命令而使非易失性存储器125转变到NVM中间电力模式(其与NVM待机电力模式相比消耗较少电力),以此节约电力。在转变模式2中,存储器子系统110可通过在接收到深度睡眠退出命令之后将非易失性存储器125保持于NVM深度睡眠模式中直到发生未命中(此时,存储器子系统110可使非易失性存储器125转变到较高NVM电力模式)为止,以此节约电力。在一些实例中,存储器子系统110可例如基于存储器子系统110的电量、主机装置105的时延容限或其它度量动态选择转变模式1或转变模式2。虽然参考不同类型的存储器进行描述,但可针对相同类型的不同存储器(例如,多个易失性存储器、多个非易失性存储器)实施本文中所描述的技术,例如使第一类型的第一存储器转变到一个模式并且使第二类型的第二存储器转变到另一模式。
系统100可包含支持如本文中所描述的电力模式转变的任何数量的非暂时性计算机可读媒体。举例来说,主机装置105、接口控制器115、易失性存储器120或非易失性存储器125可包含或可以其它方式存取一或多个非暂时性计算机可读媒体,所述非暂时性计算机可读媒体存储用于执行本文中属于主机装置105、接口控制器115、易失性存储器120或非易失性存储器125的功能的指令(例如,固件)。举例来说,此类指令在由主机装置105(例如,主机装置控制器)、接口控制器115、易失性存储器120(例如,本地控制器)或非易失性存储器125(例如,本地控制器)执行时可使主机装置105、接口控制器115、易失性存储器120或非易失性存储器125执行本文中所描述的相关联功能。
图2说明根据本文所公开的实例的支持多存储器装置中的战略性电力模式转变的存储器子系统200的实例。存储器子系统200可以是参考图1所描述的存储器子系统110的实例。相应地,存储器子系统200可与参考图1所描述的主机装置交互。存储器子系统200可包含接口控制器202、易失性存储器204和非易失性存储器206,其可分别为参考图1所描述的接口控制器115、易失性存储器120和非易失性存储器125的实例。因此,接口控制器202可代表参考图1所描述的主机装置与易失性存储器204和非易失性存储器206介接。举例来说,接口控制器202可将易失性存储器204操作为非易失性存储器206的高速缓存器。将易失性存储器204操作为高速缓存器可允许子系统提供非易失性存储器206的益处(例如,非易失性、高密度存储),同时维持与支持不同于非易失性存储器206的协议的主机装置的兼容性。
在图2中,组件之间的虚线表示数据流或数据通信路径,组件之间的实线表示命令流或命令的通信路径。在一些情况下,存储器子系统200是可包含在电子装置中的多个类似或相同子系统中的一个。每个子系统可以称为切片,并且在一些实例中,可与主机装置的相应信道相关联。
非易失性存储器206可配置成用作主机装置的主存储器(例如,用于长期数据存储的存储器)。在一些情况下,非易失性存储器206可包含一或多个FeRAM单元阵列。每个FeRAM单元可包含选择组件和铁电电容器,并且可通过向例如字线、板线和数字线的一或多个存取线施加适当电压来存取。在一些实例中,耦合到经激活字线的FeRAM单元子集可以例如并行或同时进行感测,而不必感测与经激活字线耦合的所有FeRAM单元。相应地,FeRAM阵列的页大小可不同于(例如,小于)DRAM页大小。在存储器装置的上下文中,页可以指行(例如,具有共同行地址的一组存储器单元)中的存储器单元,并且页大小可以指一行中的存储器单元或列地址的数量或在存取操作期间存取的列地址的数量。替代地,页大小可以指通过各个接口处理的数据大小或一行能够存储的数据量。在一些情况下,不同存储器装置类型可具有不同页大小。举例来说,DRAM页大小(例如,2kB)可以是非易失性存储器(例如,FeRAM)页大小(例如,64B)的超集。
FeRAM阵列的较小页大小可提供各种效率益处,因为相比于单独的DRAM单元,单独的FeRAM单元可能需要更多电力来读取或写入。举例来说,FeRAM阵列的较小页大小可促进有效能量使用,因为在相关联的信息变化较小时,可以激活较小数量的FeRAM单元。在一些实例中,FeRAM单元阵列的页大小可以变化,例如动态地变化(例如,在FeRAM单元阵列的操作期间),这取决于使用FeRAM操作的数据和命令的性质。
虽然单独的FeRAM单元可能比单独的DRAM单元需要更多的电力来读取或写入,但FeRAM单元可在没有外部电源的情况下将其存储的逻辑状态维持很长一段时间,因为FeRAM单元中的铁电材料可在没有电场的情况下维持非零电极化。因此,相比于易失性存储器单元(例如,易失性存储器204中的DRAM单元),在非易失性存储器206中包含FeRAM阵列可提供电力和效率益处,因为它可以减少或消除执行刷新操作的约束条件。
易失性存储器204可配置成用作非易失性存储器206的高速缓存。在一些情况下,易失性存储器204可包含一或多个DRAM单元阵列。每个DRAM单元可包含电容器,所述电容器包含存储表示可编程状态的电荷的介电材料。易失性存储器204的存储器单元可在逻辑上分组或布置成一或多个存储器组(在本文中称为“组”)。举例来说,易失性存储器204可包含十六个组。一个组的存储器单元可布置成具有相交的列和行的网格或阵列,并且每个存储器单元可以通过向所述存储器单元的数字线(例如,列线)和字线(例如,行线)施加适当电压来存取或刷新。一个组中的行可称为页,并且页大小可以指一行中列或存储器单元的数量(以及因此一个行能够存储的数据量)。如所提到,易失性存储器204的页大小可不同于(例如,大于)非易失性存储器206的页大小。
接口控制器202可包含用于与其它装置介接(例如,通信)的各个电路,所述其它装置例如主机装置、易失性存储器204和非易失性存储器206。举例来说,接口控制器202可包含数据(DA)总线接口208、命令和地址(C/A)总线接口210、数据总线接口212、C/A总线接口214、数据总线接口216和C/A总线接口264。数据总线接口可使用一或多个通信协议支持信息通信。举例来说,数据总线接口208、C/A总线接口210、数据总线接口216和C/A总线接口264可支持使用第一协议(例如,LPDDR信令)传送的信息,而数据总线接口212和C/A总线接口214可支持使用第二协议传送的信息。因此,与接口控制器202耦合的各个总线接口可支持不同数据量或数据速率。
数据总线接口208可与数据总线260、事务总线222和缓冲器电路系统224耦合。数据总线接口208可配置成通过数据总线260发射和接收数据,并通过事务总线222发射和接收控制信息(例如,确认/否定确认)或元数据。数据总线接口208还可配置成在数据总线260和缓冲器电路系统224之间传送数据。数据总线260和事务总线222可与接口控制器202和主机装置耦合,使得在接口控制器202和主机装置之间建立导电路径。在一些实例中,事务总线222的引脚可以称为数据掩码反转(DMI)引脚。尽管示出了一个数据总线260和一个事务总线222,可存在任何数量的数据总线260和任何数量的事务总线222与一或多个数据总线接口208耦合。
C/A总线接口210可与C/A总线226和解码器228耦合。C/A总线接口210可配置成通过C/A总线226发射和接收命令和地址。通过C/A总线226接收的命令和地址可与通过数据总线260接收或发射的数据相关联。C/A总线接口210还可配置成向解码器228发射命令和地址,使得解码器228可以将命令解码,并将经解码命令和相关联的地址转发到命令电路系统230。
数据总线接口212可与数据总线232和存储器接口电路系统234耦合。数据总线接口212可配置成通过数据总线232发射和接收数据,所述数据总线可与非易失性存储器206耦合。数据总线接口212还可配置成在数据总线232和存储器接口电路系统234之间传送数据。C/A总线接口214可与C/A总线236和存储器接口电路系统234耦合。C/A总线接口214可配置成从存储器接口电路系统234接收命令和地址,并通过C/A总线236将命令所述地址转发到非易失性存储器206(例如,转发到非易失性存储器206的本地控制器)。通过C/A总线236发射的命令和地址可与通过数据总线232接收或发射的数据相关联。数据总线232和C/A总线236可与接口控制器202和非易失性存储器206耦合,使得在接口控制器202和非易失性存储器206之间建立导电路径。
数据总线接口216可与数据总线238(例如,数据总线238-a、数据总线238-b)和存储器接口电路系统240耦合。数据总线接口216可配置成通过数据总线238发射和接收数据,所述数据总线可与易失性存储器204耦合。数据总线接口216还可配置成在数据总线238和存储器接口电路系统240之间传送数据。C/A总线接口264可与C/A总线242和存储器接口电路系统240耦合。C/A总线接口264可配置成从存储器接口电路系统240接收命令和地址,并通过C/A总线242将命令和地址转发到易失性存储器204(例如,转发到易失性存储器204的本地控制器)。通过C/A总线242发射的命令和地址可与通过数据总线238接收或发射的数据相关联。数据总线238和C/A总线242可与接口控制器202和易失性存储器204耦合,使得在接口控制器202和易失性存储器204之间建立导电路径。
除了用于与经耦合装置通信的总线和总线接口之外,接口控制器202可包含用于将非易失性存储器206操作为主存储器并将易失性存储器204操作为高速缓存的电路系统。举例来说,接口控制器202可包含命令电路系统230、缓冲器电路系统224、高速缓存管理电路系统244、一或多个引擎246和一或多个调度器248。
命令电路系统230可与缓冲器电路系统224、解码器228、高速缓存管理电路系统244和调度器248以及其它组件耦合。命令电路系统230可配置成从解码器228接收命令和地址信息,并将命令和地址信息存储在队列250中。命令电路系统230可包含处理(例如,来自主机装置的)命令信息和来自其它组件(例如,高速缓存管理电路系统244、缓冲器电路系统224)的存储信息并使用所述信息生成调度器248的一或多个命令的逻辑262。命令电路系统230还可配置成将地址信息(例如,地址位)传送到高速缓存管理电路系统244。在一些实例中,逻辑262可以是配置成用作有限状态机(FSM)的电路。
缓冲器电路系统224可与数据总线接口208、命令电路系统230、存储器接口电路系统234和存储器接口电路系统234耦合。缓冲器电路系统224可包含用于易失性存储器204中的至少一些组(如果不是每一组的话)的一组一或多个缓冲器电路。缓冲器电路系统224还可包含用于存取缓冲器电路的组件(例如,存储器控制器)。在一个实例中,易失性存储器204可包含十六个组,且缓冲器电路系统224可包含十六组缓冲器电路。每一组缓冲器电路可配置成存储来自或用于易失性存储器204的相应组的数据(或这两者)。作为实例,用于组0(BK0)的缓冲器电路组可配置成存储来自或用于易失性存储器204的第一组的数据(或这两者),并且组15(BK15)的缓冲器电路可配置成存储来自或用于易失性存储器204的第十六组的数据(或这两者)。
缓冲器电路系统224中的每一组缓冲器电路可包含一对缓冲器。所述一对缓冲器可包含:一个缓冲器(例如,打开页数据(OPD)缓冲器),其配置成存储主机装置的存取命令(例如,写入命令或读取命令)所针对的数据;另一缓冲器(例如,受害者页数据(VPD)缓冲器),其配置成存储用于由存取命令产生的收回过程的数据。举例来说,用于BK0的缓冲器电路组可包含缓冲器218和缓冲器220,其可分别为缓冲器135-a和135-b的实例。缓冲器218可配置成存储主机装置的存取命令所针对的BK0数据。并且,缓冲器220可配置成存储作为存取命令所触发的收回过程的部分而从BK0传送的数据。缓冲器电路组中的每个缓冲器可配置有对应于易失性存储器204的页大小的大小(例如,存储容量)。举例来说,如果易失性存储器204的页大小是2kB,那么每个缓冲器的大小可以是2kB。因此,在一些实例中,缓冲器的大小可等于易失性存储器204的页大小。
高速缓存管理电路系统244可与命令电路系统230、引擎246和调度器248以及其它组件耦合。高速缓存管理电路系统244可包含用于易失性存储器的一或多个组(例如,每个组)的高速缓存管理电路组。作为实例,高速缓存管理电路系统244可包含用于BK0到BK15的十六个高速缓存管理电路组。每个高速缓存管理电路组可包含两个可配置成存储易失性存储器204的存储信息的存储器阵列。作为实例,用于BK0的高速缓存管理电路组可包含存储器阵列252(例如,高速缓存DRAM(CDRAM)标记阵列(CDT-TA))和存储器阵列254(例如,CDRAM有效(CDT-V)阵列),其可配置成存储BK0的存储信息。在一些实例中,存储器阵列也可称为阵列或缓冲器。在一些情况下,存储器阵列可以是或包含易失性存储器单元,例如静态RAM(SRAM)单元。
存储信息(或“元数据”)可包含与易失性存储器204相关联的内容信息、有效性信息或脏信息(或其任何组合),以及其它实例。内容信息(也可称为标签信息或地址信息)可指示哪一数据存储在一组易失性存储器单元中。举例来说,易失性存储器204的一行的内容信息(例如,标签地址)可指示哪一组一或多个非易失性存储器单元当前具有数据存储在所述行中。如所提到,有效性信息可指示存储在一组易失性存储器单元中的数据是不是实际数据(例如,具有预期次序或形式的数据)或占位符数据(例如,数据是随机或虚设的,不具有预期或重要次序)。并且,脏信息可指示存储在易失性存储器204的一组一或多个易失性存储器单元中的数据是否不同于存储在非易失性存储器206的一组一或多个非易失性存储器单元中的对应数据。举例来说,脏信息可指示存储在一组易失性存储器单元中的数据是否已经相对于存储在非易失性存储器206中的数据更新。
存储器阵列252可包含存储易失性存储器204的相关联组(例如,BK0)的存储信息(例如,标签信息、有效性信息、脏信息)的存储器单元。存储信息可逐行存储(例如,相关联非易失性存储器组的每一行可具有相应存储信息)。接口控制器202可通过引用存储器阵列252中的存储信息来检查易失性存储器204中的所请求数据。举例来说,接口控制器202可从主机装置接收用于非易失性存储器206中的一组非易失性存储器单元中的数据的检索命令。接口控制器202可使用存取请求所针对的一组一或多个地址位(例如,一组行地址位)以引用存储器阵列252中的存储信息。举例来说,使用组关联映射,接口控制器202可引用存储器阵列252中的内容信息,以确定哪一组易失性存储器单元(若存在)存储所请求数据。
除了存储易失性存储器单元的内容信息之外,存储器阵列252还可存储指示一组易失性存储器单元中的数据是实际数据(也称为有效数据)还是随机数据(也称为无效数据)的有效性信息。举例来说,易失性存储器204中的易失性存储器单元初始地可存储随机数据,并继续这样做,直到易失性存储器单元用来自主机装置或非易失性存储器206的数据写入为止。为了跟踪哪些数据有效,如果实际数据存储在其中一组易失性存储器单元中,那么存储器阵列252可配置成设置每组(例如,行)易失性存储器单元的位。这个位可以称为有效性位或有效性标志。如同内容信息,存储于存储器阵列252中的有效性信息可以逐行存储。因此,在一些实例中,每个有效性位可指示存储在相关联行中的数据的有效性。
在一些实例中,存储器阵列252可存储指示一组(例如,行)易失性存储器单元是否存储任何脏数据的脏信息。如同有效性信息,存储于存储器阵列252中的脏信息可以逐行存储。
存储器阵列254可类似于存储器阵列252,并且还可包含存储与存储器阵列252相关联的易失性存储器204的组(例如,BK0)的存储信息的存储器单元。举例来说,存储器阵列254可存储易失性存储器204的一个组的有效性信息和脏信息。但是,存储于存储器阵列254中的存储信息可以基于子块而不是行来存储。举例来说,存储于存储器阵列254的存储器单元中的有效性信息可指示易失性存储器204的一行中的易失性存储器单元子集的数据的有效性。
作为实例,存储器阵列254中的有效性信息可指示存储在易失性存储器204的BK0的行中的每个数据子集(例如,32B或64B)的有效性。类似地,存储于存储器阵列254的存储器单元中的脏信息可指示易失性存储器204的一行中的哪些易失性存储器单元子集存储脏数据。举例来说,存储器阵列254中的脏信息可指示存储在易失性存储器204的BK0的行中的每个数据子集(例如,32B或64B)的脏状态。在存储器阵列252中逐行存储存储信息(例如,标签信息、有效性信息)可允许接口控制器202确定针对易失性存储器204中的数据是否存在命中或未命中。在存储器阵列254中基于子块存储存储信息(例如,有效性信息、脏信息)可允许接口控制器202确定要返回到主机装置(例如,在检索过程期间)的一或多个数据子集和要保持在非易失性存储器206中(例如,在收回过程期间)的一或多个数据子集。
每个高速缓冲存储器管理电路集还可以包含相应一对寄存器,所述相应一对寄存器与命令电路系统230、引擎246、存储器接口电路系统234、存储器接口电路系统240和用于所述高速缓冲存储器管理电路集的存储器阵列以及其它组件耦合。举例来说,高速缓存管理电路集可包含第一寄存器(例如,寄存器256,其可以是打开页标签(OPT)寄存器),所述第一寄存器被配置成从存储器阵列252或调度器248-b或这两者接收存储信息(例如,标签信息、有效性信息或脏信息、其它信息或任何组合的一或多个位)。高速缓存管理电路系统集还可包含第二寄存器(例如,可以是受害页标签(VPT)寄存器的寄存器258),所述第二寄存器配置成从存储器阵列254和调度器248-a或这两者接收存储信息(例如,有效性信息和/或脏信息或这两者)。寄存器256和寄存器258中的信息可以传送到命令电路系统230和引擎246以实现由这些组件作出决策。举例来说,命令电路系统230可基于或响应于寄存器256和/或寄存器258或这两者中的存储信息来发出读取非易失性存储器206或易失性存储器204的命令。
引擎246-a可与寄存器256、寄存器258和调度器248耦合。引擎246-a可被配置成从各种组件接收存储信息且基于存储信息来将命令发出到调度器248。举例来说,如果接口控制器202在例如直写模式的第一模式中,那么引擎246-a可将命令发出到调度器248-b,并且作为响应调度器248-b发起或促进从缓冲器218到易失性存储器204和非易失性存储器206这两者的数据传送。替代地,如果接口控制器202在例如写回模式的第二模式中,那么引擎246-a可将命令发出到调度器248-b,并且作为响应,调度器248-b发起或促进从缓冲器218到易失性存储器204的数据传送。在写回操作的情况下,在后续(例如,随后)逐出过程期间,存储在易失性存储器204中的数据可最终被传送到非易失性存储器206。
引擎246-b可与寄存器258和调度器248-a耦合。引擎246-b可以被配置成从寄存器258接收存储信息并且基于存储信息将命令发到调度器248-a。举例来说,引擎246-b可以将命令发到调度器248-a以发起或促进从缓冲器220到非易失性存储器206的脏数据传送(例如,作为收回过程的一部分)。如果缓冲器220保留从易失性存储器204传送的数据集(例如,受害数据),则引擎246-b可指示缓冲器220中的数据集的哪一或多个子集(例如,哪些64B)应传送到非易失性存储器206。
调度器248-a可与接口控制器202的各种组件耦合且可通过将命令发出到存储器接口电路系统234来促进存取非易失性存储器206。调度器248-a发出的命令可基于来自命令电路系统230、引擎246-a、引擎246-b或这些组件的组合的命令。类似地,调度器248-b可与接口控制器202的各种组件耦合,且可通过将命令发出到存储器接口电路系统240而促进存取易失性存储器204。由调度器248-b发出的命令可基于或响应于来自命令电路系统230或引擎246-a或这两者的命令。
存储器接口电路系统234可以经由数据总线接口212和C/A总线接口214中的一或多个与非易失性存储器206通信。举例来说,存储器接口电路系统234可提示C/A总线接口214在C/A总线236上将由存储器接口电路系统234发出的命令转送到非易失性存储器206中的本地控制器。并且存储器接口电路系统234可通过数据总线232将数据发射到非易失性存储器206或从所述非易失性存储器接收数据。在一些实例中,由存储器接口电路系统234发出的命令可以由非易失性存储器206而非易失性存储器204支持(例如,由存储器接口电路系统234发出的命令可以不同于由存储器接口电路系统240发出的命令)。
存储器接口电路240可经由数据总线接口216和C/A总线接口264中的一或多个与易失性存储器204通信。举例来说,存储器接口电路系统240可提示C/A总线接口264在C/A总线242上将由存储器接口电路系统240发出的命令转送到易失性存储器204的本地控制器。而且存储器接口电路系统240可在一或多个数据总线238上将数据发射到易失性存储器204或从所述易失性存储器接收数据。在一些实例中,由存储器接口电路系统240发出的命令可以由易失性存储器204而非非易失性存储器206支持(例如,由存储器接口电路系统240发出的命令可以不同于由存储器接口电路系统234发出的命令)。
总之,接口控制器202的组件可以将非易失性存储器206用作主存储器且将易失性存储器204用作高速缓冲存储器。此操作可以由从主机装置接收到的一或多个存取命令(例如,读取/检索命令/请求和写入/存储命令/请求)提示。
在一些实例中,接口控制器202可以从主机装置接收存储命令。存储命令可通过C/A总线226接收到并且经由C/A总线接口210和解码器228中的一或多个传送到命令电路系统230。存储命令可包含或伴随有地址位,所述地址位以非易失性存储器206的存储器地址为目标。待存储的数据可通过数据总线260接收到且经由数据总线接口208传送到缓冲器218。在直写模式中,接口控制器202可以将数据传送到非易失性存储器206和易失性存储器204这两者。在写回模式中,在一些实例中,接口控制器202可将数据仅传送到易失性存储器204。
在任一模式中,接口控制器202可首先进行检查以发现易失性存储器204在存储器单元中是否还具有可用于存储数据的空间。为实现这一点,命令电路系统230可引用存储器阵列252(例如,使用存储器地址位集)确定与存储器地址相关联的易失性存储器单元的n个集(例如,行)中的一或多个是否为空(例如,存储随机或无效数据)或与存储器地址相关联的易失性存储器单元的n个集(例如,行)中的一或多个是否已满(例如,存储有效数据)。举例来说,命令电路系统230可基于存储于存储器阵列252中的标签信息和有效性信息来确定易失性存储器单元的n个集(例如,行)中的一或多个是否可用(或不可用)在一些情况下,易失性存储器204中的易失性存储器单元集可称为线、高速缓存线或行。
如果易失性存储器单元的n个相关联集中的一个可供用于存储信息,则接口控制器202可以将数据从缓冲器218传送到易失性存储器204以用于存储在所述易失性存储器单元集中。但如果相关联易失性存储器单元集不是空的,那么接口控制器202可发起逐出过程以在易失性存储器204中为数据腾出空间。逐出过程可涉及将受害数据从易失性存储器单元的n个相关联集中的一个传送到缓冲器220。用于受害数据的脏信息可从存储器阵列254传递到寄存器258以用于受害数据的脏子集的识别。在将受害数据存储在缓冲器220中之后,可将新数据从缓冲器218传递到易失性存储器204,且可将受害数据从缓冲器220传递到非易失性存储器206。在一些情况下,可将旧数据的脏子集传送到非易失性存储器206且可丢弃干净子集(例如,未修改子集)。引擎246-b可基于或响应于在逐出过程期间从存储器阵列254传送到寄存器258的脏信息来识别脏子集。
在另一实例中,接口控制器202可从主机装置接收例如检索命令的命令。检索命令可通过C/A总线226接收到并且经由C/A总线接口210和解码器228中的一或多个传送到命令电路系统230。检索命令可以包含地址位,所述地址位以非易失性存储器206的存储器地址为目标。在尝试存取非易失性存储器206的目标存储器地址之前,接口控制器202可进行检查以发现易失性存储器204是否存储数据。为实现这一点,命令电路系统230可引用存储器阵列252(例如,使用存储器地址位集)确定与存储器地址相关联的易失性存储器单元的n个集(例如,行)中的一或多个是否存储所请求的数据(例如,与存储器地址相关联的易失性存储器单元的n个集中的一或多个是否存储所请求的数据或替代地不存储所请求的数据)。如果所请求数据存储在易失性存储器204中,则接口控制器202可以将所请求数据传送到缓冲器218以用于通过数据总线260发射到主机装置。
如果所请求的数据不存储于易失性存储器204中(例如,所请求的数据可存储于非易失性存储器206或另一位置中),那么接口控制器202可从非易失性存储器206检索数据并且将数据传送到缓冲器218以通过数据总线260发射到主机装置。另外,接口控制器202可以将所请求数据从缓冲器218传送到易失性存储器204,以便在后续检索操作期间可以较低时延存取数据。然而,在传送所请求的数据之前,接口控制器202可首先确定易失性存储器单元的n个相关联集中的一或多个是否可用于存储所请求的数据(例如,易失性存储器单元的n个相关联集中的一或多个是空的还是满的)。接口控制器202可以通过与相关的高速缓冲存储器管理电路集通信来确定易失性存储器单元的n个相关联集的可用性。如果相关联易失性存储器单元集可用,则接口控制器202可以将缓冲器218中的数据传送到易失性存储器204而不执行收回过程。否则,接口控制器202可以在进行收回过程之后将数据从缓冲器218传送到易失性存储器204。
存储器子系统200可以实施于一或多个配置中,包含单芯片版本和多芯片版本。多芯片版本可在与包含存储器子系统200的一或多个其它组成部分的芯片分开的芯片上包含存储器子系统200的一或多个组成部分,包含接口控制器202、易失性存储器204和非易失性存储器206(以及其它组成部分或组成部分的组合)。举例来说,在一个多芯片版本中,相应分开的芯片可包含接口控制器202、易失性存储器204和非易失性存储器206中的每一个。相比之下,单芯片版本可在单个芯片上包含接口控制器202、易失性存储器204和非易失性存储器206。
在一些实例中,主机装置可发指令给接口控制器202使易失性存储器204和非易失性存储器206转变到相应深度睡眠模式(例如,因为主机装置在阈值时间量内或基于一或多个其它条件不期望存储器存取)。如果主机装置稍后确定存取存储器子系统200,那么主机装置可将深度睡眠退出命令发射到接口控制器202。
为了经由易失性存储器204提供低时延存储器服务,接口控制器202可通过使易失性存储器204转变到例如VM待机电力模式的另一模式来对深度睡眠退出命令作出响应。为了提高电力效率,接口控制器202可通过使非易失性存储器206转变到例如是NVM中间电力模式而非是NVM待机电力模式的另一模式(例如,作为转变模式1的部分)或延迟非易失性存储器206从NVM深度睡眠模式到例如较高NVM电力模式的另一模式的转变,直到在发生未命中(例如,作为转变模式2的部分)之后为止。因此,接口控制器202可通过战略上使非易失性存储器206从NVM深度睡眠模式转变来节约电力。
图3说明根据本文所公开的实例的支持多存储器装置中的战略性电力模式转变的系统300的实例。系统300可包含主机装置305和存储器子系统310并且可为参考图1所描述的系统100的实例。存储器子系统310可包含可经由一或多个发射线、总线或这两者与彼此耦合的接口控制器315、易失性存储器320和非易失性存储器325。接口控制器315可包含电力模式控制器330和一或多个命令缓冲器335。如本文中所描述,接口控制器315可使易失性存储器320和非易失性存储器325从相应深度睡眠模式转变。举例来说,接口控制器315可使用转变模式1或转变模式2使非易失性存储器325从NVM深度睡眠模式转变。
接口控制器315可从主机装置305接收一或多个命令,包含功能(或“存取”)命令和电力模式命令以及其它命令。如所提及,功能命令可指致使存取存储器的命令,例如激活命令、预充电命令、读取命令、写入命令等等。电力模式命令可指指示电力模式的命令。接口控制器315还可以将一或多个命令(例如,基于从主机装置305接收到的命令)发射到易失性存储器320和非易失性存储器325,所述一或多个命令包含功能命令和电力模式命令以及其它命令。接口控制器315可包含电力模式控制器330、命令缓冲器335-a和命令缓冲器335-b以及其它组件。
电力模式控制器340可以被配置成用于管理易失性存储器320的电力模式。电力模式控制器340可基于(例如,响应于)来自主机装置305的电力模式命令改变易失性存储器320的电力模式。通常,在从主机装置305接收到电力模式命令之后,电力模式控制器340可即刻使易失性存储器320从一个电力模式转变到所述电力模式(例如,通过电力模式控制器340将例如新电力模式命令的命令或指示发送给易失性存储器320)。
电力模式控制器330可以被配置成用于管理非易失性存储器325的电力模式。电力模式控制器330可基于(例如,响应于)来自主机装置305的电力模式命令改变非易失性存储器325的电力模式。电力模式控制器330可与命令缓冲器335以及其它组件耦合并交换信令。举例来说,电力模式控制器330可接收来自命令缓冲器335中的一或多个的命令以及在命令缓冲器335中排队(或“缓冲”或“存储”以及其它合适的术语)的命令数量的指示。电力模式控制器330可使用排队的命令数量作为控制非易失性存储器325的电力模式以及其它因素的基础。
命令缓冲器335-a可存储用于非易失性存储器325的命令(例如,功能命令)。在一些实例中,命令缓冲器335-a包含在存储器接口电路系统234的调度组件中或与所述调度组件耦合。命令缓冲器335-b可为存储来自命令缓冲器335-a的命令的较小缓冲器(相对于命令缓冲器335-a)。命令缓冲器335-b可以被配置成用于确保满足用于非易失性存储器325的一或多个各种参数,例如定时参数。因此,命令缓冲器335-a中的准备好用于非易失性存储器325的命令可从命令缓冲器335-a传送到命令缓冲器335-b以使得命令缓冲器335-a可以适当方式将所述命令转送到非易失性存储器325(或中间组件)。
在一些实例中,命令缓冲器335-a和命令缓冲器335-b可配置为或组合成单个缓冲器。在一些实例中,命令缓冲器335-a可被称为调度缓冲器且命令缓冲器335-b可被称为输入队列。命令缓冲器335-a和命令缓冲器335-b可被配置成(例如,向电力模式控制器330)指示存储于所述缓冲器中或用于非易失性存储器325的相应缓冲器(例如,命令缓冲器335-a和命令缓冲器335-b)中的每一个中的命令数量。
响应于从主机装置305接收到深度睡眠退出命令,接口控制器315可(例如,经由电力模式控制器340)使易失性存储器320从VM深度睡眠模式转变到较高电力模式,例如VM待机电力模式。在VM待机电力模式中,易失性存储器320的一或多个时钟可接通(例如,活动中、启用),易失性存储器320的一或多个C/A缓冲器可接通,且易失性存储器320的组可闭合。如果深度睡眠退出命令指示特定VM电力模式或与特定VM电力模式相关联,那么电力模式控制器340可使易失性存储器320转变到由电力模式命令指示的VM电力模式。电力模式控制器340可发出命令或发送指示(例如新电力模式命令)给易失性存储器320,进而实现电力模式的改变。因此,易失性存储器320可配置于主机装置305期望的电力模式中以用于一或多个后续命令(例如,功能命令)。
在一些实例中,电力模式控制器340的操作对于转变模式1和转变模式2来说可为相同的。然而,电力模式控制器330的操作可依据哪个解决方案(例如,转变模式1或转变模式2)有效而变化。
在转变模式1中,电力模式控制器330可通过使非易失性存储器325从NVM深度睡眠模式转变到NVM中间电力模式(而非更大消耗性的NVM待机电力模式)来对深度睡眠退出命令作出响应。对非易失性存储器325转变到NVM中间电力模式而非NVM待机电力模式(其可为由深度睡眠退出命令指示的电力模式)可允许存储器子系统310在操作非易失性存储器325时节约电力。相较于转变模式2,转变模式1可消耗更多电力(例如,因为非易失性存储器325在NVM中间电力模式中与在NVM深度睡眠模式中相比可消耗更多电力)并且具有减小的存取时延(例如,因为NVM中间电力模式与NVM深度睡眠模式相比可具有较短退出时延)。
在转变模式2中,电力模式控制器330可通过将非易失性存储器325保持来NVM深度睡眠模式中直到发生后续未命中(例如,读取未命中、写入未命中)来对深度睡眠退出作出响应。举例来说,电力模式控制器330可等待使非易失性存储器325从NVM深度睡眠模式转变直到响应于未命中而产生的命令在命令缓冲器335中的一个中排队为止。在检测到在命令缓冲器335中进行排队的命令之后,电力模式控制器330可即刻使非易失性存储器325从NVM深度睡眠模式转变到较高电力模式(例如,NVM活动模式)。相较于转变模式1,转变模式2可消耗较少电力(例如,因为非易失性存储器325在NVM深度睡眠模式中相对于在NVM中间电力模式中可消耗较少电力)并且具有增加的时延(例如,因为NVM深度睡眠模式与NVM中间电力模式相比可具有较长退出时延)。
因此,如本文中所描述,接口控制器315可通过使易失性存储器320和非易失性存储器325根据转变模式1或转变模式2(或在各种实例中这两个转变模式的某种组合)从相应深度睡眠模式转变,以此节约存储器子系统310的电力。
虽然参考不同类型的存储器进行描述,但可针对相同类型的多个存储器(例如,多个易失性存储器、多个非易失性存储器)实施本文中所描述的技术。
图4说明根据本文所公开的实例的支持多存储器装置中的战略性电力模式转变的过程流400的实例。过程流400可由参考图1所描述的存储器子系统110或接口控制器115、参考图2所描述的存储器子系统200或接口控制器202或参考图3所描述的存储器子系统310或接口控制器315实施。然而,其它类型的装置或组件可实施过程流400。过程流400可说明使用转变模式1使非易失性存储器从深度睡眠模式转变的装置的操作。
为了便于参考,参考装置描述过程流400。举例来说,过程流400的方面可由包含易失性存储器和非易失性存储器的装置实施。另外或替代地,过程流400的方面可被实施为存储在存储器中的指令(例如,存储在易失性存储器120或非易失性存储器125或这两者中的固件)。举例来说,指令如果由控制器执行,那么可使控制器执行处理流程400的操作。
在405之前,易失性存储器320和非易失性存储器325可在相应深度睡眠模式(例如,在一些情况下,可为用于相应存储器类型的不同深度睡眠模式)中操作。在405处,可接收到例如电力模式命令的命令。举例来说,接口控制器315可从主机装置305接收深度睡眠退出命令。深度睡眠退出命令可指示接口控制器315将使一个或多个存储器(例如,易失性存储器320、非易失性存储器325)从相应深度睡眠模式转变。
在410处,易失性存储器可从VM深度睡眠模式转变到VM待机电力模式。举例来说,接口控制器315可使易失性存储器320从VM深度睡眠模式转变到与VM深度睡眠模式相比消耗更多电力(并且具有较短退出时延)的VM待机电力模式或其它VM电力模式。在VM待机电力模式中,易失性存储器320的一或多个时钟可接通,易失性存储器320的一或多个C/A缓冲器可接通,且易失性存储器320的组可闭合。接口控制器315可基于(例如,响应于)在405处接收到的深度睡眠退出命令而使易失性存储器320从VM深度睡眠模式转变。
在415处,非易失性存储器可从NVM深度睡眠模式转变到NVM中间电力模式。举例来说,接口控制器315可使非易失性存储器325从NVM深度睡眠模式转变到NVM中间电力模式。在NVM中间电力模式中,非易失性存储器325的一或多个时钟可关断(例如,不活动、停用),非易失性存储器325的一或多个C/A缓冲器可关断,且非易失性存储器325的组可闭合。NVM中间电力模式可不同于NVM待机电力模式,在所述NVM待机电力模式中,非易失性存储器325的一或多个时钟可接通,非易失性存储器325的一或多个C/A缓冲器可接通,且非易失性存储器325的组可闭合。接口控制器315可基于(例如,响应于)在405处接收到的深度睡眠退出命令使非易失性存储器325从NVM深度睡眠模式转变。
在420处,可确定是否已发生未命中。举例来说,接口控制器315可确定是否已发生读取未命中或写入未命中。如果来自主机装置305的读取命令以存储于非易失性存储器325而非易失性存储器320中的数据为目标,那么发生读取未命中。如果来自主机装置305的写入命令以存储于非易失性存储器325而非易失性存储器320中的数据为目标,那么发生写入未命中。
如果在420处确定尚未发生未命中,那么接口控制器315可转到425并且将非易失性存储器325维持于NVM中间电力模式中(例如,以节约电力)。如果在420处确定已发生未命中,那么接口控制器315可转到430。在430处,非易失性存储器325可转变到与NVM中间电力模式相比消耗更多电力(并且具有较短退出时延)的NVM电力模式。举例来说,接口控制器315可使非易失性存储器325从NVM中间电力模式转变到NVM活动模式,使得非易失性存储器325能够更快速地对功能命令作出响应。在一些实例中,接口控制器315可延迟430处的转变直到与未命中相关联的命令已在命令缓冲器335中排队。因此,非易失性存储器325从NVM中间电力模式的转变可基于针对非易失性存储器325进行排队的命令数量。因此,装置可使用转变模式1使非易失性存储器325从NVM深度睡眠模式转变。
可实施上文的替代性实例,其中一些操作以不同于描述的次序的次序执行、并行执行或完全不执行。在一些情况下,操作可包含下文未提及的额外特征,或可添加另外的操作。另外,某些操作可执行多次,或可重复或循环某些操作组合。
图5说明根据本文所公开的实例的支持多存储器装置中的战略性电力模式转变的过程流500的实例。过程流500可由参考图1所描述的存储器子系统110或接口控制器115、参考图2所描述的存储器子系统200或接口控制器202或参考图3所描述的存储器子系统310或接口控制器315实施。然而,其它类型的装置或组件可实施过程流500。过程流500可说明使用转变模式2使非易失性存储器从深度睡眠模式转变的装置的操作。
为了便于参考,参考装置描述过程流500。举例来说,过程流500的方面可由包含易失性存储器和非易失性存储器的装置实施。另外或替代地,过程流500的方面可被实施为存储在存储器中的指令(例如,存储在易失性存储器120或非易失性存储器125或这两者中的固件)。举例来说,指令可在由控制器执行的情况下使控制器执行过程流500的操作。
在505之前,易失性存储器320和非易失性存储器325可在相应深度睡眠模式(例如,在一些情况下,可为用于相应存储器类型的不同深度睡眠模式)中操作。在505处,可接收到例如电力模式命令的命令。举例来说,接口控制器315可从主机装置305接收深度睡眠退出命令。深度睡眠退出命令可指示接口控制器315将使易失性存储器320和非易失性存储器325从相应深度睡眠模式转变。在一些实例中,深度睡眠退出命令可指示用于易失性存储器320的VM电力模式、用于非易失性存储器325的NVM电力模式或这两者。
在510处,易失性存储器可从VM待机电力模式转变到VM深度睡眠模式。举例来说,接口控制器315可使易失性存储器320从VM深度睡眠模式转变到与VM深度睡眠模式相比消耗更多电力(并且具有较短退出时延)的VM待机电力模式或其它VM电力模式。接口控制器315可基于(例如,响应于)在505处接收到的深度睡眠退出命令而使易失性存储器320从VM深度睡眠模式转变。
在515处,定时参数可传送到主机装置。定时参数可指示在发射深度睡眠退出命令和传送功能(或“存取”)命令之间观察到的主机装置的延迟。存储器中的每一个可具有相应定时参数,所述定时参数可随所述存储器的深度睡眠模式的退出时延而变。举例来说,易失性存储器320可具有随VM深度睡眠模式的退出时延而变的VM定时参数。并且非易失性存储器325可具有随NVM深度睡眠模式的退出时延而变的NVM定时参数。并非像可在除转变模式1和转变模式2以外的转变模式中发生的那样将NVM定时参数传送到主机装置,而是接口控制器315可将VM定时参数传送到主机装置(因为主机装置仅需要考虑易失性存储器320的退出时延)。
在520处,非易失性存储器325可维持在NVM深度睡眠模式中而不管在505处接收到了深度睡眠退出命令。接口控制器315可通过继续在NVM深度睡眠模式中非易失性存储器325操作直到即将发生非易失性存储器325的存取为止,以此节约电力。在525处,可确定是否已发生未命中。举例来说,接口控制器315可确定是否已发生读取未命中或写入未命中。
如果在525处确定尚未发生未命中,那么接口控制器315可转到515并且将非易失性存储器325维持于NVM中间电力模式中(例如,以节约电力)。如果在525处确定已发生未命中,那么接口控制器315可转到530。在530处,非易失性存储器325可转变到与NVM深度睡眠模式相比消耗更多电力的NVM电力模式。举例来说,接口控制器315可使非易失性存储器325从NVM深度睡眠模式转变到NVM活动模式(例如,绕过NVM中间电力模式和NVM待机电力模式)。在一些实例中,接口控制器315可延迟530处的转变直到与未命中相关联的命令已在命令缓冲器335中排队。因此,非易失性存储器325从NVM深度睡眠模式的转变可基于(例如,响应于)针对非易失性存储器325进行排队的命令数量从第一值(例如,零)增加到第二值(例如,一或多个)。因此,装置可使用转变模式2使非易失性存储器325从NVM深度睡眠模式转变。
可实施上文的替代性实例,其中一些操作以不同于描述的次序的次序执行、并行执行或完全不执行。在一些情况下,操作可包含下文未提及的额外特征,或可添加另外的操作。另外,某些操作可执行多次,或可重复或循环某些操作组合。
图6示出根据本文所公开的实例的支持多存储器装置中的战略性电力模式转变的存储器装置620的框图600。存储器装置620可为如参考图1到5描述的存储器装置的方面的实例。存储器装置620或其各种组件可为用于执行如本文所描述的多存储器装置中的战略性电力模式转变的各种方面的装置的实例。举例来说,存储器装置620可包含接收电路625、易失性存储器(VM)模式控制器630、非易失性存储器(NVM)模式控制器635、发射电路640或其任何组合。这些组件中的每一个可直接或间接地(例如经由一或多个总线)彼此通信。
接收电路625可以是或包含数据总线、数据总线接口、缓冲器、逻辑、电路系统、处理器、控制器、接收器,或其它能够执行本文所描述的功能的组件。VM模式控制器630可以是或包含逻辑、电路系统、处理器、控制器,或其它能够执行本文所描述的功能的组件。在一些实例中,VM模式控制器630是参考图3所描述的电力模式控制器340的实例。NVM模式控制器635可以是或包含逻辑、电路系统、处理器、控制器,或其它能够执行本文所描述的功能的组件。在一些实例中,NVM模式控制器635是参考图3所描述的电力模式控制器330的实例。发射电路640可以是或包含驱动器、数据总线、数据总线接口、缓冲器、逻辑、电路系统、处理器、控制器、发射器,或其它能够执行本文所描述的功能的组件。
接收电路625可配置为或以其它方式支持用于从主机装置接收指示所述存储器装置将从一电力状态转变的命令的装置,在所述电力状态中,所述存储器装置在用于易失性存储器的电力模式中操作所述易失性存储器并且在用于非易失性存储器的电力模式中操作所述非易失性存储器。VM模式控制器630可配置为或以其它方式支持用于至少部分地基于所述命令,使所述易失性存储器从用于所述易失性存储器的所述电力模式转变到用于所述易失性存储器的空闲电力模式的装置,所述空闲电力模式与用于所述易失性存储器的所述电力模式相比消耗更多电力。NVM模式控制器635可配置为或以其它方式支持用于至少部分地基于所述命令,使所述非易失性存储器从用于所述非易失性存储器的所述电力模式转变到用于所述非易失性存储器的第一空闲电力模式的装置,所述第一空闲电力模式与用于所述易失性存储器的所述电力模式相比消耗更多电力且与用于所述非易失性存储器的第二空闲电力模式相比消耗较少电力。
在一些实例中,所述非易失性存储器包含一或多个时钟、一或多个命令和地址缓冲器以及一或多个存储器组。在一些实例中,所述一或多个时钟、所述一或多个命令和地址缓冲器以及所述一或多个存储器组在所述第一空闲电力模式中断电。
在一些实例中,所述一或多个时钟以及所述一或多个命令和地址缓冲器在所述第二空闲电力模式中通电,且所述一或多个存储器组在所述第二空闲电力模式中断电。
在一些实例中,与所述非易失性存储器从所述第一空闲电力模式转变到较高电力模式相关联的时延比与所述非易失性存储器从所述第二空闲电力模式转变到所述较高电力模式相关联的时延更长。
在一些实例中,NVM模式控制器635可配置为或以其它方式支持用于确定针对所述非易失性存储器进行排队的命令数量已从第一数量增加到第二数量的装置。在一些实例中,NVM模式控制器635可配置为或以其它方式支持用于至少部分地基于所述确定,使所述非易失性存储器从所述第一空闲电力模式转变到所述第二空闲电力模式或与所述第二空闲电力模式相比消耗更多电力的活动模式的装置。
在一些实例中,NVM模式控制器635可配置为或以其它方式支持用于至少部分地基于确定与来自所述主机装置的存取命令相关联的数据不存储于所述易失性存储器中,确定与来自所述主机装置的所述存取命令相关联的所述数据存储于所述非易失性存储器中的装置,其中针对所述非易失性存储器进行排队的所述命令数量至少部分地基于所述确定而增加。
在一些实例中,接收电路625可配置为或以其它方式支持用于从主机装置接收指示所述存储器装置将从一电力状态转变的命令的装置,在所述电力状态中,所述存储器装置在用于易失性存储器的电力模式中操作所述易失性存储器并且在用于非易失性存储器的电力模式中操作所述非易失性存储器。在一些实例中,VM模式控制器630可配置为或以其它方式支持用于至少部分地基于所述命令,使所述易失性存储器从用于所述易失性存储器的所述电力模式转变到用于所述易失性存储器的空闲电力模式的装置。在一些实例中,NVM模式控制器635可配置为或以其它方式支持用于至少部分地基于所述命令,使所述非易失性存储器从用于所述非易失性存储器的所述电力模式转变到用于所述非易失性存储器的空闲电力模式的装置,其中延迟所述转变直到从所述主机装置接收到与存储于所述非易失性存储器而非所述易失性存储器中的数据相关联的存取命令之后为止。
在一些实例中,用于所述易失性存储器的所述电力模式与用于所述易失性存储器的所述空闲电力模式相比消耗较少电力。在一些实例中,用于所述非易失性存储器的所述电力模式与用于所述非易失性存储器的所述空闲电力模式相比消耗较少电力。
在一些实例中,NVM模式控制器635可配置为或以其它方式支持用于确定针对所述非易失性存储器进行排队的命令数量已从第一数量增加到第二数量的装置,其中至少部分地基于所述确定使所述非易失性存储器转变到用于所述非易失性存储器的所述空闲电力模式。
在一些实例中,发射电路640可配置为或以其它方式支持用于至少部分地基于所述命令,将对在传送所述命令与传送存取命令之间观察到的针对所述主机装置的延迟的指示发射给所述主机装置的装置,其中用于所述易失性存储器的所述空闲电力模式与所述延迟相关联。
图7示出说明根据本文所公开的实例的支持多存储器装置中的战略性电力模式转变的方法700的流程图。方法700的操作可由如本文所描述的存储器装置或其组件实施。举例来说,可由如参考图1至6所描述的存储器装置执行方法700的操作。在一些实例中,存储器装置可执行指令集以控制装置的功能元件执行下文所描述的功能。另外或替代地,存储器装置可使用专用硬件执行所描述的功能的方面。方法700的操作可包含转变模式1的方面。
在705处,所述方法可包含从主机装置接收指示所述存储器装置将从一电力状态转变的命令(例如,深度睡眠退出命令),在所述电力状态中,所述存储器装置在用于易失性存储器的电力模式(例如,VM深度睡眠模式)中操作所述易失性存储器并且在用于非易失性存储器的电力模式(例如,NVM深度睡眠模式)中操作所述非易失性存储器。可根据本文所公开的实例执行705的操作。在一些实例中,可由参考图6所描述的接收电路625执行705的操作的方面。
在710处所述方法可包含至少部分地基于所述命令,使所述易失性存储器从用于所述易失性存储器的所述电力模式转变到用于所述易失性存储器的空闲电力模式(例如,VM待机模式),所述空闲电力模式与用于所述易失性存储器的所述电力模式相比消耗更多电力。可根据本文所公开的实例执行710的操作。在一些实例中,可由参考图6所描述的VM模式控制器630执行710的操作的方面。
在715处,所述方法可包含至少部分地基于所述命令,使所述非易失性存储器从用于所述非易失性存储器的所述电力模式转变到用于所述非易失性存储器的第一空闲电力模式(例如,NVM中间电力模式),所述第一空闲电力模式与用于所述易失性存储器的所述电力模式相比消耗更多电力且与用于所述非易失性存储器的第二空闲电力模式(例如,NVM待机电力模式)相比消耗较少电力。可根据本文所公开的实例执行715的操作。在一些实例中,可由参考图6所描述的NVM模式控制器635执行715的操作的方面。
在一些实例中,如本文中所描述的设备可执行一或多种方法,例如方法700。所述设备可包含用于以下操作的特征、电路系统、逻辑、装置或指令(例如,非暂时性计算机可读媒体存储的可由处理器执行的指令):从主机装置接收指示所述存储器装置将从一电力状态转变的命令,在所述电力状态中,所述存储器装置在用于易失性存储器的电力模式中操作所述易失性存储器并且在用于非易失性存储器的电力模式中操作所述非易失性存储器;至少部分地基于所述命令,使所述易失性存储器从用于所述易失性存储器的所述电力模式转变到用于所述易失性存储器的空闲电力模式,所述空闲电力模式与用于所述易失性存储器的所述电力模式相比消耗更多电力;和至少部分地基于所述命令,使所述非易失性存储器从用于所述非易失性存储器的所述电力模式转变到用于所述非易失性存储器的第一空闲电力模式,所述第一空闲电力模式与用于所述易失性存储器的所述电力模式相比消耗更多电力且与用于所述非易失性存储器的第二空闲电力模式相比消耗较少电力。
在本文所描述的方法700和设备的一些实例中,所述非易失性存储器包含一或多个时钟、一或多个命令和地址缓冲器以及一或多个存储器组。在一些实例中,所述一或多个时钟、所述一或多个命令和地址缓冲器以及所述一或多个存储器组可在所述第一空闲电力模式中断电。
在本文所描述的方法700和设备的一些实例中,所述一或多个时钟以及所述一或多个命令和地址缓冲器可在所述第二空闲电力模式中通电,且所述一或多个存储器组可在所述第二空闲电力模式中断电。
在本文所描述的方法700和设备的一些实例中,与所述非易失性存储器从所述第一空闲电力模式转变到较高电力模式相关联的时延可比与所述非易失性存储器从所述第二空闲电力模式转变到所述较高电力模式相关联的时延更长。
本文所描述的方法700和设备的一些实例可另外包含用于以下操作的操作、特征、电路系统、逻辑、装置或指令:确定针对所述非易失性存储器进行排队的命令数量可能已从第一数量增加到第二数量;和至少部分地基于所述确定,使所述非易失性存储器从所述第一空闲电力模式转变到所述第二空闲电力模式或与所述第二空闲电力模式相比消耗更多电力的活动模式。
本文所描述的方法700和设备的一些实例可另外包含用于以下操作的操作、特征、电路系统、逻辑、装置或指令:至少部分地基于确定与来自所述主机装置的存取命令相关联的数据可不存储于所述易失性存储器中,确定与来自所述主机装置的所述存取命令相关联的所述数据可存储于所述非易失性存储器中,其中针对所述非易失性存储器进行排队的所述命令数量可至少部分地基于所述确定而增加。
图8示出说明根据本文所公开的实例的支持多存储器装置中的战略性电力模式转变的方法800的流程图。方法800的操作可由如本文所描述的存储器装置或其组件实施。举例来说,可由如参考图1至6所描述的存储器装置执行方法800的操作。在一些实例中,存储器装置可执行指令集以控制装置的功能元件执行下文所描述的功能。另外或替代地,存储器装置可使用专用硬件执行所描述的功能的方面。方法800的操作可包含转变模式2的方面。
在805处,所述方法可包含从主机装置接收指示所述存储器装置将从一电力状态转变的命令,在所述电力状态中,所述存储器装置在用于易失性存储器的电力模式(例如,VM深度睡眠模式)中操作所述易失性存储器并且在用于非易失性存储器的电力模式(例如,NVM深度睡眠模式)中操作所述非易失性存储器。可根据本文所公开的实例执行805的操作。在一些实例中,可由参考图6所描述的接收电路625执行805的操作的方面。
在810处,所述方法可包含至少部分地基于所述命令,使所述易失性存储器从用于所述易失性存储器的所述电力模式转变到用于所述易失性存储器的空闲电力模式(例如,VM待机电力模式)。可根据本文所公开的实例执行810的操作。在一些实例中,可由参考图6所描述的VM模式控制器630执行810的操作的方面。
在815处,所述方法可包含至少部分地基于所述命令,使所述非易失性存储器从用于所述非易失性存储器的所述电力模式转变到用于所述非易失性存储器的空闲电力模式(例如,NVM待机电力模式或NVM中间电力模式),其中延迟所述转变直到从所述主机装置接收到与存储于所述非易失性存储器而非所述易失性存储器中的数据相关联的存取命令之后为止。可根据本文所公开的实例执行815的操作。在一些实例中,可由参考图6所描述的NVM模式控制器635执行815的操作的方面。
在一些实例中,如本文中所描述的设备可执行一或多种方法,例如方法800。所述设备可包含用于以下操作的特征、电路系统、逻辑、装置或指令(例如,非暂时性计算机可读媒体存储的可由处理器执行的指令):从主机装置接收指示所述存储器装置将从一电力状态转变的命令,在所述电力状态中,所述存储器装置在用于所述易失性存储器的电力模式中操作所述易失性存储器并且在用于所述非易失性存储器的电力模式中操作所述非易失性存储器;至少部分地基于所述命令,使所述易失性存储器从用于所述易失性存储器的所述电力模式转变到用于所述易失性存储器的空闲电力模式;和至少部分地基于所述命令,使所述非易失性存储器从用于所述非易失性存储器的所述电力模式转变到用于所述非易失性存储器的空闲电力模式,其中延迟所述转变直到从所述主机装置接收到与存储于所述非易失性存储器而非所述易失性存储器中的数据相关联的存取命令之后为止。
在本文所描述的方法800和设备的一些实例中,用于所述易失性存储器的所述电力模式与用于所述易失性存储器的所述空闲电力模式相比消耗较少电力,且用于所述非易失性存储器的所述电力模式与用于所述非易失性存储器的所述空闲电力模式相比消耗较少电力。
本文所描述的方法800和设备的一些实例可另外包含用于以下操作的操作、特征、电路系统、逻辑、装置或指令:确定针对所述非易失性存储器进行排队的命令数量可能已从第一数量增加到第二数量,其中可至少部分地基于所述确定使所述非易失性存储器转变到用于所述非易失性存储器的所述空闲电力模式。
在本文所描述的方法800和设备的一些实例中,所述方法、设备和非暂时性计算机可读媒体可另外包含用于以下操作的操作、特征、电路系统、逻辑、装置或指令:至少部分地基于所述命令,将对在传送所述命令与传送存取命令之间观察到的针对所述主机装置的延迟的指示发射给所述主机装置,其中用于所述易失性存储器的所述空闲电力模式可与所述延迟相关联。
应注意,本文中所描述的方法描述可能的实施方案,且操作和步骤可以重新布置或以其它方式加以修改,且其它实施方案是可能的。另外,可组合来自所述方法中的两种或更多种的部分。
描述一种设备。所述设备可包含非易失性存储器;易失性存储器,其被配置成用作所述非易失性存储器的高速缓存器;和接口控制器,其与所述非易失性存储器和所述易失性存储器耦合。所述接口控制器可操作以致使所述设备进行以下操作:从主机装置接收指示所述设备将从一电力状态转变的命令,在所述电力状态中,所述设备在用于所述易失性存储器的电力模式中操作所述易失性存储器并且在用于所述非易失性存储器的电力模式中操作所述非易失性存储器;至少部分地基于所述命令,使所述易失性存储器从用于所述易失性存储器的所述电力模式转变到用于所述易失性存储器的空闲电力模式,所述空闲电力模式与用于所述易失性存储器的所述电力模式相比消耗更多电力;和至少部分地基于所述命令,使所述非易失性存储器从用于所述非易失性存储器的所述电力模式转变到用于所述非易失性存储器的第一空闲电力模式,所述第一空闲电力模式与用于所述易失性存储器的所述电力模式相比消耗更多电力且与用于所述非易失性存储器的第二空闲电力模式相比消耗较少电力。
在所述设备的一些实例中,所述非易失性存储器包含一或多个时钟、一或多个命令和地址缓冲器以及一或多个存储器组。所述一或多个时钟、所述一或多个命令和地址缓冲器以及所述一或多个存储器组可在所述第一空闲电力模式中断电。
在所述设备的一些实例中,所述一或多个时钟以及所述一或多个命令和地址缓冲器可在所述第二空闲电力模式中通电,且所述一或多个存储器组可在所述第二空闲电力模式中断电。
在所述设备的一些实例中,与所述非易失性存储器从所述第一空闲电力模式转变到较高电力模式相关联的时延可比与所述非易失性存储器从所述第二空闲电力模式转变到所述较高电力模式相关联的时延更长。
在一些实例中,所述接口控制器可为可操作的以致使所述设备确定针对所述非易失性存储器进行排队的命令数量可能已从第一数量增加到第二数量;和至少部分地基于所述确定,使所述非易失性存储器从所述第一空闲电力模式转变到所述第二空闲电力模式或与所述第二空闲电力模式相比消耗更多电力的活动模式。在所述设备的一些实例中,所述第一数量可为零。
在一些实例中,所述接口控制器可为可操作的以致使所述设备至少部分地基于确定与来自所述主机装置的存取命令相关联的数据可不存储于所述易失性存储器中,确定与来自所述主机装置的所述存取命令相关联的所述数据可存储于所述非易失性存储器中,其中针对所述非易失性存储器进行排队的所述命令数量可至少部分地基于所述确定而增加。
描述另一种设备。所述设备可包含非易失性存储器;易失性存储器,其被配置成用作所述非易失性存储器的高速缓存器;和接口控制器,其与所述非易失性存储器和所述易失性存储器耦合,所述接口控制器可操作以致使所述设备进行以下操作:从主机装置接收指示所述设备将从一电力状态转变的命令,在所述电力状态中,所述设备在用于所述易失性存储器的电力模式中操作所述易失性存储器并且在用于所述非易失性存储器的电力模式中操作所述非易失性存储器;至少部分地基于所述命令,使所述易失性存储器从用于所述易失性存储器的所述电力模式转变到用于所述易失性存储器的空闲电力模式;和至少部分地基于所述命令,使所述非易失性存储器从用于所述非易失性存储器的所述电力模式转变到用于所述非易失性存储器的空闲电力模式,其中延迟所述转变直到从所述主机装置接收到与存储于所述非易失性存储器而非所述易失性存储器中的数据相关联的存取命令之后为止。
在所述设备的一些实例中,用于所述易失性存储器的所述电力模式与用于所述易失性存储器的所述空闲电力模式相比消耗较少电力,且用于所述非易失性存储器的所述电力模式与用于所述非易失性存储器的所述空闲电力模式相比消耗较少电力。
在所述设备的一些实例中,用于所述易失性存储器的所述电力模式可为所述易失性存储器支持的最低电力模式,且用于所述非易失性存储器的所述电力模式可为所述非易失性存储器支持的最低电力模式。
在所述设备的一些实例中,所述非易失性存储器包含一或多个时钟、一或多个命令和地址缓冲器以及一或多个存储器组。所述一或多个时钟以及所述一或多个命令和地址缓冲器可在所述空闲电力模式中通电且所述一或多个存储器组可在所述空闲电力模式中断电。
在所述设备的一些实例中,与所述非易失性存储器从所述电力模式转变到较高电力模式相关联的时延比可与所述非易失性存储器从所述空闲电力模式转变到所述较高电力模式相关联的时延更长。
在一些实例中,接口控制器可为可操作的以致使所述设备确定针对所述非易失性存储器进行排队的命令数量可能已从第一数量增加到第二数量,其中可至少部分地基于所述确定使所述非易失性存储器转变到用于所述非易失性存储器的所述空闲电力模式。在所述设备的一些实例中,所述第一数量可为零。
在一些实例中,所述接口控制器可为可操作的以致使所述设备至少部分地基于所述命令,将对在传送所述命令与传送存取命令之间观察到的针对所述主机装置的延迟的指示发射给所述主机装置,其中用于所述易失性存储器的所述空闲电力模式可与所述延迟相关联。
可使用多种不同技术和技艺中的任一种来表示本文中所描述的信息和信号。举例来说,可通过电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示在整个上文描述中可能参考的数据、指令、命令、信息、信号、位、符号和码片。一些图式可将信令说明为单个信号;然而,所属领域的一般技术人员应理解,信号可表示信号的总线,其中总线可具有各种位宽度。
协议可定义支持以供装置或组件使用的一或多个通信程序和一或多个通信参数。举例来说,协议可以定义各种操作、用于那些操作的定时和频率、各种命令或信号或这两者的含义、用于一或多个存储器的一或多个寻址方案、其中保留引脚的类型的通信、在例如接口的各种组件处处置的数据的大小、由例如接口的各种组件支持的数据速率,或由例如接口的各种组件支持的带宽,以及其它参数和度量,或其任何组合。共享协议的使用可以实现装置之间的交互,这是因为每个装置可以另一装置所期望、辨识和理解的方式来操作。举例来说,支持相同协议的两个装置可以根据由协议定义的策略、程序和参数来交互,而支持不同协议的两个装置可能是不兼容的。
为了说明,支持不同协议的两个装置可能是不兼容的,这是因为协议定义不同的寻址方案(例如,不同数量的地址位)。作为另一说明,支持不同协议的两个装置可以是不兼容的,这是因为协议定义不同发射程序以用于响应于单个命令(例如,响应于命令所准许的字节的丛发长度或数量可以是不同的)。仅将命令转换为动作不应被理解为两个不同协议的使用。实际上,如果由两个协议限定的对应的程序或参数发生改变,则协议可以被视为是不同的。举例来说,如果装置支持不同寻址方案或不同传送程序以用于响应于命令,则装置可以称为支持两个不同协议。
术语“电子连通”、“导电接触”、“连接”和“耦合”可以指组件之间支持电子在组件之间流动的关系。如果组件之间存在可在任何时间支持信号在组件之间流动的任何导电路径,那么组件被视为彼此电子通信(或彼此导电接触,或彼此连接,或彼此耦合)。在任何给定时间,基于(例如,响应于)包含所连接组件的装置的操作,彼此电子连通(或彼此导电接触,或彼此连接,或彼此耦合)的组件之间的导电路径可以是开路或闭路。所连接组件之间的导电路径可以是组件之间的直接导电路径,或所连接组件之间的导电路径可以是可包含如开关、晶体管或其它组件的中间组件的间接导电路径。在一些实例中,可例如使用例如开关或晶体管等一或多个中间组件来中断所连接组件之间的信号流一段时间。
术语“耦合”是指从组件之间的开路关系移动到组件之间的闭路关系的条件,在开路关系中,信号当前无法通过导电路径在组件之间传达,在闭路关系中,信号能够通过导电路径在组件之间传达。当例如控制器等组件将其它组件耦合在一起时,组件发起允许信号通过先前不准许信号流动的导电路径在其它组件之间流动的改变。
术语“隔离”是指信号当前不能在组件之间流动的组件之间的关系。如果组件之间存在开路,则组件彼此隔离。举例来说,由定位在两个组件之间的开关间隔开的组件在开关断开时彼此隔离。当控制器分隔开两个组件时,所述控制器实现以下改变:阻止信号使用先前准许信号流动的导电路径在组件之间流动。
本文中论述的装置,包含存储器阵列,可形成于例如硅、锗、硅锗合金、砷化镓、氮化镓等半导体衬底上。在一些实例中,衬底是半导体晶片。在其它实例中,衬底可以是绝缘体上硅(SOI)衬底,例如玻璃上硅(SOG)或蓝宝石上硅(SOP),或另一衬底上的半导体材料的外延层。可通过使用包含但不限于磷、硼或砷的各种化学物质的掺杂来控制衬底或衬底的子区的导电性。可在衬底的初始形成或生长期间,通过离子植入或通过任何其它掺杂方法执行掺杂。
本文中所论述的开关组件或晶体管可表示场效应晶体管(FET),且包括包含源极、漏极和栅极的三端装置。所述端子可通过导电材料(例如金属)连接到其它电子元件。源极和漏极可为导电的,且可包括经重掺杂,例如简并,半导体区。源极与漏极可通过经轻掺杂半导体区或沟道分离。如果沟道是n型的(即,大部分载体为电子),那么FET可被称为n型FET。如果沟道是p型(即,大部分载体为空穴),那么FET可以被称作p型FET。沟道可由绝缘栅极氧化物封端。可通过将电压施加到栅极来控制沟道导电性。举例来说,将正电压或负电压分别施加到n型FET或p型FET可导致沟道变得导电。当大于或等于晶体管的阈值电压的电压被施加到晶体管栅极时,晶体管可“接通”或“激活”。当小于晶体管的阈值电压的电压施加到晶体管栅极时,晶体管可“断开”或“解除激活”。
本文结合附图阐述的描述内容描述了实例配置,且并不表示可以实施的或在权利要求书的范围内的所有实例。本文中所使用的术语“示范性”是指“充当实例、例子或说明”,且不“优选于”或“优于”其它实例。详细描述包含具体细节,以提供对所描述技术的理解。然而,可在没有这些具体细节的情况下实践这些技术。在一些情况下,以框图形式示出熟知结构和装置,以免混淆所描述实例的概念。
在附图中,类似组件或特征可以具有相同的参考标记。另外,可通过在参考标记之后跟着短划线及在类似组件当中进行区分的第二标记来区分相同类型的各种组件。如果说明书中仅使用第一参考标记,那么描述适用于具有相同第一参考标记的类似组件中的任一者,与第二参考标记无关。
可使用多种不同技术和技艺中的任一种来表示本文中所描述的信息和信号。举例来说,可通过电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示在整个上文描述中可能参考的数据、指令、命令、信息、信号、位、符号和码片。
如本文所用,术语“大体上”意指经修饰特征(例如由术语大体上修饰的动词或形容词)不必是绝对的但要足够接近以便获得特征的优点。如本文中所使用,术语“并行地”意味着所描述的动作或现象在时间上至少部分地重叠、可基本上同时进行或在时间上偏移的持续时间期间发生。
结合本文中本公开所描述的各种说明性块和模块可使用通用处理器、DSP、ASIC、FPGA或其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件或经设计以执行本文所描述的功能的其任何组合来实施或执行。通用处理器可为微处理器,但在替代方案中,处理器可为任何常规处理器、控制器、微控制器或状态机。处理器还可被实施为计算装置的组合(例如,DSP与微处理器的组合、多个微处理器、结合DSP核心的一或多个微处理器,或任何其它此配置)。
本文中所描述的功能可在硬件、由处理器执行的软件、固件或其任何组合中实施。如果以由处理器执行的软件来实施,那么可将功能作为一或多个指令或代码存储于计算机可读媒体上或通过计算机可读媒体予以发射。其它实例和实施在本公开和所附权利要求书的范围内。举例来说,归因于软件的性质,上文所描述的功能可使用由处理器执行的软件、硬件、固件、硬连线或任何这些的组合实施。实施功能的特征还可物理上位于各种位置处,包含经分布以使得功能的部分在不同物理位置处实施。并且,如本文中所使用,包含在权利要求书中,项目的列表(例如,以例如“……中的至少一个”或“……中的一或多个”的短语开始的项目的列表)中所使用的“或”指示包含性列表,使得(例如)A、B或C中的至少一个的列表意指A或B或C或AB或AC或BC或ABC(即,A和B和C)。另外,如本文所用,短语“基于”不应理解为提及封闭条件集。举例来说,在不脱离本公开的范围的情况下,描述为“基于条件A”的示范性步骤可基于条件A和条件B两者。换句话说,如本文所用,短语“基于”应同样地解释为短语“至少部分地基于”。
计算机可读媒体包含非暂时性计算机存储媒体以及包含促进将计算机程序从一处传递到另一处的任何媒体的通信媒体两者。非暂时性存储媒体可为可由通用或专用计算机存取的任何可用媒体。借助于实例而非限制,非暂时性计算机可读媒体可包括RAM、ROM、电可擦除可编程只读存储器(EEPROM)、压缩光盘(CD)ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,或可用于携载或存储呈指令或数据结构形式的所要程序代码装置且可由通用或专用计算机或者通用或专用处理器存取的任何其它非暂时性媒体。并且,适当地将任何连接称作计算机可读媒体。举例来说,如果使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)或例如红外线、无线电和微波的无线技术从网站、服务器或其它远程源发射软件,那么所述同轴电缆、光纤电缆、双绞线、数字订户线(DSL)或例如红外线、无线电和微波的无线技术包含在媒体的定义中。如本文中所使用,磁盘和光盘包含CD、激光光盘、光学光盘、数字影音光盘(DVD)、软性磁盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光以光学方式再现数据。以上各者的组合也包含在计算机可读媒体的范围内。
提供本文中的描述使得所属领域的技术人员能够进行或使用本公开。所属领域技术人员将清楚对本公开的各种修改,且本文中所定义的一般原理可应用于其它变化形式而不会脱离本公开的范围。因此,本公开不限于本文中所描述的实例和设计,而是被赋予与本文公开的原理和新颖特征一致的最宽范围。

Claims (23)

1.一种存储器装置,其包括:
非易失性存储器;
易失性存储器,其被配置成用作所述非易失性存储器的高速缓存器;和
接口控制器,其与所述非易失性存储器和所述易失性存储器耦合,所述接口控制器可操作以致使所述存储器装置进行以下操作:
从主机装置接收指示所述存储器装置将从一电力状态转变的命令,在所述电力状态中,所述存储器装置在用于所述易失性存储器的电力模式中操作所述易失性存储器并且在用于所述非易失性存储器的电力模式中操作所述非易失性存储器;
至少部分地基于所述命令,使所述易失性存储器从用于所述易失性存储器的所述电力模式转变到用于所述易失性存储器的空闲电力模式,所述空闲电力模式与用于所述易失性存储器的所述电力模式相比消耗更多电力;
至少部分地基于所述命令,使所述非易失性存储器从用于所述非易失性存储器的所述电力模式转变到用于所述非易失性存储器的第一空闲电力模式,所述第一空闲电力模式与用于所述非易失性存储器的所述电力模式相比消耗更多电力且与用于所述非易失性存储器的第二空闲电力模式相比消耗较少电力;和
至少部分地基于确定针对所述非易失性存储器进行排队的命令数量已从第一数量增加到第二数量,将所述非易失性存储器从所述第一空闲电力模式转变到所述第二空闲电力模式或与所述第二空闲电力模式相比消耗更多电力的活动模式。
2.根据权利要求1所述的存储器装置,其中所述非易失性存储器包括一或多个时钟、一或多个命令和地址缓冲器以及一或多个存储器组,且其中所述一或多个时钟、所述一或多个命令和地址缓冲器以及所述一或多个存储器组在所述第一空闲电力模式中断电。
3.根据权利要求2所述的存储器装置,其中所述一或多个时钟以及所述一或多个命令和地址缓冲器在所述第二空闲电力模式中通电,且所述一或多个存储器组在所述第二空闲电力模式中断电。
4.根据权利要求1所述的存储器装置,其中与所述非易失性存储器从所述第一空闲电力模式转变到较高电力模式相关联的时延比与所述非易失性存储器从所述第二空闲电力模式转变到所述较高电力模式相关联的时延更长。
5.根据权利要求1所述的存储器装置,其中所述第一数量是零。
6.根据权利要求1所述的存储器装置,其中所述接口控制器进一步可操作以致使所述存储器装置进行以下操作:
至少部分地基于确定与来自所述主机装置的存取命令相关联的数据不存储于所述易失性存储器中,确定与来自所述主机装置的所述存取命令相关联的所述数据存储于所述非易失性存储器中,其中针对所述非易失性存储器进行排队的所述命令数量至少部分地基于确定与来自所述主机装置的所述存取命令相关联的所述数据存储于所述非易失性存储器中而增加。
7.一种存储器装置,其包括:
非易失性存储器;
易失性存储器,其被配置成用作所述非易失性存储器的高速缓存器;和
接口控制器,其与所述非易失性存储器和所述易失性存储器耦合,所述接口控制器可操作以致使所述存储器装置进行以下操作:
从主机装置接收指示所述存储器装置将从一电力状态转变的命令,在所述电力状态中,所述存储器装置在用于所述易失性存储器的电力模式中操作所述易失性存储器并且在用于所述非易失性存储器的电力模式中操作所述非易失性存储器;
至少部分地基于所述命令,使所述易失性存储器从用于所述易失性存储器的所述电力模式转变到用于所述易失性存储器的空闲电力模式;和
至少部分地基于所述命令,使所述非易失性存储器从用于所述非易失性存储器的所述电力模式转变到用于所述非易失性存储器的空闲电力模式,其中延迟所述转变直到从所述主机装置接收到与存储于所述非易失性存储器而非所述易失性存储器中的数据相关联的存取命令之后为止。
8.根据权利要求7所述的存储器装置,其中用于所述易失性存储器的所述电力模式与用于所述易失性存储器的所述空闲电力模式相比消耗较少电力,且其中用于所述非易失性存储器的所述电力模式与用于所述非易失性存储器的所述空闲电力模式相比消耗较少电力。
9.根据权利要求8所述的存储器装置,其中用于所述易失性存储器的所述电力模式是所述易失性存储器支持的最低电力模式,且其中用于所述非易失性存储器的所述电力模式是所述非易失性存储器支持的最低电力模式。
10.根据权利要求7所述的存储器装置,其中所述非易失性存储器包括一或多个时钟、一或多个命令和地址缓冲器以及一或多个存储器组,且其中所述一或多个时钟以及所述一或多个命令和地址缓冲器在所述空闲电力模式中通电且所述一或多个存储器组在所述空闲电力模式中断电。
11.根据权利要求7所述的存储器装置,其中与所述非易失性存储器从所述电力模式转变到较高电力模式相关联的时延比与所述非易失性存储器从所述空闲电力模式转变到所述较高电力模式相关联的时延更长。
12.根据权利要求7所述的存储器装置,其中所述接口控制器进一步可操作以致使所述存储器装置进行以下操作:
确定针对所述非易失性存储器进行排队的命令数量已从第一数量增加到第二数量,其中至少部分地基于所述确定使所述非易失性存储器转变到用于所述非易失性存储器的所述空闲电力模式。
13.根据权利要求12所述的存储器装置,其中所述第一数量是零。
14.根据权利要求7所述的存储器装置,其中所述接口控制器进一步可操作以致使所述存储器装置进行以下操作:
至少部分地基于所述命令,将对在传送所述命令与传送存取命令之间观察到的针对所述主机装置的延迟的指示发射给所述主机装置,其中用于所述易失性存储器的所述空闲电力模式与所述延迟相关联。
15.一种由存储器装置执行的方法,其包括:
从主机装置接收指示所述存储器装置将从一电力状态转变的命令,在所述电力状态中,所述存储器装置在用于易失性存储器的电力模式中操作所述易失性存储器并且在用于非易失性存储器的电力模式中操作所述非易失性存储器;
至少部分地基于所述命令,使所述易失性存储器从用于所述易失性存储器的所述电力模式转变到用于所述易失性存储器的空闲电力模式,所述空闲电力模式与用于所述易失性存储器的所述电力模式相比消耗更多电力;
至少部分地基于所述命令,使所述非易失性存储器从用于所述非易失性存储器的所述电力模式转变到用于所述非易失性存储器的第一空闲电力模式,所述第一空闲电力模式与用于所述非易失性存储器的所述电力模式相比消耗更多电力且与用于所述非易失性存储器的第二空闲电力模式相比消耗较少电力;和
至少部分地基于确定针对所述非易失性存储器进行排队的命令数量已从第一数量增加到第二数量,将所述非易失性存储器从所述第一空闲电力模式转变到所述第二空闲电力模式或与所述第二空闲电力模式相比消耗更多电力的活动模式。
16.根据权利要求15所述的方法,其中所述非易失性存储器包括一或多个时钟、一或多个命令和地址缓冲器以及一或多个存储器组,且其中所述一或多个时钟、所述一或多个命令和地址缓冲器以及所述一或多个存储器组在所述第一空闲电力模式中断电。
17.根据权利要求16所述的方法,其中所述一或多个时钟以及所述一或多个命令和地址缓冲器在所述第二空闲电力模式中通电,且所述一或多个存储器组在所述第二空闲电力模式中断电。
18.根据权利要求15所述的方法,其中与所述非易失性存储器从所述第一空闲电力模式转变到较高电力模式相关联的时延比与所述非易失性存储器从所述第二空闲电力模式转变到所述较高电力模式相关联的时延更长。
19.根据权利要求15所述的方法,其另外包括:
至少部分地基于确定与来自所述主机装置的存取命令相关联的数据不存储于所述易失性存储器中,确定与来自所述主机装置的所述存取命令相关联的所述数据存储于所述非易失性存储器中,其中针对所述非易失性存储器进行排队的所述命令数量至少部分地基于确定与来自所述主机装置的所述存取命令相关联的所述数据存储于所述非易失性存储器中而增加。
20.一种由存储器装置执行的方法,其包括:
从主机装置接收指示所述存储器装置将从一电力状态转变的命令,在所述电力状态中,所述存储器装置在用于易失性存储器的电力模式中操作所述易失性存储器并且在用于非易失性存储器的电力模式中操作所述非易失性存储器;
至少部分地基于所述命令,使所述易失性存储器从用于所述易失性存储器的所述电力模式转变到用于所述易失性存储器的空闲电力模式;和
至少部分地基于所述命令,使所述非易失性存储器从用于所述非易失性存储器的所述电力模式转变到用于所述非易失性存储器的空闲电力模式,其中延迟所述转变直到从所述主机装置接收到与存储于所述非易失性存储器而非所述易失性存储器中的数据相关联的存取命令之后为止。
21.根据权利要求20所述的方法,其中用于所述易失性存储器的所述电力模式与用于所述易失性存储器的所述空闲电力模式相比消耗较少电力,且其中用于所述非易失性存储器的所述电力模式与用于所述非易失性存储器的所述空闲电力模式相比消耗较少电力。
22.根据权利要求20所述的方法,其另外包括:
确定针对所述非易失性存储器进行排队的命令数量已从第一数量增加到第二数量,其中至少部分地基于所述确定使所述非易失性存储器转变到用于所述非易失性存储器的所述空闲电力模式。
23.根据权利要求20所述的方法,所述方法另外包括:
至少部分地基于所述命令,将对在传送所述命令与传送存取命令之间观察到的针对所述主机装置的延迟的指示发射给所述主机装置,其中用于所述易失性存储器的所述空闲电力模式与所述延迟相关联。
CN202210272301.4A 2021-03-18 2022-03-18 多存储器装置中的战略性电力模式转变 Active CN115114197B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US202163162839P 2021-03-18 2021-03-18
US63/162,839 2021-03-18
US17/648,398 2022-01-19
US17/648,398 US11899944B2 (en) 2021-03-18 2022-01-19 Strategic power mode transition in a multi-memory device

Publications (2)

Publication Number Publication Date
CN115114197A CN115114197A (zh) 2022-09-27
CN115114197B true CN115114197B (zh) 2024-03-15

Family

ID=83284777

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210272301.4A Active CN115114197B (zh) 2021-03-18 2022-03-18 多存储器装置中的战略性电力模式转变

Country Status (2)

Country Link
US (1) US11899944B2 (zh)
CN (1) CN115114197B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106233225A (zh) * 2014-04-22 2016-12-14 高通股份有限公司 用于控制处理器核心的电力模式的基于延时的电力模式单元以及相关方法及系统
CN107229582A (zh) * 2016-03-23 2017-10-03 三星电子株式会社 存储器控制器和包括存储器控制器的存储装置
CN107665174A (zh) * 2016-07-27 2018-02-06 爱思开海力士有限公司 具有非易失性存储器和易失性存储器的存储系统
CN109791783A (zh) * 2016-09-16 2019-05-21 美光科技公司 在非易失性子阵列中存储存储器阵列操作信息
CN112233709A (zh) * 2019-07-15 2021-01-15 美光科技公司 存储系统深度空闲电力模式

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6192446B1 (en) * 1998-09-03 2001-02-20 Micron Technology, Inc. Memory device with command buffer
KR101114984B1 (ko) 2005-03-14 2012-03-06 삼성전자주식회사 가변적인 웨이크업 레이턴시를 가진 프로세싱 장치에서전원 관리 방법 및 장치
US8824222B2 (en) * 2010-08-13 2014-09-02 Rambus Inc. Fast-wake memory
US20130151755A1 (en) 2011-12-12 2013-06-13 Reuven Elhamias Non-Volatile Storage Systems with Go To Sleep Adaption
US9530461B2 (en) * 2012-06-29 2016-12-27 Intel Corporation Architectures and techniques for providing low-power storage mechanisms
WO2014141140A1 (en) * 2013-03-14 2014-09-18 Lsi Corporation Device power control
US10437321B2 (en) * 2018-03-12 2019-10-08 Micron Technology, Inc. Low power state implementation in a power management integrated circuit
JP7293175B2 (ja) * 2020-09-09 2023-06-19 株式会社東芝 通信装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106233225A (zh) * 2014-04-22 2016-12-14 高通股份有限公司 用于控制处理器核心的电力模式的基于延时的电力模式单元以及相关方法及系统
CN107229582A (zh) * 2016-03-23 2017-10-03 三星电子株式会社 存储器控制器和包括存储器控制器的存储装置
CN107665174A (zh) * 2016-07-27 2018-02-06 爱思开海力士有限公司 具有非易失性存储器和易失性存储器的存储系统
CN109791783A (zh) * 2016-09-16 2019-05-21 美光科技公司 在非易失性子阵列中存储存储器阵列操作信息
CN112233709A (zh) * 2019-07-15 2021-01-15 美光科技公司 存储系统深度空闲电力模式

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Low-Power Multi-Sensor System with Power Management and Nonvolatile Memory Access Control for Lot Applications";Masanori Hayashikoshi等;《IEEE Transactions on Multi-Scale Computing Systems》;全文 *

Also Published As

Publication number Publication date
CN115114197A (zh) 2022-09-27
US20220300173A1 (en) 2022-09-22
US11899944B2 (en) 2024-02-13

Similar Documents

Publication Publication Date Title
US12008265B2 (en) Quality-of-service information for a multi-memory system
US11630781B2 (en) Cache metadata management
US20220188029A1 (en) Techniques for partial writes
US11681446B2 (en) Reducing power for memory subsystem and having latency for power delivery network
CN115910176A (zh) 用于高速缓存元数据的后错误校正码寄存器
CN115114197B (zh) 多存储器装置中的战略性电力模式转变
US11853609B2 (en) Power mode control in a multi-memory device based on queue length
US11586557B2 (en) Dynamic allocation of buffers for eviction procedures
US11526442B2 (en) Metadata management for a cache
US11954358B2 (en) Cache management in a memory subsystem
US11841796B2 (en) Scratchpad memory in a cache
US11972145B2 (en) Opportunistic data movement
US11995011B2 (en) Efficient turnaround policy for a bus
US11797231B2 (en) Hazard detection in a multi-memory device
US20220066698A1 (en) Efficient command scheduling for multiple memories
US20210397380A1 (en) Dynamic page activation
US11747992B2 (en) Memory wear management
CN114063904B (zh) 使用元数据的事务管理
US20210398601A1 (en) Direct testing of in-package memory

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