JP2004030652A - Emulation probe board and debugging system - Google Patents
Emulation probe board and debugging system Download PDFInfo
- Publication number
- JP2004030652A JP2004030652A JP2003160559A JP2003160559A JP2004030652A JP 2004030652 A JP2004030652 A JP 2004030652A JP 2003160559 A JP2003160559 A JP 2003160559A JP 2003160559 A JP2003160559 A JP 2003160559A JP 2004030652 A JP2004030652 A JP 2004030652A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- emulation
- probe
- microcomputer
- board
- 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
Images
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、ターゲットシステムの開発支援のためのエミュレーションプローブボード(基板)、これを用いたデバッグシステムに関する。
【0002】
【背景技術及び発明が解決しようとする課題】
近年、家庭用のゲーム装置、カーナビゲーションシステム、プリンタ、携帯情報端末、携帯電話などの電子機器に組み込まれ、高度な情報処理を実現できるマイクロコンピュータに対する需要が高まっている。そして、このような組み込み型のマイクロコンピュータは、通常、ターゲットシステムと呼ばれるユーザボードに実装される。そして、このターゲットシステムの開発を支援するためにICE(In−Circuit Emulator)と呼ばれる開発支援ツールが広く用いられている。
【0003】
さて、このようなICEとしては、従来、図1(A)に示すようなCPU置き換え型と呼ばれるICEが主流を占めていた。
【0004】
このCPU置き換え型ICEでは、評価(デバッグ)時にターゲットシステム300のソケットからマイクロコンピュータ302を取り外す。次に、そのソケットに、ICE本体(デバッグツール)304から伸びるフラットケーブル308の先端に設けられたプローブ306を接続する。そして、このICE本体304に、取り外したマイクロコンピュータ302の動作をエミュレートさせる。また、このICE本体304に、デバッグのために必要な種々の処理を行わせる。
【0005】
しかしながら、このCPU置き換え型ICEには、フラットケーブル308の存在等に起因して、高いクロック周波数でのエミュレーションが難しいという欠点がある(例えば33MHZ程度が限界)。このため、プローブ306をターゲットシステム300に接続してエミュレーションを行う評価時と、マイクロコンピュータ302をターゲットシステム300に搭載して動作させる製品(実動作)時とで、システムの動作環境(信号のタイミング、負荷条件)が変化してしまう。従って、評価時には動作していたターゲットシステム300が、製品時には動作しなくなるという問題が生じる。
【0006】
またこのCPU置き換え型ICEには、マイクロコンピュータ302が異なれば、たとえそれが派生品であっても、新たにICE本体304を設計し直さなければならないという問題点もあった。
【0007】
一方、このようなCPU置き換え型ICEの欠点を解消するものとして、近年、オンチップデバッグ型と呼ばれるICEが脚光を浴びている。
【0008】
このオンチップデバッグ型ICEでは、図1(B)に示すように、マイクロコンピュータ314にオンチップデバッグ回路318を内蔵させる。そして、このオンチップデバッグ回路318を用いて、ICE本体324との間でデバッグ情報(CPUのステータス情報、プログラムカウンタ情報等)を高速にシリアル通信する。
【0009】
このオンチップデバッグ型ICEによれば、マイクロコンピュータ314をターゲットシステム312に搭載した状態で、ターゲットシステム312の評価(デバッグ)作業を行える。従って、評価時と製品時とでターゲットシステム312の動作環境を同一にすることが可能となり、CPU置き換え型ICEの欠点を解消できる。
【0010】
しかしながら、従来のオンチップデバッグ型ICEには、エミュレーションメモリ320に関して、以下のような問題点があることが判明した。
【0011】
エミュレーションメモリ320は、プログラムを適宜ダウンロードできない内部ROM316や外部ROM322の代行メモリとして、ターゲットシステム312の評価(プログラムデバッグ)時に必要になるメモリである。即ち評価時においては、ユーザは、RAM等により構成されるエミュレーションメモリ320に、開発途中のプログラムを随時ダウンロードしながら、プログラム開発を行う。そして、プログラムが完成すると、完成後のプログラムやそれに使用するデータを、マスクROM等で構成される内部ROM316や外部ROM322に記憶させる。このようにして、製品用のターゲットシステム312が完成する。
【0012】
従って、エミュレーションメモリ320は、ターゲットシステム312の評価時には必要になるが、製品時には、内部ROM316や外部ROM322に記憶されるプログラムやデータが使用されるため、エミュレーションメモリ320は不要になる。
【0013】
ところが、図1(B)に示すように従来のオンチップデバッグ型ICEでは、エミュレーションメモリ320は、ICE本体324ではなくターゲットシステム312に搭載される。オンチップデバッグ型ICEでは、ターゲットシステム312とICE本体324との間はシリアル通信となるため、エミュレーションメモリのアドレスやデータを通信することはできず、エミュレーションメモリ320をICE本体324に内蔵できないからである。
【0014】
そして、このようにエミュレーションメモリ320をターゲットシステム312に搭載すると、次のような問題点が生じる。
(1)ターゲットシステムへのエミュレーションメモリの実装や、エミュレーションメモリの制御回路の設計等を、ユーザ自身が行わなければなくなり、ユーザの手間が増える。これはターゲットシステムの開発期間の長期化等の問題を招く。特に、デバッグ方式が変更され、エミュレーションメモリへのアクセス方法等が変更された場合には、ターゲットシステムの配線パターンも変更しなければならなくなり、ユーザの負担が更に増える。
(2)製品用のターゲットシステムに、本来は不要であるはずのエミュレーションメモリを搭載しなければならなくなり、ターゲットシステムの高コスト化を招く。
(3)上記(2)の問題を回避するためには、ユーザは、エミュレーションメモリが搭載されている評価用のターゲットシステムとは別に、エミュレーションメモリが搭載されていない製品用のターゲットシステムを設計する必要がある。しかしながら、これは、ターゲットシステムの開発期間の長期化や製品コストの増加等の問題を招く。また、評価用のターゲットシステムと製品用のターゲットシステムとが別設計になるため、評価用のターゲットシステムは正常に動作していたのにもかかわらず、製品用のターゲットシステムは正常に動作しなくなる等の問題も生じる。
【0015】
本発明は、以上のような技術的課題に鑑みてなされたものであり、その目的とするところは、オンチップデバッグ方式を採用しながらも、ターゲットシステムへのエミュレーションメモリの搭載を不要にし、ユーザの利便性を向上できるエミュレーションプローブボード及びこれを用いたデバッグシステムを提供することにある。
【0016】
【課題を解決するための手段】
上記課題を解決するために本発明はオンチップデバッグ回路を有するマイクロコンピュータが組み込まれるターゲットシステムの開発支援のためのエミュレーションプローブボードであって、前記マイクロコンピュータを搭載するための搭載手段である前記ターゲットシステムの第1の搭載手段に接続するためのプローブと、前記マイクロコンピュータを搭載するための第2の搭載手段と、前記第2の搭載手段に搭載される前記マイクロコンピュータと外部との間で、前記オンチップデバッグ回路のためのデバッグ情報をシリアル通信するための第1のインターフェースと、前記ターゲットシステムで使用されるメモリをエミュレーションするためのエミュレーションメモリを搭載するための第3の搭載手段とを含むことを特徴とする。
【0017】
本発明によれば、ターゲットシステム等の評価(デバッグ)時において、ターゲットシステムの第1の搭載手段(例えばソケット)にプローブが接続される。これにより、エミュレーションプローブボードに搭載されるマイクロコンピュータを用いて、ターゲットシステムを動作させることができるようになる。そして、この時、マイクロコンピュータが内蔵するオンチップデバッグ回路に使用されるデバッグ情報が、第1のインターフェースを用いて外部(例えばICE本体、ホストシステム)との間でシリアル通信される。従って、ターゲットシステムにマイクロコンピュータが実質的に搭載されているとみなせる状態で、オンチップデバッグ方式による評価(デバッグ)作業を行うことができるようになる。
【0018】
そして本発明によれば、エミュレーションメモリがエミュレーションプローブボードに搭載され、ターゲットシステムへのエミュレーションメモリの搭載が不要になる。従って、ユーザの負担を軽減できると共に、製品用のターゲットシステムとは別に、評価用のターゲットシステムを用意する必要性をなくせる。この結果、ターゲットシステムの開発期間の短縮化、低コスト化、信頼性の向上等を図れるようになる。
【0019】
また本発明は、前記プローブと、前記マイクロコンピュータを搭載するための前記第2の搭載手段と、第1のコネクタとが少なくとも設けられるプローブ側ボードと、前記エミュレーションメモリを搭載するための前記第3の搭載手段と、前記第1のコネクタに接続される少なくとも1つの第2のコネクタとが少なくとも設けられるメモリ側ボードとに分離されていることを特徴とする。このようにすることで、マイクロコンピュータの機種が変更された場合等にも、プローブ側ボードのみを変更し、メモリ側ボードとして同一のものを使用できるようになる。なお、デバッグ情報を通信するための第1のインターフェースは、高速の通信を実現するために、マイクロコンピュータが搭載されるプローブ側ボードに設けることが望ましい。
【0020】
また本発明は、前記プローブ側ボードの前記プローブの端子の形態がカスタマイズ可能であると共に、前記メモリ側ボードの前記第2のコネクタの端子の形態が標準化されていることを特徴とする。このようにすれば、マイクロコンピュータの機種が変更になり、プローブの端子の形態(端子数、端子配置、各端子へ割り当てられる信号等)が変更されても、メモリ側ボードとして同一のものを使用できる。従って、エミュレーションプローブボードの開発期間の短縮化、低コスト化を図れるようになる。
【0021】
また本発明は、前記プローブ側ボードの前記第1のコネクタにダイレクトに接続するための第3のコネクタと、前記プローブ側ボードの前記第1のコネクタにケーブルを介して接続するための第4のコネクタとが、前記第2のコネクタとして前記メモリ側ボードに設けられていることを特徴とする。このようにすれば、スペースが無い等の理由により、エミュレーションプローブボードとの接続が困難なターゲットシステムに対しても、エミュレーションプローブボードを容易に接続できるようになる。
【0022】
また本発明は、前記エミュレーションメモリが、前記マイクロコンピュータの内部メモリをエミュレーションするための内部メモリ用エミュレーションメモリと、前記マイクロコンピュータの外部メモリをエミュレーションするための外部メモリ用エミュレーションメモリとを含み、前記内部メモリ用エミュレーションメモリを搭載するための第4の搭載手段が、前記プローブ側ボードに設けられていることを特徴とする。このようにすれば、マイクロコンピュータによる内部メモリ用エミュレーションメモリへのアクセスを高速化できるようになる。これにより、例えば内部メモリ用エミュレーションメモリに命令(プログラム)を記憶させた場合に、マイクロコンピュータが、その命令のフェッチ及びデコードを1クロックサイクル内で完了できるようになる。これにより、製品時と同様の高いクロック周波数でマイクロコンピュータを動作させて、ターゲットシステムを評価できるようになる。
【0023】
また本発明は、前記マイクロコンピュータと前記内部メモリ用エミュレーションメモリとを接続し前記内部メモリ用エミュレーションメモリを制御するための制御信号が伝達される第1の接続線と、前記第1の接続線と前記第1のコネクタとを接続し前記制御信号が伝達される第2の接続線と、前記第2の接続線による接続を切断するための第1の切断手段とが設けられていることを特徴とする。このようにすれば、第1の接続線に寄生する寄生容量を軽減でき、マイクロコンピュータによる内部メモリ用エミュレーションメモリへのアクセスを、更に高速化できるようになる。
【0024】
また本発明は、前記内部メモリ用エミュレーションメモリが第1、第2の内部メモリ用エミュレーションメモリを含み、前記第1の内部メモリ用エミュレーションメモリを搭載するための第5の搭載手段が前記プローブ側ボードの第1の面に設けられ、前記第2の内部メモリ用エミュレーションメモリを搭載するための第6の搭載手段が前記プローブ側ボードの第2の面に設けられていることを特徴とする。このようにすれば、マイクロコンピュータ、第1の内部メモリ用エミュレーションメモリ間の配線パターン長と、マイクロコンピュータ、第2の内部メモリ用エミュレーションメモリ間の配線パターン長とを、同一或いはほぼ同一にすることが可能になる。これにより、内部メモリ用エミュレーションメモリへの高速アクセス時にも、内部メモリ用エミュレーションメモリを適正に動作させることが可能になる。
【0025】
また本発明は、前記マイクロコンピュータと前記第1のインターフェースとを接続し前記デバッグ情報が伝達される第3の接続線と、前記第3の接続線と前記プローブとの間を接続する第4の接続線と、前記第4の接続線による接続を切断するための第2の切断手段とが設けられていることを特徴とする。このようにすることで、第3の接続線に寄生する寄生容量を軽減でき、第1のインターフェースを介したデバッグ情報の高速シリアル通信を実現できるようになる。
【0026】
また本発明は、前記マイクロコンピュータからの第1の信号のうち前記エミュレーションメモリの動作に必要な信号を含む第2の信号が、前記マイクロコンピュータ、前記エミュレーションメモリ間で伝達されることを特徴とする。このようにすれば、第2の信号の形態(信号の数、信号の種類等)を標準化できるようになる。なお、エミュレーションプローブボードをプローブ側ボードとメモリ側ボードに分離する場合には、第2の信号は、プローブ側ボードの第1のコネクタ、メモリ側ボードの第2のコネクタを介して、プローブ側ボード(マイクロコンピュータ)、メモリ側ボード(エミュレーションメモリ)間で伝達されることになる。
【0027】
また本発明は、前記第2の信号で動作可能なカスタムチップを搭載するため第7の搭載手段が設けられていることを特徴とする。このようにすれば、第2の信号を用いてマイクロコンピュータの制御下でカスタムチップを動作させることが可能になる。そしてユーザは、カスタムチップの評価終了後に、このカスタムチップの回路とマイクロコンピュータの回路を1チップ化し、ASICマイクロコンピュータを設計できるようになる。
【0028】
また本発明は、前記カスタムチップと外部との間のインターフェースとなる第2のインターフェース、前記カスタムチップと前記ターゲットシステムとの間のインターフェースとなる第3のインターフェースの少なくとも一方が設けられていることを特徴とする。このようにすれば、カスタムチップを構成する回路のデータのダウンロードや、カスタムチップからの入出力信号を用いてターゲットシステムやターゲットシステムに搭載されるデバイスを動作させること等が可能になり、ユーザの利便性を向上できる。
【0029】
また本発明は、前記エミュレーションメモリが、前記マイクロコンピュータの内部メモリをエミュレーションするための内部メモリ用エミュレーションメモリと、前記マイクロコンピュータの外部メモリをエミュレーションするための外部メモリ用エミュレーションメモリとを含み、前記マイクロコンピュータ、前記外部メモリ用エミュレーションメモリ間では所与のバッファを介して前記第2の信号が伝達され、前記マイクロコンピュータ、前記内部メモリ用エミュレーションメモリ間では前記バッファを介さずに前記第2の信号が伝達されることを特徴とする。このようにすることで、マイクロコンピュータによる内部メモリ用エミュレーションメモリへのアクセスを高速化できるようになる。
【0030】
また本発明は、前記エミュレーションメモリが、前記マイクロコンピュータの内部メモリをエミュレーションするための内部メモリ用エミュレーションメモリと、前記マイクロコンピュータの外部メモリをエミュレーションするための外部メモリ用エミュレーションメモリとを含み、前記外部メモリ用エミュレーションメモリを制御するための第1の制御信号とは別系統の第2の制御信号が前記内部メモリ用エミュレーションメモリに与えられることを特徴とする。このようにすれば、外部メモリ用エミュレーションメモリを制御する第1の制御信号とは別系統の第2の制御信号で、内部メモリ用エミュレーションメモリを制御できるようになる。これにより、内部メモリ用エミュレーションメモリへの適正なアクセスを実現できるようになる。
【0031】
また本発明は、前記第2の制御信号が含む第2のメモリリード信号が、前記第1の制御信号が含む第1のメモリリード信号よりも早いタイミングでアクティブになることを特徴とする。このようにすれば、例えば内部メモリ用エミュレーションメモリに記憶される命令をマイクロコンピュータが1クロックサイクルでフェッチしデコードしなければならない等の制約がある場合にも、このような制約に容易に対応できるようになる。
【0032】
また本発明に係るデバッグシステムは、上記のいずれかのエミュレーションプローブボードと、前記エミュレーションプローブボードに搭載される前記マイクロコンピュータと、前記エミュレーションプローブボードに搭載される前記エミュレーションメモリと、前記第1のインターフェースを介してデバッグ情報が通信されるデバッグツールとを含むことを特徴とする。
【0033】
本発明によれば、ユーザの利便性を向上できると共に、ターゲットシステムの開発期間の短縮化、低コスト化を図れるデバッグシステムをユーザに提供できるようになる。
【0034】
【発明の実施の形態】
以下、本発明の好適な実施形態について図面を用いて詳細に説明する。
【0035】
1.基本構成
図2に、本実施形態のエミュレーションプローブボード(エミュレーションPOD(Probe Of Device))の基本構成と、このエミュレーションプローブボードを用いたデバッグシステムの全体構成を示す。
【0036】
エミュレーションプローブボード10には、プローブ20、高速のシリアルインターフェース(I/F)24が設けられる共に、マイクロコンピュータ22、エミュレーションメモリ30が搭載可能になっている。即ち、マイクロコンピュータ22、エミュレーションメモリ30の搭載手段(特に限定されないが、ソケット、端子(ピン)穴、或いは端子から引き出される配線等により実現される手段)が設けられている。
【0037】
ここで、プローブ20は、ターゲットシステム50のソケット52に接続するためのものである。なお、ソケット(広義には搭載手段)52は、ターゲットシステム50の製品時にマイクロコンピュータ22を搭載するためのものである。即ち、ターゲットシステム50の評価時においては、エミュレーションプローブボード10のプローブ20がソケット52に接続され、製品時においては、マイクロコンピュータ22がソケット52に搭載されることになる。
【0038】
マイクロコンピュータ22は、CPUやその周辺回路を含むものであり、本実施形態ではマイクロコンピュータ22がオンチップデバッグ回路を内蔵する。これにより、オンチップデバッグ型ICEを実現できるようになる。
【0039】
エミュレーションメモリ30は、ターゲットシステム50で使用される内部ROM(広義には内部メモリ)や外部ROM(広義には外部メモリ)をエミュレーション(代行)するためのものである。このエミュレーションメモリ30としては、高速RAM、通常のRAM、フラッシュメモリなどを用いることができる。
【0040】
シリアルインターフェース(I/F)24は、マイクロコンピュータ22とICE本体54(広義にはデバッグツール)との間で、マイクロコンピュータ22が内蔵するオンチップデバッグ回路のためのデバッグ情報を高速シリアル通信するためのインターフェース(高速シリアル通信インターフェース)である。このようなインターフェースとしては、いわゆるJTAGやBDM(Background Debug Model)規格のインターフェースを採用してもよいし、JTAGやBDMに似た独自のインターフェースを採用してもよい。
【0041】
図2に示すように本実施形態によれば、図1(B)の従来例と異なり、ターゲットシステムへのエミュレーションメモリの搭載が不要になる。従って、ターゲットシステムへのエミュレーションメモリの実装や、エミュレーションメモリの制御回路の設計等の手間を、ユーザが負わなくて済むようになる。またデバッグ方式が変更等されても、ターゲットシステムの設計変更は不要になる。また、製品用のターゲットシステムに対して、本来は不要であるはずのエミュレーションメモリを搭載する必要性がなくなる。また、評価用のターゲットシステムと製品用のターゲットシステムとを別個に設計する必要性も無くすことができる。従って本実施形態によれば、ターゲットシステムの開発期間の短縮化、低コスト化を図れ、ユーザの利便性を向上できるようになる。
【0042】
しかも、本実施形態によれば、マイクロコンピュータ22及びエミュレーションメモリ30は、ICE本体54ではなく、プローブ20が設けられる小面積のエミュレーションプローブボード10上に集約して搭載される。このため、プローブ20、マイクロコンピュータ22間の配線パターン長や、プローブ20、エミュレーションメモリ30間の配線パターン長や、マイクロコンピュータ22、エミュレーションメモリ30間の配線パターン長を十分に短くできる。従って、マイクロコンピュータ22を高いクロック周波数で動作させても、ターゲットシステム50は問題なく正常に動作するようになる。この結果、評価時の動作環境と、製品時(実動作時)の動作環境とを同一にすることができ、デバッグシステム50の信頼性を向上できる。
【0043】
また、エミュレーションメモリ30を内部ROMのエミュレーションのために用いる場合には、マイクロコンピュータ22は1クロックサイクル内でエミュレーションメモリ30からの命令をフェッチしデコードしなければならない。本実施形態によれば、マイクロコンピュータ22、エミュレーションメモリ30間の配線パターン長を十分に短くできるため、マイクロコンピュータ22によるエミュレーションメモリ30への高速アクセスが可能になる。従って、1クロックサイクル内で命令のフェッチ及びデコードを完了できるようになり、内部ROMのエミュレーションを適正に実現できるようになる。
【0044】
また本実施形態によれば、エミュレーションプローブボード10上に、デバッグ情報を通信するためのシリアルインターフェース24が設けられる。従って、マイクロコンピュータ22が内蔵するオンチップデバッグ回路を有効利用して、効率的なデバッグ作業を実現できるようになる。
【0045】
即ち、図1(A)に示すCPU置き換え型ICEでは、ターゲットシステムへのエミュレーションメモリの搭載は不要であるものの、オンチップデバッグ回路を利用した効率的なデバッグ作業を実現できない。
【0046】
一方、図1(B)に示す従来のオンチップデバッグ型ICEでは、オンチップデバッグ回路を利用した効率的なデバッグ作業を実現できるものの、ターゲットシステムへのエミュレーションメモリの搭載が必要になり、ユーザの利便性を阻害する。
【0047】
これに対して、本実施形態によれば、オンチップデバッグ回路を利用した効率的なデバッグ作業を実現できるのにもかかわらず、ターゲットシステムへのエミュレーションメモリの搭載を不要にでき、図1(A)、(B)の組み合わせでは実現できない特有の効果を奏する。
【0048】
2.プローブ側ボードとメモリ側ボードへの分離
図3に示すように、エミュレーションプローブボード10は、プローブ側ボード12とメモリ側ボード14とに分離可能になっていることが望ましい。
【0049】
ここでプローブ側ボード12には、プローブ20、マイクロコンピュータ22、シリアルインターフェース24、コネクタ26が設けられている。一方、メモリ側ボード14には、コネクタ28、エミュレーションメモリ30が設けられている。そして、コネクタ26と28をダイレクトに接続することで、プローブ側ボード12、メモリ側ボード14間で信号が伝達されることになる。
【0050】
なお図3では、エミュレーションメモリ30が、IROMエミュレーションメモリ32(内部メモリ用エミュレーションメモリ)と、EROMエミュレーションメモリ34(外部メモリ用エミュレーションメモリ)を含む。IROMエミュレーションメモリ32は、マイクロコンピュータの内部ROM(広義には内部メモリ)をエミュレーションするためのメモリであり、このようなメモリとしては、高速SRAMなどを用いることができる。またEROMエミュレーションメモリ34は、マイクロコンピュータの外部ROM(広義には外部メモリ)をエミュレーションするためのメモリであり、このようなメモリとしては、標準的な速度のRAM(SRAM、DRAM)、フラッシュメモリなどを用いることができる。
【0051】
図3に示すように、エミュレーションプローブボード10をプローブ側ボード12とメモリ側ボード14に分離することで、以下のような利点を得ることができる。
【0052】
即ち、一般的に、マイクロコンピュータ22の端子(ピン)の形態(端子数、端子配置、各端子へ割り当てられる信号等)は、種々様々である。このため、プローブ20の端子の形態も種々様々になる。従って、ターゲットシステムで使用されるマイクロコンピュータ22の機種が変更されると、それに合わせてエミュレーションプローブボードも違う機種のものを提供しなければならなくなる。
【0053】
この場合に、エミュレーションプローブボード10をプローブ側ボード12とメモリ側ボード14とに分離可能にしておけば、図4に示すように、プローブ側ボード12のプローブ20の端子の形態についてはカスタマイズできるようになると共に、メモリ側ボード14のコネクタ28(コネクタ26)の端子の形態については標準化できるようになる。このため、使用するマイクロコンピュータ22の機種が変更され、プローブ20の端子の形態が変わっても、メモリ側ボード14として同一(或いはほぼ同一)のものを使用できるようになる。従って、マイクロコンピュータ22の機種が変更されても、プローブ側ボード12だけを新たに作り直せばよく、メモリ側ボード14については新たに作り直す必要性がなくなる。この結果、エミュレーションプローブボードの低コスト化、設計作業の効率化等を図れるようになる。
【0054】
3.フラットケーブル用コネクタの併設
本実施形態のエミュレーションプローブボードにはマイクロコンピュータやエミュレーションメモリが搭載されるため、ICEにおける通常のプローブ(プローブボード)よりも、ボード面積が大きくなる。このため、ターゲットシステムの種類によっては、エミュレーションプローブボードの接続が困難になる場合が生じる。
【0055】
そこで、このような問題を解決するために、図5に示すように、メモリ側ボード14上に、ダイレクト接続用のコネクタ28の他に、フラットケーブル27用のコネクタ29を併設することが望ましい。即ち、コネクタ26とフラットケーブル27を介して接続されるコネクタ29をメモリ側ボード14に設けるようにする。
【0056】
このようにすることで、スペースが無い等の理由によりエミュレーションプローブボードを接続するのが困難なターゲットシステムであっても、エミュレーションプローブボードを容易に接続できるようになり、ユーザの利便性を向上できる。
【0057】
また、本実施形態では、コネクタ28を利用して、プローブ側ボード12とメモリ側ボード14とをダイレクトに接続することもできる。従って、フラットケーブル27による信号遅延を望まないユーザの要望にも応えることができる。このように、図5の手法を用いれば、幅広い層のユーザの要望に応えることができるようになる。
【0058】
4.プローブ側ボードへのIROMエミュレーションメモリの搭載
前述のように、エミュレーションメモリとしては、内部ROMを代行するIROMエミュレーションメモリと、外部ROMを代行するEROMエミュレーションメモリとを考えることができる。そして、IROMエミュレーションメモリについては、IROMエミュレーションメモリから読み出された命令のフェッチ及びデコードを1クロックサイクル内で完了しなければならないため、IROMエミュレーションへのアクセスは、より高速であることが望まれる。特に、マイクロコンピュータのクロック周波数が高速である場合には、この要望は更に強いものとなる。
【0059】
そこで、このような要望に応えるべく、図6に示すように、IROMエミュレーションメモリ32についてはプローブ側ボード12に設けるようにしてもよい。即ち、IROMエミュレーションメモリ32の搭載手段をプローブ側ボード12に設けるようにする。
【0060】
このようにすることで、マイクロコンピュータ22、IROMエミュレーションメモリ32間の配線パターン長を短くすることができ、マイクロコンピュータ22によるIROMエミュレーションメモリ32へのアクセスを高速化できるようになる。即ち、IROMエミュレーションメモリ32をメモリ側ボード14に設ける場合に比べて、メモリアクセスを格段に高速化できる。これにより、マイクロコンピュータ22は、命令のフェッチ及びデコードを1クロックサイクル内で容易に完了できるようになる。この結果、評価時においても、製品時の場合と同様の高いクロック周波数でマイクロコンピュータ22を動作させることができるようになり、評価時の動作環境と製品時の動作環境を同一にできるようになる。
【0061】
さて、IROMエミュレーションメモリ32へのアクセスの更なる高速化を図るためには、以下に説明するような2つの手法を採用することが更に望ましい。
【0062】
例えば図7において、接続線60、61は、マイクロコンピュータ22とIROMエミュレーションメモリ32との間の接続線であり、これらの接続線60、61により制御信号CE2、RD2がIROMエミュレーションメモリ32に伝達される。ここでCE2、RD2は、各々、IROMエミュレーションメモリ32用のチップイネーブル信号、メモリリード信号であり、これらは共に、IROMエミュレーションメモリ32を制御するための信号である。
【0063】
また、接続線62、63は、接続線60、61とコネクタ26との間の接続線であり、これらの接続線62、63により制御信号CE2、RD2がコネクタ26を介してメモリ側ボードに伝達される。即ち、本実施形態では図4にて説明したように、コネクタ26、28の端子の形態(端子数、端子配置、各端子へ割り当てられる信号等)が標準化される。従って、IROMエミュレーションメモリ32がプローブ側ボードに搭載され、メモリ側ボードには搭載されない場合であっても、接続線62、63が存在することになる。メモリ側ボードにIROMエミュレーションメモリ32を設けた場合には、そのIROMエミュレーションメモリ32を動作させるために、接続線62、63が必要になるからである。
【0064】
さて、IROMエミュレーションメモリ32への高速アクセスを実現するためには、制御信号CE2、RD2の信号遅延を小さくする必要がある。そして、CE2、RD2の信号遅延は、CE2、RD2を出力するマイクロコンピュータ22内のバッファ68、69の能力と、バッファ68、69の出力端子に寄生する寄生容量により決まる。
【0065】
ところが、接続線60、61と接続線62、63が接続されると、バッファ68、69の出力端子に、接続線60、61の寄生容量のみならず接続線62、63の寄生容量も付加されることになるため、バッファ68、69の出力端子の寄生容量が大きくなってしまう。特に、接続線62、63は、コネクタ26を介して、メモリ側ボードに接続されるため、接続線62、63の寄生容量は非常に大きい。
【0066】
そこで図7では、接続線60、61と接続線62、63との間に、ジャンパ64、65(切断手段)を設けている。そして、IROMエミュレーションメモリ32をプローブ側ボードに設ける場合には、ジャンパ64、65を切断状態にする。一方、IROMエミュレーションメモリ32をメモリ側ボードに設ける場合には、ジャンパ64、65を導通状態にする。
【0067】
このようにすれば、IROMエミュレーションメモリ32がプローブ側ボードに設けられている場合には、接続線60、61と接続線62、63が切断されるため、バッファ68、69の出力端子の寄生容量は、接続線60、61の寄生容量だけになる。従って、制御信号CE2、RD2の信号遅延を最小化でき、IROMエミュレーションメモリ32への高速アクセスを実現できる。
【0068】
一方、IROMエミュレーションメモリ32がメモリ側ボードに設けられている場合には、接続線60、61と接続線62、63は接続され、メモリ側ボードのIROMエミュレーションメモリ32に、制御信号CE2、RD2を適正に伝達できる。これは、IROMエミュレーションメモリ32をプローブ側ボードに設けるかメモリ側ボードに設けるかに依らずに、コネクタ26、28を標準化できることを意味する。
【0069】
なお、ジャンパ64、65が切断状態になった場合には、ジャンパ66、67を導通状態にする。このようにすることで、接続線62、63をHレベルにプルアップすることができ、メモリ側ボードでのメモリの誤動作を防止できる。
【0070】
また図8では、IROMエミュレーションメモリ32が、下位8ビット(D0〜D7)用のIROMエミュレーションメモリ32−1と、上位8ビット(D8〜D15)用のIROMエミュレーションメモリ32−2とに分かれている。高速アクセスを実現するためには、IROMエミュレーションメモリ32として高速SRAMを採用する必要があり、高速SRAMの多くは8ビット製品だからである。
【0071】
そして図8では、IROMエミュレーションメモリ32−1については、プローブ側ボード12の例えば表面に実装し、IROMエミュレーションメモリ32−2については裏面(IROMエミュレーションメモリ32−1が設けられている場所とほぼ同じ場所の裏面)に実装する。即ちIROMエミュレーションメモリ32−1の搭載手段をプローブ側ボード12の表面に設けると共に、IROMエミュレーションメモリ32−2の搭載手段を裏面に設ける。
【0072】
即ち、IROMエミュレーションメモリ32−1、32−2を構成するSRAMは非常に高速であり、そのアクセスタイムは6nsec程度となっている。従って、マイクロコンピュータ22、IROMエミュレーションメモリ32−1間の配線パターン長と、マイクロコンピュータ22、IROMエミュレーションメモリ32−2間の配線パターン長が異なり、これらの配線パターンに寄生する寄生容量が互いに異なると、信号遅延に差が生じてしまい、IROMエミュレーションメモリ32−1、32−2が誤動作するおそれがある。
【0073】
そこで図8では、IROMエミュレーションメモリ32−1、32−2をサンドイッチ構造で両面実装し、マイクロコンピュータ22、IROMエミュレーションメモリ32−1間の配線パターン長と、マイクロコンピュータ22、IROMエミュレーションメモリ32−2間の配線パターン長とが同一(或いはほぼ同一)になるようにしている。これにより、これらの配線パターンに寄生する寄生容量も同一或いはほぼ同一にでき、IROMエミュレーションメモリ32−1、32−2として高速SRAMを用いても、その誤動作を防止できるようになる。
【0074】
5.高速シリアルインターフェース
図9に示すように本実施形態では、シリアルインターフェース24を介してICE本体(ホストシステムでもよい)との間で、DST2、DST1、DST0、DPCO、DSIO、DCLKなどの信号(情報)がシリアル通信されている。
【0075】
ここでDST2〜0は、CPU22の命令実行のステータスを知らせるための3ビットの信号である。また、DPCOは、分岐先のPC(プログラムカウンタ)値を表す信号である。また、DSIOは、デバッグのために実行する各種命令をICE本体からマイクロコンピュータ22に伝えたり、マイクロコンピュータ22の応答をマイクロコンピュータ22からICE本体に伝えるための信号である。また、DCLKはデバッグモード用のクロック信号である。
【0076】
さて、マイクロコンピュータ22がエミュレーションプローブボードに搭載されている場合には、図9に示すように、接続線70〜75及びシリアルインターフェース24を介してマイクロコンピュータ22とICE本体との間でDST2〜DCLKが通信される。
【0077】
また、マイクロコンピュータ22がターゲットシステムに搭載された状態においても、DST2〜DCLKをICE本体との間で通信できることが望まれる。従って、図9に示すように、ターゲットシステム側にも、ICE本体との間でDST2〜DCLKを通信するためのシリアルインターフェース25を設けることが望ましい。従って、この場合には、ターゲットシステム側にも、マイクロコンピュータ22、シリアルインターフェース25間を接続する接続線76〜81が設けられることになる。この結果、エミュレーションプローブボード側の接続線70〜75は、接続線88〜93及びプローブ20を介して、接続線76〜81に接続されることになる。
【0078】
ところで、マイクロコンピュータ22のクロック周波数が高い場合にも適正なデバッグ環境を実現するためには、DST2〜DCLKの通信を、より高速化することが望まれる。このためには、接続線70〜75での信号遅延を最小限に抑える必要がある。そして、この信号遅延は、DST2〜DCLKを出力するバッファ82〜87の能力と、接続線70〜75に寄生する寄生容量で決まる。
【0079】
ところが、図9では接続線70〜75と接続線76〜81が接続される構造となっているため、接続線70〜75の寄生容量に接続線76〜81の寄生容量が付加されることになってしまう。このため、接続線70〜75での信号遅延が大きくなり、DST2〜DCLKの通信の高速化の妨げとなる。
【0080】
そこで図9では、接続線88〜93での接続を切断するためのジャンパ94〜99(切断手段)を設けている。
【0081】
このようにすれば、ジャンパ94〜99を切断状態にすることで、接続線70〜75と接続線76〜81とが接続されないようになる。これにより、接続線70〜75の寄生容量に、接続線76〜81の寄生容量が付加されなくなり、バッファ82〜87の出力端子の寄生容量を大幅に軽減できる。これにより、DST2〜DCLKの通信の高速化を図れ、マイクロコンピュータ22が高いクロック周波数で動作している場合にも、適正なデバッグ環境を提供できるようになる。
【0082】
6.第1の信号からの第2の信号の分離
さて、本実施形態では図10に示すように、マイクロコンピュータ22からの第1の信号のうち、エミュレーションメモリ30の動作に必要な信号を含む第2の信号102が分離され、マイクロコンピュータ22、エミュレーションメモリ30間(プローブ側ボード12、メモリ側ボード14間)で伝達される。
【0083】
即ち、マイクロコンピュータ22から入出力される信号のほとんど全ては、第1の信号100としてプローブ20との間で伝達される。評価時においては図2に示すようにターゲットシステム50のソケット52にプローブ20を接続し、エミュレーションプローブボード10上のマイクロコンピュータ22を用いて、ターゲットシステム50を動作させなければならないからである。
【0084】
しかしながら、マイクロコンピュータ22からの第1の信号100には種々様々な信号が含まれ、第1の信号の形態(信号数、信号の種類)はマイクロコンピュータ22の機種に応じて異なったものになる。例えば第1の信号100には、アドレス、データ、メモリの制御信号などの一般的な信号に加えて、タイマからの信号、入出力ポートからの信号、A/D変換器からの信号などの種々の信号が含まれる。そして、例えばマイクロコンピュータ22がA/D変換器を内蔵しない機種である場合には、第1の信号にはA/D変換器からの信号は含まれなくなる。このように第1の信号100についてその信号の形態を標準化することは難しい。
【0085】
そこで本実施形態では図10に示すように、第1の信号100から、エミュレーションメモリ30の動作に必要な信号を含む第2の信号102を分離して、コネクタ26、28を介してメモリ側ボード14に伝達している。即ち、アドレス、データ、メモリ等の制御のための制御信号など、エミュレーションメモリ30の動作に必要な最低限の信号を第2の信号102に含ませてメモリ側ボード14に伝達している。
【0086】
このようにすれば、第2の信号102の形態(信号数、信号の種類)を、マイクロコンピュータ22の機種に依存しない形態にすることができ、コネクタ26、28の端子の形態を標準化できるようになる。従って、図4にて説明したように、マイクロコンピュータ22の機種が変更されても、メモリ側ボード14として同一(或いはほぼ同一)のものを使用できるようになる。これにより、マイクロコンピュータ22の機種が変更されても、プローブ側ボード12だけを新たに作り直せばよく、エミュレーションプローブボードの低コスト化、設計期間の短縮化等を図れるようになる。
【0087】
7.カスタムチップの搭載
さて、上述したように本実施形態では、エミュレーションメモリ30の動作に必要な信号を含む第2の信号102を第1の信号100から分離して、メモリ側ボード14に伝達している。このような第2の信号102には、アドレス、データ、各種制御信号など、マイクロコンピュータ22が入出力する基本的な信号が含まれることになる。従って、この第2の信号102を用いれば、エミュレーションメモリ30以外にも、マイクロコンピュータ22の制御下で動作可能な各種デバイスを動作させることができる。
【0088】
そこで図11(A)では、第2の信号102で動作可能なカスタムチップ40をメモリ側ボード14に搭載している。即ち、カスタムチップ40の搭載手段をメモリ側ボード14に設けている。
【0089】
即ち、近年、コアとなるマイクロコンピュータとユーザが自身で設計した回路とが組み込まれたASICマイクロコンピュータと呼ばれるものが脚光を浴びている。このようなASICマイクロコンピュータによれば、ユーザの用途に応じた最適なマイクロコンピュータをターゲットシステムに組み込むことが可能となり、ターゲットシステムの商品性の向上、コストの低下等を図れるようになる。
【0090】
そして図11(A)のようにメモリ側ボード14に、ユーザのカスタムチップ40を搭載可能にすれば、ユーザは、自身が設計したカスタムチップ40をマイクロコンピュータ22の制御下で動作させて、その動作が正常か否かを評価できるようになる。そして、正常に動作することを確認したユーザは、図11(B)に示すように、マイクロコンピュータ22の回路105とカスタムチップ40の回路106とから構成されるASICマイクロコンピュータ104をカスタム設計し、ユーザのターゲットシステムに組み込む。
【0091】
図11(A)では、マイクロコンピュータ22とカスタムチップ40とが第2の信号102で接続されるため、マイクロコンピュータ22とカスタムチップ40とを連携させて動作させながら、その動作が正常か否かを評価できる。従って、この評価により正常動作が確認されたカスタムチップ40の回路106を組み込んだASICマイクロコンピュータ104は、ユーザのターゲットシステムにおいても正常に動作することを期待できるようになる。これにより、ユーザは、短い開発期間でASICマイクロコンピュータ104をカスタム設計できるようになり、ターゲットシステムの開発期間の短縮化、コストの低下等を図れるようになる。
【0092】
なおメモリ側ボード14に搭載するカスタムチップ40としては、FPGA(Field Programmable Gate Array)などを採用できる。そして、カスタムチップ40としてFPGAを用いる場合には、FPGA(カスタムチップ)40にダウンロードするロジック回路のデータを記憶するコンフィグROM42についてもメモリ側ボード14に搭載することが望ましい。このようなコンフィグROM42を搭載すれば、電源の立ち上げ時にFPGA40にロジック回路のデータをダウンロードする手間を省くことができる。
【0093】
また図11(A)では、FPGA40とICE本体(或いはホストシステム)との間のインターフェース44と、FPGA40とターゲットシステムとの間のインターフェース46がメモリ側ボード14に設けられている。
【0094】
ここで、インターフェース44は、JTAGなどに準拠した高速のシリアルインターフェースであり、FPGA40にダウンロードするロジック回路のデータ等を通信するためのものである。このようなインターフェース44を設ければ、ユーザは、自身が試したいロジック回路のデータを自由に書き換えることが可能になり、ユーザの利便性を向上できる。
【0095】
また、インターフェース46は、FPGA40の入出力信号をターゲットシステムに伝達するためのものである。例えば、ターゲットシステムにLCDが設けられており、FPGA40の回路がこのLCDの表示制御回路であった場合を考える。この場合には、LCDの表示制御信号がインターフェース46を介してターゲットシステムに伝達されることになる。このようなインターフェース46を設ければ、ASICマイクロコンピュータ104をターゲットシステムに組み込んだ場合のASICマイクロコンピュータ104と周辺のデバイスとの連係動作を、組み込み前に評価、検証できるようになる。これにより、ASICマイクロコンピュータ104の設計の効率化、設計期間の短縮化を図れるようになる。
【0096】
8.IROMエミュレーションメモリへのアクセスの高速化
さて、前述したように、マイクロコンピュータの内部ROMをエミュレーションするIROMエミュレーションメモリからの命令のフェッチ及びデコードは、1クロックサイクル内で完了しなければならない。このため、IROMエミュレーションメモリへのメモリアクセスを高速化する必要があるという課題がある。
【0097】
そこで、このような課題を達成するために図12では、マイクロコンピュータ22、EROMエミュレーションメモリ34間では、バッファ108、109を介してアドレス、データ(第2の信号)を伝達させる一方で、マイクロコンピュータ22、IROMエミュレーションメモリ32間では、バッファを介さずにダイレクトにアドレス、データを伝達させる。
【0098】
このようにすることで、マイクロコンピュータ22、IROMエミュレーションメモリ32間の信号伝達では、バッファ108、109による信号遅延が生じなくなる。このため、IROMエミュレーションメモリ32へのアクセスを高速化できるようになる。
【0099】
なお、マイクロコンピュータ22がIROMエミュレーションメモリ32にアクセスしている時には、制御信号CNTBを用いてバッファ108、109を非導通状態にする。一方、マイクロコンピュータ22がEROMエミュレーションメモリ34にアクセスしている時には、制御信号CNTBを用いてバッファ108、109を導通状態にすると共に、制御信号CNT2を用いてIROMエミュレーションメモリ32の動作を抑止する。
【0100】
なお、図12の手法は、図6に示すようにIROMエミュレーションメモリ32をプローブ側ボード12に搭載した場合にも適用できる。
【0101】
9.マイクロコンピュータの構成
さて、マイクロコンピュータにおいては、通常、図13(A)に示すような量産用の製品チップ700以外にも、図13(B)に示すようなプログラムやシステム開発用の評価チップ710が作成される。そして、この評価チップ710では、外部メモリ706が接続される通常の外部アドレスバス702、外部データバス704以外にも、エミュレーションメモリ716に専用のアドレスバス712、データバス714が設けられる。
【0102】
しかしながら、このようにエミュレーションメモリ716に専用のアドレスバス712、データバス714を設けると、評価チップ710の端子(ピン)数は、製品チップ700の端子数に比べて非常に多くなってしまう。このため、評価チップ710を実装できるパッケージの入手が困難になったり、製品チップ700と評価チップ710との端子の整合性をとるのが煩雑になるという問題が生じる。また、評価チップ710では正常に動作していたプログラムが、製品チップ700では動作しなくなるという問題も生じる。
【0103】
このような問題を解決するために、図14のマイクロコンピュータ22では、以下に説明するような工夫を施している。
【0104】
図14のマイクロコンピュータ22は、CPU(広義にはプロセッサ)112、バス制御部(BCU)114、内部ROM(広義には内部メモリ)116、エミュレーション指示部118、メモリ制御部120を含む。また、マイクロコンピュータ22の外部バス(外部バス端子)128には、EROMエミュレーションメモリ34(製品時においては外部メモリ)や、IROMエミュレーションメモリ32が接続可能になっている。なお、外部バス128に、ゲートアレイなどの他の外部デバイスを接続してもよい。
【0105】
ここで、CPU112は、命令の実行処理を行うものであり、CPU112のCPUバス122はバス制御部114に接続される。またCPU112からのステータス信号STもバス制御部114に出力される。
【0106】
内部ROM116は、プログラムやデータなどの情報を記憶するものであり、内部ROM116の内部ROMバス126はバス制御部114に接続される。なお、評価時等においては、内部ROM116をマイクロコンピュータ22に内蔵させないようにしもよい。
【0107】
エミュレーション指示部118は、エミュレーションモードがオンの時に、エミュレーション指示信号EMをアクティブにし、エミュレーションの指示をバス制御部114に対して行うものである。この場合、エミュレーションモードのオン、オフは、マイクロコンピュータ22にモード選択端子を設け、このモード選択端子を制御することにより切り替えてもよいし、マイクロコンピュータ22にモード選択レジスタを設け、このモード選択レジスタに記憶する情報を制御することにより切り替えてもよい。
【0108】
メモリ制御部120は、EROMエミュレーションメモリ34、IROMエミュレーションメモリ32、内部ROM116を制御するための各種の制御信号(チップイネーブル信号、メモリリード信号等)CNT1、CNT2、CNT3を出力する。特に、図14では、同じ外部バス128に接続されるEROMエミュレーションメモリ34とIROMエミュレーションメモリ32に対して、互いに別系統の制御信号CNT1、CNT2を出力している点に特徴がある。
【0109】
バス制御部114は、CPUバス122、内部ROMバス126、外部バス128などの制御を行うためのものである。バス制御部114は、CPU112からのアドレスやステータス信号STに基づいて、内部ROM116の内部ROMバス126を、CPUバス122に接続したり、EROMエミュレーションメモリ34、IROMエミュレーションメモリ32が接続される外部バス128を、CPUバス122に接続したりする等のバス制御を行う。
【0110】
そして、バス制御部114は、エミュレーション指示部118からの信号EMによりエミュレーションモード(内部ROM116をIROMエミュレーションメモリ32でエミュレーションするモード)がオンであると指示された場合には、CPU112の内部ROM116へのアクセスを、外部バス128を介したIROMエミュレーションメモリ32へのアクセスに切り替える。即ち、CPUバス122を、内部ROMバス126ではなく、外部バス128に接続し、CPUバス122及び内部ROMバス126を介した内部ROM116へのCPU112のアクセスを、CPUバス122及び外部バス128を介したIROMエミュレーションメモリ32へのアクセスに切り替える。
【0111】
このようにすることで、CPU112は、内部ROM116に格納されるプログラム(或いはデータ)ではなく、IROMエミュレーションメモリ32に格納されるプログラムに基づいて動作するようになる。従って、ユーザは、プログラムが完成するまでは開発途中のプログラムをIROMエミュレーションメモリ32に随時ダウンロードしてプログラム開発を行うことができる。そして、開発が終了した後に完成したプログラムを内部ROM116に記憶させて、最終的な製品チップとすることが可能になる。
【0112】
そして、図14のマイクロコンピュータ22では、製品時においては外部メモリへのアクセスに用いられる外部バス128を用いて(図13(A)参照)、IROMエミュレーションメモリ32へアクセスしている。従って、図13(B)に示すようなエミュレーションメモリ716に専用のアドレスバス712、データバス714を設ける必要がない。このため、製品チップと評価チップの端子(ピン)数を同一にできるようになる。従って、製品チップをそのまま評価チップとして使えるようになり、製品の低コスト化を図れるようになる。
【0113】
また図14のマイクロコンピュータ22によれば、評価チップ用の別パッケージを用意したり、製品チップと評価チップの端子の整合性をとる等の手間を省くことができる。
【0114】
また図14のマイクロコンピュータ22によれば、製品チップをそのまま評価チップとして使用できるため、実動作時と同じ環境、信号のタイミングでプログラム開発を行えるようになる。この結果、製品チップの信頼性を向上できると共に、開発期間の短縮化、製品コストの低減化を図れるようになる。
【0115】
なお、CPU112の内部ROM116へのアクセスを、IROMエミュレーションメモリ32へのアクセスに切り替える場合、内部ROM116へのアクセスは、内部ROM116が割り当てられるメモリ空間のエリアへのアクセスであれば十分である。例えば評価時等において内部ROM116をマイクロコンピュータ22に内蔵させない場合を考える。この場合には、内部ROM116は物理的には存在しないため、CPU112が内部ROM116へアクセスしても、そのアクセスは、内部ROM116が割り当てられたメモリ空間のエリアへのアクセスにとどまることになる。
【0116】
さて、図14のように、外部バス128を用いてIROMエミュレーションメモリ32にアクセスするようにすると、次のような問題が生じる。
【0117】
即ち、内部ROM116に格納される命令(プログラム)のフェッチ及びデコードは、1クロックサイクル内で完了する必要がある。従って、エミュレーションモード時には、IROMエミュレーションメモリ32の命令を1クロックサイクル内でフェッチ及びデコードしなければならなくなる。
【0118】
ところが、外部バス128は、図13(B)と異なり、IROMエミュレーションメモリ32に専用のバスではない。従って、外部メモリ(製品時)やEROMエミュレーションメモリ34(評価時)と全く同様にIROMエミュレーションメモリ32を制御しようとすると、1クロックサイクル内での命令のフェッチ及びデコードを実現できなくなる問題が生じる。特に、クロック周波数が高くなると、この問題は更に深刻になる。
【0119】
そこで図14では、EROMエミュレーションメモリ34を制御するための制御信号CNT1とは別系統の制御信号CNT2を用意し、このCNT2を用いてIROMエミュレーションメモリ32からの読み出し動作等を制御するようにしている。より具体的には、CNT1に含まれるメモリリード信号よりも早いタイミングでCNT2に含まれるメモリリード信号がアクティブになるように信号を制御している。このようにすることで、外部バス128を用いてIROMエミュレーションメモリ32にアクセスするようにした場合にも、1クロックサイクル内で命令のフェッチ及びデコードを完了できるようになる。これにより、IROMエミュレーションメモリ32を用いたプログラム開発を、実動作時のクロック周波数で行うことが容易になる。
【0120】
図15に、マイクロコンピュータ22の詳細な構成例を示す。
【0121】
ここではCPU112は、ハーバードアーキテクチャのバス構成を採用している。CPU112の命令用アドレスバス150、データ用アドレスバス152は、マルチプレクサ140に入力される。マルチプレクサ140は、CPU112からの命令/データ切り替え信号DIS(ステータス信号の1つ)に基づいて、命令用アドレスバス150からのアドレスと、データ用アドレスバス152からのアドレスのいずれか選択して、外部アドレスバス154に出力する。
【0122】
CPU112のデータ出力バス158は、入出力パッドセル148を介して外部データバス156に接続される。また、CPU112のデータ入力バス160は、命令/データ切り替え部142、データバス162、入出力パッドセル148を介して、外部データバス156に接続される。
【0123】
CPU112の命令フェッチ用バス164は、内部ROM116に接続されると共に、命令/データ切り替え部142、データバス162、入出力パッドセル148を介して、外部データバス156に接続される。
【0124】
メモリ制御部20は、第1のチップイネーブル信号CE1、第1のメモリリード信号RD1をEROMエミュレーションメモリ34に出力する。また、CE1、RD1とは別系統の第2のチップイネーブル信号CE2、第2のメモリリードRD2をIROMエミュレーションメモリ32に出力する。また第3のチップイネーブル信号CE3、第3のメモリリード信号RD3を内部ROM116に出力する。即ち、メモリ制御部120は、これらのCE1、RD1、CE2、RD2、CE3、RD3を用いて、EROMエミュレーションメモリ34、IROMエミュレーションメモリ32、内部ROM116からのリード動作等を制御することになる。
【0125】
モード選択端子MT、モード選択レジスタ144、OR回路146は、図14のエミュレーション指示部118に相当するものである。即ち端子MTがHレベルになる、或いは、モード選択レジスタ144にHレベルが記憶されると、エミュレーションモード指示信号EMがHレベルになり、エミュレーションモードのためのバス切り替え制御が行われるようになる。
【0126】
次に、図15のマイクロコンピュータ22の命令のフェッチ動作について簡単に説明する。
【0127】
命令フェッチの場合には、命令/データ切り替え信号DISが命令を指示するようになり、マルチプレクサ140が命令用アドレスバス150を選択する。これにより、外部アドレスバス154及び内部ROMアドレスバス155には、命令用のアドレスが出力される。即ち、IROMエミュレーションメモリ32、内部ROM116には共に、命令用アドレスが入力されることになる。
【0128】
この時、モード選択レジスタ144にLレベルが記憶され、且つ端子MTもLレベルに設定されていると、エミュレーションモードがオフになり、信号EMがLレベルになる。また命令フェッチであるため、CPU112からの信号READ(ステータス信号の1つ)もアクティブになる。これにより、メモリ制御部120は、アドレスバス155からのアドレスをデコードし、内部ROMエリアのアドレスであれば、内部ROM116への第3のチップイネーブル信号CE3、第3のメモリリード信号RD3をアクティブにする。これにより、内部ROM116からの命令が、命令フェッチ用バス164を介してCPU112に読み出されるようになる。即ちCPU112は、内部ROM116に記憶されている命令をフェッチして実行することになる。
【0129】
一方、モード選択レジスタ144にHレベルが記憶される、或いは端子MTがHレベルに設定されると、エミュレーションモードがオンになり、信号EMがHレベルになる。すると、メモリ制御部120は、今度は、CE3、RD3ではなく、IROMエミュレーションメモリ32への第2のチップイネーブル信号CE2、第2のメモリリード信号RD2をアクティブにする。また、命令フェッチであるため、信号DISが命令を指示するようになると共に信号READがアクティブになり、命令/データ切り替え部142が、データ入力バス160ではなく、命令フェッチ用バス164を選択するようになる。以上により、IROMエミュレーションメモリ32からの命令が、外部データバス156、入出力パッドセル148、データバス162、命令/データ切り替え部142、命令フェッチ用バス164を介して、CPU112に読み出されるようになる。即ちCPU112は、内部ROM116ではなくIROMエミュレーションメモリ32に記憶されている命令をフェッチして実行するようになる。
【0130】
なお、このようにIROMエミュレーションメモリ32の命令が読み出されている間は、内部ROM116が内蔵するトライステートバッファ117の出力がトライステート状態になる。これにより、命令フェッチ用バス164でのデータの衝突が防止される。
【0131】
以上のように図15のマイクロコンピュータ22では、CPU112の命令フェッチ時にエミュレーションモードがオフ(信号EMがLレベル)の場合には、通常通り、内部ROM116からの命令が命令用フェッチバス164を介してCPU112にフェッチされて実行される。一方、CPU112の命令フェッチ時にエミュレーションモードがオン(信号EMがHレベル)の場合には、内部ROM116ではなくIROMエミュレーションメモリ32からの命令が外部データバス156を介してCPU112にフェッチされて実行されるようになる。
【0132】
従って、プログラムの完成前においてはユーザは、端子MT又はモード選択レジスタ144を用いてエミュレーションモードをオンにし、IROMエミュレーションメモリ32に開発途中のプログラムを随時ダウンロードしながらプログラム開発を行う。そして、プログラムの開発が完了すると、ユーザは、完成後のプログラムを内部ROM116に記憶させる(マスクパターンを作成する)。そして、端子MT又はモード選択レジスタ144を用いてエミュレーションモードをオフにする。これにより、内部ROM116からの命令に基づいてCPU112が動作する製品チップが完成する。
【0133】
そして図15のマイクロコンピュータ22では、IROMエミュレーションメモリ32に専用のアドレスバス、データバスは設けられない。従って、IROMエミュレーションメモリ32からの命令(プログラム)でCPU112が動作する評価チップと、内部ROM116からの命令でCPU112に動作する製品チップとが、端子数、パッドのレイアウト配置、信号線の引き回し等が異ならない同一チップとなる。このため、製品チップそのものを用いてプログラムを開発できるようになる。この結果、評価時と製品時(実動作時)とで動作環境、信号のタイミングが異なることに起因して、評価時には正常に動作していたが製品時には動作しなくなる等の問題を効果的に解決できるようになる。
【0134】
さて、以上のように外部アドレスバス154、外部データバス156を用いてIROMエミュレーションメモリ32にアクセスする手法を採用することで、製品チップと評価チップを同一チップにできる利点を得ることができる。しかしながら、その反面、この手法によると、IROMエミュレーションメモリ32からの命令の読み出しが間に合わなくなるという問題が生じる。
【0135】
即ち、EROMエミュレーションメモリ34(評価時)や外部メモリ(製品時)からの情報の読み出しについては、通常、時間的な余裕が十分にある。これに対して、CPU112による命令のフェッチ及びデコードは1クロックサイクル内で完了する必要があるため、IROMエミュレーションメモリ32からの命令の読み出しについては時間的な余裕がない。
【0136】
そこで図15では、EROMエミュレーションメモリ34用のCE1、RD1とは別系統(或いは外部メモリ用のチップイネーブル信号、メモリリード信号とは別系統)のチップイネーブル信号CE2、メモリリード信号RD2をメモリ制御部120に出力させている。これにより、外部アドレスバス154、外部データバス156をEROMエミュレーションメモリ34とIROMエミュレーションメモリ32で共用しながらも、IROMエミュレーションメモリ32からの命令のフェッチ及びデコードを、1クロックサイクル内で完了できるようになる。以上のことについて図16の信号波形図を用いて詳細に説明する。
【0137】
図16では、CPU112が次のような命令を実行する。
・命令(1) ld %r2,0x00
・命令(2) ld %r1,[%r9]
・命令(3) add %r4,%r1
・命令(4) sub %r5,%r1
上記において、命令(1)は、CPU112の汎用レジスタr2にデータ0x00をロードするという命令である。命令(2)は、汎用レジスタr9に格納されているアドレスであるEROMエミュレーションメモリ34のアドレスからのデータを、汎用レジスタr1にロードする命令である。即ちEROMエミュレーションメモリ34からのデータを汎用レジスタr1にロードする命令である。命令(3)は、汎用レジスタr4のデータとr1のデータを加算する命令である。命令(4)は、汎用レジスタr5のデータからr1のデータを減算する命令である。
【0138】
これらの命令(1)、(2)、(3)、(4)は、図16のB1に示すようにパイプライン処理により実行される。なおB1において、Fは命令のフェッチを、Dは命令のデコードを、Rはレジスタのリードを、Aはアドレスの計算を、Eは命令の実行を、Wはレジスタへのライトを表す。
【0139】
図16のB2に示すBCLKは、バスサイクルを決めるバスクロックであり、ここでは、BCLKはCPU112の動作クロックにもなっている。
【0140】
図16ではB3に示すように、まずIROMエミュレーションメモリ32からの命令の読み出しが行われ、次に、EROMエミュレーションメモリ34からのデータの読み出しが行われ、次に、IROMエミュレーションメモリ32からの命令の読み出しが行われる。
【0141】
即ち、図16のB4、B5、B6に示すように、命令(1)、(2)、(3)をIROMエミュレーションメモリ32から読み出すためのアドレスが外部アドレスバス154に出力される。これらのアドレスは、CPU112から命令用アドレスバス150、マルチプレクサ140を介して外部アドレスバス154に出力される。これにより、B7、B8、B9に示すように、各アドレスに対応する命令(命令データ)がIROMエミュレーションメモリ32から読み出され、外部データバス156に出力される。そして、これらの命令は、外部データバス156から入出力パッドセル148、データバス162、命令/データ切り替え部142、命令フェッチ用バス164を介して、CPU112にフェッチされデコードされる。
【0142】
また、図16のB10では、EROMエミュレーションメモリ34への読み出しアドレスが、CPU112からデータ用アドレスバス152、マルチプレクサ140を介して外部アドレスバス154に出力される。このアドレスは、上記命令(2)により指定されるアドレス[%r9]である。これにより、B11に示すように、EROMエミュレーションメモリ34からのデータが外部データバス156に出力され、入出力パッドセル148、データバス162、命令/データ切り替え部142、データ入力バス160を介してCPU112に読み出される。
【0143】
また、図16のB12では、命令(4)をIROMエミュレーションメモリ32から読み出すためのアドレスが外部アドレスバス154に出力される。これによりB13に示すように、このアドレスに対応する命令がIROMエミュレーションメモリ32から外部データバス156に出力される。
【0144】
EROMエミュレーションメモリ34からデータを読み出す場合には、図16のB14、B15に示すように第1のチップイネーブル信号CE1、第1のメモリリード信号RD1をアクティブにする(Lレベルにする)。一方、IROMエミュレーションメモリ32から命令を読み出す場合には、B16〜B21に示すように、第2のチップイネーブル信号CE2、第2のメモリリード信号RD2をアクティブにする。
【0145】
この時、B15に示すように、RD1はBCLKの立ち下がりに同期してアクティブになる。一方、B18〜B21に示すように、RD2は、BCLKの立ち上がりに同期してアクティブになる。より具体的には、BCLKの立ち上がりから所与の遅延時間(遅延素子における遅延時間)TD経過後にアクティブになる。即ち、RD2は、RD1よりも早いタイミングでアクティブになるように制御される。
【0146】
このようにRD2を早いタイミングアクティブにすることで、CPU112による命令のフェッチ(F)及びデコード(D)を、1クロックサイクル内で完了できるようになる。
【0147】
即ち、EROMエミュレーションメモリ34に使用するRD1を用いてIROMエミュレーションメモリ32からの命令の読み出しを行うと、RD1はBCLKの立ち下がりに同期してアクティブになるため、CPU112による命令のフェッチ及びデコードが1クロックサイクル内で完了できなくなる問題が生じる。特に、BCLKのクロック周波数が高くなった場合には、この問題が生じる可能性は更に高まる。
【0148】
この場合、例えば、評価時、即ちIROMエミュレーションメモリ32からの命令の読み出し時においては、BCLKのクロック周波数を低くするようにすれば、上記問題を解消できる。しかしながら、これでは、実動作時のクロック周波数とプログラム開発時のクロック周波数が異なることになってしまい、プログラム開発時には正常に動作していたプログラムが実動作時には正常に動作しなくなるという問題を招く。従って、製品チップと評価チップを同一チップにできるという利点が、実質的に失われてしまう。
【0149】
これに対して、図16では、RD1と別系統のRD2を用意し、B18〜B21に示すようにRD2を早いタイミングでアクティブにしているため、IROMエミュレーションメモリ32からの命令のフェッチ及びデコードを1クロックサイクル内で適正に完了できるようになる。従って、実動作時と同一のクロック周波数でプログラム開発をできるようになり、プログラム開発が終了し完成後のプログラムを内部ROM116に記憶させた場合にも、問題なくプログラムが正常に動作するようになる。従って、外部アドレスバス154、外部データバス156の共用により製品チップと評価チップを同一チップにできるというマイクロコンピュータ22の利点を、より生かせるようになる。
【0150】
なお、図16のB22では、EROMエミュレーションメモリ34からのデータの読み出しにウェイトが挿入されているため、CPU112のパイプライン処理がストールしている。即ち、外部アドレスバス154、外部データバス156には、読み出しや書き込みスピードが異なる種々のEROMエミュレーションメモリ34(RAM、フラッシュメモリ等)が接続される可能性がある。従って、信号CE1、RD1がアクティブになる期間に対してはウェイトの挿入が可能になっており、読み出しや書き込みスピードが異なる種々のEROMエミュレーションメモリ34に対応できるようになっている。
【0151】
一方、信号CE2、RD2が出力されるIROMエミュレーションメモリ32については、上述したように1クロックサイクルで命令を読み出す必要がある。従って、CE2、RD2がアクティブになる期間に対しては、CE1、RD1とは異なり、ウェイトの挿入は行われないことになる。
【0152】
なお、本発明は本実施形態に限定されず、本発明の要旨の範囲内で種々の変形実施が可能である。
【0153】
例えば、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の1の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【0154】
また本発明では、図3に示すようにプローブ側ボードとメモリ側ボードとを分離可能な構成とすることが特に望ましいが、分離可能な構成にしないことも可能である。
【0155】
また、高速のシリアルインターフェースを介してデバッグツールとの間で通信されるデバッグ情報も、本実施形態で説明したものに限定されるものではない。
【0156】
またプローブ側ボードやメモリ側ボードに設けられるコネクタも、図5で説明したものが特に望ましいが、これに限定されるものではない。
【0157】
またプローブ側ボードに内部メモリ用エミュレーションメモリを設ける場合の実装手法や配線接続も本実施形態で説明したものが特に望ましいが、これに限定されるものではない。
【0158】
またメモリ側ボードに搭載されるカスタムチップとしてはFPGAが特に望ましいが、これに限定されるものではない。
【0159】
また、外部メモリ用エミュレーションメモリを制御するための第1の制御信号や、内部メモリ用エミュレーションメモリを制御するための第2の制御信号も、図15、図16で説明したような信号が特に望ましいが、これに限定されるものではない。
【図面の簡単な説明】
【図1】図1(A)、(B)は、CPU置き換え型ICEと、従来のオンチップデバッグ型ICEの問題点について説明するための図である。
【図2】本実施形態の基本構成について説明するための図である。
【図3】エミュレーションプローブボードをプローブ側ボードとメモリ側ボードとに分離可能にする手法について説明するための図である。
【図4】プローブ側ボードのプローブの端子の形態についてはカスタマイズ可能にすると共に、メモリ側ボードのコネクタの端子の形態を標準化する手法について説明するための図である。
【図5】フラットケーブルが接続可能なコネクタをメモリ側ボードに併設する手法について説明するための図である。
【図6】プローブ側ボードにIROMエミュレーションメモリを設ける手法について説明するための図である。
【図7】IROMエミュレーションメモリの制御信号を伝達する接続線にジャンパを設ける手法について説明するための図である。
【図8】2つのIROMエミュレーションメモリをサンドイッチ構造で両面実装する手法について説明するための図である。
【図9】シリアル通信されるデバッグ情報を伝達する接続線にジャンパを設ける手法について説明するための図である。
【図10】マイクロコンピュータからの第1の信号のうち第2の信号を分離してメモリ側ボードに伝達する手法について説明するための図である。
【図11】図11(A)、(B)は、メモリ側ボードにカスタムチップを搭載する手法について説明するための図である。
【図12】アドレス、データをバッファを介さずにIROMエミュレーションメモリに伝達する手法について説明するための図である。
【図13】図13(A)、(B)は、製品チップと評価チップを別チップにする従来の手法について説明するための図である。
【図14】マイクロコンピュータの構成例を示すブロック図である。
【図15】マイクロコンピュータの更に詳細な構成例を示すブロック図である。
【図16】マイクロコンピュータの動作を説明するための信号波形図である。
【符号の説明】
10 エミュレーションプローブボード、12 プローブ側ボード
14 メモリ側ボード、20 プローブ、22 マイクロコンピュータ
24 シリアルインターフェース、26 コネクタ、27 フラットケーブル
28 コネクタ、29 コネクタ、30 エミュレーションメモリ
32、32−1、32−2 IROMエミュレーションメモリ
34 EROMエミュレーションメモリ、40 カスタムチップ(FPGA)
42 コンフィグROM、44 インターフェース、46 インターフェース
50 ターゲットシステム、52 ソケット、54 ICE本体
56 ホストシステム、60〜63 接続線、64〜67 ジャンパ
68、69 バッファ、70〜81 接続線、82〜87 バッファ
88〜93 接続線、94〜99 ジャンパ、100 第1の信号
102 第2の信号、104 ASICマイクロコンピュータ
105 マイクロコンピュータの回路、106 カスタムチップの回路
108、108 バッファ[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an emulation probe board (substrate) for supporting development of a target system, and a debugging system using the same.
[0002]
BACKGROUND ART AND PROBLEMS TO BE SOLVED BY THE INVENTION
2. Description of the Related Art In recent years, there has been an increasing demand for microcomputers that are incorporated in electronic devices such as home game machines, car navigation systems, printers, portable information terminals, and mobile phones to realize advanced information processing. Such a built-in microcomputer is usually mounted on a user board called a target system. A development support tool called ICE (In-Circuit Emulator) is widely used to support the development of the target system.
[0003]
Conventionally, as such an ICE, an ICE called a CPU replacement type as shown in FIG.
[0004]
In this CPU replacement type ICE, the
[0005]
However, the CPU replacement type ICE has a drawback that emulation at a high clock frequency is difficult due to the existence of the flat cable 308 (for example, the limit is about 33 MHZ). For this reason, the system operating environment (signal timing) differs between an evaluation in which the
[0006]
Further, this CPU replacement type ICE has a problem that if the
[0007]
On the other hand, an ICE called an on-chip debug type has been spotlighted in recent years to solve such a disadvantage of the CPU replacement type ICE.
[0008]
In the on-chip debug type ICE, an on-
[0009]
According to the on-chip debug type ICE, evaluation (debugging) of the
[0010]
However, it has been found that the conventional on-chip debug ICE has the following problems regarding the
[0011]
The
[0012]
Therefore, the
[0013]
However, in the conventional on-chip debug type ICE, the
[0014]
When the
(1) It is necessary for the user to mount the emulation memory in the target system, design a control circuit for the emulation memory, and the like, thereby increasing the user's labor. This causes a problem such as a prolonged development period of the target system. In particular, when the debugging method is changed and the access method to the emulation memory is changed, the wiring pattern of the target system must be changed, further increasing the burden on the user.
(2) An emulation memory, which should be unnecessary, must be mounted on a target system for a product, which leads to an increase in cost of the target system.
(3) In order to avoid the problem (2), the user designs a target system for a product that does not have an emulation memory, separately from an evaluation target system that has an emulation memory. There is a need. However, this causes problems such as a longer development period of the target system and an increase in product cost. In addition, since the target system for evaluation and the target system for product are designed separately, the target system for product does not operate normally even though the target system for evaluation operates normally. And other problems also occur.
[0015]
The present invention has been made in view of the above technical problems, and an object of the present invention is to use an on-chip debugging method and eliminate the need for emulation memory to be mounted on a target system. An object of the present invention is to provide an emulation probe board which can improve the convenience of the above and a debugging system using the same.
[0016]
[Means for Solving the Problems]
In order to solve the above problems, the present invention provides an emulation probe board for supporting development of a target system in which a microcomputer having an on-chip debug circuit is incorporated, wherein the target is a mounting means for mounting the microcomputer. A probe for connecting to a first mounting means of the system, a second mounting means for mounting the microcomputer, and a connection between the microcomputer mounted on the second mounting means and the outside, A first interface for serially communicating debug information for the on-chip debug circuit; and a third mounting means for mounting an emulation memory for emulating a memory used in the target system. It is characterized by the following.
[0017]
According to the present invention, at the time of evaluation (debugging) of the target system or the like, the probe is connected to the first mounting means (for example, a socket) of the target system. Thus, the target system can be operated using the microcomputer mounted on the emulation probe board. At this time, the debug information used for the on-chip debug circuit built in the microcomputer is serially communicated with the outside (for example, the ICE main unit, the host system) using the first interface. Therefore, the evaluation (debugging) work by the on-chip debugging method can be performed in a state where it can be considered that the microcomputer is substantially mounted on the target system.
[0018]
According to the present invention, the emulation memory is mounted on the emulation probe board, and it is not necessary to mount the emulation memory on the target system. Therefore, the burden on the user can be reduced, and the need to prepare a target system for evaluation separately from the target system for products can be eliminated. As a result, the development period of the target system can be shortened, the cost can be reduced, the reliability can be improved, and the like.
[0019]
The present invention also provides a probe-side board provided with at least the probe, the second mounting means for mounting the microcomputer, a first connector, and the third board for mounting the emulation memory. And a memory-side board provided with at least one second connector connected to the first connector. By doing so, even when the model of the microcomputer is changed, only the probe-side board can be changed and the same board can be used as the memory-side board. The first interface for communicating debug information is desirably provided on a probe-side board on which a microcomputer is mounted in order to realize high-speed communication.
[0020]
Further, the present invention is characterized in that the form of the terminals of the probe on the probe-side board can be customized, and the form of the terminals of the second connector on the memory-side board is standardized. In this way, even if the model of the microcomputer is changed and the form of the probe terminals (number of terminals, terminal arrangement, signals assigned to each terminal, etc.) is changed, the same memory-side board is used. it can. Therefore, the development period of the emulation probe board can be shortened and the cost can be reduced.
[0021]
The present invention also provides a third connector for directly connecting to the first connector of the probe-side board, and a fourth connector for connecting to the first connector of the probe-side board via a cable. A connector is provided on the memory-side board as the second connector. In this way, the emulation probe board can be easily connected to a target system that is difficult to connect to the emulation probe board because there is no space.
[0022]
Further, according to the present invention, the emulation memory includes an emulation memory for an internal memory for emulating an internal memory of the microcomputer, and an emulation memory for an external memory for emulating an external memory of the microcomputer. Fourth mounting means for mounting a memory emulation memory is provided on the probe-side board. This makes it possible to speed up access to the internal memory emulation memory by the microcomputer. Thus, for example, when an instruction (program) is stored in the internal memory emulation memory, the microcomputer can complete the fetch and decode of the instruction within one clock cycle. As a result, the microcomputer can be operated at the same high clock frequency as in the product, and the target system can be evaluated.
[0023]
The present invention also provides a first connection line connecting the microcomputer and the emulation memory for the internal memory and transmitting a control signal for controlling the emulation memory for the internal memory; A second connection line for connecting to the first connector and transmitting the control signal is provided, and first disconnection means for disconnecting the connection by the second connection line is provided. And With this configuration, the parasitic capacitance of the first connection line can be reduced, and the speed of access to the internal memory emulation memory by the microcomputer can be further increased.
[0024]
Further, in the present invention, the emulation memory for an internal memory includes first and second emulation memories for an internal memory, and fifth mounting means for mounting the first emulation memory for an internal memory may include a probe board. And a sixth mounting means for mounting the second internal memory emulation memory is provided on the second surface of the probe-side board. With this configuration, the wiring pattern length between the microcomputer and the first internal memory emulation memory and the wiring pattern length between the microcomputer and the second internal memory emulation memory are made the same or almost the same. Becomes possible. This allows the internal memory emulation memory to operate properly even during high-speed access to the internal memory emulation memory.
[0025]
Further, the present invention provides a third connection line connecting the microcomputer and the first interface and transmitting the debug information, and a fourth connection line connecting the third connection line and the probe. A connection line and a second disconnecting unit for disconnecting the connection by the fourth connection line are provided. By doing so, the parasitic capacitance parasitic on the third connection line can be reduced, and high-speed serial communication of debug information via the first interface can be realized.
[0026]
Further, according to the present invention, a second signal including a signal necessary for the operation of the emulation memory among the first signals from the microcomputer is transmitted between the microcomputer and the emulation memory. . This makes it possible to standardize the form of the second signal (the number of signals, the type of signal, etc.). When the emulation probe board is separated into the probe side board and the memory side board, the second signal is transmitted to the probe side board via the first connector of the probe side board and the second connector of the memory side board. (Microcomputer) and the memory side board (emulation memory).
[0027]
Further, the present invention is characterized in that a seventh mounting means is provided for mounting a custom chip operable by the second signal. This makes it possible to operate the custom chip under the control of the microcomputer using the second signal. Then, after the evaluation of the custom chip, the user can design the ASIC microcomputer by integrating the circuit of the custom chip and the circuit of the microcomputer into one chip.
[0028]
Further, in the present invention, at least one of a second interface serving as an interface between the custom chip and the outside and a third interface serving as an interface between the custom chip and the target system are provided. Features. By doing so, it becomes possible to download data of a circuit constituting the custom chip, operate the target system or a device mounted on the target system using input / output signals from the custom chip, and so on. Convenience can be improved.
[0029]
Further, according to the present invention, the emulation memory includes an emulation memory for an internal memory for emulating an internal memory of the microcomputer, and an emulation memory for an external memory for emulating an external memory of the microcomputer. The second signal is transmitted between the computer and the emulation memory for external memory via a given buffer, and the second signal is transmitted between the microcomputer and the emulation memory for internal memory without passing through the buffer. It is characterized by being transmitted. This makes it possible to speed up access to the internal memory emulation memory by the microcomputer.
[0030]
Further, according to the present invention, the emulation memory includes an emulation memory for an internal memory for emulating an internal memory of the microcomputer, and an emulation memory for an external memory for emulating an external memory of the microcomputer. A second control signal of a different system from the first control signal for controlling the memory emulation memory is provided to the internal memory emulation memory. This makes it possible to control the internal memory emulation memory with a second control signal of a different system from the first control signal for controlling the external memory emulation memory. This makes it possible to realize proper access to the emulation memory for the internal memory.
[0031]
Further, the present invention is characterized in that the second memory read signal included in the second control signal becomes active earlier than the first memory read signal included in the first control signal. This makes it possible to easily cope with such a restriction, for example, when there is a restriction that the microcomputer must fetch and decode the instruction stored in the internal memory emulation memory in one clock cycle. Become like
[0032]
Further, the debugging system according to the present invention includes any one of the above-described emulation probe boards, the microcomputer mounted on the emulation probe board, the emulation memory mounted on the emulation probe board, and the first interface. And a debug tool through which debug information is communicated.
[0033]
ADVANTAGE OF THE INVENTION According to this invention, while improving the user's convenience, it becomes possible to provide the user with the debugging system which can shorten the development period of a target system and can reduce cost.
[0034]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the drawings.
[0035]
1. Basic configuration
FIG. 2 shows a basic configuration of an emulation probe board (emulation POD (Probe Of Device)) of the present embodiment, and an overall configuration of a debugging system using the emulation probe board.
[0036]
The
[0037]
Here, the
[0038]
The
[0039]
The
[0040]
The serial interface (I / F) 24 is used for high-speed serial communication of debug information for the on-chip debug circuit built in the
[0041]
As shown in FIG. 2, according to the present embodiment, unlike the conventional example of FIG. 1B, it is not necessary to mount an emulation memory in the target system. Therefore, the user does not have to take the trouble of mounting the emulation memory in the target system and designing the control circuit of the emulation memory. Further, even if the debugging method is changed, it is not necessary to change the design of the target system. In addition, there is no need to mount an emulation memory, which should not be necessary, in a target system for a product. Further, it is not necessary to separately design a target system for evaluation and a target system for products. Therefore, according to the present embodiment, the development period of the target system can be reduced, the cost can be reduced, and the convenience for the user can be improved.
[0042]
Moreover, according to the present embodiment, the
[0043]
When the
[0044]
Further, according to the present embodiment, the
[0045]
That is, in the CPU replacement type ICE shown in FIG. 1A, although emulation memory is not required to be mounted on the target system, efficient debugging using an on-chip debug circuit cannot be realized.
[0046]
On the other hand, in the conventional on-chip debug type ICE shown in FIG. 1B, although an efficient debugging operation using an on-chip debug circuit can be realized, emulation memory needs to be mounted on a target system, and the user needs to carry out emulation memory. Impairs convenience.
[0047]
On the other hand, according to the present embodiment, it is not necessary to mount an emulation memory in the target system, although efficient debugging using an on-chip debug circuit can be realized. ) And (B) have unique effects that cannot be realized.
[0048]
2. Separation into probe side board and memory side board
As shown in FIG. 3, it is desirable that the
[0049]
Here, a
[0050]
In FIG. 3, the
[0051]
As shown in FIG. 3, the following advantages can be obtained by separating the
[0052]
That is, in general, the form of the terminals (pins) of the microcomputer 22 (the number of terminals, the arrangement of the terminals, the signals assigned to each terminal, etc.) is various and various. For this reason, the form of the terminal of the
[0053]
In this case, if the
[0054]
3. Attached flat cable connector
Since the microcomputer and the emulation memory are mounted on the emulation probe board of the present embodiment, the board area is larger than that of a normal probe (probe board) in ICE. Therefore, depending on the type of the target system, it may be difficult to connect the emulation probe board.
[0055]
Therefore, in order to solve such a problem, it is desirable to provide a
[0056]
By doing so, the emulation probe board can be easily connected even to a target system in which it is difficult to connect the emulation probe board due to lack of space or the like, and user convenience can be improved. .
[0057]
In the present embodiment, the probe-
[0058]
4. Equipped with IROM emulation memory on probe side board
As described above, as the emulation memory, an IROM emulation memory that substitutes for an internal ROM and an EROM emulation memory that substitutes for an external ROM can be considered. Since the IROM emulation memory must complete the fetch and decode of the instruction read from the IROM emulation memory within one clock cycle, it is desired that access to the IROM emulation be faster. In particular, if the clock frequency of the microcomputer is high, this demand becomes even stronger.
[0059]
In order to meet such a demand, the
[0060]
By doing so, the wiring pattern length between the
[0061]
By the way, in order to further speed up access to the
[0062]
For example, in FIG. 7,
[0063]
The connection lines 62 and 63 are connection lines between the connection lines 60 and 61 and the
[0064]
Now, in order to realize high-speed access to the
[0065]
However, when the connection lines 60 and 61 are connected to the connection lines 62 and 63, not only the parasitic capacitance of the connection lines 60 and 61 but also the parasitic capacitance of the connection lines 62 and 63 are added to the output terminals of the
[0066]
Accordingly, in FIG. 7, jumpers 64 and 65 (cutting means) are provided between the connection lines 60 and 61 and the connection lines 62 and 63. When the
[0067]
In this way, when the
[0068]
On the other hand, when the
[0069]
When the jumpers 64 and 65 are cut off, the
[0070]
In FIG. 8, the
[0071]
In FIG. 8, the IROM emulation memory 32-1 is mounted on, for example, the front surface of the probe-
[0072]
That is, the SRAMs constituting the IROM emulation memories 32-1 and 32-2 are very fast, and their access time is about 6 nsec. Accordingly, if the wiring pattern length between the
[0073]
In FIG. 8, the IROM emulation memories 32-1 and 32-2 are mounted on both sides in a sandwich structure, and the wiring pattern length between the
[0074]
5. High-speed serial interface
As shown in FIG. 9, in the present embodiment, signals (information) such as DST2, DST1, DST0, DPCO, DSIO, and DCLK are serially communicated with the ICE body (or a host system) via the
[0075]
Here, DST2 to DST0 are 3-bit signals for notifying the status of the instruction execution of the
[0076]
Now, when the
[0077]
Also, it is desired that DST2 to DCLK can be communicated with the ICE main unit even when the
[0078]
By the way, in order to realize an appropriate debug environment even when the clock frequency of the
[0079]
However, in FIG. 9, since the connection lines 70 to 75 and the connection lines 76 to 81 are connected, the parasitic capacitance of the connection lines 76 to 81 is added to the parasitic capacitance of the connection lines 70 to 75. turn into. For this reason, the signal delay on the connection lines 70 to 75 increases, which hinders speeding up the communication of DST2 to DCLK.
[0080]
Therefore, in FIG. 9,
[0081]
By doing so, the connection lines 70 to 75 and the connection lines 76 to 81 are prevented from being connected by setting the
[0082]
6. Separation of a second signal from a first signal
In the present embodiment, as shown in FIG. 10, a
[0083]
That is, almost all of the signals input and output from the
[0084]
However, the
[0085]
Therefore, in the present embodiment, as shown in FIG. 10, a
[0086]
With this configuration, the form (the number of signals and the type of signal) of the
[0087]
7. Mounting custom chips
As described above, in the present embodiment, the
[0088]
Therefore, in FIG. 11A, the
[0089]
That is, in recent years, what is called an ASIC microcomputer in which a microcomputer serving as a core and a circuit designed by a user himself are incorporated has been spotlighted. According to such an ASIC microcomputer, it is possible to incorporate an optimum microcomputer according to the user's application into the target system, thereby improving the commerciality of the target system, reducing the cost, and the like.
[0090]
If the user's
[0091]
In FIG. 11A, since the
[0092]
In addition, as the
[0093]
In FIG. 11A, an
[0094]
Here, the
[0095]
The interface 46 is for transmitting input / output signals of the
[0096]
8. Speed up access to IROM emulation memory
As described above, the fetch and decode of the instruction from the IROM emulation memory for emulating the internal ROM of the microcomputer must be completed within one clock cycle. Therefore, there is a problem that it is necessary to speed up memory access to the IROM emulation memory.
[0097]
Therefore, in order to achieve such a problem, in FIG. 12, the address and data (second signal) are transmitted between the
[0098]
By doing so, in the signal transmission between the
[0099]
When the
[0100]
The method shown in FIG. 12 can be applied to a case where the
[0101]
9. Microcomputer configuration
In a microcomputer, usually, an evaluation chip 710 for program and system development as shown in FIG. 13B is created in addition to the
[0102]
However, when the
[0103]
In order to solve such a problem, the
[0104]
14 includes a CPU (processor in a broad sense) 112, a bus control unit (BCU) 114, an internal ROM (internal memory in a broad sense) 116, an emulation instruction unit 118, and a
[0105]
Here, the
[0106]
The
[0107]
The emulation instructing unit 118 activates the emulation instructing signal EM when the emulation mode is on, and issues an emulation instruction to the
[0108]
The
[0109]
The
[0110]
When the emulation mode (mode in which the
[0111]
By doing so, the
[0112]
In the
[0113]
Further, according to the
[0114]
Further, according to the
[0115]
When the access to the
[0116]
When the
[0117]
That is, the fetch and decode of the instruction (program) stored in the
[0118]
However, unlike FIG. 13B, the
[0119]
Therefore, in FIG. 14, a control signal CNT2 of a different system from the control signal CNT1 for controlling the
[0120]
FIG. 15 shows a detailed configuration example of the
[0121]
Here, the
[0122]
The
[0123]
The instruction fetch
[0124]
The
[0125]
The mode selection terminal MT, the
[0126]
Next, an instruction fetch operation of the
[0127]
In the case of an instruction fetch, the instruction / data switching signal DIS indicates an instruction, and the
[0128]
At this time, if the L level is stored in the
[0129]
On the other hand, when the H level is stored in the
[0130]
While the instruction of the
[0131]
As described above, in the
[0132]
Therefore, before completion of the program, the user turns on the emulation mode using the terminal MT or the
[0133]
In the
[0134]
By employing the method of accessing the
[0135]
That is, there is usually enough time to read information from the EROM emulation memory 34 (for evaluation) or the external memory (for product). On the other hand, since the fetch and decode of the instruction by the
[0136]
Therefore, in FIG. 15, the chip enable signal CE2 and the memory read signal RD2 of a different system from the CE1 and RD1 for the EROM emulation memory 34 (or a system different from the chip enable signal for the external memory and the memory read signal) are transmitted to the memory controller. 120. Thus, while the
[0137]
In FIG. 16, the
-Instruction (1) ld% r2, 0x00
-Instruction (2) ld% r1, [% r9]
-Instruction (3) add% r4,% r1
-Instruction (4) sub% r5,% r1
In the above, the instruction (1) is an instruction to load data 0x00 into the general-purpose register r2 of the
[0138]
These instructions (1), (2), (3), and (4) are executed by pipeline processing as indicated by B1 in FIG. In B1, F indicates instruction fetch, D indicates instruction decode, R indicates register read, A indicates address calculation, E indicates instruction execution, and W indicates write to register.
[0139]
BCLK indicated by B2 in FIG. 16 is a bus clock that determines a bus cycle. Here, BCLK is also an operation clock of the
[0140]
In FIG. 16, as indicated by B3, an instruction is first read from the
[0141]
That is, as shown by B4, B5, and B6 in FIG. 16, an address for reading the instructions (1), (2), and (3) from the
[0142]
In B10 in FIG. 16, the read address to the
[0143]
At B12 in FIG. 16, an address for reading the instruction (4) from the
[0144]
When reading data from the
[0145]
At this time, as shown in B15, RD1 becomes active in synchronization with the fall of BCLK. On the other hand, as shown in B18 to B21, RD2 becomes active in synchronization with the rise of BCLK. More specifically, it becomes active after a lapse of a given delay time (delay time in the delay element) TD from the rise of BCLK. That is, RD2 is controlled to become active earlier than RD1.
[0146]
By making RD2 active earlier in this way, the fetch (F) and decode (D) of the instruction by the
[0147]
That is, when an instruction is read from the
[0148]
In this case, for example, at the time of evaluation, that is, at the time of reading an instruction from the
[0149]
On the other hand, in FIG. 16, since RD2 of a different system from RD1 is prepared and RD2 is activated at an early timing as shown in B18 to B21, fetching and decoding of an instruction from the
[0150]
At B22 in FIG. 16, since a wait is inserted in reading data from the
[0151]
On the other hand, for the
[0152]
The present invention is not limited to the present embodiment, and various modifications can be made within the scope of the present invention.
[0153]
For example, in the invention according to the dependent claims, a part of the constituent elements of the dependent claim may be omitted. In addition, a main part of the invention according to one independent claim of the present invention can be made dependent on another independent claim.
[0154]
In the present invention, it is particularly preferable that the probe-side board and the memory-side board are configured to be separable as shown in FIG. 3, but it is also possible that the probe-side board and the memory-side board are not separable.
[0155]
Further, the debug information communicated with the debug tool via the high-speed serial interface is not limited to the information described in the present embodiment.
[0156]
Also, the connectors provided on the probe-side board and the memory-side board are particularly preferably those described with reference to FIG. 5, but are not limited thereto.
[0157]
The mounting method and wiring connection in the case where the emulation memory for the internal memory is provided on the probe side board are particularly desirable as described in the present embodiment, but are not limited thereto.
[0158]
As a custom chip mounted on the memory-side board, an FPGA is particularly desirable, but is not limited to this.
[0159]
Also, as the first control signal for controlling the emulation memory for the external memory and the second control signal for controlling the emulation memory for the internal memory, the signals described with reference to FIGS. 15 and 16 are particularly desirable. However, the present invention is not limited to this.
[Brief description of the drawings]
FIGS. 1A and 1B are diagrams for explaining problems of a CPU replacement type ICE and a conventional on-chip debug type ICE.
FIG. 2 is a diagram for describing a basic configuration of the present embodiment.
FIG. 3 is a diagram for describing a method of enabling an emulation probe board to be separated into a probe-side board and a memory-side board.
FIG. 4 is a diagram for explaining a method of standardizing the form of a terminal of a connector of a memory-side board while enabling customization of a form of a terminal of a probe on a probe-side board.
FIG. 5 is a diagram for explaining a method of attaching a connector connectable to a flat cable to a memory-side board;
FIG. 6 is a diagram for explaining a method of providing an IROM emulation memory on a probe-side board.
FIG. 7 is a diagram for explaining a method of providing a jumper on a connection line for transmitting a control signal of an IROM emulation memory.
FIG. 8 is a diagram for explaining a method of mounting two IROM emulation memories on both sides in a sandwich structure.
FIG. 9 is a diagram for explaining a method of providing a jumper on a connection line transmitting debug information serially communicated.
FIG. 10 is a diagram for explaining a technique of separating a second signal from among the first signals from the microcomputer and transmitting the separated second signal to the memory-side board;
FIGS. 11A and 11B are diagrams for explaining a method of mounting a custom chip on a memory-side board.
FIG. 12 is a diagram for describing a method of transmitting addresses and data to an IROM emulation memory without passing through a buffer.
FIGS. 13A and 13B are diagrams for explaining a conventional method in which a product chip and an evaluation chip are separated from each other.
FIG. 14 is a block diagram illustrating a configuration example of a microcomputer.
FIG. 15 is a block diagram illustrating a more detailed configuration example of a microcomputer.
FIG. 16 is a signal waveform diagram for explaining the operation of the microcomputer.
[Explanation of symbols]
10 emulation probe board, 12 probe side board
14 Memory side board, 20 probes, 22 microcomputer
24 serial interface, 26 connector, 27 flat cable
28 connectors, 29 connectors, 30 emulation memory
32, 32-1, 32-2 IROM emulation memory
34 EROM emulation memory, 40 custom chips (FPGA)
42 config ROM, 44 interface, 46 interface
50 target system, 52 socket, 54 ICE body
56 Host system, 60-63 connection line, 64-67 jumper
68, 69 buffers, 70-81 connection lines, 82-87 buffers
88-93 connection line, 94-99 jumper, 100 first signal
102 second signal, 104 ASIC microcomputer
105 microcomputer circuit, 106 custom chip circuit
108, 108 buffers
Claims (9)
エミュレーションプローブボードを前記ターゲットシステムの第1の搭載手段に接続するためのプローブと、
前記ターゲットシステムで使用されるメモリをエミュレーションするためのエミュレーションメモリを搭載するためのメモリ搭載手段と、
前記メモリ搭載手段に搭載されるエミュレーションメモリにアクセスするマイクロコンピュータを搭載するためのマイクロコンピュータ搭載手段と、
を含むことを特徴とするエミュレーションプローブボード。An emulation probe board for supporting the development of a target system,
A probe for connecting an emulation probe board to first mounting means of the target system,
Memory mounting means for mounting an emulation memory for emulating a memory used in the target system,
Microcomputer mounting means for mounting a microcomputer for accessing an emulation memory mounted on the memory mounting means,
An emulation probe board comprising:
前記プローブと、前記マイクロコンピュータ搭載手段と、第1のコネクタとが少なくとも設けられるプローブ側ボードと、
前記メモリ搭載手段と、前記第1のコネクタに接続される少なくとも1つの第2のコネクタとが少なくとも設けられるメモリ側ボードとに分離されていることを特徴とするエミュレーションプローブボード。In claim 1,
A probe-side board provided with at least the probe, the microcomputer mounting means, and a first connector;
An emulation probe board, wherein the memory mounting means is separated from a memory-side board provided with at least one second connector connected to the first connector.
前記プローブ側ボードの前記プローブの端子の形態がカスタマイズ可能であると共に、前記メモリ側ボードの前記第2のコネクタの端子の形態が標準化されていることを特徴とするエミュレーションプローブボード。In claim 2,
An emulation probe board, wherein a form of a terminal of the probe of the probe-side board is customizable, and a form of a terminal of the second connector of the memory-side board is standardized.
前記プローブ側ボードの前記第1のコネクタにダイレクトに接続するための第3のコネクタと、前記プローブ側ボードの前記第1のコネクタにケーブルを介して接続するための第4のコネクタとが、前記第2のコネクタとして前記メモリ側ボードに設けられていることを特徴とするエミュレーションプローブボード。In claim 2 or 3,
A third connector for directly connecting to the first connector of the probe-side board, and a fourth connector for connecting to the first connector of the probe-side board via a cable, An emulation probe board provided as a second connector on the memory-side board.
前記エミュレーションメモリが、前記ターゲットシステムに組み込まれるマイクロコンピュータの内部メモリをエミュレーションするための内部メモリ用エミュレーションメモリと、前記ターゲットシステムに組み込まれるマイクロコンピュータの外部メモリをエミュレーションするための外部メモリ用エミュレーションメモリとを含み、
前記内部メモリ用エミュレーションメモリを搭載するための手段が、前記プローブ側ボードに設けられていることを特徴とするエミュレーションプローブボード。In any one of claims 2 to 4,
The emulation memory includes an emulation memory for an internal memory for emulating an internal memory of a microcomputer incorporated in the target system, and an emulation memory for an external memory for emulating an external memory of the microcomputer incorporated in the target system. Including
An emulation probe board, wherein means for mounting the internal memory emulation memory is provided on the probe-side board.
前記マイクロコンピュータ搭載手段に搭載されたマイクロコンピュータと前記内部メモリ用エミュレーションメモリとを接続し前記内部メモリ用エミュレーションメモリを制御するための制御信号が伝達される第1の接続線と、前記第1の接続線と前記第1のコネクタとを接続し前記制御信号が伝達される第2の接続線と、前記第2の接続線による接続を切断するための第1の切断手段とが設けられていることを特徴とするエミュレーションプローブボード。In claim 5,
A first connection line for connecting a microcomputer mounted on the microcomputer mounting means to the emulation memory for the internal memory and transmitting a control signal for controlling the emulation memory for the internal memory; A second connection line for connecting the connection line to the first connector and transmitting the control signal is provided, and a first disconnection unit for disconnecting the connection by the second connection line is provided. An emulation probe board characterized in that:
前記内部メモリ用エミュレーションメモリが第1、第2の内部メモリ用エミュレーションメモリを含み、
前記第1の内部メモリ用エミュレーションメモリを搭載するための手段が前記プローブ側ボードの第1の面に設けられ、前記第2の内部メモリ用エミュレーションメモリを搭載するための手段が前記プローブ側ボードの第2の面に設けられていることを特徴とするエミュレーションプローブボード。In claim 5 or 6,
The internal memory emulation memory includes first and second internal memory emulation memories;
Means for mounting the first internal memory emulation memory is provided on a first surface of the probe-side board, and means for mounting the second internal memory emulation memory is provided on the probe-side board. An emulation probe board provided on a second surface.
前記マイクロコンピュータ搭載手段に搭載されたマイクロコンピュータによりアクセスされた前記エミュレーションメモリに基づく前記ターゲットシステムをデバッグするためのデバッグ情報を、デバッグツールとの間で通信するための手段を含むことを特徴とするエミュレーションプローブボード。In any one of claims 1 to 7,
And a means for communicating with a debug tool debug information for debugging the target system based on the emulation memory accessed by the microcomputer mounted on the microcomputer mounted means. Emulation probe board.
前記エミュレーションプローブボードに搭載される前記マイクロコンピュータと、
前記エミュレーションプローブボードに搭載される前記エミュレーションメモリと、
前記エミュレーションボードとの間でデバッグ情報が通信されるデバッグツールとを含むことを特徴とするデバッグシステム。An emulation probe board according to claim 8,
The microcomputer mounted on the emulation probe board,
The emulation memory mounted on the emulation probe board,
A debug tool for communicating debug information with the emulation board.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003160559A JP2004030652A (en) | 2003-06-05 | 2003-06-05 | Emulation probe board and debugging system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003160559A JP2004030652A (en) | 2003-06-05 | 2003-06-05 | Emulation probe board and debugging system |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP12682499A Division JP3913931B2 (en) | 1999-05-07 | 1999-05-07 | Emulation probe board and debug system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004030652A true JP2004030652A (en) | 2004-01-29 |
Family
ID=31185396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003160559A Pending JP2004030652A (en) | 2003-06-05 | 2003-06-05 | Emulation probe board and debugging system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004030652A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009031737A1 (en) * | 2007-09-09 | 2009-03-12 | Geon Kim | Universal high-speed real-time monitoring device for embedded systems |
-
2003
- 2003-06-05 JP JP2003160559A patent/JP2004030652A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009031737A1 (en) * | 2007-09-09 | 2009-03-12 | Geon Kim | Universal high-speed real-time monitoring device for embedded systems |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4335999B2 (en) | Semiconductor integrated circuit device with built-in processor | |
KR101046876B1 (en) | Data Processing System and Data Processor | |
US8347158B2 (en) | System-on-chip with master/slave debug interface | |
CN109669729B (en) | Starting guide method of processor | |
JPH07507412A (en) | Reconfigurable interface between computer and peripherals | |
KR100506031B1 (en) | Microcomputer, electronic equipment and emulation method | |
JP2001184226A (en) | Digital system having memory block and emulating method of block of memory | |
JPH0773101A (en) | Interface and method for memory bus of recursive size decision | |
JP3913931B2 (en) | Emulation probe board and debug system | |
JP3724944B2 (en) | Evaluation module, evaluation microcomputer chip, and debugging system | |
US8082417B2 (en) | Method for reducing pin counts and microprocessor using the same | |
JP2004030652A (en) | Emulation probe board and debugging system | |
JP2001184212A (en) | Trace control circuit | |
JP2003263339A (en) | Debug function-incorporated microcomputer | |
CN102446132B (en) | Method and device for performing board-level management by simulating local bus | |
US7689864B2 (en) | Processor comprising an integrated debugging interface controlled by the processing unit of the processor | |
JP2004038464A (en) | Microcomputer with built-in debugging function | |
JP3074978B2 (en) | Emulation device | |
JP2010231818A (en) | Debugging system | |
JP2009193604A (en) | Semiconductor information processing device | |
JP3071044B2 (en) | Test method for semiconductor integrated circuit with microcomputer | |
JP2007034881A (en) | Semiconductor integrated circuit | |
JP2002110925A (en) | System lsi | |
JP2006039759A (en) | Information processing apparatus and method | |
JPH05181695A (en) | Emulator |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040123 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20040525 |