(57)【特許請求の範囲】
【請求項１】
第１無線端末と、前記第１無線端末に対する制御機能を備えた第２無線端末とがBluetooth通信を行う無線通信方法であって、
前記第１無線端末に送信すべきパケットにつき前記パケットの種類毎の前記送信、及び前記第１無線端末とは異なる第３無線端末の検索、についての優先順位を保持する優先度テーブルを参照し、データパケットを前記第１無線端末から受信するための第１制御パケットを、前記第２無線端末が前記第１無線端末に送信するステップと、
前記第１制御パケットに応答して前記第１無線端末が、前記第２無線端末に前記データパケットを送信するステップと、
前記データパケットを受信したのち、前記優先度テーブルに従って更にデータパケットを受信するための第２制御パケットを、前記第２無線端末が前記第１無線端末に送信するステップと、
前記第１無線端末からの前記データパケットの受信が終了したのち、前記優先度テーブルに従って前記第２無線端末が前記第３無線端末を検索するステップと
を具備することを特徴とする無線通信方法。
【請求項２】
第１データパケットを保持する第１無線端末とBluetooth通信により通信可能な無線通信装置であって、
前記第１無線端末と異なる第２無線端末の検索処理を予約すると共に、前記予約が許可された際に該検索処理を実行する検索部と、
前記第１データパケットの転送の開始を通知する第１制御パケット、及び前記第１データパケットに後続する第２データパケットを受信するための第２制御パケットを前記第１無線端末へ送信すると共に、前記第１無線端末が送信した前記第１データパケット、及び前記第２データパケットを受信する第１送受信部と、
前記第１無線端末への前記第２制御パケットの送信を予約すると共に、前記第２制御パケットの送信が許可された際に、前記第１送受信部に対して前記第２制御パケットを送信するよう命令する第１制御部と、
前記第１制御部、及び前記検索部からの前記予約を受け付けると共に、前記検索処理に比して、前記第２制御パケットの送信を優先的に許可し、前記第２制御パケットの送信の予約がない場合に、前記検索処理を許可するスケジューリング部と
を具備することを特徴とする無線通信装置。
【請求項３】
前記スケジューリング部は、前記検索部及び前記第１制御部からの前記予約を受け付ける予約受付部と、
異なる複数の前記予約を許可する優先順位を保持する優先度テーブルと、
前記予約受付部が複数の前記予約を同時刻に受け付けている場合、前記優先度テーブルを参照し優先度の高いいずれか１つの前記予約を選択し、前記選択した前記予約の実行タイミングにおいて、前記予約を許可する第２制御部と
を備えることを特徴とする請求項２記載の無線通信装置。
【請求項４】
第３データパケットの転送の開始を通知する第３制御パケット、及び前記第３データパケットに後続する第４データパケットを受信するための第４制御パケットを第３無線端末へ送信すると共に、前記第３無線端末が送信した前記第３データパケット、及び前記第４データパケットを受信する第２送受信部と、
前記第３無線端末へ前記第４制御パケットの送信を予約すると共に、前記第４制御パケットの送信が許可された際に、前記第２送受信部に対して前記第４制御パケットを送信するよう命令する第３制御部と
を更に備え、前記第１制御部は更に、前記第１無線端末への前記第１制御パケットの送信を予約すると共に、前記第１制御パケットの送信が許可された際に、前記第１送受信部に対して前記第１制御パケットを送信するよう命令し、
前記スケジューリング部は、前記第２制御パケット及び前記第４制御パケットの送信の予約、並びに前記検索処理の予約に比して、前記第１制御パケットの送信の予約を優先的に許可し、前記第１制御パケット及び前記第２制御パケットを送信する予約、並びに前記検索処理の予約がない場合に、前記第４制御パケットの送信を許可する
ことを特徴とする請求項３記載の無線通信装置。
【請求項５】
前記第１データパケット及び前記第２データパケットはストリーミングデータであり、前記第３データパケット及び前記第４データパケットは非ストリーミングデータである
ことを特徴とする請求項４記載の無線通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、無線通信装置及び無線通信方法に関する。例えば、リアルタイム性のあるデータのみならず、非ストリーミングデータの効率的な転送方法に関する。
【背景技術】
【０００２】
簡易に家電製品同士をコードレスで接続し、互いに無線通信ができるBluetooth（登録商標）は、Bluetooth SIG（Special Interest Group）が発表した、短距離無線データ通信技術の規格の１つである。
【０００３】
Bluetoothを用いた通信としては、例えば、オーディオプレーヤから、カーステレオなどへのオーディオデータ転送が挙げられる。この際、Bluetoothを用いた通信では、この該オーディオデータを再生のためにリアルタイム性を要求される、すなわちストリーミング技術が必要となる。
【０００４】
従来、ストリーミングでは伝送線路状況に合わせて、その伝送線路状況が劣化したときなどは、転送されるデータを圧縮した状態で確実にデータ転送する手段（例えば、特許文献１）や、データ転送において余分なパケットを切り捨てる手段（例えば、特許文献２）などがとられてきた。また、Bluetooth機能を持つ他デバイスの検索や接続処理よりも、データ元であるデバイスから連続してデータ受信を行うことが優先されてきた。つまり、実際は、データ元であるデバイスから連続してデータ受信を行うことよりも、Bluetooth機能を持つ他デバイスの検索や接続処理が行われる優先度が高かったが、予め伝送線路状況が劣化した場合などを仮定し、データ元のデバイスに対しデータの転送機会を多く与えることで、データ元のデバイスから連続してデータの受信を行う手段、更には、データの再送を繰り返す手段などが採用されてきた。
【０００５】
しかし、これら従来技術ではリアルタイム性を維持することを第一に考えていた。その結果、Bluetooth機能を持つ他デバイスの検索や接続処理、又は非ストリーミングデータの転送などの転送効率が非常に悪く、快適なストリーミングが実現できていなかった。つまり、リアルタイム性のあるデータを転送しながら、同Bluetoothを搭載した機器への他デバイスへの検索を行う機会や、リアルタイム性が要求されないデバイスへのデータ転送が効率良く出来ていなかった。
【特許文献１】特開２００３−３０９５４１号公報
【特許文献２】特開２００３−１５２７３６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
この発明は、効率的なデータ転送ができる無線通信装置及び無線通信方法を提供する。
【課題を解決するための手段】
【０００７】
この発明の一実施形態に係る無線通信装置は、第１データパケットを保持する第１無線端末とBluetooth通信により通信可能な無線通信装置であって、前記第１無線端末と異なる第２無線端末の検索処理を予約すると共に、前記予約が許可された際に該検索処理を実行する検索部と、前記第１データパケットの転送の開始を通知する第１制御パケット、及び前記第１データパケットに後続する第２データパケットを受信するための第２制御パケットを前記第１無線端末へ送信すると共に、前記第１無線端末が送信した前記第１データパケット、及び前記第２データパケットを受信する第１送受信部と、前記第１無線端末への前記第２制御パケットの送信を予約すると共に、前記第２制御パケットの送信が許可された際に、前記第１送受信部に対して前記第２制御パケットを送信するよう命令する第１制御部と、前記第１制御部、及び前記検索部からの前記予約を受け付けると共に、前記検索処理に比して、前記第２制御パケットの送信を優先的に許可し、前記第２制御パケットの送信の予約がない場合に、前記検索処理を許可するスケジューリング部とを具備する。
【０００８】
実施形態の無線通信方法によれば、第１無線端末と、前記第１無線端末に対する制御機能を備えた第２無線端末とがBluetooth通信を行う無線通信方法であって、前記第１無線端末に送信すべきパケットにつき前記パケットの種類毎の前記送信、及び前記第１無線端末とは異なる第３無線端末の検索、についての優先順位を保持する優先度テーブルを参照し、データパケットを前記第１無線端末から受信するための第１制御パケットを、前記第２無線端末が前記第１無線端末に送信するステップと、前記第１制御パケットに応答して前記第１無線端末が、前記第２無線端末に前記データパケットを送信するステップと、前記データパケットを受信したのち、前記優先度テーブルに従って更にデータパケットを受信するための第２制御パケットを、前記第２無線端末が前記第１無線端末に送信するステップと、前記第１無線端末からの前記データパケットの受信が終了したのち、前記優先度テーブルに従って前記第２無線端末が前記第３無線端末を検索するステップとを具備する。
【発明の効果】
【０００９】
本発明によれば、効率的なデータ転送ができる無線通信装置及び無線通信方法を提供することが出来る。
【発明を実施するための最良の形態】
【００１０】
以下、この発明の実施形態につき図面を参照して説明する。この説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。
【００１１】
この発明の一態様に係る無線通信装置及び無線通信方法について、図１を用いて説明する。図１は本実施形態に係る無線通信システムの概念図であり、Bluetooth規格に従った無線通信システムを示している。
【００１２】
＜ピコネットの構成＞  
図示するように無線通信システムは無線通信装置１及び無線通信端末２、３を備えている。無線通信装置１は、複数の無線通信端末２、３を収容して、Bluetooth規格に準拠した無線通信システムを形成している。本実施形態における無線通信システムは、無線通信装置１とアドホックモードで接続、形成されるネットワークであり、Bluetooth規格においてピコネット（Piconet）と呼ばれるものである。この無線通信システムにおいてアドホックモード通信とは、無線基地局などのようなアクセスポイントを必要とせず、端末同士で通信を行うモードでの通信のことであり、ＩＥＥＥ８０２．１１規格においてＩＢＢＳ（Independent Basic Service Set）と呼ばれる。
【００１３】
ここで図１における無線通信装置１とは、ピコネットに収容された無線通信端末２、３に対して制御機能を付与された機器のことをいい、以下マスター１と呼ぶ。
【００１４】
また、図１における無線通信端末２、３はマスター１からの指示に従って動作する機器のことをいい、以下スレーブと呼ぶ。つまりスレーブとは、制御機能を付与された機器（マスター１）以外の機器のことをいう。また、スレーブは、所属するピコネット内のマスターが備えるクロックを取得し、スレーブ自身のクロックとのオフセットを計算することでマスターと同期を取ることが出来、そのクロックに従ったデータ転送を行うことができる。なお本実施形態における図１では、ピコネット内に含まれる無線通信端末が２つある場合を示しているが、無線通信端末の数は最大７つまでと規定されている。これは、ピコネット内で送受信されるデータ内に含まれる、マスターとスレーブとを互いに認識できる情報が３bitで構成されているためである。また、１つのピコネットにスレーブは最大７台まで収容されるため、マスター１を含めて最大８台で無線通信を行うことができる。ピコネット内で送受信されるデータフォーマットについては後述する。
【００１５】
また、Bluetooth規格における通信では、例えば、スレーブ２の保持するデータを、スレーブ３へと転送したい場合、一度マスター１を介してスレーブ３へと転送する。同様にスレーブ３の保持するデータをスレーブ２に転送したい場合においてもマスター１を介する必要がある。
【００１６】
つまりピコネットを収容するスレーブ２、３間のデータ転送においては、必ずマスター１を介してデータのやり取りを行う必要がある。それは、マスター１が、ピコネット内のデータ転送をすべて制御しているからである。
【００１７】
また、ピコネットに収容されたマスター１とスレーブ２、３との役割はいつでも交代することができる。すなわち通常、マスターとスレーブとの役割は、ピコネット形成時に割り振られる。しかし、マスターがピコネットから抜けたとしても、今までスレーブだった機器がマスターに切替わることで、新たなピコネットを形成しうることができる。
【００１８】
また、図１に示したピコネットが複数存在し、それら複数のピコネットが１つのネットワークを形成してもよい。複数のピコネットが数珠繋ぎ状に形成されている概念図を図２に示す。
【００１９】
図２に示すように複数のピコネットａ、ピコネットｂが点在して存在し、数珠繋ぎ状に包括されているこのようなネットワークをスキャッタネットと呼ぶ。図２に示すピコネットａは、スレーブ６、７とマスター５から形成されている。
【００２０】
マスター５は、ピコネットａのマスターとして動作すると同時に、スキャッタネットのマスター４に対して、スレーブとして動作する。ピコネットｂは、スレーブ９とマスター８から形成されている。
【００２１】
マスター８は、ピコネットｂのマスターとして動作すると同時に、スキャッタネットのマスター４に対して、スレーブとして動作する。つまり、この場合、スキャッタネットを制御するマスターは１台である。そしてピコネットａ、及びピコネットｂのマスター５、及び８は、スキャッタネットのマスター４に対してスレーブとしての役割を持つと同時に、それぞれピコネットａ、ｂを収容するスレーブに対し、マスターとしての役割を持つ。これは、ピコネット間でそれぞれ同期をとるために、１台のデバイスが複数のピコネットのマスターとなることはできないからである。
【００２２】
なお、図２では１台のマスターがスキャッタネット内のスレーブを制御する例を示したが、複数のマスターがスキャッタネット内のスレーブを制御してもよい。また、マスター４は、マスター５を介すことでスレーブ６、７を制御する。この時、スレーブ６、７はマスター４、５からの指示を同時に受信することは出来ないので、送受信されるデータはスロット番号に分割され、時分割多重を用いてデータ転送が行われている。また、ピコネットｂについても同様な動作をしている。
【００２３】
＜通信方式＞  
次に、Bluetooth規格で使用される周波数帯域について、図３を用いて説明する。図３は、本実施形態に係るピコネットで使用可能な周波数帯域を示すバンド図である。図３に示すように、本実施形態に係るマスター１とスレーブ２、３との間で使用する周波数帯域は、Bluetooth規格で予め決められた、２．４［ＧＨｚ］帯域である。詳しくは、２．４０２〜２．４８０［ＧＨｚ］の周波数が７９分割される。つまり、２．４０２［ＧＨｚ］、２．４０３［ＧＨｚ］、２．４０４［ＧＨｚ］、・・・、２．４８０［ＧＨｚ］のいずれかの周波数を用いて通信が行われる。また、Bluetooth規格における通信では最大１［Ｍｂｐｓ］の伝送速度が可能とされており、その周波数帯域内にはＳＣＯリンク、ＡＣＬリンクで用いられるチャネルが存在する。リンク方式であるＳＣＯリンク、ＡＣＬリンクについては後述する。
【００２４】
またBluetooth規格に準拠した通信では、周波数ホッピング型スペクトラム拡散方式を用いることで７９分割に割り振られた周波数を、一秒間に１６００回変化させている。これにより他デバイスとの干渉を低減、つまり、電波干渉からの回避を可能としている。２．４［ＧＨｚ］帯域を使用している機器として、代表的なものにＩＥＥＥ８０２．１１ｂ規格に準拠した無線ＬＡＮシステムや、家庭電化製品の電子レンジなどが挙げられる。Bluetooth規格では、周波数ホッピング型スペクトラム拡散方式を用いることで、これら２．４［ＧＨｚ］帯を使用する機器との電波干渉の回避が可能となる。
【００２５】
図４は、Bluetooth規格に準拠した通信における周波数ホッピング型スペクトラム拡散方式の概念図であり、縦軸に時刻の経過と、横軸にその時刻における使用される周波数との関係を示す。図４は、ピコネットを形成するマスター１とスレーブ２、３とが、使用する周波数帯域を時間毎に切り替えて（ホッピング）いる様子を示している。Bluetooth規格に準拠した通信では、使用する周波数を１秒間に１６００回変化させていることから、周波数を一定に保ちながらデータ転送をする時間は６２５［μsec］となる。つまり、図４中に示すαの値とは６２５［μsec］となる。またこの６２５［μsec］毎の区間を１スロットと呼ぶ。スロットについては後述する。
【００２６】
図４に示すように、ある時刻ｔ１において使用した周波数ｆ１を、時刻（ｔ１＋α）で周波数をｆ２へと変化させる。同様に、時刻（ｔ１＋α）で使用した周波数ｆ２を、時刻（ｔ１＋２α）で周波数ｆ３へと切り替え、時刻（ｔ１＋２α）で使用した周波数ｆ３を、時刻（ｔ１＋３α）で周波数ｆ４へと切り替える。つまり、６２５［μsec］毎に周波数を変化させていく。このように、Bluetooth規格に準拠した通信では、周波数を逐一変化させることで、２．４［ＧＨｚ］帯域を使用する他デバイスとの周波数干渉を極力回避している。
【００２７】
次に、図１に示すマスター１と、スレーブ２、３とが無線通信をする際のリンク方式について説明する。
【００２８】
Bluetooth規格に係るマスターとスレーブ間でのリンク方式は、ＳＣＯ（Synchronous Connection Oriented）リンクとＡＣＬ（Asynchronous Connection Oriented）リンクとがある。ＳＣＯリンクとは、マスターとある１つの特定スレーブとのPoint to Pointリンクであり、電話品質音声用対称６４［Kbps］通信用として使用される。また、ＳＣＯリンクを用いた音声通話において、伝送線路状況の劣化が原因で通信中にパケットが送信できなかったとしても同一パケットを再送することはない。一方、これに対しＡＣＬリンクとは、マスターと複数からなるスレーブとのPoint to Multipointリンクであり、マスターとスレーブ間とのデータ転送用として使用される。また、伝送線路状況の劣化に伴い、通信中にマスター又はスレーブからのパケットなどが送信できなかった場合でも、再送をすることで一定の品質を補償している。
【００２９】
本実施形態では、上記２つのリンクのうちＡＣＬリンクを用いてデータ転送を行う。以降、データ転送と称する場合、ＡＣＬリンク方式における通信を指す。
【００３０】
次に、データ転送で用いられるＤＨパケット、ＤＭパケットについて説明する。
【００３１】
ＤＨパケットとは、誤り訂正符号（ＦＥＣ：Forward Error Correction code）を含まないパケットをいい、ＤＭパケットとは、誤り訂正符号（ＦＥＣ）を含むパケットである。
【００３２】
伝送線路状況が良好である場合、誤り訂正符号を含まないＤＨパケットを使用し、伝送線路状況が良好でない場合、誤り訂正符号を含むＤＭパケットを使用するよう切り替えてデータ転送をすることもできる。また伝送線路状況に合わせて、転送するＤＨパケット、若しくはＤＭパケットのデータ量も変化させても良い。
【００３３】
また本実施形態では、特にＤＨパケットを用いて説明するが、ＤＭパケットについてもデータ転送をする動作は同様である。
【００３４】
次にマスター１と、スレーブ２、３とでデータ転送されるパケットのフォーマットについて、図５を用いて説明する。図５は、マスター１、スレーブ２、３間で送受信されるデータのフォーマット例である。
【００３５】
データフォーマットは大まかに、アクセスコード（access code）、パケットヘッダー（packet header）、ペイロード（payload）を備えている。
【００３６】
まずアクセスコードは、６８、又は７２［bit］のデータ長を持つ。このマスター１から送信されたアクセスコードにより、スレーブ２、３は自己の所属するピコネットを認識し、またピコネット内における通信の同期をとることができる。つまりアクセスコードを以って、ピコネット内のマスターとスレーブとが互いに識別することができる。マスター１が、スレーブ２、３を検索（Inquiry処理）するときは、このアクセスコードのみからなるデータを送信している。また、アクセスコードのみによるデータ送信では、６８［bit］のデータ長を持つが、アクセスコードの後にパケットヘッダーが送信される場合は７２［bit］のデータ長を持つ。
【００３７】
パケットヘッダーは、５４［bit］のデータ長を持つ。パケットヘッダーにより、主にピコネット内の通信制御が行われる。パケットヘッダーの先頭には、‘AM_ADDR’が備えられており、この値が３［bit］の値を持つ。‘AM_ADDR’は、最大７台分のスレーブを認識するアドレスを備えている。つまり、‘AM_ADDR’は‘００１’、‘０１０’、‘０１１’・・、‘１１１’の値を持つ。すなわち、この‘AM_ADDR’の値が３［bit］で構成されているため、ピコネットに収容できるスレーブ数は最大７台と規定される。また、制御データ部分には前述したＳＣＯ、若しくはＡＣＬリンク方式を示す情報などが含まれる。
【００３８】
ペイロードは、０〜２７４５［bit］のデータ長を持つ。ペイロードには、実際にマスター１、スレーブ２、３間で送受信される正味データが含まれている。
【００３９】
次に、図１に示すピコネット内のマスター１、スレーブ２、３間における大まかな通信方法について図６を用いて説明する。図６は、マスター１がスレーブ２、３に対し、データ転送するため一定の周期を与え、その周期内でスロット毎にデータ転送をしている概念図である。
【００４０】
まず、スロットについて説明する。上述した、各パケットが送受信されるタイミングの基準となる単位をスロットという。図４で示したように、ホッピングすることで使用される周波数は６２５［μsec］毎に切り替わっていく。つまり、スロットとはピコネット内で使用する周波数がホッピングする過程で、現在の周波数が次の周波数に切り替わるまでの、一定の周波数を保った区間のことであり、単位は時間である。つまり、図６に示すように１スロットの区間は６２５［μsec］となる。
【００４１】
更に各スロットには、マスター１が備えるタイマーに従って、例えば、‘０’、‘１’、‘２’・・・と通し番号が付されている。以下、この番号をスロット番号ＳＮと呼ぶ。ピコネット内におけるスレーブ２、３は、マスター１の発生するクロックと同期を取ることが出来るため、スレーブ２、３はマスター１が現在使用しているスロットのＳＮを認識できる。このとき、図示するようにマスター１は、偶数番号が付されたスロットからデータ送信を行う。また、スレーブ２、３は、マスター１から偶数スロットのタイミングで送信された最後のパケットに隣接する、奇数番号が付されたスロットからデータ送信を行う。つまり、Bluetooth規格では時分割多重通信を行っているため、図示するように時間軸上のスロットに付されたスロット番号に従い送受信を交互に行う。
【００４２】
また、マスター１、及びスレーブ２、３間でのデータ転送の送受信は、ＤＨ１、ＤＨ３、ＤＨ５の３つのパケット長のうちいずれかでデータ転送がされ、パケット長が長い程、一度に転送されるデータ量が多くなる。ＤＨパケットは、上述したようにマスター１と、スレーブ２、３とでデータの送受信がされる際の送信元と送信先のアドレスを備え、更に転送される正味のデータを含んでいる。つまり、ＤＨ３パケット及びＤＨ５パケットとは１スロット単位で送受信されるＤＨ１パケットをアグリゲートしたものであり、ＤＨ１パケットに比べ一度に大量のデータを転送できる。すなわち、スレーブ２、３からの転送すべきデータ転送量が少ないときは、ＤＨ１パケットを使用し、データ転送量が多いときは、アグリゲートを行いＤＨ３パケット及びＤＨ５パケットを複数のスロットを用いて一度に転送する。また、ＤＨパケットを転送するとき、通常はスロット毎に異なる周波数が使用される。しかし、アグリゲートされたＤＨ３パケット及びＤＨ５パケットを送信する場合、同一の周波数を用いた複数のスロットが使用される。
【００４３】
次に、マスター１がスレーブ２、３に対し、データ転送を許可する周期を示すデータ転送許可周期（ＴＰＯＬＬ）について説明をする。ＴＰＯＬＬとは、マスターが各スレーブに対して送信権限を与える一定の周期を指し、単位はスロットである。すなわち、ＴＰＯＬＬに含まれる複数のスロットにおいて、マスターとあるスレーブとは連続して通信を行うことが可能とされる。以下具体的に説明する。
【００４４】
スレーブ２、３が有するＭＴＵ（Maximum Transmission Unit）値が異なれば、ＭＴＵ値から得られるＴＰＯＬＬ値は異なった値を示す。ＭＴＵとは、一度のデータ転送でスレーブ２、３が転送できるデータの最大値を示す。以下、スレーブ２、３にそれぞれ割り当てられたＴＰＯＬＬを、ＴＰＯＬＬ２、ＴＰＯＬＬ３と呼ぶことにする。図示するように、スレーブ２に対するＴＰＯＬＬ２は‘１０’であり、スレーブ３に対するＴＰＯＬＬ３は‘８’である。つまり、両者がデータ送信可能な期間は異なる。また、たとえスレーブ２、３のＭＴＵ値が同じであっても、マスター１が備える制御データ処理部２３と、非ストリーミングデータ処理部２８（後述する）とがスレーブ２、スレーブ３から受信するためのデータ転送率を変えることで、スレーブ２、３のＴＰＯＬＬ値が異なるような設定ができる。
【００４５】
なお、ＴＰＯＬＬ２とＴＰＯＬＬ３との値は同一の値をとってもよい。しかし、特にＴＰＯＬＬ値が同じ場合では、図６に示すように、スレーブ２、３に対するマスター１からのＰＯＬＬパケットの送信を行うタイミングをずらす必要がある。つまり、ＴＰＯＬＬ２とＴＰＯＬＬ３との開始タイミングを異ならせる必要がある。なぜなら、スレーブ２、３に対するＰＯＬＬパケット送信は、ＴＰＯＬＬ区間毎に必ず実行される処理であり、またスレーブ２、３はマスター１からＰＯＬＬパケットを受信して初めてデータ転送を開始するからである。つまり、図示するようにマスター１がスレーブ２に対してＳＮ＝‘６’、‘１６’のスロットで、またスレーブ３に対して、ＳＮ＝‘１２’のスロットでＰＯＬＬパケット送信を行う。すなわち、制御データ処理部２３、非ストリーミングデータ処理部２８がスレーブ２、３のＭＴＵを基に計算したＴＰＯＬＬ２、ＴＰＯＬＬ３周期で、マスター１はスレーブ２、３にＰＯＬＬパケットの送信を行っている。この結果、マスター１からＰＯＬＬパケットを受信したスレーブ２、３は、与えられたＴＰＯＬＬ周期でデータ転送の許可が与えられる。すなわち、スレーブ２がデータの転送できるタイミングは、ＴＰＯＬＬ２内においてＳＮが奇数のスロットであり、またスレーブ３がデータの転送できるタイミングは、ＴＰＯＬＬ３内においてＳＮが奇数のスロットである。
【００４６】
次に、マスター１と、スレーブ２、３間で送受信されるパケットの種類について説明する。データの種類として、ＰＯＬＬパケット、データパケット、ＮＵＬＬパケット、ＤＨパケット、ＤＭパケットがある。そして、それらパケットの送受信されるタイミングの基準として、スロットという単位を用いる。
【００４７】
ＰＯＬＬパケットとは、スレーブ２、３とデータ転送の送受信を行う際、ＴＰＯＬＬ毎に必ず一度偶数スロットのタイミングで、マスター１がスレーブ２、３に対し送信するパケットである。これにより、マスター１はスレーブ２、３に対して、送信すべきデータがあるかを問い合わせし、データを保持するスレーブ２、３に対し、データ転送の権限を与える。ＰＯＬＬパケットの受信に対し、スレーブ２、３は受信確認応答を行う。また、ＰＯＬＬパケットには、送信元であるマスター１を示す情報と、スレーブ２、又はスレーブ３のいずれかの宛先を示した情報が付与されている。すなわち、これらＰＯＬＬパケットに付与された送信元と、宛先の情報とを互いに確認することで、マスター１とスレーブ２、３とが送受信されるデータを識別し、誤りのない通信が可能となる。自局宛でないＰＯＬＬパケットを受信したスレーブ２、３は、自局宛ではないことを認識すると、そのＰＯＬＬパケットを破棄する。以下、説明するデータパケット、ＮＵＬＬパケット、ＤＨパケット、ＤＭパケットも同様に互いを認識できる情報を備えている。
【００４８】
データパケットとは、ＰＯＬＬパケットと同様に、スレーブ２、３とデータ転送を行う際、偶数スロットから送信される。またデータパケットは、スレーブ２、３に対し、データ転送の権限を与える役割以外に、ピコネット内では使用することができない周波数帯域の通知などの情報なども含む。例えばマスター１、スレーブ２、３を含むピコネット近接にＩＥＥＥ８０２．１１ｂの規格に従った無線ＬＡＮシステムがあるような場合、無線ＬＡＮシステムが使用する周波数チャネルとの競合が起こらないよう制御する情報が、このデータパケットに含まれる。
【００４９】
また、マスター１が、データを保持している送信元である場合、スレーブ２、３に対し、主にデータ送信をするような場合も、偶数スロットからデータパケットが送信される。
【００５０】
従って、前述のＤＨパケット及びＤＭパケットも、データパケットの一種である、ということも出来る。
【００５１】
ＮＵＬＬパケットとは、マスター１から送信されたＰＯＬＬパケットを受信したスレーブ２、３が、転送すべきデータがないとき、送信する受信確認応答パケットである。すなわち、マスター１からＰＯＬＬパケットを受けたスレーブは必ず、ＤＨパケット、若しくはＤＭパケットか、ＮＵＬＬパケットを送信しなければならない。マスター１は、ＰＯＬＬパケット若しくはデータパケットに応答して、スレーブ２からデータ転送があった場合に、スレーブ２から更にデータを受信する必要があると判断する。この場合にも、マスター１は、スレーブ２に対して後続するデータを受信するため、ＮＵＬＬパケットを送信する。マスター１が送信したＮＵＬＬパケット受信に対しては、スレーブ２は受信確認応答をしなくてもよい。つまり、スレーブ２からの後続データの転送が終了すると、その後、スレーブ２はＮＵＬＬパケットを受信したとしても、マスター１に対して受信確認返答を行わなくてもよい。
【００５２】
＜マスター１の全体構成＞  
次に、図７を用いて、図１で示したマスター１の内部構成について説明する。図７は本実施形態に係るマスター１のブロック図である。本実施形態では、スレーブ２を例えば、オーディオ再生機器とし、スレーブ３をＰＤＡなどの、例えば文字データを保持しているものとする。つまり、スレーブ２からの転送データはリアルタイム性が要求されるストリーミングデータであり、スレーブ３からの転送データは、スレーブ２と比べ、リアルタイム性を要求されない非ストリーミングデータである。
【００５３】
図示するようにマスター１は大まかには、アンテナ１０、パケット無線送受信部（ＲＦ部）１１、リンクコントローラ１２、接続処理部１３、ストリーミングデータ転送部１４、非ストリーミングデータ転送部１５、及びスピーカー２７を備えている。
【００５４】
アンテナ１０は、スレーブ２、３から送信された無線信号（ＲＦ信号：Bluetoothパケット）を受信し、またスレーブ２、３へ向けて無線信号を送信する。
【００５５】
パケット無線送受信部１１は、無線信号の受信時には、アンテナ１０で受信した２．４［ＧＨｚ］帯の無線信号（Bluetoothパケット）をダウンコンバートして、ストリーミングデータパケットと非ストリーミングデータパケットとにそれぞれ分けた後、リンクコントローラ１２へ供給する。また無線信号の送信時には、リンクコントローラ１２から別々に与えられるストリーミングデータパケットと非ストリーミングデータパケットとを、２．４ＧＨｚ帯の無線信号にアップコンバートして、アンテナ１０から送信する。
【００５６】
リンクコントローラ１２は、パケット無線送受信部１１でダウンコンバートされたストリーミングデータパケットと非ストリーミングデータパケットとを、それぞれストリーミングデータ転送部１４と、及び非ストリーミングデータ転送部１５へと供給する。
【００５７】
つまり、リンクコントローラ１２により、スレーブ２から受信したパケットはストリーミングデータ転送部１４へ供給し、スレーブ３から受信したパケットは非ストリーミングデータ転送部１５へと供給する。
【００５８】
また、リンクコントローラ１２は、ストリーミングデータ転送部１４と、非ストリーミングデータ転送部１５からスレーブ２、３とデータ転送を行うためのＴＰＯＬＬ値を受信する。そしてリンクコントローラ１２は、受信したスレーブ２、３のＴＰＯＬＬ値に従い、パケット無線送受信部１０を介してスレーブ２、３とデータ転送を行う。また、接続処理部１３から接続処理（後述する）の指示を受けると、リンクコントローラ１２は、スレーブ２、３以外のBluetooth機能を持ったデバイスとの接続処理を行う。
【００５９】
次に、接続処理部１３について説明する。接続処理部１３は、リンクコントローラ１２に対し、スレーブ２、３以外のBluetooth機能を持つデバイスの接続処理を行うよう命令をする。
【００６０】
ストリーミングデータ転送部１４と、非ストリーミングデータ転送部１５は、それぞれリンクコントローラ１２から受信したスレーブ２、３のＭＴＵ値とデータ転送率とを基にＴＰＯＬＬ値を算出し、リンクコントローラ１２に算出結果を返す。また、ストリーミングデータ転送部１４は受信したスレーブ２のストリーミングデータにつき、デコード処理を行った後、スピーカーにオーディオデータを転送する。
【００６１】
＜処理部１２乃至１５の詳細について＞  
次に、上記リンクコントローラ１２、接続処理部１３、ストリーミングデータ転送部１４及び非ストリーミングデータ転送部１５の詳細について説明する。
【００６２】
＜＜接続処理部１３＞＞  
まず接続処理部１３の詳細について説明する。接続処理部１３は、接続処理を行う。接続処理とは、マスター１が周囲に存在するスレーブを検索してそれらと通信可能な状態を作り出すための処理である。またマスター１がスキャッタネットにおいてスレーブとして機能する場合には、スキャッタネット内におけるマスターと通信可能な状態を作り出すための処理である。
【００６３】
接続処理には、例えばInquiry処理、Inquiry Scan処理、Page処理、及びPage Scan処理が含まれる。接続処理部１３は、これらの具体的な処理を上記リンクコントローラ１２内のInquiry処理部１９、Inquiry Scan処理部２０、Page処理部２１、Page Scan処理部２２にそれぞれ命令する。以下、図８乃至図１１を用いて、接続処理の流れについて説明する。
【００６４】
接続処理にあたって、まず初めにマスター１におけるInquiry処理とスレーブ２、３におけるInquiry Scan処理とが行われる。Inquiry処理は、マスター１が、マスター１の周囲に点在するBluetooth機能を持つスレーブを検索する処理のことである。Inquiry処理について図８を用いて説明する。図８はInquiry処理の概念図である。図示するように、マスター１は、図５に示すアクセスコードを備えたＩＱパケットを、スロットの半分の速さで周波数を切り替えながらブロードキャストで送信する。ＩＱパケットはスレーブを検索するためのパケットである。すると、ＩＱパケットに応答してスレーブからＦＨＳパケットが送信され、これをマスター１が受信する。この一連の処理がInquiry処理である。なお、図８では、マスター１がＩＱパケットを送信する様子のみ示す。また、スレーブ２、３は、マスター１から約１０ｍ以内の距離に位置しているものとする。
【００６５】
Inquiry Scan処理とは、Inquiry処理と対になって行われる処理である。つまり、マスター１が送信したＩＱパケットに応答して、スレーブがＦＨＳパケットを送信するまでの処理のことである。図９はInquiry Scan処理の概念図である。図示するように、マスター１から送信されたＩＱパケットを受信したスレーブ２、３はマスター１に対してＦＨＳパケットを返信する。マスター１は、このＦＨＳパケットを受信して、スレーブ２、３の存在を把握する。なおスレーブ２、３はＩＱパケットを送信する際における周波数の切替え速度よりも、ゆっくりした速さで周波数を切り替えながら周波数を走査する。これにより、スレーブ２、３はＩＱパケットを受信できる。
【００６６】
なお、Inquiry Scan処理には次の処理も含まれる。すなわち、マスター１がスキャッタネット内におけるスレーブとしても機能する場合（図２参照）には、上記ＩＱパケットの受信から上記ＦＨＳパケットをスキャッタネットのマスターに送信するまでの一連の処理を含む。
【００６７】
このＩＱパケットとＦＨＳパケットの送受信により、マスターはスレーブの存在と当該スレーブに関する情報を把握できる。
【００６８】
上記Inquiry処理及びInquiry Scan処理の後、マスター１におけるPage処理とスレーブ２、３におけるPage Scan処理とが行われる。Page処理とは、マスター１と、マスター１の周囲に点在しているスレーブ２、３のうちデータの送受信を行うべきいずれかのスレーブとを接続する処理である。図１０はPage処理の概念図である。まず、マスター１がスレーブ２、３に対してＩＤパケットを送信する。するとスレーブ２、３はＩＤパケットをマスター１に送信する。マスター１はスレーブ２、３からのＩＤパケットを受信すると、これに対し、マスター１の情報を含むＦＨＳパケットを送信する。次に、マスター１は送信したＦＨＳパケットに応答してスレーブ２、３から送信されたＩＤパケットを受信する。すなわち、スレーブに対するＩＤパケット及びＦＨＳパケットの送信、並びにスレーブ２、３からのＩＤパケットの受信を行うことにより、スレーブを特定し、スレーブの情報を把握する処理がPage処理である。すなわちこの段階において、マスター１は、スレーブ２、３の存在を把握している。そこでマスター１は、図示するように、アクセスコードを備えたＩＤパケットを、１スロットの半分の速さで周波数を切り替えながらスレーブ２、３へと送信して、ベースバンド接続を行う。ＩＤパケットとは、スレーブ２、３の情報を含むパケットである。この際、ＩＤパケットの送信先は、Inquiry処理及びInquiry Scan処理で検索されたスレーブのうち、マスター１がデータの送受信として選択したスレーブである。なお、図１０では、マスター１がＩＤパケット及びＦＨＳパケットを送信する様子を示す。
【００６９】
Page Scan処理とは、Page処理と対になって行われる処理である。つまり、マスター１からPage処理で送信されたＩＤパケットをスレーブ２、３が受信すると、これに応答してスレーブ２、３はＩＤパケットを送信する。これに対しマスター１から送信されたＦＨＳパケットを受信したスレーブ２、３はＩＤパケットを送信する。図１１はPage Scan処理の概念図である。図示するように、マスター１から送信されたＩＤパケットを受信したスレーブ２、３は、マスター１に対してＩＤパケットを返信する。これに対しＩＤパケットを受信したマスター１から送信されたＦＨＳパケットを受信すると、スレーブ２、３はＩＤパケットを送信する。なおスレーブ２、３は、マスター１によるＩＤパケットを送信する際における周波数の切替え速度よりも、ゆっくりした速さで周波数を切り替えながら周波数を走査する。これにより、スレーブ２、３はＩＤパケットを受信できる。つまり、マスター１からのＩＤパケット及びＦＨＳパケットの受信と、それに応答したマスター１へのＩＤパケットの送信が、Page Scan処理である。従って、Page Scan処理は、自身がスレーブとして機能する際に主に行われる処理である。
【００７０】
なお、Page Scan処理には次の処理も含まれる。すなわち、マスター１がスキャッタネット内におけるスレーブとしても機能する場合には、スキャッタネットのマスターからのＩＤパケットの受信から、ＩＤパケットをスキャッタネットのマスターに送信するまでの一連の処理を含む。
【００７１】
上記Inquiry処理/Inquiry Scan処理、及びPage処理/Page Scan処理後、マスター１、スレーブ２、３間においてクロックの同期が図られ、送受信されるデータの暗号化、承認などの処理が行われる。すなわち、マスター１及びスレーブ２、３を含むピコネットが確立される。これにより、マスター１、スレーブ２、３間で所望のデータ転送が可能となる。これが接続処理である。
【００７２】
また、上記接続処理を行い、ピコネットを確立した後、マスター１はスレーブ２、３のプロファイルを認識する。プロファイルとは、スレーブがマスター１に対して転送するデータの種類を示すものである。つまり、マスター１は、スレーブ２、３からのプロファイルを認識することで、スレーブ２がオーディオデータを保持し、スレーブ３がリアルタイム性を意識しなくともよいデータを保持していると確認できる。
【００７３】
＜＜リンクコントローラ１２＞＞  
引き続き図７に戻り、次に上記リンクコントローラ１２の詳細について説明する。図示するようにリンクコントローラ１２は、ストリーミングデータパケット送受信部１６、非ストリーミングデータパケット送受信部１８、スケジューリング部１７、Inquiry処理部１９、Inquiry Scan処理部２０、Page処理部２１、Page Scan処理部２２を備えている。
【００７４】
＜＜ストリーミングデータパケット送受信部１６＞＞  
ストリーミングデータパケット送受信部１６は、制御部３４と、送受信部３５を備えている。送受信部３５は、パケット無線送受信部１１から受信したスレーブ２のストリーミングデータパケットにつき、ストリーミングデータ転送部１４へとストリーミングデータパケットや、ストリーミングに必要な転送制御データを供給する。また、送受信部３５は、制御部３４からＰＯＬＬパケット、又はＮＵＬＬパケットの送信の命令を受けるとスレーブ２に対して、ＰＯＬＬパケット、又はＮＵＬＬパケットを送信する。
【００７５】
制御部３４は、スレーブ２からストリーミングデータを受信する為に、スケジューリング部１７へと、ＴＰＯＬＬ毎にＰＯＬＬパケットを送信するタイミングの予約を入れる。そして当該予約が、スケジューリング部１７により許可されると、スレーブ２に対しＰＯＬＬパケットの送信を行うよう、送受信部３５に命令をする。更に、スレーブ２が、ＰＯＬＬパケットに応答して送信したストリーミングデータを送受信部３５が受信すると、制御部３４はストリーミングデータの転送が更に必要であると判断する。この場合、制御部３４は、スケジューリング部１７に対し、スレーブ２から後続するストリーミングデータを受信するため、ＮＵＬＬパケット送信の予約を行う。そして当該予約が、スケジューリング部１７により許可されるとスレーブ２に対し、ＮＵＬＬパケットの送信を行うよう送受信部３５に命令を行う。
【００７６】
＜＜非ストリーミングデータパケット送受信部１８＞＞  
次に、非ストリーミングデータパケット送受信部１８の説明をする。非ストリーミングデータパケット送受信部１８は、制御部３６と、送受信部３７を備えている。
【００７７】
制御部３６と、送受信部３７の機能は、非ストリーミングデータを扱う以外、ストリーミングデータパケット送受信部１６が備える制御部３４、及び送受信部３５と同一である。つまり、非ストリーミングデータパケット送受信部１８の備える送受信部３７は、パケット無線送受信部１１から受信したスレーブ３の非ストリーミングデータパケットにつき、非ストリーミングデータ転送部１５へと非ストリーミングデータパケットや、非ストリーミング転送に必要な転送制御データを供給する。また、送受信部３７は、制御部３６からＰＯＬＬパケット、又はＮＵＬＬパケットの送信の命令を受けるとスレーブ３に対して、ＰＯＬＬパケット、又はＮＵＬＬパケットを送信する。
【００７８】
制御部３６は、スレーブ３から非ストリーミングデータを受信する為に、スケジューリング部１７へと、ＴＰＯＬＬ毎にＰＯＬＬパケットを送信するタイミングの予約を入れる。そして当該予約が、スケジューリング部１７により許可されると、スレーブ３に対しＰＯＬＬパケットの送信を行うよう、送受信部３７に命令を行う。更に、スレーブ３が、ＰＯＬＬパケットに応答して送信した非ストリーミングデータを送受信部３７が受信すると、制御部３６は非ストリーミングデータの転送が更に必要であると判断する。この場合、制御部３６は、スケジューリング部１７に対し、スレーブ３から後続する非ストリーミングデータを受信するため、ＮＵＬＬパケット送信の予約を行う。そして当該予約が、スケジューリング部１７により許可されるとスレーブ２に対し、ＮＵＬＬパケットの送信を行うよう送受信部３７に命令を行う。
【００７９】
＜＜Inquiry処理部１９、Inquiry Scan処理部２０、Page処理部２１、Page Scan処理部２２＞＞  
次に、Inquiry処理部１９、Inquiry Scan処理部２０、Page処理部２１、及びPage Scan処理部２２について説明する。
【００８０】
Inquiry処理部１９は、接続処理部１３からのInquiry処理の命令を受けると、スケジューリング部１７に対してInquiry処理を予約する。そしてスケジューリング部１７により予約が許可されると、パケット無線送受信部１１を介してInquiry処理を行う。より具体的には、ＩＱパケットの送信を予約し、それが許可されるとＩＱパケットをパケット無線送受信部１１から送信する。また、パケット無線送受信部１１を介して、ＩＱパケットを受信したスレーブ２、３からのＦＨＳパケットを受信する。
【００８１】
Inquiry Scan処理部２０は、マスター１自身が同時にスレーブとしても機能する際に動作し、上記したInquiry Scan処理を行う。つまり、接続処理部１３からInquiry Scan処理の命令を受けた際に、スケジューリング部１７に対してInquiry Scan処理を予約する。そしてスケジューリング部１７により予約が許可されると、パケット無線送受信部１１を介してInquiry Scan処理を行う。より具体的には、上記Inquiry処理を行うマスターからパケット無線送受信部１１を介して、ＩＱパケットを受信する。ＩＱパケットを受信すると、ＦＨＳパケットの送信を予約し、それが許可されるとＦＨＳパケットをパケット無線送受信部１１から送信する。
【００８２】
Page処理部２１は、接続処理部１３からPage処理の命令を受けると、スケジューリング部１７に対して、Page処理を予約する。そしてスケジューリング部１７によりPage処理の予約を許可されると、パケット無線送受信部１１を介してPage処理を行う。より具体的には、ＩＤパケット及びＦＨＳパケットの送信を予約し、該予約が許可されるとＩＤパケット及びＦＨＳパケットをパケット無線送受信部１１から送信する。また、ＩＤパケット及びＦＨＳパケットを受信したスレーブ２、３から送信されたＩＤパケットを、パケット無線送受信部１１を介して受信する。
【００８３】
Page Scan処理部２２は、マスター１自身が同時にスレーブとしても機能する際に動作し、上記したPage Scan処理を行う。つまり、接続処理部１３からのPage Scan処理の命令を受けた際に、スケジューリング部１７に対してPage Scan処理を予約する。そしてスケジューリング部１７により予約が許可されると、パケット無線送受信部１１を介してPage Scan処理を行う。より具体的には、上記Page処理を行うマスターからパケット無線送受信部１１を介して、ＩＤパケット及びＦＨＳパケットの受信をする。ＩＤパケット及びＦＨＳパケットを受信すると、ＩＤパケットの送信を予約し、それが許可されるとＩＤパケットをパケット無線送受信部１１から送信する。
【００８４】
なお、ピコネットの形成前、形成後に関わらず、上記接続処理が行われる場合には、Inquiry処理部１９によるＩＱパケットの送信、Inquiry Scan処理部２０によるＦＨＳパケットの送信、並びにPage処理部２１及びPage Scan処理部２２によるＩＤパケット、ＦＨＳパケットの送信等の処理は、スケジューリング部１７からの許可があった際に実行される。
【００８５】
＜＜スケジューリング部１７＞＞  
次に、スケジューリング部１７について説明する。スケジューリング部１７は、上述したように、ストリーミングデータパケット送受信部１６、非ストリーミングデータパケット送受信部１８、Inquiry処理部１９、Inquiry Scan処理部２０、Page処理部２１、及びPage Scan処理部２２からの予約を受け付ける。そして、予約を許可すべきタイミングを迎えると、その予約をした処理部に対し実行の許可をする。また、同一スロットに複数の予約がある場合には、そのうちのいずれかのみを選択して、許可する。なお、スケジューリング部１７は、各処理部からの予約に対して事前に実行タイミングを通知してもよい。
【００８６】
次にスケジューリング部１７の内部構成について説明する。図示するようにスケジューリング部１７は、制御部３０、タイマー３１、予約受付部３２、優先度テーブル３３を備えている。
【００８７】
予約受付部３２は、ストリーミングデータパケット送受信部１６及び非ストリーミングデータパケット送受信部１８によるスレーブ２、及びスレーブ３に対するＰＯＬＬパケット送信予約、データパケット送信予約、ＮＵＬＬパケット送信予約、並びにInquiry処理部１９、Inquiry Scan処理部２０、Page処理部２１、及びPage Scan処理部２２からの接続処理の予約を受け付ける。
【００８８】
優先度テーブル３３は、例えば不揮発性のメモリに保持される。優先度テーブル３３により予約受付部３２で受け付けた予約のうち許可すべき処理の優先順位を保持する。この優先度テーブル３３について図１２を用いて説明する。図１２は、スケジューリング部１７が備える、優先度テーブル３３の概念図である。
【００８９】
図示するように、優先度テーブル３３は、ストリーミングを必要とするスレーブに対する、ＴＰＯＬＬ毎のＰＯＬＬパケット送信、及びストリーミングを必要としないスレーブに対するＴＰＯＬＬ毎のＰＯＬＬパケット送信、ストリーミングを必要とするスレーブに対するＮＵＬＬパケット送信、Inquiry、Inquiry Scan、Page、Page Scan処理によるBluetooth機能を持つ他デバイスへの接続処理、ストリーミングを必要としないスレーブに対するＮＵＬＬパケット送信、における相対的な優先度を示したデータを保持する。
【００９０】
すなわち、図１２に示す優先度は、優先度の高い順に次の通りである。  
１：ストリーミングデータパケット送受信部１６によるスレーブ２へのＰＯＬＬパケット送信、
２：非ストリーミングデータパケット送受信部１８によるスレーブ３へのＰＯＬＬパケット送信、
３：ストリーミングデータパケット送受信部１６によるスレーブ２へのＮＵＬＬパケット送信、
４：Inquiry処理、Inquiry Scan処理、Page処理、Page Scan処理、
５：非ストリーミングデータパケット送受信部１８によるスレーブ３へのＮＵＬＬパケット送信。
【００９１】
すなわち、マスター１は、スレーブ２、３に対し送信すべきパケットにつき、該パケットの種類毎（ＰＯＬＬパケット、ＮＵＬＬパケット、検索及び接続のためのパケットなど）に送信の優先順位を保持する優先度テーブル３３を参照する。
【００９２】
以下では、ＴＰＯＬＬの最初にＰＯＬＬパケットが送信される場合について説明する。しかし、マスター１がＴＰＯＬＬの最初にＰＯＬＬの代わりにデータパケットを送信する場合には、このデータパケットの送信予約が最も高い優先度とされる。
【００９３】
なお、ＰＯＬＬパケットの優先度の高さは上述したパターンに限られない。すなわち、非ストリーミングデータパケット送受信部１８によるスレーブ３へのＰＯＬＬパケット送信の優先度が、ストリーミングデータパケット送受信部１６によるスレーブ２へのＰＯＬＬパケット送信よりも高くてもよい。また、ストリーミングデータパケット送受信部１６によるスレーブ２へのＰＯＬＬパケット送信と、非ストリーミングデータパケット送受信部１８によるスレーブ３へのＰＯＬＬパケット送信は、同一の優先度としてもよい。この場合は、両者の実行タイミングは、ずらして行われるものとする。
【００９４】
タイマー３１は、マスター１、スレーブ２、３がデータ転送を行う際、基準となるものである。すなわち、スレーブ２、３はマスター１が備えるタイマー３１と同期を取ることで送信すべきスロットのタイミングが分かる。
【００９５】
制御部３０は、偶数のスロット番号毎に、予約受付部３２で受け付けた予約された処理を確認する。予約受付部３２に上記いずれの予約も入っていない場合、制御部３０は、次のスロットに予約があるかを確認する。注目したスロットに予約が１つだけある場合には、予約された処理を実行するタイミングに達すると当該予約を行った処理部に対して、実行を許可する。
【００９６】
注目したスロットに複数の予約が入っている場合、制御部３０は、図１２に示す優先度テーブル３３を参照する。優先度テーブル３３を参照した結果、予約受付部３２に予約されている処理のうち最も優先度の高いいずれかの処理を1つ選択する。そして予約された処理を実行するタイミングに達すると、上記選択したいずれかの処理部に対して、実行を許可する。
【００９７】
＜＜ストリーミングデータ転送部１４＞＞  
次に、ストリーミングデータ転送部１４の詳細について説明する。図示するようにストリーミングデータ転送部１４は、データ転送制御部２４、制御データ処理部２３、バッファ２５、デコード２６を備えている。データ転送制御部２４は、マスター１が、スレーブ２からストリーミングデータを受信するため、スレーブ２とのリンクを制御するデータの送受信を、ストリーミングデータパケット送受信部１６を介して行う。
【００９８】
制御データ処理部２３は、スレーブ２が有するＭＴＵ及びスレーブ２から受信するデータの転送率から、ＴＰＯＬＬ２の値を計算する。本実施形態におけるオーディオデータなどによるストリーミングであると、データサイズが大きいことがよくある。こういった場合、スレーブ２からデータを分割して送信を行う。
【００９９】
例えば、スレーブ２のＭＴＵの値が６７２byteだった場合に、マスター１が４００kbpsのデータ転送率を満たしたストリーミングを行いたいとする。この場合、ＴＰＯＬＬ２の値は次のようになる。  
ＴＰＯＬＬ２＝（６７２×８）／４００、０００×１６００＝２１．５０４スロット  
上式より、ＴＰＯＬＬ２の値は２１スロット（小数点以下切り捨てした）となる。しかしマスター１がデータの転送をすることができるのは、偶数番目である。よって、ＴＰＯＬＬ２の値は‘２０’となる。つまり、マスター１からスレーブ２に対して、送信されるＰＯＬＬパケットは２０スロット毎となり、スレーブ２はその２０スロット周期でデータ転送の機会を許可される。
【０１００】
次に、ストリーミングデータ転送部１４の詳細について説明する。
【０１０１】
バッファ２５は、ストリーミングデータパケット送受信部１６から受信したストリーミングデータにつき、バッファリングを行う。
【０１０２】
一般的にバッファとは、処理速度や転送速度の差を補うためにデータを一時的に保存しておく記憶装置や記憶領域を指す。本実施形態においても、スレーブ２から受信したストリーミングデータを順次、デコード部２６へと供給する。スレーブ２から受信したストリーミングデータの転送速度と、スピーカー２７がオーディオデータを再生する速度とを比較すると、ストリーミングデータの転送速度が速いのは明らかである。もしバッファ２５がない場合、スピーカー２７による再生が追いつかないため、途切れ途切れに再生されてしまう。バッファ２５はこの差を補う役目を持つ。
【０１０３】
デコード部２６は、バッファ２５から受信した符号化されているストリーミングデータの復号化を行った後、スピーカー２６へとオーディオデータを供給する。
【０１０４】
スピーカー２７はデコード部２６から供給されたオーディオデータを再生する。
【０１０５】
＜＜非ストリーミングデータ転送部１５＞＞  
次に、非ストリーミングデータ転送部１５の詳細について説明する。図示するように非ストリーミングデータ転送部１５は、非ストリーミングデータ処理部２８、非ストリーミングデータ転送制御部２９、バッファ３８、デコード部３９を備えている。
【０１０６】
非ストリーミングデータ処理部２８は、制御データ処理部２３と同様にスレーブ３が有するＭＴＵからＴＰＯＬＬ３の値を計算する。つまり、ＴＰＯＬＬ３の値を非ストリーミングデータパケット送受信部１８に供給することで、非ストリーミングデータパケット送受信部１８はＴＰＯＬＬ３区間毎にスレーブ３へとＰＯＬＬパケット送信を行う。
【０１０７】
非ストリーミングデータ転送制御部２９は、非ストリーミングデータパケット送受信部１８に対し、非ストリーミングデータの送受信を行う。
【０１０８】
また、バッファ３８、デコード３９は、非ストリーミングデータを扱う以外、動作はバッファ２５及びデコード部２６と同様である。つまり、非ストリーミングデータパケット送受信部１８から受信した非ストリーミングデータにつき、バッファリングを行う。
【０１０９】
デコード部３９は、バッファ３８から受信した符号化されている非ストリーミングデータの復号化を行う。
【０１１０】
＜通信方法＞  
次に、上記無線通信システムにおける通信方法につき、図１に示すピコネットにおけるマスター１の動作に着目しつつ、以下説明する。図１３は本実施形態に係る無線通信方法のフローチャートである。
【０１１１】
まずマスター１は、ピコネットを確立しているかを確認する（Ｓ０）。まだピコネットが確立されていない場合（Ｓ０、ＮＯ）、マスター１の周囲約１０［ｍ］以内の領域のスレーブに対して接続処理を行い、ピコネットを確立する（Ｓ１）。ステップＳ１の後、又はピコネットが確立されている場合（Ｓ０、ＹＥＳ）、マスター１はスレーブに対してＴＰＯＬＬ値が設定されているかを確認する（Ｓ２）。設定されていない場合（Ｓ２、ＮＯ）、制御部３４及び制御部３６はＴＰＯＬＬを設定する（Ｓ３）。すなわち、制御部３４は、ステップ１における接続処理の過程で取得したスレーブ２のＭＴＵ値を制御データ処理部２３へ供給する。更に制御部３６はスレーブ３のＭＴＵ値を非ストリーミングデータ処理部２８へ供給する。これにより、制御データ処理部２３は、制御部３４から受信したスレーブ２のＭＴＵ値と、スレーブ２から受信するデータ転送率とに基づいてスレーブ２に対するＴＰＯＬＬ値を算出し、その算出したＴＰＯＬＬ２値を制御部３４へと供給する。また、同様に制御部３６から受信したスレーブ３のＭＴＵ値と、スレーブ３とのデータ転送率とに基づいて非ストリーミングデータ処理部２８はスレーブ３に対するＴＰＯＬＬ値を算出し、その算出したＴＰＯＬＬ３値を制御部３６へと供給する。
【０１１２】
ステップＳ２の結果、ＴＰＯＬＬ値が設定されている場合（Ｓ２、ＹＥＳ）及びステップＳ３でＴＰＯＬＬを設定した後、制御部３４は、受信したＴＰＯＬＬ２値に基づき、スケジューリング部１７にスレーブ２に対するＰＯＬＬパケット送信の予約をする。同様に制御部３６は受信したＴＰＯＬＬ３値に基づき、スケジューリング部１７にスレーブ３に対するＰＯＬＬパケット送信の予約をＴＰＯＬＬ毎に通知する（Ｓ４）。このほか、上述したＮＵＬＬパケットの送信、及び接続処理部１３による接続処理の要求がある場合には、これらの予約がスケジューリング部１７になされる（Ｓ４）。
【０１１３】
次にスケジューリング部１７は、ステップＳ４で受け付けた予約のうち、優先度の高い予約を選択する（Ｓ５）。選択した予約について実行タイミングの時刻を迎えると、スケジューリング部１７は当該予約を行った処理部に対し該予約の実行を許可する（Ｓ５）。ステップＳ５にてスケジューリング部１７より、許可を受けたいずれかの処理部は、予約した処理を行う（Ｓ６）。
【０１１４】
＜＜ステップＳ５の詳細＞＞
次に、図１３で示したステップＳ５におけるスケジューリング部１７の詳細な動作を、図１４を用いて説明する。図１４は、スケジューリング部１７の動作の流れを示すフローチャートであり、図１３におけるステップＳ５の詳細を示している。
【０１１５】
まず、制御部３０は注目したスロットにおいて、予約受付部３２に各処理部からの予約がなされているかを確認する（ステップＳ１０）。予約がなければ（Ｓ１１、ＮＯ）、次のスロットが来るまで待機し、次のスロットに予約がなされているかを確認する（Ｓ１０）。予約がある場合（Ｓ１１、ＹＥＳ）、次に予約受付部３２の該注目したスロットに、複数の予約があるか否かを確認する（Ｓ１２）。複数の予約がない場合（Ｓ１３、ＮＯ）、タイマー３１の示す時刻が、予約された処理を実行するタイミングに達すると、制御部３０は予約をした各処理部に対し、実行を許可する（Ｓ１７）。ステップＳ１２において複数の予約がある場合（Ｓ１３、ＹＥＳ）、制御部３０は、優先度テーブル３３を参照する（Ｓ１４）。そして、図１２に示す優先度テーブル３３に基づいて、制御部３０は、予約受付部３２に予約されている処理のうち最も優先度の高い予約を選択する（Ｓ１５）。そして、ステップＳ１５で選択された予約の実行タイミングにおいて、当該の予約を許可する（Ｓ１６）。
【０１１６】
＜＜ステップＳ１４、Ｓ１５の詳細＞＞  
上記ステップＳ１４、Ｓ１５における制御部３０の詳細な動作を、図１５を用いて説明する。図１５は、ステップＳ１４、Ｓ１５の詳細を示すフローチャートである。
【０１１７】
図１５に示すように、制御部３０はまず、制御部３４、制御部３６のいずれかによるＰＯＬＬパケット送信の予約が入っているか確認する（Ｓ２０）。前述の通り、制御部３４、制御部３６によるＰＯＬＬパケット送信の予約が同一スロットに重なることはない。制御部３４、制御部３６のいずれかによるＰＯＬＬパケット送信の予約が入っている場合には（Ｓ２１、ＹＥＳ）、制御部３０は当該予約を選択する（Ｓ２２）。すなわち、他の予約に関わらず、ＰＯＬＬパケットの送信がステップＳ６で実行される。ＰＯＬＬパケット送信の予約がない場合（Ｓ２１、ＮＯ）、制御部３０は、制御部３４によるＮＵＬＬパケット送信の予約がなされているか否かを確認する（Ｓ２３）。予約がある場合（Ｓ２４、ＹＥＳ）、制御部３０は、制御部３４によりＮＵＬＬパケット送信の予約を選択する（Ｓ２５）。ＮＵＬＬパケット送信の予約がない場合（Ｓ２４、ＮＯ）、制御部３０は接続処理部１３からの予約がなされているか否かを確認する（Ｓ２６）。予約がある場合（Ｓ２７、ＹＥＳ）、制御部３０は、接続処理部１３により接続処理の予約を選択する（Ｓ２８）。接続処理部１３による予約がない場合（Ｓ２７、ＮＯ）、制御部３０は制御部３６によりＮＵＬＬパケット送信の予約を選択する（Ｓ２９）。すなわち、制御部３６によるＮＵＬＬパケット送信の予約は、図１２からも確認できるように、一番、実行が許可される優先度が低いため、制御部３６から予約されたスレーブ３へのＮＵＬＬパケット送信に対して、制御部３０が実行タイミングを許可するのは、同一のスロットに複数の予約がない場合である。つまり、図１４において、制御部３０が予約受付部３２に予約が重複していないと判断した場合（Ｓ１３、ＮＯ）、制御部３６によるスレーブ３へのＮＵＬＬパケットの送信が許可される（Ｓ１７、図１４）。
【０１１８】
＜通信方法の具体例＞  
次に、制御部３０による予約の選択方法の具体例について、図１６（ａ）乃至（ｄ）を用いて説明する。
【０１１９】
図１６（ａ）は、マスター１がスレーブ２との間で希望する送受信を示すタイミングチャートである。すなわち、制御部３４はスケジューリング部１７に対して、ＳＮ＝‘０’及びＳＮ＝‘１４’のスロットにおけるスレーブ２へのＰＯＬＬ送信を予約し、ＳＮ＝‘２’，‘４’，‘６’のスロットにおけるスレーブ２へのＮＵＬＬパケットの送信を予約する。また、図１６（ｂ）は、マスター１がスレーブ３との間で希望する送受信を示すタイミングチャートである。すなわち、制御部３６がスケジューリング部１７に対して、ＳＮ＝‘１０’、‘２４’でＰＯＬＬをスレーブ３への予約をし、ＳＮ＝‘１２’乃至‘２２’及び‘２６’でＮＵＬＬパケットの送信の予約をする。また、図１６（ｃ）は、マスター１の接続処理部１３が希望する動作を示したタイミングチャートである。すなわち、Inquiry処理部１９、Inquiry Scan処理部２０、Page処理部２１、Page Scan処理部２２の少なくともいずれかがスケジューリング部１７に対して、ＳＮ＝‘０’乃至‘２１’のスロットにおける接続処理の予約をする。図１６（ｄ）は、実際に制御部３０によって許可され、実行される処理の様子である。
【０１２０】
また説明を簡単にするため図１６に示すスレーブ２、３からマスター１へデータ転送されるパケット長を‘１’とした、ＤＨ１パケットとする。
【０１２１】
＜ＣＡＳＥ０＞  
まずＳＮ＝‘０’のスロットの場合を、ＣＡＳＥ０として説明する。図示するようにＣＡＳＥ０では、スレーブ２に対するＰＯＬＬパケット送信と、接続処理とが、同一スロットに予約されている。従って、制御部３０はスレーブ２に対してＰＯＬＬパケット送信予約を選択する。（図１５、ステップＳ２１、ＹＥＳ）。この結果、ＳＮ＝‘０’のスロットではマスター１からスレーブ２へＰＯＬＬパケットが送信される（図１６（ｄ）参照）。
【０１２２】
＜ＣＡＳＥ１＞  
次にＳＮ＝‘２’乃至‘６’のスロットの場合を、ＣＡＳＥ１として以下説明する。図示するようにＣＡＳＥ１では、スレーブ２に対するＮＵＬＬパケット送信と、接続処理とが同一スロットに予約されている。従って、制御部３０はスレーブ２に対してＮＵＬＬパケット送信予約を選択する。（図１５、ステップＳ２４、ＹＥＳ）。この結果、ＳＮ＝‘２’乃至‘６’のスロットではマスター１からスレーブ２へＮＵＬＬパケットが送信される（図１６（ｄ）参照）。
【０１２３】
＜ＣＡＳＥ２＞  
次にＳＮ＝‘８’、‘９’のスロットの場合を、ＣＡＳＥ２として以下説明する。図示するようにＣＡＳＥ２では、接続処理部１３による接続処理が予約されている。従って、制御部３０は接続処理部１３に対して接続処理の予約を選択する。（図１４、ステップＳ１３、ＮＯ）。この結果、ＳＮ＝‘８’、‘９’のスロットではマスター１の接続処理部１３により接続処理が行われる（図１６（ｄ）参照）。つまり、ＩＱパケット、ＦＨＳパケット、及びＩＤパケット等の送受信が実行される。
【０１２４】
＜ＣＡＳＥ３＞  
次にＳＮ＝‘１０’のスロットの場合を、ＣＡＳＥ３として以下説明する。図示するようにＣＡＳＥ３では、スレーブ３に対するＰＯＬＬパケット送信と、接続処理とが同一スロットに予約がなされている。従って、制御部３０はスレーブ３に対してＰＯＬＬパケット送信予約を選択する。（図１５、ステップＳ２１、ＹＥＳ）。この結果、ＳＮ＝‘１０’のスロットではマスター１からスレーブ３へＰＯＬＬパケットが送信される（図１６（ｄ）参照）。
【０１２５】
＜ＣＡＳＥ４＞  
次にＳＮ＝‘１２’、‘１３’及びＳＮ＝‘１６’乃至‘２１’のスロットの場合を、ＣＡＳＥ４として以下説明する。図示するようにＣＡＳＥ４では、スレーブ３に対するＮＵＬＬパケット送信と、接続処理とが同一スロットに予約されている。従って、制御部３０は接続処理部１３に対して接続処理の予約を選択する。（図１５、ステップＳ２７、ＹＥＳ）。この結果、ＳＮ＝‘１２’、‘１３’及びＳＮ＝’１６’乃至’２１’のスロットではマスター１の接続処理部１３により接続処理が行われる（図１６（ｄ）参照）。
【０１２６】
＜ＣＡＳＥ５＞  
次にＳＮ＝‘１４’のスロットの場合を、ＣＡＳＥ５として以下説明する。図示するようにＣＡＳＥ５では、スレーブ２に対するＰＯＬＬパケット送信と、スレーブ３に対するＮＵＬＬパケット送信と、接続処理とが同一スロットに予約されている。従って、制御部３０はスレーブ２に対してＰＯＬＬパケット送信予約を選択する。（図１５、ステップＳ２１、ＹＥＳ）。この結果、ＳＮ＝‘１４’のスロットではマスター１からスレーブ２へＰＯＬＬパケットが送信される（図１６（ｄ）参照）。
【０１２７】
＜ＣＡＳＥ６＞  
次にＳＮ＝‘２２’乃至‘２６’のスロットの場合を、ＣＡＳＥ６として以下説明する。図示するようにＣＡＳＥ６では、スレーブ３に対するＰＯＬＬパケット送信と、スレーブ３に対するＮＵＬＬパケット送信とが予約されている。従って、ＳＮ＝‘２２’、‘２６’において、制御部３０は制御部３６に対してスレーブ３に対してＮＵＬＬパケット送信予約を選択する（図１４、ステップＳ１３、ＮＯ）。また、ＳＮ＝‘２４’において制御部３０はスレーブ３に対してＰＯＬＬパケット送信予約を選択する。（図１４、ステップＳ１３、ＮＯ）。この結果、ＳＮ＝‘２２’乃至‘２６’のスロットではマスター１からスレーブ３へＰＯＬＬパケットの送信及びＮＵＬＬパケットの送信がなされる（図１６（ｄ）参照）。
【０１２８】
＜効果＞  
上記のように本実施形態の無線通信装置及び無線通信方法によれば以下の効果が得られる。
【０１２９】
（１）効率的なデータ転送が可能となる  
本実施形態に係る無線通信装置及び無線通信方法によると、ＴＰＯＬＬを短くすることなくリアルタイム性を要求されるストリーミングデータのデータ転送を行うことができる。なぜなら、本実施形態では、スレーブ２へのＰＯＬＬパケット送信の後、接続処理の実行が許可されるのではなく、スレーブ２からのデータを更に受信するため、ＮＵＬＬパケット送信が先に許可されるからである。つまり、制御部３４が更にスレーブ２からのデータ転送が必要であると判断した場合、ストリーミングデータパケット送受信部１６によりスレーブ２に対してＮＵＬＬパケットの送信が可能となる。これは前述の通り、接続処理部１３による接続処理や、スレーブ３へのＮＵＬＬパケット送信よりもスレーブ２へのＰＯＬＬパケット送信及びスレーブ２へのＮＵＬＬパケット送信が許可される優先度が高いためである。したがって、この後続データ転送は例えば、以下の場合に有効である。スレーブ２からのデータ転送中に伝送線路状況の劣化により、マスター１がＤＨパケットの受信に失敗した場合、またはアグリゲートしたＤＨ３パケット及びＤＨ５パケットを、高い転送率でスレーブ２が送信したために、マスター１がＤＨ３パケット及びＤＨ５パケットの後段にあたるパケット部分が正常に受信できなかった場合などである。このような場合でも後続データ転送を用いることで、更にデータ転送が必要である場合など、再度データを転送することができる。すなわち以上から、接続処理が許可されるよりも、スレーブ２へのＮＵＬＬパケット送信の優先度が高いため、ＴＰＯＬＬを短くすることなく、リアルタイム性を要求されるストリーミングデータのデータ転送を行うことができる。
【０１３０】
また通常、オーディオデータを備えるスレーブ２のＭＴＵ値は、Bluetooth規格で送受信されるパケットサイズよりも大きいためBluetooth規格に準拠したパケットサイズに分割することがある。また、たとえスレーブ２の備えるＭＴＵ値が、Bluetooth規格によるパケットサイズと同等の値であっても、マスター１が備えるＭＴＵ値よりも大きいことがある。これらのような場合でも、優先順位を付したうえで行われる上記後続データ転送は有効な手法となる。
【０１３１】
また、本実施形態に係る無線通信装置及び無線通信方法によると、ストリーミングデータのデータ転送を行いながら、接続処理部１３による接続処理及び、文字データなどの非ストリーミングデータのデータ転送をも効率的に行うことができる。なぜなら、本実施形態ではＴＰＯＬＬを十分に長くすることが出来る。そのため、ＴＰＯＬＬ内でスレーブ２からのデータ転送が終了すると、残りのスロットにおいて接続処理や非ストリーミングデータを保持するスレーブ３へのＮＵＬＬパケット送信が可能となる。つまり、接続処理やスレーブ３へのＮＵＬＬパケット送信の機会が与えられる。
【０１３２】
上記本効果つき、従来の通信方法と比較しつつ、以下詳細に説明する。図１７（ａ）乃至（ｄ）は、従来のBluetooth通信装置におけるデータ通信の様子を示すタイミングチャートである。
【０１３３】
図１７（ａ）は、マスター１がスレーブ２との間で希望する送受信を示すタイミングチャートである。すなわち、制御部３４はスケジューリング部１７に対して、ＳＮ＝‘０’乃至‘２６’のスロットにおけるスレーブ２へのＰＯＬＬ送信を予約する。また、図１７（ｂ）は、マスター１がスレーブ３との間で希望する送受信を示すタイミングチャートである。すなわち、制御部３６がスケジューリング部１７に対して、ＳＮ＝‘１０’、‘２４’でＰＯＬＬをスレーブ３への予約をし、ＳＮ＝‘１２’乃至‘２２’及び‘２６’でＮＵＬＬパケットの送信の予約をする。また、図１７（ｃ）は、マスター１の接続処理部１３が希望する動作を示したタイミングチャートである。すなわち、Inquiry処理部１９、Inquiry Scan処理部２０、Page処理部２１、Page Scan処理部２２の少なくともいずれかがスケジューリング部１７に対して、ＳＮ＝‘０’乃至‘２１’のスロットにおける接続処理の予約をする。図１７（ｄ）は、実際に制御部３０によって許可され、実行される処理の様子である。また、図１７（ａ）、（ｂ）より、ＳＮ＝‘１０’、‘２４’において、スレーブ２へのＰＯＬＬパケット送信及びスレーブ３へのＰＯＬＬパケット送信が同一スロットにて予約されている。図１７（ｄ）に示す従来例では、スレーブ３へのＰＯＬＬパケット送信が許可される優先度の高さが、スレーブ２へのＰＯＬＬパケット送信が許可される優先度よりも高いものとする。
【０１３４】
従来では、図７に示すマスター１内のストリーミングデータパケット送受信部１６が、予め伝送線路状況の劣化によるデータの再送や制御データの転送が発生するであろうことを想定する。そこで制御データ処理部２３はスレーブ２に対する送信の機会を多く与えるよう、ＴＰＯＬＬの周期を短くする必要があった。例えば、図１７（ｄ）の例であると、ＴＰＯＬＬ値が‘２’である。従って、図１７（ｄ）に示すようにスレーブ２に対するデータ転送の機会は多く与えられる。このため、伝送線路状況の劣化時でもマスター１からスレーブ２に対してデータの再送を要求することでストリーミングは可能となる。しかしＴＰＯＬＬが短いがため、図１７（ｄ）に示すように、非ストリーミングデータの転送、及び接続処理の機会が減ってしまっていた。
【０１３５】
この点につき、たしかに本実施形態においても、たとえストリーミングデータにつきリアルタイム性を維持することが出来たとしても、ストリーミングデータを保持するスレーブ２へのＮＵＬＬパケット送信を優先するといった点からすれば、接続処理の機会が減ってしまうように思われる。しかし、上述のように本実施形態における無線通信装置及び無線通信方法では、スレーブ２から後続データを受信するためのＮＵＬＬパケット送信は、必要と判断した際に実行される。つまり、スレーブ２から後続データ転送がないと判断すればＮＵＬＬパケットは送信されない。すなわち、本実施形態では従来と比べて、ＴＰＯＬＬが長いため、上記後続データ転送がないと判断した場合、余ったスロットで接続処理を行う機会が多くなる。
【０１３６】
従って、ＴＰＯＬＬの周期を短くすることなく、ストリーミングデータのデータ転送をしつつ、接続処理や非ストリーミングデータのデータ転送が実現する。
【０１３７】
（２）動作信頼性を向上出来る。  
特にマスター１がスレーブ２から後続データを受信している際に、この後続データにはストリーミングデータ以外に制御データも含ませることができる。つまり、マスター１がスレーブ２からストリーミングデータを受信している際、例えばピコネット内における通信において必要とされる制御データが割り込んで転送することが出来る。
【０１３８】
なお、ここで言う制御データとは、前述の通り使用禁止帯域の情報を含むデータパケットである。もちろん使用禁止帯域に関する情報のみならず、マスター１とスレーブ２、３との間の通信を実現するのに必要なシステム情報全般を含むものであってもよい。
【０１３９】
上記のように、この発明の実施形態に係る無線通信方法は、第１無線端末（スレーブ２）と、前記第１無線端末（スレーブ２）に対する制御機能を備えた第２無線端末（マスター１）とがBluetooth通信を行う無線通信方法であって、前記第１無線端末（スレーブ２）が前記第２無線端末（マスター１）に対しデータ転送許可周期を設定する第１ステップと、前記データ転送許可周期内において前記第１無線端末（スレーブ２）に送信すべきパケットにつき前記パケットの種類毎（ＰＯＬＬパケット、ＮＵＬＬパケット、検索及び接続のためのパケットなど）に前記送信の優先順位を保持する優先度テーブルを参照し、データパケット（ＤＨ１パケット）を前記第１無線端末（スレーブ２）から受信するための第１制御パケット（ＰＯＬＬパケット）を、前記第２無線端末（マスター１）が前記第１無線端末（スレーブ２）に送信する第２ステップと、前記第１制御パケット（ＰＯＬＬパケット）に応答して前記第１無線端末（スレーブ２）が、前記第２無線端末（マスター１）に前記データパケット（ＤＨ１パケット）を送信する第３ステップと、前記データパケット（ＤＨ１パケット）を受信したのち、前記優先度テーブルに従って更にデータパケット（後続するＤＨ１パケット）を受信するための第２制御パケット（ＮＵＬＬパケット）を、前記第２無線端末（マスター１）が前記第１無線端末（スレーブ２）に送信する第４ステップと、前記第１無線端末（スレーブ２）からの前記データパケット（ＤＨ１パケット）の受信が終了したのち、前記優先度テーブルに従って前記第２無線端末（マスター１）が第３無線端末（Bluetooth機能をもつスレーブ）を検索する第５ステップとを含み、前記第２乃至第５ステップは同一の前記データ転送許可周期内において実行される。
【０１４０】
すなわち、上記方法において、データ転送許可周期は、マスター１がスレーブ２に対して連続して送信する権限を与えた期間であって、第１制御パケットを送信する第２ステップと、データパケットを送信する第３ステップと、第２制御パケットを送信する第４ステップと、検索する第５ステップとは、同一のデータ転送許可周期内において行われるものである。
【０１４１】
また、実施形態は上記した一実施形態に限られるものでは無い。例えば、上記実施形態ではBluetooth通信を例に挙げて説明した。しかし、ＴＰＯＬＬのようなある連続送信期間をスロット等の区間に区切って通信を行うような通信方法全般に適用出来る。また、送信すべきパケットに優先順位を設けるという観点からは、例えば無線ＬＡＮ等、他の無線通信方法に広く適用可能である。
【０１４２】
なお、本願発明は上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。更に、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出されうる。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出されうる。
【図面の簡単な説明】
【０１４３】
【図１】この発明の一実施形態に係る無線通信システムのブロック図。
【図２】この発明の一実施形態に係る無線通信システムのブロック図。
【図３】この発明の一実施形態に係る無線通信システムで使用する周波数帯域について示すバンド図。
【図４】この発明の一実施形態に係る無線通信システムが使用する通信方式に従った通信の様子を示す概念図。
【図５】この発明の一実施形態に係る無線通信システムで使用するデータフォーマット。
【図６】この発明の一実施形態に係る無線通信システムで送受信されるデータの概念図。
【図７】この発明の一実施形態に係る無線通信装置のブロック図。
【図８】この発明の一実施形態に係る無線通信システムにおける接続処理の概念図。
【図９】この発明の一実施形態に係る無線通信システムにおける接続処理の概念図。
【図１０】この発明の一実施形態に係る無線通信システムにおける接続処理の概念図。
【図１１】この発明の一実施形態に係る無線通信システムにおける接続処理の概念図。
【図１２】この発明の一実施形態に係る優先度テーブルの概念図。
【図１３】この発明の一実施形態に係るスケジューリング部の動作を示すフローチャート。
【図１４】この発明の一実施形態に係る無線通信装置の動作を示すフローチャート。
【図１５】この発明の一実施形態に係る無線通信装置の動作を示すフローチャート。
【図１６】この発明の一実施形態に係る無線通信システムで送受信されるデータの概念図であり、（ａ）はマスター１がスレーブ２に対し希望するデータ転送、（ｂ）はマスター１がスレーブ３に対し希望するデータ転送、（ｃ）はマスター１の接続処理部１３が接続処理を希望する動作、（ｄ）は実際制御部３０によって許可され実行される処理の様子を示している。
【図１７】この発明の一実施形態に係る無線通信システムで送受信されるデータの概念図であり、（ａ）はマスター１がスレーブ２に対し希望するデータ転送、（ｂ）はマスター１がスレーブ３に対し希望するデータ転送、（ｃ）はマスター１の接続処理部１３が接続処理を希望する動作、（ｄ）は実際制御部３０によって許可され実行される処理の様子を示している。
【符号の説明】
【０１４４】
１、４、５、８…マスター、２、３、５、６、７、８、９…スレーブ、１０…無線アンテナ、１１…パケット無線送受信部、１２…リンクコントローラ、１３…接続処理部、１４…ストリーミングデータ転送部、１５…非ストリーミングデータ転送部、１６…ストリーミングデータパケット送受信部、１７…スケジューリング部、１８…非ストリーミングデータパケット送受信部、１９…Inquiry処理部、２０…Inquiry Scan部、２１…Page処理部、２２…Page Scan部、２３…制御データ処理部、２４…データ転送制御部、２５…バッファ、２６…デコード部、２７…スピーカー、２８…非ストリーミングデータ処理部、２９…非ストリーミングデータ転送制御部、３０、３４、３６…制御部、３１…タイマー、３２…予約受付部、３３…優先度テーブル、３５、３７…送受信部
【図１】
0005091657.tif 000002
【図２】
0005091657.tif 000003
【図３】
0005091657.tif 000004
【図４】
0005091657.tif 000005
【図５】
0005091657.tif 000006
【図６】
0005091657.tif 000007
【図７】
0005091657.tif 000008
【図８】
0005091657.tif 000009
【図９】
0005091657.tif 000010
【図１０】
0005091657.tif 000011
【図１１】
0005091657.tif 000012
【図１２】
0005091657.tif 000013
【図１３】
0005091657.tif 000014
【図１４】
0005091657.tif 000015
【図１５】
0005091657.tif 000016
【図１６】
0005091657.tif 000017
【図１７】
0005091657.tif 000018