(57)【特許請求の範囲】
【請求項１】
反復デマッピングを含むターボ復調方式を用いて受信シンボルを復調する方法であって、反復チャネル復号器は、前記ターボ復調方式において用いられる、方法において、前記反復チャネル復号器は、反復復号プロセスと呼ばれる第１の反復プロセスを行い、前記ターボ復調は、反復復調及び復号プロセスと呼ばれる第２の反復プロセスを行い、該第２の反復プロセスの各反復時に、前記反復チャネル復号器は、シンボルの導出元のビットを復号するために複数の反復を実行し、該方法は、前記反復チャネル復号器によって実行される、
前記第１の反復プロセスの前記反復の終了時に、前記反復チャネル復号器によって内部的に用いられる変数を記憶するステップと、
前記反復チャネル復号器が前記第２の反復プロセスの後続の反復時に前記記憶された変数を読み出すか又は該記憶された変数をリセットしなくてはならないことを該反復チャネル復号器に示すメッセージをコントローラーから受信するステップと、
前記反復チャネル復号器が前記第２の反復プロセスの後続の反復時に前記記憶された変数を読み出さなくてはならないことを該反復チャネル復号器に示すメッセージを受信したときに、前記第２の反復プロセスの後続の反復時に前記記憶された変数を読み出すステップと、
を含み、
前記ターボ復調方式は、符号ブロックの組に基づくデインターリーブプロセスを含み、前記メッセージは、復号される次のブロックの符号ブロックの組内にブロック識別子を更に含む、
方法。
【請求項２】
前記受信シンボルは、シングルキャリア周波数分割多重接続又は直交周波数分割多重を用いてソースによって転送される、請求項１に記載の方法。
【請求項３】
前記デマッピング方式は、前回の１次元マッピング関数又は２次元マッピング関数に続く線形変換を含むマッピング方式を考慮に入れて行われる、請求項１又は２に記載の方法。
【請求項４】
前記ターボ復調方式は、反復チャネル推定を含む、請求項１から３までのいずれか１項に記載の方法。
【請求項５】
前記反復チャネル復号器は、低密度パリティチェック復号器である、請求項１から４までのいずれか１項に記載の方法。
【請求項６】
前記反復チャネル復号器は、畳み込みターボ符号復号器である、請求項１から５までのいずれか１項に記載の方法。
【請求項７】
前記反復チャネル復号器は、ブロックターボ符号復号器である、請求項１から６までのいずれか１項に記載の方法。
【請求項８】
反復デマッピングを含むターボ復調方式を用いて受信シンボルを復調する装置であって、反復チャネル復号器は、前記ターボ復調方式において用いられる、装置において、前記反復チャネル復号器は、反復復号プロセスと呼ばれる第１の反復プロセスを行い、前記ターボ復調は、反復復調及び復号プロセスと呼ばれる第２の反復プロセスを行い、該第２の反復プロセスの各反復時に、前記反復チャネル復号器は、シンボルの導出元のビットを復号するために複数の反復を実行し、前記反復チャネル復号器は、
前記第１の反復プロセスの前記反復の終了時に、前記反復チャネル復号器によって内部的に用いられる変数を記憶する手段と、
前記反復チャネル復号器が前記第２の反復プロセスの後続の反復時に前記記憶された変数を読み出すか又は該記憶された変数をリセットしなくてはならないことを該反復チャネル復号器に示すメッセージをコントローラーから受信する手段と、
前記反復チャネル復号器が前記第２の反復プロセスの後続の反復時に前記記憶された変数を読み出さなくてはならないことを該反復チャネル復号器に示すメッセージを受信したときに、前記第２の反復プロセスの後続の反復時に前記記憶された変数を読み出す手段と、
を備え、
前記ターボ復調方式は、符号ブロックの組に基づくデインターリーブプロセスを含み、前記メッセージは、復号される次のブロックの符号ブロックの組内にブロック識別子を更に含む、
装置。
【請求項９】
プログラムコード命令がプログラム可能なデバイスによって実行されるときに、請求項１から７までのいずれか１項に記載の方法を実施するための、前記プログラム可能なデバイスにおいてロードすることができる前記プログラムコード命令を含むコンピュータープログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、反復デマッピングを含むターボ復調方式を用いて受信シンボルを復調する方法に関し、反復チャネル復号器は、ターボ復調方式において用いられる。
【背景技術】
【０００２】
ターボ復調方式の実施は、反復チャネル復号器がターボ復調方式で用いられるときに特に複雑である。
【０００３】
例えばＬＤＰＣ符号、畳み込みターボ符号（ＣＴＣ）又はブロックターボ符号（ＢＴＣ）を用いる、強力な反復チャネル復号器が用いられるとき、これらの符号の復号器は、ターボ原理に従って共同で動作しなくてはならない。内部において、ハードウェア又はソフトウェアで実施されるいくつかのユニットは、反復的に情報を交換する。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＬＤＰＣ符号の場合、従来から、良好な性能を得るには少なくとも５０回の反復が必要であると通常考えられている。ターボ符号の場合、４回〜８回の復号反復が必要とされる。
【０００５】
そのようなターボチャネル復号器がターボ復調方式内で実施されるとき、複雑性が爆発的に高まる。ターボ復調のために５回のターボ反復が用いられ、ＬＤＰＣ復号器が５０回の反復を内部で実施する場合、全体として２５０回のＬＤＰＣ反復を行うことになる。ターボ符号にも同じ推論を用いることができる。
【課題を解決するための手段】
【０００６】
本発明は、性能劣化なしで、復号反復の総数を大幅に減らすことを目的とする。
【０００７】
本発明は、反復デマッピングを含むターボ復調方式を用いて受信シンボルを復調する方法であって、反復チャネル復号器は、ターボ復調方式において用いられる、方法において、反復チャネル復号器は、反復復号プロセスと呼ばれる第１の反復プロセスを行い、ターボ復調は、反復復調及び復号プロセスと呼ばれる第２の反復プロセスを行い、この第２の反復プロセスの各反復時に、反復チャネル復号器は、シンボルの導出元のビットを復号するために複数の反復を実行し、本方法は、反復チャネル復号器によって実行される、
第１の反復プロセスの反復の終了時に、反復チャネル復号器によって内部的に用いられる変数を記憶するステップと、
第２の反復プロセスの後続の反復時に記憶された変数を読み出すステップと、
を含むことを特徴とする、方法に関する。
【０００８】
また、本発明は、反復デマッピングを含むターボ復調方式を用いて受信シンボルを復調する装置であって、反復チャネル復号器は、ターボ復調方式において用いられる、装置において、反復チャネル復号器は、反復復号プロセスと呼ばれる第１の反復プロセスを行い、ターボ復調は、反復復調及び復号プロセスと呼ばれる第２の反復プロセスを行い、この第２の反復プロセスの各反復時に、反復チャネル復号器は、シンボルの導出元のビットを復号するために複数の反復を実行し、反復チャネル復号器は、
第１の反復プロセスの反復の終了時に、反復チャネル復号器によって内部的に用いられる変数を記憶する手段と、
第２の反復プロセスの後続の反復時に記憶された変数を読み出す手段と、
を備えることを特徴とする、装置に関する。
【０００９】
このため、第２の反復プロセスの第２の反復及び後続の反復中、性能の損失なしで復号反復回数を低減することが可能であり、このため、同じ性能について受信機の複雑度を低減するか、又は同じ複雑度について性能を改善することが可能である。
【００１０】
例えば、反復チャネル復号器がＬＤＰＣ符号を用いる場合、本発明は、良好な性能を得るために５回〜２０回の反復しか必要としない。
【００１１】
例えば、反復チャネル復号器が畳み込みターボ符号を用いる場合、本発明は、良好な性能を得るために、本発明を用いない場合の４回〜８回ではなく、１回〜３回の反復しか必要としない。
【００１２】
特定の特徴によれば、ターボ復調方式は、反復デマッピングを含む。
【００１３】
このため、コンスタレーション次数が十分大きいとき（少なくとも２）、且つビット対コンスタレーション（bit-to-constellation）のマッピングが良好に選択されるとき、性能が改善される。
【００１４】
特定の特徴によれば、デマッピング方式は、前回の１次元マッピング関数又は２次元マッピング関数に続く線形変換を含むマッピング方式を考慮に入れて行われる。
【００１５】
このため、マッピング／デマッピング関数のダイバーシティ次数が増大し、性能が増す。
【００１６】
特定の特徴によれば、受信シンボルは、シングルキャリア周波数分割多重接続（Single-Carrier Frequency Division Multiple Access）又は直交周波数分割多重（orthogonal frequency division multiplex）を用いてソースによって転送される。
【００１７】
このため、複雑度が更に低減され、これらの２つの波形は、周波数領域における復調の単純化された実施を可能にする。
【００１８】
特定の特徴によれば、ターボ復調方式は、反復チャネル推定を含む。
【００１９】
このため、チャネル推定の性能が改善され、これにより受信機性能が改善する。
【００２０】
特定の特徴によれば、反復チャネル復号器は、この反復チャネル復号器が第２の反復プロセスの後続の反復時に記憶された変数を読み出すか又はこの記憶された変数をリセットしなくてはならないことをこの反復チャネル復号器に示すメッセージをコントローラーから受信する。
【００２１】
このため、復号器は、実際に必要とされるときのみメモリコンテンツを使用する。
【００２２】
特定の特徴によれば、ターボ復調及び復号方式は、符号ブロックの組に基づくデインターリーブプロセスを含み、メッセージは、復号される次のブロックの符号ブロックの組内にブロック識別子を更に含む。
【００２３】
このため、反復チャネル復号器は、現在の符号ブロックに対応するメモリコンテンツを用いる。
【００２４】
特定の特徴によれば、反復チャネル復号器は、低密度パリティチェック復号器である。
【００２５】
このため、ＤＬＰＣ復号器が反復的方式で機能するとき、性能及び／又は複雑度が改善される。
【００２６】
特定の特徴によれば、反復チャネル復号器は、畳み込みターボ符号復号器である。
【００２７】
このため、畳み込みターボ符号復号器が反復的方式で機能するとき、性能及び／又は複雑度が改善される。
【００２８】
特定の特徴によれば、反復チャネル復号器は、ブロックターボ符号復号器である。
【００２９】
このため、ブロックターボ符号復号器が反復的方式で機能するとき、性能及び／又は複雑度が改善される。
【００３０】
また、本発明は、プログラマブルデバイスにロードすることができるプログラムコード命令であって、プログラムコード命令がプログラマブルデバイスによって実行されると、第１の実施形態による方法を実施する、プログラムコード命令を含むコンピュータープログラムに関する。
【００３１】
また、本発明は、プログラマブルデバイスにロードすることができるプログラムコード命令であって、プログラムコード命令がプログラマブルデバイスによって実行されると、第１の実施形態による方法を実施する、プログラムコード命令を含むコンピュータープログラムを記憶する情報記憶手段に関する。
【００３２】
上述した本発明の特徴及び他の特徴は、一実施形態の一例の以下の説明を読むことでより明らかになる。この説明は、添付図面に関してなされている。
【図面の簡単な説明】
【００３３】
【図１】本発明を実施することができる通信システムの例を概略的に示す図である。
【図２】本発明を実施することができる受信機の例を概略的に示す図である。
【図３】本発明を実施することができる受信機の無線インターフェースのハードウェアアーキテクチャの例を表す図である。
【図４】本発明による制御モジュールによって実行されるアルゴリズムの例を表す図である。
【図５】本発明による反復チャネル復号器によって実行されるアルゴリズムの例を表す図である。
【発明を実施するための形態】
【００３４】
図１は、本発明を実施することができる電気通信システムの例を概略的に示す。
【００３５】
少なくとも、電気通信システムは、少なくとも１つの受信機Ｒｅｃにシンボルを送信するソースＳｒｃを備える。
【００３６】
電気通信システムは、直交周波数分割多重（ＯＦＤＭ）を用いる３ＧＰＰ／ＬＴＥダウンリンク無線電気通信システム、又はシングルキャリア周波数分割多重接続（ＳＣ−ＦＤＭＡ）を用いる３ＧＰＰ／ＬＴＥアップリンク無線電気通信システム、又はＯＦＤＭを用いるＤＶＢ（デジタルビデオ放送）第２世代地上デジタル放送システム（ＤＶＢ−Ｔ２）のようなブロードキャスト電気通信ネットワークシステムとすることができる。
【００３７】
ＯＦＤＭはマルチキャリアシステムである。
【００３８】
ＳＣ−ＦＤＭＡは、ＯＦＤＭタイプの多重化を伴うがシングルキャリアのようなエンベロープを有する変調方式である。ＳＣ−ＦＤＭＡは、時間領域（ＩＦＤＭＡ）においても周波数領域においても実施することができる。周波数領域において実施される場合、ＳＣ−ＦＤＭＡは、ＤＦＴ拡散ＯＦＤＭ、又はＳＣ−ＦＤＥ（シングルキャリア周波数領域等化）若しくはＳＣ−ＯＦＤＭ（シングルキャリア周波数分割多重接続）とも呼ばれる。本発明は、反復デマッピングが必要とされ、反復復号プロセスを有するチャネル復号器が用いられる任意の電気通信システムにおいて適用可能である。マッピングは、送信機部分において、ビットを、例えば、いわゆるコンスタレーション、例えば、ＱＰＳＫ、１６ＱＡＭ又は８ＰＳＫコンスタレーションに属する変調シンボルに変換するプロセスである。コンスタレーションセットは、１次元、２次元又はそれ以上とすることができる。この次元は、コンスタレーション次数とも呼ばれる。２よりも大きいこのコンスタレーション次数は、例えば、より低い次元を有するいくつかの要素に線形変換を適用することによって得ることができる。「線形変換」という用語は、広い意味で、例えば、入力要素の実座標における線形変換として理解されなくてはならない。例えば、変調シンボルは、ＤＶＢ−Ｔ２規格において与えられる意味で、例えば回転によって更に変換することができる。これらの例は、マッピングという用語が、ビットの組を変調シンボルの組に変換する広い意味で理解されることを示す。
【００３９】
デマッピングは、マッピング関数の逆関数である。受信した変調シンボルから、デマッピング関数は、各対応する送信ビットの推定値を提供する。例えば、これらの推定値は、軟値にある。例えば、これらの推定値は、ビットのＬＬＲ（対数尤度比）に対応する。例えば、デマッピング関数は、送信障害に関する何らかの知識、例えば、信号対雑音比又はチャネル推定値を用いる。いわゆるターボデマッピングプロセスにおいて、このプロセスの第２の反復から、デマッピングは、チャネル復号器によって提供される外部情報に対応する何らかのアプリオリ情報（a priori information）を用いる。ターボデマッピングは、マッピング次数が少なくとも２に等しい場合、かつ、大域マッピング関数、すなわち、任意選択の線形変換又は回転を含む関数が良好に選択される場合、性能改善をもたらす。マッピング関数の選択については、多数の（a wide number of）技術論文が書かれている。本発明における重要な態様によって、ターボデマッピングによる利点が与えられるとすぐに、利点がもたらされる。
【００４０】
図２は、本発明を実施することができる受信機の例を概略的に示す。
【００４１】
示されるアーキテクチャによれば、受信機Ｒｅｃは、通信バス２０１によって相互接続された以下のコンポーネント、すなわち、プロセッサ、マイクロプロセッサ、マイクロコントローラー又はＣＰＵ（中央処理ユニット）２００と、ＲＡＭ（ランダムアクセスメモリ）２０３と、ＲＯＭ（リードオンリーメモリ）２０２と、少なくとも１つのアンテナＡｎｔに接続された無線インターフェース２０５とを備える。
【００４２】
無線インターフェース２０５は、受信機Ｒｅｃがシンボルを受信することを可能にする。
【００４３】
ＣＰＵ２００は、ＲＯＭ２０２から、又は外部メモリからＲＡＭ２０３内にロードされた命令を実行することが可能である。受信機Ｒｅｃに電源が投入された後、ＣＰＵ２００は、ＲＡＭ２０３から命令を読み出し、これらの命令を実行することが可能である。命令は、ＣＰＵ２００に、本発明に従って受信シンボルを復号させる１つのコンピュータープログラムを形成する。
【００４４】
復号は、ＰＣ（パーソナルコンピューター）、ＤＳＰ（デジタル信号プロセッサ）又はマイクロコントローラー等のプログラマブルコンピューティングマシンによる一組の命令又はプログラムの実行によってソフトウェアで実施することもできるし、ＦＰＧＡ（フィールドプログラマブルゲートアレイ）又はＡＳＩＣ（特定用途向け集積回路）等のマシン又は専用のコンポーネントによってハードウェアで実施することもできる。
【００４５】
図３は、本発明を実施することができる受信機の無線インターフェースのハードウェアアーキテクチャの例を表す。
【００４６】
図３において与えられるハードウェアアーキテクチャの例は、本発明の特性に焦点を当てる。既に述べたように、本発明は、いくつかの状況において、したがっていくつかの波形について用途を見出す。可能な波形の詳細、例えば、ＯＦＤＭ波形のためのＩＤＦＴ関数は、一般性のために、及び簡単にするために省かれる。
【００４７】
無線インターフェース２０５は、同期モジュール３０１と、制御モジュール３００と、復調モジュール３０２と、チャネル推定モジュール３０３と、デマッピングモジュール３０４と、メモリ３０９に関連付けられた反復チャネル復号器３０８と、減算モジュール３１１とを備え、インターリーブモジュール３１０と、デインターリーブモジュール３０５とを備える場合がある。
【００４８】
図３の例において、メモリ３０９は、反復チャネル復号器３０８と別個である。メモリ３０９は、反復チャネル復号器３０８に含めることができる。
【００４９】
反復チャネル復号器３０８は、一般的な観点から、ターボ復号器である。ターボ復号器は、復号の反復的な実施を用いる。反復チャネル復号器３０８は、反復復号プロセスと呼ばれる第１の反復プロセスを実行する。
【００５０】
復調モジュール３０２、デマッピングモジュール３０４、反復チャネル復号器３０８、減算モジュール３１１、並びに存在する場合、インターリーブモジュール３１０及びデインターリーブモジュール３０７は、反復復調及び復号プロセスと呼ばれる第２の反復プロセスを形成する。第２の反復プロセスの各反復時に、反復チャネル復号器３０８は、ビットを復号するために複数の反復を実行する。
【００５１】
復調モジュール３０２、デマッピングモジュール３０４、デインターリーブモジュール３０５、減算モジュール３１１及びインターリーブモジュール３１０は、本発明の例において復調プロセスを実行する。
【００５２】
第１の反復プロセスの終了時に、反復チャネル復号器３０８は、デマッピングを実行するために、第２の反復プロセスの後続のステップにおけるチャネル推定によって用いられる特定の特徴に従って、第２の反復プロセスによって用いられる外因性情報を提供する。
【００５３】
外因性情報は、例えば、送信シンボルの送信ビットに関する対数尤度比（ＬＬＲ）である。
【００５４】
このとき、無線インターフェース２０５は、受信シンボルを復号するために、少なくとも２つの相互にリンクした反復プロセスを含む。
【００５５】
本発明によれば、反復チャネル復号器３０８は、第１の反復プロセスの反復の終了時に、メモリ３０９内に、反復チャネル復号器３０８によって用いられる変数を記憶し、第２の反復プロセスの後続の反復時に、記憶された変数を読み出す。
【００５６】
無線インターフェース２０５は、フレームの開始、ブロックの開始に関する同期情報を制御モジュール３００、復調モジュール３０２に提供し、より一般的には、そのような同期情報を、その情報を必要とする場合がある全てのモジュールに提供する、同期モジュール３０１を備える。ここで、フレームは１つ又はいくつかの符号語に対応する。インターリーブが適用されるとき、説明を容易にするために、フレームが１インターリーブ深度に対応することを仮定する。
【００５７】
制御モジュール３００は、同期モジュール３０１から受信した情報から、本発明に従って、反復チャネル復号器３０８が、メモリ３０９内に以前に記憶された情報をメモリ３０９内で読み出さなくてはならない、すなわち、以前の反復時に記憶された変数を再利用しなくてはならない場合、又は反復チャネル復号器３０８がメモリ３０９内に記憶された変数を再初期化しなくてはならない場合に、反復チャネル復号器３０８に示すコマンド信号を生成する。
【００５８】
チャネル推定モジュール３０３は、いくつかのパイロット又はデータに対しブラインド方式で、予備の不完全なチャネル推定を実行することによって、第１のチャネル推定を行うことができ、後続の反復において、存在する場合、インターリーブモジュール３１０によって、又は減算モジュール３１１によって提供される更なる外因性情報を用いて、パイロット又はデータに対しチャネル推定を行うことができる。
【００５９】
チャネル推定モジュール３０３の出力は復調モジュール３０２に提供され、復調モジュール３０２は、第１の反復時にチャネル推定値及び受信シンボルに基づいて、かつ第２の反復から、チャネル推定値、受信シンボル、及び存在する場合、インターリーブモジュール３１０によって提供される外因性情報、又は減算モジュール３１１によって提供される外因性情報によって提供される外因性情報に基づいて復調を行う。
【００６０】
復調モジュール３０２は、チャネル推定を更に改善するために、シンボル推定をデマッピングモジュール３０４に提供し、任意選択で、チャネル推定モジュール３０３に提供する。これらのシンボル推定は、送信シンボルの軟推定に対応し、送信シンボルは、コンスタレーションアルファベットに属する。これらには、送信障害に関する何らかの情報、例えば、信号対雑音比又はチャネル応答推定が付随する場合がある。この復調モジュール３０２は、等化を含むことができるか、又はシステムがＯＦＤＭ波形を用いる場合、ＩＤＦＴ（逆デジタルフーリエ変換）を含むことができる。
【００６１】
デマッピングモジュール３０４は、第１の反復時に復調モジュール３０２の出力に基づくデマッピングを実行し、第２の反復プロセスの第２の反復から、復調モジュール３０２の出力と、存在する場合、モジュール３１０によって、又は減算モジュール３１１によって提供される外因性情報とに基づくターボデマッピングを実行する。
【００６２】
デマッピングモジュール３０４の出力は、ＬＬＲのような軟推定にあり、存在する場合、軟推定をデインターリーブするデインターリーブモジュール３０５に提供され、デインターリーブモジュール３０５が存在しない場合、チャネル復号器３０８及び減算モジュール３１１に提供される。
【００６３】
特定の特徴によれば、デマッピング方式は、前回の１次元マッピング関数又は２次元マッピング関数に続く線形変換を含むマッピング方式を考慮に入れて行われる。
【００６４】
デインターリーブモジュール３０５は、存在する場合、符号ブロック単位で軟推定をデインターリーブすることができるか、又はインターリーブが符号ブロックの組に対して実行される場合、符号ブロックの組によって軟推定をデインターリーブすることができる。
【００６５】
ブロックは、符号語に対応する。
【００６６】
存在する場合、デインターリーブモジュール３０５の出力が、反復チャネル復号器３０８に提供される。
【００６７】
反復チャネル復号器３０８は、例えば、ＬＤＰＣ（低密度パリティチェック）復号器又はＣＴＣ（畳み込みターボ符号）復号器又はＢＴＣ（ブロックターボ符号）復号器である。
【００６８】
ＬＤＰＣ符号は線形ブロック符号であり、そのシンドローム行列Ｈはスパースである。スパースな態様は、パリティ方程式が、符号ブロックのサイズよりも小さい、通常２桁〜８０桁の比較的小さい数の変数のみを含むことを意味する。
【００６９】
ＬＤＰＣ符号は、シャノン容量方程式によって求められる可能な限り最良に極めて近い性能を呈する。
【００７０】
ＬＤＰＣ符号は、ノードの一方の組、すなわち変数ノードが、符号語の要素に対応し、ノードの他方の組、すなわちチェックノードが、符号を定義するパリティチェック制約の組に対応する、二部グラフによって良好に表される。
【００７１】
変数ノード及びチェックノードは、メッセージを反復的に交換する。チェックノードは、自身の近傍ノードからメッセージを取得し、メッセージを処理し、結果として得られるメッセージを自身の近傍ノードに返送する。近傍ノードは、対応するチェックに関与する変数ノードである。同様に、変数ノードが自身の近傍ノードからメッセージを受信し、メッセージを処理し、メッセージを自身の近傍ノードに返送する。ここで、近傍ノードは、変数が関与するチェックノードである。変数ノード又はチェックノードの各出力メッセージは、その出力メッセージの送信先の近傍ノードから到来するメッセージを除く、ノードに到来する全てのメッセージの関数である。
【００７２】
この２ステップ手順は、多数回繰り返される。ｎ回のそのような反復の後、各変数ノードは、近傍から及び反復復号器ブロック入力から得られた全ての情報に基づいて、自身の関連ビットを復号する。
【００７３】
従来から、対数尤度比（ＬＬＲ）がメッセージとして用いられ、すなわち、
【数１】
0006456521.tif 000002
を、変数ｖに関連付けられたビットｘを表す軟推定として用いる。
【００７４】
ｉ番目のＬＤＰＣ反復において、
【数２】
0006456521.tif 000003
は、チェックノードｃへの変数ノードｖの出力メッセージであり、ここで、ｘは、変数ノードに関連付けられるビットであり、
【数３】
0006456521.tif 000004
は、チェックノードｃに対応するエッジ以外のエッジから得られる、現在の反復までにノードに利用可能な全ての情報を示す。したがって、常に正のカウンタ反応を回避するために、前回の反復（ｉ−１）時にチェックノードｃからｖに送信された情報が省かれる。
【００７５】
第１の反復時に、復号プロセスの開始のために、これらの値は、利用可能なアプリオリ情報、すなわち入力Ｌａ（ｖ）に等しい。
【数４】
0006456521.tif 000005
【００７６】
同様に、チェックノードの出力メッセージを以下のように定義する。
【数５】
0006456521.tif 000006
【００７７】
ここで、ｉは反復インデックスであり、ｘは、チェックノードｃからメッセージを得る変数ノードｖに関連付けられるビットであり、
【数６】
0006456521.tif 000007
は、ｖに対応するエッジ以外のエッジから得られる、現在の反復までにチェックノードｃに利用可能な全ての情報を示す。
【００７８】
和積復号の下で、変数ノードからチェックノードへのメッセージは、アプリオリ情報を含むが、このチェックノードから到来した以前のメッセージを除く、全ての到来するＬＬＲの和に等しい。
【数７】
0006456521.tif 000008
【００７９】
ここで、変数ｖに関連付けられた外因性情報は以下のように定義される。
【数８】
0006456521.tif 000009
【００８０】
ｄｃ個の変数ｖｊに関連付けられたチェックノードｃのためのメッセージ更新規則は、例えば、以下の式から得ることができる。
【数９】
0006456521.tif 000010
但し、ｖｊ＝ｖを除く。
【００８１】
演算（の定義は以下のとおりである。
【数１０】
0006456521.tif 000011
【００８２】
演算（は、可換かつ結合的であり、これによって再帰的実施が可能になる。例えば、この演算は、以下によって実施することができる。
【数１１】
0006456521.tif 000012
【００８３】
関数ｆは、ｆ（ｕ）＝ｌｏｇ（１＋ｅ−｜ｕ｜）によって与えられる。
【００８４】
ここで、式Ｌｉ（ｃ→ｖ）の単純化されたバージョンを用いることができることに留意しなくてはならない。
【００８５】
本発明によれば、各情報Ｌｅｘｔ（ｃ→ｖ）が第１の反復プロセスの最後の反復時にメモリ３０９に記憶され、各情報Ｌｅｘｔ（ｃ→ｖ）は、同じ符号ブロックのための第２の反復プロセスの次の反復時に読み出される。当該情報が読み出されると、ノードｃは各連結された変数ノードｖに、Ｌｅｘｔ（ｃ→ｖ）を送信する。
【００８６】
反復チャネル復号器３０８は、例えばＣＴＣ復号器である。ＣＴＣ符号は、畳み込み符号の並列な連結にある。通常、２つの畳み込み符号が用いられる。
【００８７】
Berrou C.、Glavieux A.及びThitimajshima P著の「Near Shannon Limit Error-Correcting coding and decoding: Turbo-Codes」と題する１９９３年５月のProc. 1993 IEEE International Conference of Communications, Geneva, Switzerland, pp 1064 - 1070に開示されている刊公物から、いわゆるターボ符号が既知である。
【００８８】
これらの符号は、複数の再帰型組織畳み込み（ＲＳＣ）符号と並行な連接によって構築される誤り訂正符号の組を指定し、各要素符号は、インターリーブプロセスによって、先行する符号と分離される。
【００８９】
このように符号化されるシーケンスは、共通してターボ復号と呼ばれる、重み付けされた入力及び出力を用いた反復的方法によって復号される。各ターボ復号反復は、各々が要素符号に対応する要素復号器と直列又は並列の関連付けで構成される。各要素復号器（外因性情報と呼ばれる）によって生成される重み付けされた情報は、デインターリーブされ、次に別の要素復号器の入力に伝播される。したがって、メッセージは、要素畳み込み復号器間で交換される。
【００９０】
各要素復号器が利用可能な情報のうちの一部（すなわち、対応する要素符号化器に関係するビット）のみから外因性情報を生成することは、反復プロセスを正当化する。外因性情報は、別の要素復号器（直列実施において、１つの反復内で第２の復号器、又は１つの反復から次の反復に進む際に第１の復号器）に送信され、この別の要素復号器は、前の復号器の外因性情報を追加することによって、自身の入力情報を更新する。１つの復号反復は、要素復号器（２次元ターボ符号の場合、２つ）の連接（又は並列な実施における並列な処理）により行われる。１つの復号から次の復号へと進むにつれ、外因性情報の振幅が増大する、すなわち、復号ビットの推定がより信頼性のあるものとなる。同等に、性能利得は、１つの反復から次の反復へと進むにつれ達成される。いくつかの反復後、外因性情報の振幅は変化せず、全ての利用可能な情報が「使い果たされ」、アルゴリズムは収束している。
【００９１】
例えば、２つ（ｎ個）の要素符号、及び復号が直列に実行されることを仮定することによって、第２の（ｎ番目の）復号器から到来する外因性情報が、第１の反復プロセスの最後の反復においてメモリに記憶され、各外因性情報が同じブロックのための第２の反復プロセスの次の反復において読み出される。２つの（ｎ個の）復号器において復号が並列に行われる場合、双方の又は全ての復号器から到来する外因性情報が、第１の反復プロセスの最後の反復時にメモリに記憶され、同じブロックのための第２の反復プロセスの次の反復時に各可変外因性情報が読み出される。
【００９２】
反復チャネル復号器３０８は、例えば、ブロックターボ復号器（ＢＴＣ）である。
【００９３】
ＢＴＣ符号は、短いブロック符号の直列連接にあり、反復復号を必要とする。
【００９４】
通常、データは行列で表される。各線は、要素線形ブロック符号によって符号化され、次に、各列は、同じ又は別の要素線形ブロック符号によって符号化される。
【００９５】
反復復号器において、メッセージは、水平次元における復号器と、垂直次元における復号器との間で交換される。
【００９６】
これは、軟入力軟出力復号器が短い要素符号のために用いられることを暗に意味する。
【００９７】
復号が、水平次元において最初に実行されることを仮定することによって、垂直次元において復号器から到来する外因性情報が、第１の反復プロセスの最後の反復時にメモリに記憶され、垂直次元において復号器から到来する各外因性情報が、同じブロックのための第２の反復プロセスの次の反復時に水平次元において復号するために読み出される。
【００９８】
インターリーブモジュール３１０及びデインターリーブモジュール３０５が存在する場合、反復チャネル復号器３０８の出力が、復号されたシンボルとして出力され、プロセッサ２００、減算モジュール３１１に提供され、減算モジュール３１１は、反復チャネル復号器３０８の出力に対し、デインターリーブモジュールの出力を減算する。
【００９９】
減算モジュール３１１の出力、いわゆる外因性情報は、インターリーブモジュール３１０に提供され、インターリーブモジュール３１０は、デインターリーブモジュール３０５によって行われるプロセスと逆のプロセスを行う。
【０１００】
インターリーブモジュール３１０の出力は、デマッピングモジュール３０４に提供され、任意選択で、復調モジュール３０２及びチャネル推定モジュール３０３に提供される。
【０１０１】
インターリーブモジュール３１０及びデインターリーブモジュール３０５が存在しない場合、反復チャネル復号器３０８の出力が、復号されたシンボルとして出力され、プロセッサ２００、減算モジュール３１１に提供され、減算モジュール３１１は、反復チャネル復号器３０８の出力に対し、デマッピングモジュール３０４の出力を減算する。
【０１０２】
減算モジュール３１１の出力、いわゆる外因性情報は、デマッピングモジュール３０４に提供され、任意選択で、復調モジュール３０２及びチャネル推定モジュール３０３に提供される。
【０１０３】
図４は、本発明による制御モジュールによって実行されるアルゴリズムの例を表す。
【０１０４】
ステップＳ４０において、例えば、新たな等化反復の開始時に、制御モジュール３００は、新たな符号ブロック又は符号ブロックの新たな組が受信されるか否か、すなわち、新たなフレームが受信されるか否かをチェックする。制御モジュール３００は、同期モジュール３０１から、フレームの開始及び符号ブロックの開始に関連する情報を受信する。制御部３００は、図３を参照して開示される無線インターフェースの各モジュールの状態を通知される。
【０１０５】
新たなブロック又はブロックの新たな組が受信される場合、制御モジュール３００はステップＳ４１に移る。そうでない場合、制御モジュール３００はステップＳ４２に移る。
【０１０６】
ステップＳ４２において、制御モジュール３００は、反復チャネル復号器３０８に、この反復チャネル復号器３０８がメモリ３０９に以前に記憶された情報をメモリ３０９内で読み出さなくてはならないこと、すなわち以前の反復時に記憶された変数を再利用しなくてはならないことを示すコマンド信号を反復チャネル復号器３０８に転送する。
【０１０７】
インターリーブがブロックの組に対し行われ、固有（unique）のブロックに対し行われない場合、制御モジュール３００は、インデックスが転送されたブロックのための前回の反復時に記憶された変数を取り出すためにチャネル復号器３０８によって用いられるブロックインデックスも転送する。
【０１０８】
その後、制御モジュール３００はステップＳ４３に移る。
【０１０９】
ステップＳ４１において、制御モジュール３００は、反復チャネル復号器３０８に、この反復チャネル復号器３０８がメモリ３０９内に記憶された変数を再初期化しなくてはならないことを示すコマンド信号を反復チャネル復号器３０８に転送する。インターリーブがブロックの組に対し行われ、固有のブロックに対し行われない場合、制御モジュール３００は、メモリ３０９のいずれの部分において、復号プロセスの終了時に外因性情報が記憶されなくてはならないかを決定するためにチャネル復号器３０８によって用いられるブロックインデックスも転送する。
【０１１０】
その後、制御モジュール３００はステップＳ４３に移る。
【０１１１】
次のステップＳ４３において、制御モジュール３００は、現在処理されている符号ブロックのためのチャネル復号器３０８による反復復号が終了するか否かをチェックする。
【０１１２】
チャネル復号器３０８による反復復号が終了する場合、プロセッサ３００はステップＳ４０に移る。そうでない場合、プロセッサ３００はステップＳ４３に戻る。
【０１１３】
図５は、本発明による反復チャネル復号器によって実行されるアルゴリズムの例を表す。
【０１１４】
ステップＳ５０において、制御モジュール３００から、新たな符号ブロックが利用可能であること、及び復号を開始しなくてはならないことを示すメッセージを受信した後、反復チャネル復号器３０８は、コマンド信号が受信されるか否かをチェックする。このコマンド信号は、「再利用」又は「非再利用」コマンドである。「再利用」コマンド信号は、反復チャネル復号器３０８が、メモリ３０９に以前に記憶された情報をメモリ３０９内で読み出さなくてはならないこと、すなわち以前の反復時に記憶された変数を再利用しなくてはならないことを反復チャネル復号器３０８に示す。
【０１１５】
インターリーブが符号ブロックの組に対し行われる場合、コマンド信号は、チャネル復号器３０８によって用いられるブロックインデックスも更に含む。「再利用」コマンドが受信される場合、このコマンドは、インデックスが転送されるブロックの前回の反復時に記憶された変数を取り出すために用いられる。
【０１１６】
コマンド信号が、反復チャネル復号器３０８に、この反復チャネル復号器３０８が、メモリ３０９内に以前に記憶された情報をメモリ３０９内で読み出さなくてはならないことを示す場合、反復チャネル復号器３０８はステップＳ５１に移る。そうでない場合、反復チャネル復号器３０８はステップＳ５２に移る。
【０１１７】
ステップＳ５１において、反復チャネル復号器３０８は、メモリ３０９において、第１の反復プロセスの最後の反復時にメモリ３０９に記憶された各外因性情報を読み出す。インターリーブがブロックの組に対し行われる場合、反復チャネル復号器３０８は、制御メッセージ内にインデックスが含まれるブロックに対応する第１の反復プロセスの最後の反復時に、メモリ３０９内に記憶された各外因性情報をメモリ３０９内で読み出す。
【０１１８】
反復チャネル復号器３０８がＬＤＰＣである場合、反復チャネル復号器３０８は、第１の反復プロセス及び各変数Ｌｅｘｔ（ｃ→ｖ）の最後の反復時に、メモリ３０９内に記憶された各変数Ｌｅｘｔ（ｃ→ｖ）をメモリ３０９内で読み出す。
【０１１９】
反復チャネル復号器３０８がＬＤＰＣである場合、かつインターリーブがブロックの組に対し行われる場合、反復チャネル復号器３０８は、制御メッセージ内にインデックスが含まれるブロックに対応する第１の反復プロセス及び各変数Ｌｅｘｔ（ｃ→ｖ）の最後の反復時に、メモリ３０９内に記憶された各変数Ｌｅｘｔ（ｃ→ｖ）をメモリ３０９内で読み出す。
【０１２０】
その後、反復チャネル復号器３０８はステップＳ５３に移る。
【０１２１】
ステップＳ５２において、インターリーブがブロックの組に対し行われる場合、反復チャネル復号器３０８は、受信符号ブロックインデックスに対応する第１の反復プロセスの最後の反復時に、メモリ３０９内に記憶された外因性情報をリセットする。
【０１２２】
外因性情報が読み出されるか又はリセットされると、反復チャネル復号器はこの情報を復号のために用いる。
【０１２３】
反復チャネル復号器３０８がＬＤＰＣである場合、情報が読み出されると、ノードｃは、現在復号されているブロックの復号プロセスの開始のために、各変数ノードｖにＬｅｘｔ（ｃ→ｖ）を送信する。
【０１２４】
その後、反復チャネル復号器３０８はステップＳ５３に移る。
【０１２５】
ステップＳ５３において、反復チャネル復号器３０８は、新たな反復復号を開始する。同じブロックのための第２の反復プロセスの前回の反復時にメモリ３０９に前回記憶された情報をメモリ３０９内で読み出すことによって、本発明は、第２の反復プロセスの反復数を激減させ、したがって、受信機の複雑度を低減する。
【０１２６】
次のステップＳ５４において、反復チャネル復号器３０８は、第１の反復プロセスの最後の反復が実行されるか否かをチェックする。
【０１２７】
第１の反復プロセスの最後の反復が実行される場合、反復チャネル復号器３０８はステップＳ５５に移る。そうでない場合、反復チャネル復号器３０８はステップＳ５３に戻る。
【０１２８】
ステップＳ５５において、反復チャネル復号器３０８は、内部外因性情報をメモリ３０９内に記憶する。
【０１２９】
インターリーブがブロックの組に対し行われる場合、反復チャネル復号器３０８は、ステップＳ５０において受信したインデックスを用いて、ブロックに専用のメモリエリア内のメモリ３０９内に内部外因性情報を記憶する。
【０１３０】
次のステップＳ５６において、反復チャネル復号器３０８は、軟復号情報を減算モジュール３１１及びプロセッサ２００に転送する。軟復号情報は、例えば、送信シンボルの送信ビットに関する対数尤度比（ＬＬＲ）である。
【図１】
0006456521.tif 000013
【図２】
0006456521.tif 000014
【図３】
0006456521.tif 000015
【図４】
0006456521.tif 000016
【図５】
0006456521.tif 000017