JPS61107440A - マイクロプロセツサ用デバツグ装置 - Google Patents

マイクロプロセツサ用デバツグ装置

Info

Publication number
JPS61107440A
JPS61107440A JP59228576A JP22857684A JPS61107440A JP S61107440 A JPS61107440 A JP S61107440A JP 59228576 A JP59228576 A JP 59228576A JP 22857684 A JP22857684 A JP 22857684A JP S61107440 A JPS61107440 A JP S61107440A
Authority
JP
Japan
Prior art keywords
memory
program
address
target
coverage
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
JP59228576A
Other languages
English (en)
Inventor
Yoshio Yoshida
良夫 吉田
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.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Hokushin 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 Yokogawa Hokushin Electric Corp filed Critical Yokogawa Hokushin Electric Corp
Priority to JP59228576A priority Critical patent/JPS61107440A/ja
Publication of JPS61107440A publication Critical patent/JPS61107440A/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

【発明の詳細な説明】 (産業上の利用分野) 本発明は、プログラムの信頼性を上げるためのマイクロ
プロセッサ用デバッグ装置、特にテストカバレッジ測定
機能を有するデバッグ装置に関づる。
(従来の技術) プログラムのデバッグを進める際、プログラムのテスト
・データを用意してそのインプットとアウトプットの内
容を突き合せてl!m[する方法(機能テスト)を採る
のが通常である。しかし、この場合プログラムの構jΔ
F実行されlTい径路が#在していても児逃されて終う
場合が多く、このことからプログラム・rラーの原因と
<Tす、信頼性が上がらなかった。
この点を解決する方式として、前記機能テストと同時に
プログラムの実行径路と非実行径路を測定し、プログラ
ムの全実行径路のうら実際に実行された径路が何パーI
Zントであるかということがそのプログラムの(8頼性
の尺度として用いられるようになった。これをテストカ
バレッジ(wJ羅率)という。
カバレッジを測定Tるには、プログラムをセグメント(
内部に分岐を持たない一塊のプログラム)に分け、全セ
グメントの何パーセントが実行されたかを見る方法が一
般的である。
この場合プログラムのセグメントの管理を、アセンブラ
やコンパイラを改造せずに行うため、セグメントの代り
にアセンブラやコンパイラが出力するシンボルを利用し
て、テストカバレッジの測定を行う方法があった。
(発明が解決しようとする問題点) しかしながら、この様な方法においては次のような問題
点がある。
(1)アセンブラやコンパイラに使用されるシンボルは
、必ずしも2つ以上に分岐するところだけにつけられる
わけではない。
(2)条件付分岐の場合、条件が成立しなかった径路の
先頭にもプログラマ−が意識してシンボルをつける必要
がある。
(3)アヒンブラウコンパイラを実行さ+!るたびに、
上位ソフトウーLア開発装!!?等からシンボルファイ
ルを受信する手間を要する。
本発明の目的は、この様な点を解決するもので、ユーザ
プログラマに制限を与えず、より正確なガバレッジ測定
のでさるマイクロプロセッサ用デバッグ装置を提供する
ことにある。
(問題点を解決するための手段) この様な目的を達成するために本発明では、エミュレー
ション・メヒリと、テストカバレツジ測定用のカバレツ
ジメEりと、プログラムの全セグメントを記憶するフラ
グメモリと、逆アセンブル用テーブルメモリと、ia記
エミュレーション・メモリおよびターゲット側のメモリ
の内容を読み取る手段を具備し、メモリの逆アセンブル
機能をセグメント抽出に利用し、抽出されたセグメント
を! 2 h l< L/ −y ’) % f IJ
 CW tl L/ k * # ja 75 ’j 
′:5しりの内容と比較することによってテストカバレ
ッジ測定ができるようにしたことを特゛徴とする。
(実施例) 以下図面を用いて本発明の詳細な説明する。第1図は本
発明に係るマイクロプロセッサ用デバッグ装置の一実施
例を示す四部構成図である。図において、本発明のai
ioはターゲットシステム(ターゲラ1−メモリ1を含
む)とは双方向バッファ(3ステートバツフアが使用さ
れる>20を介して接続されている。デバッグ装[10
において、11はターゲットに使用されるCPUと同一
のCPUであって、ターゲット側からCPUを取り除き
それに代ってこのターゲットCPUがターゲットを制御
する。12はターゲットCP tJコントローラで、タ
ーゲットCPUがターゲットメモリ上のプログラムを実
行するのか、エミュレーション・メモリ13上のプログ
ラムを実行するのかを制御したり、ターゲットCPLJ
11のレジスタおよびメモリの参照や変更をデバッガC
PU16から制御できるようにするためのものである。
14はカバレッジメモリ、15はフラグメモリ、17は
逆アセンブル用テーブルメモリである。
ターゲットCPU11、CPtJPt上ローラ12、エ
ミュレーション・メモリ13、カバレッジメモリ14は
、エミュレーションバス18を介して相互に接続されr
 J>す、またこの、Lミュレーシコンパス18はバッ
フF20を介してターゲラ上メモリ1に接続されている
また、CPUコントローラ12、エミュレーション・メ
モ1)13、ガバレツジメモリ14、フラグメモリ15
、デバッガCPIJ16および逆アセンブル用テーブル
メモリ17はデバッガ内部バス19を介して相互に接続
されている。
このような構成にお【ブる動作を次に説明する。
(1)セグメントの抽出 セグメントを抽出する場合、抽出でるメモリアドレスの
範囲(デバッグするプログラムのアドレス範囲)と、プ
ログラムの入口アドレスを指定する。
デバッガCPU16はこの指定アドレスがエミュレーシ
ョン・メモリ13上に割付けられているか、ターゲラト
メDす1上に割付けられているかを判定する。もし、エ
ミュレーション・メモリ13上に割付けられていれば、
直接エミュレーション・メモリを入口アドレスからリー
ド(read)する。ターゲットメモリ1上に割付けら
れている場合は、ターゲツトCPUコントローラ12を
介してターゲットcpuiiによりターゲットメモリ1
上の入口アドレスからリードを開始する。
この様な方法で、入口アドレスから順次プログラムをリ
ードし、逆アセンブル用テーブルメモリ17を参照しな
がら逆アセンブルする。
逆アセンブルは分岐命令があれば、同様に分岐しながら
進み、また、2つ以上に分岐する場合は残りの分岐アド
レスを一時記憶しておき、1つの分岐が出口に達したら
残りの分岐の逆アセンブルを行うようにする。
このようにプログラムの全路線について逆アセンブルを
行いながら、条件付分岐命令の分岐アドレスと、条件不
成立時の実行アドレスを抽出する。
11″    例えば、第2図に示すようなセグメント
1〜4かうなるプログラムがあり、各セグメントの先頭
アドレスがそれぞれ$1〜S4であるとする。
このプログラムをノlL!ンブラで記述した例を第3図
に示す。第3図において、条件付分岐命令(jump 
 condition )の分岐先S3と条件不成立時
の実行アドレスS2を抽出することによりセグメント2
および3の抽出が可能となる。そして、このプログラム
はセグメント2と3が実行されれば100%のカバレッ
ジであり、その場合には正確にセグメント抽出ができた
ことになる。
(2)カバレッジ測定 抽出されたセグメントをフラグメモリ15とカバレッジ
メモリ14に記憶し、デバッグ後のカバレンジメモリと
フラグメモリを比較してカバレッジの測定を行う。
以上のようにしてカバレッジ測定が行われる。
(発明の効果) 以上説明したように、本発明によれば、ユーザープログ
ラマに対して、アセンブラプログラムを作成する際、条
件付分岐命令の条件不成立の場合     へ′”h実
行する命令に意識してシンボルを付けるという制約を無
くし、更に逆アセンブル機能を利用するためハードウェ
アの追加を必要とするごとなく安価な構成で正確なカバ
レッジ測定ができるという点において、実用上の効果は
大きい。
【図面の簡単な説明】
第1図は本発明に係るマイクロプロセッサ用デバッグ装
置の一実施例を示す要部構成図、第2図は動作を説明す
るためのプログラムの一例を示すフローチャート、第3
図は第2図のプログラムをアセンブラで記述した場合の
一例である。 1・・・ターゲットメモリ、11・・・ターゲラ・トC
PU112・・・ターゲツトCPUコントロール、13
・・・エミュレーション・メモリ、14・・・カバレッ
ジメモリ、16・・・デバッガCPU、17・・・逆ア
センブル用テーブルメモリ、18・・・エミュレーショ
ンバス、19・・・デバッガ内部バス、20・・・双方
向バッフ?。 第2図 第3図 TAKT r −x Jurnp Condttion 、5Js2:   
2 誹mp 54 JJD

Claims (1)

  1. 【特許請求の範囲】 ターゲット側のマイクロプロセッサを搭載すると共にタ
    ーゲット側のメモリのアクセスが可能に構成され、ター
    ゲットCPUの動作異常を検出することのできるマイク
    ロプロセッサ用デバッグ装置において、 エミュレーション・メモリと、テストカバレッジ測定用
    のカバレッジメモリと、プログラムの全セグメントを記
    憶するフラグメモリと、逆アセンブル用テーブルメモリ
    と、前記エミュレーション・メモリおよびターゲット側
    のメモリの内容を読み取る手段を具備し、メモリの逆ア
    センブル機能をセグメント抽出に利用し、抽出されたセ
    グメントを前記カバレッジメモリに記憶した後前記フラ
    グメモリの内容と比較することによってテストカバレッ
    ジ測定ができるようにしたことを特徴とするマイクロプ
    ロセッサ用デバッグ装置。
JP59228576A 1984-10-30 1984-10-30 マイクロプロセツサ用デバツグ装置 Pending JPS61107440A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59228576A JPS61107440A (ja) 1984-10-30 1984-10-30 マイクロプロセツサ用デバツグ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59228576A JPS61107440A (ja) 1984-10-30 1984-10-30 マイクロプロセツサ用デバツグ装置

Publications (1)

Publication Number Publication Date
JPS61107440A true JPS61107440A (ja) 1986-05-26

Family

ID=16878526

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59228576A Pending JPS61107440A (ja) 1984-10-30 1984-10-30 マイクロプロセツサ用デバツグ装置

Country Status (1)

Country Link
JP (1) JPS61107440A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006146669A (ja) * 2004-11-22 2006-06-08 Ntt Data Corp カバレッジ測定システム及びカバレッジ測定方法並びにそのプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5731061A (en) * 1980-07-31 1982-02-19 Fujitsu Ltd Program testing system
JPS5856049A (ja) * 1981-09-30 1983-04-02 Fujitsu Ltd プログラムデバツグ方式

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5731061A (en) * 1980-07-31 1982-02-19 Fujitsu Ltd Program testing system
JPS5856049A (ja) * 1981-09-30 1983-04-02 Fujitsu Ltd プログラムデバツグ方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006146669A (ja) * 2004-11-22 2006-06-08 Ntt Data Corp カバレッジ測定システム及びカバレッジ測定方法並びにそのプログラム

Similar Documents

Publication Publication Date Title
US5751942A (en) Trace event detection during trace enable transitions
US4742466A (en) System for measuring path coverage represented by the degree of passage of execution paths in a program
EP0464494A2 (en) A high performance pipelined emulator
US7093165B2 (en) Debugging Method
US5680584A (en) Simulator system for code execution and debugging within a multi-architecture environment
KR20110070468A (ko) 인스트루먼테이션 실행 장치 및 방법
JPS59114649A (ja) 処理装置の検査方法
US5963741A (en) Information processor which rewrites instructions in program to dynamically change program structure and method therefor
US6425122B1 (en) Single stepping system and method for tightly coupled processors
JPS61107440A (ja) マイクロプロセツサ用デバツグ装置
KR940007675A (ko) 데이타프로세서 및 이것을 사용하는 디버그장치
JPH01297738A (ja) コンピュータの試験装置
JP2002351695A (ja) プログラムのデバッグ方法、デバッグ装置およびプログラムデバッグ用の記録媒体
JP2002366378A (ja) プログラムのデバッグ装置及びデバッグ方法、並びに記憶媒体
SU849218A1 (ru) Устройство дл отладки программ
JPH10283222A (ja) エミュレータ方法
JPS61202243A (ja) マイクロプロセツサ用デバツグ装置
JPH0444973B2 (ja)
JPS61231633A (ja) マイクロプロセツサ
KR950010489B1 (ko) 전전자 교환기의 rom상주 모니터 디버거의 사용자 정의 명령어 확장방법
JPS6326416B2 (ja)
JPS6234238A (ja) マイクロプロセツサ
Dandamudi SPIM Simulator and Debugger
US20150082083A1 (en) Information processing system and information processing method
JPS6214240A (ja) プログラム検査方式