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

独占所有权探听过滤器制造技术

技术编号:2835198 阅读:878 留言:0更新日期:2012-04-11 18:40
一种探听过滤器为多处理器系统中的多个高速缓存维持数据一致性信息。独占所有权探听过滤器只存储由处理器独占所有的条目。一致性引擎更新探听过滤器中的条目,以便在条目退出独占状态的情况下,从探听过滤器移除条目。为确保数据一致性,一致性引擎实现将读请求与写请求去耦的排序规则。

【技术实现步骤摘要】

本专利技术涉及多处理器系统中的高速緩存一致性。
技术介绍
在具有多个高速緩存的多处理器系统中,每个高速緩存可具有 存储器中存储的一段数据的拷贝。在高速緩存中的多个数据拷贝不 一致时会出现问题。各种技术已开发用于确保数据一致性。例如在 修改一个高速緩存中的数据时,将数据的其它拷贝标记为无效,以 使它们不会被用。高速緩存中的数据拷贝经常称为高速緩存线、存储器线或线。 探听操作称为过程,其中总线代理监视总线是否有存储器事务处 理,例如对也可位于高速緩存中的主存储器位置进行的读/写操作。 代理可在例如探听过滤器等目录中记录存储器事务处理中涉及的高 速緩存线状态。高速緩存线状态可指示该线是否只具有主存储器外 的一个有效拷贝,有多个高速li存共享的多个有效拷贝,或已被无 效。探听过滤器中的数据条目经常按主存储器中的其地址索引。通常需要具有提供处理器高速緩存总大小多倍覆盖率的大探听过滤器(例如8x覆盖率,这是一个技术术语,它指示在探听过滤器 可保持的条件下,探听过滤器可保持描述如高速緩存的大约多达8 倍高速緩存线的信息)。大探听过滤器可增加处理器高速緩存的命 中率,并改进系统性能。然而,在处理器高速緩存大小随着时间而 增大时,由于管芯大小限制,电路设计甚至难以承压提供lx覆盖 率。因此,探听过滤器有时会用尽空间以记录新存储器事务处理的 线状态,并可能需要从探听过滤器赶出一个条目以容纳新事务处 理。 一旦从探听过滤器赶出一个条目,便发送过期无效消息到可能保持与被赶出条目相关联的线的有效拷贝的每个处理器高速緩存。实验显示,相当大数量的高速緩存未中(例如20%)是由于原来要使用的高速緩存线过期无效的原因。
技术实现思路
本专利技术提供一种方法,包括在探听过滤器中只存储具有独占 状态的条目;以及在请求改变了与所述探听过滤器中条目相关联的 线的独占所有权的情况下,更新所述条目。本专利技术还提供一种设备,包括多个处理器;探听过滤器,与 所述处理器耦合,所述探听过滤器只存储具有独占状态的条目;以 及一致性引擎,更新所迷探听过滤器中的所述条目。本专利技术还提供一种系统,包括多个处理器;服务器存储器, 其中部分所述服务器存储器由所述多个处理器高速緩存;至少一个 服务器输入/输出(I/0)装置,接收和响应外部请求;以及芯片组,包 括探听过滤器,只存储具有独占状态的条目;以及一致性引擎, 更新所述探听过滤器中的所述条目。附图说明在附图中,以示例方式而不是限制方式示出实施例,图中相似 的标号表示类似的元件。应注意,在此公开中对"一个"实施例的引 用不一定为相同的实施例,并且此类引用表示至少一个。 图l是包括多个高速緩存的多处理器系统实施例框图。 图2是图1多处理器系统一致性控制器实施例的框图,其中一致性控制器包括:深听过滤器和一致性引擎。图3是示出由图2 —致性引擎实现的排序规则过程的流程图示例。具体实施例方式参照图1,多处理器系统10的实施例可包括与芯片组13互连 的多个处理节点17。每个处理节点17可包括一个或多个处理器 ll(显示每个处理节点2个处理器)和一个高速緩存12。每个高速緩 存12可由"起始节点"(此高速緩存所处的处理节点)的处理器11本 地存取,也可由"远程节点"(除起始节点以外的处理节点)的处理器11 远程存取。高速緩存12相对于起始节点的处理器11称为"本地高 速緩存"。处理节点17可经一个或多个前端总线(FSB) 14(仅示出两 个FSB)或其它类型的数据路径(例如点对点连接)耦合到芯片组13。 一个或多个处理节点17可在单个芯片上实现。系统10可由于其具 有的高汇总处理能力而用作服务器系统。然而,系统10也可用作 台式计算机或任何其它计算系统。芯片组13可包括一致性控制器132,用于处理从FSB 14接收 的请求和在高速緩存12之间维持数据一致性。下面将参照图2详 细论述一致性控制器132的功能。芯片组13可包括为处理节点17 提供接口的存储器控制器134和系统IO的其它组件以存取存储器15 的存储位置。存储器15可包括一种或多种类型的存储器件,如动 态随机存取存储器(DRAM)器件、同步动态随机存取存储器(SDRAM) 器件、双数据速率(DDR) SDRAM器件或适用于服务器或普通应用 的其它易失性或非易失性存储器件。在一些服务器应用中,存储在 存储器15上的数据位可由纠错码(ECC)进行差错防护。芯片组13也可包括为处理节点11提供接口的I/O控制器136 和系统10的其它组件以存取一个或多个I/O装置16。 I/O装置16 可包括工业标准体系结构(ISA)装置、外围组件互连(PCI)装置、PCI Express装置、通用串行总线(USB)装置、小型计算机系统接口 (SCSI) 装置或适用于服务器或普通应用的其它标准或专有I/O装置。在一 些实施例中,芯片组13可实现为单个芯片。在一些实施例中,芯 片组13可实现为两个或更多个芯片。芯片组13有时可称为存储器 控制集线器(MCH)或北桥(NB)。在多芯片实现中,芯片组13的辅助芯片可称为输入/输出集线器(IOH)、输入/输出控制器集线器(ICH) 和/或南桥(SB)。处理器11可在其相应本i也高速緩存12中存储存储器线以便于 快速存取。高速緩存12可存^f诸数据、指令或两者的组合。对于每 个高速緩存线,高速緩存12可存储一个标记(例如部分存储器地址) 以将高速緩存线关联或映射到存储器15中的对应线。高速緩存12 也可存储和更新每个高速緩存线的一致性状态。例如,高速緩存12 可支持MESI —致性状态,其中高速緩存线可具有修改(M)状态、 独占(E)状态、共享(S)状态或无效(I)状态。根据使用MESI状态的高速緩存一致性协议的示例,无效状态 (I)指示相关联高速緩存线不是线的当前拷贝。线的当前拷贝可位于 存储器15中和/或远程节点中的其它高速緩存12之一中。共享状态 (S)指示相关联高速緩存线是线的当前拷贝,并且零个或多个其它高 速緩存12也可具有共享状态中的线的当前拷贝。独占状态(E)指示 相关联高速緩存线所处的高速緩存12已经获得了线的所有权,并 具有线的当前拷贝。此外,E状态指示其它高速緩存12不具有M、 E或S状态中的线的拷贝。修改状态(M)指示相关联高速緩存线所 处的高速緩存12具有已修改的线的当前拷贝。如同E状态的情况 一样,M状态指示其它高速緩存12不具有M、 E或S状态中的线 的拷贝。此外,M状态指示相关联的线可能比存储器15中对应的 数据线更加新。当具有M状态或E状态的线与高速緩存12之一独 占相关联(例如拥有或修改)时,M状态和E状态可组合成E/M状态, 有时也称为独占状态。高速緩存线的状态可由中央目录跟踪,例如由系统10中央位 置中的探听过滤器或任一其它存储器组件跟踪。参照图2,在一个 实施例中, 一致性控制器132可包括探听过滤器24以提供高速緩 存线的一致性信息。如图2所示, 一致性控制器132的实施例可包括几个FSB端口 (FSB_Port—0 21和FSB—Port—1 22)、 一致性引擎23 和探听过滤器24。探听过滤器24可包括一个或多个存储阵列,诸如包括存储一 致性信息的路或线的完全关联阵列、组关联阵列或直接映射阵列。 在本文档来自技高网
...

【技术保护点】
一种方法,包括:    在探听过滤器中只存储具有独占状态的条目;以及    在请求改变了与所述探听过滤器中条目相关联的线的独占所有权的情况下,更新所述条目。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:JD吉尔伯特K程L程
申请(专利权)人:英特尔公司
类型:发明
国别省市:US[美国]

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

1