用于DRAM的选择性刷新机制制造技术

技术编号:23164778 阅读:17 留言:0更新日期:2020-01-21 22:36
本发明专利技术涉及用于高速缓存,例如被实施为嵌入式DRAM eDRAM的末级高速缓存,的选择性刷新的系统及方法。刷新位及重用位与所述高速缓存的至少一组的每个路相关。最近最少使用LRU堆栈跟踪所述路的位置,其中朝向阈值的最近最多使用位置的位置包括最近较多使用位置,及朝向所述阈值的最近最少使用位置的位置包括最近较少使用位置。如果满足以下条件,那么选择性地刷新路中的线:所述路的所述位置是所述最近较多使用位置中的一个,且与所述路相关的所述刷新位被设定,或所述路的所述位置是所述最近较少使用位置中的一个,且与所述路相关的所述刷新位及所述重用位两者均被设定。

【技术实现步骤摘要】
【国外来华专利技术】用于DRAM的选择性刷新机制
所公开的方面是针对存储器系统的电力管理及效率改进。更具体来说,例示性方面是针对用于动态随机存取存储器(dynamicrandomaccessmemory;DRAM)的选择性刷新机制,以减小所述DRAM的功率消耗并增加其可用性。
技术介绍
DRAM系统由于构造简单而提供低成本数据存储解决方案。基本上,DRAM单元由耦合到电容器的开关或晶体管构成。DRAM系统被组织为DRAM阵列,其包括安置于行(或线)及列中的DRAM单元。可了解到,鉴于DRAM单元的简单性,DRAM系统的构造成本较低,且DRAM阵列的高密度集成是可能的。然而,由于电容器易漏电,因此存储于DRAM单元中的电荷需要被定期刷新,以正确地保留存储在其中的信息。出于保留存储在其中的信息的意图,常规的刷新操作涉及读出DRAM阵列中的每个DRAM单元(例如,逐行)及立即不经修改地写回读出的数据到相应的DRAM单元。因此,刷新操作消耗电力。依据DRAM系统的特定实施方案(例如,所属领域中已知的双数据速率(doubledatarate;DDR)、低功率DDR(lowpowerDDR;LPDDR)、嵌入式DRAM(embeddedDRAM;eDRAM)等),定义最小刷新频率,其中如果DRAM单元未以至少为最小刷新频率的频率刷新,那么存储在其中的信息被损毁的概率增加。如果为例如读取或写入操作的存储器存取操作存取DRAM单元,那么作为执行存储器存取操作的部分,所存取的DRAM单元被刷新。为确保即使当DRAM单元未因存储器存取操作被存取时DRAM单元仍至少以满足最小刷新频率的速率被刷新,可为DRAM系统提供各种专用刷新机制。然而,已认识到,例如在例如3级(level3;L3)数据高速缓存eDRAM的较大末级高速缓存的实施方案中,DRAM的每个线的定期刷新就时间及电力而言可能过于昂贵而在常规实施方案中不可实行。在努力缓解时间耗费的过程中,一些方法是针对刷新平行的两个或更多个线的群组,但此些方法也可能有缺点。举例来说,如果同时刷新的线的数目相对较小,那么刷新DRAM消耗的时间仍然可能过高,这可能降低DRAM对于其它存取请求(例如,读取/写入)的可用性。这是因为进行中的刷新操作可延迟或阻止DRAM服务于存取请求。另一方面,如果同时刷新的线数目较大,那么相应的功率消耗会增大,其继而可能提高对用于供应电力到DRAM的电力传递网络(powerdeliverynetwork;PDN)的稳定性的需求。更复杂PDN也可减小可供用于与DRAM电路相关的其它线的布线轨道,及增加DRAM裸片的大小。因此,已认识到所属领域中需要改进DRAM的刷新机制,以避免常规实施方案的上述缺陷。
技术实现思路
本专利技术的例示性方面是针对用于高速缓存,例如被实施为嵌入式DRAM(eDRAM)的处理系统的末级高速缓存,的选择性刷新的系统及方法。高速缓存可经配置为组联高速缓存,其具有至少一个组及所述至少一个组中的两个或更多个路,且可提供高速缓存控制器,其经配置用于所述至少一个组的线的选择性刷新。高速缓存控制器可包含两个或更多个刷新位寄存器,其包括两个或更多个刷新位,每个刷新位与所述两个或更多个路中的一相对应者相关,及两个或更多个重用位寄存器,其包括两个或更多个重用位,每个重用位与所述两个或更多个路中的一相对应者相关。刷新及重用位被用于确定是否通过以下方式刷新相关联的线。高速缓存控制器可进一步包含最近最少使用(leastrecentlyused;LRU)堆栈,其包括两个或更多个位置,每个位置与所述两个或更多个路中的一相对应者相关,所述两个或更多个位置范围为最近最多使用位置到最近最少使用位置,其中朝向经指派用于所述LRU堆栈的阈值的所述最近最多使用位置的位置包括最近较多使用位置,及朝向所述阈值的所述最近最少使用位置的位置包括最近较少使用位置。如果所述路的所述位置是所述最近较多使用位置中的一个,且与所述路相关的所述刷新位被设定,或所述路的所述位置是所述最近较少使用位置中的一个,且与所述路相关的所述刷新位及所述重用位两者均被设定,那么所述高速缓存控制器经配置以选择性地刷新所述两个或更多个路的路中的线。举例来说,一例示性方面是针对一种刷新高速缓存的线的方法。所述方法包括:关联刷新位及重用位与一组所述高速缓存的两个或更多个路中的每一个,关联最近最少使用(LRU)堆栈与所述组,其中所述LRU堆栈包括与所述两个或更多个路中的每一个相关的位置,所述位置范围为最近最多使用位置到最近最少使用位置,及对所述LRU堆栈指定阈值,其中朝向所述阈值的所述最近最多使用位置的位置包括最近较多使用位置,及朝向所述阈值的所述最近最少使用位置的位置包括最近较少使用位置。如果所述路的所述位置是所述最近较多使用位置中的一个,且与所述路相关的所述刷新位被设定,或所述路的所述位置是所述最近较少使用位置中的一个,且与所述路相关的所述刷新位及所述重用位两者均被设定,那么高速缓存的路中的线被选择性地刷新。另一例示性方面是针对一种设备,其包括高速缓存,其经配置为组联高速缓存,其具有至少一个组及所述至少一个组中的两个或更多个路,及高速缓存控制器,其经配置用于所述至少一个组的线的选择性刷新。高速缓存控制器包括两个或更多个刷新位寄存器,其包括两个或更多个刷新位,每个刷新位与所述两个或更多个路中的一相对应者相关,两个或更多个重用位寄存器,其包括两个或更多个重用位,每个重用位与所述两个或更多个路中的一相对应者相关,及最近最少使用(LRU)堆栈,其包括两个或更多个位置,每个位置与所述两个或更多个路中的一相对应者相关,所述两个或更多个位置范围为最近最多使用位置到最近最少使用位置,其中朝向经指派用于所述LRU堆栈的阈值的所述最近最多使用位置的位置包括最近较多使用位置,及朝向所述阈值的所述最近最少使用位置的位置包括最近较少使用位置。如果所述路的所述位置是所述最近较多使用位置中的一个,且与所述路相关的所述刷新位被设定,或所述路的所述位置是所述最近较少使用位置中的一个,且与所述路相关的所述刷新位及所述重用位两者均被设定,那么所述高速缓存控制器经配置以选择性地刷新所述两个或更多个路的路中的线。又另一个例示性方面是针对一种设备,其包括高速缓存,其经配置为组联高速缓存,其具有至少一个组及所述至少一个组中的两个或更多个路,用于跟踪与所述至少一个组的所述两个或更多个路中的每一个相关的位置的装置,所述位置范围为最近最多使用位置到最近最少使用位置,且其中朝向所述阈值的所述最近最多使用位置的位置包括最近较多使用位置,及朝向所述阈值的所述最近最少使用位置的位置包括最近较少使用位置。所述设备进一步包括如果满足以下条件,那么选择性地刷新所述高速缓存的路中的线的装置:所述路的所述位置是所述最近较多使用位置中的一个,且指示与所述路相关的刷新的第一装置被设定,或所述路的所述位置是所述最近较少使用位置中的一个,且指示刷新的所述第一装置及指示与所述路相关的重用的第二装置两者均被设定。另一例示性方面是针对一种包括代码的非暂时性计算机可读存储媒体,其在由计算机执行本文档来自技高网
...

【技术保护点】
1.一种刷新高速缓存的线的方法,所述方法包括:/n关联刷新位及重用位与一组所述高速缓存的两个或更多个路中的每一个;/n关联最近最少使用LRU堆栈与所述组,其中所述LRU堆栈包括与所述两个或更多个路中的每一个相关的位置,所述位置范围为最近最多使用位置到最近最少使用位置;/n对所述LRU堆栈指定阈值,其中朝向所述阈值的所述最近最多使用位置的位置包括最近较多使用位置,及朝向所述阈值的所述最近最少使用位置的位置包括最近较少使用位置;及/n如果满足以下条件,那么选择性地刷新所述高速缓存的路中的线:/n所述路的所述位置是所述最近较多使用位置中的一个,且与所述路相关的所述刷新位被设定;或/n所述路的所述位置是所述最近较少使用位置中的一个,且与所述路相关的所述刷新位及所述重用位两者均被设定。/n

【技术特征摘要】
【国外来华专利技术】20170707 US 15/644,7371.一种刷新高速缓存的线的方法,所述方法包括:
关联刷新位及重用位与一组所述高速缓存的两个或更多个路中的每一个;
关联最近最少使用LRU堆栈与所述组,其中所述LRU堆栈包括与所述两个或更多个路中的每一个相关的位置,所述位置范围为最近最多使用位置到最近最少使用位置;
对所述LRU堆栈指定阈值,其中朝向所述阈值的所述最近最多使用位置的位置包括最近较多使用位置,及朝向所述阈值的所述最近最少使用位置的位置包括最近较少使用位置;及
如果满足以下条件,那么选择性地刷新所述高速缓存的路中的线:
所述路的所述位置是所述最近较多使用位置中的一个,且与所述路相关的所述刷新位被设定;或
所述路的所述位置是所述最近较少使用位置中的一个,且与所述路相关的所述刷新位及所述重用位两者均被设定。


2.根据权利要求1所述的方法,其中当所述线的所述高速缓存中出现未命中之后,所述线被重新插入到所述路中时:
关联所述路的所述位置与所述最近较多使用位置中的一个;
设定所述刷新位;及
复位所述重用位。


3.根据权利要求2所述的方法,其进一步包括,当所述路的所述位置跨越所述阈值,及所述路的所述位置是所述最近较少使用位置中的一个时,
如果设定所述重用位,那么保持所述刷新位为经设定;或
如果所述重用位未被设定,那么复位所述刷新位。


4.根据权利要求2所述的方法,其进一步包括,在用于所述线的所述高速缓存中的命中后,设定所述重用位。


5.根据权利要求1所述的方法,其进一步包括,在所述线的高速缓存命中后,如果所述刷新位被设定且所述重用位同样被设定,那么将所述线从所述高速缓存返回到所述线的请求方。


6.根据权利要求1所述的方法,其进一步包括,在所述线的高速缓存命中后,如果所述刷新位未被设定,那么处理所述高速缓存命中为高速缓存未命中,及将对所述线的请求递送到所述高速缓存的备份存储器。


7.根据权利要求1所述的方法,其中如果所述路的所述位置从所述最近较少使用位置中的一个跨越所述阈值到所述最近较多使用位置中的一个,且所述重用位被设定,那么设定所述刷新位。


8.根据权利要求1所述的方法,其中如果所述路的所述位置从所述最近较少使用位置中的一个跨越所述阈值到所述最近较多使用位置中的一个,且所述重用位未被设定,那么复位所述刷新位。


9.根据权利要求1所述的方法,其中所述阈值相对于所述LRU堆栈的所述位置固定。


10.根据权利要求1所述的方法,其中所述阈值基于与所述LRU堆栈相关的计数器的值动态地可变,其中与具有高速缓存命中的路相关的所述计数器递增。


11.根据权利要求10所述的方法,其中计数器对两个或更多个路通用。


12.根据权利要求1所述的方法,其中所述高速缓存被实施为嵌入式DRAMeDRAM。


13.根据权利要求1所述的方法,其中所述高速缓存经配置为处理系统的末级高速缓存。


14.一种设备,其包括:
高速缓存,其经配置为一组联高速缓存,其具有至少一个组及所述至少一个组中的两个或更多个路;
高速缓存控制器,其经配置用于所述至少一个组的线的选择性刷新,所述高速缓存控制器包括:
两个或更多个刷新位寄存器,其包括两个或更多个刷新位,每个刷新位与所述两个或更多个路中的一相对应者相关;
两个或更多个重用位寄存器,其包括两个或更多个重用位,每个重用位与所述两个或更多个路中的一相对应者相关;及
最近最少使用LRU堆栈,其包括两个或更多个位置,每个位置与所述两个或更多个路中的一相对应者相关,所述两个或更多个位置范围为最近最多使用位置到最近最少使用位置,
其中朝向经指派用于所述LRU堆栈的阈值的所述最近最多使用位置的位置包括最近较多使用位置,及朝向所述阈值的所述最近最少使用位置的位置包括最近较少使用位置;及
其中如果满足以下条件,那么所述高速缓存控制器经配置以选择性地刷新所述两个或更多个路的路中的线:
所述路的所述位置是所述最近较多使用位置中的一个,且与所述路相关的所述刷新位被设定;或
所述路的所述位置是所述最近较少使用位置中的一个,且与所述路相关的所述刷新位及所述重用位两者均被设定。


15.根据权利要求14所述的设备,其中所述高速缓存控制器进一步经配置以,当所述线的所述高速缓存中出现未命中之后,所述线被重新插入到所述路中时:
关联所述路的所述位置与所述最近较多使用位置中的一个;
设定所述刷新位;及
复位所述重用位。

【专利技术属性】
技术研发人员:F·I·阿塔拉G·M·赖特S·普立亚达尔西G·M·德拉帕拉H·W·凯恩三世E·赫德伯格
申请(专利权)人:高通股份有限公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利