(57)【要約】イーサネット（登録商標）パケットのビット誤り率を改善する方法は、送信されたパケットに前方誤り訂正（ＦＥＣ）コーディングを適用する。ＦＥＣコーディングは、系統的なブロックコーディングであり、ＦＥＣデコーディングが不可能なレガシーネットワーク装置によってコーディングされたパケットを解釈実行できるように適用される。ＦＥＣ可能なイーサネット（登録商標）ノードの送受信状態マシンは、ＦＥＣコードを有するパケットをノードがエンコードおよび／またはデコードすることができ、且つノードがその対応する媒体アクセス層（ＭＡＣ）データ転送速度と物理層（ＰＨＹ）データ転送速度とを適合させることができるように修正される。
2005524281.tif 000002
【特許請求の範囲】
【請求項１】
共有媒体デジタル送信ネットワークを介して送信器から受信器へデータパケットを送信する方法であって、前記各パケットの終了の範囲を画定する停止符号フィールドで各パケットが終了する方法において、
前記各パケットの少なくとも一部のデータを、１つまたは複数のフレームに分割するステップと、
系統的なＦＥＣブロックコードを前記各パケットの各フレームに適用するステップであって、前記系統的なＦＥＣブロックコードがフレームのデータ符号を出現させ続けるとともにパリティチェック符号を加えるステップと、
前記各パケットのフレームのパリティチェック符号を前記各パケットのパリティチェックフィールドに集めるステップと、
前記各パケットの終了の範囲を画定する停止符号フィールドの後に、前記各パケットのパリティチェックフィールドを加えるとともに、前記各パケットのパリティチェックフィールドの後に、前記各パケットのパリティチェックフィールドのデリミタを加えることにより前記各パケットを修正し、それにより、複数の修正されたパケットを生成するステップと、
修正されたパケットを、イーサネット（登録商標）ネットワークを介して、前記送信器から受信器へと送信するステップと、
を含む方法。
【請求項２】
前記共有媒体デジタル送信ネットワークは、イーサネット（登録商標）ネットワークである、請求項１に記載の前記方法。
【請求項３】
前記データパケットは、第１のデータパケットと第２のデータパケットとを含み、前記適用ステップは、第１のＦＥＣブロックコードを第１のパケットの各フレームに適用するとともに、第２のＦＥＣブロックコードを第２のパケットの各フレームに適用するステップを含む、請求項２に記載の前記方法。
【請求項４】
系統的なＦＥＣブロックコードを適用する前記ステップは、リードソロモンコードを前記各パケットの各フレームに適用するステップを含む、請求項２に記載の前記方法。
【請求項５】
系統的なＦＥＣブロックコードを適用する前記ステップは、リードソロモンＧＦ（２8）−（２５５，２５５−２ｔ，ｔ）コードを前記各パケットの各フレームに適用するステップを含む、請求項２に記載の前記方法。
【請求項６】
前記各パケットの少なくとも一部のデータは、ヘッダーフィールドと、ペイロードデータフィールドと、フレームチェックシーケンスフィールドとを含む、請求項２に記載の前記方法。
【請求項７】
前記各パケットの少なくとも一部のデータは、プリアンブルフィールドと、開始フレームデリミタフィールドと、ヘッダーフィールドと、ペイロードデータフィールドと、フレームチェックシーケンスフィールドとを含む、請求項２に記載の前記方法。
【請求項８】
前記フレームは、第１の所定長のフレームと短いフレームとを備え、短いフレームのそれぞれの長さは、前記第１の所定長よりも短く、
系統的なＦＥＣブロックコードを前記各パケットの各フレームに適用する前記ステップは、前記短いフレームを実質的にゼロパッドするステップを含む、請求項２に記載の前記方法。
【請求項９】
系統的なＦＥＣブロックコードを適用する前記ステップは、短いフレームのそれぞれをラインレートエンコードするためのステップを含む、請求項８に記載の前記方法。
【請求項１０】
前記送信器は、ＭＡＣ層とＰＨＹ層とを備え、前記各パケットに続いてパケット間ギャップインターバルがあり、前記ＭＡＣ層の送信速度を前記ＰＨＹ層の送信速度に適合させるステップを更に含む、請求項２に記載の前記方法。
【請求項１１】
送信速度を適合させる前記ステップは、前記送信器のＭＡＣ層でパケット間ギャップインターバルストレッチングを行なうステップを含む、請求項１０に記載の前記方法。
【請求項１２】
パケット間ギャップインターバルストレッチングを行なう前記ステップは、前記各パケット長に直線的に比例して前記各パケットの最後でパケット間ギャップインターバルを広げるステップを含む、請求項１１に記載の前記方法。
【請求項１３】
前記受信器は、ＭＡＣ層とＰＨＹ層とを含み、
送信されたパケットを前記受信器で受信するステップと、
前記ＭＡＣ層の受信速度を前記ＰＨＹ層の受信速度に適合させるステップと、
を更に含む、請求項２に記載の前記方法。
【請求項１４】
受信速度を適合させる前記ステップは、受信されたパケットのパリティチェック符号の代わりに、アイドル符号を前記ＰＨＹ層から前記ＭＡＣ層へ挿入するステップを含む、請求項１３に記載の前記方法。
【請求項１５】
受信速度を適合させる前記ステップは、前記ＰＨＹ層がデータを受け入れることができる時だけ、前記ＭＡＣ層がデータを前記ＰＨＹ層に対して送信できるように、制御信号をアサートし且つネゲートするステップを更に含む、請求項１４に記載の前記方法。
【請求項１６】
前記制御信号は、ＣＲＳ信号である、請求項１５に記載の前記方法。
【請求項１７】
前記制御信号は、ＣＯＬ信号である、請求項１５に記載の前記方法。
【請求項１８】
前記送信ステップの前に、修正されたパケットの８ｂ／１０ｂラインコーディングを行なうステップを更に含み、
前記各パケットは、前記各パケットの始まりの範囲を画定する開始符号フィールドを含み、
前記送信器は、ＭＡＣ層とＰＨＹ層とを含み、
前記修正ステップは、前記各パケットの開始符号フィールドおよび停止符号フィールドを、False_carrier_detectモードを維持する１０Ｂの短いシーケンスまで広げるステップを含む、請求項２に記載の前記方法。
【請求項１９】
前記送信ステップの前に、修正されたパケットの８ｂ／１０ｂラインコーディングを行なうステップを更に含み、
前記各パケットは、前記各パケットの始まりの範囲を画定する開始符号フィールドを含み、
前記送信器は、ＭＡＣ層とＰＨＹ層とを含み、
前記修正ステップは、前記各パケットの開始符号フィールドおよび停止符号フィールド内の符号の誤り率を減少させるステップを含む、
請求項２に記載の前記方法。
【請求項２０】
前記送信器と受信器との間でパケットを通信して、前記受信器を前記送信器に登録するとともに、前記系統的なＦＥＣブロックコードを決定するステップを更に含む、請求項２に記載の前記方法。
【請求項２１】
前記適用ステップは、少なくとも１つの系統的なＦＥＣブロックコードを前記パケットの各フレームに適用するステップを含み、前記各パケット長に基づいて前記各パケットのフレームに適用するための系統的なＦＥＣブロックコードを選択するステップを更に含む、請求項２に記載の前記方法。
【請求項２２】
前記各パケットの少なくとも一部のデータは、ヘッダーフィールドと、ペイロードデータフィールドと、フレームチェックシーケンスフィールドとを含み、前記各パケットのフレームチェックシーケンスフィールドは、前記各パケットの巡回冗長検査値を含み、
前記修正されたパケットを前記受信器で受信するステップと、
前記受信器で受信された修正された各パケットの前記フレームチェックシーケンスフィールドを読み取るステップと、
前記受信器で受信された前記修正された各パケットの前記フレームチェックシーケンスフィールドにおいて巡回冗長検査を使用することにより、前記受信器で受信された前記修正された各パケットの完全性を確認するステップと、
前記受信器で受信された前記修正された各パケットのフレームチェックシーケンスフィールドにおける巡回冗長検査によって、前記受信器で受信された前記修正された各パケットの完全性が不十分であると判断されると、前記受信器で受信された前記修正された各パケットにＦＥＣデコーディングを行なうステップと、
を更に含む、請求項２に記載の前記方法。
【請求項２３】
イーサネット（登録商標）ネットワークを介して送信器から受信器へ送られるデータパケットを受信する方法であって、前記受信器は、ＭＡＣ層とＰＨＹ層とを含み、前記各パケットの終了の範囲を画定する第２の停止符号フィールドで各パケットが終了し、前記各パケットに続いてパケット間ギャップインターバルがあり、前記各パケットは、前記各パケットの最後であって、且つ前記第２の停止符号フィールドの前にパリティチェックフィールドを含み、前記各パケットは、前記パリティチェックフィールドの前に第１の停止符号フィールドを含み、前記各パケットは、前記第１の停止符号フィールドに先立つデータフィールド内にデータを含み、前記各パケットのパリティチェックフィールドは、系統的なＦＥＣブロックコードを用いて前記各パケットのデータの少なくとも一部のフレームをエンコードすることによって生じるパリティチェック符号を含む方法において、
前記受信器で前記パケットを受信するステップと、
受信された各パケットをＦＥＣデコーディングをするステップと、
前記ＭＡＣ層の受信速度を前記ＰＨＹ層の受信速度に適合させるステップと、
を含む前記方法。
【請求項２４】
前記適合ステップは、前記受信されたパケットのパリティチェック符号の代わりにアイドル符号を前記ＰＨＹ層から前記ＭＡＣ層へ挿入するステップを含む、請求項２３に記載の前記方法。
【請求項２５】
リードソロモンコードを用いて前記パケットがエンコードされる、請求項２４に記載の前記方法。
【請求項２６】
イーサネット（登録商標）ネットワークによって互いに接続された送信器と受信器との間でのデータパケット送信のビット誤り率を改善する方法であって、
（ａ）前記送信器から受信器へのＦＥＣエンコーディングされていないパケットの送信におけるビット誤り率を得るステップと、
（ｂ）前記得られたビット誤り率を所定のビット誤り率限界と比較するステップと、
（ｃ）前記得られたビット誤り率が所定のビット誤り率限界を超えている場合に、以下のステップ（ｄ）〜（ｈ）
（ｄ）前記ネットワークを介して前記送信器から受信器へ送信するための各パケットの少なくとも一部のデータを、１つまたは複数のフレームに分割するステップと、
（ｅ）系統的なＦＥＣブロックコードを前記各パケットの各フレームに適用するステップであって、前記系統的なＦＥＣブロックコードがフレームのデータ符号を出現させ続けるとともに、パリティチェック符号を加えるステップと、
（ｆ）前記各パケットのフレームのパリティチェック符号を前記各パケットのパリティチェックフィールドに集めるステップと、
（ｇ）前記各パケットの終了の範囲を画定する停止符号フィールドの後に、前記各パケットのパリティチェックフィールドを加えるとともに、前記各パケットのパリティチェックフィールドの後に、前記各パケットのパリティチェックフィールドのデリミタを加えることにより、前記各パケットを修正し、それにより、複数の修正されたパケットを生成するステップと、
（ｈ）前記修正されたパケットを、前記イーサネット（登録商標）ネットワークを介して、前記送信器から受信器へと送信するステップと、
を含む方法。
【請求項２７】
系統的なＦＥＣブロックコードを適用する前記ステップは、リードソロモンコードを前記各パケットの各フレームに適用するステップを含む、請求項２６に記載のビット誤り率を改善する方法。
【請求項２８】
ビット誤り率を得る前記ステップは、前記イーサネット（登録商標）ネットワークのアーキテクチャパラメータに基づいて、前記送信器から受信器へのＦＥＣエンコーディングされていないパケットの送信におけるビット誤り率を推測するステップを含む、請求項２７に記載のビット誤り率を改善する方法。
【請求項２９】
ビット誤り率を得る前記ステップは、前記イーサネット（登録商標）ネットワークを介して前記送信器から受信器へ送られる少なくとも１つのＦＥＣエンコーディングされていないパケットのビット誤り率を測定するステップを含む、請求項２７に記載のビット誤り率を改善する方法。
【請求項３０】
第１のネットワーク要素とＦＥＣデコーディングが不可能な第２のネットワーク要素との間でのデータパケット送信のビット誤り率を改善する方法であって、前記第１のネットワーク要素と前記第２のネットワーク要素は、イーサネット（登録商標）ネットワークによって接続され、前記イーサネット（登録商標）ネットワークと前記第２のネットワーク要素との間に、以下のステップ
前記第１のネットワーク要素から前記第２のネットワーク要素へと送られたＦＥＣエンコーディングされたパケットを、前記イーサネット（登録商標）ネットワークから受信するステップであって、前記イーサネット（登録商標）ネットワークから受信されたパケットは、ＦＥＣデコーディングが不可能なイーサネット（登録商標）に準拠しているネットワーク要素で受信される時にＭＡＣ層エラーを生じさせないようにＦＥＣエンコーディングされるステップと、
前記イーサネット（登録商標）ネットワークから受信されたパケットの境界を検出するステップと、
前記イーサネット（登録商標）ネットワークから受信されたパケットをＦＥＣデコーディングすることにより、複数のＦＥＣデコーディングされたパケットを生成するステップと、
前記ＦＥＣデコーディングされたパケットのＦＥＣパリティチェック符号の代わりにアイドル符号を挿入することにより、ＦＥＣデコーディングされたパケットを適合させ、それにより、複数の適合されたパケットを生成するステップと、
前記適合されたパケットを前記第２のネットワーク要素に送信するステップと、
前記第２のネットワーク要素から第１のネットワーク要素に送られたパケットを、前記第２のネットワーク要素から受信するステップと、
前記第２のネットワーク要素から受信された各パケットの境界を検出するステップと、
前記第２のネットワーク要素から受信された前記各パケットの少なくとも一部のデータを、１つまたは複数のフレームに分割するステップと、
系統的なＦＥＣブロックコードを前記各パケットの各フレームに適用するステップであって、前記系統的なＦＥＣブロックコードがフレームのデータ符号を出現させ続けるとともに、パリティチェック符号を加えるステップと、
前記各パケットのフレームのパリティチェック符号を前記各パケットのパリティチェックフィールドに集めるステップと、
前記各パケットの終了の範囲を画定する停止符号フィールドの後に、前記各パケットのパリティチェックフィールドを加えるとともに、前記各パケットのパリティチェックフィールドの後に、前記各パケットのパリティチェックフィールドのデリミタを加えることにより、前記各パケットを修正し、それにより、複数の修正されたパケットを生成するステップと、
修正されたパケットを、前記イーサネット（登録商標）ネットワークを介して、前記送信器から受信器へと送信するステップと、
前記第２のネットワーク要素の送信速度を前記イーサネット（登録商標）ネットワークに適合させるステップと、
を行なうことができる適合装置を設けるステップを含む方法。
【請求項３１】
前記イーサネット（登録商標）ネットワークから受信されたパケットは、リードソロモンコードを使用してＦＥＣエンコーディングされ、
系統的なＦＥＣブロックコードを適用する前記ステップは、リードソロモンコードを前記各パケットの各フレームに適用するステップを含む、請求項３０に記載のビット誤り率を改善する方法。
【請求項３２】
イーサネット（登録商標）ネットワークを介して送信器から受信器へデータパケットを送信するための方法であって、
少なくとも１つの系統的なＦＥＣブロックコードをデータパケットのデータに適用することにより、データパケットをエンコードし、それにより、ＦＥＣが不可能なイーサネット（登録商標）に準拠しているネットワーク要素において、エンコードされたデータパケットが受信される時にエンコードされたデータパケットがＭＡＣ層エラーを生じさせないようにし、それにより複数のエンコードされたパケットを生成するステップと、
前記エンコードされたパケットを、前記イーサネット（登録商標）ネットワークを介して、前記送信器から受信器へと送信するステップと、
を含む方法。
【請求項３３】
前記エンコードされたパケットを受信するステップと、
前記エンコードされたパケットをデコードするステップと、
を更に含む、請求項３２に記載の方法。
【請求項３４】
イーサネット（登録商標）ネットワークを介してデータパケットを受信器に送信するネットワーク要素であって、前記各パケットの終了の範囲を画定する停止符号フィールドで各パケットが終了し、前記各パケットに続いてパケット間ギャップインターバルがあるネットワーク要素において、
前記各パケットの少なくとも一部を１つまたは複数のフレームに分割するフレーマと、
少なくとも１つの系統的なＦＥＣブロックコードを前記フレームに適用するＦＥＣエンコーダであって、前記少なくとも１つの系統的なＦＥＣブロックコードがフレームのデータ符号を出現させ続けるとともに、パリティチェック符号を計算するＦＥＣエンコーダと、
前記各パケットの終了の範囲を画定する前記停止符号フィールドの後に、前記各パケットのフレームの計算されたパリティチェック符号を加えるとともに、前記各パケットのフレームの計算されたパリティチェック符号の後に、前記各パケットのパリティチェックフィールドのデリミタを加えることにより、前記各パケットを修正し、それにより、複数の修正されたパケットを生成するパケット修正器と、
修正されたパケットを受信器へ送信する送信器と、
を含むネットワーク要素。
【請求項３５】
前記少なくとも１つの系統的なＦＥＣブロックコードは、第１の系統的なＦＥＣブロックコードと第２の系統的なＦＥＣブロックコードとを含み、前記ＦＥＣエンコーダは、前記第１の系統的なＦＥＣブロックコードをデータパケットの第１のパケットのフレームに適用するとともに、前記第２の系統的なＦＥＣブロックコードをデータパケットの第２のパケットのフレームに適用する、請求項３４に記載のネットワーク要素。
【請求項３６】
前記少なくとも１つの系統的なＦＥＣブロックコードは、リードソロモンコードを含む、請求項３４に記載のネットワーク要素。
【請求項３７】
前記少なくとも１つの系統的なＦＥＣブロックコードは、リードソロモンＧＦ（２8）−（２５５，２５５−２ｔ，ｔ）コードを含む、請求項３４に記載のネットワーク要素。
【請求項３８】
前記フレーマによって分割される前記各パケットの部分は、ヘッダーフィールドと、ペイロードデータフィールドと、フレームチェックシーケンスフィールドとを含む、請求項３４に記載のネットワーク要素。
【請求項３９】
前記フレーマによって分割される前記各パケットの部分は、プリアンブルフィールドと、開始フレームデリミタフィールドと、ヘッダーフィールドと、ペイロードデータフィールドと、フレームチェックシーケンスフィールドとを含む、請求項３４に記載のネットワーク要素。
【請求項４０】
前記フレーマは、前記各パケットの少なくとも一部を、第１の所定長のフレームと短いフレームとに分割し、短い各フレームの長さは、第１の所定長よりも短く、
前記ＦＥＣエンコーダは、短いフレームを実質的にゼロパッドする、請求項３４に記載のネットワーク要素。
【請求項４１】
ＭＡＣ層と、
ＰＨＹ層と、
前記ＭＡＣ層の送信速度を前記ＰＨＹ層の送信速度に適合させるレート適合メカニズムと、
を更に含む、請求項３４に記載のネットワーク要素。
【請求項４２】
ＭＡＣ層と、
ＰＨＹ層と、
パケット間ギャップインターバルストレッチングにより、前記ＭＡＣ層の送信速度を前記ＰＨＹ層の送信速度に適合させるレート適合メカニズムと、
を更に含む、請求項３４に記載のネットワーク要素。
【請求項４３】
ＭＡＣ層と、
ＰＨＹ層と、
前記各パケット長に比例して前記各パケットに続くパケット間ギャップインターバルを直線的に広げることにより、前記ＭＡＣ層の送信速度を前記ＰＨＹ層の送信速度に適合させるレート適合メカニズムと、
を更に含む、請求項３４に記載のネットワーク要素。
【請求項４４】
ＭＡＣ層と、
ＰＨＹ層と、
８ｂ／１０ｂラインエンコーダと、
を更に含み、
前記各パケットは、前記各パケットの始まりの範囲を画定する開始符号フィールドを更に含み、
パケット修正器は、前記各パケットの開始符号フィールドおよび停止符号フィールドをFalse_carrier_detectモードを維持する１０Ｂの短いシーケンスまで広げる１０Ｂエクステンダを含む、請求項３４に記載のネットワーク要素。
【請求項４５】
物理コーディング・サブレーヤの送信orderd_set状態マシンの実行のための手段を更に含む、請求項４４に記載のネットワーク要素。
【請求項４６】
イーサネット（登録商標）ネットワークを介してデータパケットを受信器へ送信するイーサネット（登録商標）送信器の物理コーディング・サブレーヤの構成要素であって、前記各パケットの終了の範囲を画定する停止符号フィールドで各パケットが終了する構成要素において、
前記各パケットの少なくとも一部を１つまたは複数のフレームに分割するとともに、少なくとも１つの系統的なＦＥＣブロックコードをフレームに適用するＦＥＣエンコーダであって、前記少なくとも１つの系統的なＦＥＣブロックコードがフレームのデータ符号を出現させ続けるとともに、パリティチェック符号を計算するＦＥＣエンコーダと、
前記各パケットの終了の範囲を画定する停止符号フィールドの後に、前記各パケットのフレームのパリティチェック符号を加えるとともに、前記各パケットのフレームのパリティチェック符号の後に、前記各パケットのパリティチェックフィールドのデリミタを加えることにより、前記各パケットを修正し、それにより、複数の修正されたパケットを生成するパケット修正器と、
パケット境界符号を、前記修正されたパケットに加えるデータラッパーと、
を含む構成要素。
【請求項４７】
イーサネット（登録商標）送信器の調整サブレーヤからパケットを受信するとともに、前記イーサネット（登録商標）送信器のＭＡＣ層の送信速度を前記イーサネット（登録商標）送信器のＰＨＹ層の送信速度に適合させるレートアダプタを更に含む、請求項４６に記載の物理コーディング・サブレーヤの構成要素。
【請求項４８】
少なくとも１つの系統的なＦＥＣブロックコードは、リードソロモンコードを含む、請求項４７に記載の物理コーディング・サブレーヤの構成要素。
【請求項４９】
付加的な境界符号を用いてラインコードを前記パケットに適用するラインコードエンコーダを更に含む、請求項４７に記載の物理コーディング・サブレーヤの構成要素。
【請求項５０】
ＦＥＣエンコーダは、前記各パケットの少なくとも一部を、第１の所定長のフレームと短いフレームとに分割し、短い各フレームの長さは、前記第１の所定長よりも短く、
前記ＦＥＣエンコーダは、少なくとも１つの系統的なＦＥＣブロックコードをフレームに適用する前に、前記短いフレームを実質的にゼロパッドする、
請求項４９に記載の物理コーディング・サブレーヤの構成要素。
【請求項５１】
１つまたは複数のフレームに分割される前記各パケットの部分は、ヘッダーフィールドと、ペイロードデータフィールドと、フレームチェックシーケンスフィールドとを含む、請求項４６に記載の物理コーディング・サブレーヤの構成要素。
【請求項５２】
前記ＦＥＣエンコーダは、変数ｔ（ｔは、第１の所定の複雑度限界以下である）を有する（Ｎ，Ｎ−２ｔ，ｔ）リードソロモンコードのフレキシブルエンコーディングを実行するための手段を含む、請求項５０に記載の物理コーディング・サブレーヤの構成要素。
【請求項５３】
１つまたは複数のフレームに分割される前記各パケットの部分は、プリアンブルフィールドと、開始フレームデリミタフィールドと、ヘッダーフィールドと、ペイロードデータフィールドと、フレームチェックシーケンスフィールドとを含む、請求項４６に記載の物理コーディング・サブレーヤの構成要素。
【請求項５４】
前記各パケットは、開始符号フィールドを更に含み、前記構成要素は、前記各パケットの開始符号フィールドおよび停止符号フィールドをFalse_carrier_detectモードを維持する１０Ｂの短いシーケンスまで広げる１０Ｂエクステンダを更に含む、請求項４６に記載の物理コーディング・サブレーヤの構成要素。
【請求項５５】
イーサネット（登録商標）ネットワークを介して送信器からデータパケットを受信するイーサネット（登録商標）受信器の物理コーディング・サブレーヤの構成要素であって、少なくとも１つの系統的なＦＥＣブロックコードを用いて各パケットがエンコードされる構成要素において、
ラインコードデコーディングをデータパケットに適用することにより、ラインコードデコードされたパケットを生成するラインコードデコーダと、
ラインコードデコードされたパケットの境界を決定する境界検出器と、
ラインコードデコードされたパケットのＦＥＣパリティチェック符号を分離するセレクタと、
ラインコードデコードされた各パケットの前記ＦＥＣパリティチェック符号をアイドル符号と置き換えるとともに、前記ラインコードデコードされた各パケットをバッファリングすることにより、バッファリングされたパケットを生成するバッファと、
バッファリングされたパケットと前記ＦＥＣパリティチェック符号とを受信するとともに、バッファリングされた各パケットをＦＥＣデコーディングするＦＥＣデコーダと、
を含むネットワーク構成要素。
【請求項５６】
前記ＦＥＣデコーダは、変数ｔ（ｔは、第１の所定の複雑度限界以下である）を有する（Ｎ，Ｎ−２ｔ，ｔ）リードソロモンコードをデコードする方法のステップを実行することができる、請求項５５に記載のイーサネット（登録商標）受信器の物理コーディング・サブレーヤの構成要素。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、共有媒体データ送信ネットワークに関する。特に、本発明は、イーサネット（登録商標）ネットワークにおける前方誤り訂正コーディングの使用に関する。
【背景技術】
【０００２】
イーサネット（登録商標）は、最も一般的なデジタルネットワーキング技術の１つである。この技術は、米国電気電子学会（ＩＥＥＥ）規格８０２．３で規定されており、互換性があるネットワーク装置の大きな設置基盤を有している（これにより、ＩＥＥＥ８０２．３規格の２０００版は、参照として本明細書に完全に記載されているかのように本出願に組み込まれる）。イーサネット（登録商標）技術は、例えば毎秒１ギガビットのネットワーク速度を提供するギガビットイーサネット（登録商標）のように、より新しく且つより速い変化を伴って進化し続けている。
ここ数十年の間、イーサネット（登録商標）は、ローカルエリアネットワークで幅広く使用されてきた。ごく最近では、イーサネット（登録商標）は、パッシブ光ネットワーク（ＰＯＮｓ）を含む、地下鉄やその他の広域光ネットワークの用途において使用頻度が増してきている。広域ネットワークの用途において、信号減衰およびリンクバジェットの制約は、関連する距離により、および送信器と受信器との間のリンクに沿って使用しうる光出力スプリッタにより、重要性が増している。
リンクに伴う幾つかの点で、信号は、受信器の限られた感度、伝搬媒体におけるノイズ、符号間インターフェースおよびモード分配ノイズ等の信号源関連のノイズ、その他のノイズ・減衰・歪み源により、信号が運ぶ情報を引き出すことができなくなる程度まで減衰され、歪む場合がある。しかし、この点に達するずっと以前に、信号の信号対雑音比（ＳＮＲ）が劣化し、信号のビット誤り率（ＢＥＲ）は、一般的な用途において許容し得る値を超えて増大する。
前方誤り訂正（ＦＥＣ）は、ＳＮＲが低い受信信号のＢＥＲを改善する１つの方法である。ＦＥＣは、物理チャンネルを通じたデジタル信号シーケンスの送信の一部として、付加的な符号、すなわち、冗長な符号つまりパリティチェック符号を使用するコーディング技術である。それは、エラー制御コードのようなものである。しかし、十分な冗長性が存在するため、エラーが受信信号に悪影響を与えると、受信器は、エラーを認識するだけでなく、また再送信を要求することなく、エラーを訂正する。実際、ＦＥＣの使用によって得られるＢＥＲの改善は、コーディングゲインとして知られている。
ＦＥＣ能力をレガシーイーサネット（登録商標）ネットワークに加えると、ＦＥＣ不可能（すなわち、レガシー）なネットワーク要素の媒体アクセス制御（ＭＡＣ）層にエラーが生じる場合がある。また、ＦＥＣをパケットのペイロードにだけ適用すると、パケットの宛先情報を運ぶパケットヘッダーおよびパケットのフレーム境界フィールドがペイロードの改善されたＢＥＲから利益を得られないため、リンクバジェット制約に影響が及ばない。一方、ヘッダーおよびペイロードに対して個別にＦＥＣを適用すると、ヘッダーが非ＦＥＣネットワーク要素に対して認知できないようになる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
したがって、イーサネット（登録商標）規格に適合するＦＥＣ不可能なレガシーネットワーク要素を有するネットワーク上で、所定のリンクバジェットにおけるＢＥＲを改善するための方法、逆に言うと、所定のＢＥＲにおけるリンクバジェットを増大させるための方法が必要とされる。
【課題を解決するための手段】
【０００４】
本発明の原理にしたがって、共有媒体デジタル送信ネットワークを介して送信器から受信器へデータパケットを送信する方法が提供される。各パケットは、パケットの終了の範囲を画定する停止符号フィールドで終了し、続いてパケット間ギャップインターバルが来る。この方法によると、各パケットの少なくとも一部が１つまたは複数のフレームに分割され、系統的なＦＥＣブロックコードがパケットの各フレームに適用される。系統的なＦＥＣブロックコードは、データバイトを出現させ続けるとともに、パリティチェックバイトをフレームに加える。パケットのフレームのパリティチェックバイトは、パリティチェックフィールドに集められる。パリティチェックフィールドは、パケットの終了の範囲を画定する停止符号フィールドの後に加えられる。前記各パケットのパリティチェックフィールドのデリミタは、パリティチェックフィールドの後に加えられる。また、パケットは、イーサネット（登録商標）ネットワークを介して、送信器から受信器へと送信される。
【発明を実施するための最良の形態】
【０００５】
＜関連出願＞
本出願は、２００１年４月２４日に出願された“イーサネット（登録商標）ネットワークにおいてＦＥＣを組み合わせるための方法および装置（ＥＰＯＮ）”と題する米国仮特許出願第60/286,429号の優先権の利益を主張する。この仮特許出願は、全ての目的のため参照として本出願に組み込まれる。
【０００６】
以下の説明、添付の請求項、および添付図面を参照し、単なる例示として、本発明を説明する。
本発明の代表的で非制限的な実施形態は、ＦＥＣの利点をパケットヘッダーにまで及ばせ、且つレガシーイーサネット（登録商標）ネットワーク要素でエラーを引き起こさない柔軟な方法で、ＦＥＣコーディングをイーサネット（登録商標）パケットに適用することにより、前述した要件を解決する。
イーサネット（登録商標）パケット１０のフォーマットを図１に示す。
・フィールド１０５は、パケットの始まりを示すパケットの開始符号を含む；
・フィールド１１０は、物理シグナリング・サブレーヤ自体を受信されたフレーム（すなわち、イーサネット（登録商標）パケット）に同期させることができる同期シーケンスとしての機能を果たすプリアンブルを含む；
・フィールド１１５は、１０１０１０１１という特定のシーケンスであり、且つパケットの一部を運ぶ情報の開始を示す開始フレームデリミタ（ＳＦＤ）を含む；
・フィールド１２０は、受信器の宛先アドレスと、送信器のソースアドレスと、パケットのデータフィールドの長さのインジケータとを組み合わせるヘッダーを含む；
・フィールド１２５は、４６バイト〜１５００バイトの可変長データフィールドである（必要に応じて、データフィールド１２５が全てゼロパッドされ、それにより、このフィールドの長さが少なくとも４６バイトになる）；
・フィールド１３０は、パケットの４バイトのフレームチェックシーケンス（ＦＣＳ）であり、受信されたパケットの完全性を確認するために使用される巡回冗長検査値を含む；
・フィールド１３５は、パケットの終了を示す停止符号を含む；
・フィールド１４０は、パケット間ギャップインターバル（ＩＧＰ）である。
厳密に言えば、ＩＧＰ１４０は、パケットの一部ではない。むしろ、ＩＧＰ１４０は、ネットワーク上の連続するパケット間のタイムギャップまたはバッファ領域である。それにもかかわらず、イーサネット（登録商標）規格がこのフィールドを扱うことを定めているため、図１にこのフィールドが示されている。
【０００７】
図２は、本発明に係る代表的な実施形態によってエンコードされたイーサネット（登録商標）パケット２０を示している。使用される実際のＦＥＣコーディングは、系統的なブロックコーディングタイプのものである。ブロックコーディングとは、ｋ個の情報源符号から成るブロックを、複数のコード符号から成るブロックまたはｎ個の符号から成るコードワードのブロックへとコーディングすることを意味する。（符号は、１ビット、１バイト、１６ビットワード、あるいは、任意の他の２進文字または非２進文字または一連の文字であってもよい）。冗長性がある場合には、ｎ＞ｋとなる。このようなコードの比率は、Ｒ＝ｋ／ｎとして定義される。
系統的なブロックコードは、コーディングされるブロックの情報符号が対応するコードワードに運ばれ、且つパリティチェック符号がコードワードに加えられるコードである。したがって、情報符号は、ブロックがコーディングされた後においても、依然として出現したままである。複数の（Ｄ0,Ｄ1,...Ｄk-1）情報符号をエンコードして、複数の（Ｃ0,Ｃ1,...Ｃn-1）符号を含む１つのコードワードにすることについて考える。系統的なコードが使用される場合には、コードワードのｋ個の要素が（Ｄ0,Ｄ1,...Ｄk-1）情報符号と同じになる。例えば、０≦ｊ≦ｋ−１である場合には、ＣjがＤjと等しくなる可能性があり、ｋ≦ｊ≦ｎ−１である場合には、Ｃjがコードワードのパリティチェック符号と等しくなる。なお、線形変換によって任意の線形コードを系統的なコードに変換することができる。コードの特徴は、変換後も保たれる。
【０００８】
図２のパケット２０のフィールド１０５、１１０、１１５、１２０、１２５、１３０、１３５及び１４０は、図１に同様に示されたパケット１０のフィールドと類似している。また、２つの新たなフィールドが存在している。パリティチェックフィールド１４５は、パケット２０内の情報ブロックのエンコーディングによって生じるパリティチェックバイトを含む。情報ブロックとしては、例えば、プリアンブルフィールド１１０、ＳＦＤフィールド１１５、ヘッダーフィールド１２０、データフィールド１２５およびＦＣＳフィールド１３０を挙げることができる。代表的な実施形態においては、これらの５つのフィールドの全てがエンコードされたブロックである。フィールド１５０は、停止符号フィールド１３５に類似する第２の停止符号フィールドであり、パリティチェックフィールド１４５の範囲を画定する。
パケット２０のＦＥＣエンコーディングの過程で、エンコードされるフィールドが複数のｋ−バイトフレームに分割され、これらの各フレームは、１つのｎ−バイトフレーム／コードワードへとＦＥＣエンコーディングされる。これによって生じるフレーム当りの（ｎ−ｋ）個のパリティチェックバイトがパリティチェックフィールド１４５にひとまとめにされる。なお、後に詳述するリードソロモンコードの場合には、（ｎ−ｋ）＝２ｔである。ここで、ｔは、コードの補正長である。すなわち、ｔは、受信されたフレーム当りの保証された訂正可能なエラーの最大数である（コードのハミング距離は、２ｔ＋１に等しい）。
最後のフレーム（または、できれば、シングルフレームパケット全体）は、ｋバイトより短くてもよい。この場合、短いフレームは、ｋバイトにゼロパッドされ、この短いフレームのために、通常の方法で、２ｔパリティチェックバイトが生成される。ゼロパッドするバイトは、送信されないことが好ましい。したがって、パディングは、仮想ゼロパディングとなる。短いフレームは、その長さにしたがって、一定または可変の異なるＦＥＣコードを用いて、コーディングされてもよい。全てのフレームが同じ長さの場合、Ｌバイト長さのパケットにおけるパリティチェックバイトの追加の数は、
2005524281.tif 000003
である。この明細書の後半では、リードソロモン（２５５，２５５−２ｔ，ｔ）コードにおける短いフレームを用いたラインレートコーディングおよびデコーディングを維持できるコーダおよびデコーダの実行について説明する。また、複数の短いフレームによって生じるレート損失変化の均衡を保つための方法についても説明する。
【０００９】
フィールド１４５のパリティチェックバイトは、５つの全てのフィールド１１０、１１５、１２０、１２５及び１３０のＦＥＣブロックエンコーディングを表していることが好ましいが、これは本発明の要件ではない。すなわち、ＦＥＣエンコーディングスキームの適用においては、１つまたは複数の任意のフィールド１１０、１１５、１２０、１２５及び１３０をブロックとして処理することができる。
特定のタイプの系統的なブロックエンコーディングは、本発明の演算にとって重要ではないが、代表的な実施形態において、エンコーディングスキームは、リードソロモンコードを使用する。ガロアフィールドの数学に基づくリードソロモンコードは、それらのための効果的なデコーディングアルゴリズムが存在し、且つ知られているため、重要である。これらのコードについての説明に関しては、例えば、チェンら(Chen et al.)に対して付与された米国特許第4,142,174号、ディダール(Deodhar)に対して付与された米国特許第4,567,594号、I.S.Reed and G.Solomon, Polynomial Codes Over Certain Finite Fields(I.S.Reed and G.Solomon、特定の有限フィールドにわたる多項式コード)、8J.Soc'Y INDUS. APPLICATION MATHEMATICS 300, 300-04(1960)(8 J. Soc'Y INDUS.アプリケーションマセマティクス300, 300-04(1960))を参照されたい。（チェン特許、ディダール特許および引用文献は、この明細書と共に提出され、本明細書に完全に記載されているかのように、参照として本出願に組み込まれる）。コーディングスキームおよびデコーディングスキームについての付加的な説明は、SHU LIN & DANIEL J. COSTELLO, JR., ERROR CONTROL CODING: FUNDAMENTALS AND APPLICATIONS, (Prentice-Hall, Inc. 1983)(シュウ  リン＆ダニエル  ジェイ  コステロ  ジュニア、エラー制御コーディング：基礎および応用（プレンティスホール社、１９８３年）)から得られる。好ましい実施形態において、使用されるリードソロモンコードは、ＧＦ（２8）−（２５５，２５５−２ｔ，ｔ）コードである。この表記において、ｎ＝２５５、ｋ＝（２５５−２ｔ）およびｔは、前述したように、エンコードされたブロックにおける訂正可能なエラーの最大数である。
【００１０】
パリティチェックバイトのひとまとめと共に、系統的なブロックコードを使用すると、ＦＥＣエンコーディングされたパケット２０の最初の部分（フィールド１０５、１１０、１１５、１２０、１２５、１３０および１３５を含む部分）を、図１のエンコードされていないパケット１０の同様のフィールドとほとんど区別できなくなる。したがって、イーサネット（登録商標）ネットワーク上のパケット２０を監視するレガシーネットワーク要素は、パケットのプリアンブルにおける宛先アドレスに基づいて、透過的にパケットを受信し、または破棄する。レガシーネットワーク要素は、パケット２０を受信する場合には、パケットのパリティチェックバイトを単に無視することができる。受信器が受信したパケットをデコードしないレガシ−ネットワーク要素であることを、パケットの送信器が了解している場合には、エンコーディングに伴うレート損失を避けるため、パケットがエンコードされないことが好ましい。同様に、受信ネットワーク要素がＦＥＣデコーディングを行なうことができるが、例えば送信器に対する受信要素の近接性といったネットワークのアーキテクチャのパラメータに起因して、前記受信ネットワーク要素が改善されたＢＥＲを必要としない場合であっても、送信器から受信要素に送られるパケットがエンコードされないことが好ましい。実際、パケットをエンコードするという決定は、例えば、一対のネットワーク要素が双方向でビット誤り率を計算するために十分な数のパケットをやりとりした後に、動的に行なうことができる。
本発明の一実施形態において、幾つかのＦＥＣコードは、同じイーサネット（登録商標）ネットワーク上で使用され、あるいは、ネットワークの同じネットワーク要素によっても使用される。例えば、送信器は、予めプログラムされたスケジュールにしたがって複数のＦＥＣコード間で切り換えることができる。この場合、前記スケジュールは、エンコードされたパケット長に基づいており、あるいは、送信器と受信器との間での動的な情報のやりとりによって決定される。最後のケースにおいては、例えば、登録プロセス中に受信器と送信器との間で特定のＦＥＣコードを取り決めることができる。
【００１１】
フレーミングおよびパリティチェックバイトをひとまとめにすることは、受信器側の遅延を増し得る。これは、デコーダがＦＥＣコードをデコードし得る前にパケット全体を受信する必要があるためである。したがって、更なる遅延は、少なくとも１つのパケット長である。ギガビットイーサネット（登録商標）ネットワークにおいて、長いパケットに伴う遅延は、おおよそ、１５００（バイト／パケット）＊８（ビット／バイト）＊１（ｎｓｅｃ／ビット）＝１２μＳｅｃである。
無論、受信器は、パケットをデコードしないことを決定することができる。例えば、パケットをデコードしないという決定は、パケットが破壊されなかったことをパケットのＦＣＳが表示した後に行なうことができる。
前述したように、ＦＥＣエンコーディングによって生じるレート損失は、エンコードされたパケットにおいてのみ生じる。ＢＥＲの改善を必要としないネットワーク要素、あるいは、ＦＥＣエンコーディングまたはデコーディングを行なうことができないネットワーク要素は、関連するコードレート損失を受ける必要がない。なお、この明細書に記載されるＦＥＣフレーミングにより、ＦＥＣが可能なネットワーク要素およびＦＥＣが不可能なネットワーク要素は、同じネットワークを共有することができることに注目されたい。
実際のコードレート損失は、パケット長およびＦＥＣコードの冗長性によって決まる。図３は、コードレート損失と、リードソロモン（２５５，２３９，８）コードでエンコードされたパケットにおけるパケット長との間の関係をプロットしたものである。後述するように、実際のレート損失は、パケット間ギャップインターバル中に、パリティチェックバイトを送信することによって改善することができる。
【００１２】
図４ａは、イーサネット（登録商標）ネットワーク要素の階層図である（図示の様々な略語は、ＩＥＥＥ８０２．３規格においても規定されている）。図４ｂは、本発明に係るイーサネット（登録商標）ネットワーク要素の階層図である（図４ａおよび図４ｂにおける同様の数字は、同一または類似の要素を示している）。なお、図４ａに示される物理コーディング・サブレーヤ（ＰＣＳ）４２０および他の基本的な層に対してＦＥＣ構成要素４２２が加えられている。ＦＥＣコーディングされたパケットを送信または受信する時だけ、ネットワーク要素は、ＦＥＣ構成要素を使用する必要があり、また、構成要素４２２がＦＥＣコーディングされていないパケットに対して透過的であるという意味では、ＦＥＣ構成要素４２２は、任意的なものである。
代表的な実施形態において、ＦＥＣコーディングは、物理コーディング・サブレーヤ（ＰＣＳ）４２０よりも上で実行される。これは、物理媒体依存（ＰＭＤ）変調コーディング機能を維持するとともに、ＦＥＣが不可能なネットワーク要素に対する送信されたパケットの適合性を維持するために、ＰＣＳラインコード（１０００ＢａｓｅＸにおいて８Ｂ／１０Ｂ）が使用されるからである。したがって、送信中においては、ＦＥＣエンコーダがラインコードエンコーダ（例えば、８Ｂ／１０Ｂエンコーダ）の前にきて、受信中においては、ＦＥＣデコーダがデコーダ（例えば、８Ｂ／１０Ｂデコーダ）の後にくる。
【００１３】
ＦＥＣエンコーディングは、エンコードされたパケットのペイロードレートを減少させてしまうため、受信器および送信器の双方は、それらの対応する媒体アクセス制御（ＭＡＣ）と物理層（ＰＨＹ）レートとを整合させるためのレート適合メカニズムを有していなければならない。送信中に使用できるレート適合方法は、例えば、ＭＡＣ層でのＩＰＧストレッチングを含む。このオープンループ方法において、ＭＡＣは、パケット長に直線的に比例して、パケットの最後にＩＰＧを広げる。挿入されるアイドルバイトの数は、ＦＥＣコードレートおよびパケット長により、パケット毎に決定される。
他の送信器側レート適合方法は、新たなデータバイトを送信できるＰＨＹの能力に基づいてデータ送信を可能にし、また無効にするために、ＰＨＹからＭＡＣへの制御信号を使用する。制御信号は、例えば、ＣＲＳまたはＣＯＬ信号であってもよい。ＰＨＹは、ＰＨＹがデータを受け入れることができる時だけ、ＭＡＣがデータをＰＨＹに送信できるように、制御信号をアサートし、あるいはネゲートする。ＰＨＹ送信バッファが一杯である場合には、例えば、ＰＨＹにより、ＭＡＣは、あるデータがＰＨＹから物理チャンネルへと解放されるまで、新たなバイトを送信できない。その後にのみ、ＭＡＣ送信が可能である。したがって、この方法は、フィードバック制御に依存しており、クローズドループ方法である。
受信器においては、ＦＥＣ残留データの代わりに、アイドルバイトをＰＨＹからＭＡＣへと挿入することにより、レート適合を行なうことができる。ＦＥＣ残留データは、例えば、パリティチェックバイト、後述する拡張開始シーケンスおよび拡張停止シーケンスを含む。
ＦＥＣパケットを受信する非ＦＥＣネットワーク要素は、パケットを正確に検出する。このネットワーク要素において、パリティチェックバイトは、False_carrier_detectモード（RX_ERがアサートされ、RX DVがデアサートされる）で規則的な物理コーディング・サブレーヤ（ＰＣＳ）において検出される付加的なデータを構成する。ＰＳＣ層のFalse_carrier_detectモードは、調整層によって無視され、また、ＭＡＣは、パリティチェックバイトを受信しない。以下では、表１において、前述した代表的な実施形態のフレーミングにしたがってＦＥＣエンコーディングされたイーサネット（登録商標）パケットの入力により起動されるＰＣＳの状態表を示す。この表は、そのようなデータストリームを受信するＦＥＣが不可能なイーサネット（登録商標）ネットワーク要素のＰＣＳの出力を示している。本明細書のこの表および他の同様な表において使用されている表記は、ＩＥＥＥ規格、例えば、物理コーディング・サブレーヤについて記載している規格の第３６章に規定されている。この表記は、当業者に知られている。
【００１４】
【表１】
2005524281.tif 000004
イーサネット（登録商標）規格は、特定の意味を持つ幾つかの符号を使用する。例えば、パケット開始とパケット終了との境界を画定するために、特定の符号が存在する。特定の意味を持つ他の符号は、オクテット同期のために使用されるカンマ符号である。代表的な実施形態において、これらの符号は、ＦＥＣエンコーディングされない。したがって、ＦＥＣデコーディング前に必要とされ得るこれらの機能は、保持される。ＦＥＣエンコーディングの欠如は、これらの特定の信号が、ＦＥＣエンコーディングにより生じるＢＥＲ改善によって利益を得ないことを意味する。これらの符号の検出中にＦＥＣエンコーディング以外の手段によってエラーの可能性を減らすことが望ましい場合がある。
特定の符号の誤り率を減少させる１つの方法は、開始符号および停止符号を、１０Ｂという幾つかの短いシーケンスまで拡張することである。これらのシーケンスを検出中に互いにこれらのシーケンスを関連付けることにより、特定の符号の誤り率を減らしてもよい。非ＦＥＣネットワーク要素との適合性を残すため、拡張されたシーケンスは、ＰＣＳ層でFalse_carrier_detectモードを維持しなければならず、また、False_carrier_detectモードは、調整層によって無視されなければならない。
このような拡張された“パケットの開始（Start of Packet）”シーケンスの一例は、以下のようなものであってもよい。
2005524281.tif 000005
拡張された“パケットの停止（Stop of Packet）”シーケンスおよび“Stop of parity check bytes”シーケンスの一例は、以下のようなものであってもよい。
2005524281.tif 000006
オクテット同期のカンマ符号は、何度も繰り返されるため、そのまま使用されてもよく、それにより、誤検出または非検出の可能性を低くすることができる。
【００１５】
図５および図６は、ＦＥＣ  ＰＣＳ構成要素４２２の送信経路および受信経路におけるデータフロー図をそれぞれ示している。送信経路では、ステップ５１０において、調整層から受信されたデータに対してレート適合メカニズムが適用される。その後、ステップ５２０において、ＦＥＣ（ｎ，ｋ，ｔ）エンコーダによってデータがエンコードされ、また、ステップ５３０において、パリティチェックバイトがデータに対して加えられる。ステップ５４０において、データラッパーは、パリティチェックバイトを、パケットの最後へと移動させ、開始符号および停止符号を加える。次に、ステップ５５０において、ラインコードエンコーダ（例えば、８Ｂ／１０Ｂエンコーダ）は、送信のためにパケットをエンコードするとともに、そのパケットを物理媒体接続（ＰＭＡ）インターフェースへと転送する。
受信経路では、ステップ６１０において、ＰＭＡインターフェースから受信されたデータがラインコードデコーディング（例えば、８Ｂ／１０Ｂデコーディング）される。その後、ステップ６２０において、データアービトレータがパケット境界を検出する。ステップ６３０において、データは、各ＦＥＣフレーム毎に、複数のパリティチェックバイトおよびデータバイトに分けられる。ステップ６４０においては、アイドルバイトがパッドされて、付加的なＦＥＣバイトに置き換えられ、全てのパケットが受信されるまでパケット遅延バッファ内にフレームがバッファリングされる。ステップ６５０では、バッファリングされたパケットに対してＦＥＣデコーダが適用される。最後に、ステップ６６０において、ＦＥＣデコーディングされたパケットが調整層インターフェースに引き渡される。
【００１６】
図７は、ＦＥＣが可能なイーサネット（登録商標）ＰＣＳの送信orderd_set状態マシンの実行を示している。ＩＥＥＥ８０２．３規格に規定されるorderd_setsは、一般に、パケットの説明と、リンクの両端での送信器回路と受信器回路との間の同期を示している。これらは、１つの特定のコードグループまたは複数の特定のデータコードグループの組み合わせを含む。／Ｋ２８．５／コードグループを含むorderd_setは、ビットおよびコードグループ同期を得ることができ、且つorderd_setアライメントを達成することができる。
図８ａ、図８ｂ及び図８ｃは、本発明に係るネットワーク要素のＰＳＣ受信状態マシンに統合されたＦＥＣ受信状態マシンの実行を示している。図８ａ〜図８ｃの受信状態マシンにより、ネットワーク要素は、ＦＥＣエンコーディングされたイーサネット（登録商標）パケットおよびＦＥＣエンコーディングされていないイーサネット（登録商標）パケットの双方を受信することができる。ＦＥＣエンコーディングされたイーサネット（登録商標）パケットフォーマットと従来のイーサネット（登録商標）パケットフォーマットとの間の違いにより、ＦＥＣが可能なネットワーク要素は、ＦＥＣエンコーディングされていないパケットを検出して解釈実行することができる。ＰＣＳ同期状態マシンは、受信された（プレＦＥＣ）パケットの更に高いＢＥＲでエラーを反映しないようになっていなければならない。
以下の表２は、上述した好ましい実施形態のフレーミングにしたがってＦＥＣエンコーディングされたイーサネット（登録商標）パケットを入力することにより起動されるＦＥＣエンコーディングされたＰＣＳの状態表を示している。この表は、各各ワード毎にデータストリームを受けるＦＥＣ  ＰＣＳ層のための出力を示している。
【００１７】
【表２】
2005524281.tif 000007
【００１８】
ＢＥＲを向上させるために、あるいはリンクバジェットを増大させるためにＦＥＣコーディングを使用することは、新しいイーサネット（登録商標）デバイスに限定されない。実際には、レガシーネットワーク要素は、従来のイーサネット（登録商標）インターフェースを有する外部ＦＥＣ可能適合デバイスを用いて改良することにより向上させることができる。外部適合デバイスは、本質的に、レガシーネットワーク要素とイーサネット（登録商標）ネットワークとの間に介挿されたＦＥＣコーダ／デコーダである。ＦＥＣエンコーディングされたパケットをネットワークから受信する際、外部適合デバイスは、パケットの境界を検出し、ＦＥＣコードをデコードし、残留ＦＥＣデータ（すなわち、パリティチェックバイトおよび開始・停止符号シーケンス）の代わりにアイドルバイトを挿入する。レガシーネットワーク要素がパケットを送信すると、外部適合デバイスは、パケットの境界（すなわちパケットの開始符号シーケンスおよび停止符号シーケンス）を検出し、パリティチェックバイトを計算し、それらをパケットの最後に加えて、パケット符号シーケンスが新たに開始および終了する。
また、外部デバイスは、データ送信中に、イーサネット（登録商標）ネットワークと非ＦＥＣレガシーデバイスとの間のレート適合を行なう。レート適合は、バッファを用いて、例えば、先入先出デバイス（ＦＩＦＯ）を用いて行なわれている場合もある。レガシーネットワークからのデータフローを可能にし、且つ無効にするため、外部デバイスは、長期レート適合メカニズムとして、従来のイーサネット（登録商標）インターフェースのイーサネット（登録商標）フロー制御信号、例えばポーズ信号を使用してもよい。したがって、外部デバイスは、レガシーネットワーク要素からのデータフローを停止して、バッファの超過を防止することができる。
続いて、リードソロモン（ｎ，ｋ，ｔ）コードを用いた全長フレームおよび短いフレームのラインレートエンコーディングおよびラインデコーディングのための柔軟な方法について説明する。この方法は、特定のハードウェアの実行に依存することなく、一般的なケースのエンコーダおよびデコーダに関して説明する。
【００１９】
エンコーダにおいては、エンコードされるフレームがｒ個（ｒ＜ｋ）の有効なデータバイトを含んでいる時に、短くされたコードが生成される。残りの（ｋ−ｒ）個のバイトは、０バイトとして処理され、送信されない。したがって、短いフレームの最初の（ｋ−ｒ）バイトが０バイトであり、最後のｒバイトがデータバイトである。コーディングスキームは、ｇ（ｘ）・ｍ（ｘ）＝Ｘn-k・Ｄ（ｘ）＋Ｐ（ｘ）という系統的な形式を成している。式中、Ｐ（ｘ）は、付加的なパリティチェックバイトである。パリティチェックバイトは、ｇ（ｘ）を用いて１つのフレームのデータを分割することによって得られる。式中、ｇ（ｘ）は、リードソロモンコードの生成多項式、すなわち、
2005524281.tif 000008
である。
コードデータ、すなわち、フレームのコードワードは、一般に、全長フレームの場合には、以下のように表わされる。すなわち、Ｃ＝Ｄ0,...,Ｄk-1,Ｐ0,...,Ｐn-k-1となる。短いフレームの場合には、コードデータは、以下のようになる。すなわち、Ｃ＝０,...,０,Ｄ0,...,Ｄr-1,Ｐ0,...,Ｐn-k-1となる。Ｄ（ｘ）の次数がｒ−１であるため、Ｘn-k・Ｄ（ｘ）の次数は、ｎ−ｋ＋ｒ−１である。エンコーダは、一般に、多項式の次数毎に１つのサイクルを使用するため、ｒステップ（すなわち、サイクル）後、ゼロデータを用いる“実質的に”次の（ｋ−ｒ）ステップ後に、短いフレームのエンコーダがエンコーディングマシンを停止してもよい。
デコーダにおいては、受信されたデータがＲ＝Ｒ0,...,Ｒnによって示されるようにするとともに、対応するシンドロームが以下の方程式から得られるようにする
2005524281.tif 000009
【００２０】
短いフレームの場合、デコーダで受信されたデータは、Ｒ＝Ｒ0,...,Ｒn-k+r-1であり、シンドロームは、以下のように計算される。
2005524281.tif 000010
したがって、短いフレームのデコーダは、（ｒ＋２ｔ）個のステップの後に、シンドロームの計算を停止してもよく、したがって、ｎ個のステップを行なう必要がない。このようにして計算されたエラー位置ルートは、最後の（ｒ＋４ｔ）バイトについてのみ有効であり、ｒバイトについてのみエラー値補正が行なわれる。
したがって、エンコーダまたはデコーダがステップ毎にｉ個のクロックサイクルを使用する場合には、２５５バイトの全フレームにおいて、エンコーダまたはデコーダが（ｉ＊２５５）個のクロックサイクルを使用する（例えば、２３９個の情報バイトおよび１６個のパリティチェックバイトを有する）。６４個の情報バイトから成る短いフレームのラインレートコーディング／デコーディングにおいては、約ｉ*（６４＋１６）サイクルでコーディングまたはデコーディングを終了する必要がある。短いフレームのために従来のエンコーダまたはデコーダが使用される場合には、更に速いクロックが必要とされる。
一方、前述したエンコーダおよびデコーダは、更に短い時間で、短いデータフレームをコードしたり、またデコードしたりすることができる。したがって、エンコーダは、ＦＥＣフレームの（ｒ＋２ｔ）バイトに比例する処理時間を必要とする。デコーダは、（ｒ＋２ｔ）サイクルでシンドローム計算を行なうことができ、（ｒ＋４ｔ）サイクルでエラー位置ルート計算を行なうことができ、そしてｒサイクルでエラー値補正計算を行なうことができる。
したがって、短いフレームのための処理時間は、本質的に、フレーム長に比例する。そのため、エンコーダおよびデコーダは、実質的に、ラインレートエンコーディングおよびラインレートデコーディングを行なうことができ、短いフレームにおけるクロック加速を回避できる。
次に、それぞれが全て（Ｎ，Ｎ−２ｔ，ｔ）のリードソロモンコード（変数ｔ≦ｔmax、ｔmaxは特定のエンコーダまたはデコーダにおける最大のｔ）をエンコードおよびデコードすることができる適応性のあるエンコーダおよびデコーダについて説明する。本発明に係る送信ノードの非制限的な実施形態においては、Ｎが２５５に等しい。適応性があるエンコーダおよびデコーダは、ｔmaxに伴う複雑さを有している。
多項式の表現において、コーディングスキームは、ｇ（ｘ）・ｍ（ｘ）＝Ｘn-k・Ｄ（ｘ）＋Ｐ（ｘ）という系統的な形式を成していることを想起されたい。この方程式において、Ｐ（ｘ）は、付加的なパリティチェック符号（オクテットに基づくコードにおけるバイト）を表わしており、ｇ（ｘ）は、生成多項式を表わしている。パリティチェックバイトは、ｇ（ｘ）を用いてデータを分割することによって得られる。リードソロモンコードにおいて、生成多項式は、以下の式によって決定される。
2005524281.tif 000011
【００２１】
ここで、図９に示されるエンコーダ１００を使用して、データバイトＤ0,...,Ｄk-1をエンコードし、Ｃ＝Ｄ0,...,Ｄk-1,Ｐ0,...,Ｐn-k-1の形態のコードワードを得る。エンコーダ１００は、生成多項式ｇ（ｘ）によって、データ多項式の分割を行なう。（ｘ−α）iによって各要素１１０に分割している。
なお、Ｐ（Ｘ）の次数は、（２  ｔ−１）である。Ｐ（ｘ）は、以下の式によって説明できる。
2005524281.tif 000012
エンコードする間に、最初のｋ個のデータバイトは、入力ポート１０２を介して、エンコーダ１００のレジスタ１０６に入力される。次に、２ｔ個のゼロがレジスタ１０６に入力される。これらの（ｋ＋２ｔ）個のステップで、生成多項式ｇ（ｘ）の要素を用いて、全データの分割が達成される。レジスタ１０６内に残るデータは、ｒ0,...,ｒ2t-1である。Ｐ（ｘ）の係数、すなわち、パリティチェックバイトは、以下に示される式および処理を使用して、ｒ0,...,ｒ2t-1データから得られる。
2005524281.tif 000013
段階０において、
2005524281.tif 000014
このようにして、ｒ2t-1＝Ｐ2t-1を得ることができる。
段階１において、
2005524281.tif 000015
このようにして、ｒ2t-2−αｒ2t-1＝Ｐ2t-2を得ることができる。段階（２ｔ−１）まで処理が続けられる。
我々の適応性があるエンコーダにおいて、これらのステップは、スキームにおいてデータを後へ移動させることにより（ｘ−α）iを乗じるという機能を実行する更なる２ｔ個の段階によって行なわれる。エンコーダの左側（すなわち、エンコーダ１００の当初の入力部１０２）で受信されたデータは、Ｐ（ｘ）係数である。
要素１１０は、互いに独立している。したがって、ｔ’＜ｔmaxにおいてエンコーダ１００を使用するために、要素が直列に連結されている。そのため、同じエンコーダ１１０を使用して、任意のリードソロモン（２５５，２５５−２ｔ，ｔ’）コードを（ｔ’＜ｔmax）でエンコードすることができる。
ここで、ｔ’≦ｔmaxにおいて適応性のあるデコーダについて説明する。適応性のあるデコーダは、殆どのデコーダと同様に、３つの段階、すなわち、（１）シンドローム計算段階と、（２）エラー位置検索段階と、（３）エラー重み計算段階とを有している。
【００２２】
デコーダによって受信されたデータがＲ＝Ｒ0,...,Ｒnによって示される場合、シンドロームは、次式から得ることができる。
2005524281.tif 000016
この式から、ｔ’≦ｔmaxデコーダにおけるシンドローム方程式が、ｔmaxデコーダの最初の２ｔ'個のシンドローム方程式と全く同じであるということが容易に認められる。
エラー位置ルートの計算においては、ルート多項式を生成するためにシンドロームが使用される。ｔ’デコーダおよびｔmaxデコーダにおいては、シンドローム方程式が同じであるため、多項式は、最初の２ｔ’個のシンドロームを使用する際には、２つのデコーダに関して同じであり、また、残りのシンドロームにおいてはゼロである。したがって、ルート位置は同じである。
エラー重み計算は、シンドロームの関数であり、ルート多項式係数の関数である。したがって、ｔ’デコーダにおけるエラー重みは、最初の２ｔ’個のシンドロームを使用する際には、ｔmaxデコーダに対するものと同じであり、また、残りのシンドロームにおいては、ゼロである。その結果、重み計算により、２つのデコーダにおける値が同じになる。
したがって、リードソロモン（２５５，２５５−２ｔmax，ｔmax）デコーダを使用して、ｔ’≦ｔにおいて、任意のリードソロモン（２５５，２５５−２ｔ’，ｔ’）コードをデコードすることができる。
【００２３】
本明細書と共に提出され、あるいは本明細書に先立って提出され、且つ本明細書と共に公衆の閲覧に供される全ての書類および文書に注目されたい。それら全ての書類および文書の内容は、参照として本出願に組み込まれる。
本発明について説明したが、その特徴の幾つかは、単に本発明を説明する目的のために、かなり詳細に説明してきたものである。全体として本発明の特定の実施形態およびその特徴は、いずれも本発明に内在する基本的な原理を制限するものではない。特に、本発明の広い範囲は、光ネットワーク、特定のイーサネット（登録商標）規格、前述した特定の状態マシンの実行、あるいは、特定のラインコードに限定されない。本開示内容においては、多くの更なる変更が意図されており、当業者であれば分かるように、ある場合には、他の特徴に対応する使用を欠いた状態で、本発明の幾つかの特徴が使用される。したがって、例示的な本実施例は、本発明の範囲の境界を規定せず、本発明の機能は、本明細書の残りの部分と共に考慮される場合、添付の請求項およびその同等物において保持される。
【図面の簡単な説明】
【００２４】
【図１】イーサネット（登録商標）パケットのフォーマットを示す図。
【図２】本発明に係るＦＥＣエンコーディングを伴うイーサネット（登録商標）パケットのフォーマットを示す図。
【図３】リードソロモン（２５５，２３９，８）コードを用いてエンコードされたパケットにおけるコードレート損失対パケット長との間の関係を示すグラフ図。
【図４ａ】イーサネット（登録商標）ネットワーク要素の階層図。
【図４ｂ】本発明に係るイーサネット（登録商標）ネットワーク要素の階層図。
【図５】ＦＥＣ  ＰＣＳサブレーヤの送信経路におけるデータフロー図。
【図６】ＦＥＣ  ＰＣＳサブレーヤの受信経路におけるデータフロー図。
【図７】本発明に係るイーサネット（登録商標）ネットワーク要素の物理コーディング・サブレーヤの送信orderd_set状態マシンの１つの実施例を示す図。
【図８ａ】本発明に係るイーサネット（登録商標）ネットワーク要素のＰＣＳ受信状態マシンに統合されたＦＥＣ受信状態マシンを示す図。
【図８ｂ】本発明に係るイーサネット（登録商標）ネットワーク要素のＰＣＳ受信状態マシンに統合されたＦＥＣ受信状態マシンを示す図。
【図８ｃ】本発明に係るイーサネット（登録商標）ネットワーク要素のＰＣＳ受信状態マシンに統合されたＦＥＣ受信状態マシンを示す図。
【図９】変数ｔ（ｔ≦ｔmax；ｔmaxは特定のエンコーダにおけるｔの最大値）を有する（Ｎ，Ｎ−２ｔ，ｔ）リードソロモンコードをエンコードできる適応性のあるエンコーダを示す図。
【符号の説明】
【００２５】
１０、２０  イーサネット（登録商標）パケット、１００  エンコーダ、１０２  入力ポート（入力部）、１０６  レジスタ、１０５、１５０  フィールド、１１０  プリアンブルフィールド、１１５  ＳＦＤフィールド、１２０  ヘッダーフィールド、１２５  データフィールド、１３０  ＦＣＳフィールド、１３５  停止符号フィールド、１４０  パケット間ギャップインターバル（フィールド）、１４５  パリティチェックフィールド。
【図１】
2005524281.tif 000017
【図２】
2005524281.tif 000018
【図３】
2005524281.tif 000019
【図４ａ】
2005524281.tif 000020
【図４ｂ】
2005524281.tif 000021
【図５】
2005524281.tif 000022
【図６】
2005524281.tif 000023
【図７】
2005524281.tif 000024
【図８ａ】
2005524281.tif 000025
【図８ｂ】
2005524281.tif 000026
【図８ｃ】
2005524281.tif 000027
【図９】
2005524281.tif 000028
【国際調査報告】
2005524281.tif 000029
2005524281.tif 000030
2005524281.tif 000031