KR20020050270A - Dynamically adjusting a processor's operational parameters according to its environment - Google Patents

Dynamically adjusting a processor's operational parameters according to its environment Download PDF

Info

Publication number
KR20020050270A
KR20020050270A KR1020027006012A KR20027006012A KR20020050270A KR 20020050270 A KR20020050270 A KR 20020050270A KR 1020027006012 A KR1020027006012 A KR 1020027006012A KR 20027006012 A KR20027006012 A KR 20027006012A KR 20020050270 A KR20020050270 A KR 20020050270A
Authority
KR
South Korea
Prior art keywords
processor
voltage
clock
frequency
integrated circuit
Prior art date
Application number
KR1020027006012A
Other languages
Korean (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 KR20020050270A publication Critical patent/KR20020050270A/en

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/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/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • 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

Abstract

컴퓨터 시스템이 다수의 작동 특성들 중의 하나에서의 변화를 검출한 때, 상기 시스템은 상기 프로세서에서 동작하는 코어 클록들을 정지시킨다. 갱신된 주파수 제어 정보가 상기 검출된 변화에 응답하여 클록 제어 로직에 공급되고, 갱신된 전압 제어 정보는 상기 변화에 응답하여 전압 제어 회로에 공급된다. 일단 상기 갱신된 정보가 공급되면, 상기 시스템은 상기 갱신된 주파수 제어 정보에 대응하는 제 2 클록 주파수에서 및, 상기 갱신된 전압 제어 정보에 대응하는 제 2 전압에서 상기 프로세서를 작동시키기 위해 상기 클록들을 재개시한다.When the computer system detects a change in one of a number of operating characteristics, the system stops core clocks running on the processor. The updated frequency control information is supplied to the clock control logic in response to the detected change, and the updated voltage control information is supplied to the voltage control circuit in response to the change. Once the updated information is supplied, the system is configured to operate the clocks to operate the processor at a second clock frequency corresponding to the updated frequency control information and at a second voltage corresponding to the updated voltage control information. Resume.

Description

환경에 따른 프로세서의 작동 파라미터의 동적 조절방법{DYNAMICALLY ADJUSTING A PROCESSOR'S OPERATIONAL PARAMETERS ACCORDING TO ITS ENVIRONMENT}DYNAMICALLY ADJUSTING A PROCESSOR'S OPERATIONAL PARAMETERS ACCORDING TO ITS ENVIRONMENT}

종래의 노트북 컴퓨터는 동일한 데스크탑 컴퓨터이하의 성능 레벨로 동작하도록 하는 전력과 열 제한사항을 지닌다. 전력원으로서 배터리를 사용할 때, 종래 노트북 컴퓨터는 배터리 수명을 보호하기 위한 기술들을 사용하여 성능 레벨을 감소시킬 수 있다. 또한, 종래 노트북 컴퓨터는 컴퓨터 작동에 의해 생성되는 열을 안전하게 발산하는 능력을 제한하는 작고, 밀집된 시스템 구성을 지닌다. 따라서, 종래 노트북 컴퓨터는 데스크탑 대응부품이하의 전력을 일반적으로 사용하여, 역으로 성능에 영향을 미친다.Conventional notebook computers have power and thermal limitations that allow them to operate at performance levels below the same desktop computer. When using a battery as a power source, conventional notebook computers can reduce performance levels using techniques to protect battery life. In addition, conventional notebook computers have a small, dense system configuration that limits the ability to safely dissipate heat generated by computer operation. Therefore, conventional notebook computers generally use power of less than the desktop counterparts, which adversely affects performance.

대부분의 전력 절약 기술들은 열과 배터리 전력 제한사항에 의해 야기되는 제한점들을 극복하고 약화시키기 위해 도입되었다. 상기 프로세서의 작동 주파수(클록 주파수)와 그 작동 전압이 프로세서의 전력 소비를 결정한다. 전력 소비와 그에 따른 열 생성은 상기 프로세서의 작동 주파수에 매우 비례하기 때문에, 데스크탑 성능 레벨 이하로 상기 프로세서의 주파수를 감소시키는 방법은 노트북 컴퓨터 전력 제한사항들 내에서 유지하는 일반적인 방법이었다.Most power saving techniques have been introduced to overcome and weaken the limitations caused by heat and battery power limitations. The operating frequency (clock frequency) of the processor and its operating voltage determine the power consumption of the processor. Since power consumption and thus heat generation are very proportional to the operating frequency of the processor, reducing the frequency of the processor below the desktop performance level has been a common way to keep within notebook computer power limitations.

"쓰로틀링(throttling)"으로 불리는 일반적이 전력 조절 기술은 상기 프로세서가 프로세서 클록들을 정지시킴으로 인한 일시적인 프로세서 동작들을 정지시킴으로써 과열되는 것을 방지한다. 쓰로틀링은 프로세서 작동의 일률을 조절하기 위해 프로세서 작동의 유효 주파수를 감소시키고, 그에 대응하여 클록 제어 신호(예를 들면 상기 프로세서의 STPCLK# 입력)를 사용함으로써 프로세서 전력 소비를 감소시키는 산업 표준 방법이다. 상기 프로세서 상에 또는 근처에 놓여진 온도 센서가 필요한 때, 조절(throttling) 단계를 개시한다. 쓰로틀링은 수 밀리세컨즈인 기간인 소정의 일률에 따라 프로세서 작동을 계속적으로 정지시키고 개시시킨다. 상기 프로세서의 유효 속도에서의 감소는 전력 발산을 감소시키고 상기 프로세서의 온도를 감소시킨다.A general power regulation technique called "throttling" prevents the processor from overheating by stopping temporary processor operations due to stopping the processor clocks. Throttling is an industry standard method of reducing processor power consumption by reducing the effective frequency of processor operation to adjust the power of processor operation and correspondingly using a clock control signal (e.g., the STPCLK # input of the processor). . When a temperature sensor placed on or near the processor is needed, a throttling step is initiated. Throttling continuously stops and starts processor operation according to a predetermined power, which is a period of several milliseconds. The reduction in the effective speed of the processor reduces power dissipation and reduces the temperature of the processor.

워드 프로세서와 같은 응용분야는 상기 프로세서를 오랫동안 활동정지 상태(idle)로 남긴다. 결과적으로, 워드 프로세싱 어플리케이션을 동작시킬 때의 일반적인 프로세서 전력 소비는 최대값이하의 30-50%일 수 있다. 이러한 활동정지 상태 시간은 상기 프로세서를 일시적으로 슬립(sleep)하도록 함으로써 추가적인 전력 절감을 성취하기 위해 상기 컴퓨터 시스템에 의해 이용될 수 있다.Applications such as word processors leave the processor idle for a long time. As a result, typical processor power consumption when operating word processing applications may be 30-50% below the maximum value. This idle state time can be used by the computer system to achieve additional power savings by causing the processor to sleep temporarily.

예를 들면, 워드 프로세싱 어플리케이션에서, 프로세서는 각 문자가 쳐진 후에 빠른 작업을 수행하고, 이때 그 작동은 다음 키타격이 있을 때까지 정지된다. 또한, 주변 디바이스들은 이동 전력 절감을 성취하기 위해 오프된다. 예를 들면, 상기 노트북의 하드 드라이브는 소정의 비활동 기간 이후로부터 다시 필요할 때까지 중지된다. 만약 상기 시스템이 다른 비활동 기간을, 예를 들면 수 분정도의 기간을 검출하면, 상기 디스플레이는 오프된다. 이러한 기술은 배터리 전력을 보존하고 프로세서에서 발산될 필요가 있는 열의 양을 감소시키는 데 유용하다. 또한, 상기 시스템으로부터 제거되는 열의 양을 증가시키고, 프로세서 온도를 낮추고 상기 시스템에 대한 손상을 방지하기 위해 냉각팬을 사용하는 것이 일반적이다.For example, in a word processing application, the processor performs a fast task after each character is hit, with the operation stopped until the next key strike. In addition, peripheral devices are turned off to achieve mobile power savings. For example, the notebook's hard drive is suspended after a period of inactivity until it is needed again. If the system detects another period of inactivity, for example a few minutes, the display is off. This technique is useful for conserving battery power and reducing the amount of heat that needs to be dissipated in the processor. It is also common to use cooling fans to increase the amount of heat removed from the system, to lower the processor temperature and to prevent damage to the system.

전력 조절 활동과 배터리로부터의 작동을 지닌 일반적인 노트북 컴퓨터는 약 15 내지 20와트를 소비한다. 상기 전력 소비에서의 프로세서 부분은 일반적으로 8 내지 12와트이다. 나머지 전력 소비는 디스플레이와, 하드 드라이브, 메모리 서브시스템, 그래픽 콘트롤러 및 다른 주변 장치들에 관한 것이다. 40 내지 50 와트-시간 배터리 팩으로, 상기 노트북은 2.5 내지 3.5 시간 동안 동작할 것이다. 대조적으로, 상기 노트북 프로세서의 전력 및 열적 제한사항들이 없으면, 일반적인 데스크탑 프로세서는 20 내지 30와트를 소비한다.A typical notebook computer with power regulation activity and operation from a battery consumes about 15 to 20 watts. The processor portion in the power consumption is generally 8 to 12 watts. The remaining power consumption relates to the display, hard drive, memory subsystem, graphics controller and other peripherals. With a 40-50 watt-hour battery pack, the notebook will run for 2.5-3.5 hours. In contrast, without the power and thermal limitations of the notebook processor, a typical desktop processor consumes 20-30 watts.

그러나, 노트북 컴퓨터가 AC-라인 전력에 연결되면, 대용량의 시스템 전력이 사용될 수 있고, 상기 프로세서로부터의 보다 많은 열을 제거하기 위해 부가적인 냉각 용량이 사용될 수 있다. 그럼으로써, 상기 프로세서가 데스크탑 프로세서의 성능 레벨에 접근하는 성능 레벨에서 작동하도록 할 수 있다. 이러한 경우에, 모든 전력 조절 특징들이 사용할 수 없어도, 전체 노트북 시스템은 충분히 작동하도록 유지되어야 한다. 전체 노트북 전력 소비와 발산은 약 20 내지 30와트 증가할 것이다.However, when the notebook computer is connected to AC-line power, a large amount of system power can be used and additional cooling capacity can be used to remove more heat from the processor. This allows the processor to operate at a performance level approaching the performance level of a desktop processor. In this case, even though all power regulation features are not available, the entire notebook system must remain fully operational. Overall notebook power consumption and dissipation will increase by about 20 to 30 watts.

상기 프로세서의 작동 파라미터들의 적절한 감시와 제어는 상기 노트북의 성능과 배터리 수명을 최적화하는 점에서 중요하다. 더 이전의 개인용 컴퓨터 시스템에서의 전력 조절은 마이크로-콘트롤러 및/또는 상기 시스템 관리 인터럽트(system management interrupt: SMI)의 적절한 사용을 통하여 일반적으로 구현된다. 현재의 x86 기반 컴퓨터 시스템은 1998년 11월 19일의 인텔, 마이크로소프트 및 도시바에 의한 향상된 구성 및 전력 인터페이스 사양(Advanced Configuration and Power Interface Specification: ACPI)에서 개시되는 산업 지원 전력 관리 방법을 사용한다. 상기 ACPI는 윈도우 9x 및 윈도우 NT 또는 다른 호환가능한 운영 시스템들에 구비된 특징들을 사용하는 운영 시스템(OS) 조절 전력 관리 방법이다. 상기 ACPI는 모든 ACPI 사건들을 조절하는 표준 인터럽트(시스템 조절 인터럽트 또는 SCI)를 정의한다. 시스템 관리 인터럽트들은 시스템 사건들에 대하여 OS에 알리는 디바이스들에 의해 생성된다.Proper monitoring and control of the processor's operating parameters is important in optimizing the notebook's performance and battery life. Power regulation in earlier personal computer systems is generally implemented through the appropriate use of a micro-controller and / or the system management interrupt (SMI). Current x86-based computer systems use an industry-supported power management method that is initiated by the Advanced Configuration and Power Interface Specification (ACPI) by Intel, Microsoft, and Toshiba on November 19, 1998. The ACPI is an operating system (OS) regulated power management method that uses features provided in Windows 9x and Windows NT or other compatible operating systems. The ACPI defines a standard interrupt (system regulated interrupt or SCI) that handles all ACPI events. System management interrupts are generated by devices that inform the OS about system events.

이러한 전력 관리 방법의 일부분으로서, ACPI는 슬립 및 일시 정지(suspend) 상태를 특정한다. 슬립 상태는 일시적으로 프로세서 작동을 정지시키고, 동작이 수 밀리세컨즈 동안 저장될 수 있다. 노트북은 내부 활성 감시기가 프로세싱이 발생하지 않음을 나타날 때 상기 슬립 상태로 진입한다. 키타격이 입력되는 때, 마우스가 움직이거나 데이터가 모뎀을 통하여 수신된 때, 상기 프로세서는 재작동한다.As part of this power management method, the ACPI specifies sleep and suspend states. The sleep state temporarily shuts down the processor and the operation can be stored for several milliseconds. The notebook enters the sleep state when an internal active watcher indicates that no processing occurs. When a keystroke is entered, the processor restarts when the mouse moves or data is received via the modem.

일시 정지 상태는 여러 개의 서브시스템들(예를 들면 디스플레이 또는 하드 드라이브)을 중지시키고, 수 초 동안의 작동을 저장하도록 할 수 있다. 일시 정지 상태는 (상기 컴퓨터가 현재 개시된 응용프로그램의 처리를 재개하기에 충분한) 상기 시스템의 현재 컨텍스트를 메모리(RAM으로의 일시 정지)로 또는 하드 드라이브(디스크로의 일시 정지) 및 전력 낮춤 주변 장치들로 복사한다.The pause state can cause several subsystems (eg, a display or hard drive) to stop and save a few seconds of operation. The pause state allows the current context of the system (sufficient for the computer to resume processing of the currently launched application) to memory (pause to RAM) or to hard drive (pause to disk) and power down peripherals. To the

ACPI는 개별 구성요소들의 전력 상태뿐만 아니라 시스템의 표준 전력 상태를 정의한다. 또한, 상기 ACPI는 시스템 및 디바이스들을 다른 전력 모드들로 진입시키는 표준 방법을 정의하고, 사건의 보고, 시스템 온도의 감시 및 조절 및 배터리 조절을 가능하게 하는 특징들을 지닌다. ACPI 전력 관리는 노트북 PC 작동을 위한 다수의 시스템 전력 상태들을 포함한다. Gx 상태는 상기 시스템의 전체 작동 상태를 나타낸다. Cx 프로세서 상태, Dx 디바이스 상태 및 Sx 슬립 상태는 일시 정지-대-RAM 및 일시 정지-대-디스크와 같은 상기 시스템의 상태 및 슬립 상태를 정의한다. 상기 4개의 전체 Gx 상태들이 도 1A에 도시된다.ACPI defines the system's standard power state as well as the power state of individual components. The ACPI also defines standard methods for entering systems and devices into different power modes, and has features that enable the reporting of events, the monitoring and regulation of system temperatures, and the battery conditioning. ACPI power management includes a number of system power states for notebook PC operation. The Gx state represents the overall operating state of the system. The Cx processor state, the Dx device state, and the Sx sleep state define the state and sleep state of the system, such as pause-to-RAM and pause-to-disk. The four total Gx states are shown in FIG. 1A.

상기 컴퓨터가 상기 G0 상태에서 작동할 때, CPU는 도 1B에 도시된 4개의 연산(computing) 상태를 지닐 수 있다. 소정의 플랫폼에서, 모든 CPU 상태들을 지원할 필요는 없다. 예를 들면, 일부 시스템을 위한 C1 및 C2는 전력 발산과 작동 복원을 위한 대기시간을 제공한다. 따라서, 설계자는 이러한 상태들 중의 하나만을 구현하도록 선택할 것이다. 또한, 다른 시스템들은 특정 CPU 상태를 다르게 구현할 것이다. 상기 슬립 상태와는 달리, 상기 컴퓨터 시스템의 다양한 부분들의 전력이 낮추어지는 때, 모든 시스템들은 연산 상태들에서 전력을 올린 채로 남는다.When the computer is operating in the G0 state, the CPU may have four computing states shown in FIG. 1B. On some platforms, it is not necessary to support all CPU states. For example, C1 and C2 for some systems provide latency for power dissipation and recovery. Thus, the designer will choose to implement only one of these states. Also, different systems will implement specific CPU states differently. Unlike the sleep state, when the power of the various parts of the computer system is lowered, all systems remain powered up in computational states.

상기 컴퓨터가 G1 상태(슬립)일 때, 상기 시스템은 도 1C에 도시된 4개의 슬립 상태들 중의 하나에 있을 것이다. 상기 Cx 상태와는 달리, 일부 슬립 상태들은 소정의 설계를 위해 현저하게 다른 동작을 제시하지는 않는다. 따라서, 특정 시스템에서 하나 또는 그 이상의 상태들을 구현하지 않는 것이 합리적이다.When the computer is in a G1 state (sleep), the system will be in one of four sleep states shown in FIG. 1C. Unlike the Cx state, some sleep states do not present significantly different behavior for a given design. Thus, it is reasonable not to implement one or more states in a particular system.

도시된 바와 같이, 상기 ACPI 환경은 열과 전력 발산을 처리하는 다수의 메커니즘들을 제공한다. 그러나, 데스크탑 컴퓨터들의 성능에 근접하는 노트북 성능을 위한 설계는 상기 프로세서가 보다 빠르게 동작하고 보다 많은 열을 발산할 것을 요구한다. 그러나, 만약 상기 노트북이 상기 운영 환경에서 주어진 적절한 성능 레벨을 제공하기 위해 이러한 환경에 적절하게 적응한다면 바람직할 것이다. ACPI 및 현재 전력 관리 기술들이 노트북 컴퓨터의 운영 환경을 기반으로 하는 어느 정도의 감시 제어를 제공할 때, 상기 노트북 컴퓨터가 사용되어지는 환경에 보다 효율적으로 응답하는 향상된 전력 관리 기술들을 제공할 필요가 있다. 또한, 사용자에게 현저하게 충격을 줌이 없이, 다양한 환경의 요구들에 동적으로 적응하는 것이 바람직하다.As shown, the ACPI environment provides a number of mechanisms for handling heat and power dissipation. However, designs for notebook performance that approximate the performance of desktop computers require the processor to run faster and dissipate more heat. However, it would be desirable if the notebook suitably adapted to this environment to provide the appropriate level of performance given in the operating environment. When ACPI and current power management technologies provide some degree of supervisory control based on the notebook computer's operating environment, there is a need to provide advanced power management technologies that respond more efficiently to the environment in which the notebook computer is used. . It is also desirable to dynamically adapt to the needs of various environments without significantly impacting the user.

본 발명은 휴대용 컴퓨터들과, 그와 관련된 성능 및 열 발산에 관한 것이다.The present invention relates to portable computers and their associated performance and heat dissipation.

도 1A는 4개의 전체 Gx 상태를 나타내는 표이다.1A is a table showing four total Gx states.

도 1B는 4개의 연산 상태들을 나타내는 표이다.1B is a table showing four computation states.

도 1C는 다양한 슬립 상태들을 나타내는 표이다.1C is a table showing various sleep states.

도 2는 프로세서가 그 환경에 동적으로 적응하도록 하는 다양한 운전 모드들을 구현하는 상태 머신을 나타낸다.2 illustrates a state machine implementing various modes of operation that allow a processor to dynamically adapt to its environment.

도 3A는 도 2에 도시된 다양한 운전 모드들을 요약한다.3A summarizes the various modes of operation shown in FIG. 2.

도 3B는 다양한 운전 모드들에 대한 예시적인 성능 파라미터들을 제공한다.3B provides example performance parameters for various modes of operation.

도 4는 전압, 주파수 및 전력 상관관계를 나타내는 그래프이다.4 is a graph showing the voltage, frequency and power correlation.

도 5는 본 발명의 일실시예인 컴퓨터 시스템의 고단위의 구성도이다.5 is a block diagram of a high unit of a computer system according to an embodiment of the present invention.

도 6은 CPU 내의 클록 제어 회로의 일 실시예를 도시한다.6 illustrates one embodiment of a clock control circuit in a CPU.

도 7은 본 발명의 일실시예에 따라 전압 및 주파수를 제어하는 작동을 나타낸다.7 illustrates operation of controlling voltage and frequency in accordance with one embodiment of the present invention.

도 8은 본 발명의 일실시예에서 전력 일시정지 CPU 컨텍스트 로스트(power on suspend CPU context lost: POSCCL)의 사용을 도시한다.8 illustrates the use of power on suspend CPU context lost (POSCCL) in one embodiment of the invention.

도 9A는 POSCCL 일시정지와 그 대응하는 재개 작동을 나타내는 타이밍 차트이다.9A is a timing chart illustrating POSCCL pause and its corresponding resume operation.

도 9B는 도 9A에 도시된 신호들을 나타내는 표이다.9B is a table showing the signals shown in FIG. 9A.

도 10은 운전 모드 변화를 유효하게 하는 프로그램가능 로직 디바이스의 사용을 도시한다.10 illustrates the use of a programmable logic device to validate a driving mode change.

도 11은 도 10의 로직 디바이스의 구현을 나타낸다.11 illustrates an implementation of the logic device of FIG. 10.

도 12는 도 11의 로직 디바이스의 작동을 나타내는 타이밍도이다.12 is a timing diagram illustrating operation of the logic device of FIG.

도 13은 운전 모드 변화를 유효하게 하는 하나의 사우스 브리지 구현에서 사용된 운전 모드 제어 레지스터를 도시한다.FIG. 13 illustrates a driving mode control register used in one south bridge implementation to validate a driving mode change.

도 14는 전압 및 주파수 제어를 위해 점퍼 입력과 레지스터 입력을 제공하는 사우스 브리지 구현의 고차원의 구성도이다.14 is a high-level schematic diagram of a south bridge implementation providing jumper inputs and register inputs for voltage and frequency control.

도 15는 사우스 브리지 집적 회로에서의 운전 모드 변화를 구현하는 순서도이다.15 is a flow chart of implementing a driving mode change in a south bridge integrated circuit.

도 16은 상술된 다양한 운전 모드들을 통합하여 노트북 컴퓨터에 사용되는 예시적인 도킹 스테이션을 나타낸다.16 illustrates an exemplary docking station for use in a notebook computer incorporating the various modes of operation described above.

상이한 도면들에서의 동일한 참조번호의 사용은 유사하거나 동일한 구성요소들을 지시한다.The use of the same reference numerals in different drawings indicates similar or identical components.

따라서, 노트북 또는 그와 유사한 연산 디바이스는 배터리 작동 동안 성능 기준을 선택하기 위해 외부 전력원들(AC 어댑터, 자동 어댑터 또는 다른 외부 전력원)의 사용과, 부가적인 냉각 디바이스들의 첨부 및/또는 활성화, 사용자 정의가능한 프로파일과 같은 시스템 환경을 감시한다. 이러한 인자들 중의 어느 인자에 대해서 변화가 야기되는 때, 시스템 레벨 소프트웨어는 상기 연산 디바이스의 프로세서를 위해 적절한 작동 파라미터들 또는 "운전(run) 상태"를 부여한다.Thus, a notebook or similar computing device may use external power sources (AC adapters, auto adapters or other external power sources) to select performance criteria during battery operation, attachment and / or activation of additional cooling devices, Monitor system environments such as user definable profiles. When a change is caused to any of these factors, the system level software imparts appropriate operating parameters or "run states" for the processor of the computing device.

각 운전 상태는 사용가능한 전력과 전력 발산에 대한 다른 제한사항들을 지니고, 그 상황은 상기 노트북이 사용되는 동안 변한다. 이상적으로는, 각 운전 상태에서 상기 프로세서가 사용가능한 전력 및 전력 발산 최고한도(ceiling)를 충분하게 이용한다. 상기 운전 상태를 변화시키기 위해, 상기 시스템은 상기 프로세서의 코어 클록 주파수와 코어 전압을 변화시킨다. 프로세서 주파수가 작동을 위한 최소 요구 전압을 결정하기 때문에, 상기 프로세서 코어에 대한 작동의 전압 및 주파수가 동시에 변화된다. 코어 주파수가 변화됨에 따라, 상기 코어 전압도 변화된다.Each operating state has different limitations on available power and power dissipation, and the situation changes while the notebook is in use. Ideally, in each operating state, the processor makes full use of the available power and power dissipation ceiling. To change the operating state, the system changes the core clock frequency and core voltage of the processor. Since the processor frequency determines the minimum required voltage for operation, the voltage and frequency of operation for the processor core are simultaneously changed. As the core frequency changes, so does the core voltage.

일 실시예에서, 전자 시스템에서의 집적 회로의 전력 소비를 제어하는 방법이 제공된다. 상기 방법은 제 1 전압과 제 1 주파수에서 상기 집적 회로를 작동시키는 단계를 포함한다. 상기 시스템이 상기 전자 시스템에서의 다수의 작동 특징들 중의 적어도 하나에서의 변화를 검출하는 때, 상기 변화에 검출에 대한 응답으로, 상기 시스템은 상기 집적 회로의 적어도 실질적인 부분 상에서의 클록 운전을 정지시킨다. 갱신된 주파수 제어 정보가 상기 검출된 변화에 대한 응답으로 클록 제어 로직에 제공되고, 갱신된 전압 제어 정보가 상기 변화에 대한 응답으로 전압 제어 회로에 제공된다. 일단 상기 갱신된 정보가 제공되면, 상기 시스템은 상기 갱신된 주파수 제어 정보에 대응하는 제 2 클록 주파수에서 또한 상기 갱신된 전압 제어 정보에 대응하는 제 2 전압에서 상기 집적 회로를 작동시키기 위해 상기 클록들을 재시작시킨다.In one embodiment, a method of controlling power consumption of an integrated circuit in an electronic system is provided. The method includes operating the integrated circuit at a first voltage and a first frequency. When the system detects a change in at least one of a number of operational features in the electronic system, in response to detecting the change, the system stops clock operation on at least a substantial portion of the integrated circuit. . Updated frequency control information is provided to the clock control logic in response to the detected change, and updated voltage control information is provided to the voltage control circuit in response to the change. Once the updated information is provided, the system is configured to operate the clocks to operate the integrated circuit at a second clock frequency corresponding to the updated frequency control information and at a second voltage corresponding to the updated voltage control information. Restart

다른 실시예에서, 제 1 클록과 제 1 전압을 수신하기 위해 연결된 제 1 로직 부분을 지닌 집적 회로를 지닌 컴퓨터 시스템을 제공한다. 프로그램가능 전압 조절 회로는 상기 전압 조절 회로에 제공된 전압 제어 신호들에 따라 제 1 전압에 대한 가변 전압 레벨을 제공한다. 클록 제어 회로는 주파수 제어 신호에 따라 결정된 주파수에서 제 1 클록을 생성한다. 제어 회로는 상기 컴퓨터 시스템에서의 다수의 작동 특징들에서의 변화에 대한 표시를 수신한다. 상기 제어 회로는 갱신된 전압 제어 신호들과, 제 1 전압에 대한 새로운 전압값과 제 1 클록에 대한 새로운 주파수를 나타내는 주파수 제어 신호들을 제공함으로써 상기 작동 특징들 중의 하나에서의 변화에 응답한다. 상기 새로운 전압값과 새로운 주파수는 상기 작동 특징들에서 검출된 변화에 대응한다.In another embodiment, a computer system having an integrated circuit having a first logic portion coupled to receive a first clock and a first voltage. The programmable voltage regulating circuit provides a variable voltage level for the first voltage in accordance with the voltage control signals provided to the voltage regulating circuit. The clock control circuit generates a first clock at a frequency determined according to the frequency control signal. Control circuitry receives an indication of a change in a number of operating characteristics in the computer system. The control circuit responds to a change in one of the operating characteristics by providing updated voltage control signals and frequency control signals indicative of a new voltage value for the first voltage and a new frequency for the first clock. The new voltage value and new frequency correspond to the detected change in the operating characteristics.

본 발명의 일실시예에 따른 노트북 컴퓨터 또는 다른 휴대용 연산 디바이스들은 상기 노트북 컴퓨터의 작동과 그 프로세서가 향상된 성능과 배터리 수명을 제공하기 위해 그 환경에서의 변화에 동적으로 적응하도록 한다. 이러한 변화들을 결정하기 위해, 상기 노트북 컴퓨터는 어플리케이션 또는 외부 전력원들의 제거(AC 어댑터, 자동 어댑터 또는 다른 외부 전력원), 열 환경에서의 변화들(AC 어댑터에 내장된 보조 냉각 디바이스들, 냉각 능력 또는 외부 전력의 이용가능성을 인하여 사용될 수 있는 노트북 내의 냉각 능력을 지닌 포트 리플리케이터(replicators), 도킹(docking) 스테이션 또는 다른 부착 가능한 디바이스들의 첨부), 배터리 작동에서의 사용자 정의가능한 프로파일(예를 들면, 성능 또는 배터리 수명의 최대화)에서의 변화와 같은 것들을 감시한다.Notebook computers or other portable computing devices in accordance with one embodiment of the present invention allow the operation of the notebook computer and its processor to dynamically adapt to changes in its environment to provide improved performance and battery life. To determine these changes, the notebook computer can be configured to remove applications or external power sources (AC adapter, auto adapter or other external power source), changes in thermal environment (secondary cooling devices built into the AC adapter, cooling capability). Or attaching port replicators, docking stations or other attachable devices with cooling capabilities in a notebook that can be used due to the availability of external power, user definable profiles in battery operation (eg, Monitor changes such as performance or maximizing battery life).

이러한 파라미터들 또는 다른 파라미터들 중의 어느 파라미터에서 변화가 검출되는 때, 상기 노트북 컴퓨터는 상기 프로세서의 작동 주파수, 작동 전압, 전력 소비 및 전력 발산 능력들을 설정하는 적절한 운전 모드로 진입함으로써 변화에 적응한다. 이것은 파라미터 변화들이 검출되는 때 상기 연산 디바이스의 다양한 운전 모드들을 위해 적절한 작동 파라미터들을 부여하는 레벨 소프트웨어가 실행되도록 하는 인터럽트를 생성함으로써 성취될 수 있다. 바람직하게, 상기 노트북 컴퓨터는 사용자에게 응용 프로그램들 또는 시스템 소프트웨어를 벗어나도록 하는 것을 요구함이 없이 동적으로 적절하게 변화한다.When a change is detected in any of these or other parameters, the notebook computer adapts to the change by entering an appropriate mode of operation that sets the operating frequency, operating voltage, power consumption and power dissipation capabilities of the processor. This can be accomplished by generating an interrupt that causes level software to run that imposes appropriate operating parameters for the various operating modes of the computing device when parameter changes are detected. Preferably, the notebook computer changes dynamically appropriately without requiring the user to leave the applications or system software.

다양한 운전 모드들은 노트북이 작동해야하는 다른 환경들을 반영한다. 예를 들면, 일부 환경에서, 배터리 전력으로 작동하는 때, 배터리 수명이 성능보다 더 중요하다. 그러나, 비디오 클립을 상영하는 때, 성능이 아마 더 중요할 것이다. AC -어댑터 또는 자동-어댑터에 연결된 때, 배터리 수명은 중요한 문제가 아니다. 이상적으로, 각 운전 모드에서 상기 프로세서는 사용가능한 전력 및 전력 발산 최고상태를 충분히 활용한다.The various operating modes reflect different environments in which the notebook must operate. For example, in some circumstances, battery life is more important than performance when operating on battery power. However, when playing video clips, performance will probably be more important. When connected to an AC adapter or auto-adapter, battery life is not an important issue. Ideally, in each mode of operation the processor takes full advantage of the available power and power dissipation peaks.

CPU 열 및 전력 조절은 상기 클록 주파수를 변경시킴에 추가하여 CPU 전압을 변화시킴으로써 향상된다. 각 운전 모드는 운전 파라미터들의 프로세서 주파수 및 전압을 향상된 성능과 배터리 수명을 사용자에게 제공하기 위해, 성능 요구사항들과, 전력 소비 제한사항들 및 전력 발산 제한사항들에서의 동적 변화들에 사상시킨다. 프로세서 주파수는 작동을 위한 최소 요구 전압을 결정하기 때문에, 상기 프로세서 코어를 위한 작동 전압 및 주파수가 동시에 변화된다. 따라서, 주파수에 따라 전압을 감소시키는 것은 상기 환경이 전력적으로 또는 열적으로 제한되는 때 또는 전력 보존이 요구되는 때 상기 시스템의 프로세서의 전력 소비를 감소시키는 매우 효율적인 방법이다. 배터리 수명은 상기 CPU에 제공된 전압이 작동의 타겟 주파수에서의 적절한 작동을 확증하는 것이 적어도 가능하도록 함으로써 향상된다. 실질적으로, 그럼으로써 소정의 작동 주파수에서 가장 낮은 가능한 CPU 전력 소비를 가능하게 한다. 상기 시스템은 특정된 제한들 내에서 전력 및 주파수를 최적화할 수 있다. 또한, 열 조절은 CPU 작동의 소정의 주파수를 위해 최적화된다.CPU heat and power regulation is improved by changing the CPU voltage in addition to changing the clock frequency. Each operating mode maps processor frequency and voltage of operating parameters to performance requirements, dynamic changes in power consumption constraints and power dissipation constraints to provide the user with improved performance and battery life. Since the processor frequency determines the minimum required voltage for operation, the operating voltage and frequency for the processor core are simultaneously changed. Thus, reducing the voltage with frequency is a very efficient way to reduce the power consumption of the processor of the system when the environment is powered or thermally limited or when power conservation is required. Battery life is improved by making it at least possible for the voltage provided to the CPU to verify proper operation at the target frequency of operation. In practice, this enables the lowest possible CPU power consumption at a given operating frequency. The system can optimize power and frequency within specified limits. In addition, thermal regulation is optimized for a given frequency of CPU operation.

상기 프로세서의 코어 클록 주파수에서의 변화들은 상기 프로세서에 의해 발산된 전력에 거의 선형적인 영향을 미친다. 따라서, 클록 주파수에서의 20%의 감소는 상기 프로세서에 의해 발산된 전력의 20%를 감소시킨다. 변화의 범위는 가장 낮은 주파수 대 가장 높은 주파수의 비율이 일반적으로 2:1보다 크기 때문에, 중요하다. 결과적으로, 상기 프로세서의 전력은 유사한 비율에 의해 변화될 것이다. 상기프로세서의 코어 전압에서의 변화들은 거의 제곱 법칙 효과(square law effect)를 지닌다. 즉, 잠재적 전력 절약은 전압 감소의 퍼센트의 제곱에 비례한다는 것이다. 비록 전압의 변화의 범위가 일반적으로 50%이하 일지라도, 상기 제곱 법칙 효과는 만약 상기 프로세서의 코어 전압이 감소되면 상기 프로세서의 전력에서의 현저한 변화를 야기한다. 고성능 프로세서들은 I/O 영역에 대한 전압과, 상기 코어 로직 영역에 대한 전압을 포함하는 다중 전압들을 수신하며, 상기 코어 로직 전압은 상기 I/O 영역이 신호들을 칩외부로 유도하기에 충분한 고전압을 요구하기 때문에, 상기 I/O 영역에서 요구되는 전압보다 낮음을 명심해야 한다.Changes in the core clock frequency of the processor have a nearly linear effect on the power dissipated by the processor. Thus, a 20% reduction in clock frequency reduces 20% of the power dissipated by the processor. The range of change is important, because the ratio of the lowest frequency to the highest frequency is usually greater than 2: 1. As a result, the power of the processor will be changed by a similar ratio. Changes in the core voltage of the processor have a nearly square law effect. In other words, the potential power savings are proportional to the square of the percentage of voltage reduction. Although the range of voltage change is generally less than 50%, the square law effect causes a significant change in the power of the processor if the core voltage of the processor is reduced. High performance processors receive multiple voltages including a voltage for the I / O region and a voltage for the core logic region, the core logic voltage being high enough to cause the I / O region to drive signals out of the chip. As required, it should be borne in mind that it is lower than the voltage required in the I / O region.

도 2에서, 상기 프로세서가 그 환경에 동적으로 적응하도록 하는 다양한 운전 모드를 구현하는 상태 머신이 도시된다. 데스크탑 컴퓨터의 성능으로 노트북이 작동하는 것이 바람직하기 때문에, 운전 모드3(11)는 예를 들면 보조 전력과 보조 냉각을 제공하는 도킹 스테이션에 결합되는(docked) 때, 최대 시스템 성능(클록 주파수 및 열 발산)을 제공한다. 이것은 상기 도킹 스테이션이 공기가 상기 프로세서 히트싱크를 통하도록 하거나, 예를 들면 열 파이프 또는 열 플레이트를 지닌 프로세서로부터 열을 전도시키기 위한 세밀한 냉각 시스템을 포함하는 것을 요구할 것이다. 상기 열 파이프는 히트싱크 및 팬들이 상기 열을 발산하는데 사용되는 도킹 스테이션으로 열을 전도시키는 데 사용된다.In FIG. 2, a state machine is shown that implements various modes of operation that allow the processor to dynamically adapt to its environment. Since it is desirable for a notebook to operate with the performance of a desktop computer, operating mode 3 (11) is docked to a docking station that provides auxiliary power and auxiliary cooling, for example, maximum system performance (clock frequency and heat). Divergence). This would require the docking station to include a fine cooling system for allowing air to pass through the processor heatsink or for conducting heat from a processor with, for example, a heat pipe or heat plate. The heat pipe is used to conduct heat to a docking station where heat sinks and fans are used to dissipate the heat.

만약 상기 시스템이 결합되지 않으면(undocked), 상기 시스템은 운전 모드1(13) 또는 운전 모드0(15)에 진입할 수 있다. 상기 배터리로부터 작동하는 때 (운전 모드 0 또는 1), 사용자는 전력 보존 및 성능 사이에서 선택할 수 있다. 운전 모드1은 운전 모드2 만큼 높고 능동 냉각을 요구하는 프로세서 속도를 유지하는 성능 모드이다. 이러한 높은 레벨의 성능은 상기 프로세서에 의해 또한 열 방출을 돕기 위한 팬과 같은 냉각 디바이스를 운전하기 위한 요구사항에 의해 증가된 전력 발산의 결과로써 배터리 수명을 감소시킨다. 상기 성능/배터리 운전 모드에서, 성능은 능동 냉각의 제한사항들에 의해 제한된다.If the system is not docked, the system may enter operation mode 1 (13) or operation mode 0 (15). When operating from the battery (driving mode 0 or 1), the user can choose between power conservation and performance. Run mode 1 is a performance mode that is as high as run mode 2 and maintains processor speed requiring active cooling. This high level of performance reduces battery life as a result of increased power dissipation by the processor and also by the requirement to drive cooling devices such as fans to help heat dissipation. In the performance / battery operating mode, performance is limited by the limitations of active cooling.

또한 운전 모드0, 배터리 절약 모드에서 배터리 수명은 성능 이상으로 중요하다. 최대 배터리 수명 모드, 운전 모드0에서, 수동 냉각의 제한사항들은 성능 최고 한도를 제공한다. 상기 최고 한도는 상기 프로세서에 의한 전력 소비를 상기 성능 최고한도이하로 감소시킴으로써 배터리 수명을 연장하고자하는 요구로 인하여 실제 성능보다 더 높을 것이다. 배터리 절약 모드(운전 모드 0)에서 능동 냉각없이 작동하는 능력은 프로세서 코어 클록들이 정지하는 스톱 클록/승낙(Grant) 상태에서의 낮은 전력 발산에 의존한다. 그렇지 않으면 전력은 능동 냉각 동안 소모되어야 할 것이다.In battery mode, battery life is also more important than performance. In maximum battery life mode, operating mode 0, the limitations of passive cooling provide the highest performance limits. The maximum limit will be higher than actual performance due to the desire to extend battery life by reducing power consumption by the processor below the performance limit. The ability to operate without active cooling in battery save mode (operation mode 0) relies on low power dissipation in a stop clock / Grant state where the processor core clocks stop. Otherwise power will have to be consumed during active cooling.

또한, 적어도 하나의 작동 모드가 운전 모드 1과 운전 모드 0의 2개의 양극단 사이에 제공될 것이다. 상기 "2개의 양극단 사이" 모드는 덜 빈번하게 스위치될 필요가 있는 능동 냉각을 야기하는 더 낮은 성능 목표가 아닌 능동 냉각을 제공한다. 상기 작동 모드는 더 낮은 전력 소비와 냉각 팬에 의한 전력의 덜 빈번한 소비의 잇점이 있다. 운전 모드 0에서 강조되는 성능과 운전 모드 0에서 강조되는 배터리 수명 사이에 보다 큰 입도(granularity)를 지닌 추가적인 배터리 모드들이 제공된다. 일실시예에서, 사용자는 상기 디스플레이 또는 하드 드라이브 슬립 이전에시간 지연을 선택하는 방법과 유사하게 제어 패널 애플릿을 통하여 다양한 배터리 운전 모드들을 특정할 것이다.In addition, at least one mode of operation will be provided between the two extremes of operation mode 1 and operation mode 0. The " between two extremes " mode provides active cooling rather than a lower performance goal that results in active cooling that needs to be switched less frequently. This mode of operation has the advantage of lower power consumption and less frequent consumption of power by the cooling fan. Additional battery modes are provided with greater granularity between the performance highlighted in drive mode 0 and the battery life highlighted in drive mode 0. In one embodiment, the user will specify various battery operating modes via a control panel applet similar to the method of selecting a time delay prior to the display or hard drive sleep.

운전 모드 2(17)는 외부 전력(예를 들면 AC 어댑터로부터)을 제공하고, 반면에 상기 노트북 컴퓨터는 결합되지 않는다. 운전 모드 2는 열 고려사항들에 의해 제한된 최대 성능을 제공한다. 보조 냉각의 부족은 운전 모드 2의 성능을 운전 모드 1의 성능 이하로 제한한다. 그러나, 만약 상기 노트북이 능동 냉각 디바이스를 구비한다면, 상기 노트북은 전력 소비에 대한 염려없이 운전 모드 2에서 지속적으로 사용될 수 있다. 그럼으로써 상기 CPU는 운전 모드 1보다 더 높은 주파수에서 작동할 수 있게 된다.Run mode 2 17 provides external power (eg from an AC adapter), while the notebook computer is not coupled. Operation mode 2 provides maximum performance limited by thermal considerations. The lack of auxiliary cooling limits the performance of Run Mode 2 to less than the Run Mode 1 performance. However, if the notebook is equipped with an active cooling device, the notebook can be used continuously in driving mode 2 without concern for power consumption. This allows the CPU to operate at a higher frequency than run mode one.

각 운전 모드는 사용가능한 냉각 메커니즘과 배터리 수명 요구사항들의 제한 내에서 최대 성능을 제공하기 위해 의도된다. 도 3A는 전체 발산 전력(total dissipated power: TDP)을 지닌 다양한 운전 모드들을 요약한다. 사용자에게 작동을 촉진시키거나 경고하는 다양한 환경들이 가능하다. 예를 들면 DVD 녹음재생 프로그램은 개시된 때 상기 운전 모드를 검사할 수 있다. ACPI는 성능 레벨을 나타내는 표들을 관리한다. 만약 운전 모드 0(배터리 절약 모드)에서 작동하면, 녹음 재생의 전체 프레임 속도가 사용자가 다른 작동 모드들 중의 하나를 선택할 때까지 가능하지 않음을 나타내는 경고 메시지가 생성될 수 있다.Each mode of operation is intended to provide maximum performance within the limits of available cooling mechanisms and battery life requirements. 3A summarizes the various modes of operation with total dissipated power (TDP). Various environments are possible to facilitate or warn the user of the operation. For example, a DVD player can check the operation mode when it is started. ACPI manages tables representing performance levels. If operating in driving mode 0 (battery saving mode), a warning message may be generated indicating that the full frame rate of recording playback is not possible until the user selects one of the other operating modes.

상기 컴퓨터 시스템은 운전 모드들 사이에 작은 대기기간을 제공해야 한다. 사용자는 예를 들면 1초에 이르는 대기기간을 기다려야하고, 바람직하게는 상기 대기 기간은 사용자에 의해 인식되지 않아야 한다.The computer system must provide a small waiting period between modes of operation. The user must wait for example a waiting period of up to 1 second, and preferably the waiting period should not be recognized by the user.

도 3B는 다양한 운전 모드들에 대한 예시적인 성능 파라미터들의 표를 제공한다. 예를 들면 운전 모드 0에서, CPU 전압은 1.6볼트이고 상기 CPU 주파수는 200MHz이다. 대조적으로, 운전 모드 3은 2.2 볼트에서의 400MHz 작동을 제공한다.3B provides a table of exemplary performance parameters for various modes of operation. For example, in run mode 0, the CPU voltage is 1.6 volts and the CPU frequency is 200 MHz. In contrast, operation mode 3 provides 400 MHz operation at 2.2 volts.

도4는 이전에 상술된 "쓰로틀링"을 통하여 작동의 평균 주파수를 감소시키는 노트북을 위한 전력 감소의 비교를 나타내는 그래프를 도시한다. 좌측 수직축은 전압을 나타낸다. 우측 수직축은 와트를 나타낸다. 선(41)은 일반적인 노트북 프로세서를 위한 주파수의 함수로서 요구되는 전압을 나타낸다. 중간선(43)은 주파수의 함수로서의 전력을 나타내고 주파수 감소로부터 이용가능한 전력 절약을 나타낸다. 도시된 바와 같이, 전력 절약은 일반적으로 선형적이다. 주파수 감소로부터의 전력 절약은 쓰로틀링으로부터 제공된 전력 절약과 동일함을 인식하여야 한다. 선(45)은 전압과 주파수의 함수로서의 전력을 도시하고 전압과 주파수 모두의 감소로부터 이용가능한 전력 절약을 도시한다. 쓰로틀링은 상기 프로세서의 유효 속도나 전력 발산을 추가적으로 감소시키기 위해 전압과 주파수 모두의 감소와 결합되어 사용됨이 인식되어야 한다. 일반적인 노트북 시스템에서, 200MHz에서의 추가적인 전력 절약은 적어도 45분의 배터리 수명과 동일하다.FIG. 4 shows a graph showing a comparison of power reduction for a notebook that reduces the average frequency of operation through "throttling" described above. The left vertical axis represents voltage. The right vertical axis represents watts. Line 41 represents the voltage required as a function of frequency for a typical notebook processor. Midline 43 represents power as a function of frequency and represents the power savings available from frequency reduction. As shown, power saving is generally linear. It should be appreciated that power savings from frequency reduction are equivalent to power savings provided from throttling. Line 45 shows power as a function of voltage and frequency and shows the power savings available from the reduction of both voltage and frequency. It should be appreciated that throttling is used in combination with a reduction in both voltage and frequency to further reduce the effective speed or power dissipation of the processor. In a typical notebook system, additional power savings at 200 MHz are equivalent to at least 45 minutes of battery life.

운전 모드 변화들은 소프트웨어에 의해 개시되고, 일단 개시되면 상태 머신이 그 작동들을 수행하고 반면에 상기 프로세서는 슬립상태인 상태 머신 로직에 의해 제어된다. 상기 운전 모드 로직은 표준 사우스 브리지 전력 조절 또는 상기 컴퓨터 시스템에 적절한 다른 로케이션에 부여되는 개별 로직 디바이스들로 구현되거나 사우스 브리지 집적 회로의 전력 조절 특징들로 조합될 수 있다. 운전 모드를변화시키기 위해 요구되는 소프트웨어는 SMI에 의해 또는 표준 사우스 브리지에 조합된 SCI 특징들에 의해 개시될 수 있다. 상기 요구된 소프트웨어는 상기 프로세서를 슬립 또는 일시정지 모드로 놓게 하고, 그후 작동들을 재개시하기 위한 현존하는 루틴들을 사용할 수 있다.Operational mode changes are initiated by software, and once initiated, the state machine performs its operations while the processor is controlled by state machine logic that is in a sleep state. The operating mode logic may be implemented with individual logic devices conferred to standard south bridge power regulation or other location appropriate to the computer system or may be combined with power regulation features of a south bridge integrated circuit. The software required to change the mode of operation can be initiated by SMI or by SCI features combined in a standard south bridge. The required software can use existing routines to put the processor into sleep or pause mode and then resume operations.

일실시예에서, 프로세서는 내부 버스-멀티플라이어 상태를 변화시키고 칩셋 제어를 통하여 내부 레지스터들의 상태를 관리하거나 복원한다. 이러한 특징은 상기 시스템의 전력 차단없이 또는 개시될 버스 주파수(BF)를 수동으로 재구성함이 없이 다수 모드들의 주파수 동작들을 가능하게 한다.In one embodiment, the processor changes the internal bus-multiplier state and manages or restores the state of the internal registers through chipset control. This feature enables multiple modes of frequency operation without powering down the system or without manually reconfiguring the bus frequency (BF) to be initiated.

슬립과 일시정지 상태들이 상기 프로세서 작동이 정지되기를 요구하기 때문에, 시스템 소프트웨어가 모든 슬립, 일시정지 및 복원 작동들을 제어하는 것이 불가능하다. 이러한 문제를 극복하기 위해, 슬립 및 일시정지 작동들과 재개시 작동의 최종 단계(stages)를 제어하는 상태 머신이 입력/출력 집적 회로(사우스 브리지로 알려진) 내에 제공된다. 많은 노트북 컴퓨터들이 공통 전력 조절 특징들을 제공하기 위해 상기 사우스 브리지 집적 회로 내에서 상태 머신들을 사용한다. 이러한 집적 회로로 인텔 코포레이션으로부터의 82371 AB PCI-TO-ISA/IDE XCELERATOR (PIIX4)가 있다. 그 안에 포함된 전력 조절 특징들은 전력 소비를 감소시킴으로써 배터리 수명을 연장시키고, 열 생성과 발산을 제어함으로써 상기 프로세서를 안전하게 작동시킨다. 다른 것들은 작업을 위해 개별 마이크로콘트롤러를 사용하고, 대부분의 노트북 PC들은 열 및 전력 조절을 위한 하드웨어를 제공하기 위해 상기 사우스 브리지에 의존한다. 상기 사우스 브리지는 노스(north) 브리지를 포함하는 칩셋 중의 하나의 칩이다. 상기 노스 브리지는 주변 구성소자 상호연결(PCI) 버스와, 상기 프로세서에 연결된 호스트 버스 사이의 브리지 기능뿐만 아니라, 메모리 콘트롤러 기능을 제공한다. 상기 사우스 브리지는 또한 (상기 컴퓨터 시스템에서 주요 입력/출력 버스로서 작용하는) 상기 PCI 버스와 연결되고 상기 ISA 버스 상에의 레거시 디바이스들에 인터페이스를 제공하는 것과 (또는 상기 사우스 브리지에 집적되고), 다양한 다른 입력/출력 버스들에 인터페이스를 제공하는 것과(예를 들면 범용 직렬 버스(USB)), 다양한 전력 조절 관련 기능들을 제공하는 것을 포함하는 다양한 기능들을 제공한다. 다양한 제조자들로부터의 사우스 브리지 칩셋들은 인텔 PIIX4 사우스 브리지에서 사용된 레지스터들과, 타이머들과 상태 머신들을 일반적으로 사용한다. 현재 사우스 브리지에서의 PIIX4 호환가능성은 개시된 이동 작동 모드들을 지원하기 위해 확장될 수 있다.Because sleep and pause states require the processor to be stopped, it is impossible for the system software to control all sleep, pause, and restore operations. To overcome this problem, a state machine is provided within the input / output integrated circuit (known as the south bridge) that controls the sleep and pause operations and the final stages of the resume operation. Many notebook computers use state machines within the South Bridge integrated circuit to provide common power regulation features. One such integrated circuit is the 82371 AB PCI-TO-ISA / IDE XCELERATOR (PIIX4) from Intel Corporation. The power regulation features included therein extend battery life by reducing power consumption and safely operate the processor by controlling heat generation and dissipation. Others use separate microcontrollers for work, and most notebook PCs rely on the South Bridge to provide hardware for heat and power regulation. The south bridge is one chip of a chipset that includes a north bridge. The north bridge provides a memory controller function as well as a bridge function between a peripheral component interconnect (PCI) bus and a host bus connected to the processor. The south bridge is also connected to the PCI bus (which acts as the primary input / output bus in the computer system) and providing an interface to (or integrated into) the legacy devices on the ISA bus; It provides a variety of functions, including providing an interface to various other input / output busses (e.g., universal serial bus (USB)) and providing various power conditioning related functions. South Bridge chipsets from various manufacturers commonly use the registers, timers and state machines used in the Intel PIIX4 South Bridge. PIIX4 compatibility at the current South Bridge can be extended to support the disclosed mobile operating modes.

도 5에 도시된 예시적인 실시예에서, 전압 조절기(501)는 코어 전압(502)(x86 프로세서 환경에서 Vcc2로서 지시되는) 프로세서(CPU)(503)에 공급한다. 도시된 일실시예에서, 사우스 브리지(505)는 CPU(503)에 공급된 전압 레벨을 전압 제어 신호들 VID[4:0]을 전압 조절기(501)에 공급함으로써 제어한다. 프로세서 주파수를 제어하기 위해, AMD-K6프로세서에서 사용되는 것과 같은 전형적인 구현에서, 3개의 버스 주파수 입력 핀들(BF[2:0])이 상기 프로세서의 내부 작동 주파수를 결정하기 위해 사용된다. 사우스 브리지(505)는 상기 CPU에 BF(버스 주파수)를 공급함으로써 CPU(503)의 작동 주파수를 제어한다. 클록 생성기(507)로부터CPU(503)에 공급된 버스 클록 신호(506)는 상기 CPU에 의해 상기 3개의 버스 주파수 핀들의 값에 의해 결정된 비율에 의해 내부적으로 곱해진다. 상기 곱셈 인자는 일구현에서 상기 버스 클록의 2.5배에서부터 상기 버스 클록의 6.0배까지이다. 다른 곱셈 인자들이 특정 시스템 구현에 따라서 가능하다.In the example embodiment shown in FIG. 5, voltage regulator 501 supplies core voltage 502 (CPU) 503 (designated as V cc2 in an x86 processor environment). In the illustrated embodiment, the south bridge 505 controls the voltage level supplied to the CPU 503 by supplying voltage control signals VID [4: 0] to the voltage regulator 501. AMD-K6 to control the processor frequency In a typical implementation such as used in a processor, three bus frequency input pins BF [2: 0] are used to determine the internal operating frequency of the processor. The south bridge 505 controls the operating frequency of the CPU 503 by supplying BF (bus frequency) to the CPU. The bus clock signal 506 supplied from the clock generator 507 to the CPU 503 is internally multiplied by the ratio determined by the CPU by the value of the three bus frequency pins. The multiplication factor is, in one embodiment, from 2.5 times the bus clock to 6.0 times the bus clock. Other multiplication factors are possible depending on the particular system implementation.

도 6은 CPU 내의 클록 제어 회로의 일실시예를 도시한다. 주파수 분배기 회로(61)는 상기 BF 핀들을 수신하고, 상기 BF 핀들은 프로세서 리세트 신호(CPURST)의 표명(assertion) 동안 샘플링된다. 상기 샘플링된 값들은 위상 고정 루프(PLL) 클록 멀티플라이어/합성기 회로에게 상기 PLL이 안정화되기에 충분한 시간동안 인가된다. 상기 BF 핀들의 값들은 상기 CPURST 신호의 하강 에지에서 주파수 분배기(61)에 래치된다. 상기 리세트 펄스는 상기 클록 멀티플라이어 회로가 안정화되기를 확증하도록 충분히 길다. 상기 버스 클록(63)은 제어 전압(65)을 전압 제어 오실레이터(VCO)(67)에 공급하는 위상(주파수) 검출기(64)에 공급된다. 상기 VCO는 상기 BF 핀들로부터 결정된 값에 의해 곱해진 버스 클록 주파수에 의해 결정된 주파수를 지닌 클록을 상기 CPU의 코어 로직에 공급한다. 게이트 로직(68)은 적절한 게이트 신호(69)가 코어 클록들을 정지시키기 위해 표명되는 때 상기 CPU 코어 클록들을 벗어나는데 사용된다.6 illustrates one embodiment of a clock control circuit in a CPU. The frequency divider circuit 61 receives the BF pins, which are sampled during the assertion of the processor reset signal CPURST. The sampled values are applied to a phase locked loop (PLL) clock multiplier / synthesizer circuit for a time sufficient for the PLL to stabilize. The values of the BF pins are latched in the frequency divider 61 at the falling edge of the CPURST signal. The reset pulse is long enough to confirm that the clock multiplier circuit is stabilized. The bus clock 63 is supplied to a phase (frequency) detector 64 that supplies a control voltage 65 to a voltage controlled oscillator (VCO) 67. The VCO supplies a clock with a frequency determined by a bus clock frequency multiplied by a value determined from the BF pins to the core logic of the CPU. Gate logic 68 is used to escape the CPU core clocks when the appropriate gate signal 69 is asserted to stop the core clocks.

추가적인 BF 핀들이 배터리 수명 모드(운전 모드 0)가 충분하게 지원되는 것을, 즉 보다 더 빠른 프로세서가 제공되는 것과 같이, 상기 프로세서가 충분하게 느리게 동작하는 것을 확증하기 위해 클록 멀티플라이어 값들에서의 보다 큰 범위를 제공하는데 사용된다.The additional BF pins are larger in clock multiplier values to confirm that battery life mode (driving mode 0) is fully supported, i.e., that the processor is operating sufficiently slow, such as a faster processor is provided. Used to provide a range.

도 5에 관하여, 사우스 브리지(505)는 인에이블 신호(509)를 클록 생성기(507)에 공급하여 CPU(505)에 공급된 클록을 차단함으로써 상기 CPU에 의해 소비되는 전력을 최소화시킨다. 따라서, 사우스 브리지(505)는 상기 전압 조절기를 프로그램하고, 상기 클록 생성기를 제어하고 상기 STPCLK# 신호(510)를 통하여 상기 프로세서의 쓰로틀링을 위한 일률을 관리하고 상기 BF-핀들을 제어함으로써 상기 클록 멀티플라이어를 제어한다. 또한, 상기 사우스 브리지는 상기 프로세서 내에서의 클록 멀티플라이어를 변화시키고, 상기 운전 모드들 간의 변환을 관리하기 위해 상기 코어 전압을 변화시키는데 요구되는 특수 프로토콜을 작성한다. 운전 모드를 변화시키는 직접 운영 시스템(OS) 지원이 제공되지 않는 경우, 운전 모드들 간의 변환은 운영 시스템과 사용자에게 가능한 정도까지 투명한 것이 바람직하다.5, the south bridge 505 provides an enable signal 509 to the clock generator 507 to cut off the clock supplied to the CPU 505 to minimize the power consumed by the CPU. Thus, south bridge 505 programs the voltage regulator, controls the clock generator, manages the power for throttling of the processor via the STPCLK # signal 510 and controls the BF-pins by controlling the BF-pins. Control the multiplier. The south bridge also creates a special protocol required to change the clock multiplier within the processor and to change the core voltage to manage the conversion between the operating modes. If no direct operating system (OS) support for changing the operating mode is provided, the transition between the operating modes is preferably transparent to the extent possible for the operating system and the user.

투명성이 성취될 수 있는 방법은 도킹 또는 AC/배터리 상태에 변화가 검출된 때 사용되는 시스템 관리 인터럽트(system management interrupt: SMI)가 있다. 상기 인터럽트는 상기 ACPI 방법에 의해서는 사용되지 않고 상기 운영 시스템에게는 투명하다. 변화가 검출된 때, 상기 변화에 대한 약 1초에 이르는 짧은 대기기간이 허용될 수 있고 더 짧은 대기기간이 바람직하다. 운영 시스템 지원이 일부 실시예들에서 제공되고, 따라서 투명성이 장점이 되지 않음을 인식하여야 한다.A way in which transparency can be achieved is a system management interrupt (SMI) used when a change in docking or AC / battery state is detected. The interrupt is not used by the ACPI method and is transparent to the operating system. When a change is detected, a short wait period of up to about 1 second for the change can be tolerated and a shorter wait period is preferred. It should be appreciated that operating system support is provided in some embodiments, and that transparency is not an advantage.

도 5에 도시된 바와 같이, 점퍼(511)는 시동 시에 클록 멀티플라이어와 전압 조절기에 디폴트 상태를 제공한다. 상기 사우스 브리지는 8개 점퍼 입력 핀들 IBF[0:2] 및 IV[0:4]에서 상기 점퍼 신호들을 수신한다. 점퍼들 및 점퍼 입력들의 개수는 특정 설계에 따라 변화한다. 저항들(513)을 지닌 점퍼들(511)의 설정은 전압 조절기 제어 핀들 전압 ID(VID) 핀들과 상기 프로세서 클록 멀티플라이어 핀들(BF 핀들) 모두에게 상기 디폴트 값을 제공한다. 상기 디폴트 값들은 사우스 브리지(505)에 제공된다. 전력이 가해지는 때, 상기 사우스 브리지는 상기 VID 핀들과 BF 핀들의 디폴트 값들을 전압 조절기와 CPU에 각각 제공한다. 그러나, 상술된 운전 모드들 간의 변환을 위해, 본 발명의 일실시예에 따른 사우스 브리지(505)는 상술된 상기 점퍼 입력들이 아닌 전압 조절기 및 CPU에 제공된 출력 신호들을 위한 소스로서 내부 레지스터들을 선택한다.As shown in FIG. 5, jumper 511 provides a default state to the clock multiplier and voltage regulator at startup. The south bridge receives the jumper signals at eight jumper input pins IBF [0: 2] and IV [0: 4]. The number of jumpers and jumper inputs varies depending on the particular design. The setting of jumpers 511 with resistors 513 provides the default value to both the voltage regulator control pins voltage ID (VID) pins and the processor clock multiplier pins (BF pins). The default values are provided to the South Bridge 505. When powered, the south bridge provides default values of the VID pins and BF pins to the voltage regulator and the CPU, respectively. However, for the conversion between the above-described operating modes, the south bridge 505 according to an embodiment of the present invention selects internal registers as a source for output signals provided to the voltage regulator and the CPU, not the jumper inputs described above. .

도 5에 개시된 실시예에서, 3개의 출력 비트들이 상기 클록 주파수를 제어하기 위해 사용되고 5개의 출력 비트들이 상기 CPU 코어 전압 조절기의 제어를 위해 사용된다. 그러나, 다른 많은 수의 비트들이 사용되는 특정 클록 주파수 방법 및 전압 조절기에 따라 사용될 것이다. 또한, 특정 비트들은 전압 또는 주파수 제어 비트들로서 전용적으로 될 필요는 없다. 따라서, 만약 상기 사우스 브리지가 상기 점퍼들를 위해 10개의 입력들을, 클록 및 주파수 제어를 위해 10개의 출력들을 제공한다면, 일부 응용예들은 3개의 주파수 제어 핀들과 5개의 전압 제어 핀들만을 요구하고, 반면에 다른 응용예들은 각각에 대해서 4개 또는 5개를 요구할 것이다. 따라서, 상기 입력 비트들과 출력들은 주파수 또는 전압 제어 비트로서 전용되지 않는다. 따라서, 만약 상기 전압 조절기가 7개의 제어 비트들을 사용할 수 있다면, 7개의 제어 비트들은 전압 제어를 위해 사용되고 주파수 제어를 위해 3개가 사용된다. 그럼으로써 상기 사우스 브리지를 변화시킬 필요없이 구현상에서의 유동성을 제공한다. 일부 구현예에서, 상기 프로세서는 점퍼 설정에 의존하지 않는 (514)에서 도시된 바와 같은 디폴트 정적 VID 신호들을 제공한다.In the embodiment disclosed in FIG. 5, three output bits are used to control the clock frequency and five output bits are used for control of the CPU core voltage regulator. However, many other bits will be used depending on the particular clock frequency method and voltage regulator used. In addition, certain bits need not be dedicated as voltage or frequency control bits. Thus, if the south bridge provides 10 inputs for the jumpers and 10 outputs for clock and frequency control, some applications require only three frequency control pins and five voltage control pins, while Other applications would require four or five for each. Thus, the input bits and outputs are not dedicated as frequency or voltage control bits. Thus, if the voltage regulator can use seven control bits, seven control bits are used for voltage control and three are used for frequency control. This provides flexibility in implementation without the need to change the south bridge. In some implementations, the processor provides default static VID signals as shown at 514 that does not depend on jumper settings.

상기 프로세서의 전압과 주파수 모두를 변화시키기 위해, 프로세서 작동들은 정지될 필요가 있으며, 즉 프로세서 클록들이 정지될 필요가 있고, 적어도 이러한 클록들이 레지스터들 및 래치들 또는 시간 감지 경로에서의 다른 회로 노드들과 같은 저장 구성소자들에게 공급될 필요가 있고, 이것은 예상치못한 상황이 야기되기 때문이다. 현재의 X86 아키텍쳐에서 이것은 상기 CPU가 그 내부 클록 분배를 정지하도록 상기 STPCLK# 신호를 먼저 표명함으로서 성취된다. STPCLK# 신호의 수신시에, 상기 CPU는 현재 활동 명령을 완성하고 "스톱 승낙(Stop Grant)" 표시를 표명한다. 일단 상기 "스톱 승낙"이 수신되면, 클록들이 인에이블 신호(509)를 사용하여 클록 생성기(507)에서 정지된다. 종래에, ACPI 구조는 상기 사우스 브리지에 지원되고 요구되는 컨텍스트에서 대기기간 프로세서 작동을 구현하기 위해 변경되는 다수의 대기기간 및 슬립 작동들을 제공한다.In order to change both the voltage and frequency of the processor, processor operations need to be stopped, i.e. the processor clocks need to be stopped, at least such clocks being registers and latches or other circuit nodes in the time sensing path. It may need to be supplied to storage components, such as this, causing unexpected situations. In current X86 architectures this is accomplished by first asserting the STPCLK # signal so that the CPU stops distributing its internal clock. Upon receipt of the STPCLK # signal, the CPU completes the current activity command and asserts a "Stop Grant" indication. Once the "stop accept" is received, the clocks are stopped at clock generator 507 using enable signal 509. Conventionally, the ACPI architecture provides a number of latency and sleep operations that are modified to implement latency processor operation in the context supported and required for the South Bridge.

도 7은 본 발명의 일실시예에 따른 전압과 주파수를 제어하기 위한 작동을 설명하는 순서도이다. 상기 프로세서가 적절한 전압 제어 신호들 VID[0:4]을 수신하는 전압 조절기(501)와, 적절한 주파수 제어 신호들(예를 들면 BF 신호들)을 수신하는 주파수 제어 회로를 사용하여 단계(70)에서 정규 작동 모드로 작동한다고 가정한다. 상기 컴퓨터 시스템은 전력원과, 열 환경 또는 사용자 선택 작동 파라미터들과 같은 작동 특성들에서의 변화를 검출한다(단계(71)). 상기 변화를 검출함에 대한 응답으로, 상기 시스템은 그 클록들을 정지시킴으로써 단계(72)에서 프로세서 작동을 정지시키고 새로운 운전 모드에 적절한 새로운 주파수 및 대응하는 전압 설정을 결정한다. 이러한 정보는 상기 사우스 브리지의 레지스터들에 또는 상기 컴퓨터 시스템의 다른 적절한 로케이션에 저장된다. 갱신된 전압 및 주파수 제어 신호들이 단계(73), (74)에서 적절한 전압 및 주파수 제어 회로에 공급되고 상기 프로세서가 단계(75)에서 작동을 재개시한다.7 is a flowchart illustrating an operation for controlling voltage and frequency according to an embodiment of the present invention. The processor uses a voltage regulator 501 to receive the appropriate voltage control signals VID [0: 4] and a frequency control circuit to receive the appropriate frequency control signals (e.g., BF signals) (70). Assume that we operate in normal operating mode at. The computer system detects a change in power source and operating characteristics such as thermal environment or user-selected operating parameters (step 71). In response to detecting the change, the system stops the processor in step 72 by stopping its clocks and determines a new frequency and corresponding voltage setting appropriate for the new mode of operation. This information is stored in the registers of the south bridge or in another suitable location of the computer system. The updated voltage and frequency control signals are supplied to the appropriate voltage and frequency control circuit at steps 73 and 74 and the processor resumes operation at step 75.

상기 재개시 작동은 상기 일시정지 작동의 마지막 동작들 중의 하나로부터 개시된다. 도 7과 관련하여 고려된 재개시 작동에서의 상기 단계들 중의 하나는 주파수 제어 신호 갱신 표시(예를 들면 리세트(CPURST))를 상기 프로세서에 전송하는 재개시 작동을 위한 것이다. 상기 주파수 제어 갱신 또는 유효 신호는 코어 클록의 생성을 위해 사용되어야 하는 상기 BF 핀들 상에서의 유효 데이터가 있음을 상기 프로세서에게 표시한다. 만약 CPU 리세트는 이러한 목적을 위해 사용된다면, 상기 리세트는 상기 프로세서에게만 인가되고 리세트를 요구하지 않는 컴퓨터 시스템의 이러한 부분들에게는 인가되지 않는다.The resume operation is started from one of the last operations of the pause operation. One of the above steps in the restart operation considered in connection with FIG. 7 is for the restart operation of sending a frequency control signal update indication (e.g., reset (CPURST)) to the processor. The frequency control update or valid signal indicates to the processor that there is valid data on the BF pins that should be used for generation of the core clock. If a CPU reset is used for this purpose, the reset is only applied to the processor and not to those parts of the computer system that do not require a reset.

일실시예에서, 상기 프로세서는 리세트 신호가 표명되는 때, (상기 BF 핀들 상에서) 상기 주파수 제어 신호들의 값들을 감지하고 리세트의 하강 에지에서 이러한 값들을 래치시킨다(도 6을 참조). 또한, 리세트가 아닌 신호가 새로운 주파수 제어 신호값이 존재함을 상기 프로세서에게 지시하도록 표명될 것이다. 만약 상기 리세트 신호가 새로운 주파수 제어 (BF) 신호들이 사용가능하다는 점을 나타내는데 사용되면, 상기 프로세서는 리세트 표명에 관한 컨텍스트를 상실하고, 예를 들면 상기 프로세서 레지스터들 내의 값들이 상실될 것이다. 따라서, 프로세서 컨텍스트는 리세트를 인가하기 전에 저장되어야 하거나 어플리케이션이 중단된 곳에서 재개시할 수 없을 것이다. 일단 상기 리세트가 완성되면, 상기 프로세서 컨텍스트는 새로운 주파수와 전압 설정에서 작동하는 프로세서를 사용하여 저장되는 곳으로부터 복원될 수 있다. 상기 재개시 작동의 대기기간을 최소화하는 것이 바람직하고, 따라서 가능하면 빨리 상기 프로세서 컨텍스트를 복원하는 것이 바람직하다.In one embodiment, the processor senses the values of the frequency control signals (on the BF pins) when the reset signal is asserted and latches these values on the falling edge of the reset (see FIG. 6). Also, a non-reset signal will be asserted to instruct the processor that a new frequency control signal value exists. If the reset signal is used to indicate that new frequency control (BF) signals are available, the processor will lose the context for reset assertion and, for example, the values in the processor registers will be lost. Thus, the processor context must be saved before applying the reset or it will not be possible to resume where the application was interrupted. Once the reset is complete, the processor context can be restored from where it is stored using a processor operating at a new frequency and voltage setting. It is desirable to minimize the waiting period for the restart operation, and therefore to restore the processor context as soon as possible.

슬립 및 일시정지 상태들은 상기 프로세서 작동이 정지되기를 요구한다. 따라서, 시스템 소프트웨어가 일부 조절 작동들을 직접적으로 제어하는 것이 불가능하다. 이러한 문제를 극복하기 위해, 상기 사우스 브리지 내의 상태 머신들은 상기 시스템을 제어하여 프로세서 작동을 일시정지시키고 다른 시스템 디바이스들을 일시정지시킨다. 일단 상기 시스템이 슬립 또는 일시 정지 상태에 있으면, 상기 사우스 브리지는 상기 시스템을 기상시키기 위한 다수의 가능한 사건들을 감시한다. 사건이 발생하면, 다른 상태 머신이 상기 시스템을 배열하여 작동을 재개시하게 한다. 상기 슬립 및 일시정지 상태들을 제공하는데 사용된 동일한 하드웨어 및 소프트웨어가 운전 모드들 간의 변환을 수행하는데도 사용될 수 있다.Sleep and pause states require the processor to be stopped. Thus, it is impossible for the system software to directly control some adjustment operations. To overcome this problem, state machines in the South Bridge control the system to suspend processor operation and suspend other system devices. Once the system is in a sleep or pause state, the South Bridge monitors for a number of possible events to wake up the system. If an event occurs, another state machine arranges the system to resume operation. The same hardware and software used to provide the sleep and pause states can also be used to perform the conversion between the operating modes.

이전에 개시된 바와 같이, 상기 프로세서의 STPCLK#(상기 #은 상기 신호가 액티브 로우(active low)인 것을 나타낸다) 입력은 동작을 일시적으로 일시정지시키고 전력을 보호하는데 종종 사용된다. 상기 STPCLK# 신호의 사용으로 상기 프로세서가 스톱 승낙 상태에 진입된다. 상기 상태에서, 상기 코어 클록들은 비록 클록 멀티플라이어 로직을 포함하는 최소화 로직이 여전히 작동하지만, 정지된다. 소켓-7 프로세서가 상기 스톱 승낙 상태에 놓여지도록 하기 위한 현재 사우스 브리지 칩들에 의해 사용된 시퀀스를 개시하기 위해, 상기 사우스 브리지 내의 제어 레지스터(LVL2)가 판독된다. 그 결과 상기 프로세서에게 프로세서 클록들을 정지해야 함을 알리는 STPCLK#가 표명된다. 상기 사우스 브리지는 상기 프로세서가 현재 작동을 완료하고, 상기 스톱 승낙 표시를 인가하기를 기다림으로써 상기 프로세서가 그 코어 클록으로부터 벗어남을 표시한다. 상기 사우스 브리지는 (L2 SRAM을 선택적으로 일시정지시키는) 상기 ZZ 핀을 표명한다. 이것은 상기 사우스 브리지의 CNTB 레지스터 내의 ZZ_EN에 의해 인에이블된다.As previously disclosed, the STPCLK # (where # indicates that the signal is active low) input of the processor is often used to temporarily suspend operation and protect power. The processor enters a stop accept state with the use of the STPCLK # signal. In this state, the core clocks are stopped although the minimization logic that includes the clock multiplier logic is still active. The control register LVL2 in the south bridge is read to initiate the sequence used by the current south bridge chips to place the socket-7 processor in the stop accept state. The result is an STPCLK # asserting that the processor should stop processor clocks. The south bridge indicates that the processor deviates from its core clock by waiting for the processor to complete its current operation and apply the stop accept indication. The south bridge asserts the ZZ pin (selectively pausing the L2 SRAM). This is enabled by ZZ_EN in the CNTB register of the South Bridge.

기상 사건이 검출되는 때, 상기 사우스 브리지가 상기 ZZ핀을 (만약 이 선택이 인에이블이었다면) 표명해제하고(deassert)하고 STPCLK#을 표명해제한다. 다음 키타격과 같은 사건을 대기하는 동안 중요한 전력을 절약할 수 있는 이러한 제어 시퀀스를 사용하여, 프로세서 클록들은 상술된 운전 모드들에서의 변화들과 관련된 코어 주파수의 변화들을 위해 정지될 수 있다. 이러한 시퀀스의 변화는 상기 SLP# 신호를 표명하여 호환가능한 프로세서의 일부분들이 전력 하강 상태로 진입하도록 한다.When a weather event is detected, the South Bridge deasserts the ZZ pin (if this selection was enabled) and deasserts STPCLK #. Using this control sequence, which can save significant power while waiting for an event such as the next key strike, processor clocks can be stopped for changes in core frequency associated with changes in the modes of operation described above. This change in sequence asserts the SLP # signal causing portions of the compatible processor to enter a power down state.

이전에 상술된 여전히 활동중인 상기 프로세서의 일부분을 제거하기 위해 상기 프로세서 클록 멀티플라이어 회로에 공급되어지는 클록을 정지시킴으로써 보다 많은 전력이 절약될 수 있다. 클록 생성기(507)에서의 클록들은 상술된 운전 모드들을 변환시키기 위해 상기 시퀀스의 일부분으로서 정지될 것이다. 상기 시퀀스를 개시하여, PIIX4 호환가능 사우스 브리지에서, 상기 프로세서를 클록 오프하여 프로세서를 깊은 슬립 상태로 놓이도록 하기 위해, 소프트웨어는 상기 사우스 브리지 내의 제어 레지스터(LVL3)를 판독하고, STPCLK#이 표명되도록 한다. 상기 사우스브리지는 스톱 승낙을 기다린다. 상기 ZZ 핀은 L2 SRAM을 일시정지시키기 위해 선택적으로 표명된다. 이것은 CNTB 레지스터 내의 ZZ_EN에 의해 인에이블된다. 이때 SLP#이 표명된다. SUS_STAT1#은 시스템 메모리를 자동-리프레시 모드로 놓여지도록 상기 노스 브리지에 표명된다. CPU_STP(도 5에서의 인에이블(509))는 상기 CPU 버스 클록을 위해 클록 합성기(클록 생성기(507)) 출력을 디스에이블시키기 위해 표명된다.More power can be saved by stopping the clock supplied to the processor clock multiplier circuit to remove a portion of the processor that is still active as previously described. The clocks at clock generator 507 will be stopped as part of the sequence to convert the operational modes described above. Initiating the sequence, at the PIIX4-compatible south bridge, the software reads the control register LVL3 in the south bridge and causes STPCLK # to assert in order to clock off the processor and put the processor in deep sleep. do. The south bridge waits for a stop acceptance. The ZZ pin is optionally asserted to pause the L2 SRAM. This is enabled by ZZ_EN in the CNTB register. At this time, SLP # is declared. SUS_STAT1 # is asserted to the north bridge to put system memory into auto-refresh mode. CPU_STP (enable 509 in FIG. 5) is asserted to disable the clock synthesizer (clock generator 507) output for the CPU bus clock.

기상 사건이 검출된 때, 상기 사우스 브리지는 먼저 상기 클록 합성기의 상기 CPU 버스 클록 출력을 인에이블시키기 위해 CPU_STP를 표명해제시킨다. 이때 상기 사우스 브리지 내의 타이머("고속 번(Burn) 타이머"로서 산업에 알려진)는 계수하여 상기 CPU PLL을 위한 시간이 고정되도록 한다. 상기 타이머에 의해 사용된 값은 상기 시스템의 파워-온 자기-테스트(power-on self-test; POST) 시퀀스 동안 상기 BIOS에 의해 설정된 상기 CLK_LCK 레지스터로부터 로드된다. 최종적으로, SUS_STAT1#, SLP#, ZZ 핀(만약 상기 선택이 인에이블이었다면) 및 STPCLK#이 표명해제된다.When a weather event is detected, the South Bridge first unclaims CPU_STP to enable the CPU bus clock output of the clock synthesizer. The timer in the South Bridge (known in the industry as the "Burn Timer") counts so that the time for the CPU PLL is fixed. The value used by the timer is loaded from the CLK_LCK register set by the BIOS during the power-on self-test (POST) sequence of the system. Finally, the SUS_STAT1 #, SLP #, ZZ pin (if the selection was enabled) and STPCLK # are deasserted.

상기 슬립 상태 머신은 SUS_EN(비트 13)을 설정하고, 적절한 값(상기 사우스 브리지의 전력 조절 제어 레지스터내의 비트[12:10])를 로딩함으로써 상기 시스템을 일시정지시키는데 요구되는 보다 복잡한 작동들을 수행할 수 있다. 상기 값들은 요구되는 일시정지/재개시 작동의 형태를 나타낸다. 하기의 표1은 사용가능한 일시정지/재개시 작동들의 형태와 상기 사우스 브리지 내의 전력 조절 제어 레지스터에서의 관련된 값들을 설명한다. 상기 재개시 대기기간은 일시정지 작동의 형태에 따라 변화한다. 예를 들면, 디스크 재개시 대기기간에 대한 일시정지는 일반적으로 30초이하이고, RAM에 대한 일시정지는 약 1초이고, 관리되는 컨텍스트를 지닌 전력 온 일시정지는 약 20ms이다. 컨텍스트 관리는 재개시 대기기간을 현저하게 감소시킨다.The sleep state machine may perform the more complex operations required to pause the system by setting SUS_EN (bit 13) and loading the appropriate value (bits [12:10] in the power regulation control register of the South Bridge). Can be. The values indicate the type of pause / resume operation required. Table 1 below describes the types of pause / resume operations available and the associated values in the power regulation control register in the south bridge. The resumption waiting period varies depending on the type of the pause operation. For example, a pause for a disk resume wait period is typically less than 30 seconds, a pause for RAM is about 1 second, and a power on pause with a managed context is about 20 ms. Context management significantly reduces the wait time on resume.

비트[12:10]Bit [12:10] 일시정지 형태Pause form 000000 소프트 오프 또는 디스크 일시정지(Suspend to Disk: STD)Soft Off or Suspend to Disk (STD) 001001 RAM 일시정지(Suspend to RAM: STR)Suspend to RAM (STR) 010010 전력 온 일시정지, 컨텍스트 상실(POSCL)Power on pause, context lost (POSCL) 011011 전력 온 일시정지, CPU 컨텍스트 상실(Powered On Suspend, CPU Context Lost(POSCCL)Power On On Suspend, CPU Context Lost (POSCCL) 100100 전력 온 일시정지, 컨텍스트 유지(POS)Power on pause, context hold (POS) 101101 작용(클록 쓰로틀링이 활동중일 것이다)Action (clock throttling will be active) 110110 보류Hold 111111 보류Hold

상술된 바와 같이, 상기 프로세서에게 운전 모드들에서의 변화들과 관련된 클록 주파수를 야기하기 위해 BF 신호에서의 변화를 알리는 리세트를 표명하는 것은 상기 프로세서 컨텍스트가 상실되도록 한다. 리세트가 도 8에 도시된 바와 같이 새로운 BF 핀 값들을 래치하기 위해 사용되는 때, CPU 컨텍스트를 복원하는 일시정지 작동들 중의 하나가 사용된다.As mentioned above, asserting a reset informing the processor of a change in the BF signal to cause the clock frequency associated with changes in operating modes causes the processor context to be lost. When the reset is used to latch new BF pin values as shown in Figure 8, one of the pause operations to restore the CPU context is used.

도 8은 일단 새로운 작동 환경이 검출되는 때, 즉 새로운 운전 모드가 요구되고, 새로운 전압과 주파수 설정이 단계(801)에서 적절한 레지스터로 로드되는 때, 본 발명의 일실시예에서의 POSCCL의 사용을 나타내는 순서도이다. 상기 레지스터들은 상기 사우스 브리지 또는 컴퓨터 시스템 내에 있을 것이다. 일단 이러한 레지스터들이 로드되면, 상기 프로세서 컨텍스트는 저장되고 상기 재개시 작동이 재시작 어드레스를 특정함으로써 단계(803)에서 설정된다. 프로세서 컨텍스트의 저장은 상기 프로세서의 내부 캐시를 플러시하는 단계와 상기 프로세스의 상태를 DRAM에 저장하는 단계를 포함한다. 점프의 설정은 개시 벡터 어드레스(실제 모드)를 설정하는 단계와, 필요한 플랙 바이트를 설정하는 단계를 필요로 하고, 그래서 상기 BIOS는 상기 시스템을 재부팅하는 대신에 CPU 리세트이후에 상기 복원 루틴으로 즉시 분기할 것이다. X86 프로세서들은 리세트 이후에 어드레스 범위 F000:FFF0에서 실행을 개시한다. 종래의 x86 개인용 컴퓨터 시스템에서, 상기 BIOS ROM은 상기 어드레스 범위에 존재한다. BIOS는 RAM 내의 플랙 바이트를 검사하여 BIOS가 프로세서 컨텍스트를 복원하거나 콜드 부트를 수행하는 것과 같은 특수 코드를 수행하기 위해 분기해야 한다.8 illustrates the use of POSCCL in one embodiment of the present invention once a new operating environment is detected, i.e., a new mode of operation is required, and a new voltage and frequency setting is loaded into the appropriate register in step 801. FIG. It is a flowchart showing. The registers will be in the south bridge or computer system. Once these registers are loaded, the processor context is saved and the resume operation is set in step 803 by specifying a restart address. Storing the processor context includes flushing the internal cache of the processor and storing the state of the process in DRAM. Setting the jump requires setting a start vector address (actual mode) and setting the required flag byte, so that the BIOS immediately goes to the restore routine after CPU reset instead of rebooting the system. Will diverge. The X86 processors start running in the address range F000: FFF0 after reset. In a conventional x86 personal computer system, the BIOS ROM is in the address range. The BIOS must examine the flag bytes in RAM and fork to execute special code, such as when the BIOS restores the processor context or performs a cold boot.

프로세서 컨텍스트가 저장된 후, 소프트웨어는 상기 사우스 브리지 내의 레지스터를 판독함으로써 단계(805)에서 상기 프로세서를 일시정지시키는 사우스 브리지 상태 머신을 개시한다. 상기 일시정지 상태 머신의 최종 동작들은 상태 머신으로서 구현되는 새로운 운전 모드를 개시시킨다. 새로운 운전 모드 로직은 CPU 내의 전압 조절기와 주파수 제어 로직에 각각 제공된 전압 및 주파수 제어 신호들을 새로운 전압 및 주파수 제어 설정으로 갱신하고, 기상 표시를 공급하여 상기 재개시 상태 머신을 단계(809)에서 개시시킨다. 상기 코어 로직에 공급된 전압은 변화되고 반면에 코어 클록들은 오프되어서, 상기 전압 변화의 악영향의 위험을 감소시킴을 인식해야 한다. 또한, 하기에서 기술되는 바와 같이, 코어 전압은 변화되고 반면에 리세트는 상기 프로세서에 공급된다. 비록 상기 코어전압이 변화한 때 상기 프로세서가 리세트될 필요는 없지만, 상기 코어 전압이 새로운 값으로 안정될 때까지 프로세서 작동을 금지시키는 것이 바람직하다. 상기 재개시 상태 머신은 리세트 신호를 상기 프로세서로 인가하여 상기 새로운 주파수값이 상기 클록 멀티플라이어 로직에 인가되도록 한다. 상기 프로세서의 위상 고정 루프(PLL)를 일치시키기에 충분한 시간이후에, 예를 들면 약 1ms 또는 그 이하 이후에, 상기 재개시 상태는 단계(813)에서 상기 리세트를 방출한다. 상기 CPU는 이때 실행을 개시하고 그 주소가 이전에 설정된 상기 POSCCL 재개시 루틴으로 점프하여 단계(815)에서 CPU 컨텍스트를 복원한다. 상기 프로세서는 상기 POSCCL에 영향을 미치는 시간이 아닌 상기 운전 모드 변화의 시간에서의 사용 상의 어플리케이션에 충격을 줌이 없이 종료된 장소에서 처리를 재개할 수 있다.After the processor context has been stored, the software initiates a south bridge state machine that pauses the processor at step 805 by reading a register in the south bridge. The final operations of the pause state machine initiate a new mode of operation implemented as a state machine. The new operation mode logic updates the voltage and frequency control signals provided to the voltage regulator and frequency control logic in the CPU, respectively, with the new voltage and frequency control settings, and supplies a weather indication to initiate the resume state machine at step 809. . It should be appreciated that the voltage supplied to the core logic is changed while the core clocks are off, reducing the risk of adverse effects of the voltage change. Also, as described below, the core voltage is varied while the reset is supplied to the processor. Although the processor need not be reset when the core voltage changes, it is desirable to prohibit processor operation until the core voltage has stabilized to a new value. The resume state machine applies a reset signal to the processor such that the new frequency value is applied to the clock multiplier logic. After sufficient time to match the phase locked loop (PLL) of the processor, for example about 1 ms or less, the resume state releases the reset in step 813. The CPU then begins executing and jumps to the POSCCL resume routine where its address was previously set to restore the CPU context at step 815. The processor may resume processing at the terminated location without impacting the application on use at the time of operation mode change rather than at the time affecting the POSCCL.

도 9A는 POSCCL 일시정지의 사우스 브리지의 작동과 그에 대응하는 재개시 작동을 나타내는 타이밍도이다. 온 상태에서 일시정지 상태로의 변환이 도 9A의 좌측에서 도시되고, 상기 일시정지 상태로부터 온 상태로의 변환이 도 9A의 우측에 도시된다. 상기 프로세서가 일단 POSCCL에서 슬립 상태에 진입하면, RTC 알람, SMB 사건, 직렬 포트, 링 표시기, 시스템의 소프트 전력 버튼, 외부 SMI(EXTSMI), 시스템 리드(lid)의 상승, 전체 대기 타이머 알람, USB 활동, IRQ[1,3:15], 또는 범용 목적 입력 1(GPI1) 표명과 같은 사건에 의해 기상될 수 있다. 상술된 일실시예에서, 상기 사우스 브리지에 대한 범용 목적 입력들이 상기 프로세서를 기상시키기는 사건들을 개시하기 하는 때 사용된다. 도 9A에 도시된 신호들은 도 9B에 도시된다. 도 9B에 도시된 여러 신호들은 범용 목적 출력들로 제공된다(또는 특수 노트북 PC 설계에서 사용되지 않을 것이다).9A is a timing diagram illustrating operation of the South Bridge in POSCCL pause and corresponding restart operation. The transition from the on state to the pause state is shown on the left side of Fig. 9A, and the transition from the pause state to the on state is shown on the right side of Fig. 9A. Once the processor enters sleep state in POSCCL, RTC alarm, SMB event, serial port, ring indicator, system's soft power button, external SMI (EXTSMI), system lid rise, full standby timer alarm, USB It may be awakened by an activity, such as an IRQ [1,3: 15], or Universal Purpose Input 1 (GPI1) assertion. In one embodiment described above, general purpose inputs to the South Bridge are used when initiating events that wake up the processor. The signals shown in FIG. 9A are shown in FIG. 9B. The various signals shown in FIG. 9B are provided as general purpose outputs (or will not be used in special notebook PC designs).

프로그램가능 로직 디바이스 구현Programmable Logic Device Implementation

도 5에 도시된 상기 시스템에서 사용되는 다양한 사우스 브리지 구현예들의 상세한 설명이전에, 퀵타임을 마켓 솔루션에게 제공하는 다른 방법이 개시될 것이다. 상기 방법에서 프로그램가능 로직 디바이스(programmable logic device; PLD)와 같은 로직 디바이스를 지닌 PIIX4-호환가능 사우스 브리지는 상기 프로세서의 (BF-핀들) 주파수 제어 입력들에게 필요한 신호들을 공급하고 다양한 운전 모드의 요구사항에 따라 상기 코어 전압 전력 공급을 재프로그램한다. 상기 프로그램가능 로직 디바이스는 프로그램가능 어레이 로직(programmable array logic: PAL) 디바이스 또는 프로그램가능 로직 어레이(programmable logic array: PLA) 또는 다른 적절한 로직 디바이스일 것이다.Prior to the detailed description of the various South Bridge implementations used in the system shown in FIG. 5, another method of providing a quick time to market solution will be disclosed. In the method, a PIIX4-compatible south bridge with a logic device such as a programmable logic device (PLD) supplies the signals required for the (BF-pins) frequency control inputs of the processor and requires various modes of operation. Reprogram the core voltage power supply as required. The programmable logic device may be a programmable array logic (PAL) device or a programmable logic array (PLA) or other suitable logic device.

도 10에서, 프로그램가능 로직 디바이스(101)는 점퍼들(511)로부터 값들을 수신하고 8개의 출력 비트들을, 5개의 비트를 CPU 코어 전압 조절기에 3개의 주파수 제어 비트들 BF[2:0]를 CPU(503)에 제공한다. 이러한 비트들은 상기 전압 조절기(501)와 CPU(503) 상의 프로세서 주파수 로직을 각각 제어한다. 또한, 상기 사우스 브리지(103)는 다수의 제어 신호들을 프로그램가능 로직 디바이스(101)에 제공하고 상술된 바와 같이, 프로그램가능 로직 디바이스(101)로부터 기상 신호를 수신한다. 도 10에 도시된 PLD는 다른 시스템 구성소자들로의 설계변경을 요구함이 없이 상술된 상기 운전 모드 변환들의 구현을 가능하게 한다.In FIG. 10, the programmable logic device 101 receives values from jumpers 511 and sends eight output bits, five bits to the CPU core voltage regulator, three frequency control bits BF [2: 0]. The CPU 503 is provided. These bits control the processor frequency logic on the voltage regulator 501 and the CPU 503, respectively. The south bridge 103 also provides a number of control signals to the programmable logic device 101 and receives weather signals from the programmable logic device 101 as described above. The PLD shown in FIG. 10 enables the implementation of the above described operation mode conversions without requiring a design change to other system components.

만약 필요하다면, 전압과 주파수 제어를 위해 공급된 비트들은 상기 전압 조절기의 필요성과 원하여진 동작의 주파수 범위에 의존하여 더 많은 비트들을 주파수 제어에, 더 적은 비트를 전압 제어에 부여함으로써 다른 방법으로 할당될 수 있음을 인식해야 한다. 실제적으로, 모든 사용가능한 비트들이하의 비트들이 전압 또는 주파수 또는 모두를 위해 사용될 수 있다. 예를 들면, AMD-K6 프로세서와 같은 전형적인 프로세서는 주파수 설정을 위해 단지 3개의 비트만을 요구한다. 프로그램가능 전압 조절기는 4개 또는 5개의 제어 비트로 사용가능하다. 많은 응용들에서, 상기 전압 조절기의 전체 범위 또는 정확성이 요구되지 않고 상기 조절기로의 일부 제어 입력들이 하이(high) 또는 로우(low)로 유지된다. 따라서, 상기 방법은 가변 개수의 전압과 주파수 제어 신호들이 특정 시스템의 요구를 기준으로 하여 사용되도록 함으로써 유동성을 제공한다.If necessary, the bits supplied for voltage and frequency control are allocated in different ways by assigning more bits to frequency control and less bits to voltage control depending on the need of the voltage regulator and the desired frequency range of operation. Be aware that it can be. In practice, all the usable bits below may be used for voltage or frequency or both. For example, a typical processor such as the AMD-K6 processor requires only three bits for frequency setting. Programmable voltage regulators are available with four or five control bits. In many applications, the full range or accuracy of the voltage regulator is not required and some control inputs to the regulator remain high or low. Thus, the method provides flexibility by allowing a variable number of voltage and frequency control signals to be used based on the needs of a particular system.

도 11에서, 프로그램가능 로직 디바이스(101)의 일구현예가 더 상세하게 도시된다. 도시된 구현예에서, 13개의 입력들과 9개의 출력들이 있으며, 상기 설계는 표준 프로그램가능 어레이 로직(PAL) 디바이스로 구현될 수 있다. 사우스 브리지로부터 유래된 신호들은 상기 실시간 클록(real time clock: RTC)(32kHz)에 의해 클록되고; 따라서 고속 로직 디바이스가 불필요하다.In FIG. 11, one implementation of programmable logic device 101 is shown in more detail. In the implementation shown, there are 13 inputs and 9 outputs, and the design can be implemented with a standard programmable array logic (PAL) device. Signals derived from the south bridge are clocked by the real time clock (RTC) (32 kHz); Thus, high speed logic devices are unnecessary.

사우스 브리지(103)로부터 쉬프트 신호(1102)와 데이터 인(data in) 신호(1104)를 수신하는 직렬 쉬프트 레지스터로서 연결된 8개 입력 플립-플롭(1101)이 있다. 사우스 브리지(103)는 PLD(101)에 공급된 쉬프트 신호로서 하나의 범용 출력(GPO-X로 지시된)과, PLD(101)에 공급된 상기 데이터 인 신호로서의 다른 범용 출력(GPO-Y로 지시된)을 사용한다. PLD(101)는 선택 회로(1105)로부터 입력 신호들을 수신하는 8개 출력 플립-플롭(1103)을 포함하여, 상기 입력플립-플롭들 중의 하나 또는 상기 점퍼 설정들(IBF[0:3] 및 IV[0:3]) 중의 하나를 선택한다. 전력 온 리세트(on reset)에서, 상기 플립-플롭들은 파워 오케이(Power Okay: PWROK)(1107)가 표명될 때까지 리세트로 유지된다. PWROK(1107)가 표명되는 때, 사우스 브리지(103)가 상기 프로세스로 리세트를 전송한다.There are eight input flip-flops 1101 connected as a serial shift register that receives a shift signal 1102 and a data in signal 1104 from the south bridge 103. The south bridge 103 is one shift output (indicated by GPO-X) as a shift signal supplied to the PLD 101 and the other universal output as GPO-Y as the data in signal supplied to the PLD 101. Instructed). PLD 101 includes eight output flip-flops 1103 that receive input signals from select circuit 1105, such that one of the input flip-flops or the jumper settings IBF [0: 3] and IV [0: 3]). In a power on reset, the flip-flops remain reset until Power Okay (PWROK) 1107 is asserted. When PWROK 1107 is asserted, South Bridge 103 sends a reset to the process.

상기 점퍼 설정에 의해 표시된 전압과 주파수 제어 신호들의 디폴트값은 만약 시스템 리세트가 리세트 버튼의 누름에 의해서 또는 소프트웨어에 의해서 또는 다른 메커니즘에 의해서 생성된다면, 상기 주파수 및 전압 제어 회로들로 재공급되어야 함을 인식해야 한다. 따라서, 데이터 인(1104)을 유도하는데 사용되는 상기 GPO 비트의 상태는 만약 상기 비트가 개시된 실시예에서 도시된 바와 같이 선택 로직(1105)을 위한 선택 신호로서 사용된다면, 논리 0으로 디폴트되어야 한다. 만약 데이터 인(1104)이 시스템 리세트에서 0이면, 상기 점퍼 설정으로부터의 디폴트값들이 선택 로직(1105)에 의해 적절하게 선택됨이 확증된다. 일부 구현들에서, PIIX4-호환가능 사우스 브리지 비트들 중의 극히 일부 비트들이 상기 특성(예를 들면, GPO[27:28,30])을 지니고, 따라서 상기 GPO-X 및 GPO-Y 비트들은 이러한 비트들 중에서 선택된다. 이러한 비트들 중의 하나의 사용을 통하여, 상기 개시 점퍼 설정들이 도시된 구현에서의 리세트 동안 상기 전압 조절기와 상기 프로세서의 BF-핀들로 전송될 수 있음이 확증된다. 다른 구현들은 종래 기술에 익숙한 사람들에게는 명백할 것이다. 비록 상기 사우스 브리지로부터의 추가적인 GPO 신호(들)이 상기 멀티플렉서 선택 신호를 공급하기 위해 사용될 수 있지만, 멀티플렉서 선택으로서의 상기 데이터 인 신호(207)의 사용은 요구되는 GPO 핀들의 개수를 감소시킨다.The default value of the voltage and frequency control signals indicated by the jumper setting must be resupplied to the frequency and voltage control circuits if a system reset is generated by pressing a reset button or by software or by another mechanism. It should be recognized. Thus, the state of the GPO bit used to derive data in 1104 should be defaulted to logic 0 if the bit is used as a select signal for select logic 1105 as shown in the disclosed embodiment. If data in 1104 is zero in the system reset, it is confirmed that the default values from the jumper settings are appropriately selected by selection logic 1105. In some implementations, very few bits of the PIIX4-compatible south bridge bits have this characteristic (eg, GPO [27: 28,30]), so the GPO-X and GPO-Y bits are such bits. It is selected from these. Through the use of one of these bits, it is confirmed that the start jumper settings can be sent to the voltage regulator and the BF-pins of the processor during a reset in the implementation shown. Other implementations will be apparent to those familiar with the prior art. Although additional GPO signal (s) from the south bridge can be used to supply the multiplexer select signal, the use of the data in signal 207 as multiplexer select reduces the number of GPO pins required.

상기 시스템이 초기에 켜진 때, 상기 CPURST 신호의 상승 에지는 상기 디폴트 또는 개시 전압 및 주파수 설정들이 출력 레지스터(1103)으로 로드되도록 하여 전압 조절기(501) 및 CPU(503)에 공급되도록 한다. 상기 출력 레지스터들의 로딩은 즉시 상기 전압 조절기를 초기값으로 설정할 것이다. 상기 디폴트 주파수 설정들이 또한 출력될 것이다. CPURST는 상기 프로세서가 그 BF-핀 입력들을 로드하도록 하고, 상기 CPU 코어 클록을 생성하기 위해 초기 버스 클록 멀티플라이어를 설정한다.When the system is initially turned on, the rising edge of the CPURST signal causes the default or starting voltage and frequency settings to be loaded into the output register 1103 to be supplied to the voltage regulator 501 and the CPU 503. Loading of the output registers will immediately set the voltage regulator to an initial value. The default frequency settings will also be output. CPURST causes the processor to load its BF-pin inputs and sets up an initial bus clock multiplier to generate the CPU core clock.

일단 새로운 운전 모드로의 변환에 대한 요구가 상기 노트북 시스템에 의해서, 일시정지/재개시 시퀀스가 상기 프로세서 전압과 버스 클록 멀티플라이어를 변화시키기 전에 검출되었으면, 상기 사우스 브리지 상의 GPO 비트들은 새로운 값들을 데이터 입력 레지스터들(1101)로 로드하기 위해 사용된다. 도 12에 관하여, 상기 쉬프트 신호(1102)가 데이터 인 신호선(1104) 상의 새로운 전압 및 주파수 설정들을 입력 레지스터(1101)로 쉬프트하기 위해 사용되는 때, 상기 변환 시퀀스에 대한 셋업이 (121)에서 발생한다. 일단 상기 셋업이 완성되면, 도 12에서 개시된 STPCLK# 및 SLP#을 표명하며, 프로세스 컨텍스트를 저장하는 상기 일시정지 작동이 수행된다.Once a request for a transition to a new mode of operation has been detected by the notebook system before a pause / resume sequence has changed the processor voltage and bus clock multiplier, the GPO bits on the south bridge can be used to retrieve new values. Used to load into input registers 1101. With respect to FIG. 12, when the shift signal 1102 is used to shift new voltage and frequency settings on the signal line 1104 that are data into the input register 1101, a setup for the conversion sequence occurs at 121. do. Once the setup is complete, the pause operation asserting STPCLK # and SLP # disclosed in FIG. 12 and storing the process context is performed.

개시된 바와 같이, 데이터를 상기 쉬프트 레지스터들로 입력시키기 위해 사용된 상기 GPO 비트(1104)는 상기 멀티플렉서(1105)를 조정한다. 상기 일시정지/재개시 시퀀스 동안 상기 비트를 하이로 남겨두는 것은 상기 멀티플렉서를 조정하여 상기 점퍼들 대신에 상기 쉬프트 레지스터들의 출력들을 상기 출력레지스터들(1103)의 입력들로 공급하도록 한다. 상기 직렬 데이터가 적절한 GPIO 포트들로 기록하는 로직 디바이스에 기록된다.As disclosed, the GPO bit 1104 used to input data into the shift registers adjusts the multiplexer 1105. Leaving the bit high during the pause / resume sequence adjusts the multiplexer to supply the outputs of the shift registers to the inputs of the output registers 1103 instead of the jumpers. The serial data is written to a logic device that writes to the appropriate GPIO ports.

일단 상기 코어 전압 및 주파수가 상기 입력 레지스터(1101)에서 변화되었으면, 상기 사우스 브리지는 POSCCL 작동을 실행하도록 됨으로써 상기 사우스 브리지는 상기 일시정지 작동이 완성되거나 거의 완성되었음을 나타내는 신호를 공급하게 된다. 도 12에 도시된 바와 같이, 비록 다른 신호들이 또한 사용될 수 있지만, 상기 신호는 상기 SLP# 신호이다. 상기 신호는 상기 일시정지 시퀀스의 종점을 나타내고, 트리거(TG#)(1109)로서 PLD(101)에 공급된다. 이러한 특정 구현에서, TG#은 액티브 로우이다. PLD(101)는 작동을 개시하는, 즉 게이트(1111) 내의 데이터 입력(1107)와 상기 트리거 신호를 논리적으로 결합함으로써 상기 프로세서를 기상시키는 사건을 생성한다. 이것은 상기 기상 사건(액티브 로우)으로서 사우스 브리지 입력 GP11#으로 상기 SLP#를 공급하고, 상기 사우스 브리지 입력 GP11#은 이전에 개시된 바와 같이 상기 프로세서 리세트를 순환시키기 때문에 새로운 프로세서 주파수 멀티플라이어를 설정하는데 유용한 표준 POSCCL 재개시 작동을 야기하는 기상 사건으로서 감지된다. 따라서, 도 12에 도시된 바와 같이, 상기 일시정시 작동의 종점은 상기 기상 사건을 야기한다. 교대로, 도 12에 도시된 상기 재개시 시퀀스를 야기한다. 일단 상기 재개시 시퀀스가 완성되면, 상기 데이터 입력으로서 사용된 상기 GPO 신호(1107)가 로우로 된다.Once the core voltage and frequency have been changed in the input register 1101, the south bridge is allowed to perform a POSCCL operation such that the south bridge supplies a signal indicating that the pause operation is complete or nearly complete. As shown in Figure 12, although other signals may also be used, the signal is the SLP # signal. The signal indicates the end point of the pause sequence and is supplied to the PLD 101 as a trigger (TG #) 1109. In this particular implementation, TG # is active low. PLD 101 generates an event that initiates operation, i.e., wakes up the processor by logically combining the trigger signal with a data input 1107 in gate 1111. This feeds the SLP # to South Bridge input GP11 # as the weather event (active low), and sets the new processor frequency multiplier because the South Bridge input GP11 # cycles the processor reset as previously disclosed. A useful standard POSCCL is detected as a weather event that causes operation to resume. Thus, as shown in FIG. 12, the end point of the temporary operation causes the weather event. Alternately, this results in the restart sequence shown in FIG. Once the restart sequence is complete, the GPO signal 1107 used as the data input goes low.

상기 재개시 시퀀스동안의 CPURST의 표명은 상기 입력 레지스터들(1101)로부터의 값들을 출력 레지스터(1103)으로 로드한다. 출력 레지스터들(1103) 내의 값들은 상기 새로운 주파수 멀티플라이어 설정들과 상기 코어 전압 설정들을 각각 상기 프로세서 및 전압 조절기로 공급한다. 따라서, 상기 새로운 전압 설정들은 CPU 리세트가 표명된 때 상기 프로세서의 상기 코어 로직으로 인가된다. 상기 새로운 주파수 멀티플라이어 비율 BF-핀 설정들은 CPURST의 상승 에지에서 상기 CPU에 의해 샘플되고, CPURST의 하강 에지에서 상기 프로세서로 래치된다. 상기 POSCCL 재개시는 상기 프로세서(PLL)을 재동기화시키는 시간을 허용한다.The assertion of CPURST during the restart sequence loads the values from the input registers 1101 into an output register 1103. Values in output registers 1103 feed the new frequency multiplier settings and the core voltage settings to the processor and voltage regulator, respectively. Thus, the new voltage settings are applied to the core logic of the processor when a CPU reset is asserted. The new frequency multiplier ratio BF-pin settings are sampled by the CPU on the rising edge of CPURST and latched to the processor on the falling edge of CPURST. Resuming the POSCCL allows time to resynchronize the processor (PLL).

상기 PLD의 사용은 변형되지 않은 사우스 브리지와 프로세서가 운전 모드들 간의 변환 능력을 지닌 노트북 시스템에서 사용되도록 한다.The use of the PLD allows the unmodified South Bridge and the processor to be used in notebook systems with the ability to convert between modes of operation.

만약 상기 운전 모드 로직 및 소프트웨어를 가능한한 단순하게 유지하려면, 상기 버스 클록 주파수가 상기 변화동안 66MHz와 100MHz 사이에서 변화되지 않아야 한다. 상기 BF 설정들이 종래에는 상기 프로세서 클록 주파수 단위들의 입도를 제한하는 1/2 x 단위(예를 들면, 2x, 2.5x, 3x, 3.5x, 등)이기 때문이다. 만약 더 큰 완전성이 허용될 수 있다면, 이러한 변화들이 구현될 것이다. 상기 버스 클록의 주파수 변화는 주변 구성소자 상호연결(Peripheral Component Interconnect: PCI)와 가속 그래픽 포트(Accelerated Graphics Port: AGP) 클록들을 생성하는데 사용되는 분배기 비율들에 영향을 미친다. 상기 클록 비율들을 변화시킬 때, 메모리를 슬립 또는 파원 다운(power down)으로 위치시키는 것이 필요할 것이다.To keep the operating mode logic and software as simple as possible, the bus clock frequency should not vary between 66 MHz and 100 MHz during the change. This is because the BF settings are conventionally 1/2 x units (e.g., 2x, 2.5x, 3x, 3.5x, etc.) that limit the granularity of the processor clock frequency units. If greater completeness can be tolerated, these changes will be implemented. The frequency change of the bus clock affects the splitter ratios used to generate Peripheral Component Interconnect (PCI) and Accelerated Graphics Port (AGP) clocks. When changing the clock ratios, it will be necessary to place the memory to sleep or power down.

상술된 구현은 내셔널 세미컨덕터의 LM4130과 같은 가변 전압 조절기 공급을 사용하고, 그 출력 전압은 칩셋 로직(외부 디바이스를 포함)에 의해 제어될 수 있다. 상기 전압 조절기가 적어도 4개의 제어 비트들을 공급하고, 상기 출력 전압이1.45 내지 2.2볼트의 최소범위를 허용하며, 50mV(또는 더 작게) 단위로 조절될 수 있는 것이 바람직하다. 더 넓은 범위가 일부 응용들에서는 바람직하다. 상기 전압 조절기의 제어 핀들은 파워 업 시에 모드 0(배터리 절약) 전압 레벨에서의 디폴트 작동을 위한 것이어야 한다. 상기 칩셋 또는 다른 적절한 로직은 상기 시스템이 작동이 되면 우측 운전 모드를 위해 CPU 전압 공급을 조절할 것이다.The implementation described above uses a variable voltage regulator supply, such as National Semiconductor's LM4130, and its output voltage can be controlled by chipset logic (including external devices). Preferably, the voltage regulator supplies at least four control bits, the output voltage allows a minimum range of 1.45 to 2.2 volts, and can be adjusted in units of 50 mV (or smaller). A wider range is desirable in some applications. The control pins of the voltage regulator should be for default operation at mode 0 (battery saving) voltage level upon power up. The chipset or other suitable logic will adjust the CPU voltage supply for the right mode of operation when the system is activated.

사우스 브리지 구현South Bridge Implementation

개시되는 바와 같이 운전 모드들을 변화시키는데 요구되는 구성소자들의 개수를 감소시키는 구현을 제공하기 위해, 상기 사우스 브리지는 외부 로직 디바이스를 사용하는 것이 아닌 다양한 운전 모드들 간의 변화를 위해 요구되는 로직을 제공하도록 변경될 수 있다. 이러한 시스템의 고차원 구현이 도 5에 개시된다.In order to provide an implementation that reduces the number of components required to change the operating modes as disclosed, the south bridge provides the logic required for changing between various operating modes rather than using an external logic device. can be changed. A high level implementation of such a system is disclosed in FIG. 5.

상기 사우스 브리지 구현의 일 방법은 상기 PLD 내에 포함된 로직을 상기 사우스 브리지에 통합시키는 것이다. 그러나, 상기 로직은 상기 사우스 브리지를 상기 PLD로 인터페이스하기 위해 요구된 다양한 신호들이 제거될 수 있기 때문에, 상기 로직은 단순화될 수 있다. 또한, 상기 멀티플렉서 신호와 같은 데이터 입력 신호의 사용은 제거될 수 있다. 사실, 상기 입력 레지스터들은 직렬적이 아닌 병렬적으로 로드되는 것이 바람직하고, 따라서 쉬프트 신호의 필요성을 제거한다. 일단 새로운 운전 모드가 요구되는 것이 결정되면, 상기 사우스 브리지 내의 레지스터가 적절한 전압 및 주파수 설정을 공급받는다.One method of implementing the south bridge is to integrate logic contained in the PLD into the south bridge. However, the logic can be simplified because the various signals required to interface the south bridge to the PLD can be eliminated. In addition, the use of a data input signal such as the multiplexer signal can be eliminated. In fact, the input registers are preferably loaded in parallel rather than serially, thus eliminating the need for a shift signal. Once it is determined that a new mode of operation is required, the resistor in the south bridge is supplied with the appropriate voltage and frequency settings.

일 구현에서, 상기 사우스 브리지는 현재 사용되지 않는(예를 들면, 110) 비트들[12:10]의 조합들 중의 하나를 사용하여 전력 관리 제어 레지스터(상기 표1을참조) 내에 새로운 슬립 형태를 정의한다. 이러한 비트들은 슬립 형태 또는 일시정지 형태로서 다양하게 지적된다. 상기 플립 인에이블 비트(또는 일시정지 인에이블)이 1로 설정되고, 상기 슬립 형태 비트들이 110으로 설정되는 때, 상기 시스템은 상기 노트북 운전 모드들에서 변환을 야기한다.In one implementation, the south bridge uses one of the combinations of bits [12:10] that are not currently used (eg, 110) to create a new sleep type in the power management control register (see Table 1 above). define. These bits are variously pointed out as a sleep form or a pause form. When the flip enable bit (or pause enable) is set to 1 and the sleep type bits are set to 110, the system causes a transition in the notebook operating modes.

도 13에 관하여, 운전 모드 제어 레지스터(130)는 새로운 운전 모드로의 변환에 필요한 상기 제어 정보를 공급한다. 상기 2개 비트 작동 모드 필드(131)는 현재 운전 모드를 고성능(00), AC 파워(01), 배터리 성능(10) 또는 배터리 절약 모드(11)로서 식별하는 상태 필드이다. 추가적인 운전 모드들은 추가적인 비트들을 요구할 것이다. 5개 비트 코어 전압 필드(132)는 새로운 코어 전압에 대한 제어 비트들을 정의하고, 4개 비트 CPU 클록 주파수 제어 비트들(133)은 상기 CPU 코어 주파수를 정의한다. 상술된 바와 같이, 상기 CPU 내의 클록 제어는 상기 버스 클록의 주파수 멀티플라이어로서 구현될 것이다. 일 구현에서, 상기 리세트 제어 비트가 1인 때, 상기 CPU는 운전모드 변환에서 리세트되고, 상기 리세트 제어 비트가 0인 때, 상기 CPU는 리세트되지 않는다. 만약 리세트가 상기 작동 코어 주파수를 변화시키기 위해 상기 CPU에 공급되면, 상기 리세트 이전에 프로세서 컨텍스트를 저장하는 것과, 상기 POSCCL 시퀀스에 관하여 개시된 바와 같이 상기 리세트 신호가 표명해제된 후 프로세서 컨텍스트를 복원하는 재개시 작동을 제공하는 것이 필요하다.Referring to Fig. 13, the driving mode control register 130 supplies the control information necessary for the conversion to the new driving mode. The two bit operating mode field 131 is a status field that identifies the current operating mode as high performance (00), AC power (01), battery performance (10) or battery saving mode (11). Additional modes of operation will require additional bits. The five bit core voltage field 132 defines the control bits for the new core voltage, and the four bit CPU clock frequency control bits 133 define the CPU core frequency. As mentioned above, clock control in the CPU will be implemented as a frequency multiplier of the bus clock. In one implementation, when the reset control bit is 1, the CPU is reset in an operation mode transition, and when the reset control bit is 0, the CPU is not reset. If a reset is supplied to the CPU to change the operating core frequency, storing the processor context prior to the reset and resetting the processor context after the reset signal is deasserted as disclosed for the POSCCL sequence. It is necessary to provide a restart operation to restore.

다른 구현에서, 상기 프로세서는 리세트로부터 분리되고, 상기 클록 주파수 제어 비트들을 래치하는 때를 상기 프로세서에게 알려주는 입력 신호를 구비한다.이 경우, 상기 래치 모드 CMD 비트(135)가 표명된다. 이 구현에서, 상기 사우스 브리지는 상기 주파수 제어 비트들(BF[0:2])에 추가하여, 상기 새로운 주파수 제어 비트들을 래치하는 때를 상기 CPU에 나타내는 주파수 래치 제어 신호(CMD)(515)를 제공한다(도 5를 참조). 상기 주파수 래치 제어신호(CMD)(515)가 표명되는 때, BF 핀 설정들은 상기 CMD(515) 신호의 표명 시에 획득되고 CMD(515)의 하강 에지에서 래치된다. 상기 래치 제어 신호(CMD)를 기준으로 하여 상기 BF 핀 설정들을 획득하기 위한 구현들은 물론 가능하다. 상기 래치 제어 신호(CMD)(515)의 사용은 상기 프로세서 컨텍스트가 상실되지 않음을 의미하는 리세트를 제공할 필요없이 새로운 운전 모드로의 변환을 제공한다. 따라서, 상기 변환은 상기 POSCCL 일시정지 및 재개시 작동보다 현저하게 소비하는 시간이 적다.In another implementation, the processor is separated from a reset and has an input signal informing the processor when to latch the clock frequency control bits. In this case, the latch mode CMD bit 135 is asserted. In this implementation, the south bridge adds a frequency latch control signal (CMD) 515 to the CPU indicating when to latch the new frequency control bits in addition to the frequency control bits BF [0: 2]. (See FIG. 5). When the frequency latch control signal (CMD) 515 is asserted, BF pin settings are acquired upon assertion of the CMD 515 signal and latched at the falling edge of the CMD 515. Implementations for acquiring the BF pin settings based on the latch control signal CMD are of course possible. The use of the latch control signal (CMD) 515 provides a transition to a new mode of operation without having to provide a reset meaning that the processor context is not lost. Thus, the conversion takes significantly less time than the POSCCL pause and resume operation.

만약 상기 CPU 리세트 신호가 주파수 변화를 의미하는데 사용되지 않으면, 일단 운전 모드들의 변화에 대한 필요성이 검출된 때, 소프트웨어는 레지스터(130) 내의 적절한 값들을 로드하고 상기 프로세서 클록들을 정지시킨다. 상기 클록들은 이전에 상술된 상기 STPCLK# 신호를 사용하여 상기 프로세서에서 정지될 수 있다. 상기 새로운 전압 및 주파수 제어 비트들은 상기 사우스 브리지에 의해 출력되고 상기 주파수 제어 래치 신호(CMD)(515)는 갱신된 주파수 제어 신호들이 사용가능함을 나타내도록 표명된다. 상기 CPU는 상기 래치 제어 신호(CMD)(515)의 표명시에 상기 주파수 제어 비트들(BF 핀들)을 샘플하고, 상기 신호의 표명해제시에 새로운 값들을 래치한다. 상기 사우스 브리지 내의 하드웨어는 상기 프로세서(PLL)가 안정화되는데 충분한 정도의 시간 동안 표명된 상기 래치 제어 신호(CMD)(515)를 유지한다. 일단 상기 프로세서(PLL)가 안정화되면, 상기 사우스 브리지 하드웨어는 상기 STPCLK# 신호를 표명해제하고, 상기 프로세서는 상기 어플리케이션 또는 사용자가 상기 운전 모드 변화를 인식함이 없이 작동을 재개시한다. 상기 변환을 위한 시간은 예를 들면 100㎲이하이다.If the CPU reset signal is not used to mean a frequency change, once a need for a change in operating modes is detected, software loads the appropriate values in register 130 and stops the processor clocks. The clocks can be stopped at the processor using the STPCLK # signal previously described above. The new voltage and frequency control bits are output by the south bridge and the frequency control latch signal (CMD) 515 is asserted to indicate that updated frequency control signals are available. The CPU samples the frequency control bits (BF pins) upon assertion of the latch control signal (CMD) 515 and latches new values upon deassertion of the signal. Hardware within the south bridge maintains the latched control signal (CMD) 515 asserted for a time sufficient to allow the processor PLL to stabilize. Once the processor PLL is stabilized, the south bridge hardware deasserts the STPCLK # signal, and the processor resumes operation without the application or user recognizing the change in the operation mode. The time for the conversion is, for example, 100 ms or less.

만약 리세트가 주파수에서의 변화를 나타내기 위해 사용된다면, 상기 프로세서에 대한 변화에 대한 요구를 회피하기 위해, 도 9A에 도시된 POSCCL과 유사한 시퀀스가 사용될 것이고, 전압과 주파수에 대한 새로운 제어 신호들이 상기 전력 온 일시정지(power on suspend: POS)의 후미부분과 도 9A의 (91)에서의 리세트의 표명 사이에 제공된다.If the reset is used to indicate a change in frequency, to avoid the need for a change to the processor, a sequence similar to the POSCCL shown in FIG. 9A will be used, and new control signals for voltage and frequency may be used. It is provided between the trailing portion of the power on suspend (POS) and the assertion of the reset in 91 in FIG. 9A.

일 운전 모드로부터 다른 운전 모드로의 변환 시퀀스는 인터럽트(예를 들면, SCI)가 작동 모드 사건으로 인하여 생성되는 때, 개시된다. 상기 노트북 컴퓨터가 도킹 스테이션, 포트 리플리케이터 또는 상기 노트북으로부터 열 에너지의 상당량을 제거할 수 있는 것이 아닌 다른 디바이스로 연결되거나 이들로부터 분리되기 때문에, 상기 사건은 일어날 것이다; 또는 AC 파워가 공급되거나 제거되는 때, 또는 상기배터리가 로우로 동작하거나 상기 작동 모드에 변화를 야기하는 다른 사건.The transition sequence from one mode of operation to another is initiated when an interrupt (eg, SCI) is generated due to an operation mode event. The event will occur because the notebook computer is connected to or disconnected from a docking station, port replicator or other device that is not capable of removing significant amounts of thermal energy from the notebook; Or other events when the AC power is applied or removed, or the battery operates low or causes a change in the operating mode.

상기 시스템 관리 소프트웨어는 일단 상기 사건이 검출되면 상기 작동 모드 제어 레지스터(130)를 상기 새로운 코어 전압과 새로운 클록 주파수 제어 비트들로 프로그램한다. 상기 소프트웨어는 상기 슬립 인에이블 비트뿐만 아니라 상기 슬립 형태 비트들을 110으로 설정한다. 사우스 브리지(505)내의 특수 레지스터(LVL3)의 판독은 상기 POSCCL 시퀀스를 수행하는 하드웨어 상태 머신을 개시시킨다. 작동 모드 제어 레지스터(130)의 사용은 사우스 브리지의 구현에서 또는 이전에 개시된 상기 PLD 구현에서 채용될 것이다.The system management software programs the operation mode control register 130 with the new core voltage and new clock frequency control bits once the event is detected. The software sets the sleep type bits to 110 as well as the sleep enable bit. Reading special register LVL3 in South Bridge 505 initiates a hardware state machine that performs the POSCCL sequence. The use of the operation mode control register 130 will be employed in the South Bridge implementation or in the PLD implementation previously disclosed.

예를 들면 비-ACPI 환경에서 상기 LVL3 레지스터를 판독함으로써 운전 모드 시퀀스에서의 상기 변화를 개시하는 다른 방법으로서, 기록(또는 판독) 레지스터(130)가 상기 운전 모드 변화를 구현하는 상기 제어 로직을 개시시키는 트리거로서 사용된다. 이러한 트리거는 상기 운전 모드 변화가 상기 래치 제어 신호(CMD) 또는 상기 리세트 신호를 사용하는 때 사용될 것이다. 이러한 경우, 프로세서 컨텍스트를 저장하는 것은 만약 리세트가 사용되면 상기 레지스터를 기록하기 전에 완료되어야 한다. 만약 래치 제어 신호(CMD)(515)가 사용되면, 상기 신호가 예를 들면 하나의 PCI 클록에 대해서, 레지스터(130)가 기록된 후, 상기 BIF 신호들이 유효하다는 것을 나타내기 위해 스트로브(strobed)될 것이다.As another method of initiating the change in a driving mode sequence, for example by reading the LVL3 register in a non-ACPI environment, a write (or read) register 130 initiates the control logic to implement the driving mode change. It is used as a trigger. This trigger will be used when the operation mode change uses the latch control signal CMD or the reset signal. In this case, saving the processor context must be completed before writing the register if reset is used. If a latch control signal (CMD) 515 is used, the signal is strobe to indicate that the BIF signals are valid after the register 130 is written, for example for one PCI clock. Will be.

도 5에 관하여, 상기 사우스 브리지는 상기 점퍼 설정들(511)로부터의 디폴트값이 CPU(503)과 전압 조절기(501)로 공급되는 것을 확증할 필요가 여전히 있음을 인식해야 한다. 도 14에 관하여, 상기 PLD 구현과 유사한 방법으로, 제어 로직(144)으로부터 공급된 선택 신호(142)에 따라 상기 제어 레지스터(130)와 점퍼 설정들(511) 내의 값들 사이에서 선택하는 멀티플렉서(1414)가 제공된다. 제어 로직(144)은 필요한 일시정지 및 재개시 상태 머신들을 포함하여 예를 들면 도9A에 도시된 상기 일시정지 및 재개시 시퀀스들을 구현한다. 멀티플렉서(141)는 리세트(예를 들면, 전력 온 리세트 또는 다른 하드 또는 소프트 리세트)에 대한 응답으로 상기 디폴트 점퍼 설정들을 선택하는 점퍼설정들(511)로부터의 값을 출력레지스터(143)에 공급한다. 또한, 클록들이 정지된 후 및 새로운 주파수 설정으로 또는 상기 하강 에지가 새로운 주파수 설정을 래치되도록 한다고 가정하여 CMD의 리세트의 상승 에지에서 리세트 또는 CMD 신호를 부하에 공급하기 전에, 출력 레지스터(143)가 로드된다.With respect to FIG. 5, the south bridge should recognize that it is still necessary to confirm that the default values from the jumper settings 511 are supplied to the CPU 503 and the voltage regulator 501. With reference to FIG. 14, in a manner similar to the PLD implementation, a multiplexer 1414 that selects between values in the control register 130 and jumper settings 511 in accordance with the select signal 142 supplied from control logic 144. ) Is provided. Control logic 144 implements the pause and resume sequences shown, for example, in Figure 9A, including the necessary pause and resume state machines. Multiplexer 141 outputs a value from jumper settings 511 that selects the default jumper settings in response to a reset (eg, power on reset or other hard or soft reset). To feed. Also, after the clocks are stopped and before the reset or CMD signal is supplied to the load at the rising edge of the reset of the CMD, either at the new frequency setting or assuming that the falling edge latches the new frequency setting. ) Is loaded.

도 13에 관하여, 제어 비트(136)는 상기 클록 생성기(507)가 상기 운전 모드 변환 동안 디스에이블인지 아닌지를 정의한다. 상기 코어 cpu 클록들을 디스에이블하기 위해 상기 사우스 브리지로부터의 상기 STPCLK#을 사용하여, 클록 생성기(507)에서 (POSCCL에서와 같이) 상기 CPU로 공급되는 상기 클록들을 디스에이블시킬 수 있다. 이때 상기 클록 주파수 제어 비트들은 갱신되고, 상기 클록들은 클록 생성기(507)에서 다시 되돌려진다. 클록 생성기(507)가 다른 시스템 구성소자들과 결합될 수 있음이 인식되어야 한다. 그 출력들이 상기 사우스 브리지의 GPO 제어 비트들에 의해 인에이블될 수 있는 클록 생성기를 구비하는 것이 바람직하다. 상기 클록 생성기는 다수의 PLL 셀들이 특수한 설계로, 예를 들면 100MHz 또는 66MHz에서 상기 CPU와, 24KHz 및 48KHz에서 직렬 디바이스들과, 33MHz에서 PCI 디바이스들을 지원하는 설계로 요구되는 다양한 클록 주파수들을 지원하도록 한다.With respect to FIG. 13, control bit 136 defines whether the clock generator 507 is disabled during the operation mode conversion. Using the STPCLK # from the South Bridge to disable the core cpu clocks, the clock generator 507 may disable the clocks supplied to the CPU (as in POSCCL). The clock frequency control bits are then updated and the clocks are returned back to the clock generator 507. It should be appreciated that clock generator 507 may be combined with other system components. It is desirable to have a clock generator whose outputs can be enabled by the GPO control bits of the south bridge. The clock generator allows a large number of PLL cells to support the various clock frequencies required in a special design, for example, the CPU at 100 MHz or 66 MHz, the serial devices at 24 KHz and 48 KHz, and the design supporting PCI devices at 33 MHz. do.

도 15에 관하여, 상기 순서도는 운전 모드 변화들을 야기하기 위한 하드웨어를 통합하는 상기 사우스 브리지의 전체 작동을 개시한다. 이전에 개시된 바와 같이 추가적 전원이 사용가능하게 되는 경우와 같은 운전 모드 변화를 야기하는 사건이 검출된 때, 소프트웨어가 단계(1501)에서 레지스터(130)에 대한 요구된 값들을 설정한다. 단계(1503)에서, 리세트 제어 비트(134)가 레지스터(130)에서 세트되었는지 안되었는지에 대한 결정이 이루어진다. 만약 그렇다면, 단계(1504)에서 프로세서 컨텍스트를 저장하는 것이 요구된다. 이것은 상기 사우스 브리지에 의해 사용되어질 정밀한 슬립 형태를 결정한다. 만약 상기 리세트 제어 비트(134)가 사용되지 않을 것이라면, 상기 래치 명령 비트(135)가 세트되고, 프로세서 컨텍스트를 저장하는 단계(1504)가 생략될 것이다. 물론, 오직 하나의 비트가 리세트 또는 래치 명령 신호를 사용하는지 여부를 나타내기 위해 사용될 필요가 있다. 만약 레지스터(130)로의 접근이 운전 모드에서의 변화를 개시하기 위한 트리거로서 사용되면, 컨텍스트는 이러한 접근 이전에 저장될 필요가 있다. 일단 프로세서 컨텍스트가 단계(1504)에서 저장되면, 또는 만약 리세트가 사용되어지지 않으면, 사우스 브리지 내의 상태 머신은 상기 운전 모드 변화에 영향을 끼치는 단계들을 따르는 것을 이어받을 수 있다.With respect to FIG. 15, the flowchart describes the overall operation of the south bridge incorporating hardware to cause driving mode changes. When an event is detected that causes an operation mode change, such as when an additional power source becomes available as previously disclosed, the software sets the required values for the register 130 in step 1501. At step 1503, a determination is made whether the reset control bit 134 is set in the register 130 or not. If so, it is required to store the processor context at step 1504. This determines the precise slip shape to be used by the south bridge. If the reset control bit 134 is not to be used, then the latch command bit 135 is set and step 1504 of storing the processor context will be omitted. Of course, only one bit needs to be used to indicate whether to use the reset or latch command signal. If access to the register 130 is used as a trigger to initiate a change in operating mode, the context needs to be stored prior to this access. Once the processor context is stored in step 1504, or if the reset is not used, the state machine in the south bridge can take over following the steps affecting the operation mode change.

단계(1505)에서, 상기 소프트웨어는 상기 운전 모드 변화에 영향을 미치는 상태 머신 시퀀스를 개시하는 레지스터(LVL3)의 판독을 수행한다. 단계(1507)에서, 사우스 브리지는 STPCLK#을 표명한다. 상기 상태 머신 또는 다른 적절한 하드웨어 및/또는 소프트웨어는 상기 프로세서가 그 내부 코어 클록들을 껐음을 나타내는 상기 프로세서로부터의 표시인 수신되어질 스톱 승낙 특수 버스 사이클을 기다린다. 상기 스톱 승낙 확인응답은 상기 프로세서에 의해 상기 스톱 승낙 상태에 도달되는데 걸리는 최대시간 이상의 소정의 시간을 단순하게 기다림으로써 상기 CPU 버스 사이클들의 감시없이 수행될 수 있음이 인식되어야 한다.In step 1505, the software performs a read of the register LBL3 to initiate a state machine sequence that affects the operation mode change. In step 1507, the South Bridge asserts STPCLK #. The state machine or other suitable hardware and / or software waits for a stop accept special bus cycle to be received which is an indication from the processor that the processor has turned off its internal core clocks. It should be appreciated that the stop accept acknowledgment may be performed without monitoring of the CPU bus cycles by simply waiting for a predetermined time above the maximum time taken by the processor to reach the stop accept state.

어떤 경우에든, 일단 스톱 승낙이 확인되거나 상기 소정의 시간 한계에 도달되고 스톱 승낙 상태가 상기 프로세서 내에 존재한다고 가정되면, 제어 레지스터(130) 내의 상기 스톱 클록 비트(136)가 세트되었는지가 판단된다. 만약 상기 비트가 세트되었으면, 단계(1513)에서, 상기 클록 생성기(507)로부터의 상기 CPU로의 클록 출력은 상기 스톱 클록선(인에이블(509))을 사용하여 꺼진다. 이때 단계(1515)에서, 새로운 전압과 주파수 제어 설정들이 각각 상기 전압 조절기와 상기 BF 핀들에 부여된다. 단계(1517)에서, 상기 스톱 클록 비트(인에이블(509))가 표명되었는지가 판단된다. 만약 그렇다면, 단계(1519)에서, 클록 생성기(507)는 인에이블되어 상기 클록을 상기 CPU로 출력하고, 상기 PLL이 안정화될 충분한 시간이 제공된다. 단계(1521)에서, 리세트가 상기 갱신된 주파수 제어 값들로 래치하는데 사용되는지 판단된다. 만약 그렇다면, 단계(1523)에서, CPU 리세트가 상기 새로운 주파수 제어 비트들로 래치하기 위해 스트로브된다. 만약 상기 리세트가 사용되지 않으면, 상기 CMD 신호(515)는 상기 프로세서가 리세트없이 상기 새로운 주파수로 래치하도록 상기 사우스 브리지에 의해 스트로브된다. 단계(1527)에서, 상기 STPCLK# 신호가 표명해제된다. 그럼으로써 상기 CPU가 CPU 코어 클록들을 공급하는 것을 재개하도록 한다. 상기 프로세서는 단계(1529)를 수행하기를 재개시한다. 만약 컨텍스트가 리세트가 사용됨으로써 상실되었다면, 컨텍스트는 이때 복원됨이 인식되어야 한다. 이것은 하드웨어(예를 들면 상태 머신)제어 하에서가 아닌 소프트웨어 제어 하에서 성취될 수 있다.In any case, once a stop accept is confirmed or assumed that the predetermined time limit has been reached and a stop accept state exists in the processor, it is determined whether the stop clock bit 136 in the control register 130 has been set. If the bit is set, then at step 1513, the clock output from the clock generator 507 to the CPU is turned off using the stop clock line (enable 509). At step 1515, new voltage and frequency control settings are assigned to the voltage regulator and the BF pins, respectively. In step 1517, it is determined whether the stop clock bit (enable 509) has been asserted. If so, then at step 1519, clock generator 507 is enabled to output the clock to the CPU and to provide sufficient time for the PLL to stabilize. In step 1521, it is determined whether a reset is used to latch into the updated frequency control values. If so, then at step 1523, a CPU reset is strobe to latch the new frequency control bits. If the reset is not used, the CMD signal 515 is strobe by the south bridge to cause the processor to latch to the new frequency without reset. In step 1527, the STPCLK # signal is deasserted. This allows the CPU to resume supplying CPU core clocks. The processor resumes performing step 1529. If the context is lost by using a reset, it should be recognized that the context is then restored. This may be accomplished under software control rather than under hardware (eg state machine) control.

레지스터(130)의 사용은 리세트 또는 래치 제어 신호 CMD의 사용이 선택될 수 있고, 상기 프로세서 외부로의 클록들의 꺼짐이 선택될 수 있는 실시예를 제공한다. 다른 실시예들에서, 상기 사우스 브리지(또는 다른 적절한 집적 회로)는 옵션을 제공하지 않을 것이다. 달리 말하면, 다른 실시예들에서, 리세트가 항상 사용되거나 상기 래치 제어 명령 신호가 항상 사용된다. 또한, 상기 변화 운전 모드 시퀀스는 상기 프로세서 외부로의(또한 내적으로) 클록들을 항상 끄거나 이러한 클록들이 동작하도록 항상 둔다.The use of register 130 provides an embodiment in which the use of a reset or latch control signal CMD may be selected, and the turning off of clocks out of the processor may be selected. In other embodiments, the south bridge (or other suitable integrated circuit) will not provide an option. In other words, in other embodiments, a reset is always used or the latch control command signal is always used. In addition, the change operation mode sequence always turns off clocks out of (or internally) the processor or leaves these clocks always on.

만약 상기 노트북 PC가 66MHz와 100MHz 버스 클록 주파수를 사용한다면, 사기 클록 생성기는 다수의 PLL 셀들이 다른 시스템 요구 주파수들을 일정하기 하면서 상기 CPU 클록을 슬루(slew)시킬 수 있다. 상기 클록 생성기는 상기 프로세서 내의 클록 멀티플라이어 회로가 록을 풀지못하도록 상기 CPU의 지터 제한사항들 내에서 상기 CPU 클록 주파수에서의 변화율을 유지하면서 소정의 범위로 상기 CPU 주파수를 슬루시킬 수 있다.If the notebook PC uses 66 MHz and 100 MHz bus clock frequencies, a fraudulent clock generator can slew the CPU clock while multiple PLL cells are consistent with other system demand frequencies. The clock generator may slew the CPU frequency in a predetermined range while maintaining a rate of change in the CPU clock frequency within the jitter constraints of the CPU to prevent the clock multiplier circuitry in the processor from unlocking.

열 관리Thermal management

주파수와 전압들을 작동시키는 프로세서를 조정하는 것은 환경에 따른 전력 보시와 열 생성 및 발산을 최적화시킨다. 또한, 열 관리 능력이 요구된다. ACPI는 열 관리를 위해 하나는 수동이고 하나는 능동인 2개의 내장 방법을 지니다. 상기 수동 방법은 상기 프로세서가 더 적은 열을 생성하도록 억제시키는 것에 의존하고, 반면에 상기 능동 방법은 상기 프로세서와 시스템으로부터 열을 제거하기 위해 팬과 같은 냉각 디바이스를 사용한다. 적절한 열 감지기가 수동 및 능동 방법에 대한 프로세서의 온도를 측정한다. 상기 열 설계는 하나 또는 그 이상의 열 영역들을 기준으로 한다. 각 영역에서, 3개까지의 열적 임계들이 정의된다:Adjusting the processor to operate frequencies and voltages optimizes power conservation and heat generation and dissipation according to the environment. In addition, thermal management capabilities are required. ACPI has two built-in methods, one passive and one active, for thermal management. The passive method relies on inhibiting the processor to generate less heat, while the active method uses a cooling device such as a fan to remove heat from the processor and system. Suitable heat detectors measure the temperature of the processor for passive and active methods. The thermal design is based on one or more thermal regions. In each zone, up to three thermal thresholds are defined:

열적 감시를 위해 오늘날 사용되는 2가지 방법들이 있다: 전체 시스템 감시 방법과 CPU-단일 감시 방법이 있다. 상기 전체 보드 감시 방법은 전체 전압(예를 들면, CPU 코어, CPU I/O, 3.3V, 5V 12V, -12V -5V), 팬 회전 속도, 상기 CPU의 온도 및 상기 보드의 온도를 측정하는 수단을 제공한다. 상기 내셔널 LM78과 같은 디바이스들이 이러한 시스템 감시 방법을 위해 사용될 것이다. 상기 CPU-단일 감시 방법은 상기 내셔널 LM75를 사용할 수 있다. 상기 LM78은 상기 프로세서의 온도가 허용 제한치 이상인 때 또는 상기 온도가 소정의 양만큼 변화한 때 인터럽트를 생성하는데 사용되는 개방 컬렉터 출력을 지니다. 상기 시스템 관리 버스(System Management Bus: SMBus)가 상기 디바이스 내의 과온도 및 온도 히스테리시스 값들을 프로그램하는데 사용된다. 상기 SM 버스는 열 감지기들, 섀시 침입(chassis intrusion) 경고 감지기와 같은 감시 디바이스들과 통신하기 위해 사용되고 팬 속도 제어를 제공하는 슬로우(slow) 2 비트 직렬 버스이다. 종래의 사우스 브리지들은 SMBus 인터페이스를 구비함으로써 시스템 소프트웨어는 이러한 디바이스들과 통신하고(셋업하고 제어하고), 이러한 디바이스들로부터 판독할 수 있다(이러한 디바이스들로부터 데이터를 수용할 수 있다). 상기 내셔널 LM77 디바이스는 과온도를, 또는 온도가 소정의 세트점들 이상이거나 이하임 것을 나타내는 개별 출력들을 구비하고, 추가적인 신뢰성을 제공한다. 만약 ACPI가 상기 세트점 인터럽트에 응답하는 것에 실패하면, 과온도를 나타내는 출력은 하드웨어를 통하여 상기 시스템을 차단할 수 있다.There are two methods used today for thermal monitoring: full system monitoring and CPU-single monitoring. The full board monitoring method includes a means for measuring a total voltage (eg, CPU core, CPU I / O, 3.3V, 5V 12V, -12V-5V), fan rotation speed, temperature of the CPU and temperature of the board. To provide. Devices such as the National LM78 will be used for this system monitoring method. The CPU-single monitoring method may use the National LM75. The LM78 has an open collector output that is used to generate an interrupt when the temperature of the processor is above an acceptable limit or when the temperature changes by a predetermined amount. The System Management Bus (SMBus) is used to program the overtemperature and temperature hysteresis values in the device. The SM bus is a slow 2-bit serial bus that is used to communicate with surveillance devices such as heat detectors, chassis intrusion alert detectors and provides fan speed control. Conventional south bridges have an SMBus interface so that system software can communicate with (set up and control) these devices and read from these devices (can receive data from such devices). The National LM77 device has individual outputs that indicate overtemperature, or that the temperature is above or below a predetermined set point, and provides additional reliability. If ACPI fails to respond to the setpoint interrupt, an output indicating overtemperature may shut down the system through hardware.

ACPI는 상기 프로세서 온도와 비교되는 온도 세트-점들을 관리한다. 상기 온도가 상기 세트-점을 초과하면, 상기 프로세서에 의해 열 발산을 감소시키거나(수동방법) 상기 시스템으로부터 열을 추출하는(능동 방법) 동작이 취해진다. 필요한 레지스터들과 인터페이스가 상기 PIIX4 사우스 브리지들에 일반적으로 포함된다. 다수의 새로운 사우스 브리지들은 PIIX4와 호환가능하다. 그럼으로써 다른 회사의 칩셋들에 대해 ACPI BIOS 및 운영 시스템 모드를 적응시키는 노력을 감소시키는 데 도움이 된다.ACPI manages temperature set-points compared to the processor temperature. If the temperature exceeds the set-point, an action is taken by the processor to reduce heat dissipation (passive method) or to extract heat from the system (active method). Necessary registers and interfaces are generally included in the PIIX4 south bridges. Many new South Bridges are compatible with PIIX4. This helps to reduce the effort to adapt ACPI BIOS and operating system modes for other company's chipsets.

ACPI는 프로세서 열 관리를 위한 세트-점들을 관리한다. 하나는 만약 상기 프로세서가 너무 뜨거우면 차단을 개시할 오류 안전 세트-점이다. 다른 세트-점들은 ACPI의 "능동" 및 "수동" 냉각 방법들과 관련된다. 각각의 방법 또는 두 방법은 상술된 운전 모드들 통합하는 노트북 설계에 통합될 수 있다.ACPI manages set-points for processor thermal management. One is a failsafe set-point that will initiate blocking if the processor is too hot. Other set-points relate to the "active" and "passive" cooling methods of ACPI. Each method or both methods can be integrated into a notebook design incorporating the modes of operation described above.

능동 냉각 모드에서, ACPI는 상기 프로세서 히트 싱크 상에 놓여진 감지기에 의해 또는 상기 프로세서 상에 직접적으로 놓여진 감지기에 의해 생성된 온도 보고를 기준으로 하여 냉각 디바이스를 켜거나 끈다. 상기 온도 감지기가 온도 상의 변화(대개 5도)를 감지한 때, 상기 온도 감지기는 새로운 온도를 ACPI의 열 관리로 보고한다. 만약 상기 온도가 ACPI 표에 제공된 제한이상이면, 상기 냉각 디바이스가 켜진다. 상기 온도 감지기가 상기 온도가 다른 표값 이상인 온도로의 감소를 보고한 때, 상기 냉각 디바이스는 꺼진다.In the active cooling mode, ACPI turns the cooling device on or off based on a temperature report generated by a sensor placed on the processor heat sink or by a sensor placed directly on the processor. When the temperature sensor detects a change in temperature (usually 5 degrees), the temperature sensor reports the new temperature to the thermal management of the ACPI. If the temperature is above the limit provided in the ACPI table, the cooling device is turned on. When the temperature sensor reports a decrease to a temperature where the temperature is above another table value, the cooling device is turned off.

이러한 임계값들이 프로그램될 수 있고. 소프트웨어가 최적 결과를 위한 임계치들을 동적으로 조정할 수 있도록 되는 것을 인식하여야 한다. 예를 들면, 상기 능동 냉각 임계치가 초과되면, 상기 시스템 소프트웨어는 상기 시스템 팬을 저속으로 작동시키고, 더 높은 온도에서 상기 능동 냉각 임계치를 재프로그램한다. 만약 상기 시스템 온도가 계속 상승하면, 새로운 냉각 임계치를 결국 초과할 것이다. 응답으로, 상기 팬 속도가 증가될 것이고, 만약 적절하다면 상기 능동 냉각 임계치가 더 높은 점에서 다시 세트될 수 있다.These thresholds can be programmed. It should be appreciated that the software will be able to dynamically adjust the thresholds for optimal results. For example, if the active cooling threshold is exceeded, the system software runs the system fan at low speed and reprograms the active cooling threshold at a higher temperature. If the system temperature continues to rise, it will eventually exceed the new cooling threshold. In response, the fan speed will be increased and, if appropriate, the active cooling threshold can be set again at a higher point.

일반적으로, 상기 냉각 디바이스는 상기 프로세서의 히트 싱크 상에 또는 근처에 넣어진 소형팬이다. 상기 팬을 동작시키는 것은 전도와 대류에 의해서만 수행될 수 있는 것보다 상기 프로세서를 더 냉각시키기 위해 상기 노트북 PC의 케이스 외부로부터 공기를 순환시킨다. 상기 능동 냉각 시스템은 더 정밀하게 되어질 수 있다. 결합되면, 상기 포트 리플리케이터 또는 도킹 스테이션에서의 외부 팬은 보다 더 공기를 순환시킬 수 있다. 사용되는 다른 기술들은 히트 파이프들과, 더 큰 열 발산 플레이트들 또는 과거에 데스크탑 프로세서를 냉각시키기 위해 사용되었던 펠티어(Peltier) 결합 디바이스와 같은 냉장 디바이스들을 포함한다.Generally, the cooling device is a small fan encased on or near the heat sink of the processor. Operating the fan circulates air from outside the case of the notebook PC to cool the processor more than can only be done by conduction and convection. The active cooling system can be made more precise. When coupled, an external fan at the port replicator or docking station can further circulate air. Other technologies used include refrigeration devices such as heat pipes and larger heat dissipation plates or Peltier coupling devices that have been used to cool desktop processors in the past.

이동 시스템은 각 모드의 작동을 위해 (AC/배터리 및 결합/비결합) 상기 ACPI 표들에서의 다른 능동 냉각 디바이스와 온도 세트점들을 사용한다. 능동 디바이스들은 전력을 소비하기 때문에, 이러한 디바이스들은 운전 모드 0, 배터리 수명 모드에서의 일정한 제한 사용을 수용할 것이 권장된다. 상기 시스템이 AC-선 어댑터와, 자동차 어댑터 또는 항공기 어댑터와 같은 외부 전원으로 동작하는 때에 능동 냉각이 좋은 방법이다.The mobile system uses different active cooling devices and temperature set points in the ACPI tables for operation in each mode (AC / battery and combined / uncoupled). Because active devices consume power, it is recommended that these devices accept certain limited usage in run mode 0, battery life mode. Active cooling is a good method when the system is operating from an AC-wire adapter and an external power source such as a car adapter or an aircraft adapter.

수동 냉각 모드에서, ACPI 전력 관리는 상기 프로세서 작동 농도를 안전한 레벨로 유지하기 위해 필요한 상기 프로세서의 "속도"를 동적으로 감소시키거나 증가시킨다. 분명하게, 상기 프로세서를 조절하는 것(throttling down)은 성능을 감소시키고, 소정의 감소된 속도로 작동하게 하지만, 오늘날의 프로세서들은 워드 프로세싱과 같은 어플리케이션을 동작시키기 위한 적절한 성능을 제공할 수 있다. 대부분의 노트북에서 사용되고, ACPI 및 PIIX4-호환가능 사우스 브리지들에 의해 직접적으로 지원되는 이러한 쓰로틀링 방법은 상기 프로세서의 STPCLK#(스톱 클록) 입력을 사용하는 상기 프로세서를 선택적으로 개시하도록 하고 정지하도록 함으로써 평균 프로세서의 속도를 감소시킨다.In passive cooling mode, ACPI power management dynamically reduces or increases the "speed" of the processor needed to maintain the processor operating concentration at a safe level. Obviously, throttling down the processor and reducing its performance and allowing it to operate at some reduced speed, but today's processors can provide adequate performance for running applications such as word processing. This throttling method, used in most notebooks and directly supported by ACPI and PIIX4-compatible south bridges, allows the processor to selectively start and stop using the processor's STPCLK # (stop clock) input. Reduce the average processor speed.

대부분의 쓰로틀링 구현은 3개의 비트 입도를 사용한다. 일률은 12.5%에서 12.5% 단위로 100%까지이다. (0은 허용될수 있는 값이 아님이 인식되어야 한다.) 온도가 상위제한까지 상승한 때, 쓰로틀링은 상기 온도가 하위제한 이하로 떨어질때까지 ACPI 표값에 의해 결정된 정도로 개시된다.Most throttling implementations use three bit granularities. The power ranges from 12.5% to 12.5% in 100% increments. (It should be appreciated that 0 is not an acceptable value.) When the temperature rises to the upper limit, throttling begins to the extent determined by the ACPI table value until the temperature falls below the lower limit.

상기 프로세서의 정지와 개시는 사용자에게는 인식될 수 없다. 그 이유는 상기 개시/정지 동작이 일어나는 주파수는 사람이 인식할 수 있는 것보다 더 빠르기 때문이다. PIIX4-호환가능 칩셋들은 실시간 클록을 사용하여 상기 일률을 결정하는 3개 비트 카운터를 구동시킨다.The stopping and starting of the processor is not noticeable to the user. The reason is that the frequency at which the start / stop operation occurs is faster than humans can recognize. PIIX4-compatible chipsets use a real-time clock to drive a three-bit counter that determines the power.

확장된 배터리 수명 모드(운전 모드0)에서 작동하는 이동 시스템들은 필요하다면 열 발생을 감소시키기 위해 클록 쓰로틀링을 사용해야 한다. 이동 시스템들은 쓰로틀링이 거의 요구되지 않은 25도씨의 실온으로 운전 모드0에서 작동할 때, 충분한 수동 냉각을 지녀야 한다. 상승된 온도 환경에서, 상기 프로세서는 보다 더 자주 조절될 수 있다.Mobile systems operating in extended battery life mode (operation mode 0) should use clock throttling if necessary to reduce heat generation. Mobile systems must have sufficient manual cooling when operating in operating mode 0 at room temperature of 25 degrees C, which requires little throttling. In elevated temperature environments, the processor may be adjusted more often.

노트북 PC가 결합된 때 데스크탑 성능 레벨을 성취하도록 하기 위해, 예를 들면 도킹 스테이션으로부터 (또는 추가적인 냉각 능력과 외부 전력을 공급하는 다른 방법들) 추가적인 열적 도움을 요구한다. 이러한 방법을 통해 발산된 추가적인 전력은 더 높은 CPU 전력 할당을 가능하게 하여, 상기 프로세서가 데스크탑 전력과 성능 레벨로 작동하도록 한다.In order to achieve the desktop performance level when the notebook PC is combined, it requires additional thermal assistance, for example from a docking station (or other ways of providing additional cooling power and external power). The additional power dissipated in this way allows for higher CPU power allocation, allowing the processor to operate at desktop power and performance levels.

도 16에 관하여, 노트북에 구현된 도킹 스테이션이 도시된다. 도 16은 상기 노트북 시스템이 도킹 스테이션(162) 내에 결합된 때 상기 노트북 컴퓨터(161)의 후면으로 삽입하는 프로브(165)를 냉각시키기 위해 상기 도킹 스테이션(162) 내에 펠티어 디바이스(163)를 사용하는 예시적인 시스템을 도시한다. 프로브(165)는 상기 프로세서의 히트싱크와 접촉하고 열을 전도시킨다. 상기 프로브(165)는 상기 도킹 스테이션의 AC 작동 전원으로부터 사용가능한 수 와트의 전력을 요구하는 상기 펠티어 디바이스(163)에 의해 냉각된다.With respect to FIG. 16, a docking station implemented in a notebook is shown. 16 illustrates the use of a Peltier device 163 in the docking station 162 to cool the probe 165 that inserts into the back of the notebook computer 161 when the notebook system is coupled in the docking station 162. An example system is shown. The probe 165 contacts the heat sink of the processor and conducts heat. The probe 165 is cooled by the Peltier device 163 which requires several watts of power available from the AC operating power source of the docking station.

히트 파이프 기술과 같은 다른 선택들이 사용가능하다. 히트 파이프들은 일반적으로 물 또는 다른 저압 하에서의 냉매로 채워진 튜브들로 이루어진다. 일 단부가 상기 프로세서에 의해 가열되는 때, 상기 냉매는 증발하는 때, 열을 흡수한다. 상기 증기는 히트 싱크에 의해 냉각되는 상기 파이프의 다른 단부로 이동한다. 상기 증기는 냉각되면서 액화하고, 심지를 통하여 모세관 작용으로 상기 시작점으로 되돌아간다. 히트 파이프들은 많은 다른 방법으로 제조될 수 있고 열을 발산하기 위해 금속 케이스와 같은 큰 표면에 연결될 수 있다. 따라서, 노트북 도킹 스테이션 방법은 운전 모드3에서 원하여진 증가된 성능을 가능하게 하기 위해 결합된때, 상기 노트북 컴퓨터로부터 열을 전도시키기 위해 팬과 히트 싱크와 히트 파이프를 포함한다.Other choices such as heat pipe technology are available. Heat pipes generally consist of tubes filled with refrigerant under water or other low pressure. When one end is heated by the processor, the refrigerant absorbs heat as it evaporates. The steam moves to the other end of the pipe, which is cooled by a heat sink. The vapor liquefies as it cools and returns to the starting point by capillary action through the wick. Heat pipes can be manufactured in many different ways and connected to large surfaces such as metal cases to dissipate heat. Thus, the notebook docking station method includes a fan, heat sink and heat pipe to conduct heat from the notebook computer when coupled to enable the increased performance desired in operating mode 3.

만약 열 전도가 사용되면, 사용자 접근 부분은 약 50℃이상으로 상승함을 인식하여야 한다. 통상 접촉이 없는 영역은 만지기에 불편해야 한다. 상기 도킹 스테이션으로부터의 강제된 공기가 프로세서의 냉각을 증가시키는 때, 잡음과 먼지 문제를 야기함을 인식해야 한다.If heat conduction is used, it should be recognized that the user access portion rises above about 50 ° C. Areas without contact usually have to be uncomfortable to touch. It should be appreciated that when forced air from the docking station increases the cooling of the processor, it causes noise and dust problems.

기계적 및 전기적 설계는 필요한 감지 기능을 지원하여 상기 노트북 컴퓨터는 상기 컴퓨터가 연결되는 때와 현재 연결되었는지와, 해제될 때와, 부가적인 전력 및/또는 부가적인 냉각이 사용가능한 때와, 또는 사용자 정의 작동 상태가 변경되는 때를 검출할 수 있다. 또한, 상기 노트북 PC는 AC 전력이 먼저 인가된 때와, AC 전력이 현존하는 때와, AC 전력이 제거되는 때를 검출해야 한다. 상기 설계는 전력 및 리세트 버튼들과, 주 배터리가 존재하는 때, 남은 배터리의 용량(즉 스마트 배터리), 배터리 충전 상태와, 부가 배터리가 선택 베이에 현존하는 때, 상기 배터리의 남은 용량과, 상기 배터리 충전 상태와 같은 모든 표준 노트북 상태를 검출하는 것을 지원해야 한다. 충전상태들이 고속 충전, 세류 충전, 배터리 고장(예를 들면, 단락) 및 충전되지 않음을 포함하는 것을 검출해야 한다. 일시정지 버튼(또는 키 결합)이 상기 시스템을 일시정지시키거나 기상시키기 위해 눌러진 때와, 상기 커버가 열리거나 닫혀진 때(예를 들면 일시정지시키고 기상시키거나 백라이트를 차단하는 선택)를 검출해야 한다.The mechanical and electrical design supports the necessary sensing functions such that the notebook computer is connected and currently connected, when disconnected, when additional power and / or additional cooling is available, or user defined. It is possible to detect when the operating state changes. The notebook PC must also detect when AC power is applied first, when AC power is present, and when AC power is removed. The design includes the power and reset buttons, the capacity of the remaining battery when the main battery is present (i.e. smart battery), the state of charge of the battery, the remaining capacity of the battery when the additional battery is present in the selection bay, It should support detecting all standard notebook states such as battery charge state. It should be detected that the charge states include fast charge, trickle charge, battery failure (eg short circuit) and not charged. Detect when a pause button (or key combination) is pressed to pause or wake the system and when the cover is opened or closed (e.g. a choice to pause and wake or block the backlight). do.

상기 시스템은 프로세서 케이스 온도와 온도 "경고"를 위한 적어도 2개의 세트점들(상기 온도가 작동을 위한 안전 상위 제한 근처인 때 팬과 같은 냉각 디바이스를 켜기 위한 하나의 세트점과, 상기 온도가 상기 프로세서에 대한 손상을 방지하기 위한 임계 상위 제한에 도달할 때 즉각적인 보호 동작을 위한 하나의 세트점)을 감지해야 한다. 만약 팬이 부가적인 냉각을 위해 사용되면, 상기 팬이 동작함에 대한 확인이 제공된다(상기 팬의 속도가 감지될 수 있는 것이 바람직하다). 상술된 감지 능력은 종래에도 알려진 것이어서 본 명세서에서 개시되지 않는다.The system includes at least two set points for processor case temperature and temperature “warning” (one set point for turning on a cooling device such as a fan when the temperature is near a safe upper limit for operation, and the temperature is One setpoint for immediate protective action should be detected when a critical upper limit is reached to prevent damage to the processor. If a fan is used for additional cooling, confirmation is provided that the fan is running (preferably the speed of the fan can be detected). The sensing capability described above is known in the art and is not disclosed herein.

상술한 바와 같이, 노트북 컴퓨터는 향상된 전력과 열 관리를 제공하기 위해 그 환경에 동적으로 적응하고, 그 환경에서의 그 성능을 최적화시킨다. 개시된 본 발명의 설명은 설명을 위한 것이고, 하기에서 개시된 본 발명의 범위를 제한하고자 하는 것이 아님을 인식해야 한다. 예를 들면, 본 발명은 노트북들에서 지시된 (랩탑들 또는 휴대용 컴퓨터들로서 지시되는) 이동 컴퓨터들의 종류에 관하여 개시되고, 그 개시는 연산, 전화/팩스 및 네트워킹 특징들 또는 그 운전 모드가 사용가능함을 증명하는 통신 장치 및/또는 다른 소형 형태 인자 연산을 결합하는 휴대용 디바이스들인 개인 휴대 단말기(PDA)와 같은 다른 이용 연산 디바이스에서 사용될 것이다. 개시된 실시예들의 다른 변형들과 변경들은 하기의 청구범위에 개시된 본 발명의 범위와 정신을 벗어남이 없이, 개시된 상세한 설명을 기준으로 하여 이루어진다.As noted above, notebook computers dynamically adapt to their environment to provide improved power and thermal management and optimize their performance in the environment. It is to be understood that the description of the invention disclosed is for the purpose of description and is not intended to limit the scope of the invention disclosed below. For example, the present invention is directed to the type of mobile computers (designated as laptops or portable computers) indicated in notebooks, the disclosure being that computing, telephone / fax and networking features or modes of operation are available. It will be used in other utilizing computing devices such as personal digital assistants (PDAs), which are portable devices that combine communication devices and / or other small form factor operations to attest. Other variations and modifications of the disclosed embodiments are made on the basis of the disclosed details without departing from the scope and spirit of the invention as set forth in the claims below.

Claims (12)

전기 시스템에서의 집적 회로의 전력 소비를 제어하는 방법에 있어서, 상기 방법은:A method of controlling power consumption of an integrated circuit in an electrical system, the method comprising: 제 1 전압과 제 1 주파수에서 상기 집적 회로를 작동시키는 단계와;Operating the integrated circuit at a first voltage and a first frequency; 상기 전기 시스템에서의 다수의 작동 특성들 중의 적어도 하나에서의 변화를 검출하는 단계와;Detecting a change in at least one of a plurality of operating characteristics in the electrical system; 상기 변화의 검출에 대한 응답으로, 상기 집적 회로의 적어도 실질적인 부분에서의 클록 동작을 정지시키는 단계와;In response to detecting the change, stopping clock operation in at least a substantial portion of the integrated circuit; 상기 변화에 대한 응답으로 갱신된 주파수 제어 정보를 클록 제어 로직에 공급하는 단계 및;Supplying updated frequency control information to clock control logic in response to the change; 상기 갱신된 주파수 제어 정보에 대응하는 제 2 클록 주파수에서 상기 집적 회로를 작동시키기 위해 상기 클록들을 재개시하는 단계를 포함하는 것을 특징으로 하는 전력 소비를 제어하는 방법.Restarting the clocks to operate the integrated circuit at a second clock frequency corresponding to the updated frequency control information. 제 1 항에 있어서, 상기 방법은:The method of claim 1 wherein the method is: 상기 변화에 응답하여 갱신된 전압 제어정보를 전압 제어 회로에 공급하는 단계 및;Supplying updated voltage control information to a voltage control circuit in response to the change; 상기 갱신된 전압 제어 정보에 대응하는 제 2 전압에서 상기 집적 회로를 작동시키는 단계를 추가적으로 포함하는 것을 특징으로 하는 전력 소비를 제어하는방법.Operating the integrated circuit at a second voltage corresponding to the updated voltage control information. 제 2 항에 있어서, 상기 클록 제어 로직은 상기 집적 회로 상에 놓여지고, 적어도 일부의 클록 신호들이 상기 집적 회로 상에서 액티브이고, 이때 상기 클록들이 상기 집적 회로의 실질적인 부분 상에서 정지되고, 이때 상기 클록들이 상기 집적 회로에 공급된 클록 제어 신호에 따라 상기 집적 회로의 실질적인 부분에서 정지되는 것을 특징으로 하는 전력 소비를 제어하는 방법.3. The system of claim 2, wherein the clock control logic is placed on the integrated circuit, wherein at least some clock signals are active on the integrated circuit, wherein the clocks are stopped on a substantial portion of the integrated circuit. And stop at a substantial portion of the integrated circuit in accordance with a clock control signal supplied to the integrated circuit. 제 2 항에 있어서, 상기 주파수 제어 정보는 클록 멀티플라이어 정보로서 상기 집적 회로 상의 클록 멀티플라이어 로직으로 공급되는 것을 특징으로 하는 전력 소비를 제어하는 방법.3. The method of claim 2, wherein the frequency control information is supplied to clock multiplier logic on the integrated circuit as clock multiplier information. 제 1 항 내지 제 4 항 중의 어느 한 항에 있어서, 상기 집적 회로는 프로세서이고, 이때 상기 전기 시스템은 노트북 컴퓨터 시스템인 것을 특징으로 하는 전력 소비를 제어하는 방법.5. The method of any one of the preceding claims, wherein said integrated circuit is a processor, wherein said electrical system is a notebook computer system. 제 1 항 내지 제 4 항 중의 어느 한 항에 있어서, 상기 작동 특성들은 전원 특징과 열 환경을 포함하는 것을 특징으로 하는 전력 소비를 제어하는 방법.5. The method of any one of claims 1 to 4, wherein the operating characteristics include power source characteristics and a thermal environment. 제 1 항 내지 제 4 항 중의 어느 한 항에 있어서, 상기 작동 특성들은 사용자 선택 작동 파라미터들을 포함하는 것을 특징으로 하는 전력 소비를 제어하는 방법.Method according to any of the preceding claims, wherein the operating characteristics comprise user-selected operating parameters. 제 6 항에 있어서, 상기 전원 특성은 외부 전력의 존재를 포함하고, 이때 상기 열 환경은 부가적인 냉각의 사용가능을 포함하는 것을 특징으로 하는 전력 소비를 제어하는 방법.7. The method of claim 6, wherein the power characteristic includes the presence of external power, wherein the thermal environment comprises the use of additional cooling. 제 1 항 내지 제 4 항 중의 어느 한 항에 있어서, 상기 방법은 상기 클록들을 정지시키기 전에 프로세서 컨텍스트를 저장하는 단계와, 상기 클록들을 재개시하기 전에 상기 프로세서 컨텍스트를 복원하는 단계를 추가적으로 포함하는 것을 특징으로 하는 전력 소비를 제어하는 방법.5. The method of claim 1, further comprising storing a processor context prior to stopping the clocks and restoring the processor context before resuming the clocks. 6. Characterized in that the method for controlling power consumption. 컴퓨터 시스템에 있어서, 상기 시스템은:In a computer system, the system is: 제 1 클록과 제 1 전압을 수신하도록 된 제 1 로직 부분을 포함한 집적 회로와;An integrated circuit comprising a first clock portion and a first logic portion adapted to receive a first voltage; 프로그램가능 전압 조절기 회로와, 이때 상기 전압 조절기 회로에 공급된 전압 제어 신호들에 따라 상기 전압 조절기 회로는 제 1 전압에 대한 가변 전압 레벨을 공급하고;A programmable voltage regulator circuit, wherein the voltage regulator circuit supplies a variable voltage level for a first voltage in accordance with voltage control signals supplied to the voltage regulator circuit; 주파수 제어 신호들에 따라 결정된 주파수에서 제 1 클록을 생성하기 하도록 된 클록 제어 회로 및;A clock control circuit adapted to generate a first clock at a frequency determined in accordance with the frequency control signals; 상기 컴퓨터 시스템에서의 다수의 작동 특징들 중의 적어도 하나에서의 변화에 대한 표시를 수신하도록 된 제어 회로를 구비하고, 상기 제어 회로는 제 1 전압에 대한 새로운 전압값과, 제 1 클록에 대한 새로운 주파수를 표시하는 상기 전압 제어 신호들과 주파수 제어 신호들을 공급하기 위해 작동 특성들에서의 변화에 응답하고, 상기 새로운 전압값과 새로운 주파수는 상기 작동 특성들에서의 변화에 대응하는 것을 특징으로 하는 컴퓨터 시스템.Control circuitry adapted to receive an indication of a change in at least one of a plurality of operating characteristics in the computer system, the control circuitry having a new voltage value for a first voltage and a new frequency for a first clock. Responsive to a change in operating characteristics for supplying the voltage control signals and the frequency control signals, wherein the new voltage value and the new frequency correspond to a change in the operating characteristics. . 제 10 항에 있어서, 상기 작동 특성들은 외부 전력과 부가 냉각의 사용가능성의 존재를 포함하고, 상기 컴퓨터 시스템을 위한 배터리 성능 모드 및 배터리 절약 모드 간에서 선택하는 사용자 선택 작동 파라미터들을 포함하는 것을 특징으로 하는 컴퓨터 시스템.11. The method of claim 10, wherein the operating characteristics include the presence of external power and the availability of additional cooling, and include user-selected operating parameters that select between a battery performance mode and a battery saving mode for the computer system. Computer system. 제 10 항에 있어서, 상기 제어 회로는 제 2 집적 회로 상에 놓여지고, 제 2 집적 회로는 클록 스톱 신호를 상기 집적 회로에 공급하도록 되고, 상기 클록 스톱 신호는 작동 특성들에서의 변화에 응답하여 표명되고, 상기 클록 스톱 신호는 상기 제 1 클록이 상기 집적 회로 상에서 정지되도록 하고, 상기 클록 스톱 신호는 새로운 전압을 나타내는 신호들 이후에 표명해제되고, 주파수 제어 신호들은 상기 전압 조절기와 주파수 제어 로직에 각각 공급되는 것을 특징으로 하는 컴퓨터 시스템.11. The apparatus of claim 10, wherein the control circuit is placed on a second integrated circuit, the second integrated circuit is adapted to supply a clock stop signal to the integrated circuit, the clock stop signal in response to a change in operating characteristics. Asserted, the clock stop signal causes the first clock to stop on the integrated circuit, the clock stop signal is deasserted after signals representing a new voltage, and frequency control signals are sent to the voltage regulator and frequency control logic. A computer system, each of which is supplied.
KR1020027006012A 1999-11-09 2000-06-23 Dynamically adjusting a processor's operational parameters according to its environment KR20020050270A (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US16440999P 1999-11-09 1999-11-09
US60/164,409 1999-11-09
US47714100A 2000-01-03 2000-01-03
US09/477,141 2000-01-03
PCT/US2000/017460 WO2001035200A1 (en) 1999-11-09 2000-06-23 Dynamically adjusting a processor's operational parameters according to its environment

Publications (1)

Publication Number Publication Date
KR20020050270A true KR20020050270A (en) 2002-06-26

Family

ID=26860529

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020027006012A KR20020050270A (en) 1999-11-09 2000-06-23 Dynamically adjusting a processor's operational parameters according to its environment

Country Status (3)

Country Link
JP (1) JP2003514296A (en)
KR (1) KR20020050270A (en)
WO (1) WO2001035200A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017112029A1 (en) * 2015-12-22 2017-06-29 Intel Corporation Power delivery architecture to increase performance of computing systems when docked

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6898718B2 (en) * 2001-09-28 2005-05-24 Intel Corporation Method and apparatus to monitor performance of a process
US6823240B2 (en) * 2001-12-12 2004-11-23 Intel Corporation Operating system coordinated thermal management
US6944780B1 (en) * 2002-01-19 2005-09-13 National Semiconductor Corporation Adaptive voltage scaling clock generator for use in a digital processing component and method of operating the same
US7389435B2 (en) 2002-08-12 2008-06-17 Hewlett-Packard Development Company, L.P. System and method for the frequency management of computer systems to allow capacity on demand
US7076672B2 (en) 2002-10-14 2006-07-11 Intel Corporation Method and apparatus for performance effective power throttling
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
US6996730B2 (en) 2002-11-25 2006-02-07 Texas Instruments Incorporated Adjusting voltage supplied to a processor in response to clock frequency
DE10310780B4 (en) * 2003-03-12 2005-12-08 Fujitsu Siemens Computers Gmbh Control of the power consumption of a data processing system
US20040215912A1 (en) * 2003-04-24 2004-10-28 George Vergis Method and apparatus to establish, report and adjust system memory usage
US8237386B2 (en) 2003-08-15 2012-08-07 Apple Inc. Methods and apparatuses for operating a data processing system
US7451332B2 (en) 2003-08-15 2008-11-11 Apple Inc. Methods and apparatuses for controlling the temperature of a data processing system
US7508671B2 (en) * 2003-10-10 2009-03-24 Intel Corporation Computer system having controlled cooling
JP4784912B2 (en) * 2004-03-02 2011-10-05 パナソニック株式会社 Information processing device
US7966511B2 (en) 2004-07-27 2011-06-21 Intel Corporation Power management coordination in multi-core processors
US7451333B2 (en) 2004-09-03 2008-11-11 Intel Corporation Coordinating idle state transitions in multi-core processors
US7664970B2 (en) 2005-12-30 2010-02-16 Intel Corporation Method and apparatus for a zero voltage processor sleep state
US7194645B2 (en) 2005-02-09 2007-03-20 International Business Machines Corporation Method and apparatus for autonomic policy-based thermal management in a data processing system
JP4575859B2 (en) * 2005-08-05 2010-11-04 株式会社日立製作所 Electronic equipment
US8374730B2 (en) 2005-08-25 2013-02-12 Apple Inc. Methods and apparatuses for dynamic thermal control
US7562234B2 (en) 2005-08-25 2009-07-14 Apple Inc. Methods and apparatuses for dynamic power control
JP4624928B2 (en) * 2006-01-12 2011-02-02 ルネサスエレクトロニクス株式会社 Semiconductor integrated circuit device
JP2007249660A (en) * 2006-03-16 2007-09-27 Toshiba Corp Information processor and method of controlling system state
ES2676623T3 (en) * 2006-04-24 2018-07-23 Nokia Technologies Oy System and method for managing and controlling near-field communication for a mobile multifunctional device when the device is not charged or is only partially charged
US8044697B2 (en) * 2006-06-29 2011-10-25 Intel Corporation Per die temperature programming for thermally efficient integrated circuit (IC) operation
US7921312B1 (en) 2007-09-14 2011-04-05 National Semiconductor Corporation System and method for providing adaptive voltage scaling with multiple clock domains inside a single voltage domain
US8307180B2 (en) 2008-02-28 2012-11-06 Nokia Corporation Extended utilization area for a memory device
JP5186548B2 (en) 2008-02-29 2013-04-17 パナソニック株式会社 Interface device for host device, interface device for slave device, host device, slave device, communication system, and interface voltage switching method
TWI372330B (en) 2008-08-22 2012-09-11 Asustek Comp Inc Computer system capable of dynamically cahaging operation voltage and frequency of cpu
US8874824B2 (en) 2009-06-04 2014-10-28 Memory Technologies, LLC Apparatus and method to share host system RAM with mass storage memory RAM
US8504854B2 (en) * 2010-06-21 2013-08-06 Advanced Micro Devices, Inc. Managing multiple operating points for stable virtual frequencies
US9417998B2 (en) 2012-01-26 2016-08-16 Memory Technologies Llc Apparatus and method to provide cache move with non-volatile mass memory system
US9311226B2 (en) 2012-04-20 2016-04-12 Memory Technologies Llc Managing operational state data of a memory module using host memory in association with state change
US8984313B2 (en) * 2012-08-31 2015-03-17 Intel Corporation Configuring power management functionality in a processor including a plurality of cores by utilizing a register to store a power domain indicator
US9766823B2 (en) 2013-12-12 2017-09-19 Memory Technologies Llc Channel optimized storage modules
WO2015116205A1 (en) 2014-01-31 2015-08-06 Hewlett-Packard Development Company, L.P. Determination of a zero watt state for implementation
US9921618B2 (en) 2015-12-24 2018-03-20 Intel Corporation Cooling solution for a dock
WO2019175981A1 (en) * 2018-03-13 2019-09-19 三菱電機株式会社 Information processing unit
US20190377405A1 (en) * 2019-03-29 2019-12-12 Intel Corporation Input Voltage Protection
CN116414216A (en) * 2021-12-30 2023-07-11 华为技术有限公司 Frequency modulation method and related equipment

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0708406B1 (en) * 1994-10-19 2001-09-12 Advanced Micro Devices, Inc. Integrated processor systems for portable information devices
JP3075957B2 (en) * 1995-05-30 2000-08-14 株式会社東芝 Computer system
US5745375A (en) * 1995-09-29 1998-04-28 Intel Corporation Apparatus and method for controlling power usage
US5887179A (en) * 1996-06-11 1999-03-23 Motorola, Inc. System power saving means and method
US5881298A (en) * 1996-09-05 1999-03-09 Micron Technology, Inc. Portable computer with selectively operable cooling unit

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017112029A1 (en) * 2015-12-22 2017-06-29 Intel Corporation Power delivery architecture to increase performance of computing systems when docked
US10401931B2 (en) 2015-12-22 2019-09-03 Intel Corporation Power delivery architecture to increase performance of computing systems when docked

Also Published As

Publication number Publication date
JP2003514296A (en) 2003-04-15
WO2001035200A1 (en) 2001-05-17

Similar Documents

Publication Publication Date Title
KR20020050270A (en) Dynamically adjusting a processor's operational parameters according to its environment
US6272642B2 (en) Managing a system's performance state
US6535798B1 (en) Thermal management in a system
US9874925B2 (en) Method and apparatus for a zero voltage processor sleep state
US5590061A (en) Method and apparatus for thermal management in a computer system
US7937599B1 (en) Thermal and power management for computer systems
US7506190B2 (en) Thermal and power management for computer systems
US6446213B1 (en) Software-based sleep control of operating system directed power management system with minimum advanced configuration power interface (ACPI)-implementing hardware
US6347379B1 (en) Reducing power consumption of an electronic device
US5465367A (en) Slow memory refresh in a computer with a limited supply of power
US5623677A (en) Apparatus and method for reducing power consumption in a computer system
JP3419784B2 (en) Apparatus and method for reducing power consumption through both voltage scaling and frequency scaling
US5446906A (en) Method and apparatus for suspending and resuming a keyboard controller
JP3075957B2 (en) Computer system
US5630143A (en) Microprocessor with externally controllable power management
JP3974510B2 (en) Computer apparatus, power management method, and program
US20110131427A1 (en) Power management states
US5632037A (en) Microprocessor having power management circuitry with coprocessor support
US20020138778A1 (en) Controlling CPU core voltage to reduce power consumption
US20040117678A1 (en) System, method and apparatus for conserving power consumed by a system having a processor integrated circuit
US6457082B1 (en) Break event generation during transitions between modes of operation in a computer system
CA2024552A1 (en) Power management for a laptop computer
WO2001027728A1 (en) Minimizing power consumption during sleep modes by using minimum core voltage necessary to maintain system state
EP2843502B1 (en) Information processing device, information processing method, and program
US7120807B2 (en) Apparatus for resetting power management enable register and resetting power management register based on an operating system instruction and output of power management enable register

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination