JP4309586B2 - ターボ符号のための改良型インターリーバ - Google Patents
ターボ符号のための改良型インターリーバ Download PDFInfo
- Publication number
- JP4309586B2 JP4309586B2 JP2000564307A JP2000564307A JP4309586B2 JP 4309586 B2 JP4309586 B2 JP 4309586B2 JP 2000564307 A JP2000564307 A JP 2000564307A JP 2000564307 A JP2000564307 A JP 2000564307A JP 4309586 B2 JP4309586 B2 JP 4309586B2
- Authority
- JP
- Japan
- Prior art keywords
- portions
- size
- predetermined
- data frame
- reordering
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
- H03M13/2771—Internal interleaver for turbo codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
- H03M13/2735—Interleaver using powers of a primitive element, e.g. Galois field [GF] interleaver
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Detection And Correction Of Errors (AREA)
Description
発明の分野
本発明は、電子通信システムの分野に関し、より具体的には、符号変調を実行するインターリーバ(interleaver)に関する。
【0002】
背景技術
符号化変調として知られる通信チャネルを符号化する技術が、モデムおよび無線通信システムのような電子通信システムのビット誤り率(BER)を改善するということが知られている。ターボ符号化変調は、AWGN(additive white Gaussian noise:加法的白色ガウス雑音)またはフェージングによって特徴づけられる「ランダム・エラー」のチャネルに対して、実用的で電力効率がよく、かつ帯域幅の効率がよい変調方法であることがわかっている。こうしたランダム・エラーのチャネルは、例えば、CDMA(符号分割多元接続)環境で見られる。
【0003】
ターボ符号の重要な革新的な点は、第2の符号器への入力前に、元の受信データ・フレームまたは送信データ・フレームに対し並び替え(順序の入れ替え)を行うインターリーバが設けられることである。この並び替えは、その構造がよく知られているランダム化アルゴリズムを実行するプロセッサによって達成される。並び替えられたデータ・フレームを元のデータ・フレームと組み合わせると、AWGNおよびフェージングのチャネルで低いビット誤り率が実現されるということがわかっている。インターリービング処理によって、データのダイバーシティ(diversity)が増大し、変調されたシンボルが送信中に歪んでも、復号器のエラー訂正アルゴリズムを使用すればエラーが回復可能なものになる。
【0004】
従来のインターリーバは、送信されるべきシグナル・ポイント(signal point)を行列に収集すなわちフレーム化する。この行列は、一度に1行ずつ順番に充填される。予め定義された数のシグナル・ポイントがフレーム化された後、送信するために行列の列を順次に読み出すことにより、インターリーバは空になる。その結果、元のシグナル・ポイントの順番では互いに近くにあった、行列の同じ行のシグナル・ポイントが、該行列の行数と同じ数のシグナル・ポイント分だけ分離される。理想的には、相互に依存するシグナル・ポイントが、送信後に、チャネルのバースト・エラーの予想される長さを超えて分離されるように、列数および行数が選択される。しかし、これは実現可能でない場合がありうる。行数が増すにつれ、シグナル・ポイントのフレーム化による信号遅延も増大する。その結果、信号遅延を許容可能な限界内に保つために、あるシステム上の制約が、インターリーバのサイズに課される。一方、インターリーバのサイズに制約をつけると、時間的に多様(time-diverse)で相互に依存するシグナル・ポイントの分離が制限され、したがってインターリーバによって実現されるエラー・パフォーマンスの改善が制限される。
【0005】
従来は2つのインターリービング方法がある。均一インターリービング(すなわち、規則的インターリービング・パターン(regular interleaving pattern))、および非均一インターリービング(すなわち、疑似不規則的インタリービング・パターン(pseudo-irregular interleaving pattern))である。均一インタリービングの場合、より高い重み付けの有限符号語(FC:finite code word)を、より低い重み付けの有限符号語から構築することができる。したがって、低い重み付けのFCの出力シーケンスにおけるある「繰り返しパターン」が、均一インターリービングのターボ符号器の出力ストリーム中に生じることがある。しかしながら、均一インターリービングは、2つの符号器の出力を十分には相関しないので、その結果得られるターボ符号の最小距離が、予想されるほどには増えない。
【0006】
一方、非均一インターリービングは、データのより良好な「最大散乱(maximum scattering)」および「最大無秩序(maximum disorder)」を達成する。このことは、2つの畳み込み符号によって導入される冗長性が、ターボ符号器の出力シーケンス内でより均一に広がるということを意味する。最小距離は、均一インターリービングに比べて、より高い値にまで増大する。しかし、非均一インターリービングになお存在する問題は、どのようにして十分な「非均一性」を実現するかということである。というのも、インターリービングのアルゴリズムは、疑似不規則的パターンに基づくにすぎないからである。これに加え、実用的なアプリケーションについてこの手法を実現するための労力は適度なものであるべきである。さらに、従来のインターリーバは、符号器内でかなりの量のメモリを必要とする。従来のインターリービングの行列はまた、遅延補償を必要とし、そのためリアルタイム要件を伴うアプリケーションではその使用が制限される。
【0007】
したがって、非均一性を改善することのできる、符号をインターリーブするシステムおよび方法が必要とされている。
【0008】
また最小限の遅延補償しか要しない、符号をインターリーブするシステムおよび方法が必要とされている。
【0009】
したがって、本発明の目的は、非均一性を改善することのできる、符号をインターリーブするシステムおよび方法を提供することである。
【0010】
また、本発明の他の目的は、最小限の遅延補償のみを必要とする、符号をインターリーブするシステムおよび方法を提供することである。
【0011】
発明の概要
本発明によれば、上記および他の目的は本発明によって実現されることができる。本発明は、予め決められたサイズを有し、複数の部分から構成されるデータ・フレームをインターリーブする。本発明の一実施形態は、データ・フレームを受信し記憶するよう構成されたメモリを備える。データ・フレームは、受信されると、それぞれが予め決められたサイズを有する複数の行、およびそれぞれが予め決められたサイズを有する複数の列によってインデックス付けされる。予め決められたサイズの行と予め決められたサイズの列の積は、データ・フレームの予め決められたサイズに等しい。
【0012】
プロセッサは、メモリに接続され、データ・フレームを複数の部分に分離するのに使用される。プロセッサはまた、i1(n1)=α1^(n1)mod(P1)に従って複数の行によりインデックス付けされた複数の部分が並び替えられたシーケンスを生成するのに使用される。式中、P1は、予め決められた行サイズより大きい素数であり、n1は、1からP1−1までの範囲における整数であり、α1は、P1の原始根である。このアルゴリズムにより、i1(n1)を、1と予め決められた行サイズとの間にある一意の数とすることが可能になる。
【0013】
プロセッサはまた、i2(n2)=α2^(n2)mod(P2)に従って複数の列によりインデックス付けされた複数の部分が並び替えられたシーケンスを生成するよう構成される。式中、P2は、予め決められた列サイズより大きい素数であり、n2は、1からP2−1までの範囲における整数であり、α2は、P2の原始根である。このアルゴリズムにより、i2(n2)を、1と予め決められた列サイズとの間の一意の数とすることが可能となる。その結果、インターリーブされたデータ・フレーム部分が得られる。
【0014】
本発明は、以下の例示的な実施形態の詳細な説明は、図面を参照しつつ明確に理解されるであろう。
【0015】
発明の詳細な説明
本発明は、符号をインターリーブするための装置および方法である。インターリーバは、それぞれがNデータ・ビットの、入ってくるデータ・フレームを受け取り、第2の符号器で符号化する前に、それらを疑似ランダムな方式で並べ替える。本発明は、衛星通信システム、無線電話システム、モデム、およびコンピュータなどに使用することができる。
【0016】
インターリーバは、明白な順序をもたらさない方法でビットを分類する。本発明は、データ・フレームが小さい(すなわち、Nが大体数千のオーダーである)場合でも、従来のインターリーバより良好に動作する。これは、従来のインターリーバより多様な「散乱(scattering)」を得ることにより達成される。図1は、標準的なターボ符号器を示す。この標準的なターボ符号器は、2つの符号器10および20と、インターリーバ30とを備える。符号器10および20は並列接続されており、インターリーバ30は、第2の符号器の前に配置されている。第1の符号器10の出力は、低い重み付けの符号50であり、第2の符号器20の出力は、高い重み付けの符号60である。これらの出力は、符号化のオーバーヘッドを減らすために、定期的に選択されたビットを削除する符号パンクチャリング機構のような装置に送られることができる。加えて、インターリーバの出力70を直接パンクチャ機構に送ることもできるが、これは必ずしも必要ではない。さらに、本発明はまた、符号のインターリービングを必要とする他の非ターボ符号システムと共に使用されることができる。
【0017】
本発明は、従来のターボ符号の性能を改善することのできるインターリーバの2つの実施形態を開示する。第1の実施形態をGalya(ガリヤ)インターリーバと呼び、第2の実施形態を周波数ホッピング(FH)インターリーバと呼ぶ。これらの実施形態はどちらも整数論に基いており、どちらも、ソフトウェアとしてもハードウェア(すなわち、ASIC(特定用途向けIC)、PLA(プログラマブル・ロジック・アレイ)または構造が周知の任意の他の適切な論理デバイス)としても実現することができる。
【0018】
第1の実施形態であるGalyaインターリーバでは、情報ビット行列は、N1*N2=NとなるN1個の行とN2個の列を有する。さらに、それぞれがN1およびN2より大きい素数P1およびP2が存在する(すなわち、P1>N1およびP2>N2)。これらの素数は、それぞれ、N1およびN2より大きい素数のうち最小の素数であることが好ましいが、必ずしもそうである必要はない。これらの素数の原始根α1およびα2は、従来の方法を使用して求めることができる。上記のパラメータを用いると、Galyaインターリーバについてのビット・シーケンス生成は、次式で定義される。
【0019】
【数1】
i1(n1)=α1^(n1)mod(P1)
ただし、n1=1,2,...,P1−1かつi1(n1)≦N1
i2(n2)=α2^(n2)mod(P2)
ただし、n2=1,2,...,P2−1かつi2(n2)≦N2
N=256の場合、N1=N2=16、P1=P2=17、α1=α2=3となる。
【0020】
図2aおよび図2bは、ソフトウェアまたはハードウェアのいずれでも実現することのできる上記の実施形態を示す。上記の式は、並列に実行してもよいし、順番に実行してもよい。図2aにおいて、ステップ200では、ブロック長N1を表すパラメータを定義する。ビット・シーケンスを記憶する配列i1(n1)が、サイズN1を持つよう定義され、かつ初期化される(ステップ210)。次に、N1より大きい素数P1が定義される(ステップ220)。ステップ230において、α1と呼ばれるP 1の原始根を定義する。カウンタn1が定義され、これは、値1に初期化される(ステップ240)。カウンタn1は、ループを1回通るたびにインクリメントされる(ステップ270)。ステップ260で示されるように、カウンタは、データ・フレームにおけるそれぞれのシンボルについて、ビット・シーケンスi1(n1)を計算する(ステップ250)ループからいつ抜けるかを決定する。このループは、データ・フレーム全体が並び替えられた時に抜けるように調整されている。ループはまた、受信されたデータ・フレームまたは送信されたデータ・フレームの一部をインターリーブするように適合されることもできる。
【0021】
図2bでは、ステップ400において、ブロック長N2を表すパラメータを定義する。ビット・シーケンスを記憶するための配列が、サイズN2に持つよう定義され、初期化される(ステップ410)。次に、N2より大きい素数P2が定義される(ステップ420)。ステップ430において、α2と呼ばれるP 2の原始根を定義する。カウンタn2が定義され、値1に初期化される(ステップ440)。カウンタn2は、ループを1回通るたびにインクリメントされる(ステップ470)。ステップ460に示されるように、カウンタは、データ・フレームにおけるそれぞれのシンボルについて、ビット・シーケンスi2(n2)を計算する(ステップ450)ループからいつ抜けるかを決定する。このループは、データ・フレーム全体が並び替えられたときに抜けるように調整されている。このループはまた、受信されたデータ・フレームまたは送信されたデータ・フレームの一部をインターリーブするよう適合されることもできる。
【0022】
第2の実施形態におけるFH(周波数ホッピング)インターリーバは、ブロック長(すなわち、データ・フレームのサイズ)が長さNであると想定する。さらに、Nより大きい素数Pが存在する。この素数は、Nより大きい素数のうち最小の素数であることが好ましいが、必ずしもそうである必要はない。ある素数が与えられると、従来の方法を用いて、原始根αを見つけることができる。例えば、N=256である場合、P=257で、α=3となる。上記のパラメータを使うと、FHインターリーバについてのビット・シーケンス生成は、次式で定義される。
【0023】
【数2】
i(n)=α^(n)mod(P)
ただし、n=1,2,...,P−1かつi(n)≦N
【0024】
図3は、ソフトウェアまたはハードウェアのいずれにおいても実現されることのできる上記の実施形態を示す。ステップ300においては、ブロック長Nを表すパラメータを定義する。ビット・シーケンスを記憶するための配列が、サイズNを持つよう定義され、初期化される(ステップ310)。次に、Nより大きな素数Pが定義される(ステップ320)。ステップ330では、αと呼ばれるPの原始根を定義する。カウンタnが定義され、値1に初期化される(ステップ340)。カウンタnは、ループを1回通るたびにインクリメントされる(ステップ370)。ステップ360で示されるように、このカウンタは、データ・フレームにおけるそれぞれのシンボルについて、ビット・シーケンスi(n)を計算する(ステップ350)ループをいつ抜けるかを決定する。このループは、データ・フレーム全体が並び替えられたときに抜けるように調整されている。このループは、受信されたデータ・フレームまたは送信されたデータ・フレームの一部をインターリーブするよう適合されることもできる。
【0025】
配列i(n)、i1(n1)、i2(n2)について任意の初期値を使用することができ、かつこのことが本発明の範囲に含まれるということは、当業者には理解されよう。例えば、初期データは、0...、1...、2...、などでもよく、または、異なる初期データでテンプレートを作ることもできる。さらに、プログラミングにおいては、通常、異なる開始値のインデックスを使用する。したがって、n、n1、n2は任意の整数であることができ、ループを抜ける条件n≦N、n1≦N1、n2≦N2は、それに従って適合されることができる。このような場合も、本発明の範囲に含まれる。
【0026】
開示されたインターリーバは、既存のターボ符号構造と互換性を有しており、現行の復号化アルゴリズムとも互換性を有している。これらのインターリーバは、システムの複雑さを増大させることなく、優れた性能を提供する。
【0027】
さらに、デインターリーバ(de-interleaver)を使用して、インターリーブされたデータ・フレームを復号することができるということは、当業者には理解されよう。ターボ符号を復号化するのに使用されるデインターリーバの構成も、当業者には周知である。そのため、ここではデインターリーバについてこれ以上論じない。したがって、第1の実施形態に対応するデインターリーバは、並び替えられたシーケンスを用いて構築することができる。デインタリービングについては、次式が成り立つ。
【0028】
【数3】
i1(n1)=α1^(n1)mod(P1)
ただし、n1=1,2,...,P1−1、かつi1(n1)≦N1
i2(n2)=α2^(n2)mod(P2)
ただし、n2=1,2,...,P2−1、かつi2(n2)≦N2
【0029】
第2の実施形態に対応するデインターリーバも、並び替えられたシーケンスを用いて構築することができる。このデインタリービングについては、次式が成り立つ。
【0030】
【数4】
i(n)=α^(n)mod(P)
ただしn=1,2,...,P−1、かつi(n)≦N
【0031】
このように、本発明が、これまでの説明によって明らかにされたように、前述した目的を効率よく達成することが分かるであろう。本発明は、特に、符号をインターリーブするシステムおよび方法を提供する。
【0032】
上記の構造、および前述の動作シーケンスが、本発明の範囲から逸脱することなく変更されることができるということは理解されよう。したがって、前述の説明に含まれる、または図面に示されたすべての事項は、限定的ではなく例示的なものと解釈すべきである。
【0033】
また特許請求の範囲は、本明細書で説明した本発明の包括的および特定の特徴をすべて、および本発明の範囲のすべてをカバーするよう意図されていることが理解されよう
【図面の簡単な説明】
【図1】通常のターボ符号器を示す図。
【図2a】本発明の一実施形態に従う、ターボ符号のための改良型インターリーバの動作を示するフローチャート。
【図2b】本発明の一実施形態に従う、ターボ符号のための改良型インターリーバの動作を示すフローチャート。
【図3】本発明に他の実施形態に従う、ターボ符号のための改良型インターリーバの動作を示すフローチャート。
Claims (34)
- 予め決められたサイズを有するデータ・フレームの複数の部分をインターリーブする装置であって、
前記データ・フレームを受信して記憶する手段と、
前記データ・フレームを、前記複数の部分に分離する手段と、
i(n)=αnmod(P)に従って、前記複数の部分を並び替える手段であって、Pは、前記データ・フレームの前記予め決められたサイズより大きい素数であり、nは、1からP−1までの範囲にある整数であり、αは、Pの原始根であり、該P、n、およびαにより、i(n)は、1と前記予め決められたサイズとの間にある一意の数とされる、手段と、
を備える、装置。 - 前記複数の部分は、予め決められたサイズを有し、該予め決められたサイズは、少なくとも1ビットである、
請求項1に記載の装置。 - 前記並び替える手段は、ASIC(特定用途向けIC)を使用して達成される、
請求項1に記載の装置。 - 前記並び替える手段は、マイクロプロセッサを使用して達成される、
請求項1に記載の装置。 - 前記並び替える手段は、ソフトウェアを使用して達成される、
請求項1に記載の装置。 - さらに、
前記並び替える手段により並び替えられたシーケンスに従って、前記複数の部分をデインターリーブする手段を備える、
請求項1に記載の装置。 - さらに、
前記データ・フレームを受信して記憶する手段は、予め決められた行サイズを有する複数の行および予め決められた列サイズを有する複数の列によりインデックス付けされた前記データ・フレームを受信して記憶するよう構成されたメモリを含み、該予め決められた行サイズと該予め決められた列サイズの積は、該データ・フレームの前記予め決められたサイズに等しく、
前記分離する手段は、前記メモリに接続されたプロセッサを含んでおり、
該プロセッサは、前記データ・フレームを前記複数の部分に分離し、i1(n1)=α1^(n1)mod(P1)に従って、前記複数の行によりインデックス付けされた前記複数の部分が並び替えられたシーケンスを生成するよう構成されており、P1は、前記予め決められた行サイズより大きい素数であり、n1は、1からP1−1までの範囲にある整数であり、α1は、P1の原始根であり、該P1、n1およびα1により、i1(n1)は、1と前記予め決められた行サイズとの間にある一意の数とされ、
さらに、該プロセッサは、i2(n2)=α2^(n2)mod(P2)に従って、前記複数の列によりインデックス付けされた前記複数の部分が並び替えられたシーケンスを生成するよう構成されており、P2は、前記予め決められた列サイズより大きい素数であり、n2は、1からP2−1までの範囲にある整数であり、α2は、P2の原始根であり、該P2、n2およびα2により、i2(n2)は、1と前記予め決められた列サイズとの間にある一意の数とされ、
該プロセッサによる、前記複数の部分が並び替えられたシーケンスの生成により、前記データ・フレームの該複数の部分がインターリーブされる、
請求項1に記載の装置。 - 前記複数の部分は、予め決められたサイズを有し、該予め決められたサイズは、少なくとも1ビットである、
請求項7に記載の装置。 - 前記プロセッサは、ASIC(特定用途向けIC)である、
請求項7に記載の装置。 - さらに、前記並び替えられたシーケンスi1(n1)=α1^(n1)mod(P1)に従って、前記複数の行によりインデックス付けされた前記複数の部分をデインターリーブするデインターリーバを備える、
請求項7に記載の装置。 - さらに、前記並び替えられたシーケンスi2(n2)=α2^(n2)mod(P2)に従って、前記複数の列によりインデックス付けされた前記複数の部分をデインターリーブするデインターリーバを備える、
請求項7に記載の装置。 - 前記データ・フレームを受信して記憶する手段は、該データ・フレームを受信して記憶するよう構成されたメモリを含み、
前記分離する手段は、前記メモリに接続されたプロセッサを含んでおり、該プロセッサは、前記データ・フレームを前記複数の部分に分離し、i(n)=αnmod(P)に従って、該複数の部分が並び替えられたシーケンスを生成し、
Pは、前記データ・フレームの前記予め決められたサイズより大きい素数であり、nは、1からP−1までの範囲にある整数であり、αは、Pの原始根であり、該P、nおよびαにより、i(n)は、1と前記予め決められたサイズとの間にある一意の数とされ、
該プロセッサによる該複数の部分が並び替えられたシーケンスの生成により、該データ・フレームの該複数の部分がインターリーブされる、
請求項1に記載の装置。 - 前記複数の部分は、予め決められたサイズを有し、該予め決められたサイズは、少なくとも1ビットである、
請求項12に記載の装置。 - 前記プロセッサは、ASIC(特定用途向けIC)である、
請求項12に記載の装置。 - さらに、
前記並び替えられたシーケンスに従って、前記複数の部分をデインターリーブするデインターリーバを備える、
請求項12に記載の装置。 - さらに、
予め決められた行サイズを有する複数の行および予め決められた列サイズを有する複数の列により前記データ・フレームをインデックス付けする手段であって、該予め決められた行サイズと該予め決められた列サイズの積は、該データ・フレームの前記予め決められたサイズに等しい、手段と、
i1(n1)=α1^(n1)mod(P1)に従って、前記複数の行によりインデックス付けされた前記複数の部分を並び替える手段であって、P1は、前記予め決められた行サイズより大きい素数であり、n1は、1からP1−1までの範囲にある整数であり、α1は、P1の原始根であり、該P1、n1およびα1により、i1(n1)は、1と前記予め決められた行サイズとの間にある一意の数とされる、第1の並び替える手段と、
i2(n2)=α2^(n2)mod(P2)に従って、前記複数の列によりインデックス付けされた前記複数の部分を並び替える手段であって、P2は、前記予め決められた列サイズより大きい素数であり、n2は、1からP2−1までの範囲にある整数であり、α2は、P2の原始根であり、該P2、n2およびα2により、i2(n2)は、1と前記予め決められた列サイズとの間にある一意の数とされる、第2の並び替える手段と、
を備える、請求項1に記載の装置。 - 前記複数の部分は、予め決められたサイズを有し、該予め決められたサイズは、少なくとも1ビットである、
請求項16に記載の装置。 - 前記第1および第2の並び替える手段は、ASIC(特定用途向けIC)を使用して達成される、
請求項16に記載の装置。 - 前記第1および第2の並び替える手段は、マイクロプロセッサを使用して達成される、
請求項16に記載の装置。 - 前記第1および第2の並び替える手段は、ソフトウェアを使用して達成される、
請求項16に記載の装置。 - さらに、
前記第1の並び替える手段により並び替えられたシーケンスi1(n1)=α1^(n1)mod(P1)に従って、前記複数の行によりインデックス付けされた前記複数の部分をデインターリーブするデインターリーバ手段を備える、
請求項16に記載の装置。 - さらに、前記第2の並び替える手段により並び替えられたシーケンスi2(n2)=α2^(n2)mod(P2)に従って、前記複数の列によりインデックス付けされた前記複数の部分をデインターリーブするデインターリーバ手段を備える、
請求項16に記載の装置。 - 予め決められたサイズを有するデータ・フレームの複数の部分をインターリーブする方法であって、
前記データ・フレームを受信して記憶するステップと、
前記データ・フレームを前記複数の部分に分離するステップと、
i(n)=αnmod(P)に従って、前記複数の部分を並び替えるステップであって、Pは、前記データ・フレームの予め決められたサイズより大きい素数であり、nは、1からP−1までの範囲にある整数であり、αは、Pの原始根であり、該P、nおよびαにより、i(n)は、1と前記データ・フレームの前記予め決められたサイズとの間にある一意の数とされる、ステップと、
を含む、方法。 - 前記複数の部分は、予め決められたサイズを有し、該予め決められたサイズは、少なくとも1ビットである、
請求項23に記載の方法。 - 前記並び替えるステップは、ASIC(特定用途向けIC)を使用して達成される、
請求項23に記載の方法。 - 前記並び替えるステップは、マイクロプロセッサを使用して達成される、
請求項23に記載の方法。 - 前記並び替えるステップは、ソフトウェアを使用して達成される、
請求項23に記載の方法。 - さらに、
予め決められた行サイズを有する複数の行および予め決められた列サイズを有する複数の列により前記データ・フレームをインデックス付けするステップであって、該予め決められた行サイズと該予め決められた列サイズの積は、該データ・フレームの予め決められたサイズに等しい、ステップと、
i1(n1)=α1^(n1)mod(P1)に従って、前記複数の行によりインデックス付けされた前記複数の部分を並び替えるステップであって、P1は、前記予め決められた行サイズより大きい素数であり、n1は、1からP1−1までの範囲にある整数であり、α1は、P1の原始根であり、該P1、n1、およびα1により、i1(n1)は、1と前記予め決められた行サイズとの間にある一意の数とされる、第1の並び替えステップと、
i2(n2)=α2^(n2)mod(P2)に従って、前記複数の列によりインデックス付けされた前記複数の部分を並び替えるステップであって、P2は、前記予め決められた列サイズより大きい素数であり、n2は、1からP2−1までの範囲にある整数であり、α2は、P2の原始根であり、該P2、n2、およびα2により、i2(n2)は、1と前記予め決められた列サイズとの間にある一意の数とされる、第2の並び替えステップと、を含み、
前記第1および第2の並び替えステップにより、前記データ・フレームの前記複数の部分がインターリーブされる、請求項23に記載の方法。 - 前記複数の部分は、予め決められたサイズを有し、該予め決められたサイズは、少なくとも1ビットである、
請求項28に記載の方法。 - 前記第1および第2の並び替えステップは、ASIC(特定用途向けIC)を使用して達成される、
請求項28に記載の方法。 - 前記第1および第2の並び替えステップは、マイクロプロセッサを使用して達成される、
請求項28に記載の方法。 - 前記第1および第2の並び替えステップは、ソフトウェアを使用して達成される、
請求項28に記載の方法。 - さらに、前記第1の並び替えステップにより並び替えられたシーケンスi1(n1)=α1^(n1)mod(P1)に従って、前記複数の行によりインデックス付けされた前記複数の部分をデインターリーブするステップを含む、
請求項28に記載の方法。 - さらに、前記第2の並び替えステップにより並び替えられたシーケンスi2(n2)=α2^(n2)mod(P2)に従って、前記複数の列によりインデックス付けされた前記複数の部分をデインターリーブするステップを含む、
請求項28に記載の方法。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US9508598P | 1998-08-03 | 1998-08-03 | |
US60/095,085 | 1998-08-03 | ||
US09/196,461 US6347385B1 (en) | 1998-08-03 | 1998-11-19 | Interleavers for turbo code |
US09/196,461 | 1998-11-19 | ||
PCT/IB1999/001369 WO2000008770A1 (en) | 1998-08-03 | 1999-08-02 | Improved interleavers for turbo code |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2002522945A JP2002522945A (ja) | 2002-07-23 |
JP2002522945A5 JP2002522945A5 (ja) | 2006-08-17 |
JP4309586B2 true JP4309586B2 (ja) | 2009-08-05 |
Family
ID=26789705
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000564307A Expired - Lifetime JP4309586B2 (ja) | 1998-08-03 | 1999-08-02 | ターボ符号のための改良型インターリーバ |
Country Status (10)
Country | Link |
---|---|
US (1) | US6347385B1 (ja) |
EP (1) | EP1103102B1 (ja) |
JP (1) | JP4309586B2 (ja) |
CN (1) | CN1140060C (ja) |
BR (1) | BR9912670B1 (ja) |
CA (1) | CA2337916C (ja) |
DE (1) | DE69905255T2 (ja) |
HK (1) | HK1038448A1 (ja) |
MX (1) | MXPA01000897A (ja) |
WO (1) | WO2000008770A1 (ja) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7536624B2 (en) * | 2002-01-03 | 2009-05-19 | The Directv Group, Inc. | Sets of rate-compatible universal turbo codes nearly optimized over various rates and interleaver sizes |
US6430722B1 (en) * | 1998-01-23 | 2002-08-06 | Hughes Electronics Corporation | Forward error correction scheme for data channels using universal turbo codes |
JP3453122B2 (ja) * | 1998-08-17 | 2003-10-06 | ヒューズ・エレクトロニクス・コーポレーション | 最適性能に近いターボコードインターリーバ |
WO2000013323A1 (en) | 1998-08-27 | 2000-03-09 | Hughes Electronics Corporation | Method for a general turbo code trellis termination |
CA2298919C (en) | 1999-02-19 | 2006-04-18 | Ntt Mobile Communications Network Inc. | Interleaving and turbo encoding using prime number permutations |
US6543013B1 (en) * | 1999-04-14 | 2003-04-01 | Nortel Networks Limited | Intra-row permutation for turbo code |
FI106758B (fi) * | 1999-04-16 | 2001-03-30 | Nokia Networks Oy | Segmentointimekanismi lohkoenkooderia varten |
IL141800A0 (en) * | 1999-07-06 | 2002-03-10 | Samsung Electronics Co Ltd | Rate matching device and method for a data communication system |
CA2550761C (en) * | 1999-07-08 | 2009-05-26 | Nortel Networks Limited | Puncturing of convolutional codes |
US6625763B1 (en) * | 2000-07-05 | 2003-09-23 | 3G.Com, Inc. | Block interleaver and de-interleaver with buffer to reduce power consumption |
KR100361033B1 (ko) * | 2001-01-16 | 2003-01-24 | 한국과학기술원 | 비균일 반복부호를 바탕으로 한 터보부호를 쓰는다중반송파 직접수열 부호분할 다중접속 시스템 |
US7068701B2 (en) * | 2001-04-16 | 2006-06-27 | Motorola, Inc. | Data transmission and reception within a spread-spectrum communication system |
JP3624874B2 (ja) * | 2001-11-19 | 2005-03-02 | 日本電気株式会社 | インターリービング順序発生器、インターリーバ、ターボエンコーダ、及びターボデコーダ |
US7091889B2 (en) | 2002-09-09 | 2006-08-15 | Telefonaktiebolaget Lm Ericsson (Publ) | Speed and memory optimized interleaving |
US7068703B2 (en) * | 2003-02-18 | 2006-06-27 | Qualcomm, Incorporated | Frequency hop sequences for multi-band communication systems |
US7600164B2 (en) * | 2004-12-17 | 2009-10-06 | Telefonaktiebolaget Lm Ericsson (Publ) | Interleaving/de-interleaving using compressed bit-mapping sequences |
US8082479B2 (en) * | 2006-02-02 | 2011-12-20 | Qualcomm Incorporated | Methods and apparatus for generating permutations |
US7925956B2 (en) * | 2006-10-03 | 2011-04-12 | Motorola Mobility, Inc. | Method and apparatus for encoding and decoding data |
US8356232B2 (en) * | 2006-10-06 | 2013-01-15 | Motorola Mobility Llc | Method and apparatus for encoding and decoding data |
US7949926B2 (en) * | 2006-11-30 | 2011-05-24 | Motorola Mobility, Inc. | Method and apparatus for encoding and decoding data |
US7853858B2 (en) * | 2006-12-28 | 2010-12-14 | Intel Corporation | Efficient CTC encoders and methods |
US8693570B2 (en) * | 2008-10-31 | 2014-04-08 | Industrial Technology Research Institute | Communication methods and systems having data permutation |
WO2018187902A1 (en) | 2017-04-10 | 2018-10-18 | Qualcomm Incorporated | An efficient interleaver design for polar codes |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4394642A (en) | 1981-09-21 | 1983-07-19 | Sperry Corporation | Apparatus for interleaving and de-interleaving data |
JPH0697542B2 (ja) * | 1985-05-14 | 1994-11-30 | 松下電器産業株式会社 | インタ−リ−ブ回路 |
FR2592258B1 (fr) | 1985-12-23 | 1991-05-03 | Thomson Csf | Procede et dispositif de transmission radioelectrique d'informations codees, resistant au brouillage |
JPS6437125A (en) | 1987-07-31 | 1989-02-07 | Csk Corp | Cross coding method and device therefor |
FR2675971B1 (fr) | 1991-04-23 | 1993-08-06 | France Telecom | Procede de codage correcteur d'erreurs a au moins deux codages convolutifs systematiques en parallele, procede de decodage iteratif, module de decodage et decodeur correspondants. |
FR2706054B1 (fr) | 1993-06-02 | 1995-07-13 | Alcatel Mobile Comm France | Procédé d'entrelacement d'une séquence d'éléments de données, et dispositif d'entrelacement correspondant. |
US5483541A (en) | 1993-09-13 | 1996-01-09 | Trw Inc. | Permuted interleaver |
FR2737363B1 (fr) | 1995-07-27 | 1997-09-05 | France Telecom | Entrelacement/desentrelacement d'elements de donnees |
US5764649A (en) * | 1996-03-29 | 1998-06-09 | Amati Communications Corporation | Efficient address generation for convolutional interleaving using a minimal amount of memory |
KR100192797B1 (ko) * | 1996-07-01 | 1999-06-15 | 전주범 | 정적 램을 이용한 길쌈인터리버의 구조 |
US5754565A (en) | 1996-10-15 | 1998-05-19 | Quantum Corporation | Reconstruction of syndromes for bi-level on-the-fly error correction in disk drive systems |
ATE292336T1 (de) * | 1997-01-31 | 2005-04-15 | Cit Alcatel | Verfahren und geräte zur schachtelung/entschachtelung von digitalen daten und kommunikationssystem |
-
1998
- 1998-11-19 US US09/196,461 patent/US6347385B1/en not_active Expired - Lifetime
-
1999
- 1999-08-02 DE DE69905255T patent/DE69905255T2/de not_active Expired - Lifetime
- 1999-08-02 BR BRPI9912670-2A patent/BR9912670B1/pt not_active IP Right Cessation
- 1999-08-02 JP JP2000564307A patent/JP4309586B2/ja not_active Expired - Lifetime
- 1999-08-02 WO PCT/IB1999/001369 patent/WO2000008770A1/en active IP Right Grant
- 1999-08-02 CA CA002337916A patent/CA2337916C/en not_active Expired - Lifetime
- 1999-08-02 EP EP99931422A patent/EP1103102B1/en not_active Expired - Lifetime
- 1999-08-02 CN CNB998093084A patent/CN1140060C/zh not_active Expired - Lifetime
- 1999-08-02 MX MXPA01000897A patent/MXPA01000897A/es active IP Right Grant
-
2001
- 2001-12-31 HK HK01109223A patent/HK1038448A1/xx not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
EP1103102B1 (en) | 2003-02-05 |
MXPA01000897A (es) | 2004-07-30 |
CN1140060C (zh) | 2004-02-25 |
BR9912670A (pt) | 2001-05-02 |
DE69905255T2 (de) | 2003-09-11 |
CN1311922A (zh) | 2001-09-05 |
BR9912670B1 (pt) | 2012-09-04 |
JP2002522945A (ja) | 2002-07-23 |
CA2337916A1 (en) | 2000-02-17 |
HK1038448A1 (en) | 2002-03-15 |
US6347385B1 (en) | 2002-02-12 |
EP1103102A1 (en) | 2001-05-30 |
WO2000008770A1 (en) | 2000-02-17 |
DE69905255D1 (de) | 2003-03-13 |
CA2337916C (en) | 2006-05-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4309586B2 (ja) | ターボ符号のための改良型インターリーバ | |
US6289486B1 (en) | Adaptive channel encoding method and device | |
CA2295791C (en) | Adaptive channel encoding method and device | |
EP1046236B1 (en) | Turbo code interleaver with near optimal performance | |
JP4955049B2 (ja) | ターボ符号化のためのブロック・インターリーブ | |
RU2313177C2 (ru) | Турбодекодер, использующий линейные конгруэнтные последовательности | |
US8543884B2 (en) | Communications channel parallel interleaver and de-interleaver | |
US6857087B2 (en) | High-performance low-memory interleaver banks for turbo-codes | |
US6697990B2 (en) | Interleaver design for parsed parallel concatenated codes | |
JP4298175B2 (ja) | ターボ符号のための行内並べ替え | |
EP1118160A1 (en) | Interleaver using co-set partitioning | |
EP1098445B1 (en) | Interleaving method for the turbocoding of data | |
JP2004533175A (ja) | 相補的エンコーダ/デコーダに対する方法及び装置 | |
JP2004527142A (ja) | 循環冗長符号シグネチャ比較を行うターボ復号器 | |
US7886203B2 (en) | Method and apparatus for bit interleaving and deinterleaving in wireless communication systems | |
EP1610467A1 (en) | Efficient address generation for Forney's modular periodic interleavers | |
KR100297739B1 (ko) | 다중테일을갖는터보코드및그의부호화/복호화방법및그를이용한부호기/복호기 | |
KR100454952B1 (ko) | 적응형채널부호화방법및장치 | |
Raje et al. | Review paper on study of various Interleavers and their significance |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060626 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060626 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20081031 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081111 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090209 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090212 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090217 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090428 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090508 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4309586 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120515 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130515 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130515 Year of fee payment: 4 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130515 Year of fee payment: 4 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: R3D02 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130515 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |