JP6395658B2 - 誤り訂正復号装置、受信装置及び誤り訂正復号方法 - Google Patents

誤り訂正復号装置、受信装置及び誤り訂正復号方法 Download PDF

Info

Publication number
JP6395658B2
JP6395658B2 JP2015088577A JP2015088577A JP6395658B2 JP 6395658 B2 JP6395658 B2 JP 6395658B2 JP 2015088577 A JP2015088577 A JP 2015088577A JP 2015088577 A JP2015088577 A JP 2015088577A JP 6395658 B2 JP6395658 B2 JP 6395658B2
Authority
JP
Japan
Prior art keywords
row
value
error correction
column
correction decoding
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.)
Active
Application number
JP2015088577A
Other languages
English (en)
Other versions
JP2016208309A (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2015088577A priority Critical patent/JP6395658B2/ja
Publication of JP2016208309A publication Critical patent/JP2016208309A/ja
Application granted granted Critical
Publication of JP6395658B2 publication Critical patent/JP6395658B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Description

本発明は、低密度パリティ検査符号(LDPC:Low-Density Parity Check codes)の誤り訂正技術及びこれを用いた通信技術に関する。
低密度パリティ検査符号(以下「LDPC符号」という。)は、非零の行列要素の密度が非常に低い疎なパリティ検査行列(以下「検査行列」ともいう。)で定義される線形符号であり、1962年にギャラガー(Gallager)によって最初に提案されたものである(下記非特許文献1)。
LDPC符号は、一般に、検査行列の各列の重み(以下「列重み」という。)が全て一定となり且つ検査行列の各行の重み(以下「行重み」という。)も全て一定となる正則LDPC符号(レギュラーLDPC符号)と、この正則LDPC符号以外の非正則LDPC符号(イレギュラーLDPC符号)とに大別される。列重みは、検査行列の各列における非零要素の総和を意味し、行重みは、検査行列の各行における非零要素の総和を意味する。
図1は、3行6列の検査行列Hの一例を示す図である。この検査行列の場合、1行目の行重み(=4)と3行目の行重み(=3)とが互いに異なり、また、1列目の列重み(=1)と4列目の列重み(=3)も互いに異なる。このため、図1に示した検査行列Hで定義されるLDPC符号は、非正則である。なお、実際の回路実装の際には、行数及び列数がそれぞれ数百〜数万となる検査行列が使用される場合がある。
通常、非正則LDPC符号の方が、正則LDPC符号よりも、検査行列の選択の仕方次第で良い誤り訂正復号性能を得ることができる。しかしながら、非正則LDPC符号では、エラーフロア(error floor)と呼ばれる現象が生じ易い。そのため、エラーフロアの発生を抑制する必要がある通信システムでは、正則LDPC符号を使用するとともに、符号長を長くし且つ列重みの大きな符号を用いることにより誤り訂正復号性能の劣化抑制が図られている。ここで、エラーフロアとは、低いSNR(信号対雑音電力比)の領域では、雑音電力が低下するにつれて復号誤り率が向上するのに対し、高いSNRの領域では、雑音電力が低下するにもかかわらず、復号誤り率が殆ど向上しなくなる現象をいう。
LDPCの誤り訂正復号法(以下「LDPC復号法」ともいう。)としては、高い復号性能を実現できるSum-Productアルゴリズムによる方法が知られている。Sum-Productアルゴリズムは、メッセージパッシング(Message Passing)・アルゴリズムまたは確率伝搬法(Belief Propagation)と呼ばれる復号アルゴリズムの一種であり、メッセージパッシング・アルゴリズムは、確率伝搬法と等価であることが知られている。Sum-Productアルゴリズムは、複雑な演算処理を必要とするので、回路実装が難しい。そこで、Sum-Productアルゴリズムに代えて、Min-SumアルゴリズムやオフセットMin-Sumアルゴリズムといった、Sum-Productアルゴリズムから派生した近似アルゴリズムが一般に使用されている。この種の近似アルゴリズムを用いた復号法は、たとえば、特許文献1(特開2011−4229号公報)に開示されている。
特開2011−4229号公報(たとえば、段落0025、並びに図7及び段落0039〜0043)
R.G. Gallager, "Low-density parity-check codes," IRE Transactions on Information Theory, vol. 8, pp. 21-28, January 1962.
上記の近似アルゴリズムを用いたLDPC復号法では、検査行列の列重みが大きいと、この検査行列の各行における非零要素の個数が多くなり、復号の際の行演算すなわちチェックノード演算の計算量が増大する。これにより、計算値の誤差が拡大したり、近似演算に起因する復号特性の劣化量が増大したりするおそれがある。
たとえば、特許文献1には、オフセットMin-Sumアルゴリズムの改良版を用いた復号法が開示されている。この復号法は、行演算において、各行ごとに、列LLRと呼ばれる複数個の対数事前値比の絶対値の中から最小値と2番目に小さい値とを検出し、この最小値または2番目に小さい値を用いて、行LLRと呼ばれる対数外部値比を算出している。この行演算の計算量は、検査行列の列重みが大きいほど増大するので、行LLRの誤差を大きくする可能性が高い。
上記に鑑みて本発明の目的は、エラーフロアの発生を抑制するために、LDPC符号を定める検査行列の列重みを大きくした場合でも、復号特性の劣化を抑制することができる誤り訂正復号装置、受信装置及び誤り訂正復号方法を提供する点にある。
本発明の一態様による誤り訂正復号装置は、低密度パリティ検査符号を定める検査行列の複数列にそれぞれ対応する複数の変数ノードと、前記検査行列の複数行にそれぞれ対応する複数のチェックノードとの間で演算結果を伝搬させるメッセージパッシング・アルゴリズムに基づいた行演算及び列演算を繰り返し行う誤り訂正復号装置であって、前記行演算を実行して対数外部値比を算出する行演算部と、前記対数外部値比を用いた前記列演算を実行して対数事前値比を算出する列演算部とを備え、前記行演算部は、前記各チェックノード及び前記各変数ノードの組について、前記複数の変数ノードのうち当該各変数ノードを除く他の変数ノードから、前記検査行列の非零要素に対応するエッジを介して当該各チェックノードへ伝搬される一群の対数事前値比の絶対値の中から、値の小さい順に所定個数の絶対値を検出する値検出部と、第1の変換テーブルを用いて、当該検出された所定個数の絶対値をそれぞれ複数の第1テーブル変換値に変換する第1テーブル変換部と、前記複数の第1テーブル変換値を乗算する乗算器と、第2の変換テーブルを用いて、前記乗算器の出力値を第2テーブル変換値に変換する第2テーブル変換部と、前記第2テーブル変換値に符号を付加して前記対数外部値比を生成する符号付加部とを含むことを特徴とする。
本発明の他の態様による受信装置は、通信路から変調信号を受信する受信器と、前記受信器の出力を復調して受信信号を出力する復調器と、前記誤り訂正復号装置とを備えることを特徴とする。
本発明の更に他の態様による誤り訂正復号方法は、低密度パリティ検査符号を定める検査行列の複数列にそれぞれ対応する複数の変数ノードと、前記検査行列の複数行にそれぞれ対応する複数のチェックノードとの間で演算結果を伝搬させるメッセージパッシング・アルゴリズムに基づいた行演算及び列演算を演算回路において繰り返し行う誤り訂正復号方法であって、前記行演算を実行して対数外部値比を算出するステップと、前記対数外部値比を用いた前記列演算を実行して対数事前値比を算出するステップとを備え、前記行演算は、前記各チェックノードと前記各変数ノードとの組について、前記複数の変数ノードのうち当該各変数ノードを除く他の変数ノードから、前記検査行列の非零要素に対応するエッジを介して当該各チェックノードへ伝搬される一群の対数事前値比の絶対値の中から、値の小さい順に所定個数の絶対値を検出するステップと、第1の変換テーブルを用いて、当該検出された所定個数の絶対値をそれぞれ複数の第1テーブル変換値に変換するステップと、前記複数の第1テーブル変換値を乗算して乗算値を算出するステップと、第2の変換テーブルを用いて、前記乗算値を第2テーブル変換値に変換するステップと、前記第2テーブル変換値に符号を付加して前記対数外部値比を生成するステップとを含むことを特徴とする。
本発明によれば、行演算において、演算量の増大を抑制しつつ、Sum-Productアルゴリズムによる演算結果に近い演算結果を得ることができるので、エラーフロアの発生抑制のために検査行列の列重みを大きくしても、復号特性の劣化を効果的に抑制することができる。
3行6列の検査行列の一例を示す図である。 本発明に係る実施の形態1の受信装置を含むディジタル通信システムの概略構成を示す機能ブロック図である。 図1に示した検査行列に対応する2部グラフを示す図である。 実施の形態1のLDPC復号器による復号処理の手順を概略的に示すフローチャートである。 実施の形態1に係る行演算におけるメッセージ伝搬を概念的に示す図である。 実施の形態1に係る列演算におけるメッセージ伝搬を概念的に示す図である。 実施の形態1に係る行演算の処理手順の詳細を示すフローチャートである。 実施の形態1のLDPC復号器の構成の一例を概略的に示す機能ブロック図である。 実施の形態1の行演算器の構成例を概略的に示す機能ブロック図である。 ユークリッド幾何符号を用いて構成された検査行列の一例を示す図である。 (A),(B)は、列LLRのデータ格納領域を概念的に示す図である。 実施の形態2のメモリ制御部の構成のうちアドレス発生回路部分を示す図である。
以下、図面を参照しつつ、本発明に係る種々の実施の形態について詳細に説明する。
実施の形態1.
図2は、本発明に係る実施の形態1の受信装置20を含むディジタル通信システム1の概略構成を示す機能ブロック図である。図2に示されるように、このディジタル通信システム1は、送信装置10と受信装置20とで構成される。送信装置10は、低密度パリティ検査符号化により送信符号語cを生成するLDPC(低密度パリティ検査)符号化器11と、送信符号語cを変調して変調信号を生成する変調器12と、この変調信号を通信路CHに送出する送信器13とを備えている。通信路CHは、無線通信路または有線通信路のいずれでもよい。
LDPC符号化器11は、たとえばK行N列(K,Nは正整数)の生成行列Gを用いて、情報長Kの情報ビット列s=(s,s,…,s)を符号化して符号語長Nの送信符号語c=(c,c,…,c)を生成することができる。ここで、LDPC符号を定めるM行N列(Mは正整数)の検査行列をHで表すとき、生成行列Gと検査行列Hの転置との積(=G・H)は、零行列となる。
変調器12は、BPSK(Binary Phase Shift Keying),π/2シフトBPSK,多値PSK(M-ary Phase Shift Keying)または多値QAM(M-ary Quadrature Amplitude Modulation)などの公知のディジタル変調方式に従い、送信符号語cを変調して変調信号を生成することができる。
一方、受信装置20は、通信路CHから送信信号を受信する受信器21と、受信器21の出力を復調して受信信号系列dを出力する復調器22と、この受信信号系列dに誤り訂正復号を施して推定語eを出力するLDPC誤り訂正復号器23(以下「誤り訂正復号器23」ともいう。)と、この推定語eから情報ビット列rを抽出する情報ビット出力部24とを備えている。
誤り訂正復号器23は、メッセージパッシング・アルゴリズムに基づいて受信信号系列d=(d,d,…,d)を復号して推定語e=(e,e,…,e)を生成する。一般に、メッセージパッシング・アルゴリズムは、検査行列HのN個の列にそれぞれ対応するN個の変数ノードと、検査行列HのM個の行にそれぞれ対応するM個のチェックノードとで表現される2部グラフ(タナーグラフともいう。)において、これら変数ノードとチェックノードとの間で演算結果をメッセージとして伝搬させて送信符号語を推定するアルゴリズムをいう。
図3は、図1に示した3行6列の検査行列Hに対応する2部グラフを示す図である。図3に示される2部グラフは、図1の検査行列Hの第1列〜第6列にそれぞれ対応する変数ノードb〜bと、その検査行列Hの第1行〜第3行にそれぞれ対応するチェックノードa〜aとを有する。また、2部グラフには、図1の検査行列Hの非零要素(=1)の各々に対応するノード間接続が存在し、このノード間接続は「エッジ」、「辺」または「枝」と呼ばれている。検査行列Hにおけるm行n列目の要素Hmnが非零要素であるときは、m番目のチェックノードaとn番目の変数ノードbとの間を接続するエッジが存在すると解釈される。
誤り訂正復号器23から出力される推定語eが、情報ビット列とパリティビット列とを含む組織符号である場合、情報ビット出力部24は、推定語eから情報ビット列r=(r,r,…,r)を抽出することができる。
次に、図4を参照しつつ、上記の誤り訂正復号器23の動作を説明する。図4は、誤り訂正復号器23による復号処理の手順を概略的に示すフローチャートである。
誤り訂正復号器23は、受信信号系列dに基づいて受信LLR(受信対数尤度比:Received Log-Likelihood Ratio)の系列λ=(λ,λ,…,λ)を算出する(ステップST1)。情報ビット{0,1}がそれぞれ{1,−1}として変調されていた場合、通信路CHのモデルがAWGN(Additive White Gaussian Noise)チャネルであると仮定すると、次式(1)に従って受信LLR系列λを算出することができる。
λ=(2/σ)×d (1)
ここで、σは、ガウス雑音の分散である。ただし、通信路CHのモデルはAWGNチャネルに限定されるものではなく、実際の通信環境に合わせて通信路CHのモデルを適宜選択すればよい。
次に、誤り訂正復号器23は、初期化を行う(ステップST2)。具体的には、誤り訂正復号器23は、繰り返し回数pを「1」の値に、最大繰り返し回数pmaxを予め決められた値に、対数事前値比の初期値βmn (0)を受信LLRλにそれぞれ設定する。
その後、誤り訂正復号器23は、各行番号mについて行番号の昇順(すなわち、1,2,…,Mの順番)で、対数事前値比βmn (p−1)を用いて、メッセージパッシング・アルゴリズムに基づく行演算すなわちチェックノード演算を実行して対数外部値比αmn (p)を算出する(ステップST3)。対数外部値比αmn (p)は、2部グラフにおいてチェックノードaから変数ノードbへ伝搬されるメッセージである。本明細書では、以下、対数外部値比を「行LLR」とも呼ぶこととする。また、対数事前値比βmn (p−1)は、2部グラフにおいて変数ノードbからチェックノードaへ伝搬されるメッセージである。本明細書では、以下、対数事前値比を「列LLR」とも呼ぶこととする。
本実施の形態に係る行演算(ステップST3)は、公知のSum-Productアルゴリズムに対する近似アルゴリズムに従って行われる。Sum-Productアルゴリズムは、メッセージパッシング・アルゴリズムの一種である。Sum-Productアルゴリズムによれば、次式(2)による行演算を実行して行LLRαmn (p)を算出することができる。
Figure 0006395658
ここで、tanh(x)は、変数xに関する双曲線正接関数を意味し、arctanh(x)は、変数xに関する逆双曲線正接関数、すなわち双曲線正接関数tanh(x)の逆関数を意味する。
上式(2)中、A(m)は、検査行列Hの第m行に存在する非零要素の列番号(言い換えれば、第m行において「1」が立っている列番号)の集合であり、A(m)\nは、集合A(m)に属する要素のうち列番号n以外の要素の集合をいう。たとえば、図1に示した検査行列Hの場合、第1行における非零要素は、第1列、第2列、第3列及び第4列に存在するので、集合A(1)={1,2,3,4}となる。A(1)\2={1,3,4}である。また、第2行における非零要素は、第3列及び第4列に存在するので、集合A(2)={3,4}となる。A(2)\3={4}である。
また、集合A(m)は、m番目のチェックノードaから延びるエッジの終端に存在する変数ノードbの番号jの集合ということもできる。たとえば、図3に示した2部グラフの場合、チェックノードaから延びるエッジの終端には、変数ノードb,b,b,bが存在するので、A(1)={1,2,3,4}となる。
上式(2)を次式(3)に変形することができる。
Figure 0006395658
ここで、sgn(x)は、次式(4)で定義される。
Figure 0006395658
公知のMin-Sumアルゴリズムでは、式(3)は、次式(5)で近似される。
Figure 0006395658
これに対し、本実施の形態に係る近似アルゴリズムでは、上記の変形式(3)における双曲線正接関数tanh()の部分がテーブル変換πに置き換えられ、逆双曲線正接関数arctanh[]の部分がテーブル変換φに置き換えられる。具体的には、本実施の形態に係る行演算(ステップST3)は、次式(6)に基づいて行われる。
Figure 0006395658
ここで、MINは、行番号mと集合A(m)\nに属する列番号jとの組(m,j)をインデックスとする列LLRβmj (p−1)の絶対値の中から、値の小さい順に選択されたk個の絶対値のうちのq番目の値である。すなわち、列LLRβmj (p−1)の絶対値が昇順に並べ替えられたとき、当該絶対値のうちの上位k個の値が、MIN,…,MINとなる。
メッセージパッシング・アルゴリズムによれば、行LLRαmn (p)の算出に使用される列LLRβmj (p−1)は、図5に示されるように、集合A(m)\nに属する列番号jに対応する変数ノードbからエッジを介してチェックノードaへ伝搬されるメッセージであると解釈される。また、行LLRαmn (p)は、チェックノードaから変数ノードbへ伝搬されるメッセージであると解釈される。
上記した行演算(ステップST3)の実行後、誤り訂正復号器23は、各列番号nについて列番号の昇順(すなわち、1,2,…,Nの順番)で、行LLRαmn (p)を用いて、メッセージパッシング・アルゴリズムに基づく列演算すなわち変数ノード演算を実行して列LLRβmn (p)を算出する(ステップST4)。
具体的には、本実施の形態の列演算は、次式(7)に基づいて行われる。
Figure 0006395658
ここで、B(n)は、検査行列Hの第n列に存在する非零要素の行番号(言い換えれば、第n列において「1」が立っている行番号)の集合であり、B(n)\mは、集合B(n)に属する要素のうち行番号m以外の要素の集合をいう。たとえば、図1に示した検査行列Hの場合、第3列における非零要素は、第1行及び第2行に存在するので、B(3)={1,2}となる。また、第4列における非零要素は、第1行、第2行及び第3行に存在するので、B(4)={1,2,3}となる。
また、集合B(n)は、n番目の変数ノードbから延びるエッジの終端に存在するチェックノードaの番号iの集合ということもできる。たとえば、図3に示した2部グラフの場合、変数ノードbから延びるエッジの終端には、チェックノードa,aが存在するので、B(3)={1,2}となる。
メッセージパッシング・アルゴリズムによれば、列LLRβmn (p)の算出に使用される行LLRαin (p−1)は、図6に示されるように、集合B(n)\mに属する行番号iに対応するチェックノードaからエッジを介して変数ノードbへ伝搬されるメッセージであると解釈される。また、列LLRβmn (p)は、変数ノードbからチェックノードaへ伝搬されるメッセージであると解釈される。
上記の列演算(ステップST4)の実行後、誤り訂正復号器23は、行LLRαin (p)及び受信LLRλに基づいて一時推定ビット列を算出する(ステップST5)。具体的には、先ず、次式(8)に従って対数事後確率比Q,…,Qが算出される。
Figure 0006395658
次いで、次式(9)に従って対数事後確率比Q,…,Qの各々を硬判定することにより、一時推定ビット列e=(e,…,e)が算出される。
Figure 0006395658
その後、誤り訂正復号器23は、復号条件が成立するか否かを判定する(ステップST6)。具体的には、一時推定ビット列eに関するシンドロームSが次式(10)を満たすという条件、または、繰り返し回数pが最大繰り返し回数pmaxに到達したという条件のいずれか一方が成立するか否かが判定される。
S=H・c=0 (10)
そして、シンドロームSが上式(10)を満たしておらず、且つ、繰り返し回数pが最大繰り返し回数pmaxに到達していない場合は(ステップST6のNO)、繰り返し回数pがインクリメントされ(ステップST7)、その後、復号処理はステップST3に戻る。一方、シンドロームSが上式(10)を満たす場合、または、繰り返し回数pが最大繰り返し回数pmaxに到達した場合は(ステップST6のYES)、誤り訂正復号器23は、一時推定ビット列eを推定語として出力する(ステップST8)。
次に、上記ステップST3の行演算について更に詳細に説明する。図7は、行演算(ステップST3)の処理手順の詳細を示すフローチャートである。
図7を参照すると、誤り訂正復号器23は、外側ループ(以下「行ループ」)の始端RLsと終端RLeとの間の処理を、各行番号mについて行番号の昇順(すなわち、1,2,…,Mの順)で繰り返し実行し、また、内側ループ(以下「列ループ」)の始端CLsと終端CLeとの間の処理を各列番号nについて列番号の昇順(すなわち、1,2,…,Nの順)で繰り返し実行する。行ループは、行番号m=Mについての処理が完了するまで続行され、列ループは、列番号n=Nについての処理が完了するまで続行される。
誤り訂正復号器23は、上記のとおり、集合A(m)\nに属する列番号jをインデックスとする列LLRβmj (p−1)の絶対値の中から、値の小さい順にk個の絶対値MIN,…,MINを検出する(ステップST33)。ここで、kは、予め定められた正整数値であり、検査行列Hの列重みの最小値以下の値となるように設定される。
次に、誤り訂正復号器23は、絶対値MIN,…,MINのテーブル変換πを実行してテーブル変換値π(MIN),…,π(MIN)を生成する(ステップST34)。具体的には、絶対値MIN,…,MINは、予め用意された変換テーブルTを用いてテーブル変換値π(MIN),…,π(MIN)へ変換される。
次に、誤り訂正復号器23は、ステップST34で生成されたk個のテーブル変換値π(MIN),…,π(MIN)を互いに乗算して乗算値zを生成する(ステップST35)。その後、誤り訂正復号器23は、乗算値zのテーブル変換φを実行してテーブル変換値φ(z)を生成する(ステップST36)。具体的には、乗算値zは、予め用意された変換テーブルTBLを用いてテーブル変換値φ(z)へ変換される。
上記のテーブル変換π,φを実現する変換テーブルT,TBLとしては、入力値に対応するテーブル変換値を格納しているルックアップテーブルを使用すればよい。また、テーブル変換値が記憶されたメモリ回路をルックアップテーブルとして使用してもよい。この種のメモリ回路は、入力値によってアドレス指定された記憶領域から、所定ビット長のテーブル変換値を読み出すように構成される。テーブル変換値としては、たとえば、単調増加関数の関数値を固定ビット長の値に変換して使用することができる。また、必要に応じてその関数値を正規化してもよい。
テーブル変換πは、上述のとおり、上式(3)中の双曲線正接関数tanh()の部分に対する近似であるので、変換テーブルT作成用の単調増加関数f(x)としては、双曲線正接関数を使用することが望ましい。これにより、Sum-Productアルゴリズムによる行演算結果に近い演算結果を得ることができる。
また、双曲線正接関数は、正の入力変数の値が大きくなるにつれて関数値の増加分が小さくなる関数である。このため、たとえ単調増加関数f(x)として双曲線正接関数を使用しない場合でも、単調増加関数f(x)は、正の入力変数xの値が大きくなるにつれて関数値の増加分が小さくなる関数であることが望ましい。
一方、テーブル変換φは、上述のとおり、上式(3)中の逆双曲線正接関数arctanh[]の部分に対する近似である。このため、変換テーブルTBL作成用の単調増加関数としては、変換テーブルT作成用の単調増加関数f(x)の逆関数f−1(x)を使用することが望ましく、特に、逆双曲線正接関数arctanh(x)を使用することが望ましい。
上記ステップST36の実行後、誤り訂正復号器23は、集合A(m)\nに属する列番号jをインデックスとする列LLRβmj (p−1)の符号の組み合わせに応じて、算出すべき行LLRαmn (p)の符号が正符号または負符号のいずれであるかを決定する(ステップST37)。たとえば、上式(6)に示すsgn(βmj (p−1))の乗算結果sgnmnの符号を、算出すべき行LLRαmn (p)の符号とすることができる。あるいは、sgn(βmj (p−1))の符号ビットの排他的論理和演算を実行して行LLRαmn (p)の符号ビットを決定してもよい。
そして、誤り訂正復号器23は、ステップST37で決定された符号をテーブル変換値φ(z)に付加して行LLRαmn (p)を生成する(ステップST38)。たとえば、テーブル変換値φ(z)を示すビットに符号ビットを付加することで、行LLRαmn (p)を示すビットを生成することができる。上記のステップST33〜ST38の処理は、行番号mが最大値Mに到達し、且つ列番号nが最大値Nに到達するときまで繰り返し実行される。
次に、図8を参照しつつ、上記復号処理を実行し得る誤り訂正復号器23の内部構成について説明する。図8は、誤り訂正復号器23の構成の一例を概略的に示す機能ブロック図である。
図8に示される誤り訂正復号器23は、復号部30、メモリ制御部38及びバッファメモリ39を備えて構成されており、復号部30は、入力回路31、LLR演算器32、行演算器33、列演算器34、ビット推定器35、繰り返し制御器36及び出力回路37を有する。なお、図8に示した構成は一例である。特に、行演算器33の構成に特徴があり、行演算器33以外の構成が限定されるものではない。
バッファメモリ39は、受信LLR系列λのデータ格納領域61と、行LLR群{αmn (p)}のデータ格納領域62と、列LLR群{βmn (p)}のデータ格納領域63とを有している。メモリ制御部38は、バッファメモリ39に対するデータの読み出し及び書き込みを制御するインタフェース回路である。復号部30は、メモリ制御部38を介してバッファメモリ39にデータを記憶させたり、メモリ制御部38を介してバッファメモリ39からデータを取得したりすることができる。
入力回路31は、復調器22からの入力ビット列を符号語単位で分割して、受信信号系列d=(d,d,…,d)を適切なタイミングでLLR演算器32に出力する。
LLR演算器32は、上記のとおり、受信信号系列dに基づいて受信LLR系列λ=(λ,λ,…,λ)を算出し(図4のステップST1)、この受信LLR系列λをメモリ制御部38を介してバッファメモリ39のデータ格納領域61に記憶させる。
また、初期化が行われる(ステップST2)。すなわち、繰り返し制御器36は、繰り返し回数pを初期値「1」に設定し、最大繰り返し回数pmaxを予め決められた値に設定する。また、繰り返し制御器36は、行演算器33に初期化情報を通知する。なお、本実施の形態では、受信LLR系列λの算出(ステップST1)の後に初期化(ステップST2)が実行されているが、これに限定されるものではない。受信LLR系列λの算出の前に初期化が実行されてもよいし、または、受信LLR系列λの算出と初期化とが同時並列に実行されてもよい。
行演算器33は、初期化情報の通知に応じて、メモリ制御部38を介してバッファメモリ39のデータ格納領域61から受信LLR系列λを読み出す。続いて、行演算器33は、この受信LLR系列λを列LLRの初期値βmn (p−1)として用いた行演算を実行して行LLRαmn (p)を算出し(ステップST3)、この行LLRαmn (p)を、メモリ制御部38を介してバッファメモリ39のデータ格納領域62に記憶させる。
図9は、行演算器33の構成例を概略的に示す機能ブロック図である。図9に示されるように、行演算器33は、入力回路41、最小k値検出部42、第1テーブル変換部43、乗算器45、第2テーブル変換部46、符号決定部47、符号付加部48及び出力回路49を有する。入力回路41は、上記の集合A(m)\nに属する列番号jをインデックスとする列LLR群{βmj (p−1)}をバッファメモリ39から読み出し、最小k値検出部42及び符号決定部47にそれぞれ供給する。
最小k値検出部42は、列LLR群{βmj (p−1)}の絶対値の中から、値の小さい順にk個の絶対値MIN,…,MINを検出する(図7のステップST33)。
第1テーブル変換部43は、同時並列に動作するk個の変換器44,44,…,44からなり、これら変換器44,44,…,44は同一の変換テーブルTを有する。変換器44,44,…,44は、変換テーブルTを用いて、それぞれ絶対値MIN,MIN,…,MINのテーブル変換を実行してテーブル変換値π(MIN),π(MIN),…,π(MIN)を生成し(ステップST34)、これらテーブル変換値π(MIN),π(MIN),…,π(MIN)を乗算器45に並列に出力する。
乗算器45は、入力されたテーブル変換値π(MIN),π(MIN),…,π(MIN)を乗算して乗算値zを生成し(ステップST35)、この乗算値zを第2テーブル変換部46に出力する。第2テーブル変換部46は、変換テーブルTBLを用いて、乗算値zのテーブル変換を実行してテーブル変換値φ(z)を生成し(ステップST36)、このテーブル変換値φ(z)を符号付加部48に出力する。
一方、符号決定部47は、列LLR群{βmj (p−1)}の符号の組み合わせに応じて、算出すべき行LLRαmn (p)の符号を決定する(ステップST37)。その後、符号付加部48は、符号決定部47で決定された符号をテーブル変換値φ(z)に付加して行LLRαmn (p)を生成することができる(ステップST38)。出力回路49は、バッファメモリ39のデータ格納領域62に行LLRαmn (p)を上書きすることにより、データ格納領域62に記憶されている行LLRαmn (p−1)を行LLRαmn (p)へ更新する。
上記した行演算の実行後、図8の列演算器34は、メモリ制御部38を介してバッファメモリ39のデータ格納領域62から行LLRαmn (p)を読み出し、これら行LLRαmn (p)を用いた列演算を実行して列LLRβmn (p)を算出する(ステップST4)。更に、列演算器34は、この列LLRβmn (p)を、メモリ制御部38を介してバッファメモリ39のデータ格納領域63に記憶させる。
列演算の実行後は、ビット推定器35は、行LLRαmn (p)及び受信LLRλに基づいて一時推定ビット列e=(e,…,e)を算出し(ステップST5)、一時推定ビット列eを繰り返し制御器36に供給する。
その後、繰り返し制御器36は、復号条件が成立するか否かを判定する(ステップST6)。すなわち、繰り返し制御器36は、一時推定ビット列eに基づいてシンドロームS(=H・c)を算出し、このシンドロームSの要素の全てが零であるか否か、また、繰り返し回数pが最大繰り返し回数pmaxに到達したか否かを判定する。
復号条件が成立しない場合(ステップST6のNO)、繰り返し制御器36は、繰り返し回数pをインクリメントして(ステップST7)、行演算器33に行演算を指示する。
行演算器33は、繰り返し制御器36からの指示に応じて、メモリ制御部38を介してバッファメモリ39のデータ格納領域63から列LLRβmn (p−1)を読み出し、これら列LLRβmn (p−1)を用いた行演算を実行して行LLRαmn (p)を算出する(ステップST3)。更に、行演算器33は、バッファメモリ39のデータ格納領域62に行LLRαmn (p)を上書きすることにより、データ格納領域62に記憶されている行LLRαmn (p−1)を行LLRαmn (p)へ更新する。
その後、列演算器34は、メモリ制御部38を介してバッファメモリ39のデータ格納領域62から行LLRαmn (p)を読み出し、これら行LLRαmn (p)を用いた列演算を実行して列LLRβmn (p)を算出する(ステップST4)。更に、列演算器34は、バッファメモリ39のデータ格納領域63に列LLRβmn (p)を上書きすることにより、データ格納領域63に記憶されている列LLRβmn (p−1)を列LLRβmn (p)へ更新する。
その後、ビット推定器35は、行LLRαmn (p)及び受信LLRλに基づいて一時推定ビット列eを算出する(ステップST5)。繰り返し制御器36は、上記の復号条件が成立するか否かを判定し(ステップST6)、復号条件が成立しないときは(ステップST6のNO)、行演算及び列演算を行演算器33及び列演算器34に繰り返し実行させる。
最終的に、復号条件が成立したとき(ステップST6のYES)、繰り返し制御器36は、一時推定ビット列eを推定語として出力回路37から外部へ出力させる。同時に、繰り返し制御器36は、次の受信信号系列dの出力を入力回路31に指示し、また、行演算器33に初期化情報を通知する。これにより、次の受信信号系列dに対する復号処理が行われる。
以上に説明したように実施の形態1のLDPC誤り訂正復号器23は、行演算において、図7に示したように、列LLRβmj (p−1)の絶対値の中から、値の小さい順に所定個数の絶対値MIN〜MINを検出し(ステップST33)、これら絶対値MIN〜MINのテーブル変換πを実行してテーブル変換値π(MIN)〜π(MIN)を生成し(ステップST34)、これらテーブル変換値π(MIN)〜π(MIN)を乗算し(ステップST35)、その乗算結果zのテーブル変換φを実行してテーブル変換値φ(z)を生成している(ステップST36)。このため、Min-SumアルゴリズムやオフセットMin-Sumアルゴリズムといった従来の近似アルゴリズムと比べると、演算量の増大を抑制しつつ、Sum-Productアルゴリズムによる演算結果に近い演算結果を得ることができる。したがって、エラーフロアの発生抑制のために検査行列Hの列重みを大きくしても、誤り訂正符号の復号特性の劣化を効果的に抑制することができる。
なお、実施の形態1の行演算器33は、図9に示した回路構成に限定されるものではない。たとえば、変換器44〜44は、並列処理を実行しているが、この並列処理に代えて時分割処理を行う回路構成を採用することができる。
また、回路規模を小さくする観点からは、変換器44〜44は、入力ビット幅よりも小さい出力ビット幅を有するメモリ回路として構成されることが好ましい。これにより、乗算器45及び第2テーブル変換部46の回路規模を小さくすることができる。
実施の形態2.
次に、本発明に係る実施の形態2について説明する。
上記実施の形態1では、図8の行演算器33は、集合A(m)\nに属する列番号jをインデックスとする列LLRβmj (p−1)を、メモリ制御部38を介してバッファメモリ39から選択的に読み出す必要がある(図7のステップST33)。上述したように、集合A(m)\nは、検査行列Hの第m行に存在する非零要素(=1)の列番号(言い換えれば、第m行において「1」が立っている列番号)の集合のうち、n以外の列番号の集合をいう。このため、メモリ制御部38は、当該列LLRβmj (p−1)の読み出しに必要なアドレス情報を予め保持しておく必要がある。本実施の形態は、このようなアドレス情報の保持に必要なメモリ容量の削減を可能とするものである。
先ず、本実施の形態で使用される検査行列Hは、全ての行について一定の行重みwを有する。また、検査行列Hは、各行における非零要素(=1)の配列が、当該各行に隣接する行における非零要素の配列を一定のシフト量だけ巡回的にシフトさせた配列と一致するように構成されている。このような検査行列Hは、ユークリッド幾何符号または射影幾何符号を用いて構成することが可能である。
Y.Kou等の論文(Y. Kou, S. Lin, and M. P. C. Fossorier, "Low Density Parity Check Codes Based on Finite Geometries: A Rediscovery," ISIT2000, pp. 200, Sorrento, Itary, June 25-30, 2000.)で提案された方法によれば、ユークリッド幾何符号EG(2,2)を用いて、図10に示す検査行列Hを構成することができる。図10の検査行列Hは、行重みw=4,列重みw=4の構造を有する。また、この検査行列Hの各行における非零要素の配列は、当該各行に隣接する行における非零要素の配列を1列だけ巡回的にシフトさせた配列と一致する。
図11(A),(B)は、列LLRβmn (p−1)のデータ格納領域63を概念的に示す図である。図11(A)に示されるように、このデータ格納領域63は、列LLRβmn (p−1)を行単位で保持するM個のブロック領域63,…,63,…,63を有する。m番目のブロック領域63には、図11(B)に示されるように、列LLR系列βm1 (p−1),βm2 (p−1),…,βmN (p−1)が連続的に格納されており、列LLRβm1 (p−1),βm2 (p−1),…,βmN (p−1)の記憶領域に対しては、それぞれ、アドレスAd(m,1),Ad(m,2),…,Ad(m,N)が割り当てられている。
図12は、メモリ制御部38の構成のうちアドレス発生回路部分を示す図である。図12に示されるように、メモリ制御部38は、基準アドレスレジスタ50、相対アドレスレジスタ51及び加算器52,53を含む。相対アドレスレジスタ51には、行重みw(=4)の個数分の相対アドレスR1,R2,R3,R4が記憶されている。これら相対アドレスR1,R2,R3,R4は、検査行列Hの第1行における非零要素(=1)の列番号にそれぞれ対応するように設定されたものである。
基準アドレスレジスタ50には基準アドレスが記憶されている。本実施の形態では、基準アドレスとして、各ブロック領域63内の先頭の列LLRβm1 (p−1)に対応する先頭アドレスAd(m,1)が使用されるが、これに限定されるものではない。
今、バッファメモリ39のデータ格納領域63から、集合A(m)\nに属する列番号jをインデックスとする列LLRβmj (p−1)が読み出される場合を考える。この場合、相対アドレスレジスタ51は、当該列番号jに対応する相対アドレスRx(xは、1〜4のうちいずれか)を出力する。加算器52は、巡回シフト量及び行番号mの組み合わせ(たとえば、巡回シフト量のm倍)に対応するオフセットO(m)を相対アドレスRxに加算して巡回アドレスCAを生成する。ここで、巡回アドレスCAは、一定のアドレス空間内を巡回するように生成される。そして、加算器53は、基準アドレスレジスタ50から出力された先頭アドレスAd(m,1)に巡回アドレスCAを加算して読出アドレスAd(m,j)を生成する。この読出アドレスAd(m,j)で指定される記憶領域から列LLRβmj (p−1)を読み出すことができる。
このように実施の形態2は、基準アドレスを保持する基準アドレスレジスタ50と、検査行列Hの行重みの個数分の相対アドレスを保持する相対アドレスレジスタ51とを用いて読出アドレスを生成することができるので、検査行列Hの非零要素の全てについて、列LLRβmn (p−1)の読み出しに必要なアドレス情報を保持する必要がない。したがって、アドレス情報の保持のためのメモリ容量を少なくし、回路規模を削減することができる。
以上、図面を参照して本発明に係る種々の実施の形態について述べたが、これら実施の形態は本発明の例示であり、これら実施の形態以外の様々な変形例を採用することができる。
たとえば、実施の形態1では、図4のステップST6における復号条件として、一時推定ビット列eに関するシンドロームSが式(10)を満たすという第1の条件と、繰り返し回数pが最大繰り返し回数pmaxに到達したという第2の条件が採用されたが、第1の条件を採用せずに第2の条件のみを復号条件として採用してもよい。
また、上記LDPC誤り訂正復号器23は、図4及び図7に示した各ステップを、CPU(Central Processing Unit)を含むプロセッサに実行させるコンピュータプログラムにより実現されてもよい。上記LDPC誤り訂正復号器23は、LSI(Large-Scale Integration)回路やFPGA(Field-Programmable Gate Array)回路としても構成可能である。
また、本発明に係る誤り訂正復号装置、受信装置及び誤り訂正復号方法は、たとえば、移動体通信システムや衛星通信システムなどのディジタル通信システム、LAN(Local Area Network)、大容量記録媒体(たとえば、ハードディスクドライブや光ディスク)用の情報再生装置、及び量子暗号に適用可能である。
なお、本発明の範囲内において、上記実施の形態の自由な組み合わせ、各実施の形態の任意の構成要素の変形、または各実施の形態の任意の構成要素の省略が可能である。
1 ディジタル通信システム、 10 送信装置、 11 LDPC符号化器、 12 変調器、 13 送信器、 20 受信装置、 21 受信器、 22 復調器、 23 LDPC誤り訂正復号器、 24 情報ビット出力部、 30 復号部、 31 入力回路、 32 LLR演算器、 33 行演算器(行演算部)、 34 列演算器(列演算部)、 35 ビット推定器、 36 繰り返し制御器、 37 出力回路、 38 メモリ制御部、 39 バッファメモリ、 41 入力回路、 42 最小k値検出部、 43 第1テーブル変換部、 44,44,…,44 変換器、 45 乗算器、 46 第2テーブル変換部、 47 符号決定部、 48 符号付加部、 49 出力回路、 50 基準アドレスレジスタ、 51 相対アドレスレジスタ、 52,53 加算器、 61,62,63 データ格納領域。

Claims (10)

  1. 低密度パリティ検査符号を定める検査行列の複数列にそれぞれ対応する複数の変数ノードと、前記検査行列の複数行にそれぞれ対応する複数のチェックノードとの間で演算結果を伝搬させるメッセージパッシング・アルゴリズムに基づいた行演算及び列演算を繰り返し行う誤り訂正復号装置であって、
    前記行演算を実行して対数外部値比を算出する行演算部と、
    前記対数外部値比を用いた前記列演算を実行して対数事前値比を算出する列演算部と
    を備え、
    前記行演算部は、
    前記各チェックノード及び前記各変数ノードの組について、前記複数の変数ノードのうち当該各変数ノードを除く他の変数ノードから、前記検査行列の非零要素に対応するエッジを介して当該各チェックノードへ伝搬される一群の対数事前値比の絶対値の中から、値の小さい順に所定個数の絶対値を検出する値検出部と、
    第1の変換テーブルを用いて、当該検出された所定個数の絶対値をそれぞれ複数の第1テーブル変換値に変換する第1テーブル変換部と、
    前記複数の第1テーブル変換値を乗算する乗算器と、
    第2の変換テーブルを用いて、前記乗算器の出力値を第2テーブル変換値に変換する第2テーブル変換部と、
    前記第2テーブル変換値に符号を付加して前記対数外部値比を生成する符号付加部と
    を含む誤り訂正復号装置。
  2. 請求項1記載の誤り訂正復号装置であって、前記第1の変換テーブルは、入力値に対して、単調増加関数の関数値を前記第1テーブル変換値として与えることを特徴とする誤り訂正復号装置。
  3. 請求項2記載の誤り訂正復号装置であって、前記単調増加関数が双曲線正接関数であることを特徴とする誤り訂正復号装置。
  4. 請求項2または請求項3記載の誤り訂正復号装置であって、前記第2の変換テーブルは、入力値に対して、前記単調増加関数の逆関数の関数値を前記第2テーブル変換値として与えることを特徴とする誤り訂正復号装置。
  5. 請求項1から請求項4のうちのいずれか1項記載の誤り訂正復号装置であって、
    記検査行列は、全ての行について一定の行重みを有する行列であり、
    記検査行列の各行における行列要素の配列は、当該各行に隣接する行における行列要素の配列を一定の巡回シフト量だけ巡回的にシフトさせた配列と一致する、
    ことを特徴とする誤り訂正復号装置。
  6. 請求項5記載の誤り訂正復号装置であって、
    ッファメモリに対するデータの読み出し及び書き込みを制御するメモリ制御部と、
    記検査行列の行重みの個数分の相対アドレスを格納するアドレスレジスタと
    を更に備え、
    前記対数事前値比は、前記バッファメモリの特定のデータ格納領域に記憶されており、
    前記メモリ制御部は、前記巡回シフト量及び行番号の組み合わせに対応するオフセットを前記相対アドレスに加算して巡回アドレスを生成し、該巡回アドレスに基準アドレスを加算することにより前記特定のデータ格納領域から前記対数事前値比を読み出すための読出アドレスを生成する、
    ことを特徴とする誤り訂正復号装置。
  7. 請求項5または請求項6記載の誤り訂正復号装置であって、前記検査行列は、ユークリッド幾何符号または射影幾何符号を用いて生成された行列であることを特徴とする誤り訂正復号装置。
  8. 請求項1から請求項7のうちのいずれか1項記載の誤り訂正復号装置であって、前記行演算部は、前記一群の対数事前値比の符号の組み合わせに応じて、前記第2テーブル変換値に付加すべき符号を決定する符号決定部を更に含むことを特徴とする誤り訂正復号装置。
  9. 通信路から変調信号を受信する受信器と、
    前記受信器の出力を復調して受信信号を出力する復調器と、
    前記受信信号を復号する請求項1から請求項8のうちのいずれか1項記載の誤り訂正復号装置と
    を備えることを特徴とする受信装置。
  10. 低密度パリティ検査符号を定める検査行列の複数列にそれぞれ対応する複数の変数ノードと、前記検査行列の複数行にそれぞれ対応する複数のチェックノードとの間で演算結果を伝搬させるメッセージパッシング・アルゴリズムに基づいた行演算及び列演算を演算回路において繰り返し行う誤り訂正復号方法であって、
    前記行演算を実行して対数外部値比を算出するステップと、
    前記対数外部値比を用いた前記列演算を実行して対数事前値比を算出するステップと
    を備え、
    前記行演算は、
    前記各チェックノードと前記各変数ノードとの組について、前記複数の変数ノードのうち当該各変数ノードを除く他の変数ノードから、前記検査行列の非零要素に対応するエッジを介して当該各チェックノードへ伝搬される一群の対数事前値比の絶対値の中から、値の小さい順に所定個数の絶対値を検出するステップと、
    第1の変換テーブルを用いて、当該検出された所定個数の絶対値をそれぞれ複数の第1テーブル変換値に変換するステップと、
    前記複数の第1テーブル変換値を乗算して乗算値を算出するステップと、
    第2の変換テーブルを用いて、前記乗算値を第2テーブル変換値に変換するステップと、
    前記第2テーブル変換値に符号を付加して前記対数外部値比を生成するステップと
    を含むことを特徴とする誤り訂正復号方法。
JP2015088577A 2015-04-23 2015-04-23 誤り訂正復号装置、受信装置及び誤り訂正復号方法 Active JP6395658B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015088577A JP6395658B2 (ja) 2015-04-23 2015-04-23 誤り訂正復号装置、受信装置及び誤り訂正復号方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015088577A JP6395658B2 (ja) 2015-04-23 2015-04-23 誤り訂正復号装置、受信装置及び誤り訂正復号方法

Publications (2)

Publication Number Publication Date
JP2016208309A JP2016208309A (ja) 2016-12-08
JP6395658B2 true JP6395658B2 (ja) 2018-09-26

Family

ID=57489674

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015088577A Active JP6395658B2 (ja) 2015-04-23 2015-04-23 誤り訂正復号装置、受信装置及び誤り訂正復号方法

Country Status (1)

Country Link
JP (1) JP6395658B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107025157B (zh) * 2017-04-21 2019-08-02 浪潮集团有限公司 一种算法自检电路及方法
JP7039298B2 (ja) 2018-01-16 2022-03-22 キオクシア株式会社 メモリシステム
CN111628783A (zh) * 2019-02-27 2020-09-04 西南科技大学 一种eg-ldpc译码器

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4595650B2 (ja) * 2005-04-25 2010-12-08 ソニー株式会社 復号装置および復号方法
JP4563454B2 (ja) * 2005-08-10 2010-10-13 三菱電機株式会社 検査行列生成方法、符号化方法、復号方法、通信装置、通信システム、符号化器および復号器
KR101749096B1 (ko) * 2011-05-12 2017-06-21 한국전자통신연구원 Ldpc 부호의 복호화 방법 및 장치

Also Published As

Publication number Publication date
JP2016208309A (ja) 2016-12-08

Similar Documents

Publication Publication Date Title
US8924812B2 (en) Non-binary LDPC code decoder
JP6609352B2 (ja) 送信装置、送信方法、受信装置及び受信方法
US8880973B1 (en) Detector-decoder interface for GF(q) iterative decoding
US8516347B1 (en) Non-binary LDPC extrinsic calculation unit (LECU) for iterative decoding
JP5306342B2 (ja) シャッフルldpcデコーディング
US8607118B2 (en) Iterative decoding method and apparatus
US9160368B1 (en) Systems and methods for near-codeword detection and correction on the fly
JP4702632B2 (ja) 符号化方法および符号化装置、並びにプログラム
JP4627317B2 (ja) 通信装置および復号方法
US10103751B2 (en) Non-concatenated FEC codes for ultra-high speed optical transport networks
US20220158660A1 (en) Non-Concatenated FEC Codes For Ultra-High Speed Optical Transport Networks
JP4651600B2 (ja) 低密度パリティ検査復号器における検査ノード更新方法
US20120221914A1 (en) Non-Concatenated FEC Codes for Ultra-High Speed Optical Transport Networks
US9755666B2 (en) Adaptive desaturation in min-sum decoding of LDPC codes
US20190149169A1 (en) Systems and methods for decoding error correcting codes
KR20120053122A (ko) 개선된 비트 반전 알고리즘 기반의 저밀도 패리티 검사 부호를 위한 복호 방법, 장치 및 이를 위한 기록 매체
KR20080096387A (ko) 디코딩 장치
JP6395658B2 (ja) 誤り訂正復号装置、受信装置及び誤り訂正復号方法
JP4572937B2 (ja) 復号装置および方法、プログラム、並びに記録媒体
JP5333233B2 (ja) 復号装置、データ蓄積装置、データ通信システム、および復号方法
US9614548B1 (en) Systems and methods for hybrid message passing and bit flipping decoding of LDPC codes
CN100539441C (zh) 一种低密度奇偶校验码的译码方法
JP2008153874A (ja) 軟判定復号装置、軟判定復号方法および軟判定復号プログラム
JP5034588B2 (ja) 軟判定復号装置および軟判定復号プログラム
CN112470405A (zh) 非二进制码的消息传递解码的可变节点处理方法和设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170710

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180510

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180605

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180621

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180828

R150 Certificate of patent or registration of utility model

Ref document number: 6395658

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250