JP3820583B2 - 軟出力復号装置及び軟出力復号方法、並びに復号装置及び復号方法 - Google Patents
軟出力復号装置及び軟出力復号方法、並びに復号装置及び復号方法 Download PDFInfo
- Publication number
- JP3820583B2 JP3820583B2 JP2002001844A JP2002001844A JP3820583B2 JP 3820583 B2 JP3820583 B2 JP 3820583B2 JP 2002001844 A JP2002001844 A JP 2002001844A JP 2002001844 A JP2002001844 A JP 2002001844A JP 3820583 B2 JP3820583 B2 JP 3820583B2
- Authority
- JP
- Japan
- Prior art keywords
- soft output
- quantization step
- data
- decoding
- step size
- 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
Links
Images
Description
【発明の属する技術分野】
本発明は、軟出力復号を行う軟出力復号装置及び軟出力復号方法、並びにこれらの軟出力復号装置及び軟出力復号方法を適用して繰り返し復号を行う復号装置及び復号方法に関する。
【0002】
【従来の技術】
近年、例えば、移動体通信や深宇宙通信といった通信分野、及び地上波又は衛星ディジタル放送といった放送分野の研究が著しく進められているが、それに伴い、誤り訂正符号化及び復号の効率化を目的として符号理論に関する研究も盛んに行われている。
【0003】
符号性能の理論的限界としては、いわゆるシャノン(C. E. Shannon)の通信路符号化定理によって与えられるシャノン限界が知られている。
【0004】
符号理論に関する研究は、このシャノン限界に近い性能を示す符号を開発することを目的として行われている。近年では、シャノン限界に近い性能を示す符号化方法として、例えば、いわゆるターボ符号と称される並列連接畳み込み符号(Parallel Concatenated Convolutional Codes;以下、PCCCという。)や縦列連接畳み込み符号(Serially Concatenated Convolutional Codes;以下、SCCCという。)が開発されている。
【0005】
一方、近年では、これらの符号に対する復号方法についても研究が盛んに行われている。具体的には、連接符号における内符号の復号出力や繰り返し復号法における各繰り返し復号動作の出力を軟出力とすることで、シンボル誤り率を小さくする研究がなされており、それに適した復号方法に関する研究が盛んに行われている。例えば畳み込み符号等の所定の符号を復号した際のシンボル誤り率を最小にする方法としては、「Bahl, Cocke, Jelinek and Raviv, "Optimal decoding of linear codes for minimizing symbol error rate", IEEE Trans. Inf. Theory, vol. IT-20, pp. 284-287, Mar. 1974」に記載されているBCJRアルゴリズムが知られている。このBCJRアルゴリズムにおいては、復号結果として各シンボルを出力するのではなく、各シンボルの尤度を出力する。このような出力は、軟出力(soft-output)と呼ばれる。
【0006】
以下、このBCJRアルゴリズムの内容について説明する。なお、以下の説明では、図17に示すように、ディジタル情報を図示しない送信装置が備える符号化装置201によって畳み込み符号化し、その出力を雑音のある無記憶通信路202を介して図示しない受信装置に入力して、この受信装置が備える復号装置203によって復号し、観測する場合を考える。
【0007】
まず、符号化装置201が備えるシフトレジスタの内容を表すM個のステート(遷移状態)をm(0,1,・・・,M−1)で表し、時刻tのステートをStで表す。また、1タイムスロットにkビットの情報が入力されるものとすると、時刻tにおける入力をit=(it1,it2,・・・,itk)で表し、入力系統をI1 T=(i1,i2,・・・,iT)で表す。このとき、ステートm'からステートmへの遷移がある場合には、その遷移に対応する情報ビットをi(m',m)=(i1(m',m),i2(m',m),・・・,ik(m',m))で表す。さらに、1タイムスロットにnビットの符号が出力されるものとすると、時刻tにおける出力をxt=(xt1,xt2,・・・,xtn)で表し、出力系統をX1 T=(x1,x2,・・・,xT)で表す。このとき、ステートm'からステートmへの遷移がある場合には、その遷移に対応する符号ビットをx(m',m)=(x1(m',m),x2(m',m),・・・,xn(m',m))で表す。
【0008】
符号化装置201による畳み込み符号化は、ステートS0=0から始まり、X1 Tを出力してST=0で終了するものとする。ここで、各ステート間の遷移確率Pt(m|m')を次式(1)によって定義する。
【0009】
【数1】
【0010】
なお、上式(1)における右辺に示すPr{A|B}は、Bが生じた条件の下でのAが生じる条件付き確率である。この遷移確率Pt(m|m')は、次式(2)に示すように、入力iでステートm'からステートmへと遷移するときに、時刻tでの入力itがiである確率Pr{it=i}と等しいものである。
【0011】
【数2】
【0012】
雑音のある無記憶通信路202は、X1 Tを入力とし、Y1 Tを出力する。ここで、1タイムスロットにnビットの受信値が出力されるものとすると、時刻tにおける出力をyt=(yt1,yt2,・・・,ytn)で表し、Y1 T=(y1,y2,・・・,yT)で表す。雑音のある無記憶通信路202の遷移確率は、全てのt(1≦t≦T)について、次式(3)に示すように、各シンボルの遷移確率Pr{yj|xj}を用いて定義することができる。
【0013】
【数3】
【0014】
ここで、次式(4)のようにλtjを定義する。この次式(4)に示すλtjは、Y1 Tを受信した際の時刻tでの入力情報の尤度を表し、本来求めるべき軟出力である。
【0015】
【数4】
【0016】
BCJRアルゴリズムにおいては、次式(5)乃至次式(7)に示すような確率αt,βt,γtを定義する。なお、Pr{A;B}は、AとBとがともに生じる確率を表すものとする。
【0017】
【数5】
【0018】
【数6】
【0019】
【数7】
【0020】
ここで、これらの確率αt,βt,γtの内容について、符号化装置201における状態遷移図であるトレリスを図18を用いて説明する。同図において、αt−1は、符号化開始ステートS0=0から受信値をもとに時系列順に算出した時刻t−1における各ステートの通過確率に対応する。また、βtは、符号化終了ステートST=0から受信値をもとに時系列の逆順に算出した時刻tにおける各ステートの通過確率に対応する。さらに、γtは、時刻tにおける受信値と入力確率とをもとに算出した時刻tにステート間を遷移する各枝の出力の受信確率に対応する。
【0021】
これらの確率αt,βt,γtを用いると、軟出力λtjは、次式(8)のように表すことができる。
【0022】
【数8】
【0023】
ところで、t=1,2,・・・,Tについて、次式(9)が成立する。
【0024】
【数9】
【0025】
同様に、t=1,2,・・・,Tについて、次式(10)が成立する。
【0026】
【数10】
【0027】
さらに、γtについて、次式(11)が成立する。
【0028】
【数11】
【0029】
したがって、復号装置203は、BCJRアルゴリズムを適用して軟出力復号を行う場合には、これらの関係に基づいて、図19に示す一連の工程を経ることによって軟出力λtを求める。
【0030】
まず、復号装置203は、同図に示すように、ステップS201において、ytを受信する毎に、上式(9)及び上式(11)を用いて、確率αt(m),γt(m',m)を算出する。
【0031】
続いて、復号装置203は、ステップS202において、系列Y1 Tの全てを受信した後に、上式(10)を用いて、全ての時刻tにおける各ステートmについて、確率βt(m)を算出する。
【0032】
そして、復号装置203は、ステップS203において、ステップS201及びステップS202において算出した確率αt,βt,γtを上式(8)に代入し、各時刻tにおける軟出力λtを算出する。
【0033】
復号装置203は、このような一連の処理を経ることにより、BCJRアルゴリズムを適用した軟出力復号を行うことができる。
【0034】
ところで、このようなBCJRアルゴリズムにおいては、確率を直接値として保持して演算を行う必要があり、積演算を含むために演算量が大きいという問題があった。そこで、演算量を削減する手法として、「Robertson, Villebrun and Hoeher, "A comparison of optimal and sub-optimal MAP decoding algorithms operating in the domain", IEEE Int. Conf. on Communications, pp. 1009-1013, June 1995」に記載されているMax−Log−MAPアルゴリズム及びLog−MAPアルゴリズム(以下、Max−Log−BCJRアルゴリズム及びLog−BCJRアルゴリズムという。)がある。
【0035】
まず、Max−Log−BCJRアルゴリズムについて説明する。Max−Log−BCJRアルゴリズムは、確率αt,βt,γt、及び軟出力λtを自然対数を用いて対数表記し、次式(12)に示すように、確率の積演算を対数の和演算に置き換えるとともに、次式(13)に示すように、確率の和演算を対数の最大値演算で近似するものである。なお、次式(13)に示すmax(x,y)は、x,yのうち大きい値を有するものを選択する関数である。
【0036】
【数12】
【0037】
【数13】
【0038】
ここで、記載を簡略化するため、自然対数をIと略記し、αt,βt,γt,λtの自然対数値を、それぞれ、次式(14)に示すように、Iαt,Iβt,Iγt,Iλtと表すものとする。なお、次式(14)に示すsgnは、正負を識別する符号を示す定数、すなわち、"+1"又は"−1"のいずれかである。
【0039】
【数14】
【0040】
このような定数sgnを与える理由としては、主に、確率αt,βt,γtが0乃至1の値をとることから、一般に算出される対数尤度(log likelihood)Iαt,Iβt,Iγtが負値をとることにある。
【0041】
例えば、復号装置203がソフトウェアとして構成される場合には、正負いずれの値をも処理可能であるため、定数sgnは"+1"又は"−1"のいずれであってもよいが、復号装置203がハードウェアとして構成される場合には、ビット数の削減を目的として、算出される負値の正負識別符号を反転して正値として扱う方が望ましい。
【0042】
すなわち、定数sgnは、復号装置203が対数尤度として負値のみを扱う系として構成される場合には、"+1"をとり、復号装置203が対数尤度として正値のみを扱う系として構成される場合には、"−1"をとる。以下では、このような定数sgnを考慮したアルゴリズムの説明を行うものとする。
【0043】
Max−Log−BCJRアルゴリズムにおいては、これらの対数尤度Iαt,Iβt,Iγtを、それぞれ、次式(15)乃至次式(17)に示すように近似する。ここで、次式(15)及び次式(16)に示すmsgn(x,y)は、定数sgnが"+1"の場合には、x,yのうち大きい値を有するものを選択する関数max(x,y)を示し、定数sgnが"−1"の場合には、x,yのうち小さい値を有するものを選択する関数min(x,y)を示すものである。次式(15)における右辺のステートm'における関数msgnは、ステートmへの遷移が存在するステートm'の中で求めるものとし、次式(16)における右辺のステートm'における関数msgnは、ステートmからの遷移が存在するステートm'の中で求めるものとする。
【0044】
【数15】
【0045】
【数16】
【0046】
【数17】
【0047】
また、Max−Log−BCJRアルゴリズムにおいては、対数軟出力Iλtについても同様に、次式(18)に示すように近似する。ここで、次式(18)における右辺第1項の関数msgnは、入力が"1"のときにステートmへの遷移が存在するステートm'の中で求め、第2項の関数msgnは、入力が"0"のときにステートmへの遷移が存在するステートm'の中で求めるものとする。
【0048】
【数18】
【0049】
したがって、復号装置203は、Max−Log−BCJRアルゴリズムを適用して軟出力復号を行う場合には、これらの関係に基づいて、図20に示す一連の工程を経ることによって軟出力λtを求める。
【0050】
まず、復号装置203は、同図に示すように、ステップS211において、ytを受信する毎に、上式(15)及び上式(17)を用いて、対数尤度Iαt(m)及びIγt(m',m)を算出する。
【0051】
続いて、復号装置203は、ステップS212において、系列Y1 Tの全てを受信した後に、上式(16)を用いて、全ての時刻tにおける各ステートmについて、対数尤度Iβt(m)を算出する。
【0052】
そして、復号装置203は、ステップS213において、ステップS211及びステップS212において算出した対数尤度Iαt,Iβt,Iγtを上式(18)に代入し、各時刻tにおける対数軟出力Iλtを算出する。
【0053】
復号装置203は、このような一連の処理を経ることにより、Max−Log−BCJRアルゴリズムを適用した軟出力復号を行うことができる。
【0054】
このように、Max−Log−BCJRアルゴリズムは、積演算が含まれないことから、BCJRアルゴリズムと比較して、演算量を大幅に削減することができる。
【0055】
つぎに、Log−BCJRアルゴリズムについて説明する。Log−BCJRアルゴリズムは、Max−Log−BCJRアルゴリズムによる近似の精度をより向上させたものである。具体的には、Log−BCJRアルゴリズムは、上式(13)に示した確率の和演算を次式(19)に示すように補正項を追加することで変形し、和演算の正確な対数値を求めるものである。ここでは、このような補正をlog−sum補正と称するものとする。
【0056】
【数19】
【0057】
ここで、上式(19)における左辺に示す演算をlog−sum演算と称するものとし、このlog−sum演算の演算子を、「S. S. Pietrobon, "Implementation and performance of a turbo/MAP decoder", Int. J. Satellite Commun., vol. 16, pp. 23-46, Jan.-Feb. 1998」に記載されている記数法を踏襲し、次式(20)に示すように、便宜上"#"(ただし、同論文中では、"E"。)と表すものとする。
【0058】
【数20】
【0059】
なお、上式(19)及び上式(20)は、上述した定数sgnが"+1"の場合を示している。定数sgnが"−1"の場合には、上式(19)及び上式(20)に相当する演算は、それぞれ、次式(21)及び次式(22)に示すようになる。
【0060】
【数21】
【0061】
【数22】
【0062】
さらに、log−sum演算の累積加算演算の演算子を、次式(23)に示すように、"#Σ"(ただし、同論文中では、"E"。)と表すものとする。
【0063】
【数23】
【0064】
これらの演算子を用いると、Log−BCJRアルゴリズムにおける対数尤度Iαt,Iβt及び対数軟出力Iλtは、それぞれ、次式(24)乃至次式(26)に示すように表すことができる。なお、対数尤度Iγtは、上式(17)で表されるため、ここでは、その記述を省略する。
【0065】
【数24】
【0066】
【数25】
【0067】
【数26】
【0068】
なお、上式(24)における右辺のステートm'におけるlog−sum演算の累積加算演算は、ステートmへの遷移が存在するステートm'の中で求めるものとし、上式(25)における右辺のステートm'におけるlog−sum演算の累積加算演算は、ステートmからの遷移が存在するステートm'の中で求めるものとする。また、上式(26)における右辺第1項のlog−sum演算の累積加算演算は、入力が"1"のときにステートmへの遷移が存在するステートm'の中で求め、第2項のlog−sum演算の累積加算演算は、入力が"0"のときにステートmへの遷移が存在するステートm'の中で求めるものとする。
【0069】
したがって、復号装置203は、Log−BCJRアルゴリズムを適用して軟出力復号を行う場合には、これらの関係に基づいて、先に図20に示した一連の工程を経ることによって軟出力λtを求めることができる。
【0070】
まず、復号装置203は、同図に示すように、ステップS211において、yt受信する毎に、上式(24)及び上式(17)を用いて、対数尤度Iαt(m),Iγt(m',m)を算出する。
【0071】
続いて、復号装置203は、ステップS212において、系列Y1 Tの全てを受信した後に、上式(25)を用いて、全ての時刻tにおける各ステートmについて、対数尤度Iβt(m)を算出する。
【0072】
そして、復号装置203は、ステップS213において、ステップS211及びステップS212において算出した対数尤度Iαt,Iβt,Iγtを上式(26)に代入し、各時刻tにおける対数軟出力Iλtを算出する。
【0073】
復号装置203は、このような一連の処理を経ることにより、Log−BCJRアルゴリズムを適用した軟出力復号を行うことができる。なお、上式(19)及び上式(21)において、右辺第2項に示す補正項は、図21に示すように、変数|x−y|に対する関数で表されることから、復号装置203は、この値を図示しないROM(Read Only Memory)等にルックアップテーブルとして予め記憶させておくことにより、正確な確率計算を行うことができる。
【0074】
このようなLog−BCJRアルゴリズムは、Max−Log−BCJRアルゴリズムと比較すると演算量は増えるものの積演算を含むものではなく、その出力は、量子化誤差を除けば、BCJRアルゴリズムの軟出力の対数値そのものに他ならない。
【0075】
【発明が解決しようとする課題】
ところで、上述したBCJRアルゴリズム、Max−Log−BCJRアルゴリズム又はLog−BCJRアルゴリズムは、畳み込み符号等のトレリス符号の復号を可能とするアルゴリズムであるが、このトレリス符号を要素符号とし、複数の要素符号化器をインターリーバを介して連接することによって生成される符号の復号にも適用することができる。すなわち、BCJRアルゴリズム、Max−Log−BCJRアルゴリズム又はLog−BCJRアルゴリズムは、上述したPCCC又はSCCCや、これらのPCCC又はSCCCを応用して多値変調と組み合わせ、信号点の配置と誤り訂正符号の復号特性とを統括して考慮するターボ符号化変調(Turbo Trellis Coded Modulation;以下、TTCMという。)又は縦列連接符号化変調(Serial Concatenated Trellis Coded Modulation;以下、SCTCMという。)の復号に適用することができる。
【0076】
これらのPCCC、SCCC、TTCM又はSCTCMを復号する復号装置は、BCJRアルゴリズム、Max−Log−BCJRアルゴリズム又はLog−BCJRアルゴリズムに基づく最大事後確率(Maximum A Posteriori probability;以下、MAPという。)復号を行う複数の復号器をインターリーバを介して連接し、いわゆる繰り返し復号を行うことになる。
【0077】
復号器としては、通常、大規模集積回路(Large Scale Integrated circuit;以下、LSIという。)として各部を単一半導体基板に集積させ、1チップとして構成される。ここで、MAP復号においては、復号器内部での演算の際に必要とされる量子化刻み幅については、性能の観点から、ある程度細かいものを用いる必要があるが、復号器に対する外部とのデータの入出力の際に必要とされる量子化刻み幅については、内部のものよりも粗いものを用いても、下位ビットが切り捨てられるだけであることから、性能に影響が与えられないことがわかっている。したがって、復号器は、いわゆる事後確率情報(a posteriori probability information)に対応する対数軟出力及び/又は次段の復号器に入力されるいわゆる外部情報(extrinsic information)を出力する際には、回路規模削減の観点から、これらの対数軟出力及び/又は外部情報を四捨五入することによって下位ビットを丸めて出力するのが通常である。
【0078】
ここで、復号器として、復号損失の小さいものを実現するためには、Log−BCJRアルゴリズムに基づくMAP復号を行うのが望ましい。したがって、Log−BCJRアルゴリズムに基づくMAP復号を行う復号器は、尤度の算出の際に行う上述したlog−sum演算を少なくとも1回以上行う必要がある。
【0079】
具体的には、この復号器におけるlog−sum演算を行う回路は、図22に示すように構成される。ここでは、説明の便宜上、上式(19)に示したように、変数をx,yとした次式(27)に示すlog−sum演算を行うものとする。すなわち、変数xは、最も尤度の高いパスである最尤パスに対応するデータの値を示すものであり、変数yは、2番目に尤度の高いパスである準最尤パスに対応するデータの値を示すものである。
【0080】
【数27】
【0081】
すなわち、このlog−sum演算回路300は、同図に示すように、入力されたxで表されるデータD301とyで表されるデータD302との差分をとる差分器301と、データD301の値xとデータD302の値yとの大小関係を比較する比較回路302と、差分器301によって得られた差分値x−yを示すデータD303をクリップ(clip)して絶対値|x−y|を算出するクリップ及び絶対値算出回路303と、比較回路302による比較結果を示す比較結果情報D305に基づいてデータD301,D302のうち値が大きいものを選択する選択回路304と、絶対値算出回路303によって算出された絶対値|x−y|を示すデータD304を用いて補正項を算出する補正項算出回路305と、選択回路304によって選択された関数値max(x,y)を示すデータD306と補正項算出回路305によって算出された補正項log(1+e−|x−y|)を示すデータD307とを加算する加算器306とを有する。
【0082】
差分器301は、入力されたxで表されるデータD301とyで表されるデータD302との差分をとり、得られた差分値x−yを示すデータD303をクリップ及び絶対値算出回路303に供給する。
【0083】
比較回路302は、入力されたxで表されるデータD301とyで表されるデータD302との大小関係を比較し、比較結果情報D305を選択回路304に供給する。
【0084】
クリップ及び絶対値算出回路303は、差分器301によって得られたデータD303の振幅を調整し且つ所定のダイナミックレンジにクリップするとともに、絶対値|x−y|を算出する。クリップ及び絶対値算出回路303は、算出した絶対値|x−y|を示すデータD304を補正項算出回路305に供給する。
【0085】
選択回路304は、比較回路302から供給された比較結果情報D305に基づいて、入力されたxで表されるデータD301とyで表されるデータD302とのうち、値が大きいもの、すなわち、確率が高いものを選択する。選択回路304は、選択した関数値max(x,y)を示すデータD306を加算器306に供給する。
【0086】
補正項算出回路305は、クリップ及び絶対値算出回路303によって得られたデータD304を用いて、上式(27)における右辺第2項の値log(1+e−|x−y|)を補正項として算出する。具体的には、補正項算出回路305は、上述したように、補正項が変数|x−y|に対する関数で表されることから、入力される変数|x−y|と補正項log(1+e−|x−y|)とを対応付けたルックアップテーブルを参照することにより、補正項を算出する。補正項算出回路305は、算出した補正項log(1+e−|x−y|)を示すデータD307を加算器306に供給する。
【0087】
加算器306は、選択回路304によって選択されたデータD306と補正項算出回路305によって算出されたデータD307とを加算し、log−sum演算の結果log(ex+ey)を示すデータD308を出力する。
【0088】
このようなlog−sum演算回路300は、復号器内部での演算の際に必要とされる量子化刻み幅Δが"d"とされるデータD301,D302を入力し、最終的に加算器306から出力するデータD308についても、同じ量子化刻み幅Δ=dで出力する。特に、log−sum演算回路300においては、図23に示すように、補正項算出回路305の入出力についても、量子化刻み幅Δが"d"とされるデータD304が入力され、量子化刻み幅Δが"d"とされるデータD307が出力される。すなわち、補正項は、入力がどのようなものであっても本来であればアナログ値として出力されるべきものであるが、補正項算出回路305は、例えば量子化刻み幅Δが"d=0.5"であった場合には、補正項として"0.3"が算出された場合であってもこれを量子化し、"0.5"として出力する。
【0089】
また、復号器は、このようなlog−sum演算回路300を用いて対数軟出力を算出する際には、トレリス上の各枝の入力に応じたlog−sum演算の累積加算演算を行い、入力が"0"の枝に応じたlog−sum演算の累積加算演算結果と、入力が"1"の枝に応じたlog−sum演算の累積加算演算結果との差分をとる必要がある。そこで、復号器は、各ステートに到達した複数のパスに対応する複数のデータの中から選択した2つのパスに対応するデータの組み合わせの全てについて尤度の大小を比較することにより、複数のデータの中から、最も尤度の高いパスである最尤パスに対応するデータを選択する。より具体的には、復号器は、複数のデータについて、いわば勝ち抜き戦に喩えられる動作を行うことにより、各データの値の大小を比較して最尤パスに対応するデータを選択し、log−sum演算の累積加算演算を用いた対数軟出力の算出を実現する。
【0090】
具体的には、復号器におけるlog−sum演算の累積加算演算を行って対数軟出力を算出する回路は、図24に示すように構成される。ここでは、説明の便宜上、各ステートに8本のパスが到達する場合について説明する。
【0091】
すなわち、この軟出力算出回路350は、同図に示すように、7つのlog−sum演算回路3511,3512,3513,3514,3515,3516,3517を有する。
【0092】
軟出力算出回路350は、1回戦として、4個のlog−sum演算回路3511,3512,3513,3514のそれぞれにより、選択された8系統のデータD351,D352,D353,D354,D355,D356,D357,D358を用いたlog−sum演算を行う。また、軟出力算出回路350は、2回戦として、2つのlog−sum演算回路3515,3516のそれぞれにより、4個のlog−sum演算回路3511,3512,3513,3514のそれぞれから出力された4系統のデータD359,D360,D361,D362を用いたlog−sum演算を行う。そして、軟出力算出回路350は、log−sum演算回路3517により、2つのlog−sum演算回路3515,3516のそれぞれから出力された2系統のデータD363,D364を用いたlog−sum演算を行い、最終的に対数軟出力を示すデータD365として出力する。
【0093】
軟出力算出回路350は、このような処理を、入力が"0"又は"1"の場合のそれぞれについて行う。
【0094】
このような軟出力算出回路350は、復号器内部での演算の際に必要とされる量子化刻み幅Δが"d"とされるデータD351,D352,D353,D354,D355,D356,D357,D358を入力し、最終的にlog−sum演算回路3517から出力するデータD365についても、同じ量子化刻み幅Δ=dで出力する。
【0095】
さらに、復号器は、このような軟出力算出回路350によって算出した対数軟出力及び/又は次段の復号器における事前確率情報として入力される外部情報を外部へと出力する。
【0096】
具体的には、復号器における対数軟出力及び/又は外部情報を出力する要部の回路は、図25に示すように構成される。
【0097】
すなわち、復号器は、同図に示すように、対数軟出力を示すデータD371と事前確率情報を示すデータD372とを用いて外部情報を算出する外部情報算出回路360と、対数軟出力を示すデータD371の量子化刻み幅を外部へと出力するのに適したものへと変更するために再度量子化する再量子化回路370と、外部情報算出回路360によって算出された外部情報を示すデータD374と再量子化回路370によって得られた対数軟出力を示すデータD375とを択一的に選択する選択回路371とを有する。
【0098】
外部情報算出回路360は、差分器361と、再量子化回路362とを有する。外部情報算出回路360は、差分器361によって入力された対数軟出力を示すデータD371と事前確率情報を示すデータD372との差分をとり、得られた差分値からなる外部情報を示すデータD373の下位ビットを丸めるべく再量子化回路362によって四捨五入して再度量子化し、量子化刻み幅を外部へと出力するのに適したものへと変更する。外部情報算出回路360は、得られた外部情報を示すデータD374を選択回路371に供給する。
【0099】
再量子化回路370は、外部情報算出回路360における再量子化回路362と同様のものであって、入力された対数軟出力を示すデータD371の下位ビットを丸めるべく四捨五入して再度量子化し、量子化刻み幅を外部へと出力するのに適したものへと変更する。再量子化回路370は、得られた対数軟出力を示すデータD375を選択回路371に供給する。
【0100】
選択回路371は、外部情報算出回路360によって算出された外部情報を示すデータD374と再量子化回路370によって得られた対数軟出力を示すデータD375とを択一的に選択する。すなわち、選択回路371は、当該復号器が繰り返し復号における最終段として設けられるものである場合には、最終的な復号結果としての対数軟出力を示すデータD375を選択し、データD376として外部に出力する一方、当該復号器が繰り返し復号における最終段以外として設けられるものである場合には、外部情報を示すデータD374を選択し、次段の復号器における事前確率情報を示すデータD376として外部に出力する。
【0101】
このような復号器は、内部での演算の際に必要とされる量子化刻み幅Δ=dとされて軟出力算出回路350から供給されるデータD371を入力するとともに、外部とのデータの入出力の際に必要とされる量子化刻み幅Δ=2ndとされるデータD372を入力する。そして、復号器は、データD376として外部へとデータを出力する直前、すなわち、選択回路371の前段にて、外部情報を示すデータD373及び対数軟出力を示すデータD371のそれぞれを再量子化回路362,370によって再量子化し、選択回路371によって選択された一方のデータを量子化刻み幅Δ=2ndのデータD376として出力する。
【0102】
さて、このように、復号器は、対数軟出力及び/又は外部情報を出力する直前で、これらの対数軟出力及び/又は外部情報を再量子化する。しかしながら、復号器においては、既に量子化されているものを再度量子化することから、性能の劣化を招来するといった問題があった。
【0103】
例えば、内部での演算の際に必要とされる量子化刻み幅Δを"d=0.5"とし、外部とのデータの入出力の際に必要とされる量子化刻み幅Δを"2nd=1.0"とした場合に、上述した軟出力算出回路350における最終段のlog−sum演算回路3517によって対数軟出力として"0.3"が算出された場合を考える。この場合、 "0.3"という値を有する対数軟出力は、本来であれば、外部とのデータの入出力の際に必要とされる量子化刻み幅で考えると、"0.0"として量子化されるべき値である。しかしながら、実際に対数軟出力回路350から出力される対数軟出力は、"0.3"という値が量子化された"0.5"として出力された後、さらに、再量子化回路370によって再度量子化され、最終的には"1.0"として出力されることになる。
【0104】
このように、復号器は、既に量子化されている対数軟出力及び/又は外部情報を出力する際に、量子化刻み幅を粗くして再度量子化することから、この量子化刻み幅内に属する値が多数出現することになり、特にこれらの値の分布に偏りがある場合には、これらの値を結果的には不適切に量子化してしまう事態を招来し、性能を劣化させていた。一方、復号器においては、この事態を回避するために再量子化を行わないものとすると、回路規模の増大化を招来することになり、望ましくない。
【0105】
本発明は、このような実情に鑑みてなされたものであり、回路規模の増大化を招来することなく、性能劣化が生じないように、内部での演算の際に必要とされる量子化刻み幅を外部とのデータの入出力の際に必要とされる量子化刻み幅へと変更することができる軟出力復号装置及び軟出力復号方法、並びにこれらの軟出力復号装置及び軟出力復号方法を適用して繰り返し復号を行うことができる復号装置及び復号方法を提供することを目的とする。
【0106】
【課題を解決するための手段】
上述した目的を達成する本発明にかかる軟出力復号装置は、軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、この対数尤度を用いて軟出力復号を行う軟出力復号装置であって、受信値と、当該軟出力復号装置内部での演算の際に必要とされる第1の量子化刻み幅よりも粗い外部とのデータの入出力の際に必要とされる第2の量子化刻み幅とされる事前確率情報とを入力し、対数尤度を与えるために追加される補正項であって対数尤度の差分の絶対値の関数で表される補正項を追加することで確率の和演算を変形し、当該和演算の正確な対数値を求める所定演算を少なくとも行うことによって軟出力復号を行い、各時刻における軟出力を対数表記した第2の量子化刻み幅とされる対数軟出力を生成する軟出力復号手段を備え、この軟出力復号手段は、第1の量子化刻み幅とされる対数尤度を用いた対数軟出力の算出の際に行う所定演算の演算結果を第2の量子化刻み幅に変更して出力することを特徴としている。
【0107】
このような本発明にかかる軟出力復号装置は、第1の量子化刻み幅とされる対数尤度を用いた軟出力復号手段による対数軟出力の算出の際に行う所定演算の演算結果を第2の量子化刻み幅に変更して出力する。
【0108】
また、上述した目的を達成する本発明にかかる軟出力復号方法は、軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、この対数尤度を用いて軟出力復号を行う軟出力復号方法であって、受信値と、軟出力復号を行う軟出力復号装置内部での演算の際に必要とされる第1の量子化刻み幅よりも粗い外部とのデータの入出力の際に必要とされる第2の量子化刻み幅とされる事前確率情報とを入力し、対数尤度を与えるために追加される補正項であって対数尤度の差分の絶対値の関数で表される補正項を追加することで確率の和演算を変形し、当該和演算の正確な対数値を求める所定演算を少なくとも行うことによって軟出力復号を行い、各時刻における軟出力を対数表記した第2の量子化刻み幅とされる対数軟出力を生成する軟出力復号工程を備え、この軟出力復号工程では、第1の量子化刻み幅とされる対数尤度を用いた対数軟出力の算出の際に行う所定演算の演算結果が第2の量子化刻み幅に変更されて出力されることを特徴としている。
【0109】
このような本発明にかかる軟出力復号方法は、第1の量子化刻み幅とされる対数尤度を用いた対数軟出力の算出の際に行う所定演算の演算結果を第2の量子化刻み幅に変更して出力する。
【0110】
さらに、上述した目的を達成する本発明にかかる復号装置は、軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、この対数尤度を用いて、複数の要素符号をインターリーブ処理を介して並列又は縦列に連接して生成された符号を繰り返し復号する復号装置であって、複数の要素符号に対応して設けられ、受信値と、当該軟出力復号装置内部での演算の際に必要とされる第1の量子化刻み幅よりも粗い外部とのデータの入出力の際に必要とされる第2の量子化刻み幅とされる事前確率情報とを入力し、対数尤度を与えるために追加される補正項であって対数尤度の差分の絶対値の関数で表される補正項を追加することで確率の和演算を変形し、当該和演算の正確な対数値を求める所定演算を少なくとも行うことによって軟出力復号を行い、各時刻における軟出力を対数表記した第2の量子化刻み幅とされる対数軟出力及び/又は外部情報を生成する複数の軟出力復号手段と、この軟出力復号手段によって生成された外部情報を入力し、符号化におけるインターリーブ処理と同一の置換位置情報に基づいて、外部情報の順序を所定のアドレスにしたがって置換して並べ替えるインターリーブ処理、又は符号化におけるインターリーブ処理によって並べ替えられた情報の配列を元に戻すように、外部情報の順序を所定のアドレスにしたがって置換して並べ替えるデインターリーブ処理を行うインターリーブ手段とを備え、軟出力復号手段は、第1の量子化刻み幅とされる対数尤度を用いた対数軟出力の算出の際に行う所定演算の演算結果を第2の量子化刻み幅に変更して出力することを特徴としている。
【0111】
このような本発明にかかる復号装置は、繰り返し復号を行う際に、第1の量子化刻み幅とされる対数尤度を用いた軟出力復号手段による対数軟出力の算出の際に行う所定演算の演算結果を第2の量子化刻み幅に変更して出力する。
【0112】
さらにまた、上述した目的を達成する本発明にかかる復号方法は、軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、この対数尤度を用いて、複数の要素符号をインターリーブ処理を介して並列又は縦列に連接して生成された符号を繰り返し復号する復号方法であって、複数の要素符号に対応して設けられ、受信値と、軟出力復号を行う軟出力復号装置内部での演算の際に必要とされる第1の量子化刻み幅よりも粗い外部とのデータの入出力の際に必要とされる第2の量子化刻み幅とされる事前確率情報とを入力し、対数尤度を与えるために追加される補正項であって対数尤度の差分の絶対値の関数で表される補正項を追加することで確率の和演算を変形し、当該和演算の正確な対数値を求める所定演算を少なくとも行うことによって軟出力復号を行い、各時刻における軟出力を対数表記した第2の量子化刻み幅とされる対数軟出力及び/又は外部情報を生成する複数の軟出力復号工程と、この軟出力復号工程にて生成された外部情報を入力し、符号化におけるインターリーブ処理と同一の置換位置情報に基づいて、外部情報の順序を所定のアドレスにしたがって置換して並べ替えるインターリーブ処理、又は符号化におけるインターリーブ処理によって並べ替えられた情報の配列を元に戻すように、外部情報の順序を所定のアドレスにしたがって置換して並べ替えるデインターリーブ処理を行うインターリーブ工程とを備え、軟出力復号工程では、第1の量子化刻み幅とされる対数尤度を用いた対数軟出力の算出の際に行う所定演算の演算結果が第2の量子化刻み幅に変更されて出力されることを特徴としている。
【0113】
このような本発明にかかる復号方法は、繰り返し復号を行う際に、第1の量子化刻み幅とされる対数尤度を用いた対数軟出力の算出の際に行う所定演算の演算結果を第2の量子化刻み幅に変更して出力する。
【0114】
【発明の実施の形態】
以下、本発明を適用した具体的な実施の形態について図面を参照しながら詳細に説明する。
【0115】
この実施の形態は、図1に示すように、ディジタル情報を図示しない送信装置が備える符号化装置1によって符号化し、その出力を雑音のある無記憶通信路2を介して図示しない受信装置に入力して、この受信装置が備える復号装置3によって復号する通信モデルに適用したデータ送受信システムである。
【0116】
このデータ送受信システムにおいて、符号化装置1は、畳み込み符号等のトレリス符号を要素符号とする並列連接畳み込み符号(Parallel Concatenated Convolutional Codes;以下、PCCCという。)又は縦列連接畳み込み符号(Serially Concatenated Convolutional Codes;以下、SCCCという。)や、これらのPCCC又はSCCCを応用して多値変調と組み合わせたターボ符号化変調(Turbo Trellis Coded Modulation;以下、TTCMという。)又は縦列連接符号化変調(Serial Concatenated Trellis Coded Modulation;以下、SCTCMという。)を行うものとして構成される。これらの符号化は、いわゆるターボ符号化(Turbo coding)の一種として知られているものであって、符号化装置1は、複数の要素符号化器と、入力されたデータを並べ替えるインターリーバとを連接することにより、ターボ符号化を行うものとして構成される。
【0117】
一方、復号装置3は、符号化装置1によって符号化がなされた符号の復号を行うものであって、「Bahl, Cocke, Jelinek and Raviv, "Optimal decoding of linear codes for minimizing symbol error rate", IEEE Trans. Inf. Theory, vol. IT-20, pp. 284-287, Mar. 1974」に記載されているBCJRアルゴリズムを改良したアルゴリズムであって、「Robertson, Villebrun and Hoeher, "A comparison of optimal and sub-optimal MAP decoding algorithms operating in the domain", IEEE Int. Conf. on Communications, pp. 1009-1013, June 1995」に記載されているLog−MAPアルゴリズム(以下、Log−BCJRアルゴリズムという。)に基づく最大事後確率(Maximum A Posteriori probability;以下、MAPという。)復号を行うものとして構成され、いわゆる確率αt,βt,γt、及び軟出力(soft-output)λtを自然対数を用いて対数尤度(log likelihood)の形式で対数表記した対数尤度Iαt,Iβt,Iγt、及びいわゆる事後確率情報(a posteriori probability information)に対応する対数軟出力Iλt及び/又はいわゆる外部情報(extrinsic information)EXtを求める複数の軟出力復号回路と、入力されたデータを並べ替えるインターリーバとを連接することにより、繰り返し復号を行うものとして構成される。
【0118】
特に、復号装置3における軟出力復号回路は、それぞれ、大規模集積回路(Large Scale Integrated circuit;以下、LSIという。)として各部を単一半導体基板に集積させ、1チップとして構成されるものであり、回路規模を増大させることなく、且つ性能劣化を生じさせることなく、内部での演算の際に必要とされる第1の量子化刻み幅を外部とのデータの入出力の際に必要とされる第2の量子化刻み幅へと変更することができるものである。
【0119】
まず、本発明の外延をより明確にするために、本発明の詳細な説明に先立って、図2及び図3に示すPCCCによる符号化・復号を行う符号化装置1'及び復号装置3'と、図4及び図5に示すSCCCによる符号化・復号を行う符号化装置1''及び復号装置3''とについて説明する。これらの符号化装置1',1''は、符号化装置1の例として位置付けられるものであり、復号装置3',3''は、復号装置3の例として位置付けられるものである。
【0120】
まず、PCCCによる符号化を行う符号化装置1'と、この符号化装置1'による符号の復号を行う復号装置3'とについて説明する。
【0121】
符号化装置1'としては、図2に示すように、入力されたデータを遅延させる遅延器11と、畳み込み演算を行う2つの畳み込み符号化器12,14と、入力されたデータの順序を並べ替えるインターリーバ13とを備えるものがある。この符号化装置1'は、入力された1ビットの入力データD1に対して、符号化率が"1/3"の並列連接畳み込み演算を行い、3ビットの出力データD4,D5,D6を生成し、例えば2相位相(Binary Phase Shift Keying;以下、BPSKという。)変調方式や4相位相(Quadrature Phase Shift Keying;以下、QPSKという。)変調方式による変調を行う図示しない変調器を介して外部に出力する。
【0122】
遅延器11は、3ビットの出力データD4,D5,D6が出力されるタイミングを合わせるために備えられるものであり、1ビットの入力データD1を入力すると、この入力データD1をインターリーバ13が要する処理時間と同時間だけ遅延させる。遅延器11は、遅延させて得られた遅延データD2を、出力データD4として外部に出力するとともに、後段の畳み込み符号化器12に供給する。
【0123】
畳み込み符号化器12は、遅延器11から出力された1ビットの遅延データD2を入力すると、この遅延データD2に対して畳み込み演算を行い、演算結果を出力データD5として外部に出力する。
【0124】
インターリーバ13は、1つのビット系列からなる入力データD1を入力し、この入力データD1を構成する各ビットの順序を並べ替え、生成したインターリーブデータD3を後段の畳み込み符号化器14に供給する。
【0125】
畳み込み符号化器14は、インターリーバ13から供給される1ビットのインターリーブデータD3を入力すると、このインターリーブデータD3に対して畳み込み演算を行い、演算結果を出力データD6として外部に出力する。
【0126】
このような符号化装置1'は、1ビットの入力データD1を入力すると、この入力データD1を組織成分の出力データD4として、遅延器11を介してそのまま外部に出力するとともに、畳み込み符号化器12による遅延データD2の畳み込み演算の結果得られる出力データD5と、畳み込み符号化器14によるインターリーブデータD3の畳み込み演算の結果得られる出力データD6とを外部に出力することにより、全体として、符号化率が"1/3"の並列連接畳み込み演算を行う。この符号化装置1'によって符号化されたデータは、図示しない変調器によって所定の変調方式に基づいて信号点のマッピングが行われ、無記憶通信路2を介して受信装置に出力される。
【0127】
一方、符号化装置1'による符号の復号を行う復号装置3'としては、図3に示すように、軟出力復号を行う2つの軟出力復号回路15,17と、入力されたデータの順序を並べ替えるインターリーバ16と、入力されたデータの順序を元に戻す2つのデインターリーバ18,20と、2つのデータを加算する加算器19とを備えるものがある。この復号装置3'は、無記憶通信路2上で発生したノイズの影響によって軟入力(soft-input)とされる受信値D7から符号化装置1'における入力データD1を推定し、復号データD13として出力する。
【0128】
軟出力復号回路15は、符号化装置1'における畳み込み符号化器12に対応して備えられるものであり、上述したLog−BCJRアルゴリズムに基づくMAP復号を行う。すなわち、軟出力復号回路15は、軟入力の受信値D7を入力するとともに、デインターリーバ18から出力された軟入力の情報ビットに対する事前確率情報(a priori probability information)D8を入力し、これらの受信値D7と事前確率情報D8とを用いて、軟出力復号を行う。そして、軟出力復号回路15は、符号の拘束条件によって求められる情報ビットに対する外部情報D9を生成し、この外部情報D9を後段のインターリーバ16に軟出力として出力する。
【0129】
インターリーバ16は、軟出力復号回路15から出力された軟入力である情報ビットに対する外部情報D9に対して、符号化装置1'におけるインターリーバ13と同一の置換位置情報に基づいたインターリーブを施す。インターリーバ16は、インターリーブして得られたデータを後段の軟出力復号回路17における情報ビットに対する事前確率情報D10として出力するとともに、後段の加算器19に出力する。
【0130】
軟出力復号回路17は、符号化装置1'における畳み込み符号化器14に対応して備えられるものであり、軟出力復号回路15と同様に、Log−BCJRアルゴリズムに基づくMAP復号を行う。すなわち、軟出力復号回路17は、軟入力の受信値D7を入力するとともに、インターリーバ16から出力された軟入力の情報ビットに対する事前確率情報D10を入力し、これらの受信値D7と事前確率情報D10とを用いて、軟出力復号を行う。そして、軟出力復号回路17は、符号の拘束条件によって求められる情報ビットに対する外部情報D11を生成し、この外部情報D11をデインターリーバ18に軟出力として出力するとともに、加算器19に出力する。
【0131】
デインターリーバ18は、符号化装置1'におけるインターリーバ13によってインターリーブされたインターリーブデータD3のビット配列を、元の入力データD1のビット配列に戻すように、軟出力復号回路17から出力される軟入力の外部情報D11にデインターリーブを施す。デインターリーバ18は、デインターリーブして得られたデータを軟出力復号回路15における情報ビットに対する事前確率情報D8として出力する。
【0132】
加算器19は、インターリーバ16から出力された軟入力の情報ビットに対する事前確率情報D10と、軟出力復号回路17から出力された情報ビットに対する外部情報D11とを加算する。加算器19は、得られたデータD12を後段のデインターリーバ20に軟出力として出力する。
【0133】
デインターリーバ20は、符号化装置1'におけるインターリーバ13によってインターリーブされたインターリーブデータD3のビット配列を、元の入力データD1のビット配列に戻すように、加算器19から出力される軟出力のデータD12にデインターリーブを施す。デインターリーバ20は、デインターリーブして得られたデータを復号データD13として外部に出力する。
【0134】
このような復号装置3'は、符号化装置1'における畳み込み符号化器12,14のそれぞれに対応する軟出力復号回路15,17を備えることにより、復号複雑度が高い符号を複雑度の小さい要素に分解し、軟出力復号回路15,17の間の相互作用によって特性を逐次的に向上させることができる。復号装置3'は、受信値D7を受信すると、所定の繰り返し回数での繰り返し復号を行い、この復号動作の結果得られた軟出力の外部情報に基づいて、復号データD13を出力する。
【0135】
なお、TTCMによる符号化を行う符号化装置は、符号化装置1'の最終段に、例えば8相位相(8-Phase Shift Keying;以下、8PSKという。)変調方式による変調を行う変調器を備えることによって実現することができる。また、TTCMによる符号の復号を行う復号装置は、復号装置3'と同様の構成で実現することができ、受信値として、同相成分及び直交成分のシンボルを直接入力することになる。
【0136】
つぎに、SCCCによる符号化を行う符号化装置1''と、この符号化装置1''による符号の復号を行う復号装置3''とについて説明する。
【0137】
符号化装置1''としては、図4に示すように、外符号と呼ばれる符号の符号化を行う畳み込み符号化器31と、入力されたデータの順序を並べ替えるインターリーバ32と、内符号と呼ばれる符号の符号化を行う畳み込み符号化器33とを備えるものがある。この符号化装置1''は、入力された1ビットの入力データD21に対して、符号化率が"1/3"の縦列連接畳み込み演算を行い、3ビットの出力データD26,D27,D28を生成し、例えばBPSK変調方式やQPSK変調方式による変調を行う図示しない変調器を介して外部に出力する。
【0138】
畳み込み符号化器31は、1ビットの入力データD21を入力すると、この入力データD21に対して畳み込み演算を行い、演算結果を2ビットの符号化データD22,D23として後段のインターリーバ32に供給する。すなわち、畳み込み符号化器31は、外符号の符号化として符号化率が"1/2"の畳み込み演算を行い、生成した符号化データD22,D23を後段のインターリーバ32に供給する。
【0139】
インターリーバ32は、畳み込み符号化器31から供給された2つのビット系列からなる符号化データD22,D23を入力し、これらの符号化データD22,D23を構成する各ビットの順序を並べ替え、生成した2つのビット系列からなるインターリーブデータD24,D25を後段の畳み込み符号化器33に供給する。
【0140】
畳み込み符号化器33は、インターリーバ32から供給される2ビットのインターリーブデータD24,D25を入力すると、これらのインターリーブデータD24,D25に対して畳み込み演算を行い、演算結果を3ビットの出力データD26,D27,D28として外部に出力する。すなわち、畳み込み符号化器33は、内符号の符号化として符号化率が"2/3"の畳み込み演算を行い、出力データD26,D27,D28を外部に出力する。
【0141】
このような符号化装置1''は、畳み込み符号化器31によって外符号の符号化として符号化率が"1/2"の畳み込み演算を行い、畳み込み符号化器33によって内符号の符号化として符号化率が"2/3"の畳み込み演算を行うことにより、全体として、符号化率が"(1/2)×(2/3)=1/3"の縦列連接畳み込み演算を行う。この符号化装置1''によって符号化されたデータは、図示しない変調器によって所定の変調方式に基づいて信号点のマッピングが行われ、無記憶通信路2を介して受信装置に出力される。
【0142】
一方、符号化装置1''による符号の復号を行う復号装置3''としては、図5に示すように、軟出力復号を行う2つの軟出力復号回路34,36と、入力されたデータの順序を元に戻すデインターリーバ35と、入力されたデータの順序を並べ替えるインターリーバ37とを備えるものがある。この復号装置3''は、無記憶通信路2上で発生したノイズの影響によって軟入力とされる受信値D29から符号化装置1''における入力データD21を推定し、復号データD36として出力する。
【0143】
軟出力復号回路34は、符号化装置1''における畳み込み符号化器33に対応して備えられるものであり、Log−BCJRアルゴリズムに基づくMAP復号を行う。すなわち、軟出力復号回路34は、軟入力の受信値D29を入力するとともに、インターリーバ37から出力された軟入力の情報ビットに対する事前確率情報D30を入力し、これらの受信値D29と事前確率情報D30とを用いて、Log−BCJRアルゴリズムに基づくMAP復号を行い、内符号の軟出力復号を行う。そして、軟出力復号回路34は、符号の拘束条件によって求められる情報ビットに対する外部情報D31を生成し、この外部情報D31を後段のデインターリーバ35に軟出力として出力する。なお、この外部情報D31は、符号化装置1''におけるインターリーバ32によってインターリーブされたインターリーブデータD24,D25に対応するものである。
【0144】
デインターリーバ35は、符号化装置1''におけるインターリーバ32によってインターリーブされたインターリーブデータD24,D25のビット配列を、それぞれ、元の符号化データD22,D23のビット配列に戻すように、軟出力復号回路34から出力される軟入力の外部情報D31にデインターリーブを施す。デインターリーバ35は、デインターリーブして得られたデータを後段の軟出力復号回路36における符号ビットに対する事前確率情報D32として出力する。
【0145】
軟出力復号回路36は、符号化装置1''における畳み込み符号化器31に対応して備えられるものであり、軟出力復号回路34と同様に、Log−BCJRアルゴリズムに基づくMAP復号を行う。すなわち、軟出力復号回路36は、デインターリーバ35から出力された軟入力の符号ビットに対する事前確率情報D32を入力するとともに、値が"0"である情報ビットに対する事前確率情報D33を入力し、これらの事前確率情報D32,D33を用いて、Log−BCJRアルゴリズムに基づくMAP復号を行い、外符号の軟出力復号を行う。軟出力復号回路36は、符号の拘束条件によって求められる外部情報D34,D35を生成し、外部情報D34を復号データD36として外部に出力するとともに、外部情報D35をインターリーバ37に軟出力として出力する。
【0146】
インターリーバ37は、軟出力復号回路36から出力された軟入力である符号ビットに対する外部情報D35に対して、符号化装置1''におけるインターリーバ32と同一の置換位置情報に基づいたインターリーブを施す。インターリーバ37は、インターリーブして得られたデータを軟出力復号回路34における情報ビットに対する事前確率情報D30として出力する。
【0147】
このような復号装置3''は、符号化装置1''における畳み込み符号化器31,33のそれぞれに対応する軟出力復号回路36,34を備えることにより、復号装置3'と同様に、復号複雑度が高い符号を複雑度の小さい要素に分解し、軟出力復号回路34,36の間の相互作用によって特性を逐次的に向上させることができる。復号装置3''は、受信値D29を受信すると、所定の繰り返し回数での繰り返し復号を行い、この復号動作の結果得られた軟出力の外部情報に基づいて、復号データD36を出力する。
【0148】
なお、SCTCMによる符号化を行う符号化装置は、符号化装置1''の最終段に、例えば8PSK変調方式による変調を行う変調器を備えることによって実現することができる。また、SCTCMによる符号の復号を行う復号装置は、復号装置3''と同様の構成で実現することができ、受信値として、同相成分及び直交成分のシンボルを直接入力することになる。
【0149】
さて、以下では、復号装置3に備えられる軟出力復号回路について説明する。軟出力復号回路は、上述したように、回路規模を増大させることなく、且つ性能劣化を生じさせることなく、内部での演算の際に必要とされる量子化刻み幅を外部とのデータの入出力の際に必要とされる量子化刻み幅へと変更することができるものである。
【0150】
なお、以下では、符号化装置1における畳み込み符号化器が有するシフトレジスタの内容を表すM個のステート(遷移状態)をm(0,1,・・・,M−1)で表し、時刻tのステートをStで表す。また、1タイムスロットにkビットの情報が入力されるものとすると、時刻tにおける入力をit=(it1,it2,・・・,itk)で表し、入力系統をI1 T=(i1,i2,・・・,iT)で表す。このとき、ステートm'からステートmへの遷移がある場合には、その遷移に対応する情報ビットをi(m',m)=(i1(m',m),i2(m',m),・・・,ik(m',m))で表す。さらに、1タイムスロットにnビットの符号が出力されるものとすると、時刻tにおける出力をxt=(xt1,xt2,・・・,xtn)で表し、出力系統をX1 T=(x1,x2,・・・,xT)で表す。このとき、ステートm'からステートmへの遷移がある場合には、その遷移に対応する符号ビットをx(m',m)=(x1(m',m),x2(m',m),・・・,xn(m',m))で表す。さらにまた、無記憶通信路2は、X1 Tを入力とし、Y1 Tを出力するものとする。ここで、1タイムスロットにnビットの受信値が出力されるものとすると、時刻tにおける出力をyt=(yt1,yt2,・・・,ytn)で表し、Y1 T=(y1,y2,・・・,yT)で表す。
【0151】
ここでは説明の簡略化ために、畳み込み符号化器の一例として、差し当たって図6に示すように、3つの排他的論理和回路41,43,45と、2つのシフトレジスタ42,44とを有し、拘束長が"3"の畳み込み演算を行う畳み込み符号化器40を採用して説明する。
【0152】
排他的論理和回路41は、1ビットの入力データit1と、排他的論理和回路43から供給されるデータとを用いて排他的論理和演算を行い、演算結果をシフトレジスタ42及び排他的論理和回路45に供給する。
【0153】
シフトレジスタ42は、保持している1ビットのデータを排他的論理和回路43及びシフトレジスタ44に供給し続ける。そして、シフトレジスタ42は、クロックに同期させて、排他的論理和回路41から供給される1ビットのデータを新たに保持し、このデータを排他的論理和回路43及びシフトレジスタ44に新たに供給する。
【0154】
排他的論理和回路43は、シフトレジスタ42,44から供給されるデータを用いて排他的論理和演算を行い、演算結果を排他的論理和回路41に供給する。
【0155】
シフトレジスタ44は、保持している1ビットのデータを排他的論理和回路43,45に供給し続ける。そして、シフトレジスタ44は、クロックに同期させて、シフトレジスタ42から供給される1ビットのデータを新たに保持し、このデータを排他的論理和回路43,45に新たに供給する。
【0156】
排他的論理和回路45は、排他的論理和回路41から供給されるデータと、シフトレジスタ44から供給されるデータとを用いて排他的論理和演算を行い、演算結果を2ビットの出力データxtのうちの1ビットの出力データxt2として外部に出力する。
【0157】
このような畳み込み符号化器40は、1ビットの入力データit1を入力すると、この入力データit1を、2ビットの出力データxtのうちの組織成分の1ビットの出力データxt1として、そのまま外部に出力するとともに、入力データit1に対して再帰的畳み込み演算を行い、演算結果を2ビットの出力データxtのうちの他方の1ビットの出力データxt2として外部に出力する。すなわち、畳み込み符号化器40は、符号化率が"1/2"の再帰的組織畳み込み演算を行い、出力データxtを外部に出力する。
【0158】
この畳み込み符号化器40におけるトレリスを記述すると、図7に示すようになる。同図において、破線で示すパスは、入力データit1が"0"の場合を示し、実線で示すパスは、入力データit1が"1"の場合を示している。また、各パスに付与されているラベルは、2ビットの出力データxtを示している。ここでは、ステートは、シフトレジスタ42の内容とシフトレジスタ44の内容とを順次並べたものであり、"00"、"10"、"01"、"11"のステート番号を、それぞれ、"0"、"1"、"2"、"3"と表している。このように、畳み込み符号化器40におけるステート数Mは"4"となり、トレリスは、各ステートから次時刻におけるステートへと2本のパスが到達する構造を有する。なお、以下の説明では、各ステート番号に対応するステートを指示する場合には、それぞれ、ステート0、ステート1、ステート2、ステート3と称するものとする。
【0159】
一方、図8に示すように、軟出力復号回路の一例であり、畳み込み符号化器40に対応した復号を行う軟出力復号回路50は、各部を制御するコントローラ51と、第1の対数尤度である対数尤度Iγを算出して記憶する第1の確率算出手段であるIγ算出・記憶回路52と、第2の対数尤度である対数尤度Iαを算出して記憶する第2の確率算出手段であるIα算出・記憶回路53と、第3の対数尤度である対数尤度Iβを算出して記憶する第3の確率算出手段であるIβ算出・記憶回路54と、対数軟出力Iλtを算出する軟出力算出手段である軟出力算出回路55と、外部情報EXtを算出する外部情報算出手段である外部情報算出回路56と、出力するデータを択一的に選択する選択回路57とを有する。この軟出力復号回路50は、無記憶通信路2上で発生したノイズの影響によってアナログ値をとり軟入力とされる受信値ytから対数軟出力Iλtを求めることにより、畳み込み符号化器40における入力データit1を推定するものである。
【0160】
コントローラ51は、Iγ算出・記憶回路52、Iα算出・記憶回路53、Iβ算出・記憶回路54及び選択回路57に対して、それぞれ、コントロール信号SCγ,SCα,SCβ,SCを供給し、各部の動作を制御する。
【0161】
Iγ算出・記憶回路52は、コントローラ51から供給されたコントロール信号SCγによる制御のもとに、受信値ytと、量子化刻み幅Δが内部での演算の際に必要とされる量子化刻み幅Δ=dよりも粗い外部とのデータの入出力の際に必要とされる量子化刻み幅Δ=2ndとされる事前確率情報APPtとを用いて、受信値yt毎に、次式(28)に示す演算を行い、各時刻tにおける対数尤度Iγtを算出して記憶する。なお、次式(28)に示すsgnは、正負を識別する符号を示す定数、すなわち、"+1"又は"−1"のいずれかである。この定数sgnは、軟出力復号回路50が負値のみを扱う系として構成される場合には、"+1"をとり、軟出力復号回路50が正値のみを扱う系として構成される場合には、"−1"をとる。また、受信値ytの量子化刻み幅は、特に限定はなく、例えばΔ=dであってもよくΔ=2ndであってもよい。
【0162】
【数28】
【0163】
なお、事前確率情報APPtは、次式(29)に示すように、入力データit 1が"1"である確率Pr{it1=1}と入力データit1が"0"である確率Pr{it1=0}との比の自然対数値である対数尤度比(log likelihood ratio)として与えられるものとする。また、事前確率情報APPtは、確率Pr{it1=1}又は確率Pr{it1=0}として与えられ、確率Pr{it1=1}と確率Pr{it1=0}との和が"1"であることを考慮して、確率Pr{it1=1}の自然対数値と確率Pr{it1=0}の自然対数値との差分値として求められてもよい。
【0164】
【数29】
【0165】
Iγ算出・記憶回路52は、受信値yt毎に、符号の出力パターンと受信値によって決定される確率γを対数表記した対数尤度Iγ又は確率γを対数表記して正負識別符号を反転した対数尤度Iγを算出する。このとき、Iγ算出・記憶回路52は、内部での演算の際に必要とされる量子化刻み幅Δ=dで対数尤度Iγを算出する。そして、Iγ算出・記憶回路52は、記憶した対数尤度IγtをIα算出・記憶回路53、Iβ算出・記憶回路54及び軟出力算出回路55に供給する。このとき、Iγ算出・記憶回路52は、Iα算出・記憶回路53、Iβ算出・記憶回路54及び軟出力算出回路55のそれぞれにおける処理に適した順序で対数尤度Iγtを供給する。なお、以下の説明では、Iγ算出・記憶回路52からIα算出・記憶回路53に供給される対数尤度IγtをIγ(α)と表し、Iγ算出・記憶回路52からIβ算出・記憶回路54に供給される対数尤度IγtをIγ(β1),Iγ(β2)と表し、Iγ算出・記憶回路52から軟出力算出回路55に供給される対数尤度IγtをIγ(λ)と表すものとする。
【0166】
Iα算出・記憶回路53は、コントローラ51から供給されたコントロール信号SCαによる制御のもとに、Iγ算出・記憶回路52から供給された量子化刻み幅Δが"d"とされる対数尤度Iγ(α)を用いて、次式(30)に示す演算を行い、各時刻tにおける対数尤度Iαtを算出して記憶する。なお、次式(30)における演算子"#"は、所定演算であるいわゆるlog−sum演算を示すものであり、入力"0"でステートm'からステートmへと遷移するときにおける対数尤度と、入力"1"でステートm''からステートmへと遷移するときにおける対数尤度とのlog−sum演算を示すものである。より具体的には、Iα算出・記憶回路53は、定数sgnが"+1"の場合には、次式(31)に示す演算を行うことにより、一方、定数sgnが"−1"の場合には、次式(32)に示す演算を行うことにより、各時刻tにおける対数尤度Iαtを算出する。すなわち、Iα算出・記憶回路53は、対数尤度Iγに基づいて、受信値yt毎に、符号化開始ステートから時系列順に各ステートに至る確率αを対数表記した対数尤度Iα又は確率αを対数表記して正負識別符号を反転した対数尤度Iαを算出する。このとき、Iα算出・記憶回路53は、量子化刻み幅Δ=dで対数尤度Iαを算出する。そして、Iα算出・記憶回路53は、記憶した対数尤度Iαtを軟出力算出回路55に供給する。このとき、Iα算出・記憶回路53は、軟出力算出回路55における処理に適した順序で対数尤度Iαtを供給する。なお、以下の説明では、Iα算出・記憶回路53から軟出力算出回路55に供給される対数尤度IαtをIα(λ)と表すものとする。
【0167】
【数30】
【0168】
【数31】
【0169】
【数32】
【0170】
Iβ算出・記憶回路54は、コントローラ51から供給されたコントロール信号SCβによる制御のもとに、Iγ算出・記憶回路52から供給された量子化刻み幅Δが"d"とされる対数尤度Iγ(β1),Iγ(β2)を用いて、次式(33)に示す演算を行い、各時刻における2系統の対数尤度Iβtを並列的に算出して記憶する。なお、次式(33)における演算子"#"は、上述したように、log−sum演算を示すものであり、入力"0"でステートm'からステートmへと遷移するときにおける対数尤度と、入力"1"でステートm''からステートmへと遷移するときにおける対数尤度とのlog−sum演算を示すものである。より具体的には、Iβ算出・記憶回路54は、定数sgnが"+1"の場合には、次式(34)に示す演算を行うことにより、一方、定数sgnが"−1"の場合には、次式(35)に示す演算を行うことにより、各時刻tにおける対数尤度Iβtを算出する。すなわち、Iβ算出・記憶回路54は、対数尤度Iγに基づいて、受信値yt毎に、打ち切りステートから時系列の逆順に各ステートに至る確率βを対数表記した対数尤度Iβ又は確率βを対数表記して正負識別符号を反転した対数尤度Iβを算出する。このとき、Iβ算出・記憶回路54は、量子化刻み幅Δ=dで対数尤度Iβを算出する。そして、Iβ算出・記憶回路54は、記憶した対数尤度Iβtのうち、1系統の対数尤度Iβtを軟出力算出回路55に供給する。このとき、Iβ算出・記憶回路54は、軟出力算出回路55における処理に適した順序で対数尤度Iβtを供給する。なお、以下の説明では、Iβ算出・記憶回路54から軟出力算出回路55に供給される対数尤度IβtをIβ(λ)と表すものとする。
【0171】
【数33】
【0172】
【数34】
【0173】
【数35】
【0174】
軟出力算出回路55は、Iγ算出・記憶回路52から供給された量子化刻み幅Δが"d"とされる対数尤度Iγ(λ)と、Iα算出・記憶回路53から供給された対数尤度Iα(λ)と、Iβ算出・記憶回路54から供給された対数尤度Iβ(λ)とを用いて、次式(36)に示す演算を行い、各時刻tにおける対数軟出力Iλtを算出して記憶する。このとき、軟出力算出回路55は、必要に応じて、情報ビットに対する事後確率情報に対応する対数軟出力IλItと、符号ビットに対する事後確率情報に対応する対数軟出力IλCtとを算出して記憶する。そして、軟出力算出回路55は、記憶した対数軟出力IλIt及び/又は対数軟出力IλCtを時系列順に並べ替えた後、外部情報算出回路56又は選択回路57に供給する。なお、次式(36)における演算子"#Σ"は、上述した演算子"#"で表されるlog−sum演算の累積加算演算を示すものである。
【0175】
【数36】
【0176】
なお、軟出力算出回路55は、出力する対数軟出力Iλの量子化刻み幅Δを"2nd"として対数軟出力Iλを出力する。これについては、後に詳述する。
【0177】
外部情報算出回路56は、軟出力算出回路55から供給された量子化刻み幅Δが"2nd"とされる対数軟出力Iλtと、外部から入力された量子化刻み幅Δが"2nd"とされる事前確率情報APPtとを用いて、量子化刻み幅Δが"2nd"とされる外部情報EXtを算出する。具体的には、外部情報算出回路56は、軟出力算出回路55から供給された対数軟出力Iλtと、外部から入力された事前確率情報APPtとの差分値を外部情報EXtとして算出する。このとき、外部情報算出回路56は、必要に応じて、情報ビットに対する外部情報EXItと、符号ビットに対する外部情報EXCtとを算出する。外部情報算出回路56は、算出した外部情報EXtを選択回路57に供給する。
【0178】
選択回路57は、軟出力算出回路55から供給された対数軟出力Iλtと、外部情報算出回路56から供給された外部情報EXtとを択一的に選択する。すなわち、選択回路57は、当該軟出力復号回路50が繰り返し復号における最終段として設けられるものである場合には、最終的な復号結果としての対数軟出力Iλtを選択して出力データODtとして外部に出力する一方、当該軟出力復号回路50が繰り返し復号における最終段以外として設けられるものである場合には、外部情報EXtを選択して次段の軟出力復号回路における事前確率情報を示す出力データODtとして外部に出力する。
【0179】
このような軟出力復号回路50は、軟入力の受信値ytを入力すると、Iγ算出・記憶回路52により、受信値ytを受信する毎に、対数尤度Iγt(m',m)を算出し、Iα算出・記憶回路53により、対数尤度Iαt(m)を算出した後、全ての受信値ytを受信すると、Iβ算出・記憶回路54により、全ての時刻tにおける各ステートmについて、対数尤度Iβt(m)を算出する。そして、軟出力復号回路50は、軟出力算出回路55により、算出した対数尤度Iαt,Iβt及びIγtを用いて、各時刻tにおける対数軟出力Iλtを算出し、この対数軟出力Iλtを選択回路57を介して外部に出力するか、若しくは、外部情報算出回路56に供給する。また、軟出力復号回路50は、外部情報算出回路56により、各時刻tにおける外部情報EXtを算出し、選択回路57を介して外部に出力する。このように、軟出力復号回路50は、Log−BCJRアルゴリズムを適用した軟出力復号を行うことができる。なお、軟出力復号回路50としては、繰り返し復号に適用しない場合には、外部情報算出回路56及び選択回路57を設ける必要はなく、符号ビットに対する事前確率情報に対応する対数軟出力IλCtを算出する必要もない。
【0180】
さて、このような軟出力復号回路50は、上述したように、回路規模を増大させることなく、且つ性能劣化を生じさせることなく、内部での演算の際に必要とされる量子化刻み幅を、この量子化刻み幅よりも粗い外部とのデータの入出力の際に必要とされる量子化刻み幅へと変更するために、対数軟出力Iλt又外部情報EXtの出力の際に量子化刻み幅を変更するのではなく、軟出力算出回路55における最終的な尤度の算出の際に行う上述したlog−sum演算の演算結果の出力の段階で量子化刻み幅を変更する。
【0181】
具体的には、軟出力算出回路55における最終的な尤度の算出の際に行うlog−sum演算の演算結果の出力の段階で量子化刻み幅を変更することができる回路は、図9に示すように構成される。以下では、説明の便宜上、変数をx,yとした次式(37)に示すlog−sum演算を行うものとする。すなわち、変数xは、最も尤度の高いパスである最尤パスに対応するデータの値を示すものであり、変数yは、2番目に尤度の高いパスである準最尤パスに対応するデータの値を示すものである。
【0182】
【数37】
【0183】
すなわち、この演算手段であるlog−sum演算回路100は、同図に示すように、入力されたxで表されるデータD101とyで表されるデータD102との差分をとる差分器101と、データD101の値xとデータD102の値yとの大小関係を比較する比較回路102と、差分器101によって得られた差分値x−yを示すデータD103をクリップ(clip)して絶対値|x−y|を算出する絶対値算出手段であるクリップ及び絶対値算出回路103と、比較回路102による比較結果を示す比較結果情報D105に基づいてデータD101,D102のうち値が大きいものを選択する選択手段である選択回路104と、絶対値算出回路103によって算出された絶対値|x−y|を示すデータD104と後述する選択回路105から供給された関数値max(x,y)の下位nビットの値rを示すデータD107とを用いて補正項を算出する補正項算出手段である補正項算出回路105と、選択回路104によって選択された関数値max(x,y)のうち下位nビットの値rを差し引いた上位ビットの値max(x,y)−rを示すデータD106と補正項算出回路105によって算出された補正項log(1+e−|x−y|)+rを示すデータD108とを加算する加算手段である加算器106とを有する。
【0184】
差分器101は、量子化刻み幅Δが"d"とされて入力されたxで表されるデータD101とyで表されるデータD102との差分をとり、得られた量子化刻み幅Δが"d"とされる差分値x−yを示すデータD103をクリップ及び絶対値算出回路103に供給する。
【0185】
比較回路102は、量子化刻み幅Δが"d"とされて入力されたxで表されるデータD101とyで表されるデータD102との大小関係を比較し、比較結果情報D105を選択回路104に供給する。
【0186】
クリップ及び絶対値算出回路103は、差分器101によって得られた量子化刻み幅Δが"d"とされるデータD103の振幅を調整し且つ所定のダイナミックレンジにクリップするとともに、絶対値|x−y|を算出する。クリップ及び絶対値算出回路103は、算出した量子化刻み幅Δが"d"とされる絶対値|x−y|を示すデータD104を補正項算出回路105に供給する。
【0187】
選択回路104は、比較回路102から供給された比較結果情報D105に基づいて、量子化刻み幅Δが"d"とされて入力されたxで表されるデータD101とyで表されるデータD102とのうち、値が大きいもの、すなわち、確率が高いものを選択する。選択回路104は、選択した関数値max(x,y)のうち、量子化刻み幅Δが"2nd"以下の下位nビットの値rを差し引いた残りの上位ビットの値max(x,y)−rを示すデータD106を量子化刻み幅Δを"2nd"として加算器106に供給するとともに、下位nビットの値rを示すデータD107を量子化刻み幅Δを"d"として補正項算出回路105に供給する。
【0188】
補正項算出回路105は、クリップ及び絶対値算出回路103によって得られた量子化刻み幅Δが"d"とされるデータD104と、選択回路105から供給された量子化刻み幅Δが"d"とされるデータD107とを用いて、上式(37)における右辺第2項の値log(1+e−|x−y|)で表される真の補正項に対して下位nビットの値rを加算した値log(1+e−|x−y|)+rを補正項として算出する。具体的には、補正項算出回路105は、図10に示すように、入力される変数|x−y|と、真の補正項log(1+e−|x−y|)に対して下位nビットの値rを加算した値とを対応付けた2n通りのパターンを記憶したルックアップテーブルを参照し、このルックアップテーブルから下位nビットの値rに応じた出力を取り出すことにより、補正項を算出する。補正項算出回路105は、算出した補正項log(1+e−|x−y|)+rを示すデータD108を量子化刻み幅Δを"2nd"として加算器106に供給する。なお、同図におけるq[x]は、xの値を量子化刻み幅Δ=2ndに再量子化したものを示すものである。
【0189】
加算器106は、選択回路104から供給された量子化刻み幅Δが"2nd"とされるデータD106と補正項算出回路105によって算出された量子化刻み幅Δが"2nd"とされるデータD108とを加算し、log−sum演算の結果q[max(x,y)−r]+q[log(1+e−|x−y|)+r]=q[max(x,y)+(log(1+e−|x−y|))=q[log(ex+ey)]を示すデータD109を出力する。
【0190】
このようなlog−sum演算回路100は、軟出力復号回路50の内部での演算の際に必要とされる量子化刻み幅Δが"d"とされるデータD101,D102を入力すると、図11に示すように、絶対値|x−y|を示す量子化刻み幅Δが"d"とされるデータD104と、選択回路104によって選択された関数値max(x,y)のうち、量子化刻み幅Δが"2nd"以下の下位nビットの値rを示す量子化刻み幅Δが"d"とされるデータD107とを補正項算出回路105に供給する。そして、log−sum演算回路100は、真の補正項log(1+e−|x−y|)に対して下位nビットの値rを加算した値log(1+e−|x−y|)+rを補正項として算出し、この補正項log(1+e−|x−y|)+rを量子化刻み幅Δを"2nd"に再量子化して値q[log(1+e−|x−y|)+r]として加算器106に供給する。したがって、log−sum演算回路100は、最終的に加算器106から出力するデータD109について、量子化刻み幅Δ=2ndで出力する。
【0191】
このようにすることにより、log−sum演算回路100は、最適な量子化が施された値を出力することができる。例えば、内部での演算の際に必要とされる量子化刻み幅Δを"d=0.5"とし、外部とのデータの入出力の際に必要とされる量子化刻み幅Δを"2nd=1.0"とした場合に、補正項算出回路105は、真の補正項として"0.3"を算出し、且つ下位nビットrが"0.0"であった場合には、"0.3+0.0=0.3"という値を量子化刻み幅Δが"2nd=1.0"で量子化し、"0.0"として出力することになる。すなわち、この場合には、log−sum演算回路100は、補正項として"0.0"が反映された結果を加算器106から出力することになる。
【0192】
また、log−sum演算回路としては、図12に示すように構成することもできる。すなわち、上述したlog−sum演算回路100は、関数値max(x,y)の下位nビットの値、すなわち、端数を真の補正項に対して加算した補正項を算出するものであったが、同図に示す演算手段であるlog−sum演算回路100'は、関数値max(x,y)の下位nビットの値が予め既知である場合に、この値を差し引いた値を補正項として算出するものである。
【0193】
すなわち、このlog−sum演算回路100'は、同図に示すように、log−sum演算回路100における上述した差分器101、比較回路102、クリップ及び絶対値算出回路103の他、選択回路104'と、補正項算出回路105'と、加算器106'とを有する。
【0194】
選択回路104'は、上述した選択回路104と同様に、比較回路102から供給された比較結果情報D105に基づいて、量子化刻み幅Δが"d"とされて入力されたxで表されるデータD101とyで表されるデータD102とのうち、値が大きいもの、すなわち、確率が高いものを選択する。選択回路104'は、選択した関数値max(x,y)を示すデータD111を量子化刻み幅Δを"d"として加算器106'に供給するとともに、関数値max(x,y)のうち、量子化刻み幅Δが"2nd"以下の下位nビットの値rを示すデータD112を量子化刻み幅Δを"d"として補正項算出回路105'に供給する。
【0195】
補正項算出回路105'は、クリップ及び絶対値算出回路103によって得られた量子化刻み幅Δが"d"とされるデータD104と、選択回路105'から供給された量子化刻み幅Δが"d"とされるデータD112とを用いて、上式(37)における右辺第2項の値log(1+e−|x−y|)で表される真の補正項に対して下位nビットの値rを加算した値log(1+e−|x−y|)+rを量子化刻み幅Δ=2ndで量子化した値q[log(1+e−|x−y|)+r]から、下位nビットの値rを差し引いた値q[log(1+e−|x−y|)+r]−rを、補正項として算出する。具体的には、補正項算出回路105'は、図13に示すように、入力される変数|x−y|と、真の補正項log(1+e−|x−y|)に対して下位nビットの値rを加算した値を量子化刻み幅Δ=2ndで量子化した値から、下位nビットの値rを差し引いた値とを対応付けた2n通りのパターンを記憶したルックアップテーブルを参照し、このルックアップテーブルから下位nビットの値rに応じた出力を取り出すことにより、補正項を算出する。補正項算出回路105'は、算出した補正項q[log(1+e− |x−y|)+r]−rを示すデータD113を量子化刻み幅Δを"d"として加算器106'に供給する。なお、同図におけるq[x]は、xの値を量子化刻み幅Δ=2ndに再量子化したものを示すものである。
【0196】
加算器106'は、選択回路104'から供給された量子化刻み幅Δが"d"とされるデータD111と補正項算出回路105'によって算出された量子化刻み幅Δが"d"とされるデータD113とを加算し、この値を量子化刻み幅Δを"2nd"とすることにより、log−sum演算の結果max(x,y)+q[log(1+e−|x−y|)+r]−r=q[max(x,y)+(log(1+e−|x−y|))=q[log(ex+ey)]を示すデータD109を出力する。
【0197】
このようなlog−sum演算回路100'は、軟出力復号回路50の内部での演算の際に必要とされる量子化刻み幅Δが"d"とされるデータD101,D102を入力すると、図14に示すように、絶対値|x−y|を示す量子化刻み幅Δが"d"とされるデータD104と、選択回路104'によって選択された関数値max(x,y)のうち、下位nビットの値rを示す量子化刻み幅Δが"d"とされるデータD112とを補正項算出回路105'に供給する。また、log−sum演算回路100'は、真の補正項log(1+e−|x−y|)に対して下位nビットの値rを加算した値log(1+e−|x−y|)+rを量子化刻み幅Δ=2ndで量子化した値q[log(1+e−|x−y|)+r]から、下位nビットの値rを差し引いた値q[log(1+e−|x−y|)+r]−rを、補正項として算出し、この補正項q[log(1+e−|x−y|)+r]−rを量子化刻み幅Δを"d"で加算器106'に供給する。そして、log−sum演算回路100'は、最終的に加算器106'から出力するデータD109について、量子化刻み幅Δ=2nd以下のビットが全て零値となる値として出力する。
【0198】
このようにすることにより、log−sum演算回路100'は、log−sum演算回路100と同様に、下位ビットを切り捨てるのみで量子化刻み幅Δが"2nd"とすることができ、最適な量子化が施された値を出力することができる。例えば、内部での演算の際に必要とされる量子化刻み幅Δを"d=0.5"とし、外部とのデータの入出力の際に必要とされる量子化刻み幅Δを"2nd=1.0"とした場合に、補正項算出回路105'は、下位nビットrが"0.3"であり、且つ量子化刻み幅Δを"2nd=1.0"として算出した値q[log(1+e−|x−y|)+r]が"0.0"であった場合には、"0.0−0.3=−0.3"という値を量子化刻み幅Δが"d=0.5"で加算器106'に供給することになる。したがって、log−sum演算回路100'は、この値"−0.3"を加算器106'によって量子化刻み幅Δを"2nd=1.0"とすることから、補正項として"0.0"が反映された結果を加算器106'から出力することになる。
【0199】
このように、log−sum演算回路100又はlog−sum演算回路100'は、それぞれ、最適な量子化が施された値を出力することができる。
【0200】
このようなlog−sum演算回路100又はlog−sum演算回路100'を上述した軟出力算出回路55に適用すると、図15に示すようになる。この軟出力算出回路55は、トレリス上の各枝の入力に応じたlog−sum演算の累積加算演算を行い、入力が"0"の枝に応じたlog−sum演算の累積加算演算結果と、入力が"1"の枝に応じたlog−sum演算の累積加算演算結果との差分をとるものであるが、これを実現するために、各ステートに到達した複数のパスに対応する複数のデータの中から選択した2つのパスに対応するデータの組み合わせの全てについて尤度の大小を比較することにより、複数のデータの中から、最も尤度の高いパスである最尤パスに対応するデータを選択するものである。より具体的には、軟出力算出回路55は、複数のデータについて、いわば勝ち抜き戦に喩えられる動作を行うことにより、各データの値の大小を比較して最尤パスに対応するデータを選択し、log−sum演算の累積加算演算を用いた対数軟出力Iλの算出を実現する。
【0201】
具体的には、軟出力算出回路55は、同図に示すように、7つのlog−sum演算回路1511,1512,1513,1514,1515,1516,161を有する。なお、ここでは、説明の便宜上、各ステートに8本のパスが到達する場合について説明する。
【0202】
log−sum演算回路1511,1512,1513,1514,1515,1516としては、それぞれ、上述したlog−sum演算回路100又はlog−sum演算回路100'とは異なり、従来のものが適用される。すなわち、log−sum演算回路1511,1512,1513,1514,1515,1516は、それぞれ、内部での演算の際に必要とされる量子化刻み幅Δが"d"とされるデータを入力し、最終的に図示しない加算器から出力するデータについても、同じ量子化刻み幅Δ=dで出力する。特に、log−sum演算回路1511,1512,1513,1514,1515,1516においては、それぞれ、図示しない補正項算出回路の入出力についても、量子化刻み幅Δが"d"とされるデータが入力され、量子化刻み幅Δが"d"とされるデータが出力される。
【0203】
一方、log−sum演算回路161は、上述したlog−sum演算回路100又はlog−sum演算回路100'として構成されるものである。すなわち、log−sum演算回路161は、内部での演算の際に必要とされる量子化刻み幅Δが"d"とされるデータを入力し、最終的に上述した加算器106又は加算器106'から出力するデータについては、外部とのデータの入出力の際に必要とされる量子化刻み幅Δ=2ndで出力する。
【0204】
このような軟出力算出回路55は、1回戦として、4個のlog−sum演算回路1511,1512,1513,1514のそれぞれにより、量子化刻み幅Δが"d"とされる選択された8系統のデータD151,D152,D153,D154,D155,D156,D157,D158を用いたlog−sum演算を行う。また、軟出力算出回路55は、2回戦として、2つのlog−sum演算回路1515,1516のそれぞれにより、4個のlog−sum演算回路1511,1512,1513,1514のそれぞれから出力された量子化刻み幅Δが"d"とされる4系統のデータD159,D160,D161,D162を用いたlog−sum演算を行う。そして、軟出力算出回路55は、log−sum演算回路161により、2つのlog−sum演算回路1515,1516のそれぞれから出力された量子化刻み幅Δが"d"とされる2系統のデータD163,D164を用いたlog−sum演算を行い、最終的に量子化刻み幅Δが"2nd"とされる対数軟出力Iλtを示すデータD165として出力する。
【0205】
軟出力算出回路55は、このような処理を、入力が"0"又は"1"の場合のそれぞれについて行う。
【0206】
このように、軟出力算出回路55は、内部での演算の際に必要とされる量子化刻み幅Δが"d"とされるデータD151,D152,D153,D154,D155,D156,D157,D158を入力し、最終的にlog−sum演算回路161から出力するデータD165については、外部とのデータの入出力の際に必要とされる量子化刻み幅Δ=2ndで出力する。
【0207】
このような軟出力算出回路55によって算出された対数軟出力Iλt及び/又はこの対数軟出力Iλtに基づいて上述した外部情報算出回路56によって算出される外部情報EXtは、図16に要部を示す構成を用いて軟出力復号回路50の外部に出力される。
【0208】
すなわち、軟出力復号回路50においては、同図に示すように、軟出力算出回路55によって算出された量子化刻み幅Δが"2nd"とされる対数軟出力Iλtを示すデータD171と事前確率情報APPtを示すデータD172とが、外部情報算出回路56に入力される。
【0209】
外部情報算出回路56は、差分器171を有するものとして構成される。軟出力復号回路50は、この差分器171によって入力された対数軟出力Iλtを示すデータD171と事前確率情報APPtを示すデータD172との差分をとり、得られた量子化刻み幅Δが"2nd"とされる差分値からなる外部情報EXtを示すデータD173を上述した選択回路57に供給する。
【0210】
そして、軟出力復号回路50は、選択回路57によって軟出力算出回路55から供給された量子化刻み幅Δが"2nd"とされる対数軟出力Iλtと、外部情報算出回路56から供給された量子化刻み幅Δが"2nd"とされる外部情報EXtとを択一的に選択し、量子化刻み幅Δが"2nd"とされる出力データODtを示すデータD174として出力する。
【0211】
このように、軟出力復号回路50は、内部での演算の際に必要とされる量子化刻み幅Δ=dを、この量子化刻み幅よりも粗い外部とのデータの入出力の際に必要とされる量子化刻み幅Δ=2ndへと変更するために、対数軟出力Iλt及び/又は外部情報EXtを出力する直前で、これらの対数軟出力Iλt及び/又は外部情報EXtを再量子化するのではなく、軟出力算出回路55における最終的な尤度の算出の際に行うlog−sum演算の演算結果の出力の段階で量子化刻み幅を変更する。
【0212】
例えば、内部での演算の際に必要とされる量子化刻み幅Δを"d=0.5"とし、外部とのデータの入出力の際に必要とされる量子化刻み幅Δを"2nd=1.0"とした場合に、上述した軟出力算出回路55における最終段のlog−sum演算回路161によって対数軟出力Iλtとして"0.3"が算出された場合を考えると、"0.3"という値を有する対数軟出力Iλtは、最終的に"0.0"という値で出力されることになる。
【0213】
このように、軟出力復号回路50は、従来のように、既に量子化されているものを再度量子化して誤った値を出力することがなく、最適な量子化を行うことができる。
【0214】
以上説明したように、データ送受信システムにおいては、復号装置3は、既に量子化されている対数軟出力Iλt及び/又は外部情報EXtを出力する際に、量子化刻み幅を粗くして再度量子化するのではなく、軟出力算出回路55における最終的な尤度の算出の際に行うlog−sum演算の演算結果の出力の段階で量子化刻み幅を変更することにより、細かい量子化刻み幅で対数軟出力Iλt及び/又は外部情報EXtを出力することによる回路規模の増大化を招来することなく、且つ、性能を劣化させない最適な量子化を行うことができる。
【0215】
したがって、データ送受信システムは、回路規模の削減を図りつつ復号性能の向上を図ることができ、優れた利便を提供することができるものである。
【0216】
なお、本発明は、上述した実施の形態に限定されるものではなく、例えば、符号化装置としては、畳み込み演算を行うものでなくてもよく、また、いかなる符号化率の符号化を行うものであってもよい。
【0217】
また、上述した実施の形態では、軟出力復号回路55のみがLSIとして構成されるものとして説明したが、本発明は、少なくとも軟出力復号回路55がLSIとして構成されていればよく、インターリーバやデインターリーバに対して入出力されるデータの量子化刻み幅Δが"2nd"となるものであれば、これらのインターリーバやデインターリーバを含めてLSIとして構成するものであってもよい。
【0218】
さらに、上述した実施の形態では、符号化装置1及び復号装置3をデータ送受信システムにおける送信装置及び受信装置に適用して説明したが、本発明は、例えばフロッピー(登録商標)ディスク、CD−ROM又はMO(Magneto Optical)といった磁気、光又は光磁気ディスク等の記録媒体に対する記録及び/又は再生を行う記録及び/又は再生装置に適用することもできる。この場合、記録装置に備えられる符号化装置によって符号化されたデータは、無記憶通信路に等価とされる記録媒体に記録され、再生装置に備えられる復号装置によって復号されて再生される。
【0219】
このように、本発明は、その趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
【0220】
【発明の効果】
以上詳細に説明したように、本発明にかかる軟出力復号装置は、軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、この対数尤度を用いて軟出力復号を行う軟出力復号装置であって、受信値と、当該軟出力復号装置内部での演算の際に必要とされる第1の量子化刻み幅よりも粗い外部とのデータの入出力の際に必要とされる第2の量子化刻み幅とされる事前確率情報とを入力し、対数尤度を与えるために追加される補正項であって対数尤度の差分の絶対値の関数で表される補正項を追加することで確率の和演算を変形し、当該和演算の正確な対数値を求める所定演算を少なくとも行うことによって軟出力復号を行い、各時刻における軟出力を対数表記した第2の量子化刻み幅とされる対数軟出力を生成する軟出力復号手段を備え、この軟出力復号手段は、第1の量子化刻み幅とされる対数尤度を用いた対数軟出力の算出の際に行う所定演算の演算結果を第2の量子化刻み幅に変更して出力する。
【0221】
したがって、本発明にかかる軟出力復号装置は、第1の量子化刻み幅とされる対数尤度を用いた軟出力復号手段による対数軟出力の算出の際に行う所定演算の演算結果を第2の量子化刻み幅に変更して出力することにより、既に量子化されている対数軟出力を出力する際に、量子化刻み幅を粗くして再度量子化する必要がなく、細かい第1の量子化刻み幅で対数軟出力を出力することによる回路規模の増大化を招来することなく、且つ、性能を劣化させない最適な量子化を行うことができる。
【0222】
また、本発明にかかる軟出力復号方法は、軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、この対数尤度を用いて軟出力復号を行う軟出力復号方法であって、受信値と、軟出力復号を行う軟出力復号装置内部での演算の際に必要とされる第1の量子化刻み幅よりも粗い外部とのデータの入出力の際に必要とされる第2の量子化刻み幅とされる事前確率情報とを入力し、対数尤度を与えるために追加される補正項であって対数尤度の差分の絶対値の関数で表される補正項を追加することで確率の和演算を変形し、当該和演算の正確な対数値を求める所定演算を少なくとも行うことによって軟出力復号を行い、各時刻における軟出力を対数表記した第2の量子化刻み幅とされる対数軟出力を生成する軟出力復号工程を備え、この軟出力復号工程では、第1の量子化刻み幅とされる対数尤度を用いた対数軟出力の算出の際に行う所定演算の演算結果が第2の量子化刻み幅に変更されて出力される。
【0223】
したがって、本発明にかかる軟出力復号方法は、第1の量子化刻み幅とされる対数尤度を用いた対数軟出力の算出の際に行う所定演算の演算結果を第2の量子化刻み幅に変更して出力することにより、既に量子化されている対数軟出力を出力する際に、量子化刻み幅を粗くして再度量子化する必要がなく、細かい第1の量子化刻み幅で対数軟出力を出力することによる回路規模の増大化を招来することなく、且つ、性能を劣化させない最適な量子化を行うことが可能となる。
【0224】
さらに、本発明にかかる復号装置は、軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、この対数尤度を用いて、複数の要素符号をインターリーブ処理を介して並列又は縦列に連接して生成された符号を繰り返し復号する復号装置であって、複数の要素符号に対応して設けられ、受信値と、当該軟出力復号装置内部での演算の際に必要とされる第1の量子化刻み幅よりも粗い外部とのデータの入出力の際に必要とされる第2の量子化刻み幅とされる事前確率情報とを入力し、対数尤度を与えるために追加される補正項であって対数尤度の差分の絶対値の関数で表される補正項を追加することで確率の和演算を変形し、当該和演算の正確な対数値を求める所定演算を少なくとも行うことによって軟出力復号を行い、各時刻における軟出力を対数表記した第2の量子化刻み幅とされる対数軟出力及び/又は外部情報を生成する複数の軟出力復号手段と、この軟出力復号手段によって生成された外部情報を入力し、符号化におけるインターリーブ処理と同一の置換位置情報に基づいて、外部情報の順序を所定のアドレスにしたがって置換して並べ替えるインターリーブ処理、又は符号化におけるインターリーブ処理によって並べ替えられた情報の配列を元に戻すように、外部情報の順序を所定のアドレスにしたがって置換して並べ替えるデインターリーブ処理を行うインターリーブ手段とを備え、軟出力復号手段は、第1の量子化刻み幅とされる対数尤度を用いた対数軟出力の算出の際に行う所定演算の演算結果を第2の量子化刻み幅に変更して出力する。
【0225】
したがって、本発明にかかる復号装置は、繰り返し復号を行う際に、第1の量子化刻み幅とされる対数尤度を用いた軟出力復号手段による対数軟出力の算出の際に行う所定演算の演算結果を第2の量子化刻み幅に変更して出力することにより、既に量子化されている対数軟出力及び/又は外部情報を出力する際に、量子化刻み幅を粗くして再度量子化する必要がなく、細かい第1の量子化刻み幅で対数軟出力及び/又は外部情報を出力することによる回路規模の増大化を招来することなく、且つ、性能を劣化させない最適な量子化を行うことができる。
【0226】
さらにまた、本発明にかかる復号方法は、軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、この対数尤度を用いて、複数の要素符号をインターリーブ処理を介して並列又は縦列に連接して生成された符号を繰り返し復号する復号方法であって、複数の要素符号に対応して設けられ、受信値と、軟出力復号を行う軟出力復号装置内部での演算の際に必要とされる第1の量子化刻み幅よりも粗い外部とのデータの入出力の際に必要とされる第2の量子化刻み幅とされる事前確率情報とを入力し、対数尤度を与えるために追加される補正項であって対数尤度の差分の絶対値の関数で表される補正項を追加することで確率の和演算を変形し、当該和演算の正確な対数値を求める所定演算を少なくとも行うことによって軟出力復号を行い、各時刻における軟出力を対数表記した第2の量子化刻み幅とされる対数軟出力及び/又は外部情報を生成する複数の軟出力復号工程と、この軟出力復号工程にて生成された外部情報を入力し、符号化におけるインターリーブ処理と同一の置換位置情報に基づいて、外部情報の順序を所定のアドレスにしたがって置換して並べ替えるインターリーブ処理、又は符号化におけるインターリーブ処理によって並べ替えられた情報の配列を元に戻すように、外部情報の順序を所定のアドレスにしたがって置換して並べ替えるデインターリーブ処理を行うインターリーブ工程とを備え、軟出力復号工程では、第1の量子化刻み幅とされる対数尤度を用いた対数軟出力の算出の際に行う所定演算の演算結果が第2の量子化刻み幅に変更されて出力される。
【0227】
したがって、本発明にかかる復号方法は、繰り返し復号を行う際に、第1の量子化刻み幅とされる対数尤度を用いた対数軟出力の算出の際に行う所定演算の演算結果を第2の量子化刻み幅に変更して出力することにより、既に量子化されている対数軟出力及び/又は外部情報を出力する際に、量子化刻み幅を粗くして再度量子化する必要がなく、細かい第1の量子化刻み幅で対数軟出力及び/又は外部情報を出力することによる回路規模の増大化を招来することなく、且つ、性能を劣化させない最適な量子化を行うことが可能となる。
【図面の簡単な説明】
【図1】本発明の実施の形態として示すデータ送受信システムを適用する通信モデルの構成を説明するブロック図である。
【図2】同データ送受信システムにおける符号化装置の一例の構成を説明するブロック図であって、PCCCによる符号化を行う符号化装置の構成を説明するブロック図である。
【図3】同データ送受信システムにおける復号装置の一例の構成を説明するブロック図であって、図2に示す符号化装置による符号の復号を行う復号装置の構成を説明するブロック図である。
【図4】同データ送受信システムにおける符号化装置の一例の構成を説明するブロック図であって、SCCCによる符号化を行う符号化装置の構成を説明するブロック図である。
【図5】同データ送受信システムにおける復号装置の一例の構成を説明するブロック図であって、図4に示す符号化装置による符号の復号を行う復号装置の構成を説明するブロック図である。
【図6】同符号化装置における畳み込み符号化器の一例の構成を説明するブロック図である。
【図7】図6に示す畳み込み符号化器におけるトレリスを説明する図である。
【図8】同復号装置における軟出力復号回路の一例の構成を説明するブロック図であって、図6に示す畳み込み符号化器に対応して設けられる軟出力復号回路の構成を説明するブロック図である。
【図9】同軟出力復号回路が有するlog−sum演算回路の構成を説明するブロック図である。
【図10】図9に示すlog−sum演算回路が有する補正項算出回路によって算出される補正項を説明する図である。
【図11】同補正項算出回路の動作を説明するための図であって、同補正項算出回路に対して入出力されるデータを説明するための図である。
【図12】同軟出力復号回路が有する他のlog−sum演算回路の構成を説明するブロック図である。
【図13】図12に示すlog−sum演算回路が有する補正項算出回路によって算出される補正項を説明する図である。
【図14】同補正項算出回路の動作を説明するための図であって、同補正項算出回路に対して入出力されるデータを説明するための図である。
【図15】同軟出力復号回路が有する軟出力算出回路の構成を説明するブロック図である。
【図16】同軟出力復号回路の要部構成を説明するブロック図であって、外部情報算出回路と選択回路との構成を説明するブロック図である。
【図17】通信モデルの構成を説明するブロック図である。
【図18】従来の符号化装置におけるトレリスを説明する図であって、確率α,β及びγの内容を説明するための図である。
【図19】従来の復号装置において、BCJRアルゴリズムを適用して軟出力復号を行う際の一連の工程を説明するフローチャートである。
【図20】従来の復号装置において、Max−Log−BCJRアルゴリズムを適用して軟出力復号を行う際の一連の工程を説明するフローチャートである。
【図21】Log−BCJRアルゴリズムにおいて算出される補正項を説明する図である。
【図22】Log−BCJRアルゴリズムに基づくMAP復号を行う復号器におけるlog−sum演算を行うlog−sum演算回路の構成を説明するブロック図である。
【図23】同log−sum演算回路が有する補正項算出回路の動作を説明するための図であって、同補正項算出回路に対して入出力されるデータを説明するための図である。
【図24】同復号器が有する軟出力算出回路の構成を説明するブロック図である。
【図25】同復号器の要部構成を説明するブロック図であって、外部情報算出回路と再量子化回路と選択回路との構成を説明するブロック図である。
【符号の説明】
1,1',1'' 符号化装置、 3,3',3'' 復号装置、 11 遅延器、12,14,31,33,40 畳み込み符号化器、 13,16,32,37 インターリーバ、 15,17,34,36,50 軟出力復号回路、 18,20,35, デインターリーバ、 51 コントローラ、 52 Iγ算出・記憶回路、 53 Iα算出・記憶回路、 54 Iβ算出・記憶回路、 55 軟出力算出回路、 56 外部情報算出回路、 57,104,104'選択回路、 100,100',1511,1512,1513,1514,1515,1516,161 log−sum演算回路、 101,171 差分器、 102 比較回路、 103 クリップ及び絶対値算出回路、 105,105' 補正項算出回路、 106,106' 加算器
Claims (11)
- 軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、上記対数尤度を用いて軟出力復号を行う軟出力復号装置であって、
上記受信値と、当該軟出力復号装置内部での演算の際に必要とされる第1の量子化刻み幅よりも粗い外部とのデータの入出力の際に必要とされる第2の量子化刻み幅とされる事前確率情報とを入力し、上記対数尤度を与えるために追加される補正項であって対数尤度の差分の絶対値の関数で表される補正項を追加することで上記確率の和演算を変形し、当該和演算の正確な対数値を求める所定演算を少なくとも行うことによって軟出力復号を行い、各時刻における軟出力を対数表記した上記第2の量子化刻み幅とされる対数軟出力を生成する軟出力復号手段を備え、
上記軟出力復号手段は、上記第1の量子化刻み幅とされる上記対数尤度を用いた上記対数軟出力の算出の際に行う上記所定演算の演算結果を上記第2の量子化刻み幅に変更して出力すること
を特徴とする軟出力復号装置。 - 上記軟出力復号手段は、上記所定演算を複数回行うことによって上記対数軟出力を算出するものであり、最終的に上記対数軟出力を出力するための上記所定演算の演算結果のみを上記第2の量子化刻み幅に変更して出力すること
を特徴とする請求項1記載の軟出力復号装置。 - 上記軟出力復号手段は、上記所定演算を行う演算手段を有すること
を特徴とする請求項1記載の軟出力復号装置。 - 上記演算手段は、
各ステートに到達した複数のパスに対応する複数のデータの中から選択した2つのパスに対応するデータの組み合わせの全てについて尤度の大小を比較して、複数のデータの中から、最も尤度の高いパスである最尤パスに対応するデータを選択する選択手段と、
上記補正項を算出する補正項算出手段と、
上記選択手段によって選択されたデータと上記補正項算出手段によって算出された上記補正項とを加算する加算手段とを有し、
上記補正項算出手段は、上記選択手段によって選択されたデータのうち、上記第2の量子化刻み幅以下の下位ビットの値を示す上記第1の量子化刻み幅とされるデータを真の補正項に対して加算した値を上記補正項として算出し、
上記加算手段は、上記選択手段によって選択されたデータのうち、上記下位ビットの値を差し引いた残りの上位ビットの値を示す上記第2の量子化刻み幅とされるデータと、上記補正項算出手段によって算出された上記第2の量子化刻み幅とされる上記補正項とを加算し、上記第2の量子化刻み幅とされる上記所定演算の演算結果を出力すること
を特徴とする請求項3記載の軟出力復号装置。 - 上記演算手段は、
各ステートに到達した複数のパスに対応する複数のデータの中から選択した2つのパスに対応するデータの組み合わせの全てについて尤度の大小を比較して、複数のデータの中から、最も尤度の高いパスである最尤パスに対応するデータを選択する選択手段と、
上記補正項を算出する補正項算出手段と、
上記選択手段によって選択されたデータと上記補正項算出手段によって算出された上記補正項とを加算する加算手段とを有し、
上記補正項算出手段は、上記選択手段によって選択されたデータのうち、上記第2の量子化刻み幅以下の下位ビットの値を示す上記第1の量子化刻み幅とされるデータを真の補正項に対して加算した値を上記第2の量子化刻み幅で量子化した値から、上記下位ビットの値を差し引いた値を、上記補正項として算出し、
上記加算手段は、上記選択手段によって選択された上記第1の量子化刻み幅とされるデータと、上記補正項算出手段によって算出された上記第1の量子化刻み幅とされる上記補正項とを加算し、上記第2の量子化刻み幅以下のビットが全て零値となる上記所定演算の演算結果を出力すること
を特徴とする請求項3記載の軟出力復号装置。 - 上記軟出力復号手段は、
上記受信値毎に、符号の出力パターンと上記受信値によって決定される第1の確率を対数表記した上記第1の量子化刻み幅とされる第1の対数尤度を算出する第1の確率算出手段と、
上記第1の対数尤度に基づいて、上記受信値毎に、符号化開始ステートから時系列順に各ステートに至る第2の確率を対数表記した上記第1の量子化刻み幅とされる第2の対数尤度を算出する第2の確率算出手段と、
上記第1の対数尤度に基づいて、上記受信値毎に、打ち切りステートから時系列の逆順に各ステートに至る第3の確率を対数表記した上記第1の量子化刻み幅とされる第3の対数尤度を算出する第3の確率算出手段と、
上記第1の対数尤度と、上記第2の対数尤度と、上記第3の対数尤度とを用いて、上記演算手段による上記所定演算を少なくとも行い、上記第2の量子化刻み幅とされる上記対数軟出力を算出する軟出力算出手段とを有すること
を特徴とする請求項3記載の軟出力復号装置。 - 上記軟出力復号手段は、上記軟出力算出手段から供給された上記対数軟出力と、上記事前確率情報とを用いて、上記第2の量子化刻み幅とされる外部情報を算出する外部情報算出手段を有すること
を特徴とする請求項6記載の軟出力復号装置。 - 上記軟出力算出手段は、各ステートに到達した複数のパスに対応する複数のデータの中から選択した2つのパスに対応するデータの組み合わせの全てについて尤度の大小を比較して、複数のデータの中から、最も尤度の高いパスである最尤パスに対応するデータを選択することにより、トレリス上の各枝の入力に応じた上記所定演算の累積加算演算を行うこと
を特徴とする請求項6記載の軟出力復号装置。 - 軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、上記対数尤度を用いて軟出力復号を行う軟出力復号方法であって、
上記受信値と、軟出力復号を行う軟出力復号装置内部での演算の際に必要とされる第1の量子化刻み幅よりも粗い外部とのデータの入出力の際に必要とされる第2の量子化刻み幅とされる事前確率情報とを入力し、上記対数尤度を与えるために追加される補正項であって対数尤度の差分の絶対値の関数で表される補正項を追加することで上記確率の和演算を変形し、当該和演算の正確な対数値を求める所定演算を少なくとも行うことによって軟出力復号を行い、各時刻における軟出力を対数表記した上記第2の量子化刻み幅とされる対数軟出力を生成する軟出力復号工程を備え、
上記軟出力復号工程では、上記第1の量子化刻み幅とされる上記対数尤度を用いた上記対数軟出力の算出の際に行う上記所定演算の演算結果が上記第2の量子化刻み幅に変更されて出力されること
を特徴とする軟出力復号方法。 - 軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、上記対数尤度を用いて、複数の要素符号をインターリーブ処理を介して並列又は縦列に連接して生成された符号を繰り返し復号する復号装置であって、
複数の上記要素符号に対応して設けられ、上記受信値と、当該軟出力復号装置内部での演算の際に必要とされる第1の量子化刻み幅よりも粗い外部とのデータの入出力の際に必要とされる第2の量子化刻み幅とされる事前確率情報とを入力し、上記対数尤度を与えるために追加される補正項であって対数尤度の差分の絶対値の関数で表される補正項を追加することで上記確率の和演算を変形し、当該和演算の正確な対数値を求める所定演算を少なくとも行うことによって軟出力復号を行い、各時刻における軟出力を対数表記した上記第2の量子化刻み幅とされる対数軟出力及び/又は外部情報を生成する複数の軟出力復号手段と、
上記軟出力復号手段によって生成された上記外部情報を入力し、符号化における上記インターリーブ処理と同一の置換位置情報に基づいて、上記外部情報の順序を所定のアドレスにしたがって置換して並べ替えるインターリーブ処理、又は符号化における上記インターリーブ処理によって並べ替えられた情報の配列を元に戻すように、上記外部情報の順序を所定のアドレスにしたがって置換して並べ
替えるデインターリーブ処理を行うインターリーブ手段とを備え、
上記軟出力復号手段は、上記第1の量子化刻み幅とされる上記対数尤度を用いた上記対数軟出力の算出の際に行う上記所定演算の演算結果を上記第2の量子化刻み幅に変更して出力すること
を特徴とする復号装置。 - 軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、上記対数尤度を用いて、複数の要素符号をインターリーブ処理を介して並列又は縦列に連接して生成された符号を繰り返し復号する復号方法であって、
複数の上記要素符号に対応して設けられ、上記受信値と、軟出力復号を行う軟出力復号装置内部での演算の際に必要とされる第1の量子化刻み幅よりも粗い外部とのデータの入出力の際に必要とされる第2の量子化刻み幅とされる事前確率情報とを入力し、上記対数尤度を与えるために追加される補正項であって対数尤度の差分の絶対値の関数で表される補正項を追加することで上記確率の和演算を
変形し、当該和演算の正確な対数値を求める所定演算を少なくとも行うことによって軟出力復号を行い、各時刻における軟出力を対数表記した上記第2の量子化刻み幅とされる対数軟出力及び/又は外部情報を生成する複数の軟出力復号工程と、
上記軟出力復号工程にて生成された上記外部情報を入力し、符号化における上記インターリーブ処理と同一の置換位置情報に基づいて、上記外部情報の順序を所定のアドレスにしたがって置換して並べ替えるインターリーブ処理、又は符号化における上記インターリーブ処理によって並べ替えられた情報の配列を元に戻すように、上記外部情報の順序を所定のアドレスにしたがって置換して並べ替え
るデインターリーブ処理を行うインターリーブ工程とを備え、
上記軟出力復号工程では、上記第1の量子化刻み幅とされる上記対数尤度を用いた上記対数軟出力の算出の際に行う上記所定演算の演算結果が上記第2の量子化刻み幅に変更されて出力されること
を特徴とする復号方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002001844A JP3820583B2 (ja) | 2002-01-08 | 2002-01-08 | 軟出力復号装置及び軟出力復号方法、並びに復号装置及び復号方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002001844A JP3820583B2 (ja) | 2002-01-08 | 2002-01-08 | 軟出力復号装置及び軟出力復号方法、並びに復号装置及び復号方法 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2003204272A JP2003204272A (ja) | 2003-07-18 |
JP2003204272A5 JP2003204272A5 (ja) | 2005-07-21 |
JP3820583B2 true JP3820583B2 (ja) | 2006-09-13 |
Family
ID=27641864
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002001844A Expired - Fee Related JP3820583B2 (ja) | 2002-01-08 | 2002-01-08 | 軟出力復号装置及び軟出力復号方法、並びに復号装置及び復号方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3820583B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006059688A1 (ja) * | 2004-12-02 | 2006-06-08 | Mitsubishi Denki Kabushiki Kaisha | 復号装置及び通信装置 |
US8261163B2 (en) | 2006-08-22 | 2012-09-04 | Panasonic Corporation | Soft output decoder, iterative decoder, and soft decision value calculating method |
-
2002
- 2002-01-08 JP JP2002001844A patent/JP3820583B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003204272A (ja) | 2003-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3823315B2 (ja) | 符号化装置及び符号化方法、並びに復号装置及び復号方法 | |
EP1137191A2 (en) | Coding and decoding | |
EP1162750B1 (en) | MAP decoder with correction function in LOG-MAX approximation | |
EP1555759A1 (en) | Encoding device, encoding method, encoding method program, decoding device, decoding method, decoding method program | |
JP3669433B2 (ja) | インターリーブ装置及びインターリーブ方法、符号化装置及び符号化方法、並びに復号装置及び復号方法 | |
US6487694B1 (en) | Method and apparatus for turbo-code decoding a convolution encoded data frame using symbol-by-symbol traceback and HR-SOVA | |
JP3540224B2 (ja) | ターボ復号器とターボ復号方法及びその方法を記憶した記憶媒体 | |
JP4505953B2 (ja) | 符号化装置及び符号化方法、並びに、復号装置及び復号方法 | |
EP1311070A1 (en) | Decoder and decoding method | |
JP2001266499A (ja) | データ記録装置及びデータ記録方法、データ再生装置及びデータ再生方法、並びに、データ記録再生装置及びデータ記録再生方法 | |
JP3820583B2 (ja) | 軟出力復号装置及び軟出力復号方法、並びに復号装置及び復号方法 | |
US20020094038A1 (en) | Error-correcting code decoding method and error-correcting code decoding apparatus | |
US7178090B2 (en) | Error correction code decoding device | |
JP2001285080A (ja) | 復号装置、復号方法及び復号プログラムが記録された記録媒体 | |
JP2001352256A (ja) | 復号装置及び復号方法 | |
JP2005073189A (ja) | 符号化装置及び符号化方法、復号装置及び復号方法、並びにコンピュータ・プログラム | |
KR100436434B1 (ko) | 상태 메트릭을 갖는 터보 복호기 및 그를 이용한 계산 방법 | |
JP2001285084A (ja) | 符号化装置、符号化方法及び符号化プログラムが記録された記録媒体、並びに、復号装置、復号方法及び復号プログラムが記録された記録媒体 | |
JP2002190744A (ja) | 復号装置及び復号方法 | |
KR20010113792A (ko) | 재귀적 컨벌루션형 심벌들을 디코딩하기 위한 방법 및 장치 | |
JP2001292185A (ja) | 符号化装置、符号化方法及び符号化プログラムが記録された記録媒体、並びに、復号装置、復号方法及び復号プログラムが記録された記録媒体 | |
JP2002171174A (ja) | インターリーブ装置及びインターリーブ方法、並びに、復号装置及び復号方法 | |
JP2001352253A (ja) | 符号化装置及び符号化方法、並びに、復号装置及び復号方法 | |
JP2004215053A (ja) | 符号化装置、符号化方法、符号化方法のプログラム、復号装置、復号方法、復号方法のプログラム | |
JP2003198385A (ja) | インターリーブ装置及びインターリーブ方法、符号化装置及び符号化方法、並びに復号装置及び復号方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041130 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041130 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20041130 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20050202 |
|
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: 20060529 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060611 |
|
LAPS | Cancellation because of no payment of annual fees |