JPH1069399A - マイクロコンピュータ - Google Patents
マイクロコンピュータInfo
- Publication number
- JPH1069399A JPH1069399A JP8226581A JP22658196A JPH1069399A JP H1069399 A JPH1069399 A JP H1069399A JP 8226581 A JP8226581 A JP 8226581A JP 22658196 A JP22658196 A JP 22658196A JP H1069399 A JPH1069399 A JP H1069399A
- Authority
- JP
- Japan
- Prior art keywords
- cpu
- register
- microcomputer
- diagnosis
- ram
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2236—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Debugging And Monitoring (AREA)
- Microcomputers (AREA)
Abstract
(57)【要約】
【課題】 CPU故障発見のため、マイコン内部の割込
みにより一連の命令を実行するマクロサービスでCPU
の自己診断を行い、命令読込み時間を短縮する。 【解決手段】 CPUの自己診断のため外部割り込みに
より、CPU監視マクロサービスを起動する。このマク
ロサービスから、命令コード格納領域内のマクロサービ
スコードによって、このマクロサービスが起動する前に
RAMに書き込んだ自己診断の初期値αをレジスタAに
記憶し、初期値を用いてCPUの自己診断の結果の出力
先をアドレスβのレジスタCに格納する。初期値αによ
りRAMのアドレスとパス指定のチェックと、割り込み
時のデータ待避レジスタのチェックを行い、その後、算
術演算ユニットALUで実行結果値を演算し、ALUレ
ジスタに転送する。チェック終了後、その結果値をレジ
スタAに転送し、レジスタCの指定するポートからマイ
コンの外部に出力し、マイコンの状態を判断する。
みにより一連の命令を実行するマクロサービスでCPU
の自己診断を行い、命令読込み時間を短縮する。 【解決手段】 CPUの自己診断のため外部割り込みに
より、CPU監視マクロサービスを起動する。このマク
ロサービスから、命令コード格納領域内のマクロサービ
スコードによって、このマクロサービスが起動する前に
RAMに書き込んだ自己診断の初期値αをレジスタAに
記憶し、初期値を用いてCPUの自己診断の結果の出力
先をアドレスβのレジスタCに格納する。初期値αによ
りRAMのアドレスとパス指定のチェックと、割り込み
時のデータ待避レジスタのチェックを行い、その後、算
術演算ユニットALUで実行結果値を演算し、ALUレ
ジスタに転送する。チェック終了後、その結果値をレジ
スタAに転送し、レジスタCの指定するポートからマイ
コンの外部に出力し、マイコンの状態を判断する。
Description
【0001】
【発明の属する技術分野】マイクロコンピュータに関
し、特に、外部割り込みによりマイクロコンピュータの
CPUの診断における一連の命令を実行するためのプロ
グラムであるCPU監視マクロサービスによるCPUの
自己診断機能を有するマイクロコンピュータに関する。
し、特に、外部割り込みによりマイクロコンピュータの
CPUの診断における一連の命令を実行するためのプロ
グラムであるCPU監視マクロサービスによるCPUの
自己診断機能を有するマイクロコンピュータに関する。
【0002】
【従来の技術】近年、自動車分野において、高性能、安
全性の向上を実現するため、エンジン制御、ブレーキ制
御装置等の主要制御装置にマイクロコンピュータを使用
し、前記マイクロコンピュータによる電子制御装置が自
動車分野で多く使用されるようになった。そのため、エ
ンジン制御装置、ブレーキ制御装置等のユーザーセット
の故障またはマイクロコンピュータの故障によって事故
が発生した場合、人命にも関わるため、同分野において
マイクロコンピュータの高信頼度が要求されている。そ
こで自動車用制御装置の開発ユーザーは、前記マイクロ
コンピュータをユーザー基盤実装後、マイクロコンピュ
ータが故障していないことを確認するため、ユーザーセ
ット出荷前に外部から自己診断用のソフトウェアをマイ
クロコンピュータに与える。与えられた前記ソフトウェ
アに従ってCPUの診断を実施し、前記実行結果から前
記マイクロコンピュータが故障していないことを確認す
る。
全性の向上を実現するため、エンジン制御、ブレーキ制
御装置等の主要制御装置にマイクロコンピュータを使用
し、前記マイクロコンピュータによる電子制御装置が自
動車分野で多く使用されるようになった。そのため、エ
ンジン制御装置、ブレーキ制御装置等のユーザーセット
の故障またはマイクロコンピュータの故障によって事故
が発生した場合、人命にも関わるため、同分野において
マイクロコンピュータの高信頼度が要求されている。そ
こで自動車用制御装置の開発ユーザーは、前記マイクロ
コンピュータをユーザー基盤実装後、マイクロコンピュ
ータが故障していないことを確認するため、ユーザーセ
ット出荷前に外部から自己診断用のソフトウェアをマイ
クロコンピュータに与える。与えられた前記ソフトウェ
アに従ってCPUの診断を実施し、前記実行結果から前
記マイクロコンピュータが故障していないことを確認す
る。
【0003】
【発明が解決しようする課題】ユーザー基盤実装後、ユ
ーザーセット上のマイクロコンピュータの状態を確認す
るため、出荷前に外部からCPUの診断用ソフトウェア
によって、前記マイクロコンピュータの状態を確認して
いる。この時、外部から前記CPU診断ソフトウェアの
命令を読み込んでCPUの診断を実施するため、前記C
PU診断ソフトウェアの命令を読み込む時間が発生す
る。
ーザーセット上のマイクロコンピュータの状態を確認す
るため、出荷前に外部からCPUの診断用ソフトウェア
によって、前記マイクロコンピュータの状態を確認して
いる。この時、外部から前記CPU診断ソフトウェアの
命令を読み込んでCPUの診断を実施するため、前記C
PU診断ソフトウェアの命令を読み込む時間が発生す
る。
【0004】一方、割り込みによる一連の命令を実行す
るマクロサービスと称される先行技術が公開特許公報昭
60−183639「データ処理装置」に記載されてい
る。本特許のマクロサービスは、中央処理装置がプログ
ラムメモリ内のプログラムの実行に係わる第一の処理を
中断し、そのときの状態を保持したまま、記憶部に記憶
したデータの演算および転送処理を行うデータ処理制御
手段を有し、カウンタからの処理要求に応答して前記デ
ータ処理制御手段が前記演算および転送処理を実行する
ようにして、割り込み処理に基づく前記第一の処理の開
始時間を短縮したデータ処理装置を提供するものであ
る。
るマクロサービスと称される先行技術が公開特許公報昭
60−183639「データ処理装置」に記載されてい
る。本特許のマクロサービスは、中央処理装置がプログ
ラムメモリ内のプログラムの実行に係わる第一の処理を
中断し、そのときの状態を保持したまま、記憶部に記憶
したデータの演算および転送処理を行うデータ処理制御
手段を有し、カウンタからの処理要求に応答して前記デ
ータ処理制御手段が前記演算および転送処理を実行する
ようにして、割り込み処理に基づく前記第一の処理の開
始時間を短縮したデータ処理装置を提供するものであ
る。
【0005】しかし、本特許のマクロサービスは、あく
までも割り込みによる外部プログラムの時間短縮が目的
であり、自己のCPUの診断を短時間に済ます目的のも
のでなく、また、そのような構成は示されていないばか
りでなくそのままでは自己診断の機能は持ち合わせてい
ない。
までも割り込みによる外部プログラムの時間短縮が目的
であり、自己のCPUの診断を短時間に済ます目的のも
のでなく、また、そのような構成は示されていないばか
りでなくそのままでは自己診断の機能は持ち合わせてい
ない。
【0006】ユーザー基盤実装後にマイクロコンピュー
タのCPUの自己診断を実施するために、割り込みによ
る一連の命令を実行するマクロサービスを使用すること
で、外部からソフトウェアにてCPUの診断を実施する
時に比べてソフトウェアの命令を読み込む時間が短縮で
きることに着目して、本発明は、短時間でマイクロコン
ピュータのCPUの診断を行えることを目的とする。
タのCPUの自己診断を実施するために、割り込みによ
る一連の命令を実行するマクロサービスを使用すること
で、外部からソフトウェアにてCPUの診断を実施する
時に比べてソフトウェアの命令を読み込む時間が短縮で
きることに着目して、本発明は、短時間でマイクロコン
ピュータのCPUの診断を行えることを目的とする。
【0007】
【課題を解決するための手段】本発明のマイクロコンピ
ュータは、CPUと、読み取り・書き込みが任意にでき
るRAMと、割り込み処理装置と、データバスと、入出
力ポートと、外部割り込みによりマイクロコンピュータ
のCPUの診断を実施するための割り込みによる一連の
命令を実行するためのプログラムであるCPU監視マク
ロサービスと、前記CPU監視マクロサービスの起動に
より外部より先に与えられたデータを参照して、前記マ
イクロコンピュータのCPU内部を診断するCPU診断
手段と、前記CPU診断した結果を前記外部より与えら
れたデータを用いて出力さきである前記マイクロコンピ
ュータのCPU外部に出力する出力手段を含む自己診断
手段を有する。
ュータは、CPUと、読み取り・書き込みが任意にでき
るRAMと、割り込み処理装置と、データバスと、入出
力ポートと、外部割り込みによりマイクロコンピュータ
のCPUの診断を実施するための割り込みによる一連の
命令を実行するためのプログラムであるCPU監視マク
ロサービスと、前記CPU監視マクロサービスの起動に
より外部より先に与えられたデータを参照して、前記マ
イクロコンピュータのCPU内部を診断するCPU診断
手段と、前記CPU診断した結果を前記外部より与えら
れたデータを用いて出力さきである前記マイクロコンピ
ュータのCPU外部に出力する出力手段を含む自己診断
手段を有する。
【0008】また、本発明のマイクロコンピュータは、
CPUと、読み取り・書き込みが任意にできるRAM
と、割り込み処理装置と、データバスと、入出力ポート
と、外部割り込みによりマイクロコンピュータのCPU
の診断を実施するための割り込みによる一連の命令を実
行するためのプログラムであるCPU監視マクロサービ
スを起動させる手段と、起動する前記CPU監視マクロ
サービスのコードを格納する命令コード格納領域である
マイクロROMと、前記マイクロROM内のCPU監視
マクロサービスのコードによって前記CPU監視マクロ
サービス起動前に外部よりRAMに外部メモリ上のユー
ザープログラムにより書き込んだ前記CPUの診断を実
施するための初期値を格納させる第1のレジスタ手段
と、前記RAMに前記同様に外部メモリ上のユーザープ
ログラムで書き込んだ、前記初期値を用いてCPUの診
断実施後の実行結果値の出力先を指定するアドレスを格
納させる第2のレジスタ手段と、前記第1のレジスタに
格納した前記初期値を用いてRAMのアドレスチェック
及びRAMのパス指定チェック、割り込み処理時にデー
タを待避する第3のレジスタ手段と、前記第3のレジス
タを指定する手段と、前記チェック後の実行結果値を算
術演算するユニットで演算した結果を格納する第4のレ
ジスタ手段と、前記チェック終了後、前記第4のレジス
タの実行結果値を前記第1のレジスタに格納し、前記第
1のレジスタに格納した実行結果値を前記第2のレジス
タが指定するポートからマイクロコンピュータの外部に
出力させる出力手段を含み、前記マイクロコンピュータ
の外部にて、前記実行結果値から前記マイクロコンピュ
ータのCPUの状態を確認する自己診断手段を有する。
CPUと、読み取り・書き込みが任意にできるRAM
と、割り込み処理装置と、データバスと、入出力ポート
と、外部割り込みによりマイクロコンピュータのCPU
の診断を実施するための割り込みによる一連の命令を実
行するためのプログラムであるCPU監視マクロサービ
スを起動させる手段と、起動する前記CPU監視マクロ
サービスのコードを格納する命令コード格納領域である
マイクロROMと、前記マイクロROM内のCPU監視
マクロサービスのコードによって前記CPU監視マクロ
サービス起動前に外部よりRAMに外部メモリ上のユー
ザープログラムにより書き込んだ前記CPUの診断を実
施するための初期値を格納させる第1のレジスタ手段
と、前記RAMに前記同様に外部メモリ上のユーザープ
ログラムで書き込んだ、前記初期値を用いてCPUの診
断実施後の実行結果値の出力先を指定するアドレスを格
納させる第2のレジスタ手段と、前記第1のレジスタに
格納した前記初期値を用いてRAMのアドレスチェック
及びRAMのパス指定チェック、割り込み処理時にデー
タを待避する第3のレジスタ手段と、前記第3のレジス
タを指定する手段と、前記チェック後の実行結果値を算
術演算するユニットで演算した結果を格納する第4のレ
ジスタ手段と、前記チェック終了後、前記第4のレジス
タの実行結果値を前記第1のレジスタに格納し、前記第
1のレジスタに格納した実行結果値を前記第2のレジス
タが指定するポートからマイクロコンピュータの外部に
出力させる出力手段を含み、前記マイクロコンピュータ
の外部にて、前記実行結果値から前記マイクロコンピュ
ータのCPUの状態を確認する自己診断手段を有する。
【0009】
【発明の実施の形態】以下に本発明の実施例を図1およ
び図2を参照して説明する。
び図2を参照して説明する。
【0010】図1は本発明の一実施例の構成を示すブロ
ック図で、図2は本発明の一実施例の詳細構成を示すブ
ロック図である。
ック図で、図2は本発明の一実施例の詳細構成を示すブ
ロック図である。
【0011】最初に、図1により本発明の実施例の構成
を説明する。
を説明する。
【0012】本発明のマイクロコンピュータ10は、C
PU1と、読み取り・書き込みが任意にできるRAM2
と、割り込み処理装置3と、データバス4と、入出力ポ
ート5と、外部割り込みによりマイクロコンピュータ1
0のCPU1の診断を実施するための割り込みによる一
連の命令を実行するためのプログラムであるCPU監視
マクロサービス6と、CPU監視マクロサービス6の起
動により外部メモリ11上のデータを参照して、マイク
ロコンピュータ10のCPU1内部を診断するCPU診
断部7と、CPUの診断結果を参照データを用いてマイ
クロコンピュータ10のCPU1の外部に出力する出力
部8を含む自己診断装置9から構成されている。
PU1と、読み取り・書き込みが任意にできるRAM2
と、割り込み処理装置3と、データバス4と、入出力ポ
ート5と、外部割り込みによりマイクロコンピュータ1
0のCPU1の診断を実施するための割り込みによる一
連の命令を実行するためのプログラムであるCPU監視
マクロサービス6と、CPU監視マクロサービス6の起
動により外部メモリ11上のデータを参照して、マイク
ロコンピュータ10のCPU1内部を診断するCPU診
断部7と、CPUの診断結果を参照データを用いてマイ
クロコンピュータ10のCPU1の外部に出力する出力
部8を含む自己診断装置9から構成されている。
【0013】次に、図2により本発明の実施例の詳細構
成を説明する。
成を説明する。
【0014】外部割り込み100により、CPUを診断
するための割り込みにより一連の命令を実行するCPU
監視マクロサービスを起動させる。そして命令や割り込
みに対応する格納領域のアドレス等を生成するマイクロ
ROM制御回路101から指定する命令コード格納領域
であるマイクロROM115内のCPU監視マクロサー
ビスコード102を指定する。CPU監視マクロサービ
スコード102によって、CPU監視マクロサービスが
起動する前に外部127よりRAMに外部メモリ上のユ
ーザープログラムによって書き込んだマイクロコンピュ
ータ125のCPUの診断に使用するための初期値αと
その初期値αを用いてCPUの診断実施後の実行結果値
の出力先を指定するアドレスをTAレジスタ114とレ
ジスタC112に格納する。TAレジスタ114に格納
した初期値αを使用して、RAM110のアドレスチェ
ックと、割り込み処理時にデータを待避させるレジスタ
109の機能を順次チェックする。そのチェック後に、
算術演算ユニットであるALU111で実行結果値の演
算を実施し、演算後の実行結果値を格納するALUレジ
スタ126に転送し、その実行結果値をTAレジスタ1
14に格納する。チェック終了後、TAレジスタ114
に格納した実行結果値を、TCレジスタ112で指定す
るポート118からマイクロコンピュータ125の外部
120に出力し、外部にてユーザーが実行結果値より故
障しているかどうか判断する。
するための割り込みにより一連の命令を実行するCPU
監視マクロサービスを起動させる。そして命令や割り込
みに対応する格納領域のアドレス等を生成するマイクロ
ROM制御回路101から指定する命令コード格納領域
であるマイクロROM115内のCPU監視マクロサー
ビスコード102を指定する。CPU監視マクロサービ
スコード102によって、CPU監視マクロサービスが
起動する前に外部127よりRAMに外部メモリ上のユ
ーザープログラムによって書き込んだマイクロコンピュ
ータ125のCPUの診断に使用するための初期値αと
その初期値αを用いてCPUの診断実施後の実行結果値
の出力先を指定するアドレスをTAレジスタ114とレ
ジスタC112に格納する。TAレジスタ114に格納
した初期値αを使用して、RAM110のアドレスチェ
ックと、割り込み処理時にデータを待避させるレジスタ
109の機能を順次チェックする。そのチェック後に、
算術演算ユニットであるALU111で実行結果値の演
算を実施し、演算後の実行結果値を格納するALUレジ
スタ126に転送し、その実行結果値をTAレジスタ1
14に格納する。チェック終了後、TAレジスタ114
に格納した実行結果値を、TCレジスタ112で指定す
るポート118からマイクロコンピュータ125の外部
120に出力し、外部にてユーザーが実行結果値より故
障しているかどうか判断する。
【0015】次に本発明の実施例の動作について説明す
る。
る。
【0016】外部割り込み100により、CPUの診断
をするための割り込みによる一連の命令を実行するため
のCPU監視マクロサービスを起動させる。CPU監視
マクロサービスの起動により、前記CPU監視マクロサ
ービスが起動する前に外部127から外部メモリ上のユ
ーザープログラムでRAM110に書き込んだCPUの
診断時に使用する初期値αとその初期値の出力先アドレ
スβ(以下、SFR出力先アドレス)を書き込む。初期
値αをTAレジスタ114に、CPUの診断実行結果値
の出力先のアドレスβ(以下、SFRアドレス)はTC
レジスタ112に格納する。
をするための割り込みによる一連の命令を実行するため
のCPU監視マクロサービスを起動させる。CPU監視
マクロサービスの起動により、前記CPU監視マクロサ
ービスが起動する前に外部127から外部メモリ上のユ
ーザープログラムでRAM110に書き込んだCPUの
診断時に使用する初期値αとその初期値の出力先アドレ
スβ(以下、SFR出力先アドレス)を書き込む。初期
値αをTAレジスタ114に、CPUの診断実行結果値
の出力先のアドレスβ(以下、SFRアドレス)はTC
レジスタ112に格納する。
【0017】最初にRAM110のアドレスを生成する
ブロック(以下、RAMAD)105から指定するアド
レスを確認する。CPU監視マクロサービスが起動する
前のRAM110のレジスタrの値aをTBレジスタ1
13に退避させる。TAレジスタ114からCPUを診
断するための初期値αを、RAMAD105から指定す
るRAM110のレジスタrへ転送する。転送後、RA
MAD105より、初期値αを格納したRAM110の
レジスタrを指定する。指定されたRAM110のレジ
スタrの初期値αをALU111に転送し、同時にマイ
クロROM117内のCPU監視マクロサービスコード
102よりALU111の動作を指定するユニット(以
下、ALUDEC)107からALU111に動作を指
定する。ALU111はALUDEC106指定の演算
(デイクリメント)を実施し、演算後の値(d−1)を
TAレジスタ114に転送させる。そして、RAM11
0には、TBレジスタ118に転送した値aをRAM1
10のレジスタrに転送する。
ブロック(以下、RAMAD)105から指定するアド
レスを確認する。CPU監視マクロサービスが起動する
前のRAM110のレジスタrの値aをTBレジスタ1
13に退避させる。TAレジスタ114からCPUを診
断するための初期値αを、RAMAD105から指定す
るRAM110のレジスタrへ転送する。転送後、RA
MAD105より、初期値αを格納したRAM110の
レジスタrを指定する。指定されたRAM110のレジ
スタrの初期値αをALU111に転送し、同時にマイ
クロROM117内のCPU監視マクロサービスコード
102よりALU111の動作を指定するユニット(以
下、ALUDEC)107からALU111に動作を指
定する。ALU111はALUDEC106指定の演算
(デイクリメント)を実施し、演算後の値(d−1)を
TAレジスタ114に転送させる。そして、RAM11
0には、TBレジスタ118に転送した値aをRAM1
10のレジスタrに転送する。
【0018】次に、割り込み処理時にデータを待避させ
るレジスタの下位16ビット(以下、スタックポイン
タ:SP)109をチェックする。最初にSP109の
値bをTBレジスタ113に待避させ、SP109には
RAM110でチェックした後の実行結果値を格納する
TAレジスタ114の値(α一1)を転送する。転送
後、SP109の値(α−1)を、TAレジスタ114
を経由してALU111に転送する。それと同時にマイ
クロROM115内のCPU監視マクロサービスコード
102よりALUDEC107からALU111の動作
を指定し、ALU111はALUDEC107指定の演
算(デイクリメント)を実施し、演算後の値(α一2)
をTAレジスタ114に転送する。SP109には、T
Bレジスタ113に転送した値bを転送する。
るレジスタの下位16ビット(以下、スタックポイン
タ:SP)109をチェックする。最初にSP109の
値bをTBレジスタ113に待避させ、SP109には
RAM110でチェックした後の実行結果値を格納する
TAレジスタ114の値(α一1)を転送する。転送
後、SP109の値(α−1)を、TAレジスタ114
を経由してALU111に転送する。それと同時にマイ
クロROM115内のCPU監視マクロサービスコード
102よりALUDEC107からALU111の動作
を指定し、ALU111はALUDEC107指定の演
算(デイクリメント)を実施し、演算後の値(α一2)
をTAレジスタ114に転送する。SP109には、T
Bレジスタ113に転送した値bを転送する。
【0019】次に前記レジスタの上位4ビット(以下、
スタックポインタ上位:SPH)108のインクリメン
ト・デクリメントの確認を行う。最初にSPH108の
値cをTBレジスタ113に待避させ、SP109のチ
ェック後のデータを格納するTAレジスタ114の値
(α−2)をSPH108に転送する。そしてマイクロ
ROM115内のCPU監視マクロサービスコード10
2により、データ”FFFF(H)”を前記TAレジス
タ114を経由してALU111へ転送する。マイクロ
ROM115内のCPU監視マクロサービスコード10
2よりALUDEC107からALU111の動作を指
定し、ALU111はALUDEC106指定の演算
(インクリメント)を実施する。演算(インクリメン
ト)によりALUレジスタ126のキャリーフラグが”
1”になるため、SPH108に転送した値(α−2)
がデイクリメントされるため、SPH108の値は(α
−3)になる。SPH108の値(α一3)をTAレジ
スタ114に転送し、そしてTBレジスタ113に転送
していたSPH108の値cを転送する。
スタックポインタ上位:SPH)108のインクリメン
ト・デクリメントの確認を行う。最初にSPH108の
値cをTBレジスタ113に待避させ、SP109のチ
ェック後のデータを格納するTAレジスタ114の値
(α−2)をSPH108に転送する。そしてマイクロ
ROM115内のCPU監視マクロサービスコード10
2により、データ”FFFF(H)”を前記TAレジス
タ114を経由してALU111へ転送する。マイクロ
ROM115内のCPU監視マクロサービスコード10
2よりALUDEC107からALU111の動作を指
定し、ALU111はALUDEC106指定の演算
(インクリメント)を実施する。演算(インクリメン
ト)によりALUレジスタ126のキャリーフラグが”
1”になるため、SPH108に転送した値(α−2)
がデイクリメントされるため、SPH108の値は(α
−3)になる。SPH108の値(α一3)をTAレジ
スタ114に転送し、そしてTBレジスタ113に転送
していたSPH108の値cを転送する。
【0020】次に命令コードを取り込む命令コードラッ
チ(以下、TQ)104からRAMAD105で指定す
るRAM110のアドレスへのパス指定のチェックす
る。マイクロROM115内のCPU監視マクロサービ
スコード102により、TQ104にアクセスし、RA
M110に対するアドレスを待避させるためのレジスタ
(以下、TRA)106指定アドレス”0080H”の
RAM110のデータdを、TBレジスタ113に転送
する。SPH108チェック後の値を格納するTAレジ
スタ114の値(α−3)をRAM110のTRA10
6指定アドレスAに転送する。転送後、RAM110の
TRA106指定アドレスAのデータ(αー3)をAL
U111に転送し、マイクロROM115内のCPU監
視マクロサービスコード102よりALUDEC107
からALU111の動作を指定し、ALU111はAL
UDEC106指定の演算(デイクリメント)を実施
し、演算後の値(α一4)をTAレジスタ114に転送
する。そして、TBレジスタ113の値dをRAM11
0のTRA106指定アドレス{0080(H)}に再
転送する。
チ(以下、TQ)104からRAMAD105で指定す
るRAM110のアドレスへのパス指定のチェックす
る。マイクロROM115内のCPU監視マクロサービ
スコード102により、TQ104にアクセスし、RA
M110に対するアドレスを待避させるためのレジスタ
(以下、TRA)106指定アドレス”0080H”の
RAM110のデータdを、TBレジスタ113に転送
する。SPH108チェック後の値を格納するTAレジ
スタ114の値(α−3)をRAM110のTRA10
6指定アドレスAに転送する。転送後、RAM110の
TRA106指定アドレスAのデータ(αー3)をAL
U111に転送し、マイクロROM115内のCPU監
視マクロサービスコード102よりALUDEC107
からALU111の動作を指定し、ALU111はAL
UDEC106指定の演算(デイクリメント)を実施
し、演算後の値(α一4)をTAレジスタ114に転送
する。そして、TBレジスタ113の値dをRAM11
0のTRA106指定アドレス{0080(H)}に再
転送する。
【0021】次にマイクロROM115内のCPU監視
マクロサービスコード102により、TQ104に”0
000(H)”を転送し、TQ104の最下位4ビット
(以下、TQLL)121のチェックをする。前記TQ
LL121により指定するRAM110のアドレスBの
データeをALU111を経由して、TBレジスタ11
3に待避させる。RAM110の指定パスをチェックし
た後の実行結果値を格納するTAレジスタ114の値
(α‐4)を、RAMAD105で指定するRAM11
0のアドレスBに転送する。転送後、RAM110に転
送した値(α一4)をALU111に転送し、マイクロ
ROM内のCPU監視マクロサービスコード102より
ALUDEC107からALU111の動作を指定し、
ALU111はALUDEC107指定の演算(デイク
リメント)実施し、演算結果値(α−5)をTAレジス
タ114に再転送する。そして、TBレジスタに転送し
たRAM110のデータeをTQLL121で指定した
アドレスBに再転送する。
マクロサービスコード102により、TQ104に”0
000(H)”を転送し、TQ104の最下位4ビット
(以下、TQLL)121のチェックをする。前記TQ
LL121により指定するRAM110のアドレスBの
データeをALU111を経由して、TBレジスタ11
3に待避させる。RAM110の指定パスをチェックし
た後の実行結果値を格納するTAレジスタ114の値
(α‐4)を、RAMAD105で指定するRAM11
0のアドレスBに転送する。転送後、RAM110に転
送した値(α一4)をALU111に転送し、マイクロ
ROM内のCPU監視マクロサービスコード102より
ALUDEC107からALU111の動作を指定し、
ALU111はALUDEC107指定の演算(デイク
リメント)実施し、演算結果値(α−5)をTAレジス
タ114に再転送する。そして、TBレジスタに転送し
たRAM110のデータeをTQLL121で指定した
アドレスBに再転送する。
【0022】引続き命令コードラッチの最上位4ビット
(以下、TQHH)124指定のRAM110の指定パ
スのチェックを行う。TQHH124指定アドレスCの
RAM110のデータfをTBレジスタ113に待避さ
せる。そして、TQLL121チェック後の実行結果値
(α−5)を格納するTAレジスタ114値(α−5)
をTQHH124指定アドレスCに転送する。転送後、
RAM110のTQHH124から指定するアドレスC
の値(α一5)をALU111に転送し、マイクロRO
M115内のCPU監視マクロサービスコード102よ
りALUDEC107からALU111の動作を指定
し、ALU111はALUDEC106指定の演算(デ
イクリメント)を実施し、演算後の値(α−6)をTA
レジスタ114に転送する。最後にTBレジスタ113
のデータfをRAM110のTQHH124指定のアド
レスCに転送する。
(以下、TQHH)124指定のRAM110の指定パ
スのチェックを行う。TQHH124指定アドレスCの
RAM110のデータfをTBレジスタ113に待避さ
せる。そして、TQLL121チェック後の実行結果値
(α−5)を格納するTAレジスタ114値(α−5)
をTQHH124指定アドレスCに転送する。転送後、
RAM110のTQHH124から指定するアドレスC
の値(α一5)をALU111に転送し、マイクロRO
M115内のCPU監視マクロサービスコード102よ
りALUDEC107からALU111の動作を指定
し、ALU111はALUDEC106指定の演算(デ
イクリメント)を実施し、演算後の値(α−6)をTA
レジスタ114に転送する。最後にTBレジスタ113
のデータfをRAM110のTQHH124指定のアド
レスCに転送する。
【0023】周辺機能チェック後、最初にSFR出力先
アドレスを格納しているTCレジスタ112のデータβ
をTBレジスタ113に転送し、またTAレジスタ11
4の値(α一6)をTCレジスタ112に転送する。T
Aレジスタ114の値(α一6)とTCレジスタ112
の値(α−6)をマイクロROM115内のCPU監視
マクロサービスコード102によりALUDEC106
からALU111に指定する演算(比較)を実行する。
演算後、演算結果が一致すればTAレジスタ114の値
(α‐6)をALU111に転送し、マイクロROM1
15内のCPU監視マクロサービスコード102よりA
LUDEC107で指示する演算(デイクリメント)を
ALU111実施し、演算後、TAレジスタ114に演
算後の値(α一7)に転送する。
アドレスを格納しているTCレジスタ112のデータβ
をTBレジスタ113に転送し、またTAレジスタ11
4の値(α一6)をTCレジスタ112に転送する。T
Aレジスタ114の値(α一6)とTCレジスタ112
の値(α−6)をマイクロROM115内のCPU監視
マクロサービスコード102によりALUDEC106
からALU111に指定する演算(比較)を実行する。
演算後、演算結果が一致すればTAレジスタ114の値
(α‐6)をALU111に転送し、マイクロROM1
15内のCPU監視マクロサービスコード102よりA
LUDEC107で指示する演算(デイクリメント)を
ALU111実施し、演算後、TAレジスタ114に演
算後の値(α一7)に転送する。
【0024】また演算結果値を格納するTAレジスタ1
14の値(α−7)とTCレジスタ112の値βを、マ
イクロROM内のCPU監視マクロサービスコード10
2によりALUDEC106からALU111に指定す
る演算(比較)を実施する。演算後、演算実施結果が不
一致となれば、TAレジスタ114の値(α一7)をA
LU111に転送し、ALUDEC107で指定する演
算(デイクリメント)をALU111で実施し、演算後
の値(α−8)をTAレジスタ114に再転送する。
14の値(α−7)とTCレジスタ112の値βを、マ
イクロROM内のCPU監視マクロサービスコード10
2によりALUDEC106からALU111に指定す
る演算(比較)を実施する。演算後、演算実施結果が不
一致となれば、TAレジスタ114の値(α一7)をA
LU111に転送し、ALUDEC107で指定する演
算(デイクリメント)をALU111で実施し、演算後
の値(α−8)をTAレジスタ114に再転送する。
【0025】最終的に、TBレジスタ113に格納して
いるSFR出力先のアドレスに、CPUの診断実行デー
タを格納しているTAレジスタ114の値(α−8)を
ポート118からマイクロコンピュータ125の外部1
20に出力される。CPU診断実行結果データ(α−
8)から、外部にてユーザーがCPUの状態を確認する
ことができる。
いるSFR出力先のアドレスに、CPUの診断実行デー
タを格納しているTAレジスタ114の値(α−8)を
ポート118からマイクロコンピュータ125の外部1
20に出力される。CPU診断実行結果データ(α−
8)から、外部にてユーザーがCPUの状態を確認する
ことができる。
【0026】
【発明の効果】内部の割り込みによる一連の命令を実行
するCPU診断マクロサービスによりCPUの診断を実
施するため、従来実施している外部からソフトウェアに
よって自己診断を実施する方法より、ソフトウェアの命
令を読み込む時間が減少できるため、ユーザー基盤上で
も短時間でマイクロコンピュータのCPUの診断を行う
ことができる。
するCPU診断マクロサービスによりCPUの診断を実
施するため、従来実施している外部からソフトウェアに
よって自己診断を実施する方法より、ソフトウェアの命
令を読み込む時間が減少できるため、ユーザー基盤上で
も短時間でマイクロコンピュータのCPUの診断を行う
ことができる。
【図面の簡単な説明】
【図1】本発明の一実施例の構成を示すブロック図であ
る。
る。
【図2】本発明の一実施例の詳細構成を示すブロック図
である。
である。
1 CPU 2 RAM 3 割込み処理装置 4 データバス 5 入出力ポート 6 CPU監視マクロサービス 7 CPU診断部 8 出力部 9 自己診断装置 10 マイクロコンピュータ 11 外部メモリ 100 外部割り込み 101 マイクロROM制御回路 102 CPU監視マクロサービスコード 103 データバス(DBUS) 104 命令コードラッチ(TQ) 105 RAMアドレスバッファ(RAMAD) 106 RAMアドレステンポラリレジスタ(TR
A) 107 算術演算ユニット動作指定(ALUDE
C) 108 スタックポインタ上位8ビット(SPH) 109 スタックポインタ下位16ビット(SP) 110 RAM lll 算術演算ユニット(ALU) 112 レジスタC(TC) 113 レジスタB(TB) 114 レジスタA(TA) 115 マイクロROM(μROM) 116 マイクロオーダー(μ0RDER) 117 特殊オーダー(特殊0RDER) 118 ポート 119 プログラムステータスワード(PSW) 120 マイクロコンピュータ外部へ出力 121 命令コードラッチTQLL(最下位4ビッ
ト) 122 命令コードラッチTQLH(TQLLより
上位4ビット) 123 命令コードラッチTQHL(TQLHより
上位4ビット) 124 命令コードラッチTQHH(最上位4ビッ
ト) 125 マイクロコンピュータ 126 ALUレジスタ 127 マイクロコンピュータ内部へ入力
A) 107 算術演算ユニット動作指定(ALUDE
C) 108 スタックポインタ上位8ビット(SPH) 109 スタックポインタ下位16ビット(SP) 110 RAM lll 算術演算ユニット(ALU) 112 レジスタC(TC) 113 レジスタB(TB) 114 レジスタA(TA) 115 マイクロROM(μROM) 116 マイクロオーダー(μ0RDER) 117 特殊オーダー(特殊0RDER) 118 ポート 119 プログラムステータスワード(PSW) 120 マイクロコンピュータ外部へ出力 121 命令コードラッチTQLL(最下位4ビッ
ト) 122 命令コードラッチTQLH(TQLLより
上位4ビット) 123 命令コードラッチTQHL(TQLHより
上位4ビット) 124 命令コードラッチTQHH(最上位4ビッ
ト) 125 マイクロコンピュータ 126 ALUレジスタ 127 マイクロコンピュータ内部へ入力
Claims (2)
- 【請求項1】 CPUと、読み取り・書き込みが任意に
できるRAMと、割り込み処理装置と、データバスと、
入出力ポートと、 外部割り込みによりマイクロコンピュータのCPUの診
断を実施するための割り込みによる一連の命令を実行す
るためのプログラムであるCPU監視マクロサービス
と、前記CPU監視マクロサービスの起動により外部よ
り先に与えられたデータを参照して、前記マイクロコン
ピュータのCPU内部を診断するCPU診断手段と、前
記CPU診断した結果を前記外部より与えられたデータ
を用いて出力さきである前記マイクロコンピュータのC
PU外部に出力する出力手段を含む自己診断手段を有す
るマイクロコンピュータ。 - 【請求項2】 CPUと、読み取り・書き込みが任意に
できるRAMと、割り込み処理装置と、データバスと、
入出力ポートと、 外部割り込みによりマイクロコンピュータのCPUの診
断を実施するための割り込みによる一連の命令を実行す
るためのプログラムであるCPU監視マクロサービスを
起動させる手段と、起動する前記CPU監視マクロサー
ビスのコードを格納する命令コード格納領域であるマイ
クロROMと、前記マイクロROM内のCPU監視マク
ロサービスのコードによって前記CPU監視マクロサー
ビス起動前に外部よりRAMに外部メモリ上のユーザー
プログラムにより書き込んだ前記CPUの診断を実施す
るための初期値を格納させる第1のレジスタ手段と、前
記RAMに前記同様に外部メモリ上のユーザープログラ
ムで書き込んだ、前記初期値を用いてCPUの診断実施
後の実行結果値の出力先を指定するアドレスを格納させ
る第2のレジスタ手段と、前記第1のレジスタに格納し
た前記初期値を用いてRAMのアドレスチェック及びR
AMのパス指定チェック、割り込み処理時にデータを待
避する第3のレジスタ手段と、前記第3のレジスタを指
定する手段と、前記チェック後の実行結果値を算術演算
するユニットで演算した結果を格納する第4のレジスタ
手段と、前記チェック終了後、前記第4のレジスタの実
行結果値を前記第1のレジスタに格納し、前記第1のレ
ジスタに格納した実行結果値を前記第2のレジスタが指
定するポートからマイクロコンピュータの外部に出力さ
せる出力手段を含み、前記マイクロコンピュータの外部
にて、前記実行結果値から前記マイクロコンピュータの
CPUの状態を確認する自己診断手段を有するマイクロ
コンピュータ。
Priority Applications (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP08226581A JP3141787B2 (ja) | 1996-08-28 | 1996-08-28 | マイクロコンピュータ |
| DE69725808T DE69725808T2 (de) | 1996-08-28 | 1997-08-27 | Mikrorechner mit Selbstprüfungseinheit |
| EP97114870A EP0827080B1 (en) | 1996-08-28 | 1997-08-27 | Mircrocomputer with selfdiagnostic unit |
| KR1019970045783A KR19980019215A (ko) | 1996-08-28 | 1997-08-28 | 자기진단 유닛을 구비한 마이크로컴퓨터(Microcomputer with self-diagnostic unit) |
| US08/920,043 US6125456A (en) | 1996-08-28 | 1997-08-28 | Microcomputer with self-diagnostic unit |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP08226581A JP3141787B2 (ja) | 1996-08-28 | 1996-08-28 | マイクロコンピュータ |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH1069399A true JPH1069399A (ja) | 1998-03-10 |
| JP3141787B2 JP3141787B2 (ja) | 2001-03-05 |
Family
ID=16847422
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP08226581A Expired - Fee Related JP3141787B2 (ja) | 1996-08-28 | 1996-08-28 | マイクロコンピュータ |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US6125456A (ja) |
| EP (1) | EP0827080B1 (ja) |
| JP (1) | JP3141787B2 (ja) |
| KR (1) | KR19980019215A (ja) |
| DE (1) | DE69725808T2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2012074057A (ja) * | 2003-07-11 | 2012-04-12 | Yogitech Spa | 信頼性のあるマイクロコントローラ並びにその設計方法及びそのためのコンピュータプログラム |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE19833208C1 (de) | 1998-07-23 | 1999-10-28 | Siemens Ag | Integrierte Schaltung mit einer Selbsttesteinrichtung zur Durchführung eines Selbsttests der integrierten Schaltung |
| DE10041697A1 (de) * | 2000-08-24 | 2002-03-14 | Infineon Technologies Ag | Verfahren zum Testen einer programmgesteuerten Einheit durch eine externe Testvorrichtung |
| US7856549B2 (en) * | 2007-01-24 | 2010-12-21 | Hewlett-Packard Development Company, L.P. | Regulating power consumption |
| GB2561881A (en) | 2017-04-27 | 2018-10-31 | Airbus Group Ltd | Microcontroller |
Family Cites Families (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0018736A1 (en) * | 1979-05-01 | 1980-11-12 | Motorola, Inc. | Self-testing microcomputer and method of testing |
| JPS5696331A (en) * | 1979-12-28 | 1981-08-04 | Fujitsu Ltd | Panel function control system |
| JPS5920069A (ja) * | 1982-07-26 | 1984-02-01 | Toshiba Corp | 1チツプマイクロコンピユ−タ |
| EP0153764B1 (en) * | 1984-03-02 | 1993-11-03 | Nec Corporation | Information processor having an interruption operating function |
| JPS60183639A (ja) * | 1984-03-02 | 1985-09-19 | Nec Corp | デ−タ処理装置 |
| JPH0821028B2 (ja) * | 1986-04-23 | 1996-03-04 | 株式会社日立製作所 | デ−タ処理装置 |
| JPS6367647A (ja) * | 1986-09-09 | 1988-03-26 | Yokogawa Electric Corp | マイクロプロセツサ応用機器 |
| JPH0212432A (ja) * | 1988-06-30 | 1990-01-17 | Nec Corp | データ処理装置 |
| JPH06105432B2 (ja) * | 1989-06-01 | 1994-12-21 | 三菱電機株式会社 | マイクロプロセッサ |
| JPH0410138A (ja) * | 1990-04-27 | 1992-01-14 | Omron Corp | テストプログラム機能付き制御装置 |
| JPH04178742A (ja) * | 1990-11-13 | 1992-06-25 | Mitsubishi Electric Corp | 装置診断制御方式 |
| JPH05233352A (ja) * | 1992-02-19 | 1993-09-10 | Nec Corp | マイクロプロセッサ |
| EP0569969B1 (en) * | 1992-05-12 | 1998-03-04 | Nec Corporation | Microcomputer having instruction memory storing instructions for reading out internal conditions |
| JPH06162225A (ja) * | 1992-11-17 | 1994-06-10 | Hitachi Ltd | 自己テスト機能内蔵シングルチップマイコン |
| JP3323009B2 (ja) * | 1994-09-29 | 2002-09-09 | 日本電気株式会社 | データ処理装置 |
| JPH08137824A (ja) * | 1994-11-15 | 1996-05-31 | Mitsubishi Semiconductor Software Kk | セルフテスト機能内蔵シングルチップマイコン |
-
1996
- 1996-08-28 JP JP08226581A patent/JP3141787B2/ja not_active Expired - Fee Related
-
1997
- 1997-08-27 DE DE69725808T patent/DE69725808T2/de not_active Expired - Fee Related
- 1997-08-27 EP EP97114870A patent/EP0827080B1/en not_active Expired - Lifetime
- 1997-08-28 US US08/920,043 patent/US6125456A/en not_active Expired - Fee Related
- 1997-08-28 KR KR1019970045783A patent/KR19980019215A/ko not_active Ceased
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2012074057A (ja) * | 2003-07-11 | 2012-04-12 | Yogitech Spa | 信頼性のあるマイクロコントローラ並びにその設計方法及びそのためのコンピュータプログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| EP0827080A2 (en) | 1998-03-04 |
| DE69725808T2 (de) | 2004-05-19 |
| US6125456A (en) | 2000-09-26 |
| EP0827080A3 (en) | 1999-05-06 |
| JP3141787B2 (ja) | 2001-03-05 |
| DE69725808D1 (de) | 2003-12-04 |
| KR19980019215A (ko) | 1998-06-05 |
| EP0827080B1 (en) | 2003-10-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0702297A1 (en) | A data processor with breakpoint circuit and method therefor | |
| JPH08161279A (ja) | マルチプロセッサシステム | |
| JP3141787B2 (ja) | マイクロコンピュータ | |
| JPS63118951A (ja) | シングルチップマイクロコンピュータ及びそのテスト方法 | |
| JP3110222B2 (ja) | マイクロコンピュータ | |
| JP3192229B2 (ja) | 装置周辺部の診断機能を持つ情報処理装置 | |
| JP3951371B2 (ja) | ウォッチドッグタイマ及びマイクロコンピュータ | |
| JP3344432B2 (ja) | 情報処理装置 | |
| JPS5922147A (ja) | 再試行処理のチエツク方式 | |
| JPS5835648A (ja) | プログラム実行制御方式 | |
| JPH0683987A (ja) | マイクロコンピュータ | |
| JPS6127778B2 (ja) | ||
| JP2710483B2 (ja) | 半導体集積回路 | |
| JPS5833758A (ja) | プログラマブル・コントロ−ラ | |
| JP2531112B2 (ja) | 情報処理装置 | |
| JPS6029131B2 (ja) | 診断方式 | |
| JPH11212945A (ja) | マイクロコンピュータおよびそのメモリ | |
| JP2006172331A (ja) | マイクロコントローラ | |
| JP2002150795A (ja) | 半導体集積回路 | |
| JPH02144744A (ja) | 外部メモリ診断機能付lsi | |
| JPH10312310A (ja) | 中央処理装置の自己診断方法および自己診断機能を備えた中央処理装置 | |
| JPH07281922A (ja) | 計算機のcpu診断方法 | |
| JPH0148563B2 (ja) | ||
| JPS61210441A (ja) | プログラムのバグ検出方法 | |
| JPS59191662A (ja) | プログラム暴走検出方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071222 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081222 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091222 Year of fee payment: 9 |
|
| LAPS | Cancellation because of no payment of annual fees |