JPS609294B2 - 電子計算機におけるトレ−ス方式 - Google Patents

電子計算機におけるトレ−ス方式

Info

Publication number
JPS609294B2
JPS609294B2 JP54171675A JP17167579A JPS609294B2 JP S609294 B2 JPS609294 B2 JP S609294B2 JP 54171675 A JP54171675 A JP 54171675A JP 17167579 A JP17167579 A JP 17167579A JP S609294 B2 JPS609294 B2 JP S609294B2
Authority
JP
Japan
Prior art keywords
trace
program
instruction
interrupt
circuit
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
Application number
JP54171675A
Other languages
English (en)
Other versions
JPS5694449A (en
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.)
Toshiba Corp
Original Assignee
Tokyo Shibaura Electric 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 Tokyo Shibaura Electric Co Ltd filed Critical Tokyo Shibaura Electric Co Ltd
Priority to JP54171675A priority Critical patent/JPS609294B2/ja
Publication of JPS5694449A publication Critical patent/JPS5694449A/ja
Publication of JPS609294B2 publication Critical patent/JPS609294B2/ja
Expired legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Description

【発明の詳細な説明】 この発明はプログラムのデバッグ処理に好適な電子計算
機におけるトレース方式に関する。
一般に、管理プログラム下で走行するユーザプログラム
のデバッグを行なう手段は種々設けられているが、中小
型計算機においてはオフラィンでのデバッグ機能が中心
となっている。このような状況のもとで、オンラインプ
ログラムの空き時間を利用し、未デバッグプログラムの
デバッグおよぴ走行チェックを行なういわゆるバックグ
ラウンドシステム(BGS)の開発がなされているが、
従釆システムでは被デバッグプログラムをある管理プロ
グラムが1命令毎その命令内容を解釈することによって
デバッグ処理を行なっていたため、ソフトウェアが複雑
かつ膨大となるとともに処理性が極めて悪いという問題
があった。この発明は上記事情に鑑みてなされたもので
、その目的とするところは、被デバッグプログラムの1
命令毎にトレース割込みを発生させることにより、プロ
グラムのデバッグにおける処理性を著しく向上し得る電
子計算機におけるトレース方式を提供することである。
また、この発明の他の目的とするところは、上記トレー
ス割込みをプログラムステータスワード中に記憶せしめ
ることによって、特にオンライン、デバッグにおいて被
デバッグプログラムを多重に走行させ、処理性をより一
層向上し得る電子計算機におけるトレース方式を提供す
ることである。以下、この発明の一実施例を図面を参照
して説明する。
第1図はこの発明に係わる新規な電子計算機の姿部の概
略構成図であり、1は各種プログラム、データなどが格
納される主メモリである。また、2は電子計算機の基本
演算回路となる演算処理部3およびこの演算処理部の演
算に使用されるレジスタ群4からなるレジスタ・演算部
である。上記演算処理部3の出力は第1のデータバス5
aを介して命令実行制御部6、プログラムステイタスワ
ード(以下簡単にPSWと称する)レジスタPSWR7
、プログラムカウンタLOC8などに選択的に送られる
。上記命令実行制御部6は上記主メモリ1より読み出さ
れるデータ(プログラム)とデータバス5aを介して送
られるデータとを選択的に入力し、これらのデータに基
づいて命令実行の制御を行なうものである。また、上記
PSWレジスタ鴇WR7は現在実行中プログラムの走行
状態を示すPSWを記憶するためのレジスタであり、プ
ログラムカゥンタLOC8は次に実行すべき命令アドレ
スを常に保持するカウンタである。これら命令実行制御
部6、PSWレジスタPSWR7およびプログラムカウ
ン夕LOC8の出力は第2データバス5bを介してレジ
スタ・演算部2へ選択的に送られるようになっている。
また、9はこの発明の要旨に係わるトレース割込み回路
であり、後で詳述するように、PSWの内容に応じて上
記命令実行制御部6へトレース割込み信号を出力すると
ともに、PSWレジス夕PSWR7のトレース記憶ビッ
ト位置へトレース指示を記憶せしめるようになっている
。第2図はPSWレジスタPSWR7のこの発明に係わ
る要部構成を模式的に示すもので、たとえば最上位ビッ
ト(MSB)位置には被デバッグプログラム(以下被ト
レースプログラムと称する)のトレースを指示するトレ
ースビットTRが保持される。
また、次のビット位置には上記したトレースを実行する
ためにトレース割込みを行なうべきことを記憶するため
のトレース記憶ビットMTRが保持されるようになって
いる。このトレース記憶ビットMTRは、後述するよう
にトレース割込み発生時にそのセット入力によりセット
し、トレース割込み承認時にそのリセツト入力によりリ
セツトされるようになっている。第3図はこの発明の要
旨に係わるトレース割込み回路9の構成を周辺部と関連
づけて詳細に示すもので、10は上記トレースビットT
Rとプログラムの1命令実行開始毎に命令実行制御部6
より与えられる命令実行開始信号INTEXとの論理積
をとる論理積回路である。
この論理債回路10の論理債出力はフIJップフロップ
11のセット入力端に入力され、リセット入力端には上
記命令実行制御部6より与えられる割込み認知信号瓜T
AKが入力される。この割込み認知信号INTAKは、
トレース割込みを含め割込みを認知した場合、上記した
命令の実行終了時に与えられるのである。上記フリップ
フロップ11のセット出力および上記トレースビットT
Rは論理積回路12の各入力端に入力される。この論理
積回路12の論理積出力は論理糟回路13の一方の入力
端に入力され、他方の入力端には命令実行制御部6から
与えられるタイミング信号TMGが入力される。上記論
理積回路13の論理積出力はPSWレジス夕PSWR7
のトレース記憶ビットMTRをセットするようになって
おり、このトレース記憶ビットMTRは命令実行制御部
6から与えられるトレース割込み承認信号TRAKによ
ってリセットされるものである。このトレース割込み承
認信号TRAKはトレース割込みより優先順位の高い割
込みが存在しない場合に与えられるもので、これにより
トレースプログラムに基づくトレース処理が行なわれる
。一方、上記トレース記憶ビットMTRおよび前記論理
債回路12の論理債出力は論理和回路14の各入力端に
入力され、その論理和出力はトレース割込み信号TRI
NTとして命令実行制御部6へ与えられる。次に、この
ような構成において動作を説明する。
たとえばいま走行中のプログラムが被トレースプログラ
ムであり、PSWレジス夕PSWR7にトレースビット
TRがセットしている(TR=1)ものとする。このと
き命令実行制御部6から与えられる命令実行開始信号I
NTEXが発生すると、論理積回路10は開成し、これ
によりフリップフロツプ11はセットする。このフリツ
プフロップ1 1のセット出力および上記トレースビッ
トTRは論理債回路12の各入力滞り入力され、これに
より論理債回路12は開成する。この論理積回路12の
論理積出力は論理積回路13および論理和回路14のそ
れぞれ一方の入力端に入力し、これによりPSWレジス
タPSWR7のトレース記憶ビットMTRがタイミング
信号TMOによってセットされ(MTR=1)、一方、
上記論理和回路14よりトレース割込み信号TRINT
が命令実行制御部6へ与えられる。命令実行制御部6で
は、プログラムの1命令実行終了時に上記トレース割込
み信号TRINTは勿論、他の割込み信号を含め割込み
を確認した場合、割込み認知信号州TAKを発生すると
ともに、所定の優先順位に従って割込み処理を実行し、
これにより対応するプログラムの命令実行がなされる。
このとき、フリツプフロツプ11は上記割込み認知信号
INTAKによってリセットされる。次に、上記した割
込み処理について第4図および第5図に示したトレース
割込み概念図を参照して詳細に説明する。
第4図はトレース割込みより優先順位の高い割込みが存
在しない場合の割込み処理を示すものである。この場合
、命令実行制御部6ではトレース割込み承認信号TRA
Kを発生し、これによりPSWのトレース記憶ビットM
TRはリセットされる(MTR=0)。一方、上記命令
実行制御部6は割込まれた被トレースプログラムのPS
WたとえばPSWoを主メモリーの所定の領域たとえば
16隻表示でA番地(以下“×”番地と記す)へ書き込
んで退避させる。同様に次に実行すべき命令アドレス(
LOCo)をX“A+4”番地へ書込む(番号■)。次
に、命令実行制御部6は主メモリーのX“A+8”、X
“A+C”番地の内容をそれぞれ読み出し、これにより
トレースプログラムの新しいPSWたとえばPSW,、
次に実行すべき命令アドレス(LOC,)が、それぞれ
対応するPSWレジスタPSWR7、プログラムカウン
タLOC8に設定される。そして、上記PSW,および
命令アドレス(LOC,)に基づくプログラムの分岐が
行われ、トレースプログラムの命令実行がなされる(番
号■)。すなわち、トレースプログラムに基づいて種々
のレジスタおよびメモリ内のトレースが行なわれ被トレ
ースプログラムの走行状態がテストされる。上記トレー
スプ。グラムの命令実行が終了すると、命令実行制御部
2はLPSW命令すなわちדA”番地の内容をPSW
レジスタPSWR7にセットする命令を発生し(番号■
)、これにより主メモリ1のX“A”,X“A十4”番
地にそれぞれ格納されている被トレースプログラムのP
SWo、命令アドレス(しOCo)が読み出され、対応
するPSWレジスタPSWR7、プ。グラムカウンタL
OC8にセットされる。こうして再び被トレースプログ
ラムの命令実行が行なわれるものである(番号■)。こ
のように、この発明によるトレース方式では、被トレー
スプログラムの1命令毎の割込みにより処理がなされる
ため、プログラム上必要なデータおよび処理に汎用性が
ある。次に、トレース割込みよりも優先順位の高いたと
えばオンラインで働くプログラム(以下オンラインプロ
グラムと称する)の割込みが発生した場合について第5
図を参照して説明する。
この場合、命令実行制御部6ではトレース割込み承認信
号TRAKを発生せず、したがってPSWoのトレース
記憶ビットMTRはセット状態(MTR=1)を保持し
ている。一方、上記命令実行制御部6は割込まれた被ト
レースプログラムPSWo、次に実行すべき命令アドレ
ス(LOCo)を、それぞれ対応する主メモリ1の所定
の領域たとえばדB”番地、X“B+4”番地へ退避
させる(番号■)。次に命令実行制御部6は主メモ1の
דB+8”,X“B+C”番地の内容をそれぞれ読み
出し、これによりオンラインプログラムの新しいPSW
たとえばPSW2、次に実行すべき命令アドレス(LO
C2)がそれぞれ対応するPSWレジスタPSWR7、
プログラムカウンタLOC8に設定される。そして、上
記PSW2および命令アドレス(LOC2)に基づくプ
ログラムの分岐が行なわれ、オンラインプログラムの命
令実行がなされる(番号■)。このオンラインプログラ
ムの命令実行が終了すると、命令実行制御部6はLPS
W命令を発生し(番号■)、これにより主メモリ1のX
“B”、X“B十4”番地にそれぞれ格納されている前
記被トレースプログラムのPSWo、命令アドレス(L
OC2)が読し出され、対応するPSWレジスタPSW
R7、プログラムカウンタLOC8にセットされる。上
記PSWoのトレース記憶ビットMTRは前述したよう
にセット状態(MTR=1)を保持しており、被トレー
スプログラムのPSWoがPSWレジスタPSWR7に
セットされると同時に、上記トレース記憶ビットMTR
が論理和回路14に入力し、これにより論理和回路14
からトレース割込み信号TRINTが出力される。命令
実行制御部6は、上託したトレース割込みよりも優先順
位の高い割込みがあるか否かを判定し、再び優先順位の
高い割込みがある場合には前述したオンラインプログラ
ムの割込み同様、該当するプログラムに制御を移す。一
方、この実施例のように上記したトレース割込みよりも
優先順位の高い割込みが存在しない場合は、第4図を参
照して説明した如くトレースプログラムに制御が移され
、所定のトレース処理が行なわれる。上述した如く、こ
の発明によれば被トレースプログラムの1命令ごとに自
動的にトレース割込み信号を発生すろうになっているが
、トレース割込みよりも優先順位の高い割込みが発生し
た場合には上記被トレースプ。グラムのRW内のトレー
ス記憶ビットMTRをセット状態に保持しておくことに
よって、優先順位の高いプログラムに制御を移し、その
プログラムを実行後、上記した元の被トレースプログラ
ムに戻す場合、この被トレースプログラムの新らしいス
テップに進むことなく確実にトレース割込みを実行し得
るものである。したがって、オンラインプログラムは勿
論、被トレースプログラムが多重に走行する場合におい
ても、各被トレースプログラムに対するトレース処理が
容易かつ確実に行なえる。以上詳述したようにこの発明
によれば、被デバッグプログラムの多重走行が極めて容
易に行なえ、特にオンラインデバッグにおける処理性を
著しく向上し得る電子計算機のトレース方式を提供でき
る。
【図面の簡単な説明】
図面はこの発明の一実施例を示すもので、第1図は電子
計算機の要部概略構成図、第2図はプログラムステイタ
スワードレジス夕の要部模式図、第3図はトレース割込
み回路の詳細な構成図、第4図および第5図はこの発明
によるトレース割込みを説明するためのトレース割込み
概念図である。 1・・・・・・主メモリ、3・・・・・・演算処理部、
4・・・・・・レジス夕群、5a,5b……データバス
、6……命令実行制御部、7・・・・・・プログラムス
テイタスヮ−ドレジスタPSWR、8…・・・プログラ
ムカウンタレOC、9……トレース割込み回路、1 0
,12,13・・・・・・論理積回路、11・・・・・
・フリップフロップ、14・・・・・・論理和回路。 才1図 オ2図 才3肉 矛ム図 才5図

Claims (1)

    【特許請求の範囲】
  1. 1 プログラムの走行状態を表わすプログラムステイタ
    スワード中にトレース指示ビツトが存在しているときに
    該当するプログラムの命令実行を記憶するフリツプフロ
    ツプと、このフリツプフロツプのセツト出力と上記トレ
    ース指示ビツトとの論理積をとる論理積回路と、この論
    理積回路の出力を上記プログラムステイタスワードの特
    定ビツト位置へトレース記憶ビツトとして記憶する手段
    と、このトレース記憶ビツトと上記論理積回路の出力と
    の論理和をとり、その論理和出力を上記命令実行中のプ
    ログラムに対するトレース割込み信号とする論理和回路
    とを具備し、上記プログラムの1命令毎にトレース割込
    み信号を発生してトレースプログラムに基づくトレース
    処理を行なうことを特徴とする電子計算機におけるトレ
    ース方式。
JP54171675A 1979-12-27 1979-12-27 電子計算機におけるトレ−ス方式 Expired JPS609294B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP54171675A JPS609294B2 (ja) 1979-12-27 1979-12-27 電子計算機におけるトレ−ス方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP54171675A JPS609294B2 (ja) 1979-12-27 1979-12-27 電子計算機におけるトレ−ス方式

Publications (2)

Publication Number Publication Date
JPS5694449A JPS5694449A (en) 1981-07-30
JPS609294B2 true JPS609294B2 (ja) 1985-03-09

Family

ID=15927604

Family Applications (1)

Application Number Title Priority Date Filing Date
JP54171675A Expired JPS609294B2 (ja) 1979-12-27 1979-12-27 電子計算機におけるトレ−ス方式

Country Status (1)

Country Link
JP (1) JPS609294B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61210440A (ja) * 1985-03-14 1986-09-18 Nec Corp レベルトレ−ス装置
JPS62143143A (ja) * 1985-12-17 1987-06-26 Fujitsu Ltd ブランチトレ−ス制御方式

Also Published As

Publication number Publication date
JPS5694449A (en) 1981-07-30

Similar Documents

Publication Publication Date Title
JP3105223B2 (ja) マイクロコンピュータ,マイクロプロセッサおよびコア・プロセッサ集積回路用デバッグ周辺装置
JPS63111545A (ja) デバツグ用マイクロプロセツサ
JP2003015906A (ja) リモートデバッグ方法および装置
JPS609294B2 (ja) 電子計算機におけるトレ−ス方式
JPH04190430A (ja) ソフトウェア開発用エミュレータ
JPH0581087A (ja) プロセサのモニタ方式
JPH03137736A (ja) マイクロプロセッサ動作トレース方式
JPH02281341A (ja) デバッグ時のライトデータ確認方法
JP2520158B2 (ja) ディジタルシグナルプロセッサのデバッグ方式
JPH02110744A (ja) 情報処理装置
JPH04199336A (ja) マイクロコンピュータ
JPH0652013A (ja) トレース回路
JPH05204710A (ja) イベントトレース装置
JP2654105B2 (ja) マイクロプロセッサ
JPH08171505A (ja) 半導体装置
JPS58182766A (ja) プログラムトレ−ス装置
JPS6146531A (ja) マイクロプロセツサ
JPH0635760A (ja) トレース機能付バッファ装置
JPS63113743A (ja) 計算機ハ−ドウエアデバツギング方式
JPH0795287B2 (ja) スレ−ブ・プロセツサのエミユレ−タ
JPH04328644A (ja) デバッグ支援装置
JPH05274142A (ja) 命令疑似実行装置
JPS6349942A (ja) 演算処理装置
JPH05324395A (ja) プログラムのデバッグ装置
JPS62239242A (ja) デバツク装置