JPS59160247A - プログラムテスト装置 - Google Patents

プログラムテスト装置

Info

Publication number
JPS59160247A
JPS59160247A JP58034999A JP3499983A JPS59160247A JP S59160247 A JPS59160247 A JP S59160247A JP 58034999 A JP58034999 A JP 58034999A JP 3499983 A JP3499983 A JP 3499983A JP S59160247 A JPS59160247 A JP S59160247A
Authority
JP
Japan
Prior art keywords
gate
branch instruction
address
program
address data
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.)
Pending
Application number
JP58034999A
Other languages
English (en)
Inventor
Haruo Takagi
高木 治夫
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.)
Omron Corp
Original Assignee
Tateisi Electronics Co
Omron Tateisi Electronics Co
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 Tateisi Electronics Co, Omron Tateisi Electronics Co filed Critical Tateisi Electronics Co
Priority to JP58034999A priority Critical patent/JPS59160247A/ja
Publication of JPS59160247A publication Critical patent/JPS59160247A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 発明の分野 この発明は、プログラムテスト装置に関し、特に、分岐
命令を含むプログラムを実行したとき、分岐命令によっ
て分岐される流れの各ステップを実行したかdかをテス
トするようなプログラムテスト装置に関する。
発明の背景 第1図はこの発明の背景となる一般的なプログラムの流
れを示すフロー図である。第1図におい、プログラムは
ステップ(図示ではSPと略称する)1ないしステップ
4を含み、ステップ1は分岐命令であり、その内容へを
判別してYESであれば流れへのステップ2ないしステ
ップ4に進み、各ステップの内容口ないしDを実行する
。ステップ1においてNoであれば流れBのステップ4
に分岐してその内容りを実行する。
上述のプログラムをコンピュータが正常に実行し得るか
否かをテストするためには、作成されたプログラムをデ
バツギングしてバグ出しを行なう必要がある。しかし、
このようなデバツギングを行なうためには、大型のコン
ピュータなどを必要とし、簡単にプログラムのテストを
行なうことができなかった。
一方、最近では、プログラムのテスト(またはデバッグ
)の完全性をチェックするために、プログラムがどう実
行されたかというよりも、むしろプログラム中のどの部
分がまだ実行されていないかをより効率的な手法によっ
て明らかにする必要性が生じてきた。そこで、最近では
、プログラムのテストの一手法としてカバレージ分析が
ある。
カバレージ分析のうち複数のステップを含むプログラム
において、少なくとも1回以上実行されたステップの数
の割合のことをC1カバレージ指標と称されている。こ
のようなC1カバレージ指標収察してプログラムをテス
トするような装置は従来よりなかった。
発明の目的 それゆえに、この発明の主たる目的は、複数の分岐命令
を含むプログラムのうち指定された分岐命令が正常に実
行されたか否かを示すC1カバレージ指標を収集するた
めのプログラムテストIIを提供することである。
発明のm或および効果 この発明を要約すれば、複数の分岐命令を含むプログラ
ムをテストするための装置であって、中央処理手段が分
岐命令を実行したときに出力するデータをデコードし、
そのデコード出力に基づいて分岐命令とその分岐命令に
よって指定される行先のそれぞれを表わすアドレスデー
タを記憶し、複数の分岐命令のうちテストすべき分岐命
令のアドレスを指定したときに、指定されたアドレスデ
ータと記憶手段に記憶しているアドレスデータとを比較
し、一致したことに応じて記憶手段からのアドレスデー
タの出力を禁止するように構成したものである。
したがって、この発明によれば、複数の分岐命令を含む
プログラムのうち、テストすべき分岐命令のアドレスを
指定することができるので、プログラムの標準化0階層
化、構造化などにより、既にデバッグが完了したプログ
ラムのエリアについてはC1カバレージ指標の収集から
外すことにより、必要な01カバレージ指標のみを収集
することができる。したがって、その収集したデータに
基づいた以後の01カバレージ指標の解析処理時間を短
くできる。さらに、局部的に集中してC1カバレージ指
標の収集が可能となるので、その情報に基づいてより高
度なC2カバレージ収集などの指標の解析が可能となる
以下、図面に示す実施例とともにこの発明をより具体的
に説明する。
実施例の説明 第2図はこの発明の一実施例の概略ブロック図5− である。まず、第2図を参照して構成について説明する
。中央処理手段としてのCPtJlは内蔵されているプ
ログラムを実行するものであって、このCI”’LJ1
にはデータバスDBとアドレスバスABとコントロール
バスCBとが接続される。データバスDnには命令デコ
ーダ2が接続される。この命令デコーダ2はCPUIが
プログラムに含まれる分岐命令を実行したときにデータ
バスDBに出力されるフェッチデータをデコードするこ
とにより分岐命令を検出するものである。命令デコーダ
2によって分岐命令に基づくデータがデコードされると
、そのデコード出力はフリップ70ツブ3とORゲート
4の一方入力端とに与えられる。
また、コントロールバスC8にはコントロール回路8が
接続される。このコントロール回路8はCPU1がプロ
グラムを実行するごとにタイミング信号を出力する。こ
のタイミング信号は命令デコーダ2に与えられるととも
に、デレー回路(OL)7を介してフリップフロップ3
のリセット入力端に与えられる。
6− デレー回路7はlCPUサイクル期間だけ遅延するもの
である。したがって、フリップフロップ3は命令デコー
ダ2が分岐命令を検出したときにセットされ、その後分
岐命令による行先のアドレスを出力するI CPUサイ
クル期間経過後にリセットされる。すなわち、ノリツブ
70ツブ3は分岐命令が出力されてからその分岐命令に
よって分岐される行先のアドレスが出力されるまでの間
セットされている。フリップ7Oツブ3の出力はORゲ
ート4の他方入力端に与えられる。したがって、ORゲ
ート 4は分岐命令が出力されてからその分岐命令によ
る行先のアドレスが出力されるまでの間ハイレベルの信
号をANDゲート5の一方入力端に与える。このAND
ゲート5の他方入力端にはコントロール回vR8からタ
イミング信号が与えられる。したがって、ANDゲート
5は分岐命令が出力されてからその分岐命令による行先
のアドレスが出力されるまでの間タイミング信号をレジ
スタ9に与える。一方、アドレスバスABにはレジスタ
6が接続される。このレジスタ6は分岐命令とその分岐
命令によって指定される行先を表わすアドレスデータを
記憶するためのものである。
レジスタ9に記憶されたアドレスデータは比較回路10
と11とゲート回路15とに与えられる。
比較回路10にはスイッチ12が接続され、比較回路1
1にはスイッチ13が接続される。スイッチ12はプロ
グラムに含まれる複数の分岐命令のうちC1カバレージ
指標の収集を開始するためのアドレスを設定するもので
あり、スイッチ13はC1カバレージ指標の収集を終了
するためのアドレスを設定するものである。したがって
、スイッチ12と13とによって設定されたアドレスの
笥囲内に含まれる分岐命令が実行されたかどうかを表わ
すC1カバレージ指標を収集することになる。
なお、スイッチ12と13は、キーボードとキーボード
からの入力を一時記憶するレジスタによって構成しても
よい。比較回路10はスイッチ12で設定されたアト、
υスデータとレジスタ9から与えられたアドレスデータ
とを比較して両者が一致したときおよびレジスタ9に記
憶されているアドレスデータの方が大きいときにORゲ
ート14を介してゲート回路15にそのゲートを開くた
めの信号を与える。また、比較回路11はレジスタ9に
記憶されているアドレスデータとスイッチ13で設定さ
れたアドレスデータとを比較し、両者が一致したときお
よびレジスタ9に記憶されているアドレスデータの方が
大きくなったときに、ORゲート14を介してゲート1
5を開くための信号を出力する。ゲート回路15は比較
回路10および11からの信号により開かれて、レジス
タ9に記憶しているアドレスデータをオーバレイメモリ
16に記憶させる。
第3図は第2図の動作を説明するためのフロー図である
。次に、第3図を参照して第2図の具体的な動作につい
て説明する。CPU1はCPUフェッチサイクルになる
と分岐命令を実行してフェッチデータを出力する。この
フェッチデータはデータバスDBに出力されるとともに
、分岐命令に対応するアドレスデータがアドレスバスA
Bを介−〇− してバッファレジスタ6に記憶される。命令デコーダ2
はデータバスDBを介して入力された分岐命令に基づく
データをデコードし、そのデコード出力でフリップ70
ツブ3をセットする。また、このデコード出力はORゲ
ート4を介してANDゲート5に与えられ、このゲート
を開(。ANDゲー1−5はコントロール回路8からの
タイミング信号をレジスタ9に与える。したがって、レ
ジスタ9にはバッファレジスタ6に記憶されている分岐
命令に対応するアドレスデータが記憶される。
次のCPUサイクルにおいて、分岐命令によって指定さ
れる行先のアドレスデータがバッファレジスタ6に記憶
されるが、このときはまだフリップフロップ3がリセッ
トされていないので、ANDゲート5は次のタイミング
信号をレジスタ9に与える。したがって、レジスタ9は
分岐命令に対応するアドレスデータと分岐命令に基づく
行先のアドレスデータとを記憶する。デレー回路7はコ
ントロール回路8から出力されたタイミング信号をlC
PUサイクル期間だけ遅延してフリップフ−1〇− ロツプ3をリセットする。フリップ70ツブ3がリセッ
トされたことにより、ORゲート4を介してANDゲー
ト5にローレベルの信号が与えられ、このゲートが簡じ
られる。したがって、レジスタ9に【よ分岐命令が出力
されたときのその分岐命令に対応するアドレスデータと
分岐命令に基づく行先のアドレスデータとが記憶される
ことになる。
この動作を繰返し、プログラムに含まれる複数の分岐命
令が順次実行される。
一方、比較回路10はスイッチ12で設定されたアドレ
スデータとレジスタ9に順次記憶されるアドレスデータ
とを比較していて、スイッチ12で設定されたアドレス
データがレジスタ9に記憶されたアドレスデータよりも
大きければANDゲート14の一方入力にハイレベル信
号を与える。
他方、比較回路11はスイッチ13で設定されたアドレ
スデータとレジスタ9に記憶されたアドレスデータとを
比較し、スイッチ13で設定されたアドレスデータより
も小さいかあるいは等しいアドレスデータがレジスタ9
に記憶されると、ANDゲート14の他方入力にハイレ
ベル信号を与えゲート回路15を開く。したがって、オ
ーバレイメモリ16にはスイッチ12で設定されたアド
レスデータからスイッチ13で設定されたアドレスデー
タで示される範囲内に含まれる分岐命令およびその分岐
命令に基づく行先の各アドレスデータが記憶されること
になる。そして、オーバレイメモリ16に記憶されたア
ドレスデータを判別することにより、所望の分岐命令が
実行されたか否かを容易に知ることができる。すなわち
、多くの分岐命令を含むプログラムのうちテストすべき
範囲内の分岐命令をテストする場合には、その範囲内を
指定できるので、C1カバレージ指標を解析処理する時
間を短縮することができる。
【図面の簡単な説明】
第1図はこの発明の背景となる一般的なプログラムの流
れを示すフロー図である。第2図はこの発明の一実施例
の概略ブロック図である。第3図はこの発明の一実施例
の動作を説明するためのフロー図である。 図において、1はCPLI、2は命令デコーダ、3はフ
リップ70ツブ、4.14はORゲート、5はANDゲ
ート、6はバッファレジスタ、7はデレー回路、8はコ
ントロール回路、9はレジスタ、10.11は比較回路
、12.13はスイッチ、15はゲート回路、16はオ
ーバレイメモリを示す。 13− 第3図 −263−

Claims (1)

  1. 【特許請求の範囲】 複数の分岐命令を含むプログラムにおいて、前記プログ
    ラムを実行したときに前記分岐命令が正常に実行された
    か否かを示すC1カバレージ指標を収集するためのプロ
    グラムテスト装置であって、前記プログラムを実行した
    ときに、前記分岐命令と前記分岐命令によって指定され
    る行先を表わすアドレス信号を出力するための中央処理
    手段、前記中央処理手段が前記分岐命令を実行したとき
    に出力するデータをデコードするデコーダ、前記デコー
    ダによってデコードされた前記分岐命令とその分岐命令
    によって指定される行先のそれぞれを表わすアドレスデ
    ータを記憶する記憶手段、 前記複数の分岐命令のうち、テストすべき分岐命令のア
    ドレスを指定するためのアドレス指定手段、 前記記憶手段に記憶されているアドレスデータと前記ア
    ドレス指定手段によって指定されたアドレスデータとを
    比較する比較手段、および前記比較手段が一致信号を出
    力したことに応じて、前記記憶手段から前記アドレスデ
    ータの出力を禁止する禁止手段を備えた、プログラムテ
    スト装置。
JP58034999A 1983-03-02 1983-03-02 プログラムテスト装置 Pending JPS59160247A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58034999A JPS59160247A (ja) 1983-03-02 1983-03-02 プログラムテスト装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58034999A JPS59160247A (ja) 1983-03-02 1983-03-02 プログラムテスト装置

Publications (1)

Publication Number Publication Date
JPS59160247A true JPS59160247A (ja) 1984-09-10

Family

ID=12429821

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58034999A Pending JPS59160247A (ja) 1983-03-02 1983-03-02 プログラムテスト装置

Country Status (1)

Country Link
JP (1) JPS59160247A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000250779A (ja) * 1999-02-25 2000-09-14 Toshiba Corp プログラマブルコントローラ
JP2005115969A (ja) * 2005-01-11 2005-04-28 Toshiba Corp プログラマブルコントローラ

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000250779A (ja) * 1999-02-25 2000-09-14 Toshiba Corp プログラマブルコントローラ
JP2005115969A (ja) * 2005-01-11 2005-04-28 Toshiba Corp プログラマブルコントローラ

Similar Documents

Publication Publication Date Title
US7478028B2 (en) Method for automatically searching for functional defects in a description of a circuit
US5278961A (en) Physical address to logical address translator for memory management units
KR102230173B1 (ko) 프로세서를 디버깅하는 방법
JPH05233352A (ja) マイクロプロセッサ
US20030204805A1 (en) Testing processors
US20020124216A1 (en) Integrated circuit and method of operation of such a circuit
US7376820B2 (en) Information processing unit, and exception processing method for specific application-purpose operation instruction
US4747045A (en) Information processing apparatus having an instruction prefetch circuit
EP0530816A2 (en) Microprocessor with cache memory and trace analyzer therefor
JPS59160247A (ja) プログラムテスト装置
US7111212B2 (en) Debugging system for semiconductor integrated circuit
US5864877A (en) Apparatus and method for fast forwarding of table index (TI) bit for descriptor table selection
JPS59158452A (ja) プログラムテスト装置
JPS59158451A (ja) プログラムテスト装置
JPS59160248A (ja) プログラムテスト装置
JPS646489B2 (ja)
US6986110B1 (en) Automated method and system for backtracing of instruction parameters from specified instruction in test cases
JP2004079032A (ja) 半導体装置のテスト方法及び半導体装置
US10598730B1 (en) Testing method and testing system
US20040107388A1 (en) Microcomputer
JPS59160249A (ja) プログラムテスト装置
JP2810342B2 (ja) Ic試験装置
US20050172178A1 (en) Cache-testable processor identification
CN117251334A (zh) 芯片模块接口连接的检查方法、装置、设备和介质
JPS603760A (ja) プログラムアナライザ