[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

KR100856606B1 - A method and apparatus to dynamically change an operating frequency and operating voltage of an electronic device - Google Patents

A method and apparatus to dynamically change an operating frequency and operating voltage of an electronic device Download PDF

Info

Publication number
KR100856606B1
KR100856606B1 KR1020057006484A KR20057006484A KR100856606B1 KR 100856606 B1 KR100856606 B1 KR 100856606B1 KR 1020057006484 A KR1020057006484 A KR 1020057006484A KR 20057006484 A KR20057006484 A KR 20057006484A KR 100856606 B1 KR100856606 B1 KR 100856606B1
Authority
KR
South Korea
Prior art keywords
electronic device
operating voltage
operating frequency
current operating
current
Prior art date
Application number
KR1020057006484A
Other languages
Korean (ko)
Other versions
KR20050075359A (en
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 KR20050075359A publication Critical patent/KR20050075359A/en
Application granted granted Critical
Publication of KR100856606B1 publication Critical patent/KR100856606B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)
  • Networks Using Active Elements (AREA)

Abstract

일 실시예에 따르면, 전자 디바이스에 대한 목표 동작 포인트를 결정하는 단계 - 상기 목표 동작 포인트는 목표 동작 주파수 및 목표 동작 전압을 포함함 - 및 현재 동작 주파수 및 현재 동작 전압을 포함하는 상기 전자 디바이스의 현재 동작 포인트를, 상기 현재 동작 주파수를 상기 목표 동작 주파수로 그리고 상기 현재 동작 전압을 상기 목표 동작 전압으로 비동시적으로 변화시킴으로써 동적으로 변화시키는 단계 - 상기 현재 동작 전압의 변화 동안 상기 전자 디바이스는 활성 상태에 있음 -를 포함하는 방법이 제공된다.According to one embodiment, determining a target operating point for an electronic device, the target operating point comprising a target operating frequency and a target operating voltage, and a current operating frequency and a current operating voltage comprising the current operating voltage. Dynamically changing an operating point by asynchronously changing the current operating frequency to the target operating frequency and the current operating voltage to the target operating voltage, wherein the electronic device is in an active state during the change of the current operating voltage. Yes-is provided.

전자 디바이스, 목표 동작 주파수, 목표 동작 전압, 현재 동작 주파수, 현재 동작 전압, 활성 상태 Electronic device, target operating frequency, target operating voltage, current operating frequency, current operating voltage, active state

Description

전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시키기 위한 방법 및 장치{A METHOD AND APPARATUS TO DYNAMICALLY CHANGE AN OPERATING FREQUENCY AND OPERATING VOLTAGE OF AN ELECTRONIC DEVICE} FIELD OF THE INVENTION AND METHOD AND APPARATUS FOR VARIABLE VARIATION OF OPERATING FREQUENCY AND OPERATING VOLTAGE OF ELECTRONIC DEVICES.

본 발명의 실시예들은 전자 디바이스들에 관한 것이다. 특히, 본 발명의 실시예들은 전자 디바이스의 동작 전압 및 동작 주파수를 변화시키는 것에 관한 것이다. Embodiments of the present invention relate to electronic devices. In particular, embodiments of the present invention relate to varying operating voltages and operating frequencies of electronic devices.

본 명세서의 목적상, "전자 디바이스"라는 용어는 마이크로프로세서(프로세서), 칩셋, 그래픽 프로세서, 그래픽 액셀레터, 및 기타 데이터 프로세싱 디바이스들을 포함하나 이들로만 한정되는 것은 아닌 임의의 전자 디바이스를 포함하도록 광범위하게 해석되어야 한다. 전자 디바이스 주파수는 지난 10년에 걸쳐 대략 10배로 증가했다. 예를 들어, 90년대 중반에는 133mHz의 주파수에서 작동하는 전자 디바이스들이 보통이었으나, 오늘날 전자 디바이스는 1.6GHz 이상에서 작동된다. 이러한 전자 디바이스 주파수의 증가는 높은 동작 주파수 및 이러한 고주파수들에서 작동하는 전자 디바이스들과 연관된 고전력에 기인하여 전력 소모의 급격한 상승을 유도하였다. For the purposes of this specification, the term “electronic device” is used broadly to include any electronic device, including but not limited to microprocessors (processors), chipsets, graphics processors, graphics accelerators, and other data processing devices. It should be interpreted as Electronic device frequencies have increased approximately 10 times over the last decade. For example, in the mid-1990s, electronic devices operating at frequencies of 133 mHz were common, but today electronic devices operate at 1.6 GHz and above. This increase in electronic device frequency has led to a sharp rise in power consumption due to the high operating frequency and the high power associated with electronic devices operating at these high frequencies.

따라서, 전자 디바이스 전력 소모를 낮추는 것은 현대의 전자 디바이스들을 설계할 때 중요한 고려 사항이다. 저전력에서 작동하는 전자 디바이스들은, 배터리를 재충전할 필요없이, 배터리 전력으로 장기간 작동할 수 있다는 점에서 유리하다. Thus, lowering electronic device power consumption is an important consideration when designing modern electronic devices. Electronic devices operating at low power are advantageous in that they can operate for a long time on battery power without having to recharge the battery.

전자 디바이스의 전력 소모를 줄이는 한가지 기술은 전력 소모 및/또는 성능 기준에 기초하여 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 스케일하는 것이다. 예를 들어 고성능이 필요하지 않고 전자 디바이스가 배터리 전원으로 작동한다면, 전자 디바이스는 전력을 절약하기 위해 저주파수에서 작동하도록 동적으로 스케일되거나 스위칭될 수 있다. 전자 디바이스가 벽 소켓(AC 전원)에 접속될 때 디바이스는 그의 동작 주파수를 증가시키도록 스케일될 수 있다.One technique for reducing the power consumption of an electronic device is to dynamically scale the operating frequency and operating voltage of the electronic device based on power consumption and / or performance criteria. For example, if high performance is not required and the electronic device operates on battery power, the electronic device can be dynamically scaled or switched to operate at low frequencies to save power. When an electronic device is connected to a wall socket (AC power source), the device can be scaled to increase its operating frequency.

저전력 소모는 전자 디바이스의 동작 주파수에 부가하여 전자 디바이스의 동작 전압을 스케일링함으로써 달성될 수 있다. 그러나, 동작 전압을 스케일링하는 것은 전자 디바이스에 동작 불안정을 초래할 수 있다. 이러한 동작 불안정을 줄이기 위해, 전압 변화의 기간 동안 모든 계산들이 일반적으로 중지된다. 이 기간은 최저 동작 전압으로부터 최고 동작 전압까지 전압이 스윙하도록 허용하고, 전자 디바이스의 동작 주파수를 제어하는 위상 고정 루프 회로가 리셋되거나 재고정되도록 허용하기 위해 130㎲ 이상일 수 있다. 그렇게 긴 기간 동안 모든 계산을 중지하는 것은 전자 디바이스 성능의 열화를 초래할 것으로 평가된다.Low power consumption can be achieved by scaling the operating voltage of the electronic device in addition to the operating frequency of the electronic device. However, scaling the operating voltage can cause operating instability in the electronic device. To reduce this operational instability, all calculations are typically stopped during the period of voltage change. This period may be 130 kV or greater to allow the voltage to swing from the lowest operating voltage to the highest operating voltage, and to allow the phase locked loop circuit that controls the operating frequency of the electronic device to be reset or recalibrated. It is estimated that stopping all calculations for such a long period of time will result in degradation of the electronic device performance.

또한, 전압 변화 동안 전자 디바이스의 캐시로의 스누프 서비스(snoop services)가 가능하지 않기 때문에, 전압 변화 동안 메모리 트래픽은 적어도 130㎲ 이상 동안 통상적으로 중단된다. 메모리 트래픽의 중단은, 데이터가 상실되거나 또는 오디오-비쥬얼 아티펙트(audio-visual artifacts)가 사용자에게 인식될 수 있기 전인 10-15㎲ 이상의 지연을 통상적으로 견딜 수 없는 등시성 트래픽에 영향을 준다. 소정의 경우들에 있어서, 캐시들은 전압 스윙 전에 플러시(flush)되어야 한다. 이것은 전자 디바이스의 성능에 악영향을 주고 플러시 시간 패널티(penelty)에 기인하여 캐시 사이즈를 제한한다.Also, because snoop services to the cache of the electronic device during the voltage change are not possible, the memory traffic is typically interrupted for at least 130 Hz or more during the voltage change. Interruption of memory traffic affects isochronous traffic that typically cannot tolerate delays of 10-15 Hz or more before data is lost or audio-visual artifacts can be recognized by the user. In some cases, caches must be flushed before a voltage swing. This adversely affects the performance of the electronic device and limits the cache size due to flush time penalties.

상술한 바와 같이, 전자 디바이스에서 동작 전압의 변화를 달성하는 것은 각각의 변화 동안 전체 시스템 성능의 패널티를 초래할 수 있어서, 분당 변화 혹은 스위칭의 횟수를 제한하여, 전자 디바이스의 전력 모드가 전자 디바이스의 현재 성능 요구를 따라가지 못하게 한다. As noted above, achieving a change in operating voltage in the electronic device can result in a penalty of overall system performance during each change, limiting the number of changes or switching per minute, such that the power mode of the electronic device Do not keep up with performance requirements.

도 1은 본 발명의 일 실시예에 따른 전자 디바이스의 상위 레벨 블럭도.1 is a high level block diagram of an electronic device in accordance with an embodiment of the present invention.

도 2는 본 발명의 일 실시예에 따른 전압 전이 단계 동안 수행되는 동작들의 순서도.2 is a flow chart of operations performed during a voltage transition step according to one embodiment of the invention.

도 3은 본 발명의 일 실시예에 따른 주파수 전이 단계 동안 수행되는 동작들의 순서도.3 is a flow chart of operations performed during a frequency transition step in accordance with an embodiment of the present invention.

도 4는 본 발명에 따른 시스템의 상위 레벨 블럭도.4 is a high level block diagram of a system in accordance with the present invention.

본 명세서에서 "일 실시예" 또는 "실시예"의 참조는 그 실시예와 관련하여 설명되는 특징, 구조, 특성이 본 발명의 적어도 하나의 실시예에 포함됨을 나타낸다. 본 명세서의 여러 곳에 "일 실시예에서"라는 문구가 나오는데, 이는 모두 동일한 실시예를 참조하는 것일 필요는 없으며, 다른 실시예들과 상호 배타적인 별도의 혹은 대안적인 실시예들일 필요도 없다. 또한, 소정의 실시예들에 의해 제한될 수 있으나 다른 실시예들에 의해서는 제한되지 않는 다양한 특징들이 설명된다. 마찬가지로, 소정의 실시예들에 대해서는 요건이 될 수 있으나 다른 실시예들에서는 그렇지 않은 다양한 요건들이 설명된다. Reference in this specification to “one embodiment” or “an embodiment” indicates that a feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. The appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment, nor need to be separate or alternative embodiments that are mutually exclusive of other embodiments. In addition, various features are described that may be limited by certain embodiments but not limited by other embodiments. Likewise, various requirements are described that may be requirements for certain embodiments but not others.

도 1은 일 실시예에 따른 프로세서 형태의 전자 디바이스에 대한 다양한 단계들을 나타내는 단계도를 나타낸다. 도 1을 참조하면, 참조 번호 10은 프로세서의 동작의 정상 상태를 나타낸다. 이 정상 상태(10)에서, 프로세서는 현재 동작 주파수와 현재 동작 전압을 포함하는 동작 포인트에서 동작한다. 정상 상태(10)에서, 프로세서의 성능은 프로세서가 작동하고 있는 동작 포인트와 매칭된다. 즉, 정상 상태(10)는, 프로세서의 동작 포인트가, 프로세서의 성능 요건 및 전력 소비 요건의 두 견지에서 요구되는, 동작 주파수 및 동작 전압에서 동작하고 있는 프로세서의 상태이다.1 is a step diagram illustrating various steps for an electronic device in the form of a processor, according to one embodiment. Referring to FIG. 1, reference numeral 10 denotes a normal state of operation of the processor. In this steady state 10, the processor operates at an operating point that includes the current operating frequency and the current operating voltage. In steady state 10, the performance of the processor is matched with the operating point at which the processor is operating. That is, the steady state 10 is the state of the processor operating at the operating frequency and operating voltage at which the operating point of the processor is required in both terms of the processor's performance requirements and power consumption requirements.

일 실시예에 있어서, 프로세서는, 예를 들어 성능 요건이 증가되어 프로세서의 동작 포인트가 상승될 필요가 있는 경우가 발생하면 정상 상태(10)를 떠날 것이다. 대안적으로, 프로세서는, 전력을 절약할 필요가 있어서 프로세서의 동작 포인트가 낮추어지는 경우 발생하면 그의 정상 상태(10)를 떠날 것이다. 어느 한 경우에, 프로세서의 동작 포인트를 정상 상태(10)와 관련된 동작 포인트보다 낮은 목표 동작 포인트로 낮추기 위해, 프로세서는 먼저 프로세서의 동작 주파수가 정상 상태(10)에서의 프로세서의 동작 주파수보다 낮은 값으로 낮춰지는 주파수 전이 단계(12)로 진입한다. 주파수 전이 단계(12) 동안 수행되는 특정 동작들은 하기에서 더 상세히 설명될 것이다.In one embodiment, the processor will leave steady state 10 if, for example, a case where performance requirements increase and the operating point of the processor needs to be raised. Alternatively, the processor will leave its normal state 10 if it occurs when the operating point of the processor is lowered because of the need to save power. In either case, to lower the operating point of the processor to a target operating point lower than the operating point associated with steady state 10, the processor first determines that the operating frequency of the processor is lower than the operating frequency of the processor in steady state 10. The frequency transition step 12 is lowered to. Specific operations performed during the frequency transition step 12 will be described in more detail below.

주파수 전이 단계(12)의 실행 후, 프로세서는 전압 전이 단계(14)로 진입한다. 전압 전이 단계(14) 동안, 프로세서의 동작 전압은 정상 상태(10)와 관련된 동작 전압으로부터 정상 상태(10)와 관련된 동작 전압보다 낮은 목표 동작 전압으로 낮춰진다. 전압 전이 단계(14)를 실행한 후, 프로세서는 프로세싱 속도(성능) 및 전력 소비의 두 관점에서 현재의 요구들이 프로세서의 현재 동작 포인트와 매칭될 것이므로, 다시 정상 상태(10)에 있게 된다.After execution of the frequency transition step 12, the processor enters the voltage transition step 14. During the voltage transition step 14, the operating voltage of the processor is lowered from the operating voltage associated with the steady state 10 to a target operating voltage lower than the operating voltage associated with the steady state 10. After executing the voltage transition step 14, the processor is again in steady state 10 since the current needs will match the processor's current operating point in terms of processing speed (performance) and power consumption.

다른 경우에, 프로세서의 동작 포인트를 그의 정상 상태(10)의 동작 포인트로부터 높은 동작 포인트로 전이하기 위해, 프로세서는 먼저 정상 상태(10)와 관련된 동작 전압이 더 높은 목표 동작 전압으로 전이되는 전압 전이 단계(16)로 진입하고, 전압 전이 단계(16)를 실행한 후, 주파수 전이 단계(18)가 실행되어 정상 상태(10)와 관련된 동작 주파수가 더 높은 동작 주파수로 전이된다. 주파수 전이 단계(18)의 실행 후, 프로세서는 이제 전력 소비 및 프로세서 성능의 두 관점에서 요구되는 것과 매칭되는 동작 전압 및 동작 주파수를 포함하는 동작 포인트에서 동작할 것이므로, 다시 정상 상태(10)에 있게 된다. 소정의 실시예들에 있어서, 전압 전이 단계들(16, 14)은 동일하거나 유사한 동작들을 야기할 것이고, 주파수 전이 단계들(12, 18)은 동일하거나 유사한 동작들을 야기할 것이다. In other cases, to transition the operating point of the processor from its operating point in its steady state 10 to a higher operating point, the processor first transitions to a voltage transition where the operating voltage associated with the steady state 10 transitions to a higher target operating voltage. After entering step 16 and performing a voltage transition step 16, a frequency transition step 18 is executed to transition the operating frequency associated with the steady state 10 to a higher operating frequency. After the execution of the frequency transition step 18, the processor will now be operating again at the operating point including the operating voltage and operating frequency that matches what is required in both terms of power consumption and processor performance, thus bringing it back to the normal state 10. do. In certain embodiments, voltage transition steps 16 and 14 will result in the same or similar operations, and frequency transition steps 12 and 18 will result in the same or similar operations.

도 2를 참조하면, 참조 번호 30은 본 발명의 일 실시예에 따른 전압 전이 단계(14, 16) 동안 수행되는 동작들의 순서도를 나타낸다. 상술한 바와 같이, 전압 전이 단계(14, 16)는 프로세서가 그의 현재의 동작 전압이, 전압 전이 단계(14)의 경우 더 낮은 그리고 전압 전이 단계(16)의 경우에는 더 높은 목표 동작 전압과 다를 때 진입된다. 블럭 32에서, 프로세서의 현재의 동작 전압을 증분량만큼 변화시키기 위한 동작이 수행된다. 이 증분량은 상이한 프로세서들에 대해 다를 것이나, 일 실시예에서는 5-50mV 범위의 작은 양이다. 일 실시예에서는 각 증분량의 사이즈가 프로세서가 동작 불안정을 상승시키기 않고서 견딜 수 있는 증분 전압 변화를 나타내는 값으로 설정된다.Referring to FIG. 2, reference numeral 30 represents a flowchart of operations performed during the voltage transition step 14, 16 according to an embodiment of the present invention. As described above, the voltage transition steps 14, 16 allow the processor to differ from its current operating voltage, lower for voltage transition step 14 and higher target operating voltage for voltage transition step 16. When it enters. At block 32, an operation is performed to change the current operating voltage of the processor by an incremental amount. This increment will be different for different processors, but in one embodiment is a small amount in the range of 5-50 mV. In one embodiment, the size of each increment is set to a value that represents the incremental voltage change that the processor can tolerate without raising operational instability.

블럭 34에서, 전압을 증분하여 변화시킨 후, 프로세서는 프로세서의 회로가 새로운 동작 전압으로 조정될 수 있게 해주는 소정의 기간을 대기한다. 따라서, 각각의 증가를 시간적으로 산재시킴으로써, 프로세서와 연관된 클럭 회로와 로직 타이밍 회로는 소프트웨어에 투명한 방식으로 동작을 계속할 수 있다(즉, 프로세서는 활성 상태로 남아 있는다). 일 실시예에서, 소정의 대기 시간은 5-30㎲ 사이이다. 블럭 32에서, 목표 동작 전압이 도달되었는지를 결정하기 위해 체크가 이루어진다. 목표 동작 전압에 도달되지 않았으면, 블럭 32가 다시 실행되고, 그렇지 않다면 전압 전이 상태로부터 빠져 나온다. 전압 전이 단계(14, 16) 동안, 프로세서는, 프로세서가 계속해서 코드를 실행할 수 있고 프로세서와 연결된 프로세서 버스 상에서 메모리 트랜잭션이 여전히 가능한 활성 상태에 남아 있게 된다. At block 34, after incrementing and changing the voltage, the processor waits for a predetermined period of time allowing the circuitry of the processor to adjust to the new operating voltage. Thus, by interspersing each increment in time, the clock circuitry and logic timing circuitry associated with the processor can continue to operate in a software transparent manner (ie, the processor remains active). In one embodiment, the predetermined waiting time is between 5-30 ms. At block 32, a check is made to determine if the target operating voltage has been reached. If the target operating voltage has not been reached, block 32 is executed again, otherwise exits from the voltage transition state. During the voltage transition phases 14 and 16, the processor is able to continue executing code and the memory transaction still remains active on the processor bus associated with the processor.

도 3을 참조하면, 참조 번호 40은 주파수 전이 단계(12, 18) 동안 수행되는 동작들의 순서도이다. 블럭 42에서, 주파수 전이 단계(12, 18)에 진입한 후, 프로세서는 그에 연결된 프로세서 버스 상에서 새로운 버스 트랜잭션의 개시를 중지한다. 블럭 43에서, 프로세서 버스에 대한 모든 계류중인 또는 큐잉된 버스 트랜잭션이 완료되었는지를 판정하기 위한 체크가 이루어진다. 블럭 44가 실행되어 모든 계류중인 버스 트랜잭션들이 완료될 때까지 블럭 43이 재실행된다. 블럭 44의 실행은 원시 버스 메카니즘(native bus mechanism)을 이용하여 프로세서 버스를 스톨링하는 것을 포함한다. 그 후, 프로세서의 로직 유닛들을 중단하고, 소정의 경우에 코어 클럭인 제1 (코어) 클럭을 중단하고, 위상 고정 루프 회로에게 프로세서 코어가 목표 동작 주파수로 설정되도록 명령하는 것을 포함하는 블럭 46이 실행된다. Referring to FIG. 3, reference numeral 40 is a flowchart of operations performed during the frequency transition stages 12 and 18. As shown in FIG. At block 42, after entering the frequency transition steps 12 and 18, the processor stops initiating a new bus transaction on the processor bus connected thereto. At block 43, a check is made to determine if all pending or queued bus transactions for the processor bus have completed. Block 43 is re-executed until block 44 is executed to complete all pending bus transactions. Execution of block 44 includes stalling the processor bus using a native bus mechanism. Thereafter, block 46 includes stopping the logic units of the processor, in some cases stopping the first (core) clock, which is the core clock, and instructing the phase locked loop circuitry to set the processor core to the target operating frequency. Is executed.

블럭 46의 실행 후, 블럭 48이 실행되어 프로세서는 코어 위상 고정 루프 회로가 재설정되도록 해주는 소정의 지연 기간 동안 대기한다. 어떤 경우들에서, 소정의 지연 기간은 약 10㎲일 수 있다. 블럭 40에서, 코어 클럭이 복원되고, 프로세서 버스가 해제되고, 중단된 로직 유닛들이 재시작된다. 그 후, 블럭 52가 실행되어 정상 코드 실행이 재개된다.After execution of block 46, block 48 is executed so that the processor waits for a predetermined delay period causing the core phase locked loop circuit to be reset. In some cases, the predetermined delay period may be about 10 ms. At block 40, the core clock is restored, the processor bus is released, and the aborted logic units are restarted. Thereafter, block 52 is executed to resume normal code execution.

도 4를 참조하면, 참조 번호 60은 일반적으로 본 발명의 일 실시예에 따른 프로세서를 포함한 시스템을 나타낸다. 시스템(60)은 프로세서 버스(64)에 의해 메모리 컨트롤러(66)에 연결된 프로세서(62)를 포함한다. 메모리 컨트롤러(66)는 메인 메모리(68)와의 메모리 트랜잭션들을 제어한다. 프로세서는 프로세서(62)에 대한 전압 공급기(도시되지 않음)의 출력을 조절하는 전압 조절기(70)에 연결된다. 프로세서(62)는 대수 및 논리 유닛(ALU) 등과 같은 기능 유닛들을 포함하는 프로세서 코어(62A)를 포함한다. 위상 고정 루프 회로(62B)는 클럭 발생기(72)로부터 클럭 신호를 수신하고 수신된 클럭 신호를 요구되는 동작 주파수로 스케일링하는데, 스케일링된 클럭 신호는 프로세서 코어(62A)에 공급된다. Referring to FIG. 4, reference numeral 60 generally denotes a system including a processor according to an embodiment of the present invention. System 60 includes processor 62 coupled to memory controller 66 by processor bus 64. The memory controller 66 controls memory transactions with the main memory 68. The processor is connected to a voltage regulator 70 that regulates the output of a voltage supply (not shown) to the processor 62. Processor 62 includes processor core 62A that includes functional units such as algebra and logic units (ALUs) and the like. Phase locked loop circuit 62B receives a clock signal from clock generator 72 and scales the received clock signal to the required operating frequency, which is supplied to processor core 62A.

프로세서(62)는 또한 위상 고정 루프 회로(62B)와 전압 조절기(70) 모두를 제어하는 동작 포인트 제어 유닛(62C)을 포함한다. 사용 중, 동작 포인트 제어 유닛(62C)은 프로세서(62)의 동작 포인트가 목표 동작 포인트보다 더 높거나 낮아진다. 소정의 경우에, 이러한 판정은, 전력 및/또는 성능 요건들에 따라 프로세서의 동작 주파수 및 동작 전압을 스케일링하기 위해 운영 시스템으로부터 입력을 수신하는 단계를 포함할 수 있다. 소정의 경우에, 프로세서가 AC 전원으로부터 배터리 전원으로 스위칭될 때, 또는 작동중인 계산 부하가 줄어들면, 현재 동작 포인트는 목표 동작 포인트보다 높은 것으로 판정될 수 있다. 다른 경우에, 높은 프로세싱 부하가 있으면, 현재 동작 포인트는 목표 동작 포인트보다 낮은 것으로 판정될 수 있다. Processor 62 also includes an operating point control unit 62C that controls both phase locked loop circuit 62B and voltage regulator 70. In use, the operating point control unit 62C causes the operating point of the processor 62 to be higher or lower than the target operating point. In some cases, this determination may include receiving an input from an operating system to scale the operating frequency and operating voltage of the processor in accordance with power and / or performance requirements. In some cases, when the processor is switched from AC power to battery power, or if the running computational load is reduced, the current operating point may be determined to be higher than the target operating point. In other cases, if there is a high processing load, the current operating point may be determined to be lower than the target operating point.

목표 동작 포인트가 현재 동작 포인트보다 높으면, 동작 포인트 제어 유닛(62C)은 위상 고정 루프 회로(62B) 및 전압 조절기(70)에 제어 신호를 보내어, 프로세서(62)에 대한 동작 주파수 및 동작 전압을 증가시킨다. 역으로, 동작 포인트 제어 메카니즘(62C)이 목표 동작 포인트가 현재 동작 포인트보다 낮다고 판정하면, 동작 포인트 제어 유닛(62C)은 위상 고정 루프 회로(62B)에 제어 신호를 보내어 현재 동작 주파수를 목표 동작 주파수로 낮추게 한다. 또한, 동작 포인트 제어 유닛(62C)은 전압 조절기(70)에 제어 신호를 보내어 전압 조절기(70)가 프로세서(62)에 대한 동작 전압을 낮추기 위한 제어 신호를 송신하게 야기한다.If the target operating point is higher than the current operating point, the operating point control unit 62C sends control signals to the phase locked loop circuit 62B and the voltage regulator 70 to increase the operating frequency and operating voltage for the processor 62. Let's do it. Conversely, if the operating point control mechanism 62C determines that the target operating point is lower than the current operating point, the operating point control unit 62C sends a control signal to the phase locked loop circuit 62B to replace the current operating frequency with the target operating frequency. To lower it. The operating point control unit 62C also sends a control signal to the voltage regulator 70 causing the voltage regulator 70 to transmit a control signal for lowering the operating voltage for the processor 62.

프로세서(62)의 동작 주파수 및 동작 전압을 목표 동작 주파수 및 목표 동작 전압으로 변화시키기 위해 프로세서(62)에 의해 수행되는 실제 동작들은 도 1을 참조하여 상술한 주파수 전이 단계(12, 18)와 전압 전이 단계(14, 16) 동안 수행되는 동작들에 대응한다. 따라서, 전압 전이 단계는 주파수 전이 단계와 분리되고, 동작 포인트를 낮추는 다운 전이 동안 주파수 전이가 먼저 수행된다. 높은 동작 포인트로의 업 전이 동안, 높은 주파수 동작이 진행하도록 허용하기 위해 우선 전압 전이가 수행된다. 일 실시예에서 프로세서 동작 및 버스(64) 상의 버스 트래픽은 전압 전이 단계 동안 중단되지 않는다. 또한, 동작 불안정을 감소시키기 위해, 전압 전이가 작은 증분들로 수행되고(일 실시예에서 각각의 증분은 5-50mV이다), 시간적으로 산재되어(일 실시예에서 약 0.5 내지 30㎲만큼 떨어져서), 프로세서 회로가 전이에 의해 영향을 받지 않는다.Actual operations performed by the processor 62 to change the operating frequency and operating voltage of the processor 62 to the target operating frequency and the target operating voltage include the frequency shifting steps 12 and 18 described above with reference to FIG. Corresponds to the operations performed during the transition steps 14, 16. Thus, the voltage transition step is separated from the frequency transition step, and the frequency transition is first performed during the down transition lowering the operating point. During an up transition to a high operating point, a voltage transition is first performed to allow high frequency operation to proceed. In one embodiment, processor operation and bus traffic on bus 64 are not interrupted during the voltage transition phase. In addition, to reduce operating instability, voltage transitions are performed in small increments (each increment in one embodiment is 5-50 mV), and are interspersed in time (about 0.5 to 30 Hz apart in one embodiment). In other words, the processor circuit is not affected by the transition.

상술한 방식으로 전압 및 주파수 전이들을 수행하면서, 주파수 전이 단계는 일 실시예에서, 5-10㎲ 이내에 완성될 수 있다. 주파수 전이 페이즈 동안 프로세서 버스(64)가 작동가능하므로, 전이 단계들 동안 프로세서로의 트래픽은 원시 버스 메카니즘(native bus mechanism)을 이용하여 차단될 수 있다. 이것은 프로세서(62)를 포함하는 칩셋에 있어서 낮은 시간 오버헤드(낮은 대기시간 및 영향) 및 낮은 구현 비용을 가능하게 해준다. 일 실시예에서, 주파수 전이는 프로세서(62)내에서부터 완전히 제어되고, 따라서 이를 수행하기 위해 외부 디바이스가 필요하지 않다. 이것은 프로세서 인터페이스 핀들을 절약한다.While performing voltage and frequency transitions in the manner described above, in one embodiment the frequency transition step can be completed within 5-10 Hz. Since the processor bus 64 is operational during the frequency transition phase, traffic to the processor during the transition phases can be blocked using the native bus mechanism. This allows for low time overhead (low latency and impact) and low implementation costs for a chipset including processor 62. In one embodiment, the frequency transition is fully controlled from within the processor 62, so no external device is required to do this. This saves processor interface pins.

소정의 실시예들에서, 동작 포인트 제어 유닛(62C)은 하드 코드화된 다양한 동작 포인트들을 갖는다. 또한, 상술한 기술들을 실시하기 위해 필요한 각각의 전압 증분량 및 지연 기간도 동작 포인트 제어 유닛(62C) 내에 하드 코드화되어 있다. 다른 실시예들에서, 이 값들은 펌웨어로 존재할 수 있다. 또한 다른 실시예들에서, 이 값들은 부분적으로 또는 모두 소프트웨어로 프로그램될 수 있다.In certain embodiments, operating point control unit 62C has a variety of hard coded operating points. In addition, each voltage increment and delay period necessary for implementing the above-described techniques is also hard coded in the operating point control unit 62C. In other embodiments, these values may be present in firmware. Also in other embodiments, these values may be partially or all programmed in software.

상술한 프로세스들을 수행하기 위한 로직은 전자 디바이스 내에 하드웨어로 구현될 수 있으며, 또는 대안적으로 디바이스의 외부에 구현될 수 있다. 상술한 프로세스들은 또한 컴퓨터의 메모리 내에 실행될 명령들의 세트로서 저장될 수 있다. 또한, 상술한 동작들을 수행하기 위한 명령들은 대안적으로 자기 및 광학 디스크를 포함한, 다른 형태의 머신-판독가능 매체 상에 저장될 수 있다. 예를 들어, 일 실시예의 동작들은 디스크 드라이브(또는 컴퓨터-판독가능 매체 드라이브)를 통해 액세스 가능한 자기 디스크 또는 광학 디스크 등과 같은 머신-판독가능 매체 상에 저장될 수 있다. 또한, 명령들은 컴파일되고 링크된 버전의 형태로 데이터 네트워크를 통해 컴퓨팅 디바이스에 다운로드될 수 있다.Logic for performing the processes described above may be implemented in hardware within an electronic device, or alternatively, may be implemented outside of the device. The processes described above can also be stored as a set of instructions to be executed in a memory of a computer. In addition, the instructions for performing the operations described above may alternatively be stored on other forms of machine-readable media, including magnetic and optical disks. For example, the operations of one embodiment may be stored on a machine-readable medium, such as a magnetic disk or an optical disk, accessible through a disk drive (or computer-readable medium drive). In addition, the instructions may be downloaded to a computing device via a data network in the form of a compiled and linked version.

대안적으로, 상술한 동작들을 수행하기 위한 프로세스들은, LSI 회로(Large-Scale Integrated circuit), 주문형 집적 회로(ASIC's) 등과 같은 별개의 하드웨어 컴포넌트, 전기적으로 소거가능한 프로그래머블 ROM(EEPROM) 등의 펌웨어 등의 추가적인 컴퓨터 및/또는 머신 판독가능 매체 상에, 그리고 전기, 광, 음향 및 기타 형태의 전파 신호들(예를 들면, 반송파, 적외선 신호, 디지털 신호 등) 등에 구현될 수 있다. Alternatively, the processes for performing the above-described operations may include separate hardware components such as large-scale integrated circuits (ASI's), application specific integrated circuits (ASIC's), firmware such as electrically erasable programmable ROM (EEPROM), and the like. May be implemented on additional computer and / or machine readable media, and in electrical, optical, acoustical and other forms of propagated signals (eg, carrier waves, infrared signals, digital signals, etc.).

비록 본 발명은 특정한 바람직한 실시예들을 참조하여 설명되었지만, 다양한 변경들 및 변화들이 본 발명의 넓은 사상 및 범위를 벗어나지 않고 이루어질 수 있을 것이다. 따라서, 명세서 및 도면들은 제한적인 의미로가 아니고 예시적인 것으로 여겨져야 할 것이다. 그러므로, 예를 들어, 소정의 실시예에서는 동작 포인트 제어 유닛(62C) 또는 적어도 그 컴포넌트들이 프로세서(62)의 외부에 배치될 수도 있고, 프로세서(62)를 포함한 칩셋의 일부를 형성할 수도 있다. 또한, 동작 포인트 제어 유닛(62)은 펌웨어, 소프트웨어 또는 하드웨어로 구현될 수 있다. 마찬가지로, 전압 조절 유닛(70) 또는 적어도 그의 컴포넌트들은 프로세서(62) 또는 칩셋의 임의의 다른 일부 내부에 배치될 수 있다.Although the present invention has been described with reference to specific preferred embodiments, various changes and modifications may be made without departing from the broad spirit and scope of the invention. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense. Thus, for example, in some embodiments the operating point control unit 62C or at least its components may be disposed external to the processor 62 and may form part of a chipset including the processor 62. In addition, the operation point control unit 62 may be implemented in firmware, software or hardware. Likewise, the voltage regulation unit 70 or at least its components can be disposed inside the processor 62 or any other portion of the chipset.

Claims (27)

전자 디바이스에 대한 목표 동작 포인트를 결정하는 단계 - 상기 목표 동작 포인트는 목표 동작 주파수 및 목표 동작 전압을 포함함 -; 및Determining a target operating point for the electronic device, the target operating point comprising a target operating frequency and a target operating voltage; And 현재 동작 주파수를 상기 목표 동작 주파수로 그리고 현재 동작 전압을 상기 목표 동작 전압으로 비동시적으로 변화시키는 것에 의해, 현재 동작 주파수 및 현재 동작 전압을 포함하는 상기 전자 디바이스의 현재 동작 포인트를 동적으로 변화시키는 단계 - 상기 현재 동작 전압의 변화 동안 상기 전자 디바이스는 활성 상태에 있고, 상기 현재 동작 주파수의 변화 동안 프로세싱 디바이스에 연결된 전자 디바이스 버스는 스톨링(stall)되고 상기 전자 디바이스에 대한 제1 클럭이 중단되고 코어 클럭에 대한 위상 고정 루프 회로가 상기 목표 동작 주파수로 설정됨 -Dynamically changing a current operating point of the electronic device including a current operating frequency and a current operating voltage by asynchronously changing a current operating frequency to the target operating frequency and a current operating voltage to the target operating voltage. The electronic device is in an active state during the change in the current operating voltage, the electronic device bus connected to the processing device during the change in the current operating frequency is stalled and the first clock for the electronic device is stopped and the core Phase locked loop circuit for clock set to the target operating frequency- 를 포함하는, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시키는 방법.And a method for dynamically varying operating frequency and operating voltage of an electronic device. 제1항에 있어서,The method of claim 1, 상기 활성 상태에서 상기 전자 디바이스는 명령들을 실행하는 것과 버스 상에 입력/출력 트랜잭션들을 프로세싱하는 것 중 하나를 수행하는, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시키는 방법.In the active state, the electronic device performs one of executing instructions and processing input / output transactions on a bus. 제1항에 있어서,The method of claim 1, 상기 현재 동작 주파수를 변화시키는 것은, 상기 목표 동작 포인트가 상기 현재 동작 포인트보다 낮으면 상기 현재 동작 전압을 변화시키기 전에 수행되는, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시키는 방법.Changing the current operating frequency is performed before changing the current operating voltage if the target operating point is lower than the current operating point. 제1항에 있어서,The method of claim 1, 상기 현재 동작 전압을 변화시키는 것은, 상기 목표 동작 포인트가 상기 현재 동작 포인트보다 높으면 상기 현재 동작 주파수를 변화시키기 전에 수행되는, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시키는 방법.Varying the current operating voltage is performed before changing the current operating frequency if the target operating point is higher than the current operating point. 제1항에 있어서,The method of claim 1, 상기 현재 동작 전압을 변화시키는 것은 증분 형태로(in increments) 수행되는, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시키는 방법.Changing the current operating voltage is performed in increments, wherein the operating frequency and operating voltage of the electronic device are dynamically varied. 제5항에 있어서,The method of claim 5, 상기 증분은 10mV부터 20mV까지의 사이인, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시키는 방법. The increment being between 10 mV and 20 mV, wherein the operating frequency and operating voltage of the electronic device are varied dynamically. 제6항에 있어서,The method of claim 6, 각각의 증분은 많아야 16mV인, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시키는 방법.Wherein each increment is at most 16 mV, dynamically changing the operating frequency and operating voltage of the electronic device. 제5항에 있어서,The method of claim 5, 상기 현재 동작 전압의 각 증분 사이에 소정의 기간을 대기하는 단계를 더 포함하는, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시키는 방법.Waiting for a predetermined period between each increment of said current operating voltage. 제8항에 있어서,The method of claim 8, 상기 소정의 기간은 적어도 15㎲인, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시키는 방법.And wherein the predetermined period of time is at least 15 Hz. 삭제delete 제1항에 있어서,The method of claim 1, 상기 목표 동작 포인트를 결정하는 단계는 상기 전자 디바이스의 동작 시스템의 현재 성능 요건에 기초하는, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시키는 방법.Determining the target operating point is based on a current performance requirement of the operating system of the electronic device. 제1항에 있어서,The method of claim 1, 상기 동적으로 변화시키는 단계는 10㎲ 이내에서 완료되는, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시키는 방법.And wherein said dynamically changing step is completed within 10 kHz. 전자 디바이스에 대한 목표 동작 포인트를 결정하는 제1 유닛 - 상기 목표 동작 포인트는 목표 동작 주파수 및 목표 동작 전압을 포함함 -; 및A first unit for determining a target operating point for the electronic device, the target operating point comprising a target operating frequency and a target operating voltage; And 현재 동작 주파수를 상기 목표 동작 주파수로 그리고 현재 동작 전압을 상기 목표 동작 전압으로 비동시적으로 변화시키는 것에 의해, 현재 동작 주파수 및 현재 동작 전압을 포함하는 상기 전자 디바이스의 현재 동작 포인트를 동적으로 변화시키는 제2 유닛 - 상기 현재 동작 전압의 변화 동안 상기 전자 디바이스는 활성 상태에 있고, 상기 현재 동작 주파수의 변화 동안 프로세싱 디바이스에 연결된 전자 디바이스 버스는 스톨링되고 상기 전자 디바이스에 대한 제1 클럭이 중단되고 코어 클럭에 대한 위상 고정 루프 회로가 상기 목표 동작 주파수로 설정됨 -Asynchronously changing a current operating point of the electronic device including a current operating frequency and a current operating voltage by asynchronously changing a current operating frequency to the target operating frequency and a current operating voltage to the target operating voltage. 2 units-during the change in the current operating voltage the electronic device is in an active state, during the change in the current operating frequency the electronic device bus connected to the processing device is stalled and the first clock for the electronic device is stopped and the core clock Phase locked loop circuit is set to the target operating frequency- 을 포함하는, 동작 주파수 및 동작 전압을 동적으로 변화시킬 수 있는 전자 디바이스.And an electronic device capable of dynamically varying operating frequency and operating voltage. 제13항에 있어서,The method of claim 13, 상기 활성 상태에서 상기 전자 디바이스는 명령들을 실행하는 것과 버스 상에 입력/출력 트랜잭션들을 프로세싱하는 것 중 하나를 수행하는, 동작 주파수 및 동작 전압을 동적으로 변화시킬 수 있는 전자 디바이스.In the active state the electronic device is capable of dynamically changing an operating frequency and operating voltage to perform one of executing instructions and processing input / output transactions on a bus. 제13항에 있어서,The method of claim 13, 상기 현재 동작 주파수를 변화시키는 것은 상기 목표 동작 포인트가 상기 현재 동작 포인트보다 낮으면 상기 현재 동작 전압을 변화시키기 전에 수행되는, 동작 주파수 및 동작 전압을 동적으로 변화시킬 수 있는 전자 디바이스.Changing the current operating frequency is performed before changing the current operating voltage if the target operating point is lower than the current operating point, wherein the electronic device can dynamically change the operating frequency and operating voltage. 제13항에 있어서,The method of claim 13, 상기 현재 동작 전압을 변화시키는 것은 상기 목표 동작 포인트가 상기 현재 동작 포인트보다 높으면 상기 현재 동작 주파수를 변화시키기 전에 수행되는, 동작 주파수 및 동작 전압을 동적으로 변화시킬 수 있는 전자 디바이스.Changing the current operating voltage is performed before changing the current operating frequency if the target operating point is higher than the current operating point, wherein the electronic device can dynamically change the operating frequency and operating voltage. 제13항에 있어서,The method of claim 13, 상기 현재 동작 전압을 변화시키는 것은 증분 형태로 수행되는, 동작 주파수 및 동작 전압을 동적으로 변화시킬 수 있는 전자 디바이스.Changing the current operating voltage is performed in incremental form, wherein the electronic device can dynamically change the operating frequency and operating voltage. 전자 디바이스;Electronic device; 버스에 의해 상기 전자 디바이스에 연결된 메모리;Memory coupled to the electronic device by a bus; 상기 전자 디바이스에 대한 목표 동작 포인트를 결정하는 제1 유닛 - 상기 목표 동작 포인트는 목표 동작 주파수 및 목표 동작 전압을 포함함 -; 및A first unit for determining a target operating point for the electronic device, the target operating point including a target operating frequency and a target operating voltage; And 현재 동작 주파수 및 현재 동작 전압을 포함하는 상기 전자 디바이스의 현재 동작 포인트를, 상기 현재 동작 주파수를 상기 목표 동작 주파수로 그리고 상기 현재 동작 전압을 상기 목표 동작 전압으로 비동시적으로 변화시킴으로써 동적으로 변화시키는 제2 유닛 - 상기 현재 동작 전압의 변화 동안 상기 전자 디바이스는 활성 상태에 있고, 상기 현재 동작 주파수 변화 동안 프로세싱 디바이스에 연결된 전자 디바이스 버스는 스톨링되고 상기 전자 디바이스에 대한 제1 클럭이 중단되고 코어 클럭에 대한 위상 고정 루프 회로가 상기 목표 동작 주파수로 설정됨 -Dynamically changing a current operating point of the electronic device, including a current operating frequency and a current operating voltage, by asynchronously changing the current operating frequency to the target operating frequency and the current operating voltage to the target operating voltage. 2 units-during the change of the current operating voltage the electronic device is in an active state, during which the electronic device bus connected to the processing device is stalled and the first clock for the electronic device is stopped and the core clock Phase locked loop circuit is set to the target operating frequency 을 포함하는, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시킬 수 있는 시스템.And a system capable of dynamically varying operating frequency and operating voltage of the electronic device. 제18항에 있어서,The method of claim 18, 상기 활성 상태에서 상기 전자 디바이스는 명령들을 실행하는 것과 버스 상에 입력/출력 트랜잭션들을 프로세싱하는 것 중 하나를 수행하는, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시킬 수 있는 시스템.And wherein in the active state the electronic device is capable of dynamically changing the operating frequency and operating voltage of the electronic device performing one of executing instructions and processing input / output transactions on a bus. 제18항에 있어서,The method of claim 18, 상기 제2 유닛은 상기 목표 동작 포인트가 상기 현재 동작 포인트보다 낮으면 상기 현재 동작 전압을 변화시키기 전에 상기 현재 동작 주파수를 변화시키는, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시킬 수 있는 시스템.And the second unit is capable of dynamically changing an operating frequency and operating voltage of an electronic device that changes the current operating frequency before changing the current operating voltage if the target operating point is lower than the current operating point. 제18항에 있어서,The method of claim 18, 상기 제2 유닛은 상기 목표 동작 포인트가 상기 현재 동작 포인트보다 높으면 상기 현재 동작 주파수를 변화시키기 전에 상기 현재 동작 전압을 변화시키는, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시킬 수 있는 시스템.And the second unit is capable of dynamically changing an operating frequency and operating voltage of an electronic device that changes the current operating voltage before changing the current operating frequency if the target operating point is higher than the current operating point. 제18항에 있어서,The method of claim 18, 상기 제2 유닛은 상기 현재 동작 전압을 증분 형태로 변화시키는, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시킬 수 있는 시스템.And the second unit is capable of dynamically changing the operating frequency and operating voltage of the electronic device, changing the current operating voltage in incremental form. 제18항에 있어서,The method of claim 18, 상기 제1 및 제2 유닛은 상기 전자 디바이스 내에 있는, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시킬 수 있는 시스템.Wherein the first and second units are capable of dynamically changing an operating frequency and operating voltage of an electronic device within the electronic device. 컴퓨터에 의해 실행될 때 상기 컴퓨터가, The computer, when executed by the computer, 전자 디바이스에 대한 목표 동작 포인트를 결정하는 단계 - 상기 목표 동작 포인트는 목표 동작 주파수 및 목표 동작 전압을 포함함 -; 및Determining a target operating point for the electronic device, the target operating point comprising a target operating frequency and a target operating voltage; And 현재 동작 주파수를 상기 목표 동작 주파수로 그리고 현재 동작 전압을 상기 목표 동작 전압으로 비동시적으로 변화시키는 것에 의해, 현재 동작 주파수 및 현재 동작 전압을 포함하는 상기 전자 디바이스의 현재 동작 포인트를 동적으로 변화시키는 단계 - 상기 현재 동작 전압의 변화 동안 상기 전자 디바이스는 활성 상태에 있고, 상기 현재 동작 주파수의 변화 동안 프로세싱 디바이스에 연결된 전자 디바이스 버스는 스톨링되고 상기 전자 디바이스에 대한 제1 클럭이 중단되고 코어 클럭에 대한 위상 고정 루프 회로가 상기 목표 동작 주파수로 설정됨 -Dynamically changing a current operating point of the electronic device including a current operating frequency and a current operating voltage by asynchronously changing a current operating frequency to the target operating frequency and a current operating voltage to the target operating voltage. During the change of the current operating voltage the electronic device is in an active state, and during the change in the current operating frequency the electronic device bus connected to the processing device is stalled and the first clock for the electronic device is stopped and the core clock is Phase locked loop circuit is set to the target operating frequency- 를 포함하는, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시키는 방법을 수행하도록 하는 명령들의 시퀀스가 저장되어 있는 컴퓨터 판독가능 매체.A computer readable medium having stored thereon a sequence of instructions for performing a method of dynamically changing an operating frequency and an operating voltage of an electronic device. 제24항에 있어서,The method of claim 24, 상기 활성 상태에서 상기 전자 디바이스는 명령들을 실행하는 것과 버스 상에 입력/출력 트랜잭션들을 프로세싱하는 것 중 하나를 수행하는, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시키는 방법을 수행하도록 하는 명령들의 시퀀스가 저장되어 있는 컴퓨터 판독가능 매체.In the active state, the electronic device performs a method of dynamically changing the operating frequency and operating voltage of the electronic device, performing one of executing instructions and processing input / output transactions on a bus. A computer readable medium having stored thereon a sequence. 제24항에 있어서,The method of claim 24, 상기 현재 동작 주파수를 변화시키는 것은, 상기 목표 동작 포인트가 상기 현재 동작 포인트보다 낮으면 상기 현재 동작 전압을 변화시키기 전에 수행되는, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시키는 방법을 수행하도록 하는 명령들의 시퀀스가 저장되어 있는 컴퓨터 판독가능 매체.Varying the current operating frequency to perform a method of dynamically changing an operating frequency and operating voltage of an electronic device, which is performed before changing the current operating voltage if the target operating point is lower than the current operating point. A computer readable medium having stored thereon a sequence of instructions. 제24항에 있어서,The method of claim 24, 상기 현재 동작 전압을 변화시키는 것은, 상기 목표 동작 포인트가 상기 현재 동작 포인트보다 높으면 상기 현재 동작 주파수를 변화시키기 전에 수행되는, 전자 디바이스의 동작 주파수 및 동작 전압을 동적으로 변화시키는 방법을 수행하도록 하는 명령들의 시퀀스가 저장되어 있는 컴퓨터 판독가능 매체.Changing the current operating voltage is performed before the changing the current operating frequency if the target operating point is higher than the current operating point, performing a method of dynamically changing the operating frequency and operating voltage of the electronic device. A computer readable medium having stored thereon a sequence of data.
KR1020057006484A 2002-10-14 2003-10-03 A method and apparatus to dynamically change an operating frequency and operating voltage of an electronic device KR100856606B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/272,154 US7013406B2 (en) 2002-10-14 2002-10-14 Method and apparatus to dynamically change an operating frequency and operating voltage of an electronic device
US10/272,154 2002-10-14

Publications (2)

Publication Number Publication Date
KR20050075359A KR20050075359A (en) 2005-07-20
KR100856606B1 true KR100856606B1 (en) 2008-09-03

Family

ID=32069235

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057006484A KR100856606B1 (en) 2002-10-14 2003-10-03 A method and apparatus to dynamically change an operating frequency and operating voltage of an electronic device

Country Status (6)

Country Link
US (2) US7013406B2 (en)
EP (1) EP1552371A2 (en)
KR (1) KR100856606B1 (en)
CN (1) CN100351777C (en)
AU (1) AU2003275426A1 (en)
WO (1) WO2004036402A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150133592A (en) * 2014-05-20 2015-11-30 삼성전자주식회사 Apparatus and method for controlling operation of arithmetic and logical device

Families Citing this family (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7100061B2 (en) * 2000-01-18 2006-08-29 Transmeta Corporation Adaptive power control
US7941675B2 (en) * 2002-12-31 2011-05-10 Burr James B Adaptive power control
US7180322B1 (en) 2002-04-16 2007-02-20 Transmeta Corporation Closed loop feedback control of integrated circuits
US7770042B2 (en) * 2002-10-03 2010-08-03 Via Technologies, Inc. Microprocessor with improved performance during P-state transitions
US7814350B2 (en) * 2002-10-03 2010-10-12 Via Technologies, Inc. Microprocessor with improved thermal monitoring and protection mechanism
US7774627B2 (en) * 2002-10-03 2010-08-10 Via Technologies, Inc. Microprocessor capable of dynamically increasing its performance in response to varying operating temperature
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
TW575803B (en) * 2002-10-17 2004-02-11 Uniwill Comp Corp The method of managing portable computer power cord
US7886164B1 (en) 2002-11-14 2011-02-08 Nvidia Corporation Processor temperature adjustment system and method
US7849332B1 (en) 2002-11-14 2010-12-07 Nvidia Corporation Processor voltage adjustment system and method
US7882369B1 (en) 2002-11-14 2011-02-01 Nvidia Corporation Processor performance adjustment system and method
US7953990B2 (en) 2002-12-31 2011-05-31 Stewart Thomas E Adaptive power control based on post package characterization of integrated circuits
US7642835B1 (en) * 2003-11-12 2010-01-05 Robert Fu System for substrate potential regulation during power-up in integrated circuits
US7205758B1 (en) 2004-02-02 2007-04-17 Transmeta Corporation Systems and methods for adjusting threshold voltage
US7228242B2 (en) 2002-12-31 2007-06-05 Transmeta Corporation Adaptive power control based on pre package characterization of integrated circuits
US7949864B1 (en) 2002-12-31 2011-05-24 Vjekoslav Svilan Balanced adaptive body bias control
US7786756B1 (en) 2002-12-31 2010-08-31 Vjekoslav Svilan Method and system for latchup suppression
US7146514B2 (en) * 2003-07-23 2006-12-05 Intel Corporation Determining target operating frequencies for a multiprocessor system
US7187220B1 (en) * 2003-12-18 2007-03-06 Nvidia Corporation Memory clock slowdown
US7649402B1 (en) 2003-12-23 2010-01-19 Tien-Min Chen Feedback-controlled body-bias voltage source
US7692477B1 (en) 2003-12-23 2010-04-06 Tien-Min Chen Precise control component for a substrate potential regulation circuit
US7129771B1 (en) 2003-12-23 2006-10-31 Transmeta Corporation Servo loop for well bias voltage source
US7012461B1 (en) 2003-12-23 2006-03-14 Transmeta Corporation Stabilization component for a substrate potential regulation circuit
US7816742B1 (en) 2004-09-30 2010-10-19 Koniaris Kleanthes G Systems and methods for integrated circuits comprising multiple body biasing domains
US7859062B1 (en) 2004-02-02 2010-12-28 Koniaris Kleanthes G Systems and methods for integrated circuits comprising multiple body biasing domains
JP3915007B2 (en) * 2004-05-28 2007-05-16 ノキア コーポレイション Network system
KR100716730B1 (en) * 2004-06-11 2007-05-14 삼성전자주식회사 Method for decreasing the power consumption in cpu idle-state and mobile device using the same
US7774625B1 (en) 2004-06-22 2010-08-10 Eric Chien-Li Sheng Adaptive voltage control by accessing information stored within and specific to a microprocessor
US7562233B1 (en) 2004-06-22 2009-07-14 Transmeta Corporation Adaptive control of operating and body bias voltages
US7401241B2 (en) * 2004-06-22 2008-07-15 Intel Corporation Controlling standby power of low power devices
US7228446B2 (en) * 2004-12-21 2007-06-05 Packet Digital Method and apparatus for on-demand power management
US7337335B2 (en) * 2004-12-21 2008-02-26 Packet Digital Method and apparatus for on-demand power management
US7739531B1 (en) 2005-03-04 2010-06-15 Nvidia Corporation Dynamic voltage scaling
US7408420B2 (en) * 2005-09-27 2008-08-05 Intel Corporation Multi mode clock generator
US8954773B2 (en) 2005-10-21 2015-02-10 Freescale Semiconductor, Inc. Electronic device and method for controlling current of a processor load by slewing clock frequency
US7702935B2 (en) * 2006-01-25 2010-04-20 Apple Inc. Reporting flash memory operating voltages
US20070174641A1 (en) * 2006-01-25 2007-07-26 Cornwell Michael J Adjusting power supplies for data storage devices
US7861122B2 (en) * 2006-01-27 2010-12-28 Apple Inc. Monitoring health of non-volatile memory
DE102006012654B4 (en) * 2006-03-20 2008-02-07 Infineon Technologies Ag Clock frequency variation of a clocked power consumer
JP4845549B2 (en) * 2006-03-23 2011-12-28 ローム株式会社 POWER SUPPLY DEVICE AND ELECTRIC DEVICE HAVING THE SAME
US7548481B1 (en) * 2006-12-08 2009-06-16 Nvidia Corp. Method and apparatus for dynamic power adjustment in a memory subsystem
US20080288712A1 (en) 2007-04-25 2008-11-20 Cornwell Michael J Accessing metadata with an external host
US7913032B1 (en) 2007-04-25 2011-03-22 Apple Inc. Initiating memory wear leveling
US7849342B2 (en) 2007-05-01 2010-12-07 Nvidia Corporation Method and system for implementing generalized system stutter
US9134782B2 (en) 2007-05-07 2015-09-15 Nvidia Corporation Maintaining optimum voltage supply to match performance of an integrated circuit
US20090108817A1 (en) * 2007-10-30 2009-04-30 Topower Computer Industrial Co., Ltd. Method for actuation by boosting power source voltage
US20090150602A1 (en) * 2007-12-11 2009-06-11 Dell Products L.P. Memory power control
US8775839B2 (en) * 2008-02-08 2014-07-08 Texas Instruments Incorporated Global hardware supervised power transition management circuits, processes and systems
US8370663B2 (en) 2008-02-11 2013-02-05 Nvidia Corporation Power management with dynamic frequency adjustments
US8312299B2 (en) 2008-03-28 2012-11-13 Packet Digital Method and apparatus for dynamic power management control using serial bus management protocols
US8122270B2 (en) * 2008-09-29 2012-02-21 Intel Corporation Voltage stabilization for clock signal frequency locking
US8127160B2 (en) 2008-10-13 2012-02-28 International Business Machines Corporation Dynamic frequency and voltage scaling for a computer processor
US20100094572A1 (en) * 2008-10-15 2010-04-15 International Business Machines Corporation Dynamic Frequency And Voltage Scaling For A Computer Processor
JP2010113574A (en) * 2008-11-07 2010-05-20 Panasonic Corp Resource exclusive control method in multiprocessor, exclusive control system and technology associated with the same
US7900114B2 (en) * 2009-02-27 2011-03-01 Infineon Technologies Ag Error detection in an integrated circuit
US8117469B2 (en) * 2009-07-10 2012-02-14 Packet Digital Automatically determining operating parameters of a power management device
JP2011059867A (en) * 2009-09-08 2011-03-24 Panasonic Corp Semiconductor integrated circuit, electronic apparatus equipped with semiconductor integrated circuit and control method thereof
US9256265B2 (en) 2009-12-30 2016-02-09 Nvidia Corporation Method and system for artificially and dynamically limiting the framerate of a graphics processing unit
US9830889B2 (en) 2009-12-31 2017-11-28 Nvidia Corporation Methods and system for artifically and dynamically limiting the display resolution of an application
US8839006B2 (en) 2010-05-28 2014-09-16 Nvidia Corporation Power consumption reduction systems and methods
US8855969B2 (en) 2011-06-27 2014-10-07 International Business Machines Corporation Frequency guard band validation of processors
KR101338692B1 (en) * 2011-10-17 2013-12-09 박남수 Abalone mandu and its preparation method
US8874949B2 (en) 2011-12-22 2014-10-28 Intel Corporation Method, apparatus, and system for energy efficiency and energy conservation including enhanced temperature based voltage control
JP2013196619A (en) * 2012-03-22 2013-09-30 Fujitsu Ltd Semiconductor device and control method of semiconductor device
US9318953B2 (en) * 2012-03-22 2016-04-19 Intel Corporation Apparatus, system, and method for voltage level switching
CN103426453B (en) * 2012-05-25 2015-12-16 华为技术有限公司 Dynamic voltage frequency control method and system
US9411360B2 (en) 2014-01-13 2016-08-09 Apple Inc. Method to manage current during clock frequency changes
EP3126928A4 (en) * 2014-04-04 2017-11-08 Empire Technology Development LLC Instruction optimization using voltage-based functional performance variation
CN105528203B (en) * 2014-10-23 2019-04-12 深圳富泰宏精密工业有限公司 CPU uses control system and method
KR101984261B1 (en) * 2016-12-19 2019-05-30 서울대학교 산학협력단 Apparatus and method for dynamic frequency scaling, and recording medium
US11822414B2 (en) 2021-02-08 2023-11-21 Microsoft Technology Licensing, Llc Processor-based system employing configurable local frequency throttling management to manage power demand and consumption, and related methods
US11327552B1 (en) * 2021-02-17 2022-05-10 Microsoft Licensing Technology, LLC Processor-based system employing local dynamic power management based on controlling performance and operating power consumption, and related methods
CN115390610B (en) * 2022-08-22 2024-11-08 哲库科技(北京)有限公司 Power utilization system, frequency control method, chip and storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002029535A2 (en) * 2000-09-30 2002-04-11 Intel Corporation Method and apparatus to enhance processor power management
US20020083355A1 (en) * 1999-04-30 2002-06-27 Clark Lawrence T. Method and apparatus for dynamic power control of a low power processor

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5153535A (en) 1989-06-30 1992-10-06 Poget Computer Corporation Power supply and oscillator for a computer system providing automatic selection of supply voltage and frequency
US5281100A (en) * 1992-04-13 1994-01-25 A.M.C. Technology, Inc. Well pump control system
KR950005216B1 (en) * 1993-03-31 1995-05-22 삼성전자주식회사 Power saving apparatus for pc
US5502838A (en) 1994-04-28 1996-03-26 Consilium Overseas Limited Temperature management for integrated circuits
US5918061A (en) 1993-12-29 1999-06-29 Intel Corporation Enhanced power managing unit (PMU) in a multiprocessor chip
JP2755183B2 (en) * 1994-09-26 1998-05-20 日本電気株式会社 LSI with built-in clock generator / controller for low power consumption operation
US5734585A (en) 1994-11-07 1998-03-31 Norand Corporation Method and apparatus for sequencing power delivery in mixed supply computer systems
US5745375A (en) 1995-09-29 1998-04-28 Intel Corporation Apparatus and method for controlling power usage
US5787294A (en) 1995-10-13 1998-07-28 Vlsi Technology, Inc. System for reducing the power consumption of a computer system and method therefor
US5812860A (en) 1996-02-12 1998-09-22 Intel Corporation Method and apparatus providing multiple voltages and frequencies selectable based on real time criteria to control power consumption
JPH09245472A (en) * 1996-03-08 1997-09-19 Mitsubishi Electric Corp Memory card
US5940785A (en) 1996-04-29 1999-08-17 International Business Machines Corporation Performance-temperature optimization by cooperatively varying the voltage and frequency of a circuit
US5953685A (en) 1997-11-26 1999-09-14 Intel Corporation Method and apparatus to control core logic temperature
US6266731B1 (en) * 1998-09-03 2001-07-24 Compaq Computer Corporation High speed peripheral interconnect apparatus, method and system
US6415388B1 (en) 1998-10-30 2002-07-02 Intel Corporation Method and apparatus for power throttling in a microprocessor using a closed loop feedback system
SG65097A1 (en) * 1998-12-28 2001-08-21 Compaq Computer Corp Break event generation during transitions between modes of operation in a computer system
US6393374B1 (en) 1999-03-30 2002-05-21 Intel Corporation Programmable thermal management of an integrated circuit die
US6789037B2 (en) 1999-03-30 2004-09-07 Intel Corporation Methods and apparatus for thermal management of an integrated circuit die
US6363490B1 (en) 1999-03-30 2002-03-26 Intel Corporation Method and apparatus for monitoring the temperature of a processor
US6211740B1 (en) 1999-09-29 2001-04-03 Intel Corporation Switching a clocked device from an initial frequency to a target frequency
WO2001035200A1 (en) 1999-11-09 2001-05-17 Advanced Micro Devices, Inc. Dynamically adjusting a processor's operational parameters according to its environment
CN2445367Y (en) * 2000-06-12 2001-08-29 华硕电脑股份有限公司 Conversion circuit for supplying centrol processing unit work point
US6664775B1 (en) 2000-08-21 2003-12-16 Intel Corporation Apparatus having adjustable operational modes and method therefore
US7000130B2 (en) * 2000-12-26 2006-02-14 Intel Corporation Method and apparatus for thermal throttling of clocks using localized measures of activity
US6836849B2 (en) * 2001-04-05 2004-12-28 International Business Machines Corporation Method and apparatus for controlling power and performance in a multiprocessing system according to customer level operational requirements
JP4733877B2 (en) 2001-08-15 2011-07-27 富士通セミコンダクター株式会社 Semiconductor device
US6714891B2 (en) 2001-12-14 2004-03-30 Intel Corporation Method and apparatus for thermal management of a power supply to a high performance processor in a computer system
US6885233B2 (en) 2002-05-02 2005-04-26 Intel Corporation Altering operating frequency and voltage set point of a circuit in response to the operating temperature and instantaneous operating voltage of the circuit
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
US7076672B2 (en) 2002-10-14 2006-07-11 Intel Corporation Method and apparatus for performance effective power throttling
US7043649B2 (en) 2002-11-20 2006-05-09 Portalplayer, Inc. System clock power management for chips with multiple processing modules
US7444524B2 (en) 2002-12-30 2008-10-28 Intel Corporation Dynamic voltage transitions

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020083355A1 (en) * 1999-04-30 2002-06-27 Clark Lawrence T. Method and apparatus for dynamic power control of a low power processor
WO2002029535A2 (en) * 2000-09-30 2002-04-11 Intel Corporation Method and apparatus to enhance processor power management

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150133592A (en) * 2014-05-20 2015-11-30 삼성전자주식회사 Apparatus and method for controlling operation of arithmetic and logical device
KR102257823B1 (en) * 2014-05-20 2021-05-28 삼성전자 주식회사 Apparatus and method for controlling operation of arithmetic and logical device

Also Published As

Publication number Publication date
US20040073821A1 (en) 2004-04-15
AU2003275426A1 (en) 2004-05-04
US7237128B2 (en) 2007-06-26
CN100351777C (en) 2007-11-28
KR20050075359A (en) 2005-07-20
US20060156040A1 (en) 2006-07-13
EP1552371A2 (en) 2005-07-13
US7013406B2 (en) 2006-03-14
WO2004036402A3 (en) 2004-08-12
WO2004036402A2 (en) 2004-04-29
CN1516000A (en) 2004-07-28

Similar Documents

Publication Publication Date Title
KR100856606B1 (en) A method and apparatus to dynamically change an operating frequency and operating voltage of an electronic device
JP3845642B2 (en) Integrated circuit device having unit power adjustment mechanism
KR100831490B1 (en) Method and apparatus for performance effective power throttling
US7890781B2 (en) Dynamic voltage transitions
US8935546B2 (en) Dynamic voltage transitions
US6611920B1 (en) Clock distribution system for selectively enabling clock signals to portions of a pipelined circuit
KR100923363B1 (en) Apparatus and method for bus signal termination compensation during detected quiet cycle
US6976181B2 (en) Method and apparatus for enabling a low power mode for a processor
JPH0720968A (en) Method for reduction of power consumption of computer by changing voltage and frequency dynamically
CN110226148B (en) Clock divider apparatus and method thereof
JP4129345B2 (en) Control of multiple equivalent functional units for power reduction
US6311281B1 (en) Apparatus and method for changing processor clock ratio settings
JPH10341199A (en) Radio portable terminal
US6646472B1 (en) Clock power reduction technique using multi-level voltage input clock driver
JP4524251B2 (en) Processor using demand driven clock throttling power reduction
US20090125738A1 (en) Data processing apparatus
US20040260960A1 (en) Method for pulse train reduction of clocking power when switching between full clocking power and nap mode
US20030084353A1 (en) System and method for predictive power ramping
EP2775395B1 (en) Integrated circuit, electronic device and instruction scheduling method
JP4673551B2 (en) Control circuit

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121102

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20130801

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140818

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150821

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160819

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20170818

Year of fee payment: 10