(57)【特許請求の範囲】
【請求項１】
ＩＥＥＥ１３９４バスシステムのｉｓｏｃｈｒｏｎｏｕｓ通信において、ＩＥＥＥ１３９４バスに接続され、サイクル・マスタ機能とアイソクロナス・リソース・マネジャ機能とのうち、少なくともサイクル・マスタの機能を有し、サイクル・タイム・データを含むサイクル・スタート・パッケットを送信し、ノードＩＤが割り付けられたサイクル・マスタと、
上記ＩＥＥＥ１３９４バスに接続され、同一のｉｓｏｃｈｒｏｎｏｕｓチャネル番号の共有を希望し、それぞれ別にノードＩＤが割り付けられた複数ノードと、
上記ＩＥＥＥ１３９４バスに接続され、同一のｉｓｏｃｈｒｏｎｏｕｓチャネル番号と１サイクルで必要とする最大の帯域で帯域幅を取得し、その取得したｉｓｏｃｈｒｏｎｏｕｓチャネル番号を上記複数ノードに知らせるノードＩＤが割り付けられた代表者ノードと、
を備え、
上記サイクル・マスタは、ａｓｙｎｃｈｒｏｎｏｕｓ通信（サイクル・スタート・パケット）を用いてｉｓｏｃｈｒｏｎｏｕｓの資源を管理する機能を兼備する
ことを特徴とするネットワークシステム。
【請求項２】
上記ノードは、上記サイクル・スタート・パケットに含まれるサイクル・タイム・データのビット１２〜２４までの１３ビットのＣｙｃｌｅ  Ｃｏｕｎｔを抽出するサイクル・タイム・データ抽出部と、上記サイクル・タイム・データ抽出部で抽出された上記Ｃｙｃｌｅ  Ｃｏｕｎｔに基づき上記サイクル・スタート・パケットの発生する同一の１サイクル間で共有しようとする複数のノード中の１ノードのみがｉｓｏｃｈｒｏｎｏｕｓデータ送信するように複数ノード共有のデータ送信部に対して排他制御する排他制御処理部とを備えるサイクル・タイム・データ利用手段を含むことを特徴とする請求項１記載のネットワークシステム。
【請求項３】
上記Ｃｙｃｌｅ  Ｃｏｕｎｔは、上記サイクル・タイム・データのビット２５〜３１までの７ビットのｓｅｃｏｎｄ  Ｃｏｕｎｔに置換することを特徴とする請求項２記載のネットワークシステム。
【請求項４】
上記サイクル・タイム・データ利用手段は、上記同一のｉｓｏｃｈｒｏｎｏｕｓチャネル番号の共有を希望する上記複数のノードのそれぞれが上記サイクル・スタート・パケットに含まれるサイクル・タイム・データのビット１２〜２４までの１３ビットのＣｙｃｌｅ  Ｃｏｕｎｔの下位６ビットの値と自動的に割り振られる自動ノードＩＤ値が等しいタイミングのときに複数のノードに共有のチャネル番号を使用してｉｓｏｃｈｒｏｎｏｕｓデータ送信を行うことを特徴とする請求項２記載のネットワークシステム。
【請求項５】
上記サイクル・タイム・データ利用手段は、サイクル・タイム・データのビット１２〜２４までの１３ビットのＣｙｃｌｅ  Ｃｏｕｎｔの下位６ビットを抽出するサイクル・タイムの下位６ビット抽出部と、上記サイクル・タイムの下位６ビット抽出部で抽出された上記Ｃｙｃｌｅ  Ｃｏｕｎｔの下位６ビットの値と上記複数のノードにそれぞれ自動的に割り付けられた上記ノードＩＤの値とを比較してその両者の値が等しいタイミングのときに上記複数のノードにより共有されている同一のｉｓｏｃｈｒｏｎｏｕｓチャネル番号のｉｓｏｃｈｒｏｎｏｕｓ送信のトリガを出力する比較部とを備えることを特徴とする請求項２記載のネットワークシステム。
【請求項６】
上記サイクル・タイム・データ利用手段は、上記同一のｉｓｏｃｈｒｏｎｏｕｓチャネル番号の共有を希望する上記複数のノードのそれぞれが上記サイクル・スタート・パケットに含まれるサイクル・タイム・データのビット１２〜２４までの１３ビットのＣｙｃｌｅ  Ｃｏｕｎｔの値を接続ノード数で割ったときの余り値と自ノードのノードＩＤの値と等しいタイミングのときに上記複数のノードにより共有されている同一のｉｓｏｃｈｒｏｎｏｕｓチャネル番号を使用してｉｓｏｃｈｒｏｎｏｕｓデータ送信を行うことを特徴とする請求項２記載のネットワークシステム。
【請求項７】
上記サイクル・タイム・データ利用手段は、上記サイクル・タイム・データからサイクル・タイム・データのビット１２〜２４までの１３ビットのＣｙｃｌｅ  Ｃｏｕｎｔ値を抽出するサイクル・タイム抽出部と、上記サイクル・タイム抽出部で抽出されたＣｙｃｌｅ  Ｃｏｕｎｔ値を接続ノード数で割ったときの余り値を出力する演算部と、上記演算部で出力された上記余り値と自ノードＩＤ値との比較を行い、両者の値が等しいタイミングのときに複数ノードに共有されている同一のｉｓｏｃｈｒｏｎｏｕｓチャネル番号のｉｓｏｃｈｒｏｎｏｕｓデータ送信を行うトリガを出力する比較部とを備えることを特徴とする請求項２記載のネットワークシステム。
【請求項８】
上記サイクル・タイム・データ利用手段は、上記サイクル・タイム・データからサイクル・タイム・データのビット１２〜２４までの１３ビットのＣｙｃｌｅ  Ｃｏｕｎｔ値を抽出するサイクル・タイム抽出部と、ＩＥＥＥ１３９４規格で定められていない送信可能なタイミングを識別するＩＤ値と上記サイクル・タイム抽出部で抽出されたＣｙｃｌｅ  Ｃｏｕｎｔ値の下位６ビットの値とを比較し、両者の値が等しいタイミングのときに複数ノードに共有されている同一のｉｓｏｃｈｒｏｎｏｕｓチャネル番号のｉｓｏｃｈｒｏｎｏｕｓデータ送信のトリガを出力する比較部とを備えることを特徴とする請求項２記載のネットワークシステム。
【請求項９】
上記送信可能なタイミングを識別するＩＤ値は、ｉｓｏｃｈｒｏｎｏｕｓの資源の共有を行う上記複数のノードにそれぞれ割り付けられることを特徴とする請求項８記載のネットワークシステム。
【請求項１０】
上記ｉｓｏｃｈｒｏｎｏｕｓのチャネル番号の共有を行う上記複数のノードは、上記Ｃｙｃｌｅ  Ｃｏｕｎｔの下位６ビットの値と上記送信タイミングＩＤ値が等しいタイミングのときに共有チャネル番号を使用してｉｓｏｃｈｒｏｎｏｕｓ送信することを特徴とする請求項８記載のネットワークシステム。
【請求項１１】
上記サイクル・タイム・データ利用手段は、上記サイクル・タイム・データから抽出したサイクル・タイム・データのビット１２〜２４までの１３ビットのＣｙｃｌｅ  Ｃｏｕｎｔ値を互いに同じ値をもつ送信可能なタイミングの基本インタバール値で割ったときの余り値と上記ｉｓｏｃｈｒｏｎｏｕｓのチャネル番号の共有を行う上記複数のノードにＩＥＥＥ１３９４規格に定められていない互いに異なる値をもつ送信可能なタイミングを識別するための送信タイミングＩＤとが等しいタイミングのときに上記複数のノードが共有の同一のｉｓｏｃｈｒｏｎｏｕｓチャネル番号を使用してｉｓｏｃｈｒｏｎｏｕｓ送信することを特徴とする請求項２記載のネットワークシステム。
【請求項１２】
上記サイクル・タイム・データ利用手段は、上記サイクル・タイム・データから抽出したサイクル・タイム・データのビット１２〜２４までの１３ビットのＣｙｃｌｅ  Ｃｏｕｎｔ値を抽出するサイクル・タイム抽出部と、上記サイクル・タイム抽出部で抽出された上記Ｃｙｃｌｅ  Ｃｏｕｎｔ値を互いに同じ値をもつ送信可能なタイミングの基本インタバール値で割ったときの余り値を出力する演算部と、上記演算部で出力された上記余り値とＩＥＥＥ１３９４規格に定められていない互いに異なる値をもつ送信可能なタイミングを識別するための送信タイミングＩＤと比較して，その両者の値が等しいタイミングのときに上記複数のノードが共有する同一のｉｓｏｃｈｒｏｎｏｕｓチャネル番号を使用してｉｓｏｃｈｒｏｎｏｕｓ送信するためのトリガを出力する比較部とを備えることを特徴とする請求項２記載のネットワークシステム。
【請求項１３】
上記サイクル・タイム・データ利用手段は、上記サイクル・タイム・データから抽出したサイクル・タイム・データのビット１２〜２４までの１３ビットのＣｙｃｌｅ  Ｃｏｕｎｔ値を互いに同じ値をもつ送信可能なタイミングの基本インタバール値で割ったときの余り値と上記複数のノードにそれぞれ割り当てられた送信タイミングＩＤ値のいずれかとの値が一致したときのタイミング時に共有された同一のｉｓｏｃｈｒｏｎｏｕｓチャネル番号のｉｓｏｃｈｒｏｎｏｕｓ通信の送信する順番や間隔を任意に設定可能なように、トリガを出力することを特徴とする請求項２記載のネットワークシステム。
【請求項１４】
上記サイクル・タイム・データ利用手段は、上記サイクル・タイム・データから抽出したサイクル・タイム・データのビット１２〜２４までの１３ビットのＣｙｃｌｅ  Ｃｏｕｎｔ値を抽出するサイクル・タイム抽出部と、上記サイクル・タイム抽出部で抽出された上記Ｃｙｃｌｅ  Ｃｏｕｎｔ値を互いに同じ値をもつ送信可能なタイミングの基本インタバール値で割ったときの余り値を出力する演算部と、上記複数のノードにそれぞれに複数割り当てられた送信タイミングＩＤ値を入力して共有されたチャネルのｉｓｏｃｈｒｏｎｏｕｓ通信の送信する順番あるいは間隔を任意に設定可能なように、これらの送信タイミングＩＤ値を切り替えて出力するマルチプレクスと、上記演算部から出力される上記余り値と上記マルチプレクスから出力される上記送信タイミングＩＤ値とが一致するタイミング時に共有されたチャネルのｉｓｏｃｈｒｏｎｏｕｓ通信の送信する順番あるいは間隔を任意に設定可能なように、トリガを出力する比較部とを備えることを特徴とする請求項２記載のネットワークシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、IEEE１３９４インタフェースを用いて同一のisochronous（アイソクロナス：同期）チャネル番号を複数ノードで使用することができるようにしたネットワークシステムに関する。
【０００２】
【従来の技術】
IEEE１３９４バスのisochronous通信において、チャネル番号と帯域幅の取得に関しては、isochronousデータ送信を希望するすべてのノードは、Asynchronous（アシンクロナス：非同期）通信を用いてisochronousの資源を管理するノード｛以下、ＩＲＭ（Isochronous  Resource  Manager）という｝からチャネル番号と必要な帯域幅を取得する。
これは、次のことを意味する。すなわち、isochronousデータ送信を希望するノードは他のisochronousデータ送信を希望するノードとは異なるチャネル番号を取得していることと、各ノードは１２５μｓ間に占有してよい帯域幅を獲得したことになり、全ノードが取得できる帯域幅の合計は１２５μｓを超えることができない。
【０００３】
isochronous データ送信を希望する各ノードは、isochronousデータ送信間隔が１２５μｓよりもかなり遅い間隔で、かつ通信精度が１２５μsを必要としない場合でも、チャネル番号と自ノードの１サイクルに送信する最大の帯域幅を個別に取得しなければならず、有限数のチャネル番号と有限な帯域幅を有効に使用していなかった。
【０００４】
また、IEEE１３９４バスシステムの複数ノード宛てに同じデータを送信する場合については、従来、複数のノード宛てに同じデータを送信する場合にasynchronous  broadcast（非同期放送）通信を使用するのが一つの手段であるが、その方法では、送信したパケットを必要でないノードのトランザクション（transaction）処理まで実行させてしまう。
したがって、asynchronous  broadcast通信は極力送信しないことがよいとされており、各ノード宛てに別々にisochronous 通信を行っていた。
この各ノード宛てに個別にisochronous通信を行う方法では、送信先ノードの数が増えるごとに、処理時間がかかることになる。
【０００５】
図１１は、このようなIEEE１３９４バスシステムにおける従来の複数ノード宛てに同じデータを送信する場合におけるチャネル番号と帯域幅を有効に使用していない例を示している。
この図１１において、サイクル・スタート・パケット（Cycle  Start  Packet）ＣＰの１サイクルは１２５μｓであり、図１１中に矢印間で示しているが、この図１１ではスペースの都合上、その長さを異ならせて示している。
サイクル・スタート・パケットＣＰはこの矢印間隔ごとに、isochronous通信を行うネットワークに存在するサイクル・マスタ（Cycle  Master、この図１１では、サイクル・マスタとＩＲＭ同一のノードであるとして説明する）となるノードから送信される。
【０００６】
また、このネットワークに存在する複数のノードＢ、Ｃ、Ｄ（いずれも、図１１では図示されていない）が送信するデータ、すなわち、isochronous   packet（アイソクロナス  パケット）のデータＢｘ，Ｃｘ、Ｄｘにおけるxはその番号１，２，３…を示している。
この図１１では、上記ノードＢ、Ｃ、Ｄがisochronous通信を行っているときのデータの流れを示しているが、データＢｘ，Ｃｘ、Ｄｘは異なるチャネル番号を使用しており、合計３チャネルを各ノードＢ，Ｃ，ＤがＩＲＭより取得している。
また、確保した帯域幅はデータＢｘ，Ｃｘ，Ｄｘの合計帯域幅、すなわち、（Ｂｘ＋Ｃｘ＋Ｄｘ）である。
【０００７】
【発明が解決しようとする課題】
上記から明らかなように、IEEE１３９３バスシステムの従来のisochronous通信においては、isochronousデータ送信を希望するノードは、有限数のチャネル番号と有限な帯域幅を有効に使用していないという課題がある。
また、IEEE１３９４バスシステムの複数ノード宛てに同じデータを送信する場合に、送信するノードは送信先ノードの数が増えるごとに、処理時間がかかってしまうという課題もある。
【０００８】
この発明は、上記従来の課題を解決するためになされたもので、複数ノードでisochronous の資源の共有を可能として、isochronousの資源を有効活用が可能になるとともに、複数ノード宛てに同じデータを送信する場合に、asynchronous  broadcast通信や、複数回数のasynchronous通信を使用することなく、isochronous通信で行うことが容易に可能となるネットワークシステムを提供することを目的とする。
【０００９】
【課題を解決するための手段】
上記目的を達成するために、この発明のネットワークシステムは、ＩＥＥＥ１３９４バスシステムのｉｓｏｃｈｒｏｎｏｕｓ通信において、ＩＥＥＥ１３９４バスに接続され、少なくともサイクル・マスタの機能を有し、サイクル・タイム・データを含むサイクル・スタート・パッケットを送信し、ノードＩＤが割り付けられたサイクル・マスタと、上記ＩＥＥＥ１３９４バスに接続され、同一のｉｓｏｃｈｒｏｎｏｕｓチャネル番号の共有を希望し、それぞれ別にノードＩＤが割り付けられた複数ノードと、上記ＩＥＥＥ１３９４バスに接続され、同一のｉｓｏｃｈｒｏｎｏｕｓチャネル番号と１サイクルで必要とする最大の帯域で帯域幅を取得し、その取得したｉｓｏｃｈｒｏｎｏｕｓチャネル番号を上記複数ノードに知らせるノードＩＤが割り付けられた代表者ノードとを備えると共に、サイクル・マスタは、ａｓｙｎｃｈｒｏｎｏｕｓ通信（サイクル・スタート・パケット）を用いてｉｓｏｃｈｒｏｎｏｕｓの資源を管理する機能を兼備することを特徴とする。
そのため、ＩＥＥＥ１３９４規格のバスシステムのｉｓｏｃｈｒｏｎｏｕｓ通信において、サイクル・マスタが発信するサイクル・スタート・パケットに含まれるサイクル・タイム・データの情報を利用して同一のｉｓｏｃｈｒｏｎｏｕｓチャネル番号を複数のノードで共有するようにしたので、複数のノードでｉｓｏｃｈｒｏｎｏｕｓ通信のチャネル番号や帯域幅などの資源を供することが可能になり、ｉｓｏｃｈｒｏｎｏｕｓの資源を有効に活用することができる。
また、複数ノード宛てに同じデータを送信する場合に、ａｓｙｎｃｈｒｏｎｏｕｓ  ｂｒｏａｄｃａｓｔ通信や複数回のａｓｙｎｃｈｒｏｎｏｕｓ通信を使用せずに、ｉｓｏｃｈｒｏｎｏｕｓ通信で行うことが容易にできる。
【００１０】
【発明の実施の形態】
次に、この発明によるネットワークシステムの実施の形態について図面に基づき説明する。
図１は、この発明の第１実施の形態の構成を示すブロック図であり、isochronous通信を行うことが可能な機器であるノードＡ，Ｂ，Ｃ，Ｄ，Ｅのネットワークにおける接続例を示しており、これらのノードＡ，Ｂ，Ｃ，Ｄ，ＥはIEEE１３９３規格のバスシステムに接続されている。
ノードＡはノードＢ，Ｃ，Ｄに接続され、ノードＤとノードＥが接続されている場合を示している。各ノードＡ〜Ｅには、個別に「０」〜「ノード数−１」の値のノードＩＤが割り付けられている。
ネットワーク中には、これらのノードＡ〜Ｅのうち、サイクル・マスタとして有効なノードと、IRMとして有効なノードがそれぞれ一つずつ存在する。
【００１１】
サイクル・マスタとＩＲＭは同一ノードの場合もある（IEEE１３９４規格）。そこで、この第１実施の形態では、説明の都合上、ノードＡをサイクル・マスタとして機能が有効であるとともに、ＩＲＭとしての機能も有効であるとして説明を進める。つまり、ノードＡはサイクル・マスタとＩＲＭの機能を兼ねているものとする。
また、複数のノードＢ〜ＥのうちのノードＢをこれらを代表する代表ノードとすることにする。
【００１２】
図３は、サイクル・スタート・パケット（Cycle  Start  Packet）のデータ・フォーマットを示している。サイクル・マスタが１２５μｓ間隔ごとにbroadcastで送信するパケットであり、各ノードＢ〜Ｅが isochronous通信を送信するトリガとなる。
また、この図３における「destination ID」は、送信先のノードＩＤ（FFFFh）であり、「ｔ１」はtransaction label（00b）であり、「ｒｔ」はretry code（00b）であり、「source ＩＤ」は送信元のノードＩＤ（Cycle  MasterのノードＩＤ）であり、「destination offset」はサイクル・マスタの標準アドレスに設定であり、「header CRC」はパケットのCRCである。
【００１３】
図２は、この発明による同一のisochronousチャネル番号を複数のノード（この第１実施の形態では、ノードＢ〜Ｅに該当）で共有することにより、チャネル番号と帯域幅を有効に使用し得る例を示している。
この図２においても、上記図１１と同様に、スペースの都合上サイクル・スタート・パケットＣＰの発生間隔長さが異なって示されている。
図２に示すノードＢ〜ＤのデータＢｘ，Ｃｘ，Ｄｘ（xは図１１の場合と同様に、データ番号を示している）は同一のisochronousチャネル番号を共有しており、1チャネル分を取得している。
また、帯域幅はノードＢ〜ＤのデータＢｘ，Ｃｘ，Ｄｘの中で１番多い帯域幅分だけ取得するようにしている。
【００１４】
次に、この第１実施の形態について具体的に説明する。同一のisochronousチャネル番号の共有を希望する複数のノードＢ，Ｃ，Ｄのうちの代表者であるノードＢはasynchronous通信を用いてＩＲＭ（ノードＡ）から１つのチャネル番号を１サイクルで必要とする最大の帯域で帯域幅を取得する。
この帯域幅は、同一のisochronousチャネル番号の共有を希望するノード中で１番多くを必要とする帯域幅である。
また、複数ノードの代表者であるノードＢは、この取得したチャネル番号を複数のノードＢ，Ｃ，Ｄに知らせる。
【００１５】
上記の同一のisochronousチャネル番号の共有を希望する復数のノードＢ，Ｃ，Ｄやその代表者の決め方、最大の帯域幅の決定方法、取得したチャネルを知らせる方法については、asynchronous通信を用いたり、システムで固定であったり、どのような方法でもよい。
また、どこのノードがサイクル・マスタやＩＲＭの機能が有効になっていてもよい。
【００１６】
各ノードＢ，Ｃ，Ｄはサイクル・マスタであるノードＡが送信するサイクル・スタート・パケットＣＰを受信し、サイクル・スタート・パケットＣＰに含まれる図４に示すサイクル・タイム・データを抽出する。
図５は各ノードＢ，Ｃ，Ｄの内部構成を示すブロック図であり、たとえば、代表者であるノードＢを例にして説明すると、ノードＢがサイクル・スタート・パケットＣＰを受信すると、データ・パケット抽出部１でデータ・パケットを抽出して、その抽出したデータ・パケットをデータ受信処理部３に転送する。
データ受信処理部３は、たとえば、データ・パケットから周波数変換して、復調部で復調して音声信号に複号する音声処理を行って、音声をスピーカなどから出力するようなデータ受信処理を行う。
【００１７】
また、ノードＢでサイクル・スタート・パケットＣＰが入力することにより、サイクル・スタート・パケット抽出部２でこのサイクル・スタート・パケットＣＰを抽出する。
この抽出したサイクル・スタート・パケットＣＰをサイクル・タイム・データ利用手段８のサイクル・タイム・データ抽出部４と通常のisochronousデータ送信部５に送出する。
サイクル・タイム・データ抽出部４はこのサイクル・スタート・パケットＣＰに含まれるサイクル・タイム・データを抽出し、サイクル・タイム・データ利用手段８の排他制御処理部６に出力する。
排他制御処理部６は、このサイクル・タイム・データによりサイクル・タイム・データ利用手段８の共有のisochronousデータ送信部７に対して排他的に共有のisochronousデータ送信を行わせる。
【００１８】
また、サイクル・スタート・パケット抽出部２で抽出されたサイクル・タイム・データを通常のisochronousデータ送信部５に出力することにより、通常のisochronousデータ送信部５は通常のisochronousデータの送信を行う。
このように、各ノードＢ，Ｃ，Ｄはサイクル・マスタであるノードＡが送信するサイクル・スタート・パケットを受信し、サイクル・スタート・パケットに含まれている上記図４で示したサイクル・タイム・データを抽出し、このサイクル・タイム・データを利用することにより、各ノードＡ，Ｂ，Ｃ，Ｄ中の１ノードのみがisochronousデータ送信するような排他制御が可能になる。
【００１９】
ここで、サイクル・タイム・データの利用方法についての具体例について説明する。各ノードＢ，Ｃ，Ｄは、図４に示すサイクル・タイム・データのビット１２〜２４までの１３ビット（以下、Cycle Countという）を抽出する。
Cycle Countはサイクル・スタート・パケット送信ごとに１つずつ増加していくカウンタである。
【００２０】
このCycle Countを利用して以下に述べる（１）〜（５）項のいずれかの処理をすることにより、サイクル・スタート・パケットＣＰの発生する同一の1サイクル間では、isochronousデータ送信の共有を行うとするノードＢ，Ｃ，Ｄ中の１ノードのみが、isochronousデータ送信するような排他制御が実現できる。
また、Cycle Countの代わりに、図４で示したサイクル・タイム・データのビット２５〜３１の７ビット（以下、Second Countという）を使用してもよい。
ただし、このSecond Countは、１Secごとに１つずつ増加していくカウンタである。
【００２１】
（１）．Cycle Countの値と自ノードＩＤを用いた排他制御を実現させる方法（図６の場合）。
Isochronousデータ送信の共有を行う各ノードＢ，Ｃ，Ｄは、Cycle Countの下位６ビットの値と自動的に割り振られる自ノードＩＤ値が等しいタイミングのときに、共有のチャネル番号を使用してisochronousデータ送信する。
これにより、各ノードＢ，Ｃ，Ｄは、（６４＊１２５μｓ）に１回の間隔で送信することが可能になる。
このようなCycle Countの値と自ノードＩＤを用いた排他制御を行う場合について、図６によりさらに詳述すると、この図６は各ノードＢ，Ｃ，Ｄにおけるサイクル・タイム・データ利用手段の構成を示すブロック図であり、上記図５で示したサイクル・タイム・データ利用手段８に対応する部分である。
【００２２】
この図６において、同一のisochronousチャンネル番号の共有を行う各ノードＢ，Ｃ，Ｄは図５で述べたように、サイクル・タイム・データ抽出部でサイクル・スタート・パケットから抽出したサイクル・タイム・データをサイクル・タイムの下位６ビット検出部９で検出して比較部１０に送出する。
この比較部１０には、各ノードＢ，Ｃ，Ｄに自動的に割り振られているノードＩＤ値１１も入力されている。
したがって、比較部１０は、Cycle Countの下位６ビットとこのノードＩＤ値とを比較して、Cycle Countの下位６ビットとノードＩＤ値が等しいタイミングのときに共有されているisochronousデータ送信のトリガ信号１２を出力することにより、isochronousデータ送信を行う。
【００２３】
（２）．Cycle Countの値と自ノードＩＤとノードの接続数を用いて実現させる方法（図７）。
同一のIsochronousチャネル番号の共有を行う各ノードＢ、Ｃ、Ｄは、Cycle Countの値を接続ノード数で割ったときの余り値と自ノードＩＤ値が等しいタイミングのときに、共有のチャネル番号を使用してisochronousデータ送信する。
これにより、各ノードＢ、Ｃ、Ｄは、｛（６４％接続ノード数）＊１２５μｓ｝に１回の間隔で送信することが可能になる。
なお、ここで「％」は乗余演算子である。
【００２４】
ここで、図７を参照して、Cycle Countの値と自ノードＩＤとノードの接続数を用いて共有されている同一のisochronousチャネル番号でisochronousデータ送信を実現させる方法について具体的に説明する。
図７において、同一のisochronousチャネル番号でisochronousデータ送信の共有を行う各ノードＢ，Ｃ，Ｄは図５で述べたように、サイクル・タイム・データ抽出部でサイクル・スタート・パケットから抽出したサイクル・タイム・データをサイクル・タイム・データ利用手段８のサイクル・タイム抽出部１３に入力することにより、Cycle Countの値を抽出して演算部１４に出力する。
【００２５】
演算部１４には、接続ノード数１５も入力されている。これにより、演算部１４はCycle Countの値を接続ノード数１５で割算を行い、その演算を行った結果の余り値を比較部１０に出力する。
比較部１０には、自ノードＩＤ値１１も入力される。したがって、比較部１０は、余り値と自ノードＩＤ値１１との比較を行い、余り値と自ノードＩＤ値１１との等しいタイミングのときに、同一のisochronousチャネル番号が共有されているisochronousデータ送信のトリガ１２を出力して同一のisochronousチャネル番号を使用してisochronousデータ送信する。
【００２６】
（３）．上記（１）項で使用した自ノードＩＤの代わりに、IEEE１３９４規格で定められていない「送信可能なタイミングを識別するＩＤ」を用いて実現させる方法（図８）。
同一のisochronousチャネル番号を共有して、isochronousデータ送信を行う各ノードＢ，Ｃ，Ｄに、互いに異なる値を持つ送信可能なタイミングを識別するための送信タイミングＩＤ（以下、送信タイミングＩＤという）を割り付ける。
なお、この送信タイミングＩＤの割り付け方法は、asynchronous通信を使用したり、ＲＯＭやハードウェア、ソフトウェアなどでノード固有に設定など、どのような方法でもよい。
共有を行う各ノードＡ，Ｂ，Ｃ，Ｄは、Cycle Countの下位６ビットの値と送信タイミングＩＤ値が等しいタイミングのときに、共有のチャネル番号を使用して、isochronousデータ送信する。
【００２７】
ここで、図８を参照して送信可能なタイミングを識別するＩＤを用いてisochronousデータ送信を実現させる方法について具体的に説明する。
図８において、同一のisochronous チャネル番号のisochronousデータ送信の共有を行う各ノードＢ，Ｃ，Ｄは図５で述べたように、サイクル・タイム・データ抽出部でサイクル・スタート・パケットから抽出したサイクル・タイム・データをサイクル・タイム・データ利用手段８のサイクル・タイム抽出部１３に入力することにより、Cycle Countの下位６ビットの値を抽出して比較部１０に出力する。
【００２８】
この比較部１０には、IEEE１３９４規格で定められていない送信可能なタイミングを識別するための送信タイミング値ＩＤ１６も入力される。
比較部１０はCycle Countの下位６ビットの値と、送信タイミングＩＤ値１６との比較を行い、Cycle Countの下位６ビットの値と、送信タイミングＩＤ値１６が等しいタイミングのときに、同一のisochronouチャネル番号が共有されているisochronousデータ送信のトリガ１２を出力して共有のチャネル番号を使用してisochronousデータ送信する。
【００２９】
（４）．上記（２）項で使用した自ノードIDと接続機器数（接続ノード数）の代わりに、IEEE１３９４規格で定められていない「送信可能なタイミングを識別するＩＤ」と「送信可能なタイミングの基本インターバルを既定する値」を用いて実現させる方法（図９）。
共有を行う各ノードＢ，Ｃ，Ｄに互いに異なる値を持つ送信可能なタイミングを識別するための送信タイミングＩＤ（以下、送信タイミングＩＤという）と、互いに同じ値を持つ送信可能なタイミングの基本インターバルを規定する値（以下、送信タイミングインターバル値という）を設定する。
【００３０】
なお、「送信タイミングＩＤ」の割り付けや、「送信タイミングインタバール値」の設定方法はasynchronous通信を使用したり、ＲＯＭやハードウェア、ソフトウェアなどでノード固有に設定など、どのような方法でもよい。
共有を行う各ノードＡ，Ｂ，Ｃ，Ｄは、Cycle Countの値を「送信タイミングインタバール値」で割ったときの余り値と、「送信タイミングＩＤ」値が等しいタイミングのときに同一のisochronousチャネル番号を使用してisochronousデータ送信する。
【００３１】
ここで、図９を参照してIEEE１３９４規格で定められていない「送信可能なタイミングを識別するＩＤ」と「送信可能なタイミングの基本インターバルを既定する値」を用いて同一のisochronousチャネル番号が共有されているisochronousデータ送信を実現させる方法についてより具体的に説明する。
この図９において、同一のisochronousチャネル番号を共有しているisochronousデータ送信の共有を行う各ノードＢ，Ｃ，Ｄは図５で述べたように、サイクル・タイム・データ抽出部でサイクル・スタート・パケットから抽出したサイクル・タイム・データをサイクル・タイム・データ利用手段８のサイクル・タイム抽出部１３に入力することにより、Cycle Countの値を抽出して演算部１４に出力する。
【００３２】
この演算部１４には、送信タイミングインターバル値１７も入力される。演算部１４はCycle Countの値を送信タイミングインターバル値１７で割算して、その割算を行った結果得られる余り値を比較部１０に出力する。
比較部１０には、互いに異なる値を持つ送信可能なタイミングを識別するための送信タイミングＩＤ１６も入力される。
これにより、比較部１０は、演算部１４からの余り値と送信タイミングＩＤ１６との比較を行い、余り値と送信タイミングＩＤ１６とが等しいタイミングのときに共有されているisochronousデータ送信のトリガ１２を出力し、共有のチャネル番号を使用してisochronousデータ送信を行う。
【００３３】
（５）．上記（４）の方法を用いて、１つのノードに「送信タイミングＩＤ」を複数割り当てることにより、共有されたチャネルのisochronous通信の送信する順番や間隔を任意に設定することが可能になる方法（図１０）。
これについて、図１０を参照してより具体的に説明する。図１０において、同一のisochronousチャネル番号のisochronousデータ送信の共有を行う各ノードＢ，Ｃ，Ｄは図５で述べたように、サイクル・タイム・データ抽出部でサイクル・スタート・パケットから抽出したサイクル・タイム・データをサイクル・タイム・データ利用手段８のサイクル・タイム抽出部１３に入力することにより、Cycle Countの値を抽出して演算部１４に出力する。
【００３４】
演算部１４には、送信タイミングインターバル値１７も入力される。演算部１４はCycle Countの値を送信タイミングインターバル値１７で割算して、その割算を行った結果得られる余り値を比較部１０に出力する。
一方、各ノードＢ，Ｃ，Ｄのそれぞれに複数割り当てられた送信タイミングＩＤ１値１６ａ，１６ｂ，…送信タイミングＩＤｎ値１６ｎがマルチプレクス１８に入力されるようにしている。
このマルチプレクス１８は複数の送信タイミングＩＤ１値１６ａ，１６ｂ，…送信タイミングＩＤｎ値１６ｎを入力することにより、共有されたチャネルのisochronous通信の送信する順番や間隔を任意に設定可能なように、これらの送信タイミングＩＤ１値１６ａ，１６ｂ，…送信タイミングＩＤｎ値１６ｎの入力を順次、あるいは任意に切り替えて入力し、比較部１０に出力する。
【００３５】
比較部１０はマルチプレクス１８で切り替えて入力された送信タイミングＩＤ１値１６ａ，送信タイミングＩＤ２値１６ｂ，…送信タイミングＩＤｎ値１６ｎのいずれかと、演算部１４から入力された余り値との比較を行う。
この比較の結果、余り値とマルチプレクス１８で切替え選択された送信タイミングＩＤ１値１６ａ，送信タイミングＩＤ２値１６ｂ，…送信タイミングＩＤｎ値１６ｎのいずれかとの値が等しいタイミングのときに、共有されるisochronousデータ送信のトリガ１２を出力することにより、共有されたチャネルのisochronous通信の送信する順番や間隔を任意に設定することが可能になる。
【００３６】
【発明の効果】
以上のように、この発明によれば、IEEE１３９４規格のバスシステムのisochronous 通信において、サイクル・マスタが発信するサイクル・スタート・パケットに含まれるサイクル・タイム・データの情報を利用して同一のisochronousチャネル番号を複数のノードで共有するようにしたので、複数ノードでisochronous通信のチャネル番号や帯域幅などの資源を供することが可能になり、isochronouの資源を有効に活用することができる。
また、複数ノード宛てに同じデータを送信する場合に、asynchronous broadcast通信や複数回のasynchronous通信を使用せずに，isochronous 通信で行うことが容易にできるという効果を奏する。
【図面の簡単な説明】
【図１】この発明によるネットワークシステムの第１実施の形態の構成を示すブロック図である。
【図２】この発明によるネットワークシステムの第１実施の形態に適用される同一のisochronousチャネル番号を複数ノードで共有することによりチャネル番号と帯域幅を有効に使用して複数ノードがisochronous通信を行っているときのデータの流れを示す説明図である。
【図３】この発明によるネットワークシステムの第１実施の形態に適用されるサイクル・スタート・パケットのデータ・フォーマットを示す説明図である。
【図４】この発明によるネットワークシステムの第１実施の形態に適用されるサイクル・スタート・パケットに含まれるサイクル・タイム・データのフォーマットを示す説明図である。
【図５】この発明によるネットワークシステムの第１実施の形態に適用されるサイクル・マスタが送信するサイクル・スタート・パケットに含まれるサイクル・タイム・データ値を利用して１ノードのみがisochronousデータ送信をするように排他制御を可能にする場合の排他制御処理部分の構成を示すブロック図である。
【図６】この発明によるネットワークシステムの第１実施の形態に適用されるサイクル・タイム・データを利用して１ノードのみがisochronousデータ送信をするように排他制御を可能にする場合のサイクル・タイム・データ利用手段の構成を示すブロック図である。
【図７】この発明によるネットワークシステムの第１実施の形態に適用されるノードIＩＤと接続ノード数を利用して１ノードのみがisochronousデータ送信する場合のサイクル・タイム・データ利用手段の構成を示すブロック図である。
【図８】この発明によるネットワークシステムの第１実施の形態に適用される送信タイミングＩＤを用いた１ノードのみがisochronousデータ送信する場合のサイクル・タイム・データ利用手段の構成を示すブロック図である。
【図９】この発明によるネットワークシステムの第１実施の形態に適用される送信タイミングＩＤと送信タイミングインターバル値を用いて１ノードのみがisochronousデータ送信する場合のサイクル・タイム・データ利用手段の構成を示すブロック図である。
【図１０】この発明によるネットワークシステムの第１実施の形態に適用され複数の送信タイミングＩＤ値を用いて１ノードのみがisochronousデータ送信する場合のサイクル・タイム・データ利用手段の構成を示すブロック図である。
【図１１】従来の通信ネットワークにおける複数のノードがisochronous通信を行っている場合のチャネル番号と帯域幅を有効に使用していない場合のデータの流れを示す説明図である。
【符号の説明】
Ａ〜Ｅ……ノード、１……データパケット抽出部、２……サイクル・スタート・パケット、３……データ受信処理部、４……サイクル・タイム・データ、５……通常のisochronousデータ送信部、６……排他制御処理部、７……共有のisochronousデータ送信部、８……サイクル・タイム・データ利用手段、９……サイクル・タイムの下位６ビット抽出部、１０……比較部、１１……ノードＩＤ値、１２……共有されているisochronousデータ送信のトリガ，１３……サイクル・タイム抽出部、１４……演算部、１５……接続ノード数、１６……送信タイミングＩＤ値、１６ａ〜１６ｎ……送信タイミングＩＤ１値〜送信タイミングＩＤｎ値、１７……送信タイミング・インターバル値、１８……マルチプレクス。
【図１】
0004143881.tif 000002
【図２】
0004143881.tif 000003
【図３】
0004143881.tif 000004
【図４】
0004143881.tif 000005
【図５】
0004143881.tif 000006
【図６】
0004143881.tif 000007
【図７】
0004143881.tif 000008
【図８】
0004143881.tif 000009
【図９】
0004143881.tif 000010
【図１０】
0004143881.tif 000011
【図１１】
0004143881.tif 000012