JP3545480B2 - emulator - Google Patents
emulator Download PDFInfo
- Publication number
- JP3545480B2 JP3545480B2 JP00876495A JP876495A JP3545480B2 JP 3545480 B2 JP3545480 B2 JP 3545480B2 JP 00876495 A JP00876495 A JP 00876495A JP 876495 A JP876495 A JP 876495A JP 3545480 B2 JP3545480 B2 JP 3545480B2
- Authority
- JP
- Japan
- Prior art keywords
- signal
- emulator
- microcomputers
- circuit
- input
- 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
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Description
【0001】
【産業上の利用分野】
本発明は、エミュレータに関し、特に、2個以上の複数のマイクロコンピュータが使用される応用システムにおけるシステムデバッグに適用して有効な技術に関するものである。
【0002】
【従来の技術】
本発明者が検討したところによれば、ユーザが開発中の応用システムに2個以上の複数のマイクロコンピュータが使用されている、いわゆる、マルチCPU方式の応用システムにおけるデバッグは、たとえば、2個のマイクロコンピュータが使用された応用システムの場合、2台のエミュレータを用いて行っている。
【0003】
なお、この種のエミュレータについて詳しく述べてある例としては、株式会社日立製作所、平成5年7月発行、「E7000 SH7032 SH7034 エミュレータユーザーズマニュアル」がある。
【0004】
【発明が解決しようとする課題】
ところが、上記のようなマルチCPU方式の応用システムにおけるエミュレータのデバックでは、次のような問題点があることが本発明者により見い出された。
【0005】
すなわち、マルチCPU方式における応用システムを複数のエミュレータでエミュレートする場合では、同一のバスが使用されているために、高速動作時に容量性負荷が増加してしまい、高速動作が困難となる傾向にあり、ディレイが長時間となる恐れが生じてくる。
【0006】
また、複数のエミュレータを使用することによって、エミュレータの内蔵機能を共有することが簡単なインターフェイスにより実現することが困難となっている。
【0007】
本発明の目的は、複数のマイクロコンピュータが使用されているマルチCPU方式の応用システムにおけるエミュレーションを1台のエミュレータにより行うことのできるエミュレータを提供することにある。
【0008】
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【0009】
【課題を解決するための手段】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、以下のとおりである。
【0010】
すなわち、本発明のエミュレータは、1台のエミュレータに応用システムに設けられたマイクロコンピュータの機能を代行するスレーブマイクロコンピュータを複数のマイクロコンピュータと見合った数だけ設け、マルチCPU方式の応用システムのデバッグを行うものである。
【0011】
また、本発明のエミュレータは、第1の制御信号に基づいて応用システムから出力される第1のクロック信号またはエミュレータから出力される第2のクロック信号のいずれかを選択して、複数のスレーブマイクロコンピュータに同期したクロック信号を供給するクロック選択供給手段を設けたものである。
【0012】
さらに、本発明のエミュレータは、第2の制御信号に基づいて第1のリセット信号を生成し、複数のスレーブマイクロコンピュータのリセットを行う第1のリセット信号または応用システムから出力される第2のリセット信号のいずれかを選択して複数のスレーブマイクロコンピュータにおけるそれぞれのリセット信号入力部に出力を行い複数のスレーブマイクロコンピュータをリセットするリセット信号出力手段を設けたものである。
【0013】
また、本発明のエミュレータは、各種データやステイタス信号をサンプリングしてトレースを行うトレース手段および実行アドレスの表示を行うカバレジ手段に同期したデータ取得信号を入力することによってトレースデータおよびカバレジデータを同時系列でデータ取得を行うデータ取得信号手段を設けたものである。
【0014】
【作用】
上記した本発明のエミュレータによれば、1台のエミュレータに応用システムに設けられたマイクロコンピュータの機能を代行するスレーブマイクロコンピュータを複数のマイクロコンピュータと見合った数だけ設けることにより、複数のマイクロコンピュータに見合う複数のエミュレータが不要となるので、ユーザインタフェースおよび伝送ラインを少なくでき、容量性負荷を軽減できるので高速動作のエミュレーションを実現することができる。
【0015】
また、上記した本発明のエミュレータによれば、第1の制御信号に基づいて応用システムから出力される第1のクロック信号またはエミュレータから出力される第2のクロック信号のいずれかを選択し、複数のスレーブマイクロコンピュータにクロック信号を供給するクロック選択供給手段により、簡単な回路構成でエミュレータそれ自体から同期したクロック信号を複数のスレーブマイクロコンピュータに供給することができる。
【0016】
さらに、上記した本発明のエミュレータによれば第2の制御信号に基づいて第1のリセット信号を生成し、複数のスレーブマイクロコンピュータのリセットを行う第1のリセット信号または応用システムから出力される第2のリセット信号のいずれかを選択し、複数のスレーブマイクロコンピュータにおけるリセット信号入力部に出力を行いリセットするリセット信号出力手段により、エミュレータそれ自体から同期したリセット信号を複数のスレーブマイクロコンピュータに出力することができる。
【0017】
また、上記した本発明のエミュレータによれば、各種データやステイタス信号をサンプリングしてトレースを行うトレース手段および実行アドレスの表示を行うカバレジ手段に同期したデータ取得信号を入力するデータ取得信号手段により、トレースデータおよびカバレジデータのデータ取得を同時系列で行うことができる。
【0018】
【実施例】
以下、本発明の実施例を図面に基づいて詳細に説明する。
【0019】
(実施例1)
図1は、本発明の実施例1によるエミュレータと応用システムとの接続図、図2は、本発明の実施例1によるエミュレータの要部ブロック図、図3は、本発明の実施例1によるエミュレータにおけるクロック発振回路およびリセット回路の回路図である。
【0020】
本実施例1において、ユーザが開発中の複数のマイクロコンピュータが設けられた応用システム1とソフトウェア開発用の親計算機であるパーソナルコンピュータ2との間には、ソフトウェアおよびハードウェアのデバッグを行うエミュレータ3が所定のケーブルCA1,CA2により接続されている。
【0021】
ここで、本実施例において、応用システム1は2個のマイクロコンピュータ(図示せず)が設けられている2CPU方式とする。
【0022】
また、このエミュレータ3は、マイクロコンピュータのCPUコアをサポートする部分などAS(Appiication Specific)化に係わらないエミュレータユニット3aと、周辺機能の疑似回路などのAS化により変化するターゲットプローブ3bとに分割され、エミュレータユニット3aとターゲットプローブ3b間も所定のケーブルCA3によって接続されている。
【0023】
さらに、エミュレータユニット3aは、エミュレータの制御を司るマスタマイクロコンピュータ、パーソナルコンピュータ2とのデータ通信を行うシリアルインタフェース部、プログラムの実行、トレースの停止条件を設定し、条件成立時にプログラムまたはトレースを停止させるブレークポイント制御部などの図示しない回路によって構成されている。
【0024】
また、ターゲットプローブ3bは、図2に示すように、2個のマイクロコンピュータの内、一方のマイクロコンピュータであるターゲットマイコンの機能を代行するスレーブマイクロコンピュータ(以下、スレーブマイコン)4および他方のマイクロコンピュータであるターゲットマイコンの機能を代行するスレーブマイコン5が設けられている。
【0025】
さらに、ターゲットプローブ3bには、貸し出しメモリであるエミュレーションメモリやエミュレーションや各種デバッグ機能を実現するための制御回路6および応用システム1(図1に示す)におけるターゲットマイコン用のソケット(図示せず)が先端に設けられたケーブルCA2が接続されているユーザインタフェース7などが設けられている。
【0026】
また、ターゲットプローブ3bにおいて、スレーブマイコン4,5、制御回路6ならびにユーザインタフェース7は、それぞれ共通のデータバス8およびアドレスバス9によって接続されている。
【0027】
さらに、スレーブマイコン4、制御回路6ならびにユーザインタフェース7間におけるコントロール信号の入出力は専用のコントロール信号バス10を介して行われており、スレーブマイコン5、制御回路6ならびにユーザインタフェース7との間におけるコントロール信号の入出力も専用のコントロール信号バス11を介して行われている。
【0028】
さらに、制御回路6と、スレーブマイコン4,5およびユーザインタフェース7との間には、入出力されるそれぞれの信号における動作速度のタイミングをとるためのデータバスバッファ12、アドレスバスバッファ13、コントロール信号バスバッファ14ならびにコントロール信号バスバッファ15が設けられている。
【0029】
また、ターゲットプローブ3bと応用システム1(図1に示す)の間は、ユーザインタフェース7を介してコントロール信号、アドレス信号およびデータ信号の入出力が行われる。
【0030】
そして、図1に示す接続により、応用システム1のソフトウェアおよびハードウェアのデバッグを行うことになるが、本実施例における2CPU方式の応用システム1をエミュレーションする場合、ターゲットプローブ3bにターゲットマイコンの機能を代行するスレーブマイコン4,5が設けられたことにより1台のエミュレータ3によってエミュレーションが可能となる。
【0031】
また、データバス8およびアドレスバス9を共通で使用できるようになるのでユーザインタフェース7が1個でよくなり、それにより伝送ラインも短くすることができるので、高速動作のエミュレーションを実現できる。
【0032】
また、このターゲットプローブ3bには、応用システム1に設けられるマイクロコンピュータ(図示せず)に見合った数のスレーブマイコン4,5が設けられ、たとえば、3個のマイクロコンピュータが設けられたが3CPU方式の応用システム(図示せず)であれば、3個のスレーブマイコンがターゲットプローブ(図示せず)に設けられることになる。
【0033】
さらに、ターゲットプローブ3bには、図3に示すように、スレーブマイコン4,5を動作させるための第2のクロック信号を出力するクロック発振回路(クロック選択供給手段)16およびスレーブマイコン4,5をリセットさせるため第1のリセット信号を出力するリセット回路(リセット信号出力手段)17が設けられている。
【0034】
クロック発振回路16は、所定の周波数による第2のクロック信号が出力される発振器16a、信号の反転を行うインバータIv1、論理積回路であるAND回路16b,16cおよび論理和回路であるOR回路16dから構成されている。
【0035】
そして、発振器16aはインバータIv1の入力部に接続され、インバータIv1の出力部はAND回路16bの一方の入力部に接続されており、他方は制御回路6における発振器16aから出力される第2のクロック信号を使用するか、応用システム1に設けられた発振器(図示せず)から出力される第1のクロック信号を使用するかの第1の制御信号が出力される選択信号出力部(図示せず)と接続されている。
【0036】
また、選択信号出力部は、AND回路16cの一方の入力とも接続がされており、他方には、前述した応用システム1に設けられた発振器から出力される第1のクロック信号が入力されている。
【0037】
さらに、AND回路16b、16cの出力部は、それぞれOR回路16dの入力部に接続されており、そのOR回路16dの出力は、スレーブマイコン4,5のそれぞれのクロック入力端子Ckに接続されている。
【0038】
ここで、このクロック発振回路16において、応用システム1に設けられた発振器を使用する場合につて説明する。
【0039】
応用システム1(図1に示す)に設けられた発振器を使用するには、たとえば、ユーザがパーソナルコンピュータ2によって応用システム1に設けられた発振器を選択するコマンドを入力する。
【0040】
そして、そのコマンドによりパーソナルコンピュータ2から所定の信号が出力され、その信号に基づいて制御回路6に設けられた選択信号出力部から第1の制御信号であるHi信号が出力される。
【0041】
そのHi信号はインバータIv1の入力部およびAND回路16cの一方の入力部にそれぞれ入力され、インバータIv1に入力されたHi信号は反転されてLo信号となりAND回路16bの他方の入力部に入力される。
【0042】
よって、AND回路16bの一方の入力部には、ターゲットプローブ3bに設けられた発振器16aから出力される第2のクロック信号が入力され、他方の入力部にはLo信号が入力されるのでAND回路16bの出力はLo信号となる。
【0043】
一方、AND回路16cの一方の入力部にはHi信号が、他方の入力部は応用システム1に設けられた発振器から出力される第1のクロック信号が入力されているので、該第1のクロック信号と同期した信号がAND回路16cの出力部から出力されることになる。
【0044】
そして、その後段に設けられているOR回路16dの一方の入力には、AND回路16b,16cのそれぞれの出力が入力されているのでスレーブマイコン4,5のクロック入力端子Ckには応用システム1に設けられた発振器から出力される第1のクロック信号が供給されることになる。
【0045】
また、発振器16aから出力される第2のクロック信号を供給するには、同様に、ユーザがパーソナルコンピュータ2によって発振器16aを使用するコマンドを入力し、パーソナルコンピュータ2から所定の信号が出力され、その信号に基づいて制御回路6に設けられた選択信号出力部からLo信号が出力されるようにする。
【0046】
そして、インバータIv1により反転された信号によって、AND回路16bの他方の入力部がHi信号となり、AND回路16bの出力部からは発振器16aと同期した信号が出力される。
【0047】
また、AND回路16cは一方の入力部がLo信号であるので、出力はLo信号となる。
【0048】
そして、AND回路16b,16cの出力がOR回路16dに入力されることになるのでスレーブマイコン4,5のクロック入力端子Ckには発振器16aから出力される第2のクロック信号が供給されることになる。
【0049】
それによって、応用システム1に設けられた発振器から出力される第1のクロック信号だけでなく、ターゲットプローブ3bに設けられた発振器16aから出力される第2のクロック信号も供給することができる。
【0050】
次に、リセット回路17は、信号の反転を行うインバータIv2〜Iv7および論理和回路であるOR回路16e,16fから構成されている。
【0051】
そして、インバータIv3,Iv5の入力部には、応用システム1(図1に示す)から出力される第2のリセット信号が入力されるように接続され、インバータIv2,Iv4の入力部には、たとえば、制御回路6から出力される第2の制御信号が入力されるように接続されている。
【0052】
また、インバータIv2,Iv3の出力部はOR回路16eのそれぞれの入力部に接続され、インバータIv4,Iv5の出力部はOR回路16fのそれぞれの入力部に接続され、OR回路16e、16fの出力部がインバータIv6,IV7の入力部に接続され、その出力部がスレーブマイコン4,5のリセット信号入力端子Rと接続されている。
【0053】
さらに、本実施例において、スレーブマイコン4,5はLo信号によりリセットされる、いわゆる、アクティブ”L”とする。
【0054】
ここで、応用システム1から出力された第2のリセット信号によるスレーブマイコン4,5のリセットを行う場合について説明する。
【0055】
まず、パーソナルコンピュータ2によって、ユーザが応用システム1から出力される第2のリセット信号によりスレーブマイコン4,5のリセットを行うコマンドを入力する。
【0056】
そのコマンドによりパーソナルコンピュータ2は、制御回路6に第2の制御信号を出力し、その信号に基づいて制御回路6はスレーブマイコン4,5のリセット時に第2の制御信号としてHi信号を出力する。
【0057】
また、スレーブマイコン4,5のリセット時において、応用システム1から出力される第2のリセット信号であるLo信号がインバータIv3,IV5の入力部に入力されると、そのLo信号は反転されてHi信号となってOR回路16e,16fのそれぞれの入力部に入力される。
【0058】
さらに、インバータIv2,Iv4入力部には、制御信号6から出力される第2の制御信号であるHi信号が入力されており、その信号は反転されてOR回路16e,16fの一方の入力部に入力される。
【0059】
それにより、OR回路16e,16fの一方の入力部はLo信号、他方の入力部はHi信号となるので出力はHi信号となるが、その後段に接続されているインバータIv6,Iv7により信号が反転されてLo信号が出力され、第2のリセット信号がスレーブマイコン4,5のリセット信号入力端子Rに入力される。
【0060】
次に、リセット回路17から出力される第1のリセット信号によってスレーブマイコン4,5のリセットを行う場合について説明する。
【0061】
まず、パーソナルコンピュータ2によってユーザが、リセット回路17から出力される第1のリセット信号によりスレーブマイコン4,5のリセットを行うコマンドを入力する。
【0062】
そのコマンドによりパーソナルコンピュータ2は、制御回路6に所定の信号を出力し、その信号に基づいて制御回路6はスレーブマイコン4,5のリセット時に第2の制御信号としてLo信号を出力する。
【0063】
また、スレーブマイコン4,5のリセット時において、制御回路6から第2の制御信号であるLo信号がインバータIv3,IV5の入力部に入力されると、そのLo信号は反転されてHi信号となってOR回路16e,16fのそれぞれの入力部に入力される。
【0064】
ここで、インバータIv2,Iv4入力部には、応用システムから出力される第2のリセット信号であるHi信号が入力されており、その信号は反転されてOR回路16e,16fの他方の入力部に入力される。
【0065】
それにより、OR回路16e,16fの一方の入力部はHi信号、他方の入力部はLo信号となるので出力はHi信号となるが、その後段に接続されているインバータIv6,Iv7により信号が反転されてLo信号が出力され、第1のリセット信号がスレーブマイコン4,5のリセット信号入力端子Rに入力される。
【0066】
よって、スレーブマイコン4,5のリセット信号入力端子Rに同期した第1のリセット信号をエミュレータ3から入力することができるようになる。
【0067】
それによって、本実施例1では、ターゲットプローブ3bにターゲットマイコンの機能を代行するスレーブマイコン4,5を設けることによって容量性負荷を軽減でき、高速動作のエミュレーションを実現することができる。
【0068】
また、ターゲットプローブ3bに設けられたクロック発振回路16により、クロック発振器16aから出力される第2のクロック信号をスレーブマイコン4,5と共有しながら簡単な回路構成で供給できるので、応用システム1を接続することなくプログラムのデバッグを容易に行うことができるようになる。
【0069】
さらに、ターゲットプローブ3bに設けられたリセット回路17によって、スレーブマイコン4,5に入力するリセット信号を簡単な回路構成によりエミュレータ3からも第1のリセット信号として出力できるようになり、応用システム1におけるリセットスタート時のエミュレーションをすることが可能となる。
【0070】
(実施例2)
図4は、本発明の実施例2によるトレース機能およびカバレジ機能を設けたエミュレータの要部ブロック図である。
【0071】
本実施例2においては、制御回路6に設けられている各種データやステイタス信号などをサンプリングし、トレースを行うトレース回路(トレース手段)6aと、たとえば、スレーブマイコン4,5の実行アドレスなどを表示するカバレジ回路(カバレジ手段)6bとに同時にデータ取得を行えるデータ取得信号を出力するデータ取得信号回路(データ取得信号手段)18が設けられている。
【0072】
また、トレース回路6aはデータバス8およびアドレスバス9と接続されており、データバスバッファ12ならびにアドレスバスバッファ13を介して所定のデータが取得され、カバレジ回路6bはアドレスバス9と接続されており、アドレスバスバッファ13を介して所定のデータが取得される。
【0073】
このデータ取得信号回路18は、論理和回路であるOR回路18aおよび信号を反転するインバータIv8〜Iv10から構成されている。
【0074】
そして、データ取得信号回路18のインバータIv8,Iv9の入力部は、それぞれスレーブマイコン4,5のトレース取得信号を取得するトレース信号出力部と接続されている。
【0075】
また、インバータIv8,IV9の出力は、OR回路18aの入力部に接続され、その出力はインバータIv10の入力部に接続されており、インバータIv10の出力部は、トレース回路6aおよびカバレジ回路6bのデータ取得信号入力部に接続されている。
【0076】
よって、スレーブマイコン4,5のトレース信号出力部から出力されたHi信号のトレース取得信号は、インバータIv8,IV9によって反転されLo信号となるのでOR回路18aの出力もLo信号となるが、その後段に設けられたインバータIv10によって反転されてデータ取得信号のHi信号となってトレース回路6aおよびカバレジ回路6bのデータ取得信号入力部に入力され、所定のデータの取得が行われる。
【0077】
それにより、本実施例2では、トレース回路6aおよびカバレジ回路6bに同時にデータ取得信号を入力するので、トレースデータおよびカバレジデータのデータ取得を同時系列によって行うことができるので、デバッグ効率を向上させることができる。
【0078】
以上、本発明者によってなされた発明を実施例に基づき具体的に説明したが、本発明は前記実施例に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【0079】
たとえば、前記実施例1,2において、クロック発振回路16およびリセット回路17と、データ取得信号回路18とは個別に設けたが、これらクロック発振回路16、リセット回路17およびデータ取得信号回路18を全てターゲットプローブ(図示せず)に設けるようにしてもよい。
【0080】
それにより、より効率よくマルチCPU方式の応用システム(図示せず)のエミュレーションを行うことができる。
【0081】
【発明の効果】
本願によって開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば、以下のとおりである。
【0082】
(1)本発明によれば、1台のエミュレータにスレーブマイクロコンピュータを応用システムに設けられた複数のマイクロコンピュータと見合った数だけ設けることにより、ユーザインタフェースおよび伝送ラインを少なくでき、容量性負荷を軽減できるので高速動作のエミュレーションを実現することができる。
【0083】
(2)また、本発明では、エミュレータ本体に設けられたクロック選択供給手段により、複数のスレーブマイクロコンピュータに同期したクロック信号を供給することができるので、応用システムを接続することなくプログラムのデバッグが可能となる。
【0084】
(3)さらに、本発明においては、エミュレータ本体に設けられた複数のスレーブマイクロコンピュータにクロック信号を供給するクロック選択供給手段により、リセットスタート時におけるエミュレーションを可能とすることができる。
【0085】
(4)また、本発明によれば、データ取得信号手段を設けることにより、トレースデータおよびカバレジデータのデータ取得を同時系列によって行うことができる。
【0086】
(5)さらに、本発明では、上記(1)〜(4)により、複数のマイクロコンピュータが設けられたマルチCPU方式の応用システムにおけるデバッグの効率を大幅に向上することができる。
【図面の簡単な説明】
【図1】本発明の実施例1によるエミュレータと応用システムとの接続図である。
【図2】本発明の実施例1によるエミュレータの要部ブロック図である。
【図3】本発明の実施例1によるエミュレータにおけるクロック発振回路およびリセット回路の回路図である。
【図4】本発明の実施例2によるエミュレータにおけるトレース機能およびカバレッジ機能の要部ブロック図である。
【符号の説明】
1 応用システム
2 パーソナルコンピュータ
3 エミュレータ
3a エミュレータユニット
3b ターゲットプローブ
4 スレーブマイクロコンピュータ
5 スレーブマイクロコンピュータ
6 制御回路
6a トレース回路(トレース手段)
6b カバレジ回路(カバレジ手段)
7 ユーザインタフェース
8 データバス
9 アドレスバス
10 コントロール信号バス
11 コントロール信号バス
12 データバスバッファ
13 アドレスバスバッファ
14 コントロール信号バスバッファ
15 コントロール信号バスバッファ
16 クロック発振回路(クロック選択供給手段)
16a 発振器
16b AND回路
16c AND回路
16d〜16f OR回路
17 リセット回路(リセット信号出力手段)
18 データ取得信号回路(データ取得信号手段)
18a OR回路
Iv1〜Iv10 インバータ
CA1〜CA3 ケーブル
Ck クロック入力端子
R リセット信号入力端子[0001]
[Industrial applications]
The present invention relates to an emulator, and more particularly to a technique effective when applied to system debugging in an application system in which two or more microcomputers are used.
[0002]
[Prior art]
According to the study by the present inventor, debugging in a so-called multi-CPU type application system in which two or more microcomputers are used in an application system being developed by a user is, for example, two sets of microcomputers. In the case of an application system using a microcomputer, two emulators are used.
[0003]
An example of this type of emulator in detail is "E7000 SH7032 SH7034 Emulator User's Manual" issued by Hitachi, Ltd., July 1993.
[0004]
[Problems to be solved by the invention]
However, the inventor of the present invention has found that the following problems are encountered in debugging the emulator in the multi-CPU application system as described above.
[0005]
That is, when an application system in the multi-CPU system is emulated by a plurality of emulators, since the same bus is used, a capacitive load increases at a high speed operation, and the high speed operation tends to be difficult. Yes, there is a risk that the delay will be long.
[0006]
Also, by using a plurality of emulators, it is difficult to share the built-in functions of the emulator with a simple interface.
[0007]
An object of the present invention is to provide an emulator which can perform emulation in a multi-CPU type application system using a plurality of microcomputers by one emulator.
[0008]
The above and other objects and novel features of the present invention will become apparent from the description of the present specification and the accompanying drawings.
[0009]
[Means for Solving the Problems]
The following is a brief description of an outline of typical inventions disclosed in the present application.
[0010]
That is, in the emulator of the present invention, a single emulator is provided with a number of slave microcomputers that substitute for the functions of the microcomputer provided in the application system and the number of slave microcomputers corresponding to the plurality of microcomputers. Is what you do.
[0011]
Further, the emulator of the present invention selects either the first clock signal output from the application system or the second clock signal output from the emulator based on the first control signal, and sets the plurality of slave microcontrollers. A clock selecting and supplying means for supplying a clock signal synchronized with the computer is provided.
[0012]
Further, the emulator of the present invention generates a first reset signal based on the second control signal, and resets the plurality of slave microcomputers with the first reset signal or the second reset signal output from the application system. Reset signal output means for selecting one of the signals and outputting the signal to each reset signal input section of the plurality of slave microcomputers to reset the plurality of slave microcomputers is provided.
[0013]
Further, the emulator of the present invention is capable of simultaneously synchronizing trace data and coverage data by inputting a data acquisition signal synchronized with a tracing means for sampling and tracing various data and status signals and a coverage means for displaying an execution address. And data acquisition signal means for acquiring data.
[0014]
[Action]
According to the emulator of the present invention described above, a single emulator is provided with a number of slave microcomputers for performing the functions of the microcomputer provided in the application system in a number corresponding to the plurality of microcomputers. Since a plurality of matching emulators are not required, the number of user interfaces and transmission lines can be reduced, and the capacitive load can be reduced, so that high-speed operation emulation can be realized.
[0015]
Further, according to the emulator of the present invention described above, either the first clock signal output from the application system or the second clock signal output from the emulator is selected based on the first control signal, and The clock selection supply means for supplying a clock signal to the slave microcomputer can supply a clock signal synchronized from the emulator itself to a plurality of slave microcomputers with a simple circuit configuration.
[0016]
Further, according to the emulator of the present invention described above, the first reset signal is generated based on the second control signal, and the first reset signal for resetting the plurality of slave microcomputers or the second reset signal output from the application system. Reset signal output means for selecting one of the two reset signals and outputting the reset signal to the reset signal input section of each of the plurality of slave microcomputers, and outputting a reset signal synchronized from the emulator itself to the plurality of slave microcomputers. be able to.
[0017]
According to the emulator of the present invention described above, the data acquisition signal means for inputting a data acquisition signal synchronized with the tracing means for sampling and tracing various data and status signals, and the coverage means for displaying the execution address, Data acquisition of trace data and coverage data can be performed simultaneously.
[0018]
【Example】
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
[0019]
(Example 1)
FIG. 1 is a connection diagram between an emulator according to the first embodiment of the present invention and an application system, FIG. 2 is a block diagram of a main part of the emulator according to the first embodiment of the present invention, and FIG. 3 is an emulator according to the first embodiment of the present invention. 3 is a circuit diagram of a clock oscillation circuit and a reset circuit in FIG.
[0020]
In the first embodiment, an emulator 3 for debugging software and hardware is provided between an application system 1 provided with a plurality of microcomputers being developed by a user and a personal computer 2 which is a parent computer for software development. Are connected by predetermined cables CA1 and CA2.
[0021]
Here, in this embodiment, the application system 1 is of a two-CPU type provided with two microcomputers (not shown).
[0022]
The emulator 3 is divided into an emulator unit 3a that is not involved in the application of AS (Application Specific) such as a portion supporting a CPU core of a microcomputer, and a
[0023]
Further, the emulator unit 3a sets a master microcomputer for controlling the emulator, a serial interface unit for performing data communication with the personal computer 2, a program execution, and a stop condition for tracing, and stops the program or trace when the condition is satisfied. It is configured by a circuit (not shown) such as a breakpoint control unit.
[0024]
As shown in FIG. 2, the
[0025]
Further, the
[0026]
In the
[0027]
Further, input / output of control signals between the
[0028]
Further, a
[0029]
Further, between the
[0030]
Then, the software and hardware of the application system 1 are debugged by the connection shown in FIG. 1. When emulating the application system 1 of the 2 CPU system in the present embodiment, the functions of the target microcomputer are assigned to the
[0031]
Further, since the
[0032]
The
[0033]
Further, as shown in FIG. 3, the
[0034]
The clock oscillation circuit 16 includes an
[0035]
The
[0036]
The selection signal output unit is also connected to one input of the AND circuit 16c, and the other input is a first clock signal output from the oscillator provided in the application system 1 described above. .
[0037]
Further, the output units of the AND circuits 16b and 16c are connected to the input unit of the OR circuit 16d, and the output of the OR circuit 16d is connected to the respective clock input terminals Ck of the
[0038]
Here, a case will be described in which the clock oscillation circuit 16 uses the oscillator provided in the application system 1.
[0039]
To use the oscillator provided in the application system 1 (shown in FIG. 1), for example, a user inputs a command for selecting the oscillator provided in the application system 1 by the personal computer 2.
[0040]
Then, a predetermined signal is output from the personal computer 2 in response to the command, and a Hi signal, which is a first control signal, is output from a selection signal output unit provided in the
[0041]
The Hi signal is input to the input section of the inverter Iv1 and one input section of the AND circuit 16c, and the Hi signal input to the inverter Iv1 is inverted to become a Lo signal and input to the other input section of the AND circuit 16b. .
[0042]
Therefore, the second clock signal output from the
[0043]
On the other hand, the Hi signal is input to one input of the AND circuit 16c, and the first clock signal output from the oscillator provided in the application system 1 is input to the other input of the AND circuit 16c. The signal synchronized with the signal is output from the output section of the AND circuit 16c.
[0044]
The output of each of the AND circuits 16b and 16c is input to one input of an OR circuit 16d provided at the subsequent stage, so that the clock input terminals Ck of the
[0045]
Similarly, to supply the second clock signal output from the
[0046]
The other input of the AND circuit 16b becomes a Hi signal by the signal inverted by the inverter Iv1, and a signal synchronized with the
[0047]
The output of the AND circuit 16c is a Lo signal because one input portion is a Lo signal.
[0048]
Since the outputs of the AND circuits 16b and 16c are input to the OR circuit 16d, the clock input terminals Ck of the
[0049]
Thereby, not only the first clock signal output from the oscillator provided in the application system 1 but also the second clock signal output from the
[0050]
Next, the reset circuit 17 includes inverters Iv2 to Iv7 for inverting signals and OR
[0051]
The input units of the inverters Iv3 and Iv5 are connected so that the second reset signal output from the application system 1 (shown in FIG. 1) is input. The input units of the inverters Iv2 and Iv4 have, for example, , And a second control signal output from the
[0052]
The outputs of the inverters Iv2 and Iv3 are connected to the respective inputs of the
[0053]
Further, in the present embodiment, the
[0054]
Here, a case where the
[0055]
First, the user inputs a command for resetting the
[0056]
In response to the command, the personal computer 2 outputs a second control signal to the
[0057]
In addition, when the
[0058]
Further, a Hi signal, which is a second control signal output from the
[0059]
As a result, one input of the
[0060]
Next, a case where the
[0061]
First, the user inputs a command for resetting the
[0062]
In response to the command, the personal computer 2 outputs a predetermined signal to the
[0063]
Further, when the Lo signal, which is the second control signal, is input from the
[0064]
Here, a Hi signal, which is a second reset signal output from the application system, is input to the inverters Iv2 and Iv4 inputs, and the Hi signal is inverted and applied to the other inputs of the
[0065]
As a result, one input of the
[0066]
Therefore, the first reset signal synchronized with the reset signal input terminals R of the
[0067]
Thus, in the first embodiment, the capacitive load can be reduced by providing the
[0068]
In addition, the clock oscillation circuit 16 provided in the
[0069]
Further, the reset signal input to the
[0070]
(Example 2)
FIG. 4 is a main block diagram of an emulator provided with a trace function and a coverage function according to the second embodiment of the present invention.
[0071]
In the second embodiment, a trace circuit (trace means) 6a for sampling and tracing various data and status signals provided in the
[0072]
The trace circuit 6a is connected to the
[0073]
The data acquisition signal circuit 18 includes an OR circuit 18a, which is an OR circuit, and inverters Iv8 to Iv10 for inverting a signal.
[0074]
The input sections of the inverters Iv8 and Iv9 of the data acquisition signal circuit 18 are connected to trace signal output sections for acquiring trace acquisition signals of the
[0075]
The outputs of the inverters Iv8 and IV9 are connected to the input of the OR circuit 18a, and the output is connected to the input of the inverter Iv10. The output of the inverter Iv10 is connected to the data of the trace circuit 6a and the
[0076]
Therefore, the trace acquisition signal of the Hi signal output from the trace signal output units of the
[0077]
Accordingly, in the second embodiment, since the data acquisition signal is input to the trace circuit 6a and the
[0078]
As described above, the invention made by the inventor has been specifically described based on the embodiment. However, the present invention is not limited to the embodiment, and various modifications can be made without departing from the gist of the invention. Not even.
[0079]
For example, in the first and second embodiments, the clock oscillation circuit 16 and the reset circuit 17 and the data acquisition signal circuit 18 are provided separately, but the clock oscillation circuit 16, the reset circuit 17 and the data acquisition signal circuit 18 are all provided. It may be provided on a target probe (not shown).
[0080]
This allows more efficient emulation of a multi-CPU application system (not shown).
[0081]
【The invention's effect】
The effects obtained by typical aspects of the invention disclosed in the present application will be briefly described as follows.
[0082]
(1) According to the present invention, the user interface and transmission lines can be reduced and the capacitive load can be reduced by providing slave microcomputers in one emulator by the number corresponding to the plurality of microcomputers provided in the application system. Since it can be reduced, emulation of high-speed operation can be realized.
[0083]
(2) In the present invention, a clock signal synchronized with a plurality of slave microcomputers can be supplied by the clock selection supply means provided in the emulator main body, so that program debugging can be performed without connecting an application system. It becomes possible.
[0084]
(3) Further, in the present invention, emulation at the time of reset start can be enabled by a clock selection supply unit that supplies a clock signal to a plurality of slave microcomputers provided in the emulator body.
[0085]
(4) Further, according to the present invention, by providing the data acquisition signal means, data acquisition of trace data and coverage data can be performed simultaneously.
[0086]
(5) Further, according to the present invention, according to the above (1) to (4), the efficiency of debugging in a multi-CPU application system provided with a plurality of microcomputers can be greatly improved.
[Brief description of the drawings]
FIG. 1 is a connection diagram between an emulator and an application system according to a first embodiment of the present invention.
FIG. 2 is a main block diagram of the emulator according to the first embodiment of the present invention.
FIG. 3 is a circuit diagram of a clock oscillation circuit and a reset circuit in the emulator according to the first embodiment of the present invention.
FIG. 4 is a main block diagram of a trace function and a coverage function in an emulator according to a second embodiment of the present invention.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 Application system 2 Personal computer 3 Emulator
6b Coverage circuit (coverage means)
7
16a Oscillator 16b AND circuit 16c AND circuit 16d to 16f OR circuit 17 Reset circuit (reset signal output means)
18. Data acquisition signal circuit (data acquisition signal means)
18a OR circuit Iv1 to Iv10 Inverter CA1 to CA3 Cable Ck Clock input terminal R Reset signal input terminal
Claims (4)
前記エミュレータは、前記応用システムに設けられた前記複数のマイクロコンピュータに見合った数の前記マイクロコンピュータの機能を代行する複数のスレーブマイクロコンピュータと、前記応用システムと接続されるユーザインタフェースと、前記複数のスレーブマイクロコンピュータに共通に設けられたアドレスバスおよびデータバスと、前記複数のスレーブマイクロコンピュータの夫々に個別に設けられた複数のコントロールバスとを有し、前記ユーザインタフェースは、前記アドレスバス、データバスおよび複数のコントロールバスに接続されることを特徴とするエミュレータ。An emulator for debugging a multi-CPU application system provided with a plurality of microcomputers,
The emulator includes a plurality of slave microcomputers for performing functions of the microcomputer corresponding to the plurality of microcomputers provided in the application system, a user interface connected to the application system, and the plurality of slave microcomputers . An address bus and a data bus provided in common to the slave microcomputers; and a plurality of control buses individually provided in each of the plurality of slave microcomputers. The user interface includes the address bus and the data bus. And an emulator connected to a plurality of control buses .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP00876495A JP3545480B2 (en) | 1995-01-24 | 1995-01-24 | emulator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP00876495A JP3545480B2 (en) | 1995-01-24 | 1995-01-24 | emulator |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08202580A JPH08202580A (en) | 1996-08-09 |
JP3545480B2 true JP3545480B2 (en) | 2004-07-21 |
Family
ID=11701988
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP00876495A Expired - Fee Related JP3545480B2 (en) | 1995-01-24 | 1995-01-24 | emulator |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3545480B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10187525A (en) * | 1996-10-28 | 1998-07-21 | Matsushita Electric Ind Co Ltd | Proxy information acquisition device and information transfer management device |
JP2003162426A (en) * | 2001-11-28 | 2003-06-06 | Hitachi Ltd | Computer system with cooperative debug circuit for multiple cpu and debug method |
-
1995
- 1995-01-24 JP JP00876495A patent/JP3545480B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH08202580A (en) | 1996-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6502209B1 (en) | Chip with debug capability | |
KR970076251A (en) | Data processor and data processing system | |
JP3693722B2 (en) | Data processing system and method | |
JP3545480B2 (en) | emulator | |
JPH1153211A (en) | Development supporting device | |
EP3803603B1 (en) | Software-trace message sink peripheral | |
US6463551B1 (en) | Debug circuit and microcomputer incorporating debug circuit | |
US20200293429A1 (en) | Semiconductor Apparatus and Debug System | |
JPH05173824A (en) | Emulator and microcomputer chip | |
JPS60231242A (en) | Development supporting device of microprocessor | |
JPH0550016B2 (en) | ||
JPH05282179A (en) | Emulator | |
JPH1173344A (en) | Emulator | |
JPH0836504A (en) | Emulator | |
JP2632891B2 (en) | System development equipment | |
JP2642664B2 (en) | Emulator and multi-emulation break method | |
JP2684369B2 (en) | In-circuit emulator | |
JPS61282946A (en) | Programmable controller | |
JPH10105434A (en) | Emulator | |
JPH10187480A (en) | Emulator | |
JPS61175834A (en) | Data processor provided with microprogram debug function | |
JPH01306933A (en) | Debugging device | |
JP2002073363A (en) | Lsi debug device and system | |
JPH06266575A (en) | Emulator | |
JPH04125740A (en) | Microcomputer and emulator |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040330 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040408 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313117 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080416 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090416 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090416 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100416 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100416 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110416 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110416 Year of fee payment: 7 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110416 Year of fee payment: 7 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120416 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |