JPS5826585B2 - プログラムデバツグキコウツキデ−タシヨリソウチ - Google Patents

プログラムデバツグキコウツキデ−タシヨリソウチ

Info

Publication number
JPS5826585B2
JPS5826585B2 JP50148494A JP14849475A JPS5826585B2 JP S5826585 B2 JPS5826585 B2 JP S5826585B2 JP 50148494 A JP50148494 A JP 50148494A JP 14849475 A JP14849475 A JP 14849475A JP S5826585 B2 JPS5826585 B2 JP S5826585B2
Authority
JP
Japan
Prior art keywords
instruction
program
executed
time
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
Application number
JP50148494A
Other languages
English (en)
Other versions
JPS5272548A (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.)
NEC Corp
Original Assignee
Nippon 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP50148494A priority Critical patent/JPS5826585B2/ja
Publication of JPS5272548A publication Critical patent/JPS5272548A/ja
Publication of JPS5826585B2 publication Critical patent/JPS5826585B2/ja
Expired legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Description

【発明の詳細な説明】 この発明はプログラムが正しく作られているか否か試験
する機能をもったデータ処理装置に関する。
一定の命令セットをもち、これを用いて使用者が作成し
たプログラムに従って動作するデータ処理装置、或いは
プログラムにより動作する、いわゆるインテリジェント
端末装置などのデータ処理装置においては、使用者が作
成したプログラムが使用者の期待通りの機能を発揮する
ように正しくできているか否かを、使用者がそのデータ
処理装置を用いて試験或いは評価、更に修正する必要が
ある。
これをプログラムのデバッグ(又は虫取り)と呼ぶ。
一般に、プログラムをデバッグする際に必要な機能とし
ては、第1にプログラムを実行してゆき、これを停止し
た時に、それ以前に実行した命令の軌跡、即ち実行した
命令のメモリ格納番地のシーケンスがとれることであり
、これをトレース機能又はヒストリダンプ機能と呼ぶ。
第2に停止時にメモリのそのプログラムエリアやワーク
エリアなどの内容を読出し、かつ一時的に変更して修正
できることで、これをメモリ読出及びメモリパッチと称
する。
第3にプログラムの実行を開始する前に予め番地を指定
しておくと、プログラムの実行によりその指定した番地
の命令を実行したときプログラムの実行が止まることに
よって、プログラムが期待通りに動作していることが確
認できることで、これを自動停止機能と呼ぶ。
第4に停止するごとに最初の番地から開始するのでは大
変であり、従ってプログラムを任意の番地から開始させ
、また任意の時間に止めることができることである。
従来のプログラム式データ処理装置では上記のデバッグ
機能はデバッグを手助けするために、特に準備されたプ
ログラムをロードして各命令ノ実行ごとにその番地を記
憶するなどの操作をプログラムにより行なうのが普通で
あった。
このように特別のプログラムを用意する必要があった。
更にトレーサと称するデバッグ用のプログラムにより使
用者のプログラム実行時に、その実行命令の各アドレス
を定められたメモリ内に記憶し、これを使用者プログラ
ムの終了停止時に出力表示することにより上記第1の機
能を実現していた。
このためその誤りが生じた個所を直ちに発見できず、そ
の修正に時間がか\る欠点があった。
本発明の目的は、デバッグのためのプログラムを特に用
意することなく、またデバッグの時間を短縮するデバッ
グ機構付データ処理装置を提供することにある。
この発明によればスイッチ操作により、通常のプログラ
ムの実行動作よりデバッグ動作に切換えることができ、
デバッグ動作時には1つの命令の実行終了から次の命令
実行の開始まで計時手段により適当な時間をおくと共に
実行中及びその前後のアドレスを表示する。
よって使用者(こ\ではプログラム設計者でかつ操作者
と仮定)が自分の作成したプログラムの走行している命
令アドレスをゆっくり視て確認することができるので誤
ったプログラムルーチンに流入した時はすぐに止めて誤
りを訂正できる。
つまりデバッグのリアルタイム性が高まり操作性が著し
く向上する0 次に図面を参照してこの発明によるデータ処理装置の実
施例を説明しよう。
第1図においてメモリ10に使用者が作成するプログラ
ム、即ちユーザプログラム10が格納されている。
通常モードでは命令がメモリ10から読出レジスタ11
に読出され、命令解釈実行(インタプリタ)部12で実
行される。
命令の読出しは次命令読出部13が信号線14を駆動す
ることにより命令解釈実行部12より信号線15を通じ
て次命令アドレス情報をアドレスレジスタ16にセット
して起動して行なわれる。
次命令読出部13は同時に1命令サイクル起動部17を
駆動し、これより1命令サイクルの後に終了信号が信号
線18を通じ、更に次の命令読出用ゲート19を通じて
次命令読出部13を駆動する。
この通常モードにおいてはデパックスイッチはオフでキ
ー1信号20に低レベル″oj+であってゲート19が
開いている。
このようにして1命令を実行するごとにゲート19を通
じて次命令読出部13が駆動されることにより、次の命
令が読出されて実行することが繰返され、メモリ10中
のユーザプログラムは自動的に実行される。
次にデバッグモードにおいてはデバッグスイッチがオン
にされてキー1信号20は高レベル゛1′′になり、ゲ
ート19は遮断される。
よって1命令が実行され終った時、即ち1命令サイクル
終了時に、起動部17の信号線18に生じる終了信号は
次命令読出部13を駆動することができず、計時回路2
3のみを駆動する。
計時回路23は駆動されてから一定時間の計時を終了す
ると、タイマオーバーフロー信号24を発生する。
よって停止キーがオフでキー2信号25が低レベル”0
″の場合は、キー1信号20が”1″であるから停止ゲ
ート26が開いていて、オーバフロー信号24はこのゲ
ート26を通じて次命令読出部13を駆動し、この結果
、次の命令が読出される。
このように次命令読出しは計時回路23の計時時間だけ
遅れる。
またこのデパックモードにおいてはキー1信号20が1
″であってこれにより表示ゲート27も開けられ、1命
令サイクル起動時に次の実行命令がアドレスレジスタ1
6にセットされたタイミングで駆動信号28がゲート2
7を通じて表示制御部29を駆動し、アドレスレジスタ
16の内容を表示制御部29に取込んで実行番地をCR
T表示部30に表示する。
この表示時間は計時回路23で計時した一定時間となり
、この時間は操作員が十分認識でき、しかも遅すぎてい
らだつことがない程度短い時間に選定される。
従って操作員は表示部30に表示された実行番地を見て
、プログラムが正しい流れをしているか否かを知ること
ができる。
プログラムが誤った番地に達すると、操作員は停止キー
を押下してキー2信号25を高レベルf+ 111にす
る。
これにより停止ゲート26は閉じてオーバーフロー信号
24は次命令読出部13−達することができず、停止状
態になる。
また入力ゲート33にキー1信号20、キー2信号25
、オーバーフロー信号24が与えられているため、計時
回路23の計時中に、表示部30の表示を見て誤りを発
明した時にキー2信号25を高レベル”1′にするとゲ
ート33が開き、デバッグ制御部34が動作する。
よってけん装部35を操作してけん装部36、デバッグ
制御部34を通じてアドレスレジスタ16や書込レジス
タ37に所要のデータをセットしてメモリ10をバッチ
変更、つまり正しい命令に修正することができる。
次にユーザプログラムの命令実行をマイクロプログラム
で実現する場合を第2図を参照して説明する。
これは少なくともマイクロプロセッサ41とメモリ42
、鍵盤部43、表示部44とファイル装置45及びクロ
ック装置46から威る。
マイクロプロセッサ41ば、ユーザプログラムの命令と
は一般に異なる命令体系をもち、更により速い1命令実
行時間をもつ大規模半導体集積回路のマイクロプロセッ
サである。
メモリ42は、鍵盤部43や表示部44等のハードウェ
アを制御するためのマイクロプログラム群や、ユーザプ
ログラムのインタプリタ、これらをどのような順で取出
してゆくかを示すスケジューラのマイクロプログラムな
どが格納されている。
鍵盤部43は、例えばJISで規格化されている配列の
ものと、その他、デパックスイッチや停止キー、ロード
キーなどの特殊スイッチから成る。
表示部44はCRTディスプレイ装置である。
ファイル装置45はプログラムやマイクロプログラムを
メモリ42にロードするために必須のもので、例えばカ
セット磁気テープ装置、フロービーディスク装置、紙テ
ープリーグ装置等である。
まず、マイクロプログラムがファイル装置45からメモ
リ部42にロードされ、その後ユーザプログラムが、又
ファイル装置45からロードされる。
ユーザプログラムのロードの起動はロードキーによって
行なわれ、マイクロプログラムが作動してロードを行な
う。
ロードが終了すると、ロード用マイクロプログラムから
インタプリタへ制御を渡し、ユーザプログラムの開始番
地の命令を実行し始める。
ユーザプログラムの1命令は第3図に示すように命令の
読出しくフェッチ)47、命令の解釈判定4B、命令の
実行49の順に行なわれる。
この第2図の実施例における動作を第4図のフローチャ
ートにより説明する。
通常モード、即ちデパックモードでない時はデパックキ
ー1が押下されていμいので、50,54,55,56
,57゜50 54、、、、、のシーケンスで処理実行
し、第3図について述べた場合と変りがない。
キー1が押下されると、マイクロ命令の入力命令でセン
ス判断され、デパックモードに入ったことを示す。
この場合、50の判断後、51において表示部44に次
にフェッチすべき命令の番地を表示する。
表示の仕方は第5図に示す例のように表示部44の一行
に最後に表示した命令の番地が判るような印(こ5では
4−)をつけて、最後のn個(nは1行に表示でき命令
アドレスの最大数)をサイクリックに表示する。
図示例では最後の番地は1022であり、その前の番地
は1021であることなどが表示されている。
△はスペースである。
表示を終えて52でフラグ1をオンにし、53でタイマ
の初期値をセットして次の命令実行後、操作者の確認を
容易にするため、一定時間計数する準備をする。
そして54,55,56を実行し57にてフラグ1がオ
ンになっていることが判断されて53の方へ進む。
58ではフラグ1をオフにし、59で先にセットしたタ
イマを更新する。
タイマはハードウェアのクロックを計数するディジタル
カウンタである。
60においてタイマがオバーフローし、一定時間が経過
したか否かを調べる。
即ち、計時中は61の方へ進み、停止キー2が押下され
たか否かを調べる。
停止キー2の押下がないときは61,59,60,61
,59゜60、、、、、と処理を実行し、タイマがオー
バーフローを起した点で、60から50へ戻る。
50へ戻ってからは50,51,52,53,54゜5
5.56,57,58,59,60,61,59゜00
0.を実行し、前と同じシーケンスを繰返す。
よって1命令実行毎に、そのアドレスが表示され、しか
も操作者は確認をするために十分な時間をもつことがで
きる。
次にタイマ計時中にキー2が押下されていた場合は、6
1でこれを検出してタイマの計時を中断し、62でデバ
ッグ用ルーチンに制御を渡す。
デバッグ用ルーチンには操作者がメモリの内容読出し、
メモリの内容の一部変更、次に自動停止すべきアドレス
のセット、再開始番地のセット、開始起動などを可能に
するものであり、前記デバッグ機能のうち第2〜第4で
述べた機能を含むものである。
即ちプログラムが停止しているときに、鍵盤部43から
のコマンド(指示)入力を可能にし、そのコマンドに従
った機能を実行し、再開始のコマンドならば63から5
0へ戻る。
以上述べたようにこの発明によれば、デバッグ用プログ
ラムを使用せず、即ち、従来デバッグ用のプログラムを
別にロードする必要があったが、これをなくシ、デバッ
グ機能を組込ませたため、操作性が良いものになる。
また従来は1度プログラムを実行した後に始めそ命令軌
跡を知ることができたが、この発明では実行と同時に使
用者が確認しうる程度の速度で実行命令の軌跡が表示さ
れ、誤ったプログラムシーケンスに入るや否や止めて調
査することができ、従来より速くかつ容易にデバッグが
できる。
鍵盤部35.43としては紙テープその他の入力手段を
使用してもよい。
同様に表示部30.44としてはCRT表示のみならず
、プリンタなどに出力してもよい。
【図面の簡単な説明】
第1図はこの発明によるデータ処理装置の一例を示すブ
ロック図、第2図はその他の例を示すブロック図、第3
図は通常の命令実行を示すフローチャート、第4図は第
2図の動作を示すフローチャート、第5図は表示部の表
示例を示す図である。 10:メモリ、12:命令解釈実行部、13:次命令読
出部、16:アドレスレジスタ、2〇二デバツグキ一1
信号、23:計時回路、25:停止キー2信号、26:
停止ゲート、30:表示部、35:けん盤部、41:マ
イクロプロセサ、43:けん盤部、44二表示部。

Claims (1)

    【特許請求の範囲】
  1. 1 人力部及び出力部をもつデータ処理装置において、
    デバッグスイッチの状態を検出する手段と、この検出が
    1つの状態にある時は通常にプログラムを実行し、他の
    状態にある時は、1命令実行毎に実行命令の格納番地を
    上記出力部に順次出力する手段と、上記性の状態におい
    て1命令の読出しと次の命令の読出しとの間を、一定時
    間計時する手段と、その計時時間内に停止キーの押下を
    検出して実行を停止させる手段と、その停止時に上記入
    力部からコマンドの指示入力を可能にする手段とを具備
    するデータ処理装置。
JP50148494A 1975-12-15 1975-12-15 プログラムデバツグキコウツキデ−タシヨリソウチ Expired JPS5826585B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP50148494A JPS5826585B2 (ja) 1975-12-15 1975-12-15 プログラムデバツグキコウツキデ−タシヨリソウチ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP50148494A JPS5826585B2 (ja) 1975-12-15 1975-12-15 プログラムデバツグキコウツキデ−タシヨリソウチ

Publications (2)

Publication Number Publication Date
JPS5272548A JPS5272548A (en) 1977-06-17
JPS5826585B2 true JPS5826585B2 (ja) 1983-06-03

Family

ID=15453995

Family Applications (1)

Application Number Title Priority Date Filing Date
JP50148494A Expired JPS5826585B2 (ja) 1975-12-15 1975-12-15 プログラムデバツグキコウツキデ−タシヨリソウチ

Country Status (1)

Country Link
JP (1) JPS5826585B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6029681U (ja) * 1983-08-02 1985-02-28 クレタケ工業株式会社 筆記具

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0786832B2 (ja) * 1983-03-22 1995-09-20 株式会社東芝 情報処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6029681U (ja) * 1983-08-02 1985-02-28 クレタケ工業株式会社 筆記具

Also Published As

Publication number Publication date
JPS5272548A (en) 1977-06-17

Similar Documents

Publication Publication Date Title
US3771131A (en) Operating condition monitoring in digital computers
US4127768A (en) Data processing system self-test enabling technique
JPS5826585B2 (ja) プログラムデバツグキコウツキデ−タシヨリソウチ
JPS60159951A (ja) 情報処理装置におけるトレ−ス方式
JPH0577143A (ja) 自動化ラインの故障診断装置
JPS5840772B2 (ja) デ−タ比較一致表示方式
JP2624798B2 (ja) 処理装置のデバッグ機構
JP3315266B2 (ja) 自己診断状況表示方式
SU1492369A1 (ru) Устройство дл обучени операторов
JPS59178552A (ja) 自己診断制御方式
JPH07168768A (ja) 初期自己診断方法
KR920007510B1 (ko) 프로세서의 상태 감지장치
CN112711494A (zh) 一种宕机故障定位方法及装置
JPS5828272Y2 (ja) 計算機のデバツク装置
JPH05143395A (ja) 診断プログラム実行方式およびそれに使用されるログ情報表示方式
JPH05181781A (ja) 入出力制御装置
JPS6051961A (ja) 初期プログラムロ−ド処理方式
JPS5931745B2 (ja) 未使用プログラム番号表示方式
JPH0436849A (ja) メモリ診断方法
JPS6112295B2 (ja)
JPS5927303A (ja) プログラム修正装置
JPH05233379A (ja) 実行履歴記憶装置
JPH1031508A (ja) デバック装置およびデバック方法
JPH05257760A (ja) マイクロプロセッサ
JPS6131898B2 (ja)