(57)【特許請求の範囲】
【請求項１】
速度に選択可能な粒度を有する、非同期伝送通信セルを転送装置によって転送する方法であって、
転送装置の１つのブロック（ＳＢ）に対して１つのカウンタ（ＦＤ）を分配装置（ＳＢＳ）によって設け、
取り決められた通信セル速度に等しい速度パラメータを、転送装置のカウンタ（ＦＤ）によって設定し、
該速度パラメータは動作時にはカウンタ状態に等しく、
前記カウンタ（ＦＤ）がブロック（ＳＢ）に対して所定のカウンタ状態に達するときに通信セルを分配装置（ＳＢＳ）によって出力線路（ＯＬ）へ転送し、
通信セルが分配装置（ＳＢＳ）によって出力線路（ＯＬ）に転送された場合、変数Ｎservｆｒａｃの値をカウンタ（ＦＤ）によって、Ｔservｆｒａｃ Modulo ２zと同じ値だけ高め、
・ここでＮservｆｒａｃは、速度パラメータの端数成分の瞬時和であり、
・Ｔservｆｒａｃは、速度パラメータの端数成分であり、
・ｚは、１／パーセント粒度のｌｄ（２進対数）によって与えられるビット数であり、
・粒度とは、伝送される通信セルの速度のステップ幅であり、
変数Ｎservｆｒａｃが高められるときに変数Ｎservｆｒａｃの値領域を越えると、カウンタ（ＦＤ）に供給されるクロック信号の１周期を抑圧し、
当該抑圧は、出力線路（ＯＬ）に転送すべき通信セルのデータ速度の粒度を高めるため、カウンタ（ＦＤ）に印加されるフラグ信号によって行う、
ことを特徴とする転送方法。
【請求項２】
速度に選択可能な粒度を有する非同期伝送通信セルを、インターフェース（ＩＦ）に接続された入力線路（ＩＬ）と出力線路（ＯＬ）との間で転送する装置において、
ａ）デマルチプレクサ（ＤＭＵＸ）を有し、該デマルチプレクサは入力線路（ＩＬ）から供給された通信セルを分配し、
ｂ）複数のブロック（ＳＢ０...ＳＢｎ）を有し、当該ブロックは通信セルを中間記憶し、
ｃ）各ブロック（ＳＢ）ごとにカウンタ（ＦＤ）を有し、
該カウンタは、その周期が通信セルサイクルに相応するクロック信号によりクロック制御され、
該カウンタには、取り決められた通信セル速度に等しい速度パラメータがセットされ、該速度パラメータは動作時にはカウンタ状態に相当し、
該カウンタは変数Ｎservｆｒａｃを、粒度と転送された通信セルに依存してカウントアップし、
該変数Ｎservｆｒａｃがカウントアップされ、当該変数Ｎservｆｒａｃの値領域を越えると、カウンタ（ＦＤ）に供給されるクロック信号の１周期が抑圧され、
当該抑圧は、出力線路（ＯＬ）に転送すべき通信セルのデータ速度の粒度を高めるため、カウンタ（ＦＤ）に印加されるフラグ信号によって行われ、
ｄ）分配装置（ＳＢＳ）を有し、該分配装置にカウンタ（ＦＤ０...ＦＤｎ）と優先度設定装置（ＰＥ）が設けられており、
該分配装置は通信セルを出力線路（ＯＬ）に転送し、
ｅ）前記優先度設定装置（ＰＥ）は、ちょうど１つのブロック（ＳＢ）を通信セルの転送のために、各通信セルサイクルごとに選択する、
ことを特徴とする転送装置。
【発明の詳細な説明】
本発明は、請求項１による、速度に選択可能な粒度を有する、非同期伝送通信セルの転送方法および転送装置に関する。
分周器として使用するカウンタによって割合を検出することは全く一般的に行われている。後続のインターフェースで、全体で使用できる通信セル速度のうち、１つのブロックに対し取り決められた通信セル速度を割り当てるためにカウンタを設け、このカウンタが通信セル速度のクロックでクロック制御され、前記ブロックに対して取り決められた通信セル速度に相応するカウンタ状態に達するときに、通信セルの転送のための状態識別子を出力することは当然に思いつくことである。ここでは、取り決められた通信セル速度の増大と共に、調整可能なステップ幅（専門的には粒度と表現される）も増大して粗くなる（分周比1,2,3,4...）。
所定のインターフェースＩＦを介して、所定の速度でデータないし通信セルを伝送することができる。典型的にはこのインターフェースＩＦと接続された伝送装置はブロックに分割されている。従ってインターフェースＩＦが全体で使用可能な通信セル速度は、各ブロックごとに１つの通信セル速度が取り決められるように分割される。このブロックのカウンタは、通信セル速度の達した時に状態識別子を出力する機能を有する。これはこの通信セルをインターフェースＩＦを介して伝送するためである。速度をカウンタ状態指示子として使用することは、通信セル速度がブロックのクロック信号に反比例し、個々の通信セル速度の和がインターフェースの通信セル速度を形成するので有利である。
ＥＰ０７１００４６から、ＡＴＭセルスケジューラが公知である。ここでは、通信セルからなる各データ流に対して別個の待ち行列が設けられている。種々異なる速度パラメータを有するデータ流を転送するためにこのスケジューラは、通信セルを収容するためのセグメントを備えた複数のディスク（タイミングホイール）を有している。ここでディスクは速度パラメータの種々の領域に対して設けられており、所属のカウンタの程度に応じて種々異なる速度で回転する。取り決められた通信セル速度と全体で使用できる通信セル速度との関係に依存して粒度が偏差するという問題は、この解決手段では、異なる周波数のクロック信号により駆動されるカウンタを制御するタイミングホイールによって行われる。
ＵＳ５５７０３６０から、デジタル転送装置（スイッチ）が公知である。ここでは各仮想接続の通信セルに対して別個の待ち行列が設けられており、取り決められた最小のパラメータと一致する通信セルに対して通信セルがいずれの場合でも所属の待ち行列から転送される。
本発明の課題は、取り決められた通信セル速度が全体通信セル速度において大きい場合でも、１つの周波数のクロック信号を用い、所定のステップ幅を維持できる方法を提供することである。
本発明の対象は、ブロックに対して取り決められた通信セル速度が全体通信セル速度において大きな割合である場合でも、ブロックが実際にサービスされる通信セル速度を取り決められた通信セル速度に密に適合できる。
本発明を以下、理解に必要な範囲で実施例として図面に基づいて説明する。
図１は、通信セル処理のための公知の基本図、
図２は、図１にＳＢＳと示されたユニットの詳細図、
図３は、図１にＦＤと示されたユニットの詳細図、
図４は、ユニットＦＤの別の構成図、
図５は、ユニットＦＤの別の構成図、
図６は、ユニットＦＤの別の構成図である。
図１の転送装置では、転送のため出力線路ＯＬ（Output Line）を介して定められる通信セルが、ブロックＳＢ０..ＳＢｎ（例えば６４ブロック）に待ち行列として編成されて中間記憶される。通信セルは固定長を有し、非同期伝送、例えばＡＴＭ（非同期伝送モード）伝送に従って仮想接続列で転送される。それぞれのブロックに供給される通信セルは入力線路ＩＬ（Input Line）で入力され、デマルチプレクサＤＭＵＸ（Demultiplexer）で所属の仮想接続の尺度に従ってそれぞれのブロックに供給することができる。分配装置ＳＢＳ（Scheduler Block Scheduler）はブロック、権限をそれぞれの通信セルの転送のためにインターフェースＩＦ（Interface）に分配する。
転送された通信セルが線路を占有している間の時間Ｔcellが通信セルサイクルを設定する。通信セルサイクルは通信セルクロックＣＣｌｋ（Cell Clock）の周期と同じである。分配装置は、各通信セルサイクル毎に、どのブロックが通信セルを転送するか検出する。分配装置は、各ブロック毎にカウンタＦＤ０..ＦＤｎを有する。カウンタの入力側には通信セルクロックが供給される。カウンタは、所属のブロックに対して取り決められた通信セル速度に相応するカウンタ状態に達するとき、状態識別子を優先度設定装置ＰＥ（Priority Encoder）に送出する。優先度設定装置は、ちょうど状態識別子のセットされたブロックの中から、個々のブロックに配属された優先度に従って１つのブロックを選択し、このブロックに通信セルを転送するための権限を割り当てる。優先度設定装置は各通信セルサイクルにおいて、カウンタをセットされた状態識別子について、いわゆるラウンドロビン方式にしたがって探索することができる。
図２のカウンタは、所定の通信セル速度を調整することができる。このために通信セルクロックが速度カウンタ（カウンタｋビット）によって所定の値で分周される。この分周器の大きさは、調整すべき最小通信セル速度Ｒminによって定められる。レジスタ（速度パラメータ）には速度パラメータＴserv＝1./.Ｒservがファイルされている。速度カウンタにはＲservがロードされ、そのカウンタ値が各通信セルサイクルによって１だけ低減される。カウンタ状態が値０に達すると、カウンタには新たにロードされ、フリップフロップＦＦの出力側には状態識別子（フラグ）がセットされる。これは通信セルを所属のブロックから読み出すことができることを指示するためである。このブロックに対する通信セルが読み出されたなら、このフラグはリセットされる。通信セル速度（サービス速度）はＲserv＝１／（Ｔserv×Ｔcell）により得られる。
ここで、
ＣＣｌｋ：通信セルクロック
Ｔcell：通信セルサイクル
Ｔserv：速度パラメータ
Ｒserv：通信セル速度
である。
通信セル速度が上昇すると、調整可能なステップ幅（専門用語では粒度と称される）がますます粗くなる（分周比１，２，３，４...）。
図３の端数分周器に対しては２つの変数が記憶される。
Ｔservｆｒａｃ：速度パラメータの端数成分（ｚビット）、
Ｎservｆｒａｃ：速度パラメータの端数成分の瞬時和（ｚビット）、
Ｔservｃｏｕｎｔ：速度パラメータの整数（カウンタ）成分（ｋビット）、
Ｎservｃｏｕｎｔ：速度パラメータの端数成分の瞬時カウンタ状態（ｋビット）。
端数成分の計算は、ローカルで相応のブロックにて書くカウンタの通過時に行うか、または中央で（テーブルの変数）それぞれこのブロックからの読み出しの際に行われる。
アルゴリズムは次のとおりである。
if（Ｎservｃｏｕｎｔ＝０／Block was served）
then  Ｎservｆｒａｃ＝Ｎservｆｒａｃ＋Ｔservｆｒａｃ  modulo  ２z
if（Ｎservｆｒａｃがオーバーフロー）then
フラグセット“supressure one clk”
このアルゴリズムの意味するのは次のとおりである；速度パラメータの端数成分の瞬時カウンタ状態が０であれば、通信セルを所属のブロックから読出すことができる。その結果、速度パラメータの端数成分の瞬時和Ｎservｆｒａｃはモジューロ２zだけ高められる。速度パラメータの端数成分の瞬時和Ｎservｆｒａｃが上昇することによりＮservｆｒａｃに対する値領域を上回ると、カウンタに供給されるクロック信号が１周期抑圧される、ということである。
次の通信セルサイクルでは、状態識別子フラグがリセットされ、この通信セルサイクルに対する計数が中断される。
従って速度は次式から得られる。
Ｒserv＝１／[(Ｔservｃｏｕｎｔ＋Ｔservｆｒａｃ＊Ｔcell)]
ｚ＝ｌｄ[１／(粒度（例えば１％）)]
カウンタ全体は相互に依存せずにパラレルに動作する。複数のカウンタが同時に１つの通信セルサイクルで満了計数することができる。しかし各通信セルサイクルにおいては１つのブロックしかサービスできない。従ってカウンタは何回も満了計数することができるが、これが使用されることはない。このことから通信セルの遅延が生じる（Cell Delay Variation）。各ブロックに対しては取り決められた通信セル速度を維持すべきである。図４のカウンタでは、状態識別子を出力する図４のフリップフロップがイベントカウンタ（カウンタａビット）により置換されている。このイベントカウンタは、速度カウンタ（カウンタｋビット）が満了計数するときに１だけ減分される。イベントカウンタは、転送装置に設けられるブロックと同じ数の状態を取ることができる。イベントカウンタのカウンタ状態が０を越えていれば、状態識別子が優先度設定装置に出力される。
通信セルが転送されるインターフェースは、標準ＵＴＯＰＩＡインターフェースとすることができる。このインターフェースはトラフィックの戻り渋滞（backpressure）を支援する。割り当て装置は、インターフェースの戻り渋滞信号に応答することができるが、取り決められた通信セル速度は維持すべきである。物理的インターフェースには１つのブロック（port shaping）または複数のブロック（virtual path shaping）を割り当てることができる。図５による本願対象の実施形態では、イベントカウンタから出力された状態信号が、配属されたインターフェースの戻り渋滞信号と論理結合される。戻り渋滞信号がセットされれば、状態識別子が優先度設定装置に出力されず、これにより通信セルの転送は中断される。しかし満了計数イベントがイベントカウンタで計数され、これにより戻り渋滞信号の作用中に転送されなかった通信セルを、有効な戻り渋滞信号の停止後に行われる通信セルサイクルで転送することができる。このようにして取り決められた通信セル速度を維持することができる。
転送装置は、後続のインターフェースに、このインターフェースの最大データ速度を考慮した量の通信セルを割り当てる。転送装置が通信セルを転送する速度が、インターフェースのデータ速度に相応する速度よりもやや高いときに、インターフェースの１００％負荷に達し、戻り渋滞信号によって制御される。
通信セルが割り当て装置によって処理される仮想接続を導入する際には、インターフェースの負荷を１００％に維持することは取り敢えず行われない。
図６の実施例では、ブロックが仮想経路に割り当てられ（この仮想経路の速度で）、別個のブロックがインターフェースの残りの速度に対して割り当てられる。別個のブロックは読み出しアルゴリズムの際の低い優先度を受け取る。同時にブロックは１つの指示ブロックidleだけ拡張される。この指示ブロックidleは、該当するブロックが通信セルを含むか空であるかを指示する。指示ブロックidleは、速度カウンタとイベントカウンタとの間に挿入されたデコード装置decに供給される。速度カウンタが満了計数すると、所属のブロックは空である。従ってイベントカウンタがリセットされる。従って通信セルを含むブロックだけがサービスされ、通信セルサイクルが通信セルの転送のために失われることはない。
【図１】
0003686680.tif 000002
【図２】
0003686680.tif 000003
【図３】
0003686680.tif 000004
【図４】
0003686680.tif 000005
【図５】
0003686680.tif 000006
【図６】
0003686680.tif 000007