(57)【特許請求の範囲】
【請求項１】
ハミング符号を用いた誤り訂正方法において、
SONET及びSDHのいずれかの同期網で規定されたSTS-Nフレーム、OC-Nフレーム、及びSTM-Nフレームのいずれかのフレームを行方向にＬ（Ｌは９以下の自然数）個のハミング符号ブロックに分割し、各ブロックに情報ビット及びチェックビットを、それぞれ、該フレームのペイロード部及びLOH部の未定義ビットに割り振ることを特徴とした誤り訂正方法。
【請求項２】
請求項１において、
該情報ビット及び該チェックビットをそれぞれさらにＭ（Ｍは２以上の自然数）個のサブブロックに分割し、該情報ビット及び該チェックビットの各１サブブロックから成るハミング符号ブロックを構成することを特徴とした誤り訂正方法。
【請求項３】
請求項２において、
連続したＭ個のビット誤り訂正が可能なように各ハミング符号ブロックに渡ってビット単位で該情報ビット及び該チェックビットを並び換えたことを特徴とする誤り訂正方法。
【請求項４】
ハミング符号を用いた誤り訂正装置において、
SONET及びSDHのいずれかの同期網で規定されたSTS-Nフレーム、OC-Nフレーム、及びSTM-Nフレームのいずれかのフレームを行方向にＬ（Ｌは９以下の自然数）個のハミング符号ブロックに分割し、各ブロックに情報ビット及びチェックビットを、それぞれ、該フレームのペイロード部及びLOH部の未定義ビットに割り振る符号誤り訂正手段を有することを特徴とした誤り訂正装置。
【請求項５】
請求項４において、
該符号誤り訂正手段が、ペイロード部の９，１，２行、３〜５行及び６〜８行のＬ＝３個のブロックをハミング符号ブロックに割り振り、各ハミング符号ブロックのチェックビットをLOH部の未定義ビットであるK1,D5及びZ2バイトにそれぞれ割り振ることを特徴とした誤り訂正装置。
【請求項６】
請求項５において、
該符号誤り訂正手段が、該情報ビット及び該チェックビットをそれぞれさらにＭ（Ｍは２以上の自然数）個のサブブロックに分割し、該情報ビット及び該チェックビットの各１サブブロックでハミング符号を構成するハミング符号ブロックを生成することを特徴とした誤り訂正装置。
【請求項７】
請求項６において、
該符号誤り訂正手段が、連続したＭ個のビット誤り訂正が可能なように各ハミング符号ブロックに渡ってビット単位で該情報ビット及び該チェックビットを並び換えるデータ交換手段をさらに有することを特徴とした誤り訂正装置。
【請求項８】
請求項６において、
該符号誤り訂正手段が、受信したハミング符号メッセージを該ハミング符号ブロック毎に区切り、該ハミング符号ブロックの誤りシンドロームを演算し、その演算結果に基づき各ハミング符号ブロックの符号誤り訂正を面切換により行う複数面のシンドロームレジスタを有することを特徴とした誤り訂正装置。
【請求項９】
請求項５において、
該符号誤り訂正手段が、送信メッセージの連続したｘ個の送信情報ビット毎に各時刻における情報ベクトルとし、時刻ｔにおける該情報ベクトル及び出力状態から時刻ｔ＋ｘ後における出力状態を並列に求めることを順次繰り返して該チェックビットを演算するシンドロームレジスタを有することを特徴とした誤り訂正装置。
【請求項１０】
請求項５において、
該符号誤り訂正手段が、受信したハミング符号メッセージをｘ個のビット毎に各時刻における情報ベクトルとし、時刻ｔにおける該情報ベクトル及び出力状態から時刻ｔ＋ｘ後における出力状態を並列に求めることを順次繰り返すことによりシンドロームを演算するシンドロームレジスタを有することを特徴とした誤り訂正装置。
【請求項１１】
請求項５において、
該符号誤り訂正手段が、受信したハミング符号メッセージの１ビット誤り訂正及び偶数ビット誤り検出が可能なシンドロームレジスタ及び１ビット誤り訂正信号及び偶数ビット誤り検出信号を出力する検出手段を有することを特徴とした誤り訂正装置。
【請求項１２】
請求項４において、
該符号誤り訂正手段が、送信側においてハミング符号化の開始及び終了を指定する符号化設定手段をさらに有することを特徴とした誤り訂正装置。
【請求項１３】
請求項１２において、
該符号化設定手段が、ハミング符号化の開始が指定されたとき、LOH部の所定の未定義バイトを固定値に設定し、終了が指定されたとき、該チェックビットを全“０”及び全“１”のいずれかに設定することを特徴とした誤り訂正装置。
【請求項１４】
請求項４において、
該符号誤り訂正手段が、受信側においてハミング符号の復号の開始及び終了を指定する復号設定手段をさらに有することを特徴とした誤り訂正装置。
【請求項１５】
請求項１４において、
該復号設定手段が、復号の開始及び終了動作を強制的な開始及び終了のいずれかで指定する手段を有し、強制的な開始のとき、又は強制的な終了のときで且つ該チェックビットの値が全“１”及び全“０”のいずれでもない場合で且つLOH部の所定の未定義バイトが所定の固定値であるときのみ、復号動作を開始させることを特徴とした誤り訂正装置。
【請求項１６】
請求項４において、
該符号誤り訂正手段が、送信メッセージをハミング符号化した後、LOH部のB2バイト情報によるBIP-Nx24演算を行う手段を有することを特徴とした誤り訂正装置。
【請求項１７】
請求項４において、
該符号誤り訂正手段が、受信メッセージのハミング符号誤り訂正を行った後、LOH部のB2バイト情報によるBIP-Nx24演算を行う手段を有することを特徴とした誤り訂正装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は誤り訂正方法及び装置に関し、特にハミング符号を用いて伝送信号の誤り訂正を行う方法及び装置に関するものである。
【０００２】
例えば、光伝送装置の長距離伝送路においては光ファイバによる損失を光増幅器の縦続接続により補償するが、各光増幅器が発生するノイズは、ネットワーク品質のパラメータである例えばBER(Bit Error Rate：ビット誤り率）を劣化させる。
この問題を解決する有効な方法としては送信装置がメッセージを誤り訂正符号化して送出し、受信装置が受信したメッセージに含まれる誤りビットを検出して訂正する誤り訂正方法及び装置が必要となる。
【０００３】
【従来の技術】
（１）従来の誤り訂正方法としては、例えばIEEE TRANSACTIONS ON COMMUNICATION.VOL.38.NO.4 APRIL 1990 に記載されている「Design and Characterization of an Error-Correction Code for the SONET STS-1 Tributary」 においては、短縮ハミング符号を用いて１フレーム内のTOH部(SOH部,LOH部) 及びLOH部を除いたペイロード部を演算領域とし、 POH部内のZ3とZ4バイトをチェックビットとして前方誤り訂正(Forward Error Corection、以後、FECと略称することがある）を行っている。
【０００４】
（２）また、T1X1.5/94-148 July 12th 1994(ALCATEL NETWORK SYSTEM)に記載されている「A forward error correcting scheme for SONET 10Gb/s Optical Transmission system」においては、短縮ハミング符号を用いて１フレーム内の SOH部を除いたLOH部及びペイロード部を演算領域とし、１フレーム内を行９，１，２、行３〜５、及び行６〜８の３等分とし、行９〜２のチェックビットをSOH内のD3バイト、行３〜５のチェックビットをLOH部内のD6バイト、行６〜８のチェックビットをLOH部内のE2バイトとしてFECを行っている。
【０００５】
（３）また、ITU-T(TELECOMMUNICATION STANDARDIZATION SECTION OF ITU) Recommendation G.975(11/96)に記載されているFORWARD ERROR CORECTION FOR SUBMARINE SYSTEMSにおいては、RS(Reed-Solomon)符号を用いて１フレーム全てを演算範囲とし、伝送速度を増加させた部分をチェックビットとしてFECを行っている。
【０００６】
（４）さらに、公開特許公報（特開平9-130355）に記載されるエラー訂正符号化方法および送受信装置においては、RS符号を用いて、１フレーム内の TOHを除いたペイロード部を演算範囲とし、１フレーム内を２分割し、 LOH部内の未定義バイトをチェックビットとしてFECを行っている。
【０００７】
【発明が解決しようとする課題】
このうちの誤り訂正方法（１）においては、１フレーム以上を一度メモリに保持しなければならないため、転送遅れが139μ秒(=125μ秒×900バイト/810バイト)となる。この値は、転送遅れの規格(ANSI T1.506A-1992,Telecommunication Performance-Specifications for Switched Exchange Network(Absolute Round-Trip Delay),ANSI T1.508-1992)100μ秒以下を満たしていない。
【０００８】
また、誤り訂正方法（２）においては、SOH をチェックビットとして使用している為、中継装置(Regenerater) が伝送路上に有ると、SOH が終端されてしまうためFECを行うことが出来ない。
【０００９】
また、方法（３）においては、チェックビットを伝送速度を増加させて付加しているため、ＳＯＮＥＴ（従ってＳＤＨ）準拠でない装置となり、世界標準から孤立した状態(STAND ALONE)でしか使用することが出来ない。
【００１０】
一般的に、どのような誤り訂正符号を用いれば誤り訂正が効率よく行うことができるか否かは、伝送装置、システム及び伝送路上の誤り発生パターンにより決まる。
誤り訂正方法（３），（４）においては、RS符号を用いている。このRS符号はバースト誤りが発生するシステムに向いており、このようなシステムに採用した場合、ハミング符号と比べてＢＥＲの向上が高い。
【００１１】
しかしながら、RS符号は送信側にもメモリが必要であり回路規模が大きくなる。さらに、RS符号は１キャラクタ内のビット数をｎとした場合、誤りビット数が１〜ｎビットのいずれの場合においても誤り数は１として通知する。従って、RS符号は正確な誤りビット数を計数することが出来ない。
【００１２】
さらに、方法（４）において、伝送速度を622.08Mb/sの整数倍としており、この場合の回路規模は、ハミング符号の規模と比べ、伝送速度が大きくなればなるほどその差は大きくなる。
【００１３】
例えば、光伝送装置においては、光増幅器によるBERの劣化を防ぎ、SD(Signal Degrate：１×10-5〜10-9レートのランダム誤り)による切換の発生回数を減らす必要がある。
一般に、ハミング符号は、ランダム誤り訂正に適した符号であり、訂正したビット数を正確に通知することが出来る。そして、その回路規模は送信側では情報ビットのCRC演算を行いその結果をチェックビットに挿入するだけでよくメモリを必要とせず、RS符号の回路規模と比較して小さい。
【００１４】
従って本発明は、ハミング符号を用いた誤り訂正方法及び装置において、転送遅れを小さくすること、BERを改善すること及び回路規模を小さくすることを課題とする。
【００１５】
【課題を解決するための手段】
上記の課題を解決するため、請求項１に係る本発明の誤り訂正方法は、図１に示す如くSONET及びSDHのいずれかの同期網で規定されたSTS-Nフレーム、OC-Nフレーム、及びSTM-Nフレームのいずれかのフレームを行方向にＬ（Ｌは９以下の自然数）個のハミング符号ブロックに分割し、各ブロックに情報ビット及びチェックビットを、それぞれ該フレームのペイロード部及びLOH部の未定義ビットに割り振ることを特徴としている。
【００１６】
すなわち、ハミング符号は、受信側では誤り訂正を行うとき全ての情報を一時保持する必要がある。その保持分だけの転送遅れが発生する。そこで、１フレームをＬ個のハミング符号ブロックに分割し、１ハミング符号ブロックの大きさを１フレームのＬ分の１とすることで、転送遅れを小さくできる。
【００１７】
ここで、同期網はSONET及びSDHのいずれかであり、フレームはSTS-Nフレーム、OC-Nフレーム、及びSTM-Nフレームのいずれかである。
すなわち、同期網をSONET又はSDHとし、フレームをSONETで規定されたSTS-N及びOC-Nフレームのいずれか、又はSDHで規定されるSTM-Nフレームを採用する。
【００１８】
また、情報ビット及びチェックビットを、それぞれ該フレームのペイロード部及びLOH部の未定義ビットに割り振る。
すなわち、情報ビットをペイロード部に割り振り、伝送中に書き換わる可能性があるB1,B2バイト等を含むSOH部,LOH部には割り振らない。そして、チェックビットをLOH部の未定義ビットに割り振り、中継装置で終端されるSOH部に割り振らない。従って、ハミング符号ブロックが伝送中に書き換えられること及び中継装置で終端されることなく、FECを行うことができる。
【００１９】
請求項２に係る本発明においては、該情報ビット及び該チェックビットをそれぞれさらにＭ（Ｍは２以上の自然数）個のサブブロックに分割し、該情報ビット及び該チェックビットの各１サブブロックから成るハミング符号ブロックを構成することができる。
【００２０】
すなわち、情報ビット及びチェックビットで構成されるハミング符号ブロックをＭ個のサブブロックに分割する。そしてＬ×Ｍ個のサブブロックをハミング符号ブロックとし符号長（従って情報ビット数）を小さくすることができる。
この結果、送受信側で必要となる生成多項式を選定するための原始多項式を次数の少ない簡単な構成にすることが可能となり、例えばシュミレーションがし易くなる。
【００２１】
請求項３に係る本発明においては、連続したＭ個のビット誤り訂正が可能なように各ハミング符号ブロックに渡ってビット単位で該情報ビット及び該チェックビットを並び換えることも可能である。
【００２２】
すなわち、ハミング符号は、ランダム誤り訂正に適した符号であり、１ハミング符号ブロック内の１ビット誤りしか訂正することが出来ない。従って、連続したビット誤りであるバーストの訂正はできない。
【００２３】
そこで、１つのハミング符号ブロックに発生したバースト誤りビットを、Ｍ個のハミング符号ブロックに分散する。すなわち、各ハミング符号ブロックの誤りビット数が１個以下になるように情報ビット及びチェックビットをそれぞれ並び換える。
この結果、Ｍビット連続するバースト誤りビットを訂正することが可能となり、BERをさらに改善することが可能となる。
【００２４】
また、上記の課題を解決するため、請求項４に係る本発明の誤り訂正装置は、SONET及びSDHのいずれかの同期網で規定されたSTS-Nフレーム、OC-Nフレーム、及びSTM-Nフレームのいずれかのフレームを行方向にＬ（Ｌは９以下の自然数）個のハミング符号ブロックに分割し、各ブロックに情報ビット及びチェックビットを、それぞれ該フレームのペイロード部及びLOH部の未定義ビットに割り振る符号誤り訂正手段を有することができる。
【００２５】
すなわち、ハミング符号は、受信側では誤り訂正を行うとき、１ハミング符号ブロック情報を一時保持するシフトレジスタが必要である。そして、その保持分だけの転送遅れが発生する。
そこで、１フレームをＬ個のハミング符号ブロックに分割し、１ハミング符号ブロックの大きさを１フレームのＬ分の１とすることで、回路規模を小さくすることとともに転送遅れを小さくすることが可能となる。
【００２６】
ここで、同期網はSONET及びSDHのいずれかであり、フレームはSTS-Nフレーム、OC-Nフレーム、及びSTM-Nフレームのいずれかである。
【００２７】
また、符号誤り訂正手段は、情報ビット及びチェックビットを、それぞれ該フレームのペイロード部及びLOH部の未定義ビットに割り振る。
【００２８】
すなわち、情報ビットを、Ｌ分割したペイロード部に割り振ることにより、規模の小さい同一のハミング符号用の回路を用意すれば済むとともに、チェックビットを中継装置で終端されるSOH部でないLOH部の未定義ビットに割り振ることにより伝送路上に中継装置がある場合においても、FECを行うことができる。
すなわち、情報ビットをペイロード部に割り振り、伝送中に書き換わる可能性があるB1,B2バイト等を含むSOH部,LOH部には割り振らない。そして、チェックビットをLOH部の未定義ビットに割り振り、中継装置で終端されるSOH部に割り振らない。従って、ハミング符号ブロックが伝送中に書き換えられること及び中継装置で終端されることなく、FECを行うことができる。
【００２９】
また、情報ビットがＬ分割されてペイロード部に割り振られている為、ペイロード部を処理する回路をＬ個の等価な処理回路とすることができる。
【００３０】
請求項５に係る本発明においては、該符号誤り訂正手段が、ペイロード部の９，１，２行、３〜５行及び６〜８行のＬ＝３個のブロックをハミング符号ブロックに割り振り、各ハミング符号ブロックのチェックビットをLOH部の未定義ビットであるK1,D5及びZ2バイトにそれぞれ割り振ってもよい。
【００３１】
すなわち、ペイロード部を９，１，２行、３〜５行及び６〜８行の３個のブロックに分割する。そして、３つのハミング符号ブロックを、各ブロックに割り振られた情報ビットと、LOH部の５行目のK1バイト、６行目のD5バイト及び９行目のZ2バイト割り振られたチェックビットとで構成する。
【００３２】
このように、ハミング符号ブロックを割り振った場合、受信側は最大５行分のメモリを持つことで符号誤り訂正を行うことができる。そして、転送遅れは、69.4μ秒（=125μ秒×５行/９行）となり、前述した規格100μ秒以下を満たしている。
【００３３】
請求項６に係る本発明においては、該符号誤り訂正手段が、該情報ビット及び該チェックビットをそれぞれさらにＭ（Ｍは２以上の自然数）個のサブブロックに分割し、該情報ビット及び該チェックビットの各１サブブロックでハミング符号を構成するハミング符号ブロックを生成することができる。
【００３４】
すなわち、情報ビット及びチェックビットで構成されるハミング符号ブロックをＭ個のサブブロックに分割してハミング符号ブロックとすることにより、１ハミング符号ブロックの符号長を小さくする。
この結果、送受信側で必要となる生成多項式を選定するための原始多項式を次数の少ない簡単な構成にすることが可能となり、回路規模を小さくすることが可能となるともにシミュレーションが容易になる。
【００３５】
請求項７に係る本発明においては、該符号誤り訂正手段が、連続したＭ個のビット誤り訂正が可能なように各ハミング符号ブロックに渡ってビット単位で該情報ビット及び該チェックビットを並び換えるデータ交換手段を備えることができる。
【００３６】
すなわち、データ交換手段が連続した１つのハミング符号ブロックに発生したＭ個のバースト誤りビットをＭ個のハミング符号ブロックに１ビットづつ分散するように並び換える。従って、各ハミング符号ブロックの誤りビットが高々１ビットとなるため誤り訂正が可能となる。
この結果、Ｍビット連続するバースト誤りビットを訂正することが可能となり、BERをさらに改善する。
【００３７】
請求項８に係る本発明においては、該符号誤り訂正手段を、受信したハミング符号メッセージをハミング符号ブロック毎に区切り、該ハミング符号ブロックの誤りシンドロームを演算し、その演算結果に基づき各ハミング符号ブロックの符号誤り訂正を面切換により行う複数面のシンドロームレジスタで構成することができる。
【００３８】
すなわち、シンドロームレジスタは、受信したハミング符号ブロックの情報ビット及びチェックビットを読み込みシンドロームを演算する。そして、この演算結果に基づき該ハミング符号ブロックに含まれる誤りビットを訂正する。
従って、１つのシンドロームレジスタでは、次のハミング符号ブロックの処理を開始する時間が遅れてしまい、フレームの伝送速度に対応できなくなる。
【００３９】
そこで、複数面のシンドロームレジスタを用意し、受信したハミング符号メッセージを該ハミング符号ブロック毎に区切り、各シンドロームレジスタが各ハミング符号ブロックのシンドロームを順次並行して演算しその結果を保持する。
そして、この演算結果に基づき各ハミング符号ブロックの符号誤り訂正を行う。これら一連の動作を完了したシンドロームレジスタは、次のハミング符号ブロックの処理に順次移行する。
この結果、フレームの転送遅れを減少させることが可能となる。
【００４０】
請求項９に係る本発明においては、該符号誤り訂正手段を、送信メッセージの連続したｘ個の送信情報ビット毎に各時刻における情報ベクトルとし、時刻ｔにおける該情報ベクトル及び出力状態から時刻ｔ＋ｘ後における出力状態を並列に求めることを順次繰り返して該チェックビットを演算するシンドロームレジスタで構成することが可能である。
【００４１】
また、請求項10に係る本発明においては、該符号誤り訂正手段を、受信したハミング符号メッセージをｘ個のビット毎に各時刻における情報ベクトルとし、時刻ｔにおける該情報ベクトル及び出力状態から時刻ｔ＋ｘ後における出力状態を並列に求めることを順次繰り返すことによりシンドロームを演算するシンドロームレジスタで構成することも可能である。
【００４２】
すなわち、受信側並びに送信側において、シンドロームレジスタを並列入力並列出力のレジスタとする。そして、時間間隔ｘ毎に送信メッセージの連続したｘ個のビットを並列のデータに変換し時刻ｔの情報ベクトルとする。この情報ベクトルと時刻ｔにおけるシンドロームレジスタの出力状態から時刻ｔ＋ｘ後のシンドロームレジスタの出力状態を演算し、その演算結果を時刻ｔ＋ｘのタイミングでシンドロームレジスタにラッチする。この動作を繰り返すことにより、シンドロームレジスタの出力端子にチェックビット又はシンドロームが並列に出力されることとなる。
【００４３】
すなわち、送信メッセージを誤り訂正符号に変換する処理又は受信メッセージの誤り訂正を行う処理を、ｘビット並列に行うことができる。
この結果、伝送速度の速いフレームの処理速度を誤り訂正符号用のＬＳＩに適応した速度まで遅くすることにより、該ＬＳＩの動作マージンを確保することが可能となる。
【００４４】
請求項11に係る本発明においては、該符号誤り訂正手段が、受信したハミング符号メッセージの１ビット誤り訂正及び偶数ビット誤り検出が可能なシンドロームレジスタ及び１ビット誤り訂正信号及び偶数ビット誤り検出信号を出力する検出手段を有することができる。
【００４５】
すなわち、受信したハミング符号メッセージの１ビット誤り訂正及び偶数ビット誤り検出が可能なようにシンドロームレジスタを構成し、該検出手段がシンドロームレジスタの出力信号に基づき１ビットの誤り訂正が行われれたこと及び偶数ビット誤り検出したことを示す信号を出力する。
この結果、ハミング符号に発生した誤りビット数を計数することができることとなり、どの程度のBERが改善されたかを把握することが可能となる。
【００４６】
請求項12に係る本発明においては、該符号誤り訂正手段が、送信側においてハミング符号化の開始及び終了を指定する符号化設定手段をさらに有することができる。
基本的に送信側と受信側のFEC機能は連動して動作をすることが必要である。  また、受信側がFEC機能を有していない場合、送信側のFEC機能を「終了」とする必要がある。符号化設定手段がハミング符号化の「終了」を指定したとき、該符号誤り訂正手段がFEC動作を行わないことで対応可能となる。
【００４７】
請求項13に係る本発明においては、該符号化設定手段は、ハミング符号化の「開始」が指定されたとき、LOH部の所定の未定義バイトを固定値に設定し、「終了」が指定されたとき、該チェックビットを全“０”及び全“１”のいずれかに設定することもできる。
【００４８】
すなわち、送信側において、送信したメッセージがハミング符号化されているか否かを受信側に通知する必要がある。そこで、ハミング符号化した場合、所定の未定義バイトを固定値として送出することで受信側に通知する。
また、未使用バイトを全“０”又は全“１”としなければならない所定の規格がある。この所定の規格に対応するため、ハミング符号化しないことを指定する「終了」の場合、該チェックビットを該規格が指定する全“０”又は全“１”のいずれかの値にすることができる。
【００４９】
請求項14に係る本発明においては、該符号誤り訂正手段が、受信側においてハミング符号の復号の開始及び終了を指定する復号設定手段をさらに有することができる。
【００５０】
すなわち、受信側において、送信側がFEC機能を有していない場合又はハミング符号化せずにメッセージを送信した場合は、受信側でFEC機能が行われないようにする必要がある。そこで、復号設定手段が復号の終了を指定することにより対応可能となる。
【００５１】
請求項15に係る本発明において、該復号設定手段が、復号の開始及び終了動作を強制的な開始及び終了のいずれかで指定する手段を有し、強制的な開始のとき、又は強制的な終了のときで且つ該チェックビットの値が全“１”及び全“０”のいずれでもない場合で且つLOH部の所定の未定義バイトが所定の固定値であるときのみ、復号動作を開始させることができる。
【００５２】
すなわち、装置を試験する場合、強制的にFEC機能の開始を設定することが必要になる。
これに対応するため該復号設定手段が、強制的な開始を指定した場合、FEC機能を実行され試験が可能となる。
また、強制的な終了を指定した場合、チェックビットが未使用であることを示す（従って、メッセージがハミング符号化されていないことを示す）全“０”又は全“１”いずれでもなく、LOH部の所定の未定義ビットがハミング符号化されていることを示す所定の固有値である時のみ復号を行う。
【００５３】
請求項16に係る本発明においては、該符号誤り訂正手段が、送信メッセージをハミング符号化した後、LOH部のB2バイト情報によるBIP-NX24演算を行う手段を備えることができる。
【００５４】
送信側がFEC機能付きで受信側がFEC機能付きでない場合に、誤って送信側のFEC機能を動作させると、送信側のFEC機能とB2バイト機能の順序により、受信側にエラーが発生する。
例えば、B2バイト演算後に、FEC機能を実行した場合、B2バイトの演算範囲内にFECの誤り訂正バイトが含まれている為、受信側で、FEC機能を実行せずにB2バイト演算が行われると、B2バイトエラーが発生してしまう。
そこで、送受信側はFEC機能の後にB2バイト演算を行ってこの課題を解決する。
【００５５】
請求項17に係る本発明においては、該符号誤り訂正手段が、受信メッセージのハミング誤り訂正を行った後、LOH部のB2バイト情報によるBIP-Nx24演算を行う手段を備えることができる。
【００５６】
すなわち、まづ、受信メッセージのハミング符号誤り訂正を行った後、誤りが訂正された受信メッセージのB2演算を行う。
この結果、B2演算でのBERが良くなり、SDアラームによるライン切換の発生回数を少なくすることができる。
【００５７】
【発明の実施の形態】
図２は、本発明に係る誤り訂正方法及び装置に使用されるSTS-192フレームの実施例を示しており、ペイロード部は、９，１，２行、３〜５行及び６〜８行の各５０１１２バイト(＝87バイト×192×3）を１ブロックとするＬ＝３つの情報ビット用ブロックに分割され、各ブロックに対応してLOH部の３２バイトのK1,D5及びZ2バイトがそれぞれチェックビット用ブロックとして割り振られている。
【００５８】
図３〜５は、図２で示した３組の情報ビット用ブロック及び３つのチェックビット用ブロックをそれぞれ示している。
図３は、９，１，２行のペイロード部のブロック及びこれに対応する LOH部のK1バイトのブロックを示しており、ペイロード部のブロックは、９，１，２行においてそれぞれ１０４４バイト(=87バイト×192/16）のミニブロック701〜716、ミニブロック717〜732、及びミニブロック733〜748に分割されている。
【００５９】
そして、ミニブロック701,717及び733、ミニブロック702,718及び734、…、ミニブロック716,732及び748の如く、各行のミニブロックを１個づつ集めて組み合わせた２５０５６ビット(=1044×8ビット×3行）から成るＭ＝１６個の情報ビット用サブブロックを構成している。
３２バイトのK1バイト情報ブロックは、１６ビット（=2バイトx8ビット）から成る１６個のチェックビット用サブブロックに分割されている。
【００６０】
そして、対応した情報ビット用サブブロック及びチェックビット用サブブロックを各１個づつを組み合わせた計１６個のハミング符号ブロックを構成している。
例えば、ミニブロック701,717及び733から成る情報ビット用サブブロックとこのサブブロックと同じ網掛けが施されている２バイトのK1バイト部とで１つのハミング符号ブロック(25072(=情報ビット数25056+チェックビット数16),25056)を構成している。
【００６１】
図４は、３〜５行のペイロード部のブロック及びこれに対応する LOH部のD5バイトのブロックを示している。図３と同様に、ミニブロック749,765及び781、ミニブロック750,766及び782、…、ミニブロック764,780及び796から成る情報ビット用サブブロックとそれぞれのサブブロックと同じ網掛けが施された２バイトのD5バイトとで１つのハミング符号ブロック(25072,25056）を構成している。
【００６２】
図５は、６〜８行のペイロード部のブロック及びこれに対応する LOH部のZ2バイトのブロックを示している。図３と同様に、ミニブロック797,814及び830、ミニブロック798,815及び830、…、ミニブロック813,829及び845から成る情報ビット用サブブロックとそれぞれのサブブロックと同じ網掛けが施された２バイトのZ2バイトとで１つのハミング符号ブロック(25072,25056）を構成している。
【００６３】
このハミング符号ブロックの情報ビット長＝25056＜32767となり、CCITTのデータ通信規格のHDLC(High Data Link Control)手順で推奨されている生成多項式G(X)=X16+X12+X5+1を使用することが出来る。この生多項式G(X)は、mod2により因数分解するすると次式になる。
G(X)=G1(X)・G2(X)=(X+1)・(X15+X14+X13+X12+X4+X3+X2+X+1)‥‥（式１）
【００６４】
G2(X)は原始多項式であり、G1(X)は偶数パリティ演算を行う為にある。
すなわち、生成多項式G(X)を用いることにより215-1=32767 以下の情報ビット数のSEC(Single Error Corection：１ビット誤り訂正）及び偶数誤り検出を可能にしている。
【００６５】
本実施例においては、短縮ハミング符号(25072,25076)を用いて、SEC及び偶数誤り検出が可能となる。
短縮ハミング符号(25072,25076)とは、受信側で生成多項式G(X)に対して、短N 化させるための、H(X)を掛け合わせることにより実現できる。このH(X)は、n=25072（短縮化した符号長）、k=25056（情報ビット数）、j=nP-n短縮化時“０”にするための符号長）、nP16ー1（短縮化前の符号長）とすれば次式で算出できる。
【００６６】
H(X)=X(n-k+j) modG(X)                 ‥‥（式２）
従って
0003922819.tif 000002
【００６７】
図６は、本発明に係る送信側の誤り訂正方法及び装置における短縮ハミング符号(25072,25056)のチェックビットを生成するためのシンドロームレジスタ200の構成例を示している。
【００６８】
このシンドロームレジスタ200は、１ビットのプリセッタブルシフトレジスタX01〜X16が縦続接続され、レジスタX01の入力端子にはXOR回路83で演算したレジスタX16の出力信号と情報ビットＩとの排他的論理和が入力され、レジスタX06の入力端子にはXOR回路83及びレジスタX05の出力信号をXOR回路81で演算した排他的論理和が入力され、レジスタX13の入力端子にはXOR回路83及びレジスタX12の出力信号をXOR回路82で演算した排他的論理和が入力されている。
【００６９】
シンドロームレジスタ200は、まずプリセッタブルシフトレジスタX01〜X16を初期値に設定した後、XOR回路83の入力端子から情報ビットＩを順次入力し、１ブロック分の情報ビットＩ(=25056ビット）の入力が終了した時点でレジスタX01〜X16からチェックビットを出力する。従って、このチェックビットを情報ビットＩに付加することにより前述した短縮ハミング符号を生成することが出来る。
【００７０】
図７は、本発明における送信側の前方誤り訂正部（以後、FEC部と称する）の構成例を示している。
FEC部は、図６に示したレジスタX01〜X16及びXOR回路81〜83で構成された情報ビットＩを入力するシンドロームレジスタ200と、レジスタX01〜X16の出力信号P1〜P16を並列に入力しチェックビット信号P0を出力するチェックビット挿入部84と、情報ビットＩ及びチェックビット信号P0とチェックビット挿入部84がチェックビットを入力して短縮ハミング符号ブロックB(n=25072,k=25056)を生成する MUX部80とで構成されている。
【００７１】
図８は、本発明における受信側のシンドロームレジスタ201の実施例を示している。
シンドロームレジスタ201は、縦続接続された16個の１ビットプリセッタブルシフトレジスタX01〜X16で構成されており、レジスタX03,X06,X07,X11,X13及びX14の入力端子にはそれぞれ各レジスタの１つ前のレジスタの出力信号を一方の入力端子に入力するXOR回路91〜97の出力信号が入力され、XOR回路91,93,94,95,97の他方の入力端子には受信したブロック符号B'が入力され、XOR回路92,96の他方の入力端子にはレジスタX16の出力信号が入力されている。
【００７２】
この構成によりシンドロームレジスタ201は、上述した生成多項式G(X)に対しH(X)を掛け合わせたことになり、短縮ハミング符号を復号することが可能となる。
【００７３】
シンドロームレジスタ201は、まず各プリセッタブルシフトレジスタX01〜X16を初期設定した後、受信ブロック符号B'のビットデータを順次入力する。そして、シンドロームレジスタ201は受信ブロック符号B'の全ビットデータが入力された時点で、受信ブロック符号B'の誤ったビット位置を示す誤りシンドロームをレジスタX01〜X16から出力する。
【００７４】
図９は、本発明における受信側のFEC部の構成例を示しており、このFEC部は、図８で示したシンドロームレジスタ201と、このレジスタを構成するレジスタX01〜X16の出力信号S1〜S16をそれぞれ入力して誤りシンドロームを検出し１ビット誤り訂正信号503を出力するシンドローム検出部100と、偶数パリティ演算を行い偶数ビット誤り検出信号504を出力する偶数誤り検出部101と、受信メッセージである受信ブロック符号B'のビットデータを順次シフトする25072段シフトレジスタ99と、このシフトレジスタ99の最終段出力信号及び偶数ビット誤り検出信号504を入力し、これらの排他的論理和を演算するXOR回路98とで構成されている。
【００７５】
シンドロームレジスタ201は、誤りシンドロームを出力した時点から受信ブロック符号B'の入力を“０”に固定した状態でさらにシフトを行うと、受信したブロック符号B'で誤りが発生したビット番目のシフトの時点で(S1,S2,…,S16）＝（1,0,…,0)となる。この時点で、シンドローム検出部100は１ビット誤り訂正信号503＝“１”を出力する。
【００７６】
この１ビット誤り訂正信号503＝“１”の時点のみ、XOR回路98は、シンドロームレジスタ201と同じタイミングでシフトしたシフトレジスタ99の出力ビットを反転して情報ビットＩとして出力し、その他のタイミングの出力ビットはそのまま出力する。
この結果、FEC部は、受信ブロック符号B'の誤りが発生したビットを訂正して、誤りのない情報ビットＩとして出力することになる。
【００７７】
偶数誤り検出部101は、入力信号S1〜S16に基づき偶数パリティ演算を行い誤りを検出したとき偶数ビット誤り検出信号504を出力する。
【００７８】
図10は、本発明の送信側及び受信側におけるデータ変換部の配置例を示しており、データ変換部31,41及びデータ変換部32,42が、それぞれFEC部30,40の入力側及び出力側に配置されている。
データ変換部31,41は、入力データ#1-D7,#1ーD6,…,#16ーD0を並び換えて#1-D7,#3ーD6,…,#16ーD0としてFEC部30,40に出力し、データ変換部32,42は、FEC部30,40から入力したデータ#1-D7,#3ーD7,…,#16ーD0を並び換えて#1-D7,#1ーD6,…,#16ーD0として出力する。
【００７９】
図11は、図10で示したデータ変換部31,32,41,42におけるデータのグループ化の実施例を示している。
SONETにおけるフレームは、バイト単位で多重/分離が行われる。従って、ハミング符号による誤り訂正及び検出の処理もバイト単位で行うことにより容易になる。
【００８０】
同図に示した#1〜#192は、それぞれD7〜D0ビットから成る１バイトのデータを示しており、例えば、図２に示したSTS-192フレームでは、#1〜#192を１データグループとして各行毎に８７データグループが順次伝送される。
【００８１】
本実施例においては、３行分の２６１(=87x3行）個のデータグループ#1〜#192は、データ#1,#17,…,#177、#2,#18,…,#178、〜、及び#16,#32,…,#192をグループGP1,GP9,GP2,GP10,GP3,GP11,…,GP16とし、このグループGP1,GP2,…,GP16に対応するハミング符号の情報ビット（バイト）にそれぞれ割り振られている。
【００８２】
図12は、データ変換部31,41におけるデータグループ#1〜#192の並び換えの実施例を示しており、この例では、並び換える前の(#1ーD7〜D0),(#9ーD7〜D0),(#2ーD7〜D0),(#10ーD7〜D0),…,(#16ーD7〜D0)の各ビットデータを順に１〜１２８番目のビットデータとした場合、並び変えた後のビットデータの順序は、(#1ーD7,#3ーD7,…,#15ーD7)、(#1ーD6,…,#15ーD6)、〜、(#1ーD0,…,#15ーD0)、(#2ーD7,#4ーD7,…,#16ーD7)、(#2ーD6,…,#16ーD6)、〜、(#2ーD0,…,#16ーD0)となる。
【００８３】
以下同様にして、図11に示した如く#17,#25,#18,…,#32、〜、#117,#25,#185,…,#192の各データについても並び換えが行なわれる。
この並び換えの結果、連続して入力された１６個のビットデータ#1ーD7〜D0,#2ーD7〜D0は、それぞれ異なるハミング符号グループGP1,GP9,GP2,GP10,…,GP8,G16に分散されることになる。
従って、連続した１６ビット以下のバースト（誤りビット）は、各ハミング符号グループGP1〜G16に１ビットづつ分散されたことになる。
【００８４】
図13及び図14は、図12に示した実施例をブロック図形式で示した図である。
図13は、並び換え前の入力状態を示しており、サブブロックのハミング符号グループに対応するブロック１〜１６に、それぞれ#1ーD7〜D0、#9ーD7〜D0、#2ーD7〜D0、…、#16ーD7〜D0が入力されている。
【００８５】
図14は、並び換え後の出力状態を示しており、サブブロックのハミング符号グループに対応するブロック１〜１６に、#1ーD7,#1ーD6,…,#1ーD0,#2ーD7,#2ーD6,…,#2ーD0が分散されて出力されている。
なお、FEC部30,40の後段に接続されるデータ変換部32,42は、図12に示した並び換えの逆の並び換えを実行する。
【００８６】
すなわち、送信側において、FEC部30の前段に配置されたデータ変換部31は、図12に示した並び換えを行いバースト誤りビットを各ハミング符号ブロックに１ビットづつ分散する。FEC部30は、入力した情報ビットをハミング符号化して出力し、後段のデータ変換部32が、逆の並び換えを行いデータの並びを元に戻して出力する。
【００８７】
このデータを受信した受信側において、前段のデータ変換部41は、該データの並び換えを行い、FEC部40は、各ハミング符号ブロックに含まれるバースト誤りビットに対応する１ビットの誤りを検出訂正する。後段のデータ変換部41は、逆の並び換えを行いデータの並びを元に戻す。
【００８８】
なお、上記では情報ビットのみの並び換えについて述べたが、同様にチェックビットの並び換え、及びハミング符号化並びに復号が行われ、チェックビット部に発生したバースト誤りビットの訂正も行われる。
この結果、FEC部40は、バースト誤りビットをハミング符号を用いて訂正することが可能となる。
【００８９】
図15は、本発明に係る誤り訂正方法を実施する装置の一例を示しており、この実施例では光伝送装置10が、入力した４つのOC-48光信号510を多重化し、OCー192光信号514として出力し、このOCー192光信号514を中継装置12,13の光増幅器27,28が減衰した分だけ増幅して伝送装置11に送り、この伝送装置11は受信したOCー192光信号514を４つのOC-48光信号517に分離して出力している。
【００９０】
伝送装置10において、多重分離部20が光電変換部21〜24でそれぞれOC-48光信号510を受信し多重化してSTS-192電気信号511として出力する。このSTS-192電気信号511を受信したデータ変換部31は、前述したデータの並び換えを行いFEC部30に出力する。
【００９１】
FEC部30は受信したデータをハミング符号化したデータとて出力し、このデータをデータ変換部32は元の並びに戻してSTS-192電気信号512として出力する。この電気信号512を電気/光変換部25はOC-192光信号513に変換し、光増幅器26が増幅してOC-192光信号514として出力する。
【００９２】
伝送装置11において、受信したOC-192光信号514を光/電気変換部29はSTS-192電気信号515に変換する。データ変換部41は受信した電気信号515のデータの並び換えを行い、FEC部40はハミング符号の復号を行い、データ変換部42はデータの並びを元に戻しSTS-192電気信号516として出力する。
【００９３】
多重分離部20において、受信したSTS-192電気信号516をSTS-48電気信号に分離した後、STSー48電気信号を光電変換部21〜24がOCー48光信号517に変換して出力する。
【００９４】
同様にして、光伝送装置11は OCー48光信号517を多重分離部20、データ変換部31、FEC部30、データ変換部32、電気/光変換部25、及び光増幅器26を介してハミング符号化したOC-192光信号514として出力し、中継装置13及び12の光増幅器27及び28を介して、このOC-192光信号514を受信した光伝送装置10は、光/電気変換部29、データ変換部41、FEC部40、データ変換部42、及び多重分離部20を介してハミング符号を復号したOC-48光信号510として出力する。
【００９５】
図16は、図15に示した装置における特に送信側のデータ変換部31、FEC部30及びデータ変換部32をより詳細にした実施例を示している。
FEC部30はFECブロック601〜616で構成され、各FECブロック601〜616は、８ビットパラレルシンドロームレジスタ301及び８パラレルCRCコードMUX部302から成っている。
【００９６】
データ変換部31は、図13及び図14に示したブロック１〜16の各データ#1〜#16の８ビットパラレルデータ（以下８パラレルデータというように略称する）D7〜D0の各ビットを、ブロック１〜16に分散して並び換えて８パラレル入力信号521〜536として出力する。
【００９７】
そして、FECブロック601に入力された８パラレル入力信号521は、まず#1ーD7,#3ーD7,…,#15ーD7であり、以後、図11に示したデータグループ分けに従って、#17ーD7,#39ーD7,…,#31ーD7、〜、#177ーD7,#179ーD7,…,#184ーD7、の順でFECブロック601に入力される。
【００９８】
FECブロック601において、FEC＿DIS/EN信号505が「可(EN)」を示すとき、MUX部302は８パラレル入力信号521を入力し、８パラレル出力信号537として順次出力する。シンドロームレジスタ301は、入力した８パラレル入力信号521を順次８ビット単位でシフトして16パラレル出力信号x01〜x16としてMUX部302に出力する。  MUX部302は16パラレル出力信号x01〜x16のチェックビットを８ビット単位で８パラレル出力信号537として出力する。
【００９９】
FEC＿DIS/EN信号505が「不可(DIS)」を示すとき、MUX部302は入力した８パラレル入力信号521を８パラレル出力信号537として順次出力が、チェックビットを出力するタイミングに予め決められた固定値を出力する。
【０１００】
すなわち、各MUX部302は、FEC＿DIS/EN信号505＝「可」のとき、入力した８パラレル入力信号521〜536をハミング符号に符号化して、FEC＿DIS/EN信号505＝「不可」のとき、ハミング符号化せずに８パラレル出力信号537〜552として出力する。
【０１０１】
この８パラレル出力信号537〜552を入力したデータ変換部32は、図13及び図14に示した並び換えと逆の並び換えを行いFECブロック601〜616に分散した各ビットデータを元に戻す。
【０１０２】
図17は、図16に示した８パラレルシンドロームレジスタ301の実施例を示している。
このシンドロームレジスタ301は、初期リセット信号507を入力しシンドローム状態x01〜x16（＝16パラレル出力信号）を出力するパラレルシフトレジスタ303と、シンドローム状態x01〜x16及び情報ベクトルである情報ビットI(I0,…,I7）（＝８パラレル入力信号）を入力するXOR回路305と、スタートタイミング信号506を入力するNOT回路306と、このNOT回路306及びXOR回路305の出力信号を入力して出力信号をパラレルシフトレジスタ303の入力端子に与えるAND回路304とで構成されている。
【０１０３】
シンドロームレジスタ301は、16個のプリセット可能な１ビットのパラレル入力パラレル出力レジスタ（フリップフロップ）X01〜X16から成り、AND回路304は一方の入力端子がNOT回路306の出力端子に共通に接続され、他方の入力端子がXOR回路305の各出力端子に接続された16個のAND回路から成っている。
XOR回路305は、図に示すそれぞれ異なるXOR論理演算を行う16個のXOR回路で構成されている。なお、図中の演算子＋はXOR(排他的論理和）演算を意味する。
【０１０４】
動作において、XOR回路305は、時刻tの情報ビットI(I0,…,I7)及びレジスタX01〜X16の出力信号の状態であるシンドローム状態x01〜x16を入力する。XOR回路305内の各XOR回路は、次式（３）〜（18）に示す論理演算を実行しその演算結果をAND回路304の各AND回路に出力する。これらのAND回路は、スタートタイミング信号506が“０”（従って、AND回路の入力が“１”）のとき、入力した演算結果をそのままレジスタX01〜X16にそれぞれ与える。
【０１０５】
0003922819.tif 000003
【０１０６】
ここで、演算子＋は排他的論理和を意味する。
x01(t0)〜x16(t0)及びx01(t8)〜x16(t8)はそれぞれ時刻t0及びt8におけるレジスタX01〜X16の出力状態、Ｉ(t0〜t8)は時刻t0〜t8における情報ビットＩである。
【０１０７】
論理演算式は（１）〜（16）は、時刻t0〜t7における情報ビットＩを並列にした情報ビットI(I0,…,I7)及びレジスタX01〜X16の出力状態（x01〜x16）から時刻t8における出力状態（x01'〜x16'）をパラレルで演算するように設計されている。
【０１０８】
従って、時刻t8のシフト命令でシフトレジスタX01〜X16の出力状態x01(t0)〜x16(t0)は、時刻t8の出力状態x01(t8)〜x16(t8)となる。
そして、シフトレジスタX01〜X16は、１つのハミング符号ブロックの全ての情報ビットＩのシフトが終了し時点で、チェックビットを出力することになる。
【０１０９】
すなわち、シンドロームレジスタ301は、情報ビットI(I0〜I7）を図６に示したシンドロームレジスタ200のようにシリアルデータとしてでなくパラレルデータとして入力し、XOR回路305の論理演算により出力状態x01〜x16を順次演算しチェックビットを最終的に16パラレル出力信号として出力することによりハミング符号演算を行う。
【０１１０】
この結果、シンドロームレジスタ301は、８ビットの情報ビットI0〜I7を並列に（バイト単位で）処理することが可能となり、伝送速度の速いフレームに対しても、シンドロームレジスタ301用のＬＳＩの動作マージンが確保されるとともにバイト単位で多重/分離が成されるSONET等にも適応している。
【０１１１】
図18は、本発明に係る誤り訂正符号方法を実施する装置として受信側の一例を示しており、特にFEC部40及びデータ変換部41,42の実施例を示している。
この例ではFEC部40は同一機能を有するFECブロック621〜636で構成され、データ変換部41及び42は、図16に示した送信側のデータ変換部31及び32と同じ機能を有している。
【０１１２】
すなわち、データ変換部41は、８パラレルデータ#1-D7〜D0,#9-D7〜D0,…,#16-D7〜D0をFECブロック621〜636に入力される８パラレル入力信号521〜536に並び換えて出力し、データ変換部42はFECブロック621〜636からの８パラレル出力信号537〜552をデータ変換部41の並び換えと逆の並び換えを行いデータの並びを元の状態に戻す。
【０１１３】
FECブロック621は、８パラレル入力信号521を入力するレジスタ選択部401及びRAM400上に擬似的に設定された８パラレルシフトレジスタ408〜410と、これらのシフトレジスタ408〜410の出力データを選択して出力するデータ選択部411とを含んでいる。
【０１１４】
また、FECブロック621は、外部からのタイミング信号501を受信しシフトレジスタ408〜410に書込アドレス信号を与える書込アドレスカウンタ413と、タイミング信号501及びFEC＿DIS/EN信号502を入力しシフトレジスタ408〜410に読出アドレス信号を与えデータ選択部411にデコード信号520を与える読出アドレスカウンタ414とを含んでいる。
【０１１５】
また、FECブロック621は、レジスタ選択部401で面切換されて８パラレル入力信号521が入力される８パラレルシンドロームレジスタ402〜405と、これらのシンドロームレジスタ402〜405を面切換してその出力信号である16ビットシンドローム信号518を選択して出力するレジスタ選択部406とを含んでいる。
【０１１６】
さらに、FECブロック621は、選択されたシンドローム信号518とFEC＿DIS/EN信号502を入力し、シンドローム信号518をデコードし偶数ビット誤り検出信号504及び８ビット誤りシンドローム信号519を出力するシンドロームデコーダ407と、８ビット誤りシンドローム信号519を受信して１ビット誤り訂正信号503を出力するOR回路415と、８ビット誤りシンドローム信号519とデータ選択部411の出力信号を入力して８パラレル出力信号537として出力するXOR回路412とを含んでいる。
【０１１７】
図19は、図18に示した８パラレルシンドロームレジスタ402〜405の実施例を示している。この例ではシンドロームレジスタ402〜405は、パラレルシフトレジスタ416、AND回路417、XOR回路418及びNOT回路419で構成され、XOR回路418が図17に示した送信側のシンドロームレジスタ301のXOR回路305と異なる論理構成であることのみシンドロームレジスタ301と異なっている。
XOR回路418の各XOR論理式を次式で示す。
【０１１８】
0003922819.tif 000004
ここで、演算子＋は排他的論理和を意味する。
x01(t0)〜x16(t0)及びx01(t8)〜x16(t8)はそれぞれ時刻t0及びt8におけるレジスタX01〜X16の出力状態、Ｉ(t0〜t8)は時刻t0〜t8における情報ビットＩである。
【０１１９】
図20は、図18に示したFECブロック621〜636の動作タイミングを示しており、これを参照して図18のFECブロック内の動作を以下に説明する。
同図の８パラレル入力信号521〜536は、図20で入力データとして示されるようにSTS-192フレームの９行目のペイロード部、１行目のOH部及びペイロード部、２行目のOH部及びペイロード部、…の順に入力された信号が、データ変換部41で並び換えられた８ビットの並列信号である。
【０１２０】
まず、レジスタ選択部401は８パラレルシンドロームレジスタ402を選択する。このレジスタ402は時点T1でクリアされオール“０”に設定される。そして、レジスタ402は、９行目のOH部のタイミング時はホールド状態でOH部のデータを入力せず、次の時間T2で９行目のペイロード部を入力する。
【０１２１】
以下同様にして、レジスタ402は、時間T3で１行目のペイロード部、時間T4で２行目のペイロード部を入力し、３〜４行目のOH部及びペイロード部のタイミングでホールド状態となり、時間T5で５行目のK1バイトの中のチェックビットのみを入力する。
【０１２２】
この結果、レジスタ402には、９，１，２行目のペイロード部の情報ビット及び５行目のK1バイトの中のチェックビットがシフトして入力されたことになり、出力端子にシンドロームを出力することになる。
【０１２３】
そして、時間T6,…,T9においてシンドロームレジスタ402は、入力端子を“０”とした状態でシフトを行う。このシンドロームレジスタ402の出力状態はレジスタ選択部406で時刻T6,…,T9に選択されてシンドロームデコーダに16ビット単位で入力される。
【０１２４】
同様に、シンドロームレジスタ403,404,405は、それぞれ時点T15,T25,T35で“０”に初期設定された後、時点T16,T17,T18,T19で３，４，５行目のペイロード部及び６行目のOH部の中のチェックビットが割り振られたD5バイト、時点T26,
T27,T28,T29で６，７，８行目のペイロード部及び９行目のOH部の中のチェックビットが割り振られたZ2バイト、及び時点T36,T37,T38,T39で９，１，２行目のペイロード部及び５行目のOH部の中のチェックビットが割り振られたZ2バイトを入力する。
【０１２５】
従って、シンドロームレジスタ403〜405には、それぞれ対応するペイロード部の情報ビット及びチェックビットビットが入力されシンドロームが出力される。
【０１２６】
シンドロームレジスタ403,404,405は、時間T20,…,T23、時間T30,…,T33、時間T40,…,T43においてそれぞれ、入力端子を全“０”とした状態でシフトを行う。各シンドロームレジスタ403,404,405のシンドロームはレジスタ選択部406で選択されてシンドロームデコーダ407に16ビット単位で入力される。
【０１２７】
シンドロームデコーダ407は、入力されたシンドロームから誤りビットが発生したタイミングを検出し、８ビット単位の誤りシンドローム信号519をOR回路415及びXOR回路412に与える。
OR回路415は、１つのハミング符号ブロック毎に高々１ビット発生する１ビット誤り訂正信号を検出し、１ビット誤り訂正信号503として出力する。
【０１２８】
一方、RAM上の８パラレルシフトレジスタ408〜410は、入力した９，１，…,９，…行目のペイロード部並びにOH部の全てのデータをバイト単位で書込アドレスカウンタ413が指定する番地に順次記憶する。
【０１２９】
シフトレジスタ408〜410に記憶された入力データは、５行目のペイロード部が入力されたタイミングで、読出アドレスカウンタ414及びデータ選択部411によりバイト単位で記憶された順に読み出されXOR回路412に入力される。
すなわち、XOR回路412には、図20のFECデータ出力で示すようにFECブロックに入力されたSTS-192フレームが69.4μ秒遅れて入力されることになる。
【０１３０】
XOR回路412は、シンドロームデコーダ407からの８ビット誤りシンドローム信号519に基づき入力されたバイト単位のSTS-192フレームの誤りビットを反転して誤り訂正済みのFEC出力データ537として出力する。
【０１３１】
すなわち、FECブロック621〜636に分散して入力されたSTS-192フレームは、誤りビットが訂正された状態で出力信号537〜552として出力され、これらの出力信号537〜552を入力したデータ変換部41は、元の並びに戻した８パラレルデータとして出力する。
【０１３２】
以上の動作は、FEC＿DIS/EN信号502がFEC機能行うことを示した「可(EN)」の場合である。FEC＿DIS/EN信号502が「不可(DIS)」を示した場合、読出アドレスカウンタ414は、入力信号521〜526を８パラレルシフトレジスタをスルーさせるるようにアドレス指定し、シンドロームデコーダ407はシンドローム信号519を“00h”として出力する。このシンドローム信号519を受信したXOR回路412は、エラー訂正を行うことなく入力したフレームを通過させる。
【０１３３】
この結果、FECブロック621〜636に入力されたフレームは、転送遅れがほとんどなくFEC処理されずに出力されことになる。
【０１３４】
図21は、図18に示したレジスタ選択部401,406がシンドロームレジスタ402〜405を面切り換える順序を示している。なお、同図においては、シンドロームレジスタ402〜405をそれぞれＡ，Ｂ，Ｃ，Ｄ面のレジスタと称している。
【０１３５】
すなわち、書込側のレジスタ選択部401は、Ａ面レジスタをまず時間T1の９行目のOH部から選択し、次に、３行目のOH部の時間T15からＢ面レジスタを選択し、そして、５行目のOH部の時間T5でＡ面レジスタを選択した後、５行目のペイロード部の時間T18でＢ面レジスタを選択し、６行目のOH部の時間T25でＣ面レジスタを選択する。
以下同様にして、レジスタ選択部401は、時間T35,T10,T39,T13,T24,T34,…においてＤ面，Ａ面，Ｄ面，Ａ面，Ｂ面，Ｃ面，…の順序で、20回の面切換を１周期としてレジスタを選択する。
【０１３６】
読出側のレジスタ選択部406は、時間T6,T7,T8でＡ面レジスタを選択し、次に、時間T20,T21でＢ面レジスタを選択し、そして、時間T9でＡ面レジスタを選択した後、時間T22,T23でＢ面レジスタを選択し、時間T30でＣ面レジスタを選択する。
以下同様にして、レジスタ選択部406は、Ｄ面，Ａ面，Ｄ面，Ａ面，Ｂ面，Ｃ面，…の順序で、20回の面切換を１周期としてレジスタを選択する。
この結果、入力信号521を、各面のシンドロームレジスタ402〜405に重ね合わせることなく記憶することが可能となる。
【０１３７】
図22は、送信側の符号化設定手段及び受信側の復号設定手段が、それぞれ保持する設定表を示しており、FEC部30及び40が動作を開始するか否かはこの設定表に基づいて決定される。
【０１３８】
同図(1)において、図16で示した送信側のFEC＿DIS/EN信号505が、不可（DIS)である“０”を示すとき、#6のZ2バイト（図１参照）を全“０”（北米規格のとき）又は全“１”（CEPT規格のとき）とする。
一方、FEC＿DIS/EN信号505が、可（EN)である“１”を示すとき、#6のZ2バイトを“AAh”とし、受信側に送信メッセージがハミング符号化されて送信したことを通知する。
【０１３９】
同図(2)において、図18に示した受信側のFEC部40は、外部からの強制的開始信号（図示せず）が開始を示す“１”であるとき、FEC動作を実行する。また、FEC部40は、強制的開始信号が終了を示す“０”で且つFEC＿DIS/EN信号502が可(EN）を示す“１”で且つ入力したSTS-192フレームの#6のZ2バイトが全“１”又は“０”以外であるときも、FEC動作を実行する。
そして、FEC部40は上記の場合以外はFEC動作を実行しない。
【０１４０】
この結果、装置を強制的に試験すること及び送信側からの通知に基づき受信側で復号をするか否かを決定することが可能となる。
【０１４１】
【発明の効果】
以上説明したように、本発明に係る誤り訂正方法及び装置によれば、SONET及びSDHのいずれかの同期網で規定されたSTS-Nフレーム、OC-Nフレーム、及びSTM-Nフレームのいずれかのフレームを行方向にＬ個のブロックに分割し、情報ビット及びチェックビットを、それぞれペイロード部及びLOH部の未定義ビットに割り振り、好ましくは、該情報ビット及び該チェックビットをそれぞれさらにＭ個のサブブロックに分割してハミング符号ブロックを構成したので、転送遅れを小さくすること、BERを改善すること及び回路規模を小さくすることが可能となった。
【０１４２】
また、符号誤り訂正手段を各ハミング符号ブロックに渡ってビット単位で並び換えを行うように構成したので、連続したＭ個のビット誤り訂正が可能となった。
また、複数面のシンドロームレジスタをハミング符号ブロックの誤りシンドロームを演算し、その演算結果に基づき各ハミング符号ブロックの符号誤り訂正を面切換により行うように構成したので、転送遅れを一層小さくすることが可能となる。
【０１４３】
また、シンドロームレジスタを時刻ｔにおけるｘビットの情報ビット及び出力状態から時刻ｔ＋ｘ後における出力状態を並列に求めることを順次繰り返して該チェックビット又はシンドロームを演算するように構成したので、誤り訂正符号用のＬＳＩの動作マージンを確保することが可能となった。
【０１４４】
図23は、次式によって理論的に求めたBERを、FEC部の誤り訂正機能の有無（オン/オフ）により比較した表である。
【数１】
0003922819.tif 000005
【０１４５】
すなわち、FECオフ時のBERは伝送路上に発生したBERの値を示し、これに対応するFECオン時のBERは１ビット誤り訂正及び偶数誤り検出を実行した場合のBERを計算した値を示している。なお、この表は短縮ハミング符号ブロック(n=25072ビット,k=25056ビット)を使用した場合の計算値を示している。
【０１４６】
FEC機能によって、発生したBER値が1x10-3,1x10-4,…,1x10-15の場合、改善されたBERはそれぞれ1.008x10-3,9.637x10-5,…,2.509x10 -26であり、チャネルのBER値が小さいほどBERの改善が有効になされることが分かる。
従って、SD(BERが1x10-5〜10-9）による切り換えの発生回数を減らすことが可能となる。
【図面の簡単な説明】
【図１】本発明に係る誤り訂正方法及び装置におけるSTS-Nフレームの分割原理を示した図である。
【図２】本発明に係る誤り訂正方法及び装置におけるSTS-192フレームの誤り訂正符号の割付例を示した図である。
【図３】本発明に係る誤り訂正方法及び装置におけるSTS-192フレームの誤り訂正符号のビット割付例（１）を示したビットマップ図である。
【図４】本発明に係る誤り訂正方法及び装置におけるSTS-192フレームの誤り訂正符号のビット割付例（２）を示したビットマップ図である。
【図５】本発明に係る誤り訂正方法及び装置におけるSTS-192フレームの誤り訂正符号のビット割付例（３）を示したビットマップ図である。
【図６】本発明に係る誤り訂正装置における送信側のシンドロームレジスタの構成例を示した回路ブロック図である。
【図７】本発明に係る誤り訂正装置における送信側のFEC部の構成例を示した回路ブロック図である。
【図８】本発明に係る誤り訂正装置における受信側のシンドロームレジスタの構成例を示した回路ブロック図である。
【図９】本発明に係る誤り訂正装置における受信側のFEC部の構成例を示した回路ブロック図である。
【図１０】本発明に係る誤り訂正装置におけるデータ変換部の配置例を示したブロック図である。
【図１１】本発明に係る誤り訂正方法及び装置におけるデータ変換部のデータグループ例を示した図である。
【図１２】本発明に係る誤り訂正方法及び装置におけるデータ変換部の並び換え例を示した図である。
【図１３】本発明に係る誤り訂正方法及び装置におけるデータ変換部の並び換え前のブロック状態を示した図である。
【図１４】本発明に係る誤り訂正方法及び装置におけるデータ変換部の並び換え後のブロック状態を示した図である。
【図１５】本発明に係る誤り訂正装置の実施例を示したブロック図である。
【図１６】本発明に係る誤り訂正装置における送信側のFEC部及びデータ変換部の実施例を示したブロック図である。
【図１７】本発明に係る誤り訂正装置における送信側の８パラレルシンドロームレジスタの実施例を示したブロック図である。
【図１８】本発明に係る誤り訂正装置における受信側のFEC部及びデータ変換部の実施例を示したブロック図である。
【図１９】本発明に係る誤り訂正装置における受信側の８パラレルシンドロームレジスタの実施例を示したブロック図である。
【図２０】本発明に係る誤り訂正方法及び装置における受信側のFEC部の動作例を示したタイミングチャート図である。
【図２１】本発明に係る誤り訂正方法及び装置における受信側のシンドロームレジスタの面切換のタイミング例を示した図である。
【図２２】本発明に係る誤り訂正方法及び装置におけるFEC部の設定パラメータを示した設定表である。
【図２３】本発明に係る誤り訂正方法及び装置におけるFEC部によるBER改善効果を示すためのBER比較表である。
【符号の説明】
B,B'  ブロック符号    I,I0〜I7  情報ビット    P0  チェックビット信号
P1〜P16,S1〜S16  シンドロームレジスタ出力信号
X01〜X16  １ビットプリセッタブルシフトレジスタ
x01〜x16  16パラレル出力信号                10,11  光伝送装置
12,13  中継装置      20  多重分離部          21〜24  光電変換部
25  電気/光変換部    26〜28  光増幅器        29  光/電気変換部
30,40  FEC部        31,32,41,42  データ変換部      80  MUX部
81〜83,91〜98,305,412,418  XOR回路  84  チェックビット挿入部
99  25072段シフトレジスタ    100  シンドローム検出部
101  偶数誤り検出部          200,201  シンドロームレジスタ
301,402〜405  ８パラレルシンドロームレジスタ
302  ８パラレルCRCコードMUX部
303,416  パラレルシフトレジスタ              304,417  AND回路
306,419  NOT回路            401,406  レジスタ選択部
407  シンドロームデコーダ    408〜410  ８パラレルシフトレジスタ
411  データ選択部            413  書込アドレスカウンタ
414  読出アドレスカウンタ    415  OR回路    501  タイミング信号
502,505  FEC＿DIS/EN信号    503  １ビット誤り訂正信号
504  偶数ビット誤り検出信号  506,508  スタートタイミング信号
507,509  初期リセット信号    510,517  OC-48光信号
511,512,515,516  STS-192電気信号    513,514  OC-192光信号
518  16ビットシンドローム信号
519  ８ビット誤りシンドローム信号    520  デコード信号
521〜536  ８パラレル入力信号        537〜552  ８パラレル出力信号
601〜616,621〜636  FECブロック
図中、同一符号は同一又は相当部分を示す。
【図１】
0003922819.tif 000006
【図２】
0003922819.tif 000007
【図３】
0003922819.tif 000008
【図４】
0003922819.tif 000009
【図５】
0003922819.tif 000010
【図６】
0003922819.tif 000011
【図７】
0003922819.tif 000012
【図８】
0003922819.tif 000013
【図９】
0003922819.tif 000014
【図１０】
0003922819.tif 000015
【図１１】
0003922819.tif 000016
【図１２】
0003922819.tif 000017
【図１３】
0003922819.tif 000018
【図１４】
0003922819.tif 000019
【図１５】
0003922819.tif 000020
【図１６】
0003922819.tif 000021
【図１７】
0003922819.tif 000022
【図１８】
0003922819.tif 000023
【図１９】
0003922819.tif 000024
【図２０】
0003922819.tif 000025
【図２１】
0003922819.tif 000026
【図２２】
0003922819.tif 000027
【図２３】
0003922819.tif 000028