[go: up one dir, main page]

JP5772622B2 - Decoding device and decoding method - Google Patents

Decoding device and decoding method Download PDF

Info

Publication number
JP5772622B2
JP5772622B2 JP2012009986A JP2012009986A JP5772622B2 JP 5772622 B2 JP5772622 B2 JP 5772622B2 JP 2012009986 A JP2012009986 A JP 2012009986A JP 2012009986 A JP2012009986 A JP 2012009986A JP 5772622 B2 JP5772622 B2 JP 5772622B2
Authority
JP
Japan
Prior art keywords
decoding
unit
processing unit
decoding process
executing
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
JP2012009986A
Other languages
Japanese (ja)
Other versions
JP2013150194A (en
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.)
JVCKenwood Corp
Original Assignee
JVCKenwood 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 JVCKenwood Corp filed Critical JVCKenwood Corp
Priority to JP2012009986A priority Critical patent/JP5772622B2/en
Publication of JP2013150194A publication Critical patent/JP2013150194A/en
Application granted granted Critical
Publication of JP5772622B2 publication Critical patent/JP5772622B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Description

本発明は、復号技術に関し、特にLDPCによる符号化がなされたデータを復号する復号装置および復号方法に関する。   The present invention relates to a decoding technique, and more particularly, to a decoding device and a decoding method for decoding data encoded by LDPC.

近年、低S/Nの伝送路でも強力な誤り訂正能力をもつ誤り訂正符号として、LDPC(Low Density Parity Check Code)が注目され、多くの分野で適用されている。LDPCでは、送信側において、疎な検査行列をもとに生成される符号化行列によって、データが符号化される。ここで、疎な検査行列とは、要素が1または0からなる行列であって、1の数が少ない行列である。一方、受信側において、検査行列をもとにして、データの復号とパリティ検査とがなされる。特に、BP(Belief Propagation)法等による繰り返し復号によって復号性能が向上する。   In recent years, LDPC (Low Density Parity Check Code) has attracted attention as an error correction code having strong error correction capability even in a low S / N transmission path, and is applied in many fields. In LDPC, data is encoded by an encoding matrix generated on the transmission side based on a sparse check matrix. Here, a sparse check matrix is a matrix having 1 or 0 elements and a small number of 1s. On the other hand, on the receiving side, data decoding and parity check are performed based on the check matrix. In particular, decoding performance is improved by iterative decoding using the BP (Belief Propagation) method or the like.

この復号では、検査行列の行方向に復号するチェックノード処理と、列方向に復号する変数ノード処理とを繰り返し実行する。チェックノード処理のひとつとして、Gallager関数や双曲線関数を用いるsum−product復号が知られている。sum−product復号では、伝送路ノイズの分散値から求まる通信路値を事前値として使用する。sum−product復号を簡略化した復号方法が、min−sum復号である。そのため、min−sum復号は、処理の簡略化、高速化のために使用される。一方、繰り返し復号による収束性を早めるためには、シャッフル復号の使用が望ましい。シャッフル復号は、チェックノード処理を実行した列を対象として直ちに変数ノード処理を実行することによって、事前値比の更新を逐次実行する。   In this decoding, a check node process for decoding in the row direction of the check matrix and a variable node process for decoding in the column direction are repeatedly executed. As one of the check node processes, sum-product decoding using a Gallager function or a hyperbolic function is known. In sum-product decoding, a channel value obtained from a variance value of transmission channel noise is used as a prior value. A decoding method that simplifies sum-product decoding is min-sum decoding. Therefore, min-sum decoding is used for simplifying and speeding up the processing. On the other hand, it is desirable to use shuffle decoding in order to accelerate convergence by iterative decoding. In the shuffle decoding, the priori value ratio is sequentially updated by immediately executing the variable node process on the column on which the check node process has been executed.

またLDPC復号を応用した例として、パリティ制約を表す部分行列を含み、LDPC復号に用いられる検査行列と部分行列とを使用して、パリティ制約を満たすようにデータを復号する第1の復号部と、検査行列を使用して、復号されたデータをLDPC復号する第2の復号部を併用する技術も提案されている(例えば、特許文献1参照)。   In addition, as an example of applying LDPC decoding, a first decoding unit that includes a partial matrix representing a parity constraint and uses a check matrix and a partial matrix used for LDPC decoding to decode data so as to satisfy the parity constraint; There has also been proposed a technique that uses a second decoding unit that performs LDPC decoding of decoded data using a check matrix (see, for example, Patent Document 1).

特開2009−271956号公報JP 2009-271156 A

先行技術のように、ビタビ復号とLDPC復号のふたつの復号方式を併用した場合、性能改善を望めるが、ビタビ復号を実行するための演算量が必要になるので、演算量削減は望めない。一方、シャッフル復号によれば、各行の各ビットのチェックノード処理の後、逐次的に変数ノード処理を実行するので、収束を高速にできるが、演算量が増大する。また、min−sum復号やsum−product復号において、すべての行のチェックノード処理が完了してから、変数ノード処理を実行する場合、収束は遅いが演算量が少ないという特徴がある。このような状況下、LDPC復号の演算量の増加を抑制しながら高速化することが望まれる。   When the two decoding methods of Viterbi decoding and LDPC decoding are used in combination as in the prior art, performance improvement can be expected, but the amount of calculation for executing Viterbi decoding is required, so the amount of calculation cannot be reduced. On the other hand, according to shuffle decoding, since variable node processing is sequentially executed after check node processing of each bit of each row, convergence can be made faster, but the amount of computation increases. Further, in the min-sum decoding and the sum-product decoding, when the variable node processing is executed after the check node processing of all the rows is completed, there is a feature that the convergence is slow but the calculation amount is small. Under such circumstances, it is desired to increase the speed while suppressing an increase in the amount of computation of LDPC decoding.

本発明はこうした状況に鑑みてなされたものであり、その目的は、LDPC復号の演算量の増加を抑制しながら収束速度を高速化する技術を提供することにある。   The present invention has been made in view of such circumstances, and an object thereof is to provide a technique for increasing the convergence speed while suppressing an increase in the amount of calculation of LDPC decoding.

上記課題を解決するために、本発明のある態様の復号装置は、LDPC符号化がなされたデータを入力する入力部と、入力部において入力したデータに対する第1の復号処理を実行する第1復号処理部と、入力部において入力したデータに対する第2の復号処理であって、かつ第1の復号処理とは異なった第2の復号処理を実行する第2復号処理部と、第1復号処理部と第2復号処理部とを制御する制御部とを備える。第1復号処理部において実行される第1の復号処理と、第2復号処理部において実行される第2の復号処理とは、いずれも繰り返し実行可能な復号処理であり、制御部は、第1復号処理部あるいは第2復号処理部から、繰り返し単位における復号結果を受けつける受付部と、受付部において受けつけた復号結果の信頼度合いを導出する導出部と、導出部において導出した信頼度合いをもとに、次の繰り返し単位における復号処理を実行させるべき第1復号処理部あるいは第2復号処理部を選択する選択部と、を備える。第2復号処理部において実行される第2の復号処理では、第1復号処理部において実行される第1の復号処理よりも、演算量が少なく、かつ収束速度が遅い。 In order to solve the above problems, a decoding apparatus according to an aspect of the present invention includes an input unit that inputs data that has been subjected to LDPC encoding, and a first decoding that performs a first decoding process on the data input in the input unit A second decoding processing unit that executes a second decoding process different from the first decoding process, and a first decoding processing unit, the second decoding process for the data input in the input unit; And a control unit that controls the second decoding processing unit. The first decoding process executed in the first decoding processing unit and the second decoding process executed in the second decoding processing unit are both decoding processes that can be repeatedly executed. Based on the receiving unit that receives the decoding result in the repetition unit from the decoding processing unit or the second decoding processing unit, the deriving unit that derives the reliability of the decoding result received in the receiving unit, and the reliability derived in the deriving unit A selection unit that selects a first decoding processing unit or a second decoding processing unit that is to execute the decoding process in the next repetition unit. In the second decoding process executed in the second decoding processing unit, the calculation amount is smaller and the convergence speed is slower than in the first decoding process executed in the first decoding processing unit.

この態様によると、繰り返し単位における復号結果の信頼度合いをもとに、次の繰り返し単位において第1の復号処理あるいは第2の復号処理を選択するので、復号の状況に応じた復号処理を使用できる。   According to this aspect, since the first decoding process or the second decoding process is selected in the next repetition unit based on the reliability of the decoding result in the repetition unit, the decoding process according to the decoding situation can be used. .

この場合、演算量の少ない第2の復号処理と、収束速度の速い第1の復号処理とを組み合わせるので、演算量の増加を抑制しながら収束速度を高速化できる。 In this case , since the second decoding process with a small amount of computation and the first decoding process with a high convergence speed are combined, the convergence speed can be increased while suppressing an increase in the amount of computation.

本発明の別の態様もまた、復号装置である。この装置は、LDPC符号化がなされたデータを入力する入力部と、入力部において入力したデータに対する第1の復号処理を実行する第1復号処理部と、入力部において入力したデータに対する第2の復号処理であって、かつ第1の復号処理とは異なった第2の復号処理を実行する第2復号処理部と、第1復号処理部と第2復号処理部とを制御する制御部とを備える。第1復号処理部において実行される第1の復号処理と、第2復号処理部において実行される第2の復号処理とは、いずれも繰り返し実行可能な復号処理であり、制御部は、第1復号処理部あるいは第2復号処理部から、繰り返し単位における復号結果を受けつける受付部と、受付部において受けつけた復号結果の信頼度合いを導出する導出部と、導出部において導出した信頼度合いをもとに、次の繰り返し単位における復号処理を実行させるべき第1復号処理部あるいは第2復号処理部を選択する選択部と、を備える。第1復号処理部において実行される第1の復号処理は、行方向処理と列方向処理をビットごとに交互に実行し、第2復号処理部において実行される第2の復号処理は、行方向処理をまとめて実行してから、列方向処理をまとめて実行してもよい。この場合、行方向処理と列方向処理をビットごとに交互に実行する処理と、行方向処理をまとめて実行してから、列方向処理をまとめて実行する処理とを組み合わせるので、演算量の増加を抑制しながら収束速度を高速化できる。 Another aspect of the present invention is also a decoding device. The apparatus includes: an input unit that inputs data that has been subjected to LDPC encoding; a first decoding processing unit that executes a first decoding process on data input at the input unit; and a second decoding unit that receives data input at the input unit A second decoding processing unit that performs a second decoding process different from the first decoding process, and a control unit that controls the first decoding processing unit and the second decoding processing unit. Prepare. The first decoding process executed in the first decoding processing unit and the second decoding process executed in the second decoding processing unit are both decoding processes that can be repeatedly executed. Based on the receiving unit that receives the decoding result in the repetition unit from the decoding processing unit or the second decoding processing unit, the deriving unit that derives the reliability of the decoding result received in the receiving unit, and the reliability derived in the deriving unit A selection unit that selects a first decoding processing unit or a second decoding processing unit that is to execute the decoding process in the next repetition unit. The first decoding processing executed in the first decoding processing unit alternately executes row direction processing and column direction processing for each bit, and the second decoding processing executed in the second decoding processing unit is executed in the row direction. The column direction processing may be collectively executed after the processing is collectively executed. In this case, the processing amount is increased because the processing in which the row direction processing and the column direction processing are alternately executed for each bit and the processing in which the row direction processing is executed collectively and then the column direction processing are executed collectively are combined. Convergence speed can be increased while suppressing.

選択部は、信頼度合いが別のしきい値よりも高い場合に前記第2復号処理部を選択し、その他の場合に前記第1復号処理部を選択してもよい。この場合、信頼度合いがしきい値よりも高い場合に演算量を低減し、その他の場合に収束速度を高速にできる。 The selection unit may select the second decoding processing unit when the reliability degree is higher than another threshold value, and may select the first decoding processing unit in other cases. In this case, the amount of calculation can be reduced when the degree of reliability is higher than the threshold value, and the convergence speed can be increased in other cases.

選択部は、第2復号処理部を選択した場合、残りの繰り返し単位における復号処理は第2復号処理部を継続的に選択してもよい。この場合、第2復号処理部を選択しつづけるので、演算量の増加を抑制できる。   When the selection unit selects the second decoding processing unit, the decoding processing in the remaining repetition units may continuously select the second decoding processing unit. In this case, since the second decoding processing unit is continuously selected, an increase in the calculation amount can be suppressed.

導出部は、復号結果の信頼度合いとして、しきい値以下の対数事後確率比を有したビットの繰り返し単位におけるカウント値を使用してもよい。この場合、対数事後確率比を使用するので、新たな導出を不要にできる。 The derivation unit may use a count value in a bit repetition unit having a log posterior probability ratio equal to or less than a threshold value as the reliability of the decoding result. In this case, since a log posterior probability ratio is used, new derivation can be made unnecessary.

本発明のさらに別の態様は、復号方法である。この方法は、LDPC符号化がなされたデータを入力するステップと、入力したデータに対する第1の復号処理を実行するステップと、入力したデータに対する第2の復号処理であって、かつ第1の復号処理とは異なった第2の復号処理を実行するステップと、第1の復号処理を実行するステップと第2の復号処理を実行するステップとを制御するステップとを備える。第1の復号処理と第2の復号処理とは、いずれも繰り返し実行可能な復号処理であり、制御するステップは、第1の復号処理を実行するステップあるいは第2の復号処理を実行するステップから、繰り返し単位における復号結果を受けつけるステップと、受けつけた復号結果の信頼度合いを導出するステップと、導出した信頼度合いをもとに、次の繰り返し単位における復号処理を実行させるべき第1の復号処理を実行するステップあるいは第2の復号処理を実行するステップを選択するステップと、を備える。第2の復号処理では、第1の復号処理よりも、演算量が少なく、かつ収束速度が遅い。
本発明のさらに別の態様もまた、復号方法である。この方法は、LDPC符号化がなされたデータを入力するステップと、入力したデータに対する第1の復号処理を実行するステップと、入力したデータに対する第2の復号処理であって、かつ第1の復号処理とは異なった第2の復号処理を実行するステップと、第1の復号処理を実行するステップと第2の復号処理を実行するステップとを制御するステップとを備える。第1の復号処理と第2の復号処理とは、いずれも繰り返し実行可能な復号処理であり、制御するステップは、第1の復号処理を実行するステップあるいは第2の復号処理を実行するステップから、繰り返し単位における復号結果を受けつけるステップと、受けつけた復号結果の信頼度合いを導出するステップと、導出した信頼度合いをもとに、次の繰り返し単位における復号処理を実行させるべき第1の復号処理を実行するステップあるいは第2の復号処理を実行するステップを選択するステップと、を備える。第1の復号処理は、行方向処理と列方向処理をビットごとに交互に実行し、第2の復号処理は、行方向処理をまとめて実行してから、列方向処理をまとめて実行する。
Yet another embodiment of the present invention is a decoding method. This method includes a step of inputting data subjected to LDPC encoding, a step of executing a first decoding process on the input data, a second decoding process on the input data, and the first decoding A step of executing a second decoding process different from the process; a step of controlling the step of executing the first decoding process; and the step of executing the second decoding process. The first decoding process and the second decoding process are both decoding processes that can be repeatedly executed, and the controlling step is performed from the step of executing the first decoding process or the step of executing the second decoding process. A step of receiving a decoding result in the repetition unit, a step of deriving a reliability degree of the received decoding result, and a first decoding process to be executed in the next repetition unit based on the derived reliability degree Selecting a step of executing or a step of executing the second decoding process. In the second decoding process, the amount of calculation is smaller and the convergence speed is slower than in the first decoding process.
Yet another embodiment of the present invention is also a decoding method. This method includes a step of inputting data subjected to LDPC encoding, a step of executing a first decoding process on the input data, a second decoding process on the input data, and the first decoding A step of executing a second decoding process different from the process; a step of controlling the step of executing the first decoding process; and the step of executing the second decoding process. The first decoding process and the second decoding process are both decoding processes that can be repeatedly executed, and the controlling step is performed from the step of executing the first decoding process or the step of executing the second decoding process. A step of receiving a decoding result in the repetition unit, a step of deriving a reliability degree of the received decoding result, and a first decoding process to be executed in the next repetition unit based on the derived reliability degree Selecting a step of executing or a step of executing the second decoding process. In the first decoding process, the row direction process and the column direction process are alternately executed for each bit, and in the second decoding process, the row direction process is executed collectively, and then the column direction process is executed collectively.

なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。   It should be noted that any combination of the above-described constituent elements and a conversion of the expression of the present invention between a method, an apparatus, a system, a recording medium, a computer program, etc. are also effective as an aspect of the present invention.

本発明によれば、LDPC復号の演算量の増加を抑制しながら収束速度を高速化できる。   According to the present invention, it is possible to increase the convergence speed while suppressing an increase in the amount of computation of LDPC decoding.

本発明の実施例に係る通信システムの構成を示す図である。It is a figure which shows the structure of the communication system which concerns on the Example of this invention. 図1のLDPC符号化部において使用される検査行列を示す図である。It is a figure which shows the test matrix used in the LDPC encoding part of FIG. 図1の復号部の構成を示す図である。It is a figure which shows the structure of the decoding part of FIG. 図3の復号部の動作を模式的に表したタナーグラフを示す図である。It is a figure which shows the Tanner graph which represented typically the operation | movement of the decoding part of FIG. 図3の復号部における外部値比の更新の概要を示す図である。It is a figure which shows the outline | summary of the update of the external value ratio in the decoding part of FIG. 図3の復号部における事前値比の更新の概要を示す図である。It is a figure which shows the outline | summary of the update of the prior value ratio in the decoding part of FIG. 図7(a)−(b)は、図3の復号部の動作概要を示す図である。FIGS. 7A to 7B are diagrams showing an outline of the operation of the decoding unit in FIG. 図3の復号部による復号手順を示すフローチャートである。It is a flowchart which shows the decoding procedure by the decoding part of FIG. 図3の復号部による別の復号手順を示すフローチャートである。It is a flowchart which shows another decoding procedure by the decoding part of FIG.

本発明を具体的に説明する前に、まず概要を述べる。本発明の実施例は、LDPC符号化を実行する送信装置と、送信装置において符号化されたデータ(以下、「符号化データ」という)に対して検査行列をもとに繰り返し復号を実行する受信装置とを含む通信システムに関する。前述のごとく、受信装置において、LDPC復号の演算量の増加を抑制しながら収束速度を高速化することが望まれる。これに対応するために、本実施例に係る通信システム、特に受信装置は、次のように構成される。   Before describing the present invention specifically, an outline will be given first. Embodiments of the present invention include a transmission apparatus that performs LDPC encoding, and reception that repeatedly performs decoding on data encoded in the transmission apparatus (hereinafter referred to as “encoded data”) based on a check matrix. The present invention relates to a communication system including an apparatus. As described above, in the receiving apparatus, it is desired to increase the convergence speed while suppressing an increase in the amount of computation of LDPC decoding. In order to cope with this, the communication system according to the present embodiment, particularly the receiving apparatus, is configured as follows.

受信装置は、LDPC復号として、2種類の復号を実行可能である。ひとつ目は、シャッフル復号であり、行方向のチェックノード処理を1ビット実行した後、列方向の変数ノード処理を逐次実行する(以下、「第1復号」という)。ふたつ目は、行方向のチェックノード処理をまとめてから、列方向の変数ノード処理をまとめて実行する(以下、「第2復号」という)。なお、第1復号と第2復号とのいずれにおいても、チェックノード処理には、min−sumアルゴリズムが使用される。受信装置は、第1復号あるいは第2復号における繰り返し単位の復号結果を取得すると、復号結果に対する信頼度を導出する。受信装置は、信頼度が低ければ、次の繰り返し単位に対して第1復号を実行する。一方、受信装置は、信頼度が高ければ、次の繰り返し単位に対して第2復号を実行する。受信装置は、このような処理を繰り返す。つまり、信頼度が低ければ、第1復号によって収束速度が高速化され、信頼度が高ければ、第2復号によって演算量の増加が抑制される。   The receiving apparatus can perform two types of decoding as LDPC decoding. The first is shuffle decoding, in which one row of check node processing in the row direction is executed, and then variable node processing in the column direction is sequentially executed (hereinafter referred to as “first decoding”). Second, the check node processing in the row direction is collected and then the variable node processing in the column direction is executed collectively (hereinafter referred to as “second decoding”). In both the first decoding and the second decoding, the min-sum algorithm is used for the check node process. When the reception apparatus acquires the decoding result of the repetition unit in the first decoding or the second decoding, the receiving apparatus derives the reliability for the decoding result. If the reliability is low, the receiving apparatus performs the first decoding on the next repetition unit. On the other hand, if the reliability is high, the receiving apparatus performs the second decoding on the next repetition unit. The receiving apparatus repeats such processing. That is, if the reliability is low, the convergence speed is increased by the first decoding, and if the reliability is high, an increase in the amount of calculation is suppressed by the second decoding.

図1は、本発明の実施例に係る通信システム100の構成を示す。通信システム100は、送信装置10、受信装置12を含む。送信装置10は、情報データ生成部20、LDPC符号化部22、変調部24を含む。受信装置12は、復調部26、復号部28、情報データ出力部30を含む。   FIG. 1 shows a configuration of a communication system 100 according to an embodiment of the present invention. The communication system 100 includes a transmission device 10 and a reception device 12. The transmission apparatus 10 includes an information data generation unit 20, an LDPC encoding unit 22, and a modulation unit 24. The receiving device 12 includes a demodulator 26, a decoder 28, and an information data output unit 30.

情報データ生成部20は、送信すべきデータを取得し、情報データを生成する。なお、取得したデータがそのまま情報データとされてもよい。情報データ生成部20は、情報データをLDPC符号化部22へ出力する。LDPC符号化部22は、情報データ生成部20から、情報データを入力する。LDPC符号化部22は、LDPCでの検査行列をもとにしたパリティ(以下、「LDPCパリティ」という)を情報データに付加する。LDPCパリティを付加した情報データが、前述の符号化データに相当する。LDPC符号化部22は、符号化データを変調部24に出力する。図2は、LDPC符号化部22において使用される検査行列を示す。検査行列Hmnは、m行n列の行列である。ここでは、説明を明瞭にするために、検査行列Hmnが4行8列であるとし、かつ検査行列の要素を1、0よりなるものとしているが、これらに限定されるものではない。図1に戻る。   The information data generation unit 20 acquires data to be transmitted and generates information data. The acquired data may be used as information data as it is. The information data generation unit 20 outputs the information data to the LDPC encoding unit 22. The LDPC encoding unit 22 receives information data from the information data generation unit 20. The LDPC encoding unit 22 adds a parity (hereinafter referred to as “LDPC parity”) based on a parity check matrix in LDPC to information data. Information data to which the LDPC parity is added corresponds to the encoded data described above. The LDPC encoding unit 22 outputs the encoded data to the modulation unit 24. FIG. 2 shows a parity check matrix used in the LDPC encoding unit 22. The check matrix Hmn is a matrix of m rows and n columns. Here, in order to clarify the explanation, it is assumed that the parity check matrix Hmn is 4 rows and 8 columns and the elements of the parity check matrix are 1 and 0. However, the present invention is not limited to these. Returning to FIG.

変調部24は、LDPC符号化部22から符号化データを入力する。変調部24は、符号化データを変調する。変調方式として、PSK(Phase Shift Keying)、FSK(Frequency Shift Keying)等が使用される。変調部24は、変調した符号化データを変調信号として送信する。復調部26は、変調部24から通信路、例えば無線伝送路を介して変調信号を受信する。復調部26は、変調信号を復調する。復調には公知の技術が使用されればよいので、ここでは説明を省略する。復調部26は、復調結果(以下、「復調データ」という)を復号部28へ出力する。   The modulation unit 24 receives encoded data from the LDPC encoding unit 22. The modulation unit 24 modulates the encoded data. As a modulation method, PSK (Phase Shift Keying), FSK (Frequency Shift Keying), or the like is used. The modulation unit 24 transmits the modulated encoded data as a modulation signal. The demodulator 26 receives the modulated signal from the modulator 24 via a communication path, for example, a wireless transmission path. The demodulator 26 demodulates the modulated signal. Since a known technique may be used for demodulation, the description is omitted here. The demodulator 26 outputs a demodulation result (hereinafter referred to as “demodulated data”) to the decoder 28.

復号部28は、復調部26からの復調データを入力する。復号部28は、復調データに対して、LDCPでの検査行列による復号処理を繰り返し実行する。復号処理は、次の手順で実行される。
1.初期化:事前値比を初期化し、最大復号繰り返し回数を設定する。
2.チェックノード処理:検査行列の行方向に対して外部値比を更新する。
3.変数ノード処理:検査行列の列方向に対して事前値比を更新する。
4.一時推定語を計算する。
ここで、2.チェックノード処理と3.変数ノード処理に対して、前述のごとく、第1復号と第2復号とのうちのいずれかが選択されて実行される。選択は、繰り返し単位になされており、例えば、復号の初期段階において第1復号が実行され、それにつづいて第2復号が実行される。また、第1復号と第2復号での2.チェックノード処理に対して、例えば、min−sumアルゴリズムが実行される。
The decoder 28 receives the demodulated data from the demodulator 26. The decoding unit 28 repeatedly performs a decoding process using a parity check matrix in LDCP on the demodulated data. The decoding process is executed in the following procedure.
1. Initialization: The prior value ratio is initialized and the maximum number of decoding iterations is set.
2. Check node processing: The external value ratio is updated in the row direction of the check matrix.
3. Variable node processing: The priori value ratio is updated in the column direction of the check matrix.
4). Calculate temporary estimated words.
Here, 2. 2. Check node processing and As described above, one of the first decoding and the second decoding is selected and executed for the variable node processing. The selection is made in units of repetition. For example, the first decoding is executed in the initial stage of decoding, and then the second decoding is executed. In the first decoding and the second decoding, 2. For the check node process, for example, a min-sum algorithm is executed.

復号部28は、復号結果(以下、「復号データ」という)を情報データ出力部30へ出力する。情報データ出力部30は、復号部28からの復号データを入力する。情報データ出力部30は、復号データをもとに情報データを生成する。なお、復号データがそのまま情報データとされてもよい。情報データ出力部30は、外符号復号部を含み、例えばCRC(Cyclic Redundancy Check)等の外符号を復号してもよい。   The decoding unit 28 outputs the decoding result (hereinafter referred to as “decoded data”) to the information data output unit 30. The information data output unit 30 inputs the decoded data from the decoding unit 28. The information data output unit 30 generates information data based on the decoded data. The decoded data may be used as information data as it is. The information data output unit 30 includes an outer code decoding unit, and may decode an outer code such as a CRC (Cyclic Redundancy Check), for example.

この構成は、ハードウエア的には、任意のコンピュータのCPU、メモリ、その他のLSIで実現でき、ソフトウエア的にはメモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。   This configuration can be realized in terms of hardware by a CPU, memory, or other LSI of any computer, and in terms of software, it can be realized by a program loaded in the memory, but here it is realized by their cooperation. Draw functional blocks. Accordingly, those skilled in the art will understand that these functional blocks can be realized in various forms by hardware only, software only, or a combination thereof.

図3は、復号部28の構成を示す。復号部28は、フレーム構成部40、制御部42、データ記憶部44、復号結果演算部48、第1復号処理部50、第2復号処理部52を含む。また、制御部42は、受付部54、導出部56、選択部58を含む。   FIG. 3 shows the configuration of the decoding unit 28. The decoding unit 28 includes a frame configuration unit 40, a control unit 42, a data storage unit 44, a decoding result calculation unit 48, a first decoding processing unit 50, and a second decoding processing unit 52. The control unit 42 includes a reception unit 54, a derivation unit 56, and a selection unit 58.

フレーム構成部40は、図示しない復調部26からの復調データを入力する。復調データは、通信路を介してのLDPC符号化がなされたデータといえる。フレーム構成部40は、復調データに含まれたフレーム同期信号を検出する。フレーム構成部40は、フレーム同期信号をもとに、復調データによって形成されるフレームの単位を特定する。例えば、フレームの先頭部分にフレーム同期信号が配置され、かつフレームの期間が固定長である場合、フレーム構成部40は、フレーム同期信号を検出してから固定長の期間をフレームと特定する。なお、LDPC符号化の単位がフレームであってもよい。フレーム構成部40は、フレーム単位にまとめた復調データをデータ記憶部44に記憶させる。データ記憶部44は、フレーム単位で復調データを一時的に記憶する。   The frame configuration unit 40 inputs demodulated data from the demodulation unit 26 (not shown). The demodulated data can be said to be data that has been subjected to LDPC encoding via a communication channel. The frame configuration unit 40 detects a frame synchronization signal included in the demodulated data. The frame configuration unit 40 specifies a unit of a frame formed by the demodulated data based on the frame synchronization signal. For example, when the frame synchronization signal is arranged at the head portion of the frame and the frame period has a fixed length, the frame configuration unit 40 identifies the fixed-length period as a frame after detecting the frame synchronization signal. The unit of LDPC encoding may be a frame. The frame configuration unit 40 causes the data storage unit 44 to store the demodulated data collected in units of frames. The data storage unit 44 temporarily stores demodulated data in units of frames.

第2復号処理部52は、データ記憶部44からのデータ、例えば復調データに対して第2復号を実行する。前述のごとく、第2復号は、行方向処理をまとめて実行してから、列方向処理をまとめて実行する。min−sumアルゴリズムでは、チェックノード処理と変数ノード処理とを交互に実行する。図4は、復号部28の動作を模式的に表したタナーグラフを示す。タナーグラフでは、b1からb8が変数ノードと呼ばれ、c1からc4がチェックノードと呼ばれる。ここでは、変数ノードの数をnとし、bnをn番目の変数ノードとする。また、チェックノードの数をmとし、cmをm番目のチェックノードとする。変数ノードb1からb8には、図3のデータ記憶部44に蓄えられたデータy1からy8が接続されている。図3に戻る。   The second decoding processing unit 52 performs second decoding on the data from the data storage unit 44, for example, demodulated data. As described above, in the second decoding, the row direction processing is collectively performed, and then the column direction processing is collectively performed. In the min-sum algorithm, check node processing and variable node processing are executed alternately. FIG. 4 is a Tanner graph schematically showing the operation of the decoding unit 28. In the Tanner graph, b1 to b8 are called variable nodes, and c1 to c4 are called check nodes. Here, the number of variable nodes is n, and bn is the nth variable node. The number of check nodes is m, and cm is the mth check node. Data y1 to y8 stored in the data storage unit 44 of FIG. 3 are connected to the variable nodes b1 to b8. Returning to FIG.

チェックノード処理として、min−sumアルゴリズムが実行されており、チェックノード処理では、繰り返し復号の最初に事前値比βを初期化する。ここでは、データ記憶部44に記憶された復調データがそのまま使用される。次に、チェックノード処理では、事前値比の絶対値の最小値min|βmn’|を求める。チェックノード処理では、チェックノードにつながる変数ノードとの間で、cmからbmへの外部値比αmnを更新させる。αmnの計算は、検査行列Hmn=1を満たすすべての組(m、n)について、次のようになされる。   As the check node process, a min-sum algorithm is executed. In the check node process, the priori value ratio β is initialized at the beginning of the iterative decoding. Here, the demodulated data stored in the data storage unit 44 is used as it is. Next, in the check node process, a minimum value min | βmn ′ | of the absolute value of the prior value ratio is obtained. In the check node process, the external value ratio αmn from cm to bm is updated with the variable node connected to the check node. The calculation of αmn is performed as follows for all pairs (m, n) satisfying the check matrix Hmn = 1.

αmn=a(Πsign(βmn’))・min|βmn’|・・・(1)
ここで、n’はA(m)\n :A(m)はチェックノードmに接続する変数ノード集合で、\nはnを含まない差集合を示す。また、signはシグネチャ関数、min|βmn’|は絶対値の最小値選択を示す。ここで、aは正規化定数である。図5は、復号部28における外部値比の更新の概要を示す。外部値比α11は、β11’から導出される。つまり、チェックノード処理では、事前値比をもとに外部値比を更新させる。図3に戻る。事前値比の絶対値の最小値min|βmn’|の導出は、繰り返しごとになされる。
αmn = a (Πsign (βmn ′)) · min | βmn ′ | (1)
Here, n ′ is A (m) \ n: A (m) is a variable node set connected to the check node m, and \ n indicates a difference set not including n. Further, sign represents a signature function, and min | βmn ′ | represents selection of the absolute minimum value. Here, a is a normalization constant. FIG. 5 shows an outline of the update of the external value ratio in the decoding unit 28. The external value ratio α11 is derived from β11 ′. That is, in the check node process, the external value ratio is updated based on the prior value ratio. Returning to FIG. The minimum value min | βmn ′ | of the absolute value of the prior value ratio is derived for each iteration.

変数ノード処理では、αmnから変数ノードにつながるチェックノードとの間で、bnからcmへの事前値比βmnを更新する。βmnの計算は、検査行列Hmn=1を満たすすべての組(m、n)について、次のようになされる。
βmn=Σαm’n+λn・・・・(2)
ここで、λnは、入力データynに等しい。入力データynは、復調部26からの復調データに相当する。また、m’はB(n)\m:B(n)は変数ノードnに接続するチェックノード集合で、\mはmを含まない差集合を示す。図6は、復号部28における事前値比の更新の概要を示す。事前値比β11は、α1’1から導出される。つまり、変数ノード処理では、外部値比をもとに事前値比を更新させる。図3に戻る。第2復号処理部52は、繰り返し単位の復号処理を完了すると、その結果(以下、「復号結果」という)をデータ記憶部44に出力する。復号結果には、外部値比αmn、事前値比βmn、対数事後確率比Lnが含まれる。
In the variable node process, the prior value ratio βmn from bn to cm is updated between αmn and a check node connected to the variable node. The calculation of βmn is performed as follows for all pairs (m, n) satisfying the check matrix Hmn = 1.
βmn = Σαm′n + λn (2)
Here, λn is equal to the input data yn. The input data yn corresponds to demodulated data from the demodulator 26. M ′ is B (n) \ m: B (n) is a check node set connected to the variable node n, and \ m is a difference set not including m. FIG. 6 shows an overview of updating the prior value ratio in the decoding unit 28. The prior value ratio β11 is derived from α1′1. That is, in the variable node process, the prior value ratio is updated based on the external value ratio. Returning to FIG. When the decoding process for the repetition unit is completed, the second decoding processing unit 52 outputs the result (hereinafter referred to as “decoding result”) to the data storage unit 44. The decoding result includes the external value ratio αmn, the prior value ratio βmn, and the log posterior probability ratio Ln.

第1復号処理部50は、データ記憶部44からのデータ、例えば復調データに対して第1復号を実行する。前述のごとく、第1復号は、シャッフル復号に相当し、行方向のチェックノード処理が1ビット実行された後、列方向の変数ノード処理が実行される。これは、行方向処理と列方向処理をビットごとに交互に実行することに相当する。つまり、第1復号と第2復号とは異なっている。なお、第1復号処理部50における第1復号のチェックノード処理でも、min−sumアルゴリズムが実行されている。このように、第1復号と第2復号とは、いずれも繰り返し実行可能な復号処理である。また、第2復号は、第1復号よりも、演算量が少なく、かつ収束速度が遅い。第1復号処理部50は、繰り返し単位の復号処理を完了すると、その結果(以下、「復号結果」という)をデータ記憶部44に出力する。   The first decoding processing unit 50 performs first decoding on data from the data storage unit 44, for example, demodulated data. As described above, the first decoding corresponds to shuffle decoding, and the variable node processing in the column direction is executed after the check node processing in the row direction is executed by 1 bit. This corresponds to executing the row direction processing and the column direction processing alternately for each bit. That is, the first decoding and the second decoding are different. Note that the min-sum algorithm is also executed in the first decoding check node processing in the first decoding processing unit 50. Thus, the first decoding and the second decoding are both decoding processes that can be repeatedly executed. Further, the second decoding has a smaller calculation amount and a lower convergence speed than the first decoding. When the decoding process for each repetition unit is completed, the first decoding processing unit 50 outputs the result (hereinafter referred to as “decoding result”) to the data storage unit 44.

制御部42は、第1復号処理部50と第2復号処理部52とを制御する。具体的には、繰り返し単位ごとに、第1復号処理部50と第2復号処理部52とのいずれか一方を動作させる。受付部54は、繰り返し単位の復号処理が完了するごとに、データ記憶部44から復号結果を受けつける。これは、第1復号処理部50あるいは第2復号処理部52においてなされた繰り返し単位の復号結果である。   The control unit 42 controls the first decoding processing unit 50 and the second decoding processing unit 52. Specifically, one of the first decoding processing unit 50 and the second decoding processing unit 52 is operated for each repetition unit. The reception unit 54 receives a decoding result from the data storage unit 44 every time the decoding process of the repetition unit is completed. This is a decoding result of a repetition unit made in the first decoding processing unit 50 or the second decoding processing unit 52.

導出部56は、受付部54において受けつけた復号結果の信頼性を導出する。具体的に説明すると、導出部56は、ビットごとの対数事後確率比をしきい値と比較する。ここで、しきい値以下の対数事後確率比を有したビットが、信頼性の低いビットに相当する。つまり、導出部56は、復号結果の信頼性として、対数事後確率比を使用する。導出部56は、繰り返し単位において、検出された信頼性の低いビットの数をカウントする。導出部56は、カウント値を選択部58に出力する。   The deriving unit 56 derives the reliability of the decoding result received by the receiving unit 54. More specifically, the derivation unit 56 compares the log posterior probability ratio for each bit with a threshold value. Here, a bit having a log posterior probability ratio equal to or less than a threshold corresponds to a bit with low reliability. That is, the derivation unit 56 uses the log posterior probability ratio as the reliability of the decoding result. The deriving unit 56 counts the number of detected low reliability bits in the repetition unit. The deriving unit 56 outputs the count value to the selection unit 58.

選択部58は、導出部56からカウント値を入力する。選択部58は、カウント値をもとに、次の繰り返し単位における復号処理を実行させるべき第1復号処理部50あるいは第2復号処理部52を選択する。選択部58は、カウント値がしきい値以上の場合に第1復号処理部50を選択し、カウント値がしきい値よりも低い場合に第2復号処理部52を選択する。これは、信頼性がしきい値よりも高い場合に第2復号処理部52を選択し、その他の場合に第1復号処理部50を選択することに相当する。制御部42、第1復号処理部50、第2復号処理部52は、繰り返し復号回数に達するまで、前述の処理を繰り返す。なお、選択部58は、繰り返し復号の途中で、第2復号処理部52を選択した場合、残りの繰り返し単位における復号処理は第2復号処理部52を継続的に選択してもよい。繰り返し回数に達すると繰り返し復号が終了され、最終的な復号結果がデータ記憶部44に記憶される。   The selection unit 58 inputs the count value from the derivation unit 56. Based on the count value, the selection unit 58 selects the first decoding processing unit 50 or the second decoding processing unit 52 that is to execute the decoding processing in the next iteration unit. The selection unit 58 selects the first decoding processing unit 50 when the count value is equal to or greater than the threshold value, and selects the second decoding processing unit 52 when the count value is lower than the threshold value. This corresponds to selecting the second decoding processing unit 52 when the reliability is higher than the threshold and selecting the first decoding processing unit 50 in other cases. The control unit 42, the first decoding processing unit 50, and the second decoding processing unit 52 repeat the above-described processing until the number of repeated decoding is reached. In addition, when the selection unit 58 selects the second decoding processing unit 52 during the iterative decoding, the decoding processing in the remaining repetition units may continuously select the second decoding processing unit 52. When the number of iterations is reached, iterative decoding is terminated and the final decoding result is stored in the data storage unit 44.

復号結果演算部48は、第1復号処理部50や第1復号処理部50での処理が所定回数繰り返された後、データ記憶部44に記憶された復号結果をもとに一時推定語を計算する。なお、復号結果演算部48は、所定回数繰り返される前であっても、パリティ検査の結果が正しければ一時推定語を計算してもよい。復号結果演算部48は、一時推定語を復号結果として出力する。   The decoding result calculation unit 48 calculates a temporary estimated word based on the decoding result stored in the data storage unit 44 after the processes in the first decoding processing unit 50 and the first decoding processing unit 50 are repeated a predetermined number of times. To do. Note that the decoding result calculation unit 48 may calculate a temporary estimated word even if the result of the parity check is correct even before being repeated a predetermined number of times. The decoding result calculation unit 48 outputs the temporary estimated word as a decoding result.

図7(a)−(b)は、復号部28の動作概要を示す。ここでは、一例として、繰り返し回数8回であり、低信頼度ビットのしきい値が「100」である場合を示す。そのため、低信頼度ビットが100以上の場合に第1復号が選択され、低信頼度ビットが100未満の場合に第2復号が選択される。図7(a)は、繰り返し単位ごとに低信頼度ビットの個数を毎回確認する場合の結果を示す。図示のごとく、繰り返し1回目は低信頼度ビット数が200個なので第1復号が選択され、同様に繰り返し2、3回目も第1復号が選択される。繰り返し4回目では、低信頼度ビット数が90個になるので、第2復号が選択される。繰り返し5回目では、低信頼度ビットが105個であるので、第1復号が再び選択される。以下、繰り返し6〜8回目は、低信頼度ビットが100個未満であるので、第2復号が選ばれる。   7A to 7B show an outline of the operation of the decoding unit 28. FIG. Here, as an example, a case where the number of repetitions is 8 and the threshold value of the low reliability bit is “100” is shown. Therefore, the first decoding is selected when the low reliability bit is 100 or more, and the second decoding is selected when the low reliability bit is less than 100. FIG. 7A shows a result when the number of low reliability bits is confirmed every time for each repeating unit. As shown in the figure, the first decoding is selected because the number of low reliability bits is 200 for the first iteration, and similarly, the first decoding is selected for the second and third iterations. In the fourth iteration, since the number of low reliability bits is 90, the second decoding is selected. In the fifth iteration, since there are 105 low reliability bits, the first decoding is selected again. Hereinafter, since the number of low reliability bits is less than 100 at the sixth to eighth iterations, the second decoding is selected.

図7(b)は、低信頼度ビットの個数がしきい値未満になるまで低信頼度ビットの個数を確認する場合の結果を示す。図示のごとく、繰り返し1回目は低信頼度ビット数が200個なので第1復号が選択され、同様に繰り返し2、3回目も第1復号が選択される。繰り返し4回目では、低信頼度ビット数が90個になるので、第2復号が選択される。一度、第2復号が選択されたら以降の繰り返しでは低信頼度ビット数はカウントされず、第2復号が選択される。低信頼度ビット数のカウントが省略されることと、第2復号が実行されることとによって、演算量が削減される。   FIG. 7B shows the result when the number of low reliability bits is confirmed until the number of low reliability bits becomes less than the threshold value. As shown in the figure, the first decoding is selected because the number of low reliability bits is 200 for the first iteration, and similarly, the first decoding is selected for the second and third iterations. In the fourth iteration, since the number of low reliability bits is 90, the second decoding is selected. Once the second decoding is selected, the number of low reliability bits is not counted in subsequent iterations, and the second decoding is selected. The amount of calculation is reduced by omitting the count of the number of low reliability bits and executing the second decoding.

以上の構成による通信システム100の動作を説明する。図8は、復号部28による復号手順を示すフローチャートである。データ記憶部44は、復調データを記憶する(S10)。導出部56は、対数事後確率比Lnより信頼度を導出し、信頼度がしきい値以下である場合に当該ビットが低信頼度ビットであると判定するとともに、低信頼度ビットの数をカウントする(S12)。低信頼度ビットカウント値がしきい値以上であれば(S14のY)、選択部58は、第1復号処理部50を選択する(S16)。一方、低信頼度ビットカウント値がしきい値以上でなければ(S14のN)、選択部58は、第2復号処理部52を選択する(S18)。所定の繰り返し回数だけ復号処理を繰り返していなければ(S20のN)、ステップ12に戻る。所定の繰り返し回数だけ復号処理を繰り返していれば(S20のY)、復号結果演算部48は、復号結果を演算して出力する(S22)。   The operation of the communication system 100 configured as above will be described. FIG. 8 is a flowchart showing a decoding procedure by the decoding unit 28. The data storage unit 44 stores the demodulated data (S10). The deriving unit 56 derives the reliability from the log posterior probability ratio Ln, determines that the bit is a low reliability bit when the reliability is equal to or less than a threshold value, and counts the number of low reliability bits. (S12). If the low reliability bit count value is equal to or greater than the threshold value (Y in S14), the selection unit 58 selects the first decoding processing unit 50 (S16). On the other hand, if the low reliability bit count value is not equal to or greater than the threshold value (N in S14), the selection unit 58 selects the second decoding processing unit 52 (S18). If the decoding process has not been repeated a predetermined number of times (N in S20), the process returns to step 12. If the decoding process has been repeated a predetermined number of times (Y in S20), the decoding result calculation unit 48 calculates and outputs the decoding result (S22).

図9は、復号部28による別の復号手順を示すフローチャートである。図8と異なる点は、一度、第2復号が選択されると、それにつづく繰り返し単位では、常に第2復号が選択されつづけられることである。データ記憶部44は、復調データを記憶する(S50)。導出部56は、対数事後確率比Lnより信頼度を導出し、信頼度がしきい値以下である場合に当該ビットが低信頼度ビットであると判定するとともに、低信頼度ビットの数をカウントする(S52)。低信頼度ビットカウント値がしきい値以上であれば(S54のY)、選択部58は、第1復号処理部50を選択する(S56)。所定の繰り返し回数だけ復号処理を繰り返していなければ(S58のN)、ステップ52に戻る。一方、低信頼度ビットカウント値がしきい値以上でなければ(S54のN)、選択部58は、第2復号処理部52を選択する(S60)。所定の繰り返し回数だけ復号処理を繰り返していなければ(S62のN)、ステップ60に戻る。所定の繰り返し回数だけ復号処理を繰り返していれば(S58のY)、(S62のY)、復号結果演算部48は、復号結果を演算して出力する(S22)。   FIG. 9 is a flowchart showing another decoding procedure by the decoding unit 28. The difference from FIG. 8 is that once the second decoding is selected, the second decoding is always selected in the subsequent repetition unit. The data storage unit 44 stores demodulated data (S50). The deriving unit 56 derives the reliability from the log posterior probability ratio Ln, determines that the bit is a low reliability bit when the reliability is equal to or less than a threshold value, and counts the number of low reliability bits. (S52). If the low reliability bit count value is equal to or greater than the threshold value (Y in S54), the selection unit 58 selects the first decoding processing unit 50 (S56). If the decoding process has not been repeated a predetermined number of times (N in S58), the process returns to step 52. On the other hand, if the low reliability bit count value is not equal to or greater than the threshold value (N in S54), the selection unit 58 selects the second decoding processing unit 52 (S60). If the decoding process has not been repeated a predetermined number of times (N in S62), the process returns to step 60. If the decoding process has been repeated a predetermined number of times (Y in S58) (Y in S62), the decoding result calculation unit 48 calculates and outputs the decoding result (S22).

本発明の実施例によれば、繰り返し単位における復号結果の信頼性をもとに、次の繰り返し単位において第1復号あるいは第2復号を選択するので、復号の状況に応じた復号処理を使用できる。また、演算量の少ない第2復号と、収束速度の速い第1復号とを組み合わせるので、演算量の増加を抑制しながら収束速度を高速化できる。また、行方向処理と列方向処理をビットごとに交互に実行する第1復号と、行方向処理をまとめて実行してから、列方向処理をまとめて実行する第2復号とを組み合わせるので、演算量の増加を抑制しながら収束速度を高速化できる。また、信頼度が低い状況において第1復号を選択し、信頼度が高い状況になると第2復号を選択するので、信頼度が低い状況において収束速度を高速化でき、信頼度が高い状況になると演算量を低減できる。また、第2復号が選択されると、その後、第2復号が選択されつづけるので、演算量の増加を抑制できる。また、信頼度として対数事後確率比を使用するので、新たな導出を不要にできる。   According to the embodiment of the present invention, since the first decoding or the second decoding is selected in the next repetition unit based on the reliability of the decoding result in the repetition unit, the decoding process according to the decoding situation can be used. . In addition, since the second decoding with a small amount of calculation and the first decoding with a high convergence speed are combined, the convergence speed can be increased while suppressing an increase in the amount of calculation. In addition, since the first decoding in which the row direction processing and the column direction processing are alternately executed for each bit and the second decoding in which the row direction processing is collectively performed and then the column direction processing is collectively performed are combined, The convergence speed can be increased while suppressing an increase in the amount. Further, since the first decoding is selected in a situation where the reliability is low, and the second decoding is selected if the reliability is high, the convergence speed can be increased in a situation where the reliability is low, and the reliability becomes high. The amount of calculation can be reduced. When the second decoding is selected, the second decoding is continuously selected thereafter, so that an increase in the amount of computation can be suppressed. Further, since the log posterior probability ratio is used as the reliability, a new derivation can be eliminated.

また、信頼度の低いビットのカウント値に応じて繰り返し復号ごとに、信頼度の低いビットが多い場合に収束が速い第1復号を選択し、信頼度の低いビットが少ない場合に演算量が少ない第2復号を選択することによって、演算量を抑えて性能を改善できる。また、信頼度の低いビットをカウントして、カウント値が閾値以上であれば第1復号を選択し、カウント値がしきい値より少なければ第2復号を選択することよって、第1復号や第2復号を固定的に使用する場合と、同じ演算量で比較すると、復号性能を向上できる。また、これらと、同じ性能で比較すると、演算量を低減できる。   In addition, for each iterative decoding according to the count value of the bits with low reliability, the first decoding with fast convergence is selected when there are many bits with low reliability, and the amount of calculation is small when there are few bits with low reliability. By selecting the second decoding, it is possible to improve the performance while suppressing the amount of calculation. Further, by counting the bits with low reliability and selecting the first decoding if the count value is greater than or equal to the threshold, and selecting the second decoding if the count value is less than the threshold, Compared with the case where 2 decoding is used fixedly and with the same amount of computation, decoding performance can be improved. Further, when compared with these in the same performance, the amount of calculation can be reduced.

以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。   In the above, this invention was demonstrated based on the Example. This embodiment is an exemplification, and it will be understood by those skilled in the art that various modifications can be made to the combination of each component and each processing process, and such modifications are also within the scope of the present invention. .

本発明の実施例において、通信システム100は無線通信システムを前提としているので、送信装置10および受信装置12は、無線通信装置に含まれる。しかしながらこれに限らず例えば、通信システム100は有線通信システムを前提としてもよい。その際、送信装置10および受信装置12は、有線通信装置に含まれる。本変形例によれば、本発明をさまざまな装置に適用できる。   In the embodiment of the present invention, since the communication system 100 is premised on a wireless communication system, the transmission device 10 and the reception device 12 are included in the wireless communication device. However, the present invention is not limited to this. For example, the communication system 100 may be based on a wired communication system. At that time, the transmission device 10 and the reception device 12 are included in the wired communication device. According to this modification, the present invention can be applied to various devices.

本発明の実施例において、導出部56は、信頼性として対数事後確率比を使用している。しかしながらこれに限らず例えば、導出部56は、信頼性として対数尤度比を使用してもよい。本変形例によれば、設計の自由度を向上できる。   In the embodiment of the present invention, the derivation unit 56 uses the log posterior probability ratio as the reliability. However, not limited to this, for example, the derivation unit 56 may use a log likelihood ratio as the reliability. According to this modification, the degree of freedom in design can be improved.

本発明の実施例において、繰り返し単位ごとに、第1復号処理部50あるいは第2復号処理部52が選択されている。しかしながらこれに限らず、繰り返し単位の途中において、第1復号処理部50から第2復号処理部52への切替がなされてもよい。本変形例によれば、2種類の復号を詳細に切りかえることができる。   In the embodiment of the present invention, the first decoding processing unit 50 or the second decoding processing unit 52 is selected for each repetition unit. However, the present invention is not limited to this, and switching from the first decoding processing unit 50 to the second decoding processing unit 52 may be performed in the middle of the repetition unit. According to this modification, two types of decoding can be switched in detail.

本発明の実施例において、復号部28は、min−sumアルゴリズムを実行している。しかしながらこれに限らず例えば、復号部28は、min−sumアルゴリズムの代わりに、sum−productアルゴリズムを実行してもよい。本変形例によれば、復号特性を向上できる。   In the embodiment of the present invention, the decoding unit 28 executes a min-sum algorithm. However, the present invention is not limited to this. For example, the decoding unit 28 may execute a sum-product algorithm instead of the min-sum algorithm. According to this modification, decoding characteristics can be improved.

本発明の実施例において、第1復号処理部50と第2復号処理部52とは別の構成としている。しかしながらこれに限らず例えば、第1復号処理部50と第2復号処理部52とのうち、チェックノード処理を実行するための構成と変数ノード処理を実行するための構成とが共通化されてもよい。本変形例によれば、回路規模を低減できる。   In the embodiment of the present invention, the first decoding processing unit 50 and the second decoding processing unit 52 have different configurations. However, the present invention is not limited to this. For example, even if the configuration for executing the check node processing and the configuration for executing the variable node processing are shared among the first decoding processing unit 50 and the second decoding processing unit 52. Good. According to this modification, the circuit scale can be reduced.

10 送信装置、 12 受信装置、 20 情報データ生成部、 22 LDPC符号化部、 24 変調部、 26 復調部、 28 復号部、 30 情報データ出力部、 40 フレーム構成部、 42 制御部、 44 データ記憶部、 48 復号結果演算部、 50 第1復号処理部、 52 第2復号処理部、 54 受付部、 56 導出部、 58 選択部、 100 通信システム。   DESCRIPTION OF SYMBOLS 10 Transmitter, 12 Receiver, 20 Information data generation part, 22 LDPC encoding part, 24 Modulation part, 26 Demodulation part, 28 Decoding part, 30 Information data output part, 40 Frame structure part, 42 Control part, 44 Data storage Unit, 48 decoding result calculation unit, 50 first decoding processing unit, 52 second decoding processing unit, 54 reception unit, 56 derivation unit, 58 selection unit, 100 communication system.

Claims (7)

LDPC符号化がなされたデータを入力する入力部と、
前記入力部において入力したデータに対する第1の復号処理を実行する第1復号処理部と、
前記入力部において入力したデータに対する第2の復号処理であって、かつ第1の復号処理とは異なった第2の復号処理を実行する第2復号処理部と、
前記第1復号処理部と前記第2復号処理部とを制御する制御部とを備え、
前記第1復号処理部において実行される第1の復号処理と、前記第2復号処理部において実行される第2の復号処理とは、いずれも繰り返し実行可能な復号処理であり、
前記制御部は、
前記第1復号処理部あるいは前記第2復号処理部から、繰り返し単位における復号結果を受けつける受付部と、
前記受付部において受けつけた復号結果の信頼度合いを導出する導出部と、
前記導出部において導出した信頼度合いをもとに、次の繰り返し単位における復号処理を実行させるべき前記第1復号処理部あるいは前記第2復号処理部を選択する選択部とを備え、
前記第2復号処理部において実行される第2の復号処理では、前記第1復号処理部において実行される第1の復号処理よりも、演算量が少なく、かつ収束速度が遅いことを特徴とする復号装置
An input unit for inputting LDPC-encoded data;
A first decoding processing unit that performs a first decoding process on data input in the input unit;
A second decoding processing unit that executes a second decoding process different from the first decoding process, which is a second decoding process for data input in the input unit;
A control unit that controls the first decoding processing unit and the second decoding processing unit;
The first decoding process executed in the first decoding processing unit and the second decoding process executed in the second decoding processing unit are both decoding processes that can be repeatedly executed,
The controller is
A receiving unit for receiving a decoding result in a repetition unit from the first decoding processing unit or the second decoding processing unit;
A derivation unit for deriving the degree of reliability of the decryption result received by the reception unit;
A selection unit that selects the first decoding processing unit or the second decoding processing unit to execute the decoding processing in the next iteration unit based on the reliability degree derived by the derivation unit;
In the second decoding processing executed in the second decoding processing unit, than the first decoding processing executed in the first decoding processing unit, the calculation amount is small, and characterized in that the convergence speed is slow Decoding device .
LDPC符号化がなされたデータを入力する入力部と、
前記入力部において入力したデータに対する第1の復号処理を実行する第1復号処理部と、
前記入力部において入力したデータに対する第2の復号処理であって、かつ第1の復号処理とは異なった第2の復号処理を実行する第2復号処理部と、
前記第1復号処理部と前記第2復号処理部とを制御する制御部とを備え、
前記第1復号処理部において実行される第1の復号処理と、前記第2復号処理部において実行される第2の復号処理とは、いずれも繰り返し実行可能な復号処理であり、
前記制御部は、
前記第1復号処理部あるいは前記第2復号処理部から、繰り返し単位における復号結果を受けつける受付部と、
前記受付部において受けつけた復号結果の信頼度合いを導出する導出部と、
前記導出部において導出した信頼度合いをもとに、次の繰り返し単位における復号処理を実行させるべき前記第1復号処理部あるいは前記第2復号処理部を選択する選択部とを備え、
前記第1復号処理部において実行される第1の復号処理は、行方向処理と列方向処理をビットごとに交互に実行し、
前記第2復号処理部において実行される第2の復号処理は、行方向処理をまとめて実行してから、列方向処理をまとめて実行することを特徴とする復号装置
An input unit for inputting LDPC-encoded data;
A first decoding processing unit that performs a first decoding process on data input in the input unit;
A second decoding processing unit that executes a second decoding process different from the first decoding process, which is a second decoding process for data input in the input unit;
A control unit that controls the first decoding processing unit and the second decoding processing unit;
The first decoding process executed in the first decoding processing unit and the second decoding process executed in the second decoding processing unit are both decoding processes that can be repeatedly executed,
The controller is
A receiving unit for receiving a decoding result in a repetition unit from the first decoding processing unit or the second decoding processing unit;
A derivation unit for deriving the degree of reliability of the decryption result received by the reception unit;
A selection unit that selects the first decoding processing unit or the second decoding processing unit to execute the decoding processing in the next iteration unit based on the reliability degree derived by the derivation unit;
The first decoding processing executed in the first decoding processing unit alternately performs row direction processing and column direction processing for each bit,
The second second decoding process performed in the decoding processing unit, run together in the row direction processing, decoding apparatus and executes collectively column process.
前記導出部は、復号結果の信頼度合いとして、しきい値以下の対数事後確率比を有したビットの繰り返し単位におけるカウント値を使用することを特徴とする請求項1または2に記載の復号装置。 The decoding device according to claim 1, wherein the derivation unit uses a count value in a repetition unit of bits having a log posterior probability ratio equal to or less than a threshold value as a reliability degree of a decoding result . 前記選択部は、信頼度合いが別のしきい値よりも高い場合に前記第2復号処理部を選択し、その他の場合に前記第1復号処理部を選択することを特徴とする請求項3に記載の復号装置。 The said selection part selects the said 2nd decoding process part, when a reliability degree is higher than another threshold value, and selects the said 1st decoding process part in the other cases, The decoding device described . 前記選択部は、前記第2復号処理部を選択した場合、残りの繰り返し単位における復号処理は前記第2復号処理部を継続的に選択することを特徴とする請求項1から4のいずれかに記載の復号装置。 The selection unit according to any one of claims 1 to 4, wherein when the second decoding processing unit is selected, the decoding processing in the remaining repetitive units continuously selects the second decoding processing unit. The decoding device described. LDPC符号化がなされたデータを入力するステップと、
入力したデータに対する第1の復号処理を実行するステップと、
入力したデータに対する第2の復号処理であって、かつ第1の復号処理とは異なった第2の復号処理を実行するステップと、
前記第1の復号処理を実行するステップと前記第2の復号処理を実行するステップとを制御するステップとを備え、
第1の復号処理と第2の復号処理とは、いずれも繰り返し実行可能な復号処理であり、
前記制御するステップは、
前記第1の復号処理を実行するステップあるいは前記第2の復号処理を実行するステップから、繰り返し単位における復号結果を受けつけるステップと、
受けつけた復号結果の信頼度合いを導出するステップと、
導出した信頼度合いをもとに、次の繰り返し単位における復号処理を実行させるべき前記第1の復号処理を実行するステップあるいは前記第2の復号処理を実行するステップを選択するステップとを備え、
前記第2の復号処理では、前記第1の復号処理よりも、演算量が少なく、かつ収束速度が遅いことを特徴とする復号方法。
Inputting LDPC-encoded data;
Performing a first decryption process on the input data;
Executing a second decoding process for the input data, which is a second decoding process different from the first decoding process;
Controlling the step of executing the first decoding process and the step of executing the second decoding process,
The first decoding process and the second decoding process are both decoding processes that can be repeatedly executed,
The controlling step includes
Receiving a decoding result in a repetition unit from the step of executing the first decoding process or the step of executing the second decoding process;
Deriving the reliability of the received decryption result;
Selecting the step of executing the first decoding process or the step of executing the second decoding process to be executed based on the derived degree of reliability ;
In the second decoding process, the amount of calculation is smaller and the convergence speed is slower than in the first decoding process.
LDPC符号化がなされたデータを入力するステップと、
入力したデータに対する第1の復号処理を実行するステップと、
入力したデータに対する第2の復号処理であって、かつ第1の復号処理とは異なった第2の復号処理を実行するステップと、
前記第1の復号処理を実行するステップと前記第2の復号処理を実行するステップとを制御するステップとを備え、
第1の復号処理と第2の復号処理とは、いずれも繰り返し実行可能な復号処理であり、
前記制御するステップは、
前記第1の復号処理を実行するステップあるいは前記第2の復号処理を実行するステップから、繰り返し単位における復号結果を受けつけるステップと、
受けつけた復号結果の信頼度合いを導出するステップと、
導出した信頼度合いをもとに、次の繰り返し単位における復号処理を実行させるべき前記第1の復号処理を実行するステップあるいは前記第2の復号処理を実行するステップを選択するステップとを備え、
前記第1の復号処理は、行方向処理と列方向処理をビットごとに交互に実行し、
前記第2の復号処理は、行方向処理をまとめて実行してから、列方向処理をまとめて実行することを特徴とする復号方法。
Inputting LDPC-encoded data;
Performing a first decryption process on the input data;
Executing a second decoding process for the input data, which is a second decoding process different from the first decoding process;
Controlling the step of executing the first decoding process and the step of executing the second decoding process,
The first decoding process and the second decoding process are both decoding processes that can be repeatedly executed,
The controlling step includes
Receiving a decoding result in a repetition unit from the step of executing the first decoding process or the step of executing the second decoding process;
Deriving the reliability of the received decryption result;
Selecting the step of executing the first decoding process or the step of executing the second decoding process to be executed based on the derived degree of reliability ;
The first decoding process alternately performs a row direction process and a column direction process for each bit,
In the decoding method, the second decoding process is performed by collectively executing the row direction process and then the column direction process .
JP2012009986A 2012-01-20 2012-01-20 Decoding device and decoding method Active JP5772622B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012009986A JP5772622B2 (en) 2012-01-20 2012-01-20 Decoding device and decoding method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012009986A JP5772622B2 (en) 2012-01-20 2012-01-20 Decoding device and decoding method

Publications (2)

Publication Number Publication Date
JP2013150194A JP2013150194A (en) 2013-08-01
JP5772622B2 true JP5772622B2 (en) 2015-09-02

Family

ID=49047288

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012009986A Active JP5772622B2 (en) 2012-01-20 2012-01-20 Decoding device and decoding method

Country Status (1)

Country Link
JP (1) JP5772622B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5794939B2 (en) * 2012-03-15 2015-10-14 三菱電機株式会社 Error correction decoding apparatus and error correction decoding method

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1819056B1 (en) * 2004-12-02 2013-07-17 Mitsubishi Electric Corporation Decoding device and communication device
US8006161B2 (en) * 2005-10-26 2011-08-23 Samsung Electronics Co., Ltd Apparatus and method for receiving signal in a communication system using a low density parity check code
JP2009100222A (en) * 2007-10-16 2009-05-07 Toshiba Corp Device and method for decoding low density parity check code
KR101526317B1 (en) * 2008-05-09 2015-06-11 삼성전자주식회사 Hierarchical decoding device
US8407553B2 (en) * 2008-08-15 2013-03-26 Lsi Corporation RAM list-decoding of near codewords
JP5259836B2 (en) * 2010-05-17 2013-08-07 株式会社東芝 Communications system

Also Published As

Publication number Publication date
JP2013150194A (en) 2013-08-01

Similar Documents

Publication Publication Date Title
JP2012151676A (en) Decoding apparatus and decoding method
JP4062435B2 (en) Error correction code decoding apparatus
JP5705106B2 (en) Method for performing soft decision decoding of Euclidean space Reed-Muller code
WO2017080249A1 (en) Method of generating low-density parity-check code transmitted over channel and apparatus utilizing same
WO2006075417A1 (en) Encoding method, decoding method, and device thereof
US8214717B2 (en) Apparatus and method for decoding LDPC code based on prototype parity check matrixes
JP5370337B2 (en) Decoding device and decoding method
KR101307733B1 (en) Apparatus and method for decoding block layered based non-binary qc-ldpc
JP5310701B2 (en) Decoding device and decoding method
CN115296675A (en) Early Convergence for Decoding of LDPC Codes
JP5365601B2 (en) Decoding device and decoding method
JP4832447B2 (en) Decoding apparatus and method using channel code
JP5772622B2 (en) Decoding device and decoding method
JP5523064B2 (en) Decoding apparatus and method
WO2012042786A1 (en) Decoding device and decoding method
JP2013070133A (en) Decoder and decoding method
CN109639394B (en) Edge Class Relay Decoding Method for Multilateral Type Low Density Parity Check Codes
WO2018084732A1 (en) Ldpc codes for incremental redundancy harq (ir-harq) schemes
JP5385944B2 (en) Decoder
JP2012175564A (en) Decoding apparatus, encoding apparatus, decoding method and encoding method
JP4900168B2 (en) Wireless receiver
JP2013150193A (en) Decoding apparatus and decoding method
KR101221062B1 (en) Encoding and decoding method using variable length usc code
JP2013207396A (en) Decoding device, decoding method, and program
JP2010130342A (en) Decoder

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140731

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150323

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150615

R150 Certificate of patent or registration of utility model

Ref document number: 5772622

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150