KR20040068938A - 열 관리가 조절된 운영 체계 - Google Patents

열 관리가 조절된 운영 체계 Download PDF

Info

Publication number
KR20040068938A
KR20040068938A KR10-2004-7009110A KR20047009110A KR20040068938A KR 20040068938 A KR20040068938 A KR 20040068938A KR 20047009110 A KR20047009110 A KR 20047009110A KR 20040068938 A KR20040068938 A KR 20040068938A
Authority
KR
South Korea
Prior art keywords
processor
interrupt
response
cause
performance state
Prior art date
Application number
KR10-2004-7009110A
Other languages
English (en)
Other versions
KR100647166B1 (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 KR20040068938A publication Critical patent/KR20040068938A/ko
Application granted granted Critical
Publication of KR100647166B1 publication Critical patent/KR100647166B1/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
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • 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/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
    • 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)
  • Control Of Temperature (AREA)

Abstract

프로세서(12) 온도에 기초하여 프로세서의 성능 상태가 조절된다. 프로세서(12)가 가열됨으로 인하여 보다 낮은 성능 상태로 천이하면, 프로세서 전압을 줄이기 앞서 프로세서의 주파수가 감소된다. 따라서, 운영 체계에 의해 나타나는 바와 같이, 프로세서의 성능이 즉시 줄어든다. 반대로, 프로세서의 냉각으로 인하여 보다 높은 성능 상태로 천이하면, 전압이 보다 높은 수준으로 변화할 때까지 프로세서의 주파수는 증가하지 않는다. 프로세서의 PLL이 새로운 주파수 수준에서 다시 고정할 때마다 인터럽트 이벤트가 생성될 수 있다. 따라서, 인터럽트가 발행될 때, 운영 체계는 프로세서의 성능 상태를 판독할 수 있다. 그 결과, 프로세서의 성능이 인터럽트 이벤트에 뒤쳐지는 인터럽트들이 생성되지 않는다.

Description

열 관리가 조절된 운영 체계{Operating System Coordinated Thermal Management}
프로세서 기반 시스템의 전력 및 열 관리를 위해 하드웨어 및 소프트웨어 모두로 제어되는 기술이 존재한다. 소프트웨어 기반 솔루션들은 주로 이동 플랫폼과 관련하여 이용된다.
소프트웨어로 제어되는 기술은 프로세서의 온도 설정이 초과될 때 인터럽트가 생성되는 것을 포함한다. 프로세서는 프로세서 온도를 조사함으로써(polling) 과도 온도 조건을 검출한 뒤 스로틀링(throttle)될 수 있다. 일반적으로, 소프트웨어로 제어되는 솔루션은 하드웨어로 제어되는 솔루션보다 응답 시간이 더 느리다. 또한, 소프트웨어로 제어되는 솔루션에는 오버슛(overshoot) 및 언더슛(undershoot) 문제가 생기는 경향이 있다. 소프트웨어로 제어되는 솔루션에 이용되는 센서들은 상대적으로 느리고 부정확하다. 온-다이(on-die) 센서(일반적으로 다이오드)는 프로세서 다이에서 가장 고온인 부분에 위치하지 않는다.
이동 시스템 외의 시스템에서 사용되는, 하드웨어로 제어되는 솔루션은, 자동으로 프로세서를 스로틀링하고, 온도 조건이 초과할 때 유효 클럭 레이트를 줄이고, 프로세서가 충분히 냉각되었을 때 스로틀링을 디스에이블하도록 하는 프로세서를 포함한다. 하드웨어로 제어되는 솔루션은 프로세서가 고온인지 아닌지를 나타내는 온-다이 이진 센서에 기초한다. 인터럽트 능력을 이용할 수 있지만 일반적으로는 하드웨어로 제어되는 솔루션에 대한 주요 애플리케이션인 데스크탑 시스템에서는 스로틀링이 드물기 때문에 운영 체계가 사용하지 않는다. 그 결과, 운영 체계는 하드웨어로 제어되는 스로틀링을 인식하지 못할 수 있다.
소프트웨어로 제어되는 솔루션은 플랫폼이 운영 체계에 다양한 트립 포인트(trip point)를 나타낸다는 가정을 기초로 한다. 트립 포인트는 어떤 액션이 취해져야 할 때의 특정한 열적 영역에 대한 온도이다. 온도가 임의의 트립 포인트 이상 또는 이하로 가면, 플랫폼은 이 이벤트를 운영 체계에 통지를 할 책임이 있고 그러면 운영 체계는 적절한 액션을 취한다.
온도가 수동(passive) 트립 포인트를 지나갈 때, 운영 체계는 프로세서의 온도를 낮추는 알고리즘을 구현할 책임이 있다. 이는 다양한 주파수에서 주기적인 이벤트를 생성함으로써 할 수 있다. 운영 체계는 그 다음 최후의 온도 뿐만 아니라 현재의 온도를 모니터링하여 프로세서가 목표 온도를 유지하도록 성능을 변화시키는 알고리즘을 적용한다.
하드웨어로 제어되는 스로틀링의 현재의 버전은 프로세서를 빠르게 중지 및 개시시킴으로써 프로세서의 주파수를 줄이는 것이지만, 하드웨어로 제어되는 스로틀링의 장래의 버전은 주파수와 전압 모두를 줄임으로써 프로세서의 성능 상태를 낮출 것이다. 하드웨어로 제어되는 스로틀링은 직접 활성화되고 극히 빠른 응답시간을 가지기 때문에, 수동 열 관리를 작동시키기 위한 트립 포인트는 프로세서의 고온 규격(접합 온도라고 알려짐) 가까이로 설정되어, 대부분의 시스템 설계를 고성능이 되게 한다.
소프트웨어로 제어되는 스로틀링이 운영 체계에 적용될 때, 운영 체계가 프로세서 성능을 항상 알게 한다. 이는 실행 애플리케이션에 대한 프로세서 성능에 기초하여 어느 정도의 서비스 품질을 보장하는 장래의 운영 체계에서 특히 중요해진다. 이러한 개념을 보장된 대역폭 할당(guaranteed bandwidth allocation)이라고 하고 이는 프로세서의 현재의 성능 수준에 기초한다.
하드웨어로 제어되는 스로틀링은 주어진 열 솔루션에 있어서 가능한 최고의 성능을 전달하고, 극히 빠른 응답 시간을 갖고, 조속히 스로틀링하지 않는다는 장점이 있다. 하드웨어로 제어되는 스로틀링의 단점은 운영 체계가 프로세서 성능이 변경되었다는 것을 완전히 인식하지 못한다는 것이다. 이 때문에, 하드웨어로 제어되는 스로틀링은 보장된 대역폭 스케줄링을 구현하는 장래의 운영 체계에 문제점들을 일으킬 것으로 예상된다.
따라서, 하드웨어 및 소프트웨어로 제어되는 기술 양자의 장점을 달성하는 열 관리 솔루션이 필요하다.
본 발명은 프로세서 기반 시스템의 열 관리에 관한 것이다.
도 1은 본 발명의 일실시예에 따른 시스템의 블럭도이다.
도 2는 도 1의 시스템의 전력 관리 모듈의 흐름도이다.
도 3은 도 1의 시스템의 다른 모듈의 흐름도이다.
도 1을 참조하면, 본 발명의 일실시예에 따른 프로세서 기반 시스템(10)은 하나 이상의 프로세서(12)를 포함한다. 이 시스템(10)은 범용 또는 특수 목적 컴퓨터, 마이크로프로세서 기반 또는 마이크로콘트롤러 기반 시스템, 휴대용 컴퓨팅 장치, 셋톱 박스, 어플라이언스, 게임 시스템, 또는 콘트롤러가 프로그램될 수 있는 임의의 콘트롤러 기반 장치를 포함한다.
하나 이상의 온도 센서부(15)가 시스템 온도를 하나 이상의 해당 열 구역으로 나누어 모니터링하는데, 각 구역은 예컨대, 시스템 관리 인터럽트(SMI), 시스템 콘트롤러 인터럽트(SCI), 또는 몇몇 다른 통지와 같은 인터럽트를, 검출된 온도가 소정의 목표 온도 Tt이상으로 상승하거나, 목표 온도 Tt이하로 하강할 때 발행할 수 있다.
일실시예에서, 모니터링된 온도가 Tt이상일 때, 열 관련 SMI(thermal engage SMI)가 생성된다. 반면, 모니터링된 온도가 Tt이하일 때, 열 비관련 SMI(thermal disengage SMI)가 생성된다. 모니터링된 온도가 Tt이상 또는 이하로 남아있는 동안 열 관련 또는 비관련 SMI가 주기적인 간격들로 생성되어 소프트웨어나 펌웨어가 프로세서의 성능 수준을 조절하도록 할 수 있다.
다른 실시예에서, 시스템의 다른 콤포넌트들(예컨대, 브리지 콘트롤러 칩, 주변 콘트롤러)이 시스템 열 관리를 위해 스로틀링될 뿐만 아니라 상이한 성능 상태들 사이에서 천이될 수 있다. 또한, 시스템(10)의 열관리는 다수의 열 구역에대해 독립적으로 수행될 수 있다.
도 1에서, 온도 센서부(15)에 의해 생성된 인터럽트 이벤트는 프로세서(12)나, 프로세서(12)와 시스템 버스(22)(일실시예에서는 1995년 6월 1일 발간된 PCI Local Bus Specification, Production Version, Revision 2.1에 정의된 바와 같은 PCI(Peripheral Component Interconnect) 버스) 간에 결합된 호스트 브리지(18)로 로 바로 라우팅될 수 있다. 이와 달리, 이 인터럽트 이벤트가 메모리 또는 소프트웨어나 펌웨어 모듈에 의해 폴링되는 I/O 매핑된 레지스터 비트로서 저장될 수 있다.
스로틀링을 수행하기 위해, 클록 제어 입력(인텔사의 80x86 또는 펜티엄계열 프로세서로 입력되는 도 1의 G_STPCLK#로 도시된 중지 클럭 입력 등)이 소정의 듀티 사이클에 따라 활성화되고 불활성화된다. 이 신호 G_STPCLK#는 열관리 제어 로직에 의해 생성되고 예컨대 인텔사에서 만든 프로세서의 STPCLK# 입력 핀으로 라우팅된다. STPCLK#은 내부적으로 클럭들을 이러한 프로세서들의 코어로 게이트한다. (예컨대, G_STPCLK#을 로우로 구동함으로써) 이 클럭 제어 입력을 활성화하면 프로세서(12)가, 그 프로세서의 내부 클럭이 중지하고 대부분의 기능이 디스에이블되는 충분히 감소된 전력 모드로 들어가도록 한다. 따라서 스로틀링은 프로세서 활동을 디스에이블시키는 소정의 시간 비율 동안 클럭 제어 입력을 활성화시키고 나머지 시간에는 프로세서 활동을 허용함으로써 달성된다.
시스템(10)의 다른 콤포넌트들은 호스트 클럭 BCLK를 프로세서(12)로 발생시키는 클럭 생성기(50)와 프로세서(12)의 공급 전압을 조절하는 전압 조절기(52)를포함한다. 일실시예에서, 클럭 생성기(50), 프로세서(12), 및 전압 조절기(52)는 시스템(10)을 상이한 성능 상태들 사이에서 천이시키도록 제어가능하다.
프로세서(14) 및 시스템 메모리(16)에 결합된 캐시 메모리(14)는 호스트 브리지(18)의 메모리 콘트롤러에 의해 제어된다. 시스템 버스(22)는 디스플레이(26)에 결합된 비디오 콘트롤러(24)와 슬롯(28)을 통해 결합된 주변 장치들을 포함하는 기타의 콤포넌트들에 결합될 수 있다. 2차 또는 확장 버스(46)는 시스템 브리지(34)에 의해 시스템 버스(22)에 결합된다. 시스템 브리지(34)는 USB 포트(36)(1996년 1월에 발행된 Universal Serial Bus Specification, Revision 1.0에 기술된 바와 같음)를 포함하는 다른 포트들에 대한 인터페이스 회로들과 하드 디스크 드라이브, CD(compact disc) 또는 DVD(digital video disc) 드라이브 등과 같은 대용량 저장 장치에 결합될 수 있는 대용량 저장 장치 포트들(38)을 포함할 수 있다.
2차 버스(46)에 결합된 다른 콤포넌트들은 병렬 포트, 직렬 포트, 플로피 드라이브, 및 적외선 포트에 접속될 수 있는 입출력(I/O) 회로(40)를 포함할 수 있다. BIOS(Basic Input/Output System) 루틴을 저장하기 위한 불휘발성 메모리(32) 는, 키보드 장치(42) 및 오디오 제어 장치(44)와 같이, 버스(46)에 위치할 수 있다. 시스템(10)의 주전원 전압은 배터리(60)와 외부 전원 아웃렛(58)에 결합된 전원 회로(56)에 의해 공급된다. 시스템(10)의 특정한 콤포넌트들을 참조하는 것은 예시를 위함이고 시스템(10)의 다른 실시예들이 가능하다는 것을 이해해야 한다.
애플리케이션, 운영 체계 모듈, 장치 드라이버, BIOS 모듈, 및 인터럽트 핸들러를 포함하는 (예컨대, 모듈이나 루틴으로 형성된) 다양한 소프트웨어나 펌웨어층이 시스템의 하나 이상의 저장 매체에 저장될 수 있다. 저장 매체에는 하드 디스크 드라이브, CD, 또는 DVD 드라이브, 플로피 드라이브, 불휘발성 메모리, 및 시스템 메모리가 포함된다. 모듈, 루틴, 혹은 저장 매체에 저장된 다른 층들은, 실행되면 시스템(10)이 프로그램된 동작들을 수행하도록 하는 명령어들을 포함한다.
열 인터럽트 소프트웨어(50)과 주기적 타이머 소프트웨어(70)과 같은 소프트웨어나 펌웨어층들은 많은 상이한 방식들 중 하나의 방식으로 시스템(10)으로 로딩될 수 있다. 예를 들어, 플로피 디스크, CD나 DVD 매체, 하드 디스크에 저장된, 또는 네트워크 인터페이스 카드, 모뎀, 또는 다른 인터페이스 메카니즘을 통해 전송된 코드 세그먼트들이 시스템(10)으로 로딩될 수 있고 해당 소프트웨어나 펌웨어 층들에 따라서 실행될 수 있다. 로딩이나 전송 과정에서, (전화선, 네트워크선, 무선 링크, 케이블 등을 통해 전송된) 반송파로서 구현되는 데이타 신호들이 시스템(10)으로 이 코드 세그먼트들을 전달할 수 있다.
열 인터럽트 소프트웨어(50)는 다이아몬드(52)에 표시된 바와 같이 주파수 변화, 고온 또는 저온 인터럽트가 수신되었는지를 초기에 판정한다. 고온 및 저온 인터럽트는 종래의 소프트웨어로 제어되는 인터럽트이다. 주파수 변화 인터럽트는 하드웨어로 제어되나 종래의 하드웨어로 제어되는 인터럽트와는, 운영 체계가 예컨대, 보장된 대역폭 할당을 가능하게 하는 적절한 시간에 통지된다는 점에서 다르다.
일부 시스템에서는, 단순히 프로세서를 스로틀링하기 보다는, 프로세서(12)의 성능 상태가 직접 제어된다. 이 성능 상태에는 주파수 및 전압이 모두 포함된다. 이러한 경우, 스로틀링은 프로세서(12)가 온-다이 센서(15) 트립 포인트 이상 또는 이하로 감에 따라 성능 상태를 직접 감소 또는 증가시킬 것이다.
(프로세서가 점차 가열됨에 따라) 보다 낮은 성능 상태로 천이시, 프로세서 전압 강하에 앞서 프로세서의 주파수가 감소된다. 운영 체계에서 본 바와 같이 프로세서의 성능이 즉시 감소할 것이다. 즉, 성능은 주파수가 감소하자마자 감소한다.
(프로세서 냉각으로 인하여) 보다 높은 성능 상태로 천이시, 전압이 보다 높은 수준으로 변할 때까지 프로세서의 주파수는 증가하지 않는다. 이 전압 변화는 많은 인자들에 의존한다. 보통, 전압 변화를 생성하는 데에는 어느 정도의 시간이 걸린다. 그 결과, 전압 변화시 인터럽트 이벤트가 발생할지라도 성능 변화는 이 인터럽트 이벤트에 뒤쳐질 것이다.
그 대신, 인터럽트 이벤트는 프로세서의 PLL(phase locked loop)이 새로운 주파수 수준에서 재고정(relocked)될 때마다 발생한다. 그러므로, 인터럽트가 발행될 때, 운영 체계는 프로세서의 성능 상태를 판독하고, 프로세서의 새로운 성능 수준을 결정하고, 요구되는 대로 보장된 대역폭 할당을 재조정하고, 그 다음 정상적인 동작을 재개한다.
도 2를 참조하면, 다이아몬드(52)에서 이벤트가 검출되면, 프로세서 성능 상태가 판독된다. 이는 프로세서 레지스터들에 액세스함으로써 행해져 이후의 동작을 취하는 것 뿐만 아니라 그 이벤트의 근거(cause)을 판정할 것이다. 코드의 양은 작고, 한정되어 있으며(bounded) 일부 실시예에서는 물리적인 메모리에서 페이지 로크(page lock) 될 수 있다.
운영 체계가, 다이아몬드(52)에서 판정된 바와 같이, 열 관리 인터럽트 벡터들 중 임의의 세개의 소스들을 수신할 때, 프로세서는 프로세서가 고온인지 저온인지를 확인하고 블록(54)에 도시된 바와 같이, 사전 정의된 레지스터들에 기초하여 현재의 성능 상태를 관찰하고 적절한 동작을 취한다. 전형적인 레지스터들에는 온-다이 스로틀링 제어 및 성능 상태 상태 레지스터(performance state status register)가 포함된다.
본 발명의 일실시예에 따르면, 고온 및 저온 인터럽트 생성에 대한 기존의 인터럽트 모델들에 새로운 인터럽트가 추가될 수 있다. 주파수 변화 인터럽트는 운영 체계가 이벤트를 인에이블시키거나 디스에이블시킬 수 있도록 하는 인에이블 비트를 가질 수 있지만, 일부 실시예에서 상태 레지스터는 필요하지 않다.
그 다음, 다이아몬드(56)에서 확인 결과 현재의 프로세서 성능 상태의 관점에서 대역폭 약정이 조정될 필요가 있는지를 결정한다. 그렇다면, 이 약정은 블록(58)에 표시된 바와 같이 조정된다. 그 이후에, 대역폭 스케줄링이 블록(60)에 표시된 바와 같이 재개될 수 있다. 다이아몬드(62)에서의 확인은 주기적 타이머가 기능해야 하는지를 판정한다. 운영 체계는, 블록(64)에 표시된 바와 같이, 인터럽트가 프로세서의 열 이벤트를 나타내면 프로세서의 온도를 모니터링하기 시작하도록 주기적 타이머 이벤트를 인에이블시킬 것이다.
도 3에 도시된 주기적 타이머 소프트웨어(70)은, 블록(72)에 표시된 바와 같이 시간을 증분한다. 다이아몬드(74)에서 확인 결과 시간이 만료되었는지를 결정한다. 만일 그렇다면, 다이아몬드(76)에서의 확인은 프로세서가 여전히 고온인지를 판정한다. 만일 그렇다면, 블록(78)에 도시된 바와 같이, 운영 체계는 프로세서 성능 상태를 감소 및/또는 온-다이 스로틀링을 인에이블 및/또는 온-다이 스로틀링의 내부 유효 주파수를 증가시킬지를 결정할 것이다.
다이아몬드(80)의 확인은 프로세서가 이제 냉각되었는지를 판정한다. 그렇다면, 블록(82)에 도시된 바와 같이, 운영 체계는 프로세서 성능 상태를 증가 및/또는 온-다이 스로틀링을 디스에이블 및/또는 온-다이 스로틀링의 내부 유효 주파수를 증가시킬지를 결정할 것이다. 그 후에, 블록(84)에 나타낸 바와 같이 시간이 리셋되고 단계들이 다시 순환한다.
모바일 플랫폼들에서는 특히, 이상 기술한 소프트웨어 및 하드웨어로 제어되는 솔루션들을 이용함으로써 성능 향상을 실현할 수 있다. 하드웨어로 제어되는 스로틀링이 운영 체계 디스패치 알고리즘과 공존하도록 허용함으로써, 일부 실시예에서는 보장된 대역폭 할당 스킴을 여전히 가능하게 하면서도 빠르고 효과적인 열 관리를 달성할 수 있다.
본 발명이 제한된 수의 실시예들에 관해 기술되었지만, 본 기술분야의 숙련자라면 그로부터 많은 변경과 변형이 이루어질 수 있음을 알 것이다. 첨부된 청구항들은 본 발명의 진정한 사상 및 범위 내에 있는 이러한 모든 변경과 변형들을 포함하는 것이다.

Claims (30)

  1. 프로세서의 냉각에 응답하여 프로세서의 주파수가 변했는지를 검출하는 단계; 및
    상기 주파수 변화의 검출에 응답하여 인터럽트(interrupt)를 생성하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    인터럽트를 운영 체계에 제공하는 단계를 포함하는 방법.
  3. 제1항에 있어서,
    상기 인터럽트에 응답하여 상기 프로세서의 성능 상태를 판독하는 단계를 포함하는 방법.
  4. 제3항에 있어서,
    새로운 성능 상태를 판정하는 단계를 포함하는 방법.
  5. 제4항에 있어서,
    대역폭 할당을 스케줄링하는 단계를 포함하는 방법.
  6. 제2항에 있어서,
    주기적 타이머를 셋업하는 단계를 포함하는 방법.
  7. 제6항에 있어서,
    주기적인 간격들로 상기 프로세서 온도를 모니터링하는 단계를 포함하는 방법.
  8. 제1항에 있어서,
    고온 또는 저온 인터럽트를 검출하고 상기 고온 또는 저온 인터럽트 검출에 응답하여 프로세서 성능 상태를 판독하는 단계를 포함하는 방법.
  9. 제1항에 있어서,
    상기 주파수 변화를 검출하는 단계는 프로세서의 PLL(phase locked loop) 이벤트를 검출하는 단계를 포함하는 방법.
  10. 제1항에 있어서,
    하드웨어로 제어되는 스로틀링(throttling)을 사용하는 단계를 포함하는 방법.
  11. 프로세서의 냉각에 응답하여 프로세서의 주파수가 변했는지를 검출하는 단계; 및
    상기 주파수 변화의 검출에 응답하여 인터럽트(interrupt)를 생성하는 단계
    를 프로세서 기반 시스템이 수행하도록 하는 명령어들을 저장하는 매체를 포함하는 물품.
  12. 제11항에 있어서,
    상기 프로세서 기반 시스템이 인터럽트를 운영 체계에 제공하도록 하는 명령어들을 더 저장하는 물품.
  13. 제11항에 있어서,
    상기 프로세서 기반 시스템이 상기 인터럽트에 응답하여 상기 프로세서의 성능 상태를 판독하도록 하는 명령어들을 더 저장하는 물품.
  14. 제13항에 있어서,
    상기 프로세서 기반 시스템이 새로운 성능 상태를 판정하도록 하는 명령어들을 더 저장하는 물품.
  15. 제14항에 있어서,
    상기 프로세서 기반 시스템이 대역폭 할당을 스케줄링하도록 하는 명령어들을 더 저장하는 물품.
  16. 제12항에 있어서,
    상기 프로세서 기반 시스템이 주기적 타이머를 셋업하도록 하는 명령어들을 더 저장하는 물품.
  17. 제16항에 있어서,
    상기 프로세서 기반 시스템이 주기적인 간격들로 상기 프로세서 온도를 모니터링하도록 하는 명령어들을 더 저장하는 물품.
  18. 제11항에 있어서,
    상기 프로세서 기반 시스템이 고온 또는 저온 인터럽트를 검출하도록 하고 상기 고온 또는 저온 인터럽트 검출에 응답하여 프로세서 성능 상태를 판독하도록 하는 명령어들을 더 저장하는 물품.
  19. 제11항에 있어서,
    상기 프로세서 기반 시스템이 프로세서의 PLL(phase locked loop) 이벤트를 검출하도록 하는 명령어들을 더 저장하는 물품.
  20. 제11항에 있어서,
    상기 프로세서 기반 시스템이 하드웨어로 제어되는 스로틀링(throttling)을사용하도록 하는 명령어들을 더 저장하는 물품.
  21. 프로세서;
    상기 프로세서에 결합된 온도 센서; 및
    프로세서 냉각에 응답하여 상기 프로세서의 주파수가 변하였는지를 상기 프로세서가 검출하도록 하고 상기 주파수 변화 검출에 응답하여 인터럽트를 생성하도록 하는 명령어들을 저장하는 저장장치
    를 포함하는 시스템.
  22. 제21항에 있어서,
    운영 체계를 저장하는 저장장치를 포함하고, 상기 인터럽트는 상기 운영 체계에 제공되는 시스템.
  23. 제21항에 있어서,
    상기 저장장치는 상기 프로세서가 인터럽트에 응답하여 상기 프로세서의 성능 상태를 판독하도록 하는 명령어들을 저장하는 시스템.
  24. 제21항에 있어서,
    상기 프로세서는 새로운 성능 상태를 판정하는 시스템.
  25. 제24항에 있어서,
    상기 저장장치는 상기 프로세서가 대역폭 할당을 스케줄링하도록 하는 명령어들을 저장하는 시스템.
  26. 제22항에 있어서,
    상기 저장장치는 상기 프로세서가 주기적 타이머를 셋업하도록 하는 명령어들을 저장하는 시스템.
  27. 제26항에 있어서,
    상기 저장장치는 상기 프로세서가 주기적인 간격들로 상기 프로세서 온도를 모니터링하도록 하는 명령어들을 저장하는 시스템.
  28. 제21항에 있어서,
    상기 저장장치는 상기 프로세서가 고온 또는 저온 인터럽트를 검출하도록 하고 상기 고온 또는 저온 인터럽트 검출에 응답하여 프로세서 성능 상태를 판독하도록 하는 명령어들을 저장하는 시스템.
  29. 제21항에 있어서,
    상기 저장장치는 상기 프로세서가 프로세서의 PLL(phase locked loop) 이벤트를 검출하도록 하는 명령어들을 저장하는 시스템.
  30. 제21항에 있어서,
    하드웨어로 제어되는 스로틀링(throttling)을 포함하는 시스템.
KR1020047009110A 2001-12-12 2002-11-15 열 관리가 조절된 운영 체계 KR100647166B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/020,848 2001-12-12
US10/020,848 US6823240B2 (en) 2001-12-12 2001-12-12 Operating system coordinated thermal management
PCT/US2002/036708 WO2003050663A2 (en) 2001-12-12 2002-11-15 Operating system coordinated thermal management

Publications (2)

Publication Number Publication Date
KR20040068938A true KR20040068938A (ko) 2004-08-02
KR100647166B1 KR100647166B1 (ko) 2006-11-23

Family

ID=21800914

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020047009110A KR100647166B1 (ko) 2001-12-12 2002-11-15 열 관리가 조절된 운영 체계

Country Status (8)

Country Link
US (2) US6823240B2 (ko)
KR (1) KR100647166B1 (ko)
CN (1) CN100458651C (ko)
AU (1) AU2002366510A1 (ko)
DE (1) DE10297518B4 (ko)
GB (1) GB2400217B (ko)
TW (1) TW571186B (ko)
WO (1) WO2003050663A2 (ko)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7275012B2 (en) * 2002-12-30 2007-09-25 Intel Corporation Automated method and apparatus for processor thermal validation
US7141953B2 (en) 2003-09-04 2006-11-28 Intel Corporation Methods and apparatus for optimal voltage and frequency control of thermally limited systems
US7269005B2 (en) * 2003-11-21 2007-09-11 Intel Corporation Pumped loop cooling with remote heat exchanger and display cooling
KR101136036B1 (ko) * 2003-12-24 2012-04-18 삼성전자주식회사 유휴 모드에서의 전력 소모가 감소된 프로세서 시스템 및그 방법
US7467059B2 (en) * 2004-06-28 2008-12-16 Intel Corporation Extended thermal management
US7363523B2 (en) * 2004-08-31 2008-04-22 Intel Corporation Method and apparatus for controlling power management state transitions
US7664970B2 (en) 2005-12-30 2010-02-16 Intel Corporation Method and apparatus for a zero voltage processor sleep state
US7596464B2 (en) * 2004-09-29 2009-09-29 Intel Corporation Determining the thermal influence of components within a system and usage of a matrix for power and thermal management
US7386737B2 (en) * 2004-11-02 2008-06-10 Intel Corporation Method and apparatus to control temperature of processor
US7379718B2 (en) * 2004-12-20 2008-05-27 Marvell World Trade Ltd. Method and apparatus to manage power consumption of a semiconductor device
CN100435070C (zh) * 2005-04-05 2008-11-19 深圳市顶星数码网络技术有限公司 用于笔记本电脑的主被动切换式散热系统
US7590509B2 (en) 2005-06-23 2009-09-15 Hewlett-Packard Development Company, L.P. System and method for testing a processor
US7464278B2 (en) 2005-09-12 2008-12-09 Intel Corporation Combining power prediction and optimal control approaches for performance optimization in thermally limited designs
US7386414B2 (en) * 2005-11-29 2008-06-10 International Business Machines Corporation Generation of hardware thermal profiles for a set of processors
US20080011467A1 (en) * 2006-06-23 2008-01-17 Intel Corporation Method, apparatus and system for thermal management using power density feedback
US8306771B2 (en) * 2006-10-23 2012-11-06 Texas Instruments Northern Virginia Limited Cell based temperature monitoring
US8423832B2 (en) * 2006-11-07 2013-04-16 Hewlett-Packard Development Company, L.P. System and method for preventing processor errors
US7992151B2 (en) * 2006-11-30 2011-08-02 Intel Corporation Methods and apparatuses for core allocations
WO2008078131A1 (en) * 2006-12-27 2008-07-03 Nokia Corporation Power control
US20090235108A1 (en) * 2008-03-11 2009-09-17 Gold Spencer M Automatic processor overclocking
US8498729B2 (en) 2008-08-29 2013-07-30 Smp Logic Systems Llc Manufacturing execution system for use in manufacturing baby formula
US8122270B2 (en) * 2008-09-29 2012-02-21 Intel Corporation Voltage stabilization for clock signal frequency locking
US8612998B2 (en) * 2010-09-23 2013-12-17 Intel Corporation Coordinating device and application break events for platform power saving
US8311683B2 (en) * 2009-04-29 2012-11-13 International Business Machines Corporation Processor cooling management
US8831904B2 (en) 2009-08-05 2014-09-09 Texas Instruments Incorporated Cell based temperature monitoring
US8738949B2 (en) * 2009-08-31 2014-05-27 Empire Technology Development Llc Power management for processor
TWI486763B (zh) * 2011-07-18 2015-06-01 Wistron Corp 電腦系統之過熱保護方法及相關裝置
US9250688B2 (en) 2011-12-09 2016-02-02 Intel Corporation Adaptive graphics subsystem power and performance management
US9946327B2 (en) * 2015-02-19 2018-04-17 Qualcomm Incorporated Thermal mitigation with power duty cycle
US10275001B2 (en) * 2015-06-26 2019-04-30 Intel Corporation Thermal throttling of electronic devices
CN105045668A (zh) * 2015-07-28 2015-11-11 深圳市万普拉斯科技有限公司 运算资源的散热控制方法和运算控制系统
CN105446438A (zh) * 2015-11-18 2016-03-30 浪潮集团有限公司 一种防止基于Intel Atom处理器无风冷便携式设备过热的方法
CN107357385B (zh) * 2017-06-09 2020-04-28 努比亚技术有限公司 基于频率控制温度的方法、终端及计算机可读存储介质
US10386899B2 (en) 2017-08-08 2019-08-20 GM Global Technology Operations LLC Methods and systems for configurable temperature control of controller processors
DE112017008123T5 (de) * 2017-09-29 2020-07-02 Intel Corporation Methoden zum Steuern von Prozessorleistungszuständen
US20240085971A1 (en) * 2022-09-09 2024-03-14 Qualcomm Incorporated Limits management for a processor power distribution network

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5153535A (en) 1989-06-30 1992-10-06 Poget Computer Corporation Power supply and oscillator for a computer system providing automatic selection of supply voltage and frequency
US5021679A (en) 1989-06-30 1991-06-04 Poqet Computer Corporation Power supply and oscillator for a computer system providing automatic selection of supply voltage and frequency
US6158012A (en) * 1989-10-30 2000-12-05 Texas Instruments Incorporated Real-time power conservation and thermal management for computers
US7216064B1 (en) 1993-09-21 2007-05-08 Intel Corporation Method and apparatus for programmable thermal sensor for an integrated circuit
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
US5723998A (en) 1994-08-10 1998-03-03 Yamaha Corporation Electronic circuit with operation self-control function
US5734585A (en) 1994-11-07 1998-03-31 Norand Corporation Method and apparatus for sequencing power delivery in mixed supply computer systems
JP3075957B2 (ja) 1995-05-30 2000-08-14 株式会社東芝 コンピュータシステム
US6029119A (en) * 1996-01-16 2000-02-22 Compaq Computer Corporation Thermal management of computers
US5940785A (en) * 1996-04-29 1999-08-17 International Business Machines Corporation Performance-temperature optimization by cooperatively varying the voltage and frequency of a circuit
US5760636A (en) * 1996-06-28 1998-06-02 Intel Corporation Adjusting clock frequency and voltage supplied to a processor in a computer system
US5978864A (en) 1997-06-25 1999-11-02 Sun Microsystems, Inc. Method for thermal overload detection and prevention for an intergrated circuit processor
US6140860A (en) * 1997-12-31 2000-10-31 Intel Corporation Thermal sensing circuit
US6112164A (en) * 1998-03-31 2000-08-29 Compaq Computer Corporation Computer system thermal management
US6172611B1 (en) * 1998-10-19 2001-01-09 Telcom Semiconductor, Inc. Independent hardware thermal sensing and monitoring
US6182232B1 (en) 1999-01-29 2001-01-30 Micron Electronics, Inc. Power and thermal management based on a power supply output
US6363490B1 (en) * 1999-03-30 2002-03-26 Intel Corporation Method and apparatus for monitoring the temperature of a processor
JP3049051B1 (ja) * 1999-03-31 2000-06-05 新潟日本電気株式会社 中央処理装置の温度制御回路
JP2001056724A (ja) * 1999-08-18 2001-02-27 Nec Niigata Ltd パーソナルコンピュータの冷却方式
KR100601617B1 (ko) 1999-08-20 2006-07-14 삼성전자주식회사 Cpu 열제어 기능을 갖는 개인용 컴퓨터 및 그 cpu 열제어방법
JP3715475B2 (ja) 1999-09-13 2005-11-09 富士通株式会社 電子機器用温度制御回路および電子機器の温度制御方法
JP2003514296A (ja) * 1999-11-09 2003-04-15 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド プロセッサの動作パラメータをその環境に従って動的に調節する方法
US7263567B1 (en) * 2000-09-25 2007-08-28 Intel Corporation Method and apparatus for lowering the die temperature of a microprocessor and maintaining the temperature below the die burn out
TW538330B (en) * 2001-06-15 2003-06-21 Compal Electronics Inc Peripheral device equipped with a thermal control circuit for a portable computer
US6889332B2 (en) * 2001-12-11 2005-05-03 Advanced Micro Devices, Inc. Variable maximum die temperature based on performance state

Also Published As

Publication number Publication date
US20040268174A1 (en) 2004-12-30
CN100458651C (zh) 2009-02-04
WO2003050663A2 (en) 2003-06-19
GB0413109D0 (en) 2004-07-14
AU2002366510A8 (en) 2003-06-23
DE10297518T5 (de) 2004-10-07
AU2002366510A1 (en) 2003-06-23
CN1602460A (zh) 2005-03-30
TW571186B (en) 2004-01-11
US6823240B2 (en) 2004-11-23
US20030109967A1 (en) 2003-06-12
US7054720B2 (en) 2006-05-30
GB2400217A (en) 2004-10-06
WO2003050663A3 (en) 2004-01-15
DE10297518B4 (de) 2008-12-04
GB2400217B (en) 2006-01-18
KR100647166B1 (ko) 2006-11-23

Similar Documents

Publication Publication Date Title
KR100647166B1 (ko) 열 관리가 조절된 운영 체계
US6535798B1 (en) Thermal management in a system
US6272642B2 (en) Managing a system's performance state
US10775863B2 (en) Methods and apparatuses for controlling the temperature of a data processing system
US6118306A (en) Changing clock frequency
KR100518376B1 (ko) 프로세서 전력 관리를 개선하기 위한 방법 및 장치
US7028196B2 (en) System, method and apparatus for conserving power consumed by a system having a processor integrated circuit
US20060161375A1 (en) Optimizing processing speed based on measured temperatures
KR100277247B1 (ko) 프로세서 및 그의 성능을 최적화하는 방법
US7451332B2 (en) Methods and apparatuses for controlling the temperature of a data processing system
US7389438B2 (en) Method for detecting temperature and activity associated with a processor and using the results for controlling power dissipation associated with a processor
US7657764B2 (en) Method and apparatus for on-demand power management
US7774627B2 (en) Microprocessor capable of dynamically increasing its performance in response to varying operating temperature
US20060136763A1 (en) Method and apparatus for on-demand power management
KR20020050270A (ko) 환경에 따른 프로세서의 작동 파라미터의 동적 조절방법
US20070250219A1 (en) Microprocessor capable of dynamically reducing its power consumption in response to varying operating temperature
WO1997032247A1 (en) Method and apparatus for enhancing performance of a processor
WO2005073828A2 (en) Method and apparatus for over clocking in a digital processing system
EP1110136A1 (en) Control of memory access operations

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
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: 20121019

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20131101

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20141031

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20151030

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20161028

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20171027

Year of fee payment: 12