JP2008219528A - Device and program for detecting ldpc code - Google Patents

Device and program for detecting ldpc code Download PDF

Info

Publication number
JP2008219528A
JP2008219528A JP2007054939A JP2007054939A JP2008219528A JP 2008219528 A JP2008219528 A JP 2008219528A JP 2007054939 A JP2007054939 A JP 2007054939A JP 2007054939 A JP2007054939 A JP 2007054939A JP 2008219528 A JP2008219528 A JP 2008219528A
Authority
JP
Japan
Prior art keywords
node
bit node
bit
check
reliability
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.)
Pending
Application number
JP2007054939A
Other languages
Japanese (ja)
Inventor
Tomoaki Otsuki
知明 大槻
大輔 ▲あべ▼松
Daisuke Abematsu
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.)
Keio University
Original Assignee
Keio University
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 Keio University filed Critical Keio University
Priority to JP2007054939A priority Critical patent/JP2008219528A/en
Publication of JP2008219528A publication Critical patent/JP2008219528A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a device and programs for detecting LDPC code, which do not degrade error rate feature while greatly reducing the computational complexity of a sum-product algorithm. <P>SOLUTION: A bit node having the reliability β lower than a specified threshold θ, is row and column processed to be updated. On the other hand, for a bit node having the reliability β equal or higher than the specified threshold θ, the previous reliability β is used also in next time and the reliability β is not updated, so that the computational complexity can be reduced. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、LDPC(low density parity check:低密度パリティ検査)符号を用いた符号を復号する符号検出技術に関する。   The present invention relates to a code detection technique for decoding a code using an LDPC (low density parity check) code.

近年、理論限界に迫る優れた特性を達成する誤り訂正符号としてLDPC符号が、通信・放送・記録系で注目されている。LDPC符号は、繰返演算であるサムプロダクト・アルゴリズムを用いることで達成する(例えば、特許文献1参照。)。
特開2006−279396号公報
In recent years, LDPC codes have attracted attention in communication / broadcast / recording systems as error correction codes that achieve excellent characteristics approaching the theoretical limit. The LDPC code is achieved by using a sum product algorithm that is a repetitive operation (see, for example, Patent Document 1).
JP 2006-279396 A

しかし、サムプロダクト・アルゴリズムには非線型関数の演算が含まれ演算量が多く、そのまま実装することは難しい。   However, the sum product algorithm includes operations of nonlinear functions and has a large amount of calculation, and it is difficult to implement as it is.

本発明は、上記問題点に鑑み、誤り率特性をほとんど劣化させずに、サムプロダクト・アルゴリズムの演算量を大幅に少なくすることができるLDPC符号検出装置及びプログラムを提供することを目的とする。   In view of the above problems, an object of the present invention is to provide an LDPC code detection apparatus and program that can significantly reduce the amount of calculation of the sum product algorithm without substantially deteriorating error rate characteristics.

本発明のLDPC符号検出装置は、(1).低密度パリティ検査(以下「LDPC」という。)符号のパリティ検査行列のタナーグラフに対応して設定された複数のチェックノードから当該チェックノードに接続されている複数のビットノードに向け信頼度αを伝搬し、(2).該複数のビットノードから該複数のチェックノードに向け信頼度βを伝搬する、(1)、(2)を繰り返す、その過程において信頼度βから算出される事後値の硬判定値をパリティ検査行列でパリティ検査することにより収束判定し送信符号の推定値を決定するサムプロダクト・アルゴリズムを用いて、受信値からの符号検出を行うLDPC符号検出装置において、ビットノードの信頼度βが所定の閾値θより小さいビットノードを選択するビットノード選択手段と、該ビットノード選択手段が選択した前記ビットノードに接続されている各前記チェックノードについて、当該チェックノードに接続されている前記ビットノードから当該チェックノードに向け伝搬される前記信頼度βに基づき、当該チェックノードから前記ビットノード選択手段が選択した前記ビットノードに向け伝搬する信頼度αを算出し、伝搬する行処理演算手段と、前記ビットノード選択手段が選択した前記各ビットノードについて、当該ビットノードに接続されている前記各チェックノードから伝搬される信頼度αに基づき、当該ビットノードから前記各チェックノードに向け伝搬する信頼度βを算出して更新し、前記ビットノード選択手段が選択しなかった前記各ビットノードについて、繰返しの前回の事後値を次回の事後値とする列処理演算及びビットノード更新手段と、を備えることを特徴とする。   The LDPC code detection device of the present invention is connected to a check node from a plurality of check nodes set corresponding to a Tanner graph of a parity check matrix of (1). Low density parity check (hereinafter referred to as “LDPC”) code. Propagating the reliability α toward the plurality of bit nodes, and (2) propagating the reliability β toward the plurality of check nodes from the plurality of bit nodes, repeating (1) and (2), In the process, the code from the received value is determined using a sum product algorithm that determines the convergence by determining the posterior value hard decision value calculated from the reliability β by parity check using the parity check matrix and determining the estimated value of the transmitted code. In an LDPC code detection apparatus that performs detection, bit node selection means for selecting a bit node having a bit node reliability β smaller than a predetermined threshold θ, and the bit node selection For each check node connected to the bit node selected by a stage, based on the reliability β propagated from the bit node connected to the check node to the check node, the check node A reliability α to be propagated toward the bit node selected by the bit node selection means is calculated, and the row processing calculation means to be propagated and each bit node selected by the bit node selection means are connected to the bit node. Each bit that is not selected by the bit node selection means is calculated and updated based on the reliability α that is propagated from each check node and the reliability β that is propagated from the bit node toward each check node. Column processing operations and bits with the previous posterior value of the iteration as the next posterior value for the node Node updating means.

また、前記繰返しの数をカウントする復号繰返数カウント手段をさらに備え、該復号繰返数が所定値を超えてもなお収束しない場合には、前記ビットノード選択手段はすべてのビットノードを選択することで、通信環境が悪い場合にも復号を達成することができる。   In addition, a decoding repetition number counting means for counting the number of repetitions is further provided, and when the decoding repetition number exceeds a predetermined value, the bit node selection means selects all the bit nodes. By doing so, decoding can be achieved even in a poor communication environment.

また、本発明は、コンピュータを、上記LDPC符号検出装置として機能させるためのプログラムである。   The present invention is a program for causing a computer to function as the LDPC code detection apparatus.

本発明によれば復号演算量が大幅に少なくなるため、実装が容易になり、消費電力が小さくなり、処理を高速にすることができる。   According to the present invention, since the amount of decoding operation is greatly reduced, the implementation is facilitated, the power consumption is reduced, and the processing can be performed at high speed.

以下、添付図面を参照しながら本発明を実施するための最良の形態について詳細に説明する。   The best mode for carrying out the present invention will be described below in detail with reference to the accompanying drawings.

図1は、本発明の一実施例によるLDPC符号検出装置の構成を示す図である。本実施例のLDPC符号検出装置は、初期尤度演算手段10、更新処理削減ビットノード選択手段11、未更新ビットノード情報記憶手段12、行処理演算手段13、列処理演算及びビットノード更新手段14、硬判定手段15、パリティ判定手段16、復号繰返数カウント手段17、復号処理切替手段18からなる。   FIG. 1 is a diagram illustrating a configuration of an LDPC code detection apparatus according to an embodiment of the present invention. The LDPC code detection apparatus according to the present embodiment includes an initial likelihood calculation means 10, an update processing reduction bit node selection means 11, an unupdated bit node information storage means 12, a row processing calculation means 13, a column processing calculation and a bit node update means 14. , Hard decision means 15, parity decision means 16, decoding repetition number counting means 17, and decoding process switching means 18.

図2は、LDPC符号を説明する図である。ここでまず、LDPC符号を説明する。LDPC符号は、非常に疎な検査行列、すなわち、行列内の非零要素の数が非常に少ない検査行列により定義される線形符号であると同時に、タナーグラフで定義される符号である。そして、局所的に推論した結果をタナーグラフ上でやりとりして更新していくことで、優れた誤り率特性を達成する。図2は、(6,2)LDPC符号の場合について行重みdc=3、列重みdv=2の検査行列Hの例を示す。検査行列Hは図に示すようにタナーグラフによっても示すことができる。チェックノードは行に対応し、ビットノードは列に対応し、その間を接続するエッジは行列内の要素1に対応する。例えば、検査行列Hの第2行第5列の○を付けた1は、タナーグラフの太線で示すエッジに対応する。   FIG. 2 is a diagram for explaining the LDPC code. First, the LDPC code will be described. The LDPC code is a code defined by a Tanner graph at the same time as a linear code defined by a very sparse check matrix, that is, a check matrix having a very small number of non-zero elements in the matrix. An excellent error rate characteristic is achieved by exchanging and updating the locally inferred result on the Tanner graph. FIG. 2 shows an example of a parity check matrix H with a row weight dc = 3 and a column weight dv = 2 for the (6,2) LDPC code. The check matrix H can also be shown by a Tanner graph as shown in the figure. A check node corresponds to a row, a bit node corresponds to a column, and an edge connecting between them corresponds to an element 1 in the matrix. For example, 1 with a circle in the second row and the fifth column of the parity check matrix H corresponds to an edge indicated by a thick line in the Tanner graph.

SPA(サムプロダクト・アルゴリズム)はチェックノードとビットノード間で情報を受け渡し、各ノードの情報を更新しながら繰返復号を行う復号アルゴリズムである。   SPA (Sum Product Algorithm) is a decoding algorithm that performs iterative decoding while passing information between check nodes and bit nodes and updating information of each node.

まず、従来のSPAについて説明する。検査行列Hにおいてm行目に“1”を持つ列のインデックスの集合をN(m)={n:Hm,n=1}、n列目に“1”を持つ行のインデックスの集合をM(n)={m:Hm,n=1}と表す。l回目の各ノードの更新処理を以下に示す。初期値β(0)mnは初期尤度β(0)mn=λn=(2/σ2)rnynである。ここで、σ2は雑音分散、rnは受信電力、ynは受信シンボルを示す。
(1)チェックノードの更新:m番目チェックノードから各n番目のビットノードへ渡すLLR(対数尤度比)値αmnの更新を下式のように表す。
First, a conventional SPA will be described. In the parity check matrix H, a set of indexes of columns having “1” in the m-th row is N (m) = {n: Hm, n = 1}, and a set of indexes of rows having “1” in the n-th column is M. (N) = {m: Hm, n = 1}. The first update process for each node is shown below. The initial value β (0) mn is the initial likelihood β (0) mn = λn = (2 / σ 2 ) rnyn. Here, σ 2 is noise variance, rn is received power, and yn is a received symbol.
(1) Check node update: Update of an LLR (log likelihood ratio) value αmn passed from the mth check node to each nth bit node is expressed by the following equation.

Figure 2008219528
ここで、n'∈N(m)\nは、mに接続するビットノードn'の内n番目のビットノードを含まない集合を表す。また、sign(・)は(・)の符号を返す関数である。
Figure 2008219528
Here, n′εN (m) \ n represents a set not including the nth bit node among the bit nodes n ′ connected to m. Also, sign (•) is a function that returns the sign of (•).

Figure 2008219528
集合Aの要素a,bに関して、演算(+を○で囲う記号)を以下のように定義する。
Figure 2008219528
For the elements a and b of the set A, an operation (a symbol in which + is enclosed by ◯) is defined as follows.

Figure 2008219528
(2)ビットノードの更新:n番目ビットノードから、各m番目チェックノードへ渡すLLR値βmnの更新を以下のように表す。
Figure 2008219528
(2) Bit node update: Update of the LLR value βmn passed from the nth bit node to each mth check node is expressed as follows.

Figure 2008219528
ここで、m'∈M(n)\mは、nに接続するチェックノードm'の内m番目のチェックノードを含まない集合を表す。各ビットの事後LLRを次式で更新する。
Figure 2008219528
Here, m′εM (n) \ m represents a set not including the mth check node among the check nodes m ′ connected to n. The posterior LLR of each bit is updated by the following formula.

Figure 2008219528
(3)硬判定とパリティチェック
(a)硬判定により復号系列を推定する。
Figure 2008219528
(3) Hard decision and parity check (a) A decoded sequence is estimated by hard decision.

Figure 2008219528
(b)Hω^=0もしくは最大繰返数l=lmaxに達したときは、復号結果としてω^を出力。Hω^≠0の場合、l=l+1として再び各ノードの更新処理を行う。
Figure 2008219528
(B) When Hω ^ = 0 or the maximum number of repetitions l = lmax, ω ^ is output as a decoding result. If Hω ^ ≠ 0, update processing of each node is performed again with l = 1 + 1.

つぎに、δ−min復号アルゴリズムについて説明する。式(3)に示したチェックノードの更新式は、非線形関数であるため実装が困難である。式(3)を簡易化した復号アルゴリズムとしてδ−min復号アルゴリズムが提案されている。δ−min復号アルゴリズムは、SPAと比べブロック誤り率(BLER)特性の劣化が小さい(約0.05dB)とされている。δ−min復号アルゴリズムは、密度発展法による補正因子が不要であるため,本発明との併用が容易である。   Next, the δ-min decoding algorithm will be described. The update expression for the check node shown in Expression (3) is a nonlinear function and is difficult to implement. A δ-min decoding algorithm has been proposed as a decoding algorithm that simplifies Equation (3). In the δ-min decoding algorithm, the deterioration of the block error rate (BLER) characteristic is small (about 0.05 dB) compared to SPA. Since the δ-min decoding algorithm does not require a correction factor by the density evolution method, it can be easily used in combination with the present invention.

式(3)を線形近似するために,対数関数ln(1+exp(−x))に関してTayler級数展開を行う。   In order to approximate the equation (3) linearly, a Taylor series expansion is performed on the logarithmic function ln (1 + exp (−x)).

Figure 2008219528
実装を考慮すると演算量の小さい1次項までを用い,定数項はx>0の領域で関数ln(1+exp(−x))との誤差を補正した値(=0.9)を用いる。関数ln(1+exp(−x))の線形近似式を以下に示す。
Figure 2008219528
In consideration of implementation, the first order term with a small amount of calculation is used, and the constant term uses a value (= 0.9) obtained by correcting an error from the function ln (1 + exp (−x)) in the region of x> 0. A linear approximate expression of the function ln (1 + exp (−x)) is shown below.

Figure 2008219528
本発明は,SPAや低演算量アルゴリズム(δ−min復号アルゴリズム)と併用することでLDPC符号の復号に必要なメモリー量及び消費電力を削減する。本発明は,2種類の閾値(LLR閾値θLLR,繰返閾値θiter)を用いて更新処理を削減し,従来の復号アルゴリズムとほぼ等しい誤り率特性を達成する。本発明アルゴリズムは,l−1回目の繰返処理のn番目のビットに対応するビットノードの事後LLRβ(l−1)nがLLRの閾値θLLRより大きい場合(β(l−1)n≧θLLR),l回目の更新処理を行わないことによって更新処理数を削減する。繰返閾値θiterは,ある回数θiter[回]以上繰返復号を行っても復号処理が終了しない場合,すべてのノードに対して更新処理を行うための閾値である。
Figure 2008219528
The present invention reduces the amount of memory and power consumption required for decoding LDPC codes by using together with SPA and a low computational complexity algorithm (δ-min decoding algorithm). The present invention reduces update processing using two types of threshold values (LLR threshold value θLLR, repetition threshold value θiter), and achieves an error rate characteristic substantially equal to that of a conventional decoding algorithm. In the algorithm of the present invention, when the a posteriori LLRβ (l−1) n of the bit node corresponding to the n-th bit of the l− 1th iteration is larger than the LLR threshold θLLR (β (l−1) n ≧ θLLR ), The number of update processes is reduced by not performing the first update process. The repeat threshold θiter is a threshold for performing update processing on all nodes when the decoding process does not end even if repeated decoding is performed more than a certain number of times θiter [times].

本発明のアルゴリズムを以下に示す。
(1)LLR閾値θLLRとビットノードのLLRβnの比較:
(a)繰返数l−1<θiter:l−1回目のビットノードの事後LLRβ(l−1)nとLLR閾値θLLRを比較する。
・|β(l−1)n|≧θLLRなるビットnのインデックスの集合をN_={n:|β(l−1)n|≧θLLR}と表す。
・|β(l−1)n|<θLLRなるビットnに関してm行目に“1”を持つ列のインデックスの集合をN ̄(m)={n:Hm,n=1∩|β(l−1)n|<θLLR},n列目に“1”を持つ行のインデックスの集合をM ̄(n)={m:Hm,n=1∩|β(l−1)n|<θLLR}と表す。
(b)繰返数l−1≧θiter:全ての更新処理を行う。
(2)チェックノードの更新:m番目チェックノードから各n番目のビットノードへ渡すLLR値αmnの更新は,各n番目のビットノードが|β(l−1)n|<θLLRである場合,下式のように表される。
The algorithm of the present invention is shown below.
(1) Comparison of LLR threshold θLLR and bit node LLRβn:
(A) The number of repetitions l-1 <θiter: The a posteriori LLRβ ( 1-1 ) n of the l− 1th bit node is compared with the LLR threshold θLLR.
· | Β (l-1) n | ≧ θLLR the bits n set the N _ = {n: | β (l-1) n | ≧ θLLR} index expressed as.
· | Β (l-1) n | <N¯ a set of index columns with "1" in m-th row with respect θLLR the bits n (m) = {n: Hm, n = 1∩ | β (l −1) n | <θLLR}, and the set of indexes of the row having “1” in the nth column is M ̄ (n) = {m: Hm, n = 1∩ | β (l−1) n | <θLLR }.
(B) Number of repetitions l−1 ≧ θiter: All update processes are performed.
(2) Check node update: The update of the LLR value αmn passed from the mth check node to each nth bit node is performed when each nth bit node is | β (l−1) n | <θLLR. It is expressed as the following formula.

Figure 2008219528
一方、ビットノードの事後LLR値が|β(l−1)n|≧θLLRである各ビットノードに渡すLLR値αmnの更新、すなわち、行処理演算は行わない。
(3)ビットノードの更新:n番目ビットノードから,各m番目チェックノードに渡すLLR値βmnの更新を以下のように表す。
(a)|β(l−1)n|<θLLRの場合。
Figure 2008219528
On the other hand, the update of the LLR value αmn to be passed to each bit node for which the a posteriori LLR value of the bit node is | β (l−1) n | ≧ θLLR, that is, the row processing operation is not performed.
(3) Bit node update: The update of the LLR value βmn passed from the nth bit node to each mth check node is expressed as follows.
(A) | β ( 1-1 ) n | <θLLR.

Figure 2008219528
|β(l−1)n|<θLLRのビットの事後LLRを次式で更新する。
Figure 2008219528
Update the a posteriori LLR of the bit of | β (l−1) n | <θLLR by the following equation.

Figure 2008219528
(b)|β(l−1)n|≧θLLRの場合。l−1回目のビットノードの事後LLR値β(l−1)nをl回目のビットノードの事後LLR値β(l)nとする。
Figure 2008219528
(B) | β ( 1-1 ) n | ≧ θLLR. The posterior LLR value β (l−1) n of the (l−1) th bit node is set as the posterior LLR value β (l) n of the lth bit node.

Figure 2008219528
(4)硬判定とパリティチェック
従来SPAと同様。
Figure 2008219528
(4) Hard decision and parity check Same as conventional SPA.

つぎに、図1に戻って、本実施例を実現する具体的な構成を説明する。まず、初期尤度演算手段10は、受信信号を受信して、初期尤度β(0)mn=λn=(2/σ2)rnynを演算し、各ビットノードの初期尤度として設定する。つぎに、更新処理削減ビットノード選択手段11は、LLR閾値θLLRとビットノードのLLRβnを比較して、|β(l−1)n|≧θLLRとなるビットノードについては更新のための演算を行わず前回の事後LLRをそのまま使う(式12)。|β(l−1)n|<θLLRとなるビットノードについては更新するため、接続されているチェックノードから当該ビットノードに渡す行処理演算を行う。未更新ビットノード情報記憶手段12は、更新しないビットノードの事後LLR値を次回にそのまま使うので、未更新ビットノード情報として記憶する。行処理演算手段13は、更新するビットノードに接続されているチェックノードから当該ビットノードに渡す行処理演算をして更新する(式9)。列処理演算及びビットノード更新手段14は、更新するビットノードについて列処理演算して更新する。硬判定手段15は、各ビットノードの事後LLR値に基づいて硬判定して一時推定値を求める(式6)。パリティ判定手段16は、硬判定の結果の一時推定値と検査行列Hとから一時推定値のパリティを計算して、パリティが0か1かを判定する。パリティが0であれば、一時推定値を復号語として出力して動作を終了する。パリティが1の場合、復号繰返数カウント手段17は、繰返数lをカウントして、復号処理切替手段18は、l−1を所定の閾値θiterと比較して、l−1<θiterの場合には、更新するビットノードと更新しないビットノードとを選択し、l−1≧θiterの場合にはすべてのビットノードを更新するように信号処理を切り替える。 Next, returning to FIG. 1, a specific configuration for realizing the present embodiment will be described. First, the initial likelihood calculating means 10 receives the received signal, calculates the initial likelihood β (0) mn = λn = (2 / σ 2 ) rnyn, and sets it as the initial likelihood of each bit node. Next, the update processing reduction bit node selection unit 11 compares the LLR threshold θLLR with the bit node LLRβn, and performs an operation for updating for a bit node satisfying | β (l−1) n | ≧ θLLR. First, the previous posterior LLR is used as it is (Formula 12). In order to update a bit node satisfying | β (l−1) n | <θLLR, a row processing operation is performed from the connected check node to the bit node. The unupdated bit node information storage means 12 stores the a posteriori LLR value of the bit node that is not updated as it is, and stores it as unupdated bit node information. The row processing calculation means 13 updates the row processing calculation passed from the check node connected to the bit node to be updated to the bit node (Equation 9). The column processing calculation and bit node update means 14 updates the bit node to be updated by column processing calculation. The hard decision means 15 makes a hard decision based on the posterior LLR value of each bit node to obtain a temporary estimated value (Formula 6). The parity determination means 16 calculates the parity of the temporary estimated value from the temporary estimated value of the hard decision result and the check matrix H, and determines whether the parity is 0 or 1. If the parity is 0, the temporary estimated value is output as a decoded word and the operation is terminated. When the parity is 1, the decoding repetition number counting unit 17 counts the number of repetitions l, and the decoding process switching unit 18 compares l−1 with a predetermined threshold θiter, and l−1 <θiter. In this case, the bit node to be updated and the bit node not to be updated are selected, and when l−1 ≧ θiter, the signal processing is switched so as to update all the bit nodes.

図3は、本発明と従来例の誤り率を比較する図である。図3は、符号化率R=1/2、(3,6)レギュラーLDPCなどの各種LDPC符号について、本発明SPAと従来SPAのAWGN(Additive White Gaussian Noise)通信路、BPSK(Bi-Phase Shift Keying)変調におけるEb/No(信号雑音比)に対するBER(Bit Error Rate)特性を示す。本発明においてBERがほとんど劣化していないことが分かる。   FIG. 3 is a diagram comparing the error rates of the present invention and the conventional example. FIG. 3 shows an AWGN (Additive White Gaussian Noise) communication path, BPSK (Bi-Phase Shift) of the present invention SPA and a conventional SPA for various LDPC codes such as a coding rate R = 1/2 and (3,6) regular LDPC. BER (Bit Error Rate) characteristics with respect to Eb / No (signal-to-noise ratio) in keying modulation. It can be seen that the BER is hardly deteriorated in the present invention.

図4は、本発明と従来例のブロック誤り率を比較する図である。図4は、各種LDPC符号について、本発明SPAと従来SPAのAWGN通信路、BPSK変調におけるEb/Noに対するBLER(BLock Error Rate)特性を示す。本発明においてBLERがほとんど劣化していないことが分かる。   FIG. 4 is a diagram comparing the block error rates of the present invention and the conventional example. FIG. 4 shows BLER (BLock Error Rate) characteristics for Eb / No in AWGN communication channels and BPSK modulation of the present invention SPA and the conventional SPA for various LDPC codes. It can be seen that BLER is hardly deteriorated in the present invention.

図5は、本発明と従来例の演算量を比較する図である。図5は、各種LDPC符号について、本発明SPAと従来SPAのEb/Noに対する演算量を示す。本発明の演算量は従来に比べて、約80〜10%と少なくなっていることが分かる。環境が良ければ演算量は従来に比べて約1/10に減らすことができる。   FIG. 5 is a diagram for comparing the amount of calculation between the present invention and the conventional example. FIG. 5 shows calculation amounts for Eb / No of the present invention SPA and the conventional SPA for various LDPC codes. It can be seen that the calculation amount of the present invention is reduced to about 80 to 10% as compared with the prior art. If the environment is good, the amount of calculation can be reduced to about 1/10 compared with the conventional case.

なお、本発明は上記実施例に限定されるものではない。   In addition, this invention is not limited to the said Example.

δ−min復号アルゴリズムを用いなくても、本発明は十分に演算量を少なくする効果を奏する。   Even without using the δ-min decoding algorithm, the present invention has the effect of sufficiently reducing the amount of calculation.

LLRは、チェックノード又はビットノードの信頼度を表すパラメータであれば良く、LLRに限られない。   The LLR may be a parameter indicating the reliability of the check node or the bit node, and is not limited to the LLR.

また、本発明のLDPC符号検出装置は、コンピュータを本LDPC符号検出装置として機能させるためのプログラムでも実現される。このプログラムは、コンピュータで読み取り可能な記録媒体に格納されていてもよい。   The LDPC code detection apparatus of the present invention is also realized by a program for causing a computer to function as the LDPC code detection apparatus. This program may be stored in a computer-readable recording medium.

このプログラムを記録した記録媒体は、図1に示されるLDPC符号検出装置のROMそのものであってもよいし、また、外部記憶装置としてCD−ROMドライブ等のプログラム読取装置が設けられ、そこに記録媒体を挿入することで読み取り可能なCD−ROM等であってもよい。   The recording medium on which this program is recorded may be the ROM itself of the LDPC code detection device shown in FIG. 1, or a program reading device such as a CD-ROM drive is provided as an external storage device, and recorded there. It may be a CD-ROM or the like that can be read by inserting a medium.

また、上記記録媒体は、磁気テープ、カセットテープ、フレキシブルディスク、ハードディスク、MO/MD/DVD等、又は半導体メモリであってもよい。   The recording medium may be a magnetic tape, a cassette tape, a flexible disk, a hard disk, an MO / MD / DVD, or a semiconductor memory.

本発明の一実施例によるLDPC符号検出装置の構成を示す図である。It is a figure which shows the structure of the LDPC code detection apparatus by one Example of this invention. LDPC符号を説明する図である。It is a figure explaining an LDPC code. 本発明と従来例の誤り率を比較する図である。It is a figure which compares the error rate of this invention and a prior art example. 本発明と従来例のブロック誤り率を比較する図である。It is a figure which compares the block error rate of this invention and a prior art example. 本発明と従来例の演算量を比較する図である。It is a figure which compares the computational complexity of this invention and a prior art example.

符号の説明Explanation of symbols

10 初期尤度演算手段
11 更新処理削減ビットノード選択手段
12 未更新ビットノード情報記憶手段
13 行処理演算手段
14 列処理演算及びビットノード更新手段
15 硬判定手段
16 パリティ判定手段
17 復号繰返数カウント手段
18 復号処理切替手段
DESCRIPTION OF SYMBOLS 10 Initial likelihood calculation means 11 Update process reduction bit node selection means 12 Unupdated bit node information storage means 13 Row processing calculation means 14 Column processing calculation and bit node update means 15 Hard decision means 16 Parity decision means 17 Decoding repeat count count Means 18 Decoding process switching means

Claims (3)

(1).低密度パリティ検査(以下「LDPC」という。)符号のパリティ検査行列のタナーグラフに対応して設定された複数のチェックノードから当該チェックノードに接続されている複数のビットノードに向け信頼度αを伝搬し、
(2).該複数のビットノードから該複数のチェックノードに向け信頼度βを伝搬する、
(1)、(2)を繰り返す、その過程において信頼度βから算出される事後値の硬判定値をパリティ検査行列でパリティ検査することにより収束判定し送信符号の推定値を決定するサムプロダクト・アルゴリズムを用いて、受信値からの符号検出を行うLDPC符号検出装置において、
ビットノードの信頼度βが所定の閾値θより小さいビットノードを選択するビットノード選択手段と、
該ビットノード選択手段が選択した前記ビットノードに接続されている各前記チェックノードについて、当該チェックノードに接続されている前記ビットノードから当該チェックノードに向け伝搬される前記信頼度βに基づき、当該チェックノードから前記ビットノード選択手段が選択した前記ビットノードに向け伝搬する信頼度αを算出し、伝搬する行処理演算手段と、
前記ビットノード選択手段が選択した前記各ビットノードについて、当該ビットノードに接続されている前記各チェックノードから伝搬される信頼度αに基づき、当該ビットノードから前記各チェックノードに向け伝搬する信頼度βを算出して更新し、前記ビットノード選択手段が選択しなかった前記各ビットノードについて、繰返しの前回の事後値を次回の事後値とする列処理演算及びビットノード更新手段と、
を備えることを特徴とするLDPC符号検出装置。
(1). From a plurality of check nodes set corresponding to a Tanner graph of a parity check matrix of a low density parity check (hereinafter referred to as “LDPC”) code to a plurality of bit nodes connected to the check node Propagate reliability α,
(2) Propagating reliability β from the plurality of bit nodes to the plurality of check nodes,
A sum product that repeats (1) and (2), and determines the estimated value of the transmitted code by determining the convergence by performing a parity check on the hard decision value of the posterior value calculated from the reliability β in the process using the parity check matrix. In an LDPC code detection device that performs code detection from a received value using an algorithm,
A bit node selection means for selecting a bit node whose bit node reliability β is smaller than a predetermined threshold θ;
For each check node connected to the bit node selected by the bit node selection means, based on the reliability β propagated from the bit node connected to the check node toward the check node, Calculating a reliability α to be propagated from the check node toward the bit node selected by the bit node selection means, and a row processing calculation means to propagate;
For each bit node selected by the bit node selection means, the reliability propagated from the bit node toward each check node based on the reliability α propagated from each check node connected to the bit node calculating and updating β, and for each bit node not selected by the bit node selection means, a column processing operation and a bit node update means with the previous posterior value of the repetition as the next posterior value;
An LDPC code detection apparatus comprising:
前記繰返しの数をカウントする復号繰返数カウント手段をさらに備え、該復号繰返数が所定値を超えてもなお収束しない場合には、前記ビットノード選択手段はすべてのビットノードを選択することを特徴とするLDPC符号検出装置。   Decoding repetition number counting means for counting the number of repetitions is further provided, and when the decoding repetition number exceeds a predetermined value, the bit node selection means selects all bit nodes. LDPC code detection apparatus characterized by the above. コンピュータを、請求項1又は2記載のLDPC符号検出装置として機能させるためのプログラム。
A program for causing a computer to function as the LDPC code detection device according to claim 1.
JP2007054939A 2007-03-05 2007-03-05 Device and program for detecting ldpc code Pending JP2008219528A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007054939A JP2008219528A (en) 2007-03-05 2007-03-05 Device and program for detecting ldpc code

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007054939A JP2008219528A (en) 2007-03-05 2007-03-05 Device and program for detecting ldpc code

Publications (1)

Publication Number Publication Date
JP2008219528A true JP2008219528A (en) 2008-09-18

Family

ID=39839024

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007054939A Pending JP2008219528A (en) 2007-03-05 2007-03-05 Device and program for detecting ldpc code

Country Status (1)

Country Link
JP (1) JP2008219528A (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009038662A (en) * 2007-08-02 2009-02-19 Sumitomo Electric Ind Ltd Decoder, receiver, and method for decoding encoded data
JP2010158015A (en) * 2008-12-30 2010-07-15 Intel Corp Broadcast receiver and method for optimizing scale factor for log-likelihood mapper
JP2010200126A (en) * 2009-02-26 2010-09-09 Fujitsu Ltd Decoding apparatus
JP4545217B1 (en) * 2009-04-03 2010-09-15 三菱電機株式会社 Decoding device and decoding method
CN102611459A (en) * 2011-01-19 2012-07-25 Jvc建伍株式会社 Decoding device and decoding method
JP2013098793A (en) * 2011-11-01 2013-05-20 Toshiba Corp Semiconductor memory device and decoding method
JP2013207358A (en) * 2012-03-27 2013-10-07 Jvc Kenwood Corp Decoding device, decoding method, and program
US10069515B2 (en) 2015-02-02 2018-09-04 Kabushiki Kaisha Toshiba Decoding device and decoding method
JP7506795B1 (en) 2023-05-02 2024-06-26 Nttイノベーティブデバイス株式会社 Error correction method, error correction circuit, and communication system

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009038662A (en) * 2007-08-02 2009-02-19 Sumitomo Electric Ind Ltd Decoder, receiver, and method for decoding encoded data
JP2010158015A (en) * 2008-12-30 2010-07-15 Intel Corp Broadcast receiver and method for optimizing scale factor for log-likelihood mapper
JP2010200126A (en) * 2009-02-26 2010-09-09 Fujitsu Ltd Decoding apparatus
JP4545217B1 (en) * 2009-04-03 2010-09-15 三菱電機株式会社 Decoding device and decoding method
CN101860370A (en) * 2009-04-03 2010-10-13 三菱电机株式会社 Decoding device and coding/decoding method
JP2010245736A (en) * 2009-04-03 2010-10-28 Mitsubishi Electric Corp Decoding apparatus and decoding method
CN102611459A (en) * 2011-01-19 2012-07-25 Jvc建伍株式会社 Decoding device and decoding method
EP2479897A2 (en) 2011-01-19 2012-07-25 JVC Kenwood Corporation Decoding device and decoding method
JP2012151676A (en) * 2011-01-19 2012-08-09 Jvc Kenwood Corp Decoding apparatus and decoding method
EP2479897A3 (en) * 2011-01-19 2012-09-26 JVC Kenwood Corporation Decoding device and decoding method
JP2013098793A (en) * 2011-11-01 2013-05-20 Toshiba Corp Semiconductor memory device and decoding method
JP2013207358A (en) * 2012-03-27 2013-10-07 Jvc Kenwood Corp Decoding device, decoding method, and program
US10069515B2 (en) 2015-02-02 2018-09-04 Kabushiki Kaisha Toshiba Decoding device and decoding method
JP7506795B1 (en) 2023-05-02 2024-06-26 Nttイノベーティブデバイス株式会社 Error correction method, error correction circuit, and communication system

Similar Documents

Publication Publication Date Title
JP2008219528A (en) Device and program for detecting ldpc code
US10707900B2 (en) Refresh, run, aggregate decoder recovery
WO2015139160A1 (en) Hard decision decoding method for ldpc code of dynamic threshold bit-flipping
US7137060B2 (en) Forward error correction apparatus and method in a high-speed data transmission system
US8291279B2 (en) Memory-efficient LDPC decoder and method
KR100804793B1 (en) Method for updating Check Node in Low Density Parity Check Decoder
US8504895B2 (en) Using damping factors to overcome LDPC trapping sets
US20090319860A1 (en) Overcoming ldpc trapping sets by decoder reset
US20040153959A1 (en) LDPC decoding apparatus and method
JP5705106B2 (en) Method for performing soft decision decoding of Euclidean space Reed-Muller code
JP2009100222A (en) Device and method for decoding low density parity check code
US8719672B2 (en) Method of setting number of iteration counts of iterative decoding, and apparatus and method of iterative decoding
US9130589B2 (en) Low density parity check decoder with dynamic scaling
JP2014099944A (en) Methods and apparatus for low-density parity check decoding using hardware sharing and serial sum-product architecture
US9564921B1 (en) Method and system for forward error correction decoding based on a revised error channel estimate
JP2008199623A (en) Message-passing and forced convergence decoding method
Hu et al. Error floor estimation of long LDPC codes on magnetic recording channels
JP4551740B2 (en) Low density parity check code decoder and method
CN113055028A (en) LDPC decoding method, decoder, decoding device and storage medium
US8719686B2 (en) Probability-based multi-level LDPC decoder
US8868999B1 (en) Systems and methods for erasure correction of iterative codes
KR20090064268A (en) Apparatus and method for decoding using variable error-correcting value
US7984367B1 (en) Method for iterative decoding in the presence of burst errors
US10778248B1 (en) Low-density parity-check decoding with de-saturation
US9859925B2 (en) Low-complexity flash memory data-encoding techniques using simplified belief propagation