(57)【特許請求の範囲】
【請求項１】
デジタルシンボルのストリームを受信するように構成される入力；
該入力に電気的に接続される送信器並べ換え回路であって、
１以上の該デジタルシンボルを不連続に再配列するように構成されるインターリーバー、
該インターリーバーによって導入される再配列の規則性を乱し、かつ光学受信器の誤りバーストの効果的な分離に利用可能である不規則な置換をもつ交換されたデジタルシンボルを含む並べ換えられたデジタルストリームを生成させるために、該インターリーバーによって出力される複数の該デジタルシンボル出力の位置をリンクパターンに従って該インターリーバーによって出力される他のシンボル出力の位置と交換するように構成されるスクランブラー、及び、
該リンクパターンを生成するように構成され、かつ、複数の該デジタルシンボルの位置を他のデジタルシンボルの位置と交換するために該スクランブラーによる使用のため選択された数のクロックサイクルにて定期的に異なるリンクパターンを該スクランブラーへ提供するように構成される複数の擬似ランダム２進シーケンス回路を含む置換制御器
を含む前記送信器並べ換え回路；並びに、
該送信器並べ換え回路に接続され、該光学送信器への送信のために該並べ換えられたデジタルストリームを光学送信器回路へ出力するように構成される出力
を含む装置。
【請求項２】
該置換制御器は、第１の操作期間中の第１の数のクロックサイクル及び第２操作期間中の第２の数のクロックサイクルにて定期的に異なるリンクパターンを選択するように構成される、請求項１に記載の装置。
【請求項３】
前記置換制御器は、該複数の擬似ランダム２進シーケンス回路により生成される複数のリンクパターンを保存するためのメモリ；及び、
該メモリに機能的に接続され、該複数のデジタルシンボルの位置を他のシンボルの位置と交換するのに使用される該複数のリンクパターンの一つを選択するためのアドレス制御器、
を含む、請求項１に記載の装置。
【請求項４】
該スクランブラーは、少なくとも１つのＢｅｎｅｓネットワーク又はハーフＢｅｎｅｓネットワークを含む、請求項３に記載の装置。
【請求項５】
さらに、前方誤り訂正（ＦＥＣ）回路であって、
送信用のペイロードシンボルストリームを受信し、そして該ペイロードシンボルストリームへＦＥＣコードを適用してフレーム化シンボルとコード化されたシンボルを含むフレーム化シンボルストリームを含む該デジタルシンボルのストリームを生成させるように構成される前記前方誤り訂正（ＦＥＣ）回路
を含む、請求項１に記載の装置。
【請求項６】
該ＦＦＣ回路は、該送信器並べ換え回路へフレーム位置情報を提供するように構成される、請求項５に記載の装置。
【請求項７】
該光学送信器回路は、該並べ換えられたデジタルストリームを受信し、そして、該並べ換えられたデジタルストリームを光ファイバ送信のために光学シグナルに変換するように構成される、請求項１に記載の装置。
【請求項８】
方法であって、
インターリーバーにてデジタルシンボルのストリームの受信する；
複数の擬似ランダム２進シーケンス回路で複数のリンクパターンを生成させる；
該複数のリンクパターンをメモリ内に保存する；
選択された数のクロックサイクルにて定期的に該複数のリンクパターンの異なる１つを該メモリから選択する；
スクランブラーにて、該インターリーバーによって導入される再配列の規則性を乱し、かつ光学受信器の誤りバーストの効果的な分離に利用可能である不規則な置換をもつ交換されたデジタルシンボルを含む並べ換えられたデジタルストリームを生成させるために、該インターリーバーによってリンクパターンに従って複数の該デジタルシンボル出力の位置を他のシンボル出力の位置と交換する；及び、
該並べ換えられたデジタルストリームを出力する
を含む、前記方法。
【請求項９】
さらに、
第１の操作期間中の第１の数のクロックサイクル及び第２操作期間中の第２の数のクロックサイクルにて定期的に異なるリンクパターンを選択する
を含む、請求項８に記載の方法。
【請求項１０】
さらに、
少なくとも１つのＢｅｎｅｓネットワーク又はハーフＢｅｎｅｓネットワークを使用して該インターリーバーによって出力された複数の該シンボルの位置を、該インターリーバーによって出力された該ストリーム中の他のシンボルの位置と交換する
を含む、請求項９の方法。
【請求項１１】
さらに、
送信用のペイロードシンボルストリームを受信する；及び、
該ペイロードシンボルストリームへ前方誤り訂正（ＦＥＣ）コードを適用して該デジタルシンボルのストリームを生成させる、
を含み、
ここで、該デジタルシンボルのストリームは、フレーミングシンボル及びコード化されたシンボルを含むフレーム化シンボルストリームを含む、請求項８に記載の方法。
【請求項１２】
さらに、光学送信器回路にて該並べ換えられたデジタルストリームに基づく光学シグナルを生成させる；及び、
該光学信号を送信器回路へ送信する
を含む、請求項８の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば光学データ送信システムにおける前方誤り訂正（ＦＥＣ）に関する。本発明は、より詳細には、誤りバーストの単一誤りへの分離に関する。誤りバーストは、最尤系列推定（ＭＬＳＥ）に起因し得る。
【０００２】
請求項１のプリアンブル部分による方法が、概して知られている。
【０００３】
ＭＬＳＥ等化器がＷＯ２００５／０１１２２０Ａ１（代理人整理番号：ＣＯ４ＷＯ）中に記載されており、同文献を本明細書中参考のため援用する。ＭＬＳＥ等化器の目的は、符号間干渉（ＩＳＩ）に対処することである。本出願者は、光学的二電気変換のためのフォトダイオードを用いた非コヒーレント光学受信器のためのＭＬＳＥ技術を推奨する。
【０００４】
ＦＥＣコードの基本的考えとしては、ｎ個のメッセージシンボルからなるブロックから送信されるかまたは保存されるべきｍ個のシンボルからなるブロックを計算し、これにより、前記ｎ個のメッセージシンボルからなるブロックをｒ＝ｍ−ｎ個の冗長シンボルだけ拡張する。冗長シンボルは、指定パリティシンボルでもある。そのため、前記ｍ個のシンボルブロック内の限られた数の誤ったシンボルを検出およびさらには訂正することが可能になる。
【０００５】
いくつかのＦＥＣコードが公知である（ウィキペディアの英語版およびドイツ語版を参照）。ＢＣＨ（ボーズ、チョドーリ、オッケンジェム）コードは、符号化理論内において盛んに研究されている誤り訂正コードである。専門用語としてのＢＣＨコードとは、マルチレベルの周期的な誤り訂正用の可変長デジタルコードであり、複数のランダム誤りパターンの訂正に用いられる。ＢＣＨコードはまた、レベル数が素数または素数の累乗である場合は必ず、マルチレベル位相シフトキーイングと共に用いることができる。
【０００６】
リードソロモン（ＲＳ）誤り訂正は、送信または保存すべきデータから構築された多項式のオーバーサンプリングによって機能する誤り訂正コードである。多項式のサンプリングを必要回数よりも多数回行うことによって、当該多項式は過剰決定される。ポイントのうち「多く」が正確に受領されてさえいれば、「数個の」欠点がある場合でも、受信器は元々の多項式を回復することができる。リードソロモンコードは、ＢＣＨコードのサブクラスである。
【０００７】
ＲＳコードは、ランダムおよびバースト誤りの混合物に対処する際に特に有用である。ＲＳコードの不利点として外延的計算があり、これは、リアルタイムおよび高速アプリケーションにおいて障害になり得る。
【０００８】
コンパクトディスクシステムにおいて、誤り訂正および検出は、クロスインタリーブされたＲＳコード（ＣＩＲＣ）によって提供される。ＣＩＲＣは、外側ＲＳ（２４、２８）コード、インタリーブおよび内側ＲＳ（２８、３２）コードからなる。ＲＳ（２４、２８）は、２４バイトからなるブロックを２８バイトからなるブロックに符号化することで、４冗長バイトを付加することを意味する。内側ＲＳ（２８、３２）コードは、外側ＲＳ（２４、２８）コードの符号化された２８バイトブロックを入力するように指定される。インタリーブの間、前記外側コードから得られた２８バイト入力ブロックが、それぞれ２８バイトの１１２出力ブロックにわたって分配される。前記入力ブロックの第１のバイトが、前記第１の出力ブロックの第１の位置に入る。前記入力ブロックの第２のバイトが第５の出力ブロックの前記第２の位置に入り、このような具合で、前記入力ブロックの２８番目のバイトが１０９番目の出力ブロックの２８番目の位置に入るまで繰り返される。
【０００９】
このアプリケーションにおいて、シンボルはビットとほとんど同義に用いられる。当業者であれば、シンボルはより一般的な用語として直角位相シフトキーイングにおける２ビットまたはＲＳコードの文脈における１バイトに対応し得ることを認識する。
【００１０】
いくつかの一般的なＢＣＨおよびＲＳコードについては、高速光学データ送信のための集積回路が開発されている。その結果、国際電気通信連合電気通信標準化部門（ＩＴＵ−Ｔ）は、勧告Ｇ．９７５．１（タイトル：高ビットレートＤＷＤＭサブマリンシステムのための前方誤り訂正）を発表している。この勧告中に、前記高ビットレートＤＷＤＭ（高密度波長分割多重方式）サブマリンケーブルシステムのためのＩＴＵ−Ｔ勧告Ｇ．９７５において規定されているＲＳ（２５５、２３９）コードよりもより高い訂正能力を有するＦＥＣ機能が記載されている。勧告Ｇ．９７５．１の添付Ｉにおいて提案されているコードのうちほとんど全てが、内側および外側コードを有する連結コードである。いくつかのコードは、上記においてＣＩＲＣと関連して説明したような内側および外側コード間のインタリーブを含む。
【００１１】
ＩＴＵ−Ｔ勧告Ｇ．７０９は、フレームアラインメント信号（ＦＡＳ）を（１６進コードにおいて）０ｘＦ６Ｆ６Ｆ６２８２８２８として規定し、これは、４８ビットの連続シーケンスである。Ｇ．７０９に従った標準フレームの長さは、１３０５６０ビットである。
【００１２】
バレルシフタ（例えば、ウィキペディアを参照）は、データワードを指定数のビットだけシフトさせることが可能なデジタル回路である。バレルシフタは、マルチプレクサ（ＭＵＸ）のシーケンスとしてインプレメントすることができる。このインプレメンテーションにおいて、１つのＭＵＸの出力は、シフト距離に依存する様態で、次のＭＵＸの入力に接続される。マルチプレクサの必要数は、ｎ個のビットワードにつきｎ＊ｌｏｇ２（ｎ）である。バレルシフタは、多様なアプリケーション（例えば、マイクプロセッサ中の重要な要素となること）を有する。例えば、浮動小数点加算または減算操作の場合、前記数の仮数をアラインする必要があり、そのためには、より小さい数がより大きな数の指数とマッチするまで、より小さい数を右側にシフトさせてその指数を増加させる必要がある。
【００１３】
テレコミュニケーション分野において、Ｃｌｏｓネットワーク（例えば、ウィキペディアを参照）は、一種の多段切り替えネットワークであり、Ｃｈａｒｌｅｓ  Ｃｌｏｓによって１９５３年に最初に形式化された。Ｃｌｏｓネットワークは、実際の多段電話切り替えシステムの理論的理想化を表す。Ｃｌｏｓネットワークが必要となるのは、物理的回路切り替えのニーズが、最大の実現可能な単一のクロスバースイッチの容量を超えた場合である。Ｃｌｏｓネットワークの主な利点としては、切り替えシステム全体を１つの大型クロスバースイッチでインプレメントした場合よりも、必要な各クロスバースイッチを構成するクロスポイントの数を大幅に削減できる点がある。
【００１４】
Ｃｌｏｓネットワークには、３つの段階（すなわち、進入段階、中間段階および退出段階）がある。各段階は、複数のクロスバースイッチ（単にクロスバーと呼ばれることが多い）で構成される。進入クロスバースイッチに入った各呼は、前記利用可能な中間段階クロスバースイッチのうちいずれかを通じて、関連する退出クロスバースイッチへとルーティングすることができる。
【００１５】
Ｃｌｏｓネットワークは、３つの整数ｎ、ｍおよびｒによって規定される。ｎは、ｒ個の進入段階クロスバースイッチそれぞれに流入するソースの数を表す。各進入段階クロスバースイッチはｍ個の出口を有し、ｍ個の中央段階クロスバースイッチがある。各進入段階スイッチと各中央段階スイッチとの間には、１つだけ接続部がある。ｒ個の退出段階スイッチがあり、これらはそれぞれ、ｍ個の入力およびｎ個の出力を有する。各中間段階スイッチは、各退出段階スイッチに一回だけ接続される。
【００１６】
ｍ≧ｎである場合、Ｃｌｏｓネットワークは、再構成可能に非ブロッキングである。すなわち、進入スイッチ上の未利用の入力は退出スイッチ上の未利用の出力に常に接続することができるが、これを発生させるために、既存の呼をＣｌｏｓネットワーク中の異なる中央段階スイッチに割り当てることにより、既存の呼を再配置構成する必要があり得る。
【００１７】
Ｃｌｏｓネットワークは、任意の奇数の段階に一般化され得る。各中央段階クロスバースイッチを３段階Ｃｌｏｓネットワークと交換することにより、５段階のＣｌｏｓネットワークが構築され得る。同一プロセスを繰り返し適用することにより、７、９、１１．．．段階が可能となる。
【００１８】
ｍ＝ｎ＝２であるこの種の再配置構成可能の非ブロッキングＣｌｏｓネットワークは、一般的にＢｅｎｅｓネットワークと呼ばれる。入力および出力の数は、Ｎ＝ｒｘｎ＝２ｒである。このようなネットワークは２ｌｏｇ２Ｎ−１個の段階を有し、これらの段階はそれぞれ、Ｎ／２  ２ｘ２個のクロスバースイッチを含み、合計Ｎｌｏｇ２Ｎ−Ｎ／２  ２ｘ２クロスバースイッチを用いる。
【００１９】
Ｂｅｎｅｓネットワークは、図１３中に示すように、２個のデータ入力Ｉ１およびＩ２ならびに２個のデータ出力Ｏ１およびＯ２を基本要素として有する切り替え要素ＳＷを用いた標準的接続構造としてみなされ得る。どの入力がどの出力を駆動するかという選択は、制御信号Ｓにより、行われる。Ｓ＝０である場合、Ｉ１はＯ１に接続され、Ｉ２はＯ２に接続される。Ｓ＝１である場合、Ｉ１はＯ２に接続され、Ｉ２はＯ１に接続される。
【００２０】
Ｂｅｎｅｓネットワークそのものは、再帰的構造としてみなされ得、段階ｓは図１４に従って（ｓ−１）段階から導出され得る。前記段階ｓはＮ＝２ｓ個の入力を有することが容易に分かる。ｓ＝２のＢｅｎｅｓネットワークの場合の一例を図１５に示す。
【００２１】
パラメータｓについて、Ｂｅｎｅｓネットワークは以下のインプレメンテーションパラメータを有すると導出することができる。
【数１】
0005464752.tif 000002
【００２２】
技術水準は、疑似ランダム２進シーケンス（疑似ランダムビットシーケンス（ＰＲＢＳ）とも呼ばれる（例えば、ウィキペディアを参照））をさらに含む。２進シーケンス（ＢＳ）は、Ｎビットのシーケンスである。
ｊ＝０、１、．．．、Ｎ−１の場合、ａｊ            （１）
【００２３】
ＰＲＢＳは、要素ａｊの値がその他の任意の要素の値から独立している意味においてランダムであり、リアルランダムシーケンスに類似する。
【００２４】
ＰＲＢＳが「疑似」である理由としては、ＰＲＢＳは決定論的なものであり、Ｎ個の要素の後、再度自身を繰り返し、この点がリアルランダムシーケンス（例えば、放射性崩壊またはホワイトノイズによって生成されたシーケンス）と異なる。ＰＲＢＳは、ｎシーケンス（これは線形シフトレジスタの出力として生成されたｎビットの特殊な疑似ランダム２進シーケンスである）よりもより一般的である。１つのｎシーケンスは、常に１／２デューティサイクルを有し、その要素数はＮ＝２ｋ−１（ｋ≦ｎ）である。リアルインプレメンテーションにおいて、線形シフトレジスタによる効率的生成により、ｎシーケンスがＰＲＢＳとして用いられる。
【００２５】
入力に影響を与えるビット位置のリストは、タップシーケンスと呼ばれ、［１６、１４、１３、１１］であり得る。前記タップシーケンスの全ビットは２を法として付加され、これは、３個のＸＯＲゲートによってインプレメントされ得、各ＸＯＲゲートは２つの入力の排他的論理和をとる。
【００２６】
線形シフトレジスタは、自身が全てゼロを含まない限り（全てゼロを含む場合、自身は変わらなくなる）、全ビットがゼロである状態を除く全ての可能な２ｎ−１状態を通じて、ｎシーケンスを生成し得る。線形シフトレジスタによって生成された数のシーケンスは、グレイコードまたは自然２進コードと同じように有効な２進記数法とみなすことができる。
【００２７】
線形シフトレジスタのタップシーケンスは、多項式の法２として表すことができる。すなわち、前記多項式の係数は１’または０’でなければならない。これは、フィードバック多項式または特性多項式と呼ばれる。例えば、タップが（上記のように）１６番目、１４番目、１３番目および１１番目ビットである場合、その結果得られる多項式は以下である。
１＋ｘ１１＋ｘ１３＋ｘ１４＋ｘ１６          （２）
【００２８】
前記多項式中の「１」は、タップに対応しない。これらの項の乗は、タップされたビットを表し、１から始まる左側からカウントされる。
【００２９】
テレコミュニケーション目的のため、ＩＴＵ−Ｔ  Ｏ−１５０は、ビット誤りレート（ＢＥＲ）およびジッター測定のためのいくつかのＰＲＢＳを規定する。
【００３０】
本発明の目的は、ハードウェアリソースを効果的に利用する向上した受信器、インタリーブおよびデインタリーブ回路および方法を提供することである。
【００３１】
この目的は、独立請求項の内容によって、達成される。
【００３２】
本発明の好適な実施形態は、従属請求項の内容である。
【図面の簡単な説明】
【００３３】
以下、本発明の好適な実施形態について、添付図面を参照しながら説明する。
【図１】本発明の送信システムのブロック図を示す。
【図２】送信器並べ換えブロックのブロック図を示す。
【図３】誤り逆相関器のブロック図を示す。
【図４】シフトブロックの動作を示す。
【図５】本発明のスクランブラーまたはデスクランブラーのための任意のリンクパターンを示す。
【図６】本発明のスクランブラーまたはデスクランブラー内のＢｅｎｅｓネットワークを示す。
【図７】本発明のスクランブラーまたはデスクランブラーのための置換制御器の第１の実施形態を示す。
【図８】置換制御器の第２の実施形態を示す。
【図９】デインタリーバーを示す。
【図１０】本発明のフレーマーを示す。
【図１１】ＯＯＦ状態マシンを示す。
【図１２】ＬＯＦ状態マシンを示す。
【図１３】Ｂｅｎｅｓネットワークの基本要素を示す。
【図１４】Ｂｅｎｅｓネットワーク構造を示す。
【図１５】ｓ＝２であり４つの入力および出力が有る場合のＢｅｎｅｓネットワークを示す。
【００３４】
略語
ＢＣＨ：ボーズ、チョドーリ、オッケンジェム
ＢＥＲ：ビット誤りレート
ＢＳ：２進シーケンス（ビットシーケンスとも呼ばれる）
ＣＩＲＣ：クロスインタリーブされたＲＳコード
ＤＳＰ：デジタル信号プロセッサ
ＤＷＤＭ：高密度波長分割多重方式
ｆ：ライン速度
ｆｋ：ｆ／Ｋ
ＦＡＳ：フレームアラインメント信号（ＩＴＵ  Ｇ．７０９）
ＦＥＣ：前方誤り訂正
ＦＬ：フレーム長さ
ＩＳＩ：符号間干渉
ＩＴＵ：国際電気通信連合
Ｋ：ビット幅、並列パラメータ
ＬＯＦ：フレーム損失
ＬＳＢ：最下位ビット
ＭＳＢ：最上位ビット
ＭＬＳＥ：最尤系列推定
ＭＵＸ：マルチプレクサ
ＯＯＦ：フレーム外
ＰＲＢＳ：疑似ランダム２進シーケンス（疑似ランダムビットシーケンスとも呼ばれる）
ＲＡＭ：ランダムアクセスメモリ
ＲＯＭ：リードオンリーメモリ
ＲＳ：リードソロモン
ｓ：段階数
Ｔ：＝１／ｆＫ＝Ｋ／ｆ；遅延
【００３５】
以下の詳細な説明および図面中に示すような実施形態を参照して本発明を説明するが、以下の詳細な説明および図面は本発明を開示の特定の例示的実施形態に限定するのではなく、記載の例示的実施形態はひとえに本発明の多様な局面を例示するものであり、本発明の範囲は添付請求項によって規定されることが、理解される。
【００３６】
図１は、本発明の光学データ送信システム１のブロック図を示す。送信器は、前方誤り訂正（ＦＥＣ）回路１２と、送信器並べ換えブロック１５と、光学送信器１９とを含む。ＦＥＣ回路１２は、送信対象となるペイロードシンボルストリーム１１を入力し、冗長シンボルが挿入されているフレーム化シンボルストリーム１３を出力する。さらに、ＦＥＣ回路１２は、フレーミングビットを挿入する。これらのフレーミングビットは、受信器側の同期目的のために用いられる。この機能性は、ＦＥＣ回路１２に割り当てられている。ＦＥＣ回路１２は、その結果、フレーム位置情報１４を送信器並べ換えブロック１５に出力する。送信器並べ換えブロック１５について、図２に関連してより詳細に説明する。送信器並べ換えブロック１５は、並べ換えられたシンボルストリーム１６を光学送信器１９に出力する。光学送信器は、１９において、その電気入力を光学信号に変換し、この信号は、光ファイバ５によって前記受信器へと送信される。
【００３７】
前記受信器は、光学受信器２９と、等化器２７と、誤り逆相関器２５と、前方誤り訂正回路２２とを含む。前記受信器は基本的には、前記送信器と同じ動作を逆の順序で行って、ペイロードシンボルストリーム２１を再生する。対応する回路ブロックの参照符号は１０だけ異なる。光学受信器２９は、その光学入力をアナログまたは疑似アナログ出力２８に変換する。等化器２７は、上記したような符号間干渉（ＩＳＩ）に対処する。等化器２７の出力は、指定され、受信され、かつ並べ換えられたシンボルストリーム２６である。このシンボルストリーム２６は、並べ換えられたシンボルストリーム１６から典型的ＢＥＲ１０−３〜１０−６だけ逸脱する。前記ＭＬＳＥ技術の不利点としては、バースト誤りが生成され易い点がある。誤り逆相関器２５は、バースト誤りがフレーム化シンボルストリーム２３内の分離された単一の誤りとして現れるように、バースト誤りを分離する。最後に、別のＦＥＣ回路２２が前記ＢＥＲを所望の値１０−９〜１０−１６に低減する。
【００３８】
図２は、送信器並べ換えブロック１５のブロック図を示す。送信器並べ換えブロック１５は、インタリーバー２０５と、スクランブラー２０３と、置換制御器２０７と、デジタル信号プロセッサ２０８とを含む。フレーム化シンボルストリーム１３および並べ換えられたシンボルストリーム１６は、データ接続によって搬送される。このデータ接続は、本発明の実施形態において用いられるほとんどのデータ接続と同様に、Ｋビットの幅である。また、インタリーバー２０５の出力をスクランブラー２０３へと転送するデータ接続２０４もＫビットの幅である。そのため、クロック周波数ｆｋは、因数Ｋだけライン速度ｆよりも低くなり得る。ライン速度ｆは典型的には１０または４０ＧＨｚの範囲である。クロック周波数ｆｋが低いと、回路設計が簡略化され、電力消費が低減する。Ｋは６４であり得る。
【００３９】
インタリーバー２０５はデインタリーバー３０５と反対であり、デインタリーバー３０５をより詳細に図９中に示す。インタリーバー２０５は、Ｋ個のシフトレジスタを含む。これらのＫ個のシフトレジスタは、ビット０〜ビットＫ−１に対してそれぞれ０〜Ｋ−１とインデックスされる。ビット０に対するシフトレジスタのサイズは０であり、すなわち、このシフトレジスタは遅延を生成せず、よって存在しないものとみなされ得る。ビットｎに対するｎ番目のシフトレジスタのサイズはｎであり、すなわち、このシフトレジスタは遅延ｎＴを生成し、Ｔはクロックレートｆｋの逆数であり、０≦ｎ≦Ｋ−１である。他の実施形態において、各遅延の遅延は、１クロックサイクルの整数の倍数であり得る（すなわち、ｍ＊Ｔ、ｍ≧１）。
【００４０】
スクランブラー２０３の動作は、図５によって例示され得る。スクランブラー２０３は、データ接続２０４上に存在するＫビットを、リンクパターン５０１を用いて交換する。換言すれば、スクランブラー２０３は、並べ換えられたシンボルストリーム１６を出力するために、このようなＫビットの置換を生成する。この置換は、前記受信器中のバースト誤りの効果的分離のために、インタリーバー２０５の規則性を乱すように不規則であるべきである。ＰＲＢＳを用いて、以下に説明するように、この不規則性を達成することができる。
【００４１】
スクランブラー２０３は、Ｂｅｎｅｓネットワーク６０１またはハーフＢｅｎｅｓネットワーク６０２により、デスクランブラー３０３と同様にインプレメントされ得る。ＢｅｎｅｓまたはハーフＢｅｎｅｓネットワーク６０１または６０２がどの置換またはリンクパターンを実際に行うかは、置換制御器２０７によって制御され得る。
【００４２】
置換制御器２０７は、１０Ｔに対応する１０クロックサイクル毎に置換またはリンクパターン５０１を変更する。この１０クロックサイクルにより、送信器および受信器側双方における並べ換えがより不規則に行われる。しかし、受信器側におけるＦＡＳ検出を簡易化するために、ＦＡＳ後のフレーム開始時において、前記置換シーケンスが、ＫＴに相当するＫクロックサイクルの間一定に保持される。この点において唯一重要なのは、前記ＦＡＳを構成するフレーミングビットの位置はスクランブラー２０３によって変更されず、４８Ｔに相当する第１の４８クロックサイクルの間に用いられるリンクパターンは、第１の４８または第１のＫクロックサイクルの間でも、非フレーミングビットをスクランブルできる。フレーミングビットがスクランブルされた場合、フレーマー３０６は前記フレーミングビットを発見する機会を持たない。すなわち、重要なことは、０番目のクロックサイクルにおいて、ビット０はその位置を変えず、第１のクロックサイクルにおいて、ビット１のみがその位置を保持するといった具合に、４７番目のクロックサイクルにおいて最終フレーミングビットであるビット４７がその位置を保持しなければならなくなるまで続くということである。リンクパターンが上記したように１０クロックサイクル毎に変更された場合、第１の１０クロックサイクルに対する第１の置換がビット０〜９を一対一の様態で送信し、１１〜２０クロックサイクルに対する第２の置換がビット１０〜１９を一対一の様態で送信するといった具合に続く。
【００４３】
別の実施形態において、前記リンクパターンは、第１の６４クロックサイクルの間、２クロックサイクル後に変更される。この実施形態では、第１の３２個のリンクパターンそれぞれにおいて、より少ない一対一接続（すなわち、２のみ）が必要であり、そのため、このようなリンクパターンはより不規則となり、これにより、誤り逆相関器２５の性能が向上する。前記リンクパターンを変更するために、ＦＥＣ回路１２は、フレーム位置情報１４を置換制御器２０７に提供する。別の実施形態において、ＦＥＣ前の分離フレーマーが提供され得るが、これは本発明にとって重要ではない。置換制御器２０７および３０７は、図７に示すような様態と同じ様態でインプレメントされ得る。詳細には、接続２１１および３１１は１９２（＝６列ｘ３２列）本の線を含み得、１本の線は、ハーフＢｅｎｅｓネットワーク６０２において各スイッチに対するものである。ネットワーク６０１または６０２が他の実施形態において異なる数のスイッチを含む場合、さらに１本の線を各スイッチに対して設けてよい。
【００４４】
重要なことは、置換制御器２０７および３０７は同期され相補型（ｃｏｍｐｌｉｍｅｎｔａｒｙ）様態で動作するという点である。すなわち、デスクランブラー３０３内のネットワークは、スクランブラー２０３の動作を逆転させる。これは、４本の矢印により図５中にも示され、これらの矢印は、データ接続２０４と、並べ換えられたシンボルストリーム１６と、データ接続３０２および３０４とを示す。この同期を確立する方法について、フレーマー３０６および図１０に関連してより詳細に説明する。
【００４５】
置換制御器２０７は、インターフェース２０９によってデジタル信号プロセッサ（ＤＳＰ）２０８に接続され得る。インターフェース２０９は、リンクパターンをＤＳＰ２０８から置換制御器２０７内へと書き込むだけのために一方向性であってもよいし、あるいは、置換制御器２０７からのリンクパターンの読み出しも行うために双方向性であってもよい。ＤＳＰ２０８は、前記リンクパターンが前記送信器の制御インターフェースによってかつ／またはメンテナンス時において更新され得ることのみを示す。このようにして、特定のＦＥＣコードに対して最適化され得る異なるリンクパターンが、ＤＳＰインターフェースを通じてロードされ得る。ＤＳＰの読み出しおよび書き込みアクセスは、Ｂｅｎｅｓネットワークのための置換制御器２０７からのスイッチ制御値の読み出しを妨害することなく、可能であるものとする。
【００４６】
図３は、誤り逆相関器２５のブロック図を示す。誤り逆相関器２５は、シフトブロック３０１と、デスクランブラー３０３と、デインタリーバー３０５と、フレーマー３０６と、置換制御器３０７と、ＤＳＰ３０８とを含む。シフトブロック３０１は、データ接続３００上の受信された並べ換えられたシンボルストリーム２６を受信し、図４に関連してより詳細に説明するように、ＦＡＳシーケンスを発信データ接続３０２中の最上位置上におく。デスクランブラー３０３の動作については図５に関連して説明しており、そのインプレメンテーションについて図６に関連して説明する。デインタリーバー３０５の可能なインプレメンテーションについて、図９に関連して説明する。Ｋビット幅のデータ接続３０２および３０４は、それぞれシフトブロック３０１をデスクランブラー３０３に接続し、デスクランブラー３０３をデインタリーバー３０５に接続する。別のＫビット幅のデータ接続３１４は、フレーム化シンボルストリーム２３の出力をデインタリーバー３０５によってフレーマー３０６およびＦＥＣ回路２２双方に転送する。フレーマー３０６について、図１０〜図１２に関連して説明する。図２および図３中のデータ接続は、デジタル回路において極めて一般的なバスとしてインプレメントされ得る。
【００４７】
例えば、過剰な誤りの場合、この線を論理１に設定することにより、データ接続の再確立またはフレーム外（ＯＯＦ）状態のリセットがＯＯＦライン３１２上のフレーマー３０６によって宣言される。その結果、デスクランブラー３０３は置換制御器３０７によって透明モードに切り換えられ、その結果、フレーマー３０６はＦＡＳサーチを行うことができる。他方、ＦＡＳが各フレーム中に成功裏に検出および発見された場合、フレーマー３０６は、フレーム位置情報１４が送信器内に提供されるのと同様の様態で、インターフェース３１３上のフレーム位置情報を提供する。置換制御器３０７について、図７に関連してより詳細に説明する。接続３１１は、デスクランブラー３０３内の各スイッチに対する１本の線を含む（すなわち、Ｋ＝６４およびハーフＢｅｎｅｓネットワーク６０１に対して、１９２本の線がある）。
【００４８】
置換制御器２０７と同様に、置換制御器３０７は、一方向または双方向インターフェース３０９によりＤＳＰ３０８へと接続され得る。ここでも、ＤＳＰ３０８は、リンクパターンが受信器の制御インターフェースによってかつ／またはメンテナンス時に更新され得ることのみを示している。ここでも、ＤＳＰの読み出しおよび書き込みアクセスは、Ｂｅｎｅｓネットワークに対する置換制御器３０７からのスイッチ制御値の読み出しを妨害することなく、可能であるものとする。
【００４９】
図４は、シフトブロック３０１の動作およびインプレメンテーションを示す。シフトブロック３０１は、シフトインターフェース３１０上のフレーマー３０６からのその制御信号ＰＯＳ＿ＳＨＩＦＴを受信して、ＦＡＳシーケンスをデータ接続３０２中の最上位置上におく。同期状態になると、データ接続３０２上のＦＡＳは、Ｋ−１〜Ｋ−２４搬送０ｂ１１１１０１１０１１１１０１１０１１１１０１１０（＝０ｘＦ６Ｆ６Ｆ６）およびビットＫ−２５〜Ｋ−４８搬送０ｂ００１０１０００００１０１０００００１０１０００（＝０ｘ２８２８２８）と共に、ビットＫ−１〜Ｋ−４８上に現れる。この目的のため、２Ｋ−１ビット幅の選択接続４０１が形成され、バレルシフタ４０３の入力を構成する。選択接続４０１のビット１〜Ｋ−１は、データ接続３００のビット１〜Ｋ−１に直接接続される。ビット０を含むデータ接続３００の全ビットが、遅延４０２によってクロックサイクルＴだけ遅延される。遅延４０２の出力は、選択接続４０１のビットＫ〜２Ｋ−１において提供される。すなわち、先行クロックサイクルの間に接続３００において存在するシンボルが、選択接続４０１のビットＫ〜２Ｋ−１において提供される。ＰＯＳ＿ＳＨＩＦＴ信号に応じて、バレルシフタ４０３は、選択接続４０１からＫビットを選択し、前記選択されたビットをデータ接続３０２において出力する。
【００５０】
ＰＯＳ＿ＳＨＩＦＴは、０〜Ｋ−１の値を持ち得る（すなわち、Ｋ＝６４の場合、ＰＯＳ＿ＳＨＩＦＴは、０〜６３までの値を持ち得る）。この場合、シフトインターフェース３１０は６ビット幅である。以下の表は、インプレメンテーションの例である。
【表１】
0005464752.tif 000003
【００５１】
図６は、スクランブラー２０３またはデスクランブラー３０３内のＢｅｎｅｓネットワーク６０１を示し、Ｋ＝６４入力および出力ビットに対する１１段階それぞれにおける３２個のスイッチのみを示している。データ処理について、スイッチ（３２、ｘ）が６４ビットデータベクトルのデータビット６３および６２を処理し、スイッチ（３１、ｘ）はデータビット６１および６０を処理し、このように処理が継続し、最後に、スイッチ（１、ｘ）がデータビット１および０を処理する。スイッチ（Ｒ、Ｃ）は、（ハーフ）Ｂｅｎｅｓネットワーク６０２または６０１内の行Ｒおよび列Ｃ内のスイッチである。
【００５２】
シミュレーション結果によれば、僅かに限定された数の置換またはリンクパターンをハーフＢｅｎｅｓネットワーク６０２によって提供しても、誤り逆相関器２５のバースト誤りの分離性能は限定されないことが分かった。
【００５３】
最適な分離性能のために、ビットｎがビットｎにリンクされた「少しの」リンクパターンおよび同様のリンクパターンを除外する必要がある。不規則なリンクパターンのみが、最適な分離性能を提供する。上述したように、１つのフレームの第１のＫクロックサイクルの後、１０クロックサイクル毎に置換が変更される。フレーム毎にリンクパターンを一度だけ用いることが望ましい。Ｋ＝６４においてフレーム長さが２０４０クロックサイクルである標準的なＧ．７０９フレームの場合、反復を避けるために、１９８個の異なるリンクパターンが必要となる。もちろん、１９８個は、置換Ｋ！＝１．２６＊１０８９の合計数よりもずっと小さい。そのため、できるだけ似ていない置換を選択すべきである。
【００５４】
図７は、デスクランブラー３０３のための置換制御器３０７を示す（ただし、デスクランブラー３０３が図６に示すようなハーフＢｅｎｅｓネットワーク６０２を含む場合）。置換制御器３０７は、ＲＡＭ（ランダムアクセスメモリ）アドレス制御器７０１と、６個のＲＡＭ７０２〜７０７と、マルチプレクサ（ＭＵＸ）７０８とを含む。上述したように、接続２１１および３１１は１９２本の線を含み、１本の線は、ハーフＢｅｎｅｓネットワーク６０２内の各スイッチのためのものである。合理的な入力で多くの線を得るために、ＲＡＭ全体を６個の単一のＲＡＭ７０２〜７０７に分配させ、これらのＲＡＭ７０２〜７０７それぞれは、３２ビット長の２５６単語を保存することができる。ＲＡＭアドレスは、０〜２５５である。ＲＡＭ７０２〜７０７はそれぞれ、１行のマトリックススイッチを表す、３２ビットに相当する１単語を一度に出力することができる。１単語内において、最下位ビット（ＬＳＢ）（ビット０）はスイッチ（１、ｘ）を制御し、最上位ビット（ＭＳＢ）（ビット３１）はスイッチ（３２、ｘ）、１≦＿ｘ≦６を制御する。
【００５５】
マルチプレクサ７０８は、接続３１１〜０の全ての１９２本の線を切り替えることができ、その結果、ハーフＢｅｎｅｓネットワーク６０２が透明になる。マルチプレクサ７０８は、線７０９によってＲＡＭアドレス制御器７０１によって制御される。ハーフＢｅｎｅｓネットワーク６０２は例えばＯＯＦ状態の間透明に切り替えられ、その結果、後続ブロックにおいてＦＡＳサーチが可能となる。この目的のため、ＲＡＭアドレス制御器７０１はＯＯＦライン３１２に接続される。
【００５６】
ＲＡＭアドレス制御器７０１は、３１３のインターフェース上のフレーム位置情報をさらに受信し、アドレスインターフェース７１０上の各ＲＡＭアドレスを出力する。このＲＡＭアドレスは、少なくとも８ビット幅であり、これにより、各ＲＡＭ中の２５６単語の中から特定の単語を選択する。さらに、ＲＡＭアドレス制御器７０１およびＲＡＭ７０２〜７０７は、インターフェース３０９によってＤＳＰ３０８へと接続される。その結果、ＲＡＭ７０２〜７０７内に保存されているリンクパターンを例えばメンテナンス時に変更し、かつ、電力節約のためデスクランブラーをディセーブルすることが可能となる。ＤＳＰプログラム可能なＲＡＭを利用することによる利点としては、リンクパターンを異なるＦＥＣコードに合わせて最適化することができる点がある。インターフェース３０９により、ＲＡＭ７０２〜７０７からの読み出しおよびＲＡＭ７０２〜７０７への書き込みが可能になる。しかし、別の実施形態においては、インターフェース３０９により、書き込みのみが可能となる。
【００５７】
本発明の特定の実施形態において、以下の多項式によって生成された長さ２１６−１のＰＲＢＳが用いられている。
１＋ｘ＋ｘ３＋ｘ１２＋ｘ１６          （３）
このシーケンスは、コンピュータによって生成され、ビット単位でＲＡＭ７０２〜７０７にロードされる。ＰＲＢＳの第１の３２ビットはＭＳＢから始まるＲＡＭ７０２のアドレス０に書き込まれ、ＰＲＢＳの第２の３２ビットがＭＳＢから始まるＲＡＭ７０３のアドレス０に書き込まれ、１６１番目〜１９２番目のビット（これらは第６の３２ビットである）がＭＳＢから始まるＲＡＭ７０７のアドレス０に再度書き込まれるまで続く。同様に、ＰＲＢＳの次の１９２ビットがＲＡＭ７０２〜７０７のアドレス１へと書き込まれ、ＲＡＭ７０２〜７０７のアドレス２５５が設定されるまで同様に続く。
【００５８】
他のシーケンスに対して測定を行った所、このようなシーケンスが同様に機能した（ただし、これらのシーケンスが反復無しの十分な長さを持っていた場合）。この発見から、ＲＡＭへのＰＲＢＳの書き込みを支配するスキームは誤り分離性能に対して有意な影響を持たないと仮定することができる。
【００５９】
ＲＡＭ７０２〜７０７のサイズから、最小長さの１９２＊２５６（＝３＊２１４）ビットを得る。
【００６０】
他の実施形態において、ＲＡＭを用いずに、ハーフＢｅｎｅｓネットワークを異なる置換制御器によって制御することができる。この場合、このような異なる置換制御器は、ＰＲＢＳを生成するためのフィードバックシフトレジスタに基づき得る。このアプローチの不利点としては、高周波数が必要である点がある。議論されている実施形態において、１９２ビットを生成する必要があり、これらは光学線上のタイムスロット毎に３ビットであり、そのためには、ライン速度の３倍の周波数が必要となる。このような周波数を低減するために、図８に示す置換制御器の第２の実施形態と関連して以下に議論するように、いくつかの線形シフトレジスタを並行に動作させることができる。別の実行可能なアプローチとして、３２ビットまたは６４ビットマイクプロセッサによるＰＲＢＳ計算があり得る。
【００６１】
送信器側上の置換制御器２０７および受信器側上の置換制御器３０７は異なる構造を持ち得るが、同期のために同じＰＲＢＳを生成しなければならない。
【００６２】
フレーム長さは、ＦＬクロックサイクルである。ＦＡＳの第１の発生ビットが処理されたＫビットベクトル中にある場合、フレーム位置は常に０から始まる。１つのフレームはフレーム位置ＦＬ−１において終わり、次のフレームはすぐに再びフレーム位置０において始まる。フレーム長さが６４＋ｘ＊１０クロックサイクル（ｘは正の整数である）とちょうど等しくない場合、最後に付加されているアドレスが１０クロックサイクルよりも短くなる。
【００６３】
フレーム長さが２６１４クロックサイクル（これは、６４＋２５５＊１０）を越えた場合、ＲＡＭアドレス指定をラップアラウンドし、第１のアドレス０から再度始める。ＲＡＭアドレスｒは、０が割り当てられたＦＡＳを有するクロックサイクルの後にクロックサイクルｘから計算され得る。
０≦Ｘ≦６３の場合、ｒ＝０          （４）
６４≦ｘ≦ＦＬの場合、ｒ＝ｆｌｏｏｒ（（ｘ−５４）／１０）ｍｏｄ２５６        （５）
【００６４】
床関数（ｙ）からｙ以下である最大整数が得られる。上記したように、Ｇ．７０９による標準フレームは長さ１３０５６０ビットであり、その結果、並列パラメータＫ＝６４において２０４０クロックサイクルが得られる。１０クロックサイクル毎に置換を変更した場合、２０４単語を各ＲＡＭから読み出す必要があり、各ＲＡＭ内に保存する必要がある。他の実施形において、置換をより迅速にまたは低速に変更してもよい。例えば置換を８クロックサイクル毎に変更した場合、標準フレームにおけるラップアラウンドを回避するため、各ＲＡＭにおいて２５５単語が必要となる。標準フレームよりも大きいフレームにおけるラップアラウンドを回避するために、例えば１１、１２または２０クロックサイクル後に置換をより低速に変更してもよい。
【００６５】
第１の６４クロックサイクルの間の各２クロックサイクル後にリンクパターンを変更する実施形態において、以下の式が適用される。
ｒ＝ｆｌｏｏｒ（ｘ／２）、０≦Ｘ≦６３          （６）
ｒ＝（ｆｌｏｏｒ（（ｘ−６４）／１０）＋３２）ｍｏｄ２５６、６４≦ｘ          （７）
【００６６】
図８は、置換制御器の第２の実施形態を示す。この置換制御器は、全てのリンクパターンをＲＡＭ内に保存するのではなく、１６個の並列ＰＲＢＳ回路７２１、７２２、．．．７３６によってリンクパターンを生成する。これらのＰＲＢＳ回路はそれぞれ、一度に１２ビットを生成し、その結果、ハーフＢｅｎｅｓネットワークのために必要な１９２（＝１６＊１２）ビットとなる。並列性のため、ＰＲＢＳ回路７２１、７２２、．．．および７３６のクロック周波数は、送信器並べ換えブロック１５および誤り逆相関器２５のクロック周波数に相当する。その他の回路図とは対照的に、クロック線７４１が図８中に明示的に示されている。
【００６７】
全てのＰＲＢＳ回路は基本的には、同じ構造、同じ入力および類似の出力を有する。そのため、ＰＲＢＳ回路７２１のみについてより詳細を示す。各ＰＲＢＳ回路の主要要素は線形シフトレジスタ７５２であり、長さは１６ビットである。ビットは入力におけるビット１から出力におけるビット１６まで連続にナンバリングされる。少なくとも２ビットがタップされ、前記２ビットは図８に示す実施形態においてビット１３および１６である。１つ以上のＸＯＲゲート７５３により、タップされたビットは２を法として付加される。その結果が線形シフトレジスタ７５２の入力にフィードバックされる。
【００６８】
全てのＰＲＢＳ回路は同一ＰＲＢＳの非重複部分を生成するため、同一ビットが各ＰＲＢＳ回路内にタップされる。同じ理由のため、新規フレームが開始し、インターフェース３１３が全てのＰＲＢＳ回路７２１、７２２、．．．および７３６を「リセット」した場合、異なる値を各線形シフトレジスタ内にロードする必要がある。この目的のため、初期値を保存するＲＯＭ７５１が提供され、これらの初期値はリセット時に全ての線形シフトレジスタ７５２内に並列にロードされる。そのため、ＲＯＭ７５１は異なる値を保存する。１６ビット線形シフトレジスタによって生成されるＰＲＢＳの最大長さは２１６−１である。そのため、隣接するＰＲＢＳ回路に、開始位置が等距離である（この実施形態において、２１２ビットだけ離れている）同一ＰＲＢＳシーケンス部分を生成させることが望ましい。この条件により、ＲＯＭ７５１内に保存されている値を得ることができる。
【００６９】
クロックは周波数分割器７４３によって因数１２で除算される。加えて、周波数分割器７４３は、新規フレームの開始時においてインターフェース３１３によってリセットされる。その結果、周波数分割器７４３は、クロックサイクル０において開始するフレームの開始後、クロックサイクル０、１２、２４．．．において線７４２上で保存信号を出力する。保存信号が出力されると、各線形シフトレジスタのビット５〜１６が対応するバッファ７５４内に並列にロードされる。次の１２クロックサイクルにおいて線形シフトレジスタ７５２が次の１２ビットを生成している間、バッファ７５４は先行する１２ビットを出力する。
【００７０】
修正回路７４０は、フレームの第１の４８クロックサイクル時においてマルチプレクサ７０８へ出力されたリンクパターンを修正して、これにより、４７番目のクロックサイクルにおいて最後のフレーミングビットであるビット４７がその位置を保持するまで、０番目のクロックサイクルにおいてビット０がその位置を変更せず、第１のクロックサイクルにおいてビット１のみがその位置を保持するといった具合になるようにする。この目的のため、第１の１２クロックサイクルのための第１のリンクパターンを修正して、ビット１〜１２の位置が変わらないようにすることができる。あるいは、それぞれ１２個または６個のリンクパターンを第１のリンクパターンから生成するため、前記修正はクロックサイクル毎にまたは各第２のクロックサイクルにおいて変えてもよい。クロックサイクル１３〜２４、２５〜３６および３７〜４８における第２〜第４のリンクパターンについても同様であり、その際、変更すべきところは変更する。
【００７１】
上記したように、リンクパターンをより迅速に変更することが望ましい場合があり、リンクパターンをより低速に変更することが受容され得る場合がある。そのため、例えば１２個のＰＲＢＳ回路のみが１６クロックサイクル後にリンクパターン変更のために提供され得、２４個のＰＲＢＳ回路が８クロックサイクル後にリンクパターン変更のために提供され得る。バッファ７５４の長さは第１の場合において１６ビットまで拡張する必要があり、第２の場合において８ビットまで低減され得る。
【００７２】
異なるＰＲＢＳを生成するために、さらなる回路を提供して、線形シフトレジスタ７５２のプログラム可能なタッピングが用いられ得る。このような実施形態において、ＲＯＭ７５１がＲＡＭと交換され得、このＲＡＭはＤＳＰ３０８によって書き込まれ得る。
【００７３】
マルチプレクサ７０８は、図７と同様の様式で動作する。
【００７４】
スクランブラー２０３のための置換制御器２０７が置換制御器３０７と唯一異なる点として、スクランブラー２０３がハーフＢｅｎｅｓネットワーク６０２も含む場合、置換制御器２０７はＯＯＦ信号を受信しない点がある。
【００７５】
図９は、デインタリーバー３０５を示す。デインタリーバー３０５は、複数遅延からなる三角形によって示され得る。図９は、データ接続３０４および３１４内のＫ＝６４ビットそれぞれのためのシフトレジスタを暗示する点において、少しだけより詳細な図である。より詳細には、ビット０、Ｋ−４、Ｋ−３、Ｋ−２およびＫ−１それぞれのためのシフトレジスタ８００、８６０、８６１、８６２および８６３が図示されている。ビットｂのためのシフトレジスタは、Ｋ−１−ｂ遅延を含む。各遅延は、１クロックサイクルＴだけ遅延される。他の実施形態において、各遅延の遅延は、１クロックサイクルの整数の倍数であり得る（すなわち、ｍ＊Ｔ、ｍ≧１である）。
【００７６】
上記したように、ビットｂのためのシフトレジスタは、インタリーバー２０５中にｂ個の遅延を含む。そのため、インタリーバー２０５およびデインタリーバー３０５は、Ｋビットそれぞれについて遅延全体Ｔ（Ｋ−１）を提供することにより、相互に補償する。他の実施形態において各遅延の遅延が１クロックサイクルの整数の倍数である場合、遅延全体はｍ＊Ｔ（Ｋ−１）（ｍ≧１）となる。
【００７７】
試験の理由のため、インタリーバー２０５およびデインタリーバー３０５をディセーブルすることができ、その結果各ビットについて０遅延となる。
【００７８】
図１０は、フレーマー３０６を示す。フレーマー３０６は、ＦＡＳサーチブロック９０１と、フレーマー監視ブロック９０２と、警告生成ブロック９０３と、誤りカウンタ９０４と、ＦＡＳ確認ブロック９０５と、遅延９０６とを含む。フレーマー監視ブロック９０２は、ＯＯＦ状態マシン９１２およびフレームカウンタ９１１を含む。誤りカウンタ９０４は、ＬＯＦ状態マシン９２１およびカウンタ９２２をさらに含む。
【００７９】
デインタリーバー３０５およびデスクランブラー３０３が、前記インタリーバー２０５およびスクランブラー２０３それぞれの逆関数をインプレメントしても、前記デインタリーバー後のデータストリームを不規則化することができる。なぜならば、デスクランブラー３０３およびデインタリーバー３０５双方をＦＡＳシーケンスに同期させる必要があるからである。そのため、フレーマー３０６は、データストリーム中のＦＡＳを検出しなければならない。これについて、図１１および図１２中のフレーミング状態マシンに関連してより詳細に説明する。
【００８０】
ＦＡＳサーチブロック９０１は、以下を行う。
・  Ｋ個の並列サーチエンジンによるＦＡＳシーケンスの検出。
・  データバス内におけるどの位置にＦＡＳシーケンスが現れるかの検出。
・  フレーム監視ブロック９０２によるシフト信号のシフトブロック３０１への提供。
・  設定値をフレームカウンタ９１１へ提供して、次のＦＡＳが確実に規定位置上に発見されるようにすること。ＦＡＳサーチブロック９０１は、ＦＡＳの位置に関する情報をフレーマー監視ブロック９０２に提供して、フレームカウンタ９１１を規定オフセットと共に開始させる。
【００８１】
タイミング要件のため、ＦＡＳサーチはＫ＋４７位置について並列に行う必要がある。これは、データバスを遅延９０６によって１クロックサイクル（＝Ｔ）だけ遅延させ、これらを次のクロックサイクルの４７ビットと組み合わせることにより、行うことができる。この点については、図４のシフトブロック３０１に関連してより詳細に説明している。しかし、フレーマー３０６は、ＦＡＳサーチの際に図４に示すバレルシフタ４０３を必要としない。
【００８２】
アラインされていないデインタリーバーがＦＡＳパターンを分離するため、ＦＡＳパターンは４８ビットパターン全体としてサーチすることはできない。そのため、２つの２４ビットパターン（ＦＡＳ＿Ａサーチブロック９４１におけるＦＡＳ＿Ａ＝０ｘＦ６Ｆ６Ｆ６およびＦＡＳ＿Ｂサーチブロック９４２におけるＦＡＳ＿Ｂ＝０ｘ２８２８２８）をサーチする。フレーマー監視ブロック状態がＯＯＦ＝１状態でありかつＦＡＳ＿ＡまたはＦＡＳ＿Ｂが最初にデータ信号中に発生するまで、サーチが行われる。ＦＡＳ＿ＡまたはＦＡＳ＿Ｂが検出されると、直ちに信号ＦＡＳ＿ＦＯＵＮＤがフレーム監視ブロック９０２に提示される。さらに、ＦＲＣＮＴ＿ＳＥＴ値が決定され、前記フレーム監視ブロックに提供され、これにより、フレームカウンタ９１１を適切な値に設定して、データストリームにおける次回のＦＡＳの発生を確実に監視できるようにする。
【００８３】
Ｋ＋４７ビットサーチバス内においてＦＡＳが発見された位置が、シフトインターフェース３１０によってシフトブロックに提示される。
【００８４】
表２は、ＦＡＳ位置に応じてシフトインターフェース３１０上のフィードバック信号ＰＯＳ＿ＳＨＩＦＴを生成する様態のインプレメンテーション例を示す。
【表２】
0005464752.tif 000004
表２：Ｋ＝６４の場合のＦＡＳパターン位置の例
【００８５】
ＰＯＳ＿ＳＨＩＦＴおよび検出されたＦＡＳ＿ＡまたはＦＡＳ＿Ｂに応じて、フレームカウンタが設定すべきＦＲＣＮＴ＿ＳＥＴ値を決定して、これにより、カウンタ値Ｘの反復において次のＦＡＳがブロック９０１への接続の線Ｋ−４８〜Ｋ−１（これは、接続３０２および３１４の線Ｋ−４８〜Ｋ−１に対応する）上で確実に見えるようにすることができる。
【００８６】
一般的式を下に示すが、インプレメンテーションは異なり得る。
【数２】
0005464752.tif 000005
【００８７】
ＦＡＳがミスアラインされたときのＦＡＳ＿Ａ（ＰＯＳ＿ＳＨＩＦＴが０に等しくない）は、そのノミナル位置Ｘの後に常に検出される。Ｘは、ＦＡＳ確認のためにデータバス上でＦＡＳが予期される時間である。１７よりも小さいＰＯＳ＿ＳＨＩＦＴと共に検出されたＦＡＳ＿Ｂは、そのノミナル位置Ｘの後に常に検出される。４０よりも大きいＰＯＳ＿ＳＨＩＦＴと共に検出されたＦＡＳ＿Ｂはそのノミナル位置Ｘよりも前で常に検出される。
【００８８】
ＦＡＳ＿ＡおよびＦＡＳ＿Ｂ双方が検出され、異なるＰＯＳ＿ＳＨＩＦＴ値となった場合、当該結果を無視し、新規のＦＡＳ＿ＦＯＵＮＤ信号およびＰＯＳ＿ＳＨＩＦＴ値を関連ブロックに提供せずに、サーチを継続する。
【００８９】
この例において、リセット後、ＰＯＳ＿ＳＨＩＦＴ＝０をデフォルト値とする。
【００９０】
ＯＯＦ＝０からＯＯＦ＝１への切り替えの場合、ＰＯＳ＿ＳＨＩＦＴを０に設定し、新規のＦＡＳ＿ＡまたはＦＡＳ＿Ｂが発見されて新規のＰＯＳ＿ＳＨＩＦＴ値が決定されるまで、保持する。
【００９１】
ＦＡＳ確認ブロック９０５は、受信されたデータと、入来データ接続３１４の位置Ｋ−１〜Ｋ−４８上の訂正ＦＡＳシーケンスとを比較する。加えて、ＦＡＳ確認ブロック９０５は、フレーマー監視ブロック９０２（これは、次のＦＡＳシーケンスの予期される位置を規定する）から信号ＦＡＳＰＯＳ信号９３５を受信する。フレームの中間部分のどこかでＦＡＳシーケンスを発見するだけでは不十分であり、ＦＡＳシーケンスが有効とみなされるのは、後続フレームの開始部分のみにおいてである。ＦＡＳＰＯＳ信号９３５は、ＦＡＳ確認ブロック９０５に対する活性化信号とみなされ得、ＦＡＳシーケンスが予期されないときにＦＡＳ確認ブロック９０５における電力節約のために用いられ得る。
【００９２】
誤りカウンタブロックに対する出力９３１は、２つの値ＦＡＬＳＥ＿ＯＮＥＳおよびＦＡＬＳＥ＿ＺＥＲＯＳである。これらの値は、ＦＡＳにおける偽１（予期される１の代わりに０が受信される）の数であり、偽０（予期される０の代わりに１が受信される）の各数であり、パルスＦＡＳＣＮＴ＿ＵＰＤＡＴＥＤにより、各フレーム後にカウンタが更新されたことを示す。
【００９３】
前記フレーマー監視ブロックに対する出力９３２はＦＡＳ＿ＯＫであり、良好なＦＡＳを示し、ＦＡＳが非良好である場合、ＦＡＳ＿ＮＯＫを示す。状態１００１において、ＦＡＳの２個の誤りフリー部分ＦＡＳ＿ＡおよびＦＡＳ＿Ｂが状態１００２への移動のために必要となる。状態１００２において、前記受信されたＦＡＳパターンは、良好である（ＯＫ）とみなされるものに対して、複数の受容可能な誤り９３３ＦＡＳＥＲＲ＿ＯＫ＿ＡＬＬＯＷを含み得る。ＦＡＳＥＲＲ＿ＯＫ＿ＡＬＬＯＷは、レジスタマップによって制御信号として提供される。
【００９４】
状態１００３において、ＦＡＳが非良好である（ＮＯＫ）であるかを決定するために、前記受信されたパターンは、前記レジスタマップによって制御信号として提供された複数の受容可能な誤りＦＡＳＥＲＲ＿ＮＯＫ＿ＥＸＣＥＥＤを越えなければならない。
【００９５】
フレーマー監視ブロック９０２は、ＯＯＦを宣言またはクリアするためのＯＯＦ状態マシン９１２と、インターフェース３１３上のフレーム位置情報を構成するフレーム同期制御信号を生成するためのフレームカウンタ９１１とを含む。フレームＦＬの長さ（２つのＦＡＳ間の距離）は、前記レジスタマップからの設定された信号ＦＲＭ＿ＬＥＮＧＴＨによって規定される。ＦＲＭ＿ＬＥＮＧＴＨは、Ｋによって除算されたビットにおけるフレーム長さである。ＦＲＭ＿ＬＥＮＧＴＨの典型的値は２０４０（ｄｅｃ）である。ＦＲＭ＿ＬＥＮＧＴＨは、１２８〜６５５３５の範囲内であり得る。ＦＡＳ＿ＦＯＵＮＤ信号が受信されると、フレームカウンタ９１１は規定値ＦＲＣＮＴ＿ＳＥＴへリセットされる。このＦＲＣＮＴ＿ＳＥＴ値は、前記ＦＡＳが発見された位置に依存する。リセットおよびＦＲＣＮＴ＿ＳＥＴ信号が無い場合、フレームカウンタ９１１は連続モードで動作して、等距離フレームパルスを提供する。外部再同期信号９３４ＤＩＮＴ＿ＲＥＳＹＮＣＨを介して、フレームサーチをマニュアル始動することができる。
【００９６】
誤りカウンタブロック９０４は、ＬＯＦを宣言またはクリアするためのＬＯＦ状態マシン９２１と、規定間隔においてＦＡＳ内に誤りを累積するためのカウンタ９２２とを含む。
【００９７】
誤りカウンタブロック９０４は、その情報をＦＡＳ確認ブロック９０５から受信し、時間間隔ＦＡＳＥＲＲ＿ＴＩＭＥ（最大１秒）の間、ＦＡＬＳＥ＿ＯＮＥＳおよびＦＡＬＳＥ＿ＺＥＲＯＳを累積する。この時間間隔ＦＡＳＥＲＲ＿ＴＩＭＥは、前記レジスタマップによって提供され、静的なものとしてみなされる。各間隔の開始時において、前記カウンタは値ゼロから開始する。誤りカウンタブロック９０４は、累算器値ＦＡＬＳＥ＿ＯＮＥＳ＿ＡＣＣＵおよびＦＡＬＳＥ＿ＺＥＲＯＳ＿ＡＣＣＵを提供する。これらの値は、累積間隔の終了時において真である新規累積値が利用可能となった度に得られる、外部レジスタマップへの最終間隔およびパルスＡＣＣＵ＿ＵＰＤＡＴＥＤの累積結果である。ＡＣＣＵ＿ＵＰＤＡＴＥＤは、レジスタマップ中のイベントビットとしてインプレメントされ、インタラプトを生成し得る。さらなる例示のため、累積間隔の間、最終間隔の結果が、レジスタＦＡＬＳＥ＿ＯＮＥＳ＿ＡＣＣＵおよびＦＡＬＳＥ＿ＺＥＲＯＳ＿ＡＣＣＵを介して提示される。ＬＯＦ＝１の状態である間、前記カウンタはゼロ入力となり（カウンタは保留にされる）、ＬＯＦ＝０である間、カウンタは通常は前記検出された誤りをカウントする。
【００９８】
これらのカウンタは２０ビットのサイズを有し、過剰な誤りが受信された場合に、その最大値において飽和する。
【００９９】
図１１は、ＯＯＦ状態マシン９１２の動作を示す。
【０１００】
以下の外部パラメータが、前記状態マシンを制御する。
１．    レジスタマップ静的によって提供される。
ｏ    ＦＡＳ＿ＣＯＮＦＩＲＭ：ＦＡＳ＿ＯＫを受信する連続フレームの数
ｏ    ＦＡＳ＿ＬＯＯＳＥ：ＯＯＦ＝１を宣言するためにＦＡＳ＿ＮＯＫを受信する連続フレームの数
ｏ    ＦＡＳＥＲＲ＿ＯＫ＿ＡＬＬＯＷ：ＦＡＳ＿ＯＫを未だ宣言するためのＦＡＳにおける可能なビット誤りの数
ｏ    ＦＡＳＥＲＲ＿ＮＯＫ＿ＥＸＣＥＥＤ：ＦＡＳ＿ＮＯＫを宣言するために越えなければならないビット誤りの数
ｏ    ＤＩＮＴ＿ＲＥＳＹＮＣＨ：ＦＡＳサーチのための再同期信号（ポジティブエッジの検出が必要）
２．    ＦＡＳ確認ブロック９０５およびＦＡＳサーチブロック９０１によって提供される。
ｏ    ＦＡＳ＿ＦＯＵＮＤ：初めて検出されたＦＡＳ
ｏ    ＦＡＳ＿ＯＫ：検出されたＦＡＳは正しい。
ｏ    ＦＡＳ＿ＮＯＫ：検出されたＦＡＳは正しくない。
【０１０１】
前記受信器のリセット後または再同期信号９３４の受信後、ＯＯＦが宣言され、その結果ＯＯＦ状態マシンが状態１００１に設定される。状態１００３において不正確なＦＡＳがＦＡＳ＿ＬＯＯＳＥ連続フレームにわたって検出された場合、ＯＯＦ状態マシン９１２も状態１００１に設定される。最後に、単一の不正確なＦＡＳが検出された場合、ＯＯＦ状態マシン９１２は状態１００２から状態１００１へと変わる。
【０１０２】
ＦＡＳが初めて検出された場合、ＯＯＦ状態マシンは状態１００１から状態１００２へと変わる。状態１００２に入ると、フレームカウンタ９１１はその初期値へとリセットされ、フレーム位置情報がシフトインターフェース３１０によってシフトブロック３０１に提供され、インターフェース３１３によって置換制御器３０７に提供される。ＦＡＳ＿ＣＯＮＦＩＲＭ連続フレームが正確なＦＡＳ（＝ＦＡＳ＿ＯＫ）と共に受信された場合、ＯＯＦ状態マシン９１２は状態１００２から状態１００３へと変わる。
【０１０３】
図１２は、ＬＯＦ状態マシン９２１を示す。ＯＯＦ条件が最小ＬＯＦＤＥＴ＿ＴＩＭＥの間続く場合、ＬＯＦが宣言され、ＬＯＦ状態マシンは状態１１０１に切り換わる。ＯＯＦが連続的にＬＯＦＤＥＴ＿ＴＩＭＥだけ不活性になるまで、積分タイマーはリセットされない。ＯＯＦが連続的にＬＯＦＣＬＥＡＲ＿ＴＩＭＥだけ不活性になった場合、ＬＯＦはクリアされ、ＬＯＦ状態マシン９２１は状態１１０２に切り替えられる。ＬＯＦＤＥＴ＿ＴＩＭＥおよびＬＯＦＣＬＥＡＲ＿ＴＩＭＥは、レジスタマップによって提供され、静的なものとしてみなされる。ＬＯＦＤＥＴ＿ＴＩＭＥおよびＬＯＦＣＬＥＡＲ＿ＴＩＭＥは、フレームの数として指定される。ＬＯＦ状態は、レジスタマップに報告される。
【０１０４】
誤り逆相関器２５は、クロックおよびフル同期リセット信号を受信する。このリセットは、必要な状態を達成するために、組み合わせ論理において用いられる。内部状態マシン９１２および９２１ならびに信号をレジスタマップにリセットする必要がある。しかし、全ての保存要素をリセットするのも良い考えである。
【０１０５】
デスクランブラーバイパスが活性化された場合（ＤＩＮＴ＿ＢＹＰＡＳＳ＝１）、デスクランブラー３０３はパワーセーフモードに構成される。これは、デスクランブラー３０３に対するクロックのディセーブリングにより、行われる。これに応じてＶＨＤＬコードを書き込んで、合成によってダイナミッククロックゲーティングをサポートする必要がある。
【０１０６】
バイパスが活性になると（ＤＩＮＴ＿ＢＹＰＡＳＳ＝１）、レジスタマップに対する警告およびカウンタ値は「０」に設定される。
【０１０７】
ＦＡＳサーチブロック９０１は複雑なブロックであり、電力節約が必要である。ＯＯＦ＝０である場合、ＯＯＦが１に設定されるまで、前記サーチ論理をディセーブルにすることができる。これに応じてＶＨＤＬコードを書き込んで、ＯＯＦ状態の制御下での合成により、ダイナミッククロックゲーティングをサポートする必要がある。
【０１０８】
ｓのサイズに応じて、他の実施形態において、以下のインプレメンテーション詳細を導出することができる。
【表３】
0005464752.tif 000006
表３：Ｂｅｎｅｓネットワークのためのインプレメンテーション詳細
並列パラメータＫがＮｏｌｎｐと等しくなるように選択される。
５ビットバーストＰｅｒｍ５ｂｉｔのための置換数を以下のように計算する。
Ｐｅｒｍ５ｂｉｔ＝ＮｏＩｎｐ！−（ＮｏＩｎｐ−５）！          （８）
【０１０９】
ｓ＝３の場合、１つのＧ．７０９フレーム内の置換の反復となる（１６３２０は６７２０よりも大きい）ことが容易に分かる。表３の他の組み合わせは全て、置換が１つのフレーム内において一意でなければならないという要求を満たすことができる。
【０１１０】
ここで遅延デインタリーバーのための誤りの分配について、入来データストリーム中のビットＸ０、Ｘ１、．．．、ＸＲ−１を有する長さＲの誤りバーストが考えられ得る。同期したデインタリーバー３０５を通過した後にビットを分配させる方法についての理解が所望される。遅延デインタリーブ後のＸｒとＸｒ＋１との間の最小距離はＫ−１によって付与される。
【０１１１】
デインタリーバー３０５の構造は、誤りバーストＲ＜＝Ｋを常に個々のビットに分離させる。誤りバーストＲ＞Ｋの結果、デインタリーブ後に隣接ビットＸｒおよびＸｒ＋Ｋ＋１が得られる。
【０１１２】
例えば、Ｒ＝Ｋ＋７である場合、７個の隣接するビット対がＸＫ＋７およびＸ６、ＸＫ＋６およびＸ５といった具合に、ＸＫ＋１およびＸ０まで続く。
【０１１３】
Ｂｅｎｅｓネットワーク６０１が透明モードになると、以下の所与のパラメータセットが達成される。
【表４】
0005464752.tif 000007
表４：モード依存の誤り分配
【０１１４】
当業者にとって、本記載を鑑みれば、本発明のさらなる修正および変更が明らかである。よって、本記載はひとえに例示目的のためのものとして解釈されるべきであり、本発明の一般的実施方法を当業者に教示することを目的としている。本明細書中図示および記載された本発明の形態は、現時点において好適な実施形態であることが理解されるべきである。
【符号の説明】
【０１１５】
１  光学データ送信システム
５  光ファイバ
１１  ペイロードシンボルストリーム
１２  前方誤り訂正（ＦＥＣ）回路
１３  フレーム化シンボルストリーム
１４  フレーム位置情報
１５  送信器並べ換えブロック
１６  シンボルストリーム
１９  光学送信器
２１  ペイロードシンボルストリーム
２２  前方誤り訂正回路
２３  フレーム化シンボルストリーム
２５  誤り逆相関器
２６  受信された並べ換えられたシンボルストリーム
２７  等化器
２８  疑似アナログ出力
２９  光学受信器
２０３  スクランブラー
２０４  データ接続
２０５  インタリーバー
２０７  置換制御器
２０８  デジタル信号プロセッサ
２０９  インターフェース
２１１  接続
３００、３０２、３０４、３１４  データ接続
３０１  シフトブロック
３０３  デスクランブラー
３０５  デインタリーバー
３０６  フレーマー
３０７  置換制御器
３０８  ＤＳＰ
３０９  双方向インターフェース
３１０  シフトインターフェース
３１１  接続
３１２  ＯＯＦライン
３１３  インターフェース
４０１  選択接続
４０２  遅延
４０３  バレルシフタ
５０１  リンクパターン
６０１  Ｂｅｎｅｓネットワーク
６０２  Ｂｅｎｅｓネットワーク
３０２、３０４  データ接続
７０１  アドレス制御器
７０２、７０３、７０４、７０５、７０６、７０７  ＲＡＭ
７０８  マルチプレクサ
７１０  アドレスインターフェース
７２１  ＰＲＢＳ回路
７４０  修正回路
７４１  クロック線
７４２  線
７４３  周波数分割器
７５１  ＲＯＭ
７５２  線形シフトレジスタ
７５３  ＸＯＲゲート
７５４  バッファ
７２１、７２２、．．．７３６  ＰＲＢＳ回路
８００、８６０、８６１、８６２、８６３  シフトレジスタ
９０１  ＦＡＳサーチブロック
９０２  フレーマー監視ブロック
９０３  警告生成ブロック
９０４  誤りカウンタ
９０５  ＦＡＳ確認ブロック
９０６  遅延
９１１  フレームカウンタ
９１２  ＯＯＦ状態マシン
９２１  ＬＯＦ状態マシン
９２２  カウンタ
９３１、９３２  出力
９３３  可能な誤り
９３４  再同期信号
９３５  ＦＡＳＰＯＳ信号
９４１  ＦＡＳ＿Ａサーチブロック
９４２  ＦＡＳ＿Ｂサーチブロック
１００１、１００２、１００３、１１０１、１１０２  状態
【図１】
0005464752.tif 000008
【図２】
0005464752.tif 000009
【図３】
0005464752.tif 000010
【図４】
0005464752.tif 000011
【図５】
0005464752.tif 000012
【図６】
0005464752.tif 000013
【図７】
0005464752.tif 000014
【図８】
0005464752.tif 000015
【図９】
0005464752.tif 000016
【図１０】
0005464752.tif 000017
【図１１】
0005464752.tif 000018
【図１２】
0005464752.tif 000019
【図１３】
0005464752.tif 000020
【図１４】
0005464752.tif 000021
【図１５】
0005464752.tif 000022