(57)【特許請求の範囲】
【請求項１】
多項式表現された情報記号のシーケンスを符号化する符号化方法であって、
前符号化されたシーケンスが約数多項式で割りきれることを保証する冗長記号を前記シーケンスに加える前符号化工程と、
前符号化された前記シーケンスをターボ符号器によりターボ符号化するターボ符号化工程と、
ターボ符号化された前記シーケンスを送信チャネル上で送信する送信工程とを備え、
前記約数多項式が、前記ターボ符号器によって使用される約数多項式の自明でない倍数であり、前記チャネル上での送信エラーを訂正する巡回符号の生成多項式で割りきれることを特徴とする符号化方法。
【請求項２】
前記ターボ符号化工程において、前記ターボ符号器によって使用される約数多項式による可除性を維持する少なくとも１つのインタリーバを使用することを特徴とする請求項１に記載の符号化方法。
【請求項３】
前記ターボ符号化工程において、ｅが２のべきであり、ｎがａ(ｘ)の形式的な次数であるとして、多項式関係ａ*(ｘ)＝ａ（ｘe）モジュロｘn＋１で定義される少なくとも１つのインタリーバを使用することを特徴とする請求項１に記載の符号化方法。
【請求項４】
前記前符号化工程において、ターボ復号器の約数多項式とターボ復号器の約数多項式で割りきれる形ｘN0＋１の最も小さい次数Ｎ0の多項式との積の約数である、最大で４に等しい重みのすべての多項式で前符号化されたシーケンスが割りきれることを保証する冗長記号が前記シーケンスに加えられることを特徴とする請求項１乃至３のいずれか一項に記載の符号化方法。
【請求項５】
前記前符号化工程において、重みが第１の値よりも小さく、次数が別の第２の値よりも小さく、定数項が０ではないターボ符号器の約数多項式の倍数である多項式で前符号化されたシーケンスが割りきれることを保証する冗長記号が前記シーケンスに加えられることを特徴とする請求項１乃至３のいずれか一項に記載の符号化方法。
【請求項６】
前記前符号化工程において、多項式が前記チャネル上の頻繁なエラーを表す多項式を割ることが決定され、前記除算の結果が除算の前のエラーを表す多項式より低い重みを有する多項式で、前符号化されたシーケンスが割りきれることを保証する冗長記号が前記シーケンスに加えられることを特徴とする請求項１乃至３のいずれか一項に記載の符号化方法。
【請求項７】
多項式表現された情報記号のシーケンスを符号化する符号化装置であって、
前符号化されたシーケンスが約数多項式で割りきれることを保証する冗長記号を前記シーケンスに加える前符号化手段と、
前符号化された前記シーケンスをターボ符号化するターボ符号化手段と、
ターボ符号化された前記シーケンスを送信チャネル上で送信する送信手段とを有し、
前記約数多項式が、前記ターボ符号化手段によって使用される約数多項式の自明でない倍数であり、前記チャネル上での送信エラーを訂正する巡回符号の生成多項式で割りきれることを特徴とする符号化装置。
【請求項８】
コンピュータに、請求項１乃至６のいずれか一項に記載の符号化方法を実行させるプログラムを記憶したことを特徴とするコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は符号化装置及び方法、復号装置及び方法、及びそれを用いたシステムに関する。
【０００２】
本発明は、物理量を表すデータの符号化、物理量を変調することができる符号の形でのデータの符号化、データ変調された信号の復号化、物理量を表すデータの復号化に等しくよく応用できる。これらのデータは、たとえば、画像、音声、コンピュータ・データ、電気量、または格納されたデータを表すことができる。
【０００３】
本発明は、畳込み符号の分野に応用できる。畳込み符号を使用して反復復号化を実行する場合、それらの符号の符号器が置換装置を含んでいる時には符号は大幅に改良される。この場合、それらは通常「ターボ符号」と呼ばれ、対応する反復復号器は「ターボ復号器」と呼ばれる。便宜上、
ターボ符号器によって実行される動作を「ターボ符号化」と呼び、この動作はいわゆる「ターボ符号化された」シーケンスを提供し、
復号器によって実行される動作を「ターボ復号化」と呼び、この動作はいわゆる「ターボ復号化された」シーケンスを提供するものとする。
【０００４】
これらの主題に関して、参考文献として役立つ文献は、１つは、１９９３年に「ＩＣＣ９３」会議の報告の１０６４ページから１０７０ページ発表された「Near Shannon limit error-correcting coding and decoding: turbocodes」と称するC. Berrou、A. Glavieux、P. Thitimajshimaの各氏による論文であり、もう１つは、１９９６年１０月にＩＥＥＥ  Transactions on Communication，volume COM-44の１２６１ページから１２７１ページに発表された「Near Optimum error-correcting coding and decoding: turbo-codes」と称するC. Berrou、A. Glavieuxの各氏による論文である。
【０００５】
しかし、置換装置の構成は完全に成熟したとは言い難い。これらの装置のいくつかは、次々に行に書き込まれ、次々に列から読み出される正方行列または長方形行列を使用している。これらの行列は一般に非常に大きく、たとえばサイズが２５６×２５６である。
【０００６】
効率が１／３に等しい並列なターボ符号器は、第１の符号器がｕに符号化されるべき記号のシーケンスからチェック・シーケンスを生成し、第２の符号器がシーケンスｕをインタリーブすること（または「置換すること」）によって得られるインタリーブされたシーケンスｕ*からチェック・シーケンスを生成するような、約数多項式を伴う畳込み組織的再帰的符号器の組として考えられる。ここでは、２つの符号器が同時に０に戻ることが、古典的な問題である。これを解決する１つの方法が発明者によって得られており、以下に概略を述べる。
【０００７】
明確にするために、ターボ符号器の２つの約数多項式が等しいと仮定し、ｇ(ｘ)と呼ばれるとする。ｍを多項式ｇ(ｘ)の次数とし、Ｎ０を、ｇ(ｘ)が多項式ｘN0＋１の約数となるような最も小さい整数とする。以下に記述するような理由により、多項式ｇ(ｘ)は１以上の次数の多項式の平方である約数を有しないように選択され、このため、Ｎ0は奇数となる。
【０００８】
また、ｎをＮ0の奇数倍：ｎ＝Ｍ Ｎ0 とする。
【０００９】
すると記号のシーケンス、ｕはバイナリの係数を伴う次数ｎ−ｍ−１の多項式表現ｕ(ｘ)を有し、この多項式ｕ(ｘ)は
ａ(ｘ)＝ｕ(ｘ)＋Σi=n-m to n-1ａiｘi
に前符号化される。
上式において、ｍ個のバイナリ記号ａiは、ａ(ｘ)がｇ(ｘ)の倍数であるように選択される。この前符号化とパラメータの選ばれた値の結果として、ａ(ｘ)がｇ(ｘ)の倍数である場合、ａ*(ｘ)＝ａ(ｘe)モジュロｘn＋１はまた、２のべきであるｅの任意の値について、ｇ(ｘ)の倍数となる。
【００１０】
この後の記述では、上記の置換とインタリーバ型は「ｘからｘe」と呼ばれる。
【００１１】
ここで一般に、ａ*(ｘ)はｇ(ｘ)の既約因数によってのみ割りきれることを保証されているので、ｇ(ｘ)は複数の因数を有しないと考えることが必要である。
【００１２】
ｕの符号化されたバージョンは次に、ｖ＝［ａ，ａｈ1／ｇ，ａ*ｈ2／ｇ］によって与えられ、上式ではすべての成分が多項式であり、特に、ａ*の定義と、ｅとして２のべきを選択したことによってａ*ｈ2／ｇも多項式である。
【００１３】
一般的なターボ符号では、復号化は本質的に反復的な手順である（この主題については１９９６年１０月ＩＥＥＥ  Trans. On Comm., volume COM-44の１２６１ページから１２７１ページで発表されたC. BerrouおよびA. Glavieuxの各氏による文献「Near Optimum error-correcting coding and decoding: turbocodes」を参照されたい）。
【００１４】
１９９５年９月、Canada、Whistler、ＩＥＥＥ  １９９５のInternational Symposium on Information Theoryの議事録、J. Andersenによる文献「Turbocoding for deep space applications」が知られており、この中ではＢＣＨ符号が見逃しエラーを訂正するために使用されている。けれどもこの解決法は見逃しエラー・ビット訂正の点からは限定された効果しか有しない。発明者はこの点が特に、「ｘからｘe」タイプのインタリーバを使用した場合に当てはまると気づいた。
【００１５】
本発明はこれらの欠点を矯正することを目的としている。この目的のために、本発明は、第１の態様によれば、多項式表現ｕ(ｘ)の情報記号のシーケンスを符号化する方法であって、
ターボ符号化動作と、
ターボ符号化動作から得られたシーケンスを送信チャネル上で送信する動作とを含み、
前記ターボ符号化動作の準備として、少なくとも１つの所定の多項式で前符号化されたシーケンスが割りきれることを保証する冗長記号を前記シーケンスｕ(ｘ)に加える少なくとも１つの前符号化動作を含み、この多項式が
前記ターボ符号器の符号器によって使用される約数多項式の自明ではない倍数であり、この符号器が前符号化されたシーケンスに作用する符号器であり、
前記チャネル上の送信エラーを表す多項式を割りきる高い確率を有する多項式の１つであることを特徴とする方法に関する。
【００１６】
本発明は、第２の態様によれば、復号化の方法であって、
少なくとも１つの所定の多項式と、
物理量を表す多項式表現ｕ(ｘ)の情報記号のシーケンスの符号化の結果となりうる受信されたシーケンスｒとを考慮し、符号化がターボ符号化を含み、シーケンスｕ(ｘ)を表すターボ符号化されるべきシーケンスａ(ｘ)が各所定の多項式で割りきれることを保証し、
受信されたシーケンスｒを推定シーケンスａ^にターボ復号化する動作と、
前記所定の多項式で推定シーケンスａ^の多項式表現ａ^(ｘ)を割った剰余を計算する少なくとも１つの動作とを含むことを特徴とする復号化の方法に関する。
【００１７】
発明者は、実際に、複号器の反復の結果が安定化するまでその反復が継続する限り、見逃しエラーが上記の場合（「ｘからｘe」）に特定の構造を有することに気づいた。この特定の構造によれば一般にそれらは１つまたは複数の所定の多項式で割りきれるようになる。
【００１８】
本発明は、上記の符号化スキーマによく適合するこれらの見逃しエラーの検出または訂正のための方法を提案することによってこの観察を利用することを目的とする。
【００１９】
本発明の規定により、ターボ復号化後の見逃しエラーの処理（検出または訂正）は、一方では受信されたシーケンスに対して実行でき、他方では除算動作から得られたシーケンスに対して実行できる。したがって本発明の方法の実施は特に簡単である。
【００２０】
たとえば、情報シーケンスｕ(ｘ)は多項式ａ(ｘ)＝ｕ(ｘ)＋Σi=n-m to n-1ａiｘiに前符号化され、それによってシーケンスａ(ｘ)は、ターボ符号の約数多項式の倍数だけではなく、他の所定の多項式、バイナリＢＣＨ符号のｑ(ｘ)によって示される生成多項式、またはより一般的には長さが少なくともｎに等しく、ｓ個のエラーを訂正するバイナリ巡回符号の倍数となる。ｓは、たとえば４に等しくなるように選択される。
【００２１】
この特定の前符号化は、ｇ(ｘ)の次数より高いｍという値を必要とする。その結果、固定化されたｎにおいては、情報を表す多項式ｕ(ｘ)の次数ｎ−ｍ−１は適当な形式に減じられる。これらの規定により、ターボ復号化の後の見逃しエラーの検出または訂正の処理は、ａ^によって示されるターボ復号化されたシーケンスについて実行できるばかりではなく、前記所定の多項式でａ^を割ることによって得られるシーケンスについても実行でき、毎回この除算は剰余なしで可能である。
【００２２】
前記シーケンスの各々は考慮中のＢＣＨ符号のワードに復号化された後、それに対応する所定の多項式が掛けられる。
【００２３】
このようにして、乗算動作によって得られたシーケンスは、送信される情報シーケンスの最終的な推定値を決定するために比較できる。
【００２４】
この方法の利点は、所定の多項式がよく選択された場合、ターボ復号化の後の見逃しエラーは１つまたは複数のこれらの所定の多項式で割りきれる場合が多いということ、また少なくともこれらの所定の多項式の１つについて、除算の後のエラーの重みは除算の前よりも小さいということである。
【００２５】
このようにしてターボ復号化の後の見逃しエラーは、最初はこれらのエラーが重すぎてＢＣＨ符号、より一般的には巡回符号によって訂正できないにもかかわらず訂正できる。
【００２６】
ここで本発明による復号化の方法は、従来技術の符号化方法に関連して動作でき、特に、前記ターボ符号器の約数多項式でターボ符号化されるべきシーケンスが割り切れることを保証するいわゆる「パディング」動作を使用する符号化方法と関連して動作できることに注意されたい。
【００２７】
特定の特徴によれば、推定シーケンスａ^の多項式表現の除算の剰余を計算する動作の間、所定の多項式は前記ターボ符号器の符号器の約数多項式であり、符号器はシーケンスａ(ｘ)に作用する。
【００２８】
これらの規定のおかげで、少なくとも部分的には、送信されるべき情報シーケンスに補助的な冗長性を加えることなく、本発明の効果が得られる。
【００２９】
他の特定の特徴によれば、上記に簡単に記述された復号化の方法はエラー検出動作を含み、そのエラー検出動作の間、
前記除算剰余計算動作からの剰余が０か０でないかを決定し、
この剰余が０でない場合はエラーが検出される。
【００３０】
これらの規定のおかげで、エラー検出は特に簡単である。
【００３１】
本発明は、第３の態様によれば、復号化装置であって、
Ａ／少なくとも１つの所定の多項式と、
物理量を表す多項式表現ｕ(ｘ)の情報記号のシーケンスの符号化の結果となりうる受信されたシーケンスｒとを考慮し、符号化はターボ符号化を含み、シーケンスｕ(ｘ)を表すターボ符号化されるべきシーケンスａ(ｘ)が各所定の多項式で割りきれることを保証するように構成され、
Ｂ／受信されたシーケンスｒを推定シーケンスａ^にターボ復号化するように構成され、
Ｃ／推定シーケンスａ^の多項式表現ａ^(ｘ)を各前記所定の多項式で割って剰余を計算するように構成された処理手段を有することを特徴とする装置に関する。
【００３２】
本発明は、第４の態様によれば、多項式表現ｕ(ｘ)の情報記号のシーケンスを符号化するための装置であって、
ターボ符号に適合した処理手段と、
ターボ符号化から得られたシーケンスを送信チャネル上で送信する手段とを有し、
処理手段が、ターボ符号化の準備として少なくとも１つの所定の多項式で前符号化されたシーケンスが割りきれることを保証する冗長記号を追加して前記シーケンスｕ(ｘ)を前符号化するように構成されることを特徴とし、この多項式は、
前記ターボ符号器の符号器によって使用される約数多項式の自明ではない倍数であり、この符号器は前符号化されたシーケンスに作用する符号器であり、
前記チャネル上の送信エラーを表す多項式を割りきる高い確率を有する多項式の１つであることを特徴とする装置に関する。
【００３３】
本発明はさらに、
コンピュータまたはコンピュータ・プログラムの命令を格納するマイクロプロセッサによって読取り可能な情報記録手段であって、上記に簡単に記述された方法で本発明の方法の実施を可能にすることを特徴とする情報記録手段と、
部分的にまたは完全に除去可能な、コンピュータまたはコンピュータ・プログラムの命令を格納するマイクロプロセッサによって読取り可能な情報記録手段であって、上記に簡単に記述された方法で本発明の方法の実施を可能にすることを特徴とする情報記録手段に関する。
【００３４】
本発明はまた、
上記に簡単に記述された復号化装置を有し、パケット送信プロトコルを使用するように構成された受信機を有する、送信されたデータを受信するための装置と、
上記に簡単に記述された復号化装置を有し、ＡＴＭ（非同期伝送モード）パケット伝送プロトコルを使用するように構成された受信機を有する、送信されたデータを受信するための装置と、
上記に簡単に記述された復号化装置を有し、ＥＴＨＥＲＮＥＴ（登録商標）タイプのネットワーク上でパケット送信プロトコルを使用するように構成された受信機を有する、送信されたデータを受信するための装置と、
上記に簡単に記述された復号化装置を有するネットワーク局と、
上記に簡単に記述された復号化装置を有し、ワイヤレス・チャネル上で送信される信号のための受信機を有する、送信されたデータを受信するための装置と、
上記に簡単に記述された符号化装置を有し、パケット送信プロトコルを使用するように構成された送信機を有するデータ送信装置と、
上記に簡単に記述された符号化装置を有し、ＡＴＭ（非同期伝送モード）パケット伝送プロトコルを使用するように構成された送信機を有するデータ送信装置と、
上記に簡単に記述された符号化装置を有し、ＥＴＨＥＲＮＥＴ（登録商標）タイプのネットワーク上でパケット送信プロトコルを使用するように構成された送信機を有するデータ送信装置と、
上記に簡単に記述された符号化装置を有し、ワイヤレス・チャネル上で送信される信号の送信機を有し、特に音声、画像、マルチメディア・タイプのデータを含む任意のタイプのデータを送信するための装置に関する。
【００３５】
この復号化装置、この符号化装置、これらの記憶手段、これらのデータ受信装置、これらのデータ送信装置とこのネットワークは、上記に簡単に記述された符号化の方法と同じ特定の特徴と同じ利点を有し、これらの特定の特徴とこれらの利点はここには繰り返さない。
【００３６】
本発明は、添付の図面に関連して行う以下の記述を読めばよりよく理解できよう。
【００３７】
続く記述では、第１のチェック・シーケンスは常にインタリーブされない情報シーケンスから得られるが、本発明の範囲は符号化から得られたすべてのシーケンスがインタリーブを受けている一般的な場合を含む。
【００３８】
本発明の特定の実施例を記述する前に、動作の数学的な表現を以下に記す。
【００３９】
例として、「ｘからｘe」タイプのターボ符号についてのエラー訂正を選択し、これは次のように指定される。
ｇ(ｘ)＝１＋ｘ＋ｘ4（これはＮ０＝１５となる）
ｈ1(ｘ)＝１＋ｘ＋ｘ2＋ｘ4
ｈ2(ｘ)＝１＋ｘ3＋ｘ4
Ｍ＝２７（これはｎ＝ＭＮ０＝４０５となる）
ｅ＝１５１
【００４０】
これらを慣例として、フレーム内に含まれるバイナリ記号の数は３×４０５＝１２１５に等しく、４０１バイナリ記号ｕi1の符号化から得られた各フレームは情報記号と呼ばれる。
【００４１】
この例は７までの回帰的な復号化ステップの数について、付加白色ガウス雑音（「ＡＷＧＮ」）を伴うチャネルと共にシミュレートされる。このシミュレーションは、３０のエラーのあるフレームが得られるまで実行される。これらの７つの反復の後、フレーム・エラーの可能性は約３×１０-4であった。次に、これらのエラーのあるフレームは再解析され、復号器が４０までの反復ステップを実施することを可能にする。これらの条件の元で、これらのフレームすべてについて、復号化の決定が常に安定化によって終わることが分かった。
【００４２】
これについて、９つのフレームだけが８以上の反復を必要とし、安定化するのが最も遅いフレームは１８の反復を必要とする。安定化の後、テストされた１００９３９のうち１５のフレームがエラーを含んでいた。
【００４３】
次にこれらのエラーの特徴を説明する。そのため、ａ(ｘ)を情報項目ｕ(ｘ)の前符号化から得られたシーケンスとする。これはａ(ｘ)＝Σi=0 to 404ａiｘiの形である。また、ａ^(ｘ)を受信されたフレームの復号化の後得られたａ(ｘ)の推定値とする。これはａ^(ｘ)＝Σi=0 to 404ａ^iｘiの形である。
【００４４】
最後に、ｙ(ｘ)＝Σi=0 to 404ｙiｘiをエラーｙiのシーケンスとして定義し、これらの各々はａ(ｘ)とａ^(ｘ)のモジュロ２での和として定義する。ｙi＝ａi＋ａ^i、ｙ(ｘ)＝ａ(ｘ)＋ａ^(ｘ)。したがって＋はモジュロ２加算を示す。
【００４５】
このシーケンスｙ(ｘ)はａ(ｘ)の送信に対応するエラー・シーケンス、受信されたシーケンスのａ(ｘ)のａ^(ｘ)推定値への復号化と呼ばれる。
【００４６】
表１に、上に記述され、部分的に因数分解された形の１５の見逃しエラーのリストを図示する。
【００４７】
表１のデータの意味は次の通りである。第１の列では、１５の見逃しエラーの１から１５までの任意の指数ｉがある。第２の列では、エラーｙ(ｘ)の１つの可能性のある因数分解が与えられ、(１＋ｘa＋ｘb)(ｘc＋ｘd＋ｘe＋ｘf)が（０、ａ、ｂ）（ｃ、ｄ、ｅ、ｆ）によって表されるという慣例を使用している。このため、たとえば、表記（０、２、８）（５、２３３、２４１、３００）は、前符号化されたシーケンスａ(ｘ)の推定値ａ^(ｘ)＝ａ(ｘ)＋ｙ(ｘ)に影響を与えるエラーｙ(ｘ)＝(１＋ｘ2＋ｘ8)(ｘ5＋ｘ233＋ｘ241＋ｘ300)を示す。
【００４８】
第３の列では、ｙ(ｘ)のハミング重みＷ（ｙ）が与えられ、第４の列では、*で指数づけられたｙ(ｘ)の因数のハミング重みＷ*が与えられているが、これはこのハミング重みがｙのハミング重みより小さい場合だけである。
【表１】
0004392924.tif 000002
【００４９】
この表１で、重みＷ*は１５個の見逃しエラーのうちの１２個に対して４に等しいかそれより小さく、ケース１４は、重みＷ*が重みＷ(ｙ)より小さい他の１１のケースとは少し異なる因数分解を有することが分かるであろう。
【００５０】
上記の要素を基礎として、発明者は本発明の原理である連結符号化方法を提案する。
【００５１】
情報シーケンスの形式はまず３６１ビットに削減される。
ｕ(ｘ)＝Σi=0 to 360ｕiｘi
また、ａ(ｘ)を次式の倍数にするために、ｕ(ｘ)をａ(ｘ)＝ｕ(ｘ)＋Σi=361 to 404ａiｘiへ前符号化することが実行される。
(１＋ｘ＋ｘ4)2ｍ1(ｘ)ｍ3(ｘ)ｍ5(ｘ)ｍ7(ｘ)
ｍ1(ｘ)＝１＋ｘ4＋ｘ9
ｍ3(ｘ)＝１＋ｘ3＋ｘ4＋ｘ6＋ｘ9
ｍ5(ｘ)＝１＋ｘ4＋ｘ5＋ｘ8＋ｘ9
ｍ7(ｘ)＝１＋ｘ3＋ｘ4＋ｘ7＋ｘ9
【００５２】
より一般的には、前符号化によって多項式ａ(ｘ)はｇ(ｘ)の自明でない倍数になり、自明でないとは、多項式ａ(ｘ)がｇ(ｘ)とは異なる多項式ｇ(ｘ)の倍数であるということである。
【００５３】
これらの４つの多項式の積は、４つのエラーを修正する長さが５１１で大きさが４７５のＢＣＨ符号の生成多項式であることに注意されたい。
【００５４】
受信されたシーケンスのターボ符号化は、シーケンスａ(ｘ)の推定値ａ^0(ｘ)を生成するために通常の方法で実行される。この問題については、理想的な復号化手順ではこの時、推定値ａ^0(ｘ)を安定化するために十分な反復を実行することが必要であることに注意されたい。
【００５５】
次に次の除算が正しく実行された場合、次のように定義され、
ａ^1(ｘ)＝ａ^0(ｘ)／(１＋ｘ＋ｘ4)
ａ^2(ｘ)＝ａ^0(ｘ)／(１＋ｘ＋ｘ4)2
また、これらが存在した場合、ａ^0(ｘ)、ａ^1(ｘ)、ａ^2(ｘ)によって表されるワードが、上記の省略されたＢＣＨ符号の受信されたワードとして復号化される。ｂ0(ｘ)、ｂ1(ｘ)、ｂ2(ｘ)を、ａ^0(ｘ)、ａ^1(ｘ)、ａ^2(ｘ)に対応する復号化されたワードと仮定する。
【００５６】
すると次のように定義される。
ａ~0(ｘ)＝ｂ0(ｘ)
ａ~1(ｘ)＝(１＋ｘ＋ｘ4）ｂ1(ｘ)
ａ~2(ｘ)＝(１＋ｘ＋ｘ4）2ｂ2(ｘ)
【００５７】
これらの３つのシーケンスのａ~i(ｘ)はそれぞれ、ターボ符号器によってｔ0、ｔ1、ｔ2に符号化され、ａ(ｘ)は、実際に受信されたシーケンスに基づいて、その符号化されたバージョンｔiの可能性が最も高いａ~i(ｘ)と推定される。
【００５８】
より一般的には、本発明を実施するには、０でない独立項を持ち、複数の因数を持たないバイナリの係数を伴う多項式ｇ(ｘ)が選択され、ｇ(ｘ)が（ｘN0＋１）を割るような最も小さい整数Ｎ0が計算され、Ｎ0の奇数倍ｎ、ｎ＝Ｍ  Ｎ0が選択される。
【００５９】
ｑ(ｘ)を、長さがｎでｓエラーを修正する短縮された巡回バイナリ符号の生成多項式とし、ｐ(ｘ)を、それ自体がｇ(ｘ)の倍数である重みが少ない１つまたは複数の多項式で割りきれるｇ(ｘ)の倍数とする。γ(ｘ)＝ｑ(ｘ)ｐ(ｘ)とする。
【００６０】
上記に説明された組では、ｇ(ｘ)＝１＋ｘ＋ｘ4、ｎ＝４０５、ｓ＝４、ｐ(ｘ)＝(ｇ(ｘ))2と、ｑ(ｘ)＝ｍ1(ｘ)ｍ3(ｘ)ｍ5(ｘ)ｍ7(ｘ)が選択された。
【００６１】
γ(ｘ)の次数はｄによって示され、この整数ｄは、符号の全体的な効率を大幅に削減しないように厳密にｎより小さく、一般的にはｎよりはるかに小さくなければならない。この情報は次に、形式的な（ｆｏｒｍａｌ）次数ｎ−ｄ−１の多項式ｕ(ｘ)のシーケンスの形で表される。
【００６２】
このように各基本的な情報「ブロック」は、ｕ(ｘ)＝Σi=0 to n-d-1ｕiｘiによって表され、ｎ−ｄ情報ビットｕiを含む。
【００６３】
次に、ｕ(ｘ)は、ａ(ｘ)をγ(ｘ)で割りきれるようにするために、ｄバイナリ記号をそこに加えることによって、ａ(ｘ)＝ｕ(ｘ)＋Σi=n-d to n-1ａiｘiの形に拡張される。
【００６４】
γ(ｘ)の次数はｄに等しいので、ｄバイナリ記号ａiはａ(ｘ)をγ(ｘ)で割りきれるようにするために一意的に選択することができる。
【００６５】
このｕ(ｘ)からａ(ｘ)への前符号化は、ｖ＝［ｖ1、ｖ2、ｖ3］の送信を可能にし、この多項式表現は、［ａ(ｘ)、ａ(ｘ)ｈ1(ｘ)／ｇ(ｘ)、ａ（１ｘe）ｈ2(ｘ)／ｇ(ｘ)］で、上式でｅはインタリーバを指定し、２のべきと等しいと仮定されており、上式ではすべての多項式乗算動作はモジュロｘn−１で実行される。
【００６６】
ｒをｖの送信に対応する受信されたシーケンスとする。この復号化は次のように実行される。
【００６７】
まず第１に、ａ(ｘ)の推定値ａ^(ｘ)は通常のターボ復号化の方法によってｒから得られる。
【００６８】
次にＰ０＝｛ｐ1(ｘ)、．．．、ｐv(ｘ)｝を、ｇ(ｘ)の倍数であり、上記のｐ(ｘ)の約数である一組の（いわゆる重みの少ない）多項式であるとし、Ｐを多項式ｐ0(ｘ)＝１によって補われるＰ０の多項式の組とする。
【００６９】
ｌを０とｖの間の整数ｉの組とし、ａ^(ｘ)がｐi(ｘ)によって割りきれるとする。
【００７０】
ｌの中の任意のｉについて、多項式ｂi(ｘ)＝ａ^(ｘ)／ｐi(ｘ)がまず構成され、ｂi(ｘ)によって表されるワードは、長さがｎで生成多項式ｑ(ｘ)の短縮巡回符号のワードの送信の後に受信されたワードとして復号化される。
【００７１】
ｂic(ｘ)をｂi(ｘ)のこのように修正されたバージョンとし、ａ~i(ｘ)＝ｐi(ｘ)ｂic(ｘ)とする。
【００７２】
ｉ∈ｌを伴う多項式ａ~i(ｘ)がγ(ｘ)の倍数ではない場合、復号化エラーが検出される。ｉ∈ｌを伴う多項式ａ~i(ｘ)がγ(ｘ)の倍数である場合、任意の多項式ａi(ｘ)について次の符号化されたシーケンスが構成される。
ｔi＝［ａ~i(ｘ)，ａ~i(ｘ)ｈ1(ｘ)／ｇ(ｘ)，ａ~i（ｘ8）ｈ2(ｘ)／ｇ(ｘ)］
【００７３】
シーケンスａ(ｘ)の最終的な推定値は次にシーケンスａ~i(ｘ)となり、これについて、ｒの受信を考えればｔiの送信の可能性が最も高い。他の推定は、ｔiが送信された時にｒを受信する可能性を最大にするシーケンスｔiを選択することからなる。
【００７４】
上記の記述は、ｇ(ｘ)による可除性を保持する任意のインタリーバに容易に一般化され、また、ａ(ｘ)がｇ(ｘ)によって割りきれる場合、ａ(ｘ)のインタリーブの後得られる多項式が別の多項式ｇ’(ｘ)によって割りきれることを保証する任意のインタリーバにも容易に一般化される。
【００７５】
発明者は、ｇ’(ｘ)がｇ(ｘ)に等しい時とｇ’(ｘ)がｇ(ｘ)とは異なる時の両方の場合にこのようなインタリーバが可能である条件を決定した。ｇ(ｘ)＝ｇ’(ｘ)の場合については、１９９８年カリフォルニア州、San Diegoで行われたWinter 1998 Information Theory Workshopの報告におけるHATTORI, J. MURAYAMA, R. McELIECE 各氏による「Pseudorandom and Self-Terminating Interleavers for Turbo Codes」を参照されたい。
【００７６】
多項式γ(ｘ)の選択は、次の注意を使用して行うことができる。
【００７７】
Ｎ0をｇ(ｘ)がｘN0＋１の約数になるような最も小さな整数とする。この場合、γ(ｘ)は、長さｎでｔエラーを訂正する短縮ＢＣＨ符号の生成多項式を掛けた（ｘN0＋１）ｇ(ｘ)の約数として選択できる。（ｘN0＋１）ｇ(ｘ)の約数と値ｔの選択は、シミュレーションに基づいて当業者によって行われる。
【００７８】
他の選択は、シミュレーションに基づき、この除算から得られた多項式が除算前のエラーを表す多項式より少ない重みを有するエラーを表す多項式の約数として現れることの多い多項式のリストを構成することである。多項式γ(ｘ)はこのリストの中で多項式の最小公倍数として構成される。
【００７９】
表１に関連して記述された状況では、選択γ(ｘ)＝ｇ(ｘ)(１＋ｘ)2(１＋ｘ＋ｘ3)ｍ1(ｘ)ｍ3(ｘ)ｍ5(ｘ)は、１５エラーのうち８、すなわち、行１、２、３、４、５、８、１０、１４上で言及されるエラーの訂正を可能にする。同様に、選択γ(ｘ)＝ｇ(ｘ) 2(１＋ｘ)2(１＋ｘ＋ｘ3)ｍ1(ｘ)ｍ3(ｘ)ｍ5(ｘ)ｍ7(ｘ)は、さらに、行６、７、１１、１３で言及されるエラーの訂正を可能にし、したがって訂正されないエラーは行９、１２、１５内に残るのみとなる。
【００８０】
第３の選択は、ｐ(ｘ)を、所定の値より低い重みのｇ(ｘ)の倍数であり、次数が他の所定の値より小さく、定数項が０以外である多項式の最小公倍数として構築することである。
【００８１】
γ(ｘ)の選択は、チャネルおよび／または、その信号／ノイズ比に依存する。γ(ｘ)の効果的な選択は、これを、各々がチャネルまたは信号／ノイズ比に構成された複数の多くのγi(ｘ)の最小公倍数として定義することからなる。
【００８２】
上記の技術的な考慮は符号の効率とは独立しており、その結果、効率が１／３より小さいかまたは同等の畳込みターボ符号と、効率が１／３より大きい畳込みターボ符号のどちらにも等しく適用される。
【００８３】
次に本発明の特定の実施例の記述を、図１から１０に関連して続ける。この記述では、使用される送信チャネルは、半二重タイプである。しかし、当業者であれば容易に、全二重チャネルの場合にも本発明を実施できるであろう。
【００８４】
図１は、ネットワーク局またはコンピュータ符号化局の構成を概念的に構成図の形で示す。この局はキーボード１１１、画面１０９、外部情報源１１０、無線送信機１０６を有し、共に処理カード１０１の入出力ポート１０３に接続されている。
【００８５】
処理カード１０１は、アドレスとデータ・バス１０２によって相互接続されている
中央処理装置１００と、
ランダム・アクセス・メモリＲＡＭ１０４と、
読取り専用メモリＲＯＭ１０５と、
入出力ポート１０３とを有する。
【００８６】
図１に図示された要素の各々はマイクロコンピュータ、送信システム、より一般的には情報処理システムの当業者に周知であろう。したがってこれらの共通要素はここでは記述しない。しかし、
情報源１１０は、たとえば、インタフェース周辺機器、センサ、復調器、外部メモリまたは別の情報処理システム（図示せず）であり、好ましくは、音声、サービス・メッセージまたはマルチメディア・データをバイナリ・データのシーケンスの形で表現する信号のシーケンスを提供するように構成されており、
無線送信機１０６は、ワイヤレス・チャネル上でパケット送信プロトコルを使用し、これらのパケットをそのチャネル上で送信するように構成されていることに注意されたい。
【００８７】
さらに、記述に使用されている「レジスタ」という言葉は、メモリ１０４と１０５の各々において、小容量のメモリ領域（数バイナリのデータ項目）と、大容量のメモリ領域（完全なプログラムの記憶を可能にする）の両方を示すことにも注意されたい。
【００８８】
ランダム・アクセス・メモリ１０４は、データ、変数、中間の処理結果を、この記述の中では、値を格納するデータと同じ名前を有するメモリ・レジスタ内に格納する。ランダム・アクセス・メモリ１０４は特に、
情報源１１０から来るバイナリ・データ項目が、バス１０２上に到着する順番でシーケンスｕの形で格納され、次に補足されてシーケンスａを形成するレジスタ「ｐｒｉｍａｒｙ＿ｄａｔａ」と、
レジスタ「ｐｒｉｍａｒｙ＿ｄａｔａ」内のバイナリ・データ項目の数に対応する整数を格納するレジスタ「ｎｏ＿ｏｆ＿ｄａｔａ＿ｉｔｅｍｓ」と、
図５に関連して記述されたように、置換されたバイナリ・データ項目がシーケンスａ＊の形でバス１０２上に到着した順序で格納されるレジスタ「ｐｅｒｍｕｔｅｄ＿ｄａｔａ」と、
処理の間にシーケンスのバイナリ・データ項目が中央装置１００によって決定された順番で格納されるレジスタ「ａ、ｂ、ｃ」と、
送信されるべきシーケンスが格納されるレジスタ「ｖ1、ｖ2、ｖ3」を有する。
【００８９】
読取り専用メモリ１０５は、便宜上、それらが格納するデータと同じ名前を有するレジスタにデータを格納するように構成されている、すなわち、
レジスタ「ｐｒｏｇｒａｍ」内には中央処理装置１００の動作プログラム、
レジスタ「ｇ」内にはシーケンスｇ、
レジスタ「ｐ」内にはシーケンスｐ、
レジスタ「ｄｅｇｒｅｅｓ」内には、ｇ(ｘ)の次数ｍと、γ(ｘ)の次数ｄ、
レジスタ「ｍ1、ｍ3、ｍ5、ｍ7」内にはシーケンスｍ1、ｍ3、ｍ5、ｍ7
レジスタ「ｈ1」内にはシーケンスｈ1、
レジスタ「ｈ2」内にはシーケンスｈ2、
レジスタ「Ｎ０」内にはＮ０の値、
レジスタ「Ｍ」内にはＭの値、および
レジスタ「インタリーバ」内にはインタリーバを定義する表を格納する。
【００９０】
中央処理装置１００は、図５に示された流れ図を実施するように構成されている。
【００９１】
変形例として、中央処理装置１００の動作プログラムの一部または全部を、フロッピ・ディスク、ＣＤ−ＲＯＭ、ＤＶＤ、メモリ・カードまたは他の任意の取外し可能な記憶媒体に格納する場合もある。
【００９２】
図２からわかるように、本発明による、並列畳込みターボ符号に対応するターボ符号化装置は本質的に、
情報源１１０が送信されるべき、または「符号化」されるべきバイナリ記号のシーケンスｕを提供する、符号化されるべき記号の入力２０１と、
シーケンスｕから、多項式の表現ａ(ｘ)がγ(ｘ)＝(ｇ(ｘ))2ｍ1(ｘ)ｍ3(ｘ)ｍ5(ｘ)ｍ7(ｘ)で割りきれるシーケンスａを提供する前符号器２００と、
シーケンスａから、シーケンスａを表現する記号の２つのシーケンスｖ1とｖ2を提供する第１の符号器２０２と、
シーケンスａから、異なる順序ではあるが記号がシーケンスａの記号であるインタリーブされたシーケンスａ*を提供するインタリーバ２０３と、
インタリーブされたシーケンスａ*から、シーケンスａを表す第３のシーケンスｖ3を提供する第２の符号器２０４とを有する。
【００９３】
３つのシーケンスｖ1、ｖ2、ｖ3は、次に復号化されるために送信される。
【００９４】
この後の記述は、好ましくは「ｘからｘe」型のインタリーバに関連するが、本発明はこのタイプのインタリーバだけに限定されるものではなく、より一般的に、ターボ符号に使用されるすべてのインタリーバに関連し、好ましくは、
１／多項式ｇi(ｘ)の倍数である多項式表現ａi(ｘ)と、
整数Ｍと整数Ｎ０の積に等しいバイナリ・データ項目の数で、多項式ｘN0＋１が各約数多項式ｇi(ｘ)によって割りきれるような最も小さい整数を有するシーケンスａiから、
２／いわゆる「置換された」シーケンスａij*（ｉ＝１、．．．、Ｋ；ｊ＝１、．．．、Ｍ１）を生成し、各シーケンスａij*は、
対応するシーケンスａiの置換によって得られ、前記置換は、各シーケンスａiのバイナリ・データ項目が、Ｎ０列とＭ行を持つ表に行ごとに書き込まれる表現において、いわゆる基本的な置換の任意の数の結果であり、その各々が、
長さがＮ０で生成多項式ｇi(ｘ)の巡回符号を、ｇi(ｘ)に等しい生成多項式ｇij(ｘ)の同等の巡回符号に変形するプロパティを有するか、またはａiを表す表のＮ０列上の置換によって動作するか、
前記表の列の記号の任意の置換であるかのいずれかであり、また、
その結果、多項式積ｃij(ｘ)ｇij(ｘ)に等しい多項式表現ａij*(ｘ)を有し、対応するシーケンスａiとは異なる少なくとも１つの置換されたシーケンスａij*を有し、
３／したがって、基本的な符号器は、多項式表現がｊ＝１、．．．、Ｍ１についてはΣｆij(ｘ)ｃij(ｘ)に等しい冗長シーケンスを生成し、各多項式ｆij(ｘ)は、同じ指数ｉとｊを伴う多項式ｇij(ｘ)の次数以下の次数の多項式である。
【００９５】
これらのインタリーバは「可除性を維持する」と呼ばれる。
【００９６】
第１の符号器２０２はシステマティックな符号器であり、すなわち、シーケンスｖ1は、シーケンスａと等しい。
【００９７】
最後に、ターボ符号は、２つの基本的な符号器の各々内で、約数多項式ｇ(ｘ)が一方では、ｇ(ｘ)が多項式ｘN0＋１の約数であるようにＮ0が最も小さい整数であることを意味する「周期Ｎ0」であり、他方では、次数ｍである約数多項式ｇ(ｘ)を使用する。
【００９８】
図３は概念的に、ネットワーク局またはコンピュータ符号化局の構成を構成図の形で示す。この局はキーボード３１１、画面３０９、外部情報宛先３１０と無線受信機３０６を有し、共に処理カード３０１の入出力ポート３０３に接続されている。
【００９９】
処理カード３０１は、アドレスとデータ・バス３０２によって相互接続されている
中央処理装置３００と、
ランダム・アクセス・メモリＲＡＭ３０４と、
読取り専用メモリＲＯＭ３０５と、
入出力ポート３０３とを有する。
【０１００】
図３に図示された要素の各々はマイクロコンピュータ、送信システム、より一般的には情報処理システムの当業者に周知であろう。したがってこれらの共通要素はここでは記述しない。しかし、
情報宛先３１０は、たとえば、インタフェース周辺機器、ディスプレイ、変調器、外部メモリまたは別の情報処理システム（図示せず）であり、好ましくは、音声、サービス・メッセージまたはマルチメディア・データをバイナリ・データのシーケンスの形で表現する信号のシーケンスを受信するように構成されており、
無線受信機３０６は、ワイヤレス・チャネル上でパケット送信プロトコルを使用し、これらのパケットをそのチャネル上で受信するように構成されていることに注意されたい。
【０１０１】
さらに、記述に使用されている「レジスタ」という言葉は、メモリ３０４と３０５の各々において、小容量のメモリ領域（数バイナリのデータ項目）と、大容量のメモリ領域（完全なプログラムの記憶を可能にする）の両方を示すことにも注意されたい。
【０１０２】
ランダム・アクセス・メモリ３０４は、データ、変数、中間の処理結果を、この記述の中では、値を格納するデータと同じ名前を有するメモリ・レジスタ内に格納する。ランダム・アクセス・メモリ３０４は特に、
送信チャネルから来るバイナリ・データ項目が、バス３０２上に到着する順番でシーケンスの形で格納されるレジスタ「ｒｅｃｅｉｖｅｄ＿ｄａｔａ」と
その意味が図６に関して以下に記述されるシーケンスが格納されるレジスタ「ａ^、ａ~i、ａ^i、ａ、ｂi、ｔi」とを有する。
【０１０３】
読取り専用メモリ３０５は、便宜上、それらが格納するデータと同じ名前を有するレジスタに以下のものを格納するように構成されている。すなわち
レジスタ「ｐｒｏｇｒａｍ」内には中央処理装置３００の動作プログラム、
レジスタ「ｍ1、ｍ3、ｍ5、ｍ7」内にはシーケンスｍ1、ｍ3、ｍ5、ｍ7
レジスタ「ｄｅｇｒｅｅｓ」内には、ｇ(ｘ)の次数ｍと、γ(ｘ)の次数ｄ、
レジスタ「ｈ1」内にはシーケンスｈ1、
その意味が図６に関して以下に記述されるシーケンスｐiが格納されるレジスタ「ｐi」、
レジスタ「ｈ2」内にはシーケンスｈ2、
レジスタ「Ｎ０」内にはＮ０の値、
レジスタ「Ｍ」内にはＭの値、および
レジスタ「ｉｎｔｅｒｌｅａｖｅｒ」内にはインタリーバを定義する表を格納する。
【０１０４】
中央処理装置３００は、図６に示された流れ図を実施するように構成されている。
【０１０５】
変形例として、中央処理装置３００の動作プログラムの一部または全部を、フロッピ・ディスク、ＣＤ−ＲＯＭ、ＤＶＤ、メモリ・カードまたは他の任意の取外し可能な記憶媒体に格納する場合もある。
【０１０６】
図４から分かるように、復号化装置は本質的に、
ｖ1、ｖ2、ｖ3を表すシーケンスの３つの入力４０１、４０２、４０３（これは便宜上同じくｖ1、ｖ2、ｖ3で示され、これらの３つのシーケンスからなる受信されたシーケンスはｒによって示される）と、
符号器２０２（図２）に対応し、シーケンスｖ1、ｖ2と、後に記述される外因性情報シーケンスｗ4を受信し、帰納的推定シーケンスｗ1を提供する第１の「ソフトな入出力」復号器４０４と、
符号器に使用されたインタリーバ２０３に等しく、シーケンスｗ1を受信し、これをシーケンスｗ2にインタリーブするインタリーバ４０５と、
符号器２０４に対応し、シーケンスｗ1、ｖ3を受信し、一方では外因性情報シーケンスｗ3を提供し、他方では推定シーケンスａ'を提供する第２のソフトな入出力復号器４０６と、
インタリーバ４０５の逆であり、出力４０９上でシーケンスａ'を受信し推定シーケンスａ^を提供する逆インタリーバ（ｄｅ−ｉｎｔｅｒｌｅａｖｅｒ）４０８と、
インタリーバ４０５の逆であり、シーケンスｗ3を受信しシーケンスｗ4を提供する逆インタリーバ（ｄｅ−ｉｎｔｅｒｌｅａｖｅｒ）４０７と、
復号器４０４の出力において推定シーケンスａ^の出力４１０とからなる。
【０１０７】
推定シーケンスａ^は、所定の数の反復の後だけに考慮される（上記に引用された「Near Shannon limit error correcting coding and decoding: turbocodes」参照）。
【０１０８】
好ましい実施例では（可除性を維持するインタリーバ）、復号器４０４と４０６は、符号器２０２と２０４が各々０の初期状態と最終状態を有するという事実を考慮に入れて初期化される。
【０１０９】
図１に図示されたような符号器の動作を描く図５では、ランダム・アクセス・メモリ１０４のレジスタが初期化（ｎｏ＿ｏｆ＿ｄａｔａ＿ｉｔｅｍｓ＝「０」）される初期化動作５００の後、動作５０１の間に中央装置１００は受信を待ち、送信されるべきバイナリ・データ項目を受信し、それをレジスタ「ｐｒｉｍａｒｙ＿ｄａｔａ」内のランダム・アクセス・メモリ１０４内に位置づけ、カウンタ「ｎｏ＿ｏｆ＿ｄａｔａ＿ｉｔｅｍｓ」を１つ増分することが分かるだろう。
【０１１０】
次に、テスト５０２の間に、中央装置１００は、レジスタ「ｎｏ＿ｏｆ＿ｄａｔａ＿ｉｔｅｍｓ」に格納された整数が、ｄが引かれる積Ｍ．Ｎ０に等しいか等しくないかを決定する（Ｍ、Ｎ０とｄは、読取り専用メモリ１０５内に格納されている値である）。
【０１１１】
テスト５０２の結果が否定的である場合、動作５０１は反復される。テスト５０２の結果が肯定的である場合、動作５０３の間に、ｕ(ｘ)は、ａ(ｘ)をγ(ｘ)＝(ｇ(ｘ))2ｍ1(ｘ)ｍ3(ｘ)ｍ5(ｘ)ｍ7(ｘ)で割りきれるようにするために、４４のバイナリ・データ項目ａiを加えることによってａ(ｘ)＝ｕ(ｘ)＋Σi=361 to 404ａiｘiの形に拡張され、上式でｍ1(ｘ)は、ガロア体ＧＦ（２9）の原始元αの最小多項式であり、したがって９に等しい次数を有し、各他のｍi(ｘ)は要素αiの最小多項式であり、９に等しい次数を有し、ｇ(ｘ)は多項式１＋ｘ＋ｘ4である。
【０１１２】
γ(ｘ)の次数が４４に等しいので、４４のバイナリ・データ項目はａ(ｘ)がγ(ｘ)で割りきれるプロパティを得るように１つずつ選択できる。
【０１１３】
次に、動作５０５の間、中央装置１００はａ(ｘ)をｇ(ｘ)で割り、その結果のシーケンスｂはレジスタ「ａ、ｂ、ｃ」に格納される。
【０１１４】
次に、動作５０６の間、シーケンスａのバイナリ・データ項目は、読取り専用メモリ１０５に格納された表「ｉｎｔｅｒｌｅａｖｅｒ」によって記述された順序で、レジスタ「ａ、ｂ、ｃ」から連続的に読み込まれる。この読取りから連続して得られるデータは、ランダム・アクセス・メモリ１０４のレジスタ「ｐｅｒｍｕｔｅｄ＿ｄａｔａ」内のメモリに置かれる。
【０１１５】
次に、動作５０７の間、レジスタ「ｐｅｒｍｕｔｅｄ＿ｄａｔａ」内に格納された置換されたバイナリ・データ項目のシーケンスに関連する多項式ａ*(ｘ)の、多項式ｇ(ｘ)による除算が実行される。この除算の結果は、レジスタ「ａ、ｂ、ｃ」のメモリ内に置かれ、シーケンスｃのバイナリ・データ項目に対応する。
【０１１６】
動作５０８の間、シーケンスｖ2とｖ3はそれぞれ、ランダム・アクセス・メモリのレジスタ「ａ、ｂ、ｃ」内に格納されたシーケンスｂとｃに関連した多項式と、生成多項式ｈ1(ｘ)とｈ2(ｘ)の積を実行することによって決定される。
【０１１７】
動作５０９の間、シーケンスｖ1＝ａとｖ2、ｖ3は、送信機１０６を使用して送信される。次に、メモリ１０４のレジスタは再び初期化され、特にカウンタｎｏ＿ｏｆ＿ｄａｔａ＿ｉｔｅｍｓは「０」にリセットされ、動作５０１が反復される。
【０１１８】
変形例では、動作５０９の間、シーケンスｖ1は完全に送信されるが、シーケンスｖ2とｖ3の各々のサブセットだけ、たとえば２つのうち１つのデータ項目だけが送信される。この変形例はパンクチュアリングという名前で当業者に知られている。
【０１１９】
このように本発明の１態様によれば、多項式表現ｕ(ｘ)の情報記号のシーケンスを符号化する方法は、
ターボ符号化動作（５０５から５０８）と、
ターボ符号化動作から得られたシーケンスを送信チャネル上で送信する動作（５０９）を含み、
また、前記ターボ符号化動作の準備として、少なくとも１つの所定の多項式で前符号化されたシーケンスが割りきれることを保証する冗長記号を前記シーケンスｕ(ｘ)に加えられる、少なくとも１つの前符号化動作（５０３）を含み、この多項式は、
前記ターボ符号器の符号器によって使用される約数多項式の自明でない倍数であり、この符号器は前符号化されたシーケンスに作用する符号器であり、
前記チャネル上で送信エラーを表す多項式を割りきる高い確率を有する多項式の１つであることを含む。
【０１２０】
図６は、ターボ復号化の流れ図と、図３に図示されたような装置によって実施されたエラー修正を示す。
【０１２１】
受信されたシーケンスｒ(ｘ)は動作６０１の間に、たとえば７に等しい所定の数の反復を使用して当業者に知られた技術によってまずターボ復号化される。
【０１２２】
この点で、置換されたシーケンスａ*をシーケンスａから提供する多項式ｇ(ｘ)、ｈ1(ｘ)、ｈ2(ｘ)とインタリーバを知っていれば、当業者であれば技術的な問題なく、上記で考慮されたインタリーバを使用し、場合によっては対応する逆インタリーバを使用してシーケンス（ｖ1、ｖ2、ｖ3）の三つ組に影響を与えるエラーの復号化と訂正に適用される復号器を実施する方法を理解できるであろうことに注意されたい。
【０１２３】
この目的のために、以下を参照することができる。
ターボ符号に関連して一般に使用されるいわゆる「ＢＪＣＲ」アルゴリズムを記述した、１９７４年３月の雑誌ＩＥＥＥ  Transactions on information Theoryで発表された、L. R. Bahl, J. cocke, F. Jelinek, J. Ravivの各氏による「Optimal decoding of linear codes for minimizing symbol error rate」と称する論文。
１９９６年３月の雑誌ＩＥＥＥ  Transactions on Information Theoryで発表された、J.Hagenauer,E.Offer,L.Papkeの各氏による「Iterative decoding of binary block and convolutional codes」と称する論文。
１９８９年１１月のＩＥＥＥ  ＧＬＯＢＥＣＯＭ会議の報告の１６８０ページから１６８６ページで発表された、J.Hagenauer, P.Hoeherの各氏による「A Viterbi algorithm with soft decision outputs and its applications」と称する論文。
１９９４年１０月の雑誌Informationstechnische Gesellschaft(ITG)Fachberichtの２１ページから２９ページで発表された、J.Hagenauer, P.Robertson, L.Papkeの各氏による「Iterative(turbo)decoding of systematic convolutional codes with the MAP and SOVA algorithms」と称する論文。
１９９６年８月のInstitute of Technology in Lund(Sweden)(Department of applied Electronics)によって組織された「ターボ符号化」セミナーの報告で発表された、C.Berrou, S.Evano, G.Battailの各氏による「Turbo-block-codes」と称する論文。
【０１２４】
このようにして動作６０１は、
出力４０７または４０９のうちの１つの上で所定の数の反復から得られたいわゆる「現在の」前符号化されたシーケンスａの推定ａ^、および
中間の復号化結果から得られた、前符号化されたシーケンスａの少なくとも１つのいわゆる「前の」推定を提供する。
【０１２５】
好ましい実施例（可除性を維持したインタリーバ）では、「前の」推定は、出力４０７または４０９のどちらの上にも等しく提供される。他方、符号器２０２または２０４はどちらか１つだけが０に戻る、すなわち、この符号器の最終状態が常に０であると保証されている時、その初期状態も０であり、現在の推定値と各々の前の推定値は好ましくは、この符号器に対応する復号器の出力から発生すると考えられる。どちらのケースでも、前の推定値は現在の推定値より前に起きる最終のものである。
【０１２６】
次にテスト６０２の間に中央装置３００は、考慮中の除算を実行し、剰余が０であるか０ではないかを決定することによって推定値ａ^の多項式表現ａ^(ｘ)が生成多項式ｇ(ｘ)で割りきれるか割りきれないかを決定する。
【０１２７】
テスト６０２の結果が否定的である場合、復号化エラーが検出され、ここでは訂正が不可能であると考えられ、このエラーの処理は動作６０３の間に知られた方法で実行される。テスト６０２の結果が肯定的である場合、テスト６０４の間、中央装置３００は、前の推定値と現在の推定値ａ^を各々比較することによって、ターボ復号化が安定であるか安定でないかを決定する。
【０１２８】
これらの推定値が異なる場合、テスト６０４の結果は否定的になり、動作６０５の間、このエラーの処理が実行される（典型的には、動作６０８から得られる可能性のあるシーケンスの信頼性の程度はより低いと考えられる）。
【０１２９】
テスト６０４の結果が肯定的だった時かまたは動作６０５に続いて、動作６０６の間
ｐ0＝１
ｐ1＝ｇ
ｐ2＝ｇ2
ａ^i＝ａ^／ｐiが多項式である０と２の間の値ｉが選択され、前記多項式ａ^iが格納される。
【０１３０】
次に動作６０７の間に、選択されたシーケンスａ^iの各々は、上記のＢＣＨ符号に関連したＢＣＨ復号化を受ける。訂正されたシーケンスはｂiによって示される。
【０１３１】
動作６０８の間、中央装置３００は、多項式表現が等式
ａ~i(ｘ)＝ｂi(ｘ)ｐi(ｘ)を満足するシーケンスａ~iを決定する。
【０１３２】
動作６０９の間、中央装置３００は、符号化されたシーケンスｔi(ｘ)＝［ａ~i(ｘ)、ａ~i(ｘ)ｈ1(ｘ)／ｇ(ｘ)、ａ~i（ｘe）ｈ2(ｘ)／ｇ(ｘ)］を生成する。
【０１３３】
動作６１０の間、シーケンスｔiは受信されたシーケンスｒ(ｘ)と比較され、ｒに最も近いシーケンスｔiが信頼性係数を割り当てられたシーケンス［ｖ1、ｖ2、ｖ3］の最終推定値と見なされ、この信頼性係数は、
選択されたシーケンスｔiと、シーケンスｒの間の距離に比例し、
テスト６０４の結果が否定的だった場合は、結果が肯定的だった場合より低い。
【０１３４】
動作６１１の間、シーケンスａ＝ａ~iの最終推定値はシーケンスｔiから抽出される。
【０１３５】
動作６１２の間、前符号化（動作５０３）の間に追加されたバイナリ・データ項目は、情報宛先３１０に送信される送信されたデータｕのシーケンスに上記の信頼性係数を提供するために、最終的に推定シーケンスａから除去される。変形例では、テスト６０４と動作６０５は除去される。変形例では、信頼性係数は決定されない。変形例では、動作６０５から得られた信頼性係数だけが考慮される。
【０１３６】
図７は、この動作を実行する符号器の図である。この図では、入力における記号のＫ個のシーケンスについて、符号器は出力において、
理想的な形における記号のこれらのＫ個のシーケンスと、
情報シーケンスａiに関連する多項式と所定の多項式ｈiの積を合計し、この合計を所定の多項式ｇ（符号器７０１）で割ることによって形成されたチェック記号のシーケンスと、
シーケンスａi*を提供するために、ｇ（インタリーバ７０２から７０５）による可除性を維持するインタリーバｌiによって、各情報シーケンスａiをまずインタリーブし、次に、シーケンスａi*に関連する多項式と所定の多項式ｆiの積を合計し、この合計を前記所定の多項式ｇ（符号器７０６）で割ることによって形成されるチェック記号のシーケンスを送信することが分かるであろう。
【０１３７】
図示されないが変形例では、
ａiがｇで割りきれる場合は、ａiのインタリーブの後に得られる多項式は、別の所定の多項式ｇ’によって割りきれることを保証するインタリーバｌiが使用され、
約数多項式として、符号器７０６は、前記多項式ｇ’を使用する。
【０１３８】
図８においては、本発明によれば、ハイブリッド・ターボ符号器は、
送信されるべきｕjの記号のＫ個のシーケンスを受信し、ａj(ｘ)をγ(ｘ)＝(ｇ(ｘ))2ｍ1(ｘ)ｍ3(ｘ)ｍ5(ｘ)ｍ7(ｘ)で割りきれるようにするために、４４のバイナリ・データ項目ａijを加えることによって、各ｕj(ｘ)をａj(ｘ)＝ｕj(ｘ)＋Σi=361 to 404ａijｘiの形に拡張する前符号器８０１と、
Ｋ個のシーケンスａjから、シーケンスｖjを表すＫ＋Ｍ２個のいわゆる「中間」シーケンスｄjを提供する第１の畳込み符号器８０２と、
シーケンスｄjから、いわゆるＭ１個の「置換された」インタリーブされたシーケンスｄji（１とＭ１の間のｌ）を提供し、その記号はシーケンスｄjの記号であるが、異なる順序の、インタリーバ８０３j（ｊは１とＫ＋Ｍ２の間）、即ちインタリーバ８０３iから８０３K+M2、と、
(Ｋ＋Ｍ２)*Ｍ１個のインタリーブされたシーケンスｄjiから、Ｋ個のシーケンスａiを表すＫ＋Ｍ１＋Ｍ２個のいわゆる「符号化された」シーケンスｗiを提供する第２の畳込み符号器８０４と、
シーケンスａiから、Ｍ３個のいわゆる「置換された」インタリーブされたシーケンスａ*ij（ｊは１からＭ３）を提供し、その記号は、シーケンスａiの記号であるが異なる順序の、インタリーバ８０６i（ｉは１からＫ）、即ちインタリーバ８０６1から８０６kと、
Ｋ*Ｍ３個のインタリーブされたシーケンスｄijから、Ｋ個のシーケンスａiを表すＭ３個のいわゆる「符号化された」シーケンスｗiを提供する第３の畳込み符号器８０７とからなることが分かるであろう。
【０１３９】
直列またはハイブリッド・ターボ符号をよりよく理解するために、直列またはハイブリッド・ターボ符号化に関して、当業者であれば、１９９６年８月のBENEDETTO、MONTORSI(Univ.Politecnico di Torino,Italy)、DIVSALAR、POLLARA(JPL、USA)、TDA、progress reportの４２ページから１２６ページの「Serial concatenation of interleaved codes: Performance analysis,design and iterative decoding」と称する論文と、１９９７年８月のDIVSALAR、POLLARA(JPL、USA)、TDA progress reportの４２ページから１３０ページの、「Hybrid concatenated codes and iterative decoding」を参照できる。
【０１４０】
Ｋ＋Ｍ１＋Ｍ２＋Ｍ３個の符号化されたシーケンスｗiは次に復号化されるために、無線フレームの中にカプセル化され、ワイヤレス送信チャネル上で送信される。
【０１４１】
好ましくは、すべてのインタリーバが図２に関連して記述された特徴を有し（可除性を維持するインタリーバ）、さらに好ましくは、「ｘからｘe」型である。
【０１４２】
好ましい実施例では、第３の符号器８０７は、システマティック符号器である。
【０１４３】
図８に関して図示されたハイブリッド・ターボ符号器によって送信された信号を復号するために、ここで、ターボ符号器のインタリーバと同じ特徴を有するインタリーバと逆インタリーバを使用したターボ復号器を使用することに注意されたい。
【０１４４】
好ましい実施例（可除性を維持するインタリーバ）では、復号器は符号器８０２、８０４、８０７が各々、０の初期状態と最終状態を有するという事実を考慮して初期化される。
【０１４５】
図９は、図３に図示されたような装置によって実施されるターボ復号化とエラー検出の流れ図である。
【０１４６】
受信されたシーケンスｒは動作９０１の間に、たとえば７に等しい所定の数の反復を使用して当業者に知られた技術によってまずターボ復号化される。
【０１４７】
ここで、好ましい実施例（可除性を維持するインタリーバ）では、復号化から得られた推定値は、出力４０７または４０９のどちらの上にも等しく提供されることに注意されたい。他方、復号器２０２または２０４はどちらか１つだけが０に戻る保証を有する時、処理されるべき推定値は、この符号器に対応する復号器の出力から発生する。どちらの場合でも、前の推定値は図６に関して説明されたように提供される。
【０１４８】
この動作は、前符号化されたシーケンスａの推定値ａ^を提供する。次にテスト９０２の間に中央装置３００は、考慮中の除算を実行し、剰余が０であるか０ではないかを決定することによって推定値ａ^の多項式表現ａ^(ｘ)が生成多項式ｇ(ｘ)によって割りきれるかどうかを決定する。
【０１４９】
テスト９０２の結果が否定的である時、復号化エラーが検出され、動作９０３の間に知られたタイプのこのエラー検出の処理が実行される。テスト９０２の結果が肯定的である時、テスト９０４の間、中央装置３００は、図６の動作６０４の間に実行される手順と同じ方法でターボ復号化が安定であるか安定でないかを決定する。
【０１５０】
テスト９０４の結果が否定的だった時、動作９０５の間、復号化エラーが検出され、このエラー検出の処理が実行される。テスト９０４の結果が肯定的だった時、テスト９０６の間、中央装置３００はシーケンスａ^の多項式表現ａ^(ｘ)がｇ(ｘ)ｍ1(ｘ)ｍ3(ｘ)ｍ5(ｘ)ｍ7(ｘ)で割りきれるか割りきれないかを決定する。
【０１５１】
変形例では、動作５０３の間、ｕ(ｘ)はａ(ｘ)をｈ(ｘ)が任意の多項式であるγ(ｘ)＝ｈ(ｘ)によって割りきれるようにするために、バイナリ・データ項目ａiを加えることによってａ(ｘ)＝ｕ(ｘ)＋Σiａiｘiの形に拡張される。この変形例によれば動作９０６の間、中央装置３００はシーケンスａ^の多項式表現ａ^(ｘ)がｈ(ｘ)で割りきれるか割りきれないかを決定する。
【０１５２】
テスト９０６の結果が否定的である時、動作９０７の間、このエラーが知られた方法で処理される。テスト９０６の結果が肯定的である時、推定シーケンスａ^は前符号化されたシーケンスａの最終的な推定値と見なされる。動作９０８の間、前符号化（動作５０３）の間に加えられたバイナリ・データ項目は、情報宛先３１０に送信される送信されたデータｕのシーケンスを提供するために最終的に推定シーケンスから除去される。
【０１５３】
図示されないが、特に可除性を維持するインタリーバを使用する場合に構成された変形例では、動作９０２と９０３が除去される。
【０１５４】
このようにして、本発明の１つの態様によれば、復号化の方法は
少なくとも１つの所定の多項式と
物理量を表す多項式表現ｕ(ｘ)の情報記号のシーケンスの符号化の結果となりうる受信されたシーケンスｒとを考慮し、符号化はターボ符号化を含み、シーケンスｕ(ｘ)を表すターボ符号化されるべきシーケンスａ(ｘ)が各所定の多項式で割りきれることを保証し、
受信されたシーケンスｒを推定シーケンスａ^にターボ復号化（６０１、９０１）する動作と、
前記所定の多項式で推定シーケンスａ^の多項式表現ａ^(ｘ)を割った剰余を計算する（６０２、６０６、９０２、９０６）少なくとも１つの動作とを含む。
【０１５５】
本発明の別の態様によれば、復号化の方法は、
少なくとも１つの所定の多項式と、
物理量を表す多項式表現ｕ(ｘ)の情報記号のシーケンスの符号化の結果となりうる受信されたシーケンスｒとを考慮し、符号化はターボ符号化を含み、シーケンスｕ(ｘ)を表すターボ符号化されるべきシーケンスａ(ｘ)が各所定の多項式で割りきれることを保証し、
ターボ復号化が安定であるか安定でないかを決定する、受信されたシーケンスｒの推定シーケンスａ^へのターボ復号化（６０４、９０４）の安定性を確認する動作を含む。
【０１５６】
図１０から分かるように図６と図９に関連して記述されたアルゴリズムのうち１つを使用したシステムの一般的な機能構成図は、好ましくは
ａ）送信機側では
情報源１１０と、
確認処理プロトコル１００２（動作６０３、９０３、９０５、９０７参照）であって、このプロトコルは場合によっては、確認メッセージが所定の時間内に受信装置から受信されないシーケンスの送信手順を含むプロトコルと、
前符号化１００３（動作５０３参照）と、
ターボ符号化１００４（動作５０５から５０９）と、
雑音のある送信チャネル上の送信と受信１００５とを含み、
ｂ）受信機側では
ターボ復号化１００６（動作６０１または９０１参照）と、
エラーの検出または訂正（動作９０２から９０８、またはそれぞれ６０２から６１１）と、
検出されたエラーが訂正されない時（動作６０３、９０３、９０５、９０７）、プロトコル１００２によれば確認メッセージは送信されず、受信されたシーケンスｒは拒否される、動作１００８、および、
エラーが検出されなかった時（動作９０８）または検出された動作が訂正された時（動作６０８）、情報宛先３１０への送信が実行され、かつプロトコル１００２による確認メッセージの符号化装置１０１への送信も実行されることを含む。
【０１５７】
確認プロトコルの使用は、情報宛先がこの確認を送信する何らかの手段またはその他を有すること、および情報送信機がこの確認を受信する手段を有することを必要とし、前記手段は送信技術の当業者に周知であることに注意されたい。
【図面の簡単な説明】
【図１】本発明による符号器を組み込んだ電子装置を概略的に表す示す図である。
【図２】本発明による並列畳込みターボ符号に対応するターボ符号化装置の構成図である。
【図３】本発明による復号器を組み込んだ電子機器の構成図である。
【図４】本発明による並列畳込みターボ符号に対応するターボ復号化装置の構成図である。
【図５】図１に示された符号器の動作の流れ図を概略的に示す図である。
【図６】図３に示された復号化装置によって実施される、本発明による復号化とエラー訂正の流れ図を概略的に示す図である。
【図７】本発明の変形例による符号器を概略的に示す図である。
【図８】本発明のハイブリッド畳込みターボ符号に対応するターボ符号器を示す図である。
【図９】図３に示された復号化装置によって実施される、本発明による復号化とエラー検出の流れ図を概略的に示す図である。
【図１０】図６と図９に関して記述されたアルゴリズムのうち１つを使用したシステムの一般的な機能構成図である。
【符号の説明】
１００  中央処理装置
１０１  処理カード
１０２  データバス
１０３  入出力ポート
１０４  ランダム・アクセス・メモリ
１０５  読取り専用メモリ
１０６  無線送信機
１０９  画面
１１０  外部情報源
１１１  キーボード
２００  前符号器
２０１  入力
２０２  符号器
２０３  インタリーバ
２０４  符号器
３００  中央処理装置
３０１  処理カード
３０２  データ・バス
３０３  入出力ポート
３０４  ランダム・アクセス・メモリ
３０５  読取り専用メモリ
３０６  無線受信機
３０９  画面
３１０  外部情報宛先
３１１  キーボード
４０１〜４０３  入力
４０４  復号器
４０５  インタリーバ
４０６  入出力復号器
４０７，４０８  逆インタリーバ
４０９，４１０  出力
７０１  符号器
７０２〜７０５  インタリーバ
７０６  符号器
８０１  前符号器
８０２，８０４，８０７  畳込み符号器
８０３ｉ、８０３ｊ  インタリーバ
８０６ｋ、８０６ｉ  インタリーバ
【図１】
0004392924.tif 000003
【図２】
0004392924.tif 000004
【図３】
0004392924.tif 000005
【図４】
0004392924.tif 000006
【図５】
0004392924.tif 000007
【図６】
0004392924.tif 000008
【図７】
0004392924.tif 000009
【図８】
0004392924.tif 000010
【図９】
0004392924.tif 000011
【図１０】
0004392924.tif 000012