用于处理器的高关联性高速缓存的第二次机会取代机制制造技术

技术编号:5417920 阅读:420 留言:0更新日期:2012-04-11 18:40
本发明专利技术揭露一种高速缓存系统,其包含高速缓存(269、16A、17A、18A)和块取代控制器(266)。该高速缓存可以包含多个集合,每一个集合均包含多个块储存位置。该块取代控制器可以维护对应于该高速缓存中每一个集合的个别计数值。该个别计数值指向该给定集合内储存取代数据的合适块储存位置。该块取代控制器可针对该块储存位置中至少一些中之每一个维护相关联之最近存取位,该最近存取位指示是否该对应之块储存位置最近被存取。此外,该块取代控制器可以根据是否有特定之最近存取位指示该合适之块储存位置最近被存取,而储存该取代数据于被该个别计数值所指向之该合适之块储存位置内。

【技术实现步骤摘要】
【国外来华专利技术】用于处理器的高关联性高速缓存的第二次机会取代机制
本专利技术所揭示系关于微处理器缓存(cache),更详言之,系关于缓存数据取代机制。
技术介绍
由于计算机系统之主存储器设计系以密度为主要考虑而非速度,因此,微处理器设计者使他们的设计具有额外之缓存,以减少该微处理器对直接存取主存储器之需求。缓存系一种具有较主存储器更快之存取速度之小内存。缓存传统上系由快速之内存单元所构成,如:静态随机存取内存(SRAM),相较于使用作主存储器之该内存(传统上系动态随机存取内存(DRAM)或同步动态随机存取内存(SDRAM))具有较快之存取时间和频宽。先进之微处理器传统上包含芯片上(on-chip)高速缓存。于许多案例中,微处理器包含芯片上阶层式(hierarchical)缓存结构,阶层式缓存结构可能包含层次1(L1)、层次2(L2)和于某些案例中具有之层次3(L3)高速缓存。传统缓存阶层可以使用小且快速之L1缓存,该L1缓存可用以储存该最频繁使用之缓存线(cacheline)。该L2缓存可以系较大且可能较慢之缓存,用以储存被频繁存取但不适合于L1之缓存线。该L3缓存可较该L2缓存更大且被用以储存被频繁存取但不适合于L2之缓存线。具有如上所述之缓存阶层可以藉由减少延迟(latency)来改善处理器效能,其中该延迟系关联于内存被处理器核心所存取。于传统缓存设计中,任何给定之数据块(blockofdata)仅可被置放于一些小数目之实体位置的其中之一,称作集合(一般称作集合关联缓存(setassociativecache))。每一个集合中之该最大块数系与该缓存的关联性(associativity)。一旦给定集合系被存满(full),每一次新的数据必须被纳入该集合时,则已存在之项目必须被该新的数据所溢写(overwritten)或取代。某些形式之算法必须被用以决定于取代之过程中那一个已存在之项目将被溢写。取代演算中的一种形式系为该最近最少使用(leastrecentlyused,LRU)算法。于该LRU算法中,每一个集合中所有之项目之时间顺序均被追踪,并且如该名称所暗示,该最近最少使用之项目系被取代。这个算法于该关联性很小的情况下可以运作得很好。对于较高之关联性,持续追踪该LRU位置系变得复杂且该排序信息(orderinginformation)需要相当数量之储存空间。
技术实现思路
许多用于处理器高速缓存系统的高关联性高速缓存的第二次机会取代机制之实施例系被揭露。于一个实施例中,该高速缓存系统包含连接至块取代控制器之高速缓存。该高速缓存可包含多个集合,每一个集合均包含多个块储存位置。该块取代控制器可以用以维护对应于该高速缓存中每一个集合的个别计数值(separatecountvalue)。对应于给定集合的该计数值指向该给定集合内储存取代数据的合适之块储存位置或块储存位置群组(group)。该块取代控制器可针对该块储存位置的至少一些中之每一个维护相关联之最近存取位,该最近存取位指示是否该对应之块储存位置最近被存取。此外,该块取代控制器可以根据是否对应于合适之块储存位置的特定最近存取位指示该合适之块储存位置最近被存取,而将该取代数据储存于该合适之块储存位置中被该个别计数值所指向之一者内。于一个具体实现中,该块取代控制器可储存该取代数据于被该个别计数值所指向之合适之块储存位置内,以响应对应于该储存位置的该特定最近存取位,其中该特定最近存取位指出该储存位置最近未被存取。于另一个具体实现中,该块取代控制器可禁止储存该取代信号于被该个别计数值所指向之合适之块储存位置内,以响应对应于该合适之储存位置的该特定最近存取位,其中该特定最近存取位指出该合适之块储存位置最近被存取。附图说明藉由参考附加图示使所属
中具有通常知识者对本专利技术可有较佳的了解,且明了其许多特色与优点。图1系包含多核心处理节点之计算机系统之一个实施例之块图;图2系图标图1之高速缓存的实施例中较详细态样之块图;图3系描述图2之该高速缓存的一个实施例中该操作之流程图;图4系图标图1之高速缓存的另一个实施例中较详细态样之块图;图5系描述图4之该高速缓存的一个实施例中该操作之流程图;虽然本专利技术可容易作各种之修饰和替代形式,但是在此系由图式中之范例显示及详细说明本专利技术之特定实施例。然而,应暸解到此处特定实施例之图式及详细说明并不欲用来限制本专利技术为所揭示之特定形式,反之,本专利技术将涵盖所有落于如所附申请专利范围内所界定之本专利技术之精神和范围内之修饰、等效和替代内容。请注意该字句”may”系以宽松之意义被贯穿地使用于本专利技术(也就是,有可能的、可以的),而不是强制之意义(也就是,必须)。具体实施方式现在转到图1,计算机系统10之一个实施例之块图系被图示于图1。于该图标之实施例中,该计算机系统10包含连接至内存14和周边装置13A-13B之处理节点12(processingnode)。该节点12包含连接至节点控制器20之处理器核心15A-15B、多个HyperTransportTM(HT)接口电路24A-24C以及共享之层次3(sharedL3)高速缓存60,其中,该节点控制器20系进一步连接至内存控制器22。该HT电路24C系连接至该周边装置13A,该周边装置13A又以菊环式组构(daisy-chainconfiguration)连接至该周边装置13B,于本实施例中系使用HT接口。该剩下之HT电路24A-24B可经由其它HT接口(未显示)而被连接至其它类似之处理节点(未显示)。该内存控制器22系连接至该内存14。于一个实施例中,节点12可系单一个集成电路芯片(integratedcircuitchip),该集成电路芯片包括显示于图1中之该电路系统(circuitry)。也就是说,节点12可为芯片多重处理器(chipmultiprocessor,CMP)。任何层次之整合的(integrated)或离散的(discrete)组件均可被使用。此处提到处理节点12可包含许多其它为了简化而省略之电路。于许多实施例中,节点控制器20也可包含许多种内连接(interconnection)电路(未显示),其中该内连接电路系用于将处理器核心15A和15B彼此内连接、内连接至其它节点、以及内连接至内存。节点控制器20也可包含选择和控制许多节点特性之功能,如:该节点之该最大和最小操作频率,以及例如该节点之最大和最小电源供应电压。该节点控制器20一般可用以于该处理器核心15A-15B、该内存控制器22以及该HT电路24A-24C之间进行路由通讯(routecommunications),视该通讯形式和该通讯之地址...等而定。于一个实施例中,该节点控制器20可以包含系统要求储列(systemrequestqueue,SRQ;未显示),其中该节点控制器20系将接收之通讯(receivedcommunications)写入该系统要求储列。该节点控制器20可排程来自该SRQ之通讯以路由该通讯至该处理核心15A-15B、该HT电路24A-24C以及该内存控制器22之间之一个目标或数个目标。一般而言,该处理器核心15A-15B可利用通往该节点控制器20之该接口与该计算机系统10之其它组件(例如:周边装置13A-13B本文档来自技高网
...
用于处理器的高关联性高速缓存的第二次机会取代机制

【技术保护点】
一种高速缓存系统(200),包括:高速缓存(269、16A、17A、18A),包含多个集合,每一个集合均具有多个块储存位置;以及块取代控制器(266),连接至该高速缓存并且用以维护对应于该高速缓存中每一个集合的个别计数值,其中,对应于给定集合的该个别计数值指向该给定集合内储存取代数据的合适的块储存位置;其中,该块取代控制器进一步用以针对至少一些该块储存位置的每一个维护相关联的最近存取位,该最近存取位指示该对应的块储存位置是否最近被存取;以及其中,该块取代控制器进一步用以根据对应于该合适的块储存位置的该最近存取位中特定的一个是否指示该合适的块储存位置最近被存取,而将该取代数据储存于被该个别计数值所指向的该合适的块储存位置内。

【技术特征摘要】
【国外来华专利技术】US 2007-9-4 11/849,5151.一种高速缓存系统,包括:高速缓存,包含多个集合,每一个集合均具有多个块储存位置;以及块取代控制器,连接至该高速缓存并且用以维护对应于该高速缓存中每一个集合的个别计数值,其中,对应于给定集合的该个别计数值指向该给定集合内储存取代数据的合适的块储存位置;其中,该块取代控制器进一步用以针对至少一些该块储存位置的每一个维护相关联的最近存取位,从该个别计数值上一次指向对应的块储存位置,该最近存取位指示该对应的块储存位置是否最近被存取;以及其中,该块取代控制器进一步用以根据对应于该合适的块储存位置的该最近存取位中特定的一个指示该合适的块储存位置最近未被存取,而将该取代数据储存于被该个别计数值所指向的该合适的块储存位置内,其中,最近存取位的数目直接对应于集合的数目乘以n-log2n,此处n等于该高速缓存关联性的路数。2.如权利要求1所述的高速缓存系统,其中,该块取代控制器进一步用以响应于存取该合适的块储存位置的缓存存取请求,来造成对应于该合适的块储存位置的该最近存取位中该特定的一个指示该合适的块储存位置最近被存取。3.如权利要求1所述的高速缓存系统,其中,该块取代控制器进一步用以响应于对应于该合适的块储存位置的该最近存取位中该特定的一个指示出该合适的块储存位置最近被存取,而禁止将该取代数据储存于被该个别计数值所指向的该合适的块储存位置内。4.如权利要求1所述的高速缓存系统,其中,该块取代控制器用以响应于指向该对应的合适的块储存位置的对应的个别计数值,以及给定的最近存取位指示该对应的合适的块储存位置最近被存取,而造成该给定的最近存取位指示相关联的合适的块储存位置最近未被存取。5.如权利要求4所述的高速缓存系统,其中,该块取代控制器用以响应于对应于该合适的块储存位置的该最近存取位中该特定的一个指示该合适的块储存位置最近被存取以及该最近存取位中该特定的一个最近被存取,而增加该个别计数值以指向该集合中下一个合适的块储存位置并清空该最近存取位中该特定的一个,且该块取代控制器查看下一个最近存取位是否被设定。6.如权利要求1所述的高速缓存系统,其中,最近存取位的数目直接对应于集合的数目乘以该高速缓存关联性的路数。7.一种执行数据取代机制的方法,包括:提供高速缓存,该高速缓存包含多个集合,每一个集合均包含多个块储存位置;以及维护个别计数值,该个别计数值对应于该高速缓存中每一个集合,其中,对应于给定集合的该个别计数值指向该给定集合内储存取代数据的合适的块储存位置;针对至少一些该块储存位置中的每一个维护相关联的最近存取位,从该个别计数值上一次指向对应的该块储存位置,该最近存取位指示对应的该块储存位置是否最近被存取;以及根据对应于该合适的块储存位置的该最近...

【专利技术属性】
技术研发人员:JD威廉姆斯
申请(专利权)人:先进微装置公司
类型:发明
国别省市:US[美国]

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

1