JPH08328902A - ソフトウェア開発支援装置 - Google Patents
ソフトウェア開発支援装置Info
- Publication number
- JPH08328902A JPH08328902A JP7132277A JP13227795A JPH08328902A JP H08328902 A JPH08328902 A JP H08328902A JP 7132277 A JP7132277 A JP 7132277A JP 13227795 A JP13227795 A JP 13227795A JP H08328902 A JPH08328902 A JP H08328902A
- Authority
- JP
- Japan
- Prior art keywords
- address
- data
- program
- space
- label
- 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
Links
- 238000001514 detection method Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 239000008186 active pharmaceutical agent Substances 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】
【目的】 プログラム空間とデータ空間とが独立してい
るメモリ空間に設定されているラベルの指定のみでラベ
ルをブレークポイントとして指定可能にする。 【構成】 プログラム空間と、データ空間とが独立した
論理空間に割り当てられており、それらが連続する複数
の論理アドレスの範囲に分割してそれぞれを特定するラ
ベルが設定されたメモリ空間を有するターゲットプロセ
ッサ5に接続され、ターゲットプロセッサ5が実行すべ
き命令のアドレスまたはアクセスすべきデータのアドレ
スを入力するキーボード3と、入力されたアドレスを保
持するブレークアドレスレジスタ220, 221と、これらが
保持するアドレスとターゲットプロセッサ5が実行する
命令のアドレスまたは命令の実行に際してアクセスされ
るデータのアドレスとを比較する比較器230, 231と、い
ずれかの比較結果が一致した場合にターゲットプロセッ
サ5の動作を停止させるデバッグコントローラ21とを備
える。
るメモリ空間に設定されているラベルの指定のみでラベ
ルをブレークポイントとして指定可能にする。 【構成】 プログラム空間と、データ空間とが独立した
論理空間に割り当てられており、それらが連続する複数
の論理アドレスの範囲に分割してそれぞれを特定するラ
ベルが設定されたメモリ空間を有するターゲットプロセ
ッサ5に接続され、ターゲットプロセッサ5が実行すべ
き命令のアドレスまたはアクセスすべきデータのアドレ
スを入力するキーボード3と、入力されたアドレスを保
持するブレークアドレスレジスタ220, 221と、これらが
保持するアドレスとターゲットプロセッサ5が実行する
命令のアドレスまたは命令の実行に際してアクセスされ
るデータのアドレスとを比較する比較器230, 231と、い
ずれかの比較結果が一致した場合にターゲットプロセッ
サ5の動作を停止させるデバッグコントローラ21とを備
える。
Description
【0001】
【産業上の利用分野】本発明はソフトウェア開発支援装
置に関し、特にその対象となるシステムのプログラム空
間とデータ空間とが独立しており、且つ双方にラベルが
設定されている場合に好適なソフトウェア開発支援装置
に関する。
置に関し、特にその対象となるシステムのプログラム空
間とデータ空間とが独立しており、且つ双方にラベルが
設定されている場合に好適なソフトウェア開発支援装置
に関する。
【0002】
【従来の技術】コンピュータのプログラムはいわゆるホ
ストコンピュータ上で開発されるが、そのプログラムを
実際に走行させるプロセッサ(ターゲットプロセッサ)
は、本来的にはホストコンピュータとは独立した別個の
コンピュータである。しかし、コンピュータのプログラ
ムを効率よく開発するには、ターゲットプロセッサをホ
ストコンピュータの制御下に置き、ターゲットプロセッ
サ上のプログラムを所定のアドレスでブレークし、その
時点のレジスタ,メモリ等の内容を観測してプログラム
ミス(バグ)を見つける、即ちデバッグを行なう必要が
ある。換言すれば、ターゲットプロセッサの状態を観測
し、その結果を判定し、制御する専用のハードウェア
(デバッガ) が必要になる。そのようなハードウェアが
インサーキットエミュレータ(ICE:In Circuit Emulate
r) と称されるソフトウェア開発支援装置である。
ストコンピュータ上で開発されるが、そのプログラムを
実際に走行させるプロセッサ(ターゲットプロセッサ)
は、本来的にはホストコンピュータとは独立した別個の
コンピュータである。しかし、コンピュータのプログラ
ムを効率よく開発するには、ターゲットプロセッサをホ
ストコンピュータの制御下に置き、ターゲットプロセッ
サ上のプログラムを所定のアドレスでブレークし、その
時点のレジスタ,メモリ等の内容を観測してプログラム
ミス(バグ)を見つける、即ちデバッグを行なう必要が
ある。換言すれば、ターゲットプロセッサの状態を観測
し、その結果を判定し、制御する専用のハードウェア
(デバッガ) が必要になる。そのようなハードウェアが
インサーキットエミュレータ(ICE:In Circuit Emulate
r) と称されるソフトウェア開発支援装置である。
【0003】図4は従来のソフトウェア開発支援装置と
してのインサーキットエミュレータの構成例を示すブロ
ック図を、図5はそのようなインサーキットエミュレー
タを組み込んだホストコンピュータとターゲットプロセ
ッサとの一般的な接続状態を示す模式図である。
してのインサーキットエミュレータの構成例を示すブロ
ック図を、図5はそのようなインサーキットエミュレー
タを組み込んだホストコンピュータとターゲットプロセ
ッサとの一般的な接続状態を示す模式図である。
【0004】図5において、参照符号1はホストコンピ
ュータを示しており、従来のインサーキットエミュレー
タ(以下、 ICEという)2を内装している。参照符号3
はホストコンピュータ1のキーボードであり、ホストコ
ンピュータ1自体に、またホストコンピュータ1を介し
て ICE2に種々の指示を与えるために使用される。
ュータを示しており、従来のインサーキットエミュレー
タ(以下、 ICEという)2を内装している。参照符号3
はホストコンピュータ1のキーボードであり、ホストコ
ンピュータ1自体に、またホストコンピュータ1を介し
て ICE2に種々の指示を与えるために使用される。
【0005】参照符号4はターゲットシステムを示して
おり、その CPU5がターゲットプロセッサである。な
お、以下の説明では、ターゲットシステム4のプロセッ
サ5をターゲットプロセッサと言う。
おり、その CPU5がターゲットプロセッサである。な
お、以下の説明では、ターゲットシステム4のプロセッ
サ5をターゲットプロセッサと言う。
【0006】従来の ICE2の内部構成を示す図4におい
て、参照符号PAB はプログラムアドレスバスを、DAB は
データアドレスバスをそれぞれ示しており、これらは図
示しないインタフェイスを介してターゲットプロセッサ
5のプログラムバス,データバスとそれぞれ接続されて
いる。
て、参照符号PAB はプログラムアドレスバスを、DAB は
データアドレスバスをそれぞれ示しており、これらは図
示しないインタフェイスを介してターゲットプロセッサ
5のプログラムバス,データバスとそれぞれ接続されて
いる。
【0007】参照符号21はデバッグコントローラを示し
ており、 ICE2全体の制御を司ると共にターゲットプロ
セッサ5の制御をも司る。参照符号22はブレークアドレ
スレジスタを示しており、デバッグコントローラ21から
ブレークポイントを特定するアドレス、即ちブレークア
ドレスが与えられてこれを保持する。
ており、 ICE2全体の制御を司ると共にターゲットプロ
セッサ5の制御をも司る。参照符号22はブレークアドレ
スレジスタを示しており、デバッグコントローラ21から
ブレークポイントを特定するアドレス、即ちブレークア
ドレスが与えられてこれを保持する。
【0008】参照符号23は比較器を示しており、上述の
ブレークアドレスレジスタ22が保持するブレークアドレ
スと、前述のプログラムアドレスバスPAB 上のプログラ
ムアドレスと、データアドレスバスDAB 上のデータアド
レスとが与えられる。比較器23は、ブレークアドレスレ
ジスタ22から与えられるブレークアドレスとプログラム
アドレスバスPAB から与えられるプログラムアドレスと
が一致した場合、またはブレークアドレスレジスタ22か
ら与えられるブレークアドレスとデータアドレスバスDA
B から与えられるデータアドレスとが一致した場合のい
ずれかに所定の一致信号Sを出力する。
ブレークアドレスレジスタ22が保持するブレークアドレ
スと、前述のプログラムアドレスバスPAB 上のプログラ
ムアドレスと、データアドレスバスDAB 上のデータアド
レスとが与えられる。比較器23は、ブレークアドレスレ
ジスタ22から与えられるブレークアドレスとプログラム
アドレスバスPAB から与えられるプログラムアドレスと
が一致した場合、またはブレークアドレスレジスタ22か
ら与えられるブレークアドレスとデータアドレスバスDA
B から与えられるデータアドレスとが一致した場合のい
ずれかに所定の一致信号Sを出力する。
【0009】参照符号24はブレークカウンタを示してお
り、上述の一致信号Sが比較器23から出力される回数を
計数する。このブレークカウンタ24の計数回数はデバッ
グコントローラ21により設定可能であり、ブレークカウ
ンタ24の計数値がデバッグコントローラ21により設定さ
れている値に達すると、所定の信号 (ブレーク信号B)
をデバッグコントローラ21へ出力する。
り、上述の一致信号Sが比較器23から出力される回数を
計数する。このブレークカウンタ24の計数回数はデバッ
グコントローラ21により設定可能であり、ブレークカウ
ンタ24の計数値がデバッグコントローラ21により設定さ
れている値に達すると、所定の信号 (ブレーク信号B)
をデバッグコントローラ21へ出力する。
【0010】参照符号25はPCコントローラを示してお
り、デバッグコントローラ21から所定信号 (制御信号
C)が与えられた場合に、ターゲットプロセッサ5のP
C、即ちプログラムカウンタを制御してターゲットプロ
セッサ5の起動,停止を含む種々の制御を行なう。
り、デバッグコントローラ21から所定信号 (制御信号
C)が与えられた場合に、ターゲットプロセッサ5のP
C、即ちプログラムカウンタを制御してターゲットプロ
セッサ5の起動,停止を含む種々の制御を行なう。
【0011】従って、デバッグコントローラ21は、たと
えばオペレータがホストコンピュータ1のキーボード3
を操作してあるプログラムアドレスまたはデータアドレ
スを入力するとそれをブレークアドレスレジスタ22に保
持させ、その後にPCコントローラ25を制御してターゲッ
トプロセッサ5を起動させる。ターゲットプロセッサ5
は、起動した後は自身のPCに設定されるプログラムアド
レス値、即ちPC値をターゲットシステム4内部のプログ
ラムアドレスバスへ出力し、それに従って (通常は一命
令実行の都度”1”インクリメントされる)、プログラ
ムの各命令を実行し、その実行に必要なデータのデータ
アドレスあるいは実行結果を格納するデータアドレスを
ターゲットシステム4内部のデータアドレスバスへ出力
する。
えばオペレータがホストコンピュータ1のキーボード3
を操作してあるプログラムアドレスまたはデータアドレ
スを入力するとそれをブレークアドレスレジスタ22に保
持させ、その後にPCコントローラ25を制御してターゲッ
トプロセッサ5を起動させる。ターゲットプロセッサ5
は、起動した後は自身のPCに設定されるプログラムアド
レス値、即ちPC値をターゲットシステム4内部のプログ
ラムアドレスバスへ出力し、それに従って (通常は一命
令実行の都度”1”インクリメントされる)、プログラ
ムの各命令を実行し、その実行に必要なデータのデータ
アドレスあるいは実行結果を格納するデータアドレスを
ターゲットシステム4内部のデータアドレスバスへ出力
する。
【0012】これらのターゲットシステム4内部のプロ
グラムアドレスバス及びデータアドレスバスへ出力され
るプログラムアドレス, データアドレスは図示されてい
ないインタフェイスを介して ICE2のプログラムアドレ
スバスPAB,データアドレスバスDAB にも与えられるの
で、それらは比較器23に入力される。
グラムアドレスバス及びデータアドレスバスへ出力され
るプログラムアドレス, データアドレスは図示されてい
ないインタフェイスを介して ICE2のプログラムアドレ
スバスPAB,データアドレスバスDAB にも与えられるの
で、それらは比較器23に入力される。
【0013】比較器23では、プログラムアドレスバスPA
B,データアドレスバスDAB 上のアドレスと先にデバッグ
コントローラ21からブレークアドレスレジスタ22に与え
られて保持されているブレークアドレスとを常時比較し
ており、一致した場合には一致信号Sをブレークカウン
タ24へ出力する。
B,データアドレスバスDAB 上のアドレスと先にデバッグ
コントローラ21からブレークアドレスレジスタ22に与え
られて保持されているブレークアドレスとを常時比較し
ており、一致した場合には一致信号Sをブレークカウン
タ24へ出力する。
【0014】一方、ブレークカウンタ24には予めデバッ
グコントローラ21により設定値が設定されているので、
比較器23からの一致信号Sの出力回数が設定値に達する
と、ブレーク信号Bがデバッグコントローラ21へ出力さ
れる。これに応じてデバッグコントローラ21は制御信号
CをPCコントローラ25へ出力し、PCコントローラ25はタ
ーゲットシステム4のターゲットプロセッサ5のPCを停
止させる。PCが停止することにより、ターゲットプロセ
ッサ5はプログラムの実行を停止する。
グコントローラ21により設定値が設定されているので、
比較器23からの一致信号Sの出力回数が設定値に達する
と、ブレーク信号Bがデバッグコントローラ21へ出力さ
れる。これに応じてデバッグコントローラ21は制御信号
CをPCコントローラ25へ出力し、PCコントローラ25はタ
ーゲットシステム4のターゲットプロセッサ5のPCを停
止させる。PCが停止することにより、ターゲットプロセ
ッサ5はプログラムの実行を停止する。
【0015】このようにしてターゲットプロセッサ5が
プログラムの実行を停止した時点で、ターゲットシステ
ム4内のレジスタ, メモリの内容がホストコンピュータ
1に読み出され、その表示画面に表示されるので、オペ
レータはその状態を目視で、あるいは適宜の記憶手段に
記憶させた上でターゲットプロセッサ5のプログラムが
設計通り機能しているか否かを調べる。
プログラムの実行を停止した時点で、ターゲットシステ
ム4内のレジスタ, メモリの内容がホストコンピュータ
1に読み出され、その表示画面に表示されるので、オペ
レータはその状態を目視で、あるいは適宜の記憶手段に
記憶させた上でターゲットプロセッサ5のプログラムが
設計通り機能しているか否かを調べる。
【0016】ところで、コンピュータ(プロセッサ)の
メモリ空間には、プログラム用の空間(個々のアドレス
でプログラムを構成する個々の命令が指定される)と、
データ用の空間(個々のアドレスで個々のデータが指定
される)とが独立した別個の空間として割り付けられて
いる場合とがある。この場合には、メモリ固有の物理ア
ドレスは一意に割り付けられているため、プログラム空
間のアドレスとデータ空間のアドレスとを区別して物理
アドレスに変換する必要がある。
メモリ空間には、プログラム用の空間(個々のアドレス
でプログラムを構成する個々の命令が指定される)と、
データ用の空間(個々のアドレスで個々のデータが指定
される)とが独立した別個の空間として割り付けられて
いる場合とがある。この場合には、メモリ固有の物理ア
ドレスは一意に割り付けられているため、プログラム空
間のアドレスとデータ空間のアドレスとを区別して物理
アドレスに変換する必要がある。
【0017】更に、プログラム空間,データ空間をそれ
ぞれある程度のアドレス範囲(プログラム空間であれば
たとえば一区切りの処理,サブルーチン等、データ空間
であればたとえばデータとして組み込むテーブル単位
等)で分割してそれぞれのデータ範囲にラベルを付与す
る手法がある。このようなメモリ空間を有するプロセッ
サのためのインサーキットエミュレータでは、ブレーク
ポイントをラベルで指定する際にはオペレータがその都
度、指定するラベルのアドレスとそれがプログラム空間
であるか、データ空間であるかを指定する必要が生じ、
操作が非常に煩雑になる。
ぞれある程度のアドレス範囲(プログラム空間であれば
たとえば一区切りの処理,サブルーチン等、データ空間
であればたとえばデータとして組み込むテーブル単位
等)で分割してそれぞれのデータ範囲にラベルを付与す
る手法がある。このようなメモリ空間を有するプロセッ
サのためのインサーキットエミュレータでは、ブレーク
ポイントをラベルで指定する際にはオペレータがその都
度、指定するラベルのアドレスとそれがプログラム空間
であるか、データ空間であるかを指定する必要が生じ、
操作が非常に煩雑になる。
【0018】
【発明が解決しようとする課題】本発明はこのような事
情に鑑みてなされたものであり、プログラム空間とデー
タ空間とが独立しているメモリ空間にラベルが設定され
ている場合に、ラベルの指定のみでラベルをブレークポ
イントとして指定可能なソフトウェア開発支援装置の提
供を目的とする。
情に鑑みてなされたものであり、プログラム空間とデー
タ空間とが独立しているメモリ空間にラベルが設定され
ている場合に、ラベルの指定のみでラベルをブレークポ
イントとして指定可能なソフトウェア開発支援装置の提
供を目的とする。
【0019】また、データアドレスをブレークポイント
として指定する場合に、そのアドレスからのデータの読
み出し、あるいはそのアドレスへの書き込みの別を指定
可能なソフトウェア開発支援装置の提供を目的とする。
として指定する場合に、そのアドレスからのデータの読
み出し、あるいはそのアドレスへの書き込みの別を指定
可能なソフトウェア開発支援装置の提供を目的とする。
【0020】
【課題を解決するための手段】本発明に係るソフトウェ
ア開発支援装置は、実行すべきプログラムの各命令が配
置される論理アドレスにて構成されるプログラム空間
と、プログラムの実行に際して使用されるデータ,実行
結果のデータが配置される論理アドレスにて構成される
データ空間とが独立した論理空間に割り当てられてお
り、プログラム空間及びデータ空間が連続する複数の論
理アドレスの範囲に分割してそれぞれを特定するラベル
が設定されたメモリ空間を有するプロセッサに接続さ
れ、プロセッサが実行すべき命令のアドレスまたはアク
セスすべきデータのアドレスを入力する入力手段と、入
力手段により入力されたアドレスを保持するアドレス保
持手段と、プロセッサが実行する命令のアドレスまたは
命令の実行に際してアクセスされるデータのアドレス
と、アドレス保持手段が保持するアドレスとを比較する
比較手段と、比較手段による比較結果が一致した場合に
プロセッサの動作を停止させる制御手段とを備え、更に
各ラベルを表す情報と、各ラベルがプログラム空間また
はデータ空間のいずれに設定されているかを示す情報
と、各ラベルが特定する論理アドレスの範囲が割り付け
られている物理アドレスの範囲とを対応付けたテーブル
を有している。
ア開発支援装置は、実行すべきプログラムの各命令が配
置される論理アドレスにて構成されるプログラム空間
と、プログラムの実行に際して使用されるデータ,実行
結果のデータが配置される論理アドレスにて構成される
データ空間とが独立した論理空間に割り当てられてお
り、プログラム空間及びデータ空間が連続する複数の論
理アドレスの範囲に分割してそれぞれを特定するラベル
が設定されたメモリ空間を有するプロセッサに接続さ
れ、プロセッサが実行すべき命令のアドレスまたはアク
セスすべきデータのアドレスを入力する入力手段と、入
力手段により入力されたアドレスを保持するアドレス保
持手段と、プロセッサが実行する命令のアドレスまたは
命令の実行に際してアクセスされるデータのアドレス
と、アドレス保持手段が保持するアドレスとを比較する
比較手段と、比較手段による比較結果が一致した場合に
プロセッサの動作を停止させる制御手段とを備え、更に
各ラベルを表す情報と、各ラベルがプログラム空間また
はデータ空間のいずれに設定されているかを示す情報
と、各ラベルが特定する論理アドレスの範囲が割り付け
られている物理アドレスの範囲とを対応付けたテーブル
を有している。
【0021】また本発明に係るソフトウェア開発支援装
置は、入力手段により入力されたデータの書き込み,読
み出しの別を入力する書き込み/読み出し入力手段と、
書き込み/読み出し入力手段により入力されたデータの
書き込み,読み出しの別を表す信号を保持する書き込み
/読み出し信号保持手段と、書き込み/読み出し信号保
持手段に保持されている信号と、データのアクセスに伴
う書き込み信号及び読み出し信号を比較し、一致する場
合にのみ、比較手段にデータのアドレスを与える手段と
を備えたことを特徴とする。
置は、入力手段により入力されたデータの書き込み,読
み出しの別を入力する書き込み/読み出し入力手段と、
書き込み/読み出し入力手段により入力されたデータの
書き込み,読み出しの別を表す信号を保持する書き込み
/読み出し信号保持手段と、書き込み/読み出し信号保
持手段に保持されている信号と、データのアクセスに伴
う書き込み信号及び読み出し信号を比較し、一致する場
合にのみ、比較手段にデータのアドレスを与える手段と
を備えたことを特徴とする。
【0022】
【作用】本発明に係るソフトウェア開発支援装置では、
入力手段によりいずれかのラベルが入力された場合に、
制御信号がテーブルを参照して指定されたラベルに対応
する物理アドレスをアドレス保持手段に保持させる。
入力手段によりいずれかのラベルが入力された場合に、
制御信号がテーブルを参照して指定されたラベルに対応
する物理アドレスをアドレス保持手段に保持させる。
【0023】また本発明に係るソフトウェア開発支援装
置では、入力手段により入力されたデータの書き込み,
読み出しの別が入力され、入力されたデータの書き込
み,読み出しの別を表す信号が書き込み/読み出し信号
保持手段により保持され、書き込み/読み出し信号保持
手段に保持されている信号と、データのアクセスに伴う
書き込み信号及び読み出し信号とが比較され、一致する
場合にのみ、比較手段にデータのアドレスが与えられて
比較が行なわれる。
置では、入力手段により入力されたデータの書き込み,
読み出しの別が入力され、入力されたデータの書き込
み,読み出しの別を表す信号が書き込み/読み出し信号
保持手段により保持され、書き込み/読み出し信号保持
手段に保持されている信号と、データのアクセスに伴う
書き込み信号及び読み出し信号とが比較され、一致する
場合にのみ、比較手段にデータのアドレスが与えられて
比較が行なわれる。
【0024】
【実施例】以下、本発明をその実施例を示す図面に基づ
いて詳述する。図1は本発明に係るソフトウェア開発支
援装置の一実施例としてのインサーキットエミュレータ
の内部構成を示すブロック図である。
いて詳述する。図1は本発明に係るソフトウェア開発支
援装置の一実施例としてのインサーキットエミュレータ
の内部構成を示すブロック図である。
【0025】なお、図1にその内部構成が示されている
本発明のソフトウェア開発支援装置としてのインサーキ
ットエミュレータは、前述の図5に示されているよう
に、従来のインサーキットエミュレータと全く同様にホ
ストコンピュータ1に内装され、ターゲットシステム4
と接続されている。また、ターゲットシステム4にはタ
ーゲットプロセッサ5が内蔵されており、ホストコンピ
ュータ1にはキーボード3が接続されている。
本発明のソフトウェア開発支援装置としてのインサーキ
ットエミュレータは、前述の図5に示されているよう
に、従来のインサーキットエミュレータと全く同様にホ
ストコンピュータ1に内装され、ターゲットシステム4
と接続されている。また、ターゲットシステム4にはタ
ーゲットプロセッサ5が内蔵されており、ホストコンピ
ュータ1にはキーボード3が接続されている。
【0026】なお、キーボード3は ターゲットプロセ
ッサ5が実行すべき命令のアドレスまたはアクセスすべ
きデータのアドレスをブレークアドレスとして入力する
ための入力手段として機能する。また、キーボード3
は、データアドレスがブレークアドレスとして指定され
る場合にそのメモリへの書き込みまたはメモリからの読
み出しの別の指定を入力する入力手段としても機能す
る。
ッサ5が実行すべき命令のアドレスまたはアクセスすべ
きデータのアドレスをブレークアドレスとして入力する
ための入力手段として機能する。また、キーボード3
は、データアドレスがブレークアドレスとして指定され
る場合にそのメモリへの書き込みまたはメモリからの読
み出しの別の指定を入力する入力手段としても機能す
る。
【0027】図1において、参照符号PAB はプログラム
アドレスバスを、DAB はデータアドレスバスをそれぞれ
示しており、これらは図示しないインタフェイスを介し
てターゲットプロセッサ5のプログラムバス,データバ
スとそれぞれ接続されている。
アドレスバスを、DAB はデータアドレスバスをそれぞれ
示しており、これらは図示しないインタフェイスを介し
てターゲットプロセッサ5のプログラムバス,データバ
スとそれぞれ接続されている。
【0028】また、参照符号DWE はデータメモリライト
イネーブル信号線を、DRE はデータメモリリードイネー
ブル信号線をそれぞれ示している。これらは、図示しな
いインタフェイスを介してターゲットプロセッサ5のデ
ータメモリライトイネーブル信号線, データメモリリー
ドイネーブル信号線とそれぞれ接続されている。
イネーブル信号線を、DRE はデータメモリリードイネー
ブル信号線をそれぞれ示している。これらは、図示しな
いインタフェイスを介してターゲットプロセッサ5のデ
ータメモリライトイネーブル信号線, データメモリリー
ドイネーブル信号線とそれぞれ接続されている。
【0029】参照符号21は制御手段として機能するデバ
ッグコントローラを示しており、本発明の ICE全体の制
御を司る。参照符号220, 221はいずれもブレークアドレ
スレジスタを示しており、デバッグコントローラ21から
ブレークポイントを特定するアドレス、即ちブレークア
ドレスが与えられてこれを保持する。即ち、ブレークア
ドレスレジスタ220, 221はブレークアドレスを保持する
保持手段として機能する。
ッグコントローラを示しており、本発明の ICE全体の制
御を司る。参照符号220, 221はいずれもブレークアドレ
スレジスタを示しており、デバッグコントローラ21から
ブレークポイントを特定するアドレス、即ちブレークア
ドレスが与えられてこれを保持する。即ち、ブレークア
ドレスレジスタ220, 221はブレークアドレスを保持する
保持手段として機能する。
【0030】参照符号30, 31はいずれもW/R(書き込み/
読み出し) 検出回路を示している。W/R検出回路30, 31
には共に、デバッグコントローラ21からの書き込み/読
み出しの別を示す信号(以下、 W/R信号という),データ
メモリリードイネーブル信号線DRE,データメモリライト
イネーブル信号線DWE 及びデータアドレスバスDAB から
のアドレス信号が与えられている。
読み出し) 検出回路を示している。W/R検出回路30, 31
には共に、デバッグコントローラ21からの書き込み/読
み出しの別を示す信号(以下、 W/R信号という),データ
メモリリードイネーブル信号線DRE,データメモリライト
イネーブル信号線DWE 及びデータアドレスバスDAB から
のアドレス信号が与えられている。
【0031】図2は W/R検出回路30(31)の構成例を示す
論理回路図である。なお、ここではデータメモリライト
イネーブル信号, データメモリリードイネーブル信号共
にハイアクティブであるとする。
論理回路図である。なお、ここではデータメモリライト
イネーブル信号, データメモリリードイネーブル信号共
にハイアクティブであるとする。
【0032】図2において、参照符号300 は W/Rレジス
タであり、データの読み出し時のブレークが指定されて
いる場合に”1”が、書き込み時のブレークが指定され
ている場合に”0”がそれぞれデバッグコントローラ21
から書込まれる。即ち、 W/Rレジスタ300 は W/R信号の
保持手段として機能する。
タであり、データの読み出し時のブレークが指定されて
いる場合に”1”が、書き込み時のブレークが指定され
ている場合に”0”がそれぞれデバッグコントローラ21
から書込まれる。即ち、 W/Rレジスタ300 は W/R信号の
保持手段として機能する。
【0033】参照符号310 は一方の入力が負論理の AND
ゲートを、321 は両入力が正論理のANDゲートをそれぞ
れ示している。 ANDゲート310 の負論理の入力には W/R
レジスタ300 の出力信号が、正論理の入力にはデータメ
モリライトイネーブル信号線DWE がそれぞれ入力されて
いる。従って、 W/Rレジスタ300 にデータの書き込み時
のブレークを指定する信号”0”が保持されている場合
にデータメモリライトイネーブル信号線DWE が”1”
(アクティブ)になれば、 ANDゲート310 の出力信号
は”1”になる。一方、 ANDゲート311 の両入力には W
/Rレジスタ300 の出力信号及びデータメモリリードイネ
ーブル信号線DRE がそれぞれ入力されている。従って、
W/Rレジスタ300 にデータの読み出し時のブレークを指
定する信号”1”が保持されている場合にデータメモリ
リードイネーブル信号線DRE が”1”(アクティブ) に
なれば、 ANDゲート311 の出力信号は”1”になる。
ゲートを、321 は両入力が正論理のANDゲートをそれぞ
れ示している。 ANDゲート310 の負論理の入力には W/R
レジスタ300 の出力信号が、正論理の入力にはデータメ
モリライトイネーブル信号線DWE がそれぞれ入力されて
いる。従って、 W/Rレジスタ300 にデータの書き込み時
のブレークを指定する信号”0”が保持されている場合
にデータメモリライトイネーブル信号線DWE が”1”
(アクティブ)になれば、 ANDゲート310 の出力信号
は”1”になる。一方、 ANDゲート311 の両入力には W
/Rレジスタ300 の出力信号及びデータメモリリードイネ
ーブル信号線DRE がそれぞれ入力されている。従って、
W/Rレジスタ300 にデータの読み出し時のブレークを指
定する信号”1”が保持されている場合にデータメモリ
リードイネーブル信号線DRE が”1”(アクティブ) に
なれば、 ANDゲート311 の出力信号は”1”になる。
【0034】両 ANDゲート310, 311の出力信号はORゲー
ト320 に入力されており、ORゲート320 の出力信号は2
入力の ANDゲート330 に入力されている。 ANDゲート33
0 の他方の入力はデータアドレスバスDAB からのアドレ
ス信号である。従って、W/Rレジスタ300 にデータの書
き込み時のブレークを指定する信号”0”が保持されて
いる場合は、データの書き込み時にのみデータアドレス
が ANDゲート330 から比較手段として機能する比較器23
0(231)へ出力され、 W/Rレジスタ300 にデータの読み出
し時のブレークを指定する信号”1”が保持されている
場合は、データの読み出し時にのみデータアドレスが A
NDゲート330 から比較器230(231)へ出力される。
ト320 に入力されており、ORゲート320 の出力信号は2
入力の ANDゲート330 に入力されている。 ANDゲート33
0 の他方の入力はデータアドレスバスDAB からのアドレ
ス信号である。従って、W/Rレジスタ300 にデータの書
き込み時のブレークを指定する信号”0”が保持されて
いる場合は、データの書き込み時にのみデータアドレス
が ANDゲート330 から比較手段として機能する比較器23
0(231)へ出力され、 W/Rレジスタ300 にデータの読み出
し時のブレークを指定する信号”1”が保持されている
場合は、データの読み出し時にのみデータアドレスが A
NDゲート330 から比較器230(231)へ出力される。
【0035】以上から明らかなように、 ANDゲート310,
311は W/Rレジスタ300 に保持されている W/R信号と、
データのアクセスに伴う書き込み信号及び読み出し信
号、即ちデータメモリライトイネーブル信号線DWE 及び
データメモリリードイネーブル信号線DRE を比較し、一
致する場合にのみ、比較器230(231)にデータアドレスを
与える手段として機能する。
311は W/Rレジスタ300 に保持されている W/R信号と、
データのアクセスに伴う書き込み信号及び読み出し信
号、即ちデータメモリライトイネーブル信号線DWE 及び
データメモリリードイネーブル信号線DRE を比較し、一
致する場合にのみ、比較器230(231)にデータアドレスを
与える手段として機能する。
【0036】図1に戻って説明を続けると、比較器230
には、前述のブレークアドレスレジスタ220 が保持する
ブレークアドレスと、上述の W/R検出回路30から出力さ
れるアドレス信号と、プログラムアドレスバスPB上のプ
ログラムアドレスとが与えられる。比較器231 には、前
述のブレークアドレスレジスタ221 が保持するブレーク
アドレスと、上述の W/R検出回路31から出力されるアド
レス信号と、プログラムアドレスバスPB上のプログラム
アドレスとが与えられる。
には、前述のブレークアドレスレジスタ220 が保持する
ブレークアドレスと、上述の W/R検出回路30から出力さ
れるアドレス信号と、プログラムアドレスバスPB上のプ
ログラムアドレスとが与えられる。比較器231 には、前
述のブレークアドレスレジスタ221 が保持するブレーク
アドレスと、上述の W/R検出回路31から出力されるアド
レス信号と、プログラムアドレスバスPB上のプログラム
アドレスとが与えられる。
【0037】比較器230 は、ブレークアドレスレジスタ
220 から与えられるブレークアドレスとプログラムアド
レスバスPAB から与えられるプログラムアドレスとが一
致した場合、またはブレークアドレスレジスタ220 から
与えられるブレークアドレスと W/R検出回路30を経由し
てデータアドレスバスDAB から与えられるデータアドレ
スとが一致した場合のいずれかに所定の一致信号S0を出
力する。比較器231 は、ブレークアドレスレジスタ221
から与えられるブレークアドレスとプログラムアドレス
バスPAB から与えられるプログラムアドレスとが一致し
た場合、またはブレークアドレスレジスタ221 から与え
られるブレークアドレスと W/R検出回路31を経由してデ
ータアドレスバスDAB から与えられるデータアドレスと
が一致した場合のいずれかに所定の一致信号S1を出力す
る。
220 から与えられるブレークアドレスとプログラムアド
レスバスPAB から与えられるプログラムアドレスとが一
致した場合、またはブレークアドレスレジスタ220 から
与えられるブレークアドレスと W/R検出回路30を経由し
てデータアドレスバスDAB から与えられるデータアドレ
スとが一致した場合のいずれかに所定の一致信号S0を出
力する。比較器231 は、ブレークアドレスレジスタ221
から与えられるブレークアドレスとプログラムアドレス
バスPAB から与えられるプログラムアドレスとが一致し
た場合、またはブレークアドレスレジスタ221 から与え
られるブレークアドレスと W/R検出回路31を経由してデ
ータアドレスバスDAB から与えられるデータアドレスと
が一致した場合のいずれかに所定の一致信号S1を出力す
る。
【0038】参照符号240, 241はいずれもブレークカウ
ンタを示している。ブレークカウンタ240 は、上述の一
致信号S0が比較器23から出力される回数を計数する。ブ
レークカウンタ241 は、上述の一致信号S1が比較器231
から出力される回数を計数する。これらのブレークカウ
ンタ240, 241の計数回数はデバッグコントローラ21によ
り設定可能であり、ブレークカウンタ240, 241の計数値
がデバッグコントローラ21により設定されている値に達
すると、それぞれ所定の信号 (ブレーク信号B0, B1)を
デバッグコントローラ21へ出力する。
ンタを示している。ブレークカウンタ240 は、上述の一
致信号S0が比較器23から出力される回数を計数する。ブ
レークカウンタ241 は、上述の一致信号S1が比較器231
から出力される回数を計数する。これらのブレークカウ
ンタ240, 241の計数回数はデバッグコントローラ21によ
り設定可能であり、ブレークカウンタ240, 241の計数値
がデバッグコントローラ21により設定されている値に達
すると、それぞれ所定の信号 (ブレーク信号B0, B1)を
デバッグコントローラ21へ出力する。
【0039】参照符号25はPCコントローラを示してお
り、デバッグコントローラ21から所定信号 (制御信号
C)が与えられた場合に、ターゲットプロセッサ5のP
C、即ちプログラムカウンタを制御してターゲットプロ
セッサ5の起動,停止を含む種々の制御を行なう。
り、デバッグコントローラ21から所定信号 (制御信号
C)が与えられた場合に、ターゲットプロセッサ5のP
C、即ちプログラムカウンタを制御してターゲットプロ
セッサ5の起動,停止を含む種々の制御を行なう。
【0040】参照符号26は本発明を特徴付けるラベルテ
ーブルを示している。以下、このラベルテーブル26につ
いて説明する。
ーブルを示している。以下、このラベルテーブル26につ
いて説明する。
【0041】図3は本発明のソフトウェア開発支援装置
としてのインサーキットエミュレータがエミュレーショ
ンの対象とするターゲットプロセッサ5のプログラム空
間PS及びデータ空間DS及びそれらから作成されるラベル
テーブル26の内容を示す模式図である。
としてのインサーキットエミュレータがエミュレーショ
ンの対象とするターゲットプロセッサ5のプログラム空
間PS及びデータ空間DS及びそれらから作成されるラベル
テーブル26の内容を示す模式図である。
【0042】たとえば、ターゲットプロセッサ5のプロ
グラム空間PSが連続する複数のアドレスの範囲に分割さ
れていてそれぞれの範囲でプログラムルーチンA, B, C
…が構成されているとする。そして、それぞれのプログ
ラムルーチンA, B, C …にはそれぞれラベルPA, PB, PC
…が設定されているとする。
グラム空間PSが連続する複数のアドレスの範囲に分割さ
れていてそれぞれの範囲でプログラムルーチンA, B, C
…が構成されているとする。そして、それぞれのプログ
ラムルーチンA, B, C …にはそれぞれラベルPA, PB, PC
…が設定されているとする。
【0043】またたとえば、ターゲットプロセッサ5の
データ空間DSが連続する複数のアドレスの範囲に分割さ
れていてそれぞれの範囲でデータテーブルA, B, C …が
構成されているとする。そして、それぞれのデータテー
ブルA, B, C …にはそれぞれラベルDA, DB, DC…が設定
されているとする。
データ空間DSが連続する複数のアドレスの範囲に分割さ
れていてそれぞれの範囲でデータテーブルA, B, C …が
構成されているとする。そして、それぞれのデータテー
ブルA, B, C …にはそれぞれラベルDA, DB, DC…が設定
されているとする。
【0044】このようにそれぞれラベルPA, PB, PC…が
設定されたプログラムルーチンA, B, C …がプログラム
空間PS上に割り付けられ、それぞれラベルDA, DB, DC…
が設定されたデータテーブルA, B, C …がデータ空間DS
上に割り付けられた状態で作成されたプログラムをコン
パイルまたはアセンブルすることにより、参照符号26に
て示されているような各ラベルを表す情報 (コード)
と、各ラベルがプログラム空間またはデータ空間のいず
れに設定されているかを示す情報 (フラグ) と、各ラベ
ルが特定する論理アドレスの範囲 (この例では各ラベル
のアドレス範囲を一例として一定とする。従って、先頭
アドレスのみ) が割り付けられている物理アドレスの範
囲との対応関係が得られるので、ラベルテーブル26に予
めホストコンピュータ1により格納される。
設定されたプログラムルーチンA, B, C …がプログラム
空間PS上に割り付けられ、それぞれラベルDA, DB, DC…
が設定されたデータテーブルA, B, C …がデータ空間DS
上に割り付けられた状態で作成されたプログラムをコン
パイルまたはアセンブルすることにより、参照符号26に
て示されているような各ラベルを表す情報 (コード)
と、各ラベルがプログラム空間またはデータ空間のいず
れに設定されているかを示す情報 (フラグ) と、各ラベ
ルが特定する論理アドレスの範囲 (この例では各ラベル
のアドレス範囲を一例として一定とする。従って、先頭
アドレスのみ) が割り付けられている物理アドレスの範
囲との対応関係が得られるので、ラベルテーブル26に予
めホストコンピュータ1により格納される。
【0045】上述のような本発明のソフトウェア開発支
援装置としてのインサーキットエミュレータの動作につ
いて以下に説明する。
援装置としてのインサーキットエミュレータの動作につ
いて以下に説明する。
【0046】いまたとえば、オペレータがホストコンピ
ュータ1のキーボード3を操作してプログラムルーチン
BのラベルPBと、データテーブルBのラベルDB及びその
書き込み/読み出しの別、たとえば読み出しを入力した
とする。この場合、デバッグコントローラ21はラベルテ
ーブル26を参照してラベルPBに対応するアドレス”100
”を読み出してブレークアドレスとしてブレークアド
レスレジスタ220 に保持させると共に、ラベルテーブル
26を参照してラベルDBに対応するアドレス”1200”を読
み出してブレークアドレスとしてブレークアドレスレジ
スタ221 に保持させる。更に、デバッグコントローラ21
はデータアドレス及び W/R信号”1”を W/R検出回路3
0, 31の W/Rレジスタ300 に保持させ、その後にPCコン
トローラ25を制御してターゲットプロセッサ5を起動さ
せる。
ュータ1のキーボード3を操作してプログラムルーチン
BのラベルPBと、データテーブルBのラベルDB及びその
書き込み/読み出しの別、たとえば読み出しを入力した
とする。この場合、デバッグコントローラ21はラベルテ
ーブル26を参照してラベルPBに対応するアドレス”100
”を読み出してブレークアドレスとしてブレークアド
レスレジスタ220 に保持させると共に、ラベルテーブル
26を参照してラベルDBに対応するアドレス”1200”を読
み出してブレークアドレスとしてブレークアドレスレジ
スタ221 に保持させる。更に、デバッグコントローラ21
はデータアドレス及び W/R信号”1”を W/R検出回路3
0, 31の W/Rレジスタ300 に保持させ、その後にPCコン
トローラ25を制御してターゲットプロセッサ5を起動さ
せる。
【0047】ターゲットプロセッサ5は、起動した後は
自身のPCに設定されるプログラムアドレス値、即ちPC値
をターゲットシステム4内部のプログラムアドレスバス
へ出力し、それに従って (通常は一命令実行の都度”
1”インクリメントされる)、プログラムの各命令を実
行し、その実行に必要なデータのアドレスあるいは実行
結果を格納するアドレスをターゲットシステム4内部の
データアドレスバスへ出力する。
自身のPCに設定されるプログラムアドレス値、即ちPC値
をターゲットシステム4内部のプログラムアドレスバス
へ出力し、それに従って (通常は一命令実行の都度”
1”インクリメントされる)、プログラムの各命令を実
行し、その実行に必要なデータのアドレスあるいは実行
結果を格納するアドレスをターゲットシステム4内部の
データアドレスバスへ出力する。
【0048】これらのターゲットシステム4内部のプロ
グラムアドレスバス及びデータアドレスバスへ出力され
るプログラムアドレス, データアドレスは図示されてい
ないインタフェイスを介して本発明の ICE2のプログラ
ムアドレスバスPAB,データアドレスバスDAB にも与えら
れ、プログラムアドレスは直接、データアドレスは W/R
検出回路30, 31を経由して比較器230, 231にそれぞれ入
力される。また、ターゲットプロセッサ5がデータアク
セスを行なう際にはそのデータのアドレスと共に書き込
み/読み出しの別を指示するためにデータメモリライト
イネーブル信号線DWE またはデータメモリリードイネー
ブル信号線DRE のいずれかをアクティブ(”1”) にす
るので、それらは W/R検出回路30, 31に入力される。
グラムアドレスバス及びデータアドレスバスへ出力され
るプログラムアドレス, データアドレスは図示されてい
ないインタフェイスを介して本発明の ICE2のプログラ
ムアドレスバスPAB,データアドレスバスDAB にも与えら
れ、プログラムアドレスは直接、データアドレスは W/R
検出回路30, 31を経由して比較器230, 231にそれぞれ入
力される。また、ターゲットプロセッサ5がデータアク
セスを行なう際にはそのデータのアドレスと共に書き込
み/読み出しの別を指示するためにデータメモリライト
イネーブル信号線DWE またはデータメモリリードイネー
ブル信号線DRE のいずれかをアクティブ(”1”) にす
るので、それらは W/R検出回路30, 31に入力される。
【0049】比較器230 では、先にデバッグコントロー
ラ21からブレークアドレスレジスタ220 に与えられて保
持されているブレークアドレス”0”とプログラムアド
レスバスPAB とを、また W/R検出回路30を経由して与え
られるデータアドレスバスDAB 上のデータアドレスとを
常時比較しており、一致した場合には一致信号S0をブレ
ークカウンタ240 へ出力する。但し、データアドレスバ
スDAB からは、この場合は W/R検出回路30の W/Rレジス
タ300 には”1”が保持されているので、データの書き
込みに際して出力されるデータアドレスのみが比較器23
0 に与えられる。
ラ21からブレークアドレスレジスタ220 に与えられて保
持されているブレークアドレス”0”とプログラムアド
レスバスPAB とを、また W/R検出回路30を経由して与え
られるデータアドレスバスDAB 上のデータアドレスとを
常時比較しており、一致した場合には一致信号S0をブレ
ークカウンタ240 へ出力する。但し、データアドレスバ
スDAB からは、この場合は W/R検出回路30の W/Rレジス
タ300 には”1”が保持されているので、データの書き
込みに際して出力されるデータアドレスのみが比較器23
0 に与えられる。
【0050】比較器231 では、先にデバッグコントロー
ラ21からブレークアドレスレジスタ221 に与えられて保
持されているブレークアドレス”1200”とプログラムア
ドレスバスPAB とを、また W/R検出回路31を経由して与
えられるデータアドレスバスDAB 上のアドレスとを常時
比較しており、一致した場合には一致信号S1をブレーク
カウンタ241 へ出力する。但し、データアドレスバスDA
B からは、この場合はW/R検出回路31の W/Rレジスタ300
には”1”が保持されているので、データの書き込み
に際して出力されるデータアドレスのみが比較器231 に
与えられる。
ラ21からブレークアドレスレジスタ221 に与えられて保
持されているブレークアドレス”1200”とプログラムア
ドレスバスPAB とを、また W/R検出回路31を経由して与
えられるデータアドレスバスDAB 上のアドレスとを常時
比較しており、一致した場合には一致信号S1をブレーク
カウンタ241 へ出力する。但し、データアドレスバスDA
B からは、この場合はW/R検出回路31の W/Rレジスタ300
には”1”が保持されているので、データの書き込み
に際して出力されるデータアドレスのみが比較器231 に
与えられる。
【0051】一方、ブレークカウンタ240, 241には予め
デバッグコントローラ21により設定値がそれぞれ設定さ
れている。このため、比較器230 からの一致信号S0, S1
の出力回数が設定値に達すると、ブレーク信号B0, B1が
デバッグコントローラ21へそれぞれ出力される。これら
のブレーク信号B0, B1のいずれかが先に出力された時点
でデバッグコントローラ21は制御信号CをPCコントロー
ラ25へ出力し、PCコントローラ25はターゲットシステム
4のターゲットプロセッサ5のPCを停止させる。PCが停
止することにより、ターゲットプロセッサ5はプログラ
ムの実行を停止する。
デバッグコントローラ21により設定値がそれぞれ設定さ
れている。このため、比較器230 からの一致信号S0, S1
の出力回数が設定値に達すると、ブレーク信号B0, B1が
デバッグコントローラ21へそれぞれ出力される。これら
のブレーク信号B0, B1のいずれかが先に出力された時点
でデバッグコントローラ21は制御信号CをPCコントロー
ラ25へ出力し、PCコントローラ25はターゲットシステム
4のターゲットプロセッサ5のPCを停止させる。PCが停
止することにより、ターゲットプロセッサ5はプログラ
ムの実行を停止する。
【0052】いまたとえば、両ブレークカウンタ240, 2
41には共に”1”がデバッグコントローラ21により設定
されているとすると、ターゲットプロセッサ5によるプ
ログラムの処理がラベルPBが設定されているプログラム
ルーチンBにまで進むと、プログラムアドレスバスPAB
へはアドレス”100 ”が出力されるので、比較器230に
よる比較結果が一致してターゲットプロセッサ5の動作
が停止される。あるいは、ターゲットプロセッサ5によ
るプログラムの処理中にラベルDBが設定されているデー
タテーブルBに対する書き込み処理が行なわれようとす
ると、データアドレスバスDAB へはアドレス”1200”が
出力されるので、これが W/R検出回路31を経由して比較
器231 に与えられ、比較器231 による比較結果が一致し
てターゲットプロセッサ5の動作が停止される。
41には共に”1”がデバッグコントローラ21により設定
されているとすると、ターゲットプロセッサ5によるプ
ログラムの処理がラベルPBが設定されているプログラム
ルーチンBにまで進むと、プログラムアドレスバスPAB
へはアドレス”100 ”が出力されるので、比較器230に
よる比較結果が一致してターゲットプロセッサ5の動作
が停止される。あるいは、ターゲットプロセッサ5によ
るプログラムの処理中にラベルDBが設定されているデー
タテーブルBに対する書き込み処理が行なわれようとす
ると、データアドレスバスDAB へはアドレス”1200”が
出力されるので、これが W/R検出回路31を経由して比較
器231 に与えられ、比較器231 による比較結果が一致し
てターゲットプロセッサ5の動作が停止される。
【0053】このようにしてターゲットプロセッサ5が
プログラムの実行を停止した時点で、ターゲットシステ
ム4内のレジスタ, メモリの内容がホストコンピュータ
1に読み出され、その表示画面に表示されるので、オペ
レータはその状態を目視で、あるいは適宜の記憶手段に
記憶させた上でターゲットプロセッサ5のプログラムが
設計通り機能しているか否かを調べる。
プログラムの実行を停止した時点で、ターゲットシステ
ム4内のレジスタ, メモリの内容がホストコンピュータ
1に読み出され、その表示画面に表示されるので、オペ
レータはその状態を目視で、あるいは適宜の記憶手段に
記憶させた上でターゲットプロセッサ5のプログラムが
設計通り機能しているか否かを調べる。
【0054】
【発明の効果】以上に詳述したように本発明に係るソフ
トウェア開発支援装置によれば、プログラム空間とデー
タ空間とが独立しているメモリ空間にラベルが設定され
ている場合に、ラベルの指定のみでラベルが示すプログ
ラム空間またはデータ空間上のアドレスをブレークポイ
ントとして指定可能になる。
トウェア開発支援装置によれば、プログラム空間とデー
タ空間とが独立しているメモリ空間にラベルが設定され
ている場合に、ラベルの指定のみでラベルが示すプログ
ラム空間またはデータ空間上のアドレスをブレークポイ
ントとして指定可能になる。
【0055】また、データアドレスをブレークポイント
として指定する場合に、そのアドレスからのデータの読
み出し、あるいはそのアドレスへの書き込みの別を指定
可能になる。
として指定する場合に、そのアドレスからのデータの読
み出し、あるいはそのアドレスへの書き込みの別を指定
可能になる。
【図1】本発明に係るソフトウェア開発支援装置の一実
施例としてのインサーキットエミュレータの内部構成を
示すブロック図である。
施例としてのインサーキットエミュレータの内部構成を
示すブロック図である。
【図2】本発明に係るソフトウェア開発支援装置として
のインサーキットエミュレータのデータの書き込み/読
み出しの別を検出する W/R検出回路の構成例を示す論理
回路図である。
のインサーキットエミュレータのデータの書き込み/読
み出しの別を検出する W/R検出回路の構成例を示す論理
回路図である。
【図3】本発明のソフトウェア開発支援装置としてのイ
ンサーキットエミュレータがエミュレーションの対象と
するターゲットプロセッサのプログラム空間及びデータ
空間及びそれらから作成されるラベルテーブルの内容を
示す模式図である。
ンサーキットエミュレータがエミュレーションの対象と
するターゲットプロセッサのプログラム空間及びデータ
空間及びそれらから作成されるラベルテーブルの内容を
示す模式図である。
【図4】従来のインサーキットエミュレータの構成例を
示すブロック図である。
示すブロック図である。
【図5】インサーキットエミュレータを組み込んだホス
トコンピュータとターゲットプロセッサとの一般的な接
続状態を示す模式図である。
トコンピュータとターゲットプロセッサとの一般的な接
続状態を示す模式図である。
1 ホストコンピュータ 2 ICE 3 キーボード 4 ターゲットシステム 5 ターゲットプロセッサ 21 デバッグコントローラ 25 PCコントローラ 26 ラベルテーブル 30 W/R検出回路 31 W/R検出回路 220 ブレークアドレスレジスタ 221 ブレークアドレスレジスタ 230 比較器 231 比較器 PAB プログラムアドレスバス DAB データアドレスバス
Claims (2)
- 【請求項1】 実行すべきプログラムの各命令が配置さ
れる論理アドレスにて構成されるプログラム空間と、前
記プログラムの実行に際して使用されるデータ,実行結
果のデータが配置される論理アドレスにて構成されるデ
ータ空間とが独立した論理空間に割り当てられており、
前記プログラム空間及びデータ空間が連続する複数の論
理アドレスの範囲に分割してそれぞれを特定するラベル
が設定されたメモリ空間を有するプロセッサに接続さ
れ、 前記プロセッサが実行すべき命令のアドレスまたはアク
セスすべきデータのアドレスを入力する入力手段と、 前記入力手段により入力されたアドレスを保持するアド
レス保持手段と、 前記プロセッサが実行する命令のアドレスまたは命令の
実行に際してアクセスされるデータのアドレスと、前記
アドレス保持手段が保持するアドレスとを比較する比較
手段と、 前記比較手段による比較結果が一致した場合に前記プロ
セッサの動作を停止させる制御手段とを備えたソフトウ
ェア開発支援装置において、 各ラベルを表す情報と、各ラベルがプログラム空間また
はデータ空間のいずれに設定されているかを示す情報
と、各ラベルが特定する論理アドレスの範囲が割り付け
られている物理アドレスの範囲とを対応付けたテーブル
を有し、 前記制御手段は、前記入力手段によりいずれかのラベル
が入力された場合に、前記テーブルを参照して指定され
たラベルに対応する物理アドレスを前記アドレス保持手
段に保持させるべくなしてあることを特徴とするソフト
ウェア開発支援装置。 - 【請求項2】 前記入力手段により入力されたデータの
書き込み,読み出しの別を入力する書き込み/読み出し
入力手段と、 前記書き込み/読み出し入力手段により入力されたデー
タの書き込み,読み出しの別を表す信号を保持する書き
込み/読み出し信号保持手段と、 前記書き込み/読み出し信号保持手段に保持されている
信号と、データのアクセスに伴う書き込み信号及び読み
出し信号を比較し、一致する場合にのみ、前記比較手段
にデータのアドレスを与える手段とを備えたことを特徴
とする請求項1に記載のソフトウェア開発支援装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7132277A JPH08328902A (ja) | 1995-05-30 | 1995-05-30 | ソフトウェア開発支援装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7132277A JPH08328902A (ja) | 1995-05-30 | 1995-05-30 | ソフトウェア開発支援装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH08328902A true JPH08328902A (ja) | 1996-12-13 |
Family
ID=15077527
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP7132277A Pending JPH08328902A (ja) | 1995-05-30 | 1995-05-30 | ソフトウェア開発支援装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH08328902A (ja) |
-
1995
- 1995-05-30 JP JP7132277A patent/JPH08328902A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5132971A (en) | In-circuit emulator | |
| EP0145960B1 (en) | Selective guest system purge control | |
| KR940003318B1 (ko) | 캐시 메모리를 구비한 프로세서 | |
| JPH11110255A (ja) | ソフトウェアをデバッグするための装置および方法 | |
| US8612720B2 (en) | System and method for implementing data breakpoints | |
| JP2003508864A (ja) | スレッド志向デバッギング | |
| US6141635A (en) | Method of diagnosing faults in an emulated computer system via a heterogeneous diagnostic program | |
| JPH08328902A (ja) | ソフトウェア開発支援装置 | |
| JPS60159951A (ja) | 情報処理装置におけるトレ−ス方式 | |
| KR20210080398A (ko) | 메모리 내장 자체 테스트 컨트롤러를 이용한 판독 전용 메모리 테스트 | |
| JPH0581087A (ja) | プロセサのモニタ方式 | |
| US5901300A (en) | Control store address stop | |
| JPH05224989A (ja) | キャッシュメモリを内蔵したマイクロプロセッサとそのトレースアナライザ | |
| JPS6248865B2 (ja) | ||
| JPS59202546A (ja) | デバツグ装置 | |
| JP2684966B2 (ja) | 入出力処理装置のデバッグ装置 | |
| JPS60193046A (ja) | 命令例外検出方式 | |
| JPS6227421B2 (ja) | ||
| JPH02120940A (ja) | デバッグ支援回路 | |
| JPH10320232A (ja) | マイクロプログラムデバッグ装置 | |
| JPH02235150A (ja) | 情報処理装置 | |
| JPH01184551A (ja) | プログラムのデバッギング方式 | |
| JPH02242444A (ja) | 情報処理装置のデバッグ機構 | |
| JPH0581068A (ja) | デバツグ支援装置 | |
| JPS61141046A (ja) | デバツグ割込み制御方式 |