CN101048763B - 一种配置处理器的高速缓冲存储器的方法与处理器 - Google Patents

一种配置处理器的高速缓冲存储器的方法与处理器 Download PDF

Info

Publication number
CN101048763B
CN101048763B CN2005800330956A CN200580033095A CN101048763B CN 101048763 B CN101048763 B CN 101048763B CN 2005800330956 A CN2005800330956 A CN 2005800330956A CN 200580033095 A CN200580033095 A CN 200580033095A CN 101048763 B CN101048763 B CN 101048763B
Authority
CN
China
Prior art keywords
use amount
cache memory
cache
numerical value
speed buffering
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN2005800330956A
Other languages
English (en)
Other versions
CN101048763A (zh
Inventor
M·L·戈尔登
R·E·克拉斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MediaTek Inc
Original Assignee
GlobalFoundries Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by GlobalFoundries Inc filed Critical GlobalFoundries Inc
Publication of CN101048763A publication Critical patent/CN101048763A/zh
Application granted granted Critical
Publication of CN101048763B publication Critical patent/CN101048763B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0811Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/126Replacement control using replacement algorithms with special data handling, e.g. priority of data or instructions, handling errors or pinning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1028Power efficiency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/27Using a specific cache architecture
    • G06F2212/271Non-uniform cache access [NUCA] architecture
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Microcomputers (AREA)

Abstract

于一实施例中,处理节点包括多个处理器核心,每个核心包括耦合至高速缓冲监视单元及耦合至配置单元的高速缓冲存储器。每个高速缓冲监视单元可以配置成独立监视其所耦合的高速缓冲存储器的目前使用量,并判定目前的使用量是否低于预定的使用量的数值。配置单元可以根据高速缓冲监视单元判定目前使用量低于预定使用量的数值,选择性地将高速缓冲存储器的一个或多个部分禁用(disable)。

Description

一种配置处理器的高速缓冲存储器的方法与处理器
技术领域
本发明是有关于微处理器及芯片多处理器(chip multiprocessors,CMP)之领域,尤其指处理器的高速缓冲存储器的重新配置。 
背景技术
现代的微处理器典型地包括芯片上(on-chip)高速缓冲存储器。在许多例子中,微处理器包括芯片上阶层式高速缓冲结构,该高速缓冲架构可以包括第一层(L1)、第二层(L2),有些甚至还有第三层(L3)高速缓冲存储器。典型的高速缓冲阶层也许会采用小而快的L1高速缓冲,用来存放最常用的高速缓冲线。L2也许用的是较大且可能会慢些的高速缓冲,用来存放L1想存取但容纳不下的高速缓冲线。L3可能会用来存放L2想存取但容纳不下的高速缓冲线。使用如上所述的高速缓冲阶层可以减少处理器核心因存储器存取所伴随而来的延迟时间(latencies),从而改善处理器效能。 
但在某些案例中,这种效能的改善可能要付出代价。众所周知的是现代的微处理器会耗用大量功率而且具有高的热预算(thermalbudget)。高速缓冲存储器即使不用时,也会因为静态漏电而耗用功率。因此,高速缓冲量越大,所耗用功率越多。 
为了要增进处理器的效能,芯片式多处理器(CMPs)成为新兴的技术而逐渐普及。CMP将两个或更多个处理器核心植入在同一个集成电路(IC)装置中。其普及率增加的可能原因,至少部分原因,是CMP相较于例如更复杂的单一处理器,能对集成电路中所包含的数百万颗晶体管作更有效的利用。举例而言,处理器核心间彼此分摊所要处理的工作,因而CMP可以在较低的频率执行某些单一核心处理器在较高频率下才能完成的某些任务。较低的频率在某些情况下可以节省功率并减少热预算。 
因为CMP包含多个处理器核心,每个核心可能都会包含相关的电路。例如,CMP的每个处理器核心可以包含L1及L2高速缓冲存储器。于是,如同上述对单一核心微处理器所阐述之理由,CMP的功率消耗及热预算仍然偏高。因此大家都希望找出可减少功率消耗又能维持处理器效能的方法。 
发明内容
以下揭露高速缓冲存储器动态重新配置之不同实施例。于一实施例中,处理器包含如L2高速缓冲的高速缓冲存储器,该高速缓冲存储器例如耦合至高速缓冲监视单元及配置单元。高速缓冲监视单元可以配置成监视高速缓冲存储器的目前使用量,并判定该目前使用量是否低于预定使用量的数值。该配置单元可以根据高速缓冲监视单元判定目前使用量低于预定使用量的数值,选择性地将高速缓冲存储器的一个或多个部分禁用。 
于另一实施例中,处理节点包括多个处理器核心,每个处理器核心包括耦合至高速缓冲监视单元及耦合至配置单元的高速缓冲存储器。每个高速缓冲监视单元可以配置成独立监视其所耦合的高速缓冲存储器的目前使用量,并判定该目的使用量是否低于预定使用量。该配置单元可以根据高速缓冲监视单元判定目前使用量低于预定使用量的数值,选择性地将高速缓冲存储器的一个或多个部分禁用。 
由于本创作易于作各种修改,成为不同的形式。图中所示之实施例亦仅作为协助说明之范例,以下说明也将配合图式作更深入之探讨。但应了解的是,这些图式及详细说明并非限制本创作于所揭示之特定形式,根据本创作而衍生的所有修改、等效形式、及变化形式均仍未脱离本创作之精神及专利范围。请注意,所用的标题及术语仅便于组织而非用来限制或解读专利范围之说明。而且请注意本申请文件中用了很多「可以」这个词,它意味允许(亦即有可能、能够之意),而非意味强制(亦即必须之意)。至于「包括」及「包含」这样的词,表示「包括,而非受限」。「连接」这个词表示「直接或间接的连接」,「耦合」这个词表示「直接或间接的耦合」。 
附图说明
图1为包含多核心处理节点及可配置的高速缓冲存储器的计算机系统之一实施例的方块图; 
图2为包含多核心处理节点及可配置的高速缓冲存储器的计算机系统之另一实施例的方块图; 
图3为用来说明处理节点之一实施例的操作的流程图; 
图4为包含单一处理器核心及可配置的高速缓冲存储器的微处理器之一实施例的方块图;以及 
图5为用来说明图4的微处理器之一实施例的操作的流程图。 
主要组件符号说明 
10  计算机系统        12  节点 
13A、13B  周边装置    14  存储器 
15A、15B  处理器核心  17A、17B、417L2  高速缓冲 
18A、18B、95  高速缓冲监视单元 
19A、19B  配置单元    20  节点控制器 
22    存储器控制器    24A、24B、24C HT  电路 
40A、40B、86  电路 
42A、42B、51、61、96、440、442   存储器 
44A、44B、54  配置端口50、65     配置单元 
60、460L3  高速缓冲   85  高速缓冲监视器 
86  电路 
300、305、310、315、320、325、330、335、340、345、350、350、 
355、360、365、500、505、510、515、520、525流程图区块 
415 微处理器          418 高速缓冲监视单元 
419 配置单元          450 处理器核心逻辑 
475L1高速缓冲 
具体实施方式
具有可动态配置高速缓冲之芯片多处理器
请参阅图1,所示者是计算机系统10之一实施例的方块图。在图标实施例中,计算机系统10包括耦合至存储器14及周边装置13A至 13B之处理节点12。节点12包括耦合至节点控制器20之处理器核心15A至15B,该节点控制器20进一步耦合至存储器控制器22及多个HyperTransportTM(HT)接口电路24A至24C。处理器核心15A至15B亦耦合至共享之第三层(L3)高速缓冲存储器60,该L3高速缓冲存储器60耦合至L3高速缓冲监视器85及配置单元50。HT电路24C是耦合至周边装置13A,该周边装置13A以菊链(daisy-chain)配置方式(在本实施例中用HT接口)耦合至周边装置13B。其余之HT电路24A至24B可以经由其它HT接口(未图标)连接至其它类似之处理节点(未图标)。该存储器控制器22是耦合至存储器14。于一实施例中,节点12可以是其中包含图1中所示之电路之单一集成电路芯片。亦即,节点12可以是芯片多处理器(CMP)。任何程度的整合或分立式组件都可以使用。应注意的是处理节点12可以包括各种其它为了要简化说明而省略的电路。 
于一实施例中,节点控制器20可以包含不同的互连电路(未图标)以将处理器核心15A及15B彼此互连或连接至其它节点及存储器。节点控制器20还可以包含熔丝组(未图标),该熔丝组可在制造过程中选择性地熔断以代表多个数值。于某些实施例中,可以用熔丝来选择不同的节点属性,该属性包括节点的最大及最小操作频率、节点的最大及最小电源供应电压。此外,熔丝也可以用来选择处理器核心的特定属性。 
概括而言,节点控制器20可以配置成作为处理器核心15A至15B、存储器控制器22、及HT电路24A至24C间传送通讯(communication)之用,视通讯的型态、通讯的地址等而定。于一实施例中,节点控制器20包含系统要求队列(system request queue,SRQ),以供节点控制器20写入接收到的通讯。节点控制器20可以要从SRQ送至处理器核心15A至15B、存储器控制器22、及HT电路24A至24C等一个或多个目的地的通讯进行排程。以下将对节点12及其组件作更深入的探讨。 
大致上,处理器核心15A至15B可以用对节点控制器20的接口来和计算机系统10的其它组件(例如,周边装置13A至13B、其它处理器核心(未图标)、存储器控制器22等)通讯。该接口可以设计成任何 所要的型式。在某些实施例中,可以针对该接口定义高速缓冲一致性的通讯(cache coherent communication)。于一实施例中,节点控制器20和处理器核心15A至15B间之接口可以用类似于HT接口所用封包的形式来通讯。在其它的实施例中,可以使用任何其它所要的通讯(例如,总线接口的传输处理(transaction)或不同形式的封包等)。在其它实施例中,处理器核心15A至15B可以与该节点控制器20共享接口(例如,共享总线接口)。概括而言,来自处理器核心15A至15B的通讯可以包括诸如读取操作(读取存储器位置或外部的缓存器至处理器核心)及写入操作(写到存储器位置或外部的缓存器)、对探询(probe)响应(针对高速缓冲一致性实施例)、中断确认(interrupt acknowledgement)、及系统管理讯息等。 
存储器14可以包括任何合适的记忆装置。例如存储器14可以包括一个或多个RAMBUS DRAMs(RDRAMs)、同步式(synchronous)DRAMs(SDRAMs)、倍资料率(double data rate,DDR)SDRAM、静态RAM等。存储器控制器22可以包括用以介接存储器14之控制电路。此外,存储器控制器22可以包括要求队列,以伫放存储器要求等。 
HT电路24A至24C可以包括不同的缓冲器及控制电路,以接收来自HT连结之封包及发送封包给HT连结。HT接口包括用来发送封包之单向连结。每个电路24A至24C可以耦合至两个这样的连结(一个用来发送而另一个用来接收)。给定之HT接口可以(例如处理节点间之)高速缓冲一致性形式操作或以(例如对/从周边装置13A至13B间之)非一致性形式操作。于图标之实施例中,HT电路24A至24B未使用,而HT电路24C系经由非一致性连结耦合至周边装置13A至13B。 
周边装置13A至13B可以是任何形式之周边装置。例如,周边装置13A至13B可以包括用来耦合至其它计算机系统以进行通讯之装置(例如网络适配卡、功能类似网络适配卡但被整合至计算机系统之电路、调制解调器等)。进而,周边装置13A至13B可以包括视讯加速器、音讯卡、软盘、硬盘或磁盘控制器、SCSI(小型计算机系统接口,smallcomputer system interface)转接器及电话卡、声卡、及诸如GPIB或现场总线适配卡之类的资料撷取卡等。应注意的是,「周边装置」意指各种输入/输出(I/O)装置。
概括而言,处理器核心15A至15B可以包括设计来执行指令之电路,而该等指令是定义于给定之指令集架构。亦即,处理器核心电路可以配置成对定义于指令集架构中之指令结果进行提取、译码、执行、及存储。例如,于一实施例中,处理器核心15A至15B可以作成x86架构。处理器核心15A至15B可以包含任何所要的配置,包括超管线式(superpipelined)、超纯量(superscalar)、或其组合。其它配置可以包括纯量、管线式、或非管线式等。不同的实施例可以采用非依序预测式执行(out of order speculative execution)或依序(in order)执行。处理器核心可以包括针对一个或多个指令或其它功能之微码,以及和上述各种构造之组合。不同的实施例可以作成其它各种设计属性,诸如高速缓冲、转换侧视缓冲器(translation lookaside buffers,TLBs)等。 
应注意的是,虽然本实施例用HT接口进行节点间及节点和周边装置间之通讯,其它实施例也可以用任何所要的一个或多个接口进行任意的通讯。例如,可以用其它以封包为基础的接口、可以用总线接口、也可以用不同的标准周边接口(例如周边组件互连标准(peripheralcomponent interconnect,PCI)、PCI快速标准(PCI express)等)等。 
可配置式高速缓冲控制
于图标的实施例中,处理器核心15A包含L2高速缓冲17A。同理,处理器核心15B包含L2高速缓冲17B。个别的L2高速缓冲可以用来代表任何在微处理器中所见到的L2高速缓冲。但在一实施例中,L2高速缓冲17A至17B可以用若干个独立可控制的存储器区块作成,如虚线所示。于一实施例中,每一个区块可以包含独立可控制之电源网格(power grid)。因此供应至各存储器区块的电源(VDD)可以独立地移除,或在某些情况下由个别电源网格供应至存储器区块的电压可以独立地降低。 
如同图标实施例所述之L2高速缓冲,L3高速缓冲60也可以用若干个独立可控制的存储器区块作成,如虚线所示,其中每一个区块可以各包含独立可控制之电源网格。因此供应至各存储器区块的电源(VDD)可以独立地移除,或在某些情况下由个别电源网格供应至存储器区块的VDD可以独立地降低。
于图标实施例中,如同L3高速缓冲,各个L2高速缓冲存储器17A至17B是分别耦合至L2高速缓冲监视单元18A至18B,并分别耦合至配置单元19A至19B。于一实施例中,每一个高速缓冲监视单元(例如18A、19A、85)可以配置成监视它所连接之个别高速缓冲存储器之使用量。例如,L2高速缓冲监视单元18A可以监视L2高速缓冲17A之使用量。于图标实施例中,每一个高速缓冲监视单元包含可以判定目前高速缓冲使用量并判定目前使用量是否在给定使用量限制内之电路(例如40A、40B、86)。更明确地说,例如高速缓冲监视单元18A可以判定L2高速缓冲17A之目前使用量是否低于预定临限值。若是,高速缓冲监视单元18A可通知配置单元19A。 
于一实施例中,配置单元19A包含一个或多个如可编程缓存器的存储器标为42A,该存储器42A例如可以存储对应于L2高速缓冲17A不同配置之偏好(preference)及状态的数值。视存放在存储器42A中之数值而定,配置单元19A可编程成,根据来自L2高速缓冲监视器18A的通知,对L2高速缓冲17A中之一个或多个独立可控制存储器区块进行选择性致能或禁用。此外,存放在存储器42A中之数值可以判定给定区块之电源网格是否要关闭或电压要降低。例如,在某些情况下,例如当处理器核心进行内文切换(context switch)时,新执行绪(newthread)或内文可能不再使用L2高速缓冲,但仍希望存放在L2高速缓冲17A中之资料可在内文切换回来时能再度利用。在这种情况下,只要将一个或多个区块的电压降低至能维持所存资料之程度即可,但不容许进一步的存取或禁用,直到重新致能区块或电压恢复正常为止。 
配置单元50可以进一步配置成允许处理器核心15A共享处理器核心15B之L2高速缓冲17B,反之亦然,视存储其中之配置值而定。例如,当高速缓冲监视器40A判定L2高速缓冲17A之目前使用量高于上临限值时,配置单元42A可以要求对L2高速缓冲17B的存取。在这种情况下,若L2高速缓冲17B有被禁用因而可共享的区块,配置单元42B便可以允许共享式存取。 
于一实施例中,配置单元19A、19B、及50之存储器42A、42B、及51分别可以包含预设的偏好值。或者,偏好值也可以编程至存储器中。当收到来自对应高速缓冲监视单元之通知时,这些偏好值可以用 来判定该采哪个行动。例如,如上所述,配置单元可以用这些值来决定是否要通过移除电源或降低电压而将L3高速缓冲及对应之处理器核心中的L2高速缓冲之部分禁用。此外,于一实施例中,配置单元可以用这些值判定电源激活时是否要将L3或L2高速缓冲存储器的哪些部分(若有的话)禁用。 
于一实施例中,存储器42A、42B、及51可以用软件编程。例如,可以用特殊的指令存取存储器42A、42B、及51。于另一实施例中,存储器42A、42B、及51可以用前述之硬性熔丝进行较永久性的编程。于此种实施例中,数值是读取自熔断之熔丝并存储于存储器中。于一实施例中,硬性熔丝可以外部编程取代。于此种实施例中,可将存储器42A、42B、及51分别经由配置端口44A、44B、及54,例如经由如联合测试行动群组(joint test action group,JTAG)埠的外部埠进行编程。以这种方式取代硬性熔丝的配置有时称为经软性熔丝编程(programming via soft fuses)。 
于一实施例中,高速缓冲监视单元18A、18B、及85可以用如个别高速缓冲有多少个输入项在使用及个别高速缓冲存取的频繁程度等参数来判定目前的使用量。于一实例中,所给定之高速缓冲中使用的输入项数目可以不采用探询(probes)的方式来判定,而是用计数器(未明白图标,40A、40B、及86的部分)计数写入高速缓冲的次数并通过监视写入是否产生牺牲项(victim)来判定。若未产生牺牲项,则写入的动作一定会造成新输入项的分配。否则,输入项数目保持不变。因此,若产生牺牲项,则该次写入可以不计数。此外,于一实例中,存取高速缓冲的频率可以用例如饱合计数器(saturation counter,未明白图标,电路40A的部分)来判定。于一实施例中,每次存取高速缓冲时,饱合计数器的计数值便可以递增。计数器可以在某些时脉区间递减,但不会降至零以下。若计数值维持在某个预定值以上,便可以假定为高高速缓冲存取频率,从而表示高使用量。由这两个参数可以计算得出预定使用量下限值(lower predetermined utilization value)及预定使用量上限值(upper predetermined utilization value)。应注意的是,于其它实施例中,可以采用其它所要的机制以判定高速缓冲的使用量。 
在此强调的是,虽然图1中所示之计算机系统10包含一处理节点 12,其它实施例可以作成任意数目之处理节点。同理,如节点12的处理节点在不同的实施例中可以包含任意数目之处理器核心。计算机系统10在不同实施例中也可以包含不同数目之HT接口于每个节点12,及耦合至节点的不同数目之周边装置13等。 
参见图2,所示者为计算机系统20另一实施例之方块图。为求简单明了,和图1中对应之组件均用相同的编号。如同图1中之计算机系统10,图2中之计算机系统20包括耦合至存储器14及周边装置13A至13B之处理节点22。处理节点22包括和图1中节点12类似的功能。因此,为了单纯起见,将省略和节点12相同的功能说明,只说明不同的功能。应注意的是,图2中的处理节点22可以包括为了简明而省略的其它不同电路。 
图2所示之实施例中,如同处理节点12,处理节点22也包括耦合至节点控制器20之处理器核心15A至15B,该节点控制器20进一步耦合至存储器控制器22及多个HyperTransportTM(HT)接口电路24A至24C。此外,处理器核心15A至15B亦耦合至共享之第三层(L3)高速缓冲存储器60。但L3高速缓冲60是耦合至高速缓冲监视器95及配置单元65。于一实施例中,节点22可以是包含图2中所示之电路的单一集成电路芯片。亦即,节点22可以是芯片多处理器(CMP)。 
于图标之实施例中,相对于图1之实施例,每一个L2高速缓冲存储器17A至17B亦耦合至高速缓冲监视单元95且耦合至配置单元65。于一实施例中,高速缓冲监视单元95可以配置成用如前述图1的功能监视其所连接之所有高速缓冲存储器的使用量(例如L2高速缓冲17A至17B及L3高速缓冲60)。 
于一实施例中,如同前述,配置单元65包含一个或多个如可编程缓存器的存储器标为61,可以例如存储对应于L2高速缓冲17A至17B及L3高速缓冲60不同配置之偏好及状态之数值。视存储在存储器61中之数值而定,配置单元65可编程成,根据来自高速缓冲监视单元95的通知,对L2高速缓冲17A至17B及L3高速缓冲60中之一个或多个独立可控制存储器区块进行选择性致能或禁用。同理,存储在存储器61中之数值可以判定给定区块之电源网格是否要关闭或电压要降低。应注意的是,可将存储器61如前述存储器42A、42B、及51类似 的进行编程。 
进而,可将配置单元65配置成允许处理器核心15A共享处理器核心15B之L2高速缓冲17B,反之亦然,视存储于其中之配置值而定。例如,当高速缓冲监视器95判定L2高速缓冲17A之目前使用量高于上临限值时,配置单元65可以通过处理器核心15A致能对L2高速缓冲17B的存取。在这种情况下,若L2高速缓冲17B有被禁用因而可共享的区块,配置单元65便可允许共享式存取。 
图3所示之流程图用来说明处理节点12之一实施例的操作。同时参考图1及图3,于一实施例中,当节点12先电源激活或复置(reset)时,存储在配置单元42A中之配置值可读取并用来配置L2高速缓冲17A。同理,存储在配置单元42B中之配置值可读取并用来配置L2高速缓冲17B,且存储在配置单元50中之配置值读取并用来配置L3高速缓冲60。于节点12之操作期间,高速缓冲监视单元18A、18B、及85是配置成监视其个别的高速缓冲存储器之目前使用量(流程图区块300)。例如,如前所述,高速缓冲监视单元18A、18B、及85可以追踪高速缓冲的存取频率及高速缓冲输入项之使用状况以判定其个别高速缓冲之目前使用量。 
于流程图区块305中,根据目前使用量,高速缓冲监视单元85可以判定个别的目前使用量是否在预定限制内。于一实施例中,高速缓冲监视单元85可以将L3高速缓冲60的目前使用量与上临限值及下临限值作比较。若目前使用量介于预定的临限值内,高速缓冲监视单元85继续监视L3高速缓冲60的使用量,如流程图区块300中所述。但若目前使用量不在预定的临限值内且低于下临限值(流程图区块305),高速缓冲监视单元85可以通知配置单元50(流程图区块310)。配置单元50可以选择性将L3高速缓冲60的一个或多个区块禁用(流程图区块315)。于一实施例中,配置单元50可以在收到通知时根据存储在存储器51中之配置偏好将区块禁用。例如,如前所述,所选定之区块的电源可以移除或将其降低至较低电压。此外,于一实施例中,先送到的区块可以是离处理器核心15A至15B最远的区块,因为这些区块可表示最长的路径延迟。一旦所选区块被禁用,高速缓冲监视器85继续监视使用量,如上述之流程图区块300中所述。
回到流程图区块305,若目前使用量不在预定的临限值内且高于上临限值,高速缓冲监视单元85可以通知配置单元50(流程图区块320)。若L3高速缓冲60中有一个或多个禁用的区块,则配置单元50可以选择性将L3高速缓冲60的该一个或多个禁用之区块致能(流程图区块315)。于一实施例中,配置单元50可以根据存储在存储器51中之配置偏好将区块致能。一旦所选区块被再致能,高速缓冲监视器85继续监视使用量,如上述流程图区块300中所述。 
于流程图区块330中,高速缓冲监视单元18A及18B可以根据目前使用量判定个别的目前使用量是否在预定的限制内。更明确的说,于一实施例中,高速缓冲监视单元18A、18B可以将L2高速缓冲17A至17B之目前使用量与上临限值及下临限值作比较。 
若目前使用量介于预定之临限值间,高速缓冲监视单元18A、18B继续监视L2高速缓冲17A至17B之使用量,如上述之流程图区块300。但若任一高速缓冲的目前使用量不在预定临限值内且低于下临限值(流程图区块330),合适的高速缓冲监视单元18A至18B可以通知配置单元19A至19B(流程图区块335)。配置单元19A至19B可以选择性将对应的L2高速缓冲17A至17B的一个或更多个区块禁用(流程图区块340)。于一实施例中,配置单元19A至19B可以分别在收到通知时根据存储在存储器42A至42B中之配置偏好将区块禁用。例如,如前所述,所选定之区块的电源可以移除或降低至较低电压。此外,于一实施例中,先选的区块可以是离处理器核心15A至15B之CPU逻辑最远的区块,因为这些区块可能表示最长的路径延迟。一旦所选区块已经禁用,高速缓冲监视单元18A至18B继续监视使用量,如上述之流程图区块300中所述。 
再回到流程图区块330,若目前使用量不在预定的临限值内且高于上临限值,高速缓冲监测单元18A至18B可以通知配置单元19A至19B(流程图区块345)。若受影响之L2高速缓冲中有任何L2区块被禁用(流程图区块350),配置单元19A至19B可以选择性将L2高速缓冲17A至17B的一个或多个区块致能(流程图区块355)。于一实施例中,配置单元19A至19B可以分别在收到通知时根据存储在存储器42A至42B中之配置偏好将区块禁用。例如,如前所述,所选定之区块的电 源可以移除或降低至较低电压。此外,于一实施例中,先选的区块可以是离处理器核心15A至15B最远的区块,因为这些区块可能代表最长的路径延迟。一旦所选区块已经禁用,高速缓冲监视单元18A至18B继续监视使用量,如前述之流程图区块300中所述。 
但若受影响之L2高速缓冲中没有禁用的区块(流程图区块350),受影响之L2高速缓冲(即,过度使用之L2高速缓冲)的配置单元可以向其它处理器核心之配置单元要求存取许可以共享其它核心之L2高速缓冲。例如,若高速缓冲监视单元18B判定L2高速缓冲17B的目前使用量超过上临限,配置单元19B可以经由配置单元19A要求存取L2高速缓冲17A。针对该项要求,配置单元19A可以判定L2高速缓冲17A是否有禁用之区块可共享(流程图区块360)。若是,配置单元19A可以核可对处理器核心15B之存取以共享L2高速缓冲17A之禁用之区块(流程图区块365)。该禁用的区块也就可以再致能。其操作如流程图区块300中所述。 
以下为图4及图5之说明,以包含单一处理器核心之微处理器的内文,提出可配置之高速缓冲存储器另外的实施例。 
具有动态可配置高速缓冲之单一微处理器
参考图4,所示者是包含单一处理器核心及可配置之高速缓冲存储器之微处理器之一实施例的方块图。微处理器415包括处理器核心逻辑450,该处理器核心逻辑450耦合至L1高速缓冲475、L2高速缓冲417、及L3高速缓冲460。微处理器415还包括耦合至L2高速缓冲417及L3高速缓冲460的高速缓冲监视单元418。进而,微处理器415包括耦合至高速缓冲监视器418且分别耦合至L1高速缓冲475、L2高速缓冲417、L3高速缓冲460的配置单元419。应注意的是,微处理器415可以包括其它为简化说明而省略的电路。 
于图标之实施例中,高速缓冲监视器418和配置单元419的功能类似于配合图2及图3之前述的L2高速缓冲监视器95和配置单元65的功能。为简化故,此处省略其说明。 
参见图5,所示者是流程图,用来说明图4之微处理器之一实施例的操作。请同时参考图4及图5,于一实施例中,当微处理器415先电 源激活或复置时,存储在配置单元419的存储器442中之配置值可以读取并用来配置L2高速缓冲417。同理,存储在配置单元419中之配置值可以读取并用来配置L3高速缓冲460。于微处理器415之操作期间,高速缓冲监视单元418配置成监视各高速缓冲存储器之目前使用量(流程图区块500)。例如,如前所述,高速缓冲监视单元418可以追踪高速缓冲的存取频率及高速缓冲输入项之使用状况以判定各高速缓冲之目前使用量。 
于流程图区块505中,根据目前使用量,高速缓冲监视单元418可以判定各高速缓冲个别的目前使用量是否在预定之限制内。于一实施例中,高速缓冲监视单元418可以将L2高速缓冲417之目前使用量及L3高速缓冲460之目前使用量与上临限值及下临限值作比较。 
若目前使用量在预定的临限值内,高速缓冲监视单元418继续监视L2高速缓冲417及L3高速缓冲460的使用量,如上述之流程图区块500中所述。但若目前使用量不在预定的临限值内且低于下临限值(流程图区块505),高速缓冲监视单元418可以通知配置单元419(流程图区块510)。配置单元419可以选择性将L2高速缓冲417及L3高速缓冲460的一个或多个区块禁用(流程图区块515)。于一实施例中,配置单元419可以在收到通知时根据存储在存储器442中之配置偏好将区块禁用。例如,如前所述,所选定之区块的电源可以移除或降低至较低电压。此外,于一实施例中,先选的区块可以是离处理器核心逻辑450最远的区块,因为这些区块可能表示最长的路径延迟。一旦所选区块已经禁用,高速缓冲监视器418继续监视使用量,如上述之流程图区块500中所述。 
再回到流程图区块505,若目前使用量不在预定的临限值内且高于上临限值内,高速缓冲监视单元418可以通知配置单元419(流程图区块320)。若有任何禁用之区块,配置单元419可以选择性将L2高速缓冲417及L3高速缓冲460中一个或多个被禁用的区块致能(流程图区块525)。于一实施例中,配置单元419可以根据存储在存储器442中之配置偏好将区块致能。一旦所选区块已再度致能,高速缓冲监视器418继续监视使用量,如上述之流程图区块500所述。 
如前所述,于一实施例中,存储器440及442可以用软件编程。 例如,可以用特殊的指令存取存储器440及442。于另一实施例中,存储器440及442可以用前述之硬性熔丝进行较永久性的编程。于此种实施例中,数值是读自熔断之熔丝并存储于存储器中。于一实施例中,硬性熔丝可以外部编程取代。于此种实施例中,存储器440及442可以经由配置端口44A,例如经由如联合测试行动群组(JTAG)埠的外部埠,来编程。以这种方式取代硬性熔丝的配置有时称为软性熔丝编程。 
应注意的是于上述实施例中,显示L3高速缓冲存储器。但其它实施例也可以不包含L3高速缓冲。没有L3高速缓冲完全不会降低L2高速缓冲之可配置性。 
以上已针对诸实施例进行相当详细的说明,熟习此技术者将易于根据所揭示之内容作许多变更及修改,因此这些变更及修改仍未脱离本发明所申请之专利范围。

Claims (9)

1.一种配置处理器(415)的高速缓冲存储器(417,460)的方法,其特征在于该方法包括下列步骤:
监视该高速缓冲存储器的目前使用量;
判定该目前使用量是否低于预定使用量的数值或高于另一预定使用量的数值;以及
根据该目前使用量低于预定使用量的数值的判定,通过对该高速缓冲存储器的一个或多个部分控制供应电压电平而对该高速缓冲存储器的一个或多个部分进行选择性禁用,以及根据该目前使用量高于另一预定使用量的数值的判定,致能该高速缓冲存储器的一个或多个部分。
2.如权利要求1所述的方法,还包括将该预定使用量的数值存储于可配置的存储器(442)中。
3.如权利要求1所述的方法,其中,判定该目前使用量是否低于预定使用量的数值包括比较该预定使用量的数值与该目前使用量。
4.如权利要求1所述的方法,在判定该目前使用量之前,还包括通过判定该高速缓冲存储器中使用的输入项数目及判定对该高速缓冲存储器存取的频繁程度来判定该目前使用量的数值。
5.如权利要求4所述的方法,其中,判定对该高速缓冲存储器存取的频繁程度包括用计数器计数对高速缓冲存储器存取的次数。
6.如权利要求1所述的方法,其中对该高速缓冲存储器的一个或多个部分控制供应电压电平包括降低该供应电压至低于正常操作电压电平的电平。
7.如权利要求1所述的方法,其中对该高速缓冲存储器的一个或多个部分控制供应电压电平包括去除该电压。
8.一种处理器(415),包括:
高速缓冲存储器(417)(460);
高速缓冲监视单元(418),耦合至该高速缓冲存储器且配置成监视该高速缓冲存储器的目前使用量,并判定该目前使用量是否低于预定使用量的数值或高于另一预定使用量的数值;以及
配置单元(419),耦合至该高速缓冲监视单元及该高速缓冲存储器,其中该配置单元配置成根据该高速缓冲监视单元判定该目前使用量低于预定使用量的数值,通过对该高速缓冲存储器的一个或多个部分控制供应电压电平而选择性地将该高速缓冲存储器的一个或多个部分禁用,以及根据该目前使用量高于另一预定使用量的数值的判定,致能该高速缓冲存储器的一个或多个部分。
9.如权利要求8所述的处理器,还包括用于存储该预定使用量的数值的可配置的存储器。
CN2005800330956A 2004-10-01 2005-09-21 一种配置处理器的高速缓冲存储器的方法与处理器 Active CN101048763B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/956,560 US7257678B2 (en) 2004-10-01 2004-10-01 Dynamic reconfiguration of cache memory
US10/956,560 2004-10-01
PCT/US2005/033671 WO2006039153A1 (en) 2004-10-01 2005-09-21 Dynamic reconfiguration of cache memory

Publications (2)

Publication Number Publication Date
CN101048763A CN101048763A (zh) 2007-10-03
CN101048763B true CN101048763B (zh) 2012-05-23

Family

ID=35519765

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2005800330956A Active CN101048763B (zh) 2004-10-01 2005-09-21 一种配置处理器的高速缓冲存储器的方法与处理器

Country Status (8)

Country Link
US (1) US7257678B2 (zh)
JP (1) JP4456154B2 (zh)
KR (1) KR101136141B1 (zh)
CN (1) CN101048763B (zh)
DE (1) DE112005002672B4 (zh)
GB (1) GB2432695B (zh)
TW (1) TWI403899B (zh)
WO (1) WO2006039153A1 (zh)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1866771B1 (en) * 2005-03-31 2012-10-24 Semiconductor Energy Laboratory Co., Ltd. Arithmetic processing device and electronic appliance using arithmetic processing device
US20080201528A1 (en) * 2005-04-06 2008-08-21 Mediatek Inc. Memory access systems for configuring ways as cache or directly addressable memory
US7467280B2 (en) * 2006-07-05 2008-12-16 International Business Machines Corporation Method for reconfiguring cache memory based on at least analysis of heat generated during runtime, at least by associating an access bit with a cache line and associating a granularity bit with a cache line in level-2 cache
US7809926B2 (en) * 2006-11-03 2010-10-05 Cornell Research Foundation, Inc. Systems and methods for reconfiguring on-chip multiprocessors
CN101689106B (zh) * 2007-06-12 2013-10-09 松下电器产业株式会社 多处理器控制装置、多处理器控制方法以及多处理器控制电路
US20090006036A1 (en) * 2007-06-27 2009-01-01 International Business Machines Corporation Shared, Low Cost and Featureable Performance Monitor Unit
US7680978B1 (en) * 2007-09-05 2010-03-16 Juniper Networks, Inc. Reducing content addressable memory (CAM) power consumption counters
US9513695B2 (en) * 2008-06-24 2016-12-06 Virident Systems, Inc. Methods of managing power in network computer systems
US8327126B2 (en) * 2008-08-25 2012-12-04 International Business Machines Corporation Multicore processor and method of use that adapts core functions based on workload execution
US8271728B2 (en) * 2008-11-13 2012-09-18 International Business Machines Corporation Spiral cache power management, adaptive sizing and interface operations
US8195887B2 (en) * 2009-01-21 2012-06-05 Globalfoundries Inc. Processor power management and method
US8103894B2 (en) * 2009-04-24 2012-01-24 International Business Machines Corporation Power conservation in vertically-striped NUCA caches
WO2011112523A2 (en) * 2010-03-08 2011-09-15 Hewlett-Packard Development Company, L.P. Data storage apparatus and methods
US8438410B2 (en) 2010-06-23 2013-05-07 Intel Corporation Memory power management via dynamic memory operation states
US20120096295A1 (en) * 2010-10-18 2012-04-19 Robert Krick Method and apparatus for dynamic power control of cache memory
US8516205B2 (en) * 2010-10-29 2013-08-20 Nokia Corporation Method and apparatus for providing efficient context classification
US8711633B2 (en) 2011-05-12 2014-04-29 Micron Technology, Inc. Dynamic data caches, decoders and decoding methods
JP5820336B2 (ja) 2011-05-20 2015-11-24 株式会社半導体エネルギー研究所 半導体装置
JP5820335B2 (ja) 2011-05-20 2015-11-24 株式会社半導体エネルギー研究所 半導体装置
WO2012169142A1 (en) 2011-06-09 2012-12-13 Semiconductor Energy Laboratory Co., Ltd. Cache memory and method for driving the same
JP6012263B2 (ja) 2011-06-09 2016-10-25 株式会社半導体エネルギー研究所 半導体記憶装置
US8595464B2 (en) * 2011-07-14 2013-11-26 Oracle International Corporation Dynamic sizing of translation lookaside buffer for power reduction
US8868843B2 (en) 2011-11-30 2014-10-21 Advanced Micro Devices, Inc. Hardware filter for tracking block presence in large caches
US20130138884A1 (en) * 2011-11-30 2013-05-30 Hitachi, Ltd. Load distribution system
CN103246542B (zh) * 2012-02-01 2017-11-14 中兴通讯股份有限公司 智能缓存及智能终端
US9135182B2 (en) 2012-06-01 2015-09-15 Semiconductor Energy Laboratory Co., Ltd. Central processing unit and driving method thereof
US20140136793A1 (en) * 2012-11-13 2014-05-15 Nvidia Corporation System and method for reduced cache mode
US9360924B2 (en) * 2013-05-29 2016-06-07 Intel Corporation Reduced power mode of a cache unit
US9568986B2 (en) 2013-09-25 2017-02-14 International Business Machines Corporation System-wide power conservation using memory cache
JP6474280B2 (ja) 2014-03-05 2019-02-27 株式会社半導体エネルギー研究所 半導体装置
US10719434B2 (en) 2014-12-14 2020-07-21 Via Alliance Semiconductors Co., Ltd. Multi-mode set associative cache memory dynamically configurable to selectively allocate into all or a subset of its ways depending on the mode
WO2016097808A1 (en) 2014-12-14 2016-06-23 Via Alliance Semiconductor Co., Ltd. Dynamic cache replacement way selection based on address tag bits
JP6207765B2 (ja) 2014-12-14 2017-10-04 ヴィア アライアンス セミコンダクター カンパニー リミテッド モードに応じてセットの1つ又は複数を選択的に選択するように動的に構成可能であるマルチモード・セット・アソシエイティブ・キャッシュ・メモリ
US10255190B2 (en) 2015-12-17 2019-04-09 Advanced Micro Devices, Inc. Hybrid cache
JP6405331B2 (ja) * 2016-03-22 2018-10-17 日本電信電話株式会社 キャッシュ管理システム、評価方法、管理サーバ、物理サーバ、および、測定サーバ
JP6511023B2 (ja) * 2016-08-22 2019-05-08 日本電信電話株式会社 仮想マシン管理装置およびデプロイ可否判断方法
US11163688B2 (en) * 2019-09-24 2021-11-02 Advanced Micro Devices, Inc. System probe aware last level cache insertion bypassing
US11264998B1 (en) 2020-09-24 2022-03-01 Advanced Micro Devices, Inc. Reference free and temperature independent voltage-to-digital converter
US11899520B2 (en) * 2022-04-26 2024-02-13 Advanced Micro Devices, Inc. Dynamic cache bypass for power savings

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5752045A (en) * 1995-07-14 1998-05-12 United Microelectronics Corporation Power conservation in synchronous SRAM cache memory blocks of a computer system
US5860106A (en) * 1995-07-13 1999-01-12 Intel Corporation Method and apparatus for dynamically adjusting power/performance characteristics of a memory subsystem
EP1182567A1 (en) * 2000-08-21 2002-02-27 Texas Instruments France Software controlled cache configuration
CN1514372A (zh) * 2003-04-03 2004-07-21 威盛电子股份有限公司 低功率高速缓存及其快速存取资料的方法
US6795896B1 (en) * 2000-09-29 2004-09-21 Intel Corporation Methods and apparatuses for reducing leakage power consumption in a processor

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5381539A (en) * 1992-06-04 1995-01-10 Emc Corporation System and method for dynamically controlling cache management
US5632038A (en) * 1994-02-22 1997-05-20 Dell Usa, L.P. Secondary cache system for portable computer
JPH0950401A (ja) * 1995-08-09 1997-02-18 Toshiba Corp キャッシュメモリ及びそれを備えた情報処理装置
US5881311A (en) * 1996-06-05 1999-03-09 Fastor Technologies, Inc. Data storage subsystem with block based data management
DE69826539D1 (de) * 1997-01-30 2004-11-04 Sgs Thomson Microelectronics Cachespeichersystem
US6411156B1 (en) * 1997-06-20 2002-06-25 Intel Corporation Employing transistor body bias in controlling chip parameters
JP4017248B2 (ja) * 1998-04-10 2007-12-05 株式会社日立製作所 半導体装置
US6281724B1 (en) * 1998-11-17 2001-08-28 Analog Devices, Inc. Circuit for partial power-down on dual voltage supply integrated circuits
US6349363B2 (en) * 1998-12-08 2002-02-19 Intel Corporation Multi-section cache with different attributes for each section
JP2001052476A (ja) * 1999-08-05 2001-02-23 Mitsubishi Electric Corp 半導体装置
EP1275046B1 (en) * 2000-04-12 2010-10-06 DSP Group Switzerland AG Data processing circuit with a cache memory and apparatus containing such a circuit
US7089391B2 (en) * 2000-04-14 2006-08-08 Quickshift, Inc. Managing a codec engine for memory compression/decompression operations using a data movement engine
EP1182559B1 (en) * 2000-08-21 2009-01-21 Texas Instruments Incorporated Improved microprocessor
US6983388B2 (en) * 2000-10-25 2006-01-03 Agere Systems Inc. Method and apparatus for reducing leakage power in a cache memory by using a timer control signal that removes power to associated cache lines
US6922783B2 (en) * 2002-01-16 2005-07-26 Hewlett-Packard Development Company, L.P. Method and apparatus for conserving power on a multiprocessor integrated circuit
US20030145170A1 (en) * 2002-01-31 2003-07-31 Kever Wayne D. Dynamically adjusted cache power supply to optimize for cache access or power consumption
US6944714B2 (en) * 2002-07-30 2005-09-13 Hewlett-Packard Development Company, L.P. Method and apparatus for saving microprocessor power when sequentially accessing the microprocessor's instruction cache
SG111087A1 (en) * 2002-10-03 2005-05-30 St Microelectronics Asia Cache memory system
US7093081B2 (en) * 2004-01-14 2006-08-15 International Business Machines Corporation Method and apparatus for identifying false cache line sharing

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5860106A (en) * 1995-07-13 1999-01-12 Intel Corporation Method and apparatus for dynamically adjusting power/performance characteristics of a memory subsystem
US5752045A (en) * 1995-07-14 1998-05-12 United Microelectronics Corporation Power conservation in synchronous SRAM cache memory blocks of a computer system
EP1182567A1 (en) * 2000-08-21 2002-02-27 Texas Instruments France Software controlled cache configuration
US6795896B1 (en) * 2000-09-29 2004-09-21 Intel Corporation Methods and apparatuses for reducing leakage power consumption in a processor
CN1514372A (zh) * 2003-04-03 2004-07-21 威盛电子股份有限公司 低功率高速缓存及其快速存取资料的方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Osman S.Unsal,Raksit Ashok,Israel Koren,C.ManiKrishna,Csaba Andras Moritz.Cool-cache for hot multimedia.Proceedings. 34th ACM/IEEE International Symposium.2001,274-283. *
T.A.Bocchino,J.Posner,J.M.Santiago,D.Webb.power managed second-level cache control.IBM technical disclosure bulletin39 4.1996,39(4),79-82.
T.A.Bocchino,J.Posner,J.M.Santiago,D.Webb.power managed second-level cache control.IBM technical disclosure bulletin39 4.1996,39(4),79-82. *

Also Published As

Publication number Publication date
DE112005002672B4 (de) 2010-12-02
GB0705275D0 (en) 2007-04-25
KR101136141B1 (ko) 2012-04-17
US20060075192A1 (en) 2006-04-06
GB2432695B (en) 2008-07-09
TWI403899B (zh) 2013-08-01
KR20070054715A (ko) 2007-05-29
GB2432695A (en) 2007-05-30
WO2006039153A1 (en) 2006-04-13
TW200627148A (en) 2006-08-01
US7257678B2 (en) 2007-08-14
JP2008515095A (ja) 2008-05-08
CN101048763A (zh) 2007-10-03
DE112005002672T5 (de) 2007-11-29
JP4456154B2 (ja) 2010-04-28

Similar Documents

Publication Publication Date Title
CN101048763B (zh) 一种配置处理器的高速缓冲存储器的方法与处理器
CN102365627B (zh) 用于缓存中通路分配及通路锁定的方法
US8438416B2 (en) Function based dynamic power control
US9262322B2 (en) Method and apparatus for storing a processor architectural state in cache memory
US7380063B2 (en) Cache flushing
Hay et al. Preventing PCM banks from seizing too much power
CN102567109B (zh) 中断分配方案
EP2805243B1 (en) Hybrid write-through/write-back cache policy managers, and related systems and methods
US9058282B2 (en) Dynamic cache write policy
US20150026407A1 (en) Size adjusting caches based on processor power mode
JP2010532517A (ja) 連想度を設定可能なキャッシュメモリ
JP2013526739A (ja) キャッシュ制御のための方法および装置
TWI465908B (zh) 用於在階層式快取設計之快取記憶體間有效通訊的方法及設備
CN109716307B (zh) 用于延迟的高速缓存利用的系统和方法
CN103354977A (zh) 在集成电路内进行处理器系统的扩展
JP2015515687A (ja) 高速キャッシュシャットダウンのための装置および方法
US11455251B2 (en) Enhanced durability for systems on chip (SOCs)
CN104460938B (zh) 利用存储器高速缓存在系统范围内节省电力的方法和系统
WO2014031384A1 (en) Power management of multiple compute units sharing a cache
JP7335253B2 (ja) スコアボードの保存及び復元
US20150026406A1 (en) Size adjusting caches by way
US11822484B2 (en) Low power cache
CN117882028A (zh) 基于限制硬件强制的功率控制的功率管理
Kim et al. Replication-aware leakage management in chip multiprocessors with private L2 cache

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: GLOBALFOUNDRIES INC.

Free format text: FORMER OWNER: ADVANCED MICRO DEVICES INC.

Effective date: 20100802

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: CALIFORNIA STATE, USA TO: CAYMAN ISLANDS GRAND CAYMAN ISLAND

TA01 Transfer of patent application right

Effective date of registration: 20100802

Address after: Grand Cayman, Cayman Islands

Applicant after: Globalfoundries Semiconductor Inc.

Address before: American California

Applicant before: Advanced Micro Devices Inc.

C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20201218

Address after: California, USA

Patentee after: Lattice chip (USA) integrated circuit technology Co.,Ltd.

Address before: Greater Cayman Islands, British Cayman Islands

Patentee before: GLOBALFOUNDRIES Inc.

TR01 Transfer of patent right
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210317

Address after: No.1, Duhang 1st Road, Hsinchu City, Hsinchu Science Park, Taiwan, China

Patentee after: MEDIATEK Inc.

Address before: California, USA

Patentee before: Lattice chip (USA) integrated circuit technology Co.,Ltd.