(57)【要約】【課題】デバッグの制御用コンピュータとエミュレータとの間の無線通信が不通状態となっても、デバッグの対象であるマイクロコンピュータを適切に制御することが可能なデバッグシステムを提供する【解決手段】デバッグシステムは、装置に実装されたマイクロコンピュータと、マイクロコンピュータのエミュレーションを実行するエミュレータと、エミュレータと無線通信で接続されてマイクロコンピュータのデバッグを実行するコンピュータとを備える。エミュレータは、エミュレーションを実行する制御部と、エミュレーション実行中にコンピュータとエミュレータ間の無線通信状態を監視する無線通信状態監視部と、不通時制御情報を記憶する記憶部とを具備する。制御部は、無線通信状態が不通状態であるとき、不通時制御情報に基づいて装置が予め定められた状態へ移行されるようにマイクロコンピュータを制御する。【選択図】図２
2011028734.tif 000002
【特許請求の範囲】
【請求項１】
装置に実装されたマイクロコンピュータと、
前記マイクロコンピュータのエミュレーションを実行するエミュレータと、
前記エミュレータと無線通信で接続されて、前記エミュレーションの開始を指示し、また前記エミュレーションの結果に基づいて前記マイクロコンピュータのデバッグを実行するコンピュータと
を備え、
前記エミュレータは、
前記コンピュータからの制御情報に基づいて前記マイクロコンピュータのエミュレーションを実行する制御部と、
前記エミュレーションを実行しているときに、前記コンピュータと前記エミュレータとの間の無線通信の状態を監視する無線通信状態監視部と、
不通時制御情報を記憶する記憶部と、
を具備し、
前記制御部は、前記無線通信が不通状態であるとき、前記記憶部から前記不通時制御情報を取得して、前記装置が予め定められた状態へ移行されるように、前記不通時制御情報に基づいて前記マイクロコンピュータを制御する
デバッグシステム。
【請求項２】
請求項１に記載のデバッグシステムであって、
前記不通時制御情報は、前記マイクロコンピュータが前記装置を制御するために実行するユーザプログラムを停止させる制御情報と、前記マイクロコンピュータに前記装置を予め定められた状態へ移行させる制御情報とを含む
デバッグシステム。
【請求項３】
請求項１または請求項２に記載のデバッグシステムであって、
前記制御部は、前記無線通信が前記不通状態であるときに、前記マイクロコンピュータが前記ユーザプログラムを実行中であるか否かを判定して、前記ユーザプログラムが実行中であるときに前記不通時制御情報に基づいて前記マイクロコンピュータを制御する
デバッグシステム。
【請求項４】
請求項１から請求項３までのいずれかに記載のデバッグシステムであって、
前記無線通信状態監視部は、前記コンピュータと前記エミュレータとの間の通信におけるデータ再送回数、前記コンピュータと前記エミュレータとの間の無線電波の受信電界強度、あるいは、前記コンピュータと前記エミュレーションとの間の通信におけるデータエラーレートのうちの、いずれかに基づいて前記無線通信状態における前記不通状態を判定する
デバッグシステム。
【請求項５】
請求項１から請求項４までのいずれかに記載のデバッグシステムで使用されるエミュレータ。
【請求項６】
装置に実装されたマイクロコンピュータと、
前記マイクロコンピュータのエミュレーションを実行するエミュレータと、
前記エミュレータと無線で接続されて、前記エミュレーションの開始を指示し、また前記エミュレーションの結果に基づいて前記マイクロコンピュータのデバッグを実行するコンピュータと
を備えるデバッグシステムにおいて、
前記エミュレータが、前記コンピュータから前記マイクロコンピュータの制御情報を入力するステップと、
前記エミュレータが、前記制御情報に基づいて前記マイクロコンピュータのエミュレーションを実行するステップと、
前記エミュレータが、前記エミュレーションを実行しているときに、前記コンピュータと前記エミュレータとの間の無線通信状態を監視するステップと、
前記エミュレータが、不通時制御情報を記憶するステップと、
前記エミュレータが、前記無線通信状態が前記不通状態であるか否かを判定するステップと、
前記エミュレータが、前記無線通信状態が前記不通状態であるときに、前記装置が予め定められた状態へ移行されるように、前記不通時制御情報に基づいて前記マイクロコンピュータを制御するステップと
を備えるデバッグ方法。
【請求項７】
請求項６に記載のデバッグ方法であって、
前記不通時制御情報は、前記マイクロコンピュータが前記装置を動作させるために実行するユーザプログラムを停止させる制御情報と、前記マイクロコンピュータに前記装置を予め定められた状態へ移行させる制御情報と
を含むデバッグ方法。
【請求項８】
請求項６または請求項７に記載のデバッグ方法であって、
前記エミュレータが、前記無線通信状態が前記不通状態であるときに、前記ユーザプログラムが実行中であるか否かを判定するステップ
をさらに備え、
前記制御するステップは、
前記エミュレータが、前記マイクロコンピュータにより前記ユーザプログラムが実行中であるときに、前記装置が予め定められた状態へ移行されるように、前記不通時制御情報に基づいて前記マイクロコンピュータを制御するステップ
を含むデバッグ方法。
【請求項９】
請求項６から請求項８までのいずれかに記載のデバッグ方法であって、前記無線通信状態が前記不通状態であるか否かを判定するステップは、
前記エミュレータが、前記コンピュータと前記エミュレータとの間の通信におけるデータ再送回数、前記コンピュータと前記エミュレータとの間の無線電波の受信電界強度、あるいは、前記コンピュータと前記エミュレーションとの間の通信におけるデータエラーレートのうちの、いずれかに基づいて前記無線通信状態が前記不通状態であるか否かを判定するステップ
を含むデバッグ方法。
【請求項１０】
請求項６から請求項９までのいずれかに記載のデバッグ方法をコンピュータに実行させるデバッグプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デバッグシステムに関し、特に、オンチップデバッグを行うデバッグシステムに関する。
【背景技術】
【０００２】
オンチップデバッグは、開発対象のマイクロコンピュータをターゲットシステムに実装した状態で、マイクロコンピュータに組み込まれたプログラムのデバッグを行うプログラム開発手法である。このため、オンチップデバッグは、実際の使用状態に近い状態でデバッグを行うことができる。このような、オンチップデバッグでは、デバッグを制御するホストコンピュータとターゲットシステム上のマイクロコンピュータとの間をケーブルで接続していた。そのため、ユーザは、ケーブルの接続に手間を要し、また、接続したケーブル自体が邪魔になるといった課題があった。
【０００３】
特許文献１は、コンピュータと開発支援装置との間を結ぶ信号ケーブルの配線に手間がかからないマイクロコンピュータ開発支援システムを開示している。図１は、特許文献１におけるマイクロコンピュータ開発支援システムの構成を示す図である。特許文献１のマイクロコンピュータ開発システムは、コンピュータ１ａ〜１ｎと、無線装置２ａ〜２ｎ、３ａ〜３ｎと、開発支援装置４ａ〜４ｎと、ターゲットシステム５ａ〜５ｎとを備えている。ターゲットシステム５ａ〜５ｎは、マイクロコンピュータ６ａ〜６ｎをそれぞれ備えている。コンピュータ１ａ〜１ｎと無線装置２ａ〜２ｎとは、有線で接続されている。また、無線装置３ａ〜３ｎと開発支援装置４ａ〜４ｎ間及び、開発支援装置４ａ〜４ｎとターゲットシステム５ａ〜５ｎに間も、それぞれ有線で接続されている。無線装置２ａ〜２ｎと無線装置３ａ〜３ｎとは、互いに無線通信を行うことが可能である。
【０００４】
開発支援装置４ａ〜４ｎは、コンピュータ１ａ〜１ｎ上で作成されたプログラムを無線装置２ａ〜２ｎと、無線装置３ａ〜３ｎとを介して入力する。開発支援装置４ａ〜４ｎは、当該プログラムをターゲットシステム５ａ〜５ｎに実装されたマイクロコンピュータ６ａ〜６ｎへ書き込む。開発支援装置４ａ〜４ｎは、マイクロコンピュータ６ａ〜６ｎへ書き込まれたプログラムを動作させて、動作結果である実行情報を取得する。開発支援装置４ａ〜４ｎは、実行情報をコンピュータ１ａ〜１ｎへ無線装置３ａ〜３ｎと無線装置２ａ〜２ｎとを介して送信する。コンピュータ１ａ〜１ｎは、開発支援装置４ａ〜４ｎから受信される実行情報を用いて、マイクロコンピュータ６ａ〜６ｎのプログラムに対するデバッグを行う。
【０００５】
特許文献１によれば、コンピュータ１ａ〜１ｎと開発支援装置４ａ〜４ｎとは、無線装置３ａ〜３ｎと無線装置２ａ〜２ｎとによる無線通信により接続されるため、コンピュータ１ａ〜１ｎと開発支援装置４ａ〜４ｎとの間を結ぶ信号ケーブルの配線に手間がかからない。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平７−３１９７８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１のプログラム開発支援システムは、コンピュータ１ａ〜１ｎが開発支援装置４ａ〜４ｎと無線通信してマイクロコンピュータ６ａ〜６ｎの動作を制御している。しかしながら、無線通信は、有線通信と比べて不安定である。無線干渉等の様々な要因により、無線装置３ａ〜３ｎと無線装置２ａ〜２ｎとの間の無線通信が不通状態となると、コンピュータ１ａ〜１ｎは、開発支援装置４ａ〜４ｎとが通信を行うことができない。その結果、マイクロコンピュータ６ａ〜６ｎの制御ができなくなるという課題がある。
【課題を解決するための手段】
【０００８】
以下に、（発明を実施するための形態）で使用される番号を用いて、課題を解決するための手段を説明する。これらの番号は、（特許請求の範囲）の記載と（発明を実施するための形態）との対応関係を明らかにするために付加されたものである。ただし、それらの番号を、（特許請求の範囲）に記載されている発明の技術的範囲の解釈に用いてはならない。
【０００９】
本発明のデバッグシステムは、装置（４０）に実装されたマイクロコンピュータ（４１）と、マイクロコンピュータ（４１）のエミュレーションを実行するエミュレータ（３０）と、エミュレータ（３０）と無線通信で接続されて、エミュレーションの開始を指示し、またエミュレーションの結果に基づいてマイクロコンピュータ（４１）のデバッグを実行するコンピュータ（１０）とを備える。エミュレータ（３０）は、コンピュータ（１０）からの制御情報に基づいてマイクロコンピュータ（４１）のエミュレーションを実行する制御部（３２）と、エミュレーションを実行しているときに、コンピュータ（１０）とエミュレータ（３０）との間の無線通信の状態を監視する無線通信状態監視部（３５）と、不通時制御情報（３３１）を記憶する記憶部（３３）とを具備する。制御部（３２）は、無線通信状態が不通状態であるとき、記憶部（３３）ら不通時制御情報（３３１）を取得して、装置（４０）が予め定められた状態へ移行されるように、不通時制御情報（３３１）に基づいてマイクロコンピュータ（４１）を制御する。
【００１０】
本発明のエミュレータ（３０）は、上述のデバッグシステムで使用される。
【００１１】
本発明のデバッグ方法は、装置（４０）に実装されたマイクロコンピュータ（４１）と、マイクロコンピュータ（４１）のエミュレーションを実行するエミュレータ（３０）と、エミュレータ（３０）と無線で接続されて、エミュレーションの開始を指示し、またエミュレーションの結果に基づいて、マイクロコンピュータ（４１）のデバッグを実行するコンピュータ（１０）とを備えるデバッグシステムにおいて用いられる。デバック方法は、エミュレータ（３０）が、コンピュータ（１０）からマイクロコンピュータ（４１）の制御情報を入力するステップと、エミュレータ（３０）が、制御情報に基づいてマイクロコンピュータ（４１）のエミュレーションを実行するステップ（Ｓ１１０）と、エミュレータ（３０）が、エミュレーションを実行しているときに、コンピュータ（１０）とエミュレータ（３０）との間の無線通信状態を監視するステップ（Ｓ１２０）と、エミュレータ（３０）が、不通時制御情報（３３１）を記憶するステップ（Ｓ２０）と、エミュレータ（３０）が、無線通信状態が不通状態であるか否かを判定するステップ（Ｓ１３０）と、エミュレータ（３０）が、無線通信状態が不通状態であるときに、装置（４０）が予め定められた状態へ移行されるように、不通時制御情報（３３１）に基づいてマイクロコンピュータ（４１）を制御するステップ（Ｓ１８０）とを備える。
【００１２】
本発明のデバッグプログラムは、上述のデバッグ方法をコンピュータ（１０）に実行させる。
【発明の効果】
【００１３】
本発明によれば、デバッグの制御用コンピュータとエミュレータとの間の無線通信が不通状態となっても、デバッグの対象であるマイクロコンピュータを適切に制御することが可能なデバッグシステムを提供することができる。
【図面の簡単な説明】
【００１４】
【図１】特許文献１におけるマイクロコンピュータ開発支援システムの構成を示す図である。
【図２】本発明のデバッグシステムの構成を示す図である。
【図３】本発明の不通時制御情報３３１を登録する際の動作フローである。
【図４】本発明のデバッグシステムの動作フローである。
【発明を実施するための形態】
【００１５】
添付図面を参照して、本発明によるデバッグシステムを以下に説明する。
【００１６】
［構成の説明］
はじめに、本発明の一実施形態におけるデバッグシステムの構成を説明する。図２は、本実施形態におけるデバッグシステムの構成を示す図である。本実施形態のデバッグシステムは、コンピュータ１０と、無線装置２０と、エミュレータ３０と、ターゲットシステム４０とを備えている。
【００１７】
ターゲットシステム４０は、マイクロコンピュータ４１を備える。マイクロコンピュータ４１は、本実施形態のデバッグシステムによりデバッグの行われるべき対象である。ターゲットシステム４０は、マイクロコンピュータ４１を搭載して動作する装置、例えば、情報家電や、自動車といった様々な装置を含む。マイクロコンピュータ４１には、ターゲットシステム４０の実行するべき機能に応じて開発されたユーザプログラムが組み込まれている。本発明のデバッグシステムは、オンチップデバッグを行う。そのため、マイクロコンピュータ４１のユーザプログラムは、ターゲットシステム４０に実装された状態でデバッグが行われる。ターゲットシステム４０は、マイクロコンピュータ４１の制御に応じて動作する。マイクロコンピュータ４１は、エミュレータ３０と接続されている。マイクロコンピュータ４１は、エミュレータ３０から入力する制御信号に基づいて、ターゲットシステム４０を制御する。
【００１８】
コンピュータ１０は、マイクロコンピュータ４１のデバッグを実行するホスト端末である。コンピュータ１０は、デバッグを行うソフトウェアであるデバッガを実行する。コンピュータ１０は、ユーザの入力に応じて、デバッグにおける制御情報を、無線装置２０を介してエミュレータ３０に出力する。制御情報は、エミュレータ３０にマイクロコンピュータ４１を制御させるための情報である。例えば、マイクロコンピュータ４１へのユーザプログラム実行命令といった情報を含む。コンピュータ１０は、無線装置２０を介してエミュレータ３０から受信されるエミュレーション結果に基づいてデバッグを行う。
【００１９】
無線装置２０は、アンテナを備えて、エミュレータ３０と無線通信を行う。無線装置２０とエミュレータ３０は、例えば、Ｚｉｇｂｅｅ（ＩＥＥＥ８０２．１５．４）に基づく通信方式により通信を行う。なお、無線装置２０とエミュレータ３０が行う無線通信の通信方式は、これに限定しない。例えば、無線装置２０とエミュレータ３０は、無線ＬＡＮ（Ｗｉｒｅｌｅｓｓ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ：ＩＥＥＥ８０２．１１ａ，ｂ，ｇ，ｎ）や、Ｂｌｕｅｔｏｏｔｈ（ＩＥＥＥ８０２．１５．１）といった通信方式を用いて無線通信を行っても良い。また、無線装置２０は、コンピュータ１０と接続されている。無線装置２０は、例えば、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）を通信インターフェイス（以下、通信ＩＦ）としてコンピュータ１０と接続される。なお、無線装置２０とコンピュータ１０との通信ＩＦは、これらに限定しない。例えば、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ：ＩＥＥＥ８０２．３）を通信ＩＦとしても良い。また、無線装置２０は、コンピュータ１０に搭載されていてもよい。
【００２０】
エミュレータ３０は、マイクロコンピュータ４１をエミュレートする。エミュレータ３０は、無線通信部３１と、制御部３２と、記憶部３３と、通信部３４と、無線通信状態監視部３５とを備える。
【００２１】
無線通信部３１は、アンテナを備えており、無線装置２０と無線通信を行う。無線通信部３１は、無線装置２０から受信される無線信号に対して、通信方式に応じた受信処理を行って制御部３２へ出力する。また、無線通信部３１は、制御部３２から入力される信号に、通信方式に応じた送信処理を行って、アンテナから無線装置２０へ送信する。なお、無線通信部３１と無線装置２０との間の無線通信方式は、前述した通信方式等を用いることが可能である。
【００２２】
通信部３４は、マイクロコンピュータ４１との通信ＩＦである。通信部３４は、マイクロコンピュータ４１と制御部３２とに接続されており、データの送受信が可能である。
【００２３】
記憶部３３は、エミュレータ３０の機能を実現するためのプログラムやデータを記憶している。記憶部３３は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）で構成される。記憶部３３は、制御部３２と接続されており、制御部３２とデータ送受信が可能である。
【００２４】
本実施形態の記憶部３３は、不通時制御情報３３１を記憶している。不通時制御情報３３１は、無線装置２０と無線通信部３１の間の無線通信が不通状態になり、コンピュータ１０がエミュレータ３０を介してマイクロコンピュータ４１を制御することができないときにマイクロコンピュータ４１を制御するために使用される情報である。無線通信が不通の状態において、エミュレータ３０の制御部３２は、通信部３４を介して不通時制御情報をマイクロコンピュータ４１に送信する。マイクロコンピュータ４１は、不通時制御情報３３１に基づいて予め定められた制御を実行し、ターゲットシステム４０を予め定められた状態へ移行させる。マイクロコンピュータ４１は、様々な分野のターゲットシステム４０に搭載されるため、不通状態時に実行される予め定められた制御は、ユーザプログラムを開発するユーザにより決定されることであり、ターゲットシステム４０応じて異なる。
【００２５】
無線通信状態監視部３５は、無線通信部３１と無線装置２０との間の無線通信状態を監視している。無線通信状態監視部３５は、無線通信状態を表す予め定められた閾値を記憶しており、当該閾値に基づいて、無線通信が不通状態であるか否かを判定する。
本実施形態においては、無線通信状態監視部３５は、制御部３２とコンピュータ１０との間の通信におけるデータ再送回数（リトライ回数）が一定の閾値以上となった場合、無線通信が不通状態であるか否かを判定する。無線通信が不通状態であるとは、コンピュータ１０によるエミュレータ３０を介したマイクロコンピュータ４１の制御が難しくなるような無線通信状態も含む。なお、当然ではあるが、全く無線通信が行えない状態のみを不通状態としても良い。また、無線通信状態監視部３５は、データ再送回数のほかに、コンピュータ１０と制御部３２との間の通信におけるデータエラーレートや、無線通信部３１の受信する無線装置２０の放射した電波の受信電界強度に基づいて、無線通信の不通状態を判定してもよい。
【００２６】
制御部３２は、記録媒体（図示せず）からロードされ、格納されたプログラムを実行することにより、無線通信部３１を介して入力されるコンピュータ１０からの制御情報に基づいて、マイクロコンピュータ４１のエミュレーションを実行する。制御部３２は、通信部３４を介してマイクロコンピュータ４１からエミュレーションの実行結果を入力すると、無線通信部３１を介してコンピュータ１０へ送信する。また、本実施形態の制御部３２は、無線状態監視部３５が、無線通信状態が不通状態であると判定した場合、記憶部３３に記憶された不通時制御情報３３１に基づいた制御信号をマイクロコンピュータ４１へ送信して、マイクロコンピュータ４１を制御する。
【００２７】
ここで、本実施形態における無線通信が不通状態となった場合に、不通時制御情報３３１を用いてターゲットシステム４０を予め定められた状態へ移行させる制御を行う例を示す。デバッグ実行中のマイクロコンピュータ４１の動作として２つの状態が考えられる。一つは、ブレーク中に無線通信が不通状態となった場合、もう一つは、ユーザプログラム実行中に無線通信が不通状態となった場合である。
【００２８】
まず、マイクロコンピュータ４１がブレーク中に無線通信が不通状態となった場合を考える。この場合、マイクロコンピュータ４１はユーザプログラムを実行していないため、ターゲットシステム４０は、ある状態で停止している。そのため、無線通信が不通状態となると、無線通信部３１は、無線通信の回復のために、対向側の無線装置２０に対するリトライを繰り返す。
【００２９】
次に、ユーザプログラム実行中に無線通信が不通状態となった場合を考える。この場合、ターゲットシステム４０がデバッグを実行するユーザの望む状態に移行しない可能性がある。
【００３０】
そこで、ターゲットシステム４０がユーザの望む状態へ移行しない場合に備えて、不通時制御情報３３１が予め記憶部３３に格納されている。制御部３２は、記憶部３３から不通時制御情報３３１を読み出し、それに対応する信号をターゲットシステム４０のマイクロコンピュータ４１に送信する。これにより、ターゲットシステム４０を所定の状態に移行させることが可能となる。
【００３１】
［動作方法の説明］
次に、本実施形態におけるデバッグシステムの動作方法の説明を行う。
【００３２】
はじめに、図３を参照して、本実施形態における不通時制御情報３３１を登録する際の動作方法を説明する。図３は、本実施形態における不通時制御情報３３１を登録する際の動作フローである。
【００３３】
（ステップＳ１０）
ユーザは、無線装置２０とエミュレータ３０の無線通信部３１との間の無線接続を確立する。ユーザは、コンピュータ１０においてデバッガを起動し、マイクロコンピュータ４１のデバッグを実行する。ユーザは、デバッガの設定画面において、不通時制御情報３３１を設定する。ここで、不通時制御情報３３１の設定は、ユーザがデバッガの設定画面において選択してもよいし、コマンド等により入力してもよい。
【００３４】
（ステップＳ２０）
ユーザは、コンピュータ１０へ不通時制御情報３３１の入力を完了すると、コンピュータ１０に、不通時制御情報３３１をエミュレータ３０へ書き込むように命令を入力する。コンピュータ１０は、無線装置２０を介して不通時制御情報３３１をエミュレータ３０へ送信する。エミュレータ３０の制御部３２は、無線通信部３１を介して不通時制御情報３３１を受信し、不通時制御情報３３１を記憶部３３へ記憶する。
【００３５】
このように、ユーザは、マイクロコンピュータ４１のデバッグを開始する前に、不通時制御情報３３１をエミュレータ３０へ設定することができる。マイクロコンピュータ４１のユーザプログラムは、マイクロコンピュータ４１が搭載されるターゲットシステム４０に応じて開発されている。ユーザは、マイクロコンピュータ４１が搭載されるターゲットシステム４０に応じた通信不通時の制御を設定することができる。
【００３６】
次に、図４を参照して、本実施形態におけるデバッグシステムの動作方法を説明する。なお、本実施形態において、エミュレータ３０の無線通信状態監視部３５は、制御部３２とコンピュータ１０との間のデータ再送回数（リトライ回数）に基づいて、無線通信状態を判定するものとし、予め判定用の閾値も設定されているものとする。また、エミュレータ３０の記憶部３３に記憶された不通時制御情報３３１は、説明の簡易のため、マイクロコンピュータ４１のユーザプログラム実行を停止する制御内容に設定されているものとする。なお、不通時制御情報３３１の制御内容は、一例であって、例えば、マイクロコンピュータ４１がユーザプログラムを停止させる制御とターゲットシステム４０を予め定められた状態へ移行させる制御といった複数の制御内容を含んでも良い。
【００３７】
（ステップＳ１００）
コンピュータ１０とエミュレータ３０とは、無線装置２０と無線通信部３１との間の無線通信を介して接続される。エミュレータ３０の通信部３４とマイクロコンピュータ４１とは、予め接続されている。
【００３８】
（ステップＳ１１０）
ユーザは、デバッガへデバッグの開始を指示する。デバッガは、ユーザから入力された制御情報を、無線装置２０を介してエミュレータ３０へ送信する。エミュレータ３０の制御部３２は、無線通信部３１を介してデバッガからの制御情報を受信する。制御部３２は、制御情報に基づいて、制御信号をマイクロコンピュータ４１へ送信してエミュレーションを開始する。この後、制御部３２は、指定されたブレークポイント等においてエミュレーションの実行結果をマイクロコンピュータ４１から受信すると、無線通信部３１を介してコンピュータ１０のデバッガへ送信する。コンピュータ１０は、エミュレータ３０から受信されるエミュレーションの実行結果に基づいて、マイクロコンピュータ４１のユーザプログラムのデバッグを行う。
【００３９】
（ステップＳ１２０）
エミュレータ３０の無線通信状態監視部３５は、制御部３２によりマイクロコンピュータ４１のエミュレーションが開始されたことを検知すると、無線通信部３１と無線装置２０との間の無線通信状態の監視を開始する。本実施形態において無線通信状態監視部３５は、制御部３２とコンピュータ１０との間の通信におけるデータ再送回数が、予め定められた閾値を超えるか否かを判定することによって、無線通信状態の監視を行う。
【００４０】
（ステップＳ１３０）
エミュレータ３０の制御部３２は、コンピュータ１０からの制御情報に基づいて、マイクロコンピュータ４１のエミュレーションを継続する。これに伴って、コンピュータ１０のデバッガと制御部３２との間でデータの無線通信がおこなわれる。無線通信状態監視部３５は、コンピュータ１０と制御部３２との間の通信におけるデータ再送回数が閾値を超えるか否かを判定する。無線通信状態監視部３５は、一定の時間間隔ごとに判定を行ってもよい。あるいは、コンピュータ１０とエミュレータ３０との間でデータ送受信が発生する度に判定を行っても良い。データ再送回数が閾値を超えた場合、制御フローは、無線通信が不通状態であると判定して、ステップＳ１５０へ進む。一方、データ再送回数が閾値を越えていない場合、無線通信が不通状態でないとは判定して、ステップＳ１４０へ進む。
【００４１】
（ステップＳ１４０）
無線通信状態監視部３５は、コンピュータ１０のデバッガによるデバッグが完了したか否かを判定する。無線通信状態監視部３５は、制御部３２からエミュレーションの完了を通知されて、デバッグの完了を検知してもよいし、デバッガと制御部３２との間の通信内容や、通信停止時からの時間に基づくタイムアウト等によって、デバッグの完了を検知してもよい。デバッグが完了していない場合、制御フローは、ステップＳ１３０へ戻り、無線通信状態の監視を継続する。一方、デバッグが完了した場合、無線通信状態監視部３５は、無線通信状態の監視を終了して、本動作方法は終了となる。
【００４２】
（ステップＳ１５０）
制御部３２は、無線通信状態監視部３５から、無線通信が不通状態にあるとの通知を受けると、マイクロコンピュータ４１のユーザプログラムがブレーク中であるか否かを判定する。制御部３２は、コンピュータ１０とマイクロコンピュータ４１との間で送受信される通信内容に基づいてブレーク中であるか否かを判定する。ユーザプログラムがブレーク中である場合、ステップＳ１６０へ進む。一方、ユーザプログラムがブレーク中で無い場合、ステップＳ１７０へ進む。
【００４３】
（ステップＳ１６０）
制御部３２は、ユーザプログラムがブレーク中であると判定すると、無線通信部３１に対してリトライ実行を継続して命令する。無線通信３１は、無線通信を回復するべくリトライを繰り返す。この後、フローは、ステップＳ１３０へ戻る。なお、無線通信が不通状態から回復しない場合、エミュレータ３０あるいは無線装置２０が所定のアラーム等を出力して、ユーザへ通知してもよい。
【００４４】
（ステップＳ１７０）
エミュレータ３０の制御部３２は、ユーザプログラムがブレーク中で無いと判定すると、記憶部３３の不通時制御情報３３１を取得する。
【００４５】
（ステップＳ１８０）
エミュレータ３０の制御部３２は、不通時制御情報３３１に基づいて、マイクロコンピュータ４１へ制御信号を送信する。マイクロコンピュータ４１は、エミュレータ３０から制御信号を入力すると、当該制御信号に基づく処理を実行して、ターゲットシステム４０を制御する。本実施形態において不通時制御情報３３１は、マイクロコンピュータ４１によるユーザプログラムの実行を停止する制御内容である。マイクロコンピュータ４１は、制御信号を入力すると、実行していたユーザプログラムを停止する。このように、ターゲットシステム４０を予め定められた状態（制御の実行停止状態）へ移行することができる。以上で、本動作方法は、終了となる。
【００４６】
本実施形態のデバッグシステムによれば、エミュレータ３０の記憶部へ予め不通時制御情報３３１を記憶させておくことで、無線通信状態が不通状態となった場合にも、エミュレータ３０の制御部３２は、不通時制御情報３３１に基づいてマイクロコンピュータ４１を適切に制御することができる。不通時制御情報は、ターゲットシステム４０に応じて、ターゲットシステム４０を予め定められた状態へ移行させる制御をマイクロコンピュータ４１に実行させる内容に設定されている。このため、ユーザは、引き続きターゲットシステム４０の開発を続けることができる。
【００４７】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施の形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更を行うことができる。
【符号の説明】
【００４８】
１ａ〜１ｎ  コンピュータ
２ａ〜２ｎ  無線装置
３ａ〜３ｎ  無線装置
４ａ〜４ｎ  開発支援装置
５ａ〜５ｎ  ターゲットシステム
６ａ〜６ｎ  マイクロコンピュータ
１０  コンピュータ
２０  無線装置
３０  エミュレータ
３１  無線通信部
３２  制御部
３３  記憶部
３４  通信部
３５  無線通信状態監視部
４０  ターゲットシステム
４１  マイクロコンピュータ
３３１  不通時制御情報
【図１】
2011028734.tif 000003
【図２】
2011028734.tif 000004
【図３】
2011028734.tif 000005
【図４】
2011028734.tif 000006