JPH10187480A - エミュレータ - Google Patents

エミュレータ

Info

Publication number
JPH10187480A
JPH10187480A JP8346417A JP34641796A JPH10187480A JP H10187480 A JPH10187480 A JP H10187480A JP 8346417 A JP8346417 A JP 8346417A JP 34641796 A JP34641796 A JP 34641796A JP H10187480 A JPH10187480 A JP H10187480A
Authority
JP
Japan
Prior art keywords
break
task
emulator
register
storage unit
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
JP8346417A
Other languages
English (en)
Inventor
Yoshiko 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.)
Hitachi Ltd
Renesas Semiconductor Package and Test Solutions Co Ltd
Original Assignee
Hitachi Ltd
Hitachi Yonezawa Electronics Co 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 Ltd, Hitachi Yonezawa Electronics Co Ltd filed Critical Hitachi Ltd
Priority to JP8346417A priority Critical patent/JPH10187480A/ja
Publication of JPH10187480A publication Critical patent/JPH10187480A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【課題】 ブレーク機能を行うハードウェアを設け、ソ
フトウェア処理の負担を低減させ、エミュレーションの
リアルタイム性を大幅に向上させる。 【解決手段】 ブレーク対象アドレスのオリジナル命令
をオリジナル命令保持レジスタ19に保持させ、ブレー
ク対象アドレスにタスクブレークポイント命令を書き込
み、タスクブレークポイントのタスクIDをブレーク条
件レジスタ14に格納させる。また、状態レジスタ15
に現在実行中のタスクIDを格納し、比較部16によっ
てブレーク条件レジスタ14と状態レジスタ15の比較
を行い、一致した場合にコンディションコードレジスタ
17にブレーク条件成立フラグとして設定することによ
りブレイク機能をハードウェアにより実現する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、マイクロコンピュータ
を用いた応用システムの開発支援装置であるエミュレー
タに関し、特に、OS(Operating Syst
em)上において動作するタスクのブレーク機能に適用
して有効な技術に関するものである。
【0002】
【従来の技術】本発明者が検討したところによれば、マ
イクロコンピュータ応用システムのソフトウェアおよび
ハードウェアのデバッグに用いられるサポートツールで
あるエミュレータにおいては、デッバック機能の一種と
してブレーク機能が設けられている。
【0003】このブレーク機能は、たとえば、OS上で
動作するタスクのデバッグにおいて、ブレーク機能が設
定された任意のタスクが動作している場合に限り、指定
されたアドレスなどの条件成立検出、すなわち、ブレー
クポイントを設定し、そのブレークポイントにおいてプ
ログラムをブレークしている。
【0004】なお、この種のエミュレータについて詳し
く述べてある例としては、昭和59年11月30日、株
式会社オーム社発行、社団法人 電子通信学会(著)、
「LSIハンドブック」P562があり、この文献に
は、インサーキットエミュレータの各々の機能について
記載されている。
【0005】
【発明が解決しようとする課題】ところが、上記のよう
なエミュレータのブレーク機能では、次のような問題点
があることが本発明者により見い出された。
【0006】すなわち、ブレークポイントの設定、検出
をソフトウェアにより処理しているので、ソフトウェア
の処理が複雑となってしまい、デバッグ時のリアルタイ
ム性が低下してしまうという問題がある。
【0007】本発明の目的は、ブレーク機能を行うハー
ドウェアを設けることにより、ソフトウェア処理の負担
を低減させ、エミュレーションのリアルタイム性を大幅
に向上させることのできるエミュレータを提供すること
にある。
【0008】本発明の前記ならびにその他の目的と新規
な特徴は、本明細書の記述および添付図面から明らかに
なるであろう。
【0009】
【課題を解決するための手段】本願において開示される
発明のうち、代表的なものの概要を簡単に説明すれば、
以下のとおりである。
【0010】すなわち、本発明のエミュレータは、ター
ゲットマイクロコンピュータの機能を代行するスレーブ
マイクロコンピュータに、該スレーブマイクロコンピュ
ータによる応用システムの制御動作を停止させるブレー
ク機能手段を設けたものである。
【0011】また、本発明のエミュレータは、前記ブレ
ーク機能手段が、タスクブレークポイントを発生させる
タスクの識別データを格納する第1の記憶部と、実行中
のタスクの識別データを格納する第2の記憶部と、第1
の記憶部と第2の記憶部に格納されたデータの比較を行
い、一致すると設定信号を出力する比較部と、当該比較
部から出力される設定信号のデータを格納する第3の記
憶部とから構成されるブレークコンディション制御手段
と、オリジナル命令を格納する第4の記憶部と、ブレー
ク時の処理アドレスを格納する第5の記憶部とから構成
される命令実行制御手段とよりなるものである。
【0012】さらに、本発明のエミュレータは、前記第
1〜第5の記憶部が、レジスタよりなるものである。
【0013】また、本発明のエミュレータは、前記ブレ
ーク機能手段が、マルチタスクOS上で動作するタスク
に対してブレークするものである。
【0014】以上のことにより、エミュレータにおける
ブレーク機能をハードウェアにより処理できるので、エ
ミュレーションのリアルタイム性を大幅に向上させるこ
とができる。
【0015】
【発明の実施の形態】以下、本発明の実施の形態を図面
に基づいて詳細に説明する。
【0016】図1は、本発明の一実施の形態によるエミ
ュレータの接続図、図2は、本発明の一実施の形態によ
るエミュレータのブロック図、図3は、本発明の一実施
の形態によるエミュレータに設けられたスレーブマイク
ロコンピュータの要部ブロック図、図4は、本発明の一
実施の形態によるエミュレータに用いられるタスクブレ
ークポイント命令の設定例を示す説明図、図5は、本発
明の一実施の形態によるエミュレータに用いられるタス
クブレークポイント命令の情報テーブル、図6〜10
は、本発明の一実施の形態によるエミュレータに設けら
れたスレーブマイクロコンピュータの動作フローチャー
トである。
【0017】本実施の形態において、ユーザが開発中の
マイクロコンピュータを用いた応用システム1とデータ
の入出力および表示を行うシステム開発装置であるパー
ソナルコンピュータ2との間には、たとえば、マルチタ
スクOSなどのソフトウェアのデバッグ、評価を行うエ
ミュレータ3が電気的に接続されている。
【0018】また、エミュレータ3に設けられた後述す
るシリアルインターフェイスは、シリアル回線バスライ
ンSBLを介してパーソナルコンピュータ2に電気的に
接続されている。
【0019】さらに、同じくエミュレータ3に設けられ
た後述するインタフェースの先端部には、ケーブルCa
を介してCPUソケットCSが設けられ、応用システム
1に電気的に接続される。
【0020】次に、エミュレータ3は、図2に示すよう
に、ターゲットマイクロコンピュータの機能を代行する
CPUであるスレーブマイクロコンピュータ(以下、ス
レーブマイコンという)4と、デバッグ機能の制御を司
るCPUであるマスタマイクロコンピュータ(以下、マ
スタマイコンという)5が設けられている。
【0021】さらに、エミュレータ3には、すべてのプ
ログラムデータにおける信号の入出力を制御するエミュ
レーション制御部6、スレーブマイコン4による応用シ
ステム1の制御動作を停止させるブレークポイント制御
部7が設けられている。
【0022】また、エミュレータ3は、応用システム1
にユーザメモリが搭載されていない場合にユーザメモリ
の不足分を補う貸出しメモリ部8が設けられており、た
とえば、RAMなどのデータ書き換えが可能な半導体装
置によって構成されている。
【0023】さらに、エミュレータ3には、実行中のユ
ーザプログラムにおいて、各種データやステータス信号
などをサンプリングし、それを記憶するトレースメモリ
部9が設けられている。
【0024】また、エミュレータ3は、マスタマイコン
5がシステムパーソナルコンピュータ2とのデータ通信
を行うために所定のデータ変換を行うシリアルインター
フェイス10およびスレーブマイコン4がユーザの応用
システムの代行制御を行うために所定のデータ変換を行
うインタフェース11が設けられている。
【0025】さらに、これらエミュレーション制御部
6、ブレークポイント制御部7、貸出しメモリ部8およ
びトレースメモリ部9は、スレーブバス12を介してス
レーブマイコン4と電気的に接続されている。
【0026】また、エミュレーション制御部6、ブレー
クポイント制御部7、貸出しメモリ部8、トレースメモ
リ部9およびシリアルインターフェイス10は、マスタ
バス13を介してマスタマイコン5と電気的に接続され
ている。
【0027】次に、スレーブマイコン4は、図3に示す
ように、ブレーク状態の制御を行うブレークコンディシ
ョン制御手段4aおよびブレーク命令実行の制御を行う
命令実行制御手段4bが設けられている。
【0028】そして、これらブレークコンディション制
御手段4aならびに命令実行制御手段4bによってタス
クブレーク機能をハードウェアにより処理するブレーク
機能手段が構成されている。
【0029】また、ブレークコンディション制御手段4
aは、タスクブレークポイントを発生させるタスクID
(識別データ)を格納するブレーク条件レジスタ(第1
の記憶部)14ならびに実行中のタスクのタスクIDを
格納する状態レジスタ(第2の記憶部)15が設けられ
ている。
【0030】さらに、ブレークコンディション制御手段
4aには、ブレーク条件レジスタ14と状態レジスタ1
5のデータの比較を行い、一致すると所定のフラグを設
定する比較部16、該比較部16から出力されるフラグ
のデータを格納するコンディションコードレジスタ(第
3の記憶部)17が設けられており、ブレーク条件レジ
スタ14と状態レジスタ15は比較部16と電気的に接
続され、比較部16はコンディションコードレジスタ1
7と電気的に接続されている。
【0031】また、ブレークコンディション制御手段4
aには、ブレークコンディション制御手段4aのすべて
の制御を司るブレークコンディション制御部18が設け
られており、ブレークコンディション制御部18はブレ
ーク条件レジスタ14、状態レジスタ15、比較部16
ならびにコンディションコードレジスタ17と電気的に
接続されている。
【0032】さらに、命令実行制御手段4bは、後述す
るオリジナル命令を格納するオリジナル命令保持レジス
タ(第4の記憶部)19、ブレーク時の処理アドレスを
格納するアドレスレジスタ(第5の記憶部)20および
命令実行制御手段4bのすべての制御を司る命令実行制
御部21が設けられており、オリジナル命令保持レジス
タ19、アドレスレジスタ20は命令実行制御部21と
電気的に接続されている。
【0033】そして、ブレークコンディション制御手段
4aならびに命令実行制御部21スレーブマイコン4の
すべての制御を司るCPU22と電気的に接続されてい
る。
【0034】次に、本実施の形態の作用について説明す
る。
【0035】まず、ユーザがパーソナルコンピュータ2
によって指定されたアドレスにタスクブレークポイント
命令を入力し、ブレーク機能を設定する。
【0036】ここで、タスクブレークポイント命令の設
定例を図4に示す。
【0037】このタスクブレークポイント命令におい
て、’TBRK’はタスクブレークの命令、’#CTS
KID’は現在実行中のタスクの情報アドレス、’#B
RKINF011’はタスクブレークポイント情報アド
レスを示している。
【0038】次に、ブレーク条件レジスタ14、状態レ
ジスタ15、コンディションコードレジスタ17、オリ
ジナル命令保持レジスタ19およびアドレスレジスタ2
0に格納されるそれぞれのデータについて、図5に示す
情報テーブルを用いて説明する。
【0039】格納されるタスクブレークポイントを発生
させるタスクID(識別符号)、実行中のタスクのタス
クID、タスクブレークポイントアドレスのオリジナル
命令ならびにタスクブレークポイントを発生させるタス
クIDと実行中のタスクのタスクIDが一致した場合の
処理アドレスにより構成されている。
【0040】そして、命令実行制御部21は、図6に示
すように、ブレーク対象アドレスに位置する命令、すな
わち、オリジナル命令をオリジナル命令保持レジスタ1
9に保持させる(ステップS101)。
【0041】その後、命令実行制御部21は、ブレーク
対象アドレスに前述したタスクブレークポイント命令
の’TBRK’を書き込む(ステップS102)。たと
えば、図7に示すように、オリジナル命令が’MOV’
命令であると、オリジナル命令保持レジスタ19には’
MOV’命令が格納され、オリジナル命令のアドレスに
は’TBRK’命令が書き込まれることになる。
【0042】次に、タスクブレークポイントを発生させ
るタスクIDをブレーク条件レジスタ14に格納させる
(ステップS103)。この時、命令実行制御部21は
アドレスレジスタ20に処理アドレスを格納する。
【0043】また、ブレークコンディション制御部18
は、図8に示すように、状態レジスタ14に現在実行中
のタスクIDを格納する(ステップS201)。
【0044】その後、ブレークコンディション制御手段
4aにおいて、図9に示すように、比較部16によって
ブレーク条件レジスタ14と状態レジスタ15のデータ
内容の比較が行われ(ステップS301)、一致した場
合には、ブレーク条件成立信号を出力し、一致しない場
合には継続してステップS301の処理を行う(ステッ
プS302)。
【0045】また、ステップS302の処理において、
一致した場合にはブレーク条件レジスタ14にブレーク
条件成立信号をブレーク条件成立フラグとして設定を行
う(ステップS303)。
【0046】次に、命令実行制御手段4bは、図10に
示すように、命令実行制御部21によりタスクブレーク
ポント命令、すなわち、’TBRK’命令が設定された
か否かの判断を行う(ステップS401)。
【0047】ステップS401の処理において、タスク
ブレークポント命令が設定されると、命令実行制御部2
1はブレーク条件レジスタ14にブレーク条件成立フラ
グが設定されているかのチェックを行う(ステップS4
02)。
【0048】そして、ブレーク条件成立フラグが立って
いるか否かの判断が行われ(ステップS403)、ブレ
ーク条件成立フラグが立っている場合には、ブレーク要
求を行い、アドレスレジスタ20に格納されている処理
アドレスの処理を実行する(ステップS404)。
【0049】また、ステップS403の処理において、
ブレーク条件成立フラグが立っていない場合には、オリ
ジナル命令保持レジスタ19に格納されているオリジナ
ル命令をタスクブレークポイント命令が書き込まれてい
たブレーク対象アドレスにロードし(ステップS40
5)、オリジナル命令による通常の処理を実行する(ス
テップS406)。
【0050】それにより、本実施の形態によれば、スレ
ーブマイコン4に設けられたブレークコンディション制
御手段4a、命令実行制御手段4bによって、タスクブ
レーク機能をハードウェアによって実行するので、ソフ
トウェア処理の負担を大幅に軽減させることができるの
で、エミュレーションのリアルタイム性を向上すること
ができる。
【0051】以上、本発明者によってなされた発明を発
明の実施の形態に基づき具体的に説明したが、本発明は
前記実施の形態に限定されるものではなく、その要旨を
逸脱しない範囲で種々変更可能であることはいうまでも
ない。
【0052】
【発明の効果】本願によって開示される発明のうち、代
表的なものによって得られる効果を簡単に説明すれば、
以下のとおりである。
【0053】(1)本発明によれば、スレーブマイクロ
コンピュータにブレーク機能手段を設けることにより、
ブレーク機能がハードウェアにより実行処理されるの
で、ソフトウェア処理の負担を大幅に軽減でき、エミュ
レーションのリアルタイム性を向上することができる。
【0054】(2)また、本発明では、上記(1)によ
り、開発される応用システムの開発期間を短縮化でき、
エミュレータの信頼性も向上させることができる。
【図面の簡単な説明】
【図1】本発明の一実施の形態によるエミュレータの接
続図である。
【図2】本発明の一実施の形態によるエミュレータのブ
ロック図である。
【図3】本発明の一実施の形態によるエミュレータに設
けられたスレーブマイクロコンピュータの要部ブロック
図である。
【図4】本発明の一実施の形態によるエミュレータに用
いられるタスクブレークポイント命令の設定例を示す説
明図である。
【図5】本発明の一実施の形態によるエミュレータに用
いられるタスクブレークポイント命令の情報テーブルで
ある。
【図6】本発明の一実施の形態によるエミュレータに設
けられたスレーブマイクロコンピュータの動作フローチ
ャートである。
【図7】本発明の一実施の形態によるエミュレータに設
けられたスレーブマイクロコンピュータの動作フローチ
ャートである。
【図8】本発明の一実施の形態によるエミュレータに設
けられたスレーブマイクロコンピュータの動作フローチ
ャートである。
【図9】本発明の一実施の形態によるエミュレータに設
けられたスレーブマイクロコンピュータの動作フローチ
ャートである。
【図10】本発明の一実施の形態によるエミュレータに
設けられたスレーブマイクロコンピュータの動作フロー
チャートである。
【符号の説明】
1 応用システム 2 パーソナルコンピュータ 3 エミュレータ 4 スレーブマイクロコンピュータ 4a ブレークコンディション制御手段 4b 命令実行制御手段 5 マスタマイクロコンピュータ 6 エミュレーション制御部 7 ブレークポイント制御部 8 貸出しメモリ部 9 トレースメモリ部 10 シリアルインターフェイス 11 インタフェース 12 スレーブバス 13 マスタバス 14 ブレーク条件レジスタ(第1の記憶部) 15 状態レジスタ(第2の記憶部) 16 比較部 17 コンディションコードレジスタ(第3の記憶部) 18 ブレークコンディション制御部 19 オリジナル命令保持レジスタ(第4の記憶部) 20 アドレスレジスタ(第5の記憶部) 21 命令実行制御部 22 CPU SBL シリアル回線バスライン Ca ケーブル CS CPUソケット

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 マイクロコンピュータを用いた応用シス
    テムのソフトウェアおよびハードウェアの評価を行うエ
    ミュレータであって、ターゲットマイクロコンピュータ
    の機能を代行するスレーブマイクロコンピュータに、前
    記スレーブマイクロコンピュータによる応用システムの
    制御動作を停止させるブレーク機能手段を設けたことを
    特徴とするエミュレータ。
  2. 【請求項2】 請求項1記載のエミュレータにおいて、
    前記ブレーク機能手段が、タスクブレークポイントを発
    生させるタスクの識別データを格納する第1の記憶部
    と、実行中のタスクの識別データを格納する第2の記憶
    部と、前記第1の記憶部と前記第2の記憶部に格納され
    たデータの比較を行い、一致すると設定信号を出力する
    比較部と、前記比較部から出力される設定信号のデータ
    を格納する第3の記憶部とから構成されるブレークコン
    ディション制御手段と、オリジナル命令を格納する第4
    の記憶部と、ブレーク時の処理アドレスを格納する第5
    の記憶部とから構成される命令実行制御手段とよりなる
    ことを特徴とするエミュレータ。
  3. 【請求項3】 請求項2記載のエミュレータにおいて、
    前記第1〜第5の記憶部が、レジスタよりなることを特
    徴とするエミュレータ。
  4. 【請求項4】 請求項1〜3のいずれか1項に記載のエ
    ミュレータにおいて、前記ブレーク機能手段が、マルチ
    タスクOS上で動作するタスクに対するブレーク機能で
    あることを特徴とするエミュレータ。
JP8346417A 1996-12-26 1996-12-26 エミュレータ Pending JPH10187480A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8346417A JPH10187480A (ja) 1996-12-26 1996-12-26 エミュレータ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8346417A JPH10187480A (ja) 1996-12-26 1996-12-26 エミュレータ

Publications (1)

Publication Number Publication Date
JPH10187480A true JPH10187480A (ja) 1998-07-21

Family

ID=18383286

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8346417A Pending JPH10187480A (ja) 1996-12-26 1996-12-26 エミュレータ

Country Status (1)

Country Link
JP (1) JPH10187480A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005250821A (ja) * 2004-03-04 2005-09-15 Renesas Technology Corp エミュレータ及びマイクロプロセッサ
JP2007500401A (ja) * 2003-07-25 2007-01-11 ジンガー,アーサー,アール. ソフトウェアデバッギング用装置とその方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007500401A (ja) * 2003-07-25 2007-01-11 ジンガー,アーサー,アール. ソフトウェアデバッギング用装置とその方法
JP2005250821A (ja) * 2004-03-04 2005-09-15 Renesas Technology Corp エミュレータ及びマイクロプロセッサ

Similar Documents

Publication Publication Date Title
US20100153786A1 (en) Processor, multiprocessor, and debugging method
US20100204976A1 (en) Device emulation support apparatus, device emulation support method, device emulation support circuit and information processor
JPH1078889A (ja) マイクロコンピュータ
JP2005070949A (ja) プログラム処理装置
US7043717B2 (en) Debugging apparatus and method
US7203819B2 (en) Program processing device
US5655111A (en) In-circuit emulator
JPH10187480A (ja) エミュレータ
CN116225541B (zh) 一种带内cpu与带外管理bmc通信的方法及通信系统
JP2003122594A (ja) 半導体装置および評価装置
JPH0477833A (ja) デバッグ環境を備えた集積回路
JP2003281076A (ja) Dmaコントローラの不正アクセス検出装置、不正アクセス検出方法およびそのプログラム
JPH08272770A (ja) マイクロコントローラディベロップメントシステム
US6854047B2 (en) Data storage device and data transmission system using the same
US7194401B2 (en) Configuration for in-circuit emulation of a program-controlled unit
JPH08171505A (ja) 半導体装置
KR100538282B1 (ko) 체크 포인트를 이용한 실시간 병렬 프로그램 디버깅 방법
JP2954006B2 (ja) エミュレーション装置およびエミュレーション方法
KR100658485B1 (ko) 마이크로프로세서 개발시스템
JPH0635760A (ja) トレース機能付バッファ装置
JP3650072B2 (ja) データ記憶装置およびこれを用いたデータ伝送システム
JPH11167501A (ja) プログラムデバッグシステムとそのデバッグ方法
JPH0883198A (ja) プログラムシミュレーション装置
JPH0282323A (ja) ディジタルシグナルプロセッサのデバッグ方式
JP2003223339A (ja) インサーキットエミュレータ