JPH0973403A - インサーキットエミュレータ装置におけるトレース格納メモリの分割記録装置 - Google Patents

インサーキットエミュレータ装置におけるトレース格納メモリの分割記録装置

Info

Publication number
JPH0973403A
JPH0973403A JP7282354A JP28235495A JPH0973403A JP H0973403 A JPH0973403 A JP H0973403A JP 7282354 A JP7282354 A JP 7282354A JP 28235495 A JP28235495 A JP 28235495A JP H0973403 A JPH0973403 A JP H0973403A
Authority
JP
Japan
Prior art keywords
storage memory
trace
address
trace storage
circuit emulator
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
JP7282354A
Other languages
English (en)
Inventor
Miya Ikegami
美也 池上
Betsukaa Akuseru
ベッカー アクセル
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.)
Canon I Tech Inc
Original Assignee
Tokyo Denshi Sekkei KK
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 Denshi Sekkei KK filed Critical Tokyo Denshi Sekkei KK
Priority to JP7282354A priority Critical patent/JPH0973403A/ja
Publication of JPH0973403A publication Critical patent/JPH0973403A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 (修正有) 【課題】一度の試走で複数カ所のプログラム実行状況を
解析できる。 【解決手段】インサーキットエミュレータ装置内部のト
レース格納メモリ及びトレース格納メモリを制御するそ
の周辺制御回路で構成し、インサーキットエミュレータ
装置のトレース格納メモリの記録方法を1、若しくはそ
の1/2、1又は2の乗数分の1(1/X:Xは2の乗
数)に分割記録する。また、トレース格納メモリを1、
若しくはその1/2、又は2の乗数分の1(1/X:X
は2の乗数)に分割し、その分割した領域の1又は2以
上を任意に選択して1記録エリアとし、選択したエリア
に記録格納する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】コンピュータ装置を動作させるた
めの装置の内部回路、またはそのプログラムが正常に動
作しているか否かを解析するために、マイクロプロセッ
サ開発支援装置(以下一般名称の「インサーキットエミ
ュレータ装置」と記す)を使用して該コンピュータ装置
の内部回路、およびそのプログラムの内容/実行状態を
解析する方法が取られる。しかしコンピュータ装置(イ
ンサーキットエミュレータ装置を接続したコンピュータ
装置は、一般的には「ターゲットコンピュータ装置」と
称されているが、本発明及び本明細書ではこの「インサ
ーキットエミュレータ装置」を接続した「ターゲットコ
ンピュータ装置」のことを単に「コンピュータ装置」と
記す)に接続したインサーキットエミュレータ装置の内
部のトレース格納メモリへの格納記録は、該メモリとそ
の制御関係回路の問題から、あるプログラム番地からそ
の装置に準備されたメモリの格納許容範囲迄のフレーム
分の1回限りしか格納することが出来なかった。本発明
では前記トレース格納メモリの記録可能な格納容量を1
倍(分割しない)、又はその2分の1(1/2)、ある
いは2の乗数倍分の1(1/X:Xは2の乗数倍)に分
割記録可能とし、分割した領域に複数のプログラム実行
個所の実行状況を格納する事が出来るインサーキットエ
ミュレータ装置を提供する事にある。
【0002】
【従来の技術】従来からコンピュータ装置のプログラム
の実行/解析には、そのプログラムに仮のデータを与え
て試行させ、初期の目的としたデータまたは結果が得ら
れるか否かを確認しながらプログラムの実行/解析を行
っていた。さらに近年では該プログラムの解析にはイン
サーキットエミュレータ装置が多く用いられるようにな
ってきた。従来のインサーキットエミュレータ装置を使
用してプログラムを実行/解析しようとした場合、該イ
ンサーキットエミュレータ装置のトレース格納メモリ
は、前記の通りメモリとその制御回路の関係から分割格
納が難かしく、仲々実現されなかった本発明では、新し
いトレース格納メモリへの分割格納装置(方法)を提供
することにある。
【0003】
【発明が解決しようとする課題】本発明では前記のとお
り、コンピュータ装置のCPUが実行するプログラムを
解析するインサーキットエミュレータ装置におけるトレ
ース格納メモリの1回当りの格納容量の分割手法、及び
分割されたその1個所当りの記録容量の大きさを限定さ
れた範囲内で可変指定する方法を提供することにより、
従来プログラム実行状況の1箇所部分のみのしか解析出
来なかったインサーキットエミュレータ装置のトレース
格納すべきメモリを、任意の整数分の1に分割し、分割
したそれぞれの箇所に別の箇所のプログラム実行状況を
トレース格納メモリに格納すること。並びに1回の格納
容量が分割された1、又は2以上を連続して格納するこ
とももできること、等々一度コンピュータ装置を試走さ
せれば複数カ所のプログラム実行状況、及び問題個所の
記録容量の大きさを可変指定することで、前記課題を解
決することができるインサーキットエミュレータ装置を
提供することにある。
【0004】
【課題を解決するための手段】前記課題を解決するため
に本発明ではプログラムの実行状況を実行/解析するコ
ンピュータ装置と、該コンピュータ装置のプログラムの
実行状況を実行/解析するインサーキットエミュレータ
装置と、該インサーキットエミュレータ装置内に装備し
た該トレース格納メモリの1回の格納容量の大きさを決
定するトレース格納メモリの1回当りの記録格納メモリ
サイズ状態カウンタと、該トレース格納メモリの分割数
を決定するための分割状態コードと、フレーム数の大き
さを決定する為のフレーム数状態コードと、トレース格
納メモリのアドレス番地を制御(決定)するアドレスカ
ウンタと、終了転から後の格納するフレーム数を制御
(決定)する為のディレイカウンタと、トレース格納メ
モリの記録格納開始点等を検出するイベント回路ブロッ
クとその周辺回路とで構成し、前記のイベント回路ブロ
ックとディレイカウンタの動作によって、オペレータが
定めた(希望した)トレース結果を記録格納出来るよう
にすることで前記課題を解決することにある。
【0005】
【実施例】図1は、本発明の一実施例を示すトレース/
イベント部の機能を示すブロック図である。図2は、本
発明の一実施例を示すトレース/イベント部の主要回路
を示すブロック図である。本図においての諸結線は、主
要結線のみを示しているので細部において必ずしも一致
しない部分があるところはご容赦願いたい。図3は、本
発明の一実施例を示すイベント回路を示すブロック図で
ある。図4は、本発明の実施例の一部のアドレスカウン
タ/ディレイカウンタ部を示す回路ブロック図である。
図5はイベント検出からアドレスカウンタ、ディレイカ
ウンタの動作状況を示すチャート図である。図6は、従
来のプローブI/Fブロックを介しインサーキットエミ
ュレータ装置とコンピュータ装置を接続した状態の両装
置の主要機能を示すブロック図である。表1は、トレー
ス格納メモリのフレームの大きさを決定する状態コード
の状態を示す表である。表2は、トレース格納メモリの
フレームのフレーム分割数を決定する状態コードの状態
を示す表である。表3は、トレース格納メモリのフレー
ム数の大きさと、1回の記録するフレーム分割数を決定
する状態コードとの関係を示す表である。
【0006】図6においてコンピュータ装置のCPU7
0が実行するプログラムの実行状況を記録するトレース
格納メモリ15の記録格納は概ね次の手順で処理され
る。すなわち、コンピュータ装置のCPU70が実行
(処理)中のプログラムの信号は、ICEバス82、サ
ンプリング/デコード回路85を介しサンプリングバス
89に伝達される。オペレータがホストコンピュータ装
置94から入力したプログラムの「何番地からトレース
結果を格納開始せよ」又は「トレース開始条件」等の
「トレース開始アドレスデータ又は条件」は、ホストコ
ンピュータ・インターフェイス(I/F)93、メイン
CPU90、マザーバス88を介してイベント回路ブロ
ック14に予め記憶される。一方トレースコントローラ
103は、コンピュータ装置のCPU70が実行中のプ
ログラムのアドレスを監視し、イベント回路ブロック1
4に記録されたトレース開始アドレス情報に基づき、C
PUバス82のコンピュータ装置のCPU70のプログ
ラム実行状況をゲート(通過)させ、記録すべく実処理
時間信号(タイムメジャー信号)、その他の記録格納す
べき信号と共にトレース格納メモリ15に送られ、トレ
ース格納メモリ15の記録許容範囲(フレーム範囲
数)、又は指定記録フレーム数、あるいは中断等の指令
で中断されるまでのフレーム数がトレース格納メモリ1
5に記録格納される。
【0007】他方、前記で記録格納されたコンピュータ
装置のCPU70のプログラム実行結果は、ホストコン
ピュータ装置94からの指示に基づき、トレース格納メ
モリ14からトレースコントローラ103を介して、ホ
ストコンピュータ装置94に伝達表示され、オペレータ
はその表示結果をチェック/確認することで、コンピュ
ータ装置のCPU70が実行したプログラムの実行結果
と、設計したプログラムとの相違/問題点を解決する事
でコンピュータ装置のプログラムの実行/解析(デバッ
グ)が行われる。以上は従来のインサーキットエミュレ
ータ装置の動作の概略であるが、前記従来動作では、記
録すべきプログラムの実行の「何番地から何番地まで」
あるいは「何番地から何行(フレーム)分まで」と、あ
る指定した番地から1ケ所のみしか記録することが出来
なかった。理由はトレース格納メモリに格納すべきメモ
リの記録番地分割管理手法、何番地から格納せよとの指
示を実行するイベント回路ブロックの複数記録管理手
法、前記に対応するソフトウエア/ハードウエア上の問
題があり実現されなかった。しかし、コンピュータ装置
技術が進歩するにつれ、コンピュータ装置のプログラミ
ング技術、及びインサーキットエミュレータ装置の使用
方法も多用化し、1回のコンピュータ装置のプログラム
の実行で、複数のプログラム問題箇所を記録格納すべく
要求がなされて来た。以上の要望に添うべくなされたの
が本発明である。
【0008】図2において本発明の一実施例を説明す
る。先ず各ブロックの説明をすると、トレース格納メモ
リ15は目的であるコンピュータ装置のCPU70が動
作するプログラムの実行状況のデータを格納するメイン
となるメモリで、データを格納する格納項目は(本発明
の為の一実施例として)1フレーム当り256ビットで
構成されている。さらに前記(C)の主となるデータ記
録エリアは次に示すー迄の256ビットで構成、そ
のビット配置は次の通りである。 記 号 内 容 記録ビット配置 SA : アドレスデータ 0− 31番 SD : メイン・データ 32− 63〃 SC : コントロール信号 64− 95〃 SB : その他のサンプルデータエリア 96− 127〃 MEAS: 測定計時信号(メジャー信号) 128− 143〃 TAG : 状態信号 144− 159〃 EMEA: 拡張測定計時信号 160− 175〃 ETAG: 拡張状態信号 176− 191〃 (予備): − − 192− 255〃
【0009】今、ここで前記トレース格納メモリ15を
分割記録しようとする場合、次の2つの条件が考えられ
る。 (a)トレース格納メモリの記録可能フレーム数を前記
の通り最大128Kフレーム(記録フレームとは、作成
したコンピュータ装置のプログラムの概ね1行となる
が、実際はそのCPU70の実行の1行であり、プログ
ラム上での1行でもフレーム数は2−4/5行になる場
合もある)とした場合、プログラムの実行状況の1行を
1フレームと考え、その分割記録方法としてはその2分
の1、4分の1、・・・・と2の倍々数(乗数)に分割
する方法。 (b)あるプログラムのトレース結果を格納するとき、
ある時は4Kフレーム、別の時では8Kフレーム、ある
いは別の時は32K、又は128Kフレーム全部等々
と、希望する解析プログラムの内容により記録するフレ
ーム数を変更したい場合、が考えられる。よって本発明
では、1度のプログラムの実行で記録できるフレームの
大きさは、表1に示すとおり、4K、8K、32K、1
28Kの4種類に選択可能とした。したがってこれらを
表す状態コードも4条件であるから2ビットで構成出来
て、0−0 ー 1−1で表すことが出来る(分割数を
4以上にすると当然ながらこの状態コードを表すビット
数もそれに従い3(電気的に難しいが)ビット(8個
迄)ー4ビット(16個迄)と増すことは言う迄もな
い)。次に、フレームの分割数は表2に示すとおり1
(分割しない)、4分割(1/4)、32分割(1/3
2)、128分割(1/128)に分割するとした場
合、4つの状態に分割するから、前記同様2ビットで表
現でき、したがって状態コードも0−0 ー 1−1で
表現することが出来る(尚、表1と同様分割数を4分割
以上にすると、この状態コードを表すビット数もそれに
従い3ビットー4ビットと増さなければならないことは
言う迄もない)。
【0010】以上の様に、分割数を決定する場合、フレ
ーム数の分割すべきその大きさと、状態コードとは次の
通りに設定したこととして以下説明する。すなわち、フ
レーム数の最大を128Kフレーム、フレームの分割数
を4とした場合、 さらに本発明では、128Kフレームのトレース格納メ
モリのアドレスを管理するためにさらに拡張バンク・ア
ドレス(以下「EBAアドレス」と記す)を付加してあ
る。EBAアドレスは、4ビットで構成してあるので十
進数で0ー15となるから、128Kフレームのトレー
ス格納メモリ15を16で分割し、1・EBAアドレス
当り8Kフレームを構成し、トレース格納メモリ15を
管理することとした。すなわち EBAアドレス(2進数)トレース格納メモリアドレス(十進数) 0000(十進数で0) : 8K(001−008Kフレーム) 0001( 〃 1) : 8K(009ー016K 〃 ) 0010( 〃 2) : 8K(017ー024K 〃 ) ・ ・ ・ ・ ・ ・ 1111( 〃 15) : 8K(121ー128K 〃 )
【0011】故に、トレース格納メモリ15の全容量1
28Kを4で割った32Kは、32K÷8K=4、すな
わち各32Kフレームは、EBAアドレスの0−3(十
進数)番地に記録されることとなる。よって状態カウン
タとEBAアドレスとの関係は (実際は2進数で4桁)の各EBAアドレスが付加され
る。次に、アドレスカウンタ21のメモリ配置は アドレス :01−12・・アドレスコード18
ビットの下16ビットを割当 EBAアドレス:13−16・・拡張アドレス・コー
ド(EBAアドレス)4ビット と、はアドレス、は拡張アドレス(EBAアドレ
ス)となっている。
【0012】以上から本発明では、前記の使用するフレ
ームの大きさと分割数の双方を加味した方法を提案する
もので、格納領域の大きさを最大128Kフレームとし
た場合、分割数は1、4、16、64として表3に示す
通り10通りに設定することができる。すなわち、表3
において、トレース格納メモリ15の格納領域の大きさ
を(イ)の最大で4Kフレームとした場合、4分割する
と各分割領域の大きさは1Kフレームとなり、2K以下
となるので本実施例の場合では分割出来ないから、1フ
レームの大きさは最大4Kの1個である。また、(ニ)
の場合最大の128Kフレームであるから、全容量を4
個に分割した場合128K÷4=32Kフレームで4個
に分割記録する事が出来る事を意味する。以下、各ブロ
ックの動作は前記のとおり、128Kフレーム、4分割
1個当り32Kフレームに分割したとして説明する。い
ま、オペレータがホストコンピュータ装置から入力した
フレームの大きさ、すなわちフレーム数を最大128K
とし、フレーム分割数を4分割とする信号=表1の1
28K[1、1]、表2の(B)の4分割の状態コード
[0、1]、(以下:単に「状態コード」とした場合、
表1の・・・・、表2の(A)(B)・・・、表3
の(イ)(ロ)・・・、記録開始アドレス=X1、X2
・・・等を総称することを意味する)は、トレースMO
DEブロック13を経て、アドレスカウンタ21、及び
シーケンスRAMブロック29他に入力保持される。
【0013】次にコンピュータ装置、インサーキットエ
ミュレータ装置が動作開始すると、装置全体のスタート
信号(TON)が発せら、アドレスカウンタ21の分割
されたフレームである32K/1(32Kに4分割され
たトレース格納メモリの第1番目のフレームの意)のア
ドレスカウンタがカウントを開始する。このアドレスカ
ウンタ21はフレーム数が32Kに指定されているか
ら、0(十進数)から(32Kである)32767(十
進数)迄をカウントするが、32767の次は0に戻
り、再び順次カウントアップし、トレース格納メモリ1
5のトレース格納番地となる。したがってトレース格納
メモリ15にも順次記録されることとなるが、前記カウ
ンタが0に戻ると、トレース格納メモリ15のアドレス
も0に戻り、記録データは上書きされる(言う迄もない
が、上書きされ場合前の記録は残らない)。尚、先の状
態コードが16分割、8Kフレームと指示した場合は0
からカウントアップし8121でその次は0に戻ること
になり、128Kフレームで分割1(分割しない)とし
た場合には0ー131071(128×1024−1)
となりその次は前記同様0に戻る(これら数値は便宜上
10進数で表記してあるが、実際は16進数での数値で
あります)。
【0014】いま、コンピュータ装置のプログラムが最
初に記録すべきX1番地に達した時、イベント・コンパ
レータ27はサンプリング・バス89から入力されたト
レース中のバス・アドレスと予め記憶されている値とを
比較し、記録開始すべきであるとの信号をイベント・セ
レクタ28に送り、さらにこの場合はイベント・セレク
タ28はその信号をシーケンスRAM29に送る。シー
ケンスRAM29は前記信号が入力されるとアドレスカ
ウンタ21に記録開始信号であるACENを発信し、ア
ドレスカウンタ22のカウンタがカウントアップを開始
する。ディレイカウンタ22は、先のフレーム4分割数
のカウンの数である32Kの状態コード信号を受け、デ
ィレイカウンタ22内のカウンタのカウントアップの限
度設定(セッティング)を32K迄(実際は128K−
[マイナス]32K=96Kである96000(10進
数/実際は16進数)をセッティングし、前記ディレイ
カウンタ22のカウント開始信号(DCEN)を受ける
と、96000から上にカウントアップしてゆき、96
000(10進数/実際は16進数)、96000、9
6001、96002、96003・・・・・128K
である128000(実際は16進数で「FF・・F
F」)に達すると、カウントフルの信号(DCF)がア
ドレスカウンタ21、及びシーケンスRAM29に発信
される。尚、ディレイカウンタ22のカウントアップの
設定(セッティング)は、128Kフレームで1分割の
時はカウンタに00000をセッティングするが、12
8K÷32分割=4Kフレームの時は、128K−4K
=124Kの数値である124000を設定(セッティ
ング)し、全て128000(16進数で「FF・・F
F」)となったときカウントが終了する方法を採ってい
る。
【0015】前記ディレイカウンタ22からのカウント
フル信号(DCF)を受けたアドレスカウンタ21は、
アドレスカウンタのカウントアップを中止する。従って
カウント開始の信号から前記カウントフル(DCF)信
号を受ける迄の間、アドレスカウンタのカウントアップ
が回転しており、その間トレース格納メモリ15にプロ
グラムのトレース結果が実際に記録格納され、残されて
いることになる。これらの動作をチャートにすると図5
に示すとおりとなり、イベント信号(記録開始信号:図
5ではイベントーイベントに該当)が入力されると
ディレイカウンタ22はカウントを開始し、カウントフ
ル迄カウントし、カウントフル(DCF)になると、次
に記録すべき分割した第2のアドレスカウンタに移りで
ぃれいかうんた22はカウンターが初期化され次のイベ
ント信号の待機状態となる。以下、この状態を分割され
た数(本説明の場合は4分割)続くこととなる。ここで
先に述べた、トレース格納メモリ15の記録フレーム数
は最大128Kフレームであるから、本実施例では拡張
アドレスバス(EBAアドレス)4ビット分を追加しア
ドレスを管理している。すなわち前述した アドレスコード : 18ビット 拡張アドレスコード(EBAアドレス): 4ビット データ記録エリア :256ビット で構成している。の「拡張アドレスコード(EBAア
ドレス)の4ビットは(10進数で)16であるから、
128K÷16=8K毎にアドレスを割り付けている。
【0016】トレースMODEブロック13は、ホスト
コンピュータ装置94から入力されたオペレータからの
入力情報をマザー・バス82を経由して中継/記憶する
ブロックで、前記の分割状態コード(DVTRC)、フ
レームの大きさ状態コード(TRCMEMO)の両信
号、記録開始すべきX1番地、X2番地、・・・・をア
ドレスカウンタ21、シーケンスRAM29他に送出す
る。シーケンスRAM29はプログラマブルRAMメモ
リ/16ビットで構成され、図2に示すトレーサボード
部全体の制御を司る。先ずシーケンスRAM29は次の
信号が入力される。 MA1−23:メインアドレス信号(24ビットで構
成) MD0−15:メインデータ信号(16ビットで構
成) LSTDV:アドレスカウンタ21からのカウント信
号でトレース格納メモリ15の分割の1個を繰返し記録
(重ね書き)するか、次の分割フレームへジャンプする
かの指示信号(1ビット) DCF :ディレイカウンタ22からのカウント
・フル信号(1ビット) EV :イベントセレクタ28からシーケンス
RAM29へのトレース 格納開始の
X1番地、X2番地・・・のイベント情報信号(8
ビット) ECF :イベントカウンタ30からのキャリー
・アウトプット信号トレースを任意の位置で中断したい
時のカウントアップ信号 次に、シーケンスRAM29は、トレーサボード部の動
作・制御の為に次の信号を各ブロックに出力する。 ACEN :アドレスカウンタ(AC)のカウント
開始指示信号 DCEN :ディレイカウンタ22のカウント開始
指示信号 形態信号により、本信号Hiとなったときディレイカウ
ンタ2 2がカウントを開始する。 BRK :イベント形態カウントで、エミュレー
ションの形態により、CPU70の動作を中断する/し
ないの信号 ECEN :イベント形態カウンタ。イベントの回
数をカウントする DCREN :トレース格納メモリ15を分割した
時、次の部分に行くか、繰 り返すか
の信号。
【0017】アドレスカウンタ21は、トレース格納メ
モリ15に諸データを格納する為に、トレース格納メモ
リ15のアドレスを設定する為のカウンタで、オペレー
タが入力した2つの状態信号(DVTRC、TRCME
MO)と、前記EBAアドレスをもとにトレース格納メ
モリ15に格納するアドレスを設定するカウンタで、次
のメモリ容量で構成している。 アドレスカウンタ:トレース格納メモリのアドレスを
設定するカウンタ 0ー12の13ビットで構成 EBAアドレスカウンタ:前記アドレスカウンタを1
ブロック(8Kフレーム単位)に管理する4ビットで構
成するカウンタ ACR08 :アドレスカウンタが8Kになった
時に該信号を保持するカウンタメモリ(1ビットで構
成) ACR04 :アドレスカウンタが4Kになった
時に該信号を保持するカウンタメモリ(1ビットで構
成) DCF :後記ディレイカウンタ・フルの指
示信号を保持するカウンタメモリ(1ビットで構成) 予備 :アドレスカウンタ32ビット構成
の残り12ビット
【0018】ディレイカウンタ22は、前述のとおりト
レース格納メモリ15に格納する格納フレーム数を設定
(カウント)するカウンタで、トレースMODEブロッ
ク13からの2つの状態信号(DVTRC、TRCME
MO)をもとに、格納フレーム数、すなわち、本実施例
の1格納ブロック32Kの場合、128K−32K=9
6Kである(説明を分かりやすくする為十進数で表現・
・実際は16進数で構成されている)数値をカウンタの
初期設定として96000に設定し、カウント開始の信
号(DCEN)がシーケンスRAMから届くと、960
01、96002、96003、・・・・とカウントア
ップし、128000(実際は16進数で「FF・・F
F」になると)カウント・フルの信号(DCF)をアド
レスカウンタ21、シーケンスRAM25に出力され
る。(参考として:表3の最大フレーム分割数を64と
した場合、128÷64=2Kで、1格納フレームは2
Kとなるから、この場合は128K−2K=126Kと
なり、126000に初期値を設定し、順次カウントア
ップして128000[実際は16進数で「FF・・F
F」]になったところでカウント・フル信号(DCF)
が発せられることになる)。
【0019】トレースCPUコネクタ26はサンプリン
グ・バス82=コンピュータ装置CPUバスからトレー
ス格納メモリ15の記録に必要な信号を入力し、トレー
スMODEブロック13からと、シーケンシャルRAM
ブロック29から、アドレスカウンタからのアドレスカ
ウント信号、ディレイカウンタからの信号とCPUバス
からのメインアドレス及びメインデータの信号を受け、
前記トレース格納メモリに格納するメインアドレス/メ
インデータ信号をSA、SB、SC、SDに分離生成
し、該信号をイベントコンパレータ27に伝送する。イ
ベントコンパレータ27はトレースCPUコネクタ26
からのSA、SB、SC、SDの各信号を入力し、オペ
レータが最初に入力したトレース開始するか/否かX1
番地ーX4番地のアドレス等を比較し、トレース格納メ
モリ15にデータ伝送路34を経て信号が送られると同
時に、X1番地とアドレスが一致した場合には、その信
号をCA、CB、CC、CDの信号としてその旨のデー
タを前記信号を次段のイベントセレクター28に送信符
号化して転送する。さらにイベントセレクタ28は、イ
ベントコンパレータからの信号(CA、CB、CC、C
D)を検知し、トレース開始すべしの信号をシーケンス
RAM29にはトレース開始信号発信用として、及びト
レース格納メモリ15に記録格納用の信号として伝送す
る。イベントカウンタ30は、トレースを何等かの理由
で中断する/しないの場合、シーケンスRAM29への
出力信号、すなわちECEN信号を基にカウントアップ
を開始し、カウント・フルの「FF・・FF」になった
とき、ECN信号をシーケンスRAM29に入力する
と、シーケンスRAM29はトレースを中断するブレー
ク信号(BRK)を必要な各各ブロックに発信する。
【0020】以上、各機能ブロックの動作概要を説明し
たが、次にトレース格納メモリ15への格納の例を説明
する。いま動作例を説明するためオペレータは、前記同
様次の通りに条件を設定したとする、すなわち フレームの最大記録数を128Kフレームとする・・
・・・(表1から)状態信号1−1 トレース格納メモリの分割数を4とする(DVTR
C)・・(表2から)状態信号0−1 前記からトレース格納メモリの1個当りの格納フレー
ム容量は、表3から32Kフレームとなる(TRCME
MO) 前記4分割した各状態へのトレース開始アドレスを・
・・・X1番地、X2番地、X3番地、X4番地 と設定したこととして説明する。
【0021】以上の条件から、オペレータは (a)最初にインサーキットエミュレータ装置に接続さ
れているホストコンピュータ装置94から、マザーバス
88を介してトレースMODEブロック13に前記の条
件を入力する。 (b)ホストコンピュータ装置94からのトレース開始
信号(TON)が入力されると、コンピュータ装置のC
PU70はプログラムの実行を開始する。 (c)ホストコンピュータ装置94からのトレース開始
信号(TON)がトレースMODEブロック13にも入
力されると、該トレース開始信号がシーケンスRAM2
9に伝達され、シーケンスRAM29は該トレース開始
信号を関係各ブロックにトレース開始信号(TON)を
発信し、アドレスカウンタ21のアドレスカウンタは該
トレース開始信号をもとにカウントアップを開始する。
該アドレスカウンタは所定の数(この場合1格納フレー
ムは32Kであるから00000から32000)にな
るとカウンタは00000に戻り、再度00001、0
0002とカウントアップを(後述するカウントアップ
停止信号が届くまで)何回でも繰り返している(図4参
照)。故にトレース格納メモリ15には前記トレース格
納すべくアドレス信号が入力されるので、格納が実行さ
れるが、前記カウンタが一巡すると同じアドレスに戻る
ので、後に入力された信号に書き替えら格納が繰り返さ
れることとなる。
【0022】(d)一方トレースCPUコネクタ26は
(以下図3参照)、シーケンスRAM29からのトレー
ス開始信号(TON)を受け、CPUバスからのトレー
スデータをSA(アドレス)、SB(他のデータ)、S
C(コントロール)、SD(Data)信号に分離しゲ
ート(通過)させ、イベントコンパレータ27に送る。 (e)イベントコンパレータ27は、トレースCPUコ
ネクタ26からの入力されたアドレス信号(SA)と、
最初にオペレータが入力した格納開始を指示したアドレ
ス「X1番地」とを比較し、アドレスが一致した場合格
納開始となるので、該一致した旨の信号をイベントセレ
クタ28を介し、シーケンスRAM29に送出する。 (f)イベントセレクタ28は、該信号をイベント信号
(EV)に変換し、シーケンスRAM29に送出すると
共にトレース格納メモリ15に送り記録させる。 (g)シーケンスRAM29は(以下図4参照)、前記
トレース開始の信号(EV)が入力されると、ディレイ
カウンタ22にカウント・アップの開始の信号(DCE
N)がディレイカウンタ22に発せられる。
【0023】(h)前記DCENの信号が届くとディレ
イカウンタ22のカウンタは、カウント・アップを開始
する。尚、ディレイカウンタ22は前述のとおり、第1
記録ブロックへの記録フレーム数である32Kの場合、
カウンタの初期設定値は128−32=96K:960
00に設定されているから、カウンタは96001、9
6002・・・とカウントアップして行き、12800
0(16進数で「FF・・FF」)になると、カウント
・フル信号(DCF)がアドレスカウンタ21、シーケ
ンスRAM29に出力される。 (i)一方、アドレスカウンタ21は、前記カウントフ
ル信号(DCF)が入力されると、アドレスカウンタの
カウントアップを中止する。すなわちトレース格納メモ
リ15のアドレス・カウンタのカウンタが中止されるの
で、カウンタ・アップしていた過去の(最後の)32K
フレーム分が格納されることになる。故に、ディレイカ
ウンタで設定したカウントアップの32Kフレーム分が
トレース格納メモリ15に残され格納されることとな
る。 (j)前記第1ブロックのカウント=トレース格納メモ
リ15への格納が終了すると、前述のディレイカウンタ
22のカウントフル信号(DCF)を元に、アドレスカ
ウンタ21は第1ブロックのアドレスから第2ブロック
への2個の状態コードカウンタをカウントアップし、さ
らにアドレスカウンタの上位の桁をアップさせ、次の第
2ブロック(X2番地のイベント)でのアドレスカント
アップに備える。 (k)本発明の1つである分割したフレームの1つを連
続して、例えば32Kの2個を連続した記録フレームと
したい時は前記2つの状態コードと、ディレイカウンタ
22の初期設定値を変え、さらにアドレスカウンタの上
位の桁を設定することで目的を達成することが容易とな
る。
【0024】
【発明の効果】以上説明したように、本発明を利用した
インサーキットエミュレータ装置は、コンピュータ装置
のCPU70が実行するプログラムの実行状況を記録格
納するインサーキットエミュレータ装置の内部のトレー
ス格納メモリ15に記録格納すべきエリアを分割記録す
ることが出来るので、1回のコンピュータ装置のプログ
ラムを実行すれば、複数個所(本発明例では最大64個
所)の実行状況を記録格納出来るし、さらに、前記分割
した記録格納エリアの(本発明例では最大64箇所の)
1又は2以上を任意に複数箇所を連続して使用すること
が出来る等、コンピュータ装置のプログラムのデバッグ
が素早く実行することが出来、デバッグに要する時間を
大幅に節約する事が可能となる。
【図面の簡単な説明】
【図1】本発明の一実施例を示すトレース/イベント部
機能ブロックを示す図である。
【図2】本発明の一実施例を示すトレース/イベント部
主要回路ブロックを示す図である。
【図3】本発明の一実施例を示すイベント回路ブロック
を示す図である。
【図4】本発明の実施例の一部を示すアドレスカウンタ
/ディレイカウンタを示す回路ブロック図である。
【図5】イベント検出からアドレスカウンタ、ディレイ
カウンタの動作状況を示すチャート図である。
【図6】プローブI/Fブロックを介しインサーキット
エミュレータ装置とコンピュータ装置を接続した状態の
両機能の主要ブロック図である。
【表1】 トレース格納メモリのフレームの大きさを決定する状態
コードの状態を示す表である。
【表2】 トレース格納メモリのフレームのフレーム分割数を決定
する状態コードの状態を示す表である。
【表3】 トレース格納メモリのフレーム数の大きさと、1回の記
録するフレーム分割数を決定する状態コードとの関係を
示す表である。
【符号の説明】
13 トレースMODEブロック 15 トレース格納メモリ 21 アドレスカウンタ 22 ディレイカウンタ 23 クロック・ジェネレータ 24 メモリ・カウンタ 26 トレースCPU・コネクタ 27 イベント・コンパレータ 28 イベント・セレクタ 29 シーケンスRAM 70 ターゲットコンピュータ装置 82 コンピュータ装置のCPUバス 88 インサーキットエミュレータ装置のメインCPU
バス 90 インサーキットエミュレータ装置内のメインCP
U 93 ホストコンピュータ装置

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】コンピュータ装置の中央処理制御装置(C
    PU)の実行状況を解析するインサーキットエミュレー
    タ装置において、前記インサーキットエミュレータ装置
    内部のトレース格納メモリと、該トレース格納メモリを
    制御するその周辺制御回路とで構成し、該インサーキッ
    トエミュレータ装置のトレース格納メモリの記録方法を
    1、又はその2分の1(1/2)、あるいは2の乗数分
    の1(1/X:Xは2の乗数)に分割記録する事を特長
    とするインサーキットエミュレータ装置。
  2. 【請求項2】コンピュータ装置の中央処理制御装置(C
    PU)の実行状況を解析するインサーキットエミュレー
    タ装置において、前記インサーキットエミュレータ装置
    内部のトレース格納メモリと、該トレース格納メモリを
    制御するその周辺制御回路とで構成し、該インサーキッ
    トエミュレータ装置のトレース格納メモリを1、又はそ
    の2分の1(1/2)、あるいは2の乗数分の1(1/
    X:Xは2の乗数)に分割し、かつその分割した領域の
    1または2以上を任意に選択して1記録エリアとし、前
    記任意に選択した記録エリアに記録格納する事を特長と
    するインサーキットエミュレータ装置。
  3. 【請求項3】コンピュータ装置の中央処理制御装置(C
    PU)の実行状況を解析するインサーキットエミュレー
    タ装置において、前記インサーキットエミュレータ装置
    内部のトレース格納メモリと、該トレース格納メモリを
    制御するその周辺制御回路とで構成し、該トレース格納
    メモリを制御するその周辺制御回路とで構成し、該イン
    サーキットエミュレータ装置のトレース格納メモリを
    1、又はその2分の1(1/2)、あるいは2の乗数分
    の1(1/X:Xは2の乗数)に分割し、該分割された
    トレース格納メモリに追加のアドレス管理用のバンクア
    ドレスを設け、該バンクアドレスはトレース格納メモリ
    をブロックに分割するようにアドレスとして、前記分割
    された該メモリの記録フレーム数を管理する事を特長と
    するインサーキットエミュレータ装置。
  4. 【請求項4】コンピュータ装置の中央処理制御装置(C
    PU)の実行状況を解析するインサーキットエミュレー
    タ装置において、前記インサーキットエミュレータ装置
    内部のトレース格納メモリと、該トレース格納メモリを
    制御するその周辺制御回路とで構成し、該インサーキッ
    トエミュレータ装置のトレース格納メモリの記録方法を
    1、又はその2分の1(1/2)、あるいは2の乗数分
    の1(1/X:Xは2の乗数)に分割記録出来るように
    して、かつ分割記録の記録アドレス/記録フレーム数を
    状態カウンタとディレイカウンタにより記録すべくアド
    レスと記録フレーム数を管理し、分割されたトレース格
    納メモリに記録格納することを特長とするインサーキッ
    トエミュレータ装置。 【請求項4】コンピュータ装置の中央処理制御装置(C
    PU)の実行状況を解析するインサーキットエミュレー
    タ装置において、前記インサーキットエミュレータ装置
    内部のトレース格納メモリと、該トレース格納メモリを
    制御するその周辺制御回路とで構成し、該インサーキッ
    トエミュレータ装置のトレース格納メモリの記録方法を
    1、又はその2分の1(1/2)、あるいは2の乗数分
    の1(1/X:Xは2の乗数)に分割記録し、該分割記
    録された1個の格納エリアの格納フレーム数はディレイ
    カウンタに設定した設定条件でのカウント数に依存し
    て、トレース格納メモリに格納する事を特長とするイン
    サーキットエミュレータ装置。
JP7282354A 1995-09-06 1995-09-06 インサーキットエミュレータ装置におけるトレース格納メモリの分割記録装置 Pending JPH0973403A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7282354A JPH0973403A (ja) 1995-09-06 1995-09-06 インサーキットエミュレータ装置におけるトレース格納メモリの分割記録装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7282354A JPH0973403A (ja) 1995-09-06 1995-09-06 インサーキットエミュレータ装置におけるトレース格納メモリの分割記録装置

Publications (1)

Publication Number Publication Date
JPH0973403A true JPH0973403A (ja) 1997-03-18

Family

ID=17651328

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7282354A Pending JPH0973403A (ja) 1995-09-06 1995-09-06 インサーキットエミュレータ装置におけるトレース格納メモリの分割記録装置

Country Status (1)

Country Link
JP (1) JPH0973403A (ja)

Similar Documents

Publication Publication Date Title
US4367525A (en) CPU Channel monitoring system
US6161200A (en) Method and apparatus for analyzing software executed in embedded systems
EP0130469B1 (en) Internally distributed monitoring system
KR880001401B1 (ko) 데이타 처리 시스템의 공통 버스 이용검출 논리회로
US8978017B2 (en) Profiling operating context
US7174274B2 (en) Gathering I/O measurement data during an I/O operation process
WO2001027873A1 (en) Programmable event counter system
CN113076233B (zh) 一种io性能检测方法、装置、设备及存储介质
US7802149B2 (en) Navigating trace data
JPS61269444A (ja) デ−タ伝送方式
JP2006164185A (ja) デバッグ装置
JPH0973403A (ja) インサーキットエミュレータ装置におけるトレース格納メモリの分割記録装置
JP2595082B2 (ja) プログラマブルコントローラの動作状態監視装置
US7222202B2 (en) Method for monitoring a set of semaphore registers using a limited-width test bus
JPS6142186Y2 (ja)
JPH10221410A (ja) Lsiの自動論理検証方式
JPH05241619A (ja) プログラマブルコントローラのプログラミング装置
JPH1040130A (ja) マイクロコンピュータ
JPH03127237A (ja) 情報処理装置の性能測定方式
JPH05250231A (ja) プログラム動作収集装置
JPH03144705A (ja) プログラマブルコントローラの動作状態監視装置
CN119849393A (zh) 片上逻辑分析仪的实时数据读写方法以及相关装置
JP2003280940A (ja) デバッグシステム
JP2004178169A (ja) ディスクアレイ制御装置
JPH08221297A (ja) プログラムデバッグ装置