JP4368527B2 - マルチポートパケットプロセッサ - Google Patents
マルチポートパケットプロセッサ Download PDFInfo
- Publication number
- JP4368527B2 JP4368527B2 JP2000569552A JP2000569552A JP4368527B2 JP 4368527 B2 JP4368527 B2 JP 4368527B2 JP 2000569552 A JP2000569552 A JP 2000569552A JP 2000569552 A JP2000569552 A JP 2000569552A JP 4368527 B2 JP4368527 B2 JP 4368527B2
- Authority
- JP
- Japan
- Prior art keywords
- processor
- port
- packet
- multiport
- channel
- 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 - Lifetime
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
- H04L49/351—Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
- H04L49/351—Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
- H04L49/352—Gigabit ethernet switching [GBPS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/18—Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Multi Processors (AREA)
- Small-Scale Networks (AREA)
Description
この出願は、参考文献としてここに組込まれた、1997年9月4日出願の米国仮出願第60/057,813号の利益を要求する。
【0002】
(発明の背景)
この発明は、広くコンピュータネットワークに関し、詳細には、コンピュータネットワーク内の通信を処理するためのマルチポートパケットプロセッサに関する。
【0003】
コンピュータネットワークは、(しばしば1つより多い通信プロトコルを使用する)通信デバイスのネットワークによる種々のコンピュータの相互接続である。コンピュータネットワークの1つのそのような例は、電話線及び高速伝送線路を通じてパーソナルコンピュータとサーバとを相互接続するインターネットである。コンピュータネットワークの他の例は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、及びRS−485インスツルメンテーション(instrumentation)プロトコル及びユニバーサルシリアルバス(USB)のようなプロトコルに基づいたネットワークを含む他の特別の目的のネットワークを含む。(比較的)より小さいデバイスのネットワーク中への相互接続によって、大規模な構成の処理が容易になり、情報の効率的な拡散が可能になり、ネットワーク内の種々のデバイスの間の通信が提供され、リソース及びデータの共有が可能になる。
【0004】
図1は、従来のコンピュータネットワーク100を説明する。ネットワーク100は、ハブ120、スイッチ122、及びルータ124を通じて一緒に相互接続された、多くのユーザコンピュータ110及びサーバ112を含む。ユーザコンピュータ110及びサーバ112は、それぞれのネットワークインターフェースカード(NIC、図示せず)を通じてネットワークに接続する。NICは、コンピュータ又はサーバからデータ(すなわち、バイトで)を受信し、ネットワーク伝送線路への伝送のためにデータパケットを形成する。ハブ、スイッチ、及びルータは、データパケットを受信し、そのパケットを適切な宛先(destination)に導く。その宛先では、他のNICがデータパケットを受信し、コンピュータすなわちサーバによって使用可能なバイトにそのパケットを変換する。一組のデバイスの間の相互接続は、シールドされていないツイストペアケーブル(Unshielded Twisted-Pair, UTP)ケーブル、同軸ケーブル、光ファイバケーブル、又は他の伝送媒体とすることができる。
【0005】
ネットワークは、それぞれの層が決まった機能を実行する種々の層(layer)から構成されているように見ることができる。それぞれの層は、それの上及び/又は下の層と通信する。更に、それぞれの層は、ハードウェア若しくはソフトウェア、又は両者の組合わせによって実施することができる。
【0006】
図2は、開放型システム間相互接続(Open System Interconnection, OSI)コンピュータネットワーク200の種々の層を説明する。コンピュータネットワーク200は、以下の7層から構成される:(1)物理層210、(2)データリンク層212、(3)ネットワーク層214、(4)トランスポート層216、(5)セッション層218、(6)プレゼンテーション層220、及び(7)アプリケーション層222。物理層210は、物理伝送システムに渡ってビット列(bit stream)を伝送する。データリンク層212は、信頼できるデータ伝送を提供する。ネットワーク層214は、あるネットワークノードから他のノードにデータを送る。トランスポート層216は、所定の品質レベルでの2つのユーザの間のデータ転送を提供する。セッション層218は、データ交換を管理する。プレゼンテーション層220は、意味のある形式でユーザに情報を提示する。最後に、アプリケーション層222は、コンピュータネットワーク200をモニタし、管理する。
【0007】
種々の層の間の通信は、一組のプロトコルによって管理される。層及びプロトコルは、今度は、ネットワークのアーキテクチャを明確に定める。従来より、他のプロトコルと互換性のない多くの多様なプロトコルが存在する。他の製造者の製品と差別化するために、又は他の理由のために、多くの製造者によって採用されているプロトコルもある。このように、ある製品ラインからの製品は、同じ製品ラインからの他の製品と通信することができるが、それは多くの場合、他の製造者からの他の製品と互換性がない。ネットワークプロトコルの例は、ISDN(Integrated Service Data Network)、イーサネット、ファストイーサネット、ギガビットイーサネット、非同期転送モード(ATM)、CDDI(Copper Distributed Data Interface)、FDDI(Fiber Distributed Data Interface)及び(P1394としても知られる)ファイバチャネル(Fiber Channel)を含む。
【0008】
(互換性のある、及び互換性のない)ネットワーク、又はネットワークのセグメントの間の相互接続性(interconnectivity)及び相互運用性(interoperability)は、相互接続デバイス(例えばルータ、ハブ、ブリッジ、ゲートウェイ)によって提供される。市場でのネットワークの急増、及び使用される多くのプロトコルのために、相互接続デバイスは、多くのネットワークで不可欠の部分になっている。図2を参照すると、物理層210で動作するハブ230は、延長されたネットワークを形成するための同じネットワークのセグメントを接続するために使用される。ハブは、リピータとも称される。データリンク層212で動作するブリッジ232は、互換性のある(又はほぼ互換性のある)LANを接続するために使用される。ネットワーク層214で動作するルータ234は、1つの大きなネットワークを形成するために2つのネットワークセグメントを接続する。最後に、ネットワーク層214又はそれより上の層で動作するゲートウェイ236は、内部ネットワークを外部ネットワークに接続する。ゲートウェイ236は、それが動作している全ての層の異なるプロトコルを許容するため、最も複雑だが、最も柔軟な相互接続デバイスである。
【0009】
ネットワークはより大きく、より高速になるため、より大きいバンド幅を必要とする新しいアプリケーションが可能になる。高いバンド幅のアプリケーションの例には、ビデオオンデマンド、ビデオゲーム、などが含まれる。これらのアプリケーションは、NIC、通信チャネル、及び相互接続デバイス(例えば、サーバ)を含む、ネットワークアーキテクチャの種々の部分にストレスを及ぼす。ボトルネックは、しばしばデータ通信システム中に発生し、混雑しそうな1つの部分はサーバのメインコンピュータバスである。
【0010】
上述より、高速データ通信を容易にするプロセッサが必要であることを強調することができる。
【0011】
(発明の概要)
本発明によると、マルチポートパケットプロセッサは、複数の高速パケットベースの通信チャネルをお互いにインターフェースするための効率的なメカニズムを提供する。マルチポートパケットプロセッサは、低価格、高性能、及び高信頼性のために、集積回路の内部で実施される。
【0012】
マルチポートパケットプロセッサは、複数のポートプロセッサを含む。それぞれのポートプロセッサは、それぞれの通信チャネルを結合するチャネルインターフェース、及びそのチャネルインターフェースを通じて受信したパケットを処理するためのチャネルプロセッサを含むことができる。チャネルインターフェースは、特定の組のパケットベースのプロトコルを使用して、チャネルからのパケットベースの通信を処理するように設計することができる。他には、チャンネルインターフェースは、(多くの可能な組から)選択された組のパケットベースのプロトコルを使用して、パケットを送信し、受信するように構成することができるようなプログラマブルな制御装置を有するように設計することができる。
【0013】
それぞれのポートプロセッサは、ポートプロセッサ間の通信を提供するための少なくとも1つの他のポートプロセッサと結合したプロセッサ間通信(interprocessor communication)インターフェースを更に含むことができる。
【0014】
特定の実施形態では、ポートプロセッサは、複数の通信チャネルを同時に処理することができる。通信チャネルは、同一のパケットベースのプロトコル又は異なるパケットベースのプロトコルを有することができる。
【0015】
マルチポートパケットプロセッサは、種々のアプリケーションで使用することができる。1つのアプリケーションでは、マルチポートパケットプロセッサは、LANプロセッサとして機能し、LANサーバによって典型的に提供される機能を提供する。他のアプリケーションでは、マルチポートパケットプロセッサは、ディスク記憶装置プロセッサとして機能し、種々の記憶デバイスの間のデータ転送を管理する。
【0016】
本発明は、添付の図面と共に以下の詳細な説明を参照することによって、よりよく理解されるであろう。
【0017】
(特定の実施形態の詳細な説明)
LANハブ
図3は、LANチャネル通信ハブ300を図解する簡単なブロック図である。LANハブ300は、マルチポートプロセッサ320に結合された多くのパケットベースのプロトコルチャネル310を含む。LANハブ300は、図1に示されるネットワーク中のハブ120に対応させることができる。(図3ではブロックとしてシンボル的に示される)チャネル310は、ISDN、イーサネット、ファストイーサネット、ギガビットイーサネット、ATM、CDDI、FDDI、又は(ファイヤワイヤ(Firewire)としても知られる)P1394のような異なるLANチャネルを含む。更に、図3に示される種々のチャネル310は、異なるタイプのプロトコルを利用することができる。例えば、いくつかのチャネル310は、大容量記憶装置(mass storage)の通信プロトコル(例えば、SCSI)をサポートすることができるし、他のチャネル310は、LANプロトコル(例えば、イーサネット)をサポートすることができる。
【0018】
マルチポートプロセッサ
図4Aは、集積されたマルチポートプロセッサ400の1つの実施形態のブロック図である。マルチポートプロセッサ400は、図3のマルチポートプロセッサ320として動作することができる。マルチポートプロセッサ400は、複数のパケットベースのプロトコルチャネル310を通じて通信を効率的に制御し、管理する。従来は、この機能は、LANサーバのような、より大きいデバイスによって実行される。
【0019】
マルチポートプロセッサ400は、多くのポートプロセッサ410を含む。図4Aに示される実施形態では、4つのポートプロセッサ410があり、それぞれのポートプロセッサ410は、8つの回路を含む。その8つの回路は、以下のものである:(1)入出力(I/O)バッファ420、(2)I/Oコントローラ422、(3)プロセッサ間通信回路424、(4)チャネルプロセッサ426、(5)キャッシュコントローラ428、(6)内部メモリ430、(7)メモリコントローラ432、及び(8)メモリバッファ434。それらの回路のそれぞれは、以下で更に説明する。
【0020】
I/Oバッファ420は、通信チャネルから受信され、そして通信チャネルに伝送されることになるデータパケットをバッファリングする。I/Oコントローラ422は、データパケットの受信及び伝送を管理し、パケットをキューに入れ、及び、1つ以上のパケットのデータに、暗号化/解読、フォーマット変換、及びエラー訂正/検出の操作を実行するための、一時的な記憶要素を含むことができる。
【0021】
プロセッサ間通信回路424は、ネットワークの状況、より高いレベルのネットワーク制御コマンド、又は他のポートプロセッサ及びプロセッサ間I/O回路(interprocessor I/O circuit)のいずれかに応答して、特定のリアルタイムの動作を引き起こすための割込みコントローラを含むことができる。プロセッサ間I/O回路は、クロックタイマカウンタ及び他の回路を含むことができる。
【0022】
チャネルプロセッサ426は、ポートプロセッサ410の動作を管理し、マイクロプロセッサ、マイクロコンピュータ、マイクロコントローラ、特定用途向けIC(applications specific integrated circuit, ASIC)、デジタルシグナルプロセッサ(DSP)、有限状態機械(レジスタ記憶装置、Field Programmable Gate Array-FPGA、又はComplex Programmable Logic Device, CPLD)又は類似の回路として実施することができる。キャッシュコントローラ428は、キャッシュ(すなわち、第1レベルキャッシュ)を含む。内部メモリ430は、データ及びプログラムコードのための記憶を提供し、RAM、DRAM、ROM、フラッシュメモリ、他の類似のデバイス、又はこれらの組合わせとして実施することができる。更に、内部メモリ430は、ポートプロセッサ410を初期化するためのブートROM(又はブートフラッシュメモリも可能)を含むことができる。1つの実施形態では、内部メモリ430は、外部メモリが必要でないように、十分なメモリ(すなわち、十分なRAM、ROM、及び他のメモリ)を含むことができる。メモリコントローラ432は、ポートプロセッサ410と外部メモリの間のデータ交換を管理する。メモリバッファ434は、外部メモリから受信し、そして外部メモリに伝送することになるデータをバッファリングする。
【0023】
図4Aに示されるように、マルチポートプロセッサ400は、それぞれのポートプロセッサ410のためのサポート回路436を更に含む。特に、サポート回路436a、436b、436c、及び436dは、それぞれポートプロセッサ410a、410b、410c、及び410dに結合する。サポート回路436は、I/O回路、メモリ、ドライバ、及び他の回路を含むことができる。サポート回路436は、ポートプロセッサ410と、そのポートプロセッサに関連する1つ以上の通信チャネルの間の通信を容易にする。サポート回路436は、結合した通信チャネル上に、異なる物理的信号状態を伝達するビットのためのアナログ変換を提供する。例えば、このアナログ変換は、異なる信号化の取り決めを必要とするレーザをドライブするため、(例えば、0及び1としての)ロジック信号を変換することができる。
【0024】
通信機構
図4Aに示される実施形態を参照すると、それぞれのポートプロセッサ410は、以下の3つの通信機構を含む:(1)チャネルインタフェース440、(2)外部メモリインターフェース442、及び(3)プロセッサ内(又はプロセッサ間)通信インターフェース444。チャネルインターフェース440は、I/Oバッファ420及びI/Oコントローラ422を含む。外部メモリインターフェース442は、メモリコントローラ432及びメモリバッファ434を含む。プロセッサ間通信インターフェース444は、プロセッサ間回路(interprocessor circuit)424を含む。
【0025】
チャネルインターフェース440は、特定の組のパケットベースのプロトコルを使用してチャネルからのパケットベースの通信を処理するように設計することができる。他には、(多くの可能な組から)選択された組のパケットベースのプロトコルを使用してパケットを送信し、受信するように構成することができるようなプログラマブルな制御装置を有するように、チャネルインターフェース440を設計することができる。チャネルインターフェース440(すなわち、I/Oコントローラ424)にプロセッサ、有限状態機械、又は他の適当なデバイスを与えることによって、プログラマブルにすることができる。プロセッサ又は有限状態機械は、種々の状態の組の内の1つを使用して、開始して動作する性能を有するように設計することができる。そのようなプロセッサ又は有限状態機械は、固定したプログラムでも、再構成可能にプログラマブルであってもよい。
【0026】
プロセッサ間通信ネットワークは、複数のプロセッサ間通信インターフェース444から構成される。プロセッサ間通信ネットワークは、すべてのポートプロセッサ410、又はポートプロセッサ410のサブセットを相互接続することができる。更に、プロセッサ間通信ネットワークは、パケットデータ転送及び(恐らくは)転送コマンド/ステータス信号を含むことができる通信機構を含む。
【0027】
プロセッサ間通信ネットワークによって、種々のポートプロセッサ410は、2つ以上の通信チャネルの間の通信を調整し、効率的に管理することができる。例えば、1つのポートプロセッサ410を、特定の組のプロトコルを使用して1つのチャネルに割り当てることができ、他のポートプロセッサ410を、同じ又は異なる組のプロトコルを使用して他のチャネルに割り当てることができる。プロセッサ間通信ネットワークは、2つの(互換性がなくてもよい)チャネルの間の通信を可能にする。このように、プロセッサ間通信ネットワークは、図2に示されるように、ブリッジ232又はルータ234のように振る舞う。
【0028】
ポートプロセッサ410a、410b、410c及び410dの形状に注意する。回路は、概略で長方形として示されるが、それは、集積回路のレイアウト内でそれらが占有するであろうおおよその形状である。ポートプロセッサの個々の構成要素は、必ずしもほぼ同じ大きさである必要はないであろうが、略図の都合のためにこのように示している。しかし、ポートプロセッサの個々の構成要素は、おおよそ長方形であろう。
【0029】
更に、ポートプロセッサ410a、410b、410c及び410dの配置に注意する。それらは、隣接するポートプロセッサに関して長軸の方向が裏返されるように配置される。好適な実施形態は、同じ方向を共有し、裏返されている対と隣接するポートプロセッサの対を含む。ポートプロセッサが外部メモリインターフェースを占有しない場合の他の好適な実施形態は、それぞれのグループが方向を共有し、1つのグループの方向は、他のグループの方向から裏返されるような、ポートプロセッサの2つのグループのみを1つの集積回路中に含む。
【0030】
更に、プロセッサ間通信インターフェース444の配置に注意する。これらの回路は、必要な全体のワイヤ長を最少にするために、ポートプロセッサ内に、最適に配置される。これを実施するためには、どのポートプロセッサ配置を実施するのかを知る必要がある。方向を裏返すことになる場合、その配置は、必ずポートプロセッサの長方形の形状の中央にあるべきか、あるいは、ポートプロセッサの長軸の中心からほぼ等しい距離に位置する2つの構成部分に、それを分割すべきかのいずれかである。
【0031】
ポート処理
1つの実施形態では、それぞれのポートプロセッサ410は、1つ以上のパケットベースのプロトコルチャネルと同時にインターフェースする性能を有する。1つのポートプロセッサ410によるこれらのチャネルの間の高速パケット転送は、そのポートプロセッサ410内に、チャネルインターフェース通信機構によって供給される(すなわち、I/Oバッファ420及びI/Oコントローラ422によって提供される)。この転送機能は、そのポートプロセッサ410内の対応するチャネルプロセッサ426によって制御される。これはそれぞれのポートプロセッサ410内の「ローカル」なチャネルの間に、効率的で、低いオーバヘッドの転送機構を提供する。
【0032】
他の実施形態では、異なるポートプロセッサ410に結合したチャネル間の通信は、プロセッサ間通信ネットワークによって提供される。この実施形態では、コマンド及びステータスの処理が同時に起きる間、パケットデータ転送は、妨げられずに進行する。パケットデータ転送は、コマンド及びステータス情報転送から物理的に分離したチャネルで起きる。いずれも、他方の転送特性によって遅くなることはない。
【0033】
ポートプロセッサ410は、(ゲートウェイ236の設計と同様に)1つ以上の層で動作するように設計することができる。図2を参照すると、ポートプロセッサ410は、物理層210、データリンク層212、ネットワーク層214、又はこれらの層の組合わせの上で動作するように設計することができる。
【0034】
パケット転送及び変換は、ブロックデータ転送及びブロックデータ処理の分離した構成要素の機能に区分することができる。これらの分離できる機能は、お互いにおおよそ干渉しない同時に動作する別個の機構によって好適には実行される。ブロックデータ転送は、破壊的な侵入活動のため別個の通信機構の使用を通じた制御及びステータス情報の通信によって引き起こされる破壊的な侵入から好適には更に分離される。
【0035】
モジュールの設計
図4Bは、ポートプロセッサのモジュラー設計によるマルチポートプロセッサの設計の柔軟性を図解する。マルチポートプロセッサ402は、種々のパケットベースのプロトコルを使用してデータ転送をインターフェースし、処理することができる。他には、マルチポートプロセッサ402は、ただ1つのパケットベースのプロトコルを使用してただ1つのデータ転送をインターフェースし、処理することができる。図4Bで示されるように、ポートプロセッサ412a、412b、412c、及び412dは、インターフェース450a、450b、450c、及び450dをそれぞれ含む。それぞれのチャネルインターフェース450は、I/Oバッファ及び利用しようとするパケットベースのプロトコルに対応するI/Oコントローラの特定の組によって設計することができる。他には、上述のように、それぞれのチャネルインターフェース450は、多くの組のプロトコルの中から選択された組のプロトコルを使用してパケットの処理を行えるようにするプログラマブルな制御装置を有することができる。例えば、マルチポートプロセッサ402の1つのチャネルインターフェース450は、ISDN又はイーサネットをサポートすることができ、他のチャネルインターフェース450は、ATMをサポートすることができ、及び、他のチャネルインターフェース450は、SCSIをサポートすることができる。他の例として、4ポートのマルチポートパケットプロセッサは、1つのギガビットイーサネットポートプロセッサ、1つのファストイーサネットポートプロセッサ、1つのイーサネットポートプロセッサ、及びディスクファーム(disk farm)にインターフェースする1つのファイバチャネルポートプロセッサを含むことができる。
【0036】
図4Cは、6つのポートプロセッサ410を含むマルチポートプロセッサ404を図解するブロック図である。マルチポートプロセッサ404は、4つのポートプロセッサ410のみを含むマルチポートプロセッサ400(図4Aを参照する)と、形態が異なる。これらの例が示すように、マルチポートプロセッサは、2、4、6、8、16、32、又は他の任意の数を含む、どのような数のポートプロセッサも含むように設計することができる。偶数の数のポートプロセッサは、特定の利点(例えば、レイアウト効率)を提供することができるが、奇数の数のポートプロセッサも、設計し、利用することができる。また、上述のように、それぞれのポートプロセッサ410は、異なるチャネルインターフェース(すなわち、異なる組のI/Oバッファ及びI/Oコントローラ)又はプログラマブルなチャネルインターフェースを含むことができる。
【0037】
図4Aから4Cを参照すると、それぞれのポートプロセッサは、単一のチャネルインターフェースを有するように示される。しかし、ポートプロセッサは、どのような数のチャネルインターフェースも含むように設計することができる。更に、それぞれのポートプロセッサは、マルチポートプロセッサ内の他のポートプロセッサに関係なく(すなわち、個々に独立して)チャネルインターフェースを有するように設計することができる。例えば、マルチポートプロセッサは、1つのポートプロセッサが、1つのチャネルインターフェースを含み、第2のポートプロセッサが、2つのチャネルインターフェースを含み、第3のポートプロセッサが、3つのチャネルインターフェースを含む、などのようになるよう設計することができる。この例は、複数のRS−485チャネルサポートGPIB及び2つのUSBチャネルを含む。
【0038】
マルチポートプロセッサの他のアプリケーション
図5は、マルチポートプロセッサ500が、大容量記憶装置の環境でのデータ転送を処理するために使用されることを特徴とする特定のアプリケーションを示す。この環境は、通常、「ディスクファーム」と称される。ディスクファームは、多くの記憶デバイス(例えば、ハードディスクドライブ、テープドライブ、CDドライブ、フロッピーディスクドライブ、又は他の記憶デバイス)を含む。それぞれの記憶デバイスは、それぞれの通信チャネル510又は512を通じてマルチポートプロセッサ500に結合する。ディスクファームの例は、向上したシステムの信頼性のための冗長性のレベルを大容量ディスク記憶装置に提供するリダンダントディスクRAIDシステムである。普通、このデータ転送制御装置は、複雑なデバイスを必要とする。
【0039】
図6は、1つより多くのマルチポートプロセッサ600が、2次元のグリッドのパケットサーバ610として構成されることを特徴とする他の特定のアプリケーションを示す。図6は、4×4のグリッドのマルチポートプロセッサ600を示す。しかし、他の次元も使用することができ、対称性は通常必要とされない。1つの実施形態では、それぞれのマルチポートプロセッサ600のパケットベースの通信チャネルの一部は、特定のマルチポートプロセッサ600が位置する行及び列中で通信のために使用される。これらのチャネルは、異なるプロトコルを有することができる。例えば、1つのチャネルは、サーバ610内でより高いバンド幅を提供するためにP1394プロトコルを使用することができる。残りのチャネルは、通信にネットワークを提供するために使用される。
【0040】
図7は、1つより多くのマルチポートプロセッサ700が、3次元グリッドのパケットサーバ710として構成されることを特徴とする、更に他の特定のアプリケーションを示す。図7は、4×4×4のグリッドのマルチポートプロセッサ700を示す。しかし、他の次元も使用することができ、対称性も通常必要とされない。1つの実施形態では、それぞれのマルチポートプロセッサ700のパケットベースの通信チャネルの一部は、特定のマルチポートプロセッサ700が位置する行、列、及び象限(quadrant)中の通信のために使用される。これらのチャネルは、異なるプロトコルを有することができる。
【0041】
図6及び7に示される構造は、4次元アレイのマルチポートプロセッサ、5次元アレイのマルチポートプロセッサ、又は、Mを任意の整数としてM次元アレイのマルチポートプロセッサに拡張することができる。
【0042】
特定の実施形態の前述の説明は、どのような当業者も本発明を製造し使用することができるようにするために提供される。これらの実施形態への種々の変更は、当業者に簡単に明らかになるであろうし、ここで記述した包括的な原理は、発明能力を使用することなく、他の実施形態に適用することができる。例えば、それぞれのポートプロセッサは、必要な機能性によって、図4Aから4Cに示される回路と異なる回路を含むことができる。このように、本発明は、ここに示される実施形態に限定されることを意図していないが、ここに開示され、以下の請求項によって画定されるような原理及び新規な特徴と一致する最も広い範囲に適合させられるべきである。
【図面の簡単な説明】
【図1】 従来のコンピュータネットワークを図解する。
【図2】 OSIコンピュータネットワークの種々の層を図解する。
【図3】 LANチャネル通信ハブを図解する簡単なブロック図である。
【図4A】 集積マルチポートプロセッサの1つの実施形態のブロック図である。
【図4B】 集積マルチポートプロセッサの他の実施形態のブロック図である。
【図4C】 集積マルチポートプロセッサの更に他の実施形態のブロック図である。
【図5】 1つのマルチポートプロセッサが大容量記憶装置の環境でデータ転送を処理するために使用されることを特徴とする特定のアプリケーションを示す図である。
【図6】 1つより多くのマルチポートプロセッサが2次元グリッドのパケットサーバとして構成されることを特徴とする他の特定のアプリケーションを示す図である。
【図7】 1つより多くのマルチポートプロセッサが3次元グリッドのパケットサーバとして構成されることを特徴とする更に他の特定のアプリケーションを示す図である。
Claims (21)
- それぞれのポートプロセッサが、
少なくとも1つの通信チャネルと結合するためのチャネルインターフェースと、
前記通信チャネルを通じて受信又は送信されるデータパケットを処理する、前記チャネルインターフェースに結合したチャネルプロセッサと、を含み、当該ポートプロセッサは、1つの集積回路内に実施される、そのような1つより多くのポートプロセッサを備え、
前記ポートプロセッサは、前記集積回路中の短軸に沿って配置されたほぼ長方形のストリップ中に配置され、隣接するポートプロセッサについての短軸に関して裏返されていることを特徴とするマルチポートパケットプロセッサ。 - 1つのサポート回路が前記ポートプロセッサのそれぞれと結合し、当該サポート回路は、それぞれの通信チャネルとの通信を容易にする、そのような1つより多くのサポート回路を備えることを特徴とする請求項1に記載のマルチポートパケットプロセッサ。
- 1つ以上の前記ポートプロセッサの前記サポート回路は、前記結合した通信チャネル上に、異なる物理的信号状態を伝達するビットのためのアナログ変換回路を提供することを特徴とする請求項2に記載のマルチポートパケットプロセッサ。
- それぞれのポートプロセッサは、前記チャネルプロセッサ及び少なくとも1つの他のポートプロセッサへのプロセッサ間通信インターフェースに結合したプロセッサ間通信インターフェースを更に含むことを特徴とする請求項1に記載のマルチポートパケットプロセッサ。
- 少なくとも1つのポートプロセッサのチャネルインターフェースは、1つより多くのパケットベースのプロトコルをサポートすることを特徴とする請求項1に記載のマルチポートパケットプロセッサ。
- 前記チャネルインターフェースは、1つより多くのパケットベースプロトコルの組から選択されたプロトコルを使用して、データパケットの処理をするようにプログラマブルに再構成可能であることを特徴とする請求項5に記載のマルチポートパケットプロセッサ。
- 前記処理されるパケットベースのプロトコルは、ISDN、イーサネット(登録商標)、ファストイーサネット、ギガビットイーサネット、ATM、CDDI、FDDI、RS−485 GPIB、及びP1384の内の少なくとも1つを含むことを特徴とする請求項5に記載のマルチポートパケットプロセッサ。
- LANで使用されることを特徴とする請求項1に記載のマルチポートパケットプロセッサ。
- WANで使用されることを特徴とする請求項1に記載のマルチポートパケットプロセッサ。
- ディスク記憶装置環境で使用されることを特徴とする請求項1に記載のマルチポートパケットプロセッサ。
- 4つのポートプロセッサを含むことを特徴とする請求項1に記載のマルチポートパケットプロセッサ。
- 8つのポートプロセッサを含むことを特徴とする請求項1に記載のマルチポートパケットプロセッサ。
- それぞれのポートプロセッサは、前記チャネルプロセッサに結合したメモリを更に含むことを特徴とする請求項1に記載のマルチポートパケットプロセッサ。
- 前記ポートプロセッサは、ポートプロセッサの対として配置され、隣接するポートプロセッサの前記対は、ポートプロセッサの隣接する対についての短軸に関して裏返されていることを特徴とする請求項1に記載のマルチポートパケットプロセッサ。
- それぞれのポートプロセッサが、それぞれの通信チャネルに結合し、それぞれのポートプロセッサが、それぞれのパケットベースのプロトコルを使用したパケットベースの処理を提供し、当該ポートプロセッサのすべては、1つの集積回路内に実施される、そのような1つより多くのポートプロセッサを備え、
前記ポートプロセッサは、前記集積回路中の短軸に沿って配置されたほぼ長方形のストリップ中に配置され、隣接するポートプロセッサについての短軸に関して裏返されていることを特徴とするLANプロセッサ。 - 前記ポートプロセッサは、物理層のパケット上で動作することを特徴とする請求項1に記載のマルチポートパケットプロセッサ。
- 前記ポートプロセッサは、更にデータリンク層のパケット上で動作することを特徴とする請求項1に記載のマルチポートパケットプロセッサ。
- 前記ポートプロセッサは、更にネットワーク層のパケット上で動作することを特徴とする請求項1に記載のマルチポートパケットプロセッサ。
- 前記ポートプロセッサの内の少なくとも1つのチャネルインターフェースは、1つより多くの通信チャネルに結合することを特徴とする請求項1に記載のマルチポートパケットプロセッサ。
- 2次元アレイ中に配置された1つより多くのマルチポートパケットプロセッサであって、それぞれのマルチポートパケットプロセッサは、少なくとも1つの他のマルチポートパケットプロセッサに結合し、それぞれのマルチポートパケットプロセッサは、1つより多くのポートプロセッサであって、それぞれのポートプロセッサが、少なくとも1つのそれぞれの通信チャネルに結合し、それぞれのポートプロセッサが、それぞれのパケットベースのプロトコルを使用したパケットベースの処理を提供する、そのような1つより多くのポートプロセッサを含み、それぞれのマルチポートパケットプロセッサは、1つの集積回路内に実施されることを特徴とする、そのような1つより多くのマルチポートパケットプロセッサを備え、
前記ポートプロセッサは、前記集積回路中の短軸に沿って配置されたほぼ長方形のストリップ中に配置され、隣接するポートプロセッサについての短軸に関して裏返されていることを特徴とするグリッドアレイプロセッサ。 - 複数次元アレイ中に配置された1つより多くのマルチポートパケットプロセッサであって、それぞれのマルチポートパケットプロセッサは、少なくとも1つの他のマルチポートパケットプロセッサに結合し、それぞれのマルチポートパケットプロセッサは、1つより多くのポートプロセッサであって、それぞれのポートプロセッサが、少なくとも1つのそれぞれの通信チャネルに結合し、それぞれのポートプロセッサが、それぞれのパケットベースのプロトコルを使用したパケットベースの処理を提供する、そのような1つより多くのポートプロセッサを含み、それぞれのマルチポートパケットプロセッサは、1つの集積回路内に実施されることを特徴とする、そのような1つより多くのマルチポートパケットプロセッサを備え、
前記ポートプロセッサは、前記集積回路中の短軸に沿って配置されたほぼ長方形のストリップ中に配置され、隣接するポートプロセッサについての短軸に関して裏返されていることを特徴とする複数次元グリッドアレイプロセッサ。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US09/145,824 US6449273B1 (en) | 1997-09-04 | 1998-09-02 | Multi-port packet processor |
| US09/145,824 | 1998-09-02 | ||
| PCT/US1999/018293 WO2000014928A1 (en) | 1998-09-02 | 1999-08-11 | Multi-port packet processor |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2002524974A JP2002524974A (ja) | 2002-08-06 |
| JP4368527B2 true JP4368527B2 (ja) | 2009-11-18 |
Family
ID=22514721
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2000569552A Expired - Lifetime JP4368527B2 (ja) | 1998-09-02 | 1999-08-11 | マルチポートパケットプロセッサ |
Country Status (8)
| Country | Link |
|---|---|
| US (2) | US6449273B1 (ja) |
| EP (1) | EP1110351A4 (ja) |
| JP (1) | JP4368527B2 (ja) |
| KR (1) | KR20010074899A (ja) |
| CN (1) | CN1146189C (ja) |
| AU (1) | AU5479499A (ja) |
| CA (1) | CA2341212A1 (ja) |
| WO (1) | WO2000014928A1 (ja) |
Families Citing this family (23)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6389029B1 (en) * | 1998-11-10 | 2002-05-14 | Nortel Networks Limited | Local area network incorporating universal serial bus protocol |
| US6904043B1 (en) * | 1999-05-21 | 2005-06-07 | Advanced Micro Devices, Inc. | Apparatus and methods for storing and processing header information in a network switch |
| US6654903B1 (en) * | 2000-05-20 | 2003-11-25 | Equipe Communications Corporation | Vertical fault isolation in a computer system |
| US20020045952A1 (en) * | 2000-10-12 | 2002-04-18 | Blemel Kenneth G. | High performance hybrid micro-computer |
| US6907490B2 (en) * | 2000-12-13 | 2005-06-14 | Intel Corporation | Method and an apparatus for a re-configurable processor |
| US6826645B2 (en) * | 2000-12-13 | 2004-11-30 | Intel Corporation | Apparatus and a method to provide higher bandwidth or processing power on a bus |
| US7411966B2 (en) * | 2001-03-16 | 2008-08-12 | Siemens Aktiengesellschaft | Method and system for coupling data networks |
| US7177943B1 (en) | 2001-12-27 | 2007-02-13 | Cisco Technology, Inc. | System and method for processing packets in a multi-processor environment |
| US7349435B2 (en) * | 2002-07-11 | 2008-03-25 | Bay Microsystems, Inc. | Multiport overhead cell processor for telecommunications nodes |
| US20040008673A1 (en) * | 2002-07-11 | 2004-01-15 | Ygal Arbel | Overhead processing in telecommunications nodes |
| US20040008708A1 (en) * | 2002-07-11 | 2004-01-15 | Giacomini Peter J. | Overhead engine for telecommunications nodes |
| US20040008701A1 (en) * | 2002-07-11 | 2004-01-15 | Giacomini Peter J. | Hierarchical finite-state machines |
| JP4658606B2 (ja) * | 2002-10-04 | 2011-03-23 | スターレント・ネットワークス・エルエルシー | Ipネットワーク接続のための資源管理 |
| WO2004034676A1 (en) * | 2002-10-08 | 2004-04-22 | Koninklijke Philips Electronics N.V. | Integrated circuit and method for establishing transactions |
| US20040103220A1 (en) * | 2002-10-21 | 2004-05-27 | Bill Bostick | Remote management system |
| US6984701B2 (en) * | 2002-11-26 | 2006-01-10 | Lexmark International, Inc. | Polymeric dispersants to improve smear in printing |
| US20060080467A1 (en) * | 2004-08-26 | 2006-04-13 | Sensory Networks, Inc. | Apparatus and method for high performance data content processing |
| US7689821B2 (en) * | 2006-03-30 | 2010-03-30 | Agere Systems Inc. | Processor with configurable association between interface signal lines and clock domains |
| JP5079342B2 (ja) * | 2007-01-22 | 2012-11-21 | ルネサスエレクトロニクス株式会社 | マルチプロセッサ装置 |
| KR101453581B1 (ko) * | 2007-02-02 | 2014-10-22 | 사이마스트, 인크. | 통합된 고속 패킷 스위칭 방식 직렬 인터페이스를 갖는 프로세서 칩 아키텍처 |
| WO2010147590A1 (en) * | 2009-06-18 | 2010-12-23 | Hewlett-Packard Development Company, L.P. | Processor topology switches |
| WO2012099590A1 (en) * | 2011-01-20 | 2012-07-26 | Hewlett-Packard Development Company, L.P. | Composite processors |
| US9094333B1 (en) * | 2011-10-26 | 2015-07-28 | Qlogic, Corporation | Systems and methods for sending and receiving information via a network device |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5303078A (en) * | 1990-12-18 | 1994-04-12 | Bell Communications Research, Inc. | Apparatus and method for large scale ATM switching |
| US5559971A (en) * | 1991-10-30 | 1996-09-24 | I-Cube, Inc. | Folded hierarchical crosspoint array |
| US5515376A (en) * | 1993-07-19 | 1996-05-07 | Alantec, Inc. | Communication apparatus and methods |
| US5742602A (en) * | 1995-07-12 | 1998-04-21 | Compaq Computer Corporation | Adaptive repeater system |
| US5610910A (en) * | 1995-08-17 | 1997-03-11 | Northern Telecom Limited | Access to telecommunications networks in multi-service environment |
| US6002675A (en) * | 1997-01-06 | 1999-12-14 | Cabletron Systems, Inc. | Method and apparatus for controlling transmission of data over a network |
| US6091707A (en) * | 1997-12-18 | 2000-07-18 | Advanced Micro Devices, Inc. | Methods and apparatus for preventing under-flow conditions in a multiple-port switching device |
-
1998
- 1998-09-02 US US09/145,824 patent/US6449273B1/en not_active Expired - Lifetime
-
1999
- 1999-08-11 AU AU54794/99A patent/AU5479499A/en not_active Abandoned
- 1999-08-11 CA CA002341212A patent/CA2341212A1/en not_active Abandoned
- 1999-08-11 WO PCT/US1999/018293 patent/WO2000014928A1/en not_active Ceased
- 1999-08-11 EP EP99941072A patent/EP1110351A4/en not_active Withdrawn
- 1999-08-11 JP JP2000569552A patent/JP4368527B2/ja not_active Expired - Lifetime
- 1999-08-11 KR KR1020017002689A patent/KR20010074899A/ko not_active Ceased
- 1999-08-11 CN CNB998103268A patent/CN1146189C/zh not_active Expired - Fee Related
-
2002
- 2002-05-02 US US10/139,603 patent/US20020191613A1/en not_active Abandoned
Also Published As
| Publication number | Publication date |
|---|---|
| US6449273B1 (en) | 2002-09-10 |
| CN1146189C (zh) | 2004-04-14 |
| WO2000014928A1 (en) | 2000-03-16 |
| EP1110351A1 (en) | 2001-06-27 |
| US20020191613A1 (en) | 2002-12-19 |
| JP2002524974A (ja) | 2002-08-06 |
| CN1316145A (zh) | 2001-10-03 |
| AU5479499A (en) | 2000-03-27 |
| CA2341212A1 (en) | 2000-03-16 |
| EP1110351A4 (en) | 2005-02-09 |
| KR20010074899A (ko) | 2001-08-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4368527B2 (ja) | マルチポートパケットプロセッサ | |
| US5041963A (en) | Local area network with an active star topology comprising ring controllers having ring monitor logic function | |
| US11256644B2 (en) | Dynamically changing configuration of data processing unit when connected to storage device or computing device | |
| US6988161B2 (en) | Multiple port allocation and configurations for different port operation modes on a host | |
| Boden et al. | Myrinet: A gigabit-per-second local area network | |
| US8532086B1 (en) | Method and system for multi level switch configuration | |
| EP1454440B1 (en) | Method and apparatus for providing optimized high speed link utilization | |
| US7286544B2 (en) | Virtualized multiport switch | |
| US4951280A (en) | Method and apparatus for configuring data paths within a supernet station | |
| EP0869641A2 (en) | Fibre channel arbitrated loop dynamic loop sizing | |
| US20020073257A1 (en) | Transferring foreign protocols across a system area network | |
| JP2003508967A (ja) | ネットワーク・プロセッサ及び方法を用いるネットワーク・スイッチ | |
| US20110010522A1 (en) | Multiprocessor communication protocol bridge between scalar and vector compute nodes | |
| US20030043794A1 (en) | Data stream multiplexing in data network | |
| KR20250095741A (ko) | 다이-간 데이터 인터페이스를 통한 다수의 엔드포인트들로의 루트 컴플렉스 스위칭 | |
| US7155537B1 (en) | Infiniband isolation bridge merged with architecture of an infiniband translation bridge | |
| JP4599030B2 (ja) | 単独のcpuによるスイッチのスタックグループの帯域内管理 | |
| US6947391B2 (en) | Method of optimizing a network | |
| Johnson et al. | A supercomputer system interconnect and scalable IOS | |
| US7519089B1 (en) | Arrangement in a channel adapter for transmitting data according to link widths selected based on received link management packets | |
| Horst | Tnet: a reliable system area network for 1/0 and ipc | |
| US6922398B2 (en) | Optimized switch card | |
| Thurber | Architecture and Strategies for Local Networks: Examples and Important Systems | |
| Demming | Serial Storage Architecture: A Technology Overview |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20041227 |
|
| RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20050803 |
|
| RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20050803 |
|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20060201 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060712 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060913 |
|
| RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20060913 |
|
| RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20060913 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080930 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090216 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090518 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090727 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090826 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 4368527 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120904 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130904 Year of fee payment: 4 |
|
| 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 |
|
| 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 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| EXPY | Cancellation because of completion of term |