存储系统的高速缓存系统及其数据高速缓存方法技术方案

技术编号:26222582 阅读:16 留言:0更新日期:2020-11-04 10:53
本申请提供一种存储系统的高速缓存系统及其数据高速缓存方法。一种高速缓存系统,包括:具有多个块的高速缓冲存储器;脏线列表,其储存在所述多个块中的脏线之中的预定数量的脏线的状态信息;以及高速缓存控制器,其控制所述高速缓冲存储器的数据高速缓存操作,并且根据所述数据高速缓存操作而向所述脏线列表提供脏线的状态和状态变化。高速缓存控制器执行控制操作,以始终将最近最少使用的(LRU)脏线的状态信息储存到脏线列表的预定储存位置中。

【技术实现步骤摘要】
存储系统的高速缓存系统及其数据高速缓存方法相关申请的交叉引用本申请要求于2019年5月3日提交的申请号为10-2019-0052599的韩国专利申请的优先权,其全部内容通过引用合并于此。
所公开技术的各种实施例总体而言涉及存储系统,更具体地,涉及存储系统的高速缓存系统以及在高速缓存系统中高速缓存数据的方法。
技术介绍
在存储系统中,与诸如中央处理单元(CPU)的主机相比,存储器通常以相对较低的速度运行。因此,包括高速缓冲存储器的高速缓存系统已被广泛应用于大多数存储系统中,以解决由于主机与存储器之间的速度差异而引起的问题。在存储系统中包括的高速缓存系统可以设置在主机与存储器之间,也可以设置在主机控制器中,或者也可以设置在存储器控制器中。
技术实现思路
根据一个实施方式,一种高速缓存系统包括:高速缓冲存储器,其被配置为具有多个块;脏线列表,其被配置为储存在所述多个块中的脏线之中的预定数量的脏线的状态信息;以及高速缓存控制器,其被配置为控制所述高速缓冲存储器的数据高速缓存操作,并且被配置为根据所述数据高速缓存操作而向所述脏线列表提供所述脏线的状态和状态变化。高速缓存控制器执行控制操作,以始终将最近最少使用的(LRU)脏线的状态信息储存到脏线列表的预定储存位置中。根据另一个实施方式,提供了一种高速缓存系统的数据高速缓存方法。该高速缓存系统包括:具有多个块的高速缓冲存储器;具有多个节点的脏线列表,所述多个节点储存在所述多个块中的脏线之中的预定数量的脏线的状态信息;以及高速缓存控制器,其控制高速缓冲存储器的数据高速缓存操作以及脏线列表的节点的状态信息的储存状态。该方法包括:将关于高速缓冲存储器中的脏线之中的最近最少使用的(LRU)脏线的信息储存到脏线列表的节点之中的最低次序节点中,并在由于数据高速缓存操作之后的脏线数量而发生溢出时,将具有储存在所述脏线列表的节点之中的最低次序节点中的状态信息的脏线强制逐出,其中,所述溢出涉及脏线的增加后的数量超过脏线列表中的节点的数量。附图说明参照附图通过各种实施方式说明所公开技术的某些特征,其中:图1是示出根据本专利技术的一个实施方式的存储系统的高速缓存系统的示例的框图;图2是示出根据本专利技术的一个实施方式的在存储系统中包括的高速缓存系统的高速缓冲存储器的配置的示意图;图3是示出根据本专利技术的一个实施方式的在存储系统中包括的高速缓存系统的脏线列表的配置的示意图;图4是示出根据本专利技术的一个实施方式的、当在存储系统中包括的高速缓存系统存在“写入命中”时的数据高速缓存操作的示意图;图5是示出根据本专利技术的一个实施方式的、当在存储系统中包括的高速缓存系统存在“写入未命中”时的数据高速缓存操作的示意图;图6是示出根据本专利技术的一个实施方式的在存储系统中包括的高速缓存系统的数据高速缓存操作的流程图;图7是示出根据本专利技术的一个实施方式的在高速缓存系统中的脏线列表的操作的流程图;图8至图10示出根据本专利技术的一个实施方式的、在高速缓存系统中存在“写入命中”,脏线的数量增加并且没有发生溢出时,对脏线列表进行控制的处理;图11至图13示出根据本专利技术的一个实施方式的、在高速缓存系统中存在“写入命中”,脏线的数量增加并且发生溢出时,对脏线列表进行控制的处理;图14至图16示出根据本专利技术的一个实施方式的、在高速缓存系统中存在“写入未命中”,脏线的数量增加并且没有发生溢出时,对脏线列表进行控制的处理;图17至图19示出根据本专利技术的一个实施方式的、在高速缓存系统中存在“写入未命中”,脏线的数量增加并且发生溢出时,对脏线列表进行控制的处理;图20至图22示出根据本专利技术的一个实施方式的、在高速缓存系统中存在“写入命中”,脏线的数量没有增加并且没有发生溢出时,对脏线列表进行控制的处理;图23至图25示出根据本专利技术的一个实施方式的、在高速缓存系统中存在“写入命中”,脏线的数量没有增加并且发生溢出时,对脏线列表进行控制的处理;图26至图28示出根据本专利技术的一个实施方式的、在高速缓存系统中存在“写入未命中”,脏线的数量没有增加并且没有发生溢出时,对脏线列表进行控制的处理;图29至图31示出根据本专利技术的一个实施方式的、在高速缓存系统中存在“写入未命中”,脏线的数量没有增加并且发生溢出时,对脏线列表进行控制的处理。具体实施方式在以下的实施方式的描述中,可以理解,术语“第一”和“第二”旨在标识元件,而不是用于仅定义元件本身或表示特定顺序。另外,当元件被称为位于另一元件“上”、“之上”、“上方”、“下”或“下方”时,其旨在指相对位置关系,而不是用来限定某些情形,如该元件直接接触另一元件,或者在它们之间存在至少一个中间元件。因此,本文中所使用的术语诸如“在…上”、“在…之上”、“在…上方”、“在…下”、“在…下方”、“在…之下”等仅出于描述特定实施方式的目的,而非意在限制本专利技术的范围。而且,当一个元件被称为与另一个元件“连接”或“耦接”时,该元件可以与另一个元件直接电气或机械地连接或直接耦接,或者也可以通过取代它们之间的另一个元件而形成连接关系或耦接关系。在将数据写到高速缓存系统的高速缓冲存储器中的各种方法中,回写方法可以通过如下实现,即,当从主机输出写入请求时仅将新数据储存到高速缓冲存储器中,稍后再将新数据储存到主存储器(以下称为“存储器”)中。因此,在这种情况下,储存在高速缓冲存储器中的数据可能与储存在存储器的区域(与高速缓冲存储器相对应的)中的数据不一致。高速缓冲存储器的具有与储存在存储器中的数据不同的数据的区域可以被定义为脏线。当在高速缓冲存储器中存在脏线的情况下高速缓冲存储器的电源突然中断时,可能会发生如下的事件,即,储存在高速缓冲存储器中的所有数据未全部写入存储器。通常,如果在高速缓冲存储器中发生突然断电(SPO)事件,则在高速缓冲存储器中的与存储器的数据不一致的的数据可以基于可充电元件(诸如电容器)而在有限的时间内被写入存储器中。因此,当SPO事件发生时,在高速缓冲存储器中的脏线的数量必须等于或小于能够在可充电元件提供的有限时间内写入存储器的脏线的数量。所公开技术的各种实施方式可以提供通过使用脏线列表来控制脏线的数量的高速缓存系统以及高速缓存系统的数据高速缓存方法。根据各种实施方式,在选择高速缓冲存储器的逐出数据(evictiondata)以维持预定数量的脏线时,立即找出关于最近最少使用的(LRU)脏线的信息是可能的。图1是示出根据本专利技术的一个实施方式的存储系统的高速缓存系统100的框图。图2是示出在图1的高速缓存系统100中包括的高速缓冲存储器110的配置的示意图,并且图3是示出在图1的高速缓存系统100中包括的脏线列表130的配置的示意图。参考图1,高速缓存系统100可以耦接在主机与存储器之间,以响应于来自主机的数据写入请求来执行数据高速缓存操作。在一个实施方式中,主机可以是处理器,诸如中央处理单元(CPU)。在一个实施方式中,存储器可以是易失性存本文档来自技高网...

【技术保护点】
1.一种高速缓存系统,包括:/n高速缓冲存储器,其被配置为具有多个块;/n脏线列表,其被配置为储存在所述多个块中的脏线之中的预定数量的脏线的状态信息;以及/n高速缓存控制器,其被配置为控制所述高速缓冲存储器的数据高速缓存操作,并且被配置为根据所述数据高速缓存操作而向所述脏线列表提供所述脏线的状态和状态变化,/n其中,所述高速缓存控制器执行控制操作以始终将最近最少使用的LRU脏线的状态信息储存到所述脏线列表的预定储存位置中。/n

【技术特征摘要】
20190503 KR 10-2019-00525991.一种高速缓存系统,包括:
高速缓冲存储器,其被配置为具有多个块;
脏线列表,其被配置为储存在所述多个块中的脏线之中的预定数量的脏线的状态信息;以及
高速缓存控制器,其被配置为控制所述高速缓冲存储器的数据高速缓存操作,并且被配置为根据所述数据高速缓存操作而向所述脏线列表提供所述脏线的状态和状态变化,
其中,所述高速缓存控制器执行控制操作以始终将最近最少使用的LRU脏线的状态信息储存到所述脏线列表的预定储存位置中。


2.根据权利要求1所述的高速缓存系统,其中,所述高速缓冲存储器包括至少一个路,所述路具有所述多个块。


3.根据权利要求1所述的高速缓存系统,其中,所述高速缓冲存储器的所述多个块中的每个块通过其自身的组索引而彼此区分开,所述组索引的每个都包括二进制流。


4.根据权利要求3所述的高速缓存系统,其中,所述高速缓冲存储器的所述多个块中的每个块都包括有效位、标签和数据。


5.根据权利要求3所述的高速缓存系统,其中,所述脏线列表包括多个节点,在所述多个节点中储存所述脏线的状态信息。


6.根据权利要求5所述的高速缓存系统,其中,在所述脏线列表中包括的所述多个节点的数量被定义为用于储存数据的所述块的数量,当发生突然断电SPO事件时,所述块的数量能够基于可充电元件而被写入主存储器。


7.根据权利要求1所述的高速缓存系统,
其中,所述高速缓冲存储器的所述多个块中的每个块通过其自身的组索引而彼此区分开,所述组索引中的每个都包括二进制流;以及
其中,所述脏线中的每条的所述状态信息都包括所述高速缓冲存储器的所述组索引中的一个。


8.根据权利要求1所述的高速缓存系统,
其中,所述脏线列表包括多个节点,在所述多个节点中储存所述脏线的状态信息;以及
其中,所述多个节点的位置由所述多个节点的节点地址来确定。


9.根据权利要求8所述的高速缓存系统,其中,所述LRU脏线的状态信息始终被储存到所述多个节点之中的具有最低次序节点地址的最低次序节点中。


10.根据权利要求1所述的高速缓存系统,
其中,所述脏线列表包括多个节点,在所述多个节点中储存所述脏线的状态信息;以及
其中,所述高速缓存控制器控制所述脏线列表,使得如果指定所述多个节点中的每个节点的节点地址的值增加,则将脏线的具有较少LRU时间的状态信息储存到具有被增加的节点地址的值的节点中。


11.根据权利要求1所述的高速缓存系统,
其中,所述脏线列表包括多个节点,在所述多个节点中储存所述脏线的状态信息;以及
其中,在由于所述高速缓冲存储器的所述数据高速缓存操作导致所述脏线的数量增加而造成溢出时,所述高速缓存控制器将具有储存在所述脏线列表的最低次序节点中的状态...

【专利技术属性】
技术研发人员:郑承奎金东建
申请(专利权)人:爱思开海力士有限公司
类型:发明
国别省市:韩国;KR

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

1