KR100352045B1 - 컴퓨터시스템에서전력소모를감소시키기위한방법및장치 - Google Patents

컴퓨터시스템에서전력소모를감소시키기위한방법및장치 Download PDF

Info

Publication number
KR100352045B1
KR100352045B1 KR1019950000311A KR19950000311A KR100352045B1 KR 100352045 B1 KR100352045 B1 KR 100352045B1 KR 1019950000311 A KR1019950000311 A KR 1019950000311A KR 19950000311 A KR19950000311 A KR 19950000311A KR 100352045 B1 KR100352045 B1 KR 100352045B1
Authority
KR
South Korea
Prior art keywords
standby
register
central processing
processing unit
cpu
Prior art date
Application number
KR1019950000311A
Other languages
English (en)
Other versions
KR950033777A (ko
Inventor
쿠리하라엠.스티븐
인슐레이더블유.마아크
Original Assignee
선 마이크로시스템즈 인코퍼레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=22656576&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR100352045(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 선 마이크로시스템즈 인코퍼레이티드 filed Critical 선 마이크로시스템즈 인코퍼레이티드
Publication of KR950033777A publication Critical patent/KR950033777A/ko
Application granted granted Critical
Publication of KR100352045B1 publication Critical patent/KR100352045B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • 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/3293Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
    • 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)와 전력관리회로(PMC)를 포함한다. 상기 CPU는 인터럽트 및 직접 메모리 엑세스 요구에 응답하는 능동 모드와, 상기 저전력 상태이고 상기 인터럽트 및 직접 메모리 엑세스 요구에 응답하지 않는 대기 모드를 구비한다. 상기 PMC는 상기 CPU가 대기 모드에 있을 때 상기 시스템내에서 상기 인터럽트 및 직접 메모리 엑세스 요구를 감시하고, 상기 인터럽트 또는 직접 메모리 엑세스 요구 검출 하에 상기 CPU가 상기 능동 모드에 들어가도록 야기한다. 상기 PMC는 상기 CPU가 능동모드 또는 대기 모드를 표시하기 위한 내용를 구비한 대기 레지스터와; 상기 대기 레지스터의 내용이 대기 모드를 표시할 때 대기 인에이블링 출력신호를 출력하고, 상기 대기 레지스터의 내용이 능동 모드를 표시할 때 대기 디스에이블링 출력신호를 출력하기 위하여 상기 대기 래지스터에 결합된 로직과: 인터럽트 또는 직접 메모리 엑세스 요구 검출 하에 상기 대기 레지스터의 내용이 상기 능동 모드를 지시하는 로직을 포함한다. 컴퓨터 시스템의 CPU에 의하여 소모되는 전력을 감시하기 위한 방법은 상기 CPU를 저전력 대기모드로 들어가도록 하는 단계와, 상기 컴퓨터 시스템에서 인터럽트 및 직접 메모리 엑세스 요구를 감시하는 단계와, 그리고 상기 검출된 요구에 상기 CPU가 응답할 수 있도록 상기 중앙처리장지를 능동 포트로 재가동시키는 단계를 포함한다.

Description

컴퓨터 시스템에서 전력 소모를 감소시키기 위한 방법 및 장치
본 발명은 일반적인 소형 컴퓨터 시스템[ 퍼스날 컴퓨터, 워크스테이션(workstations), 및 램탑 컴퓨터(laptop computers)와 같은]에 관한 것으로, 더욱 상세하게는 전력관리기능이 구비된 컴퓨터 시스템에 관한 것이다.
퍼스날 컴퓨터 시스템은 대목 대 강력하게(효율적으로) 되어 가고 있다. 예를 들면, 상기 퍼스날 컴퓨터 시스템은 램탑, 노트북, 및 서브-노트북(sub-notebook) 컴퓨터 시스템을 말하며, 이 컴퓨터 시스템들은 전적으로 자신들의 데스크탑 연산장체들(desktop counterparts) 만큼 강력하다. 어떤 데스크탑 기계는 볼과 수년 전에 만들어진 워크스테이션의 연산능력을 구비하고 있고, 워크스테이션은 현재 미니(mini), 수리-미니(super-mini) 및 메인프레임 컴퓨터 시스템의 영역에 있는 연산 작업들을 실행하고 있다.
상기 전력 소모 및 과열 현상은, 되도록 큰 연산 능력이 가능한 작은 보호 장치 또는 패키지 내에 탑재됨에 따라 커다란 문제점으로 대두되었다. 밧테리 전원 컴퓨터에서, 노트북 컴퓨터, 슈퍼-노트북 컴퓨터, 퍼스날 디지탈 보조장치(personal aigital assistants ; PDA's) 등과 같은, 전력 관리는 밧데리 수명을 증대시키기 위하여 필요하고, 이에 의해서 상기 컴퓨터는 재충전되거나 교체된 밧데리를 사용할 수 있는 시간을 증대시킬 수 있다.
이와 반대로, 데스크탑 퍼스날 컴퓨터 및 워크스테이션은 밧데리 전원에 의해 전력을 공급받지 않는다. 그러나, 전력관리의 어떤 형식은 종종 매우 바람직하다. 그 이유의 하나는 전형적인 데스크탑 컴퓨터 시스템은 사용중이거나 사용이 되지 않는 중이거나 턴-온(turn-on) 될 때 시간당 수백 와트(matt)의 전력이 소모된다. 이렇게 소모되는 에너지는 꽤 많은 비용을 소모시키는데, 특히 큰 회사 및 공공 기관에서는 수액 또는 수천의 데스크탑 컴퓨터 시스템을 밤낮으로 턴-온 상태로 두기 때문이다.
데스크탑 기계에 전력 관리가 바람직한 다른 이유는 보를 이런 기계에 의해서는 최소의 열이 발생되는 것이 바람직하다. 새로운 고속 마이크로프로세서의 발진은 종종 50 MHz 또는 그 이상의 주파수 범위에서 발전되고, 이때 발생된 상당한 열은 컴퓨터 시스템에서 열 민감성 소자의 에러를 예방하기 위하여 효과적으로 전부 소모시켜야만 한다. 만약 상기 데스크탑 컴퓨터 시스템의 전력 소모가 감소하면, 열 발행도 감소하고 따라서 상기 컴퓨터 시스템의 필요조건인 냉각을 위한 비용이 감소된다.
과거, 전력소모는 상기 컴퓨터 시스템의 중앙처리장치(이하 "CPU" 라고 함)의 클력속도를 감소시킴에 의해서 감소되었다. 이와 같은 전력소모의 감소는 CPU에 의해서 소모되는 전력량같이 직접적으로 CPU의 클럭속도에 관계되기 때문이다. 다시 말해서 종래는 컴퓨터 시스템이 과열되기 시작하면, 상기 CPU의 클럭 속도가 감소되어서, 상기 CPU에 의해 발생되는 열 및 소모되는 전력을 감소시키는 것이다. 상기 CPU의 클럭측도는 전력이 작을 때 또는 CPU의 동작이 검출되지 않을 때 또는 상기 밧테리 전압이 일정값 밑으로 강하될 때 또는 사용자의 명백한 명령에 의해서 감소될 수 있다.
이러한 전력관리시스템은 독립된 컴퓨터 시스템 또는 단순 네트워크에 연결된 퍼스날 컴퓨터 시스템에 적함하다. 그러나 하기에 보다 더 상세히 설명되는 것처럼, 이러한 전력관리기술은 산업상에서 일반직으로 사용되는 유닉스(UNIX)를 기초로 한 세트워크 컴퓨터 시스템에서는 적합하지 않다.
유닉스를 기초로 한 컴퓨터 시스템은 처리할 작업을 대기시키는 아이들 루루프(iale looP) 내에 존재하는 인터럽트-트리본(interrupt - driven) 시스템이다. 만약 인터럽트가 검출되면, 상기 인터럽트는 상기 시스템이 상기 아이를 루프에 다시 들어가기 전에 상기 CPU에 의해서 처리된다. SUN SPARC스테이션 2 워크스테이션과 같은 유닉스를 기초로 한 워크스테이션은 1에서 15 까지 열거되는 15 레벨의 인터럽트를 가질 수 있고, 상기 인터럽트의 우선순위는 놓은 번호의 인터럽트의 우선순위가 높다. 예로서, 만약 UNIX를 기초로 한 컴퓨터 시스템에서 상기 CPU에 의하여 검출된 레벨 2 인터럽트 및 레일 10 인터럽트는, 상기 레일 10 인터럽트 작업이 상기 레벨 2 인터럽트 작업의 완료 전에 처리될 것이다.
제 la 도에 종래 기술에 의한 유닉스를 기초로 한 컴퓨터 시스템의 공정도(10)을 도시하였다. 상기 공정도(10)은 유니스 kernel 이라 행하는 유닉스 연산 시스템의 기초 공정이다. 상기 공정도(10)은 12 단계에서 시작하고(전형적으로 시스템의 파워 업을 나타냄), 14 단계에서 상기 컴퓨터 시스템은 초기화된다. 특히, 상기 시스템의 인터럽트 데이불도 클리어 및 초기화된다. 상기 14 단계에서 초기화 된 후, 16 단계에서 상기 시스템의 기능인 인터럽트 밀 직접 메모리 엑세스(이하 "DMA"라고 함)가 인에이블 된다. 그 다음에 18 단계에서 도시된 바와 같이, 상기 기분 CPU의 임무가 실행된다. 작업을 인터럽트 및 DMA 요구를 포함한 상기 CPU공정의 정상적인 흐름을 변화하거나 수정할 수 있다.
DMA 요구는 이 분야에서 능숙한 자라면 잘 알고 있는 방법에 의해 상기 CPU에 의해 처리되는 하드웨어 형태의 작업이다. 그러나, 유닉스를 기초로 한 시스템 내에서 대부분의 작업은 인터럽트 작업이다. 제 la 도의 18 단계에서의 CPU 임무를 수행하는 동안의 인터럽트에 대한 상기 CPU의 응답은 제 1b 도에서 좀더 상세히 도시하였다.
제 1b 도에서 공정도(18)은 20 단계에서 시작하고, 즉시 22단계의 NOP(동작이 수행되지 않음)를 포함한 아이들 루프에 들어간다. 상기 마이크로프로세서는 인터럽트(23)가 발생되어 상기 마이크로프로세서가 마스타 인터럽트 핸들러(master interrupt handler ; 24)로 점프될 때까지 상기 아이들 루프에 존재할 것이다. 상기 마스터 인터럽트 핸들러는 상기 인터럽트의 우선순위 레일을 결정하고 그것을 핸들러(handler : 25,26,28,30,32)와 같은 적당한 핸들러로 넘겨준다. 예로서, 15 레벨의 인터럽트는 레벨 15 핸들러에서 레벨 1 핸들러로 순서대로 처리될 것이다. 상기 각 헨들러는 특별한 형테의 임무에 관련되어 있다. 예를 들면, 레벨 2 핸들러(26)는 인터네트(Ethernet 케이블의 삽입 또는 제거와 같은 직접적인 시스템 변화에 응답한다. 그리고 레벨 10 핸들러(30)은 관리용 핸들러로 스케줄 순서를 검출 및 시간에 의존되는 공정은 새롭게 하기 위한(컴퓨터의 스크린 상에 표시되는 클릭과 같은) 기초 관리 임무를 실행하기 위하여 매 10 ms(milliseconds) 마다 호출된다. 다른 핸들러들은 상기 시스템의 입출력 디바이스를 위해 사용된다. 어떤 핸들러들은, 레벨 X 핸들러(28 ; 여기서 X 는 본 실시예에서 2 내지 10 가운데 하나)와 같은, 사용자의 처리를 초기화하기 위하여 사용될 수 있다. 예를 들면, 레일X 핸들러는 키보드로 부터(레벨 X 인터럽트) 선택됨에 의하여 개시될 수 있고, 작업의 행렬 내에서 인식되었을 때, 그것은 사용자 루틴 또는 프로그램을 시작할 수 있다 그러나, 주목해야 하는 중요한 것은, 핸들러가 인터럽트(사용자 또는 다른 시스템의 임의의 일련 과정을 포함)를 완전하게 처리한 후, 상기 공정 제어는 A포인트로 돌아와서 상기 공정도(18)의 상기 아이들 루프로 다시 들어간다는 것이다.
상기 마스타 인터럽트 핸들러로 향한 점선 화살표이 가리키는 것은, 핸들러(25-32)중의 하나의 핸들러가 그 자신이 인터럽트가 되어서 공정 제어를 상기 마스타 인터럽트 핸들러(24)로 인계하는 것이 가능하다. 인터럽트 수는 인터럽트 스택(stack) 내의 최대 수까지 가능하다. 상기 핸들러들이 모든 인터럽트 작업을 완전하계 처리한 후, 공정 제어는 A 포인트로 돌아와서 상기 공정도(18)의 아이들 루프로 다시 들어간다.
제 1C 도에 입력/출력(l/O) 디바이스 또는 주변 디바이스에 의하여 발생되는 인터럽트의 전형적인 처리를 도시하였다. 상기 공정도(35)는 주변 디바이스로 부터 인터럽트의 검출과 함께 36 단계에서 시작되고, 38 단계에서 상기 주변 디바이스는 셋업 된다. 그리고 40 단계에서 데이타는 전송되고, 42 단계에서 상기 공정은 완료된다.
상기 유닉스를 기포로 한 컴퓨터 시스템의 전력관리를 위해서는 상기 시스템이 DNA 요구와 같은 인터럽트를 빨리 처리하기 위해서 항상 충분하게 동작을 하고 있어야만 하는 문제가 있었다. 주어진 예에서, 매일 10 또는 하우스키핑(housekeeping) 인터럽트는 매 10ms 마다 시스템의 하드웨어에 의하여발생되므로 신속한 방법으로 처리해야만 한다. 따라서 CPU 클럭의 주파수 감소에 의한 것은 상기 문제의 완전하지 못한 해결이 되었고, 인터럽트 및 DNA 요구의 감시없이 상기 CPU의 완전한 턴 오프는 상기 시스템의 상태를 나쁘게 하는 것으로 나타나는 등, 상기 유닉스 kernel의 실패를 유발하였다.
상기 설명한 유닉스를 기초로 한 컴퓨터 시스템에서 전력 관리를 위대 발생하는 문제에도 불구하고, 그런 관리는 매우 바람직하다. 그것은 전형적인 소형 컴퓨터 시스템에서 턴온 시간의 1 퍼센트 이하의 시간에서 데이타 처리가 이루어진다고 평가된다. 상기 설명한 유닉스 컴퓨터 시스템의 경우 상기 컴퓨터는 제 1b 도의 22 단계인 NOP를 포함한 아이들 루프에서 사용시간의 대부분을 소비하였다 NOP 단계의 실행은 하나의 유용한 목적을 구비한 단계 만큼 많은 에너지를 소모한다. 유닉스를 기초로 한 레일 10 인터럽트의 사이에서 실행되는 NOP는 500,000 NOPs 만큼 에너지를 소모한다. 따라서 이러한 NOP의 실행은 상기 시스템에서 필요한 전력의 막대한 양을 소모한다.
전력관리를 구비한 컴퓨터 시스템을 제공하는 본 발명은 특히 유닉스 형태의 워크스테이션에 아주 적합하다. 인터럽트 및 DNA 요구를 위해 상기 시스템을 감시하는 본 발명의 방법 및 장치는 상기 시스템의 상기 CPU가 저 전력 대기 상태에 있는 동안, 그리고 상기 인터럽트 및 DMA 요구가 검출되었을 때 상기 CPU가 능등 모드로 돌아오도록 하기 위하여 동작한다. 따라서 본 발명은 유닉스를 기초로 한 컴퓨터 시스템에서 상기 유닉스 kernel이 인터럽트, DMA 요구, 또는 다른 외부 작업에 대해 응답에 실패하지 않는 그린 방법 내에서 전력관리를 제공한다.
상기 본 발명에 따른 전력관리를 구비한 컴퓨터 시스템은 중앙처리장치와 상기 중앙처리장치에 결합된 전력관리회로를 포함한다. 상기 중앙처리장치는 인터럽트 및 직접 메모리 액세스 요구에 응답하는 능동모드와, 저전력 상대이고 인터럽트 및 적절 메모리 액세스 요구에 응답하지 않는 대기 모드를 구비한다. 상기 전력관리회로는 상기 중앙처리장치가 대기 모드에 있을 때 상기 인터럽트 및 직접 메모리 액세스 요구를 감시하기 위해 동작하고, 인터럽트 및 직접 메모리 액세스 요구의 검출 하에 상기 중앙처리장치를 상기 능동 모드로 들어가도록 야기하도록 동작한다.
본 발명의 전력관리회로는 상기 CPU가 대기 모드 및 능등 모드 중의 어느 상태에 있는 지를 표시하는 내용를 갖는 대기 레지스터와, 상기 대기 레지스터의 내용이 대기 모드를 표시할 때 대기 인에이불링 출력신호를 발생하고, 상기 대기 레지스터의 내용이 능등 모드를 표시할 때 대기 디스에이블링 출력신호를 발생하기 위하여 상기 대기 레지스터에 결합된 로직과, 인터럽트 입력과. 직접 메모리 액세스 입력과, 상기 인터럽트 입력, 직접 메모리 액세스 입력 및 상기 대기 레지스터에 결함되고, 상기 외부 작업의 입력하에 상기 대기 레지스터의 내용이 능동 모드로 되도록 동작 하는 로직을 포함한다. 또한 상기 전력관리회로는 다수의 주변 디바이스에 연결된 다수의 디바이스 레지스터를 포함하고, 상기 디바이스 레지스터의 내용은 상기 연결된 주변 디바이스로 공급되는 전력을 제어한다.
본 발명에 따른 컴퓨터 시스템에서 상기 중앙처리장치에 의해 소포되는 전력의 관리 방법은 상기 능동 모드에서 인터럽트, 직접 메모리 액세스 요구 및, 대기신호에 응답하도특 중앙처리장치를 제공하는 단계와, 상기 중앙처리장치가 상기 대기 모드에 있을 때 상기 인터럽트와, 상기 직접 메모리 액세스 요구에 음답하기 위하여 상기 능등 모드로 상기 중앙처리장치가 다시 들어가도록 전력관리회로를 제공하는 단계를 포함한다. 상기 전력관리회로를 제공하는 단계는 다수의 주변 디바이스에 연결된 다수의 디바이스 레지스터를 제공하는 단계를 포함하고, 상기 디바이스 레지스터의 내용은 상기 연결된 주변 디바이스로 공급되는 전력을 제어한다.
본 발명의 다른 실시예에 의한 컴퓨터 시스템에서 상기 중앙처리장치에 의해 소모되는 전력의 관리 방법은; (a) 컴퓨터 시스템의 중앙처리장치를 저전력 대기 모드로 들어가도록 하는 단계와, (b) 상기 중앙처리장치가 외부 작업에 응답할 수 있도록 상기 컴퓨터의 외부 작업을 감시하는 단계와; (c) 상기 중앙처리장지가 능동 모드에서 상기 외부 작업에 응답 가능하도록 상기 중앙처리장치를 재가동시키는 단계를 포함한다. 본 발명의 최선의 실시예에서, 컴퓨터 시스템의 중앙처리장지를 저전력 대기 모드로 들어가도록 하는 단계는, 상기 중앙처리장치가 전력 관리회로의 대기 레지스터에 대기 명령을 기록하는 단계와, 상기 전력관리회로가 상기 중앙처리장치의 대기 입력을 인에이블링 시키는 단계를 포함한다.
상기 본 발명에 의한 전력관리방법 및 장치는 상기 시스템의 소프트제어 손상 없이 유닉스를 기초로 한 컴퓨터 시스템 내에서 전력 소모 및 발생되는 열을 감소시킬 수 있는 효과가 있다. 분 발명은 인터럽트 및 DNA 요구의 사용이 광범위한 컴퓨터 시스템 및 고속 네트워크에 적용되는 시스템에 매우 적합하다.
이와 같은 본 발명의 효과 및 다른 효과는 이하 설명되는 본 발명에 따른 상세한 설명 및 첨부된 도면을 숙지하면 명백하게 드러날 것이다.
제 1a 도, 제 1b 도, 제 1c 도는 서술한 종래기술에서 설명하였다. 제 2 도는 전력 관리를 위한 컴퓨터 시스템(44)을 도시한 것으로, 이 시스템에는 중앙처리장치(이하 "CPU"라고 함 ; 46)와, 래덤 액세스 메모리(이하 "RAM"라고 함 ;48)와, 직접 메모리 액세스(이하 "DAM"라고 함 ; 50)와, 전력관리회로(이하 "PMC"라고 함 ; 52) 및 슬라이즈 입출력회로(slave input/output ; 54)를 구비한다. 상기 컴퓨터 시스템(44)의 여러 구성 요소들은 SBUS(56), EBUS(58), 메모리 버스(60), 인터럽트 버스(62), 레일 2 인터럽트 선로(64), 대기선로(66)와 같은 다수의 버스(bus)와 선로(line)를 통해서 결합된다.
상기 CPU(46)는 되도록이면 캘리포니아, 마을된 뷰의 선 마이크로시스템사(Sun Microsystems, Inc. of Mountain View, California)에 의해 디지인된 SPARC 마이크로프로세서와 같거나 동일한 단일 칩 마이크로프로세서가 바람직하다. 상기 CPU(46)은 SBUS(56), 메모리버스(60), 인터럽트 버스(62), 대기 선로(66)에 결합된다. 상기 SBUS(56)는 데이타(D) 버스(68), 어드레스(A) 버스(70), 및 제어(C) 버스(72)를 포함한다.
상기 CPU(46)가 능동 모드(active mode)에 있을 때, 여러 입력단으로 입력되는 신호에 응답한다. 더욱이, 상기 CPU(46)가 능동 모드에 있을 때, 상기 인터럽트 버스(62) 상에 검출된 인터럽트에 대해서도 응답한다. 상기 인터럽트 버스(62)는 15 레벨의 인터럽트를 표시하는 것이 허용되는 4 비트 버스이다. 상기 인터럽트 버스 상의 값이 제로(0)가 아닌 값일 때, 즉 상기 인터럽트 버스상의 간이 $1-$F 일때, 상기 인터럽트가 검출된다. 대기서 $는 16진수 시스템을 나타낸다. 그리고 인터럽트 버스(62) 상의 $0 값은 현재 상기 버스(62) 상에 인터럽트가 검출되지 않음을 나타낸다.
또한, 상기 CPU(46)가 능동 모드에 있을때, 제어버스(72)를 통해 인가되는 DMA 요구에 대해서도 응답한다. 상기 제어버스(72)는 26 비트버스이고, 제어버스(72)의 OMA선로로 지정된 다섯 선로 중의 임의의 한 선로가 직접 메모리 액세스가 원하는 것을 상기 CPU에 지시하기 위하여 사용된다.
지금까지 상술한 인터럽트 및 DMA 요구는 상기 CPU가 응답해야만 하는 외부작업(external events)으로 간주된다. 상기 인터럽트 및 DMA요구는 상기 CPU 의 외부에 부속되고(비록 상기 인터럽트 및 DMA요구가 상기 컴퓨터 시스템 내부에 포함될 지라도), 상기 CPU에 이르는 시간을 예측할 수가 없기 때문에, 외부 작업으로 간주한다. 그러나 상기 인터럽트 및 DMA 요구가 발생하면, 상기 외부작업은 상기 CPU에 의하여 신속하게 처리되므로서 UNIX kernel 의 데이타 손실 및/또는 전위 실패를 방지할 것이다.
상기 CPU(46)는 능동모드에 있을때, 인터럽트 및 DMA 요구와 같은 외부 작업에 응답한다. 그러나 본 발명에서 상기 CPU(46)는 외부 작업에 응답하지 않는 동안에는, 매우 작은 전력을 소모하는 대기 모드(standby mode) 또는 정지 모드(sleep mode)에 있게 된다. 상기 대기 모드는 대기 선로(66)이 PMC(52)에 의해 인에이블 됐을 때 시작된다. 상술한 인에이블이 됐다(enabled)고 함은, 시스템에서 설정된 규정에 의존하여 선로 상에 하이로직이나 로우로직에 의하여 지시된 특별 작업이인에이블 되는 것을 의미한다. 그리고 디스에이블 됐다(aisabled)는 것은 인에이블 된 상태와 반대 로직 상태를 의미한다. 상기 대기 선로(66)이 인에이블 되면, 상기 CPU는 현재 처리 중인 어떠한 명령이든지 끝내고, CPU 안에서의 내적 상태 변화를 억제시켜서, 전력 소모를 크게 감소시킨다. 이때에도 상기 CPU 내부 클릭은 계속해서 동작하는데, 이는 SPARC CPU와 같은 시스템에서 상기 클럭의 정지는 재가동시켜야 하는 문제를 야기하기 때문이다. 상기와 다른 CPU 형태에서는 상기 CPU의 내부 클럭을 정지시키거나 더디게 함으로서 전력소모를 감소시킬 수가 있다. 상기 CPU의 대기모드 및 정지모드의 수행과정은 이 분야에 능숙한 이라면 잘 알고 있는 기술이다.
상기 대기선로(66)이 PMC(52)에 의하여 디스에이블 되면, 상기 클럭은 재가동되고 상기 CPU(46)는 다음 동작을 수행하기 위하여 준비한다. 상기 상술한 바와 같이, 전형적으로 상기 다음 동작은 "NOP" 과정으로, 상기 CPU(46)은 아이돌 루프(idle loop; 이하 '루프"라고 함)의 대기 모드에 들어간다. 그러나, 계속하여 좀 더 상세히 설명을 하겠지만, 상기 시스템(44)에서 인터럽트 또는 DMA 요구가 검출되었을때, 상기 대기 선로(66)은 PMC에 의하여 디스에이블 된다. [따라서 상기 CPU(46)은 능동 모드에 들어간다] 따라서, 재가동상태에서, 상기 CPU(46)은 인터럽트 또는 DMA 요구를 처리하기 위하여 호출된다.
RAM(48)은 메모리버스(60)에 의하여 CPU(46)에 결함된다. 이 기술 분야에 종사하는 사람이면 잘 알고 있는 바와 같이, 상기 메모리 버스(60)는 데이타, 어드레스, 제어선로를 포함한다. 상기 RAM(48)를 시스템(44)에서 휘발성(seratchpad) 메모리로 사용되고, 상기 RAM(48)를 상기 CPU(46)가 상기 DMA(50)에 의해 발생된 DMA 요구를 처리하는 것처럼 상기 CPU(46)을 통하여 상기 DMA(50)에 의해 엑세스될 수 있다.
DMA(50)는 SCSI 입력단, 오디오 입력단, 인터네트(Ethernet) 입력단에 입력단를 접속하고 있다. 상기 입력단들의 통일된 특징은 매우 고속디바이스에 접14
속되어 있어서 시스템 내부 장치로 빠른 엑세스를 요구한다는 것이다. 따라서, DMA(50)는 상기 시스템(44) 내부로 데이타 전송 요구 또는 상기 입력단에 접속된 고속디바이스 중의 하나로 상기 시스템 외부로 데이타 전송 요구가 검출될 때에, DMA 요구는 제어버스(72)의 상기 제어 선로의 한 선로 상에 제시되고, 상기 CPU(46)는 DMA 처리 모드로 들어간다. 상기 DMA 처리 모드에서, 상기 CPU(46)은 일반적인 처리과정을 보류하고, 상기 DMA(50)에서 RAM(48)과 같은 시스템 내부 장치로 직접 엑세즈를 허용한다. 바꾸어 말하면, 직접 메모리 액세스를 하는 동안, 상기 DMA(50)는 상기 CPU(46) 보다는 RAN(48)에 의하여 제어된다 반대로, 데이타가 RAM(48)으로 부터 전송되는 중에는, 예로서 인터네트(Ethernet), 상기 인터네트(Ethernet)는 CPU(46)의 제어를 받지 않고, DMA(50)의 제어를 받는다.
상기 PMC(52)는 EBUS(58), 인터럽트 버스(62), 레벨 2 인터럽트 선로(64), 대기 선로(66) 및 SBUS(56)의 제어버스(72)의 5 개 선로에 결합된다. 상기 PMC(52)의 주요한 기능은, 인터럽트를 위한 인터럽트 버스(62) 및 DMA요구를 위한 제어버스(72)를 감시하기 위한 것이다. 상기 인터럽트 또는 DNA 요구 검출 하에, 상기 대기 선로(66)은 상기 CPU(46)가 능동 모드에서 동작이 이루어지도록 디스에이블 되어서, CPU(46)가 인터럽트 및 DMA요구를(측, 외부 작업) 처리할 수 있도록 한다.
상기 PMC(52)의 다른 기능은, 계속하여 좀 더 상세히 설명하겠지만, 특정 주변디바이스를 파워 오프 시키는 것이다. 상기 작업을 수행하기 위하여, 상기 PMC(52) 내부의 가변 디바이스 레지스터는 그에 해당하는 디바이스를 파위 온 또는 파워 오프 시키기 위하여 CPU(46)에 의하여 기록된다. 여기서 설명하는, 레지스터는 하나 또는 더 많은 비트의 정보를 저장할 수 있는 저장장치이다. 즉, 레지스터는 단일저장소자(플립플릅과 같은)이거나 일련의 저장소자를 조립한 논리장치가 될 수 있다. 본 발명의 실시예에서는 8 비트의 쪽을 갖는 레지스터가 바람직하고, 각 레지스터의 모든 비트가 반드시 하나의 기능을 가지고 있지 않아도 된다. 상기 PMC(52)는 파워 버스(59)를 경유하여 플로피 드라이브와 같은 주변 디바이스를 턴 온 또는 탄 오프 시키도록 동작한다. 일예로, 상기 PMC(52)는 하위버스(59)를 통하여 EPROM, 플로피 드라이브 포트(floppy arive Port), 직렬 포트(serial port) 또는 밧데리를 스위치 오프되도록 지시할 수 있으므로서, 이에 의해서 에너지를 보존시키는 것이다.
상기 슬라이브 입출력회로(54)는 EPROM, 플로피 디스크 드라이브, 직렬 포트, 및 밧데리 모니터와 같은 다수의 주변 디바이스에 결합된다. 상기 주변 디바이스의 한 디바이스로부터 데이타가 인가될 때, 인터럽트 레벨(1-15)는 상기 CPU(능동모드 일 때) 또는 상기 PMC(상기 CPU가 능동모드가 아닐 때)에 정보를 발하기 위하여 인터럽트 버스(62) 상에 발행된다. 이때, 상기 CPU(46)는 상기 SBUS(56)을 경유하여 상기 술라이브 입출력회로(54)로 부터 데이타를 읽는다.
제 3 도는 주변 디바이스를 파워 온 및 파워 오프 시키기 위한 공정도(74)이다. 상기 공정도(74)를 CPU(46)에서 수행되고, 제 1c 도에 도시된 공정도(35)을 보정한 것이다. 상기 공정도(74)은 제 1c 도 공정도(35)의 기능을 향상시키고 보정하는 패치(pateh)이다. 따라서, 상기 패치 공정도(74)은 상기 CPU(46)와 주변 디바이스 사이에서 데이타의 전송이 필요할 때 호출된다. 상기 공정도(74)은 76단계에서 시작하고, 78 단계에서 상기 CPU(46)는 파워 버스(59)를 통하여 전송되는 명령에 의해 상기 주변 디바이스가 파워 온(power on) 되도록 상기 PMC(52)의 적당한 레지스터에 기록한다. 다음에, 상기 주변 디바이스는 80 단계에서 셋 업(set up)된다. 상기 80 단계는 공정도(35)의 38 단계에서의 과정과 동일하다. 다음 82 단계에서, 상기 데이타는 전송된다. 상기 82 단계는 공정도(35)의 40 단계의 과정과 동일하다. 마지막으로, 84 단계에서, 상기 CPU(46)는 상기 주변 디바이스를 파워 다운(power down) 시키기 위하여 상기 PMC의 적당한 레지스터에 기록한다. 상기 공정도(74)은 이와 같은 과정을 통해서 86 단계에서 완료된다.
따라서, 제 1c 도의 공정도(35)을 패치한 제 3 도의 공정도(74)은, 자신의 디바이스 드라이버가 호출되는 매 시간 마다 주변 디바이스를 피워 업 시키도록 야기하고, 데이타 전송이 완료된 매 시간 마다 상기 주변 디바이스를 파워 다운시키도록 야기한다. 이러한 방법으로, 주변장치에 필요할 때만 전력이 공급되고, 따라서 상당한 양의 에너지를 보존시킬 수 있으며 또한 시스템에 의해 발생되는 열을 감소시킨다.
제 4 도는 대기 상태에서 들어 있는 상기 CPU(46)에서 운행되는 공정도(88)이다. 상기 공정도(88)은 제 1b 도 공정(30)의 패치로써, 공정(30)에 의하여 보정된다. 상기 제 1b 도의 공정(30)을 상기하여 보면, 매 10 ms 마다 규칙적으로 레벨 10 인터럽트에 의하여 야기되는 하우스키핑(housekeeping) 공정이다 상기 제 4 도의 공정도(88)은 90 단계에서 시작하고, 93 단계에서 상기 레벨 10 하우스키핑 작업이 수행된다. 상기 92 단계의 작업은 제 1b 도의 레벨 10 핸들러(handler ; 30)에서 수행되는 작업을 보정한 것이다. 그리고 패치된 공정(30') 내의 최종 단계인 94 단계에서와 같이, 상기 CPU(46)를 대기 모드를 표시하기 위하여 상기 PMC(52)의 대기 비트에 기록한다. 계속하여 더 상세히 설명 할것이지만, 상기 PMC(52)는 점선 화살표(96)로 가리키는 바와 같이 상기 대기 선로(66)를 인에이블 시킴에 의해서 상기 대기 비트의 기록에 응답한다. 이때, 상기 CPU(46)는 98 단계에서 가리키는 바와 같이 임의의 현재 작업을 끝내고 대기 모드로 들어간다.
상기 CPU(46)은 상기 대기 선로(66)가 더 이상 인에이블 되지 않을 때까지 상기 대기 상태로 존재할 것이다. 상기 PMC(52)가 제 4 도의 점선 화살표(100)로 가리키는 바와 같이 상기 대기 선로(66)를 디스에이블 시키면, 상기 CPU(46)은 대기 모드를 빠져나오고 동작을 재개한다. 상기 공정도(88)은 104 단계에서 완료된다.
따라서, 제 4 도의 패치된 공정(30')은 인터럽트 또는 DMA 요구가 처리되기 시작하는 등의 어떤 다른 처리를 하지 않는 한, 매 하우스키핑 사이클이 완료에서 상기 CPU(46)을 대기 모드로 들어가도록 야기할 것이다. 이와 같은 과정은 CPU(46)에서 전력이 필요할 때에만 소모되는 것을 보장한다. 상기 대기 모드에서, 상기 내부 클럭은 턴 오프 되고, 상기 CPU는 정상 상태의 에너지 소모량보다 극히 소량[ 정상 상태의 에너지 소모량의 1% 미안(〈1%) ]을 소모한다 상기 CPU 는 102 단계에서 지시하는 바와 같이 능동 모드에서 재시작되고, 내부의 프로그램 카운터가 지시하는 다음 단계를 정상적으로 수행할 것이다. 제 4 도의 94 단계에서 상기 대기모드에 틀어간 이래, 정상적인 92 단계의 레벨 10 하우스키핑작업을 완료한 루, 상기 다음 단계는 제 1b 도에 도시된 아이들 루프의 22 단계 NOP 가 될 것이다. 그러나, 상기 대기 선로는 인터럽트, OMA 요구 또는 다른 외부 작업이 검출된 때 디스에이블 되며, 상기 다음 단계는 외부 작업을 처리하기 위해서 수행된다. 일 예로, 만약 인터럽트가 상기 CPU(46)의 재가동을 야기하면, 상기 다음 단계는 제 1b 도의 24 단계인 마스터 인터럽트 핸들러가 되도록 수행될 것이다.
제 5 도에서는 PMC(52)에 의해 수행되는 공정도(106)을 도시한다. 상기 공정도(106)은 108 단계에서 시작하고, 110 단계에서 상기 PMC(52)의 대기 비트가 기록되었는지 안되었는지를 판단한다. 만약 기록되지 않았다면, 상기 공정도(106)은 상기 대기 비트에 기록이 될 때까지 상기 110 단계를 반복 수행한다 그리고 111 단계에서, 상기 대기 선로(66)은 인에이블 된다. 상기 대기 선로가 인에이블 되면, 112 단계에서 시스템(44) 내부에서 외부작업이 검출되었는지 안되었는지를 판단한다. 만약 검출되지 않았다면, 상기 공정도(106)은 인터럽트 또는 DMA 요구가 검출될 때까지 상기 112 단계를 반복 수행한다. 이와 같은 과정에 의해서 상기 외부 작업이 감출되면, 상기 대기 비트는 114 단계에서 해제되고 상기 대기선로(66) 상의 신호는 116 단계에서 디스에이블 된다 상기 공정도 (106)은 118 단계로 완료된다.
따라서 상기 PHC 는 단지 상기 CPU가 상기 대기 모드에 있을 때 외부 작업을 검출하기 위한 것임을 상기 공정도(106)로 부터 확인된다. 인터럽트 또는 DMA 요구가 검출되면, 상기 CPU(46)은 인터럽트 또는 DMA 요구를 처리하기 위하여 능동 모드로 들어간다. 상기 CPU(46)는 110 단계에서 상기 대기 비트가 기록됨에 의해서 상기 공정도(106)을 개시한 이후, 상기 CPU(46)는 실질적으로 상기 대기 모드에 존재하게 된다. 상기 대기 모드에서, 상기 CPU는 자체적으로 동작을 할 수 없고, 상기 CPU(46)가 재동작하기 위한 적당한 시간에 상기 PMC(52)가 상기 대기 선로(66)를 디스에이블 시키게 된다.
제 6 도는 상기 PMC(52)의 상세 회로도이다. 상기 PMC(52)는 디코다(120), 레지스터 어래이(122) 밀 출력 멀티플렉서(MUX ; 124)를 포함한다. 또한 상기 PMC(52)는 다이나믹 시스템 체인지 로직(dynamic system change logic ,126) 및 레벨 2 인터럽트 로직(l28)을 포함한다.
상기 EBUS의 어드레스 버스의 4 선로는 상기 디코더(120)로 입력되어 디코 더 출력 선로(130)의 11 선로(본 실시예에서) 중의 한 선로로 출력된다. 상기 출력 선로는, 상기 레지스터 어래이(122)의 선택된 레지스터에 데이타의 기록을 허용하기 위한, 라이트 인에이블(write enable) 선로(WE)와 함에 사용된다. 물론, 4 선로 어드레스 버스는 16 레지스터로 어드레스 업 될 수 있으며, 제 6 도에 도시된 실시예에서는 추가로 구비되는 주변장치에서 사용될 수 있는 5 개의 레지스터를 추가로 구비한다.
상기 레지스터 어래이(122)는 아이들 레지스터(idle register) 및 다수의 주변 장치 레지스터 또는 입출력 레지스터를 포함한다. 상기 아이들 레지스터는 상기 CPU(46)가 대기 모드에 들어가기 위해 사용되는 하나의 비트를 포함한다. 현재 사용되는 주변장치 레지스터는 키보드(keyboard) 레지스터, 아우스(mouse) 레지스터, 파워 래치(power latch) 레지스터, 얼터내트(ethernet) 레지스터, SCSI 레지스데, 직렬 포트(serial port) 레지스터, 오디오 포트(audio port) 레지스터, ISDN 레지스터, 아날로그/디지탈 제어(analog-to-aigital control) 레지스터, 데스트(test) 레지스터를 포함한다. 물론, 추가되는 레지스터 또는 다른 레지스터도 또한 제공될 수 있다.
멀티플렉서(MUX ;124)는 상기 레지스터 어래이(122)의 다수의 레지스터에 결합된 다수의 버스(132)로 부터 신호를 입력한다. 상기 버스들은 전형적으로 레지스터와 동일한 폭을 구비하지만, 본 실시예에서는 8 비트 폭을 구비한다. 상기 EBUS 어드레스 선로는 상기 레지스터 어래이(122)의 레지스터에 각각 접속한 버스(132) 중의 한 버스를 선택하기 위하여 MUX(124)로 입력되고, 상기 MUX(124)의 출력은 출력버스(134)를 통해서 출력된다. 상기 출력버스(134)는 8 비트 3 상태 버퍼(136)를 통해서 상기 EBUS 데이타 선로에 결합되고, 상기 버퍼(136)은 상기 레지스터 어래이(122)가 기록 상태가 아닐때 동작한다. 또한, 상기 EBUS 데이타 선로들은 8 비트 3 상태 버퍼(138)를 통해서 상기 레지스터 어래이(122)에 결합되고, 상기 버퍼(138)은 me(write enable) 신호에 의해서 인에이블 된다
.상기 DSC 로직(126)은 상기 시스템이 동작하는 동안 상기 시스템 내부의 변화를 검출하게 위하여 사용된다. 예로서, 상기 전력 스위치(PWR-SW)는, 만약 터치되면 신호를 발생시켜서 상기 DSC 로직(126)으로 전송한다. 마찬가지로, ethernet 케이블을 코드에 끼우거나 제거시키면, TPEIN 입력 선로 상에 인가된 입력신호는 상기 DSC 로직(126)으로 인가된다. 또한, 다른 직접적인 시스템 변화는 또 다른(OTHER) 입력에 의해서 상기 DSC(126)에 의해서 전출될 것이다. 상기 설명한 세가지 입력신호는 시스템 전력 소모에 영향을 줄 수 있기 때문에, 전력관리의 관점에서 상기 직접적인 시스템의 변화를 검출하기 위하여 유용하다. 일예로, 만약 인터네트(Ethernet) 케이블이 제거되면, 상기 인터네트(Ethernet) 레지스터 내의 비트는 세트(set) 된다. 상기 비트는 상기 시스템에 의해서 읽혀지기 때문에, 그때 상기 시스템은 그 인터네트(Ethernet) 케이블의 드라이버를 제거하므로서 전력을 절약한다.
상기 인터럽트 로직(128)를 레일 2 인터럽트에 부합하는 레지스터 어래이(122)의 레지스터를 감시한다. 만약, 레일 2 인터럽트를 지시하기 위한 상기 레지스터내의 비트가 세트 되면, 상기 로직(128)은 상기 레일 2 인터럽트 선로(64)를 인에이블 한다.
상기 형태로부터 명백한 바와 같이, 레지스터 어래이(122)의 레지스터는 EBUS 어드레스 버스를 통하여 적정한 레지스터에 어드레싱이 되고, WE 가 인에이블링 됨에 의해서 EBUS 데이타 선로를 통하여 상기 어드레싱이 이루어진 레지스터에 기록이 이루어진다. 그리고 상기 레지스터 어래이(122)의 레지스터는 WE 가 디스에이블링 될 때 EBUS데이타 버스 상에 데이타를 인가하고, 희망하는 레지스터 어드레스를 상기 EBUS 버스 상에 배치한다.
상기 아이들 레지스터의 8 출력 선로 중 하나의 선로는 대기 선로(66)이다. 따라서 상기 대기 선로(66)은 상기 아이들 레지스터의 하나의 비트(상기 대기 비트)와 연결된다. 상기 대기 비트는 상기 CPU가 대기 모드에 들어가기 원할 때 상기 CPU(46)에 의하여 세트된다. 상기 대기 비트는 구비된 OK 게이트의 출력에 의해서 리세트(RESET) 되고, 상기 OR 게이트는 5개의 DMA 요구 선로 및 4개의 인터럽트 버스 선로로 인가되는 신호를 입력한다. 만약 상기 선로 중의 임의의 한 선로가 인에이블 되면, 외부 작업이 발생하고, 상기 대기 비트는 리세트된다. 이 경우 상기 대기 선로는 디스에이불 되고, 상기 CPU는 능동 모드로 들어간다.
파워 버스는 상기 디바이스 레지스터의 각 출력 선로의 단일 하위 비트에 결합된 다수의 선로로 구성된다. 상기 디바이스 레지스터의 하위 비트는 상기 선로가 세트(CPU에 의해서) 될 때 인에이블 되고, 연결된 주변 디바이스는 하위오프 된다. 상기 하위 비트가 리세트 될 때, 상기 하위 버스(59)에 연결된 선로는 디스에이블 되고, 상기 연결된 주변 디바이스는 인에이블 된다.
이상에서 본 발명은 여러 바람직한 실시예의 형태로 설명하였으며, 또한 본 발명의 영역 내에서 개조, 변형 및 고체된 형태로 본 발명은 구현된다. 또한, 본 발명의 공정 및 장치 양자 중에서 공정(또는 장치)만을 선택적으로 수행하는 많은 방법(장치)에 주목해야 할 것이다. 그러므로 본 발명의 참정신 및 범위에 속하는 본 발명의 개조, 변형 및 고체된 모든 형태는 다음 첨부된 청구범위에 포함될 것이다.
제 la 도는 종래 기술에 의한 유닉스(UNIX) kernel 의 수행 공정도.
제 1b 도는 제 la 도에 도시된 18 단계인 "CPU 임무 수행" 과정의 상세 공정도.
제 1c 도는 종래의 방법에 따라 주변 디바이스로 부터 발생된 인터럽트처리 공정도.
제 2 도는 본 발명에 따른 전력관리를 구비한 컴퓨터 시스템의 블럭도.
제 3 도는 본 발명에 의한 주변 장치에 공급되는 전력을 관리하기 위한 처리 공정도.
제 4 도는 본 발명에 의한 제 2 도에 도시된 상기 컴퓨터 시스템의 상기 CPU를 대기 모드로 들어가도록 하고, 외부 작업의 검출하에 상기 CPU를 능동 모드로 들어가도록 하는 처리 공정도.
제 5 도는 제 2 도에 도시된 상기 전력관리회로에 의해 수행되는 공정도.
제 6 도는 제 2 도의 상기 전력관리회로의 상세 블럭도.

Claims (23)

  1. 외부작업에 응답하기 위한 능동 모드와, 저전력상태이고 상기 외부 작업에 응답하지 않는 대기 모드를 포함한 중앙처리장치와;
    상기 중앙처리장지가 상기 대기 모드에 있을때 상기 외부 작업을 감시하기 위하여 동작 시작하고, 외부 작업의 검출 하에 상기 중앙처리장치를 상기 능동 모드로 들어가도록 야기하기 위하여 상기 중앙처리창지에 결합된 전력관리회로를 포함한 전력관리를 의한 컴퓨터 시스템.
  2. 제 1 항에 있어서;
    상기 중앙처리장치는 대기 입력을 구비하고, 상기 전력관리회로는 상기 대기 입력에 결합된 대기 출력을 구비하며, 상기 전력관리회로는 상기 대기 입력을 인에이블 시켜서 상기 중앙처리장치를 상기 대기 모드로 들어가도록 동작 되고, 상기 대기 입력을 디스에이블 시켜서 상기 중앙처리장치를 상기 능동 모드로 들어가도록 동작 되는 것을 특징으로 하는 전력관리를 위한 컴퓨터 시스템.
  3. 제 2 항에 있어서;
    상기 전력관리회로는, 상기 대기출력을 제어하고 버스에 의하여 상기 중앙처리장치에 결합되는 대기 레지스터를 포함하며, 상기 중앙처리장치는 그 자신을 상기 대기 모드로 들어가도록 하기 위하여 상기 버스를 통해서 상기 대기 레지스터에기록함을 특징으로 하는 전력관리를 위한 컴퓨터 시스템.
  4. 제 1 항에 있어서;
    상기 외부 작업은 인터럽트를 포함한 것을 특정으로 하는 전력관리를 위한 컴퓨터 시스템.
  5. 제 1 항에 있어서;
    상기 외부 작업은, 직접 메모리 엑세스의 요구를 포함한 것을 특징으로 하는 전력관리를 위한 컴퓨터 시스템.
  6. 제 1 항에 있어서;
    상기 외부 작업은, 인터럽트 및 직접 메모리 엑세스의 요구 중에서 적어도 하나로 구성함을 특징으로 하는 전력관리를 위한 컴퓨터 시스템.
  7. 대기 모드 및 능동 모드 중의 하나를 표시하는 내용를 갖는 대기 레지스터와;
    상기 대기 레지스터의 내용이 대기 모드를 표시할 때 대기 인에이블링 출력신호를 발생하고, 상기 대기 레지스터의 내용이 능동 모드를 표시할 때 대기 디스에이볼링 출력신호를 발생하기 위하여 상기 대기 레지스터에 결합된 로직과;
    외부 작업 입력과;
    상기 외부 작업 입력 및 상기 대기 레지스터에 결합되고, 상기 외부 작업의 입력하에 상기 대기 레지스터의 내용이 능동 모드로 되도록 등작 하는 로직으로 구성한 전력관리회로.
  8. 제 7 항에 있어서;
    상기 대기 레지스터에 결합되고, 상기 대기 모드를 표시하는 상기 대기 레지스터의 내용을 기록하기 위하여 동작하는 레지스터 입력을 더 포함한 것을 특징으로 하는 전력관리회로.
  9. 제 8 항에 있어서;
    주변 디바이스와 연결된 적어도 하나의 디바이스 레지스터를 더 포함하고, 상기 디바이스 레지즈터의 내용은 상기 주변 디바이스로 공급되는 전력을 제어함을 특징으로 하는 전력관리회로.
  10. 제 9 항에 있어서;
    상기 디바이스 레지스터는 다수의 주변 다바이스에 연결된 다수의 디바이스 레지스터 중의 하나이고, 상기 디바이스 레지스터의 내용은 연결된 상기 다수의 주변 디바이스로 공급되는 전력을 제어하는 것을 특징으로 하는 전력관리회로.
  11. 제 10 항에 있어서;
    어드레스 버스 입력과 , 상기 어드레스 버스의 입력을 디코딩 하고 상기 대기 레지스터 및 다수의 레지스터 중의 하나를 인에이블링 하기 위한 디코더를 더 포함하는 것을 특징으로 하는 전력관리회로.
  12. 제 11 항에 있어서;
    상기 다수의 디바이스 레지스터는 주변장치 부분 및 파워 부분을 각각 포함하고, 상기 디바이스 레지스터의 하위 부분을 상기 주변 디바이스를 위한 파워 스위치를 제어하기 위하여 동작함을 특징으로 하는 전력관리회로.
  13. 제 12 항에 있어서;
    상기 대기 레지스터 및 상기 다수의 주변 레지스터에 결합된 다수의 입력단과, 상기 데이타 버스에 결합된 출력단을 구비한 멀티플랙서를 다 포함함을 특징으로 하는 전력관리회로.
  14. 제 7 항에 있어서:
    상기 외부 작업은, 인터럽트 및 직접 메모리 엑세스의 요구로 이루어진 그룹에서 선택됨을 특징으로 하는 전력관리회로.
  15. 능동 모드에서 대기 신호에 응답하고, 상기 대기 신호에 응답하여 대기 모드에 들어가고, 외부 작업에 응답하는 중앙처리장치를 제공하는 단계와;
    상기 중앙처리장치가 상기 대기 모드에 있을 때 상기 외부 작업의 검출 하에 상기 능동 모드로 상기 중앙처리장지가 들어가도록 하고, 상기 외부 작업에 응답하는 전력관리회로를 제공하는 단계로 이루어진 것을 특정으로 하는 컴퓨터 시스템의 중앙처리장치에 의하여 소모되는 전력을 관리하기 위한 방법.
  16. 제 15 항에 있어서;
    상기 절력관리회로를 제공하는 단계는, 상기 전력관리회로에 결합된 적어도 하나의 디바이스 레지스터를 제공하는 단계를 더 포함하고, 상기 디바이스 레지스터의 내용은 연결된 주변 디바이스로 공급되는 전력을 제어함을 특징으로 하는 컴퓨터 시스템의 중앙처리장치에 의하여 소모되는 전력을 관리하기 위한 방법.
  17. 제 16 항에 있어서;
    상기 전력관리회로를 제공하는 단계는, 상기 전력관리회로에 결합되고 상기 적어도 하나의 디바이스 레지스터를 포함한 다수의 디바이스 레지스터를 제공하는 단계를 포함하며, 상기 디바이스 레지스터의 내용은 상기 연결된 주변 디바이스로 공급되는 전력을 제어함을 특징으로 하는 컴퓨터 시스템의 중앙처리장치에 의하여 소모되는 전력을 관리하기 위한 방법.
  18. 제 15 항에 있어서;
    상기 외부 작업은 인터럽트 및 직접 메모리 엑세스의 요구로 구성된 그룹으로 부터 선택됨을 특징으로 하는 컴퓨터 시스템의 중앙처리장제에 의하여 소모되는 전력을 관리하기 위한 방법.
  19. 컴퓨터 시스템의 중앙처리장치를 저전력 대기 모드로 들어가도록 하는 단계와,
    상기 중앙처리장치가 외부 작업에 응답할 수 있도록 상기 컴퓨터의 외부 작업을 감시하는 단계와;
    상기 중앙처리장지가 능동 모드에서 상기 외부 작업에 응답 가능하도록 상기 중앙처리장치를 재가동시키는 단계로 이루어진 것을 특징으로 하는 컴퓨터 시스템의 중앙처리장치에 의하여 소모되는 전력을 관리하기 위한 방법.
  20. 제 19 항에 있어서; 컴퓨터 시스템의 중앙처리장치를 저전력 대기 모드로 들어가도록 하는 단계는,
    상기 중앙처리장지가 전력관리회로의 대기 레지스터에 대기 명령을 기록하는 단계와;
    상기 전력관리회로가 상지 중앙처리장치의 대기 입력을 인에이블링 시키는 단계를 포함함을 특징으로 하는 컴퓨터 시스템의 중앙처리장치에 의하여 소모되는 전력을 관리하기 의한 방법.
  21. 제 20 항에 있어서; 상기 중앙처리장치가 외부 작업에 응답할 수 있도록 상기 컴퓨터의 외부 작업을 감시하는 단계는,
    상기 전력관리회로가 인터럽트 및 직접 메모리 엑세스 요구 중의 적어도 하나를 검출하는 단계와;
    상기 검출하에 상기 대기 레지스터에 능동 명령을 기록하는 단계를 포함함을 특징으로 하는 컴퓨터 시스템의 중앙처리장치에 의하여 소모되는 전력을 관리하기 위한 방법.
  22. 제 21 항에 있어서: 상기 중앙처리장치를 절-전압 모드로 대가등 시키는 단계가, 상기 전원관리회로로 하여금 상기 중앙처리장지의 대기 입력을 디스에이블 시키는 단계를 포함함을 특징으로 하는 컴퓨터 시스템의 중앙처리장치에 의하여 소모되는 전력을 관리하기 위한 방법.
  23. 제 19 항에 있어서;
    상기 중앙처리장치가 상기 능동 모드에 있고 상기 중앙처리장치에 의해 상기 주변 디바이스용 드라이버가 로드될 때 상기 주변 디바이스에 전력을 공급하는 단계와,
    상기 중앙처리장치가 능동 포트에 있고 상기 중앙처리장치에 의해 상기 주변 디바이스용 상기 드라이버가 로드되지 않았을 때 상기 주변 디바이스에 전력을 차단시키는 단계를 포함함을 특징으로 하는 컴퓨터 시스템의 중앙처리장치에 의하여 소모되는 전력을 관리하기 위한 방법.
KR1019950000311A 1994-01-10 1995-01-10 컴퓨터시스템에서전력소모를감소시키기위한방법및장치 KR100352045B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17943394A 1994-01-10 1994-01-10
US8/179,433 1994-01-10
US08/179,433 1994-01-10

Publications (2)

Publication Number Publication Date
KR950033777A KR950033777A (ko) 1995-12-26
KR100352045B1 true KR100352045B1 (ko) 2002-12-28

Family

ID=22656576

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950000311A KR100352045B1 (ko) 1994-01-10 1995-01-10 컴퓨터시스템에서전력소모를감소시키기위한방법및장치

Country Status (5)

Country Link
US (2) US5649213A (ko)
EP (1) EP0662652B1 (ko)
JP (1) JPH0850523A (ko)
KR (1) KR100352045B1 (ko)
DE (1) DE69517712T2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100763527B1 (ko) 2005-12-07 2007-10-04 한국전자통신연구원 임베디드 리눅스 시스템에서 전력 관리 방법 및 장치

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7167993B1 (en) * 1994-06-20 2007-01-23 Thomas C Douglass Thermal and power management for computer systems
US5752011A (en) * 1994-06-20 1998-05-12 Thomas; C. Douglas Method and system for controlling a processor's clock frequency in accordance with the processor's temperature
GB9603582D0 (en) 1996-02-20 1996-04-17 Hewlett Packard Co Method of accessing service resource items that are for use in a telecommunications system
US5887179A (en) * 1996-06-11 1999-03-23 Motorola, Inc. System power saving means and method
KR100378864B1 (ko) * 1996-07-15 2003-05-17 칼소닉 칸세이 가부시끼가이샤 마이크로컴퓨터장치
US5881276A (en) * 1996-07-30 1999-03-09 Intel Corporation Manipulation of protected pages to reduce conditional statements
JP3039395B2 (ja) * 1996-10-17 2000-05-08 日本電気株式会社 無線携帯端末における情報処理部の起動方式
US5931950A (en) 1997-06-17 1999-08-03 Pc-Tel, Inc. Wake-up-on-ring power conservation for host signal processing communication system
US5878264A (en) * 1997-07-17 1999-03-02 Sun Microsystems, Inc. Power sequence controller with wakeup logic for enabling a wakeup interrupt handler procedure
US6055643A (en) * 1997-09-25 2000-04-25 Compaq Computer Corp. System management method and apparatus for supporting non-dedicated event detection
US6216187B1 (en) 1997-12-01 2001-04-10 Toshiba America Information Systems, Inc. System for powering down a portable computer in a docking station
US6167330A (en) * 1998-05-08 2000-12-26 The United States Of America As Represented By The Secretary Of The Air Force Dynamic power management of systems
US6360328B1 (en) * 1998-07-02 2002-03-19 Yamaha Corporation Plural sampling frequency signal processing by performing designated routines during sub-multiple time slots of each period
US6493827B1 (en) * 1999-03-17 2002-12-10 International Business Machines Corporation Method and system for monitoring configuration changes in a data processing system
US7472215B1 (en) * 1999-03-31 2008-12-30 International Business Machines Corporation Portable computer system with thermal enhancements and multiple power modes of operation
JP2001027916A (ja) * 1999-05-12 2001-01-30 Fujitsu Ltd 電子機器及び電源制御装置並びに電源供給制御方法
JP2001125690A (ja) * 1999-10-26 2001-05-11 Mitsubishi Electric Corp マイクロコンピュータの誤動作防止装置及びマイクロコンピュータの誤動作防止方法
US6886105B2 (en) * 2000-02-14 2005-04-26 Intel Corporation Method and apparatus for resuming memory operations from a low latency wake-up low power state
TWI282918B (en) * 2000-11-13 2007-06-21 Intel Corp Method, device, and system for placing a processor in an idle state
US6694428B2 (en) * 2000-11-29 2004-02-17 Palm One, Inc. System for indentifying a peripheral device by sending an inquiry thereto after receiving an interrupt notification message if the interrupt and communication port meet predetermined conditions
KR100424484B1 (ko) * 2001-07-05 2004-03-24 엘지전자 주식회사 중앙 처리 장치용 전원 공급기
KR20030017858A (ko) * 2001-08-23 2003-03-04 엠텍비젼 주식회사 대기모드에서의 전력소모를 감소시키는 휴대용 전자장치
US20030212939A1 (en) * 2002-05-09 2003-11-13 Baker Ronald N. Method and apparatus for selecting the operational mode of an integrated circuit
JP3810361B2 (ja) 2002-11-01 2006-08-16 松下電器産業株式会社 半導体集積回路および半導体集積回路の割込み要求出力方法
DE10327285A1 (de) * 2003-06-17 2005-01-13 Infineon Technologies Ag Schaltungsanordnung
US8250406B2 (en) * 2003-08-19 2012-08-21 Intel Corporation Operational state preservation in the absence of AC power
CN1327344C (zh) * 2003-08-19 2007-07-18 英特尔公司 无交流电源时保存和恢复工作状态的基本输入/输出系统
US20060179172A1 (en) * 2005-01-28 2006-08-10 Texas Instruments Incorporated Method and system for reducing power consumption of a direct memory access controller
TWI266197B (en) * 2005-04-11 2006-11-11 Wistron Corp Method for enabling or disabling a peripheral maintaining electrically connected to a computer system
US7631199B2 (en) * 2005-06-30 2009-12-08 Intel Corporation Various methods and apparatuses for power states in a controller
US7574611B2 (en) * 2005-11-28 2009-08-11 Atmel Corporation Command decoder for microcontroller based flash memory digital controller system
KR101233168B1 (ko) * 2006-04-24 2013-02-15 엘지전자 주식회사 둘 이상의 서브시스템이 내장된 시스템에 있어서 전력 제어방법 및 장치
US7849334B2 (en) * 2006-09-29 2010-12-07 Intel Coporation Transitioning a computing platform to a low power system state
US8117475B2 (en) * 2006-12-15 2012-02-14 Microchip Technology Incorporated Direct memory access controller
US9141572B2 (en) * 2006-12-15 2015-09-22 Microchip Technology Incorporated Direct memory access controller
US8238538B2 (en) 2009-05-28 2012-08-07 Comcast Cable Communications, Llc Stateful home phone service
WO2011068504A1 (en) 2009-12-01 2011-06-09 Hewlett-Packard Development Company, L.P. Power-cap settings
US8327176B2 (en) 2010-03-31 2012-12-04 International Business Machines Corporation Optimizing power management in multicore virtual machine platforms by dynamically variable delay before switching processor cores into a low power state
US8468383B2 (en) 2010-12-08 2013-06-18 International Business Machines Corporation Reduced power failover system
CN103809730B (zh) * 2014-02-18 2016-08-17 上海新储集成电路有限公司 一种低功耗可穿戴设备系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04230508A (ja) * 1990-10-29 1992-08-19 Internatl Business Mach Corp <Ibm> 低電力消費メモリ装置
KR950003998A (ko) * 1993-07-26 1995-02-17 윌리암 티. 엘리스 컴퓨터 시스템과 그의 전력사용 관리방법, 인터럽트 제어기의 베이스 어드레스 상태 확인방법과 씨피유(cpu) 상태 보존 및 복원방법
KR950006567A (ko) * 1993-08-06 1995-03-21 김광호 컴퓨터 시스템에서 컴퓨터 주변장치의 전원관리신호 발생방법 및 제어장치
US5428790A (en) * 1989-06-30 1995-06-27 Fujitsu Personal Systems, Inc. Computer power management system
JPH07200092A (ja) * 1993-11-23 1995-08-04 Advanced Micro Devicds Inc コンピュータシステムおよびその電力管理装置
JPH07295695A (ja) * 1994-04-06 1995-11-10 Advanced Micro Devicds Inc コンピュータシステムおよびコンピュータシステム内の電力を管理するための方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6314231A (ja) * 1986-07-04 1988-01-21 Hitachi Ltd デ−タ転送装置
JPH0650457B2 (ja) * 1987-10-14 1994-06-29 シャープ株式会社 コンピュータシステムのデバイス電源制御装置
US4980836A (en) * 1988-10-14 1990-12-25 Compaq Computer Corporation Apparatus for reducing computer system power consumption
DE68925615T2 (de) * 1988-11-10 1996-09-12 Motorola Inc Digitalrechnersystem mit Niederstromverbrauchmodus
US5179710A (en) * 1988-11-30 1993-01-12 Laboratoire Europeen De Recherches Electroniques Avancees Interface for amplifying logic signal from a signal line having a predetermined logic state to supply power to peripheral device
AU629019B2 (en) * 1989-09-08 1992-09-24 Apple Computer, Inc. Power management for a laptop computer
US5247655A (en) * 1989-11-07 1993-09-21 Chips And Technologies, Inc. Sleep mode refresh apparatus
US5237692A (en) * 1990-11-09 1993-08-17 Ast Research Inc. Internal interrupt controller for a peripheral controller
JP3034362B2 (ja) * 1990-11-22 2000-04-17 株式会社日立製作所 周辺制御装置およびscsiバス制御装置
US5230074A (en) * 1991-01-25 1993-07-20 International Business Machines Corporation Battery operated computer power management system
JPH05108193A (ja) * 1991-10-15 1993-04-30 Nec Corp マイクロコンピユータ
JPH05189100A (ja) * 1992-01-08 1993-07-30 Nec Corp 情報処理装置
US5473767A (en) * 1992-11-03 1995-12-05 Intel Corporation Method and apparatus for asynchronously stopping the clock in a processor
US5339445A (en) * 1992-11-16 1994-08-16 Harris Corporation Method of autonomously reducing power consumption in a computer sytem by compiling a history of power consumption

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5428790A (en) * 1989-06-30 1995-06-27 Fujitsu Personal Systems, Inc. Computer power management system
JPH04230508A (ja) * 1990-10-29 1992-08-19 Internatl Business Mach Corp <Ibm> 低電力消費メモリ装置
KR950003998A (ko) * 1993-07-26 1995-02-17 윌리암 티. 엘리스 컴퓨터 시스템과 그의 전력사용 관리방법, 인터럽트 제어기의 베이스 어드레스 상태 확인방법과 씨피유(cpu) 상태 보존 및 복원방법
KR950006567A (ko) * 1993-08-06 1995-03-21 김광호 컴퓨터 시스템에서 컴퓨터 주변장치의 전원관리신호 발생방법 및 제어장치
JPH07200092A (ja) * 1993-11-23 1995-08-04 Advanced Micro Devicds Inc コンピュータシステムおよびその電力管理装置
JPH07295695A (ja) * 1994-04-06 1995-11-10 Advanced Micro Devicds Inc コンピュータシステムおよびコンピュータシステム内の電力を管理するための方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100763527B1 (ko) 2005-12-07 2007-10-04 한국전자통신연구원 임베디드 리눅스 시스템에서 전력 관리 방법 및 장치

Also Published As

Publication number Publication date
EP0662652A3 (en) 1995-09-20
EP0662652B1 (en) 2000-07-05
DE69517712T2 (de) 2001-03-08
DE69517712D1 (de) 2000-08-10
US5721937A (en) 1998-02-24
US5649213A (en) 1997-07-15
KR950033777A (ko) 1995-12-26
EP0662652A2 (en) 1995-07-12
JPH0850523A (ja) 1996-02-20

Similar Documents

Publication Publication Date Title
KR100352045B1 (ko) 컴퓨터시스템에서전력소모를감소시키기위한방법및장치
US6243831B1 (en) Computer system with power loss protection mechanism
US5931951A (en) Computer system for preventing cache malfunction by invalidating the cache during a period of switching to normal operation mode from power saving mode
US6088807A (en) Computer system with low power mode invoked by halt instruction
US6330639B1 (en) Method and apparatus for dynamically changing the sizes of pools that control the power consumption levels of memory devices
US6343363B1 (en) Method of invoking a low power mode in a computer system using a halt instruction
EP0973086B1 (en) Computer remote power on
US5632037A (en) Microprocessor having power management circuitry with coprocessor support
KR20010033687A (ko) 하이버네이션 기능 지원 정보 처리 시스템 및 그를제어하는 방법
KR100278355B1 (ko) 컴퓨터 시스템 및 이 컴퓨터 시스템의 제어 방법
JP4382108B2 (ja) ソフトウェア制御のパワー管理機能を備えたコンピュータ・システム
JPH09128107A (ja) 情報処理システム
US6112309A (en) Computer system, device and operation frequency control method
JPH0997128A (ja) 情報処理システム
JP3961669B2 (ja) コンピュータシステムおよびデータ転送制御方法
JP3047534B2 (ja) 電力低消費システム
JP3058070B2 (ja) 情報処理装置
JP2003345474A (ja) コンピュータシステムおよびデータ転送制御方法
JP3007866B2 (ja) コンピュータ・システム、デバイス及び動作周波数制御方法
JPH113152A (ja) ネットワーク介在型省電力機能付き電子計算機装置

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee