当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于多核处理器中非一致性高速缓存的系统和方法技术方案

技术编号:2835729 阅读:181 留言:0更新日期:2012-04-11 18:40
公开了用于设计和操作在多核处理器中的分布式共享高速缓存的系统和方法。在一个实施例中,共享高速缓存可以分布在多个高速缓存单元中。就访问等待时间而言,每个高速缓存单元可以最靠近其中一个处理器内核。在一个实施例中,从存储器提取的高速缓存行可以最初被放置在不是与发出请求的处理器内核最靠近的高速缓存单元中。当发出请求的处理器内核对那个高速缓存行重复访问时,可以将它在高速缓存单元之间移动或在一个高速缓存单元内移动。由于在高速缓存内移动高速缓存行的能力,在各种实施例中,可以使用具体的搜索方法来定位特定高速缓存行。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术总体上涉及微处理器,更具体而言,涉及可以包括多个处理器内核的微处理器。
技术介绍
现代微处理器可以在单个半导体器件上包括两个或多个处理器内核。这种微处理器可以被称为多核处理器。与使用单内核相比,使用多个内核可以改进性能。但是,传统的共享高速缓存架构可能并不特别适合于支持多核处理器的设计。这里,“共享”可以指每个内核都可以访问该高速缓存中的高速缓存行(cache line)。传统架构的共享高速缓存可以使用一个公共结构来存储高速缓存行。由于布局约束和其它因素,从这种高速缓存到一个内核的访问等待时间可能不同于到另一个内核的访问等待时间。通常,通过为对不同内核的访问等待时间采用“最坏情况”设计规则来补偿这种情况。这种策略可能会增大对所有内核的平均访问等待时间。可以对该高速缓存进行分区,并将各个分区布置在包含多个处理器内核的整个半导体器件中。但是,这本身不会显著地减小所有内核的平均访问等待时间。对于物理位置靠近某个特定内核的高速缓存分区来说,该发出请求的内核可以具有改进的访问等待时间。但是,该发出请求的内核还会访问半导体器件上物理位置与其相距较远的分区中包含的高速缓存行。对这些高速缓存行的访问等待时间会显著大于对物理位置靠近该发出请求的内核的高速缓存分区中的高速缓存行的访问等待时间。附图说明结合附图以示例性而非限制性的方式说明本公开,图中相似的标号代表类似的元件,其中图1是根据本公开的一个实施例的环形互连上的高速缓存单元(cache molecule)的示意图;图2是根据本公开的一个实施例的高速缓存单元的示意图;图3是根据本公开的一个实施例的高速缓存链(cache chain)中的高速缓存片(cache tile)的示意图;图4是根据本公开的一个实施例的用于搜索高速缓存行的示意图;图5是根据本公开的另一个实施例的非一致性高速缓存(non-uniform cache)架构集合服务的示意图;图6A是根据本公开的另一个实施例的查找状态保持寄存器的示意图;图6B是根据本公开的另一个实施例的查找状态保持寄存器条目的示意图;图7是根据本公开的另一个实施例的用于搜索高速缓存行的方法的流程图;图8是根据本公开的另一个实施例的具有细目表(breadcrumbtable)的高速缓存单元的示意图;图9A是根据本公开的一个实施例的、包括具有多个内核和高速缓存单元的处理器的系统的示意图;图9B是根据本公开的另一个实施例的、包括具有多个内核和高速缓存单元的处理器的系统的示意图。具体实施例方式下面的描述包括设计和操作多核处理器中的非一致性共享高速缓存的技术。在下面的描述中,为了提供对本专利技术的更彻底的理解,列出了很多具体细节,诸如逻辑实现、软件模块分配、总线和其它接口信号传输技术、以及操作细节。但是,本领域技术人员将会理解,可以在没有这些具体细节的情况下实施本专利技术。在其它实例中,为了不混淆本专利技术,没有详细示出控制结构、门级电路和完整的软件指令序列。本领域的那些普通技术人员根据这里的描述,将能够实现正确的功能而无需过度的实验。在某些实施例中,在安腾处理器家族兼容的处理器(诸如由英特尔公司制造的那些处理器)、相关联的系统和处理器固件的环境中公开了本专利技术。但是,也可以利用其它类型的处理器系统来实现本专利技术,诸如利用奔腾兼容处理器系统(诸如由英特尔公司制造的那些处理器系统)、X-Scale家族兼容处理器、或其他厂商或设计商的任何处理器架构的任何各种不同的通用处理器。另外,一些实施例可以包括或可以是专用处理器,诸如图形、网络、图像、通信、或者任何其它已知或可获得的类型的处理器连同其固件。现在参见图1,根据本公开的一个实施例,示出了环形互连上的高速缓存单元的示意图。处理器100可以包括几个处理器内核102-116和高速缓存单元120-134。在不同的实施例中,处理器内核102-116可以是公共内核设计的相似复制,或者它们的处理能力可以有实质的不同。高速缓存单元120-134整体上在功能上等价于传统的单一高速缓存。在一个实施例中,他们可以形成二级(L2)高速缓存,而一级(L1)高速缓存位于内核102-116内。在其它实施例中,高速缓存单元可以位于整个高速缓存层次体系中的不同级。如图所示,用包括顺时针(CW)环140和逆时针(CCW)环142的冗余双环互连来连接内核102-116和高速缓存单元120-134。环的每个部分都可以在所示模块之间传送任何数据。如图所示,内核102-116中的每个内核都与高速缓存单元120-134的一个高速缓存单元配对。该配对是为了将一个内核与就低访问等待时间而言“最靠近”的高速缓存单元在逻辑上相关联。例如,内核104当访问高速缓存单元122中的高速缓存行时,可以具有最低的访问等待时间,而当访问其它高速缓存单元时,将具有增大的访问等待时间。在其它实施例中,两个或多个内核能够共享单个高速缓存单元,或者可以有两个或多个高速缓存单元与一个特定的内核相关联。可以使用一种度量“距离”来描述高速缓存单元相对于一个特定内核的等待时间次序。在一些实施例中,该距离可以与内核和高速缓存单元在该互连上的物理距离相关联。例如,高速缓存单元122和内核104之间的距离可以小于高速缓存单元126和内核104之间的距离,而后者又可以小于高速缓存单元128和内核104之间的距离。在其它实施例中,可以使用其它形式的互连,诸如单环互连、线性互连或网格互连。在每种情况下,都可以定义距离度量来描述高速缓存单元相对于特定内核的等待时间次序。现在参见图2,根据本专利技术的一个实施例,示出了一个高速缓存单元的示意图。在一个实施例中,该高速缓存单元可以是图1中的高速缓存单元120。高速缓存单元120可以包括L2控制器210和一个或多个高速缓存链。L2控制器210可以具有用于与所述互连进行连接的一个或多个连线260、262。在图2的实施例中,示出了四个高速缓存链220、230、240、250,但是在高速缓存单元中可以具有多于或少于四个高速缓存链。在一个实施例中,可以将存储器中的任何特定高速缓存行映射到这四个高速缓存链中的单独一个。当访问高速缓存单元120中的一个特定高速缓存行时,只需要搜索和访问相应的高速缓存链。因此,可以将多个高速缓存链类推到传统的组相联高速缓存中的多个组;但是,由于本公开的高速缓存中所具有的互连数目,与类似高速缓存大小的传统组相联高速缓存中的组相比,通常具有较少的高速缓存链。在其它实施例中,存储器中的任何特定高速缓存行都可以映射到高速缓存单元中的两个或多个高速缓存链。每个高速缓存链可以包括一个或多个高速缓存片。例如,如图所示,高速缓存链220具有高速缓存片222-228。在其它实施例中,在一个高速缓存链中可以有多于或少于四个高速缓存片。在一个实施例中,一个高速缓存链中的高速缓存片不是按地址划分的,例如,载入到一个高速缓存链的高速缓存行可以被置于该高速缓存链的任何高速缓存片中。由于沿高速缓存链的互连长度不同,沿着单个高速缓存链,这些高速缓存片的访问等待时间可能不同。例如,从高速缓存片222的访问等待时间可能小于从高速缓存片228的访问等待时间。这样,可以使用沿高速缓存链的“距离”度量来描述相对于特定高速缓存链的高速缓存片的等待时间次本文档来自技高网...

【技术保护点】
一种处理器,包括:经由接口耦合的一组处理器内核;以及可以被并行搜索的一组高速缓存片,其中,所述一组中的第一高速缓存片和第二高速缓存片用于接收第一高速缓存行,并且其中,从所述一组处理器内核中的第一内核到所述第一高速缓存片和到所述第二高速缓存片的距离不同。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:C休斯J塔克三世V李Y陈
申请(专利权)人:英特尔公司
类型:发明
国别省市:US[美国]

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

1