JP4708301B2 - ターボ復号装置 - Google Patents

ターボ復号装置 Download PDF

Info

Publication number
JP4708301B2
JP4708301B2 JP2006280655A JP2006280655A JP4708301B2 JP 4708301 B2 JP4708301 B2 JP 4708301B2 JP 2006280655 A JP2006280655 A JP 2006280655A JP 2006280655 A JP2006280655 A JP 2006280655A JP 4708301 B2 JP4708301 B2 JP 4708301B2
Authority
JP
Japan
Prior art keywords
probability calculation
backward
probability
result
backward probability
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
JP2006280655A
Other languages
English (en)
Other versions
JP2008099145A (ja
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006280655A priority Critical patent/JP4708301B2/ja
Priority to EP07118330A priority patent/EP1912335A1/en
Priority to US11/907,477 priority patent/US8108751B2/en
Publication of JP2008099145A publication Critical patent/JP2008099145A/ja
Application granted granted Critical
Publication of JP4708301B2 publication Critical patent/JP4708301B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/3905Maximum a posteriori probability [MAP] decoding or approximations thereof based on trellis or lattice decoding, e.g. forward-backward algorithm, log-MAP decoding, max-log-MAP decoding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2957Turbo codes and decoding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2957Turbo codes and decoding
    • H03M13/2978Particular arrangement of the component decoders
    • H03M13/2984Particular arrangement of the component decoders using less component decoders than component codes, e.g. multiplexed decoders and scheduling thereof
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/3972Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using sliding window techniques or parallel windows
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing
    • H03M13/6505Memory efficient implementations

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Description

本発明は、ターボ符号により符号化されたデータを復号するターボ復号装置に関する。
誤り訂正符号は、移動通信、ファクシミリ(FAX)、銀行のキャッシュディスペンサ等、データ通信を行う際にデータを誤りなく伝送する場合、あるいは、磁気ディスク、CD−ROMなどの大容量データ保存を行う際にデータを誤りなく読み出すことが要求されるシステムに適用される。
ターボ符号は、誤り訂正符号の中でも、符号化利得の高い符号として知られている。ターボ符号は、移動通信分野において、第三世代携帯電話システム(3GPP)で使用されており、次世代の携帯電話システムでも使用されることが期待される。
図1はターボ符号器、復号器を含む通信システムの構成図を示す。長さNの情報uは、ターボ符号器により符号化データxa,xb,xcに符号化される。xaは、情報uそのものであり、xbは情報uを畳み込み符号化したデータであり、xcは、情報uをインタリーブして畳み込み符号化したデータである。符号化データxa,xb,xcは、通信路により伝搬される際に雑音やフェージングの影響を受け、受信信号ya,yb,ycとして受信される。受信器では、受信信号からターボ復号装置にて復号処理が行われ、復号結果u'
を得る。
図1に示す記号は以下のように表現される。
情報 u=[u1,u2,…,uN]
符号化データ xa=[xa1,xa2,…,xak,…,xaN]
xb=[xb1,xb2,…,xbk,…,xbN]
xc=[xc1,xc2,…,xck,…,xcN]
受信データ ya=[ya1,ya2,…,yak,…,yaN]
yb=[yb1,yb2,…,ybk,…,ybN]
yc=[yc1,yc2,…,yck,…,ycN]
復号結果 u'=[u'1,u'2,…,u'N]
図2にターボ復号装置の構成例を示す。ターボ復号装置では、まず、受信信号ya,y
b,ycのうち、yaとybから、第1の要素復号器DEC1を用いて復号を行う。次に
、DEC1の復号結果の尤度とycとを用いて、第2の要素復号器DEC2により復号処理を行う。この際、DEC1の復号結果の尤度はインタリーブ処理を行ってからDEC2に入力される。DEC2の復号結果の尤度は、デインタリーブ処理され、再びDEC1に入力される。復号結果u'は、DEC2のデインタリーブ結果を“0”,“1”判定した
復号データである。誤り率特性は、上記の復号処理の繰り返しによって改善される。このため、ターボ復号器は、上述した復号操作を所定回数繰り返すことによって復号処理を行う。
なお、図2では、原理説明上、2個の要素復号器(DEC1及びDEC2)、インタリーバ及びデインタリーバを構成要素として示しているが、ハードウェア構成上、1個の要素復号器を用い、インタリーバ,デインタリーバは共用するのが一般的である。
従来例1として、ターボ復号装置の要素復号器として一般的なMAP(最大事後確率復
号:Maximum A Posteriori Probability Decoding)を適用した場合について説明する。
図3にMAP復号器を適用したターボ復号装置のブロック図を示す。MAPを用いた復号手順は以下のようになる。通信路値RAM(Random Access Memory)は、受信データya,yb,ycを保存するとともに、出力順序を適宜入れ替えて出力することができる。
図3において、例えば、符号化レートR=1/2で、情報長Nである場合、原情報u,符号化データxa,xb,受信データya,ybは、
原情報:u=[u1,u2,u3,…,uN]
符号化データ:xa=[xa1,xa2,xa3,…xak,…,xaN]: xb=[xb1,xb2,xb3,…xbk…,
受信データ: ya=[ya1,ya2,ya3,…,yak,…,yaN]: yb=[yb1,yb2,yb3,…ybk…,
である。
なお、情報長Nは、ターボ符号器側で付加されたテイルビット(tail bit)を含んでいる。
図3において、移行確率演算器は、時間kにおいて受信データ(yak,ybk)を受信すると
、移行確率γs,k(但し、s=0〜3)として、
(xak,xbk)が(0,0)である確率γ0, k
(xak,xbk)が(0,1)である確率γ1, k
(xak,xbk)が(1,0)である確率γ2, k
(xak,xbk)が(1,1)である確率γ3, k
を夫々演算する。
後方確率演算器は、時間kの後方確率βk(m)と移行確率γs,k(s=0〜3)を使用
して時間k−1の各状態m(m=0〜7)における後方確率βk−1(m)を演算して後方確率RAM(メモリ)に記憶する。以後、移行確率演算器及び後方確率演算器は、k=k−1として上記演算を繰り返し、k=Nからk=0まで演算を行って、k=0〜Nの各時間における後方確率βk(m)を後方確率RAMに記憶する。
その後、移行確率演算器及び前方確率演算器は、時間(k−1)において原データuk−1が“1”である前方確率α1,k−1(m)と、原データuk−1が“0”である前方確
率α0,k−1(m)と、移行確率γs,kとを用いて、時間kの各状態mにおいてukが“1”である前方確率α1,kと、uk(m)が“0”である前方確率α0,k(m)とを演算する。
結合確率演算器は、時間kの各状態mにおける前方確率α1,k(m)と、後方確率RA
Mに記憶されている後方確率βk(m)とを掛け合わせてk番目の原データukが“1”である確率λ1,k(m)を演算する。同様に、時間kの各状態mにおける前方確率α0,k(
m)と後方確率βk(m)とを用いて原データukが“0”である確率λ0,k(m)を演算する。
事後確率演算器は、時間kの各状態mにおける“1”である確率λ1,k(m)を加算し
て、“1”である確率の総和Σmλ1,k(m)を求めるとともに、時間kの各状態mにお
ける“0”である確率λ0,k(m)を加算して、“0”である確率の総和Σmλ0,k(m)を求め、次式(1)
L(u1k)=log[Σmλ1,k(m)/Σmλ0,k(m)] ・・・(1)
により、対数尤度(事後確率L(u1k))を出力する。
外部情報尤度演算器は、事後確率L(u1k)に入力時の事前尤度や通信路値が含まれて
いるために、これらの分を削除して外部情報尤度Le(u1k)を算出する。外部情報尤度
Le(u1k)は、インタリーブRAMで記憶され、インタリーブされ、次の復号処理にお
いて事前尤度L(u1k')として出力され、移行確率演算器にフィードバックされる。
以上によりターボ復号の第1回目の前半の復号処理(1回のMAP復号)が終了し、次に、受信データyaをインタリーブしたものと前半の復号処理で得られた事前尤度L(u1k')とを新たな受信データya'とみなし、このya'とycとを用いて前述したMAP復号処理を行い、尤度L(u2k)を出力する。これで、1回のターボ復号処理が終了する。以
後、ターボ復号処理を所定回数(例えば8回)繰り返して行い、得られた事後確率L(u8k)>0であれば復号結果uk=1を、L(u8k)<0であれば復号結果uk=0を出力する。
このようなMAP復号方法では、前半において移行確率演算、後方確率演算、及び後方確率βを後方確率RAMに記憶する処理を行い、後半において移行確率演算、前方確率演算、結合確率演算、事後確率計算、外部情報尤度計算を行っている。即ち、この復号方法では、前方確率α1,k(m),α0,k(m)を記憶することなく、後方確率βk(m)を後方確率RAM(メモリ)に記憶する。
以上の処理を言い換えると、次の通りとなる。
(1)移行確率演算
時間kで受信された受信データ(yak,ybk)より、符号化データ(xa,xb)のそれぞれが“0”となる場合と“1”となる場合の組み合わせのすべてに対する移行確率γs,kを求める。この移行確率演算は、以下の(2)後方確率演算,(3)前方確率演算時にそれぞれ実行される。
(2)後方確率演算
時間Nから時間0までの後方確率の演算を順次行う。時間kでの後方確率βk(即ち、
β0,k、β1,k)は、時刻k+1の後方確率βk+1と時刻k+1の移行確率より算出
され、その結果は後方確率演算結果を格納するメモリ(後方確率RAM)に保管される。
(3)前方確率演算
時刻0から時刻Nの前方確率演算を順次行う。時間kでデータが“0”である場合の前方確率α0,kと、時間kでデータが“1”である場合の前方確率α1,kとを、時刻k−1のデータが“0”である場合の前方確率α0,k−1と、データが“1”である場合の
前方確率α1,k−1、及び、時刻kでの移行確率γs,kから算出する。
(4)結合確率演算
結合確率演算は、(3)の前方確率演算と同時に実行される。時刻kで各状態が“0”である場合の確率をα0,kとβ0,kから、各状態が“1”である確率をα1,kとβ1,kとから算出する。
(5)事後確率演算
時刻kで各状態が“1”である確率の加算と、各状態が“0”である確率とをそれぞれ加算し、事後確率ukと、ukの尤度とを算出する。
(6)外部情報尤度演算
時刻kの事後確率演算結果ukには、入力時の事前尤度や通信路値が含まれるため、これらの削除を行う。
MAP復号処理として、上記(1)〜(6)の演算を1回行った場合の復号時間(MAP復
号時間)は2Nとなる。2回のMAP復号処理で、1回のターボ復号処理が完了する。よ
って、1回のターボ復号処理時間は4Nであり、ターボ復号処理の繰り返し数が8回である場合には、ターボ復号処理時間は32Nとなる。
図4に、1回のMAP復号処理のタイミングチャートを示す。この場合、後方確率演算結果βkを記憶する為のメモリ量は、全てのノードNに対して必要となる。
次に、従来例2について説明する。従来例1の方式では、後方確率演算結果を保管して
おくためのメモリ量が非常に大きく、そのままでは回路の実装には適さない。そのため、後方確率演算結果を保管するメモリの削減方法が提案されている(例えば、特許文献1)。図5に、従来例2の方式によるMAP復号1回当たりのタイミングチャートを示す。
特許文献1に記載された従来例2の方式による復号手順は、従来例1との比較において次のような差分を有する。
(1)情報長Nが所定長Lで複数のブロックに分割され、Lの区間を基本単位として復号を行う。このとき、情報長N(時間区間0〜N)は、区間0〜L1,L1〜L2,L2〜L3,
・・・,Lx〜Nに分割される。
(2)時間N+Δから0へ向かって後方確率演算を行う。このとき、時間Nから0への各時間の後方確率演算結果のうち、L毎の時間Lx,・・・,L3,L2における後方確率演算
結果(離散β)をメモリに蓄え、時間L1から0までのすべての時間での後方確率演算結果(連続β)をメモリに蓄える。
(3)その後、時間0からL1までの前方確率演算を実施する。このとき、メモリに蓄えられえている時間0からL1までの後方確率演算結果(連続β)を読み出し、0〜L1に関する結合確率演算,事後確率演算,及び外部尤度演算を実施する。時間0からL1までの前方確率演算の開始とほぼ同時に、メモリからL2の後方確率演算結果(離散β)を読み出し、これを初期値として時刻L2からL1までの後方確率演算を行い、後方確率演算結果をメモリに蓄積する。
(4)以降、上述した(1)〜(3)処理をL区間ごとに繰り返し、Nまで復号を行う。
従来例2の処理時間は、従来例1と同じく1回のMAP復号で2Nとなる。よって、繰り返し数が8回の場合のターボ復号処理時間は32Nとなる。
従来例2において、後方確率演算結果を蓄積する為のメモリ量は、後方確率演算結果を格納するRAM(メモリ)のリード・ライトアクセス競合回避を考慮して、N/L+2Lとなる。
次に、従来例3について示す(例えば、特許文献1)。従来例3は、後方確率演算方法が従来例1と異なり、処理時間とメモリ量を削減できる方式である。従来例3の方式のデメリットは、誤り率特性が若干劣化することと、2個の後方確率演算器を実装する必要があることである。
従来例3の方式による復号手順は、次のような従来例1との差分を有する。図6に、従来例3によるMAP復号1回あたりのタイミングチャートを示す。
(1)情報長Nが所定長Lを有する複数のブロックに分割され、Lの区間を基本単位として復号を行う。情報長N(時間区間0〜N)は、区間0〜L1,L1〜L2,L2〜L3,・・
・,Lx〜Nに分割される。
(2)第1の後方確率演算器で、後方確率演算が時間L2から時刻0まで行われる。このとき、時間L2から時間L1までの演算結果は、信用が低い為に採用せず、時刻L1から0までの区間における後方確率演算結果のみがRAM(メモリ)に保管される。
(3)次に、前方確率演算が時刻0からL1まで実行され、この前方確率演算結果とメモリに蓄えた後方確率演算結果とを用いて、結合確率演算,事後確率演算,及び外部尤度演算が実行される。
(4)第1の後方確率演算器による後方確率演算がL1まで終了した時点で、第2の後方確率演算器が、時間L3からL1までの後方確率演算を開始する。この後方確率演算における区間L2〜L1の演算は、区間0〜L1に対する前方確率演算と並列に実行される。このとき、時間L3から時間L2までの後方確率演算結果は、信用が低い為に採用されず、時刻L2からL1までの区間における後方確率演算結果のみがRAM(メモリ)に保管され
る。
(5)区間0〜L1の前方確率演算に続いて、区間L1〜L2に対する前方確率演算が実行され、この区間の前方確率演算結果と、第2の後方確率演算器でメモリに蓄えた後方確率演算結果とを用いて、結合確率演算,事後確率演算,及び外部尤度演算が実行される。
(6)以降、上述した処理がLの区間ごとに繰り返され、Nまで復号が行われる。
従来例3の場合の処理時間は、従来例1と同じく1回のMAP復号で2Nとなり、繰り返し回数が8回であるターボ復号の処理時間は32Nとなる。従来例3では、後方確率演算結果を格納するRAM(メモリ)は、ライト/リードのアクセス競合を考慮すると、2Lだけ必要となる。
上述した従来例2〜3は、従来例1に対してメモリ量を削減し回路規模を削減する為の方法である。一方、復号にかかる時間の短縮方法として、特許文献1に示される方法がある(従来例4)。従来例4の方式では、情報長NをM個のブロックに分割し、それぞれのブロックにてMAP演算を並列に実行することで処理時間を短縮する。
従来例4の方式は、従来例1〜3の方式のそれぞれに適用することが可能であり、それぞれの方式に対する適用時の処理時間は1/Mとなる。図7に、従来例4の方式を従来例2に適用した場合のタイミングチャートを示す。
従来例4では、図3に示したMAP復号器がブロック数Mに応じて用意される(MAP
#1〜#M)。M個のブロックは、ブロックN/M,2N/M,・・・,N(M−1)/M,Nで表される。
第1のMAP復号器(MAP#1)では、区間0〜N/Mのブロックに関して従来例2の復号処理が行われ、第2のMAP復号器(MAP#2)では、区間N/M〜2N/Mのブロックに対して従来例2の復号処理が行われ、MAP#3,・・・,#Mは、同様の復号処理を行う。
ここで、各MAP復号器は、後方確率演算を行う際に、所定のΔだけ余分に後方確率演算を行い、余分な部分の演算後に求まる後方演算結果のうち、最後の分割データに対する後方確率演算結果のみをメモリに書き込む。例えば、MAP#1は、N/M+Δから0までの後方確率演算を行い、L1から0迄の後方演算結果をメモリに格納する。後方演算は、1以上前の後方演算結果を用いて演算されるため、Δだけ余分に後方から後方演算を行うことで、時間N/Mにおいて信頼性の高い後方確率βを得ることが可能となる。
従来例4を適用すると、後方確率演算結果を蓄えるためのメモリ量は以下のようになる。
(1)従来例1に適用した場合 :N/M*M=N
(2)従来例2に適用した場合 :N/L+2LM
(3)従来例3に適用した場合 :2LM
高速伝送を行う携帯電話システムにてターボ符号が用いられる場合を想定する。例えば100Mbpsの伝送速度を実現しようとする場合、1秒当たり100Mビットの復号処理が必要となる。
ここで、例えば、従来例2の方式を適用し、100MHzのシステムクロックを用いてターボ復号処理を行った場合、1秒当たりのデータ復号のために32秒が必要となる。従って、ターボ復号装置を32個実装しなければならず、回路規模が肥大化してしまう。これに対し、従来例4のような方法を適用して高速な復号処理を行うことで、ターボ復号装置の実装個数を減らし、回路規模を小さくすることができる。また、従来例1は、要求さ
れるメモリ量が多い為、回路の実装には向かず、メモリ量を削減可能な従来例2や3が回路規模の縮小を図る上で優先的に適用されると考えられる。
特開2004−15285号公報 特許3451246号公報
従来例1からの誤り率特性の劣化が生じない従来例2を用いてメモリ量の削減を行い、且つ、従来例4を用いて処理時間の短縮を行う構成を考える。この場合、後方確率演算結果の保存に必要なメモリ量は、N/L+2LMとなる。ここで、処理の高速化のためにMの値を大きくした場合、メモリ量は従来例1におけるNの値に近づき、従来例2の適用によるメモリ量削減の効果が薄れてしまう。これは、従来例2にて削減されたメモリは、従来例4で複数実装されるMAP演算器に対してそれぞれ設ける必要があることによる。このことは、従来例2ではなく従来例3の採用によりメモリ量削減を行った場合にも当てはまる。
この様に、従来例2〜3と従来例4との組合せでは、高速処理時において、従来例2や3の適用によるメモリ削減効果が薄れてしまう。このため、ターボ復号装置の回路規模に多大な影響を与える。特に、ターボ復号装置が搭載される携帯端末装置の小型化を阻む要因となる。
本発明の目的は、回路規模を削減可能なターボ復号装置を提供することである。
また、本発明の他の目的は、処理時間の増加を抑えつつ、回路規模を削減可能なターボ復号装置を提供することである。
本発明は、上記した目的を達成するため、以下の手段を採用する。
すなわち、本発明の第1の態様は、ターボ符号化されたNビットの符号化データに対する後方確率演算を行う後方確率演算部と、
Nビット中の所定区間に関する連続的な複数の後方確率演算結果をn個おきに記憶する記憶部と、
前記符号化データに対する前方確率演算を行う前方確率演算部と、
前方確率演算結果と後方確率演算結果とを用いた結合確率演算を通じて符号化データの復号結果を算出する復号結果算出部とを含み、
前記復号結果算出部は、前記前方確率演算結果と、前記記憶部に記憶された後方確率演算結果及び前記後方確率演算部によって再計算された後方確率演算結果とを用いて前記結合確率演算を行うターボ復号装置である。
本発明によれば、後方確率演算結果がn個(nは自然数)おきに記憶されるので、メモリ量を削減することができ、回路規模の削減を図ることができる。
好ましくは、本発明の第1の態様において、結合確率演算は、前記前方確率演算と並列に実行され、
前記復号結果算出部は、前記前方確率演算部で算出されるi番目(i=1〜N)の前方確率演算結果に対応するi番目の後方確率演算結果が前記記憶部に記憶されていれば、この後方確率演算結果を用いてi番目の結合確率演算を行い、
i番目の後方確率演算結果が前記記憶部に記憶されていなければ、前記後方確率演算部が、i+1番目の前方確率演算のために算出されたi+1番目の移行確率演算結果と前記
記憶部に記憶されているi+1番目の後方確率演算結果とからi番目の後方確率を再計算し、前記復号結果算出部が再計算されたi番目の後方確率演算結果を用いてi番目の結合確率演算を行うように構成される。
このようにすれば、前方確率演算のために算出された移行確率演算結果が後方確率の再計算に利用されるので、再計算のために別途移行確率演算を行う必要がなく、処理時間の増加を抑えることができる。
本発明の第2の態様は、ターボ符号化された符号化データを要素復号の繰り返しを通じて復号するターボ復号装置において、
Nビットの符号化データがM個に分割された分割データの夫々に要素復号を施すM個の要素復号器と、
M個の要素復号結果を纏めてインタリーブ、デインタリーブを交互に繰り返すインタリーブ/デインタリーブ部とを備え、
各要素復号器は、
N/Mの分割データに対する後方確率演算を行う後方確率演算部,
N/Mの分割データに対するN/M個の後方確率演算結果をn個おきに記憶する記憶部,
N/Mの分割データに対して前方確率演算を行う前方確率演算部,及び
N/Mの分割データに対するN/M個の前方確率演算結果と、前記記憶部からの読み出し及び前記後方確率演算部の再計算によって得られるN/M個の後方確率演算結果とを用いた結合確率演算を通じてN/Mの分割データの要素復号結果を出力する復号結果算出部を含むターボ復号装置である。
本発明の第3の態様は、ターボ符号化された符号化データを要素復号の繰り返しを通じて復号するターボ復号装置において、
Nビットの符号化データがM個に分割された分割データの夫々に要素復号を施すM個の要素復号器と、
M個の要素復号結果を纏めてインタリーブ、デインタリーブを交互に繰り返すインタリーブ/デインタリーブ部とを備え、
各要素復号器は、
N/Mの分割データに対する後方確率演算を行う後方確率演算部,
N/Mの分割データを所定長L毎にX個の区間に分割し、X番目から2番目までの各区間の後方確率演算結果をLの間隔を空けて離散的に記憶するともに、1番目の区間に対するL個の後方確率演算結果をn個おきに記憶する記憶部,
N/Mの分割データに対する前方確率演算を行う前方確率演算部,及び
N/Mの分割データの各区間について、L個の前方確率演算結果と、これに対応するL個の後方確率演算結果とを用いた結合確率演算を通じて各区間の要素復号結果を算出する復号結果算出部とを含み、
前記復号結果算出部は、前方確率演算部で算出された1番目の区間のL個の前方確率演算結果と、前記記憶部からの読み出し及び前記後方確率演算部の再計算によって得られる1番目の区間のL個の後方確率演算結果とを用いた結合確率演算を通じて1番目の区間に対する要素復号結果を出力し、
前記後方確率演算部は、次の区間に関して前記記憶部に記憶された後方確率演算結果を用いて、次の区間に対する後方確率演算を行い、次の区間に関するL個の後方確率演算結果を算出し、これらのL個の後方確率演算結果をn個おきに前記記憶部に記憶し、
前記前方確率演算部は、次の区間に対する前方確率演算を行い、前記復号結果算出部は、前記前方確率演算部で算出された次の区間のL個の前方確率演算結果と、前記記憶部からの読み出し及び前記後方確率演算部の再計算によって得られる次の区間に関するL個の後方確率演算結果とを用いた結合確率演算を通じて次の区間に対する要素復号結果を出力
し、
前記後方確率演算部,前記前方確率演算部,及び前記復号結果算出部は、残りの区間があれば、残りの区間について上記処理を繰り返し行う
ターボ復号装置である。
本発明の第4の態様は、ターボ符号化された符号化データを要素復号の繰り返しを通じて復号するターボ復号装置において、
Nビットの符号化データがM個に分割された分割データの夫々に要素復号を施すM個の要素復号器と、
M個の要素復号結果を纏めてインタリーブ、デインタリーブを交互に繰り返すインタリーブ/デインタリーブ部とを備え、
各要素復号器は、
N/Mの分割データに対する後方確率演算を行う後方確率演算部,
後方確率演算結果を記憶する記憶部,
N/Mの分割データに対する前方確率演算を行う前方確率演算部,及び
前方確率演算結果と後方確率演算結果とを用いた結合確率演算を通じて要素復号結果を算出する復号結果算出部とを含み、
前記後方確率演算部は、N/Mの分割データを所定長L毎に複数の区間に分割し、2L番目から1番目までの後方確率演算を行い、L番目から1番目までの後方確率演算結果をn個おきに前記記憶部に記憶し、
前記前方確率演算部は、N/Mの分割データの1番目からL番目の前方確率演算を行い、
前記復号結果算出部は、1番目からL番目の前方確率演算結果と、前記記憶部からの読み出し及び前記後方確率演算部による再計算によって得られる1番目からL番目の後方確率演算結果とを用いて結合確率演算を行い、1番目からL番目までの区間に関する要素復号結果を出力し、
前記後方確率演算部は、2L番目から1番目までの後方確率演算中に、3L番目からL+1番目までの後方確率演算を行い、2L番目からL+1番目までの後方確率演算結果をn個おきに前記記憶部に記憶し、
前記前方確率演算部は、N/Mの分割データのL+1番目から2L番目の前方確率演算を行い、
前記復号結果算出部は、L+1番目から2L番目の前方確率演算結果と、前記記憶部からの読み出し及び前記後方確率演算部による再計算によって得られるL+1番目から2L番目の後方確率演算結果とを用いて結合確率演算を行い、L+1番目から2L番目までの区間に関する要素復号結果を出力し、
前記後方確率演算部,前記前方確率演算部,及び前記復号結果算出部は、残りの区間があれば、残りの区間について上記処理を繰り返し行う
ターボ復号装置である。
本発明によれば、ターボ復号装置の回路規模を削減することができ、ターボ復号装置が搭載される機器の小型化を図ることが可能となる。
また、本発明によれば、ターボ復号装置の処理時間の増加を抑えつつ、回路規模を削減することが可能となる。
〔実施形態の概要〕
従来例1〜3のそれぞれは、後方確率演算結果をメモリに蓄えてから前方確率演算を行い、前方確率演算結果とメモリに蓄えられた後方確率演算結果を用いて結合確率演算を行
うことを特徴としている。従来例2及び3では、区間L1〜0(L番目から1番目)における連続的な後方確率演算結果がメモリに蓄えられる。
本発明の実施形態では、後方確率演算結果の総てを記憶するのではなく、後方確率演算結果をn個おきに間引いて保管することによりメモリ量の削減を行う。この場合、メモリに記憶されていない箇所の後方確率演算結果については、前方確率演算の実施時点でメモリに記憶されている後方確率演算結果を用いて再演算を行う。
通常、後方確率演算の再計算は、メモリに蓄えられている伝送路値と外部尤度情報を用いて行われる。これらの伝送路値及び外部尤度情報は、前方確率演算を行う為の入力値である。従って、後方確率演算の再計算と前方確率演算とを並列に実行すると、メモリアクセスの競合が発生する。メモリアクセスの競合を回避する為に、時間をずらしてメモリアクセスを行うようにすると、処理時間の増加を招いてしまう。
しかし、前方確率演算の入力値と、間引き保管されている箇所の後方確率演算を行う為の入力値とは、ビット列の近傍の値を用いる。従って、演算順序を見直すことにより、これらの演算において、同時間に同じ入力値とすることが可能となる。よって、処理時間の増加を招くことなく、また、間引き箇所の補間用の後方確率演算器を追加するだけで再演算の実行が可能となる。
以下、本発明の実施形態において、間引き量n=1として、1個おきに後方確率演算結果を保管する場合の構成について説明する。図8に、前方確率演算及び後方確率演算の再計算処理の概念図、図9に、従来例に追加される回路部のブロックを示し、図10にメモリに保管されなかった箇所の再演算のタイミングチャートを示す。
図8では、時刻iでの移行確率をγ(i)、前方確率演算結果(前方確率)をα(i)、後方確率演算結果(後方確率)をβ(i)として示している。実施形態における方式では、従来方式と同様に、後方確率演算を予め行う。但し、本実施形態では、後方確率演算結果を1つおきに保管(バッファ:記憶)する(n=1)。ここでは、後方確率演算結果として、β(i
+1),β(i+3),…が保管されているものとする(β(i+2),β(i)が間引かれている)。
時刻iのときにi番目の結合確率が演算される。このとき、各時刻における前方確率αは既に演算された結果が保持された状態となっている。すなわち、前方確率α(i)が得られた状態にある。しかし、後方確率β(i)は、後方確率演算結果を格納するメモリ(後方
確率RAM)に蓄えられていないために、前方確率α(i)と後方確率β(i)との結合確率
演算を行うことができない。
このため、時刻iのタイミングでi番目の結合確率演算は行わず、時刻iの移行確率γ(i)を保持して時刻i+1に移行する。後方確率β(i+1)の値は、後方確率RAMに保管されている。よって、後方確率β(i+1)と、時刻i+1における移行確率γ(i+1)とを用いて、後方確率β(i)を算出(再計算)することができる。この後方確率β(i)と、前方確率α(i)とを用いて時間iでの結合確率演算を行うことができる。また、後方確率β(i+1)と、前方確率α(i+1)とを用いて、時間i+1での結合確率演算を行うことができる。なお、前方確率α(i+1)は、前方確率α(i)と時刻i+1の移行確率γ(i
+1)とを使用して演算される。
移行確率γ(i+1)は、前方確率α(i+1)を求めるために算出された値であり、このような値が後方確率の再計算に使用されることで、再計算のための移行確率演算を行わなくて済み、処理時間の短縮を図る(増加を抑える)ことができる。
図9に示すブロックでは、移行確率演算器9から移行確率γを受け取る後方確率演算器10が設けられており、後方確率演算器10には、後方演算RAM11(記憶部)に記憶された後方確率演算結果が入力される。後方確率演算器10の出力は、セレクタ12の一方の入力端に接続されており、後方確率RAM11は、位相調整器13を介してセレクタ12の他方の入力端に接続されている。セレクタ12は、後方確率演算器10と後方確率RAM11との各出力の一方を選択し、後方確率β(i)として結合確率演算器に接続する。また、前方確率演算器14は、位相調整器15を介して移行確率演算器9と接続されており、前方確率演算結果α(i)を出力する。これにより、同時刻の前方確率演算結果α(i)と後方確率演算結果β(i)とは、同タイミングで結合確率演算器(図示せず)に入力されるようになっている。
図9に示した回路は、図10に示すようなシステムクロックに従って動作するように成っており、移行確率演算器9は、1クロックサイクル毎に、各時間での移行確率γを出力するようになっている(図9及び図10の〈1〉)。これに対し、後方確率RAM11からは、2クロックサイクル毎に、或る時間における後方確率演算結果βが読み出されるようになっている(図9及び図10の〈2〉)。図10に示す例では、1つおきに記憶されたβ(i+1),β(i+3)が、2クロックサイクルで読み出されている。
この1つの後方確率演算結果が読み出されている時間(RAM11に対する読み出しア
クセスが行われている2クロックサイクル)の後半部分において、或る時間での前方確率
α及び後方確率βが出力され、次のクロックサイクルで、次の時間の前方確率α及び後方確率βとが出力され、それぞれの時間に対する結合確率演算が行われる。図10に示す例では、移行確率演算器9からの移行確率γ(i+1)の出力タイミング(タイミングt2)において(図10〈1〉)、後方確率演算器10が、後方確率RAM11に保管された後方確率演算結果β(i+1)を読み出し(図10〈2〉)、後方確率β(i)の再計算を行う。後方確率演算器10は、次の移行確率γ(i+2)の出力タイミング(タイミングt3)で、後方確率β(i)を出力する(図10〈3〉)。後方確率演算器10は、2クロックサイクル毎に出力を変更する。
タイミングt3において、後方確率β(i)は、セレクタ12から選択出力として出力される。一方、移行確率演算器9からタイミングt1で出力された移行確率γ(i)は、位相調整器15によって、1サイクル遅れて前方確率演算器14に入力される。前方確率演算器14は、次の出力タイミング(タイミングt3)で前方確率α(i)を出力する。よって、前方確率α(i)と後方確率β(i)が同タイミングで結合確率演算器に入力される。
後方確率RAM11から出力〈2〉として読み出された後方確率β(i+1)は、位相調整器13により、1サイクル遅れてセレクタ12に到達する。セレクタ12は、1サイクル毎に出力を切り換えるようになっている。よって、タイミングt4では、位相調整器13からの後方確率β(i+1)がセレクタ12から出力される。一方、前方確率演算器114には、後方確率演算器10よりも1サイクル遅れて移行確率が入力されるので、タイミングt4では、前方確率α(i+1)が出力されることになる。よって、同時刻の前方確率及び後方確率が同タイミングで結合確率演算器に入力される。
このように、後方確率β(i+1)の読み出し時間の前半部分において、後方確率β(i)の再計算が行われ、後半部分で後方確率β(i)の出力と、前方確率α(i)の出力とが行われる。そして、次のサイクルで、後方確率β(i+1)の出力と、前方確率α(i+1)の出力とが行われる。
このように、本実施形態では、2クロックサイクルに1回、2個の結合確率を演算する
ことができ、これらの演算を時分割に処理する構成をとることによって、メモリ(後方確
率RAM)に保管されなかった後方確率演算結果を実施する演算器を追加するのみで、後
方確率の再計算を実行でき、メモリ量を削減できることがわかる。
従来例2又は3では、システムクロック(1クロックサイクル)毎に演算動作をさせる場合には、後方確率演算結果を蓄えるメモリ(後方確率RAM)への書き込みアクセスと、蓄えられた後方確率演算結果を読み出して結合確率演算を行う為の読み出しアクセスとが同時に発生する。このため、アクセス競合回避のために、メモリ(後方確率RAM)を2面構成として、書き込みと読み出しを分離する必要がある。
本実施形態の方式では、後方確率演算結果をn個(n時間)おきに間引いてメモリに蓄える。これによって、n+1サイクルに1回の書き込み動作とn+1サイクルに1回の読み出し動作となる為に、2面構成とする必要が無い。
このこととメモリ保管量が1/(n+1)になることとを合わせて、1/2(n+1)のメモリ量削減効果がある。回路規模の増加量として、再計算を行う為の後方確率演算器がn個増加する。しかし、後方確率演算は、加算と最大値選択とにより構成されるため、比較的簡単な回路構成となる。よって、メモリ削減量に対して十分に小さい回路規模増加量となる。
また、処理時間は数クロックサイクル程度の増加で、従来の処理時間からの増加量は微量となり、また、メモリに蓄えるか、同じ演算を再実行するかの違いであるために、誤り率特性は全く同一となる。
〔具体例〕
図8〜図10に示した本発明の実施形態に係る構成は、従来例1から4に示した各方式に適用することができる。従来例4は、従来例1から3のそれぞれの方式において、情報長NのNビットの符号化データをM個のブロックに分割して並列処理を行うことにより、高速化を行ったものである。これより、従来例1から3のそれぞれの方式に対して本方式を適用することもできるし、従来例1から3に対して従来例4を適用した上で、本方式を適用することもできる。
〈具体例1〉
従来例1に従来例4を適用して高速化を図ったものに本方式を適用した場合の例を具体例1として説明する。ここでは、説明を簡単化するために、具体例1は、従来例4で1倍速化を行った場合、すなわち、従来例4を適用しない場合を含むものとしている。
図11は、従来例1に従来例4を適用し、且つ本実施形態の方式を適用した場合のターボ復号装置を示すブロック図である。図11に示すように、ターボ復号装置20は、通信路値RAM21と、複数のMAP部(MAP復号器)22(#1〜#M)と、インタリーブRAM23とを含んでいる。
通信路値部RAM21には、受信データya,yb,ycが入力される。通信路値RAM部21は、受信データya,yb,ycを記憶して、選択的に出力することが可能となっている。すなわち、ターボ復号処理の開始時に受信データya,ybを出力し、その後、前
半部分の終了後に受信データycを出力することができる。
インタリーブRAM23は、各MAP部22からの要素復号結果を格納してインタリーブ及びデインタリーブを交互に行い、それらの結果を各MAP部22の移行確率演算器にフィードバックすることができる。
MAP部#1は、図2における第1、第2の要素復号器として、すなわちターボ復号の前半の要素復号器(DEC1)、後半の要素復号器(DEC2)として交互に使用される。MAP部#2は、図2におけるDEC1及び2として交互に使用される。各MAP部#3〜#Mは、図2のDEC1及び2として交互に使用される。
インタリーブRAM部23は図2におけるインタリーバ及びデインタリーバとして交互に使用される。各MAP部#1〜#Mは同一の構成を備え、移行確率演算器221、第1の後方確率演算器222、記憶部としての後方確率RAM223、第2の後方確率演算器224、前方確率演算器225、結合確率演算器226、事後確率演算器227、外部情報尤度演算器228を有している。結合確率演算器226,事後確率演算器227及び外部情報尤度演算器228が本発明の復号結果算出部に相当する。
後方確率RAM223及び第2の後方確率演算器224が本実施形態の方式を実現するために改良又は追加された構成であり、第2の後方確率演算器224は、詳細には、図9の破線で示した構成を備えている。すなわち、後方確率RAM223が、図9の後方確率RAM11に相当し、第2の後方確率演算器224は、図9の破線で囲んだ構成を有している。また、移行確率演算器221及び前方確率演算器225は、図9における移行確率演算器9及び前方確率演算器14に相当する。
具体例1では、情報ビットにTailビットを付加した信号長がNビット(Nビットの
復号対象信号(符号化データ))であれば、通信路値RAM部22は、該信号長をM個に分
割し、MAP部#1〜#MのそれぞれにN/Mの分割データを同時に入力する。
MAP部#1〜#Mは、それぞれ従来例1のMAP復号方法に従ってN/Mビットずつの分割データ0〜N/M, N/M〜2N/M,...,(M−1)N/M〜Nに対して同時に(並列に)MAP復号処理を行う。
すなわち、1番目のMAP部#1において、移行確率演算器221及び後方確率演算器222は、N/M+Δから0に向かって、移行確率演算および後方確率演算を行い、後方確率演算器222は、N/M−1から0までの後方確率演算結果を、n個おき(例えばn
=1)に後方確率RAM223に記憶保持する。なお、N/M+ΔからN/Mまでの後方
確率は信頼がないため捨てる。
次に、移行確率演算器221及び前方確率演算器225は、0からN/M−1に向かって移行確率演算および前方確率演算を行う。このとき、後方確率演算結果が後方確率RAM223に記憶されている場合には、後方確率演算器224からその値が結合確率演算器226に入力される。これに対し、後方確率演算結果が後方確率RAM223に格納されていない場合には、後方確率演算器224は、後方確率RAM223に記憶された後方確率演算結果と、その時の移行確率演算結果とから、所望の後方確率演算結果を算出し、結合確率演算器226に入力する。
例えば、時間iにおける後方確率演算結果が後方確率RAM223に記憶されていない場合には、後方確率演算器224は、時間i+1における後方確率演算結果β(i+1)と、そのときの移行確率演算結果γ(i+1)とから時間iにおける後方確率演算結果β(i)を再計算し、結合確率演算器226に入力する。結合確率演算器226は後方確率演算結果と前方確率演算結果とを用いて結合確率演算を行い、事後確率演算器227及び外部情報尤度演算器228はそれぞれ事後確率演算、外部情報尤度演算を行う。
なお、後方確率の演算をN/MからでなくN/M+Δから開始する理由は以下の通りで
ある。後方確率演算は時刻N/Mでの確率を演算するために、時刻N/M+1での確率をもとに演算する。このためN/M+1での後方確率演算が正しくないとN/Mでの後方確率演算が正しく演算できない。そこで時刻N/M+Δでの後方確率演算を初期値として適当なものを使用し、順にN/M+(Δ−1)、N/M+(Δ−2)、N/M+(Δ−3)、……N/M+2、N/M+1、N/Mを演算する。このように演算することで順に信頼度の高い後方確率演算結果が得られることになる。以降、N/M−1、N/M−2、…は信頼のおけるN/Mから演算されるため信頼のおける結果となる。
また、i番目のMAP部#iにおいて、移行確率演算器221及び後方確率演算器222はiN/M+Δから(i−1)N/Mに向かって、移行確率演算および後方確率演算を行い、後方確率演算器222は、iN/M−1から(i−1)N/Mまでの後方確率演算結果を、1つおきに後方確率RAM223に記憶保持する。なお、iN/M+ΔからiN/Mまでの後方確率は信頼がないため捨てる。
次に、移行確率演算器221及び前方確率演算器225は、(i−1)N/M−ΔからiN/M−1に向かって移行確率演算および前方確率演算を行う。
結合確率演算器6は、(i−1)N/MからiN/M−1の前方確率演算と並行して、後方確率演算結果を後方確率演算器224から得て、該後方確率と前方確率を用いて結合確率演算を行う。このとき、後方確率演算器224は、後方確率RAM223に記憶されている値は、その値を結合確率演算器226に出力し、記憶されてない値は、MAP部#1と同様の手法で再計算を行い、再計算結果を結合確率演算器226に出力する。事後確率演算器227及び外部情報尤度演算器228はそれぞれ事後確率演算、外部情報尤度演算を行う。
なお、前方確率を(i−1)N/Mから行わず、(i−1)N/M−Δから行う理由は以下の通りである。前方確率演算は時刻N/Mでの確率を演算するために、時刻N/M−1での確率をもとに演算する。このためN/M−1での前方確率演算が正しくないとN/Mでの前方確率演算が正しく演算できない。そこで時刻N/M−Bでの前方確率演算を初期値として適当なものを使用し、順にN/M−(Δ−1)、N/M−(Δ−2)、N/M−(Δ−3)、…、N/M−2、N/M−1、N/Mを演算する。このように演算することで順に信頼度の高い前方確率演算結果が得られることになる。以降、N/M+1、N/M+2、…は信頼のおけるN/Mがから演算されるため信頼のおける結果となる。
さらに、M番目のMAP部#Mにおいて、移行確率演算器221及び後方確率演算器222はN−1から(M−1)N/Mに向かって、移行確率演算および後方確率演算を行い、後方確率演算器222は、N−1から(M−1)N/Mまでの後方確率演算結果を、1つおきに後方確率RAM223に記憶保持する。
次に、移行確率演算器221及び前方確率演算器225は、(M−1)N/M−ΔからNに向かって移行確率演算および前方確率演算を行う。
結合確率演算器226は、(M−1)N/MからN−1の前方確率演算と並行して、後方確率演算結果を後方確率演算器224から得て、該後方確率と前方確率を用いて結合確率演算を行う。
このとき、後方確率演算器224は、後方確率RAM223に記憶されている値は、その値を結合確率演算器226に出力し、記憶されてない値は、MAP部#1と同様の手法で再計算を行い、再計算結果を結合確率演算器226に出力する。事後確率演算器227及び外部情報尤度演算器228はそれぞれ事後確率演算、外部情報尤度演算を行う。
各MAP部#1〜#Mは、上記MAP復号動作を並列に行い、インタリーブRAM部23は各MAP部の復号結果を内蔵のRAMの予め定められた記憶エリアに記憶し、該RAM部からM組みのデータを所定の順序で同時に読み出し(インタリーブあるいはデインタリーブ)、かかる動作を複数回繰り返すことでターボ復号を行う。
上述した各MAP部の動作は、次のようになる。移行確率演算器221は、受信データを用いて各時間iにおける移行確率演算を行い、移行確率演算結果γ(i)を第1の後方確率演算部222及び第2の後方確率演算部224に入力する。
第1の後方確率演算部222は、Nビット中の所定区間における各時間iにおける後方確率演算を行い、後方確率演算結果をn個おきに後方確率RAM223に格納する。ここに、MAP部#1,#2,#3,・・・,#Mに関して、Nビットの復号対象信号(符号化デ
ータ)は、M個に分割され、各分割データが対応するMAP部で復号され、これらの要素
復号結果がインタリーブRAM部23で結合される。
MAP部#1の後方確率RAM223には、N/M−1から0までの後方確率演算結果のうち、n個(この例では1個)毎に間引きされた後方演算結果β(i)が格納される。例えば、図8に示すように、β(i)及びβ(i+2)が間引きされ、β(i+1),β(i+3),β(i+5),・・・が後方確率RAM223に格納される。
第2の後方確率演算部224は、或る時間iの後方確率演算結果(例えばβ(i))が後方確率RAM223に格納されていない場合に、移行確率演算部221から入力される移行確率γ(i+1)と、後方確率RAM223に格納された、算出対象の演算結果よりも一つ後方の時間における後方確率演算結果β(i+1)とを用いて、後方確率β(i)を再計算して出力する。これにより、結合確率演算器226には、各時間iの後方確率演算結果β(
i)として、後方確率RAM223に格納された後方確率演算結果と、第2の後方確率演
算器224によって再計算された後方確率演算結果との一方が入力される。
前方確率演算部225は、Nビット中の所定区間における各時間iにおける前方確率演算を行い、前方確率演算結果α(i)として結合確率演算器226に入力する。結合確率演算器226は、同時間の前方確率演算結果と後方確率演算結果とを掛け合わせて結合確率演算結果を算出し、事後確率演算器227に入力する。
事後確率演算器227は、従来例1で説明した手法を用いて対数尤度(事後確率L(u1k))を出力する。外部情報尤度演算器228は、事後確率L(u1k)から入力時の事前尤度や通信路値を削除して外部情報尤度Le(u1k)を算出する。外部情報尤度Le(u1k)は、インタリーブRAM23で記憶され、インタリーブされ、次の復号処理において事前尤度L(u1k')として出力され、移行確率演算器221にフィードバックされる。
以上によりターボ復号の第1回目の前半の復号処理(1回のMAP復号)が終了し、次に、受信データyaをインタリーブしたものと前半の復号処理で得られた事前尤度L(u1k')とを新たな受信データya'とみなし、このya'とycとを用いて前述したMAP復号処理を行い、尤度L(u2k)を出力する。これで、1回のターボ復号処理が終了する。
各MAP部#1〜#Mの復号結果は、インタリーブRAM23の所定領域に格納され、所定の順序で同時に読み出され(インタリーブまたはデインタリーブ)され、このような処理が所定回数(例えば8回)繰り返して行われ、得られた事後確率L(u8k)>0であれば復
号結果uk=1が、L(u8k)<0であれば復号結果uk=0が出力される。
なお、Nビットの符号化データがM個に分割されない場合には、複数のMAP部22の
1つのみ(例えば、MAP部#1のみ)が用いられる。この場合、MAP部#1の第1の後方確率演算器222は、時間Nから0に向かって後方確率演算を行い、時間Nから0までの後方確率演算結果を1つおきに後方確率RAM223に格納する。
このように、具体例1の構成では、従来例1に従って処理を行い、後方確率演算結果が後方確率RAM(メモリ)223に書き込まれる。このとき、従来例1では総ての後方確率演算結果が書き込まれる。これに対し、具体例1では、n個おきにしか後方確率演算結果の書き込みが行われない。
また、後方確率演算結果を用いて結合確率演算が行われる際には、後方確率RAM223に書き込まれている箇所については、RAM223から読み出した値を使用して結合確率演算が行われる。これに対し、RAM223に書き込みが行われなかった箇所(例えば
、β(i))については、第2の後方確率演算器224が、RAM223に書き込まれた値(β(i+1))と、前方確率演算を行うための移行確率演算結果(γ(i+1))とを用いて後
方確率演算の再計算を行い、その結果を用いて結合確率演算が行われる。
図12において、後方確率RAM223及び第2の後方確率演算器224が従来例1からの変更点となる。従来例1+4の場合では、後方確率RAMの大きさはM(N/M)からM(N/M/(n+1))となり、1/(n+1)の規模(メモリ量)となる。一方、回路規模の増加量は、M個だけ後方確率演算器(演算器224)が増加することとなる。しかし、nがある程度小さな値であれば、メモリ削減量が後方確率演算器増加量と比較しても大きな値となる為に、ターボ復号装置全体での回路規模削減効果が期待できる。
〈具体例2〉
次に、具体例2として、従来例2に従来例4を適用して高速化を行ったターボ復号装置(従来例2+4)に、本実施形態の方式を適用した場合について説明する。ここでは、説明を簡単化するために、従来例4で1倍速化を行った場合、すなわち、従来例4を適用しない場合を含むものとしている。
図12は、従来例2+4に、本実施形態の方式が適用されたターボ復号装置を示すブロック図である。図12に示すターボ復号装置20Aは、図11に示したターボ復号装置20と共通の構成を有するので、主として異なる構成について説明し、共通の構成については説明を省略する。
図12において、ターボ復号装置20Aでは、Tailビットを含むNビットの復号対象信号(符号化データ)がM個のブロックに分割され、対応するMAP部22(MAP復号
器#1〜#M)において復号処理される。
各MAP部22は、同一の構成を有しており、以下の点で具体例1と異なる。二つの移行確率演算器221A及び221Bが設けられている。また、後方確率RAM223は、第1の記憶領域と、第2の記憶領域とを有している。第1の記憶領域には、従来例2における、離散的な後方確率演算結果(離散β)が記憶される。第2の記憶領域には、従来例2における連続的な後方確率演算結果(連続β)が記憶される。但し、この具体例2では、従来例2において連続的な後方確率演算結果が記憶される部分について、後方確率演算結果がn個おき(例えば1つおき)に記憶される。
具体例2では、情報ビットにTailビットを付加した信号長がNビットであれば、通信路値RAM部21は、該信号長をM個に分割し、MAP部#1,#2,...,#Mのそれぞれに分割データを同時に入力する。MAP部#1,#2,...,#Mは、それぞれ従来例2のMAP復号方法に従って、N/Mビットずつの分割データ0〜N/M, N/M
〜2N/M,..,(M−1)N/M〜Nに対して同時に(並列に)MAP復号処理を行う。
図7を参考にして、具体例2の動作例を説明する。動作例において従来例2+4と異なる点は、従来例2で連続的に後方確率演算結果が記憶される区間(図7におけるL1〜0
,L1〜N/M,・・・,L1〜N(M−1)/Mの区間)で、n個おきに後方確率演算結
果が記憶され、記憶されていない後方確率演算結果が後方確率演算器224によって再計算されることである。
図12に示す1番目のMAP部#1では、次の処理が行われる。
〈1〉移行確率演算器221A及び後方確率演算器222は、N/M+Δから0に向かって、移行確率演算および後方確率演算を行い、N/M−1,N/M−L−1,N/M−2L−1,N/M−3L−1,…,2L−1における離散的な後方確率演算結果(L毎の離散的な後方確率β:図7中のMAP#1におけるLx,・・・,L3,L2に相当)を後
方確率RAM223の第1の記憶領域に記憶保持する。また、L−1から0までの後方確率演算結果(図7中のMAP#1のL1〜0の後方確率演算結果に相当)を1つおきに後方確率RAM222の第2の記憶領域に記憶保持する。
〈2〉移行確率演算器221B及び前方確率演算器225は、0からL−1(L1−1)に向かって移行確率演算および前方確率演算を行い、結合確率演算器226は後方確率演算結果を後方確率演算器224から受け取って結合確率演算を行い、事後確率演算器227、外部情報尤度演算器228はそれぞれ事後確率演算、外部情報尤度演算を行う。
このとき、結合確率演算部226は、後方確率演算結果が後方確率RAM223の第1の記憶領域に記憶されている場合には、その記憶された値を後方確率演算器224から受け取る。これに対し、後方確率演算結果が後方確率RAM223の第1の記憶領域に格納されていない場合には、後方確率演算器224が、後方確率RAM223に記憶された後方確率演算結果と、その時の移行確率演算結果とから所望の後方確率演算結果を再計算し、この再計算された後方確率演算結果が結合確率演算器226に入力される(図8,9,1
0参照)。
〈3〉0からL−1(L1−1)までのMAP復号処理の終了後、又はこのMAP復号処理と並列に、後方確率演算器222は、2L−1(図7中のMAP#1のL2に相当)の後方確率演算結果を第1の記憶領域から読み出し、これを初期値として、移行確率演算器221A及び後方確率演算器222は2L−1からL(図7中のMAP#1のL2からL1
に相当)に向かって、移行確率演算および後方確率演算を行いながら後方確率演算結果を
1つおきに第2の記憶領域に記憶保持する。
〈4〉次に、移行確率演算器221B及び前方確率演算器225はLから2L−1に向かって(図7中のL1→L2に相当)移行確率演算および前方確率演算を行い、結合確率演算器226は後方確率演算結果を、後方確率演算器224から受け取って結合確率演算を行い、事後確率演算器227、外部情報尤度演算器228はそれぞれ事後確率演算、外部情報尤度演算を行う。このとき、後方確率演算器224は、後方確率演算結果が後方確率RAM223の第2の記憶領域に記憶されている場合には、その値を結合確率演算器226に与える。これに対し、後方確率演算結果が第2の記憶領域に記憶されていない場合には、再計算で得た後方確率演算結果を結合確率演算器226に与える。
〈5〉上述した〈3〉及び〈4〉と同様の処理を、L単位で繰り返しながら0からN/M−1までの外部情報尤度演算を行う。
また、i番目のMAP復号器#iでは、次の処理が行われる。
〈1〉移行確率演算器221A及び後方確率演算器222は、iN/M+Δから(i−1)N/Mに向かって(図7中のMAP#2の2N/M+Δ→N/Mに相当)、移行確率演算および後方確率演算を行い、iN/M−1、iN/M−L−1、iN/M−2L−1、iN/M−3L−1,・・・,(i−1)N/M+2L−1の離散的な後方確率演算結果(L毎の離散的な後方確率β:図7中のMAP#2のLx,・・・,L3,L2に相当)を
後方確率RAM223の第1の記憶領域に記憶保持する。また、(i−1)N/M+L−1から(i−1)N/Mまでの後方確率演算結果(L1からN/Mまでの後方確率演算結
果に相当)を1つおきに後方確率RAM223の第2の記憶領域に記憶保持する。
〈2〉次に、移行確率演算器221B及び前方確率演算器225は、(i−1)N/M−Δから(i−1)N/Mに向かって(図7中のMAP#2の2N/M−Δ→N/Mに相
当)、移行確率演算および前方確率演算を行い、ついで(i−1)N/Mから(i−1)
N/M+L−1に向かって(N/M→L1に相当)、移行確率演算および前方確率演算を行う。
結合確率演算器226は後方確率演算結果を後方確率演算器224から受け取って結合確率演算を行い、事後確率演算器227、外部情報尤度演算器228はそれぞれ事後確率演算、外部情報尤度演算を行う。このとき、後方確率演算器224は、MAP部#1の後方確率演算器224と同様の処理を行う。
〈3〉(i−1)N/Mから(i−1)N/M+L−1まで(2N/MからN/Mまで
に相当)のMAP復号処理の終了後、又は並列に、後方確率演算器222は、(i−1)
N/M+2L−1の後方確率演算結果(図7中のL2に相当)を第1の記憶領域から読み出し、これを初期値として、移行確率演算器221A及び後方確率演算器222は(i−1)N/M+2L−1から(i−1)N/M+Lに向かって(L2→L1に相当)移行確率演算および後方確率演算を行いながら後方確率演算結果を第2の記憶領域に保持する。
次に、移行確率演算器221B及び前方確率演算器225は、(i−1)N/M+Lから(i−1)N/M+2L−1に向かって(L1→L2に相当)、移行確率演算および前方確率演算を行い、結合確率演算器226は後方確率演算結果を後方確率演算器224から受け取って結合確率演算を行い、事後確率演算器227、外部情報尤度演算器228は、それぞれ事後確率演算、外部情報尤度演算を行う。
〈4〉以後、〈3〉と同様にL単位で繰り返しながら (i−1)N/MからiN/M−1まで(L2→2N/Mに相当)の外部情報尤度演算を行う。
さらに、M番目のMAP復号器#Mでは、以下の動作が行われる。
〈1〉移行確率演算器221A及び後方確率演算器222は、N−iから(M−1)N/Mに向かって、(図7中のMAP#MのN→N(M−1)/Mに相当)、移行確率演算および後方確率演算を行い、N−L−1、N−2L−1、N−3L−1、…、(M−1)N/M+2L−1の離散的な後方確率演算結果(後方確率β:図7中のMAP#MのLx,・・・,L3,L2に相当)を後方確率RAM223の第1の記憶領域に記憶保持すると共に、(M−1)N/M+L−1から(M−1)N/Mまでの後方確率演算結果(図7中のM
AP#MのL1からN(M−1)/Mまでの後方確率演算結果に相当)を、1つおきに後方
確率RAM223の第2の記憶領域に記憶保持する。
〈2〉次に、移行確率演算器221B及び前方確率演算器225は、(M−1)N/M−Bから(M−1)N/Mに向かって(N(M−1)/M−Δ→N(M−1)/Mに相当)移行確率演算および前方確率演算を行い、ついで(M−1)N/Mから(M−1)N/M+L−1に向かって(N(M−1)/M→L1に相当)、移行確率演算および前方確率演算を行う。結合確率演算器226は後方確率演算結果を後方確率演算器224から受け取って結合確率演算を行い、事後確率演算器7、外部情報尤度演算器8はそれぞれ事後確率演算、外部情報尤度演算を行う。
〈3〉(M−1)N/Mから(M−1)N/M+L−1まで((M−1)N/M→L1)のMAP復号処理の終了後、又は並列に、後方確率演算器222は、(M−1)N/M+2L−1の後方確率演算結果(L2の後方確率演算結果に相当)を第1の記憶領域から読み出し、これを初期値として、移行確率演算器221A及び後方確率演算器222は、(M−1)N/M+2L−1から(M−1)N/M+Lに向かって(L2→L1に相当)、移行確率演算および後方確率演算を行いながら後方確率演算結果を第2の記憶領域に記憶保持する。
次に、移行確率演算器1及び前方確率演算器3は、(M−1)N/M+Lから(M−1)N/M+2L−1に向かって(L1→L2に相当)、移行確率演算および前方確率演算を行い、結合確率演算器226は後方確率演算結果を後方確率演算器224から受け取って結合確率演算を行い、事後確率演算器227、外部情報尤度演算器228は、それぞれ事後確率演算、外部情報尤度演算を行う。
〈4〉 以後、〈3〉と同様にL単位で繰り返しながら (M−1)N/MからN−1まで(L2→N)の外部情報尤度演算を行う。
各MAP部#1,#2,・・・,#Mは、上記MAP復号動作を並列に行い、各復号結果をインタリーブRAM部23の予め定められた記憶エリアに記憶し、該RAM部23から所定の順序で読み出すことによりインタリーブあるいはデインタリーブし、かかる動作を複数回繰り返すことでターボ復号を行う。
具体例2によれば、従来例2に従って処理を行い、後方確率演算結果を後方確率RAM223の第2の記憶領域に書き込む場合に、後方確率演算結果をn個おきに書き込み、従来例2のように、連続的な後方確率演算結果の書き込みを行わない。後方確率演算結果を用いて、結合確率演算を行う際には、後方確率RAM223に書き込まれている箇所については、後方確率RAM223から読み出した値を使用して結合確率演算が行われる。これに対し、後方確率RAM223に書き込みが行われなかった箇所については、RAM223に書き込まれた値と、前方確率演算を行う際に使用される移行確率結果とを用いて後方確率演算の再計算を行い、その結果を用いて結合確率演算が行われる。
図12において、後方確率RAM223及び後方確率演算器224が従来例2からの変更点となる。後方確率RAM223のメモリサイズは、N/L+2MLから、N/L+ML/(n+1)となり、Lごとに離散的に保管する部分に関しては同等で、L区間を連続で保管する部分に関しては1/2(n+1)となる。一方、回路規模の増加量は、M個だけ後方確率演算器が増加することとなるが、nがある程度小さな値であれば、メモリ削減量が後方確率演算器増加量と比較しても大きな値となる為に、ターボ復号装置全体での回路規模削減効果が期待できる。
なお、符号化データuの分割が行われない場合には、複数のMAP部22の1つ(例え
ば、MAP部#1)のみを用いてターボ復号処理が行われる。この場合、図5に示すよう
なタイムチャートに従って、復号処理が行われる。但し、連続的な後方確率演算結果(L
1から0までの後方確率演算結果等)がn個おきに後方確率RAMに記憶され、記憶され
ていない箇所については、前方確率演算時に再計算され、結合確率演算に使用される。
〈具体例3〉
次に、具体例3として、従来例3に従来例4を適用して高速化を行ったターボ復号装置(従来例3+4)に、本実施形態の方式を適用した場合について説明する。ここでは、説明を簡単化するために、従来例4で1倍速化を行った場合、すなわち、従来例4を適用しない場合を含むものとしている。
図13は、従来例3+4に、本実施形態の方式が適用されたターボ復号装置を示すブロック図である。図13に示すターボ復号装置20Aは、図11に示したターボ復号装置20と共通の構成を有するので、主として異なる構成について説明し、共通の構成については説明を省略する。
図13に示すターボ復号装置20Bは、以下の点でターボ復号装置20(図11)と異なる。ターボ復号装置20Bは、複数のMAP部22(MAP部#1〜#M)を有し、各MAP部は同じ構成を有している。MAP部は、3つの移行確率演算器221A,221B及び221Cと、3つの後方確率演算器222A,222B及び224とを有し、移行確率
演算器221Aは後方確率演算器222Aと連携し、移行確率演算器222Bは後方確率演算器222Bと連携し、移行確率演算器222Cは後方確率演算器224及び前方確率演算器225と連携する。
具体例3では、情報ビットにTailビットを付加した信号長がNビットであれば、通信路値RAM部21は、該信号長をM個に分割し、MAP部#1,#2,・・・,#Mのそれぞれに分割データを同時に入力する。MAP部#1,#2,・・・,#Mはそれぞれ、従来例3のMAP復号方法に従ってN/Mビットずつの分割データ0〜N/M, N/M〜2N/M,・・・,(M−1)N/M〜Nに対して同時に(並列に)MAP復号処理を行う。
1番目のMAP部#1では、次の処理が行われる。前提として、分割データ0〜N/Mが、Lずつの複数のブロック(0〜L1,L1〜L2,L2〜L3,・・・,Lx〜N/
M)に分割され、Lを単位とした復号処理が行われる。
〈1〉移行確率演算器221A及び後方確率演算器222Aは、L2(=L+Δ=2L、ただし、Δ=L)から0に向かって、移行確率演算および後方確率演算を行い、L−1から0までの後方確率演算結果をn個おき(例えばn=1)に後方確率RAM223に記憶保持する。なお、L2(=L+B=2L)からL1(=L)までの後方確率は信頼がないため捨てる。
〈2〉次に、移行確率演算器221C及び前方確率演算器225は、0からL−1(L
1−1)に向かって移行確率演算および前方確率演算を行い、結合確率演算器226はこ
の前方確率と後方確率RAM223から読み出した後方確率とを用いて結合確率演算を行う。
このとき、結合確率演算に用いる後方確率演算結果が後方確率RAM223に格納されていない場合には、後方確率演算器224がその再計算を図8〜図10にて説明した手法を用いて行い、結合確率演算器226は、再計算された後方確率と、これに対応する前方確率とを用いて結合確率を演算する。事後確率演算部227及び外部情報尤度演算部228は、それぞれ事後確率演算、外部情報尤度演算を行う。
〈3〉後方確率演算器222Aによる後方確率演算中に(例えば、L2からL1までの
後方確率演算が終了した時点で)、移行確率演算器221B及び後方確率演算器222B
は、L3(=2L+B=3L)からL1(=L)に向かって移行確率演算および後方確率演算を行い、2L−1(L2−1)からL(L1)までの後方確率演算結果をn個おき(例え
ばn=1)に後方確率RAM224に記憶保持する。なお、L3(=2L+B=3L)か
らL2(=2L)までの後方確率は信頼がないため捨てる。
〈4〉上記〈3〉の終了後、移行確率演算器221C及び前方確率演算器225は、L(L1)から2L−1(L2−1)に向かって移行確率演算および前方確率演算を行い、結合確率演算器226は、算出された前方確率と後方確率RAM223から読み出した後方確率,又は後方確率演算器224で再計算された後方確率とを用いて結合確率演算を行う。事後確率演算部227及び外部情報尤度演算部228はそれぞれ事後確率演算、外部情報尤度演算を行う。
以後、同様にL単位で繰り返しながら0からN/M−1までの外部情報尤度演算を行う。
また、i番目のMAP部#i(例えばi=2)では、N/M〜2N/Mの分割データを対象として、次の処理が行われる。前提として、分割データN/M〜2N/Mが、Lずつの複数のブロック(0〜L1,L1〜L2,L2〜L3,・・・,Lx〜2N/M)に分割され、Lを単位とした復号処理が行われる。
〈1〉移行確率演算器221A及び後方確率演算器222Aは(i−1)N/M+L+Δから(i−1)N/Mに向かって(L2→0)、移行確率演算および後方確率演算を行い、(i−1)N/M+L−1から(i−1)N/Mまでの後方確率演算結果をn個(例え
ばn=1)おきに後方確率RAM223に記憶、保持する。なお、(i−1)N/M+L
+Δから(i−1)N/M+Lまで(L2〜L1)の後方確率は信頼がないため捨てる。
〈2〉次に、移行確率演算器221C及び前方確率演算器225は、(i−1)N/M−Δから(i−1) N/Mに向かって(N/M−Δ→N/M)、移行確率演算および前方確率演算を行い、ついで、(i−1)N/Mから(i−1)N/M+L−1(N/M→L
1)に向かって移行確率演算および前方確率演算を行う。
また、結合確率演算器226は、(i−1)N/Mから(i−1)N/M+L−1の前方確率と、後方確率RAM223から読み出された後方確率又は後方確率演算器224で再計算された後方確率とを用いて結合確率演算を行い、事後確率演算部227及び外部情報尤度演算部228はそれぞれ事後確率演算、外部情報尤度演算を行う。
〈3〉後方確率演算器222Aの演算中(例えば、L2〜L1の演算の終了時点)で、移行確率演算器221B及び後方確率演算器222Bは、(i−1)N/M+2L+Δから(i−1)N/M+Lに向かって(L3→L1)、移行確率演算および後方確率演算を行い、(i−1)N/M+2L−1から(i−1) N/M+Lまで(L2〜L1)の後方確率演算結果をn個おきに(例えばn=1)後方確率RAM223に記憶、保持する。L3からL2までの後方確率は捨てる。
〈4〉次に、移行確率演算器221C及び前方確率演算器225は、(i−1)N/M+Lから(i−1)N/M+2L−1に向かって(L1→L2)、移行確率演算および前方確率演算を行い、結合確率演算器226は算出された前方確率と、後方確率RAM223に記憶された後方確率又は後方確率演算器224で再計算された後方確率とを用いて結合確率演算を行い、事後確率演算部227及び外部情報尤度演算部228はそれぞれ事後確
率演算、外部情報尤度演算を行う。
以後、同様にL単位で繰り返しながら (i−1)N/MからiN/M−1までの外部情報尤度演算を行う。
さらに、M番目のMAP部#Mでは、N(M−1)/M〜Nの分割データを対象として、次の処理が行われる。前提として、分割データN(M−1)/M〜Nが、所定長Lずつの複数のブロック(0〜L1,L1〜L2,L2〜L3,・・・,Lx〜N)に分割され、Lを単位とした復号処理が行われる。
〈1〉移行確率演算器221A及び後方確率演算器222Aは、(M−1)N/M+L+Δから(M−1)N/Mに向かって(L2→0)、移行確率演算および後方確率演算を行い、(M−1)N/M+L−1から(M−1)N/Mまでの後方確率演算結果をn個(例
えばn=1)おきに後方確率RAM223に記憶、保持する。なお、(M−1)N/M+
L+Δから(M−1)N/M+Lまでの後方確率は信頼がないため捨てる。
〈2〉次に、移行確率演算器221C及び前方確率演算器225は、(M−1)N/M−Δから(M−1)N/Mに向かって移行確率演算および前方確率演算を行い、ついで、(M−1)N/Mから(M−1)N/M+L−1に向かって((M−1)N/M→L1)、移行確率演算および前方確率演算を行う。また、結合確率演算器226は(M−1)N/Mから(M−1)N/M+L−1の前方確率と、後方確率RAM223に記憶された後方確率又は後方確率演算器224で再計算された後方確率とを用いて結合確率演算を行う。事後確率演算部227及び外部情報尤度演算部228はそれぞれ事後確率演算、外部情報尤度演算を行う。
〈3〉後方確率演算器222Aの演算中(例えば、L2〜L1の演算の終了時点)で、移行確率演算器221B及び後方確率演算器222Bは、(M−1)N/M+2L+Bから(M−1)N/M+Lに向かって(L3→L1)、移行確率演算および後方確率演算を行い、(M−1)N/M+2L−1から(M−1)N/M+Lまでの後方確率演算結果をn個(例えばn=1)おきに後方確率RAM223に記憶、保持する。L3からL2までの後方確率は捨てる。
〈4〉次に、移行確率演算器221C及び前方確率演算器225は(M−1)N/M+Lから(M−1)N/M+2L−1に向かって(L1→L2)、移行確率演算および前方確率演算を行う。結合確率演算器226は、算出された前方確率と後方確率(記憶された後
方確率と再計算された後方確率との一方)とを用いて結合確率演算を行う。事後確率演算
部227及び外部情報尤度演算部228はそれぞれ事後確率演算、外部情報尤度演算を行う。
以後、同様にL単位で繰り返しながら(M−1)N/MからN−1までの外部情報尤度演算を行う。
各MAP部#1,#2,・・・,#Mは、上記MAP復号動作を並列に行い、各復号結果をインタリーブRAM部23の予め定められた記憶エリアに記憶し、該RAM部23から所定の順序で読み出すことによりインタリーブあるいはデインタリーブし、かかる動作を複数回繰り返すことでターボ復号を行う。
具体例3の構成では、後方確率演算結果をn個おきに後方確率RAM224に書き込む。後方確率演算結果を用いて結合確率演算を行う際には、後方確率RAM224に書き込まれている箇所については、そこから読み出した値を使用し、書き込みが行われなかった
箇所については、RAM224に書き込まれた値と、前方確率演算を行う際に使用される移行確率結果とを用いて後方確率演算の再計算を行い、その結果が結合確率演算に使用される。
図13において、後方確率RAM223及び後方確率演算器224が従来例3+4からの変更点となる。後方確率RAM223のメモリサイズは、2MLからML/(n+1)となり、1/2(n+1)となる。一方、回路規模の増加量は、M個だけ後方確率演算器が増加することとなる。しかし、nがある程度小さな値であれば、メモリ削減量が後方確率演算器増加量と比較しても大きな値となる為に、ターボ復号装置全体での回路規模削減効果が期待できる。
なお、本発明の実施形態において、nが2以上の場合、例えば、メモリに記憶された後方確率β(i+1)から再計算した後方確率β(i)を用いて、次以降の後方確率β(i−1),β(i+2)・・・が再計算されるようにすることができる。
〔その他〕
上述した実施形態は、以下の発明を開示する。以下の発明は、本発明の目的を逸脱しない範囲で、必要に応じて組み合わせることができる。
(付記1) ターボ符号化されたNビットの符号化データに対する後方確率演算を行う後方確率演算部と、
Nビット中の所定区間に関する連続的な複数の後方確率演算結果をn個おきに記憶する記憶部と、
前記符号化データに対する前方確率演算を行う前方確率演算部と、
前方確率演算結果と後方確率演算結果とを用いた結合確率演算を通じて符号化データの復号結果を算出する復号結果算出部とを含み、
前記復号結果算出部は、前記前方確率演算結果と、前記記憶部に記憶された後方確率演算結果及び前記後方確率演算部によって再計算された後方確率演算結果とを用いて前記結合確率演算を行うターボ復号装置。(1)
(付記2) 前記結合確率演算は、前記前方確率演算と並列に実行され、
前記復号結果算出部は、前記前方確率演算部で算出されるi番目(i=1〜N)の前方確率演算結果に対応するi番目の後方確率演算結果が前記記憶部に記憶されていれば、この後方確率演算結果を用いてi番目の結合確率演算を行い、
i番目の後方確率演算結果が前記記憶部に記憶されていなければ、前記後方確率演算部が、i+1番目の前方確率演算のために算出されたi+1番目の移行確率演算結果と前記記憶部に記憶されているi+1番目の後方確率演算結果とからi番目の後方確率を再計算し、前記復号結果算出部が前記再計算されたi番目の後方確率演算結果を用いてi番目の結合確率演算を行う付記1記載のターボ復号装置。(2)
(付記3) ターボ符号化されたNビットの符号化データに対する後方確率演算を行う後方確率演算部と、
後方確率演算結果を記憶する記憶部と、
前記符号化データに対する前方確率演算を行う前方確率演算部と
後方確率演算結果と前方確率演算結果とを用いた結合確率演算を通じて符号化データの復号結果を算出する復号結果算出部とを含み、
前記後方確率演算部は、N番目から1番目に向かって後方確率演算を行い、N番目から1番目の後方確率演算結果をn個おきに前記記憶部に記憶し、
前記前方確率演算部が1番目からN番目に向かって前方確率演算を行い、
前記復号結果算出部は、i番目の前方確率演算結果とi番目の後方確率演算結果とを用いてi番目の結合確率演算を行うときに、i番目の後方確率演算結果が前記記憶部に記憶されていれば、その後方確率演算結果を用いてi番目の結合確率演算を行い、そうでなけ
れば、前記後方確率演算部によって再計算されるi番目の後方確率演算結果を用いてi番目の結合確率演算を行い、1番目からN番目までの結合確率演算を通じて前記符号化データの復号結果を出力する
ターボ復号装置。
(付記4) ターボ符号化されたNビットの符号化データを所定長L毎に復号するターボ復号装置において、
符号化データに対する後方確率演算を行う後方確率演算部と、
後方確率演算結果を記憶する記憶部と、
符号化データに対する前方確率演算を行う前方確率演算部と
後方確率演算結果と前方確率演算結果とを用いた結合確率演算を通じて符号化データの復号結果を算出する復号結果算出部とを含み、
前記後方確率演算部は、N番目から1番目へ向かって後方確率演算を行い、N番目からL+1番目までの区間においてL毎に離散的な後方確率演算結果を前記記憶部に記憶するとともに、1番目からL番目までの後方確率演算結果をn個おきに前記記憶部に記憶し、
前記前方確率演算部が1番目からL番目までの前方確率演算を行い、
前記復号結果算出部は、1番目からL番目までの区間内に位置するi番目の前方確率演算結果とi番目の後方確率演算結果とを用いてi番目の結合確率演算を行うときに、i番目の後方確率演算結果が前記記憶部に記憶されていれば、その後方確率演算結果を用いてi番目の結合確率演算を行い、そうでなければ、前記後方確率演算部によって再計算されるi番目の後方確率演算結果を用いてi番目の結合確率演算を行い、1番目からL番目までの区間の復号結果を出力し、
前記後方確率演算部は、L+1番目から2L番目の区間について前記記憶部に記憶された離散的な後方確率演算結果を用いて後方確率演算を行い、L+1番目から2L番目までの後方確率演算結果をn個おきに前記記憶部に記憶し、
前記前方確率演算部がL+1番目から2L番目までの前方確率演算を行い、
前記復号結果算出部は、L+1番目から2L番目までの区間内に位置するi番目の前方確率演算結果とi番目の後方確率演算結果とを用いてi番目の結合確率演算を行うときに、i番目の後方確率演算結果が前記記憶部に記憶されていれば、その後方確率演算結果を用いてi番目の結合確率演算を行い、そうでなければ、前記後方確率演算部によって再計算されるi番目の後方確率演算結果を用いてi番目の結合確率演算を行い、L+1番目から2L番目までの区間の復号結果を出力し、
このような区間毎の復号処理を残りの区間について行う
ターボ復号装置。
(付記5) ターボ符号化されたNビットの符号化データを所定長L毎に復号するターボ復号装置において、
符号化データに対する後方確率演算を行う第1及び第2の後方確率演算部と、
後方確率演算結果を記憶する記憶部と、
符号化データに対する前方確率演算を行う前方確率演算部と
後方確率演算結果と前方確率演算結果とを用いた結合確率演算を通じて符号化データの復号結果を算出する復号結果算出部とを含み、
前記第1の後方確率演算部は、2L番目から1番目に向かって後方確率演算を行い、L番目から1番目までの後方確率演算結果をn個おきに前記記憶部に記憶し、
前記前方確率演算部は、1番目からL番目までの前方確率演算を行い、
前記復号結果算出部は、1番目からL番目までの区間内に位置するi番目の前方確率演算結果とi番目の後方確率演算結果とを用いてi番目の結合確率演算を行うときに、i番目の後方確率演算結果が前記記憶部に記憶されていれば、その後方確率演算結果を用いてi番目の結合確率演算を行い、そうでなければ、前記後方確率演算部によって再計算されるi番目の後方確率演算結果を用いてi番目の結合確率演算を行い、1番目からL番目ま
での区間に対する復号結果を算出し、
前記第2の後方確率演算部は、前記第1の後方確率演算部による2L番目から1番目までの後方確率演算中に、3L番目からL+1番目へ向かって後方確率演算を開始し、2L番目からL+1番目までの後方確率演算結果をn個おきに前記記憶部に記憶し、
前記第2の移行確率演算部及び前記前方確率演算部は、L+1番目から2L番目までの移行確率演算及び前方確率演算を行い、
前記復号結果算出部は、L+1番目から2L番目までの区間内に位置するi番目の前方確率演算結果とi番目の後方確率演算結果とを用いてi番目の結合確率演算を行うときに、i番目の後方確率演算結果が前記記憶部に記憶されていれば、その後方確率演算結果を用いてi番目の結合確率演算を行い、そうでなければ、前記後方確率演算部によって再計算されるi番目の後方確率演算結果を用いてi番目の結合確率演算を行い、L+1番目から2L番目までの区間に対する復号結果を算出し、
このような区間毎の復号結果算出処理を残りの区間について行う
ターボ復号装置。
(付記6) ターボ符号化された符号化データを要素復号の繰り返しを通じて復号するターボ復号装置において、
Nビットの符号化データがM個に分割された分割データの夫々に要素復号を施すM個の要素復号器と、
M個の要素復号結果を纏めてインタリーブ、デインタリーブを交互に繰り返すインタリーブ/デインタリーブ部とを備え、
各要素復号器は、
N/Mの分割データに対する後方確率演算を行う後方確率演算部,
N/Mの分割データに対するN/M個の後方確率演算結果をn個おきに記憶する記憶部,
N/Mの分割データに対して前方確率演算を行う前方確率演算部,及び
N/Mの分割データに対するN/M個の前方確率演算結果と、前記記憶部からの読み出し、及び前記後方確率演算部の再計算によって得られるN/M個の後方確率演算結果とを用いた結合確率演算を通じてN/Mの分割データの要素復号結果を出力する復号結果算出部と
を含む
ターボ復号装置。(3)
(付記7) ターボ符号化された符号化データを要素復号の繰り返しを通じて復号するターボ復号装置において、
Nビットの符号化データがM個に分割された分割データの夫々に要素復号を施すM個の要素復号器と、
M個の要素復号結果を纏めてインタリーブ、デインタリーブを交互に繰り返すインタリーブ/デインタリーブ部とを備え、
各要素復号器は、
N/Mの分割データに対する後方確率演算を行う後方確率演算部,
N/Mの分割データを所定長L毎にX個の区間に分割し、X番目から2番目までの各区間の後方確率演算結果をLの間隔を空けて離散的に記憶するともに、1番目の区間に対するL個の後方確率演算結果をn個おきに記憶する記憶部,
N/Mの分割データに対する前方確率演算を行う前方確率演算部,及び
N/Mの分割データの各区間について、L個の前方確率演算結果と、これに対応するL個の後方確率演算結果とを用いた結合確率演算を通じて各区間の要素復号結果を算出する復号結果算出部とを含み、
前記復号結果算出部は、前方確率演算部で算出された1番目の区間のL個の前方確率演算結果と、前記記憶部からの読み出し及び前記後方確率演算部の再計算によって得られる1番目の区間のL個の後方確率演算結果とを用いた結合確率演算を通じて1番目の区間に
対する要素復号結果を出力し、
前記後方確率演算部は、次の区間に関して前記記憶部に記憶された後方確率演算結果を用いて、次の区間に対する後方確率演算を行い、次の区間に関するL個の後方確率演算結果を算出し、これらのL個の後方確率演算結果をn個おきに前記記憶部に記憶し、
前記前方確率演算部は、次の区間に対する前方確率演算を行い、前記復号結果算出部は、前記前方確率演算部で算出された次の区間のL個の前方確率演算結果と、前記記憶部からの読み出し及び前記後方確率演算部の再計算によって得られる次の区間に関するL個の後方確率演算結果とを用いた結合確率演算を通じて次の区間に対する要素復号結果を出力し、
前記後方確率演算部,前記前方確率演算部,及び前記復号結果算出部は、残りの区間があれば、残りの区間について上記処理を繰り返し行う
ターボ復号装置。(4)
(付記8) ターボ符号化された符号化データを要素復号の繰り返しを通じて復号するターボ復号装置において、
Nビットの符号化データがM個に分割された分割データの夫々に要素復号を施すM個の要素復号器と、
M個の要素復号結果を纏めてインタリーブ、デインタリーブを交互に繰り返すインタリーブ/デインタリーブ部とを備え、
各要素復号器は、
N/Mの分割データに対する後方確率演算を行う後方確率演算部,
後方確率演算結果を記憶する記憶部,
N/Mの分割データに対する前方確率演算を行う前方確率演算部,及び
前方確率演算結果と後方確率演算結果とを用いた結合確率演算を通じて要素復号結果を算出する復号結果算出部とを含み、
前記後方確率演算部は、N/Mの分割データを所定長L毎に複数の区間に分割し、2L番目から1番目までの後方確率演算を行い、L番目から1番目までの後方確率演算結果をn個おきに前記記憶部に記憶し、
前記前方確率演算部は、N/Mの分割データの1番目からL番目の前方確率演算を行い、
前記復号結果算出部は、1番目からL番目の前方確率演算結果と、前記記憶部からの読み出し及び前記後方確率演算部による再計算によって得られる1番目からL番目の後方確率演算結果とを用いて結合確率演算を行い、1番目からL番目までの区間に関する要素復号結果を出力し、
前記後方確率演算部は、2L番目から1番目までの後方確率演算中に、3L番目からL+1番目までの後方確率演算を行い、2L番目からL+1番目までの後方確率演算結果をn個おきに前記記憶部に記憶し、
前記前方確率演算部は、N/Mの分割データのL+1番目から2L番目の前方確率演算を行い、
前記復号結果算出部は、L+1番目から2L番目の前方確率演算結果と、前記記憶部からの読み出し及び前記後方確率演算部による再計算によって得られるL+1番目から2L番目の後方確率演算結果とを用いて結合確率演算を行い、L+1番目から2L番目までの区間に関する要素復号結果を出力し、
前記後方確率演算部,前記前方確率演算部,及び前記復号結果算出部は、残りの区間があれば、残りの区間について上記処理を繰り返し行う
ターボ復号装置。(5)
ターボ符号器及びターボ復号器を含む通信システムの例を示す図である。 ターボ復号器(ターボ復号装置)の構成例を示す図である。 MAPを適用したターボ復号器の構成例を示す図である。 従来例1における1回のMAP復号処理を示すタイミングチャートである。 従来例2の方式による1回のMAP復号処理を示すタイミングチャートである。 従来例3の方式による1回のMAP復号処理を示すタイミングチャートである。 従来例4の方式を従来例2に適用した場合のタイミングチャートである。 本発明の実施形態に係る結合確率演算処理の概念図である。 本発明の実施形態において追加される回路部のブロックを示す。 メモリに保管されなかった箇所の後方確率の再演算のタイミングチャートを示す。 本発明の実施形態の具体例1におけるターボ復号装置の構成例を示す。 本発明の実施形態の具体例2におけるターボ復号装置の構成例を示す。 本発明の実施形態の具体例3におけるターボ復号装置の構成例を示す。
符号の説明
9・・・移行確率演算器
10・・・後方確率演算器
11
20,20A,20B・・・ターボ復号装置
21・・・通信路値RAM部
22・・・MAP部(MAP復号器:要素復号器)
23・・・インタリーブRAM部(インタリーブ/デインタリーブ部)
221,221A,221B,221C・・・移行確率演算器
222,222A,222B,224・・・後方確率演算器
223・・・後方確率RAM(記憶部)
225・・・前方確率演算器
226・・・結合確率演算器
227・・・事後確率演算器
228・・・外部尤度情報演算器

Claims (4)

  1. ターボ符号化されたNビットの符号化データに対する後方確率演算を行う後方確率演算部と、
    Nビット中の所定区間に関する連続的な複数の後方確率演算結果をn+1サイクルに1回の書き込み動作によってn個おきに記憶するとともに、n+1サイクルに1回の読み出し動作によって1つの後方確率演算結果が読み出される記憶部と、
    前記符号化データに対する前方確率演算を行う前方確率演算部と、
    前記前方確率演算部で算出されるi番目(1≦i≦N)の前方確率演算結果に対応するi番目の後方確率演算結果が前記記憶部に記憶されておらず、且つi+1番目の後方確率演算結果が前記記憶部に記憶されている場合に、前記記憶部からの前記i+1番目の後方確率演算結果が読み出されるn+1サイクル中に、i+1番目の前方確率演算のために算出されたi+1番目の移行確率演算結果と前記記憶部に記憶されているi+1番目の後方確率演算結果とからi番目の後方確率を再計算する第2の後方確率演算部と、
    前方確率演算結果と後方確率演算結果とを用いた結合確率演算を通じて符号化データの復号結果を算出する復号結果算出部とを含み、
    前記i+1番目の後方確率が前記第2の後方確率演算部で再計算される場合に、前記前方確率演算部で演算されたi番目の前方確率演算結果と、前記第2の後方確率演算部で再計算されたi番目の後方確率演算結果とが前記復号結果算出部に入力され、その後に前記前方確率演算部で演算されたi番目の前方確率演算結果と、前記記憶部から読み出されたi番目の後方確率演算結果とが前記復号結果算出部に入力されるように、前記復号結果算出部に対する前記前方確率演算結果及び前記後方確率演算結果の入力タイミングを調整する位相調整器と、
    を含むターボ復号装置。
  2. ターボ符号化された符号化データを要素復号の繰り返しを通じて復号するターボ復号装置において、
    Nビットの符号化データがM個に分割された分割データの夫々に要素復号を施すM個の要素復号器と、
    M個の要素復号結果を纏めてインタリーブ、デインタリーブを交互に繰り返すインタリーブ/デインタリーブ部とを備え、
    各要素復号器は、
    N/Mの分割データに対する後方確率演算を行う後方確率演算部,
    N/Mの分割データに対するN/M個の後方確率演算結果をn+1サイクルに1回の書き込み動作によってn個おきに記憶するとともに、n+1サイクルに1回の読み出し動作によって1つの後方確率演算結果が読み出される記憶部,
    N/Mの分割データに対して前方確率演算を行う前方確率演算部,
    前記前方確率演算部で算出されるi番目(1≦i≦M)の前方確率演算結果に対応するi番目の後方確率演算結果が前記記憶部に記憶されておらず、且つi+1番目の後方確率演算結果が前記記憶部に記憶されている場合に、前記記憶部からの前記i+1番目の後方確率演算結果が読み出されるn+1サイクル中に、i+1番目の前方確率演算のために算出されたi+1番目の移行確率演算結果と前記記憶部に記憶されているi+1番目の後方確率演算結果とからi番目の後方確率を再計算する第2の後方確率演算部,
    N/Mの分割データに対するN/M個の前方確率演算結果と、N/M個の後方確率演算結果とを用いた結合確率演算を通じてN/Mの分割データの要素復号結果を出力する復号結果算出部,及び
    前記i+1番目の後方確率が前記第2の後方確率演算部で再計算される場合に、前記前方確率演算部で演算されたi番目の前方確率演算結果と、前記第2の後方確率演算部で再計算されたi番目の後方確率演算結果とが前記復号結果算出部に入力され、その後に前記前方確率演算部で演算されたi番目の前方確率演算結果と、前記記憶部から読み出されたi番目の後方確率演算結果とが前記復号結果算出部に入力されるように、前記復号結果算出部に対する前記前方確率演算結果及び前記後方確率演算結果の入力タイミングを調整する位相調整器
    を含むターボ復号装置。
  3. ターボ符号化された符号化データを要素復号の繰り返しを通じて復号するターボ復号装置において、
    Nビットの符号化データがM個に分割された分割データの夫々に要素復号を施すM個の要素復号器と、
    M個の要素復号結果を纏めてインタリーブ、デインタリーブを交互に繰り返すインタリーブ/デインタリーブ部とを備え、
    各要素復号器は、
    N/Mの分割データに対する後方確率演算を行う後方確率演算部,
    N/Mの分割データを所定長L毎にX個の区間に分割し、X番目から2番目までの各区間の後方確率演算結果をLの間隔を空けて離散的に記憶するともに、1番目の区間に対するL個の後方確率演算結果をn+1サイクルに1回の書き込み動作によってn個おきに記憶するとともに、n+1サイクルに1回の読み出し動作によって1つの後方確率演算結果が読み出される記憶部,
    N/Mの分割データに対する前方確率演算を行う前方確率演算部
    前記前方確率演算部で算出されるi番目(1≦i≦L)の前方確率演算結果に対応するi番目の後方確率演算結果が前記記憶部に記憶されておらず、且つi+1番目の後方確率演算結果が前記記憶部に記憶されている場合に、前記記憶部からの前記i+1番目の後方確率演算結果が読み出されるn+1サイクル中に、i+1番目の前方確率演算のために算出されたi+1番目の移行確率演算結果と前記記憶部に記憶されているi+1番目の後方確率演算結果とからi番目の後方確率を再計算する第2の後方確率演算部,
    N/Mの分割データの各区間について、L個の前方確率演算結果と、これに対応するL個の後方確率演算結果とを用いた結合確率演算を通じて各区間の要素復号結果を算出する復号結果算出部,及び
    前記i+1番目の後方確率が前記第2の後方確率演算部で再計算される場合に、前記前方確率演算部で演算されたi番目の前方確率演算結果と、前記第2の後方確率演算部で再計算されたi番目の後方確率演算結果とが前記復号結果算出部に入力され、その後に前記
    前方確率演算部で演算されたi番目の前方確率演算結果と、前記記憶部から読み出されたi番目の後方確率演算結果とが前記復号結果算出部に入力されるように、前記復号結果算出部に対する前記前方確率演算結果及び前記後方確率演算結果の入力タイミングを調整する位相調整器を含み、
    前記復号結果算出部は、前方確率演算部で算出された1番目の区間のL個の前方確率演算結果と、前記記憶部からの読み出し及び前記後方確率演算部の再計算によって得られる1番目の区間のL個の後方確率演算結果とを用いた結合確率演算を通じて1番目の区間に対する要素復号結果を出力し、
    前記後方確率演算部は、次の区間に関して前記記憶部に記憶された後方確率演算結果を用いて、次の区間に対する後方確率演算を行い、次の区間に関するL個の後方確率演算結果を算出し、これらのL個の後方確率演算結果をn個おきに前記記憶部に記憶し、
    前記前方確率演算部は、次の区間に対する前方確率演算を行い、前記復号結果算出部は、前記前方確率演算部で算出された次の区間のL個の前方確率演算結果と、前記記憶部からの読み出し及び前記第2の後方確率演算部の再計算によって得られる次の区間に関するL個の後方確率演算結果とを用いた結合確率演算を通じて次の区間に対する要素復号結果を出力し、
    前記後方確率演算部,前記前方確率演算部,前記第2の後方確率演算部,及び前記復号結果算出部は、残りの区間があれば、残りの区間について上記処理を繰り返し行う
    ターボ復号装置。
  4. ターボ符号化された符号化データを要素復号の繰り返しを通じて復号するターボ復号装置において、
    Nビットの符号化データがM個に分割された分割データの夫々に要素復号を施すM個の要素復号器と、
    M個の要素復号結果を纏めてインタリーブ、デインタリーブを交互に繰り返すインタリーブ/デインタリーブ部とを備え、
    各要素復号器は、
    N/Mの分割データに対する後方確率演算を行う後方確率演算部,
    後方確率演算結果を記憶する記憶部,
    N/Mの分割データに対する前方確率演算を行う前方確率演算部
    方確率演算結果と後方確率演算結果とを用いた結合確率演算を通じて要素復号結果を算出する復号結果算出部,第2の後方確率演算部,及び位相調整器を含み、
    前記後方確率演算部は、N/Mの分割データを所定長L毎に複数の区間に分割し、2L番目から1番目までの後方確率演算を行い、L番目から1番目までの後方確率演算結果をn+1サイクルに1回の書き込み動作によってn個おきに前記記憶部に記憶し、
    前記記憶部からは、n+1サイクルに1回の読み出し動作によって1つの後方確率演算結果が読み出され、
    前記前方確率演算部は、N/Mの分割データの1番目からL番目の前方確率演算を行い、
    前記第2の後方確率演算部は、前記前方確率演算部で算出されるi番目(1≦i≦L)の前方確率演算結果に対応するi番目の後方確率演算結果が前記記憶部に記憶されておらず、且つi+1番目の後方確率演算結果が前記記憶部に記憶されている場合に、前記記憶部からの前記i+1番目の後方確率演算結果が読み出されるn+1サイクル中に、i+1番目の前方確率演算のために算出されたi+1番目の移行確率演算結果と前記記憶部に記憶されているi+1番目の後方確率演算結果とからi番目の後方確率を再計算し、
    前記位相調整器は、前記i+1番目の後方確率が前記第2の後方確率演算部で再計算される場合に、前記前方確率演算部で演算されたi番目の前方確率演算結果と、前記第2の後方確率演算部で再計算されたi番目の後方確率演算結果とが前記復号結果算出部に入力され、その後に前記前方確率演算部で演算されたi番目の前方確率演算結果と、前記記憶部から読み出されたi番目の後方確率演算結果とが前記復号結果算出部に入力されるよう
    に、前記復号結果算出部に対する前記前方確率演算結果及び前記後方確率演算結果の入力タイミングを調整し
    前記復号結果算出部は、1番目からL番目の前方確率演算結果と、前記記憶部からの読み出し及び前記第2の後方確率演算部による再計算によって得られる1番目からL番目の後方確率演算結果とを用いて結合確率演算を行い、1番目からL番目までの区間に関する要素復号結果を出力し、
    前記後方確率演算部は、2L番目から1番目までの後方確率演算中に、3L番目からL+1番目までの後方確率演算を行い、2L番目からL+1番目までの後方確率演算結果をn個おきに前記記憶部に記憶し、
    前記前方確率演算部は、N/Mの分割データのL+1番目から2L番目の前方確率演算を行い、
    前記復号結果算出部は、L+1番目から2L番目の前方確率演算結果と、前記記憶部からの読み出し及び前記第2の後方確率演算部による再計算によって得られるL+1番目から2L番目の後方確率演算結果とを用いて結合確率演算を行い、L+1番目から2L番目までの区間に関する要素復号結果を出力し、
    前記後方確率演算部,前記前方確率演算部,前記第2の後方確率演算部,及び前記復号結果算出部は、残りの区間があれば、残りの区間について上記処理を繰り返し行う
    ターボ復号装置。
JP2006280655A 2006-10-13 2006-10-13 ターボ復号装置 Expired - Fee Related JP4708301B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2006280655A JP4708301B2 (ja) 2006-10-13 2006-10-13 ターボ復号装置
EP07118330A EP1912335A1 (en) 2006-10-13 2007-10-11 Turbo decoding apparatus with partial storage and recalculation of state metrics
US11/907,477 US8108751B2 (en) 2006-10-13 2007-10-12 Turbo decoding apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006280655A JP4708301B2 (ja) 2006-10-13 2006-10-13 ターボ復号装置

Publications (2)

Publication Number Publication Date
JP2008099145A JP2008099145A (ja) 2008-04-24
JP4708301B2 true JP4708301B2 (ja) 2011-06-22

Family

ID=38858976

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006280655A Expired - Fee Related JP4708301B2 (ja) 2006-10-13 2006-10-13 ターボ復号装置

Country Status (3)

Country Link
US (1) US8108751B2 (ja)
EP (1) EP1912335A1 (ja)
JP (1) JP4708301B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0804206D0 (en) * 2008-03-06 2008-04-16 Altera Corp Resource sharing in decoder architectures
US8578255B1 (en) * 2008-12-19 2013-11-05 Altera Corporation Priming of metrics used by convolutional decoders
US20130142057A1 (en) * 2011-12-01 2013-06-06 Broadcom Corporation Control Channel Acquisition
CN106059597B (zh) * 2016-05-19 2019-03-19 电子科技大学 一种基于概率Turbo译码器的有符号概率计算单元

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004015285A (ja) * 2002-06-05 2004-01-15 Fujitsu Ltd ターボ復号方法及びターボ復号装置
JP2006191392A (ja) * 2005-01-06 2006-07-20 Matsushita Electric Ind Co Ltd ターボ復号器及びターボ復号方法
JP2006314054A (ja) * 2005-05-09 2006-11-16 Matsushita Electric Ind Co Ltd ターボ復号器

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1156588B1 (en) * 1999-03-01 2007-05-09 Fujitsu Limited Method and apparatus for maximum a posteriori probability decoding
JP2005109771A (ja) * 2003-09-30 2005-04-21 Fujitsu Ltd 最大事後確率復号方法及び装置
US20050102600A1 (en) * 2003-11-10 2005-05-12 Anand Anandakumar High data rate communication system for wireless applications

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004015285A (ja) * 2002-06-05 2004-01-15 Fujitsu Ltd ターボ復号方法及びターボ復号装置
JP2006191392A (ja) * 2005-01-06 2006-07-20 Matsushita Electric Ind Co Ltd ターボ復号器及びターボ復号方法
JP2006314054A (ja) * 2005-05-09 2006-11-16 Matsushita Electric Ind Co Ltd ターボ復号器

Also Published As

Publication number Publication date
JP2008099145A (ja) 2008-04-24
US20080092011A1 (en) 2008-04-17
US8108751B2 (en) 2012-01-31
EP1912335A1 (en) 2008-04-16

Similar Documents

Publication Publication Date Title
JP3898574B2 (ja) ターボ復号方法及びターボ復号装置
KR100955305B1 (ko) 큐피피 인터리브를 갖는 병렬 터보 디코딩을 위한 공식적플렉서블 충돌 방지 메모리 억세싱
KR101225016B1 (ko) Lte에서 병렬 터보 디코딩의 방법 및 장치
US20020007474A1 (en) Turbo-code decoding unit and turbo-code encoding/decoding unit
US7373582B2 (en) Apparatus and method for turbo decoding using a variable window size
MXPA01009713A (es) Descodificador de map altamente paralelo.
JP4227481B2 (ja) 復号装置および復号方法
KR100703307B1 (ko) 터보 복호화 장치 및 방법
JP2006324754A (ja) 最大事後確率復号方法及び復号装置
JP4708301B2 (ja) ターボ復号装置
EP1261139A2 (en) Concurrent memory control for turbo decoders
EP1471677A1 (en) Method of blindly detecting a transport format of an incident convolutional encoded signal, and corresponding convolutional code decoder
US8448033B2 (en) Interleaving/de-interleaving method, soft-in/soft-out decoding method and error correction code encoder and decoder utilizing the same
JP2005109771A (ja) 最大事後確率復号方法及び装置
JP2009246474A (ja) ターボデコーダ
JP3582056B2 (ja) ターボ復号器
JP2002076921A (ja) 誤り訂正符号復号方法及び装置
JP2003152556A (ja) 誤り訂正符号復号装置
JP4043501B2 (ja) ターボ復号方法及びターボ復号装置
KR20030047100A (ko) 터보 복호화 장치에서 인터리버와 디인터리버간 메모리공유 장치 및 방법
KR100988908B1 (ko) 터보 치환기 및 그것을 포함한 터보 복호기
JP2009060455A (ja) スライディングウィンドウターボ復号処理装置とその方法
JP2002319869A (ja) 復号装置
KR100617822B1 (ko) 터보 복호기를 위한 고속 입력 장치 및 방법
JPWO2005125019A1 (ja) ターボ符号の誤り訂正復号方法及びターボ符号の誤り訂正復号装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090710

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101015

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101026

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101227

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110215

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110316

LAPS Cancellation because of no payment of annual fees