JPWO2019234903A1 - 復号装置、復号方法、及びプログラム - Google Patents

復号装置、復号方法、及びプログラム Download PDF

Info

Publication number
JPWO2019234903A1
JPWO2019234903A1 JP2020523948A JP2020523948A JPWO2019234903A1 JP WO2019234903 A1 JPWO2019234903 A1 JP WO2019234903A1 JP 2020523948 A JP2020523948 A JP 2020523948A JP 2020523948 A JP2020523948 A JP 2020523948A JP WO2019234903 A1 JPWO2019234903 A1 JP WO2019234903A1
Authority
JP
Japan
Prior art keywords
path
state
time point
metric
integer
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.)
Granted
Application number
JP2020523948A
Other languages
English (en)
Other versions
JP7052868B2 (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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of JPWO2019234903A1 publication Critical patent/JPWO2019234903A1/ja
Application granted granted Critical
Publication of JP7052868B2 publication Critical patent/JP7052868B2/ja
Active 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/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
    • H03M13/4115Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors list output Viterbi 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • 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/25Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
    • H03M13/256Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with trellis coding, e.g. with convolutional codes and TCM
    • 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/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/3961Arrangements of methods for branch or transition metric calculation
    • 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
    • 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/63Joint error correction and other techniques
    • H03M13/6331Error control coding in combination with equalisation

Abstract

本開示にかかる復号装置(10)は、トレリス線図における時点Nの状態Sに向かうパスに対応するブランチラベルと、複数の受信信号系列とを用いて状態Sにおけるブランチメトリックを算出する多入力ブランチメトリック計算ユニット(11)と、時点Nの状態Sにおけるパスメトリックを算出するパスメトリック計算ユニット(12)と、算出された複数のパスメトリックのうち、L個のパスメトリックに対応するパスラベルを格納する生き残りパスリストメモリ(13)と、を備える。パスメトリック計算ユニット(12)は、時点Nの前記状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスラベルに、ブランチラベルを結合して時点Nの前記状態Sにおけるパスラベルを生成し、生き残りパスリストメモリ(13)は、トレリス線図における終点において選択されたL個のパスメトリックに対応するパスラベルを送信信号系列として出力する。

Description

本開示は復号装置、復号方法、及びプログラムに関する。
ディジタルデータ通信システム及び記憶システムの運用において、様々な要因によって生じ得るビット誤りへの対策が施されている。なかでも代表的な技術として、冗長なデータを付加する事で、ビット誤りの訂正を可能にする誤り訂正符号化技術が知られている。
誤り訂正符号化技術は、送信側で情報データに冗長データを付加して送信信号系列を生成する符号化(エンコード)処理と、受信側で受け取ったノイズを含む受信信号系列から送信信号系列を推定する復号(デコード)処理からなる。一般にエンコード処理よりもデコード処理の方が多くの計算を必要とし、その計算の効率化や実現手段が実用上の課題となることが多い。
一般的なデコード処理方法として、ビタビアルゴリズムを用いたビタビデコーダが良く知られている。これは送信信号系列をトレリス線図と呼ばれるグラフの経路(パス)とみなし、与えられた受信系列に対して最も尤度の高いパスを効率的に選出する手段としてビタビアルゴリズムを利用する。ビタビデコーダは、ビタビアルゴリズムを利用することにより送信信号系列を推定する方法である。
誤り訂正能力の向上のためのビタビデコーダの改良方法が幾つか知られている。特許文献2あるいは非特許文献1では、受信系列に対して最も尤度の高いパスを一つだけ選択するのではなく、尤度の高い方から予め定められた複数個のパスを選択して出力する、リスト出力ビタビデコーダが開示されている。また特許文献3では、尤度の高いパスを出力するのではなく、そのパスの定める送信信号系列の各ビットに関する信頼度(事後確率)を算出し、出力する軟出力ビタビデコーダが開示されている。これらはいずれも、特許文献1に提示されているような、複数の誤り訂正符号を組み合わせて使用する連接符号化方式に関するデコード処理方法として有用である事が知られている。
さらに、特許文献4には、複数の送信アンテナ及び複数の受信アンテナを有するMIMO(Multiple-Input Multiple-Output)伝送系におけるビタビ復号器の構成が開示されている。特許文献4に開示されているビタビ復号器は、複数の受信アンテナから受け取った一つの受信信号系列から送信信号系列を算出する。
米国特許第5446747号 米国特許第5537444号 米国特許第5933462号 特開2011−239107号公報
N. Seshadri and C.-E. W. Sundberg, "List Viterbi decoding algorithms with applications," IEEE Transactions on Communications, vol.42, no.2/3/4, Feb./Mar./Apr. 1994. E. Arikan, "Channel polarization: A method for constructing capacity-achieving codes for symmetric binary-input memoryless channels," IEEE Transactions on Information Theory, vol.55, no.7, pp.3051-3073, July 2009. I. Tal and A. Vardy, "List decoding of polar codes," IEEE Transactions on Information Theory, vpl.61, no.5, pp.2213-2226, May 2015.
このように、一般的なビタビデコーダ及びその改良は、いずれも与えられた一つの受信信号系列に対して、それに対応する送信信号系列、あるいは送信信号系列の候補となるリスト、あるいは信頼度を算出する。つまり、一般的なビタビデコーダ及びその改良は、与えられた一つの受信信号系列に対応する送信信号系列に関する情報量を増やすことによって、デコード処理結果の精度を向上させることを目指している。この技術の発展形として、入力である受信信号系列が複数与えられた場合に、そのいずれかに対して尤度の高い送信信号系列のリストを算出することが求められている。
本開示の1つの目的は、入力である受信信号系列が複数与えられた時に、そのいずれかに対して尤度の高い送信信号系列のリストを算出することができる復号装置、復号方法、及びプログラムを提供することにある。
本開示の第1の態様にかかる復号装置は、トレリス線図における時点N(Nは0以上の整数)の状態S(Sは0以上の整数)に向かうパスに対応するブランチラベルと、複数の受信信号系列とを用いて前記状態Sにおけるブランチメトリックを算出する多入力ブランチメトリック計算ユニットと、前記時点Nの状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスメトリックに前記時点Nの前記状態Sにおけるブランチメトリックを加算して、前記時点Nの前記状態Sにおけるパスメトリックを算出するパスメトリック計算ユニットと、算出された複数の前記パスメトリックのうち、L(Lは1以上の整数)個のパスメトリックに対応するパスラベルを格納する生き残りパスリストメモリと、を備え、前記パスメトリック計算ユニットは、前記時点Nの前記状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスラベルに、前記ブランチラベルを結合して前記時点Nの前記状態Sにおけるパスラベルを生成し、前記生き残りパスリストメモリは、前記トレリス線図における終点において選択されたL個のパスメトリックに対応するパスラベルを送信信号系列として出力する。
本開示の第2の態様にかかる復号方法は、トレリス線図における時点N(Nは0以上の整数)の状態S(Sは0以上の整数)に向かうパスに対応するブランチラベルと、複数の受信信号系列とを用いて前記状態Sにおけるブランチメトリックを算出し、前記時点Nの状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスメトリックに前記時点Nの前記状態Sにおけるブランチメトリックを加算して、前記時点Nの前記状態Sにおけるパスメトリックを算出し、算出された複数の前記パスメトリックのうち、L(Lは1以上の整数)個のパスメトリックに対応するパスラベルを格納し、前記時点Nの前記状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスラベルに、前記ブランチラベルを結合して前記時点Nの前記状態Sにおけるパスラベルを生成し、前記トレリス線図における終点において選択されたL個のパスメトリックに対応するパスラベルを送信信号系列として出力する。
本開示の第3の態様にかかるプログラムは、トレリス線図における時点N(Nは0以上の整数)の状態S(Sは0以上の整数)に向かうパスに対応するブランチラベルと、複数の受信信号系列とを用いて前記状態Sにおけるブランチメトリックを算出し、前記時点Nの状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスメトリックに前記時点Nの前記状態Sにおけるブランチメトリックを加算して、前記時点Nの前記状態Sにおけるパスメトリックを算出し、算出された複数の前記パスメトリックのうち、L(Lは1以上の整数)個のパスメトリックに対応するパスラベルを格納し、前記時点Nの前記状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスラベルに、前記ブランチラベルを結合して前記時点Nの前記状態Sにおけるパスラベルを生成し、前記トレリス線図における終点において選択されたL個のパスメトリックに対応するパスラベルを送信信号系列として出力することをコンピュータに実行させる。
本開示により、入力である受信信号系列が複数与えられた時に、そのいずれかに対して尤度の高い送信信号系列のリストを算出することができる復号装置、復号方法、及びプログラムを提供するができる。
実施の形態2にかかる多入力・リスト出力ビタビデコード方法のフローチャートを示す図である。 実施の形態2にかかるトレリス線図の一例を示す図である。 実施の形態2にかかる多入力・リスト出力ビタビデコーダの構成図である。 実施の形態3にかかる多入力・リスト出力ビタビデコード方法のフローチャートを示す図である。 実施の形態3にかかる多入力・リスト出力ビタビデコーダの構成図である。 実施の形態4にかかるデコーダの構成図である。 実施の形態4にかかるPolar符号のリストデコーダを用いてデコード処理した誤り率特性を示す図である。 実施の形態2にかかる多入力・リスト出力ビタビデコーダの具体的な動作を示す図である。 実施の形態2にかかる生き残りパスを示す図である。 実施の形態1にかかる復号装置の構成図である。 それぞれの実施の形態にかかるデコーダの構成図である。
(実施の形態1)
以下、図面を参照して本開示の実施の形態について説明する。はじめに、図10を用いて実施の形態1にかかる復号装置10の構成図について説明する。復号装置10は、プロセッサがメモリに格納されたプログラムを実行することによって動作するコンピュータ装置であってもよい。復号装置10は、多入力ブランチメトリック計算ユニット11、パスメトリック計算ユニット12、及び生き残りパスリストメモリ13を有している。多入力ブランチメトリック計算ユニット11、パスメトリック計算ユニット12、及び生き残りパスリストメモリ13は、プロセッサがメモリに格納されたプログラムを実行することによって処理が実行されるソフトウェアもしくはモジュールであってもよい。または、多入力ブランチメトリック計算ユニット11、パスメトリック計算ユニット12、及び生き残りパスリストメモリ13は、回路もしくはチップ等のハードウェアであってもよい。
多入力ブランチメトリック計算ユニット11は、トレリス線図における時点N(Nは0以上の整数)の状態S(Sは0以上の整数)に向かうパスに対応するブランチラベルと、複数の受信信号系列とを用いて時点Nの状態Sにおけるブランチメトリックを算出する。ブランチラベルは、例えば、ビット列を用いて示される。ブランチメトリックは、受信信号系列と、ブランチラベルとの間の距離を示す。ブランチメトリックの数値が小さいほど、受信信号系列に対するブランチラベルの尤度が高い。
パスメトリック計算ユニット12は、時点Nの状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスメトリックに、時点Nの状態Sにおけるブランチメトリックを加算して、時点Nの状態Sにおけるパスメトリックを算出する。つまり、パスメトリックは、ブランチメトリックの累積加算として示される。
さらに、パスメトリック計算ユニット12は、時点Nの状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスラベルに、ブランチラベルを結合して時点Nの状態Sにおけるパスラベルを生成する。パスラベルは、時点0から時点Nまでに経由したパスに関連付けられたブランチラベルが結合された値である。パスラベルは、送信信号系列と言い換えられてもよい。
生き残りパスリストメモリ13は、算出された複数のパスメトリックのうち、L(Lは1以上の整数)個のパスメトリックに対応するパスラベルを格納する。さらに、生き残りパスリストメモリ13は、トレリス線図における終点において選択されたL個のパスメトリックに対応するパスラベルを送信信号系列として出力する。また、生き残りパスリストメモリ13は、算出された複数のパスメトリックのうち、値の小さい順にL個のパスメトリックに対応するパスラベルを格納してもよい。
トレリス線図の終点においては、少なくとも1つの状態が存在する。生き残りパスリストメモリ13は、トレリス線図における終点に存在する少なくとも1つの状態へ向かうパスに対応付けられたL個のパスメトリックに対応するパスラベルを格納する。
以上説明したように、図10の復号装置10は、複数の受信信号系列のいずれかに対して尤度の高いL個の送信信号系列を算出することができる。尤度の高いL個の送信信号系列は、送信信号系列のリストとして出力される。
(実施の形態2)
続いて、図1を用いて実施の形態2にかかる復号装置が実行する、多入力・リスト出力ビタビデコード方法のフローチャートについて説明する。
図1のフローチャートは、初期設定方法(101)、逐次演算方法(102)、終結方法(103)からなる。復号装置が図1のフローチャートを実行するにあたり、入力として、M個の長さNの受信信号系列が与えられている(Mは2以上の整数;Nは正数)。M個の長さNの受信信号系列をr0 N-1(m)=(r0(m),r1(m),…,rN-1(m)), m=0,1,…,M-1、と記す。また、図1の出力するL個の送信信号系列をc0 N-1(l,0), l=0,1,…,L-1と記す。これらは、r0 N-1(m), m=0,1,…,M-1のいずれかに対して尤度の高いL個の送信信号系列のリストとなる。図1のフローチャート中に示したφt(l,i)とc0 t-1(l,i)とは、各々時点t、状態iにおけるl番目の生き残りパスに関するパスメトリックとパスラベルとを表す。mt-1(l,i)は、受信信号系列を指定するインデックスを表し、パスメトリックφt(l,i)が、パスラベルc0 t-1(l,i)と受信信号系列r0 t-1(mt-1(l,i))によって算出される事を意味する。パスメトリックの算出方法については後述する。
図2は、トレリス線図の一例を示す。黒丸で示したノードは状態を表す。始点の0から終点のNまでN+1個の時点があり(図2横方向)、各状態は時点毎に分類される。図2においては、各時点にS個の状態がある。トレリス線図において、時点tの状態iと時点t+1の状態jとの間に枝がある場合、その枝にはビット列が割り当てられており、これをブランチラベルと呼んでct[i;j]と記す。
受信信号rt(m)とブランチラベルct[i;j]との間のブランチメトリックをλt (m)[i;j]と記す。ブランチメトリックの算出方法の一例を次に示す。ブランチラベルct[i;j]をBビットのデータb0,b1,…,bB-1とすると、受信信号rt(m)は、B個の実数値y0,y1,…,yB-1で表現できる。この時ブランチメトリックλt (m)[i;j]は、次の式1によって定まる。
Figure 2019234903

・・・(式1)
式1において、δ(bk,yk)は、bk=1かつyk<0、あるいはbk=0かつyk≧0の時に0となり、それ以外のケースでは1となる関数とする。このブランチメトリックは、受信信号と送信ビット列との間の距離を表しており、ブランチメトリックの数値が小さい方が、受信信号に対するブランチラベルの尤度が高いと言える。尚、時点tの状態iと時点t+1の状態jとの間に枝が無い場合には、λt (m)[i;j]=∞とする。図1中では式1の右辺をd(rt(m),ct[i;j])と記述している。
パスメトリックは、ブランチメトリックの累積加算である。パスラベルは、ブランチラベルの系列、即ち送信信号系列である。従って、パスメトリックは、受信信号系列と送信信号系列との間の距離を表す数値となり、パスメトリックが小さい方ほど尤度が高いと言える。
図3は本開示の多入力・リスト出力ビタビデコーダの一構成例を示すブロック図である。図3の多入力・リスト出力ビタビデコーダは、M個の受信信号系列の各々から式1に例示したブランチメトリックを算出する多入力ブランチメトリック計算ユニット301を備える。さらに、多入力・リスト出力ビタビデコーダは、パスメトリックを計算するためのパスメトリック計算ユニット302を備える。さらに、多入力・リスト出力ビタビデコーダは、生き残りパスのパスメトリックを保存するパスメトリックメモリ303を備える。さらに、多入力・リスト出力ビタビデコーダは、生き残りパスに対応する受信信号系列のインデックスを保存するインデックスメモリ304を備える。インデックスメモリ304は、さらに多入力ブランチメトリック計算ユニット301の出力からパスメトリックの計算に必要なブランチメトリックを選択するセレクタ306の選択信号を生成する。さらに、多入力・リスト出力ビタビデコーダは、生き残りパスのリストを保存する生き残りパスリストメモリ305を備える。
[動作の説明]
次に実施形態2に係る図1の動作について図2のトレリス線図を用いて説明する。多入力・リスト出力ビタビデコーダへの入力として、M個の長さNの受信信号系列
r0 N-1(m), m=0,1,…,M-1、が与えられる。簡単のため、出力する送信信号系列のリストサイズLに対して、M≦Lとする。
図1の初期設定方法(101)において、多入力ブランチメトリック計算ユニット301は、図2の時点0におけるパスメトリックの初期値と、パスメトリックに対応する受信信号系列を指定するインデックスの初期値とを設定する。前述の様にφ0(l,0)は、時点0、状態0におけるl番目のパスメトリックを表し、l=0,1,…,M-1に関して、予め設定された初期値μlに指定する。以下では簡単のため、初期値を0として説明する。また、これ以外の時点0におけるパスメトリックφ0(l,j)には最大の数値(∞と表記する)を割り当てておく。また、割りあてたパスメトリックに対する受信信号系列のインデックスをm0(l,j)=l, 0≦l<L, 0≦j<Sと指定する。尚、j=0以外のm0(l,j)については、任意の値で構わない。
逐次演算方法(102)において、多入力ブランチメトリック計算ユニット301は、時点tの生き残りパスのパスラベル等を用いて、時点t+1の生き残りパスラベル等を算出する。生き残りパスのパスラベル等は、生き残りパスのパスラベル、パスメトリック、及びパスメトリック算出のための受信信号系列を指定するインデックスを含む。
多入力ブランチメトリック計算ユニット301は、はじめに、受信信号rt(m)と、時点tの状態iと時点t+1の状態jとの間のブランチラベルct[i;j]と、式1とを用いてブランチメトリックλt (m)[i;j]を算出する。ブランチメトリックの算出は、かかわる全ての0≦m<M, 0≦i,j<Sについて行うこととする。
次に、ブランチメトリックを用いて、時点t+1の各状態jに関する生き残りパスに関するパスメトリックを算出する方法について説明する。時点tの状態iにおける生き残りパスのパスメトリックと前記のブランチメトリックを使用した次の式2に示した計算を、すべての0≦k<L, 0≦i<Sについて行う。
Figure 2019234903

・・・(式2)
ここで、mt(k,i)は、パスメトリックφt(k,i)の算出に係わる受信信号系列を指定するインデックである。従って、式2は、時点tの状態iを経由して、時点t+1の状態jに到達するパスのパスメトリックとなる。すべての0≦k<L, 0≦i<Sに渡って、式2の値を算出し、この中で小さい方からl番目のパスメトリックを(0≦l<L)、時点t+1の状態jのl番目の生き残りパスのパスメトリックとして、φt+1(l,j)と記す。式2において、φt+1(l,j)を与えるkとiの組を各々k*及びi*記すと、パスメトリックφt+1(l,j)の算出にかかわる受信信号系列のインデックスmt+1(l,j)はmt(k*,i*)となる。尚、図1中のmin(l)はl番目に小さい事を意味し、argmin(l)はl番目に小さい値をとる定義域の値(kとiとの組)を意味する。
時点t+1の状態jのl番目の生き残りパスを表すパスラベルは、c0 t(l,j)と表される。c0 t(l,j)は、前記のk*及びi*によって、時点tの状態i*におけるk*番目の生き残りパスのパスラベルc0 t-1(k*,i*)に、時点tの状態i*と時点t+1の状態jとの間のブランチラベルct[i*;j]を結合したとして表記される。逐次演算方法(102)は、以上の処理を時点1から時点N−1までの間、繰り返し行う。
終結方法(103)は終点Nにおける生き残りパスのパスラベル、パスメトリック、及び、パスメトリック算出のための受信信号系列を指定するインデックスを算出する。終点においては状態0以外に枝が無いため、状態0に到達するパスのみを考慮する点を除いて、その動作は逐次計算方法(102)と同様である。以上の方法によって、与えられたM個の長さNの受信信号系列r0 N-1(m), m=0,1,…,M-1、について、そのいずれかに対して尤度の大きいL個の送信信号系列c0 N-1(l,0), l=0,1,…,L-1を算出する。
図3に示した多入力・リスト出力ビタビデコーダの動作は、図1のフローチャートにおいて説明した動作と同様である。多入力ブランチメトリック計算ユニット301は、図1の逐次演算方法(102)及び終結方法(103)における前記ブランチメトリックλt (m)[i;j] を算出する。多入力ブランチメトリック計算ユニット301において算出されたブランチメトリックは、セレクタ306を介してパスメトリック計算ユニット302へ出力される。パスメトリック計算ユニット302は、式2を用いてパスメトリックを算出する。尚、式2におけるパスメトリックφt(k,i)は、パスメトリックメモリ303に保持されている。インデックスmt(k,i)は、インデックスメモリ304に保持されている。パスメトリック計算ユニット302は、セレクタ306を介して受け取ったmt(k,i)の指定するブランチメトリックをφt(k,i)に加算する。図1において説明した動作と同様に、新たに選出されたパスメトリックφt+1(l,j)は、パスメトリックメモリ303に格納される。インデックスmt+1(l,j)は、インデックスメモリ304に格納される。パスラベルc0 t-1(l,j)は、生き残りパスリストメモリ305に格納される。
[具体的な動作例]
続いて、図8を用いて、図3に示した多入力・リスト出力ビタビデコーダの具体的な動作例について説明する。図8は、具体的な動作を説明する際に使用するトレリス線図を示している。図8のトレリス線図は、時点数N+1=5、状態数S=4である。図8のトレリス線図における各ブランチには4ビットのブランチラベルが割り当てられている。入力となる受信信号系列の数をM=4として、各受信信号系列r0 3(m), m=0,1,2,3が次の様に与えられた場合について説明する。
r0(0)=(-4.26,-0.35,+0.47,+2.16), r1(0)=(-1.73,-0.17,+1.84,+0.94)
r2(0)=(+0.42,+2.69,-4.89,-1.26), r3(0)=(+1.85,+2.03,+0.04,-2.59)
r0(1)=(-4.26,-0.35,+0.47,+2.16), r1(1)=(-0.10,+2.01,-0.75,+0.27)
r2(1)=(+0.42,+2.69,-4.89,-1.26), r3(1)=(+0.06,-2.76,-1.12,+2.05)
r0(2)=(-0.58,+0.06,-1.80,-0.48), r1(2)=(-0.10,+2.01,-0.75,+0.27)
r2(2)=(+0.42,+2.69,-4.89,-1.26), r3(2)=(+1.85,+2.03,+0.04,-2.59)
r0(3)=(-0.58,+0.06,-1.80,-0.48), r1(3)=(-1.73,-0.17,+1.84,+0.94)
r2(3)=(+0.42,+2.69,-4.89,-1.26), r3(3)=(+0.06,-2.76,-1.12,+2.05)
パスメトリックと受信信号系列を指定するインデックスの初期値とを図1中の初期設定方法(101)にあるように設定する。尚、ここではパスメトリックの初期値を各々μ0=6.13, μ1=8.90, μ2=11.01, μ3=11.62とする。以下、時点及び状態毎に計算過程を示す。
図8は、時点0−1間のブランチラベルが全部で4パターン(0000,1111,0011,1100)あることを示している。合計16個のブランチメトリックは、式1に従って以下の様に計算できる。
λ0 (0)[0,0]=4.61, λ0 (0)[0,1]=2.63, λ0 (0)[0,2]=7.24, λ0 (0)[0,3]=0.00
λ0 (1)[0,0]=4.61, λ0 (1)[0,1]=2.63, λ0 (1)[0,2]=7.24, λ0 (1)[0,3]=0.00
λ0 (2)[0,0]=2.86, λ0 (2)[0,1]=0.06, λ0 (2)[0,2]=0.58, λ0 (2)[0,3]=2.34
λ0 (3)[0,0]=2.86, λ0 (3)[0,1]=0.06, λ0 (3)[0,2]=0.58, λ0 (3)[0,3]=2.34
時点t=1の状態0,1,2,3における生き残りパスのパスメトリック、パスメトリックの算出に係わる受信信号系列を指定するインデックス、及び生き残りパスラベルを図1中逐次演算方法(102)に従って計算すると以下のようになる。
φ1(0,0)=10.74, m1(0,0)=0, c0(0,0)=0000
φ1(1,0)=13.51, m1(1,0)=1, c0(1,0)=0000
φ1(2,0)=13.87, m1(2,0)=2, c0(2,0)=0000
φ1(3,0)=14.48, m1(3,0)=3, c0(3,0)=0000
φ1(0,1)=8.76, m1(0,1)=0, c0(0,1)=1111
φ1(1,1)=11.07, m1(1,1)=2, c0(1,1)=1111
φ1(2,1)=11.53, m1(2,1)=1, c0(2,1)=1111
φ1(3,1)=11.68, m1(3,1)=3, c0(3,1)=1111
φ1(0,2)=11.59, m1(0,2)=2, c0(0,2)=0011
φ1(1,2)=12.20, m1(1,2)=3, c0(1,2)=0011
φ1(2,2)=13.37, m1(2,2)=0, c0(2,2)=0011
φ1(3,2)=16.14, m1(3,2)=1, c0(3,2)=0011
φ1(0,3)=6.13, m1(0,3)=0, c0(0,3)=1100
φ1(1,3)=8.90, m1(1,3)=1, c0(1,3)=1100
φ1(2,3)=13.35, m1(2,3)=2, c0(2,3)=1100
φ1(3,3)=13.96, m1(3,3)=3, c0(3,3)=1100
時点1−2間のブランチラベルも同様に全部で4パターン(0000,1111,0011,1100)あり、合計16個のブランチメトリックは式1に従って計算できる。これを使って、時点t=2に関する各データは次の様に算出される。
φ2(0,0)=11.55, m2(0,0)=0, c0 1(0,0)=1111 1111
φ2(1,0)=12.64, m2(1,0)=0, c0 1(1,0)=0000 0000
φ2(2,0)=13.35, m2(2,0)=2, c0 1(2,0)=1111 1111
φ2(3,0)=13.81, m2(3,0)=1, c0 1(3,0)=1111 1111
φ2(0,1)=10.66, m2(0,1)=0, c0 1(0,1)=1111 0000
φ2(1,1)=11.92, m2(1,1)=2, c0 1(1,1)=1111 0000
φ2(2,1)=12.38, m2(2,1)=1, c0 1(2,1)=1111 0000
φ2(3,1)=13.52, m2(3,1)=0, c0 1(3,1)=0000 1111
φ2(0,2)=6.13, m2(0,2)=0, c0 1(0,2)=1100 1100
φ2(1,2)=11.66, m2(1,2)=1, c0 1(1,2)=1100 1100
φ2(2,2)=11.96, m2(2,2)=2, c0 1(2,2)=0011 0011
φ2(3,2)=13.97, m2(3,2)=3, c0 1(3,2)=1100 1100
φ2(0,3)=9.27, m2(0,3)=1, c0 1(0,3)=1100 0011
φ2(1,3)=10.81, m2(1,3)=0, c0 1(1,3)=1100 0011
φ2(2,3)=12.20, m2(2,3)=3, c0 1(2,3)=0011 1100
φ2(3,3)=13.37, m2(3,3)=0, c0 1(3,3)=0011 1100
時点2−3間のブランチラベルも同様に計算でき、これを使って、時点t=3に関する各データは次の様に算出される。
φ3(0,0)=13.77, m3(0,0)=0, c0 2(0,0)=1111 0000 1111
φ3(1,0)=15.03, m3(1,0)=2, c0 2(1,0)=1111 0000 1111
φ3(2,0)=15.49, m3(2,0)=1, c0 2(2,0)=1111 0000 1111
φ3(3,0)=16.63, m3(3,0)=0, c0 2(3,0)=0000 1111 1111
φ3(0,1)=14.66, m3(0,1)=0, c0 2(0,1)=1111 1111 1111
φ3(1,1)=15.75, m3(1,1)=0, c0 2(1,1)=0000 0000 1111
φ3(2,1)=16.46, m3(2,1)=2, c0 2(2,1)=1111 1111 1111
φ3(3,1)=16.81, m3(3,1)=0, c0 2(3,1)=1111 0000 0000
φ3(0,2)=6.13, m3(0,2)=0, c0 2(0,2)=1100 1100 0011
φ3(1,2)=11.66, m3(1,2)=1, c0 2(1,2)=1100 1100 0011
φ3(2,2)=11.96, m3(2,2)=2, c0 2(2,2)=0011 0011 0011
φ3(3,2)=13.97, m3(3,2)=3, c0 2(3,2)=1100 1100 0011
φ3(0,3)=9.27, m3(0,3)=1, c0 2(0,3)=1100 0011 0011
φ3(1,3)=10.81, m3(1,3)=0, c0 2(1,3)=1100 0011 0011
φ3(2,3)=12.20, m3(2,3)=3, c0 2(2,3)=0011 1100 0011
φ3(3,3)=13.37, m3(3,3)=0, c0 2(3,3)=0011 1100 0011
次の時点3−4間のブランチラベルの計算も同様である。これを用いて、終点t=4における唯一の状態0における生き残りパスのパスメトリック、パスメトリックの算出に係わる受信信号系列を指定するインデックス、及び生き残りパスラベルを図1中終結方法(103)に従って計算すると以下のようになる。
φ4(0,0)=6.17, m4(0,0)=0, c0 3(0,0)=1100 1100 0011 0011
φ4(1,0)=10.45, m4(1,0)=1, c0 3(1,0)=1100 0011 0011 1100
φ4(2,0)=12.00, m4(2,0)=2, c0 3(2,0)=0011 0011 0011 0011
φ4(3,0)=13.38, m4(3,0)=3, c0 3(3,0)=0011 1100 0011 1100
図9は、図8のトレリス線図の終点における4つの生き残りパスを示す。実線がc0 3(0,0)、破線がc0 3(1,0)、一点鎖線がc0 3(2,0)、二点鎖線がc0 3(3,0)の16ビット系列に対応する。これらが前記の与えられた4つの受信信号系列r0 3(m), m=0,1,2,3のいずれかに対して尤度の高い(メトリックの小さい)4つの送信信号系列となる。尚、この例においては、与えられた4つの受信信号系列の各々について、最も尤度の高い送信信号系列が1つずつ選択されている。しかし、一般にはこのようになる保証はなく、一つの受信信号系列に対して尤度の高い4つの送信信号系列が選択される場合もある。
以上説明したように、図3に示す多入力・リスト出力ビタビデコーダは、複数の受信信号系列のいずれかに対して尤度の高い複数の送信信号系列を算出することができる。
(実施の形態3)
続いて、図4を用いて実施の形態3にかかる復号装置が実行する、多入力・リスト出力ビタビデコード方法のフローチャートについて説明する。
図4は実施の形態3に係る多入力・リスト出力ビタビデコード方法のフローチャートを示す。図4のフローチャートは、リスト出力ビタビデコード方法(401)と選択方法(402)とからなる。リスト出力ビタビデコード方法(401)は、与えられた単一の受信信号系列に対して尤度の高いL個の送信信号系列のリストを出力する。選択方法(402)は、M×L個の送信信号系列から尤度の大きい方からL個の送信信号系列を選択する。
図5は実施の形態3にかかる多入力・リスト出力ビタビデコーダの一構成例を示すブロック図である。多入力・リスト出力ビタビデコーダは、複数のリスト出力ビタビデコーダ501と、選択装置502とを有する。図5の多入力・リスト出力ビタビデコーダは、与えられた単一の受信信号系列に対して尤度の高いL個の送信信号系列のリストを出力する、リスト出力ビタビデコーダ501をM個備える。さらに、図5の多入力・リスト出力ビタビデコーダは、これらのリスト出力ビタビデコーダ501が出力する合計M×L個の送信信号系列から、尤度の大きい方からL個の送信信号系列を選択する選択装置502を備える。
続いて、図4に示した多入力・リスト出力ビタビデコード方法を説明する。図1と同様に、多入力・リスト出力ビタビデコーダに対する入力として、M個の長さNの受信信号系列r0 N-1(m), m=0,1,…,M-1が与えられる。
リスト出力ビタビデコーダ501は、各受信信号系列r0 N-1(m)に対して、リスト出力ビタビデコード方法(401)を使用して、最も尤度の高い方からL個の送信信号系列c0 N-1(l,m), l=0,1,…,L-1を選出する。多入力・リスト出力ビタビデコーダは、M個のリスト出力ビタビデコーダ501を用いて、リスト出力ビタビデコード方法(401)をM回実行する。その結果、合計のべM×L個の送信信号系列が得られる。
次いで、選択方法(402)において、選択装置502は、前記M×L個の送信信号系列の中から、尤度の最も大きいL個の送信信号系列c0 N-1(l), l=0,1,…,L-1を選択する。具体的には、選択装置502は、リスト出力ビタビデコード方法(401)においてL個の送信信号系列の選出に用いた尤度情報(メトリック)を使用して、L個の送信信号系列を選択する。
図5に示した実施の形態3にかかる多入力・リスト出力ビタビデコーダの動作は、図4の多入力・リスト出力ビタビデコード方法と同様である。
以上説明したように、図5の多入力・リスト出力ビタビデコーダの出力は、与えられたM個の受信信号系列のいずれかに対して尤度の最も大きい送信信号系列からL個の送信信号系列を算出することができる。また、図4及び図5を用いて説明した、多入力・リスト出力ビタビデコーダの出力は、図8を用いて説明した多入力・リスト出力ビタビデコーダの出力結果と同様となる。
ここで、図5の多入力・リスト出力ビタビデコーダは、単一のリストビタビデコード方式のM倍相当の計算量と装置規模が必要となる。
一方、実施の形態2において説明した図3の多入力・リスト出力ビタビデコーダは、単一のリストビタビデコード方式と同程度の計算量と装置規模とすることができる。しかし、図3の多入力・リスト出力ビタビデコーダは、与えられたM個の受信信号系列のいずれかについて、必ずしも最も尤度が高い方からL個の送信信号系列のリストを与えるとは限らないケースがある。これに対して、実施の形態3において説明した多入力・リスト出力ビタビデコーダの出力は、最も尤度が高い方からL個の送信信号系列のリストとなる。
(実施の形態4)
続いて、図6を用いて実施の形態4にかかるデコーダの構成例を説明する。図6は、長さN=N×NビットのPolar符号に関するリストサイズLのデコーダの一構成例を示すブロック図である。リストデコード演算ユニット601は、長さNのPolar符号のデコード処理を実行するSC(Successive Cancelation)ユニットをL個備える。また、図6のデコーダは、リストデコード演算ユニット601をN個備える。
さらに、多入力・リスト出力ビタビデコーダ602は、与えられたM個(MはL以下の正数)の長さNの受信信号系列に関して、そのいずれかに対して尤度の高いL個の送信信号系列のリストを出力する。多入力・リスト出力ビタビデコーダ602は、図3あるいは図5に示される多入力・リスト出力ビタビデコーダである。選択装置603は、多入力・リスト出力ビタビデコーダ602の出力リストから、一つの送信信号系列を選択する。
続いて、図6に示したPolar符号のリストデコーダの動作について説明する。リストデコーダは、Polar符号化された長さNの送信信号系列に対する受信信号系列r0 N-1を入力する。この長さNの受信信号系列r0 N-1は、N個の長さNの受信信号系列に分割されて、r0 N1-1、rN1 2N1-1,…, rN-N1 N-1 となる。分割された受信信号系列の各々は、長さNのPolar符号に関するSuccessive Cancellation (SC) デコード処理を実行するSCユニットをL個有するリストデコード演算ユニット601へ入力される。
リストデコード演算ユニット601は、全部でN個ある。N個のリストデコード演算ユニット601には、0からN−1の番号が付けられる。第k番目のリストデコード演算ユニット601は、長さNの受信信号系列rkN1 (k+1)N1-1をSCアルゴリズムによって処理する。さらに、第k番目のリストデコード演算ユニット601は、長さNの送信ビット列の各々のビットに関する尤度情報の候補を先頭ビットから順次、Lパターン分rk(0),rk(1),…, rk(L-1),を出力する。
リストデコード演算ユニット601が演算を実行することによって、第i番目のビットに対して、前記Lパターン分の尤度情報の候補が得られたと仮定する(iはN−1以下の整数)。k=0,1,…,N−1の全てに渡って、Lパターン分の尤度情報を集めることによって、L個の長さNの系列r0 N2-1(m),m=0,1,…,L-1が得られる。これらをL個の受信信号系列とみなして、多入力・リスト出力ビタビデコーダ602は、L個の受信信号系列を受け取る。さらに、多入力・リスト出力ビタビデコーダ602は、L個の長さNビットの送信信号系列のリストc0 N2-1(m),m=0,1,…,L-1を算出する。
これらの情報多入力・リスト出力ビタビデコーダ602は、ck(0),ck(1),…,ck(L-1)をLパターン分の尤度情報rk(0),rk(1),…, rk(L-1)に対応する硬判定情報としてリストデコード演算ユニット601にフィードバックする。
リストデコード演算ユニット601は、硬判定情報のフィードバックを用いて、次の第i+1番目のビットに関する尤度情報の候補を同様にLパターン分算出する。以上を繰り返し、合計N回の多入力・リスト出力ビタビデコーダの実行によって、多入力・リスト出力ビタビデコーダ602は、受信信号系列r0 N-1に対するL個の送信ビット系列の候補uN-1(l), l=0,1,…,L-1を得ることができる。
選択装置603は、は送信ビット系列の候補uN-1(l), l=0,1,…,L-1から一つを選択して出力する。一例として、事前に送信ビットに誤り検出用のCRC(Cyclic Redundancy Check)ビットを入れておき、誤りが検出されなかった候補を選択する方法がある。
次に、図6に示したPolar符号のリストデコーダの処理ステップ数削減効果について具体例を挙げて説明する。例えば、N=1024ビットのPolar符号をリストサイズL=8でリストデコードする場合について説明する。図6のリストデコーダにおいて、N=64、N=16とすれば、リストデコード演算ユニット601が実行する処理ステップ数は、2N−2=126と概算される。N=16の多入力・リスト出力ビタビデコーダに関しては、実施の形態2において示した様に、対応するトレリス線図が時点数4、ブランチラベル4ビット、状態数8以下で表現できる。そのため、1回辺りの処理ステップ数は4であり、これがN回実行されるため、処理ステップ数は4×64=256となる。従って、図6に示したPolar符号のリストデコーダは、原理的には合計126+256=382のステップ数でリスト復号処理を行うことができる。一方、一般的なPolar符号のリストデコーダにおいて、長さN=1024ビット、リストサイズ8のリストデコードユニットを用いて処理した場合のステップ数は2N−2=2046であり、処理ステップ数は大幅に削減されている。
図7は、N=1024ビットのPolar符号を図6の構成のPolar符号のリストデコーダ(リストサイズL=8)を用いてデコード処理した誤り率特性を示している。多入力・リスト出力ビタビデコーダとして、図3の構成と図5の構成を用いた場合の差を示しているが図5の方が若干優るもののほとんど差がない事がわかる。
続いて以下では、図11を用いて、上述の複数の実施形態で説明された図3、図5、及び図6における各種デコーダの構成例について説明する。図11は、デコーダの構成例を示すブロック図である。図11を参照すると、デコーダは、ネットワークインタフェース110、プロセッサ111、及びメモリ112を含む。ネットワークインタフェース110は、通信システムを構成する他のネットワークノード装置と通信するために使用される。ネットワークインタフェース110は、例えば、IEEE 802.3 seriesに準拠したネットワークインタフェースカード(NIC)を含んでもよい。
プロセッサ111は、メモリ112からソフトウェア(コンピュータプログラム)を読み出して実行することで、上述の実施形態においてフローチャートを用いて説明されたデコーダの処理を行う。プロセッサ111は、例えば、マイクロプロセッサ、MPU(Micro Processing Unit)、又はCPU(Central Processing Unit)であってもよい。プロセッサ111は、複数のプロセッサを含んでもよい。
メモリ112は、揮発性メモリ及び不揮発性メモリの組み合わせによって構成される。メモリ112は、プロセッサ111から離れて配置されたストレージを含んでもよい。この場合、プロセッサ111は、図示されていないI/Oインタフェースを介してメモリ112にアクセスしてもよい。
図11の例では、メモリ112は、ソフトウェアモジュール群を格納するために使用される。プロセッサ111は、これらのソフトウェアモジュール群をメモリ112から読み出して実行することで、上述の実施形態において説明されたデコーダの処理を行うことができる。
図11を用いて説明したように、デコーダが有するプロセッサの各々は、図面を用いて説明されたアルゴリズムをコンピュータに行わせるための命令群を含む1又は複数のプログラムを実行する。
上述の例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体、光磁気記録媒体、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリを含む。磁気記録媒体は、例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブであってもよい。光磁気記録媒体は、例えば、光磁気ディスクであってもよい。半導体メモリは、例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory)であってもよい。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
なお、本開示は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
トレリス線図における時点N(Nは0以上の整数)の状態S(Sは0以上の整数)に向かうパスに対応するブランチラベルと、複数の受信信号系列とを用いて前記状態Sにおけるブランチメトリックを算出する多入力ブランチメトリック計算ユニットと、
前記時点Nの状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスメトリックに前記時点Nの前記状態Sにおけるブランチメトリックを加算して、前記時点Nの前記状態Sにおけるパスメトリックを算出するパスメトリック計算ユニットと、
算出された複数の前記パスメトリックのうち、L(Lは1以上の整数)個のパスメトリックに対応するパスラベルを格納する生き残りパスリストメモリと、を備え、
前記パスメトリック計算ユニットは、
前記時点Nの前記状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスラベルに、前記ブランチラベルを結合して前記時点Nの前記状態Sにおけるパスラベルを生成し、
前記生き残りパスリストメモリは、
前記トレリス線図における終点において選択されたL個のパスメトリックに対応するパスラベルを送信信号系列として出力する、復号装置。
(付記2)
前記パスメトリックを算出する際に用いられた前記受信信号系列を指定するインデックスを格納するインデックスメモリをさらに備える、付記1に記載の復号装置。
(付記3)
算出された前記パスメトリックを格納するパスメトリックメモリをさらに備え、
前記パスメトリック計算ユニットは、
前記インデックスが示す前記受信信号系列を用いて算出された前記ブランチメトリックを、前記パスメトリックメモリに格納された前記時点N−1のそれぞれの状態におけるパスメトリックに加算する、付記2に記載の復号装置。
(付記4)
前記生き残りパスリストメモリは、
算出された複数の前記パスメトリックのうち、値の小さい順にL個のパスメトリックに対応するパスラベルを格納する、付記1乃至3のいずれか1項に記載の復号装置。
(付記5)
前記トレリス線図における終点は、状態数を1とし、
前記パスメトリック計算ユニットは、
前記トレリス線図における終点の1つの状態に向かうパスに対応するパスメトリックを算出し、さらに、パスラベルを生成する、付記1乃至4のいずれか1項に記載の復号装置。
(付記6)
長さN(Nは1以上の整数)ビットのPolar符号のデコード処理を実行し、リストサイズを1とするSCユニットをL個有する演算ユニットをさらに備え、
前記多入力ブランチメトリック計算ユニットは、
(Nは1以上の整数)個の前記演算ユニットから出力される長さNビットのL個の受信信号系列と前記ブランチラベルとを用いて前記ブランチメトリックを算出する、付記1乃至5のいずれか1項に記載の復号装置。
(付記7)
ビタビアルゴリズムを用いて1つの受信信号系列から算出された複数の送信信号系列のうち、尤度の高い順にL(Lは1以上の整数)個の送信信号系列を選択するリスト出力ビタビデコーダと、
M(Mは1以上の整数)個の前記リスト出力ビタビデコーダから出力されたM×L個の送信信号系列のうち、尤度の高い順に選択したL個の送信信号系列を出力する選択ユニットと、を備える復号装置。
(付記8)
長さN(Nは1以上の整数)ビットのPolar符号のデコード処理を実行し、リストサイズを1とするSCユニットをL個有する演算ユニットをさらに備え、
前記リスト出力ビタビデコーダは、
(Nは1以上の整数)個の前記演算ユニットから出力される長さNビットの受信信号系列から複数の送信信号系列を算出する、付記7に記載の復号装置。
(付記9)
トレリス線図における時点N(Nは0以上の整数)の状態S(Sは0以上の整数)に向かうパスに対応するブランチラベルと、複数の受信信号系列とを用いて前記状態Sにおけるブランチメトリックを算出し、
前記時点Nの状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスメトリックに前記時点Nの前記状態Sにおけるブランチメトリックを加算して、前記時点Nの前記状態Sにおけるパスメトリックを算出し、
算出された複数の前記パスメトリックのうち、L(Lは1以上の整数)個のパスメトリックに対応するパスラベルを格納し、
前記時点Nの前記状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスラベルに、前記ブランチラベルを結合して前記時点Nの前記状態Sにおけるパスラベルを生成し、
前記トレリス線図における終点において選択されたL個のパスメトリックに対応するパスラベルを送信信号系列として出力する、復号方法。
(付記10)
ビタビアルゴリズムを用いて1つの受信信号系列から算出された複数の送信信号系列のうち、尤度の高い順にL(Lは1以上の整数)個の送信信号系列を選択し、
M(Mは1以上の整数)個のリスト出力ビタビデコーダから出力されたM×L個の送信信号系列のうち、尤度の高い順に選択したL個の送信信号系列を出力する、復号方法。
(付記11)
トレリス線図における時点N(Nは0以上の整数)の状態S(Sは0以上の整数)に向かうパスに対応するブランチラベルと、複数の受信信号系列とを用いて前記状態Sにおけるブランチメトリックを算出し、
前記時点Nの状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスメトリックに前記時点Nの前記状態Sにおけるブランチメトリックを加算して、前記時点Nの前記状態Sにおけるパスメトリックを算出し、
算出された複数の前記パスメトリックのうち、L(Lは1以上の整数)個のパスメトリックに対応するパスラベルを格納し、
前記時点Nの前記状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスラベルに、前記ブランチラベルを結合して前記時点Nの前記状態Sにおけるパスラベルを生成し、
前記トレリス線図における終点において選択されたL個のパスメトリックに対応するパスラベルを送信信号系列として出力することをコンピュータに実行させるプログラム。
(付記12)
ビタビアルゴリズムを用いて1つの受信信号系列から算出された複数の送信信号系列のうち、尤度の高い順にL(Lは1以上の整数)個の送信信号系列を選択し、
M(Mは1以上の整数)個のリスト出力ビタビデコーダから出力されたM×L個の送信信号系列のうち、尤度の高い順に選択したL個の送信信号系列を出力することをコンピュータに実行させるプログラム。
10 復号装置
11 多入力ブランチメトリック計算ユニット
12 パスメトリック計算ユニット
13 生き残りパスリストメモリ
110 ネットワークインタフェース
111 プロセッサ
112 メモリ
301 多入力ブランチメトリック計算ユニット
302 パスメトリック計算ユニット
303 パスメトリックメモリ
304 インデックスメモリ
305 生き残りパスリストメモリ
306 セレクタ
501 リスト出力ビタビデコーダ
502 選択装置
601 リストデコード演算ユニット
602 多入力・リスト出力ビタビデコーダ
603 選択装置

Claims (12)

  1. トレリス線図における時点N(Nは0以上の整数)の状態S(Sは0以上の整数)に向かうパスに対応するブランチラベルと、複数の受信信号系列とを用いて前記状態Sにおけるブランチメトリックを算出する多入力ブランチメトリック計算手段と、
    前記時点Nの状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスメトリックに前記時点Nの前記状態Sにおけるブランチメトリックを加算して、前記時点Nの前記状態Sにおけるパスメトリックを算出するパスメトリック計算手段と、
    算出された複数の前記パスメトリックのうち、L(Lは1以上の整数)個のパスメトリックに対応するパスラベルを格納する生き残りパスリストメモリと、を備え、
    前記パスメトリック計算手段は、
    前記時点Nの前記状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスラベルに、前記ブランチラベルを結合して前記時点Nの前記状態Sにおけるパスラベルを生成し、
    前記生き残りパスリストメモリは、
    前記トレリス線図における終点において選択されたL個のパスメトリックに対応するパスラベルを送信信号系列として出力する、復号装置。
  2. 前記パスメトリックを算出する際に用いられた前記受信信号系列を指定するインデックスを格納するインデックスメモリをさらに備える、請求項1に記載の復号装置。
  3. 算出された前記パスメトリックを格納するパスメトリックメモリをさらに備え、
    前記パスメトリック計算手段は、
    前記インデックスが示す前記受信信号系列を用いて算出された前記ブランチメトリックを、前記パスメトリックメモリに格納された前記時点N−1のそれぞれの状態におけるパスメトリックに加算する、請求項2に記載の復号装置。
  4. 前記生き残りパスリストメモリは、
    算出された複数の前記パスメトリックのうち、値の小さい順にL個のパスメトリックに対応するパスラベルを格納する、請求項1乃至3のいずれか1項に記載の復号装置。
  5. 前記トレリス線図における終点は、状態数を1とし、
    前記パスメトリック計算手段は、
    前記トレリス線図における終点の1つの状態に向かうパスに対応するパスメトリックを算出し、さらに、パスラベルを生成する、請求項1乃至4のいずれか1項に記載の復号装置。
  6. 長さN(Nは1以上の整数)ビットのPolar符号のデコード処理を実行し、リストサイズを1とするSCユニットをL個有する演算手段をさらに備え、
    前記多入力ブランチメトリック計算手段は、
    (Nは1以上の整数)個の前記演算手段から出力される長さNビットのL個の受信信号系列と前記ブランチラベルとを用いて前記ブランチメトリックを算出する、請求項1乃至5のいずれか1項に記載の復号装置。
  7. ビタビアルゴリズムを用いて1つの受信信号系列から算出された複数の送信信号系列のうち、尤度の高い順にL(Lは1以上の整数)個の送信信号系列を選択するリスト出力ビタビデコーダと、
    M(Mは1以上の整数)個の前記リスト出力ビタビデコーダから出力されたM×L個の送信信号系列のうち、尤度の高い順に選択したL個の送信信号系列を出力する選択手段と、を備える復号装置。
  8. 長さN(Nは1以上の整数)ビットのPolar符号のデコード処理を実行し、リストサイズを1とするSCユニットをL個有する演算手段をさらに備え、
    前記リスト出力ビタビデコーダは、
    (Nは1以上の整数)個の前記演算手段から出力される長さNビットの受信信号系列から複数の送信信号系列を算出する、請求項7に記載の復号装置。
  9. トレリス線図における時点N(Nは0以上の整数)の状態S(Sは0以上の整数)に向かうパスに対応するブランチラベルと、複数の受信信号系列とを用いて前記状態Sにおけるブランチメトリックを算出し、
    前記時点Nの状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスメトリックに前記時点Nの前記状態Sにおけるブランチメトリックを加算して、前記時点Nの前記状態Sにおけるパスメトリックを算出し、
    算出された複数の前記パスメトリックのうち、L(Lは1以上の整数)個のパスメトリックに対応するパスラベルを格納し、
    前記時点Nの前記状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスラベルに、前記ブランチラベルを結合して前記時点Nの前記状態Sにおけるパスラベルを生成し、
    前記トレリス線図における終点において選択されたL個のパスメトリックに対応するパスラベルを送信信号系列として出力する、復号方法。
  10. ビタビアルゴリズムを用いて1つの受信信号系列から算出された複数の送信信号系列のうち、尤度の高い順にL(Lは1以上の整数)個の送信信号系列を選択し、
    M(Mは1以上の整数)個のリスト出力ビタビデコーダから出力されたM×L個の送信信号系列のうち、尤度の高い順に選択したL個の送信信号系列を出力する、復号方法。
  11. トレリス線図における時点N(Nは0以上の整数)の状態S(Sは0以上の整数)に向かうパスに対応するブランチラベルと、複数の受信信号系列とを用いて前記状態Sにおけるブランチメトリックを算出し、
    前記時点Nの状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスメトリックに前記時点Nの前記状態Sにおけるブランチメトリックを加算して、前記時点Nの前記状態Sにおけるパスメトリックを算出し、
    算出された複数の前記パスメトリックのうち、L(Lは1以上の整数)個のパスメトリックに対応するパスラベルを格納し、
    前記時点Nの前記状態Sとパスを形成する時点N−1のそれぞれの状態におけるパスラベルに、前記ブランチラベルを結合して前記時点Nの前記状態Sにおけるパスラベルを生成し、
    前記トレリス線図における終点において選択されたL個のパスメトリックに対応するパスラベルを送信信号系列として出力することをコンピュータに実行させるプログラムが格納された非一時的なコンピュータ可読媒体。
  12. ビタビアルゴリズムを用いて1つの受信信号系列から算出された複数の送信信号系列のうち、尤度の高い順にL(Lは1以上の整数)個の送信信号系列を選択し、
    M(Mは1以上の整数)個のリスト出力ビタビデコーダから出力されたM×L個の送信信号系列のうち、尤度の高い順に選択したL個の送信信号系列を出力することをコンピュータに実行させるプログラムが格納された非一時的なコンピュータ可読媒体。
JP2020523948A 2018-06-08 2018-06-08 復号装置、復号方法、及びプログラム Active JP7052868B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/021970 WO2019234903A1 (ja) 2018-06-08 2018-06-08 復号装置、復号方法、及び非一時的なコンピュータ可読媒体

Publications (2)

Publication Number Publication Date
JPWO2019234903A1 true JPWO2019234903A1 (ja) 2021-06-03
JP7052868B2 JP7052868B2 (ja) 2022-04-12

Family

ID=68770853

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020523948A Active JP7052868B2 (ja) 2018-06-08 2018-06-08 復号装置、復号方法、及びプログラム

Country Status (3)

Country Link
US (1) US11336306B2 (ja)
JP (1) JP7052868B2 (ja)
WO (1) WO2019234903A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11784751B1 (en) * 2022-05-16 2023-10-10 Qualcomm Incorporated List size reduction for polar decoding

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1131979A (ja) * 1997-07-14 1999-02-02 Oki Electric Ind Co Ltd ビタビ復号方法及びビタビ復号回路
JPH11289258A (ja) * 1997-07-23 1999-10-19 Mitsubishi Electric Corp 系列推定方法及び系列推定装置
JP2003198435A (ja) * 2001-10-17 2003-07-11 Matsushita Electric Ind Co Ltd ダイバーシティ装置およびその方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1260143A (en) * 1986-02-24 1989-09-26 Atsushi Yamashita Path trace viterbi decoder
FR2675971B1 (fr) 1991-04-23 1993-08-06 France Telecom Procede de codage correcteur d'erreurs a au moins deux codages convolutifs systematiques en parallele, procede de decodage iteratif, module de decodage et decodeur correspondants.
JP3258067B2 (ja) * 1992-03-25 2002-02-18 株式会社東芝 最尤系列推定方式
US5432803A (en) * 1992-04-30 1995-07-11 Novatel Communications, Ltd. Maximum likelihood convolutional decoder
US5537444A (en) 1993-01-14 1996-07-16 At&T Corp. Extended list output and soft symbol output viterbi algorithms
JP3171772B2 (ja) * 1995-08-23 2001-06-04 沖電気工業株式会社 ビタビ復号方法及びビタビ復号装置
US5933462A (en) 1996-11-06 1999-08-03 Qualcomm Incorporated Soft decision output decoder for decoding convolutionally encoded codewords
EP0851591B1 (en) * 1996-12-24 2001-09-12 Matsushita Electric Industrial Co., Ltd. Data processor and data processing method
US7298798B1 (en) * 2001-08-24 2007-11-20 Mediatek, Inc. Method and system for decoding block codes
US7669110B2 (en) * 2005-09-30 2010-02-23 Agere Systems Inc. Trace-ahead method and apparatus for determining survivor paths in a Viterbi detector
JP5498846B2 (ja) 2010-05-07 2014-05-21 日本放送協会 時空間ビタビ復号器

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1131979A (ja) * 1997-07-14 1999-02-02 Oki Electric Ind Co Ltd ビタビ復号方法及びビタビ復号回路
JPH11289258A (ja) * 1997-07-23 1999-10-19 Mitsubishi Electric Corp 系列推定方法及び系列推定装置
JP2003198435A (ja) * 2001-10-17 2003-07-11 Matsushita Electric Ind Co Ltd ダイバーシティ装置およびその方法

Also Published As

Publication number Publication date
JP7052868B2 (ja) 2022-04-12
US11336306B2 (en) 2022-05-17
US20210250052A1 (en) 2021-08-12
WO2019234903A1 (ja) 2019-12-12

Similar Documents

Publication Publication Date Title
US10326478B2 (en) Apparatus and method for encoding and decoding data in twisted polar code
JP5705106B2 (ja) ユークリッド空間リード−マラー符号の軟判定復号を実行する方法
JP3923617B2 (ja) 誤り訂正符号を有する情報ビットの変換方法およびこの方法を実行する符号化器と復号化器
US10879932B2 (en) Encoding method and device, and apparatus
US9941906B2 (en) Sliced polar codes
Lin et al. A reduced latency list decoding algorithm for polar codes
US9960790B2 (en) Belief propagation decoding for short algebraic codes with permutations within the code space
EP3469714B1 (en) Polar code encoding with puncturing, shortening and extending
JP2004533766A (ja) 可変長コードワードシーケンスを復号化する方法
JP2001036417A (ja) 誤り訂正符号化装置、方法及び媒体、並びに誤り訂正符号復号装置、方法及び媒体
JP7004008B2 (ja) 通信路分極を用いた誤り訂正符号化方法および装置、復号方法および装置
JP5809272B2 (ja) 幾つかのマッピング行列間に符号語を分配する多入力多出力チャネルにおける送信及び受信のための方法及びデバイス、並びに対応するコンピュータプログラム
Doan et al. Neural dynamic successive cancellation flip decoding of polar codes
CN116530023A (zh) 具有外部块码和内部极化调整卷积码的串行级联码
JP7052868B2 (ja) 復号装置、復号方法、及びプログラム
KR100456474B1 (ko) 블록터보 부호의 반복 복호 방법 및 블록터보 부호의 반복복호 프로그램을 저장한 기록매체
CN113794479B (zh) 极化调节卷积码的生成方法及相关设备
EP1511178A1 (en) A method of decoding a data word
JP7251615B2 (ja) 整列処理装置、整列処理方法、及びプログラム
Kobozeva et al. Investigation of signal-code structures based on 3D error-locating codes
JP3045197B2 (ja) ベクトル量子化器の符号帳設計方法
US8156412B2 (en) Tree decoding method for decoding linear block codes
CN112152752A (zh) 译码处理方法及装置
CN114978195B (zh) 一种极化码串行抵消列表译码码字相关的错误图样集搜索方法及系统
WO2020151835A1 (en) Combined belief propgation (bp) and ordered statistics decoding (osd) for concatenated codes

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201124

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210810

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211006

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220314

R151 Written notification of patent or utility model registration

Ref document number: 7052868

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151