(57)【要約】【課題】通信装置内部のプロトコルレイヤ間メッセージと、装置間で送受信されるメッセージの発生時刻を同一時間軸で比較できなかった。【解決手段】マスタ装置と一以上のスレーブ装置とモニタ装置から成るシステムで、通信開始時にマスタ装置は自局のクロック情報を送信。スレーブ装置とモニタ装置は、受信したクロック情報と自局のクロック情報との差分を算出し、マスタ装置のクロック情報に準拠したタイムスタンプを生成。マスタ装置とスレーブ装置は、自局内で発生した複数プロトコルレイヤ間で送受信されるメッセージを、マスタ装置のクロック情報に準拠したタイムスタンプを付与して保存。モニタ装置は、マスタ装置とスレーブ装置間で送受信されるメッセージをモニタし、マスタ装置のクロック情報に準拠したタイムスタンプを付与して保存。保存されたタイムスタンプ付きメッセージを比較し通信処理解析。【選択図】  図１
2004158945.tif 000002
【特許請求の範囲】
【請求項１】
複数の無線装置間において、１対多の関係で通信を行う場合、親局に相当するマスタ装置と、
前記マスタ装置と通信を行う子局に相当するスレーブ装置と、
前記マスタ装置と前記スレーブ装置間の通信状況を監視するモニタ装置と、
前記マスタ装置と前記スレーブ装置と前記モニタ装置の動作状況を出力するログ表示装置から構成される通信プロトコル試験システムにおいて、
前記マスタ装置は、前記マスタ装置独自のクロック情報であるマスタクロック情報を生成するマスタクロック生成手段と、
前記マスタクロック情報からマスタタイムスタンプを生成するマスタタイムスタンプ生成手段と、
前記マスタクロック情報を、前記スレーブ装置と前記モニタ装置に対して送出するマスタクロック情報送信手段と、
前記マスタ装置内部で発生する通信データに、前記マスタタイムスタンプを付与して保存するマスタメッセージ保存手段を備え、
前記スレーブ装置は、前記スレーブ装置独自のクロック情報であるスレーブクロック情報を生成するスレーブクロック生成手段と、
前記マスタ装置から送信される前記マスタクロックを受信するマスタクロック情報受信手段と、
前記マスタクロック情報と、前記スレーブクロック情報の差分であるマスタ−スレーブクロック差分情報を計算するマスタ−スレーブクロック差分計算手段と、
前記スレーブクロック情報と前記マスタ−スレーブクロック差分情報用いてスレーブタイムスタンプを生成するスレーブタイムスタンプ生成手段と、
前記スレーブ装置内部で発生する通信データに、前記スレーブタイムスタンプを付与して保存するスレーブメッセージ保存手段を備え、
前記モニタ装置は、前記モニタ装置独自のクロック情報であるモニタクロック情報を生成するモニタクロック生成手段と、
前記マスタ装置から送信される前記マスタクロックを受信するマスタクロック情報受信手段と、
前記マスタクロック情報と、前記モニタクロック情報の差分の差分であるマスタ−モニタクロック差分情報を計算するマスタ−モニタ差分計算手段と、
前記マスタクロック情報と、マスタ−モニタクロック差分情報を用いてモニタタイムスタンプを生成するモニタタイムスタンプ生成手段と、
前記マスタ装置と前記スレーブ装置間で送受信される通信データ取得し、前記通信データに前記モニタタイムスタンプを付与して保存するモニタメッセージ保存手段を備え、
前記ログ表示装置は、前記マスタ装置において前記マスタタイムスタンプが付与されて保存されている通信データと、
前記スレーブ装置において前記スレーブタイムスタンプが付与されて保存されている通信データと、
前記モニタ装置において前記モニタタイムスタンプが付与されて保存されている通信データを時間比較して表示することを特徴とする通信プロトコル試験システム。
【請求項２】
複数の無線装置間において、１対多の関係で通信を行う場合、子局に相当するスレーブ装置と通信を行う親局に相当するマスタ装置において、
前記マスタ装置は、前記マスタ装置独自のクロック情報であるマスタクロック情報を生成するマスタクロック生成手段と、
前記マスタクロック情報からマスタタイムスタンプを生成するマスタタイムスタンプ生成手段と、
前記マスタクロック情報を、前記スレーブ装置と、前記マスタ装置と前記スレーブ装置間の通信状況を監視するモニタ装置に対して送出するマスタクロック情報送信手段と、
前記マスタ装置内部で発生する通信データに、前記マスタタイムスタンプを付与して保存するマスタメッセージ保存手段を備えたことを特徴とするマスタ装置。
【請求項３】
複数の無線装置間において、１対多の関係で通信を行う場合、親局に相当するマスタ装置と通信を行う子局に相当するスレーブ装置において、
前記スレーブ装置は、前記スレーブ装置独自のクロック情報であるスレーブクロック情報を生成するスレーブクロック生成手段と、
前記マスタ装置から送信される前記マスタクロックを受信するマスタクロック情報受信手段と、
前記マスタクロック情報と、前記スレーブクロック情報の差分であるマスタ−スレーブクロック差分情報を計算するマスタ−スレーブクロック差分計算手段と、
前記スレーブクロック情報と前記マスタ−スレーブクロック差分情報用いてスレーブタイムスタンプを生成するスレーブタイムスタンプ生成手段と、
前記スレーブ装置内部で発生する通信データに、前記スレーブタイムスタンプを付与して保存するスレーブメッセージ保存手段を備えたことを特徴とするスレーブ装置。
【請求項４】
複数の無線装置間において、１対多の関係で通信を行う場合、親局に相当するマスタ装置と、前記マスタ装置と通信を行う子局に相当するスレーブ装置との間の通信状況を監視するモニタ装置において、
前記モニタ装置は、前記モニタ装置独自のクロック情報であるモニタクロック情報を生成するモニタクロック生成手段と、
前記マスタ装置から送信される前記マスタクロックを受信するマスタクロック情報受信手段と、
前記マスタクロック情報と、前記モニタクロック情報の差分の差分であるマスタ−モニタクロック差分情報を計算するマスタ−モニタ差分計算手段と、
前記マスタクロック情報と、マスタ−モニタクロック差分情報を用いてモニタタイムスタンプを生成するモニタタイムスタンプ生成手段と、
前記マスタ装置と前記スレーブ装置間で送受信される通信データ取得し、前記通信データに前記モニタタイムスタンプを付与して保存するモニタメッセージ保存手段を備えたことを特徴とするモニタ装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はＢｌｕｅｔｏｏｔｈ通信において、通信装置内部のプロトコルレイヤ間で送受信されるメッセージと、マスタ装置とスレーブ装置間で送受信される通信パケットを、マスタ装置から与えるタイムスタンプ情報をもとに、同一時間軸上の順序を明確にすることにより、Ｂｌｕｅｔｏｏｔｈ通信処理の解析を支援するＢｌｕｅｔｏｏｔｈ通信試験システムに関する。
【０００２】
【従来の技術】
近年携帯電話の普及に伴い、携帯電話とノートパソコンなどの携帯情報端末間をワイヤレスで接続するために、近距離無線通信が多く利用されてきている。近距離無線の代表例として、ＩｒＤＡ（Ｉｎｆｒａｒｅｄ  Ｄａｔａ  Ａｓｓｏｃｉａｔｉｏｎ）、ＩＥＥＥ８０２．１１ｂやＢｌｕｅｔｏｏｔｈなどが挙げられる。
本発明は、上記のような近距離無線通信方式の中で、Ｂｌｕｅｔｏｏｔｈを利用した通信装置における通信プロトコル試験システムに関するものである。
従来、上記無線通信におけるプロトコル間で送受信されるメッセージを解析するためのツールとして、プロトコルアナライザが使用されてきた。特にＢｌｕｅｔｏｏｔｈプロトコルスタック内のベースバンドとＬ２ＣＡＰレイヤ間の受信順序を明確にし、レイヤ間をまたがる時系列上のパケット解析が正確に行うことができるようにしたプロトコルアナライザが知られている（例えば特許文献１参照。）。
図２は、上記ベースバンドパケットとＬ２ＣＡＰパケットの関係を示している。すなわち、Ｌ２ＣＡＰパケットを形成するデータは複数のベースバンドパケット中のＰＡＹＬＯＡＤに格納されている（Ｂｌｕｅｔｏｏｔｈプロトコルスタックの詳細については、非特許文献１参照。）。
図３は、従来のプロトコルアナライザの構成を示しており、マスタ装置１０００とスレーブ装置２０００、およびこれらの装置間で送受信される通信パケットを取得し、解析するモニタ装置３０００から構成される。
図４は、図３のマスタ装置１０００、スレーブ装置２０００、およびモニタ装置３０００の内部構成の一部を示しており、送受信される通信パケットを取得するパケット取得手段１００１、各装置ごとの独自のクロック情報からタイムスタンプを生成するタイムスタンプ生成手段１００５、受信パケットに受信時刻のタイムスタンプを付与するタイムスタンプ付与手段１００６、タイムスタンプが付与された受信パケットを時系列に整列するパケット合成手段１００２、受信時刻順に整列されたパケットを順に解析するパケット解析手段１００３、およびパケット解析結果を表示する解析結果表示手段１００４により構成されている。
【０００３】
【特許文献１】
特開２００２−１６４９５７号公報
【非特許文献１】
Ｓｐｅｃｉｆｉｃａｔｉｏｎ  ｏｆ  ｔｈｅ  Ｂｌｕｅｔｏｏｔｈ  Ｓｙｓｔｅｍ  Ｃｏｒｅ  ｖｅｒｓｉｏｎ１．１
【０００４】
【発明が解決しようとする課題】
従来の技術においては、Ｂｌｕｅｔｏｏｔｈ通信装置内のベースバンドレイヤ間とＬ２ＣＡＰレイヤ間におけるパケット受信順序が明確にされている。しかし、装置間で送受信される通信パケットについては、何らかの基準時刻をベースとした同一時間軸上での正確な順序については把握することができない。すなわち、図３における、マスタ装置１０００、スレーブ装置２０００とモニタ装置３０００は各々独立した時間軸に従って通信パケットタイムスタンプを付与しているが、装置間での通信パケットの受信時刻を比較することができないため、装置間の通信パケット発生のタイミング検証を行うことができないといった問題がある。
【０００５】
本発明は、Ｂｌｕｅｔｏｏｔｈ通信装置内部のレイヤ間メッセージと装置間で送受信される通信パケットの同一時間軸上での順序と時間差を明確にすることにより、プロトコル処理の解析と通信障害の解析を正確に行うようにすることを目的とする。
【０００６】
【課題を解決するための手段】
上記課題を解決するため本発明では、以下の手段を備えている。
すなわち、通信プロトコル試験システムを、複数の無線装置間において、１対多の関係で通信を行う場合、親局に相当するマスタ装置と、
前記マスタ装置と通信を行う子局に相当するスレーブ装置と、
前記マスタ装置と前記スレーブ装置間の通信状況を監視するモニタ装置と、前記マスタ装置と前記スレーブ装置と前記モニタ装置の動作状況を出力するログ表示装置で構成している。
前記マスタ装置は、前記マスタ装置独自のクロック情報であるマスタクロック情報を生成するマスタクロック生成手段と、
前記マスタクロック情報からマスタタイムスタンプを生成するマスタタイムスタンプ生成手段と、
前記マスタクロック情報を、前記スレーブ装置と前記モニタ装置に対して送出するマスタクロック情報送信手段と、
前記マスタ装置内部で発生する通信データに、前記マスタタイムスタンプを付与して保存するマスタメッセージ保存手段を備えている。
また、前記スレーブ装置は、前記スレーブ装置独自のクロック情報であるスレーブクロック情報を生成するスレーブクロック生成手段と、
前記マスタ装置から送信される前記マスタクロックを受信するマスタクロック情報受信手段と、
前記マスタクロック情報と、前記スレーブクロック情報の差分であるマスタ−スレーブクロック差分情報を計算するマスタ−スレーブクロック差分計算手段と、前記スレーブクロック情報と前記マスタ−スレーブクロック差分情報用いてスレーブタイムスタンプを生成するスレーブタイムスタンプ生成手段と、
前記スレーブ装置内部で発生する通信データに、前記スレーブタイムスタンプを付与して保存するスレーブメッセージ保存手段を備えている。
また、前記モニタ装置は、前記モニタ装置独自のクロック情報であるモニタクロック情報を生成するモニタクロック生成手段と、
前記マスタ装置から送信される前記マスタクロックを受信するマスタクロック情報受信手段と、
前記マスタクロック情報と、前記モニタクロック情報の差分の差分であるマスタ−モニタクロック差分情報を計算するマスタ−モニタ差分計算手段と、
前記マスタクロック情報と、マスタ−モニタクロック差分情報を用いてモニタタイムスタンプを生成するモニタタイムスタンプ生成手段と、
前記マスタ装置と前記スレーブ装置間で送受信される通信データ取得し、前記通信データに前記モニタタイムスタンプを付与して保存するモニタメッセージ保存手段を備えている。
また、前記ログ表示装置は、前記マスタ装置において前記マスタタイムスタンプが付与されて保存されている通信データと、
前記スレーブ装置において前記スレーブタイムスタンプが付与されて保存されている通信データと、
前記モニタ装置において前記モニタタイムスタンプが付与されて保存されている通信データを時間比較して表示するようにしている。
【０００７】
【発明の実施の形態】
以下、添付図面を参照して、本発明の実施の形態を説明し、本発明の理解に供する。尚、以下の実施の形態は、本発明を具体化した一例であって、本発明の技術的範囲を限定する性格のものではない。
【０００８】
（実施の形態１）
本発明の一実施の形態に係る通信プロトコル試験システムについて、以下、その動作を述べる。
最初に図１を参照して本発明による通信プロトコル試験システムの概要を説明する。
本通信プロトコル試験システムは、マスタＢｌｕｅｔｏｏｔｈモジュール１３０に接続されたマスタ装置１００とスレーブＢｌｕｅｔｏｏｔｈモジュール２３０に接続されたスレーブ装置２００と通信モニタ装置３００とログ表示装置４００から構成される。
マスタ装置１００はマスタＢｌｕｅｔｏｏｔｈモジュール１３０を使用して、スレーブ装置２００とＢｌｕｅｔｏｏｔｈによる無線通信を行っている。またスレーブ装置２００はスレーブＢｌｕｅｔｏｏｔｈモジュール２３０を使用してマスタ装置１００と通信を行っている。Ｂｌｕｅｔｏｏｔｈの規約によれば、マスタ装置１００と同時に通信可能なスレーブ装置２００は７台であるため、スレーブ装置２００は他６台通信可能である。
これとは別に通信モニタ装置３００はマスタ装置１００とスレーブ装置２００との間で交換される通信データをモニタしている。モニタ装置３００の数的制限はない。
【０００９】
ここで、マスタ装置１００内部で生じる、Ｂｌｕｅｔｏｏｔｈプロトコル処理データは通信ログ１５０に格納され、スレーブ装置２００内部で生じる、Ｂｌｕｅｔｏｏｔｈプロトコル処理データは通信ログ２５０に格納され、マスタ装置１００とスレーブ装置２００との間で交換されるデータは通信ログ３５０に格納される。
従来は、上記の個別の装置で収集された通信ログは機器ごとに設定された時間軸に沿って格納されるため、機器同士の通信ログを同一時間軸で比較することはできなかった。これに対して本発明は、以下詳細に説明する方法により、前記通信ログに同一時間軸を与え、かつ、これらを収集しログ表示装置４００にて表示するものである。
【００１０】
図５は、本通信プロトコル試験システムの動作概要を示すフローチャートである。本システムにおける動作検証は、以下に示す３つの処理で成り立っている。第１に、本システムを構成する各通信機器におけるＢｌｕｅｔｏｏｔｈクロック同期処理を行う処理である（図５のＳ−Ａ）。本処理により、上記各通信機器における時刻を合わせることが可能となる。なお、本処理（図５のＳ−Ａ）の詳細は後に説明する。
第２に、本システムを構成する各通信機器において、任意のタイミングで上記各通信機器間における通信動作を検証するためのログを出力する処理である（図５のＳ−Ｂ）。本処理により、上記各通信機器内部で実行されるプロトコル処理の状況をログとして出力可能となる。なお、本処理（図５のＳ−Ｂ）の詳細は後に説明する。
第３に、出力された上記ログを比較し表示する処理である（図５のＳ−Ｃ）。本処理により、本システムを構成する各通信機器から出力されたログを比較し表示することが可能となる。本処理（図５のＳ−Ｃ）の詳細は後に説明する。
【００１１】
以下、本発明における通信プロトコル試験システムの処理手順（フローチャート図５）を詳細に説明する。
最初に、システムを構成する通信機器におけるＢｌｕｅｔｏｏｔｈクロック同期処理を行う、Ｂｌｕｅｔｏｏｔｈクロック同期処理（図５のＳ−Ａ）について、図６のブロック構成図を参照して詳細に説明する。なお、図６は、本通信プロトコル試験システムを構成するマスタ装置１００とスレーブ装置２００、および通信モニタ装置３００の関係を機能ブロックで表した図である。
Ｂｌｕｅｔｏｏｔｈクロック同期処理（図５のＳ−Ａ）は、マスタ装置１００とスレーブ装置２００、および通信モニタ装置３００において実行される。以下、上記装置におけるＢｌｕｅｔｏｏｔｈクロック同期処理（図５のＳ−Ａ）を説明する。
【００１２】
最初に、通信開始時のマスタ装置１００におけるＢｌｕｅｔｏｏｔｈクロック同期処理（図５のＳ−Ａ）の動作を、フローチャート図７と図９を用いて説明する。
まず、マスタ装置１００は、マスタクロック生成手段１０１においてマスタ装置１００独自のＢｌｕｅｔｏｏｔｈクロックを生成する（Ｓ７０１）。
ここで、前記Ｂｌｕｅｔｏｏｔｈクロックとは、図９下段に示すようなデータ構造をした、マスタ装置１００固有の時刻を表す情報である。このＢｌｕｅｔｏｏｔｈクロックは、２８ビットのデータ列で表現されているが、１ビット目と０ビット目は使用されず、２７ビット目から２ビット目に、前記マスタ装置１００固有の時刻を表す情報を、クロック情報としてバイナリ表現で格納されている。
【００１３】
ここで、図１０と、図１１を参照して、Ｂｌｕｅｔｏｏｔｈクロックの具体的数値設定例を説明する。
マスタ装置１００が、マスタクロック生成手段１０１において、図１０に示すＢｌｕｅｔｏｏｔｈクロックを生成した場合、クロック情報は図１１に示すとおり０ｘ０００１（１６進数表現）となる。Ｂｌｕｅｔｏｏｔｈクロックの最小単位は１．２５ｍｓｅｃと規定されているので、上記設定では、１．２５ｍｓｅｃ×（１×２０）＝１．２５ｍｓｅｃが設定されていることになる。なお、Ｂｌｕｅｔｏｏｔｈクロックの詳細については、Ｓｐｅｃｉｆｉｃａｔｉｏｎ  ｏｆ  ｔｈｅ  Ｂｌｕｅｔｏｏｔｈ  Ｓｙｓｔｅｍ  Ｃｏｒｅ  ｖｅｒｓｉｏｎ１．１に記載されており、本発明において必要な部分については、後で詳細に説明を行う。
【００１４】
次に、マスタクロック情報送信手段１０２は、図９下段に示すように、生成されたＢｌｕｅｔｏｏｔｈクロックの２７ビット目から２ビット目までを取り出し、これをクロック情報として図９上段で示すＦＨＳパケット中のフィールドＣＬＫ２７−２に設定し、前記クロック情報をスレーブ装置２００とモニタ装置３００に対して送信する（Ｓ７０２）。
ＦＨＳパケットとは、マスタ装置１００がスレーブ装置２００との同期を確立するために、マスタ装置１００がスレーブ装置２００に必要なパラメータを送信するための制御用のデータパケットである。なお、ＦＨＳパケット中のＣＬＫ２７−２以外のフィールドに関する詳細な説明は、Ｓｐｅｃｉｆｉｃａｔｉｏｎ  ｏｆ  ｔｈｅ  Ｂｌｕｅｔｏｏｔｈ  Ｓｙｓｔｅｍ  Ｃｏｒｅ  ｖｅｒｓｉｏｎ１．１に記載されている。
以上により、マスタ装置１００におけるＦＨＳパケット送信処理（Ｓ７０２）が完了する。
【００１５】
次に、通信開始時のスレーブ装置２００におけるＢｌｕｅｔｏｏｔｈクロック同期処理の動作（図５のＳ−Ａ）をフローチャート図８、図９、図１１〜図１４を用いて説明する。
まず、スレーブ装置２００は（マスタ装置１００と同様にスレーブクロック生成手段２０１を備えており、）、スレーブ装置２００独自のＢｌｕｅｔｏｏｔｈクロックを生成する（Ｓ８０１）。一方、マスタクロック情報受信手段２０４は、マスタ装置１００から送信された上記ＦＨＳパケットを受信し、受信したＦＨＳパケット（図９上段を参照）からフィールドＣＬＫ２７−２の値を取得する（Ｓ８０２）。
【００１６】
次に、マスタ−スレーブクロック差分計算手段２０２は、スレーブクロック生成手段２０１において生成したスレーブ装置独自のＢｌｕｅｔｏｏｔｈクロックから自装置のクロック情報を取り出し、上記取得したマスタ装置１００のクロック情報と比較し、クロックオフセットを算出する（Ｓ８０３）。
ここで、クロックオフセットに関して図１４を参照して説明する。クロックオフセットとは、マスタ装置１００とスレーブ装置２００が、それぞれの時間スロットに共通のスロット番号を付与し、時間軸上の同期を図るためのものであり、送受信時間周期（ＣＬＫ）は１．２５ｍｓｅｃであると規定されている。時間スロットおよびクロックオフセットの詳細については、Ｓｐｅｃｉｆｉｃａｔｉｏｎ  ｏｆ  ｔｈｅ  Ｂｌｕｅｔｏｏｔｈ  Ｓｙｓｔｅｍ  Ｃｏｒｅ  ｖｅｒｓｉｏｎ１．１に記載されている。ここで、図１４における例では、ある時刻（図中点縦線１１０１）においてマスタ装置でのＣＬＫの値が１、スレーブ装置でのＣＬＫの値が３である。そこで、クロックオフセットＣＬＫ（３）−ＣＬＫ（１）で計算可能である。  次に、クロック差分情報保存手段２０３は、マスタ−スレーブクロック差分計算手段２０２において算出したクロックオフセットを記憶装置（図示せず）に保存する（Ｓ８０４）。
【００１７】
ここで、スレーブ装置２００におけるクロック情報取得処理に関する具体的数値設定例を説明する。
マスタ装置１００が、図１１に示すクロック情報をスレーブ装置２００に対して送信した場合、クロック情報受信手段２０４は、受信したＦＨＳパケット中からフィールドＣＬＫ２７−２（図９上段参照）の値として、０ｘ０００１（１６進数表現）をマスタ装置１００のクロック情報として取り出す。
スレーブ装置２００におけるスレーブクロック生成手段２０１が、図１２に示すＢｌｕｅｔｏｏｔｈクロックを生成した場合、図１３で示すクロック情報を得ることができる。そして、マスタ−スレーブクロック差分計算手段２０２は、１．２５ｍｓｅｃ×（１×２０）−１．２５ｍｓｅｃ×（１×２１＋１×２０）＝−２．５ｍｓｅｃをクロックオフセットとして算出する。このとき、クロック差分情報保存手段２０３は、−２．５ｍｓｅｃを記憶装置（図示せず）に保存する。
【００１８】
以上処理により、通信開始時のスレーブ装置２００におけるＢｌｕｅｔｏｏｔｈクロック同期処理（図５のＳ−Ａ）の動作が完了する。
なお、通信モニタ装置３００においても、スレーブ装置２００と同様に、モニタクロック生成手段３０３、マスタ−スレーブクロック差分計算手段３０２、マスタクロック情報受信手段３０１、クロック差分情報保存手段３０４を備えているので、スレーブ装置２００におけるＢｌｕｅｔｏｏｔｈクロック同期処理と同様の処理により、Ｂｌｕｅｔｏｏｔｈクロック同期処理（図５のＳ−Ａ）が可能である。
以上説明の通り、Ｂｌｕｅｔｏｏｔｈクロック同期処理（図５のＳ−Ａ）により、マスタ装置１００とスレーブ装置２００とモニタ装置３００における時刻を同期させることが可能となる。
【００１９】
次に、任意のタイミングで上記各通信機器間における通信動作を検証するためのログを出力する処理（図５のＳ−Ｂ）について、ブロック構成図１５を参照して詳細に説明する。なお、図１５は、本通信プロトコル試験システムを構成するマスタ装置１００、スレーブ装置２００、およびモニタ装置３００の関係を模式的に表した図である。
初めに、マスタ装置１００におけるログ出力処理の動作に関して、フローチャート図１６とブロック構成図１５を用いて説明する。
まず最初に、マスタ装置１００は、パケット取得手段１０３において、ＲＦＣＯＭＭ１１０、Ｌ２ＣＡＰ１１１、ベースバンド１１２などのＢｌｕｅｔｏｏｔｈプロトコルレイヤ間で送受信されるメッセージを取得する。ここで、メッセージとは、伝送する情報のことである。なお、上記Ｂｌｕｅｔｏｏｔｈプロトコルの詳細については、Ｓｐｅｃｉｆｉｃａｔｉｏｎ  ｏｆ  ｔｈｅ  Ｂｌｕｅｔｏｏｔｈ  Ｓｙｓｔｅｍ  Ｃｏｒｅ  ｖｅｒｓｉｏｎ１．１に記載されている。
一方、マスタクロック生成手段１０１は、前記Ｂｌｕｅｔｏｏｔｈクロックを生成する。続いて、マスタタイムスタンプ生成手段１０４は、前記Ｂｌｕｅｔｏｏｔｈクロックから取り出したクロック情報をもとに、所定の形式のタイムスタンプを生成し（Ｓ１３０１）、前記パケット取得手段１０３において取得したメッセージに上記生成したタイムスタンプを付与する（Ｓ１３０２）。最後に、マスタメッセージ保存手段１０５は、タイムスタンプ付きメッセージを記憶装置（図示せず）に保存する（Ｓ１３０３）。
以上のように、マスタ装置１００におけるログ出力処理が行われる。
【００２０】
次に、スレーブ装置２００におけるログ出力処理の動作に関して、フローチャート図１７とブロック構成図１５を用いて説明する。
まず最初に、スレーブ装置２００は、前記マスタ装置１００と同様に、パケット取得手段２０５において、ベースバンド２１２、Ｌ２ＣＡＰ２１１と、ＲＦＣＯＭＭ２１０などのＢｌｕｅｔｏｏｔｈプロトコルレイヤ間で送受信されるメッセージを取得する。
一方、スレーブクロック生成手段２０１は、マスタ装置１００と同様に前記Ｂｌｕｅｔｏｏｔｈクロックを生成する。続いて、スレーブタイムスタンプ生成手段２０６は、クロック差分情報保存手段２０３を用いて予め算出したクロックオフセットを読み出し（Ｓ１４０１）、さらに、スレーブクロック生成手段２０１で生成された前記Ｂｌｕｅｔｏｏｔｈクロックからクロック情報を取得する。ついで、このクロック情報に前記クロックオフセットを加算、もしくは減算した値を、タイムスタンプとして作成する（Ｓ１４０２）。
さらに、スレーブタイムスタンプ生成手段２０６は、このタイムスタンプを前記パケット取得手段２０５において取得したメッセージ付与し、タイムスタンプ付きメッセージを作成する（Ｓ１４０３）。最後に、スレーブメッセージ保存手段２０７は、前記タイムスタンプ付きメッセージを記憶装置（図示せず）に保存する（Ｓ１４０４）。
以上により、スレーブ装置２００におけるログ出力処理が行われる。
【００２１】
なお、モニタ装置３００においても、スレーブ装置２００と同様に、モニタクロック生成手段３０３、クロック差分情報保存手段３０４、通信パケット受信手段３０５、モニタタイムスタンプ生成手段３０６、モニタメッセージ保存手段３０７、を備えている。
モニタ装置３００では、通信パケット受信手段３０５により、マスタ装置１００とスレーブ装置２００間のメッセージを取得することで、取得したメッセージのログ出力処理を行うことができる。
【００２２】
ここで、図１５、図１８〜図２８を参照して前記マスタ装置１００と前記スレーブ装置２００におけるログ出力処理を、具体的数値設定例で説明する。図１８のシーケンスチャートは、スレーブ装置２００が、マスタ装置１００に対して接続要求を送信するシーケンスの一部を表している。
スレーブ装置２００において、上位アプリケーションからの接続要求の指示を受けたＲＦＣＯＭＭ２１０は、Ｌ２ＣＡＰ２１１に対して、Ｌ２ＣＡＰ＿ＣｏｎｎｅｃｔＲｅｑメッセージ９０１を送信する。ここで、Ｌ２ＣＡＰ＿ＣｏｎｎｅｃｔＲｅｑメッセージ９０１は、プロトコル内部のメッセージの一つであり、実装依存のメッセージである。このとき、パケット取得手段２０５は、図２３に示すようなＬ２ＣＡＰ＿ＣｏｎｎｅｃｔＲｅｑメッセージ９０１を取得する。なお、パケット取得手段２０５で取得するメッセージは、ＲＦＣＯＭＭ２１０とＬ２ＣＡＰ２１１間で送受信されるメッセージにとどまらない。
【００２３】
ここで、スレーブクロック生成手段２０１において生成されたＢｌｕｅｔｏｏｔｈクロックが、図２４に示すような値であった場合を例に説明する。スレーブタイムスタンプ生成手段２０６は、クロック差分情報保存手段２０３より、予め算出したクロックオフセット（本実施の形態１によれば、−２．５ｍｓｅｃである）を読み出す。さらに、スレーブタイムスタンプ生成手段２０６は、図２４に示すＢｌｕｅｔｏｏｔｈクロックから、図２５に示すクロック情報を取得する。さらに、スレーブタイムスタンプ生成手段２０６は、このクロック情報に前記クロックオフセットを加算もしくは減算し、タイムスタンプを生成する。
この場合、タイムスタンプは、｛１．２５ｍｓｅｃ×（１×２４）＋１．２５ｍｓｅｃ×（１×２１）＋１．２５ｍｓｅｃ×（１×２０）｝−２．５ｍｓｅｃ＝２１．２５ｍｓｅｃとなる。さらに、スレーブタイムスタンプ生成手段２０６は、このタイムスタンプ値である２１．２５ｍｓｅｃを、図２６に示すような前記クロック情報と同一の形式で出力し、前記Ｌ２ＣＡＰ＿ＣｏｎｎｅｃｔＲｅｑメッセージ９０１の先頭２バイトの位置（図２３のタイムスタンプ参照）に挿入し、タイムスタンプ付きメッセージを作成する。
最後に、スレーブメッセージ保存手段２０７は、このタイムスタンプ付きメッセージを記憶装置（図示せず）に保存する。
上述した処理を繰り返し実施することにより、スレーブ装置２００内で送受信されるメッセージ９０１から９０８は、図２７に示すタイムスタンプ付きメッセージ９０１ｓから９０８ｓとして保管される。
【００２４】
一方、マスタ装置１００では、スレーブ装置２００より送信された接続要求パケットは、ベースバンド１１２を経由して、Ｌ２ＣＡＰ１１１からＲＦＣＯＭＭ１１０に対して、図１９に示すようなＬ２ＣＡＰ＿ＣｏｎｎｅｃｔＩｎｄメッセージ９１０として送信される。パケット取得手段１０３は、このＬ２ＣＡＰ＿ＣｏｎｎｅｃｔＩｎｄメッセージ９１０を取得する。ここで、Ｌ２ＣＡＰ＿ＣｏｎｎｅｃｔＩｎｄメッセージ９１０は、プロトコル内部のメッセージの一つであり、実装依存のメッセージである。なお、パケット取得手段１０３で取得するメッセージは、Ｌ２ＣＡＰ１１１とＲＦＣＯＭＭ１１０間で送受信されるメッセージだけにとどまらない。ここでは、マスタクロック生成手段１０１において生成されたＢｌｕｅｔｏｏｔｈクロックが、図２０に示すような値であった場合を例に説明する。マスタタイムスタンプ生成手段１０４は、このＢｌｕｅｔｏｏｔｈクロックから図２１に示すクロック情報を取得し、図２２に示すような前記クロック情報と同一の形式で出力し、前記Ｌ２ＣＡＰ＿ＣｏｎｎｅｃｔＩｎｄメッセージ９１０の先頭２バイトの位置（図１９のタイムスタンプ参照）に挿入し、タイムスタンプ付きメッセージを作成する。最後に、マスタメッセージ保存手段１０５は、このタイムスタンプ付きメッセージを記憶装置（図示せず）に保存する。上述した処理を繰り返し実施することにより、マスタ装置１００内における送受信パケット９０９から９１８は、図２８に示すタイムスタンプ付きメッセージ９０９ｍから９１８ｍとして保管される。
なお、モニタ装置２２０におけるログ出力処理についても、通信パケット受信手段３０５において、マスタ装置１００とスレーブ装置２００間のメッセージを取得することで、上述のスレーブ装置２００と同様の方法により、ログ出力処理を行うことができる。
【００２５】
第三に、ログ表示処理（図５のＳ−Ｃ）について、図１を用いて説明する。
ログ表示装置４００は、上述してきたマスタ装置１００において生成された図２８に示すタイムスタンプ付きメッセージが出力された通信ログ１５０と、スレーブ装置２００において生成された図２７に示すタイムスタンプ付きメッセージが出力された通信ログ２５０と、通信モニタ装置３００において生成されたタイムスタンプ付きメッセージ３５０とを、タイムスタンプ順に整列させ、その結果を表示する。
【００２６】
上述した通り、本実施の形態１によれば、異なる機器において発生したメッセージに対して同一の時間軸を元にしたタイムスタンプを付与しているので、通信を行っている機器または、モニタにおいて個別に収集したメッセージの発生順序を正しく比較検証することができる。
【００２７】
（実施の形態２）
本発明の二実施の形態に係る通信プロトコル試験システムについて、以下、その動作を述べる。
本発明における実施の形態１で述べたＢｌｕｅｔｏｏｔｈクロック同期処理、ログ出力処理、およびログ表示処理を行い、送受信メッセージや通信パケットが送受信されてから次の送受信が実行されるまでの時間差を計測する動作について、図２９を用いて、その動作を説明する。
図２９は、図１８と同様に、図１５に示すスレーブ装置２００がマスタ装置１００に対して、接続要求を送信するシーケンスの一部を表している。
【００２８】
スレーブ装置２００からマスタ装置１００に対して、接続要求を送信した場合、スレーブ装置２００におけるＬ２ＣＡＰ２１１は、この接続要求を包含するＡＣＬ＿Ｄａｔａメッセージ９０２を送信後、最大６０秒以内に、接続応答を包含するＡＣＬ＿Ｄａｔａメッセージ９０３を受信しなければならないことが、Ｓｐｅｃｉｆｉｃａｔｉｏｎ  ｏｆ  ｔｈｅ  Ｂｌｕｅｔｏｏｔｈ  Ｓｙｓｔｅｍ  Ｃｏｒｅ  ｖｅｒｓｉｏｎ１．１で規定されている。
スレーブ装置２００内のスレーブタイムスタンプ生成手段２０６は、Ｌ２ＣＡＰ２１１が送信したＡＣＬ＿Ｄａｔａメッセージ９０２に、実施の形態１で述べたように、タイムスタンプを付与し、図２７の９０２ｓに示すようなタイムスタンプ付きメッセージを生成する。
【００２９】
一方、マスタ装置１００は、スレーブ装置２００からの接続要求パケットを受信すると、Ｌ２ＣＡＰ１１１は接続応答を包含するＡＣＬ＿Ｄａｔａメッセージ９１２として、図３０に示すメッセージを送信する。このとき、マスタ装置１００内においても、スレーブ装置２００と同様に、送信されるメッセージは図２８の９１２ｍに示すようなタイムスタンプ付きメッセージとして生成する。
スレーブ装置２００は、マスタ装置１００から送信された図３０に示す接続応答パケットを、Ｌ２ＣＡＰ２１１において受信すると、実施の形態１で述べたようにタイムスタンプを付与し、図２７の９０３ｓに示すようなタイムスタンプ付きメッセージを生成する。
このとき、スレーブ装置２００におけるＬ２ＣＡＰ２１１が、接続要求を包含するＡＣＬ＿Ｄａｔａメッセージ９０２を送信してから、マスタ装置１００からの接続応答を包含するＡＣＬ＿Ｄａｔａメッセージ９０３を受信するまでの時間は、タイムスタンプ生成手段２０６において生成した図２７タイムスタンプ付きメッセージより、０ｘ００２０−０ｘ００１２＝０ｘ０００Ｅ（１６進数表現）＝１１１０ｂ（２進数表現）となり、その結果時間差は、１．２５ｍｓｅｃ×（１×２３＋１×２２＋１×２１）＝１７．５ｍｓｅｃとなる。
【００３０】
本実施の形態２によれば、本通信プロトコル試験システムを利用することにより、ある時点を基準に通信メッセージを送信または受信してから、次の通信メッセージを送信または受信するまでの経過時間を、正確に把握することが可能となる。
なお、以上の説明では、スレーブ装置２００を例として、ある時点を基準とした、通信メッセージの送受信時刻から次の通信メッセージ送受信時刻までの経過時間を正確に把握する方法について説明したが、モニタ装置３００においても同様に実施可能である。
【００３１】
【発明の効果】
以上のように本発明によれば、マスタ装置と一つ以上のスレーブ装置とモニタ装置から構成されるシステムにおいて、マスタ装置が自局のクロック情報を送信し、スレーブ装置とモニタ装置は、受信したマスタ装置のクロック情報と自局のクロック情報との差分を算出し、マスタ装置に準拠したタイムスタンプを生成するので、各通信機器における時刻をあわせることが可能となる。
また、本発明によれば、スレーブ装置およびマスタ装置において、自局内で発生した複数プロトコルレイヤ間の送受信メッセージ、および装置間の通信パケットを取得し、生成したマスタ装置に準拠したタイムスタンプを付与し、このタイムスタンプが付与されたメッセージを保存するので、システムを構成する通信機器において、任意のタイミングで上記通信機器間における通信動作を検証するためのログを出力することができる。
また、本発明によれば、マスタ装置およびスレーブ装置およびモニタ装置が、保存された内部メッセージと通信パケットをタイムスタンプによって、送受信発生順に並べるので、システムを構成する通信機器から出力されたログを比較することが可能となる。
【図面の簡単な説明】
【図１】本発明の一実施の形態による本通信プロトコル試験システムの外観図
【図２】Ｂｌｕｅｔｏｏｔｈにおけるパケット構成図
【図３】従来のプロトコルアナライザの機器構造図
【図４】従来のプロトコルアナライザの内部構成図
【図５】通信プロトコル試験システムの動作概要を示すフローチャート
【図６】Ｂｌｕｅｔｏｏｔｈクロック同期処理に関わる、マスタ装置、スレーブ装置、およびモニタ装置の関係と、各装置の機能ブロック図
【図７】マスタ装置におけるクロック情報送信処理の手順を示すフローチャート
【図８】スレーブ装置におけるクロック情報送信処理の手順を示すフローチャート
【図９】ＦＨＳパケット中に含まれるクロック情報のデータ構造図
【図１０】マスタ装置内のクロック生成手段において生成されたＢｌｕｅｔｏｏｔｈクロックの具体的数値例
【図１１】マスタ装置内のクロック生成手段において生成された場合のクロック情報の具体的数値例
【図１２】スレーブ装置内のクロック生成手段において生成されたＢｌｕｅｔｏｏｔｈクロックの具体的数値例
【図１３】スレーブ装置内のクロック生成手段において生成されたクロック情報の具体的数値例
【図１４】クロックオフセットを示す図
【図１５】ログ出力処理に関わる、マスタ装置、スレーブ装置、およびモニタ装置の関係と、各装置の機能ブロック図
【図１６】マスタ装置でのログ出力処理手順を示すフローチャート
【図１７】スレーブ装置でのログ出力処理手順を示すフローチャート
【図１８】スレーブ装置がマスタ装置に対して接続要求を送信するシーケンスの一部を示すシーケンス図
【図１９】マスタ装置の内部メッセージであるＬ２ＣＡＰ＿ＣｏｎｎｅｃｔＩｎｄメッセージのフォーマット図
【図２０】Ｌ２ＣＡＰ＿ＣｏｎｎｅｃｔＩｎｄメッセージ発生時のＢｌｕｅｔｏｏｔｈクロック値の具体的数値例
【図２１】マスタ装置内でＬ２ＣＡＰ＿ＣｏｎｎｅｃｔＩｎｄメッセージ発生時のクロック情報の具体的数値例
【図２２】マスタ装置内でＬ２ＣＡＰ＿ＣｏｎｎｅｃｔＩｎｄメッセージ発生時のタイムスタンプ値の具体的数値例
【図２３】スレーブ装置の内部メッセージであるＬ２ＣＡＰ＿ＣｏｎｎｅｃｔＲｅｑメッセージのフォーマット図
【図２４】スレーブ装置内でＬ２ＣＡＰ＿ＣｏｎｎｅｃｔＲｅｑメッセージ発生時のＢｌｕｅｔｏｏｔｈクロック値の具体的数値例
【図２５】スレーブ装置内でＬ２ＣＡＰ＿ＣｏｎｎｅｃｔＲｅｑメッセージ発生時のクロック情報の具体的数値例
【図２６】スレーブ装置内でＬ２ＣＡＰ＿ＣｏｎｎｅｃｔＲｅｑメッセージ発生時のタイムスタンプ値の具体的数値例
【図２７】スレーブ装置において保存されるタイムスタンプ付きメッセージデータの例
【図２８】マスタ装置において保存されるタイムスタンプ付きメッセージデータの例
【図２９】スレーブ装置がマスタ装置に対して時間制限のある接続要求を送信するシーケンス図
【図３０】スレーブ装置で受信した接続応答を包含する内部メッセージＡＣＬ＿Ｄａｔａのフォーマット図
【符号の説明】
１００  マスタ装置
１３０  マスタＢｌｕｅｔｏｏｔｈモジュール
１５０  マスタ装置で発生した通信ログ
２００  スレーブ装置
２３０  スレーブＢｌｕｅｔｏｏｔｈモジュール
２５０  スレーブ装置で発生した通信ログ
３００  通信モニタ装置
３５０  マスタ装置とスレーブ装置間で発生した通信ログ
４００  ログ表示装置
【図１】
2004158945.tif 000003
【図２】
2004158945.tif 000004
【図３】
2004158945.tif 000005
【図４】
2004158945.tif 000006
【図５】
2004158945.tif 000007
【図６】
2004158945.tif 000008
【図７】
2004158945.tif 000009
【図８】
2004158945.tif 000010
【図９】
2004158945.tif 000011
【図１０】
2004158945.tif 000012
【図１１】
2004158945.tif 000013
【図１２】
2004158945.tif 000014
【図１３】
2004158945.tif 000015
【図１４】
2004158945.tif 000016
【図１５】
2004158945.tif 000017
【図１６】
2004158945.tif 000018
【図１７】
2004158945.tif 000019
【図１８】
2004158945.tif 000020
【図１９】
2004158945.tif 000021
【図２０】
2004158945.tif 000022
【図２１】
2004158945.tif 000023
【図２２】
2004158945.tif 000024
【図２３】
2004158945.tif 000025
【図２４】
2004158945.tif 000026
【図２５】
2004158945.tif 000027
【図２６】
2004158945.tif 000028
【図２７】
2004158945.tif 000029
【図２８】
2004158945.tif 000030
【図２９】
2004158945.tif 000031
【図３０】
2004158945.tif 000032