(57)【特許請求の範囲】
【請求項１】
ネットワークと該ネットワークに接続された複数のノードとで構成され、該複数のノード間では同期信号パケットによりサンプリングクロックの同期をとりながらオーディオデータの転送が行われる通信システムであって、
前記複数のノードを複数のグループにグループ分けするグループ分け手段と、
各グループごとに何れか１つのノードをクロックマスタとして設定するマスタ設定手段と
を備えており、
各グループのクロックマスタに設定されたノードは、前記同期信号パケットに、当該ノードが属するグループを示す識別情報と当該ノードがクロックマスタノードであることを示すＩＤとを付加して前記ネットワークに送出し、
各グループのクロックマスタに設定されていないノードは、ネットワークに送出された前記同期信号パケットから、当該ノードが属するグループを示す識別情報とクロックマスタノードであることを示すＩＤとが付加された同期信号パケットを選択し、選択された同期信号パケットに基づいて当該ノードのサンプリングクロックの同期処理を行う
ことを特徴とする通信システム。
【請求項２】
ユーザの確定操作に応じて、前記複数のノードのうちの１つのノードを前記複数のクループのうちの１つのグループのクロックマスタとして指定する指定手段を備え、
前記マスタ設定手段は、前記指定手段による指定に応じて、指定されたグループのクロックマスタにそれまで設定されていたノードのクロックマスタの設定をキャンセルするとともに、指定されたノードを該指定されたグループのクロックマスタに設定することを特徴とする請求項１に記載の通信システム。
【請求項３】
ネットワークに接続された複数のノードのうちのクロックマスタに設定されたノードから送信される同期信号パケットにより、前記複数のノードにおけるサンプリングクロックの同期をとりながらオーディオデータの転送を行う通信システムの、前記複数のノードの１つのノードに含まれる通信制御装置であって、
前記複数のノードは複数のグループにグループ分けされており、当該ノードの所属するグループのグループ識別情報を記憶している記憶手段と、
前記ネットワークを介して前記同期信号パケットを受信するための同期信号パケット受信手段であって、前記ネットワークを介して送信される同期信号パケットには該パケットを受信すべきノードの属するグループを示すグループ識別情報が付加されており、前記ネットワークを介して送信されてきた同期信号パケットに付加されているグループ識別情報が前記記憶手段に記憶されたグループ識別情報に一致する同期信号パケットを選択的に受信するものと、
前記同期信号パケット受信手段の受信した同期信号パケットに基づいて当該ノードのサンプリングクロックの同期処理を行う同期手段と
を備えたことを特徴とする通信制御装置。
【請求項４】
ネットワークに接続された複数のノードのうちのクロックマスタに設定されたノードから送信される同期信号パケットにより、前記複数のノードにおけるサンプリングクロックの同期をとりながらオーディオデータの転送を行う通信システムの、前記複数のノードの１つのノードに含まれる通信制御装置であって、
前記複数のノードは複数のグループにグループ分けされており、当該ノードをその１つのグループのクロックマスタとして指定する指定手段と、
前記指定手段による指定に応じて、指定されたグループのクロックマスタにそれまで設定されていたノードに対し、クロックマスタとしての役割をキャンセルする命令を送信するキャンセル手段と、
前記指定手段による指定に応じて、当該ノードを該指定されたグループのクロックマスタに設定する設定手段と、
当該ノードが１つのグループのクロックマスタとして設定されている場合、前記同期信号パケットを生成するとともに、当該グループを示す識別情報を付与して前記ネットワークを介して送出する同期信号パケット送出手段と
を備えており、
前記複数のノードでは、それぞれ、前記同期信号パケットに付与されたグループ識別情報に基づいて該ノードが属するグループの同期信号パケットを選択的に受信し、受信した同期信号パケットによりサンプリングクロックの同期をとるようにした
ことを特徴とする通信制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、オーディオデータやＭＩＤＩデータのような音楽演奏データなど楽音関連信号を含むデータを、ネットワークを介して複数のノード間で授受する技術に関し、詳しくはそのために使用される通信制御装置及び方法に関する。
【０００２】
【従来の技術】
最近のオーディオ・ビデオシステムでは、システムを構成する多くの電子機器（例えばビデオディスプレイ、ビデオテープレコーダ、オーディオコンポーネント、カラオケ機器など）を相互に関連させて接続することでシステムを構築するようになっている。また、電子楽器においては、ＭＩＤＩ（Ｍｕｓｉｃａｌ  Ｉｎｓｔｒｕｍｅｎｔ  Ｄｉｇｉｔａｌ  Ｉｎｔｅｒｆａｃｅ）というような統一規格を用いて複数の電子楽器あるいはシーケンサ、パソコン等を相互に接続し、アンサンブル演奏システム等を構築することが行なわれている。ネットワークを介して接続された複数のノード間で楽音関連信号を授受する技術としては、特開平９−２９８５５８号公報、特開平１０−１９０７３６号公報、特開２０００−７８１７０公報、特許第２８３０７６６号公報などに示されたものがある。楽音関連信号を扱うノードの場合、機器間の同期をとるために所定のマスタクロックノードから同期信号を受信し、これに基づいて楽音信号の再生に際して各ノード間で同期をとるようにしている。概略的には、複数のノードにおいて同期をとりながら、或るノードではオーディオ波形信号の読み出しとその送信を行ない、別のノードてはその受信とそれに基づく再生等の処理を各々行えるようにするために、ネットワーク上にワードクロックマスタなるノードを設け、ここから所定周期毎に基準タイムスタンプを各ノード（スレーブ）に送信する。送信ノードではこの基準タイムスタンプに基づきオーディオ波形信号の読み出しを行ない、送信時のタイムスタンプを生成し、該タイムスタンプをオーディオデータに添付してネットワークに送信する。受信ノードにおいても、前述の基準タイムスタンプにより同期をとり、送信ノードから送られてくるタイムスタンプとデータをもとにオーディオデータをリアルタイム再生する。このようにして複数の各機器（ノード）間においてリアルタイムの同期をとることができる。
【０００３】
一方、楽音・オーディオ・ビデオ関連の複数の電子機器を相互接続するネットワークの組み方として、最近では、ＩＥＥＥ１３９４規格やＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）規格などに従うディジタルシリアル通信方式が採用されるようになってきている。ＩＥＥＥ１３９４規格やＵＳＢ規格などに従う高速ネットワークにおいては、リアルタイム処理を要する多数のノードを接続し、大規模で複雑なネットワークを構成することが可能である。そのようなＩＥＥＥ１３９４やＵＳＢに従う通信方式においては、各ノード間をそれぞれ１本の信号線で接続し、連鎖的なディジーチェーン又はツリー状のネットワークを形成する。ネットワーク上を伝送されるデータにはヘッダが付加されており、このヘッダに該データを受け取るべきノードを指示する情報が含まれている。ネットワークに接続されたノードにおいて、ネットワーク上に伝送されたデータのヘッダが自己のノードを指定しているならば該データを取り込んで処理をする。また、他のノードに対してデータを転送する場合は、転送するデータのヘッダに受け取るべきノードを指示する情報を付加してネットワーク上に伝送する。
【０００４】
【発明が解決しようとする課題】
しかし、これらのＩＥＥＥ１３９４やＵＳＢの場合は、１つの信号線上を楽音関連信号、制御信号、及びその他のネットワーク機器に関連する各種信号が流通しており、各機器（ノード）同士も１本の線で結線されているにすぎず、実際にはどの機器（ノード）とどの機器（ノード）が接続関係（データを実際に授受する関係）にあるのか、あるいはどのような種類のデータがやり取りされているのか、等が一見しただけでは殆ど把握できない状態にある。例えば、１つのノードにおける設定状態を見ただけでは、他のノードがそのノードを指定するように設定されている状態までは判明せず、結局すべてのノードの個別の設定状態をチェックするしかない。しかし、１本の信号線を介して連鎖的に接続されるディジーチェーンは無限に拡がり得るものであるため、ネットワークにつながるすべてのノードの設定状態をチェックすることは得策ではない。
【０００５】
一方、ネットワークを介してノード間で楽音関連信号を授受する場合の同期の基準となる前記ワードクロックマスタノードについて考慮してみると、例えば複数のノードでリアルタイムのアンサンブル演奏を行なうような場合、それらのノードで使用するワードクロックマスタノードを或るクロック周波数のマスタノードから別のクロック周波数のマスタノードに切り換えるには、各ノード（スレーブノード）毎にそのワードクロックマスタノードの設定を切り換えなければならない。そのような設定変更操作は大変面倒である。
【０００６】
この発明は上述の点に鑑みてなされたもので、ネットワークを介して接続された複数のノード同士の実際の接続状態を容易に判別できるようにした通信制御装置及び方法を提供しようとするものである。また、ネットワークを介して接続された複数のノード同士の実際の接続状態の設定を行なったり、その設定内容を変更することの容易な通信制御装置及び方法を提供しようとするものである。更には、ワードクロックマスタノードのような特定機能のノードの設定変更が容易な通信制御装置及び方法を提供しようとするものである。
【０００７】
【課題を解決するための手段】
請求項１に係る通信システムは、ネットワークと該ネットワークに接続された複数のノードとで構成され、該複数のノード間では同期信号パケットによりサンプリングクロックの同期をとりながらオーディオデータの転送が行われる通信システムであって、前記複数のノードを複数のグループにグループ分けするグループ分け手段と、各グループごとに何れか１つのノードをクロックマスタとして設定するマスタ設定手段とを備えており、各グループのクロックマスタに設定されたノードは、前記同期信号パケットに、当該ノードが属するグループを示す識別情報と当該ノードがクロックマスタノードであることを示すＩＤとを付加して前記ネットワークに送出し、各グループのクロックマスタに設定されていないノードは、ネットワークに送出された前記同期信号パケットから、当該ノードが属するグループを示す識別情報とクロックマスタノードであることを示すＩＤとが付加された同期信号パケットを選択し、選択された同期信号パケットに基づいて当該ノードのサンプリングクロックの同期処理を行うことを特徴とする。
【０００８】
請求項２に係る通信システムは、請求項１に記載の通信システムにおいて、ユーザの確定操作に応じて、前記複数のノードのうちの１つのノードを前記複数のクループのうちの１つのグループのクロックマスタとして指定する指定手段を備え、前記マスタ設定手段は、前記指定手段による指定に応じて、指定されたグループのクロックマスタにそれまで設定されていたノードのクロックマスタの設定をキャンセルするとともに、指定されたノードを該指定されたグループのクロックマスタに設定することを特徴とする。
【０００９】
ネットワークにおける１つのノードは、例えば１つの電子機器に対応する。１つのノードつまり１つの電子機器は、１種類のデータ入力又は出力用のプラグに限らず、例えば「オーディオ入力」、「オーディオ出力」、「ＭＩＤＩ入力」、「ＭＩＤＩ出力」などのように複数種類のデータ入力又は出力用のプラグを有する。その場合、この発明に従うグループ設定は、各プラグ種類毎にそれぞれ行なうようにしてもよい。あるいは、この発明に従うグループ設定は、個々の各プラグ毎にそれぞれ行なうようにしてもよい。すなわち、同じノードであっても、プラグ種類毎に、または各プラグ毎に、それぞれ複数のグループのいずれかに適切に分類されるようにグループ設定を行なうようにすることができる。
【００１０】
請求項３に係る通信制御装置は、ネットワークに接続された複数のノードのうちのクロックマスタに設定されたノードから送信される同期信号パケットにより、前記複数のノードにおけるサンプリングクロックの同期をとりながらオーディオデータの転送を行う通信システムの、前記複数のノードの１つのノードに含まれる通信制御装置であって、前記複数のノードは複数のグループにグループ分けされており、当該ノードの所属するグループのグループ識別情報を記憶している記憶手段と、前記ネットワークを介して前記同期信号パケットを受信するための同期信号パケット受信手段であって、前記ネットワークを介して送信される同期信号パケットには該パケットを受信すべきノードの属するグループを示すグループ識別情報が付加されており、前記ネットワークを介して送信されてきた同期信号パケットに付加されているグループ識別情報が前記記憶手段に記憶されたグループ識別情報に一致する同期信号パケットを選択的に受信するものと、前記同期信号パケット受信手段の受信した同期信号パケットに基づいて当該ノードのサンプリングクロックの同期処理を行う同期手段とを備えたことを特徴とする。
【００１１】
請求項４に係る通信制御装置は、ネットワークに接続された複数のノードのうちのクロックマスタに設定されたノードから送信される同期信号パケットにより、前記複数のノードにおけるサンプリングクロックの同期をとりながらオーディオデータの転送を行う通信システムの、前記複数のノードの１つのノードに含まれる通信制御装置であって、前記複数のノードは複数のグループにグループ分けされており、当該ノードをその１つのグループのクロックマスタとして指定する指定手段と、前記指定手段による指定に応じて、指定されたグループのクロックマスタにそれまで設定されていたノードに対し、クロックマスタとしての役割をキャンセルする命令を送信するキャンセル手段と、前記指定手段による指定に応じて、当該ノードを該指定されたグループのクロックマスタに設定する設定手段と、当該ノードが１つのグループのクロックマスタとして設定されている場合、前記同期信号パケットを生成するとともに、当該グループを示す識別情報を付与して前記ネットワークを介して送出する同期信号パケット送出手段とを備えており、前記複数のノードでは、それぞれ、前記同期信号パケットに付与されたグループ識別情報に基づいて該ノードが属するグループの同期信号パケットを選択的に受信し、受信した同期信号パケットによりサンプリングクロックの同期をとるようにしたことを特徴とする。
【００１４】
この発明は、装置の発明として実施することができるのみならず、方法の発明として実施することも可能である。また、本発明は、コンピュータまたはＤＳＰ等のプロセッサのプログラムの形態で実施することができるし、そのようなプログラムを記憶した記録媒体の形態で実施することもできる。
【００１５】
【発明の実施の形態】
以下、添付図面を参照してこの発明の実施の形態を詳細に説明しよう。
まず、それ自体は公知であるが、本発明においても採用される通信ネットワークの構成例について説明する。図１は、複数のノードＮ１〜Ｎ９，ＭＮ１〜ＭＮ３を接続した通信ネットワークの構成例を示すブロック図である。このネットワークにおけるデータの伝送は、例えばＩＥＥＥ１３９４規格やＵＳＢ規格など所定の規格に準拠するディジタルシリアルパケット転送で行なう。例えば、各ノードＮ１〜Ｎ９，ＭＮ１〜ＭＮ３は、ビデオディスプレイ、ビデオテープレコーダ、オーディオコンポーネント、カラオケ機器などのＡＶ電子機器、あるいはキーボードやその他の電子楽器、シーケンサ、パソコン等の電子楽器関連の電子機器であり、このネットワークでは、オーディオ波形信号などの楽音信号及びＭＩＤＩデータのような楽音演奏データ及び楽音制御信号（これらを楽音関連信号と総称する）が伝送される。勿論、ネットワーク上を伝送される信号は楽音関連信号に限らず、画像データやテキストデータなど任意のディジタルデータを含む。また、楽音関連信号とは全く無関係のノードが同じネットワーク上に存在していてもよい。ノードＭＮ１〜ＭＮ３はワードクロックマスタノードであり、それぞれ４４．１ｋＨｚあるいは４８ｋＨｚなど所定のクロック周波数に従い基準タイムスタンプを発生する機能を有する。ノードＮ１〜Ｎ９は上記マスタノードに対するスレーブノードである。なお、今はスレーブノードとして機能しているノードＮ１〜Ｎ９であっても、マスタクロック発生機能を持つものは操作者による選択操作に応じてマスタノードに機能転換し得る。また、マスタノードＭＮ１〜ＭＮ３であっても、マスタクロック発生機能に限らず、楽音発生機能や演奏データ発生機能など他の適宜の機能を併せて持ち得る。
【００１６】
公知のように、ＩＥＥＥ１３９４規格やＵＳＢ規格では、各ノード（機器）を１本の信号線（シリアルバス）で接続するだけでネットワーク内の全てのノード間で信号の授受を行なうこうができる。勿論、ネットワークの構造は図示のようなディジーチェーン型に限らず、配線の途中にハブを介在させてツリー状の構造とすることもできる。また、ネットワーク内の１つのノードを別のネットワークに接続すると、該ネットワーク内の他のノードも連鎖的に該別のネットワークに接続されることになる。
【００１７】
ネットワーク上で伝送される信号のパケットデータフォーマットの概略は図２のようであり、１パケットはヘッダとデータの実体とから構成される。このヘッダは、従来は、通信に必要な送信側のＩＤ（送信ノード識別情報）、タイムスタンプ、データ種類を示す情報、プラグＩＤ（プラグ識別情報）、その他の情報から構成されている。本発明の実施にあたっては、更にグループ識別情報がヘッダに含まれるが、この点については後述する。ネットワーク上に接続された各ノードは、バスから入力ポートに与えられたデータが自己のノードで取り扱うべきものであればそれを取り込んで処理する。また、入力ポートから入力したデータは出力ポートからバスに渡されることで他のノードに即座に転送される。各ノードが自機で処理するべきか否かはデータに付与されているヘッダから判断する。例えば、従来は、自己のノードにおいて、どのノードのどのプラグから送信されてきたデータを受け取るべし、との受信条件設定がなされており、この条件設定に合ったデータをヘッダの内容から判別して自機に取り込む。本発明の実施にあたっては、従来と同様の受信条件設定が可能であり、更にグループ識別情報を考慮した受信制御が可能であるが、この点については後述する。
【００１８】
図３は、１つのノードにおける処理機能を大まかに示す図であり、大別して通信部１０Ｒ，１０Ｔと信号処理部１１Ｒ，１１Ｔの機能を有する。受信に際しての通信部１０Ｒの機能は、シリアルバスから入力ポートを介して受信したパケットデータのヘッダを読み、自機で受理すべきデータであればそれを取り込んで、デパケットし、送信側のプラグＩＤから自機の入力プラグを特定し、デパケットしたデータの実体部分を該特定した入力プラグに対応づけて信号処理部１１Ｒに渡す。信号処理部１１Ｒでは該特定した入力プラグに対応して該データの実体部分を入力し、該入力プラグに対応する所定の処理を行なう。信号処理部１１Ｔでは、他のノードに対して送信するデータを用意する。送信用の通信部１０Ｔでは、用意されたデータにヘッダを付加してパケットデータを作成し、これを出力ポートを介してシリアルバスに送信する。ヘッダには、自己のノードを示す送信ノードＩＤと、信号処理部１１Ｔで用意されたデータの出力プラグを示すプラグＩＤが含まれる。また、楽音信号（オーディオ波形信号）や楽音制御信号（ＭＩＤＩデータ）のように時間情報を付加すべきデータを送信する場合は、時間を示すタイムスタンプがヘッダに付加される。
【００１９】
図４は、１つのノードにおけるハードウェア構成を例示する図である。必要最小限のハードウェアは、ＣＰＵ１２、ＲＡＭ１３，ＲＯＭ１４などを含むコンピュータ又はマイクロコンピュータと、ネットワークの規格に合った通信インタフェース１５である。更に、個々のノードの個別機能に合わせて、音源装置１６、外部記憶装置１７、ディスプレイ装置１８、入力装置（操作パネル）１９など、必要な電子機器要素が設けられるのは勿論である。
【００２０】
なお、公知のように、プラグとは機器を接続するときの端子に相当するものである。公知のように、各機器毎に様々なタイプのプラグが使用されている。一例を示すと、図５のようである。例えば、プラグ種類には、「オーディオ入力」、「オーディオ出力」、「ＭＩＤＩ入力」、「ＭＩＤＩ出力」、「クロック入力」、「クロック出力」など様々な種類がある。また、１つのプラグ種類において、複数の個別のプラグが用意されている場合がある。例えば、同じ「オーディオ入力」でも「オーディオ入力１」と「オーディオ入力２」のように複数のプラグが存在し得、更に同じ「オーディオ入力１」でも「Ｒ」（右チャンネル）と「Ｌ」（左チャンネル）のように細分化されたプラグが存在し得る。勿論、１つのプラグ種類に対応して１つのプラグしか存在していない場合もあり得る。
【００２１】
従来の典型的な機器間の信号配線接続にあっては、各プラグに対応して個別の端子が物理的に設けられており、各端子を個別の配線でそれぞれ接続していた。ところが、ＩＥＥＥ１３９４規格やＵＳＢ規格などにおいては、１本の信号配線（シリアルバス）上を様々な信号が流通し、各信号の出力元及び入力先は、シリアルバスを介して伝送されるパケットのヘッダに添付されているノードＩＤとプラグＩＤによって論理的に区別される。よって、論理的プラグはヘッダのフォーマットが許す限りいくらでも数や種類を増やすことができるが、その一方で、いっそうネットワークの状況は複雑になる。
【００２２】
そこで、この発明においては、これら複雑なネットワークにおいてシステム構成を把握しやすくするために、ネットワークに接続できるノード（機器）にてグループ設定処理を行い、どのグループに属するかを各ノード毎に各々設定可能にしている。また、グルーピングした各々のグループ名を自由に付けたり変更したりできるようにして管理を行うようにしている。さらに、各ノード（機器）毎に自分の属するグループを識別するグループ識別情報（若しくはグループ名）を記憶手段に記憶できるようにしている。また更に、上記グループ分けすなわちどのグループに属するかの設定は、ノード（機器）単位に限らず、各ノード（機器）内のプラグ種類毎にあるいは個別プラグ単位で設定できるようにもしている。
【００２３】
次に、本発明の一実施例に従う各ノードのグループ化設定処理について説明する。
図６は、ノードにおいてグループ化設定処理の際に使用される操作パネル（図４の入力装置１９）の一例を示す。操作子Ｓ１は、ネットワーク上の管理を行なうときに操作する管理操作子であり、グループ化設定処理を行なうとき、あるいはクロックマスタノードの設定を行なうときなどに操作するものである。操作子Ｓ２は表示器ＤＰＹで表示するページを前進又は後退切り換えするときに操作するものである。操作子Ｓ３はカーソル操作キーであり、表示器ＤＰＹで表示されているカーソルを上下左右に動かすときに操作する。操作子Ｓ４は確定（ＯＫ）キーであり、カーソルによる選択・指示を確定するとき操作する。操作子ＴＫＹはテンキーであり、データ入力するときに操作する。グループ名称など文字入力するときは、操作子ＴＫＹによるテンキー操作と表示器ＤＰＹにおける案内表示との組み合わせで所望の文字入力を行う。勿論、これに限らず、文字入力キーボードを具備しているノードにあっては、文字入力キーボードを使用してグループ名称など所望の文字入力を行なうことができる。
【００２４】
図７は、通常のノードで行ないうるグループ設定処理の一例を示すフローチャートである。この処理においては、ネットワークに存在する１又は複数のグループのいずれかを選択し、該選択したグループの構成メンバーとして自己のノードを追加すること、又は自己のノードが所属するグループを変更することと、該選択したグループの名称（ニックネーム）を変更する処理などを行なうことができる。まず、管理操作子Ｓ１でグループ設定用操作子の入力操作を行なうと、このグループ設定処理のルーチンがスタートする（ステップＳ１０）。次に、現状のネットワーク上に存在する全てのグループの名称を取得し、取得した全てのグループ名称（グループリスト）を表示器ＤＰＹで表示する（ステップＳ１１）。右側に併記した画面１は、表示器ＤＰＹにおけるグループ名称の表示例を示しており、そこに表示された「Ｎｅｗ」、「Ｇｒｏｕｐ４８ｋＨｚ」、「Ｒａｃｋ１」などはグループ名である。なお、「Ｎｅｗ」という名称のグループはデフォルトグループであり、ネットワーク上に存在する全てのスレーブノード（ワードクロックマスタノードではないノード）を１つのグループとするものである。ユーザによって何もグループ設定がされていないときは、このデフォルトグループである「Ｎｅｗ」の表示のみがなされる。ユーザによる新規のグループ設定・分類処理が進行すると、各ノードは「Ｎｅｗ」以外のグループに所属するようになるので、デフォルトグループである「Ｎｅｗ」に所属する（残される）ノードは減少していくことになる。
【００２５】
ネットワーク上に存在する全てのグループの名称を取得する手法はどのようなものであってもよい。基本的には、各ノードが自機が所属しているグループのグループ識別情報（又はグループ名称）をそれぞれ記憶しているものとしているので、ネットワークを通じて各ノードに問い合わせて各ノードのグループ識別情報（又はグループ名称）を取得するようにしてよい。別の手法として、各ノードの中に管理的機能を果たしうる特定のノード（例えばパーソナルコンピュータ）があれば、その特定のノードにおいてネットワーク内のグループ設定状態を記憶しておき、その特定のノードに問い合わせることで、各ノードのグループ識別情報（又はグループ名称）を取得するようにしてよい。あるいは、自己のノードにおいてネットワーク内のグループ設定状態を記憶しておくことができれば、ネットワークに問い合わせを行なうことなく、各ノードのグループ識別情報（又はグループ名称）を取得することも可能である。
【００２６】
次に、表示器ＤＰＹにおけるグループ名称の表示画面においてカーソルを移動させて所望のグループを選択・指示する（ステップＳ１２）。図の画面１における矢印はカーソルを示し、カーソルが指示しているグループ名が、画面の最上部にアップされる。図示例では「Ｒａｃｋ１」というグループが指示されている。所定の選択確定操作を行なうと、カーソル指示が確定し、ステップＳ１３に行く。ステップＳ１３では、カーソルで指示されたグループ内に属するノード名（又はノードＩＤ）を取得し、これを表示器ＤＰＹに表示する。右側に併記した画面２は、表示器ＤＰＹにおける１グループ内の所属ノード名の表示例を示しており、そこに表示された「ＭａｓｔｅｒＣｌｏｃｋ４４．１ｋＨｚ」、「Ｓｙｎｔｈ７０７」、「Ｍｏｄｕｌｅ００１」などはノード名（ノードのニックネーム）であり、最上部における「Ｇｒｏｕｐ＝Ｒａｃｋ１」は「Ｒａｃｋ１」という名称のグループであることを示す。画面表示例では特に示していないが、該ノードの機器名（キーボード、ＣＤプレヤー、ビデオプレーヤー、シーケンサーなど）を合わせて表示するとよい。また、その他の各ノードに固有の情報（例えばニックネームではなく、該ノードを識別する絶対的な情報）を合わせて表示してもよい。特に、当該グループに属するのが、ノードつまり機器の全体ではなく、該ノード中の特定のプラグ種類あるいは特定のプラグである場合は、ノード名のみならず、プラグ種類名あるいはプラグ名も併せて表示する。
【００２７】
次のステップＳ１４では操作パネルの確定（ＯＫ）操作子Ｓ４でグループ選択を確定する操作がなされたかどうかを判定する。確定（ＯＫ）操作子Ｓ４が操作された場合はステップＳ１５に行くが、画面切り換え操作子Ｓ２が操作された場合は、ステップＳ１２に戻り、グループリスト表示画面（画面１）で別のグループが選択できるようにする。ステップＳ１５では、選択確定したグループ名（グループ識別情報）を自己のノードにおける所定の記憶部に記憶することで、自己のノードがそのグループに所属する旨の登録を行なう。そして、登録確定したグループ名を表示部ＤＰＹで表示する。右側に併記した画面３は、表示器ＤＰＹにおける登録確定したグループ名称の表示例を示しており、図示例では「Ｒａｃｋ１」というグループに登録されたことを示している。このステップＳ１５における画面表示状態で、データ入力操作子ＴＫＹ等を用いて自己の所属するグループのグループ名（又はグループ識別情報）を変更することが可能である。もし、グループ名（又はグループ識別情報）を変更した場合は、自己のノードにおける記憶部に記憶するグループ名（又はグループ識別情報）の記憶を書き換えるのは勿論のこと、該同一グループ内に所属する他の各ノードに対して、ネットワークを介して、グループ名（又はグループ識別情報）の変更を知らせるデータを送信し、それら同一グループ内に所属する他の各ノードにおける記憶部に記憶するグループ名（又はグループ識別情報）の記憶をそれぞれ書き換えさせるよう制御する。更に、この選択したグループに所属する旨の設定を、自己のノード全体ではなく、所望のプラグ種類又は個別プラグについて行なう場合は、該選択したグループに所属させようとするプラグ種類又は個別プラグ名を選択・指定し、選択・指定したプラグ種類又は個別プラグ名を示す情報をグループ名（又はグループ識別情報）に対応づけて記憶しておく。
【００２８】
以上のようにして、各ノードにおいては、ネットワークに存在する１又は複数のグループのいずれかを選択し、該選択したグループの構成メンバーとして自己のノードを追加すること、又は自己のノードが所属するグループを変更することとができる。このように各ノードで自己のノードがどのグループに所属するかを自由に設定することにより、ネットワークにおけるグループ化つまりグループ設定を行なうことができる。また、自己のノードが所属するグループの名称（ニックネーム又はＩＤ）を自由に変更することもできる。図１０は、このようにして設定されるネットワークにおけるグループ設定例を模式的に示している。図１０では、１つのグループ１（仮称）にクロックマスタノードＭＮ１とノードＮ１，Ｎ２，Ｎ５，Ｎ７が所属し、別のグループ２（仮称）にクロックマスタノードＭＮ２とノードＮ４，Ｎ６が所属し、更に別のグループ３（仮称）にクロックマスタノードＭＮ３とノードＮ８，Ｎ９が所属するようにグループ設定がなされている。
【００２９】
しかも、このようなグループ設定及び管理を、ノード全体のみならず、ノード内のプラグ種類又は個別プラグ毎に、行なうことができる。例えば、同じノードであっても、プラグ種類によって異なるグループに登録する例としては、ミキサーノード（オーディオミキシング機能を持つノード）の場合を指摘することができる。例えば、或るミキサーノードにおいて、その「オーディオ入力」のプラグ種類をグループ１（仮称）に登録し、その「オーディオ出力」のプラグ種類をグループ２（仮称）に登録することがあり得る。そうすると、グループ１のオーディオ信号がミキサーノードの「オーディオ入力」に入力されて、その「オーディオ出力」から出力され、グループ２に属する他のノードに対して出力されるといったような、異なるグループ間をまたぐような入出力の設定を行うことができる。プラグ種類毎のグループ設定は、同じプラグ種類に属する個別プラグ（例えば「オーディオ入力」のプラグ種類における「オーディオ入力１−Ｒ」や「オーディオ入力１−Ｌ」、「オーディオ入力２−Ｒ」、「オーディオ入力２−Ｌ」など）は共通のグループに設定される。
【００３０】
一方、同じノードの同じプラグ種類であっても、個別プラグによって異なるグループに登録する例としては、サンプリングコンバータノード（サンプリング周波数変換器として機能するノード）の場合を指摘することができる。例えば、グループ１（仮称）がマスタークロック周波数４８ｋＨｚのワードクロックマスタノード（例えば図１のＭＮ２）を含むとし、グループ２（仮称）がマスタークロック周波数４４．１ｋＨｚのワードクロックマスタノード（例えば図１のＭＮ１）を含むとする。サンプリングコンバータノードにおいては、サンプリング周波数を変換するという機能のため、「クロック入力」のプラグ種類において、「クロック入力１」と「クロック入力２」という少なくとも２つのプラグを持つ。そして、「クロック入力１」から入力されるクロック周波数を持つ入力オーディオ信号を「クロック入力２」から入力されるクロック周波数を持つオーディオ信号にサンプリング周波数変換することが、このサンプリングコンバータノードの機能であるとする。その場合、「クロック入力１」プラグをグループ１に設定し、「クロック入力２」のプラグをグループ２に設定し、「オーディオ入力」のプラグ種類又は個別プラグをグループ１に設定し、「オーディオ出力」のプラグ種類又は個別プラグをグループ２に設定することで、「オーディオ入力」を介して入力されるサンプリングクロック周波数４８ｋＨｚのグループ１のオーディオ信号のサンプリング周波数を、「クロック入力２」から入力されるクロック周波数４４．１ｋＨｚのサンプリング周波数に変換して「オーディオ出力」から出力することができる。
【００３１】
上述したいくつかの具体例から理解できるように、グループ設定を、ノード毎に行なうか、プラグ種類に応じて行なうか、あるいは個別プラグに応じて行なうか、ということは排他的なことではなく、併存しうることである。例えば、最初にとりあえず１つのノード全体を所望の１つのグループ１（仮称）に所属するように設定し、次に、同じノード中の所望の一部のプラグ種類について別のグループ２（仮称）に所属するように設定し、次に、同じノード中の所望の一部の個別プラグについて別のグループ３（仮称）に所属するように設定することも、格段の矛盾が生じない限り、不可能ではない。そのような場合、逆階層化の順序で所属グループを決定すればよい。つまり、特定のグループ（上記のグループ２又は３）に所属するものと設定された特定のプラグ種類又は個別プラグについてはそのグループに属するものとし、当該ノード中のそれ以外のプラグ種類及び個別プラグについては当該ノード全体について設定されたグループ（上記のグループ１）に所属するものと取り扱うことができる。
【００３２】
図７の例は、個別のノードにおいて所望のグループを選択することによって当該ノードが所属するグループがどのグループであるかを設定するようにしている。このような手法は、上述のように、ネットワークに存在する既存の１又は複数のグループのいずれかを選択し、該選択したグループの構成メンバーとして自己のノードを追加すること、又は自己のノードが所属するグループを変更することに適している。今までに存在していなかった新規のグループを設定する場合は、例えば図７のステップＳ１２で、例えばカーソルを既存グループ名表示の最下位の下の空白位置を指示したときに、グループ新設モードとなるようにすればよい。そのようなグループ新設モードにおいては、ステップＳ１４で表示される画面ではグループ名は表示されず、また、グループ所属ノードも表示されないようにし、ステップＳ１５で表示される画面でグループ名表示箇所をブリンクさせて、新設グループ名を入力するように促すようにすればよい。そして、新設グループ名（グループ識別情報）がユーザによって入力されると、そのグループ名（グループ識別情報）が自己のノードの記憶部に記憶され、新たなグループが設定される。この場合、新設グループに所属するノードは、最初は１つだけであるが、他のノードで該グループを選択する操作を行なえば、所属ノードは増す。
【００３３】
しかし、グループ設定の手法は、上記のような手法に限らず、他の手法であってもよい。例えば、パソコンのような管理機能を持つ特定のノードにおいて、グループを設定する処理を行なうようにしてもよい。その場合、該特定のノードにおけるグループ設定処理においては、１つのグループに所属すべき複数のノードをネットワークに接続されたノードの中から選択することをユーザによる入力操作によって行ない、これらの選択された複数のノードによって構成される１つのグループの名称（グループ識別情報）をユーザによる入力操作によって付与する。こうして、グループ設定が確定すると、当該グループを構成する各ノードに対してネットワークを介してグループ名称（グループ識別情報）を通知し、これを各ノードの記憶部において記憶させることで、グループ設定・登録を行なう。その場合、グループ構成の変更・設定も該特定のノードで行なうことができる。勿論、該特定のノードにおけるグループ設定処理は、前述と同様に、各ノードにおけるプラグ種類又は個別プラグに対応付けて行なうこともできる。このように特定のノードによるグループ設定処理と、図７のような通常ノードによるグループ設定処理は併存しうる。すなわち、特定のノードによって設定したグループ設定状態は、図７のような通常ノードによるグループ設定処理によって変更しうる。
【００３４】
以上のように各ノードにおいて自己のノードが所属する（あるいは特定のプラグ種類又は個別プラグが所属する）グループ識別情報を登録・記憶するようにしたので、シリアルバスを介したデータ伝送にあたって、このグループ識別情報を用いることにより、データ授受を適切に制御することができる。すなわち、送信ノードにおいては、シリアルバスに送信するパケットのヘッダに自己のグループ識別情報を含めるようにする。そして、受信ノードでは、自己のノードの記憶部に記憶しているグループ識別情報を用いて、シリアルバスを介して送信されてきたパケットのヘッダにあるグループ識別情報が、自己のグループ識別情報に一致するかを判定する。一致すればそのパケットを取り込み、一致しなければ取り込まない。これによって、各ノード（受信ノード）において、自己のどのノードからのデータを受信すべきかをいちいち設定しておく必要がなくなる。よって、本発明によれば、送受信するノードの組合せが変更されるような場合でも、各ノード毎に受信すべきのノードの個別設定状態をいちいち変更する必要がなく、グループ化の設定状態を変更するだけで済む。このように、本発明によれば、グループの登録先を変更する（グループ化の設定状態を変更する）だけでネットワーク上の結線を自由に変更することが可能になり、また、どのような結線関係にあるかも、各ノードのグループ識別情報をチェックするだけでわかるので、把握しやすくなる。
【００３５】
次に、楽音関連信号を取り扱うネットワークにおいて、上記実施例に示したようにグループ設定を行なう場合に考慮すべき工夫について説明する。
ネットワークを介して各ノードに伝送される楽音関連信号の同期を取るために、周知のように、ワードクロックマスタノードから発生される基準タイムスタンプが利用される。そのため、複数のノードによって構成される１グループにおいては、基準タイムスタンプを生成するワードクロックマスタノードは１つだけ存在すればよい。ネットワークに接続されたノードにおいては、パソコンのような多機能機器のようにマスタクロックを発生し得るノードもあれば、ミキサーのような単機能機器のようにマスタクロックを発生し得ないノードもある。マスタクロックを発生し得るノードは、どれでも潜在的にワードクロックマスタノードとなり得る。よって、ネットワークを構築する過程でどのノードがワードクロックマスタノードとなるのか不確定的であり、その点を適切に処理できるようにすることが望ましい。以下述べる工夫は、グループ分類概念を伴うネットワークを構築する過程で、１グループ内にワードクロックマスタノードが重複して存在しないようにするものである。
【００３６】
図８は、ワードクロックマスタノードとなり得る潜在能力を持ったノードで行ないうるクロックマスタノード設定処理の一例を示すフローチャートである。まず、管理操作子Ｓ１で所定のマスタ設定用の入力操作を行なうと、このクロックマスタノード設定処理のルーチンがスタートする（ステップＳ２０）。次に、図７のステップＳ１１と同様の手法で、現状のネットワーク上に存在する全てのグループの名称を取得し、取得した全てのグループ名称（グループリスト）を表示器ＤＰＹで表示する（ステップＳ２１）。右側に併記した画面１は、図７の画面１と同様に、表示器ＤＰＹにおけるグループ名称の表示例を示している。
【００３７】
次に、図７のステップＳ１２と同様に、表示器ＤＰＹにおけるグループ名称の表示画面においてカーソルを移動させて所望のグループを選択・指示する（ステップＳ２２）。所定の選択確定操作を行なうと、カーソル指示が確定し、ステップＳ２３に行く。ステップＳ２３では、カーソルで指示された１つのグループ内に存在するクロックマスタノードの名称（ノードＩＤ）を取得し、これを表示器ＤＰＹに表示する。右側に併記した画面２’は、表示器ＤＰＹにおける１グループ内のクロックマスタノードの表示例を示しており、「ＭａｓｔｅｒＣｌｏｃｋ４４．１ｋＨｚ」が該クロックマスタノードの名称である。画面表示例では特に示していないが、該ノードの機器名や、その他の該ノードに固有の情報を合わせて表示してもよい。
【００３８】
次のステップＳ２４では操作パネルの確定（ＯＫ）操作子Ｓ４でグループ選択を確定する操作がなされたかどうかを判定する。確定（ＯＫ）操作子Ｓ４が操作された場合はステップＳ２５に行くが、画面切り換え操作子Ｓ２が操作された場合は、ステップＳ２２に戻り、グループリスト表示画面（画面１）で別のグループが選択できるようにする。ステップＳ２５では、選択確定したグループ名（グループ識別情報）を自己のノードにおける所定の記憶部に記憶すると共に、自己のノードが該グループのクロックマスタノードとなったことを、クロックマスタとしての固有情報を該所定の記憶部に記憶することで、登録する。同時に、それまで該グループのクロックマスタノードであったノードに対して、クロックマスタノードの役割をキャンセルする（剥奪する）旨のメッセージをネットワークを介して与える。このメッセージを受けて、それまで「ＭａｓｔｅｒＣｌｏｃｋ４４．１ｋＨｚ」の名称を持っていた他のノードでは、該グループのグループ識別情報を記憶から削除することで該グループから離脱すると共に、クロックマスタノードである旨の固有情報の記憶を削除する。このようにして、当該グループにおけるクロックマスタノードの役割が図８のクロックマスタノード設定処理を行なったノードに移行する。ステップＳ２５では、必要に応じてクロックマスタノードの名称（ニックネーム）を変更することも可能である。しかし、クロックマスタノードである旨の役割を示す固有情報（固有ＩＤ）は、変わらない。これによって、該グループに所属する他のノード（スレーブノード）は、クロックマスタノードの変更があったことを意識することなく、送受信処理を遂行することができる。
【００３９】
このように、特定機能のノードつまりクロックマスタノードが１つのグループにつき１つだけ存在しうるように制御することにより、特定機能のノードつまりクロックマスタノードを或るノードから別のノードに変更するような設定変更を容易に行なうことができる。新たにクロックマスタノードとなったノードでは、クロックマスタノードであることを示す所定の名称若しくは固有ＩＤを用いてネットワーク上の他のノード（スレーブノード）と通信する。例えば、ネットワークに送信する同期信号パケットのヘッダにクロックマスタノードである旨のＩＤを付加する。ネットワーク上の他のノード（スレーブノード）では、ネットワークから送信されてくる同期信号パケットのヘッダに自己のグループの識別情報とクロックマスタノードである旨のＩＤが付加されていれば、自己の所属するグループのクロックマスタノードからのデータであると認識し、該パケットを受信して処理する。従って、クロックマスタノードが具体的にどのノードであるかの区別をすることなく、スレーブノードでの処理を行なうことができるので、簡便である。
【００４０】
次に、ネットワークを介して行なうデータ送受信処理の一例につき、図９を参照して簡単に説明する。図９（Ａ）は、バスリセット時の各ノードの立ち上げ処理（ネットワーク立ち上げ時の各ノードの処理）を示すフロー図である。ネットワークの立ち上げ時における各ノードの処理の詳細は、グループに関連する処理以外の処理は、例えば特許第２８３０７６６号などに示された公知の手法と同様のものを採用してよい。図９（Ａ）には、グループに関連する処理のみを示している。まず、各ノードでは自機の記憶部から自己が所属するグループＩＤ（グループ識別情報）を読み出し、グループ認識を行なう（ステップＳ３０）。このグループ認識の詳細には、種々の仕様があり得る。例えば、単に、自己のグループ識別情報を送信パケットのヘッダに付加しうるように準備しておくと共に、受信パケットのヘッダに含まれるグループ識別情報と自己のグループ識別情報とを比較照合できるよう準備しておくだけでもよい。その場合は、パケット送信に際してヘッダにグループ識別情報を付加することは不可欠となる。別の例として、このネットワークの立ち上げ時のステップＳ３０の処理において、他のノードからそれぞれのグループ識別情報を取得し、自己と同一グループに所属するノードがどれとどれであるか（若しくは該ノード内のどのプラグ種類又はプラグが自己と同一グループに所属するか）を示すリストを自己の記憶部内に作成するようにしてもよい。その場合は、リストを参照することで、自己と同一グループのノード（又はプラグ種類又はプラグ）が判別するので、パケット送信に際してヘッダにグループ識別情報を付加することは不可欠ではなく、ノードＩＤが付加されていればよいことになる。しかし、その場合は、グループ設定が変更される毎に該リストの更新を行なう必要がある。
【００４１】
次に、ステップＳ３１では、自己のノードの所属するグループ内のクロックマスタノードに接続し、該クロックマスタノードから同期信号パケットを受け取る態勢を設定する。すなわち、送信ノード及び受信ノード共に、同期信号パケットはグループ内のクロックマスタノードから直接受取り、これに基づき各ノードでの処理の同期をとるようになっている。これにより同期の精度をいっそう向上させることができる。なお、同期処理が不要なノードにあってはステップＳ３１の処理は不要である。勿論、自己のノードがクロックマスタノードである旨の識別子（固有ＩＤ）を有している場合も、ステップＳ３１の処理は不要である。
【００４２】
図９（Ｂ）は、グループ識別情報を利用したデータ送信処理（つまり送信ノードでの処理）の一例を示すフロー図である。図９（Ｃ）は、グループ識別情報を利用したデータ受信処理（つまり受信ノードでの処理）の一例を示すフロー図である。送信ノードにおいては、送信すべきデータのヘッダに自己のノードが所属するグループのグループ識別情報（グループＩＤ）を付加する（ステップＳ３２）。そして、このヘッダとデータをパケット化してシリアルバスに送信する（ステップＳ３３）。ヘッダに付加するグループ識別情報（グループＩＤ）は、自己のグループＩＤに限らず、データを受信してもらいたい他のグループのグループ識別情報（グループＩＤ）であってもよい。その場合は、受信先として所望の１又は複数のグループを選択し、そのグループ識別情報（グループＩＤ）をヘッダに付加する（ステップＳ３２）。受信ノードでは、シリアルバスから受け取ったパケットのヘッダにあるグループ識別情報（グループＩＤ）を検出する（ステップＳ３４）。そして、該パケットのグループ識別情報（グループＩＤ）が自己のグループ識別情報（グループＩＤ）と一致している場合は、該パケットを自己のノードに取り込んでデパケットし、そのデータ又はコマンドを解釈して必要な処理を行なう（ステップＳ３５）。一致していない場合は、何も処理を行なわない。このようにグループ識別情報を用いることにより、複雑に論理接続されているノード間のデータの授受形態をわかりやすく処理することができ、また、複数の必要なノードのみを容易に抽出してリアルタイムでのデータやコマンドのやり取りを行うことが容易にできるようになる。
【００４３】
上述した実施例によれば、ネットワークに接続された複数のノードの中から１又は複数のノードを選択してそれらを１つのグループとして分類し各ノードにてそのグループ識別情報を登録し、該グループ識別情報により共通のデータ授受グループを形成しているノードを判別できるようにしたので、各ノードのグループ識別情報を見るだけで、実際にどのノードとどのノードが接続関係（データを実際に授受する関係）にあるのかが判明し、複数のノード同士の実際の接続状態を容易に判別することができる。また、或る１つのノードの所属するグループを別のグループに変更するだけで、該別のグループに存在している全てのノードとの接続関係を確立することが可能であり、ネットワークを介して接続された複数のノード同士の実際の接続状態の設定を行なったり、その設定内容を変更することが容易に行なえる。
【００４４】
また、上述した実施例によれば、ワードクロックマスタノードのような特定機能のノードが１つのグループにつき１つだけ存在しうるように制御することにより、特定機能のノードを或るノードから別のノードに変更するような設定変更を容易に行なうことができる。例えば、特定機能のノードを或るノードから別のノードに変更するときにグループ分類構成の組替えを行なうことなく、特定機能のノードの変更のみで対処できる。従って、ワードクロックマスタノードのような特定機能のノードの設定変更が容易となる。また、ワードクロックマスタノードのような該特定機能のノードが変更されたとしても、該特定機能に特有の識別情報又は名称を用いて他のノードと通信するようにしたことにより、他のノードではその変更を意識することなく、常に前記特有の識別情報又は名称を用いて該特定機能のノードを特定すれば済むこととなり、ワードクロックマスタノードのような特定機能のノードの設定変更が容易となる。
【図面の簡単な説明】
【図１】複数のノードを接続した通信ネットワークの構成例を示すブロック図。
【図２】パケットデータの形式を示す図。
【図３】１つのノードにおける処理を大まかに示す機能ブロック図。
【図４】１つのノードにおけるハードウェア構成を例示するブロック図。
【図５】ノードにおけるプラグ種類と個別プラグの一例を示す図。
【図６】ノードにおける操作パネル（入力装置）の一例を示す図。
【図７】本発明の一実施例を示すもので、ノードで行なうグループ設定処理の一例を示すフローチャート。
【図８】本発明の別の実施例を示すもので、クロックマスタノード設定処理の一例を示すフローチャート。
【図９】ネットワークを介して行なうデータ送受信処理の一例を示すフローチャート。
【図１０】本発明の一実施例に従うネットワークにおけるグループ設定例を模式的に示す図。
【符号の説明】
Ｎ１〜Ｎ９  ノード
ＭＮ１〜ＭＮ  ワードクロックマスタノード
１２  ＣＰＵ
１３  ＲＡＭ
１４  ＲＯＭ
１５  通信インタフェース
１６  音源装置
１７  外部記憶装置
１８  ディスプレイ装置
１９  入力装置（操作パネル）
ＤＰＹ  操作パネルにおける表示器
ＴＫＹ  操作パネルにおけるデータ入力操作子
Ｓ１  操作パネルにおける管理操作子
【図１】
0003584873.tif 000002
【図２】
0003584873.tif 000003
【図３】
0003584873.tif 000004
【図４】
0003584873.tif 000005
【図５】
0003584873.tif 000006
【図６】
0003584873.tif 000007
【図７】
0003584873.tif 000008
【図８】
0003584873.tif 000009
【図９】
0003584873.tif 000010
【図１０】
0003584873.tif 000011