(57)【要約】      （修正有）【課題】ＣＰＵ及びデバッグ用のピンと機能を量産チップ上に実装する集積回路装置において、端子をより節約する。【解決手段】ターゲットシステム１０の集積回路装置２０は、第１のクロック生成回路７０と、第１のクロック生成回路で生成されたクロックを動作クロックとして、省ピン型のデバッグツールとのデバッグ用のデータの送受信を非同期式のシリアルデータ伝送で行うための通信制御を行う第１の非同期通信制御回路８０とを含む。省ピン型のデバッグツール１１０は、第１のクロック生成回路と同じボーレートのクロックを生成する第２のクロック生成回路１７０と、  第２のクロック生成回路で生成されたクロックを動作クロックとして、前記ターゲットシステムとのデバッグ用のデータの送受信を非同期式のシリアルデータ伝送で行うための通信制御を行う第２の非同期通信制御回路１８０とを含む。【選択図】図２
2006252006.tif 000002
【特許請求の範囲】
【請求項１】
省ピン型のデバッグツールと、当該デバッグツールのデバッグ対象となるターゲットシステムを含むデバッグシステムであって、
前記ターゲットシステムは、ＣＰＵ、省ピン型のデバッグツールと非同期通信を行いオンチップデバッグを行う機能を有する内部デバッグモジュールとを内蔵する集積回路装置を含み、
前記集積回路装置は、
第１のクロック生成回路と、
第１のクロック生成回路で生成されたクロックを動作クロックとして、省ピン型のデバッグツールとのデバッグ用のデータの送受信を非同期式のシリアルデータ伝送で行うための通信制御を行う第１の非同期通信制御回路とを含み、
前記省ピン型のデバッグツールは、
第１のクロック生成回路と同じボーレートのクロックを生成する第２のクロック生成回路と、
第２のクロック生成回路で生成されたクロックを動作クロックとして、前記ターゲットシステムとのデバッグ用のデータの送受信を非同期式のシリアルデータ伝送で行うための通信制御を行う第２の非同期通信制御回路とを含むことを特徴とするデバッグシステム。
【請求項２】
請求項１において、
前記ターゲットシステムの集積回路装置は、
デバッグ用のデータを半２重の双方向通信で送受信を行うための１本の通信ラインが接続されるデバッグ用端子を含み、
前記第１の非同期通信制御回路は、省ピン型のデバッグツールと前記通信ラインを介してデバッグ用のデータの送受信を半２重の双方向通信でおこなうための通信制御を行い、
前記省ピン型のデバッグツールは、
デバッグ用のデータを半２重の双方向通信で送受信を行うための１本の通信ラインが接続されるデバッグ用端子を含み、
前記第２の非同期通信制御回路は、前記集積回路装置と前記通信ラインを介してデバッグ用のデータの送受信を半２重の双方向通信でおこなうための通信制御を行うことを特徴とするデバッグシステム。
【請求項３】
請求項１乃至２のいずれかにおいて、
前記ターゲットシステムの集積回路装置の第１のクロック生成回路は、
外部から設定又は変更可能なクロック選択値に基づき、クロックを分周して所定のボーレートのクロックを生成する分周回路を含み、
前記省ピン型のデバッグツールの第２のクロック生成回路は、
外部から設定又は変更可能なクロック選択値に基づき、クロックを分周して所定のボーレートのクロックを生成する分周回路を含むことを特徴とするデバッグシステム。
【請求項４】
請求項１乃至３のいずれかにおいて、
前記集積回路装置の第１の非同期通信制御回路として、
集積回路装置内蔵の汎用のＵＡＲＴを使用していることを特徴とするデバッグシステム。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記集積回路装置の第１の非同期通信制御回路と前記前記省ピン型のデバッグツールの第２の非同期通信制御回路は、
所定の規格でハンドシェイクで動作することを特徴とするデバッグシステム。
【請求項６】
請求項１乃至５のいずれかにおいて、
前記ターゲットシステムの基板と前記省ピン型のデバッグツールは接地されていることを特徴とするデバッグシステム。
【請求項７】
請求項１乃至６のいずれかに記載の集積回路装置。
【請求項８】
請求項１乃至６のいずれかに記載の集積回路装置を含むマイクロコンピュータ。
【請求項９】
請求項８に記載のマイクロコンピュータと、
前記マイクロコンピュータの処理対象となるデータの入力源と、
前記マイクロコンピュータにより処理されたデータを出力するための出力装置とを含むことを特徴とする電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デバッグシステム、半導体集積回路装置、マイクロコンピュータ、及び電子機器に関する。
【背景技術】
【０００２】
近年、ゲーム装置、カーナビゲーションシステム、プリンタ、携帯情報端末などの電子機器に組み込まれ、高度な情報処理を実現できるマイクロコンピュータに対する需要が高まっている。このような組み込み型のマイクロコンピュータは、通常、ターゲットシステムと呼ばれるユーザボードに実装される。そして、このターゲットシステムを動作させるソフトウェアの開発を支援するためにＩＣＥ（In-Circuit Emulator）等の省ピン型のデバッグツール（ソフトウェア開発支援ツール）が広く使用されている。
【０００３】
さて、このようなＩＣＥとしては、従来、図１９に示すようなＣＰＵ置き換え型と呼ばれるＩＣＥが主流を占めていた。このＣＰＵ置き換え型ＩＣＥでは、デバッグ時にターゲットシステム３００からマイクロコンピュータ３０２を取り外し、その代わりにデバッグツール３０４のプローブ３０６を接続する。そして、このデバッグツール３０４に、取り外したマイクロコンピュータ３０２の動作をエミュレートさせる。また、このデバッグツール３０４に、デバッグのために必要な種々の処理を行わせる。
【０００４】
しかしながら、このＣＰＵ置き換え型ＩＣＥには、プローブ３０６のピン数が多くなると共にプローブ３０６の線３０８が増えるという欠点があった。このため、マイクロコンピュータ３０２の高周波数動作をエミュレートすることが困難になる（例えば３３ＭＨＺ程度が限界）。またターゲットシステム３００の設計も困難になる。更に、マイクロコンピュータ３０２を実装して動作させる実動作時とデバッグツール３０４でマイクロコンピュータ３０２の動作をエミュレートするデバッグモード時とで、ターゲットシステム３００の動作環境（信号のタイミング、負荷条件）が変化してしまう。またこのＣＰＵ置き換え型ＩＣＥには、マイクロコンピュータが異なれば、たとえそれが派生品であっても、設計が異なるデバッグツールや、ピン数やピンの位置が異なるプローブを使用しなければならないという問題もあった。
【０００５】
一方、このようなＣＰＵ置き換え型ＩＣＥの欠点を解消するものとして、ＩＣＥと同じ機能を実現するためのデバッグ用のピンと機能を量産チップ上に実装するタイプのＩＣＥが知られている。例えばこのようなデバッグ機能実装型ＩＣＥとして、省ピン型のデバッグツール（ＩＣＥ等）とクロック同期通信を行いデバッグツールから入力されたデバッグコマンドを実行するためのオンチップデバッグ機能を有する内部デバッグモジュールを内蔵するマイクロコンピュータが知られている。
【０００６】
かかる場合マイクロコンピュータは、デバッグツールとクロック同期通信でデバッグを行っていた。
【０００７】
かかる場合には、デバッグツールとマイクロコンピュータの間で、デバッグツールからマイクロコンピュータへのブレーク入力、マイクロコンピュータからデバッグツールへのブレーク／ｒｕｎ入力、デバッグツールからマイクロコンピュータへのデータ（デバッグコマンド等）通信、マイクロコンピュータからデバッグツールへのデータ通信、入力デバッグツールとマイクロコンピュータ間での通信用同期クロック、マイクロコンピュータからデバッグツールへのトレース等の付加情報の通信が複数ピン、入力デバッグツールとマイクロコンピュータ間でのグランドライン等の端子（ピン）が必要となる。
【特許文献１】特開平８−２５５０９６号
【特許文献２】特開平１１−２８２７１９号
【発明の開示】
【発明が解決しようとする課題】
【０００８】
かかる端子（ピン）を積算していくとデバッグ用の端子（ピン）がどんどん増加するが、デバッグ時にのみ必要でエンドユーザーにとっては不要な端子はできるかぎり少ないほうが好ましい。またマイクロコンピュータのＰＫＧの端子（ピン）数が増加すると、ＩＣのコストアップ等につながる。
【０００９】
さらにボードとデバッグツールの間のピン数が増加し、ボードの設計難易度が上がり、このため信頼性が低下し、ボードやシステムの開発コストの増加や開発期間の増加を招く。
【００１０】
本発明は、以上のような技術的課題に鑑みてなされたものであり、その目的とするところは、デバッグ用のピンと機能を量産チップ上に実装するタイプのターゲットシステムにおいて、エンドユーザーにとっては不要な端子をより節約したデバッグシステム、ターゲットシステム、集積回路装置等を提供することにある。
【課題を解決するための手段】
【００１１】
（１）本発明は、
省ピン型のデバッグツールと、当該デバッグツールのデバッグ対象となるターゲットシステムを含むデバッグシステムであって、
前記ターゲットシステムは、ＣＰＵ、省ピン型のデバッグツールと非同期通信を行いオンチップデバッグを行う機能を有する内部デバッグモジュールとを内蔵する集積回路装置を含み、
前記集積回路装置は、
第１のクロック生成回路と、
第１のクロック生成回路で生成されたクロックを動作クロックとして、省ピン型のデバッグツールとのデバッグ用のデータの送受信を非同期式のシリアルデータ伝送で行うための通信制御を行う第１の非同期通信制御回路とを含み、
前記省ピン型のデバッグツールは、
第１のクロック生成回路と同じボーレートのクロックを生成する第２のクロック生成回路と、
第２のクロック生成回路で生成されたクロックを動作クロックとして、前記ターゲットシステムとのデバッグ用のデータの送受信を非同期式のシリアルデータ伝送で行うための通信制御を行う第２の非同期通信制御回路とを含むことを特徴とする。
【００１２】
ここにおいてＣＰＵとはプロセッサ機能を有する回路であればよく、他の名称であってもプロセッサ機能を有する回路である場合には本発明の範囲内である。
【００１３】
ここにおいて基板とは、ユーザーボード、プリント基板等を含む。なお基板にはＣＰＵ内蔵の集積回路装置（マイクロコンピュータ等）の他、メモリその他の集積回路装置が実装されていてもよい。省ピン型のデバッグツールとは例えばＩＣＥ等である。
【００１４】
第１の非同期通信制御回路と第２の非同期通信制御回路は、非同期式のシリアルデータ伝送でデバッグ用のデータの送受信を行うものである。
【００１５】
シリアルデータ伝送とは、２つの機器(コンピュータ等)の間で1ビットずつ順番に伝送を行う方法である。
【００１６】
また非同期式とは、送信局は自分自身の基準タイミング信号でデータビットを発生させ、送受信相互のタイミングは必ずしも一致しない通信方式で、一定のビットごとに相互の基準となる標別信号と含めて伝送することにより、受信局がこの信号の始まりを認識し、データコードを取り込む方式である。
【００１７】
本発明では例えば非同期の一例である調歩同期式でもよい。調歩同期式は各々のコードの直前にスタートビット、直後にストップビットを挿入し、アイドル状態(データが送られていない状態)は連続したストップビットと同じ状態になっている。したがって受信局はアイドル状態からスタートビットを感知すると受信データの始まりと認識し、データとして取り込みをはじめる。そして、あらかじめ相互で決められているビット長の最後のビットであるストップビットを確認すると次のデータの始まりとなるスタートビットを待つ。
【００１８】
第１の非同期通信制御回路と第２の非同期通信制御回路は、集積回路装置又はデバッグモジュール内のパラレルバスからやってくるバイトデータをシリアルのビットストリームに変換すること、および外付けケーブルを経由してシリアルポートに入ってきたビットストリームは、コンピュータが処理できるパラレルなバイトデータに変換する処理もあわせて行うようにしてもよい。
【００１９】
またシリアルとパラレルの変換に加えて、ビット列を表すために使う電圧も変換(変更)する処理を行うようにしてもよい。バイトデータが送信される前にそれぞれのバイトに対して追加のビット(いわゆるスタートビットとストップビット)が加えるようにしてもよい。
【００２０】
本発明によればターゲットシステムとデバッグモジュールは、デバッグ時において非同期のシリアルデータ伝送でデバッグ用のデータの送受信を行う。従って同期通信でデバッグ時のデータの送受信を行う場合のように同期用のクロックの送受信を行う必要が無いため、デバッグ用のクロック端子を持つ必要がない。
【００２１】
ここにおいてデバッグ用のデータとは、例えばデバッグモジュールからターゲットシステムに送信するデバッグコマンドや、ターゲットシステムからデバッグモジュールに送信するデータやステータスコマンド等を含む。
【００２２】
このように本発明によれば、ＣＰＵ内蔵の集積回路装置においてデバッグモードでのみ使用され、ユーザーモード（ユーザープログラム）では使用されない端子（ピン）を減らすことができるので、集積回路装置のコストの増加を防止することができる。
【００２３】
（２）本発明のデバッグシステムは、
前記ターゲットシステムの集積回路装置は、
デバッグ用のデータを半２重の双方向通信で送受信を行うための１本の通信ラインが接続されるデバッグ用端子を含み、
前記第１の非同期通信制御回路は、省ピン型のデバッグツールと前記通信ラインを介してデバッグ用のデータの送受信を半２重の双方向通信でおこなうための通信制御を行い、
前記省ピン型のデバッグツールは、
デバッグ用のデータを半２重の双方向通信で送受信を行うための１本の通信ラインが接続されるデバッグ用端子を含み、
前記第２の非同期通信制御回路は、前記集積回路装置と前記通信ラインを介してデバッグ用のデータの送受信を半２重の双方向通信でおこなうための通信制御を行うことを特徴とする。
【００２４】
本発明によればターゲットシステムとデバッグモジュールは、デバッグ時において半２重の双方向通信でデバッグ用のデータの送受信を行う。シリアル通信の場合デバッグ用のデータの送受信に必要な通信線は１本でよく、集積回路装置はデバッグ用のデータの送受信のための端子は１つでよい。
【００２５】
半２重の双方向通信でデバッグ用のデータの送受信を行う場合には、例えばデバッグモジュールから集積回路装置へのデータサイズ、及び集積回路装置からデバッグモジュールへのデータサイズを固定して、ハンドシェイクでデータの送受信を行うようにしてもよい。
【００２６】
（３）本発明のデバッグシステムは、
前記ターゲットシステムの集積回路装置の第１のクロック生成回路は、
外部から設定又は変更可能なクロック選択値に基づき、クロックを分周して所定のボーレートのクロックを生成する分周回路を含み、
前記省ピン型のデバッグツールの第２のクロック生成回路は、
外部から設定又は変更可能なクロック選択値に基づき、クロックを分周して所定のボーレートのクロックを生成する分周回路を含むことを特徴とする。
【００２７】
第１のクロック生成回路又は第２のクロック生成回路におけるクロック選択値は、外部入力により書き換え可能なクロック選択値レジスタを設けることで実現するようにしてもよい。
【００２８】
例えばデバッグツールにおいては、オペレータ等の外部入力に基づき、クロック選択値格納レジスタの値を設定又は変更できるようにしてもよい。
【００２９】
またターゲットシステムにおける集積回路装置においては、デバッグモジュールからのライトコマンド等によりクロック選択値格納レジスタの値を設定又は変更できるようにしてもよい。
【００３０】
本発明によれば通常は（例えば初期値は）低いボーレートのクロックを生成するようなクロック選択値に設定しておき、高速なデータ伝送が必要な場合ボーレートを上げるようにクロック選択値の値を変更することができる。
【００３１】
（４）本発明のデバッグシステムは、
前記集積回路装置の第１の非同期通信制御回路として、
集積回路装置内蔵の汎用のＵＡＲＴを使用していることを特徴とする。
【００３２】
ＵＡＲＴ(Universal Asynchronous Receiver Transmitter)の目的は、ＰＣのパラレルバスからやってくるバイトデータをシリアルのビットストリームに変換すること、および外付けケーブルを経由してシリアルポートに入ってきたビットストリームは、コンピュータが処理できるパラレルなバイトデータに変換することである。
【００３３】
ＵＡＲＴはシリアルとパラレルの変換に加えて、ビット列を表すために使う電圧も変換(変更)する処理を行うようにしてもよい。バイトデータが送信される前にそれぞれのバイトに対して追加のビット(いわゆるスタートビットとストップビット)が加えるようにしてもよい。
【００３４】
かかるＵＡＲＴは、シリアル用チップのことであり、通常ＰＣ（集積回路装置）のマザーボード(あるいは内蔵モデムカード)に内蔵されている。
【００３５】
本発明ではこの汎用のＵＡＲＴを用いて第１の非同期通信制御回路を実現する。従ってデバッグ用に新たに回路を設ける必要がないため、集積回路装置の回路規模の増大を防止することができる。
【００３６】
（５）本発明のデバッグシステムは、
前記集積回路装置の第１の非同期通信制御回路と前記前記省ピン型のデバッグツールの第２の非同期通信制御回路は、
所定の規格でハンドシェイクで動作することを特徴とする。
【００３７】
例えば、非同期通信を行うための所定の規格（例えばシリアル通信の規格であるＲＳ２３２Ｃ等）で、デバッグモジュールと集積回路装置間で所定のデータサイズでハンドシェイクを行うことで、双方向の半２重通信を実現するようにしてもよい。
【００３８】
（６）本発明のデバッグシステムは、
前記ターゲットシステムの基板と前記省ピン型のデバッグツールは接地されていることを特徴とする。
【００３９】
基板は直接接地されている場合でも良いし、コンセント等を介して間接的に接地されている場合でもよい。
【００４０】
通常はグランドを接続して同電位にしておかないと、ＨＬのレベルが食い違って通信できない。特に高速の場合はグランド線を複数接続することが必要である。しかしデバッグ時のボーレートが９６００ビット／セカンド（１０キロヘルツ）くらいの周波数であれば弱いグランドでよく、専用のグランド線が不要である）。さらに本発明のようにデバッグ時に使用するピン数がすくなくいと流れる電流値も小さくなり消費電力がへるため、グランド線を省略しても動作に支障がない。
【００４１】
本発明では前記ターゲットシステムの基板と前記省ピン型のデバッグツールを結ぶグランド線を省略することが可能となり基板のピン数を削減することができる。
【００４２】
なお周波数を減らすと消費電力をへらすことができるのでよりよいため、デバッグ時には低い周波数で動作させるようにしてもよい。
【００４３】
（７）本発明は、上記のいずれかに記載の集積回路装置である。
【００４４】
（８）本発明は、上記のいずれかに記載の集積回路装置を含むマイクロコンピュータである。
【００４５】
（９）本発明は、
上記に記載のマイクロコンピュータと、
前記マイクロコンピュータの処理対象となるデータの入力源と、
前記マイクロコンピュータにより処理されたデータを出力するための出力装置とを含むことを特徴とする電子機器である。
【発明を実施するための最良の形態】
【００４６】
以下、本発明の好適な実施形態について図面を用いて詳細に説明する。
【００４７】
１．本実施形態の特徴
図１は本実施の形態のターゲットシステム、デバッグシステム及びマイクロコンピュータの構成について説明するための図である。
【００４８】
本実施の形態のデバッグシステム１は、省ピン型のデバッグツール（ＩＣＥ等）５０と、当該デバッグツール５０のデバッグ対象となるターゲットシステム１０を含む。
【００４９】
ターゲットシステム１０は、マイクロコンピュータ（ＣＰＵを含む集積回路装置の一例）２０が基板（ユーザーボード）４０に実装される。基板（ユーザーボード）４０には、例えばマイクロコンピュータ２０以外にもメモリ等の半導体集積回路装置や、デジタルクロックを生成して出力する水晶発振器等の発信器（クロック発信器）３０が実装されていてもよい。
【００５０】
マイクロコンピュータ２０はＣＰＵ５０、省ピン型のデバッグツール１１０と非同期通信を行いオンチップデバッグを行う機能を有するデバッグモジュール６０を内蔵する。
【００５１】
デバッグモジュール６０は、第１のクロック生成回路７０と、第１のクロック生成回路７０で生成されたクロックを動作クロックとして、省ピン型のデバッグツール１１０とのデバッグ用のデータの送受信を非同期式のシリアルデータ伝送で行うための通信制御を行う第１の非同期通信制御回路８０とを含む。
【００５２】
またマイクロコンピュータは、ＣＰＵ５０を含む。
【００５３】
ＣＰＵ５０は、種々の命令の実行処理を行うものであり、内部レジスタを含む。内部レジスタは、汎用レジスタであるＲ０〜Ｒ１５や、特殊レジスタであるＳＰ（スタックポインタレジスタ）、ＡＨＲ（積和結果データの上位レジスタ）、ＡＬＲ（積和結果データの下位レジスタ）などを含む。またＣＰＵ２２はユーザーモードにおいてはユーザープログラムを実行し、デバッグモードにおいてはモニタプログラムやデバッグコマンドを実行する。
【００５４】
デバッグモジュール２４は、ＲＯＭ、ＲＡＭ、制御レジスタ等を含み、デバッグモードにおいてＣＰＵ２２にモニタプログラムやデバッグコマンドを実行させるために必要な各種名処理（デバッグモジュールとのＩ／Ｏインターフェースや、デバッグコマンドの解析や、ユーザープログラムからモニタプログラムへの割り込み処理等）を行う。
【００５５】
またマイクロコンピュータは、デバッグ用のデータを半２重の双方向通信で送受信を行うための１本の通信ライン６２が接続されるデバッグ用端子２８を含む。
【００５６】
前記第１の非同期通信制御回路８０は、前記通信ライン６２を介して、省ピン型のデバッグツール１１０とデバッグ用のデータを半２重の双方向通信で送受信を行う。
【００５７】
デバッグモジュール６０のＲＯＭには、モニタプログラムが格納される。ＲＡＭには、デバッグモードへの移行時に（ユーザプログラムのブレーク発生時に）、ＣＰＵ５０の内部レジスタの内容が退避される。これにより、デバッグモードの終了後にユーザプログラムの実行を適正に再スタートできるようになる。また内部レジスタの内容のリード等を、モニタプログラムが持つコマンド等で実現できるようになる。
【００５８】
制御レジスタは、各種のデバッグ処理を制御するためのレジスタであり、例えばステップ実行イネーブルビット、ブレークイネーブルビット、ブレークアドレスビット、トレースイネーブルビットなどを有する。モニタプログラムにより動作するＣＰＵ５０が制御レジスタの各ビットにデータをライトしたり、各ビットのデータをリードすることで、各種のデバッグ処理が実現される。
【００５９】
省ピン型のデバッグツール１１０は、第１のクロック生成回路７０と同じボーレートのクロックを生成する第２のクロック生成回路１７０と、第２のクロック生成回路１７０で生成されたクロックを動作クロックとして、前記ターゲットシステムとのデバッグ用のデータの送受信を非同期式のシリアルデータ伝送で行うための通信制御を行う第２の非同期通信制御回路１８０とを含む。
【００６０】
省ピン型のデバッグツール１１０は、デバッグ用のデータを半２重の双方向通信で送受信を行うための１本の通信ライン２６２が接続されるデバッグ用端子１５８を含む。
【００６１】
ここにおいてデバッグ用のデータとは、例えばデバッグモジュールからターゲットシステムに送信するデバッグコマンドや、ターゲットシステムからデバッグモジュールに送信するデータやステータスコマンド等を含む。
【００６２】
第２の非同期通信制御回路１８０は、前記通信ライン２６２を介して、省ピン型のデバッグツール１１０とデバッグ用のデータを半２重の双方向通信で送受信を行う。
【００６３】
また２６８は基板（ユーザーボード）４０とデバッグツール１１０を繋ぐグランド線である。
【００６４】
本実施の形態によればターゲットシステム１０とデバッグモジュール１１０は、デバッグ時において非同期のシリアルデータ伝送でデバッグ用のデータの送受信を行う。従って同期通信でデバッグ時のデータの送受信を行う場合のように同期用のクロックの送受信を行う必要が無いため、デバッグ用のクロック端子を持つ必要がない。
【００６５】
このように本実施の形態によれば、ＣＰＵ内蔵の集積回路装置においてデバッグモードでのみ使用され、ユーザーモード（ユーザープログラム）では使用されない端子（ピン）を減らすことができるので、集積回路装置のコストの増加を防止することができる。
【００６６】
図２は、本実施の形態のターゲットシステムの構成の一例について説明するための図である。
【００６７】
マイクロコンピュータ２０は、ＣＰＵ５０、第１のクロック生成回路７０、第１の非同期通信制御回路８０、ＳＩＯ通信制御回路９０、デバッグ処理用プログラム格納ＲＯＭ６２、バス４４等を含む。
【００６８】
ＣＰＵ５０、第１のクロック生成回路７０、第１の非同期通信制御回路８０はバス４４に接続されている。
【００６９】
デバッグ処理用プログラム格納ＲＯＭ６２はＣＰＵ５０に接続され、デバッグ時にＣＰＵは、デバッグ処理用プログラム格納ＲＯＭ６２から読み出したデバッグ用プログラムを実行する。
【００７０】
ユーザーボード４０のコネクタ４２はデバッグツールとＳＩＯ通信線１６２で接続されデバッグ時に半２重で双方向データ通信を行う。
【００７１】
ＳＩＯ通信制御回路９０は、双方向ＩＯセル回路９２、マスクロジック回路９６、プルアップ回路９８を含む。双方向ＩＯセル回路９２のバッファ９３へは外部入力又は出力が入力される。また双方向ＩＯセル回路９２のバッファ９４は出力イネーブルが１の時出力となり、出力イネーブルが０の時はハイインピーダンスとなり外部入力が可能な状態となる。
【００７２】
またデバッグ用のＳＩＯ端子２２とノード９７の間で入出力データ線はプルアップ回路９８（例えば１００ｋΩの抵抗を介して３Ｖの電源に接続）に接続され、通信のない状態で入出力データ線がＨレベルとなるように設定されている。
【００７３】
またマスクロジック回路９６は、出力状態では１（例えばＨレベル）が入力されるようにマスクして入力がスタートしないように制御する。
【００７４】
第１の非同期通信制御回路８０は、送受信制御回路８１、受信シフトレジスタ８２、受信レジスタ（例えば８ビットのＦＦ（フィリップフロップ））８３、ステータスレジスタ（例えば２ビットのＦＦ（フィリップフロップ））８４、送信シフトレジスタ８５、送信レジスタ（例えば８ビットのＦＦ（フィリップフロップ））８６、シフトレジスタ用分周回路８７を含み、第１のクロック生成回路７０が生成した動作クロックに基づき動作する。
【００７５】
シフトレジスタ用分周回路８７は、第１のクロック生成回路７０が生成した動作クロックを分周する。例えば第１のクロック生成回路７０が動作クロックとして生成した９６００ビット／セカンドのクロックを１／１６に分周する。
【００７６】
受信シフトレジスタ８２は、ＳＩＯ入力（ＳＩＮ）２を順次格納して、分周された基準クロックに基づき、データを判定して、受信レジスタ８３に格納する。受信レジスタ８３に格納されたデータは、バスを介してＣＰＵ５０から読み出し可能である。
【００７７】
送信レジスタ８６に格納された値は、シリアルに送信シフトレジスタ８５に格納され、分周された基準クロックに基づき、ＳＯＵＴとして順次出力される。送信レジスタ８６へはバスを介してＣＰＵ５０からデータの書き込みが可能である。
【００７８】
このように第１の非同期通信制御回路は、マイクロコンピュータ内のパラレルバスからやってくるバイトデータをシリアルのビットストリームに変換すること、およびＳＩＯケーブルを経由してシリアルポートに入ってきたビットストリームをコンピュータが処理できるパラレルなバイトデータに変換する処理もあわせて行う。
【００７９】
またシリアルとパラレルの変換に加えて、バイトデータが送信される前にそれぞれのバイトに対して追加のビット(いわゆるスタートビットとストップビット)が加えるようにしてもよい。
【００８０】
送受信制御回路８１は、入出力制御信号（１（Ｈレベル）で出力、０（Ｌレベル）で入力）を生成する。入出力制御信号８９は、ステータスレジスタ（例えば２ビット）に設定される、ステータスレジスタ（例えば２ビット）はＣＰＵからアクセス可能である。また入出力制御信号８９は、通信制御回路の出力イネーブル信号となる。
【００８１】
第１のクロック生成回路７０は、分周クロック選択回路７２，分周用ＦＦ（フィリップフロップ）回路７４、クロック選択レジスタ９５を含む。
【００８２】
ユーザーボード４０のクロック発信機３０から入力されたクロックは、分周クロック選択回路（ＭＵＸ）７２及び分周用ＦＦ回路７４に入力される。分周用ＦＦ回路７４は入力されたクロックを１／２分周、１／４分周、１／８分周したクロックを生成し、それぞれ分周用ＦＦ回路７４に入力される。
【００８３】
分周用ＦＦ回路７４はクロック選択レジスタ７６に設定された値に基づき、入力されたクロック（１／１クロック、１／２分周クロック、１／４分周クロック、１／８分周クロック）から選択して動作クロックとして出力する。
【００８４】
クロック選択レジスタ７６はバスを介してＣＰＵ５０からアクセス可能である。
【００８５】
図３（Ａ）は、デバッグモジュールの各レジスタのアドレス割り当ての一例であり、図３（Ｂ）はクロック選択レジスタの値と分周比の関係の一例を示した表である。第１のクロック生成回路の分周クロック選択回路は、クロック選択レジスタの値のＤ０〜Ｄ１の値として、アドレス０ｘ０００Ｃの２ビットを参照し、’００’であれば１／８分周を行い、’０１’であれば１／４分周を行い、’１０’であれば１／２分周を行い、’１１’であれば１／１分周を行う。なお安全で低パワーにするためデフォルト値は１／８分周としてもよい。
【００８６】
図４は、本実施の形態のデバッグツールの構成の一例について説明するための図である。
【００８７】
デバッグツール１１０は、ＣＰＵ１５０、第２のクロック生成回路１７０、第２の非同期通信制御回路１８０、ＳＩＯ通信制御回路１９０、ＲＡＭ（ワーク用ＲＡＭ）１６４、フラッシュメモリ（ＩＣＥ制御用プログラム格納）１６２、可変発信機１３０、バス１４４等を含む。
【００８８】
ＣＰＵ１５０、第２のクロック生成回路１７０、第２の非同期通信制御回路１８０はバス１４４に接続されている。
【００８９】
フラッシュメモリ（ＩＣＥ制御用プログラム格納）１６２はＣＰＵ１５０に接続され、デバッグ時にＣＰＵは、フラッシュメモリ１６２から読み出したデバッグモジュール制御用プログラムを実行する。
【００９０】
デバッグツール１１０の外部端子１４２はターゲットシステムと通信線１６２で接続されデバッグ時に半２重で双方向データ通信を行う。
【００９１】
ＳＩＯ通信制御回路１９０は、双方向ＩＯセル回路１９２、マスクロジック部１９６、プルアップ回路１９８を含む。双方向ＩＯセル回路１９２のバッファ１９３へは外部入力又は出力が入力される。また双方向ＩＯセル回路１９２のバッファ１９４は出力イネーブルが１の特出力となり、出力イネーブルが０の時はハイインピーダンスとなり外部入力が可能な状態となる。
【００９２】
また端子１４２とノード１９７の間で入出力データ線はプルアップ回路１９８（例えば１００ｋΩの抵抗を介して３Ｖの電源に接続）に接続され、通信のない状態で入出力データ線がＨレベルとなるように設定されている。
【００９３】
またマスクロジック回路１９６は、出力状態では１（例えばＨレベル）が入力されるようにマスクして入力がスタートしないように制御する。
【００９４】
第２の非同期通信制御回路１８０は、送受信制御回路１８１、受信シフトレジスタ１８２、受信レジスタ（例えば８ビットのＦＦ（フィリップフロップ））１８３、ステータスレジスタ（例えば２ビットのＦＦ（フィリップフロップ））１８４、送信シフトレジスタ１８５、送信レジスタ（例えば８ビットのＦＦ（フィリップフロップ））１８６、シフトレジスタ用分周回路１８７を含み、第１のクロック生成回路１７０が生成した動作クロックに基づき動作する。
【００９５】
シフトレジスタ用分周回路１８７は、第２のクロック生成回路１７０が生成した動作クロックを分周する。例えば第２のクロック生成回路１７０が動作クロックとして生成した９６００ビット／セカンドのクロックを１／１６に分周する。
【００９６】
受信シフトレジスタ１８２は、ＳＩＯ入力（ＳＩＮ）を順次格納して、分周された基準クロックに基づき、データを判定して、受信レジスタ１８３に格納する。受信レジスタ１８３に格納されたデータは、バスを介してＣＰＵ１５０から読み出し可能である。
【００９７】
送信レジスタ１８６に格納された値は、シリアルに送信シフトレジスタ１８５に格納され、分周された基準クロックに基づき、ＳＯＵＴとして順次出力される。送信レジスタ１８６へはバスを介してＣＰＵ１５０からデータの書き込みが可能である。
【００９８】
送受信制御回路１８１は、入出力制御信号（１（Ｈレベル）で出力、０（Ｌレベル）で入力）を生成する。入出力制御信号１８９は、ステータスレジスタ（例えば２ビット）に設定される、ステータスレジスタ（例えば２ビット）はＣＰＵからアクセス可能である。また入出力制御信号１９５は、通信制御回路の出力イネーブル信号となる。
【００９９】
第１のクロック生成回路１７０は、分周クロック選択回路１７２，分周用ＦＦ（フィリップフロップ）回路１７４、クロック選択レジスタ１７６を含む。
【０１００】
可変発信器１３０から入力されたクロックは、分周クロック選択回路（ＭＵＸ）１７２及び分周用ＦＦ回路１７４に入力される。分周用ＦＦ回路１７４は入力されたクロックを１／２分周、１／４分周、１／８分周したクロックを生成し、それぞれ分周用ＦＦ回路１７４に入力される。
【０１０１】
分周用ＦＦ回路１７４はクロック選択レジスタ１７６に設定された値に基づき、入力されたクロック（１／１クロック、１／２分周クロック、１／４分周クロック、１／８分周クロック）から選択して動作クロックとして出力する。
【０１０２】
クロック選択レジスタ１７６はバスを介してＣＰＵ１５０からアクセス可能である。
【０１０３】
図５は、本実施の形態のデバッグコマンドの通信仕様の一例について説明するための図である。
【０１０４】
本実施の形態では、非同期通信を行うための所定の規格（例えばシリアル通信の規格であるＲＳ２３２Ｃ等）で、デバッグモジュールからマイクロコンピュータが例えば１４バイト、マイクロコンピュータからデバッグモジュールが例えば８バイト等のように、バイト数を決めてハンドシェイクを行うことで、双方向の半２重通信を実現する。
【０１０５】
例えばブレーク時にはマイクロコンピュータからデバッグモジュールへ、１バイトのブレークステータスが送信される（２１０参照）。
【０１０６】
またマイクロコンピュータへのメモリライト時には、デバッグモジュールからマイクロコンピュータにライトコマンド、ライトアドレス、ライトデータを含むデバッグコマンドを送信する。そしてマイクロコンピュータからはライトＯＫのステータスを返信する（２２０参照）。
【０１０７】
またマイクロコンピュータへのメモリリード時には、デバッグモジュールからマイクロコンピュータにリードコマンド、リードアドレスを含むデバッグコマンドを送信する。そしてマイクロコンピュータからはリードデータを返信する（２３０参照）。
【０１０８】
またマイクロコンピュータへのＲＵＮ指示時には、デバッグモジュールからマイクロコンピュータにＲＵＮコマンドを含むデバッグコマンドを送信する。そしてマイクロコンピュータからは返信コマンドを返信する（２４０参照）。
【０１０９】
またメモリライトやメモリリードやＲＵＮコマンドの結果マイクロコンピュータ側でエラーが発生した場合には、マイクロコンピュータからはＮＧステータスを含む返信コマンドを返信する（２５０参照）。
【０１１０】
図６は、本実施の形態のＣＰＵクロック３１と非同期制御回路クロック７９（１／２分周時）の関係を示したタイミングチャート図である。
【０１１１】
図７は、非同期制御回路における送信、受信データ１ビット分の判定にかかるタイミングチャート図である。
【０１１２】
７９は非同期通信制御回路動作クロックであり、８８はシフトレジスタ用分周回路の出力クロックであり、２又は３は送受信データ（ＳＩＮ又はＳＯＵＴ）の１ビット分である。非同期制御回路のシフトレジスタ用分周回路は非同期通信制御回路動作クロック７９を１／１６に分周して８８を出力する。受信シフトレジスタ又は送信シフトレジスタはこのシフトレジスタ用分周回路の出力クロック８８に基づき１ビット分のデータを判定する。
【０１１３】
図８は、非同期制御回路における送信、受信データ１バイト分の判定にかかるタイミングチャート図である。８８はシフトレジスタ用分周回路の出力クロックであり、２又は３は送受信データ（ＳＩＮ又はＳＯＵＴ）の１ビット分である。  送受信とも非動作時はＳＩＮ又はＳＯＵＴは１（例えばＨレベル）で（３１０参照）、スタートビット０（例えばＬレベル）で動作開始となり（３２０参照）、１バイト分のデータ３３０の送受信が行われ、ストップビット１（例えばＨレベル）で動作終了となり（３４０参照）、再び非動作時の１（例えばＨレベル）となる。
【０１１４】
図９は送信受信の入出力制御にかかるタイミングチャート図である。
【０１１５】
図１０（Ａ）〜（Ｃ）は、各コマンドについてのＳＩＯ動作の一例を示した図である。
【０１１６】
図１０（Ａ）は、メモリライト時のコマンド動作であり、図１０（Ｂ）は、メモリリード時のコマンド動作であり、図１０（Ａ）は、ｒｕｎ指示時のコマンド動作である。
【０１１７】
メモリライト時は、図１０（Ａ）に示すようにデバッグツールからマイクロコンピュータにライト用のデバッグコマンド（ライトコマンド、ライトアドレス、ライトデータを含む）が送信され（４１０参照）、マイクロコンピュータでメモリライト処理が行われると（４１２参照）、マイクロコンピュータからデバッグツールにステータス信号が送信される（４１４参照）。
【０１１８】
メモリリード時は、図１０（Ｂ）に示すようにデバッグツールからマイクロコンピュータにリード用のデバッグコマンド（リードコマンド、リードアドレスを含む）が送信され（４２０参照）、マイクロコンピュータでメモリリード処理が行われると（４２２参照）、マイクロコンピュータからデバッグツールにリードデータが送信される（４２４参照）。
【０１１９】
ｒｕｎ指示時は、図１０（Ｃ）に示すようにデバッグツールからマイクロコンピュータにｒｕｎ用のデバッグコマンド（ｒｕｎコマンドを含む）が送信され（４３０参照）、マイクロコンピュータのＣＰＵはブレーク状態からｒｕｎ状態へ復帰し、再びブレークが発生すると（４３４参照）、マイクロコンピュータのＣＰＵはｒｕｎ状態からブレーク状態に以降し、マイクロコンピュータからデバッグツールにブレークステータスが送信される（４３８参照）。
【０１２０】
図１１は、ターゲットシステムのマイクロコンピュータにおけるのデバッグ処理時の動作のフローチャート図である。
【０１２１】
まずブレーク入力を受け付けると（ステップＳ１０）、ブレーク処理（ＣＰＵがユーザーモードからデバッグモードに移行する処理）を行う（ステップＳ２０）。ブレーク入力は、ＣＰＵの割り込み信号として受け付けるようにしてもよい。
【０１２２】
デバッグモードに移行するとＳＯＵＴにブレークステータスを送信する（ステップＳ３０）。ＳＯＵＴのブレークステータスはＳＩＯ通信ラインを介してデバッグツールへ送信される。
【０１２３】
次にＳＩＮとしてデバッグツールから１バイト（デバッグコマンド）の受信があると以下の処理を行う（ステップＳ４０）。
【０１２４】
デバッグコマンドがライトコマンドである場合には、ＳＩＮからさらにライトアドレス４バイト、ライトデータ４バイトを受信する（ステップＳ５０、Ｓ５２）。そして受信したライトアドレスに受信したライトデータを書き込み（ステップＳ５４）、ＯＫステータスコマンドを送信する（ステップＳ５６）。
【０１２５】
デバッグコマンドがリードコマンドである場合には、ＳＩＮからさらにリードアドレス４バイトを受信する（ステップＳ６０、Ｓ６２）。そして受信したリードアドレスから４バイトのデータを読み出し（ステップＳ６４）、ステータスコマンドと４バイトのリードデータを送信する（ステップＳ６６）。
【０１２６】
デバッグコマンドがＲＵＮコマンドである場合には、ユーザーモードへの復帰処理を行い（ステップＳ７０、Ｓ７２）、ブレーク入力受け付け可能状態になる。
【０１２７】
デバッグコマンドがそれ以外である場合には、ＮＧステータスコマンドを送信する（ステップＳ８０、Ｓ８２）。
【０１２８】
図１２は、デバッグツールにおけるのデバッグ処理時の動作のフローチャート図である。
【０１２９】
マイクロコンピュータがユーザーモードでＲＵＮ中にＳＩＮからブレークステータスを受信すると以下の処理を行う（ステップＳ２１０）。
【０１３０】
まずオペレータからデバッグモジュールに対するデバッグ用のコマンドを受け付ける（ステップＳ２２０）。
【０１３１】
受け付けたコマンドがライトコマンドである場合には、ＳＯＵＴからライトコマンド（ライトアドレス４バイトとライトデータ４バイトを含む）を送信する（ステップＳ２３０、Ｓ２３２）。
【０１３２】
そしてＳＩＮからＯＫステータスを受信する（ステップＳ２３４）。
【０１３３】
受け付けたコマンドがリードコマンドである場合には、ＳＯＵＴからリードコマンド（リードアドレス４バイトを含む）を送信する（ステップＳ２４０、Ｓ２４２）。
【０１３４】
そしてＳＩＮからＯＫステータスとリードデータ４バイトを受信して（ステップＳ２４４）、オペレータに表示する（ステップＳ２４６）。
【０１３５】
受け付けたコマンドがＲＵＮコマンドである場合には、ＳＯＵＴからＲＵＮコマンドを送信する（ステップＳ２５０、Ｓ２５２）。
【０１３６】
また本実施の形態において、デバッグ時の動作クロックを変更できるように構成してもよい。例えばターゲットシステムの半導体集積回路装置の第１のクロック生成回路は、外部から設定されたクロック選択値に基づき、クロックを分周して所定のボーレートのクロックを生成する第１のボーレート変更回路を含み、前記省ピン型のデバッグツールの第２のクロック生成回路は、外部から設定されたクロック選択値に基づき、クロックを分周して所定のボーレートのクロックを生成する第２のボーレート変更回路を含むようにしてもよい。
【０１３７】
本実施の形態のマイクロコンピュータは図３（Ａ）（Ｂ）で説明したようにクロック選択レジスタに設定する値を変更することで、非同期制御回路に供給する動作クロックを変更することができる。クロック選択レジスタ（ここではアドレス０ｘ０００ＣのＤ０、Ｄ１）のデフォルト値として’００’が設定されているため、１／８分周で非同期制御回路は動作する。例えばクロック発信器が２０ＭＨｚの時、非同期制御回路は２０ＭＨｚ／８＝２．５ＭＨｚの動作クロックで動作する。この動作クロックシフトレジスタ用分周回路で１／１６に分周され、２．５ＭＨｚ／１６＝１５６．２５Ｋbps（bit per second）となる。１バイトの送受信に１０bit（スタートbit＋データ＋ストップbit）必要なので、最大で１５．６２５byte/secのデータ転送速度となる。
【０１３８】
例えば１Ｍbyte以上の大きなプログラムを送る場合等にスピードアップを図りたい場合には、第１のクロック生成回路で分周を１／８から１／１等に切り替える。これはクロック選択レジスタ（ここではアドレス０ｘ０００ＣのＤ０、Ｄ１）を’１，１’に書き換えることで実現することができる。すると最大で１２５Ｋbyte/secのデータ転送速度となり８倍のスピードアップを図ることができる。
【０１３９】
図１３は、通信データのボーレート切り替え制御について説明するための図である。
【０１４０】
図１３に示すように、ＳＩＯを介してデバッグモジュールからマイクロコンピュータにクロック選択レジスタの値を書きかけるためのライトコマンドを送信されると（５１０参照）、マイクロコンピュータのＣＰＵによってクロック選択レジスタの値が書き換えられ、非同期通信回路の動作クロック５４０が１／８分周から１／１分周に変更となる様子を示している。なおマイクロコンピュータのＣＰＵによってクロック選択レジスタの値が書き換えられると、マイクロコンピュータはデバッグツールに対して、ＯＫステータスを返信する。
【０１４１】
図１４は、デバッグツールにおける動作クロックの切り替え動作のフローチャート図である。
【０１４２】
オペレータから通信速度の切り替えコマンドを受け付けた場合には以下の処理を行う（ステップＳ３１０）。
【０１４３】
ＳＯＵＴからライトコマンド（ライトアドレス０ｘ１０００Ｃ、ライトデータ０ｘ３）を送信する（ステップＳ３２０）。
【０１４４】
デバッグモジュールの第２の非同期通信回路に供給する動作クロックも１／１分周に切り替える（ステップＳ３３０）。
【０１４５】
動作クロックも１／１分周で動作開始した第２の非同期通信回路はＳＩＮからＯＫステータスを受信する（ステップＳ３４０）。
【０１４６】
図１５は本実施の形態のターゲットシステム、デバッグシステム及びマイクロコンピュータの他の構成について説明するための図である。
【０１４７】
同図において図１と同一符号が付されたものについては、図１と同様であるので説明を省略する。
【０１４８】
図１５の実施形態では図１のグランド線２６８は持たず、ターゲットシステム１０の基板（ユーザーボード）４０と前記省ピン型のデバッグツール１１０は接地されている（４８、１５８参照）。
【０１４９】
なお基板（ユーザーボード）４０やデバッグツール１１０は直接接地されている場合でも良いし、コンセント等を介して間接的に接地されている場合でもよい。
【０１５０】
このようにすることによりターゲットシステム１０の基板（ユーザーボード）４０と前記省ピン型のデバッグツール１１０を結ぶグランド線を省略することが可能となり基板（ユーザーボード）４０のピン数を削減することができる。
【０１５１】
２．マイクロコンピュータ
図１６は、本実施の形態のマイクロコンピュータのハードウエアブロック図の一例である。
【０１５２】
本マイクロコンピュータ７００は、ＣＰＵ５１０、キャッシュメモリ５２０、ＲＡＭ７１０，ＲＯＭ７２０、ＭＭＵ７３０ＬＣＤコントローラ５３０、リセット回路５４０、プログラマブルタイマ５５０、リアルタイムクロック（ＲＴＣ）５６０、ＤＲＡＭコントローラ５７０、割り込みコントローラ５８０、通信制御装置（シリアルインターフェース）５９０、バスコントローラ６００、Ａ／Ｄ変換器６１０、Ｄ／Ａ変換器６２０、入力ポート６３０、出力ポート６４０、Ｉ／Ｏポート６５０、クロック発生装置６６０、プリスケーラ６７０及びそれらを接続する汎用バス６８０、デバッグモジュール７４０、専用バス７５０等、各種ピン６９０等を含む。
【０１５３】
デバッグモジュール７４０は、例えば図２で説明した構成を有する。
【０１５４】
３．電子機器
図１７に、本実施の形態の電子機器のブロック図の一例を示す。本電子機器８００は、マイクロコンピュータ（またはＡＳＩＣ）８１０、入力部８２０、メモリ８３０、電源生成部８４０、ＬＣＤ８５０、音出力部８６０を含む。
【０１５５】
ここで、入力部８２０は、種々のデータを入力するためのものである。マイクロコンピュータ８１０は、この入力部８２０により入力されたデータに基づいて種々の処理を行うことになる。メモリ８３０は、マイクロコンピュータ８１０などの作業領域となるものである。電源生成部８４０は、電子機器８００で使用される各種電源を生成するためのものである。ＬＣＤ８５０は、電子機器が表示する各種の画像（文字、アイコン、グラフィック等）を出力するためのものである。  音出力部８６０は、電子機器８００が出力する各種の音（音声、ゲーム音等）を出力するためのものであり、その機能は、スピーカなどのハードウェアにより実現できる。
【０１５６】
図１８（Ａ）に、電子機器の１つである携帯電話９５０の外観図の例を示す。この携帯電話９５０は、入力部として機能するダイヤルボタン９５２や、電話番号や名前やアイコンなどを表示するＬＣＤ９５４や、音出力部として機能し音声を出力するスピーカ９５６を備える。
【０１５７】
図１８（Ｂ）に、電子機器の１つである携帯型ゲーム装置９６０の外観図の例を示す。この携帯型ゲーム装置９６０は、入力部として機能する操作ボタン９６２、十字キー９６４や、ゲーム画像を表示するＬＣＤ９６６や、音出力部として機能しゲーム音を出力するスピーカ９６８を備える。
【０１５８】
図１８（Ｃ）に、電子機器の１つであるパーソナルコンピュータ９７０の外観図の例を示す。このパーソナルコンピュータ９７０は、入力部として機能するキーボード９７２や、文字、数字、グラフィックなどを表示するＬＣＤ９７４、音出力部９７６を備える。
【０１５９】
本実施の形態のマイクロコンピュータを図１８（Ａ）〜図１８（Ｃ）の電子機器に組みむことにより、低価格で画像処理速度の速いコストパフォーマンスの高い電子機器を提供することができる。
【０１６０】
なお、本実施形態を利用できる電子機器としては、図１８（Ａ）、（Ｂ）、（Ｃ）に示すもの以外にも、携帯型情報端末、ページャー、電子卓上計算機、タッチパネルを備えた装置、プロジェクタ、ワードプロセッサ、ビューファインダ型又はモニタ直視型のビデオテープレコーダ、カーナビゲーション装置等のＬＣＤを使用する種々の電子機器を考えることができる。
【０１６１】
なお、本発明は本実施形態に限定されず、本発明の要旨の範囲内で種々の変形実施が可能である。
【図面の簡単な説明】
【０１６２】
【図１】本実施の形態のターゲットシステム、デバッグシステム及びマイクロコンピュータの構成について説明するための図である。
【図２】本実施の形態のターゲットシステムの構成の一例について説明するための図である。
【図３】図３（Ａ）は、デバッグモジュールの各レジスタのアドレス割り当ての一例であり、図３（Ｂ）はクロック選択レジスタの値と分周比の関係の一例を示した表である。
【図４】本実施の形態のデバッグツールの構成の一例について説明するための図である。
【図５】本実施の形態のデバッグコマンドの通信仕様の一例について説明するための図である。
【図６】本実施の形態のＣＰＵクロック３１と非同期制御回路クロック７９（１／２分周時）の関係を示したタイミングチャート図である。
【図７】非同期制御回路における送信、受信データ１ビット分の判定にかかるタイミングチャート図である。
【図８】非同期制御回路における送信、受信データ１バイト分の判定にかかるタイミングチャート図である。
【図９】送信受信の入出力制御にかかるタイミングチャート図である。
【図１０】図１０（Ａ）〜（Ｃ）は、各コマンドについてのＳＩＯ動作の一例を示した図である。
【図１１】ターゲットシステムのマイクロコンピュータにおけるのデバッグ処理時の動作のフローチャート図である。
【図１２】デバッグツールにおけるのデバッグ処理時の動作のフローチャート図である。
【図１３】通信データのボーレート切り替え制御について説明するための図である。
【図１４】デバッグツールにおける動作クロックの切り替え動作のフローチャート図である。
【図１５】本実施の形態のターゲットシステム、デバッグシステム及びマイクロコンピュータの他の構成について説明するための図である。
【図１６】本実施の形態のマイクロコンピュータのハードウエアブロック図の一例である。
【図１７】マイクロコンピュータを含む電子機器のブロック図の一例を示す。
【図１８】図１８（Ａ）（Ｂ）（Ｃ）は、種々の電子機器の外観図の例である。
【図１９】従来型であるＣＰＵ置き換え型と呼ばれるＩＣＥの一例である。
【符号の説明】
【０１６３】
１  デバッグシステム、１０  ターゲットシステム、２０  マイクロコンピュータ、２８  デバッグ用端子、３０  クロック発信器、４０  ユーザーボード（基板）、５０  ＣＰＵ、６０  デバッグモジュール、６２  ＳＩＯ、７０  第１のクロック生成回路、８０  第１の非同期通信制御回路、１１０  デバッグモジュール、１７０  第２のクロック生成回路、１９０  第２の非同期通信制御回路、ＣＰＵ、５２０  キャッシュメモリ５３０  ＬＣＤコントローラ、５４０  リセット回路、５５０  プログラマブルタイマ、５６０  リアルタイムクロック（ＲＴＣ）、５７０  DMAコントローラ兼バスＩ／Ｆ、５８０  割り込みコントローラ、５９０  通信制御回路（シリアルインターフェース）、６００  バスコントローラ、６１０  Ａ／Ｄ変換器、６２０  Ｄ／Ａ変換器、６３０  入力ポート、６４０  出力ポート、６５０  Ｉ／Ｏポート、６６０  クロック発生装置（ＰＬＬ）、６７０  プリスケーラ、６８０  汎用バス、６９０  各種ピン、７００  マイクロコンピュータ、７１０  ＲＯＭ、７２０  ＲＡＭ、７３０  ＭＭＵ、７４０  絵バッグモジュール、７５０  専用バス、８００  電子機器、８１０  マイクロコンピュータ（ＡＳＩＣ）、８２０  入力部、８３０  メモリ、８４０  電源生成部８５０  ＬＣＤ、８６０  音出力部、９５０  携帯電話、９５２  ダイヤルボタン、９５４  ＬＣＤ、９５６  スピーカ、９６０  携帯型ゲーム装置、９６２  操作ボタン、９６４  十字キー、９６６  ＬＣＤ、９６８  スピーカ、９７０  パーソナルコンピュータ、９７２  キーボード、９７４  ＬＣＤ、９７６  音出力部
【図１】
2006252006.tif 000003
【図２】
2006252006.tif 000004
【図３】
2006252006.tif 000005
【図４】
2006252006.tif 000006
【図５】
2006252006.tif 000007
【図６】
2006252006.tif 000008
【図７】
2006252006.tif 000009
【図８】
2006252006.tif 000010
【図９】
2006252006.tif 000011
【図１０】
2006252006.tif 000012
【図１１】
2006252006.tif 000013
【図１２】
2006252006.tif 000014
【図１３】
2006252006.tif 000015
【図１４】
2006252006.tif 000016
【図１５】
2006252006.tif 000017
【図１６】
2006252006.tif 000018
【図１７】
2006252006.tif 000019
【図１８】
2006252006.tif 000020
【図１９】
2006252006.tif 000021