JP2001350643A - マイクロコンピュータの制御方法及び異常監視装置 - Google Patents
マイクロコンピュータの制御方法及び異常監視装置Info
- Publication number
- JP2001350643A JP2001350643A JP2000172166A JP2000172166A JP2001350643A JP 2001350643 A JP2001350643 A JP 2001350643A JP 2000172166 A JP2000172166 A JP 2000172166A JP 2000172166 A JP2000172166 A JP 2000172166A JP 2001350643 A JP2001350643 A JP 2001350643A
- Authority
- JP
- Japan
- Prior art keywords
- zero
- register
- microcomputer
- zero register
- value
- 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.)
- Granted
Links
Landscapes
- Microcomputers (AREA)
- Retry When Errors Occur (AREA)
- Debugging And Monitoring (AREA)
Abstract
コンピュータにて不正な処理が行われることを確実に防
止するマイクロコンピュータの制御方法及び異常監視装
置を提供する。 【解決手段】 各プログラムモジュールのメイン処理の
前に必ず実行されるゼロレジスタ検査処理では、ゼロレ
ジスタにゼロ値データを書き込む再設定(S110)を行っ
た後、ゼロレジスタの設定値の読出(S120)を行い、そ
の読出値DZが、ゼロ値データと一致していれば(S130
-Y)、ゼロレジスタの読出値DZは正常であるものとし
て本処理を終了し、一致していなければ(S130-N)、ゼ
ロレジスタの検査(S110〜S130)を繰り返し実行する。
このゼロレジスタ検査処理により、メイン処理は、必ず
ゼロレジスタが正しく設定された状態で開始される。
Description
専用のゼロレジスタを備えたマイクロコンピュータの制
御方法及び異常監視装置に関する。
ュータでは、パイプライン処理を効率よく実行するた
め、1サイクルでの処理が可能な簡単な命令セットしか
用意されておらず、しかも、各命令はすべて同じ命令長
を有するようにされている。このため、例えば、命令の
記述に用いるアドレッシングモードにおいて多大なビッ
ト数を要する即値データの使用が制限されていたり、ハ
ードウェアを簡素化するために他の命令で代用可能な命
令が省略されていたりする。
は、実効アドレスを指定する時に、アドレッシングモー
ドとして、実効アドレスそのものが格納されたレジスタ
を指定するレジスタ間接や、基準となるアドレスが格納
されたレジスタとビット数の制限された即値データであ
るディスプレースメントとにより実効アドレスを指定す
るディスプレースメント付きレジスタ間接の使用は可能
であるが、即値データのみでの実効アドレスの指定がで
きなかったり、また、メモリへの書込命令では、オペラ
ンドを指定する時に、オペランドが格納されたレジスタ
を指定するレジスタ直接の使用は可能であるが、即値デ
ータでのオペランドの指定はできないようにされてい
る。更に、レジスタ間のデータ転送は、転送元レジスタ
の格納値を被加算値とし、転送先レジスタに加算結果を
格納するよう指定して、加算命令にてゼロ加算を行う操
作にて代用可能なため、このようなレジスタ間のデータ
転送命令等も省略されている。
0であるメモリへのディスプレースメント付きレジスタ
間接を用いたアクセス、メモリ内容のクリア、レジスタ
間のデータ転送を行う場合等、RISC型のマイクロコ
ンピュータでは、レジスタにゼロ値データを設定する処
理が頻繁に表れるため、格納値をゼロに固定してゼロ値
データ読出専用に使用されるいわゆるゼロレジスタを設
け、レジスタにゼロ値データを設定する処理を省略する
ことにより、処理を高速化することが行われている。
一つをゼロレジスタとして使用する場合と、ハードウェ
アにて格納値をゼロに固定した特別なレジスタを使用す
る場合とがある。そして、汎用レジスタを用いたゼロレ
ジスタの場合、ゼロレジスタへのゼロ値データの設定
は、装置立ち上げ後の初期化時に行われていた。
にハードウェア上の不具合が生じた場合、また、特に汎
用レジスタを用いたゼロレジスタでは、ソフトウェア上
の不具合や外来ノイズなどによりゼロレジスタの値が書
き変わってしまった場合など、何等かの理由でゼロレジ
スタからの読出値がゼロ以外の値に代わってしまうと、
以後、メモリに対して誤った番地へのアクセスが行われ
たり、メモリのクリアやレジスタ間のデータ転送を行っ
た際に、メモリやレジスタに設定されるデータに誤りが
生じてしまい、その結果、マイクロコンピュータが不正
な処理を行ってしまうという問題があった。
ゼロレジスタの読出値の異常によりマイクロコンピュー
タにて不正な処理が行われることを確実に防止するマイ
クロコンピュータの制御方法及び異常監視装置を提供す
ることを目的とする。
の発明である請求項1記載のマイクロコンピュータの制
御方法では、予め決めれた実行タイミング毎にゼロレジ
スタからの読出値に異常があるか否かを繰り返し検査
し、その検査の結果、読出値に異常があれば、マイクロ
コンピュータによるゼロレジスタを用いた通常処理の実
行を禁止又はマイクロコンピュータを再起動するように
されている。
制御方法によれば、ゼロレジスタからの読出値に異常が
ある場合、マイクロコンピュータにて通常処理が実行さ
れないため、ゼロレジスタの読出値の異常に基づく不正
な処理結果を発生させてしまうことがなく、その結果、
このようなゼロレジスタを備えるマイクロコンピュータ
にて構成された装置の信頼性を向上させることができ
る。
コンピュータが複数の処理を順番に実行する場合、これ
ら各処理の開始前を実行タイミングとして、上述の検査
を各処理毎に必ず行うことが望ましい。ところで、ゼロ
レジスタとして、ハードウェアにて値が固定された特別
なレジスタを用いた場合、ゼロレジスタのためだけにハ
ードウェアを追加しなければならないため、マイクロコ
ンピュータの構成が大規模化してしまう。このため、請
求項3記載のように、ゼロレジスタは、任意にデータの
読み書きが可能な汎用レジスタを用いることが望まし
い。
ジスタからなる場合には、請求項4記載のように、上述
の検査の前にゼロレジスタの再設定を行ったり、請求項
5記載のように、検査の結果、読出値に異常がある場
合、ゼロレジスタの再設定及び検査を繰り返す待機処理
を実行することで通常処理の実行を禁止し、待機処理に
よって読出値の異常が解消されると、待機処理を終了す
ることで通常処理の禁止を解除するようにしてもよい。
タでは、外来ノイズ等の影響によるゼロレジスタ設定値
の書き変わりに対しては、このようなゼロレジスタの再
設定により、マイクロプロセッサのリセットなどを行う
ことなく、正常な状態に簡単に復帰することができる。
タの異常監視装置では、ゼロレジスタ検査手段が、ゼロ
レジスタからの読出値が正常であるか否かを検査し、検
査の結果、読出値に異常あれば、異常処理手段が、マイ
クロコンピュータによるゼロレジスタを用いた通常処理
を禁止するか、又はマイクロコンピュータを再起動す
る。
段は、ハードウェアを増加させないために、マイクロコ
ンピュータが実行する処理として実現することが望まし
いが、ハードウェアにて実現した場合には、ソフトウェ
アにて実現する場合とは異なり、ゼロレジスタを常時検
査することが可能であるため、ゼロレジスタの異常に対
してより速やかに対応することができる。
に説明する。図1(a)は、本発明が適用されたマイク
ロコンピュータの概略構成を表すブロック図である。
イクロコンピュータ10は、RISCタイプのCPU1
1を中心に構成され、ROM12,RAM13,各種周
辺回路14が内蔵された周知の1チップマイコンからな
る。なお、周辺回路14には、いわゆるウォッチドッグ
タイマーとして使用され、予め設定された監視期間内に
リセット命令が入力されずタイムアウトするとアクティ
ブとなるWDT信号を出力するタイマー(以下「WDタ
イマー」という)14aと、WDT信号のアクティブへ
の変化を検出すると、マイクロコンピュータ10をハー
ドウェアリセットするためのRST信号を所定期間の間
アクティブにするリセット信号生成回路14bとが少な
くとも含まれている。
ように、32ビット幅の16本の汎用レジスタR0〜R
15を備えており、このうち、レジスタR13〜R15
は、使用するコンパイラにより予め用途が決められてい
る。即ち、ここでは、レジスタR13が、ゼロ値データ
読出専用に用いられるゼロレジスタとして使用される
他、レジスタR14はリンクポインタ、レジスタR15
はスタックポインタとして使用される。
ピュータ10への電源投入後に実行される初期化処理の
中でゼロ値データ(00000000H)が書き込ま
れ、以後、RAM13の内容をクリアする場合の書込デ
ータや、ディスプレイスメント付きレジスタ間接のアド
レッシングモードを用いてRAM13(先頭が0H番
地)をアクセスする際の基準アドレス等として使用され
る。
されたプログラムを実行することにより、様々な機能を
実現するが、プログラムは、実現する機能毎に複数のモ
ジュールに分かれており、各モジュールは、順番に、或
いは予め設定された起動条件が揃うと起動されるものと
する。
後述するゼロレジスタ検査処理を必ず実行するように構
成されていると共に、ゼロレジスタ検査処理後に実行す
る当該モジュールのメイン処理は、プログラムが正常に
実行されていればWDタイマー14aがタイムアウトし
ないように、WDタイマー14aに対するリセット命令
が適宜挿入されたものとなっている。
ゼロレジスタ検査処理の内容を、図2に示すフローチャ
ートに沿って説明する。図2に示すように、本処理が起
動されると、まずS110では、ゼロレジスタの再設
定、即ち、ゼロレジスタへのゼロ値データの書込を行
い、続くS120では、ゼロレジスタから、その設定値
DZの読出を行う。
の読出値DZが、先に書き込んだゼロ値データと一致す
るか否かを検査し、一致していれば、ゼロレジスタの読
出値DZは正常であるものとして、本処理を終了する。
一方、S130にて、ゼロレジスタからの読出値DZが
ゼロ値データと一致していなければ、S110に戻り、
ゼロレジスタの再設定、ゼロレジスタの設定値の読出、
読出値DZの検査を繰り返し実行する。このS110〜
S130を繰り返す処理が本発明における待機処理に相
当する。そして、待機処理中に繰り返し行われるゼロレ
ジスタの再設定によりゼロレジスタの読出値DZが正常
なものに復帰すれば、本処理を終了する。
処理が組み込まれたモジュールでは、当該モジュールの
メイン処理は、必ずゼロレジスタが正しく設定された状
態で開始されることになる。また、ゼロレジスタがゼロ
値データと一致しない場合には、S110〜S130の
ループを抜け出すことができないため、当該モジュール
のメイン処理が実行されないだけでなく、メイン処理に
挿入された、WDタイマー14aに対するリセット命令
が実行されないため、この状態が監視期間以上継続する
と、WDT信号がアクティブとなり、その結果、マイク
ロコンピュータ10はハードリセットされることにな
る。
検査処理が本発明におけるゼロレジスタ検査手段に相当
し、ゼロレジスタ検査処理,及びWDタイマー14a,
リセット信号生成回路14bが異常処理手段に相当す
る。以上説明したように、本実施形態のマイクロコンピ
ュータ10においては、ゼロレジスタの読出値に異常が
ある(ゼロ値データと一致しない)場合には、メイン処
理を実行しないようにされているので、メイン処理にて
ゼロレジスタの読出値の異常に基づく不正な処理結果を
発生させてしまうことがなく、当該マイクロコンピュー
タ10を用いて構成された装置の信頼性を向上させるこ
とができる。
読出値が正常なものに復帰しない場合には、ハードウェ
アリセットが行われるようにされているため、外来ノイ
ズ等によるゼロレジスタの設定値のビット化けや、ハー
ドウェアの故障以外の何等かの原因で異常が生じている
場合に、これを解消できる可能性がある。
読出値がゼロ値データと一致しない場合(S130−N
O)、S110に戻ってゼロレジスタの再設定、及び再
設定後の読出値の検査を繰り返し行っているが、図3
(a)に示すように、S110に戻る代わりに、S14
0に移行して異常処理手段としての異常処理を実行する
ように構成してもよい。
ッセットを行ってもよいし、異常である旨を表示してC
PUの動作を停止させるようにしてもよい。但し、CP
Uの動作を停止させた場合、結局は、WDタイマー14
aがタイムアウトすることによりハードウェアリセット
が行われることになる。
して、汎用レジスタの一つを使用しているが、図3
(b)に示すように、ハードウェアにより格納値がゼロ
に固定された専用のゼロレジスタを、汎用レジスタとは
別途設けてもよい。但し、この場合、ゼロレジスタの再
設定を行うことができないため、ゼロレジスタ検査処理
は、図2及び図3(a)に示すフローチャートから、S
110を省略したものとすればよい。
を表すブロック図、及びゼロレジスタについての説明図
である。
ャートである。
図である。
…ROM 13…RAM 14…周辺回路 14a…WD
タイマー 14b…リセット信号生成回路 R0〜R15…汎用
レジスタ
Claims (6)
- 【請求項1】 ゼロ値データ読出専用のゼロレジスタを
備え、該ゼロレジスタを用いた命令を実行するマイクロ
コンピュータの制御方法であって、 予め決めれた実行タイミング毎に、前記ゼロレジスタか
らの読出値に異常があるか否かを繰り返し検査し、該検
査の結果、前記読出値に異常があれば、前記マイクロコ
ンピュータによる前記ゼロレジスタを用いた通常処理の
実行を禁止又は該マイクロコンピュータを再起動するこ
とを特徴とするマイクロコンピュータの制御方法。 - 【請求項2】 前記マイクロコンピュータが複数の処理
を順番に実行する場合、各処理の開始前を前記実行タイ
ミングとすることを特徴とする請求項1記載のマイクロ
コンピュータの制御方法。 - 【請求項3】 前記ゼロレジスタは、任意にデータの読
み書きが可能な汎用レジスタからなることを特徴とする
請求項1又は請求項2記載のマイクロコンピュータの制
御方法。 - 【請求項4】 前記検査の前に、前記ゼロレジスタの再
設定を行うことを特徴とする請求項3記載のマイクロコ
ンピュータの制御方法。 - 【請求項5】 前記検査の結果、前記読出値に異常があ
る場合、前記ゼロレジスタの再設定及び検査を繰り返す
待機処理を実行することにより前記通常処理の実行を禁
止し、前記待機処理によって前記読出値の異常が解消さ
れると、前記待機処理を終了することにより前記通常処
理の禁止を解除することを特徴とする請求項3又は請求
項4記載のマイクロコンピュータの制御方法。 - 【請求項6】 ゼロ値データ読出用のゼロレジスタを備
え、該ゼロレジスタを用いた命令を実行するマイクロコ
ンピュータの監視装置であって、 前記ゼロレジスタからの読出値が正常であるか否かを検
査するゼロレジスタ検査手段と、 該ゼロレジスタ検査手段による検査の結果、前記読出値
に異常があれば、前記マイクロコンピュータによるゼロ
レジスタを用いた通常処理を禁止又は該マイクロコンピ
ュータを再起動する異常処理手段と、 を備えることを特徴とするマイクロコンピュータの異常
監視装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000172166A JP4543505B2 (ja) | 2000-06-08 | 2000-06-08 | マイクロコンピュータの制御方法及び異常監視装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000172166A JP4543505B2 (ja) | 2000-06-08 | 2000-06-08 | マイクロコンピュータの制御方法及び異常監視装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001350643A true JP2001350643A (ja) | 2001-12-21 |
JP4543505B2 JP4543505B2 (ja) | 2010-09-15 |
Family
ID=18674609
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000172166A Expired - Lifetime JP4543505B2 (ja) | 2000-06-08 | 2000-06-08 | マイクロコンピュータの制御方法及び異常監視装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4543505B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005339297A (ja) * | 2004-05-28 | 2005-12-08 | Fuji Xerox Co Ltd | 制御装置および制御プログラム |
CN107168822A (zh) * | 2017-05-08 | 2017-09-15 | 山大地纬软件股份有限公司 | Oracle streams的异常修复***及方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63150742A (ja) * | 1986-12-16 | 1988-06-23 | Oki Electric Ind Co Ltd | コンピュータシステムの誤動作からの復帰方法 |
JPH0561724A (ja) * | 1991-09-05 | 1993-03-12 | Toshiba Corp | 初期化情報再設定方式 |
JPH0588878A (ja) * | 1991-09-27 | 1993-04-09 | Nec Corp | Lisp命令実行方式 |
JPH09128233A (ja) * | 1995-11-06 | 1997-05-16 | Toshiba Microelectron Corp | 中央処理装置 |
-
2000
- 2000-06-08 JP JP2000172166A patent/JP4543505B2/ja not_active Expired - Lifetime
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63150742A (ja) * | 1986-12-16 | 1988-06-23 | Oki Electric Ind Co Ltd | コンピュータシステムの誤動作からの復帰方法 |
JPH0561724A (ja) * | 1991-09-05 | 1993-03-12 | Toshiba Corp | 初期化情報再設定方式 |
JPH0588878A (ja) * | 1991-09-27 | 1993-04-09 | Nec Corp | Lisp命令実行方式 |
JPH09128233A (ja) * | 1995-11-06 | 1997-05-16 | Toshiba Microelectron Corp | 中央処理装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005339297A (ja) * | 2004-05-28 | 2005-12-08 | Fuji Xerox Co Ltd | 制御装置および制御プログラム |
JP4581484B2 (ja) * | 2004-05-28 | 2010-11-17 | 富士ゼロックス株式会社 | 制御装置および制御プログラム |
CN107168822A (zh) * | 2017-05-08 | 2017-09-15 | 山大地纬软件股份有限公司 | Oracle streams的异常修复***及方法 |
CN107168822B (zh) * | 2017-05-08 | 2020-01-07 | 山大地纬软件股份有限公司 | Oracle streams的异常修复***及方法 |
Also Published As
Publication number | Publication date |
---|---|
JP4543505B2 (ja) | 2010-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7669078B2 (en) | Method and apparatus for debugging a program on a limited resource processor | |
US6012154A (en) | Method and apparatus for detecting and recovering from computer system malfunction | |
KR20070108060A (ko) | 빠른 부팅 웨이크-업을 실행하는 시스템 | |
WO2011016115A1 (ja) | リセット方法及び監視装置 | |
US7966536B2 (en) | Method and apparatus for automatic scan completion in the event of a system checkstop | |
JP7091486B2 (ja) | 電子制御装置、電子制御装置のセキュリティ検証方法 | |
US20070288741A1 (en) | CPU runaway determination circuit and CPU runaway determination method | |
JP4393954B2 (ja) | マイクロコンピュータ | |
JP6341795B2 (ja) | マイクロコンピュータ及びマイクロコンピュータシステム | |
US6968410B2 (en) | Multi-threaded processing of system management interrupts | |
WO1999031564A2 (en) | System and method for fault detection in microcontroller program memory | |
JP2004302731A (ja) | 情報処理装置および障害診断方法 | |
JP2001350643A (ja) | マイクロコンピュータの制御方法及び異常監視装置 | |
JP2007172096A (ja) | 情報処理装置、および、その起動制御方法 | |
JP4856023B2 (ja) | リアルタイムウォッチ装置及びその方法 | |
KR20210080398A (ko) | 메모리 내장 자체 테스트 컨트롤러를 이용한 판독 전용 메모리 테스트 | |
JP4647276B2 (ja) | 半導体回路装置 | |
JP2009169515A (ja) | コンピュータシステム及びシステム回復装置 | |
JP4853620B2 (ja) | マルチプロセッサシステムと初期立ち上げ方法およびプログラム | |
JP2011150383A (ja) | ファームウェア書き込み方法 | |
KR101244684B1 (ko) | 에러검출이 가능한 마이크로 컴퓨팅 장치 및 그의 에러검출방법 | |
JP3171615B2 (ja) | データ転送のリトライ制御方式 | |
US9342359B2 (en) | Information processing system and information processing method | |
JP2000181510A (ja) | プログラマブルコントローラのバックアップデータ保護方法及びプログラマブルコントローラ | |
CN117093399A (zh) | ***启动方法、片上***、计算机设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060913 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100223 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100415 |
|
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: 20100608 |
|
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: 20100621 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130709 Year of fee payment: 3 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 4543505 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130709 Year of fee payment: 3 |
|
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 |