JP2000505264A - アドレス指定可能な高速カウンタアレイ - Google Patents

アドレス指定可能な高速カウンタアレイ

Info

Publication number
JP2000505264A
JP2000505264A JP10505323A JP50532398A JP2000505264A JP 2000505264 A JP2000505264 A JP 2000505264A JP 10505323 A JP10505323 A JP 10505323A JP 50532398 A JP50532398 A JP 50532398A JP 2000505264 A JP2000505264 A JP 2000505264A
Authority
JP
Japan
Prior art keywords
register
operand
registers
array
speed
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.)
Granted
Application number
JP10505323A
Other languages
English (en)
Other versions
JP3316575B2 (ja
Inventor
メルデン,クルト,エー.
ゴス,グレゴリー
Original Assignee
カスケード コミュニケーションズ コーポレイション
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 カスケード コミュニケーションズ コーポレイション filed Critical カスケード コミュニケーションズ コーポレイション
Publication of JP2000505264A publication Critical patent/JP2000505264A/ja
Application granted granted Critical
Publication of JP3316575B2 publication Critical patent/JP3316575B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0428Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
    • H04Q11/0478Provisions for broadband connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3081ATM peripheral units, e.g. policing, insertion or extraction
    • H04L49/309Header conversion, routing tables or routing tags
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5625Operations, administration and maintenance [OAM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Use Of Switch Circuits For Exchanges And Methods Of Control Of Multiplex Exchanges (AREA)
  • Photoreceptors In Electrophotography (AREA)
  • Analysing Materials By The Use Of Radiation (AREA)

Abstract

(57)【要約】 複数の保持された接続のそれぞれのために、高速ネットワークスイッチ(10)内の動作および統計情報を維持するための方法および装置が開示される。前記スイッチによって保持された接続のそれぞれに対する複数の高速レジスタを含んだ高速アレイ(70)が提供される。セル/フレームを受信すると、ネットワークスイッチ内の接続を識別するための接続識別子が生成され、その接続識別子はインデックスレジスタ(72)にストアされる。このインデックス内にストアされた接続識別子は、特定の接続に属したレジスタの高速レジスタアレイ内の複数のレジスタの選択に使用される。受信された各セル/フレームに属する情報は、セルを受信したときに生成されるか、またはそれぞれのセルヘッダから検索され、そして接続識別子によってアクセスされる複数のレジスタのそれぞれに対するオペランドの生成に使用される。

Description

【発明の詳細な説明】 発明の名称 アドレス指定可能な高速カウンタアレイ 発明の分野 本発明は、通信、特に高速ネットワークスイッチに関する。 発明の背景 非同期式伝送モード(ATM)のネットワークの様なネットワークの管理で は、ネットワークスイッチによって保持されている接続のそれぞれに属する動作 および統計情報の維持が重要である。特に、アドレス指定可能なノード、エラー 、およびネットワーク内で発生した特別なイベント間で送信されたセル数の軌跡 を保持することは一般的である。例えば、ATM環境では、保持された各接続に 対する0または1のセル損失優先度を保有するセル数の軌跡を保持することが望 ましい。将来のコンピュータネットワークの高速化に起因して、ネットワークト ラフィックを効率良く管理するために、ネットワーク動作に関する正確な情報を 維持することは極めて重要になる。 現在までの情報収集機能は、分散したカウンタの使用による小さいスケール で、あるいはソフトウエアによる大きなスケールで実現されてきた。毎秒44. 736メガビットのデータレートを有するDS3音声キャリアシステムを使用し たATMネットワークの様なネットワークでは、1つのATMセルがこのデータ レートでは約9.47マイクロ秒(us)で受信されるので、十分な情報を維持 することが可能である。この時間フレーム内にレジスタの更新がソフトウエアで 、あるいはシリアル方式のマイクロコードで実行されうる。 しかしながら、OC−12およびOC−48のような光学キャリアリンクは 、それぞれ毎秒約622メガビットおよび2.488ギガビットのデータレート を有する。OC−12通信リンクに関連したデータレートでは、1つのATMセ ルは約681ナノ秒(ns)で受信される。OC−48通信リンクに関連したデ ータレートでは、1つのATMセルは約177ナノ秒(ns)で受信される。更 に、8つの異なるタイプの情報へのそれぞれの接続のために、1つのレジスタを 維持することが望ましかったと仮定すると、レジスタがOC−12環境でシリア ルに処理された場合には1つのレジスタの更新に約85nsが、そしてOC−4 8環境でシリアルに処理された場合には22nsが必要とされた。このような通 信環境では、現在知られている技術を使用して、受信したセルまたはフレーム上 の希望する動作および統計情報を維持することは可能ではない。 発明の要約 本発明によると、高速ネットワーク内のネットワークスイッチで受信された セルに属する情報を維持するための方法および装置が開示される。アドレス指定 可能な高速レジスタアレイを備えたネットワークアレイプロセッサが提供される 。 このネットワークアレイプロセッサは、ネットワークスイッチによって保持され た複数のネットワーク接続の1つを識別する値をストアするために使用されるイ ンデックスレジスタを有する。アドレス指定可能な高速レジスタアレイは、保持 された各接続のための複数のレジスタR1〜Rnを有し、そして特定の複数のレジ スタは、インデックスレジスタ内の値によってアドレス指定される。レジスタア レイは、スタティックランダムアクセスメモリまたはその他の適当な高速メモリ アレイを備えることができる。かくして、1024の接続を保持し、且つ保持さ れた接続毎に8個のカウンタを有するネットワークスイッチ内では、高速カウン タアレイは8192個のレジスタ(1024×8)を含む。 加えて、ネットワークアレイプロセッサは、オペランドフィールドO1〜On を有したオペランドレジスタを備える。各オペランドレジスタは、インデックス レジスタ内の値によって特定されるそれぞれのレジスタR1〜Rn上で実行される 動作を特定する値を含むことができる。それぞれのレジスタをクリアしたり、選 択されたレジスタ内に全てのビットをセットしたり、選択されたレジスタをイン クリメントしたり、選択されたレジスタをデクリメントしたり、あるいはレジス タ内に同じ値を維持したりすることを可能にするオペランドが提供される。 複数のレジスタ内の各レジスタは、特定のデータタイプを含むように指定さ れる。例えば、1つのレジスタは特定の接続用に受信されたセルの数を計数する ために予約され、他の1つのレジスタはそれぞれの接続用に受信されたセルの数 の情報を保持するために、他の1つは接続に関連したエラーを計数するために、 他の1つは特定の接続のために受信されたセル損失優先度がゼロ(0)のセルを 計数するために、そして他の1つはセル損失優先度(1)を有するスイッチで受 信されたセルまたはネットワーク管理の目的から保持する価値があるように見え る他の情報を計数するために指定される。 セルを受信したら、そのセルのヘッダがデコードされ、そしてそれぞれのセ ルに関連した接続識別子がインデックスレジスタにストアされる。加えて、受信 したセルに由来しまたは関連した情報に基づいて、オペランドが生成され、オペ ランドレジスタのそれぞれのオペランドフィールドO1〜Onにストアされる。そ の後、それぞれの接続に対する複数のレジスタR1〜Rnのそれぞれは、オペラン ドフィールドO1〜On中に特定されたオペランドに従って並列に更新される。 上述したようにして、受信されたセル/フレームに関する大量の動作情報が リアルタイムで蓄積され得る大型のアドレス指定可能な高速カウンタアレイが提 供される。このようなアレイ内の情報は、ネットワークトラフィックを効率よく 管理するためにネットワークスイッチ内で有利に使用されうる。 加えて、1以上の状態値が、それぞれ保持された接続識別子用のレジスタア レイに提供される。この状態値は、それぞれの状態ビットのクリア、セット、ま たはプリセットを少なくとも提供する対応したオペランドフィールドを有する単 一または複数ビット値である。この状態値は、例えば特定の接続に属した情報が 有効であることを指示するために、あるいはレジスタアレイのそれぞれの状態値 配置中の単一または複数ビット値の使用によって他の状態情報を維持するために 使用されうる。 図面の簡単な説明 本発明は、以下の図面に関連した発明の詳細な説明の参照によってよりよく 理解される。図面において、 図1は、本発明に係る動作データ維持用高速アレイプロセッサのブロック図 であり、そして 図2は、図1の高速ネットワークアレイプロセッサで使用される高速レジス タアレイの代替実施例である。 発明の詳細な説明 本発明によると、ネットワークスイッチ内のトラフィックの流れに属した統 計および動作情報を維持するための高速ネットワークアレイプロセッサが開示さ れる。特に、図1を参照すると、ネットワークスイッチ10は、通信リンク14 上のセルまたはフレームを受信するための1つの入力ポート12を備える。受信 されたセル/フレームは、入力ポート12から接続識別子プロセッサ16へと通 過する。このプロセッサは、受信されたセル/フレーム中のヘッダデータをデコ ードし、またセル/フレームヘッダ内に含まれた発信元および宛先情報に基づい てネットワークスイッチ10内の接続を独特に識別できる接続識別子を生成する 。 発信元および宛先アドレスの可能な宇宙は、通常極めて大きな数であるから、ネ ットワークスイッチは可能な接続の小さなサブセットを保持するたけであり、ま た保持される接続はスイッチ10内で動的に管理される。例えば、典型的なスイ ッチは、1k〜16kの接続を保持できる。 ネットワークスイッチ10は更に、入力ポート12で受信されたセル/フレ ームに属する情報の蓄積に使用される高速レジスタアレイプロセッサ18を備え る。このネットワークアレイプロセッサ18は、オペランド制御論理部20を有 する。このオペランド制御論理部は、それぞれのセルまたはフレームから情報を 検索し、そしてオペランド生成論理部22,24,26,28,30,32,3 4,36と共に、オペランドフィールド(O1〜O8)54,56,58,60, 62,64,66,68を有したオペランドレジスタ53に格納するために、バ ス38,40,42,44,46,48,50,52上へ転送されるオペランド を生成する。ここに開示されている実施例では、オペランドバスは3ビット幅 であり、また8つのオペランドまで許容するようにオペランドフィールドO1〜 O8も同様に3ビット幅である。しかしながら、より小さい数のオペランドが使 用される場合には2ビットのオペランドフィールドが使用され、また逆により大 きな数のオペランドを保持する必要があるオペランドフィールドに対してはより 大きなビット数が使用され得る。 高速レジスタアレイ70は、それぞれが32ビット幅の、少なくとも8つの レジスタR1〜R8を構成するに十分な幅のスタティックラムを備える。このアレ イ70の深さは、この例示的実施例では1024の接続を備えるスイッチ10に よって保持されている接続の数に少なくとも等しい。かくして、本例のレジスタ アレイ70は、256ビット幅×1024ビットである。 高速アレイプロセッサ18は、バス74を介してマルチプレクサ75に結合 されたインデックスレジスタ72を更に備える。マルチプレクサ75の出力はバ ス77を介してアレイ70のアドレス入力線に結合されている。インデックスレ ジスタは、1024の接続を保持するに必要な10ビットのアドレス値を構成す るために10ビット幅であり、またバス74および77もまた同様に10ビット 幅である。インデックスレジスタ72は、接続識別子の値をストアするために使 用される。接続識別子は、インデックスレジスタ72の出力からマルチプレクサ 75を介してアレイアドレス入力線に送信され、そして特定の接続のためにアレ イ内の複数のレジスタR1〜R8を選択する。 ネットワークアレイプロセッサは、更新制御論理部76と、ここでは78, 80,82,84,86,88,90,92でそれぞれ識別されるカウンタC1 〜C8とを更に備える。 下記の表Iは例示的なオペランドビット指定を示し、また表IIはアレイ70 のレジスタ内に格納する例示的なデータ類型を示している。 表 I オペランド ビットコード クリア 000 ホールド 001 インクリメント 010 デクリメント 011 全ビットセット 111 表 II レジスタ 採点されたデータ R1 受信されたセル R2 CLP0 3 CLP1 4 CLP0+1 5 PT1 6 輻幀 R7 OAMセル計数 R8 ATMのようなセルは、通信リンク14を経由してネットワークスイッチ1 0の入力ポート12で受信されるので、セルヘッダ情報はバス15上を入力ポー ト12から接続識別子プロセッサ16に転送され、そして接続識別子プロセッサ 16はセルヘッダに含まれる発信元および宛先アドレス情報から10ビットの接 続識別子を導き出す。10ビットの接続識別子は、10ビットのレジスタを備え るインデックスレジスタ72に格納するために、接続識別子プロセッサ16によ ってバス17上を転送される。インデックスレジスタ72の出力はアレイのアド レス入力線に結合され、そしてそれぞれの接続に関連したレジスタR1〜R7の1 024グループの1つを選択するために寄与する。受信されたセル用のセルヘッ ダはまた接続識別子プロセッサ16からバス19上をオペランド制御論理部20 に転送される。このオペランド制御論理部は、オペランド生成部22,24,2 6,28,30,32,34,36と共に、レジスタ72内にストアされた接続 識別子によって特定されるレジスタR1〜R8のそれぞれの更新を制御するために 使用されるオペランドを生成する。特に、セルを受信すると、オペランド制 御論理部20はオペランド生成部22と共にオペランド‘010’を生成部22 の出力に生成し、そしてオペランドレジスタ53のオペランドフィールド54に 格納するために、そのオペランドをバス38上に送信する。オペランド‘010 ’は、表Iに示したように、レジスタR1がインクリメントされることを指示す る。加えて、受信されたセルが、セルはネットワークによって廃棄されるべきも のであることを示す‘1’のセル損失優先度(CLP)ビットを含んでいる場合 には、オペランド制御論理部20は、オペランド生成部26と共に、オペランド ‘010’を生成する。このオペランドはオペランドレジスタ53のオペランド フィールド58に格納するためにバス42上を送信される。更に、本例では、C LPビットが0でなかったので、CLP0レジスタは更新されない。従って、オ ペランド制御論理部20は、オペランド生成部24と共に、特定の接続に対する レジスタR2の値が維持されるべきものであることを示すオペランド‘001’ を生成する。このオペランドは、オペランドレジスタ53のオペランドフィール ド56に格納するためにバス40上を送信される。同様にして、オペランドは生 成され、そしてオペランドレジスタ53の複数のオペランドフィールドのそれぞ れにストアされる。 オペランドの生成とそしてオペランドレジスタ53のそれぞれのフィールド O1〜O8へのオペランドの格納の後に、オペランドはバス94を介して更新制御 論理部76に送信される。この実施例では、バス94は24ビットのデータバス と関連した制御信号とを備える。インデックスレジスタ72にストアされている 接続識別子によって識別される接続に対するレジスタR1〜R8の内容は、アレイ 70から読み出され、ここでは78,80,82,84,86,88,90,6 2としてそれぞれ示されるカウンタC1〜C8にそれぞれにストアされる。かくし て、本例では、インデックスレジスタ中の値によって特定される接続に対して受 信されたセルの数を含んだレジスタR1の内容は読み出され、そしてカウンタC 1にストアされる。‘0’のCLPを有するそれぞれの接続に対して受信された セルの数を識別する値を含んだレジスタR2の内容はアレイから読み出され、そ してカウンタC2にストアされる。‘1’のCLPを有するそれぞれの接続に対 して受信されたセルの数を識別する値を含んだレジスタR3の内容はアレ イから読み出され、そしてカウンタC3にストアされる。同様にして、残りのレ ジスタR4〜R8の内容はアレイ70から読み出され、そしてそれぞれカウンタC4 〜C8にストアされる。 次に更新制御論理部76は、各カウンタC1〜C8がそれぞれのオペランドに 従って修正されるようにする。特に、カウンタC1〜C8は、バス94を通してオ ペランド制御論理部76で受信された対応するオペランドに従ってほぼ同時に更 新される。説明の便宜上、上記の参考例では、それぞれの接続に対して受信され たセル計数を含んだカウンタC1は、特定されるオペランドが‘010’である ためインクリメントされる。‘0’であるCLPビットを有する受信されたセル の数を含んだカウンタC2は、特定されるオペランドが‘001’であるため変 化しない。‘1’であるCLPビットを有する受信されたセルの数を含んだカウ ンタCLPは、特定されるオペランドが‘010’であるためインクリメントさ れる。 カウンタ内容の更新後に、更新されたカウンタ内容は、インデックスレジス タ72によって特定されるアレイ70のレジスタR1〜R8のそれぞれに書き込ま れる。 上述したようにして、毎秒622メガビットまたはそれ以上のデータレート でセルが受信される場合でさえも、ネットワークスイッチのトラフィックに属す る統計および動作情報が正確に維持される。 高速レジスタアレイ70内にストアされたデータは、図1に単一ポートのラ ンダムアクセスメモリとして図示されたアレイから読み出される。レジスタアレ イからデータを読み出すことが必要な場合は、ホストプロセッサ96がバス98 を介して読み出し格納レジスタ99にアドレスを送信する。読み出し格納レジス タ99の出力はバス97を介してマルチプレクサ75に結合され、そしてマルチ プレクサ75の出力はマルチプレクサ出力バス77を介してアレイ70のアドレ ス入力線に結合される。レジスタR1〜R8にストアされたデータはほぼ同時に並 列に読み出されるので、所望の接続に対するレジスタ内にストアされているデー タの正確な状況を所望の瞬間において得ることができる。アレイ内のデータが種 々のレジスタから順番に読み出される場合には、全てのレジスタの内容を読み 出すまでに、セルの順次受信に起因して、いくつかのレジスタ内のデータは変化 してしまうことが明記される。 その代わりに、アレイ70のデータ出力インターフェースの幅を最小化する ために、アレイ70にストアされているデータは、例えば連続読み出し動作で読 み出される。最初の読み出し動作では、各レジスタR1〜R8の最下位バイトがア クセスされ、そして続く3回の読み出し動作では、それぞれのレジスタの最上位 バイトがアクセスされる。このようにして、出力バスの幅は1/4に低減される 。レジスタに対する変化の大半は殆ど最下位バイト中で見出されるため、レジス タに対する最大の変化は上位のバイトにアクセスすることなく観測されうる。上 位のバイトは、レジスタがインクリメントされていること、そしてそのインクリ メントがバイトの境界を超える影響をレジスタに与えていると認識されたときに アクセスされる。 高速レジスタアレイ70からのデータ読み出しを、アレイの更新に影響を与 えることなく促進するために、このアレイはデュアルポート型アレイとして実現 される。このようなイベントでは、読み出しアクセス用のレジスタの1つのセッ トを特定するために、アドレスバス97はアレイ70のアドレス入力線の1つの セットに結合される。そして、アレイ内で更新するためのレジスタの第2のセッ トを特定するために、アドレスバス74はアレイ70のアドレス入力線の第2の セットに結合される。 レジスタR1〜R8に加えて、ネットワークアレイプロセッサは、スイッチに よって保持された各接続に対して1以上の状態レジスタS1〜Snを備える。状 態レジスタのセットとリセットを可能にするために、アレイプロセッサ18は状 態制御論理部100と、本例では少なくとも2つのオペランドを生成するための オペランド生成論理部102,104等を備える。これらオペランドはそれぞれ バス上を送信され、状態オペランドレジスタ106,108にストアされる。好 ましい実施例では、状態レジスタS1,S2等は、インジケータ格納用の単一ビ ットのレジスタである。例えば、状態レジスタS1は、それぞれの接続に対する データが有効であり、使用可能であることを示す有効インジケータビットを含む ことができる。(使用されうる他のインジケータに詰め込む)。その代わりに 、ネットワークスイッチ内の動作状態情報に対する更なる細分性が要求される場 合には、状態レジスタS1,S2等は複数ビットのレジスタを備えることができ る。 アレイプロセッサ18は、状態更新制御論理部110と、レジスタS1およ びS2が読み出し−修正−書き込みサイクルを通して修正された場合に、状態レ ジスタから読み出された情報を受信するための状態カウンタまたは更新レジスタ 112,114とを備えることができる。状態レジスタS1およびS2が単にセ ットまたはリセットすることを意図したものである場合には、状態110,11 2が無しですませられることは明らかである。 状態レジスタS1,S2等はアレイ70の延長として提供され、そして共通 のスタティックラムアレイ中にストアされるか、あるいは分離されたランダムア クセスメモリ内にストアされうる。いずれのイベントにおいても、アレイ70と 状態レジスタアレイはインデックスレジスタ72中の接続識別子の値によってイ ンデックス付けされ、特定の接続に対するレジスタの全ての内容が特定の接続に 対する状態情報と同様に同時にアクセスされる。 本発明の1つの代替実施例が図2に図示されている。図2において、アレイ はカウンタのアレイを備える。より複雑ではあるが、図2の実施例は、レジスタ 内容のより高速な更新と、そして、図1の実施例で達成されるものより高い通信 リンクのデータレートで受信されたセルに関連した情報をストアするためにここ に開示された技術の使用を可能にする。 特に、図2を参照すると、ネットワークアレイプロセッサは、図1に関連し て上述した手法によって接続識別子を受信するインデックスレジスタ116を備 える。このインデックスレジスタ116は、特定の接続用のカウンタに対応する カウンタアレイ118内の複数のカウンタC1〜Cnを選択するために使用される 。このインデックスレジスタ116はまた、特定の接続に関連した状態レジスタ S1およびS2をアドレス指定する。 オペランドは、オペランド制御論理部20とオペランド生成部22,24, 26,28,30,32,34,36に関連して前述した手法で生成され、そし てここではフィールド122,124,126,128,130,132,13 4,136として識別されるオペランド格納フィールドOS1〜OS8を含んだオ ペランド格納レジスタ120にストアされる。各カウンタC1〜C8は、オペラン ド格納レジスタ120のそれぞれのオペランド格納フィールドに特定されたオペ ランドに基づいてほぼ同時に更新される。アレイ118がカウンタアレイを備え るという事実の結果から、特定の接続に対して選択された複数のカウンタは、図 1の実施例で使用された読み出し−修正−書き込みサイクルを介して導入される 遅延無しに、直接更新され得る。かくして、図2のアレイの実施例は、図1の実 施例で実現されるものより高速の通信リンクと共に使用されうる。 ここに開示されたネットワークアレイプロセッサは最初に非同期式伝送モー ドのスイッチでの使用に関して説明されたが、このようなプロセッサは、受信し たセル、パケットまたはフレームに属する動作データを維持することが望ましい 如何なる通信スイッチおよび如何なるプロトコルにも使用することができる。 上述した方法および装置は、ネットワークスイッチ内の極めて高いセルレー トでのセル/トラフィックの流れに関する統計および動作情報の維持を可能とす る新規なアレイプロセッサを記述するものである。この開示からの他の変形例、 実施例および出発は、ここに含まれた発明の概念から離れること無しに、当業者 には明らかになる。従って、本発明はここに開示された技術と装置に存在するか 保有されるそれぞれの、また全ての新規な特徴と新規な特徴の組み合わせとを包 含するようにみなされるべきものであり、そして添付の請求の範囲およびその精 神によってのみ制限されるようにみなされるべきである。

Claims (1)

  1. 【特許請求の範囲】 1. 複数の接続を保持するコンピュータネットワークスイッチ内に情報を維持 するための高速レジスタプロセッサであって、 前記複数の接続のそれぞれに対する複数のレジスタR1〜Rnを有したレジス タアレイと、 前記複数のレジスタの1つを識別するインデックス値を含んだインデックス レジスタと、 各オペランドがそれぞれのレジスタR1〜Rnの内容に対して実行される動作 を規定する、複数のオペランドをストアするための複数のオペランドフィールド O1〜Onを有するオペランドレジスタと、 前記インデックスレジスタ内に含まれている前記インデックス値によって識 別されたそれぞれのレジスタR1〜Rn上のオペランドフィールドO1〜Onによっ て特定された動作をほぼ同時に実行するためのレジスタ更新コントローラとを備 えることを特徴とする高速レジスタプロセッサ。 2. 請求項1の高速レジスタコントローラにおいて、前記レジスタコントロー ラは、前記複数の接続のそれぞれに対する少なくとも1つの状態レジスタを更に 有し、前記オペランドレジスタは、少なくとも1つのオペランドフィールドOn+ 1 を有し、そして前記レジスタ更新コントローラは、インデックスレジスタ内に 含まれている値によって特定される接続のために、前記少なくとも1つの状態レ ジスタ上の前記少なくとも1つのオペランドフィールドOn+1によって特定され る動作を、前記レジスタR1〜Rn上のオペランドO1〜Onによって特定される前 記動作の実行とほぼ同時に実行するように動作することを特徴とする高速レジス タコントローラ。 3. 請求項1の高速レジスタコントローラにおいて、前記レジスタ更新コント ローラは、前記インデックスレジスタ内の、クリアされ、インクリメントされ、 デクリメントされ、または維持される値によって特定される接続に関連した複数 のレジスタR1〜Rnのそれぞれの内容を、前記オペランドレジスタのそれぞれの オペランドフィールド内のオペランドの値に基づいて発生することを特徴とする 高速レジスタコントローラ。 4. 請求項1の高速レジスタコントローラにおいて、前記レジスタ更新コント ローラは、インデックスフィールド内の値によって特定される接続に対し、通信 リンク上の前記ネットワークスイッチで1データパケットを受信する時間より長 くない時間内で、読み出され、対応するオペランドフィールドO1〜Onに特定さ れるオペランドに従って動作され、そしてレジスタアレイのそれぞれのレジスタ に書き込まれる、レジスタR1〜Rnのそれぞれの内容を発生するように動作する ことを特徴とする高速レジスタコントローラ。 5. 請求項1の高速レジスタコントローラにおいて、前記レジスタR1〜Rnの それぞれはmビットの幅であり、そして前記レジスタアレイは、前記インデック スフィールドによって識別される接続に対し、全てのレジスタ内のデータが並列 に読み出されることを可能にするために(n)×(m)ビット幅の出力バスを有 することを特徴とする高速レジスタコントローラ。 6. 少なくとも1つの通信リンク上でパケットを受信する高速ネットワークス イッチ内の通信情報を維持するための方法であって、 前記ネットワークスイッチでパケットを受信するステップと、 受信された前記パケットに対する接続識別子を決定するステップと、 受信された前記パケット内に含まれる情報をデコードして複数のオペランド O1〜Onを生成するステップと、 前記複数のオペランドをn個のオペランドフィールドを有するオペランドレ ジスタにストアするステップと、 レジスタアレイとなった複数のレジスタR1〜Rn内に含まれたデータに対し ほぼ同時に動作するステップとを備え、 前記アレイ内の前記複数のレジスタは前記接続識別子によって特定され、そ してレジスタR1〜Rn内の値のそれぞれに対して実行される動作は前記オペラン ドレジスタのそれぞれのオペランドフィールド内に含まれるオペランドO1〜On の値に基づくことを特徴とする方法。 7. 請求項6の方法において、前記デコードするステップは、複数のレジスタ R1〜Rnのそれぞれ内の値を発生する前記複数のオペランドO1〜Onのそれぞれ に対する、クリアされ、維持され、インクリメントされ、またはデクリメントさ れる値を生成するステップを含むことを特徴とする方法。 8. 請求項6の方法において、前記受信するステップは、所定の最大パケット 受信時間内で前記パケットを受信するステップを含み、そして前記動作するステ ップは、前記最大パケット受信時間内で前記複数のレジスタR1〜Rnを更新する ステップを含むことを特徴とする方法。 9. 請求項6の方法において、前記レジスタアレイ中の前記複数のレジスタの それぞれは並列出力バスを有し、そして前記方法は、特定の接続識別子のために 、前記複数のレジスタの出力バスを並列に読み込むステップを更に有することを 特徴とする方法。 10. 請求項6の方法において、前記パケットはセルを備えることを特徴とす る方法。 11. 請求項10の方法において、前記セルは非同期式伝送モード(ATM) セルを備えることを特徴とする方法。 12. 請求項6の方法において、前記パケットはフレームを備えることを特徴 とする方法。
JP50532398A 1996-07-10 1997-07-07 アドレス指定可能な高速カウンタアレイ Expired - Fee Related JP3316575B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/680,245 1996-07-10
US08/680,245 US5687173A (en) 1996-07-10 1996-07-10 Addressable high speed counter array
PCT/US1997/011843 WO1998001979A1 (en) 1996-07-10 1997-07-07 Addressable, high speed counter array

Publications (2)

Publication Number Publication Date
JP2000505264A true JP2000505264A (ja) 2000-04-25
JP3316575B2 JP3316575B2 (ja) 2002-08-19

Family

ID=24730334

Family Applications (1)

Application Number Title Priority Date Filing Date
JP50532398A Expired - Fee Related JP3316575B2 (ja) 1996-07-10 1997-07-07 アドレス指定可能な高速カウンタアレイ

Country Status (7)

Country Link
US (1) US5687173A (ja)
EP (1) EP0917783B1 (ja)
JP (1) JP3316575B2 (ja)
AU (1) AU711570B2 (ja)
CA (1) CA2260255C (ja)
DE (1) DE69731093T2 (ja)
WO (1) WO1998001979A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5546343A (en) * 1990-10-18 1996-08-13 Elliott; Duncan G. Method and apparatus for a single instruction operating multiple processors on a memory chip
US6233246B1 (en) * 1996-12-30 2001-05-15 Compaq Computer Corporation Network switch with statistics read accesses
US6041328A (en) * 1997-12-17 2000-03-21 Advanced Micro Devices, Inc. Tracking availability of elements within a shared list of elements from an index and count mechanism
US6775271B1 (en) * 2000-05-17 2004-08-10 Intel Corporation Switching system and method for communicating information at a customer premises
US7266123B1 (en) * 2000-05-17 2007-09-04 Intel Corporation System and method for prioritizing and communicating subscriber voice and data information
US6701447B1 (en) 2000-09-06 2004-03-02 International Business Machines Corporation System for delaying the counting of occurrences of a plurality of events occurring in a processor until the disposition of the event has been determined
US6658584B1 (en) 2000-09-06 2003-12-02 International Business Machines Corporation Method and structure for managing large counter arrays
US7461383B2 (en) * 2006-08-21 2008-12-02 International Business Machines Corporation Method and apparatus for efficient performance monitoring of a large number of simultaneous events
US7532700B2 (en) * 2006-08-21 2009-05-12 International Business Machines Corporation Space and power efficient hybrid counters array
US7426253B2 (en) * 2006-08-21 2008-09-16 International Business Machines Corporation Low latency counter event indication
US8850137B2 (en) * 2010-10-11 2014-09-30 Cisco Technology, Inc. Memory subsystem for counter-based and other applications

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4694391A (en) * 1980-11-24 1987-09-15 Texas Instruments Incorporated Compressed control decoder for microprocessor system
US4734907A (en) * 1985-09-06 1988-03-29 Washington University Broadcast packet switching network
CA2049428C (en) * 1990-08-20 1996-06-18 Yasuro Shobatake Atm communication system
US5309432A (en) * 1992-05-06 1994-05-03 At&T Bell Laboratories High-speed packet switch
EP0680178A1 (en) * 1994-04-28 1995-11-02 Hewlett-Packard Company Cell switch fabric chip
US5548588A (en) * 1995-01-31 1996-08-20 Fore Systems, Inc. Method and apparatus for switching, multicasting multiplexing and demultiplexing an ATM cell

Also Published As

Publication number Publication date
WO1998001979A1 (en) 1998-01-15
AU711570B2 (en) 1999-10-14
JP3316575B2 (ja) 2002-08-19
EP0917783B1 (en) 2004-10-06
DE69731093D1 (de) 2004-11-11
CA2260255A1 (en) 1998-01-15
CA2260255C (en) 2002-05-07
US5687173A (en) 1997-11-11
DE69731093T2 (de) 2006-02-23
EP0917783A4 (en) 2000-02-02
EP0917783A1 (en) 1999-05-26
AU3653397A (en) 1998-02-02

Similar Documents

Publication Publication Date Title
US6185630B1 (en) Device initializing system with programmable array logic configured to cause non-volatile memory to output address and data information to the device in a prescribed sequence
US6700894B1 (en) Method and apparatus for shared buffer packet switching
JP3734704B2 (ja) パケット分類エンジン
US6487202B1 (en) Method and apparatus for maximizing memory throughput
US6151323A (en) Method of supporting unknown addresses in an interface for data transmission in an asynchronous transfer mode
US5790786A (en) Multi-media-access-controller circuit for a network hub
US6611527B1 (en) Packet switching apparatus with a common buffer
JPH08223182A (ja) ルーティング情報の格納及び取り出しのシステム及び方法
CA2179613A1 (en) Look-up engine for packet-based network
JPH07321815A (ja) 共有バッファ型atmスイッチおよびその同報制御方法
JP3316575B2 (ja) アドレス指定可能な高速カウンタアレイ
EP0960501A2 (en) Data communication system utilizing a scalable, non-blocking, high bandwidth central memory controller and method
US5572697A (en) Apparatus for recovering lost buffer contents in a data processing system
US6678278B2 (en) Bit clearing mechanism for an empty list
US5835711A (en) Method and system for implementing multiple leaky bucket checkers using a hybrid synchronous/asynchronous update mechanism
EP1508225B1 (en) Method for data storage in external and on-chip memory in a packet switch
JPH10285173A (ja) Atmセル処理装置
US6895013B1 (en) Coherent access to and update of configuration information in multiprocessor environment
US7940764B2 (en) Method and system for processing multicast packets
EP0680236A1 (en) Apparatus for swapping input values into corresponding output values
KR20030091244A (ko) 네트워크 프로세서에서 다양한 개수의 포트들을 처리하기위한 방법
JP4068263B2 (ja) セル送信回路
JP2852376B2 (ja) 故障通知セル発生装置
JP2000013438A (ja) ゲートウェイ装置
JPH10247924A (ja) 共通セルバッファ装置

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees