(57)【要約】【課題】  ネットワークを介してピア・トゥ・ピア通信を開始するためのシステムおよび方法を提供する。【解決手段】  このシステムは、ネットワークバスと電気的に通信して、ネットワークバス上の通信を制御するためのバスコントローラを含む。このシステムは、ネットワークバスと電気的に通信する少なくとも１つのネットワーク装置も含み、これらのネットワーク装置は、少なくとも第１および第２のデータチャネルを集合的に含む。第１のデータチャネルは、代理動作のために設定されて、開始プログラムの指令および代理指令を含む。バスコントローラが、少なくとも第１のデータチャネルの開始プログラムの指令に合致する指令をネットワークバス上に送信すると、少なくとも第２のデータチャネルは、その開始プログラムの指令を実行することができ、少なくとも第１のデータチャネルは、それぞれの代理指令を実行することができる。【選択図】        図２
2004312716.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークバスを介してピア・トゥ・ピア通信を開始するためのシステムであって、
ネットワークバスと電気的に通信してネットワークバス上の通信を制御するためのバスコントローラを含み、前記バスコントローラは、前記ネットワークバス上に指令を送信することができ、前記システムはさらに、
前記ネットワークバスと電気的に通信する少なくとも１つのネットワーク装置を含み、前記少なくとも１つのネットワーク装置は、少なくとも第１のデータチャネルおよび第２のデータチャネルを集合的に含み、前記第１のデータチャネルは、開始プログラムの指令および代理指令を含むことによって代理動作のために設定され、
前記バスコントローラが、ネットワークバス上に、前記第１のデータチャネルの前記開始プログラムの指令に合致する指令を送信すると、少なくとも前記第２のデータチャネルは、前記開始プログラムの指令を実行することができ、少なくとも前記第１のデータチャネルは、それぞれの代理指令を後に実行することができ、それによって少なくとも前記第１のデータチャネルと前記第２のデータチャネルとの間にピア・トゥ・ピア通信を可能にする、システム。
【請求項２】
前記バスコントローラが、代理動作のために設定された少なくとも前記第１のデータチャネルにアドレス指定され、かつ、それぞれの開始プログラムの指令に合致する指令を送信すると、少なくとも前記第１のデータチャネルは、前記指令を実行し、その後、前記それぞれの代理指令を実行することができる、請求項１に記載のシステム。
【請求項３】
代理動作のために設定された少なくとも前記第１のデータチャネルは、予め規定された量のデータ、最初のデータ片、および予め規定された量のデータの順序の少なくとも１つを示す、少なくとも１つの代理制御コードをさらに含む、請求項１に記載のシステム。
【請求項４】
前記少なくとも１つのネットワーク装置は、代理動作のために設定され、そして「Read
Data」の開始プログラムの指令および「Write Data」の代理指令を有する前記第１のデータチャネルを含む第１のネットワーク装置を備え、前記バスコントローラが、前記第２のデータチャネルにアドレス指定された「Read Data」の指令を送信すると、前記第２のデータチャネルは、前記ネットワークバス上にデータを読出すことによって、前記「Read
Data」の指令を実行することができ、前記第１のネットワーク装置の前記第１のデータチャネルは、前記ネットワークバスから前記データを書込むことによって、前記「Write Data」の代理指令を実行することができる、請求項１に記載のシステム。
【請求項５】
前記第１のネットワーク装置は、前記設定された第１のデータチャネルおよび前記第２のデータチャネルの両方を含む、請求項４に記載のシステム。
【請求項６】
前記少なくとも１つのネットワーク装置は、代理動作のために設定され、そして「Trigger」の開始プログラムの指令および「Read Data」の代理指令を有する前記第１のデータチャネルを含む第１のネットワーク装置を備え、前記少なくとも１つのネットワーク装置は、同じく代理動作のために設定され、そして「Trigger」の開始プログラムの指令および「Write Data」の代理指令を有する第２のデータチャネルを含む第２のネットワーク装置も備え、前記バスコントローラが「Trigger」の指令を送信すると、前記第１のネットワーク装置の前記設定された第１のデータチャネルは、前記ネットワークバス上にデータを読出すことによって前記「Read Data」の代理指令を実行することができ、前記第２のネットワーク装置の前記設定された第２のデータチャネルは、前記ネットワークバスから前記データを書込むことによって前記「Write Data」の代理指令を実行することができる、請求項１に記載のシステム。
【請求項７】
前記バスコントローラが、前記第１のネットワーク装置および前記第２のネットワーク装置の、前記設定された第１および第２のデータチャネルを含むデータチャネルのグループにアドレス指定された「Trigger」の指令を送信すると、前記第１のネットワーク装置の前記設定された第１のデータチャネルは、前記「Read Data」の代理指令が後に続く前記「Trigger」の指令を実行することができ、前記第２のネットワーク装置の前記設定された第２のデータチャネルは、前記「Write Data」の代理指令が後に続く前記「Trigger」の指令を実行することができる、請求項６に記載のシステム。
【請求項８】
前記少なくとも１つのネットワーク装置は、代理動作のために設定され、そして「Trigger」の開始プログラムの指令、「Read Data」の代理指令、および予め規定された量のデータを特定する代理制御コードを有する前記第１のデータチャネルを含む第１のネットワーク装置を備え、前記少なくとも１つのネットワーク装置は、同じく代理動作のために設定され、そして「Trigger」の開始プログラムの指令、「Write Data」の代理指令、および予め規定された量のデータを集合的に特定して最初のデータ片を個々に示す代理制御コードを有する少なくとも１つの第２のデータチャネルを含む、少なくとも１つの第２のネットワーク装置も備え、前記バスコントローラが「Trigger」の指令を送信すると、前記第１のネットワーク装置の前記設定された第１のデータチャネルは、前記ネットワークバス上に前記予め規定された量のデータを読出すことによって前記「Read Data」の代理指令を実行することができ、前記第２のネットワーク装置の前記設定された第２のデータチャネルは、各データチャネルがそれぞれの最初のデータ片で起動する状態で前記ネットワークから前記予め規定された量のデータを書込むことによって、前記「Write Data」の代理指令を実行することができる、請求項１に記載のシステム。
【請求項９】
前記バスコントローラが、前記第１のネットワーク装置および前記第２のネットワーク装置の、前記設定された第１および第２のデータチャネルを含むデータチャネルのグループにアドレス指定された「Trigger」の指令を送信すると、前記第１のネットワーク装置の前記設定された第１のデータチャネルは、「Read Data」の代理指令が後に続く前記「Trigger」の指令を実行することができ、前記第２のネットワーク装置の前記設定された第２のデータチャネルは、「Write Data」の代理指令が後に続く前記「Trigger」の指令を実行することができる、請求項８に記載のシステム。
【請求項１０】
前記少なくとも１つのネットワーク装置は、代理動作のために設定され、そして「Trigger」の開始プログラムの指令、「Read Data」の代理指令、および予め規定された量のデータを集合的に特定して前記代理指令の実行の順序を個々に示す代理制御コードを有する複数の第１のデータチャネルを含む、第１のネットワーク装置を備え、前記少なくとも１つのネットワーク装置は、同じく代理動作のために設定され、そして「Trigger」の開始プログラムの指令、「Write Data」の代理指令、および予め規定された量のデータを集合的に特定して最初のデータ片を個々に示す代理制御コードを有する少なくとも１つの第２のデータチャネルを含む、少なくとも１つの第２のネットワーク装置も備え、前記バスコントローラが「Trigger」の指令を送信すると、前記第１のネットワーク装置の前記設定された第１のデータチャネルは、実行の前記示された順序で前記「Read Data」の代理指令を実行して、それによって前記ネットワークバス上に前記予め規定された量のデータを読出すことができ、前記第２のネットワーク装置の前記設定された第２のデータチャネルは、各データチャネルがそれぞれの最初のデータ片によって起動する状態で前記ネットワークバスから前記予め規定された量のデータを書込むことによって、前記「Write Data」の代理指令を実行することができる、請求項１に記載のシステム。
【請求項１１】
前記バスコントローラが、前記第１のネットワーク装置および前記第２のネットワーク装置の前記設定された第１および第２のデータチャネルを含むデータチャネルのグループにアドレス指定された「Trigger」の指令を送信すると、前記第１のネットワーク装置の
前記設定された第１のデータチャネルは、「Read Data」の代理指令が後に続く前記「Trigger」の指令を実行することができ、前記第２のネットワーク装置の前記設定された第２のデータチャネルは、「Write Data」の代理指令が後に続く前記「Trigger」の指令を実行することができる、請求項１０に記載のシステム。
【請求項１２】
共通のネットワークバスを介して通信し、そして代理動作のために設定された少なくとも第１のデータチャネルを含む少なくとも第１のデータチャネルおよび第２のデータチャネルを集合的に有する、少なくとも１つのネットワーク装置を含むネットワークにおいてピア・トゥ・ピア通信を開始するための方法であって、代理動作のために設定された少なくとも前記第１のデータチャネルは、開始プログラムの指令および代理指令を含み、前記方法は、
前記ネットワークバス上に少なくとも１つの指令を送信するステップと、
前記ネットワークバス上において、少なくとも前記第１のデータチャネルの前記開始プログラムの指令に合致する指令を検出するステップと、
少なくとも前記第２のデータチャネルを介して前記開始プログラムの指令を実行するステップと、
その後、少なくとも前記第１のデータチャネルと前記第２のデータチャネルとの間にピア・トゥ・ピア通信を結果として可能にするために、少なくとも前記第１のデータチャネルを介してそれぞれの代理指令を実行するステップとを含む、方法。
【請求項１３】
前記少なくとも１つの指令を送信する前記ステップの前に、代理動作のために少なくとも前記第１のデータチャネルを設定するステップをさらに含む、請求項１２に記載の方法。
【請求項１４】
少なくとも前記第１のデータチャネルを設定する前記ステップは、予め規定された量のデータ、最初のデータ片、および予め規定された量のデータの順序の少なくとも１つを示す、少なくとも１つの代理制御コードをさらに包含するために少なくとも前記第１のデータチャネルを設定するステップを含む、請求項１３に記載の方法。
【請求項１５】
少なくとも１つの指令を送信する前記ステップは、代理動作のために設定された少なくとも前記第１のデータチャネルにアドレス指定された指令を送信するステップを含み、指令を検出する前記ステップは、少なくとも前記第１のデータチャネルにアドレス指定された前記指令を検出するステップを含み、前記方法は、前記それぞれの代理指令を実行する前記ステップの前に、少なくとも前記第１のデータチャネルを介して前記開始プログラムの指令を実行するステップをさらに含む、請求項１２に記載の方法。
【請求項１６】
前記少なくとも１つのネットワーク装置は、代理動作のために設定され、そして「Read
Data」の開始プログラムの指令および「Write Data」の代理指令を有する前記第１のデータチャネルを含む第１のネットワーク装置を備え、少なくとも１つの指令を送信する前記ステップは、前記第２のデータチャネルにアドレス指定された「Read Data」の指令を送信するステップを含み、前記それぞれの代理指令を実行する前記ステップは、前記ネットワークバスからデータを書込むことによって前記「Write Data」の代理指令を実行するステップを含み、前記方法は、前記ネットワークバス上にデータを読出すことによって、前記「Write Data」の代理指令を実行する前記ステップの前に、前記「Read Data」の指令を実行するステップをさらに含む、請求項１２に記載の方法。
【請求項１７】
前記少なくとも１つのネットワーク装置は、代理動作のために設定され、そして「Trigger」の開始プログラムの指令および「Read Data」の代理指令を有する前記第１のデータチャネルを含む第１のネットワーク装置を備え、前記少なくとも１つのネットワーク装置は、同じく代理指令のために設定され、そして「Trigger」の開始プログラムの指令およ
び「Write Data」の代理指令を有する前記第２のデータチャネルを含む第２のネットワーク装置も備え、少なくとも１つの指令を送信する前記ステップは、「Trigger」の指令を送信するステップを含み、前記それぞれの代理指令を実行する前記ステップは、前記ネットワークバス上にデータを読出すことによって、前記第１のネットワーク装置の前記設定された第１のデータチャネルを介して前記「Read Data」の代理指令を実行するステップと、前記ネットワークバスから前記データを書込むことによって、前記第２のネットワーク装置の前記設定された第２のデータチャネルを介して前記「Write Data」の代理指令を実行するステップとを含む、請求項１２に記載の方法。
【請求項１８】
前記「Trigger」の指令を送信する前記ステップは、前記第１のネットワーク装置および前記第２のネットワーク装置の、前記設定された第１および第２のデータチャネルを含むデータチャネルのグループにアドレス指定された前記「Trigger」の指令を送信するステップを含み、前記方法はさらに、前記第１のネットワーク装置の前記設定された第１のデータチャネルを介して、前記「Read Data」の代理指令を実行する前記ステップの前に、前記第１のネットワーク装置の前記設定された第１のデータチャネルを介して、前記「Trigger」の指令を実行するステップと、前記第２のネットワーク装置の前記設定された第２のデータチャネルを介して、前記「Write Data」の代理指令を実行する前記ステップの前に、前記第２のネットワーク装置の前記設定された第２のデータチャネルを介して、前記「Trigger」の指令を実行するステップとを含む、請求項１７に記載の方法。
【請求項１９】
前記少なくとも１つのネットワーク装置は、代理指令のために設定され、そして「Trigger」の開始プログラムの指令、「Read Data」の代理指令、および予め規定された量のデータを特定する代理制御コードを有する前記第１のデータチャネルを含む第１のネットワーク装置を備え、前記少なくとも１つのネットワーク装置は、同じく代理動作のために設定され、そして「Trigger」の開始プログラムの指令、「Write Data」の代理指令、および前記規定された量のデータを集合的に特定して最初のデータ片を個々に示す代理制御コードを有する少なくとも１つの第２のデータチャネルを含む、少なくとも１つの第２のネットワーク装置も備え、少なくとも１つの指令を送信する前記ステップは、「Trigger」の指令を送信するステップを含み、前記それぞれの代理指令を実行する前記ステップは、前記ネットワークバス上に前記予め規定された量のデータを読出すことによって、前記第１のネットワーク装置の前記設定された第１のデータチャネルを介して、前記「Read Data」の代理指令を実行するステップと、各データチャネルが前記それぞれの最初のデータ片で起動する状態で前記ネットワークバスから前記予め規定された量のデータを書込むことによって、前記第２のネットワーク装置の前記設定された第２のデータチャネルを介して、前記「Write Data」の代理指令を実行するステップとを含む、請求項１２に記載の方法。
【請求項２０】
前記「Trigger」の指令を送信する前記ステップは、前記第１のネットワーク装置および前記第２のネットワーク装置の、前記設定された第１および第２のデータチャネルを含むデータチャネルのグループにアドレス指定された「Trigger」の指令を送信するステップを含み、前記方法はさらに、前記第１のネットワーク装置の前記設定された第１のデータチャネルを介して、前記「Read Data」の代理指令を実行する前記ステップの前に、前記第１のネットワーク装置の前記設定された第１のデータチャネルを介して、前記「Trigger」の指令を実行するステップと、前記第２のネットワーク装置の前記設定された第２のデータチャネルを介して、前記「Write Data」の代理指令が後に続く前記「Trigger」の指令を、前記第２のネットワーク装置の前記設定された第２のデータチャネルを介して、実行するステップとを含む、請求項１９に記載の方法。
【請求項２１】
前記少なくとも１つのネットワーク装置は、代理動作のために設定され、そして「Trigger」の開始プログラムの指令、「Read Data」の代理指令、および予め規定された量のデ
ータを集合的に特定して前記代理指令の実行の順序を個々に示す代理制御コードを有する複数の第１のデータチャネルを含む、第１のネットワーク装置を備え、前記少なくとも１つネットワーク装置は、同じく代理動作のために設定され、そして「Trigger」の開始プログラムの指令、「Write Data」の代理指令、および前記予め規定された量のデータを集合的に特定して最初のデータ片を個々に示す代理制御コードを有する少なくとも１つの第２のデータチャネルを含む、少なくとも１つの第２のネットワーク装置も備え、少なくとも１つの指令を送信する前記ステップは、「Trigger」の指令を送信するステップを含み、前記それぞれの代理指令を実行する前記ステップは、前記ネットワークバス上に前記予め規定された量のデータを結果として読出すために、実行の前記示された順序で前記第１のネットワーク装置の前記設定された第１のデータチャネルを介して、前記「Read Data」の代理指令を実行するステップと、各データチャネルが前記それぞれの最初のデータ片によって起動する状態で、前記ネットワークバスから前記予め規定された量のデータを書込むことによって、前記第２のネットワーク装置の前記設定された第２のデータチャネルを介して、前記「Write Data」の代理指令を実行するステップとを含む、請求項１２に記載の方法。
【請求項２２】
前記「Trigger」の指令を送信する前記ステップは、前記第１のネットワーク装置および前記第２のネットワーク装置の前記設定された第１および第２のデータチャネルを含むデータチャネルのグループにアドレス指定された「Trigger」の指令を送信するステップを含み、前記方法はさらに、前記第１のネットワーク装置の前記設定された第１のデータチャネルを介して、前記「Read Data」の代理指令を実行する前記ステップの前に、前記第１のネットワーク装置の前記設定された第１のデータチャネルを介して、前記「Trigger」の指令を実行するステップと、前記第２のネットワーク装置の前記設定された第２のデータチャネルを介して、前記「Write Data」の代理指令を実行する前記ステップの前に、前記第２のネットワーク装置の前記設定された第２のデータチャネルを介して、前記「Trigger」の指令を実行するステップとを含む、請求項２１に記載の方法。
【請求項２３】
ネットワークバスを介したピア・トゥ・ピア通信が可能なネットワーク装置であって、
代理動作のために設定された第１のデータチャネルと、
前記第１のデータチャネルに関連する開始プログラムの指令および代理指令を記憶することのできるメモリと、
前記ネットワークバス上で前記開始プログラムの指令に合致する指令を検出することのできる代理処理モジュールとを含み、前記代理処理モジュールが、前記ネットワークバス上において、前記開始プログラムの指令に合致する指令を検出すると、前記代理処理モジュールは、前記第１のデータチャネルに前記代理指令を送信することができ、前記第１のデータチャネルが前記代理指令を実行することによって少なくとも前記第１のデータチャネルと第２のデータチャネルとの間にピア・トゥ・ピア通信を可能にすることができるようにする、ネットワーク装置。
【請求項２４】
前記代理処理モジュールが、前記ネットワークバス上において、同じく前記第１のデータチャネルにアドレス指定された指令を検出すると、前記第１のデータチャネルは、前記指令を実行して、その後、それぞれの代理指令を実行することができる、請求項２３に記載のネットワーク装置。
【請求項２５】
前記メモリは、予め規定された量のデータ、最初のデータ片、および予め規定された量のデータの順序の少なくとも１つを示す、少なくとも１つの代理制御コードを記憶することがさらにできる、請求項２３に記載のネットワーク装置。
【請求項２６】
第２のデータチャネルをさらに含み、前記メモリは、「Read Data」の開始プログラムの指令および「Write Data」の代理指令を記憶することができ、前記第２のデータチャネ
ルにアドレス指定された「Read Data」の指令が前記ネットワークバスを介して送信されると、前記第２のデータチャネルは、前記ネットワークバス上にデータを読出すことによって、前記「Read Data」の指令を実行することができ、前記第１のネットワーク装置の前記第１のデータチャネルは、前記ネットワークバスから前記データを書込むことによって、前記「Write Data」の代理指令を実行することができる、請求項２３に記載のネットワーク装置。
【請求項２７】
前記メモリは、「Trigger」の開始プログラムの指令および「Read Data」の代理指令を記憶することができ、前記代理処理モジュールが、前記ネットワークバス上で「Trigger」の指令を検出すると、前記代理処理モジュールは、前記第１のデータチャネルに前記「Read Data」の代理指令を送信することができ、前記第１のデータチャネルが前記ネットワークバス上にデータを読出すことによって前記「Read Data」の代理指令を実行できるようにする、請求項２３に記載のネットワーク装置。
【請求項２８】
前記代理処理モジュールが、少なくとも前記第１のデータチャネルにアドレス指定された「Trigger」の指令を検出すると、前記第１のデータチャネルは、前記「Read Data」の代理指令を実行する前に、前記「Trigger」の指令を実行することができる、請求項２７に記載のネットワーク装置。
【請求項２９】
前記メモリは、「Trigger」の開始プログラムの指令、「Read Data」の代理指令、および予め規定された量のデータを特定する代理制御コードを記憶することができ、前記代理処理モジュールが、前記ネットワークバス上で「Trigger」の指令を検出すると、前記代理処理モジュールは、前記第１のデータチャネルに前記「Read Data」の代理指令を送信することができ、前記第１のデータチャネルが前記ネットワークバス上に前記予め規定された量のデータを読出すことによって前記「Read Data」の代理指令を実行できるようにする、請求項２３に記載のネットワーク装置。
【請求項３０】
前記代理処理モジュールが、少なくとも前記第１のデータチャネルにアドレス指定された「Trigger」の指令を検出すると、前記第１のデータチャネルは、前記「Read Data」の代理指令を実行する前に、前記「Trigger」の指令を実行することができる、請求項２９に記載のネットワーク装置。
【請求項３１】
前記ネットワーク装置は、代理動作のために設定された複数の第１のデータチャネルを含み、前記メモリは、「Trigger」の開始プログラムの指令、「Read Data」の代理指令、および代理制御コードを、予め規定された量のデータを集合的に特定し、そして前記代理指令の実行の順序を個々に示す前記第１のデータチャネルのために記憶することができ、前記代理処理モジュールが、前記ネットワークバス上で「Trigger」の指令を検出すると、前記代理処理モジュールは、前記第１のデータチャネルに前記「Read Data」の代理指令を送信することができ、前記第１のデータチャネルが実行の前記示された順序で前記「Read Data」の代理指令を実行することによって前記ネットワークバス上に前記予め規定された量のデータを読出すことができるようにする、請求項２３に記載のネットワーク装置。
【請求項３２】
前記代理処理モジュールが、少なくとも前記第１のデータチャネルにアドレス指定された「Trigger」の指令を検出すると、前記第１のデータチャネルは、前記「Read Data」の代理指令を実行する前に、前記「Trigger」の指令を実行することができる、請求項３１に記載のネットワーク装置。
【発明の詳細な説明】
【技術分野】
【０００１】
発明の分野
この発明は、一般に、ネットワークバス上の通信を制御するためのシステムおよび方法に関し、より特定的に、共通のバスを介して通信するネットワーク装置間における、高度に設定可能なピア・トゥ・ピア通信のためのシステムおよび方法に関する。
【背景技術】
【０００２】
発明の背景
自動車産業および航空宇宙産業が用いる診断システム、プロセス制御、通信、マルチメディアエンターテイメント等のシステムが一層複雑になるにつれて、互いにまたは中央コントローラ等と通信するための追加の装置に対する必要性が生じる。従来、これらのシステムは、さまざまな装置間に延びる専用配線を含んで、さまざまな装置間の通信を支援してきた。システムが一層統合されて、通信の要件が増大するにつれ、配線に必要な空間と、配線およびそれに伴う設置の費用との両方の点において、必要とされる専用配線の量が過度に増大した。さらに、専用配線の量が増大するにつれ、一般にシステムの全体の複雑さが増大するだけでなく、配線の一部が設置中または設置後に損傷を受けるか、または破損し得る可能性も増大する。
【０００３】
したがって、複数のネットワーク装置間に共通の通信経路を設けるために、ネットワークシステムが開発された。たとえば自動車および航空宇宙の適用例では、ネットワークシステムを用いてさまざまな構成要素を監視し、診断情報および状態情報を収集することができる。この点に関し、さまざまな構成要素が受けるひずみ、加速度、圧力および／または温度に関する診断情報および状態情報を、収集して分析することができる。
【０００４】
さらに別の例として、自動車、小型バン、スポーツ汎用車、航空機、ボート等の車両の乗員に対するマルチメディア情報の配信および通信を支援するために、または、車両等のシステムに適用することのできるプロセス制御の適用例で用いるために、現在、ネットワークバスアーキテクチャが開発されている。有利にも、このネットワークバスは、車両全体において選択されたスピーカまたはヘッドホンのジャックに対して、ラジオ、カセットテーププレーヤ、コンパクトディスクプレーヤ等の１つ以上によって生成される、ストリーミング音声信号を含む音声信号を伝送する。同様に、ネットワークバスは、車両の乗員が携帯するセルラー式電話との音声通信およびデータ通信だけでなく、ラップトップコンピュータ、手持ち式の計算装置等との通信も支援することができる。加えて、ネットワークバスは、ストリーミング映像信号を含む映像信号を、テレビジョン受信機、ビデオカセットレコーダまたは他の映像ソースから、１つ以上の映像モニタに送信することができる。このシステムは、極めて信頼性の高い故障許容システムを必要とする衝突回避システムおよび／または自動防護装置、電子制御方式による制動、電子制御方式による駆動、自動車のエンジンおよび変速機の制御等のプロセス制御の適用例も支援することができる。これらのシステムの各々は、開発中のネットワークアーキテクチャを用いて制御することのできる複数のセンサおよびアクチュエータを含み得る。さらに、このネットワークバスシステムは、車両の診断の性能に関する情報を伝送することができる。
【０００５】
ネットワークバスに接続されるさまざまな装置に加え、一般に、１つ以上のコントローラもまたネットワークバスに接続されて、さまざまな遠隔装置に指令を送信して、かつ、これらの遠隔装置からデータを受信する。特に、これらの指令は、さまざまな装置がネットワークバスを介して情報を送信すべき態様を含む、さまざまな装置が機能すべき態様を
特定する。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
従来、上述の種類のネットワークは、アナログのフォーマットでデータを送信してきた。残念なことに、アナログ信号は、データ送信中に信号に導入される雑音の影響を受けやすい。送信される信号の多くが最初に低振幅を有しているため、この雑音は、信号を崩し、信号の解像度の損失を生じるレベルまで信号対雑音比を下げるおそれがある。さらに、これらのネットワーク装置の多くは、コントローラから一定の距離を置いて分散しているために、ネットワーク装置をコントローラに接続する電気線が、配線内のＤＣ抵抗による信号の劣化を生じるほど長くなってしまうおそれがある。
【０００７】
これらの欠点を考慮すると、デジタルネットワークを用いることが有利であろう。しかしながら、従来の多くのデジタルネットワークは、それ自体がさまざまな問題を抱えている。たとえば、既存の多くのデジタルネットワークは、各ネットワーク装置が比較的高レベルのプロセッサを有することを必要とする複雑なプロトコルに従って作動し、それによってネットワーク装置のコストが増大する。また、複雑なプロトコルは、データの収集および制御に必要とされないバス上のメッセージに、オーバーヘッドを導入する。このオーバーヘッドは、バス上で送信することのできるデータサンプルの数を著しく制限し得る。これらのネットワークは、他の問題も有する。たとえば、これらのネットワークは、収集および制御の両方を一般に支援せず、一般に、比較的短い距離にわたって延びるネットワークしか支援しない。さらに、これらのネットワークは、一般に、嵩の高いネットワーク装置インターフェイスを有し、ネットワークのデータ転送速度が遅く、および／または、ネットワーク装置のカウントが低い。加えて、デジタルネットワークを含む多くのコンピュータシステムは、時間決定性の態様で作動しない。したがって、一般に、これらのコンピュータシステムは、何らかの精度で繰返すか、または解釈されて実行される、ネットワーク構成要素に対する事象の指令に対し、トリガをスケジュールする能力を有さない。
【０００８】
さらに、従来のネットワークシステムの中には、バスコントローラがネットワークバス上の通信のすべてを制御するマスタ／スレーブ構成で作動するものがある。これらのネットワークシステムにおいて、バスコントローラは、１つのまたはグループのネットワーク装置のいずれか、および、ネットワーク装置と通信するためのタイミングに関連する指令を含む動作スケジュールを用いる。したがって、バスコントローラは、通信のためのすべてのタイミング、または実質的にすべてのタイミングを命令する。
【０００９】
ネットワークバス上の通信のすべてを制御する際にバスコントローラを配置すると、バスコントローラがネットワークバス上の通信の輻輳を解消することにより有利であるが、この構成にはいくつかの欠点が存在し得る。具体的に、いくつかの例では、ストリーミング音声信号を移動させる場合等において、どのようなバスコントローラからも禁止されずに、１つ以上のネットワーク装置から他のネットワーク装置にデータを直接移動することが望ましい。
【００１０】
ネットワーク装置間におけるピア・トゥ・ピア通信を可能にするために、従来のネットワークシステムの中には、さまざまなネットワーク装置間に専用配線を含んで、ネットワーク装置間に直接のアクセスを提供するものがある。しかしながら、上で述べたように、ネットワークシステムの重要な利点は、専用配線を共通のネットワークバスで置換えることである。上で述べたネットワークシステムが、専用配線をさらに求めるということは、この目標に矛盾し、配線およびそれに伴う設置に費用がさらにかかることに加え、配線の一部が設置中または設置後に損傷を受けるか、または破損し得る可能性等の問題を被る。
【００１１】
専用配線の使用に対する代替例として、他のネットワークシステムは、ネットワーク装置間の通信が、バスコントローラを介して続行することを必要とする。しかしながら、この代替例もまた望ましくない。情報の一定の流れが、１つのネットワーク装置によって送信されて他のネットワーク装置によって受信されることが多いため、転送が成功するためには、情報の転送のタイミングが重要である。バスコントローラを介した情報の転送により、情報が通行しなければならない追加の要素が加わるため、情報の転送全体に、必要以上に時間が加わる。
【００１２】
発明の概要
上述の欠点を考慮して、この発明のさまざまな実施例は、従来のネットワークシステムよりも効率の良い態様でネットワークにおいてピア・トゥ・ピア通信を開始するためのシステム、ネットワーク装置、および方法を提供する。この発明のシステム、ネットワーク装置、および方法の実施例により、ネットワーク装置のデータチャネルは、従来のいくつかのネットワークシステムが必要とする専用配線なしに、共通のネットワークバスを介してピア・トゥ・ピアの態様で通信することができる。加えて、この発明のシステム、ネットワーク装置、および方法の実施例により、ネットワーク装置のデータチャネルは、バスコントローラから禁止されずに通信することができる。また、有利にも、この発明のシステム、ネットワーク装置、および方法の実施例により、ネットワーク装置は、ネットワークバス上の或る指令に対してデータチャネルがどのように応答するかを設定することができ、この応答は、指令からの期待される応答とは異なり得る。
【課題を解決するための手段】
【００１３】
この発明の一局面に従い、ネットワークバスを介したピア・トゥ・ピア通信を開始するために、システムが設けられる。このシステムは、ネットワークバスと電気的に通信してネットワークバス上の通信を制御するためのバスコントローラを含む。この点に関し、バスコントローラは、ネットワークバス上に指令を送信することができる。また、このシステムは、ネットワークバスと電気的に通信している少なくとも１つのネットワーク装置も含み、ネットワーク装置は、集合的に、少なくとも第１のデータチャネルおよび第２のデータチャネルを含む。第１のデータチャネルは、代理動作のために設定され、開始プログラムの指令および代理指令を含む。加えて、代理動作のために設定された少なくとも第１のデータチャネルは、予め規定された量のデータ、最初のデータ片，および／または予め規定された量のデータの順序を示す少なくとも１つの代理制御コードをさらに含み得る。バスコントローラが、第１のデータチャネルの開始プログラムの指令に合致する指令をネットワークバス上に送信すると、少なくとも第２のデータチャネルは、開始プログラムの指令を実行することができ、少なくとも第１のデータチャネルは、それぞれの代理指令を後に実行することができ、それによって少なくとも第１のデータチャネルと第２のデータチャネルとの間にピア・トゥ・ピア通信を可能にする。また、バスコントローラが、それぞれの開始プログラムの指令に合致する、代理動作のために設定された少なくとも第１のデータチャネルにアドレス指定された指令を送信すると、少なくとも第１のデータチャネルは、その指令を実行し、その後、それぞれの代理指令を実行することができる。
【００１４】
より具体的に、一実施例によると、ネットワーク装置は、代理動作のために設定され、そして「Read Data」の開始プログラムの指令および「Write Data」の代理指令を有するデータチャネルを含む第１のネットワーク装置を備える。したがって、バスコントローラが、第２のデータチャネルにアドレス指定された「Read Data」の指令を送信すると、第２のデータチャネルは、ネットワークバス上にデータを読出すことによって、「Read Data」の指令を実行することができる。この点において、第１のネットワーク装置は、設定された第１のデータチャネルおよび第２のデータチャネルの両方を含み得る。また、バスコントローラが、第２のデータチャネルにアドレス指定された「Read Data」の指令を送信すると、第１のネットワーク装置の第１のデータチャネルは、ネットワークバスからデ
ータを書込むことによって、「Write Data」の代理指令を実行することができる。
【００１５】
別の実施例によると、ネットワーク装置は、代理動作のために設定され、そして「Trigger」の開始プログラムの指令および「Read Data」の代理指令を有する第１のデータチャネルを含む第１のネットワーク装置を備える。また、このネットワーク装置は、同じく代理動作のために設定され、そして「Trigger」の開始プログラムの指令および「Write Data」の代理指令を有する第２のデータチャネルを含む第２のネットワーク装置も備える。この実施例では、バスコントローラが「Trigger」の指令を送信すると、第１のネットワーク装置の設定された第１のデータチャネルは、ネットワークバス上にデータを読出すことによって、「Read Data」の代理指令を実行することができる。同様に、第２のネットワーク装置の設定された第２のデータチャネルは、ネットワークバスからデータを書込むことによって、「Write Data」の代理指令を実行することができる。また、バスコントローラが、第１のネットワーク装置および第２のネットワーク装置の設定された第１のデータチャネルおよび第２のデータチャネルを含むデータチャネルのグループにアドレス指定された「Trigger」の指令を送信すると、第１のネットワーク装置の設定された第１のデータチャネルは、「Read Data」の代理指令が後に続く「Trigger」の指令を実行することができる。第２のネットワーク装置の設定された第２のデータチャネルは、「Write Data」の代理指令が後に続く「Trigger」の指令を実行することができる。
【００１６】
さらに別の実施例によると、ネットワーク装置は、代理動作のために設定され、そして「Trigger」の開始プログラムの指令、「Read Data」の代理指令、および予め規定された量のデータを特定する代理制御コードを有する第１のデータチャネルを含む第１のネットワーク装置を備える。この実施例において、ネットワーク装置は、同じく代理動作のために設定され、そして「Trigger」の開始プログラムの指令、「Write Data」の代理指令、および予め規定された量のデータを集合的に特定して最初のデータ片を個々に示す代理制御コードを有する少なくとも１つの第２のデータチャネルを含む、少なくとも１つの第２のネットワーク装置も備える。
【００１７】
したがって、バスコントローラが「Trigger」の指令を送信すると、第１のネットワーク装置の設定された第１のデータチャネルは、ネットワークバス上に予め規定された量のデータを読出すことによって、「Read Data」の代理指令を実行することができる。同様に、第２のネットワーク装置の設定された第２のデータチャネルは、各データチャネルがそれぞれの最初のデータ片で起動する状態でネットワークバスから予め規定された量のデータを書込むことによって、「Write Data」の代理指令を実行することができる。また、バスコントローラが、第１のネットワーク装置および第２のネットワーク装置の設定された第１のデータチャネルおよび第２のデータチャネルを含むデータチャネルのグループにアドレス指定された「Trigger」の指令を送信すると、第１のネットワーク装置の設定された第１のデータチャネルは、「Read Data」の代理指令が後に続く「Trigger」の指令を実行することができる。次いで、第２のネットワーク装置の設定された第２のデータチャネルは、「Write Data」の代理指令が後に続く「Trigger」の指令を実行することができる。
【００１８】
さらに別の実施例によると、ネットワーク装置は、代理動作のために設定され、そして「Trigger」の開始プログラムの指令、「Read Data」の代理指令、および予め規定された量のデータを集合的に特定して代理指令の実行の順序を個々に示す代理制御コードを有する複数の第１のデータチャネルを含む、第１のネットワーク装置を備える。この実施例において、ネットワーク装置は、同じく代理動作のために設定され、そして「Trigger」の開始プログラムの指令、「Write Data」の代理指令、および予め規定された量のデータを集合的に特定して最初のデータ片を個々に示す代理制御コードを含む少なくとも１つの第２のデータチャネルを包含する、少なくとも１つの第２のネットワーク装置も含む。
【００１９】
次に、動作の際に、バスコントローラが「Trigger」の指令を送信すると、第１のネットワーク装置の設定された第１のデータチャネルは、実行の示された順序で「Read Data」の代理指令を実行して、それによってネットワークバス上に予め規定された量のデータを読出すことができる。第２のネットワーク装置の設定された第２のデータチャネルは、各データチャネルがそれぞれの最初のデータ片で起動する状態で、ネットワークバスから予め規定された量のデータを書込むことによって、「Write Data」の代理指令を実行することができる。また、バスコントローラが、第１のネットワーク装置および第２のネットワーク装置の設定された第１のデータチャネルおよび第２のデータチャネルを含むデータチャネルのグループにアドレス指定された「Trigger」の指令を送信すると、第１のネットワーク装置の設定された第１のデータチャネルは、「Read Data」の代理指令が後に続く「Trigger」の指令を実行することができる。同様に、第２のネットワーク装置の設定された第２のデータチャネルは、「Write Data」の代理指令が後に続く「Trigger」の指令を実行することができる。
【００２０】
ピア・トゥ・ピア通信を確立するためのネットワーク装置および方法もまた、提供される。
【００２１】
以上のように、この発明を概略的に説明してきたので、次に、添付の図面を参照する。これらの図面は、必ずしも一律の縮尺では描かれていない。
【発明を実施するための最良の形態】
【００２２】
発明の詳細な説明
次に、この発明の好ましい実施例が示された添付の図面を参照して、以下に、この発明を一層詳細に説明する。しかしながら、多くの異なる形態でこの発明を実施することができ、この発明は、この明細書に明示された実施例に限定されるように解釈されるべきではない。むしろ、これらの実施例は、この開示を徹底した完全なものにするように、かつ、この発明の範囲を当業者に完全に伝えるように、提供される。すべての図面において、同じ番号は同じ要素を示す。
【００２３】
以上に簡潔に論じ、以下により詳細に論じるように、この発明は、ネットワークシステムにおいてピア・トゥ・ピア通信を確立するためのシステムおよび方法を提供する。重要な点は、バスコントローラから禁止されずに少なくとも部分的に通信するように、また、それによってストリーミング音声信号またはストリーミング映像信号の場合等において一層効率の高い通信を可能にするように、この発明のシステムおよび方法が、ネットワークバスに接続された少なくとも１つのグループのネットワーク装置を設定することである。
【００２４】
最初に、この発明のシステム、ネットワーク装置および方法が、どのような種類のネットワークシステムにおいても実現可能であることに注目することが重要である。このネットワークシステムは、航空機、宇宙船、車両、ビル、工場、他の任意のパッケージ、構造、または環境に存在し得る。例として、この発明のシステム、ネットワーク装置、および方法は、回転翼航空機に存在するネットワークシステムにおいて実現することができ、ネットワークは、共通のネットワークバスにすべてが接続されてバスコントローラと通信して航空機のさまざまな構成要素に関する性能、状態等を判断する複数のセンサ、アクチュエータ等を含む。たとえば、ネットワーク装置は、航空機の主回転翼のシステムにおけるひずみ、加速度、および圧力を監視するためのセンサを含み得る。
【００２５】
また、この発明のシステム、ネットワーク装置および方法は、ネットワークシステムが、車両の異なる構成要素に接続されたセンサおよびアクチュエータを含む、自動車等の車両内のネットワークシステムにおいても実現することができる。たとえば、ネットワーク
装置は、少し例を挙げると、スロットル位置、油圧、水温、伝導流体圧、座席位置、アンチロックブレーキシステム、サスペンション、自動防護装置システム（passive restraint system）、および操縦システムを監視するためのセンサを含み得る。代替的に、ネットワーク装置は、バスコントローラからの指令に応答して特定の機能を実行するためのアクチュエータを含み得る。たとえば自動車の適用例において、ネットワーク装置は、少し例を挙げると、スロットル位置、アンチロックブレーキシステム、サスペンション、自動防護装置システム、アクティブサスペンションシステムを制御するためのアクチュエータを含み得る。
【００２６】
さらに、ネットワーク装置は、音声または映像のソースも含み得る。この点に関し、ネットワーク装置は、ラジオ受信機、テープカセットプレーヤ、コンパクトディスクプレーヤ、セルラー式電話の受信機、または、いくつかの例においてストリーミング音声信号を含む音声信号をネットワークバスに与えるための、他の音声ソースを含み得る。これに対応して、ネットワーク装置は、ネットワークバスから音声信号を受信して、さらに、対応する可聴出力を与えるためのスピーカ、ヘッドホンのジャック等を含み得る。同様に、ネットワーク装置は、テレビジョン受信機、ビデオカセットプレーヤ、またはストリーミング映像信号を含む映像信号をネットワークバスに与えるための他の映像ソースを含み得る。したがって、ネットワーク装置は、映像信号を受信してその映像信号に基づいて画像を表示するための映像モニタ等を含み得る。
【００２７】
また、この発明から逸脱することなく、この発明を任意の特定のプロトコルおよびネットワーク構造において使用できることが理解される。しかしながら、有利な一実施例において、この発明のシステム、ネットワーク装置および方法は、それらの両方の内容が本明細書において引用によって援用される、２０００年１２月１２日に出願されて「ネットワークを介してコントローラにデータチャネルをデジタル式に接続するためのネットワーク装置インターフェイス（Network Device Interface for Digitally Interfacing Data Channels to A Controller via A Network）」と題された米国特許出願Ｓ／Ｎ  ０９／７３５，１４６と、２０００年１２月１４日に出願されて「共通のバスを介して遠隔装置をデジタル式に制御するためのバスコントローラ（Bus controller for Digitally Controlling Remote Devices via A Common Bus）」と題された米国特許出願Ｓ／Ｎ  ０９／７３６，８７８とに記載されたプロトコルおよびネットワーク構造において実現される。このプロトコルおよびネットワーク構造は、従来の多くのデジタルネットワークに優る多くの利点を提供する。
【００２８】
特に、以前に論じたように、多くの既存のデジタルネットワークは、各ネットワーク装置が比較的高レベルのプロセッサを有することを必要とする複雑なプロトコルに従って作動する。それにより、このことは、ネットワーク装置のコストを増大させ得る。さらに、高レベルのプロトコルは、バス上のメッセージにオーバーヘッドを導入するおそれがあり、このオーバーヘッドは、バス上で送信することのできるデータサンプルの数を著しく制限し得る。また、これらのネットワークは、一般に収集および制御の両方を支援せず、一般に、比較的短い距離にわたって延びるネットワークしか支援しない。さらに、これらのネットワークは、一般に、嵩の高いネットワーク装置インターフェイスを有し、ネットワークのデータ転送速度が遅く、および／または、ネットワーク装置のカウントが低い。加えて、デジタルネットワークを含む多くのコンピュータシステムは、時間決定性の態様で作動しないため、何らかの正確なタイミングで繰返すか、または解釈されて実行される、ネットワーク構成要素に対するトリガ指令をスケジュールする能力を有さない。
【００２９】
従来のデジタルネットワークシステムにおけるこれらの欠点を考慮して、米国特許出願Ｓ／Ｎ  ０９／７３５，１４６およびＳ／Ｎ  ０９／７３６，８７８のデジタルネットワーク構造およびプロトコルは、それほど複雑ではない装置を実現することのできる低レベ
ルの命令セットを用いる。新規に開発されたこのネットワークシステムおよびプロトコルは、データの転送速度も高めることができ、ネットワークバス上における正確なタイミングのデータ収集または他の動作を可能にする指令構造を用いる。
【００３０】
この発明は、さまざまなネットワークアーキテクチャとともに用いることができるが、この発明の機能は、この発明の有利な一実施例に従って、上述のネットワーク構造およびプロトコルの既存の指令構造に追加される。この実施例において、この発明のシステム、方法および機能は、米国特許出願Ｓ／Ｎ  ０９／７３５，１４６およびＳ／Ｎ  ０９／７３６，８７８のデジタルネットワーク構造およびプロトコルにおいて実現される。特に、以下に説明する指令は、プロトコルの構造と同じ構造で実現することができ、通信構造は同じである。
【００３１】
図１を参照すると、この発明が実施され得る汎用のネットワークシステムが示される。特に、図１は、ホストコンピュータまたはバスコントローラ１２、ネットワークバス１４、および多数のネットワーク装置１６〜２０を有する一般的なネットワークシステム１０を示す。この構成において、バスコントローラは、一般にネットワーク１０の設定および制御を提供する。さらに、個々のネットワーク装置は、割当てられてバス上のネットワーク装置を一意に規定する、識別子またはアドレスを含む。作動時に、バスコントローラは一般に、ネットワークバスを介してネットワーク装置に指令を送信し、それとともに、指令に従うことが考えられる１つのネットワーク装置または複数のネットワーク装置のアドレスも送信する。指令とともに送信されたアドレスによって指定された１つのネットワーク装置または複数のネットワーク装置は、その指令に関連する動作を実行し、バスコントローラまたは別のネットワーク装置のいずれかに送信されるべきデータをネットワークバス上に配置することによって応答することができる。加えて、または代替的に、指定された１つのネットワーク装置または複数のネットワーク装置は、センサ等のネットワーク装置で入来するデータの測定を開始することによって、トリガ指令等の指令に応答することができ、または、アクチュエータ等のネットワーク装置の出力に、値を移動することができる。
【００３２】
いくつかの実施例では、１つ以上のネットワーク装置が、ネットワーク１０に接続されたネットワーク装置インターフェイス（ＮＤＩ）を含み得るが、これは図示されていない。ＮＤＩは、変換器がセンサまたはアクチュエータのいずれであっても、バスコントローラ１２と直接通信できない実施例において用いられる。ＮＤＩは、バスコントローラから指令を受信して解釈し、バスコントローラからの指令およびデータに基づいて、信号調節を制御し、たとえばセンサまたは起動しているアクチュエータからデータを受信する。ＮＤＩは、センサおよび／またはアクチュエータからのデータおよび／またはメッセージを記憶するための先入れ先出し（ＦＩＦＯ）メモリのブロックまたはスタックを含み得る。この実施例において、バスコントローラは、スタックメモリの上部にデータを追加するか、または上部からデータを読出すことができる。また、ＮＤＩは、フォーマットを受信して、信号調整装置からバスコントローラにデータを送信することもできる。この発明は、ネットワーク装置１６〜２０間のピア・トゥ・ピア通信に焦点を合わせているため、以下のさまざまな実施例は、バスコントローラとＮＤＩとの間の通信には言及せず、その代わりに、バスコントローラと通信するネットワーク装置を説明する。実施例の中には、ネットワーク装置が、バスコントローラと適切に通信するのに必要とされる構成要素を含むものもあれば、ＮＤＩに関連するものもあることを理解されたい。したがって、以下に論じるネットワーク装置のさまざまな通信は、ネットワーク装置またはネットワーク装置に関連するＮＤＩのいずれかによって実行され得る。このようなＮＤＩの完全かつ詳細な開示は、米国特許出願Ｓ／Ｎ  ０９／７３６，８７８に示されている。
【００３３】
各ネットワーク装置１６〜２０および／またはＮＤＩ（バスコントローラ１２を含む）
は、設定データおよび較正データを記憶する、トランスデューサ電子データシート（Transducer Electronic Data Sheet）（ＴＥＤＳ）と呼ばれる１組のメモリを一般に含む。ＴＥＤＳ内に含まれる記憶領域の一部は、ユーザによって変更することができない。他の領域は、以下に論じるように論理アドレスおよびグループアドレス等のデータに対する必須のユーザ領域およびＡＳＣＩＩの記述領域であり、さらに他の領域は、必須ではない。加えて、各ネットワーク装置および／またはＮＤＩは、以下に述べるように各データチャネルが別個にアドレス指定される状態で、１つ以上のデータチャネルを含み得る。したがって、複数のデータチャネルを有するネットワーク装置および／またはＮＤＩは、各データチャネルを介して別個に通信することができる。この点において、多くの機能がネットワーク装置に関して説明されているものの、このような機能は、この発明の精神および範囲から逸脱することなく、ネットワーク装置内の１つ以上のデータチャネルにより、一層特定的に実行され得る。
【００３４】
バスコントローラ１２が共通のネットワークバス１４を介してネットワーク装置１６〜２０に接続されているため、バスコントローラは、ネットワーク１０を制御するために、各ネットワーク装置に対する専用の接続を必要としない。その代わりに、バスコントローラは、アドレス指定方式を用いて、各ネットワーク装置を割当てて制御する。ネットワークを作動させるために、各ネットワーク装置には、または、１つ以上のネットワーク装置が複数のデータチャネルを含む実施例において各データチャネルには、１つ以上の論理アドレス、グローバルアドレス、および設定されている場合は１つ以上のグループアドレスを含む１つ以上のアドレスが割当てられる。論理アドレスは、ネットワーク装置内の１つのネットワーク装置または１つのデータチャネルによって認識されるアドレスであり、バスコントローラは、そのアドレスを用いて特定のネットワーク装置またはチャネルに対して指令または要求を方向付ける。一方、グローバルアドレスは、ネットワーク上のすべてのネットワーク装置によって認識されるアドレスであり、バスコントローラは、そのアドレスを用いて汎用のデータおよび指令を交換する。たとえば、グローバルアドレス方式により、バスコントローラは、ネットワーク装置のすべてを一様に初期化またはリセットすることができる。グループアドレスは、ネットワーク上の特定のグループのネットワーク装置によって認識され得るアドレスであり、バスコントローラは、そのアドレスを用いてグループのデータおよび指令を交換することができる。たとえば、グループアドレス方式により、バスコントローラは、さまざまなサンプルレートでネットワーク装置のグループに対し、時間決定性のトリガを設定することができる。加えて、以下に述べるように、グループアドレス方式により、ネットワーク装置のグループは、バスコントローラから禁止されずに、ネットワークバス上でピア・トゥ・ピア通信を確立することができる。
【００３５】
上で述べたように、グローバルアドレスは、グローバルなデータおよび指令を交換するために用いられる。グループアドレスは、複数のネットワーク装置１６〜２０によって認識され得るアドレスであって、ネットワーク１０上のネットワーク装置のグループまたはサブセットに対するデータおよび指令の交換のために用いることができる。グループアドレスに関連するのが、ネットワーク装置に記憶されたグループマスクである。一実施例のグループマスクは、１６個の予め規定されたネットワークアドレスを表す１６ビットのワードであり、「１」に設定された各ビットは、遠隔装置が属するグループのアドレスを表わす。
【００３６】
一例として、一実施例では、グローバルアドレスが００００ｈｅｘとして割当てられる。この実施例において、バスコントローラ１２がアドレス００００ｈｅｘを送信すると、ネットワーク装置１６〜２０のすべてがその指令に従う。さらに、一実施例では、グループアドレスが、ネットワーク装置のグループマスクの利用可能な範囲を表す０００１ｈｅｘから０００ｆｈｅｘの範囲で選択される。この実施例では、バスコントローラがこの範囲内のアドレスをネットワーク装置に送信すると、ネットワーク装置は、このグループア
ドレスと、ネットワーク装置が記憶したグループマスクとを比較する。グループアドレスに対応するグループマスク内のビットが設定されている場合、ネットワーク装置は、そのグループアドレスに関連する指令を解釈してそれに従う。たとえば、ネットワーク装置が、グループマスク１０００００００１１００ｂｉｎを記憶している場合、このネットワーク装置は、グループアドレス０００ｆｈｅｘ、０００３ｈｅｘ、および０００２ｈｅｘに属する。バスコントローラは、一般に、ピア・トゥ・ピア通信を確立するためだけでなく、サービス指令、トリガ、システムのリセット、またはネットワーク１０の試験のために、グローバルアドレスおよびグループアドレスを用いる。
【００３７】
論じたように、ネットワークシステムの中には、バスコントローラから禁止されずにネットワーク装置間の通信を望む処理に関連して用いられるものがある。たとえば、ネットワークシステムの中には、受信装置を含む他のネットワーク装置と直接通信することによって最も効率良く作動する、音声ソースまたは映像ソース等のソースデータチャネルを含むか、またはソース装置を含む、ネットワーク装置を含み得るものがある。この点において、上で述べたように、ネットワーク装置１６〜２０は、ラジオ受信機、テープカセットプレーヤ、コンパクトディスクプレーヤ、セルラー式電話受信機、または、いくつかの例においてストリーミング音声信号を含む音声信号をネットワークバス１４に与えるための他の音声ソース等のソース装置を含み得る。加えて、または代替的に、ネットワーク装置は、テレビジョン受信機、ビデオカセットプレーヤ、またはストリーミング映像信号を含む映像信号を、ネットワークバスに与えるための他の映像ソース等のソース装置を含み得る。
【００３８】
ネットワークシステムは、ネットワークバスからストリーミング音声信号等の信号を受信して、さらに、対応する出力を与えるために、スピーカ、ヘッドホンのジャック等の受信データチャネルを含むか、または受信装置を含む、ネットワーク装置を含み得る。同様に、ネットワーク装置は、ストリーミング映像信号等の信号を受信して、さらに、その映像信号に基づいて画像を表示するために、映像モニタ等を含み得る。
【００３９】
例示のために、図２〜図６は、自動車に一体化された図１のネットワークシステムを示す。この実施例のネットワークシステム１０は、ネットワークバス１４に接続されてネットワークバス上の通信を制御するためのバスコントローラ１２（図１に図示）を含む。このネットワークシステムは、自動車上で異なる機能を実行するために、センサ、アクチュエータ、マルチメディア装置等の少なくとも２つのネットワーク装置１６および１８（第１のネットワーク装置１６および第２のネットワーク装置１８）をさらに含む。重要な点は、第１および第２のネットワーク装置が、バスコントローラから禁止されずに、ネットワークバスを介したデータの送受信等の動作を行なうように設定され得ることであり、これらの動作を今後は代理動作と呼ぶ。上に示したように、各ネットワーク装置は、一つ以上のデータチャネルを含み得る。したがって、図示されたように、たとえば各ネットワーク装置は、３つのデータチャネル（ＣＨ１、ＣＨ２、およびＣＨ３と示される）を含み、各データチャネルは、一意の論理アドレスを含み、グループアドレスをさらに含み得る。
【００４０】
従来の動作において、第１のネットワーク装置１６は、バスコントローラ１２からの個々の指令を介して、第２のネットワーク装置１８と通信することができる。この点において、バスコントローラは、第１のネットワーク装置および第２のネットワーク装置の全データチャネルに共通のグループアドレスに対し、トリガ指令を送信することによって、第１のネットワーク装置および第２のネットワーク装置の全チャネルに対し、ネットワークバス１４を介してトリガ指令を送信することができる。ネットワーク装置のソースデータチャネルは、ネットワークバスからトリガ指令を受信すると、データを入力してそのデータをレジスタに保持する。同時に、ネットワーク装置の受信データチャネルは、受信データチャネル内のレジスタに保持されたデータを出力する。たとえば、バスコントローラが
グループアドレス「１」にトリガ指令を送信した場合、グループアドレス１を有してカセットプレーヤを含むネットワーク装置は、ロードされたカセットテープから音声データサンプル等のデータを入力することができ、ステレオスピーカの組を含んで同様にグループアドレス１を有するネットワーク装置は、スピーカ内に現在記憶されている、可聴出力の形の音声データサンプル等のデータを出力することができる。
【００４１】
バスコントローラ１２は、従来の動作におけるトリガ指令に続き、ソースデータチャネルの論理アドレスを用いて、そのソースデータチャネルに対し、或る量のデータを示す読出指令を送信することができる。この明細書で使用される「読出」という用語は、ネットワークバス１４の視点から読出されたデータを示すために用いられる。たとえば、バスコントローラは、読込データ、２ワード、アドレス２４を送信することによって、カセットプレーヤに読出指令を送信することができる。論理アドレス２４を有するカセットプレーヤが、この読出指令を受信すると、２ワード（３２ビット等）のデータ（たとえばカセットテープからカセットプレーヤに以前入力された音声データサンプル）をネットワークバス上に読込み、バスコントローラは、次に、それをネットワークバスから受信する。
【００４２】
バスコントローラ１２は、データの受信に続き、１つ以上の受信データチャネルに対し、書込まれるべきデータが後に続く書込指令を送信することができる。読出指令と同様に、この明細書で用いられる「書込」という用語は、ネットワークバスの視点から書込まれたデータを示すために用いられる。この点において、書込指令は、ネットワークバス１４から書込むデータの量を示すことができ、１つの受信装置の場合の論理アドレス、または複数の受信チャネルの場合のグループアドレスのいずれかに従って、所望の受信チャネルを示すことができる。たとえば、バスコントローラは、書出データ、２ワード、アドレス４２を送信して、論理アドレス４２を有する左右のスピーカの１組に対し、ネットワークバスから２ワードのデータを書込むように指令することができる。バスコントローラは、代替的に、同じ指令をグループアドレス１に送信して、グループアドレス１を有するスピーカの組に対し、ネットワークバスから２ワードのデータを書込むように指令することができる。
【００４３】
ソースデータチャネルと受信データチャネルとの間の通信が、バスコントローラ１２を介した続行を要することにより、この通信は多数のステップを必要とし、したがって大量の処理時間を必要とする。この点において、この発明のシステムおよび方法は、バスコントローラを介して続行しない、直接のデータチャネル間の通信を提供する。データチャネル間での直接の通信を可能にするために、データチャネルは、代理動作のために設定され得る。以下に述べるように、そのように設定された各データチャネル内において、代理動作は、データチャネルに対し、バスコントローラによって発行された予め設定された指令（開始プログラムの指令と呼ぶ）の代わりに、またはその後に、指令動作（代理指令と呼ぶ）を実行させる。この設定は、任意の数の態様において得ることができるが、好ましい実施例では、以下に述べるように、代理動作を可能にするフラグが、一つ以上の開始プログラムの指令と、補助の引数を備えた、対応する１つ以上の代理指令と、補助のデータを備えた代理制御コードとともに、ネットワーク装置内に記憶される。たとえば、イネブリングフラグ、開始プログラムの指令、代理指令、および代理制御コードは、図２〜図６に示し、以下に説明するように、ネットワーク装置のＴＥＤＳ内または代理処理モジュール２２内に含まれる、予め規定されたソースレジスタに記憶することができる。
【００４４】
開始プログラムの指令は、ネットワークバス１４上に発行されたどの指令が、それぞれのデータチャネル内の代理動作を開始するかを特定する。この点において、各開始プログラムの指令は、指令または動作（ＯＰ）を含み、設定されたデータチャネルに必ずしも対応しない指令を実行するデータチャネルの論理アドレス（ＬＡ）またはグループアドレス（ＧＡ）も含み得る。たとえば、図２に示されるように、第１のネットワーク装置１６の
第１のデータチャネル（ＣＨ１）は、開始プログラムの指令「Read Data」および関連する論理アドレスＬＡ４０で予め設定されており、この論理アドレス４０は、第２のネットワーク装置１８の第３のデータチャネル（ＣＨ３）に対応する。この点において、第２のネットワーク装置のＣＨ３の論理アドレスを含むように第１のネットワーク装置のＣＨ１の開始プログラムの指令を予め設定することにより、それぞれのデータチャネルは、バスコントローラ１２から禁止されることなく、互いに通信するように設定され得る。代理指令は、開始プログラムの指令の実行が完了した後に、それぞれのデータチャネルによって実行される指令である。図２に示されるように、たとえばネットワーク装置１６のＣＨ１は、代理指令「Write Data」で設定され、この代理指令は、ネットワークバス１４からデータを書込むことに対応する。
【００４５】
代理動作のために設定されたデータチャネルを備えたネットワーク装置によって記憶された代理制御コードおよび補助のデータは、開始プログラムの指令に続くデータが、どのように構文解析されるべきであるかを規定する。この点において、データチャネルが有効な開始プログラムの指令を検出すると、データチャネルは、代理制御コードを検査して、次に続くデータブロックがどのように構文解析されるべきであるかを決定する。次に、そのデータチャネルは、処理に必要なデータを抽出する。データを構文解析するための多数の制御の選択肢うちの任意の１つが存在し得るが、一実施例において、各データチャネルは、４つの制御の選択肢のうちの１つのために設定される。第１の選択肢によると、ワードのブロックが捕捉され、このブロックのサイズは、一般にネットワークブロックの指令によって指定される。この選択肢において、代理制御コードは、一般に、ネットワーク指令によって示されたブロック全体が捕捉されることを示すだけである。第２の選択肢では、データブロックから１つのワードが捕捉され、それによって代理制御コードにおいてワード数が特定されることを必要とする。
【００４６】
第３の選択肢により、第２のネットワーク装置１８において図５および図６に示されるように、ワードのブロック内のワードのサブブロックが捕捉され得、サブブロック内のワード数およびサブブロックの開始位置（すなわち最初のデータ片）のワード数が、代理制御コード内で特定されることが必要とされる。第４の選択肢により、特定の連続しないワードが捕捉され得、データセットマスクおよびデータセットサイズが代理制御コードで特定されることが必要とされる。この点において、データセットマスクは、捕捉されるべき各ワードのビットを含み得、データセットサイズは、マスクが繰返されるべき頻度を特定する。たとえば、データセットマスクがビットの０および５のセットを有し、データセットサイズが８と特定された場合、ワードのブロック全体が走査されるまで、１番目、６番目、９番目、１４番目、１７番目、２２番目、２５番目、および３０番目等のワードが捕捉される。
【００４７】
第１のネットワーク装置１６および第２のネットワーク装置１８のデータチャネルが代理動作のために一旦設定されると、各ネットワーク装置の代理処理モジュール２２は、ＴＥＤＳ内または代理処理モジュール２２内等のそれぞれのネットワーク装置内に記憶された開始プログラムの指令および引数と合致する指令すなわち動作（ＯＰ）が、任意の引数とともに存在するかどうか、ネットワークバス１４を監視する。代理処理モジュールは、任意の数の異なるプロセッサを含み得るが、好ましくは低レベルのプロセッサまたは特定用途向け集積回路（ＡＳＩＣ）を含む。この点において、図２〜図６は、ネットワークバス上の指令とデータチャネルの開始プログラムの指令とを比較することのできる比較器２３を含む、代理処理モジュールのさまざまな動作上の要素を概念として示す。また、代理処理モジュールは、比較器に応答するゲート２５も含み、これは、ネットワークバス上の指令が開始プログラムの指令に合致することを代理処理要素が検出したときに、それぞれのデータチャネルに対してそれぞれの代理指令を送信することができる。
【００４８】
ネットワーク装置が、ネットワーク装置のデータチャネルの開始プログラムの指令およびアドレスに合致する、ネットワークバス１４上の指令およびアドレスを検出すると、ネットワーク装置は、予めプログラムされた代理指令と、必要であれば任意の引数とをネットワーク装置の指令処理のパイプライン内に挿入することによって応答する。ネットワークバス上の指令が開始プログラムの指令およびアドレスに合致して、装置の論理アドレスＬＡまたはグループアドレスＧＡを介してネットワーク装置にアドレス指定されている場合、そのネットワーク装置は、予めプログラムされた代理指令が後に続く指令を実行する。しかしながら、ネットワークバス上の指令が、開始プログラムの指令およびアドレスに合致するものの、論理アドレスＬＡまたはグループアドレスＧＡを介してネットワーク装置にアドレス指定されていない場合、ネットワーク装置は、一般に、別のネットワーク装置によってネットワーク上の指令を受信した後に、予めプログラムされた代理指令を実行するのみとなる。
【００４９】
第１のネットワーク装置１６と第２のネットワーク装置１８との間の代理動作に対して、ネットワーク装置のデータチャネルがこの発明に従って互いに通信する、多くの異なるシナリオが生じ得る。この点において、図２〜図６は、以下に説明する５つのシナリオを示す。
【００５０】
図２に示すように、第１のネットワーク装置１６の第１のチャネル（ＣＨ１）は、論理アドレス（ＬＡ）４０にアドレス指定された開始プログラムの指令「Read Data」と、代理指令「Write Data」とによってプログラムされている。また、示されるように、第１のネットワーク装置の残りのチャネルの各々に対する代理動作に加え、第２のネットワーク装置１８に対するすべてのチャネルは、割込禁止にされている。次に、バスコントローラ１２が、ネットワークバス１４上に、ＬＡ＝４０に対する指令「Read Data」を発行すると想定されたい。第１のネットワーク装置は、バスコントローラによって発行されたこの指令が、ＣＨ１の開始プログラムの指令に合致することを認識して、第１のネットワーク装置の指令処理のパイプライン内に、ＣＨ１に対する代理指令（すなわち、ＬＡ＝３５、ＯＰ＝「Write Data」）を配置することによって応答する。示されるように、ＣＨ１が論理アドレス３５を有するため、論理アドレスが指令「Write Data」に対するアドレスとして追加されることを認識されたい。
【００５１】
また、ネットワーク指令（すなわちＬＡ＝４０、ＯＰ＝「Read Data」）もまた、代理指令の前に、装置の指令処理のパイプライン内に配置されるが、第１のネットワーク装置のいずれのデータチャネルも、論理アドレス４０を含まないために、第１のネットワーク装置１６内のどのデータチャネルもそのネットワーク指令には応答しないことにも注目されたい。しかしながら、第１のネットワーク装置の指令処理のパイプライン内に、代理指令に先立ちネットワーク指令を配置することによって、第１のネットワーク装置によって後に行なわれる代理指令の実行は、以下に述べるように、ネットワークバス１４上の他の動作に対して適切にタイミングが取られる。この点において、ネットワーク指令が第１のネットワーク装置を通過すると、ネットワーク指令は、そのネットワークバスに接続された他のネットワーク装置、すなわち第２のネットワーク装置１８をも通過する。第２のネットワーク装置が論理アドレス４０を有する第３のチャネル（ＣＨ３）を含むため、その指令は、ネットワークバス上にデータを読出すことによって応答する指令／アドレス復号モジュール２４を介して等により、第２のネットワーク装置のＣＨ３に渡る。しかしながら、第２のネットワーク装置は、このネットワーク指令が開始プログラムの指令であることを認識する必要はなく、その代わりに、ネットワークバス上の、同様にアドレス指定された他の任意の指令と同様の態様で、その指令を実行し得ることに注目されたい。
【００５２】
論理アドレス３５への代理指令が後に復号されると、指令／アドレス復号モジュール２４によって等により、第１のネットワーク装置１６のＣＨ１に渡される。ＣＨ１は、受信
すると、ネットワークバス１４からデータを書込むことによって、代理指令「Write Data」に応答する。第２のネットワーク装置１８のＣＨ３がネットワークバス上にデータを読出すことによってネットワーク指令に以前に応答したために、第１のネットワーク装置のＣＨ１がネットワークバスから読出したデータは、好ましくは、ＣＨ３によってネットワークバス上に読出されたものと同じデータである。したがって、第２のネットワーク装置のＣＨ３に対してネットワークバス上にデータを読出すように実質的に指令することにより、バスコントローラに対し、ＣＨ１にネットワークバスからデータを書込むように別個に指令させる必要なく、第１のネットワーク装置のＣＨ１とＣＨ３との間に通信が生じる。
【００５３】
次に、別の代理動作のシナリオを示す図３を参照する。図２に示されたシナリオと同様に、第１のネットワーク装置１６の第１のチャネル（ＣＨ１）は、開始プログラムの指令「Read Data」および代理指令「Write Data」によってプログラムされている。また、図２のシナリオと同様に、第１のネットワーク装置の残りのチャネルの各々に対する代理動作に加え、第２のネットワーク装置１８に対するすべてのチャネルは、割込不能にされている。しかしながら、第２のシナリオとは異なり、第１のネットワーク装置のＣＨ１に対する開始プログラムの指令は、論理アドレス（ＬＡ）３７を含み、この論理アドレス３７は、第１のネットワーク装置のＣＨ３に対応する。
【００５４】
次に、バスコントローラ１２が、ネットワークバス上において、ＬＡ＝３７に対する指令「Read Data」を発行すると想定されたい。第１のネットワーク装置１６は、バスコントローラが発行した指令がＣＨ１の開始プログラムの指令に合致することを認識して、ＣＨ１に対する代理指令（すなわち、ＬＡ＝３５、ＯＰ＝「Write Data」）を、第１のネットワーク装置の指令処理のパイプライン内に配置することによって応答する。示されるように、ＣＨ１が論理アドレス３５を有するために、論理アドレス３５が指令「Write Data」に対するアドレスとして追加されることを認識されたい。しかしながら、ＣＨ１に対する代理指令を指令処理のパイプライン内に配置する前に、第１のネットワーク装置は、指令処理のパイプライン内にネットワーク指令（すなわち、ＬＡ＝３７、ＯＰ＝「Read Data」）も配置する。図２のシナリオとは対照的に、第１のネットワーク装置内の第３のデータチャネル（ＣＨ３）は、ＣＨ３が論理アドレス３７を含むため、このネットワーク指令に応答する。
【００５５】
「Read Data」の指令は、指令／アドレス復号モジュール２４を介して等により、第１のネットワーク装置１６のＣＨ３（ＬＡ＝３７）に渡る。ＣＨ３は、受信すると、ネットワークバス上にデータを読出すことによって応答する。次に、論理アドレス３５に対する代理指令「Write Data」が、指令／アドレス復号モジュール２４によって等により第１のネットワーク装置のＣＨ１に渡されると、ＣＨ１は、ネットワークバス１４からデータを書込むことによって応答する。ＣＨ３がネットワークバス上にデータを読出すことによってネットワーク指令に応答したため、ＣＨ１がネットワークバスから読出すデータは、好ましくは、ＣＨ３によってネットワークバス上に読出されたものと同じデータである。したがって、第２のネットワーク装置１８のＣＨ３に対し、ネットワークバス上にデータを読出すように実質的に指令することにより、バスコントローラ１２によってさらに禁止されることなく、同じネットワーク装置内のＣＨ３とＣＨ１との間に通信が生じ得る。
【００５６】
次に図４を参照すると、代理動作に対する第３のシナリオが提供される。示されるように、第１のネットワーク装置１６のＣＨ１および第２のネットワーク装置１８のＣＨ１は両方とも、グループアドレス（ＧＡ）２にアドレス指定された、代理の開始プログラムの指令「Trigger」によって設定される。第１のネットワーク装置のＣＨ１に対して設定された代理指令は、指令「Read Data」を含み、第２のネットワーク装置のＣＨ１に対して設定された代理指令は、指令「Write Data」を含む。両方のネットワーク装置のＣＨ１が
グループアドレス２も含むことに注目されたい。したがって、両方のネットワーク装置のＣＨ１は、１つの指令（すなわち開始プログラムの指令）に応答して２つの指令を実行することができる。
【００５７】
図４に示されるように、動作時に、グループアドレス２に対する「Trigger」の指令が、バスコントローラ１２によってネットワークバス１４上に送信されると想定されたい。第１のネットワーク装置１６および第２のネットワーク装置１８の全チャネルがグループアドレス２に属するため、そのチャネルがセンサチャネルに関連している場合はデータ測定値を得ることによって、または、そのデータチャネルがアクチュエータに関連している場合は値を出力に移動することによって等により、各データチャネルはトリガ指令に応答する。ネットワーク装置が、それぞれの第１のチャネル（ＣＨ１）に対する開始プログラムの指令にその指令が合致することを検出すると、ネットワーク装置は、「Trigger」の指令の後であるが、それぞれの第１のチャネルに対し、それぞれの代理指令も渡す。この点において、第１のネットワーク装置のＣＨ１は、「Trigger」の指令を実行することに加え、ネットワークバス上にデータを読出すことによって、設定されたように「Read Data」の指令も実行する。同様に、第２のネットワーク装置のＣＨ１は「Trigger」の指令を実行し、また、「Write Data」の指令も実行する。図４に示されたシナリオの全体的な影響は、１つの「Trigger」の指令を発行することによって、第１のネットワーク装置のＣＨ１が「Trigger」および「Read Data」の指令を実行し、これにより、第１のネットワーク装置のＣＨ１はネットワークバス上にデータを読出し、そのデータは、第２のネットワーク装置のＣＨ１が、それ自身の「Trigger」の指令を実行した後にネットワークバスから書込んだデータである。
【００５８】
次に図５を参照すると、代理動作のさらに別のシナリオが示される。図示されるように、第１のネットワーク装置１６のＣＨ１、ならびに第２のネットワーク装置１８のＣＨ１、２および３は、すべてグループアドレス（ＧＡ）２に対する開始プログラムの指令である「Trigger」によって設定される。第１のネットワーク装置において、ＣＨ１に対する代理指令は、「Read Data」の指令を含み、代理制御コードは、６ワードのデータブロックを特定する。示されるように、ＣＨ１に送信される代理指令に対し、制御コードが追加される。しかしながら、ＣＨ１に関連する開始プログラムの指令および代理指令とともに示されていないが、開始プログラムの指令および代理指令とともに、代理制御コードが代理処理モジュール２２内のメモリまたはそれに関連するメモリに記憶されていることを認識されたい。第２のネットワーク装置において、ＣＨ１、２および３に対する代理指令の各々は、「Write Data」の指令を含む。ＣＨ１、２および３に対する代理制御コードの各々は、２ワードを特定し、ＣＨ１に対する制御コードは開始ワード１をさらに特定し、ＣＨ２に対する制御コードは開始ワード３をさらに特定し、ＣＨ３に対する制御コードは開始ワード５をさらに特定する。第１のネットワーク装置のＣＨ１に対する制御コードと同様に、第２のネットワーク装置のＣＨ１、２および３に関連する開始プログラムの指令および代理指令とともに示されていないが、それぞれのチャネルに対する開始プログラムの指令および代理指令とともに、代理制御コードが代理処理モジュール２２内のメモリまたはそれに関連するメモリに記憶される。
【００５９】
図５に示されるシナリオでは、バスコントローラ１２がネットワークバス１４を介して、グループアドレス２に対する「Trigger」の指令を送信すると想定されたい。以前の図４のシナリオにおけるように、第１のネットワーク装置１６および第２のネットワーク装置１８の全チャネルがグループアドレス２を含むため、全チャネルは、ネットワークバスから受信すると、「Trigger」の指令を実行する。加えて、第１のネットワーク装置は、グループアドレス２に対する「Trigger」の指令がＣＨ１の開始プログラムの指令に合致することを認識する。したがって、第１のネットワーク装置は、「Trigger」の指令をＣＨ１、２および３（グループアドレス２のメンバー）に渡した後に、代理指令である、６
ワードの「Read Data」のブロックをＣＨ１に渡す。それに応答して、第１のネットワーク装置のＣＨ１は、「Trigger」の指令を実行した後に、ネットワークバス上に６ワードのデータブロックを読出すことにより、代理指令に応答する。
【００６０】
同様に、第２のネットワーク装置１８は、ネットワークバス１４からの「Trigger」の指令を受信すると、グループアドレス２に対する「Trigger」の指令がＣＨ１、２および３に対する開始プログラムの指令に合致することを認識する。したがって、第２のネットワーク装置は、「Trigger」の指令をＣＨ１、２および３（グループアドレス２のメンバー）に渡した後に、代理指令をそれぞれのチャネルに渡す。したがって、第２のネットワーク装置は、ＣＨ１に対して、代理指令である「Write Data」、開始ワード１、２ワードのブロックを渡し、ＣＨ２に対して、代理指令である「Write Data」、開始ワード３、２ワードのブロックを渡し、ＣＨ３に対して、代理指令である「Write Data」、開始ワード５、２ワードのブロックを渡す。このような動作の効果は、Triggerの指令を発行することにより、第１のネットワーク装置１６のＣＨ１がトリガ指令を（第１のネットワーク装置のＣＨ２および３とともに）実行して、ネットワークバス上に６ワードのデータを読出すことである。次いで、第２のネットワーク装置のＣＨ１、２および３の各々がトリガ指令を実行し、その後、ネットワークバスから（第１のネットワーク装置のＣＨ１によって読出された６ワードのうちの）２ワードを書込む。しかしながら、開始ワードを適切にずらすことにより、第２のネットワーク装置のＣＨ１、２および３は、ＣＨ１が最初の２ワードを書込み、ＣＨ２が第３および第４のワードを書込み、ＣＨ３が最後の２ワードを書込む状態で、ネットワークバスからまとめて６ワードを書込む。
【００６１】
次に、図６を参照する。図６は、第１のネットワーク装置１６および第２のネットワーク装置１８の間の代理動作のためのさらに別のシナリオを示す。図５のシナリオと同様に、第１のネットワーク装置のＣＨ１、ならびに第２のネットワーク装置のＣＨ１、２および３は、すべて、グループアドレス（ＧＡ）２に対する開始プログラムの指令である「Trigger」によって設定される。また、図５のシナリオと同様に、第２のネットワーク装置において、ＣＨ１、２および３に対する代理指令の各々は、「Write Data」の指令を含む。第２のネットワーク装置のＣＨ１、２および３に対する代理制御コードの各々は、２ワードを特定し、ＣＨ１に対する制御コードは開始ワード１をさらに特定し、ＣＨ２に対する制御コードは開始ワード３をさらに特定し、ＣＨ３に対する制御コードは開始ワード５をさらに特定する。しかしながら、図５のシナリオとは対照的に、第１のネットワーク装置の各チャネルは、代理動作のために設定されており、各々は、グループアドレス２に対する開始プログラムの指令「Trigger」を含む。また、第１のネットワーク装置の各チャネルは、制御コードが２ワードを特定する状態で、代理指令の「Read Data」を含む。チャネルが、ネットワークバス上に次のデータを読出すことを可能にするために、第１のネットワーク装置のＣＨ２の制御コードは、ＣＨ１が「Read Data」の指令を実行した後に「Read Data」の指令が実行されるように、さらに特定する。同様に、第１のネットワーク装置のＣＨ３の制御コードは、ＣＨ２が「Read Data」の指令を実行した後に「Read Data」の指令が実行されるように、さらに特定する。図５のシナリオと同様に、図６の制御コードは、それぞれのチャネルに送信される代理指令に追加されることが示される。しかしながら、チャネルに関連する開始プログラムの指令および代理指令とともに示していないが、それぞれのチャネルの開始プログラムの指令および代理指令とともに、代理制御コードが代理処理モジュール２２内のメモリまたはそれに関連するメモリに記憶されていることを認識されたい。
【００６２】
図６に示されたシナリオでは、バスコントローラ１２がネットワークバス１４を介して、グループアドレス２に対する「Trigger」の指令を送信すると想定されたい。以前の図４および図５のシナリオにおけるように、第１のネットワーク装置１６および第２のネットワーク装置１８の全チャネルがグループアドレス２を含むため、全チャネルはネットワ
ークバスから受信すると、「Trigger」の指令を実行する。加えて、第１のネットワーク装置は、グループアドレス２に対する「Trigger」の指令がＣＨ１、２および３の開始プログラムの指令に合致することを認識する。したがって、第１のネットワーク装置は、「Trigger」の指令をＣＨ１、２および３（グループアドレス２のメンバー）に渡した後に、代理指令である「Read Data」の２ワードのブロックをＣＨ１に渡す。それに応答して、第１のネットワーク装置のＣＨ１は、「Trigger」の指令を実行した後に、ネットワークバス上に２ワードのデータブロックを読出すことによって代理指令に応答する。ＣＨ１が「Read Data」の指令を実行した後に、第１のネットワーク装置は、代理指令である「Read Data」の２ワードのブロックを、実行するためにＣＨ２に渡す。第１のネットワーク装置は、ＣＨ２によって「Read Data」の指令が実行されると、代理指令である「Read Data」の２ワードのブロックをＣＨ３に渡し、ＣＨ３は、ネットワークバス上に２ワードを読出すことによって応答する。
【００６３】
図５のシナリオと同様に、第２のネットワーク装置１８は、ネットワークバス１４から「Trigger」の指令を受信すると、グループアドレス２に対する「Trigger」の指令がＣＨ１、２および３に対する開始プログラムの指令に合致することを認識する。したがって、第２のネットワーク装置は、ＣＨ１、２および３（グループアドレス２のメンバー）に「Trigger」の指令を渡した後に、それぞれのチャネルに代理指令を渡す。したがって、第２のネットワーク装置は、ＣＨ１に対して、代理指令である「Write Data」、開始ワード１、２ワードのブロックを渡し、ＣＨ２に対して、代理指令である「Write Data」、開始ワード３、２ワードのブロックを渡し、ＣＨ３に対して、代理指令である「Write Data」、開始ワード５、２ワードのブロックを渡す。このような動作の効果は、トリガ指令を発行することにより、第１のネットワーク装置１６のＣＨ１、２および３がトリガ指令を実行し、その後、各々がネットワークバス上に２ワードのデータを読出すことである。次いで、第２のネットワーク装置のＣＨ１、２および３の各々がトリガ指令を実行し、その後、ネットワークバスから次々に２ワードを書込む。この態様において、第２のネットワーク装置のＣＨ１、２および３によってネットワークバスから書込まれたワードは、それぞれ第１のネットワーク装置のＣＨ１、２および３によってネットワークバス上に読出されたものと同じワードである。
【００６４】
図示したシナリオが、１つの第１のネットワーク装置１６および１つの第２のネットワーク装置１８を示しているが、ネットワークシステムが、この発明の精神および範囲から逸脱することなく、代理動作を行なうことのできる任意の数のネットワーク装置を含み得ることを理解されるべきである。たとえば、図５のシナリオは、各々が１つ以上のチャネルを含む、さらに２つの第２のネットワーク装置を含み得る。この点において、示された第２のネットワーク装置のＣＨ２および３の代理動作は、割込不能にされ得る。次いで、追加されたネットワーク装置の１つにおけるチャネルの１つは、本来設定されたＣＨ２と同様の代理動作のために設定され得、追加された他のネットワーク装置のチャネルの１つは、本来設定されたＣＨ３と同様の代理動作のために設定され得る。したがって、動作時に、第２のネットワーク装置において代理動作を実行する際に、第２の各ネットワーク装置のチャネルは、各々がそれぞれの開始ワードによって示されたブロックを書込む状態で、２ワードのデータブロックを書込むことができる。
【００６５】
１つ以上のデータチャネルが「Trigger」の開始プログラムの指令によって設定されている実施例に関し、特に入力されたデータの量がそれぞれのチャネルに対する代理制御コードにおいて設定されたデータの量に等しくなる場合、データチャネルによってネットワークバス上に読出されたデータが、「Trigger」の指令に応答してセンサに関連するデータチャネルによって入力されたデータを含み得ることを理解されるべきである。同様に、「Trigger」の指令に応答して、アクチュエータに関連するデータチャネルによって出力されたデータは、特に出力されたデータの量がそれぞれのチャネルに対する代理制御コー
ドにおいて設定されたデータの量に等しくなる場合、データチャネルによってネットワークバスから書込まれたデータを含み得る。しかしながら、好ましい実施例において、データチャネルは、先入れ先出し（ＦＩＦＯ）メモリを含むか、または、ＦＩＦＯメモリに関連する。この点において、ネットワークバス上に読出されるデータの量と、ネットワークバスから書込まれるデータの量とは、好ましくは、それぞれのデータチャネルのＦＩＦＯメモリに記憶されるデータを含む。したがって、センサに関連するチャネルによって入力されたデータの量は、その後、ネットワークバス上への後の読出のために、それぞれのデータチャネルのＦＩＦＯメモリに記憶される。同様に、アクチュエータに関連するデータチャネルによってネットワークバスから書込まれたデータの量は、その後、アクチュエータによる後の出力のために、それぞれのデータチャネルのＦＩＦＯメモリに記憶される。したがって、センサに関連するデータチャネルによって入力されて、その後、ネットワークバス上に読出されるデータと、ネットワークバスから書込まれて、その後、アクチュエータに関連するデータチャネルによって出力されるデータとは、時間決定性の態様で、ソースのそれぞれのデータチャネルに、および、ソースのそれぞれのデータチャネルから、循環され得る。
【００６６】
したがって、この発明のさまざまな実施例は、ネットワークシステムにおいてピア・トゥ・ピア通信を開始するためのシステム、ネットワーク装置および方法を提供する。この発明の実施例により、ネットワーク装置は、従来のシステムおよび方法よりも少ない数の動作でピア・トゥ・ピアの態様において通信することができ、したがって、従来のシステムおよび方法よりも完了に要する時間が短い。この点において、ネットワーク装置のデータチャネルは、従来のネットワークシステムのいくつかが必要としたように専用の配線を用いずに、共通のネットワークバスを介してピア・トゥ・ピア通信が可能である。加えて、この発明のさまざまな実施例のシステムおよび方法により、ネットワーク装置は、バスコントローラから禁止されずに通信を行なうことができる。
【００６７】
上述の説明および関連する図面に示された教示の恩恵を受ける、この発明が属する当該技術の当業者は、この発明の多くの変更例および他の実施例を思いつくであろう。したがって、この発明は、開示された特定の実施例に限定されず、変更例および他の実施例が前掲の請求項の範囲内に含まれるように意図されると理解されるべきである。この明細書では、特定の用語を用いているが、それらは限定のためではなく、一般的かつ記述的な意味でのみ用いられている。
【図面の簡単な説明】
【００６８】
【図１】この発明のシステムおよび方法が実現され得る、一般的なネットワークシステムのブロック図である。
【図２】この発明のシステムおよび方法のさまざまな実施例が実現され得るネットワークシステムにおける、２つのネットワーク装置の動作上の制御フローのブロック図である。
【図３】この発明のシステムおよび方法のさまざまな実施例が実現され得るネットワークシステムにおける、２つのネットワーク装置の動作上の制御フローのブロック図である。
【図４】この発明のシステムおよび方法のさまざまな実施例が実現され得るネットワークシステムにおける、２つのネットワーク装置の動作上の制御フローのブロック図である。
【図５】この発明のシステムおよび方法のさまざまな実施例が実現され得るネットワークシステムにおける、２つのネットワーク装置の動作上の制御フローのブロック図である。
【図６】この発明のシステムおよび方法のさまざまな実施例が実現され得るネットワークシステムにおける、２つのネットワーク装置の動作上の制御フローのブロック図である。
【符号の説明】
【００６９】
１０  ネットワークシステム、１２  バスコントローラ、１４  ネットワークバス、１６  ネットワーク装置、１８  ネットワーク装置、２２  代理処理モジュール、２３  比較器、２４  指令／アドレス復号、２５  ゲート。
【図１】
2004312716.tif 000003
【図２】
2004312716.tif 000004
【図３】
2004312716.tif 000005
【図４】
2004312716.tif 000006
【図５】
2004312716.tif 000007
【図６】
2004312716.tif 000008