高速缓存中的便笺式存储器的制作方法
高速缓存中的便笺式存储器
1.交叉引用
2.本专利申请要求巴拉普兰(ballapuram)等人于2021年1月21日提交的标题为“高速缓存中的便笺式存储器(scratchpad memory in a cache)”的第63/140,094号美国临时专利申请的优先权,所述申请转让给本受让人,并且明确地以全文引用的方式并入本文中。
技术领域
3.技术领域涉及高速缓存中的便笺式存储器。
背景技术:
4.存储器装置广泛用于在各个电子装置中存储信息,例如计算机、无线通信装置、相机、数字显示器等等。信息通过将存储器装置内的存储器单元编程到各个状态来存储。例如,二进制存储器单元可以编程成两个支持状态中的一个,通常表示为逻辑1或逻辑0。在一些实例中,单个存储器单元可支持超过两个状态,其中任一个状态可被存储。为了存取所存储的信息,组件可读取或感测存储器装置中的至少一个所存储状态。为了存储信息,组件可写入或编程存储器装置中的状态。
5.存在各种类型的存储器装置和存储器单元,包含磁性硬盘、随机存取存储器(ram)、只读存储器(rom)、动态ram(dram)、同步动态ram(sdram)、铁电ram(feram)、磁性ram(mram)、电阻ram(rram)、快闪存储器、相变存储器(pcm)、自选存储器、硫族化物存储器技术等。存储器单元可以是易失性或非易失性的。feram等非易失性存储器即使在没有外部电源的情况下也可将它们存储的逻辑状态维持很长一段时间。dram等易失性存储器装置在与外部电源断开连接的情况下可能会丢失它们存储的状态。
技术实现要素:
6.描述一种方法。所述方法可由存储器装置执行,并且可包含:在具有用于满足主机装置的请求的非确定性时延的高速缓存模式中操作易失性存储器的一部分,所述高速缓存模式与所述部分和非易失性存储器之间的数据移动相关联;监测所述存储器装置中的寄存器的输出引脚,所述输出引脚与所述部分相关联且指示所述部分的操作模式;至少部分地基于监测所述寄存器的所述输出引脚,确定是否将所述部分的所述操作模式从所述高速缓存模式变成具有用于满足所述主机装置的请求的确定性时延的便笺模式,所述便笺模式用于独立于所述非易失性存储器来操作所述部分;以及至少部分地基于确定改变所述部分的所述操作模式,在所述便笺模式中操作所述易失性存储器的所述部分。
7.描述一种设备。所述设备可包含:非易失性存储器;易失性存储器;以及接口控制器,其与所述非易失性存储器和所述易失性存储器耦合。所述接口控制器可用于使所述设备:在具有用于满足主机装置的请求的非确定性时延的高速缓存模式中操作所述易失性存储器的一部分,所述高速缓存模式与所述部分和所述非易失性存储器之间的数据移动相关联;监测所述设备中的寄存器的输出引脚,所述输出引脚与所述部分相关联且指示所述部
分的操作模式;至少部分地基于监测所述寄存器的所述输出引脚,确定是否将所述部分的所述操作模式从所述高速缓存模式变成具有用于满足所述主机装置的请求的确定性时延的便笺模式,所述便笺模式用于独立于所述非易失性存储器来操作所述部分;以及至少部分地基于确定改变所述部分的所述操作模式,在所述便笺模式中操作所述易失性存储器的所述部分。
8.描述一种设备。所述设备可包含:非易失性存储器;易失性存储器;以及接口控制器,其与所述非易失性存储器和所述易失性存储器耦合。所述接口控制器可用于使所述设备:在具有用于满足主机装置的请求的确定性时延的便笺模式中操作所述易失性存储器的一部分,所述便笺模式用于独立于所述非易失性存储器来操作所述部分;监测所述设备中的寄存器的输出引脚,所述输出引脚与所述部分相关联且指示所述部分的操作模式;至少部分地基于监测所述寄存器的所述输出引脚,确定是否将所述部分的所述操作模式从所述便笺模式变成具有用于满足所述主机装置的请求的非确定性时延的高速缓存模式,所述高速缓存模式与所述部分和所述非易失性存储器之间的数据移动相关联;以及至少部分地基于确定改变所述部分的所述操作模式,在所述高速缓存模式中操作所述易失性存储器的所述部分。
附图说明
9.图1示出根据本文所公开的实例的支持高速缓存中的便笺式存储器的系统的实例。
10.图2示出根据本文所公开的实例的支持高速缓存中的便笺式存储器的存储器子系统的实例。
11.图3示出根据本文所公开的实例的支持高速缓存中的便笺式存储器的装置的实例。
12.图4示出根据本文所公开的实例的支持高速缓存中的便笺式存储器的过程流的实例。
13.图5示出根据本文所公开的实例的支持高速缓存中的便笺式存储器的过程流的实例。
14.图6示出根据本文所公开的实例的支持高速缓存中的便笺式存储器的接口控制器的框图。
15.图7和8示出根据本文所公开的实例的流程图,示出了支持高速缓存中的便笺式存储器的一或多种方法。
具体实施方式
16.电子装置等装置可包含非易失性存储器(例如,用于存储信息以及其它操作的主存储器)和可用作非易失性存储器的高速缓存的易失性存储器(例如,辅助存储器)。此配置可允许装置受益于非易失性存储器的优点(例如,非易失性和永久性存储、高存储容量、低功耗),同时通过易失性存储器保持与主机装置的兼容性,以及其它方面。易失性存储器作为高速缓存(或“处于高速缓存模式”)的操作可能导致用于满足主机装置的请求的非确定性时延,因为用于满足请求的存储器可能会变化,以及其它原因。例如,易失性存储器可用
于满足目标数据存在于易失性存储器中的请求,而非易失性存储器(其具有比易失性存储器更长的存取时间)可用于满足目标数据不存在于易失性存储器中的请求。但非确定性时延可能不适用于特定应用或特定场景,并且可能导致系统和装置性能受损。
17.根据本文中所描述的技术,装置可将易失性存储器的一部分操作为便笺(或“在便笺模式中”操作),使得主机装置的特定请求可以用确定性的时延满足。在便笺模式中,可以避免暗示所述部分只能由易失性存储器满足的请求和用于高速缓存模式的非确定性时延操作,由此允许装置根据确定性时延操作。为了适应确定性存储器操作的波动需求,装置可配置成动态地调整在便笺模式中操作的部分的大小。例如,装置可将易失性存储器的一区域的操作模式从高速缓存模式切换所述便笺模式,由此增加便笺部分的大小。作为另一实例,装置可将易失性存储器的一区域的操作模式从便笺模式切换到高速缓存模式,由此减小便笺部分的大小。
18.本公开的特征首先在参考图1和2所描述的系统和存储器子系统的上下文中描述。本公开的特征在参考图3所描述的装置和参考图4和5所描述的过程流的上下文中描述。本公开的这些和其它特征进一步由参考图6-8所描述的涉及高速缓存中的动态便笺的设备图和流程图示出,并参考这些图描述。
19.图1示出根据本文所公开的实例的支持高速缓存中的便笺式存储器的系统100的实例。系统100可包含在计算机或电话等电子装置中。系统100可包含主机装置105和存储器子系统110。主机装置105可以是处理器或芯片上系统(soc),其与接口控制器115以及包含系统100的电子装置的其它组件介接。存储器子系统110可存储主机装置105的电子信息(例如,数字信息、数据)并提供对电子信息的存取。存储器子系统110可包含接口控制器115、易失性存储器120和非易失性存储器125。在一些实例中,接口控制器115、易失性存储器120和非易失性存储器125可包含在同一物理封装中,例如封装130。但是,接口控制器115、易失性存储器120和非易失性存储器125可以安置在不同的相应裸片(例如,硅裸片)上。
20.系统100中的装置可通过各个导电线(例如,迹线、印刷电路板(pcb)路由、重布层(rdl)路由)耦合,这些导电线可启用装置之间的信息(例如,命令、地址、数据)传送。导电线可构成信道、数据总线、命令总线、地址总线等等。
21.存储器子系统110可配置成提供非易失性存储器125的益处,同时维持与支持不同类型的存储器(例如易失性存储器120,以及其它实例)的协议的主机装置105的兼容性。例如,非易失性存储器125可提供益处(例如,相对于易失性存储器120),例如非易失性、更高容量或更低功耗。但是,主机装置105可能是不兼容的,或低效地配置有非易失性存储器125的各个方面。举例来说,主机装置105可支持与非易失性存储器125不兼容的电压、存取时延、协议、页大小等。为了补偿主机装置105和非易失性存储器125之间的不兼容性,存储器子系统110可配置有易失性存储器120,其可与主机装置105兼容并用作非易失性存储器125的高速缓存。因此,主机装置105可以使用易失性存储器120所支持的协议,同时受益于非易失性存储器125的优点。
22.在一些实例中,系统100可包含在计算装置、电子装置、移动计算装置或无线装置中或与其耦合。装置可以是便携式电子装置。例如,装置可以是计算机、膝上型计算机、平板计算机、智能电话、蜂窝电话、可穿戴装置、互联网连接装置等等。在一些实例中,装置可配置成用于经由或存取点进行双向无线通信。在一些实例中,与系统100相关联的装置能
够进行机器型通信(mtc)、机器间(m2m)通信或装置间(d2d)通信。在一些实例中,与系统100相关联的装置可以称为用户设备(ue)、站点(sta)、移动终端等等。
23.主机装置105可配置成使用接口控制器115所支持的第一协议(例如,低功率双倍数据速率(lpddr))与存储器子系统110介接。因此,在一些实例中,主机装置105可与接口控制器115直接介接,并与非易失性存储器125和易失性存储器120间接介接。在替代性实例中,主机装置105可与非易失性存储器125和易失性存储器120直接介接。主机装置105还可与包含系统100的电子装置的其它组件介接。主机装置105可以是或包含soc、通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件,或者它可以是这些类型的组件的组合。在一些实例中,主机装置105可以称为主机。
24.接口控制器115可配置成代表主机装置105(例如,基于或响应于主机装置105发出的一或多个命令或请求)与易失性存储器120和非易失性存储器125介接。举例来说,接口控制器115可促进代表主机装置105的易失性存储器120和非易失性存储器125中的数据检索和存储。因此,接口控制器115可促进各个子组件之间的数据传送,例如主机装置105、易失性存储器120或非易失性存储器125中的至少一些之间的数据传送。接口控制器115可使用第一协议与主机装置105和易失性存储器120介接,并且可使用非易失性存储器125所支持的第二协议与非易失性存储器125介接。
25.非易失性存储器125可配置成存储包含系统100的电子装置的数字信息(例如,数据)。相应地,非易失性存储器125可包含一或多个存储器单元阵列,及配置成操作存储器单元阵列的本地存储器控制器。在一些实例中,存储器单元可以是或包含feram单元(例如,非易失性存储器125可以是feram)。非易失性存储器125可配置成使用第二协议与接口控制器115介接,所述第二协议不同于在接口控制器115和主机装置105之间使用的第一协议。在一些实例中,相比于易失性存储器120,非易失性存储器125可具有更长的存取操作时延。例如,从非易失性存储器125检索数据花费的时间可长于从易失性存储器120检索数据。类似地,将数据写入到非易失性存储器125花费的时间可长于将数据写入到易失性存储器120。在一些实例中,非易失性存储器125可具有比易失性存储器120小的页大小,如本文所描述。
26.易失性存储器120可配置成用作一或多个组件(例如非易失性存储器125)的高速缓存。例如,易失性存储器120可存储包含系统100的电子装置的信息(例如,数据)。相应地,易失性存储器120可包含一或多个存储器单元阵列,及配置成操作存储器单元阵列的本地存储器控制器。在一些实例中,存储器单元可以是或包含dram单元(例如,易失性存储器可以是dram)。非易失性存储器125可配置成使用在接口控制器115和主机装置105之间使用的第一协议与接口控制器115介接。
27.在一些实例中,易失性存储器120可具有比非易失性存储器125短的存取操作时延。例如,从易失性存储器120检索数据花费的时间可少于从非易失性存储器125检索数据。类似地,将数据写入到易失性存储器120花费的时间可少于将数据写入到非易失性存储器125。在一些实例中,易失性存储器120可具有比非易失性存储器125大的页大小。举例来说,易失性存储器120的页大小可以是2千字节(2kb),且非易失性存储器125的页大小可以是64字节(64b)或128字节(128b)。
28.尽管非易失性存储器125可以是密度比易失性存储器120高的存储器,但是存取非
易失性存储器125花费的时间可长于存取易失性存储器120(例如,由于架构和协议不同,以及其它原因)。相应地,将易失性存储器120操作为高速缓存可减少系统100中的时延。作为实例,来自主机装置105的数据存取请求可以通过从易失性存储器120而不是从非易失性存储器125检索数据来相对快速地满足。为了促进易失性存储器120作为高速缓存的操作,接口控制器115可包含多个缓冲器135。缓冲器135可与接口控制器115安置在相同的裸片上,并且可配置成临时存储数据以用于在一或多个存取操作(例如,存储和检索操作)期间易失性存储器120、非易失性存储器125或主机装置105(或其任何组合)之间传送。
29.存取操作也可称为存取过程或存取程序,并且可涉及由存储器子系统110中的一或多个组件执行的一或多个子操作。存取操作的实例可包含其中由主机装置105提供的数据存储在(例如,写入到)易失性存储器120或非易失性存储器125(或这两者)中的存储操作,以及其中主机装置105所请求的数据从易失性存储器120或非易失性存储器125获得(例如,读取)并被返回到主机装置105的检索操作。
30.为了在存储器子系统110中存储数据,主机装置105可通过向接口控制器115传输存储命令(也称为存储请求、写入命令或写入请求)发起存储操作(或“存储过程”)。存储命令可针对非易失性存储器125中的一组非易失性存储器单元。在一些实例中,一组存储器单元也可称为存储器的一部分。主机装置105还可向接口控制器115提供要写入到所述一组非易失性存储器单元的数据。接口控制器115可将数据临时存储在缓冲器135-a中。在将数据存储在缓冲器135-a中之后,接口控制器115可将数据从缓冲器135-a传送到易失性存储器120或非易失性存储器125或这两者。在写通模式中,接口控制器115可将数据传送到易失性存储器120和非易失性存储器125两者。在写回模式中,接口控制器115可仅将数据传送到易失性存储器120(其中数据在随后的收回过程中传送到非易失性存储器125)。
31.在任一模式中,接口控制器115可识别易失性存储器120中适当的一组一或多个易失性存储器单元用于存储与存储命令相关联的数据。为了这样做,接口控制器115可实施组关联映射,其中非易失性存储器125中的每一组一或多个非易失性存储器单元可以映射到易失性存储器120中的多组(例如,行)易失性存储器单元。举例来说,接口控制器115可实施n向关联映射,其允许一组非易失性存储器单元中的数据存储在易失性存储器120中的n组易失性存储器单元中的一个中。因此,接口控制器115可通过引用与所针对的一组非易失性存储器单元相关联的n组易失性存储器单元来将易失性存储器120管理为非易失性存储器125的高速缓存。如本文中所使用,一“组”物体可以指物体中的一或多个,除非以其它方式描述或指出。虽然参考组关联映射进行描述,但是接口控制器115可以通过实施一或多个其它类型的映射(例如直接映射或关联映射,以及其它实例)来将易失性存储器120管理为高速缓存。
32.在确定与所针对的一组非易失性存储器单元相关联的n组易失性存储器单元之后,接口控制器115可以将数据存储在所述n组易失性存储器单元中的一或多个中。因此,来自主机装置105的针对数据的后续检索命令可以通过从较低时延易失性存储器120检索数据而不是从较高时延非易失性存储器125检索数据来高效地满足。接口控制器115可基于或响应于与存储在n组易失性存储器120中的数据相关联的一或多个参数,例如有效性、使用期或数据的修改状态,确定n组易失性存储器120中的哪些存储数据。因此,主机装置105的存储命令可以完全地(例如,在写回模式中)或部分地(例如,在写通模式中)通过将数据存
储在易失性存储器120中来满足。为了跟踪存储在易失性存储器120中的数据,接口控制器115可以为一或多组易失性存储器单元(例如,为每一组易失性存储器单元)存储标签地址,其指示具有存储在给定一组易失性存储器单元中的数据的非易失性存储器单元。
33.为了从存储器子系统110检索数据,主机装置105可通过向接口控制器115传输检索命令(也称为检索请求、读取命令或读取请求)发起检索操作(也称为检索过程)。检索命令可针对非易失性存储器125中的一组一或多个非易失性存储器单元。在接收到检索命令后,接口控制器115可检查易失性存储器120中的所请求数据。举例来说,接口控制器115可检查与所针对的一组非易失性存储器单元相关联的n组易失性存储器单元中的所请求数据。如果n组易失性存储器单元中的一个存储所请求数据(例如,存储所针对的一组非易失性存储器单元的数据),那么接口控制器115可将数据从易失性存储器120传送到缓冲器135-a(例如,响应于确定n组易失性存储器单元中的一个存储所请求数据,如图4和5中所描述),使得它可以传输到主机装置105。
34.一般来说,术语“命中”可用于指代其中易失性存储器120存储主机装置105所针对的数据的场景。如果n组一或多个易失性存储器单元未存储所请求数据(例如,n组易失性存储器单元存储不为所针对的一组非易失性存储器单元的一组非易失性存储器单元的数据),那么接口控制器115可将所请求数据从非易失性存储器125传送到缓冲器135-a(例如,响应于确定n组易失性存储器单元未存储所请求数据,如参考图4和5所描述),使得它可以传输到主机装置105。一般来说,术语“未命中”可用于指代其中易失性存储器120未存储主机装置105所针对的数据的场景。
35.更确切地说,写入命中可指其中易失性存储器120中的数据与来自主机装置的写入命令所针对的非易失性存储器地址相关联(例如,匹配存储于来自主机装置的写入命令所针对的非易失性存储器地址处的数据)的场景;而写入未命中可指其中易失性存储器120中不存在与非易失性存储器地址相关联的数据的场景。
36.在未命中场景中,在将所请求数据传送到缓冲器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中的数据。
37.因此,如果易失性存储器120全满,那么接口控制器115可执行收回程序以将数据从易失性存储器120保存到非易失性存储器125(例如,在易失性存储器120中为新数据腾出
空间)。在一些实例中,接口控制器115可执行“填充”程序,其中来自非易失性存储器125的数据被保存到易失性存储器120。在未命中的情况下,接口控制器115可执行填充程序(例如,用相关数据填充易失性存储器120)。例如,在读取未命中(其发生在来自主机装置105的读取命令针对易失性存储器120中不存在的数据时)的情况下,接口控制器115可检索读取命令所请求的数据,并且除了将其返回到主机装置之外,还将其存储在易失性存储器120中(例如,使得数据可以在将来被快速检索到)。
38.因此,取决于主机装置105的请求(例如,读取命令、写入命令)的命中或未命中状态,存储器子系统110可使用易失性存储器120或非易失性存储器125满足(或“实现”)请求。例如,在读取未命中的情况下,来自主机装置105的读取命令可由非易失性存储器125满足,这意味着从主机装置105返回的数据可来源于非易失性存储器125。并且在读取命中的情况下,来自主机装置105的读取命令可由易失性存储器120满足,这意味着从主机装置105返回的数据可来源于易失性存储器120。
39.但是,易失性存储器120和非易失性存储器可具有不同的存储器单元存取时延(或“存取时延”),这意味着与满足主机装置105的请求相关联的时延可以是非确定性的(例如,不可预测的、未知的)。存取时延可以指存储器子系统110满足(或“实现”)主机装置105的请求的时间量,并且可以相对于请求接收来测量。如果易失性存储器120在高速缓存模式中操作,那么存取时延的由于易失性存储器120和非易失性存储器125的不同架构的变化可因为收回和填充程序的不可预测使用而进一步加剧。例如,满足写入命令的时延(被称为“写入时延”)可依据是否实施收回程序以在易失性存储器120中为写入数据腾出空间而变化。
40.根据本文中所描述的技术,存储器子系统110可通过在便笺模式中操作易失性存储器120的一部分向主机装置105提供确定性时延,以及其它优点。如果在便笺模式中操作易失性存储器120的所述部分,那么存储器子系统110可免去在高速缓存模式中使用的收回程序和填充程序,并且可以确保主机装置105的请求通过使用易失性存储器120而满足。在一些实例中,存储器子系统110可动态地调整在便笺模式中操作的所述部分的大小(例如,基于或响应于来自主机装置105的控制信令)。
41.系统100可包含支持高速缓存中的便笺式存储器的任何数量的非暂时性计算机可读媒体。例如,主机装置105、接口控制器115、易失性存储器120或非易失性存储器125可包含或以其它方式存取一或多个非暂时性计算机可读媒体,所述非暂时性计算机可读媒体存储用于执行本文中属于主机装置105、接口控制器115、易失性存储器120或非易失性存储器125的功能的指令(例如,固件)。例如,此类指令在由主机装置105(例如,主机装置控制器)、接口控制器115、易失性存储器120(例如,本地控制器)或非易失性存储器125(例如,本地控制器)执行时可使主机装置105、接口控制器115、易失性存储器120或非易失性存储器125执行本文中所描述的相关联功能。
42.图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的协议的主机装置的兼容性。
43.在图2中,组件之间的虚线表示数据流或数据通信路径,组件之间的实线表示命令流或命令的通信路径。在一些情况下,存储器子系统200是可包含在电子装置中的多个类似或相同子系统中的一个。每个子系统可以称为切片,并且在一些实例中,可与主机装置的相应信道相关联。
44.非易失性存储器206可配置成用作主机装置的主存储器(例如,用于长期数据存储的存储器)。在一些情况下,非易失性存储器206可包含一或多个feram单元阵列。每个feram单元可包含选择组件和铁电电容器,并且可通过向例如字线、板线和数字线的一或多个存取线施加适当电压来存取。在一些实例中,耦合到经激活字线的feram单元子集可以例如并行或同时进行感测,而不必感测与经激活字线耦合的所有feram单元。相应地,feram阵列的页大小可不同于(例如,小于)dram页大小。在存储器装置的上下文中,页可以指行(例如,具有共同行地址的一组存储器单元)中的存储器单元,并且页大小可以指一行中的存储器单元或列地址的数量或在存取操作期间存取的列地址的数量。替代地,页大小可以指通过各个接口处理的数据大小或一行能够存储的数据量。在一些情况下,不同存储器装置类型可具有不同页大小。例如,dram页大小(例如,2kb)可以是非易失性存储器(例如,feram)页大小(例如,64b)的超集。
45.feram阵列的较小页大小可提供各种效率益处,因为相比于单独的dram单元,单独的feram单元可能需要更多功率来读取或写入。例如,feram阵列的较小页大小可促进有效能量使用,因为在相关联的信息变化较小时,可以激活较小数量的feram单元。在一些实例中,feram单元阵列的页大小可以变化,例如动态地变化(例如,在feram单元阵列的操作期间),这取决于使用feram操作的数据和命令的性质。
46.尽管单独的feram单元可能比单独的dram单元需要更多的功率来读取或写入,但是feram单元可在没有外部电源的情况下将其存储的逻辑状态维持很长一段时间,因为feram单元中的铁电材料可在没有电场的情况下维持非零电极化。因此,相比于易失性存储器单元(例如,易失性存储器204中的dram单元),在非易失性存储器206中包含feram阵列可提供功率和效率益处,因为它可以减少或消除执行刷新操作的要求。
47.易失性存储器204可配置成用作非易失性存储器206的高速缓存。在一些情况下,易失性存储器204可包含一或多个dram单元阵列。每个dram单元可包含电容器,所述电容器包含存储表示可编程状态的电荷的介电材料。易失性存储器204的存储器单元可在逻辑上分组或布置成一或多个存储器组(在本文中称为“组”)。例如,易失性存储器204可包含十六个组。一个组的存储器单元可布置成具有相交的列和行的网格或阵列,并且每个存储器单元可以通过向所述存储器单元的数字线(例如,列线)和字线(例如,行线)施加适当电压来存取或刷新。一个组中的行可称为页,并且页大小可以指一行中列或存储器单元的数量(以及因此一个行能够存储的数据量)。如所提到,易失性存储器204的页大小可不同于(例如,大于)非易失性存储器206的页大小。
48.接口控制器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耦合的各个总线接口可支持不同数据量或数据速率。
49.数据总线接口208可与数据总线260、事务总线222和缓冲器电路系统224耦合。数据总线接口208可配置成通过数据总线260传输和接收数据,并通过事务总线222传输和接收控制信息(例如,确认/否定确认)或元数据。数据总线接口208还可配置成在数据总线260和缓冲器电路系统224之间传送数据。数据总线260和事务总线222可与接口控制器202和主机装置耦合,使得在接口控制器202和主机装置之间建立导电路径。在一些实例中,事务总线222的引脚可以称为数据掩码反转(dmi)引脚。尽管示出了一个数据总线260和一个事务总线222,可存在任何数量的数据总线260和任何数量的事务总线222与一或多个数据总线接口208耦合。
50.c/a总线接口210可与c/a总线226和解码器228耦合。c/a总线接口210可配置成通过c/a总线226传输和接收命令和地址。通过c/a总线226接收的命令和地址可与通过数据总线260接收或传输的数据相关联。c/a总线接口210还可配置成向解码器228传输命令和地址,使得解码器228可以将命令解码,并将经解码命令和相关联的地址转发到命令电路系统230。
51.数据总线接口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之间建立导电路径。
52.数据总线接口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之间建立导电路径。
53.除了用于与经耦合装置通信的总线和总线接口之外,接口控制器202还可包含用于将非易失性存储器206操作为主存储器并将易失性存储器204操作为高速缓存的电路系
统。例如,接口控制器202可包含命令电路系统230、缓冲器电路系统224、高速缓存管理电路系统244、一或多个引擎246和一或多个调度器248。
54.命令电路系统230可与缓冲器电路系统224、解码器228、高速缓存管理电路系统244和调度器248以及其它组件耦合。命令电路系统230可配置成从解码器228接收命令和地址信息,并将命令和地址信息存储在队列250中。命令电路系统230可包含处理(例如,来自主机装置的)命令信息和来自其它组件(例如,高速缓存管理电路系统244、缓冲器电路系统224)的存储信息并使用所述信息生成调度器248的一或多个命令的逻辑262。命令电路系统230还可配置成将地址信息(例如,地址位)传送到高速缓存管理电路系统244。在一些实例中,逻辑262可以是配置成用作有限状态机(fsm)的电路。
55.缓冲器电路系统224可与数据总线接口208、命令电路系统230、存储器接口电路系统234和存储器接口电路系统234耦合。缓冲器电路系统224可包含用于易失性存储器204中的至少一些组(如果不是每一组的话)的一组一或多个缓冲器电路。缓冲器电路系统224还可包含用于存取缓冲器电路的组件(例如,存储器控制器)。在一个实例中,易失性存储器204可包含十六个组,且缓冲器电路系统224可包含十六组缓冲器电路。每一组缓冲器电路可配置成存储来自或用于易失性存储器204的相应组的数据(或这两者)。作为实例,用于组0(bk0)的缓冲器电路组可配置成存储来自或用于易失性存储器204的第一组的数据(或这两者),并且组15(bk15)的缓冲器电路可配置成存储来自或用于易失性存储器204的第十六组的数据(或这两者)。
56.缓冲器电路系统224中的每一组缓冲器电路可包含一对缓冲器。所述一对缓冲器可包含:一个缓冲器(例如,打开页数据(opd)缓冲器),其配置成存储主机装置的存取命令(例如,写入命令或读取命令)所针对的数据;另一缓冲器(例如,受害者页数据(vpd)缓冲器),其配置成存储用于由存取命令产生的收回过程的数据。例如,用于bk0的缓冲器电路组可包含缓冲器218和缓冲器220,它们可分别为缓冲器135-a和135-b的实例。缓冲器218可配置成存储主机装置的存取命令所针对的bk0数据。并且,缓冲器220可配置成存储作为存取命令所触发的收回过程的部分而从bk0传送的数据。缓冲器电路组中的每个缓冲器可配置有对应于易失性存储器204的页大小的大小(例如,存储容量)。例如,如果易失性存储器204的页大小是2kb,那么每个缓冲器的大小可以是2kb。因此,在一些实例中,缓冲器的大小可等于易失性存储器204的页大小。
57.高速缓存管理电路系统244可与命令电路系统230、引擎246和调度器248以及其它组件耦合。高速缓存管理电路系统244可包含用于易失性存储器的一或多个组(例如,每个组)的高速缓存管理电路组。作为实例,高速缓存管理电路系统244可包含用于bk0到bk15的十六个高速缓存管理电路组。每个高速缓存管理电路组可包含两个可配置成存储易失性存储器204的存储信息的存储器阵列。作为实例,用于bk0的高速缓存管理电路组可包含存储器阵列252(例如,高速缓存dram(cdram)标记阵列(cdt-ta))和存储器阵列254(例如,cdram有效(cdt-v)阵列),它们可配置成存储bk0的存储信息。在一些实例中,存储器阵列也可称为阵列或缓冲器。在一些情况下,存储器阵列可以是或包含易失性存储器单元,例如静态ram(sram)单元。
58.存储信息(或“元数据”)可包含与易失性存储器204相关联的内容信息、有效性信息或脏信息(或其任何组合),以及其它实例。内容信息(也可称为标签信息或地址信息)可
指示哪一数据存储在一组易失性存储器单元中。例如,易失性存储器204的一行的内容信息(例如,标签地址)可指示哪一组一或多个非易失性存储器单元当前具有数据存储在所述行中。如所提到,有效性信息可指示存储在一组易失性存储器单元中的数据是不是实际数据(例如,具有预期次序或形式的数据)或占位符数据(例如,数据是随机或虚设的,不具有预期或重要次序)。并且,脏信息可指示存储在易失性存储器204的一组一或多个易失性存储器单元中的数据是否不同于存储在非易失性存储器206的一组一或多个非易失性存储器单元中的对应数据。例如,脏信息可指示存储在一组易失性存储器单元中的数据是否已经相对于存储在非易失性存储器206中的数据更新。
59.存储器阵列252可包含存储易失性存储器204的相关联组(例如,bk0)的存储信息(例如,标签信息、有效性信息、脏信息)的存储器单元。存储信息可逐行存储(例如,相关联非易失性存储器组的每一行可具有相应存储信息)。接口控制器202可通过引用存储器阵列252中的存储信息来检查易失性存储器204中的所请求数据。举例来说,接口控制器202可从主机装置接收用于非易失性存储器206中的一组非易失性存储器单元中的数据的检索命令。接口控制器202可使用存取请求所针对的一组一或多个地址位(例如,一组行地址位)以引用存储器阵列252中的存储信息。举例来说,使用组关联映射,接口控制器202可引用存储器阵列252中的内容信息,以确定哪一组易失性存储器单元(若存在)存储所请求数据。
60.除了存储易失性存储器单元的内容信息之外,存储器阵列252还可存储指示一组易失性存储器单元中的数据是实际数据(也称为有效数据)还是随机数据(也称为无效数据)的有效性信息。例如,易失性存储器204中的易失性存储器单元初始地可存储随机数据,并继续这样做,直到易失性存储器单元用来自主机装置或非易失性存储器206的数据写入为止。为了跟踪哪些数据有效,如果实际数据存储在其中一组易失性存储器单元中,那么存储器阵列252可配置成设置每组(例如,行)易失性存储器单元的位。这个位可以称为有效性位或有效性标志。如同内容信息,存储于存储器阵列252中的有效性信息可以逐行存储。因此,在一些实例中,每个有效性位可指示存储在相关联行中的数据的有效性。
61.在一些实例中,存储器阵列252可存储指示一组(例如,行)易失性存储器单元是否存储任何脏数据的脏信息。如同有效性信息,存储于存储器阵列252中的脏信息可以逐行存储。
62.存储器阵列254可类似于存储器阵列252,并且还可包含存储与存储器阵列252相关联的易失性存储器204的组(例如,bk0)的存储信息的存储器单元。例如,存储器阵列254可存储易失性存储器204的一个组的有效性信息和脏信息。但是,存储于存储器阵列254中的存储信息可以基于子块而不是行来存储。例如,存储于存储器阵列254的存储器单元中的有效性信息可指示易失性存储器204的一行中的易失性存储器单元子集的数据的有效性。
63.作为实例,存储器阵列254中的有效性信息可指示存储在易失性存储器204的bk0的行中的每个数据子集(例如,32b或64b)的有效性。类似地,存储于存储器阵列254的存储器单元中的脏信息可指示易失性存储器204的一行中的哪些易失性存储器单元子集存储脏数据。举例来说,存储器阵列254中的脏信息可指示存储在易失性存储器204的bk0的行中的每个数据子集(例如,32b或64b)的脏状态。在存储器阵列252中逐行存储存储信息(例如,标签信息、有效性信息)可允许接口控制器202确定针对易失性存储器204中的数据是否存在命中或未命中。在存储器阵列254中基于子块存储存储信息(例如,有效性信息、脏信息)可
允许接口控制器202确定要返回到主机装置(例如,在检索过程期间)的一或多个数据子集和要保持在非易失性存储器206中(例如,在收回过程期间)的一或多个数据子集。
64.每个高速缓存管理电路组还可包含与命令电路系统230、引擎246、存储器接口电路系统234、存储器接口电路系统240和用于所述高速缓存管理电路组的存储器阵列以及其它组件耦合的相应一对寄存器。例如,高速缓存管理电路组可包含第一寄存器(例如,可以是打开页标签(opt)寄存器的寄存器256),其配置成从存储器阵列252或调度器248-b或这两者接收存储信息(例如,一或多个位的标签信息、有效性信息或脏信息、其它信息或任何组合)。高速缓存管理电路系统组还可包含第二寄存器(例如,寄存器258,其可以是受害者页标签(vpt)寄存器),其配置成从存储器阵列254和调度器248-a或这两者接收存储信息(例如,有效性信息或脏信息或这两者)。寄存器256和寄存器258中的信息可以传送到命令电路系统230和引擎246,以启用这些组件的决策。例如,命令电路系统230可基于或响应于寄存器256或寄存器258或这两者中的存储信息而发出用于读取非易失性存储器206或易失性存储器204的命令。
65.引擎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。
66.引擎246-b可与寄存器258和调度器248-a耦合。引擎246-b可配置成从寄存器258接收存储信息,并基于存储信息向调度器248-a发出命令。举例来说,引擎246-b可向调度器248-a发出命令,以发起或促进脏数据从缓冲器220到非易失性存储器206的传送(例如,作为收回过程的部分)。如果缓冲器220保持从易失性存储器204传送的一组数据(例如,受害者数据),那么引擎246-b可指示缓冲器220中的所述一组数据中应该传送到非易失性存储器206的一或多个子集(例如,其中的64b)。
67.调度器248-a可与接口控制器202的各种组件耦合,并且可通过向存储器接口电路系统234发出命令来促进存取非易失性存储器206。调度器248-a所发出的命令可基于或响应于来自命令电路系统230、引擎246-a、引擎246-b或这些组件的组合的命令。类似地,调度器248-b可与接口控制器202的各种组件耦合,并且可通过向存储器接口电路系统240发出命令来促进存取易失性存储器204。调度器248-b所发出的命令可基于或响应于来自命令电路系统230或引擎246-a或这两者的命令。
68.存储器接口电路系统234可经由数据总线接口212和c/a总线接口214中的一或多个与非易失性存储器206通信。例如,存储器接口电路系统234可提示c/a总线接口214通过c/a总线236将存储器接口电路系统234所发出的命令转发到非易失性存储器206中的本地控制器。并且,存储器接口电路系统234可通过数据总线232向非易失性存储器206传输或从其接收数据。在一些实例中,存储器接口电路系统234所发出的命令可受非易失性存储器206支持,但不受易失性存储器204支持(例如,由存储器接口电路系统234发出的命令可不
同于由存储器接口电路系统240发出的命令)。
69.存储器接口电路系统240可经由数据总线接口216和c/a总线接口264中的一或多个与易失性存储器204通信。例如,存储器接口电路系统240可提示c/a总线接口264通过c/a总线242将存储器接口电路系统240所发出的命令转发到易失性存储器204的本地控制器。并且,存储器接口电路系统240可通过一或多个数据总线238向易失性存储器204传输或从其接收数据。在一些实例中,存储器接口电路系统240所发出的命令可受易失性存储器204支持,但不受非易失性存储器206支持(例如,由存储器接口电路系统240发出的命令可不同于由存储器接口电路系统234发出的命令)。
70.接口控制器202的组件可一起将非易失性存储器206操作为主存储器并将易失性存储器204操作为高速缓存。此类操作可由从主机装置接收的一或多个存取命令(例如,读取/检索命令/请求和写入/存储命令/请求)提示。
71.在一些实例中,接口控制器202可从主机装置接收存储命令。存储命令可以通过c/a总线226接收,并经由c/a总线接口210和解码器228中的一或多个传送到命令电路系统230。存储命令可包含或伴随着针对非易失性存储器206的存储器地址的地址位。要存储的数据可以通过数据总线260接收,并经由数据总线接口208传送到缓冲器218。在写通模式中,接口控制器202可将数据传送到非易失性存储器206和易失性存储器204两者。在写回模式中,接口控制器202可将数据仅传送到易失性存储器204。
72.在任一模式中,接口控制器202可首先检查易失性存储器204是否具有可用于存储数据的存储器单元。为了这样做,命令电路系统230可引用存储器阵列252(例如,使用一组存储器地址位)以确定与存储器地址相关联的n组(例如,行)易失性存储器单元中的一或多个为空(例如,存储随机或无效数据)。例如,命令电路系统230可基于存储于存储器阵列252中的标签信息和有效性信息来确定n组(例如,行)易失性存储器单元中的一或多个是否可用(或不可用)。在一些情况下,易失性存储器204中的一组易失性存储器单元可以称为线、高速缓存线或行。
73.如果相关联的n组易失性存储器单元中的一个可用于存储信息,那么接口控制器202可将数据从缓冲器218传送到易失性存储器204以存储在所述一组易失性存储器单元中。但是如果相关联的各组易失性存储器单元都不为空,那么接口控制器202可发起收回过程,以在易失性存储器204中为数据腾出空间。收回过程可涉及将受害者数据从相关联的n组易失性存储器单元中的一个传送到缓冲器220。受害者数据的脏信息可从存储器阵列254传送到寄存器258,以识别受害者数据的脏子集。在受害者数据存储在缓冲器220中之后,新数据可以从缓冲器218传送到易失性存储器204,并且受害者数据可以从缓冲器220传送到非易失性存储器206。在一些情况下,旧数据的脏子集传送到非易失性存储器206,并且干净子集(例如,未经修改子集)被舍弃。脏子集可在收回过程期间由引擎246-b基于或响应于从存储器阵列254传送到寄存器258的脏信息识别。
74.在另一实例中,接口控制器202可从主机装置接收命令,例如检索命令。检索命令可以通过c/a总线226接收,并经由c/a总线接口210和解码器228中的一或多个传送到命令电路系统230。检索命令可包含针对非易失性存储器206的存储器地址的地址位。在尝试存取非易失性存储器206的所针对存储器地址之前,接口控制器202可检查易失性存储器204是否存储数据。为了这样做,命令电路系统230可引用存储器阵列252(例如,使用一组存储
器地址位),以确定与存储器地址相关联的n组(例如,行)易失性存储器单元中的一或多个是否存储所请求数据(例如,与存储器地址相关联的n组易失性存储器单元中的一或多个是存储还是未存储所请求数据)。如果所请求数据存储在易失性存储器204中,那么接口控制器202可将所请求数据传送到缓冲器218以通过数据总线260传输到主机装置。
75.如果所请求数据不存储在易失性存储器204中(例如,所请求数据可能存储在非易失性存储器206或另一位置中),那么接口控制器202可从非易失性存储器206检索数据,并将数据传送到缓冲器218以通过数据总线260传输到主机装置。另外,接口控制器202可将所请求数据从缓冲器218传送到易失性存储器204,使得在后续检索操作期间数据可以较低时延存取。但是,在传送所请求数据之前,接口控制器202可首先确定相关联的n组易失性存储器单元中的一或多个是否可用于存储所请求数据。接口控制器202可通过与相关高速缓存管理电路组通信来确定相关联的n组易失性存储器单元的可用性。如果相关联的一组易失性存储器单元可用,那么接口控制器202可将缓冲器218中的数据传送到易失性存储器204,而不用执行收回过程。否则,接口控制器202可在执行收回过程之后将数据从缓冲器218传送到易失性存储器204。
76.存储器子系统200可以一或多个配置实施,包含单芯片版本和多芯片版本。多芯片版本可包含存储器子系统200的一或多个组成,包含接口控制器202、易失性存储器204和非易失性存储器206(以及其它组成或组成的组合),这些组成在与包含存储器子系统200的一或多个其它组成的芯片分开的芯片上。例如,在一个多芯片版本中,相应的单独芯片可包含接口控制器202、易失性存储器204和非易失性存储器206中的每一个。相比之下,单芯片版本可在单个芯片上包含接口控制器202、易失性存储器204和非易失性存储器206。
77.因此,存储器子系统200可将易失性存储器204操作为非易失性存储器206的高速缓存,这可允许存储器子系统110通过易失性存储器204与主机装置介接,同时提供非易失性存储器206的优点。但是,将易失性存储器204操作为高速缓存可使得存储器子系统200无法以确定性时延满足主机装置的请求,例如,因为一些请求由易失性存储器204——其具有相对较短的存取操作时延——满足,其它请求由非易失性存储器206——其具有相对较长的存取操作时延——满足。为了向主机装置提供确定性时延以及其它优点,存储器子系统200可在便笺模式中操作易失性存储器204的一或多个部分,并在高速缓存模式中操作一或多个部分,例如一些实例中的一或多个其余部分。
78.图3示出根据本文所公开的实例的支持高速缓存中的便笺式存储器的装置300的实例。装置300可以是参考图1所描述的存储器子系统110或参考图2所描述的存储器子系统200的实例。装置可包含接口控制器302、易失性存储器305和非易失性存储器310,它们可经由一或多个传输线、总线或这两者彼此耦合。接口控制器302还可包含一或多个控制寄存器320。如本文所描述,装置300可在不同操作模式(例如,便笺模式和高速缓存模式)中操作易失性存储器305的不同部分。装置300还可动态地改变易失性存储器305的一或多个部分的操作模式(例如,基于或响应于控制寄存器320或一或多个其它条件)。在一些实例中,便笺模式和高速缓存模式可以称为第一模式和第二模式。
79.装置300参考易失性存储器305和非易失性存储器310的特定配置示出并描述。但是,也考虑了其它配置。
80.易失性存储器305可包含多个组(例如,十六个组),并且可以在概念上或逻辑上划
分成包含每一个组(或其中一或多个组)的行的部分。例如,部分可包含总共x个行,由每组(或其中一或多个组)中的y个行(例如,250行)组成。每一部分可与区别各部分的相应道识别符(id)相关联。因此,各部分可以表示为道0部分通过道15部分(在十六道的实例中)。每个道可与非易失性存储器310的对应区段相关联,区段可包含被准许用于与所述道相关联的易失性存储器305的部分的收回程序和填充程序的非易失性存储器310的行。作为实例,接口控制器302可使用非易失性存储器310的道0区段中的存储器单元执行易失性存储器305的道0部分中的存储器单元的收回程序和填充程序。术语部分和区段以及其它合适的术语(例如,区域、子区段、子集或碎片,或其任何组合)可互换使用。
81.如同易失性存储器305,非易失性存储器310可包含多个组(例如,十六个组),并且可以在概念上或逻辑上划分成包含每一个组或其中一或多个组的行的区段。每一区段可与区别各区段的相应道id相关联。因此,区段可以表示为道0区段到道15区段(在十六道的实例中)。在一些实例中,非易失性存储器310的各区段可以进一步划分成(或在逻辑上包括)存储器单元分块(被称为切片)。与相同道id相关联的部分和区段在图3中用相同的阴影图案示出。
82.接口控制器302可在便笺模式中操作易失性存储器305中的一或多个部分以向主机装置提供确定性时延,并且可在高速缓存模式中操作其它部分(例如,其余部分)以提供其它优点(例如,非易失性存储器310作为主存储器的优点)。接口控制器302可通过向易失性存储器305和非易失性存储器310发送命令来操作易失性存储器305和非易失性存储器310,如参考图1和2所描述。
83.作为分裂模态的实例,接口控制器302可在便笺模式中操作道0部分和道2部分,并且可在高速缓存模式中操作其余部分中的一些或全部。如果一个部分在便笺模式中操作,那么接口控制器302可以直接使用易失性存储器305满足与所述部分相关联的请求(例如,来自主机装置),并且可以免去(针对那些请求)与非易失性存储器310的交互,例如收回程序和填充程序等等。
84.在一些实例中,接口控制器302可通过改变一或多个部分的操作模式来扩展或缩小便笺的大小(这可以称为向便笺添加或从便笺去除部分)。例如,继续以上论述,接口控制器302可通过将道1部分的操作模式从高速缓存模式变成便笺模式来将便笺的大小从两个部分增加到三个部分。作为另一实例,接口控制器302可通过将道0部分的操作模式从便笺模式变成高速缓存模式来将便笺的大小从两个部分减小到一个部分。
85.接口控制器302可基于控制寄存器320的输出引脚操作各部分,所述输出引脚可指示各部分的操作模式。接口控制器302可监测控制寄存器320的输出引脚的状态,其中每个输出引脚可与易失性存储器305的相应部分相关联。例如,输出引脚pw0可与道0部分相关联,输出引脚pw1可与道1部分相关联,依次类推。输出引脚的第一状态(例如,逻辑0)可与第一操作模式(例如,高速缓存模式)相关联(例如,指示第一操作模式、表示第一操作模式),且输出引脚的第二状态(例如,逻辑1)可与第二操作模式(例如,便笺模式)相关联。因此,接口控制器302可在与关联到每一部分的输出引脚的当前状态相关联的操作模式中操作所述部分。
86.在一些实例中,接口控制器302可基于控制寄存器320的输出引脚调整便笺的大小(且因此调整高速缓存的大小),输出引脚可以根据从主机装置接收的控制信号而更新。例
如,如果接口控制器302从主机装置接收将输出引脚的状态从第一状态变成第二状态的控制信令,那么接口控制器302可将所述部分的操作模式从高速缓存模式变成便笺模式。相反地,如果接口控制器302从主机装置接收将输出引脚的状态从第二状态变成第一状态的信令,那么接口控制器302可将所述部分的操作模式从便笺模式变成高速缓存模式。
87.在一些实例中,控制寄存器320的输出引脚可以是触发器电路的输出引脚。输出引脚也可称为控制引脚或其它合适的术语,并且输出引脚的状态也可称为位值、标志值、逻辑值、电压值或其它合适的术语。
88.相比于其它技术,除了提供确定性时延之外,使用一或多个部分作为便笺还可提供功率节省。例如,如果易失性存储器305的各部分在便笺模式中操作,那么接口控制器302可通过将非易失性存储器310中作为相关联的那些部分的区段断电来节省功率。此类技术可为可能的,因为便笺模式独立于非易失性存储器310,这意味着暗示便笺部分的主机装置的请求可以在无需存取非易失性存储器310作为满足的部分的情况下被满足(当然,非易失性存储器310仍可经存取以满足暗示易失性存储器305的高速缓存部分的请求)。因此,尽管道n部分在便笺模式中操作,但是非易失性存储器310的道n区段可断电,由此节省功率。
89.图4示出根据本文所公开的实例的支持高速缓存中的便笺式存储器的过程流400的实例。过程流400可由参考图1所描述的存储器子系统110或接口控制器115、参考图2所描述的存储器子系统200或接口控制器202或参考图3所描述的装置300或接口控制器302实施。但是,其它类型的装置也可实施过程流400。过程流400可示出动态地增加易失性存储器中的便笺大小的装置操作。
90.为了易于参考,过程流400参考装置描述。例如,过程流400的各方面可由包含易失性存储器和非易失性存储器的装置实施。另外或替代地,过程流400的各方面可实施为存储在存储器中的指令(例如,存储在易失性存储器120或非易失性存储器125或这两者中的固件)。例如,所述指令在由控制器执行时可使控制器执行过程流400的操作。
91.在405处,易失性存储器的一部分可在高速缓存模式中操作。例如,装置(例如,经由接口控制器302)可在高速缓存模式中操作道0部分。道0部分可基于或响应于与道0部分相关联的输出引脚(例如,输出引脚pw0)的状态指示高速缓存模式而在高速缓存模式中操作。在高速缓存模式中操作道0部分可包含使用非易失性存储器满足未命中的特定请求(例如,针对道0部分中的易失性存储器单元的那些请求),以及使用收回程序和填充程序在道0部分和非易失性存储器之间移动数据。另外,在高速缓存模式中操作道0部分可包含当数据从道0部分的行读取和写入到那些行时,更新那些行的存储信息(例如,有效性信息、脏信息、标签信息)。存储信息也可称为元数据,并且可促进易失性存储器305在高速缓存模式中的操作(例如,通过启用收回程序和填充程序,以及其它程序)。
92.在410处,可确定所述部分的操作模式是不是便笺模式。例如,装置可确定与道0部分相关联的输出引脚的状态是设置为与高速缓存模式相关联的第一状态还是设置为与便笺模式相关联的第二状态。接口控制器302可通过监测(例如,连续地、间歇性地、定期地)与道0部分相关联的输出引脚的状态来确定道0部分的操作模式。在一些实例中,接口控制器302可在410处的操作之前(例如,基于或响应于来自主机装置的控制信令)改变输出引脚的状态。主机装置可基于或响应于例如时延需求、预期存取频率或要存储在道0部分中的一组数据的另一度量来确定改变道0部分的操作模式。改变输出引脚的状态也可称为对输出引
脚进行掩模。
93.如果在410处确定所述部分的操作模式是高速缓存模式,那么装置可返回到405并继续在高速缓存模式中操作所述部分。如果在410处确定所述部分的操作模式是便笺模式,那么装置可进行到415。
94.在415处,可执行一或多个收回程序。例如,装置可针对道0部分执行一或多个收回程序。收回程序可作为高速缓存模式的部分且在道0部分在420处在便笺模式中操作之前执行。收回程序可经执行以保存来自非易失性存储器310中的道0部分的数据(例如,脏数据),使得数据可以快速存取(如果道0部分随后返回到高速缓存模式)。作为实例,来自道0部分的一或多个行的脏数据可以存储在与道0部分相关联的道0区段中。在420处,所述部分的存储信息可以基于或响应于415处的操作而更新。
95.在一些实例中,装置可基于或响应于来自主机装置的一或多个信号指示道0部分中的数据将被保持而执行收回程序。如果主机装置不指示数据保持,那么装置可舍弃(例如,覆写)所述数据,而不用先将数据保存到非易失性存储器310。
96.在425处,与易失性存储器的所述部分相关联的非易失性存储器的区段可被断电。例如,装置可将非易失性存储器310的道0区段断电(例如,以节省功率),因为装置在道0部分在便笺模式中操作时不存取道0区段。将一区段断电可包含断开所述部分的组件与一或多个电源的连接或在低功率模式中操作所述部分。
97.在430处,所述部分可在便笺模式中操作。例如,装置可基于或响应于输出引脚的状态指示便笺模式而在便笺模式中操作道0部分。在便笺模式中操作所述部分可包含使用所述部分满足针对所述部分的请求,并免去与非易失性存储器的交互(例如,收回程序、填充程序)以满足那些请求。因为所述部分中的数据在便笺模式中的操作期间不保存到非易失性存储器,所以来自主机装置的针对所述部分的请求保证为命中,这允许接口控制器302使用易失性存储器满足请求(且因此提供确定性时延)。在便笺模式中操作所述部分还可包含将所述部分的存储信息维持为在进入便笺模式后(或,换句话说,在退出高速缓存模式后)的状态。
98.因此,易失性存储器中的便笺大小可以通过将一个部分的操作模式从高速缓存模式变成便笺模式来增加。
99.可实施上文的替代性实例,其中一些操作以不同于所述次序的次序执行、并行执行或完全不执行。在一些情况下,操作可包含下文未提及的额外特征,或可添加另外的操作。另外,某些操作可执行多次,或可重复或循环某些操作组合。
100.图5示出根据本文所公开的实例的支持高速缓存中的便笺式存储器的过程流500的实例。过程流500可由参考图1所描述的存储器子系统110或接口控制器115、参考图2所描述的存储器子系统200或接口控制器202或参考图3所描述的装置300或接口控制器302实施。但是,其它类型的装置也可实施过程流500。过程流500可示出动态地减小易失性存储器中的便笺大小的装置操作。
101.为了易于参考,过程流500参考装置描述。例如,过程流500的各方面可由包含易失性存储器和非易失性存储器的装置实施。另外或替代地,过程流500的各方面可实施为存储在存储器中的指令(例如,存储在易失性存储器120或非易失性存储器125或这两者中的固件)。例如,所述指令在由控制器执行时可使控制器执行过程流500的操作。
102.在505处,易失性存储器的一部分可在便笺模式中操作。例如,装置可(例如,经由接口控制器302)基于或响应于输出引脚的状态指示便笺模式而在便笺模式中操作道0部分。在便笺模式中操作所述部分可包含使用所述部分满足针对所述部分的请求以及免去与非易失性存储器的交互(例如,收回程序、填充程序)以满足那些请求。在便笺模式中操作所述部分还可包含将所述部分的存储信息维持为在进入便笺模式后(或,换句话说,在退出高速缓存模式后)的状态。
103.在510处,可确定所述部分的操作模式是不是高速缓存模式。例如,装置可确定与道0部分相关联的输出引脚的状态是设置为与高速缓存模式相关联的第一状态还是设置为与便笺模式相关联的第二状态。接口控制器302可通过监测(例如,连续地、间歇性地、定期地)与道0部分相关联的输出引脚的状态来确定道0部分的操作模式。在一些实例中,接口控制器302可在510处的操作之前(例如,基于或响应于来自主机装置的控制信令)改变输出引脚的状态。主机装置可基于或响应于例如时延需求、预期存取频率或要存储在道0部分中的一组数据的另一度量来确定改变道0部分的操作模式。
104.如果在510处确定所述部分的操作模式是便笺模式,那么装置可返回到505并继续在便笺模式中操作所述部分。如果在510处确定所述部分的操作模式是高速缓存模式,那么装置可进行到515。
105.在515处,可将与所述部分相关联的非易失性存储器的区段通电。例如,装置可将道0区段通电,使得可以在高速缓存模式中的操作期间针对所述部分执行收回程序和填充程序等等。将一区段通电可包含连接所述区段中的组件与一或多个电源或从低功率模式转变为高功率模式。
106.在520处,所述部分可在高速缓存模式中操作。例如,装置可基于或响应于输出引脚的状态指示高速缓存模式而在高速缓存模式中操作道0部分。在高速缓存模式中操作道0部分可包含使用非易失性存储器满足未命中的特定请求(例如,针对道0部分中的易失性存储器单元的那些请求),以及使用收回程序和填充程序在道0部分和非易失性存储器之间移动数据。另外,在高速缓存模式中操作道0部分可包含当数据从道0部分的行读取和写入到那些行时,更新那些行的存储信息(例如,有效性信息、脏信息、标签信息)。
107.如果所述部分在高速缓存模式中操作,那么装置可确定请求的命中或未命中状态以确定要使用哪一存储器来满足请求。作为实例,在525处,可接收主机装置的请求。例如,装置可接收针对道0部分中的存储器单元的读取请求。在530处,可确定读取请求是命中还是未命中。如果在530处确定读取请求是命中,那么装置可进行到535并使用易失性存储器的道0部分满足请求。如果读取请求针对存储在易失性存储器中的数据(例如,与所述数据相关联、指示所述数据),那么读取请求可为命中。如果在530处确定读取请求是未命中,那么装置可进行到540。如果读取请求针对易失性存储器中不存在的数据,那么读取请求可为未命中。
108.在540处,可使用非易失性存储器来满足读取请求。例如,装置可从非易失性存储器读取读取请求所针对的数据,并将所述数据传送到主机装置。在545处,可执行填充操作(例如,使得在针对数据的后续读取请求的情况下,数据可以快速地从易失性存储器传送到主机装置)。例如,装置可将数据从非易失性存储器存储到易失性存储器。填充操作中涉及的数据可以是读取请求所针对的数据。
109.如果在525处接收的请求是针对道0部分中的存储器单元的写入请求,那么在530处可确定写入请求是命中还是未命中。如果在530处确定写入请求是命中,那么装置可进行到535并使用易失性存储器的道0部分满足请求。如果写入请求针对存储在易失性存储器中的数据(例如,与所述数据相关联、指示所述数据),那么写入请求可为命中。如果在530处确定写入请求是未命中,那么装置可进行到545(跳过540)并执行填充程序。如果写入请求针对易失性存储器中不存在的数据,那么写入请求可为未命中。在545处执行填充之后,装置可通过用与写入请求相关联的脏数据更新易失性存储器中的一些或所有数据来满足写入请求。
110.因此,易失性存储器中的便笺大小可以通过将一个部分的操作模式从高速缓存模式变成便笺模式来减小。
111.可实施上文的替代性实例,其中一些操作以不同于所述次序的次序执行、并行执行或完全不执行。在一些情况下,操作可包含下文未提及的额外特征,或可添加另外的操作。另外,某些操作可执行多次,或可重复或循环某些操作组合。
112.图6示出根据本文所公开的实例的支持高速缓存中的便笺式存储器的接口控制器620的框图600。接口控制器620可以是参考图1到5所描述的接口控制器的各方面的实例。接口控制器620或其各种组件可以是用于执行本文所述的高速缓存中的便笺式存储器的各个方面的构件的实例。例如,接口控制器620可包含控制器625、收回电路系统630、填充电路系统635、接收电路640、非易失性存储器645、易失性存储器650或其任何组合。这些组件中的每一个可(例如,经由一或多个总线)直接或间接地彼此通信。
113.控制器625可以是或包含逻辑、电路系统、处理器、控制器或能够执行本文中所描述的功能的其它组件。收回电路系统630可以是或包含逻辑、电路、控制器、寄存器、缓冲器、数据总线、数据总线接口、形成数据路径的组件或能够执行本文中所描述的功能的其它组件的组合。填充电路系统635可以是或包含逻辑、电路、控制器、寄存器、缓冲器、数据总线、数据总线接口、形成数据路径的组件或能够执行本文中所描述的功能的其它组件的组合。接收电路640可以是或包含数据总线、数据总线接口、逻辑、电路系统、处理器、控制器或能够执行本文中所描述的功能的其它组件。非易失性存储器645可以是本文中所描述的非易失性存储器的实例,并且可以是或包含存储器裸片、存储器阵列、存储器装置或能够执行本文中所描述的功能的其它组件。易失性存储器650可以是本文中所描述的易失性存储器的实例,并且可以是或包含存储器裸片、存储器阵列、存储器装置或能够执行本文中所描述的功能的其它组件。
114.控制器625可配置为或以其它方式支持用于在具有用于满足主机装置的请求的非确定性时延的高速缓存模式中操作易失性存储器的一部分的构件,所述高速缓存模式与所述部分和非易失性存储器之间的数据移动相关联。在一些实例中,控制器625可配置为或以其它方式支持用于监测存储器装置中的寄存器的输出引脚的构件,所述输出引脚与所述部分相关联且指示所述部分的操作模式。在一些实例中,控制器625可配置为或以其它方式支持用于至少部分地基于监测寄存器的输出引脚而确定是否将所述部分的操作模式从高速缓存模式变成具有用于满足主机装置的请求的确定性时延的便笺模式的构件,所述便笺模式用于独立于非易失性存储器来操作所述部分。在一些实例中,控制器625可配置为或以其它方式支持用于至少部分地基于确定改变所述部分的操作模式而在便笺模式中操作易失
性存储器的所述部分的构件。
115.在一些实例中,为了支持在高速缓存模式中操作易失性存储器的所述部分,收回电路系统630可配置为或以其它方式支持用于执行收回程序以在非易失性存储器中存储来自所述部分的数据的构件。在一些实例中,为了支持在高速缓存模式中操作易失性存储器的所述部分,填充电路系统635可配置为或以其它方式支持用于执行填充程序以在所述部分中存储来自非易失性存储器的数据的构件。
116.在一些实例中,为了支持在便笺模式中操作易失性存储器的所述部分,控制器625可配置为或以其它方式支持用于避免执行收回程序和填充程序的构件。
117.在一些实例中,为了支持在高速缓存模式中操作易失性存储器的所述部分,控制器625可配置为或以其它方式支持用于更新元数据以在高速缓存模式中操作所述部分并启用所述部分和非易失性存储器之间的数据移动的构件。
118.在一些实例中,接收电路640可配置为或以其它方式支持用于从主机装置接收将输出引脚的状态从与高速缓存模式相关联的第一状态变成与便笺模式相关联的第二状态的信号的构件,其中所述确定至少部分地基于输出引脚的状态从第一状态变成第二状态。
119.在一些实例中,非易失性存储器645可配置为或以其它方式支持用于至少部分地基于确定改变操作模式且在便笺模式中操作所述部分之前在非易失性存储器的一部分中存储来自易失性存储器的所述部分的一组数据的构件。在一些实例中,非易失性存储器645可配置为或以其它方式支持用于在存储所述一组数据之后且至少部分地基于确定在便笺模式中操作易失性存储器的部分将非易失性存储器的所述部分断电的构件。
120.在一些实例中,控制器625可配置为或以其它方式支持用于在便笺模式中操作易失性存储器的所述部分之后确定是否在高速缓存模式中操作所述部分的构件。在一些实例中,易失性存储器650可配置为或以其它方式支持用于以下的构件:在确定在高速缓存模式中操作所述部分之后,至少部分地基于来自主机装置的对来自非易失性存储器的一组数据的请求且在所述部分在高速缓存模式中的操作期间,在所述部分中存储所述一组数据。
121.在一些实例中,控制器625可配置为或以其它方式支持用于确定寄存器的第二输出引脚的状态是否已从与高速缓存模式相关联的第一状态变成与便笺模式相关联的第二状态的构件。在一些实例中,控制器625可配置为或以其它方式支持用于至少部分地基于确定第二输出引脚的状态已从第一状态变成第二状态而将与第二输出引脚相关联的第二部分的操作模式从高速缓存模式变成便笺模式的构件。
122.在一些实例中,控制器625可配置为或以其它方式支持用于确定寄存器的第二输出引脚的状态是否已从与便笺模式相关联的第二状态变成与高速缓存模式相关联的第一状态的构件。在一些实例中,控制器625可配置为或以其它方式支持用于至少部分地基于确定第二输出引脚的状态已从第二状态变成第一状态而将与第二输出引脚相关联的第二部分的操作模式从便笺模式变成高速缓存模式的构件。
123.在一些实例中,所述部分包含来自易失性存储器的多个组的行。
124.在一些实例中,控制器625可配置为或以其它方式支持用于在具有用于满足主机装置的请求的确定性时延的便笺模式中操作易失性存储器的一部分的构件,所述便笺模式用于独立于非易失性存储器来操作所述部分。在一些实例中,控制器625可配置为或以其它方式支持用于监测设备中的寄存器的输出引脚的构件,所述输出引脚与所述部分相关联且
指示所述部分的操作模式。在一些实例中,控制器625可配置为或以其它方式支持用于至少部分地基于监测寄存器的输出引脚而确定是否将所述部分的操作模式从便笺模式变成具有用于满足主机装置的请求的非确定性时延的高速缓存模式的构件,所述高速缓存模式与所述部分和非易失性存储器之间的数据移动相关联。在一些实例中,控制器625可配置为或以其它方式支持用于至少部分地基于确定改变所述部分的操作模式而在高速缓存模式中操作易失性存储器的所述部分的构件。
125.在一些实例中,接收电路640可配置为或以其它方式支持用于从主机装置接收将输出引脚的状态从与便笺模式相关联的第二状态变成与高速缓存模式相关联的第一状态的信号的构件,其中所述确定至少部分地基于输出引脚的状态从第二状态变成第一状态。
126.图7示出根据本文所公开的实例的流程图,示出了支持高速缓存中的便笺式存储器的方法700。方法700的操作可由本文所述的接口控制器或其组件实施。例如,方法700的操作可由参考图1到6所描述的接口控制器执行。在一些实例中,接口控制器可执行一组指令以控制装置的功能元件执行所描述的功能。另外或替代地,接口控制器可使用专用硬件执行所描述的功能的各方面。
127.在705处,方法可包含在具有用于满足主机装置的请求的非确定性时延的高速缓存模式中操作易失性存储器的一部分,所述高速缓存模式与所述部分和非易失性存储器之间的数据移动相关联。操作705可根据本文所公开的实例执行。在一些实例中,操作705的各方面可由参考图6所描述的控制器625执行。
128.在710处,方法可包含监测存储器装置中的寄存器的输出引脚,所述输出引脚与所述部分相关联且指示所述部分的操作模式。操作710可根据本文所公开的实例执行。在一些实例中,操作710的各方面可由参考图6所描述的控制器625执行。
129.在715处,方法可包含至少部分地基于监测寄存器的输出引脚,确定是否将所述部分的操作模式从高速缓存模式变成具有用于满足主机装置的请求的确定性时延的便笺模式,所述便笺模式用于独立于非易失性存储器来操作所述部分。操作715可根据本文所公开的实例执行。在一些实例中,操作715的各方面可由参考图6所描述的控制器625执行。
130.在720处,方法可包含至少部分地基于确定改变所述部分的操作模式而在便笺模式中操作易失性存储器的所述部分。操作720可根据本文所公开的实例执行。在一些实例中,操作720的各方面可由参考图6所描述的控制器625执行。
131.在一些实例中,本文所述的设备可执行一或多种方法,例如方法700。设备可包含用于以下的特征、电路系统、逻辑、构件或指令(例如,存储可由处理器执行的指令的非暂时性计算机可读媒体):在具有用于满足主机装置的请求的非确定性时延的高速缓存模式中操作易失性存储器的一部分,所述高速缓存模式与所述部分和非易失性存储器之间的数据移动相关联;监测存储器装置中的寄存器的输出引脚,所述输出引脚与所述部分相关联且指示所述部分的操作模式;至少部分地基于监测寄存器的输出引脚,确定是否将所述部分的操作模式从高速缓存模式变成具有用于满足主机装置的请求的确定性时延的便笺模式,所述便笺模式用于独立于非易失性存储器来操作所述部分;以及至少部分地基于确定改变所述部分的操作模式而在便笺模式中操作易失性存储器的所述部分。
132.在本文中所描述的方法700和设备的一些实例中,在高速缓存模式中操作易失性存储器的所述部分可包含用于以下的操作、特征、电路系统、逻辑、构件或指令:执行收回程
序以在非易失性存储器中存储来自所述部分的数据,以及执行填充程序以在所述部分中存储来自非易失性存储器的数据。
133.在本文中所描述的方法700和设备的一些实例中,在便笺模式中操作易失性存储器的所述部分可包含用于避免执行收回程序和填充程序的操作、特征、电路系统、逻辑、构件或指令。
134.在本文中所描述的方法700和设备的一些实例中,在高速缓存模式中操作易失性存储器的所述部分可包含用于更新元数据以在高速缓存模式中操作所述部分并启用所述部分和非易失性存储器之间的数据移动的操作、特征、电路系统、逻辑、构件或指令。
135.本文中所描述的方法700和设备的一些实例可进一步包含用于以下的操作、特征、电路系统、逻辑、构件或指令:从主机装置接收将输出引脚的状态从与高速缓存模式相关联的第一状态变成与便笺模式相关联的第二状态的信号,其中所述确定可至少部分地基于输出引脚的状态从第一状态变成第二状态。
136.本文中所描述的方法700和设备的一些实例可进一步包含用于以下的操作、特征、电路系统、逻辑、构件或指令:至少部分地基于确定改变操作模式且在便笺模式中操作所述部分之前,在非易失性存储器的一部分中存储来自易失性存储器的所述部分的一组数据,并且在存储所述一组数据之后且至少部分地基于确定在便笺模式中操作易失性存储器的所述部分,将非易失性存储器的所述部分断电。
137.本文中所描述的方法700和设备的一些实例可进一步包含用于以下的操作、特征、电路系统、逻辑、构件或指令:在便笺模式中操作易失性存储器的所述部分之后确定是否在高速缓存模式中操作所述部分,并且在确定在高速缓存模式中操作所述部分之后,至少部分地基于来自主机装置的对来自非易失性存储器的一组数据的请求且在所述部分在高速缓存模式中的操作期间,在所述部分中存储所述一组数据。
138.本文中所描述的方法700和设备的一些实例可进一步包含用于以下的操作、特征、电路系统、逻辑、构件或指令:确定寄存器的第二输出引脚的状态是否可能已经从与高速缓存模式相关联的第一状态变成与便笺模式相关联的第二状态,并至少部分地基于确定第二输出引脚的状态可能已经从第一状态变成第二状态,将与第二输出引脚相关联的第二部分的操作模式从高速缓存模式变成便笺模式。
139.本文中所描述的方法700和设备的一些实例可进一步包含用于以下的操作、特征、电路系统、逻辑、构件或指令:确定寄存器的第二输出引脚的状态是否可能已经从与便笺模式相关联的第二状态变成与高速缓存模式相关联的第一状态,并至少部分地基于确定第二输出引脚的状态可能已经从第二状态变成第一状态,将与第二输出引脚相关联的第二部分的操作模式从便笺模式变成高速缓存模式。
140.在本文中所描述的方法700和设备的一些实例中,所述部分包含来自易失性存储器的多个组的行。
141.图8示出根据本文所公开的实例的流程图,示出了支持高速缓存中的便笺式存储器的方法800。方法800的操作可由本文所述的接口控制器或其组件实施。例如,方法800的操作可由参考图1到6所描述的接口控制器执行。在一些实例中,接口控制器可执行一组指令以控制装置的功能元件执行所描述的功能。另外或替代地,接口控制器可使用专用硬件执行所描述的功能的各方面。
142.在805处,方法可包含在具有用于满足主机装置的请求的确定性时延的便笺模式中操作易失性存储器的一部分,所述便笺模式用于独立于非易失性存储器来操作所述部分。操作805可根据本文所公开的实例执行。在一些实例中,操作805的各方面可由参考图6所描述的控制器625执行。
143.在810处,方法可包含监测设备中的寄存器的输出引脚,所述输出引脚与所述部分相关联且指示所述部分的操作模式。操作810可根据本文所公开的实例执行。在一些实例中,操作810的各方面可由参考图6所描述的控制器625执行。
144.在815处,方法可包含至少部分地基于监测寄存器的输出引脚,确定是否将所述部分的操作模式从便笺模式变成具有用于满足主机装置的请求的非确定性时延的高速缓存模式,所述高速缓存模式与所述部分和非易失性存储器之间的数据移动相关联。操作815可根据本文所公开的实例执行。在一些实例中,操作815的各方面可由参考图6所描述的控制器625执行。
145.在820处,方法可包含至少部分地基于确定改变所述部分的操作模式而在高速缓存模式中操作易失性存储器的所述部分。操作820可根据本文所公开的实例执行。在一些实例中,操作820的各方面可由参考图6所描述的控制器625执行。
146.在一些实例中,本文所述的设备可执行一或多种方法,例如方法800。设备可包含用于以下的特征、电路系统、逻辑、构件或指令(例如,存储可由处理器执行的指令的非暂时性计算机可读媒体):在具有用于满足主机装置的请求的确定性时延的便笺模式中操作易失性存储器的一部分,所述便笺模式用于独立于非易失性存储器来操作所述部分;监测设备中的寄存器的输出引脚,所述输出引脚与所述部分相关联且指示所述部分的操作模式;至少部分地基于监测寄存器的输出引脚,确定是否将所述部分的操作模式从便笺模式变成具有用于满足主机装置的请求的非确定性时延的高速缓存模式,所述高速缓存模式与所述部分和非易失性存储器之间的数据移动相关联;以及至少部分地基于确定改变所述部分的操作模式而在高速缓存模式中操作易失性存储器的所述部分。
147.本文中所描述的方法800和设备的一些实例可进一步包含用于以下的操作、特征、电路系统、逻辑、构件或指令:从主机装置接收将输出引脚的状态从与便笺模式相关联的第二状态变成与高速缓存模式相关联的第一状态的信号,其中所述确定可至少部分地基于输出引脚的状态从第二状态变成第一状态。
148.应注意,本文所描述的方法描述可能实施方案,并且操作和步骤可以重新布置或以其它方式修改,且其它实施方案是可能的。此外,可组合来自所述方法中的两个或更多个的部分。
149.描述另一设备。所述设备可包含:非易失性存储器;易失性存储器;以及接口控制器,其与所述非易失性存储器和所述易失性存储器耦合,所述接口控制器可用于使所述设备:在具有用于满足主机装置的请求的非确定性时延的高速缓存模式中操作所述易失性存储器的一部分,所述高速缓存模式与所述部分和所述非易失性存储器之间的数据移动相关联;监测所述设备中的寄存器的输出引脚,所述输出引脚与所述部分相关联且指示所述部分的操作模式;至少部分地基于监测所述寄存器的所述输出引脚,确定是否将所述部分的所述操作模式从所述高速缓存模式变成具有用于满足所述主机装置的请求的确定性时延的便笺模式,所述便笺模式用于独立于所述非易失性存储器来操作所述部分;以及至少部
分地基于确定改变所述部分的所述操作模式,在所述便笺模式中操作所述易失性存储器的所述部分。
150.在一些实例中,所述设备可包含在所述部分在所述高速缓存模式中的操作期间执行收回程序以在所述非易失性存储器中存储来自所述部分的数据,并在所述部分在所述高速缓存模式中的操作期间执行填充程序以在所述部分中存储来自所述非易失性存储器的数据。
151.在一些实例中,所述设备可包含在所述部分在所述便笺模式中的操作期间避免执行收回程序和填充程序。
152.在所述设备的一些实例中,所述接口控制器可进一步用于使所述设备:在所述部分在所述高速缓存模式中的操作期间更新元数据,以在所述高速缓存模式中操作所述部分并启用所述部分和所述非易失性存储器之间的数据移动。
153.在一些实例中,所述设备可包含从所述主机装置接收将所述输出引脚的状态从与所述高速缓存模式相关联的第一状态变成与所述便笺模式相关联的第二状态的信号,其中所述确定可至少部分地基于所述输出引脚的所述状态从所述第一状态变成所述第二状态。
154.在一些实例中,所述设备可包含至少部分地基于确定改变操作模式且在所述便笺模式中操作所述部分之前,在所述非易失性存储器的一部分中存储来自所述易失性存储器的所述部分的一组数据,并且在存储所述一组数据之后且至少部分地基于确定在所述便笺模式中操作所述易失性存储器的所述部分,将所述非易失性存储器的所述部分断电。
155.在一些实例中,所述设备可包含在所述便笺模式中操作所述部分之后确定是否在所述高速缓存模式中操作所述易失性存储器的所述部分,并且在确定在所述高速缓存模式中操作所述部分之后,至少部分地基于来自所述主机装置的对来自所述非易失性存储器的一组数据的请求且在所述部分在所述高速缓存模式中的操作期间,在所述部分中存储所述一组数据。
156.在一些实例中,所述设备可包含确定所述寄存器的第二输出引脚的状态是否可能已经从与所述高速缓存模式相关联的第一状态变成与所述便笺模式相关联的第二状态,并至少部分地基于确定所述第二输出引脚的所述状态可能已经从所述第一状态变成所述第二状态,将与所述第二输出引脚相关联的第二部分的操作模式从所述高速缓存模式变成所述便笺模式。
157.在一些实例中,所述设备可包含确定所述寄存器的第二输出引脚的状态是否可能已经从与所述便笺模式相关联的第二状态变成与所述高速缓存模式相关联的第一状态,并至少部分地基于确定所述第二输出引脚的所述状态可能已经从所述第二状态变成所述第一状态,将与所述第二输出引脚相关联的第二部分的操作模式从所述便笺模式变成所述高速缓存模式。
158.在所述设备的一些实例中,所述部分包含来自所述易失性存储器的多个组的行。
159.描述另一设备。所述设备可包含:非易失性存储器;易失性存储器;以及接口控制器,其与所述非易失性存储器和所述易失性存储器耦合,所述接口控制器可用于使所述设备:在具有用于满足主机装置的请求的确定性时延的便笺模式中操作所述易失性存储器的一部分,所述便笺模式用于独立于所述非易失性存储器来操作所述部分;监测所述设备中的寄存器的输出引脚,所述输出引脚与所述部分相关联且指示所述部分的操作模式;至少
部分地基于监测所述寄存器的所述输出引脚,确定是否将所述部分的所述操作模式从所述便笺模式变成具有用于满足所述主机装置的请求的非确定性时延的高速缓存模式,所述高速缓存模式与所述部分和所述非易失性存储器之间的数据移动相关联;以及至少部分地基于确定改变所述部分的所述操作模式,在所述高速缓存模式中操作所述易失性存储器的所述部分。
160.在一些实例中,所述设备可包含在所述部分在所述高速缓存模式中的操作期间执行收回程序以在所述非易失性存储器中存储来自所述部分的数据,并在所述部分在所述高速缓存模式中的操作期间执行填充程序以在所述部分中存储来自所述非易失性存储器的数据。
161.在一些实例中,所述设备可包含在所述部分在所述便笺模式中的操作期间避免执行收回程序和填充程序。
162.在所述设备的一些实例中,在所述高速缓存模式中操作所述易失性存储器的所述部分包含在所述部分在所述高速缓存模式中的操作期间更新元数据,以在所述高速缓存模式中操作所述部分并启用所述部分和所述非易失性存储器之间的数据移动。
163.在一些实例中,所述设备可包含从所述主机装置接收将所述输出引脚的状态从与所述便笺模式相关联的第二状态变成与所述高速缓存模式相关联的第一状态的信号,其中所述确定可至少部分地基于所述输出引脚的所述状态从所述第二状态变成所述第一状态。
164.应注意,上文所描述的方法描述可能实施方案,并且操作和步骤可以重新布置或以其它方式修改,且其它实施方案是可能的。此外,可组合来自所述方法中的两个或更多个的部分。
165.如果用于描述条件性动作或过程,术语“如果
……
,那么
……”
、“当
……
时”、“基于
……”
、“至少部分地基于
……”
和“响应于
……”
可互换。
166.可使用多种不同技术和技艺中的任一个来表示本文中所描述的信息和信号。例如,可通过电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示在整个上述描述中可能参考的数据、指令、命令、信息、信号、位、符号和码片。一些图式可将信号示出为单个信号;然而,所属领域的技术人员应理解,所述信号可表示信号总线,其中总线可具有多种位宽度。
167.协议可定义支持以供装置或组件使用的一或多个通信程序和一或多个通信参数。例如,协议可定义各种操作、用于那些操作的定时和频率、各种命令或信号或这两者的含义、用于一或多个存储器的一或多个寻址方案、其中保留引脚的通信类型、在例如接口的各种组件处处理的数据的大小、由例如接口的各种组件支持的数据速率,或由例如接口的各种组件支持的带宽,以及其它参数和度量,或其任何组合。共享协议的使用可实现装置之间的交互,这是因为每一装置可以另一装置所预期、辨识和理解的方式来操作。例如,支持相同协议的两个装置可根据由协议定义的策略、程序和参数来交互,而支持不同协议的两个装置可为不兼容的。
168.为了说明,支持不同协议的两个装置可以是不兼容的,这是因为协议定义了不同寻址方案(例如,不同数量的地址位)。作为另一说明,支持不同协议的两个装置可以是不兼容的,这是因为协议定义了不同传送程序来响应单个命令(例如,响应于命令所准许的字节的突发长度或数量可以是不同的)。仅将命令转换为动作不应被理解为使用两个不同协议。
实际上,如果由两个协议定义的对应程序或参数发生改变,那么协议可被视为不同的。例如,如果装置支持不同寻址方案或不同传送程序来响应命令,那么装置可称为支持两个不同协议。
169.术语“电子连通”、“导电接触”、“连接”和“耦合”可以指组件之间支持信号在组件之间流动的关系。如果组件之间存在可在任何时间支持信号在组件之间流动的任何导电路径,那么组件被视为彼此电子连通(或彼此导电接触,或彼此连接,或彼此耦合)。在任何给定时间,基于或响应于包含所连接组件的装置的操作,彼此电子连通(或彼此导电接触,或彼此连接,或彼此耦合)的组件之间的导电路径可以是开路或闭路。所连接组件之间的导电路径可以是组件之间的直接导电路径,或所连接组件之间的导电路径可以是可包含例如开关、晶体管或其它组件等中间组件的间接导电路径。在一些实例中,可例如使用例如开关或晶体管等一或多个中间组件中断所连接组件之间的信号流动一段时间。
170.术语“耦合”是指从组件之间的开路关系移动到组件之间的闭路关系的条件,在开路关系中,信号当前无法通过导电路径在组件之间传送,在闭路关系中,信号能够通过导电路径在组件之间传送。当例如控制器的一组件将其它组件耦合在一起时,那么所述组件引发允许信号通过导电路径在所述其它组件之间流动的改变,所述导电路径先前不允许信号流动。
171.术语“隔离”是指信号当前无法在组件之间流动的组件之间的关系。如果组件之间存在断路,那么它们彼此隔离。例如,由定位在两个组件之间的开关间隔开的组件在开关断开时彼此隔离。当控制器将两个组件隔离时,控制器实现以下改变:阻止信号使用先前准许信号流动的导电路径在组件之间流动。
172.本文中所论述的包含存储器阵列的装置可形成于半导体衬底上,例如硅、锗、硅锗合金、砷化镓、氮化镓等。在一些实例中,衬底是半导体晶片。在其它实例中,衬底可为绝缘体上硅(soi)衬底,例如玻璃上硅(sog)或蓝宝石上硅(sop),或另一衬底上的半导体材料的外延层。可通过使用包含(但不限于)磷、硼或砷的各种化学物质的掺杂来控制衬底或衬底的子区的导电性。可在衬底的初始形成或生长期间,通过离子植入或通过任何其它掺杂方法执行掺杂。
173.本文所论述的开关组件或晶体管可表示场效应晶体管(fet),并且包括包含源极、漏极和栅极的三端装置。端子可通过导电材料(例如金属)连接到其它电子元件。源极和漏极可为导电的,且可包括经重掺杂(例如简并)半导体区。源极与漏极可由轻掺杂的半导体区或沟道间隔开。如果沟道是n型(即,大部分载体为电子),那么fet可被称作n型fet。如果沟道是p型(即,大部分载体为空穴),那么fet可被称作p型fet。沟道可由绝缘栅极氧化物封端。可通过将电压施加到栅极来控制沟道导电性。例如,将正电压或负电压分别施加到n型fet或p型fet可导致沟道变得导电。当大于或等于晶体管的阈值电压的电压被施加到晶体管栅极时,晶体管可“接通”或“激活”。当小于晶体管的阈值电压的电压被施加到晶体管栅极时,晶体管可“断开”或“撤销激活”。
174.本文结合附图阐述的描述内容描述了实例配置,且并不表示可以实施的或在权利要求书的范围内的所有实例。本文中所使用的术语“示例性”是指“充当实例、例子或说明”,且不比其它实例“优选”或“有利”。详细描述包含特定细节,以便提供对所描述技术的理解。然而,这些技术可在没有这些特定细节的情况下实践。在一些例子中,以框图的形式展示众
所周知的结构和装置以免混淆所描述实例的概念。
175.在附图中,类似组件或特征可以具有相同参考标记。此外,可通过在参考标记之后跟着长划线及区分类似组件的第二标记来区分为相同类型的各种组件。如果说明书中仅使用第一参考标记,那么描述适用于具有相同第一参考标记的类似组件中的任一个,而与第二参考标记无关。
176.可使用多种不同技术和技艺中的任一个来表示本文中所描述的信息和信号。例如,可通过电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示在整个上述描述中可能参考的数据、指令、命令、信息、信号、位、符号和码片。
177.例如,结合本文中的公开内容所描述的各种说明性块和模块可使用经设计以执行本文中所描述的功能的通用处理器、dsp、asic、fpga或其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件或其任何组合来实施或执行。通用处理器可为微处理器,但在替代方案中,处理器可为任何处理器、控制器、微控制器或状态机。处理器也可实施为计算装置的组合(例如,dsp与微处理器的组合、多个微处理器、一或多个微处理器结合dsp核心,或任何其它此类配置)。
178.本文中所描述的功能可以硬件、由处理器执行的软件、固件或其任何组合来实施。如果以由处理器执行的软件来实施,那么可以将功能作为一或多个指令或代码存储于计算机可读媒体上或通过计算机可读媒体来传输。其它实例及实施方案在本公开及所附权利要求书的范围内。例如,由于软件的本质,上文所描述的功能可使用由处理器执行的软件、硬件、固件、硬连线或这些中的任一个的组合来实施。实施功能的特征也可物理上位于各个位置处,包含经分布以使得功能的各部分在不同物理位置处实施。并且,如本文中(包含在权利要求书中)所使用,项目的列表(例如,以例如“中的至少一个”或“中的一或多个”的短语结尾的项目的列表)中所使用的“或”指示包含性列表,使得(例如)a、b或c中的至少一个的列表意指a或b或c或ab或ac或bc或abc(即,a和b和c)。并且,如本文中所使用,短语“基于”不应被理解为提及一组封闭条件。例如,在不脱离本公开的范围的情况下,描述为“基于条件a”的示例性步骤可基于条件a和条件b两者。换句话说,如本文中所使用,短语“基于”应同样地解释为短语“至少部分地基于”。
179.计算机可读媒体包含非暂时性计算机存储装置媒体和通信媒体两者,通信媒体包含有助于将计算机程序从一个地方传递到另一地方的任何媒体。非暂时性存储媒体可以是任何可用的媒体,它可以由通用或专用计算机存取。举例来说且不加限制,非暂时性计算机可读媒体可包括ram、rom、电可擦除可编程只读存储器(eeprom)、光盘(cd)rom或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,或任何其它可用于载送或存储呈指令或数据结构形式的所要程序代码构件且可以通过通用或专用计算机或通用或专用处理器存取的非暂时性媒体。并且,任何连接被适当地称为计算机可读媒体。例如,如果软件从网站、服务器或其它远程源使用同轴电缆、光纤电缆、双绞线、数字订户线(dsl)或红外、无线电和微波等无线技术传输,那么同轴电缆、光纤电缆、双绞线、数字订户线(dsl)或红外、无线电和微波等无线技术包含在媒体的定义中。如本文中所使用,磁盘和光盘包含cd、激光光盘、光学光盘、数字多功能光盘(dvd)、软盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘用激光以光学方式再现数据。以上项的组合同样包含在计算机可读媒体的范围内。
180.提供本文中的描述使得所属领域的技术人员能够进行或使用本公开。所属领域技
术人员将清楚对本公开的各种修改,且本文中所定义的一般原理可应用于其它变化形式而不会脱离本公开的范围。因此,本发明不限于本文中所描述的实例和设计,而是被赋予与本文中所公开的原理和新颖特征一致的最宽范围。
技术特征:
1.一种由存储器装置执行的方法,其包括:在具有用于满足主机装置的请求的非确定性时延的高速缓存模式中操作易失性存储器的一部分,所述高速缓存模式与所述部分和非易失性存储器之间的数据移动相关联;监测所述存储器装置中的寄存器的输出引脚,所述输出引脚与所述部分相关联且指示所述部分的操作模式;至少部分地基于监测所述寄存器的所述输出引脚,确定是否将所述部分的所述操作模式从所述高速缓存模式变成具有用于满足所述主机装置的请求的确定性时延的便笺模式,所述便笺模式用于独立于所述非易失性存储器来操作所述部分;以及至少部分地基于确定改变所述部分的所述操作模式,在所述便笺模式中操作所述易失性存储器的所述部分。2.根据权利要求1所述的方法,其中在所述高速缓存模式中操作所述易失性存储器的所述部分包括:执行收回程序以在所述非易失性存储器中存储来自所述部分的数据;以及执行填充程序以在所述部分中存储来自所述非易失性存储器的数据。3.根据权利要求2所述的方法,其中在所述便笺模式中操作所述易失性存储器的所述部分包括:避免执行收回程序和填充程序。4.根据权利要求1所述的方法,其中在所述高速缓存模式中操作所述易失性存储器的所述部分包括:更新元数据,以在所述高速缓存模式中操作所述部分并启用所述部分和所述非易失性存储器之间的所述数据移动。5.根据权利要求1所述的方法,其进一步包括:从所述主机装置接收将所述输出引脚的状态从与所述高速缓存模式相关联的第一状态变成与所述便笺模式相关联的第二状态的信号,其中所述确定至少部分地基于所述输出引脚的所述状态从所述第一状态变成所述第二状态。6.根据权利要求1所述的方法,其进一步包括:至少部分地基于确定改变操作模式且在所述便笺模式中操作所述部分之前,在所述非易失性存储器的一部分中存储来自所述易失性存储器的所述部分的一组数据;以及在存储所述一组数据之后且至少部分地基于确定在所述便笺模式中操作所述易失性存储器的所述部分,将所述非易失性存储器的所述部分断电。7.根据权利要求1所述的方法,其进一步包括:在所述便笺模式中操作所述部分之后确定是否在所述高速缓存模式中操作所述易失性存储器的所述部分;以及在确定在所述高速缓存模式中操作所述部分之后,至少部分地基于来自所述主机装置的对来自所述非易失性存储器的一组数据的请求且在所述部分在所述高速缓存模式中的操作期间,在所述部分中存储所述一组数据。8.根据权利要求1所述的方法,其进一步包括:确定所述寄存器的第二输出引脚的状态是否已从与所述高速缓存模式相关联的第一状态变成与所述便笺模式相关联的第二状态;以及
至少部分地基于确定所述第二输出引脚的所述状态已从所述第一状态变成所述第二状态,将与所述第二输出引脚相关联的第二部分的操作模式从所述高速缓存模式变成所述便笺模式。9.根据权利要求1所述的方法,其进一步包括:确定所述寄存器的第二输出引脚的状态是否已从与所述便笺模式相关联的第二状态变成与所述高速缓存模式相关联的第一状态;以及至少部分地基于确定所述第二输出引脚的所述状态已从所述第二状态变成所述第一状态,将与所述第二输出引脚相关联的第二部分的操作模式从所述便笺模式变成所述高速缓存模式。10.根据权利要求1所述的方法,其中所述部分包括来自所述易失性存储器的多个组的行。11.一种设备,其包括:非易失性存储器;易失性存储器;以及接口控制器,其与所述非易失性存储器和所述易失性存储器耦合,所述接口控制器能够用于使所述设备:在具有用于满足主机装置的请求的非确定性时延的高速缓存模式中操作所述易失性存储器的一部分,所述高速缓存模式与所述部分和所述非易失性存储器之间的数据移动相关联;监测所述设备中的寄存器的输出引脚,所述输出引脚与所述部分相关联且指示所述部分的操作模式;至少部分地基于监测所述寄存器的所述输出引脚,确定是否将所述部分的所述操作模式从所述高速缓存模式变成具有用于满足所述主机装置的请求的确定性时延的便笺模式,所述便笺模式用于独立于所述非易失性存储器来操作所述部分;以及至少部分地基于确定改变所述部分的所述操作模式,在所述便笺模式中操作所述易失性存储器的所述部分。12.根据权利要求11所述的设备,其中所述接口控制器进一步能够用于使所述设备:在所述部分在所述高速缓存模式中的操作期间,执行收回程序以在所述非易失性存储器中存储来自所述部分的数据;以及在所述部分在所述高速缓存模式中的操作期间,执行填充程序以在所述部分中存储来自所述非易失性存储器的数据。13.根据权利要求12所述的设备,其中所述接口控制器进一步能够用于使所述设备:在所述部分在所述便笺模式中的操作期间避免执行收回程序和填充程序。14.根据权利要求11所述的设备,其中所述接口控制器进一步能够用于使所述设备:在所述部分在所述高速缓存模式中的操作期间更新元数据,以在所述高速缓存模式中操作所述部分并启用所述部分和所述非易失性存储器之间的所述数据移动。15.根据权利要求11所述的设备,其中所述接口控制器进一步能够用于使所述设备:从所述主机装置接收将所述输出引脚的状态从与所述高速缓存模式相关联的第一状态变成与所述便笺模式相关联的第二状态的信号,其中所述确定至少部分地基于所述输出
引脚的所述状态从所述第一状态变成所述第二状态。16.根据权利要求11所述的设备,其中所述接口控制器进一步能够用于使所述设备:至少部分地基于确定改变操作模式且在所述便笺模式中操作所述部分之前,在所述非易失性存储器的一部分中存储来自所述易失性存储器的所述部分的一组数据;以及在存储所述一组数据之后且至少部分地基于确定在所述便笺模式中操作所述易失性存储器的所述部分,将所述非易失性存储器的所述部分断电。17.根据权利要求11所述的设备,其中所述接口控制器进一步能够用于使所述设备:在所述便笺模式中操作所述部分之后确定是否在所述高速缓存模式中操作所述易失性存储器的所述部分;以及在确定在所述高速缓存模式中操作所述部分之后,至少部分地基于来自所述主机装置的对来自所述非易失性存储器的一组数据的请求且在所述部分在所述高速缓存模式中的操作期间,在所述部分中存储所述一组数据。18.根据权利要求11所述的设备,其中所述接口控制器进一步能够用于使所述设备:确定所述寄存器的第二输出引脚的状态是否已从与所述高速缓存模式相关联的第一状态变成与所述便笺模式相关联的第二状态;以及至少部分地基于确定所述第二输出引脚的所述状态已从所述第一状态变成所述第二状态,将与所述第二输出引脚相关联的第二部分的操作模式从所述高速缓存模式变成所述便笺模式。19.根据权利要求11所述的设备,其中所述接口控制器进一步能够用于使所述设备:确定所述寄存器的第二输出引脚的状态是否已从与所述便笺模式相关联的第二状态变成与所述高速缓存模式相关联的第一状态;以及至少部分地基于确定所述第二输出引脚的所述状态已从所述第二状态变成所述第一状态,将与所述第二输出引脚相关联的第二部分的操作模式从所述便笺模式变成所述高速缓存模式。20.根据权利要求11所述的设备,其中所述部分包括来自所述易失性存储器的多个组的行。21.一种设备,其包括:非易失性存储器;易失性存储器;以及接口控制器,其与所述非易失性存储器和所述易失性存储器耦合,所述接口控制器能够用于使所述设备:在具有用于满足主机装置的请求的确定性时延的便笺模式中操作所述易失性存储器的一部分,所述便笺模式用于独立于所述非易失性存储器来操作所述部分;监测所述设备中的寄存器的输出引脚,所述输出引脚与所述部分相关联且指示所述部分的操作模式;至少部分地基于监测所述寄存器的所述输出引脚,确定是否将所述部分的所述操作模式从所述便笺模式变成具有用于满足所述主机装置的请求的非确定性时延的高速缓存模式,所述高速缓存模式与所述部分和所述非易失性存储器之间的数据移动相关联;以及至少部分地基于确定改变所述部分的所述操作模式,在所述高速缓存模式中操作所述
易失性存储器的所述部分。22.根据权利要求21所述的设备,其中所述接口控制器进一步能够用于使所述设备:在所述部分在所述高速缓存模式中的操作期间,执行收回程序以在所述非易失性存储器中存储来自所述部分的数据;以及在所述部分在所述高速缓存模式中的操作期间,执行填充程序以在所述部分中存储来自所述非易失性存储器的数据。23.根据权利要求22所述的设备,其中所述接口控制器进一步能够用于使所述设备:在所述部分在所述便笺模式中的操作期间避免执行收回程序和填充程序。24.根据权利要求21所述的设备,其中所述接口控制器进一步能够用于使所述设备:在所述部分在所述高速缓存模式中的操作期间更新元数据,以在所述高速缓存模式中操作所述部分并启用所述部分和所述非易失性存储器之间的所述数据移动。25.根据权利要求21所述的设备,其中所述接口控制器进一步能够用于使所述设备:从所述主机装置接收将所述输出引脚的状态从与所述便笺模式相关联的第二状态变成与所述高速缓存模式相关联的第一状态的信号,其中所述确定至少部分地基于所述输出引脚的所述状态从所述第二状态变成所述第一状态。
技术总结
本申请针对高速缓存中的便笺式存储器。一种装置可在具有用于满足主机装置的请求的非确定性时延的高速缓存模式中操作易失性存储器的一部分。所述装置可监测具有与所述部分相关联且指示所述部分的操作模式的输出引脚的寄存器。基于或响应于监测所述输出引脚,所述装置可确定是否将所述部分的所述操作模式从所述高速缓存模式变成具有用于满足所述主机装置的请求的确定性时延的便笺模式。装置的请求的确定性时延的便笺模式。装置的请求的确定性时延的便笺模式。
