JP2002049573A - コンピュータ・システムおよびビット・ストリーム転送方法 - Google Patents
コンピュータ・システムおよびビット・ストリーム転送方法Info
- Publication number
- JP2002049573A JP2002049573A JP2001111177A JP2001111177A JP2002049573A JP 2002049573 A JP2002049573 A JP 2002049573A JP 2001111177 A JP2001111177 A JP 2001111177A JP 2001111177 A JP2001111177 A JP 2001111177A JP 2002049573 A JP2002049573 A JP 2002049573A
- Authority
- JP
- Japan
- Prior art keywords
- data
- memory
- processor
- computer system
- interface
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 19
- 238000012546 transfer Methods 0.000 title description 5
- 230000015654 memory Effects 0.000 claims abstract description 115
- 230000002093 peripheral effect Effects 0.000 claims abstract description 20
- 230000008569 process Effects 0.000 claims abstract description 6
- 238000012545 processing Methods 0.000 claims description 32
- 239000000758 substrate Substances 0.000 claims description 10
- 239000004065 semiconductor Substances 0.000 claims description 8
- 230000006870 function Effects 0.000 abstract description 13
- 238000003860 storage Methods 0.000 description 16
- 239000000872 buffer Substances 0.000 description 13
- 230000008859 change Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000003780 insertion Methods 0.000 description 3
- 230000037431 insertion Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000010845 search algorithm Methods 0.000 description 2
- 102100036738 Guanine nucleotide-binding protein subunit alpha-11 Human genes 0.000 description 1
- 101100283445 Homo sapiens GNA11 gene Proteins 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000009118 appropriate response Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000035755 proliferation Effects 0.000 description 1
- 238000010926 purge Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000003245 working effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Multi Processors (AREA)
Abstract
の性能を大きく改善するために、メモリ管理の主な機能
を実現するハードウェアを提供する。 【解決手段】 中央処理装置110と、支援周辺サブシ
ステム172,174,175,176との間、および
周辺サブシステム間に配置されたネットワーク・プロセ
ッサ171が、メモリ・スペースのアドレッシングを処
理するコンピュータ・システム。
Description
ステム、および、ネットワーク・スイッチングの内部使
用方法に関する。
に、興味ある人は、以下の従来の開示文献を参照された
い。これらの開示文献は、この出願の明細書に関係す
る。
許第5,008,878号明細書“High Spee
d Modular Switching Appar
atus for Circuit and Pack
et Switched Traffic”。
第5,724,348号明細書“Efficient
Hardware/Software Interfa
cefor a Data Switch”。
許出願第09/330,968号明細書“High S
peed Parallel/Serial Link
for Data Communication”。
許出願第09/384,689号明細書“VLSI N
etwork Processor and Meth
ods”。
許出願第09/384,691号明細書“Networ
k Processor Processing Co
mplex and Methods”。
許出願第09/384,692号明細書“Networ
k Switch Components and M
ethod of Operation”。
許出願第09/384,744号明細書“Networ
k Processor,Memory Organi
zation and Methods”。
ステムの開発は、コンピュータ時代の始まりとしてしば
しば引用されている。このとき以来、コンピュータ・シ
ステムは、極めて複雑な装置に進化し、コンピュータ・
システムは、多くの種々の装置の中に見つけることがで
きる。コンピュータ・システムは、典型的には、ハード
ウェア(例えば、半導体,回路ボードなど)と、ソフト
ウェア(例えば、コンピュータ・プログラム)との組合
せを含む。半導体処理およびコンピュータ・アーキテク
チャの進歩が、コンピュータ・ハードウェアの性能をよ
り高度にするにつれて、このハードウェアの高性能を利
用するために、より複雑なコンピュータ・ソフトウェア
が進化し、今日では、2,3年前に存在したコンピュー
タ・システムよりもかなりパワフルなコンピュータ・シ
ステムが存在している。
ュータをいかにして用いるかということに深く影響を与
えた。例えば、コンピュータの広大な急増は、コンピュ
ータを互いに通信させるコンピュータ・ネットワークの
開発を促進した。パーソナルコンピュータ(PC)の導
入に伴い、コンピュータを、多くの人が利用できるよう
になった。パーソナルコンピュータのネットワークが開
発されて、個々のユーザが互いに通信できるようになっ
た。このようにして、社内の多くの人が、1つのコンピ
ュータ・システム上で実行されるソフトウェア・アプリ
ケーションによって、ネットワーク上で同時に通信する
ことができるようになった。
と、このような通信ネットワークにおいて用いられるよ
うなスイッチおよびルーターの知識を前提としている。
特に、以下の説明は、ネットワーク・オペレーションを
レイヤに分割するネットワーク・アーキテクチャのOS
Iモデルを熟知していることを前提としている。OSI
モデルに基づく典型的なアーキテクチャは、レイヤ1
(時には、“L1”と表記される)から拡張している。
レイヤ1は、信号がレイヤ2,3,4などを介してレイ
ヤ7に渡される物理的な経路または媒体である。最後に
述べたレイヤ7は、ネットワークにリンクされたコンピ
ュータ・システム上で実行されるアプリケーション・プ
ログラミングのレイヤである。この明細書では、L1,
L2などについての記述は、ネットワーク・アーキテク
チャの対応するレイヤに言及することを意図している。
この説明はまた、このようなネットワーク通信における
パケットおよびフレームとして知られるビット・ストリ
ングを基本的に理解していることを前提としている。
て、求められている方法の1つは、パーソナルコンピュ
ータ・システムのユーザに周知であるように、システム
の中央処理装置すなわちCPUとして用いられるマイク
ロプロセッサの動作速度すなわち基本クロック速度を増
大することである。CPUの動作速度が、急激に増大す
るにつれて、データフロー速度は、このようなシステム
における主メモリのアクセス速度能力を超えるようにな
った。同時に、CPUによってアクセスされるメモリの
量が、急激に増大した。このようなメモリは、典型的に
は、揮発性および不揮発性の両方の形態で存在し、両タ
イプの使用可能なメモリ・ストレージが、最近、非常に
増大してきた。このことは、コンピュータ・システムに
おける主な困難性の1つをさらに強調することになっ
た。すなわち、CPU上で実行されるアプリケーション
・ソフトウェアによって用いられる“仮想メモリ・アド
レス”と、適切なメモリ素子またはコントローラ、およ
び、このようなデバイス(揮発性、不揮発性、両方のい
ずれか)のアドレス・スペースにおける特定の位置をア
クセスするために用いられる“物理メモリ・アクセス”
とのマッピングである。上述したメモリ素子およびコン
トローラは、CPUの機能を支援する周辺装置である。
多数の入力/出力すなわちI/Oコントローラと共に、
単一の連続物理アドレス範囲としてメモリを与えるよう
に構成された1つ以上のメモリ・コントローラを、周辺
装置として与える。各コントローラは、システム・メモ
リ・スペースの外側に固有アドレス(または、狭い範囲
のアドレス)を割り当てる。オペレーティング・システ
ム(Microsoft,OS/2,Linuxなどの
種々のWindows(登録商標)製品(これらに限定
されないが)を含む多数のオペレーティング・システム
がある)は、典型的には、システム上で実行されるアプ
リケーションの利点のために、かなり大きな連続する仮
想メモリ・スペースを与える。システムが最初に始動す
ると、かなりの仮想メモリ・スペースが、直接、物理メ
モリにマッピングする。メモリ・スペースに対する要求
が増大し、アプリケーション・プログラムがメモリ・ア
クセスに対する要求を変更させるにつれて、オペレーテ
ィング・システムは、ストレージI/Oサブシステムを
介して、通常は、ハードディスク,ドライブ,またはフ
ァイルとして知られているダイレクト・アクセス・スト
レージ・デバイス(DASD)上のストレージに、アイ
ドルメモリ・ブロックを“ページアウト(page o
ut)”する。メモリ・スペースが、作成され、ページ
インされ、ページアウトされ、最後には解放されるの
で、物理メモリに対する仮想メモリのマッピングは、使
用可能なメモリ内で殆ど完全にランダムになる。アプリ
ケーション・ソフトウェアは、仮想アドレスのみを知っ
ており、発行された各メモリ・アクセスは、所望のメモ
リ位置の適切な物理アドレスを、メモリ・コントローラ
にどうしても与えなければならならず、あるいは必要な
らば、ディスク上にページを配置し、主メモリにページ
をアクセスする前に、ページインすることが必要とされ
る。物理アドレスへの仮想アドレスのマッピング・プロ
セス(仮想アドレス変換として知られている)は、コン
ピュータ・システムの全動作に対するオーバーヘッドを
奪う有効な性能に寄与する。
明が実施されるコンピュータ・システムの性能を大きく
改善するために、メモリ管理の主要な機能を実現するハ
ードウェアを提供することにある。
これらの機能は、アプリケーションのためのメモリアド
レス・スペースの作成,解放,管理、仮想アドレスから
物理アドレスへの変換、ページインおよびページアウト
・オペレーションのためのメモリアドレスのディスク・
ストレージへのマッピング、ページング機能の自律実
行、キャッシング,パイプライニング,ページングによ
るメモリ最適化、および他のメモリ・アクセス方法を含
むことができる。
クライアント・システム(これらの用語は、コンピュー
タ・ネットワーク・アプリケーションの中で理解され
る)として機能することができるコンピュータ・システ
ムに、コンピュータ・システムが互いに相互接続される
ネットワーク・レベルにおいてこれまでに見られたスイ
ッチングの形態を挿入する。従って、本発明は、このよ
うなシステムの外部的な使用のために最近提供された特
定の技術を、コンピュータ・システムの中で内部的に適
用する。
を参照して、本発明を以下に十分に説明するが、以下の
詳細な説明の初めに、当業者ならば、本発明の好ましい
結果を依然として実現しながら、本発明を変更できるこ
とを理解すべきである。従って、以下の説明は、本発明
に限定することなく、当業者に向けられた広い教示の開
示として、および本発明を限定するものではないものと
して理解されるべきである。
ータ・システム100は、中央処理装置(CPU)11
0,主メモリ120,大容量ストレージ・インターフェ
ース140,およびネットワーク・インターフェース1
50を含み、これら全ては、システム・バス160によ
って接続されている。当業者ならば、このシステムが、
全てのタイプのコンピュータ・システム、すなわち、パ
ーソナルコンピュータ,中型コンピュータ,メインフレ
ームなどを含むことが分かるであろう。本発明の範囲内
では、このコンピュータ・システム100に、多くの追
加,変更,および削除を行わせることができることに注
意されたい。その例は、コンピュータ・モニター,入力
キーボード,キャッシュ・メモリ,およびプリンターな
どの周辺装置である。本発明は、一般に、パーソナルコ
ンピュータまたは中型コンピュータにより実現されるウ
ェブサーバとして動作することができる。
セッサおよび/または集積回路より構成することができ
る。CPU110は、主メモリ120内に格納されたプ
ログラム命令を実行する。主メモリ120は、コンピュ
ータがアクセスできるプログラムおよびデータを格納す
る。コンピュータ・システム100が始動すると、CP
Uはまず、オペレーティング・システム134のプログ
ラム命令を実行する。オペレーティング・システム13
4は、簡単に前述したように、コンピュータ・システム
100のリソースを管理する複雑なプログラムである。
これらリソースの幾つかは、CPU110,主メモリ1
20,大容量ストレージ・インターフェース140,ネ
ットワーク・インターフェース150,およびシステム
・バス160である。
ブサーバ・アプリケーション122,トランザクション
・プロセッサ124,1つ以上のマクロファイル12
6,構成ファイル128,1つ以上の言語プロセッサ1
30,オペレーティング・システム134,1つ以上の
アプリケーション・プログラム136,およびプログラ
ム・データ138を含む。アプリケーション・プログラ
ム136は、オペレーティング・システム134の制御
の下で、CPU110によって実行される。アプリケー
ション・プログラム136は、プログラム・データ13
8を入力として実行することができる。アプリケーショ
ン・プログラム136はまた、それらの結果を主メモリ
内のプログラム・データ138として出力することもで
きる。コンピュータ・システム100が、ウェブサーバ
として動作すると、CPU110は、特に、ウェブサー
バ・アプリケーション122を実行する。トランザクシ
ョン・プロセッサ124は、1つ以上のマクロファイル
126内に格納されたHTMLページを処理するプログ
ラムである。トランザクション・プロセッサ124が初
期化されると、トランザクション・プロセッサは、構成
ファイル128を読み取って、種々のタイプの照会を種
々の言語プロセッサ130に相関させる。動的データに
対する照会が、ページ内で見つかると、トランザクショ
ン・プロセッサ124は、構成データ(構成ファイルか
ら読み出される)から、その照会を処理するためにどの
言語プロセッサ130を呼び出すべきかを決定する。次
に、適切な言語プロセッサ130が、メモリまたはデー
タベースのようなデータソースを照会して、動的データ
を検索する。言語プロセッサ130は、動的データを、
トランザクション・プロセッサ124に渡し、トランザ
クション・プロセッサ124は、動的データを、選択さ
れたページのHTMLデータの中に挿入する。
コンピュータ・システム100に、磁気ディスク(ハー
ドディスク,ディスケット)および光学的ディスク(C
D−ROM)のような補助ストレージ・デバイスからデ
ータを検索して格納することを可能にする。これら大容
量ストレージ・デバイスは、通常、ダイレクト・アクセ
ス・ストレージ・デバイス(DASD)として知られ、
情報の永久ストアとして働く。1つの適切なタイプのD
ASDは、フロッピー(登録商標)ディスケット186
に対してデータを読み取ったりデータを書き込んだりす
るフロッピーディスク・ドライブ180である。DAS
Dからの情報は、多くの形式にすることができる。通常
の形式は、アプリケーション・プログラムおよびプログ
ラム・データである。大容量ストレージ・インターフェ
ース140によって検索されたデータは、しばしば、主
メモリ120内に格納され、この場合、CPU110
が、簡単に前述したページングインおよびページングア
ウト処理を用いて、データを処理できる。
80は、典型的には、別個のストレージ・デバイスであ
るが、コンピュータ・システム100は、周知の仮想ア
ドレッシング・メカニズムを用いるこの仮想アドレッシ
ング・メカニズムは、コンピュータ・システム100の
プログラムを、複数の小さいストレージ・エンティティ
ー(例えば、主メモリ120およびDASDデバイス1
85)へのアクセスの代わりに、あたかも大きな単一の
ストレージ・エンティティーへのアクセスのみのように
振る舞わせる。従って、特定の素子が、主メモリ120
内に含まれるように示されるが、当業者ならば、これら
素子全てが、同時に主メモリ120内に完全に含まれる
必要はないことが分かるであろう。用語“メモリ”は、
ここでは、総称的に、コンピュータ・システム100の
全仮想メモリ全体を示すことに注意すべきである。用語
“アドレッシング”およびその用語の変形は、しばし
ば、共に前述したように、仮想アドレッシングと物理ア
ドレッシングとの間に区別を設ける。
は、コンピュータ・システム100が、接続され得るネ
ットワークとの間で、データを送受信することを可能に
する。このネットワークは、ローカル・エリア・ネット
ワーク(LAN)、ワイド・ネットワーク(WAX)、
または、特にインターネット170とすることができ
る。インターネットに接続する適切な方法は、既知のア
ナログ技術および/またはデジタル技術と、将来開発さ
れるネットワーキング・メカニズムとを含む。多くの異
なるネットワーク・プロトコルを用いて、ネットワーク
を実現することができる。これらのプロトコルは、コン
ピュータをネットワーク上で通信させる特殊コンピュー
タ・プログラムである。インターネット上で通信するの
に用いられるTCP/IP(伝送制御プロトコル/イン
ターネット・プロトコル)は、適切なネットワーク・プ
ロトコルの一例である。本発明を実現するためには、こ
のようなプロトコルのいくつかを、システム100と内
部通信するために用いることができる。
ピュータ・システム100の種々のコンポーネント間を
転送されることを可能にする。コンピュータ・システム
100は、単一の主CPUおよび単一のシステム・バス
のみを含むように示されているが、当業者ならば、本発
明を、複数のCPUおよび/または複数のバスを有する
コンピュータ・システムを用いて実施できることが分か
るであろう。
ンピュータ・システムに関連して説明した(また、説明
を続けるであろう)が、当業者ならば、本発明の構成要
素が、種々の形態のプログラム製品として配布でき、本
発明が、配布を実際に行うために用いられる特定のタイ
プの信号保持媒体に拘わらず等しく適用できることが分
かるということに注意することは重要である。信号保持
媒体の例は、フロッピーディスクのような記録可能なタ
イプの媒体(例えば、図1の186)およびCD−RO
Mと、デジタルおよびアナログ通信リンクのような伝送
タイプの媒体とを含む。
0は、ウェブサーバとして動作することができる。その
ためには、ウェブサーバ・アプリケーション122が、
CPU110によって実行される。他のアプリケーショ
ン・プログラム136は、オペレーティング・システム
134が、マルチタスキング・オペレーティング・シス
テムであると仮定すれば、コンピュータ・システム10
0上で同時に実行することができる。ウェブサーバは、
一般に、インターネット170に接続される。前述した
ように、インターネットは、世界を広げ、多数のコンピ
ュータによって共有される、周知のコンピュータ・ネッ
トワークである。インターネット上には、多数のウェブ
サーバが存在する。インターネットにリンクされた各コ
ンピュータは、ネットワーク上で他のコンピュータと通
信することを可能にする自身の固有アドレスを有する。
多くの種々の形式のデータを、インターネットによって
送ることができる。その例として、電子メール,プログ
ラム・データ,デジタル化ボイス・データ,コンピュー
タ・グラフィック,およびウェブページがある。デバイ
スに接続されたインターネット・アドレスは、通常、ヘ
ッダとして知られているパケットまたはフレーム内にデ
ータ部分を与えることによって、データと関連付けされ
る。このようなアドレッシング技術は、本発明の目標を
追求する際に、コンピュータ・システム100内で内部
的に用いることができる。
テム・メモリを共に与え、および/または、直接アクセ
スする、CPU110とシステム100のこれらの要素
との間に介在されるように、コンピュータ・システム1
00内にノンブロッキング・スイッチ構造が与えられ
る。このスイッチ構造は、好適には、ネットワーク・プ
ロセッサによって与えられ、関連する2次スイッチ構造
を有しても有さないでもいずれでも機能する。ネットワ
ーク・プロセッサは、図2の171で示すように、コン
ピュータ・システム100に統合される。ネットワーク
・プロセッサのシステムへの組み込みをこのようにして
実現することによって、プロセッサ171からサブシス
テムの各々に、専用の全2重リンクを与えることによっ
て性能に関する利点が得られる。これらサブシステム
は、揮発性メモリ素子172,不揮発性メモリ素子17
4,ネットワーク・インターフェースのようなインター
フェース・デバイス175,およびキーボードまたはデ
ィスプレイのような他の入力/出力デバイス176を含
むことができる。プロセッサ171によって与えられる
ハードウェア内で、メモリアドレス変換,データ・パイ
プライニング,およびキャッシングを行うことによっ
て、CPU110のサイクルが、より有効な実行アプリ
ケーション・ソフトウェアに解放される。これらメモリ
制御機能をハードウェア補助機構によって実現すること
によって、複数の同時オペレーションを並列に実行する
ことができる。この場合(対照的なものとして)、ソフ
トウェア・インプリメンテーションは、一度に1つのタ
スクのみを実行する。アドレススペースが連続的に作
成,変更,削除されるメモリ管理の動的性質は、メモリ
をアクセスするようなプロセッサ間の競合を避けるため
に、各アドレス変換に、ソフトウェア・インプリメンテ
ーションを実行するプロセッサを同期させることを強要
する。
クチャは、ネットワーク・プロセッサ(NP)ハードウ
ェア・サブシステム、および、任意には、制御点プロセ
ッサ上で実行されるソフトウェア・ライブラリに基づい
ている。ネットワーク・プロセッサ・サブシステムは、
L2,L3,L4+データ・ストリングの構文解析およ
び変換のために初期に構成された高性能フレーム転送エ
ンジンである。ネットワーク・プロセッサ・サブシステ
ムは、装置を経る高速パスを与えることができ、他方、
ソフトウェア・ライブラリおよび制御点プロセッサは、
高速パスを維持するために必要とされる管理機能および
経路ディスカバリ機能を与える。制御点プロセッサおよ
びそこで実行されるソフトウェア・ライブラリは、共
に、システムの制御点(CP)を定める。制御点プロセ
ッサは、ネットワーク・プロセッサ内に組み込まれる
か、ネットワーク・プロセッサから物理的に分離される
か、あるいは、無いものとすることができる。
ロセッサを、以下の機能のうち1つ以上を実行できるプ
ログラマブル通信集積回路として定義した。
のような既知の特徴に基づいてパケットを識別するこ
と。
プロトコルに従うようにパケットを変更する機能(例え
ば、IPのヘッダ内の存続時間(time−to−li
ve)フィールドを更新する機能)。
イング,パケット・デキューイング,および特定アプリ
ケーションのためのパケット・スケジューリングに対す
る設計戦略を反映させる機能。
を送信および受信し、および、パケットを適切なアドレ
スに転送またはルーティングする機能。
な記述であるが、NPの全ての潜在的能力および利点
は、まだ実現されていない。NPは、予めソフトウェア
で処理されたネットワーキング・タスクを、ハードウェ
アで実行させることによって、有効システム帯域幅を増
大し、広範囲のアプリケーションにおける待ち時間の問
題を解決することができる。さらに、NPは、並列分散
処理およびパイプライン処理構成のようなアーキテクチ
ャによって、速度改善を与えることができる。これらの
能力は、有効なサーチエンジンを使用可能にし、スルー
プットを増大し、複合タスクの高速実行を与えることが
できる。この定義は、一般に、ワイド・エリア・ネット
ワーク(WAN)に関係する用法と一致する用語“パケ
ット”を用いる。ここで説明した本発明は、一般に、ロ
ーカル・エリア・ネットワーク(LAN)に関係する用
法と一致する用語である“フレーム”に対して同様に機
能的である。本発明は、単一コンピュータ・システムの
内部ワーキング内でのこの技術の応用を意図している。
Cに対するのと同じように、ネットワークに対する基本
的ネットワーク構築ブロックとなることが予測されてい
る。NPによって与えられる典型的な能力は、リアルタ
イム処理,セキュリティ,格納および転送,スイッチ構
造,およびIPパケットの処理能力および学習能力であ
る。ここで働かされるように、このような能力が用いら
れて、基本的には、コンピュータ産業内で基準となって
いる内部バス構造から離れて、これまでにネットワーク
・プロセッサによってこのようなバスに沿って発生する
データ転送を超えるようにする。本発明によって用いら
れるNPは、例えば、周知の内部バス構造において得ら
れる能力を超える、アドレス変換およびプロセッサ間通
信(ブロードキャストを含む)に能力を与える。本発明
によって、これらの能力が、本発明によるコンピュータ
・システム内で働かされることが意図されている。
ロセッサおよび特殊な論理回路を含む。プロセッサ・モ
デルNPは、低レベルの統合での分散処理を可能にし、
高いスループット,フレキシビリティ,および制御を与
える。プログラマビリティ(programmabil
ity)は、新しいASIC構造を要求することなく、
新しいプロトコルおよび方法への容易な移行を可能にす
る。
本的な構築ブロックとして、ネットワーク・プロセッサ
(NP)および制御点(CP)を用いて、モジュラーユ
ニットとなるように構成されている。任意のスイッチン
グ構造デバイスは、このようなユニットの3つ以上が互
いに連結されるときに用いることができる。任意のスイ
ッチング構造デバイスは(使用されるならば)、前述し
た1991年4月16日に発行された米国特許第5,0
08,878号明細書“High SpeedModu
lar Switching Apparatus f
or Circuit and Packet Swi
tched Traffic”に開示される。あるいは
また、単一ユニット(後述する)よりなるデータ・アラ
イン・シリアル・リンク(DASL)ポートを、アップ
サイドからダウンサイドに直接にリンクすることがで
き、単一ユニットを、ここで説明した方法の特定のアプ
リケーションに適切なタイプのスイッチとして働かせる
ことができる。
本発明によって意図されるインターフェース・デバイス
(また、ここでは、ネットワーク・プロセッサすなわち
NPとみなされる)は、以下のものを有する単一の大規
模集積(VLSI)回路デバイスすなわちチップであ
る。すなわち、半導体基板と、基板上に形成された複数
のインターフェース・プロセッサと、基板上に形成さ
れ、インターフェース・プロセッサへのアクセス可能な
命令を格納する内部命令メモリと、基板上に形成され、
デバイスを経てインターフェース・プロセッサに渡され
るデータをアクセス可能に格納する内部データ・メモリ
と、複数の入力/出力ポートとを有する。また、インタ
ーフェース・プロセッサは、ここでは、しばしば、ピコ
プロセッサまたは処理ユニットとみなされる。与えられ
たポートは、内部データ・メモリを外部データ・メモリ
に接続する少なくとも1つのポートを有し、このような
多数のポートは、インターフェース・デバイスを通るデ
ータを、コンピュータ・システム100のメモリ素子お
よび周辺装置と交換するために必要とされる。制御点
(存在するならば)は、命令メモリに以下のような命令
をロードすることによって、インターフェース・デバイ
スと共働する。すなわち、命令は、データ交換入力/出
力ポート間のデータ交換と、データ・メモリを経るデー
タのフローとを指示する際に、インターフェース・プロ
セッサによって実行される。CPおよびNPは、単一の
半導体基板上に集積することができる。
は、それが組み込まれるアセンブリは別にして、進歩的
であると考える。さらに、ここに開示するネットワーク
・プロセッサは、ここに開示される要素の範囲内で、こ
こでは十分に説明していない他のおよびさらなる発明を
有するものと考える。
0と、基板上に集積された複数のサブアセンブリとを有
するネットワーク・プロセッサ・チップのブロック図を
示す。サブアセンブリは、アップサイド構成およびダウ
ンサイド構成に配置される。ここで用いられるように、
“アップサイド”は、ここに開示するネットワーク・プ
ロセッサへのデータのフローに関係し、一方、“ダウン
サイド”は、ネットワーク・プロセッサから、ネットワ
ーク・プロセッサによって指示されるデバイスまたは素
子へのデータのフローをいう。このデータフローは、個
々の構成に従う。その結果、アップサイド・データフロ
ーとダウンサイド・データフローとがある。アップサイ
ドのサブアセンブリは、エンキュー・デキュー・スケジ
ューリングUP[Enqueue−Dequeue−S
cheduling UP(EDS−UP)]ロジック
16,複合化IO−UP[multiplexed I
/O−UP(PPM−UP)]14,スイッチ・データ
・ムーバ[SwitchData Mover−UP
(SDM−UP)]18,システム・インターフェース
[System Interface(SIF)]2
0,データ・アライン・シリアル・リンクA[Data
Align Serial Link A(DASL
A)]22,およびデータ・アライン・シリアル・リン
クB[DataAlign Serial Link
B(DASLB)]24を含む。データ・アライン・シ
リアル・リンクは、1999年6月11月に出願された
米国特許出願第09/330,968号明細書“Hig
h Speed Parallel/Serial L
ink for Data Communicatio
n”の中に十分説明される。ここに開示される本発明の
装置の好適な形態は、DASLリンクを用いるが、本発
明は、特に、データフローが、VLSI構造内にあるよ
うに制限されるところで、他の形態のリンクを用いて、
かなり高いデータフロー速度を実現することを意図して
いる。
L−A26,DASL−B28,SIF30,SDM−
DN32,EDN−DN34,およびPPM−DN36
を含む。また、チップは、複数の内部S−RAM,トラ
フィックMgtスケジューラ(Traffic Mgt
Scheduler)40,および組み込みプロセッ
サ複合体[Embedded Processor C
omplex(EPC)]12を含む。インターフェー
ス・デバイス38は、個々のDMUバスによって、I/
Oポート14および36に結合される。インターフェー
ス・デバイス38は、コンピュータ・システム100と
の内部通信に適した適切なL1回路とすることができ
る。このタイプのインターフェースは、部分的には、チ
ップが接続されるデバイスおよび素子によって指示され
る。望ましくは、複数の外部D−RAMおよびS−RA
Mが、チップによる使用に対して利用できることであ
る。
般的なデータのフローを示す。例えば、I/Oポートか
ら受け取られたデータフローは、EDS−UPによって
内部データ・ストア(Data Store)バッファ
内に格納される。これらのデータフローは、通常のデー
タ・フレーム(Data Frame)またはシステム
制御ガイド化フレームのいずれかとしてみなされ、EP
Cにエンキューされる(図3を参照)。EPCは、最大
N個(N>1)の並列のフレームに作用できるN個のプ
ロトコル・プロセッサを含む。10個のプロトコル・プ
ロセッサを有する実施例では、10個のうち2個のプロ
トコル・プロセッサが特殊化される。すなわち、ガイド
化フレーム(Guided Frame)を処理するプ
ロトコル・プロセッサ(Generic Centra
l HandlerすなわちGTH)と、コントロール
・メモリ(Control Memory)内にルック
アップ・データ(Lookup Data)を構築する
プロトコル・プロセッサ(Generic Tree
HandlerすなわちGTH)である。EPCはま
た、以下のものを含む。すなわち、データフローをアイ
ドル・プロセッサにマッチングさせるディスパッチャ,
フレーム・シーケンスを保持する完了ユニット,10個
のプロセッサ全てに共有される共通命令メモリ(Com
mon Instruction Memory),フ
レーム種別とフレームの開始命令アドレスを決定する働
きをするコプロセッサとを決定するクラシファイア・ハ
ードウェア補助機構(Classifier Hard
ware Assist),フレーム・バッファの読み
取りおよび書き込みオペレーションを制御するイングレ
スおよびエグレス・データ・ストア・インターフェース
(Igress andEgress Data St
ore interface),10個のプロセッサが
制御メモリを共有することを可能にする制御メモリ・ア
ービタ(Control Memory Arbite
r),内部NPデータ構造へのデバッグ・アクセスを可
能にするウェブ制御アービタおよびインターフェース
(Web Control Arbiter and
interface),および、他のハードウェア構成
を含む。
きに、ディスパッチャによってGCHプロセッサに送信
される。ガイド化フレーム内にエンコードされた、レジ
スタ書き込み,カウンタ読み取り,I/Oポート構成変
更などのようなオペレーションが、実行される。追加ポ
ートエントリのようなルックアップ・テーブル変更は、
メモリ読み取りおよび書き込みのような制御メモリ・オ
ペレーションのためのルックアップ・データ・プロセッ
サに渡される。MIBカウンタ読み取りのような幾つか
のコマンドは、応答フレームが作成されて、適切なデバ
イス上の適切なポートに転送されることを要求する。幾
つかのケースでは、ガイド化フレームは、インターフェ
ース・デバイスのエグレス・サイドに対してエンコード
される。これらのフレームは、照会されているインター
フェース・デバイスのエグレス・サイドに転送され、そ
の後、エンコードされたオペレーションを実行し、適切
な応答フレームを作成する。
ップを実行するために、次の使用可能なプロトコル・プ
ロセッサにディスパッチされる。フレーム・データは、
クラシファイア・ハードウェア補助機構(CHA)エン
ジンからの結果と共に、プロトコル・プロセッサに渡さ
れる。この結果は、ツリーサーチ・アルゴリズムおよび
開始している共通命令アドレス(CIA)を決定する。
支援されるツリーサーチ・アルゴリズムは、以下のもの
を含むことができる。すなわち、固定マッチツリー(レ
イヤ2のMACテーブルのような正確なマッチングを要
求する固定サイズパターン),最長接頭部マッチツリー
(サブネットIP転送のような可変長マッチヲ要求する
可変長パターン),および、ソフトウェア管理のツリー
(フィルタルールに用いられるような範囲またはビット
マスク・セットのいずれかを定める2つのパターン)で
ある。
セッサの一部であるツリーサーチ・エンジン(TSE)
コプロセッサの補助によって実行される。TSEコプロ
セッサは、制御メモリ・アクセスを実行し、実行を継続
するために、プロトコル・プロセッサを解放する。制御
メモリは、テーブル,カウンタ,およびピココードによ
って必要とされる他のデータを全て格納する。制御メモ
リ・オペレーションは、10個のプロセッサ複合体間の
メモリ・アクセスを調停する制御メモリ・アービタによ
って管理される。
プロセッサによりアクセスされる。データ・ストア・コ
プロセッサは、1次データ・バッファ(フレーム・デー
タの16バイト・セグメントを最大8個まで保持す
る),スクラッチ・パッド・データ・バッファ(また、
フレーム・データの16バイト・セグメントを最大8個
まで保持する),およびデータ・ストア・オペレーショ
ンのための所定の制御レジスタを含む。マッチングが見
つかると、イングレス・フレーム変更は、VLANヘッ
ダ挿入またはオーバーレイを含むことができる。この変
更は、インターフェース・デバイス・プロセッサ複合体
によって実行されず、むしろハードウェア・フラグは、
引き出され、他のイングレス・スイッチ・インターフェ
ース・ハードウェアが、変更を実行する。他のフレーム
変更は、イングレス・データ・ストア内に保持されたフ
レーム・コンテンツを変えることによって、ピココード
およびデータ・ストア・コプロセッサによって実現され
る。
サーチに対して支援された同じアルゴリズムを支援す
る。ルックアップは、TSEコプロセッサによって実行
され、実行を続けるために、プロトコル・プロセッサを
解放する。全ての制御メモリ・オペレーションは、制御
メモリ・アービタによって管理され、制御メモリ・アー
ビタは、10個のプロセッサ複合体間にメモリ・アクセ
スを割り当てる。
ストア・コプロセッサによってアクセスされる。データ
・ストア・コプロセッサは、1次データ・バッファ(フ
レーム・データの16バイト・セグメントを最大8個ま
で保持する),スクラッチパッド・データ・バッファ
(また、フレーム・データの16バイト・セグメントを
最大8個まで保持する),およびデータ・ストア・オペ
レーションのための幾つかの制御レジスタを含む。成功
したルックアップの結果は、転送情報と、所定の場合に
は、フレーム変更情報を含む。フレーム変更は、ヘッダ
削除,ヘッダ・チェックサム再計算,CRCオーバーレ
イまたは挿入,およびDA/SAオーバーレイまたは挿
入を含むことができる。ヘッダ・チェックサムは、チェ
ックサム・コプロセッサによって準備される。変更は、
インターフェース・デバイス・プロセッサ複合体によっ
て実行されず、むしろハードウェア・フラグが作成さ
れ、PMMエグレス・ハードウェアが、変更を実行す
る。完了すると、エンキュー・コプロセッサを用いて、
EDSエグレス・キュー内にフレームをエンキューし、
それらを完了ユニットに送るのに必要なフォーマットを
作成するのを助ける。完了ユニットは、10個のプロト
コル・プロセッサから、エグレスI/Oポートに送るE
DSエグレス・キューまでのフレーム・オーダーを保証
する。
レス・ハードウェアによってポートに送られる。
にほぼ類似する従来のコンピュータ・システムにおいて
は、キャッシュ管理は、通常、メモリ・コントローラ内
のハードウェア機能である。このような実施は、一般
に、“自身の”種々のメモリ・セグメントを検索できる
変更アプリケーション・プログラムを説明することはで
きない。本発明の実施では、メモリ・スペースの所有権
は、メモリ・コンテンツのキャッシングと共に、よりイ
ンテリジェントに管理され、従って、フィル・キャッシ
ュのよりインテリジェントな組は、キャッシュせず、ア
プリケーションが、よりアクティブとなるか、あるいは
アクティビティを停止させるときに、また、メモリ・ス
ペースが、ページインおよびページアウトするときに、
パージ・キャッシュ決定を行うことができる。NPは、
メモリ・スペースとアプリケーションとの間に類似性を
維持することができ、このことは、優先度およびセキュ
リティのような種々の属性へのリンケージを可能にす
る。その結果、メモリは、仮想メモリ読み取りまたは書
き込みオペレーションの各々および全部に基づいて、最
適化されるよりはむしろ、実行アプリケーション・プロ
グラムのコンテキスト内でグローバルに管理される。
は、内部レジスタ,カウンタ,およびメモリへのアクセ
スを可能にする。ウェブはまた、デバッギングおよび診
断のための命令ステップおよび割り込み制御を制御する
外部インターフェースを含む。
は、無許可のメモリ・アクセス通知をチェックするメモ
リ範囲を与え、プロトコル・プロセッサ実行と並列に動
作するツリーサーチ命令(メモリ読み取り,書き込み,
または、読み取り−加算−書き込みのような)を実行す
る。
・プロセッサへのフレームの送りを制御し、割り込みお
よびタイマーを管理する。
ーゲット・ポート・キューまでのフレーム・オーダーを
保証する。リッチ命令セットは、条件付き実行,パッキ
ング(入力ハッシュ・キーのための),条件付き分岐,
符号付きおよび符号なしのオペレーション,先行ゼロ以
上のカウントを含む。
ンジンは、各フレームのプロトコル・ヘッダを渡し、こ
の情報にフレームを与える(フレームがプロトコル・プ
ロセッサにディスパッチされるとき)。
の両方のメモリへのプロセッサ・アクセスを制御する。
・バッファ(例えば、DS0)、または2つの外部デー
タ・バッファ(DS0およびDS1)のいずれかに格納
することができる。各バッファは、1対の2M×16ビ
ット×4バンクのDDR DRAM(64バイトのフレ
ームを最大256Kまで格納する),または、1対の4
M×16ビット×4バンクのDDR DRAM(64バ
イトのフレームを最大512Kまで格納する)で構成す
ることができる。4.57Mbpのレイヤ2およびレイ
ヤ3のスイッチングを支援するためには、2.28Mb
psに対しての単一の外部データ・バッファ(例えばD
S0)を選択するか、または、第2のバッファ(例えば
DS1)を追加する。第2のバッファの追加は、性能を
改善するが、フレーム容量を増大することはない。外部
データ・バッファ・インターフェースは、266MHz
のデータ・ストローブ、133MHzのクロック速度で
実行し、構成可能なCASの待ち時間およびドライブ強
度を支援する。
トおよび1つの送信ポートが、プロトコル・プロセッサ
・リソースを用いることなく、システム指示された監視
ポートにコピーされることを可能にする。ミラーリング
されたインターフェース・デバイス・ポートは、フレー
ムおよびスイッチ制御データを付加するように構成され
る。個別データ・パスは、イングレス・スイッチ・イン
ターフェースへのダイレクト・フレーム・エンキューイ
ングを可能にする。
な実施例を説明した。また、特定の用語が用いられてい
るが、前述した説明は、限定するためにではなく、総称
的および説明の意味で、専門用語を用いている。
の事項を開示する。 (1)中央処理装置と、前記中央処理装置に動作的に関
連する複数の周辺装置とを備え、前記複数の周辺装置
は、前記中央処理装置によってデータを処理するため
に、前記中央処理装置とデータフローを交換する、揮発
性メモリと、不揮発性メモリと、複数のI/Oサブシス
テムとを有し、前記中央処理装置と前記周辺装置との
間、および前記周辺装置間に動作的に介在されたネット
ワーク・プロセッサを備え、前記ネットワーク・プロセ
ッサは、複数のインターフェース・プロセッサと、命令
を前記インターフェース・プロセッサにとってアクセス
可能に格納する命令メモリと、前記ネットワーク・プロ
セッサを介して、前記周辺装置との間でやり取りするデ
ータを、前記インターフェース・プロセッサにとってア
クセス可能に格納するデータ・メモリと、前記ネットワ
ーク・プロセッサを介して渡されるデータを、前記周辺
装置と交換する複数の入力/出力ポートとを有し、前記
インターフェース・プロセッサによる、前記命令メモリ
にロードされた命令の実行に応答して、前記入力/出力
ポート間のデータ交換と、前記データ・メモリを介して
前記揮発性メモリおよび前記不揮発性メモリとの間でや
り取りされるデータのフローとを指示する際に、前記ネ
ットワーク・プロセッサが前記中央処理装置と共働す
る、コンピュータ・システム。 (2)前記ネットワーク・プロセッサは、半導体基板を
備え、さらに、前記半導体基板上に、前記インターフェ
ース・プロセッサと、前記命令メモリと、前記データ・
メモリと、前記入力/出力ポートとが形成された、上記
(1)に記載のコンピュータ・システム。 (3)前記インターフェース・プロセッサの数は、4個
を超える、上記(1)に記載のコンピュータ・システ
ム。 (4)前記入力/出力ポートのうちの1つは、前記複数
のI/Oサブシステムのうちの対応する1つとそれぞれ
動作的に接続される、上記(1)に記載のコンピュータ
・システム。 (5)コンピュータ・システム内を転送されるデータの
ビット・ストリームを、ネットワーク・プロセッサを介
して、中央処理装置との間でやり取りするステップと、
前記コンピュータ・システム内を転送されるデータのビ
ット・ストリームを、前記ネットワーク・プロセッサを
介して、前記中央処理装置と動作的に関連する周辺装置
との間でやり取りするステップと、前記ネットワーク・
プロセッサにおいて、前記ビット・ストリームについて
の、仮想メモリ・アドレスおよび物理メモリ・アドレス
を処理して変換するステップとを含む、方法。 (6)前記アドレスを処理するステップは、ビット・ス
トリームを複数のデバイスに送受信するステップを含
む、上記(5)に記載の方法。
示す図である。
略図であり、この環境における本発明の実施を示す図で
ある。
の概略図である。
の概略図である。
Claims (6)
- 【請求項1】中央処理装置と、 前記中央処理装置に動作的に関連する複数の周辺装置と
を備え、前記複数の周辺装置は、前記中央処理装置によ
ってデータを処理するために、前記中央処理装置とデー
タフローを交換する、揮発性メモリと、不揮発性メモリ
と、複数のI/Oサブシステムとを有し、 前記中央処理装置と前記周辺装置との間、および前記周
辺装置間に動作的に介在されたネットワーク・プロセッ
サを備え、 前記ネットワーク・プロセッサは、 複数のインターフェース・プロセッサと、 命令を前記インターフェース・プロセッサにとってアク
セス可能に格納する命令メモリと、 前記ネットワーク・プロセッサを介して、前記周辺装置
との間でやり取りするデータを、前記インターフェース
・プロセッサにとってアクセス可能に格納するデータ・
メモリと、 前記ネットワーク・プロセッサを介して渡されるデータ
を、前記周辺装置と交換する複数の入力/出力ポートと
を有し、 前記インターフェース・プロセッサによる、前記命令メ
モリにロードされた命令の実行に応答して、前記入力/
出力ポート間のデータ交換と、前記データ・メモリを介
して前記揮発性メモリおよび前記不揮発性メモリとの間
でやり取りされるデータのフローとを指示する際に、前
記ネットワーク・プロセッサが前記中央処理装置と共働
する、コンピュータ・システム。 - 【請求項2】前記ネットワーク・プロセッサは、半導体
基板を備え、さらに、前記半導体基板上に、前記インタ
ーフェース・プロセッサと、前記命令メモリと、前記デ
ータ・メモリと、前記入力/出力ポートとが形成され
た、請求項1に記載のコンピュータ・システム。 - 【請求項3】前記インターフェース・プロセッサの数
は、4個を超える、請求項1に記載のコンピュータ・シ
ステム。 - 【請求項4】前記入力/出力ポートのうちの1つは、前
記複数のI/Oサブシステムのうちの対応する1つとそ
れぞれ動作的に接続される、請求項1に記載のコンピュ
ータ・システム。 - 【請求項5】コンピュータ・システム内を転送されるデ
ータのビット・ストリームを、ネットワーク・プロセッ
サを介して、中央処理装置との間でやり取りするステッ
プと、 前記コンピュータ・システム内を転送されるデータのビ
ット・ストリームを、前記ネットワーク・プロセッサを
介して、前記中央処理装置と動作的に関連する周辺装置
との間でやり取りするステップと、 前記ネットワーク・プロセッサにおいて、前記ビット・
ストリームについての、仮想メモリ・アドレスおよび物
理メモリ・アドレスを処理して変換するステップとを含
む、方法。 - 【請求項6】前記アドレスを処理するステップは、ビッ
ト・ストリームを複数のデバイスに送受信するステップ
を含む、請求項5に記載の方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/551,790 US6965922B1 (en) | 2000-04-18 | 2000-04-18 | Computer system and method with internal use of networking switching |
US09/551790 | 2000-04-18 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002049573A true JP2002049573A (ja) | 2002-02-15 |
JP3935684B2 JP3935684B2 (ja) | 2007-06-27 |
Family
ID=24202690
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001111177A Expired - Fee Related JP3935684B2 (ja) | 2000-04-18 | 2001-04-10 | コンピュータ・システムおよびビット・ストリーム転送方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US6965922B1 (ja) |
JP (1) | JP3935684B2 (ja) |
KR (1) | KR100396974B1 (ja) |
CN (1) | CN100387006C (ja) |
TW (1) | TW535069B (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6985431B1 (en) * | 1999-08-27 | 2006-01-10 | International Business Machines Corporation | Network switch and components and method of operation |
US7092404B1 (en) * | 2001-04-27 | 2006-08-15 | Tropic Networks Inc. | Interposer chip for protocol conversion |
US7047303B2 (en) * | 2001-07-26 | 2006-05-16 | International Business Machines Corporation | Apparatus and method for using a network processor to guard against a “denial-of-service” attack on a server or server cluster |
DE10161673A1 (de) * | 2001-12-14 | 2003-06-26 | Bosch Gmbh Robert | Verfahren zur Datenübertagung und Sende bzw. Empfangseinrichtung in einem verteilten System |
US20040143682A1 (en) * | 2003-01-21 | 2004-07-22 | Brocade Communications Systems, Inc. | Network switch containing a hard disk drive |
CN100365575C (zh) * | 2006-03-18 | 2008-01-30 | 华为技术有限公司 | 一种实现网络处理器动态加载微码的方法及网络设备 |
US8001601B2 (en) * | 2006-06-02 | 2011-08-16 | At&T Intellectual Property Ii, L.P. | Method and apparatus for large-scale automated distributed denial of service attack detection |
US20150029946A1 (en) * | 2013-07-26 | 2015-01-29 | Michael Edward Smith Luna | Modulation of packet characteristics to establish an overlay communication channel |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5179715A (en) | 1987-03-11 | 1993-01-12 | Toyo Communication Co., Ltd. | Multiprocessor computer system with process execution allocated by process managers in a ring configuration |
EP0312628B1 (en) | 1987-10-20 | 1993-12-29 | International Business Machines Corporation | High-speed modular switching apparatus for circuit and packet switched traffic |
DE68926837T2 (de) * | 1988-06-07 | 1997-03-06 | Bull Hn Information Syst | Einrichtung und Verfahren zur verbesserten Umsetzung von virtueller zu realer Adresse für Cache-Speicherzugriff |
US5179669A (en) | 1988-08-22 | 1993-01-12 | At&T Bell Laboratories | Multiprocessor interconnection and access arbitration arrangement |
US5774698A (en) | 1991-02-22 | 1998-06-30 | International Business Machines Corporation | Multi-media serial line switching adapter for parallel networks and heterogeneous and homologous computer system |
DE69230093T2 (de) | 1991-11-19 | 2000-04-13 | Ibm | Multiprozessorsystem |
US5619650A (en) | 1992-12-31 | 1997-04-08 | International Business Machines Corporation | Network processor for transforming a message transported from an I/O channel to a network by adding a message identifier and then converting the message |
US5598568A (en) | 1993-05-06 | 1997-01-28 | Mercury Computer Systems, Inc. | Multicomputer memory access architecture |
JPH0877062A (ja) * | 1994-09-02 | 1996-03-22 | Fuji Xerox Co Ltd | アドレス管理装置 |
JP3247018B2 (ja) | 1994-12-06 | 2002-01-15 | 富士通株式会社 | アドレス生成装置 |
JPH08235141A (ja) | 1995-02-28 | 1996-09-13 | Kofu Nippon Denki Kk | 情報処理システム |
JPH0962641A (ja) | 1995-08-22 | 1997-03-07 | Fuji Xerox Co Ltd | マルチプロセッサシステム |
KR0170493B1 (ko) | 1995-12-08 | 1999-03-30 | 양승택 | 다중 프로세서 시스템을 위한 논블록킹 결함허용 감마 연결망 |
US5842034A (en) | 1996-12-20 | 1998-11-24 | Raytheon Company | Two dimensional crossbar mesh for multi-processor interconnect |
JPH1165930A (ja) * | 1997-08-21 | 1999-03-09 | Nec Corp | マイクロプロセッサ |
JPH11282751A (ja) * | 1998-03-27 | 1999-10-15 | Nec Eng Ltd | データ処理システム及びデータ処理方法 |
US6487606B1 (en) * | 1998-11-18 | 2002-11-26 | Nortel Networks Limited | System and method for delivering messages through a totem communications system |
US6460120B1 (en) * | 1999-08-27 | 2002-10-01 | International Business Machines Corporation | Network processor, memory organization and methods |
-
2000
- 2000-04-18 US US09/551,790 patent/US6965922B1/en not_active Expired - Fee Related
- 2000-12-29 TW TW089128211A patent/TW535069B/zh not_active IP Right Cessation
-
2001
- 2001-03-16 KR KR10-2001-0013617A patent/KR100396974B1/ko not_active IP Right Cessation
- 2001-04-10 JP JP2001111177A patent/JP3935684B2/ja not_active Expired - Fee Related
- 2001-04-17 CN CNB011168129A patent/CN100387006C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP3935684B2 (ja) | 2007-06-27 |
US6965922B1 (en) | 2005-11-15 |
TW535069B (en) | 2003-06-01 |
KR100396974B1 (ko) | 2003-09-03 |
CN100387006C (zh) | 2008-05-07 |
CN1318927A (zh) | 2001-10-24 |
KR20010096614A (ko) | 2001-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100372492B1 (ko) | 네트워크 프로세서를 사용하는 서버 클러스터 접속 | |
US7496699B2 (en) | DMA descriptor queue read and cache write pointer arrangement | |
US5898888A (en) | Method and system for translating peripheral component interconnect (PCI) peer-to-peer access across multiple PCI host bridges within a computer system | |
US7228389B2 (en) | System and method for maintaining cache coherency in a shared memory system | |
US7818459B2 (en) | Virtualization of I/O adapter resources | |
US7126952B2 (en) | Multiprotocol decapsulation/encapsulation control structure and packet protocol conversion method | |
WO2009018329A2 (en) | Offloading input/output (i/o) virtualization operations to a processor | |
JPH1097513A (ja) | マルチプロセッサ・コンピュータ・システム中のノード、及びマルチプロセッサ・コンピュータ・システム | |
US5860101A (en) | Scalable symmetric multiprocessor data-processing system with data allocation among private caches and segments of system memory | |
JP2014534529A (ja) | ネットワークプロセッサにおけるマルチコア相互接続 | |
Ang et al. | StarT-Voyager: A flexible platform for exploring scalable SMP issues | |
US6412047B2 (en) | Coherency protocol | |
US6708258B1 (en) | Computer system for eliminating memory read-modify-write operations during packet transfers | |
JP2002049573A (ja) | コンピュータ・システムおよびビット・ストリーム転送方法 | |
US5829035A (en) | System and method for preventing stale data in multiple processor computer systems | |
US6952761B2 (en) | Bus interface selection by page table attributes | |
US7013394B1 (en) | Data flow pattern recognition and manipulation | |
JPH10187631A (ja) | 拡張された対称マルチプロセッサ・アーキテクチャ | |
US6772218B1 (en) | Server acceleration using network processor | |
JP3970705B2 (ja) | アドレス変換装置、アドレス変換方法および2階層アドレス変換装置 | |
US6745266B1 (en) | Method and apparatus for disk cache translation between systems | |
US5666556A (en) | Method and apparatus for redirecting register access requests wherein the register set is separate from a central processing unit | |
US7287128B1 (en) | Write on reference mesh | |
US20110099304A1 (en) | Controller and a Method for Controlling the Communication Between a Processor and an External Peripheral Device | |
JP2586690B2 (ja) | 命令プリフェッチ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040805 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040825 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20041118 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20041210 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050224 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051004 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20051207 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20051212 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060403 |
|
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: 20070313 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070320 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110330 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |