KR19980063493A - 프로세서 및 그의 성능을 최적화하는 방법 - Google Patents

프로세서 및 그의 성능을 최적화하는 방법 Download PDF

Info

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
Application number
KR1019970049404A
Other languages
English (en)
Other versions
KR100277247B1 (ko
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 포만제프리엘
Publication of KR19980063493A publication Critical patent/KR19980063493A/ko
Application granted granted Critical
Publication of KR100277247B1 publication Critical patent/KR100277247B1/ko

Links

Classifications

    • 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
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • 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
    • 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
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • 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)
  • 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)

  1. 조정된 전원(a regulated power supply)을 이용하는 둘이상의 클럭킹 주파수(more than one clocking frequency)를 갖는 프로세서에 있어서,
    a) 상기 프로세서의 현재 온도에 대응하는 온도 신호를 제공하는 온도 감지 회로(a temperature sensing circuit)와,
    b) 상기 프로세서의 기능 동작을 모니터하는 성능 제어부(a performance control)와,
    c) 상기 성능 제어부 및 상기 온도 감지 회로로부터 정보를 수신하고 상기 정보를 이용하여 적절한 클럭킹 주파수 및 동작 전압을 선택하는 로직 네트워크(a logic network)
    를 포함하는 프로세서.
  2. 제 1 항에 있어서,
    d) 상기 성능 제어부의 일부로서 상기 로직 네트워크에 연결되며, 상기 로직 네트워크에 공급된 정보에 기초하여 상기 프로세서의 하나 이상의 기능 유닛의 동작을 제한하는 사용 제어 모듈(a utilization control module)을 더 포함하는 프로세서.
  3. 제 1 항에 있어서,
    상기 로직 네트워크는 상기 온도 감지 회로 및 상기 성능 제어부로부터의 정보를 이용하여 상기 프로세서의 동작을 제어하는 상태를 제공하는 프로세서.
  4. 제 3 항에 있어서,
    d) 상기 성능 제어부의 일부로서 상기 로직 네트워크에 연결되며, 상기 로직 네트워크에 공급된 정보에 기초하여 상기 프로세서의 하나 이상의 기능 유닛의 동작을 제한하는 사용 제어 모듈을 더 포함하는 프로세서.
  5. 제 3 항에 있어서,
    상기 사용 제어 모듈은 감지된 온도가 최적 온도를 초과하는 경우 상기 상태들중의 하나에 의해 인에이블되는 프로세서.
  6. 제 3 항에 있어서,
    감지된 온도가 가속 전압 및 클럭(accelerated voltage and clock)에 대해 선택된 온도 범위 밖인 경우 상기 상태들중의 하나는 정상 전압 및 클럭(a normal voltage and clock)을 제공하는 프로세서.
  7. 제 3 항에 있어서,
    상기 감지된 온도가 상기 최적 온도 보다 낮은 경우 상기 상태들중의 하나가 인에이블되는 가속 전압 및 클럭을 제공하는 프로세서.
  8. 제 5 항에 있어서,
    상기 감지된 온도가 상기 최적 온도 보다 낮은 경우 상기 상태들중의 하나가 인에이블되는 가속 전압 및 클럭을 제공하는 프로세서.
  9. 제 5 항에 있어서,
    감지된 온도가 가속 전압 및 클럭에 대해 선택된 온도 범위 밖인 경우 상기 상태들중의 하나는 정상 전압 및 클럭을 제공하는 프로세서.
  10. 제 8 항에 있어서,
    감지된 온도가 가속 전압 및 클럭에 대해 선택된 온도 범위 밖인 경우 상기 상태들중의 하나는 정상 전압 및 클럭을 제공하는 프로세서.
  11. 제 10 항에 있어서,
    상기 성능 제어부가 버스 활동(bus activity)만을 검출하고 상기 감지된 온도가 상기 최적 온도 보다 낮은 경우 상기 상태들중의 하나는 정상 전압 및 클럭을 제공하는 프로세서.
  12. 제 10 항에 있어서,
    상기 성능 제어부가 일련의 no-op 인스트럭션(a series of no-op instructions)을 검출하거나 또는 상기 온도가 상기 프로세서에 대해 지정된 최대 온도 보다 높은 경우 상기 상태들중의 하나는 감소 클럭 속도(a reduced clock rate)를 제공하는 프로세서.
  13. 제 11 항에 있어서,
    상기 성능 제어부가 일련의 no-op 인스트럭션을 검출하거나 또는 상기 온도가 상기 프로세서에 대해 지정된 최대 온도 보다 높은 경우 상기 상태들중의 하나는 감소 클럭 속도를 제공하는 프로세서.
  14. 프로세서의 성능을 최적화하는 방법에 있어서,
    a) 상기 프로세서의 기능 유닛이 동작중이고 상기 프로세서의 감지된 온도가 가속 활동 상태의 동작을 위한 최적 온도 이하 보다 낯은 경우 정상 활동 상태(a normal activity state)로부터 가속 활동 상태(an accelerated activity state)로 스위칭하는 단계와,
    b) 상기 프로세서의 감지된 온도가 최적 온도 및 상기 가속 활동 상태에 대한 온도를 초과하지 않는 온도 사이에 있는 경우 상기 프로세서의 기능 유닛을 관리하는 사용 제어부(a utilization control)를 인에이블(enable)하는 단계와,
    c) 상기 프로세서의 감지된 온도가 상기 가속 활동 상태에서의 동작을 위한 온도를 초과하지 않는 온도 보다 높은 경우 상기 가속 활동 상태로부터 정상 활동 상태로 스위칭하는 단계
    를 포함하는 프로세서의 성능을 최적화하는 방법.
  15. 제 14 항에 있어서,
    상기 정상 활동 상태는 정상 클럭 및 전압을 포함하고 상기 가속 활동 상태는 가속 클럭 및 전압과 상기 프로세서의 기능 유닛에 의한 전체적인 기능 실행을 포함하는 프로세서의 성능을 최적화하는 방법.
  16. 제 15 항에 있어서,
    d) 상기 프로세서가 일련의 no-op 인스트럭션을 검출하는 경우 감소 클럭 상태(a reduced clock state)로 돌입하는 단계와,
    e) 상기 프로세서의 감지된 온도가 최적 온도 보다 낮고 버스 활동만이 존재하는 경우 감소 클럭 상태로부터 또는 가속 전압 및 클럭 상태로부터 정상 활동 상태로 이동하는 단계를 또한 포함하는 프로세서의 성능을 최적화하는 방법.
  17. 제 16 항에 있어서,
    f) 상기 프로세서의 감지된 온도가 상기 프로세서에 대해 지정된 온도 보다 높은 때에는 언제든지 상기 감소 클럭 상태로 스위칭하는 단계를 또한 포함하는 프로세서의 성능을 최적화하는 방법.
  18. 프로세서의 성능을 최적화하는 장치에 있어서,
    a) 상기 프로세서의 기능 유닛이 동작중이고 상기 프로세서의 감지된 온도가 가속 활동 상태에서의 동작을 위한 최적 온도 보다 낮은 경우 정상 활동 상태로부터 가속 활동 상태로 스위칭하는 수단과,
    b) 상기 프로세서의 감지된 온도가 최적 온도와 상기 가속 활동 상태에 대한 온도를 초과하지 않는 온도 사이에 있는 경우 상기 프로세서의 기능 유닛을 관리하는 사용 제어부를 인에이블하는 수단과,
    c) 상기 프로세서의 감지된 온도가 상기 가속 활동 상태에서의 동작을 위한 온도를 초과하지 않는 온도 보다 높은 경우 상기 가속 활동 상태로부터 정상 활동 상태로 스위칭하는 수단
    을 포함하는 프로세서의 성능을 최적화하는 장치.
  19. 제 18 항에 있어서,
    d) 상기 프로세서가 일련의 no-op 인스트럭션을 검출하는 경우 감소 클럭 상태로 돌입하는 수단과,
    e) 상기 프로세서의 감지된 온도가 최적 온도 보다 낮고 버스 활동만이 존재하는 경우 감소 클럭 상태로부터 또는 가속 전압 및 클럭 상태로부터 정상 활동 상태로 이동하는 수단을 또한 포함하는 프로세서의 성능을 최적화하는 장치.
  20. 제 19 항에 있어서,
    f) 상기 프로세서의 감지된 온도가 상기 프로세서에 대한 지정된 온도 보다 높은 때에는 언제든지 상기 감소 클럭 상태로 스위칭하는 수단을 또한 포함하는 프로세서의 성능을 최적화하는 장치.
KR1019970049404A 1996-12-23 1997-09-27 프로세서 및 그의 성능을 최적화하는 방법 KR100277247B1 (ko)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100935574B1 (ko) * 2002-11-04 2010-01-07 삼성전자주식회사 Cpu 과열방지시스템

Families Citing this family (70)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 クロック信号発生装置

Cited By (1)

* Cited by examiner, † Cited by third party
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