KR20070105316A - 주문형 전력 관리를 위한 방법 및 장치 - Google Patents

주문형 전력 관리를 위한 방법 및 장치 Download PDF

Info

Publication number
KR20070105316A
KR20070105316A KR1020077016753A KR20077016753A KR20070105316A KR 20070105316 A KR20070105316 A KR 20070105316A KR 1020077016753 A KR1020077016753 A KR 1020077016753A KR 20077016753 A KR20077016753 A KR 20077016753A KR 20070105316 A KR20070105316 A KR 20070105316A
Authority
KR
South Korea
Prior art keywords
processing
clock
voltages
frequency
processing system
Prior art date
Application number
KR1020077016753A
Other languages
English (en)
Other versions
KR101419789B1 (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 KR20070105316A publication Critical patent/KR20070105316A/ko
Application granted granted Critical
Publication of KR101419789B1 publication Critical patent/KR101419789B1/ko

Links

Images

Classifications

    • 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/26Power supply means, e.g. regulation thereof
    • 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
    • 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/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/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/329Power saving characterised by the action undertaken by task scheduling
    • 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)
  • Power Sources (AREA)
  • Supply And Distribution Of Alternating Current (AREA)

Abstract

주문형 전력 관리를 위한 방법은 제1 전압 및 주파수 세트에서 동작하는 프로세싱 시스템의 프로세싱 주문을 모니터링하고, 상기 프로세싱 주문에 응답하여 제2 전압 및 주파수 세트를 생성한다. 상기 방법은 상기 프로세싱 시스템의 중지(halting) 없이 제1 전압 및 주파수 세트로부터 제2 전압 및 주파수 세트로 스위칭한다.

Description

주문형 전력 관리를 위한 방법 및 장치{METHOD AND APPARATUS FOR ON­DEMAND POWER MANAGEMENT}
본 발명은 일반적으로 전력 관리에 관한 것으로, 특히 애플리케이션 프로세싱 주문들(application processing demands)에 응답하여 전압들 및 주파수들을 관리하는 것에 관한 것이다.
디지털 전자 프로세싱 시스템들이 더 높은 동작 주파수와 더 작은 장치 크기를 지향함에 따라, 휴대용 시스템들의 시스템 성능을 유지하고 배터리 수명을 연장시키는 동시에 열 부하를 방지하기 위하여 전력 관리가 점점 더 중요하게 되었다.
디지털 로직 회로들에서 소모 전력(power dissipation)의 두 개의 주요 소스들은 정적 소모 전력과 동적 소모 전력이다. 정적 소모 전력은 온도, 장치 기술 및 프로세싱 변수들에 종속적이고, 주로 누설 전류로 이루어진다. 동적 소모 전력은 디지털 회로의 우세한 손실 인자이고, 동작 클록 주파수, 용량성 부하와 동작 전압의 제곱에 비례한다. 용량성 부하가 장치 기술과 프로세싱 변수들에 매우 종속적이므로, 대부분의 동적 전력 관리에 대한 접근법들은 주파수 및 전압 제어에 초점을 맞춘다.
전력 관리에 대한 한 가지 종래 접근법은 코어 클록 주파수들 및 전압들을 조절하기 위하여 프로세싱 시스템을 중지시키고, 그 시간 동안에 프로세서는 운영체제 코드 또는 애플리케이션 코드를 실행하지 않고, 그런 다음 새로운 주파수들 및 전압들이 안정화된 이후에 상기 시스템을 재시작한다. 이러한 접근법은 도 1에 도시된 바와 같은 미국 특허 6,754,837에 개시되어 있다.
도 1은 프로그램 가능 전압 ID(VID) 레지스터(3), 클록 주파수 제어 레지스터(4) 그리고 카운트 레지스터(5)를 포함하는 프로세서 또는 프로세싱 시스템(1)을 도시한다. 상기 프로세서가 전압 및/또는 주파수의 변화가 원해짐을 결정하는 경우, 상기 원해지는 전압 및 주파수 제어 정보가 상기 VID 레지스터와 상기 클록 주파수 제어 레지스터에 각각 로딩된다. 상기 레지스터들에 대한 액세스는 정지 요청(9)을 CPU 코어 로직(11)에 트리거링한다. 상기 정지 요청에 응답하여, CPU는 현재 명령을 완료하고, 프로세싱이 정지되었음을 전력 제어기(7)에 통보하기 위하여 정지 허가 신호(13)를 제공한다. 상기 정지 허가 상태는 카운트 레지스터의 값에 의해 결정된 시간 동안에 유지되고, 동시에 전압 및/또는 주파수가 변화하고 안정화된다. 상기 정지 허가 상태 동안에 손실된 프로세싱 시간에 외에도, 상기 접근법은 프로세서가 재시작할 때 커다란 일시적 전력 서지들을 야기한다.
미국 특허 6,788,156에 개시된 전력 관리에 대한 종래의 다른 접근법은 프로세서가 동작하는 동안에 프로세서의 클록 주파수를 변화시키지만, 커다란 주파수 단계들이 야기할 수도 있는 프로세싱 오류들을 방지하기 위하여 작은 증가분들(increments)에서 주파수 변화들이 이루어질 것을 요구한다. 그 결과로, 상기 접근법은 원하는 동작 주파수를 달성하기 위해 상당한 기간의 시간을 요구할 수 있 다.
그러나, 미국 특허 6,778,418에 개시된 전력 관리에 대한 종래의 또 다른 접근법은 검색용 테이블(lookup table)을 통해서든 또는 주파수 대 전압 변환기(frequency to voltage converter)의 사용을 통해서든 전압과 주파수 사이에 고정된 관계를 사용한다. 상기 접근법에서, 주파수 증가는 항상 전압 증가 이후에 이루어지고, 주파수 감소는 항상 전압 감소 이전에 이루어진다. 부가하여, 주파수 증가는 전압이 상응하는 전압까지 램프 업(ramp up) 되는 동안에 지연된다. 새로운 주파수 및 전압은 독립적으로 스케일링(scaling)되지 않으며, 새로운 동작 포인트는 애플리케이션들의 프로세싱 주문에 대하여 최적이 아닐 수 있다.
본 발명은 예시에 의해 기술되지만 동반된 도면들로 제한되지는 않는다.
도 1은 종래의 전력 관리 시스템에 대한 도면;
도 2A는 프로세싱 시스템의 주문형 전력 관리의 제1 실시예에 대한 도면;
도 2B는 분산형 프로세싱 시스템의 주문형 전력 관리의 제1 실시예에 대한 도면;
도 2C는 주문형 전력 관리기의 제1 실시예에 대한 도면;
도 3은 주문형 전력 관리의 제1 실시예에서 보상 엔진(compensation engine)에 대한 도면;
도 4는 주문형 전력 관리의 제1 실시예에서 전력 분배 관리기에 대한 도면;
도 5는 주문형 전력 관리의 제1 실시예에서 클록 도메인 관리기에 대한 도면;
도 6은 주문형 전력 관리의 위상-매칭의 제1 실시예에 대한 도면;
도 7은 주문형 전력 관리의 제1 실시예를 도시하는 상태도;
도 8은 주문형 전력 관리의 제1 실시예에서 전압 및 주파수 제어에 대한 도면;
도 9A는 주문형 전력 관리의 제1 실시예에서 한 방법에 대한 도면;
도 9B는 도 9A에 의해 도시된 상기 방법의 제1 실시예에 대한 도면;
도 9C는 도 9A에 의해 도시된 상기 방법의 추가 실시예에 대한 도면; 및
도 9D는 도 9A에 의해 도시된 상기 방법의 또 다른 추가 실시예에 대한 도면.
하기의 설명에서, 본 발명의 실시예들에 대한 완전한 이해를 제공하기 위하여, 특정한 구성요소들, 장치들, 방법들 등의 예시들과 같은 다수의 특정 세부사항들이 진술된다. 그러나, 이러한 특정 세부사항들이 본 발명의 실시예들을 실행하기 위해 사용되어야만 하는 것은 아님은 당업자에 명백하다. 다른 예시들에서, 공지된 재료들 또는 방법들은 본 발명의 실시예를 불필요하게 흐리는 것을 방지하기 위하여 그 상세한 내용이 기술되지 않는다. 여기서, 엘리먼트들을 연결시키는 "라인" 또는 "라인들"은 단일 라인 또는 다중 라인일 수 있음이 주지되어야 한다. 여기서 사용된 "커플링된"이란 용어는 하나 이상의 개입용 구성요소들을 통해 직접 또는 간접적으로 커플링됨을 의미할 수 있다. 라인들 및/또는 다른 커플링 엘리먼트들은 자신들이 운반하는 신호들의 성질에 의해 식별될 수도 있음(예를 들면, "클록 라인"은 암묵적으로 "클록 신호"를 전달할 수 있다)과, 입출력 포트들은 자신들이 수신하거나 전송하는 신호들의 정실에 의해 식별될 수도 있음(예를 들면, "클록 입력"은 암묵적으로 "클록 신호"를 수신할 수 있다)이 당업자에 명백할 것이다.
주문형 전력 관리를 위한 방법 및 장치가 기재된다. 제1 실시예에서, 상기 방법은 하나 이상의 제1 전압과 기준 주파수에 위상 동기된 하나 이상의 제1 클록 주파수에서 동작하는 프로세싱 시스템의 프로세싱 주문을 모니터링하는 단계를 포함한다. 또한, 상기 방법은 상기 프로세싱 주문에 응답하여 하나 이상의 제2 클록 주파수를 생성하는 단계를 포함하는데, 여기서 상기 하나 이상의 제2 클록 주파수는 기준 주파수에 위상 동기되고, 상기 하나 이상의 제1 클록 주파수에 위상 매칭된다. 또한, 상기 방법은 상기 프로세싱 시스템의 중지(halting) 없이 상기 하나 이상의 제1 클록 주파수로부터 상기 하나 이상의 제2 클록 주파수로 스위칭하는 단계를 포함한다. 제1 실시예에서, 상기 방법은 상기 프로세싱 주문에 응답하여 하나 이상의 제2 전압을 생성하는 단계, 그리고 상기 시스템의 중지 없이 상기 하나 이상의 제1 전압으로부터 상기 하나 이상의 제2 전압으로 스위칭하는 단계를 더 포함한다.
제1 실시예에서, 상기 장치는 프로세싱 시스템 상의 애플리케이션 프로세싱 주문을 모니터링하고, 상기 프로세싱 시스템이 동작하는 하나 이상의 전압 및 하나 이상의 클록 주파수를 결정하기 위한 시스템 제어기를 포함한다. 또한, 상기 장치 는 상기 시스템 제어기에 커플링되어 있으면서, 하나 이상의 동작 전압을 상기 프로세싱 시스템에 제공하고 상기 프로세싱 시스템의 중지 없이 하나 이상의 제1 전압과 하나 이상의 제2 전압 사이를 스위칭하기 위한 전력 분배 관리기를 포함한다. 또한, 상기 장치는 상기 시스템 제어기에 커플링되어 있으면서, 하나 이상의 클록 신호들을 상기 프로세싱 시스템에 제공하고 상기 프로세싱 시스템의 중지 없이 하나 이상의 제1 클록 주파수와 하나 이상의 제2 클록 주파수 사이를 스위칭하기 위한 클록 도메인 관리기를 포함한다. 상기 하나 이상의 제1 클록 주파수와 상기 하나 이상의 제2 클록 주파수는 공통 기준 주파수에 위상 동기되고, 상기 하나 이상의 제2 클록 주파수는 상기 하나 이상의 클록 주파수에 위상 매칭된다. 제1 실시예에서, 상기 장치는 또한 시스템 제어기로부터 전압 및 주파수 명령들을 수신하고 온도 및 프로세싱 변수들에 대한 전압 및 주파수 명령을 보상하기 위하여, 시스템 제어기, 전력 분배 관리기 그리고 클록 도메인 관리기에 커플링된 보상 엔진을 포함한다.
도 2A는 프로세싱 시스템(100)의 주문형 전력 관리의 제1 실시예를 도시한다. 상기 프로세싱 시스템(100)은 마이크로프로세서 또는 중앙 처리 유닛 또는 유사 종류와 같은 범용 프로세싱 장치일 수 있는 시스템 프로세서(101)를 포함할 수 있다. 대안적으로, 시스템 프로세서(101)는 또한 주문형 반도체(ASIC), 필드 프로그램 가능 게이트 어레이(FPGA), 디지털 신호 프로세서(DSP) 또는 유사 종류와 같은 전용 프로세싱 장치일 수 있다. 시스템 프로세서(101)는 또한 범용 프로세싱 장치와 전용 프로세싱 장치의 임의의 조합일 수 있다. 시스템 프로세서(101)는 시 스템 프로세서(101)와 시스템 데이터 및 명령들을 주고받을 수 있는 시스템 버스(102)에 커플링될 수 있다. 상기 시스템 버스(102)는 프로그램들과 데이터를 저장할 수 있는 메모리(103)에 커플링될 수 있다. 상기 메모리(103)는 랜덤 액세스 메모리(RAM)와 읽기 전용 메모리(ROM)를 포함하여 임의의 타입의 메모리일 수 있으나, 이에 제한되는 것은 아니다. 시스템 버스(102)는 또한 시스템 명령들 및 데이터를 주변장치들(104-1 내지 104-k)과 주고받을 수 있는 상기 주변장치들(104-1 내지 104-k)에 커플링될 수 있다.
또한, 프로세싱 시스템(100)은 시스템 버스(102), 주파수 소스(108) 그리고 전압 소스(109)에 커플링될 수 있는 전력 관리기(105)를 포함할 수 있다. 전력 관리기(105)는 또한 클록 버스(106) 및 전압 버스(107)를 통해 시스템 프로세서(101)와 주변장치들(104-1 내지 104-k)에 커플링될 수 있다. 제1 실시예에서, 도 2A에 도시된 바와 같이, 전력 관리기(105)는 외부 주파수 소스(108)에 커플링될 수 있다. 전력 관리기(105)는 클록 신호들을 시스템 프로세서(101)와 주변장치들(104-1 내지 104-k)에 제공하기 위하여, 주파수 소스(108)로부터의 기준 주파수(f0)를 하나 이상의 클록 주파수들(f1 내지 fm)로 변환할 수 있는데, 상기 하나 이상의 클록 주파수들(f1 내지 fm)은 기준 주파수(f0)에 위상 동기된다. 다른 실시예에서, 주파수 소스(108)는 전력 관리기(105)에 통합될 수 있고, 예를 들면 집적회로(IC) 다이 기판, 다중-칩 모듈 기판, 또는 유사 종류와 같은 공통 캐리어 기판 상에 전력 관리기(105)와 함께 위치할 수 있다. 전력 관리기(105)는 또한 전압들을 시스템 프로 세서(101)와 주변장치들(104-1 내지 104-k)에 제공하기 위하여, 전압 소스(109)로부터의 전압(V0)을 하나 이상의 동작 전압들(V1 내지 Vn)로 변환할 수 있다. 도 2A에 도시된 실시예에서, 시스템 프로세서(101)와 주변장치들(104-1 내지 104-k)의 각각은 m=n=k+1이 되게 하나의 전압 입력 및 하나의 클록 입력을 가지도록 도시된다. 다른 실시예에서, 임의의 시스템 프로세서(101)와 주변장치들(104-1 내지 104-k)이 하나 이상의 동작 전압 및/또는 하나 이상의 클록 신호를 요구할 수도 있음은 당업자에 자명할 것이다. 제1 실시예에서, 둘 이상의 시스템 프로세서(101), 메모리(103), 전력 관리기(105), 주파수 소스(108) 그리고 주변장치들(104-1 내지 104-k)이 공통 캐리어 기판, 예를 들면 도 2B에 도시된 마더보드(110), 도 2B에 도시된 도터보드(111), 또는 라인 카드와 같은 인쇄회로기판(PCB) 상에 위치할 수 있다. 대안적으로, 둘 이상의 시스템 프로세서(101), 메모리(103), 전력 관리기(105), 주파수 소스(108) 그리고 주변장치들(104-1 내지 104-k)이 위치할 수 있는 상기 공통 캐리어 기판은 집적회로(IC) 다이(die) 기판일 수 있다.
도 2B를 참조하면, 주변장치들(104-1 내지 104-k)은 임의의 타입의 장치, 구성요소, 회로, 시스템 버스(102)를 통해 시스템 프로세서(101)와 통신할 수 있는 서브시스템 또는 시스템일 수 있다. 예를 들면, 임의의 주변장치들(104-1 내지 104-k)은 시스템 통합 칩, ASIC, FPGA, 메모리 칩 또는 유사 장치와 같은 단일 칩 장치(112)일 수 있다. 또한, 임의의 주변장치들(104-1 내지 104-k)은 공통 집적회로 기판 상에서 단일 칩 장치들의 임의의 조합을 포함하는 다중-칩 모듈(113)일 수 있다. 대안적으로, 주변장치들(104-1 내지 104-k)은 예를 들면 마더보드(110), 도터보드(114) 또는 다른 타입의 회로 카드와 같은 하나 이상의 인쇄회로기판들 상에 위치할 수 있다.
도 2C는 주문형 전력 관리의 제1 실시예에서 전력 관리기(105)를 도시한다. 전력 관리기(105)는 프로세싱 시스템(100)의 애플리케이션 프로세싱 주문을 모니터링하고, 프로세싱 시스템(100)을 위한 동작 포인트를 선택하기 위한 시스템 제어기를 포함할 수 있다. 전력 관리기(105)는 또한 하나 이상의 동작 전압들(V1-Vn)을 프로세싱 시스템(100)에 제공하고, 하기에 기술되는 바와 같이 프로세싱 시스템(100)의 중지 없이 하나 이상의 제1 전압(V1'-Vn')과 하나 이상의 제2 전압(V1''-Vn'') 사이를 스위칭하기 위한, 시스템 제어기(201)에 커플링된 전력 분배 관리기(202)를 포함할 수 있다. 전력 관리기(105)는 또한 하나 이상의 클록 신호들(f1-fm)을 프로세싱 시스템(100)에 제공하고, 하기에 기술되는 바와 같이 프로세싱 시스템(100)의 중지 없이 하나 이상의 제1 클록 신호들(f1'-fm')과 하나 이상의 제2 클록 신호들(f1''-fm'') 사이를 스위칭하기 위한, 시스템 제어기(201)에 커플링된 클록 도메인 관리기(203)를 포함할 수 있다. 제1 실시예에서, 전력 관리기(105)는 또한 시스템 제어기(201), 전력 분배 관리기(202) 그리고 클록 도메인 관리기(203)에 커플링된 보상 엔진(204)을 포함할 수 있다. 상기 보상 엔진(204)은 하기에 상세히 기술되는 바와 같이 온도 및 프로세스 변수들에 대하여 시스템 제어기(201)에 의해 선택되는 동작 포인트를 보상하기 위해 구성될 수 있다.
제1 실시예에서, 전력 관리기(105)는 하나 이상의 제1 클록 주파수(f1'-fm')와 하나 이상의 제1 전압(V1'-Vn')을 시스템 프로세스(101)와 주변장치들(104-1 내지 104-k)에 공급하는 동시에 시스템 버스(102) 상의 프로세싱 활동을 모니터링하기 위해 구성될 수 있다. 또한, 전력 관리기(105)는 상기 모니터링된 프로세싱 활동에 기초하여 프로세싱 주문을 결정하고, 상기 프로세싱 주문에 응답하여 하나 이상의 제2 클록 주파수(f1''-fm'')와 하나 이상의 제2 전압(V1''-Vn'')을 생성하기 위하여 구성될 수 있다. 또한, 전력 관리기(105)는 프로세싱 시스템(100)의 중지 없이 하나 이상의 제1 전압과 하나 이상의 제2 전압 사이를 스위칭하고, 프로세싱 시스템(100)의 중지 없이 하나 이상의 제1 클록 주파수와 하나 이상의 제2 클록 주파수 사이를 스위칭하기 위하여 구성될 수 있다.
시스템 제어기(201)는 시스템 버스(102) 상의 프로세싱 활동을 모니터링하고, 프로세싱 시스템(100)을 위한 새로운 동작 포인트를 선택하기 위한 버스 인터페이스 유닛(205)을 포함할 수 있다. 시스템 제어기(201)는 또한 버스 인터페이스 유닛(205)에 커플링된 프로그램 가능 메모리(206)를 포함할 수 있다. 상기 프로그램 가능 메모리(206)는 버스 인터페이스 유닛(205)이 시스템 버스(102) 상의 활동과 프로세싱 시스템(100)의 애플리케이션 프로세싱 주문을 서로 관련시킬 수 있도록 하기 위하여 프로그램된 정보를 포함할 수 있다.
제1 실시예에서, 버스 인터페이스 유닛(205)은 시스템 버스(102) 상의 다수 의 명령들을 검출하고, 애플리케이션 프로세싱 주문의 변화와 연관된, 프로그램 가능 메모리(206)에 프로그래밍된 명령 패턴을 인지하기 위하여 구성될 수 있다. 명령 패턴은, 특정 시스템 프로세서(101) 또는 시스템 프로세서(101)가 한 멤버로 있는 프로세서 패밀리와 연관된 버스 트랜잭션 주기들 그리고 명령 패턴, 또는 일반적인 프로세싱 명령 패턴일 수 있다. 상기 명령 패턴을 인지함에 응답하여, 버스 인터페이스 유닛(205)은 프로세싱 시스템(100)을 위한 새로운 동작 포인트를 선택할 수 있다. 상기 새로운 동작 포인트는 현재 동작 전압 세트(V1'-Vn'')와 상이한 새로운 동작 전압 세트(V1''-Vn'') 및/또는 현재 동작 클록 주파수 세트(f1'-fm')와 상이한 새로운 클록 주파수 세트(f1''-fm'')를 포함할 수 있다. 제1 실시예에서, 현재 동작 전압 및 클록 주파수 세트와 새로운 동작 전압 및 클록 주파수 세트는 시스템 제어기(201) 내의 하드웨어 레지스터들(도시되지 않음) 또는 소프트웨어 정의 레지스터들(예를 들면, 프로그램 가능 메모리(206)의 메모리 위치들)에 기록될 수 있다.
대안적으로, 버스 인터페이스 유닛(205)은 시스템 버스(102) 상의 단위 시간당 프로세싱 이벤트들의 평균 개수를 검출하고, 상기 프로세싱 이벤트들의 평균 개수와 하나 이상의 현재 클록 주파수들(112)을 비교하기 위하여 구성될 수 있다. 상기 비교에 기초하여, 버스 인터페이스 유닛(205)은 상기에 기술된 바와 같이 새로운 동작 포인트를 선택할 수 있다.
하기에 더 상세히 기술되는 바와 같이, 시스템 제어기(201)는 또한 전력 분 배 관리기(202)의 전압(V1-Vn) 공급과 클록 도메인 관리기(203)의 클록 주파수(f1-fm) 공급을 제어하기 위하여, 버스 인터페이스 유닛(206) 및 명령 버스(208)에 커플링된 상태 기계(207)를 포함할 수 있다.
시스템 제어기(201)가 시스템 버스(102) 상의 프로세싱 활동을 자동 모니터링하고, 프로세싱 시스템(100)의 애플리케이션 프로세싱 주문이 변화함에 따라 새로운 동작 포인트를 선택하기 위하여 하나 이상의 전압들(V1-Vn)과 하나 이상의 클록 주파수들(f1-fm)을 자발적으로 명령하도록 구성될 수 있음은 당업자에 자명할 것이다. 그러나, 시스템 제어기(201)는 또한 (예를 들면, 시스템 프로세서(101) 또는 하나 이상의 주변장치들(104-1 내지 104-k)로부터의 중요 전력 주문에 응답하여) 하나 이상의 전압들(V1-Vn)과 하나 이상의 클록 주파수들(f1-fm)의 자동 제어를 오버라이드하기 위하여, 상태 기계(207)에 커플링된 명령 인터럽트 라인(209)을 포함할 수 있다. 상기 명령 인터럽트 라인(209)은 프로세싱 시스템(100)을 미리 결정된 동작 포인트에 설정하기 위해 사용될 수 있으며, 여기서 상기 시스템 제어기(201)는 하나 이상의 미리 결정된 전압들을 프로세싱 시스템(100)에 제공하기 위하여 전력 분배 관리기(202)에 명령하고, 시스템 제어기는 하나 이상의 미리 결정된 클록 주파수를 프로세싱 시스템(100)에 제공하기 위하여 클록 도메인 관리기에 명령한다.
도 3은 주문형 전력 관리의 제1 실시예에서 보상 엔진(204)을 도시한다. 상 기 보상 엔진(204)은 애플리케이션 프로세싱 주문에 응답하여 시스템(100)의 동작 포인트를 변화시키도록 시스템 제어기(201)에 의해 선택되는 하나 이상의 전압 명령들 및 하나 이상의 주파수 명령들을 상기 시스템 제어기(201)로부터 수신하기 위한 수신기(301)를 포함할 수 있다. 수신기(301)에 의해 수신되는 전압 및 주파수 명령들은 디지털 명령들일 수 있다. 보상 엔진(204)은 또한 예를 들면 장치 온도, 시스템 온도, 주변 온도 또는 프로세싱 시스템(100)의 동작 포인트에 영향을 끼칠 수 있는 임의의 온도일 수 있는 온도를 측정하고 기록하기 위한 온도 센서(302)를 포함할 수 있다. 보상 엔진(204)은 또한 프로세싱 시스템(100)을 위한 보정 데이터를 저장하기 위하여 온도 센서(302)와 커플링된 비휘발성 메모리(303)를 포함할 수 있다. 상기 비휘발성 메모리(303)에 저장된 보정 데이터는 장치 또는 시스템 프로세싱 기술(예를 들면, CMOS 프로세스들) 또는 시스템 프로세서(101)와 주변장치들(104-1 내지 104-k)과 같은 하나 이상의 개별 장치들에 대한, 온도에 종속적인 전압 및 주파수 정정 인자들을 포함할 수 있다. 또한, 보상 엔진(204)은 수신기(301), 온도 센서(302) 그리고 비휘발성 메모리(303)에 커플링될 수 있는 보상 모듈(304)을 포함할 수 있다. 보상 모듈(304)은 온도에 대한 수신기(301)로부터의 전압 및 주파수 명령들과, 온도에 종속적인 프로세싱 및 장치 변수들을 보상하기 위하여 구성될 수 있다.
보상 모듈(304)은 하나 이상의 스케일링된 전압 명령들을 전력 분배 관리기(202)에 제공하고, 하나 이상의 스케일링된 주파수 명령들을 명령 버스(306)를 통해 클록 도메인 관리기(203)에 제공하기 위하여 스케일링 회로(305)에 커플링될 수 있다.
도 4는 주문형 전력 관리의 제1 실시예에서 전력 분배 관리기(202)를 도시한다. 상기 전력 분배 관리기(202)는 하나 이상의 동작 전압들(V1-Vn)에 상응하는 하나 이상의 전압 제어 채널들(401-1 내지 401-n)을 포함할 수 있다. 각 전압 제어 채널(401-1 내지 401-n)은 핑퐁 제어기(402)와 다중화기(404) 사이에 커플링된 이중 전압 조정기(403)를 포함할 수 있다. 상기 핑퐁 제어기는 명령 버스(306)를 경유하여, 보상 엔진(204)을 통해, 시스템 제어기(201)의 상태 기계(207)로부터 명령들을 수신할 수 있다. 상기 핑퐁 제어기(402)는 제1 전압 조정기(403a)를 제1 전압에 설정하고 제2 전압 조정기(403b)를 제2 전압에 설정하고, 상태 기계(207)로부터의 전압 명령들에 응답하여 제1 전압과 제2 전압 사이에서 선택할 수 있다. 예를 들면, 전압 제어 채널(401-1)에서, 전압 조정기(403a)는 제1 전압(V1')에 설정될 수 있고, 전압 조정기(403b)는 제2 전압(V1'')에 설정될 수 있다. 또한, 전력 분배 관리기(202)는 일시적 전력 주문들을 관리하기 위해 하나 이상의 제1 전압(V1'-Vn')과 하나 이상의 제2 전압(V1''-Vn'') 사이의 전이들(transitions)을 시퀀스하기 위하여, 시스템 제어기(201)에 의해 제어되는 시퀀스 제어기(405)를 포함할 수 있다. 상기에서 기술된 전압 변화들이 임의의 주파수 변화들과 무관하게 이루어질 수 있기 때문에 전압들이 프로세싱 시스템(100)의 중지 없이 스위칭될 수 있음은 자명할 것이다.
도 5는 주문형 전력 관리의 제1 실시예에서 클록 도메인 관리기(203)를 도시한다. 상기 클록 도메인 관리기(203)는 하나 이상의 클록 신호들(f1-fm)에 상응하는 하나 이상의 주파수 제어 채널들(501-1 내지 501-m)을 포함할 수 있다. 각 주파수 제어 채널(501-1 내지 501-m)은 핑퐁 제어기(502)와 다중화기(504) 사이에 커플링된 이중 위상 동기된 루프(PLL)(503)를 포함할 수 있다. 상기 핑퐁 제어기는 명령 버스(306)를 경유하여, 보상 엔진(204)을 통해, 시스템 제어기(201)의 상태 기계(207)로부터의 명령들을 수신할 수 있다. 핑퐁 제어기(502)는 제1 PLL(503a)을 제1 클록 주파수에 설정하고 제2 PLL(503b)을 제2 클록 주파수에 설정하고, 상태 기계(207)로부터의 주파수 명령들에 응답하여 제1 클록 주파수와 제2 클록 주파수 사이에서 선택할 수 있다. 예를 들면, 주파수 제어 채널(501-1)에서, PLL(503a)은 제1 클록 주파수(f1')에 설정되고 PLL(503b)은 제2 클록 주파수(f1'')에 설정될 수 있다. 각각의 PLL(503a, 503b)은 주파수 소스(108)(도시되지 않음)로부터의 기준 주파수(110)에 위상 동기될 수 있고, 그 결과로 PLL의 503a 및 503b에 의해 제공되는 클록 주파수들은 기준 주파수(100)의 올 멀티플(all multiples) 또는 서브-멀티플들(sub-multiples)이다. PLL들(PLL's)의 주파수 곱셈과 PLL들의 주파수 나눗셈은 공지되어 있으며, 여기서 더 상세하게 논의되지 않는다. 클록 도메인 관리기(203)는 또한 클록 주파수들(f1-fm) 사이에서 상이한 전파 지연들을 조절하기 위하여 그리고 클록 주파수들(f1-fm)의 결합된 스펙트럼 콘텐트를 제어하기 위하여, 시스템 제어기(201)에 의해 제어되는 지터(jitter)와 위상 제어기(505)를 포함할 수 있다.
모든 클록 주파수들(f1-fm)은 모두가 공통 기준 주파수(110)에 위상 동기되기 때문에 하모니컬하게(harmonically) 관련될 것임은 당업자에 자명할 것이다. 특히, 단일 주파수 제어 채널의 임의의 두 클록 주파수들(예를 들면, 주파수 제어 채널(501-1)의 클록 주파수들(f1' 및 f1'')이 하모니컬하게 관련될 것이다. 도 6은 상기 하모닉 관계가 어떻게 프로세싱 시스템(100)의 중지 없이 제1 클록 주파수와 제2 클록 주파수 사이를 스위칭하기 위해 사용될 수 있는지를 도시한다. 도 6은 주파수(f0)와 기간(T0)(a=1/f0)을 갖는 기준 주파수(110), 클록 주파수(f1'=Af0, 기간(T1=T0/A)), 주파수(f1''=Bf0, 기간(T2=T0/B))를 나타낸다. 도 6에 나타난 바와 같이, 클록 주파수(f1')의 위상은 T1과 T2의 최소공배수에 상응하는 시간 간격들에서(예를 들면 t1, t2, t3 등에서) 클록 주파수(f1'')의 위상과 주기적으로 일치(align with)될 것이다. 상기 시간 간격은 예를 들면 시스템 제어기(201)에 의해 계산될 수 있다. 그러므로, 새로운 동작 포인트가 애플리케이션 프로세싱 주문에 응답하여 시스템 제어기에 의해 명령될 때, 제1 클록 주파수(예를 들면, f1')로부터 제2 클록 주파수(예를 들면, f1'')로의 스위칭은 제1 클록 주파수 및 제2 클록 주파수의 위상들이 일치될 때 일어나도록 타이밍될 수 있다. 제1 클록 주파수와 제2 클록 주파수의 위상들이 상기 주파수들이 스위칭될 때 (예를 들면 다중화기(504)에 의해) 일치되는 경우, 프로세싱 시스템(100)에는 위상 불연속이 존재하 지 않고 상기 주파수들은 프로세싱 시스템(100)의 중지 없이 스위칭될 수 있다. 제1 클록 주파수에 대한 제2 클록 주파수의 비율은 매우 큰데 기준 주파수(109)의 안정성에 따라 6 차수 크기(six orders of magnitude)일 수 있다.
위에서 살펴본 바와 같이, 전력 분배 관리기(202)의 핑퐁 제어기들(402)은 이중 전압 조정기들(403)을 제어하기 위하여 시스템 제어기(201)의 상태 기계(207)로부터 명령들을 수신할 수 있고, 클록 도메인 관리기(203)의 핑퐁 제어기들(502)은 이중 PLL들(dual PLL's)(503)을 제어하기 위하여 시스템 제어기(201)의 상태 기계(207)로부터의 명령들을 수신할 수 있다. 도 7은 도 8에 도시되는 바와 같은, 예시적인 전압 제어 채널(401-1)(여기서, 이중 전압 조정기들(403a, 403b)이 각각 VR1, VR2로서 지시됨) 그리고 예시적인 주파수 제어 채널(501-1)(여기서, 이중 PLL들(503a, 503b)이 각각 PLL1, PLL2로서 지시됨)을 위한 주문형 전력 관리의 제1 실시예에서 상태 기계(207)에 대한 상태도를 도시한다. 도 7의 상태도와 같은 상태도가 전력 분배 관리기(202)의 각 전압 제어 채널과 클록 도메인 관리기(203)의 각 주파수 제어 채널에 적용될 수 있음은 자명할 것이다.
제1 실시예에서, 새로운 동작 전압 및/또는 새로운 클록 주파수가 시스템 제어기에 의해 명령될 때, 상태 기계(207)는 핑퐁 모드 또는 안정 상태 모드에서 동작할 것이다. 핑퐁 모드는 VR1과 VR2에 의해 새로운 안정 상태 동작 전압이 교번으로 각각 변화되고, PLL1과 PLL2에 의해 새로운 안정 상태 클록 주파수가 교번으로 각각 변화되는 대칭적 모드이다. 안정 상태 모드는 일시적 변화가 다른 전압 조정 기(예를 들면, VR2)에 의해 제공된 이후에 새로운 안정 상태 전압이 한 전압 조정기(예를 들면, VR1)에 의해 항상 제공되고, 일시적 변화가 다른 PLL(예를 들면, PLL2)에 의해 제공된 이후에 새로운 안정 상태 클록 주파수가 한 PLL(예를 들면, PLL1)에 의해 항상 제공되는 비대칭적 모드이다. 표 1은 도 7 및 하기의 기술에서 사용되는 상태 변수들을 정의한다.
Figure 112007052798923-PCT00001
초기 상태(701)에서, VR1이 다중화기(404)에 의해 선택되고 프로세싱 시스템(100)에 제공되는 제1 전압에 설정된다. 상기 초기 상태에서, PLL1은 다중화기(504)에 의해 선택되고 프로세싱 시스템(100)에 제공되는 제1 클록 주파수에 설정된다. 버스 인터페이스 유닛(205)은 프로세싱 활동의 변화를 검출하지 않고, 변화 주파수 플래그가 클리어되고(cmd_fc=0) 변화 전압 플래그가 클리어된다(cmd_vc=0). 버스 인터페이스 유닛(205)이 프로세싱 시스템(100)의 동작 포인트의 변화를 보장하는 시스템 버스(102) 상에서의 프로세싱 활동의 변화를 검출하면, 버스 인터페이스 유닛(205)은 새로운 전압 및/또는 새로운 클록 주파수를 요구할 수 있는 프로그램 가능 메모리(206)로부터의 상기 새로운 동작 포인트를 선택할 것이다.
새로운 전압이 요구되는 경우(cmd_vc=1), VR2 상기 새로운 전압으로 명령된다(702). 새로운 전압이 안정화된 후(chk_st=1), VR2의 출력값이 선택된다(703). 핑퐁 모드(mode_pp=1)에서, VR2는 전압 요구사항이 변화하지 않는 동안에(cmd_vc=0) 계속하여 선택된다. 전압 요구사항이 변화하면(cmd_vc=1), VR1은 새로운 전압으로 명령된다(704a). 상기 새로운 전압이 안정화된 후(chk_st=1), VR1의 출력값이 선택되고(705) 시스템은 새로운 전압을 갖는 초기 상태로 회귀한다. 703에서의 안정 상태 모드(mode_ss=1)에서, VR1의 출력값이 VR2의 출력값과 동일하게 명령되고, VR1의 출력값은 VR1이 안정화될 때(chk_st=1) 선택되고(705) 시스템은 새로운 전압을 갖는 초기 상태로 회귀한다.
새로운 클록 주파수가 요구되는 경우(cmd_fc=1), PLL2는 새로운 주파수로 명령된다(706). 상기 새로운 주파수가 안정화된 후(chk_st=1), PLL2의 출력값이 선택된다(707). 핑퐁 모드(mode_pp=1)에서, PLL2는 주파수 요구사항이 변화하지 않는 동안에(cmd_fc=0) 계속하여 선택된다. 주파수 요구사항이 변화하는 경우(cmd_fc=1), PLL1은 새로운 주파수로 명령된다(708a). 상기 새로운 주파수가 안정화된 후(chk_st=1), PLL1의 출력값이 선택되고(709) 상기 시스템은 새로운 주파수를 갖는 초기 상태(701)로 회귀한다. 707에서의 안정 상태 모드(mode_ss=1)에서, PLL1이 안정화될 때(chk_st=1) PLL1의 출력값이 선택되고 상기 시스템은 새로운 주파수를 갖는 초기 상태(701)로 회귀한다.
도 9A는 주문형 전력 관리를 위한 방법(900)의 제1 실시예를 도시한다. 도 1 내지 도 4를 참조하면, 상기 방법은, 하나 이상의 제1 전압(113)과 기준 주파수(110)에 위상 동기된 하나 이상의 제1 클록 주파수(112)에서 동작하는 프로세싱 시스템(100)의 프로세싱 주문을 모니터링하는 단계(단계 910); 상기 프로세싱 주문에 응답하여, 기준 주파수(109)에 위상 동기되고 상기 하나 이상의 제1 클록 주파수(112)에 위상 매칭된 하나 이상의 제2 클록 주파수(112)를 생성하는 단계(단계 920); 상기 프로세싱 주문에 응답하여 하나 이상의 제2 전압(113)을 생성하는 단계(단계 930); 프로세싱 시스템(100)의 중지 없이 상기 하나 이상의 제1 전압(110)으로부터 상기 하나 이상의 제2 전압(113)으로 스위칭하기 위한 단계(단계 940); 및 프로세싱 시스템(100)의 중지 없이 상기 하나 이상의 제1 클록 주파수(112)로부터 상기 하나 이상의 클록 주파수(112)로 스위칭하기 위한 단계를 포함할 수 있다.
도 9B에 도시된 바와 같이, 제1 실시예에서, 프로세싱 주문을 감시하는 단계(단계 910)는, 버스 인터페이스 유닛(205)을 이용하여 시스템 버스(102) 상의 다수의 프로세싱 이벤트들을 검출하는 단계(단계 911); 및 클록 주파수 요구사항과 상기 다수의 프로세싱 이벤트들을 서로 관련시키는 단계(단계 912)를 포함할 수 있다.
도 9C에 도시된 바와 같이, 제1 실시예에서, 프로세싱 주문에 응답하여 하나 이상의 제2 클록 주파수(111)를 생성하는 단계는, 프로세싱 주문으로부터의 상기 하나 이상의 클록 주파수(112)를 위한 값들을 결정하는 단계(단계 921); 시스템 온도 및 프로세싱 변수를 보상하기 위하여 보상 엔진(204)의 하나 이상의 제2 클록 주파수의 값을 스케일링하는 단계(단계 922); 하나 이상의 이중 위상 동기된 루프들(503)에서 상기 하나 이상의 제2 클록 주파수(112)의 상기 스케일링된 값들을 합성(synthesizing)하는 단계(단계 923); 및 하나 이상의 다중화기들(504)을 이용하여 상기 하나 이상의 제1 클록 주파수(112)로부터 상기 하나 이상의 제2 클록 주파수(112)로의 스위칭 이전에 상기 하나 이상의 제2 클록 주파수(112)의 상기 스케일링된 값들을 안정화하는 단계를 포함할 수 있다.
도 9D에 도시된 바와 같이, 제1 실시예에서, 프로세싱 주문에 응답하여 하나 이상의 제2 전압(113)을 생성하는 단계는, 프로세싱 주문으로부터의 하나 이상의 제2 전압(113)을 위한 값을 결정하는 단계(단계 931); 시스템 온도 및 프로세싱 변수를 보상하기 위하여 보상 엔진(204)의 하나 이상의 제2 전압(113)의 값들을 스케일링하는 단계(단계 932); 하나 이상의 이중 전압 조정기들(403)의 하나 이상의 제2 전압(113)의 상기 스케일링된 값들을 설정하는 단계(단계 933); 및 하나 이상의 다중화기들(404)을 이용하여 상기 하나 이상의 제1 전압(113)으로부터 상기 하나 이상의 제2 전압(113)으로의 스위칭 이전에 상기 하나 이상의 전압(113)의 상기 스케일링된 값들을 안정화하는 단계를 포함할 수 있다.
따라서, 주문형 전력 관리를 위한 방법 및 장치가 기술되었다. 앞선 기술로부터 본 발명의 양상들이 적어도 부분적으로는 소프트웨어로 구현될 수 있음이 명백할 것이다. 즉, 상기 기술들은 컴퓨터 시스템, 또는 그 프로세서에 응답하여 프로그램 가능 메모리(206)와 같은 메모리에 포함된 명령어들의 시퀀스를 실행하는, 시스템 제어기(201)와 같은 다른 데이터 프로세싱 시스템에서 실행될 수 있다. 다양한 실시예들에서, 하드웨어 회로가 본 발명을 구현하기 위해 소프트웨어 명령어들과 공동으로 사용될 수 있다. 따라서, 상기 기술들은 하드웨어 회로와 소프트웨어의 임의의 특정한 조합 또는 데이터 프로세싱 시스템에 의해 실행되는 명령어들을 위한 임의의 특정한 소스에 제한되지 않는다. 부가하여, 상기 설명 전체를 통해, 바양한 기능들과 동작들이 기술을 단순화하기 위하여 소프트웨어 코드에 의해 수행되거나 상기 소프트웨어 코드에 의해 야기되는 것으로서 기술될 수 있다. 그러나, 당업자는, 상기 표현들은 기능들이 시스템 제어기(201)와 같은 제어기 또는 프로세서에 의한 코드의 실행으로부터 도출됨을 의미한다는 것을 인지할 것이다.
데이터 프로세싱 시스템에 의해 실행될 때 시스템이 본 발명의 다양한 방법들을 수행하도록 야기하는 소프트웨어 및 데이터를 저장하기 위해 기계-판독 가능 매체가 사용될 수 있다. 상기 실행 가능 소프트웨어 및 데이터는 예를 들면 메모리(103)와 프로그램 가능 메모리(206) 또는 소프트웨어 프로그램들 및/또는 데이터를 저장할 수 있는 임의의 다른 장치를 포함하여 다양한 곳에 저장될 수 있다.
따라서, 기계-판독 가능 매체는 기계(예를 들면, 컴퓨터, 네트워크 장치, 개인용 디지털 단말기, 제조용 툴, 일련의 하나 이상의 프로세서들을 갖는 임의의 장치 등)에 의해 액세스될 수 있는 형태로 정보를 제공(즉, 저장 및/또는 전달)하는 임의의 메커니즘을 포함한다. 예를 들면, 기계-판독 가능 매체는 판독 가능/비-판독 가능 미디어(예를 들면, 읽기 전용 메모리(ROM); 랜덤 액세스 메모리(RAM); 자기 디스크 저장 미디어; 광 저장 미디어; 플래시 메모리 장치들; 등), 그리고 전기, 광, 음향 또는 다른 형태의 전파된 신호들(예를 들면, 반송파들, 적외선 신호들, 디지털 신호들, 등); 등을 포함한다.
상기 상세한 설명을 통틀어 "제1 실시예" 또는 "임의의 실시예"에 대한 참조가 상기 실시예와 관련되어 기술된 특정한 특성, 구조 또는 특징이 본 발명의 적어도 한 실시예에 포함됨을 의미한다는 것은 자명하다. 그러므로, 상기 상세한 설명의 다양한 부분들에서 "임의의 실시예" 또는 "한 실시예" 또는 "대안적인 실시예"에 대한 둘 이상의 참조들이 동일한 실시예를 모두 필수적으로 참조하는 것이 아님은 명백할 것이다. 또한, 특정한 특성들, 구조들 또는 특징들은 본 발명의 하나 이상의 실시예들에서 적합하게 결합될 수 있다. 부가하여, 본 발명이 여러 실시예들에 있어서 기술된 반면에, 당업자는 본 발명이 상기 기술된 실시예들에 국한되지 않음을 인지할 것이다. 본 발명의 실시예들은 첨부되는 청구항들의 범위 내에서 수정 및 변경되어 구현될 수 있다. 따라서, 상세한 설명과 도면들은 본 발명의 제한하는 것이 아니라 예시적인 것으로서 고려되어야 한다.

Claims (9)

  1. 하나 이상의 제1 전압과 하나 이상의 제1 클록 주파수에서 동작하는 프로세싱 시스템의 프로세싱 주문을 모니터링하는 단계;
    상기 프로세싱 주문에 응답하여 하나 이상의 제2 클록 주파수를 생성하는 단계; 및
    상기 프로세싱 시스템의 중지(halting) 없이 상기 하나 이상의 제1 클록 주파수로부터 상기 하나 이상의 제2 클록 주파수로 스위칭하는 단계를 포함하고,
    상기 하나 이상의 제1 클록 주파수 대 상기 하나 이상의 제2 클록 주파수의 비율은 약 6 차수 크기(approximately up to six orders of magnitude)인,
    방법.
  2. 프로세싱 시스템에서 프로세싱 주문을 결정하기 위한 방법으로서,
    시스템 버스 상의 다수의 프로세싱 이벤트들을 검출하는 단계;
    프로세싱 이벤트 패턴을 인지하는 단계; 및
    상기 프로세싱 이벤트 패턴과 프로세싱 주문을 서로 관련시키는 단계를 포함하는,
    프로세싱 주문 결정 방법.
  3. 제 2 항에 있어서,
    상기 다수의 프로세싱 이벤트들은 다수의 시스템 명령들을 포함하는,
    프로세싱 주문 결정 방법.
  4. 제 2 항에 있어서,
    상기 프로세싱 이벤트 패턴은 단위 시간당 프로세싱 이벤트들의 평균 개수를 포함하는,
    프로세싱 주문 결정 방법.
  5. 제 2 항에 있어서,
    상기 프로세싱 이벤트 패턴을 프로세싱 주문과 서로 관련시키는 단계는, 단위 시간당 상기 프로세싱 이벤트들의 평균 개수와 동작 클록 주파수를 비교하는 단계를 포함하는,
    프로세싱 주문 결정 방법.
  6. 다수의 제1 전압을 프로세싱 시스템에 제공하는 단계;
    프로세싱 주문에 응답하여 다수의 제2 전압을 생성하는 단계; 및
    임의의 시퀀스로(in a sequence) 상기 각각의 다수의 제1 전압을 상기 각각의 다수의 제2 전압으로 스위칭하는 단계를 포함하고,
    상기 시퀀스는 일시적 전력 서지(transient power surge)를 최소화하는,
    방법.
  7. 하나의 주파수 및 위상을 각각 포함하는 다수의 제1 클록 신호들을 프로세싱 시스템에 제공하는 단계;
    프로세싱 주문에 응답하여, 하나의 주파수 및 위상을 각각 포함하는 다수의 제2 클록 신호들을 생성하는 단계;
    스위칭 전이의 스펙트럼 콘텐트를 제어하기 위하여 상기 다수의 제1 클록 신호들 및 상기 다수의 제2 클록 신호들의 위상들을 조절하는 단계; 및
    상기 하나 이상의 제1 클록 주파수로부터 상기 하나 이상의 제2 클록 주파수로 스위칭하는 단계를 포함하는,
    방법.
  8. 프로세싱 시스템 상의 애플리케이션 프로세싱 주문을 모니터링하고, 상기 프로세싱 시스템이 동작하는 하나 이상의 클록 주파수들과 하나 이상의 전압들을 자동으로 제어하기 위한 시스템 제어기;
    하나 이상의 동작 전압들을 상기 프로세싱 시스템에 제공하고, 상기 프로세싱 시스템의 중지 없이 하나 이상의 제1 전압과 하나 이상의 제2 전압 사이를 스위칭하기 위하여 상기 시스템 제어기와 커플링된 전력 분배 관리기; 및
    하나 이상의 클록 신호들을 상기 프로세싱 시스템에 제공하고, 상기 프로세싱 시스템의 중지 없이 하나 이상의 제1 클록 주파수와 하나 이상의 제2 클록 주파수 사이를 스위칭하기 위하여 상기 시스템 제어기와 커플링된 클록 도메인 관리기 를 포함하고,
    상기 시스템 제어기는 상기 하나 이상의 전압들과 상기 하나 이상의 클록 주파수들의 자동 제어를 무시(override)하기 위한 명령 인터럽트를 포함하고,
    상기 시스템 제어기는 하나 이상의 미리 결정된 전압들을 상기 프로세싱 시스템에 제공하기 위하여 상기 전력 분배 관리기에 명령하고,
    상기 시스템 제어기는 하나 이상의 미리 결정된 클록 신호들을 상기 프로세싱 시스템에 제공하기 위하여 상기 클록 도메인 관리기에 명령하는,
    장치.
  9. 하나 이상의 제1 전압 및 기준 주파수에 위상 동기된(phase-locked) 하나 이상의 제1 클록 주파수에서 동작하는 프로세싱 시스템의 프로세싱 주문을 모니터링하는 단계 - 상기 하나 이상의 제1 클록 주파수는 상기 하나 이상의 제1 전압과 무관함 -;
    상기 프로세싱 주문에 응답하여 하나 이상의 제2 클록 주파수를 생성하는 단계 - 상기 하나 이상의 제2 클록 주파수는 상기 기준 주파수에 위상 동기되고 상기 하나 이상의 제1 클록 주파수에 위상 매칭(phase-matched)됨 -;
    상기 프로세싱 주문에 응답하여 하나 이상의 제2 전압을 생성하는 단계 - 상기 하나 이상의 제2 전압은 상기 하나 이상의 제2 주파수와 무관함 -;
    상기 프로세싱 시스템의 중지 없이 상기 하나 이상의 제1 클록 주파수로부터 상기 하나 이상의 제2 클록 주파수로 스위칭하는 단계; 및
    상기 프로세싱 시스템의 중지 없이 상기 하나 이상의 제1 전압으로부터 상기 하나 이상의 제2 전압으로 스위칭하는 단계를 포함하는,
    방법.
KR1020077016753A 2004-12-21 2005-12-05 요구에 따른 전력 관리를 위한 방법 및 장치 KR101419789B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/019,804 2004-12-21
US11/019,804 US7337335B2 (en) 2004-12-21 2004-12-21 Method and apparatus for on-demand power management
PCT/US2005/044052 WO2006068816A2 (en) 2004-12-21 2005-12-05 Method and apparatus for on-demand power management

Publications (2)

Publication Number Publication Date
KR20070105316A true KR20070105316A (ko) 2007-10-30
KR101419789B1 KR101419789B1 (ko) 2014-07-15

Family

ID=36597604

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077016753A KR101419789B1 (ko) 2004-12-21 2005-12-05 요구에 따른 전력 관리를 위한 방법 및 장치

Country Status (5)

Country Link
US (4) US7337335B2 (ko)
EP (1) EP1836544B1 (ko)
JP (1) JP2008524744A (ko)
KR (1) KR101419789B1 (ko)
WO (1) WO2006068816A2 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9383804B2 (en) 2011-07-14 2016-07-05 Qualcomm Incorporated Method and system for reducing thermal load by forced power collapse
US11218154B2 (en) 2018-02-06 2022-01-04 Samsung Electronics Co., Ltd. Integrated circuit, method, and electronic device for reducing EMI of signal

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7395447B2 (en) * 2002-09-16 2008-07-01 Silicon Labs Cp, Inc. Precision oscillator for an asynchronous transmission system
US7337335B2 (en) * 2004-12-21 2008-02-26 Packet Digital Method and apparatus for on-demand power management
US7228446B2 (en) * 2004-12-21 2007-06-05 Packet Digital Method and apparatus for on-demand power management
TWI277302B (en) * 2004-12-28 2007-03-21 Ind Tech Res Inst Clock and data recovery circuit
US8881233B2 (en) * 2005-05-23 2014-11-04 Microsoft Corporation Resource management via periodic distributed time
US7472301B2 (en) * 2005-05-27 2008-12-30 Codman Neuro Sciences Sárl Circuitry for optimization of power consumption in a system employing multiple electronic components, one of which is always powered on
TWI342498B (en) * 2007-01-12 2011-05-21 Asustek Comp Inc Multi-processor system and performance enhancement method thereof
US7941683B2 (en) * 2007-05-02 2011-05-10 Advanced Micro Devices, Inc. Data processing device with low-power cache access mode
US7856562B2 (en) * 2007-05-02 2010-12-21 Advanced Micro Devices, Inc. Selective deactivation of processor cores in multiple processor core systems
US7870407B2 (en) * 2007-05-18 2011-01-11 Advanced Micro Devices, Inc. Dynamic processor power management device and method thereof
US7712003B2 (en) * 2007-08-15 2010-05-04 International Business Machines Corporation Methodology and system to set JTAG interface
JP2009122922A (ja) * 2007-11-14 2009-06-04 Panasonic Corp データ処理装置
US8312299B2 (en) * 2008-03-28 2012-11-13 Packet Digital Method and apparatus for dynamic power management control using serial bus management protocols
US8683247B2 (en) * 2008-06-12 2014-03-25 Advanced Micro Devices, Inc. Method and apparatus for controlling power supply to primary processor and portion of peripheral devices by controlling switches in a power/reset module embedded in secondary processor
TWI372330B (en) * 2008-08-22 2012-09-11 Asustek Comp Inc Computer system capable of dynamically cahaging operation voltage and frequency of cpu
TWI374355B (en) * 2008-08-22 2012-10-11 Asustek Comp Inc Computer system capable of dynamically changing core voltage/frequency of cpu
US8001405B2 (en) * 2008-08-29 2011-08-16 International Business Machines Corporation Self-tuning power management techniques
US20100057404A1 (en) * 2008-08-29 2010-03-04 International Business Machines Corporation Optimal Performance and Power Management With Two Dependent Actuators
US8122270B2 (en) * 2008-09-29 2012-02-21 Intel Corporation Voltage stabilization for clock signal frequency locking
US8117469B2 (en) * 2009-07-10 2012-02-14 Packet Digital Automatically determining operating parameters of a power management device
CN102129414B (zh) * 2010-01-15 2013-12-04 华为技术有限公司 一种变频总线适配器、适配方法及系统
US8423802B2 (en) * 2010-04-07 2013-04-16 Andes Technology Corporation Power scaling module and power scaling unit of an electronic system having a function unit in a standby state which is insensitive to change in frequency or voltage during synchronization
US8468373B2 (en) 2011-01-14 2013-06-18 Apple Inc. Modifying performance parameters in multiple circuits according to a performance state table upon receiving a request to change a performance state
US20130297953A1 (en) * 2011-01-20 2013-11-07 Nec Casio Mobile Communications, Ltd. Control system
CN102841669A (zh) * 2011-06-23 2012-12-26 鸿富锦精密工业(深圳)有限公司 中央处理器频率调整电路
JP5946251B2 (ja) * 2011-07-06 2016-07-06 ルネサスエレクトロニクス株式会社 半導体装置およびシステム
JP5806529B2 (ja) 2011-07-06 2015-11-10 ルネサスエレクトロニクス株式会社 半導体装置、それを用いた無線通信端末、及びクロック周波数制御方法
US9380068B2 (en) 2014-08-18 2016-06-28 Bank Of America Corporation Modification of computing resource behavior based on aggregated monitoring information
US9651969B2 (en) 2015-07-30 2017-05-16 Qualcomm Incorporated Adaptive voltage scaling using analytical models for interconnect delay
US9576615B1 (en) 2015-10-15 2017-02-21 Smart Modular Technologies, Inc. Memory module with power management system and method of operation thereof
US10613142B2 (en) 2017-02-22 2020-04-07 International Business Machines Corporation Non-destructive recirculation test support for integrated circuits
US10585142B2 (en) 2017-09-28 2020-03-10 International Business Machines Corporation Functional diagnostics based on dynamic selection of alternate clocking
JP7278753B2 (ja) * 2018-11-19 2023-05-22 キヤノン株式会社 ソフトウェアの改ざんを検知することが可能な情報処理装置
US10838807B2 (en) * 2018-12-31 2020-11-17 Micron Technology, Inc. Methods and system with dynamic ECC voltage and frequency

Family Cites Families (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6162320A (ja) * 1984-08-31 1986-03-31 株式会社ピーエフユー 電源シ−ケンス制御方式
JP2745869B2 (ja) * 1991-07-11 1998-04-28 日本電気株式会社 可変クロック分周回路
EP0632360A1 (en) * 1993-06-29 1995-01-04 Xerox Corporation Reducing computer power consumption by dynamic voltage and frequency variation
US5504910A (en) * 1994-02-02 1996-04-02 Advanced Micro Devices, Inc. Power management unit including software configurable state register and time-out counters for protecting against misbehaved software
JPH08211960A (ja) * 1995-01-31 1996-08-20 Mitsubishi Electric Corp マイクロコンピュータ
JPH08234865A (ja) * 1995-02-24 1996-09-13 Canon Inc マイクロコンピュータを有する機器
US5774701A (en) * 1995-07-10 1998-06-30 Hitachi, Ltd. Microprocessor operating at high and low clok frequencies
US5745375A (en) 1995-09-29 1998-04-28 Intel Corporation Apparatus and method for controlling power usage
FR2752312B1 (fr) * 1996-08-07 1998-10-30 Motorola Semiconducteurs Procede et circuit permettant d'ajuster dynamiquement la tension d'alimentation et, ou bien, la frequence du signal d'horloge dans un circuit numerique
US6928559B1 (en) * 1997-06-27 2005-08-09 Broadcom Corporation Battery powered device with dynamic power and performance management
JPH11184554A (ja) 1997-12-24 1999-07-09 Mitsubishi Electric Corp クロック制御タイプ情報処理装置
JP3586369B2 (ja) * 1998-03-20 2004-11-10 インターナショナル・ビジネス・マシーンズ・コーポレーション ビデオ・クロックの周波数を下げる方法及びコンピュータ
FI117523B (fi) * 1998-10-07 2006-11-15 Nokia Corp Menetelmä tehonkulutuksen säätämiseksi
JP2001014056A (ja) * 1999-07-02 2001-01-19 Nec Corp 半導体集積回路装置およびスペクトル拡散クロック発振器
JP2001044759A (ja) * 1999-07-29 2001-02-16 Nec Corp 基準クロック周波数温度制御回路
GB9922626D0 (en) 1999-09-25 1999-11-24 Koninkl Philips Electronics Nv Low power phase locked loop frequency sysnthesiser
US6574739B1 (en) * 2000-04-14 2003-06-03 Compal Electronics, Inc. Dynamic power saving by monitoring CPU utilization
JP3438135B2 (ja) * 2000-05-19 2003-08-18 富士通株式会社 情報機器及び省電力モード切替方法及び省電力モード切替プログラムを格納した記録媒体
US6754837B1 (en) 2000-07-17 2004-06-22 Advanced Micro Devices, Inc. Programmable stabilization interval for internal stop grant state during which core logic is supplied with clocks and power to minimize stabilization delay
US6664775B1 (en) 2000-08-21 2003-12-16 Intel Corporation Apparatus having adjustable operational modes and method therefore
US6348780B1 (en) 2000-09-22 2002-02-19 Texas Instruments Incorporated Frequency control of hysteretic power converter by adjusting hystersis levels
US6333650B1 (en) * 2000-12-05 2001-12-25 Juniper Networks, Inc. Voltage sequencing circuit for powering-up sensitive electrical components
KR100369768B1 (ko) * 2000-12-09 2003-03-03 엘지전자 주식회사 휴대용 컴퓨터에서의 버스 클럭 주파수 제어장치
US6973151B2 (en) * 2001-02-15 2005-12-06 Intel Corporation Dynamic phase aligning interface
DE60204556D1 (de) 2001-03-20 2005-07-14 Nptest Inc Taktsignalgenerator mit niedrigem jitter für ein test-system
US6806755B1 (en) * 2001-04-23 2004-10-19 Quantum 3D Technique for glitchless switching of asynchronous clocks
CN100451914C (zh) 2001-08-29 2009-01-14 联发科技股份有限公司 锁相环迅速加电方法和装置
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
US7111179B1 (en) 2001-10-11 2006-09-19 In-Hand Electronics, Inc. Method and apparatus for optimizing performance and battery life of electronic devices based on system and application parameters
US6515530B1 (en) * 2001-10-11 2003-02-04 International Business Machines Corporation Dynamically scalable low voltage clock generation system
US6608528B2 (en) * 2001-10-22 2003-08-19 Intel Corporation Adaptive variable frequency clock system for high performance low power microprocessors
JP3794312B2 (ja) 2001-11-08 2006-07-05 ソニー株式会社 電源電圧周波数制御回路
US6548991B1 (en) 2002-01-19 2003-04-15 National Semiconductor Corporation Adaptive voltage scaling power supply for use in a digital processing component and method of operating the same
JP2003271447A (ja) * 2002-03-12 2003-09-26 Seiko Epson Corp 電子機器のコントローラ、クロックスキュー調整方法
US6762629B2 (en) 2002-07-26 2004-07-13 Intel Corporation VCC adaptive dynamically variable frequency clock system for high performance low power microprocessors
US7290156B2 (en) 2003-12-17 2007-10-30 Via Technologies, Inc. Frequency-voltage mechanism for microprocessor power management
US7013406B2 (en) 2002-10-14 2006-03-14 Intel Corporation Method and apparatus to dynamically change an operating frequency and operating voltage of an electronic device
JP4030408B2 (ja) * 2002-10-31 2008-01-09 シャープ株式会社 動作周波数制御システムおよび方法
US7392411B2 (en) * 2003-04-25 2008-06-24 Ati Technologies, Inc. Systems and methods for dynamic voltage scaling of communication bus to provide bandwidth based on whether an application is active
US7240223B2 (en) 2003-05-07 2007-07-03 Apple Inc. Method and apparatus for dynamic power management in a processor system
JP4334276B2 (ja) * 2003-05-20 2009-09-30 パナソニック株式会社 信号処理装置および信号処理方法
US20050076253A1 (en) * 2003-10-05 2005-04-07 De-Jen Lu Method of url-based power management and associated web browsing device
US7376854B2 (en) * 2004-03-31 2008-05-20 Intel Corporation System for enabling and disabling voltage regulator controller of electronic appliance according to a series of delay times assigned to voltage regulator controllers
TWI259354B (en) 2004-06-25 2006-08-01 Via Tech Inc System and method of real-time power management
US7228446B2 (en) * 2004-12-21 2007-06-05 Packet Digital Method and apparatus for on-demand power management
US7337335B2 (en) * 2004-12-21 2008-02-26 Packet Digital Method and apparatus for on-demand power management

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9383804B2 (en) 2011-07-14 2016-07-05 Qualcomm Incorporated Method and system for reducing thermal load by forced power collapse
US11218154B2 (en) 2018-02-06 2022-01-04 Samsung Electronics Co., Ltd. Integrated circuit, method, and electronic device for reducing EMI of signal

Also Published As

Publication number Publication date
EP1836544A4 (en) 2010-05-05
US7657764B2 (en) 2010-02-02
WO2006068816A2 (en) 2006-06-29
US20060136770A1 (en) 2006-06-22
KR101419789B1 (ko) 2014-07-15
US20080133943A1 (en) 2008-06-05
EP1836544B1 (en) 2013-02-20
EP1836544A2 (en) 2007-09-26
US7730334B2 (en) 2010-06-01
US7337335B2 (en) 2008-02-26
US20080133944A1 (en) 2008-06-05
US20100199114A1 (en) 2010-08-05
WO2006068816A3 (en) 2007-07-05
JP2008524744A (ja) 2008-07-10

Similar Documents

Publication Publication Date Title
KR101419789B1 (ko) 요구에 따른 전력 관리를 위한 방법 및 장치
KR101282126B1 (ko) 주문형 전력 관리를 위한 방법 및 장치
US5451892A (en) Clock control technique and system for a microprocessor including a thermal sensor
US7774627B2 (en) Microprocessor capable of dynamically increasing its performance in response to varying operating temperature
US8412962B2 (en) Microprocessor with improved thermal monitoring and protection mechanism
US7698583B2 (en) Microprocessor capable of dynamically reducing its power consumption in response to varying operating temperature
US7533286B2 (en) Regulating application of clock to control current rush (DI/DT)
US11644884B2 (en) Controlling a processor clock
US7770042B2 (en) Microprocessor with improved performance during P-state transitions
US10147464B1 (en) Managing power state in one power domain based on power states in another power domain

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: 20170807

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee