JP4899568B2 - ネットワークシステム及び音響信号処理装置 - Google Patents

ネットワークシステム及び音響信号処理装置 Download PDF

Info

Publication number
JP4899568B2
JP4899568B2 JP2006084253A JP2006084253A JP4899568B2 JP 4899568 B2 JP4899568 B2 JP 4899568B2 JP 2006084253 A JP2006084253 A JP 2006084253A JP 2006084253 A JP2006084253 A JP 2006084253A JP 4899568 B2 JP4899568 B2 JP 4899568B2
Authority
JP
Japan
Prior art keywords
packet
transmission
data
nodes
node
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.)
Expired - Fee Related
Application number
JP2006084253A
Other languages
English (en)
Other versions
JP2007259347A (ja
Inventor
圭 中山
良太 広瀬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP2006084253A priority Critical patent/JP4899568B2/ja
Publication of JP2007259347A publication Critical patent/JP2007259347A/ja
Application granted granted Critical
Publication of JP4899568B2 publication Critical patent/JP4899568B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

この発明は、複数のノード間で音響信号の伝送を行うためのネットワークシステム及び、このようなネットワークシステムを構成する音響信号処理装置に関する。
従来から、複数のノード間で音響信号の伝送を行うためのオーディオネットワークシステムが知られており、コンサート、演劇、音楽製作、構内放送等において用いられている。このようなオーディオネットワークシステムの例としては、以下の非特許文献1乃至3に記載のような、CobraNet(商標),SuperMAC(商標),EtherSound(商標)が知られている。
「CobraNet(TM)」、[online]、バルコム株式会社、[平成18年3月21日検索]、インターネット<URL:http://www.balcom.co.jp/cobranet.htm> 「SuperMAC(TM) - Sony Pro Audio Lab, Oxford」、[online]、Sony Pro Audio Lab、[平成18年3月21日検索]、インターネット<URL:http://www.sonyoxford.co.uk/pub/supermac/> Carl Conrad、「EtherSound(TM) in a studio environment」、[online]、Digigram S.A.、[平成18年3月21日検索]、インターネット<URL:http://www.ethersound.com/news/getnews.php?enews_key=101>
また、オーディオネットワークシステムには、一般的に、アナログ入力,アナログ出力,デジタル入力,デジタル出力,ミキシング,エフェクト付与,録音再生,リモート制御,あるいはこれらの組み合わせ等の各種機能を有する音響機器を任意に接続できることが要望される。
しかしながら、オーディオネットワークシステムを含め、従来のネットワークシステムには、以下のような問題があった。
まず、音響信号の伝送に用いることのできる回線数はネットワーク帯域の上限までに限られる一方、物理的に伝送可能な回線数は、ネットワークの構成によって変化し、論理的に計算される上限帯域幅が得られるとは限らなかった。例えば、送信元のノードから末端のノードまでのノード数によってデータが届くまでの時間が変わり、かつ、全ノードにデータが届くまで次の通信をしないため、ネットワークを構成するノード数が多いとデータの転送に時間がかかり、帯域をロスする等である。
従って、どのノードからどのノードに対して何チャンネル(ch)の波形データの送受信を行うか、といったことを予め考慮してネットワークシステムにおける機器接続のトポロジーを設計しなければならず、設計が難しいという問題があった。
また、行いたい音響信号の伝送に必要な伝送ch数が一旦構築したネットワークで得られるネットワーク帯域の上限を超えた場合、新たにネットワークカード等の機器を追加することでしか帯域幅を拡張することができず、すなわち伝送可能ch数を増加させることもできなかった。また、追加したとしても、新たに追加した機器をネットワークに接続するための配線を行わなければならないため、伝送可能ch数を増加させるための作業が面倒であるという問題もあった。
この発明は、このような問題を解決し、複数のノード間で音響信号の伝送を行うためのネットワークシステムを構築する場合に、ネットワークに一定の伝送帯域幅を維持できるようにすると共に、伝送帯域幅の増加も容易に行えるようにすることを目的とする。
上記の目的を達成するため、この発明のネットワークシステムは、それぞれ受信手段及び送信手段を2組備えた複数のノードを、順次、あるノードの1組の受信手段及び送信手段と別のノードの1組の送信手段及び受信手段とを通信ケーブルで接続し、接続された各ノード間において双方向のデータ伝送が可能なネットワークシステムにおいて、上記複数のノードのうち1のノードがマスタノードとなり、上記マスタノードが、N(Nは整数)チャンネルの音響信号のデータを含むパケットを、サンプリング周期毎に形成してループ状に形成された伝送路における次のノードに送信するとともに、そのマスタノードが直前のサンプリング周期にて送信し上記ループ状の伝送路を巡回した上記パケットを、サンプリング周期毎に上記ループ状の伝送路における前のノードから受信し、上記接続された各ノード間においては、上記パケットが、上記サンプリング周期毎に上記ループ状の伝送路を一方向に巡回し、上記通信ケーブルにより上記複数のノードがカスケード状に接続された場合には、その複数のノードのうち両端のノードで上記パケットの伝送を折り返すことにより上記各ノード間で上記パケットが巡回するループ状の伝送路を1つ形成して、その伝送路に上記サンプリング周期毎に1つの上記パケットを巡回させることにより、その各ノード間でNチャンネルの音響信号の伝送を行い、上記カスケード状に接続された複数のノードのうち両端のノード同士が接続され上記複数のノードがリング状に接続された場合には、上記両端のノードが上記折り返しに代えてそのノード間での双方向の伝送を開始することにより、上記各ノード間で上記パケットが巡回するループ状の伝送路であってパケットの伝送方向が互いに異なるものを2つ形成して、一方の伝送路に第1の上記パケットを巡回させ、他方の伝送路に第1の上記パケットと異なるチャンネルの音響信号のデータを含む第2の上記パケットを巡回させることで、その各ノード間で2Nチャンネルの音響信号の伝送を行うようにしたものである。
このようなネットワークシステムにおいて、上記複数のノードがリング状に接続された場合の伝送動作を、二重化ループモードに指定するモード指定手段を設け、上記二重化ループモードが指定されている場合は、上記2Nチャンネルの音響信号の伝送に代えて、上記形成されたループ状の2つの伝送路で同じ音響信号のデータを含むパケットを巡回させることによりNチャンネルの音響信号の伝送を二重化して行うようにするとよい。
さらに、上記複数のノードがリング状に接続された場合に、その接続により形成されたループ状の伝送路におけるパケットの巡回を確認する確認手段を設け、その確認手段によりパケットの巡回が確認された場合に、上記形成されたループ状の伝送路における上記音響信号のデータを含むパケットの巡回を開始するようにするとよい。
また、この発明の音響信号処理装置は、受信手段及び送信手段を2組備えた音響信号処理装置において、その音響信号処理装置は、複数の音響信号処理装置を、順次、ある装置の1組の受信手段及び送信手段と別の装置の1組の送信手段及び受信手段とを通信ケーブルで接続し、接続された音響信号処理装置間において双方向のデータ伝送が可能であり、上記複数の音響信号処理装置のうち特定の1の装置が、N(Nは整数)チャンネルの音響信号のデータを含むパケットを、サンプリング周期毎に形成してループ状に形成された伝送路における次の音響信号処理装置に送信するとともに、その特定の1の装置が直前のサンプリング周期にて送信し上記ループ状の伝送路を巡回した上記パケットを、サンプリング周期毎に上記ループ状の伝送路における前の音響信号処理装置から受信し、上記接続された各装置間においては、上記パケットが、上記サンプリング周期毎に上記ループ状の伝送路を一方向に巡回するネットワークシステムを構成するものとし、上記2組の受信手段及び送信手段のうちの1組のみにて上記双方向のデータ伝送が可能な第1の状態において、その双方向のデータ伝送が可能な受信手段が受信した上記パケットを、同じ組の送信手段から送信する折り返し動作により、上記サンプリング周期毎にNチャンネルの音響信号の伝送を行い、上記2組の受信手段及び送信手段のいずれも上記双方向のデータ伝送が可能な第2の状態となったことを検知し、その検知に応じて、上記折り返しを中止して、一方の組の受信手段が受信した上記パケットを他方の組の送信手段から送信する双方向動作に移行し、パケットの伝送方向が互いに異なる2つの上記伝送路について相互に異なるチャンネルの音響信号のデータを含む上記パケットを伝送することにより、上記サンプリング周期毎に2Nチャンネルの音響信号の伝送を行う通信制御手段を設けたものである。
このような音響信号処理装置において、二重化ループモードを設定するモード設定手段を設け、上記通信制御手段が、上記二重化ループモードが設定されている場合は、上記検知に応じて同じ音響信号のデータを含む上記パケットを2つの上記伝送路に伝送することにより、上記2Nチャンネルの音響信号の伝送に代えて、Nチャンネルの音響信号の伝送を二重化して行うようにするとよい。
さらに、上記通信制御手段が、上記第1の状態から上記第2の状態となったことを検知したことに応じて、上記2つの伝送路におけるパケットの巡回をそれぞれ確認し、そのパケットの巡回が確認された場合に上記双方向動作に移行するようにしるとよい。
以上のようなこの発明のネットワークシステムによれば、複数のノード間で音響信号の伝送を行うためのネットワークシステムを構築する場合に、ネットワークに一定の伝送帯域幅を維持できるようにすると共に、伝送帯域幅の増加も容易に行えるようにすることができる。
以下、この発明を実施するための最良の形態を図面に基づいて具体的に説明する。
まず、図1に、この発明のネットワークシステムの実施形態であるオーディオネットワークシステムの概略を示す。
図1(a)に示すように、このオーディオネットワークシステム1は、それぞれ単方向の通信を行う受信手段である受信インタフェース(I/F)と送信手段である送信I/Fの組を2組備えたノードA〜Cを、通信ケーブルCBで順次接続することにより構成したものである。ノードAにおいては、受信I/F_AR1と送信I/F_AT1が1組のI/Fで、受信I/F_AR2と送信I/F_AT2がもう一組のI/Fである。ノードB及びCについても、符号の先頭の文字「A」を「B」あるいは「C」に置き換えたI/Fが、同様な関係に当たる。
そして、ノード間の接続は、1組の受信I/F及び送信I/Fを、別のノードの1組の送信I/F及び受信I/Fとそれぞれ通信ケーブルCBで接続することにより行っている。例えば、ノードAとノードBとの間では、受信I/F_AR2と送信I/F_BT1とを接続すると共に、送信I/F_AT2と受信I/F_BR1とを接続している。また、ノードBとノードCとの間では、ノードBのもう1組のI/Fと、ノードCの1組のI/Fとを接続している。
なお、図1に示す各ノードは、アナログ入力,アナログ出力,デジタル入力,デジタル出力,ミキシング,エフェクト付与,録音再生,リモート制御,あるいはこれらの組み合わせ等の各種機能を有する音響信号処理装置である。ノード毎に機能が違っていても当然構わない。
ここで、(a)に示すように、各ノードを、端部を有する1本のラインのように接続した状態を、カスケード接続と呼ぶことにする。そしてこの場合、各ノード間を結ぶケーブルCBにより、破線で示すように1つの循環するデータ伝送経路を形成することができ、各ノードは、この経路でパケットを伝送し、そのパケットに対して必要な情報を読み書きすることにより、経路上の任意のノードとの間でデータの送受信を行うことができる。
なお、図1ではケーブルを2本示しているが、1組の受信I/Fと送信I/Fとを近接してあるいは一体として設ければ、2本を束ねて1本にしたケーブルにより、1組のI/F間の接続を行うことも可能である。
また、(a)に示したカスケード接続に加え、両端のノードで使用していないI/F同士も通信ケーブルCBで接続すると、(b)に示すように、循環するデータ伝送経路を2つ形成することができる。そして、各ノードは、これらの経路でそれぞれパケットを伝送し、そのパケットに対して必要な情報を読み書きすることにより、経路上の任意のノードとの間でデータの送受信を行うことができる。このような状態を、ループ接続と呼ぶことにする。
なお、各ノードには、必要なI/Fを設ければ、(c)に示すように、外部機器Nを接続し、外部機器Nから受信したデータをパケットに書き込んで他のノードに送信したり、パケットから読み出したデータを外部機器Nに送信したりすることもできる。
このような外部機器Nとしては、例えば外付けのコンソールが考えらる。そして、コンソールがユーザから受け付けた操作に応じたコマンドをノードBに送信し、ノードBがこれをパケットに書き込んで他のノードに送信したり、他のノードがパケットに書き込んで送信してきた応答やレベルデータ等をノードBが読み出してコンソールに送信し、コンソールにおける操作子状態の表示やレベル表示に使用するといった動作を行わせることが考えられる。
次に、図2に、上述した伝送経路で伝送されるパケットの構成例を示す。
図2に示すように、このパケット100は、サイズが1282バイトであり、先頭から順に、ヘッダ101,管理データ102,波形データ(オーディオデータ)103,制御データ104,FCS(Frame Check Sequence)105からなる。
そして、ヘッダ101は、計22バイトのデータであり、IEEE(Institute of Electrical and Electronic Engineers)802.3で規定されるプリアンブル,SFD(Start Frame Delimiter),宛先アドレス,送信元アドレス,長さを記載する。
なお、このオーディオネットワークシステム1においては、送信I/Fから送出されるパケットは、1本の接続ケーブルCBで接続された受信I/Fにしか届かないから、アドレスの記載はあまり意味がない。そこで、宛先アドレスとしては、例えばブロードキャストを示すアドレスを記載し、送信元アドレスとしては、送信元のノードを示すID等を記載することが考えられる。このIDとしては、送信I/FのMAC(Media Access Control)アドレスを記載してもよいが、これに限られることはない。
また、管理データ102は、8バイトのデータであり、オーディオネットワークシステム1内の各ノードがパケットに含まれるデータの管理に利用するデータとして、パケット通し番号,各サンプリング周期内のパケット番号,サンプル遅れ値,波形データ103中の波形データのch数を記載する。
そして、波形データ103の領域としては1024バイトを確保し、音響信号のデータである1サンプル32ビットの波形データを256ch分記載できる。すなわち、パケット100には一度に256種類の波形データを記載して伝送を行うことができる。なお、伝送すべき波形データがない場合でも、無音を示すデータ等、何らかのデータを記載し、データサイズは一定にする。
また、制御データ104の領域としては224バイトを確保し、ここには、各ノードに動作を指示するためのコマンドや、それに対する応答、レベル表示に使用するレベルデータ等、様々なデータを記載することができる。
通常のイーサネット(登録商標)のパケットをこのサイズに入るように分割して記載し、パケットの受信側で複数のパケット100からデータを取り出して結合し、分割前のパケットを復元することにより、通常のイーサネットのパケットをノード間で転送することもできる。イーサネットパケットの最大サイズは1526バイトであるので、224バイトずつに分割して送信するとすると、最大でも7パケットに分ければ送信が可能である。また、制御データ104についても、伝送すべきデータがない場合にもダミーのデータを記載して、データサイズが一定になるようにする。
FCS105は、IEEE802.3で規定される、フレームのエラーを検出するためのフィールドである。
次に、図3に、図2に示したパケット100の伝送タイミングを示す。
この図に示すように、オーディオネットワークシステム1においては、パケット100を、96kHz(キロヘルツ)のサンプリング周期1周期である10.4μsec(マイクロ秒)毎に1つ、ノード間で伝送させるようにしている。そしてこのことにより、各サンプリング周期に、256の伝送chについて、それぞれ1サンプル分の波形データを、各ノードに送信することができる。
1Gbps(ギガビット・パー・セカンド)のイーサネット(登録商標)方式のデータ転送を採用すれば、パケット100の時間長は、1ナノ秒×8ビット×1282バイト=10.26μsecであり、1サンプリング周期内に伝送が完了する。
なお、1282バイトの場合、計算上は1sec/10.26μsec=97.47kHzのサンプリング周期まで対応可能であり、96kHzのサンプリング周期であれば、10.4μsec/8ビット/1ナノ秒=1300バイトのパケットサイズまで伝送可能である。しかし、ノード間での伝送遅延を考慮し、パケットサイズには多少の余裕を持たせることが好ましい。
次に、図4に、オーディオネットワークシステム上での図2に示したパケットの伝送状況を示す。
ここでは、ノードAからノードDまでの4つのノードをカスケード接続したオーディオネットワークシステムを考える。そして、このシステム内の各ノードに図2にパケット100を循環させる場合、いずれか1つのノードをマスタノードに定め、そのノードのみが新たなパケット(通し番号の異なるパケット)の生成を行う。また、そのマスタノードがワードクロックの生成も行う。マスタノード以外のノードはスレーブノードである。
そして、マスタノードCが最初に図で右向きに、ノードDに向かってパケットを送信するとすると、そのパケットは、破線で示すように、ノードC→D→C→B→A→B→Cの順で伝送され、ノードCに戻ってくる。また、この伝送の際、各ノードは、パケットを受信してから送信するまでに、他のノードから受信すべき波形データや制御データをパケットから読み取り、また他のノードに送信すべき波形データや制御データをパケットに書き込む。
そして、マスタノードは、パケットが伝送路を1周して戻ってくると、そのパケットの管理データ102を書き換えて次のサンプル周期のパケットを生成し、ワードクロックのタイミングと合わせてそのパケットの送信を開始する。なおこのとき、マスタノードも他のノードと同様にパケットに対してデータの読み書きを行う。
以上を繰り返すことにより、1サンプリング周期につき1つのパケットに、(a)から(e)に時系列的に示すように、各ノードを巡回させることができる。これらの図において、黒塗りの矢印はパケットの先頭を、黒丸はパケットの末端を示す。線の矢印は、パケットの切れ目を分かり易くするために記載したものである。
なお、各ノードは、パケットの全てを受信してからデータの読み書きや次のノードへの送信を行う必要はなく、先頭から必要なバイト数だけ受信したら、データの読み書きや次のノードへの送信の処理を開始してしまってよい。そしてその後、パケットの末端まで、受信するのとほぼ同じ速さでデータの読み書きや送信を行って行けばよい。
なお、両端のノード以外のノードは、1周のうちに2度パケットを通過させることになるが、このうちデータの読み書きを行うのは1度のみである。どちらで読み書きを行うかは、最初にパケットを通過させる時、図で右向きにパケットを通過させる時等、任意に定めればよい。読み書きを行わない場合には、単に送信元アドレスだけ書き換えてパケットの残りの部分はスルーさせればよい。
また、各ノードにおいて、パケットのデータを書き換えるためや、受信側と送信側のクロックの差を吸収するために、パケットの受信時バッファリングを行う必要があるので、パケットの受信開始から送信開始まで幾分かのタイムラグが生じる。しかし、次のワードクロックのタイミングまでに、マスタノードが送信したパケットのうち、次のパケットの先頭部分を生成して送信を開始できる程度の部分がマスタノードに戻ってきていれば、その後順次受信するデータを次のパケットの生成に用いることにより、問題なく次のパケットの生成と送信を行うことができる。
カスケード接続の場合、以上のようなパケットの伝送に際し、例えばi−1番目のサンプリング周期のパケットi−1には、ノードCに戻ってくる時点では、各ノードがi−1番目のサンプリング周期に送信する波形データが記載されている。そして、ノードCがこのデータに基づいてi番目のサンプリング周期のパケットiを生成する時点では、そのパケットiには、ノードC自身がi番目のサンプリング周期に送信する波形データを書き込んだ部分以外は、依然としてi−1番目のサンプリング周期の波形データが記載されたままである。
そしてその後、伝送経路を1周するうちに、各ノードが所定の位置にi番目のサンプリング周期に送信する波形データを書き込むことにより、ノードCに戻ってくる時点では、パケットiは、各ノードがi番目のサンプリング周期に送信する波形データが記載された状態となる。
ただし、伝送経路の途中においては、パケットiには、i−1番目のサンプリング周期に送信された波形データと、i番目のサンプリング周期に送信された波形データとが混在することになる。しかし、パケットiから波形データを読み取ったノードにおいて、既にi番目のサンプリング周期に送信する波形データを書き込んだノードの波形データを、1サンプル分遅延させて処理に用いるようにすれば、各ノードから送信されてきた波形データのサンプリング周期を揃えて処理を行うことができる。
どのノードからの波形データについて遅延を行えばよいかは、ノードの接続順や、各ノードがいつ書き込みを行うかによって異なるが、これらの規則を把握していれば、その規則に基づいて導き出すことはできる。例えば、各ノードが最初にパケットを通過させる時にデータの書き込みを行うのであれば、自ノードより伝送経路の上流に位置するノードから送信されてきた波形データについて遅延を行えばよい。
なお、ここではカスケード接続の場合の場合のパケット転送方式及びデータの読み書き方式について説明したが、ループ接続の場合も、基本部分については同様である。すなわち、1サンプリング周期につき1つのパケットを伝送路に沿って1周させ、その間に各ノードが1回ずつパケットに対して必要なデータの読み書きを行う。
しかし、図1に示したように、ループ接続の場合、1つのオーディオネットワークシステム中に伝送経路が2つできるため、それぞれの伝送路についてパケットを1つずつ循環させる。そして、どちらの伝送経路のパケットも、マスタノードが生成し、ワードクロックのタイミングで送信を開始する。
そして、ループ接続の場合、2つの伝送経路のパケットに同じデータを書き込んで循環させる二重化通信と、2つの伝送経路のパケットに別々のデータを書き込んで循環させる二倍化通信とを、選択的に行うことができる。
このうち、二重化通信の場合には、パケットは2つになっても同じデータを記載するため、1サンプリング周期当たりに伝送可能な情報量、すなわち通信の帯域幅は、カスケード接続の場合と同じである。しかし、1ヶ所で断線が生じても速やかにカスケード接続の伝送に移行し、同じ帯域幅でのデータ伝送を維持することができる。また、2つのパケットの内容を比較することにより、データが正確に伝送されているかどうかを確認することができる。
一方、二倍化通信の場合には、1サンプリング周期当たりにパケット2つ分のデータを伝送可能であるから、通信の帯域幅を、カスケード接続の場合の2倍にすることができる。
このオーディオネットワークシステムにおいては、以上のような方式のデータ伝送を行うことにより、1サンプリング周期内にパケットを1周させることのできる程度のノード数であれば、ネットワーク内で常にパケットのサイズに応じた一定の伝送帯域幅を確保することができる。そして、この帯域幅は、特定のノード間でのデータ伝送量の多寡には影響されない。
また、カスケード接続によりネットワークシステムを構築した場合、その両端のノードを接続することにより、容易に伝送帯域幅を2倍にしたり(二倍化)、伝送の冗長性を高めて断線に対する耐性を向上させたり(二重化)することができる。
次に、以上説明してきたようなパケットの伝送を行うためのハードウェア及びその動作について説明する。
まず、図5に、上述のオーディオネットワークシステム1を構成する各ノードとなる音響信号処理装置のハードウェア構成を、パケット伝送に関連する部分を中心に示す。
図5に示すように、この音響信号処理装置2は、第1,第2のデータ入出力部10,20、第1,第2の受信I/F31,33、第1,第2の送信I/F34,32、セレクタ35〜38、信号処理部39及び制御部40を備える。
このうち、第1,第2の受信I/F31,33及び第1,第2の送信I/F34,32は、図1に示した2組の受信I/F及び送信I/Fと対応する通信手段であり、通信ケーブルの接続に際しては、第1の受信I/F31と第1の送信I/F34とを1組とし、第2の送信I/F32と第2の受信I/F33とを1組とする。これらのI/Fは、上述した1サンプリング周期内のパケット伝送に十分な能力を有していれば、どのような通信方式でデータ通信行うI/Fであってもよいが、ここでは1Gbpsのイーサネット方式のデータ転送を行うI/Fを採用している。
また、信号処理部39は、音響信号処理装置2が有する音響信号処理に関する機能を実現するモジュールである。どのような信号処理を行う機能を有するかは、装置の種類によって大きく異なる。例えば、1chの波形データの入力を受け付けてそれを単にアナログ信号に変換して出力するものであってもよいし、多chの波形データに対してミキシング処理を行い、その結果を多chの波形データとして出力するものであってもよい。
制御部40は、CPU,ROM,RAM等を備え、音響信号処理装置2全体の制御を行う制御手段であり、CPUがROM等に記録された適当なプログラムを実行することにより、その制御に係る種々の処理を行う。その処理の内容については、後述する。
また、第1,第2のデータ入出力部10,20はそれぞれ、対応する受信I/Fから受信したパケットに対してデータの読み書きを行う手段である。そして、これらの入出力部の機能は同等なものであるので、第1のデータ入出力部10について代表して説明する。
第1のデータ入出力部10は、データ抽出部11,波形入力用FIFO12,波形出力用FIFO13,制御入力用FIFO14,制御出力用FIFO15,フレームバッファ16を備える。また、第1の受信I/F31が接続先から受信したキャリア信号であるネットワーククロックNC1の供給を受けてそれに従って動作する。
そして、第1の受信I/F31は、受信したパケットのデータを、データ抽出部11とフレームバッファ16にそれぞれ入力する(ここではセレクタ38では第1の受信I/F31からの入力が選択されているとする)。
そしてこのうち、データ抽出部11は、受信したデータのうち、読み出すべき波形データを波形入力用FIFO12に書き込み、読み出すべき制御データを制御入力用FIFO14に書き込み、それ以外のデータは破棄する機能を有する。そして、波形入力用FIFO12に書き込まれたデータは信号処理部39が、制御入力用FIFO14に書き込まれたデータは制御部40が、それぞれファーストイン・ファーストアウトで読み出し、信号処理及び制御に使用する。
なお、波形データについては、制御部40が、少なくともどの伝送chのデータを読み取るべきか把握しており、そのデータがパケットの何バイト目に記載されているかは計算で求められるため、制御部40がその位置をデータ抽出部11に指示し、その位置のデータのみを波形入力用FIFO12に書き込ませるようにすればよい。しかし、制御データについては、内容を解析しないと音響信号処理装置2が参照すべきデータであるか否かわからない場合もあるので、全てのデータを制御入力用FIFO14に書き込んでおき、制御部40に要否を判断させるようにするとよい。なお、波形データについても、全てのデータを波形入力用FIFO12に書き込み、信号処理部39に要否を判断させるようにしてもよい。
一方、波形出力用FIFO13は、パケットに記載して出力すべき波形データを格納するバッファであり、信号処理部39は、サンプリング周期毎に出力すべき波形データをここに書き込む。複数の伝送ch分の波形データを書き込むことも当然可能であり、パケットの先頭に近いバイトに書き込むデータを先に波形出力用FIFO13に書き込んでおけばよい。
また、制御出力用FIFO15は、パケットに記載して出力すべき制御データを格納するバッファであり、制御部40は、出力すべき制御データをここに書き込む。
そして、フレームバッファ16にパケットのデータが所定量(第1の所定量)蓄積されると、蓄積の進行に合わせて、波形出力用FIFO13及び制御出力用FIFO15のデータを、フレームバッファ16の適当なアドレスに書き込んでパケットの内容を書き換える。
パケットの何バイト目にデータを書き込めばよいかは、波形データについては、何番目の伝送chを出力に使用するかに基づいて定めることができる。制御データについても、例えば、図2に示した制御データ104の領域をいくつかに区分し、どの区分を伝送に使用するかに基づいて定める等することができる。
また、マスタノードにおいては、パケット中の管理データ102の書き換えも行うが、この書き換えは、新たなパケットに記載すべきデータを制御出力用FIFO15に書き込んでおき、このデータをフレームバッファに蓄積されたパケットに上書きして行うようにするとよい。
また、スレーブノードでは、フレームバッファ16にパケットのデータが上記の第1の所定量より多い第2の所定量だけ蓄積されると、フレームバッファ16はパケットの出力を開始し、セレクタ35が第2の送信I/F32への出力を選択していれば、パケットのデータを先頭から順に第2の送信I/F32に渡して送信させる。マスタノードでは、ワードクロックのタイミングで第2の送信I/F32に送信を開始させる。
なお、パケットのデータを書き換える際、一旦受信したパケットの内容をフレームバッファ16に格納してから書き換えを行うのではなく、ビット毎あるいはバイト毎に、受信したパケットの内容、波形出力用FIFO13の内容、および制御出力用FIFO15の内容のうち適切なものを選択してフレームバッファ16に書き込むようにしてもよい。この場合、受信したパケットの内容のうち、フレームバッファ16に書き込まない部分は破棄することになる。
また、マスタノードについては、送信したパケットが正常に伝送されたなかった場合に後で内容を復元できるよう、伝送経路1周の正常な伝送が確認されるまで、送信したパケットの内容をフレームバッファ16とは別にバッファしておく。
以上がパケット送信に関するデータ入出力部の機能である。
なお、上述のように、カスケード接続の場合、各ノードはパケットに伝送経路を1周させる間、1回しか読み書きを行わない。従って、第1,第2のデータ入出力部10,20のいずれか一方でしかデータの読み書きを行わない。そして、データの読み書きを行わない方のデータ入出力部では、単にデータをスルーさせるのみとする。データ抽出部へのデータの書き込みも行わなくてよい。
また、図示は省略したが、スレーブノードでは、データの読み書きを行う側のデータ入出力部におけるパケットの受信タイミングに同期させてPLL(Phase Locked Loop)によりサンプリングクロックを生成し、信号処理部39に供給する。従って、データの補間を行わなくても波形データの受信タイミングと波形データの処理タイミングとを同期させることができるため、信号の品質劣化を防止することができる。
なお、ループ伝送の場合には、第1の受信I/F31でパケットを受信するタイミングと第2の受信I/F33でパケットを受信するタイミングとが一致しない場合もあるが、この場合、カスケード伝送の際にデータの読み書きに使用するデータ入出力部(ここでは第1のデータ入出力部10)と対応するI/Fでパケットを受信するタイミングに同期させるとよい。
また、第1のデータ入出力部10では、上記のサンプリングクロックに同期したネットワーククロックNC2の生成も行い、第2の送信I/F32に供給して、接続先との通信に使用させる。
マスタノードでは、図示しないクロック生成部がワードクロックを生成し、それをサンプリングクロックとして用いる。また、ネットワーククロックNC2の生成も、そのワードクロックに同期させて行う。
ところで、図1(a)等からわかるように、パケットの送信先は、パケットの送信元と別のノードになる場合(図1(a)のノードB)と、送信元と同じノードになる場合(同ノードA,C)とがある。そして、前者の場合、パケットの送信は、パケットを受信した受信I/Fと別の組の送信I/Fから行い、後者の場合、同じ組の送信I/Fから行う。
セレクタ35〜38は、このような送信先の切り替えを行うために設けたものである。
そして、セレクタ35とセレクタ36は連動して動作し、セレクタ35がフレームバッファ16の出力を第2の送信I/F32に流す状態では、セレクタ36は第2の受信I/F33で受信したデータをフレームバッファ26に書き込み、第2のI/F側のノードと通信が可能な状態となる。
しかし、セレクタ35とセレクタ36とを折り返しラインTL1の側に切り換えると、フレームバッファ16の出力は、フレームバッファ26に書き込み、そこから第1の送信I/F34に渡して接続先に送信させる。従って、受信したパケットをその送信元に対して折り返し送信することになる。なおこのとき、データをフレームバッファ26に書き込まず、ここをスルーしてフレームバッファ16の出力を直接第1の送信I/F34に渡すことができるようにしてもよい。また、ネットワーククロックは、送信するデータを供給する第1のデータ入出力部10が生成したNC2を使用させるようにするとよい。
また、この状態では、第2の受信I/F33からパケットを受信しても、その内容はフレームバッファ26には書き込まれない。しかし、その内容はデータ抽出部21には書き込まれ、データ抽出部21はこれを全て制御入力用FIFO24に書き込んで制御部40に入力する。また、この状態では、第2の送信I/F32には、フレームバッファ16の出力は供給されないが、制御部40から直接データを渡して送信させる経路は設けている。
これらの入出力経路は、後述するテストパケットやそれに対する返答の送受信、あるいは、初期処理においてオーディオネットワークシステムを組み立てたり、システムの構成変更に係る処理を行ったりする際の通知やコマンドの送受信等に用いる。
また、ここではセレクタ35,36について説明したが、セレクタ37,38も、連動して動作することにより同様な機能を有する。そして、第2の受信I/F33から受信したパケットに関し、折り返しを行うか否かを切り換えることができる。
以上をまとめると、音響信号処理装置2においては、所属するオーディオネットワークシステム中での各ノードの接続状態と、自機がマスタノードかスレーブノードかとに従い、図5に示したハードウェアが、検出したイベントに応じて以下の表1乃至表4のいずれかの処理を行うことにより、図1乃至図4を用いて説明したようなパケット及びデータの伝送に係る機能を実現することができる。ただし、表2では、カスケード接続の場合に常に第1のデータ入出力部10をデータの入出力に使用する例を示しており、第2のデータ入出力部20を使用する場合には、第1のデータ入出力部10と第2のデータ入出力部20の機能が逆になるよう、処理の内容を入れ替えればよい。
Figure 0004899568
Figure 0004899568
Figure 0004899568
Figure 0004899568
次に、図5に示した音響信号処理装置2において制御部40のCPUが実行する、ネットワークの構築や構成変更に関連する処理について説明する。
まず、音響信号処理装置2において、セレクタ35〜38は、初期状態では折り返しラインを選択するようにしている。そして、折り返しラインを選択している側(折り返し側)の1組の受信I/Fと送信I/Fの双方に通信ケーブルが装着され、ネットワーククロックの受信等により、他のノードとの間の物理的な接続が確認できると、CPUは、その送信I/Fから接続先に向けてテスト信号の送信を行う。
図6に示すのがこの送信のためのテスト信号送信処理のフローチャートである。
制御部40のCPUは、定期的に図6に示す処理を起動し、折り返し側に他ノードの物理的接続が確認できると(S11)、折り返し側に問い合わせのテスト信号の送信を行って(S12)、処理を終了する。この処理で、2組のI/Fの両方の側に送信を行う場合もある。また、ステップS11では、1組の受信I/Fと送信I/Fに関してケーブルの接続先ノードが同一であることを確認する必要はない。
また、図5からわかるように、制御部40から折り返し側の送信I/Fまでのデータ転送経路も、折り返し側の受信I/Fから制御部40までのデータ転送経路も、上述のようにパケットを循環させる処理には使用しないため、音響信号処理装置2がオーディオネットワークシステムに組み込まれ、パケットの循環に関する処理を行っている場合でも、これとは独立にテスト信号の送受信を行うことができる。カスケード接続の場合の末端のノードは、このような動作を行うことになる。
次に、図7に、図6の処理で送信するテスト信号のデータ構成の例を示す。
この図に示すように、ここでは、テスト信号には、テスト信号であることを示すヘッダ、自機のID、自身が既にオーディオネットワークシステムに所属しているか否かを示す「システム所属有無」、所属するオーディオネットワークシステムの構成を示す「自システム構成」、およびそのシステム中でのマスタノードの優先度を示す「自システムマスタの優先度」の情報を含む。
これらの情報は、通信可否の確認には必ずしも必要なものではないが、オーディオネットワークシステムに組み込み可能な機器が新たに接続された場合に、速やかにシステムに組み込むことができるよう、ここで予め伝送経路の構築に必要な情報を渡しておくようにしたものである。後述する図8の処理で送信する返答のテスト信号も、基本的に同じ構成でよいが、どの機器からのテスト信号に対する返答であるかは明示するようにする。
なお、優先度とは、機器毎に設定され、その機器がどの程度優先的にマスタになるかを示す情報である。そしてここでは、オーディオネットワークシステムにおいて、システムを構成するノードのうち最も優先度の高いノードがマスタノードになるようにしている。優先度の値は、固定でも、手動または自動で変更できるようにしてもよい。
次に、図8に、オーディオネットワークシステムに属するノードがテスト信号を受信した場合の処理のフローチャートを示す。
制御部40のCPUは、音響信号処理装置2がオーディオネットワークシステムに属している状態でテスト信号を受信すると、図8のフローチャートに示す処理を開始する。なお、ここでいうテスト信号には、相手が図6のステップS12で送信してくる問い合わせのテスト信号と、図8のステップS24やS30で送信してくる返答のテスト信号とがある。接続相手がオーディオネットワークシステムに組み込み可能な機器であれば、相手も同様に図6や図8に示す処理を行っており、問い合せのテスト信号やその返答を送信してくる。
そして、図8に示す処理では、まず、受信したテスト信号がカスケードの他端からのものであれば(S21)、それが自身が送信したテスト信号に対する返答であるか否か判断する(S22)。そして、ここで返答であれば、自機は新たにカスケードの他端のノードと接続され、このことによって自機が所属するオーディオネットワークシステムはループ接続になったと判断できるため、マスタノードに「ループ接続」を通知して(S23)、処理を終了する。
一方、ステップS22でNOであれば、問い合わせのテスト信号を受信したと判断できるため、テスト信号を受信した側の送信I/Fから返答のテスト信号を送信して(S24)、処理を終了する。
また、ステップS21でNOの場合、受信したテスト信号がシステム外からの返答であり(S25)、かつ問い合わせ送信後所定時間内に受信していれば(S26)、新たに自機が属するシステム外のノードと接続されたと判断できるため、マスタノードに「新規接続」を通知して(S27)、処理を終了する。この通知には、新たに接続されたノードからの返事に記載されていた、そのノードが属するネットワークの構成の情報も含む。
ステップS26で所定時間内でなければ、接続が適切になされていない可能性もあるため、エラー処理を行って(S28)、処理を終了する。
また、ステップS25でNOの場合、受信したテスト信号がシステム外からの問い合わせであれば(S29)、テスト信号を受信した側の送信I/Fから返答のテスト信号を送信して(S30)、処理を終了する。また、ステップS29でもNOであれば、受信したデータに応じてその他の処理を行って(S31)、処理を終了する。
以上の処理により、各ノードは、自機に新たなノードが接続された場合に、その旨を検出してマスタノードに通知することができる。なお、ステップS23及びS27でのマスタノードへの通知の送信は、循環させるパケットの制御データの部分に記載して行えばよい。また、自身がマスタノードである場合、通知ありのイベントを発生させてそれに応じた以下に説明する処理を行えばよい。
なお、オーディオネットワークシステムに属しないノードも、問い合わせのテスト信号に対して応答を返すが、問い合わせ元もオーディオネットワークシステムに属しないノードであった場合、すなわち単独のノード同士が接続された場合の処理は、図8のものとは若干異なる。この点については後述する。
次に、図9に、「新規接続」の通知を受けた場合のマスタノードの処理のフローチャートを示す。
マスタノードの制御部40のCPUは、「新規接続」の通知を受けると、図9のフローチャートに示す処理を開始する。
そして、自身が新規接続されたノードを含むネットワークのマスタノードになるか否かを決定する(S41)。新規にノードが接続される場合、図10(a)に示すノードDのようにシステムに属していないノードの場合と、(b)に示すノードDのように既にシステムに属しているノードの場合があるが、ステップS41では、前者の場合には新規に接続されたノードと、後者の場合には新規に接続されたノードが属するシステムにおけるマスタノードと、ネゴシエーションを行って、どちらが新たなシステムのマスタノードとなるかを決定すればよい。ネゴシエーションのためのメッセージは、パケットを循環させている範囲ではそのパケットに記載して、新規に検出した接続の先にはテスト信号と同じ経路で、送信することができる。
ステップS41の後は、マスタノードになると決定した場合には(S42)、新たに検出された接続の両側のノードに、その接続側のパケット折り返しの解除を指示し(S43)、接続されている全てのノードを通るパケットの伝送経路が形成されるようにする。
その後、第1のデータ入出力部10によりテストパケットを生成して第2の送信I/F32から送信し(S44)、伝送経路を1周して戻ってきたテストパケットを受信すると、その伝送経路の循環に要する時間に基づき、新規接続されたノードを含むシステムでの音響信号伝送可否を判断する(S45)。具体的には、上述のように、次のワードクロックのタイミングまでに、マスタノードが送信したパケットのうち、次のパケットの先頭部分を生成して送信を開始できる程度の部分がマスタノードに戻ってきていれば、伝送可である。しかし、ノードの数が多すぎる場合には、これが間に合わない場合もある。
そして、その判断の結果伝送可能であれば(S46)、新規接続されたノードを含むシステムの構成をその各ノードに通知し(S47)、そのシステムでのカスケード伝送制御を開始して(S48)、処理を終了する。
ステップS46で伝送可能でなければ、エラー処理を行って(S51)、処理を終了する。この処理の内容としては、接続はなかったものとして元通りのカスケード伝送に戻す、端のノードを順次システムから切り離しながらステップS44〜S46の処理を繰り返し、伝送可能な範囲で新たなシステムを構成し、カスケード伝送制御を開始する、操作パネルにエラーメッセージを表示してユーザの指示を待つ、等が考えられる。
また、ステップS42でNOの場合、自身が属するシステムの構成のデータを次にマスタノードになるノードに送信する(S49)と共に、スレーブノードとしての動作を開始し(S50)、処理を終了する。この場合、次にマスタノードになるノードが、ステップS43以下の処理を行い、新たな構成のシステムにおけるカスケード伝送制御を行う。
以上の処理により、カスケード接続の末端に新たなノードが追加で接続された場合に、そのノード(及びそのノードの先に接続されているノード)も加えた新たなオーディオネットワークシステムを構成し、その全体にパケットを循環させるデータの伝送を開始させることができる。
次に、図11に、「ループ接続」の通知を受けた場合のマスタノードの処理のフローチャートを示す。
マスタノードの制御部40のCPUは、「ループ接続」の通知を受けると、図11のフローチャートに示す処理を開始する。この場合、システムを構成するノード自体に変更はないので、マスタノードは変わらない。
そして、この処理では、まずカスケードの両端のノードにパケット折り返しの解除を指示し(S61)、カスケードの両端を繋ぐ通信ケーブルを利用して図1(b)に示したような2つの伝送経路が形成されるようにする。
その後、第1のデータ入出力部10によりテストパケットを生成して第2の送信I/F32から送信し(S62)、テストパケットの循環を確認する(S63)。そして、音響信号の伝送に問題ないと判断されれば(S64)、カスケード接続の際には無効化していた第2のデータ入出力部20のパケット生成機能を有効化する(S65)。
そして、第2のデータ入出力部20によりテストパケットを生成して第1の送信I/F34から送信し(S66)、ステップS63の場合と同様にテストパケットの循環を確認する(S67)。ここでも問題なければ(S68)、ループ接続時の動作として設定されているモードに応じた指示を行い(S69〜S71)、ループ伝送制御を開始して(S72)、処理を終了する。
ここで行う指示は、二重化の場合には、2つの伝送経路で同じデータを記載したパケットを循環させることから、各ノードに対し、第2のデータ入出力部20でも第1のデータ入出力部10と同じデータをパケット(の同じ位置)に書き込む指示である。
また、二倍化の場合には、カスケード接続時に伝送していた内容は残しつつ、もう1つの伝送経路を循環させるパケットには別のデータを記載するため、各ノードに対し、第1のデータ入出力部10でカスケード接続時と同様なデータ入出力を行い維持しつつ、第2のデータ入出力部20で追加のchのデータ入出力を行うように指示する。
また、ステップS64又はS68で伝送に問題があった場合には、エラー処理を行って(S73)、処理を終了する。この処理としては、接続はなかったものとして元通りのカスケード伝送に戻す、操作パネルにエラーメッセージを表示してユーザの指示を待つ、等が考えられるが、カスケード接続の場合のように、一部のノードを切り離すことはできない。
以上の処理により、カスケード接続の末端のノード同士が新たに接続された場合に、ループ接続のオーディオネットワークシステムを構成し、2つの伝送経路にパケットを循環させるデータの伝送を開始させることができる。また、これに際し、二重化と二倍化のうち、ユーザが任意に選択した動作を行うことができ、伝送の安定化又は帯域幅の増加のいずれかを行うことができる。
なお、電源投入時等、オーディオネットワークシステムにおいて最初に伝送経路を作成する場合にも、概ね同様な処理で行うことができる。この場合、図8に示した処理においては、自機がシステムに属していないため、受信するテスト信号は常にシステム外からと判断することになる。そして、ステップS25でYESの場合、返事の送信元もシステムに属していなければ、送信元との間の接続は確認できたが現在は初期の伝送経路作成中であると判断し、以後送信するテスト信号の「自システム構成」に、その送信元の情報及びその送信元から送信されてくるテスト信号の「自システム構成」に含まれる未知のノードの情報も加える。
そして、接続されている各ノードが以上のような処理を行っていれば、いずれは、「自システム構成」に、自機とカスケード接続又はループ接続されている全てのノードの情報が記載される。そこで、所定時間あるいは「自システム構成」の内容に変化がなくなるまで待機し、その後、「自システム構成」に記載されたノード間でネゴシエーションを行ってマスタノードを決定した後、図9のステップS42以下の処理を行うことにより、自機と自機とカスケード接続又はループ接続されている全てのノードを含む伝送経路を構築することができる。
このとき、ノード間の全ての接続が、「新たに検出された接続」であるとする。ただし、各ノードがループ上に接続されている場合には、まずどこか1ヶ所の接続がないものとしてカスケード伝送制御の開始を試み、それが成功した場合に、末端のノードからの「ループ接続」の通知を待って図11の処理を行い、ループ伝送制御に移行するようにするとよい。
以上の処理により、電源投入時や最初に2つのノードが接続された場合等でも、パケットの伝送経路を自動的に構築することができる。なお、電源投入や接続のタイミングが遅れ、初期の経路構築に間に合わなかったノードについても、図6乃至図11を用いて説明した処理により新たに接続されたノードとしてシステムに追加できることは、もちろんである。
次に、ノードが結線の切断を検出した場合の処理について説明する。
新たなノードが追加された場合には、スレーブノードはマスタノードにまず通知を行ってからマスタノードの指示に従って動作を行うが、切断の検出の場合には、自身の判断で速やかに対処の処理を行い、切断によるデータ伝送への影響を最小限に抑えるようにする。
まず図12に、カスケード伝送中に下流側のノードとの接続の切断を検出した場合の処理のフローチャートを示す。
オーディオネットワークシステムに属する各ノードにおいて、制御部40のCPUは、マスタノードでもスレーブノードでも、カスケード伝送中に伝送路の下流側(マスタノードと反対側、ただし、マスタノードから見た場合には両側が下流)のノードとの間の接続の切断を検出した場合、図12のフローチャートに示す処理を開始する。
なお、切断の検出は、ネットワーククロックの有無によって行うことができる。ネットワーク回線上には、上位層からの送信データの有無に関わらず、絶えずキャリア信号であるネットワーククロックが流れており、その信号が検出できない場合には、ノード間を接続する通信ケーブルの切断や、隣接ノードのダウン等の発生が考えられるためである。また、1組の送信I/Fと受信I/Fのいずれかについて切断を検出した場合、その両方について接続が切断されたと判断する。一方でも接続が切断されると、伝送経路が維持できないためである。
そして、図12の処理においては、まずマスタノードに「カスケード切断」を通知する(S81)と共に、現在送信中のパケットの送信完了まで待機する(S82)。そしてその後、切断を検出した下流側のセレクタを折り返しライン側に切り換えてパケット折り返しを開始し(S83)、処理を終了する。
なお、パケットの送信完了まで待機するのは、パケットの送信中に伝送路の切断が発生することも考えられ、このような場合には、切断後のパケットを折り返し送信してしまうと、不完全なパケットを他のノードに送信してしまうので、パケットの残りの部分を切断された経路に送出して廃棄するためである。
また、ステップS83でのスイッチの切り換えは、速やかな対応が必要であるから、CPUを経由することなく、I/Fからの信号に基づきハードウェアによって行うようにしてもよい。
以上の処理により、各ノードは、下流側の接続の切断を検出した場合に自動的にパケット折り返しを開始し、システム全体として、切断された部分より先のノードを切り離し、残りのノードにパケットを循環させる伝送経路を自動的に構築できる。
また、マスタノードが、「カスケード切断」の通知を受けた場合に、その通知に応じて通知送信元より先のノードをシステムの構成要素から除外し、システムに残っているノードに変更後のシステム構成の情報を通知すれば、変更後のシステム構成の情報を各ノードに共有させることができる。
また、マスタノードに、次のパケットの送信タイミングまでに「カスケード切断」の通知が届かなくても、マスタノードは、送出したパケットが完全な状態で戻ってこないことにより、伝送経路上のどこかで異常が発生してパケットが失われたことがわかるため、この場合、バッファしておいたデータを用いて、前回送信したパケットと同じパケットを再度送信する。
そして、このパケットの送信が開始されるまでには、ステップS103の処理により、新たな伝送経路が構成されているはずであるから、送信したパケットは、システムに残っている各ノードを通ってマスタノードに戻り、各ノードは、破棄されたパケットに記載されていたデータを取得することができる。
なお、この場合、信号処理部39が波形データを受け取るタイミングが1サンプリング周期遅れる。そこで、このような事態の発生に備え、各ノードに、波形データをパケットから読み出してから信号処理部39の信号処理に供するまでに、バッファを設けてデフォルトで2〜3サンプリング期間程度遅延を行うようにしておき、伝送経路切断のためにデータの受信が遅れた場合には、その遅延量を減らして、信号処理部39への波形データの供給タイミングにずれが生じないようにするとよい。
また、伝送路の切断タイミングとパケットの位置の関係によっては、パケットの先頭から切断箇所までの部分がマスタノードに送信されてしまうこともある。このような場合には、マスタノードにおいて、受信したパケットの後端が欠けていることがわかった時点で、そのパケットを廃棄するようにするとよい。また、次のパケットを送信し始めるまでに後端が欠けていることがわからない(欠けた部分がまだ届いていない)場合もあるが、このような場合には、一旦送信を開始したパケットの送信を中止することは難しいので、欠けた部分に無音のデータを補って送信を継続するとよい。
また、各ノードにおいて、上流側、すなわちマスタノードのある側についても、ネットワーククロックが検出できなくなった場合には、図12の処理を行うようにしてもよい(ただし、この場合にはステップS101での送信はできない)。ステップS102及びS103の処理をハードウェアで行うようにした場合には、上流側か下流側かに関わらず、ネットワーククロックの検出がなくなったことをトリガにセレクタの切り替えを行う方が、構成を単純化できる。
また、伝送経路では、ネットワーククロックが流れていても、回線トラブルにより、パケットが送信できなくなる場合もあり得る。そこで、このような事態の発生を考慮し、各ノードにおいて、下流にパケットを送信した後、カスケードの端で折り返されて戻ってくるパケットの受信予定時刻+所定誤差α以内にそのパケットの受信がない場合でも、下流側で接続が切断されたものとして、図12のフローチャートに示した処理を行うようにしてもよい。
次に、図13に、カスケード伝送中に所定期間マスタ側からのパケット受信がない場合のスレーブノードのフローチャートを示す。
スレーブノードにおいて、制御部40のCPUは、カスケード伝送中に所定期間マスタ側からのパケット受信がない場合、図13のフローチャートに示す処理を開始する。この場合、自身は所属していたシステムにおけるマスタノードと通信ができない状態になったと考えられるため、接続が確認できるノードにより新たにオーディオネットワークシステムを構成するための処理を行うのである。なお、それまで保持していたシステム構成の情報や、図6や図8の処理で送受信するテスト信号により、自身に(直接又は間接に)接続されているノード及びその接続順は把握できるとする。その結果、自身がどのノードとも接続されていなければ、図13の処理を行う必要はない。
そして、図13に示す処理ではまず、接続が確認できるノード間でネゴシエーションを行い、いずれがマスタノードになるかを決定する(S91)。そして、自身がマスタノードになると決定した場合には(S92)、全ノードに、他ノードと接続が確認できた側のパケット折り返しの解除を指示する(S93)。カスケード伝送中にマスタノードとの接続が切断された場合、残りのノードはカスケード接続されているはずであるから、その両端のノード以外は、両側のパケット折り返しが解除されるはずである。
その後、第1のデータ入出力部10におけるパケット生成機能を有効化してマスタノードとしてパケットの送信を行うことができるようにし(S94)、図9のステップS44〜S48,S51の場合と同様、音響信号が伝送可能であることを確認できれば、カスケード伝送制御を開始して(S95〜S99,S101)、処理を終了する。
また、ステップS92でNOであれば、スレーブノードとしての動作を開始して(S100)、処理を終了する。
以上の処理により、カスケード伝送中にマスタノードとの接続が切断された場合でも、残りのノードにより、パケットを循環させる伝送経路を自動的に構築し、データの伝送を継続することができる。
なお、波形データについては、マスタノードが最初に送信するパケットに無音のデータを書き込んでおけば、送信元のノードがなくなった伝送chについては、その後無音のデータが維持され、その伝送chのデータを読み取って信号処理に用いるノードがあったとしても、送信元がなくなったことに伴い音がなくなるという以上には、特に問題は発生しない。
次に、図14に、ループ伝送中に隣接ノードとの接続の切断を検出した場合の処理のフローチャートを示す。
オーディオネットワークシステムに属する各ノードにおいて、制御部40のCPUは、マスタノードでもスレーブノードでも、ループ伝送中に隣接ノードとの間の接続の切断を検出した場合、図14のフローチャートに示す処理を開始する。なお、切断の検出を、ネットワーククロックの有無によって行うことができることは、図12の処理の説明で述べた通りである。
そして、図14の処理においては、まず全ノードに「ループ切断」を通知する(S111)と共に、現在送信中のパケットの送信完了まで待機する(S112)。そしてその後、切断を検出した側のセレクタを折り返しライン側に切り換えてパケット折り返しを開始し(S113)、処理を終了する。
以上の処理により、各ノードは、隣接ノードとの間の接続の切断を検出した場合に自動的にパケット折り返しを開始することができる。また、切断箇所の両側のノードがパケットの折り返しを開始するため、図15(a)に示すような接続ケーブルの断線の場合も、(b)に示すようなノードの機能停止の場合も、残りの通信ケーブルとノードにより、ループ伝送の経路から切断箇所を端部とするカスケード伝送の経路を自動的に構築できる。
ただし、この場合、ループ伝送からカスケード伝送に切り換わるため、次のパケットを伝送する前に、各ノードは、カスケード伝送では使用しないデータ入出力部のデータ入出力を停止させる必要がある。また、マスタノードは、併せて使用しないパケット生成機能も停止させる必要がある。
そして、各ノードは、パケット送信後、次の受信タイミング+所定誤差αまでに次のパケットを受信しない又は送出したパケットが戻ってこないことにより、伝送経路上のどこかで異常が発生してパケットが失われ、以後自身の属するシステムがカスケード伝送に移行することがわかるため、このことをトリガに、カスケード伝送では使用しないデータ入出力部のデータ入出力を停止及びパケット生成機能の停止を行う。
また、マスタノードは、次にパケットを送信するタイミングでは、バッファしておいたデータを用いて、第1のデータ入出力部10により、ここから前回送信したパケットと同じパケットを再度送信する。
また、マスタノードが、「ループ切断」の通知を受けた場合に、その通知に応じてシステム構成の情報をカスケード接続のものに変更し、システムに残っているノードに変更後のシステム構成の情報を通知すれば、変更後のシステム構成の情報を各ノードに共有させることができる。
ループ伝送において、二重化動作を行っていた場合には、以上の処理により、ループの1箇所で断線やノードの機能停止が発生しても、データの伝送にパケットの破棄に伴って1サンプル分の遅延が生じるだけで、以後カスケード伝送を行って、ループ伝送時と同じデータの伝送を行うことができる。
また、ループ伝送において二倍化動作を行っていた場合には、カスケード伝送に移行すると、追加ch分のデータの伝送は行えなくなってしまうが、半分の伝送chを維持したデータ伝送は継続できる。そして、二倍化動作を行う場合でも、カスケード伝送時でも使用できる伝送chを優先的に使用し、追加chはそれで足りない場合のみ使用するようにすれば、追加ch分のデータ伝送が行えなくなることの弊害を最小限に抑えてデータ伝送を継続することができる。
なお、必ずしもループ切断を検出した次のサンプリング周期から新しい伝送経路でのパケット伝送を再開できるようにしなくてもよく、ループ切断後数サンプリング周期かけて、各ノードにループ切断後のシステム構成や伝送経路の情報を共有させると共に、データ入出力部の機能停止等、新たなシステム構成に合った動作の設定を行わせ、その後にパケット伝送を再開するようにしてもよい。このようにすると、ループ切断時に多少の音飛びが発生するが、各音響信号処理装置2において信号処理部39にフィルタを設けて急激な波形データの変化を緩和する等の処置をすれば、音飛びがさほど問題とならないようにすることができる。
以上で実施形態の説明を終了するが、装置の構成、データの構成、具体的な処理内容等が上述の実施形態で説明したものに限られないことはもちろんである。
例えば、1サンプリング周期に1つのパケットを循環させることは必須ではなく、1サンプリング周期に複数のパケットを循環させたり、複数サンプリング周期につき1つのパケットを循環させ、そこに複数サンプリング周期分の波形データを記載することも考えられる。
また、パケットの構成について、波形データと制御データの領域の比率を変更してもよいことは、もちろんである。いずれかの領域のサイズを0にしてもよい。
また、各音響信号処理装置に設ける送受信I/Fの組数を増やし、カスケード接続でも複数の伝送経路を形成できるようにしてもよい。例えば、各音響信号処理装置に4組の受信I/Fと送信I/Fを設け、2組ずつのI/Fについてそれぞれ、上述した実施形態における2組のI/Fと同様な運用をするようにしてもよい。
また、これらの変形及び実施例の説明において述べた変形は、矛盾しない範囲で任意に組み合わせて適用可能である。
以上の説明から明らかなように、この発明のネットワークシステムによれば、複数のノード間で音響信号の伝送を行うためのネットワークシステムを構築する場合に、ネットワークに一定の伝送帯域幅を維持できるようにすると共に、伝送帯域幅の増加も容易に行えるようにすることができる。
従って、この発明を適用することにより、ネットワークシステムの利便性を向上させることができる。
この発明のネットワークシステムの実施形態であるオーディオネットワークシステムの概略を示す図である。 図1に示した伝送経路で伝送されるパケットの構成例を示す図である。 図2に示したパケットの伝送タイミングを示す図である。 オーディオネットワークシステム上での図2に示したパケットの伝送状況を示す図である。 図1に示したオーディオネットワークシステムを構成する各ノードとなる音響信号処理装置のハードウェア構成を、パケット伝送に関連する部分を中心に示す図である。
音響信号処理装置の制御部のCPUが実行するテスト信号送信処理のフローチャートである。 図6の処理で送信するテスト信号のデータ構成の例を示す図である。 音響信号処理装置の制御部のCPUが実行する、テスト信号を受信した場合の処理のフローチャートである。 「新規接続」の通知を受けた場合のマスタノードの処理のフローチャートである。 オーディオネットワークシステムに新規にノードが接続される場合の接続例を示す図である。
「ループ接続」の通知を受けた場合のマスタノードの処理のフローチャートである。 カスケード伝送中に下流側のノードとの接続の切断を検出した場合の処理のフローチャートである。 カスケード伝送中に所定期間マスタ側からのパケット受信がない場合のスレーブノードのフローチャートである。 ループ伝送中に隣接ノードとの接続の切断を検出した場合の処理のフローチャートである。 ループ切断時の伝送経路の変更例を示す図である。
符号の説明
1…オーディオネットワークシステム、2…音響信号処理装置、10…第1のデータ入出力部、11,21…データ抽出部、12,22…波形入力用FIFO、13,23…波形出力用FIFO、14,24…制御入力用FIFO、15,25…制御出力用FIFO、16,26…フレームバッファ、31,33…第1,第2の受信I/F、32,34…第2,第1の送信I/F、35〜38…セレクタ、39…信号処理部、40…制御部、100…パケット、NC1〜NC4…ネットワーククロック、TL1,TL2…折り返しライン

Claims (6)

  1. それぞれ受信手段及び送信手段を2組備えた複数のノードを、順次、あるノードの1組の受信手段及び送信手段と別のノードの1組の送信手段及び受信手段とを通信ケーブルで接続し、接続された各ノード間において双方向のデータ伝送が可能なネットワークシステムであって、
    前記複数のノードのうち1のノードがマスタノードとなり、
    前記マスタノードは、N(Nは整数)チャンネルの音響信号のデータを含むパケットを、サンプリング周期毎に形成してループ状に形成された伝送路における次のノードに送信するとともに、当該マスタノードが直前のサンプリング周期にて送信し前記ループ状の伝送路を巡回した前記パケットを、サンプリング周期毎に前記ループ状の伝送路における前のノードから受信し、
    前記接続された各ノード間においては、前記パケットが、前記サンプリング周期毎に前記ループ状の伝送路を一方向に巡回し、
    前記通信ケーブルにより前記複数のノードがカスケード状に接続された場合には、その複数のノードのうち両端のノードで前記パケットの伝送を折り返すことにより前記各ノード間で前記パケットが巡回するループ状の伝送路を1つ形成して、その伝送路に前記サンプリング周期毎に1つの前記パケットを巡回させることにより、その各ノード間でNチャンネルの音響信号の伝送を行い、
    前記カスケード状に接続された複数のノードのうち両端のノード同士が接続され前記複数のノードがリング状に接続された場合には、前記両端のノードが前記折り返しに代えて該ノード間での双方向の伝送を開始することにより、前記各ノード間で前記パケットが巡回するループ状の伝送路であってパケットの伝送方向が互いに異なるものを2つ形成して、一方の伝送路に第1の前記パケットを巡回させ、他方の伝送路に第1の前記パケットと異なるチャンネルの音響信号のデータを含む第2の前記パケットを巡回させることで、その各ノード間で2Nチャンネルの音響信号の伝送を行うことを特徴とするネットワークシステム。
  2. 前記複数のノードがリング状に接続された場合の伝送動作を、二重化ループモードに指定するモード指定手段を有し、
    前記二重化ループモードが指定されている場合は、前記2Nチャンネルの音響信号の伝送に代えて、前記形成されたループ状の2つの伝送路で同じ音響信号のデータを含むパケットを巡回させることによりNチャンネルの音響信号の伝送を二重化して行うことを特徴とする請求項に記載のネットワークシステム。
  3. 前記複数のノードがリング状に接続された場合に、該接続により形成されたループ状の伝送路におけるパケットの巡回を確認する確認手段を有し、
    該確認手段によりパケットの巡回が確認された場合に、前記形成されたループ状の伝送路における前記音響信号のデータを含むパケットの巡回を開始することを特徴とする請求項1又は2に記載のネットワークシステム。
  4. 受信手段及び送信手段を2組備えた音響信号処理装置であって、
    該音響信号処理装置は、複数の音響信号処理装置を、順次、ある装置の1組の受信手段及び送信手段と別の装置の1組の送信手段及び受信手段とを通信ケーブルで接続し、接続された音響信号処理装置間において双方向のデータ伝送が可能であり、前記複数の音響信号処理装置のうち特定の1の装置が、N(Nは整数)チャンネルの音響信号のデータを含むパケットを、サンプリング周期毎に形成してループ状に形成された伝送路における次の音響信号処理装置に送信するとともに、当該特定の1の装置が直前のサンプリング周期にて送信し前記ループ状の伝送路を巡回した前記パケットを、サンプリング周期毎に前記ループ状の伝送路における前の音響信号処理装置から受信し、前記接続された各装置間においては、前記パケットが、前記サンプリング周期毎に前記ループ状の伝送路を一方向に巡回するネットワークシステムを構成するものであり、
    前記2組の受信手段及び送信手段のうちの1組のみにて前記双方向のデータ伝送が可能な第1の状態において、該双方向のデータ伝送が可能な受信手段が受信した前記パケットを、同じ組の送信手段から送信する折り返し動作により、前記サンプリング周期毎にNチャンネルの音響信号の伝送を行い、
    前記2組の受信手段及び送信手段のいずれも前記双方向のデータ伝送が可能な第2の状態となったことを検知し、
    該検知に応じて、前記折り返しを中止して、一方の組の受信手段が受信した前記パケットを他方の組の送信手段から送信する双方向動作に移行し、パケットの伝送方向が互いに異なる2つの前記伝送路について相互に異なるチャンネルの音響信号のデータを含む前記パケットを伝送することにより、前記サンプリング周期毎に2Nチャンネルの音響信号の伝送を行う通信制御手段を設けたことを特徴とする音響信号処理装置。
  5. 二重化ループモードを設定するモード設定手段を有し、
    前記通信制御手段は、前記二重化ループモードが設定されている場合は、前記検知に応じて同じ音響信号のデータを含む前記パケットを2つの前記伝送路に伝送することにより、前記2Nチャンネルの音響信号の伝送に代えて、Nチャンネルの音響信号の伝送を二重化して行うことを特徴とする、請求項に記載の音響信号処理装置。
  6. 前記通信制御手段は、
    前記第1の状態から前記第2の状態となったことを検知したことに応じて、前記2つの伝送路におけるパケットの巡回をそれぞれ確認し、当該パケットの巡回が確認された場合に前記双方向動作に移行することを特徴とする請求項4又は5に記載の音響信号処理装置。
JP2006084253A 2006-03-24 2006-03-24 ネットワークシステム及び音響信号処理装置 Expired - Fee Related JP4899568B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006084253A JP4899568B2 (ja) 2006-03-24 2006-03-24 ネットワークシステム及び音響信号処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006084253A JP4899568B2 (ja) 2006-03-24 2006-03-24 ネットワークシステム及び音響信号処理装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2009244671A Division JP4900448B2 (ja) 2009-10-23 2009-10-23 ネットワークシステム及び音響信号処理装置

Publications (2)

Publication Number Publication Date
JP2007259347A JP2007259347A (ja) 2007-10-04
JP4899568B2 true JP4899568B2 (ja) 2012-03-21

Family

ID=38633071

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006084253A Expired - Fee Related JP4899568B2 (ja) 2006-03-24 2006-03-24 ネットワークシステム及び音響信号処理装置

Country Status (1)

Country Link
JP (1) JP4899568B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5012382B2 (ja) * 2007-10-03 2012-08-29 ヤマハ株式会社 音響信号処理装置及びネットワークシステム
JP5088078B2 (ja) * 2007-10-03 2012-12-05 ヤマハ株式会社 ネットワークシステム及び通信装置
ATE478494T1 (de) 2007-10-03 2010-09-15 Yamaha Corp Audiosignalprozessor und netzwerksystem
JP5239726B2 (ja) * 2008-10-15 2013-07-17 ヤマハ株式会社 ネットワークシステム及び音響信号処理装置
JP2010098475A (ja) * 2008-10-15 2010-04-30 Yamaha Corp ネットワークシステム及び音響信号処理装置
EP2178250B1 (en) 2008-10-15 2011-12-07 Yamaha Corporation Audio Network System
JP5304165B2 (ja) * 2008-10-15 2013-10-02 ヤマハ株式会社 ネットワークシステム及び音響信号処理装置
JP5476889B2 (ja) 2009-09-28 2014-04-23 ヤマハ株式会社 ネットワークシステム
JP5589727B2 (ja) 2009-09-29 2014-09-17 ヤマハ株式会社 ネットワークシステム
JP4900448B2 (ja) * 2009-10-23 2012-03-21 ヤマハ株式会社 ネットワークシステム及び音響信号処理装置
JP5454255B2 (ja) 2010-03-16 2014-03-26 ヤマハ株式会社 音響信号処理装置及び音響信号処理システム
JP2011223567A (ja) * 2010-03-24 2011-11-04 Yamaha Corp オーディオネットワークシステム及び表示方法
JP5867187B2 (ja) 2012-03-09 2016-02-24 ヤマハ株式会社 音響信号処理システム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5438703A (en) * 1977-09-02 1979-03-23 Toshiba Corp Loop-type data transmission device
JPH06338865A (ja) * 1993-05-31 1994-12-06 Victor Co Of Japan Ltd デジタル信号伝送方式
JP2005117135A (ja) * 2003-10-03 2005-04-28 Sony Corp データ伝送システム、端末装置、データ伝送方法、記録媒体及びプログラム
JP4900448B2 (ja) * 2009-10-23 2012-03-21 ヤマハ株式会社 ネットワークシステム及び音響信号処理装置

Also Published As

Publication number Publication date
JP2007259347A (ja) 2007-10-04

Similar Documents

Publication Publication Date Title
JP4899568B2 (ja) ネットワークシステム及び音響信号処理装置
JP4187028B2 (ja) ネットワークシステム及び音響信号処理装置
JP4370999B2 (ja) ネットワークシステム、ノード及びノード制御プログラム、ネットワーク制御方法
JP5076413B2 (ja) ネットワークシステム及び音響信号処理装置
US20080285459A1 (en) Method and system for audio/video bridging aware shortest path bridging
EP1901483B1 (en) Network system and audio signal processor
WO2007066766A1 (ja) ネットワークシステムおよび中継装置
JP4297184B2 (ja) ネットワークシステム
JP2955555B1 (ja) ネットワークシステム
EP1901489B1 (en) Network system and audio signal processor
JP4341714B2 (ja) ネットワークシステム及び音響信号処理装置
JP5267060B2 (ja) 音響信号処理システム
JP5088078B2 (ja) ネットワークシステム及び通信装置
JP4900448B2 (ja) ネットワークシステム及び音響信号処理装置
JP5141169B2 (ja) 音響信号処理装置及びネットワークシステム
JP4030880B2 (ja) 同期用クロック供給システムおよび同期用クロック供給方法
JP5012382B2 (ja) 音響信号処理装置及びネットワークシステム
JP5045728B2 (ja) 通信ノード
JP4746960B2 (ja) スイッチおよびネットワーク構成方法
JP5304165B2 (ja) ネットワークシステム及び音響信号処理装置
JP2010098475A (ja) ネットワークシステム及び音響信号処理装置
JP2003348107A (ja) 双方向リング形ネットワーク及びそれに用いる経路選択方法並びにそのプログラム
JP5239726B2 (ja) ネットワークシステム及び音響信号処理装置
US20040039850A1 (en) Apparatus and method for automatically configuring network media connection
JP2000032020A (ja) ネットワ―クシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090303

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110411

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110419

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110620

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110809

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111109

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20111116

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111206

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111219

R150 Certificate of patent or registration of utility model

Ref document number: 4899568

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150113

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees