(57)【特許請求の範囲】
【請求項１】
複数の入力回線と、この複数の入力回線毎にそれぞれ設けられた複数のバッファ部と、この複数のバッファ部から同一出力回線に向け送出されるセルの競合調停を行う手段とを備え、
この競合調停を行う手段は、前記複数のバッファ部のセル送出要求の有無をリングアービタを巡回させて問い合わせる手段を備え、
この問い合わせる手段は、リングアービタが一巡する間に前記複数のバッファ部のセル送出要求のいずれか一つを受け付ける手段を含む
競合制御回路において、
前記問い合わせる手段は、巡回周期の等しい複数のリングアービタを同時に巡回させる手段を備え、
前記複数のリングアービタの巡回開始点および巡回終了点はそれぞれ相互に重なることなく設定され、１セル時間毎にいずれかのリングアービタの巡回開始点および巡回終了点が含まれる
ことを特徴とする競合制御回路。
【請求項２】
複数の入力回線と、この複数の入力回線毎にそれぞれ設けられた複数のバッファ部と、この複数のバッファ部から同一出力回線に向け送出されるセルの競合調停を行う手段とを備え、
この競合調停を行う手段は、前記複数のバッファ部のセル送出要求の有無をリングアービタを巡回させて問い合わせる手段を備え、
この問い合わせる手段は、リングアービタが一巡する間に前記複数のバッファ部のセル送出要求のいずれか一つを受け付ける手段を含む
競合制御回路において、
前記問い合わせる手段は、巡回開始点および巡回終了点はそれぞれ相互に重なることなく、かつその巡回周期が等しい複数のリングアービタを同じセル期間に同時に巡回させる手段を備え、
一つの前記バッファ部のセル送出要求は、リングアービタの１巡回周期につき一回に限定された
ことを特徴とする競合制御回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はＡＴＭ（Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｔｒａｎｓｆｅｒ  Ｍｏｄｅ：非同期転送モード）に利用する。本発明はＡＴＭに用いるセルの出力回線への読み出し競合制御に利用するものであるが、ＡＴＭ以外のパケット通信に利用することもできる。
【０００２】
【従来の技術】
従来の競合制御回路を図６および図７を参照して説明する。図６は従来の競合制御回路の全体構成図である。図７は従来の競合制御アクセス部の要部ブロック構成図である。図６に示すように、入力回線毎に、バッファ部、競合制御アクセス部を備え、すべての入力回線に対し、１つのリングアービタ装置を備えている。
【０００３】
図７に示す競合制御アクセス部では、バッファ部にセルが蓄積されていれば、リクエスト要求部２０がＲＥＱをリングアービタ装置Ｒに送出する。従来の競合制御回路では、リングアービタ装置Ｒが、セルの出力要求を出している競合制御アクセス部Ａ１〜ＡＮをリング状にサーチし、出力要求を最初に見つけた時点で、その出力要求を出している競合制御アクセス部のＡＣＫ受信部２１とセル読み出し命令部２２とを介してバッファ部にセルの送出許可を与える。次のセル時間後に、許可を与えたバッファ部の次のバッファ部をリングのスタート地点としてサーチを開始する。
【０００４】
このような競合制御をリングアービトレーションといい、各バッファ部のセル送出要求をリング状にサーチするための制御信号をリングアービタという。したがって、各セル時間毎にセルを必ず送出させるためには、サーチが最も長い場合でも、１セル時間以内に同一出力回線に属するすべてのバッファ部間にリングアービタを巡回させる必要が生じる。
【０００５】
【発明が解決しようとする課題】
しかしながら、入力回線数が増加すると、すべてのバッファ部間にリングアービタを巡回させる必要が生じるため、１セル時間以内に競合制御が終了しない場合が考えられる。図８は従来のリングアービトレーションを説明するための図であるが、図８に示すように、競合制御時間に２セル〜３セル時間要したとすると、３セル時間に１セルしか、セルを出力回線に送出することができない。したがって、競合制御が１セル時間以上要する場合に、出力回線のスループットが低下してしまう。
【０００６】
このように、リングアービトレーションを用いた従来の競合制御回路では、入力回線数が増加すると、リングアービタの巡回周期が長くなるため、競合制御に１セル時間以上要すると、出力回線のスループットが低下する。したがって、特殊な実装やデバイスを用いて競合制御回路を高速化し、リングアービタの巡回周期を短くしない限り、スループットを向上できないという問題がある。
【０００７】
本発明は、このような背景に行われたものであり、リングアービトレーションを用いながら入力回線が増加しても、出力回線のスループットが低下しない競合制御回路を提供することを目的とする。
【０００８】
【課題を解決するための手段】
本発明は、複数のリングアービタ装置を備えており、複数のリングアービタを時間差を設けて動作させることにより、各セル時間毎にセルを出力回線へ出力させるための許可を与える競合制御を実現することを最も主要な特徴とする。
【０００９】
すなわち、本発明は、複数の入力回線と、この複数の入力回線毎にそれぞれ設けられた複数のバッファ部と、この複数のバッファ部から同一出力回線に向け送出されるセルの競合調停を行う手段とを備え、この競合調停を行う手段は、前記複数のバッファ部のセル送出要求の有無をリングアービタを巡回させて問い合わせる手段を備え、この問い合わせる手段は、リングアービタが一巡する間に前記複数のバッファ部のセル送出要求のいずれか一つを受け付ける手段を含む競合制御回路である。
【００１０】
ここで、本発明の特徴とするところは、前記問い合わせる手段は、巡回周期の等しい複数のリングアービタを同時に巡回させる手段を備えたところにある。
【００１１】
これにより、複数の入力回線を複数のリングアービタに振り分け、入力回線の各グループ毎に個別に競合制御を行うことができるため、全ての入力回線を一つのリングアービタにより競合調停する場合に比べて効率の良い競合調停を行うことができる。
【００１２】
このとき、前記複数のリングアービタの巡回開始点および巡回終了点はそれぞれ相互に重なることなく設定され、１セル時間毎にいずれかのリングアービタの巡回開始点および巡回終了点が含まれることが望ましい。
【００１３】
これにより、各リングアービタの巡回周期が１セル時間以上であったとしても、全体として、１セル時間毎にセルを送出させることができる。したがって、効率の良いセル転送を実現することができる。
【００１４】
また、一つの前記バッファ部のセル送出要求は、リングアービタの１巡回周期につき一回に限定されることが望ましい。
【００１５】
これにより、複数のリングアービタにより、一つのセルに重複して送出許可を与えるといった不都合を回避することができる。
【００１６】
【発明の実施の形態】
本発明実施例の構成を図１および図５を参照して説明する。図１は本発明実施例の競合制御回路の全体構成図である。図５は本発明実施例のリングアービトレーションを説明するための図である。
【００１７】
本発明は、図１に示すように、複数の入力回線＃１〜＃Ｎと、この複数の入力回線＃１〜＃Ｎ毎にそれぞれ設けられた複数のバッファ部Ｂ１〜ＢＮと、この複数のバッファ部Ｂ１〜ＢＮから同一出力回線ＯＵＴに向け送出されるセルの競合調停を行う手段としての競合制御アクセス部Ａ１〜ＡＮとを備え、この競合制御アクセス部Ａ１〜ＡＮは、バッファ部Ｂ１〜ＢＮのセル送出要求の有無をリングアービタを巡回させて問い合わせる手段としての第一〜第三リングアービタ装置Ｒ１〜Ｒ３を備え、この第一〜第三リングアービタ装置Ｒ１〜Ｒ３は、リングアービタが一巡する間にバッファ部Ｂ１〜ＢＮのセル送出要求のいずれか一つを受け付ける競合制御回路である。
【００１８】
ここで、本発明の特徴とするところは、第一〜第三リングアービタ装置Ｒ１〜Ｒ３は、図５に示すように、巡回周期の等しい複数のリングアービタを同時に巡回させるところにある。
【００１９】
図５に示すように、複数のリングアービタの巡回開始点および巡回終了点はそれぞれ相互に重なることなく設定され、１セル時間毎にいずれかのリングアービタの巡回開始点および巡回終了点が含まれる。また、一つのバッファ部Ｂ１〜ＢＮのセル送出要求は、リングアービタの１巡回周期につき一回に限定される。
【００２０】
次に、本発明実施例の動作を図１〜図５を参照して説明する。図２は本発明実施例の競合制御アクセス部の要部ブロック構成図である。図３および図４は本発明実施例の競合制御アクセス部の動作を示すフローチャートである。
【００２１】
図１に示すように、第一リングアービタ装置Ｒ１、第二リングアービタ装置Ｒ２、第三リングアービタ装置Ｒ３の三つのリングアービタ装置は各競合制御アクセス部Ａ１〜ＡＮに接続されている。図２に示すように、競合制御アクセス部Ａ１〜ＡＮでは、バッファ部Ｂ１〜ＢＮにセルが蓄積されていると、リクエスト通知をリクエスト要求制御部１０に出す。リクエスト要求制御部１０では、図３および図４に示したアルゴリズムにより、条件が合えば第一〜第三リクエスト要求部１１〜１３のいずれかを選択し、ＲＥＱを第一〜第三リングアービタ装置Ｒ１〜Ｒ３に送出する。
【００２２】
ここで、図３に示したアルゴリズムを説明する。図３では、一般化するために、リングアービタ装置がＱ個の場合を示している。図１、図２では、Ｑ＝３のときであるが、リングアービタ装置の個数は、３個は一例である。１つのリングアービタ装置の動作する所要時間が、Ｑ−１セル時間〜Ｑセル時間の間の場合には、最低Ｑ個のリングアービタ装置があると、各セル時間毎にセルを出力回線へ送出するための許可信号を与えることができる。本発明実施例では、一つのリングアービタ装置の動作する所要時間が、Ｑ−１セル時間〜Ｑセル時間の間であるとしている。
【００２３】
初期値として、ＲＥＱ送出待機カウンタ値ｑをｑ＝０とする。セル時間毎に動作し、ある時点になると、第ｉ（ｉは、一、二、三のいずれか）リクエスト要求部がバッファ部からリクエスト通知を受信したかを判断する。もし、リクエスト通知を受信しておりこのとき、ｑ＝０であれば、第ｉリクエスト要求部が第ｉリングアービタ装置へＲＥＱを送出する。ここで、ｑ＝Ｑとし、ｉ＝ｉ＋１とすることにより、次回のリクエスト要求は異なるリングアービタ装置に送出される。このような手順を複数の競合アクセス制御部がそれぞれ実行することにより、一つのリングアービタ装置に負荷が偏ることを回避することができる。また、もし、ｉ＞Ｑであれば、ｉ＝１とする。リクエスト通知を受信しなかったり、ｑ＝０でないならば、上記のステップはスキップする。次に、ｑ＝ｑ−１として、更新されたｑの値と０とを比較して大きい値をｑとする。したがって、常にｑは０以上Ｑ以下の値である。次のセル周期に、同様の動作を繰り返す。
【００２４】
また、図４の例では、第ｉリクエスト要求部が第ｉリングアービタ装置へＲＥＱを送出し、ｑ＝Ｑとし、このとき、第ｉリングアービタ装置からのＡＣＫが返送されてきたら、ｉ＝ｉ＋１とする。もし、第ｉリングアービタ装置からのＡＣＫが返送されてこなければ、再度、ｉ＝ｉとする。このように、ＡＣＫが返送されてきたら、ｉ＝ｉ＋１とすることにより、次回のリクエスト要求は異なるリングアービタ装置に送出される。他の動作は、図３の例と同様である。
【００２５】
上記の動作は、ＲＥＱをあるリクエスト要求部に送出すれば、それからＱセル時間経過しないと、次のリクエスト要求部に送出できないようになっている。これにより、Ｑセル時間に最大１回しかＲＥＱを送出できない。これにより、同じセルが、ＡＣＫを受信する前に、二つのリングアービタ装置にＲＥＱを出していて、二つのリングアービタ装置が動作していることはない。したがって、ＡＣＫを二つのリングアービタ装置から受信することを防いでいる。
【００２６】
図５は、各リングアービタ装置がそれぞれの巡回開始点および巡回終了点をずらしながら動作をしている様子を示している。このように、一つのリングアービタ装置の動作する所要時間が、Ｑ−１セル時間〜Ｑセル時間の間である場合でも、各セル時間毎にセルに出力回線への出力許可信号を与えることができる。したがって、出力回線のスループットが低下しない。
【００２７】
【発明の効果】
以上説明したように、本発明によれば、リングアービトレーションを用いながら入力回線が増加しても、出力回線のスループットが低下しない競合制御を実現することができる。
【図面の簡単な説明】
【図１】本発明実施例の競合制御回路の全体構成図。
【図２】本発明実施例の競合制御アクセス部の要部ブロック構成図。
【図３】本発明実施例の競合制御アクセス部の動作を示すフローチャート。
【図４】本発明実施例の競合制御アクセス部の動作を示すフローチャート。
【図５】本発明実施例のリングアービトレーションを説明するための図。
【図６】従来の競合制御回路の全体構成図。
【図７】従来の競合制御アクセス部の要部ブロック構成図。
【図８】従来のリングアービトレーションを説明するための図。
【符号の説明】
１０  リクエスト要求制御部
１１  第一リクエスト要求部
１２  第二リクエスト要求部
１３  第三リクエスト要求部
２０  リクエスト要求部
２１  ＡＣＫ受信部
２２  セル読み出し命令部
Ａ１〜ＡＮ  競合制御アクセス部
Ｂ１〜ＢＮ  バッファ部
Ｒ  リングアービタ装置
Ｒ１  第一リングアービタ装置
Ｒ２  第二リングアービタ装置
Ｒ３  第三リングアービタ装置
＃１〜＃Ｎ  入力回線
ＯＵＴ  出力回線
【図１】
0003595194.tif 000002
【図２】
0003595194.tif 000003
【図３】
0003595194.tif 000004
【図４】
0003595194.tif 000005
【図５】
0003595194.tif 000006
【図６】
0003595194.tif 000007
【図７】
0003595194.tif 000008
【図８】
0003595194.tif 000009