(57)【特許請求の範囲】
【請求項１】
複数局がリング状ネットワークに接続され、且つ、前記リング状ネットワークに１つの伝送フレームを二周させて各局が一周目に伝送データを付加しこの付加した伝送データを二周目に削除することでデータ交換処理を完結させるようにしたリング状ネットワークのデータ転送方式において、
前記伝送フレームは、当該伝送フレームに付加された伝送データで構成されるデータ部の総データ量を格納するデータ量格納領域を有し、
前記各局は、一巡目の伝送フレームを受信したときに、前記データ量格納領域の総データ量に基づき前記データ部の末尾を検出してこの次に自己の伝送データを挿入すると共に前記総データ量に自己の伝送データ量を加算して転送し、
二巡目の伝送フレームを受信したときに、前記伝送フレームのデータ部の先頭から、予め一巡目に挿入した自己の伝送データのデータ量に設定された削除すべきデータ量に相当するデータを削除して転送するようになっていることを特徴とするリング状ネットワークのデータ転送方式。
【請求項２】
複数局がリング状ネットワークに接続され、且つ、前記リング状ネットワークに１つの伝送フレームを二周させて各局が一周目に伝送データを付加しこの付加した伝送データを二周目に削除することでデータ交換処理を完結させるようにしたリング状ネットワークのデータ転送方式において、
前記伝送フレームは、当該伝送フレームに付加された伝送データで構成されるデータ部の総データ量を格納するデータ量格納領域を有し、
前記各局は、一巡目の伝送フレームを受信したときに、前記データ部の先頭に自己の伝送データを挿入すると共に前記総データ量に自己の伝送データ量を加算して転送し、二巡目の伝送フレームを受信したときに、前記データ量格納領域の総データ量を、当該総データ量から、予め一巡目に挿入した自己の伝送データのデータ量に設定された削除すべきデータ量を減算した減算値に更新すると共に、前記減算値に基づき自己が付加した伝送データの格納位置を検出し、当該格納位置から予め一巡目に挿入した自己の伝送データのデータ量に設定された削除すべきデータ量に相当するデータを削除して転送するようにしたことを特徴とするリング状ネットワークのデータ転送システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数の局でリング状ネットワークを構築し、このリング状ネットワークに伝送フレームを２周させて各局で一周目と二週目とで異なる形態の処理を行うことによりデータ交換処理を完結させるプロトコルを有するリング状ネットワークのデータ転送方式に関し、より伝送効率を向上させるようにしたものである。
【０００２】
【従来の技術】
この種のリング状ネットワークのデータ転送方式としては、例えばデータを収集／配信するマスタ局と、このマスタ局に対して自局データを授受する複数のスレーブ局とが伝送路を介してリング状に接続されてリング状ネットワークを構築し、このリング状ネットワークに一つの伝送フレームを二周させ、各局が一周目と二周目とで異なる形態の操作を行うことで、データ交換処理を完結させるプロトコルを持つデータ転送システムが提案されている。
【０００３】
その一例は、マスタ局が送出した一周目の伝送フレームに自局のデータを追加しながら中継送信し、さらに二周目の伝送フレームから自局が追加したデータを除去することにより、伝送効率向上を図りながらデータ交換を行うようにしている。
【０００４】
各局では、自局のデータを伝送フレーム中の決められた位置に挿入するには、その伝送フレームの先頭から何バイト目、或いは何ワード目、何ビット目に挿入するかという挿入位置情報を事前に認識している必要がある。そのため、予め挿入位置情報を例えばリング状ネットワークに接続された各局を統括するマスタ局が挿入位置情報を各局に通知し、各局では、伝送フレームを受信したときには、通知された挿入位置情報をもとにカウンタ等を用いて挿入位置を検出して自局のデータを指定された位置に付加するようにしている。
【０００５】
また、伝送フレームから自局が追加したデータを除去する場合にも同様にして、削除位置情報を事前にマスタ局からの通知等により認識し、指定された削除維持情報に基づいて自局のデータの格納位置を検出して自局のデータを削除するようにしている。
【０００６】
【発明が解決しようとする課題】
しかしながら、上記従来のリング状ネットワークのデータ転送システムにあっては、各局に対してデータの挿入位置情報或いは削除位置情報を通知する手段が必要であり、さらに、局数或いはデータ数が増減した場合には、その都度、挿入位置情報或いは削除位置情報を、データの挿入或いは削除を行う局に通知しなければならない。
【０００７】
これらは、データ転送とは直接関係のない伝送を行うことになり、伝送効率の低下につながるという問題がある。
すなわち、データの伝送効率は、送るべきデータの長さをＡ，その他の不要部分の長さをＢとすると、Ａ／（Ａ＋Ｂ）で表される。
【０００８】
このため、送るべきデータ長Ａが付加情報の長さＢに比較して非常に多ければ伝送効率はさほど低くはならないが、本発明を適用するファクトリーオートメーション等の産業分野におけるデータ転送量は、入出力装置がリレー，スイッチ等のオン／オフ機器を制御する出力装置やリレー，スイッチ等の状態信号を入力する入力装置で構成されている場合が多く、例えば入出力装置がコントローラに送信するデータ量は、１転送で数バイト程度と小さいため、付加情報の長さＢが伝送効率に与える影響は非常に大きくなる。
【０００９】
そこで、この発明は上記従来の問題に着目してなされたものであり、伝送効率をより向上させることの可能なリング状ネットワークにおけるリング状ネットワークのデータ転送システムを提供することを目的としている。
【００１０】
【課題を解決するための手段】
上記目的を達成するために、本発明の請求項１に係るリング状ネットワークのデータ転送方式は、複数局がリング状ネットワークに接続され、且つ、前記リング状ネットワークに１つの伝送フレームを二周させて各局が一周目に伝送データを付加しこの付加した伝送データを二周目に削除することでデータ交換処理を完結させるようにしたリング状ネットワークのデータ転送方式において、前記伝送フレームは、当該伝送フレームに付加された伝送データで構成されるデータ部の総データ量を格納するデータ量格納領域を有し、前記各局は、一巡目の伝送フレームを受信したときに、前記データ量格納領域の総データ量に基づき前記データ部の末尾を検出してこの次に自己の伝送データを挿入すると共に前記総データ量に自己の伝送データ量を加算して転送し、二巡目の伝送フレームを受信したときに、前記伝送フレームのデータ部の先頭から、予め一巡目に挿入した自己の伝送データのデータ量に設定された削除すべきデータ量に相当するデータを削除して転送するようになっていることを特徴としている。
【００１１】
また、本発明の請求項２に係るリング状ネットワークのデータ転送方式は、複数局がリング状ネットワークに接続され、且つ、前記リング状ネットワークに１つの伝送フレームを二周させて各局が一周目に伝送データを付加しこの付加した伝送データを二周目に削除することでデータ交換処理を完結させるようにしたリング状ネットワークのデータ転送方式において、前記伝送フレームは、当該伝送フレームに付加された伝送データで構成されるデータ部の総データ量を格納するデータ量格納領域を有し、前記各局は、一巡目の伝送フレームを受信したときに、前記データ部の先頭に自己の伝送データを挿入すると共に前記総データ量に自己の伝送データ量を加算して転送し、二巡目の伝送フレームを受信したときに、前記データ量格納領域の総データ量を、当該総データ量から、予め一巡目に挿入した自己の伝送データのデータ量に設定された削除すべきデータ量を減算した減算値に更新すると共に、前記減算値に基づき自己が付加した伝送データの格納位置を検出し、当該格納位置から予め一巡目に挿入した自己の伝送データのデータ量に設定された削除すべきデータ量に相当するデータを削除して転送するようにしたことを特徴としている。
【００１２】
【発明の実施の形態】
以下に、本発明の実施の形態を説明する。
図１は、本発明の第１の実施の形態の概略構成を示すブロック図であり、複数、例えば３台の局Ａ〜Ｃが伝送路Ｔを介してリング状に接続されてリング状ネットワークを構築している。これら各局は、伝送フレームＦを介して他局データを収集するようになっている。
【００１３】
前記伝送フレームＦは、例えば図２に示すように構成されている。つまり、フレームの先頭を示すスタートデリミタ部ＳＤと、収集フレームのコードを表すフレーム識別部ＦＣと、後述のデータ部ＤＴの総データ量を格納するデータ量格納領域としてのトータルサイズ部ＴＳと、伝送フレームＦに付加された各局の局データからなるデータ部ＤＴと、フレームの検査を行うフレームチェックシーケンス部ＦＣＳと、フレームの終了を示すエンドデリミタ部ＥＤと、で構成されている。
【００１４】
そして、各局では、他局データを収集するときに伝送フレームＦを生成してこれを伝送路Ｔ上に送信し、この伝送フレームＦを受信した各局がこの伝送フレームＦに自局データを付加することにより、他局データを収集するようになっている。このとき、各局では一巡目の伝送フレームＦを受信したときに伝送フレームＦへの自局データを付加し、二巡目の伝送フレームＦを受信したときに伝送フレームＦから一巡目に付加した自局データを削除し、伝送フレームＦを生成した局は、伝送フレームＦが伝送路Ｔを二巡して戻ってきたときに、この伝送フレームＦを伝送路Ｔから除去するようになっている。
【００１５】
図３は、伝送フレームＦを生成するフレーム生成局での処理手順を示したものである。
フレーム生成局では、まず、ステップＳ１で、図２に示すフォーマットにしたがって、伝送フレームＦを生成する。そして、トータルサイズＴＳ（ｎ）の初期値としてＴＳ（０）を設定し、これを出力バッファに書き込む。そして、出力バッファに書き込まれた伝送フレームＦを下流側の伝送路Ｔを介して次の局に送信する。
【００１６】
次に、ステップＳ２に移行して、伝送フレームＦを受信したか否か、つまり、伝送路Ｔを一巡した伝送フレームＦを受信したか否かを判定し、伝送フレームＦを受信していないときにはこれを受信するまで待機し、受信したときにはステップＳ３に移行する。このステップＳ３では、送信データがあるか否かを判定し、送信データがあるときにはステップＳ４に移行して、送信すべきデータを出力バッファに書き込み、後述の伝送制御回路１０を制御して伝送フレームＦに自局データを付加しステップＳ５に移行する。一方、ステップＳ３で送信すべきデータがないときにはそのままステップＳ５に移行する。
【００１７】
このステップＳ５では、伝送制御回路１０を制御して伝送フレームＦを下流側の伝送路Ｔを介して次の局に送信し、次いで、ステップＳ６に移行して、受信バッファから伝送フレームＦに書き込まれている他局データを読み込む。
【００１８】
次いで、ステップＳ７で、伝送フレームＦを受信したか否か、つまり、伝送路Ｔを二巡した伝送フレームＦを受信したか否かを判定し、伝送フレームＦを受信していないときにはこれを受信するまで待機し、受信したときには、ステップＳ８に移行して、伝送制御回路１０を制御して伝送フレームＦを伝送路Ｔから削除し、処理を終了する。
【００１９】
一方、伝送フレームＦを受信するフレーム受信局は、図４に示すように、まず、ステップＳ１１で、伝送フレームＦを受信したか否か、つまり、一巡目の伝送フレームＦを受信したか否かを判定し、伝送フレームＦを受信していないときにはこれを受信するまで待機し、受信したときにはステップＳ１２に移行する。
【００２０】
このステップＳ１２では、送信すべき自局データを出力バッファに書き込み、伝送制御回路１０を制御して自局データを伝送フレームＦに付加し、これを下流側の伝送路Ｔを介して次の局に送信する（ステップＳ１３）。
【００２１】
次いで、ステップＳ１４に移行し、伝送フレームＦに付加されている他局データを読み込むか否かを判定し、読み込む場合にはステップＳ１５に移行して、受信バッファから、伝送フレームＦに書き込まれていた他局データを読み込みステップＳ１６に移行する。一方、前記ステップＳ１４で、他局データの読み込みを行わない場合には、そのままステップＳ１６に移行する。
【００２２】
このステップＳ１６では、伝送フレームＦを受信したか否か、つまり、二巡目の伝送フレームＦを受信したか否かを判定し、伝送フレームＦを受信していないときにはこれを受信するまで待機し、受信したときにはステップＳ１７に移行する。
【００２３】
このステップＳ１７では、伝送制御回路１０を制御して、一巡目の伝送フレームＦに付加した自局データを伝送フレームＦから除去し、これを下流側の伝送路Ｔを介して次の局に送信する（ステップＳ１８）。
【００２４】
次いで、ステップＳ１９に移行して、伝送フレームＦに付加されている他局データを読み込むか否かを判定し、読み込む場合にはステップＳ２０に移行して、受信バッファから伝送フレームＦに書き込まれていた他局データを読み込み処理を終了する。一方、ステップＳ１９で他局データを読み込まない場合には、そのまま処理を終了する。
【００２５】
前記伝送制御回路１０は、図５に示すデータ挿入回路１０ａ及び図６に示すデータ削除回路１０ｂとから構成されている。
前記データ挿入回路１０ａは、図５に示すように、入力側の伝送路Ｔに接続されて伝送フレームＦを受信する入力側信号線１１と、この入力側信号線１１に、遅延バッファ１２，切換回路１３及び１４を介して接続され他端が出力側の伝送路Ｔに接続された出力側信号線１５と、前記切換回路１３と１４との間に接続され、選択的に前記遅延バッファ１２及び出力側信号線１５と接続される例えばシフトレジスタ構成の出力バッファ１６と、前記入力側信号線１１とスイッチング回路１７を介して接続された、前記伝送フレームＦのデータサイズＴＳ（ｎ）を書き込むためのＴＳバッファ１８と、このＴＳバッファ１８の出力と送信する自局データのバイト数等のデータサイズとを加算する加算器１９と、を備えている。前記遅延バッファ１２の遅延時間は、ＴＳバッファ１８の出力と自局データバイト数とを加算器１９で演算する演算時間に基づいて設定されている。
【００２６】
また、データ挿入回路１０ａは、入力側信号線１１に接続されたフレーム検出回路２０を有し、さらに、切換回路１３と１４との間のスルー信号線２１にスイッチング回路２２を介して接続された受信バッファ２３を有する。
【００２７】
前記フレーム検出回路２０は、伝送フレームＦの先頭に位置するスタートデリミタ部ＳＤ及び末尾に位置するエンドデリミタ部ＥＤを抽出するもので、スタートデリミタ部ＳＤ及びエンドデリミタ部ＥＤの抽出は、予めスタートデリミタ部ＳＤ及びエンドデリミタ部ＥＤに特別な符号を持たせ、これを検出することにより行う。
【００２８】
また、このフレーム検出回路２０は、例えばＰＬＬ（フェイス  ロックド  ループ）回路を含んで構成され、例えば伝送フレームＦのスタートデリミタ部ＳＤの前に“１”“０”を繰り返す同期確立用のプリアンブル部を設け、このプリアンブル部を受信したときに、これに同期してバイト数単位のオンオフ信号を生成し、これを挿入カウンタ２５に出力する。
【００２９】
そして、この挿入カウンタ２５を制御して、フレーム検出回路２０は、切換回路１３及び１４，スイッチング回路１７，２２の切換を行う。すなわち、初期状態では、切換回路１３の接点ｔa と接点ｔb1とを接続し、切換回路１４の接点ｔa1と接点ｔb とを接続し、スイッチング回路１７及び２２を遮断状態に制御する。入力側信号線１１は、遅延バッファ１２，スルー信号線２１を介して出力側信号線１５と接続されるから、伝送フレームＦのスタートデリミタ部ＳＤ及びフレーム識別部ＦＣは、遅延バッファ１２，切換回路１３及び１４を介して出力側信号線１５に出力される。
【００３０】
次いで、予め設定されたスタートデリミタ部ＳＤ，フレーム識別部ＦＣ及びトータルサイズ部ＴＳのバイト数と遅延バッファ１２の遅延時間をもとにスタートデリミタ部ＳＤ及びフレーム識別部ＦＣを受信したことを検出したときスイッチング回路１７を接続状態にし、トータルサイズ部ＴＳを受信したことを検出したときスイッチング回路１７を遮断状態にする。そして、スタートデリミタ部ＳＤ及びフレーム識別部ＦＣが出力側信号線１５へ出力されたことを検出したとき切換回路１４の接点ｔa3と接点ｔb とを接続状態にする。スイッチング回路１７が接続状態に制御されるとフレーム識別部ＦＣの次に受信するトータルサイズ部ＴＳがＴＳバッファ１８に入力され、予め設定した自局が送信する自局データのデータサイズに応じたバイト数と、トータルサイズ部ＴＳに格納されているトータルサイズＴＳ（ｎ）とが加算器１９で加算されてこれが新たなトータルサイズ部ＴＳとして出力側信号線１５に出力される。
【００３１】
次いで、加算器１９からトータルサイズ部ＴＳが出力側信号線１５へ出力されたことを検出したとき切換回路１４の接点ｔa1と接点ｔb とを接続すると共に挿入カウンタ２５を起動し、さらに、スイッチング回路２２を接続状態にする。これにより、トータルサイズ部ＴＳに続いて受信するデータ部ＤＴつまり他局データが加算器１９からのトータルサイズ部ＴＳに続いて出力側信号線１５へ出力されると共に、スイッチング回路２２を介して受信バッファ２３に格納され、また、挿入カウンタ２５が起動してフレーム検出回路２０からのバイト数単位のオンオフ信号により減算を開始する。この挿入カウンタ２５には、ＴＳバッファ１６が保持するトータルサイズＴＳ（ｎ）が初期値としてロードされる。
【００３２】
そして、挿入カウンタ２５のカウント値が零となったとき、切換回路１３の接点ｔa とｔb2とを接続し、切換回路１４の接点ｔa2とｔb とを接続し、スイッチング回路２２を遮断状態にする。出力側信号線１５は出力バッファ１６の出力側と接続され、出力バッファ１６に予め書き込まれている自局データが出力され、また、スイッチング回路２２が遮断状態に制御されるから、受信バッファ２３へのデータの格納が中止される。そして、出力バッファ１６に書き込まれている自局データが出力されると共に、フレームチェックシーケンス部ＦＣＳ及びエンドデリミタ部ＥＤが遅延バッファ１２を介して出力バッファ１６に自局データに続いて格納され、自局データに続いて出力側信号線１５に出力される。
【００３３】
そして、フレーム検出回路２０でエンドデリミタＥＤを検出し、送信した自局データ数に応じたバイト数と、遅延バッファ１２の遅延時間とをもとにエンドデリミタＥＤが出力側信号線１５に出力されたことを検出したとき、切換回路１３の接点ｔa と接点ｔb1とを接続し、切換回路１４の接点ｔa1とｔb とを接続する。これにより、入力側信号線１１と出力側信号線１５とが遅延バッファ１２，スルー信号線２１を介して接続されて初期状態となる。
【００３４】
一方、前記データ削除回路１０ｂは、図６に示すように、前記入力側信号線１１が、切換回路３１及び３２を介して出力側信号線１５に接続され、また、切換回路３１と３２との間に遅延バッファ３３が接続され、切換回路３１及び３２を切り換えることにより、入力側信号線１１と出力側信号線１５とを直接接続、又は遅延バッファ３３を介して接続するようになっている。この遅延バッファ３３の遅延時間は、伝送フレームＦから削除すべき自局データのデータサイズに基づいて設定されている。
【００３５】
また、入力側信号線１１に、スイッチング回路３４を介して、伝送フレームＦのトータルサイズＴＳ（ｎ）を書き込むためのＴＳバッファ３５が接続され、ＴＳバッファ３５の出力側は、減算器３６に接続されている。この減算器３６は、ＴＳバッファ３５の出力から、自局で送信した自局データのデータサイズを減算し、切換回路３２を介して出力側信号線１５に出力するようになっている。
【００３６】
また、データ削除回路１０ｂは、入力側信号線１１に接続されたフレーム検出回路３７を有し、さらに、切換回路３１と３２とが直接接続されたスルー信号線３８にスイッチング回路３９を介して接続された受信バッファ４０を有する。
【００３７】
前記フレーム検出回路３７は、前記フレーム検出回路２０と同様に、伝送フレームＦの先頭に位置するスタートデリミタ部ＳＤ及び末尾に位置するエンドデリミタ部ＥＤを抽出し、また、バイト数単位のオンオフ信号を生成して、これを削除カウンタ４１に出力する。
【００３８】
また、フレーム検出回路３７は削除カウンタ４１を制御して、切換回路３１及び３２，スイッチング回路３４及び３９の制御を行う。すなわち、初期状態では、切換回路３１の接点ｔa と接点ｔb1とを接続し、切換回路３２の接点ｔa1と接点ｔb とを接続し、また、スイッチング回路３４及び３９を遮断状態にする。入力側信号線１１は、遅延バッファ３３を介して出力側信号線１５と接続されるから、伝送フレームＦのスタートデリミタ部ＳＤ及びフレーム識別部ＦＣは、切換回路３１，遅延バッファ３３，切換回路３２を介して出力側信号線１５に出力される。
【００３９】
次いで、予め設定されたスタートデリミタ部ＳＤ，フレーム識別部ＦＣ及びトータルサイズ部ＴＳのバイト数と遅延バッファ３３の遅延時間とをもとに、スタートデリミタ部ＳＤ及びフレーム識別部ＦＣを受信したことを検出したときスイッチング回路３４を接続状態にし、トータルサイズ部ＴＳを受信したことを検出したときスイッチング回路３４を遮断状態にする。また、スタートデリミタ部ＳＤ及びフレーム識別部ＦＣが出力側信号線１５へ出力されたことを検出したとき切換回路３２の接点ｔa3と接点ｔb とを接続する。これにより、スイッチング回路３４が接続状態に制御されるから、フレーム識別部ＦＣの次に受信するトータルサイズ部ＴＳがＴＳバッファ３５に入力され、トータルサイズ部ＴＳに格納されているトータルサイズＴＳ（ｎ）から、予め設定された自局が送信した自局データのデータサイズに応じたバイト数が減算されこれが新たなトータルサイズ部ＴＳとして、フレーム識別部ＦＣに続いて、切換回路３２を介して出力側信号線１５に出力される。
【００４０】
次いで、自局データのデータサイズをもとに伝送フレームＦの自局データを受信したことを検出したとき、切換回路３１の接点ｔa とｔb2とを接続し、減算器３６からトータルサイズ部ＴＳが出力側信号線１５へ出力されたことを検出したとき、切換回路３２の接点ｔa2と接点ｔb とを接続して、入力側信号線１１をスルー信号線３８を介して出力側信号線１５に接続する。ここで、上述のように、各局では一巡目の伝送フレームＦに自局データを付加し、二巡目の伝送フレームＦから付加した自局データを削除すると共に、データ挿入回路１０ａでは、自局データを他局データの後に挿入するようにしているから、伝送路Ｔを一巡して戻ってきた伝送フレームＦにおいて、自局データはデータ部ＤＴの先頭、つまり、トータルサイズ部ＴＳの直後に付加されていることになる。遅延バッファ３３の遅延時間は、自局データのデータサイズに応じて設定されているから、トータルサイズ部ＴＳの次に受信する自局データは遅延バッファ３３に格納される。よって、この状態で切換回路３１及び３２を切り換えると、自局データは遅延バッファ３３に取り残されることになって、自局データの次に送信される他局の局データはトータルサイズ部ＴＳに続いてスルー信号線３８を介して出力側信号線１５に出力され、すなわち、伝送フレームＦから自局データが削除されることになる。また、このとき、削除カウンタ４１を起動すると共にスイッチング回路３９を接続状態に制御する。これにより、削除カウンタ４１には、減算器３６で更新したトータルサイズ部ＴＳが初期値としてロードされ、フレーム検出回路３７からのバイト数単位のオンオフ信号に基づき減算する。この間、スルー信号線３８を通過する他局データがスイッチング回路３９を介して受信バッファ４０に格納される。
【００４１】
そして、削除カウンタ４１のカウント値が零となったとき、スイッチング回路３９を遮断状態に制御し、受信バッファ４０への他局データの格納を終了する。そして、他局データに続いてフレームチェックシーケンス部ＦＣＳ及びエンドデリミタ部ＥＤがスルー信号線３８を介して出力側信号線１５に出力される。
【００４２】
次いで、フレーム検出回路３７でエンドデリミタＥＤが出力側信号線１５に出力されたことを検出したとき、切換回路３１及び３２を切り換えて入力側信号線１１と出力側信号線１５とを遅延バッファ３３を介して接続し、初期状態にする。
【００４３】
次に、上記第１の実施の形態の動作を図７に基づいて説明する。
今、局Ａが、他局Ｂ及びＣが保持する局データを収集するものとすると、局Ａでは図２に示すフォーマットにしたがって、伝送フレームＦを生成し、図７（ａ）に示すように、トータルサイズＴＳ（ｎ）をＴＳ（０）として送信する（ステップＳ１）。
【００４４】
これを受信した局Ａの下流の局Ｂでは（ステップＳ１１）、送信すべき局データを出力バッファ１６に書き込み（ステップＳ１２）、データ挿入回路１０ａを駆動する（ステップＳ１３）。これにより、図７（ｂ）に示すように、スタートデリミタ部ＳＤ，フレーム識別部ＦＣに続いて、加算器１９から出力される自局の局データのバイト数例えばｂバイトが加算されたトータルサイズＴＳ（ｂ）からなるトータルサイズ部ＴＳが出力され、さらに出力バッファ１６に書き込んだ自局データＤＴ−Ｂが出力された後、フレームチェックシーケンス部ＦＣＳ及びエンドデリミタ部ＥＤが、出力側信号線１５に出力される。つまり、受信した伝送フレームＦに自局データＤＴ−Ｂが付加された伝送フレームＦが出力され、これが下流の局Ｃに出力される（ステップＳ１３）。
【００４５】
このとき、伝送フレームＦに他局データは付加されていないから、他局データの読み込みは行わない（ステップＳ１４，Ｓ１５）。
局Ｃでは、この伝送フレームＦを受信すると（ステップＳ１１）、同様にして、送信すべき局データを出力バッファ１６に書き込み（ステップＳ１２）、データ挿入回路１０ａを駆動する（ステップＳ１３）。これにより、図７（ｃ）に示すように、スタートデリミタ部ＳＤ，フレーム識別部ＦＣに続いて、加算器１９から出力される自局の局データのバイト数例えばｃバイトが加算されたトータルサイズＴＳ（ｂ＋ｃ）からなるトータルサイズ部ＴＳが出力され、さらに付加されている局データＤＴ−Ｂが出力された後、データ部ＤＴの先頭から更新前のトータルサイズＴＳ（ｂ）に相当するデータが出力された後、出力バッファ１６に書き込んだ自局データＤＴ−Ｃが出力され、続いてフレームチェックシーケンス部ＦＣＳ及びエンドデリミタ部ＥＤが、出力側信号線１５に出力される。よって、受信した伝送フレームＦのデータ部ＤＴの後部に自局データＤＴ−Ｃが挿入された伝送フレームＦが出力され、これが下流の局Ａに出力される（ステップＳ１３）。
【００４６】
このとき、必要であれば、受信バッファ２３に格納されている他局のデータ、つまり、局Ｂの局データＤＴ−Ｂを読み込む（ステップＳ１４，Ｓ１５）。
局Ａでは、伝送路Ｔを一巡して戻ってきた伝送フレームＦを受信すると（ステップＳ２）、他局に送信すべき局データがあるときには、局データを出力バッファ１６に書き込み（ステップＳ２）、データ挿入回路１０ａを駆動する（ステップＳ４）。これにより、図７（ｄ）に示すように、トータルサイズＴＳ（ｎ）として、自局の局データのバイト数例えばａバイトが加算されたＴＳ（ｂ＋ｃ＋ａ）が設定され、さらに、データ部ＤＴの先頭から、更新前のトータルサイズＴＳ（ｂ＋ｃ）に相当するデータが出力された後、出力バッファ１６に書き込んだ自局データＤＴ−Ａが出力され、局データＤＴ−Ｂ，ＤＴ−Ｃに続いてＤＴ−Ａが付加された伝送フレームＦが下流の局Ｂに送信される。
【００４７】
一方、局Ｂでは、二巡目の伝送フレームＦを受信すると（ステップＳ１６）、データ削除回路１０ｂを駆動し、受信したトータルサイズＴＳ（ｂ＋ｃ＋ａ）から、自局が付加した局データＤＴ−Ｂのデータサイズ、すなわち、ｂバイトを減算したトータルサイズＴＳ（ｃ＋ａ）を新たなトータルサイズとして設定し、データ部ＤＴの先頭から自局データのバイト数ｂ分のデータを削除して、伝送フレームＦを下流の局Ｃに出力する（ステップＳ１７，Ｓ１８）。
【００４８】
ここで、一巡目に伝送フレームＦのデータ部ＤＴの後部に局データを挿入するようにしているから、伝送路Ｔを一巡した伝送フレームＦのデータ部ＤＴには、図７（ｅ）に示すように、挿入した順に局データが付加されていることになる。したがって、伝送フレームＦに局データを付加した局が、局データを付加した順にデータ部ＤＴの先頭から付加した局データのバイト数分だけデータを削除すれば、すなわち、自局が付加した局データを削除することになる。したがって、局Ｂにより、局データＤＴ−Ｂが削除されて、図７（ｆ）に示すように、局データＤＴ−Ｃ及びＤＴ−Ａが付加された伝送フレームＦが局Ｃに送信される。
【００４９】
このとき、受信した伝送フレームＦ（図７（ｅ））には、他局データつまり、局データＤＴ−Ｃ及びＤＴ−Ａが付加されていて、これが受信バッファ４０に格納されているから、必要であれば、受信バッファ４０からこれらデータを読み込む（ステップＳ１９，Ｓ２０）。
【００５０】
局Ｃでも同様に、二巡目の伝送フレームＦを受信すると（ステップＳ１６）、データ削除回路１０ｂを駆動し、そのトータルサイズＴＳ（ｃ＋ａ）から、自局が付加した局データＤＴ−Ｃのデータサイズ、ｃバイトを減算して新たなトータルサイズＴＳ（ａ）として更新設定し、トータルサイズ部ＴＳの直後から自局データＤＴ−Ｃのバイト数ｃバイト数分のデータを削除し、図７（ｇ）に示すように、伝送フレームＦから局データＤＴ−Ｃが削除された伝送フレームＦを下流の局Ｃに出力する。
【００５１】
このとき、受信した伝送フレームＦ（図７（ｆ））には、他局データＤＴ−Ａが付加されているから、必要であれば、受信バッファ４０からこれを読み込む（ステップＳ１９，Ｓ２０）
この伝送路Ｔを二巡して戻ってきた伝送フレームＦを受信した局Ａでは、この伝送フレームＦを伝送路Ｔから削除し、これによって、局Ａにおける局Ｂ及びＣの局データの収集が終了する。
【００５２】
したがって、上述のように、伝送フレームＦを伝送するときに、予め各局の局データの格納位置或いはそのデータサイズの情報等を通知する必要がないから、ネットワークシステムにおける処理を削減することができ、ネットワーク上のデータ伝達を効率よく行うことができる。
【００５３】
また、データ部ＤＴのトータルサイズＴＳ（ｎ）と自局の局データのデータサイズとから自局データの格納すべき位置或いは格納されている位置を検出することができるから、リング状ネットワークを構築する局数が増減したり、また、局データのデータサイズが変化した場合でも、確実に自己の局データの格納すべき位置或いは格納されている位置を検出することができる。
【００５４】
次に、本発明の第２の実施の形態を説明する。
上記第１の実施の形態では、自局データを伝送フレームＦにおいてデータ部ＤＴの後部に挿入し、データ部ＤＴの先頭から削除するようにしているが、この第２の実施の形態では、データ部ＤＴの先頭に挿入し、データ部ＤＴの後部から削除するようにしている。前記切換回路，スイッチング回路及び各カウンタを駆動するタイミングが異なること以外は、上記第１の実施の形態と同様であるので、同一部の詳細な説明は省略する。
【００５５】
第２の実施の形態におけるデータ挿入回路１０ａでは、出力バッファ１６に格納された自局データをデータ部ＤＴの先頭に挿入する。
すなわち、フレーム検出回路２０では、初期状態では、切換回路１３及び１４をスルー信号線２１側に接続し、また、スイッチング回路１７及び２２を遮断状態に制御する。そして、スタートデリミタ部ＳＤ及びフレーム識別部ＦＣを出力側信号線１５へ出力し、また、フレーム識別部ＦＣを受信したこと検出したときスイッチング回路１７を接続状態にしてＴＳバッファ１８にトータルサイズ部ＴＳを格納し、格納後スイッチング回路１７を遮断状態にする。また、スタートデリミタ部ＳＤ及びフレーム識別部ＦＣが出力側信号線１５へ出力されたことを検出したとき、切換回路１４を切り換えて、加算器１９と出力側信号線１５とを接続し、加算器１９で、受信した伝送フレームＦのトータルサイズＴＳ（ｎ）に自局データバイト数を加算して更新したトータルサイズＴＳ（ｎ）を出力する。そして、加算器１９からトータルサイズ部ＴＳが出力側信号線１５へ出力されたことを検出したとき切換回路１４を切り換えて、出力バッファ１６に格納されている自局データを出力する。また、切換回路１３を切り換えてトータルサイズ部ＴＳに続いて入力されるデータを出力バッファ１６の自局データに続いて格納する。
【００５６】
そして、フレーム検出回路２０では、自局データのバイト数から、自局のデータが出力されたことを検出すると、挿入カウンタ２５を起動すると共に、スイッチング回路２２を接続状態にする。
【００５７】
これにより、自局データに続いて受信した伝送フレームＦのトータルサイズ部ＴＳ以後に付加されているデータが出力側信号線１５に出力されると共に、データ部ＤＴの他局データが受信バッファ２３に格納される。挿入カウンタ２５では、ＴＳバッファ１８で保持する更新前のトータルサイズＴＳ（ｎ）が初期値としてロードされ、カウント値が零となったとき、スイッチング回路２２を遮断状態にして受信バッファ２３への他局データの格納を中止する。
【００５８】
そして、フレーム検出回路２０でエンドデリミタＥＤを検出し、自局の送信データ数に応じたバイト数と、遅延バッファ１２の遅延時間とをもとにエンドデリミタＥＤが出力側信号線１５に出力されたことを検出したとき、切換回路１３及び１４が切り換えられて入力側信号線１１をスルー信号線２１を介して出力側信号線１５と接続し、初期状態となる。
【００５９】
一方、第２の実施の形態におけるデータ削除回路１０ｂでは、伝送フレームＦのデータ部ＤＴの後部から自局データを削除し、他局データを遅延バッファ３３の出力側から取り出すようになっている。
【００６０】
すなわち、フレーム検出回路３７は、初期状態では、切換回路３１及び３２を遅延バッファ３３側に切り換えて、伝送フレームＦのスタートデリミタ部ＳＤ及びフレーム識別部ＦＣを出力側信号線１５に出力し、フレーム識別部ＦＣを受信したことを検出したとき、スイッチング回路３４を接続状態に制御してフレーム識別部ＦＣの次に送信されるトータルサイズＴＳ（ｎ）をＴＳバッファ３５に格納する。そして、フレーム識別部ＦＣが出力側信号線１５に出力されたことを検出したとき切換回路３２を切り換えて、減算器３６と出力側信号線１５とを接続する。これにより伝送フレームＦで通知されてＴＳバッファ３５に格納されたトータルサイズＴＳ（ｎ）から、予め設定した削除すべき自局データのデータサイズが減算されて、これが新たなトータルサイズＴＳ（ｎ）として出力側信号線１５に出力される。
【００６１】
次いで、フレーム検出回路３７では、トータルサイズ部ＴＳが出力側信号線１５に出力されたことを検出したとき、切換回路３２を切り換えて遅延バッファ３３と出力側信号線１５とを接続し、遅延バッファ３３で遅延されたデータ部ＤＴに付加された他局データを出力側信号線１５に出力する。また、このとき、削除カウンタ４１を起動すると共にスイッチング回路３９を接続状態にし、遅延バッファ３３の出力側から他局データを受信バッファ４０に格納する。
【００６２】
そして、削除カウンタ４１では更新前のトータルサイズ部ＴＳが初期値としてロードされてこれをバイト数単位で減算し、カウント値が零となったとき、つまり、他局データを出力側信号線１５に出力しおえたとき、スイッチング回路３９を遮断状態にして受信バッファ４０への他局データの格納を中止すると共に、切換回路３１及び３２をスルー信号線３８側に切り換える。ここで、遅延バッファ３３の遅延時間は、削除すべき自局データのデータサイズに応じて設定されているから、他局データに続いて入力される自局データは、遅延バッファ３３に取り残されることになり、自局データの次に送信されるフレームチェックシーケンス部ＦＣＳ及びエンドデリミタ部ＥＤが、スルー信号線３８を介して出力側信号線１５に出力され、伝送フレームＦから自局データが削除されることになる。
【００６３】
そして、フレーム検出回路３７でエンドデリミタＥＤが検出されると、切換回路３１及び３２が切換えられて、入力側信号線１１と出力側信号線１５とが遅延バッファ３３を介して接続される初期状態となる。
【００６４】
次に、上記第２の実施の形態の動作を図８に基づいて説明する。
今、局Ａが、他局Ｂ及びＣが保持する局データを収集するものとすると、局Ａでは図２に示すフォーマットにしたがって、伝送フレームＦを生成し、図８（ａ）に示すように、トータルサイズＴＳ（ｎ）としてＴＳ（０）を設定して送信する（ステップＳ１）。
【００６５】
これを受信した局Ａの下流の局Ｂでは（ステップＳ１１）、送信すべき局データを出力バッファ１６に書き込み（ステップＳ１２）、データ挿入回路１０ａを駆動する（ステップＳ１３）。これにより、図８（ｂ）に示すように、受信した伝送フレームＦに自局データＤＴ−Ｂが付加された伝送フレームＦが出力され、これが下流の局Ｃに出力される（ステップＳ１３）。
【００６６】
局Ｃでは、この伝送フレームＦを受信すると（ステップＳ１１）、同様にして、送信すべき局データを出力バッファ１６に書き込み（ステップＳ１２）、データ挿入回路１０ａを駆動する（ステップＳ１３）。これにより、図８（ｃ）に示すように、スタートデリミタ部ＳＤ，フレーム識別部ＦＣに続いて、加算器１９から出力される自局の局データのバイト数例えばｃバイトが加算されたトータルサイズつまりＴＳ（ｂ＋ｃ）からなるトータルサイズ部ＴＳが出力され、トータルサイズ部ＴＳの直後、つまり、予め付加されていた局データＤＴ−Ｂの前に、出力バッファ１６に書き込んだ自局データＤＴ−Ｃが挿入されてこれが下流の局Ａに出力される（ステップＳ１３）。そして、必要であれば、受信バッファ２３に書き込まれた局Ｂの局データＤＴ−Ｂを読み込む。
【００６７】
局Ａでは、伝送路Ｔを一巡して戻ってきた伝送フレームＦを受信すると（ステップＳ２）、他局に送信すべき局データがあるときには、局データを出力バッファ１６に書き込み（ステップＳ２）、データ挿入回路１０ａを駆動する（ステップＳ４）。これにより、図８（ｄ）に示すように、トータルサイズＴＳ（ｎ）として、自局の局データのバイト数例えばａバイトが加算されたＴＳ（ｂ＋ｃ＋ａ）が設定され、さらに、トータルサイズ部ＴＳの直後に自局データＤＴ−Ａが挿入され、局データがＤＴ−Ａ，ＤＴ−Ｃ，ＤＴ−Ｂの順に付加された伝送フレームＦが下流の局Ｂに送信される。
【００６８】
局Ｂでは、二巡目の伝送フレームＦを受信すると（ステップＳ１６）、データ削除回路１０ｂを駆動し、受信したトータルサイズＴＳ（ｂ＋ｃ＋ａ）から、自局が付加した局データＤＴ−Ｂのデータサイズ、ｂバイトを減算したトータルサイズＴＳ（ｃ＋ａ）を新たなトータルサイズとして設定し、データ部ＤＴの先頭から、更新後のトータルサイズＴＳ（ｃ＋ａ）に相当するデータを出力し、これ以後のデータを、自局データのバイト数ｂ分削除して、伝送フレームＦを下流の局Ｃに出力する（ステップＳ１７，Ｓ１８）。
【００６９】
ここで、一巡目に伝送フレームＦのデータ部ＤＴの先頭に局データを挿入するようにしているから、伝送路Ｔを一巡した伝送フレームＦのデータ部ＤＴには、図８（ｅ）に示すように、後から挿入したものが先頭にくるように付加されていることになる。したがって、伝送フレームＦに局データを付加した局が、局データを付加した順に、データ部ＤＴの先頭から、データ部ＤＴに付加されている全体のトータルサイズＴＳ（ｎ）から自局で削除すべきデータサイズを減算したデータサイズに相当するデータを出力した後、次のデータから自局で削除すべきデータサイズ分のデータを削除すれば、これはすなわち、自局が付加した局データを削除することになる。したがって、データ部ＤＴの後部に付加されている局Ｂが付加した局データＤＴ−Ｂが削除されて、図８（ｆ）に示す伝送フレームＦが局Ｃに送信される。
【００７０】
局Ｃでも同様に、二巡目の伝送フレームＦを受信すると（ステップＳ１６）、データ削除回路１０ｂを駆動し、そのトータルサイズＴＳ（ｃ＋ａ）から、自局が付加した局データＤＴ−Ｃのデータサイズ、つまりｃバイトを減算して新たなトータルサイズＴＳ（ａ）として更新設定し、トータルサイズ部ＴＳの直後から更新後のトータルサイズＴＳ（ａ）に相当するデータを出力した後、これ以後の自局データＤＴ−Ｃのバイト数ｃバイト数分のデータを削除し、図８（ｇ）に示すように、伝送フレームＦから局データＤＴ−Ｃが削除された伝送フレームＦを下流の局Ｃに出力する。
【００７１】
そして、この伝送路Ｔを二巡して戻ってきた伝送フレームＦを受信した局Ａでは、この伝送フレームＦを伝送路Ｔから削除し、これによって、局Ａにおける局Ｂ及びＣの局データの収集が終了する。
【００７２】
したがって、この第２の実施の形態においても、上記第１の実施の形態と同等の作用効果を得ることができる。
なお、上記第１及び第２の実施の形態においては、データサイズの単位としてバイトを用いた場合について説明したが、これに限らず任意に設定することができ、例えばビット単位、或いはワード単位でもよい。
【００７３】
また、上記各実施の形態においては、フレーム生成局では、伝送フレーム生成時に自局データを付加せずに送信するようにした場合について説明したが、伝送フレーム生成時に、自局データを付加して送信するようにしてもよく、この場合には、伝送フレーム生成局では、伝送フレームＦが伝送路Ｔを一巡して戻ってきたときに、自局データを削除するようにすればよい。
【００７４】
また、上記各実施の形態においては、フレーム受信局では一巡目の伝送フレームＦを受信したとき、局データを付加するようにした場合について説明したが、送信すべき局データがない場合には付加しなくてよく、この場合には、二巡目の伝送フレームＦを受信したときには、局データの削除を行う必要がなくそのまま下流の局に中継すればよい。
【００７５】
また、上記各実施の形態においては、説明を簡易化するためにネットワークを構成する装置数が少ない場合について説明したが、これに限定されるものではなく、任意数の装置をネットワークに接続することができる。また、局Ａがフレーム生成局となる場合について説明したが、これに限らず、何れの局でもフレーム生成局になることができる。
【００７６】
また、上記各実施の形態においては、各局において他局データを読み取るようにした場合について説明したが、例えばフレーム生成局のみがデータを読み取る場合には、フレーム生成局を除く各局のデータ挿入回路及びデータ削除回路に、受信バッファを設ける必要はない。
【００７７】
さらに、上記各実施の形態においては、データ挿入回路及びデータ削除回路を電子回路を組み合わせて構成した場合について説明したが、これに限るものではなく、マイクロコンピュータで構築するようにしてもよい。
【００７８】
【発明の効果】
以上説明したように、本発明の請求項１に係るリング状ネットワークのデータ転送方式によれば、伝送フレームに、この伝送フレームに付加された伝送データで構成されるデータ部の総データ量を格納するデータ量格納領域を設け、各局が、一巡目の伝送フレームを受信したときに、データ量格納領域の総データ量に基づき前記データ部の末尾位置を検出してこの次に自己の伝送データを挿入すると共にデータ量格納領域の総データ量に自己の伝送データ量を加算して転送し、二巡目の伝送フレームを受信したときに、データ部の先頭から、予め一巡目に挿入した自己の伝送データのデータ量に設定された削除すべきデータ量に相当するデータを削除して転送するようにしたから、予め各局にデータの格納位置或いは削除位置を通知する必要がなく、その分ネットワークシステムの伝送効率を向上させることができ、また、システム構成が変化した場合でも容易に対処することができる。
【００７９】
また、請求項２に係るリング状ネットワークのデータ転送方式によれば、伝送フレームに、この伝送フレームに付加された伝送データで構成されるデータ部の総データ量を格納するデータ量格納領域を設け、各局が、一巡目の伝送フレームを受信したときに、データ部の先頭に自己の伝送データを挿入すると共に総データ量に自己の伝送データ量を加算して転送し、二巡目の伝送フレームを受信したときに、データ量格納領域の総データ量を、総データ量から、予め一巡目に挿入した自己の伝送データのデータ量に設定された削除すべきデータ量を減算した減算値に更新すると共に、この減算値に基づき自己が付加した伝送データの格納位置を検出し、予め一巡目に挿入した自己の伝送データに設定された削除すべきデータ量に相当するデータを削除するようにしたから、予め各局にデータの格納位置或いは削除位置を通知する必要がなく、その分ネットワークシステムの伝送効率を向上させることができ、また、システム構成が変化した場合でも容易に対処することができる。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態を示す概略構成図である。
【図２】伝送フレームＦの一例を示す構成図である。
【図３】フレーム生成局の処理手順の一例を示すフローチャートである。
【図４】フレーム受信局の処理手順の一例を示すフローチャートである。
【図５】データ挿入回路の一例を示すブロック図である。
【図６】データ削除回路の一例を示すブロック図である。
【図７】第１の実施の形態における伝送フレームの変化状況を示す説明図である。
【図８】第２の実施の形態における伝送フレームの変化状況を示す説明図である。
【符号の説明】
Ａ〜Ｃ  局
Ｔ  伝送路
１０  伝送制御回路
１０ａ  データ挿入回路
１０ｂ  データ削除回路
１９  加算器
２５  挿入カウンタ
３６  減算器
４１  削除カウンタ
１２，３３  遅延バッファ
１７，３５  ＴＳバッファ
２０，３７  フレーム検出回路
【図１】
0003713949.tif 000002
【図２】
0003713949.tif 000003
【図３】
0003713949.tif 000004
【図４】
0003713949.tif 000005
【図５】
0003713949.tif 000006
【図６】
0003713949.tif 000007
【図７】
0003713949.tif 000008
【図８】
0003713949.tif 000009