(57)【特許請求の範囲】
【請求項１】
マスクシンボルと直交符号とを用いて情報信号を符号化したリード・マラー符号の復号装置において、
符号化に使われる可能性のある１つのマスクシンボルと該マスクシンボルに対応する情報信号の第１の部分との排他的論理和と、前記リード・マラー符号と、の排他的論理和をとる演算部と、
前記演算部の出力のチェックサムを計算し、該チェックサムを多数決判定し、直交符号に対応する情報信号の第２の部分の一部を復号する第１の復号部と、
前記第１の復号部の出力と直交符号との乗算結果と、前記演算部の出力と、の排他的論理和をとり、排他的論理和を多数決判定し、前記第２の部分の残りの部分を復号する第２の復号部と、
前記第１、第２の復号部により復号された前記第２の部分の全部と、前記第１の部分と、をリード・マラー符号化するリード・マラー符号化部と、
符号化に使われる可能性のある複数のマスクシンボルを前記演算部に供給した時の前記リード・マラー符号化部の出力と、前記演算部に供給されるリード・マラー符号と、のユークリッド距離の最小値を検出する最小距離検出部とを具備し、
ユークリッド距離の最小値が得られるマスクシンボルに基づいて前記第１の部分を復号する復号装置。
【請求項２】
符号化に使われる可能性のある複数のマスクシンボルと該マスクシンボルに対応する複数の情報信号の第１の部分との複数の排他的論理和を記憶するメモリをさらに具備し、
前記演算部は前記リード・マラー符号と前記メモリに記憶されている複数の排他的論理和の各々との排他的論理和を順次求めることを特徴とする請求項１記載の復号装置。
【請求項３】
前記演算部に供給されるリード・マラー符号を硬判定する硬判定部をさらに具備することを特徴とする請求項１、または請求項２記載の復号装置。
【請求項４】
前記第１の復号部は、前記演算部の出力を格納するメモリと、前記メモリから各ビットデータを読み出して排他的論理和をとりチェックサムを計算する演算器と、前記演算器の出力をリード・マラー符号の種類に応じて選択するチェックサム選択器と、前記チェックサム選択器の出力を累積加算する累積加算器と、前記累積加算器の出力を硬判定して情報ビットを復号する硬判定器とを具備することを特徴とする請求項１乃至請求項３のいずれか一項記載の復号装置。
【請求項５】
マスクシンボルと直交符号とを用いて情報信号を符号化したリード・マラー符号の復号方法において、
符号化に使われる可能性のある１つのマスクシンボルと該マスクシンボルに対応する情報信号の第１の部分との排他的論理和と、前記リード・マラー符号と、の排他的論理和をとる第１のステップと、
前記第１のステップの出力のチェックサムを計算し、該チェックサムを多数決判定し、直交符号に対応する情報信号の第２の部分の一部を復号する第２のステップと、
前記第２のステップの出力と直交符号との乗算結果と、前記第１のステップの出力と、の排他的論理和をとり、排他的論理和を多数決判定し、前記第２の部分の残りの部分を復号する第３のステップと、
前記第２、第３のステップにより復号された前記第２の部分の全部と、前記第１の部分と、をリード・マラー符号化する第４のステップと、
前記第１のステップから第４のステップまでを符号化に使われる可能性のある複数のマスクシンボルについて実行した時の前記第４ステップの出力と、前記第１のステップで使われるリード・マラー符号と、のユークリッド距離の最小値を検出する第５のステップとを具備し、
ユークリッド距離の最小値が得られるマスクシンボルに基づいて前記第１の部分を復号する復号方法。
【請求項６】
マスクシンボルと直交符号とを用いて情報信号を符号化したリード・マラー符号の復号装置において、
符号化に使われる可能性のある１つのマスクシンボルと該マスクシンボルに対応する情報信号の第１の部分との排他的論理和と、前記リード・マラー符号と、の排他的論理和をとる第１の演算部と、
前記第１の演算部の出力のチェックサムを計算し、該チェックサムを多数決判定し、直交符号に対応する情報信号の第２の部分の一部を復号する復号部と、
前記復号部の出力と直交符号との乗算結果の各ビット成分の第１の累積加算と、該乗算結果の各ビット成分の反転成分の第２の累積加算とを求め、該第１、第２の累積加算結果のユークリッド距離のより小さいものを求める第２の演算部と、
符号化に使われる可能性のある複数のマスクシンボルを前記第１の演算部に供給した時の前記第２の演算部の出力の最小値を検出する最小距離検出部とを具備し、
累積加算の最小値が得られるマスクシンボルに基づいて前記第１の部分を復号する復号装置。
【請求項７】
符号化に使われる可能性のある複数のマスクシンボルと該マスクシンボルに対応する複数の情報信号の第１の部分との複数の排他的論理和を記憶するメモリをさらに具備し、
前記第１の演算部は前記リード・マラー符号と前記メモリに記憶されている複数の排他的論理和の各々との排他的論理和を順次求めることを特徴とする請求項６記載の復号装置。
【請求項８】
前記第１の演算部に供給されるリード・マラー符号を硬判定する硬判定部をさらに具備することを特徴とする請求項６、または請求項７記載の復号装置。
【請求項９】
前記復号部は、前記第１の演算部の出力を格納するメモリと、前記メモリから各ビットデータを読み出して排他的論理和をとりチェックサムを計算する演算器と、前記演算器の出力をリード・マラー符号の種類に応じて選択するチェックサム選択器と、前記チェックサム選択器の出力を累積加算する累積加算器と、前記累積加算器の出力を硬判定して情報ビットを復号する硬判定器とを具備することを特徴とする請求項６乃至請求項８のいずれか一項記載の復号装置。
【請求項１０】
マスクシンボルと直交符号とを用いて情報信号を符号化したリード・マラー符号の復号方法において、
符号化に使われる可能性のある１つのマスクシンボルと該マスクシンボルに対応する情報信号の第１の部分との排他的論理和と、前記リード・マラー符号と、の排他的論理和をとる第１のステップと、
前記第１のステップの出力のチェックサムを計算し、該チェックサムを多数決判定し、直交符号に対応する情報信号の第２の部分の一部を復号する第２のステップと、
前記第２のステップの出力と直交符号との乗算結果の各ビット成分の第１の累積加算と、該乗算結果の各ビット成分の反転成分の第２の累積加算とを求め、該第１、第２の累積加算結果のユークリッド距離のより小さいものを求める第３のステップと、
前記第１のステップから第３のステップまでを符号化に使われる可能性のある複数のマスクシンボルについて実行した時の前記第３ステップの出力の最小値を検出する第４のステップとを具備し、
累積加算の最小値が得られるマスクシンボルに基づいて前記第１の部分を復号する復号方法。
【請求項１１】
マスクシンボルと直交符号とを用いて情報信号を符号化したリード・マラー符号の復号装置において、
符号化に使われる可能性のある１つのマスクシンボルと該マスクシンボルに対応する情報信号の第１の部分との排他的論理和と、前記リード・マラー符号と、を乗算する演算部と、
前記演算部の出力のチェックサムを計算し、該チェックサムを多数決判定し、直交符号に対応する情報信号の第２の部分の一部を復号する第１の復号部と、
前記第１の復号部の出力と直交符号との乗算結果と、前記演算部の出力と、の乗算結果を多数決判定し、前記第２の部分の残りの部分を復号する第２の復号部と、
前記第１、第２の復号部により復号された前記第２の部分の全部と、前記第１の部分と、をリード・マラー符号化するリード・マラー符号化部と、
符号化に使われる可能性のある複数のマスクシンボルを前記演算部に供給した時の前記リード・マラー符号化部の出力と、前記演算部に供給されるリード・マラー符号と、の相関の最大値を検出する最大値検出部とを具備し、
相関の最大値が得られるマスクシンボルに基づいて前記第１の部分を復号する復号装置。
【請求項１２】
符号化に使われる可能性のある複数のマスクシンボルと該マスクシンボルに対応する複数の情報信号の第１の部分との複数の排他的論理和を記憶するメモリをさらに具備し、
前記演算部は前記リード・マラー符号と前記メモリに記憶されている複数の排他的論理和の各々とを順次乗算することを特徴とする請求項１１記載の復号装置。
【請求項１３】
前記第１の復号部は、前記演算部の出力を格納するメモリと、前記メモリから各ビットデータを読み出して乗算しチェックサムを計算する演算器と、前記演算器の出力をリード・マラー符号の種類に応じて選択するチェックサム選択器と、前記チェックサム選択器の出力を累積加算する累積加算器とを具備することを特徴とする請求項１１、または請求項１２記載の復号装置。
【請求項１４】
マスクシンボルと直交符号とを用いて情報信号を符号化したリード・マラー符号の復号方法において、
符号化に使われる可能性のある１つのマスクシンボルと該マスクシンボルに対応する情報信号の第１の部分との排他的論理和と、前記リード・マラー符号と、を乗算する第１のステップと、
前記第１のステップの出力のチェックサムを計算し、該チェックサムを多数決判定し、直交符号に対応する情報信号の第２の部分の一部を復号する第２のステップと、
前記第２のステップの出力と直交符号との乗算結果と、前記第１のステップの出力と、の乗算結果を多数決判定し、前記第２の部分の残りの部分を復号する第３のステップと、
前記第２、第３のステップにより復号された前記第２の部分の全部と、前記第１の部分と、をリード・マラー符号化する第４のステップと、
前記第１のステップから第４のステップまでを符号化に使われる可能性のある複数のマスクシンボルについて実行した時の前記第４ステップの出力と、前記第１のステップで使われるリード・マラー符号と、の相関の最大値を検出する第５のステップとを具備し、
相関の最大値が得られるマスクシンボルに基づいて前記第１の部分を復号する復号方法。
【請求項１５】
マスクシンボルと直交符号とを用いて情報信号を符号化したリード・マラー符号の復号装置において、
符号化に使われる可能性のある１つのマスクシンボルと該マスクシンボルに対応する情報信号の第１の部分との排他的論理和と、前記リード・マラー符号と、を乗算する第１の演算部と、
前記第１の演算部の出力のチェックサムを計算し、該チェックサムを多数決判定し、直交符号に対応する情報信号の第２の部分の一部を復号する復号部と、
前記復号部の出力と直交符号との乗算結果の各ビット成分の第１の累積加算と、該乗算結果の各ビット成分の反転成分の第２の累積加算とを求め、該第１、第２の累積加算のより大きいものを求める第２の演算部と、
符号化に使われる可能性のある複数のマスクシンボルを前記第１の演算部に供給した時の前記第２の演算部の出力の最大値を検出する最大値検出部とを具備し、
累積加算の最大値が得られるマスクシンボルに基づいて前記第１の部分を復号する復号装置。
【請求項１６】
符号化に使われる可能性のある複数のマスクシンボルと該マスクシンボルに対応する複数の情報信号の第１の部分との複数の排他的論理和を記憶するメモリをさらに具備し、
前記演算部は前記リード・マラー符号と前記メモリに記憶されている複数の排他的論理和の各々とを順次乗算することを特徴とする請求項１５記載の復号装置。
【請求項１７】
前記復号部は、前記第１の演算部の出力を格納するメモリと、前記メモリから各ビットデータを読み出して乗算しチェックサムを計算する演算器と、前記演算器の出力をリード・マラー符号の種類に応じて選択するチェックサム選択器と、前記チェックサム選択器の出力を累積加算する累積加算器とを具備することを特徴とする請求項１５、または請求項１６記載の復号装置。
【請求項１８】
マスクシンボルと直交符号とを用いて情報信号を符号化したリード・マラー符号の復号方法において、
符号化に使われる可能性のある１つのマスクシンボルと該マスクシンボルに対応する情報信号の第１の部分との排他的論理和と、前記リード・マラー符号と、を乗算する第１のステップと、
前記第１のステップの出力のチェックサムを計算し、該チェックサムを多数決判定し、直交符号に対応する情報信号の第２の部分の一部を復号する第２のステップと、
前記第２のステップの出力と直交符号との乗算結果の各ビット成分の第１の累積加算と、該乗算結果の各ビット成分の反転成分の第２の累積加算とを求め、該第１、第２の累積加算のより大きいものを求める第３のステップと、
前記第１のステップから第３のステップまでを符号化に使われる可能性のある複数のマスクシンボルについて実行した時の前記第３のステップの最大値を検出する第４のステップとを具備し、
累積加算の最大値が得られるマスクシンボルに基づいて前記第１の部分を復号する復号方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、リード・マラー（リード・マラー）復号装置及び復号方法に関する。
【０００２】
【従来の技術】
誤り訂正符号の一種としてリード・マラー符号が知られている。通常のリード・マラー符号は６ビットの信号系列を３２ビットの符号系列に変換するリード・マラー（３２，６）符号である。リード・マラー符号においては、ｎ＝２ｍ（ｎは符号長、ｍは自然数（ｎ＝３２とすると、ｍは５））とすると、符号語間の最小ユークリッド距離が２ｍ−ｒ（ｒは符号の次数）であることが知られている。一般に、誤り訂正符号では符号語間の最小ユークリッド距離が大きい程、特性が良い（誤りに強い）。しかし、その分、伝送レートが下がる。そこで、伝送レートをさほど下げずに特性を良くするために、従来のリード・マラー符号にマスクシンボルを加えて最小ユークリッド距離を大きくとる方式が提案されている(3rd Generation Partnership Project; Technical Specification Group Radio Access Network; Multiplexing and channel coding (FDD) (Release 1999) 3G TS 25.212 V3.3.0 (2000-06))。この符号は６ビットの信号系列に４ビットのマスクシンボルを加えた合計１０ビットの信号系列を３２ビットの符号系列に変換するリード・マラー（３２，１０）符号と呼ばれる。
【０００３】
リード・マラー符号の復号装置は単純な多数決回路で実現できることが知られている（特開平９−７４３５９号公報）。しかし、リード・マラー（３２，６）符号についての多数決回路は比較的容易に実現できるが、リード・マラー（３２，１０）符号においては、多数決判定の際に計算しなければならないチェックサムの算出が困難である。
【０００４】
そこで、多数決判定を使わない復号の一例として、相関値計算による最尤復号も考えられている(Harmonization impact on TFCI and New Optimal Coding for extended TFCI with almost no Complexity increase (rev 1))TSGR#6(99)970)。しかし、この方法は、受信系列に対してすべての符号語の相関をとるため、もともと演算量が多く、ハードウェアの規模的もかなり大きなものになり、リード・マラー（３２，１０）符号については実現が困難である。
【０００５】
【発明が解決しようとする課題】
このように、近年提案されたマスクシンボルを含んだリード・マラー符号は誤りに対して強いが、復号装置を実現するのが困難であった。
【０００６】
本発明の目的は、マスクシンボルを用いたリード・マラー符号の復号装置、復号方法において、演算量、ハードウェアの規模を低減することである。
【０００７】
【課題を解決するための手段】
上記した課題を解決し目的を達成するために、本発明は以下に示す手段を用いている。
【０００８】
（１）マスクシンボルと直交符号とを用いて情報信号を符号化したリード・マラー符号の復号装置は、符号化に使われる可能性のある１つのマスクシンボルと該マスクシンボルに対応する情報信号の第１の部分との排他的論理和と、前記リード・マラー符号と、の排他的論理和をとる演算部（１４）と、前記演算部の出力のチェックサムを計算し、該チェックサムを多数決判定し、直交符号に対応する情報信号の第２の部分の一部を復号する第１の復号部（１６、１８）と、前記第１の復号部の出力と直交符号との乗算結果と、前記演算部の出力と、の排他的論理和をとり、排他的論理和を多数決判定し、前記第２の部分の残りの部分を復号する第２の復号部（２４）と、前記第１、第２の復号部により復号された前記第２の部分の全部と、前記第１の部分と、をリード・マラー符号化するリード・マラー符号化部（２６）と、符号化に使われる可能性のある複数のマスクシンボルを前記演算部（１４）に供給した時の前記リード・マラー符号化部（２６）の出力と、前記演算部に供給されるリード・マラー符号と、のユークリッド距離の最小値を検出する最小距離検出部（３０）とを具備し、ユークリッド距離の最小値が得られるマスクシンボルに基づいて前記第１の部分を復号する。
【０００９】
（２）マスクシンボルと直交符号とを用いて情報信号を符号化したリード・マラー符号の復号方法は、符号化に使われる可能性のある１つのマスクシンボルと該マスクシンボルに対応する情報信号の第１の部分との排他的論理和と、前記リード・マラー符号と、の排他的論理和をとる第１のステップと、前記第１のステップの出力のチェックサムを計算し、該チェックサムを多数決判定し、直交符号に対応する情報信号の第２の部分の一部を復号する第２のステップと、前記第２のステップの出力と直交符号との乗算結果と、前記第１のステップの出力と、の排他的論理和をとり、排他的論理和を多数決判定し、前記第２の部分の残りの部分を復号する第３のステップと、前記第２、第３のステップにより復号された前記第２の部分の全部と、前記第１の部分と、をリード・マラー符号化する第４のステップと、前記第１のステップから第４のステップまでを符号化に使われる可能性のある複数のマスクシンボルについて実行した時の前記第４ステップの出力と、前記第１のステップで使われるリード・マラー符号と、のユークリッド距離の最小値を検出する第５のステップとを具備し、
ユークリッド距離の最小値が得られるマスクシンボルに基づいて前記第１の部分を復号する。
【００１０】
（３）マスクシンボルと直交符号とを用いて情報信号を符号化したリード・マラー符号の復号装置は、符号化に使われる可能性のある１つのマスクシンボルと該マスクシンボルに対応する情報信号の第１の部分との排他的論理和と、前記リード・マラー符号と、の排他的論理和をとる第１の演算部（１４）と、前記第１の演算部の出力のチェックサムを計算し、該チェックサムを多数決判定し、直交符号に対応する情報信号の第２の部分の一部を復号する復号部（１６、１８）と、前記復号部の出力と直交符号との乗算結果の各ビット成分の第１の累積加算と、該乗算結果の各ビット成分の反転成分の第２の累積加算とを求め、該第１、第２の累積加算結果のユークリッド距離のより小さいものを求める第２の演算部（５４）と、符号化に使われる可能性のある複数のマスクシンボルを前記第１の演算部（１４）に供給した時の前記第２の演算部（５４）の出力の最小値を検出する最小距離検出部（３０）とを具備し、累積加算の最小値が得られるマスクシンボルに基づいて前記第１の部分を復号する。
【００１１】
（４）マスクシンボルと直交符号とを用いて情報信号を符号化したリード・マラー符号の復号方法は、符号化に使われる可能性のある１つのマスクシンボルと該マスクシンボルに対応する情報信号の第１の部分との排他的論理和と、前記リード・マラー符号と、の排他的論理和をとる第１のステップと、前記第１のステップの出力のチェックサムを計算し、該チェックサムを多数決判定し、直交符号に対応する情報信号の第２の部分の一部を復号する第２のステップと、前記第２のステップの出力と直交符号との乗算結果の各ビット成分の第１の累積加算と、該乗算結果の各ビット成分の反転成分の第２の累積加算とを求め、該第１、第２の累積加算結果のユークリッド距離のより小さいものを求める第３のステップと、前記第１のステップから第３のステップまでを符号化に使われる可能性のある複数のマスクシンボルについて実行した時の前記第３ステップの出力の最小値を検出する第４のステップとを具備し、累積加算の最小値が得られるマスクシンボルに基づいて前記第１の部分を復号する。
【００１２】
（５）マスクシンボルと直交符号とを用いて情報信号を符号化したリード・マラー符号の復号装置において、
符号化に使われる可能性のある１つのマスクシンボルと該マスクシンボルに対応する情報信号の第１の部分との排他的論理和と、前記リード・マラー符号と、を乗算する演算部（６０）と、
前記演算部の出力のチェックサムを計算し、該チェックサムを多数決判定し、直交符号に対応する情報信号の第２の部分の一部を復号する第１の復号部（１６、１８）と、
前記第１の復号部の出力と直交符号との乗算結果と、前記演算部の出力と、の乗算結果を多数決判定し、前記第２の部分の残りの部分を復号する第２の復号部（２４）と、
前記第１、第２の復号部により復号された前記第２の部分の全部と、前記第１の部分と、をリード・マラー符号化するリード・マラー符号化部（２６）と、
符号化に使われる可能性のある複数のマスクシンボルを前記演算部（１４）に供給した時の前記リード・マラー符号化部（２６）の出力と、前記演算部に供給されるリード・マラー符号と、の相関の最大値を検出する最大値検出部（６６）とを具備し、
相関の最大値が得られるマスクシンボルに基づいて前記第１の部分を復号する復号装置。
【００１３】
（６）マスクシンボルと直交符号とを用いて情報信号を符号化したリード・マラー符号の復号方法は、符号化に使われる可能性のある１つのマスクシンボルと該マスクシンボルに対応する情報信号の第１の部分との排他的論理和と、前記リード・マラー符号と、を乗算する第１のステップと、前記第１のステップの出力のチェックサムを計算し、該チェックサムを多数決判定し、直交符号に対応する情報信号の第２の部分の一部を復号する第２のステップと、前記第２のステップの出力と直交符号との乗算結果と、前記第１のステップの出力と、の乗算結果を多数決判定し、前記第２の部分の残りの部分を復号する第３のステップと、前記第２、第３のステップにより復号された前記第２の部分の全部と、前記第１の部分と、をリード・マラー符号化する第４のステップと、前記第１のステップから第４のステップまでを符号化に使われる可能性のある複数のマスクシンボルについて実行した時の前記第４ステップの出力と、前記第１のステップで使われるリード・マラー符号と、の相関の最大値を検出する第５のステップとを具備し、相関の最大値が得られるマスクシンボルに基づいて前記第１の部分を復号する。
【００１４】
（７）マスクシンボルと直交符号とを用いて情報信号を符号化したリード・マラー符号の復号装置は、符号化に使われる可能性のある１つのマスクシンボルと該マスクシンボルに対応する情報信号の第１の部分との排他的論理和と、前記リード・マラー符号と、を乗算する第１の演算部（６０）と、前記第１の演算部の出力のチェックサムを計算し、該チェックサムを多数決判定し、直交符号に対応する情報信号の第２の部分の一部を復号する復号部（１６、１８）と、前記復号部の出力と直交符号との乗算結果の各ビット成分の第１の累積加算と、該乗算結果の各ビット成分の反転成分の第２の累積加算とを求め、該第１、第２の累積加算のより大きいものを求める第２の演算部（７８）と、符号化に使われる可能性のある複数のマスクシンボルを前記第１の演算部（６０）に供給した時の前記第２の演算部（７８）の出力の最大値を検出する最大値検出部（６６）とを具備し、累積加算の最大値が得られるマスクシンボルに基づいて前記第１の部分を復号する。
【００１５】
（８）マスクシンボルと直交符号とを用いて情報信号を符号化したリード・マラー符号の復号方法は、符号化に使われる可能性のある１つのマスクシンボルと該マスクシンボルに対応する情報信号の第１の部分との排他的論理和と、前記リード・マラー符号と、を乗算する第１のステップと、前記第１のステップの出力のチェックサムを計算し、該チェックサムを多数決判定し、直交符号に対応する情報信号の第２の部分の一部を復号する第２のステップと、前記第２のステップの出力と直交符号との乗算結果の各ビット成分の第１の累積加算と、該乗算結果の各ビット成分の反転成分の第２の累積加算とを求め、該第１、第２の累積加算のより大きいものを求める第３のステップと、前記第１のステップから第３のステップまでを符号化に使われる可能性のある複数のマスクシンボルについて実行した時の前記第３のステップの最大値を検出する第４のステップとを具備し、累積加算の最大値が得られるマスクシンボルに基づいて前記第１の部分を復号する。
【００１６】
本発明によれば、マスクシンボルを用いたリード・マラー符号からマスクシンボルを外したものを多数決判定によりリード・マラー復号し、この復号結果にマスクシンボルを加えたものをリードマラー符号化し、この符号化出力と元の符号とのユークリッド距離、または相関を求める処理をマスクシンボルの数だけ繰り返し、最小の距離、または最大の相関に対応するマスクシンボルを求め、このマスクシンボルから情報信号を復号する。
【００１７】
このため、多数決判定の際に計算しなければならないチェックサムをマスクシンボルを用いないリード・マラー符号の復号の場合に比べて増えることがない。このため、演算量、ハードウェアの規模を低減することができる復号装置を提供できる。
【００１８】
【発明の実施の形態】
以下、図面を参照して本発明による復号装置の実施形態を説明する。
【００１９】
（第１実施形態）
図１は本発明の第１実施形態に係るリード・マラー（３２，１０）符号の復号装置の構成を示す図である。
【００２０】
先ず、本復号装置に入力されるリード・マラー符号について説明する。リード・マラー（３２，１０）符号では、マスクシンボルは４ビットの情報系列により選択されるため、パターン（マスクパターン）は全部で２４＝１６パターンである。
【００２１】
以下の説明では、以下のような定義を行なう。
【００２２】
“＾”は排他的論理和を表す。２つのベクトルＡとＢについて、式“Ａ＾Ｂ”は各々のベクトルの成分の排他的論理和を示す。
【００２３】
ベクトルＡに対してｍ（Ａ）はベクトルの各成分について０を＋１に、１を−１に変更したものである。
【００２４】
符号化される１０ビットの情報系列をｄ０，ｄ１，ｄ２，ｄ３，ｄ４，ｄ５，ｄ６，ｄ７，ｄ８，ｄ９とする。各ビットｄｎは０もしくは１である。
【００２５】
符号化に使用される直交符号系列をＣ０，Ｃ１，Ｃ２，Ｃ３，Ｃ４，Ｃ５とする。各系列Ｃｎは３２ビットの系列で、その３２個の要素は０もしくは１である。なお、Ｃ０はすべて１の系列である。
【００２６】
同様に、符号化に使用されるマスクシンボル系列をＭ１，Ｍ２，Ｍ３，Ｍ４とする。各系列Ｍｎは３２ビットの系列である。マスクシンボル系列と情報系列の排他的論理和であるマスクパターンｄ６Ｍ１＾ｄ７Ｍ２＾ｄ８Ｍ３＾ｄ９Ｍ４は２４＝１６パターンある。
【００２７】
直交符号系列Ｃ０〜Ｃ５と、マスクシンボル系列Ｍ１〜Ｍ４の一例を表１に示す。
【００２８】
【表１】
0003923743.tif 000002
【００２９】
符号化装置は上記情報系列ｄを直交符号系列Ｃ０〜Ｃ５と、マスクシンボル系列Ｍ１〜Ｍ４とに基づいて符号化し、次のような３２ビット符号化ビット系列ｓを出力する。ここで、情報系列の各ビットに乗算される直交符号系列、マスクシンボル系列は予め決まっている。
【００３０】
ｓ＝ｄ０Ｃ０＾ｄ１Ｃ１＾ｄ２Ｃ２＾ｄ３Ｃ３＾ｄ４Ｃ４＾ｄ５Ｃ５＾ｄ６Ｍ１＾ｄ７Ｍ２＾ｄ８Ｍ３＾ｄ９Ｍ４                （１）
ここで、（１）式は変調されてｍ（ｓ）として送信される。本実施形態では、この信号ｍ（ｓ）に伝送路や雑音による誤りが加えられた信号が図１の復号装置に入力され、硬判定部１０によって硬判定される。
【００３１】
硬判定部１０とは、０および１に対応した数値＋１，−１が雑音等によりこれ以外の０．２，１．８，−１．２等の値になった場合、それを本来の数値、つまり０もしくは１として再現するものである。その結果、（１）式に誤り系列ｅ（０もしくは１）が加えられた（排他的論理和）信号が硬判定部１０の出力となる。
【００３２】
メモリ１２は表１の直交符号系列Ｃ０〜Ｃ５と、マスクシンボル系列Ｍ１〜Ｍ４、さらに、表１には示さない１６個のマスクパターンｄ６Ｍ１＾ｄ７Ｍ２＾ｄ８Ｍ３＾ｄ９Ｍ４を格納する。ｉはビット位置を示す。
【００３３】
硬判定部１０の出力は、メモリ１２から読み出されたマスクパターンの１つと排他的論理和部１４によって排他的論理和が計算される。
【００３４】
排他的論理和部１４の出力がチェックサム算出部１６に供給され、排他的論理和のチェックサムが計算される。チェックサムはｄ０〜ｄ９までの１０ビットの情報系列のうち、ｄ１〜ｄ５の５ビットについてそれぞれ１６個計算される。
【００３５】
この合計８０個のチェックサム算出部１６の出力は、多数決判定部１８によって多数決判定され、直交符号系列Ｃ０〜Ｃ５に対応する情報系列ｄ１’〜ｄ５’が復号される。具体的には、チェックサムの出力に関して０の数が多ければ０と判定し、１の数が多ければ１と判定する。
【００３６】
この５ビットの情報系列について、直交符号乗算部２０によって対応する直交符号が乗算される。
【００３７】
排他的論理和部１４の出力と、直交符号乗算部２０の出力が排他的論理和部２２によって排他的論理和がとられる。排他的論理和部２２の出力を多数決判定部２４で判定することにより、ｄ０’が復号される。具体的には、排他的論理和部２２の出力で０の数が多ければ情報系列の各ビットを０と判定し、１の数が多ければ１と判定する。多数決判定部２４により情報系列のビットｄ０’が確定した時、この確定に使用されたマスクパターンから情報系列のビットｄ６’〜ｄ９’が分かる。
【００３８】
以上の操作により、排他的論理和部１４により、復号装置に入力されたリード・マラー符号と、マスクパターンと情報系列との排他的論理和との排他的論理和を求めることにより、リード・マラー符号からマスクパターンを外すことができる。このマスクパターンを外したリード・マラー符号を多数決判定し、さらに乗算部２０で直交符号と乗算することにより、情報系列の各ビットｄ０’〜ｄ９’が特定される。この情報系列をリード・マラー符号化部２６によって再びリード・マラー符号化する。リード・マラー符号化部２６の出力がユークリッド距離算出部２８に供給され、硬判定部１０から出力された受信系列とのユークリッド距離が計算される。
【００３９】
上記処理を１６通りのすべてのマスクパターンに対して行ない、最小距離検出部３０によって最小のユークリッド距離を検出する。最小距離が検出された時のｄ０’〜ｄ９’が正しいものとみなされ、復号が完了する。
【００４０】
図２は第１実施形態のフローチャートである。
【００４１】
ステップＳ１０で、硬判定部１０が符号化信号を硬判定する。ここで、本復号装置に入力される符号化ビット系列は（１）式で示した符号化装置から変調されて出力されたｍ（ｓ）そのものではなく、当該信号に伝送路や雑音による誤りが加えられた信号である。それを硬判定した結果は（２）式となる（ｅは０もしくは１の誤り系列である）。
【００４２】
ｄ０Ｃ０＾ｄ１Ｃ１＾ｄ２Ｃ２＾ｄ３Ｃ３＾ｄ４Ｃ４＾ｄ５Ｃ５＾ｄ６Ｍ１＾ｄ７Ｍ２＾ｄ８Ｍ３＾ｄ９Ｍ４＾ｅ        （２）
硬判定とは、０および１に対応した数値＋１，−１が雑音等によりこれ以外の０．２，１．８，−１．２等の値になった場合、それを本来の数値、つまり０もしくは１として再現するものである。
【００４３】
ステップＳ１２で、マスクパターンが１つ指定され、ステップＳ１４で、この指定された１つのマスクパターンがメモリ１２から読み出され、ステップＳ１６で、排他的論理和部１４が硬判定部１０の出力符号化ビット系列とマスクパターンとの排他的論理和を計算する。
【００４４】
メモリ１２は表１の直交符号系列Ｃ０〜Ｃ５と、マスクシンボル系列Ｍ１〜Ｍ４、さらに、表１には示さないマスクパターンｄ６Ｍ１＾ｄ７Ｍ２＾ｄ８Ｍ３＾ｄ９Ｍ４を格納する。ｉはビット位置を示す。
【００４５】
メモリ１２から読み出されたマスクパターンをＭ’＝ｄ６’Ｍ１＾ｄ７’Ｍ２＾ｄ８’Ｍ３＾ｄ９’Ｍ４とすると、排他的論理和部１４から出力される排他的論理和は次のようになる。
【００４６】
ｄ０Ｃ０＾ｄ１Ｃ１＾ｄ２Ｃ２＾ｄ３Ｃ３＾ｄ４Ｃ４＾ｄ５Ｃ５＾（ｄ６＾ｄ６’）Ｍ１＾（ｄ７＾ｄ７’）Ｍ２＾（ｄ８＾ｄ８’）Ｍ３＾（ｄ９＾ｄ９’）Ｍ４＾ｅ        （３）
ステップＳ１８で、チェックサム算出部１６が排他的論理和部１４の出力（式（３））のチェックサムを計算する。チェックサムはｄ０〜ｄ９までの１０ビットの情報系列のうち、ｄ１〜ｄ５の５ビットについてそれぞれ次のような１６個が計算される。
【００４７】
ｄ１のチェックサム
ｄ１’  ＝  ｒ０  ×  ｒ３０
ｄ１’  ＝  ｒ１  ×  ｒ２
ｄ１’  ＝  ｒ３  ×  ｒ４
ｄ１’  ＝  ｒ５  ×  ｒ６
ｄ１’  ＝  ｒ７  ×  ｒ８
ｄ１’  ＝  ｒ９  ×  ｒ１０
ｄ１’  ＝  ｒ１１  ×  ｒ１２
ｄ１’  ＝  ｒ１３  ×  ｒ１４
ｄ１’  ＝  ｒ１５  ×  ｒ３１
ｄ１’  ＝  ｒ１６  ×  ｒ１７
ｄ１’  ＝  ｒ１８  ×  ｒ１９
ｄ１’  ＝  ｒ２０  ×  ｒ２１
ｄ１’  ＝  ｒ２２  ×  ｒ２３
ｄ１’  ＝  ｒ２４  ×  ｒ２５
ｄ１’  ＝  ｒ２６  ×  ｒ２７
ｄ１’  ＝  ｒ２８  ×  ｒ２９
ｄ２のチェックサム
ｄ２’  ＝  ｒ０  ×  ｒ２
ｄ２’  ＝  ｒ１  ×  ｒ３０
ｄ２’  ＝  ｒ３  ×  ｒ５
ｄ２’  ＝  ｒ４  ×  ｒ６
ｄ２’  ＝  ｒ７  ×  ｒ９
ｄ２’  ＝  ｒ８  ×  ｒ１０
ｄ２’  ＝  ｒ１１  ×  ｒ１３
ｄ２’  ＝  ｒ１２  ×  ｒ１４
ｄ２’  ＝  ｒ１５  ×  ｒ１７
ｄ２’  ＝  ｒ１６  ×  ｒ３１
ｄ２’  ＝  ｒ１８  ×  ｒ２０
ｄ２’  ＝  ｒ１９  ×  ｒ２１
ｄ２’  ＝  ｒ２２  ×  ｒ２４
ｄ２’  ＝  ｒ２３  ×  ｒ２５
ｄ２’  ＝  ｒ２６  ×  ｒ２８
ｄ２’  ＝  ｒ２７  ×  ｒ２９
ｄ３のチェックサム
ｄ３’  ＝  ｒ０  ×  ｒ４
ｄ３’  ＝  ｒ１  ×  ｒ５
ｄ３’  ＝  ｒ２  ×  ｒ６
ｄ３’  ＝  ｒ３  ×  ｒ３０
ｄ３’  ＝  ｒ７  ×  ｒ１１
ｄ３’  ＝  ｒ８  ×  ｒ１２
ｄ３’  ＝  ｒ９  ×  ｒ１３
ｄ３’  ＝  ｒ１０  ×  ｒ１４
ｄ３’  ＝  ｒ１５  ×  ｒ１９
ｄ３’  ＝  ｒ１６  ×  ｒ２０
ｄ３’  ＝  ｒ１７  ×  ｒ２１
ｄ３’  ＝  ｒ１８  ×  ｒ３１
ｄ３’  ＝  ｒ２２  ×  ｒ２６
ｄ３’  ＝  ｒ２３  ×  ｒ２７
ｄ３’  ＝  ｒ２４  ×  ｒ２８
ｄ３’  ＝  ｒ２５  ×  ｒ２９
ｄ４のチェックサム
ｄ４’  ＝  ｒ０  ×  ｒ８
ｄ４’  ＝  ｒ１  ×  ｒ９
ｄ４’  ＝  ｒ２  ×  ｒ１０
ｄ４’  ＝  ｒ３  ×  ｒ１１
ｄ４’  ＝  ｒ４  ×  ｒ１２
ｄ４’  ＝  ｒ５  ×  ｒ１３
ｄ４’  ＝  ｒ６  ×  ｒ１４
ｄ４’  ＝  ｒ７  ×  ｒ３０
ｄ４’  ＝  ｒ１５  ×  ｒ２３
ｄ４’  ＝  ｒ１６  ×  ｒ２４
ｄ４’  ＝  ｒ１７  ×  ｒ２５
ｄ４’  ＝  ｒ１８  ×  ｒ２６
ｄ４’  ＝  ｒ１９  ×  ｒ２７
ｄ４’  ＝  ｒ２０  ×  ｒ２８
ｄ４’  ＝  ｒ２１  ×  ｒ２９
ｄ４’  ＝  ｒ２２  ×  ｒ３１
ｄ５のチェックサム
ｄ５’  ＝  ｒ０  ×  ｒ１５
ｄ５’  ＝  ｒ１  ×  ｒ１６
ｄ５’  ＝  ｒ２  ×  ｒ１７
ｄ５’  ＝  ｒ３  ×  ｒ１８
ｄ５’  ＝  ｒ４  ×  ｒ１９
ｄ５’  ＝  ｒ５  ×  ｒ２０
ｄ５’  ＝  ｒ６  ×  ｒ２１
ｄ５’  ＝  ｒ７  ×  ｒ２２
ｄ５’  ＝  ｒ８  ×  ｒ２３
ｄ５’  ＝  ｒ９  ×  ｒ２４
ｄ５’  ＝  ｒ１０  ×  ｒ２５
ｄ５’  ＝  ｒ１１  ×  ｒ２６
ｄ５’  ＝  ｒ１２  ×  ｒ２７
ｄ５’  ＝  ｒ１３  ×  ｒ２８
ｄ５’  ＝  ｒ１４  ×  ｒ２９
ｄ５’  ＝  ｒ３０  ×  ｒ３１
ここで、ｒｎ（ｎ＝０，１，…３１）はマスクパターンの乗算後、チェックサム算出部１６に入力される３２値（硬判定なら３２ビット）の信号に相当する。
【００４８】
ステップＳ２０で、多数決判定部１８がこの合計８０個の出力を多数決判定処理し、ｄ１’〜ｄ５’を復号する。具体的には、チェックサムの出力に関して０の数が多ければ０と判定し、１の数が多ければ１と判定する。
【００４９】
ステップＳ２２で、直交符号乗算部２０がこの５ビットの情報系列ｄ１’〜ｄ５’に、それに対応する直交符号を乗算する。直交符号乗算部２０の出力は次のようになる。
【００５０】
ｄ１’Ｃ１＾ｄ２’Ｃ２＾ｄ３’Ｃ３＾ｄ４’Ｃ４＾ｄ５’Ｃ５    （４）
ステップＳ２４で、排他的論理和部２２が排他的論理和部１４の出力（式（３））と、直交符号乗算部２０の出力（式（４））との排他的論理和を求める。排他的論理和部２２の出力である排他的論理和は次のようになる。
【００５１】
ｄ０Ｃ０＾（ｄ１＾ｄ１’）Ｃ１＾（ｄ２＾ｄ２’）Ｃ２＾（ｄ３＾ｄ３’）Ｃ３＾（ｄ４＾ｄ４’）Ｃ４＾（ｄ５＾ｄ５’）Ｃ５＾（ｄ６＾ｄ６’）Ｍ１＾（ｄ７＾ｄ７’）Ｍ２＾（ｄ８＾ｄ８’）Ｍ３＾（ｄ９＾ｄ９’）Ｍ４＾ｅ
（５）
ここで、もしｄ１’〜ｄ９’が正しく復号されていれば、（ｄｎ＾ｄｎ’）Ｃｎ  （ｎ＝１，２，…，９）の項は０ベクトルになる。この場合、排他的論理和部２２の出力（（５）式）は次のようになる。
【００５２】
ｄ０Ｃ０＾ｅ        （６）
Ｃ０はすべて１の系列であるため、排他的論理和部２２の出力（（６）式）を多数決判定部２４で判定することでｄ０’が得られる（ステップＳ２６）。具体的には、排他的論理和部２２の出力（（６）式）で０の数が多ければ情報系列の各ビットを０と判定し、１の数が多ければ１と判定する。多数決判定部２４により情報系列のビットｄ０’が確定した時、この確定に使用されたマスクパターンから情報系列のビットｄ６’〜ｄ９’が分かる。以上の操作により、情報系列の各ビットｄ０’〜ｄ９’が確定する。
【００５３】
ステップＳ２８で、リード・マラー符号化部２６がこの情報系列ｄ０’〜ｄ９’をリード・マラー符号化し、次のような符号化系列が得られる。
【００５４】
ｄ０’Ｃ０＾ｄ１’Ｃ１＾ｄ２’Ｃ２＾ｄ３’Ｃ３＾ｄ４’Ｃ４＾ｄ５’Ｃ＾ｄ６’Ｍ１＾ｄ７’Ｍ２＾ｄ８’Ｍ３＾ｄ９’Ｍ４            （７）
ステップＳ３０で、ユークリッド距離算出部２８がリード・マラー符号化部２６の出力（（７）式）と硬判定部１０から出力された受信系列（（２）式）とのユークリッド距離を計算する。具体的には、先ず、リード・マラー符号化部２６の出力（（７）式）と硬判定部１０の出力（（２）式）との排他的論理和が次のように求められる。
【００５５】
（ｄ０＾ｄ０’）Ｃ０＾（ｄ１＾ｄ１’）Ｃ１＾（ｄ２＾ｄ２’）Ｃ２＾（ｄ３＾ｄ３’）Ｃ３＾（ｄ４＾ｄ４’）Ｃ４＾（ｄ５＾ｄ５’）Ｃ５＾（ｄ６＾ｄ６’）Ｍ１＾（ｄ７＾ｄ７’）Ｍ２＾（ｄ８＾ｄ８’）Ｍ３＾（ｄ９＾ｄ９’）Ｍ４＾ｅ              （８）
（８）式は３２ビットの系列であり、それらの３２ビットの和が、リード・マラー符号化部２６の出力（（７）式）と、硬判定部１０の出力（（２）式）とのユークリッド距離を表す。
【００５６】
ステップＳ３２で、メモリ１２内の１６種類のマスクパターンの全てについて上記処理を行なったか否かが判定される。未処理のマスクパターンが残っている場合は、ステップＳ３４で次のマスクパターンが指定されて、ステップＳ１４のマスクパターンの読出し以降の処理が繰り返される。
【００５７】
メモリ１２内の１６種類のマスクパターンの全てについて上記処理が行なわれた場合は、ステップＳ３６で、最小距離検出部３０が最小のユークリッド距離を検出する。その最小処理が得られた時のマスクパターンに基づいて、ｄ６’〜ｄ９’が復号され、多数決判定部１８によって復号されたｄ１’〜ｄ５’と、多数決判定部２４によって復号されたｄ０’と併せて、情報系列ｄ０’〜ｄ９’が復号される。
【００５８】
以上説明したように本実施形態によれば、マスクシンボルを用いたリード・マラー符号からマスクシンボルを外したものを多数決判定によりリード・マラー復号し、この復号結果にマスクシンボルを加えたものをリードマラー符号化し、この符号化出力と元の符号とのユークリッド距離を求める処理をマスクシンボルの数だけ繰り返し、最小の距離に対応するマスクシンボルを求め、このマスクシンボルから情報ビットを復号する。このため、多数決判定の際に計算しなければならないチェックサムをマスクシンボルを用いないリード・マラー符号の復号の場合に比べて増えることがない。このため、演算量、ハードウェアの規模を低減することができる復号装置を提供できる。
【００５９】
本実施形態はリード・マラー（３２，１０）符号に限らず、従来のリード・マラー（３２，６）符号の復号装置としても使える。このためには、硬判定部１０と排他的論理和部１４との間に切替えスイッチ３２を接続して、スイッチ３２の切替えにより硬判定部１０の出力を排他的論理和部１４をバイパスしてチェックサム算出部１６に直接供給する経路も設けるとともに、多数決判定部２４とリード・マラー符号化部２６との間にも切替えスイッチ３４を接続して、スイッチ３４の切替えにより多数決判定部２４の出力をそのまま復号結果として出力すればよい。
【００６０】
なお、最尤復号を用いた場合には、受信信号に対して、すべての符号語との相関を計算する必要がある。しかし、本発明では、マスクシンボルの各々について予め乗算を行うことにより相関値計算の計算量が低減できる。
【００６１】
図３は図１のチェックサム算出部１６と多数決判定部１８との部分の変形例である。排他的論理和部１４の出力を格納するメモリ４０と、メモリ４０から各ビットデータを読み出して排他的論理和をとりチェックサムを計算する排他的論理和部４２と、排他的論理和部４２の出力をリード・マラー符号の種類に応じて選択するチェックサム選択部４４と、チェックサム選択部４４の出力を累積加算する累積加算部４６と、累積加算部４６の出力を硬判定して情報ビットを復号する判定部４８とからなる。
【００６２】
リード・マラー符号は、メモリ４０に格納される。チェックサムは符号の種類に応じてその組み合わせが決まっており、それに応じた組み合わせの排他的論理和が排他的論理和部４２で求められる。例えば、リード・マラー（３２，６）符号では、８０個のチェックサムが計算されるのに対し、リード・マラー（１６，５）符号では３２個のチェックサムを計算すれば良い。排他的論理和部４２の出力は、チェックサム選択部４４によってどのビットの符号に使われるかが選択され、累積加算部４６によって累積加算され、判定部４８によってビットの判定がなされる。
【００６３】
以下、本発明による復号装置の他の実施形態を説明する。他の実施形態の説明において第１の実施形態と同一部分は同一参照数字を付してその詳細な説明は省略する。
【００６４】
（第２実施形態）
図４に第２実施形態の回路図を示す。図４は、図１の復号装置をその性能が変わらないように簡易化したものである。第１実施形態と同様に、マスクシンボルを用いたリード・マラー（３２，１０）符号を例に挙げて説明する。
【００６５】
図１の排他的論理和部２２の出力（（５）式）と、リード・マラー符号化部２６の出力（（７）式）と硬判定部１０の出力（（２）式）とのユークリッド距離（（８）式）とに着目すると、両者の違いは、（８）式には（５）式には含まれていないｄ０’Ｃ０が存在するだけである。ｄ０’＝０の場合は、（５）式と（８）式は同じである。ｄ０’＝１の場合は、Ｃ０がすべて１の系列であることから、（８）式は（５）式の０と１を反転したものとなる。
【００６６】
これにより、排他的論理和部２２の出力（（５）式）と、その０と１とを反転したもののいずれかについて、ユークリッド距離が小さいものが正しい符号であると考えることができる。すなわち、図１の多数決判定部２４、リード・マラー符号化部２６、ユークリッド距離計算部２８は省略可能である。
【００６７】
（５）式の各成分を累積加算した結果は、受信符号化系列（（２）式）と、本復号装置で判定したｄ０’〜ｄ９’（ただし、ｄ０’＝０）をリード・マラー（３２，１０）符号化した系列とのユークリッド距離に相当する（累積加算結果に含まれる１の数が距離となる）。（５）式の０と１とを反転したものの各成分を累積加算した結果は、受信符号化系列（（２）式）と、本復号装置で判定したｄ０’〜ｄ９’（ただし、ｄ０’＝１）をリード・マラー（３２，１０）符号化した系列とのユークリッド距離に相当する。
【００６８】
そのため、排他的論理和部２２の出力が反転検出部５４に入力され、排他的論理和部２２の出力の各成分の累積加算結果と、排他的論理和部２２の出力の各成分の０と１とを反転したものの累積加算結果との大小関係を判定し、小さい方が選択され、最小距離検出部３０に供給される。
【００６９】
この処理を、ｄ６〜ｄ９に対応した１６通りのすべてのマスクパターンに関して行ない、最小距離検出部３０によって最小のユークリッド距離が検出される。その時のｄ’０〜ｄ’９が正しいものとみなされ、復号が完了する。
【００７０】
第２実施形態も第１実施形態と同様に、従来のリード・マラー（３２，６）符号の復号装置としても使えるように、切替えスイッチ３２、３４が接続されている。
【００７１】
図５は第２実施形態のフローチャートである。ステップＳ２４で排他的論理和部２２が排他的論理和部１４の出力（式（３））と、直交符号乗算部２０の出力（式（４））との排他的論理和を求めるまでは、第１実施形態と同じである。本実施形態では、その後、ステップＳ４０で、反転検出部５４が、排他的論理和部２２の出力の各成分の累積加算と、排他的論理和部２２の出力の各成分の０と１とを反転したものの累積加算とを求める。ステップＳ４２で、このうちの小さいものを選択し、最小距離検出部３０に供給する。
【００７２】
この後、ステップＳ３２で全てのマスクパターンについて上記処理を行なったか否か判定し、未処理のマスクパターンが残っている場合は、ステップＳ３４で次のマスクパターンが指定され、ステップＳ１４のマスクパターンの読出し以降の処理が繰り返されることは第１実施形態と同じである。１６種類のマスクパターンの全てについて上記処理が行なわれた場合は、ステップＳ３６で、最小距離検出部３０が反転検出部５４の１６個の出力の最小値を求める。
【００７３】
（第３実施形態）
図６は本発明の第３実施形態に係るリード・マラー（３２，１０）符号の復号装置の構成を示す図である。第１、第２実施形態は硬判定を行なったが、第３実施形態は軟判定を行なう。第１実施形態と同様に、各信号を定義する。
【００７４】
“＾”は排他的論理和を表す。２つのベクトルＡとＢについて、式“Ａ＾Ｂ”は各々のベクトルの成分の排他的論理和を示す。
【００７５】
ベクトルＡに対してｍ（Ａ）はベクトルの各成分について０を＋１に、１を−１に変更したものである。
【００７６】
符号化される１０ビットの情報系列をｄ０，ｄ１，ｄ２，ｄ３，ｄ４，ｄ５，ｄ６，ｄ７，ｄ８，ｄ９とする。各ビットｄｎは０もしくは１である。
【００７７】
符号化に使用される直交符号系列をＣ０，Ｃ１，Ｃ２，Ｃ３，Ｃ４，Ｃ５とする。各系列Ｃｎは３２ビットの系列で、その３２個の要素は０もしくは１である。なお、Ｃ０はすべて１の系列である。
【００７８】
同様に、符号化に使用されるマスクシンボル系列をＭ１，Ｍ２，Ｍ３，Ｍ４とする。各系列Ｍｎは３２ビットの系列である。マスクシンボル系列と情報系列の排他的論理和であるマスクパターンｄ６Ｍ１＾ｄ７Ｍ２＾ｄ８Ｍ３＾ｄ９Ｍ４は２４＝１６パターンある。
【００７９】
符号化装置は上記情報系列ｄを直交符号系列Ｃ０〜Ｃ５と、マスクシンボル系列Ｍ１〜Ｍ４とに基づいて符号化し、次のような３２ビット符号化ビット系列ｍ（ｓ）を出力する。ここで、情報系列の各ビットに乗算される直交符号系列、マスクシンボル系列は予め決まっている。
【００８０】
ｍ（ｓ）＝ｍ（ｄ０Ｃ０＾ｄ１Ｃ１＾ｄ２Ｃ２＾ｄ３Ｃ３＾ｄ４Ｃ４＾ｄ５Ｃ５＾ｄ６Ｍ１＾ｄ７Ｍ２＾ｄ８Ｍ３＾ｄ９Ｍ４）                （２１）
本実施形態では、この符号化ビット系列ｍ（ｓ）に伝送路や雑音による誤り系列ｅが加えられた次のような信号が図６の復号装置に入力される。
【００８１】
ｍ（ｄ０Ｃ０＾ｄ１Ｃ１＾ｄ２Ｃ２＾ｄ３Ｃ３＾ｄ４Ｃ４＾ｄ５Ｃ５＾ｄ６Ｍ１＾ｄ７Ｍ２＾ｄ８Ｍ３＾ｄ９Ｍ４）＋Ｅ       （２２）
この受信符号化ビット系列はメモリ１２から読み出されたマスクパターンの１つを±１で表したものと乗算部６０によって乗算される。
【００８２】
乗算部６０の出力が第１実施形態と同様に、チェックサム算出部１６に供給され、チェックサムが計算される。チェックサムはｄ０〜ｄ９までの１０ビットの情報系列のうち、ｄ１〜ｄ５の５ビットについてそれぞれ１６個計算される。
【００８３】
この合計８０個のチェックサム算出部１６の出力は、多数決判定部１８によって多数決判定され、ｄ１’〜ｄ５’が復号される。具体的には、チェックサムの出力が正であれば０と判定し、負であれば１と判定する。
【００８４】
この５ビットの情報系列について、直交符号乗算部２０によって対応する直交符号が乗算される。
【００８５】
乗算部６０の出力と、直交符号乗算部２０の出力を±１で表したものが乗算部６２によって乗算される。第１実施形態と同様に、乗算部６２の出力が多数決判定部２４で判定されることにより、ｄ０’が復号される。具体的には、乗算部６２の出力が正であれば情報系列の各ビットを０と判定し、負であれば１と判定する。多数決判定部２４により情報系列のビットｄ０’が確定した時、この確定に使用されたマスクパターンから情報系列のビットｄ６’〜ｄ９’が分かる。
【００８６】
以上の操作により、情報系列の各ビットｄ０’〜ｄ９’が確定する。この情報系列をリード・マラー符号化部２６によって再びリード・マラー符号化する。リード・マラー符号化部２６の出力が相関演算部６４に供給され、受信符号化ビット系列との相関が計算される。
【００８７】
上記処理を１６通りのすべてのマスクパターンに対して行ない、最大値検出部６６によって相関の最大値を検出する。最大値が検出された時のｄ０’〜ｄ９’が正しいものとみなされ、復号が完了する。
【００８８】
図７は第３実施形態のフローチャートである。
【００８９】
ステップＳ６０で、マスクパターンが１つ指定され、ステップＳ６２で、この指定された１つのマスクパターンがメモリ１２から読み出され、ステップＳ６４で乗算部６０が受信符号化ビット系列とマスクパターンとを乗算する。
【００９０】
メモリ１２は表１の直交符号系列Ｃ０〜Ｃ５と、マスクシンボル系列Ｍ１〜Ｍ４、さらに、表１には示さないマスクパターンｄ６Ｍ１＾ｄ７Ｍ２＾ｄ８Ｍ３＾ｄ９Ｍ４を格納する。ｉはビット位置を示す。
【００９１】
メモリ１２から読み出されたマスクパターンをＭ’＝ｍ（ｄ６’Ｍ１＾ｄ７’Ｍ２＾ｄ８’Ｍ３＾ｄ９’Ｍ４）とすると、受信符号化ビット系列とマスクパターンとの乗算結果は次のようになる。
【００９２】
ｍ（ｄ０Ｃ０＾ｄ１Ｃ１＾ｄ２Ｃ２＾ｄ３Ｃ３＾ｄ４Ｃ４＾ｄ５Ｃ５＾（ｄ６＾ｄ６’）Ｍ１＾（ｄ７＾ｄ７’）Ｍ２＾（ｄ８＾ｄ８’）Ｍ３＾（ｄ９＾ｄ９’）Ｍ４）＋Ｅ                                            （２３）
ステップＳ６６で、チェックサム算出部１６が乗算部６０の出力（式（２３））のチェックサムを計算する。チェックサムはｄ０〜ｄ９までの１０ビットの情報系列のうち、ｄ１〜ｄ５の５ビットについてそれぞれ１６個計算される。
【００９３】
ステップＳ６８で、多数決判定部１８がこの合計８０個の出力を多数決判定処理し、ｄ１’〜ｄ５’を復号する。具体的には、チェックサムの出力に関して正であれば０と判定し、負であれば１と判定する。
【００９４】
ステップＳ７０で、直交符号乗算部２０がこの５ビットの情報系列ｄ１’〜ｄ５’に、それに対応する直交符号を乗算する。直交符号乗算部２０の出力は次のようになる。
【００９５】
0003923743.tif 000003
ステップＳ７２で、乗算部６２が乗算部６０の出力（式（２３））と、直交符号乗算部２０の出力（式（２４））とを乗算する。乗算部６２の出力は次のようになる。
【００９６】
ｍ（ｄ０Ｃ０＾（ｄ１＾ｄ１’）Ｃ１＾（ｄ２＾ｄ２’）Ｃ２＾（ｄ３＾ｄ３’）Ｃ３＾（ｄ４＾ｄ４’）Ｃ４＾（ｄ５＾ｄ５’）Ｃ５＾（ｄ６＾ｄ６’）Ｍ１＾（ｄ７＾ｄ７’）Ｍ２＾（ｄ８＾ｄ８’）Ｍ３＾（ｄ９＾ｄ９’）Ｍ４）＋Ｅ                                                          （２５）
ここで、もしｄ１’〜ｄ９’が正しく復号されていれば、（ｄｎ＾ｄｎ’）Ｃｎ  （ｎ＝１，２，…，９）の項は０ベクトルになる。この場合、乗算部６２の出力（（２５）式）は次のようになる。
【００９７】
ｍ（ｄ０Ｃ０）＋Ｅ                        （２６）
Ｃ０はすべて１の系列であるため、乗算部６２の出力（（２６）式）を多数決判定部２４で判定することでｄ０’が得られる（ステップＳ７４）。具体的には、乗算部６２の出力（（２６）式）が正であれば情報系列の各ビットを０と判定し、負であれば１と判定する。多数決判定部２４により情報系列のビットｄ０’が確定した時、この確定に使用されたマスクパターンから情報系列のビットｄ６’〜ｄ９’が分かる。以上の操作により、情報系列の各ビットｄ０’〜ｄ９’が確定する。
【００９８】
ステップＳ７６で、リード・マラー符号化部２６がこの情報系列ｄ０’〜ｄ９’をリード・マラー符号化し、次のような符号化系列が得られる。
【００９９】
ｍ（ｄ０’Ｃ０＾ｄ１’Ｃ１＾ｄ２’Ｃ２＾ｄ３’Ｃ３＾ｄ４’Ｃ４＾ｄ５’Ｃ＾ｄ６’Ｍ１＾ｄ７’Ｍ２＾ｄ８’Ｍ３＾ｄ９’Ｍ４）          （２７）
ステップＳ７８で、相関演算部６４がリード・マラー符号化部２６の出力（（２７）式）と受信系列（（２２）式）との相関を計算する。具体的には、先ず、リード・マラー符号化部２６の出力（（２７）式）と受信符号化系列（（２２）式）との乗算結果が次のように求められる。
【０１００】
ｍ（（ｄ０＾ｄ０’）Ｃ０＾（ｄ１＾ｄ１’）Ｃ１＾（ｄ２＾ｄ２’）Ｃ２＾（ｄ３＾ｄ３’）Ｃ３＾（ｄ４＾ｄ４’）Ｃ４＾（ｄ５＾ｄ５’）Ｃ５＾（ｄ６＾ｄ６’）Ｍ１＾（ｄ７＾ｄ７’）Ｍ２＾（ｄ８＾ｄ８’）Ｍ３＾（ｄ９＾ｄ９’）Ｍ４）＋Ｅ                                              （２８）
（２８）式は３２ビットの系列であり、それらの３２ビットの累積加算結果がリード・マラー符号化部２６の出力（（２７）式）と、受信符号化系列（（２２）式）との相関を表す。
【０１０１】
ステップＳ８０で、メモリ１２内の１６種類のマスクパターンの全てについて上記処理を行なったか否かが判定される。未処理のマスクパターンが残っている場合は、ステップＳ８２で次のマスクパターンが指定されて、ステップＳ６２のマスクパターンの読出し以降の処理が繰り返される。
【０１０２】
メモリ１２内の１６種類のマスクパターンの全てについて上記処理が行なわれた場合は、ステップＳ８４で、最大値検出部６６が最大の相関値を検出する。その最大値が得られた時のマスクパターンに基づいて、ｄ６’〜ｄ９’が復号され、多数決判定部１８によって復号されたｄ１’〜ｄ５’と、多数決判定部２４によって復号されたｄ０’と併せて、情報系列ｄ０’〜ｄ９’が復号される。
【０１０３】
以上説明したように本実施形態によれば、マスクシンボルを用いたリード・マラー符号からマスクシンボルを外したものを多数決判定によりリード・マラー復号し、この復号結果にマスクシンボルを加えたものをリードマラー符号化し、この符号化出力と元の符号との相関を求める処理をマスクシンボルの数だけ繰り返し、最大の相関に対応するマスクシンボルを求め、このマスクシンボルから情報ビットを復号する。このため、多数決判定の際に計算しなければならないチェックサムをマスクシンボルを用いないリード・マラー符号の復号の場合に比べて増えることがない。このため、演算量、ハードウェアの規模を低減することができる復号装置を提供できる。さらに、軟判定であるので、硬判定の多数決判定よりも精度がよく、良好な品質が得られる。
【０１０４】
第３実施形態も第１実施形態と同様に、従来のリード・マラー（３２，６）符号の復号装置としても使えるように、切替えスイッチ３２、３４が接続されている。
【０１０５】
図８は図６のチェックサム算出部１６と多数決判定部１８との部分の変形例である。図８は図３とは、メモリ４０から各ビットデータを読み出して排他的論理和をとりチェックサムを計算する排他的論理和部４２の代わりに乗算部７０が設けられている点のみが異なり、他は同じである。
【０１０６】
（第４実施形態）
図９に第４実施形態の回路図を示す。図９は、図６の復号装置をその性能が変わらないように簡易化したものである。第３実施形態と同様に、マスクシンボルを用いたリード・マラー（３２，１０）符号を例に挙げて説明する。
【０１０７】
図６の乗算部６２の出力（（２５）式）と、リード・マラー符号化部２６の出力（（２７）式）と受信符号化系列（（２２）式）との相関（（２８）式）とに着目すると、両者の違いは、（２８）式には（２５）式には含まれていないｄ０’Ｃ０が存在するだけである。ｄ０’＝０の場合は、（２５）式と（２８）式は同じである。ｄ０’＝１の場合は、Ｃ０がすべて１の系列であることから、（２８）式は（２５）式の０と１を反転したものとなる。
【０１０８】
これにより、乗算部６２の出力（（２５）式）の各成分の総和と、その０と１とを反転したものの各成分の総和のいずれかについて、値が大きいものがそのままま相関値として使用できることになる。すなわち、図６の多数決判定部２４、リード・マラー符号化部２６、相関部６４は省略可能である。
【０１０９】
（２５）式の各成分を累積加算した結果は、受信符号化系列（（２２）式）と、本復号装置で判定したｄ０’〜ｄ９’（ただし、ｄ０’＝０）をリード・マラー（３２，１０）符号化した系列との相関値である。（２５）式の０と１とを反転したものの各成分を累積加算した結果は、受信符号化系列（（２２）式）と、本復号装置で判定したｄ０’〜ｄ９’（ただし、ｄ０’＝１）をリード・マラー（３２，１０）符号化した系列との相関値である。
【０１１０】
そのため、乗算部６２の出力が反転検出部７８に入力され、乗算部６２の出力の各成分の累積加算結果と、乗算部６２の出力の各成分の０と１とを反転したものの累積加算結果との大小関係を判定し、大きい方が選択され、最大値検出部６６に供給される。
【０１１１】
この処理を、ｄ６〜ｄ９に対応した１６通りのすべてのマスクパターンに関して行ない、最大値検出部６６によって最大の相関値が検出される。その時のｄ’０〜ｄ’９が正しいものとみなされ、復号が完了する。
【０１１２】
第４実施形態も第３実施形態と同様に、従来のリード・マラー（３２，６）符号の復号装置としても使えるように、切替えスイッチ３２、３４が接続されている。
【０１１３】
図１０は第４実施形態のフローチャートである。ステップＳ７２で、乗算部６２が乗算部６０の出力（式（２３））と、直交符号乗算部２０の出力（式（２４））とを乗算するまでは、第３実施形態と同じである。本実施形態では、その後、ステップＳ９０で、反転検出部７８が、乗算部６２の出力の各成分の累積加算と、乗算部６２の出力の各成分の０と１とを反転したものの累積加算とを求める。ステップＳ９２で、このうちの大きいものを選択し、最大値検出部６６に供給する。
【０１１４】
この後、ステップＳ８０で全てのマスクパターンについて上記処理を行なったか否か判定し、未処理のマスクパターンが残っている場合は、ステップＳ３４で次のマスクパターンが指定され、ステップＳ８２のマスクパターンの読出し以降の処理が繰り返されることは第３実施形態と同じである。１６種類のマスクパターンの全てについて上記処理が行なわれた場合は、ステップＳ８４で、最大値検出部６６が反転検出部７８の１６個の出力の最大値を求める。
【０１１５】
変形例
本願発明は上記各実施形態に限定されるものではなく、実施段階ではその趣旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は可能な限り適宜組み合わせて実施してもよく、その場合組合わせた効果が得られる。さらに、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件から幾つかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題の少なくとも１つが解決でき、発明の効果の欄で述べられている効果の少なくとも１つが得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【０１１６】
【発明の効果】
以上説明したように本発明によれば、マスクシンボルを用いたリード・マラー符号を復号するにあたって、演算量および装置規模を低減した復号装置、及び復号方法を提供することができる。
【図面の簡単な説明】
【図１】本発明による復号装置の第１実施形態の構成を示すブロック図。
【図２】第１実施形態の動作を示すフローチャート。
【図３】図１のチェックサム算出部、多数決判定部の変形例を示す図。
【図４】本発明による復号装置の第２実施形態の構成を示すブロック図。
【図５】第２実施形態の動作を示すフローチャート。
【図６】本発明による復号装置の第３実施形態の構成を示すブロック図。
【図７】第３実施形態の動作を示すフローチャート。
【図８】図６のチェックサム算出部、多数決判定部の変形例を示す図。
【図９】本発明による復号装置の第４実施形態の構成を示すブロック図。
【図１０】第４実施形態の動作を示すフローチャート。
【符号の説明】
１０…硬判定部
１２…メモリ
１４、２２…排他的論理和部
１６…チェックサム算出部
１８、２４…多数決判定部
２０…直交符号乗算部
２６…リード・マラー符号化部
２８…ユークリッド距離計算部
３０…最小距離検出部
【図１】
0003923743.tif 000004
【図２】
0003923743.tif 000005
【図３】
0003923743.tif 000006
【図４】
0003923743.tif 000007
【図５】
0003923743.tif 000008
【図６】
0003923743.tif 000009
【図７】
0003923743.tif 000010
【図８】
0003923743.tif 000011
【図９】
0003923743.tif 000012
【図１０】
0003923743.tif 000013