JP3001547B1 - インサーキットエミュレータ - Google Patents

インサーキットエミュレータ

Info

Publication number
JP3001547B1
JP3001547B1 JP10334101A JP33410198A JP3001547B1 JP 3001547 B1 JP3001547 B1 JP 3001547B1 JP 10334101 A JP10334101 A JP 10334101A JP 33410198 A JP33410198 A JP 33410198A JP 3001547 B1 JP3001547 B1 JP 3001547B1
Authority
JP
Japan
Prior art keywords
instruction
signal
access
instruction code
code
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 - Fee Related
Application number
JP10334101A
Other languages
English (en)
Other versions
JP2000163281A (ja
Inventor
良夫 高倉
Original Assignee
日本電気アイシーマイコンシステム株式会社
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 日本電気アイシーマイコンシステム株式会社 filed Critical 日本電気アイシーマイコンシステム株式会社
Priority to JP10334101A priority Critical patent/JP3001547B1/ja
Application granted granted Critical
Publication of JP3001547B1 publication Critical patent/JP3001547B1/ja
Publication of JP2000163281A publication Critical patent/JP2000163281A/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

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

Abstract

【要約】 【課題】 最近のマイクロコンピュータでは、命令とメ
モリアクセスの関連付けが困難であり、また、従来のイ
ンサーキットエミュレータでは、アドレス専用のトレー
スメモリが必要であるため、高価である。 【解決手段】 セレクタ108は、データアライナ10
4からのアクセスデータと命令保持回路105からの命
令コードとを入力として受け、アクセスデータ切換制御
回路109からのセレクト信号に基づき、上記のアクセ
スデータのみ又はアクセス幅が最大データ幅よりも小さ
い場合は、アクセスデータに上記命令コードの一部をマ
ルチプレクスして出力する。セレクタ107は、命令コ
ード切換制御回路106からのセレクト信号に基づき、
命令保持回路105からの命令コードのみ又は命令長が
所定値よりも長い命令を実行した時は、この命令コード
に命令アライナ102からの命令コードの一部をマルチ
プレクスして出力する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はインサーキットエミ
ュレータに係り、特にマイクロコンピュータを搭載した
システムのハードウェア及びソフトウェアのデバッグに
使用するインサーキットエミュレータに関する。
【0002】
【従来の技術】通常、インサーキットエミュレータ(以
降、IEと称す)は、マイクロコンピュータをエミュレ
ーションするCPU(以降E−CPUと称す)を実装し
ている。このE−CPUは、マイクロコンピュータのプ
ログラム実行を止めたり、任意のアドレスから開始させ
たり、CPUの内部の動作状態を端子から出力する機能
を有している。
【0003】最近のマイクロコンピュータは、命令実行
速度を上げるため、命令を読込み、命令キューに貯めて
から命令を実行する。この構造を採用したマイクロコン
ピュータは、命令に起因したメモリアクセスサイクルを
発生した時には、命令キューに入っている次の命令を実
行している。
【0004】つまり、命令実行終了後、ある時間経過し
てからメモリアクセスサイクルを発生するので、マイク
ロコンピュータの命令実行は、メモリアクセスを起こし
た命令より先に進んでいる。このため、マイクロコンピ
ュータが実行した実行履歴を残すメモリ(以降、トレー
スメモリと称す)に残されたE−CPUの実行結果で
は、命令とアクセスサイクルの同期が取れないことにな
る。
【0005】このため、IEの制御ソフト(以降、デバ
ッガと称す。)は、トレース内容から命令とメモリアク
セスサイクルの関係を予想し、関連付けを行っている
が、関連付けを行うのに時間がかかったり、関連付けが
ずれたりすることがある。また、特定のライトサイクル
だけ履歴に残したい時に使用するサンプリングトレース
をした時は、ライトサイクルだけ履歴に残り、ライトサ
イクルを起こした命令の関連付けができないことにな
り、デバッグ効率が落ちることになる。
【0006】この問題を解決するため、従来より、フェ
ッチのアドレスを保持しておき、バスサイクル毎に独立
したトレースメモリに書き込んでおく手段を有するエミ
ュレータが知られている(特開平3−125232号公
報)。この従来のエミュレータは、図6の構成図に示す
ように、トレースメモリ202、アドレスラッチ回路2
03及びアドレス制御部204からなるトレース回路2
01を有している。また、トレース回路201はエミュ
レーションメモリ部205などと共にマスタバス207
を通じてマスタマイクロプロセッサ(MMCU)209
により制御される。
【0007】トレース回路201は、スレーブマイクロ
プロセッサ(SMCU)208におけるプログラムカウ
ンタからスレーブバス206を介して順次出力される一
連の命令アドレスをその他のトレース情報とは独立させ
てバスサイクル毎に保持するための命令アドレス保持領
域を有するため、トレース結果よりバグを発見すること
により、誤ったデータを書き込んだ命令のアドレスを直
ちに知ることができ、これによりソースリスト上の命令
と対応させることができるので、プログラム修正を速や
かに行うことができる。
【0008】
【発明が解決しようとする課題】しかるに、上記の従来
のインサーキットエミュレータは、フェッチした命令を
逐次処理することしかできないため、複数の命令を同時
に実行したり、先に実行できる命令は実行順序を入れ替
えて実行する複雑な処理をしている最近のマイクロコン
ピュータでは、命令とメモリアクセスの関連付けが困難
であるという問題がある。
【0009】また、従来のインサーキットエミュレータ
では、アドレス専用のトレースメモリ202が必要であ
るため、高速のエミュレータにおいてコストアップの最
大要因である高速メモリを多く必要とし、高価であると
いう問題がある。
【0010】本発明は上記の点に鑑みなされたもので、
マイクロコンピュータが実行した命令コード、データを
分割して、トレースメモリに記録する機能を有し、特
に、命令コードの一部を、連続した関連のある命令コー
ドに毎回付加してトレースメモリに書き込む機能、及
び、関連したアクセスサイクルに命令コードの一部を付
加してトレースメモリに書き込む機能を有することによ
り、命令とメモリアクセスの関連付けを簡単に行うこと
ができる安価なインサーキットエミュレータを提供する
ことを目的とする。
【0011】
【課題を解決するための手段】上記の目的を達成するた
め、本発明はマイクロコンピュータを搭載したシステム
のハードウェア及びソフトウェアのデバッグに使用する
インサーキットエミュレータにおいて、少なくとも命令
実行された命令アドレスと、命令実行された命令コード
と、アクセスのサイズとリードライトの方向とを示すス
テータス信号と、メモリアクセスした時のアクセスデー
タと、メモリアクセスした時のアクセスアドレスと、命
令アクセスデータ及びアクセスアドレスが有効であるこ
とを示す第1のストローブ信号と、命令実行タイミング
を示す第2のストローブ信号とを出力するエミュレーシ
ョンCPUと、エミュレーションCPUが出力するアク
セスデータ及びアクセスアドレスを、第1のストローブ
信号に基づいて保持するデータアライナと、エミュレー
ションCPUが出力する命令アドレス及び第1の命令コ
ードを、第2のストローブ信号に基づいて保持する命令
アライナと、エミュレーションCPUが出力する第1及
び第2のストローブ信号とステータス信号を入力として
受け、タイミング信号を出力するタイミング制御回路
と、タイミング制御回路の出力タイミング信号とを用い
て、命令アライナで保持した第1の命令コードをアクセ
スサイクルに合わせるために保持して第2の命令コード
として出力するパイプライン構造を持った命令保持回路
と、データアライナからのアクセスデータと命令保持回
路からの第2の命令コードとを入力として受け、第1の
セレクト信号に基づき、アクセスデータのみ又はアクセ
スデータに第2の命令コードの一部をマルチプレクスし
て出力する第1のセレクタと、第1のストローブ信号及
びタイミング制御回路からのタイミング信号を受け、第
1のセレクト信号を生成して第1のセレクタへ出力する
第1の切換制御回路とを有する構成としたものである。
【0012】この発明では、アクセス幅が最大データ幅
よりも小さい場合、アクセスデータに第2の命令コード
の一部をマルチプレクスして出力するようにしているた
め、アクセスと命令コードの対応付けが可能となる。
【0013】また、本発明は、上記の第1のセレクタ及
び第1の切換制御回路に代えて、又はこれに加えて、命
令アライナで保持した第1の命令コードの命令長を判別
して制御信号を出力する命令デコーダと、エミュレーシ
ョンCPUが出力する第1及び第2のストローブ信号と
ステータス信号を入力として受け、タイミング信号を出
力するタイミング制御回路と、命令デコーダで生成され
た制御信号とタイミング制御回路の出力タイミング信号
とを用いて、命令アライナで保持した第1の命令コード
をアクセスサイクルに合わせるために保持して第2の命
令コードとして出力するパイプライン構造を持った命令
保持回路と、命令アライナからの第1の命令コードと命
令保持回路からの第2の命令コードとを入力として受
け、第2のセレクト信号に基づき、第2の命令コードの
み又は第2の命令コードに第1の命令コードの一部をマ
ルチプレクスして出力する第2のセレクタと、命令デコ
ーダからの命令長の判別信号と第2のストローブ信号及
びタイミング制御回路からのタイミング信号を受け、第
2のセレクト信号を生成して第2のセレクタへ出力する
第2の切換制御回路とを有する構成としたものである。
【0014】この発明では、命令長が所定値よりも長い
命令を実行した時、第1の命令コードの一部を分割した
第2の命令コードにマルチプレクスして出力することが
できる。
【0015】
【発明の実施の形態】次に、本発明の一実施の形態につ
いて、図面と共に説明する。図1は本発明になるインサ
ーキットエミュレータの一実施の形態の構成図を示す。
同図において、E−CPU101はマイクロコンピュー
タをエミュレーションする中央処理装置(CPU)であ
る。命令アライナ102はE−CPU101が出力した
命令アドレスと命令コードを揃え、保持しておく回路で
ある。タイミング制御回路103はE−CPU101が
出力した命令実行タイミングを示すストローブ信号、ア
クセスサイズ、リードライト方向を示すステータス信号
をもとに、命令保持のタイミング信号、アクセスサイズ
信号、トレースメモリ110への書き込みストローブ信
号を生成する回路である。
【0016】データアライナ104は、E−CPU10
1が出力したアクセスデータ、アクセスアドレスを保持
しておく回路である。命令デコーダ111は、保持した
命令コードを判別し、制御信号を生成する回路である。
命令保持回路105は、命令デコーダ111で生成され
る制御信号とタイミング制御回路103が生成した信号
を使って、命令アライナ102で保持した命令コード
を、アクセスサイクルや長い命令に合わせるために、保
持しておく回路である。
【0017】命令コード切換制御回路106とアクセス
データ切換制御回路109は、タイミング制御回路10
3が出力する制御信号と、命令デコーダ111が出力す
る制御信号を使い、トレースメモリ110に出力するデ
ータを切換える切換タイミング信号を生成する回路であ
る。セレクタ107及びセレクタ108は切換えタイミ
ング信号を使い、命令コードの一部をトレースメモリ1
10に出力する回路である。
【0018】I_codeはE−CPU101が実行し
た命令コード、I_adrは命令コードの置かれていた
アドレス、fstbは前記命令コードと命令コードのア
ドレスの出力が有効であるタイミングを示す信号、A_
dataはメモリアクセスした時のデータ、A_adr
はメモリアクセスした時のアドレス、tastbはA_
data、A_adrが有効であるタイミングを示す信
号、ClockはE−CPU101が動作するクロッ
ク、Acc_statはアクセスサイズ、リードライト
方向を示すステータス信号であり、これらの信号はE−
CPU101から出力される。
【0019】long_instは、タイミング制御回
路103が出力する命令長の長い命令を示す信号、Ac
c_instは、命令デコーダ111が命令保持回路1
05へ出力するメモリアクセスを伴う命令を示す信号、
Code_latchは、命令保持回路105でのラッ
チタイミングを示す信号である。また、codeは、命
令アライナ102で保持した命令コード、hld_co
deは命令保持回路105で保持した命令コード、da
taはデータアライナ104で保持したアクセスデー
タ、Acc_sizeは、タイミング制御回路103が
出力するアクセス幅を示す信号、code_sel1は
アクセスデータを出力するか、命令コードの一部を出力
するかを切換えるために、アクセスデータ切換制御回路
109が出力する信号、code_sel2は命令アラ
イナ102で出力する命令コードをそのまま出力する
か、命令コードの一部を出力するかを切換えるために、
命令コード切換制御回路106が出力する信号である。
【0020】更に、trwrzは、タイミング制御回路
103が出力する、トレースメモリ110への書き込み
信号、accadrは、トレースメモリ110ヘ書き込
む、データアライナ104からのメモリアクセスアドレ
ス、accdatは、トレースメモリ110ヘ書き込
む、セレクタ108からのメモリアクセスデータ、In
st_adrは、トレースメモリ110へ書き込む、命
令アライナ102からの命令実行アドレス、Inst_
codeは、トレースメモリ110ヘ書き込む、セレク
タ107からの命令コードである。
【0021】次に、図1の実施の形態のデータセレクト
動作について、図2のトレースデータ記録内容1(デー
タセレクト)及び図3のデータセレクタの一例のタイミ
ング図を併せ参照して説明する。まず、セレクタ108
が切換わるタイミングについて説明する。E−CPU1
01は、I_adrに命令a、b、c及びdの実行アド
レスである100番地、102番地、106番地及び1
0c番地を出力する。また、E−CPU100は、命令
実行アドレスI_adr(100番地、102番地、1
06番地及び10c番地)のタイミングでaabb、c
cddeeff、gghh、iijjという命令コード
I_codeを出力し、有効タイミングを示すタイミン
グ信号fstbをアクティブにする。
【0022】命令アライナ102は、E−CPU101
から出力された命令実行アドレスI_adrを保持して
書き込みアドレスInst_adrをトレースメモリ1
10へ出力すると共に、E−CPU101から出力され
た命令コードI_codeを保持して命令コードcod
eとして出力する。この例では、E−CPU101はI
nst_adrにアドレス100番地、102番地、1
06番地及び10c番地を出力し、アドレス100番
地、102番地、106番地及び10c番地のタイミン
グで図2及び図3に示すように、aabb、ccdde
eff、gghh、iijjをcodeに出力してい
る。
【0023】以降、命令a、命令bがアクセスを伴う命
令であるとして説明をする。命令デコーダ111は命令
アライナ102からの命令コードcodeをデコードし
て、図3に示すように、アクセスを伴う命令a及びbの
タイミングで出力信号Acc_instをアクティブ
(図3の例ではハイレベル)にする。命令保持回路10
5は、入力信号Acc_instがアクティブの期間
に、命令アライナ102からの命令コードcodeを保
持する。また、命令保持回路105は、アクセス命令が
連続しても問題が発生しないように数段のパイプライン
を有している。
【0024】アクセスAが、命令aで発生したメモリア
クセスサイクルであるとすると、命令aのメモリアクセ
スサイクルは、図3に示すように命令aが実行された次
のクロックで発生している。E−CPU101はこのタ
イミングでメモリアクセスしたときのデータA_dat
aとして「11223344」を、またアクセスサイ
ズ、リードライト方向を示すステータス信号Acc_s
tatとして32ビットのリードを示す信号を出力す
る。
【0025】タイミング制御回路103は、上記のステ
ータス信号Acc_statの情報からアクセス幅を示
すAcc_sizeを生成し、アクセスAの時には、3
2ビット、アクセスBの時には16ビットを示す信号を
出力する。データアライナ104はA_data、A_
adrの値を、E−CPU101からの図3に示すタイ
ミング信号tastbのタイミングで保持し、アクセス
データdataとメモリアクセスアドレスaccadr
として出力する。ここでは、アクセスデータdataは
「11223344」、メモリアクセスアドレスacc
adrは「1000」である。
【0026】ここでアクセスAは32ビットアクセスで
あるので、命令コードをアクセスデータにマルチプレク
スして出力すると、アクセスデータが正しくトレースメ
モリ110に残らなくなる。そこで、この実施の形態で
は図3のタイミング図に示すように、クロックCloc
kに同期して動作するアクセスデータ切換制御回路10
9で生成されたアクセスデータ切換制御信号Code_
sel1がセレクタ108に入力されて、データアライ
ナ104から取り出されてセレクタ108に入力される
アクセスデータdataを選択させ、メモリアクセスデ
ータaccdatとしてトレースメモリ110へ出力さ
せる。
【0027】アクセスBは1004番地への16ビット
ライトになっている。実際にライトサイクルが発生する
のは、命令cの実行タイミングと同時である。アクセス
データが16ビットの場合は、命令コードの一部をアク
セスデータにマルチプレクスして出力することが可能で
ある。そこで、この実施の形態では、アクセスデータ切
換制御回路109で生成されたアクセスデータ切換制御
信号Code_sel1がセレクタ108に入力され
て、命令保持回路105から取り出されてセレクタ10
8に入力される、図3に示す命令コードhld_cod
eを選択させ、このhld_codeをメモリアクセス
データaccdatとしてトレースメモリ110へ出力
させる。
【0028】このようにして、トレースメモリ110
は、タイミング制御回路103からの書き込み信号tr
wrzのタイミングで、図2及び図3に示すように、3
2ビットアクセスAの場合は、セレクタ108により選
択された32ビットのメモリアクセスデータaccda
ta「11223344」を書き込み、16ビットアク
セスBの場合は、セレクタ108により選択された16
ビットのメモリアクセスデータ「5566」に命令コー
ドhld_code「ccddeeff」中の一部の命
令コード16ビット「ccdd」が付加されたaccd
ataを書き込む。
【0029】以上、説明した通り、この実施の形態では
アクセス幅が最大データ幅より小さい場合、命令コード
の一部をアクセスデータに出力しトレースメモリ110
に残すことで、アクセスと命令コードの対応付けが可能
となり、命令コードからアクセスを起こした命令を見つ
けることが簡単にできる。また、アドレス専用のメモリ
も必要としない。
【0030】次に、図1の実施の形態の命令セレクト動
作について、図4のトレースデータ記録内容2(命令セ
レクト)及び図5の命令セレクトの一例のタイミング図
を併せ参照して説明する。
【0031】この例では図4に示すように、200番地
の命令e、204番地の命令f、20c番地の命令gと
3つの命令が実行され、更に命令fはf−1、f−2、
f−3からなるものとする。すなわち、命令fは12バ
イト長という長い命令になっており、実行時間も3クロ
ック(各クロックの命令f−1、f−2、f−3)と長
くなっているものとする。
【0032】E−CPU101が出力する、命令実行が
行われたことを示すタイミング信号fstbは、図5の
タイミング図に示すように、命令eと、命令fの最初の
命令コードと命令gが実行される各タイミングでアクテ
ィブになる。図1の命令アライナ102はアドレスI_
adr、命令コードI_codeを、タイミング信号f
stbのアクティブタイミングでラッチし、命令実行ア
ドレスInst_adr、命令コードcodeを出力す
る。
【0033】命令デコーダ111は、長い命令であると
命令長の長い命令を示す信号long_instを図5
に示すように、命令fの2番目の命令コードf−2のタ
イミングでアクティブにする。long_instがア
クティブの時に、命令保持回路105は命令コードco
deをラッチしておく。
【0034】命令コード切換制御回路106は、タイミ
ング信号fstbを1クロック遅らせたタイミング信号
とlong_inst信号を入力として受け、命令アラ
イナ102で出力する命令コードをそのまま出力する
か、命令コードの一部を出力するかを切り換える切換信
号Code_sel2を生成する。切換信号Code_
sel2がアクティブの時、セレクタ107は命令保持
回路105からの命令コードhld_codeを選択
し、命令コードhld_codeをトレースメモリ11
0に命令コードInst_codeとして出力する。
【0035】切換信号Code_sel2がインアクテ
ィブの時、セレクタ107は命令アライナ102からの
命令コードcodeを選択し、その命令コードcode
をトレースメモリ110へ書き込み用命令コードIns
t_codeとして出力する。
【0036】これにより、I_codeが図5に示すよ
うに、命令長の長い命令fの命令f−1のとき「ijk
lmnop」、命令f−2のとき「qrst」、命令f
−3のとき「uvwx」と分割されている場合、セレク
タ107からトレースメモリ110へ出力される命令コ
ードInst_codeは、図4で「命令コード」とし
て、また図5に示すように、最初の命令f−1のときは
入力I_codeと同じ「ijklmnop」であるの
に対し、命令f−2の実行タイミングでは「ijklq
rst」を、命令f−3の実行タイミングでは「ijk
luvwx」を出力する。
【0037】すなわち、この実施の形態では、命令長が
長い命令fを実行した時、命令コードの一部「ijk
l」を、分割した命令コード「qrst」及び「uvw
x」の上位側にマルチプレクスされてトレースメモリ1
10へ出力される。これにより、命令長の長い命令の途
中であることが分かり、デバッガでの処理が簡単にな
る。また、命令長幅のメモリも不要になる。
【0038】
【発明の効果】以上説明したように、本発明によれば、
アクセス幅が最大データ幅よりも小さい場合、アクセス
データに命令コードの一部をマルチプレクスして出力す
ることにより、アクセスと命令コードの対応付けが可能
であるため、命令コードからアクセスを起こした命令を
見つけることが簡単にできる。
【0039】また、本発明によれば、命令長が所定値よ
りも長い命令を実行した時、第1の命令コードの一部を
分割した第2の命令コードにマルチプレクスして出力す
るようにしたため、命令長の長い命令の途中であること
が分かり、デバッガでの処理を簡単にできる。
【0040】更に、本発明によれば、アドレス専用のメ
モリや命令長幅のメモリも不要にできるので、エミュレ
ータのコストダウンを実現できる。
【図面の簡単な説明】
【図1】本発明の一実施の形態の構成図である。
【図2】図1中のトレースデータ記録内容(データセレ
クト)の一例を示す図である。
【図3】図1中のデータセレクトの一例のタイミング図
である。
【図4】図1中のトレースデータ記録内容(命令セレク
ト)の一例を示す図である。
【図5】図1中の命令セレクトの一例のタイミング図で
ある。
【図6】従来の一例の構成図である。
【符号の説明】
101 E−CPU 102 命令アライナ 103 タイミング制御回路 104 データアライナ 105 命令保持回路 106 命令コード切換制御回路 107 セレクタ2 108 セレクタ1 109 アクセスデータ切換制御回路 110 トレースメモリ 111 命令デコーダ I_code E−CPUが実行した命令コード I_adr 命令コードの置かれていたアドレス fstb 前記命令コードと命令コードのアドレスの出
力が有効であるタイミング信号 A_data メモリアクセスした時のデータ A_adr メモリアクセスした時のアドレス tastb A_data、A_adrが有効であるタ
イミングを示す信号 Clock E−CPUが動作するクロック Acc_stat アクセスサイズ、リードライト方向
を示すステータス信号 long_inst 命令長の長い命令を示す信号 Acc_inst メモリアクセスを伴う命令を示す信
号 Code_latch 命令保持回路でのラッチタイミ
ングを示す信号 code 命令アライナで保持した命令コード hld_code 命令保持回路で保持した命令コード data データアライナで保持したアクセスデータ Acc_size アクセス幅を示す信号 Code_sell アクセスデータを出力するか、命
令コードの一部を出力するかの切換信号 Code_sel2 命令アライナで出力する命令コー
ドをそのまま出力するか、命令コードの一部を出力する
かを切換える信号 trwrz トレースメモリへの書き込み信号 accadr トレースメモリへ書き込むメモリアクセ
スアドレス accdat トレースメモリへ書き込むメモリアクセ
スデータ Inst_adr トレースメモリへ書き込む命令実行
アドレス Inst_code トレースメモリヘ書き込む命令コ
ード d1_fstb fstbの1クロック遅れた信号
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 11/28 310 G06F 11/22 340 G06F 11/34

Claims (6)

    (57)【特許請求の範囲】
  1. 【請求項1】 マイクロコンピュータを搭載したシステ
    ムのハードウェア及びソフトウェアのデバッグに使用す
    るインサーキットエミュレータにおいて、 少なくとも命令実行された命令アドレスと、命令実行さ
    れた命令コードと、アクセスのサイズとリードライトの
    方向とを示すステータス信号と、メモリアクセスした時
    のアクセスデータと、メモリアクセスした時のアクセス
    アドレスと、前記命令アクセスデータ及びアクセスアド
    レスが有効であることを示す第1のストローブ信号と、
    命令実行タイミングを示す第2のストローブ信号とを出
    力するエミュレーションCPUと、 前記エミュレーションCPUが出力する前記アクセスデ
    ータ及びアクセスアドレスを、前記第1のストローブ信
    号に基づいて保持するデータアライナと、 前記エミュレーションCPUが出力する前記命令アドレ
    ス及び命令コードを、前記第2のストローブ信号に基づ
    いて保持する命令アライナと、 前記エミュレーションCPUが出力する前記第1及び第
    2のストローブ信号とステータス信号を入力として受
    け、タイミング信号を出力するタイミング制御回路と、 前記タイミング制御回路の出力タイミング信号とを用い
    て、前記命令アライナで保持した命令コードをアクセス
    サイクルに合わせるために保持しておくパイプライン構
    造を持った命令保持回路と、 前記データアライナからのアクセスデータと前記命令保
    持回路からの命令コードとを入力として受け、第1のセ
    レクト信号に基づき、前記アクセスデータのみ又は前記
    アクセスデータに前記命令コードの一部をマルチプレク
    スして出力する第1のセレクタと、 前記第1のストローブ信号及び前記タイミング制御回路
    からのタイミング信号を受け、前記第1のセレクト信号
    を生成して前記第1のセレクタへ出力する第1の切換制
    御回路とを有することを特徴とするインサーキットエミ
    ュレータ。
  2. 【請求項2】 前記第1の切換制御回路は、前記タイミ
    ング信号がアクセス幅が最大データ幅より小さいことを
    示しているか否か判断し、最大データ幅のときは前記第
    1のセレクタにより前記アクセスデータのみを選択さ
    せ、前記最大データ幅より小さいときは前記第1のセレ
    クタにより前記アクセスデータに前記命令コードの一部
    をマルチプレクスして選択させることを特徴とする請求
    項1記載のインサーキットエミュレータ。
  3. 【請求項3】 マイクロコンピュータを搭載したシステ
    ムのハードウェア及びソフトウェアのデバッグに使用す
    るインサーキットエミュレータにおいて、 少なくとも命令実行された命令アドレスと、命令実行さ
    れた第1の命令コードと、アクセスのサイズとリードラ
    イトの方向とを示すステータス信号と、前記命令アクセ
    スデータ及びアクセスアドレスが有効であることを示す
    第1のストローブ信号と、命令実行タイミングを示す第
    2のストローブ信号とを出力するエミュレーションCP
    Uと、 前記エミュレーションCPUが出力する前記命令アドレ
    ス及び第1の命令コードを、前記第2のストローブ信号
    に基づいて保持する命令アライナと、 前記命令アライナで保持した第1の命令コードの命令長
    を判別して制御信号を出力する命令デコーダと、 前記エミュレーションCPUが出力する前記第1及び第
    2のストローブ信号とステータス信号を入力として受
    け、タイミング信号を出力するタイミング制御回路と、 前記命令デコーダで生成された前記制御信号と前記タイ
    ミング制御回路の出力タイミング信号とを用いて、命令
    アライナで保持した第1の命令コードをアクセスサイク
    ルに合わせるために保持して第2の命令コードとして出
    力するパイプライン構造を持った命令保持回路と、 前記命令アライナからの第1の命令コードと前記命令保
    持回路からの第2の命令コードとを入力として受け、第
    2のセレクト信号に基づき、前記第2の命令コードのみ
    又は前記第2の命令コードに前記第1の命令コードの一
    部をマルチプレクスして出力する第2のセレクタと、 前記命令デコーダからの命令長の判別信号と前記第2の
    ストローブ信号及び前記タイミング制御回路からのタイ
    ミング信号を受け、前記第2のセレクト信号を生成して
    前記第2のセレクタへ出力する第2の切換制御回路とを
    有することを特徴とするインサーキットエミュレータ。
  4. 【請求項4】 前記第2の切換制御回路は、前記命令デ
    コーダからの命令長の判別信号が所定値より長いことを
    示しているときは、前記第2のセレクタにより前記第2
    の命令コードのみを選択させ、前記命令長が前記所定値
    より短いときは前記第2のセレクタにより前記第2の命
    令コードに前記第1の命令コードの一部をマルチプレク
    スして選択させることを特徴とする請求項3記載のイン
    サーキットエミュレータ。
  5. 【請求項5】 マイクロコンピュータを搭載したシステ
    ムのハードウェア及びソフトウェアのデバッグに使用す
    るインサーキットエミュレータにおいて、 少なくとも命令実行された命令アドレスと、命令実行さ
    れた命令コードと、アクセスのサイズとリードライトの
    方向とを示すステータス信号と、メモリアクセスした時
    のアクセスデータと、メモリアクセスした時のアクセス
    アドレスと、前記命令アクセスデータ及びアクセスアド
    レスが有効であることを示す第1のストローブ信号と、
    命令実行タイミングを示す第2のストローブ信号とを出
    力するエミュレーションCPUと、 前記エミュレーションCPUが出力する前記アクセスデ
    ータ及びアクセスアドレスを、前記第1のストローブ信
    号に基づいて保持するデータアライナと、 前記エミュレーションCPUが出力する前記命令アドレ
    ス及び第1の命令コードを、前記第2のストローブ信号
    に基づいて保持する命令アライナと、 前記命令アライナで保持した第1の命令コードの命令長
    を判別して制御信号を出力する命令デコーダと、 前記エミュレーションCPUが出力する前記第1及び第
    2のストローブ信号とステータス信号を入力として受
    け、タイミング信号を出力するタイミング制御回路と、 前記命令デコーダで生成された前記制御信号と前記タイ
    ミング制御回路の出力タイミング信号とを用いて、前記
    命令アライナで保持した第1の命令コードをアクセスサ
    イクルに合わせるために保持して、第2の命令コードと
    して出力するパイプライン構造を持った命令保持回路
    と、 前記データアライナからのアクセスデータと前記命令保
    持回路からの第2の命令コードとを入力として受け、第
    1のセレクト信号に基づき、前記アクセスデータのみ又
    は前記アクセスデータに前記第2の命令コードの一部を
    マルチプレクスして出力する第1のセレクタと、 前記命令アライナからの第1の命令コードと前記命令保
    持回路からの第2の命令コードとを入力として受け、第
    2のセレクト信号に基づき、前記第2の命令コードのみ
    又は前記第2の命令コードに前記第1の命令コードの一
    部をマルチプレクスして出力する第2のセレクタと、 前記第1のストローブ信号及び前記タイミング制御回路
    からのタイミング信号を受け、前記第1のセレクト信号
    を生成して前記第1のセレクタへ出力する第1の切換制
    御回路と、 前記命令デコーダからの命令長の判別信号と前記第2の
    ストローブ信号及び前記タイミング制御回路からのタイ
    ミング信号を受け、前記第2のセレクト信号を生成して
    前記第2のセレクタへ出力する第2の切換制御回路とを
    有することを特徴とするインサーキットエミュレータ。
  6. 【請求項6】 前記第1の切換制御回路は、前記タイミ
    ング信号がアクセス幅が最大データ幅より小さいことを
    示しているか否か判断し、最大データ幅のときは前記第
    1のセレクタにより前記アクセスデータのみを選択さ
    せ、前記最大データ幅より小さいときは前記第1のセレ
    クタにより前記アクセスデータに前記第2の命令コード
    の一部をマルチプレクスして選択させ、前記第2の切換
    制御回路は、前記命令デコーダからの命令長の判別信号
    が所定値より長いことを示しているときは、前記第2の
    セレクタにより前記第2の命令コードのみを選択させ、
    前記命令長が前記所定値より短いときは前記第2のセレ
    クタにより前記第2の命令コードに前記第1の命令コー
    ドの一部をマルチプレクスして選択させることを特徴と
    する請求項5記載のインサーキットエミュレータ。
JP10334101A 1998-11-25 1998-11-25 インサーキットエミュレータ Expired - Fee Related JP3001547B1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10334101A JP3001547B1 (ja) 1998-11-25 1998-11-25 インサーキットエミュレータ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10334101A JP3001547B1 (ja) 1998-11-25 1998-11-25 インサーキットエミュレータ

Publications (2)

Publication Number Publication Date
JP3001547B1 true JP3001547B1 (ja) 2000-01-24
JP2000163281A JP2000163281A (ja) 2000-06-16

Family

ID=18273546

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10334101A Expired - Fee Related JP3001547B1 (ja) 1998-11-25 1998-11-25 インサーキットエミュレータ

Country Status (1)

Country Link
JP (1) JP3001547B1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007102267A (ja) 2005-09-30 2007-04-19 Toshiba Corp アクセス履歴管理方法、アクセス履歴管理装置、アクセス履歴管理プログラム、記憶装置及び情報処理装置

Also Published As

Publication number Publication date
JP2000163281A (ja) 2000-06-16

Similar Documents

Publication Publication Date Title
US5357626A (en) Processing system for providing an in circuit emulator with processor internal state
US6223228B1 (en) Apparatus for synchronizing multiple processors in a data processing system
US4780819A (en) Emulator system utilizing a program counter and a latch coupled to an emulator memory for reducing fletch line of instructions stored in the emulator memory
JPH0679290B2 (ja) コンピュ−タ装置
US4747045A (en) Information processing apparatus having an instruction prefetch circuit
JPH0728670A (ja) 情報処理装置
US5930470A (en) Debugging system and debugging method
JP3001547B1 (ja) インサーキットエミュレータ
US6230263B1 (en) Data processing system processor delay instruction
US6363469B1 (en) Address generation apparatus
JP2586646B2 (ja) マイクロコンピュータ
JP2000029508A (ja) プログラマブルコントローラ
JP2883465B2 (ja) 電子計算機
JP3366235B2 (ja) データ読み出し制御装置
US5109516A (en) Sequence controller for controlling next operating state with a short sequence
JPS6259829B2 (ja)
JP2721611B2 (ja) プログラマブルコントローラ
JP2721610B2 (ja) プログラマブルコントローラ
JP2701799B2 (ja) マイクロコンピュータ
JP3011166B2 (ja) デバッグ回路
JPS63123137A (ja) アドレス一致信号発生方式
JP3153063B2 (ja) マイクロプログラム制御装置
JP2618387B2 (ja) 情報処理装置の試験方法
JPH09325935A (ja) バス切り換え回路
JPH1055289A (ja) デバッグ情報生成回路、およびそれを用いた情報処理装置

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees