JPH0831054B2 - 履歴情報格納方式 - Google Patents
履歴情報格納方式Info
- Publication number
- JPH0831054B2 JPH0831054B2 JP63256844A JP25684488A JPH0831054B2 JP H0831054 B2 JPH0831054 B2 JP H0831054B2 JP 63256844 A JP63256844 A JP 63256844A JP 25684488 A JP25684488 A JP 25684488A JP H0831054 B2 JPH0831054 B2 JP H0831054B2
- Authority
- JP
- Japan
- Prior art keywords
- register
- tracer
- timing
- history information
- address
- 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
Links
Landscapes
- Debugging And Monitoring (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は履歴情報の格納方式に係り、特に制御記憶に
格納されたマイクロプログラムで制御されるデータ処理
システムで、実行したマイクロ命令のアドレスおよび制
御情報を履歴情報として格納するトレーサにおける履歴
情報格納方式に関するものである。
格納されたマイクロプログラムで制御されるデータ処理
システムで、実行したマイクロ命令のアドレスおよび制
御情報を履歴情報として格納するトレーサにおける履歴
情報格納方式に関するものである。
マイクロプログラムで制御されるデータ処理システム
においては、RAS(Reliability Availability Servicea
eility)の一環としてマイクロ命令アドレスなどの時系
列データをトレーサメモリ中に格納しておき、障害発生
時やデバグ作業においてトレーサメモリに格納された履
歴情報を読み出し、その内容を解析し、問題の発生原因
の究明や処理対策を行うようにしている。
においては、RAS(Reliability Availability Servicea
eility)の一環としてマイクロ命令アドレスなどの時系
列データをトレーサメモリ中に格納しておき、障害発生
時やデバグ作業においてトレーサメモリに格納された履
歴情報を読み出し、その内容を解析し、問題の発生原因
の究明や処理対策を行うようにしている。
そして、従来のマイクロ命令シーケンストレースは第
5図に示すように、実行したマイクロ命令アドレスをす
べて一率にトレースする構成となつていた。
5図に示すように、実行したマイクロ命令アドレスをす
べて一率にトレースする構成となつていた。
従来のマイクロ命令シーケンストレースの一例を示す
第5図において、1はマイクロプログラムを格納してい
る制御記憶(メモリ)、2はこの制御記憶(メモリ)1
をアクセスするためのマイクロ命令アドレスを保持する
レジスタである。3はアクセスされたマイクロ命令を受
けるレジスタであり、いくつかのフイールドに分かれて
いる。そして、各フイールドの出力が直接個々の回路
(図示せず)を制御し、マイクロ命令を実行することに
なる。フイールド31はマイクロ命令の順序制御を行うコ
マンドのフイールドであり、信号線103を介して分岐判
定回路4に入力される。ここで、上記コマンドは大きく
分けると、無条件分岐コマンドと条件分岐コマンドの2
つに分かれるが、無条件分岐コマンドであると分岐判定
回路4の出力はレジスタ2に保持されているアドレスそ
のものとなり、条件分岐コマンドであると分岐判定回路
4の出力はレジスタ2に保持されているアドレスを分岐
判定条件104で修飾したアドレスとなる。そして、レジ
スタ5は分岐判定回路4の出力を受けるレジスタであ
り、常に実際に実行するマイクロ命令のアドレスを保持
する。
第5図において、1はマイクロプログラムを格納してい
る制御記憶(メモリ)、2はこの制御記憶(メモリ)1
をアクセスするためのマイクロ命令アドレスを保持する
レジスタである。3はアクセスされたマイクロ命令を受
けるレジスタであり、いくつかのフイールドに分かれて
いる。そして、各フイールドの出力が直接個々の回路
(図示せず)を制御し、マイクロ命令を実行することに
なる。フイールド31はマイクロ命令の順序制御を行うコ
マンドのフイールドであり、信号線103を介して分岐判
定回路4に入力される。ここで、上記コマンドは大きく
分けると、無条件分岐コマンドと条件分岐コマンドの2
つに分かれるが、無条件分岐コマンドであると分岐判定
回路4の出力はレジスタ2に保持されているアドレスそ
のものとなり、条件分岐コマンドであると分岐判定回路
4の出力はレジスタ2に保持されているアドレスを分岐
判定条件104で修飾したアドレスとなる。そして、レジ
スタ5は分岐判定回路4の出力を受けるレジスタであ
り、常に実際に実行するマイクロ命令のアドレスを保持
する。
レジスタ2には命令開始時または割込み処理開始時で
はその開始アドレスが信号線101を介してセツトされ、
その後は開始アドレスでアクセスしたマイクロ命令語の
中のネクストアドレスが信号線102を介してセットさ
れ、順次マイクロプログラムを実行していく。
はその開始アドレスが信号線101を介してセツトされ、
その後は開始アドレスでアクセスしたマイクロ命令語の
中のネクストアドレスが信号線102を介してセットさ
れ、順次マイクロプログラムを実行していく。
レジスタ6はトレーサへの書込みデータを保持するレ
ジスタであり、レジスタ5の保持しているデータ(マイ
クロ命令アドレス)がセツトされる。レジスタ7はトレ
ーサメモリ8のアドレスを保持するアドレスレジスタ
で、トレーサへデータが格納される毎に+1加算され
る。
ジスタであり、レジスタ5の保持しているデータ(マイ
クロ命令アドレス)がセツトされる。レジスタ7はトレ
ーサメモリ8のアドレスを保持するアドレスレジスタ
で、トレーサへデータが格納される毎に+1加算され
る。
以上説明した構成により実行したマイクロ命令のアド
レスがすべて一率にトレーサメモリ8にサイクリツクに
履歴情報として格納される。
レスがすべて一率にトレーサメモリ8にサイクリツクに
履歴情報として格納される。
上述した従来のマイクロ命令シーケンストレースで
は、本来、履歴情報としてはマイクロ命令のシーケンス
が分岐するときの分岐方向だけ残せばその履歴情報から
実際のシーケンスを追うことが可能であるにもかかわら
ず、実行したマイクロ命令アドレスを全て一率に履歴情
報としてトレーサメモリに格納していた。このため、ト
レーサメモリは大容量のメモリを必要とするのみなら
ず、特にループを構成するマイクロプログラムにおいて
は、その履歴内容に冗長の部分が多くなり、メモリ資源
が有利に利用されないという課題があつた。
は、本来、履歴情報としてはマイクロ命令のシーケンス
が分岐するときの分岐方向だけ残せばその履歴情報から
実際のシーケンスを追うことが可能であるにもかかわら
ず、実行したマイクロ命令アドレスを全て一率に履歴情
報としてトレーサメモリに格納していた。このため、ト
レーサメモリは大容量のメモリを必要とするのみなら
ず、特にループを構成するマイクロプログラムにおいて
は、その履歴内容に冗長の部分が多くなり、メモリ資源
が有利に利用されないという課題があつた。
本発明の履歴情報格納方式は、制御記憶に格納された
マイクロプログラムで制御されるデータ処理システム
で、実行したマイクロ命令のアドレスおよび制御情報を
履歴情報として格納するトレーサにおいて、マイクロ命
令が条件分岐したときその分岐方向が前回条件分岐した
ときの分岐方向と一致しているかをチェックし、一致し
ていればマイクロプログラムのループ処理の出現とみな
してその連続一致回数を計数し、この計数結果を履歴情
報と格納する格納手段を備え、この計数結果が2以上と
なるときは、計数結果のみを履歴情報として格納するよ
うにしたものである。
マイクロプログラムで制御されるデータ処理システム
で、実行したマイクロ命令のアドレスおよび制御情報を
履歴情報として格納するトレーサにおいて、マイクロ命
令が条件分岐したときその分岐方向が前回条件分岐した
ときの分岐方向と一致しているかをチェックし、一致し
ていればマイクロプログラムのループ処理の出現とみな
してその連続一致回数を計数し、この計数結果を履歴情
報と格納する格納手段を備え、この計数結果が2以上と
なるときは、計数結果のみを履歴情報として格納するよ
うにしたものである。
本発明においては、不必要な履歴情報が格納されな
く、また、ループのような繰り返しシーケンスのトレー
スにおいてはその繰り返しの回数を履歴情報とする。
く、また、ループのような繰り返しシーケンスのトレー
スにおいてはその繰り返しの回数を履歴情報とする。
以下、図面に基づき本発明の実施例を詳細に説明す
る。
る。
第1図は本発明による履歴情報格納方式の一実施例を
示すブロック図である。
示すブロック図である。
この第1図において第5図と同一符号のものは相当部
分を示し、9はレジスタ3のフイールド31を次のタイミ
ングでセットするレジスタであり、マイクロ命令順序制
御コマンドを保持する。10はレジスタ9の保持している
データが条件分岐コマンドであることを検出するデコー
ダであり、その結果がレジスタ11にセツトされる。そし
て、デコーダ10の出力105はレジスタ(トレーサ書込み
データレジスタ)6とレジスタ(トレーサアドレスレジ
スタ)7およびカウンタ12ならびにレジスタ13のセツト
信号でもある。レジスタ11はトレーサ書込み許可を示す
イネーブル信号を出力する。
分を示し、9はレジスタ3のフイールド31を次のタイミ
ングでセットするレジスタであり、マイクロ命令順序制
御コマンドを保持する。10はレジスタ9の保持している
データが条件分岐コマンドであることを検出するデコー
ダであり、その結果がレジスタ11にセツトされる。そし
て、デコーダ10の出力105はレジスタ(トレーサ書込み
データレジスタ)6とレジスタ(トレーサアドレスレジ
スタ)7およびカウンタ12ならびにレジスタ13のセツト
信号でもある。レジスタ11はトレーサ書込み許可を示す
イネーブル信号を出力する。
そして、レジスタ(トレーサ書込みデータレジスタ)
6には、レジスタ9が条件分岐コマンドを保持したとき
だけ、レジスタ5の保持しているマイクロ命令アドレス
がセツトされる。つまり、マイクロ命令シーケンスが条
件分岐したときのその分岐方向アドレスを保持する。比
較回路14はレジスタ5とレジスタ6の値を比較し、その
比較結果はデコーダ10の出力105(セツト信号)により
レジスタ13にセツトされる。このレジスタ(分岐方向一
致フラグレジスタ)13はマイクロ命令シーケンスが条件
分岐したときの分岐方向が、前回の条件分岐時の分岐方
向と同じであるかどうかを示す。そして、レジスタ(分
岐方向一致フラグレジスタ)13の出力はセレクタ15の選
択信号108となり、このセレクタ15は分岐方向一致フラ
グが不一致であればレジスタ(トレーサ書込みデータレ
ジスタ)6の出力を選択し、一致であればカウンタ12の
出力を選択する。このカウンタ12はデコーダ10の出力10
5(セツト信号)により+1ずつ加算するカウンタであ
る。そして、デコーダ10の出力105(セツト信号)がON
でも比較回路14の比較結果が不一致であると常に初期値
「001」にリセットされる。
6には、レジスタ9が条件分岐コマンドを保持したとき
だけ、レジスタ5の保持しているマイクロ命令アドレス
がセツトされる。つまり、マイクロ命令シーケンスが条
件分岐したときのその分岐方向アドレスを保持する。比
較回路14はレジスタ5とレジスタ6の値を比較し、その
比較結果はデコーダ10の出力105(セツト信号)により
レジスタ13にセツトされる。このレジスタ(分岐方向一
致フラグレジスタ)13はマイクロ命令シーケンスが条件
分岐したときの分岐方向が、前回の条件分岐時の分岐方
向と同じであるかどうかを示す。そして、レジスタ(分
岐方向一致フラグレジスタ)13の出力はセレクタ15の選
択信号108となり、このセレクタ15は分岐方向一致フラ
グが不一致であればレジスタ(トレーサ書込みデータレ
ジスタ)6の出力を選択し、一致であればカウンタ12の
出力を選択する。このカウンタ12はデコーダ10の出力10
5(セツト信号)により+1ずつ加算するカウンタであ
る。そして、デコーダ10の出力105(セツト信号)がON
でも比較回路14の比較結果が不一致であると常に初期値
「001」にリセットされる。
このカウンタ12のカウント値はマイクロ命令シーケン
スが同一方向に連続して条件分岐した回数を表わす。
スが同一方向に連続して条件分岐した回数を表わす。
デコーダ16はカウンタ12のカウント値が初期値「00
1」であることを検出し、その出力はレジスタ7のセツ
ト条件の1つとなる。そのレジスタ7はトレーサのアド
レスを保持するアドレスレジスタであり、デコーダ16の
出力107と比較回路14の出力106の反転値110がオアゲー
ト17でORされた出力109とデコーダ10の出力105(セット
信号)とがアンドゲート18でANDされた結果により+1
加算される。すなわち、マイクロ命令シーケンスが条件
分岐であり、かつカウンタ12のカウント値が初期値「00
1」であるか、または比較回路14の比較結果が不一致で
あるとき+1加算される。また、その加算結果のオーバ
ーフローは無視されサイクリツクなアドレスとなる。19
は比較回路14の出力106を入力とするナンドゲートであ
る。
1」であることを検出し、その出力はレジスタ7のセツ
ト条件の1つとなる。そのレジスタ7はトレーサのアド
レスを保持するアドレスレジスタであり、デコーダ16の
出力107と比較回路14の出力106の反転値110がオアゲー
ト17でORされた出力109とデコーダ10の出力105(セット
信号)とがアンドゲート18でANDされた結果により+1
加算される。すなわち、マイクロ命令シーケンスが条件
分岐であり、かつカウンタ12のカウント値が初期値「00
1」であるか、または比較回路14の比較結果が不一致で
あるとき+1加算される。また、その加算結果のオーバ
ーフローは無視されサイクリツクなアドレスとなる。19
は比較回路14の出力106を入力とするナンドゲートであ
る。
そして、レジスタ5,6,7とトレーサメモリ8およびレ
ジスタ9ならびにデコーダ10,レジスタ11,セレクタ15は
マイクロ命令が条件分岐したときその分岐方向を履歴情
報として格納する手段を構成し、また、レジスタ5,6,7
とトレーサメモリ8およびカウンタ12ならびにレジスタ
13,比較回路14,セレクタ15はマイクロ命令が条件分岐し
たときその分岐方向が前回条件分岐したときの分岐方向
と一致しているかをチエツクし一致していればその連続
一致回数を計数し履歴情報として格納する手段を構成し
ている。
ジスタ9ならびにデコーダ10,レジスタ11,セレクタ15は
マイクロ命令が条件分岐したときその分岐方向を履歴情
報として格納する手段を構成し、また、レジスタ5,6,7
とトレーサメモリ8およびカウンタ12ならびにレジスタ
13,比較回路14,セレクタ15はマイクロ命令が条件分岐し
たときその分岐方向が前回条件分岐したときの分岐方向
と一致しているかをチエツクし一致していればその連続
一致回数を計数し履歴情報として格納する手段を構成し
ている。
つぎに、動作フローについて第2図に示すマイクロプ
ログラムを例に説明する。
ログラムを例に説明する。
この第2図において、アルファベットA,B,C・・・は
マイクロ命令アドレスを示し、マイクロ命令Aと呼ぶと
きは、アドレスAのマイクロ命令のことである。この例
では、BからEへ条件分岐し、EからGへ条件分岐し、
Kから3回Jへ条件分岐し、最後にKからLへ条件分岐
する。すなわち、トレーサメモリの格納結果を示す第3
図の(a)で示される順序でマイクロプログラムが実行
されるものとする。なお、この第3図において、(a)
は従来のトレーサメモリの格納結果を示したものであ
り、(b)は本発明のトレーサメモリの格納結果を示し
たものである。
マイクロ命令アドレスを示し、マイクロ命令Aと呼ぶと
きは、アドレスAのマイクロ命令のことである。この例
では、BからEへ条件分岐し、EからGへ条件分岐し、
Kから3回Jへ条件分岐し、最後にKからLへ条件分岐
する。すなわち、トレーサメモリの格納結果を示す第3
図の(a)で示される順序でマイクロプログラムが実行
されるものとする。なお、この第3図において、(a)
は従来のトレーサメモリの格納結果を示したものであ
り、(b)は本発明のトレーサメモリの格納結果を示し
たものである。
第4図は本発明における動作のタイムチヤートで、第
2図のマイクロプログラムを実行したときの各レジスタ
のタイムチヤートを示す。
2図のマイクロプログラムを実行したときの各レジスタ
のタイムチヤートを示す。
この第4図において、(a)はレジスタ9(:マイク
ロ命令順序制御コマンド)を示したものであり、(b)
はレジスタ5(:マイクロ命令実行アドレス)、(c)
はレジスタ6(:トレーサ書込みデータ)、(d)はレ
ジスタ11(:トレーサライトイネーブル)、(e)はレ
ジスタ13(:分岐方向一致フラグ)、(f)はカウンタ
12、(g)はレジスタ7(:トレーサアドレス)、
(h)はトレーサメモリ8を示したものである。
ロ命令順序制御コマンド)を示したものであり、(b)
はレジスタ5(:マイクロ命令実行アドレス)、(c)
はレジスタ6(:トレーサ書込みデータ)、(d)はレ
ジスタ11(:トレーサライトイネーブル)、(e)はレ
ジスタ13(:分岐方向一致フラグ)、(f)はカウンタ
12、(g)はレジスタ7(:トレーサアドレス)、
(h)はトレーサメモリ8を示したものである。
そして、第4図の(a)に示すレジスタ9において
「BR」はマイクロ命令順序制御コマンドが条件分岐コマ
ンドであることを示し、それ以外は無条件分岐コマンド
であることを示す。そして、トレーサ書込み許可を示す
レジスタ11はデコーダ10によりレジスタ9が条件分岐コ
マンドを保持した次のタイミングでONとなるから第4図
に示すT4,T5,T9,T11,T13,T15のタイミングでONと
なり、また、デコーダ10の出力105(セツト信号)も同
じタイミングでONとなる。このデコーダ10の出力105
(セツト信号)によりレジスタ(トレーサ書込みデータ
レジスタ)6には第4図(c)に示すように、T4のタイ
ミングでアドレスEが、T5のタイミングでGが、T9のタ
イミングでJが、T11のタイミイグでJが、T13のタイミ
ングでJが、T15のタイミングでLがそれぞれセツトさ
れ、他のタイミングでは値がホールドされる。
「BR」はマイクロ命令順序制御コマンドが条件分岐コマ
ンドであることを示し、それ以外は無条件分岐コマンド
であることを示す。そして、トレーサ書込み許可を示す
レジスタ11はデコーダ10によりレジスタ9が条件分岐コ
マンドを保持した次のタイミングでONとなるから第4図
に示すT4,T5,T9,T11,T13,T15のタイミングでONと
なり、また、デコーダ10の出力105(セツト信号)も同
じタイミングでONとなる。このデコーダ10の出力105
(セツト信号)によりレジスタ(トレーサ書込みデータ
レジスタ)6には第4図(c)に示すように、T4のタイ
ミングでアドレスEが、T5のタイミングでGが、T9のタ
イミングでJが、T11のタイミイグでJが、T13のタイミ
ングでJが、T15のタイミングでLがそれぞれセツトさ
れ、他のタイミングでは値がホールドされる。
また、第4図の(e)に示すレジスタ(分岐方向一致
フラグレジスタ)13は、第4図の(b)に示すレジスタ
5と第4図の(c)に示すレジスタ6がT10とT12のタイ
ミングで一致するからデコーダ10の出力105(セツト信
号)によりタイミングT4,T5,T9,T15で値「0」がセ
ツトされ、タイミングT11,T13で値「1」がセツトされ
る。そして、他のタイミングでは値がホールドされるか
らレジスタ13の値が「1」となるのはT11〜T14のタイミ
ングとなる。
フラグレジスタ)13は、第4図の(b)に示すレジスタ
5と第4図の(c)に示すレジスタ6がT10とT12のタイ
ミングで一致するからデコーダ10の出力105(セツト信
号)によりタイミングT4,T5,T9,T15で値「0」がセ
ツトされ、タイミングT11,T13で値「1」がセツトされ
る。そして、他のタイミングでは値がホールドされるか
らレジスタ13の値が「1」となるのはT11〜T14のタイミ
ングとなる。
また、カウンタ12は、デコーダ10の出力105(セット
信号)と比較回路14の出力とにより第4図(f)に示す
ように、タイミングT11で001→002にカウントアツプさ
れ、タイミングT13で002→003にカウントアツプされ
る。そして、タイミングT4とタイミングT5とタイミング
T9とタイミングT15では初期値001にリセットされ、他の
タイミングでは値がホールドされる。
信号)と比較回路14の出力とにより第4図(f)に示す
ように、タイミングT11で001→002にカウントアツプさ
れ、タイミングT13で002→003にカウントアツプされ
る。そして、タイミングT4とタイミングT5とタイミング
T9とタイミングT15では初期値001にリセットされ、他の
タイミングでは値がホールドされる。
また、レジスタ(トレーサアドレスレジスタ)7は、
セツト条件が満足される第4図に示すタイミングT4,
T5,T9,T11,T13で+1加算される。そして、タイミン
グT13ではデコーダ10の出力105(セツト信号)はONであ
るが、このタイミングT13で比較回路14の結果が不一致
でなくかつタイミングT12でのカウンタ12のカウント値
が初期値「001」でないのでレジスタ(トレーサアドレ
スレジスタ)7のセツト条件は満たされず値がホールド
(Hold)される。また、他のタイミングでも値はホール
ドされる。
セツト条件が満足される第4図に示すタイミングT4,
T5,T9,T11,T13で+1加算される。そして、タイミン
グT13ではデコーダ10の出力105(セツト信号)はONであ
るが、このタイミングT13で比較回路14の結果が不一致
でなくかつタイミングT12でのカウンタ12のカウント値
が初期値「001」でないのでレジスタ(トレーサアドレ
スレジスタ)7のセツト条件は満たされず値がホールド
(Hold)される。また、他のタイミングでも値はホール
ドされる。
そして、トレーサメモリ8への書込み動作は、レジス
タ11の出力であるイネーブル信号によるので、レジスタ
11の値により第4図に示すタイミングT5,T6,T10,
T12,T14,T16で書込みが行なわれる。T5のタイミング
では、T4のタイミングでのレジスタ(分岐方向一致フラ
グレジスタ)13の値が「0」であるからセレクタ15がレ
ジスタ(トレーサ書込みレジスタ)6を選択するので、
トレーサメモリ8にはT4のタイミングでのレジスタ6の
値であるマイクロ命令アドレスEが格納される。同様に
タイミングT6ではマイクロ命令アドレスGがトレーサメ
モリ8の次の番地に格納され、タイミング10ではマイク
ロ命令アドレスJが更に次の番地に格納される。そし
て、タイミングT12ではタイミングT11でレジスタ(分岐
方向一致フラグレジスタ)13の値が「1」となるので、
セレクタ15はカウンタ12を選択し、タイミングT11での
カウンタ12の値「002」が次の番地に格納される。
タ11の出力であるイネーブル信号によるので、レジスタ
11の値により第4図に示すタイミングT5,T6,T10,
T12,T14,T16で書込みが行なわれる。T5のタイミング
では、T4のタイミングでのレジスタ(分岐方向一致フラ
グレジスタ)13の値が「0」であるからセレクタ15がレ
ジスタ(トレーサ書込みレジスタ)6を選択するので、
トレーサメモリ8にはT4のタイミングでのレジスタ6の
値であるマイクロ命令アドレスEが格納される。同様に
タイミングT6ではマイクロ命令アドレスGがトレーサメ
モリ8の次の番地に格納され、タイミング10ではマイク
ロ命令アドレスJが更に次の番地に格納される。そし
て、タイミングT12ではタイミングT11でレジスタ(分岐
方向一致フラグレジスタ)13の値が「1」となるので、
セレクタ15はカウンタ12を選択し、タイミングT11での
カウンタ12の値「002」が次の番地に格納される。
タイミングT14では同様にしてカウン値「003」が格納
されるが、タイミングT13においてレジスタ(トレーサ
アドレスレジスタ)7はホールドされるので、カウンタ
値「003」はタイミングT12で格納した番地に上書きされ
る。
されるが、タイミングT13においてレジスタ(トレーサ
アドレスレジスタ)7はホールドされるので、カウンタ
値「003」はタイミングT12で格納した番地に上書きされ
る。
タイミングT16では、タイミングT15でレジスタ(分岐
方向一致フラグレジスタ)13の値が「0」となるので、
セレクタ15はレジスタ(トレーサ書込みデータレジス
タ)6を選択し、タイミングT15での値のマイクロ命令
アドレスLが次の番地に格納される。
方向一致フラグレジスタ)13の値が「0」となるので、
セレクタ15はレジスタ(トレーサ書込みデータレジス
タ)6を選択し、タイミングT15での値のマイクロ命令
アドレスLが次の番地に格納される。
以上の結果、トレーサメモリ8の格納データは第3図
の(b)で示されるとおりとなり、第3図(a)の従来
方式での結果を比べてかなり少なくなる。
の(b)で示されるとおりとなり、第3図(a)の従来
方式での結果を比べてかなり少なくなる。
以上説明したように本発明によれば、不必要な履歴情
報が格納されないのでトレーサメモリの容量を低減でき
る効果がある。また、ループのような繰り返しシーケン
スのトレースにおいては、その繰り返しの回数を履歴情
報とすることにより、冗長の部分を削除でき、トレーサ
メモリを有効に活用できる効果がある。
報が格納されないのでトレーサメモリの容量を低減でき
る効果がある。また、ループのような繰り返しシーケン
スのトレースにおいては、その繰り返しの回数を履歴情
報とすることにより、冗長の部分を削除でき、トレーサ
メモリを有効に活用できる効果がある。
第1図は本発明による履歴情報格納方式の一実施例を
示すブロツク図、第2図および第3図は第1図の動作説
明に供する本発明の説明に用いたマイクロプログラムお
よびトレーサメモリの格納結果を示す動作説明図、第4
図は本発明における動作のタイムチヤート、第5図は従
来のマイクロ命令シーケンストレースの一例を示すブロ
ツク図である。 1……制御記憶、2,3……レジスタ、4……分岐判定回
路、5,6,7……レジスタ、8……トレーサメモリ、9…
…レジスタ、10……デコーダ、11……レジスタ、12……
カウンタ、13……レジスタ、14……比較回路、15……セ
レクタ、16……デコーダ、17……オアゲート、18,19…
…アンドゲート。
示すブロツク図、第2図および第3図は第1図の動作説
明に供する本発明の説明に用いたマイクロプログラムお
よびトレーサメモリの格納結果を示す動作説明図、第4
図は本発明における動作のタイムチヤート、第5図は従
来のマイクロ命令シーケンストレースの一例を示すブロ
ツク図である。 1……制御記憶、2,3……レジスタ、4……分岐判定回
路、5,6,7……レジスタ、8……トレーサメモリ、9…
…レジスタ、10……デコーダ、11……レジスタ、12……
カウンタ、13……レジスタ、14……比較回路、15……セ
レクタ、16……デコーダ、17……オアゲート、18,19…
…アンドゲート。
Claims (1)
- 【請求項1】制御記憶に格納されたマイクロプログラム
で制御されるデータ処理システムで、実行したマイクロ
命令のアドレスおよび制御情報を履歴情報として格納す
るトレーサにおいて、 前記マイクロ命令が条件分岐したときその分岐方向が前
回条件分岐したときの分岐方向と一致しているかをチェ
ックし、一致していればマイクロプログラムのループ処
理の出現とみなしてその連続一致回数を計数し、この計
数結果を履歴情報として格納する格納手段を備え、 前記計数結果が2以上となるときは、前記計数結果のみ
を履歴情報として格納するようにしたことを特徴とする
履歴情報格納方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63256844A JPH0831054B2 (ja) | 1988-10-12 | 1988-10-12 | 履歴情報格納方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63256844A JPH0831054B2 (ja) | 1988-10-12 | 1988-10-12 | 履歴情報格納方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH02103642A JPH02103642A (ja) | 1990-04-16 |
| JPH0831054B2 true JPH0831054B2 (ja) | 1996-03-27 |
Family
ID=17298200
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63256844A Expired - Lifetime JPH0831054B2 (ja) | 1988-10-12 | 1988-10-12 | 履歴情報格納方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0831054B2 (ja) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2727996B2 (ja) * | 1995-01-10 | 1998-03-18 | 日本電気株式会社 | プログラム実行監視方法およびプログラム実行監視システム |
| CN116166561A (zh) * | 2023-03-02 | 2023-05-26 | 成都海光集成电路设计有限公司 | 程序动态信息提取方法及程序编译方法 |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS61290544A (ja) * | 1985-06-19 | 1986-12-20 | Hitachi Ltd | プログラム・トレ−ス装置 |
-
1988
- 1988-10-12 JP JP63256844A patent/JPH0831054B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPH02103642A (ja) | 1990-04-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4430706A (en) | Branch prediction apparatus and method for a data processing system | |
| US3518413A (en) | Apparatus for checking the sequencing of a data processing system | |
| US4794522A (en) | Method for detecting modified object code in an emulator | |
| GB1274830A (en) | Data processing system | |
| US3659272A (en) | Digital computer with a program-trace facility | |
| US3673573A (en) | Computer with program tracing facility | |
| JPH0248931B2 (ja) | ||
| US4040030A (en) | Computer instruction control apparatus and method | |
| US4370729A (en) | Microprogram sequencer | |
| US3411147A (en) | Apparatus for executing halt instructions in a multi-program processor | |
| JPS59194245A (ja) | マイクロプログラム制御装置 | |
| US3618042A (en) | Error detection and instruction reexecution device in a data-processing apparatus | |
| US4562534A (en) | Data processing system having a control device for controlling an intermediate memory during a bulk data transport between a source device and a destination device | |
| JPH064345A (ja) | 履歴情報格納方式 | |
| JPH02103642A (ja) | 履歴情報格納方式 | |
| JPH02148339A (ja) | トレーサ制御回路 | |
| JP2581214B2 (ja) | 論理シミュレータ | |
| JPH01125633A (ja) | マルチプロセッサシステムのデバッグ法 | |
| JPS5939777B2 (ja) | 制御記憶装置 | |
| JPS626341A (ja) | 情報処理装置 | |
| JPH02143337A (ja) | データ処理装置のマイクロプログラム制御装置 | |
| JPH038029A (ja) | マイクロプログラム制御装置 | |
| EP0344951A2 (en) | Method and apparatus for controlling execution speed of computer processor | |
| JPS62111336A (ja) | デバツグ方式 | |
| JPS5936853A (ja) | 演算処理装置 |