JP2009077154A - ターボ符号化装置、ターボ符号化方法及び通信システム - Google Patents
ターボ符号化装置、ターボ符号化方法及び通信システム Download PDFInfo
- Publication number
- JP2009077154A JP2009077154A JP2007244169A JP2007244169A JP2009077154A JP 2009077154 A JP2009077154 A JP 2009077154A JP 2007244169 A JP2007244169 A JP 2007244169A JP 2007244169 A JP2007244169 A JP 2007244169A JP 2009077154 A JP2009077154 A JP 2009077154A
- Authority
- JP
- Japan
- Prior art keywords
- bits
- information
- sequence
- interleave
- bit
- 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.)
- Pending
Links
Images
Landscapes
- Error Detection And Correction (AREA)
Abstract
【解決手段】連続する2つの逆インタリーブ位置を加減算処理と比較計算処理を実施するだけで算出する逆インタリーブ生成器2と、逆インタリーブ生成器2により算出された逆インタリーブ位置に複数の情報ビットを配置してターボ符号のインタリーブ系列を生成するメモリIF3とを設ける。
【選択図】図1
Description
ここで、情報ビットの非インタリーブ系列は、入力される情報ビットのビット列であり、インタリーブ系列は、入力される情報ビットのビット列がターボ符号で規定されているインタリーバにしたがって並び替えられたビット列である。
また、「3GPP TS36.212」の規格で規定されているターボ符号の場合、夫々の全ビット列を入力した後、テイルビットと呼ばれるパリティビットを生成する。
したがって、このターボ符号は、情報ビット系列、パリティ1ビット系列、パリティ2ビット系列及びテイルビット系列から構成される。
したがって、例えば、Kビットの情報ビットを全て符号化するには、2×(K+T)ステップの処理が必要となる。
nビットずつパリティビットを生成する場合、1ビットずつ情報ビットを入力して、1ビットずつパリティビットを生成する場合と比べて、畳み込み符号化の処理時間が1/nの時間になる。
ここで、π(t)番目の情報ビットをt番目の位置に並び替える操作をインタリーブと称し、インタリーブ前の位置が“s”であれば、インタリーブ位置はs=π(t)で表記される。
また、インタリーブ後にπ-1(s)番目にある情報ビットを元の位置に戻す操作を逆インタリーブと称し、逆インタリーブ位置はt=π-1(s)で表記される。
なお、全てのインタリーブ位置の集合をインタリーバと称する。
複数のインタリーブ位置もしくは逆インタリーブ位置を得ることができるようにするには、予め、全てのインタリーブ位置もしくは逆インタリーブ位置を算出してメモリに格納しておく必要がある。
なお、「3GPP TS36.212」の規格で規定されているQPP(Quadratic Polynomial Permutation)インタリーバでは、規定の2次多項式を計算することによって、複数のインタリーブ位置もしくは逆インタリーブ位置を同時に得ることが可能であるが、2次多項式を計算することができるようにするには、規模が大きな回路を実装する必要がある。
図1はこの発明の実施の形態1によるターボ符号化装置を示す構成図である。
この実施の形態1では、ターボ符号化装置がパリティ1ビット(ターボ符号の非インタリーブ系列から生成されるパリティビット)とパリティ2ビット(ターボ符号のインタリーブ系列から生成されるパリティビット)をそれぞれ2ビットずつ生成する例を説明し、nビット(n≧3)ずつ生成する例は後述する。
図において、成分符号化器1は情報ビット系列の先頭から情報ビットを2ビットずつ入力し、2ビットの情報ビットに対する畳み込み符号化を実施してターボ符号の非インタリーブ系列のパリティ1ビットを2ビットずつ生成する処理を実施する。なお、成分符号化器1は第1の符号化手段を構成している。
なお、逆インタリーブ生成器2は逆インタリーブ位置算出手段を構成している。
メモリ4はターボ符号のインタリーブ系列を記録する記憶媒体である。
なお、メモリIF3及びメモリ4からインタリーブ系列生成手段が構成されている。
加算器22は入力A(偶数番目(2×t)の情報ビット:0,2,4,・・・,K−2番目の情報ビット)と、遅延素子24により1クロック分遅延された情報ビットと、遅延素子25により1クロック分遅延された情報ビットとを加算して、加算後の情報ビットを遅延素子24に出力する。
遅延素子24は加算器22から出力された加算後の情報ビットを1クロック分だけ保持して、その情報ビットを加算器21,22,26に出力する。
遅延素子25は遅延素子23から出力された情報ビットを1クロック分だけ保持して、その情報ビットを加算器22,27に出力する。
加算器27は入力B(奇数番目(2×t+1)の情報ビット:1,3,5,・・・,K−1番目の情報ビット)と、加算器26から出力された加算後の情報ビットと、遅延素子25により1クロック分遅延された情報ビットとを加算し、加算後の情報ビットをパリティビットB(入力Bに対応するパリティビット)として出力する。
図3はこの発明の実施の形態1によるターボ符号化装置の処理内容を示すフローチャートであり、図4はこの発明の実施の形態1によるターボ符号化装置の処理タイミングを示すタイミングチャートである。
この実施の形態1では、説明の便宜上、情報ビット系列の情報長(情報ビット数)がKビット、1つの畳み込み符号化で生成するテイルビット数がTビットであるとする。
成分符号化器1は、情報長Kの情報ビット系列の先頭から情報ビットを2ビットずつ入力し(ステップST1)、2ビットの情報ビットに対する畳み込み符号化を実施してターボ符号の非インタリーブ系列のパリティ1ビットを2ビットずつ生成する(ステップST2)。
これにより、畳み込み符号化結果として、パリティ1ビット(ターボ符号の非インタリーブ系列から生成されるパリティビット)が2ビットずつ生成される。
即ち、入力Aに対応するパリティビットA(パリティ1ビット)が加算器26から出力され、入力Bに対応するパリティビットB(パリティ1ビット)が加算器27から出力される。
成分符号化器1は、2ビットの情報ビットに対する畳み込み符号化を実施してパリティ1ビットを生成すると、テイルビットと呼ばれるTビットのパリティビットを生成して、そのテイルビットを出力する。
また、成分符号化器1がKビットのパリティ1ビットの生成に要するステップ数は、K/2ステップであり、情報ビット系列の入力と同じタイミングで実施する。
また、成分符号化器1がTビットのテイルビットの生成に要するステップ数は、Tステップであり、パリティ1ビットの生成後に実施する。
即ち、逆インタリーブ生成器2は、ターボ符号の逆インタリーバとして、「3GPP TS36.212」の規格で規定されているQPP(Quadratic Polynomial Permutation)方式を用いて、偶数番目(2×t)の情報ビットの逆インタリーブ位置π-1(2×t)と、奇数番目(2×t+1)の情報ビットの逆インタリーブ位置π-1(2×t+1)とを算出する。
π(t)=(f1×t)+(f2×t×t) mod K (1)
ただし、f1,f2は、ターボ符号の情報長Kに依存して定められている整数値であり、“mod”は、剰余計算を表す記号である。
したがって、連続している偶数番目と奇数番目の情報ビットのインタリーブ位置、即ち、π(0)とπ(1),π(2)とπ(3),π(4)とπ(5),・・・は、式(1)で2つずつ計算してもよいが、式(1)では、複雑で回路規模が大きくなる乗算計算と剰余計算を実行する必要がある。
また、QPPインタリーバの逆インタリーバは、インタリーバと同様な2次多項式で表現することができる。
π-1(s)=(h1×t)+(h2×t×t) mod K (2)
ただし、h1,h2は、ターボ符号の情報長K,f1,f2に依存して定められている整数値である。
したがって、連続している偶数番目と奇数番目のインタリーブ位置(π(0)とπ(1),π(2)とπ(3),π(4)とπ(5),・・・)、もしくは、連続している偶数番目と奇数番目の逆インタリーブ位置(π-1(0)とπ-1(1),π-1(2)とπ-1(3),π-1(4)とπ-1(5),・・・)は、式(1)、式(2)を用いて、2つずつ計算してもよいが、式(1)、式(2)では、複雑で回路規模が大きくなる乗算計算と剰余計算を実行する必要がある。
そこで、この実施の形態1では、逆インタリーブ生成器2が、以下の加減算処理と比較計算処理を実施することで、逐次的に逆インタリーブ位置を得るようにしている。
(1)偶数番号の逆インタリーブ位置
偶数番号:π-1(2×(t+1))=π-1(2×t)+a(t)
If π-1(2×(t+1)) ≧ K
π-1(2×(t+1))=π-1(2×(t+1))−K
a(t+1)=a(t)+8×h2
If a(t+1) ≧ K
a(t+1)=a(t+1)−K
ただし、π-1(0)=0、a(0)=2×h1+4×h2
(2)奇数番号の逆インタリーブ位置
奇数番号:π-1(2×(t+1)+1)=π-1(2×t+1)+b(t)
If π-1(2×t) ≧ K
π-1(2×t)=π-1(2×t)−K
b(t+1)=b(t)+8×h2
If (b(t+1) ≧ K
b(t+1)=b(t+1)−K
ただし、π(0)=0、a(0)=2×h1+8×h2
なお、情報ビット系列の情報長(情報ビット数)がKビットである場合、図4に示すように、逆インタリーブ生成器2が逆インタリーブ位置の算出に要するステップ数は、K/2ステップである。
なお、情報ビット系列の情報長(情報ビット数)がKビットである場合、図4に示すように、メモリIF3が情報ビットをメモリ4に記録して、Kビットのインタリーブ系列の生成に要するステップ数は、K/2ステップである。
全ての情報ビットの入力が終わると、メモリ4にはインタリーブ系列が格納されており、インタリーブ系列の畳み込み符号化を実施する場合、インタリーブ系列の先頭から順番に、インタリーブされた情報ビットを読み出せばよい。
成分符号化器5は、Kビットのインタリーブ系列の先頭から情報ビットを2ビットずつ入力し、2ビットの情報ビットに対する畳み込み符号化を実施してターボ符号のインタリーブ系列のパリティ2ビットを2ビットずつ生成する(ステップST5)。
即ち、成分符号化器5の加算器22,26が偶数番目(2×t)の情報ビットである0,2,4,・・・,K−2番目の情報ビットを順次入力し、加算器21,27が奇数番目(2×t+1)の情報ビットである1,3,5,・・・,K−1番目の情報ビットを順次入力し、各々の加算器21,22,26,27が情報ビットの加算処理を実施することにより、2ビットの情報ビットに対する畳み込み符号化を実施する。
即ち、入力Aに対応するパリティビットA(パリティ2ビット)が加算器26から出力され、入力Bに対応するパリティビットB(パリティ2ビット)が加算器27から出力される。
成分符号化器5は、2ビットの情報ビットに対する畳み込み符号化を実施してパリティ2ビットを生成すると、テイルビットと呼ばれるTビットのパリティビットを生成して、そのテイルビットを出力する。
また、成分符号化器5がTビットのテイルビットの生成に要するステップ数は、Tステップであり、パリティ2ビットの生成後に実施する。
なお、インタリーブ系列の情報長(情報ビット数)がKビットである場合、図4に示すように、K+Tステップ(=K/2+K/2+Tステップ)で、符号化処理を完了することができる。
図5はこの発明の実施の形態2によるターボ符号化装置を示す構成図である。
この実施の形態2では、ターボ符号化装置がパリティ1ビットとパリティ2ビットをそれぞれ2ビットずつ生成する例を説明し、nビット(n≧3)ずつ生成する例は後述する。
図において、成分符号化器11は情報ビット系列の先頭から情報ビットを2ビットずつ入力し、2ビットの情報ビットに対する畳み込み符号化を実施してターボ符号の非インタリーブ系列のパリティ1ビットを2ビットずつ生成する処理を実施する。なお、成分符号化器11は第1の符号化手段を構成している。
インタリーブ生成器13は「3GPP TS36.212」の規格で規定されているターボ符号のインタリーバを生成するものである。即ち、偶数番目(2×t)の情報ビットのインタリーブ位置π(2×t)と、奇数番目(2×t+1)の情報ビットのインタリーブ位置π(2×t+1)とを加減算処理と比較計算処理を実施するだけで算出する処理を実施する。ただし、t=0,1,2,3,・・・である。
なお、インタリーブ生成器13はインタリーブ位置算出手段を構成している。
成分符号化器15はメモリIF14により読み出された2ビットの情報ビットを順番に入力し、2ビットの情報ビットに対する畳み込み符号化を実施してインタリーブ系列のパリティ2ビットを2ビットずつ生成する処理を実施する。なお、成分符号化器15は第2の符号化手段を構成している。
この実施の形態2では、成分符号化器11,15の構成は図2の構成を想定しているが、図2の構成はあくまでも一例であり、成分符号化器11,15は図2の構成に限るものではない。
この実施の形態2では、説明の便宜上、情報ビット系列の情報長(情報ビット数)がKビット、1つの畳み込み符号化で生成するテイルビット数がTビットであるとする。
成分符号化器11は、情報長Kの情報ビット系列の先頭から情報ビットを2ビットずつ入力し(ステップST11)、2ビットの情報ビットに対する畳み込み符号化を実施してターボ符号の非インタリーブ系列のパリティ1ビットを2ビットずつ生成する(ステップST12)。
これにより、畳み込み符号化結果として、パリティ1ビット(ターボ符号の非インタリーブ系列から生成されるパリティビット)が2ビットずつ生成される。
即ち、入力Aに対応するパリティビットA(パリティ1ビット)が加算器26から出力され、入力Bに対応するパリティビットB(パリティ1ビット)が加算器27から出力される。
成分符号化器11は、2ビットの情報ビットに対する畳み込み符号化を実施してパリティ1ビットを生成すると、テイルビットと呼ばれるTビットのパリティビットを生成して、そのテイルビットを出力する。
また、成分符号化器11がKビットのパリティ1ビットの生成に要するステップ数は、K/2ステップであり、情報ビット系列の入力と同じタイミングで実施する。
また、成分符号化器11がTビットのテイルビットの生成に要するステップ数は、Tステップであり、パリティ1ビットの生成後に実施する。
なお、情報ビット系列の情報長(情報ビット数)がKビットである場合、図7に示すように、メモリIF14がKビットの情報ビット系列の入力及び記録に要するステップ数は、K/2ステップである。
即ち、インタリーブ生成器13は、ターボ符号のインタリーバとして、「3GPP TS36.212」の規格で規定されているQPP方式を用いて、偶数番目(2×t)の情報ビットのインタリーブ位置π(2×t)と、奇数番目(2×t+1)の情報ビットのインタリーブ位置π(2×t+1)とを算出する。
π(t)=(f1×t)+(f2×t×t) mod K (1)
ただし、f1,f2は、ターボ符号の情報長Kに依存して定められている整数値であり、“mod”は、剰余計算を表す記号である。
したがって、連続している偶数番目と奇数番目の情報ビットのインタリーブ位置、即ち、π(0)とπ(1),π(2)とπ(3),π(4)とπ(5),・・・は、式(1)で2つずつ計算してもよいが、式(1)では、複雑で回路規模が大きくなる乗算計算と剰余計算を実行する必要がある。
そこで、この実施の形態2では、インタリーブ生成器13が、以下の加減算処理と比較計算処理を実施することで、逐次的にインタリーブ位置を得るようにしている。
(1)偶数番号のインタリーブ位置
偶数番号:π(2×(t+1))=π(2×t)+a(t)
If π(2×(t+1)) ≧ K
π(2×(t+1))=π(2×(t+1))−K
a(t+1)=a(t)+8×f2
If a(t+1) ≧ K
a(t+1)=a(t+1)−K
ただし、π(0)=0、a(0)=2×f1+4×f2
(2)奇数番目のインタリーブ位置
奇数番号:π(2×(t+1)+1)=π(2×t+1)+b(t)
If π(2×t) ≧ K
π(2×t)=π(2×t)−K
b(t+1)=b(t)+8×f2
If (b(t+1) ≧ K
b(t+1)=b(t+1)−K
ただし、π(0)=0、a(0)=2×f1+8×f2
なお、情報ビット系列の情報長(情報ビット数)がKビットである場合、図7に示すように、インタリーブ生成器13がインタリーブ位置の算出に要するステップ数は、K/2ステップである。
なお、情報ビット系列の情報長(情報ビット数)がKビットである場合、図7に示すように、メモリIF14が2ビットの情報ビットの読み出しに要するステップ数は、K/2ステップである。
即ち、成分符号化器15の加算器22,26がインタリーブ位置π(2×t)にある情報ビットを順次入力し、加算器21,27がインタリーブ位置π(2×t+1)にある情報ビットを順次入力し、各々の加算器21,22,26,27が情報ビットの加算処理を実施することにより、2ビットの情報ビットに対する畳み込み符号化を実施する。
即ち、インタリーブ位置π(2×t)にある情報ビットに対応するパリティビットA(パリティ2ビット)が加算器26から出力され、インタリーブ位置π(2×t+1)にある情報ビットに対応するパリティビットB(パリティ2ビット)が加算器27から出力される。
成分符号化器15は、2ビットの情報ビットに対する畳み込み符号化を実施してパリティ2ビットを生成すると、テイルビットと呼ばれるTビットのパリティビットを生成して、そのテイルビットを出力する。
また、成分符号化器15がTビットのテイルビットの生成に要するステップ数は、Tステップであり、パリティ2ビットの生成後に実施する。
なお、インタリーブ系列の情報長(情報ビット数)がKビットである場合、図7に示すように、K+Tステップ(=K/2+K/2+Tステップ)で、符号化処理を完了することができる。
図8はこの発明の実施の形態3によるターボ符号化装置を示す構成図であり、図において、図1と同一符号は同一または相当部分を示すので説明を省略する。
メモリIF6は情報ビット系列の先頭から情報ビットを2ビットずつ入力し、2ビットの情報ビットを順番にメモリ7に格納して、その情報ビット系列である非インタリーブ系列をメモリ7に記録する処理のほか、メモリ7に記録されている非インタリーブ系列の先頭から情報ビットを2ビットずつ読み出して、その情報ビットを成分符号化器1に出力する処理を実施する。
メモリ7はターボ符号の非インタリーブ系列を記録する記憶媒体である。
この実施の形態3では、説明の便宜上、情報ビット系列の情報長(情報ビット数)がKビット、1つの畳み込み符号化で生成するテイルビット数がTビットであるとする。
メモリIF6は、情報長Kの情報ビット系列の先頭から情報ビットを2ビットずつ入力し(ステップST21)、2ビットの情報ビットを順番にメモリ7に格納(情報ビットを並べ替えずに、先頭から順番に格納)して、その情報ビット系列である非インタリーブ系列をメモリ7に記録する(ステップST22)。
なお、情報ビット系列の情報長(情報ビット数)がKビットである場合、図10に示すように、メモリIF6がKビットの情報ビット系列の入力及び記録に要するステップ数は、K/2ステップである。
即ち、逆インタリーブ生成器2は、上記実施の形態1に記述している加減算処理と比較計算処理を実施することで、逐次的に、連続している偶数番目と奇数番目の情報ビットの逆インタリーブ位置π-1(2×t),π-1(2×t+1)を算出する。
なお、情報ビット系列の情報長(情報ビット数)がKビットである場合、図10に示すように、逆インタリーブ生成器2が逆インタリーブ位置の算出に要するステップ数は、K/2ステップである。
なお、情報ビット系列の情報長(情報ビット数)がKビットである場合、図10に示すように、メモリIF3が情報ビットをメモリ4に記録して、Kビットのインタリーブ系列の生成に要するステップ数は、K/2ステップである。
全ての情報ビットの入力が終わると、メモリ4にはインタリーブ系列が格納されており、インタリーブ系列の畳み込み符号化を実施する場合、インタリーブ系列の先頭から順番に、インタリーブされた情報ビットを読み出せばよい。
成分符号化器1は、メモリIF6から2ビットずつ情報ビットを受けると、上記実施の形態1と同様に、2ビットの情報ビットに対する畳み込み符号化を実施して非インタリーブ系列のパリティ1ビットを2ビットずつ生成する(ステップST25)。
成分符号化器1は、2ビットの情報ビットに対する畳み込み符号化を実施してパリティ1ビットを生成すると、テイルビットと呼ばれるTビットのパリティビットを生成して、そのテイルビットを出力する。
また、成分符号化器1がTビットのテイルビットの生成に要するステップ数は、Tステップであり、パリティ1ビットの生成後に実施する。
成分符号化器5は、メモリIF3から2ビットずつ情報ビットを受けると、上記実施の形態1と同様に、2ビットの情報ビットに対する畳み込み符号化を実施してインタリーブ系列のパリティ2ビットを2ビットずつ生成する(ステップST26)。
成分符号化器5は、2ビットの情報ビットに対する畳み込み符号化を実施してパリティ2ビットを生成すると、テイルビットと呼ばれるTビットのパリティビットを生成して、そのテイルビットを出力する。
また、成分符号化器5がTビットのテイルビットの生成に要するステップ数は、Tステップであり、パリティ2ビットの生成後に実施する。
図11はこの発明の実施の形態4によるターボ符号化装置を示す構成図であり、図において、図5と同一符号は同一または相当部分を示すので説明を省略する。
メモリIF16は情報ビット系列の先頭から情報ビットを2ビットずつ入力し、2ビットの情報ビットを順番にメモリ17に格納して、その情報ビット系列である非インタリーブ系列をメモリ17に記録する処理のほか、メモリ17に記録されている非インタリーブ系列の先頭から情報ビットを2ビットずつ読み出して、その情報ビットを成分符号化器1に出力する処理を実施する。
メモリ17はターボ符号の非インタリーブ系列を記録する記憶媒体である。
この実施の形態4では、説明の便宜上、情報ビット系列の情報長(情報ビット数)がKビット、1つの畳み込み符号化で生成するテイルビット数がTビットであるとする。
メモリIF16は、情報長Kの情報ビット系列の先頭から情報ビットを2ビットずつ入力し(ステップST31)、2ビットの情報ビットを順番にメモリ17に格納(情報ビットを並べ替えずに、先頭から順番に格納)して、その情報ビット系列である非インタリーブ系列をメモリ17に記録する(ステップST32)。
なお、情報ビット系列の情報長(情報ビット数)がKビットである場合、図13に示すように、メモリIF16がKビットの情報ビット系列の入力及び記録に要するステップ数は、K/2ステップである。
なお、情報ビット系列の情報長(情報ビット数)がKビットである場合、図13に示すように、メモリIF14がKビットの情報ビット系列の入力及び記録に要するステップ数は、K/2ステップである。
即ち、インタリーブ生成器13は、上記実施の形態2に記述している加減算処理と比較計算処理を実施することで、逐次的に、偶数番目(2×t)の情報ビットのインタリーブ位置π(2×t)と、奇数番目(2×t+1)の情報ビットのインタリーブ位置π(2×t+1)とを算出する。
なお、情報ビット系列の情報長(情報ビット数)がKビットである場合、図13に示すように、インタリーブ生成器13がインタリーブ位置の算出に要するステップ数は、K/2ステップである。
成分符号化器11は、メモリIF16から2ビットずつ情報ビットを受けると、上記実施の形態2と同様に、2ビットの情報ビットに対する畳み込み符号化を実施して非インタリーブ系列のパリティ1ビットを2ビットずつ生成する(ステップST35)。
成分符号化器11は、2ビットの情報ビットに対する畳み込み符号化を実施してパリティ1ビットを生成すると、テイルビットと呼ばれるTビットのパリティビットを生成して、そのテイルビットを出力する。
また、成分符号化器11がTビットのテイルビットの生成に要するステップ数は、Tステップであり、パリティ1ビットの生成後に実施する。
成分符号化器15は、メモリIF14から2ビットずつ情報ビットを受けると、上記実施の形態2と同様に、2ビットの情報ビットに対する畳み込み符号化を実施してインタリーブ系列のパリティ2ビットを2ビットずつ生成する(ステップST36)。
成分符号化器15は、2ビットの情報ビットに対する畳み込み符号化を実施してパリティ2ビットを生成すると、テイルビットと呼ばれるTビットのパリティビットを生成して、そのテイルビットを出力する。
また、成分符号化器15がTビットのテイルビットの生成に要するステップ数は、Tステップであり、パリティ2ビットの生成後に実施する。
上記実施の形態1〜4では、ターボ符号化装置がパリティ1ビットとパリティ2ビットをそれぞれ2ビットずつ生成するものについて示したが、情報ビットをnビット(n≧3)ずつ入力して、nビットの情報ビットに対する畳み込み符号化を実施することにより、パリティ1ビットとパリティ2ビットをそれぞれnビットずつ生成するようにしてもよい。
このとき、n個のインタリーブ位置として、π(0)とπ(1)と・・・π(n−1),π(n)とπ(n+1)と・・・π(2×n−1),・・・を上記の式(1)を用いて、n個ずつ計算してもよいが、式(1)では、複雑で回路規模が大きくなる乗算計算と剰余計算を実行する必要がある。
そこで、この実施の形態5では、インタリーブ生成器13が、以下の計算式を用いて、逐次的にn個のインタリーブ位置を算出する。
同じjに対して、0≦q≦n−1となるn個のπ(n×j+q)が、n個のインタリーブ位置となる。
これらのインタリーブ位置は、下記のπ(q)を初期値として算出する。
π(q)=f1×n+f2×n×(n+2×q)、 0≦q≦n−1
π(n×(j+t)+q)=π(n×j+q)+c(t)
If π(n×(t+1)) ≧ K
π(n×(t+1))=π(n×(t+1))−K
c(t+1)=c(t)+2×f2×n×n
If c(t+1) ≧ K
c(t+1)=c(t)−K
なお、初期値π(q)とc(t)の式に含まれる乗算結果については、あらかじめメモリに格納し、情報長Kが決まったとき、メモリから読み出すようにする。
他の計算処理は、加減算処理又は比較計算処理であり、簡易な計算でn個のインタリーブ位置を得ることができる。
このとき、n個の逆インタリーブ位置として、π-1(0)とπ-1(1)・・・π-1(n−1),π-1(n)とπ-1(n+1)と・・・π-1(2×n−1),・・・を上記の式(2)を用いて、n個ずつ計算してもよいが、式(2)では、複雑で回路規模が大きくなる乗算計算と剰余計算を実行する必要がある。
そこで、この実施の形態5では、逆インタリーブ生成器2が、以下の計算式を用いて、逐次的にn個の逆インタリーブ位置を算出する。
同じjに対して、0≦q≦n−1となるn個のπ-1(n×j+q)が、n個の逆インタリーブ位置となる。
これらの逆インタリーブ位置は、下記のπ-1(q)を初期値として算出する。
π-1(q)=h1×n+h2×n×(n+2×q)、 0≦q≦n−1
π-1(n×(j+t)+q)=π(n×j+q)+d(t)
If π-1(n×(t+1)) ≧ K
π-1(n×(t+1))=π-1(n×(t+1))−K
d(t+1)=d(t)+2×h2×n×n
If d(t+1) ≧ K
d(t+1)=d(t)−K
なお、初期値π-1(q)とd(t)の式に含まれる乗算結果については、あらかじめメモリに格納し、情報長Kが決まったとき、メモリから読み出すようにする。
他の計算処理は、加減算処理又は比較計算処理であり、簡易な計算でn個の逆インタリーブ位置を得ることができる。
例えば、n=3の場合には、成分符号化器1,5,11,15の構成が図14のような構成となる。ただし、図14の構成はあくまでも一例であり、成分符号化器1,5,11,15は図14の構成に限るものではない。
加算器32は入力B(1,4,7,・・・,K−2番目の情報ビット)と、遅延素子34により1クロック分遅延された情報ビットと、遅延素子35により1クロック分遅延された情報ビットとを加算して、加算後の情報ビットを遅延素子35に出力する。
加算器33は入力A(0,3,6,・・・,K−3番目の情報ビット)と、遅延素子35により1クロック分遅延された情報ビットと、遅延素子36により1クロック分遅延された情報ビットとを加算して、加算後の情報ビットを遅延素子36に出力する。
遅延素子35は加算器32から出力された加算後の情報ビットを1クロック分だけ保持して、その情報ビットを加算器31,32,37,38に出力する。
遅延素子36は加算器33から出力された加算後の情報ビットを1クロック分だけ保持して、その情報ビットを加算器31,33,38,39に出力する。
加算器38は入力A(0,3,6,・・・,K−3番目の情報ビット)と、入力B(1,4,7,・・・,K−2番目の情報ビット)と、遅延素子34により1クロック分遅延された情報ビットと、遅延素子35により1クロック分遅延された情報ビットと、遅延素子36により1クロック分遅延された情報ビットとを加算し、加算後の情報ビットをパリティビットB(入力Bに対応するパリティビット)として出力する。
加算器39は入力A(0,3,6,・・・,K−3番目の情報ビット)と、入力B(1,4,7,・・・,K−2番目の情報ビット)と、入力C(2,5,8,・・・,K−1番目の情報ビット)と、遅延素子34により1クロック分遅延された情報ビットと、遅延素子36により1クロック分遅延された情報ビットとを加算し、加算後の情報ビットをパリティビットC(入力Cに対応するパリティビット)として出力する。
図15はこの発明の実施の形態6による通信システムを示す構成図であり、通信システムは送信装置40と受信装置50から構成されている。
図において、送信装置40は上記実施の形態1〜5のいずれかのターボ符号化装置41を実装しており、そのターボ符号化装置41を使用して、情報源をターボ符号化してターボ符号を生成し、そのターボ符号を変調して変調波を送信する。
受信装置50は「3GPP TS36.212」の規格で規定されたターボ符号のターボ符号復号装置51を実装しており、送信装置40から送信された変調波を受信し、その変調波からターボ符号を復調すると、そのターボ符号復号装置51を使用して、そのターボ符号を復号する。
なお、送信装置40と受信装置50の通信路は、無線でも有線でもよく、ターボ符号を利用するディジタル通信システムの全てに適用することができる。
図16はこの発明の実施の形態6による通信システムの処理内容を示すフローチャートである。
送信装置40は、例えば、データ通信対象のパケットデータである情報源を入力すると(ステップST101)、実装しているターボ符号化装置41を使用して、その情報源をターボ符号化して、ターボ符号(ターボ符号化系列:情報ビット系列、パリティ1ビット系列、パリティ2ビット系列、テイルビット系列)を生成する(ステップST102)。
送信装置40は、ターボ符号を生成すると、そのターボ符号を変調して変調波を送信する(ステップST103)。
通信路では、伝播環境に応じて変調波に雑音が付加される。
受信装置50は、ターボ符号を復調すると、実装しているターボ符号復号装置51を使用して、そのターボ符号を復号し(ステップST105)、その復号結果を例えば再生装置に出力する。
これにより、再生装置により復号結果の再生処理が実施されて(ステップST106)、情報源の再生が行われる。
図17はこの発明の実施の形態7による通信システムを示す構成図であり、通信システムは図15の送信装置40に相当する移動体端末60と、図15の受信装置50に相当する基地局70とから構成されている。
図において、移動体端末60は上記実施の形態1〜5のいずれかのターボ符号化装置61を実装しており、そのターボ符号化装置61を使用して、情報源をターボ符号化してターボ符号を生成し、そのターボ符号を変調して変調波を送信する。
なお、移動体端末60では、基地局70に送信するデータのうち、ターボ符号を利用するチャネル(例えば、Uplink Shared Channel)に割り当てられたデータ系列をターボ符号化し、そのターボ符号を生成して送信する。
基地局70は「3GPP TS36.212」の規格で規定されたターボ符号のターボ符号復号装置71を実装しており、移動体端末60から送信された変調波を受信し、その変調波からターボ符号を復調すると、そのターボ符号復号装置71を使用して、そのターボ符号を復号する。
Claims (9)
- 情報ビット系列の先頭から情報ビットを複数ビットずつ入力し、上記複数の情報ビットに対する畳み込み符号化を実施してターボ符号の非インタリーブ系列のパリティビットを複数ビットずつ生成する第1の符号化手段と、上記複数の情報ビットの逆インタリーブ位置を加減算処理と比較計算処理を実施するだけで算出する逆インタリーブ位置算出手段と、上記逆インタリーブ位置算出手段により算出された逆インタリーブ位置に上記複数の情報ビットを配置してターボ符号のインタリーブ系列を生成するインタリーブ系列生成手段と、上記インタリーブ系列生成手段により生成されたインタリーブ系列の先頭から情報ビットを複数ビットずつ入力し、上記複数の情報ビットに対する畳み込み符号化を実施してインタリーブ系列のパリティビットを複数ビットずつ生成する第2の符号化手段とを備えたターボ符号化装置。
- 情報ビット系列の先頭から情報ビットを複数ビットずつ入力し、上記複数の情報ビットに対する畳み込み符号化を実施してターボ符号の非インタリーブ系列のパリティビットを複数ビットずつ生成する第1の符号化手段と、上記情報ビット系列を格納する情報ビット系列格納手段と、上記複数の情報ビットのインタリーブ位置を加減算処理と比較計算処理を実施するだけで算出するインタリーブ位置算出手段と、上記情報ビット系列格納手段に格納されている情報ビット系列の中から、上記インタリーブ位置算出手段により算出されたインタリーブ位置にある複数の情報ビットを読み出す情報ビット読出手段と、上記情報ビット読出手段により読み出された複数の情報ビットを順番に入力し、上記複数の情報ビットに対する畳み込み符号化を実施してターボ符号のインタリーブ系列のパリティビットを複数ビットずつ生成する第2の符号化手段とを備えたターボ符号化装置。
- ターボ符号として、「3GPP TS36.212」の規格に規定されているターボ符号を取り扱うことを特徴とする請求項1または請求項2記載のターボ符号化装置。
- ターボ符号のインタリーバとしてQPP方式を採用していることを特徴とする請求項1から請求項3のうちのいずれか1項記載のターボ符号化装置。
- 第1の符号化手段が情報ビット系列の先頭から情報ビットを複数ビットずつ入力し、上記複数の情報ビットに対する畳み込み符号化を実施してターボ符号の非インタリーブ系列のパリティビットを複数ビットずつ生成する第1の符号化ステップと、逆インタリーブ位置算出手段が上記複数の情報ビットの逆インタリーブ位置を加減算処理と比較計算処理を実施するだけで算出する逆インタリーブ位置算出ステップと、インタリーブ系列生成手段が上記逆インタリーブ位置算出手段により算出された逆インタリーブ位置に上記複数の情報ビットを配置してターボ符号のインタリーブ系列を生成するインタリーブ系列生成ステップと、第2の符号化手段が上記インタリーブ系列生成手段により生成されたインタリーブ系列の先頭から情報ビットを複数ビットずつ入力し、上記複数の情報ビットに対する畳み込み符号化を実施してインタリーブ系列のパリティビットを複数ビットずつ生成する第2の符号化ステップとを備えたターボ符号化方法。
- 第1の符号化手段が情報ビット系列の先頭から情報ビットを複数ビットずつ入力し、上記複数の情報ビットに対する畳み込み符号化を実施してターボ符号の非インタリーブ系列のパリティビットを複数ビットずつ生成する第1の符号化ステップと、情報ビット系列格納手段が上記情報ビット系列を格納する情報ビット系列格納ステップと、インタリーブ位置算出手段が複数の情報ビットのインタリーブ位置を加減算処理と比較計算処理を実施するだけで算出するインタリーブ位置算出ステップと、情報ビット読出手段が上記情報ビット系列格納手段に格納されている情報ビット系列の中から、上記インタリーブ位置算出手段により算出されたインタリーブ位置にある複数の情報ビットを読み出す情報ビット読出ステップと、第2の符号化手段が上記情報ビット読出手段により読み出された複数の情報ビットを順番に入力し、上記複数の情報ビットに対する畳み込み符号化を実施してターボ符号のインタリーブ系列のパリティビットを複数ビットずつ生成する第2の符号化ステップとを備えたターボ符号化方法。
- 情報ビット系列をターボ符号化してターボ符号を生成し、上記ターボ符号を変調して変調波を送信する送信装置と、上記送信装置から送信された変調波を受信し、上記変調波からターボ符号を復調する受信装置とからなる通信システムにおいて、上記送信装置が、上記情報ビット系列の先頭から情報ビットを複数ビットずつ入力し、上記複数の情報ビットに対する畳み込み符号化を実施してターボ符号の非インタリーブ系列のパリティビットを複数ビットずつ生成する第1の符号化手段と、上記複数の情報ビットの逆インタリーブ位置を加減算処理と比較計算処理を実施するだけで算出する逆インタリーブ位置算出手段と、上記逆インタリーブ位置算出手段により算出された逆インタリーブ位置に上記複数の情報ビットを配置してターボ符号のインタリーブ系列を生成するインタリーブ系列生成手段と、上記インタリーブ系列生成手段により生成されたインタリーブ系列の先頭から情報ビットを複数ビットずつ入力し、上記複数の情報ビットに対する畳み込み符号化を実施してインタリーブ系列のパリティビットを複数ビットずつ生成する第2の符号化手段とを備えたターボ符号化装置を実装していることを特徴とする通信システム。
- 情報ビット系列をターボ符号化してターボ符号を生成し、上記ターボ符号を変調して変調波を送信する送信装置と、上記送信装置から送信された変調波を受信し、上記変調波からターボ符号を復調する受信装置とからなる通信システムにおいて、上記送信装置が、上記情報ビット系列の先頭から情報ビットを複数ビットずつ入力し、上記複数の情報ビットに対する畳み込み符号化を実施してターボ符号の非インタリーブ系列のパリティビットを複数ビットずつ生成する第1の符号化手段と、上記情報ビット系列を格納する情報ビット系列格納手段と、上記複数の情報ビットのインタリーブ位置を加減算処理と比較計算処理を実施するだけで算出するインタリーブ位置算出手段と、上記情報ビット系列格納手段に格納されている情報ビット系列の中から、上記インタリーブ位置算出手段により算出されたインタリーブ位置にある複数の情報ビットを読み出す情報ビット読出手段と、上記情報ビット読出手段により読み出された複数の情報ビットを順番に入力し、上記複数の情報ビットに対する畳み込み符号化を実施してターボ符号のインタリーブ系列のパリティビットを複数ビットずつ生成する第2の符号化手段とを備えたターボ符号化装置を実装していることを特徴とする通信システム。
- 送信装置が移動体端末であり、受信装置が基地局であることを特徴とする請求項7または請求項8記載の通信システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007244169A JP2009077154A (ja) | 2007-09-20 | 2007-09-20 | ターボ符号化装置、ターボ符号化方法及び通信システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007244169A JP2009077154A (ja) | 2007-09-20 | 2007-09-20 | ターボ符号化装置、ターボ符号化方法及び通信システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009077154A true JP2009077154A (ja) | 2009-04-09 |
Family
ID=40611709
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007244169A Pending JP2009077154A (ja) | 2007-09-20 | 2007-09-20 | ターボ符号化装置、ターボ符号化方法及び通信システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009077154A (ja) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02121164A (ja) * | 1988-10-28 | 1990-05-09 | Olympus Optical Co Ltd | インターリーブアドレス生成回路 |
JP2001177418A (ja) * | 1999-10-07 | 2001-06-29 | Matsushita Electric Ind Co Ltd | インターリーブアドレス生成装置及びインターリーブアドレス生成方法 |
JP2002190743A (ja) * | 2000-09-29 | 2002-07-05 | Samsung Electronics Co Ltd | Umtsにおけるターボ符号化器のインターリーバ及びインターリービングを遂行するための方法 |
JP2003133966A (ja) * | 2001-10-24 | 2003-05-09 | Matsushita Electric Ind Co Ltd | 高速インタリーバを用いたターボ復号装置及び方法 |
JP2006013846A (ja) * | 2004-06-25 | 2006-01-12 | Univ Waseda | 符号順序変換方法およびその装置、符号順序変換テーブル作成装置、並びにターボ符号用の符号器および復号器 |
-
2007
- 2007-09-20 JP JP2007244169A patent/JP2009077154A/ja active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02121164A (ja) * | 1988-10-28 | 1990-05-09 | Olympus Optical Co Ltd | インターリーブアドレス生成回路 |
JP2001177418A (ja) * | 1999-10-07 | 2001-06-29 | Matsushita Electric Ind Co Ltd | インターリーブアドレス生成装置及びインターリーブアドレス生成方法 |
JP2002190743A (ja) * | 2000-09-29 | 2002-07-05 | Samsung Electronics Co Ltd | Umtsにおけるターボ符号化器のインターリーバ及びインターリービングを遂行するための方法 |
JP2003133966A (ja) * | 2001-10-24 | 2003-05-09 | Matsushita Electric Ind Co Ltd | 高速インタリーバを用いたターボ復号装置及び方法 |
JP2006013846A (ja) * | 2004-06-25 | 2006-01-12 | Univ Waseda | 符号順序変換方法およびその装置、符号順序変換テーブル作成装置、並びにターボ符号用の符号器および復号器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4284125B2 (ja) | パリティビットを再循環させる連続コードデコーダ及びその方法 | |
JP5219699B2 (ja) | 符号化装置及び復号装置 | |
TWI406509B (zh) | 渦輪解碼器及解碼渦輪編碼信號的方法 | |
MXPA01009713A (es) | Descodificador de map altamente paralelo. | |
KR19980064845A (ko) | 씨알씨 검사 비트를 이용하는 코딩 및 디코딩 시스템 | |
US9444494B2 (en) | Systems and methods for network coding using convolutional codes | |
WO2011026375A1 (zh) | 编码方法及装置、解码方法及装置 | |
JP2007510337A (ja) | 移動通信システムのビタビ/ターボ統合デコーダ | |
JPH0722967A (ja) | ビタビ復号器の経路記憶装置 | |
WO2000064058A1 (fr) | Codeur et decodeur | |
JP2009095008A (ja) | ターボ符号復号装置、ターボ符号復号方法及び通信システム | |
WO2019149180A1 (zh) | 交织方法和交织装置 | |
KR100628201B1 (ko) | 터보 디코딩 방법 | |
JPH09232972A (ja) | ビタビ復号器 | |
WO2001037432A1 (fr) | Dispositif et procede de traitement des erreurs, utilisant un code cyclique | |
JPH07288479A (ja) | 誤り訂正連接符号化方法及び装置 | |
JP2009077154A (ja) | ターボ符号化装置、ターボ符号化方法及び通信システム | |
KR20080030493A (ko) | 임의 개수의 정보 비트들을 위한 테일바이팅 터보 코드 | |
JP2001211088A (ja) | データ誤り訂正方法及び装置 | |
JPH08265175A (ja) | 符号化装置、復号装置及び伝送方式 | |
JP3515519B2 (ja) | データ受信装置 | |
JP7144621B2 (ja) | 通信システム及び通信方法 | |
JP2008263470A (ja) | デジタル放送復調装置 | |
WO2011048997A1 (ja) | 軟出力復号器 | |
JP2008160169A (ja) | 通信装置、ターボ符号器および通信方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100617 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110616 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110705 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110818 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111004 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111102 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120417 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120821 |