JP2733149B2 - 割込みトレース方式 - Google Patents

割込みトレース方式

Info

Publication number
JP2733149B2
JP2733149B2 JP3144232A JP14423291A JP2733149B2 JP 2733149 B2 JP2733149 B2 JP 2733149B2 JP 3144232 A JP3144232 A JP 3144232A JP 14423291 A JP14423291 A JP 14423291A JP 2733149 B2 JP2733149 B2 JP 2733149B2
Authority
JP
Japan
Prior art keywords
interrupt
data
input
buffer
specific
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 - Fee Related
Application number
JP3144232A
Other languages
English (en)
Other versions
JPH04344542A (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP3144232A priority Critical patent/JP2733149B2/ja
Publication of JPH04344542A publication Critical patent/JPH04344542A/ja
Application granted granted Critical
Publication of JP2733149B2 publication Critical patent/JP2733149B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、中央処理装置に対す
る各割込み信号の入力についてのデータの蓄積を行う割
込みトレース方式に関するものである。
【0002】
【従来の技術】図8は例えば特開昭60−215529
号公報に示された従来の割込みトレース方式を示すブロ
ック図である。図において、1は各種情報処理を実行す
る1チップの中央処理装置(以下、CPUという)であ
り、2はこのCPU1が接続されているデータバスであ
る。
【0003】3はCPU1にデータバス2を介して接続
され、端子IN1〜IN7に入力される各割込み信号に
対応した割込み要求信号をCPU1に与える割込み制御
部である。40〜47は端子IN1〜IN7に入力され
た各割込み信号をラッチするラッチ回路であり、5はラ
ッチ回路40〜47にラッチされた割込み信号を符号化
する符号化回路である。
【0004】6はデータバス2を介してCPU1と接続
され、符号化回路5で符号化された割込み信号を割込み
発生順に順次記憶する割込み発生順序メモリである。7
はこれらラッチ回路40〜47、符号化回路5、および
割込み発生順序メモリ6を制御する制御回路である。
【0005】次に動作について説明する。1チップのC
PU1が組み込まれた計算機システムにおいて、複数種
類の割込み処理を実行させるためには、一般に入力され
た各割込み信号を割込み制御部3を介してCPU1に印
加するようにしている。
【0006】しかしながら、計算機システムではシステ
ムのコントロールが行えなくなったり、システムの機能
が停止してしまうなどのトラブルの解決のため、プログ
ラムの動作記録等、計算機システムがトラブルを発生し
た時のシステムに関する情報をより多く得る必要があ
る。特に割込みは、ハードウェアの状態やプロセス間の
状況、プログラムの動作記録などを知るために重要な情
報である。
【0007】そのため、CPU1に対してそれぞれ異な
った割込み処理を実行させるため、端子IN1〜IN7
に入力される割込み信号を、対応するラッチ回路40〜
47でラッチし、そのラッチ出力を符号化回路5にて符
号化して割込み発生順序メモリ6に順次記録している。
【0008】
【発明が解決しようとする課題】従来の割込みトレース
方式は以上のように構成されているので、マルチタスク
に対する考慮はなされておらず、割込みが発生した記録
のみが蓄積され、トラブルを発生させたプログラムと割
込みとの関係は何等蓄積されていないため、あるタスク
からの割込み要求によって計算機システムにトラブルが
発生した場合、そのトラブルを発生させたタスクと割込
み要求の種類を特定することができず、トラブル発生時
の状況が再現ができないばかりか、割込みのトレース量
も限られるなどの問題点があった。
【0009】この発明は上記のような問題点を解消する
ためになされたもので、トラブルを発生させたタスクお
よび割込み要求の種類を特定することができる割込みト
レース方式を得ることを目的とする。
【0010】
【課題を解決するための手段】請求項1記載の発明に係
る割込みトレース方式は、あらかじめ設定された特定の
割込み番号に入力された割込み信号に応じた割込み番号
が一致している場合、あらかじめ設定された特定の時刻
に割込み信号が入力された場合、およびあらか じめ設定
された特定のタスクが入力された割込み信号に応じて割
込み処理される場合のうちの少なくとも1つに該当する
場合に、発生した割込みの番号、割込み発生の時刻、お
よび割込みが発生したタスクとそのアドレスの中央処理
装置が退避させたメモリからの読み取りを開始し、それ
を割込みデータの保存のためのバッファに保存するもの
である。
【0011】請求項2記載の発明に係る割込みトレース
方式は、あらかじめ設定された特定の割込み番号に入力
された割込み信号に応じた割込み番号が一致している場
合、あらかじめ設定された特定の割込み番号の組み合わ
せが入力された割込み信号に応じた割込み番号の組み合
わせに一致する場合、およびあらかじめ設定された特定
のタスクが入力された割込み信号に応じて割込み処理さ
れる場合のうちの少なくとも1つに該当する場合に、発
生した割込みの番号、割込み発生の時刻、および割込み
が発生したタスクとそのアドレスを前記中央処理装置が
退避させたメモリから読み取り、それを割込みデータの
保存のためのバッファに保存するものである。
【0012】請求項3記載の発明に係る割込みトレース
方式は、バッファをサイクリックバッファとし、割込み
データの蓄積が開始されるスタートポイントと蓄積され
る割込みデータの終端を示すエンドポイントがあらかじ
め設定され、割込みデータをスタートポイントから蓄積
するとともに、蓄積された割込みデータがエンドポイン
トを越える場合には、割込みデータの蓄積をやめる方
式、再びスタートポイントに戻って古い割込みデータの
上に上書きを行う方式、およびプログラムの実行を中止
する方式のうちの少なくとも1つの方式があらかじめ設
定され、その設定された方式に基づいて割込みデータを
蓄積するものである。
【0013】
【作用】請求項1記載の発明における割込みトレース方
式は、割込みの番号、割込み発生の時刻、および割込み
が発生したタスクとそのアドレスをバッファに蓄積させ
ることにより、トラブルを発生させたタスクおよび割込
み要求の種類を特定する ことが可能な割込みトレース方
式を実現する。また、特定の割込み番号、特定の時刻、
および特定のタスクが割込み処理される場合のうちの少
なくとも1つに該当する場合に、割込みデータの保存を
開始することにより、限られた資源であるバッファを有
効に使用し、トラブル発生原因の解析性を向上させる。
【0014】請求項記載の発明における割込みトレー
ス方式は、割込みの番号、割込み発生の時刻、および割
込みが発生したタスクとそのアドレスをバッファに蓄積
させることにより、トラブルを発生させたタスクおよび
割込み要求の種類を特定することが可能な割込みトレー
ス方式を実現する。また、特定の割込み番号、特定の割
込み番号の組み合わせ、および特定のタスクが割込み処
理される場合のうちの少なくとも1つに該当する場合
に、割込みデータ保存することにより、限られた資源
であるバッファを有効に使用し、トラブル発生原因の解
析性を向上させる。
【0015】請求項3記載の発明における割込みトレー
ス方式は、バッファをサイクリックバッファとすること
により、限られたバッファでトラブル発生原因の解析可
能な割込みデータを保存する。
【0016】
【実施例】実施例1. 以下、この発明の実施例を図について説明する。図1は
この発明による割込みトレース方式の一実施例を示す概
念図であり、図2はそのハードウェア構成を示すブロッ
ク図である。
【0017】図2において、1はCPU、3は割込み制
御部で、図8に同一符号を付した従来のそれらに相当す
るものである。8は実行中のタスクに関するデータの退
避も行われる、CPU1の主記憶部としてのメモリであ
り、9はこのメモリ8内に設定され、割込みデータが保
存されるバッファとしてのサイクリックバッファであ
る。また、10はCPU1に現在時刻を与えるタイマで
ある。
【0018】また、図1において、11はメモリ8内に
設定された割込みベクタテーブルであり、12はこの割
込みベクタテーブル11に書き込まれたアドレスによっ
て参照される割込み処理ルーチンである。13は割込み
処理ルーチン12内で呼び出され、割込みデータをサイ
クリックバッファ9に保存する割込みトレースルーチン
である。
【0019】次に動作について説明する。ここで、図3
はこの実施例の処理の流れを示すフローチャート、図4
はその割込みトレースルーチンの内容を示すフローチャ
ート、であり、以下、これらを参照しながら説明する。
【0020】割込みが発生すると、CPU1はステップ
ST1にて現在実行中のタスクに関するデータをメモリ
8に退避させ、タスクの切り換えを行う。次いでステッ
プST2において、CPU1はメモリ8内の割込みベク
タテーブル11をその割込み番号に基づいて参照し、割
込みベクタテーブル11に書かれているアドレスにある
割込み処理ルーチン12に分岐する。
【0021】この割込み処理ルーチン12内では、まず
割込みトレースルーチン13の呼び出しを行い、ステッ
プST3においてその割込みトレースルーチン13の処
理に入る。この割込みトレースルーチン13では、発生
した割込みのデータがサイクリックバッファ9に保存す
る対象となるか否かがステップST6で判定される。
【0022】その結果、保存対象となるものであれば処
理をステップST7に進め、当該割込みの番号、当該割
込みが発生し時刻、当該割込みが発生したタスクおよ
びそのタスクのアドレスを、CPU1が退避させたメモ
リ8より読み取って、割込みデータ保存のためのサイク
リックバッファ9に書き込む。
【0023】図5はこのサイクリックバッファ9への割
込みデータの保存の概念を示す説明図である。このサイ
クリックバッファ9は、データの蓄積が開始されるスタ
ートポイント14と、蓄積したデータの終端を示すエン
ドポイント15がメモリ8上にあらかじめ設定されたも
のであり、保存される割込みデータはスタートポイント
14から順番に蓄積されてゆく。
【0024】ここで、蓄積した割込みデータがあらかじ
め用意したデータ蓄積部分16のメモリ容量を越えよう
とした場合には、 (1)割込みデータの蓄積をやめる方式、 (2)再びスタートポイント14に戻って、古い割込み
データの上に上書きを行う方式、 (3)プログラムの実行そのものを中断する方式、 の3方式中のあらかじめ指定された方式に従って割込み
データが蓄積される。
【0025】一方、ステップST6にて蓄積の対象とは
ならないと判定された場合には、割込みトレースルーチ
ン13を終了して割込み処理ルーチン12へ制御を返
す。その後、ステップST4の割込み処理ルーチン12
が終了すると、ステップST5にてタスクを元に戻して
処理を終了する。
【0026】なお、このようにサイクリックな割込みデ
ータの蓄積方法を用いることによって、トラブルが発生
する一定期間前までの割込みデータを蓄積したり、トラ
ブルの解決に必要な割込みデータのみを蓄積することが
可能となる。
【0027】実施例2. なお、上記実施例では、割込みデータの保存にメモリ8
上に設定されたサイクリックバッファ9を用いた場合に
ついて説明したが、メモリ8上に直線的に蓄積するよう
にしても、また、外部記憶装置に蓄積するようにしても
よく、上記実施例と同様の効果を奏する。
【0028】実施例3. また、上記実施例では、システムの実行時より割込みデ
ータのバッファへの蓄積を開始するものを示したが、 (1)特定の割込み番号 (2)特定の時刻 (3)特定のタスクが特定の割込みを受けたとき 上記の3条件をトリガとして割込みデータの蓄積を行う
割込みトレース方式も考えられる。
【0029】この割込みトレース方式の動作について図
6を用いて説明する。なお、図6は図4におけるステッ
プST6、ST7を書き換えたものである。まず、ステ
ップST8において割込みデータの蓄積が開始されてい
るか否かが判定され、開始されていない場合には、ステ
ップST9〜ST11にてあらかじめ設定されている蓄
積の開始条件に一致しているかどうかの判断を行う。
【0030】すでに割込みデータの蓄積が行われている
場合には、ステップST12において新しい割込みに関
するデータを蓄積して割込み処理ルーチン12へと戻
る。また、ステップST9〜ST11の条件を満たして
いない場合には、ステップST12による割込みデータ
の蓄積を開始せずに割込み処理ルーチンに戻る。ステッ
プST9〜ST11の条件を満たしている場合には、ス
テップST12による割込みデータの蓄積を開始し、以
後順次情報を蓄積する。
【0031】実施例4. さらに、上記実施例では、全ての割込みデータについて
情報の蓄積を行うものを示したが、 (1)特定の割込み番号のみ (2)特定のタスクで発生した割込みのみ (3)割込み番号の組み合わせ 上記の3条件で割込みに関するデータを蓄積する割込み
トレース方式も考えられる。ここで、割込み番号の組み
合わせとは、外部割込みについては複数の割込みが同時
に発生することがあり、この同時に発生する割込み番号
の組み合わせを条件としてデータを蓄積することによ
り、関連して発生したトラブルを特定するための有力な
情報とするものである。
【0032】このトレース方式の動作について図7を用
いて説明する。なお、図7は図2におけるステップST
6とST7を書き換えたものである。まず、ステップS
T13において割込みデータの蓄積を行う割込みの条件
が予め設定されているかどうかの判定が行われる。
【0033】その結果、条件が設定されている場合に
は、設定された条件が上記(1)すなわち特定の割込み
番号の割込みが発生した場合に設定されているときには
ステップST14へ、(2)すなわち割込み番号の組み
合わせに設定されているときにはステップST17へ、
(3)すなわち特定のタスクに対して発生した割込みに
関する情報の収集が設定されているときにはステップS
T20に分岐する。
【0034】そしてステップST15,ST18,ST
21において、発生した割込みが予め設定した割込み番
号やタスクと一致するか否かの判定が行われ、一致した
場合には、ステップST16,ST19,ST22にて
割込みデータの蓄積を行ったのちに割込み処理ルーチン
12に戻る。また、一致しない場合には、ステップST
16,ST19,ST22による割込みデータの蓄積を
行わずに割込み処理ルーチン12戻る。
【0035】なお、ステップST13において蓄積する
割込みの情報に対して条件が設定されていなければ、ス
テップST23に分岐し、ステップST24で割込みデ
ータを蓄積して割込み処理ルーチンに戻る。
【0036】
【発明の効果】以上のように、請求項1記載の発明によ
れば、特定の割込み番号、特定の時刻、および特定のタ
スクが割込み処理される場合のうちの少なくとも1つに
該当する場合に、発生した割込みの番号、割込み発生の
時刻、および割込みが発生したタスクとそのアドレスの
メモリからの読み取りを開始し、バッファに保存するよ
うに構成したので、そのバッファにアクセスしてそこに
保存されている割込みに関するデータを参照することに
より、トラブル発生までにトレースされた割込み番号、
割込み発生時刻、割込みが発生したタスクおよびそのア
ドレスを知ることが可能となり、トラブルを発生させた
タスクおよび割込み要求の種類を特定できる割込みトレ
ース方式が得られる効果がある。また、特定の割込み番
号、特定の時刻、および特定のタスクが割込み処理され
る場合のうちの少なくとも1つに該当する場合に、割込
みデータの保存を開始することにより、限られた資源で
あるバッファを有効に使用し、トラブル発生原因の解析
性を向上させることができる効果がある。
【0037】請求項2記載の発明によれば、特定の割込
み番号、特定の割込み番号の組み合わせ、および特定の
タスクが割込み処理される場合のうちの少なくとも1つ
に該当する場合に、発生した割込みの番号、割込み発生
の時刻、および割込みが発生したタスクとそのアドレス
をメモリから読み取り、バッファに保存するように構成
したので、そのバッファにアクセスしてそこに保存され
ている割込みに関するデータを参照することにより、ト
ラブル発生までにトレースされた割込み番号、割込み発
生時刻、割込みが発生したタスクおよびそのアドレスを
知ることが可能となり、トラブルを発生させたタスクお
よび割込み要求の種類を特定できる割込みトレース方式
が得られる効果がある。また、特定の割込み番号、特定
の割込み番号の組み合わせ、および特定のタスクが割込
み処理される場合のうちの少なくとも1つに該当する場
合に、割込みデータを保存することにより、限られた資
源であるバッファを有効に使用し、トラブル発生原因の
解析性を向上させることができる効果がある。
【0038】請求項3記載の発明によれば、バッファを
サイクリックバッファとするように構成したので、限ら
れたバッファでトラブル発生原因の解析可能な割込みデ
ータを保存することができる効果がある。
【図面の簡単な説明】
【図1】この発明による割込みトレース方式の一実施例
を示す概念図である。
【図2】そのハードウェア構成を示すブロック図であ
る。
【図3】上記実施例の割込みトレース処理の流れを示す
フローチャートである。
【図4】その割込みトレースルーチンの内容を示すフロ
ーチャートである。
【図5】上記実施例のサイクリックバッファへの割込み
データの保存の概念を示す説明図である。
【図6】この発明の他の実施例の割込みルーチンの内容
を示すフローチャートである。
【図7】この発明のさらに他の実施例の割込みルーチン
内容を示すフローチャートである。
【図8】従来の割込みトレース方式を示すブロック図で
ある。
【符号の説明】
1 CPU(中央処理装置) 8 メモリ 9 サイクリックバッファ(バッファ)

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 中央処理装置に対してそれぞれ異なった
    割込み処理を実行させるための各割込み信号の入力につ
    いてのデータの蓄積を行う割込みトレース方式におい
    て、あらかじめ設定された特定の割込み番号に入力され
    た割込み信号に応じた割込み番号が一致している場合、
    あらかじめ設定された特定の時刻に割込み信号が入力さ
    れた場合、およびあらかじめ設定された特定のタスクが
    入力された割込み信号に応じて割込み処理される場合の
    うちの少なくとも1つに該当する場合に、発生した割込
    みの番号、割込み発生の時刻、および割込みが発生した
    タスクとそのアドレス前記中央処理装置が退避させた
    メモリからの読み取りを開始し、それを割込みデータの
    保存のためのバッファに保存することを特徴とする割込
    みトレース方式。
  2. 【請求項2】 中央処理装置に対してそれぞれ異なった
    割込み処理を実行させるための各割込み信号の入力につ
    いてのデータの蓄積を行う割込みトレース方式におい
    て、あらかじめ設定された特定の割込み番号に入力され
    た割込み信号に応じた割込み番号が一致している場合、
    あらかじめ設定された特定の割込み番号の組み合わせが
    入力された割込み信号に応じた割込み番号の組み合わせ
    に一致する場合、およびあらかじめ設定された特定のタ
    スクが入力された割込み信号に応じて割込み処理される
    場合のうちの少なくとも1つに該当する場合に、発生し
    た割込みの番号、割込み発生の時刻、および割込みが発
    生したタスクとそのアドレスを前記中央処理装置が退避
    させたメモリから読み取り、それを割込みデータの保存
    のためのバッファに保存することを特徴とする割込みト
    レース方式。
  3. 【請求項3】 バッファをサイクリックバッファとし、
    割込みデータの蓄積が開始されるスタートポイントと蓄
    積される割込みデータの終端を示すエンドポイントがあ
    らかじめ設定され、割込みデータをスタートポイントか
    ら蓄積するとともに、蓄積された割込みデータがエンド
    ポイントを越える場合には、割込みデータの蓄積をやめ
    る方式、再びスタートポイントに戻って古い割込みデー
    タの上に上書きを行う方式、およびプログラムの実行を
    中止する方式のうちの少なくと も1つの方式があらかじ
    め設定され、その設定された方式に基づいて割込みデー
    タを蓄積することを特徴とする請求項1または請求項2
    記載の割込みトレース方式。
JP3144232A 1991-05-21 1991-05-21 割込みトレース方式 Expired - Fee Related JP2733149B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3144232A JP2733149B2 (ja) 1991-05-21 1991-05-21 割込みトレース方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3144232A JP2733149B2 (ja) 1991-05-21 1991-05-21 割込みトレース方式

Publications (2)

Publication Number Publication Date
JPH04344542A JPH04344542A (ja) 1992-12-01
JP2733149B2 true JP2733149B2 (ja) 1998-03-30

Family

ID=15357320

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3144232A Expired - Fee Related JP2733149B2 (ja) 1991-05-21 1991-05-21 割込みトレース方式

Country Status (1)

Country Link
JP (1) JP2733149B2 (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63155338A (ja) * 1986-12-19 1988-06-28 Nec Corp プログラム実行履歴記録制御方式
JPH02271435A (ja) * 1989-04-13 1990-11-06 Mitsubishi Electric Corp タスクトレース装置

Also Published As

Publication number Publication date
JPH04344542A (ja) 1992-12-01

Similar Documents

Publication Publication Date Title
US4949241A (en) Microcomputer system including a master processor and a slave processor synchronized by three control lines
US5931920A (en) Command interpreter system in an I/O controller
TWI439925B (zh) 內嵌式系統及其執行緒與緩衝區管理方法
CN111291022B (zh) 一种基于区块链的数据存储系统
US5862363A (en) Method of controlling a disk device by disk control unit
JP2733149B2 (ja) 割込みトレース方式
CN115827332A (zh) Mcu处理器核电路结构和mcu跑飞就近恢复现场方法
US6487632B1 (en) Emulation technique for variable-length disk system to access data in a fixed-length disk system
US5860098A (en) Process for running a computer program subject to interrupt
US5170479A (en) File block managing system using next record header position data and delete history data from block header and record headers to locate requested record block
JPH06149485A (ja) データ完結性保証処理方法
JP2878264B1 (ja) トレーサ装置、トレースデータ圧縮方法および圧縮トレースデータ読み出し方法
US6112261A (en) Data transferring system reading and temporarily storing a record until a length of the record is different from a defined record length parameter value
JP2807026B2 (ja) 並列プログラムの実行再現方法
JPH0793101A (ja) データバックアップ装置
JPH0135373B2 (ja)
JP4140750B2 (ja) Icカード内メモリアクセス制御方法および装置並びにプログラム記憶媒体
JPH03137736A (ja) マイクロプロセッサ動作トレース方式
JP2501393B2 (ja) 直接メモリアクセス装置
JP2504754B2 (ja) 中央処理装置
JPH05158627A (ja) ディスク装置
JPH0552538B2 (ja)
JPH0476138B2 (ja)
JPS6212555B2 (ja)
JPH1115702A (ja) 装置内監視制御用メモリ

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071226

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20081226

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20091226

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20091226

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20101226

Year of fee payment: 13

LAPS Cancellation because of no payment of annual fees