(57)【特許請求の範囲】
【請求項１】
それぞれ他のノードと信号を送受信する通信手段を有する下位層を備えた複数のノードが接続されたネットワークにおける１つのノードを構成する通信装置であって、
前記下位層を管理する第１の上位層と、
前記ネットワークに接続された他のノードのうち特定の末端ノードの下位層を前記ネットワーク越しに管理する第２の上位層と、
管理対象である前記特定の末端ノードの機能に関する情報を記憶する記憶手段とを備えたことを特徴とする通信装置。
【請求項２】
前記第２の上位層は、前記通信手段が受信する命令に基づき、前記特定の末端ノードの下位層を制御するための制御信号を生成する生成手段とを有する請求項１記載の通信装置。
【請求項３】
前記第２の上位層は、さらに前記特定の末端ノードの下位層に、前記ネットワークを介して前記制御信号を書き込む制御信号書込み手段とを有する請求項２記載の通信装置。
【請求項４】
前記生成手段は、前記命令を記憶し、前記記憶した命令を解釈することにより前記制御信号を生成する請求項２又は３記載の通信装置。
【請求項５】
前記記憶手段は、前記ネットワークに接続された他のノードからアクセス可能である請求項１〜４のいずれか１つに記載の通信装置。
【請求項６】
さらに、管理対象である前記特定の末端ノードが前記ネットワークに接続された時に、当該末端ノードの機能に関する情報を前記記憶手段に書き込む情報書込み手段を有する請求項１〜５のいずれか１つに記載の通信装置。
【請求項７】
さらに、管理対象である前記特定の末端ノードが前記ネットワークから切断された時に、当該末端ノードの機能に関する情報を前記記憶手段から削除する情報削除手段を有する請求項１〜６のいずれか１つに記載の通信装置。
【請求項８】
さらに、前記特定の末端ノードが有する自機を管理するノードの情報を記憶する管理ノード記憶手段に前記管理するノードの情報を書き込む管理ノード情報書込み手段を有する請求項１〜７のいずれか１つに記載の通信装置。
【請求項９】
前記第１の上位層は、前記下位層が行う他のノードとの通信コネクションの設定を管理するものであり、
前記第２の上位層は、前記特定の末端ノードの下位層が行う他のノードとの通信コネクションの設定を管理するものである請求項１〜８のいずれか１つに記載の通信装置。
【請求項１０】
ネットワークに接続された他のノードと信号を送受信する通信手段を有する下位層と、該下位層に対する信号を前記通信手段が受信した場合には、該信号に応じた処理を行う処理手段と、前記通信手段が上位層に対する信号を受信したときは、上位層を備えていないことを前記他のノードに通知する通知手段とを有し、前記ネットワーク上の１つのノードを構成する末端ノードと、
前記ネットワークに接続された他のノードと信号を送受信する通信手段を有する下位層と、該下位層を管理する第１の上位層と、前記末端ノードの下位層を前記ネットワークを介して管理する第２の上位層とを有し、前記ネットワーク上の１つのノードを構成する統括ノードと
を有する通信システム。
【請求項１１】
前記統括ノードの第２の上位層は、前記通信手段が受信する命令に基づき、前記末端ノードの下位層を制御するための制御信号を生成する生成手段を有する請求項１０記載の通信システム。
【請求項１２】
前記統括ノードの第２の上位層は、さらに前記末端ノードの下位層に、前記ネットワークを介して前記制御信号を書き込む制御信号書込み手段を有する請求項１１記載の通信システム。
【請求項１３】
前記生成手段は、前記命令を記憶し、前記記憶した命令を解釈することにより前記制御信号を生成する請求項１１又は１２記載の通信システム。
【請求項１４】
前記統括ノードは、さらに、前記末端ノードの機能に関する情報を記憶する記憶手段を有する請求項１０〜１３のいずれか１つに記載の通信システム。
【請求項１５】
前記記憶手段は、前記ネットワークに接続された他のノードからアクセス可能である請求項１４記載の通信システム。
【請求項１６】
前記統括ノードは、さらに、前記末端ノードが前記ネットワークに接続された時に、当該末端ノードの機能に関する情報を前記記憶手段に書き込む情報書込み手段を有する請求項１４又は１５記載の通信システム。
【請求項１７】
前記統括ノードは、さらに、前記末端ノードが前記ネットワークから切断された時に、当該末端ノードの機能に関する情報を前記記憶手段から削除する情報削除手段を有する請求項１４〜１６のいずれか１つに記載の通信システム。
【請求項１８】
前記末端ノードは、前記統括ノードの情報を記憶する統括ノード記憶手段を有する請求項１０〜１７のいずれか１つに記載の通信システム。
【請求項１９】
前記統括ノードは、さらに、前記末端ノードが有する前記統括ノード記憶手段に前記ネットワークを介して前記統括ノードの情報を書き込むノード情報書込み手段を有する請求項１８記載の通信システム。
【請求項２０】
前記統括ノードの第１の上位層は、前記統括ノードの下位層が行う他のノードとの通信コネクションの設定を管理するものであり、
前記統括ノードの第２の上位層は、前記特定の末端ノードの下位層が行う他のノードとの通信コネクションの設定を管理するものである請求項１０〜１９のいずれか１つに記載の通信システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、統括ノードと末端ノードを持つ通信装置に関し、より詳しくは、他のノードを管理することが出来る統括ノードと、該統括ノードによって管理される末端ノードに関する。
【０００２】
【従来の技術】
大容量高速転送が可能なシリアルインターフェイスの規格として、ＩＥＥＥ１３９４が知られている。このＩＥＥＥ１３９４規格に準拠したインターフェイス又は該インターフェイスを有する機器（以下、まとめてＩＥＥＥ１３９４デバイスと呼ぶ）は、それぞれが１つのノードとしてハードウェアからなるＩＥＥＥ１３９４バスプロトコル（下位層）と、その上にデバイスのコントロールやアイソクロナス転送のコントロールなどのプロトコル（上位層）をソフトウェアで実装している。
【０００３】
図９は、ｍＬＡＮ（商標）上位層を実装した一般的なＡＶ（オーディオ・ビジュアル）装置のプロトコルスタックの一例を表す概念図である。ｍＬＡＮとは、ＩＥＥＥ１３９４規格に準拠し、その上位に位置するアプリケーションで、音楽のためのデジタルネットワークシステムである。
【０００４】
下位層は、例えば、物理層（Ｐｈｙｓｉｃａｌ  Ｌａｙｅｒ）、リンク層（Ｌｉｎｋ  Ｌａｙｅｒ）、トランザクション層（Ｔｒａｎｓａｃｔｉｏｎ  Ｌａｙｅｒ）及びバス管理（Ｓｅｒｉａｌ  Ｂｕｓ  Ｍａｎａｇｅｍｅｎｔ）の各層を含んで構成される。
【０００５】
物理層では、物理的・電気的なインターフェイスが規定されている。物理層は、一般的にハードウェアで構成されている。
【０００６】
リンク層では、サブアクションと呼ばれる一方向の転送サービス、及びパケットの送受信に関するサービス（Ｐａｃｋｅｔ  Ｈａｎｄｌｅｒ）が提供される。リンク層も、物理層と同様、一般的にはハードウェアで構成される。リンク層では、例えば、アシンクロナス（非同期）転送（Ａｓｙｎｃｒｏｎｏｕｓ  Ｔｒａｎｓｍｉｓｓｉｏｎ）、及びアイソクロナス転送（Ｉｓｏｃｈｒｏｎｏｕｓ  Ｔｒａｎｓｍｉｓｓｉｏｎ）に関するサービスが提供される。
【０００７】
また、特に、アイソクロナス転送については、オーディオ信号やビデオ信号等の高速な処理を必要とする信号を扱うので、ハードウェアであるリンク層で、全てのサービスを提供している。
【０００８】
トランザクション層では、アシンクロナス転送に関する処理が行われる。トランザクションとは、要求−応答型のデータ転送であり、読み込み（Ｒｅａｄ）トランザクション、書き込み（Ｗｒｉｔｅ）トランザクション、ロック（Ｌｏｃｋ）トランザクションの三種類がある。
【０００９】
読み込みトランザクションは、ターゲットの特定アドレス空間からデータの読み出しを行うためのトランザクションであり、書き込みトランザクションは、ターゲットの特定アドレス空間へのデータの書き込みを行うためのトランザクションである。ロックトランザクションは、参照データに基づき、ターゲット上の特定アドレス空間のデータを更新するためのトランザクションである。
【００１０】
バス管理は、バス上の資源を集中的に管理するためのモジュールである。バス管理では、電源供給の管理、トポロジーマップとスピードマップの管理、アイソクロナス・リソースの管理等が行われる。
【００１１】
上位層は、下位層及びノード全体を管理するためのソフトウェアであり、例えば、１３９４ＡＶプロトコル（ＩＥＣ−６１８８３）、及びｍＬＡＮ上位層により構成されている。
【００１２】
１３９４ＡＶプロトコルでは、アイソクロナス・パケットのデータ内容を表現するためのＣＩＰ（Ｃｏｍｍｏｎ  Ｉｓｏｃｈｒｏｎｏｕｓ  Ｐａｃｋｅｔ）フォーマット、仮想的な「プラグ」を定義してコネクションの管理を行うためのＣＭＰ（Ｃｏｎｎｅｃｔｉｏｎ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）、ＩＥＥＥ１３９４バスに接続される他の機器を管理するためのＦＣＰ（Ｆｕｎｃｔｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）等が定義されている。
【００１３】
ｍＬＡＮ上位層は、ＩＥＥＥ１３９４規格上でオーディオ／音楽情報の転送を行うためのプロトコル階層である。ｍＬＡＮ上位層は、オーディオ／音楽情報転送プロトコルとコネクション管理プロトコルから構成されており、どちらのプロトコルも１３９４ＡＶプロトコルに準拠している。
【００１４】
オーディオ／音楽情報転送プロトコルは、ＣＩＰの定義にオーディオ／音楽情報の転送のためのフォーマットを追加するものである。コネクション管理プロトコルは、ＣＭＰをインテリジェント化し、各ノード上での自律的なコネクション管理を行うためのプロトコルである。
【００１５】
【発明が解決しようとする課題】
これら上位層及び下位層は、その機能に多少の差はあっても、ＩＥＥＥ１３９４バスに接続される全てのＩＥＥＥ１３９４デバイスに実装されている。
【００１６】
上位層は、下位層に比べて複雑であるため、上位層を実装するために必要なハードウェア資源が下位層に比べて多くなってしまう。このため、全てのＩＥＥＥ１３９４デバイスに、上位層を実装すると製造コストが上がってしまう。
【００１７】
また、上位層は、下位層に比べてユーザインターフェイスに関係する場合が多いため、ユーザからの改善要求をフィードバックする機会が多くなり、新しい仕様に容易に変更できる構造が望ましいが、全てのＩＥＥＥ１３９４デバイスの上位層を、容易にアップグレードできる構造にすると製造コストを上げる要因になってしまう。
【００１８】
本発明の目的は、製造コストをおさえたＩＥＥＥ１３９４規格に準拠した機器を提供することである。
【００１９】
また、本発明の他の目的は、他のノードを管理することができるＩＥＥＥ１３９４規格に準拠した機器を提供することである。
【００２０】
【課題を解決するための手段】
本発明の一観点によれば、それぞれ他のノードと信号を送受信する通信手段を有する下位層を備えた複数のノードが接続されたネットワークにおける１つのノードを構成する通信装置は、前記下位層を管理する第１の上位層と、前記ネットワークに接続された他のノードのうち特定の末端ノードの下位層を前記ネットワーク越しに管理する第２の上位層と、管理対象である前記特定の末端ノードの機能に関する情報を記憶する記憶手段とを備えたことを特徴とする。
【００２２】
さらに、本発明の他の観点によれば、通信システムは、ネットワークに接続された他のノードと信号を送受信する通信手段を有する下位層と、該下位層に対する信号を前記通信手段が受信した場合には、該信号に応じた処理を行う処理手段と、前記通信手段が上位層に対する信号を受信したときは、上位層を備えていないことを前記他のノードに通知する通知手段とを有し、前記ネットワーク上の１つのノードを構成する末端ノードと、前記ネットワークに接続された他のノードと信号を送受信する通信手段を有する下位層と、該下位層を管理する第１の上位層と、前記末端ノードの下位層を前記ネットワークを介して管理する第２の上位層とを有し、前記ネットワーク上の１つのノードを構成する統括ノードとを有する。
【００２３】
【発明の実施の形態】
図１は、本発明の実施例によるＩＥＥＥ１３９４バス１の一例を表すブロック図である。
【００２４】
本発明の実施例によるＩＥＥＥ１３９４バス１は、例えば、上位層及び下位層を実装する一般ノード２ａ及び一般ノード２ｂ、上位層を持たない末端ノード３ａ、上位層及び下位層及び他のノード（末端ノード３ａ、３ｂ）の上位層を実装する統括ノード４をＩＥＥＥ１３９４ケーブルで接続することにより構成される。
【００２５】
一般ノード２ａ及び２ｂは、ＩＥＥＥ１３９４インターフェイスを有する電子楽器、音響機器、ＡＶ機器、パーソナルコンピュータ、又は各種外部記憶装置等のいずれか１つである。一般ノード２ａ及び２ｂは、それぞれ上位層Ａ、下位層Ａ、上位層Ｅ、下位層Ｅを実装している。
【００２６】
末端ノード３ａは、ＩＥＥＥ１３９４インターフェイスを有する電子楽器、音響機器、ＡＶ機器、パーソナルコンピュータ、又は各種外部記憶装置等のいずれか１つであり、例えば、パワードスピーカ等である。末端ノード３ａは、上位層を実装しておらず、下位層Ｂのみを実装している。末端ノード３ａは、上位層を実装していないので、単体では、一般ノード２ａ又は２ｂと上位層で定義されるプロトコルによる正常な通信を行うことが出来ない。
【００２７】
このように、末端ノード３ａは、上位層を実装していないので、通常上位層で処理される１３９４ＡＶプロトコルに基づくコマンドやｍＬＡＮ規格に基づくコマンドを単体で処理することは出来ないが、各種トランザクションやアイソクロナス転送などは下位層に実装されているので、単体で処理することが出来る。
【００２８】
例えば、末端ノード３ａが、パワードスピーカである場合は、発音するための音声信号等は、通常アイソクロナス転送により送信されるので、下位層だけで処理することが出来る。一方、受信チャンネル等のコネクションの設定、ボリュームコントロールなどは、通常、上位層によりコマンドが受付けられ、該コマンドに対応する機能レジスタに書き込みが行われるので、下位層しか持たない末端ノード３ａ単体では処理することが出来ない。
【００２９】
末端ノード３ａは、自ノードが末端ノードであって、それを統括するノードに必要な上位層の種類を特定するＩＤを、後述のＣＳＲ（Ｃｏｎｔｒｏｌ  ａｎｄＳｔａｔｕｓ  Ｒｅｇｉｓｔｅｒｓ）メモリに記録している。また、現在、自ノードを統括している統括ノードのＧＵＩＤ（Ｇｒｏｂａｌ Ｕｎｉｑｕｅ Ｉｄｅｎｔｉｆｉｅｒ）をＣＳＲメモリに記録する。
【００３０】
統括ノード４は、ＩＥＥＥ１３９４インターフェイスを有する電子楽器、音響機器、ＡＶ機器、パーソナルコンピュータ、又は各種外部記憶装置等のいずれか１つであり、例えば外部記憶装置を有するパーソナルコンピュータにより構成される。統括ノード４は、下位層Ｃと、自身の上位層Ｃに加えて、末端ノード３ａ及び３ｂの下位層を管理するための上位層Ｂ及びＤを実装している。これらの上位層Ｂ及びＤが、末端ノード３ａ及び３ｂの上位層の代理をして、一般ノード２ａ又は２ｂと、上位層で定義されるプロトコルによる通信を行うことが出来る。
【００３１】
統括ノード４は、自己が統括することが出来る末端ノードのＧＵＩＤを、該末端ノードを管理するためのソフトウェア（上位層）と関連付けて記録している。
【００３２】
末端ノード３ｂは、末端ノード３ａとほぼ同様の構成であるが、上位層Ｄ’及び下位層Ｄを実装している。末端ノード３ｂは、実装している上位層Ｄ’の機能を停止して、統括ノード４の上位層Ｄにより管理することができる。なお、末端ノード３ｂの上位層Ｄ’を、一部の機能しか管理しないものにして、不足する機能を統括ノード４の上位層Ｄにより管理してもよい。実装している上位層Ｄ’の機能は、外部からのコマンドにより実行又は停止することが出来る。
【００３３】
末端ノード３ｂも、末端ノード３ａと同様に、自ノードが末端ノードであって、それを統括するノードに必要な上位層の種類を特定するＩＤを、ＣＳＲメモリに記録している。また、実装している上位層Ｄ’の機能を停止する場合には、現在、自ノードを統括している統括ノードのＧＵＩＤをＣＳＲメモリに記録する。
【００３４】
図２は、本実施例による末端ノード３ａ（又は３ｂ）のＣＳＲメモリの一例を表す概念図である。
【００３５】
末端ノード３ａ（又は３ｂ）のＣＳＲメモリは、例えば、ＣＳＲコアレジスタ、シリアルバスレジスタ、Ｙアドレス情報を有するコンフィグＲＯＭ、及びＡＶ／Ｃ領域とＹ領域を有する機器固有レジスタを含んで構成される。
【００３６】
ＣＳＲコアレジスタ及びシリアルバスレジスタは周知のＩＥＥＥ１３９４デバイスのものと同様の構成である。
【００３７】
Ｙアドレス情報は、他のノード（特に統括ノード）に対して、Ｙ領域に含まれるリードオンリ領域、リードライト領域、及びリードライト領域内の統括ノードＩＤ、下位層機能レジスタ領域、その他領域のアドレスを公開している。
【００３８】
統括ノードＩＤには、自機を管理している統括ノードのＧＵＩＤを記録する。
【００３９】
統括ノードＩＤにＧＵＩＤを記録されたノード（統括ノード）は、このＹアドレス情報を読み込むことにより、末端ノードを管理するために必要なレジスタのアドレスを検出することが出来る。
【００４０】
また、統括ノードＩＤにＧＵＩＤを記録されたノードのみが機器固有レジスタに対する書き込みを出来るように設定してもよい。このようにすると、統括ノードＩＤにＧＵＩＤを記録されていない統括ノードが同一バス上に存在する場合にも、統括ノード同士が競合する事を防止できる。
【００４１】
図３は、本実施例による統括ノード４のＣＳＲメモリの一例を表す概念図である。
【００４２】
統括ノード４のＣＳＲメモリは、例えば、ＣＳＲコアレジスタ、シリアルバスレジスタ、コンフィグＲＯＭ、及びＡＶ／Ｃ領域を有する機器固有レジスタを含んで構成される。
【００４３】
ＣＳＲコアレジスタ及びシリアルバスレジスタは周知のＩＥＥＥ１３９４デバイスのものと同様の構成であり、その他の構成についても図２の末端ノード３ａ（又は３ｂ）のＣＳＲメモリとほぼ同様である。
【００４４】
この統括ノード４のＣＳＲメモリの特徴は、コンフィグＲＯＭ内に自身の情報以外に、管理下にある末端ノードの機能に関する情報を記録していることである。これらの管理下にある末端ノードの機能をコンフィグＲＯＭに追加することにより、他のノードからは、統括ノードが末端ノードの機能を有しているように見える。
【００４５】
図４は、一般ノード２ａと一般ノード２ｂ間の通信を表すブロック図である。
【００４６】
まず、末端ノード３ａが一般ノード２ａ（送信側）から、上位層Ｅの機能に対応するアドレスに対するコマンド書き込み命令（パケット１）を受信する。次に、一般ノード２ｂ（受信側）の下位層Ｅは、上記書き込み命令に基づき、上位層Ｅの機能に対するアドレスへのコマンド書き込みを実行する。
【００４７】
その後、一般ノード２ｂの上位層Ｅは、書き込み命令（パケット１）を受付け、上記コマンドに対応するレジスタ（機能レジスタ）への書き込み命令を下位層Ｅに対して行う。すなわち、上位層Ｅは、受信したコマンドを解釈し、当該コマンドが管理しようとする機能に対応する下位層Ｅのレジスタ（機能レジスタ）に、当該コマンドの内容に応じた制御データを書き込む。以上により、下位層Ｅは、レジスタに書き込まれた制御データに基づいて一般ノード２ａの送信したコマンドに対応した動作を行うことが出来る。
【００４８】
正常に書き込みが行われたら、一般ノード２ｂの下位層Ｅは、一般ノード２ａに対して、上記書き込み命令が正常に行われたことを示すパケット２を送信する。
【００４９】
このように、上位層を持つノード同士では、上位層を介すことにより、機能レジスタへの書き込みを行い、お互いに他の機器を管理することが出来る。
【００５０】
図５は、本実施例による一般ノード２ａと末端ノード３ａ間の通信を表すブロック図である。なお、この例では統括ノード４がＩＥＥＥ１３９４バス１上に存在しないものとする。
【００５１】
まず、一般ノード２ａ（送信側）から、上位層の機能に対応するアドレスに対するコマンド書き込み命令（パケット１）を受信する。次に、末端ノード３ａ（受信側）の下位層Ｂは、上記書き込み命令に応じて、書き込みを実行しようとする。しかし、末端ノード３ａには、上位層が実装されていないため、該上位層の機能に対応するアドレスが存在せず、下位層Ｂは、エラー（パケット２）を一般ノード２ａに対して送信する。すなわち、末端ノード３ａには上位層がないので、受信したパケット２に応じたコマンドの書き込みは失敗し、したがって、そのコマンドに応じた下位層Ｂに対する制御が行われることはない。
【００５２】
このように、末端ノード３ａは、上位層の機能に対応するコマンドに対してエラーを帰すので、末端ノード３ａが上位層を実装してないことがわかる。
【００５３】
そこで、本実施例では、図６に示すように統括ノード４が、末端ノード３ａの上位層を実装して、一般ノード２ａとの通信を代理して行う。
【００５４】
図６は、本実施例による統括ノード４を介した一般ノード２ａと末端ノード３ａ間の通信を表すブロック図である。なお、統括ノード４は、後述の末端ノード管理設定処理により、末端ノード３ａを管理するように設定されている。
【００５５】
まず、統括ノード４の下位層Ｃは、一般ノード２ａ（要求元）から、末端ノード３ａの上位層Ｂの機能に対応するアドレスに対するコマンド書き込み命令（パケット１）を受信する。
【００５６】
次に、統括ノード４の下位層Ｃは、該受信した書き込み命令に基づき、上位層Ｂの機能に対応するアドレスに対してコマンドを書き込む。その後、上位層Ｂは、該コマンドで指示された機能に対応する末端ノード３ａ内の下位層Ｂの機能レジスタのアドレスを検出し、該検出したアドレスに対する該コマンドに応じた制御データの書き込み命令（パケット２）を末端ノード３ａに対して送信する。
【００５７】
その後、末端ノード３ａの下位層Ｂは、受け取った書き込み命令（パケット２）を実行し、すなわち、下位層Ｂの該機能レジスタに相当するアドレスへ該制御データを書き込み、その結果（パケット３）を、統括ノード４に対して送信する。下位層Ｂは、書き込まれた制御データに基づいて、一般ノード２ａが統括ノード４の上位層Ｂに対して送信したコマンドに対応した動作を行う。
【００５８】
末端ノード３ａからの処理結果（パケット３）を受信した統括ノードは、要求の発行元である（コマンドを送ってきた）一般ノード２ａに対して、当初のコマンドに対する応答（パケット４）を送信する。
【００５９】
一般ノード２ａは、統括ノード４からの応答（パケット４）を受信して、処理が正常に行われたことを認識する。
【００６０】
このように、統括ノード４が、本来末端ノードの上位層が果たすべき役割を代理して行い、上位層で処理すべき信号を下位層で処理できるフォーマットで末端ノードに送信してやることにより、上位層を持たない末端ノードに対するコマンドの書き込み等を行うことが出来る。
【００６１】
図７は、本実施例の統括ノード４における末端ノードの管理設定処理を表すフローチャートである。この末端ノード管理設定処理は、通常のバスリセット（新たなノードがバスに接続されたり、これまで接続されていたノードがバスから外される等のトポロジー変化が起きた時に発生する）が実行されるごとに起動される。
【００６２】
ステップＳＡ１では、末端ノード管理設定処理を開始して次のステップＳＡ２に進む。
【００６３】
ステップＳＡ２では、末端ノード管理処理を初期化する。ここでは、例えば、統括ノードのコンフィグＲＯＭ内に記載された末端ノードの上位層に対応する機能等をクリアする。その後、次のステップＳＡ３に進む。
【００６４】
ステップＳＡ３では、管理すべき末端ノードのＧＵＩＤを書き換え可能な記憶装置から読み出す。本実施例の統括ノードには、以下の説明の便宜上、予め管理すべき末端ノードのＧＵＩＤが１つ記録されているものとする。なお、実際には、１つとは限らず、複数である場合もあるし、１つもない場合もある。
【００６５】
また、管理すべき末端ノードのＧＵＩＤは、ユーザが入力するようにしてもよい。また、図５に示したように末端ノードに上位層の機能に対応するアドレスに対する書き込み命令を送信し、エラーが帰された末端ノードのＧＵＩＤを末端ノードのコンフィグＲＯＭから読み出すようにしてもよい。管理すべき末端ノードのＧＵＩＤを読み出したら、次のステップＳＡ４に進む。
【００６６】
ステップＳＡ４では、ＩＥＥＥ１３９４バス１に接続されたノードのＧＵＩＤを読み出す。なお、ここでは１つのノードのＧＵＩＤを読み出すが、このステップＳＡ４を繰り返すことにより全てのノードのＧＵＩＤを読み出す。その後、次のステップＳＡ５に進む。
【００６７】
ステップＳＡ５では、ステップＳＡ４で読み込んだＧＵＩＤが、ステップＳＡ３で読み込んだ管理すべき末端ノードのＧＵＩＤと等しいか否かを判断する。ステップＳＡ４で読み込んだＧＵＩＤが、ステップＳＡ３で読み込んだ管理すべき末端ノードのＧＵＩＤと等しい場合は、ＹＥＳの矢印で示すステップＳＡ６に進み、等しくない場合は、ＮＯの矢印で示すステップＳＡ１０に進む。
【００６８】
ステップＳＡ６では、ステップＳＡ５で管理すべき末端ノードのＧＵＩＤとＧＵＩＤが一致した末端ノードのコンフィグＲＯＭから、該末端ノードの管理に必要な情報を読み込む。その後、次のステップＳＡ７に進む。
【００６９】
ステップＳＡ７では、ステップＳＡ６で読み込んだ情報に基づき、自機（統括ノード）の上位層内に管理すべき末端ノードに対応するソフトウェアインスタンス（管理する末端ノードのための上位層）を作成する。その後、次のステップＳＡ８に進む。
【００７０】
ここで、末端ノードに対応するソフトウェアインスタンスを作成するというのは、本来末端ノードの上位層が受付けるべきコマンド（例えば、ＡＶ／Ｃコマンド等）を、末端ノードに代わって統括ノードの上位層が受付ける状態にすることである。すなわち、このステップＳＡ７の処理以降は、統括ノードが、自身の管理する末端ノードに対する他のノードからのコマンドを受付けることができる。
【００７１】
ステップＳＡ８では、末端ノードの統括ノードＧＵＩＤ記憶領域（図２）に、自身のＧＵＩＤを書き込み、該末端ノードを管理する統括ノードであることを示す。その後、次のステップＳＡ９に進む。
【００７２】
管理する末端ノードに自身のＧＵＩＤを書き込むことにより、他の統括ノードに対して、該末端ノードが既に管理されていることを示すことが出来る。
【００７３】
ステップＳＡ９では、自身のコンフィグＲＯＭに、末端ノードの機能の情報を追記することで、末端ノードが持つ機能の追記が行われる。このようにすることで、他のノードからは、統括ノードが管理する末端ノードの機能を持っているかのように見せかけることが出来る。その後、次のステップＳＡ１０に進む。
【００７４】
統括ノードのコンフィグＲＯＭには、統括ノードが予め備えている上位層の内、管理する末端ノードのある上位層（バスに接続されている末端ノードに対応する上位層）に対応する機能が書き込まれ、管理する末端ノードの無い上位層（バスに接続されていない末端ノードに対応する上位層）に対応する機能は書き込まれない。
【００７５】
ステップＳＡ１０では、ＩＥＥＥ１３９４バス１に接続されている全てのノードのＧＵＩＤを読み込んだか否かが判断される。全てのノードのＧＵＩＤを読み込んだらＹＥＳの矢印で示すステップＳＡ１１に進む。全てのノードのＧＵＩＤを読み込んでいなければＮＯの矢印で示すステップＳＡ４に戻り、その後の処理を繰り返す。
【００７６】
ステップＳＡ１１では、他のノードに末端ノードを管理していることを認識させるために末端ノード管理設定完了通知を発行する。その後、次のステップＳＡ１２に進み末端ノード管理設定処理を終了する。
【００７７】
これにより、統括ノードが末端ノードの機能を持っているように認識させることが出来る。なお、このステップＳＡ１１で、バスリセットを発行して、統括ノードと同一のＩＥＥＥ１３９４バス１に接続された他のノードに、統括ノードの上位層に作成されたソフトウェアインスタンスを認識させることにより、あたかも上位層を備えた末端ノード３ａが存在するように認識させるようにしてもよい。
いずれにしても、管理される末端ノードの上位層の機能に対応するコマンドは、統括ノードに対して送信されるようになる。
【００７８】
なお、アイソクロナス転送による通信は、下位層が直接処理することが出来るので、統括ノードを介さずに直接末端ノードに送信する。
【００７９】
以上の末端ノード管理設定処理を行うことにより、統括ノードは、自身が管理している末端ノードの上位層に対するアクセスを全て処理し、必要に応じて対応する末端ノードに対して定められたトランザクションを発行し、末端ノード動作状況を確認又は変更することが出来る。
【００８０】
また、新たな末端ノードがバスに参加した場合、及び、いずれかの末端ノードがバスから外れた場合にも、発生したバスリセットに応じて統括ノードが図７の処理を実行する。そして、新たに参加した末端ノードの機能の記述が該統括ノードのコンフィグＲＯＭに現れ、あるいは、外れた末端ノードの機能の記述が同コンフィグＲＯＭから消える。
【００８１】
図８は、図６に示す通信を行うための各ノードにおける処理の概念の理解を助けるためのフローチャートである。なお、統括ノードにおいて、図７に示す末端ノード管理設定処理が既に行われているものとする。また、図中点線の矢印はパケットの送信を表す。
【００８２】
ステップＳＢ１〜ＳＢ４は要求発行元（図６の一般ノード２ａ）での処理である。
【００８３】
ステップＳＢ１では、要求発行元処理を開始して、次のステップＳＢ２に進む。
【００８４】
ステップＳＢ２では、末端ノードの機能に相当するソフトウェアインスタンス（図６の統括ノード４の上位層Ｂ）に対する要求を送信する。その後、次のステップＳＢ３に進む。なお、ここで送信される要求は、後述するステップＳＢ６で統括ノードにより受信される。
【００８５】
ステップＳＢ３では、後述するステップＳＢ９で統括ノードから送信される末端ノードの処理結果を受信する。その後、次のステップＳＢ４に進み、要求発行元処理を終了する。
【００８６】
ステップＳＢ５〜ＳＢ１０は統括ノード（図６の統括ノード４）での処理である。
【００８７】
ステップＳＢ５では、統括ノード処理を開始して、次のステップＳＢ６に進む。
【００８８】
ステップＳＢ６では、統括ノード上位層内に作成した末端ノードの機能に相当するソフトウェアインスタンス（図６の統括ノード４の上位層Ｂ）に対する要求を受信する。その後、次のステップＳＢ７に進む。
【００８９】
ステップＳＢ７では、末端ノードの機能レジスタに対して書き込み命令を送信する。その後、次のステップＳＢ８に進む。なお、統括ノードは、前述したように、自己の管理下にある末端ノードの機能をコンフィグＲＯＭ内に記憶している。また、統括ノードは、末端ノードを制御するための各種情報（末端ノードの機能に関する情報、その機能に対応した末端ノードの機能レジスタのアドレス等）を統括ノード内のワークメモリに記録している。ここで送信される書き込み命令は後述するステップＳＢ１２で末端ノードによって受信される。
【００９０】
ステップＳＢ８では、後述するステップＳＢ１４で送信される末端ノードにおける処理結果を受信する。その後、次のステップＳＢ９に進む。
【００９１】
ステップＳＢ９では、ステップＳＢ８で受信した末端ノードでの処理結果に基づき、末端ノードでの処理結果を元の要求発行元に送信する。その後、次のステップＳＢ１０に進み統括ノード処理を終了する。
【００９２】
ステップＳＢ１１〜ＳＢ１５の処理は末端ノード（図６の末端ノード３ａ）での処理である。
【００９３】
ステップＳＢ１１では、末端ノード処理を開始して次のステップＳＢ１２に進む。
【００９４】
ステップＳＢ１２では、ステップＳＢ７で統括ノードから送信された機能レジスタに対する書き込み命令を受信し、機能レジスタに書き込む。書き込み命令の送受信及び、書き込み命令に基づく処理は、下位層であるトランザクション層により行われるので、上位層を持たない末端ノードにおいても正常に行うことが出来る。その後、次のステップＳＢ１３に進む。
【００９５】
ステップＳＢ１３では、該機能レジスタに対応する機能を実行する。例えば、機能レジスタに対して一定の値等を書き込む。その後、次のステップＳＢ１４に進む。
【００９６】
ステップＳＢ１４では、統括ノードに対して、該書き込み命令の処理結果を送信する。その後、次のステップＳＢ１５に進み、末端ノード処理を終了する。
【００９７】
以上、本実施例によれば、統括ノードとなるＩＥＥＥ１３９４デバイスにより、ＩＥＥＥ１３９４規格を使った上位層を実装しない機器（末端ノード）を管理することが出来る。
【００９８】
これにより、統括ノードを介することにより、一般ノードに相当するＩＥＥＥ１３９４デバイスからも上位層を持たない末端ノードを制御することが出来る。
【００９９】
また、１つの統括ノードにより複数の末端ノードを管理することが出来る。これにより、ユーザインターフェイス等のＩＥＥＥ１３９４規格を使った上位層の更新（「上位プロトコルの更新」だけでなく「バグの修正」や「性能の向上」のために行われる場合も含む）を各機器ごとに行う必要がなく、簡単に行うことが出来る。
【０１００】
また、本実施例によれば、上位層を統括ノードに実装することにより、ＩＥＥＥ１３９４規格を使った上位層と交換性を保ったまま、上位層のないノードを提供することが出来る。
【０１０１】
さらに、末端ノードから上位層を省くことにより、上位層を実装するためのハードウェア及びソフトウェア資源を節約することが出来、末端ノードを低価格で提供することが出来る。
【０１０２】
また、本実施例によれば、一部又は全部の上位層を実装した末端ノードの上位層の機能を停止して、統括ノードにより管理することが出来る。この場合、統括ノードの上位層を更新することにより、末端ノードに実装されている上位層を更新したのと同様の効果を得ることが出来る。
【０１０３】
また、本実施例によれば、新しいＩＥＥＥ１３９４規格を使った上位層が規定された場合などに、統括ノードの上位層のみを更新することにより、末端ノードを新しい規格に対応させることが出来る。
【０１０４】
なお、統括ノードがパーソナルコンピュータ等であり、末端ノードを管理するためのソフトウェア（上位層）を複数同時に実行する能力がある場合には、各実行中のソフトウェアがそれぞれ管理している末端ノードのＧＵＩＤを管理、記録して、複数のソフトウェアで１つの末端ノードを管理するような競合状態を避けるようにする。
【０１０５】
また、本実施例では、ＩＥＥＥ１３９４バス１上に１つの統括ノードだけが存在する場合を説明したが、複数の統括ノードがＩＥＥＥ１３９４バス１に接続されていてもよい。複数の統括ノードが同一ＩＥＥＥ１３９４バス１上に接続される場合に、統括ノードで管理する末端ノードが重複しないように調整する必要がある。
【０１０６】
なお、本実施例は、本実施例に対応するコンピュータプログラム等をインストールした市販のコンピュータ等によって、実施させるようにしてもよい。
【０１０７】
その場合には、本実施例に対応するコンピュータプログラム等を、ＣＤ−ＲＯＭやフロッピーディスク等の、コンピュータが読み込むことが出来る記憶媒体に記憶させた状態で、ユーザに提供してもよい。
【０１０８】
そのコンピュータ等が、ＬＡＮ、インターネット、電話回線等の通信ネットワークに接続されている場合には、通信ネットワークを介して、コンピュータプログラムや各種データ等をコンピュータ等に提供してもよい。
【０１０９】
以上実施例に沿って本発明を説明したが、本発明はこれらに制限されるものではない。例えば、種々の変更、改良、組合せ等が可能なことは当業者に自明であろう。
【０１１０】
【発明の効果】
以上、本発明によれば、製造コストをおさえたＩＥＥＥ１３９４規格に準拠した機器を提供することができる。
【０１１１】
また、本発明によれば、他のノードを管理することができるＩＥＥＥ１３９４規格に準拠した機器を提供することができる。
【図面の簡単な説明】
【図１】  本発明の実施例によるＩＥＥＥ１３９４バス１の一例を表すブロック図である。
【図２】  本実施例による末端ノード３ａ（又は３ｂ）のＣＳＲメモリの一例を表す概念図である。
【図３】  本実施例による統括ノード４のＣＳＲメモリの一例を表す概念図である。
【図４】  一般ノード２ａと一般ノード２ｂ間の通信を表すブロック図である。
【図５】  本実施例による一般ノード２ａと末端ノード３ａ間の通信を表すブロック図である。
【図６】  本実施例による統括ノード４を介した一般ノード２ａと末端ノード３ａ間の通信を表すブロック図である。
【図７】  本実施例の統括ノード４における末端ノードの管理設定処理を表すフローチャートである。
【図８】  図６に示す通信を行うための各ノードにおける処理を表すフローチャートである。
【図９】  ｍＬＡＮ上位層を実装した一般的なＡＶ（オーディオ・ビジュアル）装置のプロトコルスタックの一例を表す概念図である。
【符号の説明】
１…ＩＥＥＥ１３９４バス、２…一般ノード、３…末端ノード、４…統括ノード
【図１】
0003890927.tif 000002
【図２】
0003890927.tif 000003
【図３】
0003890927.tif 000004
【図４】
0003890927.tif 000005
【図５】
0003890927.tif 000006
【図６】
0003890927.tif 000007
【図７】
0003890927.tif 000008
【図８】
0003890927.tif 000009
【図９】
0003890927.tif 000010