JPWO2002056548A1 - データ伝送方法、データ伝送装置、記録媒体及びプログラム - Google Patents
データ伝送方法、データ伝送装置、記録媒体及びプログラム Download PDFInfo
- Publication number
- JPWO2002056548A1 JPWO2002056548A1 JP2002557084A JP2002557084A JPWO2002056548A1 JP WO2002056548 A1 JPWO2002056548 A1 JP WO2002056548A1 JP 2002557084 A JP2002557084 A JP 2002557084A JP 2002557084 A JP2002557084 A JP 2002557084A JP WO2002056548 A1 JPWO2002056548 A1 JP WO2002056548A1
- Authority
- JP
- Japan
- Prior art keywords
- command
- data
- packet
- data transmission
- wired network
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/06—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W92/00—Interfaces specially adapted for wireless communication networks
- H04W92/02—Inter-networking arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
所定の有線ネットワークに接続された第1の機器1に対して、所定の無線ネットワークを介して第2の機器5から機器制御コマンドを伝送したとき、そのコマンドを受信した第1の機器1は、受信した機器制御コマンドの判定を行い、その判定で有線ネットワークに接続された所定の機器(例えば機器2〜4のいずれか1台)を制御するコマンドであると判断したとき、該当するコマンドを有線ネットワークを介して所定の機器に伝送する処理を行う構成として、ブルートゥースなどの無線ネットワーク内で生成されたコマンドを、IEEE1394方式などの有線ネットワークに接続された機器に良好に伝送できるようにした。
Description
技術分野
本発明は、無線ネットワークと有線ネットワークの双方のネットワークを使用したデータ伝送方法及びデータ伝送装置、並びにこれらのデータ伝送に適用されるプログラム及びそのプログラムが格納された記録媒体に関する。
背景技術
従来、IEEE(The Institute of Electrical and Electronics Engineers)1394方式として規格化された有線のシリアルデータバスにより、複数台の機器を接続させた有線ネットワークを構成させて、データ伝送を行うことが提案されている。例えば、IEEE1394方式のバスラインに接続可能なオーディオ機器やビデオ機器(以下これらの機器をAV機器と称する)が開発され、これらのAV機器でネットワークを構成させることで、オーディオデータやビデオデータを機器間で伝送させることができる。
このネットワークにおいては、所定のコマンド(AV/C Command Transaction Set:以下AV/Cコマンドと称する)を用いることにより、ネットワークに接続されているAV機器を、他の機器から制御することが可能である。IEEE1394方式の詳細及びAV/Cコマンドの詳細については、1394 Trade Associationで公開しているAV/C Digital Interface Command Set General Specificationに記載されている。
一方、近年ブルートゥース(Bluetooth:商標)と称される規格の無線伝送システムを使用して無線ネットワーク(ワイヤレスネットワーク)を組むことが提案され、実用化されつつある。この無線ネットワークは、複数台の機器間で、電話通信用音声データ,ファクシミリ用画像データ,コンピュータ用データなどの伝送を、2.4GHzの周波数帯域を使用して無線伝送するもので、機器間の無線伝送距離は、数mから最大でも100m程度までの比較的近距離のネットワークを想定している。伝送を行うデータの種別毎に、そのデータ伝送をどのように行うかを規定したプロファイルが定められている。
ブルートゥースの通信方式の詳細については、後述する実施の形態の中でも説明するが、規格を定めた標準化団体であるBluetooth SIGが公開している。このブルートゥースと称される無線伝送システムの場合にも、Audio/Video Control Transport Protocol(以下AVCTPと称する)と称されるプロトコルで規定されたコマンドの伝送で、ネットワーク内の他のAV機器を制御することができる。
ところで、上述したIEEE1394方式などの有線のバスラインで接続されたネットワークと、ブルートゥースなどの無線伝送を行うネットワークとは、それぞれ個別に構築されているため、例えばIEEE1394方式に対応した機器と、ブルートゥースに対応した機器との間で、コマンドを伝送するようなことは従来不可能であった。即ち、それぞれのネットワーク毎に、規定されたコマンドの構成は異なり、例えば無線ネットワーク側で受信したコマンドを、そのまま有線のバスラインに送出させることは事実上不可能である。
また、無線ネットワークと有線ネットワークとは、基本的に個別に構築されるネットワークであるため、それぞれのネットワーク毎にデータの送出元と届け先を設定させる管理処理が必要であり、単純にコマンド構成の変換を行うだけで、2つのネットワーク間でデータの受け渡しができるものではない。
なお、ここでは有線のバスラインで接続されるネットワークとしてIEEE1394方式を例とし、無線ネットワークとしてブルートゥースを例にして説明したが、他の同様な有線ネットワークと無線ネットワークを使用する場合にも、同様の問題がある。
発明の開示
本発明は、無線ネットワーク内で生成されたコマンドを、有線ネットワークに接続された機器に良好に伝送できるようにすることを目的とする。
第1の発明は、所定の有線ネットワークに接続された第1の機器に対して、所定の無線ネットワークを介して第2の機器から機器制御コマンドを伝送したとき、第1の機器は、受信した機器制御コマンドの判定を行い、その判定で有線ネットワークに接続された所定の機器を制御するコマンドであると判断したとき、該当するコマンドを有線ネットワークを介して所定の機器に伝送するようにしたデータ伝送方法としたものである。
このようにしたことによって、無線ネットワーク側の機器から送出された機器制御コマンドを、有線ネットワーク内の特定の機器に対して伝送させることが可能になり、有線のバスラインで接続されて構成されるネットワーク内の機器が、無線によるコマンドで遠隔制御できるようになる。
第2の発明は、第1の発明のデータ伝送方法において、第1の機器での、受信したコマンドから所定の機器の判断処理は、コマンドで指示される内容に合致する機器を、有線ネットワークに接続された機器から探す処理であるものである。
このようにしたことによって、コマンドで指示される内容の判断だけで、簡単に有線ネットワーク内でのコマンドの届け先などを判断できるようになる。
第3の発明は、第2の発明のデータ伝送方法において、第1の機器は、有線ネットワークに接続された機器の機能を予め調べて、その調べた機能に関するデータを保持するようにしたものである。
このようにしたことによって、コマンドで指示される内容に対応した機器の判断が簡単にできるようになる。
第4の発明は、第1の発明のデータ伝送方法において、第1の機器での、受信したコマンドから所定の機器の判断処理は、有線ネットワーク内でストリームデータの送出元となっている機器を、所定の機器と判断する処理としたものである。
このようにしたことによって、有線ネットワーク内のバスラインにストリームデータを送出させている機器を直接制御できるようになる。
第5の発明は、第1の発明のデータ伝送方法において、第1の機器での、受信したコマンドから所定の機器の判断処理は、予め第1の機器に登録された機器を、所定の機器と判断する処理としたものである。
このようにしたことによって、登録された機器に確実にコマンドを伝送できるようになる。
第6の発明は、第1の発明のデータ伝送方法において、第1の機器内で、無線信号として受信したコマンドを、有線ネットワーク用にデータ構成を変換して有線ネットワークに送出させるようにしたものである。
このようにしたことによって、有線ネットワークと無線ネットワークでコマンド構成が異なる場合に容易に対処できるようになる。
第7の発明は、第1の発明のデータ伝送方法において、第2の機器からの機器制御コマンドは、AVCTPプロトコルのコマンドであり、また所定の機器を制御するコマンドは、IEEE1394方式のAV/Cコマンドとしたものである。
このようにしたことによって、無線ネットワークとしてAVCTPプロトコルを使用したブルートゥースなどによるネットワークが使用でき、有線ネットワークとしてAV/Cコマンドを使用したIEEE1394方式などによるネットワークが使用でき、両ネットワーク間でのコマンドのやり取りが容易にできるようになる。
第8の発明は、所定の有線ネットワークを構成するバスラインが接続されて、有線ネットワーク内の他の機器と双方向にデータ通信が可能な第1の通信手段と、所定の無線ネットワークを構成する他の機器と無線通信を行って双方向にデータ通信が可能な第2の通信手段と、第2の通信手段で所定の機器制御コマンドを受信したとき、その受信した機器制御コマンドのコマンドの届け先を判断し、判断した届け先が有線ネットワークで接続された機器であるとき、第1の通信手段から機器制御コマンドを送出させる制御手段とを備えたデータ伝送装置としたものである。
このようにしたことによって、無線ネットワーク側の機器から送出された機器制御コマンドを、有線ネットワーク内の特定の機器に対して伝送させることが可能になり、有線のバスラインで接続されて構成されるネットワーク内の機器が、無線によるコマンドで遠隔制御できるようになる。
第9の発明は、第8の発明のデータ伝送装置において、制御手段での、機器制御コマンドの届け先判断処理は、コマンドで指示される内容に合致する機器を、有線ネットワークに接続された機器から探す処理としたものである。
このようにしたことによって、データ伝送装置で、コマンドで指示される内容の判断を行うだけで、簡単に有線ネットワーク内でのコマンドの届け先などを判断できるようになる。
第10の発明は、第9の発明のデータ伝送装置において、制御手段は、有線ネットワークに接続された機器の機能を予め調べ、その調べた機能に関するデータを保持し、この保持されたデータを利用してコマンドで指示される内容と合致する機器を探すようにしたものである。
このようにしたことによって、コマンドで指示される内容に対応した機器の判断が簡単にできるようになる。
第11の発明は、第8の発明のデータ伝送装置において、制御手段での、機器制御コマンドの届け先判断処理は、有線ネットワーク内でストリームデータの送出元となっている機器を、届け先と判断する処理としたものである。
このようにしたことによって、有線ネットワーク内のバスラインにストリームデータを送出させている機器を直接制御できるようになる。
第12の発明は、第8の発明のデータ伝送装置において、制御手段での、機器制御コマンドの届け先判断処理は、予め登録された機器を届け先と判断する処理としたものである。
このようにしたことによって、予め登録された機器に確実にコマンドを伝送できるようになる。
第13の発明は、第8の発明のデータ伝送装置において、第2の通信手段が受信したコマンドを、第1の通信手段で送出させるコマンドに変換する変換手段を備えたものである。
このようにしたことによって、有線ネットワークと無線ネットワークでコマンド構成が異なる場合に容易に対処できるようになる。
第14の発明は、第8の発明のデータ伝送装置において、第2の通信手段による所定の機器制御コマンドはAVCTPプロトコルのコマンドであり、また第1の通信手段による機器制御コマンドはIEEE1394方式のAV/Cコマンドとしたものである。
このようにしたことによって、無線ネットワークとしてAVCTPプロトコルを使用したブルートゥースなどによるネットワークが使用でき、有線ネットワークとしてAV/Cコマンドを使用したIEEE1394方式などによるネットワークが使用でき、両ネットワーク間でのコマンドのやり取りが容易にできるようになる。
第15の発明は、所定の有線ネットワークに接続された第1の機器に対して、所定の無線ネットワークを介して第2の機器から機器制御コマンドを伝送したとき、第1の機器は、受信した機器制御コマンドの判定を行い、その判定で有線ネットワークに接続された所定の機器を制御するコマンドであると判断したとき、該当するコマンドを有線ネットワークを介して所定の機器に伝送する処理を実行させるプログラムが記録された記録媒体としたものである。
この記録媒体に記録されたプログラムを伝送装置などに実装させて実行させることで、無線ネットワーク側の機器から送出された機器制御コマンドを、有線ネットワーク内の特定の機器に対して伝送させることが可能になり、有線のバスラインで接続されて構成されるネットワーク内の機器が、無線によるコマンドで遠隔制御できるようになる。
第16の発明は、所定の有線ネットワークに接続された第1の機器に対して、所定の無線ネットワークを介して第2の機器から機器制御コマンドを伝送したとき、第1の機器は、受信した機器制御コマンドの判定を行い、その判定で有線ネットワークに接続された所定の機器を制御するコマンドであると判断したとき、該当するコマンドを有線ネットワークを介して所定の機器に伝送する処理を実行させるプログラムとしたものである。
このプログラムを伝送装置などに実装させて実行させることで、無線ネットワーク側の機器から送出された機器制御コマンドを、有線ネットワーク内の特定の機器に対して伝送させることが可能になり、有線のバスラインで接続されて構成されるネットワーク内の機器が、無線によるコマンドで遠隔制御できるようになる。
発明を実施するための最良の形態
以下、本発明の一実施の形態を、添付図面を参照して説明する。
本例においては、IEEE1394方式のバスラインで接続された有線ネットワークで複数台のAV機器が接続してあり、その有線ネットワーク内の少なくとも1台の機器は、ブルートゥースと称される無線ネットワーク内の機器を兼ねるようにしてある。
図1は、本例のネットワーク構成の一例を示した図である。この例では、有線ネットワークとして、モニタ受像機1と、ビデオカセット記録再生装置2と、ハードディスク記録再生装置3と、チューナ4などのAV機器を、IEEE1394方式のバスラインで接続させてあり、それぞれの機器間でビデオデータ,オーディオデータや制御コマンドなどの伝送が行えるようにしてある。
そして本例のモニタ受像機1は、ブルートゥースと称される無線ネットワーク内の機器としても機能するように、無線信号の送受信部を備える。この例では、無線ネットワークとしてモニタ受像機1と携帯電話端末5と何らかのデータ端末6の3台の機器で構成されるようにしてある。この無線ネットワーク内でも、制御コマンドや各種データの伝送が無線で行えるようにしてある。本例の携帯電話端末5は、AV機器を制御するリモートコントロール装置としても機能するようにしてあり、携帯電話端末5に配置された所定のキーの操作で、AV機器を遠隔制御するためのリモートコントロール信号としてのコマンドを、無線ネットワークを介してモニタ受像機1に対して無線送信するようにしてある。
この携帯電話端末5に配置された所定のキーの操作で、AV機器を遠隔制御するコマンドが送信されたとき、このコマンドを受信したモニタ受像機1では、必要によりバスラインを介して他のAV機器にコマンドを伝送できるようにしてある。このモニタ受像機1を介したコマンドの中継処理の詳細については後述する。
図2は、モニタ受像機1の構成例を示す図である。本例のモニタ受像機1は、バスラインで接続されたビデオ機器から供給される映像データを受信処理及び受像処理して、この受像機が備える表示ディスプレイに映像を表示させるようにしたものである。この処理を行うために、受信処理を行う映像データ受信ブロック31と、この受信ブロック31で受信処理された映像データをディスプレイに表示させる映像表示部32とを備える。
そして、IEEE1394方式のバスラインを介してデータ伝送を行うためのIEEE1394バス処理部10と、無線ネットワーク用の無線伝送を行うための無線ネットワーク処理部20とを備える。
IEEE1394バス処理部10の構成としては、IEEE1394方式のバスラインを構成する信号線が1つ又は複数接続されるポート部11と、バスラインに伝送されるデータと受像機1の内部で処理するデータとの変換処理を行うインターフェースブロック12とを備える。バスラインを介して受信した映像データについては、インターフェースブロック12を介して映像データ受信ブロック31に供給し、表示部32で表示処理を実行させる。また、バスラインを介して制御コマンドを受信したときには、インターフェースブロック12に接続されたパネルコントローラ13に供給し、このパネルコントローラ13が、パネルサブユニット14及びモニタサブユニット15に受信したコマンドに基づいた指示を送って、受信ブロック31及び表示部32での映像表示に関連した各種処理を実行させる。
なお、IEEE1394バス処理部10内のパネルコントローラ13は、バスライン上の伝送の制御を行うようにしてある。この制御に必要なデータについてもコントローラ13が保持するようにしてある。具体的には、例えばバスラインで接続された有線ネットワーク上の機器が有するサブユニット構成をコントローラ13が収集して、コントローラ13内のメモリに保持させる。また、有線ネットワーク内の各機器が、パススルーコマンドと称される制御コマンドに対応しているか否かの情報についても、コントローラ13が収集して、コントローラ13内のメモリに保持させる。
無線ネットワーク処理部20の構成としては、アンテナ21が接続された近距離無線通信部22で、無線ネットワーク内の他の端末に対して送信する無線信号を生成させる送信処理と、無線ネットワーク内の他の端末から無線伝送された信号を受信する受信処理とが行われる。この無線通信部22で受信した信号は、無線ネットワークインターフェース部23で、受像機1の内部で処理するデータに変換処理が行われて、パネルサブユニット24に供給される。また、パネルサブユニット24から供給されるデータを、無線ネットワークインターフェース部23で、無線送信させるデータ構成に変換し、その変換されたデータを無線通信部22に供給して、無線送信させる構成としてある。
パネルサブユニット24は、IEEE1394バス処理部10側に設けたモニタサブユニット15に対して指示を行って、無線信号で受信したコマンドに基づいて、映像表示部32での映像の表示などの受像機の動作制御が行えるようにしてある。
また本例の無線ネットワーク処理部20内には、IEEE1394バス/無線ネットワーク変換部25が設けてあり、無線ネットワーク処理部20で無線信号として受信したコマンドが、この受像機とバスラインを介して接続された有線ネットワーク内の他の機器に伝送する必要のあるコマンドであるとき、この変換部25でコマンドをIEEE1394方式のバスラインで伝送するデータ構成のコマンドに変換し、この変換されたコマンドを、IEEE1394バス処理部10側のパネルコントローラ13に伝送する。ここでの変換処理としては、例えばブルートゥース用のフォーマットのコマンドデータのヘッダ部分を取り除き、バスライン上での宛先のデータなどを付加して、IEEE1394方式のバスラインで伝送するデータ構成とする。
変換されたコマンドのバスライン上の宛先については、変換部25が予め設定された処理で判断するようにしてある。このときの処理としては、例えばIEEE1394バス処理部10内のインターフェースブロック12から、バスラインでアイソクロナスチャンネルを使用して伝送中のストリームデータの送出元の機器(ソース機器)の情報を変換部25がもらい、そのソース機器をコマンドの宛先とすることができる。
また、パネルコントローラ13が収集して記憶した情報に基づいて、変換部25が変換されたコマンドのバスライン上の宛先を判断することもできる。例えば、コマンドで指示された内容が実行可能なサブユニットを備えた機器を、パネルコントローラ13からの情報に基づいて変換部25が判断し、その判断した機器をコマンドの宛先とすることができる。
また、ユーザ操作などに基づいてパネルコントローラ13に予め登録された機器を、変換部25が変換されたコマンドのバスライン上の宛先とすることもできる。この場合には、例えばコマンドの種類毎に宛先を登録するようにして、受信したコマンド毎に適切な宛先を設定するようにしても良い。
図3は、携帯電話端末5の構成例を示す図である。本例の携帯電話端末5は、アンテナ51を備えて、アンテナ51がデュプレクサ52を介して受信回路53及び送信回路58に接続してあり、アンテナ51で受けた信号の受信回路53での受信処理が行えると共に、送信回路58で送信処理された信号をアンテナ51から無線送信させることができる。受信回路53及び送信回路58は、デジタルシグナルプロセッサ(以下DSPと称する)54に接続してある。DSP54では、受信信号の復調や、その復調された信号から音声データなどの各種データを抽出する受信処理や、音声データなどの送信するデータを送信用のデータ構成とする処理や、送信用に変調する処理などの送信処理などが行われる。
DSP54には、通話用のスピーカ55が接続してあり、音声データを受信したとき、その受信して得た音声データをDSP54内でアナログ音声信号に変換して、そのアナログ音声信号をスピーカ55から出力させるようにしてある。また、通話用のマイクロホン57がDSP54に接続してあり、このマイクロホン57が出力する音声信号を、DSP54内でデジタル音声データに変換して、送信処理できる。また、通話用のスピーカ55とは別に、呼び出し音などを鳴らせるためのスピーカ56を備える。
この携帯電話端末5内での通信処理は、制御部59の制御により実行されるようにしてある。この制御部59には、携帯電話端末としての動作に必要なプログラムなどのデータが記憶されたROM59aと、入力したデータや、ダウンロードしたデータの記憶に使用されるRAM59bが接続してある。また、RAM59bには、近距離通信に必要な設定データを記憶するエリアが用意されて、例えば端末の近距離通信のために登録されたデータなどを記憶するようにしてある。この近距離通信のために登録されたデータの詳細については後述する。
また本例の携帯電話端末5は、メモリカード59cを装着することができる構成としてあり、制御部59の制御で、装着されたメモリカード59cに、無線電話回線又は近距離無線通信により得たデータを記憶させることができるようにしてある。例えば、無線電話回線を介してオーディオデータをダウンロードしてメモリカード59cに記憶させたり、近距離通信の設定に必要なデータをメモリカード59cに記憶させることが可能である。
また、各種文字,数字,図形などを表示させる表示部61を備えて、制御部59の制御で動作状況に応じた表示が行われる。本例の場合には、表示部61としてカラー表示が可能な表示パネルが使用される。ダイヤルキーや各種機能キーなどで構成される操作部60の操作情報についても、制御部59に供給されて、制御部59が操作に応じた動作制御を行うようにしてある。操作部60として用意されたキーとしては、本例の場合には例えばAV機器の動作指示を行うキーがある。また、ダイヤルキーなどの端末5が備えるキーを、モードの設定などでAV機器の動作指示用のキーとして割当てるようにしても良い。
そして本例の携帯電話端末5は、近距離無線通信部62を備えて、この近距離無線通信部62を使用して、近距離無線伝送方式による近距離無線通信ができるようにしてある。近距離無線通信部62には、上述した無線電話通信用のアンテナ51とは別のアンテナ63が接続してあり、最大でも100m程度までの近距離で、同じ規格の近距離無線通信部を備えた機器と直接的に無線通信を行うようにしてある。この近距離無線通信部62でのデータ伝送についても、制御部59が制御するようにしてあり、必要によりDSP54側と近距離無線通信部62との間でデータのやり取りが行われる。
図4は、モニタ受像機1,携帯電話機5が備える近距離無線通信部22,62の構成例を示した図である。アンテナ91が接続された送受信処理部92では、高周波信号処理を行って、無線送信処理及び無線受信処理を実行するようにしてある。送受信処理部92で送信する信号及び受信する信号は、2.4GHz帯に1MHz間隔で設定したチャンネルで伝送するようにしてある。但し、各チャンネルの信号は、後述するスロット間隔で伝送周波数を変化させる周波数ホッピングと称される処理を行うようにしてある。1スロット毎に周波数ホッピングを行うものとすると、1スロットは625μ秒であるので、1秒間に1600回周波数が切換えられることになり、他の無線通信との干渉が防止される。無線伝送信号の変調方式としては、GFSK(Gaussian filterd FSK)と称される変調方式が適用される。この変調方式は、周波数伝達特性がガウス分布の低域通過フィルタで帯域制限した周波数偏移変調方式である。
送受信処理部92で受信して得た信号及び送受信処理部92で送信するための信号は、データ処理部93でベースバンド処理が行われる。ブルートゥースの規格では、基本的に送信と受信を交互に行うTDD(Time Division Duplex)方式を適用してあり、データ処理部93では交互に送信スロットの処理と受信スロットの処理を行うようにしてある。
データ処理部93には、インターフェース部94を介して機能処理ブロック80が接続されて、受信したデータを機能処理ブロック80に供給したり、又は機能処理ブロック80からの送出されるデータをデータ処理部93で送信スロットとする処理が行われる。送受信処理部92とデータ処理部93とインターフェース部94での伝送のための処理は、コントローラ95の制御により実行される。このコントローラ95は、例えば各機器に内蔵された中央制御ユニットが使用できる。中央制御ユニットとは別に、近距離無線通信用に用意された専用のコントローラを使用しても良い。
送受信処理部92,データ処理部93,インターフェース部94がブルートゥースで通信を行う近距離無線通信部90になる。但し、図2に示したモニタ受像機1の構成では、インターフェース部は無線通信部とは別の回路として示してある。
そして、この近距離無線通信部90に接続された機能処理ブロック80が、機器として実際に機能を実行する部分に相当する。例えば、モニタ受像機1の場合には、映像を表示させたり、無線ネットワークと、IEEE394方式のバスラインで接続されたネットワークとの間で、データの受け渡しの処理を行う部分に相当する。また、携帯電話端末5の場合には、無線電話回線で通信を行う処理を実行したり、キー操作による指令や電話回線を介して受信した指令に基づいて、近距離無線通信部で送信するデータ(本例の場合のコマンドなど)を生成させる処理を行う部分に相当する。
なお、近距離無線通信部90は、モニタ受像機1や携帯電話端末5などの機器に内蔵させる場合の他に、装置本体とは別体の装置で構成して、外付けで接続させるようにしても良い。
次に、本例のネットワークでデータ伝送が行われる構成について説明する。まず、モニタ受像機1を介して有線で接続されたネットワークである、IEEE1394方式のバスラインでデータ伝送が行われる方式を、図5〜図11を参照して説明する。
図5は、IEEE1394で接続された機器のデータ伝送のサイクル構造を示す図である。IEEE1394では、データは、パケットに分割され、125μSの長さのサイクルを基準として時分割にて伝送される。このサイクルは、サイクルマスタ機能を有するノード(IEEE1394方式ではバスに接続された機器はノードとも称される)から供給されるサイクルスタート信号によって作り出される。
アイソクロナスパケットは、全てのサイクルの先頭から伝送に必要な帯域(時間単位であるが帯域と呼ばれる)を確保する。このため、アイソクロナス伝送では、データの一定時間内の伝送が保証される。ただし、受信側からの確認(アクノリッジメント:ACK)の信号の伝送は行われず、伝送エラーが発生した場合は、保護する仕組みが無く、データは失われる。各サイクルのアイソクロナス伝送に使用されていない時間に、アービトレーションの結果、バスを確保したノードが、アシンクロナスパケットを送出するアシンクロナス伝送では、アクノリッジ、およびリトライを用いることにより、確実な伝送は保証されるが、伝送のタイミングは一定とはならない。
アイソクロナス伝送では、例えばビデオデータ,オーディオデータなどのストリームデータの伝送が行われる。アシンクロナス伝送では、例えば制御コマンドなどの伝送が行われる。
所定のノードがアイソクロナス伝送を行う為には、そのノードがアイソクロナス機能に対応していなければならない。また、アイソクロナス機能に対応したノードの少なくとも1つは、サイクルマスタ機能を有していなければならない。更に、IEEE1394シリアスバスに接続されたノードの中の少なくとも1つは、アイソクロナスリソースマネージャの機能を有していなければならない。
IEEE1394シリアスバスに接続されたノードは、データ入出力部が備えるレジスタの所定アドレスに、IEC1883で規定されるPCR(Plug Control Register)を有し、プラグを仮想的に構成するようにしてある。これは、論理的にアナログインターフェースに類似した信号経路を形成するために、プラグという概念を実体化したものである。PCRは、出力プラグを表すoPCR(output Plug Control Register)、入力プラグを表すiPCR(input Plug Control Register)を有する。また、PCRは、各機器固有の出力プラグまたは入力プラグの情報を示すレジスタoMPR(output Master Plug Register)とiMPR(input Master Plug Register)を有する。各機器は、oMPRおよびiMPRをそれぞれ複数持つことはないが、個々のプラグに対応したoPCRおよびiPCRを、機器の能力によって複数持つことが可能である。アイソクロナスデータの流れは、これらのプラグに対応するレジスタを操作することによって制御される。
図6はプラグ、プラグコントロールレジスタ、およびアイソクロナスチャンネルの関係を表す図である。ここではIEEE1394方式のバスに接続された機器を、AVデバイスa,b,cとして示してある。AVデバイスcのoMPRにより伝送速度とoPCRの数が規定されたoPCR〔0〕〜oPCR〔2〕のうち、oPCR〔1〕によりチャンネルが指定されたアイソクロナスデータは、IEEE1394シリアスバスのチャンネル#1に送出される。AVデバイスaのiMPRにより伝送速度とiPCRの数が規定されたiPCR〔0〕とiPCR〔1〕のうち、入力チャンネル#1が伝送速度とiPCR〔0〕により、AVデバイスaは、IEEE1394シリアスバスのチャンネル#1に送出されたアイソクロナスデータを読み込む。同様に、AVデバイスbは、oPCR〔0〕で指定されたチャンネル#2に、アイソクロナスデータを送出し、AVデバイスaは、iPRC〔1〕にて指定されたチャンネル#2からそのアイソクロナスデータを読み込む。
このようにして、IEEE1394シリアスバスによって接続されている機器間でデータ伝送が行われるが、本例のシステムでは、このIEEE1394シリアスバスを介して接続された機器のコントロールのためのコマンドとして規定されたAV/Cコマンドセットを利用して、各機器のコントロールや状態の判断などが行えるようにしてある。
AV/Cコマンドの場合には、例えば図7に示すようにコマンドとそのコマンドに対するレスポンスがバスライン上で伝送される。ここでは制御する側がコントローラで、制御される側がターゲットである。コマンドの送信またはレスポンスは、IEEE1394のアシンクロナス通信のライトトランザクションを用いて、ノード間で行われる。データを受け取ったターゲットは、受信確認のために、アクノリッジ(ACK)をコントローラに返す。
図8は、図7に示したコマンドとレスポンスの関係をさらに詳しく説明するための図である。IEEE1394バスを介してノードAとノードBが接続されている。ノードAがコントローラで、ノードBがターゲットである。ノードA、ノードBともに、コマンドレジスタ71,73およびレスポンスレジスタ72,74がそれぞれ、512バイトずつ準備されている。図8に示すように、コントローラがターゲットのコマンドレジスタ73にコマンドメッセージを書き込むことにより命令を伝える。また逆に、ターゲットがコントローラのレスポンスレジスタ72にレスポンスメッセージを書き込むことにより応答を伝えている。以上2つのメッセージに対して、制御情報のやり取りを行う。FCPで送られるコマンドセットの種類は、後述する図9のデータフィールド中のCTSに記される。
図9は、AV/Cコマンドのアシンクロナス転送モードで伝送されるパケットのデータ構造を示している。AV/Cコマンドセットは、AV機器を制御するためのコマンドセットで、CTS(コマンドセットのID)=“0000”である。AV/Cコマンドフレームおよびレスポンスフレームが、ノード間でやり取りされる。バスおよびAV機器に負担をかけないために、コマンドに対するレスポンスは、100ms以内に行うことになっている。図9に示すように、アシンクロナスパケットのデータは、水平方向32ビット(=1クワッドレット)で構成されている。図中上段はパケットのヘッダ部分を示しており、図中下段はデータブロックを示している。ディスティネーションIDは、宛先を示している。
CTSはコマンドセットのIDを示しており、AV/CコマンドセットではCTS=“0000”である。Cタイプ/レスポンスのフィールドは、パケットがコマンドの場合はコマンドの機能分類を示し、パケットがレスポンスの場合はコマンドの処理結果を示す。コマンドは大きく分けて、(1)機能を外部から制御するコマンド(CONTROL)、(2)外部から状態を問い合わせるコマンド(STATUS)、(3)制御コマンドのサポートの有無を外部から問い合わせるコマンド(GENERAL INQUIRY(オペコードのサポートの有無)およびSPECIFIC INQUIRY(オペコード及びオペランドのサポートの有無))、(4)状態の変化を外部に知らせるよう要求するコマンド(NOTIFY)の4種類が定義されている。
レスポンスはコマンドの種類に応じて返される。コントロール(CONTROL)コマンドに対するレスポンスには、「実装されていない」(NOT IMPLEMENTED)、「受け入れる」(ACCEPTED)、「拒絶」(REJECTED)、および「暫定」(INTERIM)がある。ステータス(STATUS)コマンドに対するレスポンスには、「実装されていない」(NOT IMPLEMENTED)、「拒絶」(REJECTED)、「移行中」(IN TRANSITION)、および「安定」(STABLE)がある。コマンドのサポートの有無を外部から問い合わせるコマンド(GENERAL INQUIRYおよびSPECIFIC INQUIRY)に対するレスポンスには、「実装されている」(IMPLEMENTED)、および「実装されていない」(NOT IMPLEMENTED)がある。状態の変化を外部に知らせるよう要求するコマンド(NOTIFY)に対するレスポンスには、「実装されていない」(NOT IMPLEMENTED)、「拒絶」(REJECTED)、「暫定」(INTERIM)および「変化した」(CHANGED)がある。
サブユニットタイプは、機器内の機能を特定するために設けられており、例えば、テープレコーダ/プレーヤ,チューナ等が割り当てられる。このサブユニットタイプには、機器に対応した機能の他に、他の機器に情報を公開するサブユニットであるBBS(ブリテンボードサブユニット)についても割り当てがある。同じ種類のサブユニットが複数存在する場合の判別を行うために、判別番号としてサブユニットIDでアドレッシングを行う。オペレーションのコードであるオペコードはコマンドを表しており、オペランドはコマンドのパラメータを表している。必要に応じて付加されるフィールドも用意されている。オペランドの後には、0データなどが必要に応じて付加される。データCRC(Cyclic Reduncy Check)はデータ伝送時のエラーチェックに使われる。
図10は、AV/Cコマンドの具体例を示している。図10Aは、コマンドタイプ/レスポンスの具体例を示している。図中上段がコマンドを表しており、図中下段がレスポンスを表している。“0000”にはコントロール(CONTROL)、“0001”にはステータス(STATUS)、“0010”にはスペシフィックインクワイリ(SPECIFIC INQUIRY)、“0011”にはノティファイ(NOTIFY)、“0100”にはジェネラルインクワイリ(GENERAL INQUIRY)が割り当てられている。“0101乃至0111”は将来の仕様のために予約確保されている。また、“1000”には実装なし(NOT INPLEMENTED)、“1001”には受け入れ(ACCEPTED)、“1010”には拒絶(REJECTED)、“1011”には移行中(IN TRANSITION)、“1100”には実装あり(IMPLEMENTED/STABLE)、“1101”には状態変化(CHANGED)、“1111”には暫定応答(INTERIM)が割り当てられている。“1110”は将来の仕様のために予約確保されている。
図10Bは、サブユニットタイプの具体例を示している。“00000”にはビデオモニタ、“00011”にはディスクレコーダ/プレーヤ、“00100”にはテープレコーダ/プレーヤ、“00101”にはチューナ、“00111”にはビデオカメラ、“11100”には製造メーカ特有のサブユニットタイプ、“11110”には特定のサブユニットタイプが割り当てられている。尚、“11111”にはユニットが割り当てられているが、これは機器そのものに送られる場合に用いられ、例えば電源のオンオフなどに使用される。
図10Cは、オペコードの具体例を示している。各サブユニットタイプ毎にオペコードのテーブルが存在し、ここでは、サブユニットタイプがテープレコーダ/プレーヤの場合のオペコードを示している。また、オペコード毎にオペランドが定義されている。ここでは、“00h”には製造メーカ特有の値、“50h”にはサーチモード、“51h”にはタイムコード、“52h”にはATN、“60h”にはオープンメモリ、“61h”にはメモリ読出し、“62h”にはメモリ書込み、“C1h”にはロード、“C2h”には録音、“C3h”には再生、“C4h”には巻き戻しが割り当てられている。
図11は、AV/Cコマンドとレスポンスの具体例を示している。例えば、ターゲット(コンスーマ)としての再生機器に再生指示を行う場合、コントローラは、図11Aのようなコマンドをターゲットに送る。このコマンドは、AV/Cコマンドセットを使用しているため、CTS=“0000”となっている。ctype(コマンドタイプ)には、機器を外部から制御するコマンド(CONTROL)を用いるため、cタイプ=“0000”となっている(図10A参照)。サブユニットタイプはテープレコーダ/プレーヤであることから、サブユニットタイプ=“00100”となっている(図10B参照)。idはID0の場合を示しており、id=000となっている。オペコードは再生を意味する“C3h”となっている(図10C参照)。オペランドは順方向(FORWARD)を意味する“75h”となっている。
このようなコマンドを受信して再生が開始されると、ターゲットは図11Bのようなレスポンスをコントローラに返す。ここでは、「受け入れ」(accepted)がレスポンスに入るため、レスポンス=“1001”となっている(図10A参照)。レスポンスを除いて、他は図11Aと同じであるので説明は省略する。
次に、モニタ受像機1の無線ネットワーク処理部20が組む無線ネットワークで、他の機器(本例の場合には携帯電話端末5など)と無線通信を行う方式について説明する。本例の場合には、既に説明したようにブルートゥース規格で無線通信を行うようにしてあり、このブルートゥース規格の無線伝送方式について説明する。
図12は、ブルートゥースで無線通信を行う上で必要なプロトコルスタックを示した図である。ブルートゥースのシステム全体のプロトコルは、ブルートゥースのプロトコルの主要部分となるコアプロトコルと、アプリケーションなサービスをつかさどるアプリケーションソフトと、コアプロトコルとアプリケーションとの間で通信プロトコルを整合させるための適合プロトコル群の3つに分けられる。
ブルートゥースコアのプロトコルは、5つのプロトコルから構成される。下位層から順に物理層、ベースバンド層、実データ処理層、論理リンク管理層で構成される。
適合プロトコル群は、既存の各種アプリケーションソフトが利用できるように、コアプロトコルをアプリケーションソフトに適合させることが行われる。この適合プロトコル群には、例えばTCP/IPプロトコル、シリアルポートをエミュレーションするRFCOMMプロトコル、ユーザが操作する機器(HID:Human Interface Device)のドライバなどがある。後述するAV/Cのデータを伝送する上では、この適合プロトコル群に該当するプロファイルを適合するプロトコルが用意される。AV/Cのデータを伝送する上で必要なプロトコル構成については後述する。
物理層としては、2.4GHzの周波数帯を用いた周波数ホッピング型のスペクトル拡散方式が採用されている。送信電力としては、最大でも100mW程度に制限されて、約100m程度までの短距離での無線伝送を想定している。また、この物理層にはリンク層からの制御により、最小−30dBmまで送信電力を低減させることができるようにしてある。
ベースバンド層は、物理層に対して、実際の送受信データパケットをインターフェースするプロトコルとして定義されている。この層では、上位層から受け渡されるデータを送受信するための通信リンクを提供する。このとき、周波数ホッピングの管理や時間軸スロットの管理なども行われる。さらに、パケットの再送や誤り訂正と検出の処理も、このベースバンド層が管理する。
リンク管理層は、通信リンク上で送受信パケットをインターフェースするプロトコルの1つであり、ベースバンド層に対して通信リンクの設定や、そのリンクに関する様々な通信パラメータの設定を指定する。それらは、制御パケットとしてリンク管理層に定義され、必要に応じて対向端末のリンク管理層と通信を行う。また、この層は上位のアプリケーションから必要に応じて直接制御を受ける。
音声層では、リンク管理層がデータを送信できる通信リンクを設定した後に、音声データの受け渡しが行われる。ここでの音声データとは、主として電話で通話を行うための音声データであり、無線電話などで通信を行うときに、データ伝送の遅延を最小限に抑えるために、比較的下位の層に専用の処理層を設けてある。
論理リンク管理層は、リンク管理層及びベースバンド層にインターフェースするプロトコルで、論理チャンネルを管理する。なお、音声層が扱う音声データ以外の伝送データについては、上位のアプリケーションから倫理リンク層に提供されるが、そこでやりとりされる実際のデータは、ベースバンド層で送受信されるデータパケットのサイズやタイミングを意識しないで受け渡しされる。そのため、論理リンク管理層は、上位アプリケーションのデータを論理チャンネルとして管理し、データ分割やデータの再構成の処理を行う。
図13は、2台の機器間で無線通信が行われるときに、各層での処理を示したものであり、物理層では物理的な無線通信回線のリンクが設定され、ベースバンド層ではその設定されたリンクで、パケットの送受信が行われる。リンク管理層では、通信リンク管理チャンネルで制御パケットの送受信が行われる。論理リンク管理層では、論理チャンネルでユーザデータのパケットの送受信が行われる。このユーザデータが、実際に伝送したいストリームデータやコマンドなどに相当する。
次に、この方式で無線通信を行う際の物理的な通信周波数の設定処理について説明する。図14は、この方式で使用される周波数を示した図である。図14に示すように2402MHzから2480MHzまで1MHz間隔で79の通信周波数が存在する。送信されるパケットのそれぞれは、この79ある通信周波数の内の1の通信スペクトルを占有する。そして、この使用される通信スペクトルが、625μ秒毎にランダムに変化(ホッピング)する。
図15は、この通信周波数がホッピングする例を示したものであり、ある特定のタイミングt0から625μ秒毎にランダムに送信周波数が変化している。この625μ秒毎に通信周波数が変化することで、1秒間で約1600回ランダムにホッピングすることになり、結果的に図14に示した帯域内で拡散されて伝送されることになり、スペクトル拡散が行われていることになる。
なお、ブルートゥースの場合には、パケットの1単位は625μ秒間であるが、この1単位のパケットを複数連続して使用して送信することもできる。例えば2台の機器間で双方向に伝送を行うとき、両方向の通信が同じパケット数を使用する必要はなく、一方の方向の通信だけが複数パケット使用する場合もある。
図16に示すように伝送されるパケットが全て625μ秒のパケットである場合には、図15に示したように625μ秒毎に周波数ホッピングが行われる。これに対して、例えば図17に示すように、3パケット連続して使用される場合や、5パケット連続して使用される場合には、そのスロットが連続している間は送信周波数が固定される。
2台の機器間での通信状態を図18に示すと、無線伝送を行う一方の機器をマスタとし、他方の機器をスレーブとしたとき、マスタからスレーブに、1スロット(625μ秒)の期間にスロット構成のデータを伝送し(図18A)、次の1スロットの期間に、スレーブからマスタに、スロット構成のデータを伝送する(図18B)。以下その交互伝送を、伝送が続く限り繰り返す。但し、無線伝送する周波数は、上述したように1スロット毎に周波数f(k),f(k+1),f(k+2)…と変化させる。
図19は、複数の機器で構成されるネットワーク構成例を示した図である。ブルートゥースとして規格化された通信方式では、このような1対1の無線伝送だけでなく、多数の機器でネットワークを組むことができるようにしてある。即ち、2台の機器間で無線伝送を行う場合には、図19Aに示すように、一方の機器がマスタとなり、他方の機器がスレーブとなり、マスタMA11の制御で、マスタMA11とスレーブSL11との間で双方向の無線伝送が実行される。
これに対して、図19Bに示すように、例えば1台のマスタMA21により制御される3台のスレーブSL21,SL22,SL23を用意して、この4台の機器間で無線伝送を行うようにネットワークを構成させても良い。
また図19Cに示すように、3台のマスタMA31,MA32,MA33と、各マスタに個別に制御されるスレーブSL31,SL32,SL33,SL34,SL35,SL36を用意して、3つのネットワークを構成させた上で、その3つのネットワークを接続させて、ネットワーク構成を拡大させることもできる。いずれの場合でも、レスーブ間で直接通信を行うことはできず、必ずマスタを経由した通信が行われる。
なお、1つのマスタと、そのマスタと直接通信を行うスレーブで構成される1つのネットワークを、ピコネットと称する。複数のマスタを有するネットワーク群(即ち複数のピコネットで構成されるネットワーク群)を、キャスターネットと称する。
次に、ブルートゥースで機器間で通信を行うときのリンクの種類について説明する。ブルートゥースでは、SCO(Synchronous Connection−Oriented)リンクと、ACL(Asynchronous Connection−Less)リンクの2種類の通信リンクがあり、アプリケーションの用途によって使い分けができるようになっている。
SCOリンクは、マスタと特定スレーブの間で1対1で通信を行う接続タイプであり、いわゆる回線交換型のリンクである。このリンクは、主に音声などのリアルタイム性が要求されるアプリケーションに使用される。このSCOリンクは、ピコネット内の通信リンクにおいて一定間隔で予め通信スロットを確保しておき、途中に他のデータの伝送があっても、SCOリンクのデータ通信が優先される。即ち、例えば図20に示すように、マスタとスレーブとの間で、SCO通信スロットが一定間隔で相互に伝送される。図20Aはマスタからの送信を示し、図20Bはスレーブからの送信を示す。
このSCOリンクは、1つのマスタに対して同時に最大で3つのSCOリンクをサポートすることができる。この場合、1つのスレーブで3つのSCOリンクをサポートする場合と、異なる3つのスレーブに対してそれぞれ1つのSCOリンクをサポートする場合とがある。なお、SCOリンクは再送信機能を有してなく、SCOリンクで伝送されるパケットには、誤り訂正符号は付加されてない。
ACLリンクは、いわゆるパケット交換型の接続タイプであり、マスタと複数のスレーブの間で、1対多の通信が可能である。ピコネット内のどのスレーブとも通信できる代わりに、データ量やスレーブの数によって個々のスレーブの実効通信速度が変化する場合がある。SCOリンクとACLリンクは、混在させて使用することもできる。
ACLリンクでは、1つのマスタが同時に通信できるスレーブの数は、最大で7つまでになる。但し、1つのピコネット内で設定できるACLリンクは各スレーブに対して1つのみで、1つのスレーブが一度に複数のACLリンクを設定することはできない。1つのスレーブで複数のアプリケーションを動作させるためには、上位のアプリケーションをプロトコル多重化させることが必要である。特に指定がない限り、マスタとスレーブとの通信には、シングルスロットのACLパケットが用いられる。スレーブがマルチスロットのACLパケットを送信するためには、予めマスタからの許可が必要になる。マスタは、スレーブからのマルチスロットのACLパケットの送信要求を拒否できるが、スレーブはマスタからの送信要求を必ず受け入れなければならない。
マスタは、スレーブに対してマルチスロットの上限値のみを通知し、マルチスロットのACLパケットを送信するかどうかはスレーブの判断に任される。一方、マスタから送信されるACLパケットがシングルスロットかマルチスロットであるかは、全てマスタの判断に依存するため、スレーブは全てのマルチスロットパケットの受信を常に準備しておく必要がある。
ACLパケットでは、シングルスロット,マルチスロットの定義とは別に、大別して次の3つのパケット通信方法が提供される。1つ目は非同期通信方式(Asynchronous transfer)であり、2つ目はアイソクロナス通信方式(Isochronous transfer)であり、3つ目は同報通信方式(Broadcast transfer)である。
非同期通信方式は、通常のパケットの送受信を行うための通信方式である。データの伝送速度は、ピコネット内に存在するスレーブのトラヒック量や通信回線品質の劣化によるパケット再送などによって変化する。
図21は、同一ピコネット内の3つのスレーブ(スレーブ1,2,3)が非同期通信方式で通信をする場合の例である。図21Aはマスタからの送信を示し、図21B,図21C,図21Dは、それぞれスレーブ1,2,3からの送信を示している。図21Aに示すように、マスタから各スレーブ1,2,3に対して順にACLパケットが送信され、図21B,図21C,図21Dに示すように、そのACLパケットを受信したスレーブから、マスタに受信確認のパケットが返送されている。
なお、オーディオデータやビデオデータなどのストリームデータをACLパケットの非同期通信方式で伝送する場合もある。このようにストリームデータを非同期通信方式で伝送させる場合には、各ACLパケットにはタイムスタンプを付加させて、受信側でストリームデータの連続性を確保できるようにする。
アイソクロナス通信方式は、予め決められた時間スロットの期間内に、必ずマスタからスレーブ宛にパケットが送信される方式である。この方式では、伝送されるデータの最低限の遅延を確保することができる。アイソクロナス通信方式の場合には、スロット間隔は、最大ポーリング時間として、アイソクロナス通信方式での通信を開始させる前に、マスタとスレーブとの間で合意する必要がある。
マスタはスレーブに対して強制的に最大ポーリング間隔を指定することができ、またスレーブからのアイソクロナス通信方式の設定要求を拒否することができる。しかし、スレーブからはマスタに対して、最大ポーリング間隔の指定はできなく、アイソクロナス通信の設定要求もできない。
図22は、アイソクロナス通信方式でマスタとスレーブとの間で通信を行う場合の例である。図22Aはマスタからの送信を示し、図22Bはスレーブからの送信を示している。この図22に示すように、最大ポーリング間隔以内で、マスタからACLパケットをスレーブに送信し、そのACLパケットを受信したスレーブが、受信した直後に受信確認のパケットをマスタに返送するようにしてある。
同報通信方式は、パケットヘッダ中のスレーブ識別子をゼロとすることで設定される。これにより、マスタから全てのスレーブに対して同報通信パケットを送信することができる。同一のパケットを受信したスレーブでは、それに対する受信確認のパケットを送信しない。スレーブが受信確認を行わない代わりに、マスタは同報通信パケットを複数回続けて送信する。この複数回送信する回数は、同報通信を行う前にマスタは全てのスレーブに対して通知する必要がある。
図23は、同報通信方式でピコネット内の全てのスレーブに通信を行う場合の例である。図23Aはマスタからの送信タイミングを示し、図23B,図23C,図23Dは、それぞれスレーブ1,2,3での受信状態を示している。この図23において、スレーブでのパケットの受信時に、×印を付与した箇所が、そのときのスレーブでのパケットを受信できなかったときの例を示してあり、NBC回繰り返し送信されることで、確実に全てのスレーブに同報できるようにしてある。
図24は、SCOリンクとACLリンクとを併用して使用する通信例を示した図である。図24Aはマスタからの送信タイミングを示し、図24B,図24C,図24Dは、それぞれスレーブ1,2,3での受信状態及び送信状態を示している。この例では、SCOリンクでのSCOパケットが、マスタとスレーブ1との間で一定周期で送信されている状況で、マスタから3台のスレーブ1,2,3に随時ACLパケットが送信されている。また、同報通信用のパケットについても、所定回繰り返し送信されている。この同報通信用のパケットが繰り返し送信されている間に、SCOパケットが送信されるタイミングになると、SCOパケットが送信される。
ここで、アイソクロナス通信方式と同報通信方式で必要な設定パラメータをまとめると、次の表1に示すようになる。
次に、マスタ及びスレーブが内部にクロックについて説明する。この通信方式では、各機器が内部に持つクロックを使用して、周波数ホッピングパターンなどが設定されるようにしてある。このマスタ及びスレーブが持つクロックは、図25に示すように、例えば0〜27までの28ビットのカウンタのカウント値で設定される。このカウンタの1刻みは312.5μ秒であり、この312.5μ秒が呼び出しと問い合わせの処理の最小時間単位となっている。このように312.5μ秒毎に値が1つずつカウントアップする28ビットのカウンタは、1周期が約23時間となり、周波数ホッピングパターンのランダム性を高めている。
0ビット目のクロック値で設定される312.5μ秒の周期は、マスタが呼び出しと問い合わせを行う際の送信パケットの時間周期である。1ビット目のクロック値で設定される625μ秒の周期は、通信周波数が変化するスロットの時間周期である。2ビット目のクロック値で設定される1.25m秒の周期は、マスタ又はスレーブの送受信時間周期である。また12ビット目のクロック値で設定される1.28秒の周期は、問い合わせと呼び出しにおいて、受信周波数を変化させる時間周期のクロックタイミングとなっている。
各スレーブは、マスタのクロックを参照して、マスタのクロックと一致するように、一定のオフセット値を自らのクロックに加算し、その加算されたクロックを通信に使用する。
マスタとスレーブで周波数ホッピングパターンを算出する際には、このクロックの他に、各端末に付与された48ビットのアドレスについてもパラメータとして使用される。48ビットのアドレスは、IEEE802仕様に準拠してアドレス方式で定義され、それぞれのブルートゥースの端末毎に個別に割当てられた絶対的なアドレスである。図26は、この48ビットのアドレス構成例を示した図であり、下位24ビットがLAP(Lower Address Part)、次の8ビットがUAP(Upper Address Part)、残りの16ビットがNAP(Non−significant Address Part)の3つの要素から構成される。
ピコネット内同期における周波数ホッピングパターンの生成には、マスタのアドレスの内、LAP全体の24ビットと、UAPの下位4ビットの合計28ビットが使用される。これにより、それぞれのピコネットに対して、マスタのアドレスに基づいた周波数ホッピングパターンが与えられることになる。通信状態に移行する際には、スレーブにはマスタのアドレスが通知されるので、各スレーブでもマスタと同じ周波数ホッピングパターンを独自に算出できる。
図27は、通信周波数を算出する構成例を示した図である。マスタのアドレスの下位28ビットと、28ビットのクロックの下位27ビットを、通信周波数選択部8に供給して、チャンネル周波数ホッピングパターンである通信周波数が一義的に決まる構成としてある。但し、呼び出し周波数ホッピングパターンと問い合わせ周波数ホッピングパターンは、チャンネル周波数ホッピングパターンとは異なるパターンである。
次に、マスタとスレーブとの間で伝送されるデータ構成について説明する。図28は、パケットフォーマットを示した図である。パケットは、大きく分けて、アクセスコード,パケットヘッダ,ペイロードの3つの部分から構成される。ペイロードは、そのときに伝送するデータ量に応じて可変長に設定される。
図29は、アクセスコードの構成を示した図である。アクセスコードは、68ビット又は72ビットのデータで構成されて、送信パケットの宛先を示すものであり、送受信される全てのパケットに付加されるコードである。パケットの種類によっては、このアクセスコードだけの場合もある。
プリアンブルは、シンクワードのLSBに応じて、1と0のパターンを繰り返す固定4ビット長で構成される。トレーラは、シンクワードのMSBに応じて1と0を繰り返す4ビットで構成される。いずれも、アクセスコード全体の信号直流成分を除去するように機能する。48ビットのシンクワードは、48ビットのアドレスの内の24ビットのLAPを元にして生成される64ビットのデータである。このシンクワードがピコネット識別のために使用される。但し、マスタのアドレスやクロックが得られない場合での通信などで、問い合わせと呼び出しで使用されるパケットで、異なるシンクワードが使用される場合もある。
ここで、アクセスコード種別をまとめると、次の表2に示すようになる。
図30は、パケットヘッダの構成を示した図である。パケットヘッダは、ベースバンド層における通信リンクを制御するために必要なパラメータを含む部分である。
3ビットのAM ADDRは、ピコネット内で通信中のスレーブを特定するための識別フィールドで、マスタが各スレーブに割当てる値である。
4ビットのTYPEは、パケット全体がどのようなパケットであるかを指定するパケットタイプ種別フィールドである。
1ビットのFLOWは、ACLリンクで通信するパケットのフロー制御の管理に使用するフィールドである。
1ビットのARQNは、受信したパケットに誤りがあるかどうかをパケット送信側に通知するために用いる1ビットのフィールドである。ブルートゥース規格では、受信確認専用の応答パケットが用意されてなく、このARQNのフィールドを使用してパケットの送信元に対してパケットの受信確認を送る。このフィールドの値が1か0かによって、受信したパケットに誤りがなかったか、又は誤りがあったことを相手に通知する。受信パケットの誤りの有無は、受信パケットのパケットヘッダに付加されたヘッダ誤り検出符号とペイロードに付加された誤り検出符号で判断される。
1ビットのSENQは再送パケットが受信側で重複しないように管理するために用いるフィールドである。同一のパケットを再送するとき、1パケット送る毎に、値を1と0とで交互に反転させる。
8ビットのHECは、パケットヘッダの誤り訂正符号が配置されるフィールドである。この誤り訂正符号は、g(D)=D8+D7+D5+D2+D+1の生成多項式を用いて生成される。その生成に際して、誤り訂正符号生成用の8ビットのシフトレジスタに設定される初期値は、既に説明したブルートゥース用のアドレスの内のUAPの8ビットを設定する。ここで用いられるアドレスは、アクセスコードを生成する際のアドレスと同一になる。この誤り訂正符号を生成させる際の初期値をまとめると、次の表3に示すようになる。
通信中のピコネットを識別するためには、マスタのアドレスのLAPの24ビットに基づいて生成したチャンネルアクセスコード(CAC)を使用する。ピコネット内での通信の同期を図るには、周波数ホッピングパターンと時間スロットの同期が必要となるが、このとき、万一近くに同一のLAPを有する他のマスタが存在し、かつ周波数と時間スロットの同期がたまたま一致した場合であっても、パケットヘッダの誤り訂正符号であるHECを用いてそれを排除することができる。
ペイロードには、実際に端末間で送受信されるユーザデータまたは制御データが収められる。ユーザデータには、SCOリンクで送受信されるデータと、パケット交換型のACLリンクで送受信されるデータとがある。
図31は、ACLリンクのペイロードの構成を示した図である。ペイロードヘッダ、ペイロードボディ、誤り検出符号の3つの部分から構成され、ペイロード全体の長さは可変長である。一方、SCOリンクのペイロードは、予め通信スロットを周期的に確保しているので、データパケットの再送はなく、ペイロードボディのみの構成であり、ペイロードヘッダと誤り検出符号は付加されてない。
ペイロードヘッダは、ベースバンド層より上位層のデータを制御するために必要なパラメータを含んでいる部分であり、ACLリンクにだけ含まれるデータである。図32に、シングルスロットパケットのペイロードヘッダの構成を示し、図33に、マルチスロットパケットのペイロードヘッダの構成を示す。
ペイロードヘッダに含まれる2ビットのL_CHのデータは、ベースバンド層より上位層のデータが、どのようなデータであるかを指定する論理チャンネルを識別するフィールドである。SCOリンクとACLリンクは、ベースバンド層でのリンクであり、その制御はパケットヘッダに設定される情報によって行われる。L_CHは、ベースバンド層より上位層で定義される論理チャンネルを識別するもので、3つのユーザ論理チャンネルに対して、L_CHが次の表4に示すように定義される。
1ビットのFLOWは、ユーザ論理チャンネル上を送受信されるデータのフロー制御をするために用いる1ビットのデータである。FLOWは、ユーザ論理チャンネル毎に管理され、FLOW=0を設定してデータを返すことで、相手に一時的にデータの送信を中断させる。また、受信バッファが空になると、FLOW=1を設定してデータを返すことで、相手のデータの送信を再開させる。このFLOWフィールドの設定はリンク管理層が行うが、リアルタイム的なデータのフロー制御を保証するものではない。リアルタイムのデーダのフロー制御は、すべてベースバンド層がパケットヘッダ中のFLOWフィールドを用いて管理する。制御パケット中のデータは、リンク管理層で全て処理されるため、論理リンク管理層へは渡されない。従って、制御パケットはこのFLOWによるフロー制御の影響は受けず、その値は必ず1に設定される。
5ビット又は9ビットのLENGTHは、ペイロードボディのデータ長をバイト単位で示すフィールドである。シングルスロットパケットの場合には5ビットであり、マルチスロットパケットの場合には9ビットのフィールドになる。
UNDEFINEDは、マルチスロットパケットのペイロードヘッダにのみ存在し、現状では未定義のフィールドであり、全て0に設定される。
ペイロードボディには、ペイロードヘッダのLENGTHで指定された長さのデータが入る。SCOリンク通信では、データパケットのペイロードがペイロードボディのみで構成されるので、LENGTHによるデータ長の指定はない。但し、DVパケットを用いる場合は、そのデータ部分のデータ長を示す。
CRCは、誤り検出符号を示す16ビットのフィールドであり、ペイロードヘッダ及びペイロードに誤りがあるかどうかを検出するための符号である。この誤り検出符号は、g(D)=D16+D12+D5+1の生成多項式を用いて生成される。その生成に際して、16ビットのシフトレジスタに設定される初期値は、既に説明したアドレスの内のUAPの8ビットに8ビットのゼロを加えた16ビットの値を設定する。ここで用いられるアドレスは、HECと同様に、アクセスコードを生成する際のアドレスと同一になる。
次に、パケット種別について説明する。
パケットヘッダの説明で述べたように、TYPEフィールドはパケットタイプを指定する。この指定されるパケットタイプについて説明すると、SCOリンクとACLリンクで共通に使用される共通パケットと、SCOリンク又はACLリンクに固有のパケットがある。
まず共通パケットについて説明する。共通パケットには、NULLパケット、POLLパケット、FHSパケット、DM1パケット、IQパケット、IDパケットがある。
NULLパケットは、アクセスコードとパケットヘッダから構成されるパケットで、ペイロードを有しない。パケットの長さは固定で126ビットとなる。このパケットは、通信リンクの状態を送受信するためのパケットで、パケットの受信確認(ARQN)やフロー制御(FLOW)を管理する。このNULLパケットを受信したことに対するパケットの確認応答は必要ない。
POLLパケットは、NULLパケットと同様に、アクセスコードとパケットヘッダから構成されるパケットで、126ビットの固定長であり、通信リンクの状態を管理する。但し、このPOLLパケットの場合には、NULLパケットと違って、POLLパケットを受信したことに対して、送信するデータがなくても、パケットの確認を応答送信する必要がある。
FHSパケットは、ピコネット内同期を図るために重要な制御パケットであり、スマタとスレーブの間で同期を確立するための必須のパラメータであるクロックとアドレスを交換するときに送信される。図34はFHSパケットのペイロードの構成例を示した図である。FHSパケットのペイロードは、11のフィールドから構成され、この11のフィールドの144ビットに対する16ビットの誤り検出符号が付加されて、160ビットで構成される。FHSパケットを構成する11のフィールドについて以下説明する。
34ビットのパリティビットは、FHSパケットで設定されるアクセスコード中のシンクワードに対するパリティを含むフィールドである。
24ビットのLAPは、FHSパケットを送信する端末のアドレスの下位24ビットである。LAPに続いた2ビットは未定義のフィールドであり、0に設定される。
2ビットのSRは、呼び出しにおいて、マスタがスレーブに対してIDパケット列を送信する際の繰り返し回数、およびスレーブがマスタからのIDパケット列をスキャンする際のスキャン周期を指定する2ビットのフィールドである。
2ビットのSPは、問い合わせにおいて、スレーブがマスタからのIQパケットを受信して、PHSパケットをマスタに送信した後に、スレーブが必須呼び出しスキャンを行う時間を指定するフィールドである。
8ビットのUAPは、FHSパケットを送信する端末のアドレスの上位8ビットである。
16ビットのNAPは、FHSパケットを送信する端末のアドレスの内の、LAPとUAP以外の16ビットである。
24ビットのデバイスのクラスは、端末の種類を示すフィールドである。
3ビットのAM ADDRは、マスタがスレーブを識別するための3ビットのフィールドである。呼び出しの処理の内、マスタがスレーブに対して送信するFHSパケットにおいて、ピコネット内で用いるスレーブ識別子を指定する。スレーブがマスタからのIQパケットの応答として送信するFHSパケットでは、AM ADDRは、意味がないので0に設定する必要がある。
26ビットのCLK27−2は、端末が有するクロックの内の上位26ビットを示すフィールドである。このクロックは、1.25μ秒のクロック精度を有し、FHSパケットを送信する際には、必ずそのときのクロックの値を設定する必要がある。
3ビットのページスキャンモードは、FHSパケットを送信した端末がサポートするデフォルトの呼び出しスキャンのモードを指定するフィールドである。
次に、DM1パケットについて説明する。DM1パケットがSCOリンクで送受信される場合には、必ず制御パケットとして機能する。一方、ACLリンクで送受信される場合には、制御パケットとして機能する他に、データパケットを送受信するためにも使用される。
SCOリンクまたはACLリンクで共通パケットとして送信される場合には、リンク管理層の制御パケットとして定義される。ところが、ACLリンクでDM1パケットを送受信する場合には、パケットタイプを指定するフィールド(TYPE)を見ただけでは、ユーザパケットか制御パケットかどうかは判らない。そのため、ペイロードヘッダの論理チャンネル種別フィールドをL_CH=11に設定することで、DM1パケットはリンク管理層に対する制御パケットであることが指定される。データパケットの場合は、元のユーザデータのフラグメント化によってL_CH=01又はL_CH=10を設定します。
IQパケットは、問い合わせにおいてマスタがブロードキャストするパケットで、問い合わせアクセスコードのみから構成される。
IDパケットは、呼び出しにおいてマスタが特定のスレーブを指定して送信するパケットで、呼び出しアクセスコードのみから構成される。IQパケットとIDパケットについては、パケットヘッダのタイプフィールドでは定義されないパケットである。
次に、SCOリンク上で送受信されるデータパケットであるSCOパケットについて説明する。SCOパケットは、HVIパケット、HV2パケット、HV3パケット、DVパケットの4種類から構成される。
HV1パケットのペイロードは、ペイロードボディのみから構成され、そこには10バイドのユーザデータが収められる。SCOパケットは基本的に再送されないので、この10バイトには誤り検出符号は含まれない。そして、データは1/3レートの誤り訂正符号化され、最終的に240ビットのペイロード長を有することになる。
HV2パケットのペイロードも、ペイロードボディのみから構成され、そこには20バイトのデータが及び収めされる。この20バイトには誤り検出符号は含まれない。そして、データは2/3レートの誤り訂正符号され、最終的に240ビットのペイロード長を有することになる。
HV3パケットのペイロードも、ペイロードボディのみから構成され、そこには30バイトのデータが及び収めされる。この30バイトには誤り検出符号は含まれない。そして、この30バイトには誤り検出符号化はされない。
DVパケットは、固定長10バイトの音声部分と、最大9バイトまで可変長のデータ部分から構成される。音声部分の10バイトには、誤り訂正符号は含まれないが、データ部分には1バイトのペイロードヘッダを膨れた最大10バイトの部分に対する2バイトの誤り検出符号が付加される。
ACLリンク上で送受信されるACLパケットには、DM1パケット、DH1パケット、DM3パケット、DH3パケット、DM5パケット、DH5パケット、AUX1パケットがある。
DM1パケットのペイロードは、1バイトのペイロードヘッダと、最大17バイトまでの可変長のペイロードボディと、誤り検出符号から構成される。
DH1パケットの構成は、DM1の場合と同じである。但し、ペイロードは誤り訂正符号化されない。従って、最大27バイトまでの可変長データを送受信することが可能になる。
DM3パケットのペイロードは、2バイトのペイロードヘッダと、最大121バイトまでの可変長ペイロードボディと、誤り訂正符号かから構成される。これらDM3パケットのペイロードは、2/3レートの誤り訂正符号される。
DH3パケットの構成は、DM3パケットの構成と同じである。但し、ペイロードは誤り訂正符号化されない。従って、最大で183バイトまでの可変長データを送受信することが可能になる。
DM5パケットのペイロードは、2バイトのペイロードヘッダ、最大224バイトまでの可変長ペイロードボディ、2バイトの誤り訂正符号から構成される。
DH5パケットの構成は、DM5パケットと同じである。但し、ペイロードは誤り訂正符号化されない。従って、最大339バイトまでの可変長データを送受信することが可能になる。
AUXパケットは、2バイトの誤り検出符号を含まない場合のDH1パケットと同じである。つまり、AUX1パケットの再送はない。ペイロードボディは2バイト増加して、最大で29バイトまでの可変長データを送受信することができる。
次に、ブルートゥースでの遷移状態について説明する。この方式での遷移状態は、通信に係わる3段階のフェーズと、端末の消費電力に係わる低消費電力モードから構成される。通信に係わる3段階のフェーズとしては、待ち受けフェーズ、同期確立フェーズ、通信フェーズに分かれており、また低消費電力モードでは、パークモード、ホールドモード、スニフモードの3種類がある。図35は状態遷移例を示した図であり、矢印で示した状態への遷移がある。
待ち受けフェーズ(S11)は、1つの処理状態から構成され、いかなるパケットの送受信も行われてないフェーズである。端末の電源を入れた直後や、通信リンクを切断した場合には、端末は待ち受けフェーズにある。この待ち受けフェーズにおいては、マスタとスレーブに関する役割の違いはない。
同期確立フェーズには、問い合わせ(S12)と呼び出し(S13)の2種類から構成される。
問い合わせとは、ピコネット内同期を確立するために行う第1段階の処理状態である。初めて通信を行おうとする端末は、待ち受けの後、必ず問い合わせに遷移する。
呼び出しとは、ピコネット内同期を確立するために行う第2段階の処理状態で、基本的には問い合わせから状態遷移するが、問い合わせ状態でピコネット内同期確立の第1段階の処理が既に完了している場合には、待ち受けから直接呼び出しに遷移することもある。
問い合わせでは、マスタとスレーブでその役割が明確に異なる。この処理状態にあるマスタは、周囲にスレーブが存在しているかどうかに係わらず、連続してIQパケットをブロードキャストする。その周囲に問い合わせの処理状態にあるスレーブが存在する場合、IQパケットを受信するたびにマスタに対してスレーブはその属性を伝えるためにFHSパケットを送信する。このFHSパケットによって、マスタはスレーブのアドレスとクロックを知ることができる。
図36は、この問い合わせ状態にあるマスタとスレーブが行う処理を示した図である。まず、図36Aに示すように、中央のマスタがIQパケットを送信すると、図36Bに示すように、その周囲のスレーブが、FHSパケットをマスタに送信する。このように、問い合わせにあるマスタは、不特定多数のスレーブからFHSパケットを受信することになる。
ここで、複数のスレーブが同時に特定のIQパケットに対してFHSパケットを送信することが問題となる。同時に複数のFHSパケットが送信されるとき、パケットの衝突が発生して、マスタが送信されFHSパケットを判断できなくなってしまう。ブルートゥースでは、このような衝突を回避するためにFHSパケットの送信の際に、ランダム時間バックオフするようにしてある。つまり、スレーブは初めて受信したIQパケットに対しては、マスタにFHSパケットの送信を行わず、その後にランダム時間バックオフする間はIQパケットの受信を中断させる。その後、スレーブはIQパケットの受信を再開し、次にIQパケットを受信した直後にFHSパケットをマスタに送信する。スレーブは、FHSパケットを受信すると、再びIQパケットの受信をランダム時間バックオフしている間は、中断させる。以降は、この動作を繰り返す。
図37は、この問い合わせにおけるマスタ,スレーブでの処理の概要を示した図である。図37Aはマスタでの送受信を示し、図37Bはスレーブでの送受信を示している。マスタはFHSパケットを誤りなく受信できたことをスレーブに通知しないため、問い合わせの状態にあるスレーブは、FHSパケットを送信したきりの状態になってしまう。しかし、同一のIQパケットを繰り返しある一定時間ブロードキャストするので、マスタは問い合わせ処理状態の各スレーブ毎に複数のFHSパケットを受信することになる。結局、ある一定時間問い合わせを継続することで、FHSパケットの送受信の確実性を高めている。
呼び出しの場合にも、マスタとスレーブとで、役割が異なっている。この処理状態では、問い合わせで送受信したFHSパケットの情報を元に、マスタは通信するスレーブを選択して、そのスレーブ宛にIDパケットを送信する。マスタは、IDパケットの受信を確認すると、そのスレーブに対してFHSパケットを送信する。これによって、スレーブはマスタのアドレスとクロックを知ることができる。
ここで送受信されるIDパケットとFHSパケットのアクセスコードには呼び出しアクセスコードを用いる。
図38は、呼び出しにあるマスタとスレーブが行う処理動作の概要を示している。図38Aに示すように、中心にあるマスタがIDパケットをスレーブに送信することで、スレーブが受信確認を通知する。また、図38Bに示すように、マスタがFHSパケットをスレーブに送信することで、スレーブが受信確認を通知する。
問い合わせにおける不特定多数のスレーブに対する処理と異なり、呼び出しでは特定のスレーブとマスタの間で処理が交わされる。1対1でパケットの送受信を行えることから、マスタとスレーブはその送受信を確認しながら処理が行える。
マスタからのIDパケットを受信したスレーブは、マスタに同一のIDパケットを送信して受信確認を通知する。次に、マスタはスレーブにFHSパケットを送信して、自分のアドレスとクロックをスレーブに通知する。スレーブは、このFHSパケットを誤りなく受信すると、IDパケットをマスタに送信して、その受信確認とする。この時点で、問い合わせでの処理と合わせて、ピコネット内同期に必要なアドレスとクロックの情報が、マスタ,スレーブの間で相互に交換されたことになる。
図39は、呼び出しにおけるマスタ,スレーブ間での一例の処理を示した図である。図39Aはマスタでの送受信タイミングを示し、図39Bはスレーブでの送受信タイミングを示している。
図35の状態遷移図に示した通信接続フェーズは、接続(S14)と、データ転送(S15)を有する。この通信接続フェーズでは、同期確立フェーズを経てマスタとスレーブがピコネット内で同期をしており、実際の通信を行うことが可能なフェーズである。接続の状態では、データパケットの送受信は行われない。このときに送受信されるのは、通信リンクを設定するための制御パケット、セキュリティ関連の制御パケット、低消費電力モードに関連する制御パケットなどに限定される。
一方、データ転送の状態では、データパケットの送受信が許容される。同期確立フェーズを経て、初めて接続に遷移した場合には、基本的にマスタとスレーブの間で接続認証と暗号化の処理を完了しなければ、データ転送へ移行することはできない。接続におけるマスタとスレーブの役割は、そこで管理される制御パケットの内容によって異なる。
データ転送におけるデータパケットの送受信に、マスタとスレーブおよび時間スロットの規則に従って行われる。また、データ転送による端末が通信を切断した場合、および端末内のコントローラに対してハード的なリセットがかかった場合には、端末はデータ転送から待ち受けに状態遷移する。
低消費電力モードとは、接続から遷移する端末の低消費電力状態を提供するモードを言う。この低消費電力モードには、パークモード(S16)、ホールドモード(S17)、スニフモード(S18)の3種類がある。
パークモードは、スレーブ特有のモードであり、接続で確立したピコネット内同期を維持した低消費電力モードである。
ホールドモードは、スマタ,スレーブのいずれも移行できる低消費電力モードであり、接続で確立したピコネット内同期を維持し、かつスレーブの場合にはマスタから与えられたスレーブ識別子を保持しているモードである。
スニフモードは、スレーブ特有の低消費電力モードであり、ホールドモードの場合と同様に、スレーブは接続で確立したピコネット内同期をそのまま維持し、マスタから与えられたスレーブ識別子を保持しているモードである。
なお、ブルートゥースにおいては、ピコネット内でマスタと特定のスレーブとの間で、マスタ・スレーブ転換を行うことができるようにしてある。
また、通信接続フェーズの接続状態で実行されるセキュリティに関する処理としては、大別して認証と暗号化の2の処理がある。認証処理では、自分と特定の相手との間で接続を許可判断することである。暗号化処理は、自分が通信中のデータを第三者に盗聴されないように保護することを言う。
ブルートゥースのセキュリティは、リンクキーと言う概念で管理されている。リンクキーは、ある特定の2端末間それぞれにおいて、1対1のセキュリティを管理するパラメータのことである。このリンクキーは第三者には開示されてはならない。
このリンクキーとしては、初めて接続を試みる端末間で使用される初期化キーが使用され、過去に接続を行って、データベースにリンクキーがパラメータとして設定されている場合には、その設定されたリンクキーが使用される。初期化キーは、上位のアプリケーションからのPINコードと内部的に発生したデータを使用して生成される。
ここまではブルートゥース規格における一般的な処理について説明したが、本例においては、この近距離無線伝送で、オーディオ機器やビデオ機器(これらの機器を総称してAV機器と称する)などの電子機器をコントロールするコマンドと、レスポンスの伝送を行うようにしてある。
図40は、このコマンドとレスポンスの伝送を行う伝送構成を、階層構造で示した図である。ここでは、コマンドを送信する側の端末が、コントローラと称される。また、そのコマンドを受信して、レスポンスをコマンドの送信元に送信する端末が、ターゲットと称される。このコントローラ,ターゲットの関係は、通信接続管理を行う上で必要な既に説明したマスタ,スレーブとは別の概念であり、基本的にはいずれがマスタ,スレーブの端末として機能していても良い。
ベースバンド層の上には、制御用のプロトコルのデータを伝送するためのL2CAPパケットを処理する層があり、さらにその上に、AVCTP(Audio/Video Control Transport Protocol)のプロトコルが用意され、そのプロトコル上で、AV機器をコントロールするAV/Cコマンドと称されるプロトコルが用意されている。
図41は、そのプロトコルのデータを伝送するためのL2CAPパケットのデータ構成例である。図41Aに示すように、このパケットのペイロードの区間の先頭部分にはヘッダが付加され(L2CAP Headerと示された部分)、データ長(length)と、チャンネルIDとが示される。それ以降の区間が実際の情報(インフォメーション)になる。
インフォメーションの区間は、図41Bに示すように、AVCTPヘッダと、AVCTPのメッセージとが配置される。AVCTPのメッセージのデータは、図41Cに示すように、AV/Cのデータであることを示す“0000”のデータ(4ビット)と、コマンドタイプ及びレスポンスタイプを示すコマンドタイプ/レスポンスのデータ(4ビット)と、サブユニットタイプを示すデータ(5ビット)と、サブユニットIDを示すデータ(3ビット)と、機能を指示するオペコードのデータ(8ビット)と、その機能に付随するデータであるオペラント(8ビット)が、オペランド〔0〕,オペランド〔1〕,‥‥オペランド〔n〕(nは任意の整数)と配置されている。この図34に示すAVCTPのデータ構成は、有線のバスラインで接続されたネットワーク上で機器制御データなどを伝送する規格であるAV/Cコマンドセットとして規定されたデータ構成を適用したものである。
図42は、コントローラとターゲットとの間でコマンドとレスポンスが無線伝送される状態を示した図である。コントローラ側の端末で、何らかのユーザなどがあり、ターゲットの機器に対してコマンドを送信する必要が発生したとき、コントローラはターゲットに対してコネクションを確立させ(ステップS31)、その確立したコネクションで、AV/Cコマンドをコントローラからターゲットに送信する(ステップS32)。このコマンドを受信したターゲットでは、コマンドに対するレスポンスをコントローラに送信する(ステップS33)。そして、必要によりコマンドに対する処理がターゲットで実行される。また、ターゲットの状態を確認するコマンドであるときには、その要求されたデータをレスポンスでコントローラに送り返す。
そして、図43に示すように、コントローラ側でのユーザ操作などで、或いはターゲット側でのユーザ操作などで、コネクションを外す処理が実行されたとき、コマンドやレスポンスを伝送するために設定したコネクションを外すリリースコネクション処理が実行される(ステップS34)。
次に、本例のシステムで使用されるAV/Cコマンドセット(即ちAVCTPのデータ)の構成について、図44〜図46を参照しながら説明する。図44は、AV/Cコマンドとして伝送される区間のデータ構造を8ビット単位で示している。AV/Cコマンドは、AV機器を制御するためのコマンドセットであり、CTS(コマンドセットのID)=“0000”である。AV/Cコマンドフレームおよびレスポンスフレームがやり取りされる。コマンドに対するレスポンスは、例えば規定された期間内に行うことになっている。但し、暫定的なレスポンスを規定された期間内に送って、ある程度の期間後に正式なレスポンスを送る場合もある。
CTSはコマンドセットのIDを示しており、AV/CコマンドセットではCTS=“0000”である。Cタイプ/レスポンスのフィールドは、パケットがコマンドの場合はコマンドの機能分類を示し、パケットがレスポンスの場合はコマンドの処理結果を示す。コマンドとレスポンスの種類については、既にAV/Cコマンドで説明したものと同じである。
サブユニットタイプは、機器内の機能を特定するために設けられいる。同じ種類のサブユニットが複数存在する場合の判別を行うために、判別番号としてサブユニットIDでアドレッシングを行う。オペレーションのコードであるオペコードはコマンドを表しており、オペランドはコマンドのパラメータを表している。必要に応じて付加されるフィールドも用意されている。オペランドの後には、0データなどが必要に応じて付加される。
このように構成されるAVCTPのプロトコルのデータをブルートゥース規格で無線伝送することで、機器の遠隔制御が可能になる。ここで、AVDCPのプロトコルのデータにてコントロールされる機器が、パネルサブユニットを備えている場合について説明する。AVCTPのプロトコルで制御される機器は、IEEE1394方式のバスラインに接続される機器の場合と同様に、サブユニットと称される機能部を備えているが、そのサブユニットの1つとして、パネルサブユニットと称されるものがある。このパネルサブユニットは、例えばリモートコントロール装置などの制御機器側で、被制御機器で実行できる動作に関するGUI(グラフィクユーザインターフェース)用のパネルを表示させて、そのパネルの表示に対応したキー操作があったとき、そのキーで指定されたパネル上の表示機能を実行させるようにしたものである。このパネルサブユニットを使用した制御の例として、パススルーコマンドを使用して制御を実行する場合もある。
図45は、パネルサブユニットに対して伝送されるパススルー(PASSTHROUGH)コマンドの構成を示した図である。オペコードの区間は、パススルーコマンドであることを示すコード(7C16)が付加される。オペランド〔0〕の区間には、ファンクションタイプのデータを配置する。オペランド〔1〕の区間には、先頭ビットにステートフラグを配置し、残りの7ビットにオペレーションIDを配置する。このステートフラグは、ボタンを押す/放すというリモートコントロール装置のユーザ操作を表す。ボタンが押された時には、フラグを0にし、ボタンが放されたときにフラグを1にする。なお、(16)を付加して示す数字は、4ビットのデータで示される16進数値(1つの桁が0,1,…9,A,B…Fの16値で示される数値)である。
オペランド〔1〕の区間に配置されるオペレーションIDとしては、例えば図46に示すように、各コード値毎に各種オペレーションが割当てられている。例えば、GUI画面上のアップ,ダウンなどの方向や選択を指示するコードや、メニュー画面の選択を指示するコードや、再生,停止,録音,早送り,巻き戻しなどのオーディオ機器やビデオ機器の動作を直接指示するコードが割当てられている。
次に、本例のモニタ受像機1で、無線ネットワーク処理部20でパススルーコマンドを受信したときの処理について説明する。ここでは、例えば図1に示したネットワーク構成の中の、携帯電話端末5からモニタ受像機1に無線伝送されるパススルーコマンドとして、モニタ受像機1とIEEE1394方式のバスラインで接続されたビデオカセット記録再生装置2の動作(例えば再生)を指示するコマンドであるとする。このときには、例えば図47に示すように、携帯電話端末5の再生操作指示用の所定のキーを操作したとき、その再生を指示するオペレーションIDが含まれたAVCTPのプロトコルのコマンドが、携帯電話端末5から無線送信される(ステップS1)。このとき無線送信された信号は、モニタ受像機1の無線ネットワーク処理部20で受信される。このコマンドを受信したとき、モニタ受像機1の無線ネットワーク処理部20は、コマンドに対するレスポンスを無線送信し(ステップS2)、携帯電話端末5でレスポンスが受信される。
そして、ステップS1でコマンドを受信したモニタ受像機1の無線ネットワーク処理部20では、受信したコマンドの宛先を判定する処理を行い、その判定に基づいて、例えばビデオカセット記録再生装置2が宛先であると判定したとき、無線ネットワーク処理部20内のIEEE1394バス/無線ネットワーク変換部25で、IEEE1394バス用のAV/Cコマンドに変換する処理を行う。このときの変換処理としては、例えば図41に示すようなブルートゥース規格で定められたヘッダ部分のデータを取り除いて、図9に示すようなAV/Cコマンドで規定されたヘッダ部分を付加する処理が行われる。このとき、AV/Cコマンドのデータに、IEEE1394バス上の宛先のデータを付加する。
そして、変換されたAV/Cコマンドのフォーマットとされたコマンドを、モニタ受像機1内のIEEE1394バス処理部10に送り、モニタ受像機1に接続されたバスラインから送出させる(ステップS3)。このバスラインに送出されたコマンドをビデオカセット記録再生装置2が受信したとき、ビデオカセット記録再生装置2では再生動作が開始され、このコマンドに対するレスポンスがバスラインを介してモニタ受像機1に返送される(ステップS4)。
このようにして、携帯電話端末5から無線伝送されたコマンドが、モニタ受像機1で中継されて、バスラインを介してビデオカセット記録再生装置2に伝送されることで、ビデオカセット記録再生装置2は無線信号として伝送されるコマンドを直接受信できなくても、携帯電話端末5がビデオカセット記録再生装置2のリモートコントロール装置として機能することになる。
ここで、このような無線信号として伝送されるコマンドを、バスラインに送出させるために、モニタ受像機1で必要な処理について説明する。まず、モニタ受像機1内のIEEE1394バス処理部10では、バスラインで接続された機器の情報を収集する処理を行う。図48は、この機器情報収集処理の例を示したフローチャートである。この機器情報収集処理は、例えばIEEE1394バス処理部10内のパネルコントローラ13の制御で行われて、パネルコントローラ13内のメモリなどに保持されるものである。
以下、機器情報収集処理手順について説明すると、パネルコントローラ13は、バスラインで接続された有線ネットワークにバスリセットが発生したか否か判断する(ステップS11)。このバスリセットは、バスラインに接続された機器構成に変化があったとき発生するものであり、バスリセットが発生すると、バスリセット識別用の信号がバスライン上で伝送される。バスリセットが発生するまで待機し、バスリセットが発生したと判断したとき、バスに接続された各機器が備えるサブユニットを調べる処理を行う(ステップS12)。このサブユニットの調査は、例えばモニタ受像機1から有線ネットワーク内の各機器に対して、サブユニット構成を問い合わせるコマンドを順に送って、そのレスポンスでサブユニット構成を判断する。
このサブユニット構成の判断に続いて、バスで接続されたそれぞれの機器がパススルーコマンドに対応しているか否か調べる処理を行う(ステップS13)。この処理が終了した後に、ネットワーク内の各機器のノードIDと、パススルーコマンド対応機器の持つサブユニットの対応表であるテーブルを作成し、その作成したテーブルのデータをパネルコントローラ13が持つメモリなどに記憶させておく(ステップS14)。この記憶されたテーブルのデータは、次にバスリセットが発生するまで保持され、バスリセット時にステップS11からステップS14の処理で更新される。
このようにして保持されたバス上の機器のコマンドの対応を示すテーブルのデータを使用して、無線信号でコマンドを受信したときには、そのコマンドをバスラインに送出させる処理が実行される。図49は、モニタ受像機1での処理例を示したフローチャートである。まず、無線ネットワーク処理部20のパネルサブユニット24は、AVCTPのプロトコルのコマンドが受信されたか否か判断し(ステップS21)、コマンドが受信されるまで待機する。このステップでパススルーコマンドが受信されたと判断したとき、そのコマンドが、モニタ受像機1での動作を制御するコマンドであるか否か判断する(ステップS22)。ここでの判断は、例えばコマンドの内容を判断して、表示状態を制御するコマンドであるとき、モニタ受像機1の動作を制御するコマンドであると判断する。この判断で、モニタ受像機1に対するコマンドであると判断したとき、無線ネットワーク処理部20のパネルサブユニット24が、直接的にモニタ受像機1内の各処理部を制御して、映像表示部32での表示状態などの受像機として必要な動作制御を行う(ステップS23)。
また、ステップS22で、モニタ受像機1に対するコマンドでないと判断したとき、無線ネットワーク処理部20内のIEEE1394バス/無線ネットワーク変換部25で、IEEE1394バス用のAV/Cコマンドに変換する処理を行う(ステップS24)。このとき、受信したコマンドで指示される動作が実行される機器が、バスラインに接続されているか否か、パネルコントローラ13に記憶されたテーブルのデータから判断し(ステップS25)、該当する機器がバスラインに接続されてない場合には、受信したコマンドに関する処理を終了する。
そして、パネルコントローラ13に記憶されたテーブルのデータから、対応した機器があると判断したときには、その対応した機器が1つか複数であるか判断する(ステップS26)。この判断で、対応した機器が1つであると判断したとき、該当する機器のノードIDをコマンドに付加する処理を変換部25で行い、その変換処理が行われたコマンドを、IEEE1394バス処理部10のポート部11から接続されたバスラインに送出させる(ステップS27)。
また、ステップS26の判断で、該当する機器が複数存在すると判断したとき、その複数の機器の中の1台の機器を特定させる機器特定処理を行い(ステップS28)、その特定された機器のノードIDをコマンドに付加する処理を変換部25で行い、その変換処理が行われたコマンドを、IEEE1394バス処理部10のポート部11から接続されたバスラインに送出させる(ステップS29)。
ステップS28での機器特定処理としては、例えばコマンドに対応した機器の中で、現在バスライン上にビデオデータ又はオーディオデータなどのストリームデータをアイソクロナスチャンネルで送出中の機器がある場合には、その機器をコマンドの届け先に設定させる。例えば、図1に示したネットワーク構成では、ビデオカセット記録再生装置2とハードディスク記録再生装置3とチューナ4の3台がストリームデータを送出できるが、例えばその内のビデオカセット記録再生装置2が再生動作を行って再生されたビデオデータをバス上に送出させていたとすると、このビデオカセット記録再生装置2をコマンドの届け先に設定させる。
また、ステップS28での機器特定処理として、例えば予め制御される機器を選択する処理が行われていた場合には、その予め選択された機器をコマンドの届け先に設定させるようにしても良い。例えば、図1に示したネットワーク構成では、再生動作を行う機器として、ビデオカセット記録再生装置2とハードディスク記録再生装置3の2台が存在するが、その内の1台をユーザ操作で予め選択しておくことで、再生動作に関するコマンドを受信したとき、選択された機器が届け先に設定される。
また、ステップS28での機器特定処理として、その他の処理を行うようにしても良い。例えば、バスライン上に接続されていた機器の内で、機器が電源オフなどで休止状態となって、バスラインと接続されるポート部がサスペンド状態となっている機器に関しては、候補機器から除外するようにしても良い。
このようにして、ブルートゥース規格の無線ネットワークで無線伝送されたコマンドを受信した機器で、その機器に接続された有線のバスライン用にコマンドを変換して、設定された宛先の機器に対してバスラインでコマンドを伝送するようにしたことで、IEEE1394方式のバスラインで接続されて、AV/Cコマンドに対応した機器であれば、無線ネットワークでの無線通信ができない機器であっても、ブルートゥース規格の無線信号に基づいて確実に制御できるようになる。特に、上述したパススルーコマンドでは、そのコマンドの最終的な受信先を指定するデータがないにも係わらず、コマンドの制御内容からコマンドの届け先が判断されて、該当する機器に確実に伝送されるので、無線信号を受信する機器が特定の1台の機器(上述した例ではモニタ受像機1)であっても、良好にバスラインで接続されたネットワーク内の各機器の制御ができる。
なお、ここまで説明した実施の形態では、有線のバスラインで接続されるネットワークとしてIEEE1394方式を適用し、無線ネットワークとしてブルートゥースを適用したが、他の同様な有線ネットワークと無線ネットワークを適用して制御コマンドなどを伝送する場合にも、本発明の処理が適用できることは勿論である。
また、有線のバスラインで接続された機器として、ビデオデータやオーディオデータを扱うAV機器としたが、その他の機器をバスラインに接続して、コマンドなどの伝送で制御する場合にも適用できるものである。
この場合、例えばバスラインにパーソナルコンピュータ装置のようなデータ処理装置を接続して、そのデータ処理装置に、上述したコマンドの中継処理を行う機能を実行するプログラムとしてのソフトウェアを実装して、そのソフトウェアの実行による演算処理で、データ処理装置が無線で受信したコマンドを、バスライン上の他の機器に伝送させるようにしても良い。また、このような処理を行うプログラムを記録媒体に記録させて、ユーザなどに配付するようにしても良い。
産業上の利用可能性
以上のように、本発明によると、無線ネットワーク側の機器から送出された機器制御コマンドを、有線ネットワーク内の特定の機器に対して伝送させることが可能になり、有線のバスラインで接続されて構成されるネットワーク内の機器が、無線によるコマンドで遠隔制御できるようになる。
この場合、受信したコマンドから、有線ネットワーク内でのコマンドの届け先の機器の判断処理は、コマンドで指示される内容に合致する機器を、有線ネットワークに接続された機器から探す処理であることで、コマンドで指示される内容の判断だけで、簡単に有線ネットワーク内でのコマンドの届け先などを判断できるようになる。
また、このようにコマンドの届け先を判断するとき、有線ネットワークに接続された機器の機能を予め調べて、その調べた機能に関するデータを保持するようにしたことで、コマンドで指示される内容に対応した機器の判断が簡単にできるようになる。
さらに、受信したコマンドから、有線ネットワーク内でのコマンドの届け先の機器の判断処理は、有線ネットワーク内でストリームデータの送出元となっている機器を、届け先の機器と判断する処理としたことで、有線ネットワーク内のバスラインにストリームデータを送出させている機器を直接制御できるようになる。
さらに、受信したコマンドから、有線ネットワーク内でのコマンドの届け先の機器の判断処理は、予め機器内に登録された機器を判断する処理としたことで、その登録された機器に確実にコマンドを伝送できるようになる。
さらに、無線信号として受信したコマンドを、有線ネットワーク用にデータ構成を変換して有線ネットワークに送出させることで、有線ネットワークと無線ネットワークでコマンド構成が異なる場合に対処できる。
さらに、無線ネットワークでの機器制御コマンドはAVCTPプロトコルのコマンドであり、有線ネットワークでの機器制御コマンドはIEEE1394方式のAV/Cコマンドとしたことによって、無線ネットワークとしてAVCTPプロトコルを使用したブルートゥースなどによるネットワークが使用でき、有線ネットワークとしてAV/Cコマンドを使用したIEEE1394方式などによるネットワークが使用でき、両ネットワーク間でのコマンドのやり取りが容易にできるようになる。
【図面の簡単な説明】
図1は、本発明の一実施の形態によるシステム構成例を示すブロック図である。
図2は、本発明の一実施の形態によるモニタ受像機の構成例を示すブロック図である。
図3は、本発明の一実施の形態による携帯電話端末の構成例を示すブロック図である。
図4は、本発明の一実施の形態による近距離無線通信部の構成例を示すブロック図である。
図5は、IEEE1394方式で規定されるフレーム構造の例を示す説明図である。
図6は、プラグ、プラグコントロールレジスタ、伝送チャンネルの関係の例を示す説明図である。
図7は、AV/Cコマンドのコマンドとレスポンスの関係の例を示す説明図である。
図8は、AV/Cコマンドのコマンドとレスポンスの関係の例を更に詳しく示す説明図である。
図9は、AV/Cコマンドのデータ構造の例を示す説明図である。
図10は、AV/Cコマンドの具体例を示す説明図であり、図10Aはコマンドタイプ(Cタイプ)及びレスポンスの例、図10Bはサブユニットタイプの例、図10Cはオペコード(オペレーションコード)の例を示した図である。
図11は、AV/Cコマンドのコマンドとレスポンスの具体例を示す説明図であり、図11Aはコマンドの例、図11Bはレスポンスの例である。
図12は、プロトコルスタックの例を示す説明図である。
図13は、無線伝送の階層構造の例を示す説明図である。
図14は、伝送周波数の設定例を示す説明図である。
図15は、周波数ホッピングの状態を示す説明図である。
図16は、シングルスロットパケットの配置例を時間軸で示す説明図である。
図17は、シングルスロットパケットとマルチスロットパケットが混在した例を時間軸で示す説明図である。
図18は、マスタとスレーブ間での伝送状態の例を示す説明図であり、図18Aはマスタからの送信を、図18Bはスレーブからの送信を示している。
図19は、ネットワーク構成の例を示す説明図であり、図19Aはマスタとスレーブが1台ずつの例、図19Bはスレーブが複数台の例、図19Cは複数のマスタを有する例である。
図20は、SCOリンクの通信例を示すタイミング図であり、図20Aはマスタからの送信を、図20Bはスレーブからの送信を示している。
図21は、非同期通信方式での通信例を示すタイミング図であり、図21Aはマスタからの送信を、図21Bはスレーブ1からの送信を、図21Cはスレーブ2からの送信を、図21Dはスレーブ3からの送信を示している。
図22は、アイソクロナス通信方式の通信例を示すタイミング図であり、図22Aはマスタからの送信を、図22Bはスレーブからの送信を示している。
図23は、同報通信方式の通信例を示すタイミング図であり、図23Aはマスタからの送信を、図23Bはスレーブ1での受信を、図23Cはスレーブ2での受信を、図23Dはスレーブ3での受信を示している。
図24は、SCOリンクとALCリンクを併用する場合の通信例を示すタイミング図であり、図24Aはマスタからの送信を、図24Bはスレーブ1からの送信を、図24Cはスレーブ2からの送信を、図24Dはスレーブ3からの送信を示している。
図25は、クロックデータの構成例を示す説明図である。
図26は、アドレスの構成例を示す説明図である。
図27は、周波数ホッピングパターンの生成処理例を示す構成図である。
図28は、パケットフォーマットの例を示す説明図である。
図29は、アクセスコードの構成例を示す説明図である。
図30は、パケットヘッダの構成例を示す説明図である。
図31は、ペイロードの構成例を示す説明図である。
図32は、シングルスロットパケットのペイロードヘッダの構成例を示す説明図である。
図33は、マルチスロットパケットのペイロードヘッダの構成例を示す説明図である。
図34は、FHSパケットのペイロードの構成例を示す説明図である。
図35は、機器の状態遷移例を示す説明図である。
図36は、問い合わせの通信例を示す説明図であり、図36AはIQパケットの送信を、図36BはFHSパケットの送信を示している。
図37は、問い合わせの処理例を示すタイミング図であり、図37Aはマスタからの送信を、図37Bはスレーブでの送信及び受信を示している。
図38は、呼び出しの通信例を示す説明図であり、図38AはマスタがIDパケットをスレーブに送信する例を、図38BはマスタがFHSパケットをスレーブに送信する例を示している。
図39は、呼び出しの処理例を示すタイミング図であり、図39Aはマスタからの送信を、図39Bはスレーブからの送信を示している。
図40は、AVDCPにおける階層構造の例を示す説明図である。
図41は、AVDCPのデータ伝送時のパケット構成の例を示す説明図であり、図41Aはパケット全体の例を、図41Bはペイロードの例を、図41CはAVCTPメッセージの例を示している。
図42は、AVDCPでのコネクションの確立とコマンド,レスポンスの伝送例を示す説明図である。
図43は、AVDCPでのリリースコネクションの例を示す説明図である。
図44は、AVDCPでのデータ構造例を示す説明図である。
図45は、パススルーコマンドのフォーマット例を示す説明図である。
図46は、パススルーコマンドのオペレーションIDの例を示す説明図である。
図47は、本発明の一実施の形態によるコマンドの伝送例を示す説明図である。
図48は、本発明の一実施の形態による機器情報収集処理例を示すフローチャートである。
図49は、本発明の一実施の形態によるコマンドの宛先判定処理例を示すフローチャートである。
引用符号の説明
1‥‥‥ モニタ受像機
2‥‥‥ビデオカセット記録再生装置
3‥‥‥ハードディスク記録再生装置
4‥‥‥チューナ
5‥‥‥携帯電話端末
6‥‥‥データ端末
10‥‥‥IEEE1394バス処理部
11‥‥‥バスポート部
12‥‥‥バスインターフェースブロック
13‥‥‥パネルコントローラー
14‥‥‥パネルサブユニット
15‥‥‥モニタサブユニット
20‥‥‥無線ネットワーク処理部
21‥‥‥アンテナ
22‥‥‥近距離無線通信部
23‥‥‥無線ネットワークインターフェイス部
24‥‥‥パネルサブユニット
25‥‥‥IEEE1394バス/無線ネットワーク変換部
31‥‥‥映像データ受信ブロック
32‥‥‥映像表示部
51‥‥‥アンテナ
52‥‥‥デュプレクサ
53‥‥‥受信回路
54‥‥‥デジタルシグナルプロセッサ(DSP)
55,56‥‥‥スピーカ
57‥‥‥マイクロホン
58‥‥‥送信回路
59‥‥‥制御部
59a‥‥‥ROM
59b‥‥‥RAM
59c‥‥‥メモリカード
60‥‥‥操作部
61‥‥‥表示部
62‥‥‥近距離無線通信部
63‥‥‥アンテナ
80‥‥‥機能処理ブロック
90‥‥‥近距離無線通信部
91‥‥‥アンテナ
92‥‥‥送受信処理部
93‥‥‥データ処理部
94‥‥‥インターフェース部
95‥‥‥コントローラー
本発明は、無線ネットワークと有線ネットワークの双方のネットワークを使用したデータ伝送方法及びデータ伝送装置、並びにこれらのデータ伝送に適用されるプログラム及びそのプログラムが格納された記録媒体に関する。
背景技術
従来、IEEE(The Institute of Electrical and Electronics Engineers)1394方式として規格化された有線のシリアルデータバスにより、複数台の機器を接続させた有線ネットワークを構成させて、データ伝送を行うことが提案されている。例えば、IEEE1394方式のバスラインに接続可能なオーディオ機器やビデオ機器(以下これらの機器をAV機器と称する)が開発され、これらのAV機器でネットワークを構成させることで、オーディオデータやビデオデータを機器間で伝送させることができる。
このネットワークにおいては、所定のコマンド(AV/C Command Transaction Set:以下AV/Cコマンドと称する)を用いることにより、ネットワークに接続されているAV機器を、他の機器から制御することが可能である。IEEE1394方式の詳細及びAV/Cコマンドの詳細については、1394 Trade Associationで公開しているAV/C Digital Interface Command Set General Specificationに記載されている。
一方、近年ブルートゥース(Bluetooth:商標)と称される規格の無線伝送システムを使用して無線ネットワーク(ワイヤレスネットワーク)を組むことが提案され、実用化されつつある。この無線ネットワークは、複数台の機器間で、電話通信用音声データ,ファクシミリ用画像データ,コンピュータ用データなどの伝送を、2.4GHzの周波数帯域を使用して無線伝送するもので、機器間の無線伝送距離は、数mから最大でも100m程度までの比較的近距離のネットワークを想定している。伝送を行うデータの種別毎に、そのデータ伝送をどのように行うかを規定したプロファイルが定められている。
ブルートゥースの通信方式の詳細については、後述する実施の形態の中でも説明するが、規格を定めた標準化団体であるBluetooth SIGが公開している。このブルートゥースと称される無線伝送システムの場合にも、Audio/Video Control Transport Protocol(以下AVCTPと称する)と称されるプロトコルで規定されたコマンドの伝送で、ネットワーク内の他のAV機器を制御することができる。
ところで、上述したIEEE1394方式などの有線のバスラインで接続されたネットワークと、ブルートゥースなどの無線伝送を行うネットワークとは、それぞれ個別に構築されているため、例えばIEEE1394方式に対応した機器と、ブルートゥースに対応した機器との間で、コマンドを伝送するようなことは従来不可能であった。即ち、それぞれのネットワーク毎に、規定されたコマンドの構成は異なり、例えば無線ネットワーク側で受信したコマンドを、そのまま有線のバスラインに送出させることは事実上不可能である。
また、無線ネットワークと有線ネットワークとは、基本的に個別に構築されるネットワークであるため、それぞれのネットワーク毎にデータの送出元と届け先を設定させる管理処理が必要であり、単純にコマンド構成の変換を行うだけで、2つのネットワーク間でデータの受け渡しができるものではない。
なお、ここでは有線のバスラインで接続されるネットワークとしてIEEE1394方式を例とし、無線ネットワークとしてブルートゥースを例にして説明したが、他の同様な有線ネットワークと無線ネットワークを使用する場合にも、同様の問題がある。
発明の開示
本発明は、無線ネットワーク内で生成されたコマンドを、有線ネットワークに接続された機器に良好に伝送できるようにすることを目的とする。
第1の発明は、所定の有線ネットワークに接続された第1の機器に対して、所定の無線ネットワークを介して第2の機器から機器制御コマンドを伝送したとき、第1の機器は、受信した機器制御コマンドの判定を行い、その判定で有線ネットワークに接続された所定の機器を制御するコマンドであると判断したとき、該当するコマンドを有線ネットワークを介して所定の機器に伝送するようにしたデータ伝送方法としたものである。
このようにしたことによって、無線ネットワーク側の機器から送出された機器制御コマンドを、有線ネットワーク内の特定の機器に対して伝送させることが可能になり、有線のバスラインで接続されて構成されるネットワーク内の機器が、無線によるコマンドで遠隔制御できるようになる。
第2の発明は、第1の発明のデータ伝送方法において、第1の機器での、受信したコマンドから所定の機器の判断処理は、コマンドで指示される内容に合致する機器を、有線ネットワークに接続された機器から探す処理であるものである。
このようにしたことによって、コマンドで指示される内容の判断だけで、簡単に有線ネットワーク内でのコマンドの届け先などを判断できるようになる。
第3の発明は、第2の発明のデータ伝送方法において、第1の機器は、有線ネットワークに接続された機器の機能を予め調べて、その調べた機能に関するデータを保持するようにしたものである。
このようにしたことによって、コマンドで指示される内容に対応した機器の判断が簡単にできるようになる。
第4の発明は、第1の発明のデータ伝送方法において、第1の機器での、受信したコマンドから所定の機器の判断処理は、有線ネットワーク内でストリームデータの送出元となっている機器を、所定の機器と判断する処理としたものである。
このようにしたことによって、有線ネットワーク内のバスラインにストリームデータを送出させている機器を直接制御できるようになる。
第5の発明は、第1の発明のデータ伝送方法において、第1の機器での、受信したコマンドから所定の機器の判断処理は、予め第1の機器に登録された機器を、所定の機器と判断する処理としたものである。
このようにしたことによって、登録された機器に確実にコマンドを伝送できるようになる。
第6の発明は、第1の発明のデータ伝送方法において、第1の機器内で、無線信号として受信したコマンドを、有線ネットワーク用にデータ構成を変換して有線ネットワークに送出させるようにしたものである。
このようにしたことによって、有線ネットワークと無線ネットワークでコマンド構成が異なる場合に容易に対処できるようになる。
第7の発明は、第1の発明のデータ伝送方法において、第2の機器からの機器制御コマンドは、AVCTPプロトコルのコマンドであり、また所定の機器を制御するコマンドは、IEEE1394方式のAV/Cコマンドとしたものである。
このようにしたことによって、無線ネットワークとしてAVCTPプロトコルを使用したブルートゥースなどによるネットワークが使用でき、有線ネットワークとしてAV/Cコマンドを使用したIEEE1394方式などによるネットワークが使用でき、両ネットワーク間でのコマンドのやり取りが容易にできるようになる。
第8の発明は、所定の有線ネットワークを構成するバスラインが接続されて、有線ネットワーク内の他の機器と双方向にデータ通信が可能な第1の通信手段と、所定の無線ネットワークを構成する他の機器と無線通信を行って双方向にデータ通信が可能な第2の通信手段と、第2の通信手段で所定の機器制御コマンドを受信したとき、その受信した機器制御コマンドのコマンドの届け先を判断し、判断した届け先が有線ネットワークで接続された機器であるとき、第1の通信手段から機器制御コマンドを送出させる制御手段とを備えたデータ伝送装置としたものである。
このようにしたことによって、無線ネットワーク側の機器から送出された機器制御コマンドを、有線ネットワーク内の特定の機器に対して伝送させることが可能になり、有線のバスラインで接続されて構成されるネットワーク内の機器が、無線によるコマンドで遠隔制御できるようになる。
第9の発明は、第8の発明のデータ伝送装置において、制御手段での、機器制御コマンドの届け先判断処理は、コマンドで指示される内容に合致する機器を、有線ネットワークに接続された機器から探す処理としたものである。
このようにしたことによって、データ伝送装置で、コマンドで指示される内容の判断を行うだけで、簡単に有線ネットワーク内でのコマンドの届け先などを判断できるようになる。
第10の発明は、第9の発明のデータ伝送装置において、制御手段は、有線ネットワークに接続された機器の機能を予め調べ、その調べた機能に関するデータを保持し、この保持されたデータを利用してコマンドで指示される内容と合致する機器を探すようにしたものである。
このようにしたことによって、コマンドで指示される内容に対応した機器の判断が簡単にできるようになる。
第11の発明は、第8の発明のデータ伝送装置において、制御手段での、機器制御コマンドの届け先判断処理は、有線ネットワーク内でストリームデータの送出元となっている機器を、届け先と判断する処理としたものである。
このようにしたことによって、有線ネットワーク内のバスラインにストリームデータを送出させている機器を直接制御できるようになる。
第12の発明は、第8の発明のデータ伝送装置において、制御手段での、機器制御コマンドの届け先判断処理は、予め登録された機器を届け先と判断する処理としたものである。
このようにしたことによって、予め登録された機器に確実にコマンドを伝送できるようになる。
第13の発明は、第8の発明のデータ伝送装置において、第2の通信手段が受信したコマンドを、第1の通信手段で送出させるコマンドに変換する変換手段を備えたものである。
このようにしたことによって、有線ネットワークと無線ネットワークでコマンド構成が異なる場合に容易に対処できるようになる。
第14の発明は、第8の発明のデータ伝送装置において、第2の通信手段による所定の機器制御コマンドはAVCTPプロトコルのコマンドであり、また第1の通信手段による機器制御コマンドはIEEE1394方式のAV/Cコマンドとしたものである。
このようにしたことによって、無線ネットワークとしてAVCTPプロトコルを使用したブルートゥースなどによるネットワークが使用でき、有線ネットワークとしてAV/Cコマンドを使用したIEEE1394方式などによるネットワークが使用でき、両ネットワーク間でのコマンドのやり取りが容易にできるようになる。
第15の発明は、所定の有線ネットワークに接続された第1の機器に対して、所定の無線ネットワークを介して第2の機器から機器制御コマンドを伝送したとき、第1の機器は、受信した機器制御コマンドの判定を行い、その判定で有線ネットワークに接続された所定の機器を制御するコマンドであると判断したとき、該当するコマンドを有線ネットワークを介して所定の機器に伝送する処理を実行させるプログラムが記録された記録媒体としたものである。
この記録媒体に記録されたプログラムを伝送装置などに実装させて実行させることで、無線ネットワーク側の機器から送出された機器制御コマンドを、有線ネットワーク内の特定の機器に対して伝送させることが可能になり、有線のバスラインで接続されて構成されるネットワーク内の機器が、無線によるコマンドで遠隔制御できるようになる。
第16の発明は、所定の有線ネットワークに接続された第1の機器に対して、所定の無線ネットワークを介して第2の機器から機器制御コマンドを伝送したとき、第1の機器は、受信した機器制御コマンドの判定を行い、その判定で有線ネットワークに接続された所定の機器を制御するコマンドであると判断したとき、該当するコマンドを有線ネットワークを介して所定の機器に伝送する処理を実行させるプログラムとしたものである。
このプログラムを伝送装置などに実装させて実行させることで、無線ネットワーク側の機器から送出された機器制御コマンドを、有線ネットワーク内の特定の機器に対して伝送させることが可能になり、有線のバスラインで接続されて構成されるネットワーク内の機器が、無線によるコマンドで遠隔制御できるようになる。
発明を実施するための最良の形態
以下、本発明の一実施の形態を、添付図面を参照して説明する。
本例においては、IEEE1394方式のバスラインで接続された有線ネットワークで複数台のAV機器が接続してあり、その有線ネットワーク内の少なくとも1台の機器は、ブルートゥースと称される無線ネットワーク内の機器を兼ねるようにしてある。
図1は、本例のネットワーク構成の一例を示した図である。この例では、有線ネットワークとして、モニタ受像機1と、ビデオカセット記録再生装置2と、ハードディスク記録再生装置3と、チューナ4などのAV機器を、IEEE1394方式のバスラインで接続させてあり、それぞれの機器間でビデオデータ,オーディオデータや制御コマンドなどの伝送が行えるようにしてある。
そして本例のモニタ受像機1は、ブルートゥースと称される無線ネットワーク内の機器としても機能するように、無線信号の送受信部を備える。この例では、無線ネットワークとしてモニタ受像機1と携帯電話端末5と何らかのデータ端末6の3台の機器で構成されるようにしてある。この無線ネットワーク内でも、制御コマンドや各種データの伝送が無線で行えるようにしてある。本例の携帯電話端末5は、AV機器を制御するリモートコントロール装置としても機能するようにしてあり、携帯電話端末5に配置された所定のキーの操作で、AV機器を遠隔制御するためのリモートコントロール信号としてのコマンドを、無線ネットワークを介してモニタ受像機1に対して無線送信するようにしてある。
この携帯電話端末5に配置された所定のキーの操作で、AV機器を遠隔制御するコマンドが送信されたとき、このコマンドを受信したモニタ受像機1では、必要によりバスラインを介して他のAV機器にコマンドを伝送できるようにしてある。このモニタ受像機1を介したコマンドの中継処理の詳細については後述する。
図2は、モニタ受像機1の構成例を示す図である。本例のモニタ受像機1は、バスラインで接続されたビデオ機器から供給される映像データを受信処理及び受像処理して、この受像機が備える表示ディスプレイに映像を表示させるようにしたものである。この処理を行うために、受信処理を行う映像データ受信ブロック31と、この受信ブロック31で受信処理された映像データをディスプレイに表示させる映像表示部32とを備える。
そして、IEEE1394方式のバスラインを介してデータ伝送を行うためのIEEE1394バス処理部10と、無線ネットワーク用の無線伝送を行うための無線ネットワーク処理部20とを備える。
IEEE1394バス処理部10の構成としては、IEEE1394方式のバスラインを構成する信号線が1つ又は複数接続されるポート部11と、バスラインに伝送されるデータと受像機1の内部で処理するデータとの変換処理を行うインターフェースブロック12とを備える。バスラインを介して受信した映像データについては、インターフェースブロック12を介して映像データ受信ブロック31に供給し、表示部32で表示処理を実行させる。また、バスラインを介して制御コマンドを受信したときには、インターフェースブロック12に接続されたパネルコントローラ13に供給し、このパネルコントローラ13が、パネルサブユニット14及びモニタサブユニット15に受信したコマンドに基づいた指示を送って、受信ブロック31及び表示部32での映像表示に関連した各種処理を実行させる。
なお、IEEE1394バス処理部10内のパネルコントローラ13は、バスライン上の伝送の制御を行うようにしてある。この制御に必要なデータについてもコントローラ13が保持するようにしてある。具体的には、例えばバスラインで接続された有線ネットワーク上の機器が有するサブユニット構成をコントローラ13が収集して、コントローラ13内のメモリに保持させる。また、有線ネットワーク内の各機器が、パススルーコマンドと称される制御コマンドに対応しているか否かの情報についても、コントローラ13が収集して、コントローラ13内のメモリに保持させる。
無線ネットワーク処理部20の構成としては、アンテナ21が接続された近距離無線通信部22で、無線ネットワーク内の他の端末に対して送信する無線信号を生成させる送信処理と、無線ネットワーク内の他の端末から無線伝送された信号を受信する受信処理とが行われる。この無線通信部22で受信した信号は、無線ネットワークインターフェース部23で、受像機1の内部で処理するデータに変換処理が行われて、パネルサブユニット24に供給される。また、パネルサブユニット24から供給されるデータを、無線ネットワークインターフェース部23で、無線送信させるデータ構成に変換し、その変換されたデータを無線通信部22に供給して、無線送信させる構成としてある。
パネルサブユニット24は、IEEE1394バス処理部10側に設けたモニタサブユニット15に対して指示を行って、無線信号で受信したコマンドに基づいて、映像表示部32での映像の表示などの受像機の動作制御が行えるようにしてある。
また本例の無線ネットワーク処理部20内には、IEEE1394バス/無線ネットワーク変換部25が設けてあり、無線ネットワーク処理部20で無線信号として受信したコマンドが、この受像機とバスラインを介して接続された有線ネットワーク内の他の機器に伝送する必要のあるコマンドであるとき、この変換部25でコマンドをIEEE1394方式のバスラインで伝送するデータ構成のコマンドに変換し、この変換されたコマンドを、IEEE1394バス処理部10側のパネルコントローラ13に伝送する。ここでの変換処理としては、例えばブルートゥース用のフォーマットのコマンドデータのヘッダ部分を取り除き、バスライン上での宛先のデータなどを付加して、IEEE1394方式のバスラインで伝送するデータ構成とする。
変換されたコマンドのバスライン上の宛先については、変換部25が予め設定された処理で判断するようにしてある。このときの処理としては、例えばIEEE1394バス処理部10内のインターフェースブロック12から、バスラインでアイソクロナスチャンネルを使用して伝送中のストリームデータの送出元の機器(ソース機器)の情報を変換部25がもらい、そのソース機器をコマンドの宛先とすることができる。
また、パネルコントローラ13が収集して記憶した情報に基づいて、変換部25が変換されたコマンドのバスライン上の宛先を判断することもできる。例えば、コマンドで指示された内容が実行可能なサブユニットを備えた機器を、パネルコントローラ13からの情報に基づいて変換部25が判断し、その判断した機器をコマンドの宛先とすることができる。
また、ユーザ操作などに基づいてパネルコントローラ13に予め登録された機器を、変換部25が変換されたコマンドのバスライン上の宛先とすることもできる。この場合には、例えばコマンドの種類毎に宛先を登録するようにして、受信したコマンド毎に適切な宛先を設定するようにしても良い。
図3は、携帯電話端末5の構成例を示す図である。本例の携帯電話端末5は、アンテナ51を備えて、アンテナ51がデュプレクサ52を介して受信回路53及び送信回路58に接続してあり、アンテナ51で受けた信号の受信回路53での受信処理が行えると共に、送信回路58で送信処理された信号をアンテナ51から無線送信させることができる。受信回路53及び送信回路58は、デジタルシグナルプロセッサ(以下DSPと称する)54に接続してある。DSP54では、受信信号の復調や、その復調された信号から音声データなどの各種データを抽出する受信処理や、音声データなどの送信するデータを送信用のデータ構成とする処理や、送信用に変調する処理などの送信処理などが行われる。
DSP54には、通話用のスピーカ55が接続してあり、音声データを受信したとき、その受信して得た音声データをDSP54内でアナログ音声信号に変換して、そのアナログ音声信号をスピーカ55から出力させるようにしてある。また、通話用のマイクロホン57がDSP54に接続してあり、このマイクロホン57が出力する音声信号を、DSP54内でデジタル音声データに変換して、送信処理できる。また、通話用のスピーカ55とは別に、呼び出し音などを鳴らせるためのスピーカ56を備える。
この携帯電話端末5内での通信処理は、制御部59の制御により実行されるようにしてある。この制御部59には、携帯電話端末としての動作に必要なプログラムなどのデータが記憶されたROM59aと、入力したデータや、ダウンロードしたデータの記憶に使用されるRAM59bが接続してある。また、RAM59bには、近距離通信に必要な設定データを記憶するエリアが用意されて、例えば端末の近距離通信のために登録されたデータなどを記憶するようにしてある。この近距離通信のために登録されたデータの詳細については後述する。
また本例の携帯電話端末5は、メモリカード59cを装着することができる構成としてあり、制御部59の制御で、装着されたメモリカード59cに、無線電話回線又は近距離無線通信により得たデータを記憶させることができるようにしてある。例えば、無線電話回線を介してオーディオデータをダウンロードしてメモリカード59cに記憶させたり、近距離通信の設定に必要なデータをメモリカード59cに記憶させることが可能である。
また、各種文字,数字,図形などを表示させる表示部61を備えて、制御部59の制御で動作状況に応じた表示が行われる。本例の場合には、表示部61としてカラー表示が可能な表示パネルが使用される。ダイヤルキーや各種機能キーなどで構成される操作部60の操作情報についても、制御部59に供給されて、制御部59が操作に応じた動作制御を行うようにしてある。操作部60として用意されたキーとしては、本例の場合には例えばAV機器の動作指示を行うキーがある。また、ダイヤルキーなどの端末5が備えるキーを、モードの設定などでAV機器の動作指示用のキーとして割当てるようにしても良い。
そして本例の携帯電話端末5は、近距離無線通信部62を備えて、この近距離無線通信部62を使用して、近距離無線伝送方式による近距離無線通信ができるようにしてある。近距離無線通信部62には、上述した無線電話通信用のアンテナ51とは別のアンテナ63が接続してあり、最大でも100m程度までの近距離で、同じ規格の近距離無線通信部を備えた機器と直接的に無線通信を行うようにしてある。この近距離無線通信部62でのデータ伝送についても、制御部59が制御するようにしてあり、必要によりDSP54側と近距離無線通信部62との間でデータのやり取りが行われる。
図4は、モニタ受像機1,携帯電話機5が備える近距離無線通信部22,62の構成例を示した図である。アンテナ91が接続された送受信処理部92では、高周波信号処理を行って、無線送信処理及び無線受信処理を実行するようにしてある。送受信処理部92で送信する信号及び受信する信号は、2.4GHz帯に1MHz間隔で設定したチャンネルで伝送するようにしてある。但し、各チャンネルの信号は、後述するスロット間隔で伝送周波数を変化させる周波数ホッピングと称される処理を行うようにしてある。1スロット毎に周波数ホッピングを行うものとすると、1スロットは625μ秒であるので、1秒間に1600回周波数が切換えられることになり、他の無線通信との干渉が防止される。無線伝送信号の変調方式としては、GFSK(Gaussian filterd FSK)と称される変調方式が適用される。この変調方式は、周波数伝達特性がガウス分布の低域通過フィルタで帯域制限した周波数偏移変調方式である。
送受信処理部92で受信して得た信号及び送受信処理部92で送信するための信号は、データ処理部93でベースバンド処理が行われる。ブルートゥースの規格では、基本的に送信と受信を交互に行うTDD(Time Division Duplex)方式を適用してあり、データ処理部93では交互に送信スロットの処理と受信スロットの処理を行うようにしてある。
データ処理部93には、インターフェース部94を介して機能処理ブロック80が接続されて、受信したデータを機能処理ブロック80に供給したり、又は機能処理ブロック80からの送出されるデータをデータ処理部93で送信スロットとする処理が行われる。送受信処理部92とデータ処理部93とインターフェース部94での伝送のための処理は、コントローラ95の制御により実行される。このコントローラ95は、例えば各機器に内蔵された中央制御ユニットが使用できる。中央制御ユニットとは別に、近距離無線通信用に用意された専用のコントローラを使用しても良い。
送受信処理部92,データ処理部93,インターフェース部94がブルートゥースで通信を行う近距離無線通信部90になる。但し、図2に示したモニタ受像機1の構成では、インターフェース部は無線通信部とは別の回路として示してある。
そして、この近距離無線通信部90に接続された機能処理ブロック80が、機器として実際に機能を実行する部分に相当する。例えば、モニタ受像機1の場合には、映像を表示させたり、無線ネットワークと、IEEE394方式のバスラインで接続されたネットワークとの間で、データの受け渡しの処理を行う部分に相当する。また、携帯電話端末5の場合には、無線電話回線で通信を行う処理を実行したり、キー操作による指令や電話回線を介して受信した指令に基づいて、近距離無線通信部で送信するデータ(本例の場合のコマンドなど)を生成させる処理を行う部分に相当する。
なお、近距離無線通信部90は、モニタ受像機1や携帯電話端末5などの機器に内蔵させる場合の他に、装置本体とは別体の装置で構成して、外付けで接続させるようにしても良い。
次に、本例のネットワークでデータ伝送が行われる構成について説明する。まず、モニタ受像機1を介して有線で接続されたネットワークである、IEEE1394方式のバスラインでデータ伝送が行われる方式を、図5〜図11を参照して説明する。
図5は、IEEE1394で接続された機器のデータ伝送のサイクル構造を示す図である。IEEE1394では、データは、パケットに分割され、125μSの長さのサイクルを基準として時分割にて伝送される。このサイクルは、サイクルマスタ機能を有するノード(IEEE1394方式ではバスに接続された機器はノードとも称される)から供給されるサイクルスタート信号によって作り出される。
アイソクロナスパケットは、全てのサイクルの先頭から伝送に必要な帯域(時間単位であるが帯域と呼ばれる)を確保する。このため、アイソクロナス伝送では、データの一定時間内の伝送が保証される。ただし、受信側からの確認(アクノリッジメント:ACK)の信号の伝送は行われず、伝送エラーが発生した場合は、保護する仕組みが無く、データは失われる。各サイクルのアイソクロナス伝送に使用されていない時間に、アービトレーションの結果、バスを確保したノードが、アシンクロナスパケットを送出するアシンクロナス伝送では、アクノリッジ、およびリトライを用いることにより、確実な伝送は保証されるが、伝送のタイミングは一定とはならない。
アイソクロナス伝送では、例えばビデオデータ,オーディオデータなどのストリームデータの伝送が行われる。アシンクロナス伝送では、例えば制御コマンドなどの伝送が行われる。
所定のノードがアイソクロナス伝送を行う為には、そのノードがアイソクロナス機能に対応していなければならない。また、アイソクロナス機能に対応したノードの少なくとも1つは、サイクルマスタ機能を有していなければならない。更に、IEEE1394シリアスバスに接続されたノードの中の少なくとも1つは、アイソクロナスリソースマネージャの機能を有していなければならない。
IEEE1394シリアスバスに接続されたノードは、データ入出力部が備えるレジスタの所定アドレスに、IEC1883で規定されるPCR(Plug Control Register)を有し、プラグを仮想的に構成するようにしてある。これは、論理的にアナログインターフェースに類似した信号経路を形成するために、プラグという概念を実体化したものである。PCRは、出力プラグを表すoPCR(output Plug Control Register)、入力プラグを表すiPCR(input Plug Control Register)を有する。また、PCRは、各機器固有の出力プラグまたは入力プラグの情報を示すレジスタoMPR(output Master Plug Register)とiMPR(input Master Plug Register)を有する。各機器は、oMPRおよびiMPRをそれぞれ複数持つことはないが、個々のプラグに対応したoPCRおよびiPCRを、機器の能力によって複数持つことが可能である。アイソクロナスデータの流れは、これらのプラグに対応するレジスタを操作することによって制御される。
図6はプラグ、プラグコントロールレジスタ、およびアイソクロナスチャンネルの関係を表す図である。ここではIEEE1394方式のバスに接続された機器を、AVデバイスa,b,cとして示してある。AVデバイスcのoMPRにより伝送速度とoPCRの数が規定されたoPCR〔0〕〜oPCR〔2〕のうち、oPCR〔1〕によりチャンネルが指定されたアイソクロナスデータは、IEEE1394シリアスバスのチャンネル#1に送出される。AVデバイスaのiMPRにより伝送速度とiPCRの数が規定されたiPCR〔0〕とiPCR〔1〕のうち、入力チャンネル#1が伝送速度とiPCR〔0〕により、AVデバイスaは、IEEE1394シリアスバスのチャンネル#1に送出されたアイソクロナスデータを読み込む。同様に、AVデバイスbは、oPCR〔0〕で指定されたチャンネル#2に、アイソクロナスデータを送出し、AVデバイスaは、iPRC〔1〕にて指定されたチャンネル#2からそのアイソクロナスデータを読み込む。
このようにして、IEEE1394シリアスバスによって接続されている機器間でデータ伝送が行われるが、本例のシステムでは、このIEEE1394シリアスバスを介して接続された機器のコントロールのためのコマンドとして規定されたAV/Cコマンドセットを利用して、各機器のコントロールや状態の判断などが行えるようにしてある。
AV/Cコマンドの場合には、例えば図7に示すようにコマンドとそのコマンドに対するレスポンスがバスライン上で伝送される。ここでは制御する側がコントローラで、制御される側がターゲットである。コマンドの送信またはレスポンスは、IEEE1394のアシンクロナス通信のライトトランザクションを用いて、ノード間で行われる。データを受け取ったターゲットは、受信確認のために、アクノリッジ(ACK)をコントローラに返す。
図8は、図7に示したコマンドとレスポンスの関係をさらに詳しく説明するための図である。IEEE1394バスを介してノードAとノードBが接続されている。ノードAがコントローラで、ノードBがターゲットである。ノードA、ノードBともに、コマンドレジスタ71,73およびレスポンスレジスタ72,74がそれぞれ、512バイトずつ準備されている。図8に示すように、コントローラがターゲットのコマンドレジスタ73にコマンドメッセージを書き込むことにより命令を伝える。また逆に、ターゲットがコントローラのレスポンスレジスタ72にレスポンスメッセージを書き込むことにより応答を伝えている。以上2つのメッセージに対して、制御情報のやり取りを行う。FCPで送られるコマンドセットの種類は、後述する図9のデータフィールド中のCTSに記される。
図9は、AV/Cコマンドのアシンクロナス転送モードで伝送されるパケットのデータ構造を示している。AV/Cコマンドセットは、AV機器を制御するためのコマンドセットで、CTS(コマンドセットのID)=“0000”である。AV/Cコマンドフレームおよびレスポンスフレームが、ノード間でやり取りされる。バスおよびAV機器に負担をかけないために、コマンドに対するレスポンスは、100ms以内に行うことになっている。図9に示すように、アシンクロナスパケットのデータは、水平方向32ビット(=1クワッドレット)で構成されている。図中上段はパケットのヘッダ部分を示しており、図中下段はデータブロックを示している。ディスティネーションIDは、宛先を示している。
CTSはコマンドセットのIDを示しており、AV/CコマンドセットではCTS=“0000”である。Cタイプ/レスポンスのフィールドは、パケットがコマンドの場合はコマンドの機能分類を示し、パケットがレスポンスの場合はコマンドの処理結果を示す。コマンドは大きく分けて、(1)機能を外部から制御するコマンド(CONTROL)、(2)外部から状態を問い合わせるコマンド(STATUS)、(3)制御コマンドのサポートの有無を外部から問い合わせるコマンド(GENERAL INQUIRY(オペコードのサポートの有無)およびSPECIFIC INQUIRY(オペコード及びオペランドのサポートの有無))、(4)状態の変化を外部に知らせるよう要求するコマンド(NOTIFY)の4種類が定義されている。
レスポンスはコマンドの種類に応じて返される。コントロール(CONTROL)コマンドに対するレスポンスには、「実装されていない」(NOT IMPLEMENTED)、「受け入れる」(ACCEPTED)、「拒絶」(REJECTED)、および「暫定」(INTERIM)がある。ステータス(STATUS)コマンドに対するレスポンスには、「実装されていない」(NOT IMPLEMENTED)、「拒絶」(REJECTED)、「移行中」(IN TRANSITION)、および「安定」(STABLE)がある。コマンドのサポートの有無を外部から問い合わせるコマンド(GENERAL INQUIRYおよびSPECIFIC INQUIRY)に対するレスポンスには、「実装されている」(IMPLEMENTED)、および「実装されていない」(NOT IMPLEMENTED)がある。状態の変化を外部に知らせるよう要求するコマンド(NOTIFY)に対するレスポンスには、「実装されていない」(NOT IMPLEMENTED)、「拒絶」(REJECTED)、「暫定」(INTERIM)および「変化した」(CHANGED)がある。
サブユニットタイプは、機器内の機能を特定するために設けられており、例えば、テープレコーダ/プレーヤ,チューナ等が割り当てられる。このサブユニットタイプには、機器に対応した機能の他に、他の機器に情報を公開するサブユニットであるBBS(ブリテンボードサブユニット)についても割り当てがある。同じ種類のサブユニットが複数存在する場合の判別を行うために、判別番号としてサブユニットIDでアドレッシングを行う。オペレーションのコードであるオペコードはコマンドを表しており、オペランドはコマンドのパラメータを表している。必要に応じて付加されるフィールドも用意されている。オペランドの後には、0データなどが必要に応じて付加される。データCRC(Cyclic Reduncy Check)はデータ伝送時のエラーチェックに使われる。
図10は、AV/Cコマンドの具体例を示している。図10Aは、コマンドタイプ/レスポンスの具体例を示している。図中上段がコマンドを表しており、図中下段がレスポンスを表している。“0000”にはコントロール(CONTROL)、“0001”にはステータス(STATUS)、“0010”にはスペシフィックインクワイリ(SPECIFIC INQUIRY)、“0011”にはノティファイ(NOTIFY)、“0100”にはジェネラルインクワイリ(GENERAL INQUIRY)が割り当てられている。“0101乃至0111”は将来の仕様のために予約確保されている。また、“1000”には実装なし(NOT INPLEMENTED)、“1001”には受け入れ(ACCEPTED)、“1010”には拒絶(REJECTED)、“1011”には移行中(IN TRANSITION)、“1100”には実装あり(IMPLEMENTED/STABLE)、“1101”には状態変化(CHANGED)、“1111”には暫定応答(INTERIM)が割り当てられている。“1110”は将来の仕様のために予約確保されている。
図10Bは、サブユニットタイプの具体例を示している。“00000”にはビデオモニタ、“00011”にはディスクレコーダ/プレーヤ、“00100”にはテープレコーダ/プレーヤ、“00101”にはチューナ、“00111”にはビデオカメラ、“11100”には製造メーカ特有のサブユニットタイプ、“11110”には特定のサブユニットタイプが割り当てられている。尚、“11111”にはユニットが割り当てられているが、これは機器そのものに送られる場合に用いられ、例えば電源のオンオフなどに使用される。
図10Cは、オペコードの具体例を示している。各サブユニットタイプ毎にオペコードのテーブルが存在し、ここでは、サブユニットタイプがテープレコーダ/プレーヤの場合のオペコードを示している。また、オペコード毎にオペランドが定義されている。ここでは、“00h”には製造メーカ特有の値、“50h”にはサーチモード、“51h”にはタイムコード、“52h”にはATN、“60h”にはオープンメモリ、“61h”にはメモリ読出し、“62h”にはメモリ書込み、“C1h”にはロード、“C2h”には録音、“C3h”には再生、“C4h”には巻き戻しが割り当てられている。
図11は、AV/Cコマンドとレスポンスの具体例を示している。例えば、ターゲット(コンスーマ)としての再生機器に再生指示を行う場合、コントローラは、図11Aのようなコマンドをターゲットに送る。このコマンドは、AV/Cコマンドセットを使用しているため、CTS=“0000”となっている。ctype(コマンドタイプ)には、機器を外部から制御するコマンド(CONTROL)を用いるため、cタイプ=“0000”となっている(図10A参照)。サブユニットタイプはテープレコーダ/プレーヤであることから、サブユニットタイプ=“00100”となっている(図10B参照)。idはID0の場合を示しており、id=000となっている。オペコードは再生を意味する“C3h”となっている(図10C参照)。オペランドは順方向(FORWARD)を意味する“75h”となっている。
このようなコマンドを受信して再生が開始されると、ターゲットは図11Bのようなレスポンスをコントローラに返す。ここでは、「受け入れ」(accepted)がレスポンスに入るため、レスポンス=“1001”となっている(図10A参照)。レスポンスを除いて、他は図11Aと同じであるので説明は省略する。
次に、モニタ受像機1の無線ネットワーク処理部20が組む無線ネットワークで、他の機器(本例の場合には携帯電話端末5など)と無線通信を行う方式について説明する。本例の場合には、既に説明したようにブルートゥース規格で無線通信を行うようにしてあり、このブルートゥース規格の無線伝送方式について説明する。
図12は、ブルートゥースで無線通信を行う上で必要なプロトコルスタックを示した図である。ブルートゥースのシステム全体のプロトコルは、ブルートゥースのプロトコルの主要部分となるコアプロトコルと、アプリケーションなサービスをつかさどるアプリケーションソフトと、コアプロトコルとアプリケーションとの間で通信プロトコルを整合させるための適合プロトコル群の3つに分けられる。
ブルートゥースコアのプロトコルは、5つのプロトコルから構成される。下位層から順に物理層、ベースバンド層、実データ処理層、論理リンク管理層で構成される。
適合プロトコル群は、既存の各種アプリケーションソフトが利用できるように、コアプロトコルをアプリケーションソフトに適合させることが行われる。この適合プロトコル群には、例えばTCP/IPプロトコル、シリアルポートをエミュレーションするRFCOMMプロトコル、ユーザが操作する機器(HID:Human Interface Device)のドライバなどがある。後述するAV/Cのデータを伝送する上では、この適合プロトコル群に該当するプロファイルを適合するプロトコルが用意される。AV/Cのデータを伝送する上で必要なプロトコル構成については後述する。
物理層としては、2.4GHzの周波数帯を用いた周波数ホッピング型のスペクトル拡散方式が採用されている。送信電力としては、最大でも100mW程度に制限されて、約100m程度までの短距離での無線伝送を想定している。また、この物理層にはリンク層からの制御により、最小−30dBmまで送信電力を低減させることができるようにしてある。
ベースバンド層は、物理層に対して、実際の送受信データパケットをインターフェースするプロトコルとして定義されている。この層では、上位層から受け渡されるデータを送受信するための通信リンクを提供する。このとき、周波数ホッピングの管理や時間軸スロットの管理なども行われる。さらに、パケットの再送や誤り訂正と検出の処理も、このベースバンド層が管理する。
リンク管理層は、通信リンク上で送受信パケットをインターフェースするプロトコルの1つであり、ベースバンド層に対して通信リンクの設定や、そのリンクに関する様々な通信パラメータの設定を指定する。それらは、制御パケットとしてリンク管理層に定義され、必要に応じて対向端末のリンク管理層と通信を行う。また、この層は上位のアプリケーションから必要に応じて直接制御を受ける。
音声層では、リンク管理層がデータを送信できる通信リンクを設定した後に、音声データの受け渡しが行われる。ここでの音声データとは、主として電話で通話を行うための音声データであり、無線電話などで通信を行うときに、データ伝送の遅延を最小限に抑えるために、比較的下位の層に専用の処理層を設けてある。
論理リンク管理層は、リンク管理層及びベースバンド層にインターフェースするプロトコルで、論理チャンネルを管理する。なお、音声層が扱う音声データ以外の伝送データについては、上位のアプリケーションから倫理リンク層に提供されるが、そこでやりとりされる実際のデータは、ベースバンド層で送受信されるデータパケットのサイズやタイミングを意識しないで受け渡しされる。そのため、論理リンク管理層は、上位アプリケーションのデータを論理チャンネルとして管理し、データ分割やデータの再構成の処理を行う。
図13は、2台の機器間で無線通信が行われるときに、各層での処理を示したものであり、物理層では物理的な無線通信回線のリンクが設定され、ベースバンド層ではその設定されたリンクで、パケットの送受信が行われる。リンク管理層では、通信リンク管理チャンネルで制御パケットの送受信が行われる。論理リンク管理層では、論理チャンネルでユーザデータのパケットの送受信が行われる。このユーザデータが、実際に伝送したいストリームデータやコマンドなどに相当する。
次に、この方式で無線通信を行う際の物理的な通信周波数の設定処理について説明する。図14は、この方式で使用される周波数を示した図である。図14に示すように2402MHzから2480MHzまで1MHz間隔で79の通信周波数が存在する。送信されるパケットのそれぞれは、この79ある通信周波数の内の1の通信スペクトルを占有する。そして、この使用される通信スペクトルが、625μ秒毎にランダムに変化(ホッピング)する。
図15は、この通信周波数がホッピングする例を示したものであり、ある特定のタイミングt0から625μ秒毎にランダムに送信周波数が変化している。この625μ秒毎に通信周波数が変化することで、1秒間で約1600回ランダムにホッピングすることになり、結果的に図14に示した帯域内で拡散されて伝送されることになり、スペクトル拡散が行われていることになる。
なお、ブルートゥースの場合には、パケットの1単位は625μ秒間であるが、この1単位のパケットを複数連続して使用して送信することもできる。例えば2台の機器間で双方向に伝送を行うとき、両方向の通信が同じパケット数を使用する必要はなく、一方の方向の通信だけが複数パケット使用する場合もある。
図16に示すように伝送されるパケットが全て625μ秒のパケットである場合には、図15に示したように625μ秒毎に周波数ホッピングが行われる。これに対して、例えば図17に示すように、3パケット連続して使用される場合や、5パケット連続して使用される場合には、そのスロットが連続している間は送信周波数が固定される。
2台の機器間での通信状態を図18に示すと、無線伝送を行う一方の機器をマスタとし、他方の機器をスレーブとしたとき、マスタからスレーブに、1スロット(625μ秒)の期間にスロット構成のデータを伝送し(図18A)、次の1スロットの期間に、スレーブからマスタに、スロット構成のデータを伝送する(図18B)。以下その交互伝送を、伝送が続く限り繰り返す。但し、無線伝送する周波数は、上述したように1スロット毎に周波数f(k),f(k+1),f(k+2)…と変化させる。
図19は、複数の機器で構成されるネットワーク構成例を示した図である。ブルートゥースとして規格化された通信方式では、このような1対1の無線伝送だけでなく、多数の機器でネットワークを組むことができるようにしてある。即ち、2台の機器間で無線伝送を行う場合には、図19Aに示すように、一方の機器がマスタとなり、他方の機器がスレーブとなり、マスタMA11の制御で、マスタMA11とスレーブSL11との間で双方向の無線伝送が実行される。
これに対して、図19Bに示すように、例えば1台のマスタMA21により制御される3台のスレーブSL21,SL22,SL23を用意して、この4台の機器間で無線伝送を行うようにネットワークを構成させても良い。
また図19Cに示すように、3台のマスタMA31,MA32,MA33と、各マスタに個別に制御されるスレーブSL31,SL32,SL33,SL34,SL35,SL36を用意して、3つのネットワークを構成させた上で、その3つのネットワークを接続させて、ネットワーク構成を拡大させることもできる。いずれの場合でも、レスーブ間で直接通信を行うことはできず、必ずマスタを経由した通信が行われる。
なお、1つのマスタと、そのマスタと直接通信を行うスレーブで構成される1つのネットワークを、ピコネットと称する。複数のマスタを有するネットワーク群(即ち複数のピコネットで構成されるネットワーク群)を、キャスターネットと称する。
次に、ブルートゥースで機器間で通信を行うときのリンクの種類について説明する。ブルートゥースでは、SCO(Synchronous Connection−Oriented)リンクと、ACL(Asynchronous Connection−Less)リンクの2種類の通信リンクがあり、アプリケーションの用途によって使い分けができるようになっている。
SCOリンクは、マスタと特定スレーブの間で1対1で通信を行う接続タイプであり、いわゆる回線交換型のリンクである。このリンクは、主に音声などのリアルタイム性が要求されるアプリケーションに使用される。このSCOリンクは、ピコネット内の通信リンクにおいて一定間隔で予め通信スロットを確保しておき、途中に他のデータの伝送があっても、SCOリンクのデータ通信が優先される。即ち、例えば図20に示すように、マスタとスレーブとの間で、SCO通信スロットが一定間隔で相互に伝送される。図20Aはマスタからの送信を示し、図20Bはスレーブからの送信を示す。
このSCOリンクは、1つのマスタに対して同時に最大で3つのSCOリンクをサポートすることができる。この場合、1つのスレーブで3つのSCOリンクをサポートする場合と、異なる3つのスレーブに対してそれぞれ1つのSCOリンクをサポートする場合とがある。なお、SCOリンクは再送信機能を有してなく、SCOリンクで伝送されるパケットには、誤り訂正符号は付加されてない。
ACLリンクは、いわゆるパケット交換型の接続タイプであり、マスタと複数のスレーブの間で、1対多の通信が可能である。ピコネット内のどのスレーブとも通信できる代わりに、データ量やスレーブの数によって個々のスレーブの実効通信速度が変化する場合がある。SCOリンクとACLリンクは、混在させて使用することもできる。
ACLリンクでは、1つのマスタが同時に通信できるスレーブの数は、最大で7つまでになる。但し、1つのピコネット内で設定できるACLリンクは各スレーブに対して1つのみで、1つのスレーブが一度に複数のACLリンクを設定することはできない。1つのスレーブで複数のアプリケーションを動作させるためには、上位のアプリケーションをプロトコル多重化させることが必要である。特に指定がない限り、マスタとスレーブとの通信には、シングルスロットのACLパケットが用いられる。スレーブがマルチスロットのACLパケットを送信するためには、予めマスタからの許可が必要になる。マスタは、スレーブからのマルチスロットのACLパケットの送信要求を拒否できるが、スレーブはマスタからの送信要求を必ず受け入れなければならない。
マスタは、スレーブに対してマルチスロットの上限値のみを通知し、マルチスロットのACLパケットを送信するかどうかはスレーブの判断に任される。一方、マスタから送信されるACLパケットがシングルスロットかマルチスロットであるかは、全てマスタの判断に依存するため、スレーブは全てのマルチスロットパケットの受信を常に準備しておく必要がある。
ACLパケットでは、シングルスロット,マルチスロットの定義とは別に、大別して次の3つのパケット通信方法が提供される。1つ目は非同期通信方式(Asynchronous transfer)であり、2つ目はアイソクロナス通信方式(Isochronous transfer)であり、3つ目は同報通信方式(Broadcast transfer)である。
非同期通信方式は、通常のパケットの送受信を行うための通信方式である。データの伝送速度は、ピコネット内に存在するスレーブのトラヒック量や通信回線品質の劣化によるパケット再送などによって変化する。
図21は、同一ピコネット内の3つのスレーブ(スレーブ1,2,3)が非同期通信方式で通信をする場合の例である。図21Aはマスタからの送信を示し、図21B,図21C,図21Dは、それぞれスレーブ1,2,3からの送信を示している。図21Aに示すように、マスタから各スレーブ1,2,3に対して順にACLパケットが送信され、図21B,図21C,図21Dに示すように、そのACLパケットを受信したスレーブから、マスタに受信確認のパケットが返送されている。
なお、オーディオデータやビデオデータなどのストリームデータをACLパケットの非同期通信方式で伝送する場合もある。このようにストリームデータを非同期通信方式で伝送させる場合には、各ACLパケットにはタイムスタンプを付加させて、受信側でストリームデータの連続性を確保できるようにする。
アイソクロナス通信方式は、予め決められた時間スロットの期間内に、必ずマスタからスレーブ宛にパケットが送信される方式である。この方式では、伝送されるデータの最低限の遅延を確保することができる。アイソクロナス通信方式の場合には、スロット間隔は、最大ポーリング時間として、アイソクロナス通信方式での通信を開始させる前に、マスタとスレーブとの間で合意する必要がある。
マスタはスレーブに対して強制的に最大ポーリング間隔を指定することができ、またスレーブからのアイソクロナス通信方式の設定要求を拒否することができる。しかし、スレーブからはマスタに対して、最大ポーリング間隔の指定はできなく、アイソクロナス通信の設定要求もできない。
図22は、アイソクロナス通信方式でマスタとスレーブとの間で通信を行う場合の例である。図22Aはマスタからの送信を示し、図22Bはスレーブからの送信を示している。この図22に示すように、最大ポーリング間隔以内で、マスタからACLパケットをスレーブに送信し、そのACLパケットを受信したスレーブが、受信した直後に受信確認のパケットをマスタに返送するようにしてある。
同報通信方式は、パケットヘッダ中のスレーブ識別子をゼロとすることで設定される。これにより、マスタから全てのスレーブに対して同報通信パケットを送信することができる。同一のパケットを受信したスレーブでは、それに対する受信確認のパケットを送信しない。スレーブが受信確認を行わない代わりに、マスタは同報通信パケットを複数回続けて送信する。この複数回送信する回数は、同報通信を行う前にマスタは全てのスレーブに対して通知する必要がある。
図23は、同報通信方式でピコネット内の全てのスレーブに通信を行う場合の例である。図23Aはマスタからの送信タイミングを示し、図23B,図23C,図23Dは、それぞれスレーブ1,2,3での受信状態を示している。この図23において、スレーブでのパケットの受信時に、×印を付与した箇所が、そのときのスレーブでのパケットを受信できなかったときの例を示してあり、NBC回繰り返し送信されることで、確実に全てのスレーブに同報できるようにしてある。
図24は、SCOリンクとACLリンクとを併用して使用する通信例を示した図である。図24Aはマスタからの送信タイミングを示し、図24B,図24C,図24Dは、それぞれスレーブ1,2,3での受信状態及び送信状態を示している。この例では、SCOリンクでのSCOパケットが、マスタとスレーブ1との間で一定周期で送信されている状況で、マスタから3台のスレーブ1,2,3に随時ACLパケットが送信されている。また、同報通信用のパケットについても、所定回繰り返し送信されている。この同報通信用のパケットが繰り返し送信されている間に、SCOパケットが送信されるタイミングになると、SCOパケットが送信される。
ここで、アイソクロナス通信方式と同報通信方式で必要な設定パラメータをまとめると、次の表1に示すようになる。
次に、マスタ及びスレーブが内部にクロックについて説明する。この通信方式では、各機器が内部に持つクロックを使用して、周波数ホッピングパターンなどが設定されるようにしてある。このマスタ及びスレーブが持つクロックは、図25に示すように、例えば0〜27までの28ビットのカウンタのカウント値で設定される。このカウンタの1刻みは312.5μ秒であり、この312.5μ秒が呼び出しと問い合わせの処理の最小時間単位となっている。このように312.5μ秒毎に値が1つずつカウントアップする28ビットのカウンタは、1周期が約23時間となり、周波数ホッピングパターンのランダム性を高めている。
0ビット目のクロック値で設定される312.5μ秒の周期は、マスタが呼び出しと問い合わせを行う際の送信パケットの時間周期である。1ビット目のクロック値で設定される625μ秒の周期は、通信周波数が変化するスロットの時間周期である。2ビット目のクロック値で設定される1.25m秒の周期は、マスタ又はスレーブの送受信時間周期である。また12ビット目のクロック値で設定される1.28秒の周期は、問い合わせと呼び出しにおいて、受信周波数を変化させる時間周期のクロックタイミングとなっている。
各スレーブは、マスタのクロックを参照して、マスタのクロックと一致するように、一定のオフセット値を自らのクロックに加算し、その加算されたクロックを通信に使用する。
マスタとスレーブで周波数ホッピングパターンを算出する際には、このクロックの他に、各端末に付与された48ビットのアドレスについてもパラメータとして使用される。48ビットのアドレスは、IEEE802仕様に準拠してアドレス方式で定義され、それぞれのブルートゥースの端末毎に個別に割当てられた絶対的なアドレスである。図26は、この48ビットのアドレス構成例を示した図であり、下位24ビットがLAP(Lower Address Part)、次の8ビットがUAP(Upper Address Part)、残りの16ビットがNAP(Non−significant Address Part)の3つの要素から構成される。
ピコネット内同期における周波数ホッピングパターンの生成には、マスタのアドレスの内、LAP全体の24ビットと、UAPの下位4ビットの合計28ビットが使用される。これにより、それぞれのピコネットに対して、マスタのアドレスに基づいた周波数ホッピングパターンが与えられることになる。通信状態に移行する際には、スレーブにはマスタのアドレスが通知されるので、各スレーブでもマスタと同じ周波数ホッピングパターンを独自に算出できる。
図27は、通信周波数を算出する構成例を示した図である。マスタのアドレスの下位28ビットと、28ビットのクロックの下位27ビットを、通信周波数選択部8に供給して、チャンネル周波数ホッピングパターンである通信周波数が一義的に決まる構成としてある。但し、呼び出し周波数ホッピングパターンと問い合わせ周波数ホッピングパターンは、チャンネル周波数ホッピングパターンとは異なるパターンである。
次に、マスタとスレーブとの間で伝送されるデータ構成について説明する。図28は、パケットフォーマットを示した図である。パケットは、大きく分けて、アクセスコード,パケットヘッダ,ペイロードの3つの部分から構成される。ペイロードは、そのときに伝送するデータ量に応じて可変長に設定される。
図29は、アクセスコードの構成を示した図である。アクセスコードは、68ビット又は72ビットのデータで構成されて、送信パケットの宛先を示すものであり、送受信される全てのパケットに付加されるコードである。パケットの種類によっては、このアクセスコードだけの場合もある。
プリアンブルは、シンクワードのLSBに応じて、1と0のパターンを繰り返す固定4ビット長で構成される。トレーラは、シンクワードのMSBに応じて1と0を繰り返す4ビットで構成される。いずれも、アクセスコード全体の信号直流成分を除去するように機能する。48ビットのシンクワードは、48ビットのアドレスの内の24ビットのLAPを元にして生成される64ビットのデータである。このシンクワードがピコネット識別のために使用される。但し、マスタのアドレスやクロックが得られない場合での通信などで、問い合わせと呼び出しで使用されるパケットで、異なるシンクワードが使用される場合もある。
ここで、アクセスコード種別をまとめると、次の表2に示すようになる。
図30は、パケットヘッダの構成を示した図である。パケットヘッダは、ベースバンド層における通信リンクを制御するために必要なパラメータを含む部分である。
3ビットのAM ADDRは、ピコネット内で通信中のスレーブを特定するための識別フィールドで、マスタが各スレーブに割当てる値である。
4ビットのTYPEは、パケット全体がどのようなパケットであるかを指定するパケットタイプ種別フィールドである。
1ビットのFLOWは、ACLリンクで通信するパケットのフロー制御の管理に使用するフィールドである。
1ビットのARQNは、受信したパケットに誤りがあるかどうかをパケット送信側に通知するために用いる1ビットのフィールドである。ブルートゥース規格では、受信確認専用の応答パケットが用意されてなく、このARQNのフィールドを使用してパケットの送信元に対してパケットの受信確認を送る。このフィールドの値が1か0かによって、受信したパケットに誤りがなかったか、又は誤りがあったことを相手に通知する。受信パケットの誤りの有無は、受信パケットのパケットヘッダに付加されたヘッダ誤り検出符号とペイロードに付加された誤り検出符号で判断される。
1ビットのSENQは再送パケットが受信側で重複しないように管理するために用いるフィールドである。同一のパケットを再送するとき、1パケット送る毎に、値を1と0とで交互に反転させる。
8ビットのHECは、パケットヘッダの誤り訂正符号が配置されるフィールドである。この誤り訂正符号は、g(D)=D8+D7+D5+D2+D+1の生成多項式を用いて生成される。その生成に際して、誤り訂正符号生成用の8ビットのシフトレジスタに設定される初期値は、既に説明したブルートゥース用のアドレスの内のUAPの8ビットを設定する。ここで用いられるアドレスは、アクセスコードを生成する際のアドレスと同一になる。この誤り訂正符号を生成させる際の初期値をまとめると、次の表3に示すようになる。
通信中のピコネットを識別するためには、マスタのアドレスのLAPの24ビットに基づいて生成したチャンネルアクセスコード(CAC)を使用する。ピコネット内での通信の同期を図るには、周波数ホッピングパターンと時間スロットの同期が必要となるが、このとき、万一近くに同一のLAPを有する他のマスタが存在し、かつ周波数と時間スロットの同期がたまたま一致した場合であっても、パケットヘッダの誤り訂正符号であるHECを用いてそれを排除することができる。
ペイロードには、実際に端末間で送受信されるユーザデータまたは制御データが収められる。ユーザデータには、SCOリンクで送受信されるデータと、パケット交換型のACLリンクで送受信されるデータとがある。
図31は、ACLリンクのペイロードの構成を示した図である。ペイロードヘッダ、ペイロードボディ、誤り検出符号の3つの部分から構成され、ペイロード全体の長さは可変長である。一方、SCOリンクのペイロードは、予め通信スロットを周期的に確保しているので、データパケットの再送はなく、ペイロードボディのみの構成であり、ペイロードヘッダと誤り検出符号は付加されてない。
ペイロードヘッダは、ベースバンド層より上位層のデータを制御するために必要なパラメータを含んでいる部分であり、ACLリンクにだけ含まれるデータである。図32に、シングルスロットパケットのペイロードヘッダの構成を示し、図33に、マルチスロットパケットのペイロードヘッダの構成を示す。
ペイロードヘッダに含まれる2ビットのL_CHのデータは、ベースバンド層より上位層のデータが、どのようなデータであるかを指定する論理チャンネルを識別するフィールドである。SCOリンクとACLリンクは、ベースバンド層でのリンクであり、その制御はパケットヘッダに設定される情報によって行われる。L_CHは、ベースバンド層より上位層で定義される論理チャンネルを識別するもので、3つのユーザ論理チャンネルに対して、L_CHが次の表4に示すように定義される。
1ビットのFLOWは、ユーザ論理チャンネル上を送受信されるデータのフロー制御をするために用いる1ビットのデータである。FLOWは、ユーザ論理チャンネル毎に管理され、FLOW=0を設定してデータを返すことで、相手に一時的にデータの送信を中断させる。また、受信バッファが空になると、FLOW=1を設定してデータを返すことで、相手のデータの送信を再開させる。このFLOWフィールドの設定はリンク管理層が行うが、リアルタイム的なデータのフロー制御を保証するものではない。リアルタイムのデーダのフロー制御は、すべてベースバンド層がパケットヘッダ中のFLOWフィールドを用いて管理する。制御パケット中のデータは、リンク管理層で全て処理されるため、論理リンク管理層へは渡されない。従って、制御パケットはこのFLOWによるフロー制御の影響は受けず、その値は必ず1に設定される。
5ビット又は9ビットのLENGTHは、ペイロードボディのデータ長をバイト単位で示すフィールドである。シングルスロットパケットの場合には5ビットであり、マルチスロットパケットの場合には9ビットのフィールドになる。
UNDEFINEDは、マルチスロットパケットのペイロードヘッダにのみ存在し、現状では未定義のフィールドであり、全て0に設定される。
ペイロードボディには、ペイロードヘッダのLENGTHで指定された長さのデータが入る。SCOリンク通信では、データパケットのペイロードがペイロードボディのみで構成されるので、LENGTHによるデータ長の指定はない。但し、DVパケットを用いる場合は、そのデータ部分のデータ長を示す。
CRCは、誤り検出符号を示す16ビットのフィールドであり、ペイロードヘッダ及びペイロードに誤りがあるかどうかを検出するための符号である。この誤り検出符号は、g(D)=D16+D12+D5+1の生成多項式を用いて生成される。その生成に際して、16ビットのシフトレジスタに設定される初期値は、既に説明したアドレスの内のUAPの8ビットに8ビットのゼロを加えた16ビットの値を設定する。ここで用いられるアドレスは、HECと同様に、アクセスコードを生成する際のアドレスと同一になる。
次に、パケット種別について説明する。
パケットヘッダの説明で述べたように、TYPEフィールドはパケットタイプを指定する。この指定されるパケットタイプについて説明すると、SCOリンクとACLリンクで共通に使用される共通パケットと、SCOリンク又はACLリンクに固有のパケットがある。
まず共通パケットについて説明する。共通パケットには、NULLパケット、POLLパケット、FHSパケット、DM1パケット、IQパケット、IDパケットがある。
NULLパケットは、アクセスコードとパケットヘッダから構成されるパケットで、ペイロードを有しない。パケットの長さは固定で126ビットとなる。このパケットは、通信リンクの状態を送受信するためのパケットで、パケットの受信確認(ARQN)やフロー制御(FLOW)を管理する。このNULLパケットを受信したことに対するパケットの確認応答は必要ない。
POLLパケットは、NULLパケットと同様に、アクセスコードとパケットヘッダから構成されるパケットで、126ビットの固定長であり、通信リンクの状態を管理する。但し、このPOLLパケットの場合には、NULLパケットと違って、POLLパケットを受信したことに対して、送信するデータがなくても、パケットの確認を応答送信する必要がある。
FHSパケットは、ピコネット内同期を図るために重要な制御パケットであり、スマタとスレーブの間で同期を確立するための必須のパラメータであるクロックとアドレスを交換するときに送信される。図34はFHSパケットのペイロードの構成例を示した図である。FHSパケットのペイロードは、11のフィールドから構成され、この11のフィールドの144ビットに対する16ビットの誤り検出符号が付加されて、160ビットで構成される。FHSパケットを構成する11のフィールドについて以下説明する。
34ビットのパリティビットは、FHSパケットで設定されるアクセスコード中のシンクワードに対するパリティを含むフィールドである。
24ビットのLAPは、FHSパケットを送信する端末のアドレスの下位24ビットである。LAPに続いた2ビットは未定義のフィールドであり、0に設定される。
2ビットのSRは、呼び出しにおいて、マスタがスレーブに対してIDパケット列を送信する際の繰り返し回数、およびスレーブがマスタからのIDパケット列をスキャンする際のスキャン周期を指定する2ビットのフィールドである。
2ビットのSPは、問い合わせにおいて、スレーブがマスタからのIQパケットを受信して、PHSパケットをマスタに送信した後に、スレーブが必須呼び出しスキャンを行う時間を指定するフィールドである。
8ビットのUAPは、FHSパケットを送信する端末のアドレスの上位8ビットである。
16ビットのNAPは、FHSパケットを送信する端末のアドレスの内の、LAPとUAP以外の16ビットである。
24ビットのデバイスのクラスは、端末の種類を示すフィールドである。
3ビットのAM ADDRは、マスタがスレーブを識別するための3ビットのフィールドである。呼び出しの処理の内、マスタがスレーブに対して送信するFHSパケットにおいて、ピコネット内で用いるスレーブ識別子を指定する。スレーブがマスタからのIQパケットの応答として送信するFHSパケットでは、AM ADDRは、意味がないので0に設定する必要がある。
26ビットのCLK27−2は、端末が有するクロックの内の上位26ビットを示すフィールドである。このクロックは、1.25μ秒のクロック精度を有し、FHSパケットを送信する際には、必ずそのときのクロックの値を設定する必要がある。
3ビットのページスキャンモードは、FHSパケットを送信した端末がサポートするデフォルトの呼び出しスキャンのモードを指定するフィールドである。
次に、DM1パケットについて説明する。DM1パケットがSCOリンクで送受信される場合には、必ず制御パケットとして機能する。一方、ACLリンクで送受信される場合には、制御パケットとして機能する他に、データパケットを送受信するためにも使用される。
SCOリンクまたはACLリンクで共通パケットとして送信される場合には、リンク管理層の制御パケットとして定義される。ところが、ACLリンクでDM1パケットを送受信する場合には、パケットタイプを指定するフィールド(TYPE)を見ただけでは、ユーザパケットか制御パケットかどうかは判らない。そのため、ペイロードヘッダの論理チャンネル種別フィールドをL_CH=11に設定することで、DM1パケットはリンク管理層に対する制御パケットであることが指定される。データパケットの場合は、元のユーザデータのフラグメント化によってL_CH=01又はL_CH=10を設定します。
IQパケットは、問い合わせにおいてマスタがブロードキャストするパケットで、問い合わせアクセスコードのみから構成される。
IDパケットは、呼び出しにおいてマスタが特定のスレーブを指定して送信するパケットで、呼び出しアクセスコードのみから構成される。IQパケットとIDパケットについては、パケットヘッダのタイプフィールドでは定義されないパケットである。
次に、SCOリンク上で送受信されるデータパケットであるSCOパケットについて説明する。SCOパケットは、HVIパケット、HV2パケット、HV3パケット、DVパケットの4種類から構成される。
HV1パケットのペイロードは、ペイロードボディのみから構成され、そこには10バイドのユーザデータが収められる。SCOパケットは基本的に再送されないので、この10バイトには誤り検出符号は含まれない。そして、データは1/3レートの誤り訂正符号化され、最終的に240ビットのペイロード長を有することになる。
HV2パケットのペイロードも、ペイロードボディのみから構成され、そこには20バイトのデータが及び収めされる。この20バイトには誤り検出符号は含まれない。そして、データは2/3レートの誤り訂正符号され、最終的に240ビットのペイロード長を有することになる。
HV3パケットのペイロードも、ペイロードボディのみから構成され、そこには30バイトのデータが及び収めされる。この30バイトには誤り検出符号は含まれない。そして、この30バイトには誤り検出符号化はされない。
DVパケットは、固定長10バイトの音声部分と、最大9バイトまで可変長のデータ部分から構成される。音声部分の10バイトには、誤り訂正符号は含まれないが、データ部分には1バイトのペイロードヘッダを膨れた最大10バイトの部分に対する2バイトの誤り検出符号が付加される。
ACLリンク上で送受信されるACLパケットには、DM1パケット、DH1パケット、DM3パケット、DH3パケット、DM5パケット、DH5パケット、AUX1パケットがある。
DM1パケットのペイロードは、1バイトのペイロードヘッダと、最大17バイトまでの可変長のペイロードボディと、誤り検出符号から構成される。
DH1パケットの構成は、DM1の場合と同じである。但し、ペイロードは誤り訂正符号化されない。従って、最大27バイトまでの可変長データを送受信することが可能になる。
DM3パケットのペイロードは、2バイトのペイロードヘッダと、最大121バイトまでの可変長ペイロードボディと、誤り訂正符号かから構成される。これらDM3パケットのペイロードは、2/3レートの誤り訂正符号される。
DH3パケットの構成は、DM3パケットの構成と同じである。但し、ペイロードは誤り訂正符号化されない。従って、最大で183バイトまでの可変長データを送受信することが可能になる。
DM5パケットのペイロードは、2バイトのペイロードヘッダ、最大224バイトまでの可変長ペイロードボディ、2バイトの誤り訂正符号から構成される。
DH5パケットの構成は、DM5パケットと同じである。但し、ペイロードは誤り訂正符号化されない。従って、最大339バイトまでの可変長データを送受信することが可能になる。
AUXパケットは、2バイトの誤り検出符号を含まない場合のDH1パケットと同じである。つまり、AUX1パケットの再送はない。ペイロードボディは2バイト増加して、最大で29バイトまでの可変長データを送受信することができる。
次に、ブルートゥースでの遷移状態について説明する。この方式での遷移状態は、通信に係わる3段階のフェーズと、端末の消費電力に係わる低消費電力モードから構成される。通信に係わる3段階のフェーズとしては、待ち受けフェーズ、同期確立フェーズ、通信フェーズに分かれており、また低消費電力モードでは、パークモード、ホールドモード、スニフモードの3種類がある。図35は状態遷移例を示した図であり、矢印で示した状態への遷移がある。
待ち受けフェーズ(S11)は、1つの処理状態から構成され、いかなるパケットの送受信も行われてないフェーズである。端末の電源を入れた直後や、通信リンクを切断した場合には、端末は待ち受けフェーズにある。この待ち受けフェーズにおいては、マスタとスレーブに関する役割の違いはない。
同期確立フェーズには、問い合わせ(S12)と呼び出し(S13)の2種類から構成される。
問い合わせとは、ピコネット内同期を確立するために行う第1段階の処理状態である。初めて通信を行おうとする端末は、待ち受けの後、必ず問い合わせに遷移する。
呼び出しとは、ピコネット内同期を確立するために行う第2段階の処理状態で、基本的には問い合わせから状態遷移するが、問い合わせ状態でピコネット内同期確立の第1段階の処理が既に完了している場合には、待ち受けから直接呼び出しに遷移することもある。
問い合わせでは、マスタとスレーブでその役割が明確に異なる。この処理状態にあるマスタは、周囲にスレーブが存在しているかどうかに係わらず、連続してIQパケットをブロードキャストする。その周囲に問い合わせの処理状態にあるスレーブが存在する場合、IQパケットを受信するたびにマスタに対してスレーブはその属性を伝えるためにFHSパケットを送信する。このFHSパケットによって、マスタはスレーブのアドレスとクロックを知ることができる。
図36は、この問い合わせ状態にあるマスタとスレーブが行う処理を示した図である。まず、図36Aに示すように、中央のマスタがIQパケットを送信すると、図36Bに示すように、その周囲のスレーブが、FHSパケットをマスタに送信する。このように、問い合わせにあるマスタは、不特定多数のスレーブからFHSパケットを受信することになる。
ここで、複数のスレーブが同時に特定のIQパケットに対してFHSパケットを送信することが問題となる。同時に複数のFHSパケットが送信されるとき、パケットの衝突が発生して、マスタが送信されFHSパケットを判断できなくなってしまう。ブルートゥースでは、このような衝突を回避するためにFHSパケットの送信の際に、ランダム時間バックオフするようにしてある。つまり、スレーブは初めて受信したIQパケットに対しては、マスタにFHSパケットの送信を行わず、その後にランダム時間バックオフする間はIQパケットの受信を中断させる。その後、スレーブはIQパケットの受信を再開し、次にIQパケットを受信した直後にFHSパケットをマスタに送信する。スレーブは、FHSパケットを受信すると、再びIQパケットの受信をランダム時間バックオフしている間は、中断させる。以降は、この動作を繰り返す。
図37は、この問い合わせにおけるマスタ,スレーブでの処理の概要を示した図である。図37Aはマスタでの送受信を示し、図37Bはスレーブでの送受信を示している。マスタはFHSパケットを誤りなく受信できたことをスレーブに通知しないため、問い合わせの状態にあるスレーブは、FHSパケットを送信したきりの状態になってしまう。しかし、同一のIQパケットを繰り返しある一定時間ブロードキャストするので、マスタは問い合わせ処理状態の各スレーブ毎に複数のFHSパケットを受信することになる。結局、ある一定時間問い合わせを継続することで、FHSパケットの送受信の確実性を高めている。
呼び出しの場合にも、マスタとスレーブとで、役割が異なっている。この処理状態では、問い合わせで送受信したFHSパケットの情報を元に、マスタは通信するスレーブを選択して、そのスレーブ宛にIDパケットを送信する。マスタは、IDパケットの受信を確認すると、そのスレーブに対してFHSパケットを送信する。これによって、スレーブはマスタのアドレスとクロックを知ることができる。
ここで送受信されるIDパケットとFHSパケットのアクセスコードには呼び出しアクセスコードを用いる。
図38は、呼び出しにあるマスタとスレーブが行う処理動作の概要を示している。図38Aに示すように、中心にあるマスタがIDパケットをスレーブに送信することで、スレーブが受信確認を通知する。また、図38Bに示すように、マスタがFHSパケットをスレーブに送信することで、スレーブが受信確認を通知する。
問い合わせにおける不特定多数のスレーブに対する処理と異なり、呼び出しでは特定のスレーブとマスタの間で処理が交わされる。1対1でパケットの送受信を行えることから、マスタとスレーブはその送受信を確認しながら処理が行える。
マスタからのIDパケットを受信したスレーブは、マスタに同一のIDパケットを送信して受信確認を通知する。次に、マスタはスレーブにFHSパケットを送信して、自分のアドレスとクロックをスレーブに通知する。スレーブは、このFHSパケットを誤りなく受信すると、IDパケットをマスタに送信して、その受信確認とする。この時点で、問い合わせでの処理と合わせて、ピコネット内同期に必要なアドレスとクロックの情報が、マスタ,スレーブの間で相互に交換されたことになる。
図39は、呼び出しにおけるマスタ,スレーブ間での一例の処理を示した図である。図39Aはマスタでの送受信タイミングを示し、図39Bはスレーブでの送受信タイミングを示している。
図35の状態遷移図に示した通信接続フェーズは、接続(S14)と、データ転送(S15)を有する。この通信接続フェーズでは、同期確立フェーズを経てマスタとスレーブがピコネット内で同期をしており、実際の通信を行うことが可能なフェーズである。接続の状態では、データパケットの送受信は行われない。このときに送受信されるのは、通信リンクを設定するための制御パケット、セキュリティ関連の制御パケット、低消費電力モードに関連する制御パケットなどに限定される。
一方、データ転送の状態では、データパケットの送受信が許容される。同期確立フェーズを経て、初めて接続に遷移した場合には、基本的にマスタとスレーブの間で接続認証と暗号化の処理を完了しなければ、データ転送へ移行することはできない。接続におけるマスタとスレーブの役割は、そこで管理される制御パケットの内容によって異なる。
データ転送におけるデータパケットの送受信に、マスタとスレーブおよび時間スロットの規則に従って行われる。また、データ転送による端末が通信を切断した場合、および端末内のコントローラに対してハード的なリセットがかかった場合には、端末はデータ転送から待ち受けに状態遷移する。
低消費電力モードとは、接続から遷移する端末の低消費電力状態を提供するモードを言う。この低消費電力モードには、パークモード(S16)、ホールドモード(S17)、スニフモード(S18)の3種類がある。
パークモードは、スレーブ特有のモードであり、接続で確立したピコネット内同期を維持した低消費電力モードである。
ホールドモードは、スマタ,スレーブのいずれも移行できる低消費電力モードであり、接続で確立したピコネット内同期を維持し、かつスレーブの場合にはマスタから与えられたスレーブ識別子を保持しているモードである。
スニフモードは、スレーブ特有の低消費電力モードであり、ホールドモードの場合と同様に、スレーブは接続で確立したピコネット内同期をそのまま維持し、マスタから与えられたスレーブ識別子を保持しているモードである。
なお、ブルートゥースにおいては、ピコネット内でマスタと特定のスレーブとの間で、マスタ・スレーブ転換を行うことができるようにしてある。
また、通信接続フェーズの接続状態で実行されるセキュリティに関する処理としては、大別して認証と暗号化の2の処理がある。認証処理では、自分と特定の相手との間で接続を許可判断することである。暗号化処理は、自分が通信中のデータを第三者に盗聴されないように保護することを言う。
ブルートゥースのセキュリティは、リンクキーと言う概念で管理されている。リンクキーは、ある特定の2端末間それぞれにおいて、1対1のセキュリティを管理するパラメータのことである。このリンクキーは第三者には開示されてはならない。
このリンクキーとしては、初めて接続を試みる端末間で使用される初期化キーが使用され、過去に接続を行って、データベースにリンクキーがパラメータとして設定されている場合には、その設定されたリンクキーが使用される。初期化キーは、上位のアプリケーションからのPINコードと内部的に発生したデータを使用して生成される。
ここまではブルートゥース規格における一般的な処理について説明したが、本例においては、この近距離無線伝送で、オーディオ機器やビデオ機器(これらの機器を総称してAV機器と称する)などの電子機器をコントロールするコマンドと、レスポンスの伝送を行うようにしてある。
図40は、このコマンドとレスポンスの伝送を行う伝送構成を、階層構造で示した図である。ここでは、コマンドを送信する側の端末が、コントローラと称される。また、そのコマンドを受信して、レスポンスをコマンドの送信元に送信する端末が、ターゲットと称される。このコントローラ,ターゲットの関係は、通信接続管理を行う上で必要な既に説明したマスタ,スレーブとは別の概念であり、基本的にはいずれがマスタ,スレーブの端末として機能していても良い。
ベースバンド層の上には、制御用のプロトコルのデータを伝送するためのL2CAPパケットを処理する層があり、さらにその上に、AVCTP(Audio/Video Control Transport Protocol)のプロトコルが用意され、そのプロトコル上で、AV機器をコントロールするAV/Cコマンドと称されるプロトコルが用意されている。
図41は、そのプロトコルのデータを伝送するためのL2CAPパケットのデータ構成例である。図41Aに示すように、このパケットのペイロードの区間の先頭部分にはヘッダが付加され(L2CAP Headerと示された部分)、データ長(length)と、チャンネルIDとが示される。それ以降の区間が実際の情報(インフォメーション)になる。
インフォメーションの区間は、図41Bに示すように、AVCTPヘッダと、AVCTPのメッセージとが配置される。AVCTPのメッセージのデータは、図41Cに示すように、AV/Cのデータであることを示す“0000”のデータ(4ビット)と、コマンドタイプ及びレスポンスタイプを示すコマンドタイプ/レスポンスのデータ(4ビット)と、サブユニットタイプを示すデータ(5ビット)と、サブユニットIDを示すデータ(3ビット)と、機能を指示するオペコードのデータ(8ビット)と、その機能に付随するデータであるオペラント(8ビット)が、オペランド〔0〕,オペランド〔1〕,‥‥オペランド〔n〕(nは任意の整数)と配置されている。この図34に示すAVCTPのデータ構成は、有線のバスラインで接続されたネットワーク上で機器制御データなどを伝送する規格であるAV/Cコマンドセットとして規定されたデータ構成を適用したものである。
図42は、コントローラとターゲットとの間でコマンドとレスポンスが無線伝送される状態を示した図である。コントローラ側の端末で、何らかのユーザなどがあり、ターゲットの機器に対してコマンドを送信する必要が発生したとき、コントローラはターゲットに対してコネクションを確立させ(ステップS31)、その確立したコネクションで、AV/Cコマンドをコントローラからターゲットに送信する(ステップS32)。このコマンドを受信したターゲットでは、コマンドに対するレスポンスをコントローラに送信する(ステップS33)。そして、必要によりコマンドに対する処理がターゲットで実行される。また、ターゲットの状態を確認するコマンドであるときには、その要求されたデータをレスポンスでコントローラに送り返す。
そして、図43に示すように、コントローラ側でのユーザ操作などで、或いはターゲット側でのユーザ操作などで、コネクションを外す処理が実行されたとき、コマンドやレスポンスを伝送するために設定したコネクションを外すリリースコネクション処理が実行される(ステップS34)。
次に、本例のシステムで使用されるAV/Cコマンドセット(即ちAVCTPのデータ)の構成について、図44〜図46を参照しながら説明する。図44は、AV/Cコマンドとして伝送される区間のデータ構造を8ビット単位で示している。AV/Cコマンドは、AV機器を制御するためのコマンドセットであり、CTS(コマンドセットのID)=“0000”である。AV/Cコマンドフレームおよびレスポンスフレームがやり取りされる。コマンドに対するレスポンスは、例えば規定された期間内に行うことになっている。但し、暫定的なレスポンスを規定された期間内に送って、ある程度の期間後に正式なレスポンスを送る場合もある。
CTSはコマンドセットのIDを示しており、AV/CコマンドセットではCTS=“0000”である。Cタイプ/レスポンスのフィールドは、パケットがコマンドの場合はコマンドの機能分類を示し、パケットがレスポンスの場合はコマンドの処理結果を示す。コマンドとレスポンスの種類については、既にAV/Cコマンドで説明したものと同じである。
サブユニットタイプは、機器内の機能を特定するために設けられいる。同じ種類のサブユニットが複数存在する場合の判別を行うために、判別番号としてサブユニットIDでアドレッシングを行う。オペレーションのコードであるオペコードはコマンドを表しており、オペランドはコマンドのパラメータを表している。必要に応じて付加されるフィールドも用意されている。オペランドの後には、0データなどが必要に応じて付加される。
このように構成されるAVCTPのプロトコルのデータをブルートゥース規格で無線伝送することで、機器の遠隔制御が可能になる。ここで、AVDCPのプロトコルのデータにてコントロールされる機器が、パネルサブユニットを備えている場合について説明する。AVCTPのプロトコルで制御される機器は、IEEE1394方式のバスラインに接続される機器の場合と同様に、サブユニットと称される機能部を備えているが、そのサブユニットの1つとして、パネルサブユニットと称されるものがある。このパネルサブユニットは、例えばリモートコントロール装置などの制御機器側で、被制御機器で実行できる動作に関するGUI(グラフィクユーザインターフェース)用のパネルを表示させて、そのパネルの表示に対応したキー操作があったとき、そのキーで指定されたパネル上の表示機能を実行させるようにしたものである。このパネルサブユニットを使用した制御の例として、パススルーコマンドを使用して制御を実行する場合もある。
図45は、パネルサブユニットに対して伝送されるパススルー(PASSTHROUGH)コマンドの構成を示した図である。オペコードの区間は、パススルーコマンドであることを示すコード(7C16)が付加される。オペランド〔0〕の区間には、ファンクションタイプのデータを配置する。オペランド〔1〕の区間には、先頭ビットにステートフラグを配置し、残りの7ビットにオペレーションIDを配置する。このステートフラグは、ボタンを押す/放すというリモートコントロール装置のユーザ操作を表す。ボタンが押された時には、フラグを0にし、ボタンが放されたときにフラグを1にする。なお、(16)を付加して示す数字は、4ビットのデータで示される16進数値(1つの桁が0,1,…9,A,B…Fの16値で示される数値)である。
オペランド〔1〕の区間に配置されるオペレーションIDとしては、例えば図46に示すように、各コード値毎に各種オペレーションが割当てられている。例えば、GUI画面上のアップ,ダウンなどの方向や選択を指示するコードや、メニュー画面の選択を指示するコードや、再生,停止,録音,早送り,巻き戻しなどのオーディオ機器やビデオ機器の動作を直接指示するコードが割当てられている。
次に、本例のモニタ受像機1で、無線ネットワーク処理部20でパススルーコマンドを受信したときの処理について説明する。ここでは、例えば図1に示したネットワーク構成の中の、携帯電話端末5からモニタ受像機1に無線伝送されるパススルーコマンドとして、モニタ受像機1とIEEE1394方式のバスラインで接続されたビデオカセット記録再生装置2の動作(例えば再生)を指示するコマンドであるとする。このときには、例えば図47に示すように、携帯電話端末5の再生操作指示用の所定のキーを操作したとき、その再生を指示するオペレーションIDが含まれたAVCTPのプロトコルのコマンドが、携帯電話端末5から無線送信される(ステップS1)。このとき無線送信された信号は、モニタ受像機1の無線ネットワーク処理部20で受信される。このコマンドを受信したとき、モニタ受像機1の無線ネットワーク処理部20は、コマンドに対するレスポンスを無線送信し(ステップS2)、携帯電話端末5でレスポンスが受信される。
そして、ステップS1でコマンドを受信したモニタ受像機1の無線ネットワーク処理部20では、受信したコマンドの宛先を判定する処理を行い、その判定に基づいて、例えばビデオカセット記録再生装置2が宛先であると判定したとき、無線ネットワーク処理部20内のIEEE1394バス/無線ネットワーク変換部25で、IEEE1394バス用のAV/Cコマンドに変換する処理を行う。このときの変換処理としては、例えば図41に示すようなブルートゥース規格で定められたヘッダ部分のデータを取り除いて、図9に示すようなAV/Cコマンドで規定されたヘッダ部分を付加する処理が行われる。このとき、AV/Cコマンドのデータに、IEEE1394バス上の宛先のデータを付加する。
そして、変換されたAV/Cコマンドのフォーマットとされたコマンドを、モニタ受像機1内のIEEE1394バス処理部10に送り、モニタ受像機1に接続されたバスラインから送出させる(ステップS3)。このバスラインに送出されたコマンドをビデオカセット記録再生装置2が受信したとき、ビデオカセット記録再生装置2では再生動作が開始され、このコマンドに対するレスポンスがバスラインを介してモニタ受像機1に返送される(ステップS4)。
このようにして、携帯電話端末5から無線伝送されたコマンドが、モニタ受像機1で中継されて、バスラインを介してビデオカセット記録再生装置2に伝送されることで、ビデオカセット記録再生装置2は無線信号として伝送されるコマンドを直接受信できなくても、携帯電話端末5がビデオカセット記録再生装置2のリモートコントロール装置として機能することになる。
ここで、このような無線信号として伝送されるコマンドを、バスラインに送出させるために、モニタ受像機1で必要な処理について説明する。まず、モニタ受像機1内のIEEE1394バス処理部10では、バスラインで接続された機器の情報を収集する処理を行う。図48は、この機器情報収集処理の例を示したフローチャートである。この機器情報収集処理は、例えばIEEE1394バス処理部10内のパネルコントローラ13の制御で行われて、パネルコントローラ13内のメモリなどに保持されるものである。
以下、機器情報収集処理手順について説明すると、パネルコントローラ13は、バスラインで接続された有線ネットワークにバスリセットが発生したか否か判断する(ステップS11)。このバスリセットは、バスラインに接続された機器構成に変化があったとき発生するものであり、バスリセットが発生すると、バスリセット識別用の信号がバスライン上で伝送される。バスリセットが発生するまで待機し、バスリセットが発生したと判断したとき、バスに接続された各機器が備えるサブユニットを調べる処理を行う(ステップS12)。このサブユニットの調査は、例えばモニタ受像機1から有線ネットワーク内の各機器に対して、サブユニット構成を問い合わせるコマンドを順に送って、そのレスポンスでサブユニット構成を判断する。
このサブユニット構成の判断に続いて、バスで接続されたそれぞれの機器がパススルーコマンドに対応しているか否か調べる処理を行う(ステップS13)。この処理が終了した後に、ネットワーク内の各機器のノードIDと、パススルーコマンド対応機器の持つサブユニットの対応表であるテーブルを作成し、その作成したテーブルのデータをパネルコントローラ13が持つメモリなどに記憶させておく(ステップS14)。この記憶されたテーブルのデータは、次にバスリセットが発生するまで保持され、バスリセット時にステップS11からステップS14の処理で更新される。
このようにして保持されたバス上の機器のコマンドの対応を示すテーブルのデータを使用して、無線信号でコマンドを受信したときには、そのコマンドをバスラインに送出させる処理が実行される。図49は、モニタ受像機1での処理例を示したフローチャートである。まず、無線ネットワーク処理部20のパネルサブユニット24は、AVCTPのプロトコルのコマンドが受信されたか否か判断し(ステップS21)、コマンドが受信されるまで待機する。このステップでパススルーコマンドが受信されたと判断したとき、そのコマンドが、モニタ受像機1での動作を制御するコマンドであるか否か判断する(ステップS22)。ここでの判断は、例えばコマンドの内容を判断して、表示状態を制御するコマンドであるとき、モニタ受像機1の動作を制御するコマンドであると判断する。この判断で、モニタ受像機1に対するコマンドであると判断したとき、無線ネットワーク処理部20のパネルサブユニット24が、直接的にモニタ受像機1内の各処理部を制御して、映像表示部32での表示状態などの受像機として必要な動作制御を行う(ステップS23)。
また、ステップS22で、モニタ受像機1に対するコマンドでないと判断したとき、無線ネットワーク処理部20内のIEEE1394バス/無線ネットワーク変換部25で、IEEE1394バス用のAV/Cコマンドに変換する処理を行う(ステップS24)。このとき、受信したコマンドで指示される動作が実行される機器が、バスラインに接続されているか否か、パネルコントローラ13に記憶されたテーブルのデータから判断し(ステップS25)、該当する機器がバスラインに接続されてない場合には、受信したコマンドに関する処理を終了する。
そして、パネルコントローラ13に記憶されたテーブルのデータから、対応した機器があると判断したときには、その対応した機器が1つか複数であるか判断する(ステップS26)。この判断で、対応した機器が1つであると判断したとき、該当する機器のノードIDをコマンドに付加する処理を変換部25で行い、その変換処理が行われたコマンドを、IEEE1394バス処理部10のポート部11から接続されたバスラインに送出させる(ステップS27)。
また、ステップS26の判断で、該当する機器が複数存在すると判断したとき、その複数の機器の中の1台の機器を特定させる機器特定処理を行い(ステップS28)、その特定された機器のノードIDをコマンドに付加する処理を変換部25で行い、その変換処理が行われたコマンドを、IEEE1394バス処理部10のポート部11から接続されたバスラインに送出させる(ステップS29)。
ステップS28での機器特定処理としては、例えばコマンドに対応した機器の中で、現在バスライン上にビデオデータ又はオーディオデータなどのストリームデータをアイソクロナスチャンネルで送出中の機器がある場合には、その機器をコマンドの届け先に設定させる。例えば、図1に示したネットワーク構成では、ビデオカセット記録再生装置2とハードディスク記録再生装置3とチューナ4の3台がストリームデータを送出できるが、例えばその内のビデオカセット記録再生装置2が再生動作を行って再生されたビデオデータをバス上に送出させていたとすると、このビデオカセット記録再生装置2をコマンドの届け先に設定させる。
また、ステップS28での機器特定処理として、例えば予め制御される機器を選択する処理が行われていた場合には、その予め選択された機器をコマンドの届け先に設定させるようにしても良い。例えば、図1に示したネットワーク構成では、再生動作を行う機器として、ビデオカセット記録再生装置2とハードディスク記録再生装置3の2台が存在するが、その内の1台をユーザ操作で予め選択しておくことで、再生動作に関するコマンドを受信したとき、選択された機器が届け先に設定される。
また、ステップS28での機器特定処理として、その他の処理を行うようにしても良い。例えば、バスライン上に接続されていた機器の内で、機器が電源オフなどで休止状態となって、バスラインと接続されるポート部がサスペンド状態となっている機器に関しては、候補機器から除外するようにしても良い。
このようにして、ブルートゥース規格の無線ネットワークで無線伝送されたコマンドを受信した機器で、その機器に接続された有線のバスライン用にコマンドを変換して、設定された宛先の機器に対してバスラインでコマンドを伝送するようにしたことで、IEEE1394方式のバスラインで接続されて、AV/Cコマンドに対応した機器であれば、無線ネットワークでの無線通信ができない機器であっても、ブルートゥース規格の無線信号に基づいて確実に制御できるようになる。特に、上述したパススルーコマンドでは、そのコマンドの最終的な受信先を指定するデータがないにも係わらず、コマンドの制御内容からコマンドの届け先が判断されて、該当する機器に確実に伝送されるので、無線信号を受信する機器が特定の1台の機器(上述した例ではモニタ受像機1)であっても、良好にバスラインで接続されたネットワーク内の各機器の制御ができる。
なお、ここまで説明した実施の形態では、有線のバスラインで接続されるネットワークとしてIEEE1394方式を適用し、無線ネットワークとしてブルートゥースを適用したが、他の同様な有線ネットワークと無線ネットワークを適用して制御コマンドなどを伝送する場合にも、本発明の処理が適用できることは勿論である。
また、有線のバスラインで接続された機器として、ビデオデータやオーディオデータを扱うAV機器としたが、その他の機器をバスラインに接続して、コマンドなどの伝送で制御する場合にも適用できるものである。
この場合、例えばバスラインにパーソナルコンピュータ装置のようなデータ処理装置を接続して、そのデータ処理装置に、上述したコマンドの中継処理を行う機能を実行するプログラムとしてのソフトウェアを実装して、そのソフトウェアの実行による演算処理で、データ処理装置が無線で受信したコマンドを、バスライン上の他の機器に伝送させるようにしても良い。また、このような処理を行うプログラムを記録媒体に記録させて、ユーザなどに配付するようにしても良い。
産業上の利用可能性
以上のように、本発明によると、無線ネットワーク側の機器から送出された機器制御コマンドを、有線ネットワーク内の特定の機器に対して伝送させることが可能になり、有線のバスラインで接続されて構成されるネットワーク内の機器が、無線によるコマンドで遠隔制御できるようになる。
この場合、受信したコマンドから、有線ネットワーク内でのコマンドの届け先の機器の判断処理は、コマンドで指示される内容に合致する機器を、有線ネットワークに接続された機器から探す処理であることで、コマンドで指示される内容の判断だけで、簡単に有線ネットワーク内でのコマンドの届け先などを判断できるようになる。
また、このようにコマンドの届け先を判断するとき、有線ネットワークに接続された機器の機能を予め調べて、その調べた機能に関するデータを保持するようにしたことで、コマンドで指示される内容に対応した機器の判断が簡単にできるようになる。
さらに、受信したコマンドから、有線ネットワーク内でのコマンドの届け先の機器の判断処理は、有線ネットワーク内でストリームデータの送出元となっている機器を、届け先の機器と判断する処理としたことで、有線ネットワーク内のバスラインにストリームデータを送出させている機器を直接制御できるようになる。
さらに、受信したコマンドから、有線ネットワーク内でのコマンドの届け先の機器の判断処理は、予め機器内に登録された機器を判断する処理としたことで、その登録された機器に確実にコマンドを伝送できるようになる。
さらに、無線信号として受信したコマンドを、有線ネットワーク用にデータ構成を変換して有線ネットワークに送出させることで、有線ネットワークと無線ネットワークでコマンド構成が異なる場合に対処できる。
さらに、無線ネットワークでの機器制御コマンドはAVCTPプロトコルのコマンドであり、有線ネットワークでの機器制御コマンドはIEEE1394方式のAV/Cコマンドとしたことによって、無線ネットワークとしてAVCTPプロトコルを使用したブルートゥースなどによるネットワークが使用でき、有線ネットワークとしてAV/Cコマンドを使用したIEEE1394方式などによるネットワークが使用でき、両ネットワーク間でのコマンドのやり取りが容易にできるようになる。
【図面の簡単な説明】
図1は、本発明の一実施の形態によるシステム構成例を示すブロック図である。
図2は、本発明の一実施の形態によるモニタ受像機の構成例を示すブロック図である。
図3は、本発明の一実施の形態による携帯電話端末の構成例を示すブロック図である。
図4は、本発明の一実施の形態による近距離無線通信部の構成例を示すブロック図である。
図5は、IEEE1394方式で規定されるフレーム構造の例を示す説明図である。
図6は、プラグ、プラグコントロールレジスタ、伝送チャンネルの関係の例を示す説明図である。
図7は、AV/Cコマンドのコマンドとレスポンスの関係の例を示す説明図である。
図8は、AV/Cコマンドのコマンドとレスポンスの関係の例を更に詳しく示す説明図である。
図9は、AV/Cコマンドのデータ構造の例を示す説明図である。
図10は、AV/Cコマンドの具体例を示す説明図であり、図10Aはコマンドタイプ(Cタイプ)及びレスポンスの例、図10Bはサブユニットタイプの例、図10Cはオペコード(オペレーションコード)の例を示した図である。
図11は、AV/Cコマンドのコマンドとレスポンスの具体例を示す説明図であり、図11Aはコマンドの例、図11Bはレスポンスの例である。
図12は、プロトコルスタックの例を示す説明図である。
図13は、無線伝送の階層構造の例を示す説明図である。
図14は、伝送周波数の設定例を示す説明図である。
図15は、周波数ホッピングの状態を示す説明図である。
図16は、シングルスロットパケットの配置例を時間軸で示す説明図である。
図17は、シングルスロットパケットとマルチスロットパケットが混在した例を時間軸で示す説明図である。
図18は、マスタとスレーブ間での伝送状態の例を示す説明図であり、図18Aはマスタからの送信を、図18Bはスレーブからの送信を示している。
図19は、ネットワーク構成の例を示す説明図であり、図19Aはマスタとスレーブが1台ずつの例、図19Bはスレーブが複数台の例、図19Cは複数のマスタを有する例である。
図20は、SCOリンクの通信例を示すタイミング図であり、図20Aはマスタからの送信を、図20Bはスレーブからの送信を示している。
図21は、非同期通信方式での通信例を示すタイミング図であり、図21Aはマスタからの送信を、図21Bはスレーブ1からの送信を、図21Cはスレーブ2からの送信を、図21Dはスレーブ3からの送信を示している。
図22は、アイソクロナス通信方式の通信例を示すタイミング図であり、図22Aはマスタからの送信を、図22Bはスレーブからの送信を示している。
図23は、同報通信方式の通信例を示すタイミング図であり、図23Aはマスタからの送信を、図23Bはスレーブ1での受信を、図23Cはスレーブ2での受信を、図23Dはスレーブ3での受信を示している。
図24は、SCOリンクとALCリンクを併用する場合の通信例を示すタイミング図であり、図24Aはマスタからの送信を、図24Bはスレーブ1からの送信を、図24Cはスレーブ2からの送信を、図24Dはスレーブ3からの送信を示している。
図25は、クロックデータの構成例を示す説明図である。
図26は、アドレスの構成例を示す説明図である。
図27は、周波数ホッピングパターンの生成処理例を示す構成図である。
図28は、パケットフォーマットの例を示す説明図である。
図29は、アクセスコードの構成例を示す説明図である。
図30は、パケットヘッダの構成例を示す説明図である。
図31は、ペイロードの構成例を示す説明図である。
図32は、シングルスロットパケットのペイロードヘッダの構成例を示す説明図である。
図33は、マルチスロットパケットのペイロードヘッダの構成例を示す説明図である。
図34は、FHSパケットのペイロードの構成例を示す説明図である。
図35は、機器の状態遷移例を示す説明図である。
図36は、問い合わせの通信例を示す説明図であり、図36AはIQパケットの送信を、図36BはFHSパケットの送信を示している。
図37は、問い合わせの処理例を示すタイミング図であり、図37Aはマスタからの送信を、図37Bはスレーブでの送信及び受信を示している。
図38は、呼び出しの通信例を示す説明図であり、図38AはマスタがIDパケットをスレーブに送信する例を、図38BはマスタがFHSパケットをスレーブに送信する例を示している。
図39は、呼び出しの処理例を示すタイミング図であり、図39Aはマスタからの送信を、図39Bはスレーブからの送信を示している。
図40は、AVDCPにおける階層構造の例を示す説明図である。
図41は、AVDCPのデータ伝送時のパケット構成の例を示す説明図であり、図41Aはパケット全体の例を、図41Bはペイロードの例を、図41CはAVCTPメッセージの例を示している。
図42は、AVDCPでのコネクションの確立とコマンド,レスポンスの伝送例を示す説明図である。
図43は、AVDCPでのリリースコネクションの例を示す説明図である。
図44は、AVDCPでのデータ構造例を示す説明図である。
図45は、パススルーコマンドのフォーマット例を示す説明図である。
図46は、パススルーコマンドのオペレーションIDの例を示す説明図である。
図47は、本発明の一実施の形態によるコマンドの伝送例を示す説明図である。
図48は、本発明の一実施の形態による機器情報収集処理例を示すフローチャートである。
図49は、本発明の一実施の形態によるコマンドの宛先判定処理例を示すフローチャートである。
引用符号の説明
1‥‥‥ モニタ受像機
2‥‥‥ビデオカセット記録再生装置
3‥‥‥ハードディスク記録再生装置
4‥‥‥チューナ
5‥‥‥携帯電話端末
6‥‥‥データ端末
10‥‥‥IEEE1394バス処理部
11‥‥‥バスポート部
12‥‥‥バスインターフェースブロック
13‥‥‥パネルコントローラー
14‥‥‥パネルサブユニット
15‥‥‥モニタサブユニット
20‥‥‥無線ネットワーク処理部
21‥‥‥アンテナ
22‥‥‥近距離無線通信部
23‥‥‥無線ネットワークインターフェイス部
24‥‥‥パネルサブユニット
25‥‥‥IEEE1394バス/無線ネットワーク変換部
31‥‥‥映像データ受信ブロック
32‥‥‥映像表示部
51‥‥‥アンテナ
52‥‥‥デュプレクサ
53‥‥‥受信回路
54‥‥‥デジタルシグナルプロセッサ(DSP)
55,56‥‥‥スピーカ
57‥‥‥マイクロホン
58‥‥‥送信回路
59‥‥‥制御部
59a‥‥‥ROM
59b‥‥‥RAM
59c‥‥‥メモリカード
60‥‥‥操作部
61‥‥‥表示部
62‥‥‥近距離無線通信部
63‥‥‥アンテナ
80‥‥‥機能処理ブロック
90‥‥‥近距離無線通信部
91‥‥‥アンテナ
92‥‥‥送受信処理部
93‥‥‥データ処理部
94‥‥‥インターフェース部
95‥‥‥コントローラー
Claims (16)
- 所定の有線ネットワークに接続された第1の機器に対して、所定の無線ネットワークを介して第2の機器から機器制御コマンドを伝送したとき、
上記第1の機器は、受信した機器制御コマンドの判定を行い、その判定で上記有線ネットワークに接続された所定の機器を制御するコマンドであると判断したとき、該当するコマンドを上記有線ネットワークを介して上記所定の機器に伝送するようにした
データ伝送方法。 - 請求の範囲第1項記載のデータ伝送方法において、
上記第1の機器での、受信したコマンドから上記所定の機器の判断処理は、上記コマンドで指示される内容に合致する機器を、上記有線ネットワークに接続された機器から探す処理である
データ伝送方法。 - 請求の範囲第2項記載のデータ伝送方法において、
上記第1の機器は、上記有線ネットワークに接続された機器の機能を予め調べて、その調べた機能に関するデータを保持するようにした
データ伝送方法。 - 請求の範囲第1項記載のデータ伝送方法において、
上記第1の機器での、受信したコマンドから上記所定の機器の判断処理は、上記有線ネットワーク内でストリームデータの送出元となっている機器を、上記所定の機器と判断する処理である
データ伝送方法。 - 請求の範囲第1項記載のデータ伝送方法において、
上記第1の機器での、受信したコマンドから上記所定の機器の判断処理は、予め第1の機器に登録された機器を、上記所定の機器と判断する処理である
データ伝送方法。 - 請求の範囲第1項記載のデータ伝送方法において、
上記第1の機器内で、無線信号として受信したコマンドを、有線ネットワーク用にデータ構成を変換して有線ネットワークに送出させる
データ伝送方法。 - 請求の範囲第1項記載のデータ伝送方法において、
上記第2の機器からの機器制御コマンドは、AVCTPプロトコルのコマンドであり、また上記所定の機器を制御するコマンドは、IEEE1394方式のAV/Cコマンドであることを特徴とする
データ伝送方法。 - 所定の有線ネットワークを構成するバスラインが接続されて、上記有線ネットワーク内の他の機器と双方向にデータ通信が可能な第1の通信手段と、
所定の無線ネットワークを構成する他の機器と無線通信を行って双方向にデータ通信が可能な第2の通信手段と、
上記第2の通信手段で所定の機器制御コマンドを受信したとき、その受信した機器制御コマンドのコマンドの届け先を判断し、判断した届け先が上記有線ネットワークで接続された機器であるとき、上記第1の通信手段から上記機器制御コマンドを送出させる制御手段とを備えた
データ伝送装置。 - 請求の範囲第8項記載のデータ伝送装置において、
上記制御手段での、上記機器制御コマンドの届け先判断処理は、上記コマンドで指示される内容に合致する機器を、上記有線ネットワークに接続された機器から探す処理である
データ伝送装置。 - 請求の範囲第9項記載のデータ伝送装置において、
上記制御手段は、上記有線ネットワークに接続された機器の機能を予め調べ、その調べた機能に関するデータを保持し、この保持されたデータを利用してコマンドで指示される内容と合致する機器を探すようにした
データ伝送装置。 - 請求の範囲第8項記載のデータ伝送装置において、
上記制御手段での、上記機器制御コマンドの届け先判断処理は、上記有線ネットワーク内でストリームデータの送出元となっている機器を、届け先と判断する
データ伝送装置。 - 請求の範囲第8項記載のデータ伝送装置において、
上記制御手段での、上記機器制御コマンドの届け先判断処理は、予め登録された機器を届け先と判断する
データ伝送装置。 - 請求の範囲第8項記載のデータ伝送装置において、
上記第2の通信手段が受信したコマンドを、上記第1の通信手段で送出させるコマンドに変換する変換手段を備えた
データ伝送装置。 - 請求の範囲第8項記載のデータ伝送装置において、
上記第2の通信手段による所定の機器制御コマンドはAVCTPプロトコルのコマンドであり、また上記第1の通信手段による機器制御コマンドはIEEE1394方式のAV/Cコマンドであることを特徴とする
データ伝送装置。 - 所定の有線ネットワークに接続された第1の機器に対して、所定の無線ネットワークを介して第2の機器から機器制御コマンドを伝送したとき、
上記第1の機器は、受信した機器制御コマンドの判定を行い、その判定で上記有線ネットワークに接続された所定の機器を制御するコマンドであると判断したとき、該当するコマンドを上記有線ネットワークを介して上記所定の機器に伝送する処理を実行させるプログラムが記録された
記録媒体。 - 所定の有線ネットワークに接続された第1の機器に対して、所定の無線ネットワークを介して第2の機器から機器制御コマンドを伝送したとき、
上記第1の機器は、受信した機器制御コマンドの判定を行い、その判定で上記有線ネットワークに接続された所定の機器を制御するコマンドであると判断したとき、該当するコマンドを上記有線ネットワークを介して上記所定の機器に伝送する処理を実行させることを特徴とする
プログラム。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001007933 | 2001-01-16 | ||
JP2001007933 | 2001-01-16 | ||
JP2001206775 | 2001-07-06 | ||
JP2001206775 | 2001-07-06 | ||
PCT/JP2002/000246 WO2002056548A1 (fr) | 2001-01-16 | 2002-01-16 | Procede de transmission de donnees, emetteur de donnees, support d'enregistrement et programme |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2002056548A1 true JPWO2002056548A1 (ja) | 2004-05-20 |
Family
ID=26607782
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002557084A Pending JPWO2002056548A1 (ja) | 2001-01-16 | 2002-01-16 | データ伝送方法、データ伝送装置、記録媒体及びプログラム |
Country Status (5)
Country | Link |
---|---|
US (1) | US20030188028A1 (ja) |
EP (1) | EP1261174A1 (ja) |
JP (1) | JPWO2002056548A1 (ja) |
KR (1) | KR20020082882A (ja) |
WO (1) | WO2002056548A1 (ja) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1328134A4 (en) * | 2000-10-25 | 2009-06-17 | Panasonic Corp | CONTROLLED DEVICE IN A NET APPARATUS, CONTROL DEVICE AND ITS CONTROL PROCESS |
US6973071B1 (en) * | 2001-03-06 | 2005-12-06 | Rfmd Wpan, Inc. | Method and apparatus for controlling the flow of data in a wireless communication system |
KR100611173B1 (ko) * | 2004-06-04 | 2006-08-10 | 삼성전자주식회사 | 셋탑박스를 이용한 영상시스템에서 제어데이터의 전송방법 |
KR100792281B1 (ko) | 2005-12-16 | 2008-01-07 | 삼성전자주식회사 | 네트워크 id 충돌 탐지 및 충돌 해결방법 |
EP1826679B1 (en) * | 2005-12-30 | 2013-06-26 | Psion Inc. | Bluetooth communication through a single virtual port |
US7570917B2 (en) * | 2005-12-30 | 2009-08-04 | Psion Teklogix Inc. | Bluetooth communication through a single virtual port |
CA2531896C (en) * | 2005-12-30 | 2010-03-23 | Psion Teklogix Inc. | Bluetooth communication through a single virtual port |
JP4326557B2 (ja) * | 2006-11-08 | 2009-09-09 | フェリカネットワークス株式会社 | 無線通信システム、情報通信端末、携帯電話、リーダライタ、通信方法およびコンピュータプログラム |
US7995687B2 (en) * | 2007-03-05 | 2011-08-09 | Broadcom Corporation | Fast and reliable channel classification algorithms in bluetooth networks to detect and avoid 2.4 GHz interferers |
CN101388678B (zh) * | 2007-09-10 | 2013-02-06 | 北京三星通信技术研究有限公司 | 无线麦克风信标系统中保护设备的初始化方法及保护设备 |
US9235681B2 (en) * | 2011-10-04 | 2016-01-12 | Smith & Nephew, Inc. | System and method for intersystem device exchange |
JP6172581B2 (ja) * | 2012-03-26 | 2017-08-02 | パナソニックIpマネジメント株式会社 | リモコン制御システム |
RU2647687C2 (ru) * | 2012-10-26 | 2018-03-16 | Эбсолют Софтвэар Корпорейшн | Устройство мониторинга, использующее множество серверов, оптимизированных для разных типов связи |
CN105094900A (zh) * | 2015-07-13 | 2015-11-25 | 小米科技有限责任公司 | 一种下载控制程序的方法及装置 |
US10306072B2 (en) * | 2016-04-12 | 2019-05-28 | Lg Electronics Inc. | Method and device for controlling further device in wireless communication system |
CN107517069B (zh) * | 2017-08-22 | 2020-06-02 | 深圳市华信天线技术有限公司 | 跳频同步的方法、装置、接收机以及发射机 |
KR101967299B1 (ko) * | 2017-12-19 | 2019-04-09 | 엘지전자 주식회사 | 방송 신호를 수신하는 차량용 수신 장치 및 방송 신호를 수신하는 차량용 수신 방법 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6219736B1 (en) * | 1997-04-24 | 2001-04-17 | Edwin E. Klingman | Universal serial bus (USB) RAM architecture for use with microcomputers via an interface optimized for integrated services device network (ISDN) |
US6381507B1 (en) * | 1998-07-01 | 2002-04-30 | Sony Corporation | Command pass-through functionality in panel subunit |
US6556221B1 (en) * | 1998-07-01 | 2003-04-29 | Sony Corporation | Extended elements and mechanisms for displaying a rich graphical user interface in panel subunit |
US6615293B1 (en) * | 1998-07-01 | 2003-09-02 | Sony Corporation | Method and system for providing an exact image transfer and a root panel list within the panel subunit graphical user interface mechanism |
US7131135B1 (en) * | 1998-08-26 | 2006-10-31 | Thomson Licensing | Method for automatically determining the configuration of a multi-input video processing apparatus |
JP3576019B2 (ja) * | 1998-12-28 | 2004-10-13 | 株式会社東芝 | 通信ノード |
JP3808660B2 (ja) * | 1999-03-31 | 2006-08-16 | 株式会社東芝 | 通信システム及び端末装置 |
JP2000295674A (ja) * | 1999-04-07 | 2000-10-20 | Matsushita Electric Ind Co Ltd | 遠隔制御装置、被遠隔制御装置および遠隔制御システム |
CN1214588C (zh) * | 1999-05-25 | 2005-08-10 | 索尼公司 | 传送方法、传送装置及传送系统 |
EP1852836A3 (en) * | 1999-05-26 | 2011-03-30 | Johnson Controls Technology Company | Wireless communications system and method |
JP3583667B2 (ja) * | 1999-09-30 | 2004-11-04 | 株式会社東芝 | 無線端末装置並びにデータ転送方法及び制御情報通知方法 |
JP3715494B2 (ja) * | 1999-12-27 | 2005-11-09 | 株式会社東芝 | 情報転送方法並びに無線端末及び無線ゲートウェイ装置 |
JP4396011B2 (ja) * | 2000-08-22 | 2010-01-13 | ソニー株式会社 | 情報制御方法、情報処理装置および情報制御システム |
EP1328134A4 (en) * | 2000-10-25 | 2009-06-17 | Panasonic Corp | CONTROLLED DEVICE IN A NET APPARATUS, CONTROL DEVICE AND ITS CONTROL PROCESS |
-
2002
- 2002-01-16 KR KR1020027012114A patent/KR20020082882A/ko not_active Application Discontinuation
- 2002-01-16 JP JP2002557084A patent/JPWO2002056548A1/ja active Pending
- 2002-01-16 EP EP02710304A patent/EP1261174A1/en not_active Withdrawn
- 2002-01-16 US US10/221,531 patent/US20030188028A1/en not_active Abandoned
- 2002-01-16 WO PCT/JP2002/000246 patent/WO2002056548A1/ja not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
EP1261174A1 (en) | 2002-11-27 |
KR20020082882A (ko) | 2002-10-31 |
WO2002056548A1 (fr) | 2002-07-18 |
US20030188028A1 (en) | 2003-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1187414A1 (en) | Data transmission method and data transmission apparatus | |
JPWO2002056548A1 (ja) | データ伝送方法、データ伝送装置、記録媒体及びプログラム | |
EP1198153A1 (en) | Data transmission method, data transmission system, and data transmission device | |
JP3785108B2 (ja) | 通信方法、通信装置、基地局装置及び端末装置 | |
CN113366439B (zh) | 一种连接蓝牙设备方法及设备 | |
US7130584B2 (en) | Method and device for identifying and pairing Bluetooth devices | |
JP3872786B2 (ja) | コネクションレスのブロードキャストが可能な無線通信方法 | |
US7756100B2 (en) | Scalable synchronous packet transmit scheduler | |
US20040162027A1 (en) | Bluetooth wireless communication apparatus and method of notifying users of devices connectable to ad-hoc networks to establish effective connections based on a user's selection | |
US20050086273A1 (en) | Electronic device having communication function | |
EP1100243A2 (en) | Telephone set, communication adaptor, home appliance control method, and program recording medium | |
JP3906156B2 (ja) | 通信アダプタおよび方法 | |
KR20040077539A (ko) | 주파수 호핑 시퀀스의 로테이션을 갖는 무선 사설망 | |
US8270903B2 (en) | Method for displaying information in mobile communication terminal using bluetooth | |
JP2002291067A (ja) | データ伝送方法、データ伝送システム及びデータ伝送装置 | |
CN113728577A (zh) | 用于使用选择性中继来构造协议数据单元的系统和方法 | |
JP5179002B2 (ja) | 電話システム、電話制御装置、およびプログラム | |
US6754469B1 (en) | Method for reducing temporal connections among bluetooth devices | |
JP2002125039A (ja) | 通信システム、および、身体装着型無線通信端末。 | |
KR100679038B1 (ko) | 무선을 이용한 usb 장치 간 접속방법 및 시스템 | |
WO2001091504A1 (fr) | Procede, systeme et dispositif de transmission de donnees | |
US8929264B2 (en) | Transmitting-receiving apparatus | |
JP2001203788A (ja) | 電話機、通信アダプタ装置、家電機器の制御方法及びプログラム記録媒体 | |
KR20020079920A (ko) | 데이터 전송 시스템, 데이터 전송 방법, 및 전자 기기 | |
JP2006019881A (ja) | 無線ネットワーク通信方法および無線ネットワーク通信システム |