WO2015087643A1 - 誤り訂正復号装置 - Google Patents

誤り訂正復号装置 Download PDF

Info

Publication number
WO2015087643A1
WO2015087643A1 PCT/JP2014/079602 JP2014079602W WO2015087643A1 WO 2015087643 A1 WO2015087643 A1 WO 2015087643A1 JP 2014079602 W JP2014079602 W JP 2014079602W WO 2015087643 A1 WO2015087643 A1 WO 2015087643A1
Authority
WO
WIPO (PCT)
Prior art keywords
column
row
llr
minimum value
unit
Prior art date
Application number
PCT/JP2014/079602
Other languages
English (en)
French (fr)
Inventor
堅也 杉原
松本 渉
吉田 英夫
好邦 宮田
Original Assignee
三菱電機株式会社
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 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to EP14870292.1A priority Critical patent/EP3082267A4/en
Priority to US15/037,031 priority patent/US10103750B2/en
Priority to CN201480066943.2A priority patent/CN105814799B/zh
Priority to JP2015552365A priority patent/JP5971670B2/ja
Publication of WO2015087643A1 publication Critical patent/WO2015087643A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • H03M13/1117Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using approximations for check node processing, e.g. an outgoing message is depending on the signs and the minimum over the magnitudes of all incoming messages according to the min-sum rule
    • H03M13/112Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using approximations for check node processing, e.g. an outgoing message is depending on the signs and the minimum over the magnitudes of all incoming messages according to the min-sum rule with correction functions for the min-sum rule, e.g. using an offset or a scaling factor
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • H03M13/1114Merged schedule message passing algorithm with storage of sums of check-to-bit node messages or sums of bit-to-check node messages, e.g. in order to increase the memory efficiency
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • H03M13/1117Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using approximations for check node processing, e.g. an outgoing message is depending on the signs and the minimum over the magnitudes of all incoming messages according to the min-sum rule
    • H03M13/1122Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using approximations for check node processing, e.g. an outgoing message is depending on the signs and the minimum over the magnitudes of all incoming messages according to the min-sum rule storing only the first and second minimum values per check node
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1131Scheduling of bit node or check node processing
    • H03M13/1137Partly parallel processing, i.e. sub-blocks or sub-groups of nodes being processed in parallel
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • H03M13/2909Product codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/3977Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using sequential decoding, e.g. the Fano or stack algorithms
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6577Representation or format of variables, register sizes or word-lengths and quantization
    • H03M13/658Scaling by multiplication or division
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6577Representation or format of variables, register sizes or word-lengths and quantization
    • H03M13/6583Normalization other than scaling, e.g. by subtraction
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/1154Low-density parity-check convolutional codes [LDPC-CC]

Definitions

  • the present invention relates to an error correction decoding apparatus, and more particularly, to an error correction decoding apparatus that decodes a received sequence encoded with a low density parity check code (Low-Density Parity-Check code; hereinafter referred to as an LDPC code).
  • a low density parity check code Low-Density Parity-Check code; hereinafter referred to as an LDPC code.
  • the LDPC code is a linear code defined by a parity check matrix in which the number of 1s is sparse (that is, most of the matrix elements are 0 and the number of 1s is small relative to the whole). It is.
  • the size of the parity check matrix is an m ⁇ n matrix (where m ⁇ n)
  • the code length of the LDPC code is n
  • the rank (rank) of the parity check matrix is the parity bit length.
  • m When the parity check matrix is full rank (the rank and the number of rows match), the parity bit length is m and the information sequence length is nm.
  • a Sum-Product decoding method As a representative decoding method for decoding an LDPC code, there is a Sum-Product decoding method as described in Patent Document 1, for example.
  • decoding is performed by performing iterative operations while calculating a log likelihood ratio (hereinafter referred to as LLR) as probabilistic reliability information of a received signal (received sequence).
  • LLR log likelihood ratio
  • the Sum-Product decoding method is composed of two operations called column operation and row operation, and corresponds to the column and row of the parity check matrix, respectively.
  • the portions that perform column operations and row operations are called column arithmetic units and row arithmetic units, but they are sometimes called bit nodes and check nodes, respectively.
  • reception log likelihood ratio (hereinafter referred to as reception LLR) calculated for each bit for the code length from the reception sequence is input, and decoding operation is performed by alternately repeating two operations of row operation and column operation. Do.
  • estimation of the transmission bit b c (calculation of the decoding result of the LDPC code) is performed according to equation (7).
  • a row operation is performed on the column LLR obtained by equation (6), and thereafter, these operations are repeated, and the upper limit of the predetermined number of repetitions has been reached, or the estimated bit can be determined by a code word (parity check) ),
  • the estimated bit string bc is output, and the decoding ends.
  • the Sum-Product decoding method requires exponential and logarithmic operations in the row operations shown in Equations (1) and (2) to (5), and the amount of computation is enormous.
  • Patent Document 1 and Patent Document 2 of another patent document describe several decoding methods that reduce the amount of calculation by approximating the expression (1).
  • a typical approximation method there is a Min-sum decoding method using the following equation (8) instead of equation (1).
  • the Min-sum decoding method approximates the calculation made up of exponents and logarithms appearing in Equation (1) by calculating the minimum value of the absolute value of z r, c as shown in Equation (8).
  • the Min-sum decoding method has a rough approximation accuracy and the deterioration in decoding performance is larger than that of the Sum-product decoding method. For this reason, a decoding method has been devised that improves the decoding performance, although the amount of computation is slightly larger than that of the Min-sum decoding method, and one of them is Offset BP-based decoding that replaces equation (1) with equation (9) below. Is the law.
  • the minimum value is calculated as in the Min-sum decoding method, and then ⁇ is subtracted from the minimum value.
  • is a constant and is obtained in advance by a density evolution method or the like. Compared with the Min-sum decoding method, only the subtraction is added, and the increment of the calculation amount is small, but the decoding performance is greatly improved.
  • Patent Document 2 discloses a decoding method in which ⁇ in the Offset BP-based decoding method is variable according to a minimum value.
  • Any of the decoding methods including the approximate calculation of the Sum-product decoding method described above is any low operation with respect to the minimum value of the absolute value of z r, c or a value corresponding thereto (hereinafter referred to as a quasi-minimum value). A large amount of processing is performed, and the result is set as row LLR ⁇ r, c .
  • the number of columns of the parity check matrix includes a column operation unit that performs column operations and a row operation unit that performs row operations. Implement as many lines as possible.
  • the column arithmetic unit and the row arithmetic unit are mounted in correspondence with each column and each row of the parity check matrix, and wiring is performed between the column and the row for each 1 in the matrix. Input / output data. For example, the matrix element in the fourth row and the second column of the parity check matrix in FIG.
  • the wiring between the column arithmetic unit that performs the column operation and the row arithmetic unit that performs the row operation is wired according to the position of 1 in the parity check matrix.
  • the position of 1 in the parity check matrix is basically irregular, and there is a problem that wiring becomes complicated.
  • the present invention has been made to solve the above-described problems, and it is possible to improve the mountability of an LDPC code decoding circuit by reducing the number of wirings and reducing the wiring complexity.
  • An object is to obtain a correction decoding apparatus.
  • the present invention is an error correction decoding apparatus for decoding a reception sequence encoded with an LDPC code, wherein a column arithmetic unit and a row provided corresponding to each of a column and a row of a parity check matrix of the LDPC code
  • An arithmetic unit, and the column arithmetic unit receives a reception LLR (Log-Likelihood Ratio) of the reception sequence and a row LLR from the row arithmetic unit, and inputs the row LLR of the reception sequence.
  • the total value of the reception LLR and the row LLR from the row calculator is calculated, and the row calculator holds the calculation result regarding the row LLR or the column LLR obtained at the previous calculation and is input from the column calculator.
  • the error correction decoding apparatus calculates a column LLR using the calculated total value and the stored calculation result, calculates a row LLR from the calculated column LLR, and outputs the row LLR to the column calculator.
  • the present invention is an error correction decoding apparatus for decoding a reception sequence encoded with an LDPC code, wherein a column arithmetic unit and a row provided corresponding to each of a column and a row of a parity check matrix of the LDPC code An arithmetic unit, and the column arithmetic unit receives a reception LLR (Log-Likelihood Ratio) of the reception sequence and a row LLR from the row arithmetic unit, and inputs the row LLR of the reception sequence.
  • the total value of the reception LLR and the row LLR from the row calculator is calculated, and the row calculator holds the calculation result regarding the row LLR or the column LLR obtained at the previous calculation and is input from the column calculator.
  • the error correction decoding device calculates a column LLR using the calculated total value and the stored calculation result, calculates a row LLR from the calculated column LLR, and outputs the row LLR to the column calculator, Number of wires Rashi, by relaxing the wiring complexity, it is possible to improve the implementation of the decoding circuit of the LDPC code.
  • FIG. 4 shows an example of the configuration of the error correction decoding apparatus according to Embodiment 1 of the present invention.
  • an LDPC code decoding apparatus (hereinafter referred to as an LDPC decoding circuit 100) for decoding a reception sequence encoded with an LDPC code is shown as an example.
  • the LDPC decoding circuit 100 includes a column computing unit 101 and a row computing unit 111.
  • the column arithmetic unit 101 and the row arithmetic unit 111 are provided by the number of columns and the number of rows of the parity check matrix, respectively.
  • the LDPC decoding circuit 100 receives the received LLR ⁇ c corresponding to each column c of the parity check matrix, and outputs an estimated bit sequence b c corresponding to each column c.
  • each column c is, as described above, each N included in the set N (r) when a set of column numbers whose element in the r-th row of the parity check matrix is 1 is denoted as N (r). It is a column.
  • the reception LLR ⁇ c is a reception LLR corresponding to the column c as described above.
  • the column calculator 101 includes a plurality of column calculators # 1, # 2,..., #N, each corresponding to each column of the parity check matrix. Therefore, n is the number of columns of the parity check matrix.
  • the row arithmetic unit 111 is composed of a plurality of row arithmetic units # 1, # 2,..., #M, which corresponds to each row of the parity check matrix. Therefore, m is the number of rows of the parity check matrix.
  • the column computing unit 101 and the row computing unit 111 repeatedly exchange data for a predetermined number of times or a number determined according to the progress of computation, and then the column computing unit 101 estimates the estimated bit sequence based on the equation (7).
  • b c is calculated and output.
  • This invention is obtained by changing the operations of the column computing unit and the row computing unit from the conventional configuration. Therefore, before describing the error correction decoding apparatus according to Embodiment 1 of the present invention, a conventional column arithmetic unit and row arithmetic unit will be described.
  • FIG. 5 shows a calculation example of a conventional column calculation unit
  • FIG. 6 shows a configuration example of a conventional row calculation unit.
  • the column arithmetic unit 101 in FIG. 5 is connected to the row arithmetic unit # 1 111, the row arithmetic unit # 5 112, and the row arithmetic unit # 6 113 according to the position of the element 1 of the parity check matrix.
  • the row LLRs ⁇ 1,1 , ⁇ 5,1 and ⁇ 6,1 output from these row calculators 111, 112, and 113 are input to the column calculator 101 and are calculated based on the above equation (6).
  • z 1,1 , z 1,5 , and z 1,6 are output to the row computing unit # 1 111, the row computing unit # 1 112, and the row computing unit # 1 113, respectively.
  • each row LLR ⁇ 1,1 , ⁇ 5, based on the above formulas (1) to (5) according to the Sum-Product decoding method . 1 and ⁇ 6,1 are calculated and output to the column calculator 101.
  • FIG. 6 shows a conventional configuration example of the row computing units 111, 112, and 113 as row computing unit #x 114.
  • the row arithmetic unit #x 114 includes, for example, the column arithmetic unit # 101, the column arithmetic unit #i 102, the column arithmetic unit #j 103, the column arithmetic unit # according to the position of the element 1 of the parity check matrix. k It is assumed that it is connected to 104. The configuration of these column calculators 101 to 104 is basically the same as that of the column calculator # 1 101 shown in FIG. As shown in FIG. 6, the row arithmetic unit #x 114 includes an “absolute minimum value and quasi-minimum value calculation unit 115”, an “arithmetic operation processing unit 116”, and a “selector 117”. Yes.
  • the row arithmetic unit #x 114 in FIG. 6 includes a Min-sum decoding method (Equation (8)), an Offset BP-based decoding method (Equation (9)), a Normalized Min-sum decoding method (Equation (10)), or , A configuration based on a decoding method composed of approximate calculation of the Sum-product decoding method, such as the ⁇ -min decoding method.
  • the absolute value minimum value and quasi-minimum value calculation unit 115 includes column operator # 1 101, column operator #i 102, column operator #j 103, and column LLR z x calculated by column operator #k 104. , 1 , z x, i , z x, j , z x, k are input, and the minimum value and the value corresponding thereto are calculated from the absolute values. Specifically, the absolute value minimum value and quasi-minimum value calculation unit 115 uses the Min-sum decoding method (equation (8)) or the Offset BP ⁇ in the arithmetic processing unit 116 and the selector 117 associated with the latter approximation.
  • each input z x, c That is, the minimum value and the second smallest value are calculated from the absolute values of the inputs z x, 1 , z x, i , z x, j , z x, k .
  • each input z x, c that is, the input z x, 1 , z x, i .
  • the minimum value, the second smallest value, and the third smallest value are calculated.
  • the minimum value from the minimum value to be obtained can be determined freely according to the desired approximation accuracy, and is not limited in the present invention.
  • the minimum value, the second smallest value, the third smallest value, and larger values are calculated by the absolute minimum value and quasi-minimum value calculation unit 115.
  • Any decoding method can be applied to the present invention as long as the row LLR can be calculated by the arithmetic processing unit 116 and the selector 117 accompanying the approximation of the latter stage based on these values.
  • the arithmetic processing unit 116 accompanying the approximation performs the Offset BP-based decoding method (Equation (9)), the normalized Min-sum decoding method (Equation (10)), or the ⁇ -min decoding method with the selector 117 at the subsequent stage.
  • the preprocessing various calculations are performed on the minimum value, the second minimum value, and the like. For example, in the case of the Offset BP-based decoding method, there is an operation of subtracting ⁇ from the minimum value min
  • the arithmetic processing unit 116 accompanying approximation As described above, if the preprocessing is performed by the arithmetic processing unit 116 accompanying approximation, the calculation load of the selector 117 in the subsequent stage is reduced, and the circuit configuration of the selector 117 is simplified. As a matter of course, when processing similar to the Min-sum decoding method (equation (8)) is performed, the arithmetic processing unit 116 accompanying approximation is not particularly necessary, and thus may not be provided.
  • the selector 117 uses the output of the arithmetic processing unit 116 accompanying the approximation, and uses the Offset BP-based decoding method (Equation (9)), the Normalized Min-sum decoding method (Equation (10)), or ⁇ -min.
  • An arithmetic process according to either the decoding method or the Min-sum decoding method (equation (8)) is performed, and each column calculator #c, that is, the column calculators # 1, #i, #j, #K Output values (row LLR ⁇ x, c ) to 101 to 104 are calculated and output.
  • the column is calculated using any one of the expressions (8) to (10).
  • the rows LLR ⁇ x, 1 , ⁇ x, i , ⁇ x, j , ⁇ x, k to be output to the computing units # 1 101, #i 102, #j 103, #k 104 are calculated, and the calculated rows LLRs ⁇ x, 1 , ⁇ x, i , ⁇ x, j , ⁇ x, k are selected and output to appropriate column computing units # 1 101, #i 102, #j 103, #k 104.
  • the arithmetic processing unit 116 and the selector 117 associated with the approximation have been described as being provided separately. However, the present invention is not necessarily limited thereto, and they may be provided in an integrated manner.
  • the arithmetic processing unit 116 and the selector 117 accompanying the approximation are for calculating the row LLR from the absolute minimum value and the semi-minimum value output from the absolute minimum value and the semi-minimum value calculation unit 115. Since the calculation part is comprised, when these are put together, it is only called a calculation part.
  • FIG. 7 shows the configuration of the column arithmetic unit according to the first embodiment of the present invention.
  • column calculator # 1 201 has three row calculators, that is, row calculator # 1 211, row calculator # 5 212, and row calculator according to the position of element 1 of the parity check matrix. Suppose that it is connected to # 6 213.
  • the column calculator # 1 201 receives the reception LLR ⁇ 1 of the reception sequence to be decoded, and also outputs the row LLRs ⁇ 1,1 , ⁇ 5,1 , ⁇ output from these row calculators 211 to 213. 6,1 is entered.
  • the column calculator # 1 201 does not perform the calculation for obtaining the column LLR of the equation (6), and does not perform any output. A significant difference from the conventional configuration of FIG.
  • the conventional column computing unit 101 has different values (z 1,1 , z 1,5 , z 1 ) for each connected row computing unit as shown in FIG.
  • all the same values (only the total value z 1 ) are applied to the row computing units 211 to 213 to which the column computing unit 201 is connected. ) Is output.
  • the complexity of the wiring is greatly improved, and the mountability is improved.
  • the row computing unit # 1 211, the row computing unit # 5 212, and the row computing unit # 6 213 each have a storage unit (not shown), and output to the column computing unit # 1 201, the row LLR ⁇ 1,1 , ⁇ 5,1 and ⁇ 6,1 are stored in the storage unit.
  • ⁇ 1,1 , ⁇ 5,1 , ⁇ 6,1 held in the storage unit are represented as ⁇ ′ 1,1 , ⁇ ′ 5,1 , ⁇ ′ 6,1 , respectively.
  • the total value z 1 input from the column calculator # 1 201 is stored in each storage unit.
  • ⁇ ′ 1,1 , ⁇ ′ 5,1 , ⁇ ′ 6,1 are subtracted to obtain the sequence LLR z 1,1 , z 5,1 , z 6,1 . Details will be described later.
  • the row arithmetic unit #x 214 includes, for example, the column arithmetic unit # 1 201, the column arithmetic unit #i 202, the column arithmetic unit #j 203, the column according to the position of the element 1 of the parity check matrix. It is assumed that it is connected to the arithmetic unit #k 204. Each of these column arithmetic units 201 to 204 is also connected to a row arithmetic unit other than the row arithmetic unit #x 214, and the connection relationship is determined by the parity check matrix as described above.
  • the row arithmetic unit #x 214 includes an “absolute minimum value and quasi-minimum value calculation unit 115”, an “arithmetic operation processing unit 116”, a “selector 117”, a “storage unit 218”, and “ Subtractor 220, 221, 223, 224 ". Since the “arithmetic processing unit 116 accompanying approximation” is the same as that of the conventional FIG. 6, detailed description thereof is omitted here. The main difference from FIG. 6 is that in this embodiment, a storage unit 218 and subtraction units 220, 221, 223, and 224 are added as shown in FIG.
  • the absolute value minimum value and quasi-minimum value calculation unit 115 inputs columns LLR z x, 1 , z x, i , z x, j , z x, k from subtraction units 220, 221, 223, and 224 described later. Then, the minimum value and the value corresponding to the minimum value are calculated from the absolute values of these columns LLR.
  • the calculation method may be the same as that of the conventional absolute value minimum value and quasi-minimum value calculation unit 115 in FIG.
  • the selector 117 is the same as that of the selector 117 in FIG. 6 as the contents of the arithmetic processing, and therefore the description thereof is omitted here.
  • the difference from FIG. 6 is that in FIG. That is, not only the computing units 201 to 204 but also the storage unit 218 is connected.
  • the same values as those output to the column calculators 101 to 104 in the conventional configuration (FIG. 6), that is, the row LLR ⁇ x, c are output to these output lines. Specifically, row LLR ⁇ x, 1 is output to column operator # 1 201, row LLR ⁇ x, i is output to column operator #i 202, and row LLR ⁇ x, i is output to column operator #j 203.
  • LLR ⁇ x, j is output
  • row LLR ⁇ x, k is output to the column operator #k 204
  • rows LLR ⁇ x, 1 , ⁇ x, i , ⁇ x, j , ⁇ x, k (hereinafter collectively referred to as row LLR ⁇ x, c ) is output.
  • the storage unit 218 holds the output from the selector 117, that is, the row LLR ⁇ x, c .
  • the values of the retained rows LLR ⁇ x, c are expressed here as ⁇ ′ x, c , respectively.
  • the storage unit 218 performs processing at the timing when ⁇ x, 1 output from the selector 117 to the column arithmetic unit # 1 201 is processed by the column arithmetic unit # 1 201 and then input to the row arithmetic unit #x 214 as z 1.
  • the row LLR ⁇ ′ x, 1 held is appropriately output to the subtraction unit 220.
  • ⁇ x, i output from the selector 117 to the column calculator #i 202 is processed by the column calculator #i 202 and then input to the row calculator #x 214 as z i .
  • the storage unit 218 appropriately outputs ⁇ ′ x, i to the subtraction unit 221. The same applies to the other subtraction units 223 and 224.
  • any number of column computing units may be connected to the row computing unit #x 214, and the present embodiment can be configured even if the number is not four as shown in FIG.
  • the number of subtracting units installed and the processing of other units differ, but those skilled in the art can easily assume the contents described above.
  • the output value to each row calculator is calculated by the number of connected row calculators.
  • the row calculator #x 214 holds the row LLR ⁇ x, c at the previous calculation as ⁇ ′ x, c and performs subtraction from the total value z c.
  • the units 201 to 204 can output the same value (only the total value z c ) to the row arithmetic units connected thereto. According to the present embodiment, by setting the output from the column computing unit to the row computing unit to the same value, there is an effect that the complexity of the wiring is improved and the mountability is improved.
  • the conventional column arithmetic unit needs to install a flip-flop in order to output a different value to each connected row arithmetic unit.
  • only one type of flip-flop is required to output the same value to the connected row arithmetic units.
  • a circuit scale reduction effect can be obtained by reducing the number of flip-flops.
  • the present embodiment is an LDPC code decoding apparatus for decoding a reception sequence encoded with an LDPC code, and corresponds to each of the columns and rows of the parity check matrix of the LDPC code.
  • the column calculators 201 to 204 receive the reception sequence reception LLR and the row LLR from the row calculation unit 214, and obtain the total value z c of the reception sequence reception LLR and the row LLR from the row calculation unit 214. calculate.
  • the row calculator 214 holds the calculation result regarding the row LLR or the column LLR obtained at the previous calculation, and uses the total value z c input from the column calculators 201 to 204 and the held calculation result.
  • the column LLR is calculated, and the row LLR is calculated from the calculated column LLR and output to the column calculator.
  • the column calculators 201 to 204 calculate only the total value z c of the received LLR and the row LLR from the row calculator 214 without obtaining the column LLR, and the same for all the row calculators.
  • Value (total value z c ) is output.
  • the row computing unit 214 includes a storage unit 218 that holds, for each column, the row LLR at the previous computation output to the column computing units 201 to 204 at the previous computation, and the column computing units 201 to 204.
  • the subtractors 220, 221, 223, and 224 for calculating the column LLR for each column by subtracting the row LLR for each column at the time of the previous calculation held in the storage unit from the total value z c input from An absolute value minimum value and a quasi-minimum value calculation unit 115 for calculating a minimum value and a quasi-minimum value among the absolute values of the column LLRs output from the subtraction units 220, 221, 223, and 224; , And calculating units 116 and 117 for calculating a row LLR from the absolute value minimum value and the quasi-minimum value output from the absolute value minimum value and quasi-minimum value calculation unit 115 and outputting them to the column calculator.
  • the output value to each row calculator is calculated by the number of connected row calculators.
  • the row computing unit 214 holds the row LLR ⁇ x, c and subtracts it from the total value z c , so that the column computing units 201 to 204 are connected to each other. Since it is possible to output the same value to the calculator 214, according to the present embodiment, the output from the column calculator to the row calculator is set to the same value, thereby improving the complexity of the wiring, There is an effect of improving the mountability.
  • the decoding process performed by the selector 117 is not the Sum-Product decoding method, but the Min-sum decoding method (equation (8)), the Offset BP-based decoding method (equation (9)), Since it is performed using a decoding method consisting of approximate operations of the Sum-Privact decoding method, such as a normalized Min-sum decoding method (equation (10)) or a ⁇ -min decoding method, the amount of calculation is reduced. The effect of being able to be obtained.
  • Embodiment 2 the row computing unit 214 holds the row LLR ⁇ x, c at the previous computation in the storage unit, and performs subtraction on the inputs from the column computing units 201 to 204, thereby performing the column computation.
  • the devices 201 to 204 can output the same value to the connected row arithmetic units, the storage unit 218 needs to be installed in the row arithmetic units. In this embodiment mode, a configuration in which the installation method of the storage unit is changed is shown.
  • FIG. 9 shows the configuration of the row arithmetic unit #x 314 of the error correction decoding apparatus according to the present embodiment.
  • the row computing unit #x 314 is connected to, for example, the column computing unit # 1 201, the column computing unit #i 202, the column computing unit #j 203, and the column computing unit #k 204 based on the parity check matrix. To do.
  • Each of these column arithmetic units is also connected to a row arithmetic unit other than the row arithmetic unit #x 314, and the connection relationship is determined by the parity check matrix as described above.
  • the row arithmetic unit #x 314 includes an “absolute minimum value and quasi-minimum value calculation unit 115”, “approximation processing unit 116”, “selector 117”, “storage unit 318”, “ Computation processing unit 2 319 accompanying approximation and “subtraction units 220, 221, 223, 224” are included.
  • the storage unit 318 holds the output from the absolute value minimum value and quasi-minimum value calculation unit 115. That is, the storage unit 318 calculates the columns LLR z x, 1 , z x, i output from the subtraction units 220, 221, 223, and 224 calculated by the absolute value minimum value and quasi-minimum value calculation unit 115.
  • the minimum value and the quasi-minimum value among the absolute values of z x, j and z x, k are stored.
  • the stored minimum value and quasi-minimum value are input to the arithmetic processing unit 2 319, where they are used to calculate the rows LLR ⁇ ′ x, 1 , ⁇ ′ x, i and the like.
  • the arithmetic processing unit 2 319 associated with the approximation calculates a row LLR ⁇ ′ x, 1 , ⁇ ′ x, i and the like based on the minimum value and the quasi-minimum value output from the storage unit 318.
  • processing equivalent to the calculation processing unit 116 accompanying approximation is performed.
  • the arithmetic processing unit 2 319 accompanying the approximation also has a part of the function of the selector 117, and selects and outputs the calculated ⁇ ′ x, 1 , ⁇ ′ x, i and the like to the appropriate subtracting unit 220. It also has a function and a positive / negative sign calculation function based on equation (11).
  • any number of column computing units may be connected to the row computing unit #x 314, and the present embodiment can be configured even if there are not four as shown in the figure.
  • the number of subtracting units installed and the processing of other units differ, but those skilled in the art can easily assume the contents described above.
  • the storage unit can be made smaller than in the first embodiment, and the circuit scale can be reduced.
  • the processing unit 319 is a circuit that only performs subtraction on several types of values such as the minimum value and the second smallest value.
  • the scale is small compared to other computing units.
  • a storage unit that is not present in the conventional configuration (FIG. 6) is required.
  • a storage unit is required somewhere in order to be realized as a circuit.
  • the location where the storage unit is installed in the conventional configuration is a column arithmetic unit, a row arithmetic unit, or the outside thereof, and is not shown in FIG. 6 because of the high degree of freedom of configuration.
  • the storage unit installed in this embodiment and other embodiments has a part or all of the role of the storage unit installed in the conventional configuration, and does not greatly contribute to an increase in circuit scale. .
  • the same effects as those of the first embodiment can be obtained, and in the present embodiment, calculation is performed by the absolute value minimum value and quasi-minimum value calculation unit 115. Since only the minimum value and the quasi-minimum value are stored in the storage unit 318, the storage capacity of the storage unit 318 can be reduced and the circuit scale can be reduced as compared with the first embodiment. .
  • Embodiment 3 FIG.
  • the configuration in which the number of column arithmetic units is set as many as the number of columns of the parity check matrix has been described.
  • the number of column arithmetic units smaller than the number of columns of the parity check matrix is provided. Installed, they perform time-sharing processing, and process all columns.
  • FIG. 10 shows the configuration of the error correction decoding apparatus according to the present embodiment.
  • FIG. 10A illustrates an example of a parity check matrix and which column arithmetic unit and which row arithmetic unit process a column and a row of the parity check matrix.
  • column computing unit # 11 and column computing unit # 2 12 row computing unit # 1, 21, row computing unit # 2, 22, row computing unit # 3 23, row computing unit # 4 24,
  • the row computing unit # 5 25 and the row computing unit # 6 26 are shown as an example, the wiring existing between each column computing unit and the row computing unit is illustrated, and the input / output relationship of data is indicated by arrows.
  • the column operation unit # 1 11 performs column operations for the first to third columns from the left, and the column operation unit # 2 12 performs column operations for the fourth to sixth columns by one time division. It shows that it is done one by one.
  • the column computing unit # 1 11 has the row computing unit # 1, 21, row computing unit # 2, 22 and row computing unit # 4 24 according to the elements of the parity check matrix. Are connected to the row computing unit # 5 25 and the row computing unit # 6 26. That is, all the row computing units to which the column computing units # 1 to # 3 in FIG. 3 are connected and the column computing unit # 1 in FIG. 10 have wiring.
  • wiring from the row operation unit to the column operation unit can be shared by those having different column numbers.
  • the column computing unit # 1 performs column processing for one column at a certain unit time, and therefore the input signal from the row computing unit may be one column.
  • column operator # 1 11 and row operator # 6 26 exchange data in any of columns 1, 2, and 3.
  • the data processed simultaneously by column operator # 1 11 is 1 Since it is for columns, wiring can be shared, and the wiring shown in FIG. 10 can be simplified to one.
  • the column calculator # 1 402 performs column processing on a predetermined column at a predetermined time.
  • the configuration of the row arithmetic unit is as follows.
  • FIG. 11 shows the configuration of the error correction decoding apparatus according to the present embodiment.
  • the row computing unit #x 414 is connected to the column computing unit # 1 402, the column computing unit #i 403, or other column computing units. To do. Each column computing unit is also connected to a row computing unit other than the row computing unit #x 414, and the connection relationship is determined by the parity check matrix as described above.
  • the row computing unit #x 414 includes an “absolute minimum value and quasi-minimum value calculation unit 415”, an “arithmetic operation processing unit 116”, and a “selector 417”. , “Storage unit 418”, “calculation processing unit 2 419 accompanying approximation”, and “subtraction units 420 and 421”.
  • the column calculator # 1 402 performs column processing on a predetermined column at a predetermined time.
  • column processing from column 1 to column i is performed.
  • Control of which column is to be subjected to column calculation is performed from the outside, and the row LLR ⁇ r, c and the reception LLR ⁇ c may be appropriately selected and input to the column calculator 401 at an appropriate timing.
  • the output estimated bits b c are stored in an appropriate order in a storage device such as a buffer memory installed outside.
  • Column calculator # 2 403 also performs the same processing as column calculator # 1 402.
  • the absolute value minimum value and quasi-minimum value calculation unit 415 calculates the column LLR z x, p , z x, q input from the subtraction units 420 and 421 and the minimum value and quasi-minimum value stored in the storage unit 418. As the input, a new minimum value and quasi-minimum value are calculated and output to the arithmetic processing unit 116 and the storage unit 418 associated with the approximation. This is a measure for sequentially processing the minimum value and the quasi-minimum value of the absolute value because the column operation process is a time division process.
  • p and q indicate column numbers of column processing performed by the column calculator # 1 402 and the column calculator # 2 403. That is, p is any one from 1 to i, and q is any one from j to k.
  • the selector 417 calculates and outputs an output value (row LLR ⁇ x, c ) to each column calculator #c 402, 403 with respect to the output of the arithmetic processing unit 116 accompanying approximation. Due to the time division processing performed by the column operation, the time data is not always output to all of the column operation units #c 402 and 403 connected to the selector 417.
  • the selector 417 performs selection so that 0 is output to a connection line to a column calculator that does not require output.
  • the selector 417 calculates the positive / negative sign by the expression (11) with respect to the output of the arithmetic processing unit 116 accompanying the approximation, and then (8) to (8) 10)
  • the row LLR to be output to the column calculator is calculated as in any of the formulas, etc., and the calculated row LLR is selected and output to the appropriate column calculator.
  • the sign calculation of the expression (11) may be performed at other parts.
  • the minimum value and the quasi-minimum value at the previous calculation calculated by the absolute value minimum value and the quasi-minimum value calculation unit 415 are stored, and the absolute value minimum value and the quasi-minimum value are stored.
  • the stored minimum value and quasi-minimum value are output to the value calculation unit 415 and the arithmetic processing unit 2 419 accompanying approximation.
  • the absolute value minimum value and quasi-minimum value calculation unit 415 is stored in the storage unit 418 within a range in which ⁇ ′ x, p and ⁇ ′ x, q used in the subtraction units 420 and 421 can be calculated. Update the minimum and quasi-minimum values.
  • ⁇ ′ x, p and ⁇ ′ x, q used in the subtraction units 420 and 421 must be the same value as ⁇ x, p and ⁇ ′ x, q previously output from the row calculator #x 414. Therefore, if the minimum value and the quasi-minimum value of the storage unit 418 are constantly updated, ⁇ ′ x, p and ⁇ ′ x, q may not be appropriately calculated due to the time difference.
  • the arithmetic processing unit 2 419 associated with the approximation calculates a row LLR ⁇ ′ x, p , ⁇ ′ x, q and the like based on the minimum value and the quasi-minimum value output from the storage unit 418.
  • p and q indicate the column number of the column processing performed by the column calculator # 1 402 or the column calculator # 2 403, and ⁇ ′ x, p , ⁇ corresponding to the column processing performed at that time.
  • ⁇ ′ x, p , ⁇ ′ x, q and the like is performed in the same manner as the arithmetic processing unit 1116 associated with the approximation.
  • the arithmetic processing unit 2 419 associated with the approximation also has a part of the function of the selector 417, and selects and outputs the calculated ⁇ ′ x, 1 , ⁇ ′ x, i and the like to the appropriate subtracting unit 220. It also has a function and a positive / negative sign calculation function based on equation (11).
  • this is a case where the matrix element of the parity check matrix becomes 0 in the row of the parity check matrix to which the row calculator #x 414 corresponds and the column in which the column calculator # 1 402 performs column calculation at a certain time.
  • the subtraction unit 420 fixes the output value to a predetermined large value regardless of the input value. Since the bit width is determined for each data in the circuit, the maximum value (positive value) corresponding to the bit width may be output. By outputting the maximum value, the absolute value minimum value and quasi-minimum value calculation unit 415 in the next stage is automatically ignored.
  • any number of column computing units may be connected to the row computing unit #x 414, and the present embodiment can be configured without using two as shown in FIG.
  • the number of connected column arithmetic units the number of subtracting units installed and the processing of other units differ, but those skilled in the art can easily assume the contents described above.
  • the number of column calculators can be reduced by performing column calculation processing in a time-sharing manner, and the circuit scale can be reduced.
  • the following configuration is also possible.
  • the subtraction unit 402 determines that z p and Equivalent calculation is possible by adding - ⁇ ' x, p . The same holds true for the first and second embodiments.
  • the configuration shown in the embodiment is only an example, and the configuration of the present invention can be performed by performing equivalent calculations. Even in such a case, the effect of improving the wiring complexity and the effect of reducing the circuit scale can be obtained.
  • the row arithmetic unit #x that performs time-division processing for row arithmetic processing is configured as shown in FIG. 9 (when column arithmetic processing is not time-divisional) or FIG. 11 (when both column arithmetic processing and row arithmetic processing are time-divisional processing).
  • the connection relation between the row computing unit #x and the column computing unit is in accordance with the correspondence between a plurality of rows on which the row computing unit #x performs time division processing and the position of 1 in the parity check matrix.
  • the storage unit needs a larger storage capacity than the configurations of FIGS.
  • the increase in storage capacity is an increase per row arithmetic unit, and the total storage capacity considering all the row arithmetic units is equivalent to the configuration of FIG. 9 or FIG.
  • the wiring complexity can be improved by the common wiring as in the case of the time division processing of the column operation processing.
  • the number of row arithmetic units can be reduced, and the circuit scale can be reduced.
  • the more the plurality of columns in which each column arithmetic unit performs the time division processing includes more matrix elements 1 in the same row, the more wiring can be shared and the wiring complexity can be reduced. Can be improved.
  • a parity check matrix is regular, and a set of columns in which a plurality of columns include many matrix elements 1 in the same row can be easily found. In other words, it is possible to efficiently assign a column for which each column arithmetic unit performs time division processing, and it is possible to share many wirings and improve wiring complexity.
  • the parity check matrix of the spatially coupled LDPC code can use the regularity to efficiently allocate the rows for which each row arithmetic unit performs time division processing.
  • the wiring complexity can be improved by sharing many wirings.
  • the same effects as those of the first and second embodiments can be obtained, and in the present embodiment, the number of columns smaller than the number of columns of the parity check matrix can be obtained. Since column calculators are installed and they perform time-sharing processing for all columns, wiring from the row calculator to the column calculator can be shared, reducing wiring complexity. In addition to the improvement, the number of column computing units can be reduced, and the circuit scale can be reduced.

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

 誤り訂正復号装置は、LDPC符号の検査行列の列と行とにそれぞれ対応して設けられた列演算器201および行演算器211~213とを備え、列演算器201は、受信系列の受信LLR(対数尤度比)と行演算器211~213から行LLRが入力され、受信系列の受信LLRと行演算器211~213からの行LLRとの合計値z1を算出し、行演算器211~213は、前回演算時に得られた行LLRまたは列LLRに関する演算結果を保持し、列演算器201から入力された合計値と保持された演算結果とを用いて列LLRを算出し、算出された列LLRから行LLRを算出して列演算器201へ出力する。

Description

誤り訂正復号装置
 この発明は、誤り訂正復号装置に関し、特に、低密度パリティ検査符号(Low-Density Parity-Check符号;以下、LDPC符号と称す。)で符号化された受信系列の復号を行う誤り訂正復号装置に関する。
 LDPC符号は、図1に一例を示すように、1の数が疎の(すなわち、行列要素の大部分が0で、1の個数が全体に対して少ない)パリティ検査行列で定義される線形符号である。このとき、図2のように、パリティ検査行列のサイズをm×n行列(ここで、m<n)とすると、LDPC符号の符号長はn、パリティ検査行列のランク(階数)がパリティビット長mとなる。パリティ検査行列がフルランク(階数と行数が一致)の場合、パリティビット長はmとなり、情報系列長はn-mとなる。
 LDPC符号を復号する復号法の代表的なものに、例えば特許文献1に記載のように、Sum-Product復号法がある。Sum-Product復号法では、受信信号(受信系列)の確率的な信頼度情報として対数尤度比(Log Likelihood Ratio;以下、LLRと称す。)を算出しながら繰り返し演算を行うことで復号を行う。Sum-Product復号法は列演算と行演算と呼ばれる二つの演算化からなり、それぞれパリティ検査行列の列と行に対応する。回路等で実装するとき、列演算や行演算を行う部分は、列演算器および行演算器と呼ばれるが、それぞれ、ビットノードおよびチェックノードと呼ばれることもある。
 Sum-Product復号法の具体的な演算について説明する。受信系列から符号長分ビットそれぞれに対して計算される受信対数尤度比(以下、受信LLRと称す。)を入力とし、行演算と列演算の2つの演算を交互に繰り返すことで復号演算を行う。
 行演算では、パリティ検査行列のr行目の要素が1である列番号の集合をN(r)とおいたとき、N(r)に含まれる各列cに対して次の(1)式によって行LLR εr,cを計算する。(1)式右辺のzr,c'は、後に説明する列演算で計算される列LLRであるが、Sum-Product復号法における繰り返し1回目においては、列cに対応する受信LLR λcが代入される。
Figure JPOXMLDOC01-appb-M000001
 (1)式右辺に現れる各演算記号の定義は以下の通りである。
Figure JPOXMLDOC01-appb-M000002
Figure JPOXMLDOC01-appb-M000003
Figure JPOXMLDOC01-appb-M000004
Figure JPOXMLDOC01-appb-M000005
 次に、列演算について説明する。ここでは、パリティ検査行列の列cの要素が1である行の集合をM(c)とする。列演算は、行演算で求めた行LLR εr,c'に対し、次の(6)式によって列LLR zr,cを計算する。
Figure JPOXMLDOC01-appb-M000006
 また、送信ビットbcの推定(LDPC符号の復号結果の算出)を(7)式によって行う。(7)式の結果、zcが0以上であれば、受信系列のcビット目bcを1、zcが0より小さければbc=0とする。
Figure JPOXMLDOC01-appb-M000007
 (6)式で得た列LLRに対して行演算を行い、以降、これらの演算を繰り返し、予め定めた繰り返し回数の上限に達したか、もしくは、推定ビットが符号語(パリティチェックにより判別可能)であれば、推定ビット列bcを出力し復号は終了となる。
 Sum-Product復号法は、(1)式および(2)~(5)式で示した行演算で指数や対数の演算が必要であり、演算量は膨大となる。
 特許文献1、および、他の特許文献の特許文献2では、(1)式を近似演算することにより演算量を削減した復号法がいくつか記載されている。代表的な近似方法として、(1)式の代わりに、次の(8)式を用いるMin-sum復号法がある。
Figure JPOXMLDOC01-appb-M000008
 Min-sum復号法は、(8)式のようにしてzr,cの絶対値の最小値を算出することで、(1)式で現れた指数や対数からなる演算を近似している。
 しかしながら、Min-sum復号法は近似精度が粗くSum-product復号法と比べて復号性能の劣化が大きい。そのため、Min-sum復号法よりわずかに演算量が大きいものの、復号性能が改善する復号法が考案されており、その一つが下記の(9)式で(1)式を置き換えるOffset BP-based復号法である。
Figure JPOXMLDOC01-appb-M000009
 Offset BP-based復号法では、Min-sum復号法と同様に最小値を演算し、その後にαを最小値から減算する。αは定数であり、予め密度発展法などで求めておく。Min-sum復号法と比べ減算を追加するだけであり、演算量の増分は小さいが、復号性能が大きく改善される。
 また、Offset BP-based復号法と同様にMin-sum復号法より復号性能が高い復号法としてNormalized Min-sum復号法((10)式)や、δ-min復号法(例えば、非特許文献1参照)があり、特許文献2にはOffset BP-based復号法のαを最小値に従って可変とする復号法が示されている。
Figure JPOXMLDOC01-appb-M000010
 前記で説明したSum-product復号法の近似演算からなる復号法は、いずれもzr,cの絶対値の最小値やそれに準ずる値(以下、準最小値と称す。)に対して何らかの低演算量な処理を行い、その結果を行LLR εr,cとするものである。
 Sum-product復号法、および、Sum-product復号法の近似演算からなる復号法を回路で実装する場合、列演算を行う列演算器と行演算を行う行演算器をそれぞれパリティ検査行列の列数、行数の分だけ実装する。図3のように、列演算器と行演算器はパリティ検査行列の各列および各行にそれぞれ対応して実装され、行列内の各1に対し、その列と行との間で配線が行われてデータの入出力を行う。例えば、図3(a)のパリティ検査行列の4行目、2列目の行列要素は1であり、従って、図3(b)のように行演算器#4と列演算器#2の間に配線がなされる。同様に、パリティ検査行列の行列要素が1のところでは、その列の列演算器とその行の行演算器との間で配線が行われる。
国際公開第2006/059688号パンフレット 特開2011-4229号公報
阪井塁,松本渉,吉田英夫,「LDPC符号の簡易復号法とその離散化密度発展法」,電子情報通信学会,2007年2月,電子情報通信学会論文誌A,第J90-A巻,2号,p.83-91
 従来のLDPC符号の復号回路は、列演算を行う列演算器と行演算を行う行演算器との間の配線がパリティ検査行列の1の位置に従って配線され、1の数が多い場合には配線が多くなるという問題点があった。また、パリティ検査行列の1の位置は基本的に不規則であり、配線が複雑になるという問題点があった。
 この発明は上記のような問題点を解決するためになされたもので、配線数を減らし、配線複雑さを緩和することで、LDPC符号の復号回路の実装性を向上することが可能な、誤り訂正復号装置を得ることを目的とする。
 この発明は、LDPC符号で符号化された受信系列を復号するための誤り訂正復号装置であって、前記LDPC符号の検査行列の列と行とにそれぞれ対応して設けられた列演算器および行演算器とを備え、前記列演算器は、前記受信系列の受信LLR(Log-Likelihood Ratio:対数尤度比)が入力されるとともに前記行演算器から行LLRが入力され、前記受信系列の前記受信LLRと前記行演算器からの前記行LLRとの合計値を算出し、前記行演算器は、前回演算時に得られた行LLRまたは列LLRに関する演算結果を保持し、前記列演算器から入力された前記合計値と保持された前記演算結果とを用いて列LLRを算出し、算出された前記列LLRから行LLRを算出して前記列演算器へ出力する誤り訂正復号装置である。
 この発明は、LDPC符号で符号化された受信系列を復号するための誤り訂正復号装置であって、前記LDPC符号の検査行列の列と行とにそれぞれ対応して設けられた列演算器および行演算器とを備え、前記列演算器は、前記受信系列の受信LLR(Log-Likelihood Ratio:対数尤度比)が入力されるとともに前記行演算器から行LLRが入力され、前記受信系列の前記受信LLRと前記行演算器からの前記行LLRとの合計値を算出し、前記行演算器は、前回演算時に得られた行LLRまたは列LLRに関する演算結果を保持し、前記列演算器から入力された前記合計値と保持された前記演算結果とを用いて列LLRを算出し、算出された前記列LLRから行LLRを算出して前記列演算器へ出力する誤り訂正復号装置であるので、配線数を減らし、配線複雑さを緩和することで、LDPC符号の復号回路の実装性を向上することができる。
低密度パリティ検査行列の一例を示した図である。 m×n行列で構成されたパリティ検査行列の一例を示した図である。 従来の列演算器と行演算器との配線の一例を示した図である。 この発明の実施の形態1に係る誤り訂正復号装置の構成を示した構成図である。 従来の列演算器の演算例を示した図である。 従来の行演算器の演算例を示した図である。 この発明の実施の形態1に係る誤り訂正復号装置における列演算器の演算例を示した図である。 この発明の実施の形態1に係る誤り訂正復号装置における行演算器の演算例を示した図である。 この発明の実施の形態2に係る誤り訂正復号装置における行演算器の演算例を示した図である。 この発明の実施の形態3に係る誤り訂正復号装置における行演算器の演算例を示した図である。 この発明の実施の形態3に係る誤り訂正復号装置における行演算器の演算例を示した図である。
 実施の形態1.
 図4は、この発明の実施の形態1に係る誤り訂正復号装置の構成の一例を示したものである。図4においては、誤り訂正復号装置として、LDPC符号で符号化された受信系列を復号するためのLDPC符号の復号装置(以下、LDPC復号回路100と称す。)を例に挙げて示している。図4に示すように、LDPC復号回路100は、列演算器101と行演算器111とから構成されている。列演算器101および行演算器111は、それぞれパリティ検査行列の列数および行数の数だけ設けられている。
 LDPC復号回路100は、パリティ検査行列の各列cに対応する受信LLR λcを入力とし、当該各列cに対応する推定ビット系列bcを出力する。ここで、各列cとは、上述したように、パリティ検査行列のr行目の要素が1である列番号の集合をN(r)とおいたときに、集合N(r)に含まれる各列のことである。また、受信LLR λcとは、上述したように、列cに対応する受信LLRのことである。
 列演算器101は、複数の列演算器#1,#2,・・・,#nで構成され、それぞれが、パリティ検査行列の各列に対応する。従って、nは、パリティ検査行列の列数である。
 行演算器111は、複数の行演算器#1,#2,・・・,#mで構成され、それおzれが、パリティ検査行列の各行に対応する。従って、mは、パリティ検査行列の行数である。
 列演算器101と行演算器111は予め決められた回数、もしくは、演算途中経過に従って決まる回数だけ、データのやりとりを繰り返し行い、その後、列演算器101が(7)式に基づいて推定ビット系列bcを計算し、出力する。
 この発明は、列演算器と行演算器の演算を従来の構成から変更したものである。従って、この発明の実施の形態1に係る誤り訂正復号装置の説明を行う前に、従来の列演算器および行演算器について説明する。
 まず、図5に従来の列演算器の演算例、図6に従来の行演算器の構成例を示す。
 図5の列演算器101は、例として、パリティ検査行列の要素1の位置に従って、行演算器#1 111と、行演算器#5 112と、行演算器#6 113とに接続されているとする。これらの行演算器111,112,113から出力された行LLR ε1,1、ε5,1、ε6,1を列演算器101は入力とし、上記の(6)式に基づいて演算したz1,1、z1,5、z1,6を、それぞれ、行演算器#1 111、行演算器#1 112、及び、行演算器#1 113に出力する。(6)式の演算結果を具体的に記述したものが、図5に示されているz1,1=λ1+ε5,1+ε6,1、z1,5=λ1+ε1,1+ε6,1、z1,6=λ1+ε1,1+ε5,1である。
 行演算器111、行演算器112、行演算器113では、Sum-Product復号法に従った、上記の(1)式から(5)式に基づいて、各行LLR ε1,1、ε5,1、ε6,1を計算し、列演算器101へ出力する。
 行演算器111,112,113の従来構成例を、行演算器#x 114として、図6に示す。
 図6において、行演算器#x 114は、例として、パリティ検査行列の要素1の位置に従って、列演算器#1 101、列演算器#i 102、列演算器#j 103、列演算器#k 104と接続されているとする。これらの列演算器101~104の構成は、図5に示した列演算器#1 101と基本的に同じ構成とする。行演算器#x 114は、図6に示すように、「絶対値の最小値および準最小値の算出部115」と「近似に伴う演算処理部116」と「セレクタ117」とから構成されている。
 図6の行演算器#x 114は、Min-sum復号法((8)式)、Offset BP-based復号法((9)式)、Normalized Min-sum復号法((10)式)、あるいは、δ-min復号法といった、Sum-product復号法の近似演算からなる復号法に基づく構成を示している。
 絶対値の最小値および準最小値の算出部115は、列演算器#1 101、列演算器#i 102、列演算器#j 103、列演算器#k 104で演算された列LLR zx,1、zx,i、zx,j、zx,kが入力され、それらの絶対値の中から最小値とそれに準ずる値とを算出する。具体的には、絶対値の最小値および準最小値の算出部115は、後段の近似に伴う演算処理部116やセレクタ117でMin-sum復号法((8)式)、あるいは、Offset BP-based復号法((9)式)及びNormalized Min-sum復号法((10)式)等のMin-sum復号法をベースとした復号法の近似を用いる場合には、各入力zx,c、すなわち、入力zx,1,zx,i,zx,j,zx,kの絶対値の中から最小値と2番目に小さい値とを算出する。一方、後段の近似に伴う演算処理部116やセレクタ117でδ-min復号法あるいはそれと同様の近似を用いる場合には各入力zx,c、すなわち、入力zx,1,zx,i,zx,j,zx,kの絶対値の中から最小値、2番目に小さい値、及び、3番目に小さい値を算出する。ただし、最小値から何番目までの小さい値をそれぞれ求めれば良いかは、所望の近似精度に従って自由に決定でき、この発明では限定されるものではない。すなわち、最小値、2番目に小さい値、3番目に小さい値、それより大きい値(以下、これらを準最小値という)を、絶対値の最小値および準最小値の算出部115で算出し、それらの値によって後段の近似に伴う演算処理部116やセレクタ117によって行LLRが算出可能である復号法であれば、いかなる復号法もこの発明に適用することができる。
 近似に伴う演算処理部116は、後段のセレクタ117でOffset BP-based復号法((9)式)やNormalized Min-sum復号法((10)式)、あるいは、δ-min復号法を行う場合に、その前処理として、最小値や2番目の最小値等への各種演算を行う。例えば、Offset BP-based復号法であれば、(9)式における最小値min|zr,c'|からαを減算する演算などである。このように、近似に伴う演算処理部116で前処理を行っておくと、後段のセレクタ117の演算負荷が減り、セレクタ117の回路構成が簡素化される。なお、当然であるが、Min-sum復号法((8)式)と同様の処理を行う場合には、近似に伴う演算処理部116は特に必要ないので、設けなくてもよい。
 セレクタ117は、近似に伴う演算処理部116の出力を用いて、Offset BP-based復号法((9)式)、または、Normalized Min-sum復号法((10)式)、または、δ-min復号法、または、Min-sum復号法((8)式)等のいずれかに従った演算処理を行って、各列演算器#c、すなわち、列演算器#1,#i,#j,#k 101~104への出力値(行LLR εx,c)を算出して出力する。具体的には、近似に伴う演算処理部116の出力に対し、(11)式により正負の符号sgx,cを算出後、(8)~(10)式等のいずれかを用いて、列演算器#1 101,#i 102,#j 103,#k 104へ出力するための行LLR εx,1、εx,i、εx,j、εx,kを算出し、算出した行LLR εx,1、εx,i、εx,j、εx,kを適切な列演算器#1 101,#i 102,#j 103,#k 104に選択して出力する。なお、(11)式の正負の符号算出は他の部位で行ってもよい。
Figure JPOXMLDOC01-appb-M000011
 なお、上記の説明においては、近似に伴う演算処理部116とセレクタ117とを別個に設けるとして説明したが、必ずしもこれに限定されることはなく、これらを一体化させて設けてもよい。以下、近似に伴う演算処理部116とセレクタ117とは、絶対値の最小値および準最小値の算出部115から出力された絶対値の最小値と準最小値とから行LLRを算出するための演算部を構成しているので、これらを纏めた場合、単に、演算部と呼ぶ。
 以上、従来技術について説明したが、以下、この発明の実施の形態1に係る列演算器および行演算器について説明する。
 図7に、この発明の実施の形態1に係る列演算器の構成を示す。
 図7において、列演算器#1 201は、例として、パリティ検査行列の要素1の位置に従って、3つの行演算器、すなわち、行演算器#1 211と行演算器#5 212と行演算器#6 213とに接続されているとする。列演算器#1 201は、復号対象である受信系列の受信LLR λ1が入力されるとともに、これらの行演算器211~213から出力された行LLR ε1,1、ε5,1、ε6,1が入力される。列演算器#1 201は、入力されたそれらの値を用いて、(7)式と同様の演算であるz1=λ1+ε1,1+ε5,1+ε6,1を行って、受信LLRと行LLRとの合計値z1を求め、行演算器#1 211と行演算器#5 212と行演算器#6 213とに当該合計値z1を出力する。本実施の形態では、従来と異なり、列演算器#1 201で(6)式の列LLRを求める演算は行わず、さらに出力もしない。図5の従来の構成と大きく異なる点は、従来の列演算器101では、図5に示すように、接続された行演算器ごとに異なる値(z1,1、z1,5、z1,6)を出力していたが、本実施の形態では、図7に示すように、列演算器201が接続された行演算器211~213に対してすべて同一の値(合計値z1のみ)を出力する点である。これにより、配線の複雑さが大幅に改善され、実装性が向上する。
 行演算器#1 211、行演算器#5 212、行演算器#6 213は、それぞれ、記憶部(図示省略)を有し、列演算器#1 201へ出力した行LLR ε1,1、ε5,1、ε6,1を当該記憶部に記憶しておく。ここで、記憶部に保持されたε1,1、ε5,1、ε6,1を、それぞれ、ε’1,1、ε’5,1、ε’6,1と表すこととする。本実施の形態における行演算器#1 211、行演算器#5 212、行演算器#6 213では、列演算器#1 201から入力された合計値z1から、それぞれの記憶部に保持している、ε’1,1、ε’5,1、ε’6,1を減算することで、列LLR z1,1、z5,1、z6,1を得る。詳細は後述する。
 次に、図8を用いて、本実施の形態に係る行演算器の構成を示す。
 図8に示すように、行演算器#x 214は、例として、パリティ検査行列の要素1の位置に従って、列演算器#1 201、列演算器#i 202、列演算器#j 203、列演算器#k 204と接続されているとする。なお、これらの各列演算器201~204は、行演算器#x 214以外の行演算器とも接続されており、接続関係は前記のとおりパリティ検査行列によって定まる。行演算器#x 214は、「絶対値の最小値および準最小値の算出部115」と、「近似に伴う演算処理部116」と、「セレクタ117」と、「記憶部218」と、「減算部220,221,223,224」とから構成される。「近似に伴う演算処理部116」は、従来の図6と同様のものであるため、ここでは詳細な説明を省略する。図6と大きく異なる点は、本実施の形態では、図8に示すように、記憶部218と減算部220,221,223,224とが追加されたことである。
 絶対値の最小値および準最小値の算出部115では、後述する減算部220,221,223,224から列LLR zx,1、zx,i、zx,j、zx,kが入力され、それらの列LLRの絶対値の中から最小値とそれに準ずる値とを算出する。算出方法については、従来の図6の絶対値の最小値および準最小値の算出部115と同じでよいため、ここでは説明を省略する。
 セレクタ117は、演算処理の内容としては、図6のセレクタ117と同じであるため、ここでは説明を省略するが、図6と異なる点は、図8では、セレクタ117の出力線が、各列演算器201~204だけでなく、記憶部218へも接続されていることである。これらの出力線には、従来構成(図6)で列演算器101~104へと出力していたのと同じ値、すなわち、行LLR εx,cが出力される。具体的には、列演算器#1 201へは行LLR εx,1が出力され、列演算器#i 202へは行LLR εx,iが出力され、列演算器#j 203へは行LLR εx,jが出力され、列演算器#k 204へは行LLR εx,kが出力され、記憶部218へは、行LLR εx,1、εx,i、εx,j、εx,k(以下、纏めて、行LLR εx,cと称す。)が出力される。
 記憶部218は、セレクタ117からの出力、すなわち、行LLR εx,cを保持する。保持した行LLR εx,cの値を、それぞれ、ε’x,cとここでは表記することとする。記憶部218は、セレクタ117から列演算器#1 201に出力されたεx,1が列演算器#1 201で処理された後、行演算器#x 214にz1として入力されるタイミングで、保持している行LLR ε’x,1を、適切に、減算部220へと出力する。同様に、セレクタ117から列演算器#i 202に出力されたεx,iが、列演算器#i 202で処理された後、行演算器#x 214にziとして入力されるタイミングで、記憶部218はε’x,iを、適切に、減算部221へと出力する。他の減算部223,224についても同様である。
 減算部220では、列演算器#1 201から入力された合計値z1からε’x,1を減算するzx,1=z1-ε’x,1の減算処理を行い、列LLR zx,1を算出する。減算部221、減算部223、減算部224も、減算部220と同様の処理を行い、それぞれ、列LLR zx,i(=z1-ε’x,i)、列LLR zx,j(=z1-ε’x,j)、列LLR zx,k(=z1-ε’x,k)を算出する。
 なお、行演算器#x 214に接続される列演算器はいくつであってよく、図8のように4つでなくても、本実施の形態は構成可能である。接続される列演算器の数に応じて、減算部の設置数や他の部の処理は異なるが、本分野の技術者であれば、これまでに説明した内容で容易に想定できる。
 従来の列演算器では、接続された行演算器ごとに異なる値を出力するために、各行演算器への出力値を接続された行演算器の数だけそれぞれ算出していたが、本実施の形態では、行演算器#x 214で、前回演算時の行LLR εx,cを、ε’x,cとして保持して、合計値zcからの減算を行うようにしたので、各列演算器201~204は、それに接続された行演算器へ、同一の値(合計値zcのみ)を出力することを可能としている。本実施の形態によれば、列演算器から行演算器への出力を同一の値としたことにより、配線の複雑さが改善し、実装性が向上する効果がある。
 また、列演算器の出力値をフリップフロップで一旦蓄えて出力する場合、従来列演算器では接続された行演算器それぞれに対して異なる値を出力するために、フリップフロップをそれぞれ設置する必要があったが、本実施の形態では、接続された行演算器へ同一の値を出力するためフリップフロップは1種のみでよい。本実施の形態によれば、フリップフロップ数の削減により、回路規模削減効果が得られる。
 以上のように、本実施の形態においては、LDPC符号で符号化された受信系列を復号するためのLDPC符号の復号装置であって、前記LDPC符号の検査行列の列と行とにそれぞれ対応して設けられた複数の列演算器201~204と複数の行演算器214とを備えている。列演算器201~204は、受信系列の受信LLRが入力されるとともに行演算器214から行LLRが入力され、受信系列の受信LLRと行演算器214からの行LLRとの合計値zcを算出する。また、行演算器214は、前回演算時に得られた行LLRまたは列LLRに関する演算結果を保持し、列演算器201~204から入力された合計値zcと保持された前記演算結果とを用いて列LLRを算出し、算出された前記列LLRから行LLRを算出して前記列演算器へ出力するようにした。こうして、列演算器201~204で、列LLRを求めずに、受信LLRと行演算器214からの行LLRとの合計値zcのみを算出して、すべての行演算器に対して、同一の値(合計値zc)を出力する構成とした。これにより、列演算器と行演算器との間の配線数を減らし、配線複雑さを緩和することで、LDPC符号の復号回路の実装性を向上させることができる。
 また、本実施の形態においては、行演算器214は、前回演算時に列演算器201~204へ出力した前回演算時の行LLRを列ごとに保持する記憶部218と、列演算器201~204から入力される合計値zcから、前記記憶部に保持された前記前回演算時の列ごとの前記行LLRを減算して、列ごとの列LLRを算出する減算部220,221,223,224と、減算部220,221,223,224から出力された列ごとの列LLRの絶対値の中から最小値と準最小値とを算出する絶対値の最小値および準最小値の算出部115と、絶対値の最小値および準最小値の算出部115から出力された絶対値の最小値と準最小値とから行LLRを算出して列演算器へ出力する演算部116,117とを有しているようにした。従来の列演算器では、接続された行演算器ごとに異なる値を出力するために、各行演算器への出力値を接続された行演算器の数だけそれぞれ算出していたが、本実施の形態では、上記のように構成することで、行演算器214で、行LLR εx,cを保持して合計値zcから減算することで、列演算器201~204は接続された行演算器214へ同一の値を出力することを可能としたため、本実施の形態によれば、列演算器から行演算器への出力を同一の値としたことにより、配線の複雑さが改善し、実装性が向上する効果がある。
 さらに、本実施の形態においては、セレクタ117で行う復号処理を、Sum-Product復号法ではなく、Min-sum復号法((8)式)、Offset BP-based復号法((9)式)、Normalized Min-sum復号法((10)式)、または、δ-min復号法などの、Sum-Priduct復号法の近似演算からなる復号法を用いて行うようにしたので、演算量を削減することができるという効果が得られる。
 実施の形態2.
 上述した実施の形態1では、行演算器214が前回演算時の行LLR εx,cを記憶部に保持し、列演算器201~204からの入力に対して減算を行うことで、列演算器201~204が、接続されている行演算器へ同一の値を出力することを可能としたものであるが、行演算器に記憶部218の設置が必要である。本実施の形態では記憶部の設置方法を変えた構成を示す。
 図9に本実施の形態に係る誤り訂正復号装置の行演算器#x 314の構成を示す。
 行演算器#x 314は、パリティ検査行列に基づいて、例えば、列演算器#1 201、列演算器#i 202、列演算器#j 203、列演算器#k 204と接続されているとする。なお、これらの各列演算器は、行演算器#x 314以外の行演算器とも接続されており、接続関係は前記のとおり、パリティ検査行列によって定まる。行演算器#x 314は、「絶対値の最小値および準最小値の算出部115」と、「近似に伴う演算処理部116」と、「セレクタ117」と、「記憶部318」と、「近似に伴う演算処理部2 319」と、「減算部220,221,223,224」とから構成される。
 列演算器#1 201、列演算器#i 202、列演算器#j 203、列演算器#k 204、絶対値の最小値および準最小値の算出部115、近似に伴う演算処理部116、セレクタ117、及び、減算部220~224は、実施の形態1と同様である。実施の形態1と異なる点は、記憶部218の代わりに記憶部318が設けられたことと、近似に伴う演算処理部2 319が追加されたことである。従って、実施の形態1と異なる記憶部318および近似に伴う演算処理部2 319に対し、ここでは説明する。
 記憶部318は、絶対値の最小値および準最小値の算出部115からの出力が保持される。すなわち、記憶部318は、絶対値の最小値および準最小値の算出部115で算出された、減算部220,221,223,224から出力された列LLR zx,1、zx,i、zx,j、zx,kの絶対値の中の最小値および準最小値を記憶する。記憶された最小値および準最小値は演算処理部2 319に入力され、そこで行LLR ε’x,1、ε’x,i等を算出するのに用いられる。
 近似に伴う演算処理部2 319は、記憶部318から出力された最小値および準最小値を基づいて、行LLR ε’x,1、ε’x,i等を算出する。演算方法としては、近似に伴う演算処理部 116と同等の処理を行う。ただし、近似に伴う演算処理部2 319は、セレクタ117の機能も一部有しており、算出したε’x,1、ε’x,i等を適切な減算部220に選択して出力する機能や、(11)式に基づいた正負の符号算出機能も有する。
 なお、行演算器#x 314に接続される列演算器はいくつであってよく、図のように4つでなくても本実施の形態は構成可能である。接続される列演算器の数に応じて、減算部の設置数や他の部の処理は異なるが、本分野の技術者であれば、これまでに説明した内容で容易に想定できる。
 本実施の形態によれば、列演算器への接続数が多い行演算器においても、実施の形態1と比べて記憶部を小さくすることができ、回路規模を削減することができる。
 近似に伴う演算処理部2 319の設置が必要となるが、当該処理部319は、前記の通り、最小値や2番目に小さい値といった数種類の値に対する減算などを行うのみの回路であり、回路規模は他の演算部と比べて小さい。
 また、本実施の形態によっても、従来構成(図6)には無かった記憶部が必要となるが、従来構成においても、回路として成り立たせるためには、記憶部が何処かに必要となる。従来構成において記憶部が設置される箇所は、列演算器や行演算器、もしくはその外部であり、構成の自由度が高いために図6では図示を省略した。本実施の形態やその他の実施の形態で設置される記憶部は、従来構成において設置される記憶部の一部、もしくは全ての役割を備えており、回路規模の増加に大きく寄与するものではない。
 以上のように、本実施の形態によれば、上記の実施の形態1と同様の効果が得られるとともに、本実施の形態においては、絶対値の最小値および準最小値の算出部115で算出された最小値と準最小値だけを記憶部318に記憶するようにしたので、実施の形態1に比べて、記憶部318の記憶容量を小さくすることができ、回路規模を削減することができる。
 実施の形態3.
 上述した実施の形態1,2では、列演算器をパリティ検査行列の列数だけ設置する構成について記載したが、本実施の形態では、パリティ検査行列の列数よりも少ない個数の列演算器を設置し、それらが時分割処理を行って、全列分の処理を行う。
 図10に、本実施の形態に係る誤り訂正復号装置の構成を示す。図10(a)は、パリティ検査行列の一例と、当該パリティ検査行列の列と行を、どの列演算器およびどの行演算器が処理するかを説明している。図10(b)では、列演算器#1 11と列演算器#2 12および、行演算器#1 21、行演算器#2 22、行演算器#3 23、行演算器#4 24、行演算器#5 25、行演算器#6 26が一例として示され、各列演算器や行演算器との間に在る配線を図示し、矢印でデータの入出力関係を表している。
 図10(a)の例では、左から1~3列目の列演算を列演算器#1 11が、4~6列目の列演算を列演算器#2 12がそれぞれ時分割で1列ずつ行うことを示している。この場合には、図10(b)に示すように、列演算器#1 11は、パリティ検査行列の要素に従って、行演算器#1 21、行演算器#2 22、行演算器#4 24、行演算器#5 25、行演算器#6 26とに接続されている。つまり、図3の列演算器#1から#3が接続される行演算器の全てと、図10の列演算器#1は配線を持つことになる。しかし、図示したように、列演算を時分割処理することにより、行演算器から列演算器への配線は、列番号の異なるものどうしで共通化することが可能である。なぜなら列演算器#1は、ある単位時刻においては1列分の列処理を行うため、行演算器からの入力信号も1列分でよいからである。例えば、列演算器#1 11と行演算器#6 26は、列1、2、3のいずれの場合でもデータのやり取りが行われるが、列演算器#1 11で同時に処理されるデータは1列分であるので、配線を共通化でき、図10で3本示す配線は1本に簡略化できる。
 列演算を時分割処理するには、列演算器の入力データを制御して、その時に処理したい列に対応する行LLRを各行演算器から出力すればよい。すなわち、列演算器#1 402は、予め定められた時刻に、定められた列に対する列処理を行う。行演算器の構成は次に示す。
 図11に本実施の形態に係る誤り訂正復号装置の構成を示す。
 図11に示すように、本実施の形態においては、行演算器#x 414は、列演算器#1 402、列演算器#i 403、もしくは、それ以外の列演算器とも接続されているとする。なお、各列演算器は、行演算器#x 414以外の行演算器とも接続されており、接続関係は前記のとおりパリティ検査行列によって定まる。また、図11に示すように、行演算器#x 414は、「絶対値の最小値および準最小値の算出部415」と、「近似に伴う演算処理部116」と、「セレクタ417」と、「記憶部418」と、「近似に伴う演算処理部2 419」と、「減算部420、421」とから構成される。
 列演算器#1 402は、前記で説明したように、予め定められた時刻に、定められた列に対する列処理を行う。ここでは一例として、列1から列iまでの列処理を行うとしている。どの列に対する列演算を行うかの制御は外部から行い、行LLR εr,cと受信LLR λcを適切に選択して適切なタイミングで列演算器401へ入力すればよい。また、出力される推定ビットbcは、外部に設置されるバッファメモリなどの記憶装置に適切な順番で蓄えられる。
 列演算器#2 403も、列演算器#1 402と同様の処理を行う。
 絶対値の最小値および準最小値の算出部415では、減算部420および421から入力される列LLR zx,p,zx,qと記憶部418に蓄えられた最小値および準最小値を入力として、新たな最小値および準最小値を算出し、近似に伴う演算処理部116や記憶部418に出力される。これは、列演算処理が時分割処理であるために、絶対値の最小値および準最小値を逐次的に処理するための措置である。なお、ここで、pやqは、列演算器#1 402や列演算器#2 403で行われる列処理の列番号を示している。すなわち、pは1からiまでのいずれかであり、qはjからkまでのいずれかである。
 近似に伴う演算処理部116の演算処理は、上述の実施の形態1および2と同じであるため、説明を省略する。
 セレクタ417では、近似に伴う演算処理部116の出力に対し、各列演算器#c 402,403への出力値(行LLR εx,c)を算出して出力する。列演算が時分割処理を行う関係上、セレクタ417に接続された列演算器#c 402,403の全てへ常に毎時刻データが出力されるとは限らない。出力の必要のない列演算器への接続線に対しては0を出力するよう、セレクタ417が選択を行う。なお、実施の形態1,2で示したセレクタ117と同様に、セレクタ417は、近似に伴う演算処理部116の出力に対し、(11)式により正負の符号を算出後、(8)~(10)式等のいずれかのようにして列演算器へ出力する行LLRを算出し、算出した行LLRを適切な列演算器に選択して出力する。(11)式の正負の符号算出は他の部位で行ってもよい。
 記憶部418では、実施の形態2と同様に、絶対値の最小値および準最小値の算出部415で算出した前回演算時の最小値および準最小値を蓄え、絶対値の最小値および準最小値の算出部415や近似に伴う演算処理部2 419に対して当該蓄えた最小値および準最小値を出力する。このとき、絶対値の最小値および準最小値の算出部415は、減算部420,421で用いられるε’x,p、ε’x,qが算出可能な範囲で、記憶部418に記憶される最小値と準最小値の更新を行う。このことは、減算部420や421で用いるε’x,pやε’x,qは、以前に行演算器#x 414で出力したεx,pやε’x,qと同値である必要があるため、記憶部418の最小値および準最小値を常に更新すると、時刻の差によってε’x,pやε’x,qが適切に算出できない可能性があるためである。
 近似に伴う演算処理部2 419では、記憶部418から出力された最小値および準最小値を基づいて行LLR ε’x,p、ε’x,q等を算出する。ここで、pやqは、列演算器#1 402や列演算器#2 403で行われる列処理の列番号を示しており、その時刻で行う列処理に対応するε’x,p、ε’x,q等を算出し、減算部420や421へ出力する。ε’x,p、ε’x,q等の算出は近似に伴う演算処理部1 116と同等の処理を行う。ただし、近似に伴う演算処理部2 419は、セレクタ417の機能も一部有しており、算出したε’x,1、ε’x,i等を適切な減算部220に選択して出力する機能や、(11)式に基づいた正負の符号算出機能も有する。
 減算部420では、列演算器#1 402から入力されたzp(=z1~zi)から、近似に伴う演算処理部2 419から入力された行LLR ε’x,pを減算する処理を行い、zx,p=zp-ε’x,pを算出し出力する。なお、列演算が時分割処理を行う関係上、列演算器#1 402から行演算器#x 414へ常に有意なデータが出力されるとは限らないことがある。すなわち、行演算器#x 414が対応するパリティ検査行列の行と、列演算器#1 402がある時刻で列演算する列とにおいて、パリティ検査行列の行列要素が0となる場合である。この場合、減算部420では、出力値を入力値によらず所定の大きな値に固定する。回路においては各データにビット幅が定められるため、ビット幅に応じた最大値(正の値)を出力すればよい。最大値を出力することで、次段の絶対値の最小値および準最小値の算出部415では自動的に無視されることとなる。
 減算部421も同様である。
 なお、行演算器#x 414に接続される列演算器はいくつであってよく、図11のように2つでなくても本実施の形態は構成可能である。接続される列演算器の数に応じて、減算部の設置数や他の部の処理は異なるが、本分野の技術者であれば、これまでに説明した内容で容易に想定できる。
 上記の構成によれば、列演算処理を時分割で行うことで、行演算器から列演算器への配線を共通化することができ、配線複雑さを改善することができる。
 また、列演算処理を時分割で行うことで列演算器の数を減らすことができ、回路規模を削減することができる。
 上記において、図11を用いて、行演算器#x 414内部の構成を説明したが、この発明の範囲は必ずしもこの構成に限ってはいない。例えば、減算部420では列演算器#1 402から入力されたzp(=z1~zi)に対し、近似に伴う演算処理部2 419から入力された行LLR ε’x,pを減算する処理を行うと説明したが、次のような構成も可能である。すなわち、近似に伴う演算処理部2 419において、行LLR ε’x,pの正負を反転した-ε’x,pを減算部402に出力することにすれば、減算部402では、zpと-ε’x,pの加算を行うことで同等の演算が可能である。同様のことが実施の形態1や実施の形態2でも成り立つ。
 その他に、(11)式に基づく正負の符号sgx,cの算出は、毎回、(11)式を計算する必要はなく、(12)式の算出結果syncを保持しておき、syncに対し、sgn(zx,c)を乗算することでも行える。また、sgn(zx,c')=+1を0、sgn(zx,c')=-1を1として、それぞれ1ビットで表現すれば、sgn(zx,c')の乗算は排他的論理和で同等の演算となる。同様のことが実施の形態1や実施の形態2でも成り立つ。
Figure JPOXMLDOC01-appb-M000012
 これらの例のように、実施の形態で示した構成は一例でしかなく、同等の演算を行うことで、この発明の構成は可能となる。その場合でも、配線複雑さを改善する効果や、回路規模削減の効果を得ることができる。
 また、本実施の形態に類似した構成として、行演算処理を時分割処理する構成がある。行演算処理を時分割処理する行演算器#xは、図9(列演算処理を時分割にしない場合)もしくは図11(列演算処理と行演算処理の双方を時分割処理する場合)の構成とわずかの違いを除いて同様であるが、行演算器#xが時分割処理を行う複数の行とパリティ検査行列の1の位置の対応に従って行演算器#xと列演算器の接続関係が異なる。また、記憶部は行演算器#xで処理を行う行数分だけ、図9や図11の構成よりも大きな記憶容量が必要となる。ただし、記憶容量の増加は行演算器一つあたりにおける増加であり、全行演算器を考慮した記憶容量の総和は、図9や図11の構成と同等である。
 この場合でも列演算処理を時分割処理するのと同様に、配線の共通化によって配線複雑さを改善することができる。また、行演算器の数を減らすことができ、回路規模を削減することができる。
 本実施の形態における列演算の時分割処理では、各列演算器が時分割処理を行う複数の列が同一の行に行列要素1を多く含む程、配線を多く共通化でき、配線複雑さを改善することができる。特に、空間結合LDPC符号と呼ばれるLDPC符号の一種ではパリティ検査行列が規則的であり、複数の列が同一の行に行列要素1を多く含むような列のセットを容易に見つけることができる。言い換えれば、各列演算器が時分割処理を行う列の割り当てを効率的に行うことができ、配線を多く共通化可能で、配線複雑さを改善することができる。また、行演算処理を時分割処理する場合でも同様に、空間結合LDPC符号のパリティ検査行列が規則性を用いて、各行演算器が時分割処理を行う行の割り当てを効率的に行うことができ、配線を多く共通化可能で配線複雑さを改善することができる。
 以上のように、本実施の形態によれば、上記の実施の形態1,2と同様の効果が得られるとともに、さらに、本実施の形態においては、パリティ検査行列の列数よりも少ない個数の列演算器が設置され、それらが時分割処理を行って、全列分の処理を行うようにしたので、行演算器から列演算器への配線を共通化することができ、配線複雑さを改善することができるとともに、列演算器の数を減らすことができ、回路規模を削減することができる。

Claims (8)

  1.  LDPC符号で符号化された受信系列を復号するための誤り訂正復号装置であって、
     前記LDPC符号の検査行列の列と行とにそれぞれ対応して設けられた列演算器および行演算器とを備え、
     前記列演算器は、前記受信系列の受信LLR(Log-Likelihood Ratio:対数尤度比)が入力されるとともに前記行演算器から行LLRが入力され、前記受信系列の前記受信LLRと前記行演算器からの前記行LLRとの合計値を算出し、
     前記行演算器は、前回演算時に得られた行LLRまたは列LLRに関する演算結果を保持し、前記列演算器から入力された前記合計値と保持された前記演算結果とを用いて列LLRを算出し、算出された前記列LLRから行LLRを算出して前記列演算器へ出力する
     誤り訂正復号装置。
  2.  前記行演算器は、
     前回演算時に前記列演算器へ出力した前回演算時の行LLRを列ごとに保持する記憶部と、
     前記列演算器から入力される前記合計値から、前記記憶部に保持された前記前回演算時の列ごとの前記行LLRを減算して、列ごとの列LLRを算出する減算部と、
     前記減算部から出力された列ごとの前記列LLRの絶対値の中から最小値と準最小値とを算出する算出部と、
     前記算出部から出力された前記絶対値の最小値と準最小値とから前記行LLRを算出して前記列演算器へ出力する演算部と
     を有している
     請求項1に記載の誤り訂正復号装置。
  3.  前記行演算器は、
     前回演算時に算出された列LLRの絶対値の最小値と準最小値とを列ごとに保持する記憶部と、
     前記列演算器から入力された前記合計値から、前記記憶部に保持された前記前回演算時の前記列LLRの絶対値の最小値と準最小値から算出される行LLRを減算して、列LLRを算出する減算部と、
     前記減算部から出力された前記列LLRの絶対値の中から最小値と準最小値とを算出するとともに、算出した前記絶対値の最小値と準最小値とを前記記憶部に記憶させる算出部と、
     前記算出部から出力された前記絶対値の最小値と準最小値とから前記行LLRを算出して前記列演算器へ出力する演算部と
     を有している
     請求項1に記載の誤り訂正復号装置。
  4.  前記列演算器は、前記LDPC符号の検査行列の複数の列ごとに設けられ、それらの複数の列に対する処理を時分割で1列ごとに行うものであって、
     前記行演算器は、
     前回演算時に算出された列LLRの絶対値の最小値と準最小値とを列ごとに保持する記憶部と、
     前記列演算器から入力された前記合計値から、前記記憶部に保持された前記前回演算時の前記列LLRの絶対値の最小値と準最小値から算出される行LLRを減算して、列LLRを算出する減算部と、
     前記減算部から出力された前記列LLRの絶対値と前記記憶部に記憶された前記列LLRの絶対値の最小値と準最小値の中から、新たな最小値と準最小値とを算出するとともに、当該新たな最小値と準最小値とを用いて前記記憶部に保持された前記絶対値の最小値および準最小値を更新する算出部と、
     前記算出部から出力された前記絶対値の最小値と準最小値とから前記行LLRを算出して前記列演算器へ出力する演算部と
     を有している
     請求項1に記載の誤り訂正復号装置。
  5.  前記演算部は、前記絶対値の最小値と準最小値とからMin-sum復号法に従った演算処理を行って前記行LLRを算出する
     請求項2から4までに記載の誤り訂正復号装置。
  6.  前記演算部は、前記絶対値の最小値と準最小値とからOffset BP-based復号法に従った演算処理を行って前記行LLRを算出する
     請求項2から4までのいずれか1項に記載の誤り訂正復号装置。
  7.  前記演算部は、前記絶対値の最小値と準最小値とからNormalized Min-sum復号法に従った演算処理を行って前記行LLRを算出する
     請求項2から4までのいずれか1項に記載の誤り訂正復号装置。
  8.  前記演算部は、前記絶対値の最小値と準最小値とからδ-min復号法に従った演算処理を行って前記行LLRを算出する
     請求項2から4までのいずれか1項に記載の誤り訂正復号装置。
PCT/JP2014/079602 2013-12-09 2014-11-07 誤り訂正復号装置 WO2015087643A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP14870292.1A EP3082267A4 (en) 2013-12-09 2014-11-07 Error-correction decoding device
US15/037,031 US10103750B2 (en) 2013-12-09 2014-11-07 Error correction decoding apparatus
CN201480066943.2A CN105814799B (zh) 2013-12-09 2014-11-07 纠错解码装置
JP2015552365A JP5971670B2 (ja) 2013-12-09 2014-11-07 誤り訂正復号装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013-253952 2013-12-09
JP2013253952 2013-12-09

Publications (1)

Publication Number Publication Date
WO2015087643A1 true WO2015087643A1 (ja) 2015-06-18

Family

ID=53370958

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/079602 WO2015087643A1 (ja) 2013-12-09 2014-11-07 誤り訂正復号装置

Country Status (5)

Country Link
US (1) US10103750B2 (ja)
EP (1) EP3082267A4 (ja)
JP (1) JP5971670B2 (ja)
CN (1) CN105814799B (ja)
WO (1) WO2015087643A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6605839B2 (ja) * 2015-05-08 2019-11-13 株式会社東芝 復号装置、復号方法及びプログラム
US20190326931A1 (en) * 2018-04-24 2019-10-24 Avago Technologies General Ip (Singapore) Pte. Ltd Low-density parity check decoders and methods thereof
US10826538B1 (en) 2019-06-12 2020-11-03 International Business Machines Corporation Efficient error correction of codewords encoded by binary symmetry-invariant product codes
US11159175B2 (en) * 2019-06-21 2021-10-26 Intel Corporation Non-uniform iteration-dependent min-sum scaling factors for improved performance of spatially-coupled LDPC codes
US11012099B1 (en) 2019-10-29 2021-05-18 International Business Machines Corporation Half-size data array for encoding binary symmetry-invariant product codes
US11063612B1 (en) 2020-03-02 2021-07-13 International Business Machines Corporation Parallelizing encoding of binary symmetry-invariant product codes

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006059688A1 (ja) 2004-12-02 2006-06-08 Mitsubishi Denki Kabushiki Kaisha 復号装置及び通信装置
JP4341646B2 (ja) * 2006-06-14 2009-10-07 住友電気工業株式会社 復号装置
JP2011004229A (ja) 2009-06-19 2011-01-06 Mitsubishi Electric Corp 復号方法及び復号装置
JP4739086B2 (ja) * 2006-04-05 2011-08-03 三菱電機株式会社 誤り訂正復号装置および誤り訂正復号方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7174495B2 (en) * 2003-12-19 2007-02-06 Emmanuel Boutillon LDPC decoder, corresponding method, system and computer program
JP3891186B2 (ja) * 2004-03-22 2007-03-14 住友電気工業株式会社 復号装置および前処理装置
US7127659B2 (en) 2004-08-02 2006-10-24 Qualcomm Incorporated Memory efficient LDPC decoding methods and apparatus
KR101356808B1 (ko) * 2005-05-13 2014-01-28 닛본 덴끼 가부시끼가이샤 Ldpc 부호화 방식에 의한 인코더 및 디코더
CN101248583B (zh) * 2005-07-13 2012-04-18 三菱电机株式会社 通信装置以及解码方法
US8103935B2 (en) * 2005-08-10 2012-01-24 Mitsubishi Electric Corporation Test matrix generating method, encoding method, decoding method, communication apparatus, communication system, encoder and decoder
WO2007088870A1 (ja) * 2006-02-02 2007-08-09 Mitsubishi Electric Corporation 検査行列生成方法、符号化方法、復号方法、通信装置、符号化器および復号器
JP4739089B2 (ja) 2006-04-05 2011-08-03 生活協同組合コープさっぽろ 鮮度情報検出用インジケータホルダ
US20080028282A1 (en) 2006-07-25 2008-01-31 Legend Silicon receiver architecture having a ldpc decoder with an improved llr update method for memory reduction
EP2171857A1 (en) * 2007-07-04 2010-04-07 Nxp B.V. Shuffled ldpc decoding
JP2009100222A (ja) * 2007-10-16 2009-05-07 Toshiba Corp 低密度パリティ検査符号の復号装置およびその方法
JP5631846B2 (ja) * 2011-11-01 2014-11-26 株式会社東芝 半導体メモリ装置および復号方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006059688A1 (ja) 2004-12-02 2006-06-08 Mitsubishi Denki Kabushiki Kaisha 復号装置及び通信装置
JP4739086B2 (ja) * 2006-04-05 2011-08-03 三菱電機株式会社 誤り訂正復号装置および誤り訂正復号方法
JP4341646B2 (ja) * 2006-06-14 2009-10-07 住友電気工業株式会社 復号装置
JP2011004229A (ja) 2009-06-19 2011-01-06 Mitsubishi Electric Corp 復号方法及び復号装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
RUI SAKAI; WATARU MATSUMOTO; HIDEO YOSHIDA: "Simplified decoding method for LDPC code and discretized density evolution method thereof", INSTITUTE OF ELECTRONICS, INFORMATION, AND COMMUNICATION ENGINEERS, FEBRUARY 2007, IEICE JOURNAL A, vol. J90-A, no. 2, pages 83 - 91
See also references of EP3082267A4 *
TOSHINOBU KANEKO ET AL.: "Low Complexity LDPC Decoding Algorithm with Controled LLRs Updated Process", IEICE TECHNICAL REPORT, vol. 106, no. 555, 28 February 2007 (2007-02-28), pages 81 - 86, XP008183591 *

Also Published As

Publication number Publication date
CN105814799B (zh) 2019-03-01
EP3082267A4 (en) 2017-08-16
CN105814799A (zh) 2016-07-27
US10103750B2 (en) 2018-10-16
JPWO2015087643A1 (ja) 2017-03-16
US20160294415A1 (en) 2016-10-06
EP3082267A1 (en) 2016-10-19
JP5971670B2 (ja) 2016-08-17

Similar Documents

Publication Publication Date Title
JP5971670B2 (ja) 誤り訂正復号装置
TWI697000B (zh) 記憶體控制器及快閃記憶體的存取方法
US10425107B2 (en) Partial sum computation for polar code decoding
KR20170020305A (ko) 체크 노드 계산유닛을 관리하는 방법, 장치, 및 상기 방법을 실행하기 위한 소프트웨어
WO2017113507A1 (zh) 一种集合译码方法和集合译码器
US9195536B2 (en) Error correction decoder and error correction decoding method
CN114830134A (zh) 用于解码经编码数据的递归神经网络和系统
JP5631846B2 (ja) 半導体メモリ装置および復号方法
CN107852176A (zh) Ldpc码编码器和译码器
WO2007034870A1 (ja) 復号装置および受信装置
KR20090066336A (ko) 저밀도 패리티 검사 부호의 고속 검사노드 갱신 장치 및 그방법
CN117337432A (zh) 用于使用神经网络对经编码数据进行解码的解码器及系统
CN108141227B (zh) 非二进制ldpc解码器的校验节点和对应的方法
US20160352359A1 (en) Constant hamming weight coding
US9590658B1 (en) High-speed low-power LDPC decoder design
KR101631128B1 (ko) 크기조정 상수를 사용하는 가변 노드 업데이터를 갖는 ldpc 디코더
KR102607761B1 (ko) 극 부호를 이용하는 복호화를 위한 복호 위치 제어 정보 생성 방법 및 장치
TWI657669B (zh) 低密度奇偶檢查碼解碼器及其解碼方法
US11528037B1 (en) Hardware architecture for local erasure correction in SSD/UFS via maximally recoverable codes
TWI523437B (zh) Bch碼編碼與癥狀計算共用設計電路及決定該共用設計電路的方法
US20230104186A1 (en) Verifying data integrity in a receiver
CN111106837B (zh) 一种ldpc译码方法、译码装置及存储介质
CN108512554B (zh) 一种行分层译码结构的带宽优化方法和装置
CN116961823A (zh) 一种数据处理方法及装置
KR101126359B1 (ko) 비씨에이치 디코더, 이를 포함하는 메모리 시스템 및 비씨에이치 디코딩 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14870292

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2015552365

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 15037031

Country of ref document: US

REEP Request for entry into the european phase

Ref document number: 2014870292

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2014870292

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE