(57)【特許請求の範囲】
【請求項１】
雑音のあるチャネルを介して受信したターボ符号化された符号シーケンスＲ１Ｎを復号する方法であって、
前方回帰確率関数ベクトルα０を初期化するステップと、
後方回帰確率関数ベクトルβＮを初期化するステップと、
前記シーケンスＲ１Ｎの受信された各シンボルＲｋについて複数の遷移確率マトリックスを決定するステップであって、前記複数の確率マトリックスはマトリックスΓ（Ｒｋ）を含むステップと、
前記複数の遷移確率マトリックスを並行に乗算しながら、各受信されたシンボルＲｋについてΓ（Ｒｋ）に従って前記前方回帰確率関数ベクトルαｋの値を決定するステップと、
完全な符号シーケンスＲ１Ｎを受信した後に、各復号されたビットｄｋについて対数尤度比を並行に決定するステップと
を備えた方法。
【請求項２】
前記前方回帰確率関数ベクトルα０は［１，０，０，…，０］に初期化され、前記後方回帰確率関数ベクトルβＮは［１，０，０，…，０］に初期化され、前記複数の遷移確率マトリックスはΓｉ（Ｒｋ）も含み、
前記マトリックス乗算の結果から前記後方回帰確率関数ベクトルβＮの値を決定するステップと、
前方および後方回帰確率関数ベクトルの前記値から前記対数尤度比を決定するステップと
をさらに備えたことを特徴とする請求項１に記載の方法。
【請求項３】
前記前方回帰確率関数ベクトルα０は［１，０，０，…，０］に初期化され、前記後方回帰確率関数ベクトルβＮは［１，０，０，…，０］に初期化され、前記複数の遷移確率マトリックスはΓ１（Ｒｋ）も含み、
前方および後方回帰確率関数ベクトルの前記値から前記対数尤度比を決定するステップ
をさらに備えたことを特徴とする請求項１に記載の方法。
【請求項４】
前記Γｉ（Ｒｋ）及びΓ（Ｒｋ）が、
0004629295.tif 000025
および
0004629295.tif 000026
であることを特徴とする請求項２または３に記載の方法。
【請求項５】
雑音のあるチャネルを介して受信されたターボ符号化された符号シーケンスＲ１Ｎを復号する装置において、
シーケンスＲ１Ｎの各受信されたシンボルＲｋについて複数の遷移確率マトリックスを決定する複数の計算機であって、前記複数の確率マトリックスがマトリックスΓ（Ｒｋ）を含む計算機と、
前記複数の計算機に接続され、前方回帰確率関数ベクトルα０の値を記憶するように構成されており、第１の乗算器によってリンクされている第１のシフト・レジスタと、
前記複数の計算機に接続され、後方回帰確率関数ベクトルβＮの値を記憶するように構成されており、第２の乗算器によってリンクされている第２のシフト・レジスタと、
各受信されたビットＲｋについてΓ（Ｒｋ）に従って前記前方回帰確率関数ベクトルαｋの値を決定しながら、前記複数の遷移確率マトリックスを並行に乗算するように構成された複数の第３の乗算器と、
完全な符号シーケンスＲ１Ｎを受け取った後に、各復号されたシンボルＲｋについて対数尤度比を決定する手段と
を備えた装置。
【請求項６】
前記前方回帰確率関数ベクトルα０は［１，０，０，…，０］に初期化され、前記後方回帰確率関数ベクトルβＮは［１，０，０，…，０］に初期化され、前記複数の遷移確率マトリックスはΓｉ（Ｒｋ）も含み、
前記マトリックス乗算の結果から前記後方回帰確率関数ベクトルβＮの値を決定する手段と、
前方および後方回帰確率関数ベクトルの前記値から前記対数尤度比を決定する手段と
をさらに備えたことを特徴とする請求項５に記載の装置。
【請求項７】
前記前方回帰確率関数ベクトルα０は［１，０，０，…，０］に初期化され、前記後方回帰確率関数ベクトルβＮは［１，０，０，…，０］に初期化され、前記複数の遷移確率マトリックスはΓ１（Ｒｋ）も含み、
前方および後方回帰確率関数ベクトルの前記値から前記対数尤度比を決定する手段
をさらに備えたことを特徴とする請求項５に記載の方法。
【請求項８】
前記Γｉ（Ｒｋ）及びΓ（Ｒｋ）が、
0004629295.tif 000027
および
0004629295.tif 000028
であることを特徴とする請求項６または７に記載の装置。
【請求項９】
前記第１のシフト・レジスタの長さおよび前記第３の乗算器の数はＮ＋１であることを特徴とする請求項５に記載の装置。
【請求項１０】
前記複数の対数尤度比を記憶するように構成された複数の記憶素子をさらに備えたことを特徴とする請求項５に記載の装置。
【請求項１１】
前記複数の計算機、前記第１および第２のシフト・レジスタおよび前記複数の第３の乗算器は、単一のＶＬＳＩハードウエア回路として構成されていることを特徴とする請求項５に記載の装置。
【請求項１２】
前記第１および第２のシフト・レジスタは、独立の読み出し書き込みアクセスを備えた２ポート・メモリであることを特徴とする請求項５に記載の装置。
【請求項１３】
前記対数尤度比は
0004629295.tif 000029
であることを特徴とする請求項５に記載の装置。
【発明の詳細な説明】
技術分野
本発明は、雑音のあるチャネルを介して受信されるデジタル信号用の誤り訂正復号に関し、特に、並行マトリックス処理に基づくターボ符号の最大帰納的（ＭＡＰ）復号方法に関する。
背景技術
移動無線通信においては、電子機器によって引き起こされるマルチパス・フェーディング、符号間干渉および熱雑音は、多くの送信エラーにつながる。チャネル符号化は、受信機で十分な品質の信号を得るための一般的方法である。チャネル符号化の最も普及した方法の大要は、１９８９年ＭｃＧｒａｗ−Ｈｉｌｌ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｅｄｉｔｉｏｎｓ刊行の「Ｄｉｇｉｔａｌ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ」においてＰｒｏａｋｉｓによって示されている。
近年、１９９３年のＩＥＥＥ通信に関する国際会議の議事録「Ｎｅａｒ  Ｓｈａｎｎｏｎ  Ｌｉｍｉｔ  Ｅｒｒｏｒ−Ｃｏｒｒｅｃｔｉｎｇ  Ｃｏｄｉｎｇ  ａｎｄ  Ｄｅｃｏｄｉｎｇ：Ｔｕｒｂｏ−Ｃｏｄｅｓ」１０６４〜１０７０ページにおいてＢｅｒｒｏｕ他によって最初に記述された、新たな区分の二進化並列連続回帰組織たたみ込み符号、いわゆるターボ符号が大きな注目を集めている。１９９５年４月１１日にＢｅｒｒｏｕに発行された米国特許第５，４０６，５７０号「Ｍｅｔｈｏｄ  ｆｏｒ  ａ  ｍａｘｉｍｕｍ  ｌｉｋｅｌｉｈｏｏｄ  ｄｅｃｏｄｉｎｇ  ｏｆ  ａ  ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｃｏｄｅ  ｗｉｔｈ  ｄｅｃｉｓｉｏｎ  ｗｅｉｇｈｔｉｎｇ，ａｎｄ  ｃｏｒｒｅｓｐｏｎｄｉｎｇ  ｄｅｃｏｄｅｒ」も参照されたい。ターボ符号は優れた誤り訂正能力を提供できるので、チャネル劣化に対処するために移動無線アプリケーションにとって非常に魅力的である。
ターボ符号の核となる手法の一つが、柔軟な構成のデコーダ情報交換による反復（ターボ）復号である。Ａｎｄｅｒｓｅｎによる１９９４年のデンマーク技術大学電気通信学部の報告書ＩＴ−１４６  ＩＳＳＮ  ０１０５−８５４「Ｔｈｅ  ＴＵＲＢＯ  Ｃｏｄｉｎｇ  Ｓｃｈｅｍｅ」、およびＲｏｂｅｒｔｓｏｎによる１９９４年のＩＥＥＥ  ＧＬＯＢＥＣＯＭ会議の議事録「Ｉｌｌｕｍｉｎａｔｉｎｇ  ｔｈｅ  Ｓｔｒｕｃｔｕｒｅ  ｏｆ  Ｃｏｄｅ  ａｎｄ  Ｄｅｃｏｄｅｒ  ｏｆ  Ｐａｒａｌｌｅｌ  Ｃｏｎｃａｔｅｎａｔｅｄ  Ｒｅｃｕｒｓｉｖｅ  Ｓｙｓｔｅｍａｔｉｃ（Ｔｕｒｂｏ）Ｃｏｄｅｓ」、１２９８〜１３０３ページを参照。最大帰納的（ＭＡＰ）な方法は、ターボ符号の反復復号を実施するために最善であることを証明している。
ＭＡＰ方法はＢＣＪＲ方法に基づいている。Ｂａｈｌ他による１９７４年３月のＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｔｈｅｏｐｙ「Ｏｐｔｉｍａｌ  Ｄｅｃｏｄｉｎｇ  ｏｆ  Ｌｉｎｅａｒ  Ｃｏｄｅｓ  ｆｏｒ  Ｍｉｎｉｍｉｚｉｎｇ  Ｓｙｍｂｏｌ  ｅｒｒｏｒ  Ｒａｔｅ」、２８４〜２８７ページを参照。ＭＡＰ方法は最適なシンボル毎の判断を行い、反復復号に必要な柔軟な信頼性情報も提供する。ターボ符号を、第３世代の広帯域ＤＳ−ＣＤＭＡ移動通信システムなどの広範なアプリケーションに使用することができるように、実用的なＭＡＰデコーダに対する需要が高まっている。
しかし、従来のＭＡＰ方法には深刻な欠点があり、それによって低コストなＶＬＳＩの実施を達成することが困難になっている。最も注目すべきなのは、ＭＡＰ方法によって必要とされる前方―後方反復のための複雑な演算が、復号の遅延や大量の記憶量を生じさせていることである。ほとんどの先行技術のＭＡＰデコーダは、たたみ込み符号デコーダ（たとえば、フランスのＣｏｍａｔｌａｓ，Ｃｈａｔｅａｕｂｏｕｒｇ刊「ＣＡＳ  ５０９３  Ｔｕｒｂｏ−Ｃｏｄｅ  Ｃｏｄｅｃ，ｄａｔａ  Ｓｈｅｅｔ」１９９４年８月、米国オハイオ州イーストレイクのＥｆｆｉｃｉｅｎｔ  Ｃｈａｎｎｅｌ  Ｃｏｄｉｎｇ  Ｉｎｃ．刊「ＥＣＣ  Ｔｕｒｂｏ  ｐｒｏｄｕｃｔ  ｃｏｄｅ  ｔｅｃｈｎｏｌｏｇｙ」１９９８年３月、およびオーストラリア、アデレードのＳｍａｌｌ  Ｗｏｒｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ刊「ＭＡＰ０４  ａｎｄ  ＭＡＰ０４Ａ  １６  Ｓｔａｔｅ  ＭＡＰ  Ｄｅｃｏｄｅｒｓ」１９９８年４月を参照）に比べてかなりの複雑さを必要としている。
したがって、大きなパフォーマンスの不利益を被ることなく実用的なＶＬＳＩの実施を可能にする、効率的で複雑性の低いＭＡＰデコーダ回路および方法を提供することが望まれている。
発明の開示
本発明は、ターボ符号のＭＡＰ復号のためのマトリックス変換方法および装置を提供する。本発明においては、連続的な復号手順が並行に遂行されて、一連の単純で規則的なマトリックス演算に首尾よく公式化される。これらの演算は、復号を実質的に加速して計算上の複雑性を低減させるものであり、目的が特定された並行処理ＶＬＳＩハードウエア・アーキテクチャにおける実施に特に適している。
発明されたマトリックスＭＡＰ復号の実施スキームは、シフト・レジスタを使用して、先行技術において知られているものに比べて、必要メモリを効果的に削減し、複雑なデータのアクセスおよび転送を単純化する。
より特定的には、本発明は雑音があるターボ符号化シーケンスＲ１Ｎ＝｛Ｒ１，Ｒ２，…，ＲＮ｝を復号するＭＡＰの速やかな実施のための方法および装置を提供する。一般的に、この方法は、α０＝［１，０，０，…，０］およびβＮ＝［１，１，…，１］をそれぞれ設定することにより、前方および後方回帰確率関数ベクトルα０およびβＮを初期化して始まる。次に、この方法は、受け取った各シーケンスＲｋについて遷移確率マトリクスΓ（Ｒｋ）およびΓｉ（Ｒｋ）を決定する。次に、ベクトルαｋの値がΓ（Ｒｋ）に応じて決定される。αｋが決定されると、この方法はΓ（Ｒｋ）およびΓ１（Ｒｋ）に関しての乗算を行う。
完全なシーケンスＲ１Ｎを受け取った後に、マトリックスＭＡＰ復号方法の一実施形態は、Γ（Ｒｋ）に関する上記マトリックス乗算の結果を利用することにより、ベクトルβｋＴ，ｋ＝１，２，…，Ｎ−１の全ての値を並行に決定し、最後に、全ての復号されたビット、すなわち、Λ（ｄｋ），ｋ＝１，２，…，Ｎの対数尤度比を並行に決定する。
代替的実施形態は、Γ（Ｒｋ）およびΓ１（Ｒｋ）に関する乗算結果を直接的に利用することにより、全ての復号されたビット、すなわち、Λ（ｄｋ），ｋ＝１，２，…，Ｎに関する最終的な対数尤度比を直接的に並行に決定する。
発明を実施するための最良の形態
図１は、本発明によるターボ・エンコーダ１１０、離散メモリレス・チャネル１２０、およびターボ・デコーダ１３０を含むシステム１００を示している。
ターボ・エンコーダ１１０は、２個の、通常は同一な回帰組織たたみ込み（ＲＳＣ）構成エンコーダの並行な連続によって構成されている。ＲＳＣエンコーダ間にはターボ内部インターリーバが設けられている。一般的に、ターボ・エンコーダ１１０を構成するために、より多くのＲＳＣエンコーダおよびインターリーバを採用することができる。
各ＲＳＣエンコーダは１／２の速度とメモリｖとを有する。長さＮの各入力シーケンス・ブロックｄ１Ｎ＝｛ｄ１，ｄ２，…，ｄＮ｝１０１（ここで、ｄｋ∈ＧＦ（２）である）について、２個のＲＳＣエンコーダは異なったバージョン上で動作して、パリティ・シーケンスＹ１＝｛Ｙ１１，Ｙ１２，…，Ｙ１Ｎ｝１０２およびＹ２＝｛Ｙ２１，Ｙ２２，…，Ｙ２Ｎ｝１０３をそれぞれ生成する。ターボ・エンコーダからの全体的な出力シーケンスＣ１Ｎ＝｛Ｃ１，Ｃ２，…，ＣＮ｝１０４は、３つの部分の合計、すなわち、Ｃ１Ｎ＝（Ｘ，Ｙ１，Ｙ２）であり、ここでＣｋ＝（Ｘｋ，Ｙ１ｋ，Ｙ２ｋ）はそれぞれ情報ビットＸｋおよびパリティ・ビットＹ１ｋ、Ｙ２ｋを意味する。
ターボ符号化された出力シーケンス１０４は、離散メモリレス・チャネル１２０上で送信される。上記のように、チャネル１２０は、多数のビット・エラーにつながる好ましくない環境に存在することが多い。ＶＬＳＩ回路を備えて実施できる効率的な方法によって、これらのエラーを検出して訂正することが我々の発明の目的である。
受け取り側では、受け取ったシーケンスはターボ・デコーダ１３０に適用される。このシーケンスはＲ１Ｎ＝｛Ｒ１，Ｒ２，…，ＲＮ｝１０５によって示され（ここで、Ｒ１Ｎ＝（ｘ，ｙ１，ｙ２）である）、Ｒｋ＝（ｘｋ，ｙ１ｋ，ｙ２ｋ）は時間ｋでのＣｋの雑音があるバージョンである。ターボ・デコーダ１３０は、我々の発明による２つの構成デコーダを含む。
デコーダはＶＬＳＩ回路によって実施されることが好ましい。インターリーバ／デインターリーバは、ターボ・エンコーダ１１０において使用されているのと同じインターリービング・スキームを備えて、デコーダ間に設けられている。ターボ・エンコーダ１１０において使用されているＲＳＣエンコーダの数を整合するために、付加的ＲＳＣ構成デコーダを使用することができる。デコーダ１３０の出力は、復号されたシンボルシーケンス・ブロック１０６である。
ターボ符号用ＭＡＰ方法の従来の式
時間ｋでのＲＳＣエンコーダの状態はＳｋである。Ｓｋは０からＭ−１（Ｍ＝２ｖ）の間にある整数値を取る。ｋ番目の情報ビットｄｋは、その状態をＳｋ−１からＳｋに変化させるために、エンコーダを作動する。これは、エンコーダ状態遷移と呼ばれている。従来のＭＡＰ方法においては、各復号されたビットｄｋに関する柔軟な出力は、対数尤度比（ＬＬＲ）から決定される。
0004629295.tif 000002
ここで、前方および後方回帰確率関数ベクトルαｋ（ｍ）およびβｋ（ｍ）の値は、分岐遷移確率γｉ（Ｒｋ，ｍ，ｍ’）からそれぞれ回帰的に得ることができる。
0004629295.tif 000003
および
0004629295.tif 000004
および
0004629295.tif 000005
は、チャネルおよびＲＳＣエンコーダの遷移確率に従って決定される。
ターボ符号用ＭＡＰ方法の単純化された式
本発明のマトリックスＭＡＰ復号方法および装置を説明する前に、まず、従来のＭＡＰ方法の式（２）および（３）を以下のように単純化する。
Ｂｅｒｒｏｕによって定義された節点確率λｉｋ（ｍ）を用いて、上記を見ると、
0004629295.tif 000006
であり、
0004629295.tif 000007
を得る。
Ｂｅｒｒｏｕとは対照的に、特に下記式を設定することにより、前方および後方回帰確率関数αｋ（ｍ）およびβｋ（ｍ）に関してこの新たな定義を用いる。
0004629295.tif 000008
新たに定義されたαｋ（ｍ）およびβｋ（ｍ）に基づいて、対数尤度比Λ（ｄｋ）を次のように求める。
0004629295.tif 000009
ここで、αｋ（ｍ）およびβｋ（ｍ）は、従来のＭＡＰ方法における（２）および（３）よりも単純な次の式を有する。
0004629295.tif 000010
ここで、
0004629295.tif 000011
単純化されたＭＡＰ復号方法のステップ
したがって、単純化されたＭＡＰ方法は以下の基本的ステップを遂行する。
１）まず、境界状態条件Ｓ０＝０に従って、前方回帰確率関数ベクトルα０（ｍ）を次のように初期化する。
0004629295.tif 000012
２）後方回帰確率関数ベクトルβＮ（ｍ）を次のように初期化する。
0004629295.tif 000013
３）受け取った各ビットＲｋについて、チャネルおよびエンコーダ格子の遷移確率に従ってγｉ（Ｒｋ，ｍ’，ｍ）を決定し、単純化された式（１０）に従ってαｋ（ｍ）を決定する。
４）完全なビットシーケンスＲ１Ｎを受け取った後に、単純化された式（１１）に従ってβｋ（ｍ）を決定する。
５）上記で定義したように式（９）を用いてＬＬＲ  Λ（ｄｋ）を決定する。
ＭＡＰ復号のマトリックス方法
式（４）によって定義されたγｉ（Ｒｋ、ｍ’、ｍ）は時間ｋでＭｘＭ個の可能な状況を有するので、これをＭｘＭマトリックスによって次のように表す。
0004629295.tif 000014
同様に、式（１２）のγｉ（Ｒｋ，ｍ’，ｍ）を他のＭｘＭマトリックスにより次のように表し、
0004629295.tif 000015
前方回帰確率関数ベクトルを次のように表し、
0004629295.tif 000016
後方回帰確率関数ベクトルを次のように表す。
0004629295.tif 000017
よって、式（１０）、（１１）および（９）はそれぞれ、
0004629295.tif 000018
となる。
式（１７）および（１８）から、
0004629295.tif 000019
が得られる。
したがって、αｋおよびβｋは、Γ（Ｒｋ）間の一連のマトリックス乗算によって決定することができる。この特徴に従って、マトリックスＭＡＰ方法１と呼ばれるターボ符号のマップ復号の第１のマトリックス方法を次のように案出した。
マトリックスＭＡＰ方法１
図２はマトリックスＭＡＰ方法１  ２００を次のように示している。
ステップ２０１において、以下の設定を行うことにより、前方および後方回帰確率関数ベクトルα０およびβＮを初期化する。
0004629295.tif 000020
このβＮの選択は、従来のＭＡＰ方法において使用されているβＮ（ｍ）＝１／Ｍ，∀ｍよりも単純であることに留意されたい。
ステップ２０２において受け取った各観察Ｒｋについて、ステップ２０３において、式（１３）および（１４）をそれぞれ用いて、３つの遷移確率マトリックスΓ０（Ｒｋ），Γ１（Ｒｋ）およびΓ（Ｒｋ）を決定する。次に、ステップ２０４において、式（１７）を用いてαｋを決定し、同時に、Γ（Ｒ１）Γ（Ｒ２）…Γ（Ｒｋ），Γ（Ｒ２）Γ（Ｒ３）…Γ（Ｒｋ），…，Γ（Ｒｋ−１）Γ（Ｒｋ）も並行に決定する。
完全なビット・シーケンスＲ１Ｎを受け取った後に、ステップ２０５において、式（２１）を用いて、ベクトルβｋＴ、ｋ＝１，２，…，Ｎ−１の値を並行に決定する。次に、ステップ２０６において、式（１９）を用いて、ＬＬＲ  Λ（ｄｋ）、ｋ＝１，２，…，Ｎを並行に決定する。
マトリックスＭＡＰ方法１の装置
図３は、マトリックスＭＡＰ方法１  ２００のハードウエア実装アーキテクチャ２１０を示している。
マトリックスＭＡＰデコーダ２１０は、図１のチャネル１２０からシーケンス１０５を受け取る。
デコーダ２１０は、上記のように３つの遷移確率マトリックスΓ０（Ｒｋ）、Γ１（Ｒｋ）およびΓ（Ｒｋ）を決定する３個の計算機２１１〜２１３を含む。
デコーダ２１０は、第１の乗算器？２４１によってリンクされた第１のシフト・レジスタ（Ｓ１）２４０と、第２の乗算器？２２１によってリンクされた第２のシフト・レジスタ（Ｓ２）２２０とを含む。シフト・レジスタ２４０はＮ＋１の長さを有し、マトリックスＭＡＰ方法１  ２００のステップ２０１で（α０，＊，…，＊）によって初期化される。第１のシフト・レジスタは、前方回帰確率関数ベクトルα０の値α０，α１，…，αＮを決定するために使用される。シフト・レジスタ２２０はＮ−１の長さを有し、
0004629295.tif 000021
を決定するために使用される。
シフト・レジスタは、２ポート・メモリまたは、独立の読み出しおよび書き込みを行うレジスタファイルを使用して実施することができる。
デコーダ２１０はＮ−１個の乗算器？２３０も含む。これらの乗算器は、完全なシーケンスＲ１Ｎ１０５を受け取った後に、βｋＴ，ｋ＝１，２，…，Ｎ−１を並行に決定するために使用される。
デコーダ２１０は、Ｎ個の記憶素子（Ｍ）２５０およびＮ個のＬＬＲ計算機２６０も含む。これらのＬＬＲ計算機は、Λ（ｄｋ），ｋ＝１，２，…，Ｎを並行に決定するために使用される。値Λ（ｄｋ），ｋ＝１，２，…，Ｎは、他の構成デコーダに送られる付帯的情報を抽出するために更に処理される前に、対応するＬＬＲ計算機２６０の下のＮ個の記憶素子（Ｍ）２５０に一時的に置くことができる。
代替的実施形態
Γｉ（Ｒｋ）、Γ（Ｒｋ）、αｋ、βｋおよび値Λ（ｄｋ）が、式（１３）〜（１６）および（１９）によってそれぞれ定義される場合には、
0004629295.tif 000022
上記式（２２）の分子に関する証明は、式（２０）および（２１）を（１９）に代入することにより、直接的に得られる。
（２２）の分母に関する証明は次のとおりである。
0004629295.tif 000023
式（２２）に従って、以下のとおり、マトリックスＭＡＰ方法２と呼ばれるターボ符号のＭＡＰ復号の第２のマトリックス方法を案出した。
マトリックスＭＡＰ方法２
図４はマトリックスＭＡＰ方法２  ３００を次のように示している。
ステップ３０１において、上記ステップ２０１と同様に前方および後方回帰確率関数ベクトルα０およびβＮを初期化する。
ステップ３０２において受け取った各観察Ｒｋについて、ステップ３０３において式（１３）および（１４）をそれぞれ用いて、２つの遷移確率マトリックスΓ１（Ｒｋ）およびΓ（Ｒｋ）を決定する。次に、ステップ３０４において、（２０）を用いて、αｋ（＝α０Γ（Ｒ１）Γ（Ｒ２）…Γ（Ｒｋ））を決定し、同時に、α０Γ１（Ｒ１）Γ（Ｒ２）…Γ（Ｒｋ）、α０Γ（Ｒ１）Γ１（Ｒ２）Γ（Ｒ３）…Γ（Ｒｋ），…，α０Γ（Ｒ１）…Γ（Ｒｋ−１）Γ１（Ｒｋ）を並行に決定する。
完全なビット・シーケンスＲ１Ｎを受け取った後に、ステップ３０５において、αＮβＮＴ（＝α０Γ（Ｒ１）Γ（Ｒ２）…Γ（ＲＮ）βＮＴ）およびα０Γ１（Ｒ１）Γ（Ｒ２）…Γ（ＲＮ）βＮＴ、α０Γ（Ｒ１）Γ１（Ｒ２）Γ（Ｒ３）…Γ（ＲＮ）βＮＴ，…，α０Γ（Ｒ１）…Γ（Ｒｋ−１）Γ１（ＲＮ）βＮＴを並行に決定する。次に、ステップ３０６において、式（２２）を用いて、ＬＬＲ  Λ（ｄｋ）、ｋ＝１，２，…，Ｎを並列に決定する。
マトリックスＭＡＰ方法２用の装置
図５は、マトリックスＭＡＰ方法２  ３００用のハードウエア実装アーキテクチャ３１０を示している。
マトリックスＭＡＰデコーダ３１０は、図１のチャネル１２０からシーケンス１０５を受け取る。
デコーダ３１０は、上記のように２つの遷移確率マトリックスΓ１（Ｒｋ）およびΓ（Ｒｋ）を決定する２個の計算機２１２および２１３を含む。
デコーダ３１０は、乗算器？３２１によってリンクされたシフト・レジスタ（Ｓ）３２０を含む。このシフト・レジスタはＮ＋１の長さを有し、マトリックスＭＡＰ方法２  ３００のステップ３０１で（α０，＊，…，＊）によって初期化される。これは、Γ（Ｒ１）Γ（Ｒ２）…Γ（Ｒｋ），Γ（Ｒ２）Γ（Ｒ３）…Γ（Ｒｋ），…，Γ（Ｒｋ−１）Γ（Ｒｋ）を並行に決定するために使用される。
デコーダ３１０はＮ＋１個の乗算器？３３０を含む。これらの乗算器は、完全なシーケンスＲ１Ｎを受け取った後に、αＮβＮＴ、α０Γ１（Ｒ１）Γ（Ｒ２）…Γ（ＲＮ）βＮＴ、α０Γ（Ｒ１）Γ１（Ｒ２）Γ（Ｒ３）．．．Γ（ＲＮ）βＮＴ，…，α０Γ（Ｒ１）…Γ（Ｒｋ−１）Γ１（ＲＮ）βＮＴを並行に決定する。
デコーダ３１０は、Ｎ＋１個の記憶素子（Ｍ）３４０およびＮ個のＬＬＲ計算機３５０も含む。これらのＬＬＲ計算機は、Λ（ｄｋ），ｋ＝１，２，…，Ｎを並行に決定するために使用される。これらのΛ（ｄｋ），ｋ＝１，２，…，Ｎは、他の構成デコーダに送られる付帯的情報を抽出するために更に処理される前に、対応するＬＬＲ計算機３５０の上のＮ個の記憶素子（Ｍ）３４０に一時的に置くことができる。
実際の実施においては、図３および図５に示したＬＬＲ（Λ）計算機ユニット２６０及び３６０の数は、入力シンボル速度に応じて変わることがあり得る。たとえば、より遅いシンボル速度については、削減された数のΛ個の計算機ユニットが使用され、各ユニットは複数Λ（ｄｋ）個の項を計算する。これは、シンボル速度よりも早いクロック速度でΛ個の計算機ユニットを操作することにより行われる。これは、電力消費および回路の複雑さの削減に帰結する。
利点
処理時間
本発明のマトリックスＭＡＰ復号方法の最大の利点は、復号演算を大幅に速くすることである。新たなマトリックス変換を使用することにより、本発明の方法は、ＭＡＰデコーダ構造を一連の単純で規則的なマトリックス公式に再構成する。その結果、マトリックス変換は、異なった行にそれらが対応する列を並列に掛けることができ、復号手順の大きな部分を並行に達成することができる。
たとえば、両方の方法において、αｋの決定はΓ（Ｒｋ）間における一連の乗算と並行して生ずる。完全なＲ１Ｎが受け取られた後に、全てのβｋＴ，ｋ＝１，２，…，Ｎ−１（方法１における）、およびΛ（ｄｋ），ｋ＝１，２，…，Ｎ（両方の方法における）は、並行に決定することができる。これは、従来のＭＡＰアルゴリズムにおいてβｋを決定するための、連続的後方回帰計算に必要な時間を削減する。
計算の複雑さ
下記の表Ａは、異なった方法によって必要とされる任意の時間ｋでの連続的Ｍ格子状態の全体にわたる前方―後方回帰計算における比較を列挙している。本発明によるマトリックスＭＡＰ復号方法の計算の複雑さは、それぞれ、従来のＭＡＰ方法の約半分（前方回帰について）および１／４（後方回帰について）である。更に、マトリックスＭＡＰ復号方法のかかる回帰計算において除算はない。除算は時間のかかる演算である。
0004629295.tif 000024
メモリ容量
従来のＭＡＰ方法は、通常ＭＮ（２Ｍ＋１）である、大量の記憶容量を必要とする。図３および図５に示したシフト・レジスタを使用して実装アーキテクチャを採用すると、本発明のマトリックスＭＡＰ方法は記憶容量を効果的に削減し、従来のＭＡＰ方法によって必要とされる複雑なデータへのアクセスやデータの転送を単純化する。
動作モード
別の主要な利点として、本発明のマトリックスＭＡＰ復号方法は、効率的なＶＬＳＩ回路を用いて実施できる。ＭｘＭマトリックスおよびＭ次元ベクトル上で機能するので、本発明の方法はＶＬＳＩ指向の方法であるとみなすことができる。本発明の方法における新たな並行演算は、目的が特定された並行処理ＶＬＳＩハードウエア回路におけるターボ符号のリアルタイムなＭＡＰ復号を提供する。
産業上の利用の可能性
説明した方法および装置は共に、無線信号伝搬の減損に対処し、低い誤り率の通信リンクを確実にするためにターボ符号が使用されるチャネル復号に一般的に適用可能である。特に、これらは、携帯電話、広帯域無線アクセス・システム、および移動計算装置などの無線通信システムにおいて使用することができる。これらは、ＡＤＳＬ、ＶＤＳＬ、ｘＤＳＬ、およびホーム・ネットワーク・システムなどの有線システムにも適用可能である。
本発明は上記の実施形態を例に挙げて説明してきたが、本発明の主旨および範囲内で他の様々な適合や修正を行えることを理解されたい。したがって、本発明の真の主旨および範囲内に入る全てのかかる変更や修正を包含することが、特許請求の範囲の目的である。
【図面の簡単な説明】
図１は、本発明によるターボ・デコーダを含む送信システムを示した図、
図２は、本発明による第１のマトリックスＭＡＰ復号方法の流れ図、
図３は、第１のＭＡＰ復号方法の回路図、
図４は、代替的実施形態による第２のマトリックスＭＡＰ復号方法の流れ図、
図５は、第２のマトリックスＭＡＰ復号方法の回路図である。
【図１】
0004629295.tif 000030
【図２】
0004629295.tif 000031
【図３】
0004629295.tif 000032
【図４】
0004629295.tif 000033
【図５】
0004629295.tif 000034