KR20020051882A - 컴퓨터의 비정상 동작을 검출하기 위한 감시 타이머 및방법, 및 감시 타이머를 포함하는 컴퓨터 - Google Patents

컴퓨터의 비정상 동작을 검출하기 위한 감시 타이머 및방법, 및 감시 타이머를 포함하는 컴퓨터 Download PDF

Info

Publication number
KR20020051882A
KR20020051882A KR1020010082818A KR20010082818A KR20020051882A KR 20020051882 A KR20020051882 A KR 20020051882A KR 1020010082818 A KR1020010082818 A KR 1020010082818A KR 20010082818 A KR20010082818 A KR 20010082818A KR 20020051882 A KR20020051882 A KR 20020051882A
Authority
KR
South Korea
Prior art keywords
mode
signal
reset
wdt
circuit
Prior art date
Application number
KR1020010082818A
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 KR20020051882A publication Critical patent/KR20020051882A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Microcomputers (AREA)

Abstract

계수기(11)는 발진기(3)에 의해 발생된 클록(101)의 펄스들을 계수한다. 제어 레지스터(13)는 외부 회로(1)로부터 전송된 리셋 신호(102)에 응답하여 계수된 값을 클리어한다. 계수된 값이 한계값을 초과하는 경우에, 출력 제어 회로(12)는 리셋 처리를 실행하도록 지시하기 위한 리셋 신호(110)를 외부 회로(1)로 출력한다. 또한 이 리셋 신호(110)는 제어 레지스터(13)에 제공된다. 제어 레지스터(13)는 리셋 신호(110)에 응답하여 제어 레지스터(101)의 펄스들을 계수하기 위해 계수기(11)를 제어한다. 이후에, 리셋 처리를 수행하는 동안 외부 회로(1)에서 일어나는 비정상 동작들이 검출될 수 있다.

Description

컴퓨터의 비정상 동작을 검출하기 위한 감시 타이머 및 방법, 및 감시 타이머를 포함하는 컴퓨터{Watchdog timer and method for detecting abnormal operation of computer, and computer including the timer}
(발명의 배경)
본 발명은 컴퓨터의 비정상 동작을 검출하기 위한 감시 타이머(watchdog timer) 및 방법에 관한 것이다. 본 발명은 또한 컴퓨터의 비정상 동작을 검출하기 위한 감시 타이머를 포함하는 컴퓨터에 관한 것이다.
(관련 기술의 설명)
컴퓨터들은, 도 9에 서술된 바와 같이, 임의의 다양한 인자들의 결과로서 제어 또는 정지 동작으로부터 동작할 수 있다.
심사되지 않은 일본 특허 출원 공개 공보 제 S61-62947 호는 컴퓨터들의 그와 같은 비정상 동작들을 검출하고 컴퓨터를 정상 상태로 되돌려 설정하기 위한, 타이머를 이용하는, 방법이 개시되어 있다.
타이머(감시 타이머)는 컴퓨터를 제어하기 위한 소프트웨어 프로그램의 명령들에 따라 동작하는 것을 시작한다. 감시 타이머는 클록의 펄스들을 계수하고, 계수된 값은 소프트웨어 프로그램의 제어 하에 소정의 간격들에서 삭제된다.
비정상 동작이 컴퓨터에서 발생하는 경우에는, 계수된 값은 삭제되는 대신 에 소정의 제한 값을 초과한다. 계수된 값이 제한 값을 초과하는 경우에는, 와치 도그 타이머는 컴퓨터가 리셋 처리를 실행하도록 제어한다.
그러나, 상술된 바와 같이, 감시 타이머는 소프트웨어 프로그램의 명령 들에 의해 동작하는 것을 시작한다. 그래서, 소프트웨어 프로그램의 활성화 동안 발생하는 비정상 동작이 만족스럽게 검출될 수 없다.
특히, 노이즈(N1)가 도 10에 도시된 바와 같이 전원에서 발생하는 경우에, 컴퓨터는 제어를 벗어나 동작하고, 계수된 값은 제한 값(C1)에 도달한다. 따라서, 컴퓨터는 감시 타이머에 의해 리셋되고, 리셋 처리(C2)를 시작한다. 그러나, 노이즈(N1)가 리셋 처리를 시작할 때에 여전히 남아있고, 컴퓨터는 다시 제어를 벗어나 동작된다. 그래서, 소프트웨어 프로그램은 활성화되지 않고, 와치도그 타이머도 동작하지 않는다.
따라서, 종래의 감시 타이머는 소프트웨어 프로그램의 활성화동안 컴퓨터에서 일어나는 비정상 동작들을 검출할 수 없다.
감시 타이머가 컴퓨터에 포함되는 경우에, 컴퓨터는 감시 타이머의 기능들을 필요로 하지 않는 임의의 장치들에 대해 이용될 수 없다. 달리 말해서, 각각 감시 타이머를 포함하는 임의의 이들 컴퓨터들은 다양한 목적들을 위해 이용될 수 없다.
심사되지 않은 일본 특허 출원 공개 공보 제 S61-62947 호의 내용들은 전체로서 본 명세서에 참고문헌으로 포함되어 있다.
(발명의 개요)
본 발명은 상기 내용을 고려하여 이루어졌다. 따라서 다양한 목적들을 위해 이용될 수 있는 감시 타이머를 제공하는 것이 본 발명의 목적이다.
본 발명의 다른 목적은 컴퓨터들의 비정상 동작들을 신뢰성 있게 검출하기 위한 감시 타이머와 방법을 제공하는 것이다.
본 발명의 또 다른 방법은 컴퓨터들의 비정상 동작들을 신뢰성있게 검출하는 감시 타이머를 포함하는 컴퓨터를 제공하는 것이다.
상기 목적들을 달성하기 위해 본 발명의 제 1 측면에 따라 :
리셋 신호(102, 110)에 응답하여, 리셋 처리를 실행하는 제어기(1)와,
클록(101)을 발진하는 발진기(3), 및
클록(101)의 펄스들을 계수함으로써 얻어진 계수된 값이 소정의 한계값을 초과하는 경우에, 클록(101)의 펄스들을 계수하고, 리셋 신호(110)를 제어기에 출력하는 타이머(10, 30)를 포함하는 컴퓨터가 제공되며,
제어기(1)는 타이머(10, 30)를 제어하고, 계수된 값이 한계값을 초과하기 전에 계수된 값을 클리어하고,
타이머(10, 30)는 제어기(1)가 리셋 처리를 시작하는 것과 동기하여 클록(101)의 펄스들을 계수하기 시작하고, 그럼으로써 리셋 처리의 실행 중 컴퓨터에서 일어나는 비정상 동작을 검출한다.
타이머(10, 30)는 복수의 동작 모드들을 가질 수 있다.
제어기(1)는 타이머(10, 30)의 동작 모드를 특정하기 위한 모드 특정 신호(mode specification signal; 103, 104)를 타이머(10, 30)에 출력할 수 있으며,
타이머(10, 30)는 모드 특정 신호(103, 104)에 따라 그 동작 모드를 설정할 수 있다.
타이머(10, 30)는, 타이머(10, 30)의 동작 모드의 설정에 응답하여 유효하지 않게(ineffective) 제어기(1)로부터 전송된 모드 특정 신호를 설정하는 회로를 포함할 수 있다.
타이머(30)는 제어기(1)로부터 제공된 모드 특정 신호(104)가 받아들여 질 수 있는 허용가능한 기간을 제한하는 제한 회로(34, 35, 36, 37)를 더 구비한다.
위의 목적들을 달성하기 위해, 본 발명의 제 2 양상에 따라,
계수된 값을 클리어하도록 지정하고 외부 회로(1)로부터 공급되는 클리어 신호(clear signal; 102)에 응답하여 발진기(3)에 의해 발생된 클록(101)의 펄스들을 계수하고, 펄스들의 계수된 값을 클리어하는 계수기(11, 13, 31, 33)와,
계수된 값이 소정의 한계값을 초과하는 경우에, 외부 회로(1)에 리셋 처리를 실행하도록 나타내기 위한 리셋 신호(110)를 출력하는 출력 회로(12, 32)를 포함하는 감시 타이머가 제공되며,
출력 회로(12, 32)로부터 출력된 리셋 신호(110)에 응답하여 계수기(11, 13, 31, 33)는 계수된 값을 클리어하고, 클록(101)의 펄스들을 계수하기 시작하며, 그럼으로써, 리셋 처리의 실행 중 외부 회로(1)에서 일어나는 비정상적인 동작을 검출한다.
감시 타이머는 복수의 동작 모드들을 가질 수 있다.
감시 타이머는,
동작 모드를 명시하고 외부 회로(1)로부터 제공되는 모드 특정 신호(103, 104)에 따라 감시 타이머의 동작 모드를 설정하는 모드 설정 회로(13, 33)를 더 포함할 수 있다.
감시 타이머는,
감시 타이머의 동작 모드의 설정에 응답하여 무능한 외부 회로(1)로부터 보내진 모드 특정 신호(104)를 설정하는 회로를 더 포함할 수 있다.
감시 타이머는,
외부 회로(1)로부터 제공된 모드 특정 신호(104)가 받아들여 질 수 있는 허용 가능한 기간을 제한하는 제한 회로(34, 35, 36, 37)를 더 포함할 수 있다.
위의 목적들을 달성하기 위해, 본 발명의 제 3 관점에 따라,
발진기(3)에 의해 발생된 클록(101)의 펄스들을 계수하는 단계,
외부 회로(1)로부터 제공되는 계수된 값을 클리어하도록 지정하는 클리어 신호(102)에 응답하여 펄스들의 계수된 값을 클리어하는 단계와,
계수된 값이 소정의 한계값을 초과할 경우, 리셋 처리를 실행하도록 외부 회로(1)를 제어하는 단계를 포함하는 비정상적인 동작 검출 방법에 제공되며,
계수하는 단계는 외부 회로가 리셋 처리를 시작하는 것과 동기하여 클록(101)의 펄스들을 계수함으로써, 리셋 처리의 실행 중 외부 회로(1)에서 일어나는 비정상적인 동작을 검출하는 단계를 포함한다.
이제, 본 발명의 이러한 목적들 및 다른 목적들 및 이점들은 다음의 상세한 설명 및 첨부한 도면을 읽고 좀 더 명백해질 것이다.
도 1은 본 발명의 제 1 실시예에 따른 감시 타임을 포함하는 마이크로컴퓨터의 구조를 도시하는 다이어그램.
도 2는 도 1의 마이크로컴퓨터에 포함된 감시 타이머의 구조를 도시하는 다이어그램.
도 3a는 도 2에 도시된 감시 타이머의 제어 레지스터가 갖는 제어 플래그를 도시하는 다이어그램.
도 3b는 감시 타이머의 동작 모드들과 제어 플래그에 포함된 플래그들 사이의 관계를 도시하는 다이어그램
도 4는 마이크로컴퓨터의 비정상적인 동작을 검출하기 위한 마이크로컴퓨터의 동작들을 도시하는 흐름도.
도 5는 마이크로컴퓨터의 비정상적인 동작들과 감시 타이머의 동작들 사이의 관계를 도시하는 다이어그램.
도 6은 감시 타이머의 제어 레지스터에 포함된 플래그 설정을 도시하는 다이어그램.
도 7은 본 발명의 제 2 실시예에 따른 감시 타이머의 구조를 도시하는 다이어그램.
도 8은 마이크로컴퓨터의 비정상적인 동작을 검출하기 위한 마이크로컴퓨터의 동작들을 도시하는 흐름도.
도 9는 컴퓨터에서 일어나는 비정상적인 동작들의 종류들을 도시하는 다이어그램.
도 10은 마이크로컴퓨터의 비정상적인 동작들과 종래의 감시 타이머의 동작들 사이의 관계를 도시하는 다이어그램.
*도면의 주요 부분에 대한 부호의 설명*
2: 메모리10,30: WDT
12, 32: 출력 제어 회로101: 클록
제 1 실시예
이제, 본 발명의 제 1 실시예에 따른 감시 타이머(WDT)는 첨부한 도면들을 참조하여 설명될 것이다.
제 1 실시예에 따른 WDT는 마이크로컴퓨터에 통합된다.
이 실시예에 따른 WDT는 복수의 동작 모드들을 갖는다. 특히, WDT는 리셋 모드, 논-마커블(Non-Maskable) 인터럽트(NMI)모드 및 정지 모드를 갖는다.
리셋 모드 및 NMI 모드 각각에서, WDT는 어떤 비정상 동작들(제어를 벗어나 동작하고 동작들을 정지시키는 등)을 검출한다. 정지 모드에서, WDT는 동작하지 않는다.
WDT의 동작 모드들은 마이크로컴퓨터의 기능들에 따라 설정된다. 특히, WDT의 동작 모드들은 마이크로컴퓨터를 제어하기 위한 소프트웨어 프로그램에 의해 결정된다.
예를 들면, 마이크로컴퓨터가 WDT의 기능을 사용하지 않는 장치에 구비되는 경우에, WDT는 정지 모드로 설정된다. 복수의 동작 모드들로 인해, WDT는 각종 마이크로컴퓨터들로 통합될 수 있다. 즉, 이 실시예의 WDT와 WDT를 포함하는 마이크로컴퓨터는 각종 목적들을 위해 사용될 수 있다.
도 1은 이 실시예의 WDT를 포함하는 마이크로컴퓨터의 구조를 도시하는 도면이다.
도 1에 도시된 바와 같이, 마이크로컴퓨터는 CPU(중앙 처리 장치: 1), 메모리(2), 발진 회로(3), WDT(10)를 포함한다.
CPU(1)는 메모리(2)에 저장된 소프트웨어 프로그램과 발진 회로(3)로부터 제공된 클록에 따라 동작한다. CPU(1)는 소프트웨어 프로그램의 세팅에 따라 WDT(10)의 동작 모드를 설정한다.
상술한 바와 같이, WDT(10)는 그 정지 모드에서 동작하지 않는다.
리셋 모드와 NMI 모드에서, WDT(10)는 발진 회로(3)로부터 제공된 클록의 펄스들을 계수한다. 계수된 값이 소정의 한계값을 초과하기 전에, CPU(1)는 계수된 값을 클리어하기 위해 WDT(10)를 제어한다. 마이크로컴퓨터(CPU(1))가 정상적으로 동작하지 않는 경우에, 계수된 값은 클리어되지 않으며 한계값을 초과한다.
계수된 값이 소정의 한계값을 초과하는 경우, WDT(10)는 WDT가 리셋 모드에 있으면, 마이크로컴퓨터(CPU(1))로 하여금 전력이 그에 공급될 때 처리되는 것과같은 초기 공정을 실행하도록 한다. 또한, WDT(10)가 NMI 모드에 있으며, WDT(10)는 마이크로컴퓨터로 하여금 소정의 NMI 공정을 실행하도록 한다. 그 후, 마이크로컴퓨터는 정상 동작 상태로 된다.
도 2는 WDT(10)의 구조를 도시하는 도면이다.
WDT(10)는 계수기(11), 출력 제어 회로(12) 및 제어 레지스터(13)를 포함한다. WDT(10)는 복수의 단자들(T1 내지 T6)을 가지며, CPU(1) 및 발진 회로(3)에 접속된다.
계수기(1)는 단자(T1)를 통해 발진 회로(3)에 접속되고, 발진 회로(3)로부터 공급된 클록(101)을 수신한다. 계수기(11)는 제어 레지스터(13)로부터 공급된 정지 제어 신호(106) 및 동작 제어 신호(107)에 따라, 클록(101)의 펄스들(클록 펄스들)을 계수한다.
특히, 동작 제어 신호(107)에 응답하여, 계수기(11)는 계수된 값을 클리어하고 클록(101)의 펄스들을 계수한다. 계수된 값이 한계값을 초과하는 경우, 계수기(11)는 계수된 값이 한계값을 초과했다는 것을 나타내는 오버플로 신호(105)를 출력 제어 회로(12)에 출력한다. 정지 제어 신호(106)에 응답하여, 계수기(11)는 클록(101)의 펄스들을 계수한다.
출력 제어 회로(12)는 단자들(T2, T3)을 통해 CPU(1)에 접속된다. 계수기(11)로부터 출력된 오버플로 신호(105)에 응답하여, 출력 제어 회로(12)는 리셋 신호(110) 또는 NMI 신호를 CPU(1)에 출력한다.
리셋 신호(110) 또는 NMI 신호(111)가 출력되는지에 관한 결정은 제어 레지스터(13)로부터 출력 제어 회로(12)로 출력된 리셋 인에이블 신호(108)와 NMI 인에이블 신호(109)에 따라 이루어진다. 예를 들면, 리셋 인에이블 신호(108)가 로우 레벨에 있고 NMI 인에이블 신호(109)가 하이 레벨에 있는 경우, 리셋 신호(110)는 출력 제어 회로(12)로부터 출력된다. 반대로, 리셋 인에이블 신호(108)가 하이 레벨이고 NMI 인에이블 신호(109)가 로우 레벨인 경우, NMI 신호(111)는 출력 제어 회로(12)로부터 출력된다.
출력 제어 회로(12)로부터 출력된 리셋 신호(110)에 응답하여, CPU(1)는 전원이 그것에 인가된 때에 수행되는 것과 동일한 초기 처리를 실행한다. 출력 제어 회로(12)로부터 전송된 NMI 신호(111)에 응답하여, CPU(1)는 소정의 NMI 처리를 실행한다. 상술한 바와 같이 수행되어졌을 때 마이크로컴퓨터는 그 정상 상태로 복귀된다.
제어 레지스터(13)는 단자들(T4, T5 및 T6)을 통해 CPU(1)에 접속되고 CPU(1)로부터 제공된 리셋 신호(102), 데이터(103) 및 기록 인에이블 신호(104)를 수신한다.
제어 레지스터(13)는 CPU(1)로부터 리셋 신호(102)의 수신시 초기화된다. 특히, CPU(1)로부터 리셋 신호(102)에 응답하여, 제어 레지스터(13)는 동작 제어 신호(107)를 계수기(11)에 출력하고 WDT(10)를 리셋 모드로 설정한다.
제어 레지스터(13)는 데이터(103) 및 기록 인에이블 신호(104)에 따라, 도 3a에 도시된 제어 플래그를 가지며, 제어 플래그 내에 포함된 각 플래그들(비트 값)을 설정한다. 제어 레지스터(13)는 제어 플래그에 따라, WDT를 동작 모드로 설정한다.
도 3b는 WDT(10)의 동작 모드들과 제어 플래그 내에 포함된 플래그들 간의 관계를 도시한 도면이다.
도 3b에 도시된 바와 같이, WDT(10)의 동작 모드들은 3개의 비트들(B0, B1 및 B2)로 표시된다.
비트(B0)가 "0"인 경우, 제어 레지스터(13)는 동작 제어 신호(107)를 계수기(11)에 출력하고 각 리셋 인에이블 신호(108)와 NMI 인에이블 신호(109)의 레벨들을 설정해서, 출력 제어 회로(12)가 리셋 신호(110)를 출력하도록 한다. 이 결과로, WDT(10)는 리셋 모드로 설정된다. 이 경우, 계수기(11)는 클록(101)의 펄스들을 계수한다. 또한, 출력 제어 회로(12)는 계수된 값이 제한 값을 초과하는 경우에, 리셋 신호(110)를 출력한다.
비트(B0)가 "1"이고 비트(B1)가 "0"인 경우, 제어 레지스터(13)는 동작 제어 신호(107)를 계수기(11)에 출력하고 리셋 인에이블 신호(108)와 NMI 인에이블 신호(109)의 레벨들을 설정해서, 출력 제어 회로(12)가 NMI 신호(111)를 출력하도록 한다. 이 결과로, WDT(10)는 NMI 모드로 설정된다. 이 경우에, 계수기(11)는 클록(101)의 펄스들을 계수한다. 또한, 출력 제어 회로(12)는 계수된 값이 제한 값을 초과하는 경우, NMI 신호(111)를 출력한다.
비트(B0) 및 비트(B1)가 둘 다 "1"이고, 비트(B2)가 "0"인 경우, 제어 레지스터(13)는 정지 제어 신호(106)를 계수기(11)에 출력한다. 다음으로, WDT(10)는 정지 모드로 설정된다. 이 경우, 계수기(11)는 동작하는 것을 멈춘다.
리셋 신호(102)는 CPU(1) 이외의 회로들로부터 제어 레지스터(13)에 공급될 수 있다. 예를 들어, 출력 제어 회로(12)로부터 출력된 리셋 신호(110)는 리셋 신호(102)로서 제어 레지스터(13)에 공급된다. 이 리셋 신호(102)는 마이크로컴퓨터를 갖는 장치 내에 포함된 리셋 신호 출력 회로(도시되지 않음)로부터 또한 공급될 수 있다. 장치의 주 몸체에 설정된 리셋 버튼을 사용자가 누르는 것에 응답하여, 리셋 신호 출력 회로는 리셋 신호(102)를 CPU(1) 및 제어 레지스터(13)에 출력한다.
또한 리셋 신호 출력 회로로부터 전송된 리셋 신호(102)에 응답하여, CPU(1)는 전원이 그것에 인가될 때 바로 수행되는 것과 동일한 초기 처리를 실행한다. 제어 레지스터(13)는 출력 제어 회로(12)와 리셋 신호 출력 회로로부터 전송된 리셋 신호들(102)에 응답하여 초기화될 수 있다.
출력 제어 회로(12)로 출력된 리셋 신호(110)에 응답하여 실행되는 초기 처리는 하기에 내부 리셋팅으로 불리워질 것이며, 반면에, 리셋 신호 출력 회로로 출력된 리셋 신호(102)에 응답하여 실행되는 초기 처리는 외부 리셋팅으로 불리워질 것이다.
마이크로컴퓨터(CPU(1))의 비정상 동작을 검출하기 위한 동작들이 도 4를 참조하여 설명된다.
예를 들어, 마이크로컴퓨터를 구비한 장치의 사용자가 그 장치의 본체에 배치된 "리셋(reset)" 버튼을 누른다. 이 때, 리셋 신호(102)는 리셋 신호 출력 회로로부터 CPU1 및 제어 레지스터(13)에 공급된다.
CPU1은 그 리셋 신호 출력 회로로부터의 리셋 신호(102)에 응답하여 외부 리셋팅을 실행하는 반면, 제어 레지스터(13)는 리셋 신호(102)에 응답하여 초기화된다(스텝 S1).
CPU1은 외부 리셋팅 시, 메모리(2)에 저장된 소프트웨어 프로그램을 재활성화한다(초기화 과정). 초기화된 제어 레지스터(13)는 동작 제어 신호(107)를 계수기(107)로 출력하고, WDT(10)를 리셋 모드로 설정한다.
제어 레지스터(13)로부터 출력된 동작 제어 신호(107)에 응답하여, 계수기(11)는 계수된 값을 클리어하고, 발진 회로(3)로부터 제공된 클록(101)의 펄스들을 계수한다(스텝 S2).
CPU(1)는 활성화된 소프트웨어 프로그램의 명령들에 따라서, 제어 레지스터(13)에 대해 계산된 값을 클리어하기 위한 리셋 신호(102)를 출력한다. CPU1은 그 활성화된 소프트웨어 프로그램의 설정에 따라서, 제어 레지스터(103)에 대해 WDT(10)의 동작 모드를 설정하기 위한 인에이블 신호(104)를 기록하고, 데이터(103)를 출력한다.
마이크로컴퓨터가 정상적으로 동작할 경우, CPU1은 앞의 절차들을 수행한다. 그러므로, 계수된 값은 제한 값을 초과하지 않는다(스텝 S3; 아니오).
그 소프트웨어 프로그램의 활성화 동안, 마이크로컴퓨터에서 비정상적인 동작이 발생할 경우, CPU1은 앞의 절차들을 수행하지 않는다. 그러므로, 계수된 값은 제한 값을 초과한다(스텝 S3; 예).
그 계수된 값이 제한 값을 초과할 경우, 계수기(11)는 오버플로 신호(105)를출력 제어 신호(12)에 출력한다. 오버플로 신호(105)에 응답하여, 출력 제어 신호(12)는 CPU1 및 제어 레지스터(13)에 리셋 신호(110)를 출력한다.
출력 제어 회로(12)로부터의 리셋 신호(110)에 응답하여, CPU(1)는 내부 리셋팅을 실행한다. 제어 레지스터(13)는 리셋(110)(리셋 신호(102))에 응답하여 초기화 된다(단계 S4). 이에 따라, 단계 S2의 상술한 과정이 실시된다.
내부 리셋팅(internal resetting)(초기 처리)에서, CPU(1)은 메모리(2) 내에 저장된 소프트웨어 프로그램을 재활성화 한다. 초기화된 제어 레지스터(13)는 상술한 바와 같이, WDT(10)를 리셋 모드로 설정하기 위해 동작 제어 신호(107)를 계수기(11)에 출력한다.
마이크로컴퓨터가 정상적으로 동작하는 경우, 상술한 바와 같이, CPU(1)는 제어 레지스터(13)에 리셋 신호(102), 데이터(103) 및 기록 인에이블 신호(104)를 출력한다.
제어 레지스터(13)는 리셋 신호(102), 데이터(103) 및 기록 인에이블 신호(104)에 따라 WDT(10)의 동작 모드를 설정한다(단계 S5).
WDT(10)의 동작 모드가 정지 모드인 경우(단계 S5; 정지), 계수기(11)는 제어 레지스터(13)로부터 공급된 정지 제어 신호(106)에 응답하여 클록(101)의 펄스들을 계수하는 것을 정지한다(단계 S6).
WDT(10)의 동작 모드가 리셋 모드인 경우(단계 S5; 리셋), 계수기(11)는 제어 레지스터(13)로부터 공급된 동작 제어 신호(107)에 응답하여 계수된 값을 클리어하고, 발진 회로(3)로부터 공급된 클록(101)의 펄스들을 계수한다(단계 S7).
WDT(10)의 동작 모드가 설정된 후에라도, CPU(1)는 소프트웨어 프로그램의 명령들에 따라, 제어 레지스터(13)에 계수된 값을 클리어하기 위한 리셋 신호(102)를 출력한다. 이때, 제어 레지스터(13)는 리셋 신호(102)에 응답하여 초기화된다. 그러므로, CPU(1)는 리셋 신호(102)와 함께 WDT(10)의 동작 모드를 유지시키기 위한 데이터(103) 및 기록 인에이블 신호(104)를 제어 레지스터(13)에 출력한다.
마이크로컴퓨터가 정상적으로 동작하는 동안, CPU(1)는 상기 과정을 반복하여, 계수된 값이 한계값(limit value)을 초과하지 않게 된다(단계S8; 아니오).
반대로, 마이크로컴퓨터에서 발생하는 비정상적인 동작이 있는 경우, CPU(1)는 상기 과정들을 실시하지 않는다. 그러므로, 계수된 값이 한계값을 초과한다(단계 S8; 예).
계수된 값이 한계값을 초과하는 경우, 계수기(11)는 오버플로 신호(105)를 출력 제어 회로(12)에 출력한다. 오버플로 신호(105)에 응답하여, 출력 제어 회로(12)는 리셋 신호(110)를 CPU(1) 및 제어 레지스터(13)에 출력한다. 이러한 결과로서, 단계(S4)의 상술한 과정이 실시된다.
마이크로컴퓨터가 정상적으로 동작하는 경우, 제어 레지스터(13)는 CPU(1)로부터 공급된 리셋 신호(102)에 응답하여 동작 제어 신호(107)를 계수기에 출력한다. 그 후에, 계수기(11)는 계수된값(단계 S9)을 클리어하고, 그 흐름은 단계(S7)의 과정으로 복귀한다.
단계(S5)에서 설정된 WDT(10)의 동작 모드가 NMI 모드(단계 S5; NMI)인 경우, 계수기(11)는 제어 레지스터(13)로부터 공급된 동작 제어 신호(107)에 응답하여 계수된 값을 클리어하고, 발진기 회로(3)로부터 공급된 클록(101)의 펄스들을 계수한다(단계 S10).
상술한 바와 같이, WDT(10)의 동작 모드가 설정된 후에도, CPU(1)는 소프트웨어 프로그램에 따라 WDT(10)의 동작 모드를 유지하기 위한 기록 인에이블 신호(104) 및 데이터(103)와 계수된 값을 클리어하기 위한 리셋 신호(102)를 제어 레지스터(13)에 출력한다.
마이크로컴퓨터가 정상적으로 동작하는 동안, CPU(1)는 상기 과정들을 반복하고, 계수된 값이 한계값을 초과하지 않는다(단계 S11; 아니오).
마이크로컴퓨터 내에 발생하는 비정상적인 동작이 있는 경우, CPU(1)는 상기 과정들을 실시하지 않는다. 그러므로, 계수된 값은 한계값을 초과한다(단계 S11; 예).
계수된 값이 한계값을 초과하는 경우, 계수기(11)는 상기와 마찬가지로, 출력 제어 회로(12)에 오버플로 신호(over-flow signal; 105)를 출력한다. 오버플로 신호(105)에 응답하여, 출력 제어 회로(12)는 NMI 신호(111)를 CPU(1)에 출력한다. 이에 따라, CPU(1)는 소정의 NMI 처리를 실행한다(단계 S12).
마이크로컴퓨터가 정상적으로 동작하는 경우, 제어 레지스터(13)는 CPU(1)로부터 공급된 리셋 신호(102)에 응답하여, 동작 제어 신호(107)를 계수기(11)에 출력한다. 이에 따라, 계수기(11)는 계수된 값을 클리어하고(단계 S13), 그 흐름은 단계 S10의 과정으로 복귀한다.
따라서, WDT(10)은 CPU(1)에 의해 출력된 리셋 신호(102)뿐만 아니라 마이크로컴퓨터(CPU(1))를 리셋하는 리셋 신호들(102, 110)에 응답하여 동작한다. 바꾸어 말하면, WDT(10)은 마이크로컴퓨터(CPU(1))가 초기 처리(리셋 처리)를 시작하는 동기화에서 동작하기 시작한다. 이와 같이, 소프트웨어 프로그램의 활성화 동안 마이크로컴퓨터에서 발생하는 비정상적인 동작이 있을지라도, WDT(10)는 마이크로컴퓨터의 동작을 정상 상태로 다시 설정할 수 있다.
도 5에 도시된 바와 같이, 전원 내의 잡음(N11)은 마이크로컴퓨터의 비정상적인 동작을 유발한다. 마이크로컴퓨터가 정상적으로 동작하지 않는 경우, CPU(1)는 리셋 신호(102)를 출력하지 않으며, 계수된 값이 한계값(C12)에 도달한다.
상술한 바와 같이, 계수된값이 한계값을 초과하면, 출력 제어 회로(12)는 CPU(1) 및 제어 레지스터(13)에 리셋 신호(110)를 출력한다. 이에 따라, CPU(1)는 내부 리셋팅을 시작하며, 계수기(11)는 계수된값을 클리어하고(C13) 클럭(101)의 펄스들을 계속 계수한다.
잡음(N11)이 내부 리셋팅의 시작 후에도 전원 내에 남아 있다면, 마이크로컴퓨터의 비정상적인 동작이 다시 발생한다. 그러므로, 계수된 값은 한계값에 다시 도달한다(C14).
이와 마찬가지로, 내부 리셋팅이 시작되고, 계수된값이 클리어된다(C15). 이때, 잡음(N11)이 그로부터 제거되면, 마이크로컴퓨터는 정상적으로 동작하므로, 내부 리셋팅을 완료한다. 또한, 계수된값이 한계값에 도달하기 전에 클리어된다.
따라서, WDT(10)는 내부 리셋팅(또는 외부 리셋팅)의 시작 후에 즉시 기능을 한다. 그러므로, WDT(10)는 내부 리셋팅(또는 외부 리셋팅)의 시작후에 즉시 마이크로컴퓨터에서 발생한 비정상적인 동작을 검출할 수 있다. 결과적으로, 마이크로컴퓨터의 동작들은 정상 상태로 다시 설정될 수 있다.
비정상적인 동작이 마이크로컴퓨터에서 발생하는 경우, 에러 데이터(103) 및 에러 기록 인에이블 신호(104)는 CPU(1)로부터 제어 레지스터(13)에 제공될 수 있다.
상술한 바와 같이, WDT(10)의 동작 모드는 데이터(103) 및 기록 인에이블 신호(104)에 따라 설정된다. 그러므로, 비정상적인 동작이 마이크로컴퓨터에서 발생한 경우, WDT(10)의 동작 모드는 또 다른 동작 모드로 의도하지 않게 스위칭될 수도 있다.
WDT(10)의 동작 모드가 정지 모드로 스위칭되면, 마이크로컴퓨터의 비정상적인 동작이 검출될 수 없다. 바꾸어 말하면, 마이크로컴퓨터는 정상 동작 상태로 되돌릴 수 없다.
상기 문제들을 회피하기 위해, 제어 레지스터(13)는 WDT(10)의 동작 모드를 설정한 후에 기록 인에이블 신호(104)를 비활성으로 설정하는 회로를 포함할 수 있다.
설명들은 도 3a에 도시된 제어 플래그(control flag)에 포함된 리셋 모드 플래그(비트값(B0))를 설정하기 위한 플래그 설정 회로의 예로 구성된다.
도 6에 도시된 바와 같이, 플래그 설정 회로는 제 1 플립-플롭(F/F; 21), 제 2 F/F(22), 제 1 인버터(23), 제 2 인버터(24), 제 1 AND 게이트(25) 및 제 2 AND 게이트(26)를 포함한다.
리셋 신호(102)는 제 1 및 제 2 F/F(21, 22) 각각의 리셋 단자들에 입력된다.
데이터(103)는 제 1 인버터(23)에 의해 반전되어 제 2 인버터(24)에 의해 다시 반전되며, 그 후에, 제 1 F/F(21)의 데이터 입력 단자에 입력된다. 제 1 인버터(23)에 의해 반전되고 있는 데이터(103)는 제 2 F/F(22)의 데이터 입력 단자에 입력된다.
기록 인에이블 신호(104)는 제 1 AND 게이트(25)에 입력된다. 제 1 AND 게이트(25)는 기록 인에이블 신호(104)와 제 2 AND 게이트(26)로부터 출력된 신호의 반전 신호의 논리적인 곱을 제 1 F/F(21) 및 제 2 F/F(22) 각각의 클록 단자들로 출력한다. 이러한 경우, 제 1 F/F(21)의 클록 단자가 제 1 AND 게이트(25)로부터 반전되어 출력되는 신호를 수신하고, 제 1 F/F(22)의 클록 단자가 제 1 AND 게이트(25)로부터 나온 신호를 수신하는 것을 주목한다.
제 1 F/F(21, 22)의 출력 신호들은 제 2 AND 게이트(26)에 입력된다. 제 1 F/F(21)의 출력 신호는 제 2 AND 게이트(26)에 반전되어 입력되며, 제 2 F/F(22)의 출력 신호는 그대로 제 2 AND 게이트(26)에 입력된다.
리셋-모드 플래그(비트값(B0))는 제 1 F/F(21)의 출력 신호에 기초하여 설정된다.
상기 구조에 따라, 제 1 F/F(21) 및 제 2 F/F(22)는 리셋 신호(102)에 따라 리셋된다. 제 1 F/F(21) 및 제 2 F/F(22)이 리셋되고, 제 1 F/F(21) 및 제 2 F/F(22)의 출력들은 "0"일 것이다. 이러한 경우, 제 2 AND 게이트(26)의 출력은"0"이고, 기록 인에이블 신호(104)가 유효하다.
그러한 환경에서, 기록 인에이블 신호(104)의 상승 에지(rising edge)가 제 1 AND 게이트(25)에 입력되면, 제 1 F/F(21)로부터 출력된 신호의 레벨은 이러한 상승 에지의 입력 타이밍과 동기하여, 데이터(103)의 레벨로 설정된다.
WDT(10)가 리셋 모드로 설정되는 경우, F/F(21)의 출력은 "0"으로 설정된다. 이러한 경우, 제 2 F/F(22)의 출력은 "1"이고, 제 2 AND 게이트(26)의 출력은 "1"이 될 것이다. 그 후에, 기록 인에이블 신호(104)는 무효하게 될 것이다.
제어 레지스터(13)가 WDT(10)의 동작 모드를 세팅 즉, 제어 플래그를 세팅한 후 무효한 기록 가능 신호(104)를 세팅하는 상술한 회로를 포함하는 구조에 있어서, WDT(10)의 동작 모드가 마이크로컴퓨터의 오동작의 결과로 다른 모드로 전환되는 것이 방지될 수 있다.
제 2 실시예
지금부터, 본 발명의 제 2 실시예에 따른 WDT에 대해 첨부도면을 참조로 설명한다.
제 1 실시예와 마찬가지로, 제 2 실시예에 따른 WDT는 마이크로컴퓨터에 통합되어 있고 복수의 동작 모드들을 갖고 있다.
제 1 실시예와는 마찬가지로, 마이크로컴퓨터는 제 2 실시예에 따른 CPU(1), 메모리(2), 발진 회로(3) 및 WDT(30)를 포함한다.
도 7 에 도시된 바와 같이, WDT(30)는 계수기(31), 출력 제어 회로(32), 제어 레지스터(33), 비교 레지스터(34), 비교 회로(35), 홀딩 회로(36) 및 AND 게이트(37)를 포함한다. WDT(30)은 터미널(T7 내지 T12)을 갖고, CPU(1) 및 발진 회로(3)에 접속되어 있다.
계수기(31), 출력 제어 회로(32) 및 제어 레지스터(33)는 제 1 실시예의 WDT(10)에 포함된 계수기(11), 출력 제어 회로(12) 및 제어 레지스터(13)와 실질적으로 동일하다. 그러나, 계수기(31)는 계수된 값을 비교 회로(35)에 출력한다.
비교 레지스터(34)는 예정된 한계값 보다 작고 비교 회로(35)에 임계값을 나타내는 신호를 출력하는 임계값을 저장한다.
비교 회로(35)는 계수기(31)로부터 보내진 계수된 값과 비교 레지스터(34)에서 보내진 임계값을 비교한다. 비교 회로(35)는 홀딩 회로(36)에 비교의 결과를 출력한다. 특히, 비교 회로(35)는 계수된 값이 임계값보다 작으면 "0"을 출력하고, 계수된 값이 임계값보다 같거나 크면, "1"을 출력한다.
홀딩 회로(36)는 비교 회로(35)의 출력을 보유하고, AND 게이트(37)로 보유된 출력을 출력한다. 이때, 홀딩 회로(35)의 출력은 역전된 다음, AND 게이트(37)로 입력된다.
AND 게이트(37)는 CPU(1)로부터 제공된 기록 인에이블 신호(104)의 논리 결과 및 홀딩 회로(36)로부터 제공된 신호의 역 신호(reverse signal)를 제어 레지스터(33)에 출력한다.
상기 구성에 따르면, 계수된 값이 임계값 이상이면, CPU(1)로부터 제공된 기록 인에이블 신호(104)는 무효가 될 것이다. 즉, 계수된 값이 임계값에 이를 때까지 계수된 값은 클리어되기 때문에 소정의 허용 가능한 기간이 경과되면, 기록인에이블 신호(401)는 제어 레지스터(33)에 제공되지 않을 것이다. 따라서, WDT(30)의 동작 모드가 설정되기 이전에도, 마이크로컴퓨터의 비정상 동작의 결과로서 WDT(30)의 동작 모드가 다른 모드로 스위치되는 것이 확실히 방지될 수 있다. 이로써, 마이크로컴퓨터의 동작은 당연히 검출될 수 있다.
이제, 마이크로컴퓨터의 비정상 동작 모드를 검출하기 위한 마이크로컴퓨터의 동작들에 대해 도 8을 참조하여 기술하기로 한다.
메모리(2)에 저장된 소프트웨어 프로그램의 활성화 동안에 실행되는 절차들(단계 S21 내지 S24)은 제 1 실시예에서 설명된 것들과 실질적으로 동일하다. 그러나, 상술한 바와 같이 소정의 허용가능한 기간이 경과되면 CPU(1)로부터 제공된 기록 인에이블 신호(104)가 무효로 된다는 것을 유의한다.
앞서 설명한 바와 같이, 마이크로컴퓨터가 정상 동작을 하는 경우에, CPU(1)는 활성화된 소프트웨어 프로그램의 설정에 따라서 WDT(30)의 동작 모드를 설정한다.
소정의 허용가능한 기간이 경과한 후에, 기록 인에이블 신호(104)는 무효로 된다. 따라서, CPU(1)는 리셋 신호(102)를 제어 레지스터(33)에 출력하여 기록 인에이블 신호(104)를 유효로 설정하고, 따라서 계수된 값을 제어한다(단계S25).
계수된 값이 클리어되면, 즉 계수된 값이 임계값보다 작으면, 비교 회로(35)는 "0"을 홀딩 회로(36)에 출력한다. 이로써, 기록 인에이블 신호(104)는 유효로 된다.
CPU(1)는 활성화된 소프트웨어 프로그램에 따라서 WDT(30)의 동작 모드를 설정하기 위하여 기록 인에이블 신호(104) 및 데이터(103)를 제어 레지스터(33)에 출력한다.
제어 레지스터(33)는 제 1 실시예의 경우와 마찬가지로 데이터(103) 및 기록 인에이블 신호(104)에 따라서 WDT(30)의 동작 모드를 설정한다(단계 S26).
WDT(30)의 동작 모드가 설정된 이후, 이러한 절차들(단계S27 내지 S34)은 제 1 실시예의 것들과 실질적으로 동일하다. 그러나, 미리 결정된 허용가능한 기간이 경과하면, CPU(1)로부터 제공된 기록 인에이블 신호(104)는 상술한 바와 같이, 무효가 될 것이다.
따라서, 기록 인에이블 신호(104)의 주기를 효과적으로 설정함으로써, 즉, WDT(30)의 동작 모드가 설정될 수 있는 시간 기간을 설정함으로써, WDT(30)의 동작 모드가 마이크로컴퓨터의 비정상적인 동작의 결과로서 다른 모드에 스위칭되는 것이 확실히 회피될 수 있다.
제 1 실시예와 마찬가지로, WDT(30)는 CPU(1)에 의해 출력된 리셋 신호(102)뿐만 아니라, 마이크로컴퓨터(CPU1)를 리셋하기 위한 리셋 신호들(102,110)에 따라 동작할 수 있다. 따라서, 소프트웨어 프로그램의 동작 동안 마이크로컴퓨터에서 비정상적인 동작이 발생할 때조차도, WDT(30)는 마이크로컴퓨터의 동작을 정상상태로 다시 설정할 수 있다.
WDT(30)에 포함된 제어 레지스터(33)는 제 1 실시예에서 설명한 플래그 세팅 회로를 포함한다.
본 발명의 장치는 전용 시스템을 필요로하지 않고 범용 컴퓨터에 의해 실현될 수 있다. 상술한 절차들을 실시하도록 컴퓨터를 제어하는 프로그램 및 데이터는 매체(플로피 디스크, CD-ROM, DVD 등) 상에 기록 및 배포될 수 있고, 프로그램은 컴퓨터로 인스톨될 수 있고 상술한 처리들을 실시하기 위해 OS(운영체제)상에 실현될 수 있어서, 본 발명의 장치를 달성한다. 상술한 프로그램 및 데이터는 인터넷 상의 서버장치의 디스크 장치 등에 저장될 수 있고, 반송파에 삽입될 수 있다. 반송파에 삽입된 프로그램 및 데이터는 본 발명의 장치를 실현하기 위해 컴퓨터로 다운로드될 수 있다.
본 발명의 정신 및 범위를 벗어나지 않고 다양한 실시예 및 변경들이 이루어질 수 있다. 상술한 실시예들은 본 발명을 설명하기 위해 의도되었지, 본 발명의 범위를 제한하는 것은 아니다. 본 발명의 범위는 실시예들 보다는 오히려 첨부된 청구항들에서 알 수 있다. 본 발명의 청구항과 동일한 의미 내에서, 그리고 본 발명의 정신 내에서 이루어진 청구항들 내에서 다양한 수정들이 이루어질 수 있다.
본 발명은 컴퓨터의 비정상 동작을 검출하기 위한 감시 타이머(watchdog timer) 및 방법, 및 컴퓨터의 비정상 동작을 검출하기 위한 감시 타이머를 포함하는 컴퓨터를 제공한다.

Claims (18)

  1. 컴퓨터에 있어서,
    리셋 신호(102, 110)에 응답하여, 리셋 처리를 실행하는 제어기(1)와,
    클록(101)을 발진하는 발진기(3), 및
    상기 클록(101)의 펄스들을 계수함으로써 얻어진 계수된 값이 소정 한계값을 초과하는 경우에, 상기 클록(101)의 펄스들을 계수하고, 상기 리셋 신호(110)를 상기 제어기에 출력하는 타이머(10, 30)를 포함하고,
    상기 제어기(1)는 상기 타이머(10, 30)를 제어하고, 상기 계수된 값이 상기 한계값을 초과하기 전에 상기 계수된 값을 클리어하고,
    상기 타이머(10, 30)는 상기 제어기(1)가 상기 리셋 처리를 시작하는 것과 동기하여 상기 클록(101)의 상기 펄스들을 계수하기 시작하고, 그럼으로써 상기 리셋 처리의 실행 중 상기 컴퓨터에서 일어나는 비정상 동작을 검출하는, 컴퓨터.
  2. 제 1 항에 있어서,
    상기 타이머(10, 30)는 복수의 동작 모드들을 가지는, 컴퓨터.
  3. 제 2 항에 있어서,
    상기 제어기(1)는 상기 타이머(10, 30)의 동작 모드를 특정하기 위한 모드 특정 신호(103, 104)를 상기 타이머(10, 30)에 출력하고,
    상기 타이머(10, 30)는 상기 모드 특정 신호(103, 104)에 따라 그 동작 모드를 설정하는, 컴퓨터.
  4. 제 3 항에 있어서,
    상기 타이머(10, 30)는 상기 타이머(10, 30)의 상기 동작 모드의 설정에 응답하여 효과가 없는 상기 제어기(1)로부터 전송된 상기 모드 특정 신호(104)를 설정하는 회로를 구비하는, 컴퓨터.
  5. 제 3 항에 있어서,
    상기 타이머(30)는 상기 제어기(1)로부터 제공된 상기 모드 특정 신호(104)가 받아들여 질 수 있는 허용가능한 기간을 제한하는 제한 회로(34, 35, 36, 37)를 더 구비하는, 컴퓨터.
  6. 제 4 항에 있어서,
    상기 타이머(30)는 상기 제어기(1)로부터 제공된 상기 모드 특정 신호(104)가 받아들여 질 수 있는 허용가능한 기간을 제한하는 제한 회로(34, 35, 36, 37)를 더 구비하는, 컴퓨터.
  7. 감시 타이머에 있어서,
    계수된 값을 클리어하도록 지정하고 외부 회로(1)로부터 공급되는 클리어 신호(102)에 응답하여, 발진기(3)에 의해 발생된 클록(101)의 펄스들을 계수하고, 상기 펄스들의 계수된 값을 클리어하는 계수기(11, 13, 31, 33)와,
    상기 계수된 값이 소정 한계값을 초과하는 경우에, 리셋 처리를 실행하도록 지정하는 리셋 신호(110)를 상기 외부 회로(1)에 출력하는 출력 회로(12, 32)를 포함하고,
    상기 출력 회로(12, 32)로부터 출력된 상기 리셋 신호(110)에 응답하여, 상기 계수기(11,13, 31, 33)는 상기 계수된 값을 클리어하고 상기 클록(101)의 상기 펄스들을 계수하기 시작하고, 그럼으로써 상기 리셋 처리의 실행 중 상기 외부 회로(1)에서 일어나는 비정상 동작을 검출하는, 감시 타이머.
  8. 제 7 항에 있어서,
    상기 감시 타이머는 복수의 동작 모드들을 가지는, 감시 타이머.
  9. 제 8 항에 있어서,
    상기 동작 모드를 특정하고 상기 외부 회로(1)로부터 제공된 모드 특정 신호(103, 104)에 따라, 상기 감시 타이머의 동작 모드를 설정하는 모드 설정 회로(13, 33)를 더 구비하는, 감시 타이머.
  10. 제 9 항에 있어서,
    상기 감시 타이머의 상기 동작 모드의 설정에 응답하여, 유효하지 않게 상기외부 회로(1)로부터 전송된 상기 모드 특정 신호(104)를 설정하는 회로를 더 구비하는, 감시 타이머.
  11. 제 9 항에 있어서,
    상기 외부 회로(1)로부터 제공되는 모드 특정 신호(104)가 받아들여지는 허용가능한 기간을 제한하는 제한 회로(34, 35, 36, 37)를 더 구비하는, 감시 타이머.
  12. 제 10 항에 있어서,
    상기 외부 회로(1)로부터 제공되는 모드 특정 신호(104)가 받아들여지는 허용가능한 기간을 제한(restrict)하는 제한 회로(34, 35, 36, 37)를 더 구비하는, 감시 타이머.
  13. 비정상 동작 검출 방법에 있어서,
    발진기(3)에 의해 발생된 클록(101)의 펄스들을 계수하는 단계,
    외부 회로(1)로부터 제공되는 계수된 값을 클리어하도록 지정하는 클리어 신호(102)에 응답하여 펄스들의 계수된 값을 클리어하는 단계,
    계수된 값이 소정의 한계값을 초과할 경우, 리셋 처리를 실행하도록 상기 외부 회로(1)를 제어하는 단계를 포함하고,
    상기 계수 단계는 상기 외부 회로가 상기 리셋 처리를 시작하는 것과 동기하여 클록(101)의 펄스들을 계수함으로써, 리셋 처리의 실행 중 상기 외부 회로(1)에서 발생하는 비정상적인 동작을 검출하는 단계를 포함하는, 비정상 동작 검출 방법.
  14. 제 13 항에 있어서,
    상기 검출 방법들은 다수의 모드들을 포함하는, 비정상 동작 검출 방법.
  15. 제 14 항에 있어서, 상기 외부 회로(1)로부터 제공되고 상기 모드를 특정하는 모드 특정 신호(103, 104)에 따라서 검출 모드를 설정하는 단계를 더 포함하는, 비정상 동작 검출 방법.
  16. 제 15 항에 있어서, 상기 모드의 설정에 응답하여, 유효하지 않게 상기 외부 회로(1)로부터 제공되는 상기 모드 특정 신호(104)를 설정하는 단계를 더 포함하는, 비정상 동작 검출 방법.
  17. 제 15 항에 있어서, 상기 외부 회로(1)로부터 제공된 모드 특정 신호(104)가 받아들여질 수 있는 허용가능한 기간을 제한하는 단계를 더 포함하는, 비정상 동작 검출 방법.
  18. 제 16 항에 있어서, 상기 외부 회로(1)로부터 제공되는 모드 특정 신호(104)가 받아들여질 수 있는 허용가능한 기간을 제한하는 단계를 더 포함하는, 비정상 동작 검출 방법.
KR1020010082818A 2000-12-22 2001-12-21 컴퓨터의 비정상 동작을 검출하기 위한 감시 타이머 및방법, 및 감시 타이머를 포함하는 컴퓨터 KR20020051882A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2000390716A JP2002189614A (ja) 2000-12-22 2000-12-22 ウォッチドッグタイマとそれを内蔵したマイクロコンピュータ及びマイクロコンピュータの暴走防止制御方法
JPJP-P-2000-00390716 2000-12-22

Publications (1)

Publication Number Publication Date
KR20020051882A true KR20020051882A (ko) 2002-06-29

Family

ID=18857027

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020010082818A KR20020051882A (ko) 2000-12-22 2001-12-21 컴퓨터의 비정상 동작을 검출하기 위한 감시 타이머 및방법, 및 감시 타이머를 포함하는 컴퓨터

Country Status (4)

Country Link
US (1) US6948103B2 (ko)
EP (1) EP1217522A3 (ko)
JP (1) JP2002189614A (ko)
KR (1) KR20020051882A (ko)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3636031B2 (ja) * 2000-04-28 2005-04-06 株式会社デンソー 電子制御装置内のマイクロコンピュータ監視方法
US6892332B1 (en) * 2001-11-01 2005-05-10 Advanced Micro Devices, Inc. Hardware interlock mechanism using a watchdog timer
JP2003150408A (ja) * 2001-11-15 2003-05-23 Sumitomo Denko Brake Systems Kk 車載制御装置用マイクロコンピュータの監視方法及び回路
DE10203807C1 (de) * 2002-01-31 2003-07-31 Siemens Ag Verfahren und Schaltungsanordnung zum Überwachen der Funktion eines Prozessors
US7689875B2 (en) * 2002-04-25 2010-03-30 Microsoft Corporation Watchdog timer using a high precision event timer
US20040250178A1 (en) * 2003-05-23 2004-12-09 Munguia Peter R. Secure watchdog timer
DE102004027496A1 (de) * 2004-06-04 2005-12-22 Conti Temic Microelectronic Gmbh Elektronisches Bauteil
JP2007228765A (ja) * 2006-02-24 2007-09-06 Fuji Electric Fa Components & Systems Co Ltd 時間計数機能付インバータ装置
KR100824792B1 (ko) * 2006-07-11 2008-04-24 삼성전자주식회사 커맨드 처리 장치와 방법 및 이를 포함하는 시스템
US20080016385A1 (en) * 2006-07-13 2008-01-17 Hollingsworth Robert E Plain Language Announcement of Diagnostic and Troubleshooting Information for Users
KR101172387B1 (ko) 2006-09-12 2012-08-08 주식회사 만도 직렬 주변장치 인터페이스 통신을 이용한 마이크로제어장치의 계산 오류 검사장치
US7783872B2 (en) * 2007-03-30 2010-08-24 Dell Products, Lp System and method to enable an event timer in a multiple event timer operating environment
CN101685651B (zh) * 2008-09-24 2013-02-13 上海国宽信息科技有限公司 一种用于车载播放器的看门狗复位电路
CN101895440B (zh) * 2010-07-22 2012-07-04 北京天融信科技有限公司 一种安全网关及其故障检测方法
US8832505B2 (en) * 2012-06-29 2014-09-09 Intel Corporation Methods and apparatus to provide failure detection
CN103530197B (zh) * 2013-10-29 2017-06-13 浙江宇视科技有限公司 一种检测及解决Linux系统死锁的方法
JP7304731B2 (ja) * 2019-04-16 2023-07-07 ローム株式会社 ウォッチドッグタイマ
CN113342572B (zh) * 2021-06-08 2022-11-29 深圳市航顺芯片技术研发有限公司 一种看门狗自动重载系统、方法、设备及存储介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3207120A1 (de) 1982-02-27 1983-09-08 Felten & Guilleaume Fernmeldeanlagen GmbH, 8500 Nürnberg Ueberwachungsschaltung fuer einen mikrocomputer
JPS6162947A (ja) 1984-09-04 1986-03-31 Kubota Ltd コンピユ−タの暴走防止方法
JPS61296443A (ja) 1985-06-24 1986-12-27 Mitsubishi Electric Corp ウオツチドツグ・タイマ
JPS6341951A (ja) 1986-08-07 1988-02-23 Sanyo Electric Co Ltd マイクロコンピユ−タ
US4866713A (en) * 1987-11-02 1989-09-12 Motorola, Inc. Operational function checking method and device for microprocessors
US5541943A (en) * 1994-12-02 1996-07-30 At&T Corp. Watchdog timer lock-up prevention circuit
US5864663A (en) * 1996-09-12 1999-01-26 United Technologies Corporation Selectively enabled watchdog timer circuit
US6260162B1 (en) * 1998-10-31 2001-07-10 Advanced Micro Devices, Inc. Test mode programmable reset for a watchdog timer
US6560726B1 (en) * 1999-08-19 2003-05-06 Dell Usa, L.P. Method and system for automated technical support for computers

Also Published As

Publication number Publication date
US6948103B2 (en) 2005-09-20
JP2002189614A (ja) 2002-07-05
US20020083375A1 (en) 2002-06-27
EP1217522A3 (en) 2003-04-02
EP1217522A2 (en) 2002-06-26

Similar Documents

Publication Publication Date Title
KR20020051882A (ko) 컴퓨터의 비정상 동작을 검출하기 위한 감시 타이머 및방법, 및 감시 타이머를 포함하는 컴퓨터
US5473767A (en) Method and apparatus for asynchronously stopping the clock in a processor
JP3684590B2 (ja) リセット制御装置及びリセット制御方法
KR960003412B1 (ko) 컴퓨터 전력 관리 시스템
KR101283431B1 (ko) 마이크로 컴퓨터
US6038671A (en) Power management of a computer system using a power button
JP2006171952A (ja) 半導体集積回路装置
JP3264139B2 (ja) マイクロコンピュータの駆動装置
US20050223301A1 (en) Circuit for detection of internal microprocessor watchdog device execution and method for resetting microprocessor system
JPH04348410A (ja) マイクロコンピュータ
JPH08339308A (ja) デジタル処理装置
JPH11259340A (ja) コンピュータの再起動制御回路
JPH07334392A (ja) リセット装置及び異常動作検出装置
JPS6118021A (ja) デ−タ処理装置
JP2928418B2 (ja) 半導体集積回路
JPH0756774A (ja) ウォッチドッグタイマ
JP2007018545A (ja) ネットワークインターフェース
JP2906881B2 (ja) マイクロコンピュータ
JP3406418B2 (ja) 電源異常割込信号検出回路
JPH05257751A (ja) マイクロコンピュータ
JPH02166524A (ja) 割込み信号処理回路
JP2002236675A (ja) マイクロコンピュータおよびコンピュータシステム
JPH0922403A (ja) リセット制御機能付集積回路
KR19990008906U (ko) 워치독 타이머의 출력 제어 장치
JPH0883134A (ja) マイクロコンピュータ

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B601 Maintenance of original decision after re-examination before a trial
J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20040527

Effective date: 20051130

Free format text: TRIAL NUMBER: 2004101002269; TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20040527

Effective date: 20051130