JPH10228395A - 制御用コントローラの異常診断装置 - Google Patents

制御用コントローラの異常診断装置

Info

Publication number
JPH10228395A
JPH10228395A JP9031781A JP3178197A JPH10228395A JP H10228395 A JPH10228395 A JP H10228395A JP 9031781 A JP9031781 A JP 9031781A JP 3178197 A JP3178197 A JP 3178197A JP H10228395 A JPH10228395 A JP H10228395A
Authority
JP
Japan
Prior art keywords
trace
microcomputer
memory
abnormality
program
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.)
Pending
Application number
JP9031781A
Other languages
English (en)
Inventor
Satoshi Sato
聡 佐藤
Ryosuke Ashizuka
良介 芦塚
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.)
Sekisui Chemical Co Ltd
Original Assignee
Sekisui Chemical Co Ltd
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 Sekisui Chemical Co Ltd filed Critical Sekisui Chemical Co Ltd
Priority to JP9031781A priority Critical patent/JPH10228395A/ja
Publication of JPH10228395A publication Critical patent/JPH10228395A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【課題】数ヵ月に1度程度発生するハード又はソフトの
異常原因を確実に解析できる制御用コントローラの異常
診断装置を提供する。 【解決手段】マイクロコンピュータを利用した制御用コ
ントローラにおいて、プログラムの動作モード、アドレ
ス、データ等の実行状態を、実行ステップからメモリ容
量分さかのぼった時点までの一定ステップ分について常
時保持する各トレースメモリ10,11,12と、これ
らトレースメモリ10,11,12へのプログラム実行
状態の書き込み及びこれらトレースメモリ10,11,
12からの実行状態の読み取りを制御するトレース制御
回路14とを備え、トレース制御回路14は、マイクロ
コンピュータの自己検出機能によってプログラムの異常
が検出されたとき、その異常検出信号に基づいてその時
点での各トレースメモリ10,11,12の内容を保持
する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、マイクロコンピュ
ータを利用した制御用コントローラの異常診断装置に関
する。
【0002】
【従来の技術】工場の生産ラインには、マイクロコンピ
ュータを利用した制御用コントローラが広く使用されて
いるが、この制御用コントローラは、現場の電磁ノイズ
による暴走や、制御プログラミングのバグなどによっ
て、異常な動作を生じることがある。
【0003】この異常動作は、その現象に再現性がある
場合には、その原因を特定できる場合が多い。しかしな
がら、その現象に再現性がなく、数時間から数ヶ月に1
度起きるような現象である場合には、その原因の特定が
難しいばかりでなく、原因がハードにあるのかソフトに
あるのかといった判別すら困難である。そのため、現象
に再現性のない異常動作の場合には、有効な対策を講じ
ることができないのが実情である。
【0004】そこで、プログラムの実行状態を監視し
て、異常が発生したときの状態を後から解析できる装置
が必要となる。このようなマイクロコンピュータのプロ
グラム実行状態を監視する装置として、例えば特開平1
−217526号公報に記載されたマイクロコンピュー
タシステムがある(これを従来技術1という)。
【0005】この従来技術1のシステムは、インサーキ
ット・エミュレータを用いているが、これはプログラム
開発時に制御用コントローラのCPUやメモリの機能の
一部を、ケーブル等を通じてインサーキット・エミュレ
ータの内部に取り込み、解析を行うものである。
【0006】また、組込機器のプログラム異常診断装置
として、特開平4−294432号公報に記載のものが
ある(これを従来技術2という)。この従来技術2の装
置は、モジュール化した各プログラムを所定の手続きに
より実行開始する前に、そのモジュールの開始アドレス
を所定のメモリ領域に順次記憶し、所定コードのリモコ
ン信号またはキー入力によりメモリ領域に記憶したデー
タを、最後に記憶したアドレスの次から順に読み出すよ
うになっている。
【0007】
【発明が解決しようとする課題】しかしながら、従来技
術1のシステムは、CPUやメモリの機能の一部を、ケ
ーブル等を通じてインサーキット・エミュレータの内部
に取り込むものであるため、電磁ノイズのある場所や温
度環境の劣悪な現場では用いることができないといった
問題があった。
【0008】また、従来技術2の装置は、プログラムの
モジュール単位の実行履歴しかトレースできないため、
具体的な異常内容の解析が行えず、またノイズ等でハー
ドウエアが暴走した際の異常究明も行えないといった問
題があった。
【0009】本発明はこのような問題点を解決すべく創
案されたものであって、その目的は、現場で制御を行っ
ている状態で、数ヶ月に1度程度発生するハード又はソ
フトの異常原因を確実に解析できる制御用コントローラ
の異常診断装置を提供することにある。
【0010】
【課題を解決するための手段】上記課題を解決するた
め、本発明の請求項1記載の制御用コントローラの異常
診断装置は、マイクロコンピュータを利用した制御用コ
ントローラにおいて、プログラムの動作モード、アドレ
ス、データ等の実行状態を、実行ステップからメモリ容
量分さかのぼった時点までの一定ステップ分について常
時保持するトレースメモリと、このトレースメモリへの
プログラム実行状態の書き込み及びトレースメモリから
の実行状態の読み取りを制御するトレース制御回路とを
備え、前記トレース制御回路は、前記マイクロコンピュ
ータの自己検出機能によってプログラムの異常が検出さ
れたとき、その異常検出信号に基づいてその時点での前
記トレースメモリの内容を保持し、前記マイクロコンピ
ュータからの読み取り要求信号に基づいて前記トレース
メモリの内容を外部に転送するものである。
【0011】また、本発明の請求項2記載の制御用コン
トローラの異常診断装置は、請求項1記載のものにおい
て、前記マイクロコンピュータと前記トレースメモリと
の間にバッファを介挿したものである。
【0012】
【発明の実施の形態】以下、本発明の実施の形態につい
て、図面を参照して説明する。図1は、本発明の異常診
断装置を搭載した通常のリアルタイム制御用コントロー
ラの電気的構成を示すブロック図である。
【0013】このリアルタイム制御用コントローラは、
CPU1、割り込みコントローラ2、ROMやRAM等
のメモリ3、タイマー4、I/Oインターフェイス5、
これらの間で信号のやりとりを行うための制御バス6、
アドレスバス7及びデータバス8を備えるとともに、バ
ッファ9、制御バス6上の信号を書き込む制御モードト
レースメモリ10、アドレスバス7上の信号を書き込む
アドレストレースメモリ11、データバス8上の信号を
書き込むデータトレースメモリ12、各トレースメモリ
10,11,12のアドレスを制御するリングカウンタ
13、及びこれらバッファ9、制御モードトレースメモ
リ10、アドレストレースメモリ11、データトレース
メモリ12、リングカウンタ13を制御するトレース制
御回路14を備えている。
【0014】リアルタイム制御用コントローラは、通
常、定期的なタイマー割り込みや、I/Oインターフェ
イス5に接続された図示しない各種I/O機器からの割
り込み信号に基づいて、必要な処理プログラムを実行す
る。この際、CPU1からは、動作状態(リード/ライ
ト、割り込み等)を示す信号が制御バス6に出力され、
メモリ3やI/Oインターフェイス5の該当するアドレ
スやデータが、アドレスバス7やデータバス8にそれぞ
れ出力される。各トレースメモリ10,11,12に
は、これらのバス6,7,8上の信号が、トレース制御
回路14の指示に従って書き込まれる。
【0015】なお、CPU1が例えば16ビットのCP
Uである場合には、制御バス6に10本、アドレスバス
7に20本、データバス8に16本程度の信号線がある
ので、各トレースメモリ10,11,12には、これら
の信号を全て記録できるだけのデータ幅が必要である。
【0016】図2は、トレース制御回路14によるトレ
ース時の動作フローチャートを示している。すなわち、
電源投入後、リセット状態が解除されると、トレース制
御回路14は、まずバッファ9の方向を、各バス6,
7,8の信号を各トレースメモリ10,11,12に読
み込む方向に設定し、トレース制御回路14による制御
動作がCPU1や割り込みコントローラ2等に影響を及
ぼさないようにする。また同時に、各トレースメモリ1
0,11,12のアドレスを制御するリングカウンタ1
3の値を「0」にリセットする(ステップS1)。
【0017】この状態においてCPU1の動作が始まる
と、トレース制御回路14は制御バス6を監視して、命
令コードのフェッチ、メモリ3やI/Oインターフェイ
ス5のリード、ライト、割り込み等の状態を示す各バス
6,7,8上の信号が有効であるかどうかを確認する
(ステップS2)。そして、各バス6,7,8上の信号
が有効であることを確認するたびに、それぞれのバス
6,7,8上の信号(データ)を、バッファ9を介して
各トレースメモリ10,11,12に書き込む(ステッ
プS3)。
【0018】各トレースメモリ10,11,12への書
き込みを終了すると、トレース制御回路14はリングカ
ウンタ13の値を1インクリメントしてアドレスを更新
する(ステップS4)。
【0019】トレース制御回路14では、このようなス
テップS2〜ステップS4の処理を繰り返す。その結
果、リングカウンタ13の値が各トレースメモリ10,
11,12の容量の上限(例えば、1Kバイトであれば
1024ステップ)を超えた場合には、ステップS5か
らステップS6へと動作を進めて、リングカウンタ13
を「0」にリセットし、再びステップS2へ戻って動作
を繰り返す。
【0020】このような処理動作によって、各トレース
メモリ10,11,12には、プログラムの実行ステッ
プからメモリ容量分さかのぼった時点までの命令やデー
タの履歴が、常時保存されることになる。
【0021】ところで、一般的なリアルタイム制御用コ
ントローラの場合、外部の電磁ノイズによってバス6,
7,8上の信号が異常になると、CPU1の自己検出機
能によって自己の命令セットにない無効命令を検出し、
例えばホールト信号や外部バスリセット信号を発行す
る。また、プログラムのバグによって不正確な命令(例
えば、0除算等)が実行された場合にも、同様に自己検
出機能が働く。また、プログラムが暴走した場合は、ウ
ォッチドッグ回路等からCPU1に割り込みを入れて、
強制的にイニシャル状態に戻すことができる。
【0022】そこで、これらの異常を検出した時点で、
CPU1から出力される異常検出信号をトレース制御回
路14にトリガ信号として与え、異常発生時の各トレー
スメモリ10,11,12の動作を制御する。
【0023】図3は、トレース制御回路14による異常
発生時の動作フローチャートを示している。すなわち、
トレース制御回路14は、異常検出信号を認識すると、
まず各トレースメモリ10,11,12を書き込み禁止
にしてメモリ内容を保護し(ステップS11)、同時に
リングカウンタ13を停止させる(ステップS12)。
【0024】一方、CPU1は、異常が発生すると正常
復帰するための処理を実行し、正常復帰後、各トレース
メモリ10,11,12の内容の読み取り処理を起動す
る。この処理が起動されると、トレース制御回路14
は、CPU1が各トレースメモリ10,11,12の内
容を読み取れるようバッファ9の向きを設定し(ステッ
プS13,S14)、各トレースメモリ10,11,1
2の内容をメモリ3に転送する(ステップS15,S1
6)。転送されたデータは、例えば制御用コントローラ
の画面やプリンタへ出力される。又は、制御用コントロ
ーラからさらに上位の図示しないホストコンピュータに
通信で再転送する。
【0025】これにより、異常発生時点から数Kステッ
プさかのぼった時点までの実行履歴を解析でき、異常の
原因を特定しやすくなる。なお、リアルタイムオペレー
ティングシステムを搭載していれば、制御動作を継続し
たままこれらの解析処理を行うことができる。
【0026】
【発明の効果】本発明の請求項1記載の制御用コントロ
ーラの異常診断装置は、マイクロコンピュータを利用し
た制御用コントローラにおいて、プログラムの動作モー
ド、アドレス、データ等の実行状態を、実行ステップか
らメモリ容量分さかのぼった時点までの一定ステップ分
について常時保持するトレースメモリと、このトレース
メモリへのプログラム実行状態の書き込み及びトレース
メモリからの実行状態の読み取りを制御するトレース制
御回路とを備え、トレース制御回路は、マイクロコンピ
ュータの自己検出機能によってプログラムの異常が検出
されたとき、その異常検出信号に基づいてその時点での
トレースメモリの内容を保持するとともに、マイクロコ
ンピュータからの読み取り要求信号に基づいてトレース
メモリの内容を外部に転送する構成としている。つま
り、異常発生直前の状態をトレースメモリに保存し、そ
の内容を解析することで、現場で数ヶ月に1度起こるよ
うな発生頻度の低い異常でも、発生した瞬間の状態を記
録できる。また、制御バス、アドレスバス、データバス
の内容を解析することにより、異常の原因がハードによ
るものであるのか、ソフトによるものであるのかの判断
が行え、またソフトによるものであればどのようなバグ
であるのかの推定も行える。
【0027】また、本発明の請求項2記載の制御用コン
トローラの異常診断装置は、請求項1記載のものにおい
て、マイクロコンピュータとトレースメモリとの間にバ
ッファを介挿した構成としたので、マイクロコンピュー
タの動作に全く影響を及ぼさないで、トレース制御回路
14によるトレース制御が行える。
【図面の簡単な説明】
【図1】本発明の異常診断装置を搭載した通常のリアル
タイム制御用コントローラの電気的構成を示すブロック
図である。
【図2】トレース制御回路によるトレース時の動作フロ
ーチャートである。
【図3】トレース制御回路による異常発生時の動作フロ
ーチャートである。
【符号の説明】
1 CPU 2 割り込みコントローラ 3 メモリ 4 タイマー 5 I/Oインターフェイス 6 制御バス 7 アドレスバス 8 データバス 9 バッファ 10 制御モードトレースメモリ 11 アドレストレースメモリ 12 データトレースメモリ 13 リングカウンタ 14 トレース制御回路

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 マイクロコンピュータを利用した制御用
    コントローラにおいて、 プログラムの動作モード、アドレス、データ等の実行状
    態を、実行ステップからメモリ容量分さかのぼった時点
    までの一定ステップ分について常時保持するトレースメ
    モリと、 このトレースメモリへのプログラム実行状態の書き込み
    及びトレースメモリからの実行状態の読み取りを制御す
    るトレース制御回路とを備え、 前記トレース制御回路は、前記マイクロコンピュータの
    自己検出機能によってプログラムの異常が検出されたと
    き、その異常検出信号に基づいてその時点での前記トレ
    ースメモリの内容を保持し、前記マイクロコンピュータ
    からの読み取り要求信号に基づいて前記トレースメモリ
    の内容を外部に転送することを特徴とする制御用コント
    ローラの異常診断装置。
  2. 【請求項2】 前記マイクロコンピュータと前記トレー
    スメモリとの間にバッファが介挿されていることを特徴
    とする請求項1記載の制御用コントローラの異常診断装
    置。
JP9031781A 1997-02-17 1997-02-17 制御用コントローラの異常診断装置 Pending JPH10228395A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9031781A JPH10228395A (ja) 1997-02-17 1997-02-17 制御用コントローラの異常診断装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9031781A JPH10228395A (ja) 1997-02-17 1997-02-17 制御用コントローラの異常診断装置

Publications (1)

Publication Number Publication Date
JPH10228395A true JPH10228395A (ja) 1998-08-25

Family

ID=12340611

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9031781A Pending JPH10228395A (ja) 1997-02-17 1997-02-17 制御用コントローラの異常診断装置

Country Status (1)

Country Link
JP (1) JPH10228395A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004524596A (ja) * 2000-09-08 2004-08-12 ネットワーク・アプライアンス・インコーポレイテッド パニック・メッセージ解析機
WO2005062182A1 (ja) * 2003-12-19 2005-07-07 Renesas Technology Corp. 半導体集積回路装置
WO2009031210A1 (ja) * 2007-09-05 2009-03-12 Fujitsu Limited 情報処理装置、情報処理装置の制御方法および制御プログラム
WO2022185535A1 (ja) * 2021-03-05 2022-09-09 日本電信電話株式会社 原因工程特定装置、原因工程特定方法及びプログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004524596A (ja) * 2000-09-08 2004-08-12 ネットワーク・アプライアンス・インコーポレイテッド パニック・メッセージ解析機
WO2005062182A1 (ja) * 2003-12-19 2005-07-07 Renesas Technology Corp. 半導体集積回路装置
WO2009031210A1 (ja) * 2007-09-05 2009-03-12 Fujitsu Limited 情報処理装置、情報処理装置の制御方法および制御プログラム
WO2022185535A1 (ja) * 2021-03-05 2022-09-09 日本電信電話株式会社 原因工程特定装置、原因工程特定方法及びプログラム

Similar Documents

Publication Publication Date Title
JP3481737B2 (ja) ダンプ採取装置およびダンプ採取方法
JPH10228395A (ja) 制御用コントローラの異常診断装置
JP2004302731A (ja) 情報処理装置および障害診断方法
JPS60159951A (ja) 情報処理装置におけるトレ−ス方式
JPH10254738A (ja) エミュレータ装置及びエミュレーション方法
CN101311909A (zh) 诊断系统异样的方法
JPH09160840A (ja) バス通信装置
JPS62245341A (ja) エンジン制御装置
JP2870202B2 (ja) プロセッサ間相互監視方法及びその装置
JP2684966B2 (ja) 入出力処理装置のデバッグ装置
JP3350069B2 (ja) バスライン監視方式
JP3080150B2 (ja) 汎用インタフェース制御装置及び汎用インタフェース制御方法
JPH11119992A (ja) ファームウェアのトレース制御装置
JP2000353109A (ja) エミュレータ及びエミュレーションシステム
JPH10133958A (ja) 通信装置制御回路
JPH04338842A (ja) エラー検出機能付き情報処理装置
JP2902861B2 (ja) トレース機能付バッファ装置
JPS621040A (ja) コンピユ−タの障害解析装置
JP2518829Y2 (ja) I/oカード異常検出システム
JP3340284B2 (ja) 冗長システム
JPH02139650A (ja) 部分ダンプ方式
JPS6034132B2 (ja) プログラマブル・コントロ−ラ
JPH03292540A (ja) 計算機異常診断装置
JP2000330878A (ja) 通信制御装置
KR19980014207A (ko) 멀티프로세서 시스템의 데이타 프로토콜 처리장치 및 방법