(57)【要約】【課題】  データＳと該データに付随する冗長データＰ１（Ｐ２）に基づいて該データに関する硬判定結果を出力する復号器において、Ｓ，Ｐ１の符号の組み合わせに対する尤度を従来よりも高精度に求めること。【解決手段】  符号器は、符号器は、受信したデータの一部のビットを反転して出力するデータ変換手段４０１，４０２と、受信した冗長データの一部のビットを反転して出力する冗長データ変換手段４０１，４０２と、受信したデータがゼロであるか否か及び受信した冗長データがゼロであるか否かを判定する判定手段４０４，４０６と、データ変換手段の出力又は第１の固定値Ｘの一方及び冗長データ変換手段の出力又は第２の固定値Ｙの一方を加算して尤度を出力する尤度算出手段とを備える。尤度算出手段は、受信したデータがゼロならば第１の固定値を加算し、受信した冗長データがゼロならば第２の固定値を加算する。【選択図】  図４
2006261857.tif 000002
【特許請求の範囲】
【請求項１】
データ及び該データに付随する冗長データの符号の組み合わせに対する尤度に基づいて、データの硬判定結果を出力する復号器であって、
入力されたデータの一部のビットを反転して出力するデータ変換手段と、
入力された冗長データの一部のビットを反転して出力する冗長データ変換手段と、
入力されたデータがゼロであるか否かを判定するか、又は入力された冗長データがゼロであるか否かを判定する判定手段と、
前記データ変換手段の出力又は第１の固定値のうちの少なくともいずれか一方と、前記冗長データ変換手段の出力又は第２の固定値のうちの少なくともいずれか一方とを加算して尤度を出力する尤度算出手段と、
を備え、前記尤度算出手段は、前記判定手段がゼロであると判定した場合に、前記加算において固定値の方を選択する
ことを特徴とする復号器。
【請求項２】
前記データ変換手段が、受信したデータの最上位ビットを反転して出力する第１変換手段と、受信したデータの最上位ビット以外のビットを反転して出力する第２変換手段を有するデータ変換手段とを備え、
前記冗長データ変換手段が、受信した冗長データの最上位ビットを反転して出力する第１変換手段と、受信した冗長データの最上位ビット以外のビットを反転して出力する第２変換手段とを備える
ことを特徴とする請求項１記載の復号器。
【請求項３】
当該符号器が、ターボ復号器である
ことを特徴とする請求項１記載の復号器。
【請求項４】
データ及び該データに付随する冗長データの符号の組み合わせに対する尤度に基づいて、データの硬判定結果を出力する復号方法であって、
受信したデータの一部が反転された変換データ又は第１の固定値の一方を選択し、受信した冗長データの一部が反転された変換冗長データ又は第２の固定値の一方を選択し、選択した値を加算して前記尤度を算出し、
受信したデータがゼロの場合は第１の固定値が、受信したデータがゼロでない場合は変換データが選択され、
受信した冗長データがゼロの場合は第１の固定値が、受信したデータがゼロでない場合は変換データが選択される
ことを特徴とする復号方法。
【請求項５】
データ及び該データに付随する冗長データの符号の組み合わせに対する尤度に基づいて、データの硬判定結果を出力するターボ復号器であって、
入力されたデータの特定の一部のビットを反転したものと、他の部分のビットを反転したものとを出力するデータ変換手段と、
入力された冗長データの特定の一部のビットを反転したものと、他の部分のビットを反転したものとを出力する冗長データ変換手段と、
入力されたデータ又は入力された冗長データが、パンクチャされた部分に対応しない場合は、前記データ変換手段の２つの出力と、前記冗長データ変換手段の２つの出力とについて取り得る各組み合わせについて加算結果を出力し、入力されたデータが、パンクチャされた部分に対応する場合は、同じ値の２つの固定値と、前記冗長データ変換手段の２つの出力とについて取り得る各組み合わせについて加算結果を出力する尤度算出手段と、
を備えたことを特徴とするターボ復号器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線通信の技術分野に関し、特に無線受信機に使用される復号器及び復号方法に関する。
【背景技術】
【０００２】
無線伝搬路におけるフェージングその他の通信環境は、通信される信号の品質に大きく影響する。通信品質を改善する技術の１つは、符号化（エンコード）及び復号化（デコード）を行うことである。送信機が信号を符号化して送信し、信号中の誤りの有無を受信機が判別し及び／又は誤りの訂正を行うことで、伝送品質が改善される。中でも、ターボ符号化及びターボ復号化は、データの処理効率に優れ、大きな誤り訂正能力を有する等の点で、現在及び将来的に有望な技術である。
【０００３】
ターボ符号化及び復号化では、情報系列（データ）Ｓ（組織ビット）と、その情報系列から導出された冗長的な情報系列（冗長データ）Ｐ（パリティビット）とが作成され、送信される。冗長データは、データに対して畳み込み符号化して得られた符号化データと、データに対してインタリーブ処理を施してから同様に畳み込み符号化して得れた符号化データから形成される。受信機は、データＳ及び冗長データＰを受信し、それらの最上位ビット（ＭＳＢ）の組み合わせに関する尤度を算出し、その尤度に基づいて所定の演算を実行し、データＳの硬判定結果を出力し、復号を行う。一般に、データのＭＳＢは、データの正負の符号を表現し、ＭＳＢ以降のビット列が尤度を表す。
【０００４】
ターボ復号器では、データＳ及び冗長データＰのＭＳＢの組み合わせに関する尤度Ｌｉｊ（ｉ，ｊ＝０又は１）は、次のようにして算出される：
データＳのＭＳＢが「０」であり（正であり）、冗長データＰのＭＳＢも「０」である（正である）尤度Ｌ００は、ＳのＭＳＢを反転したものと、ＰのＭＳＢを反転したものとの和で表され；
データＳのＭＳＢが「０」であり、冗長データＰのＭＳＢが「１」である（負である）尤度Ｌ０１は、ＳのＭＳＢを反転したものと、ＰのＭＳＢ以外のビット総てを反転したものとの和で表され；
データＳのＭＳＢが「１」であり、冗長データＰのＭＳＢが「０」である尤度Ｌ０１は、ＳのＭＳＢ以外のビット総てを反転したものと、ＰのＭＳＢを反転したものとの和で表され；及び
データＳのＭＳＢが「１」であり、冗長データＰのＭＳＢも「１」である尤度Ｌ１１は、ＳのＭＳＢ以外のビット総てを反転したものと、ＰのＭＳＢ以外のビット総てを反転したものとの和で表される。
【０００５】
例えば、Ｓ＝０１１１，Ｐ＝０１１１（２進数）であるとすると、尤度Ｌｉｊは次のようになる。
【０００６】
Ｌ００＝０１１１＋０１１１＝１１１１＋１１１１＝１１１１０
Ｌ０１＝０１１１＋０１１１＝１１１１＋００００＝０１１１１
Ｌ１０＝０１１１＋０１１１＝００００＋１１１１＝０１１１１
Ｌ１１＝０１１１＋０１１１＝００００＋００００＝０００００。
但し、アンダーラインの付されたビットは反転されることを表す。尤度の各値を比較すると、Ｌ００が最大であることが分かる。これは、データＳと冗長データＰの符号の組み合わせのうち、双方ともプラスである（双方のＭＳＢが０である）ことが最も確からしいことを示す。実際、Ｓ＝Ｐ＝０１１１はプラスの値であり、１０進法では＋７に相当する。従って、データＳと冗長データＰの符号の可能な組み合わせのうち、双方ともプラスであるのが最も確からしい旨の判定は当を得ており、以後の復号計算の基礎を正確に与えることができる。
【０００７】
このように尤度を算出して復号を行う従来のターボ復号器については、例えば特許文献１に記載されている。
【特許文献１】特開２００１−３５６５２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
ところで、上記の演算では、表現可能な数値範囲を増やすため、２の補数表現が採用される。このため、データ及び／又は冗長データの値がゼロである場合に、不都合が生じる。例えば、データＳ＝０１１１，Ｐ＝００００  とすると、上記の計算規則によれば、尤度Ｌｉｊは次のように計算される。
【０００９】
Ｌ００＝０１１１＋００００＝１１１１＋１０００＝１０１１１
Ｌ０１＝０１１１＋００００＝１１１１＋０１１１＝１０１１０
Ｌ１０＝０１１１＋００００＝００００＋１０００＝０１０００
Ｌ１１＝０１１１＋００００＝００００＋０１１１＝００１１１。
この計算結果によれば、Ｌ００＝１０１１１  が最大なので、データＳと冗長データＰの符号の可能な組み合わせのうち、双方ともプラスであるのが最も確からしいことになる。しかしながら、実際には、データＳはプラスであり、冗長データＰはゼロなので、このような尤度は当を得ていない。従って、この場合は、以後の復号計算に不正確な基礎を与えてしまう。この例では、データＳはプラスであるので、算出された尤度は、冗長データPについては不正確であるが、データＳについては不適切ではないと言えるかもしれない。しかしながら、例えば、データＳ＝００００，Ｐ＝００００  とすると、尤度Ｌｉｊは次のように計算され、更に不合理な結果を招いてしまう。
【００１０】
Ｌ００＝００００＋００００＝１０００＋１０００＝１００００
Ｌ０１＝００００＋００００＝１０００＋０１１１＝０１１１１
Ｌ１０＝００００＋００００＝０１１１＋１０００＝０１１１１
Ｌ１１＝００００＋００００＝０１１１＋０１１１＝０１１１０。
この計算結果によれば、Ｌ００＝１００００  が最大なので、データＳと冗長データＰの符号の可能な組み合わせのうち、双方ともプラスであるのが最も確からしいことになる。しかしながら、実際には、データＳも冗長データＰもゼロなので、尤度はＬ００〜Ｌ１１の間で等しい値となるべきであるが、このように、Ｌ００が相対的に高い尤度となってしまう結果は望ましくない。
【００１１】
尚、データＳ、冗長データＰがゼロとなるのは、例えば、送信側において、パンクチャ処理を施してビットを削除した部分について、受信側で補完する際に、ゼロを設定する場合である。
本発明は、上記の問題に鑑みてなされたものであり、その課題は、データと該データに付随する冗長データに基づいて該データに関する硬判定結果を出力する復号器又は復号方法において、データ及び冗長データの符号の組み合わせに対する尤度を従来よりも高精度に求めることである。
【課題を解決するための手段】
【００１２】
本発明では、データ及び該データに付随する冗長データの符号の組み合わせに対する尤度に基づいて、データの硬判定結果を出力する復号器が使用される。復号器は、入力されたデータの一部のビットを反転して出力するデータ変換手段と、入力された冗長データの一部のビットを反転して出力する冗長データ変換手段と、入力されたデータがゼロであるか否かを判定するか、又は入力された冗長データがゼロであるか否かを判定する判定手段と、前記データ変換手段の出力又は第１の固定値のうちの少なくともいずれか一方と、前記冗長データ変換手段の出力又は第２の固定値のうちの少なくともいずれか一方とを加算して尤度を出力する尤度算出手段とを備える。前記尤度算出手段は、前記判定手段がゼロであると判定した場合に、前記加算において固定値の方を選択する。
【発明の効果】
【００１３】
本発明によれば、データと該データに付随する冗長データに基づいて該データに関する硬判定結果を出力する復号器又は復号方法において、データ及び冗長データの符号の組み合わせに対する尤度を従来よりも高精度に求めることができる。
【発明を実施するための最良の形態】
【００１４】
本発明の一態様によれば、データ及び該データに付随する冗長データの符号の組み合わせに対する尤度に基づいて、データの硬判定結果を出力する復号器に、受信したデータがゼロであるか否か及び受信した冗長データがゼロであるか否かを判定する判定手段が備えられ、受信したデータがゼロならば前記第１の固定値を加算し、受信した冗長データがゼロならば前記第２の固定値を加算することで、尤度が算出される。これにより、ゼロの値が不適切に信号変換され、偏った尤度を導出することを効果的に防ぐことができる。
【００１５】
データ変換手段は、受信したデータの最上位ビットを反転して出力する第１変換手段と、受信したデータの最上位ビット以外のビットを反転して出力する第２変換手段を有するデータ変換手段とを備えてもよい。冗長データ変換手段は、受信した冗長データの最上位ビットを反転して出力する第１変換手段と、受信した冗長データの最上位ビット以外のビットを反転して出力する第２変換手段とを備えてもよい。
【００１６】
本発明の一態様によれば、当該符号器は、ターボ復号器を構成してもよい。ターボ符号器でのＤ演算部又はγ演算部では、データ及び冗長データの符号の組み合わせに関する尤度が計算される。従って、本発明は、ターボ復号器に特に有利である。
【００１７】
本発明の一態様によれば、第１の固定値は、第２の固定値に等しい。
【００１８】
本発明の一態様によれば、データ又は冗長データがゼロであるか否かを判定する判定手段は、パンクチャリングフラグに基づいて判定を行ってもよい。データ等がパンクチャリングされている場合は、受信するビット列中のどこにゼロが挿入されているかは既知であるため、パンクチャリングフラグを利用することで、固定値を選択するタイミングを簡易に得ることができる。
【実施例１】
【００１９】
以下、本発明の一実施例によるターボ復号器及び復号方法が説明される。先ず、送信機は、情報系列（データ）を符号化し、冗長的な情報系列（冗長データ）を作成し、データ及び冗長データを無線送信する。適切ないかなる数の符号化率が採用されてもよいが、簡単のため、本実施例では、図１に示されるように、符号化率が１／３である場合の符号化が行われる。図示の例では、情報系列（データ）Ｓと、データＳを符号器１１で符号化することによって得られる第１の冗長データＰ１と、インターリーバ（π）１３でインターリーブした後のデータＳを符号器１２で符号化することによって得られる第２の冗長データＰ２とが用意され、これら３系統の信号が無線送信される。符号器は、例えば図２に示されるような再帰的組織畳込み符号器から構成されてもよい。インターリーブ及び符号化は、情報系列の１フレーム毎に行われてもよい。
【００２０】
図３は、受信機内に設けられるターボ復号器の例示的なブロック図を示す。ターボ復号器は、入力バッファ３０２と、Ｄ演算部３０４と、Ａ演算部３０６と、Ｂ演算部３０８と、Ｂ演算用メモリ３１０と、Ｌ演算部３１２と、尤度出力部３１４と、外部尤度演算部３１６と、インターリーブ用メモリ３１８と、尤度メモリ３２０とを有する。
【００２１】
入力バッファ３０２は、受信機で受信した信号を格納する。送信された３系統の信号（データＳ，第１の冗長データＰ１，第２の冗長データＰ２）に応じて、３系統の信号が格納される。信号系統数は、ターボ符号化に使用される符号化率に応じて適宜変更可能である。図中「ＦＰ」は、フレームの先頭を表すパルスを示す。「ＤＴＥＮ」は、イネーブル及びディセーブルの状態を示す信号であり、イネーブル状態で各種の信号が格納される。
【００２２】
Ｄ演算部３０４は、受信した３系統の信号Ｓ，Ｐ１，Ｐ２及び外部尤度情報Ｌｅに基づいて、データＳ及び冗長データＰ１の符号の組み合わせに関する尤度と、データＳ及び冗長データＰ２の符号の組み合わせに関する尤度とを算出する。この尤度は、ブランチメトリックとしての意義を有する。Ｄ演算部３０４の詳細については後述される。
【００２３】
Ａ演算部３０６は、Ｄ演算部３０４で算出された尤度に基づいて、信号の入力された順に、累積的にパスメトリックを算出する。
【００２４】
Ｂ演算部３０８も、Ｄ演算部３０４で算出された尤度に基づいて、累積的にパスメトリックを算出するが、Ｂ演算部３０８は、信号の入力された順序と逆の順序にパスメトリックを算出する点でＡ演算部３０６と異なる。
【００２５】
Ｂ演算用メモリ３１０は、B演算結果を記憶する。
【００２６】
Ｌ演算部３１２は、Ａ演算部３０６及びＢ演算部３０８のパスメトリックに基づいて、尤度の高いパスを判別する。
【００２７】
尤度出力部３１４は、尤度の高いパスが何であるかに基づいて、データの硬判定を行い、復号結果として出力する。
【００２８】
外部尤度演算部３１６は、データＳ、尤度出力部３１４の出力Ｌ及び以前の外部尤度Ｌｅに基づいて、次の演算に使用する外部尤度Ｌｅを算出する。
【００２９】
インターリーブ用メモリ３１８は、ビット列の並べ換えを行うためのメモリである。
【００３０】
尤度メモリ３２０は、過去の外部尤度を格納する。
【００３１】
概して、受信された信号は入力バッファ３０２に格納され、Ｄ演算部３０４に与えられ、データＳ及び冗長データＰ１，Ｐ２の符号の組み合わせに関する尤度が算出され、ブランチメトリックがＡ，Ｂ演算部３０６，３０８に与えられ、パスメトリックが算出され、尤度の高いパスが判別される。この計算結果に基づいて、外部尤度が計算され、Ｄ演算部３０４にフィードバックされ、以後同様な演算が反復され、復号精度を高めることができる。
【００３２】
図４は、本発明の一実施例によるＤ演算部３０４の機能ブロック図を示す。図４では、簡単のため、データＳ、第１の冗長データＰ１及び外部尤度Ｌｅに関する信号処理の様子しか描かれていないが、Ｄ演算部３０４には、データＳ、第２の冗長データＰ２及び外部尤度Ｌｅに関する同様な信号処理の機能も備わっている。図４には、データＳ、第１の冗長データＰ１及び外部尤度Ｌｅの信号経路の各々に、第１の信号変換部４０１及び第２の信号変換部４０２が描かれている。また、データＳ及び第１の冗長データＰ１の信号経路の各々に、第１のセレクタ４１１及び第２のセレクタ４１２が描かれている。更に、図４には、第１の判定部４０４、第２の判定部４０６、加算部４２１，４２２，４２３，４２４、正規化部４２６、加算部４３１，４３２，４３３，４３４が描かれている。
【００３３】
第１の信号変換部４０１は、そこに入力された１まとまりのｎビット列の最上位ビット（ＭＳＢ）を反転し、それ以外のｎ−１ビットをそのまま維持して出力する。例えば、第１の信号変換部に、１０１１が入力されたとすると、００１１が出力される。
【００３４】
第２の信号変換部４０２は、そこに入力された１まとまりのｎビット列の最上位ビット以外のｎ−１ビット総てを反転し、ＭＳＢをそのまま維持して出力する。例えば、第２の信号変換部に、１０１１が入力されたとすると、１１００が出力される。
【００３５】
第１，第２のセレクタ４１１，４１２は、判定部４０４又は４０６からの制御信号に応じて、第１，第２の信号変換部４０１，４０２からの出力又は所定の固定値の何れかを選択して出力する。後述するように、第１のセレクタ４１１は、第１の信号変換部４０１に入力される信号がゼロでないならば、第１の信号変換部４０１の出力を選択し、それがゼロならば所定の固定値を選択する。第２のセレクタ４１２は、第２の信号変換部４０２に入力される信号がゼロでないならば、第２の信号変換部４０２の出力を選択し、それがゼロならば所定の固定値を選択する。固定値は、いかなる値でもよいが、反復的に行われる尤度計算の少なくとも１回の間で不変な一定値であることを要する。データＳに関する演算に使用される固定値Ｘと、冗長データＰに関する演算に使用される固定値Ｙは、同じ値でもよいし、異なっていてもよい。
【００３６】
第１，第２の判定部４０４，４０６は、第１，第２の信号変換部４０１，４０２に入力される信号がゼロ（ｎ＝４ならば、００００）であるか否かを判別する。
【００３７】
加算部４２１，４２２，４２３，４２４は、各セレクタ４１１，４１２からの出力を加算し、尤度Ｌｉｊをそれぞれ算出する（ｉ，ｊ＝０又は１）。
【００３８】
正規化部４２６は、各加算部で算出された尤度Ｌｉｊを正規化し、それらの大きさを適切な尺度で調整し、出力する。
【００３９】
加算部４３１，４３２，４３３，４３４は、正規化後の尤度と、信号変換後の外部尤度とをそれぞれ加算し、Ｄ演算部３０４の出力として、尤度γ００，γ０１，γ１０，γ１１  を出力する。これにより、過去の尤度Ｌｅが累積的に加味された尤度γｉｊを出力することができる。
【００４０】
図５は、本発明の一実施例による復号器のＤ演算部での手順の一例を示す。ステップ５０２では、受信機で信号が受信される。信号には、データＳ、第１の冗長データＰ１及び第２の冗長データＰ２が含まれており、それらが図３の入力バッファ３０２に入力される。
【００４１】
ステップ５０４では、Ｄ演算部内の第１，第２の信号変換部４０１，４０２で、それらに入力された信号が変換され、セレクタ４１１，４１２の一方の入力に与えられる。セレクタの他方の入力には所定の固定値が与えられる。
【００４２】
ステップ５０６では、第１，第２の信号変換部４０１，４０２に入力された信号が、ゼロであるか否かを判定部４０４，４０６が判定する。判定方法は、適切ないかなる手法が採用されてもよい。例えば、ｎビットの信号と、００・・・０とが直接的に比較されてもよい。
【００４３】
ステップ５０８では、第１，第２の信号変換部４０１，４０２の出力、又は固定値が、セレクタ４１１，４１２により選択され、加算部４２１，４２２，４２３，４２４の各々に与えられる。各加算部は、入力された値を加算し、尤度Ｌｉｊをそれぞれ出力する。この尤度に外部尤度を加味することで、Ｄ演算部３０４から尤度γｉｊが出力される。上述したように、Ｄ演算部３０４では、データＳ、第２の冗長データＰ２及び外部尤度Ｌｅを用いた同様な処理も行われる。説明の便宜上、図５では、ステップ５０４で信号の変換が行われた後に、ステップ５０６の判定がなされるように描かれているが、そのような順序は本発明に必須ではなく、それらのステップの全部又は一部は同時に行われてもよいし、逆の順序で行われてもよい。
【００４４】
次に、具体的な数値例を用いて、Ｄ演算部での尤度計算例を説明する。
（１）データＳ及び第１の冗長データＰ１が、Ｓ＝０１１１，Ｐ１＝０１１１  で与えられるとする。データＳに関する第１の信号変換部４０１は、０１１１＝１１１１を出力し（下線は、そのビットを反転することを意味する。）、セレクタ４１１の一方の入力にそれを与える。セレクタの他方に入力される固定値Ｘは、Ｘ＝１０００  とする。判定部４０４は、データＳがゼロであるか否かを判別し、制御信号をセレクタ４１１に与える。目下の例では、Ｓ＝０１１１≠００００  なので、セレクタ４１１が、第１の信号変換部４０１からの出力を選択するように、制御信号が生成される。その結果、加算部４２１，４２２に、１１１１がそれぞれ与えられる。データＳに関する第２の信号変換部４０２は、０１１１＝００００を出力し、セレクタ４１２の一方の入力にそれを与える。セレクタの他方には、固定値Ｘ＝１０００が入力されている。セレクタ４１２は、判定部４０４からの制御信号に従って、００００を選択し、それを加算部４２３，４２４に与える。
【００４５】
同様に、第１の冗長データＰ１に関する第１の信号変換部４０１は、０１１１＝１１１１を出力し、セレクタ４１１の一方の入力にそれを与える。セレクタの他方には、固定値Y＝１０００が入力されている。判定部４０６は、データＰ１がゼロであるか否かを判別し、制御信号をセレクタ４１１に与える。目下の例では、Ｐ１＝０１１１≠００００  なので、セレクタ４１１が、第１の信号変換部４０１からの出力を選択するように、制御信号が生成される。その結果、加算部４２１，４２３に、１１１１がそれぞれ与えられる。データＰ１に関する第２の信号変換部４０２は、０１１１＝００００を出力し、セレクタ４１２の一方の入力にそれを与える。セレクタの他方には、固定値Y＝１０００が入力されている。セレクタ４１２は、判定部４０６からの制御信号に従って、００００を選択し、それを加算部４２２，４２４に与える。
【００４６】
加算部は、各セレクタから与えられた値を加算し、尤度をそれぞれ算出する。目下の例では、次のような尤度Ｌｉｊが得られる。
【００４７】
Ｌ００＝０１１１＋０１１１＝１１１１＋１１１１＝１１１１０
Ｌ０１＝０１１１＋０１１１＝１１１１＋００００＝０１１１１
Ｌ１０＝０１１１＋０１１１＝００００＋１１１１＝０１１１１
Ｌ１１＝０１１１＋０１１１＝００００＋００００＝０００００。
尤度の各値を比較すると、Ｌ００が最大であることが分かる。これは、データＳと冗長データＰの符号の組み合わせのうち、双方ともプラスであることが最も確からしいことを示す。実際、Ｓ＝Ｐ＝０１１１はプラスの値であり、１０進法では＋７に相当する。従って、データＳと冗長データＰの符号の可能な組み合わせのうち、双方ともプラスであるのが最も確からしい旨の判定は当を得ており、以後の復号計算の基礎を正確に与えることができる。
【００４８】
（２）データＳ及び第１の冗長データＰ１が、Ｓ＝０１１１，Ｐ１＝００００  で与えられるとする。データＳに関する第１の信号変換部４０１は、０１１１＝１１１１を出力し、セレクタ４１１の一方の入力にそれを与える。セレクタの他方に入力される固定値Ｘは、Ｘ＝１０００  とする。判定部４０４は、データＳがゼロであるか否かを判別し、制御信号をセレクタ４１１に与える。目下の例では、Ｓ＝０１１１≠００００  なので、セレクタ４１１が、第１の信号変換部４０１からの出力を選択するように、制御信号が生成される。その結果、加算部４２１，４２２に、１１１１がそれぞれ与えられる。データＳに関する第２の信号変換部４０２は、０１１１＝００００を出力し、セレクタ４１２の一方の入力にそれを与える。セレクタの他方には、固定値Ｘ＝１０００が入力されている。セレクタ４１２は、判定部４０４からの制御信号に従って、００００を選択し、それを加算部４２３，４２４に与える。
【００４９】
第１の冗長データＰ１に関する第１の信号変換部４０１は、００００＝１０００を出力し、セレクタ４１１の一方の入力にそれを与える。セレクタの他方には、固定値Y＝１０００が入力されている。判定部４０６は、データＰ１がゼロであるか否かを判別し、制御信号をセレクタ４１１に与える。目下の例では、Ｐ１＝００００  なので、セレクタ４１１が、固定値Yを選択するように、制御信号が生成される。その結果、加算部４２１，４２３に、Y＝１０００がそれぞれ与えられる。データＰ１に関する第２の信号変換部４０２は、００００＝０１１１を出力し、セレクタ４１２の一方の入力にそれを与える。セレクタの他方には、固定値Y＝１０００が入力されている。セレクタ４１２は、判定部４０６からの制御信号に従って、固定値Y＝１０００を選択し、それを加算部４２２，４２４に与える。
【００５０】
加算部は、各セレクタから与えられた値を加算し、尤度をそれぞれ算出する。目下の例では、次のような尤度Ｌｉｊが得られる。
【００５１】
Ｌ００＝０１１１＋Y＝１１１１＋１０００＝１０１１１
Ｌ０１＝０１１１＋Y＝１１１１＋１０００＝１０１１１
Ｌ１０＝０１１１＋Y＝００００＋１０００＝０１０００
Ｌ１１＝０１１１＋Y＝００００＋１０００＝０１０００。
尤度の各値を比較すると、Ｌ００とＬ０１が最大であることが分かる。これは、データＳと冗長データＰの符号の組み合わせのうち、Ｓはプラスであることが、より確からしいが、Ｐ１は、プラスであることとマイナスであることが同程度に確からしいことを示す。実際、Ｓ＝０１１１はプラスの値であり、１０進法では＋７に相当する。Ｐ１はゼロであるので、その符号はプラスでもマイナスでもない。従って、Ｌ００とＬ０１が同値であって且つそれらがＬ１０，Ｌ１１よりも大きな値を有することは当を得ており、以後の復号計算の基礎を正確に与えることができる。
【００５２】
（３）データＳ及び第１の冗長データＰ１が、Ｓ＝００００，Ｐ１＝００００  で与えられるとする。データＳに関する第１の信号変換部４０１は、００００＝１０００を出力し、セレクタ４１１の一方の入力にそれを与える。セレクタの他方に入力される固定値Ｘは、Ｘ＝１０００  とする。判定部４０４は、データＳがゼロであるか否かを判別し、制御信号をセレクタ４１１に与える。目下の例では、Ｓ＝００００  なので、セレクタ４１１が、固定値Ｘ＝１０００を選択するように、制御信号が生成される。その結果、加算部４２１，４２２に、Ｘ＝１０００がそれぞれ与えられる。データＳに関する第２の信号変換部４０２は、００００＝０１１１を出力し、セレクタ４１２の一方の入力にそれを与える。セレクタの他方には、固定値Ｘ＝１０００が入力されている。セレクタ４１２は、判定部４０４からの制御信号に従って、Ｘ＝１０００を選択し、それを加算部４２３，４２４に与える。
【００５３】
第１の冗長データＰ１に関する第１の信号変換部４０１は、００００＝１０００を出力し、セレクタ４１１の一方の入力にそれを与える。セレクタの他方には、固定値Y＝１０００が入力されている。判定部４０６は、データＰ１がゼロであるか否かを判別し、制御信号をセレクタ４１１に与える。目下の例では、Ｐ１＝００００  なので、セレクタ４１１が、固定値Yを選択するように、制御信号が生成される。その結果、加算部４２１，４２３に、Y＝１０００がそれぞれ与えられる。データＰ１に関する第２の信号変換部４０２は、００００＝０１１１を出力し、セレクタ４１２の一方の入力にそれを与える。セレクタの他方には、固定値Y＝１０００が入力されている。セレクタ４１２は、判定部４０６からの制御信号に従って、固定値Y＝１０００を選択し、それを加算部４２２，４２４に与える。
【００５４】
加算部は、各セレクタから与えられた値を加算し、尤度をそれぞれ算出する。目下の例では、次のような尤度Ｌｉｊが得られる。
【００５５】
Ｌ００＝Ｘ＋Y＝１０００＋１０００＝１００００
Ｌ０１＝Ｘ＋Y＝１０００＋１０００＝１００００
Ｌ１０＝Ｘ＋Y＝１０００＋１０００＝１００００
Ｌ１１＝Ｘ＋Y＝１０００＋１０００＝１００００。
尤度の各値を比較すると、何れも同値であり、確からしさが同程度であることが分かる。これは、データＳと冗長データＰの符号の組み合わせのうち、Ｓはプラスであることとマイナスであること同程度に確からしく、且つＰ１もプラスであることとマイナスであることが同程度に確からしいことを示す。実際、Ｓ＝Ｐ＝００００の符号はプラスでもマイナスでもない。従って、総ての尤度Ｌｉｊが総て同じ値を有することは当を得ており、以後の復号計算の基礎を正確に与えることができる。
【００５６】
簡単のため、上記の例では、データＳに関するセレクタの固定値と、冗長データＰ１に関するセレクタの固定値が共にＸ＝Y＝１０００であったが、それらは異なる固定値でもよい。例えば、データＳに関するセレクタの固定値がＸ＝１０００であり、冗長データＰ１に関するセレクタの固定値がＹ＝０１００でもよい。更に、固定値はいかなる値でもよく、ゼロ（００００）でさえ許容される。どのような固定値が採用されるにせよ、データＳがゼロである場合に何らかの同じ固定値Ｘが総ての加算部に与えられ、冗長データＳがゼロである場合に何らかの同じ固定値Ｙが総ての加算部に与えらればよいからである。
【実施例２】
【００５７】
送受信される情報系列がパンクチャド符号である場合（パンクチャリングされている場合）には、情報系列のどの部分がゼロであるかを示す信号（パンクチャリングフラグ）も、受信機に通知される。従って、そのような場合には、図４の破線矢印に示されるように、判定部４０４，４０６でパンクチャリングフラグを利用することで、第１，第２の信号変換部４０１，４０２に入力される信号がゼロであるか否かを簡易に判別することができる。
【００５８】
以下、本発明により教示される手段を例示的に列挙する。
【００５９】
（付記１）
データ及び該データに付随する冗長データの符号の組み合わせに対する尤度に基づいて、データの硬判定結果を出力する復号器であって、
入力されたデータの一部のビットを反転して出力するデータ変換手段と、
入力された冗長データの一部のビットを反転して出力する冗長データ変換手段と、
入力されたデータがゼロであるか否かを判定するか、又は入力された冗長データがゼロであるか否かを判定する判定手段と、
前記データ変換手段の出力又は第１の固定値のうちの少なくともいずれか一方と、前記冗長データ変換手段の出力又は第２の固定値のうちの少なくともいずれか一方とを加算して尤度を出力する尤度算出手段と、
を備え、前記尤度算出手段は、前記判定手段がゼロであると判定した場合に、前記加算において固定値の方を選択する
ことを特徴とする復号器。
【００６０】
（付記２）
前記データ変換手段が、受信したデータの最上位ビットを反転して出力する第１変換手段と、受信したデータの最上位ビット以外のビットを反転して出力する第２変換手段を有するデータ変換手段とを備え、
前記冗長データ変換手段が、受信した冗長データの最上位ビットを反転して出力する第１変換手段と、受信した冗長データの最上位ビット以外のビットを反転して出力する第２変換手段とを備える
ことを特徴とする付記１記載の復号器。
【００６１】
（付記３）
当該符号器が、ターボ復号器である
ことを特徴とする付記１記載の復号器。
【００６２】
（付記４）
前記第１の固定値が、前記第２の固定値に等しい
ことを特徴とする付記１記載の復号器。
【００６３】
（付記５）
前記判定手段が、パンクチャリングフラグに基づいて判定を行う
ことを特徴とする付記１記載の復号器。
【００６４】
（付記６）
データ及び該データに付随する冗長データの符号の組み合わせに対する尤度に基づいて、データの硬判定結果を出力する復号方法であって、
受信したデータの一部が反転された変換データ又は第１の固定値の一方を選択し、受信した冗長データの一部が反転された変換冗長データ又は第２の固定値の一方を選択し、選択した値を加算して前記尤度を算出し、
受信したデータがゼロの場合は第１の固定値が、受信したデータがゼロでない場合は変換データが選択され、
受信した冗長データがゼロの場合は第１の固定値が、受信したデータがゼロでない場合は変換データが選択される
ことを特徴とする復号方法。
【００６５】
（付記７）
データ及び該データに付随する冗長データの符号の組み合わせに対する尤度に基づいて、データの硬判定結果を出力するターボ復号器であって、
入力されたデータの特定の一部のビットを反転したものと、他の部分のビットを反転したものとを出力するデータ変換手段と、
入力された冗長データの特定の一部のビットを反転したものと、他の部分のビットを反転したものとを出力する冗長データ変換手段と、
入力されたデータ又は入力された冗長データが、パンクチャされた部分に対応しない場合は、前記データ変換手段の２つの出力と、前記冗長データ変換手段の２つの出力とについて取り得る各組み合わせについて加算結果を出力し、入力されたデータが、パンクチャされた部分に対応する場合は、同じ値の２つの固定値と、前記冗長データ変換手段の２つの出力とについて取り得る各組み合わせについて加算結果を出力する尤度算出手段と、
を備えたことを特徴とするターボ復号器。
【図面の簡単な説明】
【００６６】
【図１】ターボ符号器の一例を示す図である。
【図２】符号器の一例を示す図である。
【図３】本発明の一実施例によるターボ復号器を示す図である。
【図４】本発明の一実施例によるＤ演算部の機能ブロック図を示す。
【図５】本発明の一実施例によるＤ演算部での手順の一例を示すフローチャートである。
【符号の説明】
【００６７】
１１，１２  符号器
１３  インターリーバ
３０２  入力バッファ
３０４  Ｄ演算部
３０６  Ａ演算部
３０８  Ｂ演算部
３１０  Ｂ演算用メモリ
３１２  Ｌ演算部
３１４  尤度出力部
３１６  外部尤度演算部
３１８，３２０  メモリ
４０１，４０２  信号変換部
４０４，４０６  判定部
４１１，４１２  セレクタ
４２１，４２２，４２３，４２４  加算部
４２６  正規化部
４３１，４３２，４３３，４３４  加算部
【図１】
2006261857.tif 000003
【図２】
2006261857.tif 000004
【図３】
2006261857.tif 000005
【図４】
2006261857.tif 000006
【図５】
2006261857.tif 000007