(57)【要約】【解決手段】  本発明は、個別のファイバーチャネル・データストリームをネイティブモードで統合させ、高速データチャネル上で前進型誤信号訂正を用いて広域な地理的距離に渡りファイバーチャネル・ストレージ・エリア・ネットワークを接続する装置および方法を提供するものである。【選択図】      図１
2008512959.tif 000002
【特許請求の範囲】
【請求項１】
パケットベースのデータを統合および伝送するシステムであって、
複数のパケットベースのデータストリームを送信するストレージ・エリア・ネットワークと、
前記複数のパケットベースのデータストリームを受信し、当該データストリームをパケットベースの複合データストリームに処理する、少なくとも１つのイングレス・ストリーム・ブロックと、
前記イングレス・ストリーム・ブロックに機能的に接続された、少なくとも１つのアップストリームプロセッサと、
前記イングレス・ストリーム・ブロックから受信したパケットベースの複合データストリームを伝送するための伝送手段と、
前記パケットベースの複合データストリームを受信し、前記複数のパケットベースのデータストリームに処理する、少なくとも１つのエグレス・ストリーム・ブロックと、
ユーザーのデータを読み込むために前記エグレス・ストリーム・ブロックに機能的に接続された、少なくとも１つのダウンストリームプロセッサと、
前記複数のパケットベースのデータストリームを受信するストレージ・エリア・ネットワークと
を有するシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、２００４年１２月８日に出願された米国特許出願第１１／００６，９３９号および２００４年９月８日に出願された米国特許仮出願第６０／６０８，１９８号に対する優先権を主張するものであり、前述の両特許出願の全文はこの参照によりここに組み込まれる。
【０００２】
本発明は、異種のファイバーチャネル・データストリームをネイティブモードで統合させる光伝送装置に組み込まれたコンピュータシステム、および高速データチャネル上で前進型誤信号訂正を用いてファイバーチャネル・ストレージ・エリア・ネットワークの接続性を広域な地理的距離に渡り拡張する方法に関する。
【背景技術】
【０００３】
ファイバーチャネルは、ストレージ・エリア・ネットワーク（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋｓ：ＳＡＮ）の接続に使用される今日の主要プロトコルである。ファイバーチャネルの他にも、ファイバーチャネルと同じ物理層インターフェイスを有するＦＩＣＯＮなど、本明細書に記載する方法を用いて伝送可能なプロトコルはある。前記ファイバーチャネル・プロトコルは、地理的に分散されたコンピュータとストレージシステムとの間の高速信号伝送を可能にする。
【０００４】
従来、大量のデータストレージを要求するアプリケーションに対応するには、ＳＣＳＩ規格を用いる大型外付けディスクまたはディスクファームを有するファイルサーバーが使われてきた。アプリケーションが増すにつれ、そのストレージシステム容量および帯域幅（データ転送速度）の要求も増した。ＳＣＳＩ規格の制限のため、スケーリングは困難であった。前記サーバーは、それらに直接接続された装置のデータのみにアクセス可能であった。前記サーバーまたはＳＣＳＩハードウェアの不良によってアクセス不能となる場合がある。また、ＳＣＳＩは対応可能な装置の数に限りがあるため、スケーラブルでない。ＳＣＳＩのパラレル構造による距離的制限のため、装置を同一場所に配置する必要がある。
【０００５】
ストレージ・エリア・ネットワーク（ＳＡＮ）は、ＳＣＳＩアーキテクチャの制限を克服するために実行された。前記ＳＡＮは、サーバーとストレージデバイスの間をつなぐネットワークである。ＳＡＮは、任意のストレージデバイスに複数のサーバーがアクセスすることを可能にする。これは耐障害性を増し、且つ、そのサーバーとストレージを同一場所に配置する必要をなくし距離的制限を克服する。ＳＡＮの実行に使用される主要ネットワーク技術はファイバーチャネルである。
【０００６】
ファイバーチャネル技術［ＡＮＳＩ  Ｘ３Ｔ１１］は、コンピュータシステムとストレージデバイスの間の高速データ転送を実現するために設計された。この技術は、インターネットプロトコルおよびＳＣＳＩを含む一般的な伝送プロトコルに対応する。この技術は、１Ｇｂｐｓ、２Ｇｂｐｓ、４Ｇｂｐｓ、８Ｇｂｐｓ、１０Ｇｂｐｓの標準速度での高速データ転送に対応する。また、この技術は長距離通信に対応するので、企業がオフサイトのストレージを持つことを可能にし、よって災害修復や業務継続といったアプリケーションを可能にする。
【０００７】
ファイバーチャネル・データは、シーケンスに連結されるフレームを有するため、ブロック転送が可能である。前記フレームは、３６Ｂから２ＫＢまで様々なフレームサイズが可能である。複数のシーケンスから成る１つの交換が可能であるため、大容量のデータ転送が可能である。最高１２８ＭＢを１つのコマンドで伝送可能である。そのリンクを介して伝送可能な最大データ量は、そのバッファクレジットに依存する。前記バッファクレジットは、前記データリンク沿いに閉塞が生じた場合にデータを保存するために利用可能なフレーム数を定める。受信側装置がデータフローを減速させる場合、フロー制御機構によるバックプレッシャーによってデータの流れが停止している間に、バッファは伝送中のデータを保存する必要がある。よって、必要なバッファ量はその通信システムの往復時間より多くなる。
【０００８】
可能な距離拡張量は、その光伝送システム内に取り入れ可能なバッファメモリ量の関数である。この取り入れ可能なバッファメモリ量は、そのサイズ、電力消費、および密度の関数である。そのシステムの帯域幅で動作可能とするには、高速メモリが要求される。その伝送装置に組み込み可能とするには、小さい物理的空間を占めるものでなくてはならない。その電力消費も、前記システムの制約範囲内でなくてはならない。よって、前記システムの物理的制約範囲内に取り入れ可能なメモリ量により、拡張可能な地理的距離が定められる。
【０００９】
通常、ＳＡＮは距離能力制限のあるファイバーチャネル・スイッチを介して相互接続される。ほとんどのファイバーチャネル・スイッチは制限つきバッファクレジットを有し、ＳＡＮの距離を１００ｋｍまでに制限する。前記ファイバーチャネル標準規格そのものは、２５０ｋｍという制限を持つ。ほとんどの装置は２５０ｋｍ範囲内に入り、名目上、１００ｋｍの距離に対応する能力を持つ。さらに、前記スイッチは相互通信するよう最適化され、しばしば専有トラフィックを実行する。従って、他の装置との相互運用性のために、データトランスペアレントであるＳＡＮ拡張法が望まれることが多い。
【００１０】
前記光伝送システム内に前記距離拡張を組み込むことにより、総費用の削減、セキュリティの増強、および信頼性の向上が成され、結果的にスループットが増す。従来、前記距離拡張は公共ネットワーク上のＥｔｈｅｒｎｅｔ（登録商標）またはＳＯＮＥＴを介して行われてきた。この方法は性能の低下、セキュリティの悪化、および費用の増加につながる。ビットエラーの蓄積により、ネットワークのスループットが劣化する場合がある。公共ネットワークを介した接続は、セキュアな通信を提供するためにエンコーディング装置を必要とするため、攻撃に対する脆弱性の増加または費用の増加を招く。
【００１１】
ゼロ以外のパケット損失率もＦＣ／ＦＩＣＯＮ伝送のスループットに深刻な影響を与え得る。公共のＩＰベースのネットワーク、あるいはＳＯＮＥＴ私有ラインでさえ、損失データのために有意なエンド・ツー・エンド再伝送が強制されるエラー率をもたらす場合がある。データセンター間の距離が増すにつれ、全体的なスループットおよび同期は、前記ＦＣ／ＦＩＣＯＮ上層プロトコル（ｕｐｐｅｒ−ｌａｙｅｒ  ｐｒｏｔｏｃｏｌｓ：ＵＬＰｓ）での再伝送の影響を受け減少する。
【００１２】
共有スイッチまたは経由ネットワークを使うファイバーチャネル・オーバーＩＰ（Ｆｉｂｒｅ  Ｃｈａｎｎｅｌ−ｏｖｅｒ−ＩＰ：ＦＣＩＰ）ソリューションも、中間経由場所および切り替え場所に起因する待ち時間増加の悪影響を受ける。パケット損失によって起きる前記の強制的なＴＣＰ層再伝送も、有効スループットの劇的な減少により、割り当てをカバーする大幅な帯域幅を要求する。公共ＩＰベースネットワークのセキュリティ上の問題も、専用の私有ネットワークでは必要にならない追加的なセキュリティ対策を要求する。このため、企業はそのＦＣＩＰトラフィックの追加的なエンコーディング装置のための経費を支払う選択をする。前述のストレージ拡張機能およびセキュリティを提供するために多くの異種ボックスを使用することは、全体的な費用、必要な物理的空間、および電力消費を結果的に増す。
【００１３】
従来のＳＯＮＥＴでのＦＣの拡張は、ＳＯＮＥＴアクセスリンクを介して従来のキャリアネットワークにアクセスするチャネルエクステンダまたはＳＡＮ拡張ゲートウェーを利用する。そのエンド・ツー・エンドＳＯＮＥＴ接続はメトロキャリアおよびインターエクスチェンジキャリア（ｉｎｔｅｒ−ｅｘｃｈａｎｇｅ  ｃａｒｒｉｅｒ：ＩＸＣ）ネットワーク全体の複数のＳＯＮＥＴリンクを移動する。各ＳＯＮＥＴリンクは、前進型誤信号訂正（Ｆｏｒｗａｒｄ  Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ：ＦＥＣ）のようなエラー訂正スキームを採用しない限り、特定のビットエラー率（ｂｉｔ  ｅｒｒｏｒ  ｒａｔｅ：ＢＥＲ）になる傾向がある。さらに、前記エンド・ツー・エンドＳＯＮＥＴ接続のＢＥＲは、複数のリンク全体でビットエラーを蓄積する。
【００１４】
これら全てを考慮すると、前記光伝送システムの一部となる前記ファイバーチャネル距離拡張ソリューションの必要が示唆される。前述のソリューションは、金融およびその他の重要データを伝送する組織の私有ネットワークのセキュリティを提供する。従来の公共ネットワークを回避することにより通信の信頼性も向上し、結果的にスループットが増す。また、このアーキテクチャはＳＯＮＥＴ／Ｅｔｈｅｒｎｅｔ（登録商標）変換およびデータエンコーディング／デコーディングのための付加的装置の必要をなくす。これにより、災害修復および業務継続のようなアプリケーションにかかる全体的な費用が削減する。
【００１５】
上述の装置は、高速メモリおよび専有フロー制御を用いる光伝送システム内のファイバーチャネル拡張機能を組み込む。このアプリケーションに用いられるＱＤＲ  ＳＲＡＭメモリは、高密度、低電力消費、データのバッファに要求されるスピード、およびその距離拡張を提供する。このフロー制御法はファイバーチャネルフロー制御上で改善し、スループットを失わずに全パケットサイズのメモリを効率的に使用することを可能にする。伝送装置に前記ファイバーチャネルのデータを組み込む概念は、私有ネットワークのセキュリティを提供する。ＳＡＮの接続に前進型誤信号訂正（ＦＥＣ）を使用することにより、そのリンク全体の信頼性が向上し、結果的にスループットが増す。
【００１６】
現代のデータベースのサイズは大きいため、スケーラブルな帯域幅を提供するために同一ファイバー上に複数の高速データチャネルを持つことが望ましい。現代のストレージシステムの容量は、５００テラバイトを超えるほどに増大している。それらデータベースは金融およびその他のデータを運搬する場合がある。１実働日に前記データの１０パーセント以上が変化することもある。８時間に５０テラバイト（４００テラビット）のデータ変化があれば、１４Ｇｂｐｓの帯域幅が必要となる。これは、そのデータ変化が一定の速度で起きると仮定した場合である。しかし、１実働日の間には、大量のデータ変化が一時にまとまって起きる場合があるため、ピークデータ転送速度ははるかに高い。よって、そのネットワークは、一時に高まるトラフィックに対応できるよう、前記ピークデータ転送速度に合った設計でなければならない。ピークから平均までの基準は、そのトラフィックのタイプによって異なる。平均からピークまでの割当量は、１２．５％の平均から５０％のピークまで変化する場合がある。この例では、一定速度で要求される１．４波長が、２．８（５０％）または９．２（１２．５％）まで増す場合がある。新しくより高容量のシステムの市場導入またはパラレル・ディスク・システムの追加によりストレージ容量が増すにつれ、その帯域幅の要求も高まる。より高いデータ転送速度のファイバーチャネル・インターフェイスの開発に伴い、その伝送システムもこれらの新標準規格に対応する必要がある。よって、フレキシブルなインターフェイスおよびスケーラブルな容量を持つファイバーチャネル距離拡張ソリューションが必要である。
【００１７】
ここに示すアパレータスおよび方法は、６０００ｋｍを超えるファイバーチャネル距離拡張を可能にする。当該光伝送システムの各チャネルに高密度、低電力消費のメモリ技術を組み込むことにより、ファイバーチャネル・データのための大型バッファを提供し、それによってＳＡＮの距離を拡張する。非侵入型のファイバーチャネル拡張法を用いることにより、前記ファイバーチャネルのトラフィックを停止せずにデータ・トランスペアレンシーを提供する。さらに、この伝送装置は終端側のＳＡＮ装置に対してもトランスペアレントであるので、前記伝送装置に入るためのファイバーチャネル・ログイン（ＬＯＧＩＮ）は不要である。本質的に、端末装置同士は相互交信する。当該距離拡張は、ファイバーチャネルをＳＯＮＥＴまたはＩＰへ変換することなくそのネイティブモードで用いて達成される。フレキシブルなファイバーチャネル統合および拡張アーキテクチャを用いることにより、フレキシブルなインターフェイスとスケーラブルな帯域幅を可能にする。これにより、複数の低速ファイバーチャネル・インターフェイスを統合させ、単一の高速データチャネルにすることが可能になる。
【００１８】
データ信号を送信する方法は、米国特許第６，１５１，３３４号明細書（Ｋｉｍら）、米国特許第２００２／００８０８０９号明細書（Ｎｉｃｈｏｌｓｏｎら）、米国特許第２００２／００７５９０３号明細書（Ｈｉｎｄら）、および米国特許第６，３９６，８５３号明細書（Ｈｕｍｐｈｒｅｙら）で教示されている。
【発明の開示】
【発明が解決しようとする課題】
【００１９】
本発明は、ファイバーチャネル・ストレージエリア・ネットワークの接続性を広範な地理的距離に渡り拡張するよう、前進型誤信号訂正を使用し、高速データチャネル上で個別ファイバーチャネル・データストリームをそのネイティブモードで統合させる装置および方法を提供する。表１が示すように、ファイバーチャネル・データストリームの個別クロックドメインをマッピングして単一のクロックドメインにすることにより、データ統合を実現する。表１が示すように、異なるエンコーディングにより前記データストリームのデータ転送速度は異なる場合がある。前記の距離拡張を実現するために、イングレス（送信端末）とエグレス（受信端末）のインターフェイスでＦＣ標準規格に従った外部フロー制御を実行し、且つ、そのシステム内に十分なバッファメモリを組み込んでデータ損失なく前記拡張リンクのスループットを最大化するために、専有の内部フロー制御およびクレジット拡張方法を実行する。
【００２０】
様々なデータ転送速度の個別ファイバーチャネル・データストリームを単一の高速データストリームに統合するプロセスを以下に示す。表１は、名目１０．５Ｇｂｐｓ（ギガビット／秒）の光伝送リンク上の最高８つのギガビット・ファイバーチャネル（Ｇｉｇａｂｉｔ  Ｆｉｂｅｒ  Ｃｈａｎｎｅｌ：ＧＦＣ）データストリーム、４つの２ＧＦＣデータストリーム、２つの４ギガビット・ファイバーチャネル・データストリーム、１つの１０ＧＦＣデータストリーム、または１つの８ＧＦＣデータストリームの統合を示す。表１の第１列、第２列、および第３列は、その入力データフォーマットを定義する。好ましい実施形態では、表１の最初の２行が示すように４つのギガビット・ファイバーチャネルまたは４つの２ギガビット・ファイバーチャネルのデータストリームを統合させる。好ましい実施形態において、個別ポートは、ＳＡＮインターフェイスの要件に依存して選択可能な１ＧＦＣおよび２ＧＦＣの双方の実行に対応する。代替実施形態によって４ＧＦＣ、８ＧＦＣ、および１０ＧＦＣの接続性を提供することができる。
【００２１】
【表１】
2008512959.tif 000003
【００２２】
本発明では、マルチパケットベースのデータストリーム（列４）をアイドルおよびステータスビットの「スタッフィング」によって独立クロックソース（第６列：１６ビットｘ６２２．０８ＭＨｚ＝９．９５３Ｇｂｐｓ）に統合させる。前記独立クロックは、その出力データ転送速度（第６列）が前記の個別データストリームすべての複合入力データ転送速度（第５列）より大きくなるように選択される。前記独立クロックはバッファオーバーフローを防止し、ステータス情報をデータに組み込む機会を提供する。
【００２３】
好ましい実施形態では、４つのＧＦＣまたは４つの２ＧＦＣデータストリームを９．９５３Ｇｂｐｓのデータリンクに統合してＦＥＣデバイスに入れる。ＦＥＣ後、前記の伝送システムに入る統合データの転送速度は１２．４４Ｇｂｐｓである。
【００２４】
１代替実施形態では、表１の第３行目および４行目が示すように、２つの４ＧＦＣデータストリームまたは１つの８ＧＦＣデータストリームを単一の１０Ｇデータリンクに統合する。
【００２５】
１代替実施形態（表１の第４行目［１０ＧＦＣ］）では、単一の１０ＧＦＣデータストリームは入力データ転送速度が１０．５１８７５Ｂｐｓである。１０ＧＦＣは１ＧＦＣおよび２ＧＦＣと異なり、その１０．２Ｇｂｐｓという生データ転送速度に加えて６４ｂ／６６ｂエンコーディングを使用するため、結果的にはるかに高い１０．５１８７５Ｇｂｐｓという統合データ転送速度となる。このデータ転送速度が４００ｐｐｍ上昇することにより、データストリームへのステータス情報の組み込みが可能となる。よって、前記ＦＥＣに入るデータ転送速度は１０．５２３Ｇｂｐｓである。
【００２６】
その結果得られる信号は伝送インターフェイスで前進型誤信号訂正（ＦＥＣ）を用いてカプセル化され、シリアル化され、前記の伝送システムを通して変調される。前記ＦＥＣは、前記伝送システムでのデータ機能障害によって引き起こされたエラーの訂正を行う。当該実施形態において、前記ＦＥＣ信号はＧＦＣ／２ＧＦＣ／４ＧＦＣ信号に対して名目上１２．４４Ｇｂｐｓである。しかし、前記の１０ＧＦＣ信号ははるかに高いデータ転送速度であるため、そのＦＥＣ信号は１３．１５４Ｇｂｐｓに上昇する。ＦＥＣ後のライン速度は、異なるオーバーヘッドとコーディングゲインを採用する別のＦＥＣデバイスを用いて低減することができる。
【００２７】
また、前記ＦＥＣは、個別データストリームを前記ＦＥＣインターフェイスの個別ビットにマッピングすることを可能にする１６ビットＳＦＩ−４相互インターフェイスも提供する。たとえば、ＧＦＣデータストリームは、１０６．２５ＭＨｚまたは単一データ転送速度で１．０６２５Ｇｂｐｓまたはダブルデータ転送速度（前記のクロックの両端の間のデータ転送）で２．１２５Ｇｂｐｓで１０ビットワイドのデータとして到着する。前記ＦＥＣは６２２．０８ＭＨｚのクロック速度で１６ビットのインターフェイスを持つことにより、９．９５３Ｇｂｐｓのデータ転送速度に対応する。よって、各ＧＦＣデータストリームは前記ＦＥＣの８ビット（ＧＦＣ）または４ビット（２ＧＦＣ）にマッピングされる［ビット数＝（ＦＥＣデータ転送速度／ＧＢＥデータ転送速度）ｘビット数］。よって、最高８のデータストリームを前記ＦＥＣにマッピングすることができる。前記インターフェイスは相互インターフェイスであるので、このエンコーディングされたデータは、ネットワークの遠位端にある同一の２つのビット位置に到着する。この方法は、チャネルＩＤまたはその他のラッパーをエンコーディングせずにデータをそのネイティブフォーマットで伝送することを可能にする。
【００２８】
前記伝送システムの送信端末（イングレスブロック）および受信端末（エグレスブロック）は、内部および外部の両方のフロー制御機構を利用してコヒーシブに機能し、拡張距離に渡ってデータ損失なしにファイバーチャネル・データを通信する。近位端のＦＣポートは、フロー制御信号を提供することによって前記ターミナルに入るデータフローを制御し、パケットを受信する準備が整ったことを知らせる。この外部インターフェイスで標準ファイバーチャネル（Ｓｔａｎｄａｒｄ  ｆｉｂｒｅ  ｃｈａｎｎｅｌ：ＦＣ）フロー制御を使用する。前記近位端クライアントから受信されたデータフレームを前記遠位端ＦＣポートに送信し、そこで高密度メモリでそれらデータフレームをバッファし、前記遠位端クライアントに送信する。前記遠位端ＦＣポートは、前記ファイバー標準規格で前記エグレス（遠位端）フロー制御機構によってデータフレームを前記遠位端クライアントに送信する。また、前記遠位端ＦＣポートは、内部フロー制御情報も前記近位端ＦＣポートに送信する。前記近位端ＦＣポートは、前記遠位端ＦＣポートのバッファメモリのステータスに基づきその端末へのデータフローを制御することにより、前記遠位端クライアントがデータを受け入れられない場合に備え、前進されたデータを保存するためのメモリが常に利用可能であるようにする。よって、データ損失を起こすことなくスループットが最大化される。この機能を実現するために、後に詳細に説明する内部専有フロー制御アルゴリズムを使用する。
【００２９】
前記イングレス回路（近位端）は、パケットを受信する準備が整ったことを知らせるフロー制御信号を提供することによってその端末に入るデータフローを制御する。このインターフェイスでは、標準ファイバーチャネル・フロー制御を使用する。前記イングレス回路は前記遠位端にデータフレームを伝送し、未応答の伝送データフレーム数がそのバッファメモリのサイズ未満であることを確認する。前記イングレス回路は前記遠位端からバッファメモリ・ステータスを受信し、それに基づき利用可能なメモリを決定し、データフローを継続するか停止するかを決定する。
【００３０】
その受信側のエグレス回路が変調信号を回復してＦＥＣ回路に入力すると、前記ＦＥＣ回路はその伝送信号のエラーを訂正する。前記エグレス回路がそのステータス情報を抽出し、その結果、元のデータフレームが返信される。その出力のタイミングは固定オシレータに基づく。しかし、その遠位端ＳＡＮへのデータデリバリは、前記ＳＡＮが利用可能である場合のみ前記ＳＡＮへパケットを前進させることができるフロー制御機構によって制御される。高密度バッファメモリを用いて入信ファイバーチャネル・データを保存し、そのフロー制御プロトコルによってその遠位端ＳＡＮに前進させる。そのエグレスメモリのステータスはそのイングレスブロックに送り戻され、トラフィックの始動・停止に使用される。そのエグレス回路は、アイドル文字の加算／減算によってそのデータを固定出力クロックにマッピングする。この方法により、ファイバーチャネル・データは拡張距離に渡って通信される。
【発明を実施するための最良の形態】
【００３１】
図１は、２つのストレージ・エリア・ネットワーク（ＳＡＮ）を統合させ、広域の地理的距離１００に距離拡張するための伝送システムのブロック図を示す。システム１００は全二重伝送システムであり、前記ネットワークの両端での統合と回復に使われる回路は互いにミラーイメージである。ＳＡＮ１０２および１６５は最高６０００ｋｍまで離れることができる。ＳＡＮ１０２および１６５はファイバーチャネル・スイッチまたはファイバーチャネル・ストレージデバイスのどちらでもよい。たとえば１０００ｋｍなど、より短い距離の場合、本発明はファイバーチャネルまたはＦＩＣＯＮの同期複製に対応することができる。拡張距離の場合、本発明はファイバーチャネルまたはＦＩＣＯＮ非同期複製に対応する。
【００３２】
前記の好ましい実施形態において、信号１０５、１１０、１１５、１２０および１４６、１５０、１５５、および１６０は、４つのギガビット・ファイバーチャネル・インターフェイス（１．０６２５Ｇｂｐｓ）または４つの２ＧＦＣインターフェイス（２．１２５Ｇｂｐｓ）の任意の組み合わせが可能である。別の実施形態では、前記信号のうち２つだけを用いて、２つの４ＧＦＣインターフェイス（４．２５Ｇｂｐｓ）に対応する。さらに別の実施形態では、１つの８ＧＦＣまたは１つの１０ＧＦＣインターフェイス（１０．５１８７５Ｇｂｐｓ）を運ぶ単一の信号を用いる。
【００３３】
前記の好ましい実施形態において、４つの独立１０ｂエンコーディングしたＧＦＣ／２ＧＦＣデータストリーム１０５、１１０、１１５、および１２０をイングレスブロック１４５によって統合させ、複合ストリーム１３０で伝送システム１２５を通して伝送する。別の実施形態では、本明細書に開示した構成要素をスケーリングすることによって、より多く（最高８まで）のデータストリームまたはより少ないデータストリームを取り入れることができる。イングレスブロック１４５では、各データストリームから受信された名目ＧＦＣ／２ＧＦＣ信号からの約＋／−１００（百万分の１）ｐｐｍのタイミング不確実性がある。このタイミング不確実性は追跡され、前記イングレスブロック１４５で修正される。好ましくは、複合ストリーム１３０は４００ｐｐｍより高い、より速いラインクロック速度を有する。上記の表１は、４つの全てのデータフォーマットのライン速度を示し、それらはその入力データ転送速度より名目上４００ｐｐｍ高い。この速いラインクロック速度はバッファオーバーフローを予防し、アイドル文字およびステータス情報を組み込むためにパケット間にスタッフィングする機会を確実にもたらす。そのクロック速度を増すために、前記のイングレスブロック１４５でパケット間にデータバイトを付加または「スタッフィング」する。その結果、複合ストリーム１３０はシリアライザ／デシリアライザ（図２のＳＥＲＤＥＳ２５４）でシリアル化された１６のデータビットを有するシリアルストリームを含むことになる。前記の好ましい実施形態では、前記複合データストリーム１３０の１６ビットのうちの４つに各ＧＦＣ／２ＧＦＣチャネルをマッピングする。しかし、各データストリームを前記１６ビットのうちの２つにマッピングすることによって８ＧＦＣチャネルを統合すること、あるいは１６のうち８つにマッピングして４ＧＦＣ、あるいは１６のうちの１６にマッピングして１０ＧＦＣを統合することも可能である。
【００３４】
複合ストリーム１３０は伝送システム１２５を通してエグレスブロック１４０へ運ばれる。エグレスブロック１４０はスタッフィングされたデータを複合ストリーム１３０から取り去り、ＧＦＣデータストリームの場合は１．０６２５Ｇｂｐｓ、２ＧＦＣデータストリームの場合は２．１２５Ｇｂｐｓの固定クロック速度にそのデータをマッピングする。エグレスブロック１４０にある固定オシレータ６８０（図６を参照して詳細に説明）を実行し、各データストリームについて受信されたＧＦＣチャネルのタイムを測定する。データストリーム１４６、１５０、１５５、および１６０について回復されたデータは、データストリーム１０５、１１０、１１５、および１２０からイングレスパスで受信されたデータと同一である。よって、複数のＧＦＣ／２ＧＦＣストリームが統合され、伝送システム１２５を介して伝送される。
【００３５】
イングレスブロック１４５に接続されたアップストリームプロセッサ１７０は、ライン１７１を介してユーザーデータを１つのスタッフィング単語（ｓｔｕｆｆｉｎｇ  ｗｏｒｄ）に加えることができる。ライン１７３を介してエグレスブロック１４０に接続されたダウンストリームプロセッサ１７２は、前記ユーザーデータを読み込む。
【００３６】
図２を参照すると、イングレスブロックの好ましい実施形態のブロック図がより詳細に示されている。イングレスブロックは図２に、イングレスブロック２０１として示されている。そのイングレスパスは４つの光トランシーバ２００、２０３、２０５、および２０７から成り、その各々が単一のＧＦＣ／２ＧＦＣデータストリーム２０２、２０４、２０６、および２０８を受信する能力を持つ。前記の好ましい実施形態では、各光トランシーバは小型フォーム・ファクタ・プラガブル（ｓｍａｌｌ  ｆｏｒｍ−ｆａｃｔｏｒ  ｐｌｕｇｇａｂｌｅ：ＳＦＰ）の光トランシーバである。あるいは、１つの１０ＧＦＣデータストリームを送信するように当該システムを設定した場合は、ＳＦＰ光トランシーバの代わりにＸＦＰ光モジュールを用いてもよい。前記の４つのＧＦＣ／２ＧＦＣデータストリームは、光トランシーバ２００、２０３、２０５、および２０７によって電気出力信号２１０、２１２、２１４、および２１６に変換される。電気出力信号２１０、２１２、２１４、および２１６は、シリアライザ／デシリアライザ（ＳｅｒＤｅｓ）２１８に伝送される。ＳｅｒＤｅｓ２１８は、光トランシーバ２００、２０１、２０３、および２０５から電気出力信号２１０、２１２、２１４、および２１６を受信し、回復ＧＦＣ／２ＧＦＣクロック信号２２０、２２２、２２４、および２２６を生成し、且つＧＦＣ／２ＧＦＣデータ信号２２８、２３０、２３２、および２３４に対して８ｂエンコーディングされたデータと１制御ビットを生成する。
【００３７】
システムクロック２６６はＧＦＣレファレンスクロックであり、これを１０６．２５ＭＨｚのＳＥＲＤＥＳレファレンス信号の生成に使用する。前記ＳＥＲＤＥＳ２１８はこのクロックをレファレンスとして用いて入力信号を回復する。
【００３８】
ＧＦＣではシングル・データ・レート・クロック、２ＧＦＣではダブル・データ・レートで名目周波数１０６．２５ＭＨｚを持つ回復ＧＦＣクロック信号２２０、２２２、２２４、２２６、および８ｂエンコーディングされたデータ信号と制御ビット２２８、２３０、２３２、および２３４は、ＳｅｒＤｅｓ２１８からイングレス・フィールド・プログラム可能ゲートアレイ（Ｉｎｇｒｅｓｓ  ｆｉｅｌｄ  ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ：ＦＰＧＡ）２４４に伝送され、そこでデータ信号２２８、２３０、２３２、および２３４は処理され、以下に説明するように複合信号２４６になる。前記イングレスＦＰＧＡは信号２６２を介してレファレンスクロック２６４をレファレンスとして用い、前記複合信号２４６を生成する。複合信号２４６は、そのラインクロック速度信号２６２が制御するｎｘ６２２．０８ＭＨｚのパラレル信号を有する。前記の好ましい実施形態において、ｎは１６であり、各ＧＦＣまたは２ＧＦＣは１６のＦＥＣチャネルのうちの４つにマッピングされる。しかし、ｎは最低２まで可能であり、この場合、各ＧＦＣは１６のＦＥＣチャネルのうちの２つにマッピングされ、よって８ＧＦＣチャネルの統合が実現される。前記の好ましい実施形態では、６２２．０８ＭＨｚのクロックを用いて個別データストリームが統合される。しかし、アプリケーションによっては、１００ＭＨｚから８１０ＭＨｚまでのクロック速度を代わりに用いることもできる。唯一の制約は、先に説明したように、その出力データ速度がその統合入力データ速度より大きくなくてはならないことである。また、前記イングレスＦＰＧＡは、信号プレゼントステータス信号２３６、２３８、２４０、２４２を介して前記の光トランシーバと通信する。これらの信号については図３の説明とともに詳細に述べる。
【００３９】
イングレスＦＥＣ２４８は複合信号２４６および付随クロック２６２を受信し、伝送複合信号２５６に処理する。複合信号２５６は、より速いラインクロック速度２６３で、１６のパラレルＦＥＣ出力信号を含む。当業者には既知のように、前記ＦＥＣ出力信号は、カプセル化されたデータと入力クロックの双方をそのＦＥＣコードに含む。受信側のＦＥＣがその信号のエラー訂正を行うと、前記データおよびクロックの双方が、「スルータイミング」として当業者には既知の方法によって回復される。
【００４０】
伝送複合信号２５６はＳｅｒＤｅｓ２５４に伝送される。ＳｅｒＤｅｓ２５４は伝送複合信号２５６をシリアル化し、名目速度１２．４４Ｇｂｐｓの高速クロック速度で、単一ビット幅チャネルを有する複合ストリーム２５０にする。ＳｅｒＤｅｓ２５４は複合ストリーム２５０を伝送システム２５２に伝送する。
【００４１】
図３は、イングレスＦＰＧＡ２４４の好ましい実施形態の一部を詳細に示すブロック図である。図３において、イングレスＦＰＧＡはイングレスＦＰＧＡ３００として示されている。イングレスＦＰＧＡ３００は、ＳｅｒＤｅｓ２１８（図２）から伝送される回復ＦＣクロック信号２２０、２２２、２２４および２２６、データ信号２２８、２３０、２３２、および２３４を受信する。イングレスＦＰＧＡ３００はＳＦＰ２００、２０１、２０３、および２０５（図２）から伝送される信号プレゼントステータス信号２３６、２３８、２４０、および２４２を受信する。簡略化するために、各々について１信号２２０、２２８、２３６のみを図示する。信号プレゼントステータス信号２３６はＦＩＦＯ書き込み制御ロジック３３６に送信される。ＦＣクロック信号２２０およびデータ信号２２８はＳｅｒＤｅｓ入力インターフェイス３００１に送信される。前記の好ましい実施形態では、データ信号２２８の速度は１０６．２５ＭＨｚダブル・データ・レートまたはＤＤＲ９ビット幅（８ビットデータ（８ｂ）＋１制御ビット）である。各ＦＣクロック信号２２０、２２２、２２４、および２２６は互いにプレシオシンクロナス（ｐｌｅｓｉｏｓｙｎｃｈｒｏｎｏｕｓ）（ほぼ同期）である。
【００４２】
ＳｅｒＤｅｓ入力インターフェイス３００１は、２ＧＦＣでは１０６．２５ＭＨｚまたは１ＧＦＣ  ＤＤＲバスでは５３．１２５ＭＨｚである前記９ビット幅データストリーム２２８を、１８ビット幅１０６．２５ＭＨｚまたは５３．１２５ＭＨｚのシングル・データ・レート（ＳＤＲ）のデータストリーム３００２に拡大し、ＦＩＦＯ書き込みコントローラ３３６に伝送する。ＦＩＦＯ書き込みコントローラ３３６は、前記１８ビットＳＤＲデータストリーム３００２のＦＣアイドルおよびＦＣレシーバレディ信号をモニタする。ＦＣアイドルおよびＦＣレシーバレディ信号がバイパス・バッファ・モードにより設定されたものでない限り、ＦＩＦＯ書き込みコントローラ３３６はＦＣアイドルおよびＦＣレシーバレディ信号を取り除く。ＦＣアイドルおよびＦＣレシーバレディ信号は、ＦＩＦＯ回路３５４への書き込みイネーブル信号３３３をオフにすることによって取り除かれる。前記ＦＣアイドルのオーダーセットは、ＡＮＳＩ  Ｘ３．２３０  ＦＣ−１に定義されているように、Ｋ２８．５に続いてＤ２１．４、続いてＤ２１．５、続いてＤ２１．５、続いてＤ２１．５として表される。前記ＦＣレシーバレディ信号のオーダーセットは、ＡＮＳＩ  Ｘ３．２３０  ＦＣ−１に定義されているように、Ｋ２８．５に続いてＤ２１．４、続いてＤ１０．２、続いてＤ１０．２として表される。ＦＩＦＯ書き込みコントローラ３３６はそのデータストリームにアイドル開始フラグを挿入し、遠位端のエグレスＦＰＧＡはそれを用いてＦＣアイドルを挿入する場所を決定する。その１８ビット・データストリーム上の第９ビット以下の制御ビットはアイドル開始フラグとして用いられる。ＡＮＳＩ  Ｘ３．２３０  ＦＣ−１によると制御文字は上位バイトでのみ有効であるため、このビットは通常、常にゼロに等しい。よって、それをアイドル開始フラグとして用いることができる。前記ＦＩＦＯ書き込みコントローラ３３６は１０６．２５ＭＨｚのクロック信号３３２およびデータストリーム３３０をファーストイン／ファーストアウトバッファ（ｆｉｒｓｔ−ｉｎ／ｆｉｒｓｔ−ｏｕｔ  ｂｕｆｆｅｒ：ＦＩＦＯ）３５４に伝送する。前記ＦＩＦＯ書き込みコントローラ３３６はフロー制御およびステータス・データストリーム３００５をローカルのエグレスＦＰＧＡ６００に伝送する。前記の好ましい実施形態において、前記フロー制御およびステータス・データストリーム３００５は、参照として組み込まれるＡＮＳＩ  ＩＮＣＩＴＳ  ３７３−２００３ファイバーチャネル標準規格に定義されているように以下の４つの信号を含む。  
−ローカル信号損失：イングレスに入信する信号の損失
−コンスタント・ローカル・イングレスＮＯＳ：（非可動シーケンス）、光ファイバーチャネル・リンク接続前に送信されたメッセージ
−ローカルＦＣレシーバレディ信号受信
−ローカル・イングレス・リンク・リセット・プリミティブ信号受信
前記の好ましい実施形態では、前記フロー制御およびステータス・データストリーム３００５は以下の信号も含む。
【００４３】
−ローカルパケット受信：イングレス側がフレームを受信したことを示す
−ローカルイングレス同期不良：ＳＥＲ／ＤＥＳによるＳＡＮからの信号エラー
−ローカル・イングレス・レート：１ギガまたは２ギガのファイバー標準規格入力を特定
−ローカル・エグレス・レート：１ギガまたは２ギガのファイバー標準規格出力を特定
−インクリメント・ローカル・イングレス受信ブロックカウンター：遠位端に送信されたバイト数
−自動検出ローカル・クライアント・バッファ・ツー・バッファ・クレジット：ローカルＳＡＮで利用可能なバッファ
前記フロー制御およびステータス・データストリーム３００５は、図１０の信号１０１４および１０６４と相似である。
【００４４】
クロックデバイダ３２０は、６２２．０８ＭＨｚクロック信号２６２であるＦＥＣクロックを１５５．５２ＭＨｚクロック信号２６３に変換してＦＩＦＯ３５４に送信する。
【００４５】
好ましくは、ＦＩＦＯ３５４は１０２４ｘ１８（１８ビット幅、奥行き１０２４）のデュアルポートでありデュアルクロックドメインのＦＩＦＯである。ＦＩＦＯ３５４は、複数の比較的低速のデータストリームを同期して単一の高速データストリームにする役割を果たす。ＦＩＦＯ３５４はアラインされた高速データ信号３３４をマルチプレクサ（ｍｕｘ）３７０に向けて出力する。アラインされた高速データ信号３３４は、クロックデバイダ回路３２０の出力クロック速度信号２６３を介して、より高速のラインクロック速度信号２６３に同期される。前記ＦＩＦＯ３５４は、１０６．２５ＭＨｚまたは１．９１２５メガビット／秒で、最大速度である１８ビットで書き込まれる。前記ＦＩＦＯ３５４は、１５５．５２ＭＨｚまたは２．２３９４８８メガビット／秒の８０％で、最大速度である１８ビットで読み込まれる。少なくとも５クロック毎に前記ＦＩＦＯの読み込みがスキップされるため、バレルｍｕｘ９１０は２０ビットデータ３７８を１６ビットデータ３８６に変換することができる。場合によっては、ＦＩＦＯのアンダーフローを防ぎイングレスタイミングを調整するために、より多くのＦＩＦＯ読み込みがスキップされる。
【００４６】
速度整合コントローラ３５６は、フロー制御／ステータスワードをフレーム間に追加してイングレス回路のタイミングを調整するために必要なプロセスを用意する。速度整合コントローラ３５６はタイミング調整に必要な制御／ステータスワードの数を計算し、算出された制御／ステータスワード数をｍｕｘ３７０に伝送する。また、制御信号３８４を介して出力信号を適正にアラインするために必要なバレルｍｕｘ９１０の前進も計算する。速度整合コントローラ３５６は、ＦＩＦＯの奥行きが最小閾値未満になったことがＦＩＦＯ奥行きステータス信号３６０によって示された場合に、制御／ステータスワードを追加する。好ましい最小閾値は、ＦＩＦＯ総奥行きの５０％または（１０２４ｘ０．２５＝５１２）である。速度整合ングコントローラ３５６は、ｍｕｘ選択信号３７４を介してフロー制御／ステータス・データストリーム３７８をフロー制御／ステータス・データストリーム３６１から選択することによって、フロー制御／ステータスワードを追加する。ｍｕｘ選択信号３７４はＦＩＦＯ回路３５４の読み込みも制御する。
【００４７】
また、エグレスＦＰＧＡ６００はフロー制御／ステータス・データストリーム３００６をフロー制御／ステータスロジック３７２に伝送する。フロー制御／ステータスロジック３７２はフロー制御／ステータス・データストリーム３６１をｍｕｘ３７０に伝送する。ｍｕｘ３７０は、追加アイドルコントローラ３５６が伝送したｍｕｘ選択信号３７４に依存し、１８ビットデータ信号３３４足す２制御ビットまたは１８ビットデータ信号３６１足す２制御ビットを通過し、２０ビットデータ信号３７８を介してバレルｍｕｘ９１０へ入る。余分な２つの制御ビットは、遠位端６００のエグレスＦＰＧＡの２０ビットアライナ６０８（図６に図示）がデータストリームをアラインするために使用する。
【００４８】
パイプライン・バレル・ローラーｍｕｘ９１０を図８に示す。パイプライン・バレル・ローラーｍｕｘ９１０を用い、前記２０ビット・データストリーム３７８を１６ビット・データストリーム３８６に変換する。パイプライン・バレル・ローラーｍｕｘ９１０に、１５５．５２ＭＨｚで２０ビット幅である組み合わせワード信号３７８が入る。信号３７８は、図の省略記号が示すように２０ビット幅のレジスタ９０５に入る。また、信号３７８は分路してパイプライン・バレル・ローラーｍｕｘ３８２にも入力する。レジスタ９０５が信号３７８を１刻遅延させる結果、遅延信号３７９が生成される。パイプライン・バレル・ローラー３８２は、スタッフコントローラ３５６からのオフセット信号３８４に従いレジスタ９０５からのデータを４ビットのインクリメントで０から２０ビット時間的にシフトすることを可能にする。いったんシフトされたデータは、ｍｕｘ３８２を通してリリースされる。たとえば、オフセット信号３８４が０であれば、前記データは４ビットシフトされ、ｍｕｘ３８２は信号３７８の１９ビット〜４ビットを信号３８６へ通過させる。オフセット信号３８４が１に設定されていれば、前記データは８ビットシフトされる。するとｍｕｘ３８２は、レジスタ９０５からのビット３〜０と信号３７８のビット１９〜８を信号３８６にリリースする。前記オフセット信号３８４が２に設定されていれば、前記データは１２ビットシフトされる。するとｍｕｘ３８２はレジスタ９０５からのビット７〜０と信号３７８のビット１９〜１２を信号３８６にリリースする。オフセット信号３８４が３に設定されていれば、前記データは１６ビットシフトされる。するとｍｕｘ３８２は、レジスタ９０５からのビット１１〜０と信号３７８のビット１９〜１６を信号３８６にリリースする。オフセット信号３８４が４に設定されていれば、シフトは起きない。レジスタ９０５からのデータビット１５〜０はシフトされずに信号３８６に届く。
【００４９】
図３を再び参照すると、スタッフィング後の信号３８６は１６ビットｘ１５５．５２ＭＨｚの信号であり、パイプライン・バレル・ローラーｍｕｘ９１０からシリアライザ３８８に伝送される。第２の信号群２２２、２３０、２３８、第３の信号群２２４、２３２、２４０、第４の信号群２２６、２３４、２４２は、パラレル且つ複製のデバイスセット（省略記号で図示）を通って相似パス沿いに進み、第１の信号群から生成された信号３８６と相似の信号を実現する。第２の信号群は信号３９０を生成する。第３の信号群は信号３９２を生成する。第４の信号群は信号３９４を生成する。信号３８６および信号３９０、３９２、３９４はシリアライザ３８８に伝送される。シリアライザ３８８は１６ｘ１５５．５２ＭＨｚの信号３８６、３９０、３９２、および３９４を４つの４ｘ６２２．０８ＭＨｚ信号にシリアル化し１６ｘ６２２．０８ＭＨｚの複合信号３９６を生成する。必要なときおよび必要な場合に、フロー制御／ステータスワードを追加することによって、速度整合コントローラ３５６は全てのデータストリームが共通のクロック速度で出力されるよう確実に制御する。複合信号３９６は図２では複合信号２４６として示され、１６ビットｘ６２２．０８ＭＨｚの信号として図２のＦＥＣ２４８に伝送される。
【００５０】
図２のＦＥＣ２４８をＦＥＣ８００として図７に示し、図７を参照してその機能について説明する。ＦＥＣ８００は複合信号２４６の各出力データストリームを４つのＦＥＣレーン８０２、８０４、８０６、および８０８のうちの１つに割り当てて伝送する。ＦＥＣ８００は６２２．０８ＭＨｚのクロック速度で実行中の１６ビットＳＦＩ−４インターフェイスを有し、イングレスＦＰＧＡ２４４の出力に整合する。ＦＥＣ８００のポート８４２〜８７２は１６の独立シリアル・データポートとして動作する。４つのＦＥＣレーン８０２、８０４、８０６、および８０８をＧＢＥまたはＦＣストリーム２４６に割り当てることで、伝送チャネルの任意の組み合わせに任意のフォーマットデータをマップすることができ、チャネル識別のための制御コードを組み込むことなくシリアル通信が実現される。ＦＥＣ８００が複合信号２４６にそのデータをカプセル化し、２５％のオーバーヘッドエラー訂正コードを提供する信号８７４〜９０４にそれをマッピングすることにより、９ｄＢを超えるコーディングゲインが提供される。ＦＥＣ８００は信号２６２を受信し、ライン側オシレータ９０８を通してそれを信号２６３として再生し、ＳｅｒＤｅｓ２５４へ伝送する。本発明の動作において用いるために複数のクロック速度を特定し得ることを理解する必要があるが、前記の好ましい実施形態では２５％の比率を要求するクロック速度を維持する必要がある。たとえば、複合信号２４６のクロック速度は最高８２５ＭＨｚまで可能であり、信号２６２のクロック速度は最高６５０ＭＨｚまで可能である。システム要件によっては、オーバーヘッド比率が最高２５％までの複数のＦＥＣアルゴリズムを用いることができる。
【００５１】
図５は、図１のエグレスブロック１４０の好ましい実施形態をより詳細に示すブロック図である。図５においては、図１のエグレスブロック１４０を５００として示す。入力信号５４８は、その統合伝送速度で１ビット幅、１２．４４ギガビット／秒の光信号である。ＳｅｒＤｅｓ５４２はクロック速度７７７．６ＭＨｚで複合信号５４８を１６ビットのＦＥＣエンコードデータ信号５５０に非シリアル化し、非シリアル化された信号５５０をＦＥＣ５０２に伝送する。ＳｅｒＤｅｓ５４２は７７７．６ＭＨｚの速度であるクロック信号５４５も回復し、ＦＥＣ５０２に伝送する。ＦＥＣ５０２は非シリアル化された信号５５０に対するエラー訂正を実行し、複合データ信号５４４および複合６２２．０８ＭＨｚクロック信号５４６を回復する。複合クロック信号５４６はイングレスブロックの６２２．０８ＭＨｚのクロック速度であり、１６データビット幅である。複合データ信号５４４および複合クロック信号５４６は相互に同期し、データストリームおよびタイミング抽出のためにエグレスＦＰＧＡ５０４に伝送される。
【００５２】
図９を参照し、ＦＥＣ５０２の構造および機能を説明する。ＦＥＣ５０２は、複合信号５５０のデータストリームの各出力をデコーディングのためにＦＥＣレーン１００２、１００４、１００６、および１００８のうちの１つに割り当てる。ＦＥＣ５０２は、ＳｅｒＤｅｓ５４２の出力に整合する、クロック速度６２２．０８ＭＨｚで実行中の１６ビットＳＦＩ４インターフェイスを有する。ＦＥＣ５０２のポート１００２、１００４、１００６および１００８は、各々が４つのポートに変換されるポート１００２、１００４、１００６、および１００８を有する１６の独立シリアル・データポート１０１０〜１０４０として動作する。ＦＥＣ５０２のこの１６の独立シリアルポート１０１０〜１０４０は、複合信号５５０に含まれるカプセル化されたデータからエラー訂正を取り去り、信号１０７４〜１１０４にマッピングし、２５％のオーバーヘッドエラー訂正コードを抽出することにより、９デシベルのコーディングゲインを得る。ＦＥＣ５０２は７７７．６ＭＨｚのクロック信号５４５を受信し、それをオシレータ１１０８に通すことによって６２２．０８ＭＨｚのクロック信号５４６を再生する。
【００５３】
図５を再び参照すると、エグレスＦＰＧＡ５０４は前記信号を再クロックし、４つの同期ＧＦＣ／２ＧＦＣチャネル５０６、５０８、５１０、５１２を、ＧＦＣ／２ＧＦＣのための１０ビット幅（１０ｂ）、１０６．２５ＭＨｚのデータクロック信号としてＳｅｒＤｅｓ５２２に伝送する。
【００５４】
ＳｅｒＤｅｓ５２２は、各々が１０６．２５ＭＨｚである同期ＧＦＣ／２ＧＦＣチャネル５０６、５０８、５１０、および５１２をシリアル化し、ＧＦＣでは１ビット幅で１．０６２５ＧＨｚ、２ＧＦＣでは１ビット幅で２．１２５ＧＨｚであり、４つの入力同期データストリーム１０５、１１０、１１５、１２０（図１）として同一のデータを含む４つの同期ＧＦＣ／２ＧＦＣデータストリーム５２４、５２６、５２８、および５３０をＳＦＰ５３２に伝送する。ＳＦＰ５３２はこれら電気的に同期であるＧＢＥまたはＦＣデータストリーム５２４、５２６、５２８、および５３０を、光学的に同期であるＧＦＣ／２ＧＦＣデータストリーム５３４、５３６、５３８、および５４０として変換および出力する。
【００５５】
上述のように、エグレスＦＰＧＡ５０４はメモリ５９１〜５９４への書き込みおよび当該メモリらからの読み込みを行う。前記の好ましい実施形態において、前記メモリは図１の４つのイングレス・データ・チャネル１０５、１１０、１１５、および１２０のための４つのセグメント５９１〜５９４に分割され、図１のエグレスブロック５０４から１４６、１５０、１５５、１６０（図５では５３４、５３６、５３８、および５４０）として出力する。前記エグレスＦＰＧＡ５０４は信号５８１、５８２、５８３、および５８４を介してメモリの４つのチャネルに書き込む。前記エグレスＦＰＧＡ５０４は前記４つのチャネル１〜４から、信号５８５〜５８８を介して読み込む。前記チャネルのうちの１つのデータフローについて説明するが、前記データフローは全チャネルについて同一である。
【００５６】
図６は、エグレスＦＰＧＡ５０４の好ましい実施形態をより詳細に示すブロック図である。図６において、ＦＰＧＡ５０４は６００として示される。デシリアライザ６０２は４ｘ６２２．０８ＭＨｚの信号からの複合信号５４４を１６ｘ１５５．５２ＭＨｚの信号６０６に非シリアル化する。非シリアル化された信号６０６は、デシリアライザ６０２から２０ビットのアライナ回路６０８に伝送される。複合クロック信号５４６は６２２．０８ＭＨｚで実行し、クロックマネージャ６０３に接続され、そこで１５５．５２ＭＨｚのクロック信号６０４に変換される。クロック信号６０４は、デシリアライザ６０２、２０ビットアライナ回路６０８、フロー制御／ステータス・フィルタ・コントローラ６００１、バッファ書き込みコントローラ６０１０、バッファ読み込みコントローラ、バッファ・アドレス・コントローラ６０２０、ＦＩＦＯ書き込みコントロールロジック６０３０、およびＦＩＦＯ６１２の書き込みクロックに接続される。
【００５７】
図４は、前記２０ビットアライナ回路６０８の好ましい実施形態をより詳細に示すブロック図である。前記２０ビットアライナ回路６０８は、１６ビットデータ６０６を２０ビットデータ６００２に変換するために使用される。クロック信号６０４はレジスタ４０５、４０００、および４０１０に配信される。クロック信号は、前記レジスタ４０５、４０００および４０１０によって、それぞれの入力信号を遅延させるためのレファレンスとして使用される。信号６０６は２０ビットアライナ回路６０８に入る。この信号は１５５．５２ＭＨｚで１６ビット幅である。信号６０６はアライメントパターン比較４１５の入力にも分路される。レジスタ４０５は信号６０６を一刻分遅延させ、遅延信号４１０を生成する。信号４１０もアライメントパターン比較４１５の入力に分路される。レジスタ４０００は信号４１０を一刻分遅延させ、遅延信号４００１を生成する。信号４００１も前記アライメントパターン比較４１５の入力に分路される。レジスタ４０１０は信号４００１を一刻分遅延させ、遅延信号４０１１を生成する。信号４０１１も前記アライメントパターン比較４１５の入力に分路される。前記の２０ビットアライナ回路６０８は、４００１と４０１０が組み合わされた３２ビットデータストリームをｍｕｘ４２５によって多重化して単一の２０ビットデータストリーム６００２にすることができる。たとえば、アライメントパターン０ｘＦＦＥが信号４０１１のデータビット３〜０、信号４００１のデータビット１５〜８、信号４１０のデータビット１５〜４、および信号６０６のデータビット１１〜０で同時に検出されると、オフセット信号４２０がリセットされる。前記オフセット信号４２０が０と等しいと、信号４１１の１５〜０および４００１の１５〜１２が信号６００２に伝送される。前記オフセット信号４２０が１と等しいと、信号４１１の１１〜０および４００１の１５〜８が信号６００２に伝送される。前記オフセット信号４２０が２と等しいと、信号４１１の７〜０および４００１の１５〜４が信号６００２に伝送される。前記オフセット信号４２０が３と等しいと、信号４１１の３〜０および４００１の１５〜０が信号６００２に伝送される。前記オフセット信号４２０が４と等しいと、一定のフィラー値が信号６００２に送信され、データ有効信号６００４が非アクティブに設定される。
【００５８】
前記オフセット信号４２０は、上述のリセット条件の間を除き、毎クロック後にインクリメントする。前記オフセット信号４２０が４未満であると、前記データ有効信号６００４はアクティブに設定される。前記２０ビットデータアライナ６０８はデータ有効信号６００４をフロー制御／ステータス・フィルタ・ロジック６００１に伝送する。
【００５９】
図６を再び参照すると、前記フロー制御／ステータス・フィルタ・ロジック６００１はアラインされたデータストリーム６００２からの遠位端フロー制御および遠位端ステータスをフィルタし、信号６００３を介して追加ＦＣアイドル／ＦＣレシーバ・レディ・ロジック６２４に伝送する。前記アラインされたデータストリーム６００２の第２０ビットが１と等しいということは、前記アラインされたデータストリーム６００２の現在値が遠位端フロー制御情報または遠位端ステータス情報であることを意味する。前記フロー制御／ステータスロジック６００１は、バッファ書き込み制御ロジック６０１０およびＦＩＦＯ書き込み制御ロジック６０３０へ送信されるデータ有効信号６００５をオフにすることによって、前記遠位端フロー制御および遠位端ステータスへフィルタする。前記フロー制御／ステータスロジック６００１は、図３のイングレスＦＰＧＡ  ＦＩＦＯ書き込み制御ロジック３３６で挿入された２つの余分なアライメントビットを取り除き、そのバッファ・データストリーム６０１１を前記バッファ書き込み制御ロジック６０１０およびＦＩＦＯ書き込み制御ロジック６０３０へ伝送する。
【００６０】
前記バッファ書き込み制御ロジック６０１０は書き込みアドレス６０１４を計算し、それをバッファアドレス制御６０５０およびバッファ読み込み制御６０２０へ伝送する。前記書き込みアドレスはゼロで始まり、毎書き込み後に１ずつインクリメントする。前記バッファ書き込み制御ロジック６０１０は、１８ビット幅でＳＤＲ１５５．５２ＭＨｚの入信データストリーム６０１１を、９ビット幅でＤＤＲ１５５．５２ＭＨｚのデータストリーム６０１２に変換する。前記バッファ書き込み制御ロジック６０１０は、前記データストリーム６０１２を外部バッファメモリ６０６０に伝送する。前記入信データ有効信号６００５は、バッファ書き込み制御信号６０１３として前記外部バッファメモリ６０６０に伝送される。前記バッファ書き込み制御ロジック６０１０は、入信データストリーム６０１１の第９ビットをモニタすることによって前記バッファメモリ６０６０に書き込まれたアイドル開始フラグを検出し、アイドル開始フラグ信号６０１５の入信をバッファ読み込み制御ロジック６０２０に伝送する。前記入信データ６０１１の第９ビットは１に設定され、アクティブなデータ有効信号はアイドル開始の入信の存在を示す。前記バッファ書き込み制御ロジック６０１０はバッファクロック信号６０１６を前記外部バッファメモリ６０６０に伝送する。
【００６１】
前記バッファ読み込み制御ロジック６０２０は読み込みアドレス６０２３を計算し、それをバッファアドレス制御ロジック６０５０に伝送する。前記読み込みアドレスはゼロで開始し、毎読み込み後に１ずつインクリメントする。前記バッファ読み込みロジック６０２０は９ビット幅で１５５．５２ＭＨｚのＤＤＲ入信データストリーム６０２１を１８ビット幅で１５５．５２ＭＨｚのＳＤＲ送信データストリーム６０３１に変換する。データストリーム６０３１はＦＩＦＯ書き込み制御ロジック６０３０に伝送される。前記バッファ読み込み制御ロジックは、速度調整ロジック６０３０へのデータ有効信号６０３５を生成する。前記バッファ読み込み制御ロジック６０２０は、利用可能なバッファクレジット、バッファ奥行き、およびバッファメモリ６０６０にある現在のアイドル開始フラグ数をモニタすることによってバッファ読み込みを制御する。最初に利用可能なバッファ・ツー・バッファ・クレジットは、追加ＦＣアイドル／レシーバ・レディ・ロジック６２４からのバッファクレジット信号６０２６を介して受信される。ＦＣによるフレーム順序セットの開始が読み込まれ、そのデータストリーム６０２１の前記バッファメモリ６０６０が検出される度に、アウトスタンディング・バッファクレジット・カウントが１ずつインクリメントする。ＦＣによるフレーム順序セットの開始は、Ｋ２８．５、続いてＤ２１．５、続いてＡＮＳＩ  Ｘ３．２３０  ＦＣ−１に定義されるように等級に依存するさらに２つのバイトによって表される。ローカルＦＣレシーバレディ信号が、追加ＦＣアイドル／レシーバ・レディ・ロジック６２４からローカルＦＣレシーバレディ信号６０２５を介して検出される度に、その利用可能なバッファ・ツー・バッファ・クレジットはデクリメントする。現在のバッファ・ツー・バッファのアウトスタンディングクレジットがその利用可能なクレジットより大きいと、バッファ読み込みの開始は無効化される。前記の好ましい実施形態では、利用可能なバッファ・ツー・バッファ・クレジットが少なくとも１ある場合に一連のバッファ読み込みを開始する条件が２つある。第１は、算出されるバッファ奥行きが１０２４より大きいことである。第２は、前記のバッファメモリ６０６０にある現在のアイドル開始フラグ数がゼロより大きいことである。前記バッファ奥行きは、現在の書き込みアドレスと読み込みアドレスを比較することによって算出される。現在のアイドル開始フラグカウンタは、前記バッファ書き込み制御ロジック６０１０から入信されるアイドル開始フラグ信号６０１５が設定されると１ずつインクリメントする。外部バッファメモリ６０６０からアイドル開始フラグが読み出され、前記のデータストリーム６０２１上で検出される度に、現在のアイドル開始フラグカウンタは１ずつデクリメントする。いったん開始した一連のバッファ読み込みは、３事象のうちの１つが生じるまで継続する。ＦＩＦＯ６１２からのＦＩＦＯ奥行きデータストリーム６０３４信号によって前記ＦＩＦＯが満了であることが示されるか、バッファメモリ６０６０からアイドル開始フラグが読み出されるか、または前記バッファ奥行きがゼロに等しいことである。前記バッファ読み込み制御ロジ��ク６０２０は、前記のバッファ読み込みイネーブル信号６０２４を介してバッファメモリ読み込みを有効化する。前記バッファ読み込み制御ロジック６０２０は、その読み込みバッファ・データストリーム６０３１および読み込みバッファデータ有効信号６０３５を前記のＦＩＦＯ書き込み制御ロジック６０３０に伝送する。
【００６２】
前記のバッファ・アドレス・ロジック６０５０は前記のバッファ書き込みロジック６０１０から書き込みアドレスストリーム６０１４を調達する。前記バッファ・アドレス・ロジック６０５０は前記バッファ読み込みロジック６０２０から読み込みアドレスストリーム６０２３を調達する。前記バッファ・アドレス・ロジック６０５０は、入信される２つの２２ビット幅、１５５．５２ＭＨｚのＳＤＲアドレスバスを、単一の２２ビット幅、１５５．５２ＭＨｚのＤＤＲアドレスバス６０５１に変換する。前記バッファ・アドレス・ロジック６０５０は、この組み合わされたバッファアドレス信号６０５１を外部バッファメモリ６０６０に伝送する。前記の好ましい実施形態において、前記外部バッファメモリ６０６０はバッファクロック信号６０１６の上昇端を用いてそのバッファ読み込みアドレスをクロックインし、前記外部バッファメモリ６０６０は前記バッファクロック信号６０１６の下降端を用いてそのバッファ書き込みアドレスをクロックインする。
【００６３】
前記のＦＩＦＯ書き込み制御ロジック６０３０は、バッファされていないデータストリーム６０１１とその付随するデータ有効信号６００５、およびバッファされたデータストリーム６０３１とその付随するデータ有効信号６０３５の間から選択したものを、送信データストリーム６０３２および書き込みイネーブル信号６０３３を介してＦＩＦＯ６１２に伝送する。前記のバッファされていないデータストリームとその付随するデータ有効信号６００５は、バイパス・バッファ・モードでＦＩＦＯ６１２に伝送される。前記のバッファされたデータストリーム６０３１とその付随するデータ有効信号６０３５は、通常動作でＦＩＦＯ６１２へ伝送される。前記ＦＩＦＯ書き込みロジック６０３０はプリミティブシーケンスを認識する。前記の好ましい実施形態では、前記ＦＩＦＯ書き込み制御ロジック６０３０は、奥行き１０２４、１８ビット幅のＦＩＦＯ６１２の奥行きが９０％より多く満了であればプリミティブシーケンスの個別のプリミティブを除去する。ＦＩＦＯ奥行き信号６０３４はＦＩＦＯ６１２から調達される。前記ＦＩＦＯ書き込み制御ロジック６０３０は、１８ビットのバッファされたデータストリーム６０３２の第９ビットまたはそれ未満の制御ビット上のアイドル開始フラグを検出し、アイドル開始信号６０４５を介して前記の追加ＦＣアイドル／ＦＣレシーバ・レディ・ロジック６２４に伝送する。
【００６４】
好ましくは、ＦＩＦＯ６１２は奥行き１０２４、１８ビット幅のデュアルポート、デュアルクロックのドメインＦＩＦＯである。ＦＩＦＯ６１２はアラインされた遅い読み込みデータ信号６３８をマルチプレクサ（ｍｕｘ）６３４へ送出する。アラインされた遅い読み込みデータ信号６３８は、より遅い速度１０６．２５ＭＨｚのラインクロック信号６８０と同期される。ＦＩＦＯ６１２書き込み動作は前記の１５５．５２ＭＨｚのクロック６０４と同期される。その読み込み動作は前記書き込み動作より遅いので、ＦＩＦＯのオーバーフローを防ぐための方法が必要である。前記のＦＩＦＯ書き込み制御ロジック６０３０は、ＦＩＦＯ６１２の充填が始まると、プリミティブシーケンスの個別プリミティブを削除することによって前記ＦＩＦＯ６１２のオーバーフローを防ぐ。これは、ＡＮＳＩ  ＩＮＣＩＴＳ  ３７３−２００３  ７．３項に記載されているＦＣリンク回復プロセス中またはそのバイパス・バッファ・モードがアクティブであるときに必要となる場合がある。前記の好ましい実施形態では、前記のバッファ読み込み制御ロジック６０２０はバッファ読み込みを停止することによってＦＩＦＯ６１２のオーバーフローを防ぐので、ＦＩＦＯ６１２の奥行きが９０％より多く満たされるとＦＩＦＯ書き込みを停止する。
【００６５】
前記の追加ＦＣアイドル／ＦＣレシーバ・レディ・ロジック６２４は、そのＦＩＦＯ読み込み信号６０４４を前記ＦＩＦＯ６１２に伝送してＦＩＦＯ読み込みを制御する。前記ＦＩＦＯ読み込みの制御は、信号６０３４を介してモニタする前記ＦＩＦＯ６１２の奥行き、前記のＦＩＦＯ書き込み制御６０３０から入信されるアイドル開始信号６０４５、前記の１８ビットのＦＩＦＯデータストリーム６３８の第９ビットまたはそれ未満の制御ビットを介してＦＩＦＯ６１２から送信されるアイドル開始信号、現在のクライアントで利用可能なバッファ・ツー・バッファ・クレジット、および現在の遠位端で利用可能なバッファカウントをモニタすることによって行われる。前記の好ましい実施形態において、一連のＦＩＦＯ読み込みを開始する条件は２つある。第１は、ＦＩＦＯ６１２が８５％より多く充填されていることが、前記のＦＩＦＯ奥行きステータス信号６０３４によって示されることである。第２は、前記ＦＩＦＯ６１２に入っている現在のアイドル開始フラグ数がゼロより大きいことである。前記現在のアイドル開始フラグカウンタは、前記のＦＩＦＯ書き込み制御ロジック６０３０から入信されるアイドル開始フラグ信号６０４５が設定されると、１ずつインクリメントする。アイドル開始フラグがＦＩＦＯから読み出され、そのデータストリーム６３８で検出される度に、前記現在のアイドル開始フラグカウンタは１ずつデクリメントする。いったん始まった一連のＦＩＦＯ読み込みは、そのＦＩＦＯデータストリーム６３８で前記ＦＩＦＯ６１２からアイドル開始フラグが読み出されるまで継続する。ＦＩＦＯ６１２の読み込み中、前記追加ＦＣアイドル／ＦＣレシーバ・レディ・ロジック６２４は前記ＦＩＦＯデータストリーム６３８を選択し、ｍｕｘ６２４を通してデータストリーム６０４１へ流す。前記ＦＩＦＯ６１２の読み込みが行われていない間、前記追加ＦＣアイドル／ＦＣレシーバ・レディ・ロジック６２４は前記データストリーム６０４１へのＦＣアイドルパターン６０４２を選択する。前記ＦＣアイドルパターン６０４２を現在選択中に、現在保留中の送信レシーバレディ信号がゼロより多くあり、遠位端で利用可能となる予測バッファスペースが図２のローカル・イングレス・データストリーム２０２に必要な潜在バッファスペースより大きい場合は、前記追加ＦＣアイドル／ＦＣレシーバ・レディ・ロジック６２４はｍｕｘ６３４を通してＦＣレシーバ・レディ・パターン６０４３を選択する。前記追加ＦＣアイドル／ＦＣレシーバ・レディ・ロジック６２４は、ｍｕｘが選択した信号６２５を伝送し、ｍｕｘ６３４の出力を制御する。現在保留中レシーバ・レディ・カウントは、ローカル・イングレスで受信されたパケットフラグが前記のイングレスＦＰＧＡ３００からのフロー制御／ステータス・データストリーム３００５を介して設定されると、１ずつインクリメントする。前記現在保留中レシーバ・レディ・カウントは、前記追加ＦＣアイドル／ＦＣレシーバ・レディ・ロジック６２４がｍｕｘ６３４を通して前記ＦＣレシーバ・レディ・パターン６０４３を選択する度に１ずつデクリメントする。前記の遠位端で利用可能なバッファスペースについては、図１０で、フロー制御についての説明と共に説明する。図２のローカル・イングレス・データストリーム２０２に必要な最大バッファスペースは、次のアルゴリズムによって算出される：必要な最大バッファバイト＝バイト単位での最大パケット長＊遠位端バッファ・ツー・バッファ・クレジット。前記追加ＦＣアイドル／ＦＣレシーバ・レディ・ロジックは、そのローカル・レシーバ・レディ信号６０２５および自動検出されたバッファ・ツー・バッファ・クレジット信号６０２６を前記のバッファ読み込み制御ロジック６０２０に伝送する。前記追加ＦＣアイドル／ＦＣレシーバ・レディ・ロジック６２４は、データストリーム３００６を介してフロー制御およびステータス・データストリームをイングレスＦＰＧＡ３００に伝送し、それらがその遠位端のエグレスＦＰＧＡに伝送されるようにする。前記の好ましい実施形態では、前記フロー制御およびステータス・データストリームは以下の信号から成る。ローカル信号損失、定数ローカルイングレスＮＯＳ、ローカルイングレス同期不良、ローカルイングレス速度、ＦＬＯＷ＿ＣＯＮＴＲＯＬ．ＢｕｆｆｅｒＳｉｚｅまたはバイト単位のローカル・エグレス・バッファーサイズ、ＦＬＯＷ＿ＣＯＮＴＲＯＬ．ＢＢ＿Ｃｒｅｄｉｔまたは自動検出ローカルクライアント・バッファ・ツー・バッファクレジット、およびＦＬＯＷ＿ＣＯＮＴＲＯＬ．Ｔｒａｎｓｍｉｔｔｅｄまたはローカル・エグレス・クライアントに伝送されたエグレスブロック総数。好ましくは、１ブロックを４３２０バイトまたは（２ｘ（最大ＦＣフレームサイズ＋１２バイトの内部オーバーヘッド））と定める。前記のフロー制御およびステータス・データストリーム３００６は図１０の信号１０１６および１０６２と相似である。
【００６６】
前記ｍｕｘ回路６３４は、前記の追加ＦＣアイドル／ＦＣレシーバ・レディ・ロジック６２４から調達した選択制御信号６２５の値に基づきＦＩＦＯ６１２からの１８ビット出力データストリーム６３８またはそのＦＣアイドルパターン６０４２またはそのＦＣレシーバ・レディ出力信号６０４３を通す。前記ｍｕｘ回路６３４は、その結果得られる多重データストリーム６０４１を外部ＳｅｒＤｅｓ出力インターフェイスロジック６０４０に伝送する。
【００６７】
前記ＳｅｒＤｅｓインターフェイスロジックは、１８ビット幅、１０６．２５ＭＨｚのＳＤＲデータストリーム６０４１を、２Ｇ  ＦＣでは９ビット幅、１０６．２５ＭＨｚのＤＤＲに、１Ｇ  ＦＣデータストリーム６４０では９ビット幅、１０６．２５ＭＨｚのＳＤＲに変換する。前記データストリーム６４０は信号５０６と相似であり、ＳｅｒＤｅｓ５２２（図５）に送信される。
【００６８】
信号５４４について説明した構成要素の構造および機能は、信号５４５、５４７、５４８についても同じであり、これら信号は信号１２００、１２０２、１２０４となり、省略記号が示すようにＳｅｒＤｅｓ５２２に送信される。信号１２００、１２０２、および１２０４は信号５０７、５０８、および５０９（図５）と相似である。
【００６９】
信号５４４について説明した構成要素の構造および機能は、信号５４５、５４７、５４８についても同じであり、これら信号は信号１２００、１２０２、１２０４、１２０６、１２０８、および１２１０となり、ＳｅｒＤｅｓ５２２に送信される。信号１２００、１２０２、１２０４、１２０６、１２０８、および１２１０は信号５０８〜５１３と相似である。
【００７０】
図１０は、地理的長距離によって分離される２つのストレージ・エリア・ネットワークＳＡＮ  Ａ１００５およびＳＡＮ  Ｚ１０８０を図示する。簡単に説明するために、ＳＡＮ  Ａ１００５からＳＡＮ  Ｚ１０８０への４つの独立した１０ｂエンコードされたＧＦＣ／２ＧＦＣデータストリームのうち１つだけのフロー制御について詳細に説明する。ここで説明する例は、図１の１０５から１４６へのデータパスである。その他のデータストリームのフロー制御も同一である。図１０を再び参照し、データパス１００６、１０１２、１０４２、および１０７２はＡＺ方向のデータフローを表す。データパス１０７４、１０４４、１０２２、および１００８は図の方向のデータフローを表す。以下の説明では、前記ＡＺ方向のフロー制御についてのみ説明する。しかし、このフロー制御を完全に理解するには、ＡＺデータストリームおよびＺＡデータストリームの両方を用いたＡＺフロー制御を示す必要がある。ＺＡフロー制御は、その逆方向においてのみＡＺフロー制御と同一である。
【００７１】
ローカルのイングレスブロック１０１０およびエグレスブロック１０２０は協調機能し、ＳＡＮ  Ａ１００５に伴うＡＺ方向のファイバーチャネル・フロー制御を実行する。前記イングレスブロック１０１０は、ＦＣ  ＡＮＳＩ  Ｘ３Ｔ１１が定義するように、妨害することなくＳＡＮ  Ａ１００５からのＦＣログインをモニタすることにより、ＳＡＮ  Ａ１００５のバッファ・ツー・バッファ・クレジットを決定する。その検出されたバッファ・ツー・バッファ・クレジット値は、信号１０１４を介して前記エグレスブロック１０２０に伝送され、標準ＦＣ方法に従って外部ＦＣフロー制御に用いられる。前記エグレスブロックは、ＳＡＮ  Ａ１００５の利用可能なバッファ・ツー・バッファ・クレジットが０より大きくない限り、フレームを伝送しない。前記の検出されたバッファ・ツー・バッファ・クレジット値は、前記ＺＡ方向のデータフローを制御するために、信号１０１２、伝送システム１０４０、信号１０４２を介してエグレスブロック１０６０にも伝送される。エグレスブロック１０６０は、前記の検出されたバッファ・ツー・バッファ・クレジット値を用い、専有内部フロー制御のためにＳＲＡＭ１０３０の一部を割り当てる。前記エグレスブロック１０６０は、バッファ・ツー・バッファ・クレジットの数を維持するために利用可能なバイトを前記バッファＳＲＡＭ１０３０が十分に持っており、ＳＡＮ  Ｚ１０８０からイングレスブロック１０７０へのＺＡデータフロー１０７４を制御することができない限り、ＦＣレシーバレディを送信しない。起動、リンクＲＥＳＥＴプロトコル、またはその他のアクションによって任意のインターフェイスが再起動した後、前記ファイバーチャネルのイングレスブロック１０１０およびエグレスブロック１０６０は初期化プロシージャを経る。
【００７２】
前記初期化を表２に示す。前記エグレスブロック１０２０はイングレスブロック１０７０を介したエグレスブロック１０６０からのフロー制御メッセージを待機する。エグレスブロック１０６０からエグレスブロック１０２０への初期のフロー制御ステータスメッセージ（ＦＬＯＷ＿ＣＯＮＴＲＯＬ  メッセージと呼ぶ）は、このネットワークの遠位端でＳＲＡＭ１０５０でのストレージに利用可能なバイト単位のバッファスペースを含む。この予測はＦＡＲ＿ＥＮＤ＿ＡＶＡＩＬＡＢＬＥと呼ばれる変数によって定められる。前記ＦＬＯＷ＿ＣＯＮＴＲＯＬ  メッセージは、エグレスブロック１０６０とエグレスブロック１０２０の間でそのＡＺ方向に継続的に送信され（そのＺＡ方向については１０２０から１０６０）、最後に受信されたメッセージが保存される。
【００７３】
【表２】
2008512959.tif 000004
【００７４】
前記エグレスブロック１０６０初期化プロシージャを表３に示す。前記エグレスブロック１０６０は、変数ＦＬＯＷ＿ＣＯＮＴＲＯＬ＿Ｂｕｆｆｅｒ＿ＳｉｚｅとしてＳＲＡＭ１０５０で利用可能なバッファサイズをバイト単位で記録する。さらに、前記イングレスブロック１０７０は、データ１０７４のクライアント・ログイン・コマンドをスヌープすることによって、受信側ＳＡＮ  Ｚ  １０８０で利用可能なバッファクレジット数を検出する。前記クライアント・ログインのスヌープは、フレームヘッダをモニタすることが可能なログインフレームを識別すること、およびＳＡＮ通信に対しＡＮＳＩ  ＩＮＣＩＴＳ  が定めるように一意の値のサービス・パラメータ・ブロックを識別することによって行われる。この値は、信号１０６４を介して前記エグレスブロック１０６０に伝送される。前記エグレスブロックは前記値を変数ＢＢ＿ｃｒｅｄｉｔとして記録する。初期設定では、前記の変数ＦＬＯＷ＿ＣＯＮＴＲＯＬ．Ｔｒａｎｓｍｉｔｔｅｄ＿Ｂｙｔｅｓはゼロに設定される。送信されたフレームもなく、受信された確認もないので、前記ＢＢ＿Ｃｒｅｄｉｔ＿Ｃｏｕｎｔはゼロに設定される。
【００７５】
【表３】
2008512959.tif 000005
【００７６】
表４が示すように、前記エグレスブロック１０２０は遠位端ＳＲＡＭ１０５０のバッファ利用可能性ステータスを、ＳＡＮ  Ａ１００５から受信されたファイバーチャネル・フレームの関数として識別する。端末Ａのイングレスブロック１０１０に入るＳＡＮ  Ａ１００５からのデータ１００６は、信号１０１２、伝送システム１０４０、および信号１０４２を介してエグレスブロック１０６０に伝送される。前記端末Ａのイングレスブロック１０１０は、信号１０１４を介して前記エグレスブロック１０２０に送信されるデータのバイト数を示す。その変数であるＦＡＲ＿ＥＮＤ＿ＡＶＡＩＬＡＢＬＥの数は送信されたデータのバイトの分デクリメントする。
【００７７】
【表４】
2008512959.tif 000006
【００７８】
前記エグレスブロック１０２０は、ＳＲＡＭ１０５０の利用可能性をＳＡＮ  Ｚ１０８０に伝送されるバイト数の関数として更新する。この情報は、表５が示すようにエグレスブロック１０６０からのＦＬＯＷ＿ＣＯＮＴＲＯＬメッセージを介して受信される。エグレスブロック１０６０からのＦＬＯＷ＿ＣＯＮＴＲＯＬメッセージは、信号１０６２を介してイングレスブロック１０７０に到達する。イングレスブロック１０７０は前記ＦＬＯＷ＿ＣＯＮＴＲＯＬメッセージをＺＡデータ１０７４内に挿入し、１０４４を介して伝送システム１０４０に送信する。前記メッセージは信号１０２２を介してエグレスブロック１０２０に到達する。メモリ利用可能性に変更があれば、その変更を用いて、ＳＲＡＭ１０５０で利用可能な追加的バイトの数をインクリメントする。前記ＳＲＡＭ１０５０の利用可能性は、エグレス１０６０に伝送されるバイト数およびエグレス１０６０からＳＡＮ  Ｚ１０８０に伝送されるバイト数に基づいて追跡される。データのオーバーフローを防ぐために遠位端で利用可能な十分なバッファがある限り、前記エグレスブロック１０２０はＳＡＮ  Ａ１００５が信号１００６を介してデータを送信するのを許可する。この方法は、前記遠位端のバッファのオーバーフローを確実に防ぐ。
【００７９】
【表５】
2008512959.tif 000007
【００８０】
ＳＡＮ  Ａ１００５とイングレスブロック１０１０をつなぐインターフェイスはファイバーチャネル標準規格プロトコルによる。エグレスブロック１０２０は、当該システムの遠位端でＳＲＡＭ１０５０に十分なスペースがある限り、信号１００８を介したＳＡＮ  Ａ１００５へのＲ＿ＲＤＹ確認信号を有効化する。遠位端バッファが利用不可能となると、信号１００８を介したＲ＿ＲＤＹからＳＡＮ  Ａ１００５へのフローは停止されるため、１００６を介したイングレスブロック１０１０へのトラフィックは停止する。
【００８１】
エグレスブロック１０６０は伝送システム１０４０および信号１０４２を介してイングレスブロック１０１０からデータを受信し、表６が示すように信号１０５２を介してＳＲＡＭ１０５０に保存する。前記エグレスブロック１０２０は受信されたバイト数（変数ＦＬＯＷ＿ＣＯＮＴＲＯＬ＿ａｖａｉｌａｂｌｅにある）に従ってメモリ利用可能性を削減する。
【００８２】
【表６】
2008512959.tif 000008
【００８３】
エグレスブロック１０６０は、表７が示すようにＳＡＮ  Ｚ１０８０との信号１０７２を介して標準規格ファイバーチャネル・プロトコルを実行し、データフレームをＳＡＮ  Ｚ１０８０に伝送する。エグレスブロック１０６０は、変数ＢＢ＿ｃｒｅｄｉｔ＿ｃｏｕｎｔとして初期化で記録された利用可能なバッファクレジット数に基づき、ＳＡＮ  Ｚ１０８０にデータを送信する。このカウントはバッファをオーバーフローさせずにＳＡＮ  Ｚに送信可能なパケット数を定める。最初のカウントの受信後、パケットがエグレスブロック１０６０からＳＡＮ  Ｚ１０８０に伝送されるにつれ、この数はデクリメントする。ＳＡＮ  Ｚ１０８０が、イングレスブロック１０７０および信号１０６４を通り信号１０７４を介して送信されたＲ＿ＲＤＹ信号と共にパケットの受信を確認するにつれ、そのクレジットカウントはインクリメントする。この方法は標準規格ファイバーチャネル・プロトコルによるものであり、この方法により、エグレスブロック１０６０はＳＡＮ  Ｚ１０８０におけるバッファ利用可能性を追跡し続け、バッファが利用可能なときだけにパケットを送信することができる。バッファ利用可能性（ＢＢ＿ｃｒｅｄｉｔ＿ｃｏｕｎｔ）がゼロにならない限り、データはエグレス１０６０からＳＡＮ  Ｚ１０８０に流れ続ける。前記クレジットカウントがゼロになると、１０４２を介して到達する入信データフレームがＳＲＡＭ１０５０を充填し始め、メモリの利用可能性が減少する。前述したように、メモリの利用可能性がゼロになると、前記エグレスブロック１０２０へのフロー制御メッセージがバックプレッシャーを開始し、トラフィックが停止する。これにより、ＳＲＡＭ１０５０のオーバーフローは確実に防がれる。
【００８４】
【表７】
2008512959.tif 000009
【００８５】
ＳＡＮ  Ａ１００５とＳＡＮ  Ｚ１０８０の間の伝送遅延のためＳＲＡＭ１０５０が必要である。ＳＡＮ  Ａ１００５と端末Ａ  １０００は最高１００ｋｍ離れることができる。同様に、ＳＡＮ  Ｚ１０８０と端末Ｚも最高１００ｋｍ離れることができる。前記２つの端末は、３０００ｋｍ以上離れることができる。そのため、端末Ａから端末Ｚへのデータフローは伝送システム１０４０を通して遅延される。伝送システム１０４０からの受信信号１０４２は伝送信号１０１２に対して遅延される。この遅延は光ファイバーで約４．８５ミクロ秒／キロメートルであり、前記２つの端末間の地理的距離に依存する。同様に、エグレス１０６０からイングレス１０１０へのフロー制御メッセージが同一の遅延を招く。スループットを最大限にし、トラフィックの妨害を防ぐために、そのバッファメモリは前記伝送システムの往復時間に相当するデータを保存する必要がある。よって、ＳＲＡＭ１０５０のサイズは、端末ＡとＺの間の地理的距離が増すにつれて増える必要がある。前記の好ましい実施形態において、３０００ｋｍを超す地理的距離を用いるが、この距離は６０００ｋｍまで拡張可能である。
【００８６】
ＳＲＡＭ１０５０のサイズは、ＳＡＮ  Ａ１００５とＳＡＮ  Ｚ１０８０の間のスループットの損失のない最大の地理的距離を決定する。ＳＲＡＭ１０５０に保存されたデータは、８ｂエンコードされた１．７Ｇｂｐｓのデータ転送速度と制御文字である。前記の好ましい実施形態において、１６ＭＢに拡張可能な８ＭＢのＳＲＡＭが、各ファイバーチャネル・ポートに割り当てられる。前記の好ましい実施形態には４つのファイバーチャネル・ポートがあり、従って４つのメモリバンクがある。各メモリバンクの距離は次のように計算される。
メモリ＝ファイバーチャネル・ポートにつき８ＭＢ（図１の１０５、１１０、１１５、および１２０）または６．７１Ｉｅ７ビット
データ転送速度＝８ｂエンコーディングで１．７Ｇｂｐｓ（１０ｂエンコーディングで２．１２５Ｇｂｐｓの入力）
最大待ち時間＝メモリのビット数／８ｂエンコーディングしたビット速度＝３９．４７６ミリ秒  
１ｋｍ毎往復時間＝．０１  ｍｓ／ｋｍ
最大距離＝待ち時間／１ｋｍ毎往復時間／ｋｍ＝３９４８ｋｍ
このように、前記２端末間で約３９４８ｋｍの距離が可能である。１６ＭＢバージョンのＳＲＡＭを用いる場合、距離は約７８９６ｋｍに倍増する。
【００８７】
このメモリアーキテクチャでは、ＳＲＡＭ１０５０を４つのバンクに分離し、それぞれに個別にアドレスすることも全体としてアドレスすることも可能である。これにより、前述のデータフォーマットに全て対応することが可能となる。例えば、１０ＧＦＣでは、メモリを全体として組み合わせ、表８が示すように最大距離２５５２ｋｍであり、５１０４ｋｍに拡張可能である。下表は、どのファイバーチャネル標準を統合させるかによって前記メモリを割り当てる方法を示す。
【００８８】
【表８】
2008512959.tif 000010
【００８９】
この設計の別の特徴は、組み込み式遅延機構を含むことであり、これにより、ＳＡＮ間（図１０のＳＡＮ  Ａ１００５とＳＡＮ  Ｚ１０８０）の遅延を顧客がプログラムすることが可能になる。  伝送に発生した遅延を扱うために、ファイバーチャネルで実行されるアプリケーションを最適化する必要があるため、この特徴は極めて重要である。その伝送装置内に遅延機能を含めれば、ユーザーは追加的な装置を必要とせずに前記アプリケーションを最適化できる。
【００９０】
図５を参照すると、この好ましい実施形態において、チャネル２ＳＲＡＭ５９２はポート１を出て行くチャネル１データの遅延機能を提供する（５０６および５０７）。チャネル１〜４の複合データ５４４はエグレスブロック５０４に入り、４つの個別のチャネルに分割される。次に、チャネル１データは５８２を介してチャネル２ＳＲＡＭ５９２に送信される。前記ＳＲＡＭは、４ＭＢでの１６ビット幅アドレスとしてアドレスされる（４１９４３０４アドレス）。このデータの書き込みはアドレス０で開始し、アドレス４１９４３０４まで続き、アドレス０に戻る。このデータの読み込みは、後にユーザーによりプログラム可能な遅延に従ってアドレス０で始まる。前記書き込み動作と読み込み動作の間の時間的オフセットが遅延となる。この遅延データ５８６はエグレスＦＰＧＡ５０４に読み込まれ、先に定義された正常なフロー制御動作が適用される。この動作中に、予め定義したようにチャネル１のＳＲＡＭを用いることにより、フロー制御のバファリングを提供する。同様に、チャネル４のＳＲＡＭ５９４は、ポート３を出て行くチャネル３のデータの遅延を提供する（５０８および５０９）。
【００９１】
この遅延量は、前記の書き込みおよび読込み動作の間の時間的オフセットに基づいて計算される。そのＳＲＡＭはＦＩＦＯとして設定され、そのデータは速度１５５．５２ＭＨｚで保存される。従って、遅延時間分解能は６．４３ｎｓまたは１．２８６メートルである。よって、可能な遅延の合計は（４１９４３０４  ｘ  ６．４３ｎｓ）２６．９６９ミリ秒である。１方向の伝送時間は約．００５ｍｓ／ｋｍであり、シミュレートされた合計距離は５３９３．８ｋｍである。１５５．５２ＭＨｚクロックでユーザーがプログラム可能な遅延を設定するために、カウンターを用いる。従って、前記遅延は６．４３ｎｓのインクリメントでプログラムされる。これにより、０から５３９３．８ｋｍの間で１．２８６メートルずつインクリメントする遅延値が可能となる。
【００９２】
１若しくはそれ以上の好ましい実施形態を参照して本発明について説明してきたが、この説明によって制約が課されるものと理解されるべきではない。例えば、当該方法および装置を用い、様々なフォーマットを統合してトランスペアレントに伝送することができ、当該方法および装置はギガビットＥｔｈｅｒｎｅｔ（登録商標）、ファイバーチャネル、ＦＩＣＯＮのフォーマットに限定されない。ここに開示した実施形態の改良および本発明の代替実施形態があることは当業者には明らかなことであり、本発明は以下の請求項の参照によってのみ制限されるものと解釈されるべきである。
【図面の簡単な説明】
【００９３】
以下の図と共に考慮される１実施形態の以下の詳細な説明により、本発明をよりよく理解することができる。
【図１】図１は、ＳＡＮ拡張のための伝送システムを図示するブロック図である。
【図２】図２は、本発明の好ましい実施形態に従ったイングレス回路を図示するブロック図である。
【図３】図３は、本発明の好ましい実施形態に従ったイングレス・フィールド・プログラム可能ゲートアレイを図示するブロック図である。
【図４】図４は、２０ビットのパイプラインのバレル・データ・ローラーＭＵＸを図示するブロック図である。
【図５】図５は、本発明の好ましい実施形態に従ったエグレス回路を図示するブロック図である。
【図６】図６は、本発明の好ましい実施形態に従ったエグレス・フィールド・プログラム可能ゲートアレイを図示するブロック図である。
【図７】図７は、本発明の好ましい実施形態のイングレスブロックに従った前進型誤信号訂正システムを図示するブロック図である。
【図８】図８は、本発明の好ましい実施形態に従った２０ビットのアライナ回路を図示するブロック図である。
【図９】図９は、本発明の好ましい実施形態のエグレスブロックに従った前進型誤信号訂正システムを図示するブロック図である。
【図１０】図１０は、広域の地理的距離に渡りトラフィックを伝達するために使用される内部および外部フロー制御機構を図示するブロック図である。
【図１】
2008512959.tif 000011
【図２】
2008512959.tif 000012
【図３】
2008512959.tif 000013
【図４】
2008512959.tif 000014
【図５】
2008512959.tif 000015
【図６】
2008512959.tif 000016
【図７】
2008512959.tif 000017
【図８】
2008512959.tif 000018
【図９】
2008512959.tif 000019
【図１０】
2008512959.tif 000020
【手続補正書】
【提出日】平成19年9月15日(2007.9.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
パケットベースのデータを統合して伝送するシステムであって、
複数のパケットベースのデータストリームを送信する第１のストレージ・エリア・ネットワークと、
前記複数のパケットベースのデータストリームを受信し、当該データストリームをパケットベースの複合データストリームに処理する、少なくとも１つのイングレス・ストリーム・ブロックと、
前記イングレス・ストリーム・ブロックに機能的に接続された、少なくとも１つのアップストリームプロセッサと、
前記パケットベースの複合データストリームを受信し、前記複数のパケットベースのデータストリームに処理する、少なくとも１つのエグレス・ストリーム・ブロックと、
ユーザーのデータを読み込むために前記エグレス・ストリーム・ブロックに機能的に接続された、少なくとも１つのダウンストリームプロセッサと、
前記複数のパケットベースのデータストリームを受信する第２のストレージ・エリア・ネットワークと
を有するシステム。
【請求項２】
請求項１記載のシステムにおいて、データバイトが前記パケットベースのデータストリーム間に加えられ、クロック速度を高めるものである。
【請求項３】
請求項２記載のシステムにおいて、前記エグレス・ストリーム・ブロックは、前記データバイトを削除し、固定クロック速度に基づいて前記データバイトをマッピングするものである。
【請求項４】
請求項１記載のシステムにおいて、前記パケットベースの複合データストリームは、データビットのシリアルストリームを有するものである。
【請求項５】
請求項４記載のシステムにおいて、１若しくはそれ以上のデータビットにチャネルがマッピングされるものである。
【請求項６】
請求項１記載のシステムにおいて、前記ダウンストリームプロセッサは、ユーザーデータを前記複数のパケットベースのデータストリームに加えるものである。
【請求項７】
請求項１記載のシステムにおいて、前記イングレス・ストリーム・ブロックは複数の光トランスシーバーを有し、前記光トランスシーバーは前記パケットベースのデータストリームを電気出力信号に変換するものである。
【請求項８】
請求項１記載のシステムにおいて、前記イングレス・ストリーム・ブロックは、前記パケットベースのデータストリームを前記パケットベースの複合データストリームに処理する、フィールド・プログラマブル・ゲート・アレイを有するものである。
【請求項９】
請求項１記載のシステムにおいて、前記エグレス・ストリーム・ブロックは、前記パケットベースの複合データストリームをエンコードされたデータ信号にデシリアライズするデシリアライザーを有するものである。
【請求項１０】
請求項９記載のシステムにおいて、前記エグレス・ストリーム・ブロックは、前記エンコードされたデータ信号の誤信号訂正を実行する前進型誤信号訂正コンポーネントを有するものである。
【請求項１１】
請求項１０記載のシステムにおいて、前記前進型誤信号訂正コンポーネントは、前記パケットベースの複合データストリームを４つの前進型誤信号訂正パスのうちの１つに割り当てるものである。
【請求項１２】
請求項１記載のシステムにおいて、前記エグレス・ストリーム・ブロックは、前記パケットベースのデータストリームを前記パケットベースの複合データストリームに処理するフィールド・プログラマブル・ゲート・アレイを有するものである。
【請求項１３】
請求項１記載のシステムであって、このシステムは、さらに、
前記イングレス・ストリーム・ブロックから受信した前記パケットベースの複合データストリームを伝送するための伝送手段を有するものである。
【請求項１４】
パケットベースのデータを統合して伝送する方法であって、
ストレージ・エリア・ネットワークに第１の複数のパケットベースのデータストリームを格納する工程と、
前記ストレージ・エリア・ネットワークから前記第１の複数のパケットベースのデータストリームを受信する工程と、
前記第１の複数のパケットベースのデータストリームをパケットベースの複合データストリームに処理する工程と、
前記パケットベースの複合データストリームを第２の複数のパケットベースのデータストリームに処理する工程と、
前記第２の複数のパケットベースのデータストリームをストレージ・エリア・ネットワークに格納する工程と
を有する、方法。
【請求項１５】
請求項１３記載の方法において、前記第１の複数のパケットベースのデータストリームは、少なくとも１つのイングレス・ストリーム・ブロックにおいて受信されるものである。
【請求項１６】
請求項１３記載の方法において、前記パケットベースの複合データストリームは、少なくとも１つのエグレス・ストリーム・ブロックにおいて受信されるものである。
【請求項１７】
請求項１５記載の方法であって、この方法は、さらに、
前記少なくとも１つのエグレスストリームに機能的に接続されたダウンストリームプロセッサーを経由して、前記少なくとも１つのエグレス・ストリーム・ブロックのユーザデータを読み込む工程
を有するものである。
【請求項１８】
請求項１３記載の方法において、前記第１及び第２の複数のパケットベースのデータストリームは、単一光データリンクを経由して伝送されるものである。
【請求項１９】
請求項１３記載の方法において、データバイトが前記複数のパケットベースのデータストリーム間に加えられて、クロック速度を高めるものである。
【請求項２０】
請求項１８記載の方法において、前記エグレス・ストリーム・ブロックは前記データバイトを削除し、固定クロック速度に基づいて、前記データバイトをマッピングするものである。
【請求項２１】
請求項１３記載の方法において、前記パケットベースの複合データストリームは、データビットのシリアルストリームを有するものである。
【請求項２２】
請求項１３記載の方法において、１若しくはそれ以上の前記複数のデータビットにチャネルがマッピングされるものである。
【請求項２３】
請求項１３記載の方法において、前記ダウンストリームプロセッサは、ユーザーデータを前記複数のパケットベースのデータストリームに加えるものである。
【請求項２４】
請求項１３記載の方法において、前記イングレス・ストリーム・ブロックは複数の光トランシーバーを有し、前記光トランシーバーは前記パケットベースのデータストリームを電気出力信号に変換するものである。
【請求項２５】
請求項１３記載の方法において、前記イングレス・ストリーム・ブロックは、前記パケットベースのデータストリームを前記パケットベースの複合データストリームに処理する、フィールド・プログラマブル・ゲート・アレイを有するものである。
【請求項２６】
請求項１３記載の方法において、前記エグレス・ストリーム・ブロックは、前記パケットベースの複合データストリームをエンコードされたデータ信号にデシリアライズするデシリアライザーを有するものである。
【請求項２７】
請求項１３記載の方法において、前記エグレス・ストリーム・ブロックは、前記パケットベースのデータストリームを前記パケットベースの複合データストリームに処理するフィールド・プログラマブル・ゲート・アレイを有するものである。
【請求項２８】
請求項１３記載の方法であって、この方法は、さらに、
前記パケットベースの複合データストリームを伝送する工程
を有するものである。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１８
【補正方法】変更
【補正の内容】
【００１８】
データ信号を送信する方法は、米国特許第６，１５１，３３４号明細書（Ｋｉｍら）、米国特許第２００２／００８０８０９号明細書（Ｎｉｃｈｏｌｓｏｎら）、米国特許第２００２／００７５９０３号明細書（Ｈｉｎｄら）、および米国特許第６，３９６，８５３号明細書（Ｈｕｍｐｈｒｅｙら）で教示されている。
この出願の発明に関連する先行技術文献情報としては、以下のものがある（国際出願日以降国際段階で引用された文献及び他国に国内移行した際に引用された文献を含む）。
【特許文献１】米国特許出願公開第２００３／１１２８３３号明細書
【特許文献２】米国特許出願公開第２００３／０９３５６７号明細書
【非特許文献１】デュカサティス  Ｃ（ＤＥＣＵＳＡＴＩＳ  Ｃ），「並列シスプレックス及びメトロポリタン／ストレージ・エリア・ネットワークに対する高密度波長分割多重（ＤＥＮＳＥ  ＷＡＶＥＬＥＮＧＴＨ  ＤＩＶＩＳＩＯＮ  ＭＵＬＴＩＰＬＥＸＩＮＧ  ＦＯＲ  ＰＡＲＡＬＬＥＬ  ＳＹＳＰＬＥＸ  ＡＮＤ  ＭＥＴＲＯＰＯＬＩＴＡＮ／ＳＴＯＲＡＧＥ  ＡＲＥＡ  ＮＥＴＷＯＲＫＳ」，光ネットワーク雑誌（ＯＰＴＩＣＡＬ  ＮＥＴＷＯＲＫＳ  ＭＡＧＡＺＩＮＥ），（米国ワシントン州ベリンガム（ＢＥＬＬＩＮＧＨＡＭ，ＷＡ，ＵＳ）），ＳＰＩＥ，２００１年１月，第２巻，第１号，ｐ．６９−８０
【非特許文献２】ニュジーラリー  Ｓ（ＮＵＪＥＥＲＡＬＥＥ  Ｓ）ら，「ストレージ・エリア・ネットワーク（ＳＴＯＲＡＧＥ  ＡＲＥＡ  ＮＥＴＷＯＲＫＩＮＧ）」，英国電気通信技術（ＢＲＩＴＩＳＨ  ＴＥＬＥＣＯＭＭＵＮＩＣＡＴＩＯＮＳ  ＥＮＧＩＮＥＥＲＩＮＧ），（英国ロンドン（ＬＯＮＤＯＮ，ＧＢ）），英国電気通信技術（ＢＲＩＴＩＳＨ  ＴＥＬＥＣＯＭＭＵＮＩＣＡＴＩＯＮＳ  ＥＮＧＩＮＥＥＲＩＮＧ），２００４年１月，第３巻，第１号，ｐ．４８−５８
【非特許文献３】モーア  Ｕ（ＭＯＨＲ，Ｕ），「光ストレージネットワーク（ＯＰＴＩＣＡＬ  ＳＴＯＲＡＧＥ  ＮＥＴＷＯＲＫＩＮＧ）」，ＳＰＩＥ会報（ＰＲＯＣＥＥＤＩＮＧＳ  ＯＦ  ＴＨＥ  ＳＰＩＥ），（米国バージニア州（ＶＡ，ＵＳ）），ＳＰＩＥ，２００１年第４５３４巻，ｐ．１９０−１９８
【国際調査報告】
2008512959.tif 000021
2008512959.tif 000022
2008512959.tif 000023