JPH01306933A - デバッグ装置 - Google Patents

デバッグ装置

Info

Publication number
JPH01306933A
JPH01306933A JP63138047A JP13804788A JPH01306933A JP H01306933 A JPH01306933 A JP H01306933A JP 63138047 A JP63138047 A JP 63138047A JP 13804788 A JP13804788 A JP 13804788A JP H01306933 A JPH01306933 A JP H01306933A
Authority
JP
Japan
Prior art keywords
microprocessor
memory
signal
comparator
trace
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
JP63138047A
Other languages
English (en)
Inventor
Atsushi Furuido
古井戸 敦
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.)
Hitachi Microcomputer System Ltd
Original Assignee
Hitachi Microcomputer Engineering 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 Hitachi Microcomputer Engineering Ltd filed Critical Hitachi Microcomputer Engineering Ltd
Priority to JP63138047A priority Critical patent/JPH01306933A/ja
Publication of JPH01306933A publication Critical patent/JPH01306933A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

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

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、システムデバッグ技術さらにはデバッグ対象
とされるプログラムの効率を評価する技術に関し、例え
ばインサーキット・エミュレータに適用して有効な技術
に関するものである。
[従来の技術] マイクロコンピュータ応用機器の開発において、その応
用システムのデバッグやそのシステムの詳細な評価を行
なうため、インサーキット・エミュレータが使用されて
いる。斯るインサーキット・エミュレータ2は、第2図
に示すごとく、ラフ1−ウェア開発用の親計算機(ホス
トコンピュータ)などのシステム開発装置1と、開発中
の応用機器3との間に接続され、その応用機器に含まれ
るマイクロプロセッサ(ターゲラ1−・マイクロプロセ
ッサ)の機能を代行する一方でデバッガ−としての機能
を持ち、詳細なシステムデバッグを支援する。
従来のインサーキット・エミュレータは、例えば第3図
に示すように、ターゲットマイクロプロセッサの機能を
代行するエミユレーション用のスレーブマイクロプロセ
ッサエ1と、エミュレーションや各種デバッグ機能を実
現するためのエミュレーション制御部上2、プログラム
の実行やI・レースの停止条件を設定し、条件が成立し
たときにプログラムもしくはトレースを停止させるブレ
ークポイント制御部13.1へレースメモリ部14、応
用機器(ユーザシステム)のメモリが用意されていない
場合に貸し出される代行メモリ部15、及びそれらの制
御を司るためのマスクマイクロプロセッサ16などが内
蔵されてなる。(昭和59年11月3o日オーム社発行
のrLSIハンドブックJ p562乃至p563参照
)。
斯るインサーキット・エミュレータは、その本体から延
長されたケーブル4の先端のプラグが、応用機器に設け
られたターゲットマイクロプロセッサ用ソケッ1へ5に
結合されることにより、上記スレーブマイクロプロセッ
サ11がターゲラ1〜マイクロプロセッサの機能を代行
するようなエミュレーション機能を備える。更に、エミ
ュレーション実行中に各種データやステータス信号など
を実時間でサンプリングし、それをトレースメモリ部1
5などに格納する実時間I・レース機能や、エミユレー
ション用マイクロプロセッサ11による応用機器の制御
動作を実質的に停止させるブレーク機能などの各種デバ
ッグ機能が備えられている。
ところで、従来のエミュレータ・システムでは、上記ブ
レーク機能を実現するため、ブレーク条件設定用レジス
タとコンパレータとを設け、予め条件設定用レジスタに
エミユレーション用マイクロプロセッサの7トレス信号
やデータ信号、コントロール信号その他任意の信号状態
の組合せをブレーク条件として設定することで条件が一
致したところでプログラムを停止させるようにしていた
[発明が解決しようとする課題] しかしながら、上記のようなブレーク条件の設定方法で
は、デバッグを行なう対象となる被評価システムの不良
現象がある程度明確にならなければ、デバッグのための
ブレーク条件設定が行なえない。そのため、ノイズ等に
よる誤動作、タイミング不良等再現性の低い不良等に対
するデバッグを効率良く行なうことができず、再現性の
低い不良についてのデバッグには多大な時間を要してい
た。
本発明の目的は、ノイズによる誤動作等、再現性の低い
不良に対しても効率良くデバッグを行なえるようなエミ
ュレーション技術を提供することにある。
この発明の前記ならびにそのほかの目的と新規な特徴に
ついては、本明細書の記述および添附図     ′面
から明らかになるであろう。
[課題をN決するための手段] 本願において開示される発明のうち代表的なものの概要
を説明すれば、下記のとおりである。
すなわち、I・レース用メモリとは別個に比較用メモリ
と、該メモリに格納されたデータとスレーフハス上の信
号とをリアルタイムで比較するコンパレータとを代行マ
イクロプロセッサを有するエミュレーションシステムの
内に設け、先ず、代行マイクロプロセッサでプログラム
を実行させ、その際の入出力信号(アドレス信号、デー
タ信号、コントロール信号、その他任意の信号)をトレ
ース機能等により取得して、それを比較用メモリに格納
しておいて、次に再度同じ条件で代行マイクロプロセッ
サによるエミュレーションを実行しその間のトレース情
報(代行マイクロプロセッサの各入出力信号)と、先に
比較メモリに格納しておいた内容とを毎サイクルごとに
比較して、−Mしなかった場合にブレーク等のトリガ信
号を形成させるようにするものである。
[作用] 上記手段によれば、予めブレーク条件を設定しなくとも
代行マイクロプロセッサによって同一条件で同一プログ
ラムを繰り返し実行させたときに入出力信号の不一致が
生じるとコンパレータから不一致信号が出力されるので
、その信号をトリガ信号としてブレーク処理、トレース
の停止処理等の処理を起動させることができ、再現性の
低い異常動作の検出が可能となる。
[実施例] 先ず、本発明に係るデバッグ装置を一例として第3図に
示すようなインサーキットエミュレータに適用した場合
のスレーブマイクロプロセッサとマスクマイクロプロセ
ッサとの関係について簡単に説明する。
第3図において、11は、マイクロプロセッサ応用機器
(ユーザ実機)に含まれるターゲットマイクロプロセッ
サの機能を代行してその応用機器の動作制御すなわちエ
ミュレーションを行なうためのスレーブマイクロプロセ
ッサ(以下、SMCUと記す)であり、16は各種デバ
ッグ機能を達成するための制御を司るマスタマイクロプ
ロセッサ(以下、MMCUと記す)である。
SMCUIIが応用機器上のターゲットマイクロプロセ
ッサの機能を代行制御(エミュレーション)するとき、
SMCUIIはMMCU16の制御から切り離され、ま
たSMCUI 1の制御動作状態が予め定められている
状態に到達してブレークされる時、MMCU16の制御
を受けることになる。このような制御状態の切換えがエ
ミュレーション制御部12によって行なわれる。
上記MMCU側本体回路には、このエミュレーション制
御部12とブレーク制御部13、トレースメモリ部14
、代行メモリ部15などが含まれ、エミュレーション機
能やブレーク機能、トレース機能等のデバッグ機能が備
えられている。なお、特に制限されないが、エミュレー
ション制御部12、ブレーク制御部13、I・レースメ
モリ部14、代行メモリ部15の各回路は、スレーブバ
ス21を介してSMCUIIに、またマスタバス22を
介してMMCU16に接続されている。各機能の実行は
、インサーキットエミュレータ本体2に接続される親割
算機側のコンソール10によってコントロールされる。
インサーキット・エミュレータ2内には、MMCU16
がコンソール10との間でデータ通信を行なうためのシ
リアルインタフェース回路17が設けられている。また
、SMCUI 1からはインタフェース回路18を介し
てケーブル4が延長され、このケーブルの先端に設けら
れているプラグ4aをマイクロプロセッサ応用機器とし
てのユーザ実機上のMCUソケットに接続させることに
よって、SMCUIIはユーザ実機を代行制御する。
第1図には本発明を適用したインサーキット・エミュレ
ータの詳細な実施例が示されている。
この実施例のエミュレータにおけるトレース機能は特に
制限されないが、SMCUIIが上記代行制御中のスレ
ーブバス21(アドレスバスSMADD、スレーブデー
タバスSMDAT、スレーブコントロールバスSMCN
T)上の信号、その他任意の信号をSMCUIIのシス
テムクロックSMEに同期してサンプリングし、このサ
ンプリングされた信号をトレースバスTBを介してトレ
ースメモリ部14内のメモリに書き込むことにより実行
される。
トレース回路14′は2にバイト程度の容量を有するR
AMと、MMCU16の制御から切り離されたエミュレ
ーション時にトレースメモリのア1くレスを順次発生す
るカウンタ等を備え、ブレーク制御部13はブレーク条
件やトレース開始、終了等の条件を設定するための複数
のレジスタと、このレジスタの内容とスレーブバス上の
信号すなわちトレース情報とを比較するコンパレータを
備えている。なお、第3図の回路では第1図のトレース
回路14″にサンプリング回路23を含ませたものをト
レース部14としている。
この実施例のインサーキット・エミュレータでは、ラッ
チもしくはレジスタからなるサンプリング回路23によ
ってスレーブバス21上からサンプリングされた情報T
DATを格納するI・レースメモリ(14)の他に、ト
レースされた情報が転送可能な比較用メモリ24と、こ
の比較用メモリ24をSMCUIIの動作と同期してア
クセスするためのアドレスカウンタ25と、比較用メモ
リ24に格納された情報と上記サンプリング回路23に
よって実時間でサンプリングされている情報とを比較し
、一致したときに一致検出信号を出方するコンパレータ
26とが設けられている。比較用メモリ24の容量はト
レースメモリと同程度とするのがよい。そして、この一
致検出信号が1−リガ信号TRGとしてブレーク制御部
13に供給され、ユーザ実機の代行制御を停止させるこ
とができるようになついる。
上記トレース回路14′から比較用メモリ24へのトレ
ース情報の転送はMMCU16によって行なわれる。そ
のため、比較用メモリ24は、アドレス入力端子がマル
チプレクサMPIを介して上記アドレスカウンタ25と
マスクアドレスバス22aに、またデータ入出力端子が
マルチプレクサMP2を介して上記コンパレータ26と
マスタデータバス22bにそれぞれ接続されている。
そして、上記MMCU16からの指令によって比較モー
ドを設定するためデコーダ27と同期化用のレジスタ2
8とが設けられている。しかも上記デコーダ27はブレ
ーク制御部13から制御信号によってもモートの切換え
が行なえるようにされている。つまり、ブレーク回路1
3内のレジスタに比較開始条件を設定し、その条件に達
したときにコンパレータ26による比較を開始させるこ
とができる。
第1図の実施例のインサーキット・エミュレータは大き
く分けて、SMCUllとサンプリング回路23とカウ
ンタ25とよりなる第1制御回路40、MMCU16や
デコーダ27等よりなる第2制御回路50、比較用メモ
リ24とマルチプレフサMPI、MP2とコンパレータ
25とよりなるトリガ発生回路60、レジスタ28から
なる同期回路70の4つの回路部分で構成されている。
上記第1制御回路40は、ターゲットマイクロプロセッ
サの代行動作を行なうSMCUllのシステムクロック
SMEに同期して、自分自身のスレーブアドレス信号S
MADやスレーブデータ信号SMDAT、スレーブコン
トロール信号SMCNTその他ユーザ実機上からプロー
ブ19によって抽出される任意の信号PROBEをサイ
クル単位でサンプルしてトレースバスTB上に出力する
上記第2制御回路5oは、制御用マイクロプロセッサM
MCUから各回路の制御のためアドレス信号MMADD
、データ信号MMDAT、コントロール信号MMCNT
を出力し、そのうちアドレス信号MMADDをデコード
回路27によってテコ−1クシで制御信号Sを形成し、
レジスタ28へ供給する。トリガ発生回路60は比較用
データを書き込んでおく比較用メモリ24を持ち、上記
第1制御回路40および第2制御回路50のいずれか一
方を比較用メモリ24と選択的に接続するため、マルチ
プレクサMPIおよびMP2を有する。まず第2制御回
路50が選択された時、マルチプレクサMPIはMMC
U16のマスクアドレスバスMMADDを、マルチプレ
クサMP2はマスタデータバスMMDATを比較用メモ
リ24に接続させた状態となり、MMCU16から比較
用メモリ24への読み書きが行なえる。次に、第1制御
回路40が選択されるとマルチプレクサMPIは代行用
マイクロプロセッサ11のシステムクロックSMEによ
り、サイクル単位にカウントされるカウンタ25の出力
をアドレス入力として比較用メモリ24に供給し、マル
チプレクサMP2はその比較用メモリ24の連続した内
容を順番に取り出してコンパレータ26に供給する。コ
ンパレータ26の他方の入力端子には第1制御回路40
にてサンプリングされた信号が入力されるため、このコ
ンパレータ26によってトレース情報の比較がサイクル
単位に行なえる。その結果、不一致の場合コンパレータ
26からトリガ信号TRGが出力される。
レジスタ28からなる同期回路70は、第2制御回路4
0から供給される比較開始を要求するデコード信号Sを
もとに、代行用SMCUIIのシステムクロックSME
に同期してモード切換信号MODEを生成し、トリガ発
生回路60による比較をスタートさせる。この出力信号
MODEにより上記マルチプレクサMPI、MP2が第
1制御回路40の側に切り換えられるとともに、カウン
タ25とコンパレータ26が動作状態にされる。
なお、比較開始を要求するデコート信号Sの代わりに、
代行用SMCUIIの任意の信号状態をデコードしてス
タート信号を形成することにより、比較開始時期をMC
UIIの動作状態で指定することも可能である。
なお、上記実施例のエミュレータでは、インタフェース
回路が省略されているが、第3図と同様にSMCUII
にはインタフェース回路18を介してケーブル4が、ま
たマスタバス22にはシリアルインタフェース回路17
が接続される。
上記実施例のエミュレータにおいては、トレース回路1
4’ に書き込まれた情報をMMCU16の制御のもと
で参照することによって、SMCUllの代行制御中の
トレース情報を知ることができる。
また、本実施例のエミュレータにおいては、次のように
してトレース情報比較によるトリガ発生を行なうことが
できる。すなわち、トレース機能により最初に取得した
トレース情報をMMCUI6の制御のもとてトレース回
路14′から、比較用メモリ24へ転送をする。吹に、
同一条件の下で同一プログラムをSMCUIIによって
実行させ、比較を行ないたい(比較開始)ポイントにて
、デコーダ27および同期用レジスタ28を介して比較
モードへ切り換えを行なう。すると、比較用メモリ24
の内容とSMCUIIの現在の代行動作中のバス情報が
コンパレータ25に供給されてサイクル単位で比較がな
され、不一致時にトリガ信号TRGが出力される。この
TRG信号をブレーク制御部13にて、ブレーク信号と
して使用することにより、SMCUIIの代行動作を停
止させることが可能となる。
さらに、上記実施例では、最初にサンプリングしたトレ
ース情報を比較用メモリ24に入れる代わりに、予めM
MCU16によって予想されるデータを比較用メモリ2
4に設定しておいて、SMCULLによるユーザシステ
ムの代行制御を実行させ、コンパレータ26による比較
を開始させることで、異常動作を検出することができる
なお上記実施例ではトレースメモリ26の他に比較用メ
モリ24を設けているが、比較用メモリ24を省略して
トレースメモリ内から前回のトレース情報を読み出して
コンパレータ26に供給してスレーブバス上からサンプ
リングされた信号と比較するようにしてもよい。ただし
、この場合、比較中のトレースは行なえなくなる。
また、実施例ではトレース回路14′内のカウンタとは
別個に比較用メモリ24のアドレスを発生するカウンタ
25を設けているが、メモリ容量を一致させておけばそ
れらのカウンタを共用させることもできる。
以上説明したように上記実施例では、トレース用メモリ
とは別個に比較用メモリと、該メモリに格納されたデー
タとスレーブバス上の信号とをリアルタイムで比較する
コンパレータとを、代行マイクロプロセッサを有するエ
ミュレーションシステムの内に設け、先ず、代行マイク
ロプロセッサでプログラムを実行させ、その際の入出力
信号(アドレス信号、データ信号、コントロール信号、
その他任意の信号)をトレース機能等により取得して、
それを比較用メモリに格納しておいて、次に再度同じ条
件で代行マイクロプロセッサのエミュレーションを行な
いその間のトレース情報(代行マイクロプロセッサの各
入出力信号)と、先に比較メモリに格納しておいた内容
とを毎サイクルごとに比較して、一致しなかった場合に
ブレーク等のトリガ信号を形成させるようにしたので、
予めブレーク条件を設定しなくても、代行マイクロプロ
セッサによって同一条件で同一プログラムを繰り返し実
行させたときに入出力信号の不一致が生じるとコンパレ
ータから不一致信号が出力されるので、その信号をトリ
ガ信号としてブレーク処理、トレースの停止処理等の処
理を起動させることができ、再現性の低い異常動作の検
出が可能となる。これによって例えばノイズ等によるハ
ードウェアの誤動作、変数参照時の誤りによるソフトウ
ェアの誤動作の検出が可能になるという効果がある。
以上本発明者によってなされた発明を実施例に基づき具
体的に説明したが、本発明は上記実施例に限定されるも
のではなく、その要旨を逸脱しない範囲で種々変更可能
であることはいうまでもない。例えば上記実施例では、
システムクロックのサイクル単位で比較を行なっている
がこのクロックを変えることで比較処理の分解能を変え
ることができる。
以上の説明では主として本発明者によってなされた発明
をその背景となった利用分野であるシステム開発装置に
使用されるインサーキットエミュレータに適用したもの
について説明したが、この発明はそれに限定されるもの
でなく、ロジックアナライザのようなデバッグツールそ
の他エミュレーション機能を有するデータ処理システム
に利用することができる。
[発明の効果] 本願において開示される発明のうち代表的なものによっ
て得られる効果を簡単に説明すれば下記のとおりである
すなわち、エミュレーションシステムにおいて、ノイズ
による誤動作等、再現性の低い不良に対しても効率良く
デバッグを行なえるようになる。
【図面の簡単な説明】
第1図は本発明に係るデバッグ装置としてのインサーキ
ット・エミュレータの一実施例を示すブロック図、 第2図は本発明に係るデバッグ装置(インサーキット・
エミュレータ)が適用されるシステム開発装置の全体の
構成を示すブロック図、第3図は従来のインサーキット
・エミュレータの構成例を示すブロック図である。 =19− 16・・・・MMCU(マスタマイクロプロセッサ)、
11・・・・SMCU (スレーブマイクロプロセッサ
)、12・・・・エミュレーション制御部、13・・・
・ブレーク制御部、14′・・・・トレース回路、15
・・・・代行メモリ、23・・・・サンプリング回路、
21・・・・スレーブバス、22・・・・マスタバス、
24・・・・比較用メモリ、26・・・・コンパレータ

Claims (1)

  1. 【特許請求の範囲】 1、デバッグ対象とされる機器のマイクロプロセッサの
    機能を代行する第1マイクロプロセッサ及びデバッグの
    ための制御を司る第2マイクロプロセッサを有するデバ
    ッグ装置であって、上記第1マイクロプロセッサによる
    被デバッグプログラム実行中に、少なくともその第1マ
    イクロプロセッサから入出力される信号をサンプリング
    する手段と、サンプリングされたデータを保持するメモ
    リと、該メモリに格納されたデータと第1マイクロプロ
    セッサの入出力信号とを比較するコンパレータとを有し
    、予め上記メモリ内にサンプリングデータまたは期待値
    データを格納しておいて、第1マイクロプロセッサによ
    り被デバッグプログラムを実行させ、それと同期して上
    記メモリ内のデータを読み出して上記コンパレータに供
    給し、第1マイクロプロセッサの入出力信号と比較し、
    不一致のときにトリガ信号を発生させるようにしたこと
    を特徴とするデバッグ装置。 2、上記コンパレータより出力されるトリガ信号に基づ
    いて、上記代行用第1マイクロプロセッサのエミュレー
    ション動作の停止、またはトレース情報の取得を禁止さ
    せるブレーク制御回路を備えてなることを特徴とする特
    許請求の範囲第1項記載のデバッグ装置。 3、上記メモリとは別個に、該メモリ内のデータを転送
    可能な第2のメモリを備え、この第2メモリの内容とサ
    ンプリングされた信号とを上記コンパレータによって比
    較するようにしたことを特徴とする特許請求の範囲第1
    項または第2項記載のデバッグ装置。
JP63138047A 1988-06-03 1988-06-03 デバッグ装置 Pending JPH01306933A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63138047A JPH01306933A (ja) 1988-06-03 1988-06-03 デバッグ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63138047A JPH01306933A (ja) 1988-06-03 1988-06-03 デバッグ装置

Publications (1)

Publication Number Publication Date
JPH01306933A true JPH01306933A (ja) 1989-12-11

Family

ID=15212759

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63138047A Pending JPH01306933A (ja) 1988-06-03 1988-06-03 デバッグ装置

Country Status (1)

Country Link
JP (1) JPH01306933A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0756767A (ja) * 1993-08-10 1995-03-03 Nec Corp 情報処理装置及びその開発支援装置
US5790194A (en) * 1993-10-18 1998-08-04 Fuji Photo Optical Co., Ltd. Television camera prompter system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0756767A (ja) * 1993-08-10 1995-03-03 Nec Corp 情報処理装置及びその開発支援装置
US5790194A (en) * 1993-10-18 1998-08-04 Fuji Photo Optical Co., Ltd. Television camera prompter system

Similar Documents

Publication Publication Date Title
US6598178B1 (en) Peripheral breakpoint signaler
US5132971A (en) In-circuit emulator
JPH011039A (ja) インサーキット・エミュレータ
EP0455946A2 (en) System for debugging shared memory multiprocessor computers
EP0638864B1 (en) Development support system for microcomputer with internal cache
US10970191B2 (en) Semiconductor device and debug method
US20030037257A1 (en) Debugging device
JPH01306933A (ja) デバッグ装置
JPH0581087A (ja) プロセサのモニタ方式
JPH0695913A (ja) デバッグ装置
JPS59202547A (ja) デバツグ装置
JPH07152603A (ja) デバッグ装置
JPH06266575A (ja) エミュレータ
JPH08179963A (ja) エミュレータ
JPS59183443A (ja) デバツグ装置
JP3019336B2 (ja) マイクロプロセッサ開発支援装置
JPH04314139A (ja) デバッグ装置
JPS6232512B2 (ja)
JPH0573347A (ja) エミユレーシヨン装置
JPH05173830A (ja) 異常動作検出方法、及びエミュレータ
JPH0357029A (ja) デバッグ装置
JPH0285935A (ja) データ処理装置およびそのデバッグ装置
JPH04199336A (ja) マイクロコンピュータ
US20020042873A1 (en) Programmable unit
JPH04192040A (ja) デバッグ装置