JP3178669B2 - スイッチ回路 - Google Patents

スイッチ回路

Info

Publication number
JP3178669B2
JP3178669B2 JP12993698A JP12993698A JP3178669B2 JP 3178669 B2 JP3178669 B2 JP 3178669B2 JP 12993698 A JP12993698 A JP 12993698A JP 12993698 A JP12993698 A JP 12993698A JP 3178669 B2 JP3178669 B2 JP 3178669B2
Authority
JP
Japan
Prior art keywords
data
register
circuit
output
cell
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
Application number
JP12993698A
Other languages
English (en)
Other versions
JPH11331273A (ja
Inventor
隆仁 神子島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP12993698A priority Critical patent/JP3178669B2/ja
Publication of JPH11331273A publication Critical patent/JPH11331273A/ja
Application granted granted Critical
Publication of JP3178669B2 publication Critical patent/JP3178669B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ルータ装置等にお
いて、マルチキャスト・セルをスイッチするスイッチ回
路に関する。
【0002】
【従来の技術】図1は、ルータ装置を示すブロック図で
ある。図1において、ルータは、#1から#n(n≧
2)までの入力ポートをもち、また、同数の出力ポート
をもつ。ある入力ポートから入力されたセルは、入力バ
ッファ1を通りルーティング回路2へ送られる。
【0003】ルーティング回路2では、送られてきたセ
ル内部のヘッダに含まれる情報をもとに、そのセルをど
の出力ポートに出力するか、つまり宛先情報を求め、セ
ルにその情報を付加してスイッチ回路3に出力する。
【0004】スイッチ回路3では、各々の入力ポートか
ら送られてきたセルの宛先情報をもとに、それぞれのセ
ルをどの出力ポートに割り当てるのか、つまりセルの出
力ポートへのアロケート(Allocate:割り当て)を行
い、各セルをアロケートされた出力バッファ4へ送る。
【0005】最後に、セルは出力バッファ4を通り出力
ポートへ送り出される。通常、アロケート時にセル同士
の衝突(ブロッキング)が起こりうるため、スイッチ回
路はセルの衝突を回避するようにアロケートを行う必要
がある。
【0006】このルータ装置において、マルチキャスト
・セルをスイッチする場合、従来のスイッチ回路におい
ては、そのセルを複数のユニキャスト・セルに変換して
からスイッチしている。
【0007】図6は、従来のスイッチ回路のブロック図
を示すものである。従来のスイッチ回路においては、入
力ポート毎に設けられた中間バッファ11の出力端子D
O、及び、その出力端子とスイッチ7を接続する信号の
分配は、中間バッファ11の出力端子DOはn系統(D
O[1:n])であり、スイッチ7の入力端子DIij
(i,j=1,2,3,...,n)に対し、入力ポー
ト#i用の中間バッファ11の出力端子DO[1:n]
からの信号のうち、j番目の系統DO[j]が接続され
る。
【0008】図7は、従来の中間バッファ11を示すブ
ロック図である。中間バッファ11は、n個のFIFO
13、及び、いくつかの組み合わせゲートから構成され
る。ルーティング回路2から送られたセルのデータは、
宛先情報に従ってそれぞれのFIFO13に格納され
る。つまり、宛先が出力ポート#i及び#j(i,j=
1,2,3,...,n)であるセルのデータは、i番
目及びj番目のFIFO13にそれぞれ格納される。出
力ポート#i、#j用のFIFO13は、それぞれAC
K[i]=1、ACK[j]=1のとき読み出される。
【0009】図8は、従来のアロケート回路12の処理
フローを示しており、全部で2n−1個のステップで構
成される。ステップi+1(i=1,2,3,...,
n)の代入式は、ステップiの代入式が完了した後でな
ければ実行することができない。
【0010】例えば、ステップ2に属するACK[1]
[2]への代入は、ステップ1に属する(右辺の)AC
K[1][1]への代入が完了しなければ、実行するこ
とができない。一方、同一ステップに属する代入式同士
は、互いに他とは独立、並行に実行することができる。
【0011】以下では、図9に記述されている、n=
3、REQ[1][1:3]=011、REQ[2]
[1:3]=001、REQ[3][1:3]=11
0、INH[1:3]=000の場合の例をもとにして
説明する(出力バッファ4へのデータ転送が禁止された
場合の動作は、本発明とは直接関係ないため、INH
[1:3]=000とする)。なお、入力ポート側のア
ロケートの優先順位は、高い方から順に1,2,
3,...,n、出力側のアロケートの優先順位も、高
い方から順に1,2,3,...,nとする。
【0012】まず、ステップ1において、最優先順位を
もつ入力ポート#1からのリクエスト#1→#1を受理
するか否かを判断するが、リクエストがないのでもちろ
ん受理しない。次にステップ2において、入力ポート#
1から出力ポート#2へのリクエスト、#1→#2を受
理するか否かが判断されるが、入力ポート#1、およ
び、出力ポート#2が共に未アロケートのため、同リク
エストは受理される。以下、処理フローに従って順次処
理を進める。ステップ5が終了した時点では、アロケー
トは図9の表のようになる。
【0013】各入力ポート用の中間バッファ11のFI
FO13は、空(empty)になるまで出力端子REQ
[i]へ値1を出力し続ける。従って、REQ[i]
(i=1,2,3,...,n)の値が1でありながら
ACK[i]の値が0、つまりスイッチのリクエストを
したにもかかわらず受理されなかった場合は、次のステ
ップにおいて受理されたリクエストのREQ[i]の値
が0となることにより受理されるようになる。
【0014】
【発明が解決しようとする課題】図6に示す従来のスイ
ッチ回路では、そのセルを複数のユニキャスト・セルに
変換してからスイッチしているために、それぞれのユニ
キャスト・セルを格納するためのFIFO13の数が多
くなり、また、アロケート回路12の構成も複雑になっ
て、結果としてスイッチ回路を構成するゲート数が多く
なるという問題がある。すなわち、ポート数がnの場
合、FIFO13の総数はnとなり、回路を構成する
ゲート数も多くなるため、アロケート回路12の処理フ
ローが複雑となる。
【0015】また、図8に示されるように、ポート数n
に対して、処理フローのステップ数は2n−1ステップ
となり、アロケート処理に時間がかかり、処理の高速化
が困難である。さらに、FIFOの数および処理フロー
のステップ数が多いので、拡張性にも乏しいという問題
がある。
【0016】本発明の目的は、構成をより簡単にしたス
イッチ回路を提供することにある。また、それに伴っ
て、アロケート処理時間を短縮し、処理の高速化を図る
ことにある。
【0017】
【課題を解決するための手段】本発明は、スイッチ回路
において、マルチキャスト・セルをユニキャスト・セル
に変換することなくスイッチすることにより、FIFO
の個数を少なくし、また、アロケート回路の構成を簡単
にすることにより、結果としてスイッチ回路を構成する
ゲート数を少なくしたことを特徴とする。
【0018】
【発明の実施の形態】図2は、本発明におけるスイッチ
回路3を示すブロック図である。本発明のスイッチ回路
3は、図6に示した従来のスイッチ回路と同様に、中間
バッファ5、アロケート回路6、及びスイッチ7から構
成されるが、中間バッファ5の構成及び中間バッファ5
とスイッチ7との接続関係が図6に示した従来技術とは
異なっている。
【0019】すなわち、入力ポート#i(i=1,2,
3,...,n)の中間バッファ5は、それぞれスイッ
チ回路3の端子、DIi、WRi[1:n]、INHI
iを通し、ルーティング回路2と接続される。ルーティ
ング回路2は、端子DIiにセルのデータを出力する
際、端子WRi[1:n]に宛先情報を出力する。
【0020】ここでは、出力ポート#kがそのセルのデ
ータの宛先である場合にWRi[k]の値を0(Lo
w)にすることとする。また、端子INHIiの値が0
のとき、端子DIi上のセルのデータ、端子WRi
[1:n]上の宛先情報が、ルーティング回路2から中
間バッファ5に転送されることとする。中間バッファ5
は、出力端子DOからセルのデータをスイッチ7に出力
し、出力端子REQからそのセルの宛先情報をアロケー
ト回路6に出力する。
【0021】アロケート回路6は、入力端子REQ
[1:n][1:n]、INH[1:n]の値をもと
に、アロケート計算を行い、出力端子ACK[1:n]
[1:n]からアロケート結果を出力する。ここで、I
NH[i](i=1,2,3,...,n)は、出力ポ
ート#i用の出力バッファ4へのデータ転送を禁止する
信号の入力端子である。
【0022】SEL[i][j]=1(i,j=1,
2,3,...,n)ならば、スイッチ7は、入力端子
DIijの入力値、すなわちセルのデータを、出力端子
DOjに出力するようにスイッチを行う。
【0023】図3は、本発明における中間バッファ5を
示すブロック図である。本発明の中間バッファ5は、1
個のFIFO(First In First Out)8、1個のセレク
タ9、1個のレジスタ10、及び、いくつかの組み合わ
せゲートから構成される。
【0024】ルーティング回路2から送られたセルのデ
ータ、及び、宛先情報は、一旦FIFO8に格納され、
その後、レジスタ10に転送される。出力端子REQ
[1:n]から宛先情報をアロケート回路6に対して出
力する。
【0025】レジスタ10は、REQ[1:n]=00
0...0の時はFIFO8から新たなセルのデータと
宛先情報をロードし、REQ[1:n]≠000...
0の時はACK[1:n]の論理否定とREQ[1:
n]との論理積を新たな宛先情報としてロードし、セル
のデータは直前の値を保持する。
【0026】これにより、REQ[i](i=1,2,
3,...,n)の値が1でありながらACK[i]の
値が0、つまりスイッチのリクエストをしたにもかかわ
らず受理されなかった場合は、受理されたリクエストを
取り下げた上で、受理されなかったリクエストを再度出
力する。
【0027】次に、本発明の動作について図面を参照し
ながら説明する。図4は、本発明のアロケート回路6の
処理フロー図を示すものであり、全部でn個のステップ
で構成される。ステップi+1(i=1,2,
3,...,n)の代入式は、ステップiの代入式が完
了した後でなければ実行することができない。
【0028】例えば、ステップ2に属するACK[2]
[1]への代入は、ステップ1に属する(右辺の)AC
K[1][1]への代入が完了しなければ、実行するこ
とができない。一方、同一ステップに属する代入式同士
は、互いに他とは独立、並行に実行することができる。
【0029】以下では、図5に記述されている、n=
3、REQ[1][1:3]=011、REQ[2]
[1:3]=001、REQ[3][1:3]=11
0、INH[1:3]=000の場合の例について説明
する。なお、出力バッファ4へのデータ転送が禁止され
た場合の動作は、本発明とは直接関係ないため、INH
[1:3]=000とする。また、入力ポート側のアロ
ケートの優先順位は、高い方から順に1,2,
3,...,nとする。
【0030】まず、ステップ1において、最優先順位を
もつ入力ポート#1からのリクエスト、#1→#2、#
1→#3が受理される。次にステップ2において、入力
ポート#2からのリクエスト、#2→#3を受理するか
どうか判断されるが、ステップ1において出力ポート#
3はアロケート済み(#1→#3)のため、衝突を回避
するため、同リクエストは受理されない。
【0031】最後にステップ3において、入力ポート#
3からのリクエスト、#3→#1、#3→#2を受理す
るかどうか判断されるが、ステップ1において出力ポー
ト#2はアロケート済み(#1→#2)のため、同リク
エストは受理されず、一方、#3→#1のリクエスト
は、出力ポート#1が未アロケートのため受理される。
【0032】その後、入力ポート#1の中間バッファ5
のレジスタ10は、リクエストがすべて受理されたの
で、 REQ[1:3]・(not ACK[1:3]) =011・(not 011) =011・100=000 が成り立ち、結果として、FIFO8から新しいデータ
を取り込み、出力端子REQ[1:3]へ新たな値を出
力する。
【0033】一方、入力ポート#2の中間バッファ5の
レジスタ10は、出力ポート#3へのリクエストが受理
されなかったため、 REQ[1:3]・(not ACK[1:3]) =001・(not 000) =001・111=001 が成り立ち、結果として、FIFO8から新しいデータ
を取り込まずに、データを保持したまま、出力端子RE
Q[1:3]に値001を出力する。
【0034】同様に、入力ポート#3の中間バッファ5
のレジスタ10は、出力ポート#2へのリクエストが受
理されなかったため、 REQ[1:3]・(not ACK[1:3]) =110・(not 100) =110・011=010 が成り立ち、結果として、FIFO8から新しいデータ
を取り込まずに、データを保持したまま、出力端子RE
Q[1:3]に値010を出力する。
【0035】
【発明の効果】本発明のスイッチ回路は、FIFOの総
数はnであり、セレクタやレジスタが追加されることを
差し引いても、回路を構成するゲート数を少なくするこ
とができ、構成を簡略化することができる。
【0036】また、アロケートの優先順位を、入力ポー
ト単位で設定してアロケート計算を行っているため、処
理フローのステップ数はnとなり、そのステップ数を少
なくすることができるので、要処理時間の短縮化を図る
ことができる。
【図面の簡単な説明】
【図1】本発明が適用されるルータ装置の一例を示すブ
ロック図である。
【図2】本発明におけるスイッチ回路を示すブロック図
である。
【図3】本発明における中間バッファを示すブロック図
である。
【図4】本発明におけるアロケート回路の動作を説明す
るためのフロー図である。
【図5】本発明におけるアロケート回路の具体的動作の
一例を説明するためのフロー図である。
【図6】従来のスイッチ回路を示すブロック図である。
【図7】従来の中間バッファを示すブロック図である。
【図8】従来のアロケート回路の動作を説明するための
フロー図である。
【図9】従来のアロケート回路の具体的動作の一例を説
明するためのフロー図である。
【符号の説明】
1 入力バッファ 2 ルーティング回路 3 スイッチ回路 4 出力バッファ 5 中間バッファ 6 アロケート回路 7 スイッチ 8 FIFO 9 セレクタ 10 レジスタ 11 中間バッファ 12 アロケート回路 13 FIFO
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) H04L 12/28 H04L 12/56

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 n系統の入力ポート及び出力ポートと、
    入力バッファ、ルーティング回路、スイッチ回路及び出
    力バッファを備え、各々の入力ポートから入力されたセ
    ルの宛先情報をもとにして、該セルを複数の出力ポート
    に割り当てるマルチキャスト・セル・ルータ装置におい
    て、 前記スイッチ回路は、 前記ルーティング回路から送られたセルのデータ及び宛
    先情報を格納する1個のFIFOと、該FIFOから転
    送されたセルのデータと宛先情報を保持する1個のレジ
    スタと、前記FIFOに格納されているセルのデータと
    前記レジスタに格納されているセルのデータの何れかを
    選択して前記レジスタに転送するセレクタと、該セレク
    タを制御するゲート回路とを、各入力ポート毎に有する
    中間バッファと、 前記レジスタから前記宛先情報を入力し、アロケートの
    優先順位を入力ポート単位で設定してアロケート計算を
    行うアロケート回路と、 前記アロケート回路からのアロケート情報に基づいて前
    記レジスタから入力したセルのデータを所定の出力ポー
    トへ出力するように切り替えを行うスイッチと、 を備え、前記ゲート回路は、前記アロケート情報の論理否定と前
    記レジスタに保持中の宛先情報との論理積を出力する論
    理回路を備えており、前記論理積の値が全て論理“0”
    のときは、前記FIFOに格納されているセルのデータ
    及び宛先情報を前記レジスタに新たにロードし、前記論
    理積の値の中に1以上の論理“1”が含まれているとき
    は、前記レジスタに対して、データとして前記レジスタ
    に保持されているデータを、宛先情報として前記論理積
    をロードするように前記セレクタに制御信号を出力する
    ことを特徴とするスイッチ回路。
  2. 【請求項2】 前記レジスタは、前記アロケート情報の
    論理否定と前記レジスタに保持中の宛先情報との論理積
    の値の中に1以上の論理“1”が含まれているときは、
    当該レジスタに対して、データとして当該レジスタに保
    持されているデータを、宛先情報として前記論理積をロ
    ードすることにより、受理されたリク エストを取り下げ
    た上で、受理されなかったリクエストを再度出力する
    とを特徴とする請求項1記載のスイッチ回路。
JP12993698A 1998-05-13 1998-05-13 スイッチ回路 Expired - Fee Related JP3178669B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP12993698A JP3178669B2 (ja) 1998-05-13 1998-05-13 スイッチ回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP12993698A JP3178669B2 (ja) 1998-05-13 1998-05-13 スイッチ回路

Publications (2)

Publication Number Publication Date
JPH11331273A JPH11331273A (ja) 1999-11-30
JP3178669B2 true JP3178669B2 (ja) 2001-06-25

Family

ID=15022103

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12993698A Expired - Fee Related JP3178669B2 (ja) 1998-05-13 1998-05-13 スイッチ回路

Country Status (1)

Country Link
JP (1) JP3178669B2 (ja)

Also Published As

Publication number Publication date
JPH11331273A (ja) 1999-11-30

Similar Documents

Publication Publication Date Title
US11640362B2 (en) Procedures for improving efficiency of an interconnect fabric on a system on chip
US4755986A (en) Packet switching system
EP0405042B1 (en) High speed digital packet switching system
US20110208926A1 (en) Low latency request dispatcher
JPH10164096A (ja) マルチキャスト・パケット・アクセス調停方法
SK62193A3 (en) Packet switch
US20080107105A1 (en) System and method for communicating on a richly connected multi-processor computer system using a pool of buffers for dynamic association with a virtual channel
US7773618B2 (en) System and method for preventing deadlock in richly-connected multi-processor computer system using dynamic assignment of virtual channels
US5414696A (en) Cell exchanging apparatus
US6728256B1 (en) Shared buffer control device
US6163827A (en) Method and apparatus for round-robin flash channel arbitration
US6240075B1 (en) Satellite communication routing arbitration techniques
JP3178669B2 (ja) スイッチ回路
JP3133234B2 (ja) Atmスイッチのアドレス生成回路
JPH077520A (ja) ローカルネットワークおよびブリッジ素子
US7593421B2 (en) Communication control device having multiprocessor
JP2989263B2 (ja) 高速データパケットスイッチング回路および方法
JPH10294746A (ja) Nビットセットのうちのmビットセットを置換するためのインターフェース装置、制御ユニット、および論理セル
JPH11212927A (ja) 競合調停方法
US20050289281A1 (en) Non-blocking switch fabric
KR100429907B1 (ko) 유니캐스트 패킷과 멀티캐스트 패킷 서비스를 위한 라우터및 라우팅 방법
JPH10257077A (ja) Nビットセットからmビットセットを抽出するためのインタフェース装置、制御ユニット、および論理セル
JPH02152345A (ja) 通信スイッチング制御装置
JPH07297836A (ja) 交換システム
JPS6376644A (ja) スロツトリングの送信権制御方法

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees