JP6155959B2 - 復号化装置、及び、復号化方法 - Google Patents

復号化装置、及び、復号化方法 Download PDF

Info

Publication number
JP6155959B2
JP6155959B2 JP2013169976A JP2013169976A JP6155959B2 JP 6155959 B2 JP6155959 B2 JP 6155959B2 JP 2013169976 A JP2013169976 A JP 2013169976A JP 2013169976 A JP2013169976 A JP 2013169976A JP 6155959 B2 JP6155959 B2 JP 6155959B2
Authority
JP
Japan
Prior art keywords
path
time
metric
state
likelihood
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
JP2013169976A
Other languages
English (en)
Other versions
JP2015039156A (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 JP2013169976A priority Critical patent/JP6155959B2/ja
Priority to US14/460,674 priority patent/US8976912B1/en
Publication of JP2015039156A publication Critical patent/JP2015039156A/ja
Application granted granted Critical
Publication of JP6155959B2 publication Critical patent/JP6155959B2/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/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
    • H03M13/3927Log-Likelihood Ratio [LLR] computation by combination of forward and backward metrics into LLRs
    • 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/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
    • H03M13/4138Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors soft-output Viterbi algorithm based decoding, i.e. Viterbi decoding with weighted decisions
    • H03M13/4146Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors soft-output Viterbi algorithm based decoding, i.e. Viterbi decoding with weighted decisions soft-output Viterbi decoding according to Battail and Hagenauer in which the soft-output is determined using path metric differences along the maximum-likelihood path, i.e. "SOVA" 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/65Purpose and implementation aspects
    • H03M13/6522Intended application, e.g. transmission or communication standard
    • H03M13/65253GPP LTE including E-UTRA

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Error Detection And Correction (AREA)
  • Artificial Intelligence (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)

Description

本発明は、復号化装置、及び、復号化方法に関する。
デジタル通信システムでは、送信装置はデジタルデータに誤り検出符号化処理や誤り訂正符号化処理を施し、デジタル変調して伝搬路に出力する。伝搬路では、雑音などの影響を受けて信号に歪が生じる。受信装置は、送信装置からの伝搬路を介した信号を受信し、受信信号を復調して信号レベルに応じた尤度データを生成し、これを復号して元のデジタルデータを得る。
特開2010−239491号公報 特開2006−197422号公報 特開2007−164923号公報
J. Hagenauer and P. Hoeher, "A Viterbi algorithm with soft-decision outputs and its applications," in Proc. GLOBECOM'89, vol. 3, Dallas, TX, Nov. 1989, pp. 1680-1686. L. Ang, W. Lim, and M. Kamuf, "Modification of SOVA-based algorithms for efficient hardware implementation," in Proceedings of IEEE 71st Vehicular Technology Conference, Taipei, May 16-19, 2010: 1-5.
受信装置では、尤度データを用いて、要素復号器における演算を繰り返すことで、出力データ(元のデジタルデータ)を得る。特性のよいデータを得ることが求められるが、一般に、特性の良いデータを得るには、要素復号器における処理量が増大する。また、要素復号器における演算量を減らすと、データの特性が劣化する。
本件開示の技術は、特性劣化を抑制しつつ、復号処理の処理量を低減することを課題とする。
開示の技術は、上記課題を解決するために、以下の手段を採用する。
即ち、第1の態様は、
開始時刻と終了時刻との間の各時刻の事後尤度を算出する復号化装置であって、
受信尤度データ及び事前尤度に基づいて第1時刻と該第1時刻の次の時刻である第2時刻との間のブランチのブランチメトリックを算出し、該第1時刻の第1状態及び第2状態と該第2時刻の第3状態及び第4状態とで表されるバタフライにおける状態遷移において、該第1状態の第1前方累積メトリックと、該第2状態の第2前方累積メトリックと、該第1時刻の第1状態と該第2時刻の第3状態との間の該ブランチメトリック及び該第1状態の第1前方累積メトリックと該第2状態の第2前方累積メトリックとの間の差分である第1差分に基づく第2差分とに基づいて、該第3状態の第3前方累積メトリックと、該第4状態の第4前方累積メトリックとを、バタフライ毎及び時刻毎に算出する演算部と、
該第2差分を、バタフライ毎及び時刻毎に格納する記憶部と、
を備える復号化装置とする。
開示の態様は、プログラムが情報処理装置によって実行されることによって実現されてもよい。即ち、開示の構成は、上記した態様における各手段が実行する処理を、情報処理装置に対して実行させるためのプログラム、或いは当該プログラムを記録したコンピュータ読み取り可能な記録媒体として特定することができる。また、開示の構成は、上記した各手段が実行する処理を情報処理装置が実行する方法をもって特定されてもよい。開示の構成は、上記した各手段が実行する処理を行う情報処理装置を含むシステムとして特定されてもよい。
開示の技術によれば、特性劣化を抑制しつつ、復号処理の処理量を低減することができる。
図1は、3GPPのターボ符号の定義の例を示す図である。 図2は、トレリスセクションの例を示す図である。 図3は、トレリスダイアグラムの例を示す図である。 図4は、前方累積メトリックαとブランチメトリックγとの関係を示す図である。 図5は、後方累積メトリックβとブランチメトリックγとの関係を示す図である。 図6は、実施形態1の通信システムの構成の例を示す図である。 図7は、送信装置及び受信装置の構成例を示す図である。 図8は、符号化処理部の例を示す図である。 図9は、復号処理部の例を示す図である。 図10は、送信装置のハードウェア構成例を示す図である。 図11は、受信装置のハードウェア構成例を示す図である。 図12は、動作例1における第1要素復号器231の尤度演算の動作フローの例(1)を示す図である。 図13は、動作例1における第1要素復号器231の尤度演算の動作フローの例(2)を示す図である。 図14は、前方累積メトリックαとブランチメトリックγとの例を示す図である。 図15は、シミュレーション結果の例を示す図である。 図16は、動作例2における第1要素復号器231の尤度演算の動作フローの例(1)を示す図である。 図17は、動作例2における第1要素復号器231の尤度演算の動作フローの例(2)を示す図である。 図18は、実施形態2における復号処理部の構成例を示す図である。 図19は、第1要素復号器241の構成例を示す図である。
以下、図面を参照して実施形態について説明する。実施形態の構成は例示であり、開示の構成は、開示の実施形態の具体的構成に限定されない。開示の構成の実施にあたって、実施形態に応じた具体的構成が適宜採用されてもよい。
ここでは、通信システムとして3GPP(3rd Generation Partnership Project)のLTE(Long Term Evolution)のような通信システムを想定する。ここで説明する実施形
態は、3GPPのLTEのような通信システムに限定されず、他の通信システムにも適用可能である。
〔符号化/復号処理〕
ターボ符号およびターボ復号について、3GPP移動通信システムで採用されている符号を具体的な例として取り上げて説明する。実施形態の適用範囲は、この符号に限定されるものではない。本実施形態は、一般的に、要素符号として、トレリス符号が適用されていて、対応する要素復号処理として、SISO(Soft In Soft Out)型の復号器を用いるような符号の復号処理に適用可能である。ここで、SISO型の復号器は、入力尤度に基づいて、MAP演算原理に基づいて、送信ビット系列の各ビットに対しての事後尤度を出力するタイプの復号器である。
(符号化)
図1は、3GPPのターボ符号の定義の例を示す図である。3GPPでデータチャネルの符号化方式として定義されているターボ符号は、スタンダードな符号化率1/3のターボ符号であり、2つの要素符号器とその間を関係づけるインターリーバー(IL)を含む。要素符号は、符号化率1/2のリカーシブな畳み込み符号である。
要素符号の生成多項式は、次のように定義される。
Figure 0006155959
ここで、
Figure 0006155959
である。多項式の次数は、遅延メモリのサイズ(m=3)に対応する。
符号化の終端方法として、例えば、トレリス終端(Trellis Termination)が採用され
る。トレリス終端では、最後の情報ビットを入力した後、遅延メモリと同じ数のテールビットが入力されることで、遅延メモリ内の最後の値が0となる。
実施形態で使用されるターボ符号は、図1の例に限定されるものではない。
(復号)
ターボ符号に対する復号処理は、要素復号処理を繰り返し行う「繰り返し復号処理」である。要素復号器は、2つの要素符号器のそれぞれに対応する復号処理を行う。畳み込み符号に関して、情報ビット毎の推定方法として、MAP(Maximum A posteriori Probability)方式が採用される。ただし、MAP方式をそのままの形で実装するのはハードウェアの設計上、コストが大きすぎるため、実装に適した形で修正された方式を適用することが考えられている。そのような方式としてよく知られた方式には、「Max−Log−MAP方式」及び「SOVA(Soft Output Viterbi Algorithm)方式」がある。
状態(遅延メモリの状態)は、畳み込み符号の遅延レジスタメモリの値に対応する。遅延メモリのサイズが3であるとき(m=3)、状態数は2の3乗で8個となる。
ある時刻での情報ビットを入力する前のメモリの状態は、開始状態である。また、情報ビットの入力により開始状態から別の状態へと遷移した状態は、終了状態である。開始状態siと終了状態seとを結ぶ関係は、「ブランチ」と呼ばれる。開始状態siと終了状態
eとの間のブランチは、(si,se)と表される。
トレリスセクションは、畳み込み符号における、ある時刻での情報ビットの入力に対しての、遅延メモリの値(状態)の変化、ローカル符号の出力の様子を図式的に示したものである。
図2は、トレリスセクションの例を示す図である。図2のように、トレリスセクションは、各時刻の異なる状態を縦に並べて、隣接する時刻での可能な遷移先の状態を「ブランチ」でつないだものである。図2の横方向は、時間を表す。図2の例では、時刻t=t0の各状態が縦に並べられ、時刻t=t0の各状態から、隣接する時刻である時刻t=t0+1での可能な遷移先の状態に、ブランチがつながれている。
トレリスダイアグラムは、トレリスセクションを情報ビット系列分(情報ビット数分)、時間順に並べたグラフである。
図3は、トレリスダイアグラムの例を示す図である。図3の横軸は時間であり、縦軸は遅延メモリの状態を表す。遅延メモリの状態は、開始時に0、終了時に0となるように規定されている。任意の情報ビットの系列は、開始時刻で0の状態から出発して、各時刻での、0及び1のブランチのうちいずれか1つのブランチを辿り、最終的に、終了状態が0になる。トレリスパス(単に、パスともいう)は、このブランチをつないだものである。任意のトレリスパスは、それぞれ互いに異なる取り得る符号語(Codeword)に対応している。図3において、太線で示される折線がトレリスパスの一例である。
一般に、任意の時刻の任意の状態から、別の時刻の任意の状態に、遷移する経路のことも「パス」と呼ぶ。ブランチは「パス」の1つである。
ある状態から発生しているパスに対して、その同じ状態から発生している、もう一方のパスは、「対抗パス」と呼ばれる。また、同様に、ある状態に入力するパスについて、その同じ状態に入力する、もう一方のパスのことも「対抗パス」と呼ばれる。
図2のように対抗パス上の符号ビットの値は、互いに「反転ビット」の値になっている。
α演算は、開始時刻から(開始時刻より後の)ある時刻のある状態に到達するまでの累積メトリックの最大値または最小値を求める演算である。β演算は、終了時刻から(終了時刻より前の)ある時刻のある状態に到達するまでの累積メトリックの最大値または最小値を求める演算である。
α演算において、累積メトリックの最大あるいは最小の選択(最適なメトリックの選択)において、選択されたパスは「勝ちパス」、もう一方のパスは「負けパス」と呼ばれる。2つの候補のパスは、前の時刻のそれぞれの状態に到達するまで、勝ち続けてきたパスである。即ち、2つの候補のパスは、前の時刻のそれぞれの状態の「勝ちパス」である。従って、「負けパス」は前の時刻まで勝ち続け最後の時刻に負けたパスである。β演算に対しても、時間の方向を反転させて同様の呼び方が適用される。
メトリックの最適性が最大あるいは最小のいずれとするかは、入力尤度から、ブランチメトリックを生成する場合の係数の正負に依存する。最大のものが最適の場合には「max規約」、最小のものが最適の場合には「min規約」と呼ぶ。
u∈{0,1}に対して、ビットの値を反転させたものを、uc=1−uと表す。また
、ビット値{0,1}のそれぞれを、{+1,−1}の値に対応させる規則を次のようにする。
Figure 0006155959
数式による表記はビットuに対しての振幅シンボルをuのバーとして次のように与えられる。
Figure 0006155959
ビットpに対する振幅シンボル(pのバー)も同様である。
情報ビットのサイズKの符号語のビットサイズをNとすると、受信信号の尤度データ系列は、N次元の実ユークリッド空間上の点と解釈される。雑音がない場合には、各符号語は、ユークリッド空間上の異なる2K個の点として表される。一般には雑音データが付加
されて、受信データは、符号語とは異なる任意の点として表されることになる。最尤復号は、この受信データに対して、最も近い符号語の点を、送信された符号ビット系列であると推定することである。基本的な定義として、各符号語とのユークリッド距離を「メトリック」とする。ただし、上記の符号原理から、結果は、各符号語のメトリックの大小関係に依存していることが分かる。従って、すべての符号語のメトリックに共通する量を一律加減算したものを、「メトリック」と再定義することが可能である。また、さらに、Max−Log−MAP方式では、メトリックの全体に共通の係数でスケールしても結果は変わらないことが示される。よって、任意にスケールを掛けたものを「メトリック」として再定義する場合がある。
パスメトリックは、トレリスパスに対応する符号語のメトリックである。メトリックは、ユークリッド距離であるから、各ビットについての距離の2乗和で表わされる。
ブランチメトリックは、トレリスのブランチに対応するローカル符号に限定したメトリック値である。
(Max−Log−MAP方式)
ここで、Max−Log−MAP方式について説明する。Max−Log−MAP方式では、トレリスダイアグラム上でビタビ演算が行われ、パスメトリックが算出される。
最初に、すべてのトレリスパスに対しての、パスメトリックが求められる。ある時刻の
ブランチを通過するパスのメトリック(パスメトリック)は、ブランチの始点の状態の前方累積メトリックαと終点の状態の後方累積メトリックβおよびブランチメトリックの和によって与えられる。ブランチの始点の状態の前方累積メトリックαは、開始時刻の状態から当該ブランチの始点の状態までのブランチメトリックの和である。ブランチの終点の状態の後方累積メトリックβは、終了時刻の状態から当該ブランチの終点の状態までのブランチメトリックの和である。ここでは、max規約が採用される。
時刻t=iにおいて状態sから状態s’に遷移する際のブランチメトリックγは次のように表される。
Figure 0006155959
ただし、(u,p)は、ブランチB(s,s’)に対応するローカル符号である。ys
、ypは、受信尤度(尤度データ)である。Leは、前の演算における事後尤度である。
時刻t=i+1における状態sの前方累積メトリックαは、次のように求められる。ここでは、トレリスダイアグラム上で、時刻t=iの状態s0または状態s1は、時刻t=
i+1の状態sに遷移するものとする。
Figure 0006155959
ここで、時刻t=iにおける状態s0の前方累積メトリックに時刻t=iにおいて状態s0から状態sに遷移する際のブランチメトリックを足したものをAとする。時刻t=iにおける状態s1の前方累積メトリックに時刻t=iにおいて状態s1から状態sに遷移する際のブランチメトリックを足したものをBとする。時刻t=i+1における状態sの前方累積メトリックαは、A及びBのうち大きい値のものである。ここで、i=0からi=Kt−1まで昇順に前方累積メトリックαが求められる。
図4は、前方累積メトリックαとブランチメトリックγとの関係を示す図である。図4において、各白丸は、1つの状態を表す。図4では、時刻t=iの状態s0及び状態s1、時刻t=i+1の状態s’0及び状態s’1が示される。現時刻の前方累積メトリックαは、1時刻前の前方累積メトリックと1時刻前のブランチメトリックとから求められる。すべての前方累積メトリックαは、保存され、事後尤度Lの算出の際に使用される。
時刻t=iにおける状態sの後方累積メトリックβは、次のように求められる。
Figure 0006155959
ここで、i=Kt−1からi=0まで降順にβが求められる。
図5は、後方累積メトリックβとブランチメトリックγとの関係を示す図である。図5において、各白丸は、1つの状態を表す。図5では、時刻t=iの状態s0及び状態s1
時刻t=i+1の状態s’0及び状態s’1が示される。現時刻の前方累積メトリックβは、1時刻後の前方累積メトリックと現時刻のブランチメトリックとから求められる。
次に、各時刻において、ビットの値が0である場合、及び、ビットの値が1であるの場合の事後尤度(L0、L1)が求められる。各時刻で、それぞれのビットの値を取るすべてのトレリスパスのうち、最適なメトリックのパスが選択される。最適パスのメトリックが、事後尤度とされる。さらに、ビットの値が0である場合の事後尤度とビットの値が1である場合の事後尤度との差が求められる。
時刻t=iにおける事後尤度の差Lは、次のように求められる。ここでは、max規約が採用されている。
Figure 0006155959
ここで、i=Kt−1からi=0まで降順に、L(i)が求められる。事後尤度の差L(i)は、後方累積メトリックβの算出とともに算出される。事後尤度の差L(i)の算出の際に、保存されている前方累積メトリックαが使用される。また、bは、ビット値であり、0または1をとる。Lb(i)は、時刻t=iにおいてビット値がbであるパスの
最尤パスの事後尤度である。Bbは、入力ビット値がbであるブランチの集合である。L
(i)は、次の演算におけるLe(i)で使用される。L(i)が大きいほど、時刻t=
iにおけるブランチの情報ビットが0である確率が高い。また、L(i)は、他の要素復号器で使用され得る。次の演算におけるLe(i)(=Le (next)(i))は、L(i)を用いて、次のように表される。
Figure 0006155959
(修正Max−Log−MAP方式)
ここで、修正Max−Log−MAP方式について説明する。Max−Log−MAP方式では、各時刻での2つのビット値に対応する事後尤度(L0(i),L1(i))において一方は最尤パスに一致することが利用される。即ち、α演算の結果から、最尤パスのパスメトリックが特定される。最尤パスを構成するブランチに対応する情報ビットは、推定ビットとなる。L演算(事後尤度の演算)では、各時刻で、推定ビットの反対ビットに対しての事後尤度が求められる。
時刻t=iにおいて状態sから状態s'に遷移する際のブランチメトリックγは次のよ
うに表される。
Figure 0006155959
ただし、(u,p)は、ブランチB=(s,s’)に対応するローカル符号である。
時刻t=i+1における状態sの前方累積メトリックαは、次のように求められる。
Figure 0006155959
ここで、i=0からi=Kt−1まで昇順にαが求められる。また、前方累積メトリックαの計算において、どちらのブランチが選択されたかの情報が、フラグ(フラグ情報)として保存される。各ブランチは、対応する入力情報ビットによって区別される。時刻t=iにおけるフラグ情報qiは、ブランチの入力情報ビットuによって、次のように表さ
れる。
Figure 0006155959
ここで、sxは、選択されたブランチの時刻t=iにおける状態である。
また、選択されなかったブランチの前方累積メトリックαi,loseが、保存される。αi,loseは、次のように表される。
Figure 0006155959
ここで、syは、選択されなかったブランチの時刻t=iにおける状態である。
トレースバックの開始位置iBでの最大のλの値が、最尤パスのパスメトリックとされ
る。
Figure 0006155959
ただし、トレリス終端を行っている場合には、境界での状態はs=0であり、βの境界条件をβiB(s)=0とすると、
Figure 0006155959
となる。
i=Kt−1での終状態0からフラグ情報により勝ちパスをたどることで、最尤パスが特定される。最尤パスに対応するフラグ情報は、推定ビット(uiのハット)に一致して
いる。
Figure 0006155959
事後尤度Lを算出する際に、前方累積メトリックαが再計算される。負けパスの前方累積メトリックαは保存されているが、勝ちパスの前方累積メトリックαは保存されていない。そこで、勝ちパスの前方累積メトリックαは、1時刻後の前方累積メトリックと現時刻のブランチメトリックを使用して算出される。即ち、時刻t=iの勝ちパスの前方累積メトリックαは、時刻t=i+1の前方累積メトリックと時刻t=iのブランチメトリックを使用して算出される。また、任意の状態の前方累積メトリックが勝ちパスであるか負けパスであるかは、フラグ情報によって認識される。
Figure 0006155959
時刻t=iにおける状態sの後方累積メトリックβは、次のように求められる。
Figure 0006155959
ここで、i=Kt−1からi=0まで降順にβが求められる。
次に、各時刻において、ビットの値が0である場合及びビットの値が1である場合の事後尤度(L0、L1)が求められる。各時刻で、最適パスのブランチのビットの値の事後尤度は、Lmaxとする。最適パスのブランチのビットの値の反対ビットの値の事後尤度とし
て、当該反対ビットの値を取るすべてのトレリスパスのうち最適なメトリックのパスが選択される。さらに、最適パスのブランチのビット値の事後尤度と最適パスのブランチのビットの値の反対ビットの値の事後尤度との差が求められる。
時刻t=iにおける事後尤度の差L(i)は、次のように求められる。
Figure 0006155959
ここで、i=Kt−1からi=0まで降順に、L(i)が求められる。事後尤度の差L(i)は、後方累積メトリックβの算出とともに算出される。事後尤度の差L(i)の算出の際に、保存されている前方累積メトリックα及び再計算される前方累積メトリックαが使用される。
また、bは、ビット値であり、0または1をとる。Bbは、入力ビット値がbであるブ
ランチの集合である。L(i)は、次の演算におけるLe(i)で使用される。L(i)
が大きいほど、時刻t=iにおけるブランチの情報ビットが0である確率が高い。また、L(i)は、他の要素復号器で使用され得る。
(SOVA方式)
ここで、SOVA(Soft Output Viterbi Algorithm)方式について説明する。SOV
A方式は、最尤パスに対してのトレースバックにおいて、各時刻で、最尤パスに負ける「負けパス」を、「β演算」及び「L演算」のための候補として選択する方式である。Max−Log−MAP方式と比較して、処理量は減少するが、特性が劣化する。SOVA方式の演算上の特徴としては、後方累積メトリックβは導入されず、パスメトリックLの差分を扱うことが挙げられる。「勝ちパス」である最尤パスに負けた負けパスの事後尤度Lloseは、最尤パスの事後尤度Lwinとα演算におけるメトリックの差Δとにより次のよう
に求まる。ここでは、min規約が採用される。
Figure 0006155959
α演算は、上記のMax−Log−MAP方式と同様に行われる。また、α演算において選択されたブランチの前方累積メトリックと選択されなかったブランチの前方累積メトリックとの差Δが、保存される。
さらに、前方累積メトリックαの計算において、どちらのブランチが選択されたかの情報が、フラグ(選択フラグ)として保存される。各ブランチは、対応する入力情報ビットによって区別される。
L演算(事後尤度の差Lの算出)において、トレースバックの開始位置での最尤パスのメトリックは、α演算の結果として得られる。この最尤パスを基準として、α演算の結果として得られるメトリックの差Δの値と、選択フラグによって、「負けパス」の特定と、当該「負けパス」に対するメトリック値の演算が、上記の関係式により実行される。
時刻t=iにおける事後尤度の差L(i)は、最尤パスのメトリック値と、最尤パスに負けた「負けパス」のうち時刻t=iにおいて最尤パスの推定ビットの反対のビットを有
するものの中から最尤のパスのメトリック値との差として得られる。
また、最尤パスに負けたパス同士がトレースバックによって同じ状態に入力する場合には、両者のうちの最尤のパスが選択される。これは、β演算に相当する処理となる。L(i)は、次の演算におけるLe(i)で使用される。
SOVA方式では、L演算で使用される候補として、最尤パスに負ける「負けパス」が採用される。
(修正SOVA方式)
ここでは、修正SOVA方式について説明する。SOVA方式の特性を改善する方式として、修正SOVA方式が知られている。
上記のSOVA方式では、負けパスの時刻t=iにおけるビットが最尤パスの時刻t=iにおける推定ビットと同じである負けパスは、事後尤度L(i)の算出から除外される。従って、上記のSOVA方式では、事後尤度の差Lの算出の際に、選択される負けパスの候補の数が小さくなるおそれがある。これを改善するために、負けパスの時刻t=iにおけるブランチが、最尤パスの時刻t=iにおける推定ビットと同じとなる場合、当該負けパスの時刻t=iにおける負けパス(負けパスの負けパス)が候補として選択されるようにする。
修正SOVA方式は、SOVA方式に対して大きく特性が改善される。しかし、修正SOVA方式の特性は、Max−Log−MAP方式の特性と比較して、劣化している。
〔実施形態1〕
(構成例)
図6は、本実施形態の通信システムの構成の例を示す図である。通信システム10は、送信装置100と受信装置200とが、伝搬路(チャネル)を通して、情報ビットを送受信するシステムである。図6のように、本実施形態の通信システム10は、送信装置100、受信装置200を含む。送信装置100は、伝搬路を介して、受信装置200に、データ送信を行う。受信装置200は、送信装置100から受信した信号を復号する。受信装置200は、復号化装置の一例である。
図7は、送信装置及び受信装置の構成例を示す図である。図7の送信装置100は、符号化処理部110、変調マッピング処理部120、送信処理部130を有する。
符号化処理部110は、情報ビット系列を誤り訂正符号化し、符号ビット系列に変換する。
変調マッピング処理部120は、符号ビットを規定の数のビットの単位で変調処理を行い、信号シンボルにマッピングする。信号シンボル(単に、シンボルとも言う)は、元のビットの値に応じて、複素平面上(信号空間)の点として表される。
送信処理部130は、信号シンボルを搬送波の形に変換して、チャネル(伝搬路)に送信する。
図8は、符号化処理部の例を示す図である。図8の符号化処理部110は、例えば、3GPPのLTEの無線規格に準拠した符号器であり、第1要素符号化部111と、第2要素符号化部112と、情報源の入力ビットに対して入力ビットの並び替えを行うインタリーバ(IL)113とを含む。また、符号化処理部110は、パラレルシリアル(P/S
)変換部114を含む。
第1要素符号化部111は、シフトレジスタD及び排他的論理和回路を含む畳み込み符号化部であり、入力データが順次シフトされ、それにより出力が生成され、第1パリティビットを生成して出力する。第2要素符号化部112は、同様に、第2パリティビットを生成して出力する。
第1要素符号化部111において、第1スイッチは、入力が情報ビット(0または1)の場合に、入力側に接続して情報ビットを第1要素符号化部111に取り込む。第2要素符号化部112において、第2スイッチも同様に、入力が情報ビット(0または1)の場合に、インタリーバ(IL)113によってインタリーブされた入力側に接続して情報ビットを第2要素符号化部112に取り込む。
パラレルシリアル変換部114は、組織ビット、第1パリティビット、第2パリティビット、テールビットを直列データに変換して、符号ビットとして出力する。
図7の受信装置200は、受信処理部210、復調デマッピング処理部220、復号処理部230を有する。
受信処理部210は、受信データに対して(同期検波等の)適切な処理を行い、受信シンボルを信号空間上の点の形で求める。
復調デマッピング処理部220は、受信シンボルから各ビットに対応する尤度データ(受信尤度データ)を求める。尤度データは、復号処理の観点で軟判定データとも呼ばれる。ビットの尤度は、例えば、当該ビットが0であること(または1であること)の尤もらしさを表す尺度である。
復号処理部230は、軟判定データを用いて誤り訂正復号処理を行い、送信ビットを推定する。復号処理部230には、尤度データが復調デマッピング処理部220から入力される。復号処理部230は、尤度データを用いて、復号ビットを算出する。復号処理部230は、例えば、ターボ復号器である。
図9は、復号処理部の例を示す図である。図9の復号処理部230は、第1要素復号器231、第2要素復号器232、インタリーバ(IL)233、デインタリーバ(DeIL)234を含む。
第1要素復号器231は、尤度データys、尤度データyp1、第2要素復号器232の出力データ等を用いて、復号ビットを算出する。第2要素復号器232は、尤度データys、尤度データyp2、第1要素復号器231の出力データ等を用いて、復号ビットを算出する。インタリーバ233は、尤度データys、第1要素復号器231の出力データの順序を入れ替え、入れ替えたデータを第2要素復号器232に出力する。デインタリーバ234は、第2要素復号器232の出力データの順序を入れ替え、入れ替えたデータを第1要素復号器231に出力する。また、デインタリーバ234は、第2要素復号器232の出力データの順序を入れ替え、入れ替えたデータを復号ビットとして出力する。
第1要素符号器231から出力される事後尤度は、インタリーブされて、第2要素符号器232の入力となる。第1要素符号器231から出力される事後尤度は、第1要素復号器では、次の演算における事前尤度として解釈される。第1要素符号器231及び第2要素復号器232が、演算を繰り返すことによって、出力データのS/N比が改善されていく。
送信装置100、受信装置200は、専用または汎用のコンピュータ、あるいは、コンピュータを搭載した電子機器を使用して実現可能である。
コンピュータ、すなわち、情報処理装置は、プロセッサ、主記憶装置、及び、二次記憶装置や、通信インタフェース装置のような周辺装置とのインタフェース装置を含む。記憶装置(主記憶装置及び二次記憶装置)は、コンピュータ読み取り可能な記録媒体である。
コンピュータは、プロセッサが記録媒体に記憶されたプログラムを主記憶装置の作業領域にロードして実行し、プログラムの実行を通じて周辺機器が制御されることによって、所定の目的に合致した機能を実現することができる。
プロセッサは、例えば、CPU(Central Processing Unit)やDSP(Data Signal Processor)である。主記憶装置は、例えば、RAM(Random Access Memory)やROM(Read Only Memory)を含む。
二次記憶装置は、例えば、EPROM(Erasable Programmable ROM)、ハードディス
クドライブ(HDD、Hard Disk Drive)である。また、二次記憶装置は、リムーバブル
メディア、即ち可搬記録媒体を含むことができる。リムーバブルメディアは、例えば、USB(Universal Serial Bus)メモリ、あるいは、CD(Compact Disc)やDVD(Digital Versatile Disc)のようなディスク記録媒体である。
通信インタフェース装置は、例えば、LAN(Local Area Network)インタフェースボードや、無線通信のための無線通信回路である。
周辺装置は、上記の二次記憶装置や通信インタフェース装置の他、キーボードやポインティングデバイスのような入力装置や、ディスプレイ装置やプリンタのような出力装置を含む。また、入力装置は、カメラのような映像や画像の入力装置や、マイクロフォンのような音声の入力装置を含むことができる。また、出力装置は、スピーカのような音声の出力装置を含むことができる。
主記憶装置または二次記憶装置には、オペレーティングシステム、各種プログラム、各種テーブル等が格納される。オペレーティングシステムは、ソフトウェアとハードウェアとの仲介、メモリ空間の管理、ファイル管理、プロセスやタスクの管理等を行うソフトウェアである。
一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。送信装置100、受信装置200の各ユニットは、ハードウェアの構成要素、ソフトウェアの構成要素、又は、これらの組み合わせとして、それぞれ実現され得る。
ハードウェアの構成要素は、ハードウェア回路であり、例えば、FPGA(Field Programmable Gate Array)、特定用途向け集積回路(ASIC)、ゲートアレイ、論理ゲー
トの組み合わせ、アナログ回路等がある。
ソフトウェアの構成要素は、ソフトウェアとして所定の処理を実現する部品である。ソフトウェアの構成要素は、ソフトウェアを実現する言語、開発環境等を限定する概念ではない。
プログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理は
もちろん、必ずしも時系列的に処理されなくても、並列的または個別に実行される処理を含む。
図10は、送信装置のハードウェア構成例を示す図である。送信装置100は、プロセッサ182、記憶装置184、ベースバンド処理回路186、無線処理回路188、アンテナ190を含む。プロセッサ182、記憶装置184、ベースバンド処理回路186、無線処理回路188、アンテナ190は、例えば、バスを介して互いに接続される。
プロセッサ182は、符号化処理部110、変調マッピング処理部120、送信処理部130としての機能を実現しうる。プロセッサ182は、演算部の一例である。記憶装置184は、プロセッサで実行されるプログラム、プログラムの実行の際に使用されるデータ等が格納される。記憶装置184は、メモリ(記憶部)の一例である。ベースバンド処理回路186は、ベースバンド信号を処理する。無線処理回路188は、アンテナ190で送受信される無線信号を処理する。アンテナ190は、無線処理回路188等で処理された送信信号を送信する。
図11は、受信装置のハードウェア構成例を示す図である。受信装置200は、プロセッサ282、記憶装置284、ベースバンド処理回路286、無線処理回路288、アンテナ290を含む。プロセッサ282、記憶装置284、ベースバンド処理回路286、無線処理回路288、アンテナ290は、例えば、バスを介して互いに接続される。
プロセッサ282は、受信処理部210、復調デマッピング処理部220、復号処理部230としての機能を実現しうる。プロセッサ282は、演算部の一例である。記憶装置284は、プロセッサで実行されるプログラム、プログラムの実行の際に使用されるデータ等が格納される。記憶装置284は、メモリ(記憶部)の一例である。記憶装置284として、複数の記憶装置が使用されてもよい。ベースバンド処理回路286は、ベースバンド信号を処理する。無線処理回路288は、アンテナ290で送受信される無線信号を処理する。アンテナ290は、他の装置から送信された信号を受信する。
復号処理部230等における処理は、例えば、プロセッサで実行されるプログラムによって実現される。復号処理部230等における処理は、ASIC(Application Specific
Integrated Circuit)や、FPGA(Field-Programmable Gate Array)などの回路で実装されてもよい。
(動作例1)
ここでは、復号処理部230の第1要素復号器231の動作例1について説明する。要素復号器231には、尤度データysと尤度データyp1(ypともいう)とが復調デマッピング処理部から入力される。第1要素復号器231は、復号ビットを出力する。第2要素復号器232の動作は、第1要素復号器231の動作と同様である。
動作例1では、第1要素復号器231は、Max−Log−MAP方式と同様の尤度演算を、SOVA方式を利用して行う。ここでは、min規約が採用される。
図12及び図13は、動作例1における第1要素復号器231の尤度演算の動作フローの例を示す図である。図12の「A」は、図13の「A」と接続する。
ステップS101からステップS105までの処理は、前方累積メトリック演算(α演算)における処理である。
ステップS101では、第1要素復号器231は、変数iを用意し、変数iに初期値0
を代入する。変数iは、時刻に対応する変数である。時刻t=0は、開始時刻である。
ステップS102では、第1要素復号器231は、変数iが(Kt−1)以下であるか否かを判定する。所定値Ktは、第1要素復号器231に入力される1つの情報ビット系列の長さに対応する。変数iが(Kt−1)以下である場合(S102;YES)、処理がステップS103に進む。変数iが(Kt−1)以下でない場合(S102;NO)、処理がステップS106に進む。時刻t=Ktは、終了時刻である。
ステップS103では、第1要素復号器231は、時刻t=i+1における前方累積メトリックを演算し、保存する。
第1要素復号器231は、時刻t=iの尤度データys(i)、尤度データyp(i)、事後尤度データLe(i)を取得する。第1要素復号器231は、例えば、メモリに格納
される時刻t=iの尤度データys、尤度データyp及び事後尤度データLeを取得する。
第1要素復号器231は、時刻t=iから時刻t=i+1へのブランチ毎にブランチメトリックγを算出する。時刻t=iの状態sから時刻t=t+1の状態s’に遷移する際のブランチメトリックγは次のように表される。
Figure 0006155959
ただし、(u,p)は、ブランチB(s,s’)に対応するローカル符号である。Le
は、前の演算における事後尤度である。Leは、他の要素復号器(第2要素復号器232
)の演算による事後尤度であってもよい。最初の演算では、Leは、例えば、0である。
さらに、第1要素復号器231は、前方累積メトリックの演算(α演算)を行う。時刻t=i+1における状態sの前方累積メトリックαは、次のように求められる。ここでは、トレリスダイアグラム上で、状態s0及び状態s1は、状態sに遷移し得るものとする。また、α0(s)=0であるとする。
Figure 0006155959
第1要素復号器231は、時刻t=i+1のすべての状態sについて、αi+1(s)を
、算出し、メモリに保存する。
ステップS104では、第1要素復号器231は、勝ちパスの尤度と負けパスの尤度との差分Δを算出する。
図14は、前方累積メトリックαとブランチメトリックγとの例を示す図である。図14の例では、2つの開始状態(状態s0及び状態s1)から2つの終了状態(状態s’0
び状態s’1)までが示されている。図14のような2つの開始状態と2つの終了状態と
をブランチで結んだ図をバタフライともいう。トレリスダイアグラムにおいて、時刻t=iと時刻t=i+1との間には、4つのバタフライが存在する。図2において、破線の曲線で囲まれた部分は、バタフライの一例である。また、図3において、破線の曲線で囲ま
れた部分は、それぞれ、バタフライの一例である。
第1要素復号器231は、時刻t=iと時刻t=i+1との間の4つのバタフライに対して次の式で表される演算を行う。ここでは、1つのバタフライにおいて、時刻t=iにおける状態s0及び状態s1が、時刻t=i+1における状態s’0及び状態s’1に遷移するとする。
Figure 0006155959
ここで、ローカル符号の対称性から、各バタフライにおいて、次の関係式が導かれる。
Figure 0006155959
γi,0は、メモリに格納されてもよい。ここでは、ブランチB=(s0,s’0)及びブ
ランチB=(s1,s’1)が情報ビットu=0に対応し、ブランチB=(s0,s’1)及びブランチB=(s1,s’0)が情報ビットu=1に対応するとする。ここで、時刻t=i+1の状態sの前方累積メトリックαi+1(s)の算出の際に用いた2つのパスの尤度
の差分Δを次のように定義する。
Figure 0006155959
第1要素復号器231は、時刻t=i+1のすべての状態sについて、上記の尤度の差分Δi(s)を算出する。
ここでは、尤度の差分Δiは、時刻t=iにおける情報ビットuが0であるパスがより
尤もらしいパスである場合に負になり、時刻t=iにおける情報ビットuが1であるパスがより尤もらしいパスである場合に正になる。ここで、差分Δの正負と、上記のγi,0
を用いて、前方累積メトリックαは、次のように、表される。
Figure 0006155959
第1要素復号器231は、時刻t=iと時刻t=i+1との間の1つのバタフライにつき、2つの差分Δi(s’0)及び差分Δi(s’1)のうち1つの差分Δi(s’0)を、メモリに格納する。即ち、時刻t=iと時刻t=i+1との間の4つのバタフライに対して、4つの差分Δiが、メモリに格納される。なお、差分Δi(s’1)は、差分Δi(s’0
)とγi,0とによって、容易に算出される。よって、差分Δi(s’1)は、メモリに格納
されなくてもよい。
また、第1要素復号器231は、αi+1(s’0)及びαi+1(s’1)をメモリに格納する。メモリに格納されたαi+1(s’0)及びαi+1(s’1)は、次の時刻(t=i+2)において、αが算出される際に使用される。ここで、第1要素復号器231は、αi(s
0)及びαi(s’1)を、メモリから削除してもよい。αi(s’0)及びαi(s’1
がメモリから削除されることで、メモリの使用量が削減される。
ステップS105では、第1要素復号器231は、変数iに(i+1)を代入し、処理がステップS102に戻る。変数iが(Kt−1)を超えたとき、ステップS102を経て、処理が、ステップS106に進む。
ステップS106以降は、事後尤度演算(L演算)における処理である。i=Kt−1での状態s=0(終状態)からフラグ情報(パス選択フラグ)により勝ちパスをたどることで最尤パスが、特定される。最尤パスに対応するフラグ情報は、推定ビット(uiのハ
ット)に一致する。
Figure 0006155959
ステップS106では、第1要素復号器231は、変数iを用意し、変数iに(Kt−1)を代入する。時刻t=Ktは、トレースバック開始位置である。
ステップS107では、第1要素復号器231は、変数iが0以上であるか否かを判定する。変数iが0以上である場合(S107;YES)、処理がステップS108に進む。変数iが0以上でない場合(S107;NO)、処理が終了する。
ステップS108では、第1要素復号器231は、時刻t=iにおける尤度の差分Δi
を算出する。
第1要素復号器231は、時刻t=iの尤度データys(i)、尤度データyp(i)、事後尤度データLe(i)を取得する。第1要素復号器231は、例えば、メモリに格納
される時刻t=iの尤度データys、尤度データyp及び事後尤度データLeを取得する。
第1要素復号器231は、時刻t=iの尤度データys、尤度データyp及び事後尤度データLeに基づいて、γi,0を算出する。γi,0がメモリに格納されている場合には、第1要
素復号器231はγi,0をメモリから取得してもよい。
第1要素復号器231は、メモリに格納されている差分Δi(s’0)を、メモリから取得する。また、第1要素復号器231は、メモリに格納されない差分Δi(s’1)を算出する。メモリに格納されない差分Δi(s’1)は、差分Δi(s’0)及びγi,0を用いて
、次のように算出される。
Figure 0006155959
また、時刻t=i+1の状態s’kへのパスのパス選択フラグqiは、次のように表される。
Figure 0006155959
即ち、差分Δiの正負が、パス選択フラグqiの値に対応する。よって、差分Δiの正負
が、推定ビットの値に対応する。
ステップS109では、第1要素復号器231は、時刻t=iと時刻t=i+1との間のブランチを通るパスのうち最尤パスのパスメトリックLiをブランチ毎に求める。
時刻t=iで状態sを通るパスのうちの最尤パスのメトリックをλi(s)=αi(s)+βi(s)とする。第1要素復号器231は、トレースバックの開始位置iBでの最小のλiBを求め、Lminとする。
Figure 0006155959
ここでは、トレリス終端を行っているので、境界での状態sは0であり、βの境界条件をβiB(s)=0とすると、
Figure 0006155959
となる。ここでは、トレースバックの開始位置は、時刻t=Ktである。Lminは、最尤
パスのパスメトリックである。
第1要素復号器231は、λi+1(s’)から、パス選択情報を利用して時刻t=iに
おける状態sから時刻t=i+1における状態s’へのブランチを含むパスのうちの最尤パスのメトリックを求める。時刻t=iにおける状態s’へのパス選択情報は、Δi(s
’)の符号により得られる。ここで、時刻t=iにおける状態sから時刻t=i+1における状態s’へのブランチを含むパスのうちの最尤パスのメトリックをLi(s,s’)
とする。
ここで、qi(s’0)=0であるとき、
Figure 0006155959
であるから、時刻t=iでブランチ(s1,s’0)を通るパスがブランチ(s0,s’0)を通るパスよりも良いパスとなる。従って、
Figure 0006155959
となる。
また、同様に、qi(s’1)=0であるとき、
Figure 0006155959
であるから、時刻t=iでブランチ(s0,s’1)を通るパスがブランチ(s1,s’1)を通るパスよりも良いパスとなる。従って、
Figure 0006155959
となる。パスメトリックLiは、λi+1及びΔiに基づいて算出される。
一般化すると、qi(s’k)=0であるとき、
Figure 0006155959
となる。
さらに、同様にして、qi(s’k)=1であるとき、
Figure 0006155959
となる。
第1要素復号器231は、このようにして、時刻t=iと時刻t=i+1との間のブランチを通るパスのうち最尤パスのパスメトリックLiをブランチ毎に算出する。算出され
たパスメトリックLiは、メモリに格納される。ここで、λi+1(s’k)が存在しない場
合、パスメトリックLi(s,s’k)は、算出されない。即ち、パスメトリックがLmin
である最尤パスのパスメトリック及び時刻t=i以降で当該最尤パスに負けたパスのパスメトリックLiが、算出される。
例えば、i=Kt−1である場合、状態s’kが0以外であるλi+1(s’k)は、存在
しない。従って、i=Kt−1であり、状態s’kが0以外である場合、パスメトリック
iは、算出されない。
ステップS110では、第1要素復号器231は、パスメトリックLiを用いて、λi(s)を算出する。
第1要素復号器231は、Liを利用して、各状態について、次のように、λi(s)を算出する。算出されたλi(s)は、メモリに格納される。これにより、生き残りパス同
士が、トレースバックによって同じ状態に入力する際に、両者のうち最尤パスが選択される。これは、β演算に相当する処理である。
Figure 0006155959
但し、Li(sk,s’0)及びLi(sk,s’1)が共に存在しない場合、λi(sk)は、算出されない。このとき、λi(sk)がメモリに存在しないことになる。
ステップS111では、第1要素復号器231は、パスメトリックLiを用いて、事後
尤度L(i)を算出する。
第1要素復号器231は、Liを利用して、時刻t=iについて、次のように、事後尤
度L(i)を算出する。算出された事後尤度L(i)は、メモリに格納される。
Figure 0006155959
ここで、bは、ビット値であり、0または1をとる。bは、最尤パスの時刻t=iの入力ビット値の対抗ビット値である。Bbは、入力ビット値がbであるブランチの集合であ
る。L(i)が小さいほど、時刻t=iにおけるブランチの情報ビットが1である確率が高い。第2番目の式におけるLi(s1,s2)として、少なくとも、時刻t=i+1で最
尤パスに負けたパスが含まれる。
ステップS112では、第1要素復号器231は、変数iに(i−1)を代入し、処理がステップS107に戻る。変数iが0未満である場合(S107;NO)、処理が終了する。
第1要素復号器231は、i=Kt−1での終状態0からフラグ情報(パス選択情報)により勝ちパスをたどることで最尤パスを特定することができる。第1要素復号器231は、i=Kt−1からi=0まで降順に、事後尤度L(i)が求められる。L(i)は、次の演算におけるLe(i)で使用される。L(i)は、他の要素復号器で使用され得る
動作例1では、第1要素復号器231は、Max−Log−MAP方式と同じ尤度演算をSOVAの演算方式を利用して演算する。ただし、α演算は、バタフライ単位の演算である。SOVAにおいては、ビット毎の尤度を更新するための演算として、尤度の差分Δが利用される。バタフライに含まれるブランチ上のローカル符号の対称性を利用することにより、演算が簡単化される。よって、動作例1の方法では、Max−Log−MAP方式と同等の特性が得られる。
SOVA方式におけるΔの定義は、「勝ちパス」から「負けパス」への増加分である。ここでは、Δの定義は、情報ビットu=0の累積メトリックαと情報ビットu=1の累積メトリックαとの差とする。このΔは、大きさが尤度差に相当しており、正負の符号ビットがu=0,1の勝ち負けに対応するフラグであると解釈できる。このΔによれば、簡潔な式で他方のΔの値を求めることができる。そのため、計算量が削減される。
(動作例2)
次に動作例2について説明する。動作例2は、動作例1との共通点を有する。従って、主として相違点について説明し、共通点については、説明を省略する。
ここでは、復号処理部230の第1要素復号器231の動作例2について説明する。要素復号器231には、尤度データysと尤度データyp1(ypともいう)とが復調デマッピング処理部から入力される。第1要素復号器231は、復号ビットを出力する。第2要素復号器232の動作は、第1要素復号器231の動作と同様である。
動作例2では、第1要素復号器231は、Max−Log−MAP方式と同様の尤度演
算を、修正SOVA方式を利用して行う。ここでは、min規約が採用される。
図16及び図17は、動作例2における第1要素復号器231の尤度演算の動作フローの例を示す図である。図16の「B」は、図17の「B」と接続する。
ステップS201からステップS205までの処理は、前方累積メトリック演算(α演算)における処理である。ステップS201からステップS205までの処理は、それぞれ、動作例1のステップS101からステップS105までの処理と同様である。
ステップS206以降は、事後尤度演算(L演算)における処理である。i=Kt−1での状態s=0(終状態)からフラグ情報(パス選択フラグ)により勝ちパスをたどることで最尤パスが、特定される。最尤パスに対応するフラグ情報は、推定ビット(uiのハ
ット)に一致する。
ステップS206では、第1要素復号器231は、パスフラグを初期化する。
第1要素復号器231は、i=Ktからi=Kt−mにおいて、時刻t=iと時刻t=i+1との間のブランチのブランチメトリックを、終端位置からブランチ毎に求める。mは、遅延メモリのサイズである。ここでは、m=3である。ここでは、時刻t=Ktで、終端するとする(トレリス終端)。終端位置からm(=3)個のステップで、時刻t=Ktの状態0からすべての状態(状態0から状態7までの8個の状態)にまで、一意に達するパスを網羅的にたどることができる。時刻t=Ktの状態0の終端位置から時刻t=Kt−mの各状態(2m個の状態)までのm(=3)個のブランチのブランチメトリックの
和を、それぞれ、時刻t=Kt−mの各状態のβの値とする。時刻t=Ktの状態0から時刻t=Kt−m=Kの各状態までのパスは、それぞれ、一意に決まる。
第1要素復号器231は、トレースバックの開始位置t=iB=Kにおける生き残りパ
スをこの時点での候補パスとして、トレースバックする。時刻t=i、状態sでの生き残りパスの有無を示すパスフラグを、Fi(s)とする。Fi(s)が、1であるとき、時刻t=i、状態sでの生き残りパスが有ることを示す。トレースバック開始位置t=iB
おけるパスフラグは、次のように表される。第1要素復号器231は、パスフラグを、メモリに格納する。
Figure 0006155959
即ち、時刻t=iB=Kでは、すべての状態(状態0から状態7までの8個の状態)に
おいて、生き残りパスが有るとする。ここでは、iB=K=Kt−mである。
また、時刻t=iで状態sを通るパスのうちの最尤パスのメトリックをλi(s)=αi(s)+βi(s)とする。第1要素復号器231は、時刻t=iB=Kの各状態のλiBを求める。第1要素復号器231は、トレースバックの開始位置iBでの最小のλiBを求め
、Lminとする。
Figure 0006155959
ここでは、トレースバックの開始位置は、時刻t=iBである。Lminは、最尤パスのパスメトリックである。
ステップS207では、第1要素復号器231は、変数iを用意し、変数iに(iB
1)を代入する。
ステップS208では、第1要素復号器231は、変数iが0以上であるか否かを判定する。変数iが0以上である場合(S208;YES)、処理がステップS209に進む。変数iが0以上でない場合(S208;NO)、処理が終了する。
ステップS209では、第1要素復号器231は、時刻t=iにおける尤度の差分Δi
を算出する。ステップS209の動作は、動作例1のステップS108の動作と同様である。
ステップS210では、第1要素復号器231は、パスフラグを用いて、時刻t=iと時刻t=i+1との間のブランチを通るパスのうちの最尤パスのパスメトリックLiをブ
ランチ毎に求める。即ち、第1要素復号器231は、パスフラグFi+1(s’)が1であ
る時刻t=i+1の状態s’を通るパスのうちの最尤パスのメトリックLiを求める。
第1要素復号器231は、λi+1(s’)から、パス選択情報を利用して時刻t=iに
おける状態sから時刻t=i+1における状態s’へのブランチを含むパスのうちの最尤パスのメトリックを求める。ここで、パスフラグFi+1(s’)が0である時刻t=i+
1の状態s’を通るパスについては、求められない。時刻t=iにおける時刻t=i+1の状態s’へのパス選択情報は、Δi(s’)の符号により得られる。ここで、時刻t=
iの状態sから時刻t=i+1の状態s’へのブランチを含むパスのうちの最尤パスのメトリックをLi(s,s’)とする。
ここで、qi(s’k)=0であるとき、
Figure 0006155959
となる。
さらに、同様にして、qi(s’k)=1であるとき、
Figure 0006155959
となる。
第1要素復号器231は、このようにして、時刻t=iと時刻t=i+1との間のブランチを通るパスのうち最尤パスのパスメトリックLiを算出する。算出されたパスメトリ
ックLiは、メモリに格納される。ここで、λi+1(s’k)が存在しない場合、パスメト
リックLi(s,s’k)は、算出されない。また、Fi+1(s’k)=0である場合、パスメトリックLi(s,s’k)は、算出されない。即ち、パスメトリックがLminである最
尤パスのパスメトリック及び時刻t=i以降で当該最尤パスに負けたパスのパスメトリックLiが、算出される。
ステップS211では、第1要素復号器231は、パスメトリックLiを用いて、λi(s)を算出する。
第1要素復号器231は、Liを利用して、各状態について、次のように、λi(s)を算出する。算出されたλi(s)は、メモリに格納される。これにより、生き残りパス同
士が、トレースバックによって同じ状態に入力する際に、両者のうち最尤パスが選択される。これは、β演算に相当する処理である。
Figure 0006155959
但し、Li(sk,s’0)及びLi(sk,s’1)が共に存在しない場合、λi(sk)は、算出されない。このとき、λi(sk)がメモリに存在しないことになる。
ステップS212では、第1要素復号器231は、パスメトリックLiを用いて、事後
尤度L(i)を算出する。
第1要素復号器231は、Liを利用して、時刻t=iについて、次のように、事後尤
度L(i)を算出する。算出された事後尤度L(i)は、メモリに格納される。
Figure 0006155959
ここで、bは、ビット値であり、0または1をとる。bは、最尤パスの時刻t=iにおけるビット値の反対のビット値(対抗ビット値)である。ここで、パスフラグFi+1(s
)が1である時刻t=i+1の状態sを通るパスの最尤パスを、SOVA基本パスという。Bbは、SOVA基本パスのうち時刻t=iにおける入力ビット値がbであるパスの、
時刻t=iと時刻t=i+1との間のブランチの集合(最尤パスの対抗パスのブランチの集合)である。ただし、Bbに含まれるブランチの数が、所定値Cst未満である場合、時
刻t=iにおける入力ビット値が1−bであるSOVA基本パスに時刻t=i+1で負けたパス(負けパスの負けパス)のブランチが、Bbに含まれるブランチの数が所定値Cst
に達するまで、Bbに追加される。時刻t=iにおける入力ビット値が1−bであるSO
VA基本パスに時刻t=i+1で負けたパス(負けパスの負けパス)のブランチのうち、Bbに追加されるブランチは、どのように選択されてもよい。以上により、Bbに含まれ
るブランチの数は、所定値Cst以上になる。即ち、Lb(i)は、所定値Cst以上のパス
から最尤のものが選択されて求められる。所定値Cstは、例えば、演算処理量とシミュレーションによる特性により、決定される。所定値Cstは、0以上8(=2m)以下である
ここで、所定値Cstが0である場合、SOVA基本パスに負けたパスが選択されないため、最尤パスの時刻t=iで入力ビット値の対抗ビット値を取るパスうちの最尤パスの選択が、SOVA基本パスに基づいて、実行される。また、所定値Cstが8(=2m)であ
る場合、SOVA基本パスのすべての負けパスも選択対象に含まれるため、最尤パスの時刻t=iで入力ビット値の対抗ビット値を取るパスうちの最尤パスの選択が、修正SOVA基本パスにより、実行される。
L(i)が小さいほど、時刻t=iにおけるブランチの情報ビットが0である確率が高い。第2番目の式におけるLi(s1,s2)として、少なくとも、時刻t=i+1で最尤
パスに負けたパスが含まれる。
ステップS213では、第1要素復号器231は、パスフラグを更新する。第1要素復号器231は、Fi+1(s’)=1であり時刻t=iと時刻t=i+1との間のブランチ
(sk,s’)を通るパスがブランチ(s1-k,s’)を通るパスに対する勝ちパスである場合、Fi(sk)=1とする。また、他の状態では、Fi=0とする。
ステップS214では、第1要素復号器231は、変数iに(i−1)を代入し、処理がステップS208に戻る。変数iが0未満である場合(S208;NO)、処理が終了する。
動作例2では、Max−Log−MAP方式においてSOVA方式を取り込むことにより、β演算及びL演算が一緒に行われる。また、動作例2では、β演算相当部分において、Max−Log−MAP方式と同様の結果が得られる。さらに、動作例2では、L演算において、SOVA基本パスをベースとしてパス候補を絞ることにより、演算量が削減される。
動作例2では、最尤パスの時刻t=iで入力ビット値の対抗ビット値を取るパスうちの最尤パスの選択が、修正SOVA方式の生き残りのパスの候補に基づいて、実行される。所定値Cstが8より小さくなることで、L演算における計算量が減少する。また、所定値Cstが0より大きくなることで、L演算における対抗パスの選択肢を増やすことができ、特性劣化がより抑制される。
(動作例3)
次に動作例3について説明する。動作例3は、動作例1、動作例2との共通点を有する。従って、主として相違点について説明し、共通点については、説明を省略する。
動作例2では所定値Cstは定数(固定値)であったが、動作例3では所定値Cstの代わりに、時刻t=iに依存する値Cst(i)が導入される。
時刻t=iにおけるCst(i)は、例えば、次のように定義される。
Figure 0006155959
即ち、上記のCstは、原則Cst=C1とし、時間t1毎にCst=C2とする。
このようにすることにより、動作例3では、動作例2で所定値Cstを1ずつ変更させるよりも、対抗パスの選択における候補数をより細かく調整することができる。例えば、動作例2において、Cstが4のときに特性劣化が大きい場合、対抗パスの選択における候補の数が各時刻において4になる確率が高い。この場合、Cstを一律に5にしても特性改善が十分でない可能性がある。一方、原則Cst=4とし、時間4毎にCst=8とすることで、尤もらしいパスを選択できるビットの数は増加する。
ターボ復号処理は、事後尤度をフィードバックして繰り返す復号処理であるため、よりよい尤度の数が多いほど最終的な特性がよくなる。
また、上記のように周期的にCstを変更することで、不規則に変更する場合に比べて、切り替える処理が簡単になる。
(実施形態1の作用、効果)
本実施形態の第1要素復号器231は、前方累積メトリックの算出の際に、再計算用のデータとして、前方累積メトリックの差分Δをメモリに保存する。1つのバタフライに対して、1つの差分Δが保存される。メモリに保存されない差分Δは、メモリに保存された差分Δから容易に求められる。差分Δの正負が、推定ビットの値に対応する。第1要素復号器231によれば、バタフライに含まれるブランチ上のローカル符号の対称性を利用することにより、演算量(処理量)を削減することができる。
ここで、要素復号器の演算における処理量を求める。ここでは、1情報ビットあたりの加減算、及び、比較演算をそれぞれウェイト1の処理量としてカウントする。従来のMax−Log−MAP方式では、α演算における、加減算で19、比較演算で8、β演算及びL演算における、加減算で31、比較演算で15の、合計72の処理量である。これに対し、本実施形態の方法では、α演算における、加減算で15、比較演算で8、L演算(β演算相当を含む)における、加減算で15、比較演算で13の、合計50の処理量である。従って、本実施形態の方法では、Max−Log−MAP方式と比べて、1−50/72=31%の処理量が削減される。
図15は、特性のシミュレーション結果の例を示す図である。図15の横軸は、信号対雑音電力比である。縦軸は、BLERの対数表示である。図15では、従来のMax−Log−MAP方式、動作例1の方法、動作例2の方法、従来の修正SOVA方式の特性のシミュレーション結果の例が示される。図15のグラフでは、BLERが小さいほど、精度がよいことを示す。本実施形態の動作例1および動作例2の方法の特性は、従来のMax−Log−MAP方式と同様である。
従って、本実施形態の方法はMax−Log−MAP方式と同様の特性を有し、Max−Log−MAP方式と比べて演算処理量が少ない。
〔実施形態2〕
(構成例)
次に実施形態2について説明する。実施形態2は、実施形態1との共通点を有する。従って、主として相違点について説明し、共通点については、説明を省略する。
本実施形態では、実施形態1と並列MAP方式とを組み合わせる。ここでは、並列数をMとして、入力される情報ビット系列がM個に分割される。情報ビット系列の分割では、それぞれが極力同じサイズになるように分割される。ここでは、情報ビット系列が分割数Mで割り切れるとする。分割された小ブロックを、サブブロックと呼ぶ。サブブロック毎のMAP処理を並列に処理することで、処理遅延を1/Mにして処理を高速化する。この
とき、各サブブロックに対してのMAP処理において、α演算、β演算を、途中のビット位置から開始することになる。
本実施形態の通信システムの構成は、実施形態1と同様である。本実施形態は、実施形態1と復号演算部における第1要素復号器及び第2要素復号器の内部が異なる。
図18は、本実施形態における復号処理部の構成例を示す図である。本実施形態における復号演算部を、復号演算部240とする。図18の復号処理部240は、第1要素復号器241、第2要素復号器242、インタリーバ(IL)243、デインタリーバ(DeIL)244を含む。
第1要素復号器241は、尤度データys、尤度データyp1、第2要素復号器242の出力データ等を用いて、サブブロック毎に並列に復号ビットを算出する。第2要素復号器242は、尤度データys、尤度データyp2、第1要素復号器241の出力データ等を用いて、サブブロック毎に並列に復号ビットを算出する。インタリーバ243は、尤度データys、第1要素復号器241の出力データの順序を入れ替え、入れ替えたデータを第2要素復号器242に出力する。デインタリーバ244は、第2要素復号器242の出力データの順序を入れ替え、入れ替えたデータを第1要素復号器241に出力する。また、デインタリーバ244は、第2要素復号器242の出力データの順序を入れ替え、入れ替えたデータを復号ビットとして出力する。第1要素復号器241及び第2要素復号器242は、互いに同様の構成を有する。
図19は、第1要素復号器241の構成例を示す図である。第1要素復号器241は、第1並列MAP演算部251−1、第2並列MAP演算部251−2、・・・、第M並列MAP演算部251−M、Le演算部252を含む。
各並列MAP演算部は、同様の構成を有する。ここでは、代表して、並列MAP演算部251と表記する。
並列MAP演算部251は、それぞれ、実施形態1の第1要素復号器231と同様の構成を有する。並列MAP演算部251には、それぞれに、情報ビット系列(尤度データ)がM個に分割されたサブブロックの1つが入力される。並列MAP演算部251には、それぞれに、すべての情報ビット系列が入力されて、各並列MAP演算部251が、演算で使用するデータを抽出してもよい。並列MAP演算部251は、それぞれ、実施形態1の第1要素復号器231と同様に動作する。
Le演算部252は、各並列MAP演算部251で算出されたパスメトリックを用いて、最尤パスと対抗パスとのパスメトリックの差であるL(i)を算出し、フィードバック尤度データ又は出力尤度データとして出力する。フィードバック尤度データは、並列MAP演算部251に、事前尤度として入力される。出力尤度データは、第2要素復号器242等に向けて出力される。
(動作例4)
動作例4は、実施形態1の動作例1、動作例2、動作例3との共通点を有する。従って、主として相違点について説明し、共通点については、説明を省略する。
並列MAP演算部251の処理において、α演算、β演算を、情報ビット系列の途中のビット位置から開始することになる。このとき、隣接するサブブロックとの境界位置の前方累積メトリックα、及び、後方累積メトリックβが、使用される。情報ビット系列の先頭及び最後では、実施形態1と同様に、前方累積メトリックα、及び、後方累積メトリッ
クβが得られる。並列MAP演算部251は、演算において、初期値としての、隣接するサブブロックとの境界位置での、前方累積メトリックα、及び、後方累積メトリックβを、次のいずれかのようにして得る。
(1)トレーニング法
並列MAP演算部251は、α演算(β演算)において、境界位置に対して所定のサイズ前(後)から境界位置までの累積尤度を求め、この値を境界位置での前方累積メトリックα(後方累積メトリックβ)とする。
(2)確率伝搬法(BP(Belief Propagation)法)
並列MAP演算部251は、繰り返し処理による前回の繰り返しにおいて、境界位置での前方累積メトリックα及び後方累積メトリックβを保存しておく。並列MAP演算部251は、保存しておいた境界位置での前方累積メトリックα及び後方累積メトリックβを境界位置での初期値として使用する。
境界位置での各状態における最尤パス(生き残りパス)のパスメトリックは、(1)、(2)又はこれらの組み合わせにより使用される初期値が求められて、これらのαとβとの和によって求められる。また、境界位置でのαまたはβを使用して、各並列MAP演算部251における演算が、実施形態1と同様に行われる。
(動作例5)
動作例5は、動作例4、実施形態1の動作例1、動作例2、動作例3との共通点を有する。従って、主として相違点について説明し、共通点については、説明を省略する。
ここでは、境界位置での初期化(パスグラフ初期化)が、次のように行われる。
境界位置での生き残りパスの数をNB=2nbとする。境界位置(時刻t=iB)において、各状態からトレースバックされるパスのメトリックλi(s)=αi(s)+βi(s)
(s=0,・・・,7)について、状態値のペア(s0,s1)=(2k,2k+1)に関して、大小比較を行う。小さい方のパスを生き残りパスとみなして、パスフラグを立てる。
Figure 0006155959
nb=2の場合、この時点での生き残りパスを初期の状態としてパスフラグを立てる。
Figure 0006155959
nb=1の場合、さらに、k=0,1及びk=2,3の組み合わせで、大小比較を行い、メトリックが小さい方を生き残りパスとしてフラグを立てる。
nb=0の場合、nb=1の場合に残った2つに対して大小比較を行い、小さい方を生き残りパスとする。これは、最尤パスに対してのトレースバックを開始する境界位置での状態を特定したことに一致する。
境界位置での生き残りのパスの数を制限することで、演算処理量が削減される。
(実施形態2の作用、効果)
本実施形態の要素復号器241は、複数の並列MAP演算部251により、並列して復号処理を行う。要素復号器241によれば、並列して復号処理を行うことにより、処理時間が削減される。
以上の各実施形態は、可能な限りこれらを組み合わせて実施され得る。
〔付記〕
上記の各実施形態に関し、以下の付記を開示する。
(付記1)
開始時刻と終了時刻との間の各時刻の事後尤度を算出する復号化装置であって、
受信尤度データ及び事前尤度に基づいて第1時刻と前記第1時刻の次の時刻である第2時刻との間のブランチのブランチメトリックを算出し、前記第1時刻の第1状態及び第2状態と前記第2時刻の第3状態及び第4状態とで表されるバタフライにおける状態遷移において、前記第1状態の第1前方累積メトリックと、前記第2状態の第2前方累積メトリックと、前記第1時刻の第1状態と前記第2時刻の第3状態との間の前記ブランチメトリック及び前記第1状態の第1前方累積メトリックと前記第2状態の第2前方累積メトリックとの間の差分である第1差分に基づく第2差分とに基づいて、前記第3状態の第3前方累積メトリックと、前記第4状態の第4前方累積メトリックとを、バタフライ毎及び時刻毎に算出する演算部と、
前記第2差分を、バタフライ毎及び時刻毎に格納する記憶部と、
を備える復号化装置。
(付記2)
前記演算部は、前記終了時刻における前方累積メトリックを最尤パスのパスメトリックとし、前記最尤パスのパスメトリックと各時刻の各バタフライにおける前記第2差分とに基づいて、各状態の最尤のパスメトリックを時刻毎に算出し、各時刻において、前記最尤パスの推定ビットを前記第2差分の符号に基づいて算出し、各時刻において、前記最尤パスの推定ビットの反対ビットを含むパスのパスメトリックのうち最尤のもの及び前記最尤パスのパスメトリックに基づいて事後尤度を算出する、
付記1に記載の復号化装置。
(付記3)
前記演算部は、前記終了時刻における前方累積メトリックを最尤パスのパスメトリックとし、前記最尤パスのパスメトリックと各時刻の各バタフライにおける前記第2差分とに基づいて、各状態の最尤のパスメトリックを時刻毎に算出し、各時刻において、前記最尤パスの推定ビットを前記第2差分の符号に基づいて算出し、各時刻において、前記最尤パスの推定ビットの反対ビットを含むパスのパスメトリックであって前記最尤パスに負けたパスのパスメトリックのうち最尤のもの及び前記最尤パスのパスメトリックに基づいて事後尤度を算出する、
付記1に記載の復号化装置。
(付記4)
前記演算部は、前記最尤パスの推定ビットの反対ビットを含むパスであって前記最尤パスに負けたパスの数が前記所定数未満である場合、前記最尤パスの推定ビットの反対ビットを含むパスであって前記最尤パスに負けたパスに負けたパスを前記所定数に達するまで抽出し、当該抽出したパスのパスメトリックと前記最尤パスに負けたパスのパスメトリックのうち最尤のもの及び前記最尤パスのパスメトリックに基づいて事後尤度を算出する
付記3に記載の復号化装置。
(付記5)
前記所定数は、時刻ごとに可変である
付記4に記載の復号化装置。
(付記6)
前記所定数は、周期的に変化する、
付記4に記載の復号化装置。
(付記7)
記憶部を有し、開始時刻と終了時刻との間の各時刻の事後尤度を算出する復号化装置において、
受信尤度データ及び事前尤度に基づいて第1時刻と前記第1時刻の次の時刻である第2時刻との間のブランチのブランチメトリックを算出し、前記第1時刻の第1状態及び第2状態と前記第2時刻の第3状態及び第4状態とで表されるバタフライにおける状態遷移において、前記第1状態の第1前方累積メトリックと、前記第2状態の第2前方累積メトリックと、前記第1時刻の第1状態と前記第2時刻の第3状態との間の前記ブランチメトリック及び前記第1状態の第1前方累積メトリックと前記第2状態の第2前方累積メトリックとの間の差分である第1差分に基づく第2差分とに基づいて、前記第3状態の第3前方累積メトリックと、前記第4状態の第4前方累積メトリックとを、バタフライ毎及び時刻毎に算出し、
前記第2差分を、バタフライ毎及び時刻毎に前記記憶部に格納する、
復号化方法。
(付記8)
前記終了時刻における前方累積メトリックを最尤パスのパスメトリックとし、前記最尤パスのパスメトリックと各時刻の各バタフライにおける前記第2差分とに基づいて、各状態の最尤のパスメトリックを時刻毎に算出し、各時刻において、前記最尤パスの推定ビットを前記第2差分の符号に基づいて算出し、各時刻において、前記最尤パスの推定ビットの反対ビットを含むパスのパスメトリックのうち最尤のもの及び前記最尤パスのパスメトリックに基づいて事後尤度を算出する、
付記7に記載の復号化方法。
(付記9)
前記終了時刻における前方累積メトリックを最尤パスのパスメトリックとし、前記最尤パスのパスメトリックと各時刻の各バタフライにおける前記第2差分とに基づいて、各状態の最尤のパスメトリックを時刻毎に算出し、各時刻において、前記最尤パスの推定ビットを前記第2差分の符号に基づいて算出し、各時刻において、前記最尤パスの推定ビットの反対ビットを含むパスのパスメトリックであって前記最尤パスに負けたパスのパスメトリックのうち最尤のもの及び前記最尤パスのパスメトリックに基づいて事後尤度を算出する、
付記7に記載の復号化方法。
(付記10)
前記最尤パスの推定ビットの反対ビットを含むパスであって前記最尤パスに負けたパスの数が前記所定数未満である場合、前記最尤パスの推定ビットの反対ビットを含むパスであって前記最尤パスに負けたパスに負けたパスを前記所定数に達するまで抽出し、当該抽出したパスのパスメトリックと前記最尤パスに負けたパスのパスメトリックのうち最尤のもの及び前記最尤パスのパスメトリックに基づいて事後尤度を算出する
付記9に記載の復号化方法。
(付記11)
前記所定数は、時刻ごとに可変である
付記10に記載の復号化方法。
(付記12)
前記所定数は、周期的に変化する、
付記10に記載の復号化方法。
10 通信システム
100 送信装置
110 符号化処理部
111 第1要素符号化部
112 第2要素符号化部
113 インタリーバ(IL)
114 パラレルシリアル変換部(P/S)
120 変調マッピング処理部
130 送信処理部
182 プロセッサ
184 記憶装置
186 ベースバンド処理回路
188 無線処理回路
190 アンテナ
200 受信装置
210 受信処理部
220 復調デマッピング処理部
230 復号処理部
231 第1要素復号器
232 第2要素復号器
233 インタリーバ(IL)
234 デインタリーバ(DeIL)
282 プロセッサ
284 記憶装置
286 ベースバンド処理回路
288 無線処理回路
290 アンテナ

Claims (7)

  1. 開始時刻と終了時刻との間の各時刻の事後尤度を算出する復号化装置であって、
    受信尤度データ及び事前尤度に基づいて第1時刻と前記第1時刻の次の時刻である第2時刻との間のブランチのブランチメトリックを算出し、前記第1時刻の第1状態及び第2状態と前記第2時刻の第3状態及び第4状態とで表されるバタフライにおける状態遷移において、前記第1状態の第1前方累積メトリックと、前記第2状態の第2前方累積メトリックと、前記第1時刻の第1状態と前記第2時刻の第3状態との間の前記ブランチメトリック及び前記第1状態の第1前方累積メトリックと前記第2状態の第2前方累積メトリックとの間の差分である第1差分に基づく第2差分とに基づいて、前記第3状態の第3前方累積メトリックと、前記第4状態の第4前方累積メトリックとを、バタフライ毎及び時刻毎に算出する演算部と、
    前記第2差分を、バタフライ毎及び時刻毎に格納する記憶部と、
    を備える復号化装置。
  2. 前記演算部は、前記終了時刻における前方累積メトリックを最尤パスのパスメトリックとし、前記最尤パスのパスメトリックと各時刻の各バタフライにおける前記第2差分とに基づいて、各状態の最尤のパスメトリックを時刻毎に算出し、各時刻において、前記最尤パスの推定ビットを前記第2差分の符号に基づいて算出し、各時刻において、前記最尤パスの推定ビットの反対ビットを含むパスのパスメトリックのうち最尤のもの及び前記最尤パスのパスメトリックに基づいて事後尤度を算出する、
    請求項1に記載の復号化装置。
  3. 前記演算部は、前記終了時刻における前方累積メトリックを最尤パスのパスメトリックとし、前記最尤パスのパスメトリックと各時刻の各バタフライにおける前記第2差分とに基づいて、各状態の最尤のパスメトリックを時刻毎に算出し、各時刻において、前記最尤パスの推定ビットを前記第2差分の符号に基づいて算出し、各時刻において、前記最尤パスの推定ビットの反対ビットを含むパスのパスメトリックであって前記最尤パスに負けたパスのパスメトリックのうち最尤のもの及び前記最尤パスのパスメトリックに基づいて事後尤度を算出する、
    請求項1に記載の復号化装置。
  4. 前記演算部は、前記最尤パスの推定ビットの反対ビットを含むパスであって前記最尤パスに負けたパスの数が所定数未満である場合、前記最尤パスの推定ビットの反対ビットを含むパスであって前記最尤パスに負けたパスに負けたパスを前記所定数に達するまで抽出し、当該抽出したパスのパスメトリックと前記最尤パスに負けたパスのパスメトリックのうち最尤のもの及び前記最尤パスのパスメトリックに基づいて事後尤度を算出する
    請求項3に記載の復号化装置。
  5. 前記所定数は、時刻ごとに可変である
    請求項4に記載の復号化装置。
  6. 前記所定数は、周期的に変化する、
    請求項4に記載の復号化装置。
  7. 記憶部を有し、開始時刻と終了時刻との間の各時刻の事後尤度を算出する復号化装置において、
    受信尤度データ及び事前尤度に基づいて第1時刻と前記第1時刻の次の時刻である第2時刻との間のブランチのブランチメトリックを算出し、前記第1時刻の第1状態及び第2状態と前記第2時刻の第3状態及び第4状態とで表されるバタフライにおける状態遷移において、前記第1状態の第1前方累積メトリックと、前記第2状態の第2前方累積メトリックと、前記第1時刻の第1状態と前記第2時刻の第3状態との間の前記ブランチメトリック及び前記第1状態の第1前方累積メトリックと前記第2状態の第2前方累積メトリックとの間の差分である第1差分に基づく第2差分とに基づいて、前記第3状態の第3前方累積メトリックと、前記第4状態の第4前方累積メトリックとを、バタフライ毎及び時刻毎に算出し、
    前記第2差分を、バタフライ毎及び時刻毎に前記記憶部に格納する、
    復号化方法。
JP2013169976A 2013-08-19 2013-08-19 復号化装置、及び、復号化方法 Expired - Fee Related JP6155959B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013169976A JP6155959B2 (ja) 2013-08-19 2013-08-19 復号化装置、及び、復号化方法
US14/460,674 US8976912B1 (en) 2013-08-19 2014-08-15 Decoding apparatus and decoding method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013169976A JP6155959B2 (ja) 2013-08-19 2013-08-19 復号化装置、及び、復号化方法

Publications (2)

Publication Number Publication Date
JP2015039156A JP2015039156A (ja) 2015-02-26
JP6155959B2 true JP6155959B2 (ja) 2017-07-05

Family

ID=52466851

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013169976A Expired - Fee Related JP6155959B2 (ja) 2013-08-19 2013-08-19 復号化装置、及び、復号化方法

Country Status (2)

Country Link
US (1) US8976912B1 (ja)
JP (1) JP6155959B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7526054B2 (ja) 2020-08-19 2024-07-31 東京インキ株式会社 オフセット印刷機用洗浄剤および洗浄方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016051467A1 (ja) * 2014-09-29 2016-04-07 株式会社日立国際電気 無線通信装置及び無線通信システム
CN111181575B (zh) * 2019-12-19 2021-09-14 西南大学 一种基于反向蝶形计算的Turbo码译码器及处理方法
CN115085742B (zh) * 2022-08-18 2022-11-15 杰创智能科技股份有限公司 解码方法、装置、电子设备和存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5537444A (en) * 1993-01-14 1996-07-16 At&T Corp. Extended list output and soft symbol output viterbi algorithms
JP2000341140A (ja) * 1999-05-28 2000-12-08 Sony Corp 復号方法及び復号装置
US7237180B1 (en) * 2002-10-07 2007-06-26 Maxtor Corporation Symbol-level soft output Viterbi algorithm (SOVA) and a simplification on SOVA
US7246298B2 (en) * 2003-11-24 2007-07-17 Via Technologies, Inc. Unified viterbi/turbo decoder for mobile communication systems
DE102004003096B3 (de) * 2004-01-21 2005-11-24 Infineon Technologies Ag Schaltung zur Durchführung der Add-Compare-Select-Operation mit darüber hinausgehender Funktionalität
US7222288B2 (en) * 2004-07-30 2007-05-22 Hellosoft, Inc. Modified soft output Viterbi algorithm for truncated trellis
JP4432781B2 (ja) 2005-01-17 2010-03-17 株式会社日立製作所 誤り訂正復号器
US7607072B2 (en) * 2005-01-28 2009-10-20 Agere Systems Inc. Method and apparatus for-soft-output viterbi detection using a multiple-step trellis
JP4571580B2 (ja) 2005-12-15 2010-10-27 富士通株式会社 復号器
JP5116677B2 (ja) 2006-08-22 2013-01-09 パナソニック株式会社 軟出力復号器、反復復号装置、及び軟判定値算出方法
JP2008118327A (ja) * 2006-11-02 2008-05-22 Nec Electronics Corp ビタビ復号方法
JP5229062B2 (ja) 2009-03-31 2013-07-03 日本電気株式会社 超高速ターボデコーダ及び超高速ターボ検出器
RU2421900C1 (ru) * 2010-02-27 2011-06-20 Тимур Георгиевич Келин Многоканальный последовательный декодер витерби

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7526054B2 (ja) 2020-08-19 2024-07-31 東京インキ株式会社 オフセット印刷機用洗浄剤および洗浄方法

Also Published As

Publication number Publication date
JP2015039156A (ja) 2015-02-26
US8976912B1 (en) 2015-03-10
US20150049846A1 (en) 2015-02-19

Similar Documents

Publication Publication Date Title
JP3674111B2 (ja) データ伝送装置
JP3640924B2 (ja) 移動通信システムにおける構成復号装置及び方法
JP4929342B2 (ja) ノイズ分散による入力対数尤度比のスケーリングに基づくsum−product復号法(ビリーフプロパゲーション法)の計算手法
JP4227481B2 (ja) 復号装置および復号方法
JP3666430B2 (ja) 情報送信装置及び情報送信方法、並びに情報受信装置及び情報受信方法
JP2005532766A (ja) ディジタル通信システムにおけるターボ復号を利用したビットエラー率及びフレームエラー率を減少させる装置及び方法
CN107911195B (zh) 一种基于cva的咬尾卷积码信道译码方法
JP6155959B2 (ja) 復号化装置、及び、復号化方法
CN109075804B (zh) 使用极化码的通信设备和通信方法
KR101051933B1 (ko) 트렐리스의 버터플라이 구조를 이용한 맵 디코딩을 위한메트릭 계산
EP2339757B1 (en) Power-reduced preliminary decoded bits in viterbi decoder
JP5437874B2 (ja) 受信装置および受信方法
US8009773B1 (en) Low complexity implementation of a Viterbi decoder with near optimal performance
US7925964B2 (en) High-throughput memory-efficient BI-SOVA decoder architecture
US8230311B2 (en) Method and apparatus for turbo code decoding
KR20070065831A (ko) 연산 회로
JP5859147B2 (ja) ビット尤度演算装置およびビット尤度演算方法
CN106209117B (zh) 一种低资源消耗的多参数可配置Viterbi译码器
JP2010130271A (ja) 復号器および復号方法
Veshala et al. FPGA based design and implementation of modified Viterbi decoder for a Wi-Fi receiver
KR100895670B1 (ko) 슬라이딩 윈도우 방식을 이용한 터보 디코딩 방법, 이를 수행하는 터보 디코더 및 무선 수신 장치
JP2009532952A (ja) トレリスを高速処理するためのパイプライン化された状態更新のスケジューリング
Viraktamath et al. Impact of code rate on the performance of Viterbi decoder in AWGN channel
Osman et al. Performance of multilevel turbo codes with group partitioning over satellite channels
JP2012182559A (ja) 復号装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160510

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170321

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170404

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170420

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170522

R150 Certificate of patent or registration of utility model

Ref document number: 6155959

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees