JP4143881B2 - Network system - Google Patents
Network system Download PDFInfo
- Publication number
- JP4143881B2 JP4143881B2 JP06196099A JP6196099A JP4143881B2 JP 4143881 B2 JP4143881 B2 JP 4143881B2 JP 06196099 A JP06196099 A JP 06196099A JP 6196099 A JP6196099 A JP 6196099A JP 4143881 B2 JP4143881 B2 JP 4143881B2
- Authority
- JP
- Japan
- Prior art keywords
- cycle
- cycle time
- value
- isochronous
- time data
- 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
Links
Images
Landscapes
- Information Transfer Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
- Communication Control (AREA)
Description
【0001】
【発明の属する技術分野】
この発明は、IEEE1394インタフェースを用いて同一のisochronous(アイソクロナス:同期)チャネル番号を複数ノードで使用することができるようにしたネットワークシステムに関する。
【0002】
【従来の技術】
IEEE1394バスのisochronous通信において、チャネル番号と帯域幅の取得に関しては、isochronousデータ送信を希望するすべてのノードは、Asynchronous(アシンクロナス:非同期)通信を用いてisochronousの資源を管理するノード{以下、IRM(Isochronous Resource Manager)という}からチャネル番号と必要な帯域幅を取得する。
これは、次のことを意味する。すなわち、isochronousデータ送信を希望するノードは他のisochronousデータ送信を希望するノードとは異なるチャネル番号を取得していることと、各ノードは125μs間に占有してよい帯域幅を獲得したことになり、全ノードが取得できる帯域幅の合計は125μsを超えることができない。
【0003】
isochronous データ送信を希望する各ノードは、isochronousデータ送信間隔が125μsよりもかなり遅い間隔で、かつ通信精度が125μsを必要としない場合でも、チャネル番号と自ノードの1サイクルに送信する最大の帯域幅を個別に取得しなければならず、有限数のチャネル番号と有限な帯域幅を有効に使用していなかった。
【0004】
また、IEEE1394バスシステムの複数ノード宛てに同じデータを送信する場合については、従来、複数のノード宛てに同じデータを送信する場合にasynchronous broadcast(非同期放送)通信を使用するのが一つの手段であるが、その方法では、送信したパケットを必要でないノードのトランザクション(transaction)処理まで実行させてしまう。
したがって、asynchronous broadcast通信は極力送信しないことがよいとされており、各ノード宛てに別々にisochronous 通信を行っていた。
この各ノード宛てに個別にisochronous通信を行う方法では、送信先ノードの数が増えるごとに、処理時間がかかることになる。
【0005】
図11は、このようなIEEE1394バスシステムにおける従来の複数ノード宛てに同じデータを送信する場合におけるチャネル番号と帯域幅を有効に使用していない例を示している。
この図11において、サイクル・スタート・パケット(Cycle Start Packet)CPの1サイクルは125μsであり、図11中に矢印間で示しているが、この図11ではスペースの都合上、その長さを異ならせて示している。
サイクル・スタート・パケットCPはこの矢印間隔ごとに、isochronous通信を行うネットワークに存在するサイクル・マスタ(Cycle Master、この図11では、サイクル・マスタとIRM同一のノードであるとして説明する)となるノードから送信される。
【0006】
また、このネットワークに存在する複数のノードB、C、D(いずれも、図11では図示されていない)が送信するデータ、すなわち、isochronous packet(アイソクロナス パケット)のデータBx,Cx、Dxにおけるxはその番号1,2,3…を示している。
この図11では、上記ノードB、C、Dがisochronous通信を行っているときのデータの流れを示しているが、データBx,Cx、Dxは異なるチャネル番号を使用しており、合計3チャネルを各ノードB,C,DがIRMより取得している。
また、確保した帯域幅はデータBx,Cx,Dxの合計帯域幅、すなわち、(Bx+Cx+Dx)である。
【0007】
【発明が解決しようとする課題】
上記から明らかなように、IEEE1393バスシステムの従来のisochronous通信においては、isochronousデータ送信を希望するノードは、有限数のチャネル番号と有限な帯域幅を有効に使用していないという課題がある。
また、IEEE1394バスシステムの複数ノード宛てに同じデータを送信する場合に、送信するノードは送信先ノードの数が増えるごとに、処理時間がかかってしまうという課題もある。
【0008】
この発明は、上記従来の課題を解決するためになされたもので、複数ノードでisochronous の資源の共有を可能として、isochronousの資源を有効活用が可能になるとともに、複数ノード宛てに同じデータを送信する場合に、asynchronous broadcast通信や、複数回数のasynchronous通信を使用することなく、isochronous通信で行うことが容易に可能となるネットワークシステムを提供することを目的とする。
【0009】
【課題を解決するための手段】
上記目的を達成するために、この発明のネットワークシステムは、IEEE1394バスシステムのisochronous通信において、IEEE1394バスに接続され、少なくともサイクル・マスタの機能を有し、サイクル・タイム・データを含むサイクル・スタート・パッケットを送信し、ノードIDが割り付けられたサイクル・マスタと、上記IEEE1394バスに接続され、同一のisochronousチャネル番号の共有を希望し、それぞれ別にノードIDが割り付けられた複数ノードと、上記IEEE1394バスに接続され、同一のisochronousチャネル番号と1サイクルで必要とする最大の帯域で帯域幅を取得し、その取得したisochronousチャネル番号を上記複数ノードに知らせるノードIDが割り付けられた代表者ノードとを備えると共に、サイクル・マスタは、asynchronous通信(サイクル・スタート・パケット)を用いてisochronousの資源を管理する機能を兼備することを特徴とする。
そのため、IEEE1394規格のバスシステムのisochronous通信において、サイクル・マスタが発信するサイクル・スタート・パケットに含まれるサイクル・タイム・データの情報を利用して同一のisochronousチャネル番号を複数のノードで共有するようにしたので、複数のノードでisochronous通信のチャネル番号や帯域幅などの資源を供することが可能になり、isochronousの資源を有効に活用することができる。
また、複数ノード宛てに同じデータを送信する場合に、asynchronous broadcast通信や複数回のasynchronous通信を使用せずに、isochronous通信で行うことが容易にできる。
【0010】
【発明の実施の形態】
次に、この発明によるネットワークシステムの実施の形態について図面に基づき説明する。
図1は、この発明の第1実施の形態の構成を示すブロック図であり、isochronous通信を行うことが可能な機器であるノードA,B,C,D,Eのネットワークにおける接続例を示しており、これらのノードA,B,C,D,EはIEEE1393規格のバスシステムに接続されている。
ノードAはノードB,C,Dに接続され、ノードDとノードEが接続されている場合を示している。各ノードA〜Eには、個別に「0」〜「ノード数−1」の値のノードIDが割り付けられている。
ネットワーク中には、これらのノードA〜Eのうち、サイクル・マスタとして有効なノードと、IRMとして有効なノードがそれぞれ一つずつ存在する。
【0011】
サイクル・マスタとIRMは同一ノードの場合もある(IEEE1394規格)。そこで、この第1実施の形態では、説明の都合上、ノードAをサイクル・マスタとして機能が有効であるとともに、IRMとしての機能も有効であるとして説明を進める。つまり、ノードAはサイクル・マスタとIRMの機能を兼ねているものとする。
また、複数のノードB〜EのうちのノードBをこれらを代表する代表ノードとすることにする。
【0012】
図3は、サイクル・スタート・パケット(Cycle Start Packet)のデータ・フォーマットを示している。サイクル・マスタが125μs間隔ごとにbroadcastで送信するパケットであり、各ノードB〜Eが isochronous通信を送信するトリガとなる。
また、この図3における「destination ID」は、送信先のノードID(FFFFh)であり、「t1」はtransaction label(00b)であり、「rt」はretry code(00b)であり、「source ID」は送信元のノードID(Cycle MasterのノードID)であり、「destination offset」はサイクル・マスタの標準アドレスに設定であり、「header CRC」はパケットのCRCである。
【0013】
図2は、この発明による同一のisochronousチャネル番号を複数のノード(この第1実施の形態では、ノードB〜Eに該当)で共有することにより、チャネル番号と帯域幅を有効に使用し得る例を示している。
この図2においても、上記図11と同様に、スペースの都合上サイクル・スタート・パケットCPの発生間隔長さが異なって示されている。
図2に示すノードB〜DのデータBx,Cx,Dx(xは図11の場合と同様に、データ番号を示している)は同一のisochronousチャネル番号を共有しており、1チャネル分を取得している。
また、帯域幅はノードB〜DのデータBx,Cx,Dxの中で1番多い帯域幅分だけ取得するようにしている。
【0014】
次に、この第1実施の形態について具体的に説明する。同一のisochronousチャネル番号の共有を希望する複数のノードB,C,Dのうちの代表者であるノードBはasynchronous通信を用いてIRM(ノードA)から1つのチャネル番号を1サイクルで必要とする最大の帯域で帯域幅を取得する。
この帯域幅は、同一のisochronousチャネル番号の共有を希望するノード中で1番多くを必要とする帯域幅である。
また、複数ノードの代表者であるノードBは、この取得したチャネル番号を複数のノードB,C,Dに知らせる。
【0015】
上記の同一のisochronousチャネル番号の共有を希望する復数のノードB,C,Dやその代表者の決め方、最大の帯域幅の決定方法、取得したチャネルを知らせる方法については、asynchronous通信を用いたり、システムで固定であったり、どのような方法でもよい。
また、どこのノードがサイクル・マスタやIRMの機能が有効になっていてもよい。
【0016】
各ノードB,C,Dはサイクル・マスタであるノードAが送信するサイクル・スタート・パケットCPを受信し、サイクル・スタート・パケットCPに含まれる図4に示すサイクル・タイム・データを抽出する。
図5は各ノードB,C,Dの内部構成を示すブロック図であり、たとえば、代表者であるノードBを例にして説明すると、ノードBがサイクル・スタート・パケットCPを受信すると、データ・パケット抽出部1でデータ・パケットを抽出して、その抽出したデータ・パケットをデータ受信処理部3に転送する。
データ受信処理部3は、たとえば、データ・パケットから周波数変換して、復調部で復調して音声信号に複号する音声処理を行って、音声をスピーカなどから出力するようなデータ受信処理を行う。
【0017】
また、ノードBでサイクル・スタート・パケットCPが入力することにより、サイクル・スタート・パケット抽出部2でこのサイクル・スタート・パケットCPを抽出する。
この抽出したサイクル・スタート・パケットCPをサイクル・タイム・データ利用手段8のサイクル・タイム・データ抽出部4と通常のisochronousデータ送信部5に送出する。
サイクル・タイム・データ抽出部4はこのサイクル・スタート・パケットCPに含まれるサイクル・タイム・データを抽出し、サイクル・タイム・データ利用手段8の排他制御処理部6に出力する。
排他制御処理部6は、このサイクル・タイム・データによりサイクル・タイム・データ利用手段8の共有のisochronousデータ送信部7に対して排他的に共有のisochronousデータ送信を行わせる。
【0018】
また、サイクル・スタート・パケット抽出部2で抽出されたサイクル・タイム・データを通常のisochronousデータ送信部5に出力することにより、通常のisochronousデータ送信部5は通常のisochronousデータの送信を行う。
このように、各ノードB,C,Dはサイクル・マスタであるノードAが送信するサイクル・スタート・パケットを受信し、サイクル・スタート・パケットに含まれている上記図4で示したサイクル・タイム・データを抽出し、このサイクル・タイム・データを利用することにより、各ノードA,B,C,D中の1ノードのみがisochronousデータ送信するような排他制御が可能になる。
【0019】
ここで、サイクル・タイム・データの利用方法についての具体例について説明する。各ノードB,C,Dは、図4に示すサイクル・タイム・データのビット12〜24までの13ビット(以下、Cycle Countという)を抽出する。
Cycle Countはサイクル・スタート・パケット送信ごとに1つずつ増加していくカウンタである。
【0020】
このCycle Countを利用して以下に述べる(1)〜(5)項のいずれかの処理をすることにより、サイクル・スタート・パケットCPの発生する同一の1サイクル間では、isochronousデータ送信の共有を行うとするノードB,C,D中の1ノードのみが、isochronousデータ送信するような排他制御が実現できる。
また、Cycle Countの代わりに、図4で示したサイクル・タイム・データのビット25〜31の7ビット(以下、Second Countという)を使用してもよい。
ただし、このSecond Countは、1Secごとに1つずつ増加していくカウンタである。
【0021】
(1).Cycle Countの値と自ノードIDを用いた排他制御を実現させる方法(図6の場合)。
Isochronousデータ送信の共有を行う各ノードB,C,Dは、Cycle Countの下位6ビットの値と自動的に割り振られる自ノードID値が等しいタイミングのときに、共有のチャネル番号を使用してisochronousデータ送信する。
これにより、各ノードB,C,Dは、(64*125μs)に1回の間隔で送信することが可能になる。
このようなCycle Countの値と自ノードIDを用いた排他制御を行う場合について、図6によりさらに詳述すると、この図6は各ノードB,C,Dにおけるサイクル・タイム・データ利用手段の構成を示すブロック図であり、上記図5で示したサイクル・タイム・データ利用手段8に対応する部分である。
【0022】
この図6において、同一のisochronousチャンネル番号の共有を行う各ノードB,C,Dは図5で述べたように、サイクル・タイム・データ抽出部でサイクル・スタート・パケットから抽出したサイクル・タイム・データをサイクル・タイムの下位6ビット検出部9で検出して比較部10に送出する。
この比較部10には、各ノードB,C,Dに自動的に割り振られているノードID値11も入力されている。
したがって、比較部10は、Cycle Countの下位6ビットとこのノードID値とを比較して、Cycle Countの下位6ビットとノードID値が等しいタイミングのときに共有されているisochronousデータ送信のトリガ信号12を出力することにより、isochronousデータ送信を行う。
【0023】
(2).Cycle Countの値と自ノードIDとノードの接続数を用いて実現させる方法(図7)。
同一のIsochronousチャネル番号の共有を行う各ノードB、C、Dは、Cycle Countの値を接続ノード数で割ったときの余り値と自ノードID値が等しいタイミングのときに、共有のチャネル番号を使用してisochronousデータ送信する。
これにより、各ノードB、C、Dは、{(64%接続ノード数)*125μs}に1回の間隔で送信することが可能になる。
なお、ここで「%」は乗余演算子である。
【0024】
ここで、図7を参照して、Cycle Countの値と自ノードIDとノードの接続数を用いて共有されている同一のisochronousチャネル番号でisochronousデータ送信を実現させる方法について具体的に説明する。
図7において、同一のisochronousチャネル番号でisochronousデータ送信の共有を行う各ノードB,C,Dは図5で述べたように、サイクル・タイム・データ抽出部でサイクル・スタート・パケットから抽出したサイクル・タイム・データをサイクル・タイム・データ利用手段8のサイクル・タイム抽出部13に入力することにより、Cycle Countの値を抽出して演算部14に出力する。
【0025】
演算部14には、接続ノード数15も入力されている。これにより、演算部14はCycle Countの値を接続ノード数15で割算を行い、その演算を行った結果の余り値を比較部10に出力する。
比較部10には、自ノードID値11も入力される。したがって、比較部10は、余り値と自ノードID値11との比較を行い、余り値と自ノードID値11との等しいタイミングのときに、同一のisochronousチャネル番号が共有されているisochronousデータ送信のトリガ12を出力して同一のisochronousチャネル番号を使用してisochronousデータ送信する。
【0026】
(3).上記(1)項で使用した自ノードIDの代わりに、IEEE1394規格で定められていない「送信可能なタイミングを識別するID」を用いて実現させる方法(図8)。
同一のisochronousチャネル番号を共有して、isochronousデータ送信を行う各ノードB,C,Dに、互いに異なる値を持つ送信可能なタイミングを識別するための送信タイミングID(以下、送信タイミングIDという)を割り付ける。
なお、この送信タイミングIDの割り付け方法は、asynchronous通信を使用したり、ROMやハードウェア、ソフトウェアなどでノード固有に設定など、どのような方法でもよい。
共有を行う各ノードA,B,C,Dは、Cycle Countの下位6ビットの値と送信タイミングID値が等しいタイミングのときに、共有のチャネル番号を使用して、isochronousデータ送信する。
【0027】
ここで、図8を参照して送信可能なタイミングを識別するIDを用いてisochronousデータ送信を実現させる方法について具体的に説明する。
図8において、同一のisochronous チャネル番号のisochronousデータ送信の共有を行う各ノードB,C,Dは図5で述べたように、サイクル・タイム・データ抽出部でサイクル・スタート・パケットから抽出したサイクル・タイム・データをサイクル・タイム・データ利用手段8のサイクル・タイム抽出部13に入力することにより、Cycle Countの下位6ビットの値を抽出して比較部10に出力する。
【0028】
この比較部10には、IEEE1394規格で定められていない送信可能なタイミングを識別するための送信タイミング値ID16も入力される。
比較部10はCycle Countの下位6ビットの値と、送信タイミングID値16との比較を行い、Cycle Countの下位6ビットの値と、送信タイミングID値16が等しいタイミングのときに、同一のisochronouチャネル番号が共有されているisochronousデータ送信のトリガ12を出力して共有のチャネル番号を使用してisochronousデータ送信する。
【0029】
(4).上記(2)項で使用した自ノードIDと接続機器数(接続ノード数)の代わりに、IEEE1394規格で定められていない「送信可能なタイミングを識別するID」と「送信可能なタイミングの基本インターバルを既定する値」を用いて実現させる方法(図9)。
共有を行う各ノードB,C,Dに互いに異なる値を持つ送信可能なタイミングを識別するための送信タイミングID(以下、送信タイミングIDという)と、互いに同じ値を持つ送信可能なタイミングの基本インターバルを規定する値(以下、送信タイミングインターバル値という)を設定する。
【0030】
なお、「送信タイミングID」の割り付けや、「送信タイミングインタバール値」の設定方法はasynchronous通信を使用したり、ROMやハードウェア、ソフトウェアなどでノード固有に設定など、どのような方法でもよい。
共有を行う各ノードA,B,C,Dは、Cycle Countの値を「送信タイミングインタバール値」で割ったときの余り値と、「送信タイミングID」値が等しいタイミングのときに同一のisochronousチャネル番号を使用してisochronousデータ送信する。
【0031】
ここで、図9を参照してIEEE1394規格で定められていない「送信可能なタイミングを識別するID」と「送信可能なタイミングの基本インターバルを既定する値」を用いて同一のisochronousチャネル番号が共有されているisochronousデータ送信を実現させる方法についてより具体的に説明する。
この図9において、同一のisochronousチャネル番号を共有しているisochronousデータ送信の共有を行う各ノードB,C,Dは図5で述べたように、サイクル・タイム・データ抽出部でサイクル・スタート・パケットから抽出したサイクル・タイム・データをサイクル・タイム・データ利用手段8のサイクル・タイム抽出部13に入力することにより、Cycle Countの値を抽出して演算部14に出力する。
【0032】
この演算部14には、送信タイミングインターバル値17も入力される。演算部14はCycle Countの値を送信タイミングインターバル値17で割算して、その割算を行った結果得られる余り値を比較部10に出力する。
比較部10には、互いに異なる値を持つ送信可能なタイミングを識別するための送信タイミングID16も入力される。
これにより、比較部10は、演算部14からの余り値と送信タイミングID16との比較を行い、余り値と送信タイミングID16とが等しいタイミングのときに共有されているisochronousデータ送信のトリガ12を出力し、共有のチャネル番号を使用してisochronousデータ送信を行う。
【0033】
(5).上記(4)の方法を用いて、1つのノードに「送信タイミングID」を複数割り当てることにより、共有されたチャネルのisochronous通信の送信する順番や間隔を任意に設定することが可能になる方法(図10)。
これについて、図10を参照してより具体的に説明する。図10において、同一のisochronousチャネル番号のisochronousデータ送信の共有を行う各ノードB,C,Dは図5で述べたように、サイクル・タイム・データ抽出部でサイクル・スタート・パケットから抽出したサイクル・タイム・データをサイクル・タイム・データ利用手段8のサイクル・タイム抽出部13に入力することにより、Cycle Countの値を抽出して演算部14に出力する。
【0034】
演算部14には、送信タイミングインターバル値17も入力される。演算部14はCycle Countの値を送信タイミングインターバル値17で割算して、その割算を行った結果得られる余り値を比較部10に出力する。
一方、各ノードB,C,Dのそれぞれに複数割り当てられた送信タイミングID1値16a,16b,…送信タイミングIDn値16nがマルチプレクス18に入力されるようにしている。
このマルチプレクス18は複数の送信タイミングID1値16a,16b,…送信タイミングIDn値16nを入力することにより、共有されたチャネルのisochronous通信の送信する順番や間隔を任意に設定可能なように、これらの送信タイミングID1値16a,16b,…送信タイミングIDn値16nの入力を順次、あるいは任意に切り替えて入力し、比較部10に出力する。
【0035】
比較部10はマルチプレクス18で切り替えて入力された送信タイミングID1値16a,送信タイミングID2値16b,…送信タイミングIDn値16nのいずれかと、演算部14から入力された余り値との比較を行う。
この比較の結果、余り値とマルチプレクス18で切替え選択された送信タイミングID1値16a,送信タイミングID2値16b,…送信タイミングIDn値16nのいずれかとの値が等しいタイミングのときに、共有されるisochronousデータ送信のトリガ12を出力することにより、共有されたチャネルのisochronous通信の送信する順番や間隔を任意に設定することが可能になる。
【0036】
【発明の効果】
以上のように、この発明によれば、IEEE1394規格のバスシステムのisochronous 通信において、サイクル・マスタが発信するサイクル・スタート・パケットに含まれるサイクル・タイム・データの情報を利用して同一のisochronousチャネル番号を複数のノードで共有するようにしたので、複数ノードでisochronous通信のチャネル番号や帯域幅などの資源を供することが可能になり、isochronouの資源を有効に活用することができる。
また、複数ノード宛てに同じデータを送信する場合に、asynchronous broadcast通信や複数回のasynchronous通信を使用せずに,isochronous 通信で行うことが容易にできるという効果を奏する。
【図面の簡単な説明】
【図1】この発明によるネットワークシステムの第1実施の形態の構成を示すブロック図である。
【図2】この発明によるネットワークシステムの第1実施の形態に適用される同一のisochronousチャネル番号を複数ノードで共有することによりチャネル番号と帯域幅を有効に使用して複数ノードがisochronous通信を行っているときのデータの流れを示す説明図である。
【図3】この発明によるネットワークシステムの第1実施の形態に適用されるサイクル・スタート・パケットのデータ・フォーマットを示す説明図である。
【図4】この発明によるネットワークシステムの第1実施の形態に適用されるサイクル・スタート・パケットに含まれるサイクル・タイム・データのフォーマットを示す説明図である。
【図5】この発明によるネットワークシステムの第1実施の形態に適用されるサイクル・マスタが送信するサイクル・スタート・パケットに含まれるサイクル・タイム・データ値を利用して1ノードのみがisochronousデータ送信をするように排他制御を可能にする場合の排他制御処理部分の構成を示すブロック図である。
【図6】この発明によるネットワークシステムの第1実施の形態に適用されるサイクル・タイム・データを利用して1ノードのみがisochronousデータ送信をするように排他制御を可能にする場合のサイクル・タイム・データ利用手段の構成を示すブロック図である。
【図7】この発明によるネットワークシステムの第1実施の形態に適用されるノードIIDと接続ノード数を利用して1ノードのみがisochronousデータ送信する場合のサイクル・タイム・データ利用手段の構成を示すブロック図である。
【図8】この発明によるネットワークシステムの第1実施の形態に適用される送信タイミングIDを用いた1ノードのみがisochronousデータ送信する場合のサイクル・タイム・データ利用手段の構成を示すブロック図である。
【図9】この発明によるネットワークシステムの第1実施の形態に適用される送信タイミングIDと送信タイミングインターバル値を用いて1ノードのみがisochronousデータ送信する場合のサイクル・タイム・データ利用手段の構成を示すブロック図である。
【図10】この発明によるネットワークシステムの第1実施の形態に適用され複数の送信タイミングID値を用いて1ノードのみがisochronousデータ送信する場合のサイクル・タイム・データ利用手段の構成を示すブロック図である。
【図11】従来の通信ネットワークにおける複数のノードがisochronous通信を行っている場合のチャネル番号と帯域幅を有効に使用していない場合のデータの流れを示す説明図である。
【符号の説明】
A〜E……ノード、1……データパケット抽出部、2……サイクル・スタート・パケット、3……データ受信処理部、4……サイクル・タイム・データ、5……通常のisochronousデータ送信部、6……排他制御処理部、7……共有のisochronousデータ送信部、8……サイクル・タイム・データ利用手段、9……サイクル・タイムの下位6ビット抽出部、10……比較部、11……ノードID値、12……共有されているisochronousデータ送信のトリガ,13……サイクル・タイム抽出部、14……演算部、15……接続ノード数、16……送信タイミングID値、16a〜16n……送信タイミングID1値〜送信タイミングIDn値、17……送信タイミング・インターバル値、18……マルチプレクス。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a network system in which the same isochronous channel number can be used in a plurality of nodes using an IEEE 1394 interface.
[0002]
[Prior art]
In the IEEE 1394 bus isochronous communication, regarding acquisition of a channel number and bandwidth, all nodes desiring to transmit isochronous data are nodes that manage isochronous resources using asynchronous communication {hereinafter referred to as IRM ( The channel number and the required bandwidth are obtained from the "isochronous resource manager".
This means the following. That is, a node that desires isochronous data transmission has acquired a different channel number from another node that desires isochronous data transmission, and each node has acquired a bandwidth that can be occupied for 125 μs. The total bandwidth that can be acquired by all nodes cannot exceed 125 μs.
[0003]
Each node wishing to transmit isochronous data has a maximum bandwidth to transmit in one cycle of its own node even if the isochronous data transmission interval is much slower than 125 μs and the communication accuracy does not require 125 μs. Must be acquired separately, and a finite number of channel numbers and a finite bandwidth were not used effectively.
[0004]
As for the case where the same data is transmitted to a plurality of nodes of the IEEE 1394 bus system, conventionally, asynchronous broadcast communication is used when the same data is transmitted to a plurality of nodes. However, this method causes the transmitted packet to be executed up to a transaction process of a node that is not necessary.
Therefore, it is said that asynchronous broadcast communication should not be transmitted as much as possible, and isochronous communication is performed separately for each node.
In this method of performing isochronous communication addressed to each node, processing time is required each time the number of destination nodes increases.
[0005]
FIG. 11 shows an example in which channel numbers and bandwidths are not effectively used when the same data is transmitted to a plurality of conventional nodes in such an IEEE 1394 bus system.
In FIG. 11, one cycle of a cycle start packet (Cycle Start Packet) CP is 125 μs, and is shown between the arrows in FIG. 11. However, in FIG. Shown.
The cycle start packet CP is a node that becomes a cycle master (Cycle Master, which is described as being the same node as the cycle master and IRM in FIG. 11) existing in a network that performs isochronous communication at every arrow interval. Sent from
[0006]
Further, data transmitted by a plurality of nodes B, C, and D (all of which are not shown in FIG. 11) existing in the network, that is, x in isochronous packet data Bx, Cx, and Dx is The
FIG. 11 shows the flow of data when the nodes B, C, and D are performing isochronous communication. The data Bx, Cx, and Dx use different channel numbers, and a total of three channels are used. Each node B, C, D is obtained from the IRM.
The reserved bandwidth is the total bandwidth of the data Bx, Cx, and Dx, that is, (Bx + Cx + Dx).
[0007]
[Problems to be solved by the invention]
As apparent from the above, in the conventional isochronous communication of the IEEE 1393 bus system, there is a problem that a node that desires isochronous data transmission does not effectively use a finite number of channel numbers and a finite bandwidth.
In addition, when the same data is transmitted to a plurality of nodes in the IEEE 1394 bus system, there is a problem that the transmission node takes a processing time each time the number of destination nodes increases.
[0008]
The present invention has been made to solve the above-described conventional problems, and enables sharing of isochronous resources among a plurality of nodes, enabling effective use of isochronous resources and transmitting the same data to a plurality of nodes. It is an object of the present invention to provide a network system that can be easily performed by isochronous communication without using asynchronous broadcast communication or multiple times of asynchronous communication.
[0009]
[Means for Solving the Problems]
In order to achieve the above object, a network system according to the present invention, in the isochronous communication of the IEEE 1394 bus system, is connected to the IEEE 1394 bus, has at least a cycle master function, and includes a cycle start data including cycle time data. A packet is transmitted to the cycle master to which the node ID is assigned, and to the IEEE 1394 bus connected to the IEEE 1394 bus and sharing the same isochronous channel number. Node I connected to acquire the bandwidth with the same isochronous channel number and the maximum bandwidth required in one cycle, and inform the plurality of nodes of the acquired isochronous channel number And a representative node that is allocated In addition, the cycle master also has a function of managing isochronous resources using asynchronous communication (cycle start packet). It is characterized by that.
Therefore, in the isochronous communication of the IEEE 1394 standard bus system, the same isochronous channel number is shared by a plurality of nodes using the information of the cycle time data included in the cycle start packet transmitted by the cycle master. As a result, resources such as the channel number and bandwidth of isochronous communication can be provided by a plurality of nodes, and the resources of isochronous can be used effectively.
Further, when the same data is transmitted to a plurality of nodes, it can be easily performed by isochronous communication without using asynchronous broadcast communication or multiple times of asynchronous communication.
[0010]
DETAILED DESCRIPTION OF THE INVENTION
Next, an embodiment of a network system according to the present invention will be described with reference to the drawings.
FIG. 1 is a block diagram showing the configuration of the first embodiment of the present invention, and shows an example of connection in a network of nodes A, B, C, D, and E which are devices capable of performing isochronous communication. These nodes A, B, C, D, and E are connected to an IEEE 1393 standard bus system.
The node A is connected to the nodes B, C, and D, and the node D and the node E are connected. Node IDs having values of “0” to “number of nodes−1” are individually assigned to the nodes A to E.
In the network, among these nodes A to E, there are one node that is effective as the cycle master and one node that is effective as the IRM.
[0011]
The cycle master and the IRM may be the same node (IEEE 1394 standard). Therefore, in the first embodiment, for the sake of explanation, the description will be made assuming that the function is effective with the node A as the cycle master and the function as the IRM is also effective. In other words, the node A has both the cycle master and IRM functions.
Further, the node B among the plurality of nodes B to E is assumed to be a representative node representing them.
[0012]
FIG. 3 shows a data format of a cycle start packet. A packet transmitted by the cycle master every broadcast at intervals of 125 μs, and each node B to E serves as a trigger for transmitting isochronous communication.
Also, “destination ID” in FIG. 3 is a destination node ID (FFFFh), “t1” is a transaction label (00b), “rt” is a retry code (00b), and “source ID” "Is the source node ID (Cycle Master node ID)," destination offset "is set to the standard address of the cycle master, and" header CRC "is the CRC of the packet.
[0013]
FIG. 2 shows an example in which the same isochronous channel number according to the present invention is shared by a plurality of nodes (corresponding to the nodes B to E in this first embodiment), so that the channel number and the bandwidth can be used effectively. Is shown.
Also in FIG. 2, as in FIG. 11, the generation interval length of the cycle start packet CP is shown differently for the sake of space.
The data Bx, Cx, and Dx (x indicates the data number as in FIG. 11) of the nodes B to D shown in FIG. 2 share the same isochronous channel number, and one channel is acquired. is doing.
Further, the bandwidth is acquired only for the largest bandwidth among the data Bx, Cx, Dx of the nodes B to D.
[0014]
Next, the first embodiment will be specifically described. Node B, which is a representative of a plurality of nodes B, C, and D that desire to share the same isochronous channel number, needs one channel number from IRM (node A) in one cycle using asynchronous communication. Get bandwidth with maximum bandwidth.
This bandwidth is the bandwidth that requires the most among the nodes that wish to share the same isochronous channel number.
Node B, which is a representative of a plurality of nodes, informs the plurality of nodes B, C, and D of the acquired channel number.
[0015]
Asynchronous communication can be used for determining the number of nodes B, C, D and their representatives who wish to share the same isochronous channel number, for determining the maximum bandwidth, and for notifying the acquired channel. It can be fixed in the system or any method.
Any node may have the cycle master or IRM function enabled.
[0016]
Each node B, C, D receives the cycle start packet CP transmitted from the node A as the cycle master, and extracts the cycle time data shown in FIG. 4 included in the cycle start packet CP.
FIG. 5 is a block diagram showing the internal configuration of each of the nodes B, C, and D. For example, when the representative node B is described as an example, when the node B receives the cycle start packet CP, The
The data
[0017]
Further, when the cycle start packet CP is input at the node B, the cycle start
The extracted cycle start packet CP is sent to the cycle time
The cycle time
The exclusive
[0018]
Further, by outputting the cycle time data extracted by the cycle start
In this way, each of the nodes B, C, and D receives the cycle start packet transmitted by the node A as the cycle master, and the cycle time shown in FIG. 4 included in the cycle start packet is shown in FIG. By extracting data and using this cycle time data, it is possible to perform exclusive control such that only one of the nodes A, B, C, and D transmits isochronous data.
[0019]
Here, a specific example of how to use cycle time data will be described. Each node B, C, and D extracts 13 bits (hereinafter referred to as Cycle Count) from
Cycle Count is a counter that increases by one for each cycle start packet transmission.
[0020]
By using this Cycle Count and performing any one of the following processes (1) to (5), isochronous data transmission can be shared between the same cycle in which the cycle start packet CP is generated. Exclusive control in which only one of the nodes B, C, and D to be transmitted transmits isochronous data can be realized.
Instead of the Cycle Count, 7 bits (hereinafter referred to as Second Count) of bits 25 to 31 of the cycle time data shown in FIG. 4 may be used.
However, this Second Count is a counter that increases by 1 every 1 Sec.
[0021]
(1). A method of realizing exclusive control using the value of Cycle Count and the own node ID (in the case of FIG. 6).
The nodes B, C, and D that share isochronous data transmission use isochronous using the shared channel number when the lower 6 bits of the Cycle Count and the self-assigned node ID value are the same timing. Send data.
As a result, each of the nodes B, C, and D can transmit at an interval of (64 * 125 μs).
This exclusive control using the cycle count value and the own node ID will be described in more detail with reference to FIG. 6. FIG. 6 shows the configuration of the cycle time data utilization means in each of the nodes B, C, and D. Is a block corresponding to the cycle time data utilization means 8 shown in FIG.
[0022]
In FIG. 6, the nodes B, C, and D sharing the same isochronous channel number are connected to the cycle time data extracted from the cycle start packet by the cycle time data extraction unit as described in FIG. Data is detected by the lower 6 bits detection unit 9 of the cycle time and sent to the
A node ID value 11 automatically assigned to each of the nodes B, C, and D is also input to the
Therefore, the
[0023]
(2). A method of realizing by using the value of Cycle Count, the own node ID, and the number of connected nodes (FIG. 7).
Nodes B, C, and D that share the same isochronous channel number have the shared channel number when the remainder value obtained by dividing the Cycle Count value by the number of connected nodes is equal to the own node ID value. Use isochronous data transmission.
As a result, each of the nodes B, C, and D can transmit at {(64% number of connected nodes) * 125 μs} at an interval of one time.
Here, “%” is a multiplication operator.
[0024]
Here, with reference to FIG. 7, a method for realizing isochronous data transmission with the same isochronous channel number shared by using the value of Cycle Count, the own node ID, and the number of connected nodes will be described in detail.
In FIG. 7, the nodes B, C, and D that share isochronous data transmission with the same isochronous channel number are the cycles extracted from the cycle start packet by the cycle time data extraction unit as described in FIG. By inputting time data to the cycle
[0025]
The
The
[0026]
(3). A method of realizing by using “ID for identifying a transmittable timing” not defined in the IEEE 1394 standard instead of the own node ID used in the above (1) (FIG. 8).
A transmission timing ID (hereinafter referred to as a transmission timing ID) for identifying a transmission timing having a different value from each of the nodes B, C, and D that share the same isochronous channel number and perform isochronous data transmission. Assign.
The transmission timing ID can be assigned by any method, such as using asynchronous communication, or setting specific to a node using ROM, hardware, software, or the like.
The nodes A, B, C, and D that perform sharing transmit isochronous data using the shared channel number when the value of the lower 6 bits of the Cycle Count is equal to the transmission timing ID value.
[0027]
Here, with reference to FIG. 8, a method for realizing isochronous data transmission using an ID for identifying a transmittable timing will be specifically described.
In FIG. 8, the nodes B, C, and D that share isochronous data transmission of the same isochronous channel number are extracted from the cycle start packet by the cycle time data extraction unit as described in FIG. By inputting the time data to the cycle
[0028]
The
The
[0029]
(4). Instead of the local node ID and the number of connected devices (number of connected nodes) used in the above item (2), an “ID for identifying a transmittable timing” and “basic interval of transmittable timing” not defined in the IEEE1394 standard Is realized by using “a predetermined value” (FIG. 9).
A transmission timing ID (hereinafter referred to as a transmission timing ID) for identifying transmission possible timings having mutually different values for each of the nodes B, C, and D to be shared, and a basic interval of transmission possible timings having the same values. Is set (hereinafter referred to as a transmission timing interval value).
[0030]
Note that the “transmission timing ID” can be assigned and the “transmission timing interval value” can be set by any method such as using asynchronous communication or setting specific to a node using ROM, hardware, software, or the like.
The nodes A, B, C, and D that perform sharing share the same isochronous when the remainder of the Cycle Count value divided by the “transmission timing interval value” and the “transmission timing ID” value are equal. Send isochronous data using the channel number.
[0031]
Here, with reference to FIG. 9, the same isochronous channel number is shared by using “ID for identifying a transmittable timing” and “a value for defining a basic interval of transmittable timing” which are not defined in the IEEE1394 standard. The method of realizing the isochronous data transmission that is being performed will be described more specifically.
In FIG. 9, the nodes B, C, and D that share isochronous data transmission sharing the same isochronous channel number are cycle start data extraction units as described in FIG. By inputting the cycle time data extracted from the packet to the cycle
[0032]
The
The
Thereby, the
[0033]
(5). Using the method (4) above, by assigning a plurality of “transmission timing IDs” to one node, it is possible to arbitrarily set the transmission order and interval of isochronous communication of a shared channel ( FIG. 10).
This will be described more specifically with reference to FIG. In FIG. 10, the nodes B, C, D that share isochronous data transmission of the same isochronous channel number are extracted from the cycle start packet by the cycle time data extraction unit as described in FIG. By inputting time data to the cycle
[0034]
A transmission timing
On the other hand, a plurality of transmission
The
[0035]
The
As a result of this comparison, an isochronous that is shared when the value of the remainder value and any one of the transmission timing ID1 value 16a, transmission
[0036]
【The invention's effect】
As described above, according to the present invention, in the isochronous communication of the IEEE 1394 standard bus system, the same isochronous channel is utilized by using the information of the cycle time data included in the cycle start packet transmitted by the cycle master. Since the number is shared by a plurality of nodes, resources such as the channel number and bandwidth of isochronous communication can be provided by the plurality of nodes, and the resources of isochronou can be effectively utilized.
In addition, when the same data is transmitted to a plurality of nodes, it is possible to easily perform isochronous communication without using asynchronous broadcast communication or multiple times of asynchronous communication.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a first embodiment of a network system according to the present invention.
FIG. 2 shows that the same isochronous channel number applied to the first embodiment of the network system according to the present invention is shared by a plurality of nodes so that the plurality of nodes perform isochronous communication by effectively using the channel number and the bandwidth. It is explanatory drawing which shows the flow of data at the time.
FIG. 3 is an explanatory diagram showing a data format of a cycle start packet applied to the first embodiment of the network system according to the present invention.
FIG. 4 is an explanatory diagram showing a format of cycle time data included in a cycle start packet applied to the first embodiment of the network system according to the present invention.
FIG. 5 shows that only one node transmits isochronous data using a cycle time data value included in a cycle start packet transmitted by a cycle master applied to the first embodiment of the network system according to the present invention. It is a block diagram which shows the structure of the exclusive control process part in the case of enabling exclusive control so that it may do.
FIG. 6 shows the cycle time when exclusive control is enabled so that only one node transmits isochronous data using the cycle time data applied to the first embodiment of the network system according to the present invention; -It is a block diagram which shows the structure of a data utilization means.
FIG. 7 shows a configuration of cycle time data utilization means when only one node transmits isochronous data using the node IID and the number of connected nodes applied to the first embodiment of the network system according to the present invention; It is a block diagram.
FIG. 8 is a block diagram showing a configuration of cycle time data utilization means when only one node using transmission timing ID applied to the first embodiment of the network system according to the present invention transmits isochronous data; .
FIG. 9 shows the structure of cycle time data utilization means when only one node transmits isochronous data using the transmission timing ID and transmission timing interval value applied to the first embodiment of the network system according to the present invention; FIG.
FIG. 10 is a block diagram showing the configuration of cycle time data utilization means applied to the first embodiment of the network system according to the present invention when only one node transmits isochronous data using a plurality of transmission timing ID values; It is.
FIG. 11 is an explanatory diagram showing a data flow when a channel number and a bandwidth are not effectively used when a plurality of nodes in a conventional communication network are performing isochronous communication.
[Explanation of symbols]
A to E: Node, 1 ... Data packet extraction unit, 2 ... Cycle start packet, 3 ... Data reception processing unit, 4 ... Cycle time data, 5 ... Normal isochronous data transmission unit , 6... Exclusive control processing unit, 7... Shared isochronous data transmission unit, 8... Cycle time data utilization means, 9... Lower 6 bit extraction unit of cycle time, 10. ... Node ID value, 12... Shared isochronous data transmission trigger, 13... Cycle time extraction unit, 14... Arithmetic unit, 15 .. number of connected nodes, 16. ˜16n... Transmission timing ID1 value to transmission timing IDn value, 17... Transmission timing interval value, 18.
Claims (14)
上記IEEE1394バスに接続され、同一のisochronousチャネル番号の共有を希望し、それぞれ別にノードIDが割り付けられた複数ノードと、
上記IEEE1394バスに接続され、同一のisochronousチャネル番号と1サイクルで必要とする最大の帯域で帯域幅を取得し、その取得したisochronousチャネル番号を上記複数ノードに知らせるノードIDが割り付けられた代表者ノードと、
を備え、
上記サイクル・マスタは、asynchronous通信(サイクル・スタート・パケット)を用いてisochronousの資源を管理する機能を兼備する
ことを特徴とするネットワークシステム。In isochronous communication of the IEEE 1394 bus system, the cycle start function is connected to the IEEE 1394 bus and has at least the cycle master function of the cycle master function and the isochronous resource manager function, and includes cycle time data. A cycle master that sends a packet and is assigned a node ID;
A plurality of nodes connected to the IEEE 1394 bus, wishing to share the same isochronous channel number, and each assigned a node ID;
A representative node that is connected to the IEEE 1394 bus, obtains a bandwidth with the same isochronous channel number and the maximum bandwidth required in one cycle, and is assigned a node ID that informs the plurality of nodes of the obtained isochronous channel number When,
With
The cycle master has a function of managing isochronous resources using asynchronous communication (cycle start packet).
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP06196099A JP4143881B2 (en) | 1999-03-09 | 1999-03-09 | Network system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP06196099A JP4143881B2 (en) | 1999-03-09 | 1999-03-09 | Network system |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2000261455A JP2000261455A (en) | 2000-09-22 |
| JP4143881B2 true JP4143881B2 (en) | 2008-09-03 |
Family
ID=13186272
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP06196099A Expired - Fee Related JP4143881B2 (en) | 1999-03-09 | 1999-03-09 | Network system |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4143881B2 (en) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3436174B2 (en) | 1999-03-09 | 2003-08-11 | 日本電気株式会社 | Communication method |
| US6647447B1 (en) * | 2000-12-29 | 2003-11-11 | Sony Corporation | Allocating isochronous channel numbers to devices on an IEEE-1394 bus |
| US8332557B2 (en) * | 2008-12-12 | 2012-12-11 | Qualcomm, Incorporated | System, apparatus, and method for broadcasting USB data streams |
-
1999
- 1999-03-09 JP JP06196099A patent/JP4143881B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2000261455A (en) | 2000-09-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6816477B1 (en) | Transmission method in a domestic communication system comprising a wireless channel | |
| US7187655B1 (en) | Information communication method and apparatus | |
| US20030194037A1 (en) | Reception interface unit in transmission system | |
| JPS59200554A (en) | Method and device for enabling one of plural devices | |
| CN100420211C (en) | Communication Systems and Equipment | |
| EP1113625A3 (en) | Communication path control method and device for data networks using high-speed buses | |
| US6374316B1 (en) | Method and system for circumscribing a topology to form ring structures | |
| EP1193914A2 (en) | Data transmission and reception | |
| US6243391B1 (en) | Non-polled dynamic slot time allocation protocol | |
| US6108347A (en) | Non-polled dynamic slot time allocation protocol | |
| JP3351744B2 (en) | Data transmission system | |
| US8582576B2 (en) | Method of bus configuration to enable device bridging over dissimilar buses | |
| JP4143881B2 (en) | Network system | |
| US6751697B1 (en) | Method and system for a multi-phase net refresh on a bus bridge interconnect | |
| US6584539B1 (en) | Method and system for message broadcast flow control on a bus bridge interconnect | |
| CN115189977A (en) | Broadcast transmission method, system and medium based on AXI protocol | |
| US7227846B2 (en) | Data transmission/ reception system, connection restoring method and information transmission/ reception apparatus | |
| US7251703B1 (en) | Method of time stamping to enable device bridging over dissimilar buses | |
| JP2004509518A (en) | Communication systems and devices | |
| WO2002071699A1 (en) | System, method and mesuring node for determining a worst case gap-count value in a multi-station network | |
| US20020095505A1 (en) | Data transmission/reception system, connection establishing method and information transmission/reception apparatus | |
| US6894603B2 (en) | Packet communication method of powerline communication system | |
| JP3445228B2 (en) | Channel assignment method for devices with digital interface | |
| KR100429795B1 (en) | Method for managing bandwidth of serial bus and apparatus thereof | |
| US7417973B1 (en) | Method, apparatus and computer program product for ensuring node participation in a network bus |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20051220 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060221 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080212 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080229 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080428 |
|
| 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: 20080522 |
|
| 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: 20080604 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110627 Year of fee payment: 3 |
|
| LAPS | Cancellation because of no payment of annual fees |