KR20020026814A - 컴퓨터 시스템의 중지 및 재개 동작을 위한 방법 및 장치 - Google Patents

컴퓨터 시스템의 중지 및 재개 동작을 위한 방법 및 장치 Download PDF

Info

Publication number
KR20020026814A
KR20020026814A KR1020010058930A KR20010058930A KR20020026814A KR 20020026814 A KR20020026814 A KR 20020026814A KR 1020010058930 A KR1020010058930 A KR 1020010058930A KR 20010058930 A KR20010058930 A KR 20010058930A KR 20020026814 A KR20020026814 A KR 20020026814A
Authority
KR
South Korea
Prior art keywords
integrated circuit
state
computer system
component integrated
power
Prior art date
Application number
KR1020010058930A
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 포만 제프리 엘
Publication of KR20020026814A publication Critical patent/KR20020026814A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4418Suspend and resume; Hibernate and awake
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Power Sources (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

컴퓨터 시스템 구성요소들의 상태를 저장하기 위한 방법 및 장치는 컴퓨터 시스템 내의 집적회로들의 전력이 완전히 떨어진 이후에 배터리로 작동하는 컴퓨터 시스템들의 재개 동작을 제공한다. 마이크로프로세서 및 다양한 주변 구성요소들로부터 상태가 판독되고 그 상태는 컴퓨터 시스템 동작이 재개될 때까지 비-휘발성 저장소에 저장된다.

Description

컴퓨터 시스템의 중지 및 재개 동작을 위한 방법 및 장치{Method and Apparatus for Suspending And Resuming Operation of A Computer System}
본원 발명은 일반적으로 컴퓨팅 시스템에 관한 것으로, 더욱 구체적으로는 컴퓨터의 마이크로프로세서 및 주변 장치들로부터 전력을 제거하기 이전에 컴퓨터시스템의 상태를 저장해둠으로써 컴퓨터 시스템의 중지 및 재개 동작을 수행하기 위한 방법 및 장치에 관한 것이다.
오늘날 컴퓨터 시스템은 에너지를 절약하고 컴퓨터 시스템 활동이 요구되지 않을 때 시스템에 의해 발생되는 열을 감소시키기 위한 전력 관리를 제공한다. 노트북 컴퓨터 시스템 및 개인 디지털 어시스턴트 (PDA:Personal Digital Assistants)들 또한 밧데리 전력 보존을 위한 전력 관리을 이용한다. 컴퓨터 시스템은 완전히 셧다운 상태로 설정되어 있거나, 또는 컴퓨터 시스템의 일부가 완전한 시스템 동작을 재개시키는 자극을 기다리며 액티브 상태로 있는 동작 모드를 설명하기 위해 사용되는 용어들 중에, "중지(suspend)" 또는 "재개(resume)"로 알려진 다양한 모드에 있을 수 있다. 재개 동작을 위해 감지될 수 있는 자극의 예로서는, 마우스 움직임, 모뎀-인(modem-in), 및 LAN 활동 등을 들 수 있다.
사용자가 컴퓨터 시스템을 작동시킬 때, "중지" 기능은 빠른 동작에 중요한 요소이다. 컴퓨터가 사용자 입력이 없는 짧은 기간동안 에너지를 절약하기 위해 완전히 셧 다운 상태에 있는 경우에 이 상태로부터 벗어나기 위해 컴퓨터 시스템을 부팅시키거나 재구성해야만 한다면 이는 바람직하지 않다. 그러나, 일반적으로 중지 기능은 컴퓨터 시스템을 제어하는 마이크로프로세서로부터 전력을 완전히 제거하지는 않는다. 오늘날 컴퓨터 시스템에서 이용되는 것과 같은 대형 마이크로프로세서 및 그밖의 집적 회로들은 수천만개의 트랜지스터를 포함한다. 마이크로프로세서 및 그밖의 집적 회로가 완전한 정적 사태에 있는 동안의 누설 전류가 너무 커서 장기간의 밧데리 생명을 유지하기 어렵거나 에너지 관리 전략을 만족시키지 못할 수도 있다.
시스템 설계자는 프로세서 및 그밖의 시스템 구성 요소들을 구현하기 위한 장치를 선택할 때 작동 전력과 누설 전력간의 절충점을 고려한다. 낮은 작동 전력의 경우에는, 로직을 위한 낮은 공급 전압과 이에 따른 낮은 임계 전압이 바람직하다. 그러나, 낮은 임계 로직은 디바이스가 정지 상태에 있는 동안 높은 누설 전류를 초래한다.
높은 누설 전류를 피하기 위해, 컴퓨터 시스템의 전자부품들로부터 전력을 제거할 수 있다. 그러나, 전력이 제거되면 마이크로프로세서 및 그밖의 집적 회로들의 상태를 잃게 될 것이다. 몇몇 경우에, 전력이 다운되기 전에 상태를 추출하거나 저장하기 위해 소프트웨어가 이용될 수 있다. 그러나, LAN 제어기 및 저장장치 제어기들과 같은 주변 제어기의 경우에는, 종종 운영 시스템 소프트웨어가 집적 회로들의 상태에 접근하는 것이 불가능 한 경우가 있다. 이로 인해, 하드웨어의 상태 또는 구성을 저장하는 것이 불가능해져서, 하드웨어의 전력을 정적인 상태에서도 유지하거나 운영 시스템이 시스템을 셧다운하고 이를 다시 재시작할 것을 요구한다.
따라서, 컴퓨터 시스템 구성요소들의 상태를 저장해둠으로써 컴퓨터 시스템으로부터 전력이 제거되어도 컴퓨터 시스템의 동작을 재개하기 위해 리부팅할 필요가 없도록 컴퓨터 시스템의 중지 및 재개 동작을 수행하기 위한 방법 및 장치를 제공하는 것이 바람직하다.
도 1a는 본원 발명의 바람직한 실시예가 실행될 수 있는 컴퓨터 시스템 구성요소의 블록도이다.
도 1b는 도 1a의 컴퓨터 시스템 구성요소 내의 스캔 레지스터들의 개략도이다.
도 2는 본 발명의 바람직한 실시예에 따른 컴퓨터 시스템의 블록도이다.
도 3은 본 발명의 바람직한 실시예에 따른 운영 시스템의 동작을 도시한 흐름도이다.
도 4는 본 발명의 바람직한 실시예에 따른 전력 제어 로직 동작을 동시한 흐름도이다.
도 5는 본 발명의 대안적인 실시예에 따른 컴퓨터 시스템의 블록도이다.
컴퓨터 시스템 구성요소들의 상태를 저장해둠으로써 컴퓨터 시스템으로부터 전력이 제거되어도 컴퓨터 시스템의 동작을 재개하기 위해 리부팅할 필요가 없도록 컴퓨터 시스템의 중지 및 재개 동작을 수행한다는 목적은 컴퓨터 시스템 내에 하나 이상의 내부 레지스터 상태를 보존하는 컴퓨터 시스템의 중지 및 재개 동작을 수행하는 방법 및 시스템에 의해 달성된다. 상태는 컴퓨터 시스템 구성요소 내의 스캐닝 래치를 이용하여 판독된다. 스캔 레지스터는 내부 스캔 체인을 통해 내적으로 액세스되거나 직렬 테스트 포트 인터페이스 또는 바운더리 스캔 인터페이스를 이용함으로써 외적으로 액세스될 수 있다. 상태가 비-휘발성 저장소에 저장된 후에, 컴퓨터 시스템 구성요소들로부터 전력이 제거된다. 재개 신호를 수신하면, 전력이 컴퓨터 시스템 구성요소에 복구되고, 보존된 상태는 비-휘발성 저장소로부터 판독되어 컴퓨터 시스템 구성요소들에 다시 기록된다. 상태는 스캔 체인을 이용하여 내적으로 또는 직렬 테스트 포트 또는 바운더리 스캔 인터페이스를 이용하여 외적으로 다시 기록되어진다. 그리고 나서, 컴퓨터 시스템은 이전에 저장되어 있던 상태의 컴퓨터 시스템 구성요소들로써 실행을 재개한다.
본원 발명의 전술한 목적 뿐만 아니라 부가적인 목적, 특징 및 장점들은 이하의 상세한 설명에 의해 명확해질 것이다.
본원 발명의 신규한 특징이라 여겨지는 특성들은 첨부된 청구항에 제시된다. 그러나, 발명 자체뿐만 아니라, 바람직한 실시 모드, 더 나아간 목적, 장점들은 첨부된 도면과 함께 예시적 실시예에 대한 다음의 상세한 설명을 참조하면서 가장 잘이해될 것이다. 도면에서 유사한 구성요소들은 유사한 도면부호들로 표시된다.
이제, 도면을 참조하면, 특히 도 1a를 참조하면, 본 발명의 바람직한 실시예에서 실행될 수 있는 컴퓨터 시스템 구성요소의 블록도가 도시되어 있다. 컴퓨터 시스템 구성요소(10)는 프로세서 코어(core), 컴퓨터 시스템 특정 용도 집적 회로(ASIC), 또는 주변 제어기에 해당할 수 있다. 시스템 구성요소(10)은 컴퓨터 시스템의 동작에 따른 기능을 수행하는 기능 로직 블록(11A, 11B, 및 11C)를 포함한다. 레벨-감응형 스캔 디자인(Level-sensitive scan design:LSSD) 스캔 체인(12)이 기능 로직 블록(11A, 11B 및 11C) 내의 내부 레지스터 상태를 판독하거나 기록하기 위해 제공된다. LSSD 스캔 체인(12)은 전형적으로 테스트 및 검증 목적으로 제공된다. 시스템 구성요소(10)내의 모든 상태 저장 구성 요소들에 액세스함으로써 컴퓨터 시스템에서 사용하기 이전의 생산 라인 테스팅 및 디자인 검증이 가능해진다. 본 발명의 기법들과 쓰일 수 있는 스캔 체인 구조물들은 본 명세서의 일부로써 참조되는 "VLS 테스트 회로 장치 및 방법"이라는 제목의 미국특허 제 5,920,575호에 설명되어 있다. 그러나, 이에 국한되지 않고, 그밖의 다른 바운더리 스캔 및 테스트 포트 회로 및 토폴로지 들이 본 발명의 범주를 벗어남없이 이용될 수 있다.
LSSD 스캔 체인(12)에 더불어서, 조인트 테스트 액션 그룹(Joint Test Action Group:JTAG) 인터페이스(13)가 시스템 구성요소(10) 내부에 통합된다. JTAG 인터페이스(13)는 외부 테스트기가 시스템 구성요소(10) 내의 내부 레지스터들에 액세스할 수 있는 접속부(15)를 제공하여, 일반적으로 시스템 구성요소(10)의테스팅 목적으로 거의 모든 내부 래치들의 상태가 판독되거나 기록되는 것을 가능하게 한다. JTAG 인터페이스(13)에 대한 상세한 내용은 IEEE 표준 1149.1 - IEEE 표준 테스트 액세스 포트 및 바운더리 스캔 구조물) 및 1149.1 사양에 대한 1996 보충자료-에 의해 정의된다. 사용되는 인터페이스가 JTAG에 한정되는 것은 아니지만, 현재 흔히 이용가능한 테스트 장치와의 호환성을 제공하기 위해서는 JTAG 표준 인터페이스와 실질적으로 호환가능한 JTAG 하드웨어층 및 프로토콜을 이용하는 것이 편리하다.
본 발명은 컴퓨터 시스템의 동작을 중지하기 이전에 시스템 구성요소(10)의 상태를 저장하고 동작 재개 이전에 그 상태를 복구하는 새로운 방식으로 기능 로직 블록(11A, 11B, 11C)으로부터 상태 정보를 이용한다. LSSD 스캔 체인들(12)로부터 판독되거나 이들에 기록되는 상태 정보들은 다수의 다양한 수단들에 의해 액세스될 수 있다. LSSD 스캔 체인(12)은, 시스테 구성요소(10) 내에서 직접 액세스되거나, JTAG 인터페이스(13)을 통한 특별 명령을 통해, 또는 시스템 구성요소(10)를 스캔 모드로 함으로써 바운더리 스캔 인터페이스(14)를 통해 액세스될 수 있다. 스캔 모드는 JTAG 인터페이스(13)를 통하거나 바운더리 스캔 인터페이스(14)의 일부를 형성하는 외부 핀 접속부들을 통해 제공되는 명령어들을 통해 개시되고 종료될 수 있다.
LSSD 구조물은 모든 내부 래치들의 상태에 대한 액세스를 제공해준다는 점에서 본 발명에 따른 기술을 구현하는데 바람직하다. 부연하면, LSSD 구조물들은 LSSD-테스트가능 디자인에 이미 존재하므로 본원 발명은 LSSD 스캔 체인들을 통합하도록 설계된 회로들에 대한 변경 및 새로운 회로 디자인 기술을 필요치 않다. "버블 스캔(bubble scan)"이라 불리우는 대안적 접근 방식은 각각의 LSSD 래치에 대한 또하나의 l-누설 상태-저장 디바이스(l-leakage state saving device)를 각각의 LSAD 래치에 추가하는 것이다. 이러한 상태-저장 디바이스는 (중지 모드와 같은) 저전력 기간동안 래치의 상태를 저장하는데 이용된다. 본원 발명에 대조적으로, 상태-저장 래치들을 포함하는 구성요소들에 대한 전력은 반드시 유지되어야 한다. 부연하면, "버블 스캔" 접근방식은 새로운 회로 설계 및 구현을 위한 보다 넓은 회로 영역을 필요로 한다. 반도체 제조업자들은 재사용가능한 회로 라이브러리들에 많은 투자를 하고 있어서 전체 시스템 디자인들은 현재 표준 LSSD 구조물을 포함한다. 본 발명은 기존 구조물에 간단한 제어 로직 및 제어 소프트웨어를 추가함으로써 이러한 투자에 지렛대 역할을 해줄 수 있다.
도 1B를 참조하면, 도 1A의 스캔 체인 내의 스캔 셀 구조가 도시되어 있다. 레지스터(16)는 기능 로직 블록(11A, 11B, 11C)로부터 논리값을 로딩하기 위한 시스템 데이터 입력부(18)와 기능 로직 블록(11A, 11B, 11C)내에 논리값을 셋팅하기 위한 시스템 데이터 출력부(17)를 갖는다. 레지스터들(16)들은 체인식으로 직렬 연결되어 있고, 각 체인의 상단에 논리값을 로딩하기 위한 스캔 데이터 입력부와 각 체인의 종부에 시스템 데이터 출력부가 연결되어 있다. 체인 입력부 및 출력부들은 내부적으로 액세스가능할 뿐만 아니라, 바운더리 스캔 인터페이스(14) 및 JTAG 인터페이스(15)를 통해서도 액세스가능하다. 스캔 클럭들은 LSSD 스캔 체인(12) 내부의 데이터 쉬프트 제어를 제공하고 시스템 클럭은 정상 시스템 동작을 위한 고주파수 클럭을 제공한다.
이제 도2를 참조하면, 본 발명의 바람직한 실시예에 따른 컴퓨터 시스템이 도시되어 있다. 컴퓨터 시스템 코어(20)는 컴퓨터 시스템용 대규모 구축 블록이다. 버스(43)를 통해 인터페이스되는 외부 디바이스(42)들은 컴퓨터 시스템의 기능 부분을 완성한다. 외부 디바이스들에는 메모리, 저장 장치, 그래픽 장치,입력 장치 등이 포함된다. 컴퓨터 시스템 코어(20)의 외부에 위치하는 비휘발성 저장장치(40)는 본 발명의 중지/재개 기능을 위해 상태 정보를 저장하는데 이용된다. NMOS 트랜지스터(41)를 포함하는 제어가능 전력 공급원이 또한 컴퓨터 시스템 내에 포함되어, 컴퓨터 시스템 코어(20) 내의 블록들에 대한 주전력을 제어한다. 저-전류 대기 전력 공급원 접속부(44)가 컴퓨터 시스템 코어(20)의 부분들에 상태 정보를 유지하기 위해 제공되며, 전력 제어 로직(24) 및 전력공급이 완전히 중단되면 안되는 그밖의 컴퓨터 시스템 부품들에 대기 전력이 제공된다.
컴퓨터 시스템 코어(20)내에, 프로세서 코어(21)는 프로그램 명령어들의 실행과 데이터 값들의 처리를 제공한다. 직렬 포트, 직접 메모리 액세스(DMA) 제어기 등의 집적 주변장치들(23)은 컴퓨터 시스템 기능들을 제공한다. 외부 버스 인터페이스(29)는 I/O 블록들(45)을 통해 외부 디바이스들(42)로의 버스(43) 접속을 제공한다. 프로세서 코어(21), I/O 블록들(45), 집적 주변장치들(23) 및 외부 버스 인터페이스(29) 모두 LSSD 스캔 체인 레지스터들을 포함한다. 스캔 데이터 출력부(32)는 각각의 체인으로부터 스캔 멀티플렉서(27)에 결합하여 전력 제어 프로세서(24)에 대한 개별 스캔 체인 출력부(34)의 선택을 가능하게 해준다. 전력제어 로직(24)은 멀티플렉서 제어 신호(33)를 통해 스캔 체인을 선택하고 제어 버스 인터페이스(38)를 통해 스캔 체인을 포함하는 블록들로부터 상태 정보를 획득하여 전달하는 것을 제어함으로써 스캔 체인 레지스터들을 판독할 수 있다. 일단 전력 제어 로직(24)이 스캔 체인을 판독함으로써 컴퓨터 시스템 코어(20)의 상태를 가져오면, 데이터는 비휘발성 저장소(26)에 저장되는데, 이는 대기 전력(44)을 통해 전력공급받거나, 전기적 소거가능한(electrically-erasable) ROM과 같이, 그 상태를 유지하기 위해 전력을 필요치 않는 기법으로 구현될 수 있다. 또한, 제어가능한 전력 공급원(24)이 컴퓨터 시스템 코어(20)에 전력을 중단시키기 이전에 상태 정보가 비휘발성 저장소(40)로 우선 전달된다면, 비-휘발성 내부 저장소(26)는 제어가능한 전력 공급원(41)을 통해 공급되는 주컴퓨터 시스템 코어 전력에 의해 전력공급받을 수 있다. I/O 블록들(45)은 제어가능한 전력 공급원(41)이 전력을 중단시키기 이전에 적당한 값들로 로딩될 수 있다. 이는 외부 디바이스들(42)중 몇몇이 전력중단될 수 없는 경우에 필요할 것이다. 컴퓨터 시스템 코어(20)에 대한 외부 접속부들의 상태는, 외부 디바이스들(42)이, 잘못된 버스 사이클을 발생시키거나 외부 디바이스들(42)에 잠재적으로 손상을 입힐수도 있는 고누설 상태가 되는 것을 방지하기 위해, 제어되어야 한다.
전력 제어 로직(24)은 프로세서 또는 하드와이어드 로직 블록일수 있으며, 제어 버스 인터페이스(38)를 통해 프로세서 코어(21)로부터 명령어를 수신함으로써 컴퓨터 시스템 코어용 중지 시퀀스를 시작한다. 대안적으로, 전력 제어 로직(24) 및 프로세서 코어(21) 사이에 연결된 단일 제어 라인과 같이 중지 요청을 생성하기위한 그밖의 방법들도 구현될 수 있다. 전력 제어 로직(24)은 클럭 제어부(22)를 제어함으로써 프로세서 코어(21) 및 집적 주변장치(23)에 대한 클럭을 중지시킨다. 이는 전력 제어 로직(24) 및 이에 연관된 구성요소를 제외한, 컴퓨터 시스템 코어의 동작을 동결시킨다. 스캔 체인 데이터는 다양한 블록들로부터 판독되어 비휘발성 내부 저장소(26)에 저장된다. 다음, 전력 제어 로직(24)은 제어가능 전력 공급원(41)을 통해 컴퓨터 시스템 코어(20)로부터 주전력을 제거한다.
중지 또는 셧다운 이벤트들의 시퀀싱 내에, 상이한 수준의 에너지 절약을 선택적으로 제공하기 위해 비휘발성 내부 저장소(26) 또는 비휘발성 외부 저장소(40)가 이용될 수 있다. 예를 들어, (매우 장기간, 가령 누설값에 따라서는 수개월이 될 수도 있는) 중지 동작의 개시 부분동안, 비휘발성 저장소(26) 내에 상태를 저장하고 컴퓨터 시스템 코어(20)에 의해 요구되는 전력공급원 전류의 어느 정도 레벨을 유지하는 것이 바람직할 수 있다. 전력 제어 로직(24) 내의 타이머(46)에 의해 결정된 시간이 경과한 후에, 컴퓨터 시스템 코어(20)의 상태를 비휘발성 외부 저장소(40)에 기록하고 컴퓨터 시스템 코어(40)로부터 전력을 완전히 제거함으로써 높은 수준의 에너지 절약이 개시된다. 타이머(46)는 전력 제어 로직이 마이크로프로세서를 포함하는 경우라면 프로그램 명령어들로 구현될 수 있으며, 또는 컴퓨터 시스템 코어(20) 내의 전력 제어 로직(24)의 외부에 있는 블록으로서, 또는 전력 제어 로직(24)이 비휘발성 외부 저장소(40)로 데이터 전송을 개시하도록 야기시키는 그밖의 적당한 구조로서 구현될 수 있다. 프로그래밍가능한 전력 공급원(40) 내의 다수 트랜지스터들은, 컴퓨터 시스템 코어(20)로의 다수의 전력 공급 접속부들과함께, 상이한 수준의 에너지 절약을 달성하기 위해 이용될 수 있으며, 또는 내부 블록들에 대한 클럭을 중단시키는 클럭 제어부(22)로 인해 에너지 절약이 이루어질 수 있다. 오류 검출 및 정정 블록(30)은 상태 정보의 저장 및 복구를 위한 높은 신뢰성을 제공할 수 있거나, 상태 정보를 저장하거나 복구하는데 걸리는 에너지량 및 시간을 줄이기 위해 인코딩 또는 압축 기능을 포함할 수 있다. 몇몇 비휘발성 저장 디바이스들은 실패 이전에 한정된 기록 사이클들을 갖기 때문에, 이러한 구성에서는 오류 정정 및 검출이 필요할 수 있다.
비휘발성 내부 저장소(26) 및 비휘발성 외부 저장소(40)의 사용은 구현되는 시스템에 따라 맞추어진다. 예를 들어, 컴퓨터 시스템 코어(20)가 대부분의 시간을 중지 상태에 있는 시스템에서 사용된다면, 비휘발성 외부 저장소(40)가 독점적으로 이용될 수 있다. 그러나, 시스템이 매우 자주 활성화된다면, 비휘발성 내부 저장소(26)가 독점적으로 이용될 수 있다. 양쪽 유형의 비휘발성 저장소를 사용하는 시스템의 경우에, 비휘발성 내부 저장소(26)로부터 비휘발성 외부 저장소(40)로 데이터를 전달하는 타이밍은 비휘발성 내부 저장소(26) 대 비휘발성 외부 저장소(40)의 전력 요구사항에 상관된다.
리셋 제어부(25)는 전력 제어 로직(24)과 인터페이스되어 리셋 및/또는 재개 시그널링을 제공한다. 일단 재개 신호가 발생하면, 전력 제어 프로세서는 제어가능 전력 공급원(41)을 활성시킴으로써 주전력을 복구하고 비휘발성 내부 저장소(26) 또는 비휘발성 외부 저장소(40)로부터 상태를 복구한다. 상태 정보는 스캔 체인 입력부(31)를 통해 다양한 기능 블록들에 기록된다. 특정 스캔 체인 입력부는 스캔 디멀티플렉서(28)에 의해 선택되어 전력 제어 로직(24)으로부터 스캔 데이터 출력부(35)를 수신한다. 스캔 디멀티플렉서 제어부(36)는 이러한 목적으로 제공된다. 제어 버스 인터페이스(38)는 상태 데이터를 프로세서 코어(21), 집적 주변장치(23), 및 외부 버스 인터페이스(29)에 상태 데이터를 로딩하는 것을 제어하는데 이용된다. 일단 상태 데이터가 로딩되면, 클럭 제어부(22)는 프로세서 코어(21) 및 집적 주변장치(23)에 클럭들을 재활성화하기 위해 시그널링된다. 컴퓨터 시스템 코어(20)의 내부 래치 상태를 판독하고 기록하는 능력은 이러한 정보를 저장하고 회복하는 것을 가능하게 한다. 원래는 테스팅 목적으로 제공되었지만, 복잡한 에너지 관리 필요성은 LSSD 스캔 스트링 및 상태 회복 및 저장을 위한 LSSD 스캔가능 래치들을 이용하는 것을 바람직하게 만든다. 이는 컴퓨터 시스템을 전력이 주변 구성요소들로부터 제거되는 상태로 만드는 데 필요한 시간을 최소화시키고, 또한 (예를 들어, 전력이 나간 후에 시스템을 리부팅하거나 재구성하지 않고) 컴퓨터 시스템의 상태를 회복하는데 요구되는 관련 시간을 줄이며, 셧다운 이전의 머신 상태를 완전히 재구성해준다. 머신 상태가 소프트웨어에 완벽하게 액세스가능하지 않을 수도 있기 때문에 프로세서 및 주변장치들로부터 전력이 제거된 후의 컴퓨터 시스템의 완전한 재시작이 과거에는 필요했다. 본 발명은 스캔 인터페이스를 통해 직접 머신 상태를 복구시키는 것을 가능하게 해준다. 운영 시스템은 단지, 구성요소 집적 회로들의 상태를 저장하는 것에 부가하여, 캐시 및 TLB(translation look-aside buffers) 등과 같은 스캔가능하지 않은 메모리 어레이들을 플러시하거나 저장하면 된다. 스캔가능하지 않은 메모리 이미지가 복구된 후에, 구성요소 집적 회로들에 전력이 재공급될 수 있고, 저장된 상태는 스캔 인터페이스를 통해 복구될 수 있다.
본 발명의 완전한 상태 저장 및 회복의 예로써, 디스크 액세스는 특정 저장 디바이스에서 개시되었을 수 있으나, 특정 섹터를 찾는 것은 종결될 수 없을 수도 있다. 디스크 제어기가 명령을 보유하고 상기 특정 섹터 찾는 것이 종결되기를 기다리는 동안, 시스템은 (명령을 취소하는) 머신 상태를 변화시키지 않고서는 셧다운할 수 없다. 또한, 저장장치 디바이스로의 인터페이스는 일반적으로 저장장치 드라이버에 의해 관리되는데, 순차적인 전력-다운/전력-업 시컨스를 제공하기 위한, 운영 시스템에 대한 전력-다운 인터페이스를 제공하지 않을 수도 있다.
본 발명의 개선은 또한 네트워크 인터페이스 동작에도 적용된다. 네트워크 인터페이스는 프로토콜, IP 어드레스 등을 구성하기 위해 기록된 정보를 가질 수 있으며, 이러한 정보는 디바이스 드라이버 또는 컴퓨터 시스템 내에서 구동하는 어플리케이션에 의해 유지된다. 네트워크 인터페이스로부터 전력을 제거하고 차후에 전력을 복구하기 위해, 복구 후에 모든 네트워크 인터페이스 상태가 복구되어야 한다. 네트워크 디바이스 드라이버가 완전히 상태를 판독하고 기록하는 것이 가능하지 않을 수도 있어서, 네트워크 인터페이스를 관리하는 어플리케이션 또는 디바이스 드라이버를 재시작하는 것을 필요하게 만들 수 있다.
이제, 도 3을 참조하면, 본 발명의 방법의 바람직한 실시예에 따른 운영 시스템의 동작을 예시한 흐름도가 도시되어 있다. 사용자 버튼 또는 소프트웨어 명령에 의해 개시될 수 있는 시스템 중지 요청이 수신되면(스텝 61), 스케쥴러(타임-슬라이스 관리자 또는 우선순위 관리자)는 타스크 스케쥴링 및 타스크 및 프로세스로의 실행 할당을 중지하고 인터럽트는 디스에이블된다(스텝 63). 이 시점에서, 실행은 단일 스레드이고 인터럽트될 수 없다. 다음, 캐쉬 메모리 및 TLB들은 외부 저장소로 플러쉬된다(flushed). 이 저장소는 아직도 전력이 공급되고 있는 메모리이거나, 자기 하드 디스크 파일일수 있다. 캐쉬 메모리가 플러쉬되면, 전력 제어 로직(24)은 시스템을 셧다운하기 위해 시그널링된다(스텝 65). 그리고 나서, 클럭이 멈추고 전력이 다운된 구성요소들로부터 전력이 제거될 때까지 운영 체제는 멈춘다(스텝 66). 전력 제어 로직(24)은 전력이 다운된 구성요소들의 상태를 저장해두었다가 동작이 재개되기 이전에 그들을 복구함으로써 전력이 복구되고 클럭이 재인가될 때 머신 상태가 복구되는 것에 대한 책임을 진다. 운영 시스템은 그런 후에 중지되기 이전부터의 동작을 재개하고, 중지 요청은 제거된다(스텝 67).
이제 도 4를 참조하면, 본 발명의 바람직한 실시예에 따른 (도 2의 전력제어로직(24)과 같은) 전력 제어 로직 블록의 동작이 도시되어 있다. 셧다운 요청이 수신되지 않은 동안(스텝 70), 전력제어로직(24)은 유휴 상태로 남아 있거나 그밖의 작업을 수행한다(스텝 71). 셧다운 요청이 수신되면, 전력 제어 로직(24)은 시스템 클럭을 멈춘다(스텝 72). 다음에, 집적 회로 내의 스캔 포트를 통해 프로세서를 포함하는 시스템 디바이스들로부터 상태가 판독된다(스텝 73). 모든 디바이스들의 상태는 비휘발성 저장소로 전달되고(스텝 74), 스캔 클럭은 정지되고, 전력은 컴퓨터 시스템 코더(20)로부터 제거된다(스텝 75). 그 후에,전력 제어 로직(24)은, 사용자 버튼, 타이머 또는 그밖의 시그널링 메커니즘으로부터 재개 명려이 수신될 때까지 유휴 상태로 들어간다(스텝 76). 재개 명령이 수신되면(스텝 77), 전력이 시스템 디바이스들에 복구되고 스캔 클럭이 재활성되며(스텝 78), 이전에 저장되었던 상태가 비휘발성 저장소로부터 판독되어(스텝 79), 상태가 스캔 포트들을 통해 시스템 디바이스들에 기록된다(스텝 80). 그런 후에, 시스템 클럭들은 재복구되어(스텝 81), 그것이 정지되었던 부분부터 동작을 진행시킨다.
이제 도 5를 참조하면, 본 발명의 대안적인 실시예에 따른 컴퓨터 시스템이 도시되어 있다. 이들 실시예에서, 구성요소들은 테스트 인터페이스 및/또는 바운더리 스캔 인터페이스를 갖고 있지만, 본 발명에 따른 상태 저장 및 복구를 내부적으로 처리하도록 구체적으로 설계되어 있지 않다. 테스트 인터페이스 및/또는 바운더리 스캔 인터페이스들은 상태가 구성요소들로부터 판독되고 구성요소들에 기록되는 메커니즘을 제공하기 위해 외부적으로 이용된다. 중앙 컴퓨터 유닛(100)은 프로그램 명령어 및 데이터를 저장하기 위한 메모리(110) 뿐만 아니라, 주변 장치(111)에도 연결되어 있다. 주변 장치들(111)은 비디오 제어기, 네트워크 인터페이스, 입력 디바이스들, 프린터 인터페이스들, 저장 장치 인터페이스들뿐만 아니라, 중앙 컴퓨터 유닛(100)을 위한 유용한 접속을 제공하는 그밖의 장치들을 포함한다. 주변 장치들(111)의 상태는 또한 중앙 프로세서(113)를 셧다운/재시작하기 위해 JTAG 접속부(114)를 통해 또는 바운더리 스탠 접속부(112)를 통해 저장된다. JRAG 및 바운더리 스캔 구현물들은 오늘날 사용되는 대규모 회로들에 널리 이용되므로, 대부분의 규격화된 주변 장치 구성요소들은 별다른 수정없이 도 5에 도시된 방식으로 인터페이스할 수 있다.
중앙 컴퓨터 유닛(100)은 프로그램 명령어들을 실행하기 위한 프로세서(101) 및 명령어 및 데이터값들을 저장하기 위한 캐시 메모리(102)를 포함한다. 본 발명의 집적 회로에서 이용가능한 고밀도 집적에 따르면, 중앙 컴퓨터 유닛(100)은 또한 컴퓨터 시스템의 큰 부분을 구현하기 위해 중변 장치 및 시스템 지원 구성요소들을 포함한다. 컴퓨터의 메모리 부시스템을 관리하기 위한 메모리 제어기(105)와, 직접 메모리 액세스(DMA) 제어기(104)와, 버스 브리지(103)는 중앙 컴퓨터 유닛(100)으로부터 메모리 및 입/출력 전 전송에 대한 관리를 지원한다. UART(106)는 직렬 접속부를 제공하고, 네트워크 인터페이스(107)는 중앙 컴퓨터 유닛(100)과 이에 접속된 장치들간의 네트워크 접속을 제공한다.
컴퓨터 시스템 동작과 연관된 기능 블록들에 추가하여, JTAG 인터페이스(108)가 중앙 컴퓨터 유닛(100) 내에 포함되어 있다. JTAG 인터페이스(108)는 외부 테스터가 중앙 컴퓨터 유닛(100) 내의 내부 레지스터들을 액세스할 수 있는 포트를 제공함으로써, 거의 모든 내부 래치들의 상태들이, 전형적으로 컴퓨터 시스템의 설치 또는 사용전에 중앙 컴퓨터 유닛을 테스트하기 위한 목적으로, 판독되거나 기록될 수 있도록 한다. 사용되는 인터페이스가 JTAG-형 인터페이스에 제한되는 것은 아니지만, 현재 가장 많이 이용되고 있는 테스트 장비들과의 호환성을 제공하기 위해서는 실질적으로 JTAG 표준 인터페이스와 호환성있는 JTAG 하드웨어 레이어 및 프로토콜을 이용하는 것이 편리하다.
도 5에 도시된 컴퓨터 시스템에서, JTAG 인터페이스(108)는 JTAG 접속부(114)를 통해 전력 제어 로직(113)에 연결되어 있으며, 전력 제어 로직(113)은 프로세서 또는 하드-와이어드 로직 블록으로서 중앙 컴퓨터 유닛(100)의 상태를 판독하거나 기록하기 위해 전력 제어 로직(113)에 대한 메커니즘을 제공한다. 본 발명의 제1 대안 실시예에 따르면, 중앙 컴퓨터 유닛(100)의 상태가 전력 제어 로직(113)에서 JTAG 인터페이스(108)로 발송된 특별한 명령어 시퀀스에 의해 셧다운 이전에 저장되고 재시작이전에 복구되어, 컴퓨터 시스템의 동작이 셧다운 루틴 내에서는 동결 상태로 있고 동작을 재개하기 위해 컴퓨터 시스템의 재부팅을 필요로 하지 않는다.
본 발명의 제2 대안 실시예는 도 5의 컴퓨터 시스템 내에서 또한 실행될 수 있다. JTAG 접속부(114)에 부가하여, 전력 제어 로직(113)이 바운더리 스캔 접속부(112)를 통해 중앙 컴퓨터 유닛(100)에 결합된다. 중앙 컴퓨터 유닛(100) 상의 외부 핀들 또는 JTAG 인터페이스(108)를 통해 발생하는 특별 명령어에 의해 특별한 상태 모드가 개시되면, 중앙 컴퓨터 유닛(100)은 스캔 모드로 되어, 중앙 컴퓨터 유닛(100)상의 핀접속부 부집합이 바운더리 스캔 테스트 핀들이 된다. 중앙 컴퓨터 유닛(100)의 상태는 JTAG 인터페이스(108)를 통해 데이터가 판독될 수 있는 것보다 바운더리 스캔 접속부(112)를 통해 더 신속하게 판독될 수 있으나, 회로가 좀더 복잡해져서 비용이 올라간다.
컴퓨터 시스템 및 PDA 등을 위한 중지/재개 메커니즘으로서 사용하는 것에 부가하여, 본 발명은 서버, 리던던트 구성요소들을 포함하는 기타 중요한 컴퓨터 시스템들, 또는 LAN 스위치 또는 모뎀 뱅크들과 같이 필요에 기반하여 구입된 부품들을 위한 "핫 스페어(hot spare)"능력을 제공하는데 이용될 수 있다. 시스템 초기화시에, "핫 스페어"의 부품들 상태는 소정의 상태로 초기화된 이후에, 상태가 비휘발성 저장소로 판독되고 이들 부품으로부터 전력이 제거된다. "핫 스페어"가 필요하면, 전력이 복구되고 상태는 "핫 스페어"내의 구성요소들에 다시 기록된다. 핫 스페어는, 소정의 상태로 초기화된 후에, 컴퓨터 시스템 내에서 사용될 수 있다.
본 발명이 구체적인 실시예를 참조하여 설명되었지만, 이러한 설명은 제한된 의미로 해석되어서는 않된다. 바람직한 실시예의 다양한 변경뿐만 아니라, 본 발명의 대안적인 실시예들은 본 발명의 설명을 참조하면 당어자들에게 명백하게 이해될 것이다. 따라서, 이러한 변경은 첨부된 청구항에 정의된 본 발명의 정신 및 범주를 벗어남없이 이루어질 수 있음을 이해할 것이다.
본 발명에 따른 컴퓨터 시스템의 중지 및 재개 동작 수행 방법 및 장치는 컴퓨터 시스템 구성요소들의 상태를 저장해둠으로써 컴퓨터 시스템으로부터 전력이 제거되어도 컴퓨터 시스템의 동작을 재개하기 위해 리부팅할 필요가 없다.

Claims (32)

  1. 컴퓨터 시스템의 동작을 중지하고 재개하기 위한 방법에 있어서,
    중지 명령을 수신한 것에 응답하여, 상기 컴퓨터 시스템 내의 구성요소 집적회로의 내부 레지스터들의 상태를 스캐닝하여 스캐닝 레지스터들로부터 상기 상태에 해당하는 데이터를 판독하는 단계와,
    비-휘발성 저장소에 상기 상태를 저장하는 단계와,
    상기 구성요소 집적회로로부터 전력을 제거하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    재개 명령에 응답하여 상기 구성요소 집적회로에 전력을 복구하는 단계와,
    상기 비휘발성 저장소로부터 상기 상태를 판독하는 단계와,
    상기 스캐닝 레지스터에 상기 상태에 해당하는 데이터를 기록함으로써 상기 구성요소 집적 회로 내에 상기 상태를 복구하는 단계
    를 더 포함하는 방법.
  3. 제2항에 있어서,
    상기 상태를 저장하기 이전에, 상기 구성요소 집적회로 내의 시스템 클럭 신호를 정지시키는 단계와,
    상기 구성요소 집적회로에 전력을 복구한 이후에, 상기 구성요소 집적회로 내의 시스템 클럭 신호를 시작하는 단계
    를 더 포함하는 방법.
  4. 제2항에 있어서, 상기 비-휘발성 저장소는 상기 구성요소 집적 회로 내에 위치하고 있으며, 상기 비-휘발성 저장소에 상기 상태를 저장하는 단계는 상기 구성요소 집적회로 내의 상기 상태에 해당하는 데이터를 이동시키고, 상기 상태를 복구하는 단계는 상기 상태를 상기 구성요소 집적회로 내에 복구하는 방법.
  5. 제4항에 있어서, 상기 비-휘발성 저장소는 대기 전력 공급원에 연결된 랜덤 액세스 메모리를 포함하고, 상기 구성요소 집적회로로부터 전력을 제거하는 단계는 상기 비-휘발성 저장소로부터 전력을 제거하지 않는 방법.
  6. 제5항에 있어서,
    상기 상태를 스캐닝한 것에 이어서 일정 기간 기다리는 단계와,
    상기 일정 기간이 경과한 후에, 상기 스캐닝된 데이터를 상기 구성요소 집적회로의 외부에 있는 제2 비-휘발성 저장소에 전송하는 단계
    를 더 포함하는 방법.
  7. 제4항에 있어서, 상기 비-휘발성 저장소는 전기적 소거가능 판독 전용 메모리(electrically erasable read-only memory:EEROM)이고, 상기 상태를 저장하는 단계는 상기 EEROM에 상기 상태를 기록하는 방법.
  8. 제2항에 있어서, 상기 비-휘발성 저장소는 상기 구성요소 집적회로의 외부에 있고, 상기 저장 및 판독 단계는 상기 내부 레지스터 및 상기 외부 저장소간에 인터페이스를 통해 상기 상태를 전송하는 방법.
  9. 제2항에 있어서, 상기 중지 명령을 수신하는 것에 이어서 선정된 기간을 기다리는 단계를 더 포함하고, 상기 상태를 저장하는 단계는 상기 전정된 기간이 경과한 후에 수행되는 방법.
  10. 제2항에 있어서, 상기 상태를 스캐닝하는 단계는 직렬 테스트 포트 인터페이스를 통해 상기 상태를 판독하는 방법.
  11. 제2항에 있어서, 상기 상태를 스캐닝하는 단계는 바운더리 스캔 레지스터들을 통해 상기 상태를 판독하고, 상기 방법은 상기 중지 명령을 수신한 것에 응답하여 상기 구성요소 집적회로를 스캔 모드가 되게 하는 방법.
  12. 제2항에 있어서, 상기 컴퓨터 시스템은 공통 버스에 연결된 활성 유닛 및 대기 유닛을 포함하고, 상기 구성요소 집적회로는 상기 대기 유닛 내에 위치하며, 상기 상태를 스캐닝하는 단계, 상기 상태를 저장하는 단계, 및 상기 전력을 제거하는 단계는 시스템 초기화시에 수행되고, 상기 전력을 복구하는 단계, 상기 상태를 판독하는 단계, 및 상기 상태를 복구하는 단계는 상기 대기 유닛을 활성시키라는 지시에 응답하여 수행되는 방법.
  13. 컴퓨터 시스템에 있어서,
    스캐닝 레지스터를 통해 액세스가능한 내부 기능 레지스터를 갖는 구성요소 집적회로와,
    중지 명령에 응답하여 상기 구성요소 집적회로의 상태를 저장하기 위해 상기 구성요소 집적회로에 연결된 비-휘발성 저장소 - 상기 상태는 상기 스캐닝 레지스터를 통해 상기 구성요소 집적회로로부터 판독됨-와,
    상기 구성요소 집적회로가 작동할 때에 상기 구성요소 집적회로에 전력을 공급해주고 상기 비-휘발성 저장소에 상기 상태가 저장되는 것에 이어서 전력을 제거하기 위해, 상기 구성요소 집적회로에 연결된 제어가능 전력 공급원
    을 포함하는 컴퓨터 시스템.
  14. 제13항에 있어서, 상기 상태 조건이 동결되도록 상기 구성요소 집적회로 내에 시스템 클럭 신호를 금지하기 위한 클럭 제어 회로를 더 포함하는 컴퓨터 시스템.
  15. 제13항에 있어서, 상기 비-휘발성 저장소는 사이 구성요소 집적회로내에 위치하는 컴퓨터 시스템.
  16. 제15항에 있어서, 상기 비-휘발성 저장소는 대기 전력 공급원에 연결된 랜덤 액세스 메모리를 포함하고, 상기 대기 전력 공급원은 상기 제어가능 전력 공급원이 상기 구성요소 집적회로로부터 전력을 제거한 이후에도 상기 랜덤 액세스 메모리에 계속해서 전력을 공급하는 컴퓨터 시스템.
  17. 제13항에 있어서,
    상기 상태를 저장하기 위해 상기 구성요소 집적회로에 연결된 제2 비-휘발성 저장소와,
    선정된 기간에 경과한 시점을 판단하기 위한 타이머를 더 포함하고, 상기 상태는 상기 제어가능 전력 공급원이 상기 구성요소 집적회로로부터 전력을 제거하기 이전에 상기 제2 비-휘발성 저장소에 기록되는
    컴퓨터 시스템.
  18. 제13항에 있어서, 상기 비-휘발성 저장소는 전기적 소거가능 판독 전용 메모리(EEROM)인 컴퓨터 시스템.
  19. 제13항에 있어서, 상기 비-휘발성 저장소는 상기 구성요소 집적회로의 외부에 있으며, 상기 컴퓨터 시스템은 상기 내부 레지스터들과 상기 외부 저장소간의 인터페이스를 더 포함하고, 상기 상태는 상기 인터페이스를 통해 전송되는, 컴퓨터 시스템.
  20. 제19항에 있어서, 상기 인터페이스는 직렬 테스트 포트 인터페이스인 컴퓨터 시스템.
  21. 제20항에 있어서, 상기 직렬 테스트 포트 인터페이스는 조인트 테스트 액션 그룹(Joint Test Action Group:JTAG) 사양에 따른 테스트 포트를 포함하고, 상기 상태는 특수 JTAG 명령을 발송함으로써 전송되는 컴퓨터 시스템.
  22. 제13항에 있어서, 상기 구성요소 집적회로는 바운더리 스캔 레지스터들을 포함하고, 상기 구성요소 집적회로를 스캔 모드가 되도록 함으로써 상기 상태가 판독되는 컴퓨터 시스템.
  23. 제13항에 있어서,
    프로세싱 구성요소 및 주변 구성요소들을 연결하기 위한 버스와,
    상기 버스에 연결된 활성 구성요소와,
    상기 버스에 연결되어, 상기 구성요소 집적회로를 포함하는 대기 구성요소- 시스템 초기화시에 상기 비-휘발성 저장소에 상기 상태가 저장되고 상기 대기 구성요소를 활성화시키라는 지시에 응답하여 상기 상태가 회복됨-
    를 더 포함하는 컴퓨터 시스템.
  24. 제13항에 있어서, 상기 구성요소 집적회로의 상태를 판독하기 위해 전력 제어 로직 프로세서를 더 포함하는 컴퓨터 시스템.
  25. 제24항에 있어서, 상기 전력 제어 로직 프로세서는 상기 구성요소 집적회로로의 전력을 제어하기 위해 상기 제어가능 전력 공급원을 제어하는 컴퓨터 시스템.
  26. 제24항에 있어서, 상기 셧다운 프로세서에 응답하여 상기 구성요소 집적회로 내의 시스템 클럭 신호들을 중단시키기 위해 상기 전력 제어 로직에 연결된 클럭 제어회로를 더 포함하는 컴퓨터 시스템.
  27. 제24항에 있어서, 상기 셧다운 프로세서는 상기 구성요소 집적회로 내에 위치하고, 상기 전력 제어 로직은 대체 전력 공급원에 연결되어 상기 제어가능 전력 공급원이 상기 구성요소 집적회로로부터 전력을 제거할 때 상기 전력 제어 로직에 전력이 유지되도록 하는 컴퓨터 시스템.
  28. 컴퓨터 시스템에서 사용하기 위한 구성요소 집적회로에 있어서,
    스캔 레지스터들을 통해 액세스가능한 내부 레지스터들과,
    중지 명령에 응답하여 상기 내부 레지스터들의 상태를 저장하기 위한 내부 비-휘발성 저장소
    를 포함하는 구성요소 집적회로.
  29. 제28항에 있어서, 상기 내부 비-휘발성 저장소는 전기적 소거가능 판독 전용 메모리를 포함하는 구성요소 집적회로.
  30. 제28항에 있어서, 상기 비-휘발성 저장소는 대기 전력 공급원 입력에 연결되는 랜덤 메모리 액세스를 포함하며, 상기 대기 전력 공급원은 주전력 공급원 핀들로부터 전력이 제거된 후에 상기 랜덤 액세스 메모리에 전력을 제공하는 구성요소 집적회로.
  31. 제28항에 있어서, 상기 상태를 상기 비-휘발성 저장소에 전송하기 위해 상기 구성요소 집적회로 내에 전력 제어 로직을 더 포함하는 구성요소 집적회로.
  32. 제28항에 있어서, 상기 상태가 저장된 후에 기능 로직에 클럭 신호들을 중단하기 위한 클럭 제어 로직을 더 포함하는 구성요소 집적회로.
KR1020010058930A 2000-10-02 2001-09-24 컴퓨터 시스템의 중지 및 재개 동작을 위한 방법 및 장치 KR20020026814A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US67694300A 2000-10-02 2000-10-02
US09/676,943 2000-10-02

Publications (1)

Publication Number Publication Date
KR20020026814A true KR20020026814A (ko) 2002-04-12

Family

ID=24716658

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020010058930A KR20020026814A (ko) 2000-10-02 2001-09-24 컴퓨터 시스템의 중지 및 재개 동작을 위한 방법 및 장치

Country Status (4)

Country Link
JP (1) JP2002182803A (ko)
KR (1) KR20020026814A (ko)
CN (1) CN1218232C (ko)
TW (1) TW544585B (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007087138A1 (en) * 2006-01-12 2007-08-02 Microsoft Corporation Capturing and restoring application state after unexpected application shutdown
US7574591B2 (en) 2006-01-12 2009-08-11 Microsoft Corporation Capturing and restoring application state after unexpected application shutdown
KR101262740B1 (ko) * 2005-05-17 2013-05-09 오끼 덴끼 고오교 가부시끼가이샤 시스템 엘.에스.아이.
JP2019521409A (ja) * 2016-05-27 2019-07-25 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated 仮想アドレスから物理アドレスへの変換を実行する入出力メモリ管理ユニットにおける複数のメモリ素子の使用

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3910902B2 (ja) 2002-10-02 2007-04-25 松下電器産業株式会社 集積回路装置
US7451333B2 (en) * 2004-09-03 2008-11-11 Intel Corporation Coordinating idle state transitions in multi-core processors
CN100426269C (zh) * 2005-04-18 2008-10-15 纬创资通股份有限公司 电脑系统与辅助设备电连接时致能或失能辅助设备的方法
TWI398755B (zh) * 2006-12-22 2013-06-11 Hon Hai Prec Ind Co Ltd 嵌入式系統恢復方法
WO2010007469A1 (en) 2008-07-16 2010-01-21 Freescale Semiconductor, Inc. Micro controller unit including an error indicator module
TWI482033B (zh) * 2009-01-23 2015-04-21 Wistron Corp 排程方法及電腦
JP5452041B2 (ja) * 2009-03-13 2014-03-26 ローム株式会社 データ処理装置
JP5962658B2 (ja) 2011-09-09 2016-08-03 日本電気株式会社 半導体装置とその制御方法
JP5999097B2 (ja) * 2011-11-21 2016-09-28 日本電気株式会社 半導体集積回路及びその制御方法
WO2014157712A1 (ja) 2013-03-25 2014-10-02 日本電気株式会社 演算処理装置およびその制御方法
CN103777537B (zh) * 2014-01-28 2018-03-13 无锡云动科技发展有限公司 一种低功耗控制电路及存储装置
JP5974133B1 (ja) 2015-03-20 2016-08-23 株式会社東芝 メモリシステム
WO2017009982A1 (ja) 2015-07-15 2017-01-19 株式会社東芝 電子回路基板および情報処理装置
US11295792B2 (en) * 2019-09-30 2022-04-05 Taiwan Semiconductor Manufacturing Company, Ltd. Back-up and restoration of register data
CN116400795A (zh) * 2023-06-09 2023-07-07 上海芯联芯智能科技有限公司 电源门控方法及系统级芯片

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5021983A (en) * 1989-11-13 1991-06-04 Chips And Technologies, Inc. Suspend/resume apparatus and method for reducing power consumption in battery powered computers
KR930012128A (ko) * 1991-12-30 1993-07-20 프랑코 사르토리오 시이트(sheet) 금속의 상대적으로 짧은 피스(piece)를 위한 정밀 벤딩 프레스(bending press)
US5435005A (en) * 1988-04-30 1995-07-18 Kabushiki Kaisha Toshiba Method and system for controlling resuming operation of an AC-driven computer system using an external memory
KR970010634A (ko) * 1995-08-01 1997-03-27 이승춘 보행식 화물운송기기
KR0172003B1 (ko) * 1995-03-28 1999-03-30 김광호 컴퓨터 시스템 및 그 제어방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5435005A (en) * 1988-04-30 1995-07-18 Kabushiki Kaisha Toshiba Method and system for controlling resuming operation of an AC-driven computer system using an external memory
US5021983A (en) * 1989-11-13 1991-06-04 Chips And Technologies, Inc. Suspend/resume apparatus and method for reducing power consumption in battery powered computers
US5021983B1 (en) * 1989-11-13 1996-05-28 Chips & Technologies Inc Suspend/resume apparatus and method for reducing power consumption in battery powered computers
KR930012128A (ko) * 1991-12-30 1993-07-20 프랑코 사르토리오 시이트(sheet) 금속의 상대적으로 짧은 피스(piece)를 위한 정밀 벤딩 프레스(bending press)
KR0172003B1 (ko) * 1995-03-28 1999-03-30 김광호 컴퓨터 시스템 및 그 제어방법
KR970010634A (ko) * 1995-08-01 1997-03-27 이승춘 보행식 화물운송기기

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101262740B1 (ko) * 2005-05-17 2013-05-09 오끼 덴끼 고오교 가부시끼가이샤 시스템 엘.에스.아이.
WO2007087138A1 (en) * 2006-01-12 2007-08-02 Microsoft Corporation Capturing and restoring application state after unexpected application shutdown
US7574591B2 (en) 2006-01-12 2009-08-11 Microsoft Corporation Capturing and restoring application state after unexpected application shutdown
US7716461B2 (en) 2006-01-12 2010-05-11 Microsoft Corporation Capturing and restoring application state after unexpected application shutdown
JP2019521409A (ja) * 2016-05-27 2019-07-25 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated 仮想アドレスから物理アドレスへの変換を実行する入出力メモリ管理ユニットにおける複数のメモリ素子の使用

Also Published As

Publication number Publication date
CN1344982A (zh) 2002-04-17
CN1218232C (zh) 2005-09-07
TW544585B (en) 2003-08-01
JP2002182803A (ja) 2002-06-28

Similar Documents

Publication Publication Date Title
KR20020026814A (ko) 컴퓨터 시스템의 중지 및 재개 동작을 위한 방법 및 장치
TWI613588B (zh) 在核心間同步運作的方法、微處理器及電腦程式產品
US6158000A (en) Shared memory initialization method for system having multiple processor capability
US7058834B2 (en) Scan-based state save and restore method and system for inactive state power reduction
CN109739563B (zh) 终端的控制方法、装置、系统及存储介质
JP2726004B2 (ja) 保護モードでコードを実行するcpuの状態を保存する方法、cpuの状態を不揮発性記憶装置から復元する方法、ページ・ディレクトリ・ベース・レジスタのレジスタ値を推定する方法およびページ・ディレクトリ・ベース・レジスタの推定レジスタ値を検証する方法
KR101156292B1 (ko) 신속한 하이버네이트 및 리줌을 위한 장치 및 방법
JP2798356B2 (ja) デスクトップ・コンピュータ・システム、コンピュータ・システムの状態を保存する方法およびコンピュータ・システムの状態を復元する方法
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
US20020095609A1 (en) Multiprocessor apparatus
TWI613593B (zh) 在微處理器中至多核心的微碼傳播
KR100368079B1 (ko) 컴퓨터 및 컴퓨터의 전원 제어 방법
JP2004164647A (ja) ハードウエアによるデータ処理システム内の状態の保存/回復
US6453423B1 (en) Computer remote power on
PL193918B1 (pl) Sposób sterowania systemem obsługi informacji i system obsługi informacji
JP3869049B2 (ja) コンピュータシステムにおけるスタンバイ中のデバイス構成のロス防止方法およびデバイス構成の捕捉のためのコントローラ回路
TW201508635A (zh) 多核心微處理器動態重新配置
US20070130480A1 (en) System and method for enabling fast power-on times when using a large operating system to control an instrumentation system
JP2010061644A (ja) プラットフォームベースのアイドルタイム処理
US20190004818A1 (en) Method of UEFI Shell for Supporting Power Saving Mode and Computer System thereof
US20080263396A1 (en) Data Processing Device And Data Control Circuit For Use Therein
JP2004348707A (ja) 集積回路節電方法
TWI526817B (zh) 電腦系統、可適性休眠控制模組及其控制方法
JP2006004339A (ja) 半導体集積回路
JP3529805B2 (ja) ハードウェア制御パワー管理機能と選択可能な入出力制御ピンとを有するマイクロプロセッサ

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application