説明

データを符号化および復号化する方法および装置

【課題】無競合インターリーバでターボ符号化する方法と装置が提供される。
【解決手段】動作中にサイズK’の入力ブロックが受信される。オリジナルの入力ブロックおよびインターリーブした入力ブロックは、符号語ブロックを得るために符号化される。オリジナルの入力ブロックは、サイズK’のインターリーバと置換π(i)=(f×i+f×i)modK’を用いてインターリーブされる。0≦i≦K’−1はインターリービング後のシンボル位置の連続したインデックスであり、π(i)は位置iに対応したインターリービング前のシンボル・インデックスであり、K’はシンボルにおけるインターリーバ・サイズであり、fとfはインターリーバを定義する因数である。K’、f、fの値は、表のうちの少なくとも1つの列から得られる。符号語ブロックはチャネルを通じて送信される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、概して、データを符号化および復号化することに関し、特に、ターボ符号化および復号化する方法および装置に関する。
【背景技術】
【0002】
有線および無線リンクを通じたデジタル・データ送信は、たとえば、リンクまたはチャネルにおける雑音によって、他の送信からの障害によって、または、他の環境要因によってそのデータが破損することがある。チャネルによって導入される誤りと格闘すべく、多くの通信システムが、通信を支援する誤り訂正技術を利用している。
【0003】
誤り訂正に利用される1つの技術は、それがチャネルを通じて送信される前の情報ブロックのターボ符号化である。そのような技術を利用して、通信システムの送信器内の符号化器は、長さK’ビットの入力ブロック
u(太字)は、Nビットの符号語ブロックx(太字)に符号化するであろう。その後、符号語ブロックは、IEEE802.16e仕様書に定義されるようにチャネル・インターリービングのようなさらなる処理の恐らく後で、チャネルを通じて送信される。受信器では、ターボ復号化器は、入力として長さNの受信信号ベクトルy(太字)を得、ベクトルu(太字)の推定u(太字、チルダ)を生成する。
【0004】
典型的には、ターボ符号化器は、2つの構成要素畳み込み符号化器から構成されている。第1構成要素符号化器は、そのオリジナルの順序での入力として入力ブロックu(太字)を得、第2構成要素符号化器は、u(太字)をターボ・インターリーバπに通過させた後で、そのインターリーブした順序で入力ブロックu(太字)を得る。ターボ符号化器出力x(太字)は、系統的なビット(入力ブロックu(太字)に等しい)と、第1構成要素符号化器からのパリティ・ビットと、第2構成要素符号化器からのパリティ・ビットとから構成されている。
【0005】
対応して、通信システムの受信器内のターボ復号化器は、2つの構成要素畳み込み復号化器から構成され、各々は、各構成要素符号用である。構成要素復号化器は、インターリーバπおよび対応するデインターリーバπ−1によって分離される。対数尤度比(LLR)フォーマットのメッセージは、構成要素復号化器間で反復して渡される。決定u(太字、チルダ)は、幾つかの反復の後になされる。
【0006】
ターボ・インターリーバπは、ターボ符号設計における重要な構成要素である。それは、擬似ランダムな方法で入力ブロックu(太字)にスクランブルをかける原因となり、このように、良い重み分配を持った符号語x(太字)を提供し、したがって、良い誤り訂正能力を提供する。
【非特許文献1】Release 6 interleaver,3GPP standard turbo code 25.212 V6.4.0,2005年3月,Pages.16-20
【非特許文献2】Berrou C., Saouter Y., Douillard C., Kerouedan S., Jezequel M., 泥esigning good permutations for Turbo Codes: towards a single model・ in Proceedings of ICC 2004, IEEE Communications Society,2004年6月,vol. 1, pages 341-345
【発明の開示】
【発明が解決しようとする課題】
【0007】
復号化性能に加えて、ターボ・インターリーバπの定義は、受信器内のターボ復号化器の実施を非常に影響する。メモリ・アクセス競合のない高レベルな並行処理を可能にするために、ターボ・インターリーバπは、無競合特性を有する必要がある。
【0008】
無競合インターリーバの前述の必要性に対処するために、無競合インターリーバでターボ符号化する方法および装置がここに提供されている。
【課題を解決するための手段】
【0009】
動作中に、サイズK’の入力ブロックが受信される。オリジナルの入力ブロックおよびインターリーブした入力ブロックは、符号語ブロックを得るために符号化され、ここでは、オリジナルの入力ブロックは、サイズK’のインターリーバおよび置換π(i)=(f×i+f×i)modK’を使用してインターリーブされる。ここで、0≦i≦K’−1は、インターリービング後のシンボル位置の連続したインデックスであり、π(i)は、位置iに対応したインターリービング前のシンボル・インデックスであり、K’は、シンボルにおけるインターリーバ・サイズであり、fおよびfは、インターリーバを定義する因数である。K’、f、fの値は、テーブル2うちの少なくとも1つの列から得られる。符号語ブロックは、チャネルを通じて送信される。
【0010】
本発明のさらに別の実施形態において、オリジナルの入力ブロックは、サイズK’のインターリーバおよび置換π(i)=(f×i+f×i)modK’を使用してインターリーブされる。ここで、0≦i≦K’−1は、インターリービング後のシンボル位置の連続したインデックスであり、π(i)は、位置iに対応したインターリービング前のシンボル・インデックスであり、K’は、シンボルにおけるインターリーバ・サイズであり、fおよびfは、インターリーバを定義する因数である。K’、f、fの値は、テーブル3のうちの少なくとも1つの列から得られる。
【0011】
データを符号化および復号化することについて記述する前に、次の定義が、必要な背景を設定するために提供される。
・Kは、情報ブロック・サイズを表わしている。
【0012】
・K’は、インターリーバ・サイズ(つまり、ターボ符号インターリーバが定義される入力ブロック・サイズ)を表わしている。
・Kfillerは、情報ブロックに付加されたフィラー・ビットの数を表わしている。
【0013】
・πは、ターボ符号内部インターリーバを表わしている。
・Floor演算
【0014】
【数1】

は、x以下の最大整数を表わし、Ceil演算
【0015】
【数2】

は、x以上の最小整数を表わしている。
【0016】
・u(太字)は、入力ブロックを表わし、それは、K’の長さを有し、送信器でのターボ符号化器に送られる。u(太字、チルダ)は、推定された入力ブロックを表わし、それは、K’の長さを有し、受信器でのターボ復号化器によって生成される。復号誤りがないときには、u(太字、チルダ)=u(太字)であることを注記しておく。そうでなければu(太字、チルダ)≠u(太字)である。
【発明を実施するための最良の形態】
【0017】
さて、図面を参照して、ここでは、同様の参照符号は、同様の構成要素を指定しており、図1は、送信器100のブロック図である。示されるように、送信器100は、フィラー挿入回路109と、ターボ符号化器101と、インターリーバ・サイズ決定回路103と、インターリーバ・パラメータ・テーブル105と、送信器107とを備えている。符号化器101は、好ましくはレートが1/3の3GPPターボ符号化器であるが、符号化器101の動作についてここに記述される技術は、後部ビット(tail bit)を持つ、または後部ビットを持たないターボ符号化を行なうターボ符号化器、後部ビットのバイナリ符号化器またはデュオ・バイナリ符号化器、様々なレート・マッチングおよびパンクチャリング技術を使用したターボ符号化器などを含む他の符号化器に適用されることが可能であるが、これらに限定されるものではない。回路103は、インターリーバ・サイズK’を決定し、K’は、1組のサイズからのものである。ここで、1組のサイズは、K’=a×f、Pmin≦p≦pmax、fmin≦f≦fmaxであり、aは、整数であり、fは、fminとfmaxとの間の連続的な整数であり、pは、pminとpmaxとの間の整数値を取る(a>1、pmax>pmin、pmin>1)。
【0018】
送信器100の動作中に、サイズKの情報ブロックは、ターボ符号化器101によって符号化される必要がある。多数の様々なKが使用される幾つかの通信システムについては、すべての情報ブロック・サイズKに対する無競合(CF)インターリーバを定義することは効率的ではない(そして、多くの場合、不可能である)。それは、小さい組(K’)の良好に設計されたCFインターリーバがすべての情報ブロック・サイズをカバーすることができる場合には、望ましい。情報ブロック・サイズK’を与えられて、適切なインターリーバ・サイズK’は、利用可能なサイズの組(たとえば、テーブル105に列挙されたインターリーバ・サイズ)から回路103によって選択されることが可能である。その後、情報ブロックは、回路109によってサイズK’の入力ブロックにパディングし、入力としてターボ符号化器101に送られる。典型的な構成は、Kfillerフィラー・ビットを持った情報ブロックを(フィラー挿入回路109を介して)パディングすることである。用語「サイズ」および「長さ」は、ブロックまたはベクトルにおける要素の数を示すために相互置換可能に使用されることを注記しておく。
【0019】
一旦、K’が回路103によって選択されると、それは、ターボ符号化器101に与えられる。符号化中には、無競合インターリーバを使用することが可能である(図1には示されていない)。たとえば、インターリーバは、置換π(i)=(iP+A+d(i))modK’を使用することができ、ここでは、0≦i≦K’−1は、インターリービング後のシンボル位置の連続したインデックスであり、π(i)は、位置iに対応したインターリービング前のシンボル・インデックスであり、K’は、シンボルにおけるインターリーバ・サイズであり、Pは、K’の比較的重要な数であり、Aは、定数であり、Cは、K’を分割する小さい数であり、d(i)は、形態d(i)=β(imodC)+P×α(imodC)の「ディザ」ベクトルであり、α(・)およびβ(・)は、各々の長さがCであるベクトルであり、0≦i≦K’−1に対して周期的に適用される。別の例として、インターリーバは、置換π(i)=(f×i+f×i)modK’を使用することができ、ここで、0≦i≦K’−1は、インターリービング後のシンボル位置の連続したインデックスであり、π(i)は、位置iに対応したインターリービング前のシンボル・インデックスであり、K’は、シンボルにおけるインターリーバ・サイズであり、fおよびfは、インターリーバを定義する因数である。一般に、シンボルは、マルチ・ビットからなることが可能であり、インターリービングのステップは、シンボル内のビットの順序を変更する付加的なステップを使用することが可能である。一般性を失わずに、下の議論は、シンボルが1ビットのみからなる(このように、シンボル内のビットの順序を変更する必要はない)典型的な場合を考慮しており、用語「ビット」および「シンボル」は、相互置換可能に使用されることができる。
【0020】
ターボ符号化器101の出力は、符号語ブロックx(太字)を含み、x(太字)は、それがチャネルを通じて送信される場合に送信器107に送られる。送信器は、レート・マッチング、チャネル・インターリービング、変調などのような付加的な処理を、チャネルを通じて符号語ブロックx(太字)を送信する前に行なうことが可能である。
【0021】
図2は、図1の符号化器101のブロック図である。示されるように、符号化器101は、インターリーバ201と、符号化回路202と、符号化回路203とを備えている。符号化器の一例は、3GPP仕様書に定義されたターボ符号化器である。3GPPに定義されたターボ符号化器のマザー符号レートは、R=1/3のネイティブ符号レートを有している。ターボ符号化器の出力では、3ビットは、入力ブロック内の各ビットに対して生成され、1つは、系統的ビットであり(入力ブロックにおけるビットに等しい)、1つは、構成要素符号化器1からのパリティ・ビットであり、1つは、構成要素符号化器2からのパリティ・ビットである。加えて、ターボ符号化器の出力は、NTB後部ビットを含むことも可能であり、それは、構成要素符号のトレリスを終了するために使用される。たとえば、3GPPターボ符号に対して、ターボ符号化器の出力でのNTB=12ビット、構成要素符号当たり6後部ビット。一方、後部ビット構成要素畳み込み符号を使用することが可能であり、このように、NTB=0をなす。
【0022】
インターリーバ201は、無競合インターリーバであることが可能である。インターリーバπ(i)(0≦i<K’)は、それがΨ=π(インターリーバ)およびΨ=π−1(デインターリーバ)の両方に対して次の制約を満足する場合にのみ、ウィンドウ・サイズWに対して無競合であると言われる。
【0023】
【数3】

ここで、0≦j<W、0≦t、v<M(=K’/W)であり、t≠vである。しかしながら、それは、効率的なターボ復号化器の設計に対して必ずしも必要だとは限らないが、典型的には、すべてのMウィンドウはいっぱいであり、ここで、K’=MWである。(1)式における項は、反復復号化中に出力メモリ・バンクに外因値を書き込むときにMプロセッサによって同時にアクセスされるメモリ・バンク・アドレスである。これらのメモリ・バンク・アドレスが、各々の読み取りおよび書き込み動作中にすべて固有である場合には、メモリ・アクセスには競合がなく、したがって、(デ)インターリービングの待ち時間を回避することができ、高速度復号化器の実施に結び付く。
【0024】
ターボ符号化器の実施中に、長さK’ビットの入力ブロック101は、インターリーバ201および符号化回路202の両方に入る。インターリーバ201は、サイズK’の無競合インターリーバであることが可能である。
【0025】
インターリーバ201は、入力ブロックをインターリーブし、インターリーブした順序で入力ブロックを符号化回路203に渡す。その後、符号化回路203は、インターリーブした入力ブロックを符号化する。同様の方法で、符号化回路202は、オリジナルの入力ブロックを符号化する。符号語ブロックx(太字)は、系統的ブロック(入力ブロックに等しい)と、符号化回路202の出力と、符号化回路203の出力とからなる。その後、符号語ブロックx(太字)は、送信器107に送られる。
【0026】
無競合インターリーバの例としては、殆ど規則的な置換(ARP)インターリーバは、次式から与えられる。
π(i)=(iP+A+d(i))modK’
ここで、0≦i≦K’−1は、インターリービング後のビット位置の連続したインデックスであり、π(i)は、位置iに対応したインターリービング前のビット・インデックスであり、K’は、インターリーバ・サイズであり、Pは、K’に比較的重要な数であり、Aは、定数であり、Cは、K’を分割する小さい数であり、d(i)は、形態d(i)=β(imodC)+P×α(imodC)のディザ・ベクトルであり、ここで、α(・)およびβ(・)は、長さCの各々のベクトルであり、0≦i≦K’−1に対して周期的に適用される。α(・)およびβ(・)の両方は、Cの倍数からなる。このように、全体的なインターリーバπ(・)は、期間Cを持った疑似周期的(つまり、周期的)特性を有して構築され、後部ビットターボ符号において使用されるときに、ターボ符号化自体は、擬似周期的になり、簡素化された符号設計手順に導く。
【0027】
無競合インターリーバの別の例として、二次多項式置換(QPP)インターリーバが、次式から与えられる。
π(i)=(f×i+f×i)modK’
ここで、0≦i≦K’−1は、インターリービング後のシンボル位置の連続したインデックスであり、π(i)は、位置iに対応したインターリービング前のシンボル・インデックスであり、K’は、シンボルにおけるインターリーバ・サイズであり、fおよびfは、インターリーバを定義する因数である。ARPのインターリーバと同様に、ターボ符号は、後部ビットである場合に疑似周期でもある。
【0028】
インターリーバ201がMの様々な値に対して(1)式を満足することができる場合には、復号化器は、様々な程度の並列処理を使用して実施されることができる(各Mに対して1つ)。このように、様々な因数を有したK’を選択することが望ましい。長さK’のARPのインターリーバに対して、任意のウィンドウ・サイズWは、WがCとK’の因数との倍数である場合には、メモリ・アクセス競合なしの高速復号化のために使用されることができる。並列ウィンドウの異なる定義により、並列ウィンドウの数としてK’の任意の因数を使用することが可能である。QPPインターリーバに対して、インターリーバ・サイズK’のすべての因数は、並列Mの可能性のあるレベルである。これは、並列因数Mの広い範囲を可能にするによって復号化器の設計における柔軟性および拡張性を提供する。このように、復号化速度と複雑さとの間の良い譲歩は、システム(またはユーザ要素のクラス)の必要条件に基づいてなされることができる。
【0029】
[インターリーバ・サイズK’の選択]
上で議論したように、インターリーバ・サイズ決定回路103は、与えられたKに対するインターリーバ・サイズK’を決定する必要がある。この項は、ターボ符号インターリーバが定義されることが可能である限られた数のサイズ(つまり、K’)を選択する方法について記述している。先に示したように、フィラー挿入回路(パンクチャリングまたはレート・マッチング方法と共に)は、任意の情報ブロック・サイズK’を扱うために使用されることが可能である。一般に、インターリーバ・サイズ選択は、フィラー・ビットによる復号化の負担および性能劣化を考慮に入れなければならない。
【0030】
入力ブロックを形成するために情報ブロックにパディングされたフィラー・ビットKfillerの数は、情報ブロック・サイズK’の小さい割合(たとえば、約10〜13%)に限定されることが望ましい。これは、隣接したインターリーバ・サイズ(つまり、隣接したK’値)間の差を限定することによって達成される(すべての利用可能なK’値が昇順でソートされると仮定する)。フィラー・ビットの数は、K’≧Kのような利用可能な最小のK’を選択することによって最小化される。フィラー・ビットの数は、Kfiller=K’−Kである。しかしながら、必要に応じて、K’≧Kの他の利用可能な値も選択されることが可能である。
【0031】
minとKmaxとの間の情報サイズをカバーするように定義された次のサイズの組を考慮する。
K’=a×f(pmin≦p≦pmax;fmin≦f≦fmax) …(2)
ここで、aは、整数であり、fは、fminとfmaxとの間の連続的な整数であり、pは、pminとpmaxとの間の整数値を取る(a>1、pmax>pmin、pmin>1)。必要ではないが、Kmin=apmin×fmin、およびKmax=apmax×fmaxのようなこれらのパラメータを選択することができる一方で、必要でないことがある任意のサイズを廃棄する。一連の情報ブロック・サイズをカバーするために限定されたサイズの組を選択するこの方法は、片対数スライスと呼ばれる。与えられたサイズKの情報ブロックに対して、サイズK’は、利用可能なインターリーバ・サイズの組と、情報ブロック・サイズK’とに基づいて選択される。
【0032】
片対数スライスは、大きいダイナミック・レンジの信号を圧縮するのに利用される圧伸操作と同様である(たとえば、音声コーデックにおいて使用されるA−Lawおよびmu−Law圧伸器)。片対数スライスの規則は、広範囲の情報ブロック・サイズをカバーするための効率的な設計を可能にする。
【0033】
パラメータを選択する幾つかの方法については、fminおよびfmax値を選択する1つの方法は、K’値が、互いに並んだ隣接したpに起因させることである(つまりa×(fmax+1)=ap+1×fmin)、したがって、
max=a×fmin−1
である。与えられたpの値に対して、2つの隣接したブロック・サイズK’間の分離は、aによって与えられ、それは、情報ブロック・サイズKがグループpであり、インターリーバ・サイズがK’に等しい場合に、最大ap−1フィラー・ビットが加えられることを意味している。このように、情報ブロック・サイズKに対するフィラー・ビットKfillerの割合は、下に示されるように拘束され、それは、ブロック・サイズKが(p,fmin)によって与えられるサイズよりも僅かに大きいときに生じ、K’を使用して(p,fmin+1)によって次のものが与えられる。
【0034】
【数4】

これに代えて、隣接したpに起因するK’値は、a×fmax=ap+1×(fmin−1)を介して互いに並ぶことができ、fmax=a×(fmin−1)を生じる。これは、同様のKfiller/K限界を与えるであろう。したがって、片対数スライスのためのパラメータは、サポートされるブロック・サイズの範囲によって、さらに、フィラー・ビットの許容可能な割合で調整されることができる。fminの選択は、次の2つの必要条件間の平衡を必要とする。
【0035】
・fminは、フィラー・ビットの割合を低減するように大きくあるべきである。
・fminは、各のpに対して定義されたブロック・サイズの数が、fmax=a×fmin−1であると仮定して、fmax−fmin+1=(a−1)×fminであるので、インターリーバのテーブルのサイズを限定するように小さくあるべきである。
【0036】
片対数スライス法は、任意のブロック・サイズに対して非常に簡素であり、使用されるインターリーバ・サイズK’は、(2)式から容易に決定されることが可能である。
[インターリーバ・サイズの選択例]
3GPP LTEについては、40〜6144ビット間の各ブロック・サイズのCFインターリーバを定義することが必須ではない。限定された、または小さい組の良好に設計されたCFインターリーバは、すべてのブロック・サイズをカバーするのに十分である。定義されていないブロック・サイズ(つまり、CFインターリーバが定義されていない)については、零パディング(つまり、フィラー・ビットの添付)は、上で記述したように、効果的に使用されることができる。
【0037】
第1例として、テーブル105における3GPPの長期的な発展(LTE)のための情報ブロック・サイズをカバーするのに適した1組のインターリーバは、上で記述した片対数スライス法に基づいて定義される。特に、次式は、264〜4096のサイズをカバーしている。
K’=2×f(p=3,4,5,6;f=33,34,…64) …(3)
40ビット〜6144ビットの全範囲をカバーするために、(3)式で定義されたK’の組は、8(ビット)のステップ・サイズで264〜40に延長され、64(ビット)のステップ・サイズで4096〜6144に拡張されている。188のインターリーバ・サイズのすべての組は、下のテーブル1にも列挙されている。
(3)式で特定されるサイズは、a=2、pmin=3、pmax=6、fmin=33、fmax=64、fmax=a×(fmin−1)を有しており、したがって、a×fmax=ap+1×(fmin−1)であることを注記しておく。
【0038】
[テーブル1]3GPP LTE用に定義されたインターリーバ・サイズK’の組。
【0039】
【表1】

一旦105のインターリーバ・サイズが決定されると、CFインターリーバは、各々のインターリーバ・サイズに対して設計されることが可能である。任意の情報ブロック・サイズKが与えられると、回路103は、K以上の105からのK’の最小値を選択することによってKに使用されるインターリーバ・サイズKを決定することができる。その後、サイズK’のインターリーバに関連したパラメータは、インターリーバ・パラメータ105の格納手段からルックアップされ、それは、通信装置用のメモリに通常格納されている。
【0040】
テーブル1に示されるサイズは、最小40ビットおよび最大6144ビットを持ったK’に対して定義された例のみであることを注記しておく。さらに、簡素性について、サイズは、後部のまたは後部ビット構成要素符号を使用したそれらの間の差を考慮していない。ターボ符号化器が後部ビットでなされる場合には、7の倍数であるK’は使用されることができない。これらは、削除または修正されるであろう。最後に、付加的なインターリーバ・サイズは、インターリーバ間の間隔を減少させるために上のものに加えられることが可能である。たとえば、余分なインターリーバは、テーブル1における間隔16でインターリーバ間に定義されることが可能であり、その結果、インターリーバは、より小さいK’に対するすべてのバイト間隔に対して定義される。
【0041】
[QPPインターリーバの例]
3GPPの長期的な発展(LTE)用のテーブル1におけるインターリーバ・サイズをカバーするのに適した71 CF QPPインターリーバの部分集合がテーブル2に示されている。これらのインターリーバは、二次方程式の逆多項式を有しており、その結果、デインターリーバもまた、QPPである。加えて、3GPPの長期的な発展(LTE)用のテーブル1におけるインターリーバ・サイズをカバーするのに適した10 CF QPPインターリーバの部分集合がテーブル3に示されており、ここで、インターリーバは、次数が3または4の置換多項式であるデインターリーバを有している。
【0042】
テーブル1におけるすべてのインターリーバ・サイズK’について、K’は、4の倍数である(実際には、K’は8の倍数である)。そのようなサイズに対して、2次の多項式π(i)=(f×i+f×i)modK’は、fがK’のすべての素因数で除算可能であり、fがK’の如何なる素因数でも除算可能でない場合にのみ、有効なインターリーバである。テーブル2およびテーブル3におけるすべてのインターリーバ・パラメータがこの条件を満足していることを示すことができる。
【0043】
QPPインターリーバは、置換多項式の形式で表現することができるデインターリーバを有することを保証される、つまり、
【0044】
【数5】

であるが、デインターリーバπ−1(x)の次数mは、fのすべての素因数の中で最も高い順位と比べ少しも大きくないということだけが保証される。パラメータ(f,f)は、低いmが望まれる場合には、より厳格な条件を満足しなければならない。このように、良い誤り訂正能力を提供する一方で低い次数のデインターリーバを有したQPPインターリーバを設計するのは困難であることがある。
【0045】
ターボ符号化により、インターリーバおよびデインターリーバの両方の複雑さが重要となる。デインターリーバの次数mは、ターボ復号化器の実装の複雑さに直接的に影響することがある。低い次数のデインターリーバは、より高い次数のデインターリーバよりも実装することがそれほど複雑ではない。したがって、QPPインターリーバの探索においては、
・好ましくは、二次方程式のデインターリーバを備えたインターリーバ(つまり、m=2、デインターリーバはQPPでもある)が使用されるべきである。たとえば、テーブル2におけるQPPインターリーバの各々は、ターボ符号化性能を妥協することなく、二次方程式のデインターリーバを有している。
【0046】
・もし、或るサイズ用場合K’に対して、誤り訂正性能が著しく妥協される場合であって、インターリーバが二次方程式のデインターリーバを有していなければならない場合には、僅かに高い次数(たとえば、m=3または4)のデインターリーバを備えたインターリーバが代わりに使用されることができる。たとえば、テーブル3におけるQPPインターリーバの各々は、次数が3または4のデインターリーバを有しており、良いターボ符号化性能を提供する。
【0047】
デインターリーバに制約がまったくない場合には、テーブル2における長さK’のQPPは、9程度の次数のデインターリーバを有することができ、テーブル3におけるものは、7程度の次数のデインターリーバを有することができると指摘されるべきである。
【0048】
インターリーバ・パラメータ105のための格納手段は、K’がテーブル2またはテーブル3に含まれる場合には、テーブル2またはテーブル3のうちの少なくとも1つの列から得られるK’、f、fの値を使用してQPPインターリーバ・パラメータを格納することが可能である。インターリーバ201は、K’がテーブル2またはテーブル3に含まれる場合には、テーブル2またはテーブル3のうちの少なくとも1つの列から得られるK’f、fの値を持ったQPPインターリーバを使用することが可能である。
[テーブル2]次数が2の置換多項式であるデインターリーバを備えたLTE用に定義されたQPPインターリーバの部分集合用のパラメータ(つまり、逆二次方程式)。
【0049】
【表2】


[テーブル3]次数が3または4の置換多項式であるデインターリーバを備えたLTE用に定義されたQPPインターリーバの部分集合用パラメータ。
【0050】
【表3】

図3は、受信器300のブロック図である。入力では、フィラー処理回路302は、チャネルを通じて(たとえば、無線で)送信されてくることがある信号ベクトルを受信する。その後、回路306は、インターリーバ・サイズK’を決定し、それは、上で議論したのと同様の方法でなされることができる(たとえば、格納装置308から、または演算を介してテーブルのルックアップを行なうことによって)。したがって、情報ブロック・サイズKを与えられて、復号化器304は、符号化器101によって使用されたのと同一のインターリーバ・サイズK’を使用する。フィラー処理回路302は、受信した信号ベクトルおよびフィラー・ビット位置を適切に処理するために使用される(たとえば、フィラー・ビット位置が既知である場合には、対応するLLR量は、復号化中に非常に高い量に設定されることができる。その後、ターボ復号化器304は、復号化を行ない、長さK’の入力ブロックの推定u(太字、チルダ)を得る。最後に、情報ブロック抽出回路310は、u(太字、チルダ)から推定された情報ブロックを抽出する。フィラー処理回路302は、説明の容易さのためにターボ復号化器の外部に示されているが、これら2つは、実装の際に組み合わせられることができる。
【0051】
図4は、図3のターボ復号化器304のブロック図である。明白なように、インターリーバ402およびデインターリーバ401は、復号化回路403と復号化回路404との間に存在する。反復復号化は、本技術において公知なもののように行われるが、先行技術の復号化器とは異なり、インターリーバ・サイズK’は、1組のサイズからのものである。ここで、1組のサイズは、K’=a×f(pmin≦p≦pmax;fmin≦f≦fmax)を含んでおり、aは、整数であり、fは、fminとfmaxとの間の連続的な整数であり、pは、pminとpmaxとの間の整数値を取る(a>1、pmax>pmin、pmin>1)。パラメータKfillerは、ターボ復号化器304には必要であるか、または、必要ではないことがあり、したがって、図4においては破線でラベル付けされている。
【0052】
インターリーバ402は、置換π(i)=(f×i+f×i)modK’を利用することが可能であり、ここで、0≦i≦K’−1は、インターリービング後のシンボル位置の連続したインデックスであり、π(i)は、位置iに対応したインターリービング前のシンボル・インデックスであり、K’は、シンボルにおけるインターリーバ・サイズであり、fおよびfは、インターリーバを定義する因数である。K’、f、fの値は、K’がテーブル2またはテーブル3に含まれる場合には、テーブル2またはテーブル3の1列から得られる。デインターリーバ401は、インターリーバ402の逆関数を行なう。
【0053】
図5は、送信器100の動作を示すフローチャートである。論理フローは、ステップ501で開始され、ここでは、回路103は、1組のサイズからのものであるインターリーバ・サイズK’を決定する。ここで、1組のサイズは、K’=a×f(pmin≦p≦pmax;fmin≦f≦fmax)を含み、aは、整数であり、fは、fminとfmaxとの間の連続的な整数であり、pは、pminとpmaxとの間の整数値を取る(a>1、pmax>pmin、pmin>1)。
【0054】
ステップ503では、フィラー挿入回路109は、サイズKの情報ブロックを受信し、サイズKの情報ブロックをサイズK’の入力ブロックu(太字)にパディングし、入力ブロックu(太字)を出力する。その後、インターリーバ201は、サイズK’の入力ブロックを(好ましくは、無競合インターリーバを使用して)インターリーブし(ステップ507)、サイズK’のインターリーブしたブロックを符号化回路203に送る(ステップ509)。最後に、ステップ511で、オリジナルの入力ブロックおよびインターリーブした入力ブロックが符号化される。
【0055】
上で議論したように、入力ブロックをインターリーブするステップは置換π(i)=(f×i+f×i)modK’を使用するステップを含むことが可能である。ここで、0≦i≦K’−1は、インターリービング後のシンボル位置の連続したインデックスであり、π(i)は、位置iに対応したインターリービング前のシンボル・インデックスであり、K’は、シンボルにおけるインターリーバ・サイズであり、fおよびfは、インターリーバを定義する因数である。K’、f、fの値は、K’がテーブル2またはテーブル3に含まれる場合には、テーブル2またはテーブル3の1列から得られる。
【0056】
図6は、図3の受信器の動作を示すフローチャートである。論理フローは、ステップ601で開始され、ここでは、回路306は、インターリーバ・サイズK’を決定する。ステップ603では、回路302は、フィラー・ビット情報を受信した信号ベクトルに加え、たとえば、フィラー・ビットおよびフィラー・ビット位置が公知の回路302である場合には、ターボ復号化器の入力におけるそれらの位置の対数尤度比(LLR)を高い量に設定することが可能である。ステップ607では、ターボ復号化器は、サイズK’のインターリーバおよびデインターリーバを使用して復号化器の入力ブロックを復号化し、長さK’の入力ブロックの推定u(太字、チルダ)を出力する。ステップ609では、情報ブロック抽出回路310は、長さK’の情報ブロックの推定を得るためにフィラー・ビットを削除する。最後に、ステップ611では、推定された情報ブロックが出力される。
【0057】
本発明が特定の実施形態に関して特に示され且つ記述される一方で、当業者には、形態および詳細における様々な変更が本発明の精神および範囲から逸脱することなしにそこになされることが可能であることが理解されるであろう。一例においては、インターリーバのテーブルは、次のものを含む特別な場合をさらに扱うために強化されることが可能である。(a)任意の特別なブロック・サイズをカバーするように定義されるインターリーバ・サイズの付加的な組を使用することが(たとえば、フィラー・ビットなしで、または、より小さいフィラー・ビット数で)扱われなければならない。(b)インターリーバ・サイズは、片対数スライスのサイズからの小さい値を加算または減算することによって僅かに調整されることができる。別の例においては、本発明は、バイナリ入力ターボ符号化器を仮定して上に記述したが、同一の原理は、ターボ符号化器が入力としてシンボルを取るときには適用されることができる。たとえば、デュオ・バイナリ・ターボ符号は、一度に2バイナリ・ビットのシンボルを取り、ターボ・インターリーバは、シンボルの順序を変更する(シンボル内のビットを交互に入れ替えるようにさらにスクランブルをかける)。そのような場合には、入力ブロック・サイズは、シンボルにおいて測定され、インターリーバ・サイズは、入力ブロックにおけるシンボルの数に等しい。別の例においては、上の記述は、インターリーバ・サイズおよびインターリーバ・パラメータがルックアップ・テーブルに格納されるものと仮定しているが、それらは、代数演算のような他の手段を介して決定されることも可能である。さらに別の例においては、上の記述は、ターボ符号を仮定しているが、本方法は、他のFEC手法(たとえば、低密度パリティ・チェック(LDPC)符号、リード・ソロモン(RS)符号などを含む)に適用されることも可能である。そのような変更は、次の請求の範囲内にあると意図されている。
【図面の簡単な説明】
【0058】
【図1】送信器のブロック図である。
【図2】図1のターボ符号化器のブロック図である。
【図3】受信器のブロック図である。
【図4】図3のターボ復号化器のブロック図である。
【図5】図1の送信器の動作を示すフローチャートである。
【図6】図3の受信器の動作を示すフローチャートである。
【符号の説明】
【0059】
100 送信器
101 ターボ符号化器
103 インターリーバ・サイズ決定回路
105 インターリーバ・パラメータ・テーブル
107 送信器
109 フィラー挿入回路
201 インターリーバ
202,203 符号化回路
300 受信器
302 フィラー処理回路
304 ターボ復号化器
306 インターリーバ・サイズ決定回路
308 インターリーバ・パラメータ格納装置
310 情報ブロック抽出回路
401 デインターリーバ
402 インターリーバ
403,404 復号化回路

【特許請求の範囲】
【請求項1】
ターボ符号化器を動作させる方法であって、前記方法は、
サイズK’の入力ブロックを受信すること、および
符号語ブロックを得るために入力ブロックおよびインターリーブした入力ブロックを符号化することを含み、
前記入力ブロックは、サイズK’のインターリーバおよび置換π(i)=(f×i+f×i)modK’を使用してインターリーブされ、ここで、0≦i≦K’−1は、インターリービング後のシンボル位置の連続したインデックスであり、π(i)は、位置(i)に対応したインターリービング前のシンボル・インデックスであり、K’は、シンボルにおけるインターリーバ・サイズであり、fおよびfは、前記インターリーバを定義する因数であり、K’、f、fの値は、次表のうちの少なくとも1つの列から得られる、方法。
【表1】


【請求項2】
チャネルを通じて符号語ブロックを送信することをさらに含む、請求項1記載の方法。
【請求項3】
前記インターリーバは、二次方程式のデインターリーバを含んでいる、請求項2記載の方法。
【請求項4】
ターボ符号化器を動作させる方法であって、前記方法は、
サイズK’の入力ブロックを受信すること、および
符号語ブロックを得るために入力ブロックおよびインターリーブした入力ブロックを符号化することを含み、
前記入力ブロックは、サイズK’のインターリーバおよび置換π(i)=(f×i+f×i)modK’を使用してインターリーブされ、ここで、0≦i≦K’−1は、インターリービング後のシンボル位置の連続したインデックスであり、π(i)は、位置iに対応したインターリービング前のシンボル・インデックスであり、K’は、シンボルにおけるインターリーバ・サイズであり、fおよびfは、前記インターリーバを定義する因数であり、K’、f、fの値は、次表のうちの少なくとも1つの列から得られる、方法。
【表2】

【請求項5】
前記インターリーバは、次数が3または4のデインターリーバを含んでいる、請求項4記載の方法。
【請求項6】
ターボ符号化器を動作させるための装置であって、前記装置は、
1組のサイズからインターリーバ・サイズK’を決定するインターリーバ・サイズ決定回路と、
サイズKの入力ブロックを受信し、該サイズKの入力ブロックをサイズK’の入力ブロックにパディングするフィラー挿入回路と、
前記サイズK’の入力ブロックをインターリーブするインターリーバと
を備え、
該インターリーバは、置換π(i)=(f×i+f×i)modK’を使用し、ここで、0≦i≦K’−1は、インターリービング後のシンボル位置の連続したインデックスであり、π(i)は、位置iに対応したインターリービング前のシンボル・インデックスであり、K’は、シンボルにおけるインターリーバ・サイズであり、fおよびfは、前記インターリーバを定義する因数であり、K’、f、fの値は、次表のうちの少なくとも1つの列から得られる、装置。
【表3】


【請求項7】
符号語ブロックを得るために、前記入力ブロックおよび前記インターリーブした入力ブロックを符号化する符号化器をさらに備える、請求項6記載の装置。
【請求項8】
ターボ符号化器を動作させるための装置であって、前記装置は、
1組のサイズからインターリーバ・サイズK’を決定するインターリーバ・サイズ決定回路と、
サイズKの入力ブロックを受信し、該サイズKの入力ブロックをサイズK’の入力ブロックにパディングするフィラー挿入回路と、
前記サイズK’の入力ブロックをインターリーブするインターリーバと
を備え、
該インターリーバは、置換π(i)=(f×i+f×i)modK’を使用し、ここで、0≦i≦K’−1は、インターリービング後のシンボル位置の連続したインデックスであり、π(i)は、位置iに対応したインターリービング前のシンボル・インデックスを含み、K’は、シンボルにおけるインターリーバ・サイズであり、fおよびfは、前記インターリーバを定義する因数であり、K’、f、fの値は、次表のうちの少なくとも1つの列から得られる、装置。
【表4】

【請求項9】
符号語ブロックを得るために、前記入力ブロックおよび前記インターリーブした入力ブロックを符号化する符号化器をさらに備える、請求項8記載の装置。
【請求項10】
前記インターリーバは、次数が3または4のデインターリーバを有する、請求項9記載の装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2008−219892(P2008−219892A)
【公開日】平成20年9月18日(2008.9.18)
【国際特許分類】
【出願番号】特願2008−47037(P2008−47037)
【出願日】平成20年2月28日(2008.2.28)
【出願人】(390009597)モトローラ・インコーポレイテッド (649)
【氏名又は名称原語表記】MOTOROLA INCORPORATED
【Fターム(参考)】