KR19980063493A - 프로세서 및 그의 성능을 최적화하는 방법 - Google Patents
프로세서 및 그의 성능을 최적화하는 방법 Download PDFInfo
- Publication number
- KR19980063493A KR19980063493A KR1019970049404A KR19970049404A KR19980063493A KR 19980063493 A KR19980063493 A KR 19980063493A KR 1019970049404 A KR1019970049404 A KR 1019970049404A KR 19970049404 A KR19970049404 A KR 19970049404A KR 19980063493 A KR19980063493 A KR 19980063493A
- Authority
- KR
- South Korea
- Prior art keywords
- processor
- temperature
- state
- clock
- performance
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/08—Clock generators with changeable or programmable clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/20—Cooling means
- G06F1/206—Cooling means comprising thermal management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3296—Power saving characterised by the action undertaken by lowering the supply or operating voltage
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy 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)
- Human Computer Interaction (AREA)
- Power Sources (AREA)
- Microcomputers (AREA)
Abstract
전압, 클럭킹 및 프로세서 또는 그의 시스템에 의해 수행되는 동작을 포함하는 변수 계층을 필요에 따라 이용함으로써 성능을 최적화하는 프로세서가 개시된다. 본 발명은 프로세서 실행 유닛이 동작중인 경우 프로세서가 가속 전압 및 클럭의 최적 성능 상태에서 상주하도록 각종 상태를 정의함으로써 성능의 최적화를 성취한다. 이 상태는 온도 센서 및 성능 제어부에 의해 제공되는 정보에 기초하여 로직 네트워크에 의해 선택된다. 로직 네트워크는 UP-DOWN 카운터로서 제시될 수 있다. 조건이 보장되는 때 카운터는 래더(ladder) 상태로 위 또는 아래로 진행될 수 있다.
Description
현재에는, 마이크로프로세서의 동작중 마이크로프로세서의 전력 및 온도를 제어하기 위한 방법이 거의 없는데, 이는 이동형 및 데스크탑형 퍼스널 컴퓨터의 경우에 그러하다. 통상적으로 마이크로프로세서 시스템은 최악의 전력 소비 상태에서 계속적으로 사용될 것이라는 가정하에 설계된다. 따라서, 제품의 제조 단계로의 돌입하기 전에, 이러한 설계 조건이 충족될 수 있도록 광범위한 시스템 검증이 수행된다.
현재의 여러 마이크로프로세서는 마이크로프로세서 시스템이 비지(busy) 상태가 아닌 경우에 활동화될 수 있는 전력 절감 상태(reduced power states)로 특징지워진다. X86급 마이크로프로세서에서, 이러한 특징은 흔히 시스템 관리 모드(System Management mode; SMM)로 불리운다. 전력 소비는
· 마이크로프로세서내의 논리 동작을 정지시키고,
· 마이크로프로세서에 대한 클럭을 중지시키며,
· 마이크로프로세서에 대한 전력을 턴오프(turn off)시킴으로써,
점진적으로 낮은 레벨로 감소될 수 있다.
이들은 배터리 수명이 제한되어 있는 이동형 퍼스널 컴퓨터에 특히 유용한 특성이다. 그러나, 상기한 모든 프로시쥬어는 마이크로프로세서에 의한 생산적 작업을 완전히 중지시키는 대응책이다.
고장 안전(fail-safe) 때문에, 어떤 시스템에는 열적 오버런(thermal overrun)의 경우에 클럭을 낮추기 위해 외부 로직을 갖는 전력 센서가 설치된다. 이러한 고장-안전 모드가 활동화되는 경우, 그에 따라 성능 저하가 매우 심각하게 되는데, 즉 10배까지도 될 수 있다.
몇가지 특정된 동작 특성으로 마이크로프로세서를 동작시키기 위한 다른 마이크로프로세서 및 그 혁신책이 추구된다. 예를 들면, 엘머(Elmer)에 의한 미국 특허 제 5,488,288 호는 온도 및 프로세스 변화에 응답하며, 내부 동작 전압의 생성 및 그의 제어를 통해 스위칭 속도 변동을 보상하는 전압 레귤레이터(voltage regulator)의 사용을 개시한다.
턴볼(Turnball)에 의한 미국 특허 제 5,498,971 호는 온도의 함수로서 가변하는 파라미터를 갖는 온칩 회로 소자의 사용 및 다이 온도를 측정하고 과도한 온도 조건 동안 회로의 클럭 주파수를 낮추는 오프칩 회로의 사용을 개시한다. 이것은 온도에 따라 가변하는 회로 소자에 의해 각각 생성되는 2개의 사전설정된 전압을 다이의 출력 핀에 공급하고, 전압차를 측정하며, 클럭 주파수의 제어에 사용되는 다이 온도를 나타내는 신호를 생성함으로써 행해진다.
슈츠 등(Schutz et al)에 의한 미국 특허 제 5,440,520 호는 전압 맵(voltage map)이 온도 감지 유닛에 연결되는 다른 해결책이다. 슈츠는 높은 칩 온도의 주기 동안 전압을 증가시키도록 사전설정된 전압과 온도의 관계를 이용하는데, 그렇게 하지 않으면 마이크로프로세서 칩의 성능이 저하될 것이다. 슈츠는 특징 한계내에 그 증가를 제한하기 위해 한 세트의 사전설정된 장치 특성을 또한 이용한다.
이들 후자의 모든 해결책의 촛점은 성능을 안정화하거나 열적 오버런을 방지하도록 전압 및 온도를 사용하는 것이다. 성능은 보통 2개의 파라미터중 하나를 다른 것에 대해 측정함으로써 측정된다. 다른 동작 특성은 무시된다.
이들 해결책은 이용 기회가 없다. 마이크로프로세서는 많은 시간 동안 그의 최대 전력을 소비하지 않으며 최대 안전 온도에 거의 근접하지 않는다. 다양한 온도 범위에 걸쳐 성능을 안정화하고자 하는 시스템조차도 대부분의 시간 동안 마이크로프로세서 및 그의 시스템이 더 많은 동작을 지원할 수도 있다는 사실을 완전히 이용하는 것은 아니다.
본 발명은 온도 및 전압을 필요에 따라 이용한다. 본 발명은 마이크로프로세서 시스템이 최악의 전력 소비 상태에서는 거의 동작하지 않는다는 사실을 이용한다. 본 발명은 온도 및 전압 이외의 변수를 이용하는 식으로 다양한 방법에 의해 시스템을 모니터한다. 시스템 성능을 최적화하는데 취해지는 임의의 조치는 전압 또는 온도에 영향을 미치는 조치를 요구되는 결과가 생성될 때까지 대기하는 것이 아니라 수행되거나 수행되지 않는 활동(activities)들의 함수로 된다.
따라서 본 발명의 목적은 마이크프로프로세서 시스템의 성능을 극대화하기 위해 각종 활동 상태 및 변수를 이용하는 마이크로프로세서의 성능을 관리하는 방법 및 시스템을 생성하는 것이다.
본 발명의 다른 목적은 항상 마이크로프로세서에 대해 최악의 조건에 있지 않은 전압과 온도의 전형적인 동작 조건과 최적의 설계 조건 사이의 차를 필요에 따라 이용하는 전략 및 메카니즘을 제공하는 것이다.
본 발명의 다른 목적은 마이크로프로세서 또는 마이크로프로세서들이 그의 최적 성능 영역내에서 가능한 한 빈번하게 동작하도록 유지하는 것이다.
이들 목적은 본 발명에 따라 마이크로프로세서의 온도를 계속해서 모니터하고, 다른 변수를 도입하여 마이크로프로세서가 그의 순간 최대 허용가능한 성능에서 동작하도록 유지함으로써 충족된다.
이들 변수는 공급 전압, 클럭킹 및 기능을 포함한다. 프로세서는 단족으로 이들 변수의 최상의 조합을 결정하여 실시간 환경의 제한요건내에서 실시간으로 실행되는 기능에 따라 그의 성능을 최대치로 조정할 수 있다. 온도가 어떤 한계내에 있는 것으로 알려지는 경우, 프로세서는, 예를 들면 정상 전압 설계의 한계 밖에서 동작될 수 있다.
가능한 한 많은 시간 동안 시스템의 최대 성능 범위에서 상주하도록 하기 위해, 다수의 동작 상태가 정의된다. 각각의 상태에서 프로세서 및 그의 시스템은 시스템 및 프로세서의 환경 및 실행 상태를 실시간으로 모니터한다. 상태들간의 이동은 모니터링을 위해 선택된 파라미터에 기초한다.
프로세서의 성능 제어 모듈은 상태들과 그에 따른 조치들을 제어할 것이고 온칩 온도 감지 장치로부터의 연속적인 입력을 가질 것이다. n 클럭 경계마다 프로세서는 어떤 조치를 취할 것인가 그리고 프로세서를 어떤 상태에 있게 해야 하는가를 결정하기 위해 현재의 동작 조건을 평가할 것이다.
도 1은 마이크로프로세서가 동작될 수 있는 영역을 도시하는 온도 및 전압 축에 따른 모노그래프
도 2는 본 발명의 스위칭 제어의 흐름 및 그 상태를 예시하는 흐름도
도 3은 본 발명의 성능 제어부 및 자동 제어부와 그 관련된 입력 및 출력의 블록도
도 4는 본 발명의 자동 제어 로직의 간단한 논리 블록을 사용하는 도면
도면의 주요 부분에 대한 부호의 설명
30 : 클럭킹 제어부 32 : 성능 제어부
34 : 프로세서 유닛 36 : 자동 제어부
본 발명은 예로서 도시되어 있고 첨부되는 도면으로만 제한되는 것은 아니며 도면에서 유사한 참조 부호는 유사한 요소를 나타낸다.
프로세서에 의해 임의의 순간에서 동작하는 기능은 성능 최대화에서 고려되는 중요한 파라미터이다. 취해지는 조치는 실행중인 프로그램에 의해 부분적으로 결정될 수도 있다. 이 결과를 이용하기 위해, 프로세서는 실행중인 인스트럭션 유형의 진행 상태를 유지할 것이다. 이들 인스트럭션 유형은
· 버스 트랜잭션
· 브랜치 기능
· 레지스터 전송
· 산술 동작
으로서 폭넓게 특징지워질 수 있다.
이들 기능의 각각은 전용 하드웨어에 연관된다. 수퍼스칼라 마이크로프로세서에서, 이러한 하드웨어는 통상 개별적인 유닛의 형태일 수 있으며, 이러한 유닛은 다수의 복사본이 있을 수도 있다. 예를 들면, 2개의 산술 유닛이 있을 수도 있다. 어떤 경우, 유닛들은 'rotate', 'and', 'or'와 같은 보다 기본적인 유닛으로 더 분해될 수도 있다.
수퍼스칼라 마이크로프로세서에서, 임의의 시점에서 둘이상의 유형의 동작이 실행중에 있을 수 있다. 최적의 성능을 성취하기 위해서는, 원하는 처리 능력을 성취할 뿐만 아니라 프로세서가 그의 성능 한계에 근접하여 동작하게 그러한 모든 활동을 모니터하고 동작들을 선택적으로 활동화하는 것이 가장 좋을 수 있다.
도 1은 마이프로프로세서가 동작될 수 있는 영역들을 도시하는 온도 및 전압 축에 따른 모노그래프를 도시한다. 좌측 경계는 회로가 만족스럽게 동작할 최저 전압에 의해 결정된다. 우측 경계는 안전한 기술적 스트레스 레벨에 의해 결정된다. 주목할 것은 이러한 최우측의 경계가 온도 및 전압의 함수라는 점이다.
우측 상단의 점은 사양서의 전형적인 최악 경우의 동작점을 도시한다. 이 점 및 유사한 온도에서의 저전압 동작 한계에 의해서 결정되는 직사각형은 특정의 동작 조건을 정의한다. 주목할 것은 최악 경우의 온도에 근접하지 않는다면, 기술적으로 높은 동작 전압이 안전하게 지원될 수 있다(이는 고성능을 나타냄)는 점이다. 실제로, 통상의 동작 조건하에서는, 최악 경우의 온도에 거의 근접하지 않는다. 빗금이 칠해진 직사각형은 실시간 온도에서 자주 있을 수 있는 보다 최적의 성능 영역을 도시한다.
본 발명의 목적은 빗금이 칠해진 직사각형으로 도시된 바와 같은 이러한 보다 최적의 성능 영역내에서 가능한 한 빈번하게 마이크로프로세서가 동작하도록 하는 것이다. 이러한 목적을 지원하는데 있어, 전력 소비를 감소시킴에 따라 동작 온도를 감소시키는 다수의 다른 동작 상태가 정의된다.
이제 도 2를 참조하면, 본 발명에 대한 스위칭 제어 흐름도가 도시되어 있다. 보다 최적의 성능 영역은 (4)로 표시된 박스이다. 이는 가속 전압(AV) 및 가속 클럭(AC)으로 특징지워지며 임의의 마이크로프로세서 기능을 전체적으로 이용하는 경우에는 어떠한 제약요건에 의해서도 특징지워지지 않는다.
다른 동작 상태는 다른 박스로 표시된다. 이들 박스는 래더(ladder) 형태로 배열된다. 양방향 화살표는 마이크로프로세서가 래더의 인접 동작 상태들간에 스위칭하거나, 또는 특정 조건하에서는 래더의 상부 및 하부 사이에서 스위칭할 수 있음을 표시한다. 좌측 상부의 코너에 나타낸 키워드는 각각의 박스내의 동작 조건을 정의한다.
정상 전압(Normal Voltage; NV)
정상 전압은 종래 마이크로프로세서의 설계 기준으로 되는 통상의 설계 전압을 의미한다.
감소 클럭(Reduced Clock; RC)
감소 클럭은 정상 클럭 또는 가속 클럭보다 훨씬 낮은 클럭 주파수를 의미한다.
정상 클럭(Normal Clock; NC)
정상 클럭은 종래 마이크로프로세서의 설계 기준으로 되는 통상의 클럭 주파수를 의미한다.
가속 전압(Accelerated Voltage; AV)
가속 전압은 온조 조건이 충족되는 경우에 적절히 허용된 높은 동작 전압을 의미한다.
가속 클럭(Accelerated Clock; AC)
가속 클럭은 가속 전압이 인가되고 온도 조건이 충족되는 경우에 허용가능한 높은 클럭 주파수를 의미한다.
사용 제어(Utilization Control; UC)
사용 제어는 모든 마이크로프로세서 내부 기능의 다른 전체적 사용에 대해 마이크로프로세서가 어떤 제약요건들을 부여한다는 것을 의미한다. 이것은 클럭 주파수의 변화를 필요로 하지 않는 정교한 슬로우 다운 모드(slow down mode)이다.
점선으로 표시된 박스는 일시적인 상태를 나타낸다. 이들이 존재하는 이유는 마이크로프로세서가 가속 전압으로 먼저 스위칭하지 않고서 가속 클럭으로 즉시 스위칭할 수는 없기 때문이다. 역으로 정상 전압으로 다시 스위칭하기 전에, 마이크로프로세서는 먼저 정상 클럭으로 다시 스위칭해야 한다.
이제 위로부터 시작되는 이들 박스의 각각에 대해 고려한다.
상태 #1 NV/RC
마이크로프로세서는 No-Op 인스트럭션의 스트링을 검출할 때마다 이러한 매우 낮은 전력 상태로 스위칭한다. 이 상태는 전력을 감소시키고 온도를 억제한다. 그결과의 낮아진 정적 온도는 마이크로프로세서가 얼마 후의 돌연한 활동들에 직면하는 경우 바람직할 것이다.
상태 #2 NV/NC
마이크로프로세서가 버스만의 활동만을 검출할 때마다 또한 실시간의 온도가 Topt 보다 낮거나 상태 #1과 상태 #4 간에서 천이하는 경우에 마이크로프로세서는 이 상태에 상주한다. Topt는 높은 전압 및 높은 주파수 동작이 가능하되 기술적으로 저하되지 않은 것으로 판정되는 최악 경우의 온도보다 낮은 온도이다. 전형적으로 이 점은 기술적 스트레스 한계의 얼마간의 허용가능한 공차내에서 도 1에 도시된 보다 최적의 성능 영역(500)의 최고온에서 선택된다. Topt는 도 1에서 (501)로서 도시되어 있다.
상태 #3 AV/NC
전술한 바와 같이, 이 상태는 일시적인 상태이다.
상태 #4 AV/AC
이것은 이미 기술된 보다 최적의 성능 영역이다. 이 상태/영역은 높은 생산적 활동 주기 동안에 사용된다. 온도가 Topt 보다 낮은 온도 동안에만 마이크로프로세서는 상태 #4에서 유지될 수 있다. Topt의 정의에 대해서는 상태 #2의 설명을 참조하기 바란다.
상태 #5 AV/AC/UC
상태 #5는 상태 #4와 다소 유사하다. 마이크로프로세서 센서가 반도체 기판 온도가 Topt를 초과하였음을 검출하는 경우 상태 #5가 트리거된다. 마이크로프로세서는 가속 전압 및 가속 클럭에서 유지되나, 각종 내부 마이크로프로세서 기능의 부분적 사용을 기민하게 제어함으로써 전력 소비가 제한된다. 이러한 개념은 이후에 보다 상세하게 기술될 것이다.
상태 #6 AV/NC/UC
이것은 다른 일시적인 상태이다. 마이크로프로세서 센서가 반도체 기판 온도가 Tswitch를 초과하였음을 검출하는 경우 상태 #6로부터 상태 #7로의 천이가 트리거된다. Tswitch는 Topt보다 약간 높은 온도이다. 온도 Tswitch를 초과한다는 것은 사용 제어의 적용이 더 이상의 온도 상승을 저지하는데는 충분하지 않다는 것을 나타낸다. 이 때에는 보다 강력한 제어가 적용되어야 한다. Tswitch는 도 1에서 (502)로 도시되어 있으며, 전형적으로 보다 최적의 성능 영역(500)에 대해 설정된 기술적 스트레스 한계에 보다 근접한다. 이것은 더 이상의 온도 상승을 저지하기 위해 취해지는 조치가 프로세서를 기술적 스트레스 한계를 초과하지 않도록 안전하게 유지시킬 점에 있다.
상태 #7
상태 #7에서 마이크로프로세서는 각종 내부 마이크로프로세서 기능의 부분적 사용을 계속 제어하면서 정상 클럭을 정상 전압으로 되돌린다. 상태 #7은 최악 경우의 설계 한계내에 있어야 한다. 도 1의 영역(400)을 참조하라. 이 영역(400)은 전형적인 성능 영역이므로, 마이크로프로세서는 이 상태를 영구히 유지할 수도 있다. 그러나, 본 발명에 따르면 대부분 경우 마이크로프로세서는 상태 #7로 돌입한 후에 상태 #5 또는 상태 #4로 복귀할 것이다.
주목해야 할 것은 No-Ops의 스트링이 검출되는 경우, 마이크로프로세서가 상태 #7로부터 상태 #1로 직접 진행할 수 있음에 있다. 그러나, 온도가 최초로 Topt 아래로 떨어질 때까지는 마이크로프로세서가 그로부터 상태 #2로 진행하지 않을 수도 있다.
전술한 바와 같이 상태 #4 및 #5간의 스위칭은 특정한 사용 제어를 수반한다. 정상 조건 및 정상 프로그래밍 하에서 마이크로프로세서는 보통 상태 #4에 있을 것으로 예상된다. 그러나, 작은 활동 피크에 의해 순간적으로 상태 #5가 될 수 있다. 상태 #5는 클럭 주파수를 간단하고도 개괄적으로 낮추는 것보다 정교하고 효율적이다. 상태 #5는 마이크로프로세서 기능중 몇개가 얼마나 빈번하게 사용할 것인가를 제한함으로써 활동 피크 레벨의 로드 레벨링(load leveling)을 시도한다. 명확하게 고전력 기능, 특히 완만한 성능을 실행시킬 가능성이 없는 기능부터 먼저 줄어들 것이다. 도 3 및 도 4는 이러한 로드 레벨링을 수행하기 위한 상호작용의 경로를 도시한다.
도 3은 프로세서 및 그의 시스템의 기능을 관리하는데 사용되는 성능 제어 회로의 블록도이다. 성능 제어 블록(32)은 자동 제어부(36)에 동작 정보를 제공하고 자동 제어부(36)로부터 사용 제어 정보를 수신하여 마이크로프로세서의 각종 유닛의 부분적인 사용을 관리한다. 예를 들면, 이는 통상 도 3의 블록(34)으로서 도시된 산술 유닛, 부동점 유닛 및 기타 다른 기본적인 다른 유닛에 접속될 수 있다.
또한 제어부(32)는 프로세서 버스상의 버스 모니터(38)를 통해 버스 활동을 검출하고 이 정보를 자동 제어 블록(36)으로 전송한다. 성능 제어부는 또한 클럭킹 제어 회로(30)로부터 정보를 입력하고 수신한다. 이들 입력은 사용 비율을 발생하고 자동 제어 블록(36)에 시스템 클럭 및 초기화 정보를 제공하는데 또한 사용된다. 통상적으로, 프로세서 유닛(34)의 제어는 프로세서의 아키텍처 및 고려중인 특정 프로세서의 성능에 크게 의존한다. 예를 들면, 구조적인 고려사항으로서 서로 다른 유닛(34)의 제어를 위해 상이한 사용 비율을 지시할 수 있는데, 그 이유는 성능 또는 의존도의 관점에서는 하나의 유닛이 다른 유닛보다 중요할 수 있기 때문이다. 유닛 또는 유닛들상에서의 클럭킹은 중요도 및 사용도의 매트릭스에 기초하여 성능 유닛에 의해 수정될 수 있다.
자동 제어 블록을 형성하는 네트워크는 도 4에 보다 상세하게 도시되어 있다. 이 자동 제어 블록은 공급 전압 및 클럭 주파수를 제어한다. 전압 레귤레이터의 기능은 고전력 소비를 나타내므로, 전형적으로 이러한 기능은 마이크로프로세서 칩과는 물리적으로 분리되어 있다. 도 4에서 전압 조정 기능은 점선의 우측에 도시되어 있으며 정상 전압(NV)(50)과 가속 전압(AV)(52)을 나타낸다. 바람직한 실시예에서 도 4에 도시된 바와 같이, 자동 제어 블록의 다른 모든 부분은 마이크로프로세서 칩에 상주한다.
UP-DOWN 카운터는 2개의 전압, NV 및 AV를 직접 스위칭하는 오프칩 전압 레귤레이터(50 및 52)를 직접 제어한다. 자동 제어 블록은 대응하는 클럭 주파수 천이 이전에 전압 레귤레이터가 전압들간의 천이 상승을 완료하기에 충분한 시간이 허용되도록 프로그램된다.
자동 제어 블록은 클럭 주파수를 또한 제어하는데, 클럭 주파수를 RC, NC 및 AC간에서 제어한다. 다시 한번 자동 제어 블록은 대응하는 공급 전압 천이 이전에 클럭 생성기가 이들 천이 하강을 완료하기에 충분한 시간이 허용되도록 프로그램된다.
실질적인 제어는 초기화를 위한 리세트 입력(라인(51))을 갖는 UP-DOWN 카운터로서 제시될 수 있다. 조건이 보장되는 때 카운터는 래더(ladder) 상태로 위 또는 아래로 진행될 수 있다. UP-DOWN 카운터를 진행시키는데 필요한 조건은 간단한 논리 블록으로 디코딩된다. UP-DOWN 카운터의 진행은 클럭 사이클 경계상에서만 이루어지고, 다수의 No-Op 사이클에 걸칠 수도 있다. 시스템 클럭 라인(53)은 이러한 동기화를 제공한다.
실질적인 실행시에 이러한 간단한 논리 블록으로의 입력은 다음과 같은 성능 제어 블록으로부터의 정보를 포함한다. 즉,
* No-Op 인스트럭션의 스트링이 검출되었는가?(도 4의 라인(56))
* 인스트럭션 버스 오운리(bus only)가 있는가?(도 4의 라인(54))
자동 제어 블록은 총체적으로 (58)로서 도시된 마이크로프로세서 온칩 열 센서로부터 또한 입력을 수신한다. 온도 감지 다이오드는 이러한 목적을 위해 사용될 수 있다. 인버터(66)를 각각 갖는 블록(60, 62 및 64)은 TTopt(60), TTswitch(62) 및 TTmax(64) 상태가 되자 마자 제각기 인에이블된다. Tmax는 프로세서를 동작시키도록 지정된 최대 온도이다.
성능 제어기(32)로부터의 No-Op 신호가 인버터를 또한 가진다는 것에 주목하면, 게이트(68)는 상태(1)를 정의하고, 게이트(70)는 상태(2)를 정의하며, 상태(4) 및 천이 상태(3)는 게이트(72)에 의해 정의되고, 게이트(74)는 상태(5)를 정의하며, 게이트(76)는 상태(7) 및 천이 상태(6)를 정의함을 알 수 있다. 상태(1)가 참이면(즉, No-Op 조건이거나 또는 TTmax이면), 감소 클럭 생성기(80)가 인에이블되어 프로세서의 클럭 출력(88)은 감소 클럭 속도가 된다. 버스가 활동하고 TTopt이면, 상태(2)가 인에이블된다. 상태(2)에서 게이트(90)를 통한 제어에 의해 정상 클럭(NC)(82)이 인에이블되는 경우 NC(82)로부터 반환된 신호에 기초하여 게이트(94)를 통해 정상 전압이 유지된다. 상태(3)는 프로세서 유닛이 (상태(2)로부터 이동되는) 동작 수행을 개시하고 TTopt인 때에는 언제든지 천이 상태이다. 이 상태에서 게이트(91)는 가속 전압 레귤레이터(AV)(52)를 인에이블시킨다. AV가 인에이블된 후, 게이트(95)를 통해 신호가 전송되어 가속 클럭(AC)(84)을 인에이블시키고 프로세서는 상태(4)가 된다. ToptTTswitch인 경우, 게이트(74)를 통해 상태(5)가 인에이블된다. 이로 인해 프로세서 및 시스템은 사용 제어부(UC)(86)로 이동된다. 이 상태에서 성능 제어부(32)는 유닛(34)의 활동을 약화시킴으로써 전력 소비를 안정화하도록 하게 된다.
상태(6)는 TTswitch인 경우의 천이 위상이다. 이 상태에서 게이트(76)는게이트(90)를 거쳐 정상 클럭(82)을 먼저 턴온시키고 그다음에 게이트(93 및 94)를 거쳐 정상 전압(50)을 단정한다. 그리고 나서 시스템은 상태(7)가 되고 온도가 Tmax를 초과하거나 Tswitch 보다 낮을 때까지 이 상태(7)를 유지한다. 온도 Tmax를 초과하는 경우 시스템은 상태(1)로 이동한다. 그러나 온도가 Tswitch 보다 낮게 감소되는 경우 시스템은 상태(5)로 다시 이동된다.
전술한 내용에서, 본 발명은 특정의 예시적인 실시예를 참조하여 기술되었다. 그러나, 첨부되는 청구 범위에 개시된 바와 같이 본 발명의 폭넓은 정신 및 범위로부터 벗어나지 않고 각종 수정 및 변경이 이루어질 수 있음이 명백해질 것이다. 따라서, 본 명세서 및 도면은 제한적인 의미를 갖는다기 보다는 예시적인 것으로서 간주된다.
상기한 바와 같은 본 발명에 따르면, 본 발명의 프로세서는 전압, 클럭킹 및 프로세서 또는 그의 시스템에 의해 수행되는 동작을 포함하는 변수 계층을 필요에 따라 이용함으로써 성능을 최적화하는 것으로, 프로세서 실행 유닛이 동작중인 경우 가속 전압 및 클럭의 최적 성능 상태에서 상주하도록 각종 상태를 정의함으로써 성능의 최적화를 성취하게 된다.
Claims (20)
- 조정된 전원(a regulated power supply)을 이용하는 둘이상의 클럭킹 주파수(more than one clocking frequency)를 갖는 프로세서에 있어서,a) 상기 프로세서의 현재 온도에 대응하는 온도 신호를 제공하는 온도 감지 회로(a temperature sensing circuit)와,b) 상기 프로세서의 기능 동작을 모니터하는 성능 제어부(a performance control)와,c) 상기 성능 제어부 및 상기 온도 감지 회로로부터 정보를 수신하고 상기 정보를 이용하여 적절한 클럭킹 주파수 및 동작 전압을 선택하는 로직 네트워크(a logic network)를 포함하는 프로세서.
- 제 1 항에 있어서,d) 상기 성능 제어부의 일부로서 상기 로직 네트워크에 연결되며, 상기 로직 네트워크에 공급된 정보에 기초하여 상기 프로세서의 하나 이상의 기능 유닛의 동작을 제한하는 사용 제어 모듈(a utilization control module)을 더 포함하는 프로세서.
- 제 1 항에 있어서,상기 로직 네트워크는 상기 온도 감지 회로 및 상기 성능 제어부로부터의 정보를 이용하여 상기 프로세서의 동작을 제어하는 상태를 제공하는 프로세서.
- 제 3 항에 있어서,d) 상기 성능 제어부의 일부로서 상기 로직 네트워크에 연결되며, 상기 로직 네트워크에 공급된 정보에 기초하여 상기 프로세서의 하나 이상의 기능 유닛의 동작을 제한하는 사용 제어 모듈을 더 포함하는 프로세서.
- 제 3 항에 있어서,상기 사용 제어 모듈은 감지된 온도가 최적 온도를 초과하는 경우 상기 상태들중의 하나에 의해 인에이블되는 프로세서.
- 제 3 항에 있어서,감지된 온도가 가속 전압 및 클럭(accelerated voltage and clock)에 대해 선택된 온도 범위 밖인 경우 상기 상태들중의 하나는 정상 전압 및 클럭(a normal voltage and clock)을 제공하는 프로세서.
- 제 3 항에 있어서,상기 감지된 온도가 상기 최적 온도 보다 낮은 경우 상기 상태들중의 하나가 인에이블되는 가속 전압 및 클럭을 제공하는 프로세서.
- 제 5 항에 있어서,상기 감지된 온도가 상기 최적 온도 보다 낮은 경우 상기 상태들중의 하나가 인에이블되는 가속 전압 및 클럭을 제공하는 프로세서.
- 제 5 항에 있어서,감지된 온도가 가속 전압 및 클럭에 대해 선택된 온도 범위 밖인 경우 상기 상태들중의 하나는 정상 전압 및 클럭을 제공하는 프로세서.
- 제 8 항에 있어서,감지된 온도가 가속 전압 및 클럭에 대해 선택된 온도 범위 밖인 경우 상기 상태들중의 하나는 정상 전압 및 클럭을 제공하는 프로세서.
- 제 10 항에 있어서,상기 성능 제어부가 버스 활동(bus activity)만을 검출하고 상기 감지된 온도가 상기 최적 온도 보다 낮은 경우 상기 상태들중의 하나는 정상 전압 및 클럭을 제공하는 프로세서.
- 제 10 항에 있어서,상기 성능 제어부가 일련의 no-op 인스트럭션(a series of no-op instructions)을 검출하거나 또는 상기 온도가 상기 프로세서에 대해 지정된 최대 온도 보다 높은 경우 상기 상태들중의 하나는 감소 클럭 속도(a reduced clock rate)를 제공하는 프로세서.
- 제 11 항에 있어서,상기 성능 제어부가 일련의 no-op 인스트럭션을 검출하거나 또는 상기 온도가 상기 프로세서에 대해 지정된 최대 온도 보다 높은 경우 상기 상태들중의 하나는 감소 클럭 속도를 제공하는 프로세서.
- 프로세서의 성능을 최적화하는 방법에 있어서,a) 상기 프로세서의 기능 유닛이 동작중이고 상기 프로세서의 감지된 온도가 가속 활동 상태의 동작을 위한 최적 온도 이하 보다 낯은 경우 정상 활동 상태(a normal activity state)로부터 가속 활동 상태(an accelerated activity state)로 스위칭하는 단계와,b) 상기 프로세서의 감지된 온도가 최적 온도 및 상기 가속 활동 상태에 대한 온도를 초과하지 않는 온도 사이에 있는 경우 상기 프로세서의 기능 유닛을 관리하는 사용 제어부(a utilization control)를 인에이블(enable)하는 단계와,c) 상기 프로세서의 감지된 온도가 상기 가속 활동 상태에서의 동작을 위한 온도를 초과하지 않는 온도 보다 높은 경우 상기 가속 활동 상태로부터 정상 활동 상태로 스위칭하는 단계를 포함하는 프로세서의 성능을 최적화하는 방법.
- 제 14 항에 있어서,상기 정상 활동 상태는 정상 클럭 및 전압을 포함하고 상기 가속 활동 상태는 가속 클럭 및 전압과 상기 프로세서의 기능 유닛에 의한 전체적인 기능 실행을 포함하는 프로세서의 성능을 최적화하는 방법.
- 제 15 항에 있어서,d) 상기 프로세서가 일련의 no-op 인스트럭션을 검출하는 경우 감소 클럭 상태(a reduced clock state)로 돌입하는 단계와,e) 상기 프로세서의 감지된 온도가 최적 온도 보다 낮고 버스 활동만이 존재하는 경우 감소 클럭 상태로부터 또는 가속 전압 및 클럭 상태로부터 정상 활동 상태로 이동하는 단계를 또한 포함하는 프로세서의 성능을 최적화하는 방법.
- 제 16 항에 있어서,f) 상기 프로세서의 감지된 온도가 상기 프로세서에 대해 지정된 온도 보다 높은 때에는 언제든지 상기 감소 클럭 상태로 스위칭하는 단계를 또한 포함하는 프로세서의 성능을 최적화하는 방법.
- 프로세서의 성능을 최적화하는 장치에 있어서,a) 상기 프로세서의 기능 유닛이 동작중이고 상기 프로세서의 감지된 온도가 가속 활동 상태에서의 동작을 위한 최적 온도 보다 낮은 경우 정상 활동 상태로부터 가속 활동 상태로 스위칭하는 수단과,b) 상기 프로세서의 감지된 온도가 최적 온도와 상기 가속 활동 상태에 대한 온도를 초과하지 않는 온도 사이에 있는 경우 상기 프로세서의 기능 유닛을 관리하는 사용 제어부를 인에이블하는 수단과,c) 상기 프로세서의 감지된 온도가 상기 가속 활동 상태에서의 동작을 위한 온도를 초과하지 않는 온도 보다 높은 경우 상기 가속 활동 상태로부터 정상 활동 상태로 스위칭하는 수단을 포함하는 프로세서의 성능을 최적화하는 장치.
- 제 18 항에 있어서,d) 상기 프로세서가 일련의 no-op 인스트럭션을 검출하는 경우 감소 클럭 상태로 돌입하는 수단과,e) 상기 프로세서의 감지된 온도가 최적 온도 보다 낮고 버스 활동만이 존재하는 경우 감소 클럭 상태로부터 또는 가속 전압 및 클럭 상태로부터 정상 활동 상태로 이동하는 수단을 또한 포함하는 프로세서의 성능을 최적화하는 장치.
- 제 19 항에 있어서,f) 상기 프로세서의 감지된 온도가 상기 프로세서에 대한 지정된 온도 보다 높은 때에는 언제든지 상기 감소 클럭 상태로 스위칭하는 수단을 또한 포함하는 프로세서의 성능을 최적화하는 장치.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US8/772,706 | 1996-12-23 | ||
US08/772,706 US5832284A (en) | 1996-12-23 | 1996-12-23 | Self regulating temperature/performance/voltage scheme for micros (X86) |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19980063493A true KR19980063493A (ko) | 1998-10-07 |
KR100277247B1 KR100277247B1 (ko) | 2001-01-15 |
Family
ID=25095952
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970049404A KR100277247B1 (ko) | 1996-12-23 | 1997-09-27 | 프로세서 및 그의 성능을 최적화하는 방법 |
Country Status (6)
Country | Link |
---|---|
US (2) | US5832284A (ko) |
JP (1) | JP4008989B2 (ko) |
KR (1) | KR100277247B1 (ko) |
MY (2) | MY133334A (ko) |
SG (2) | SG109455A1 (ko) |
TW (1) | TW364094B (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100935574B1 (ko) * | 2002-11-04 | 2010-01-07 | 삼성전자주식회사 | Cpu 과열방지시스템 |
Families Citing this family (70)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5996084A (en) * | 1996-01-17 | 1999-11-30 | Texas Instruments Incorporated | Method and apparatus for real-time CPU thermal management and power conservation by adjusting CPU clock frequency in accordance with CPU activity |
US6928559B1 (en) * | 1997-06-27 | 2005-08-09 | Broadcom Corporation | Battery powered device with dynamic power and performance management |
JP3573957B2 (ja) * | 1998-05-20 | 2004-10-06 | インターナショナル・ビジネス・マシーンズ・コーポレーション | コンピュータ内のプロセッサの動作速度制御方法及びコンピュータ |
TW509843B (en) * | 1998-07-24 | 2002-11-11 | Mitac Technology Corp | Control method and system for dynamically adjusting processor |
US6415388B1 (en) * | 1998-10-30 | 2002-07-02 | Intel Corporation | Method and apparatus for power throttling in a microprocessor using a closed loop feedback system |
US7100061B2 (en) | 2000-01-18 | 2006-08-29 | Transmeta Corporation | Adaptive power control |
US6772356B1 (en) | 2000-04-05 | 2004-08-03 | Advanced Micro Devices, Inc. | System for specifying core voltage for a microprocessor by selectively outputting one of a first, fixed and a second, variable voltage control settings from the microprocessor |
US6968469B1 (en) | 2000-06-16 | 2005-11-22 | Transmeta Corporation | System and method for preserving internal processor context when the processor is powered down and restoring the internal processor context when processor is restored |
US7260731B1 (en) * | 2000-10-23 | 2007-08-21 | Transmeta Corporation | Saving power when in or transitioning to a static mode of a processor |
US6895520B1 (en) | 2001-03-02 | 2005-05-17 | Advanced Micro Devices, Inc. | Performance and power optimization via block oriented performance measurement and control |
US7231531B2 (en) * | 2001-03-16 | 2007-06-12 | Dualcor Technologies, Inc. | Personal electronics device with a dual core processor |
US6836849B2 (en) * | 2001-04-05 | 2004-12-28 | International Business Machines Corporation | Method and apparatus for controlling power and performance in a multiprocessing system according to customer level operational requirements |
US7254721B1 (en) | 2001-05-01 | 2007-08-07 | Advanced Micro Devices, Inc. | System and method for controlling an intergrated circuit to enter a predetermined performance state by skipping all intermediate states based on the determined utilization of the intergrated circuit |
US6845456B1 (en) | 2001-05-01 | 2005-01-18 | Advanced Micro Devices, Inc. | CPU utilization measurement techniques for use in power management |
US7111178B2 (en) * | 2001-09-28 | 2006-09-19 | Intel Corporation | Method and apparatus for adjusting the voltage and frequency to minimize power dissipation in a multiprocessor system |
US6859886B1 (en) | 2001-10-02 | 2005-02-22 | Lsi Logic Corporation | IO based embedded processor clock speed control |
US20040025061A1 (en) * | 2001-10-25 | 2004-02-05 | Lawrence Richard H. | Method and system for power reduction |
US6892312B1 (en) * | 2001-10-30 | 2005-05-10 | Lsi Logic Corporation | Power monitoring and reduction for embedded IO processors |
JP3794312B2 (ja) * | 2001-11-08 | 2006-07-05 | ソニー株式会社 | 電源電圧周波数制御回路 |
US6889332B2 (en) | 2001-12-11 | 2005-05-03 | Advanced Micro Devices, Inc. | Variable maximum die temperature based on performance state |
US6931559B2 (en) * | 2001-12-28 | 2005-08-16 | Intel Corporation | Multiple mode power throttle mechanism |
US7281140B2 (en) * | 2001-12-28 | 2007-10-09 | Intel Corporation | Digital throttle for multiple operating points |
US7036030B1 (en) | 2002-02-07 | 2006-04-25 | Advanced Micro Devices, Inc. | Computer system and method of using temperature measurement readings to detect user activity and to adjust processor performance |
US7050885B2 (en) * | 2002-02-15 | 2006-05-23 | Delphi Technologies, Inc. | Pulse count accumulator for pulse count motor control system |
EP1338948A1 (en) * | 2002-02-25 | 2003-08-27 | Hewlett Packard Company, a Delaware Corporation | Clock control arrangement for a computing system |
US6957352B2 (en) * | 2002-03-15 | 2005-10-18 | Intel Corporation | Processor temperature control interface |
US7336090B1 (en) | 2002-04-16 | 2008-02-26 | Transmeta Corporation | Frequency specific closed loop feedback control of integrated circuits |
US7941675B2 (en) | 2002-12-31 | 2011-05-10 | Burr James B | Adaptive power control |
US7112978B1 (en) | 2002-04-16 | 2006-09-26 | Transmeta Corporation | Frequency specific closed loop feedback control of integrated circuits |
US6762629B2 (en) * | 2002-07-26 | 2004-07-13 | Intel Corporation | VCC adaptive dynamically variable frequency clock system for high performance low power microprocessors |
US6908227B2 (en) * | 2002-08-23 | 2005-06-21 | Intel Corporation | Apparatus for thermal management of multiple core microprocessors |
US7786756B1 (en) | 2002-12-31 | 2010-08-31 | Vjekoslav Svilan | Method and system for latchup suppression |
US7953990B2 (en) * | 2002-12-31 | 2011-05-31 | Stewart Thomas E | Adaptive power control based on post package characterization of integrated circuits |
US7949864B1 (en) | 2002-12-31 | 2011-05-24 | Vjekoslav Svilan | Balanced adaptive body bias control |
US7642835B1 (en) * | 2003-11-12 | 2010-01-05 | Robert Fu | System for substrate potential regulation during power-up in integrated circuits |
US7228242B2 (en) | 2002-12-31 | 2007-06-05 | Transmeta Corporation | Adaptive power control based on pre package characterization of integrated circuits |
US7205758B1 (en) * | 2004-02-02 | 2007-04-17 | Transmeta Corporation | Systems and methods for adjusting threshold voltage |
US7657772B2 (en) * | 2003-02-13 | 2010-02-02 | International Business Machines Corporation | Thermally aware integrated circuit |
US7149905B2 (en) * | 2003-05-22 | 2006-12-12 | International Business Machines Corporation | Firmware controlled dynamic voltage adjustment |
US7146514B2 (en) * | 2003-07-23 | 2006-12-05 | Intel Corporation | Determining target operating frequencies for a multiprocessor system |
US7079904B1 (en) * | 2003-09-12 | 2006-07-18 | Itt Manufacturing Enterprises, Inc. | Adaptive software management |
GB2408356B (en) * | 2003-11-18 | 2005-12-28 | Motorola Inc | Method and device for regulating a voltage supply to a semiconductor device |
US7129771B1 (en) | 2003-12-23 | 2006-10-31 | Transmeta Corporation | Servo loop for well bias voltage source |
US7012461B1 (en) | 2003-12-23 | 2006-03-14 | Transmeta Corporation | Stabilization component for a substrate potential regulation circuit |
US7649402B1 (en) | 2003-12-23 | 2010-01-19 | Tien-Min Chen | Feedback-controlled body-bias voltage source |
US7692477B1 (en) | 2003-12-23 | 2010-04-06 | Tien-Min Chen | Precise control component for a substrate potential regulation circuit |
KR20050071739A (ko) * | 2004-01-02 | 2005-07-08 | 삼성전자주식회사 | 누설 전력을 줄이기 위한 마이크로프로세서 |
US7859062B1 (en) * | 2004-02-02 | 2010-12-28 | Koniaris Kleanthes G | Systems and methods for integrated circuits comprising multiple body biasing domains |
US7816742B1 (en) | 2004-09-30 | 2010-10-19 | Koniaris Kleanthes G | Systems and methods for integrated circuits comprising multiple body biasing domains |
US7562233B1 (en) | 2004-06-22 | 2009-07-14 | Transmeta Corporation | Adaptive control of operating and body bias voltages |
US7774625B1 (en) | 2004-06-22 | 2010-08-10 | Eric Chien-Li Sheng | Adaptive voltage control by accessing information stored within and specific to a microprocessor |
US7313500B2 (en) * | 2004-11-05 | 2007-12-25 | Schweitzer Engineering Labortories, Inc. | Method to increase the maximum allowable ambient temperature rating of an electronic device |
US7502948B2 (en) * | 2004-12-30 | 2009-03-10 | Intel Corporation | Method, system, and apparatus for selecting a maximum operation point based on number of active cores and performance level of each of the active cores |
TWI351818B (en) | 2005-01-11 | 2011-11-01 | Altera Corp | Power management of components having clock proces |
US7197419B2 (en) * | 2005-02-03 | 2007-03-27 | International Business Machines Corporation | System and method for thermal monitoring of IC using sampling periods of invariant duration |
US20060218428A1 (en) * | 2005-03-22 | 2006-09-28 | Hurd Kevin A | Systems and methods for operating within operating condition limits |
US7953991B2 (en) * | 2006-02-27 | 2011-05-31 | Freescale Semiconductor, Inc. | Processing system and methods for use therewith |
US7886167B2 (en) * | 2006-05-11 | 2011-02-08 | Intel Corporation | Load circuit supply voltage control |
US7421368B2 (en) * | 2006-12-19 | 2008-09-02 | International Business Machines Corporation | Detection of airflow anomalies in electronic equipment |
US7908493B2 (en) * | 2007-06-06 | 2011-03-15 | International Business Machines Corporation | Unified management of power, performance, and thermals in computer systems |
US8725488B2 (en) * | 2007-07-26 | 2014-05-13 | Qualcomm Incorporated | Method and apparatus for adaptive voltage scaling based on instruction usage |
US8069354B2 (en) * | 2007-08-14 | 2011-11-29 | Mips Technologies, Inc. | Power management for system having one or more integrated circuits |
US8055477B2 (en) * | 2008-11-20 | 2011-11-08 | International Business Machines Corporation | Identifying deterministic performance boost capability of a computer system |
US8037325B1 (en) | 2008-12-09 | 2011-10-11 | Google Inc. | System and method for determining power consumption |
US8756442B2 (en) | 2010-12-16 | 2014-06-17 | Advanced Micro Devices, Inc. | System for processor power limit management |
US8909961B2 (en) | 2011-11-29 | 2014-12-09 | Ati Technologies Ulc | Method and apparatus for adjusting power consumption level of an integrated circuit |
US9223383B2 (en) | 2012-12-21 | 2015-12-29 | Advanced Micro Devices, Inc. | Guardband reduction for multi-core data processor |
US9360918B2 (en) | 2012-12-21 | 2016-06-07 | Advanced Micro Devices, Inc. | Power control for multi-core data processor |
US9903764B2 (en) | 2014-09-30 | 2018-02-27 | Samsung Electronics Co., Ltd. | Integrated circuit for estimating power of at least one node using temperature and a system including the same |
US10580730B2 (en) | 2017-11-16 | 2020-03-03 | International Business Machines Corporation | Managed integrated circuit power supply distribution |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4445083A (en) * | 1981-08-26 | 1984-04-24 | Honeywell Information Systems Inc. | Integrated circuit compensatory regulator apparatus |
JPS6448119A (en) * | 1987-08-19 | 1989-02-22 | Hitachi Ltd | Semiconductor device |
US5189314A (en) * | 1991-09-04 | 1993-02-23 | International Business Machines Corporation | Variable chip-clocking mechanism |
DE4137730C2 (de) * | 1991-11-15 | 1993-10-21 | Texas Instruments Deutschland | In einer Halbleiterschaltung integrierte Schaltungsanordnung |
US5303191A (en) * | 1992-01-23 | 1994-04-12 | Motorola, Inc. | Memory with compensation for voltage, temperature, and processing variations |
US5452401A (en) * | 1992-03-31 | 1995-09-19 | Seiko Epson Corporation | Selective power-down for high performance CPU/system |
US5287292A (en) * | 1992-10-16 | 1994-02-15 | Picopower Technology, Inc. | Heat regulator for integrated circuits |
JP3246186B2 (ja) * | 1993-09-21 | 2002-01-15 | セイコーエプソン株式会社 | 情報処理装置 |
US5721837A (en) * | 1993-10-28 | 1998-02-24 | Elonex I.P. Holdings, Ltd. | Micro-personal digital assistant including a temperature managed CPU |
US5502838A (en) * | 1994-04-28 | 1996-03-26 | Consilium Overseas Limited | Temperature management for integrated circuits |
WO1996025796A1 (en) * | 1995-02-17 | 1996-08-22 | Intel Corporation | Power dissipation control system for vlsi chips |
US5498971A (en) * | 1994-02-07 | 1996-03-12 | Zenith Data Systems Corporation | Method and control circuit for measuring the temperature of an integrated circuit |
JP3718251B2 (ja) * | 1994-02-28 | 2005-11-24 | 株式会社ルネサステクノロジ | データ処理装置 |
US5422806A (en) * | 1994-03-15 | 1995-06-06 | Acc Microelectronics Corporation | Temperature control for a variable frequency CPU |
US5752011A (en) * | 1994-06-20 | 1998-05-12 | Thomas; C. Douglas | Method and system for controlling a processor's clock frequency in accordance with the processor's temperature |
US5490059A (en) * | 1994-09-02 | 1996-02-06 | Advanced Micro Devices, Inc. | Heuristic clock speed optimizing mechanism and computer system employing the same |
US5440520A (en) * | 1994-09-16 | 1995-08-08 | Intel Corporation | Integrated circuit device that selects its own supply voltage by controlling a power supply |
US5451892A (en) * | 1994-10-03 | 1995-09-19 | Advanced Micro Devices | Clock control technique and system for a microprocessor including a thermal sensor |
US6311287B1 (en) * | 1994-10-11 | 2001-10-30 | Compaq Computer Corporation | Variable frequency clock control for microprocessor-based computer systems |
US5713030A (en) * | 1995-10-11 | 1998-01-27 | Vlsi Technology, Inc. | Thermal management device and method for a computer processor |
JPH09146654A (ja) * | 1995-11-16 | 1997-06-06 | Brother Ind Ltd | クロック信号発生装置 |
-
1996
- 1996-12-23 US US08/772,706 patent/US5832284A/en not_active Expired - Lifetime
-
1997
- 1997-09-27 KR KR1019970049404A patent/KR100277247B1/ko not_active IP Right Cessation
- 1997-10-27 JP JP29401097A patent/JP4008989B2/ja not_active Expired - Lifetime
- 1997-11-18 TW TW086117229A patent/TW364094B/zh not_active IP Right Cessation
- 1997-11-19 MY MYPI20034490A patent/MY133334A/en unknown
- 1997-11-19 MY MYPI97005546A patent/MY117872A/en unknown
- 1997-11-21 SG SG200103837A patent/SG109455A1/en unknown
- 1997-11-21 SG SG1997004113A patent/SG66414A1/en unknown
-
1998
- 1998-10-30 US US09/183,342 patent/US6119241A/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100935574B1 (ko) * | 2002-11-04 | 2010-01-07 | 삼성전자주식회사 | Cpu 과열방지시스템 |
Also Published As
Publication number | Publication date |
---|---|
TW364094B (en) | 1999-07-11 |
US5832284A (en) | 1998-11-03 |
JPH10198456A (ja) | 1998-07-31 |
KR100277247B1 (ko) | 2001-01-15 |
MY133334A (en) | 2007-11-30 |
JP4008989B2 (ja) | 2007-11-14 |
SG109455A1 (en) | 2005-03-30 |
MY117872A (en) | 2004-08-30 |
US6119241A (en) | 2000-09-12 |
SG66414A1 (en) | 1999-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100277247B1 (ko) | 프로세서 및 그의 성능을 최적화하는 방법 | |
EP1023656B1 (en) | Localized performance throttling to reduce ic power consumption | |
US6823240B2 (en) | Operating system coordinated thermal management | |
EP0826170B1 (en) | Method and apparatus for enhancing performance of a processor | |
US7032117B2 (en) | Dynamic power control in integrated circuits | |
US9317090B2 (en) | Methods and apparatuses for operating a data processing system | |
US8639955B2 (en) | Method and system for controlling power in a chip through a power performance monitor and control unit | |
EP1759460B1 (en) | Adaptive control of power supply for integrated circuits | |
EP1361501B1 (en) | Power conservation and thermal management arrangements for computers | |
US7076672B2 (en) | Method and apparatus for performance effective power throttling | |
US7181188B2 (en) | Method and apparatus for entering a low power mode | |
EP0706108A2 (en) | Clock control circuits for microprocessors | |
JP2007128556A (ja) | Cpuの動作特性に応じてコンピュータの動作を制御する方法と装置 | |
EP1711878A2 (en) | Method and apparatus for over clocking in a digital processing system | |
US5784627A (en) | Integrated timer for power management and watchdog functions | |
US7299372B2 (en) | Hierarchical management for multiprocessor system with real-time attributes | |
CN104205001A (zh) | 热传感器动态关闭 | |
US7299371B2 (en) | Hierarchical management for multiprocessor system | |
Watts et al. | Dynamic energy management in embedded systems. | |
JPH02280210A (ja) | マイクロコンピュータ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20100824 Year of fee payment: 11 |
|
LAPS | Lapse due to unpaid annual fee |