JP4322606B2 - ウォッチドッグタイマ - Google Patents

ウォッチドッグタイマ Download PDF

Info

Publication number
JP4322606B2
JP4322606B2 JP2003323197A JP2003323197A JP4322606B2 JP 4322606 B2 JP4322606 B2 JP 4322606B2 JP 2003323197 A JP2003323197 A JP 2003323197A JP 2003323197 A JP2003323197 A JP 2003323197A JP 4322606 B2 JP4322606 B2 JP 4322606B2
Authority
JP
Japan
Prior art keywords
runaway
processing unit
latch circuit
program
control
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Lifetime
Application number
JP2003323197A
Other languages
English (en)
Other versions
JP2005092430A (ja
Inventor
敬士 高本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Schneider Electric Japan Holdings Ltd
Original Assignee
Digital Electronics Corp
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 Digital Electronics Corp filed Critical Digital Electronics Corp
Priority to JP2003323197A priority Critical patent/JP4322606B2/ja
Publication of JP2005092430A publication Critical patent/JP2005092430A/ja
Application granted granted Critical
Publication of JP4322606B2 publication Critical patent/JP4322606B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本発明は、ウォッチドッグタイマに関するものであり、特に、単一のカウンタによって複数の処理部のいずれかが暴走したことを検出可能であるにも拘わらず、暴走後に、いずれの処理部が暴走したかを特定可能なウォッチドッグタイマに関するものである。
従来から、正常に動作し続けることが強く要求されるシステム(例えば、制御システムなど)では、例えば、暴走からの復帰処理を行い、正常に動作し続けるために、プログラムの暴走を検出するウォッチドッグタイマを有する情報処理装置が広く使用されている。
図3に示すように、当該ウォッチドッグタイマ114では、カウンタ131が予め定められた時間間隔で自らのカウント値C131をカウントアップしており、比較器133は、当該カウント値C131と、時間設定レジスタ132に予め格納されたカウント値C132とを比較することによって、カウンタ131が前回リセットされてから、上記カウント値C132に対応するタイムアップ時間が経過したか否かを判定し、タイムアップ時間が経過した場合は、NMI(ノン・マスカブル・インタラプト)信号を、図示しないCPUへ出力する。
ここで、上記CPUによって実行されるプログラムαは、正常に動作している間中、上記タイムアップ時間よりも短い時間でクリア信号CLRをアクティブ(図3の例ではロー)にすることによって、上記カウンタ131を繰り返しリセットするようにプログラムされている。ところが、当該プログラムαが暴走してしまうと、上記カウンタ131をリセットできなくなるので、上記カウンタ131のカウント値C131がカウント値C132に到達し、ウォッチドッグタイマ114によって、NMI信号が出力される。
当該NMI信号が入力されると、上記CPUは、現在実行中の命令に拘わらず、暴走状態から復帰するためのプログラムを実行する。これにより、上記プログラムαが暴走している場合であっても、CPUは、何ら支障なく、復帰用のプログラムΩを実行でき、上記プログラムαを正常な状態に復帰させることができる。
さらに、後述の特許文献1では、システムの立ち上げ時と通常動作時とのように、適切なタイムアップ時間の互いに異なる状態のそれぞれにおいて適切なタイムアップ時間でプログラムの暴走を監視するために、立ち上げ時にクリア信号が与えられると、カウンタ131へ与えるクロック信号を生成する際の分周比を変更する構成が記載されている。
特開2001−306362号公報(公開日:2001年11月2日)
しかしながら、上記従来の構成では、少ない回路規模で、プログラムなどによって実現される複数の処理部の暴走を検出し、しかも、検出後にいずれの処理部が暴走したかを特定するという課題全てを解決することはできないという問題を生じる。
より詳細に説明すると、現在は、情報処理装置に要求される処理が複雑になり、上記CPUは、互いに独立した複数のプログラムを時分割で実行していることも多い。この場合は、これら複数のプログラムα…をウォッチドッグタイマ114が監視対象とすることが望まれる。
ところが、各プログラムα…毎にウォッチドッグタイマ114を設けると、必要なカウンタの数が増えてしまうので、回路規模の削減が求められる場合には、単一のカウンタによって、複数のプログラムα…の暴走を監視することが要求される。
ここで、監視対象とするプログラム毎にクリア端子を設け、各プログラムによるクリア信号を独立させると共に、全クリア信号が真の場合に、カウンタ131をリセットするように構成すれば、ウォッチドッグタイマ114は、各プログラムのいずれかが暴走したことを検出できるので、単一のカウンタで単一のプログラムの暴走を監視する構成に比べて回路規模を削減できる。
ところが、当該構成では、暴走を検出した後、いずれのプログラムが暴走したかを特定することができない。したがって、例えば、暴走したプログラムのみに対して復帰処理したり、暴走したプログラムを表示し、当該プログラムを集中的に検証して暴走の原因を特定するなど、暴走したプログラムに応じた処理を行うことができない。
本発明は、上記の問題点に鑑みてなされたものであり、その目的は、少ない回路規模で、複数の処理部の暴走を検出し、しかも、検出後にいずれの処理部が暴走したかを特定可能なウォッチドッグタイマを実現することにある。
本発明に係るウォッチドッグタイマは、上記課題を解決するために、予め定められたタイムアウト時間が経過すると暴走を示す出力信号を出力する計時手段を有するウォッチドッグタイマにおいて、監視対象に設定可能な処理部毎に設けられた複数のクリア端子と、監視対象となる処理部に対応するクリア端子全てにクリアを示す信号が入力された場合に上記計時手段をリセットするリセット手段と、上記クリア端子毎に設けられたラッチ回路およびラッチ回路制御手段とを備え、上記ラッチ回路制御手段は、上記計時手段が暴走を示す出力信号を出力し、しかも、上記クリア端子へクリアを示す信号が入力されていない場合、当該クリア端子に対応するラッチ回路をセットすると共に、上記暴走を示す出力信号とは独立したタイミングで印加されるリセット信号が入力されるまでの間、上記ラッチ回路に値を保持させることを特徴としている。
また、上記構成に加えて、上記各処理部を監視対象とするか否かを示す制御信号が入力される入力端子を備え、上記リセット手段は、当該入力端子への信号に基づいて、上記監視対象となる処理部を特定してもよい。
さらに、上記構成に加えて、上記ラッチ回路制御手段は、上記入力端子への入力信号が監視対象から外れていることを示している処理部に対応するラッチ回路をリセットしてもよい。
本発明に係るウォッチドッグタイマは、以上のように、上記計時手段、クリア端子、リセット手段、ラッチ回路およびラッチ回路制御手段を備えており、上記リセット手段は、監視対象となる処理部に対応するクリア端子全てにクリアを示す信号が入力された場合に上記計時手段をリセットする。したがって、上記タイムアウト時間が経過するまでの間に、監視対象となる処理部の全てが、正常に動作しており、それぞれに対応して設けられたクリア端子へクリアを示す信号を入力している間は、暴走を示す出力信号を出力していない。なお、上記処理部は、CPUなどの演算手段がROMやRAMなどに記憶されたプログラムを実行することによって実現できる。
一方、ある処理部が暴走すると、上記計時手段を前回リセットしてから上記タイムアウト時間が経過しても、当該処理部は、対応するクリア端子へクリアを示す信号を入力することができないので、計時手段は、暴走を示す出力信号を出力する。
これにより、ウォッチドッグタイマは、監視対象に応じた計時手段を設ける構成に比べて回路規模が縮小されているにも拘わらず、複数の処理部が暴走したか否かを検出できると共に、例えば、各処理部を正常動作に復帰させるプログラムによって実現される制御部など、暴走時に所定の処理を行うように設定された制御部へ、監視対象とする処理部の暴走を通知でき、当該制御部に処理部の暴走に対応した処理を実施させることができる。
さらに、上記構成では、各クリア端子に対応して、ラッチ回路が設けられており、ラッチ回路制御手段は、上記計時手段が暴走を示す出力信号を出力し、しかも、上記クリア端子へクリアを示す信号が入力されていない場合、当該クリア端子に対応するラッチ回路をセットすると共に、上記暴走を示す出力信号とは独立したタイミングで印加されるリセット信号が入力されるまでの間、上記ラッチ回路に値を保持させる。
これにより、各ラッチ回路は、暴走が検出されてから、上記リセット信号が入力されるまでの間、それぞれに対応する処理部が暴走していたか否かを示す値を出力できる。したがって、各ラッチ回路は、例えば、各ラッチ回路を参照して、各処理部が暴走しているか否かを判定して、暴走している処理部をユーザに提示したり、暴走している処理部のみに対して復帰処理を行したりする制御部など、暴走している処理部に応じた処理を行うように設定された制御部に、いずれの処理部が暴走しているかに応じた処理を実施させることができる。
また、本発明に係るウォッチドッグタイマは、以上のように、各処理部を監視対象とするか否かを示す制御信号が入力される入力端子を備えているので、当該入力端子へ印加する制御信号によって、監視対象に設定可能な処理部のうち、いずれの処理部を監視対象とするかを変更できる。
当該構成では、例えば、監視対象となる処理部の動作を変更して、自らに対応するクリア端子だけではなく、監視対象としていない処理部に対応するクリア端子をもクリアする場合とは異なり、監視対象となる処理部の動作を変更することなく、監視対象に設定可能な処理部のうち、いずれの処理部を監視対象とするかを変更できる。したがって、容易に監視対象を変更可能なウォッチドッグタイマを実現できる。
さらに、本発明に係るウォッチドッグタイマは、以上のように、上記ラッチ回路制御手段は、監視対象から外れている処理部に対応するラッチ回路をリセットするので、各ラッチ回路の出力のうち、出力がセットされているラッチ回路は、暴走が検出された処理部に対応するラッチ回路のみになる。したがって、監視対象としないラッチ回路の出力が不定になる構成と比較して、暴走が検出された処理部のみを的確に通知可能なウォッチドッグタイマを実現できる。
本発明の一実施形態について図1および図2に基づいて説明すると以下の通りである。すなわち、本実施形態に係る情報処理装置1は、ウォッチドッグタイマによって、プログラムの暴走を検出可能な装置であって、図2に示すように、監視対象としての第1および第2プログラム処理部11・12と、両プログラム処理部11・12が正常に動作している場合、各プログラム処理部11・12によって、予め定められたタイムアップ時間よりも短い時間で正常を示す値が繰り返し書き込まれる制御レジスタ13と、前回正常を示す値が書き込まれてから当該タイムアップ時間が経過しているにも拘わらず、当該制御レジスタ13に正常を示す値が書き込まれていない場合、監視対象としているプログラム処理部のいずれかが暴走していると判断するウォッチドッグタイマ14と、当該ウォッチドッグタイマ14から暴走を検出したことが通知されると、例えば、各プログラム処理部11・12を初期化するなど、予め定められた処理を行う制御部15とを備えている。なお、上記両プログラム処理部11・12が特許請求の範囲に記載の処理部に対応する。
また、上記タイムアップ時間は、各プログラム処理部11・12がクリアを示す値を書き込む周期の変動を考慮して、当該周期よりも充分に長く設定されている。なお、これらの時間および周期は、用途に応じて種々の値が選択されるが、本実施形態では、一例として、タイムアップ時間が1〔s〕、繰り返しの周期が10〔ms〕に設定されている。
ここで、上記第1および第2プログラム処理部11・12および制御部15は、CPUなどの演算手段が、ROMやRAMなどの記憶手段に格納されたプログラムを実行し、必要に応じて、タッチパネルや液晶表示装置などの入出力手段、あるいは、インターフェース回路などの通信手段を制御することによって実現される機能ブロックであって、上記第1および第2プログラム処理部11・12は、例えば、メモリ領域やI/O領域など、CPUなどの演算手段がアクセス可能な領域に割り当てられた上記制御レジスタ13へ、正常を示す値を繰り返し書き込んでいる。また、上記ウォッチドッグタイマ14は、例えば、NMI(ノン・マスカブル・インタラプト)信号などの割り込み信号によって、暴走の発生をCPUなどの演算手段へ通知し、当該演算手段は、現在実行している命令に拘わらず、上記制御部15を実現するためのプログラムを実行する。これにより、制御部15は、第1および第2プログラム処理部11・12が暴走している場合であっても、何ら支障なく動作できる。
さらに、本実施形態に係る情報処理装置1のウォッチドッグタイマ14には、監視対象とするプログラム処理部11・12毎に異なる記憶領域が設けられた状態レジスタ16をが設けられており、上記ウォッチドッグタイマ14は、監視対象としているプログラム処理部11・12のいずれかが暴走していると検出した時点に、状態レジスタ16の各記憶領域に、各プログラム処理部11・12の暴走を検出しているか否かを書き込むことができる。また、上記状態レジスタ16は、制御部15が上記所定の処理を行っている間も、記憶されている値を保持するように構成されており、上記制御部15は、ウォッチドッグタイマ14から暴走検出通知を受け取った後、状態レジスタ16の値(後述するWDT1P・WDT2P)を参照して、プログラム処理部11・12のいずれが暴走しているかを判定でき、暴走しているプログラム処理部11・12に応じた処理を行うことができる。
以下では、一例として、上記第1および第2プログラム処理部11・12のいずれかが暴走していることを検出するモードとは別に、第1プログラム処理部11の暴走のみを検出するモード、および、第2プログラム処理部12の暴走のみを検出するモードを情報処理装置1が持っている場合の構成について、図1を参照しながら、詳細に説明する。なお、以下では、説明の便宜上、それぞれを、第3、第1および第2モードと称する。
本実施形態に係る制御レジスタ13には、第1プログラム処理部11の暴走を監視するか否かを記憶するビット領域B1と、第2プログラム処理部12の暴走を監視するか否かを記憶するビット領域B2とが設けられており、制御部15は、ウォッチドッグタイマ14を第1モードに設定する場合、領域B1の値のみを真に設定する。また、制御部15は、第2モードあるいは第3モードに設定する場合、それぞれ、領域B2の値のみ、および、両領域B1・B2の値を真に設定する。
さらに、上記制御レジスタ13には、第1プログラム処理部11によって繰り返し正常を示す値(真)が書き込まれるビット領域B11と、第2プログラム処理部12によって繰り返し正常を示す値(真)が書き込まれるビット領域B12とが設けられている。
上記各領域B1・B2・B11・B12の値は、図1に示すように、それぞれ、入力端子T1・T2およびクリア端子T11・T12を介して、制御信号ENB1・ENB2・CLR1・CLR2として、ウォッチドッグタイマ14に入力されている。
一方、ウォッチドッグタイマ14には、クリア信号としての上記制御信号CLR1・CLR2をそれぞれラッチするラッチ回路21および22が設けられている。本実施形態では、両ラッチ回路21・22は、例えば、Dフリップフロップによって実現されており、両ラッチ回路21・22のD端子は、真を示す値に常時維持されていると共に、上記クリア信号CLR1・CLR2が、対応するラッチ回路のクロック端子に印加されている。
さらに、上記ウォッチドッグタイマ14は、計時手段として、以下の各部材31〜33、すなわち、予め定められた周期のクロック信号CLKが入力され、クロック信号CLKが示す時間間隔でカウント値をカウントアップするカウンタ31と、上記タイムアップ時間に対応するカウント値が格納された時間設定レジスタ32と、当該時間設定レジスタ32に格納されたカウント値C32およびカウンタ31のカウント値C31を比較して、例えば、両者が一致した時点など、前回カウンタ31がリセットされてからタイムアップ時間が経過した時点で、NMI信号を真を示す値に変更する比較器33とを備えている。なお、上記カウント値C32は、予め定められた値に固定されていてもよいし、制御部15が時間設定レジスタ32へアクセスして設定してもよい。
また、上記カウンタ31のリセット端子Rと、上記両ラッチ回路21・22との間には、論理回路(リセット手段)41が設けられており、制御信号ENB1・ENB2が第3モードを示す値で、しかも、両ラッチ回路21・22の出力信号が真の場合に、カウンタ31をリセットできる。図1の例では、カウンタ31のリセット信号がローアクティブであり、上記論理回路41には、制御信号ENB1・ENBが第3モードを示す値(双方、真)で、しかも、両ラッチ回路21・22の出力信号が真の場合にのみ、真を出力するAND回路42と、AND回路42の出力信号が入力され、入力信号のいずれかが真の場合に、出力信号をアクティブ(ロー)にする、負論理出力のOR回路43とが設けられている。
さらに、本実施形態では、第1および第2モードが設けられているので、上記論理回路41は、制御信号ENB1・ENB2が第1モードを示す値で、しかも、ラッチ回路21の出力信号が真の場合と、制御信号ENB1・ENB2が第2モードを示す値で、しかも、ラッチ回路22の出力信号が真の場合とのそれぞれにも、上記カウンタ31をリセットできるように構成されている。例えば、図1に示すように、上記論理回路41として、上記OR回路43と上記両ラッチ回路21・22との間に、上記制御信号ENB1・ENB2が第1モードを示す値(真・偽)で、しかも、ラッチ回路21の出力信号が真の場合にのみ、OR回路43に真を出力するAND回路44と、上記制御信号ENB1・ENB2が第2モードを示す値(偽・真)で、しかも、ラッチ回路22の出力信号が真の場合にのみ、OR回路43に真を出力するAND回路45とが設けられている。
また、上記OR回路43の出力は、上記各ラッチ回路21・22のリセット端子Rにも入力されており、各ラッチ回路21・22は、各ラッチ回路21・22の出力によってカウンタ31がリセットされた時点でリセットされる。
なお、本実施形態に係るウォッチドッグタイマ14では、情報処理装置1全体をリセットする制御信号RST、および、ウォッチドッグタイマ14をリセットする制御信号WDTRSTのいずれかが真になった場合も、上記カウンタ31をリセットできるように構成されており、図1の例では、端子T21および端子T22を介して入力される制御信号RST・WDTRSTが、上記OR回路43に入力されている。なお、図1では、両制御信号RST・WDTRSTがローアクティブであることを符号の末尾に”*”を付すことで示している。
さらに、本実施形態に係るウォッチドッグタイマ14は、上記図2に示す状態レジスタ16として、上記各プログラム処理部11・12のそれぞれに対応して設けられたラッチ回路51・52を備えている。また、当該ウォッチドッグタイマ14には、上記比較器33の出力が真で、ラッチ回路21の出力がクリアを示していない場合(比較器33の出力およびラッチ回路21の反転出力の双方が真の場合)にのみ、当該ラッチ回路21に対応するラッチ回路51をセットするAND回路53と、上記比較器33の出力が真で、ラッチ回路22の出力がクリアを示していない場合(比較器33の出力およびラッチ回路22の反転出力の双方が真の場合)にのみ、当該ラッチ回路22に対応するラッチ回路52をセットするAND回路54とが設けられている。なお、上記ラッチ回路51・52は、例えば、制御部15を実現するCPUなどの演算手段によってアクセス可能な領域に割り当てられており、制御部15は、各ラッチ回路51・52の値(WDT1P・WDT2P)を読み出すことができる。上記両ラッチ回路51・52は、例えば、Dフリップフロップによって実現されており、両ラッチ回路51・52のD端子は、真を示す値に常時維持されていると共に、AND回路53・54の出力信号が、それぞれに対応するラッチ回路のクロック端子に印加されている。
また、上記両ラッチ回路51・52のリセット端子Rには、比較器33の出力とは独立したリセット信号が入力されており、比較器33の出力が真になった後も値を保持できるように構成されている。
本実施形態では、上記両制御信号RST・WDTRSTのいずれかが真の場合、あるいは、上記制御信号ENB1が偽の場合に、真の値を出力するOR回路55と、上記両制御信号RST・WDTRSTのいずれかが真の場合、あるいは、上記制御信号ENB2が偽の場合に、真の値を出力するOR回路56とが設けられており、OR回路55の出力がラッチ回路51のリセット端子Rに、OR回路56の出力がラッチ回路52のリセット端子R接続されている。なお、図1の例では、両制御信号RST・WDTRSTおよび両ラッチ回路51・52へのリセット信号が、いずれもローアクティブであり、両制御信号ENB1・ENB2がハイアクティブである。なお、上記各回路53〜56が特許請求の範囲に記載のラッチ回路制御手段に対応する。
上記構成において、図2に示す第1および第2プログラム処理部11・12の暴走を監視する場合、制御部15は、制御レジスタ13の領域B1・B2に第3モードを示す値(双方真)を書き込んで、図1に示す両制御信号ENB1・ENB2を真に設定している。
ここで、図1に示すウォッチドッグタイマ14のカウンタ31は、リセットされた時点からタイムアウト時間が経過すると、暴走を示すNMI信号を出力するように構成されている。
ところが、上記両プログラム処理部11・12は、正常に動作している間、ウォッチドッグタイマ14のタイムアウト時間よりも短い時間間隔で、制御レジスタ13の領域B11・B12に正常を示す値(真)を書き込んで、クリア信号CLR1・CLR2を真に設定しているので、前回リセットされた時点からタイムアウト時間が経過するよりも前に、両ラッチ回路21・22の出力信号が真になり、カウンタ31がリセットされる。したがって、上記両プログラム処理部11・12は、正常に動作している間は、ウォッチドッグタイマ14のタイムアウトが発生しない。
これに対して、両プログラム処理部11・12のいずれか(例えば、第1プログラム処理部11)が暴走すると、当該プログラム処理部は、制御レジスタ13の領域B11・B12のうちの対応する領域(この場合は、領域B11)のリセットを繰り返すことができなくなる。したがって、前回リセットされた時点からタイムアウト時間が経過しても、両ラッチ回路21・22の出力信号の双方が真になることがない。この結果、比較器33は、タイムアウト時間が経過した時点で、暴走を示すNMI信号を出力する。これにより、制御部15は、ウォッチドッグタイマ14のタイムアウトが発生したことを把握して、例えば、両プログラム処理部11・12を初期化するなど、予め定められた処理を行う。したがって、両プログラム処理部11・12のいずれが暴走しても、各プログラム処理部11・12の動作を正常動作に復帰させることができる。
また、ラッチ回路51・52は、暴走を示すNMI信号が出力された場合、それぞれに対応するラッチ回路21・22の反転出力をラッチし、NMI信号とは独立したリセット信号が入力されるまでの間、ラッチした値を保持し続けている。例えば、上記の例のように、第1プログラム処理部11のみが暴走した場合、ラッチ回路22の出力のみが真なので、ラッチ回路51の出力は、暴走を示す値(真)になり、ラッチ回路52の出力が暴走していないことを示す値(偽)になる。
したがって、図2に示す状態レジスタ16として、両ラッチ回路51・52の出力WDT1P・WDT2Pを読み出すことによって、制御部15は、監視対象としているプログラム処理部11・12のうち、いずれが暴走したかを把握でき、例えば、暴走している方のみを初期化したり、暴走した方をユーザに提示したりするなど、各プログラム処理部の暴走の状態に応じた処理を行うことができる。
この結果、1つのカウンタ31によって、複数のプログラム処理部11・12の暴走を監視しているため、それぞれの監視用のカウンタを別々に設ける場合よりも回路規模が縮小されているにも拘わらず、それぞれが暴走したか否かを判断でき、より適切な処置を講じることができる。
一方、第1プログラム処理部11の暴走のみを監視する場合、制御部15は、制御レジスタ13の領域B1・B2に第1モードを示す値(真・偽)を書き込んで、図1に示す制御信号ENB1・ENB2を真・偽に設定している。
この状態では、第2プログラム処理部12によるクリア信号CLR2に拘わらず、第1プログラム処理部11によるクリア信号CLR1が真の場合に、カウンタ31がリセットされる。したがって、第1プログラム処理部11が暴走して、前回のリセット時点からタイムアウト時間が経過した時点で、暴走を示すNMI信号が出力される。これにより、第1モードの場合でも、監視対象となる第1プログラム処理部11が暴走しても、当該第1プログラム処理部11を正常動作に復帰させることができる。
また、この場合は、制御信号ENB2が偽なので、監視対象ではない方に対応するラッチ回路52は、リセットされている。また、監視対象に対応するラッチ回路51の値WDT1Pは、リセットされるまでの間、暴走検出時のラッチ回路21の出力に応じた値に設定されている。したがって、モードに拘わらず、両ラッチ回路51・52の値WDT1P・WDT2Pを参照するだけで、暴走したプログラム処理部11を特定できる。
同様に、第2プログラム処理部12の暴走のみを監視する場合は、制御レジスタ13の領域B1・B2に第2モードを示す値(真・偽)が書き込まれ、第1プログラム処理部11によるクリア信号CLR1に拘わらず、第2プログラム処理部12によるクリア信号CLR2が真の場合に、カウンタ31がリセットされる。
なお、上記では、カウンタ31がカウントアップする場合を例にして説明したが、これに限るものではなく、例えば、カウントダウンする構成であってもよい。いずれの場合であっても、前回リセットされてから、タイムアップ時間が経過すると、暴走を示す出力信号を出力できれば、同様の効果が得られる。
さらに、上記では、監視対象となるプログラム処理部が2つの場合を例にして説明したが、これに限るものではない。監視対象となるプログラム処理部毎に、ラッチ回路21・51、AND回路42・53並びにOR回路55と同様の部材を設けることによって、何ら支障なく、3以上のプログラム処理部の暴走を監視できる。
また、本実施形態では、制御レジスタ13のビット領域B1・B2に監視の要否を示す値を設定することによって、監視対象を切り換えているが、これに限るものではない。例えば、監視対象が予め定められた複数に固定されていてもよい。なお、この場合は、制御信号ENB1・ENB2を処理するための回路(ビット領域B1・B2、AND回路42〜44のうち、監視対象の組み合わせ以外に対応する回路)は不要である。
ただし、本実施形態のように、制御レジスタ13のビット領域B1・B2と、その出力信号(制御信号ENB1・ENB2)を処理するための回路を設け、監視対象を切り換え可能に構成した場合は、監視対象となるプログラム処理部11・12の動作を変更することなく、制御部15がビット領域B1・B2を変更するだけで、監視対象を変更できるので、監視対象変更時の手間を削減できる。
さらに、本実施形態のように、上記ラッチ回路51・52のうち、監視対象ではないものをリセットすることによって、監視対象とするプログラム処理部がいずれの場合であっても、それぞれに対応するラッチ回路51・52の値を参照するだけで、暴走したプログラム処理部を特定できる。また、本実施形態では、各ラッチ回路51・52の値が状態レジスタ16としてまとめられており、制御部15が一括してアクセスできる。なお、図1の例では、プログラム処理部を監視対象から外すと、残りのプログラム処理部が1つだけであるが、プログラム処理部が3以上あり、あるプログラム処理部を監視対象から外しても、監視対象が複数の場合には、全てのラッチ回路の出力を読み出すだけで、これら複数の監視対象のいずれが暴走したかを判定できるので、特に効果が大きい。
複数の処理部のいずれかが暴走したことを検出し、例えば、暴走状態からの復帰処理など、暴走時のための処理を実行できると共に、検出後に、それらのいずれが暴走したかを特定でき、例えば、制御システムの分野など、安全性や利便性などを向上させるために、処理部の暴走後も何らかの処理が必要な用途に好適に使用できる。
本発明の実施形態を示すものであり、ウォッチドッグタイマの要部構成を示す回路図である。 上記ウォッチドッグタイマが設けられた情報処理装置全体の要部構成を示すブロック図である。 従来技術を示すものであり、ウォッチドッグタイマの要部構成を示す回路図である。
符号の説明
11 第1プログラム処理部(処理部)
12 第2プログラム処理部(処理部)
14 ウォッチドッグタイマ
31 カウンタ(計時手段)
32 時間設定レジスタ(計時手段)
33 比較器(計時手段)
41 論理回路(リセット手段)
51・52 ラッチ回路
53・54 AND回路(ラッチ回路制御手段)
55・56 OR回路(ラッチ回路制御手段)
T1 入力端子
T2 入力端子
T11 クリア端子
T12 クリア端子

Claims (1)

  1. 予め定められたタイムアウト時間が経過すると暴走を示す出力信号を出力する計時手段を有するウォッチドッグタイマにおいて、
    監視対象に設定可能であって、CPUがプログラムを実行することにより実現される処理部毎に設けられた複数のクリア端子と、
    上記各処理部を監視対象とするか否かを示す制御信号が入力される入力端子と、
    上記制御信号が上記処理部について監視対象となることを示しており、かつ監視対象となる処理部に対応するクリア端子全てにクリアを示す信号が入力された場合に上記計時手段をリセットするリセット手段と、
    上記処理部毎に設けられたラッチ回路およびラッチ回路制御手段とを備え、
    上記ラッチ回路制御手段は、上記監視対象となる処理部に対し、上記計時手段が暴走を示す出力信号を出力し、しかも、上記クリア端子へクリアを示す信号が入力されていない場合、当該処理部に対応するラッチ回路をセットすると共に、上記暴走を示す出力信号とは独立したタイミングで印加されるリセット信号が入力されるまでの間、上記ラッチ回路に値を保持させ、
    上記ラッチ回路制御手段は、上記監視対象から外れている処理部に対応するラッチ回路を上記制御信号に基づいてリセットした状態に維持することを特徴とするウォッチドッグタイマ。
JP2003323197A 2003-09-16 2003-09-16 ウォッチドッグタイマ Expired - Lifetime JP4322606B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003323197A JP4322606B2 (ja) 2003-09-16 2003-09-16 ウォッチドッグタイマ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003323197A JP4322606B2 (ja) 2003-09-16 2003-09-16 ウォッチドッグタイマ

Publications (2)

Publication Number Publication Date
JP2005092430A JP2005092430A (ja) 2005-04-07
JP4322606B2 true JP4322606B2 (ja) 2009-09-02

Family

ID=34454340

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003323197A Expired - Lifetime JP4322606B2 (ja) 2003-09-16 2003-09-16 ウォッチドッグタイマ

Country Status (1)

Country Link
JP (1) JP4322606B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007323631A (ja) 2006-05-01 2007-12-13 Shinko Electric Ind Co Ltd Cpu暴走判定回路
JP4930080B2 (ja) * 2007-02-02 2012-05-09 富士通株式会社 タイマ回路の障害監視装置
GB2503459A (en) * 2012-06-26 2014-01-01 Nordic Semiconductor Asa Multiple hardware registers for watchdog timer preventing erroneous microprocessor system reset
JP2014035740A (ja) * 2012-08-10 2014-02-24 Denso Corp 電子制御装置
JP2014035741A (ja) * 2012-08-10 2014-02-24 Denso Corp 電子制御装置
CN116249968A (zh) * 2021-02-08 2023-06-09 三垦电气株式会社 看门狗定时器装置

Also Published As

Publication number Publication date
JP2005092430A (ja) 2005-04-07

Similar Documents

Publication Publication Date Title
US6519310B2 (en) Hardware event based flow control of counters
JP2009110156A (ja) ログ出力装置及びログ出力プログラム
CA2292991C (en) Watch dog timer system
JP2018107679A (ja) 半導体装置
JP4322606B2 (ja) ウォッチドッグタイマ
JP4393954B2 (ja) マイクロコンピュータ
JP6049961B1 (ja) Cpu監視装置
JP5788611B2 (ja) リセット後の評価のためにリセットより前の状態を保存するための方法および装置
US5533037A (en) Latency error detection circuit for a measurement system
US7103692B2 (en) Method and apparatus for an I/O controller to alert an external system management controller
JP2711111B2 (ja) データ処理装置、計測方法及び制御方法
US9715468B2 (en) Method of providing timing information for interrupts
JP2009003711A (ja) マイクロコンピュータの停止検出装置
JP6741940B2 (ja) 情報処理装置及びpld管理プログラム
US5307488A (en) System interruption apparatus
JPS622685Y2 (ja)
JP2000311155A (ja) マルチプロセッサシステム及び電子機器
JP2899237B2 (ja) Cpu監視装置
JP6201921B2 (ja) マイクロコンピュータ
JPS62197838A (ja) ウオツチ・ドツグ・タイマ制御装置
JP4698518B2 (ja) 検証支援装置、検証支援方法、及びプログラム
JP2592525B2 (ja) 共通バスシステムの異常検出回路
JP2009193525A (ja) 割込制御装置
SU959081A1 (ru) Микропрограммное устройство управлени
CN115794693A (zh) 一种gpio接口控制方法、系统、存储介质以及设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051013

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080620

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080701

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080829

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20080829

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090203

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090406

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090602

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090603

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4322606

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120612

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120612

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130612

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term