KR100961632B1 - Patch Engine - Google Patents

Patch Engine Download PDF

Info

Publication number
KR100961632B1
KR100961632B1 KR1020080105245A KR20080105245A KR100961632B1 KR 100961632 B1 KR100961632 B1 KR 100961632B1 KR 1020080105245 A KR1020080105245 A KR 1020080105245A KR 20080105245 A KR20080105245 A KR 20080105245A KR 100961632 B1 KR100961632 B1 KR 100961632B1
Authority
KR
South Korea
Prior art keywords
storage unit
traces
cache
storing
instruction
Prior art date
Application number
KR1020080105245A
Other languages
Korean (ko)
Other versions
KR20100046415A (en
Inventor
정성우
장형범
이종성
Original Assignee
고려대학교 산학협력단
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 고려대학교 산학협력단 filed Critical 고려대학교 산학협력단
Priority to KR1020080105245A priority Critical patent/KR100961632B1/en
Publication of KR20100046415A publication Critical patent/KR20100046415A/en
Application granted granted Critical
Publication of KR100961632B1 publication Critical patent/KR100961632B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • 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
    • 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
    • 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

Abstract

본 발명은 패치 엔진에 관한 것으로, 더욱 상세하게는 추적 캐시(Trace cache)를 동적 명령어 트레이스들(traces)의 베이직 블럭을 저장하는 제 1 저장부와 상기 베이직 블록 이외의 트레이스들을 저장하는 제 2 저장부로 구분하여 저장하고, DVFS 컨트롤러에 의해 상기 저장부에 따라 서로 다른 전압을 공급하여 전체 파워 소모를 감소시킬 수 있는 패치 엔진에 관한 것이다.The present invention relates to a patch engine, and more particularly, a first storage for storing a basic cache of dynamic instruction traces and a second storage for storing traces other than the basic block. The present invention relates to a patch engine capable of dividing and storing negatively and supplying different voltages according to the storage by a DVFS controller to reduce overall power consumption.

패치 엔진, 추적 캐시, 명령어 캐시, DVFS 컨트롤러 Patch Engine, Trace Cache, Instruction Cache, DVFS Controller

Description

패치 엔진 {Patch Engine}Patch Engine {Patch Engine}

본 발명은 패치 엔진에 관한 것으로, 더욱 상세하게는 추적 캐시(Trace cache)를 동적 명령어 트레이스들(traces)의 베이직 블럭을 저장하는 제 1 저장부와 상기 베이직 블록 이외의 트레이스들을 저장하는 제 2 저장부로 구분하여 저장하고, DVFS 컨트롤러에 의해 상기 저장부에 따라 구동 주파수 또는 전압을 조절하여 전체 파워 소모를 감소시킬 수 있는 패치 엔진에 관한 것이다.The present invention relates to a patch engine, and more particularly, a first storage for storing a basic cache of dynamic instruction traces and a second storage for storing traces other than the basic block. The present invention relates to a patch engine capable of reducing the total power consumption by dividing and storing by division and adjusting a driving frequency or voltage according to the storage unit by a DVFS controller.

최근의 마이크로 프로세서 설계 경향에 따라 dispatch/issue window의 크기는 점점 커져가고 있으며, 더 많은 스펙(deeper speculation)을 위해 기능 유닛(functional unit)의 개수와 레지스터 파일(resister files)의 크기가 점점 커져가고 있다.With the recent trend in microprocessor design, the size of dispatch / issue windows is increasing, and the number of functional units and register files is increasing for deeper speculation. have.

그러나, 상기와 같은 하드웨어의 발전에도 불구하고 여전히 마이크로 프로세서의 처리능력(throughput)을 감소시키는 병목현상이 존재한다.However, despite the advances in hardware, there is still a bottleneck that reduces the throughput of the microprocessor.

종래의 명령어 캐시(Instruction cache)는 명령어들이 컴파일 된 순서에 의 하여 연속적으로 명령어들을 저장한다. 따라서 길고 불연속적인 명령어들은 패치 유닛에 의해서 프로세서에게 연속적으로 패치될 수 없으며, 이는 하드웨어의 발전과 무관하게 처리능력을 감소시키는 요소가 된다.Conventional instruction caches store instructions sequentially in the order in which they were compiled. Therefore, long and discontinuous instructions cannot be continually patched to the processor by a patch unit, which is a factor of reducing processing power regardless of hardware development.

이를 해결하기 위해 추적 캐시(trace cache)라는 새로운 캐시 구조가 제안되었다. 상기 추적 캐시는 명령의 패치 대역폭(fetch bandwidth)를 늘이기 위해 고안된 구조로 명령어들을 여러 개의 베이직 블럭과 동적인 명령어 트레이스들로 쪼개어 저장하게 된다. To solve this, a new cache structure called trace cache has been proposed. The trace cache is a structure designed to increase the fetch bandwidth of an instruction, and stores the instructions into several basic blocks and dynamic instruction traces.

그리고 상기와 같은 구조를 이용하여 패치 유닛이 한 번에 여러 개의 명령어 트레이스들을 프로세서에 전달하여 패치 대역폭을 늘일 수 있다.In addition, by using the above structure, the patch unit may transmit a plurality of instruction traces to the processor at a time to increase the patch bandwidth.

점차 기술이 발전해감에 따라 최근의 마이크로 프로세서는 빠르게 데이터를 처리하면서도 다양한 기능을 구현하도록 요구되지고 있으며, 상기와 같은 요구조건을 만족시키기 위해서 하나의 칩에 수많은 트랜지스터들이 집적되어 칩상 전력 밀도(on-chip power density)가 지수적으로 증가하는 원인이 되고 있다.As the technology advances, recent microprocessors are required to implement various functions while processing data rapidly, and in order to satisfy the above requirements, a large number of transistors are integrated on a chip to provide on-chip power density. This is causing the chip power density to increase exponentially.

특히, 마이크로 프로세서의 캐시는 칩 상에서 큰 면적을 차지하고 있기 때문에 다른 어떤 유닛보다 파워를 많이 소모하게 되며, 파워의 소모량이 증가함에 따라서 비이상적으로 유닛의 온도가 높아기제 되며, 이는 칩의 수명을 단축시키고 신뢰성을 떨어뜨리는 원인이 된다.In particular, because the microprocessor cache occupies a large area on the chip, it consumes more power than any other unit. As the power consumption increases, the temperature of the unit is abnormally increased, which shortens the life of the chip. And cause a decrease in reliability.

따라서, 캐시, 특히 추적 캐시의 성능을 유지하면서 파워 소모를 줄이기 위한 효율적인 방법이 필요하다.Therefore, there is a need for an efficient way to reduce power consumption while maintaining the performance of caches, especially tracking caches.

상기와 같은 문제점을 해결하기 위해 안출된 것으로써 본 발명의 목적은 추적 캐시에 저장되는 공간을 동적 명령어 트레이스들(traces)의 베이직 블럭을 저장하는 제 1 저장부와 상기 베이직 블록 이외의 트레이스들을 저장하는 제 2 저장부로 구분하여 저장하고, DVFS 컨트롤러에 의해 상기 저장부에 따라 구동 주파수 또는 전압을 조절하여 전체 파워 소모를 감소시킬 수 있는 패치 엔진을 제공하는 데 있다.In order to solve the above problems, an object of the present invention is to store a first block for storing a basic block of dynamic instruction traces and a trace other than the basic block. According to the present invention, there is provided a patch engine capable of dividing and storing a second storage unit and reducing a total power consumption by adjusting a driving frequency or a voltage according to the storage unit by a DVFS controller.

상기와 같은 목적을 달성하기 위해 본 발명에 따른 패치 엔진은 파워 소모가 많은 명령어 트레이스들을 저장하는 제 1 저장부와 파워 소모가 적은 명령어 트레이스들을 저장하는 제 2 저장부를 구비하는 추적 캐시와 추적 캐시에 저장된 명령어 트레이스를 마이크로 프로세서로 출력하는 경우 상기 제 1저장부 및 제 2저장부에 저장된 명령어 트레이스에 공급되는 전압을 제어하는 DVFS 컨트롤러를 포함하는 것을 특징으로 한다.In order to achieve the above object, the patch engine according to the present invention includes a tracking cache and a tracking cache including a first storage unit for storing power-intensive instruction traces and a second storage unit for storing low-power instruction traces. When outputting the stored instruction trace to the microprocessor, characterized in that it comprises a DVFS controller for controlling the voltage supplied to the instruction trace stored in the first storage unit and the second storage unit.

여기서, 상기 제 1 저장부는 분기 명령어들이 존재하지 않는 동적 명령어로 구성된 베이직 블럭이 저장되고, 제 2 저장부는 상기 베이직 블록 이외의 분기 명령에 대한 결과를 포함하는 명령어들로 구성된 트레이스 들이 저장되는 것을 특징으로 한다.Here, the first storage unit stores a basic block composed of dynamic instructions for which no branch instructions exist, and the second storage unit stores traces composed of instructions including results of branch instructions other than the basic block. It is done.

그리고, 상기 DVFS 컨트롤러는 상기 제 1 저장부에 저장된 트레이스를 마이크로 프로세서에 출력하는 경우 처리능력에 영향을 미치지 않도록 필요한 적정 전압을 공급하고, 상기 제 2 저장부에 저장된 트레이스를 마이크로 프로세서에 출력하는 경우 상기 제 1 저장부에 공급되는 전압보다 낮은 전압을 공급하여 파워 소모를 감소시키도록 제어하는 것을 특징으로 한다.And, when outputting the trace stored in the first storage unit to the microprocessor, the DVFS controller supplies a proper voltage so as not to affect processing capacity, and outputs the trace stored in the second storage unit to the microprocessor. It is characterized in that the control to reduce the power consumption by supplying a voltage lower than the voltage supplied to the first storage.

또한, 상기 DVFS 컨트롤러는 상기 제 2 저장부에 저장된 트레이스를 마이크로 프로세서에 출력하는 경우 동작에 필요한 최소 전압을 공급하는 것을 특징으로 한다.In addition, the DVFS controller is characterized in that for supplying the minimum voltage required for operation when outputting the trace stored in the second storage to the microprocessor.

상기에서 살펴본 바와 같이, DVFS 기술이 적용된 추적 캐시 기법을 사용함으로써, 명령어 수행을 위해 우선적으로 필요한 동적 명령어의 베이직 블록이 저장되는 제 1 저장부와 나머지 동적 명령어 트레이스들이 저장되는 제 2 저장부에 서로 다른 전압을 공급함으로써, 상기 제 1 저장부에는 처리능력(Throughput)에 지장을 주지 않도록 전압을 공급해주고, 상기 제 2 저장부에는 파워 소모를 감소시키기 위해 상기 제 1 저장부에 공급되는 전압보다 낮은 전압을 공급하여 마이크로 프로세서에 명령어를 출력하는 패치 엔진의 전체 파워 소모를 감소시킬 수 있는 탁월한 효과가 발생한다. As described above, by using the tracking cache technique with DVFS technology, the first storage unit for storing basic blocks of dynamic instructions that are primarily required for instruction execution and the second storage unit for storing remaining dynamic instruction traces By supplying a different voltage, the first storage unit is supplied with a voltage so as not to disturb the throughput, and the second storage unit is lower than the voltage supplied to the first storage unit to reduce power consumption. An excellent effect is to reduce the overall power consumption of the patch engine, which supplies voltage to output instructions to the microprocessor.

이하, 본 발명의 바람직한 실시예에 대하여 도면을 참조하여 상세하게 설명하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 바람직한 실시예에 따른 패치 엔진을 개략적으로 도시한 블럭도이다.1 is a block diagram schematically showing a patch engine according to a preferred embodiment of the present invention.

도 1을 참조하면, 패치 엔진은 추적 캐시(10), DVFS 컨트롤러(20), 명령어 캐시(30), Line-Fill 버퍼(40), 비교기(50), 명령어 래치(60), 패치 유닛(70)을 포함하여 구성될 수 있다.Referring to FIG. 1, the patch engine includes a trace cache 10, a DVFS controller 20, an instruction cache 30, a line-fill buffer 40, a comparator 50, an instruction latch 60, and a patch unit 70. It may be configured to include).

여기서, 상기 Line-Fill 버퍼(40)는 상기 추적 캐시(10)에 저장할 동적 트레이스(경로)들을 만들어 주는 역할을 담당하고, decode 또는 retire가 된 명령어들을 베이직 블럭과 동적 트레이스로 구분해서 트레이스들을 구성해 주는 역할을 담당한다.Here, the line-fill buffer 40 plays a role of creating dynamic traces (paths) to be stored in the tracking cache 10, and configures traces by dividing decoded or retire instructions into basic blocks and dynamic traces. It plays a role.

그리고, 상기 비교기(50)는 상기 추적 캐시(10)에 저장되어 있지 않은 명령은 명령어 캐시(30)로부터 가져다 사용하기 위해 선택적으로 디코딩하는 구성으로, 필요에 따라서 추적 캐시(10) 또는 명령어 캐시(30)로부터 명령어들을 프로세서에 공급하게 된다.In addition, the comparator 50 is configured to selectively decode commands not stored in the tracking cache 10 for use from the instruction cache 30, and if necessary, the tracking cache 10 or the instruction cache ( Instructions are supplied to the processor.

또한, 상기 명령어 래치(Instruction latch, 60)는 상기 비교기(50)를 통해 출력된 명령어를 일시 저장하는 역할을 담당하고, 패치 유닛(70)은 실기간으로상기 추적 캐시(10) 또는 명령어 캐시(30)에 저장된 명령어를 프로세서에 공급을 제어하는 역할을 담당한다.In addition, the instruction latch 60 serves to temporarily store the instruction output through the comparator 50, and the patch unit 70 performs the tracking cache 10 or the instruction cache (in real time). It is responsible for controlling the supply of instructions to the processor.

상기와 같이 구성되는 패치 엔진의 세부 구성 및 작용은 본 발명의 통상의 지식을 가진 당업자에게 자명할 뿐만 아니라, 발명의 핵심에서 벗어나므로 구체적인 설명은 생략하고, 본 발명의 핵심 구성에 해당하는 추적 캐시와 DVFS 컨트롤러에 대해서만 상세하게 설명하기로 한다. The detailed configuration and operation of the patch engine configured as described above are obvious to those skilled in the art having ordinary knowledge of the present invention, and the detailed description thereof is omitted since it departs from the core of the present invention, and the tracking cache corresponding to the core configuration of the present invention. Only the DVFS controller will be described in detail.

도 2는 본 발명의 바람직한 실시예에 따른 패치 엔진의 전력 소모 감소를 위한 모식도이다.2 is a schematic diagram for reducing power consumption of a patch engine according to an exemplary embodiment of the present invention.

도 2를 참조하면, 본 발명은 상기 추적 캐시(10)를 전력 소모 감소가 불가능한 부분(빠른 처리가 필요한 부분)과 전력 소모 감소가 가능한 부분(빠른 처리가 필요없는 부분)을 분리 구성하고, 상기 DVFS 컨트롤로(20)가 상기 분리 구성된 추적 캐시에 따라 서로 다른 전압을 공급하도록 제어하여 파워 소모를 감소시키는 것을 특징으로 한다.Referring to FIG. 2, the present invention divides the tracking cache 10 into a portion in which power consumption cannot be reduced (a portion that requires fast processing) and a portion in which power consumption can be reduced (a portion that does not require fast processing). The DVFS control channel 20 is controlled to supply different voltages according to the separately configured tracking cache to reduce power consumption.

여기서, 상기 DVFS 컨트롤러에서 적용되는 DVFS 기술은 프로세서(CPU)의 전력소모가 주파수에 비례하는 특징을 이용하여 프로세서의 동작 주파수를 줄임으로써 그에 비례하여 구동전압을 감소시키는 기술로서 시스템의 공급 전압과 클럭 주파수를 변경하여 마이크로 프로세서 및 그 주변 회로의 전력소모를 조절하는 기술을 말한다.Here, the DVFS technology applied to the DVFS controller reduces the operating voltage of the processor by using a feature in which the power consumption of the processor is proportional to the frequency, thereby reducing the driving voltage in proportion to the supply voltage and the clock of the system. A technology that modulates the power consumption of a microprocessor and its peripheral circuitry by changing its frequency.

보다 구체적으로, 상기 추적 캐시(10)는 명령어 수행을 위해 우선적으로 필요한 분기 명령어 들이 존재하지 않은 동적 명령어들로 구성된 베이직 블럭이 저장되는 제 1 저장부(110)와 상기 베이직 블럭 이외의 분기 명령어들에 대한 결과를 포함하는 명령어들로 구성된 나머지 동적 명령어 트레이스들이 저장되는 제 2 저장부(120)로 분리 구성된다.More specifically, the trace cache 10 may include a first storage unit 110 in which a basic block composed of dynamic instructions in which branch instructions necessary for executing instructions are not present and branch instructions other than the basic block are stored. A second storage unit 120 is configured to store the remaining dynamic instruction traces consisting of instructions including a result for.

여기서, 상기 제 1 저장부(110)에 저장된 베이직 블럭들은 처리능력(Throughput)에 영향을 미치는 요소이므로 처리능력을 향상시키기 위해 가능한 빨리 마이크로 프로세서의 프론트 엔드(front end)에 동적 명령어 트레이스들을 공급해 줄 필요가 있으나, 상기 제 2 저장부(120)에 저장된 트레이스들은 처리능력에 영향을 미치는 요소가 아니므로 마이크로 프로세서의 프론트 엔드(front end)에 빠르게 동적 명령어 트레이스들을 공급해 줄 필요가 없다.Here, the basic blocks stored in the first storage unit 110 are factors that affect throughput, so that dynamic instruction traces can be supplied to the front end of the microprocessor as soon as possible in order to improve throughput. Although necessary, the traces stored in the second storage unit 120 do not need to supply dynamic instruction traces to the front end of the microprocessor because the traces are not a factor affecting the processing capability.

즉, 제 1 저장부(110)에 저장된 베이직 블럭들은 성능을 높이기 위해 특정 전압에서 최대 크기의 주파수를 사용하여야 하므로 파워 소모 감소가 불가능한 트레이스들을 저장한 것이고, 제 2 저장부(120)에 저장된 트레이스들은 성능에 영향을 미치지 않는 트레이스들이므로 파워 소모 감소가 가능한 트레이스들을 저장한 것이다.That is, the basic blocks stored in the first storage unit 110 store traces that cannot be reduced in power consumption because they must use a maximum frequency at a specific voltage in order to increase performance, and traces stored in the second storage unit 120. These are traces that can reduce power consumption because they are traces that do not affect performance.

따라서, 상기 DVFS 컨트롤러(20)는 상기 추적 캐시의 트레이스 들을 마이크로 프로세서에 공급해 줄 때 상기 제 1 저장부의 베이직 블럭은 처리능력의 성능 저하에 영향이 없도록 적정 전압(V1)을 공급해주고, 제 2 저장부의 트레이스는 파워 소모를 감소시키기 위해 상기 제 1 저장부의 트레이스 처리에 공급되는 전압보다 낮은 전압(V2)을 공급하여 전체 파워 소모를 감소시킬 수 있다. 즉, 제 2 저장부의 트레이스는 동작이 가능한 최소 전압만을 공급하여 파워 소모를 감소시킬 수 있다. 여기서, 상기 제 1 저장부 및 제 2 저장부에 공급되는 전압은 추적 캐시 용량, 프로세서의 설계에 따라 달라질 수 있다.Therefore, when the DVFS controller 20 supplies traces of the tracking cache to the microprocessor, the basic block of the first storage unit supplies an appropriate voltage V 1 so that the performance of the processing capacity is not affected. The trace of the storage unit may reduce the total power consumption by supplying a voltage V 2 lower than the voltage supplied to the trace processing of the first storage unit to reduce power consumption. That is, the trace of the second storage unit can reduce power consumption by supplying only the minimum voltage that can be operated. The voltage supplied to the first storage unit and the second storage unit may vary depending on the tracking cache capacity and the design of the processor.

이상에서 설명한 본 발명의 상세한 설명에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 본 발명의 보호범위는 상기 실시예에 한정되는 것이 아니며, 해당 기술분야의 통상의 지식을 갖는 자라면 본 발명의 사상 및 기술영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although the detailed description of the present invention described above has been described with reference to the preferred embodiment of the present invention, the protection scope of the present invention is not limited to the above embodiment, and those skilled in the art will appreciate It will be understood that various modifications and changes can be made in the present invention without departing from the spirit and scope of the invention.

도 1은 본 발명의 바람직한 실시예에 따른 패치 엔진을 개략적으로 도시한 블럭도이다.1 is a block diagram schematically showing a patch engine according to a preferred embodiment of the present invention.

도 2는 본 발명의 바람직한 실시예에 따른 패치 엔진의 전력 소모 감소를 위한 모식도이다.2 is a schematic diagram for reducing power consumption of a patch engine according to an exemplary embodiment of the present invention.

*도면의 주요 부분에 대한 부호의 설명** Description of the symbols for the main parts of the drawings *

10 : 추적 캐시 20 : DVFS 컨트롤러10: trace cache 20: DVFS controller

30 : 명령어 캐시 40 : Line-Fill 버퍼30: instruction cache 40: line-fill buffer

50 : 비교기 60 : 명령어 래치50: comparator 60: instruction latch

70 : 패치 유닛70: patch unit

Claims (4)

분기 명령어들이 존재하지 않는 동적 명령어 트레이스들로 구성된 베이직 블럭을 저장하는 제 1 저장부와 상기 베이직 블록 이외의 분기 명령어들에 대한 결과를 포함하는 명령어들로 구성된 나머지 동적 명령어 트레이스들을 저장하는 제 2 저장부를 구비하는 추적 캐시와;A first storage for storing a basic block of dynamic instruction traces for which there are no branch instructions, and a second storage for storing the remaining dynamic instruction traces of instructions containing results for branch instructions other than the basic block A tracking cache having a portion; 상기 제 1 저장부에 저장된 트레이스를 마이크로 프로세서에 출력하는 경우 처리능력에 영향을 미치지 않도록 필요한 적정 전압(v1)을 공급하고, 상기 제 2 저장부에 저장된 트레이스를 마이크로 프로세서에 출력하는 경우 상기 제 1 저장부에 공급되는 전압보다 낮은 전압을 공급하여 파워 소모를 감소시키도록 제어하는 DVFS 컨트롤러를 포함하는 것을 특징으로 하는 패치 엔진.When outputting the trace stored in the first storage unit to the microprocessor, a proper voltage (v 1 ) is provided so as not to affect the processing capacity, and when outputting the trace stored in the second storage unit to the microprocessor 1 A patch engine comprising a DVFS controller for controlling to reduce power consumption by supplying a voltage lower than the voltage supplied to the storage unit. 삭제delete 삭제delete 삭제delete
KR1020080105245A 2008-10-27 2008-10-27 Patch Engine KR100961632B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080105245A KR100961632B1 (en) 2008-10-27 2008-10-27 Patch Engine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080105245A KR100961632B1 (en) 2008-10-27 2008-10-27 Patch Engine

Publications (2)

Publication Number Publication Date
KR20100046415A KR20100046415A (en) 2010-05-07
KR100961632B1 true KR100961632B1 (en) 2010-06-09

Family

ID=42273679

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080105245A KR100961632B1 (en) 2008-10-27 2008-10-27 Patch Engine

Country Status (1)

Country Link
KR (1) KR100961632B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2489243B (en) * 2011-03-21 2013-02-27 Univ United Arab Emirates Trace cache with pointers to common blocks and high resource thread filtering
US20180024610A1 (en) * 2016-07-22 2018-01-25 Futurewei Technologies, Inc. Apparatus and method for setting a clock speed/voltage of cache memory based on memory request information

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005322266A (en) * 2005-06-09 2005-11-17 Hitachi Ltd Microprocessor of low power consumption and microprocessor system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005322266A (en) * 2005-06-09 2005-11-17 Hitachi Ltd Microprocessor of low power consumption and microprocessor system

Also Published As

Publication number Publication date
KR20100046415A (en) 2010-05-07

Similar Documents

Publication Publication Date Title
US10613620B2 (en) Providing per core voltage and frequency control
US10802567B2 (en) Performing local power gating in a processor
US9600283B2 (en) Single instruction for specifying a subset of registers to save prior to entering low-power mode, and for specifying a pointer to a function executed after exiting low-power mode
US7962770B2 (en) Dynamic processor reconfiguration for low power without reducing performance based on workload execution characteristics
US7107471B2 (en) Method and apparatus for saving power in pipelined processors
US20080313482A1 (en) Power Partitioning Memory Banks
US20130179703A1 (en) Increasing Power Efficiency Of Turbo Mode Operation In A Processor
US20150160715A1 (en) Power gating functional units of a processor
KR20070061086A (en) High energy efficiency processor using dynamic voltage scaling
US8806181B1 (en) Dynamic pipeline reconfiguration including changing a number of stages
WO2013147850A1 (en) Controlling power gate circuitry based on dynamic capacitance of a circuit
Kondo et al. Design and evaluation of fine-grained power-gating for embedded microprocessors
KR100961632B1 (en) Patch Engine
US20180039322A1 (en) Providing An Interface For Demotion Control Information In A Processor
US20220100563A1 (en) Dynamically configurable overprovisioned microprocessor
US7263621B2 (en) System for reducing power consumption in a microprocessor having multiple instruction decoders that are coupled to selectors receiving their own output as feedback
KR101210274B1 (en) Processor capable of power consumption scaling
Jatala et al. GREENER: a tool for improving energy efficiency of register files
US11709522B1 (en) Power and temperature driven clock throttling
JP5247037B2 (en) Semiconductor integrated circuit and control method thereof
Ayala et al. A hardware mechanism to reduce the energy consumption of the register file of in-order architectures

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130405

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140304

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee