KR102516672B1 - Cpu 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템 및 그 제어 방법 - Google Patents

Cpu 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템 및 그 제어 방법 Download PDF

Info

Publication number
KR102516672B1
KR102516672B1 KR1020220157866A KR20220157866A KR102516672B1 KR 102516672 B1 KR102516672 B1 KR 102516672B1 KR 1020220157866 A KR1020220157866 A KR 1020220157866A KR 20220157866 A KR20220157866 A KR 20220157866A KR 102516672 B1 KR102516672 B1 KR 102516672B1
Authority
KR
South Korea
Prior art keywords
cpu
power
cpu usage
usage rate
fid
Prior art date
Application number
KR1020220157866A
Other languages
English (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 (주)대우루컴즈
Priority to KR1020220157866A priority Critical patent/KR102516672B1/ko
Application granted granted Critical
Publication of KR102516672B1 publication Critical patent/KR102516672B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/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/3243Power saving in microcontroller unit
    • 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/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/329Power saving characterised by the action undertaken by task scheduling
    • 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)

Abstract

본 발명은, 현재 CPU의 동작 상태에 따른 CPU 사용율에 따라 VID/FID의 상/하한치는 물론 온도나 다른 파라미터들의 리미트를 설정하여 두고, 이 범위 내로 동작시킴으로써, CPU 성능의 저하 없이도 최적으로 절전이 가능하며 나아가 주변장치도 이에 맞추어 절전을 행함으로써, 전체 컴퓨터 시스템에서 소요되는 에너지를 절감하는, CPU 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템 및 그 제어 방법에 관한 것이다.

Description

CPU 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템 및 그 제어 방법{An energy-saving computer system by controlling the power according to CPU usage rate and controlling method therefor}
본 발명은 컴퓨터 메인보드의 현재 CPU의 동작 상태(사용율) 및 최대 프로세서 전류(IccMAX), CPU 온도 등을 파악하여, CPU의 사용율 및/또는 CPU 온도의 상/하한치를 설정하여 두고, 이 범위 내로 동작시킴으로써, CPU 성능의 저하 없이도 최적으로 절전이 가능하며 나아가 주변장치도 이에 맞추어 절전을 행함으로써, 전체 컴퓨터 시스템에서 소요되는 에너지를 절감하는 기술에 관한 것으로, 특히 CPU 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템 및 그 제어 방법에 관한 것이다.
종래의 컴퓨터 전원공급장치는, 도 1에서 보는 바와 같이, SMPS와 같은 파워서플라이(20)가 메인보드(10)의 SIO(12)와 24핀으로 연결되어 있으며, 그 중 하나는 +5V의 스탠바이 전압(+5VSB)의 인가용이다.
사용자가 PC 케이스의 파워스위치(미도시됨)를 누르면, 이와 기구적으로 연결된 파워 버튼(13)이 눌려지고, 파워 버튼(13)이 SIO(12)로 제1 신호(PWRBTN#)를 보내며, 다시 SIO(12)는 파워서플라이(20)로 파워온 신호선(PSON#)을 활성화하며, 칩셋(14)으로는 제2 신호(PWRBTN#_SB)를 발하는바, 파워서플라이(20)는 CPU(11) 및 칩셋(14)으로 파워굳 신호(PWROK) 신호를 보내서 이를 알리며, 이후 메인 보드로 파워가 공급되도록 한다.
미설명 부호 15는 칩셋의 리셋 버튼이며, 16은 배터리이고, 17은 리쥼 리셋(17)이며, 18은 LAN이다. 그외에도, CPU 및 칩셋과 연결된 AC, FWH, 슈퍼IO(19), AGP 슬롯, PCI 슬롯, IDE 등이 접속되어 있다.
한편, 전술한 바와 같이, 파워서플라이(20)와 메인보드 간에는 비작동시에도 +5V의 대기전력이 인가되는바, 시동 버튼의 인식 및 원격시동의 인식 등을 위해 약 1W의 대기전력을 필요로 한다.
그리고, 이는 개별적으로는 결코 높지 않은 소비전력이나, 일 기관 전체로는, 나아가 일 국가 전체로는 막대한 에너지의 낭비로 이어지게 된다.
이러한 문제점을 해결하기 위하여, 전원 콘센트 자체에서 전원을 완전 차단하여 대기전력을 제로로 만드는 스위치를 갖는 콘센트가 개발돼 있는가 하면 (제1 종래기술), 한편으로는 대한민국 특허공개 제2013-0043923호 (전원공급장치 및 그를 포함하는 화상형성장치) 와 같이, 파워 스위치의 온/오프를 인식하여 전원을 완전 차단하기 위한 별도의 추가적인 복잡한 장치를 제안하기도 한다(제2 종래기술).
그러나, 상기 제1 종래기술의 경우, 그럼에도 불구하고 현실적으로 여러가지 이유로, 사용자가 콘센트의 전원 완전 차단 스위치를 오프하지 않고 자리를 뜨는 경우가 대부분이며, 제2 종래기술의 경우, 대단히 복잡하고 고비용의 별도의 장치를 추가하여야 하므로, 이러한 장치를 일반 PC에 장착하기가 주저되는 것이 사실이다.
이에, 본 발명자는, 아주 단순하면서도 자동으로 대기전력을 최소화한 컴퓨터 전원공급장치를 제공하기 위한 것으로, 대한민국 특허 제1328393호 (명칭: 대기전력이 절감되는 컴퓨터 전원공급장치) 를 제안한 바 있는바, 이를 제3 종래기술로서 설명한다.
상기 제3 종래기술은, 도 2에서 보듯이, CPU(11), SIO(12), 파워 버튼(13), 칩셋(14), 리셋 버튼(15), 제1 배터리(16), LAN(18) 및 슈퍼IO(19)를 갖는 메인 보드(10); 상기 메인 보드에 전원을 공급하는 SMPS(20); 상기 SMPS의 대기전력 공급을 제어하는 마이컴(30); 상기 메인보드와 SMPS 간의 신호 및 대기전력 커넥팅을 매개하는 파워 커넥터(60); 및 상기 마이컴의 제어에 따라 대기전력 온/오프를 스위칭하는 스위칭부(40); 를 포함하여 이루어지며, 상기 마이컴(30)은 파워 전원의 대기전력(5VSB)을 상기 스위칭부(40)에 의해 제어함으로써, 메인보드에 공급되는 대기전원을 통제하는 것을 특징으로 한다.
즉, 상기 제3 종래기술의 전원공급장치는, 도 2에서 보는 바와 같이, 기존의 CPU(11), SIO(12), 파워 버튼(13), 칩셋(14), 리셋 버튼(15), 배터리(16), 리쥼 리셋(17), LAN(18), 슈퍼IO(19) 등을 갖는 메인 보드(10)와, 상기 메인 보드에 전원을 공급하는 SMPS(20), SMPS의 대기전력 공급을 제어하는 마이컴(30) 및 마이컴의 제어에 따라 대기전력 온/오프를 스위칭하는 스위칭부(40)를 포함하여 이루어진다. 미설명부호 '50'은 PC 케이스의 파워스위치이며, '60'은 메인보드와 SMPS 간의 파워 커넥터이다.
상기 제3 종래기술에서는, 파워 커넥터(60)가 메인보드(10)와 SMPS(20) 간의 신호 및 대기전력 커넥팅을 매개하는바, SMPS(20)와 상기 파워 커넥터와는 23개 핀으로 접속되어지고, 대신 하나의 핀인 +5V 대기전력선(+5VSB)은 파워 커넥터 대신 마이컴(30) 및 스위칭부(40)와 접속되어 진다는 점이 도 1의 종래의 전원공급장치와 상이하다. 상기 스위칭부(40)는, 파워스위치용 IC이거나, FET 회로로 이루어질 수 있다.
이외에도, 마이컴(30)은, SMPS(20)로부터 SMPS굳 신호(PS_ON#) 혹은 파워굳 신호(PWR_ON) 중의 어느 하나 혹은 양자 모두의 신호를 SMPS(20)로부터 수신받는다. 상기 파워굳 신호(PWR_ON)는 CPU(11) 및 칩셋(14)으로도 인가된다.
한편, 상기 마이컴(30)은 또한, 외부의 케이스 파워 스위치(50)로부터의 스위칭 신호(CASE_PWR_BTN)에 의해 대기전력 공급 개시 동작을 시작하게 되며, 이에 따라 +5V의 대기전력(+5VSB)을 상기 스위칭부(40)를 통해 5V 대기신호(P5V_STBY)로서 메인 보드(10)로 인가하게 되는바, 상기 스위칭부(40)는 상기 마이컴(30)의 제어신호(5VSB_SW)가 '온'일 경우에, 상기 SMPS(20)로부터의 +5V 대기전력(+5VSB)을 5V 대기신호(P5V_STBY)로서 메인 보드(10)로 인가하게 된다.
SMPS(20) 파워 커넥터로부터 메인보드(10) 파워 커넥터로 PC 정상동작 전력 +12V 및 -12V 라인, +5V 대기전력선 및 +3.3V 전력선, 그리고 파워굳(PWR_ON) 신호가 간다. 다만, 5V 대기전력선(5VSB)은, 스위칭 장치(40)로 가며, 다시 스위칭 장치(40)에서 메인보드 파워 커넥터로 대기전력 신호(P5V_STBY)가 간다.
더욱이, 마이컴(30)으로부터 스위칭부(40)로 대기전원 스위치 신호(5VSB_SW)가, 그리고 메인 파워 버튼(12)으로 파워 버튼 신호(MB_PWR_BTN)가 간다.
역으로, 메인보드(10) 파워 커넥터로부터 SMPS(20) 파워 커넥터로 SMPS굳(PS_ON#) 신호가 간다.
이들 동작을 더 상세히 설명하면, 먼저, 상기 제3 종래기술의 마이컴(30)은 파워 전원의 대기전력(5VSB)을 상기 스위칭부(40)에 의해 제어함으로써, 메인보드에 공급되는 전원을 통제하는데, 보통 전원이 오프되는 것은 커넥터 간의 오가는 파워굳(PWR_ON) 및/또는 SMPS굳(PS_ON#) 신호를 마이컴에서 감지하여, 전원이 오프일 경우에는 5V 대기전원을 오프해 주면 된다. 즉, 이 경우, 메인보드에 대기전력이 공급되지 않기 때문에, 컴퓨터의 전원을 켤 수 없는 것이다.
한편, PC 사용자가 케이스 파워 스위치(50)를 누르면, 이 신호에 의해 상기 제3 종래기술의 마이컴(30)이 활성화되며, 마이컴은 커넥터 간의 오가는 파워굳(PWR_ON) 및/또는 SMPS굳(PS_ON#) 신호를 감지하여, 전원이 온일 경우에는 스위칭부(40)로의 제어신호(5VSB_SW)를 턴온하여, 5V 대기전원(5VSB)이 메인보드로 인가되도록 하는 것이다. 아울러, 메인보드의 파워 버튼(13)이 온되면, SIO(12)로 입출력 개시명령이 하달되고, SIO(12)는 파워 커넥터(60)를 통해 SMPS(20)로 파워서플라이굳(PS_ON#)을 발하는바, SMPS는 상황이 정상일 경우, 파워굳(PWR_ON) 신호를 역시 커넥터(60)를 통해 메인보드(10)로 전달하면서, 메인보드 동작전원(+12V)를 활성화하는 것이다.
따라서, 상기 제3 종래기술에 의하면, 컴퓨터 기동 시스템의 대기전력에 해당하는 1W의 대기전력을 소비하지 않고, 마이컴의 대기전력에 해당하는 0.1W 정도의 대기전력만으로 스탠바이 및 컴퓨터 기동이 가능해 진다는 장점이 있다.
그런데, 시스템 전원 '온' 및 '오프' 상태만을 갖는 종래의 시스템과 달리, 최근의 PC들은 S1 내지 S5 모드를 채택하여, 다양하게 세분화된 모드를 채택하고 그에 따라 속도와 자원 활용도를 높인 가장 효율적인 시스템 동작을 하게 된다. 참고로, S0 모드는 컴퓨터 동작 모드이고, S1 모드는 프로세서가 아이들(idle) 상태로서 저전력 공급 상태이나 여전히 램에 전원이 공급되어야 하는 상태이고, S2 모드는 프로세서가 딥슬립(deep sleep)모드로서 그러나 여전히 램에 전원이 공급되는 상태이며, S3모드 (절전/대기모드)의 경우는 데이터를 메모리에 저장하고 최소 전원을 유지하는 방식이기 때문에 이 경우에도 여전히 +5V SB를 OFF하면 안 된다. 이때 DDR 메모리의 타입에 따라 조금씩 다르게 출력되지만 VDD 전원이 1.2~1.5V가 계속 유지되는바, 이때에는 메모리와 RTC등 일부에만 전원이 공급된다. 반면, S4 모드 (최대절전모드) 에서는 데이터를 하드디스크에 저장하고 시스템의 모든 전원을 끈다. 즉, 전원 OFF와 거의 동일한 상태가 된다. 이때에는 메모리의 VDD 전원은 전원 OFF 때와 같이 0V 출력된다. 따라서, VDD 신호 하나로 대기전력 차단과 관련한 체크가 가능하게 되는 것인바, 다시 정리하자면, 시스템 대기전력을 OFF 조건인 전원 OFF 및 S4 모드의 경우에는 VDD 신호는 0V이고, 대기전력 ON 조건인 시스템 동작(전원 ON 상태) 및 S3(절전/대기 모드)의 경우에는, VDD 신호는 1.2~1.5V 를 출력하게 된다.
따라서, 이와 같은 최근의 S0~S5 모드를 갖는 시스템의 경우에는, 상기 제3 종래기술의 경우에도, 이러한 대기전력을 차단하기 위해서는 전원의 상태를 모두 확인할 필요가 있는데, 종래의 방법으로는 1) SMPS 내부에 인가되는 전류를 측정하거나, 2) '파워굳' 등의 몇 가지 신호를 더 확인하여 체크하였는데, 1) 전류를 체크하는 경우 고가의 ADC(Analog to Digital Converter) 및 주변회로가 필요하여 대기전력 1W를 줄이는 비용대비 효용가치가 없으며, 2) 또한 '파워굳' 등의 신호를 통하여 체크하는 경우 하나의 신호로 모든 전원을 확인할 수 없기 때문에 여러 신호를 입력받고 전원상태를 체크하기 위하여 복잡한 구조를 가지고 있어 생산 효율성이 떨어진다는 문제점이 발생한다.
한편, 종래의 일반적인 파워온 동작에 대하여, 도 3 내지 도 7을 참조하여 설명한다.
도 3은 종래의 일반적인 파워온 동작의 개념을 설명하는 도면인바, 종래는 도 3에서 보는 바와 같이, 전원 버튼이 '온'되면, 수퍼IO(19) 내의 PS_ON 회로(19a)가 이를 인식하고, 칩셋(14)의 사우스브릿지와 통신하면서, 메인보드(10)의 SIO(12)의 20핀짜리 커넥터의 PS_ON# 단자를 활성화시켜 메인보드(10)로 파워가 인가되도록 한다.
이상의 도 3의 PS_ON 회로(19a)의 블록도의 일예가, 도 4에 상세히 도시되어 있다. 즉, 도 4에서, 전원 버튼에 해당하는 스위치(S1)가 눌려지면, '로우' 레벨로 떨어지면서, PS_ON 회로(19a)가 활성화되는바, 각종 전압이 SMPS로부터 메인 보드로 인가된다(도 5의 타이밍챠트 참조).
다른 한편, 도 6은 종래의 일반적인 파워온 동작의 개념을 설명하는 또다른 예의 도면인바, 역시 전원'온' 스위칭(PWR)이 행해지면, 칩셋(14)이 P.ON 신호를 SIO(12)로 출력하고, 다시 SIO(12)는 P.ON 신호를 메인보드의 커넥터의 PS_ON# 단자로 출력하여, 전원이 SMPS로부터 메인보드로 인가되도록 한다.
도 7은 도 6의 각 신호들의 타이밍 챠트인바, VAC가 활성화(AC 전원이 인가)되면, PS_ON# 신호가 '로우' 레벨로 떨어지면서 활성화되고, 각종 전압이 SMPS로부터 메인보드로 인가되면서, 파워굳 신호로 응답하게 된다.
즉, 종래는 도 6에서와 같이, PS_ON# 신호(SMPS 전원 On)도, +5V SB신호를 먼저 On한 후, 메인보드의 전원 '온' 스위치 단에 연결하여 사우스브리지와 Super I/O 칩셋을 통하여 SMPS에 PS_ON#신호를 발생하여, 케이블의 연결이나 개조 작업성이 좋지 않아, 결국 생산성이 낮았다.
다른 한편, 본 발명자는, 이상의 문제점을 해결하고자, 다양한 동작 모드를 갖는 컴퓨터 시스템에서도, 아주 단순하면서도 자동으로 대기전력을 최소화한 컴퓨터 전원공급장치를 제공하기 위하여, 도 8 내지 도 10에서 보는 바와 같은 대기전력이 절감되는 컴퓨터 전원공급장치를 제안하여 특허 제1623756호로 특허받은 바 있다. 이를 도 2 및 도 8 내지 도 10을 참조하여 설명한다.
도 8은 제4 종래기술에 따른 대기전력이 절감되는 컴퓨터 전원공급장치의 블록도이고, 도 9는 제4 종래기술에 따른 대기전력이 절감되는 컴퓨터 전원공급장치의 상세 회로도이며, 도 10은 제4 종래기술에 따른 대기전력이 절감되는 컴퓨터 전원공급장치의 마이컴의 동작흐름도이다.
먼저, 제4 종래기술의 발명을 도 8의 블록도로 개략적으로 설명하면, 먼저 PC 전원(50)이 '온'인지를 감지하고, 이에 연동하여 SMPS(20)에서 메인보드로 가는 ATX 파워 케이블의 PS_ON# 신호를 '로우' 레벨로 활성화하여, 5V SB 라인을 제외한 라인이 메인보드로 가도록 한다. 이때, 5V SB 라인은 메인보드로 직접 가지 않고, 마이컴(30) 및 제1 스위칭부(40) 등에 Vcc를 제공하며, 이들을 활성화하는바, 이에 따라 파워컨트롤 신호(PWR_CTRL)를 활성화하여 상기 제1 스위칭부(40)로 출력하고, 이에 응하여 상기 제1 스위칭부(40)는 파워 출력 신호(PWR_OUT)를 메인보드의 5V SB 단자로 보냄으로써, 메인보드로 모든 전원공급이 되면서 메인보드를 동작시키게 된다.
이때, 상기 마이컴(30)은, PS_ON# 신호를 SMPS(20)에 인가하여 SMPS를 턴온시키고 이에 응하여 상기 신호 및 이에 연동된 공통접지 신호가 SMPS로부터 메인보드(10)로 ATX 케이블을 통해 다른 신호 및 전원이 인가되도록 함으로서 메인보드를 동작시킬 수도 있으나, 도 8에서와 같이, 상기 마이컴(30)이 SMPS를 경유하지 않고 제2 스위칭부(41)를 통하여, PS_ON# 신호를 직접 메인보드로 인가하되, 메인보드의 파워 버튼(13) -> PS_ON 회로(19a) -> 파워커넥터(60)의 PS_ON# 단자로 인가하는 것도 가능하다.
이들 회로를, 도 9를 참조하여 더 상세히 기술하면, 마이컴(30)의 스위칭입력(SW_IN) 단자(칩의 16번 핀)를 통하여, PC 전원 '온' 스위치(50)의 온/오프 상태를 감지하게 된다.
이후, 마이컴(30)은, 공통 접지 단자를 활성화 ('하이'에서 '로우'로 감) 하여, 5V, 3.3V, 12V, 파워 굳(PWR_OK) 신호 라인 등이 모두 메인 보드의 단자로 가도록 활성화하여, 각종 파워가 SMPS로부터 메인보드로 인가되도록 한다. 아울러, PS_ON# 단자(칩의 2번 핀)를 통해 PS_ON# 신호를 SMPS(20)로 출력하고 ATX 파워 케이블을 통해 메인보드(10)의 파워 커넥터(60)의 해당 단자로 연결되도록 할 수도 있고, 혹은 도 9에서와 같이, 마이컴의 일례로 5번 단자를 통해 SW_OUT 신호를 제2 스위칭부(41)로 출력하고, 상기 스위칭 신호가 메인 보드 내의 파워 버튼# (13)을 통해 슈퍼IO(19)의 PS_ON 회로(19a)를 활성화함으로써, 결국 파워 커넥터(60)의 해당 단자로 연결되도록 할 수도 있다.
한편, 전원 제어 시그널(PWR_CTRL)은 마이컴(30)의 14번 핀을 통해 출력되어, 스위칭부(40)의 제1 및 제3 트랜지스터(Q1, Q3)를 활성화하여, 파워 출력(PWR_OUT) 신호를 메인보드(10)의 커넥터의 5V 스탠바이 신호 단자로 출력한다. 이는 최종적으로, 메모리의 기능을 포함하는 메인 보드(컴퓨터)가 동작함을 의미한다.
마지막으로, 메인보드(10)의 메모리(일례로 DDR3)로 공급되는 전압은, 감지부(70)의 제4 트랜지스터(Q4)에 의해 감지되는바, 그 결과는 파워굳(GD_PWR) 단자(마이컴 칩의 15번 핀)를 통해 마이컴으로 알려진다.
이상의 제4 종래기술의 마이컴의 동작을 도 10을 참조하여 다시 한번 상술한다.
먼저, 본 발명에서의 마이컴(30)은 시스템 대기 전원이 오프 상태인 경우에 (AC 전원이 입력되지 않는 상태에서) 진행되는바, 먼저 시스템 대기 전원이 오프 상태인가? 여부를 판단하며(S1), 그러한 경우에 PC 전원 스위치가 '온'인가? (컴퓨터 전원 스위치가 켜져 있는가?) 여부를 판단하는바(S2), 만약 그렇지 않으면 일정 시간 지연 후 피드백하여 계속해서 체크하며, '예스'인 경우에는, 다음 단계로 진행하여, 파워컨트롤 신호(PWR_CTRL)를 활성화하여 상기 스위칭부(40)로 출력하고, 이에 응하여 상기 스위칭부(40)는 파워 출력 신호(PWR_OUT)를 메인보드의 5V SB 단자로 보냄으로써, 메인보드로 모든 전원공급이 되게 하면서(S3), 동시에 파워 버튼#(13)을 활성화하고 PS_ON# 신호를 활성화하여, 메인보드를 동작시키게 된다(S4').
즉, 마이컴(30)이 PC 전원 스위치가 '온'이라는 신호를 받고, 제1 스위칭부(40)로의 파워컨트롤 신호(PWR_CTRL)를 활성화하여 상기 제1 스위칭부(40)를 통해 파워 출력 신호(PWR_OUT)를 메인보드의 5V SB 단자로 보냄으로써, 메인보드로 모든 전원공급이 되게 함과 동시에(S3), 또다른 제2 스위칭부(41)로 스위칭아웃(SW_OUT) 신호를 출력하는바, 이에 상기 제2 스위칭부(41)의 트랜지스터(Q2)가 턴온되고, 상기 메인보드의 파워버튼(13)으로 PS_ON# 신호를 인가하게 되는바, 이에 파워버튼(13) 및 메인보드의 슈퍼I/O(19)의 PS_ON 회로(19a)를 통해, 상기 커넥터(60)의 PS_ON# 단자를 활성화하여, 결국 메인보드를 동작시키게 된다(S4').
이후, 메인보드의 메모리(10a)로 공급되는 전압(VDD)을 체크하여(S5), 일정 전압(일례로 0.7V) 미만인지 여부를 판단하여(S6), 이상이면 (이때는 램이 동작 중이므로), 5V SB 전원 '온' 상태를 그대로 유지하여 메인보드로의 파워 공급을 계속하며, 그렇지 않은 경우에는 메모리가 작동을 멈춘 것으로 인식하여, 파워컨트롤 신호(PWR_CTRL)를 비활성화하여 상기 스위칭부(40)로 출력하고, 이에 응하여 상기 스위칭부(40)는 파워 출력 신호(PWR_OUT)를 디스에이블시켜 시스템 대기전력을 '오프'시키게 된다(S7).
즉, 상기 종래기술에서 상술한 바와 같이, S3 모드 (절전/대기모드)의 경우는 +5V SB를 OFF하면 안 되며, 반면, S4 모드 (최대절전모드) 에서는 데이터를 하드디스크에 저장하고 시스템의 모든 전원을 끈다. 즉, S4 모드 및 전원 OFF인 S5 모드에서 0V 가 출력된다. 따라서, VDD 신호 하나로 대기전력 차단과 관련한 체크가 가능하게 되는 것인바, 다시 정리하자면, 시스템 대기전력을 OFF 조건인 전원 OFF 및 S4 모드의 경우에는 VDD 신호는 0V이고, 대기전력 ON 조건인 시스템 동작(전원 ON 상태) 및 S3(절전/대기 모드)의 경우에는, VDD 신호는 1.2~1.5V 를 출력하게 된다. 따라서, 상기 S5 및 S6 단계에서, 메모리로 공급되는 전압(VDD)을 체크하여(S5), 일정 전압(Vr: 일예로 0.7V) 미만인지 여부를 판단하여(S6), 그 이상이면 5V SB 전원 '온' 상태를 그대로 유지하며, 그 미만(VDD < Vr)이면, 시스템 대기전력을 '오프'시키는 것이다(S7).
상기 제4 종래기술은, 메모리로 공급되는 전압(VDD)을 체크하는 비교적 간단한 방법으로 S3 및 S4 모드를 인식하고, 메모리 등의 시스템에 여전히 전원 공급이 필요한 S3 모드에서는 5V 대기 전원을 계속 공급하고, 그렇지 않은 S4 모드에서는 대기 전원을 차단하여 대시 모드에서의 전력을 절감하는 방법을 제공하되, 그것도 추가적인 케이블 공사를 하지 않고도 행할 수 있다는 장점이 있기는 하다.
그런데, S3(대기/절전모드)에서도 특정 모드 외에는, 사실 5V의 대기전원을 공급할 필요까지는 없고, 3V 정도의 대기 전원만 공급하더라도 충분한바, 상기 제4 종래기술에서는 이에 대한 대비가 없는 실정이다.
또한, 상기 종래기술들은 S3 및 S4 등의 모드 인식이, 메모리와 같이 2차적인 장치에서의 전압으로 체크하였기 때문에, 이를 체크하기 위한 별도의 장치가 필요하고, 아울러 이러한 센싱 전압의 검출 장치로부터 제어용 마이컴까지의 배선이나 별도의 케이블이 필요하며, 아울러 가능성이 아주 낮기는 하지만 시스템의 에러로 인하여 현재 모드와 메모리 등의 2차적 장치 간의 불일치의 경우에는 정확한 센싱이 되지 못하다는 문제점이 있었으며, 특히 슬립 모드에서도 메모리 등은 최소한의 전력 공급이 되어야 하는데도 불구하고 이에 대한 대책이 미흡했다.
대한민국 특허공개 제2013-0043923호 (특허출원 제2011-0108115호) 대한민국 특허 제1328393호 (명칭: 대기전력이 절감되는 컴퓨터 전원공급장치) 대한민국 특허 제1623756호 (명칭: 시스템 메모리 전원을 활용한 대기전력 차단장치의 대기전력 차단 방법) 대한민국 특허 제1815239호 (명칭: 스위칭 소자를 이용한 컴퓨터 시스템의 대기전력 최적화 장치 및 방법)
본 발명은, 다양한 동작 모드(일례로 S0~S5 모드)를 갖는 컴퓨터 시스템에서, 하나의 스위칭 소자만을 사용하고 대부분 소프트웨어적으로 슬립 모드 인식 및 5VSB 차단을 행하여 정상 동작시에만 회로구동을 위하여 5VSB 전원을 사용하고 나머지 구동은 3VSB 및/또는 1.5V를 사용하도록 하여 소비 전력을 최소화하도록 하는 기존 기술에서 한발 더 나아가, 현재 CPU의 동작 상태에 따른 CPU 사용율에 따라 VID/FID의 상/하한치는 물론 온도나 다른 파라미터들의 리미트를 설정하여 두고, 이 범위 내로 동작시킴으로써, CPU 성능의 저하 없이도 최적으로 절전이 가능하며 나아가 주변장치도 이에 맞추어 절전을 행함으로써, 전체 컴퓨터 시스템에서 소요되는 에너지를 절감하는, CPU 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템 및 그 제어 방법에 관한 것이다.
상기의 목적을 달성하기 위한 본 발명의 일 측면에 따른 CPU 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템은, CPU(11), 칩셋(14), 펌웨어(17), SIO(19) 및 시스템 메모리(10a)를 포함하는 메인 보드(10)와, ATX 파워 커넥터(21)를 구비하는 SMPS(20), 그리고 각종 주변 장치들을 포함하는 컴퓨터 시스템으로서, 상기 메인 보드(10)는, 태스크 스케쥴러(10d), CPU 코어 파워서플라이(10e), 파워 매니지먼트(PM)(10f) 및 에너지 절감에 최적화되도록 미리 CPU 사용율과 각종 한계값을 저장해 놓은 설정값 dB(10g)를 더 포함하며, 상기 설정값 dB(10g)에 저장된 복수개의 앱의 실행에 따른 CPU 사용율에 응하여 프로세서 코어에 대한 최적의 코어 인가 전압(VID) 데이터 및 클럭 프리퀀시(FID)의 테이블(14a)이, 펌웨어(17) 및 칩셋(14) 내에 저장되어 있으며, 상기 CPU(11) 및 칩셋(14)은, 복수개의 앱의 실행에 따른 OS(10c) 로드에 따라 전압을 조정하여 주고, 그에 대응되는 클럭 주파수를 떨어뜨림으로써, CPU의 소비전력을 절감하되, 복수개의 앱의 동시 실행시에, 각각의 CPU 사용율의 산술적 단순 합(SUM)보다 더 낮은 실제로 측정된 CPU 사용율을 미리 dB화하여 두고서, 이를 근거로 코어 인가 전압(VID) 및 클럭 주파수(FID)를 조정함으로써, CPU의 소비전력을 최대한 절감할 수 있게 되는 것을 특징으로 한다.
바람직하게는, 상기 설정값 dB(10g)에는, CPU 사용율에 따른 최대 프로세서 전류(IccMAX)와 CPU 온도의 상한치(TEMP_MAX)를 저장하여 두고, 상기 파워 매니지먼트(10f)는, CPU 사용량에 따른 상기 코어 인가 전압(VID) 및 클럭 주파수(FID) 로 상기 복수개의 앱의 실행 시, CPU 온도를 파악하여, 상기 설정값 dB(10g)에 저장된 CPU 온도의 상한치(TEMP_MAX)를 오버(over)하는 경우에는, 상기 코어 인가 전압(VID) 및 클럭 주파수(FID)를 재설정하도록 제어함으로써, CPU 성능을 떨어뜨리지 않는 선에서 안정적으로 발열도 줄이고 결국 전력 소비를 줄여서 에너지를 절감할 수 있게 되는 것을 특징으로 한다.
또한 바람직하게는, 복수개의 앱이나 파일의 실행 시, 각 앱이나 파일에 대한 CPU 사용율 및 어떤 앱이나 파일이 실행중일 때에 그에 수반되어 실행되어야 할 하위 그룹의 앱에 대한 CPU 사용율의 상/하한치도 설정하여 두고, 실행되는 앱에 따라서 반드시 필요한 주변장치를 콜하여 필요한 주변장치 리스트에 대한 dB도 확보하여 두도록 하며, 그에 따르는 여타 파라미터의 범위도 미리 설정하여 두고서, 절전 동작시 이를 통하여 안정적인 동작이 이루어지도록 하는 것을 특징으로 한다.
또한 바람직하게는, 상기 CPU(11)가 동작을 하게 되면, 실행되어야할 프로그램을 태스크 스케쥴러(10d)로부터 OS(10c)가 전달받아, 후크 드라이버(12)로 전달하게 되며, 후크 드라이버는 실행되어진 앱이나 파일에 따른 CPU 사용량을 반영한 FID 데이터 및 VID 데이터를 롸이팅(writing)하도록 하며, CPU 사용량이 제1 기준치 미만으로 떨어질 경우에는, 상기 메인 보드(10)와 파워서플라이(SMPS)(20) 사이에서 전원 스위치(51)와 전원단 레귤레이터들(52~54)로 이루어지는 대기전원 공급부를 차단하여, CPU로의 전원(Vcore) 및 각종 전원단 레귤레이터들(52, 53, 54)로의 전원 공급을 완전차단하도록 하는 것을 특징으로 한다.
한편, 상기의 목적을 달성하기 위한 본 발명의 다른 측면에 따른 CPU 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템의 제어 방법은, 상기 CPU 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템의 제어 방법으로서, (a) 전원이 'ON'되고 컴퓨터 시스템이 시작되면(S1), 스위칭 소자(SW1)(51)를 턴온시킴으로써 시스템 전체에 제1 대기전력(5VSB)을 공급하고, ATX 파워 커넥터(22)를 통해 메인 보드에 각종 소자들에 모든 동작 전원 (3V, 5V, 12V 등)을 공급하게 되도록 하는 단계(S2); (b) 상기 (a) 단계 이후, 앱이나 파일이 실행되는지 여부? 를 확인하는 단계(S3); (c) 상기 (b) 단계에서의 판단 결과, 실행 중이 아닌 것으로 판단되면, SIO는 칩셋과 함께 CPU 사용량을 체크하여, CPU 사용율이 제1 기준치 미만인지 여부를 체크하게 되는 단계(S4); (e) 상기 (c) 단계에서의 판단 결과, 상기 제1 기준치 이상이면 상기 (b) 단계로 리턴하여 반복하여 수행하고, 상기 제1 기준치 미만이면 CPU FID/VID를 가장 낮게 설정하여 가장 높은 단계의 절전 동작을 실행하게 되는 단계; (f) 상기 (e) 단계 이후, 새로운 앱이 실행되었는지 여부를 체크하는 단계(S7); (g) 상기 (c) 단계에서의 판단 결과, 새로운 앱이 실행되었으면 프로그램 로딩을 위해 일정 시간 대기 후, 상기 (b) 단계로 리턴하여 반복수행하게 되며, 새로운 앱이 실행되지 않은 경우에는, 대기 전원이 공급되지 않도록 함으로써 컴퓨터 시스템의 파워 오프를 행하게 되는 단계(S8); 및 (h) 상기 (b) 단계에서의 판단 결과, 앱이나 파일이 실행 중인 것으로 판단되면, 복수개의 앱의 실행에 따른 OS(10c) 로드에 따라 프로세서 코어에 공급되는 전압(VID)을 조정하여 주고, 그에 대응되는 클럭 주파수(FID)를 떨어뜨림으로써, CPU의 소비전력을 절감하는 절전 모드를 실행하게 되는 단계; 를 포함하는 것을 특징으로 한다.
바람직하게는, 상기 (h) 단계는, (h1) 상기 (b) 단계에서의 판단 결과, 적어도 하나의 앱이나 파일이 실행 중인 것으로 판단되는 경우에는, 먼저 설정값 dB(10g)의 CPU 사용율 데이터 및 CPU 사용율 합산(CPU usage sum) 데이터를 포함한 각종 데이터를 로드하는 단계(S11); (h3) 상기 (h1) 단계 이후, 상기 로드된 CPU 사용율(CPU Usage rate)에 맞추거나 현재 실행되는 앱이나 파일의 측정된 CPU 사용율에 맞추어 CPU FID/VID를 상기 (e) 단계에서 보다 더 높게 설정하는 제2 CPU FID/VID 레인지(CPU FID/VID RANGE_2)를 설정함으로써, 상대적으로 더 낮은 단계의 절전 모드를 실행하게 되는 단계(S13); (h4) 상기 (h3) 단계 이후, 새로운 앱이나 파일이 실행되는지? 여부를 판단하는 단계(S14); (h5) 상기 (h4) 단계에서의 판단 결과, 새로운 앱이나 파일이 실행되지 않은 경우에는 반복해서 수행하고, 새로운 앱이나 파일이 실행된 것으로 판단되는 경우에는, 실행되는 신규 앱이나 파일까지를 감안한 CPU 사용율에 대한 합산(SUM) 데이터가 기존의 설정값 dB(10g)에 저장되어 있는지? 여부를 판단하는 단계(S15); (h6) 상기 (h5) 단계에서의 판단 결과, 합산(SUM) 데이터가 기존의 설정값 dB(10g)에 저장되어 있으면 이러한 CPU 사용율에 대한 합산(SUM) 데이터를 반영하여 CPU FID/VID 레인지를 추가하게 되는 단계(S16); 및 (h9) 상기 (h5) 단계에서의 판단 결과, 기존 합산(SUM) 데이터가 존재하지 않은 경우 및 상기 (h6) 단계 이후, 현재의 CPU 사용율에 대한 합산(SUM) 데이터를 설정값 dB(10g)에 저장하여 상기 설정값 dB(10g)를 업데이트하는 단계(S19); 를 더 포함하는 것을 특징으로 한다.
더욱 바람직하게는, (h10) 상기 (h9) 단계 이후에, 현재 CPU 사용량을 체크하여 상기 CPU 사용량이 제1 기준치 미만인지 여부를 다시 체크하게 되는 단계(S20); (h11) 상기 (h10) 단계에서의 판단 결과, 상기 CPU 사용량이 제1 기준치 미만인 경우에는, CPU FID/VID를 더 낮게 설정함으로써, 더 높은 단계의 절전 모드를 실행하게 되고, 사용하지 않는 주변장치는 모두 슬립모드로 지정하는 단계(S22); (h12) 상기 (h11) 단계 이후에, CPU 사용량을 다시 체크하여 상기 CPU 사용량이 상기 제1 기준치 보다 더 낮은 제2 기준치 미만인지 여부를 다시 체크하게 되는 단계(S23); (h13) 상기 (h12) 단계에서의 판단 결과, 상기 CPU 사용량이 제2 기준치 미만인 경우에는, CPU FID/VID를 더 낮게 설정함으로써, 더 높은 단계의 절전 모드를 실행하게 되고, 사용하지 않는 주변장치는 모두 딥슬립모드로 지정하는 단계(S24); 및 (h14) 상기 (h13) 단계 이후에, 상기 후크 드라이버(12)는 디바이스 후킹을 행하여(S25), 일정 기간 동안 키보드나 마우스 동작이 없으면, 상기 (f) 단계로 진행하여 파워 오프를 행하고, 반대로 일정 기간 동안 키보드나 마우스 동작이 있으면, 상기 (b) 단계로 진행하여 처음부터 반복 수행하는 단계; 를 더 포함하는 것을 특징으로 한다.
또한 바람직하게는, 상기 (c) 단계 후에, (d) CPU 온도 한계값(TEMP_MAX)을 제1 온도기준값으로 세팅하면서 최대 프로세서 전류(IccMAX) 한계값을 제1 전류기준값으로 설정하는 제1 동작 리미트 레인지(Operation limit range_1)를 설정하는 단계(S5); 를 더 포함하고, 상기 (h1) 단계 후에, (h2) CPU 온도 한계값(TEMP_MAX)을 상기 제1 온도기준값보다 더 높은 제2 온도기준값으로 세팅하면서 최대 프로세서 전류(IccMAX) 한계값을 상기 제1 전류기준값보다 더 높은 제2 전류기준값으로 설정하는 제2 동작 리미트 레인지(Operation limit range_2)를 설정하는 단계(S12); 를 더 포함하며, CPU 온도를 파악하여, 상기 CPU 온도의 상한치(TEMP_MAX)를 오버(over)하는 경우에는, 상기 코어 인가 전압(VID) 및 클럭 주파수(FID)를 재설정하도록 제어함으로써, CPU 성능을 떨어뜨리지 않는 선에서 안정적으로 발열도 줄이고 결국 전력 소비를 줄여서 에너지를 절감할 수 있게 되는 것을 특징으로 한다.
또한 바람직하게는, 상기 (e) 단계에서는, 주변장치 절전을 위한 제1 VGA PM (VGA PM_1) 모드를 설정하여 상대적으로 낮은 '제1 클럭 다운' 및 'PLL & Transceiver sleep'으로 설정하고, 상기 (h3) 단계에서는, 주변장치 절전을 위한 제2 VGA PM (VGA PM_2) 모드를 설정하여 상기 '제1 클럭 다운' 보다 더 높은 '제2 클럭 다운' 및 'PLL sleep'으로 설정하는 것을 특징으로 한다.
본 발명에 따른 CPU 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템 및 그 제어 방법에 따르면, 현재 CPU의 동작 상태에 따른 CPU 사용율에 따라 VID/FID의 상/하한치는 물론 온도나 다른 파라미터들의 리미트를 설정하여 두고, 이 범위 내로 동작시킴으로써, CPU 성능의 저하 없이도 최적으로 절전이 가능하며 나아가 주변장치도 이에 맞추어 절전을 행함으로써, 전체 컴퓨터 시스템에서 소요되는 에너지를 절감하는 것이 가능하다.
상기 목적 및 효과 외에 본 발명의 다른 목적 및 이점들은 첨부한 도면을 참조한 실시예에 대한 상세한 설명을 통하여 명백하게 드러나게 될 것이다.
도 1은 종래의 컴퓨터 전원공급장치의 개념도.
도 2는 제3 종래기술에 따른 대기전력이 절감되는 컴퓨터 전원공급장치의 블록도.
도 3은 종래의 일반적인 파워온 동작의 개념을 설명하는 도면.
도 4는 도 3의 PS_ON 회로(19a)의 블록도.
도 5는 도 3의 각 신호들의 타이밍 챠트.
도 6은 종래의 일반적인 파워온 동작의 개념을 설명하는 또다른 예의 도면.
도 7은 도 6의 각 신호들의 타이밍 챠트.
도 8은 제4 종래기술에 따른 대기전력이 절감되는 컴퓨터 전원공급장치의 블록도.
도 9는 제4 종래기술에 따른 대기전력이 절감되는 컴퓨터 전원공급장치의 상세 회로도.
도 10은 제4 종래기술에 따른 대기전력이 절감되는 컴퓨터 전원공급장치의 마이컴의 동작흐름도.
도 11은 본 발명의 최적 실시예에 따른 컴퓨터 시스템 구성도.
도 12는 본 발명의 최적 실시예에 따른 컴퓨터 시스템의 동작에 대한 개념도.
도 13 및 도 14는 본 발명의 최적 실시예에 따른 컴퓨터 시스템의 동작 방법을 나타내는 흐름도.
이하에서는, 첨부도면을 참고하여 본 발명에 따른 바람직한 실시예들을 상세하게 설명하기로 한다.
도 11은 본 발명의 최적 실시예에 따른 컴퓨터 시스템 구성도이고, 도 12는 본 발명의 최적 실시예에 따른 컴퓨터 시스템의 동작에 대한 개념도이며, 도 13 및 도 14는 본 발명의 최적 실시예에 따른 컴퓨터 시스템의 동작 방법을 나타내는 흐름도이다.
다만, 첨부된 도면은 본 발명의 내용을 보다 쉽게 개시하기 위하여 설명되는 것일 뿐, 본 발명의 범위가 첨부된 도면의 범위로 한정되는 것이 아님은 당해 기술 분야의 통상의 지식을 가진 자라면 용이하게 알 수 있을 것이다.
(본 발명의 최적 실시예에 따른 컴퓨터 시스템)
우선, 본 발명의 최적 실시예에 따른 CPU 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템에 대하여, 도 11 및 도 12를 참조하여 설명한다.
먼저, 본 발명에 따른 컴퓨터 시스템은, 도 11 에서 보는 바와 같이, CPU(11), 후크 드라이버(Hook Driver)(12), 칩셋(14), PCI(15, 15'. 15"), SPI 방식의 펌웨어(17), 아날로그 디스플레이(VGA) 커넥터(18), SIO(19), 시스템 메모리(10a), OS(10c)와 태스크 스케쥴러(10d), CPU 코어 파워서플라이(10e), 파워 매니지먼트(PM)(10f)와 설정값 dB(10g) 등을 포함하는 메인 보드(10); 보조 커넥터(21) 및 메인 커넥터(22)를 통해 상기 메인 보드와 접속되는 SMPS(20); 그리고 각종 주변 장치들; 을 포함하여 이루어진다.
한편, 상기 메인 보드(10)와 파워서플라이(SMPS)(20) 사이에는, 전원 스위치(51)와 전원단 레귤레이터들(52~54)로 이루어지는 대기전원 공급부; 가 개재되어, CPU로의 전원(Vcore) 및 각종 전원단 레귤레이터들(52, 53, 54)로의 전원 공급을 제어하는바, 상기 SIO(19)는, 상기 CPU(11)의 단자로부터 현재 컴퓨터 시스템의 전원모드(S3~S5 모드) 및 현재 CPU의 동작 상태(C0~C7 레벨)와 상기 칩셋(14)으로부터의 슬립 타입 신호를 파악하여, 상기 대기 전원 스위칭 소자(51) 및 PCI(15)를 제어함으로써, 대기전원 공급 및 비디오 카드 등의 각종 주변장치 버스를 제어하게 된다.
이를 더 상술하면, 시스템에 장착되어지는 CPU(11)의 프로세서 코어의 종류에 따라 각각 상이한 코어 전압의 인가 및 그에 따른 각각 상이한 프리퀀시의 클럭을 CPU로 제공하게 되는바, 이러한 프로세서 코어에 대한 최적의 코어 인가 전압(VID) 데이터 및 클럭 프리퀀시(FID)의 테이블(14a)이, 펌웨어(17) 및 칩셋(14) 내에 저장되어 있다. 예를들어, 3.2G 프로세서의 경우, 몇 V의 코어 동작 전압을 인가하고, 몇 프리퀀시의 클럭을 인가할 것인가에 대한 CPU 데이터를 가지고 있어, 특정 프로세서가 탑재되면, 프로세서 ID를 받아서, 그러한 CPU 종류에 따른 CPU 전압이 인가되도록 하는바, 다른 한편, 동일한 CPU라도 실행되는 프로그램의 종류에 따라서 CPU 사용율이 달라지므로 OS 로드에 따라 전압을 조정하여 주고, 아울러 그에 대응되는 클럭 주파수를 떨어뜨림으로써, 결국 CPU의 소비전력을 절감할 수 있게 된다. 더욱이, 여기서 더 나아가, 여러 개의 앱이 동시에 실행 중일 경우, 각각의 CPU 사용율의 합(SUM)에 대응되는 전압 및 클럭 주파수를 제공하는 것이 일반적으로 생각되어질 것이나, 본 발명에서는, 실제 여러 개의 앱의 동시 실행시에 CPU 사용율이 더 낮아진다는 점에 착안하여 (일례로 4개의 상이한 앱이 각각 실행될 시에는 각각의 앱의 CPU 사용율이 1%라고 가정할 때, 4개의 상이한 앱이 동시 실행시에는 4%가 되지 않고 그보다 더 낮은 일례로 3.1% 일 수 있음), 실제로 측정된 더 낮은 CPU 사용율을 미리 dB화하여 두고서, 이를 근거로 전압(VID) 및 클럭 주파수(FID)를 조정함으로써, 결국 CPU의 소비전력을 최대한 절감할 수 있게 된다.
즉, 복수개의 프로그램(앱)의 동시 실행에 따라서 그에 따른 CPU 사용율 및 OS 로드에 따라 전압(VID)을 조정하여 주고, 아울러 그에 대응되는 클럭 주파수(FID)를 떨어뜨림으로써, 결국 CPU의 소비전력을 절감할 수 있게 되는바, 다만, 이렇게 절전을 하면서도, CPU의 기능 저하를 방지하기 위해서는, 여러 개의 앱이 실행 중일 때에 그리고 그 중에서 어떤 앱이 제1 윈도우에서 실행중인지? 에 따라서 CPU 사용율의 상/하한치 및 최대 프로세서 전류(IccMAX)와 CPU의 FID/VID 의 상/하한치, 그리고 CPU 온도의 상한치(TEMP_MAX)를 정하여 두고, 거기에 맞추어서 절전을 행하도록 함으로써, 프로세서의 안정성을 유지하면서도 최대로 절전을 행하도록 하는 것이 가능하다
더 바람직하게는, 각 파일에 대한 CPU 사용율 및 어떤 앱이 실행중일 때에 그에 수반되어 실행되어야 할 하위 그룹의 앱에 대한 CPU 사용율의 상/하한치 등도 설정하여 두고, 심지어 실행되는 앱에 따라서 반드시 필요한 주변장치를 콜하여 이러한 주변장치 리스트에 대한 dB도 확보하여 두도록 하며, 역시 그에 따르는 여타 파라미터(IccMAX, FID/VID, TEMP_MAX)의 범위도 미리 설정하여 두고서, 절전 동작시 이를 통하여 안정적인 동작이 이루어지도록 한다.
그리고, 이러한 구체적인 절차는, 먼저 CPU 종류에 따른 기준 동작 전압(VID) 데이터가 펌웨어(17)로부터 CPU 코어 파워서플라이(10e)를 통해, 그리고 프리퀀시(FID) 데이터가 칩셋의 FID 테이블(14a)로부터 칩셋(14)을 통해, CPU(11)로 각각 전달되어지면서, 한편으로는 설정값 dB(10g)에 저장되어 있는 기준 VID/FID 이외의 각종 파라미터들의 상/하한치 및 그들의 합산치(SUM)가 파워 매니지먼트(10f)와 OS(10c)에 의해 로드 및 업데이트되면서 전원관리되어진다.
이후, 실제 CPU(11)가 동작을 하게 되면, 다음 실행되어야할 프로그램을 태스크 스케쥴러(10d)로부터 OS(10c)가 전달받아, 후크 드라이버(12)로 전달하게 되며, 후크 드라이버는 실행되어진 어플리케이션 프로그램에 따른 CPU의 로드값 (즉, 앱에 따라 CPU 사용량) 을 반영한 FID 데이터 및 VID 데이터를 롸이팅(writing)하도록 하게 된다.
아울러, 상기 CPU 코어 파워서플라이(10e)는 SMPS(20)로 인가받은 12V의 전압을 0.5V ~ 3.04V의 동작전압(Vcore)으로 바꾸어 프로세서 코어로 공급하게 된다.
결국, 상기 'Vcore'는 현재 CPU의 종류 및 실행되는 태스크의 종류는 물론, 복수개의 앱이 실행되는 경우의 실제 CPU 사용율(로드)을 반영하게 되고, 본 발명에서는 별도의 추가적인 배선 없이도 현재 CPU 동작 상태를 반영한 최대 절전을 행할 수 있게 된다.
아울러, 상기 CPU와 칩셋은, SIO(19)를 제어함으로써 전원 스위치(51)를 온/오프시켜서 전원단 레귤레이터들(52~54)로 이루어지는 대기전원 전원 공급을 제어할 뿐만 아니라, PCI 버스 등을 제어함으로써 비디오 카드 등의 각종 주변장치 버스를 제어하게 되며, 신규로 실행되는 복수개의 조합의 앱의 경우에는 VID 및 FID 데이터를 업데이트할 수 있도록 한다.
참고로, 상기 대기전원 공급부는, 전압 5VSB 에서 3VSB 로의 레귤레이터(53, 54)에 의해 3VSB 를 시스템에 공급하되, 스위칭 소자(51)를 온/오프함으로써 이루어지며, 상기 PMOS FET(51)는, 5VSB를 시스템에 안정적으로 공급하기 위한 일종의 전압 레귤레이터이다.
미설명부호 (10b)는 DDI (Digital Display Interface)이고, (18')는 LAN이고, (71), (72)는 USB 포트이고, (73)은 TPM이며, (74)는 SATA 버스이다.
특히, 본 발명의 시스템에서는, CPU(11) 및 칩셋(14)이 복수개의 앱의 실행에 따른 OS(10c)에 의해 프로그램된 방식으로 대기 모드시 대기전력 최적화를 꾀하게 되며, 일종의 백그라운드 프로그램의 일종으로서 파워매니지먼트 제어프로그램인 PMA(Power Management Application)를 통해, CPU 사용량 및 CPU 온도를 파악하여, CPU 코어전원의 VID 및 FID 설정값에 따른 코어전원을 제어하면서 선택적으로 코어별 TPL(Turbo Boost Power Limits) 값을 제어함으로써, CPU 성능을 떨어뜨리지 않으면서도 발열도 줄이고 결국 전력 소비를 줄여서 에너지를 절감할 수 있게 된다.
이를 위해, CPU 온도 리미트(Temp. Limit)값 및 최대 프로세서 전류값(IccMAX)이 설정값 dB(10g)에 세팅되어 저장되어짐으로써, 상기 세팅 값을 벗어나는 경우에는, VID 및 FID를 재설정되도록 함으로써, CPU 코어가 안정적으로 동작할 수 있도록 한다. 즉, 상기 설정값 dB(10g)에는, 앱 및 파일별 CPU Usage, 하위 그룹에 대한 PU Usage, 주변장치(Device) usage table, 및 사용율 합산 데이터(sum data)는 물론, IccMAX 및 TEMP_MAX의 한계값과 각각의 상황에 대한 VID 및 FID의 한계값(MAX & LOW값)이 저장되어 있다.
또한, 컴퓨터의 VID(Voltage Identification)는 CPU에 성능을 얼마나 사용하고 있는지 판단하는 가장 좋은 방법으로 전체 컴퓨터의 사용을 통제하고 절전하는데 가장 완벽한 펙트이며, VID는 CPU에 공급되는 전원을 제어하기 위한 코드로 구성되어 프로그램으로 읽고 변경하기가 용이하다는 점에 착안하여, 그리고 VID가 많은 단계가 있다는 것은 보다 더 정교하게 에너지 절감을 할 수 있다는 점에 착안하여, VID 레지스터(VID_R)의 VID 정보를 활용하여 현재 CPU의 동작 상태를 용이하게 파악하고 나아가 VID 단계를 조절함으로써, CPU 성능의 저하 없이도 간단하게 절전이 가능하며, 나아가 주변장치도 이에 맞추어 절전을 행함으로써, 전체 컴퓨터 시스템에서 소요되는 에너지를 절감할 수 있도록 한다.
추가적으로, 본 발명에 관한 CPU 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템에 의하면, 복수개의 실행앱에 대한 CPU 사용율은 물론, 복수개의 실행 파일별 CPU 사용율을 감안하여 절전을 행하기도 하는바, 앱만 실행 (일례로 한글을 실행) 하여 신규 문서를 작성하는 경우보다, 기존에 작성된 파일을 실행하여 이미 작성된 문서를 실행하는 경우에는 앱만 실행하는 경우보다 더 CPU 사용율이 높으므로, 이를 반영하여야 한다,
더욱이, 특정 앱의 경우에는 하위 그룹 실행앱 (일례로 금융관련 기관의 실행 앱의 경우에 부수적으로 실행되어야 하는 보안 프로그램 실행앱) 들에 대한 고려도 하며, 주변장치(Device) 콜 리스트에 대한 고려도 하여야 하고, 실행되는 앱이 여러개 올라 왔을 경우, 1'st 윈도우가 가장 CPU 사용율이 높을 가능성이 크지만, 때로는 인터넷에서 파일을 다운로드를 하는 백그라운드 앱 등이 가장 높은 사용율을 보일 경우도 있는바, 이러한 상황도 고려하여 절전을 행하여야 하는바, 결국, 이러한 프로세스들에 대하여 db화되어 있을 경우, 현재 사용율에 대한 변화와 그러한 변화에 대하여 CPU 사용율 자료 등으로 CPU 사용율 Limit를 설정하여야 호환성을 높일 수 있다.
이에 대하여, 도 12를 참조하여, 부연하여 설명하면, 실행되는 메일 프로그램의 앱에 대한 CPU 사용율 dB(T1)와, 실행되는 파일에 대한 CPU 사용율 dB(T2)와, 하위그룹 앱이나 파일에 대한 CPU 사용율 dB(T3)를 고려하고, 여기에 실행 앱의 1st 윈도우가 무엇인지? 를 고려한 사용율 합계(T5)를 획득한다. 이때, 상기 앱에 대한 CPU 사용율 dB(T1)은, 1st 윈도우 앱(T11), 2nd 윈도우 앱(T12), 3rd 윈도우 앱(T13) 및 n-th 윈도우 앱(T1n)의 동시 실행시 CPU 사용율이고, 여타 파일에 대한 CPU 사용율 dB(T2)와, 하위그룹 앱이나 파일에 대한 CPU 사용율 dB(T3)의 경우에도 마찬가지이다.
한편, 절전을 위하여, 오디오 장치와 같은 주변장치 콜 리스트 dB(T4)의 경우에도, 각 실행 앱별로 구비되는 것이 바람직하며, 이는 CPU 사용율에는 별 영향이 없지만, 아이들 모드에서 주변장치를 슬립시킴으로써, 혹은 주변장치의 전원을 오프시킴으로써, 시스템 전체로서 절전을 위하여 필요하다.
이제, 최적화된 상기 사용율 합계(T5)를, 설정값 dB(10g)를 로드하거나 설정값 dB에 없는 신규 조합의 경우에는 실제 실행시 CPU 사용율을 파악하여, 획득한 후에는, 그에 해당하는 FID/VID 데이터를 펌웨어(17)나 칩셋(14)으로부터 로드하여, FID/VID 한계값(MAX & LOW)을 설정하게 되며(T6), 그리하여 최적으로 CPU 절전을 행하게 된다.
다만, 상기 FID/VID 한계값을 벗어나도록 할 만큼 너무 FID/VID 값을 설정하다 보면, 적정치를 벗어난 관계로 과열이 될 수 있고, 오히려 발열로 인한 전력 낭비나 안정적인 동작을 해칠 우려가 있는바, 온도 한계값(TEMP_MAX) 및/또는 최대 프로세서 전류값(IccMAX)을 벗어난지 여부? 를 체크하여(T7), 벗어난 경우에는 새로운 FID/VID 한계값(MAX & LOW)을 재설정하게 된다(T8).
이후, 숏텀 아이들 모드인가? 를 판단하여(T9), 그러한 경우에는 숏텀 아이들 모드에 맞는 FID/VID 한계값(MAX & LOW)을 설정하게 되고(T10), 롱텀 아이들 모드인가? 를 판단하여(T11), 그러한 경우에는 롱텀 아이들 모드에 맞는 FID/VID 한계값(MAX & LOW)을 설정하게 된다(T12).
(본 발명의 최적 실시예에 따른 컴퓨터 시스템의 대기전력 최적화 방법)
이제, 본 발명의 최적 실시예에 따른 스위칭 소자를 이용한 컴퓨터 시스템의 대기전력 최적화 방법에 대하여, 도 13 및 도 14를 주로 참조하고, 도 11 및 도 12를 보조적으로 참조하여 설명한다.
도 13에서 보는 바와 같이, 유저가 파워 버튼(13)을 눌러 전원이 'ON'되고 컴퓨터 시스템이 시작되면(S1), 스위칭 소자(SW1)(51)를 턴온시킴으로써 시스템 전체에 제1 대기전력(5VSB)을 공급하고, PS_ON# 신호를 'L'로 하여 ATX 파워 커넥터(22)를 통해 메인 보드에 각종 소자들에 모든 동작 전원 (3V, 5V, 12V 등)을 공급하게 된다(S2).
이후, 앱이나 파일이 실행되는지 여부? 를 확인하여(S3), 실행 중인 것으로 판단되면, 도 14의 S11 단계 이후의 절전 모드를 실행하게 되며, 그렇지 않은 것으로 판단되면, SIO는 칩셋과 함께 CPU 사용량을 체크하여, CPU 사용율이 일정 수준 (일례로 15%) 미만인지 여부를 체크하게 되며(S4), 일정 수준의 제1 기준치(15%) 이상이면 S3 단계로 리턴하여 반복하여 수행하고, 제1 기준치(15%) 미만이면 본 발명의 가장 높은 단계의 절전 단계(S5, S6)를 실행하게 되는바, 일례로 CPU 온도 한계값(TEMP_MAX)을 제1 온도기준값(일례로 50℃)으로 세팅하면서 최대 프로세서 전류(IccMAX) 한계값을 10A로 설정하는 제1 동작 리미트 레인지(Operation limit range_1)를 설정하고 나서(S5), CPU FID/VID를 가장 낮게 설정하는 제1 CPU FID/VID 레인지(CPU FID/VID RANGE_1)를 설정함으로써, 가장 높은 단계의 절전 모드를 실행하게 된다(S6). 상기 제1 온도기준값(T1)은 50 ~ 80℃ 중의 어느 값에서 선택 가능하나, 50 ℃ 정도가 가장 바람직하다.
추가로, 상기 S6 단계에서는, 선택적으로, 추가적인 절전도 동시에 행할 수 있는바, 주변장치 절전을 위한 제1 VGA PM (VGA PM_1) 모드를 설정하기도 한다. VGA PM 예로서, 'PM_1' 은, '일례로 5%로 클럭 다운' 및 'PLL & Transceiver sleep'으로 설정가능하다.
이후, 추가적으로 새로운 앱이 실행되었는지 여부를 체크하여(S7), 추가적인 앱이 실행되었으면 프로그램 로딩을 위해 일정 시간 대기 후, 상기 S3 단계로 리턴하여 반복수행하게 되며, 그렇지 않은 경우에는, SIO(19)는, 상기 제1 스위치(SW1)(51)를 오픈시킴으로써, 5V 대기 전원이 제1 및 제2 레귤레이터(52, 53)로 공급되지 않도록 함으로써, 사실상 컴퓨터 시스템의 파워 오프를 행하게 된다.
한편, 상기 S3 단계에서의 판단 결과, 적어도 하나의 앱이나 파일이 실행 중인 것으로 판단되는 경우에는, 먼저 설정값 dB(도 11의 10g)를 로드하는바(S11), 본 S11 단계에서 로드되는 설정값은, CPU 사용율(CPU Usage rate), 하위그룹 프로세서(Low rank processor), 주변장치 사용 테이블(Device usage table) 및 CPU 사용율 합산(CPU usage sum) 데이터가 포함될 수 있다.
상기 S11 단계 이후, 일례로 CPU 온도 한계값(TEMP_MAX)을 상기 제1 온도기준값보더 더 높은 제2 온도기준값(일례로 70℃)으로 세팅하면서 최대 프로세서 전류(IccMAX) 한계값을 30A로 설정하는 제2 동작 리미트 레인지(Operation limit range_2)를 설정하고 나서(S12), 상기 로드된 CPU 사용율(CPU Usage rate)에 맞추거나 현재 실행되는 앱이나 파일의 측정된 CPU 사용율에 맞추어 CPU FID/VID를 더 높게 설정하는 제2 CPU FID/VID 레인지(CPU FID/VID RANGE_2)를 설정함으로써, 상대적으로 더 낮은 단계의 절전 모드를 실행하게 된다(S13). 상기 제2 온도기준값(T2)은 50 ~ 80℃ 중의 어느 값에서 선택 가능하나, 대체로 높은 70 ℃ 정도가 가장 바람직하다.
추가로, 상기 S13 단계에서도 역시, 선택적으로, 추가적인 절전도 동시에 행할 수 있는바, 주변장치 절전을 위한 제2 VGA PM (VGA PM_2) 모드를 설정할 수도 있다. VGA PM 예로서, 'PM_2' 는, '일례로 30%로 클럭 다운'으로 설정가능하다.
계속해서, 상기 S14 단계에서의 판단 결과, 새로운 앱이나 파일이 실행되지 않은 경우에는 반복해서 수행하고, 새로운 앱이나 파일이 실행된 것으로 판단되는 경우에는, 실행되는 신규 앱이나 파일까지를 감안한 CPU 사용율에 대한 합산(SUM) 데이터가 기존의 설정값 dB(10g)에 저장되어 있는지? 여부를 판단하여(S15), 저장되어 있으면 이러한 CPU 사용율에 대한 합산(SUM) 데이터를 반영하여 CPU FID/VID 레인지를 추가하게 된다(S16). 상술하였듯이, 일례로 실행되는 4개의 앱이 각각 1%씩의 사용율을 갖는다고 가정하였을 때에라도, 4개의 앱이 동시 실행되면 전체 합산 사용율은 단순 합인 4% 보다 더 작게 되며, 더욱이 1st 윈도우가 어떤 앱이냐? 에 따라서도 달라지게 되는바, 따라서 이러한 4개의 앱이 실행되는 경우 및 특정 앱이 1st 윈도우에서 실행되는 특별한 경우에 대하여, 상기 설정값 dB(10g)에 이미 저장되어 있는 경우에만, 그 저장된 값이 정확한 사용율이 되며, 그러한 정확한 사용율에 대응되는 CPU FID/VID 레인지 추가가 정확한 한계값으로 유효하게 된다.
이후, CPU 온도 및 IccMAX 가 S12 단계에서 설정된 한계값을 오버하였는지? 여부를 판단하여(S17), 오버하지 않았으면 상기 S14 단계로 리턴하여 반복 수행하고, 오버하였으면, 현재의 CPU 사용율을 반영하여 새로운 CPU FID/VID 레인지를 재설정하도록 하며(S18), 새로운 CPU 사용율 (합산) 데이터를 상기 설정값 dB(10g)에 저장하여, 상기 설정값 dB(10g)를 업데이트하도록 한다(S19).
한편, 상기 S15 단계에서의 판단 결과, 기존 합산(SUM) 데이터가 존재하지 않은 경우에도, 현재의 CPU 사용율 (합산) 데이터를 상기 설정값 dB(10g)에 저장하여, 상기 설정값 dB(10g)를 업데이트하도록 한다(S19).
이제, 프로세스는 다시 CPU 사용량을 체크하여 상기 CPU 사용량이 제1 기준치(15%) 미만인지 여부를 다시 체크하게 되는바(S20), 상기 CPU 사용량이 제1 기준치(15%) 미만인 경우에는, 일례로 CPU 온도 한계값(TEMP_MAX)을 상기 제1 온도기준값(일례로 50℃)과 제2 온도기준값(일례로 70℃)의 사이값인 제3 기준값(일례로 60℃)으로 세팅하면서 최대 프로세서 전류(IccMAX) 한계값 역시 중간값인 20A로 설정하는 제3 동작 리미트 레인지(Operation limit range_3)를 설정하고 나서(S21), CPU FID/VID를 비교적 낮게 설정하는 제3 CPU FID/VID 레인지(CPU FID/VID RANGE_3)를 설정함으로써, 비교적 높은 단계의 절전 모드를 실행하게 되고, 이 경우에는 사용하지 않는 주변장치는 모두 슬립모드로 지정한다(S22). 반면, 상기 S20 단계에서 판단 결과, 상기 CPU 사용량이 제1 기준치(15%) 이상인 경우에는, 상기 S3 단계로 리턴하여 처음부터 다시 수행하게 된다.
추가로, 상기 S22 단계에서도 역시, 선택적으로, 추가적인 절전도 동시에 행할 수 있는바, 주변장치 절전을 위한 제3 VGA PM (VGA PM_3) 모드를 설정할 수도 있다. VGA PM 예로서, 'PM_3' 는, '일례로 15%로 클럭 다운' 및 'PLL sleep'으로 설정가능하다.
상기 S22 단계 이후에는, 프로세스는 다시 CPU 사용량을 다시 체크하여 상기 CPU 사용량이 상기 제1 기준치(15%) 보다 더 낮은 제2 기준치(10%) 미만인지 여부를 다시 체크하게 되는바(S23), 상기 CPU 사용량이 제2 기준치(10%) 이상인 경우에는 상기 S20 단계로 리턴하여 S20 ~ S22 단계를 반복 수행하고, 상기 CPU 사용량이 제2 기준치(10%) 미만인 경우에는, 상기 CPU FID/VID를 더욱 낮게 설정하는 제4 CPU FID/VID 레인지(CPU FID/VID RANGE_4)를 설정함으로써, 더욱 높은 단계의 절전 모드를 실행하게 되고, 이 경우에는 사용하지 않는 주변장치는 모두 딥슬립모드로 지정한다(S24).
이후, 상기 후크 드라이버(12)는 디바이스 후킹을 행하여(S25), 일정 기간 동안 키보드나 마우스 동작이 없으면, 상기 S7 단계로 진행하여 파워 오프를 행하고 (그 사이에 STR (Suspended To RAM) 단계와 같은 일반적인 프로세스는 자세한 설명을 생략한다), 반대로 일정 기간 동안 키보드나 마우스 동작이 있으면, 일종의 웨이크업이 발생한 것으로 평가하여, 상기 S3 단계로 진행하여 처음부터 반복 수행한다.
이와 같은 본 발명의 CPU 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템 및 그 제어 방법에 의하면, i) 복수개의 앱이 동시 실행중일 경우에 그에 가장 최적인 CPU 사용량을 dB화하여 두고서, 그에 응하여 미리 설정된 CPU FID/VID 한계값을 설정함으로써 신속하고도 최적인 에너지 절감이 가능하고, ii) CPU 온도나 최대 프로세서 전류(IccMAX)의 한계값을 정하여 두고 오버가 발생하는 경우에는 CPU FID/VID 한계값을 재조정하여 CPU 동작 안정성을 꾀하며, iii) 게다가 CPU 사용량의 정도를 분석하여 주변장치 및 기타 추가적인 절전을 행하여, 대기 모드를 유지할 수 있으면서도 에너지를 한층 더 절감할 수 있다는 추가적인 장점이 있다.
이상에서는 본 발명의 일 실시예에 따라 본 발명을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 변경 및 변형한 것도 본 발명에 속함은 당연하다.
(종래기술)
10 : 메인보드
11 : CPU 12 : SIO (System IO)
13 : 파워 버튼 14 : 칩셋
15 : 리셋 버튼 16 : 제1 배터리
17 : 리쥼리셋 18 : LAN
19 : 수퍼IO (Super IO) 19a : PS_ON 회로
20 : 파워서플라이 (SMPS) 30 : 마이컴
40 : 제1 스위칭부 41 : 제2 스위칭부
50 : 케이스 파워 스위치 60 : 파워 커넥터
70 : VDD 감지부
(본 발명)(도 11)
10 : 메인보드
10a: 시스템 메모리 10b: DDI (Digital Display Interface)
10c: OS 10d: 태스크 매니저(Task Manager)
10e: 파워 매니지먼트(Power Management)
10f: 설정값 dB
11 : CPU 12 : 후크 드라이버(Hook Driver)
14 : 칩셋 15 : PCI 버스
17 : SPI 플래시 18 : VGA
18': LAN 19 : SIO (Super IO)
20 : 파워서플라이 (SMPS) 21 : 보조 전원단(5VSB)
22 : 메인 컨버터
51 : 스위칭 소자 52 : PMOS FET
53, 54 : 레귤레이터
71, 72 : USB 포트 73 : TPM (Trusted Platform Module)
74 : SATA

Claims (9)

  1. CPU(11), 칩셋(14), 펌웨어(17), SIO(19) 및 시스템 메모리(10a)를 포함하는 메인 보드(10)와, SMPS(20), 그리고 각종 주변 장치들을 포함하고, 상기 메인 보드(10)는, 태스크 스케쥴러(10d), CPU 코어 파워서플라이(10e), 파워 매니지먼트(PM)(10f) 및 에너지 절감에 최적화되도록 미리 CPU 사용율과 각종 한계값을 저장해 놓은 설정값 dB(10g)를 더 포함하며, 상기 설정값 dB(10g)에 저장된 복수개의 앱의 실행에 따른 CPU 사용율에 응하여 프로세서 코어에 대한 최적의 코어 인가 전압(VID) 데이터 및 클럭 프리퀀시(FID)의 테이블(14a)이, 펌웨어(17) 및 칩셋(14) 내에 저장되어 있으며, 상기 CPU(11) 및 칩셋(14)은, 복수개의 앱의 실행에 따른 OS(10c) 로드에 따라 전압을 조정하여 주고, 그에 대응되는 클럭 주파수를 떨어뜨림으로써, CPU의 소비전력을 절감하되, 복수개의 앱의 동시 실행시에, 각각의 CPU 사용율의 산술적 단순 합(SUM)보다 더 낮은 실제로 측정된 CPU 사용율을 미리 dB화하여 두고서, 이를 근거로 코어 인가 전압(VID) 및 클럭 주파수(FID)를 조정함으로써, CPU의 소비전력을 최대한 절감할 수 있게 되는 CPU 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템의 제어 방법으로서,
    (a) 컴퓨터 시스템이 시작되면, 시스템 전체에 제1 대기전력(5VSB) 및 메인 보드에 각종 소자들에 모든 동작 전원을 공급하게 되도록 하는 단계(S2); (b) 상기 (a) 단계 이후, 앱이나 파일이 실행되는지 여부? 를 확인하는 단계(S3); (c) 상기 (b) 단계에서의 판단 결과, 실행 중이 아닌 것으로 판단되면, SIO는 칩셋과 함께 CPU 사용량을 체크하여, CPU 사용율이 제1 기준치 미만인지 여부를 체크하게 되는 단계(S4); (e) 상기 (c) 단계에서의 판단 결과, 상기 제1 기준치 이상이면 상기 (b) 단계로 리턴하여 반복하여 수행하고, 상기 제1 기준치 미만이면 CPU FID/VID를 가장 낮게 설정하여 가장 높은 단계의 절전 동작을 실행하게 되는 단계; 및 (h) 상기 (b) 단계에서의 판단 결과, 앱이나 파일이 실행 중인 것으로 판단되면, 복수개의 앱의 실행에 따른 OS(10c) 로드에 따라 프로세서 코어에 공급되는 전압(VID)을 조정하여 주고, 그에 대응되는 클럭 주파수(FID)를 떨어뜨림으로써, CPU의 소비전력을 절감하는 절전 모드를 실행하게 되는 단계; 를 포함하며,
    상기 (h) 단계는, (h1) 상기 (b) 단계에서의 판단 결과, 적어도 하나의 앱이나 파일이 실행 중인 것으로 판단되는 경우에는, 먼저 설정값 dB(10g)의 CPU 사용율 데이터 및 CPU 사용율 합산(CPU usage sum) 데이터를 포함한 각종 데이터를 로드하는 단계(S11); (h3) 상기 (h1) 단계 이후, 상기 로드된 CPU 사용율(CPU Usage rate)에 맞추거나 현재 실행되는 앱이나 파일의 측정된 CPU 사용율에 맞추어 CPU FID/VID를 상기 (e) 단계에서 보다 더 높게 설정하는 제2 CPU FID/VID 레인지(CPU FID/VID RANGE_2)를 설정함으로써, 상대적으로 더 낮은 단계의 절전 모드를 실행하게 되는 단계(S13); (h4) 상기 (h3) 단계 이후, 새로운 앱이나 파일이 실행되는지? 여부를 판단하는 단계(S14); (h5) 상기 (h4) 단계에서의 판단 결과, 새로운 앱이나 파일이 실행되지 않은 경우에는 반복해서 수행하고, 새로운 앱이나 파일이 실행된 것으로 판단되는 경우에는, 실행되는 신규 앱이나 파일까지를 감안한 CPU 사용율에 대한 합산(SUM) 데이터가 기존의 설정값 dB(10g)에 저장되어 있는지? 여부를 판단하는 단계(S15); (h6) 상기 (h5) 단계에서의 판단 결과, 합산(SUM) 데이터가 기존의 설정값 dB(10g)에 저장되어 있으면 이러한 CPU 사용율에 대한 합산(SUM) 데이터를 반영하여 CPU FID/VID 레인지를 추가하게 되는 단계(S16); 및 (h9) 상기 (h5) 단계에서의 판단 결과, 기존 합산(SUM) 데이터가 존재하지 않은 경우 및 상기 (h6) 단계 이후, 현재의 CPU 사용율에 대한 합산(SUM) 데이터를 설정값 dB(10g)에 저장하여 상기 설정값 dB(10g)를 업데이트하는 단계(S19); 를 더 포함하는 것을 특징으로 하는 CPU 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템의 제어 방법.
  2. 제 1 항에 있어서,
    상기 설정값 dB(10g)에는, CPU 사용율에 따른 최대 프로세서 전류(IccMAX)와 CPU 온도의 상한치(TEMP_MAX)를 저장하여 두고,
    상기 파워 매니지먼트(10f)는, CPU 사용량에 따른 상기 코어 인가 전압(VID) 및 클럭 주파수(FID)로 상기 복수개의 앱의 실행 시, CPU 온도를 파악하여, 상기 설정값 dB(10g)에 저장된 CPU 온도의 상한치(TEMP_MAX)를 오버(over)하는 경우에는, 상기 코어 인가 전압(VID) 및 클럭 주파수(FID)를 재설정하도록 제어함으로써, CPU 성능을 떨어뜨리지 않는 선에서 안정적으로 발열도 줄이고 결국 전력 소비를 줄여서 에너지를 절감할 수 있게 되는 것을 특징으로 하는 CPU 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템의 제어 방법.
  3. 제 1 항에 있어서,
    복수개의 앱이나 파일의 실행 시, 각 앱이나 파일에 대한 CPU 사용율 및 어떤 앱이나 파일이 실행중일 때에 그에 수반되어 실행되어야 할 하위 그룹의 앱에 대한 CPU 사용율의 상/하한치도 설정하여 두고, 실행되는 앱에 따라서 반드시 필요한 주변장치를 콜하여 필요한 주변장치 리스트에 대한 dB도 확보하여 두도록 하며, 그에 따르는 여타 파라미터의 범위도 미리 설정하여 두고서, 절전 동작시 이를 통하여 안정적인 동작이 이루어지도록 하는 것을 특징으로 하는 CPU 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템의 제어 방법.
  4. 제 1 항에 있어서,
    상기 CPU(11)가 동작을 하게 되면, 실행되어야할 프로그램을 태스크 스케쥴러(10d)로부터 OS(10c)가 전달받아, 후크 드라이버(12)로 전달하게 되며, 후크 드라이버는 실행되어진 앱이나 파일에 따른 CPU 사용량을 반영한 FID 데이터 및 VID 데이터를 롸이팅(writing)하도록 하며, CPU 사용량이 제1 기준치 미만으로 떨어질 경우에는, 상기 메인 보드(10)와 파워서플라이(SMPS)(20) 사이에서 전원 스위치(51)와 전원단 레귤레이터들(52~54)로 이루어지는 대기전원 공급부를 차단하여, CPU로의 전원(Vcore) 및 각종 전원단 레귤레이터들(52, 53, 54)로의 전원 공급을 완전차단하도록 하는 것을 특징으로 하는 CPU 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템의 제어 방법.
  5. 제 1 항에 있어서,
    (f) 상기 (e) 단계 이후, 새로운 앱이 실행되었는지 여부를 체크하는 단계(S7); 및
    (g) 상기 (f) 단계에서의 판단 결과, 새로운 앱이 실행되었으면 프로그램 로딩을 위해 일정 시간 대기 후, 상기 (b) 단계로 리턴하여 반복수행하게 되며, 새로운 앱이 실행되지 않은 경우에는, 대기 전원이 공급되지 않도록 함으로써 컴퓨터 시스템의 파워 오프를 행하게 되는 단계(S8);
    를 더 포함하는 것을 특징으로 하는 CPU 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템의 제어 방법.
  6. 삭제
  7. 제 1 항에 있어서,
    (h10) 상기 (h9) 단계 이후에, 현재 CPU 사용량을 체크하여 상기 CPU 사용량이 제1 기준치 미만인지 여부를 다시 체크하게 되는 단계(S20);
    (h11) 상기 (h10) 단계에서의 판단 결과, 상기 CPU 사용량이 제1 기준치 미만인 경우에는, CPU FID/VID를 더 낮게 설정함으로써, 더 높은 단계의 절전 모드를 실행하게 되고, 사용하지 않는 주변장치는 모두 슬립모드로 지정하는 단계(S22);
    (h12) 상기 (h11) 단계 이후에, CPU 사용량을 다시 체크하여 상기 CPU 사용량이 상기 제1 기준치 보다 더 낮은 제2 기준치 미만인지 여부를 다시 체크하게 되는 단계(S23);
    (h13) 상기 (h12) 단계에서의 판단 결과, 상기 CPU 사용량이 제2 기준치 미만인 경우에는, CPU FID/VID를 더 낮게 설정함으로써, 더 높은 단계의 절전 모드를 실행하게 되고, 사용하지 않는 주변장치는 모두 딥슬립모드로 지정하는 단계(S24); 및
    (h14) 상기 (h13) 단계 이후에, 후크 드라이버(12)는 디바이스 후킹을 행하여(S25), 일정 기간 동안 키보드나 마우스 동작이 없으면, 파워 오프를 행하고, 반대로 일정 기간 동안 키보드나 마우스 동작이 있으면, 상기 (b) 단계로 진행하여 처음부터 반복 수행하는 단계;
    를 더 포함하는 것을 특징으로 하는 CPU 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템의 제어 방법.
  8. 제 1 항에 있어서,
    (d) 상기 (c) 단계에서의 판단 결과, 상기 제1 기준치 미만일 경우, CPU 온도 한계값(TEMP_MAX)을 제1 온도기준값으로 세팅하면서 최대 프로세서 전류(IccMAX) 한계값을 제1 전류기준값으로 설정하는 제1 동작 리미트 레인지(Operation limit range_1)를 설정하는 단계(S5);
    를 더 포함하고,
    상기 (h1) 단계 후에,
    (h2) CPU 온도 한계값(TEMP_MAX)을 상기 제1 온도기준값보다 더 높은 제2 온도기준값으로 세팅하면서 최대 프로세서 전류(IccMAX) 한계값을 상기 제1 전류기준값보다 더 높은 제2 전류기준값으로 설정하는 제2 동작 리미트 레인지(Operation limit range_2)를 설정하는 단계(S12);
    를 더 포함하며,
    CPU 온도를 파악하여, 상기 CPU 온도의 상한치(TEMP_MAX)를 오버(over)하는 경우에는, 상기 코어 인가 전압(VID) 및 클럭 주파수(FID)를 재설정하도록 제어함으로써, CPU 성능을 떨어뜨리지 않는 선에서 안정적으로 발열도 줄이고 결국 전력 소비를 줄여서 에너지를 절감할 수 있게 되는 것을 특징으로 하는 CPU 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템의 제어 방법.
  9. 제 1 항에 있어서,
    상기 (e) 단계에서는, 주변장치 절전을 위한 제1 VGA PM (VGA PM_1) 모드를 설정하여 상대적으로 낮은 '제1 클럭 다운' 및 'PLL & Transceiver sleep'으로 설정하고, 상기 (h3) 단계에서는, 주변장치 절전을 위한 제2 VGA PM (VGA PM_2) 모드를 설정하여 상기 '제1 클럭 다운' 보다 더 높은 '제2 클럭 다운' 및 'PLL sleep'으로 설정하는 것을 특징으로 하는 CPU 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템의 제어 방법.
KR1020220157866A 2022-11-22 2022-11-22 Cpu 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템 및 그 제어 방법 KR102516672B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220157866A KR102516672B1 (ko) 2022-11-22 2022-11-22 Cpu 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템 및 그 제어 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220157866A KR102516672B1 (ko) 2022-11-22 2022-11-22 Cpu 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템 및 그 제어 방법

Publications (1)

Publication Number Publication Date
KR102516672B1 true KR102516672B1 (ko) 2023-04-03

Family

ID=85936673

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220157866A KR102516672B1 (ko) 2022-11-22 2022-11-22 Cpu 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템 및 그 제어 방법

Country Status (1)

Country Link
KR (1) KR102516672B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102621930B1 (ko) * 2023-09-08 2024-01-05 주식회사 엠컴 유휴자원에 따라 컴퓨터의 리소스를 절감하여 절전을 행하는 컴퓨터 시스템 및 그 제어 방법

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4380986B2 (ja) * 2000-09-08 2009-12-09 富士通株式会社 クロック制御装置及びその記録媒体
JP2013025508A (ja) * 2011-07-19 2013-02-04 Fujitsu Ltd 情報処理装置、制御プログラムおよび制御方法
KR20130043923A (ko) 2011-10-21 2013-05-02 삼성전자주식회사 전원 공급 장치 및 그를 포함하는 화상 형성 장치
KR101328393B1 (ko) 2013-06-10 2013-11-13 (주)엔텍 대기전력이 절감되는 컴퓨터 전원공급장치
KR101623756B1 (ko) 2015-12-24 2016-05-24 사회복지법인 한국소아마비협회 시스템 메모리 전원을 활용한 대기전력 차단 장치의 대기전력 차단 방법
KR101805879B1 (ko) * 2017-08-01 2017-12-07 주식회사 다나와컴퓨터 Mpsc의 제어신호를 이용한 컴퓨터 시스템의 에너지 절감 장치 및 방법
KR101815239B1 (ko) 2017-09-25 2018-01-05 주식회사 티원엘에스 스위칭 소자를 이용한 컴퓨터 시스템의 대기전력 최적화 장치 및 방법
KR102214153B1 (ko) * 2020-10-14 2021-02-10 주식회사 다나와컴퓨터 Vid를 이용한 컴퓨터 시스템의 에너지 절감 방법

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4380986B2 (ja) * 2000-09-08 2009-12-09 富士通株式会社 クロック制御装置及びその記録媒体
JP2013025508A (ja) * 2011-07-19 2013-02-04 Fujitsu Ltd 情報処理装置、制御プログラムおよび制御方法
KR20130043923A (ko) 2011-10-21 2013-05-02 삼성전자주식회사 전원 공급 장치 및 그를 포함하는 화상 형성 장치
KR101328393B1 (ko) 2013-06-10 2013-11-13 (주)엔텍 대기전력이 절감되는 컴퓨터 전원공급장치
KR101623756B1 (ko) 2015-12-24 2016-05-24 사회복지법인 한국소아마비협회 시스템 메모리 전원을 활용한 대기전력 차단 장치의 대기전력 차단 방법
KR101805879B1 (ko) * 2017-08-01 2017-12-07 주식회사 다나와컴퓨터 Mpsc의 제어신호를 이용한 컴퓨터 시스템의 에너지 절감 장치 및 방법
KR101815239B1 (ko) 2017-09-25 2018-01-05 주식회사 티원엘에스 스위칭 소자를 이용한 컴퓨터 시스템의 대기전력 최적화 장치 및 방법
KR102214153B1 (ko) * 2020-10-14 2021-02-10 주식회사 다나와컴퓨터 Vid를 이용한 컴퓨터 시스템의 에너지 절감 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102621930B1 (ko) * 2023-09-08 2024-01-05 주식회사 엠컴 유휴자원에 따라 컴퓨터의 리소스를 절감하여 절전을 행하는 컴퓨터 시스템 및 그 제어 방법

Similar Documents

Publication Publication Date Title
KR101815239B1 (ko) 스위칭 소자를 이용한 컴퓨터 시스템의 대기전력 최적화 장치 및 방법
KR101623756B1 (ko) 시스템 메모리 전원을 활용한 대기전력 차단 장치의 대기전력 차단 방법
EP1924909B1 (en) Method and apparatus for quick resumption
KR100663864B1 (ko) 멀티-코어 프로세서의 프로세서 모드 제어장치 및 방법
KR101805879B1 (ko) Mpsc의 제어신호를 이용한 컴퓨터 시스템의 에너지 절감 장치 및 방법
KR101739501B1 (ko) 컴퓨터 시스템의 대기전력 차단 및 에너지 절감 방법
US8656150B2 (en) Computer system with overclocking function involves setting time parameter of memory controller
US7480791B2 (en) Method and apparatus for quick resumption where the system may forego initialization of at least one memory range identified in the resume descriptor
KR102256136B1 (ko) 오프셋모드를 활용하여 코어전원을 제어하는 에너지 절감형 컴퓨터 시스템 및 그 제어 방법
US8429432B2 (en) Stand-by power system for information handling systems
KR102516895B1 (ko) Cpu 주파수 최대값 제어를 통하여 전원관리를 수행하는 에너지 절감형 컴퓨터 시스템 및 그 제어 방법
KR102516672B1 (ko) Cpu 사용율에 따른 한계값 설정을 통하여 절전을 행하는 에너지 절감형 컴퓨터 시스템 및 그 제어 방법
KR101929044B1 (ko) Pwm 제어 ic를 통한 시스템 에너지 절감 방법
KR102214153B1 (ko) Vid를 이용한 컴퓨터 시스템의 에너지 절감 방법
CN111741518A (zh) 一种WiFi芯片电路及WiFi装置
US7900030B2 (en) Method for determining a rebooting action of a computer system and related computer system
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
KR101741225B1 (ko) Sio를 이용한 컴퓨터 시스템의 전력 절감 장치 및 방법
KR101978323B1 (ko) Gpio 포트를 활용한 효율적인 전력관리 장치 및 방법
US20130275739A1 (en) Electronic apparatus, method of controlling the same, and computer-readable recording medium
KR102129563B1 (ko) 시스템 자원의 최적화를 통한 컴퓨터 에너지 절감 장치 및 방법
WO2005062156A1 (ja) 周波数制御方法および情報処理装置
KR102244643B1 (ko) 전원공급장치 내장형 컴퓨터 시스템의 절전장치 및 방법
KR102685980B1 (ko) 전원제어 통합관리자를 통한 컴퓨터 시스템의 에너지 절감 장치 및 방법
US20110231679A1 (en) Energy saving device

Legal Events

Date Code Title Description
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant