多排高速缓冲存储器制造技术

技术编号:10505384 阅读:142 留言:0更新日期:2014-10-08 10:21
一股来说,本发明专利技术描述用于增加可由多个客户端存取的多排高速缓冲存储器系统的处理量的技术。可将来自客户端的对数据的请求存储在与第一高速缓冲存储器排的所述客户端相关联的待决缓冲器中。对于所述对数据的请求中的每一者,可作出关于所述请求是否能够由所述第一高速缓冲存储器排内的高速缓冲存储器满足而不管由所述客户端在第二高速缓冲存储器排处的对数据的请求的状态如何的确定。根据所述待决缓冲器中的所述对数据的请求的接收的次序来将由所述客户端向所述高速缓冲存储器请求的数据存储在与所述客户端相关联的读取数据缓冲器中。

【技术实现步骤摘要】
【国外来华专利技术】多排高速缓冲存储器
本专利技术大体上涉及计算机系统,且更具体来说,涉及高速缓冲存储器系统。
技术介绍
计算机系统中的高速缓冲存储器系统通常提供相对较小和较低等待时间的存储器。此高速缓冲存储器存储主存储器中所存储的数据的子集的副本以减少存取数据的平均时间。当多个客户端试图同时存取高速缓冲存储器系统时,可出现冲突。用于减少多个客户端之间的冲突的一种技术可包含将高速缓冲存储器系统划分为各自含有高速缓冲存储器系统中的数据的一部分的多个高速缓冲存储器排,使得多个客户端可各自能够同时存储高速缓冲存储器系统中的不同高速缓冲存储器排,进而减少客户端之间的冲突且增加高速缓冲存储器系统的处理量。然而,仍可能发生高百分比的冲突,进而减少高速缓冲存储器系统的处理量。
技术实现思路
一股来说,本专利技术描述用于增加可由多个客户端存取的多排高速缓冲存储器系统的处理量的技术。通过在每一存储器排中采用用于每一客户端的一组缓冲器,本专利技术的技术可允许多个客户端同时将请求分派到高速缓冲存储器系统的相同存储器排,进而减少客户端之间的冲突。本专利技术的技术可进一步允许在高速缓冲存储器系统的存储器排之间的无序地服务由客户端分派的对数据的请求,进而减少存储器排之间的排冲突,且增加多排高速缓冲存储器系统的处理量。在一个实例中,一种方法可包含将来自客户端的对数据的请求存储在与第一高速缓冲存储器排的客户端相关联的待决缓冲器中。所述方法可进一步包含确定对数据的请求中的每一者是否能够由第一高速缓冲存储器排内的高速缓冲存储器满足,而不管由客户端在第二高速缓冲存储器排处的对数据的请求的状态如何。所述方法可进一步包含通过与第一高速缓冲存储器排的客户端相关联的读取数据缓冲器根据待决缓冲器中的对数据的请求的接收的次序来存储由所述客户端向所述高速缓冲存储器请求的数据。在另一实例中,一种系统可包含可由多个客户端存取的高速缓冲存储器系统,所述高速缓冲存储器系统包含多个高速缓冲存储器排,其中所述多个高速缓冲存储器排中的每一者包含:高速缓冲存储器;及标签检查单元,其经配置以确定来自所述多个客户端中的一客户端的对数据的请求是否能够由所述高速缓冲存储器满足,而不管由客户端在所述多个高速缓冲存储器排内的另一高速缓冲存储器排处的请求的状态如何。所述系统可进一步包含与所述多个高速缓冲存储器排的所述多个客户端相关联的多个待决缓冲器,其中所述待决缓冲器经配置而以来自所述多个客户端中的相关联的客户端的接收的次序来存储对数据的请求,从而使所述对数据的请求是否能够由所述高速缓冲存储器满足的确定待决。所述系统可进一步包含与所述多个高速缓冲存储器排的所述多个客户端相关联的多个读取数据缓冲器,其中所述读取数据缓冲器经配置以根据与所述相关联的客户端相关联的待决缓冲器内的由所述待决缓冲器接收的次序来存储由所述相关联的客户端向所述高速缓冲存储器请求的数据。在另一实例中,一种设备可包含用于存储来自第一高速缓冲存储器排的客户端的对数据的请求的装置。所述设备可进一步包含用于确定所述对数据的请求中的每一者是否能够由高速缓冲存储器满足而不管由所述客户端在第二高速缓冲存储器排处的对数据的请求的状态如何的装置。所述设备可进一步包含用于存储由所述第一存储器排的所述客户端向所述高速缓冲存储器请求的数据的装置。在另一实例中,一种设备可包含一或多个处理器。所述一或多个处理器可经配置以存储来自第一高速缓冲存储器排的客户端的对数据的请求。所述一或多个处理器可进一步经配置以确定所述对数据的请求中的每一者是否能够由高速缓冲存储器满足而不管由所述客户端在第二高速缓冲存储器排处的对数据的请求的状态如何。所述一或多个处理器可进一步经配置以存储由所述第一存储器排的所述客户端向所述高速缓冲存储器请求的数据。一或多个实例的细节陈述于附图及以下描述中。其它特征、目标及优势将从描述及附图和从权利要求书中显而易见。附图说明图1是说明根据本专利技术的一些方面的包含实例性处理器、实例性高速缓冲存储器系统及实例性主存储器的实例性计算机系统的框图。图2是说明根据本专利技术的一些方面的包含实例性客户端及实例性高速缓冲存储器系统的实例性计算机系统的框图。图3是说明根据本专利技术的一些方面的用于解决实例性高速缓冲存储器系统中的死锁的实例性技术的框图。图4是说明根据本专利技术的一些方面的用于解决实例性高速缓冲存储器系统中的死锁的实例性数据结构的概念图。图5是说明根据本专利技术的一些方面的用于增加多排高速缓冲存储器系统的处理量的实例性方法的流程图。具体实施方式一股来说,本专利技术描述用于增加可由多个客户端存取的多排高速缓冲存储器系统的处理量的技术。虽然多排高速缓冲存储器系统可通过使得客户端能够同时存取高速缓冲存储器系统的不同高速缓冲存储器排而减少高速缓冲存储器系统的客户端之间的冲突,但如果多个客户端试图同时存取高速缓冲存储器系统的相同高速缓冲存储器排,那么仍可能发生客户端之间的冲突。通过使一组缓冲器与用于每一存储器排的客户端中的每一者相关联,本专利技术的技术可允许多排存储器排系统的单一存储器排同时接受来自多个客户端的请求,进而减少客户端之间的冲突。此外,本专利技术的技术可实现在高速缓冲存储器系统的存储器排之间无序地服务由客户端分派的对数据的请求,且可进而减少存储器排之间的排冲突,且增加多排高速缓冲存储器系统的处理量。在模拟中,包含四个高速缓冲存储器系统且服务于四个客户端的多排高速缓冲存储器系统可通过使用本专利技术的技术将随机存取的高速缓冲存储器处理量提高43%到97%。存取多排高速缓冲存储器系统的客户端可各自与高速缓冲存储器系统的每一高速缓冲存储器排的待决缓冲器相关联。由客户端分派给高速缓冲存储器系统中的特定高速缓冲存储器排的请求可存储在与所述指定的高速缓冲存储器排的客户端相关联的待决缓冲器处。从多个客户端分派给相同高速缓冲存储器排的请求可存储在与所述高速缓冲存储器排的每一客户端相关联的单独待决缓冲器处。可以从客户端接收的次序处理从客户端分派给单一高速缓冲存储器排的请求。处理请求可包含对所述请求进行标签检查或以其它方式确定高速缓冲存储器排中的高速缓冲存储器是否能够满足所述请求。然而,可整体地以与接收的次序相关的无序地处理由客户端分派给所述高速缓冲存储器系统的请求。举例来说,客户端可依序将第一请求和第二请求分派给第一高速缓冲存储器排,且可随后将第三请求分派给第二高速缓冲存储器排。虽然可在单一高速缓冲存储器排内依序处理所述请求,使得可在第一高速缓冲存储器排中的第二请求之前处理第一请求,但可整体无序地处理所述请求,使得可在处理第一高速缓冲存储器排中的第一请求或第二请求之前处理第二高速缓冲存储器排中的第三请求。存取多排高速缓冲存储器系统的客户端还可各自与高速缓冲存储器系统的每一高速缓冲存储器排的读取数据缓冲器相关联。由客户端请求的数据可被检索且存储在与指定的高速缓冲存储器排的客户端相关联的读取数据缓冲器处。由多个客户端在相同高速缓冲存储器排中请求的数据可存储在与所述高速缓冲存储器排的每一客户端相关联的单独读取数据缓冲器处。客户端可读取高速缓冲存储器排的其相关联的读取数据缓冲器以检索所请求的数据。客户端可记录曾将请求分派给高速缓冲存储器排中的每一者的次序,且可基于所述次序从高速缓冲存储器排中的每一者的读取数据缓冲器进行本文档来自技高网...
多排高速缓冲存储器

【技术保护点】
一种系统,其包括:可由多个客户端存取的高速缓冲存储器系统,所述高速缓冲存储器系统包含多个高速缓冲存储器排,其中所述多个高速缓冲存储器排中的每一者包含:高速缓冲存储器,及标签检查单元,其经配置以确定来自所述多个客户端中的一客户端的对数据的请求是否能够由所述高速缓冲存储器满足,而不管由所述客户端在所述多个高速缓冲存储器排内的另一高速缓冲存储器排处的请求的状态如何;与所述多个高速缓冲存储器排的所述多个客户端相关联的多个待决缓冲器,其中所述待决缓冲器经配置而以从所述多个客户端中的相关联的客户端的接收的次序来存储对数据的请求,从而使所述对数据的请求是否能够由所述高速缓冲存储器满足的确定待决;及与所述多个高速缓冲存储器排的所述多个客户端相关联的多个读取数据缓冲器,其中所述读取数据缓冲器经配置以根据与所述相关联的客户端相关联的待决缓冲器内的由所述待决缓冲器接收的次序来存储由所述相关联的客户端向所述高速缓冲存储器请求的数据。

【技术特征摘要】
【国外来华专利技术】2012.02.02 US 13/364,9011.一种存储器系统,其包括:可由多个客户端存取的高速缓冲存储器系统,所述高速缓冲存储器系统包含多个高速缓冲存储器排,其中所述多个高速缓冲存储器排中的每一者包含:高速缓冲存储器,及标签检查单元,其经配置以确定来自所述多个客户端中的一客户端的对数据的请求是否能够由所述高速缓冲存储器满足,而不管由所述多个客户端中的所述客户端在所述多个高速缓冲存储器排内的另一高速缓冲存储器排处的请求的状态如何;与所述多个高速缓冲存储器排的所述多个客户端相关联的多个待决缓冲器,其中所述多个待决缓冲器经配置而以从所述多个客户端中的相关联的客户端的接收的次序来存储对数据的请求,从而使所述对数据的请求是否能够由所述高速缓冲存储器满足的确定待决;与所述多个客户端相关联的多个死锁保护单元,其中所述多个死锁保护单元经配置以确定所述多个待决缓冲器内的用于所述相关联的客户端的待决缓冲器是否能够接受来自所述相关联的客户端的额外的对数据的请求,且其中所述多个死锁保护单元进一步经配置以在接受所述额外的请求会导致所述多个高速缓冲存储器排之间的死锁情形的情况下阻止所述多个待决缓冲器内的用于所述相关联的客户端的所述待决缓冲器接受所述额外的请求;及与所述多个高速缓冲存储器排的所述多个客户端相关联的多个读取数据缓冲器,其中所述多个读取数据缓冲器经配置以根据由所述多个待决缓冲器内的与所述相关联的客户端相关联的待决缓冲器接收的次序来存储由所述相关联的客户端向所述高速缓冲存储器请求的数据。2.根据权利要求1所述的系统,其中所述多个高速缓冲存储器排中的每一者进一步包含:与所述多个高速缓冲存储器排的所述多个客户端相关联的多个返回缓冲器,其中所述多个返回缓冲器经配置以在所述标签检查单元已确定来自所述多个客户端中的所述相关联的客户端的所述对数据的请求是否能够由所述高速缓冲存储器满足之后存储所述对数据的请求。3.根据权利要求1所述的系统,其中如果由所述相关联的客户端对数据的所有无序请求的数据大小的总和小于相同高速缓冲存储器排内的所述读取数据缓冲器的大小,那么所述多个待决缓冲器内的用于所述相关联的客户端的所述待决缓冲器能够接受来自所述相关联的客户端的所述额外的对数据的请求。4.根据权利要求3所述的系统,其中所述多个死锁保护单元中的每一者包含针对所述相关联的客户端的请求而存储以下各者中的一或多者的缓冲器:有效旗标、排ID,及数据大小。5.根据权利要求1所述的系统,其进一步包括:与所述多个高速缓冲存储器排的所述多个客户端相关联的多个写入数据缓冲器,其中所述多个写入数据缓冲器经配置以接收来自所述相关联的客户端的用以将数据写入到所述高速缓冲存储器的写入请求。6.根据权利要求2所述的系统,其中所述高速缓冲存储器经配置以服务于存储在所述多个缓冲器中的所述对数据的请求,而不管由所述多个客户端中的所述客户端在所述多个高速缓冲存储器排内的另一高速缓冲存储器排处的对数据的请求的状态如何。7.一种用于增加多排高速缓冲存储器系统的处理量的方法,其包括:将来自客户端的对数据的请求存储在与第一高速缓冲存储器排的所述客户端相关联的待决缓冲器中;确定所述对数据的请求中的每一者是否能够由所述第一高速缓冲存储器排内的高速缓冲存储器满足,而不管由所述客户端在第二高速缓冲存储器排处的对数据的请求的状态如何;确定所述待决缓冲器是否能够接受来自所述客户端的额外的对数据的请求;在接受所述额外的请求会导致所述第一高速缓冲存储器排与所述第二高速缓冲存储器排之间的死锁情形的情况下阻止所述待决缓冲器接受所述额外的请求;及通过与所述第一高速缓冲存储器排的所述客户端相关联的读取数据缓冲器根据所述待决缓冲器中的所述对数据的请求的接收的次序来存储由所述客户端向所述高速缓冲存储器请求的数据。8.根据权利要求7所述的方法,其进一步包括:在确定所述对数据的请求中的每一者是否能够由所述高速缓冲存储器满足之后,通过与所述第一高速缓冲存储器排的所述客户端相关联的返回缓冲器来存储来自所述客户端的所述对数据的请求。9.根据权利要求7所述的方法,其进一步包括:如果由所述第一高速缓冲存储器排从所述客户端接收的对数据的所有无序请求的数据大小的总和小于所述读取数据缓冲器的大小,那么确定所述待决缓冲器能够接受来自所述客户端的额外的对数据的请求。10.根据权利要求9所述的方法,其中确定所述待决缓冲器能够接受额外的请求是至少部分基于针对所述客户端的请求而存储以下各者中的一或多者的缓冲器:有效旗标、排ID,及数据大小。11.根据...

【专利技术属性】
技术研发人员:梁坚于春
申请(专利权)人:高通股份有限公司
类型:发明
国别省市:美国;US

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

1