JP3606413B2 - Data receiving apparatus and method - Google Patents

Data receiving apparatus and method Download PDF

Info

Publication number
JP3606413B2
JP3606413B2 JP23174596A JP23174596A JP3606413B2 JP 3606413 B2 JP3606413 B2 JP 3606413B2 JP 23174596 A JP23174596 A JP 23174596A JP 23174596 A JP23174596 A JP 23174596A JP 3606413 B2 JP3606413 B2 JP 3606413B2
Authority
JP
Japan
Prior art keywords
data
value
metric
bit
circuit
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 - Fee Related
Application number
JP23174596A
Other languages
Japanese (ja)
Other versions
JPH1079768A (en
Inventor
保 池田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP23174596A priority Critical patent/JP3606413B2/en
Priority to KR1019970043260A priority patent/KR100498752B1/en
Priority to DE69733681T priority patent/DE69733681T2/en
Priority to EP97306770A priority patent/EP0827299B1/en
Publication of JPH1079768A publication Critical patent/JPH1079768A/en
Priority to US09/588,303 priority patent/US6381727B1/en
Application granted granted Critical
Publication of JP3606413B2 publication Critical patent/JP3606413B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Error Detection And Correction (AREA)
  • Digital Transmission Methods That Use Modulated Carrier Waves (AREA)
  • Radio Transmission System (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、データ受信装置および方法に関し、特に、所定のデータのシンボルが伝送され、かつ、そのシンボルが受信された事後確率をシンボル毎に計算し、その事後確率からメトリックを計算するデータ受信装置および方法に関する。
【0002】
【従来の技術】
米国においては、デジタル放送が既に開始されている。ヨーロッパでも、デジタルテレビ放送を導入するために、標準化組織Digital Video Broadcasting(DVB)が結成され、その標準方式がまとめられようとしている。このデジタル放送については、例えば、日経エレクトロニクス1996.1.15(no.653)の第139頁乃至第151頁に、「ディジタル放送,米国についで欧州も実用へ」として紹介されている。
【0003】
デジタル放送を行う場合、その消費電力ができるだけ少なくなるようにすることが望まれる。このような電力制限の厳しいこのような通信路においては、一般的に、誤り訂正符号を用いて符号化利得を得て電力の低減が図られている。この様なシステムにおいては、送信側で誤り訂正符号化を行い、受信側で誤り訂正復号を行うのが一般的である。特に信号電力対雑音電力比(C/N比)の小さい通信路においては、畳み込み符号が有利であり、この符号はビタビ復号法を用いることにより、容易に軟判定復号を行うことができ、高利得を得ることができる。
【0004】
さらに、畳み込み符号化器の符号出力の系列を、ある一定の規則に従って、間引くことにより、同一の復号器を用いて、複数の符号化率を容易に実現できるパンクチャド符号が知られている。また、パンクチャド符号化器の符号出力の系列をある一定の規則に従って、ビット毎に拡散することによって、伝送路上で重畳される雑音に対する耐性を向上させることができる。
【0005】
図8は、DVBの地上波テレビジョン放送のための規格DVB−Tにおいて提案されている送信装置の構成例を表している。この装置では、パンクチャド畳み込み符号、ビット拡散、QPSK変調方式が用いられている。
【0006】
即ち、図8の例においては、情報源1より出力された1ビットシリアルデータは、畳み込み符号化器2に入力され、パンクチャド符号の母符号系列X,Yが生成される。この例では、符号化率が1/2とされている。X,Yは、それぞれ1ビットの符号系列を表している。
【0007】
この符号系列X,Yは、ビット消去回路3に入力され、所定の規則に従って、ビット消去処理が行われるようになされている。ビット消去回路3より出力されたシリアル化されたパンクチャド符号系列は、直並列変換器4に入力され、1系列のデータから2系列のデータに変換されるようになされている。
【0008】
直並列変換器4より出力された2系列のデータx,yは、ビット拡散回路5−1,5−2にそれぞれ入力され、ビットの順番が拡散(交錯)されるビット拡散処理が行われるようになされている。ビット拡散回路5−1,5−2より出力されたビット拡散後のデータx’,y’は、信号点割当回路6に入力され、伝送路上のシンボルへ割り当てられる。信号点割当回路6は、相互に直交する同相成分(I成分)と直交成分(Q成分)で表される信号点の座標データI’,Q’を出力する。
【0009】
シンボル拡散回路7は、信号点割当回路6より出力された座標データI’,Q’により規定されるシンボルの順番を拡散するシンボル拡散処理を実行し、拡散後のシンボルのI成分とQ成分を出力する。変調器8は、例えば、OFDM(Orthogonal Frequency Division Multiplex)方式で、I成分とQ成分をデジタル変調し、アンテナ9を介して電波で出力するようになされている。
【0010】
図9は、畳み込み符号化器2の構成例を表している。但し、この構成例は、DVB−Tで規定されているものではなく、畳み込み処理の説明のための原理的構成を示すものである。この例においては、情報源1より出力された1ビットのシリアルデータが端子21から入力され、遅延回路22,23により、それぞれ1クロック分ずつ順次遅延された後、加算回路24と25に出力されている。加算回路24にはまた、端子21の出力と遅延回路22の出力とが供給されており、加算回路24は、これらのデータを加算(排他的論理和演算)した後、端子26からデータXとして出力するようになされている。また、加算回路25は、端子21の出力と遅延回路23の出力を加算(排他的論理和演算)して、端子27からデータYとして出力するようになされている。
【0011】
即ち、この実施例においては、1ビットの入力に対して、遅延回路22と23の内部状態から定まる2ビットの母符号が出力されることになる。この例の場合、拘束長が3、内部遅延素子が2、状態数が4、符号化率が1/2となる。
【0012】
図10は、この畳み込み符号化器2の状態遷移図を表している。この畳み込み符号化器2の状態遷移は、次のようになる。
【0013】
即ち、例えば、状態00(遅延素子22の出力と遅延素子23の出力が共に0の状態)において、端子21から0が入力されると、端子26,27から、(XY)=(00)が出力され、状態00に遷移する。状態00から1が入力されると、(XY)=(11)が出力され、状態は10に遷移する。状態01から0が入力されると、(XY)=(11)が出力され、状態00に遷移する。状態01から1が入力されると、(XY)=(00)が出力され、状態10に遷移する。
【0014】
他の状態においても、図10に示すように、0または1の入力に対して、図示した出力が出され、図示した状態に遷移する。
【0015】
ビット消去回路3では、ある規則に従って、母符号系列(XY)から適当な位置のデータを消去することによって、結果として符号化率を変えることができる。以下に、例えば、
X:10
Y:11
のような消去マップに従ってビットが消去される場合について説明する。
【0016】
消去マップの1に対応するビットは伝送され、0に対応するビットは伝送されない(消去される)。消去マップによれば、ある時点での畳み込み符号化器2の出力X(=X1)とY(=Y1)は、X1Y1の順で伝送され、次の時点では、畳み込み符号化器2の出力X(=X2)は消去されて伝送されず、Y(=Y2)のみ伝送されることになる。即ち、この2つの時点で伝送されるビットは、X1Y1Y2となる。この操作で畳み込み符号化器2に入力されるビット数は2ビット、ビット消去回路3から出力されるビット数は3ビットとなるので、符号化率Rは2/3となる。この操作は2単位時間ごとに繰り返される。
【0017】
直並列変換器4では、入力される1系列のデータX1,Y1,Y2,・・・が2系列のデータ(x,y)に変換される。
【0018】
ビット拡散回路5−1,5−2は、入力データ系列x,yの順番を所定の規則に従って入れ替えることによって、ビットを拡散する。このとき、一般にビット拡散回路5−1と5−2の拡散方法は異なるものとされる。
【0019】
以下にビット拡散の例を示す。Mビットの入力データを1ブロックとし、適当な数値sを定める。ビット拡散は、Mビットの入力系列からなるベクトル
(B0,B1,・・・,Bk,・・・,BM−1)から、
拡散後のMビットの出力系列からなるベクトル
(B’0,B’1,・・・,B’n,・・・,B’M−1)への置換を意味する。このとき、B’n=Bk(n=k+s mod M)である。
【0020】
ビット拡散回路5−1,5−2で異なるsを用いることによって、同じアルゴリズムで異なるビット拡散回路を構成することができる。
【0021】
信号点割当回路6では、入力されたデータ(x’,y’)を伝送路上のシンボルへ割り当てる。割り当ては、例えば図11に示すように、QPSK方式に従って行われる。即ち、
(x’,y’)=(0,0)のとき、(I’,Q’)=(1/√2,1/√2)、
(x’,y’)=(0,1)のとき、(I’,Q’)=(1/√2,−1/√2)、
(x’,y’)=(1,0)のとき、(I’,Q’)=(−1/√2,1/√2)、
(x’,y’)=(1,1)のとき、(I’,Q’)=(−1/√2,−1/√2)
として割り当てが行われる。
【0022】
シンボル拡散回路7は、(I’,Q’)で表されるシンボルS’の順番を所定の規則に従って入れ替えることによって、シンボルの拡散を行い、シンボルS(I,Q)を得るものであり、これによって、伝送路上で受けたバースト的な誤りを拡散することができる。
【0023】
具体的な例を示すと、N−1個のシンボルを拡散の単位ブロックとして、N未満の、Nと互いに素な数Gを定めたとき、拡散は、拡散前のシンボルを要素とするベクトル
(S’1,S’2,・・・,S’k,・・・,S’N−1)から
拡散後のシンボルを要素とするベクトル
(S1,S2,・・・,Sn,・・・,SN−1)への置換として実行される。このとき、Sn=S’k(n=G^k mod N)である。
【0024】
変調器8では、入力されるシンボルSのI成分とQ成分に従って、搬送波を変調し、アンテナ9を介して送信する。
【0025】
図12は、図8の送信装置より送信されたデータを受信する受信装置の構成例を表している。復調器32は、アンテナ31を介して受信した電波を復調し、I成分信号とQ成分信号を出力する。シンボル逆拡散回路33は、図8のシンボル拡散回路7におけるシンボル拡散処理と逆の処理、即ち、シンボル拡散回路7において入れ替えたシンボルの順番を元の順番に戻す処理を行い、I信号成分I’とQ信号成分Q’を出力する。
【0026】
ビット逆拡散回路34−1,34−2は、シンボル逆拡散回路33より出力されたI’信号とQ’信号に対して、図8のビット拡散回路5−1,5−2において変更したビットの順番を、元の順番に戻す処理を実行する。
【0027】
ビット逆拡散回路34−1,34−2より出力されたI’信号成分に対応するデータxと、Q’信号成分に対応するデータyは、並直列変換器35に入力され、2系列のデータ(x,y)から1系列のデータに変換され、ビット挿入回路36に供給される。
【0028】
ビット挿入回路36においては、図8のビット消去回路3におけるビット消去処理と反対に、ビット挿入処理が行われる。ビット挿入回路36により、ビットが挿入されたI信号成分のデータxとQ信号成分のデータyは、ビタビ復号器37に入力され、ビタビ復号され、再生情報38として出力されるようになされている。
【0029】
次に、その動作について説明する。
【0030】
アンテナ31で受けた受信信号は、復調器32で復調されて、各シンボルのI成分とQ成分のデータが得られる。このI成分とQ成分のデータは、シンボル逆拡散回路33に入力され、そこで、シンボル拡散回路7における場合と逆の操作が行なわれ、逆拡散されたデータI’とQ’が得られる。
【0031】
即ち、この逆拡散の操作は、シンボル拡散回路7で用いた場合と同じ値N,Gを用いて表すと、逆拡散前のシンボルを要素とするベクトル
(S1,S2,・・・,Sn,・・・,SN−1)を、
逆拡散後のシンボルを要素とするベクトル
(S’1,S’2,・・・,S’k,・・・,S’N−1)へ置換する処理となる。このとき、Sn=S’k(n=G^k mod N)である。
【0032】
シンボル逆拡散回路33から供給されたI成分データI’と、Q成分データQ’は、それぞれビット逆拡散回路34−1,34−2に供給される。
【0033】
ビット逆拡散回路34−1,34−2は、それぞれ、ビット拡散回路5−1,5−2に対応し、それぞれ、ビット拡散回路5−1,5−2と逆の操作を行う。
【0034】
即ち、M個の入力データを1ブロックとし、適当な数値sを定め、M個の入力系列からなるベクトル
(B’0,B’1,・・・,B’n,・・・,B’M−1)から、
逆拡散後のM個の出力系列からなるベクトル
(B0,B1,・・・,Bk,・・・,BM−1)が求められる。このとき、B’n=Bk(n=k+s mod M)である。
【0035】
ここで、ビット逆拡散回路34−1,34−2のビット逆拡散で用いる数値sは、それぞれ、ビット拡散回路5−1,5−2で用いる数値sと同じ値を用いる。
【0036】
こうしてビット逆拡散されたデータ系列(x,y)は、次段の並直列変換器35に供給され、そこで直並列変換器4と逆の操作が行なわれ、2系列のデータ(x,y)から1系列のデータに変換される。
【0037】
ビット挿入回路36では、ビット消去回路3と逆の操作が行われる。即ち、前述の例の消去マップ
X:10
Y:11
を用いたビット消去回路3の処理に対応して、ビット挿入回路36は、
X1,Y1,Y2(今の場合、x1,y1,y2)
の順で入力されるデータに対して、消去されているデータX2(x2)に相当する位置で任意のダミーデータ(ここでは0とする)を挿入して、
Xデータとして、X1(x1),0を、
Yデータとして、Y1(y1),Y2(y2)を、
この順で出力する。また、ダミーデータを挿入した位置を示す挿入フラグをビタビ復号器37に供給する。
【0038】
ビタビ復号器37では、畳み込み符号化器2の状態遷移(図10)に従ってビタビ復号を行う。図13にビタビ復号器37の例を示す。入力端子62−1,62−2には、ビット挿入回路36より出力されたデータX,Yが、それぞれ入力される。これらのデータX,Yは、ブランチメトリック演算回路63−1乃至63−4に入力されている。ブランチメトリック演算回路63−1においては、入力データ(X,Y)と図11に示した座標点(1/√2,1/√2)との距離を、ブランチメトリックとして演算する。同様に、ブランチメトリック演算回路63−2乃至63−4においては、入力データ(X,Y)と座標点(1/√2,−1/√2),(−1/√2,1/√2)または(−1/√2,−1/√2)との距離が演算されるようになされている。
【0039】
ブランチメトリック演算回路63−1,63−4の出力(ブランチメトリック)BM00,BM11は、ACS(Add Compare Select)回路64−1,64−3に入力されている。同様に、ブランチメトリック演算回路63−2の出力(ブランチメトリック)BM01とブランチメトリック演算回路63−3の出力(ブランチメトリック)BM10が、ACS回路64−2,64−4に入力されている。
【0040】
ACS回路64−1,64−3にはまた、ステートメトリック記憶装置66−1の出力(ステートメトリック)SM00とステートメトリック記憶装置66−2の出力(ステートメトリック)SM01が入力されており、ACS回路64−2,64−4には、ステートメトリック記憶装置66−3の出力(ステートメトリック)SM10とステートメトリック記憶装置66−4の出力(ステートメトリック)SM11が入力されている。
【0041】
ACS回路64−1乃至64−4は、入力された一方のブランチメトリックBMとそれに対応するステートメトリックSMを加算するとともに、他方のブランチメトリックBMとそれに対応するステートメトリックSMを加算する。そして、ACS回路64−1乃至64−4は、2つの加算結果を比較し、その比較結果に対応して、小さい方の加算値をステートメトリック記憶装置66−1乃至66−4に、新たなステートメトリックSMとして出力するとともに、その選択結果を表す信号SEL00乃至SEL11をパスメモリ65に出力している。さらに、パスメモリ65には、ステートメトリック記憶装置66−1乃至66−4からステートメトリックSM00乃至SM11が入力されている。
【0042】
ステートメトリック記憶装置66−1乃至66−4は、端子61から入力される信号によりリセットされるようになされている。パスメモリ65は、端子67から復号結果を出力するようになされている。
【0043】
次に、その動作について説明する。
【0044】
ブランチメトリック演算回路63−1では、入力データ(X,Y)と座標点(1/√2,1/√2)との距離がブランチメトリックBM00として計算される。同様にブランチメトリック演算回路63−2では入力データ(X,Y)と座標点(1/√2,−1/√2)との距離、ブランチメトリック演算回路63−3では入力データ(X,Y)と座標点(−1/√2,1/√2)との距離、ブランチメトリック演算回路63−4では入力データ(X,Y)と座標点(−1/√2,−1/√2)との距離が、ブランチメトリックBM01,BM10,BM11としてそれぞれ計算される。なお、ここでは、前段のビット挿入回路36から供給される挿入フラグに従って、挿入されたダミーデータに関する距離計算は省略される。即ち、挿入されたビットと比較すべき座標との距離は、すべて同じ(例えば0)とされる。
【0045】
ACS回路64−1では畳み込み符号化器2の状態遷移に従って次の2つの式が計算され、尤度の大きい方、即ち、計算結果の小さい方が選択され、その選択情報SELは後段のパスメモリ65に、その計算結果SMはステートメトリック記憶装置66−1に、それぞれ供給される。
【0046】
SM00+BM00 (1)
SM01+BM11 (2)
【0047】
ここで、SM00は、1単位時間前のステートメトリック記憶装置66−1の値、SM01は、1単位時間前のステートメトリック記憶装置66−2の値、BM00は、ブランチメトリック演算回路63−1の演算結果、BM11は、ブランチメトリック演算回路63−4の演算結果を、それぞれ表している。
【0048】
式(1)の計算結果の方が小さければSEL00=0が、式(2)の計算結果の方が小さければSEL00=1が、後段のパスメモリ65に供給される。そして、前者の場合、SM00+BM00が、後者の場合、SM01+BM11が、それぞれステートメトリック記憶装置66−1に、新たなステートメトリックSM00として記憶される。
【0049】
この計算を図10の状態遷移図に沿って説明する。状態00に到達するパスは2本あり、1本目は状態00で0が入力され、00を出力するパスで、比較される計算式は式(1)のようになり、2本目は状態01で0が入力され、11を出力するパスで、比較される計算式は式(2)のようになる。計算結果のうち小さいほうが新たなステートメトリックSM00としてステートメトリック記憶装置66−1に供給される。
【0050】
同様の動作が、ACS回路64−2乃至64−4においても行われる。なお、ステートメトリック記憶装置66−1乃至66−4は、システムが動作する初期段階で0にリセットされる。この制御は図には示していない制御装置から端子61を介して行われる。
【0051】
パスメモリ65では、図10の状態遷移図に従って、ACS回路64−1乃至64−4からの選択情報SEL00乃至SEL11を用いて、入力データ、即ち復号データの選択、記憶、伝搬を行う。
【0052】
図14は、ブランチメトリック演算回路63−1の構成例を表している。端子62−1より入力されたデータXは、減算回路51に入力され、発生回路52からの1/√2で減算されるようになされている。減算回路51の出力は、乗算回路53に分岐して入力され、乗算される(即ち、自乗される)ようになされている。セレクタ203は、乗算回路53の出力と、発生回路202の出力の供給を受け、端子201を介してXに対する挿入フラグが、ビット挿入回路36より入力されたとき、発生回路202が発生する0を選択し、その他のとき、乗算回路53の出力を選択し、加算回路54に出力する。
【0053】
同様に、端子62−2より入力されたデータYが、減算回路55に入力され、発生回路56からの1/√2で減算されるようになされている。減算回路55の出力は、乗算回路57に分岐して入力され、乗算(自乗)されるようになされている。セレクタ206は、乗算回路57の出力と、発生回路205の出力の供給を受け、端子204を介してYに対する挿入フラグがビット挿入回路36より入力されたとき、発生回路205が発生する0を選択し、その他のとき、乗算回路57の出力を選択し、加算回路54に出力している。加算回路54は、セレクタ203の出力とセレクタ206の出力とを加算し、ブランチメトリックBM00として出力するようになされている。
【0054】
即ち、この例においては、挿入フラグが入力されないとき、減算回路51が、X−1/√2を出力し、これが乗算回路53において自乗され、乗算回路53から(X−1/√2)が出力される。同様に、減算回路55が、Y−1/√2を出力し、この値が乗算回路57により自乗され、乗算回路57は(Y−1/√2)を出力する。加算回路54は、乗算回路53の出力と乗算回路57の出力の加算値(X−1/√2)+(Y−1/√2)をブランチメトリックBM00として出力する。
【0055】
一方、Xに対する挿入フラグが入力されたとき、セレクタ203は、0を出力するので、加算回路54の出力は、(Y−1/√2)となり、Yに対する挿入フラグが入力されたとき、セレクタ206は、0を出力するので、加算回路54の出力は、(X−1/√2)となる。
【0056】
ブランチメトリック演算回路63−2乃至63−4においても、図14に示した場合と同様の構成の回路により、同様の演算が行われる。但し、ブランチメトリック演算回路63−2においては、発生回路52の出力は1/√2、発生回路56の出力は−1/√2とされる。また、ブランチメトリック演算回路63−3においては、発生回路52と56の出力は、それぞれ−1/√2と1/√2とされ、ブランチメトリック演算回路63−4においては、それぞれ−1/√2と−1/√2とされる。
【0057】
図15にパスメモリ65のブロック図を示す。端子71−1乃至71−4には、ACS回路64−1乃至64−4より出力された選択情報SEL00乃至SEL11が入力されている。これらの選択情報SEL00乃至SEL11は、それぞれ2入力1出力のセレクタ73−1乃至73−4に制御信号として入力されている。また、セレクタ73−1には、2つの入力として、端子72−1から固定データ0が入力されている。同様に、セレクタ73−2乃至73−4には、端子72−2乃至72−4から、それぞれ2入力として固定データ0,1または1が入力されている。
【0058】
セレクタ73−1乃至73−4は、選択情報SEL00乃至SEL11に対応して、2つの入力のうちの一方を選択し、後段のレジスタ81−1乃至81−4に出力する。但し、この第1列目のセレクタ73−1乃至73−4には、上述したように、端子72−1乃至72−4から2入力として同一のデータが入力されているため、レジスタ81−1乃至81−4には、それぞれ0,0,1または1が記憶されることになる。
【0059】
以下、同様に、n列(図15の例の場合、4列)のセレクタとレジスタからなる構成が設けられている。即ち、第2列目においては、セレクタ74−1乃至74−4とレジスタ82−1乃至82−4が設けられている。セレクタ74−1,74−3には、前列のレジスタ81−1の出力とレジスタ81−2の出力が供給されている。セレクタ74−2,74−4には、レジスタ81−3の出力とレジスタ81−4の出力が入力されている。そして、セレクタ74−1乃至74−4は、選択情報SEL00乃至SEL11の値に対応して、2入力のうちの一方を選択し、後段のレジスタ82−1乃至82−4に出力する処理を行う。例えば、レジスタ74−1は、選択情報SEL00が0であるとき、レジスタ81−1の出力を選択し、選択情報SEL00が1であるとき、レジスタ81−2の出力を選択し、出力するようになされている。
【0060】
最終列のレジスタ84−1乃至84−4の出力は、4入力1出力のセレクタ85に入力されている。
【0061】
最小値比較回路88には、端子87−1乃至87−4から、図13のステートメトリック記憶装置66−1乃至66−4より出力されたステートメトリックSM00乃至SM11が入力されている。最小値比較回路88は、4つのステートメトリックの大きさを比較し、最小のものを選択する。そして、ステートメトリックSM00が最小であったとき、データ00を出力し、ステートメトリックSM01が最小であったとき、データ01を出力し、ステートメトリックSM10が最小であったとき、データ10を出力し、ステートメトリックSM11が最小であったとき、データ11を出力する。セレクタ85は、最小値比較回路88からの入力が00であるとき、レジスタ84−1の出力を選択し、01であるとき、レジスタ84−2の出力を選択し、10であるとき、レジスタ84−3の出力を選択し、11であるとき、レジスタ84−4の出力を選択し、端子86から復号結果として出力するようになされている。端子72−1乃至72−4の固定値は、それぞれの状態に対応する復号情報を意味する。
【0062】
このような、パスメモリ65の結線は、図10の状態遷移図に基づいている。パスメモリ65の構成のうち、最上行は状態00に、第2行目は状態01に、第3行目は状態10に、最下行は状態11に、それぞれ対応する。また、第1列目は復号情報の取り込みを行う。図10によれば、状態00に到達するパスは、状態00と状態01からの2本存在する。それぞれのパスに対応する入力ビット即ち復号情報は、いずれの場合も0である。そこで、状態00(最上行)における第1列では、選択情報SEL00によってそれに対応する復号情報0が選択されるように、セレクタ73−1の入力端子が配線されている。
【0063】
第1列目においては、状態01、状態10、状態11に対しても同様にして結線されている。
【0064】
第2列目以降においては、復号系列の選択、伝搬および記憶が行われる。図10によれば、状態00に到達するパスは、状態00、状態01からの2本存在する。そこで、状態00における第2列では、選択情報SEL00によって、それに対応する状態からのデータが選択されるように、セレクタ74−1の入力端子が配線されている。
【0065】
第2列目以降においても、同様に結線されている。さらに、第2行乃至第3行の状態01、状態10、状態11においても同様にして結線されている。
【0066】
パスメモリ65の最終列では、記憶された4つの復号データから、最も尤度の大きいパスに対応するデータが最終的な復号データとして出力される。「最も尤度の大きいパス」とは、4つのステートメトリックSM00乃至SM11のうち、最小の値を持つものに対応するパスであり、セレクタ85で、その時点におけるステートメトリックの最小値に対応するパス、即ち、最も尤度の大きいパスが選択されることになる。
【0067】
【発明が解決しようとする課題】
ところで、近年、高速(高ビットレート)の伝送が叫ばれる中、前述のデジタルデータ伝送システムの変調方式を、QPSKから16QAM、64QAM、256QAM等に拡張することが考えられる。こうすると、伝送できるビット数は、QPSKの2ビットに対してそれぞれ、4ビット、6ビット、または8ビットとなり、QPSKに対して2倍、3倍、6倍に増加することになる。
【0068】
図16に16QAMによるデータ送信装置のブロック図を示す。図16において、図8における場合と対応する部分には、同一の符号を付してある。即ち、この例においては、直並列変換器4において、ビット消去回路3より出力されたシリアルデータが、4ビットを単位とするデータu,v,x,yに変換される。そして、各データ毎に、ビット拡散回路91−1乃至91−4において、ビット拡散処理が行われ、データu’,v’,x’,y’として、信号点割当回路6に供給されるようになされている。その他の構成は、図8における場合と同様である。
【0069】
即ち、この例においては、直並列変換器4において、1系列のデータが16QAMに対応する4系列のデータ(u,v,x,y)に変換され、それぞれがビット拡散回路91−1乃至91−4において、所定の規則に従って、ビットの順番を入れ替えることにより、ビット拡散処理が行われる。その処理は、図8におけるビット拡散回路5−1,5−2における処理と同様の処理であり、それぞれが異なる数値sを用いて、異なるビット拡散処理を実行する。
【0070】
信号点割当回路6では、入力された4ビットのデータ(u’,v’,x’,y’)を伝送路上のシンボルへ割り当てる。割り当ては、例えば図17に従って行われる。即ち、例えば、
(u’,v’,x’,y’)=(0,0,0,0)のとき、
(I’,Q’)=(3/√10,3/√10)、
(u’,v’,x’,y’)=(0,0,0,1)のとき、
(I’,Q’)=(3/√10,1/√10)
としてに割り当てが行われる。
【0071】
他の入力に関しても同様に割り当てが行われる。
【0072】
以下、図8における場合と同様の処理が行われ、データが送信される。
【0073】
図16に示す送信装置で、図17に示すような16QAM方式で信号点割り当てを行い、送信したデータを受信する場合、受信装置は、図12に対応して、図18に示すように構成することが考えられる。しかしながら、実際には、図18に示すように受信装置を構成することはできない。
【0074】
即ち、上述したように、シンボル逆拡散回路33に復調器32より入力されるデータ(I,Q)のそれぞれの成分I,Qは、QPSK方式の場合、それぞれが1ビットを表していたが、16QAM方式の場合、それぞれが2ビットを表すことになる。例えば、図17に示す信号点配置の場合、Iは、第1のビットと第3のビットの情報を含み、Qは、第2のビットと第4のビットの情報を含んでいる。しかしながら、例えば、Iは、1/√10や3/√10といった1つの値であり、Qも同様に1つの値である。従って、これを図18に示すように、u’,v’に分割したり、x’,y’に分割することはできない。その結果、16QAM方式の場合におけるデータ受信装置は、やはり図12に示すように構成されることになる。
【0075】
その結果、図12のビット挿入回路36において行われる処理は、次のようになると考えられる。
【0076】
例えば、図19(A)に示すように、ビット挿入回路36に、x1,y1,x2,y2,x3,y3,・・・のようにデータが入力されたとすると、同図(B)に示すように、x1,y1が、データX1,Y1として出力され、次にダミーデータdが、データX2として出力され、データx2が、データY2として出力される。また、同様に、データy2,x3が、データX3,Y3として出力された後、ダミーデータdが、データX4として出力され、次に、データy3が、データY4として出力される。
【0077】
しかしながら、この処理は、図16のビット消去回路3における処理と逆の処理を実行していることにはならない。即ち、ビット消去回路3において行っていたビット消去(ビット操作)処理は、1ビット単位で行っていたものである。これに対して、図19(B)に示すデータx1,y2などは、それぞれが2ビットのデータに対応しているものであり、その後に1ビットのダミーデータdを挿入し、さらにその次に2ビットのデータx2を出力すると、結局、元のデータ配列とは全く異なるデータ配列が出力されてしまうことになる。
【0078】
その結果、ビット挿入回路36の出力を、ビタビ復号器37でビタビ復号すると、復号結果は、成分が若干劣化するといった類のものではなく、全く異なるものになるため、復号は不可能となる。
【0079】
これに対して、例えば図18に示すデータ受信装置のシンボル逆拡散回路33において、硬判定を行うようにすれば、図18に示すように、(I,Q)から、u’,v’,x’,y’を生成することができると考えられる。即ち、この場合、(I,Q)の座標と図17に示す各信号点との距離が計算され、(I,Q)が最も距離の短い信号点に対応されるので、この信号点から、u’,v’,x’,y’を生成することが可能である。しかしながら、このような硬判定を行うと、正確なデータの復号が困難になる。
【0080】
本発明は、このような状況に鑑みてなされたものであり、16QAM、64QAM、256QAMなどの多値多位相変調方式で伝送されてきたデータを正確に復号化することができるようにするものである。
【0081】
【課題を解決するための手段】
請求項1に記載のデータ受信装置は、データのシンボルが伝送され、かつ、そのシンボルが受信された事後確率をシンボル毎に計算し、所定のビットが所定の値であるシンボルの事後確率の総和を、そのビットに対するメトリックとして計算するメトリック計算手段と、メトリックを利用してデータの復号を行う復号手段とを備えることを特徴とする。
【0082】
請求項4に記載のデータ受信方法は、データのシンボルが伝送され、かつ、そのシンボルが受信された事後確率をシンボル毎に計算し、所定のビットが所定の値であるシンボルの事後確率の総和を、そのビットに対するメトリックとして計算するステップと、メトリックを利用してデータの復号を行うステップとを備えることを特徴とする。
【0083】
請求項5に記載のデータ受信装置は、データのシンボルが伝送され、かつ、そのシンボルが受信された事後確率をシンボル毎に計算し、所定のビットが所定の値であるシンボルの事後確率の総和の対数に−1を乗じた値を、そのビットに対するメトリックとして計算するメトリック計算手段と、メトリックを利用してデータの復号を行う復号手段とを備えることを特徴とする。
【0084】
請求項8に記載のデータ受信方法は、データのシンボルが伝送され、かつ、そのシンボルが受信された事後確率をシンボル毎に計算し、所定のビットが所定の値であるシンボルの事後確率の総和の対数に−1を乗じた値を、そのビットに対するメトリックとして計算するステップと、メトリックを利用してデータの復号を行うステップとを備えることを特徴とする。
【0085】
請求項1に記載のデータ受信装置においては、メトリック計算手段は、データのシンボルが伝送され、かつ、そのシンボルが受信された事後確率をシンボル毎に計算し、所定のビットが所定の値であるシンボルの事後確率の総和を、そのビットに対するメトリックとして計算し、復号手段は、メトリックを利用してデータの復号を行う。
【0086】
請求項4に記載のデータ受信方法においては、データのシンボルが伝送され、かつ、そのシンボルが受信された事後確率をシンボル毎に計算し、所定のビットが所定の値であるシンボルの事後確率の総和を、そのビットに対するメトリックとして計算し、そのメトリックを利用してデータの復号を行う。
【0087】
請求項5に記載のデータ受信装置においては、メトリック計算手段は、データのシンボルが伝送され、かつ、そのシンボルが受信された事後確率をシンボル毎に計算し、所定のビットが所定の値であるシンボルの事後確率の総和の対数に−1を乗じた値を、そのビットに対するメトリックとして計算し、復号手段は、メトリックを利用してデータの復号を行う。
【0088】
請求項8に記載のデータ受信方法においては、データのシンボルが伝送され、かつ、そのシンボルが受信された事後確率をシンボル毎に計算し、所定のビットが所定の値であるシンボルの事後確率の総和の対数に−1を乗じた値を、そのビットに対するメトリックとして計算し、そのメトリックを利用してデータの復号を行う。
【0089】
【発明の実施の形態】
図1は、図16のデータ送信装置で送信されたデータを受信する、本発明のデータ受信装置の第1の実施例を表している。図1において、従来の図12に示す場合と対応する部分には、同一の符号を付してある。図1の実施例においては、シンボル逆拡散回路33は、図16のシンボル拡散回路7におけるシンボル拡散処理と逆の処理、即ち、シンボル拡散回路7において入れ替えたシンボルの順番を元の順番に戻す処理を行い、I信号成分I’とQ信号成分Q’をメトリック計算回路39(メトリック計算手段)に出力するようになされている。
【0090】
メトリック計算回路39は、供給されたI信号成分I’およびQ信号成分Q’から第1乃至第4のビットに対するメトリックを計算し、計算したメトリックu’,v’,x’,y’を、ビット逆拡散回路101−1乃至101−4にそれぞれ出力するようになされている。
【0091】
メトリック計算回路39は、図2に示すように構成される。図2に示すように、シンボル逆拡散回路33より供給されたI’信号とQ’信号は、n個の確率計算回路111−1乃至111−nに入力される。今の場合、図17に示すように、16QAMで信号点割り当て処理が行われているので、このnは16とされる。
【0092】
確率計算回路111−1は、図17に示す16QAMの0000に対応するシンボルS0000が送信され、受信信号Rが受信された事後確率P(S0000∩R)を計算し、確率計算回路111−2は、16QAMの0001に対応するシンボルS0001が送信され、受信信号Rが受信された事後確率P(S0001∩R)を計算するようになされている。
【0093】
以下、同様に、確率計算回路111−3は、16QAMの0010に対応するシンボルS0010が送信され、受信信号Rが受信された事後確率P(S0010∩R)を計算し、確率計算回路111−4乃至111−15は、シンボルS0011乃至S1110に対応する事後確率を計算するようになされている。そして、確率計算回路111−16は、16QAMの1111に対応するシンボルS1111が送信され、受信信号Rが受信された事後確率P(S1111∩R)を計算するようになされている。
【0094】
なお、本実施例においては、シンボルの第1乃至第4のビットのいずれかが0であるときの事後確率を、そのビットに対応するメトリックとして計算しているので、事後確率P(S1111∩R)を計算する確率計算回路111−16は、特に必要なく、取り除いてもよい。
【0095】
加算回路112−1は、第1のビットが0であるシンボル、即ち、S0000,S0001,S0010,S0011,S0100,S0101,S0110,S0111に対する事後確率を計算する確率計算回路111−1乃至111−8からの出力を受け取り、それらの値の総和を演算し、第1のビットに対するメトリックとしてビット逆拡散回路101−1に出力するようになされている。
【0096】
加算回路112−2は、第2のビットが0であるシンボル、即ち、S0000,S0001,S0010,S0011,S1000,S1001,S1010,S1011に対する事後確率を計算する確率計算回路111−1乃至111−4,111−9乃至111−12からの出力を受け取り、それらの値の総和を演算し、第2のビットに対するメトリックとしてビット逆拡散回路101−2に出力するようになされている。
【0097】
加算回路112−3は、第3のビットが0であるシンボル、即ち、S0000,S0001,S0100,S0101,S1000,S1001,S1100,S1101に対する事後確率を計算する確率計算回路111−i(i=1,2,5,6,9,10,13,14)からの出力を受け取り、それらの値の総和を演算し、第3のビットに対するメトリックとしてビット逆拡散回路101−3に出力するようになされている。
【0098】
加算回路112−4は、第4のビットが0であるシンボル、即ち、S0000,S0010,S0100,S0110,S1000,S1010,S1100,S1110に対する事後確率を計算する確率計算回路111−i(i=1,3,5,7,9,11,13,15)からの出力を受け取り、それらの値の総和を演算し、第4のビットに対するメトリックとしてビット逆拡散回路101−4に出力するようになされている。
【0099】
ビット逆拡散回路101−i(i=1,・・・,4)は、メトリック計算回路39より供給された第iのビットに対するメトリックに対して、図16のビット拡散回路91−iにおいて変更したビットの順番を元の順番に戻す処理を実行するようになされている。ビット逆拡散の処理が行われた第1乃至第4のビットに対するメトリックは、並直列変換器35に入力され、4系列のデータから1系列のデータに変換されるようになされている。
【0100】
図3は、図1のビタビ復号器37(復号手段)の構成例を表している。この実施例においては、入力端子62−1にビット挿入回路36の出力X(第1のビットに対するメトリックuまたは第3のビットに対するメトリックxに対応する値)が入力され、入力端子62−2にビット挿入回路36の出力Y(第2のビットに対するメトリックvまたは第4のビットに対するメトリックyに対応する値)が入力されるようになされている。
【0101】
そして、入力端子62−1より入力された値Xは、セレクタ132−1に入力されるとともに、反転回路131−1に入力され、そのビットがすべて反転された後、セレクタ132−3に入力されるようになされている。また、入力端子62−2より入力された値Yは、セレクタ132−2に入力されるとともに、反転回路131−2に入力され、そのすべてのビットが反転された後、セレクタ132−4に入力されるようになされている。
【0102】
セレクタ132−1は、定数発生回路133−1の出力である値1と、入力端子62−1を介して値Xの供給を受け、ビット挿入回路36より、Xに対する挿入フラグが入力されたとき、定数発生回路133−1が発生した値1を選択し、その他のとき、値Xを選択し、選択した値を乗算回路121−1,121−2に出力するようになされている。
【0103】
セレクタ132−2は、定数発生回路133−2の出力である値1と、入力端子62−2を介して値Yの供給を受け、ビット挿入回路36より、Yに対する挿入フラグが入力されたとき、定数発生回路133−2が発生した値1を選択し、その他のとき、値Yを選択し、選択した値を乗算回路121−1,121−3に出力するようになされている。
【0104】
セレクタ132−3は、定数発生回路133−3の出力である値1と、反転回路131−1の出力である、値Xを反転した値の供給を受け、ビット挿入回路36より、Xに対する挿入フラグが入力されたとき、定数発生回路133−3が発生した値1を選択し、その他のとき、値Xを反転した値を選択し、選択した値を乗算回路121−3,121−4に出力するようになされている。
【0105】
セレクタ132−4は、定数発生回路133−4の出力である値1と、反転回路131−2の出力である、値Yを反転した値の供給を受け、ビット挿入回路36より、Yに対する挿入フラグが入力されたとき、定数発生回路133−4が発生した値1を選択し、その他のとき、値Yを反転した値を選択し、選択した値を乗算回路121−2,121−4に出力するようになされている。
【0106】
乗算回路121−1は、セレクタ132−1より供給された値と、セレクタ132−2より供給された値を乗算し、乗算結果をブランチメトリックBM00として出力するようになされている。乗算回路121−2は、セレクタ132−1より供給された値と、セレクタ132−4より供給された値を乗算し、乗算結果をブランチメトリックBM01として出力している。同様に、乗算回路121−3は、セレクタ132−2より供給された値と、セレクタ132−3より供給された値を乗算し、乗算結果をブランチメトリックBM10として出力し、乗算回路121−4は、セレクタ132−3より供給された値と、セレクタ132−4より供給された値を乗算し、その乗算結果をブランチメトリックBM11として出力するようになされている。
【0107】
乗算回路121−1の出力BM00と、乗算回路121−4の出力BM11は、ACS回路122−1,122−3に入力されている。同様に、乗算回路121−2の出力BM01と、乗算回路121−3の出力BM10が、ACS回路122−2,122−4に入力されている。
【0108】
ACS回路122−1,122−3にはまた、ステートメトリック記憶装置66−1の出力SM00とステートメトリック記憶装置66−2の出力SM01が入力されており、ACS回路122−2,122−4には、ステートメトリック記憶装置66−3の出力SM10とステートメトリック記憶装置66−4の出力SM11が入力されている。
【0109】
ACS回路122−1乃至122−4は、入力されたブランチメトリックとステートメトリックから、新たなステートメトリックを計算し、その計算結果をステートメトリック記憶装置66−1乃至66−4に出力するとともに、選択されたパスに対応する情報SEL00乃至SEL11をパスメモリ65に出力するようになされている。
【0110】
なお、本実施例のビタビ復号器37のその他の構成は、図13における場合と同様であるので、その説明を省略する。
【0111】
なお、図1のデータ受信装置のその他の構成は、図12における場合と同様であるので、その説明を省略する。
【0112】
次に、図1のデータ受信装置の動作について説明する。
【0113】
アンテナ31で受けた受信信号は、復調器32で復調されて、シンボルのI成分とQ成分のデータが得られる。そして、このシンボルI成分とQ成分のデータは、シンボル逆拡散回路33により処理された後、メトリック計算回路39に供給される。
【0114】
次に、メトリック計算回路39におけるメトリック計算について説明する。ここにおけるメトリックとは、例えば、次式によって規定される、所定の受信信号を受信したときに、その受信信号を構成するビットに対する条件付き事後確率を意味する。
P(bi=0|R)=P(bi=0∩R)/P(R) (3)
【0115】
ここで、P(bi=0|R)は、受信信号R(I,Q)を受信したとき、送信シンボルの第iのビットbiが0である条件付き事後確率を、P(R)は、受信信号R(I,Q)を受信する確率を、P(bi=0∩R)は、第iのビットbiが0であるシンボルが送信され、受信信号R(I,Q)が受信された事後確率を、それぞれ表している。
【0116】
同様に、次式(4)によって、受信信号R(I,Q)を受信したとき、送信シンボルの第iのビットが1である条件付き事後確率を求めることができる。
P(bi=1|R)=P(bi=1∩R)/P(R) (4)
【0117】
ここで、P(bi=1|R)は、受信信号R(I,Q)を受信したとき、送信シンボルの第iのビットbiが1である条件付き事後確率を、P(R)は、受信信号R(I,Q)を受信する確率を、P(bi=1∩R)は、第iのビットbiが1であるシンボルが送信され、受信信号R(I,Q)が受信された事後確率を、それぞれ表している。
【0118】
また、次式(5)によっても、受信信号R(I,Q)を受信したとき、送信シンボルの第iのビットbiが1である条件付き事後確率を求めることができる。P(bi=1|R)=1−P(bi=0|R) (5)
【0119】
受信信号Rを受信する確率P(R)がシンボルの種類に依存しないので、メトリック計算回路39は、上述の条件付き事後確率P(bi=0|R)に代わりに事後確率P(bi=0∩R)をメトリックとして計算するようになされている。このように、確率P(R)の計算を省略することにより、回路構成を簡単にすることができる。
【0120】
即ち、メトリック計算回路39は、16QAMのシンボルを構成する第1乃至第4のビットに対するメトリックをそれぞれ計算し、
第1のビットに対するメトリックP(b1=0∩R)をu’、
第2のビットに対するメトリックP(b2=0∩R)をv’、
第3のビットに対するメトリックP(b3=0∩R)をx’、
第4のビットに対するメトリックP(b4=0∩R)をy’
として出力している。
【0121】
各々のメトリックの計算は、次式に従って行われる。
P(bi=0∩R)=(1/16)ΣP(S∩R) (6)
【0122】
ここで、P(S∩R)は、第iのビットが0であるシンボルSが送信され、受信信号Rが受信された事後確率を表し、ΣP(S∩R)は、第iのビットが0であるすべてのシンボルSjに対する事後確率P(S∩R)の和を表している。
【0123】
図2のメトリック計算回路39において、確率計算回路111−1は、P(S0000∩R)、即ち、16QAMの0000に対応するシンボルS0000が送信され、受信信号Rを受信した確率を計算する。
【0124】
確率計算回路111−2は、P(S0001∩R)、即ち、16QAMの0001に対応するシンボルS0001が送信され、受信信号Rを受信した確率を計算する。
【0125】
確率計算回路111−3は、P(S0010∩R)、即ち、16QAMの0010に対応するシンボルS0010が送信され、受信信号Rを受信した確率を計算する。
【0126】
以下、同様にして、確率計算回路111−4乃至111−16は、16QAMの残りのシンボルに対しても、それぞれ事後確率を計算し、全部で16個の事後確率の計算結果を得る。
【0127】
加算回路112−1は、第1のビットが0のシンボル、即ち、
S0000、S0001、S0010、S0011、
S0100、S0101、S0110、S0111
に対する上述の事後確率の総和を計算する。本来、この総和を16で割算したものが、P(b1=0∩R)となるが、すべてのメトリックを16倍しても特に問題はないので、メトリック計算回路39は、この事後確率の総和を第1のビットに対するメトリックu’として出力する。
【0128】
加算回路112−2は、第2のビットが0のシンボル、即ち、
S0000、S0001、S0010、S0011、
S1000、S1001、S1010、S1011
に対する上述の事後確率の総和を計算する。本来、この総和を16で割算したものが、P(b2=0∩R)となるが、すべてのメトリックを16倍しても特に問題はないので、メトリック計算回路39は、この事後確率の総和を第2のビットに対するメトリックv’として出力する。
【0129】
加算回路112−3は、第3のビットが0のシンボル、即ち、
S0000、S0001、S0100、S0101、
S1000、S1001、S1100、S1101
に対する上述の事後確率の総和を計算する。本来、この総和を16で割算したものが、P(b3=0∩R)となるが、すべてのメトリックを16倍しても特に問題はないので、メトリック計算回路39は、この事後確率の総和を第3のビットに対するメトリックx’として出力する。
【0130】
加算回路112−4は、第4のビットが0のシンボル、即ち、
S0000、S0010、S0100、S0110、
S1000、S1010、S1100、S1110
に対する上述の事後確率の総和を計算する。本来、この総和を16で割算したものが、P(b4=0∩R)となるが、すべてのメトリックを16倍しても特に問題はないので、メトリック計算回路39は、この事後確率の総和を第4のビットに対するメトリックy’として出力する。
【0131】
なお、図2の確率計算回路111−1乃至111−16における計算方法として、伝送路によって様々な計算法が考えられるが、ガウス伝送路を仮定した場合には、例えば、確率計算回路111−1において、以下のように事後確率を計算することができる。

Figure 0003606413
【0132】
ここで、σは伝送路の雑音電力の1/2の平方根を表す。即ち、2σが伝送路の雑音電力を表す。‖S0000−R‖は、シンボルS0000と受信信号Rとの、I−Q平面におけるユークリッド距離である。
【0133】
なお、式(7)の右辺の係数(1/(2π)1/2σ)は、ビタビ復号器37による最尤パスの選択に影響を与えないので、省略してもよい。その場合、P(S0000)∩R)は、次のように計算される。
Figure 0003606413
【0134】
確率計算回路111−2乃至111−16においても、同様にして、確率を計算することができる。
【0135】
次に、ビット逆拡散回路101−1乃至101−4は、メトリック計算回路39より供給されたメトリックu’,v’,x’,y’に対して、ビット逆拡散の処理を行った後、並直列変換器35に出力する。
【0136】
そして、並直列変換器35は、図16の直並列変換器4と逆の操作を行い、供給された4系統のデータを1系列のデータに変換した後、ビット挿入回路36に出力する。
【0137】
ビット挿入回路36では、図16のビット消去回路3と逆の操作が行われる。即ち、前述の例の消去マップ
X:10
Y:11
を用いて、
u1,v1,x1,y1,u2,v2,x2,y2・・・
の順で入力されるデータに対して、3ビットを周期として、最後の3ビット目の直前に、任意のダミーデータ(ここでは0)を挿入して、
データXとして、u1,0,y1,0,x2,・・・
データYとして、v1,x1,u2,v2,y2,・・・
を、この順で出力するとともに、ダミーデータを挿入した位置を示す挿入フラグをビタビ復号器37に供給する。
【0138】
ビタビ復号器37では、畳み込み符号化器2の状態遷移に従ってビタビ復号を行い、再生情報38を得る。次に、ビタビ復号器37の動作について詳細に説明する。
【0139】
セレクタ132−1およびセレクタ132−3は、ビット挿入回路36においてXとしてダミーデータが挿入され、Xに対する挿入フラグが入力された場合、ダミーデータに対するメトリックの確率計算を無効にするため、値1を出力する。
【0140】
同様に、セレクタ132−2およびセレクタ132−4は、ビット挿入回路36においてYとしてダミーデータが挿入され、Yに対する挿入フラグが入力された場合、ダミーデータに対するメトリックの確率計算を無効にするため、値1を出力する。
【0141】
即ち、乗算回路121−1乃至121−4によるブランチメトリックの算出およびACS回路122−1乃至122−4によりステートメトリックの算出は、すべて乗算によって行われているので(後述)、ダミーデータに対応して値1を出力することにより、メトリックの計算結果に影響を与えないようにしている。
【0142】
Xとしてダミーデータが挿入されていない場合においては、ビット挿入回路36より供給された値Xが、セレクタ132−1を介して乗算回路121−1,121−2に供給され、値Xを反転した値が、乗算回路121−3,121−4に供給される。
【0143】
同様に、Yとしてダミーデータが挿入されていない場合においては、ビット挿入回路36より供給された値Yが、セレクタ132−2を介して乗算回路121−1,121−3に供給され、値Yを反転した値が、乗算回路121−2,121−4に供給される。
【0144】
そして、乗算回路121−1では、ビット挿入回路36の出力の第1のビットの値が0である確率または第3のビットの値が0である確率に対応するデータXと、第2のビットの値が0である確率または第4のビットの値が0である確率に対応するデータYの積(即ち、第1のビットの値が0であり、かつ、第2のビットの値が0である確率、あるいは、第3のビットの値が0であり、かつ、第4のビットの値が0である確率)を計算し、ブランチメトリックBM00として出力する。このブランチメトリックBM00は、畳み込み符号化器2の符号出力00に対応している。
【0145】
同様にして、乗算回路121−2は、ビット挿入回路36の出力の第1ビットの値が0である確率または第3のビットの値が0である確率に対応する値Xと、第2のビットの値が1である確率または第4のビットの値が1である確率に対応する値(値Yを反転した値)の積(即ち、第1のビットの値が0であり、かつ、第2のビットの値が1である確率、あるいは、第3のビットの値が0であり、かつ、第4のビットの値が1である確率)を計算し、ブランチメトリックBM01として出力する。このブランチメトリックBM01は、畳み込み符号化器2の符号出力01に対応している。
【0146】
乗算回路121−3は、ビット挿入回路36の出力の第1のビットの値が1である確率または第3のビットの値が1である確率に対応する値(値Xを反転した値)と、第2のビットの値が0である確率または第4のビットの値が0である確率に対応する値Yの積(即ち、第1のビットの値が1であり、かつ、第2のビットの値が0である確率、あるいは、第3のビットの値が1であり、かつ、第4のビットの値が0である確率)を計算し、ブランチメトリックBM10として出力する。このブランチメトリックBM10は、畳み込み符号化器2の符号出力10に対応している。
【0147】
乗算回路121−4は、ビット挿入回路36の出力の第1のビットの値が1である確率または第3のビットの値が1である確率に対応する値(値Xを反転した値)と、第2のビットの値が1である確率または第4のビットの値が1である確率に対応する値(値Yを反転した値)の積(即ち、第1のビットの値が1であり、かつ、第2のビットの値が1である確率、あるいは、第3のビットの値が1であり、かつ、第4のビットの値が1である確率)を計算し、ブランチメトリックBM11として出力する。このブランチメトリックBM11は、畳み込み符号化器2の符号出力11に対応している。
【0148】
なお、XまたはYとしてダミーデータが挿入されている場合、セレクタ132−1乃至132−4は、そのダミーデータの代わりに、1を選択するので、乗算回路121−1乃至121−4は、ダミーデータに対応しない入力の値を、そのまま(1を乗じて)、ブランチメトリックとして出力する。
【0149】
ACS回路122−1は、畳み込み符号化器2の状態遷移(図10)に従って、次の2つの式の計算を行う。
SM00×BM00 (8)
SM01×BM11 (9)
【0150】
ここでSM00は、1単位時間前のステートメトリック記憶装置66−1の値、SM01は、1単位時間前のステートメトリック記憶装置66−2の値、BM00は、乗算回路121−1の演算結果、BM11は、乗算回路121−4の演算結果をそれぞれ表している。
【0151】
そして、ACS回路122−1は、尤度の大きい方、すなわち、式(8)と式(9)のうち、計算結果の大きい方を選択し、その選択情報SEL00を後段のパスメモリ65に出力するとともに、式(8)と式(9)を計算して得られた結果のうち大きい方を、後段のステートメトリック記憶装置66−1に供給し、記憶させる。すなわち式(8)の計算結果の方が大きければ、SEL00=0とし、式(9)の計算結果の方が大きければ、SEL00=1とする。また、前者の場合、SM00×BM00が、後者の場合、SM01×BM11が、それぞれステートメトリック記憶装置66−1に、新たなステートメトリックSM00として記憶される。
【0152】
なお、ACS回路122−2乃至122−4も同様に動作し、新たなステートメトリックSM01乃至SM11を計算する。
【0153】
ビタビ復号器37におけるその他の動作は、図13における場合と同様であるので、その説明を省略する。
【0154】
図4は、メトリック計算回路39の他の構成例を示している。
【0155】
A/D変換器141−1は、シンボル逆拡散回路33より供給されたI成分の信号I’をデジタル値に変換し、その値をROM142−1乃至142−4に、アドレスデータとして出力するようになされている。
【0156】
A/D変換器141−2は、シンボル逆拡散回路33より供給されたQ成分の信号Q’をデジタル値に変換し、その値をROM142−1乃至142−4に、アドレスデータとして出力するようになされている。
【0157】
ROM142−i(i=1,・・・,4)は、A/D変換器141−1,141−2より供給されたアドレスデータに対応するアドレスに記憶されている値を第iのビットに対するメトリックとしてビット逆変換回路101−iに出力するようになされている。
【0158】
即ち、ROM142−i(i=1,・・・,4)には、受信信号RのI成分I’およびQ成分Q’の各値に対応した上述の事後確率の総和の値が、第iのビットに対するメトリックとして、予め記憶されている。
【0159】
図5は、本発明の第2の実施例の構成を示している。第2の実施例は、第1の実施例のメトリック計算回路39とビット逆変換回路101−1乃至101−4の間に第2メトリック計算回路40を挿入したものであるので、第2メトリック計算回路40の説明だけを行い、他の構成要素の説明を省略する。
【0160】
図6は、第2メトリック計算回路40の構成例を示している。
【0161】
この第2メトリック計算回路40においては、対数演算器151−1は、メトリック計算回路39より供給された値u’の自然対数(log(u’))を計算し、その値を反転回路152−1に出力するようになされている。
【0162】
対数演算器151−2は、メトリック計算回路39より供給された値v’の自然対数(log(v’))を計算し、その値を反転回路152−2に出力するようになされている。
【0163】
同様に、対数演算器151−3は、メトリック計算回路39より供給された値x’の自然対数(log(x’))を計算し、その値を反転回路152−3に出力し、対数演算器151−4は、メトリック計算回路39より供給された値y’の自然対数(log(y’))を計算し、その値を反転回路152−4に出力するようになされている。
【0164】
反転回路152−1は、対数演算器151−1より供給された値(log(u’))に−1を乗じた値(−log(u’))を、第1のビットに対するメトリックu’としてビット逆変換回路101−1に出力するようになされている。
【0165】
反転回路152−2は、対数演算器151−2より供給された値(log(v’))に−1を乗じた値(−log(v’))を、第2のビットに対するメトリックv’としてビット逆変換回路101−2に出力するようになされている。
【0166】
同様に、反転回路152−3は、対数演算器151−3より供給された値(log(x’))に−1を乗じた値(−log(x’))を、第3のビットに対するメトリックx’としてビット逆変換回路101−3に出力し、反転回路152−4は、対数演算器151−4より供給された値(log(y’))に−1を乗じた値(−log(y’))を、第3のビットに対するメトリックy’としてビット逆変換回路101−4に出力するようになされている。
【0167】
次に、第2の実施例において利用されているメトリックについて説明する。
【0168】
受信装置が受信する信号Rが時間的に独立である場合、ビタビ復号器37は、上述の条件付き事後確率P(bi=0|R)の積
Figure 0003606413
が最大である系列(即ち、最尤パス)を選択し、復号を行う。
【0169】
ここで、R(t)は、時刻tにおける受信信号を表し、{R(t)}は、受信信号系列を表し、P({R(t)})は、受信信号系列が{R(t)}となる確率を表している。bi(t)は、時刻tにおける伝送シンボルを構成する第iのビットの値(0または1)であり、{bi(t)}は、伝送するビットデータ系列を表している。{bi(t)}は、t,iの値に対応して0または1の2通りの値をとるので、系列長が2である場合においては、{00}、{01}、{10}、および、{11}の4通りの系列となり、系列長が3である場合においては8通りの系列、系列長が4である場合においては16通りの系列となる。
【0170】
ビタビ復号器37は、これらの複数の系列のうち、受信信号系列{R(t)}を受信したとき、最も確からしい送信系列(最尤パス)を選択する。即ち、ビタビ復号器37は、上述の条件付き事後確率P(bi=0|R)の積が最大であるパスを選択する。なお、式(10)の分母ΠP(R(t))は、パスの種類に依存しないので、ビタビ復号器37は、式(10)の分子ΠP(bi(t)=0∩R(t))が最大であるパスを選択すればよい。
【0171】
さらに、第2の実施例においては、第1の実施例におけるメトリックである確率P(bi(t)=0∩R(t))(時刻tにおけるP(bi=0∩R))の関数形を、次式に示すように指数関数に仮定している。
P(bi(t)=0∩R(t))=exp(−A(t)) (11)
【0172】
このとき、式(10)の分子ΠP(bi(t)=0∩R(t))は、
Figure 0003606413
となり、ビタビ復号器37は、式
ΣA(t)=Σ(−log(P(bi(t)=0∩R(t))))(13)
の値が最小となるパスを、最尤パスとして選択すればよい。
【0173】
従って、各時刻tにおける各ビットiに対するメトリックは、式
−log(P(bi(t)=0∩R(t))) (14)
で得られる値となる。即ち、第1の実施例においては、メトリック計算回路39は、式
P(bi(t)=0∩R(t)) (15)
に従ってメトリックを算出しているが、第2の実施例のおいては、第2メトリック計算回路40が、メトリック計算回路39により算出された値(式(15)で得られる値)の自然対数に−1を乗じた値を算出して、式(14)に従ったメトリックを算出している。
【0174】
なお、対数演算器151−1乃至151−4は、自然対数の代わりに常用対数を計算するようにしてもよい。
【0175】
また、メトリック計算回路39および第2メトリック計算回路40の代わりに、図4に示すメトリック計算回路39を利用し、ROM142−i(i=1,・・・,4)に、受信信号RのI成分I’およびQ成分Q’の各値に対応した上述の事後確率の総和の値の対数を、第iのビットに対するメトリックとして予め記憶しておくようにしてもよい。
【0176】
図7は、第2の実施例のビタビ復号器37の構成例を示している。図7のビタビ復号器37においては、上述のように、入力端子62−1と62−2から、シンボルの第1のビットの値が0である確率または第3のビットの値が0である確率を指数関数と仮定したときのその指数部に対応するデータXと、シンボルの第2のビットの値が0である確率または第4のビットの値が0である確率を指数関数と仮定したときのその指数部に対応するデータYが入力される。
【0177】
そして、入力端子62−1より入力された値Xは、セレクタ164−1に入力されるとともに、減算回路161−1に入力される。減算回路161−1は、指数部の最大値からXを減算した後、その値をセレクタ164−3に出力するようになされている。また、入力端子62−2より入力された値Yは、セレクタ164−2に入力されるとともに、減算回路161−2に入力される。減算回路161−2は、指数部の最大値からYを減算した後、その値をセレクタ164−4に出力するようになされている。
【0178】
セレクタ164−1は、定数発生回路165−1の出力である値0と、入力端子62−1を介して値Xの供給を受け、ビット挿入回路36より、Xに対する挿入フラグが入力されたとき、定数発生回路165−1が発生した値0を選択し、その他のとき、値Xを選択し、選択した値を加算回路162−1,162−2に出力するようになされている。
【0179】
セレクタ164−2は、定数発生回路165−2の出力である値0と、入力端子62−2を介して値Yの供給を受け、ビット挿入回路36より、Yに対する挿入フラグが入力されたとき、定数発生回路165−2が発生した値0を選択し、その他のとき、値Yを選択し、選択した値を加算回路162−1,162−3に出力するようになされている。
【0180】
セレクタ164−3は、定数発生回路165−3の出力である値0と、減算回路161−1の出力である、指数部の最大値から値Xを減算した値の供給を受け、ビット挿入回路36より、Xに対する挿入フラグが入力されたとき、定数発生回路165−3が発生した値0を選択し、その他のとき、指数部の最大値から値Xを減算した値を選択し、選択した値を加算回路162−3,162−4に出力するようになされている。
【0181】
セレクタ164−4は、定数発生回路165−4の出力である値0と、減算回路161−2の出力である、指数部の最大値から値Yを減算した値の供給を受け、ビット挿入回路36より、Yに対する挿入フラグが入力されたとき、定数発生回路165−4が発生した値0を選択し、その他のとき、指数部の最大値から値Yを減算した値を選択し、選択した値を加算回路162−2,162−4に出力するようになされている。
【0182】
加算回路162−1は、セレクタ164−1より供給された値と、セレクタ164−2より供給された値を加算し、その結果をブランチメトリックBM00として出力するようになされている。加算回路162−2は、セレクタ164−1より供給された値と、セレクタ164−4より供給された値を加算し、その結果をブランチメトリックBM01として出力している。同様に、加算回路162−3は、セレクタ164−2より供給された値と、セレクタ164−3より供給された値を加算し、その結果をブランチメトリックBM10として出力し、加算回路162−4は、セレクタ164−3より供給された値と、セレクタ164−4より供給された値を加算し、その結果をブランチメトリックBM11として出力するようになされている。
【0183】
加算回路162−1の出力BM00と、加算回路162−4の出力BM11は、ACS回路163−1,163−3に入力されている。同様に、加算回路162−2の出力BM01と、加算回路162−3の出力BM10が、ACS回路163−2,163−4に入力されている。
【0184】
ACS回路163−1,163−3にはまた、ステートメトリック記憶装置66−1の出力SM00とステートメトリック記憶装置66−2の出力SM01が入力されており、ACS回路163−2,163−4には、ステートメトリック記憶装置66−3の出力SM10とステートメトリック記憶装置66−4の出力SM11が入力されている。
【0185】
ACS回路163−1乃至163−4は、入力されたブランチメトリックとステートメトリックを加算して、新たなステートメトリックを計算し、その計算結果をステートメトリック記憶装置66−1乃至66−4に出力するとともに、選択されたパスに対応する情報SEL00乃至SEL11をパスメモリ65に出力するようになされている。
【0186】
図7のビタビ復号器37のACS回路163−1乃至163−4は、ステートメトリックにブランチメトリックを加算して、パスメトリックを更新するので、セレクタ164−1,164−3は、Xに対する挿入フラグが入力されたとき、定数発生回路133−1,133−3が発生した値0を加算回路162−1,162−3にそれぞれ出力し、セレクタ164−2,164−4は、Yに対する挿入フラグが入力されたとき、定数発生回路133−2,133−4が発生した値0を加算回路162−2,162−4にそれぞれ出力するようにして、ダミーデータがメトリックの計算結果に影響を与えないようにしている。
【0187】
以上のようにして、上記実施例においては、受信信号Rを受信したとき、送信シンボルが所定のシンボルSである条件付き事後確率P(S|R)の代わりに、所定のシンボルSが送信され、受信信号Rが受信された事後確率P(S∩R)を計算し、その事後確率P(S∩R)から、シンボルの各ビットに対するメトリックを計算している。このようにすることにより、16QAM方式で送信されてきたデータに対するメトリックを算出し、受信したデータを正確に復号化することができる。
【0188】
上記実施例においては、16QAM方式でデータを変調し、復調するようにしたが、このほか、64QAM、256QAMなどの、I成分とQ成分が、それぞれ2以上のビットに対応する多値多位相変調方式を採用する場合においても、本発明は適用することが可能である。
【0189】
【発明の効果】
以上のごとく、請求項1に記載のデータ受信装置および請求項4に記載のデータ受信方法によれば、所定のデータのシンボルが伝送され、かつ、そのシンボルが受信された事後確率をシンボル毎に計算し、シンボルのビット毎に、そのビットが所定の値であるシンボルの事後確率の総和を、そのビットに対するメトリックとして計算するようにしたので、比較的簡単な回路でメトリックを計算することができ、I成分とQ成分がそれぞれ2ビット以上に対応する多値多相変調方式で伝送されてくる信号を受信し、正確に復号することができる。
【0190】
請求項5に記載のデータ受信装置および請求項8に記載のデータ受信方法によれば、所定のデータのシンボルが伝送され、かつ、そのシンボルが受信された事後確率をシンボル毎に計算し、シンボルのビット毎に、そのビットが所定の値であるシンボルの事後確率の総和の対数に−1を乗じた値を、そのビットに対するメトリックとして計算するようにしたので、比較的簡単な回路でメトリックを計算することができ、I成分とQ成分がそれぞれ2ビット以上に対応する多値多相変調方式で伝送されてくる信号を受信し、正確に復号することができる。
【図面の簡単な説明】
【図1】本発明のデータ受信装置の第1の実施例の構成を示すブロック図である。
【図2】図1のメトリック計算回路の構成例を示すブロック図である。
【図3】図1のビタビ復号器の構成例を示すブロック図である。
【図4】図1のメトリック計算回路の他の構成例を示すブロック図である。
【図5】本発明のデータ受信装置の第2の実施例の構成を示すブロック図である。
【図6】図5の第2メトリック計算回路の構成例を示すブロック図である。
【図7】図5のビタビ復号器の構成例を示すブロック図である。
【図8】従来のデータ送信装置の構成例を示すブロック図である。
【図9】図8の畳み込み符号化器の構成例を示すブロック図である。
【図10】図9の畳み込み符号化器の状態遷移を説明する図である。
【図11】QPSKの信号点配置を説明する図である。
【図12】従来のデータ受信装置の構成例を示すブロック図である。
【図13】図12のビタビ復号器の構成例を示すブロック図である。
【図14】図13のブランチメトリック演算回路の構成例を示すブロック図である。
【図15】図13のパスメモリの構成例を示すブロック図である。
【図16】16QAMを用いた場合のデータ送信装置の構成例を示すブロック図である。
【図17】16QAMの信号点配置を説明する図である。
【図18】図16の装置で送信したデータを受信するデータ受信装置の構成例を示す図である。
【図19】図18の実施例の動作を説明する図である。
【符号の説明】
32 復調器, 33 シンボル逆拡散回路, 35 並直列変換器, 36ビット挿入回路, 37 ビタビ復号器, 38 再生情報, 39 メトリック計算回路, 40 第2メトリック計算回路,101−1乃至101−4 ビット逆拡散回路, 111−1乃至111−16 確率計算回路, 112−1乃至112−4 加算回路, 141−1,141−2 A/D変換器, 142−1乃至142−4 ROM, 151−1乃至151−4 対数演算器,152−1乃至152−4 反転回路[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a data receiving apparatus and method, and more particularly to a data receiving apparatus that calculates a posterior probability that a symbol of predetermined data is transmitted and that the symbol is received for each symbol, and calculates a metric from the posterior probability. And methods.
[0002]
[Prior art]
In the United States, digital broadcasting has already started. In Europe as well, in order to introduce digital television broadcasting, a standardized organization Digital Video Broadcasting (DVB) has been formed and its standard system is being compiled. This digital broadcasting is introduced, for example, on pages 139 to 151 of Nikkei Electronics 1996.1.15 (no. 653) as “Digital broadcasting, Europe will be put to practical use after the US”.
[0003]
When performing digital broadcasting, it is desirable to reduce the power consumption as much as possible. In such a communication channel with severe power limitation, generally, an encoding gain is obtained using an error correction code to reduce power. In such a system, error correction coding is generally performed on the transmission side, and error correction decoding is performed on the reception side. In particular, a convolutional code is advantageous in a communication channel with a small signal power to noise power ratio (C / N ratio), and this code can easily perform soft decision decoding by using the Viterbi decoding method. Gain can be obtained.
[0004]
Further, there is known a punctured code that can easily realize a plurality of coding rates using the same decoder by thinning out a code output sequence of a convolutional encoder according to a certain rule. Further, by spreading the code output sequence of the punctured encoder for each bit according to a certain rule, it is possible to improve resistance to noise superimposed on the transmission path.
[0005]
FIG. 8 shows a configuration example of a transmitting apparatus proposed in the standard DVB-T for DVB terrestrial television broadcasting. In this apparatus, a punctured convolutional code, bit spreading, and a QPSK modulation method are used.
[0006]
That is, in the example of FIG. 8, the 1-bit serial data output from the information source 1 is input to the convolutional encoder 2, and the punctured code mother code sequences X and Y are generated. In this example, the coding rate is ½. X and Y each represent a 1-bit code sequence.
[0007]
The code sequences X and Y are input to the bit erasure circuit 3 so that bit erasure processing is performed according to a predetermined rule. The serialized punctured code sequence output from the bit erasure circuit 3 is input to the serial / parallel converter 4 so as to be converted from one series of data to two series of data.
[0008]
The two series of data x and y output from the serial / parallel converter 4 are input to the bit spreading circuits 5-1 and 5-2, respectively, so that bit spreading processing is performed in which the order of bits is spread (interlaced). Has been made. Bit spread data x ′ and y ′ output from the bit spread circuits 5-1 and 5-2 are input to the signal point assignment circuit 6 and assigned to symbols on the transmission path. The signal point assignment circuit 6 outputs coordinate data I ′ and Q ′ of signal points represented by an in-phase component (I component) and a quadrature component (Q component) that are orthogonal to each other.
[0009]
The symbol spreading circuit 7 executes symbol spreading processing for spreading the order of symbols defined by the coordinate data I ′ and Q ′ output from the signal point assigning circuit 6, and calculates the I and Q components of the spread symbols. Output. The modulator 8 is configured to digitally modulate an I component and a Q component, for example, by an OFDM (Orthogonal Frequency Division Multiplex) method, and output the result via an antenna 9 as a radio wave.
[0010]
FIG. 9 illustrates a configuration example of the convolutional encoder 2. However, this configuration example is not defined by DVB-T, and shows a principle configuration for explaining the convolution process. In this example, 1-bit serial data output from the information source 1 is input from the terminal 21, and sequentially delayed by one clock by the delay circuits 22 and 23, and then output to the adder circuits 24 and 25. ing. The adder circuit 24 is also supplied with the output of the terminal 21 and the output of the delay circuit 22. The adder circuit 24 adds these data (exclusive OR operation) and then outputs the data X from the terminal 26. It is designed to output. The adder circuit 25 adds the output of the terminal 21 and the output of the delay circuit 23 (exclusive OR operation) and outputs the result as data Y from the terminal 27.
[0011]
That is, in this embodiment, for a 1-bit input, a 2-bit mother code determined from the internal state of the delay circuits 22 and 23 is output. In this example, the constraint length is 3, the internal delay element is 2, the number of states is 4, and the coding rate is 1/2.
[0012]
FIG. 10 shows a state transition diagram of the convolutional encoder 2. The state transition of the convolutional encoder 2 is as follows.
[0013]
That is, for example, when 0 is input from the terminal 21 in the state 00 (the output of the delay element 22 and the output of the delay element 23 are both 0), (XY) = (00) is output from the terminals 26 and 27. Is output and transitions to state 00. When 1 is input from state 00, (XY) = (11) is output and the state transitions to 10. When 0 is input from state 01, (XY) = (11) is output and the state transitions to state 00. When 1 is input from the state 01, (XY) = (00) is output, and the state transitions to the state 10.
[0014]
Also in other states, as shown in FIG. 10, the illustrated output is output with respect to the input of 0 or 1, and the state transits to the illustrated state.
[0015]
The bit erasing circuit 3 can change the coding rate as a result by erasing data at an appropriate position from the mother code sequence (XY) according to a certain rule. Below, for example,
X: 10
Y: 11
A case where bits are erased according to the erase map as described above will be described.
[0016]
The bit corresponding to 1 in the erasure map is transmitted, and the bit corresponding to 0 is not transmitted (erased). According to the erasure map, the outputs X (= X1) and Y (= Y1) of the convolutional encoder 2 at a certain time are transmitted in the order of X1Y1, and at the next time, the output X of the convolutional encoder 2 is transmitted. (= X2) is erased and not transmitted, and only Y (= Y2) is transmitted. That is, the bits transmitted at these two times are X1Y1Y2. With this operation, the number of bits input to the convolutional encoder 2 is 2 bits, and the number of bits output from the bit erasure circuit 3 is 3 bits, so that the coding rate R is 2/3. This operation is repeated every two unit times.
[0017]
In the serial-parallel converter 4, the input one series of data X1, Y1, Y2,... Is converted into two series of data (x, y).
[0018]
The bit spreading circuits 5-1 and 5-2 spread the bits by changing the order of the input data series x and y according to a predetermined rule. At this time, generally, the spreading methods of the bit spreading circuits 5-1 and 5-2 are different.
[0019]
An example of bit diffusion is shown below. An M-bit input data is defined as one block, and an appropriate numerical value s is determined. Bit spread is a vector consisting of an M-bit input sequence
From (B0, B1, ..., Bk, ..., BM-1),
Vector consisting of M-bit output sequence after spreading
Meaning substitution to (B′0, B′1,..., B′n,..., B′M−1). At this time, B′n = Bk (n = k + s mod M).
[0020]
By using different s in the bit spreading circuits 5-1 and 5-2, different bit spreading circuits can be configured with the same algorithm.
[0021]
The signal point assignment circuit 6 assigns the input data (x ′, y ′) to the symbols on the transmission path. The assignment is performed according to the QPSK method, for example, as shown in FIG. That is,
When (x ′, y ′) = (0, 0), (I ′, Q ′) = (1 / √2, 1 / √2),
When (x ′, y ′) = (0, 1), (I ′, Q ′) = (1 / √2, −1 / √2),
When (x ′, y ′) = (1, 0), (I ′, Q ′) = (− 1 / √2, 1 / √2),
When (x ′, y ′) = (1, 1), (I ′, Q ′) = (− 1 / √2, −1 / √2)
Is assigned as
[0022]
The symbol spreading circuit 7 performs symbol spreading by replacing the order of the symbols S ′ represented by (I ′, Q ′) according to a predetermined rule to obtain the symbols S (I, Q). As a result, burst errors received on the transmission line can be diffused.
[0023]
To give a specific example, when N-1 symbols are used as a unit block for spreading and a number G that is less than N and relatively prime to N is determined, spreading is a vector whose elements are symbols before spreading.
From (S′1, S′2,..., S′k,..., S′N−1)
A vector whose elements are the symbols after spreading
It is executed as a replacement to (S1, S2,..., Sn,..., SN-1). At this time, Sn = S′k (n = G ^ k mod N).
[0024]
In the modulator 8, the carrier wave is modulated according to the I component and Q component of the input symbol S and transmitted via the antenna 9.
[0025]
FIG. 12 illustrates a configuration example of a receiving apparatus that receives data transmitted from the transmitting apparatus in FIG. The demodulator 32 demodulates the radio wave received via the antenna 31 and outputs an I component signal and a Q component signal. The symbol despreading circuit 33 performs a process reverse to the symbol spreading process in the symbol spreading circuit 7 of FIG. 8, that is, a process of returning the order of the symbols replaced in the symbol spreading circuit 7 to the original order, and the I signal component I ′ And Q signal component Q ′.
[0026]
The bit despreading circuits 34-1 and 34-2 are the bits changed in the bit spreading circuits 5-1 and 5-2 of FIG. 8 with respect to the I ′ signal and the Q ′ signal output from the symbol despreading circuit 33. The process of returning the order to the original order is executed.
[0027]
The data x corresponding to the I ′ signal component output from the bit despreading circuits 34-1 and 34-2 and the data y corresponding to the Q ′ signal component are input to the parallel-serial converter 35, and two series of data (X, y) is converted into one series of data and supplied to the bit insertion circuit 36.
[0028]
In the bit insertion circuit 36, a bit insertion process is performed opposite to the bit erase process in the bit erase circuit 3 of FIG. The bit insertion circuit 36 inputs the bit I data component data x and the Q signal component data y to the Viterbi decoder 37, which is Viterbi decoded and output as reproduction information 38. .
[0029]
Next, the operation will be described.
[0030]
The received signal received by the antenna 31 is demodulated by the demodulator 32 to obtain I component and Q component data of each symbol. The data of the I component and the Q component is input to the symbol despreading circuit 33, where an operation reverse to that in the symbol spreading circuit 7 is performed to obtain despread data I ′ and Q ′.
[0031]
That is, when this despreading operation is expressed using the same values N and G as those used in the symbol spreading circuit 7, it is a vector whose elements are symbols before despreading.
(S1, S2,..., Sn,..., SN-1)
A vector whose elements are symbols after despreading
This is a process of replacing (S′1, S′2,..., S′k,..., S′N−1). At this time, Sn = S′k (n = G ^ k mod N).
[0032]
The I component data I ′ and Q component data Q ′ supplied from the symbol despreading circuit 33 are supplied to the bit despreading circuits 34-1 and 34-2, respectively.
[0033]
The bit despreading circuits 34-1 and 34-2 correspond to the bit spreading circuits 5-1 and 5-2, respectively, and perform operations reverse to those of the bit spreading circuits 5-1 and 5-2, respectively.
[0034]
That is, M input data is set as one block, an appropriate numerical value s is determined, and a vector composed of M input sequences
From (B′0, B′1,..., B′n,..., B′M−1),
Vector consisting of M output sequences after despreading
(B0, B1,..., Bk,..., BM-1) are obtained. At this time, B′n = Bk (n = k + s mod M).
[0035]
Here, the numerical value s used in the bit despreading of the bit despreading circuits 34-1 and 34-2 is the same value as the numerical value s used in the bit spreading circuits 5-1 and 5-2, respectively.
[0036]
The data sequence (x, y) that has been bit-despread in this way is supplied to the parallel-to-serial converter 35 of the next stage, where the reverse operation of the serial-to-parallel converter 4 is performed, and two series of data (x, y). To one series of data.
[0037]
In the bit insertion circuit 36, an operation reverse to that of the bit erasure circuit 3 is performed. That is, the erase map in the previous example
X: 10
Y: 11
In response to the processing of the bit erasing circuit 3 using
X1, Y1, Y2 (in this case, x1, y1, y2)
For the data input in this order, arbitrary dummy data (here, 0) is inserted at a position corresponding to the erased data X2 (x2),
As X data, X1 (x1), 0 is
As Y data, Y1 (y1), Y2 (y2) are
Output in this order. Further, an insertion flag indicating the position where the dummy data is inserted is supplied to the Viterbi decoder 37.
[0038]
The Viterbi decoder 37 performs Viterbi decoding according to the state transition of the convolutional encoder 2 (FIG. 10). FIG. 13 shows an example of the Viterbi decoder 37. Data X and Y output from the bit insertion circuit 36 are input to the input terminals 62-1 and 62-2, respectively. These data X and Y are input to the branch metric calculation circuits 63-1 to 63-4. In the branch metric calculation circuit 63-1, the distance between the input data (X, Y) and the coordinate point (1 / √2, 1 / √2) shown in FIG. 11 is calculated as a branch metric. Similarly, in the branch metric calculation circuits 63-2 to 63-4, input data (X, Y) and coordinate points (1 / √2, −1 / √2), (−1 / √2, 1 / √). 2) or (−1 / √2, −1 / √2) is calculated.
[0039]
The outputs (branch metrics) BM00 and BM11 of the branch metric calculation circuits 63-1 and 63-4 are input to ACS (Add Compare Select) circuits 64-1 and 64-3. Similarly, the output (branch metric) BM01 of the branch metric calculation circuit 63-2 and the output (branch metric) BM10 of the branch metric calculation circuit 63-3 are input to the ACS circuits 64-2 and 64-4.
[0040]
The ACS circuits 64-1 and 64-3 also receive the output (state metric) SM00 of the state metric storage device 66-1 and the output (state metric) SM01 of the state metric storage device 66-2. 64-2 and 64-4 are supplied with the output (state metric) SM10 of the state metric storage device 66-3 and the output (state metric) SM11 of the state metric storage device 66-4.
[0041]
The ACS circuits 64-1 to 64-4 add one input branch metric BM and the corresponding state metric SM, and add the other branch metric BM and the corresponding state metric SM. Then, the ACS circuits 64-1 to 64-4 compare the two addition results, and in response to the comparison result, the smaller addition value is newly stored in the state metric storage devices 66-1 to 66-4. While outputting as the state metric SM, signals SEL00 to SEL11 representing the selection results are output to the path memory 65. Further, state metrics SM00 to SM11 are input to the path memory 65 from the state metric storage devices 66-1 to 66-4.
[0042]
The state metric storage devices 66-1 to 66-4 are reset by a signal input from the terminal 61. The path memory 65 is configured to output a decoding result from a terminal 67.
[0043]
Next, the operation will be described.
[0044]
In the branch metric calculation circuit 63-1, the distance between the input data (X, Y) and the coordinate point (1 / √2, 1 / √2) is calculated as the branch metric BM00. Similarly, in the branch metric calculation circuit 63-2, the distance between the input data (X, Y) and the coordinate point (1 / √2, −1 / √2), and in the branch metric calculation circuit 63-3, the input data (X, Y). ) And the coordinate point (−1 / √2, 1 / √2), the branch metric calculation circuit 63-4 uses the input data (X, Y) and the coordinate point (−1 / √2, −1 / √2). ) Are calculated as branch metrics BM01, BM10, and BM11, respectively. Here, the distance calculation for the inserted dummy data is omitted according to the insertion flag supplied from the bit insertion circuit 36 at the preceding stage. That is, the distance between the inserted bit and the coordinate to be compared is all the same (for example, 0).
[0045]
The ACS circuit 64-1 calculates the following two expressions according to the state transition of the convolutional encoder 2, and selects the one with the highest likelihood, that is, the one with the smaller calculation result, and the selection information SEL is the path memory in the subsequent stage. In 65, the calculation result SM is supplied to the state metric storage device 66-1.
[0046]
SM00 + BM00 (1)
SM01 + BM11 (2)
[0047]
Here, SM00 is a value of the state metric storage device 66-1 one unit time ago, SM01 is a value of the state metric storage device 66-2 one unit time ago, and BM00 is a value of the branch metric calculation circuit 63-1. The calculation result, BM11, represents the calculation result of the branch metric calculation circuit 63-4.
[0048]
If the calculation result of Expression (1) is smaller, SEL00 = 0 is supplied to the subsequent path memory 65, and if the calculation result of Expression (2) is smaller, SEL00 = 1 is supplied. In the former case, SM00 + BM00 is stored, and in the latter case, SM01 + BM11 is stored as a new state metric SM00 in the state metric storage device 66-1.
[0049]
This calculation will be described with reference to the state transition diagram of FIG. There are two paths that reach state 00. The first is a path that receives 0 in state 00 and outputs 00, and the calculation expression to be compared is as shown in equation (1), and the second is in state 01. In a path in which 0 is input and 11 is output, a calculation expression to be compared is as shown in Expression (2). The smaller of the calculation results is supplied as new state metric SM00 to state metric storage device 66-1.
[0050]
Similar operations are performed in the ACS circuits 64-2 to 64-4. Note that the state metric storage devices 66-1 to 66-4 are reset to 0 at the initial stage when the system operates. This control is performed via a terminal 61 from a control device (not shown).
[0051]
The path memory 65 selects, stores, and propagates input data, that is, decoded data, using the selection information SEL00 to SEL11 from the ACS circuits 64-1 to 64-4 according to the state transition diagram of FIG.
[0052]
FIG. 14 illustrates a configuration example of the branch metric calculation circuit 63-1. The data X input from the terminal 62-1 is input to the subtraction circuit 51 and is subtracted by 1 / √2 from the generation circuit 52. The output of the subtracting circuit 51 is branched and input to the multiplying circuit 53 and multiplied (ie, squared). The selector 203 receives the output of the multiplication circuit 53 and the output of the generation circuit 202. When the insertion flag for X is input from the bit insertion circuit 36 via the terminal 201, the selector 203 generates 0 generated by the generation circuit 202. In other cases, the output of the multiplication circuit 53 is selected and output to the addition circuit 54.
[0053]
Similarly, the data Y input from the terminal 62-2 is input to the subtraction circuit 55 and is subtracted by 1 / √2 from the generation circuit 56. The output of the subtraction circuit 55 is branched and input to the multiplication circuit 57, and is multiplied (square). The selector 206 receives the output of the multiplication circuit 57 and the output of the generation circuit 205, and selects 0 generated by the generation circuit 205 when the insertion flag for Y is input from the bit insertion circuit 36 via the terminal 204. At other times, the output of the multiplication circuit 57 is selected and output to the addition circuit 54. The adder circuit 54 adds the output of the selector 203 and the output of the selector 206 and outputs the result as a branch metric BM00.
[0054]
That is, in this example, when the insertion flag is not input, the subtracting circuit 51 outputs X−1 / √2, which is squared by the multiplying circuit 53 and sent from the multiplying circuit 53 (X−1 / √2). 2 Is output. Similarly, the subtraction circuit 55 outputs Y−1 / √2, and this value is squared by the multiplication circuit 57, and the multiplication circuit 57 is (Y−1 / √2). 2 Is output. The adder circuit 54 is an addition value (X−1 / √2) of the output of the multiplier circuit 53 and the output of the multiplier circuit 57. 2 + (Y-1 / √2) 2 Is output as the branch metric BM00.
[0055]
On the other hand, when the insertion flag for X is input, the selector 203 outputs 0, so the output of the adder circuit 54 is (Y−1 / √2). 2 When the insertion flag for Y is input, the selector 206 outputs 0, so that the output of the adder circuit 54 is (X−1 / √2) 2 It becomes.
[0056]
In the branch metric calculation circuits 63-2 to 63-4, the same calculation is performed by a circuit having the same configuration as that shown in FIG. However, in the branch metric calculation circuit 63-2, the output of the generation circuit 52 is 1 / √2, and the output of the generation circuit 56 is −1 / √2. In the branch metric calculation circuit 63-3, the outputs of the generation circuits 52 and 56 are -1 / √2 and 1 / √2, respectively. In the branch metric calculation circuit 63-4, -1 / √√ respectively. 2 and -1 / √2.
[0057]
FIG. 15 shows a block diagram of the path memory 65. The selection information SEL00 to SEL11 output from the ACS circuits 64-1 to 64-4 is input to the terminals 71-1 to 71-4. These selection information SEL00 to SEL11 are input as control signals to the two-input one-output selectors 73-1 to 73-4, respectively. The selector 73-1 receives fixed data 0 from the terminal 72-1 as two inputs. Similarly, fixed data 0, 1 or 1 is input to the selectors 73-2 to 73-4 as two inputs from the terminals 72-2 to 72-4, respectively.
[0058]
The selectors 73-1 to 73-4 select one of the two inputs corresponding to the selection information SEL00 to SEL11 and output the selected input to the subsequent registers 81-1 to 81-4. However, since the same data is input to the first column selectors 73-1 to 73-4 as two inputs from the terminals 72-1 to 72-4 as described above, the register 81-1 Through 81-4, 0, 0, 1 or 1 is stored, respectively.
[0059]
Hereinafter, similarly, a configuration including selectors and registers of n columns (four columns in the case of FIG. 15) is provided. That is, in the second column, selectors 74-1 to 74-4 and registers 82-1 to 82-4 are provided. The selectors 74-1 and 74-3 are supplied with the output of the register 81-1 in the previous column and the output of the register 81-2. The outputs of the register 81-3 and the register 81-4 are input to the selectors 74-2 and 74-4. Then, the selectors 74-1 to 74-4 select one of the two inputs corresponding to the values of the selection information SEL00 to SEL11, and perform processing to output to the subsequent registers 82-1 to 82-4. . For example, the register 74-1 selects the output of the register 81-1 when the selection information SEL00 is 0, and selects and outputs the output of the register 81-2 when the selection information SEL00 is 1. Has been made.
[0060]
The outputs of the registers 84-1 to 84-4 in the final column are input to the selector 85 having four inputs and one output.
[0061]
State metrics SM00 to SM11 output from the state metric storage devices 66-1 to 66-4 in FIG. 13 are input to the minimum value comparison circuit 88 from terminals 87-1 to 87-4. The minimum value comparison circuit 88 compares the magnitudes of the four state metrics and selects the smallest one. When the state metric SM00 is minimum, the data 00 is output. When the state metric SM01 is minimum, the data 01 is output. When the state metric SM10 is minimum, the data 10 is output. When the state metric SM11 is minimum, the data 11 is output. The selector 85 selects the output of the register 84-1 when the input from the minimum value comparison circuit 88 is 00, selects the output of the register 84-2 when it is 01, and selects the register 84 when it is 10. -3 is selected. When the output is 11, the output of the register 84-4 is selected and output from the terminal 86 as a decoding result. The fixed values of the terminals 72-1 to 72-4 mean the decoding information corresponding to each state.
[0062]
Such connection of the path memory 65 is based on the state transition diagram of FIG. In the configuration of the path memory 65, the top row corresponds to the state 00, the second row corresponds to the state 01, the third row corresponds to the state 10, and the bottom row corresponds to the state 11. In the first column, decoding information is fetched. According to FIG. 10, there are two paths from state 00 and state 01 to reach state 00. The input bit corresponding to each path, that is, the decoding information is 0 in all cases. Therefore, in the first column in the state 00 (top row), the input terminal of the selector 73-1 is wired so that the corresponding decoding information 0 is selected by the selection information SEL00.
[0063]
In the first column, connection is made in the same manner for the state 01, the state 10 and the state 11.
[0064]
In the second and subsequent columns, selection, propagation, and storage of decoded sequences are performed. According to FIG. 10, there are two paths from state 00 and state 01 to reach state 00. Therefore, in the second column in the state 00, the input terminal of the selector 74-1 is wired so that the data from the corresponding state is selected by the selection information SEL00.
[0065]
In the second and subsequent rows, the wiring is similarly performed. Further, in the state 01, the state 10, and the state 11 in the second to third rows, the wiring is similarly performed.
[0066]
In the last column of the path memory 65, data corresponding to the path with the highest likelihood is output as final decoded data from the four stored decoded data. The “maximum likelihood path” is a path corresponding to the one having the minimum value among the four state metrics SM00 to SM11. The selector 85 uses the path corresponding to the minimum value of the state metric at that time. That is, the path with the highest likelihood is selected.
[0067]
[Problems to be solved by the invention]
By the way, in recent years, while high-speed (high bit rate) transmission is screamed, it is conceivable to expand the modulation method of the above-described digital data transmission system from QPSK to 16QAM, 64QAM, 256QAM, or the like. Thus, the number of bits that can be transmitted is 4 bits, 6 bits, or 8 bits for 2 bits of QPSK, respectively, and increases 2 times, 3 times, and 6 times that of QPSK.
[0068]
FIG. 16 shows a block diagram of a 16QAM data transmission apparatus. In FIG. 16, portions corresponding to those in FIG. 8 are denoted by the same reference numerals. That is, in this example, the serial / parallel converter 4 converts the serial data output from the bit erasure circuit 3 into data u, v, x, y in units of 4 bits. Then, bit diffusion processing is performed for each data in the bit diffusion circuits 91-1 to 91-4, and the data is supplied to the signal point assignment circuit 6 as data u ′, v ′, x ′, y ′. Has been made. Other configurations are the same as those in FIG.
[0069]
In other words, in this example, the series-parallel converter 4 converts one series of data into four series of data (u, v, x, y) corresponding to 16QAM, which are bit spreading circuits 91-1 through 91, respectively. In -4, bit diffusion processing is performed by changing the order of bits according to a predetermined rule. The processing is the same as the processing in the bit spreading circuits 5-1 and 5-2 in FIG. 8, and different bit spreading processing is executed using different numerical values s.
[0070]
The signal point assignment circuit 6 assigns the input 4-bit data (u ′, v ′, x ′, y ′) to the symbols on the transmission path. The assignment is performed, for example, according to FIG. That is, for example,
When (u ′, v ′, x ′, y ′) = (0, 0, 0, 0),
(I ′, Q ′) = (3 / √10, 3 / √10),
When (u ′, v ′, x ′, y ′) = (0, 0, 0, 1),
(I ′, Q ′) = (3 / √10, 1 / √10)
Allocation is done as
[0071]
Similar assignments are made for other inputs.
[0072]
Thereafter, the same processing as in FIG. 8 is performed, and data is transmitted.
[0073]
When the transmitting apparatus shown in FIG. 16 performs signal point allocation by the 16QAM system as shown in FIG. 17 and receives the transmitted data, the receiving apparatus is configured as shown in FIG. 18 corresponding to FIG. It is possible. However, in practice, the receiving apparatus cannot be configured as shown in FIG.
[0074]
That is, as described above, the components I and Q of the data (I and Q) input from the demodulator 32 to the symbol despreading circuit 33 each represent 1 bit in the QPSK system. In the case of the 16QAM system, each represents 2 bits. For example, in the case of the signal point arrangement shown in FIG. 17, I includes information of the first bit and the third bit, and Q includes information of the second bit and the fourth bit. However, for example, I is a single value such as 1 / √10 or 3 / √10, and Q is also a single value. Therefore, as shown in FIG. 18, it cannot be divided into u ′ and v ′ or divided into x ′ and y ′. As a result, the data receiving apparatus in the case of the 16QAM system is also configured as shown in FIG.
[0075]
As a result, the processing performed in the bit insertion circuit 36 in FIG. 12 is considered as follows.
[0076]
For example, as shown in FIG. 19A, when data is input to the bit insertion circuit 36 as x1, y1, x2, y2, x3, y3,... As described above, x1 and y1 are output as data X1 and Y1, then dummy data d is output as data X2, and data x2 is output as data Y2. Similarly, after data y2 and x3 are output as data X3 and Y3, dummy data d is output as data X4, and then data y3 is output as data Y4.
[0077]
However, this process does not execute a process opposite to the process in the bit erasing circuit 3 of FIG. That is, the bit erasure (bit operation) processing performed in the bit erasure circuit 3 is performed in units of 1 bit. On the other hand, the data x1, y2, etc. shown in FIG. 19B each correspond to 2-bit data, after which 1-bit dummy data d is inserted, and then When 2-bit data x2 is output, a data array that is completely different from the original data array is output.
[0078]
As a result, when the Viterbi decoder 37 viterbi-decodes the output of the bit insertion circuit 36, the decoding results are not such that the components are slightly degraded, and are completely different, so that decoding is impossible.
[0079]
On the other hand, if a hard decision is made in the symbol despreading circuit 33 of the data receiving apparatus shown in FIG. 18, for example, from (I, Q), u ′, v ′, It is considered that x ′ and y ′ can be generated. That is, in this case, the distance between the coordinates of (I, Q) and each signal point shown in FIG. 17 is calculated, and (I, Q) corresponds to the signal point with the shortest distance. It is possible to generate u ′, v ′, x ′, and y ′. However, if such a hard decision is made, accurate data decoding becomes difficult.
[0080]
The present invention has been made in view of such a situation, and makes it possible to accurately decode data transmitted by a multi-level multi-phase modulation system such as 16QAM, 64QAM, and 256QAM. is there.
[0081]
[Means for Solving the Problems]
The data receiving apparatus according to claim 1, wherein a symbol of data is transmitted and a posterior probability that the symbol is received is calculated for each symbol, and a sum of the posterior probabilities of the symbols whose predetermined bits are a predetermined value. Metric calculating means for calculating the bit as a metric for the bit, and decoding means for decoding data using the metric.
[0082]
The data reception method according to claim 4, wherein a symbol of data is transmitted and a posterior probability that the symbol is received is calculated for each symbol, and a sum of posterior probabilities of symbols having a predetermined bit of a predetermined value. Is calculated as a metric for the bit, and data is decoded using the metric.
[0083]
6. The data receiving apparatus according to claim 5, wherein a symbol of data is transmitted and a posterior probability that the symbol is received is calculated for each symbol, and a sum of posterior probabilities of the symbols whose predetermined bits are a predetermined value. Metric calculation means for calculating a value obtained by multiplying the logarithm of -1 as a metric for the bit, and decoding means for decoding data using the metric.
[0084]
9. The data reception method according to claim 8, wherein a symbol of data is transmitted and a posterior probability that the symbol is received is calculated for each symbol, and a sum of the posterior probabilities of the symbols whose predetermined bits are a predetermined value. A value obtained by multiplying the logarithm of −1 by −1 as a metric for the bit, and a step of decoding data using the metric.
[0085]
In the data receiving apparatus according to claim 1, the metric calculating means calculates a posterior probability that a symbol of data is transmitted and the symbol is received for each symbol, and a predetermined bit has a predetermined value. The sum of the posterior probabilities of the symbols is calculated as a metric for the bit, and the decoding means decodes the data using the metric.
[0086]
In the data reception method according to claim 4, a posterior probability that a symbol of data is transmitted and the symbol is received is calculated for each symbol, and a posterior probability of a symbol whose predetermined bit is a predetermined value is calculated. The sum is calculated as a metric for the bit, and data is decoded using the metric.
[0087]
6. The data receiving apparatus according to claim 5, wherein the metric calculating means calculates a posterior probability that the symbol of the data is transmitted and the symbol is received for each symbol, and the predetermined bit is a predetermined value. A value obtained by multiplying the logarithm of the sum of the posterior probabilities of symbols by −1 is calculated as a metric for the bit, and the decoding means decodes the data using the metric.
[0088]
In the data receiving method according to claim 8, a posterior probability that a symbol of data is transmitted and the symbol is received is calculated for each symbol, and a posterior probability of a symbol whose predetermined bit is a predetermined value is calculated. A value obtained by multiplying the logarithm of the sum by -1 is calculated as a metric for the bit, and data is decoded using the metric.
[0089]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 shows a first embodiment of the data receiving apparatus of the present invention for receiving data transmitted by the data transmitting apparatus of FIG. In FIG. 1, parts corresponding to those shown in FIG. In the embodiment of FIG. 1, the symbol despreading circuit 33 performs a process reverse to the symbol spreading process in the symbol spreading circuit 7 of FIG. 16, that is, a process for returning the order of the symbols replaced in the symbol spreading circuit 7 to the original order. The I signal component I ′ and the Q signal component Q ′ are output to the metric calculation circuit 39 (metric calculation means).
[0090]
The metric calculation circuit 39 calculates metrics for the first to fourth bits from the supplied I signal component I ′ and Q signal component Q ′, and calculates the calculated metrics u ′, v ′, x ′, y ′, The signals are output to the bit despreading circuits 101-1 to 101-4, respectively.
[0091]
The metric calculation circuit 39 is configured as shown in FIG. As shown in FIG. 2, the I ′ and Q ′ signals supplied from the symbol despreading circuit 33 are input to n probability calculation circuits 111-1 to 111-n. In this case, as shown in FIG. 17, since signal point assignment processing is performed with 16QAM, n is set to 16.
[0092]
The probability calculation circuit 111-1 calculates the posterior probability P (S0000∩R) that the symbol S0000 corresponding to 0000 of 16QAM shown in FIG. 17 is transmitted and the received signal R is received, and the probability calculation circuit 111-2 , A posterior probability P (S0001∩R) that a symbol S0001 corresponding to 0001 of 16QAM is transmitted and the received signal R is received is calculated.
[0093]
Hereinafter, similarly, the probability calculation circuit 111-3 calculates the posterior probability P (S0010) R) that the symbol S0010 corresponding to 0010 of 16QAM is transmitted and the reception signal R is received, and the probability calculation circuit 111-4 Through 111-15 calculate the posterior probabilities corresponding to the symbols S0011 through S1110. The probability calculation circuit 111-16 calculates a posterior probability P (S11111R) that the symbol S1111 corresponding to 1111 of 16QAM is transmitted and the received signal R is received.
[0094]
In this embodiment, the posterior probability when any one of the first to fourth bits of the symbol is 0 is calculated as a metric corresponding to the bit, so the posterior probability P (S1111∩R ) Is not particularly necessary and may be removed.
[0095]
The adder circuit 112-1 is a probability calculation circuit 111-1 to 111-8 that calculates posterior probabilities for symbols whose first bits are 0, that is, S0000, S0001, S0010, S0011, S0100, S0101, S0110, and S0111. , The sum of those values is calculated, and is output to the bit despreading circuit 101-1 as a metric for the first bit.
[0096]
The adder circuit 112-2 is a probability calculation circuit 111-1 to 111-4 that calculates posterior probabilities for symbols whose second bits are 0, that is, S0000, S0001, S0010, S0011, S1000, S1001, S1010, and S1011. , 111-9 to 111-12 are received, the sum of these values is calculated, and is output to the bit despreading circuit 101-2 as a metric for the second bit.
[0097]
The adder circuit 112-3 calculates a posterior probability for a symbol whose third bit is 0, that is, S0000, S0001, S0100, S0101, S1000, S1001, S1100, S1101, and a probability calculation circuit 111-i (i = 1). , 2, 5, 6, 9, 10, 13, 14), calculates the sum of these values, and outputs the result to the bit despreading circuit 101-3 as a metric for the third bit. ing.
[0098]
The adder circuit 112-4 calculates a posterior probability for a symbol whose fourth bit is 0, that is, S0000, S0010, S0100, S0110, S1000, S1010, S1100, S1110, and a probability calculation circuit 111-i (i = 1). , 3, 5, 7, 9, 11, 13, 15), calculates the sum of these values, and outputs the result to the bit despreading circuit 101-4 as a metric for the fourth bit. ing.
[0099]
The bit despreading circuit 101-i (i = 1,..., 4) changes the metric for the i-th bit supplied from the metric calculation circuit 39 in the bit spreading circuit 91-i of FIG. A process for returning the bit order to the original order is executed. Metrics for the first to fourth bits subjected to the bit despreading process are input to the parallel-serial converter 35 and converted from four series of data to one series of data.
[0100]
FIG. 3 shows a configuration example of the Viterbi decoder 37 (decoding means) in FIG. In this embodiment, the output X of the bit insertion circuit 36 (a value corresponding to the metric u for the first bit or the metric x for the third bit) is input to the input terminal 62-1 and is input to the input terminal 62-2. The output Y of the bit insertion circuit 36 (a value corresponding to the metric v for the second bit or the metric y for the fourth bit) is input.
[0101]
The value X input from the input terminal 62-1 is input to the selector 132-1, and also input to the inverting circuit 131-1, and all the bits are inverted and then input to the selector 132-3. It has been made so that. The value Y input from the input terminal 62-2 is input to the selector 132-2 and input to the inversion circuit 131-2. After all the bits are inverted, the value Y is input to the selector 132-4. It is made to be done.
[0102]
The selector 132-1 receives the value 1 output from the constant generation circuit 133-1 and the value X via the input terminal 62-1, and the insertion flag for X is input from the bit insertion circuit 36. The value 1 generated by the constant generation circuit 133-1 is selected. At other times, the value X is selected, and the selected value is output to the multiplication circuits 121-1, 121-2.
[0103]
The selector 132-2 receives the value 1 output from the constant generation circuit 133-2 and the value Y via the input terminal 62-2, and when the insertion flag for Y is input from the bit insertion circuit 36. The value 1 generated by the constant generation circuit 133-2 is selected. At other times, the value Y is selected, and the selected value is output to the multiplication circuits 121-1, 121-3.
[0104]
The selector 132-3 receives supply of the value 1 which is the output of the constant generation circuit 133-3 and the value obtained by inverting the value X which is the output of the inversion circuit 131-1, and is inserted into the X from the bit insertion circuit 36. When the flag is input, the value 1 generated by the constant generation circuit 133-3 is selected. In other cases, a value obtained by inverting the value X is selected, and the selected value is supplied to the multiplication circuits 121-3 and 121-4. It is designed to output.
[0105]
The selector 132-4 receives supply of the value 1 which is the output of the constant generation circuit 133-4 and the value Y which is the output of the inversion circuit 131-2 and the insertion to Y from the bit insertion circuit 36. When the flag is input, the value 1 generated by the constant generation circuit 133-4 is selected. In other cases, the value obtained by inverting the value Y is selected, and the selected value is supplied to the multiplication circuits 121-2 and 121-4. It is designed to output.
[0106]
The multiplication circuit 121-1 multiplies the value supplied from the selector 132-1 by the value supplied from the selector 132-2, and outputs the multiplication result as a branch metric BM00. The multiplication circuit 121-2 multiplies the value supplied from the selector 132-1 by the value supplied from the selector 132-4, and outputs the multiplication result as a branch metric BM01. Similarly, the multiplication circuit 121-3 multiplies the value supplied from the selector 132-2 by the value supplied from the selector 132-3, and outputs the multiplication result as the branch metric BM10. The multiplication circuit 121-4 The value supplied from the selector 132-3 is multiplied by the value supplied from the selector 132-4, and the multiplication result is output as the branch metric BM11.
[0107]
The output BM00 of the multiplication circuit 121-1 and the output BM11 of the multiplication circuit 121-4 are input to the ACS circuits 122-1, 122-3. Similarly, the output BM01 of the multiplication circuit 121-2 and the output BM10 of the multiplication circuit 121-3 are input to the ACS circuits 122-2 and 122-4.
[0108]
The ACS circuits 122-1 and 122-3 also receive the output SM00 of the state metric storage device 66-1 and the output SM01 of the state metric storage device 66-2. The output SM10 of the state metric storage device 66-3 and the output SM11 of the state metric storage device 66-4 are input.
[0109]
The ACS circuits 122-1 to 122-4 calculate a new state metric from the input branch metrics and state metrics, and output the calculation results to the state metric storage devices 66-1 to 66-4 and select them. Information SEL00 to SEL11 corresponding to the passed path is output to the path memory 65.
[0110]
The other configuration of the Viterbi decoder 37 of this embodiment is the same as that in FIG.
[0111]
The other configuration of the data receiving apparatus in FIG. 1 is the same as that in FIG.
[0112]
Next, the operation of the data receiving apparatus in FIG. 1 will be described.
[0113]
The received signal received by the antenna 31 is demodulated by the demodulator 32 to obtain I component and Q component data of the symbol. The symbol I component and Q component data are processed by the symbol despreading circuit 33 and then supplied to the metric calculation circuit 39.
[0114]
Next, metric calculation in the metric calculation circuit 39 will be described. The metric here means, for example, a conditional posterior probability for the bits constituting the received signal when a predetermined received signal is received, which is defined by the following equation.
P (bi = 0 | R) = P (bi = 0∩R) / P (R) (3)
[0115]
Here, P (bi = 0 | R) is the conditional posterior probability that the i-th bit bi of the transmission symbol is 0 when the received signal R (I, Q) is received, and P (R) is The probability of receiving the received signal R (I, Q) is P (bi = 0∩R), a symbol with the i-th bit bi being 0 is transmitted, and the received signal R (I, Q) is received. Each posterior probability is expressed.
[0116]
Similarly, the conditional posterior probability that the i-th bit of the transmission symbol is 1 can be obtained when the reception signal R (I, Q) is received by the following equation (4).
P (bi = 1 | R) = P (bi = 1∩R) / P (R) (4)
[0117]
Here, P (bi = 1 | R) is the conditional posterior probability that the i-th bit bi of the transmission symbol is 1 when the received signal R (I, Q) is received, and P (R) is The probability of receiving the received signal R (I, Q) is P (bi = 1∩R), the symbol whose i-th bit bi is 1 is transmitted, and the received signal R (I, Q) is received. Each posterior probability is expressed.
[0118]
Also, according to the following equation (5), when the received signal R (I, Q) is received, the conditional posterior probability that the i-th bit bi of the transmission symbol is 1 can be obtained. P (bi = 1 | R) = 1-P (bi = 0 | R) (5)
[0119]
Since the probability P (R) of receiving the received signal R does not depend on the type of symbol, the metric calculation circuit 39 replaces the conditional posterior probability P (bi = 0 | R) described above with the posterior probability P (bi = 0). (R) is calculated as a metric. Thus, the circuit configuration can be simplified by omitting the calculation of the probability P (R).
[0120]
That is, the metric calculation circuit 39 calculates the metrics for the first to fourth bits constituting the 16QAM symbol,
Metric P (b1 = 0∩R) for the first bit u ′,
Metric P (b2 = 0 = R) for the second bit v ′,
Metric P (b3 = 0 = R) for the third bit is x ′,
The metric P (b4 = 0∩R) for the fourth bit is y ′
As output.
[0121]
Calculation of each metric is performed according to the following equation.
P (bi = 0∩R) = (1/16) ΣP (S j ∩R) (6)
[0122]
Where P (S j ∩R) is a symbol S whose i-th bit is 0. j Represents the posterior probability that the received signal R is received and ΣP (S j ∩R) is the posterior probability P (S for all symbols Sj whose i-th bit is 0 j Represents the sum of (R).
[0123]
In the metric calculation circuit 39 of FIG. 2, the probability calculation circuit 111-1 calculates the probability that P (S00000R), that is, the symbol S0000 corresponding to 0000 of 16QAM is transmitted and the reception signal R is received.
[0124]
The probability calculation circuit 111-2 calculates the probability that the symbol S0001 corresponding to P (S0001∩R), that is, 0001 of 16QAM is transmitted and the received signal R is received.
[0125]
The probability calculation circuit 111-3 calculates the probability that the symbol S0010 corresponding to P (S0010∩R), that is, 0010 of 16QAM is transmitted and the reception signal R is received.
[0126]
Similarly, the probability calculation circuits 111-4 to 111-16 calculate the posterior probabilities for the remaining 16QAM symbols, respectively, and obtain a total of 16 posterior probability calculation results.
[0127]
The adder circuit 112-1 has a symbol whose first bit is 0, that is,
S0000, S0001, S0010, S0011,
S0100, S0101, S0110, S0111
Compute the sum of the above posterior probabilities for. Originally, the sum divided by 16 is P (b1 = 0∩R). However, there is no particular problem even if all the metrics are multiplied by 16, so the metric calculation circuit 39 calculates the posterior probability. The sum is output as the metric u ′ for the first bit.
[0128]
The adder circuit 112-2 has a symbol whose second bit is 0, that is,
S0000, S0001, S0010, S0011,
S1000, S1001, S1010, S1011
Compute the sum of the above posterior probabilities for. Originally, the sum divided by 16 is P (b2 = 0∩R). However, there is no particular problem even if all the metrics are multiplied by 16, so the metric calculation circuit 39 determines the posterior probability. The sum is output as a metric v ′ for the second bit.
[0129]
The adder circuit 112-3 has a symbol whose third bit is 0, that is,
S0000, S0001, S0100, S0101,
S1000, S1001, S1100, S1101
Compute the sum of the above posterior probabilities for. Originally, the sum divided by 16 becomes P (b3 = 0∩R). However, there is no particular problem even if all the metrics are multiplied by 16, so the metric calculation circuit 39 determines the posterior probability. The sum is output as metric x ′ for the third bit.
[0130]
The adder circuit 112-4 has a symbol whose fourth bit is 0, that is,
S0000, S0010, S0100, S0110,
S1000, S1010, S1100, S1110
Compute the sum of the above posterior probabilities for. Originally, the sum divided by 16 is P (b4 = 0∩R), but there is no particular problem even if all the metrics are multiplied by 16, so the metric calculation circuit 39 determines the posterior probability. The sum is output as a metric y ′ for the fourth bit.
[0131]
Note that various calculation methods are conceivable depending on the transmission path as the calculation method in the probability calculation circuits 111-1 to 111-16 in FIG. 2. The posterior probability can be calculated as follows.
Figure 0003606413
[0132]
Here, σ represents the square root of ½ of the noise power of the transmission line. That is, 2σ 2 Represents the noise power of the transmission line. ‖S0000-R‖ is the Euclidean distance in the IQ plane between the symbol S0000 and the received signal R.
[0133]
The coefficient (1 / (2π) on the right side of equation (7) 1/2 Since σ) does not affect selection of the maximum likelihood path by the Viterbi decoder 37, it may be omitted. In that case, P (S0000) ∩R) is calculated as follows.
Figure 0003606413
[0134]
The probability calculation circuits 111-2 to 111-16 can similarly calculate the probability.
[0135]
Next, the bit despreading circuits 101-1 to 101-4 perform bit despreading processing on the metrics u ′, v ′, x ′, y ′ supplied from the metric calculation circuit 39, It outputs to the parallel-serial converter 35.
[0136]
Then, the parallel / serial converter 35 performs the reverse operation of the serial / parallel converter 4 in FIG. 16, converts the supplied four systems of data into one series of data, and then outputs the data to the bit insertion circuit 36.
[0137]
In the bit insertion circuit 36, an operation reverse to that of the bit erasing circuit 3 in FIG. 16 is performed. That is, the erase map in the previous example
X: 10
Y: 11
Using,
u1, v1, x1, y1, u2, v2, x2, y2...
Arbitrary dummy data (0 in this case) is inserted immediately before the last 3 bits with a period of 3 bits for the data input in this order,
As data X, u1, 0, y1, 0, x2, ...
As data Y, v1, x1, u2, v2, y2, ...
Are supplied in this order, and an insertion flag indicating the position where the dummy data is inserted is supplied to the Viterbi decoder 37.
[0138]
The Viterbi decoder 37 performs Viterbi decoding according to the state transition of the convolutional encoder 2 to obtain reproduction information 38. Next, the operation of the Viterbi decoder 37 will be described in detail.
[0139]
When the dummy data is inserted as X in the bit insertion circuit 36 and the insertion flag for X is input, the selector 132-1 and the selector 132-3 set the value 1 to invalidate the metric probability calculation for the dummy data. Output.
[0140]
Similarly, the selector 132-2 and the selector 132-4 invalidate the metric probability calculation for the dummy data when dummy data is inserted as Y in the bit insertion circuit 36 and the insertion flag for Y is input. The value 1 is output.
[0141]
That is, the calculation of branch metrics by the multiplication circuits 121-1 to 121-4 and the calculation of state metrics by the ACS circuits 122-1 to 122-4 are all performed by multiplication (described later), and therefore correspond to dummy data. By outputting the value 1, the metric calculation result is not affected.
[0142]
When dummy data is not inserted as X, the value X supplied from the bit insertion circuit 36 is supplied to the multiplication circuits 121-1 and 121-2 via the selector 132-1, and the value X is inverted. The value is supplied to multiplication circuits 121-3 and 121-4.
[0143]
Similarly, when dummy data is not inserted as Y, the value Y supplied from the bit insertion circuit 36 is supplied to the multiplication circuits 121-1 and 121-3 via the selector 132-2, and the value Y A value obtained by inverting is supplied to the multiplication circuits 121-2 and 121-4.
[0144]
In the multiplication circuit 121-1, the data X corresponding to the probability that the value of the first bit of the output of the bit insertion circuit 36 is 0 or the value of the third bit is 0, and the second bit The product of the data Y corresponding to the probability that the value of 0 or the value of the fourth bit is 0 (that is, the value of the first bit is 0 and the value of the second bit is 0 Or the probability that the value of the third bit is 0 and the value of the fourth bit is 0) is output as branch metric BM00. The branch metric BM00 corresponds to the code output 00 of the convolutional encoder 2.
[0145]
Similarly, the multiplication circuit 121-2 includes a value X corresponding to the probability that the value of the first bit of the output of the bit insertion circuit 36 is 0 or the value of the third bit is 0, and the second value The product of values corresponding to the probability that the value of the bit is 1 or the value of the fourth bit is 1 (the value obtained by inverting the value Y) (that is, the value of the first bit is 0, and The probability that the value of the second bit is 1 or the probability that the value of the third bit is 0 and the value of the fourth bit is 1) is calculated and output as the branch metric BM01. This branch metric BM01 corresponds to the code output 01 of the convolutional encoder 2.
[0146]
The multiplication circuit 121-3 has a value (a value obtained by inverting the value X) corresponding to the probability that the value of the first bit of the output of the bit insertion circuit 36 is 1 or the value of the third bit is 1. , The product of the values Y corresponding to the probability that the value of the second bit is 0 or the value of the value of the fourth bit is 0 (ie, the value of the first bit is 1 and the second value The probability that the value of the bit is 0 or the probability that the value of the third bit is 1 and the value of the fourth bit is 0) is calculated and output as the branch metric BM10. This branch metric BM 10 corresponds to the code output 10 of the convolutional encoder 2.
[0147]
The multiplication circuit 121-4 has a value (a value obtained by inverting the value X) corresponding to the probability that the value of the first bit of the output of the bit insertion circuit 36 is 1 or the value of the third bit is 1. , The product of the values corresponding to the probability that the value of the second bit is 1 or the probability that the value of the fourth bit is 1 (the value obtained by inverting the value Y) (that is, the value of the first bit is 1) The probability that the value of the second bit is 1 or the probability that the value of the third bit is 1 and the value of the fourth bit is 1), and the branch metric BM11 Output as. The branch metric BM11 corresponds to the code output 11 of the convolutional encoder 2.
[0148]
When dummy data is inserted as X or Y, the selectors 132-1 to 132-4 select 1 instead of the dummy data, so that the multiplication circuits 121-1 to 121-4 An input value not corresponding to data is output as it is (multiplied by 1) as a branch metric.
[0149]
The ACS circuit 122-1 calculates the following two equations according to the state transition of the convolutional encoder 2 (FIG. 10).
SM00 × BM00 (8)
SM01 × BM11 (9)
[0150]
Here, SM00 is the value of the state metric storage device 66-1 one unit time ago, SM01 is the value of the state metric storage device 66-2 one unit time ago, and BM00 is the calculation result of the multiplication circuit 121-1. BM11 represents the calculation result of the multiplication circuit 121-4.
[0151]
Then, the ACS circuit 122-1 selects the one with the highest likelihood, that is, the one with the larger calculation result among the equations (8) and (9), and outputs the selection information SEL00 to the path memory 65 at the subsequent stage. At the same time, the larger one of the results obtained by calculating the equations (8) and (9) is supplied to and stored in the subsequent state metric storage device 66-1. That is, if the calculation result of Expression (8) is larger, SEL00 = 0, and if the calculation result of Expression (9) is larger, SEL00 = 1. In the former case, SM00 × BM00 is stored, and in the latter case, SM01 × BM11 is stored as a new state metric SM00 in the state metric storage device 66-1.
[0152]
The ACS circuits 122-2 to 122-4 operate in the same manner, and calculate new state metrics SM01 to SM11.
[0153]
The other operations in the Viterbi decoder 37 are the same as those in FIG.
[0154]
FIG. 4 shows another configuration example of the metric calculation circuit 39.
[0155]
The A / D converter 141-1 converts the I component signal I ′ supplied from the symbol despreading circuit 33 into a digital value, and outputs the value to the ROMs 142-1 to 142-4 as address data. Has been made.
[0156]
The A / D converter 141-2 converts the Q component signal Q ′ supplied from the symbol despreading circuit 33 into a digital value and outputs the value to the ROMs 142-1 to 142-4 as address data. Has been made.
[0157]
The ROM 142-i (i = 1,..., 4) stores the value stored in the address corresponding to the address data supplied from the A / D converters 141-1 and 141-2 with respect to the i-th bit. A metric is output to the bit reverse conversion circuit 101-i.
[0158]
That is, in the ROM 142-i (i = 1,..., 4), the total value of the above-described posterior probabilities corresponding to the respective values of the I component I ′ and the Q component Q ′ of the received signal R is i-th. Is stored in advance as a metric for each bit.
[0159]
FIG. 5 shows the configuration of the second embodiment of the present invention. In the second embodiment, the second metric calculation circuit 40 is inserted between the metric calculation circuit 39 and the bit inverse conversion circuits 101-1 to 101-4 of the first embodiment. Only the circuit 40 will be described, and description of other components will be omitted.
[0160]
FIG. 6 shows a configuration example of the second metric calculation circuit 40.
[0161]
In the second metric calculation circuit 40, the logarithm calculator 151-1 calculates the natural logarithm (log (u ′)) of the value u ′ supplied from the metric calculation circuit 39, and the value is inverted by the inversion circuit 152-. 1 is output.
[0162]
The logarithm calculator 151-2 calculates the natural logarithm (log (v ′)) of the value v ′ supplied from the metric calculation circuit 39, and outputs the value to the inverting circuit 152-2.
[0163]
Similarly, the logarithm calculator 151-3 calculates the natural logarithm (log (x ′)) of the value x ′ supplied from the metric calculation circuit 39, outputs the value to the inversion circuit 152-3, and performs the logarithmic operation. The calculator 151-4 calculates the natural logarithm (log (y ′)) of the value y ′ supplied from the metric calculation circuit 39 and outputs the value to the inverting circuit 152-4.
[0164]
The inverting circuit 152-1 obtains a value (−log (u ′)) obtained by multiplying the value (log (u ′)) supplied from the logarithmic calculator 151-1 by −1 and the metric u for the first bit. 1 'Is output to the bit reverse conversion circuit 101-1.
[0165]
The inverting circuit 152-2 uses a value (-log (v ')) obtained by multiplying the value (log (v')) supplied from the logarithmic calculator 151-2 by -1 as the metric v for the second bit. 1 'Is output to the bit reverse conversion circuit 101-2.
[0166]
Similarly, the inverting circuit 152-3 sets a value (-log (x ')) obtained by multiplying the value (log (x')) supplied from the logarithm calculator 151-3 by -1 to the third bit. Metric x 1 'Is output to the bit inverse conversion circuit 101-3, and the inverting circuit 152-4 multiplies the value (log (y')) supplied from the logarithmic calculator 151-4 by -1 (-log (y ')) For the metric y for the third bit 1 'Is output to the bit reverse conversion circuit 101-4.
[0167]
Next, the metric used in the second embodiment will be described.
[0168]
When the signal R received by the receiving apparatus is temporally independent, the Viterbi decoder 37 calculates the product of the conditional posterior probabilities P (bi = 0 | R) described above.
Figure 0003606413
The sequence with the largest value (ie, the maximum likelihood path) is selected and decoded.
[0169]
Here, R (t) represents a received signal at time t, {R (t)} represents a received signal sequence, and P ({R (t)}) represents a received signal sequence {R (t )}. bi (t) is the value (0 or 1) of the i-th bit constituting the transmission symbol at time t, and {bi (t)} represents the bit data sequence to be transmitted. {Bi (t)} takes two values of 0 or 1 corresponding to the values of t and i. Therefore, when the sequence length is 2, {00}, {01}, {10} , And {11}, and when the sequence length is 3, there are 8 sequences, and when the sequence length is 4, there are 16 sequences.
[0170]
The Viterbi decoder 37 selects the most likely transmission sequence (maximum likelihood path) when receiving the received signal sequence {R (t)} among the plurality of sequences. That is, the Viterbi decoder 37 selects a path having the maximum product of the conditional posterior probabilities P (bi = 0 | R). Since the denominator ΠP (R (t)) in equation (10) does not depend on the type of path, the Viterbi decoder 37 uses the numerator (P (bi (t) = 0∩R (t) in equation (10). ) Should be selected.
[0171]
Further, in the second embodiment, the functional form of the probability P (bi (t) = 0∩R (t)) (P (bi = 0∩R) at time t), which is the metric in the first embodiment. Is assumed to be an exponential function as shown in the following equation.
P (bi (t) = 0∩R (t)) = exp (−A i (T)) (11)
[0172]
At this time, the molecule ΠP (bi (t) = 0∩R (t)) of the formula (10) is
Figure 0003606413
And the Viterbi decoder 37 is
ΣA i (T) = Σ (−log (P (bi (t) = 0∩R (t)))) (13)
The path with the smallest value of may be selected as the maximum likelihood path.
[0173]
Therefore, the metric for each bit i at each time t is
-Log (P (bi (t) = 0∩R (t))) (14)
It becomes the value obtained by. That is, in the first embodiment, the metric calculation circuit 39 has the formula
P (bi (t) = 0∩R (t)) (15)
In the second embodiment, the second metric calculation circuit 40 uses the natural logarithm of the value calculated by the metric calculation circuit 39 (the value obtained by Expression (15)). A metric according to the equation (14) is calculated by calculating a value multiplied by -1.
[0174]
The logarithmic calculators 151-1 to 151-4 may calculate a common logarithm instead of the natural logarithm.
[0175]
Further, instead of the metric calculation circuit 39 and the second metric calculation circuit 40, the metric calculation circuit 39 shown in FIG. 4 is used to store the I of the received signal R in the ROM 142-i (i = 1,..., 4). The logarithm of the total value of the posterior probabilities corresponding to the values of the component I ′ and the Q component Q ′ may be stored in advance as a metric for the i-th bit.
[0176]
FIG. 7 shows a configuration example of the Viterbi decoder 37 of the second embodiment. In the Viterbi decoder 37 of FIG. 7, as described above, the probability that the value of the first bit of the symbol is 0 or the value of the third bit is 0 from the input terminals 62-1 and 62-2. When the probability is assumed to be an exponential function, the data X corresponding to the exponent part and the probability that the value of the second bit of the symbol is 0 or the probability that the value of the fourth bit is 0 are assumed to be an exponential function. Data Y corresponding to the exponent part of the hour is input.
[0177]
The value X input from the input terminal 62-1 is input to the selector 164-1 and also input to the subtraction circuit 161-1. The subtraction circuit 161-1 subtracts X from the maximum value of the exponent part, and then outputs the value to the selector 164-3. The value Y input from the input terminal 62-2 is input to the selector 164-2 and also input to the subtraction circuit 161-2. The subtracting circuit 161-2 subtracts Y from the maximum value of the exponent part, and then outputs the value to the selector 164-4.
[0178]
The selector 164-1 receives the value 0 which is the output of the constant generation circuit 165-1 and the value X via the input terminal 62-1, and when the insertion flag for X is input from the bit insertion circuit 36. The value 0 generated by the constant generation circuit 165-1 is selected. At other times, the value X is selected, and the selected value is output to the addition circuits 162-1 and 162-2.
[0179]
The selector 164-2 receives the value 0 output from the constant generation circuit 165-2 and the value Y via the input terminal 62-2, and when the insertion flag for Y is input from the bit insertion circuit 36. The value 0 generated by the constant generation circuit 165-2 is selected. At other times, the value Y is selected, and the selected value is output to the addition circuits 162-1 and 162-3.
[0180]
The selector 164-3 is supplied with a value 0 which is the output of the constant generation circuit 165-3 and a value obtained by subtracting the value X from the maximum value of the exponent part which is the output of the subtraction circuit 161-1. From 36, when the insertion flag for X is input, the value 0 generated by the constant generation circuit 165-3 is selected. In other cases, the value obtained by subtracting the value X from the maximum value of the exponent is selected and selected. The value is output to the adder circuits 162-3 and 162-4.
[0181]
The selector 164-4 is supplied with a value 0 which is the output of the constant generation circuit 165-4 and a value obtained by subtracting the value Y from the maximum value of the exponent part which is the output of the subtraction circuit 161-2. From 36, when the insertion flag for Y is input, the value 0 generated by the constant generation circuit 165-4 is selected, and at other times, the value obtained by subtracting the value Y from the maximum value of the exponent part is selected and selected. The value is output to the adder circuits 162-2 and 162-4.
[0182]
The adder circuit 162-1 adds the value supplied from the selector 164-1 and the value supplied from the selector 164-2, and outputs the result as a branch metric BM00. The adder circuit 162-2 adds the value supplied from the selector 164-1 and the value supplied from the selector 164-4, and outputs the result as a branch metric BM01. Similarly, the adder circuit 162-3 adds the value supplied from the selector 164-2 and the value supplied from the selector 164-3, and outputs the result as a branch metric BM10. The adder circuit 162-4 The value supplied from the selector 164-3 and the value supplied from the selector 164-4 are added, and the result is output as the branch metric BM11.
[0183]
The output BM00 of the adder circuit 162-1 and the output BM11 of the adder circuit 162-4 are input to the ACS circuits 163-1 and 163-3. Similarly, the output BM01 of the adder circuit 162-2 and the output BM10 of the adder circuit 162-3 are input to the ACS circuits 163-2 and 163-4.
[0184]
The ACS circuits 163-1 and 163-3 are also supplied with the output SM00 of the state metric storage device 66-1 and the output SM01 of the state metric storage device 66-2, and are input to the ACS circuits 163-2 and 163-4. Are inputted with the output SM10 of the state metric storage device 66-3 and the output SM11 of the state metric storage device 66-4.
[0185]
The ACS circuits 163-1 to 163-4 add the inputted branch metrics and state metrics, calculate new state metrics, and output the calculation results to the state metric storage devices 66-1 to 66-4. At the same time, information SEL00 to SEL11 corresponding to the selected path is output to the path memory 65.
[0186]
Since the ACS circuits 163-1 to 163-4 of the Viterbi decoder 37 of FIG. 7 add the branch metric to the state metric and update the path metric, the selectors 164-1 and 164-3 have an insertion flag for X. Is input, the value 0 generated by the constant generation circuits 133-1 and 133-3 is output to the addition circuits 162-1 and 162-3, respectively, and the selectors 164-2 and 164-4 are inserted flags for Y Is input, the value 0 generated by the constant generation circuits 133-2 and 133-4 is output to the addition circuits 162-2 and 162-4, respectively, so that the dummy data affects the metric calculation result. I am trying not to.
[0187]
As described above, in the above embodiment, when the reception signal R is received, the transmission symbol is the predetermined symbol S. j Conditional posterior probability P (S j | R) instead of the predetermined symbol S j Is transmitted, and the posterior probability P (S j ∩R) and calculate the posterior probability P (S j From (R), a metric for each bit of the symbol is calculated. By doing so, it is possible to calculate a metric for data transmitted by the 16QAM system and to accurately decode the received data.
[0188]
In the above embodiment, the data is modulated and demodulated by the 16QAM system. In addition to this, multilevel multiphase modulation in which the I component and the Q component each correspond to two or more bits such as 64QAM and 256QAM. Even when the method is adopted, the present invention can be applied.
[0189]
【The invention's effect】
As described above, according to the data receiving device according to claim 1 and the data receiving method according to claim 4, a symbol of predetermined data is transmitted and the posterior probability that the symbol is received is determined for each symbol. For each bit of a symbol, the sum of the posterior probabilities of a symbol whose bit is a predetermined value is calculated as a metric for that bit, so the metric can be calculated with a relatively simple circuit. It is possible to receive and accurately decode a signal transmitted by a multi-level polyphase modulation system in which each of the I component and the Q component corresponds to 2 bits or more.
[0190]
According to the data receiving device according to claim 5 and the data receiving method according to claim 8, a posterior probability that a symbol of predetermined data is transmitted and the symbol is received is calculated for each symbol, For each bit, a value obtained by multiplying the logarithm of the sum of the posterior probabilities of symbols having a predetermined value by −1 is calculated as a metric for that bit, so the metric can be calculated with a relatively simple circuit. It is possible to calculate and receive a signal transmitted by the multi-level polyphase modulation method in which each of the I component and the Q component corresponds to 2 bits or more, and can be accurately decoded.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a first embodiment of a data receiving apparatus of the present invention.
FIG. 2 is a block diagram illustrating a configuration example of a metric calculation circuit in FIG. 1;
FIG. 3 is a block diagram illustrating a configuration example of the Viterbi decoder of FIG. 1;
4 is a block diagram showing another configuration example of the metric calculation circuit of FIG. 1. FIG.
FIG. 5 is a block diagram showing a configuration of a second embodiment of the data receiving apparatus of the present invention;
6 is a block diagram illustrating a configuration example of a second metric calculation circuit in FIG. 5. FIG.
7 is a block diagram illustrating a configuration example of the Viterbi decoder of FIG. 5;
FIG. 8 is a block diagram illustrating a configuration example of a conventional data transmission apparatus.
9 is a block diagram illustrating a configuration example of a convolutional encoder in FIG. 8. FIG.
10 is a diagram for explaining state transition of the convolutional encoder in FIG. 9; FIG.
FIG. 11 is a diagram for explaining signal point arrangement of QPSK;
FIG. 12 is a block diagram illustrating a configuration example of a conventional data receiving apparatus.
13 is a block diagram illustrating a configuration example of the Viterbi decoder of FIG.
14 is a block diagram illustrating a configuration example of a branch metric calculation circuit in FIG. 13;
15 is a block diagram illustrating a configuration example of the path memory in FIG. 13;
FIG. 16 is a block diagram illustrating a configuration example of a data transmission apparatus when 16QAM is used.
FIG. 17 is a diagram for explaining 16QAM signal point arrangement;
18 is a diagram illustrating a configuration example of a data receiving device that receives data transmitted by the device in FIG. 16;
FIG. 19 is a diagram for explaining the operation of the embodiment of FIG. 18;
[Explanation of symbols]
32 demodulator, 33 symbol despreading circuit, 35 parallel-serial converter, 36-bit insertion circuit, 37 Viterbi decoder, 38 reproduction information, 39 metric calculation circuit, 40 second metric calculation circuit, 101-1 to 101-4 bits Despreading circuit, 111-1 to 111-16 probability calculation circuit, 112-1 to 112-4 adder circuit, 141-1, 141-2 A / D converter, 142-1 to 142-4 ROM, 151-1 To 151-4 logarithmic arithmetic unit, 152-1 to 152-4 inversion circuit

Claims (8)

多値多位相方式でデジタル変調されて伝送されたデータを受信するデータ受信装置において、
前記データのシンボルが伝送され、かつ、そのシンボルが受信された事後確率をシンボル毎に計算し、所定のビットが所定の値であるシンボルの前記事後確率の総和を、そのビットに対するメトリックとして計算するメトリック計算手段と、
前記メトリックを利用して前記データの復号を行う復号手段と
を備えることを特徴とするデータ受信装置。
In a data receiving apparatus for receiving data that is digitally modulated and transmitted in a multi-value multi-phase system,
The posterior probability that the symbol of the data is transmitted and received is calculated for each symbol, and the sum of the posterior probabilities of the symbols whose predetermined bits are a predetermined value is calculated as a metric for the bits. Metric calculation means to
A data receiving apparatus comprising: decoding means for decoding the data using the metric.
前記メトリック計算手段は、受信したデータのI成分およびQ成分より前記事後確率を計算する
ことを特徴とする請求項1に記載のデータ受信装置。
2. The data receiving apparatus according to claim 1, wherein the metric calculating unit calculates the posterior probability from an I component and a Q component of the received data.
前記メトリック計算手段は、受信したデータをデジタル値に変換し、そのデジタル値に対応して、所定の記憶部に予め記憶されている前記メトリックを出力する
ことを特徴とする請求項1に記載のデータ受信装置。
The metric calculation unit converts received data into a digital value, and outputs the metric stored in advance in a predetermined storage unit corresponding to the digital value. Data receiving device.
多値多位相方式でデジタル変調されて伝送されたデータを受信するデータ受信方法において、
前記データのシンボルが伝送され、かつ、そのシンボルが受信された事後確率をシンボル毎に計算し、所定のビットが所定の値であるシンボルの前記事後確率の総和を、そのビットに対するメトリックとして計算するステップと、
前記メトリックを利用して前記データの復号を行うステップと
を備えることを特徴とするデータ受信方法。
In a data receiving method for receiving data that has been digitally modulated and transmitted in a multi-value multi-phase system,
The posterior probability that the symbol of the data is transmitted and received is calculated for each symbol, and the sum of the posterior probabilities of the symbols whose predetermined bits are a predetermined value is calculated as a metric for the bits. And steps to
And a step of decoding the data using the metric.
多値多位相方式でデジタル変調されて伝送されたデータを受信するデータ受信装置において、
前記データのシンボルが伝送され、かつ、そのシンボルが受信された事後確率をシンボル毎に計算し、所定のビットが所定の値であるシンボルの前記事後確率の総和の対数に−1を乗じた値を、そのビットに対するメトリックとして計算するメトリック計算手段と、
前記メトリックを利用して前記データの復号を行う復号手段と
を備えることを特徴とするデータ受信装置。
In a data receiving apparatus for receiving data that is digitally modulated and transmitted in a multi-value multi-phase system,
The posterior probability that the symbol of the data is transmitted and the symbol is received is calculated for each symbol, and the logarithm of the sum of the posterior probabilities of the symbols whose predetermined bits are a predetermined value is multiplied by -1. A metric calculator that calculates the value as a metric for that bit;
A data receiving apparatus comprising: decoding means for decoding the data using the metric.
前記メトリック計算手段は、受信したデータのI成分およびQ成分より前記事後確率を計算する
ことを特徴とする請求項5に記載のデータ受信装置。
6. The data receiving apparatus according to claim 5, wherein the metric calculating unit calculates the posterior probability from an I component and a Q component of received data.
前記メトリック計算手段は、受信したデータをデジタル値に変換し、そのデジタル値に対応して、所定の記憶部に予め記憶されている前記メトリックを出力する
ことを特徴とする請求項5に記載のデータ受信装置。
The said metric calculation means converts the received data into a digital value, and outputs the said metric previously stored in a predetermined storage unit corresponding to the digital value. Data receiving device.
多値多位相方式でデジタル変調されて伝送されたデータを受信するデータ受信方法において、
前記データのシンボルが伝送され、かつ、そのシンボルが受信された事後確率をシンボル毎に計算し、所定のビットが所定の値であるシンボルの前記事後確率の総和の対数に−1を乗じた値を、そのビットに対するメトリックとして計算するステップと、
前記メトリックを利用して前記データの復号を行うステップと
を備えることを特徴とするデータ受信方法。
In a data receiving method for receiving data that has been digitally modulated and transmitted in a multi-value multi-phase system,
The posterior probability that the symbol of the data is transmitted and the symbol is received is calculated for each symbol, and the logarithm of the sum of the posterior probabilities of the symbols whose predetermined bits are a predetermined value is multiplied by -1. Calculating a value as a metric for that bit;
And a step of decoding the data using the metric.
JP23174596A 1996-09-02 1996-09-02 Data receiving apparatus and method Expired - Fee Related JP3606413B2 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP23174596A JP3606413B2 (en) 1996-09-02 1996-09-02 Data receiving apparatus and method
KR1019970043260A KR100498752B1 (en) 1996-09-02 1997-08-29 Apparatus and method for receiving data using bit metrics
DE69733681T DE69733681T2 (en) 1996-09-02 1997-09-02 Data receiver and reception method with soft decoding
EP97306770A EP0827299B1 (en) 1996-09-02 1997-09-02 Data receiver and data receiving method with soft decoding
US09/588,303 US6381727B1 (en) 1996-09-02 2000-06-06 Apparatus and method for receiving data with bit insertion

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23174596A JP3606413B2 (en) 1996-09-02 1996-09-02 Data receiving apparatus and method

Publications (2)

Publication Number Publication Date
JPH1079768A JPH1079768A (en) 1998-03-24
JP3606413B2 true JP3606413B2 (en) 2005-01-05

Family

ID=16928384

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23174596A Expired - Fee Related JP3606413B2 (en) 1996-09-02 1996-09-02 Data receiving apparatus and method

Country Status (1)

Country Link
JP (1) JP3606413B2 (en)

Also Published As

Publication number Publication date
JPH1079768A (en) 1998-03-24

Similar Documents

Publication Publication Date Title
JP3684560B2 (en) Data receiving apparatus and method
JP3654392B2 (en) Data receiving apparatus and method
EP0827299B1 (en) Data receiver and data receiving method with soft decoding
CN110741557A (en) Low delay polar encoding and decoding by combining stages of polar code patterns
KR100984987B1 (en) Methods and apparatus for dynamic packet reordering
TWI768035B (en) Distributed crc polar codes
EP4176573B1 (en) A communication unit for soft-decision demodulation and method therefor
CN112579045B (en) Pseudo-random sequence generation method, pseudo-random sequence generation device and storage medium
JP3606413B2 (en) Data receiving apparatus and method
JP3654393B2 (en) Data receiving apparatus and method
JP3684559B2 (en) Data receiving apparatus and method
JP3684562B2 (en) Data receiving apparatus and method
JP3606412B2 (en) Data receiving apparatus and method
JP2000092139A (en) Packet binary convolution code
JP3654391B2 (en) Data receiving apparatus and method
US11012181B2 (en) Transmission apparatus and transmission method
KR100479020B1 (en) Apparatus and method for receiving data using bit metrics
US7054357B1 (en) Error rate estimating device, method, and information recording medium
CN117692095A (en) Soft bit quantization processing method and device and electronic equipment
Wang Energy Efficient Digital Baseband Modulator for Cable Terminal Systems Targeted on Field Programmable Gate Array
Véstias et al. Design of an IEEE 802.15. 3c baseband processor in FPGA
JP2007312267A (en) Viterbi decoder

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040913

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: 20040917

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040930

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091015

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees