(57)【要約】  ＳＰＩ−４バスを有するホストシステムにゼロ以上のネットワークインターフェースを接続するためのポートアダプタが開示される。ポートアダプタは、ゼロ以上のネットワークインターフェースと、ホストシステムに結合されてホストおよびネットワークインターフェース間に通信チャネルを与えるＳＰＩ−４バスと、ホストシステムに結合されてポートアダプタを制御し、監視する制御バスと、ＳＰＩ−４バスおよび制御バスをネットワークインターフェースにインターフェースするインターフェースロジックとを含む。異なるさまざまなネットワーキング技術用の少数で複数の異なるパケットフォーマットのうちの１つを選択して用いるための方法が与えられ、そのためポートアダプタが扱う技術の詳細をホストシステムから隠すことができ、またポートアダプタの帯域幅要求に基づいたいくつかの速度のうち１つでホストシステムのＳＰＩ−４バスを動作するための方法が与えられる。
2007535184.tif 000002
【特許請求の範囲】
【請求項１】
ＳＰＩ−４バスを有するホストシステムにゼロ以上のネットワークインターフェースを結合するためのポートアダプタであって、
ゼロ以上のネットワークインターフェースと、
ホストシステムに結合されてホストおよびネットワークインターフェース間に通信チャネルを与えるＳＰＩ−４バスと、
ホストシステムに結合されてポートアダプタを制御し、監視する制御バスと、
ＳＰＩ−４バスおよび制御バスをネットワークインターフェースに接続するインターフェースロジックとを含む、ポートアダプタ。
【請求項２】
インターフェースロジックは、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）、これらおよび１つ以上の他のハードウェア素子の組合わせ、または１つ以上の他のハードウェア素子の組合わせを含む、請求項１に記載のアダプタ。
【請求項３】
ホストシステムに結合されてホストシステムによるポートアダプタの識別を可能にする識別バスをさらに含む、請求項１に記載のアダプタ。
【請求項４】
ポートアダプタが複数の別個の論理チャネルでホストシステムにＦＩＦＯステータスを伝え得る拡張されたフロー制御バスをさらに含む、請求項１に記載のアダプタ。
【請求項５】
クロックバスをさらに含み、クロックバスは、別のポートに対するポートの同期、ポートに対するホストシステム基準発振器の同期、またはホストシステムの外部の基準クロックに対するポートの同期を与えるために、ポートアダプタおよびホストシステム間でネットワークタイミング情報を通信する、請求項１に記載のアダプタ。
【請求項６】
ホストシステムの電源が入った状態でのホストシステムからのポートアダプタのオンライン装着及び取外し中、選択的にアダプタのために電力を生成する電力制御回路をさらに含む、請求項１に記載のアダプタ。
【請求項７】
ある種類のポートアダプタの一意の識別子を記憶する識別リポジトリをさらに含む、請求項１に記載のアダプタ。
【請求項８】
識別リポジトリはポートアダプタに関連付けられる１つ以上の構成パラメータ値をさらに記憶する、請求項７に記載のアダプタ。
【請求項９】
識別リポジトリは不揮発性メモリを含む、請求項７に記載のアダプタ。
【請求項１０】
識別リポジトリは、ポートアダプタがホストシステムによってサポートされ得るか否かをホストが判断することを可能にする値を記憶する、請求項７に記載のアダプタ。
【請求項１１】
識別リポジトリは、ＳＰＩ−４バスの１つ以上の動作周波数をホストが決定することを可能にする値を記憶する、請求項７に記載のアダプタ。
【請求項１２】
ホストシステムに結合される拡張されたフロー制御バスをさらに含み、それによりアダプタは、従来からＳＰＩ−４バスを用いて利用可能であった２５６の論理チャネルを超える論理チャネルを用いてＳＰＩ−４バスで情報を通信することが可能となる、請求項１に記載のアダプタ。
【請求項１３】
フロー制御インターフェースロジックをさらに含み、フロー制御インターフェースロジックは、ポートアダプタが従来からＳＰＩ−４バスを用いて利用可能であった２５６の論理チャネルを超える論理チャネルのＦＩＦＯステータスをホストシステムに伝えることを可能にするカレンダベースの機構を含む、請求項１２に記載のアダプタ。
【請求項１４】
拡張されたフロー制御バスはＴＤＭカレンダフレーム同期信号、フロー制御クロック信号、ステータス信号およびパリティ信号を伝える、請求項１２に記載のアダプタ。
【請求項１５】
アダプタはゼロ個のインターフェースを含み、インターフェースロジックはホストシステムから１つ以上のパケットを受取って指定された機能に従ってパケットを変形し、変形されたパケットをホストシステムに送るよう構成される、請求項１に記載のアダプタ。
【請求項１６】
指定された機能は、暗号化、暗号解読、圧縮または圧縮解除を含む、請求項１５に記載のアダプタ。
【請求項１７】
ポートアダプタを用いるホストコンピュータシステムのＳＰＩ−４バスのための動作周波数を選択的に決定する方法であって、動作周波数は従来のＳＰＩ−４バス動作周波数とは異なり得、方法は、
ＳＰＩ−４バスを有するホストコンピュータシステムからポートアダプタにクエリを発行するステップを含み、ポートアダプタは、ホストとＳＰＩ−４デバイスとの間の制御およびデータのためにホストシステムに結合され得るＳＰＩ−４バスと、ホストシステムとポートアダプタとの間にＳＰＩ−４バスと並行して結合される制御バスと、ＳＰＩ−４バスおよび制御バスを複数のラインインターフェースのうちの１つに接続するインターフェースロジックと、識別リポジトリとを含み、さらに、
識別リポジトリからポートアダプタの識別情報を受取るステップと、
識別リポジトリから受取った情報に基づいて、ポートアダプタによってサポートされるＳＰＩ−４バス動作周波数のうち少なくとも１つと互換性のある周波数においてホストシステムＳＰＩ−４バスが動作し得るか否かを判断するステップと、
ポートアダプタによってサポートされるＳＰＩ−４バス動作周波数のうちの選択された１つに等しいホストシステムＳＰＩ−４バス動作周波数を設定するステップとを含む、方法。
【請求項１８】
設定するステップは、ポートアダプタの動作周波数をＳＰＩ−４バス動作周波数のうちの選択された１つに設定するステップをさらに含む、請求項１７に記載の方法。
【請求項１９】
設定するステップは、ポートアダプタによってサポートされるＳＰＩ−４バスの動作周波数のうち最速の周波数に等しいホストシステムＳＰＩ−４バス動作周波数を設定するステップを含む、請求項１７に記載の方法。
【請求項２０】
ポートアダプタによってサポートされるＳＰＩ−４バス動作周波数のうち少なくとも１つと互換性のある周波数においてホストシステムＳＰＩ−４バスが動作し得る場合にのみポートアダプタの電源をオンにするステップをさらに含む、請求項１７に記載の方法。
【請求項２１】
１つ以上の因子が満たされる場合にのみポートアダプタの電源をオンにするステップをさらに含み、因子は、ホストシステムがポートアダプタが要求するパケットフォーマットのためのソフトウエアサポートを有すること、ホストシステムがポートアダプタのためのソフトウエアサポートを有すること、ポートアダプタの消費がホストシステムにより許容される最大電力消費量より少ないこと、ホストシステムがポートアダプタが要求する帯域幅と一致し得ること、または、ポートアダプタに関連付けられるライセンス認可要件がポートアダプタがホストシステム上で実行するのを可能にすることから構成される集合から
選択される、請求項１７に記載の方法。
【請求項２２】
ポートアダプタがホストシステムによってサポートされ得るか否かとＳＰＩ−４バスの１つ以上の動作周波数とをホストが決定することを可能にする値を識別リポジトリから受取るステップをさらに含む、請求項１７記載の方法。
【請求項２３】
ポートアダプタによってＳＰＩ−４バス全体に送られるデータのパケットフォーマットをホストが決定することを可能にする値を識別リポジトリから受取るステップをさらに含む、請求項１７に記載の方法。
【請求項２４】
ポートアダプタによってＳＰＩ−４バスを通じて送られるデータのパケットフォーマットを指定する１つ以上の値を識別リポジトリから受取るステップをさらに含む、請求項１７に記載の方法。
【請求項２５】
ＳＰＩ−４バスを有するホストシステムにゼロ以上のネットワークインターフェースを結合するためのポートアダプタであって、
ゼロ以上のネットワークインターフェースと、
ホストシステムに結合されてホストおよびネットワークインターフェース間に通信チャネルを与えるＳＰＩ−４バスと、
ホストシステムに結合されてポートアダプタを制御し、監視する制御バスと、
ＳＰＩ−４バスおよび制御バスをネットワークインターフェースに接続するインターフェースロジックと、
以下のステップを実行することによるインターフェース上で受取られる前処理パケットのためのパケット処理ロジックとを含み、ステップは、
ポートアダプタの進入インターフェース上の第１のパケットを受取るステップと、
選択された１つの内部パケットフォーマットに合致する第２のパケットを生成するステップと、
第１のパケットの１つ以上のフィールドから第２のパケットの１つ以上の対応するフィールドへデータを変形するステップと、
ホストシステムに第２のパケットを与えるステップとを含む、ポートアダプタ。
【請求項２６】
パケット処理ロジックは、パケットヘッダおよびパケット本体の残りを第１のパケットから第２のパケットへ動かすステップをさらに含む、請求項２５に記載のポートアダプタ。
【請求項２７】
パケット処理ロジックは複数の内部パケットフォーマットのうちの１つを選択するステップを実行するよう構成される、請求項２５に記載のポートアダプタ。
【請求項２８】
進入インターフェースは、イーサネット（登録商標）インターフェース、ＡＴＭインターフェース、フレームリレー、シリアルインターフェース、高度にチャネル化されたインターフェース、ＲＰＲインターフェース、またはＰＯＳインターフェースである、請求項２６または２７に記載のポートアダプタ。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願との相互参照
本願は、以前に共通して譲渡された、「中間ネットワークノードのフォワーディングエンジンにチャネル毎のフロー制御情報を伝える装置および方法」と題された、ガイ  フェドーコウ（Guy Fedorkow）他の２００１年２月２２日出願の出願連続番号第０９／７９０、９７０号に関連し、その全体が本願明細書に完全に示されるかのように引用にて援用される。
【０００２】
著作権上の注意
本特許文献の開示の一部は、著作権で保護される事項を含む。著作権者は、特許商標局の特許ファイルまたは記録に現れる通りの特許開示の複製に異議がないが、そうでなければ全ての著作権を留保する。著作権（Copyright）２００３シスコシステムズ社（Cisco Systems.Inc.）。
【０００３】
ＣＤ―ＲＯＭ付録
本開示は、１つのＣＤ−ＲＯＭの１つのファイルに１３４ページから構成されるＣＤ−ＲＯＭ付録を含み、その内容全体が本願明細書に完全に示されるかのように引用にて援用される。
【背景技術】
【０００４】
発明の分野
本発明は一般にデジタルコンピュータシステムに関し、より特定的にはＳＰＩ−４バスを含むデジタルコンピュータに関する。
【０００５】
発明の背景
このセクションに記載される手法は行われ得るが、必ずしも以前に考えられ、または行われた手法であるとは限らない。したがって、本願明細書において特に明記しない限り、このセクションに記載されている手法は本出願の請求項に対する先行技術ではなく、このセクションに含まれることによって先行技術であるとは認めるわけではない。
【０００６】
デジタルコンピュータは、周辺機器およびコンピュータ中央処理装置およびコンピュータメモリ間の情報の転送のために、入出力（Ｉ／Ｏ）バスを用いる。Ｉ／Ｏ機能はまた、複数の分散型プロセッサおよび複数の分散型メモリを有するシステムにおいても必要とされる。
【０００７】
このようなコンピュータシステムにおいて、パーソナルコンピュータインターフェース（ＰＣＩ）を含む種々のＩ／Ｏバスアーキテクチャが用いられる。システムパケットインターフェース４−バスは、例えば高速ルータおよびスイッチなどのコンピュータネットワークのためのデータパケット処理システムにおいて一般に用いられる、比較的新しい高帯域幅バスである。ＳＰＩ４．２バスアーキテクチャの特徴は、文献www.oiforum.com/public/impagreements.htmlにおいて入手可能なインターフェース仕様に記載されている。この文献では、「ＳＰＩ−４」は「ＳＰＩ４．２」と等価であって、ＳＰＩ４．２バスアーキテクチャの変形および等価物を含む。
【０００８】
ＳＰＩ−４バスがコンピュータシステム内でパケットデータに高速通信経路を与えるにもかかわらず、ＳＰＩ−４バスは外部ネットワークまたはデバイスとの直接通信には適さない。一般にＳＰＩ−４バスを用いてホストをネットワークに接続するには、他のデバイ
スまたはネットワークに結合される論理的または物理的ポートもしくはインターフェースを与えることを必要とする。いくつかのポートアダプタは、ポートまたはインターフェースを有さないが、例えば圧縮または圧縮解除、暗号化または暗号解読などの特定の種類のパケット処理サービスをホストに与えるサービスアダプタとして設計される。
【０００９】
ユーザおよび製造業者は、例えばイーサネット（登録商標）、ファーストイーサネット（登録商標）、ギガビットイーサネット（登録商標）、光学インターフェース、シリアルインターフェースまたは他のインターフェースなどの異なる技術を用いるポートおよびインターフェースを収容し得るホストシステムを有することを特に望む。１つの手法において、ホストルータまたはスイッチは、種々の異なるポートを組み込む。しかしながらユーザは、ユーザのポート要求が変化する場合、このようなホストでは再構成できない。このようなユーザおよび製造業者は、変化するポートおよびインターフェース要求に適合可能なホストシステムを有することを望む。
【００１０】
ホットスワッピングもまた、相補型金属酸化膜半導体（ＣＭＯＳ）技術を用いるデバイスなどの、ＳＰＩ−４バスに接続されるいくつかのデバイスを損傷し得る。ＣＭＯＳレシーバに対する入力がＣＭＯＳスイッチング領域内であるとき、ＣＭＯＳデバイスは大きな電流にさらされる。いくつかのＣＭＯＳレシーバは直列に接続される２つの電界効果トランジスタ（ＦＥＴ）を有し、第１のＦＥＴは正電源レールに接続され、第２のＦＥＴは負電源レールに接続される。２つのＦＥＴに対する入力がスイッチング領域にある場合、両方のＦＥＴは同時に連続的にオンにされることができ、直接ＣＭＯＳデバイスを通じてＤＣ電流経路を生成する。２つのＦＥＴの連続的なオン状態は、ＣＭＯＳデバイスを損傷するのに十分な電力を消費させ得る。
【００１１】
入力がＣＭＯＳ電源レールのうちの１つを超えて駆動されると、ＣＭＯＳデバイスはラッチアップ状態をも経験する。ラッチアップ状態において、ＣＭＯＳ構造の寄生トランジスタは、ＣＭＯＳデバイスを破壊し得る大量の電力を消費させる。上述した両方の電力消費状態は、ホストインターフェースバス上のホットスワッピングから生じ得る。
【００１２】
クァッケンブッシュ（Quackenbush）他の、米国特許番号第５、７９３、９８７号および米国特許番号第６、１６３、８２４号は、別個のＰＣＩローカルバスおよびローカルバスを有するポートアダプタと関連する処理方法とを開示する。ポートアダプタは１つ以上のポートを備え、ホストに追加的特徴または機能を与えるためにホストシステムに接続する電子デバイスである。クァッケンブッシュ他の技術は、カリフォルニア州サンノゼ市のシスコシステムズ社（Cisco Systems Inc.）のシスコ（Cisco）７２００シリーズルータおよびシスコ７５００シリーズルータにおいて、ＰＣＩバスベースのポートアダプタに用いられてきた。しかしながら、クァッケンブッシュ他の技術は、ＰＣＩバスおよびＳＰＩ−４バス間の著しい技術格差が原因で、ＳＰＩ−４バスアーキテクチャを有するホストには適さない。例えばＰＣＩバスは、例えば毎秒１０ギガビット（Ｇｂｐｓ）などの高速でインターフェースから届くデータを処理することができない。
【００１３】
既存のポートアダプタのさらに別の欠点は、異質なネットワーク環境と継ぎ目なく相互動作しないことである。例えば、複数のポートアダプタを有するホストは、多数のネットワーク技術のいずれかを用いる外部ネットワークまたはデバイスと通信し得る。その結果、ポートアダプタにおいて受取られるデータパケットは、多数の異なるフォーマットのいずれかを有し得る。ホストシステムに多数の異なるパケットフォーマットを理解し、処理することを要求するのは複雑であり、新しい技術に対する拡張可能性を欠く。さらに、１つの汎用パケットフォーマットを各タイプのポートアダプタおよびホストシステム間に用いることは非実用的である。なぜなら異なる技術のパケットにおいて伝えられるデータのタイプおよび量に差異があるからである。
【発明の開示】
【発明が解決しようとする課題】
【００１４】
このように、特定の技術のための特定のパケットフォーマットを処理することができ、内部処理のために単一の一定のパケットフォーマットでホストにデータを提供するポートアダプタのニーズがある。
【００１５】
上記に基づき、関連した技術分野において、ＳＰＩ−４バスアーキテクチャを有するホストシステムを異なるネットワーク技術に接続し得るポートアダプタのための明らかなニーズがある。より広くは、ホストのＳＰＩ−４バスから外部の周辺装置へのホットプラグ対応可能な適合インターフェースを与えることができる装置のニーズがある。
【課題を解決するための手段】
【００１６】
本発明は例であって限定的ではなく、添付の図面の図によって示され、同じ素子は同じ参照番号によって示される。
【００１７】
好ましい実施例の詳細な説明
高速バスのためのホットプラグ対応可能なポートアダプタが記載される。下記の概要において、説明のため、本発明の完全な理解をもたらすために多数の具体的な詳細が記載される。しかしながら、本発明がこれらの具体的な詳細なしで実行され得ることは当業者にとって明らかである。他の場合において、本発明を不必要に不明瞭にするのを避けるため、周知の構造およびデバイスはブロック図形式で示される。
【００１８】
実施例は本願明細書において下記の概要にしたがって記載される：
１．０  一般概要
２．０  構造的および機能的概要
２．１  ポートアダプタアーキテクチャ
２．２  異なるＳＰＩ−４動作速度への適合
２．３  拡張されたフロー制御バス
２．４  ポートアダプタを用いた前処理パケット
３．０  実現機構−ハードウェア概要
４．０  拡張例および代替例。
【００１９】
１．０  一般概要
前述の背景において特定されたニーズ、ならびに下記の説明から明らかになる他のニーズおよび目的が本発明において達成され、本発明は、１つの局面において、ＳＰＩ−４バスを通じてネットワークインターフェースをホストシステムに接続するためのホットプラグ対応可能なポートアダプタを含む。ポートアダプタは、ＳＰＩ−４バスおよび制御バスを含むポートアダプタ／ホストインターフェースを通じてホストシステムと通信し、拡張されたフロー制御バスが与えられ得る。異なるさまざまなネットワーキング技術用の少数で複数の異なるパケットフォーマットのうちの１つを選択して用いるための方法が与えられ、そのためポートアダプタが扱う技術の詳細をホストシステムから隠すことができ、またポートアダプタの帯域幅要求に基づいたいくつかの速度のうち１つでホストシステムのＳＰＩ−４バスを動作するための方法が与えられる。
【００２０】
１つの局面によれば、本発明は、ＳＰＩ−４バスを有するホストシステムにゼロ以上のネットワークインターフェースを結合するためのポートアダプタを与え、ポートアダプタは、ゼロ以上のネットワークインターフェースと、ホストシステムに結合されてホストおよびネットワークインターフェース間に通信チャネルを与えるＳＰＩ−４バスと、ホストシステムに結合されてポートアダプタを制御し、監視するための制御バスと、ＳＰＩ−４
バスおよび制御バスをネットワークインターフェースに接続するインターフェースロジックとを含む。
【００２１】
１つの特徴によれば、インターフェースロジックはフィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）、これらおよび１つ以上の他のハードウェア素子の組合わせ、または１つ以上の他のハードウェア素子の組合わせを含む。別の特徴によれば、識別バスはホストシステムに結合されてホストシステムによるポートアダプタの識別を可能にする。さらに別の特徴において、拡張されたフロー制御バスが与えられ、そこでポートアダプタが複数の別個の論理チャネルでホストシステムにＦＩＦＯステータスを伝え得る。さらに別の特徴において、クロックバスは、別のポートに対するポートの同期、ポートに対するホストシステム基準発振器の同期、またはホストシステムの外部の基準クロックに対するポートの同期を与えるために、ポートおよびホストシステム間でネットワークタイミング情報を通信する。
【００２２】
ポートアダプタは電力制御回路をさらに含み、電力制御回路は、ホストシステムの電源が入った状態でのホストシステムからのポートアダプタのオンライン装着及び取外し中、選択的にアダプタのために電力を生成する。１つの特徴によれば、識別リポジトリはある種類のポートアダプタの一意の識別子を記憶する。関連する特徴において、識別リポジトリはさらに、ポートアダプタに関連付けられる１つ以上の構成パラメータ値を記憶する。さらに別の関連する特徴において、識別リポジトリは電気的消去可能なプログラマブル読取専用メモリを含む。識別リポジトリは、ポートアダプタがホストシステムによってサポートされ得るか否かをホストが判断することを可能にする値を記憶することができる。識別リポジトリは、ＳＰＩ−４バスの１つ以上の動作周波数をホストが決定することを可能にする値を記憶することができる。
【００２３】
他の特徴において、拡張されたフロー制御バスはホストシステムに結合され、それによりアダプタは、従来からＳＰＩ−４バスを用いて利用可能であった２５６の論理チャネルを超える論理チャネルを用いてＳＰＩ−４バスで情報を通信することが可能となる。関連する特徴において、フロー制御バスのためのフロー制御インターフェースロジックは、ポートアダプタがホストシステムに何千もの論理チャネルのバッファ充填ステータスを伝えることを可能にするカレンダベースの機構を含む。拡張されたフロー制御バスは、ＴＤＭカレンダフレーム同期信号、フロー制御クロック信号、ステータス信号およびパリティ信号を含み得る。
【００２４】
１つの特徴によれば、アダプタはゼロ個のインターフェースを含み、インターフェースロジックはホストシステムから１つ以上のパケットを受取って指定された機能に従ってパケットを変形し、変形されたパケットをホストシステムに送るよう構成される。関連する特徴において、指定された機能は暗号化または暗号解読を含む。
【００２５】
別の局面において、本発明は、ポートアダプタを用いるホストコンピュータシステムのＳＰＩ−４バスのための動作周波数を選択的に決定する方法を与え、動作周波数は従来のＳＰＩ−４バス動作周波数とは異なり得、方法は、ＳＰＩ−４バスを有するホストコンピュータシステムからポートアダプタにクエリを発行するステップを含み、ポートアダプタは、ホストとＳＰＩ−４デバイスとの間の制御およびデータのためにホストシステムに結合され得るＳＰＩ−４バスと、ホストシステムとポートアダプタとの間にＳＰＩ−４バスと並行して結合され、ポートアダプタがＳＰＩ−４バスから独立である制御バスと、ＳＰＩ−４バスおよび制御バスを複数のラインインターフェースのうちの１つに接続するインターフェースロジックと、識別リポジトリとを含み、さらに、識別リポジトリからポートアダプタの識別情報を受取るステップと、識別リポジトリから受取った情報に基づいて、ポートアダプタによってサポートされるホストシステムＳＰＩ−４バス動作周波数のうち
少なくとも１つと互換性のある周波数においてホストシステムＳＰＩ−４バスが動作し得るか否かを判断するステップと、ポートアダプタによってサポートされるＳＰＩ−４バス動作周波数のうちの選択された１つに等しいホストシステムＳＰＩ−４バス動作周波数を設定するステップとを含む。
【００２６】
この局面の１つの特徴において、設定するステップは、ポートアダプタによってサポートされるホストシステムＳＰＩ−４バス動作周波数のうち最速のものに等しいホストシステムＳＰＩ−４バスの動作周波数を設定するステップを含む。別の特徴において、方法は、ポートアダプタによってサポートされるホストシステムＳＰＩ−４バス動作周波数の少なくとも１つと互換性のある周波数においてホストシステムＳＰＩ−４バスが動作し得る場合にのみポートアダプタの電源をオンにするステップを含む。関連する特徴において、方法は、１つ以上の因子が満たされる場合にのみポートアダプタの電源をオンにするステップを含み、因子は下記から構成される集合から選択される。ホストシステムがポートアダプタが要求するパケットフォーマットのためのソフトウエアサポートを有すること、ポートアダプタの消費がホストシステムにより許容される最大電力消費量より少ないこと、ホストシステムがポートアダプタが要求する帯域幅と一致し得ること、または、ポートアダプタに関連付けられるライセンス認可要件がポートアダプタがホストシステム上で実行するのを可能にすること、である。
【００２７】
他の特徴において、方法は、ポートアダプタがホストシステムによってサポートされ得るか否かとＳＰＩ−４バスの１つ以上の動作周波数とをホストが決定することを可能にする値を識別リポジトリから受取るステップをさらに含む。方法は、ポートアダプタによってＳＰＩ−４バスを通じて送られるデータのパケットフォーマットをホストが決定することを可能にする値を識別リポジトリから受取るステップをさらに含み得る。関連する特徴において、方法は、ポートアダプタによってＳＰＩ−４バスを通じて送られるデータのパケットフォーマットを指定する１つ以上の値を識別リポジトリから受取るステップをさらに含み得る。
【００２８】
さらに別の局面において、本発明は、ＳＰＩ−４バスを有するホストシステムにゼロ以上のネットワークインターフェースを結合するためのポートアダプタを与え、ポートアダプタは、ゼロ以上のネットワークインターフェースと、ホストシステムに結合されてホストおよびネットワークインターフェース間に通信チャネルを与えるＳＰＩ−４バスと、ホストシステムに結合されてポートアダプタを制御し、監視する制御バスと、ＳＰＩ−４バスおよび制御バスをネットワークインターフェースに接続するインターフェースロジックと、以下のステップを実行することによるインターフェース上で受取られる前処理パケットのためのパケット処理ロジックとを含み、ステップは、ポートアダプタの進入インターフェース上の第１のパケットを受取るステップと、選択された１つの内部パケットフォーマットに合致する第２のパケットを生成するステップと、第１のパケットの１つ以上のフィールドから第２のパケットの１つ以上の対応するフィールドへデータを変形するステップと、ホストシステムに第２のパケットを与えるステップとを含む。
【００２９】
この局面の１つの特徴において、パケット処理ロジックは、パケットヘッダおよびパケット本体の残りを第１のパケットから第２のパケットへ動かすステップをさらに含む。パケット処理ロジックは、複数の内部パケットフォーマットのうちの１つを選択するステップを実行するよう構成され得る。例えば進入インターフェースは、イーサネット（登録商標）インターフェース、ＡＴＭインターフェース、フレームリレー、シリアルインターフェース、高度にチャネル化されたインターフェース、ＲＰＲインターフェース、もしくはＰＯＳインターフェース、または現在公知のもしくは今後発明される他のあらゆるインターフェースであり得る。
【００３０】
他の局面において、本発明は前述のステップを実行するよう構成されるコンピュータ装置およびコンピュータ可読媒体を含む。
【発明を実施するための最良の形態】
【００３１】
２．０  構造的および機能的概要
２．１  ポートアダプタアーキテクチャ
ホストシステムに機能性を加えるために、プラグ可能なポートアダプタが用いられて、ＳＰＩ−４バスを通じてゼロ以上のポートまたはインターフェースをホストシステムに接続する。典型的には、ポートまたはインターフェースは、高帯域幅の光学ポートまたはインターフェースである。ポートアダプタは、ＳＰＩ−４バス、制御バス、拡張されたフロー制御バスならびに他の信号およびパワーラインを含むポートアダプタ／ホストインターフェースを通じてホストシステムと通信する。ポートアダプタ上の他の機能が制御バスを通じて独立して制御される一方で、ポートまたはインターフェースは通常の態様で構成され、ＳＰＩ−４バス上で通信する。
【００３２】
この文献において、「ＳＰＩ−４」という用語は「ＳＰＩ４．２」と等価であって、ＳＰＩ４．２バスアーキテクチャの変形例を含む。したがって実施例はＳＰＩ−４仕様に厳格に従ったバスを用い得るか、またはＳＰＩ−４仕様を変形、強化、修正もしくは改善したものを用いることができる。
【００３３】
ホストシステムは、ポートアダプタの識別情報を判断するのに専門識別バスを用い、次にホストシステムはそれをどのプログラミングおよび構成が必要かを決定するのに用いる。制御バスは、ポートアダプタ上のデバイスを構成し、制御するために、およびフィールドプログラマブルゲートアレイ（ＦＰＧＡ）などのポートアダプタ上のプログラム可能な回路をアップデートするために、ホストシステムによって用いられる。代替として、このようなプログラム可能なデバイスをアップデートするためにＪＴＡＧバスが用いられ得る。揮発性のプログラムメモリを有するＦＰＧＡは、電源が入れられる度にプログラムされなければならず、かつ、バグを修復して性能および／または機能性を高めるために、ホストシステムによってフィールドで再プログラムされ得る。
【００３４】
一実施例において、ポートアダプタのＳＰＩ−４バスはＳＰＩ-４終了ロジックに結合され、ロジックは、フレーマ、ＡＴＭ  ＳＡＲなどの１つ以上のネットワークインターフェースに結合される。ＳＰＩ-４終了ロジックおよびネットワークインターフェースは、協働してゼロ以上のポートを制御し、ポートはゼロ以上の通信回線、デバイスまたは例えばローカルエリアネットワーク（ＬＡＮ）および広域ネットワーク（ＷＡＮ）などのネットワークに結合される。ＳＰＩ-４終了ロジックおよびネットワークインターフェースは協働してポートまたはインターフェースからデータを受取り、次にデータを再処理された形式でＳＰＩ−４バスで再送信し、ホストシステムからデータを受取ってこのようなデータをポート上で再送信する。
【００３５】
制御バスは、ポートアダプタ上で例えばインターフェースロジック、ネットワークインターフェースおよび汎用レジスタまたは他のプログラム可能な素子などのロジックをプログラムするために用いられ得る。制御バスはまた、ポートアダプタ上のデバイスの制御インターフェースへのアクセスを与える。パワーバスは電力供給を制御するソフトウェアと連動して用いられ、ホストシステムの電源が入って動作していてもまたは電源が切れていてもポートアダプタがホストシステムと接続を外されたり接続されたりする、ホットスワップ動作を行う。ポートアダプタは、他のパワーバスピンおよびコネクタの他の信号ピンより短い、１つ以上の検出ピンを有するコネクタを含み得る。一実施例において、より短いピンはコネクタの両端部にある。より短い検出ピンにより、ポートアダプタおよびホストシステムがホットスワップを予期し、ポートアダプタを完全に挿入した後にのみポート
アダプタへの電力を使用可能にすることにより、交代でホットスワップ条件に反応することが可能となる。短いピンはまた、全てのピンが正しく位置していることをホストシステムが判断するの可能にする。ポートアダプタを抜く際、短いピンが最初に切断されてポートアダプタがホストに信号を送ることを可能にし、信号はポートアダプタへの電力を使用不能にする。
【００３６】
ホットスワップ状態中にポートアダプタがホストシステムに接続されると、制御回路は制御されたパワーアップシーケンスを開始する。ホットスワップ状態中にポートアダプタがホストシステムから切断されると、制御回路は制御されたパワーダウンシーケンスを開始する。
【００３７】
ポートアダプタが動作電力レベルにない場合、ポートアダプタおよびホストシステム間のホットスワッププロトコルは、ポートアダプタにおけるＳＰＩ−４バスでのデータ通信を中断する。ポートアダプタがホストシステムから切断されると、ホスト回路から来る信号は、オンライン挿入動作中に潜在的に高い電流がデバイスを損傷するのを防ぐために公知の安全な状態に変えられる。ホットスワッププロトコルもまた、ＳＰＩ−４バス上のデータの破壊およびホストのロジック状態を破壊することを防ぐ。
【００３８】
本願明細書において開示されるポートアダプタは、インターフェースから届くデータを最大毎秒１０ギガビット（Ｇｂｐｓ）で処理し得る。他の実施例では、より高速なデータレートを可能にするＳＰＩ−４バスアーキテクチャの向上があり得る。
【００３９】
図１は、ポートアダプタを有するホストシステムの概要を示すブロック図である。
一般に、ホストシステム１００は、ホストインターフェースバスハブまたはマルチプレクサ１０９を通じて多重化されるホストインターフェースバス１０２Ａ、１０２Ｂ、１０２Ｎを用いて１つ以上のポートアダプタ、１０４Ａ、１０４Ｂ、１０４Ｎと通信する、中央処理装置（ＣＰＵ）１０１を含む。各ホストインターフェースバス１０２Ａ、１０２Ｂ、１０２Ｎは、ＳＰＩ−４バスおよび他の信号を含む。ＣＰＵ１０１は１つ以上の他のバス１０５、例えばアドレスバス、データバスなどを用いて他の回路およびデバイスと通信することができる。明確にするためシステム１００の描写は非常に単純化されており、実際のシステムは、メモリデバイス、Ｉ／Ｏデバイス、ルートプロセッサ、ネットワークプロセッサ、スイッチファブリックなどを含み得る。システム１００は汎用パケット交換ルータまたはスイッチとして実行され得る。ある実施例において、システム１００は、カリフォルニア州サンノゼ市のシスコシステムズ社（Cisco Systems Inc.）のシスコ（Cisco）７３００、７６００、１００００または１２０００シリーズの製品を含む。
【００４０】
ホストシステム１００は、１つ以上のホットプラグ対応可能なポートアダプタ１０４Ａ、１０４Ｂ、１０４Ｎを有し得る。実際のシステムにはいかなる個数のポートアダプタもあり得る。ポートアダプタはまた本願明細書において、同等の用語「共有ポートアダプタ」もしくはＳＰＡ、または「多機能ポートアダプタ」もしくはＶＰＡとして参照される。ポートアダプタ１０４Ａ、１０４Ｂ、１０４Ｎの各々はゼロ以上のポート１０６Ａ、１０６Ｂ、１０６Ｎを含む。各ポートはネットワーク１ｌ０Ａ、１１０Ｂ、１１０Ｎ、または、例えばイーサネット（登録商標）、ファーストイーサネット（登録商標）、ギガビットイーサネット（登録商標）、光学インターフェース、シリアルインターフェースまたは他のインターフェースなどのあらゆる好適なネットワーク通信技術を用いるネットワーク内のデバイスの１つと通信可能に結合される。実際のシステムではあらゆる数のポートがポートアダプタにあり得る。各ポート１０６Ａ、１０６Ｂ、１０６Ｎは、異なるネットワーク１１０Ａ、１１０Ｂ、１１０Ｎに結合され得る。
【００４１】
ゼロ個のポートを有する実施例は、ポートアダプタがインターフェース機能よりむしろ
計算的処理またはパケット処理サービスをもたらすような、サービスアダプタを含むことができる。本願明細書において説明されるポートアダプタはゼロ個のポートを有し得るが、例えばホストのための暗号化または圧縮機能を与えることができる。さらに別の実施例では、一つ以上のポートを有する、およびさらにパケット処理サービスを与える、結合サービスアダプタおよびポートアダプタが与えられ得る。
【００４２】
図１の構成において、ポートアダプタの各々は、そのポートをホストインターフェースバス１０２Ａ、１０２Ｂ、１０２Ｎとそれぞれ接続するための機構を与える。各ポートアダプタ１０４Ａ、１０４Ｂ、１０４Ｎはホットプラグ対応可能であり、それはホストシステムの実行中にポートアダプタがホストシステム１００から取外され得たりホストシステム１００にインストールされたりし得ることを意味する。その結果、ホストシステム１００は、ＳＰＩ−４バスアーキテクチャの利点を保持しつつ、異なる個数のポートを伴って、または異なるネットワーク技術を用いるポートを伴って再構成され得る。
【００４３】
図２は、ＳＰＩ−４バスのためのポートアダプタの一実施例の概要を示すブロック図である。明確にするため図２では省略されるホストシステム１００は、ＳＰＩ−４バス２０１、制御バス２０６、拡張されたフロー制御バス２２２、クロックバス２２４、電力制御バス２２６および識別バス２２８を通じて、ポートアダプタ１０４Ｃに結合される。ポートアダプタ１０４ＣはＳＰＩ-４終了ロジック２０２を含み、それはＳＰＩ−４バス２０１およびネットワークインターフェース２０４に通信可能に結合される。ポート１０６Ａ、１０６Ｂ、１０６Ｎがイーサネット（登録商標）ポートである実施例において、ネットワークインターフェース２０４はデータフレームの急速な形成および処理の要因となるＭＡＣ（メディアアクセスコントローラ）であり得、かつ一時的にデータをメモリに記憶することができる。代替として、ネットワークインターフェース２０４はＡＴＭ  ＳＡＲなど含むことができる。ネットワークインターフェース２０４はポート１０６Ａ、１０６Ｂ、１０６Ｎに通信可能に結合される。
【００４４】
図２の例において、１つのネットワークインターフェース２０４が示される。他の実施例では、複数のネットワークインターフェースが与えられることができ、このような各ネットワークインターフェースはＳＰＩ−４終了ロジック２０２に結合される。例えば、各ポート１０６Ａ、１０６Ｂ、１０６Ｎのための異なるネットワークインターフェース２０４があり得る。
【００４５】
ゼロ個のポートを有する実施例において、ネットワークインターフェース２０４が省略され、パケット処理サービスを実行するための他のロジックがその位置に与えられ得る。例えば暗号化エンジンまたは圧縮エンジンが、ネットワークインターフェース２０４と同じ論理的位置を占めることができる。
【００４６】
制御バス２０６はポートアダプタ１０４Ｃにおいてローカル制御ロジック２０８に接続される。識別バス２２８は識別情報素子２１２に接続され、それは、ポートアダプタ１０４Ｃのハードウェア配列および論理的構成を決定するために、ホストシステム１００によってクエリされ得る。ポートアダプタ１０４Ｃは、電力制御バス２２６およびクロックバス２２４にそれぞれ結合される電力制御素子２１４とクロック分配回路２１６とをさらに含み得る。
【００４７】
拡張されたフロー制御バス２２２は拡張されたフロー制御ロジック２２０に結合される。拡張されたフロー制御バスの詳細は、下記の別個のセクションにさらに記載される。
【００４８】
ポートアダプタ１０４Ｃは、保護ハウジングに入った１つ以上のプリント回路基板カードに装着される複数の集積回路として実現され得る。一実施例では、各ポートアダプタは
ホストシステムにおいて処理回路カード（「ホストカード」）のスロットに装着される。ポートアダプタハウジングはいくつかのフォームファクタのいずれかを有することができ、それにより、複数の異なるポートアダプタが同じホストシャーシにおいて交換可能であるようなモジュール配置を与える。一実施例においてポートアダプタハウジングは、ポートアダプタにおいて与えられるポートまたはインターフェースの個数および種類、ポートアダプタによる電力消費量、またはポートアダプタの回路のために必要となる面積に基づいて、ハーフハイト、フルハイト、ダブルワイドまたは高出力のフォームファクタを有することができる。
【００４９】
ローカル制御ロジック２０８、拡張されたフロー制御ロジック２２０、クロック分配回路２１６、電力制御回路２１４および識別情報素子２１２は、明確にするため単純化されたブロック形式で示される。特に、このような各素子に対する接続は単純化され、このような各素子は特定の実施例において他の接続を有し得る。さらに、ポートアダプタ１０４Ｃは、図２に示される特定の素子以外の回路素子を含むことができる。
【００５０】
図３は、一実施例による、図２のポートアダプタのより詳細なブロック図である。
ホストコネクタ３０２は、ホストシステム１００（明確にするため図３には示されない）に対する物理的接続を与え、クロック、データ、制御および電力信号を伝える。
１２ボルト電力供給線２２６Ａは、ポートアダプタ１０４Ｄの他の素子によって必要とされるさまざまな電圧レベルの複数の出力電力線３０８を与える電力変換ブロック３０４に結合される。一実施例においてパワー変換ブロックは、３．３Ｖ、２．５Ｖ、１．８Ｖ、および１．５Ｖの出力を与え、他の実施例において他の出力電圧レベルが与えられ得る。さらに、パワー変換ブロック３０４は、パワーシーケンス、パワーアップ／ダウン機能、パワーモニタリング、パワーマージニングなどを与えることができる。
【００５１】
ＳＰＩ−４バス３３２はＦＰＧＡ３３０に結合される。ＳＰＩ−４バス３３２は、典型的には、データバス信号、フロー制御信号、クロック信号などを伝える８６ピンパケットデータ転送バスである。ある実施例では、本願明細書においてさらに記載されるように、異なるホストおよびポートアダプタ間の互換性のため、このような信号全ての動作速度は変更され得る。ＳＰＡバス２０６Ａはホストシステム１００からＦＰＧＡ３３０へ結合される。ＳＰＡ制御バス２０６Ａは、ホストシステムがポートアダプタ１０４Ｄの内部素子を制御し、それと通信することを可能にする。ＪＴＡＧバス３０７は、ホストシステム１００と図２のＳＰＩ-４終了ロジック２０２およびローカル制御ロジック２０８の機能を実行するＦＰＧＡ３３０などのプログラマブル構成素子との通信を通じたテストまたはＰＬＤプログラミングに用いられるテスト信号を伝え得る。ホストコネクタ３０２はまた、オンライン装着及び取外し（ＯＩＲ）動作、ポートアダプタリセット機能などをサポートするための雑信号をも伝えることができる。
【００５２】
ＦＰＧＡ３３０は、ＰＬ３バス３０９、マイクロプロセッサバス３１０および転送オーバーヘッド（ＴＯＨ）経路３１２によってフレーマ２０４Ａに結合される。一実施例において、フレーマ２０４Ａは、カリフォルニア州サンタクララ市ＰＭＣ−シエラ社（PMC-Sierra, Inc.）のＰＭ５３６０  Ｓ／ＵＮＩ  Ｍｕｌｔｉ−４８  ＳＯＮＥＴ／ＳＤＨフレーマであり、ＯＣ−１２／ＳＴＭ−４およびＯＣ−３／ＳＴＭ−１帯域幅の間で選択可能な４つのポートを与える。
【００５３】
フレーマ２０４Ａは、ネットワークポートおよびインターフェースを与える１つ以上の小型フォームファクタプラグ対応可能（ＳＦＰ）光学モジュール３１４Ａ、３１４Ｂ、３１４Ｃ、３１４Ｄに結合される。ＦＰＧＡ３３０は、モジュール３１４Ａ、３１４Ｂ、３１４Ｃ、３１４Ｄのポートアダプタ１０４Ｄへの装着及び取外しを検出する。
【００５４】
一般に、ＦＰＧＡ３３０はＳＰＡバス２０６Ａの信号をマイクロプロセッサバス３１０からの信号にデコードし、接続するよう機能する。ＦＰＧＡ３３０はまた、ＳＦＰ３１４Ａ、３１４Ｂ、３１４Ｃ、３１４Ｄに関連する制御およびステータス情報を与える。さらにＦＰＧＡ３３０は、ＦＩＦＯキューの入出管理を含む、ＰＬ３バス３０９およびＳＰＩ−４バス３３２間の通信のためのブリッジング、キューイングおよびスケジューリングを与え、かつＦＰＧＡ３３０はオンライン装着及び取外しおよび電力制御機能に関係し得る。ＦＰＧＡ３３０はまた、フレーマ２０４Ａから、またはフレーマ２０４Ａへ通信されるパケットからのＳＯＮＥＴオーバーヘッド情報を挿入し、抽出するよう構成される。一実施例において、ＦＰＧＡ３３０はザイリンクス（Xilinx）２Ｖ１５００およびＳＰ１４、ＰＬ３およびＨＤＬＣＩＰコアを用いて実現される。
【００５５】
ポートアダプタ１０４Ｄは、クロック発生／回復モジュール２１６Ａ、識別情報電気的消去可能プログラマブル読取専用メモリ（「ＩＤ  ＥＥＰＲＯＭ」）２１２Ａ、電圧スーパバイザ２２８Ａ、温度センサ３２０および電圧マージニングユニット３２２を含む、さまざまな他の機能素子をさらに含み得る。クロック発生／回復モジュール２１６Ａは、ホストコネクタ３０２を通じて７７．７６ＭＨｚのＳＯＮＥＴ基準クロック２２４Ｂをホストから受取り、回復された１９．４４ＭＨｚのクロック２２４Ａをホストコネクタ３０２を通じてホストに与え、７７．７６ＭＨｚの基準クロック２２４Ｃをフレーマ２０４Ａに与えて、回復された７７．７６ＭＨｚのクロック信号２２４Ｄをフレーマから受取る。回復されたクロックの使用は、クロック発生／回復モジュール２１６Ａがいずれの付属するＳＯＮＥＴポートからもシステムクロックを派生させることを可能にする。クロック発生／回復モジュール２１６Ａはまた、ＦＰＧＡ３３０を動作するための１００ＭＨｚのクロックを生成する。
【００５６】
温度センサ３２０は、過熱の問題を検出して知らせるためのプログラム可能な温度範囲を有し得る。
【００５７】
ホストシステム１００からポートアダプタ１０４Ｄへ結合される拡張されたフロー制御バスは、任意で、極めて多くの物理的なまたは仮想のポートを有するポートアダプタに背圧を与えるよう機能する。例えばＡＴＭにおいて、１つの物理的リンクに多数の仮想回路が存在し得る。このように拡張されたフロー制御バスは、高度にチャネル化されたポートアダプタ、ＡＴＭポートアダプタなどのために用いられ得る。
【００５８】
ポートアダプタの実施例の詳細な仕様はこの文献の付録において与えられ、その内容全体は本願明細書に示されたかのように本願明細書に引用にて援用される。
【００５９】
２．２  異なるＳＰＩ-４動作速度への適合
ホストシステム１００は、ポートアダプタ１０４Ｄの構成を決定して電力制御機能を実行するために、ＩＤ  ＥＥＰＲＯＭ２１２Ａについて識別バス２２８Ａを用いてクエリすることができる。一実施例において、バス２２８ＡはＩＣ２信号フォーマットに合致する。ＩＤ  ＥＥＰＲＯＭ２１２Ａは識別リポジトリの例である。識別する情報に基づいて、ホストシステムによって実行されるソフトウェアは、ポートアダプタの動作周波数を指定する値とＳＰＩ−４バス全体に送られるデータフォーマットとを決定する。例えばホストシステムソフトウェアは、バス速度値、データパケットフォーマットなどをさまざまなポートアダプタ識別子にマッピングするルックアップテーブルを含むことができる。別の実施例において、識別リポジトリは、そのポートアダプタまたは異なるいくつかのポートアダプタのための１つ以上のポートアダプタ識別子に関連付けて、バス速度値、データパケットフォーマットおよび他の構成パラメータを記憶する。
【００６０】
識別リポジトリの情報は、ホストシステムがポートアダプタまたはそのポートの特定の
特性にその動作挙動を適合させることを可能にする。例えば、ＳＰＩ−４バスの標準動作周波数は３５０ＭＨｚである（「フルレートＳＰＩ-４」）。しかしながら、全てのポートアダプタがこの周波数を必要とするわけではない。例えば、そのインターフェース上で２．４Ｇｂｐｓを超える集合データ通信帯域幅をサポートするポートアダプタはフルレートＳＰＩ−４バスを必要とし得るが、２．４Ｇｂｐｓの以下の集合データ通信帯域幅しかサポートしない他のポートアダプタは、３５０ＭＨｚ未満のＳＰＩ−４バス信号方式を用いて適切に動作し得る。
【００６１】
したがって一実施例において、ポートアダプタ１０４ＤのＳＰＩ−４バスは、８７．５ＭＨｚのクォータレート速度で動作するよう構成され得る。他の実施例において、ポートアダプタ１０４ＤのＳＰＩ−４バスが他のいずれの速度でも、例えばダブルレート速度を与える７００ＭＨｚなどでも動作するよう構成されることができる。ポートアダプタの識別リポジトリはポートアダプタタイプ識別子を含む。ポートアダプタタイプ識別子に基づいてホストシステムによって実行されるソフトウェアは、ポートアダプタがフルレートＳＰＩ−４バス速度、クォータレートもしくはその両方、または他の速度をサポートするか否かを判断することができる。一般に、一実施例において、
１．インターフェース上で２．４Ｇｂｐｓ以下の総帯域幅をサポートするポートアダプタ１０４Ｄは、そのＳＰＩ−４バス上でクォータレートをサポートしなければならず、さらに任意でフルレートをサポートし得る；
２．インターフェース上で２．４Ｇｂｐｓを超える総帯域幅をサポートするポートアダプタは、そのＳＰＩ−４バス上でフルレートをサポートしなければならず、さらに任意でクォータレートをサポートし得る；
ホストシステムは、ポートアダプタへのＳＰＩ−４の接続全体の帯域幅互換性を確実にするため、類似の規則に従わなければならない。したがって、
３．いずれかの共有ポートアダプタスロットにおいて２．４Ｇｂｐｓ以下の帯域幅をサポートするホストシステムは、そのスロットのためにＳＰＩ−４バス上のクォータレートをサポートしなければならず、さらに任意でフルレートをサポートし得る；
４．いずれかのスロットにおいて２．４Ｇｂｐｓを超える帯域幅をサポートするホストシステムは、そのスロットのためにＳＰＩ−４バス上のフルレートをサポートしなければならず、さらに任意で、クォータレートをサポートし得る。
【００６２】
この配列を使用して、ホストシステムは識別リポジトリについてクエリすることができ、識別リポジトリの情報に基づいてその動作挙動を適合させ得る。
【００６３】
図４Ａは、ポートアダプタの機能に基づいて、ホストシステムのＳＰＩ−４バスの動作挙動を適合するプロセスのフロー図である。ブロック４０２において、ポートアダプタの識別リポジトリにクエリが発行される。例えば図３に関して、ホストシステム１００はバス２２８Ａに信号を発することができてＩＤ  ＥＥＰＲＯＭ２１２Ａの内容を読取る。ブロック４０２は、ホストシステムがポートアダプタ１０４Ｄなどのポートアダプタに電力を与える前に実行され得る。ＩＤ  ＥＥＰＲＯＭ２１２Ａなどの識別リポジトリは、コネクタ３０２の別個のパワーピンから電力を受取ることができ、それによりホストシステム１００が、ポートアダプタが電源オフのときでさえポートアダプタからポート構成情報を読取ることが可能となる。
【００６４】
ブロック４０４において、応答は、ポートアダプタのための一意の識別子を含むポートアダプタから受取られる。例えば、ＩＤ  ＥＥＰＲＯＭ２１２Ａを読取ると、ポートアダプタ１０４Ｄがその一意の識別子値を与える結果となる。ブロック４０５において、ホストはポートアダプタによってサポートされる１つ以上のＳＰＩ−４バス動作レートを決定する。例えばホストは、記憶されたルックアップテーブルを用いて、受取られた一意の識別子値をポートアダプタのための１つ以上の動作周波数値と関連付ける。加えて、ホスト
システムは、ポートアダプタがホストシステムによってサポートされ得るか否かについて、およびポートアダプタによってＳＰＩ−４バスで送られるデータフォーマットについて判断することができる。代替的には、このような値および構成パラメータは、ポートアダプタの識別リポジトリから与えられる。
【００６５】
ブロック４０６において、ホストシステムは、ポートアダプタの識別リポジトリから受取られた識別子に基づいてホストが決定した、サポートされるレートのうちの１つとホストシステムとが互換であるか否かを判断する。ブロック４０６は、ポートアダプタとホストとが互換であるか否かを判断するために、上記１−４の規則の適用を伴い得る。例えば、ポートアダプタがクォータレートＳＰＩ−４のみをサポートし、ホストがフルレートを要求する場合、ホストはポートアダプタと互換ではない。ホストが互換ではない場合、次にブロック４０７においてホストはポートアダプタをパワーアップせず、ポートアダプタはホストシステムに用いられ得ない。上記の規則１−４は、ホストシステムによって実行されるソフトウェアにおいて実現され得る。
【００６６】
プロセスは、１つ以上の因子が満たされるときのみポートアダプタを電源オンにすることを任意で含み得る。例えばブロック４０６は下記のような評価因子を含むことができる。ホストシステムが、ポートアダプタが要求するパケットフォーマットのためのソフトウエアサポートを有するか否か、ホストシステムがポートアダプタのためのソフトウエアサポートを有するか否か、ポートアダプタの消費がホストシステムにより許容される最大電力消費量より少ないか否か、ホストシステムがポートアダプタが要求する帯域幅と一致し得るか否か、ポートアダプタに関連付けられるライセンス認可要件がポートアダプタがホストシステム上で実行するのを可能にするか否か、などである。
【００６７】
ホストがポートアダプタと互換である場合、次にブロック４０８において、ホストは自己のＳＰＩ−４バスの動作レートをサポートされる互換性のあるレートの最速のレートに変える。例えばポートアダプタ識別リポジトリが、ポートアダプタがクォータレートおよびフルレートＳＰＩ−４の両方をサポートすることを示す場合、ホストはそのＳＰＩ−４動作レートをフルレートに変える。代替的実施例において、ホストは自己のＳＰＩ−４バス動作レートを互換性のあるサポートされたレートのいずれかに変える。
【００６８】
ブロック４１０において、ホストは適切な制御信号を送ることによってポートアダプタをパワーアップする。図２の例では、このような信号は電力制御バス２２６で送られ得る。ブロック４１２において、ホストは、ポートアダプタをホストが使用しているものと同じ互換性のあるレートに設定する。図３の例において、ホストシステム１００はＳＰＡバス２０６Ａで制御信号を送り、ポートアダプタに特定のレートを用いるよう指示する。設定されるレートは最速の互換性のあるレートまたはいずれかの選択された互換性のあるレートであり得る。
【００６９】
他の実施例では、ステップ４０８、４１０、４１２を実行する順序は任意で変更され得、このようなステップを実行する順序は重要ではない。
【００７０】
このように図４Ａの手法を用い、ホストはポートアダプタの動作特性に関する情報についてポートアダプタにクエリすることができ、受取られた情報に基づいて、ホストシステムは、それが互換性があるか否か、ポートアダプタを電源オンにするか否か、およびいずれの動作レートを用いるかについて判断する。
【００７１】
さらに受取られた情報に基づいて、ホストシステムはＳＰＩ−４バスを実行する動作周波数を決定することができる。例えばフルレートＳＰＩ-４が用いられ得る、クォータレートが用いられ得る、などである。
【００７２】
例えば下記のセクション２．４にさらに記載されるように、ホストシステムはＳＰＩ−４バスでのデータ通信のための特定のフォーマットをも決定し得る。
【００７３】
２．３  拡張されたフロー制御バス
従来のＳＰＩ−４バスは最大２５６チャネルをアドレスし、標準的なアドレッシングモードにおいて２５６チャネルのＦＩＦＯキューステータス表示に対するサポートを与える。しかしながら、多数のチャネルを有するポートアダプタ（例えば「高度にチャネル化された」またはＡＴＭ  ＳＰＡ）は、１０００以上のチャネルを必要とし得る。したがって、１つのポートアダプタにつき２５６以上のチャネルをサポートすることができるポートアダプタフロー制御バスを有することが望ましい。
【００７４】
したがって、拡張されたフロー制御バスおよび関連付けられた方法が与えられ、ポートアダプタを拡張して２５６以上のチャネルの使用を可能にする。この配列においては、２５６以下のチャネルを必要とするポートアダプタはフロー制御のために従来のＳＰＩ−４制御バスを用いることができ、任意で本明細書に定義される拡張されたフロー制御バスを用い得る。ポートアダプタが本明細書に定義される拡張されたフロー制御バスを用いる場合、ポートアダプタは、例えばポートアダプタレベルまたは物理的ポートレベルのフロー制御などの、トラフィック集合の（サブチャネルまたは仮想チャネルではなく）グロスのフロー制御のために、依然として従来のＳＰＩ-４フロー制御バスをも用いる。[0082]  一実施例において、拡張されたフロー制御バス２２２は、時間領域多重化（ＴＤＭ）カレンダフレーム同期信号、フロー制御クロック信号、ステータス信号およびパリティ信号を伝える。フロー制御クロック信号は、ホストによってステータス信号上にデータ値を測定するのに用いられるソースクロックを与え、通常はポートアダプタである、フロー制御データの送信元をソースとする。クロック周波数の例は５０ＭＨｚであるが、他のいかなる適切なクロック周波数も用いられ得る。
【００７５】
一実施例において、ステータス信号は１ビット信号であるが、他の形式のステータス信号方式が用いられ得る。ステータス信号は、ＴＤＭタイムスロットにプログラムされるチャネルに対応して、チャネルＦＩＦＯステータスがしきい値の上にあるか、または下にあるかについて表示を与える。パリティ値は、特定のクロックサイクルのためのステータス信号およびフレーム同期信号全体について、さまざまな実施例において偶数または奇数のパリティを与える。別個のパリティ信号の使用は、さまざまな実施例において、フレームサイズをいかなる長さにも変える柔軟性を可能にする。任意で、ポートアダプタは拡張されたフロー制御バスをサポートしなくてもよく、その場合には前述の信号は接続されない。
【００７６】
このように、一実施例において、拡張されたフロー制御バスは、単一のデータビット上でチャネル毎のＦＩＦＯステータス情報を伝えるＴＤＭカレンダベース機構を用いる。ポートアダプタおよびホストにおいてチャネルが構成され、セットアップされると、ホストシステム１００によってカレンダがプログラムされる。一実施例において、チャネルの帯域幅に比例してタイムスロットが割当てられる。実施例はチャネル帯域幅を最も近い２の累乗に近づけることができ、フロー制御タイムスロットの総数を減じるようなやり方でタイムスロットを割当てることができる。一実施例において、カレンダは、行がタイムスロットに対応し、列がチャネル番号およびＦＩＦＯステータス情報を有するテーブルを含む。特定的な具体例において、１６５８４行が存在して各行が１２ビットおよび１ステータスビットのチャネル番号を含む。
【００７７】
ポートアダプタは、どのチャネルがＦＩＦＯステータスのためにポーリングされ、どのチャネルが特定のタイムスロットまたはクロック周期において送られるかを決定するため
にカレンダを用いる。ホストは、どのチャネルのＦＩＦＯステータスフロー制御情報が特定のタイムスロットにおいて伝えられるかを決定するために、同様に構成されたカレンダを用いる。
【００７８】
一実施例において、サポートされたチャネルの個数は構成可能であり、そのため特定のホストの機能に調節することができる。例えば、ホストカードは１Ｋのフロー制御可能なエンティティのみをサポートすることができ、したがって、あるポートアダプタはチャネルの最大数より少ないチャネルをサポートする必要がある。
【００７９】
拡張されたフロー制御バスの詳細な説明は、付録のセクション２．３において与えられる。
【００８０】
２．４  ポートアダプタを用いたパケットの前処理
一実施例において、各ポートアダプタ１０４Ａ、１０４Ｂ、１０４Ｎは、多数のネットワーク技術のいずれかを用いる外部ネットワークまたはデバイスと通信することができる。その結果、ポートアダプタにおいて受取られるデータパケットは、多数の異なるフォーマットのいずれかを有し得る。一実施例において、各ポートアダプタが少数の基礎パケットフォーマットのうちの１つにおいてホストにデータを与え、その全てがホストによって理解される。例えば、特定の実施例において、４つのパケットフォーマットが用いられ、ポートアダプタはホストと通信するために４つのフォーマットのうち１つ以上をサポートする。この手法では、ポートアダプタが多くの異なるホストシステムでターゲットとされるので、フォーマットは特定のメディアタイプに関連付けられる詳細および処理負担をポートアダプタ内で可能な限り隠し、ホストが高速で、またはより複雑でないパケット処理で動作するのを助ける。加えてパケットフォーマットは、ＳＰＩ−４バス上で利用される帯域幅を減じるために、可能な限り小さいヘッダフィールドを与える。
【００８１】
図４Ｂは、受取られたデータパケットを変形するプロセスの概要を示すフロー図である。
【００８２】
ブロック４２２において、パケットはポートアダプタの進入インターフェースに受取られる。一実施例において、図４Ｂのプロセスは、図２に示されるようにポートアダプタによって実行される。このように図４Ｂのステップは、例えばＳＰＩ−４終了ロジック２０２によって実行され得る。ブロック４２２で受取られるパケットは、ポートアダプタによってサポートされる特定のネットワーキング技術の固有のパケットフォーマットに従ってフォーマットされる。技術の例は、イーサネット（登録商標）、ＡＴＭ、フレームリレーなどを含む。
【００８３】
ブロック４２４において、複数の異なるパケットフォーマットの１つが選択される。典型的にはブロック４２４は、例えばパケットが受取られた固有のフォーマット以外のフォーマットなど、いくつかのパケットフォーマットの１つを選択することを含む。下記にさらに記載される特定の実施例において、パケットフォーマットは、イーサネット（登録商標）ＳＰＡ８バイトシムフォーマット（shim format）、ＡＴＭ  ＳＰＡ  ４バイトシムフォーマット、高度にチャネル化されたＳＰＡ４バイトシムフォーマットおよびシムなしフォーマット（no shim format）の中から選択される。選択されたフォーマットは、受取られたパケットにおけるフィールドよりさらに多くの、またはさらに少ないデータフィールドを含み得る。ブロック４２４を実行することは、その時選択されていたポートアダプタに関連付けられた１つの特定されたパケットフォーマットを単に選択することを含み得る。さらに、イーサネット（登録商標）パケットをサポートするポートアダプタの場合、特定のパケットフォーマットは、パケットで伝えられるＶＬＡＮ識別子に基づいて選択され得る。
【００８４】
ブロック４２６において、選択されたフォーマットに合致する新しいパケットが生成される。
【００８５】
ブロック４２８において、受取られたパケットのフィールドからのデータは、新しいパケットの１つ以上の対応するフィールドへ変形される。データ変形は、データ駆動マッピング、または、特定の進入パケットフォーマットのどのフィールドがターゲットパケットフォーマットのどの他のフィールドに変形されるかについて指定するプログラム上の規則にしたがって実行され得る。さらに、マッピングまたは規則は、例えばインターフェース識別子、パケット長、渋滞ステータス、パケット妥当性チェックなどのパケット以外のソースから得られたデータまたは値の変形を指定することができる。
【００８６】
ブロック４３０において、新しいパケットがホストシステムに与えられる。例えば図２において新しいパケットは、ＳＰＩ−４終了ロジック２０２からホストシステム１００へホストシステムバス２０１で通信される。
【００８７】
一実施例において使用する４つのパケットフォーマットは、例えば以下のように指定され得る：
フォーマットＡ：イーサネット（登録商標）ＳＰＡ８バイトシムフォーマット
フォーマットＢ：ＡＴＭ  ＳＰＡ４バイトシムフォーマット
フォーマットＣ：高度にチャネル化されたＳＰＡ４バイトシムフォーマット
フォーマットＤ：シムなしフォーマット
このような各フォーマットは付録において詳細に記載される。
【００８８】
図５は一般化された、変形されたパケットフォーマットのブロック図である。図５の実施例において、パケット５００は分類ビット５０２、長さインディケータ５０４、ソースチャネルラベル５０６およびヘッダフィールド５０８を含む。分類ビット５０２は、受取られたパケットに関連付けられるクラス値を伝える情報を有する。分類情報は、当初は、ＩＰパケットのタイプオブサービス（ＴｏＳ）フィールド、８０２．１ｑプライオリティ情報、ＭＡＣアドレスフィルタリング情報などを含むいくつかの異なるパケットフィールドのいずれかに由来し得るが、それらに限定されない。長さインディケータ５０４は、元のパケットに行われた長さ調節を特定し得、または変形されたパケットの絶対長を指定することができる。ソースチャネルラベル５０６は、元のパケットがそれにより届いた、論理的または物理的チャネルを特定する。ヘッダフィールド５０８は、元のパケットのヘッダフィールドから派生する情報を伝える。
【００８９】
図５の一般化されたフォーマットは、インバウンドパケットの異なるフォーマットにさまざまな方法で適合され得る。例えば、イーサネット（登録商標）ＳＰＡ８バイトシムフォーマットにおいては、ポートアダプタはレイヤ２カプセル化をパケットから完全にストリッピングして８バイトシムヘッダに置換し、８バイトシムヘッダは、元のパケットからの、ホストのフォワーディングエンジンが有効なフォワーディング決定をするための全ての関連情報を含む。低い４バイトはフレームリレーヘッダと同様の方法でほぼフォーマットされ、ホストのフォワーディングエンジン設計のあり得る簡略化を可能にする。
【００９０】
レイヤ２ヘッダのストリッピングはパケット毎ベースで任意であり、レイヤ２トンネル、例えばＭＰＬＳ上のイーサネット（登録商標）のサポートを可能にする。レイヤ２ヘッダがパケットに残されると、それは、いくつかのホストのための任意の最適化として、レイヤ３ヘッダを４バイトのアラインメントに持ってくるために、任意で２バイトまたは３バイトでパッディングされ得る。例えば、パッディングの第１のバイトは、存在するパッディングバイトの個数を示す。
【００９１】
この場合、ポートアダプタを出るパケットのフォーマットが可変長レイヤ２カプセル化の任意のストリッピングおよびシムヘッダの追加を含むことができるので、長さインディケータ値５０４は、パケットが最初に受取られた時と比較してパケットがより短い分だけのバイト数を示す。ホストシステム１００のレイヤ３エンジンは、ポートアダプタから受取ったバイトの総数に長さインディケータ値５０４を加えることにより元のレイヤ２長を決定することができる。
【００９２】
ヘッダフィールド５０８はパケットのレイヤ２ヘッダのプロトコル識別情報（「ＰＩＤ」）を含むことができ、ポートアダプタは値を変換し得た。ＰＩＤフィールドのある特殊な値は、ホストが特定のパケットに特殊な処理を適用しなければならないことを示す。特殊な値はソフトウェア構成可能である。例えば、特殊なＰＩＤは、トンネルパケット、例外パケットまたは他の特殊な性質を示すために用いられ得る。トンネルパケットについては、ＶＬＡＮＩＤおよび到来するパケットのポート番号がレイヤ２トンネルに入るよう構成されると、元のレイヤ２カプセル化を有するパケット全体がホストシステムに持ち込まれる。例外パケットは、ホストがパケットに特殊な処理を実行することが必要となるような何かをパケットについて検出したことを示す。複数の例外パケット特殊ＰＩＤが定義され得る。これは例えば、パケットを異なるプライオリティＣＰＵキューに分類することを可能にし得る。
【００９３】
任意で、第１のパケットを特定の選択されたパケットフォーマットに変形する一部として、元のパケットのヘッダ５１０および／または本体５１２が、変形されたパケット５００に配置され得る。このように、ホストおよびポートアダプタ内で用いられるパケットフォーマットは、元のパケットヘッダ５１０および／または元のパケット本体５１２を含み得る。元のヘッダおよび本体は、処理されるトラフィックまたはそれが処理されるコンテクストの性質に依存して省略され得る。
【００９４】
同様の変形技術は、インバウンドパケットの他の異なるパケットフォーマットに適用され得る。
【００９５】
追加的にまたは代替的に、パケットを変形するのではなくパケットを省くことができる。例えばポートアダプタが、ポートアダプタまたはホストにとって重要ではないパケットをレイヤ２アドレスまたはＶＬＡＮから受取った場合、そのパケットは省かれ得る。
【００９６】
３．０  延長および代替例
前述の明細書において、本発明はその特定の実施例を参照して記載された。しかしながら、本発明のより広い精神および範囲から逸脱することなくそこにさまざまな変形例および変更がなされ得ることは明らかである。したがって、明細書および図面は制限的意味ではなく例示的であると認められる。
【００９７】
例えばポートアダプタは、パケットを高プライオリティまたは低プライオリティとして分類することができ、ホストがどのパケットを最初に処理するか決定することを可能にするために、変形されたパケットフォーマットにおいてプライオリティ情報を与えることができる。変形されたパケットフォーマットにおいてパケットプライオリティ情報を伝えることに代わって、１つの物理的ポートに２つ以上の論理的ＳＰＩ−４チャネルが関連付けられることができ、第１の論理チャネルは第１のプライオリティレベルに関連付けられたポートトラフィックを伝え、第２の、または追加のチャネルが第２のまたは他のプライオリティレベルに関連付けられらたトラフィックを伝える。この手法では、ホストアダプタはソフトウェアを通じて構成され得、パケット内でプライオリティ情報を参照する必要なしに、高プライオリティチャネルで届いた全てのパケットを最初に処理する。
【００９８】
上述のアーキテクチャの別の変形例において、制御バス２０６（図２）またはＳＰＡバス２０６Ａ（図３）でいくつかまたはすべての制御信号を与えることに代えて、論理的ＳＰＩ−４チャネルのうちの１つが制御経路として用いられることができる。この代替例において、指定された論理チャネルは、ポートデータトラフィックを伝える関連の論理チャネルとは別個の制御パケットを有する。制御チャネルはホストのための最高プライオリティを有すると考えられ得る。さらにこの手法の利点は、制御パケットが、関連付けられたデータパケットの送信と同期し得るか、または時間が整合されることである。さらに、この手法において制御のために用いられる論理チャネルに用いられるＳＰＩ−４バスの帯域幅は、典型的にはＳＰＡバス２０６Ａまたは制御バス２０６の帯域幅よりも高く、それは大容量の制御データ、統計資料などを送るために有用であり得る。
【００９９】
さらに別の変形例において、指定されたＳＰＩ−４論理チャネルは、例えばイベント形式でフロー制御情報を伝えるために用いられ得る。
【図面の簡単な説明】
【０１００】
【図１】１つ以上のポートアダプタを有するホストシステムの概要を示すブロック図である。
【図２】ＳＰＩ−４バスのためのポートアダプタの概要を示すブロック図である。
【図３】一実施例による、図２のポートアダプタのより詳細なブロック図である。
【図４Ａ】ポートアダプタの機能に基づいてホストシステムのＳＰＩ−４バスの動作挙動を適合するプロセスのフロー図である。
【図４Ｂ】受取られたデータパケットを変形するプロセスの概要を示すフロー図である。
【図５】変形されたパケットフォーマットのブロック図である。
【図１】
2007535184.tif 000003
【図２】
2007535184.tif 000004
【図３】
2007535184.tif 000005
2007535184.tif 000006
2007535184.tif 000007
【図５】
2007535184.tif 000008
【手続補正書】
【提出日】平成16年11月8日(2004.11.8)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ＳＰＩ−４バスを有するホストシステムにゼロ以上のネットワークインターフェースを結合するためのポートアダプタであって、
ホストシステムに結合されるＳＰＩ−４バスと、
それぞれのネットワークリンクに接続するための１つ以上のネットワークポートにそれぞれ結合された１つ以上のネットワークインターフェースとを含み、ネットワークインターフェースはＳＰＩ−４終了ロジックによってＳＰＩ−４バスに結合され、さらに、
ポートアダプタを制御し、監視するためにホストシステムに独立して結合される、ＳＰＩ−４バスとは別個の制御バスと、
制御バスをネットワークインターフェースに接続するインターフェースロジックとを含む、ポートアダプタ。
【請求項２】
インターフェースロジックは、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）、これらおよび１つ以上の他のハードウェア素子の組合わせ、または１つ以上の他のハードウェア素子の組合わせを含む、請求項１に記載のアダプタ。
【請求項３】
ホストシステムに結合されてホストシステムによるポートアダプタの識別を可能にする識別バスをさらに含む、請求項１に記載のアダプタ。
【請求項４】
ポートアダプタが複数の別個の論理チャネルでホストシステムにＦＩＦＯステータスを伝え得る拡張されたフロー制御バスをさらに含む、請求項１に記載のアダプタ。
【請求項５】
クロックバスをさらに含み、クロックバスは、別のポートに対するポートの同期、ポートに対するホストシステム基準発振器の同期、またはホストシステムの外部の基準クロックに対するポートの同期を与えるために、ポートおよびホストシステム間でネットワークタイミング情報を通信する、請求項１に記載のアダプタ。
【請求項６】
ホストシステムの電源が入った状態でのホストシステムからのポートアダプタのオンライン装着及び取外し中、選択的にアダプタのために電力を生成する電力制御回路をさらに含む、請求項１に記載のアダプタ。
【請求項７】
ある種類のポートアダプタの一意の識別子を記憶する識別リポジトリをさらに含む、請求項１に記載のアダプタ。
【請求項８】
識別リポジトリはポートアダプタに関連付けられる１つ以上の構成パラメータ値をさらに記憶する、請求項７に記載のアダプタ。
【請求項９】
識別リポジトリは不揮発性メモリを含む、請求項７に記載のアダプタ。
【請求項１０】
識別リポジトリは、ポートアダプタがホストシステムによってサポートされ得るか否かをホストが判断することを可能にする値を記憶する、請求項７に記載のアダプタ。
【請求項１１】
識別リポジトリは、ＳＰＩ−４バスの１つ以上の動作周波数をホストが決定することを可能にする値を記憶する、請求項７に記載のアダプタ。
【請求項１２】
ホストシステムに結合される拡張されたフロー制御バスをさらに含み、それによりアダプタは、従来からＳＰＩ−４バスを用いて利用可能であった２５６の論理チャネルを超える論理チャネルを用いてＳＰＩ−４バスで情報を通信することが可能となる、請求項１に記載のアダプタ。
【請求項１３】
フロー制御インターフェースロジックをさらに含み、フロー制御インターフェースロジックは、ポートアダプタが従来からＳＰＩ−４バスを用いて利用可能であった２５６の論理チャネルを超える論理チャネルのＦＩＦＯステータスをホストシステムに伝えることを可能にするカレンダベースの機構を含む、請求項１２に記載のアダプタ。
【請求項１４】
拡張されたフロー制御バスはＴＤＭカレンダフレーム同期信号、フロー制御クロック信号、ステータス信号およびパリティ信号を伝える、請求項１２に記載のアダプタ。
【請求項１５】
アダプタはゼロ個のインターフェースを含み、インターフェースロジックはホストシステムから１つ以上のパケットを受取って指定された機能に従ってパケットを変形し、変形されたパケットをホストシステムに送るよう構成される、請求項１に記載のアダプタ。
【請求項１６】
指定された機能は、暗号化、暗号解読、圧縮または圧縮解除を含む、請求項１５に記載のアダプタ。
【手続補正書】
【提出日】平成17年5月9日(2005.5.9)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ＳＰＩ−４バスを有するホストシステムに１つ以上のネットワークインターフェースを結合するためのポートアダプタであって、
ホストシステムに結合されるＳＰＩ−４バスと、
それぞれのネットワークリンクに接続するために１つ以上のそれぞれの小型フォームファクタ光学モジュールによって与えられる１つ以上のネットワークポートにそれぞれ結合された１つ以上のネットワークインターフェースとを含み、ネットワークインターフェースはＳＰＩ−４終了ロジックによってＳＰＩ−４バスに結合され、光学モジュールはイーサネット（登録商標）、ファーストイーサネット（登録商標）、ギガビットイーサネット（登録商標）、光学ポートまたはシリアルポートのいずれかを与え、さらに、
ポートアダプタを制御し、監視するためにホストシステムに独立して結合される、ＳＰＩ−４バスとは別個の制御バスと、
制御バスをネットワークインターフェースに接続するインターフェースロジックとを含む、ポートアダプタ。
【請求項２】
インターフェースロジックは、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）、これらおよび１つ以上の他のハードウェア素子の組合わせ、または１つ以上の他のハードウェア素子の組合わせを含む、請求項１に記載のアダプタ。
【請求項３】
ホストシステムに結合されてホストシステムによるポートアダプタの識別を可能にする識別バスをさらに含む、請求項１に記載のアダプタ。
【請求項４】
ポートアダプタが複数の別個の論理チャネルでホストシステムにＦＩＦＯステータスを伝え得る拡張されたフロー制御バスをさらに含む、請求項１に記載のアダプタ。
【請求項５】
クロックバスをさらに含み、クロックバスは、別のポートに対するポートの同期、ポー
トに対するホストシステム基準発振器の同期、またはホストシステムの外部の基準クロックに対するポートの同期を与えるために、ポートおよびホストシステム間でネットワークタイミング情報を通信する、請求項１に記載のアダプタ。
【請求項６】
ホストシステムの電源が入った状態でのホストシステムからのポートアダプタのオンライン装着及び取外し中、選択的にアダプタのために電力を生成する電力制御回路をさらに含む、請求項１に記載のアダプタ。
【請求項７】
ある種類のポートアダプタの一意の識別子を記憶する識別リポジトリをさらに含む、請求項１に記載のアダプタ。
【請求項８】
識別リポジトリはポートアダプタに関連付けられる１つ以上の構成パラメータ値をさらに記憶する、請求項７に記載のアダプタ。
【請求項９】
識別リポジトリは不揮発性メモリを含む、請求項７に記載のアダプタ。
【請求項１０】
識別リポジトリは、ポートアダプタがホストシステムによってサポートされ得るか否かをホストが判断することを可能にする値を記憶する、請求項７に記載のアダプタ。
【請求項１１】
識別リポジトリは、ＳＰＩ−４バスの１つ以上の動作周波数をホストが決定することを可能にする値を記憶する、請求項７に記載のアダプタ。
【請求項１２】
ホストシステムに結合される拡張されたフロー制御バスをさらに含み、それによりアダプタは、従来からＳＰＩ−４バスを用いて利用可能であった２５６の論理チャネルを超える論理チャネルを用いてＳＰＩ−４バスで情報を通信することが可能となる、請求項１に記載のアダプタ。
【請求項１３】
フロー制御インターフェースロジックをさらに含み、フロー制御インターフェースロジックは、ポートアダプタが従来からＳＰＩ−４バスを用いて利用可能であった２５６の論理チャネルを超える論理チャネルのＦＩＦＯステータスをホストシステムに伝えることを可能にするカレンダベースの機構を含む、請求項１２に記載のアダプタ。
【請求項１４】
拡張されたフロー制御バスはＴＤＭカレンダフレーム同期信号、フロー制御クロック信号、ステータス信号およびパリティ信号を伝える、請求項１２に記載のアダプタ。
【請求項１５】
アダプタはゼロ個のインターフェースを含み、インターフェースロジックはホストシステムから１つ以上のパケットを受取って指定された機能に従ってパケットを変形し、変形されたパケットをホストシステムに送るよう構成される、請求項１に記載のアダプタ。
【請求項１６】
指定された機能は、暗号化、暗号解読、圧縮または圧縮解除を含む、請求項１５に記載のアダプタ。
【国際調査報告】
2007535184.tif 000009
2007535184.tif 000010
2007535184.tif 000011
2007535184.tif 000012
2007535184.tif 000013
2007535184.tif 000014
2007535184.tif 000015
2007535184.tif 000016