WO2007124627A1 - Procédé de construction de codes ldpc, procédé de décodage et système de transmission associé - Google Patents

Procédé de construction de codes ldpc, procédé de décodage et système de transmission associé Download PDF

Info

Publication number
WO2007124627A1
WO2007124627A1 PCT/CN2006/003050 CN2006003050W WO2007124627A1 WO 2007124627 A1 WO2007124627 A1 WO 2007124627A1 CN 2006003050 W CN2006003050 W CN 2006003050W WO 2007124627 A1 WO2007124627 A1 WO 2007124627A1
Authority
WO
WIPO (PCT)
Prior art keywords
matrix
parity check
density parity
low density
constructing
Prior art date
Application number
PCT/CN2006/003050
Other languages
English (en)
French (fr)
Inventor
Huishi Song
Wen Chen
Hongbing Shen
Qinghua Yang
Original Assignee
Timi Technologies Co., Ltd
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 Timi Technologies Co., Ltd filed Critical Timi Technologies Co., Ltd
Priority to US12/226,808 priority Critical patent/US8176383B2/en
Publication of WO2007124627A1 publication Critical patent/WO2007124627A1/zh

Links

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/1148Structural properties of the code parity-check or generator matrix
    • H03M13/118Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure
    • 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

Definitions

  • the present invention relates to a low density parity check code, and more particularly to a method of constructing a low density odd parity code, a decoding method, and a transmission system using a low density parity face code.
  • the Low Density Parity Check (LDPC) code is a class of channel error correction coding schemes that can approximate the Shannon limit.
  • An LDPC code is a special type of linear parity block code whose parity check matrix is "sparse": only a very small number of non-zero matrix elements (for binary codes, non-G elements are element 1), All other elements are 0.
  • Robert Gal lager first proposed the concept of LDPC codes in his doctoral thesis and proposed two iterative decoding algorithms. Therefore, LDPC codes are also called Gal lager codes. Gal lager theoretically pointed out that with an iterative decoding algorithm (or message passing algorithm), the LDPC code can approach the channel capacity with a lower complexity. This is a very significant invention. But in the following thirty years, people have not been able to give enough attention to this invention.
  • the object of the present invention is to provide a low density parity check (LDPC) code which is excellent in error correction performance and has low implementation complexity of a codec for solving the above problems, and the present invention provides a low density structure.
  • LDPC low density parity check
  • the above excellent error correction performance means that the threshold value of the error correction performance of the LDPC code is very close to the Shannon limit, and the error floor is very low.
  • the low complexity mentioned above means that when the encoder and the decoder of the LDPC code are implemented in hardware, the resources for consuming hardware such as storage space and logic units are few, under the premise of satisfying the operation speed.
  • the hardware referred to here includes field programmable gate arrays (FPGAs) and application specific integrated circuits (ASICs).
  • the minimum distance of the code is the minimum distance of the code; for LDPC codes, the minimum ring length (gi rth ) of the code can, to a certain extent, Characterize the error correction performance of the LDPC code.
  • the concept of the minimum ring length of a code will be described in the detailed description of the invention.
  • the low-density parity check matrix can fully characterize the LDPC code, so constructing the LDPC code can only be done by constructing a low-density parity check matrix corresponding to the LDPC code.
  • the low-density parity check matrix referred to here means that the parity check matrix is "sparse": only a very small number of non-zero matrix elements (for binary code, non-zero elements are element 1), other elements are Is 0.
  • a technical solution of the present invention provides a method for constructing a low density parity check code, the method comprising: constructing a low density parity check matrix of a low density parity check code using a fixed pattern; The data sent by the source is divided into blocks, directly or indirectly encoded by the parity check matrix constructed above, to obtain a codeword of a low density parity check code; and a codeword for outputting a low density parity face code.
  • Another technical solution of the present invention provides a decoding method for a parity code, the method comprising: calculating a metric value corresponding to each codeword bit according to a constellation mapping scheme; performing sharding on the metric value; real-time re-generation and A low-density parity check matrix of the same low-density parity check code used by the transmitter, the low-density parity check matrix can be a parity face matrix generated using a fixed pattern; using block metrics and real-time regenerated The parity check matrix performs a decoding operation of the low-density parity check code in an iterative manner, obtains a hard decision form corresponding to the source data of the transmitter, and outputs hard decision data.
  • Yet another technical solution of the present invention provides a transmission system using a low density parity check code, the system comprising a transmitting device and a receiving device, the transmitting device comprising: first entering data sent by a source into a low density parity check A device for encoding by a code encoder, the encoder may employ an encoder of a parity code constructed using a fixed pattern; then enter a randomizer for randomization; then enter the interleaver for interleaving; and finally pass modulation The device that is transmitted to the air.
  • a further technical solution of the present invention provides a transmission system using a low density parity check code, the system comprising a transmitting device and a receiving device, the receiving device comprising: receiving a radio frequency signal from the air, performing down-conversion and filtering, obtaining a device for baseband signal; a device for first sending a baseband signal to a synchronizer to obtain a synchronous starting position; and then intercepting data for performing channel estimation and demodulation operations according to the starting position of the synchronization, all of which are in the demodulator a completed device; then outputting the output data to a device that performs a deinterleaving operation by the deinterleaver; then sending the output data to a device that performs a derandomization operation by the derandomizer; and then sending the output data to the low density parity check code Means for decoding by the decoder; and means for finally transmitting the decoded data to the sink.
  • the construction method and transmission system of the low-density parity check code proposed by the present invention skillfully combine the two methods of the prior art. According to the construction method proposed by the present invention, a parity check matrix of a low-density parity check code excellent in performance, a construction method of a low-density parity check code, and a low-complexity decoding method can be obtained.
  • the invention is illustrated by way of example, and not limitation, and in the An example of a transmitter of an embodiment, the transmitter example of this embodiment employing a low density parity check (LDPC) code;
  • LDPC low density parity check
  • FIG. 2 is a communication system (200) including a transmitter (201), a channel (202), and a receiver (203) employing an LDPC code;
  • FIG. 3 is a communication of FIG. 2, in accordance with an embodiment of the present invention.
  • Figure 4 is an exemplary randomizer (401) and de-randomizer (402) in the communication system of Figure 2;
  • Figure 5 is an exemplary interleaver (501) and deinterleaver (502) in the communication system of Figure 2;
  • Figure 6 is an example of a check matrix of an LDPC code (600);
  • FIG. 7 is a Tanner diagram (700) of the LDPC code of Figure 6;
  • Figure 8 is an exemplary tree diagram (800) of the LDPC code of Figure 6;
  • FIG. 9 is an example of a check matrix of an LDPC code of the present invention, the check matrix (900) including two sub-matrices;
  • Figure 10 is an example of a triangular matrix that can be used for a check matrix
  • Figure 11 is an example of some special forms of triangular matrices that can be used for the proof of risk matrix
  • Figure 12 is an example of a fixed pattern (1200) and an example of a small matrix (UOl)
  • Figures 13A and 13B are two fixed patterns An example of a submatrix
  • 14A, 14B, and 14C constitute an example (1401) ⁇ (1425) of a set (144) of fixed patterns that can be used in the present invention; these fixed patterns are square matrices; Fig. 15 is a sub-structure by fixing a pattern The matrix constructs a low density parity check code generation process;
  • Figure 17 is a graph showing the bit error rate performance of a specific LDPC code of the present invention.
  • Figure 18 is a block error rate performance curve of a specific LDPC code of the present invention.
  • a low-density parity check matrix of the low-density parity check code First constructing a low-density parity check matrix of the low-density parity check code; and dividing the data sent by the source (101) into blocks, directly or indirectly using the parity check matrix constructed above to obtain a low-density parity check code Codeword; and a codeword that outputs a low density parity check code.
  • the construction method of the LDPC code proposed by the present invention constructs a check matrix by using a fixed pattern. Obtaining the check matrix, the LDPC code is obtained. It is noted that the check matrix of the LDPC code is H, and the matrix H of the present invention has the following form:
  • N - M indicates the number of information bits of the LDPC code.
  • the submatrix A or B may be an empty matrix, and at most one submatrix may be an empty matrix.
  • the check matrix H actually contains only one sub-matrix (B or A), which is called a sub-matrix of a fixed pattern.
  • one of the sub-matrices or B) is limited to a square matrix, and since the LDPC code in the present invention is a system code, the sub-matrix is limited to correspond to the face bit sequence
  • Another submatrix ⁇ or person is called a sub-matrix of a fixed pattern, corresponding to the information bit sequence.
  • the sub-matrices A and B are re-divided, one sub-matrix corresponding to the syndrome bit sequence and the other sub-matrix corresponding to the information bit sequence.
  • the sub-matrices corresponding to the check bit sequence may in turn be a variety of triangular matrices or some special form of triangular matrices. This facilitates the specific implementation of the encoder.
  • the construction process of the sub-matrix of the fixed pattern is described below.
  • the sub-matrix of the fixed pattern is constructed, and then combined with another sub-matrix to form a check matrix H of the LDPC code.
  • the degree distribution of the variable node and the constraint node of the LDPC code should be determined first, which is beneficial to the improvement of the error correction performance of the LDPC code.
  • the concepts of variable nodes and constrained nodes will be described in the specific implementation.
  • Constructing a sub-matrix of the fixed pattern, and constructing the low-density parity check code includes the following steps The first step (1501): setting the number of rows and the number of columns of the sub-matrix of the fixed pattern; the second step (1502): selecting a suitable fixed pattern from the set of fixed patterns (1400) to form a sub-matrix of the fixed pattern;
  • Step 5 Set the weight of each small matrix separately
  • Step 10 Determine whether the code attribute satisfies the requirement; if so, the construction process of the low density parity check code ends; if not, go to the second step.
  • the first step may be further interpreted as the number of rows and columns of the sub-matrices of the fixed pattern according to the code rate and the code length of the LDPC code and the specific case of another sub-matrix of the check matrix (whether an empty matrix or a square matrix) number.
  • the principle of selecting a suitable fixed pattern in the second step to form a sub-matrix of a fixed pattern includes the requirements of the degree distribution of the variable node or/and the constraint node, the number of rows of the sub-matrix of the fixed pattern, and the ratio of the number of columns, And a requirement for saving the storage space of the decoder 305; wherein the method for saving the storage space is One is to set the size of the small matrix (1201) to a power of one.
  • the weight of a small matrix is ⁇ ⁇ .
  • the present invention defines that the weight of the small matrix is such that there is at least one row or column within the small matrix, and there are ⁇ non-zero elements in the row or column in the small matrix (for the binary LDPC code, there are ⁇ 1 elements).
  • the weight of different small matrices can be the same or different.
  • the weight of the small matrix can be greater than 0 or equal to 0.
  • the principle of determining the weight of a small matrix is based on the degree distribution of the variable nodes and the constrained nodes. That is to say, the selection of the fixed pattern and the setting of the small matrix weight all use the degree distribution of the variable node and the constraint node.
  • the sixth step can be further explained as if, if the weight of a small matrix is set, then a row or a column is randomly selected within the small matrix, and then the position is randomly selected from the row or the column (ie, correspondingly, ⁇ columns or ⁇ rows), these final matrix positions (where the rows and columns intersect) are the locations of non-Q elements. Simplifiedly, there may be a semi-random manner, that is, the row position or the column position is fixed in advance, and the corresponding column position or row position is randomly selected.
  • a non-zero element extension is defined as a non- ⁇ element that is expanded to L non-zero elements, that is, a new L-1 non-zero element is added. For binary code, it is expanded from 1 element 1 to L element 1.
  • Non-zero element extensions include small matrix expansion and small matrix outer expansion. The so-called small matrix expansion means that the position of all non-zero elements after expansion must be included in the small matrix; and the small matrix outer expansion means that the position of the expanded non-zero elements may not be in the small matrix.
  • the principle of non-zero element expansion is to "expand" all extended non-G elements as much as possible, that is, all elements should be in the same row as much as possible, or the same column. , and the farther the distance the better.
  • cleverly designing the distance between non-zero elements may improve other properties of the LDPC code, such as the location of the wrong floor.
  • Non-zero element extension methods include column expansion, row expansion, and hybrid expansion.
  • Column expansion The method of expanding means that the maximum distance between the two non-zero elements of the extended L non-zero elements in the vertical direction is greater than or equal to the maximum distance between the two non-zero elements in the horizontal direction.
  • the row extension method is defined as the maximum distance between the two non-zero elements of the extended L non-zero elements in the horizontal direction is greater than or equal to the maximum distance between the two non-zero elements in the vertical direction.
  • Hybrid extension refers to a mixture of column extension methods and row extension methods for non-zero element expansion. It should be noted that the above distance is defined as a horizontal distance or a vertical distance; therefore, if the expansion within the small matrix is employed, the distance under the row expansion method and the distance under the column expansion method are equal.
  • Extension method 1 expansion within a small matrix
  • the H matrix column positions of other L-1 non-zero elements are »/ ” X + ( 7 ⁇ .% ⁇ + 1)% , [j 0 /LixL + U 0 %L + 2)%L ⁇ ⁇ , [j a /LixL + (j 0 %L + Ll)%L.
  • the row position is L z . / ” x + ( z '. 0/o + 1 ) % , ..., ⁇ »"" ⁇ + ( 0 % + — 1)% .
  • the symbol % indicates a modulo operation.
  • L-1 non-zero element ⁇ matrix column positions are) / ⁇ ⁇ + , Lj 0 /JJxI + (7 0 %Z + 2)%Z ? ⁇ , lj 0 /LixL + Uo%L + L- ⁇ )%L.
  • line 4 stands L z 'o / ” X + (z'o %L - ⁇ )%L , ⁇ ⁇ . , / ⁇ " x + ( ⁇ 0 %L -L + ⁇ )%L
  • the 11 matrix column positions of other L-1 non-zero elements are ⁇ . """+ °/ + 1)%/ ,
  • the other L-1 non-zero element ⁇ matrix column positions are) / ” X + ( ⁇ 0 / ⁇ + 1) 0 / ⁇ , [j 0 /LixL + (j Q %L + 2)%L ..., Q /LixL + (j 0 %L + Ll)%L .
  • the column position is (.+ )% ⁇ , (/.+2 ⁇ )% ⁇ , ⁇ , (j 0 +(Ll) q)%Q.
  • the row position is ⁇ z. %Z + [I / P" X 5 + JX [(1 + [z'o I Lj)%P / 0 M,
  • the other L-1 non-zero element matrix positions are) /" X + + 1) 0 / ⁇ , [i 0 /LixL + (i 0 %L + 2)%L ⁇ ..., [i 0 /LixL + (i 0 %L + Ll)3 ⁇ 4L .
  • the column position is (/.+)% ⁇ , (y 0 +2x ⁇ )%g 5 ⁇ , (j 0 +(Ll)xp)%Q ⁇ , ⁇ value ⁇ or ⁇ (depending on the number of sub-matrix columns of the fixed pattern), correspondingly, 1 ⁇ ⁇ ⁇ / , and is an integer.
  • the other L - 1 non-zero element ⁇ matrix row positions are L z '. x + ( ⁇ .% +
  • the column position is (7 ⁇ .- (j Q -2xpy/ 0 Q, Uo - (L- ⁇ )xp)%Q a
  • is the value K or ⁇ (depending on the number of sub-matrix columns of the fixed pattern), correspondingly, 1 ⁇ ⁇ , and; ⁇ — ⁇ vuv is an integer.
  • Extension method 8 Small matrix outer expansion and row expansion
  • the H matrix row positions of other L-1 non-Q elements are l ⁇ I" + ('.°/ + l)/ , Li 0 / ”x + ( ⁇ 0 % + 2)%£, ..., + ⁇ i,%L + Ll)%L.
  • the column position is VoL + lVPjxP + Lx [(1 + L; 0 1 Li)%P] ⁇ %Q,
  • the attributes of the LDPC code in the ninth step include at least one of error correction performance of the code, minimum loop length, minimum distance of the code, and error floor.
  • the code words can be punctured and some code word bits can be erased.
  • One way to achieve puncturing is to add a fixed bit sequence to the coded bit sequence, encode it to obtain the codeword, and then destroy the fixed bit sequence in the codeword.
  • the fixed bit sequence can be a full 0 bit sequence or a fixed bit sequence of other modes.
  • the low-density parity check matrix of the low-density parity check code has characteristics, allowing the parameter to fully characterize the low-density parity check matrix.
  • the storage can fully characterize the parameters of the low density parity check matrix to facilitate real-time generation of low density parity check matrices.
  • the low-density parity check matrix of the low-density parity check code has characteristics, which allows the low-density parity check matrix to be fully characterized by various parameters having different expression forms, and the check matrix of the parameter representation of these different expression forms is actually It is the same check matrix. After the column exchange and row exchange of the check matrix, the check matrix can be expressed in the same form.
  • the storage can fully characterize the parameters of the low density parity check matrix to facilitate real-time generation of a low density parity check matrix.
  • Implicit storage can partially characterize low-density parity
  • the mathematical formula of the check matrix is used to generate a low density parity check matrix in real time.
  • the implicit storage mathematical formula does not use storage space to store mathematical formulas, but uses mathematical logic circuits to store mathematical formulas. The use of logic circuits to represent mathematical formulas is well known to those of ordinary skill in the art.
  • the low density parity check code is a linear block code
  • the data to be encoded entering the low density parity code encoder (102) appears in the form of a packet.
  • the encoder (102) of the LDPC code of the present invention can be implemented by using the parity check matrix H of the low density parity check code, or by using the generation matrix G of the low density parity check code. Which method is used depends on the complexity.
  • the generation matrix G of the low density parity check code is obtained from the check matrix. G and H satisfy the following relationship:
  • T matrix transposition and 0 represents all 0 column vectors.
  • G has the following form:
  • I represents an identity matrix
  • P represents a sub-matrix
  • H parity check matrix
  • the process of obtaining the generator matrix from the check matrix is done offline, not in real time by the encoder (102) performing the encoding process.
  • the generator matrix has features that can be fully characterized by parameters.
  • the storage can fully characterize the parameters of the generator matrix to facilitate implementation of the encoder (102).
  • the generator matrix has characteristics, which can be fully characterized by parameters with different representations. The generator matrices of these different representations are actually the same generator matrix. After the column exchange and row exchange of the generator matrix, the generator matrix can be expressed as In the same form, the storage can fully characterize the parameters of the generator matrix to facilitate the implementation of the encoder (102).
  • the parameters consist of numbers and mathematical formulas.
  • the mathematical formula can partially characterize the generator matrix, and the implicit storage can partially characterize the mathematical formula of the generator matrix to facilitate the encoder (102) Implementation. Implicit storage of mathematical formulas to facilitate the implementation of the encoder (102), rather than using storage space to store mathematical formulas, but using mathematical logic circuits to store mathematical formulas.
  • the low density parity check code appears as a system code.
  • the generator matrix and the check matrix can be fully characterized by parameters of different expressions, and the encoders (102) corresponding to the parameters of different representations have different implementation methods and implementation details.
  • the row transformation can be expressed in the form of an identity matrix.
  • the encoder (102) can be implemented by using a calibration matrix of low-density parity codes, and the encoding method includes the following steps:
  • the check matrix is generated in real time by using parameters that can fully characterize the check matrix; the pre-codeword bit sequence and the codeword bit sequence output by the encoder (102) are different except for the check bit values, and the other aspects are the same.
  • the check bits in the codeword bit sequence take the value 0.
  • Both the upper triangular matrix and the lower triangular matrix can be fully characterized by parameters, and the parameters of the upper triangular matrix and the lower triangular matrix can be completely stored to facilitate real-time generation of the upper triangular matrix and the lower triangular matrix.
  • the parameters that can fully represent the upper triangular matrix or the lower triangular matrix have many different expressions, and respectively store parameters that can completely represent the upper triangular matrix and the lower triangular matrix to generate the upper triangular matrix and the lower triangular matrix in real time.
  • the upper triangular matrix or/and the lower triangular matrix may be expressed in the form of an identity matrix.
  • the parameters that completely represent the upper triangular matrix and the lower triangular matrix are composed of numbers and/or mathematical formulas, and the mathematical formulas are stored in the form of mathematical logic circuits to generate the upper triangular matrix and the lower triangular matrix in real time.
  • a matrix is represented by various forms of parameters. For simple example, remembering a matrix, you can store all its elements, or just store the location of its non-zero elements (or elements 1); for example, remember a matrix, you can store its non-G
  • the position of the element can also store the position of each small matrix and the mathematical formula representing the distribution law of non-zero elements in the small matrix, and so on.
  • the set N (“0 ⁇ " indicates a set N other than the bit node” ( m set ⁇ (") ⁇ represents a set ⁇ (") other than the check node M.
  • the message passing decoding algorithm includes the following steps:
  • Iterative processing In each iteration, perform the following three steps.
  • the decoding algorithm for reducing complexity will be described below.
  • the most direct decoding algorithm for reducing complexity is to classify step (1) in the above algorithm, that is, to simplify equations (4) and ( 5 ). It is the following formula (8).
  • an algorithm for reducing the complexity of the decoder is to reduce the number of accesses of the decoder processing unit to the storage space, and to reduce the number and size of the storage space.
  • the reduced complexity decoder consists of a memory space, a memory space, and a block, ") address memory space. These storage spaces are stored in a single block instead of 'on storage, which reduces the amount of storage space. The entire block of storage can effectively reduce the size of the total storage space.
  • the hard decision bit is stored, and when the formula (10) is calculated, the verification of whether the constraint relationship is satisfied is directly performed, that is, the step (3) in the above decoding algorithm.
  • the order of execution of the values is first in the order of the rows of the check matrix, and then in the order of the columns of the check matrix.
  • Equation (10), Equation (11), and Equation (12), store the "value, do not store ⁇ " value, and store the "value.
  • the formula (10) can also adopt other forms of processing formulas having the same function, such as formulas (4) and (5), as long as the value can be obtained.
  • the address execution order of the decoding algorithm represented by the above formulas (9)-(12) is performed first in the order of the check matrix rows, and then in the order of the columns, that is, only the "checksum” with the conventional algorithm Point execution order", and there is no variable node execution order (first in the matrix column, then in the row order).
  • the hard decision bits Q or 1 (that is, positive or negative symbols) are read from the storage space of the value in the order of the variable nodes.
  • the combined form outputs these bit sequences, at least the decision bits of the information bit sequence, and the check bit sequence can be selected for output for use with a turbo (Turbo) demodulator.
  • the above-mentioned complexity-reducing decoding algorithm has two main points in reducing the complexity compared to the conventional decoding algorithm for reducing complexity:
  • Second point Reduce the number of times you access the storage space. Since only the check node processing order is available, many intermediate variables do not need to be stored, thus greatly reducing the number of accesses to the storage space. This is very obvious.
  • the number of columns of the check matrix is preferably a power of 2 or a power of less than 2.
  • the following operational steps are performed in sequence.
  • Send the source (101) The output data first enters the encoder (102) of the LDPC code for encoding; then enters the randomizer (103) for randomization; then enters the interleaver (104) for interleaving; and finally passes through the modulator (105) to the air, etc. step.
  • the LDPC code is a linear block code
  • the data sent from the source (101) needs to be divided into blocks according to the code rate and code length of the LDPC code and the puncturing condition, and then sent to the encoder (102) of the LDPC code for encoding.
  • the modulation scheme of the modulator (105) may be a single carrier technique or a multi-carrier technique such as Orthogonal Frequency Division Multiplexing (OFDM) technology.
  • OFDM Orthogonal Frequency Division Multiplexing
  • the following operation steps are sequentially performed. Receiving radio frequency signals from the air, performing down-conversion and filtering to obtain a baseband signal; first sending the baseband signal to the synchronizer (301) to obtain a synchronous starting position; and then intercepting the data for channel estimation and demodulation according to the starting position of the synchronization And so on, these operations are all done in the demodulator (302); then the output data is sent to the deinterleaver (303) to perform the deinterleaving operation; then the output data is sent to the derandomizer (304) to perform derandomization. Operation; sending the output data to the decoder of the LDPC code (305) for decoding; and finally sending the decoded data to the sink (306).
  • the demodulator (302) is responsible for the implementation of multiple tasks, including tasks such as channel estimation, demodulation, and demapping; specific methods of demapping, especially the binning method, related to specific mapping schemes and constellations; using demapping
  • the metric value corresponding to the codeword bits required for the input data of the decoder (305) of the LDPC code may be obtained, and the metric value may be in the form of a prior probability or a log likelihood ratio (LLR).
  • LLR log likelihood ratio
  • the bit metric value sent to the decoder (305) is also input in the form of a block, thereby initiating the decoding operation of the LDPC code. Comparing the data of the source (1 01 ) and the sink ( 306 ), the bit error rate of the transmission system can be obtained.
  • Figure 1 shows a block diagram of a system transmitter of the present invention. After the encoder of the LDPC code, randomization is performed first, then interleaving is performed, and then modulation is performed. There are several options for randomization.
  • Figure 4 shows an example of a possible solution.
  • the interleaver can also employ a variety of schemes, such as a convolutional interleaver, and Figure 5 shows an example of a convolutional interleaver.
  • the modulation scheme may be a single carrier scheme or a multi-carrier scheme such as Orthogonal Frequency Division Multiplexing (OFDM) modulation.
  • OFDM Orthogonal Frequency Division Multiplexing
  • the innovation of the system of the present invention is that the randomizer is placed after the LDPC code encoder, because the output bit sequence of the encoder of the LDPC code may have a long sequence of Q or 1, and randomization after the encoder is most effective.
  • the method improves the system performance, such as reducing the peak-to-average ratio of the OFDM system.
  • the order of the encoder and the randomizer can also be independent of the LDPC code, and other channel coding schemes can also adopt this sequence.
  • the communication transmission system includes a transmitter, a receiver, and a channel.
  • FIG. 3 is a block diagram of a system receiver of the present invention.
  • the position of the synchronized start data is first obtained by using the synchronizer, and then the position is used for demodulation, channel estimation, demapping, etc., then deinterleaved, de-randomized, and finally LDPC code is performed.
  • the translation operation of the horse obtains the decision form of the information bit sequence.
  • Figure 4 is a possible example of a randomizer and a de-randomizer.
  • the generator polynomial is l + x 3 + x 10 o
  • FIG. 5 is an example of a bit-based convolutional interleaver and a deconvolution interleaver.
  • the storage space of each branch is a multiple of 8 bits.
  • Each storage space is a first-in first-out mobile register group.
  • the interleaver is a bit-based mobile register set
  • the deinterleaver is a FIFO-based first-in first-out move register set.
  • the metric value here is a metric value corresponding to the coded codeword bit generated after demapping, and may be multiple Form, such as log likelihood ratio form, probability form.
  • the mapping scheme is in the form of quadrature phase shift keying (QPSK), or it can be 16-point quadrature amplitude modulation (16-QAM).
  • the demapping scheme is a well-known technique in the art and will not be described here.
  • Fig. 6 is an example of a parity check matrix of an LDPC code.
  • the matrix H has 4 rows and 8 columns.
  • the nodes corresponding to the Donner graph of each row are called constrained nodes, denoted by e ''; the nodes corresponding to each column are called variable nodes, denoted by '.
  • Element 1 in matrix H corresponds to the line between the two types of nodes.
  • FIG. 7 is a Donner diagram corresponding to the check matrix of Figure 6.
  • the Tanner graph consists of two types of nodes, a variable node and a constrained node.
  • the line between the two types of nodes corresponds to element 1 in the calibration matrix.
  • the variable nodes are represented by circles, and the constraint nodes are represented by boxes.
  • two variable nodes connected by dashed lines and two constrained nodes form a ring of length 4, that is, a total of four wires are included.
  • the concepts of Tanner and ring are all general concepts of LDPC codes.
  • Figure 8 is a tree diagram corresponding to Figure 7.
  • the tree diagram is based on the change of the Tanner graph. With a node as ⁇ , the tree and the graph can be obtained by expanding the nodes and connections in the Tanner graph.
  • the dashed line in the figure constitutes a length of 4. ring.
  • the tree diagram is especially useful when calculating the minimum loop length (gir th );
  • the so-called minimum loop length refers to the minimum length of all loops in the Tanner graph corresponding to the check matrix H.
  • Fig. 9 is a view showing the configuration of the face matrix H of the present invention.
  • the check matrix H includes two sub-matrices H and 1 ⁇ . At most one of the two sub-matrices may be an empty matrix. If neither of the sub-matrices is an empty matrix, then one of the sub-matrices is a square matrix. Further, the specific representation of the square matrix may be a triangular matrix, as shown in some special cases in FIG. Further, the triangular matrix may be in some more specific form, as shown in some special cases in FIG. 11, and the like.
  • Figure 12 is an example of a fixed pattern.
  • the fixed pattern can be divided into a plurality of small matrix spaces, wherein the small matrix represented by the black square means that the small matrix contains non-zero elements.
  • the fixed pattern has the following features: The small matrix on the diagonal only contains non-zero elements, and the other spaces do not contain non-zero elements. This is the meaning of the "fixed" example of the fixed pattern.
  • Figures 13A and 13B are two examples of sub-matrices organized by fixed patterns.
  • the sub-matrix represented by (1300A) contains a total of 16 fixed patterns, each of which has a different law.
  • the sub-matrix represented by (1300B) contains a total of 12 fixed patterns.
  • a certain row k on the 0th column of the small matrix is randomly generated, that is, a specific small matrix position (k, 0) of an element 1 in each small matrix is obtained, where 0 ⁇ ⁇ : ⁇ -1.
  • the position of the H matrix of the other L-1 non-zero elements is +1 , Jo +2 ,..., +L ⁇ l -
  • the row position is ( .+ ⁇ )% , ( ⁇ .+ 2 ⁇ )% ⁇ , ..., (.+ (J - 1) ⁇ _ ⁇ )% ⁇ .
  • 16.
  • the attributes of the LDPC code corresponding to the obtained check matrix are evaluated, such as error correction performance, minimum loop length, etc., and the most suitable random number k sequence is selected, and different small matrices may have different random numbers k.
  • Table 1 is the check matrix position of the element 1 on the 0th column of each small matrix corresponding to the left submatrix (arranged by the columns of the matrix). The matrix position of the element 1 on the 0th column of the small matrix of the left submatrix
  • Table 1 is as follows. Table 1 has a total of 16 rows, each row corresponding to a column of small matrices of the pattern shown in (1300A). Table 1 has a total of 4 values per row, corresponding to (1300A) the number of small matrices per column 4. The specific number of Table 1 indicates the check matrix row value ⁇ ' corresponding to the element 1 on the 0th column of the corresponding small matrix. , as the number 42 means ( 1300A ) the upper left corner of the small matrix on the 0th column of the 42nd row has an element value of 1.
  • the construction method and transmission system of the LDPC code proposed by the present invention skillfully combines two methods of constructing a parity face matrix of an LDPC code mentioned in the background art. According to the construction method proposed by the present invention, a parity check matrix of an excellent LDPC code, and a low complexity compiling code implementation method of the LDPC code can be obtained.
  • a main innovation of the transmission system using the LDPC code proposed by the present invention is that the randomized operation is placed after the channel coding operation. This is because the codeword of the LDPC code may contain a long string of bits 0 or a long string of bits 1.
  • a randomization operation module is added after the encoder of the LDPC code in the transmitter to effectively convert the long string bit 0 or the long string bit 1 to facilitate the synchronization function in the receiver. achieve.
  • Performing randomization operations after the encoder can also improve other characteristics of some transmission systems; for example, in a multi-carrier system, the peak-to-average power ratio of the system can be improved.
  • the operation in the receiver is to perform a de-randomization operation, and then perform an LDPC code decoding operation.

Landscapes

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

Description

构造低密度奇偶校验码的方法、 译码方法及其传输系统 技术领域
本发明涉及低密度奇偶校验码, 更具体地说, 涉及构造低密度奇 偶校验码的方法、 译码方法及利用低密度奇偶校臉码的传输系统。 背景技术
1948年, 克劳德 ·仙农(Claude Shannon )开创性地提出了著名 的 "有噪信道编码定理", 指出了有噪信道信息可传输的最大速率, 即 信道容量。 同时, Shannon也推导出了有噪信道的极限传输能力, 即信 息无误传输所需的信噪比最小值, 也称为 Shannon限。 Shannon限是衡 量信道纠错编码能力的最重要指标。纠错编码性能曲线越逼近 Shannon 限, 就表明纠错编码性能越优秀; 反之, 离 Shannon限距离越远, 性 能越差。
低密度奇偶校验 ( LDPC )码是一类能够逼近 Shannon限的性能优 秀的信道纠错编码方案。 LDPC码是一类特殊的线性奇偶校验分组码, 其奇偶校验矩阵是 "稀疏" 的: 只有非常小数目的非 0矩阵元素(对 于二进制码来说, 非 G元素即为元素 1 ), 其它元素都为 0。 1960年, 罗伯特 .加拉格 ( Robert Gal lager )在其博士论文中首次提出了 LDPC 码的概念,并提出了两种迭代译码算法,因此 LDPC码又被称为 Gal lager 码。 Gal lager从理论上指出, 利用迭代译码算法(或消息传递算法), LDPC码能够以较低的复杂度逼近信道容量。 这是一项很重大的发明。 但是在随后的三十多年里, 人们一直未能给予这项发明以足够重视。
现在看来, LDPC码被忽视的原因也许是由于当时的计算机软硬件 水平低下, 人们无法从计算机仿真结果中得知 LDPC码的优异性能; 另 外一种可能的原因是 LDPC码需要较大的存储空间, 这在当时是无法承 受的; 并且当时其它码类如里德一所罗门 (Reed- Solomon )码和汉明 ( Hamming )码等是可用的, 也就是说暂时存在可用的信道编码方案 , 人们就没有刻意地去研究 LDPC码。
但是, 即使在今天, 若希望将 LDPC码应用到实际的通信系统中, 仍然需要认真研究和设计 LDPC码。 由于实际的通信系统对 LDPC码附 加了一些特殊的要求, 如需要低复杂度的编译码器硬件实现方案和优 秀的纠错性能等, 因此除了需要对编译码方法进行深入研究外, 还必 须对 LDPC码的校 -险矩阵构造附加一些特殊的限制。一般说来,构造 LDPC 码的奇偶校验矩阵有两种方法。 一种方法是先对校验矩阵设置一些属 性限制如最小环长或结点度分布等, 再利用计算机搜索方法进行随机 或者类随机生成奇偶校验矩阵。 另一种方法是利用数学公式对 LDPC码 的奇偶校验矩阵进行构造, 使之拥有规律化的结构。 但是这两种方法 都不能使纠错性能以及低复杂度达到令人满意的程度。
发明内容
本发明的目的是为了对解决上述问题, 获得纠错性能优秀, 并且 编译码器的实现复杂度都很低的低密度奇偶校验(LDPC )码, 为此本 发明提供了一种构造低密度奇偶校验码的方法、 译码方法以及利用 LDPC码的一类传输系统。
上述的纠错性能优秀是指 LDPC码的误码纠错性能的门限值非常逼 近仙农(Shannon ) 限, 并且错误地板 ( error f loor ) 非常低。 上述 的复杂度低是指 LDPC码的编码器和译码器采用硬件实现时, 在满足操 作速度的前提条件下, 消耗硬件的资源如存储空间和逻辑单元等都很 少。 这里指的硬件包括现场可编程门阵列 (FPGA ) 和专用集成电路 ( ASIC )等。
表征信道编码方案的纠错性能的一个最重要的参数是码的最小距 离; 对 LDPC码来说, 码的最小环长(gi rth ), 在某种程度上, 也能够 表征 LDPC码的纠错性能。 码的最小环长的概念将在本发明的具体实施 方式中描述。
低密度奇偶校验矩阵可以完全表征 LDPC码, 因此构造 LDPC码仅 仅通过构造 LDPC码对应的低密度奇偶校验矩阵就可以了。 这里所指的 低密度奇偶校验矩阵是指奇偶校验矩阵是 "稀疏" 的: 只有非常小数 目的非 0矩阵元素 (对于二进制码来说, 非 0元素即为元素 1 ), 其它 元素都为 0。
为实现本发明的发明目的, 本发明的一个技术方案提供了一种构 造低密度奇偶校验码的方法, 该方法包括: 利用固定图样构造低密度 奇偶校验码的低密度奇偶校验矩阵; 将信源发出的数据进行分块, 直 接或间接利用上述构造的奇偶校验矩阵进行编码, 获得低密度奇偶校 验码的码字; 和输出低密度奇偶校脸码的码字。
本发明的另一个技术方案提供了一种奇偶校验码的译码方法, 该 方法包括: 根据星座映射方案计算每个码字比特对应的度量值; 对度 量值进行分块; 实时重新生成与发射机采用的相同的低密度奇偶校验 码的低密度奇偶校验矩阵, 该低密度奇偶校验矩阵可以采用利用固定 图样生成的奇偶校脸矩阵; 利用成块的度量值和实时重新生成的奇偶 校验矩阵, 进行迭代处.理方式的低密度奇偶校验码的译码操作, 获得 对应于发射机的信源数据的硬判决形式; 和输出硬判决数据。
本发明的又一个技术方案提供了一种利用低密度奇偶校验码的传 输系统, 该系统包括发射装置和接收装置, 所述发射装置包括: 将信 源发出的数据先进入低密度奇偶校验码编码器进行编码的装置, 该编 码器可以采用利用固定图样构造的奇偶校验码的编码器; 然后进入随 机化器进行随机化的装置; 再进入交织器进行交织的装置; 以及最后 通过调制器传向空中的装置。 本发明的又一个技术方案提供了一种利用低密度奇偶校验码的传 输系统, 该系统包括发射装置和接收装置, 所述接收装置包括: 从空 中接收射频信号, 进行下变频和滤波, 获得基带信号的装置; 先将基 带信号送入同步器获得同步的起始位置的装置; 然后根据同步的起始 位置, 截取数据进行包括信道估计和解调的操作, 这些操作都在解调 器中完成的装置; 然后将输出数据送入解交织器执行解交织操作的装 置; 再将输出数据送入解随机化器执行解随机化操作的装置; 再将输 出数据送入低密度奇偶校验码译码器进行译码的装置; 以及最后将译 码数据送入信宿的装置。
本发明提出的低密度奇偶校验码的构造方法和传输系统巧妙地将 现有技术的两种方法结合起来。 根据本发明提出的构造方法可获得性 能优秀的低密度奇偶校验码的奇偶校验矩阵、 低密度奇偶校验码的构 造方法及低复杂度的译码方法。
附图说明
在附图的各视图中, 借助于实例, 而不是用来限制, 来说明本发 明, 并且在其中, 相同的参考数字指的是类似的元件, 在附图中: 图 1是根据本发明的一个实施例的发射机的示例, 该实施例的发 射机示例采用了低密度奇偶校验 ( LDPC )码;
图 2是根据本发明的一个实施例的通信系统( 200 ), 包括发射机 ( 201 )、 信道( 202 )和接收机 ( 203 ), 该通信系统采用了 LDPC码; 图 3是图 2的通信系统中的示例性的接收机 ( 300 );
图 4是图 2通信系统中的一个示例性的随机化器( 401 )和解随机 化器 ( 402 );
图 5是图 2通信系统中的一个示例性的交织器(501 )和解交织器 ( 502 ); 图 6是一个 LDPC码的校验矩阵示例 ( 600 );
图 7是图 6的 LDPC码的唐纳 ( Tanner ) 图 ( 700 );
图 8是图 6的 LDPC码的示例性的树状图 ( 800 );
图 9是本发明的 LDPC码的校验矩阵示例, 该校验矩阵( 900 ) 包 括两个子矩阵;
图 10是可以用于校验矩阵的三角形矩阵的示例;
图 11是可以用于校险矩阵的某些特殊形式的三角矩阵的示例; 图 12是固定图样的示例 ( 1200 ) 以及小矩阵的示例 (UOl ); 图 13A和图 13B是两个固定图样的子矩阵的示例;
图 14A、图 14B和图 14C组成了可以用于本发明的固定图样的集合 ( 1400 ) 的示例 (1401 ) ~ ( 1425 ); 这些固定图样都是正方形矩阵; 图 15是通过构造固定图样的子矩阵构造低密度奇偶校验码的生成 过程;
图 16是采用逻辑电路表达数学公式的一个示例, 该示例表达的数 学公式是 out=inl+in2;
图 17是本发明的一个具体的 LDPC码的误码率性能曲线; 图 18是本发明的一个具体的 LDPC码的误块率性能曲线。
具体实施方式
下面具体描述本发明的 LDPC码的构造方法以及奇偶校验码的译码 方法。
编码方法:
先构造低密度奇偶校验码的低密度奇偶校验矩阵; 将信源 (101 ) 发出的数据进行分块, 直接或间接利用上述构造的奇偶校验矩阵进行 编码, 获得低密度奇偶校验码的码字; 以及输出低密度奇偶校验码的 码字。 本发明提出的 LDPC码的构造方法利用了固定的图样对校验矩阵进 行构造。 获得了校验矩阵, 就获得了 LDPC码。 记 LDPC码的校验矩阵 为 H, 本发明的矩阵 H具有如下形式:
H = [A | B] ( 1 )
其中, A和 B分别是校验矩阵 H的左子矩阵和右子矩阵,其列数目 分别记为^ '和 ^, 行数目都为 M , 并且 ^ = 是矩阵 H的列数目。 记 = N - M表示 LDPC码的信息比特数目。
子矩阵 A或者 B可以是空矩阵, 并且至多有一个子矩阵可以是空 矩阵。 当子矩阵 A或者 B是空矩阵的情况下, 校验矩阵 H事实上只包 含了一个子矩阵(B或者 A ), 这个子矩阵称为固定图样的子矩阵。 当 子矩阵 A和 B都不是空矩阵的情况下,限制其中一个子矩阵 或者 B ) 为方阵, 并且由于本发明中的 LDPC码是系统码, 该子矩阵被限制为对 应于校脸比特序列; 另一个子矩阵 ^或者人)被称为固定图样的子矩 阵, 与信息比特序列相对应。 或者对校验矩阵 H进行列交换后, 重新 划分子矩阵 A和 B, 其中一个子矩阵对应于校险比特序列, 另一个子矩 阵对应于信息比特序列。
对应于校验比特序列的子矩阵进而可以是多种多样的三角形矩 阵, 也可以是某些特殊形式的三角形矩阵。 这有利于编码器的具体实 现。 下面描述固定图样的子矩阵的构造过程。
构造好了固定图样的子矩阵, 进而和另一个子矩阵合并起来可组 成 LDPC码的校验矩阵 H。在构造 LDPC码的校验矩阵 H之前,应首先确 定 LDPC码的变量结点和约束结点的度分布, 有利于 LDPC码的纠错性 能的改善。 关于变量结点和约束结点的概念, 将在具体实施方式中介 绍。
构造固定图样的子矩阵, 进而构造低密度奇偶校验码包括以下步 第一步 (1501 ): 设置固定图样的子矩阵的行数目和列数目; 第二步( 1502 ): 从固定图样的集(1400)中选择合适的固定图样组 成固定图样的子矩阵;
第三步 ( 1503 ): 设置固定图样中的小矩阵 ( 1201 )的数目和大小; 第四步 ( 1504 ): 判断小矩阵 ( 1201 )的数目和大小是否都为正整 数; 若是, 执行第五步; 若不是, 转到第二步;
第五步 ( 1505 ): 分别设置每个小矩阵的重量;
第六步( 1506 ): 根据每个小矩阵的重量, 分别在每个小矩阵内随 机生成数目等于当前小矩阵的重量的个数的非 0元素, 这些非 0元素 或者在同一行, 或者在同一列;
第七步( 1507 ): 执行非 0元素扩展, 获得扩展后的固定图样的子 矩阵;
第八步( 1508 ): 将预先确定好的另一子矩阵和扩展后的固定图样 的子矩阵合并组成校验矩阵;
第九步( 1509 ): 评估校验矩阵对应的低密度奇偶校验码的属性; 以及
第十步(1510 ): 判断码属性是否满足要求; 若是, 低密度奇偶校 验码的构造过程结束; 若不是, 转到第二步。
其中, 第一步可进一步地解释为根据 LDPC码的码率和码长以及校 验矩阵的另一个子矩阵的具体情况(是空矩阵还是方阵)设置固定图 样的子矩阵的行数目和列数目。 第二步中的选择合适的固定图样组成 固定图样的子矩阵的原则包括变量结点或 /和约束结点的度分布的要 求, 固定图样的子矩阵的行数目和列数目的比例的要求, 以及有利于 节约译码器 305 的存储空间的要求; 其中节约存储空间的实现方法之 一是将小矩阵( 1201 ) 的大小设置为 1的幂次方。
记某个小矩阵的重量为^ ·。 本发明定义小矩阵的重量为小矩阵内 至少存在一行或者一列, 在小矩阵内该行或者该列上有^个非 0元素 (对于二进制 LDPC码来说, 有^个 1元素)。 不同小矩阵的重量可以 相同, 也可以不同。 小矩阵的重量可以大于 0 , 也可以等于 0。 小矩阵 的重量的确定原则是根据变量结点和约束结点的度分布。 也就是说 , 固定图样的选择和小矩阵重量的设置都用到了变量结点和约束结点的 度分布。
第六步可以进一步解释为, 若某个小矩阵的重量被设置成了 那么在小矩阵内随机地选择一行或者一列, 再从该行或者该列上随机 地选择^个位置 (即对应地, ^个列或者^个行), 这些最终的矩 阵位置(行和列交叉处)就是非 Q元素的位置。 简化地, 可有半随机 方式, 即预先固定好行位置或者列位置, 随机地选择对应的列位置或 者行位置。
记小矩阵大小为 L行 L列。 非 0元素扩展定义为由一个非◦元素, 扩展为 L个非 0元素, 即新增 L- 1个非 0元素。 对二进制码来说, 就 是由 1个元素 1扩展为 L个元素 1。非 0元素扩展包括小矩阵内扩展和 小矩阵外扩展。 所谓小矩阵内扩展是指扩展后的所有非 0元素的位置 都一定包含在小矩阵内; 而小矩阵外扩展是指扩展后的非 0元素的位 置有可能不在小矩阵内。
要想获得性能优秀的 LDPC码, 非 0元素扩展的原则是要尽可能地 将所有扩展后的非 G元素 "膨胀" 开来, 即所有元素应尽可能地两两 不在同一行, 或者同一列, 并且距离越远越好。 但巧妙设计非 0元素 之间的距离, 可能会改善 LDPC码的其它属性, 如错误地板的位置等。
非 0元素扩展方法包括列扩展、 行扩展以及混合扩展。 所谓列扩 展方法是指扩展后的 L个非 0元素在垂直方向上的两两非 0元素之间 的最大距离大于或者等于在水平方向上的两两非 0元素之间的最大距 离。行扩展方法定义为扩展后的 L个非 0元素在水平方向上的两两非 0 元素之间的最大距离大于或者等于在垂直方向上的两两非 0元素之间 的最大距离。混合扩展是指混合采用列扩展方法和行扩展方法进行非 0 元素扩展。 需要指出的是, 上述距离定义为水平距离或者垂直距离; 因此, 若采用小矩阵内扩展, 行扩展方法下的距离和列扩展方法下的 距离相等。
下面给出几种具体的非 0元素扩展方法。 记某一个非 0元素的 H 矩阵位置是 (。, ) , 其中 z '。和 。均从 0计数。
扩展方法 1: 小矩阵内扩展
其它 L-1个非 0元素的 H矩阵列位置是 »/ 」 X + (7·。%Ζ + 1)% , [j0/LixL + U0%L + 2)%L ^ ·, [ja/LixL + (j0%L + L-l)%L. 对应地, 行 位置是 Lz,。/x + (z'。0/o + 1)% , ..., ΐ »"」χ + (0% + — 1)% 。 其中, 符号 %表示模操作。
扩展方法 2: 小矩阵内扩展
其它 L-1个非 0元素的 Η矩阵列位置是 )/ 」 Χ +
Figure imgf000011_0001
, Lj0/JJxI + (70%Z + 2)%Z ? ·, lj0/LixL + Uo%L + L-\)%L. 对应地, 行 4立置 Lz'o / 」 X + (z'o %L - \)%L , · · . , / Ζ」 x + (ζ0 %L -L + \)%L
扩展方法 3: 小矩阵外扩展和列扩展
其它 L- 1个非 0元素的 H矩阵列位置是1。"」< + ( '。/ + 1)% ,
+ (j0%L + L-l)%L. 或者, 列位 {L-l) q)%Q.
Figure imgf000011_0002
对应地, 行位置 ^(i0+p)%M ? (z0 +2xp)%M 5 ·.., (ζ·0+( — l)x )% 。其中, \<P<MIL , 且 为整数; 2≤^β, 是整数, β是 ^或^。 扩展方法 4: 小矩阵外扩展和列扩展
其它 L- 1个非 0元素的 11矩阵列位置是^。"」"+ °/ + 1)%/ ,
[j0/LixL + o0/oL + L-l)%L ; 或者, 列位
Figure imgf000012_0001
5 ·.· , Uo +(L-l)xq)%Q. 对应地, 行位置 是 ·ο _ )%Μ, (i0 -2xp)%M ^ ,, (0— ( 一 l)xp)% 。其中, \<P≤MIL , 且 P为整数; w 是整数, β是 ^或 。
扩展方法 5: 小矩阵外扩展和列扩展
其它 L-1个非 0元素的 Η矩阵列位置是 )/ 」 X + (Λ0/ο + 1)0/ο , [j0/LixL + (jQ%L + 2)%L …, Q/LixL + (j0%L + L-l)%L . 或者, 列位 置是 (。+ )%β , (/。+2χ )%β , ··, (j0 +(L-l) q)%Q. 对应地, 行位置 是 {z。%Z + [I / P」 X 5 + J X [(1 + [z'o I Lj)%P /0M,
{z0 % + L2 / P」 x P + x [(2 + [/011_|)%Ρ]}% , …,
feo/oZ + L ( 一 l)/P」xP + x[CL— l + [0/ J)%P〗}%M。 其中, p^MIL - 2≤ ≤β/£ , 是整数, β是 N或 。
扩展方法 6: 小矩阵外扩展和行扩展
其它 L-1 个非 0元素的 Η矩阵行位置是 )/」 X + + 1)0/ο , [i0/LixL + (i0%L + 2)%L ^ …, [i0/LixL + (i0%L + L-l)¾L . 对应地, 列位 置是 (/。+ )%β, (y0 +2x^)%g5 ·, (j0 +(L-l)xp)%Q α 其中, β取值 Κ 或者 Ν (依固定图样的子矩阵列数目而定), 对应地, 1≤ ≤β/ , 且 为整数。
扩展方法 7: 小矩阵外扩展和行扩展
其它 L - 1 个非 0元素的 Η矩阵行位置是 Lz'。 」x + (·。% +
Figure imgf000012_0002
+ (0%Ζ + 2)%Ι ? ,, 」 x + (·。% + -1)0/ο ; 对应地, 列位 置是 (7·。- (jQ -2xpy/0Q, Uo -(L-\)xp)%Q a 其中, β取值 K 或者 Ν (依固定图样的子矩阵列数目而定), 对应地, 1≤ ≤β , 且; ^ — ^ v u v 为整数。
扩展方法 8: 小矩阵外扩展和行扩展
其它 L- 1个非 Q元素的 H矩阵行位置是 l ^I" + ('。°/ + l)/ , Li0/ 」x + (ζ·0% + 2)%£, …,
Figure imgf000013_0001
+ {i,%L + L-l)%L. 对应地, 列位 置是 VoL + lVPjxP + Lx [(1 + L;01 Li)%P]}%Q,
{ 0 %L + l2/PjxP + Lx [(2 + [jo I Li)%P]}%Q , …,
{ 0% 4(Ζ— 1)/Ρ」χΡ + £χ[( — ι40/ _|)%ρ]}%ρ。 其中, β取值 或 者 Ν (依固定图样的子矩阵列数目而定), 对应地, P = QIL
第九步中的 LDPC码的属性包括码的纠错性能、 最小环长、 码的最 小距离和错误地板至少其中之一。
需要指出的是, 为了适配低密度奇偶校验码的码率和码长, 可以 对码字打孔, 打掉一些码字比特。 打孔的一种实现方法是, 先对待编 码比特序列添加固定比特序列, 进行编码获得码字后, 再将码字中的 这些固定比特序列打掉。 固定比特序列可以是全 0 比特序列, 也可以 是其它模式的固定比特序列。
其中, 低密度奇偶校验码的低密度奇偶校验矩阵具有特征, 允许 采用参数完全表征低密度奇偶校验矩阵。 存储可以完全表征低密度奇 偶校验矩阵的参数以便于重新实时生成低密度奇偶校验矩阵。
其中, 低密度奇偶校验码的低密度奇偶校验矩阵具有特征, 允许 采用各种拥有不同表现形式的参数完全表征低密度奇偶校验矩阵, 这 些不同表现形式的参数表征的校验矩阵实际上是同一个校验矩阵, 对 校验矩阵进行列交换和行交换后, 校验矩阵可以表现为相同的形式。 存储可以完全表征低密度奇偶校验矩阵的参数以便于重新实时生成低 密度奇偶校验矩阵。
参数由数字和数学公式组成。 隐含存储可以部分表征低密度奇偶 校验矩阵的数学公式以便于重新实时生成低密度奇偶校验矩阵。 其中 , 隐含存储数学公式不是采用存储空间来存储数学公式, 而是采用数学 逻辑电路来存储数学公式。 利用逻辑电路表示数学公式是本技术领域 一般技术人员都精通的技术。
其中, 由于低密度奇偶校验码是线性分组码, 进入低密度奇偶校 码编码器(102 ) 的待编码数据表现为分组的形式。
应当指出的是, 本发明 LDPC码的编码器(102 )可以利用低密度 奇偶校验码的校验矩阵 H来实现, 也可利用低密度奇偶校验码的生成 矩阵 G来实现。 具体釆用何种方式, 视复杂度而定。 低密度奇偶校验 码的生成矩阵 G是根据校验矩阵获得的。 G和 H满足以下关系:
HGr = 0 ( 2 )
其中, T表示矩阵转置, 0表示全 0列矢量。 并且矩阵 G具有以下 形式:
G = [I | P] ( 3 )
其中, I表示单位矩阵, P表示一个子矩阵, P的具体内容视校验 矩阵 H而定。
根据校验矩阵获得生成矩阵的过程是离线完成的, 不是编码器 ( 102 )执行编码过程中实时完成的。 并且, 生成矩阵具有特征, 可以 采用参数完全表征。 存储可以完全表征生成矩阵的参数以便于编码器 ( 102 )的实现。 生成矩阵具有特征, 可以采用拥有不同表现形式的参 数完全表征, 这些不同表现形式的参数表征的生成矩阵实际上是同一 个生成矩阵, 对生成矩阵进行列交换和行交换后, 生成矩阵可以表现 为相同的形式,存储可以完全表征生成矩阵的参数以便于编码器( 102 ) 的实现。 参数由数字和数学公式组成。 数学公式可以部分表征生成矩 阵, 隐含存储可以部分表征生成矩阵的数学公式以便于编码器(102 ) 的实现。 隐含存储数学公式以便于编码器(102 ) 的实现, 不是采用存 储空间来存储数学公式, 而是采用数学逻辑电路来存储数学公式。
低密度奇偶校验码表现为系统码。 生成矩阵和校验矩阵可以采用 不同表现形式的参数来完全表征, 而不同表现形式的参数对应的编码 器(102 )拥有不同的实现方法和实现细节。 和行变换后可以表现为单位矩阵的形式。
编码器(102 )可以利用低密度奇偶校险码的校¾^矩阵来实现, 编 码方法包括以下步骤:
对校验矩阵进行列变换和行变换; 将列变换和行变换后的校验矩 阵分成两个子矩阵, 分别对应于由编码器(102 )输入比特组成的信息 比特序列和待求解比特组成的校验比特序列; 将信息比特序列和信息 比特序列对应的子矩阵相乘, 获得中间结果; 将校验比特序列对应的 子矩阵进行分解, 获得一个上三角矩阵和一个下三角矩阵; 利用中间 结果、 上三角矩阵和下三角矩阵, 通过迭代处理的方式, 求解获得校 验比特序列; 将信息比特序列和校验比特序列以首尾相连的方式连接 起来, 获得合并比特序列; 对合并比特序列的每个比特按比特位置进 行调整后, 获得低密度奇偶校验码的码字比特序列; 以及输出低密度 奇偶校验码的码字。
其中, 也可以不对校验矩阵进行列变换或者行变换。 校验矩阵是利用可以完全表征校验矩阵的参数实时生成的; 预码字比 特序列和编码器( 102 )输出的码字比特序列除了校验比特取值不同夕卜, 其它方面都相同, 预码字比特序列中的校验比特取值都是 0。
存储中间结果以便于迭代处理的操作。 上三角矩阵和下三角矩阵都可以采用参数来完全表征, 分別存储 可以完全表征上三角矩阵和下三角矩阵的参数以便于实时生成上三角 矩阵和下三角矩阵。 其中, 可以完全表征上三角矩阵或下三角矩阵的 参数拥有多种不同的表现形式, 分別存储可以完全表征上三角矩阵和 下三角矩阵的参数以便于实时生成上三角矩阵和下三角矩阵。 并且, 上三角矩阵或 /和下三角矩阵可以表现为单位矩阵的形式。 其中, 完全 表征上三角矩阵和下三角矩阵的参数由数字和 /或数学公式组成, 以数 学逻辑电路的形式存储数学公式以便于实时生成上三角矩阵和下三角 矩阵。
需要说明的是, 用多种形式的参数表示某个矩阵, 这一点是十分 浅显易懂的。 简单举例说来, 记忆一个矩阵, 既可以把其所有元素存 储下来, 也可仅仅存储其非 0元素(或元素 1 ) 的位置; 再举例说来, 记忆某个矩阵, 既可以存储其非 G元素位置, 也可以存储每块小矩阵 的位置和表示小矩阵内非 0元素的分布规律的数学公式, 等等。
从一个方阵分解为上三角矩阵和下三角矩阵(LU分解) 的方法有 很多种, 本领域的一般技术人员都可以完成。
译码方法:
根据星座映射方案计算每个码字比特对应的度量值; 对度量值进 行分块; 实时重新生成与发射机(100 )采用的相同的低密度奇偶校验 码的奇偶校验矩阵; 利用成块的度量值和实时重新生成的奇偶校验矩 阵, 进行迭代处理方式的低密度奇偶校验码的译码操作, 获得对应于 发射机(100 ) 的信源 (101 )数据的硬判决形式; 以及输出硬判决数 据。
记 LDPC码的校验矩阵为 H = [Η>"·" 。 集合 N(m) = {n '■ Η'"'" = 1}表示与 校验节点"2相邻的所有比特节点,集合 M(") = { : 7i'"," = 1}表示与比特节 点 n相邻的所有校验节点。 集合 N ("0 \ "表示除比特节点"以外的集合 N(m 集合 ^(")\^表示除校验节点 M以外的集合^(")。 消息传递译码 算法包括以下步骤:
初始化: 置2" ',"= ", 其中 z"',"表示从比特节点"传递给校验节点" 2 的消息, "表示接收比特"的对数似然比率 (LLR)。
迭代处理: 在每次迭代中, 执行以下三步。
( 1 )校验节点处的消息更新
Figure imgf000017_0001
其中 L'«'"表示从校验节点 "7传递给比特节点 "的消息
(2) 比特(变量) 节点处的消息更新 z =F + y L
(6)
Figure imgf000017_0002
其中 z"表示比特 "的后验 LLR。
( 3)硬判决和终止准则
• (a)获得判决码字 = ["], 若 z">0, 则2' '=1; 反之, =0
(b)若 Ηέ = 0, 则认为 S是有效的译码码字, 译码过程结束; 若迭 代次数超过了某一预定的最大值,而 仍非有效码字,则声明译码失败, 译码过程结束; 否则, 转至第 (1)步继续执行迭代译码。
下面再描述降低复杂度的译码算法。 最直接的一种降低复杂度的 译码算法是筒化上述算法中的第 (1)步, 即将公式(4)和(5) 简化 为下述公式(8)。
£'","=ax nsgn( ',')x,,,¾\„ . ,
(。 g、 ) 其中, "是一个比例因子, sgn ( -)表示取符号操作, min ( ')表 示取最小值操作。 上述译码算法中, 执行公式(8) 时需要从存储空间 中读取所有相关的^ 值, 执行公式(6) 时需要从存储空间中读取所 有相关的 " "值和 "'' '值。
更进一步地, 一种降低译码器复杂度的算法是减少译码器处理单 元对存储空间的访问次数, 以及降低存储空间的数目和大小。 将公式
(6)、 (7)和 (8)重写如下:
m„ = - L,„„ (9)
Lm,n = « x risgn(z'' ,)x min z
n'eW(m)\«l
(10)
(11 ) =Fn +U„ (12) 降低复杂度的译码器包含一块 ^存储空间, 一块 存储空间, 以 及一块 Ο,")地址存储空间。 这些存储空间分别都以整块存储, 而非 ' 开存储, 从而减少了存储空间的数目。 整块存储可有效减小所占总的 存储空间的大小。 按上述顺序,执行公式( 9 )时从 "存储空间中读取 "值,从 ',"存 储空间中读取 "',"值(对于初始化阶段, L'"'"=0 , 计算获得^',"值, 但 不存储 ζ"',"值, 直接将 ζ'","值用于公式(10) 的计算; 其中, 从 地 址存储空间中读取地址参数,计算行 w对应的列"值, w是按 0、 1、 2、… 的顺序存储的。 同时, 对^" "值进行硬判决, 获得硬判决比特, 同样不 存储硬判决比特, 在计算公式(10 ) 时直接进行约束关系是否满足的 验证, 即上述译码算法中的第 (3 ) 步。 执行 "值的先后顺序是先按 校验矩阵的行顺序, 再按照校验矩阵的列顺序。
接下来, 执行公式(10 )、 公式(11 )和公式(12 ), 存储 "值, 不存储 ^ "值, 存储 "值。
其中, 公式 (10 )也可以采用其它形式的具有同样功能的处理公 式, 如公式(4 )和(5 ), 只要可以获得 值即可。
上述公式 ( 9 )— ( 12 )表示的译码算法的地址执行顺序都是先按 校验矩阵行的顺序执行, 再按列的顺序执行, 也就是说, 仅仅具有传 统算法的 "校验结点执行顺序", 而没有变量结点执行顺序(先按矩阵 列, 再按行顺序处理)。
一旦所有的约束关系满足, 或者最大的迭代次数到达, 就按变量 结点的先后顺序从 ^ "值的存储空间中读取硬判决比特 Q或 1 (即表示正 或负的符号), 以任意组合形式输出这些比特序列, 至少是信息比特序 列的判决比特, 而校验比特序列可以选择输出, 以备循环(Turbo )解 调器之用。
上述降低复杂度的译码算法, 相对于传统的降低复杂度的译码算 法, 降低复杂度的因素主要在于两点:
第一点: 减少了存储空间的数目和大小。
第二点: 减少了访问存储空间的次数。 由于只有校验结点处理顺 序, 又许多中间变量无需存储, 因此大大减少了访问存储空间的次数。 这一点是十分明显的。
进一步, 很明显地, 为了节约译码器的存储空间, 校验矩阵的列 数目最好是 2的幂次方或者略小于 2的幂次方。
在发射机(201 ) 中, 依次进行下述操作步骤。 将信源 (101 )发 出的数据先进入 LDPC码的编码器(102 )进行编码; 然后进入随机化 器 (103 )进行随机化; 再进入交织器(104 )进行交织; 以及最后通 过调制器(105 )传向空中等步骤。 由于 LDPC码是线性分組码, 需先 对信源 (101 )发出的数据按照 LDPC码的码率和码长以及打孔情况进 行分块, 然后送入 LDPC码的编码器(102 )进行编码。 调制器(105 ) 的调制方案可以是单载波技术, 也可以是多载波技术, 如正交频分复 用 ( OFDM )技术等。
在接收机( 203 ) 中, 依次进行下述操作步骤。 从空中接收射频信 号,进行下变频和滤波,获得基带信号;先将基带信号送入同步器( 301 ) 获得同步的起始位置; 然后根据同步的起始位置, 截取数据进行信道 估计和解调等操作, 这些操作都在解调器( 302 ) 中完成; 然后将输出 数据送入解交织器( 303 )执行解交织操作; 再将输出数据送入解随机 化器( 304 )执行解随机化操作; 再将输出数据送入 LDPC码的译码器 ( 305 )进行译码; 以及最后将译码数据送入信宿( 306 )。解调器( 302 ) 负责多项任务的实施, 包括信道估计、 解调和解映射等任务; 解映射 的具体方法, 尤其是筒化方法, 与具体的映射方案和星座图有关; 利 用解映射功能, 可获得 LDPC码的译码器( 305 ) 的输入数据所需的码 字比特对应的度量值, 度量值形式可以是先验概率形式, 也可以是对 数似然比率 (LLR )形式。 同样地, 送入译码器( 305 ) 的比特度量值 也是以分块的形式输入,进而启动 LDPC码的译码操作。对比信源( 1 01 ) 和信宿 ( 306 ) 的数据, 可获得传输系统的误码率。
下面的描述用于有效地构造低密度奇偶校验(LDPC )码, 以及利 用 LDPC码的系统。 在以下的描述中, 为了说明的目的, 将列举许多特 定的细节, 以便提供对本发明的透彻理解。 然而, 对本领域技术人员 来说, 显而易见, 在实施本发明时, 可以不用这些特定的细节, 或者 采取一种等效的设计安排。 在其它各实例中, 以示意图的形式来表示 一些众所周知的结构和装置, 以避免不必要地使本发明变得模糊不清。
图 1给出了本发明的系统发射机的框图。 在 LDPC码的编码器后, 先执行随机化, 再执行交织, 再进行调制。 随机化可以采用多种方案, 图 4给出了一种可行的方案示例。 交织器也可以采用多种方案, 如卷 积交织器, 图 5给出了一个卷积交织器的示例。 调制方案可以采用单 载波方案, 也可以采用多载波方案, 如正交频分复用 (OFDM )调制。 本发明系统的创新点在于将随机化器置于 LDPC码编码器之后, 这是由 于 LDPC码的编码器的输出比特序列可能存在长序列的 Q或 1 , 在编码 器之后进行随机化是最有效的方法, 对系统性能有改善作用, 如可以 降低 OFDM系统的峰均比率等。 编码器和随机化器的先后顺序也可不依 赖于 LDPC码, 其它信道编码方案也可采用这种先后顺序。
图 2是通信的传输系统的示意图。 通信传输系统包括发射机、 接 收机和信道。
图 3是本发明的系统接收机框图。 将射频信号下变频后, 首先利 用同步器获得同步的起始数据的位置, 再利用该位置, 进行解调、 信 道估计、 解映射等操作后, 再解交织, 解随机化, 最后进行 LDPC码的 译马操作, 获得信息比特序列的判决形式。
图 4是随机化器和解随机化器的一个可行的示例。 生成多项式是 l + x3 + x10 o
图 5是基于比特的卷积交织器和解卷积交织器的一个示例。共有 5 个支路, 每个支路的存储空间的大小是 8 比特的倍数。 每个存储空间 都是先入先出移动寄存器组。 只不过, 交织器是基于比特的移动寄存 器组, 而解交织器是基于度量值的先入先出移动寄存器组。 这里的度 量值是解映射后产生的对应于编码后码字比特的度量值, 可以是多种 形式,如对数似然比率形式、概率形式。映射方案是四相移键控( QPSK ) 形式, 也可以是 16点正交幅度调制形式(16- QAM )等。 解映射方案是 本领域公知的技术, 此处不再表述。
图 6是 LDPC码的奇偶校验矩阵的一个示例。 该矩阵 H共有 4行 8 列。 对应于每行的唐纳图 (见图 7 ) 的结点称为约束结点, 用 e''表示; 对应于每列的结点称为变量结点,用 '表示。矩阵 H中的元素 1对应于 两类结点之间的连线。
图 7是图 6的校验矩阵对应的唐纳图。 Tanner图包括两类结点, 变量结点和约束结点, 两类结点之间的连线与校 ¾r矩阵中的元素 1相 对应。 其中, 变量结点用圆圈表示, 而约束结点用方框表示。 其中, 由虚线连接起来的两个变量结点和两个约束结点组成了一个长度为 4 的环, 即共有四条连线包含在其中。 唐纳图 (Tanner )、 环等概念都是 LDPC码的一般概念。
图 8是图 7对应的树状图。 树状图是根据 Tanner图变化而来的, 以某个结点为^^, 向下拓展 Tanner图中的结点和连线就可以获得树状 图了; 图中虚线组成了长度为 4的环。树状图在计算最小环长(gir th ) 时特别有用;
所谓最小环长, 是指校验矩阵 H对应的 Tanner图中所有环的最小 长度。
图 9是本发明的校脸矩阵 H的组成结构。 校验矩阵 H包括两个子 矩阵 H1 ^。 两个子矩阵中可以至多有一个子矩阵为空矩阵。 若两个 子矩阵都不是空矩阵, 则其中有一个子矩阵是方阵。 进一步, 方阵的 具体表现形式可以是三角形矩阵, 如图 10所示的一些特例。 更进一步 地, 三角形矩阵可以是一些更具体的形式, 如图 11所示的一些特例, 等等。 图 12是一个固定图样的示例。 该固定图样可以划分为若干个小矩 阵空间, 其中黑色方块表示的小矩阵意思为该小矩阵内包含非 0元素。 该固定图样具有如下特征: 只在对角线上的小矩阵包含非 0元素, 其 它空间不包含非 0元素。 这就是该固定图样示例的 "固定" 的含义。
图 13A 和图 13B 是两个由固定图样组织起来的子矩阵示例。 ( 1300A)表示的子矩阵共包含了 16个固定图样, 每个固定图样拥有 不同的规律。 ( 1300B)表示的子矩阵共包含 12个固定图样。
根据本发明提出的 LDPC码的奇偶校验矩阵构造方法, 现列举一个 实施例来详细说明本发明。
我们需要设计一个 LDPC码, 码长 N=9216、 码率 R=0.5, 因此信息 比特序列长度 K-4608, 校验比特序列长度 M=4608。 该 LDPC码的校验 矩阵 H拥有如图 9所示的矩阵结构, 即 H由左边子矩阵 H 和右边子矩 阵 H«组成, 其中 Η^ Η都是 4608 行和 4608 列。 并且设置 H«拥有 (1103) 的形式, H拥有 ( 1300A) 的形式, 并且 ( 1300A) 中每个小 矩阵的大小是 X =288 X 288。 记 LDPC码的码字矢量 c = (S,P) , 其中码 字比特序列 c-^'ci'-'c^), 信息比特序列 8 = Α,··· -ι) , 校验比特 序列 ^,/^…,^—!)。 并且, 信息比特序列对应于左边子矩阵, 校验 比特序列对应于右边子矩阵。 设置所有小矩阵的重量都相等, 为 1, 并 且进一步设定每个小矩阵的第 0列(从 0计数)一定有 1个元素 1。 接 下来, 随机生成小矩阵第 0列上的某一行 k, 即求得每个小矩阵内的一 个元素 1的具体小矩阵位置(k, 0), 其中 0≤Α:≤ -1。 进一步, 小矩阵 位置( k, 0 )可以转换为校验矩阵 H的位置 G。 ), =k + L J ^ j0=LxK , 其中 表示小矩阵在校验矩阵 H的位置(均从 0计数)。 利用如下 的非 0元素扩展方法:
其它 L- 1个非 0元素的 H矩阵列位置是 +1, Jo+2,…, +L~l- 对应地, 行位置是 (。+^)% , (ζ·。+ 2 χ )%Μ , …, (。+ (J - 1) χ _ρ)%Μ。 其中, Ρ = 16。
评估获得的校验矩阵对应的 LDPC码的属性, 如纠错性能、 最小环 长等,选择最合适的随机数 k序列 ,不同小矩阵可以有不同的随机数 k。 下表(表 1 )是左边子矩阵对应的每个小矩阵的第 0列上的元素 1的校 验矩阵位置 (按矩阵的列进行排列)。 左边子矩阵的小矩阵第 0列上的元素 1的矩阵位置
42 1218 3215 3516
8 1576 2889 4009
147 1815 2789 4285
85 2039 2459 4524
430 1290 2333 3973
386 1640 3284 4166
409 1888 2985 4337
484 2099 2659 3635
600 1297 2821 4158
638 1659 2557 4524
619 1882 3316 3563
684 2147 3159 4031
1116 1249 2896 4509
1083 1526 2698 3600
1082 2015 2407 3855
896 2023 3390 4262 解释表 1如下。 表 1共有 16行, 每行对应于 ( 1300A )所示图样 的一列小矩阵。 表 1每行共有 4个数值, 对应于( 1300A )每列小矩阵 的数目 4。表 1的具体数字表示对应的小矩阵第 0列上的元素 1对应的 校验矩阵行数值 ζ'。, 如数字 42 就表示( 1300A )最左上角小矩阵第 0 列上的第 42行的元素值为 1。
对上述 LDPC码进行性能仿真, 得到如图 17和 18的性能。
本发明提出的 LDPC码的构造方法和传输系统巧妙地将背景技术中 提及的构造 LDPC码的奇偶校脸矩阵的两种方法结合起来。 根据本发明 提出的构造方法可获得性能优秀的 LDPC码的奇偶校验矩阵,以及 LDPC 码的低复杂度的编译码实现方法等。
本发明提出的一类利用 LDPC码的传输系统, 主要创新点在于将随 机化操作放在信道编码操作之后。 这是由于 LDPC码的码字中可能会包 含长串的比特 0或者长串的比特 1。 为了不影响接收机中的同步操作, 在发射机中 LDPC码的编码器之后添加随机化操作模块, 有效地转变长 串比特 0或者长串比特 1的情况, 从而有利于接收机中同步的功能实 现。 在编码器之后执行随机化操作, 也可改善某些传输系统的其它特 征; 如多载波系统中, 可改善系统的峰均功率比等。 相应地, 接收机 中的操作是先进行解随机化操作, 再进行 LDPC码的译码操作。
在结合实施例和实施方案对本发明进行说明的同时, 本发明本不 因此而受到限制, 相反, 它覆盖了各种明显的修改以及各种等同的设 计安排, 它们都处于所附的权利要求书的范围内。

Claims

权利 要 求
1. 一种构造 4氏密度奇偶校验码的方法, 该方法包括:
利用固定图样构造低密度奇偶校验码的低密度奇偶校验矩阵; 将信源 (101 )发出的数据进行分块, 直接或间接利用上述构造 的奇偶校验矩阵进行编码, 获得低密度奇偶校验码的码字; 和 输出低密度奇偶校验码的码字。
2.根据权利要求 1所述的构造低密度奇偶校臉码的方法,其特征在于: 所述低密度奇偶校验矩阵由两个子矩阵组成。
3.根据权利要求 2所述的构造低密度奇偶校验码的方法,其特征在于: 两个子矩阵至多有一个子矩阵表现为空矩阵。
4.根据权利要求 3所述的构造低密度奇偶校验码的方法,其特征在于: 当两个子矩阵中只有一个是空矩阵时, 校验矩阵只包含了一个子 矩阵, 这个子矩阵称为固定图样子矩阵。
5.根据权利要求 3所述的构造低密度奇偶校验码的方法,其特征在于: 当两个子矩阵都不是空矩阵时, 两个子矩阵之一表现为方阵, 并 且表现为方阵的子矩阵与校验比特序列相对应。
6.根据权利要求 5所述的构造低密度奇偶校验码的方法,其特征在于: 表现为方阵的子矩阵是多种多样的三角形矩阵。
7.根据权利要求 5所述的构造低密度奇偶校验码的方法,其特征在于: 当两个子矩阵都不是空矩阵时, 除了表现为方阵的子矩阵外的另 一个子矩阵称为固定图样子矩阵, 对应信息比特序列。
8. 根据权利要求 4或 7所述的构造低密度奇偶校验码的方法, 其特征 在于:
构造固定图样子矩阵, 进而构造低密度奇偶校验码包括以下步 骤:
第一步: 设置固定图样的子矩阵的行数目和列数目;
第二步: 从固定图样的集合( 1400 ) 中选择合适的固定图样组成 固定图样的子矩阵;
第三步: 设置固定图样中的小矩阵(1201 ) 的数目和大小; 第四步: 判断小矩阵(1201 ) 的数目和大小是否都为正整数; 若 是, 执行第五步; 若不是, 转到第二步;
第五步: 分别设置每个小矩阵的重量;
第六步: 根据每个小矩阵的重量, 分别在每个小矩阵内随机生成 数目等于当前小矩阵的重量的个数的非 0元素, 这些非 0元素或者在 同一行, 或者在同一列;
第七步: 执行非 0元素扩展, 获得扩展后的固定图样的子矩阵; 第八步: 将预先确定好的另一子矩阵和扩展后的固定图样的子矩 阵合并组成校验矩阵( 900 );
第九步: 评估校验矩阵( 900 )对应的低密度奇偶校验码的属性; 以及
第十步: 判断码属性是否满足要求; 若是, 低密度奇偶校验码的 构造过程结束; 若不是, 转到第二步。
9.根据权利要求 8所述的构造低密度奇偶校验码的方法,其特征在于: 所述第一步是根据低密度奇偶校验码的码率和码长以及校验矩阵 的另一子矩阵的具体情况设置固定图样的子矩阵的行数目和列数目。
10. 根据权利要求 8 所述的构造低密度奇偶校验码的方法, 其特征在 于:
所述第二步中的选择合适的固定图样组成固定图样的子矩阵的原 则包括变量结点或 /和约束结点的度分布的要求, 固定图样的子矩阵的 行数目和列数目的比例的要求, 以及有利于节约译码器( 305 )的存储 空间的要求; 其中节约存储空间的实现方法之一是通过将小矩阵 ( 1201 ) 的大小设置为 ·2的幂次方。
11. 根据权利要求 8所述的构造低密度奇偶校验码的方法, 其特征在 于:
所述第五步中的不同小矩阵(1201 ) 的重量可以相等, 也可以不 相等; 一些小矩阵 ( 1201 )的重量也可以等于 0; 小矩阵 ( 1201 )的重 量的确定原则是变量结点或 /和约束结点的度分布的要求。
12. 根据权利要求 8所述的构造低密度奇偶校验码的方法, 其特征在 于:
所述第六步中, 可简化半随机方式, 即预先固定好行位置或列位 置, 随机地选择对应的列位置或者行位置。
13. 根据权利要求 8所述的构造低密度奇偶校验码的方法, 其特征在 于:
所述第七步中的非 0元素扩展方法包括小矩阵内扩展和小矩阵外 扩展。
14. 根据权利要求 8所述的构造低密度奇偶校验码的方法, 其特征在 于:
所述第七步中的非 0元素扩展模式包括列扩展模式和行扩展模式 以及混合扩展模式。
15. 根据权利要求 13或 14所述的构造低密度奇偶校验码的方法, 其 特征在于:
非 0元素具体的元素扩展方法是小矩阵内扩展方法 1、小矩阵内扩 展方法 2、 小矩阵外扩展和列扩展方法 3、 小矩阵外扩展和列扩展方法 4、 小矩阵外扩展和列扩展方法 5、 小矩阵外扩展和行扩展方法 6、 小 矩阵外扩展和行扩展方法 7和小矩阵外扩展和行扩展方法 8至少其中 之一。
16. 根据权利要求 15所述的构造低密度奇偶校验码的方法, 其特征在 于:
所述小矩阵内扩展方法 1为:
其它 L- 1个非 0元素的 H矩阵列位置是 "」x"('。% + l)% , L0/Z」x + ( 0% + 2)% , .·., 应地, 行 位置是 」 χ + (ζ·ο0/οΖ + 1)0/ο
Figure imgf000029_0001
其中, H 矩阵表示奇偶校验码的校验矩阵, 符号%表示模操作, Z表示小矩阵的 行数与列数, i0, 分别表示 H矩阵的行位置和列位置。
17. 根据权利要求 15所述的构造低密度奇偶校脸码的方法, 其特征在 于:
所述小矩阵内扩展方法 1为:
其它 L- 1个非 0元素的 H矩阵列位置是 」x +(。°/^+i)% ,
…, [j0/LixL + Uo¾L + L-l)%L.
Figure imgf000029_0002
对应地, 行 位置是 」 x + ( /o1 )% , …, li0/L}xL + (i0%L-L + l)%L. 其中, H 矩阵表示奇偶校验码的校验矩阵, 符号。 /。表示模操作, Z表示小矩阵的 行数与列数, i0, 分别表示 H矩阵的行位置和列位置。
18. 根据权利要求 15所述的构造低密度奇偶校验码的方法, 其特征在 于:
所述小矩阵外扩展和列扩展方法 3为:
其它 L- 1个非 0元素的 H矩阵列位置是 L。 」x + 。% + l)% , L70/lJxI + (/0%i + 2)%Z? …,
Figure imgf000029_0003
+ U,%L + L-V)%L. 或者, 列位 置是 (Λ+ )%β, (Λ+2χ¾ %β, …, Uo+(L-l)xq)%Q; 对应地, 行位置 是 ·。+ ?)%Μ, (i0+2 p)%M 其中, Η 矩阵表
Figure imgf000029_0004
示奇偶校验码的校验矩阵, 符号。 /。表示模操作, 表示小矩阵的行数与 列数, i。, 分别表示 H矩阵的行位置和列位置, P≤M , 且 为 整数; 2≤ ≤β/ , ?是整数, 2是码长或待编码比特序列的长度, Μ 是矩阵 Η的行数目。
19. 根据权利要求 15所述的构造低密度奇偶校验码的方法, 其特征在 于:
所述小矩阵外扩展和列扩展方法 4为:
其它 L-1个非 0元素的 Η矩阵列位置是 L。"」x + (J'。o/o + l)% ,
Figure imgf000030_0001
…, [j0/LixL + (j0%L + L-l)%L. 或者, 列位 置是 < 。+¾ %β, (Λ+2χ¾ %0, ···, (j0+(L-Y)xq)¾Q, 对应地, 行位置 ^ i - P)%M ^ Ό -2xp)%M ^ …, (i0-(L-Y)xp)%M ; 其中, H 矩阵表 示奇偶校验码的校验矩阵, 符号。 /。表示模操作, Z表示小矩阵的行数与 列数, ΰ, 分别表示 Η矩阵的行位置和列位置, P≤MIL, 且 P为 整数; 2≤ ≤β/Ζ, g是整数, 2是码长或待编码比特序列的长度, M 是矩阵 H的行数目。
20. 根据权利要求 15所述的构造低密度奇偶校验码的方法, 其特征在 于:
所述小矩阵外扩展和列扩展方法 5为:
其它 L- 1个非 0元素的 H矩阵列位置是 /^^ + ^ + ^/^, Ly0/ jxZ + (7o%Z + 2) %L. 或者, 列位 置是 。+ )°/。2, Uo
Figure imgf000030_0002
对应地, 行位置 ^ {0 0/0 + L1 / 」 X + χ fc1 + Lz'o I L J)%P]}% ,
{iQ %L + [2/P]xP + Lx[(2 + [i01 lJ)%P]}% ...
{i0 ¾L + [(L-l)/PjxP + Lx[(L-l + [i01 Z J)%P]}% . 其中, H 矩阵表示奇偶 校验码的校验矩阵, 符号。 /。表示模操作, Z表示小矩阵的行数与列数, i。, 分别表示 H矩阵的行位置和列位置, P = MIL 2≤q≤Q/L^ q 整数, β是码长或待编码比特序列的长度, Μ是矩阵 Η的行数目。
21. 根据权利要求 15所述的构造低密度奇偶校验码的方法, 其特征在 于:
所述小矩阵外扩展和行扩展方法 6为:
其它 L-1个非 0元素的 Η矩阵行位置是^ 」 "^。0/0^1)0^,
Figure imgf000031_0001
…, li0/LixL + (i0%L + L-l)%L. 对应地, 列位 置是 (Λ+ )0/οβ, (Λ+2χ )%β , …, Uo+(L-l)xp)%Q. 其中, H 矩阵 表示奇偶校验码的校脸矩阵, 符号 °/。表示模操作, Z表示小矩阵的行数 与列数, io, 分别表示 H矩阵的行位置和列位置, δ是码长或待编码 比特序列的长度 (依固定图样的子矩阵列数目而定), 对应地, ^≤P≤QIL^ 且 为整数。
22. 根据权利要求 15所述的构造低密度奇偶校验码的方法, 其特征在 于:
所述小矩阵外扩展和行扩展方法 7为:
其它 L-1 个非 0元素的 H矩阵行位置是 ί 」 X + 0 + 1)% , li0/LixL + (i0%L + 2)%L^ …, [i0/LixL + (i0%L + L-l)%L . 对应地, 列位 置是 (Λ - )0/o2, (i'o-2xjp)%ej ··" (j0-(L-l)xp)%Q. 其中, H 矩阵 表示奇偶校验码的校验矩阵, 符号 °/。表示模操作, Z表示小矩阵的行数 与列数, ", 分别表示 H矩阵的行位置和列位置, β是码长或待编码 比特序列的长度 (依固定图样的子矩阵列数目而定), 对应地, ^≤P≤Q/L , 且 ^为整数。
23. 根据权利要求 15所述的构造低密度奇偶校验码的方法, 其特征在 于:
所述小矩阵外扩展和行扩展方法 8为: 其它 L - 1 个非 0元素的 H矩阵行位置是 」 X + ('·。% + 1)0/ο , L0 /Zjx Z + ( 0 %Z + 2)% 5 …, li0 /Lix L + (i0 %L + L -l)%L . 对应地, 列位
^{j0%L + ll/P]x P + L x [(1 + I Li%P]}%Q ,
{j0%L + l2/P]x P + Lx [(2 + L/。 / Lj)%P]}%Q , …,
{j0 %L + L(J - 1) / J x + J x [(I - 1 + Li'o Li)%P]}%Q . 其中, H矩阵表示奇偶 校验码的校验矩阵, 符号%表示模操作, Z表示小矩阵的行数与列数, io, 分別表示 H矩阵的行位置和列位置, 2是码长或待编码比特序列 的长度(依固定图样的子矩阵列数目而定), 对应地, P = QI L
24. 根据权利要求 15所述的构造低密度奇偶校验码的方法, 其特征在 于:
所述第九步中低密度奇偶校验码的属性包括码的纠错性能、 最小 环长、 码的最小距离和错误地板至少其中之一。
25. 根据权利要求 1 所述的构造低密度奇偶校脸码的方法, 其特征在 于:
可以对码字打孔, 打掉一些码字比特以适配低密度奇偶校验码的 码率和码长。
26. 根据权利要求 25 所述的构造低密度奇偶校验码的方法, 其特征 在于:
打孔的一种实现方法是, 先对待编码比特序列添加固定比特序列, 进行编码获得码字后, 再将码字中的这些固定比特序列打掉。
27. 根据权利要求 26·所述的构造低密度奇偶校脸码的方法, 其特征在 于:
固定比特序列是全 0比特序列或是其它模式的固定比特序列。
28. 根据权利要求 1 所述的构造低密度奇偶校验码的方法, 其特征在 于: 低密度奇偶校验码的低密度奇偶校验矩阵, 采用参数完全表征低 密度奇偶校验矩阵, 存储可以完全表征低密度奇偶校验矩阵的参数以 便于重新实时生成低密度奇偶校验矩阵。
29. 根据权利要求 1 所述的构造低密度奇偶校验码的方法, 其特征在 于:
低密度奇偶校验码的低密度奇偶校验矩阵, 采用各种拥有不同表 现形式的参数完全表征低密度奇偶校验矩阵, 这些不同表现形式的参 数表征的校验矩阵实际上是同一个校猃矩阵, 对校验矩阵进行列交换 和行交换后, 校验矩阵可以表现为相同的形式, 存储可以完全表征低 密度奇偶校验矩阵的参数以便于重新实时生成低密度奇偶校验矩阵。
30. 根据权利要求 28或 29所述的构造低密度奇偶校验码的方法, 其 特征在于:
所述参数由数字和数学公式组成。
31. 根据权利要求 30所述的构造低密度奇偶校验码的方法, 其特征在 于:
该数学公式可以部分表征低密度奇偶校验矩阵, 隐含存储部分表 征低密度奇偶校验矩阵的数学公式以便于重新实时生成低密度奇偶校 验矩阵。
32. 根据权利要求 31所述的构造低密度奇偶校验码的方法, 其特征在 于:
隐含存储数学公式是采用数学逻辑电路来存储数学公式。
33. 根据权利要求 1 所述的构造低密度奇偶校验码的方法, 其特征在 于:
该低密度奇偶校验码是线性分组码, 进入低密度奇偶校验码编码 器(102 ) 的待编码数据表现为分組的形式。
34. 根据权利要求 33所述的构造低密度奇偶校验码的方法, 其特征在 于:
该编码器(102 )是利用低密度奇偶校验码的生成矩阵来实现。
35. 根据权利要求 33所述的构造低密度奇偶校验码的方法, 其特征在 于:
该编码器(102 )是利用低密度奇偶校验码的校验矩阵来实现。
36. 根据权利要求 34所述的构造低密度奇偶校验码的方法, 其特征在 于:
低密度奇偶校验码的生成矩阵是根据校验矩阵获得的, 并且校验 矩阵获得生成矩阵的过程是离线完成的。
37. 根据权利要求 34或 36所述的构造低密度奇偶校验码的方法, 其 特征在于:
该生成矩阵采用参数完全表征, 存储完全表征生成矩阵的参数以 便于编码器(102 ) 的实现。
38. 根据权利要求 34或 36所述的构造低密度奇偶校验码的方法, 其 特征在于:
该生成矩阵采用拥有不同表现形式的参数完全表征, 这些不同表 现形式的参数表征的生成矩阵实际上是同一个生成矩阵, 对生成矩阵 进行列交换和行交换后, 生成矩阵表现为相同的形式, 存储完全表征 生成矩阵的参数以便于编码器 (102 ) 的实现。
39. 根据权利要求 37或 38所述的构造低密度奇偶校验码的方法, 其 特征在于:
参数由数字和数学公式组成。
40. 根据权利要求 39所述的构造低密度奇偶校验码的方法, 其特征在 于: 数学公式部分表征生成矩阵, 隐含存储部分表征生成矩阵的数学 公式以便于编码器(102 ) 的实现。
41. 根据权利要求 40所述的构造低密度奇偶校验码的方法, 其特征在 于:
隐含存储数学公式是采用数学逻辑电路来存储数学公式。
42. 根据权利要求 1 所述的构造低密度奇偶校验码的方法, 其特征在 于:
低密度奇偶校验码表现为系统码, 生成矩阵和校验矩阵均采用不 同表现形式的参数来完全表征, 不同表现形式的参数对应的编码器 ( 102 )拥有不同的实现方法和实现细节。
43. 根据权利要求 34所述的构造低密度奇偶校验码的方法, 其特征在 于:
低密度奇偶校验码的生成矩阵中对应于待编码比特的矩阵列组成 的子矩阵经过列变换和行变换后可以表现为单位矩阵的形式。
44. 根据权利要求 35所述的构造低密度奇偶校验码的方法, 其特征在 于:
利用低密度奇偶校验码的校验矩阵实现编码器( 102 )的方法包括: 对校验矩阵进行列变换和行变换;
将列变换和行变换后的校验矩阵分成两个子矩阵, 分别对应于由 编码器(102 )输入比特组成的信息比特序列和待求解比特组成的校险 比特序列;
将信息比特序列和信息比特序列对应的子矩阵相乘, 获得中间结 果;
将校验比特序列对应的子矩阵进行分解, 获得一个上三角矩阵和 一个下三角矩阵; 利用中间结果、 上三角矩阵和下三角矩阵, 通过迭代处理的方式, 求解获得校验比特序列;
将信息比特序列和校验比特序列以首尾相连的方式连接起来, 获 得合并比特序列;
对合并比特序列的每个比特按比特位置进行调整后, 获得低密度 奇偶校验码的码字比特序列; 和
输出低密度奇偶校验码的码字。
45. 根据权利要求 44所述的构造低密度奇偶校验码的方法, 其特征在 于:
利用低密度奇偶校验码的校 矩阵实现编码器(102 )的方法还包 括:
不对校验矩阵进行列变换或者行变换;
中间结果是通过将校验矩阵和预码字比特序列相乘获得; 其中, 校验矩阵是利用完全表征校脸矩阵的参数实时生成的; 预码字比特序列和编码器(102 )输出的码字比特序列除了校验比 特取值不同外, 其它方面都相同, 预码字比特序列中的校验比特取值 都是 0;
存储中间结果以便于迭代处理的操作。
46. 根据权利要求 44所述的构造低密度奇偶校验码的方法, 其特征在 于:
上三角矩阵和下三角矩阵都采用参数来完全表征, 分别存储完全 表征上三角矩阵和下三角矩阵的参数以便于实时生成上三角矩阵和下 三角矩阵。
47. 根据权利要求 46所述的构造低密度奇偶校验码的方法, 其方法包 括: 完全表征上三角矩阵或下三角矩阵的参数拥有多种不同的表现形 式, 分别存储完全表征上三角矩阵和下三角矩阵的参数以便于实时生 成上三角矩阵和下三角矩阵。
48. 根据权利要求 44所述的构造低密度奇偶校验码的方法, 其特征在 于:
上三角矩阵或 /和下三角矩阵可以表现为单位矩阵的形式。
49. 根据权利要求 46或 47所述的构造低密度奇偶校脸码的方法, 其 特征在于:
完全表征上三角矩阵和下三角矩阵的参数由数字和 /或数学公式 组成, 以数学逻辑电路的形式存储数学公式以便于实时生成上三角矩 阵和下三角矩阵。
50. —种奇偶校验码的译码方法, 该方法包括:
根据星座映射方案计算每个码字比特对应的度量值;
对度量值进行分块;
实时重新生成与发射机(100 )采用的相同的低密度奇偶校验码的 低密度奇偶校脸矩阵, 该低密度奇偶校验矩阵可以采用利用固定图样 生成的奇偶校验矩阵;
利用成块的度量值和实时重新生成的奇偶校验矩阵 , 进行迭代处 理方式的低密度奇偶校验码的译码操作, 获得对应于发射机(100 )的 信源 (101 )数据的硬判决形式; 和
输出硬判决数据。
51. 根据权利要求 50所述的奇偶校验码的译码方法, 其特征在于: 该奇偶校验码的译码方法是一种降低复杂度的译码方法, 降低复 杂度主要是通过减少译码器的存储空间的数目和大小, 以及降低访问 存储空间的次数来实现的。
52. 根据权利要求 51所述的奇偶校验码的译码方法, 其特征在于: 降低复杂度的译码方法的算法包括以下步驟:
第一步: 从^中减掉£'",", 获得对应的 ", 其中^ "表示比特结点" 的后验对数似然比率, 表示从校验节点 "1传递给比特节点 "的消息 , z»',"表示从比特节点 "传递给校验节点 M的消息; 第二步: 利用 ", 根据关系式
Figure imgf000038_0001
获得新的 "值, 其中 是一预先确定的常数, sgn ( ')表示取正负符 号操作, min ( · )表示取最小值操作, 集合 表示与校验节点'"相 邻的所有比特节点, 集合 ^(?") \ "表示除比特节点 "以外的集合 N ; 第三步: 将 £'","值根据比特结点的"值累加起来, 获得 U" , 即关系 式为
Figure imgf000038_0002
表示与比特节点"相邻的所有校验节 点;
第四步: 将 '和 un相加 , 获得 ", 其中 F"表示从译码器外接收到 的比特结点"的对数似然比率, 计算 "时可以不考虑信道衰落的影响; 第五步: 回到第一步, 执行下一次迭代操作。
53. 根据权利要求 52所述的奇偶校验码的译码方法, 其特征在于: 降低复杂度的译码器包含一块1^ "存储空间, 一块 存储空间, 以 及一块 o,")地址存储空间; 这些存储空间分别都以整块存储, 而非分 开存储, 从而减少了存储空间的数目; 整块存储可有效减小所占总的 存储空间的大小; 不存储某些中间变量。
54. 根据权利要求 52所述的奇偶校验码的译码方法, 其特征在于: 执行第一步时从 "存储空间中读取 "值, 从^',"存储空间中读取 Ζ'","值(对于初始化阶段, '"," = 0 ), 计算获得 '值, 但不存储 ."值, 直接将 Z"',"值用于第二步的计算; 其中,从 地址存储空间中读取地 址参数, 计算行 对应的列"值, w是按 0、 1、 2、 …的顺序存储的同 时, 对^ "值进行硬判决, 获得硬判决比特, 同样不存储硬判决比特, 在计算第二步时直接进行约束关系是否满足的验证; 执行 z"',"值的先后 顺序是先按校验矩阵的行顺序, 再按照校验矩阵的列顺序;
接下来,执行第二步、第三步和公式第四步,存储 '值, 不存储 值, 存储 "值; 其中, 第二步也可以采用包括公式
Figure imgf000039_0001
丄 + "的其它形式的具有同样功能的处理公式, 只要可以获得 '","值即可;
上述第一步至第五步表示的译码算法的地址执行顺序都是先按校 验矩阵行的顺序执行, 再按列的顺序执行。
55. 根据权利要求 51或 52所述的奇偶校 码的译码方法, 其特征在 于:
一旦所有的约束关系满足, 或者最大的迭代次数到达, 就按变量结 点的先后顺序从 ^值的存储空间中读取硬判决比特 0或 1 ,以任意组合 形式输出这些比特序列, 至少是信息比特序列的判决比特, 而校验比 特序列是选择输出, 以备循环解调器之用。
56. 根据权利要求 51或 52所述的奇偶校验码的译码方法, 其特征在 于:
为了节约译码器的存储空间, 校验矩阵的列数目设置成等于 2 的 冪次方或者略小于 2的幂次方。
57. 一种利用低密度奇偶校验码的传输系统, 该系统包括发射装置和 接收装置, 所述发射装置包括:
将信源 ( 101 )发出的数据先进入低密度奇偶校验码编码器( 102 ) 进行编码的装置, 该编码器可以采用利用固定图样构造的奇偶校验码 的编码器;
然后进入随机化器(103 )进行随机化的装置;
再进入交织器 (104 )进行交织的装置; 以及
最后通过调制器(105 )传向空中的装置。
58. 一种利用低密度奇偶校验码的传输系统, 该系统包括发射装置和 接收装置, 所述接收装置包括:
从空中接收射频信号, 进行下变频和滤波, 获得基带信号的装置; 先将基带信号送入同步器(301 )获得同步的起始位置的装置; 然后根据同步的起始位置, 截取数据进行包括信道估计和解调的 操作, 这些操作都在解调器( 302 ) 中完成的装置;
然后将输出数据送入解交织器( 303 )执行解交织操作的装置; 再将输出数据送入解随机化器( 304 )执行解随机化操作的装置; 再将输出数据送入低密度奇偶校验码译码器( 305 )进行译码的装 置; 以及
最后将译码数据送入信宿 ( 306 ) 的装置。
PCT/CN2006/003050 2006-04-29 2006-11-14 Procédé de construction de codes ldpc, procédé de décodage et système de transmission associé WO2007124627A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/226,808 US8176383B2 (en) 2006-04-29 2006-11-14 Method of constructing low density parity check code, method of decoding the same and transmission system for the same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN200610079056.6 2006-04-29
CNB2006100790566A CN100546205C (zh) 2006-04-29 2006-04-29 构造低密度奇偶校验码的方法、译码方法及其传输系统

Publications (1)

Publication Number Publication Date
WO2007124627A1 true WO2007124627A1 (fr) 2007-11-08

Family

ID=38071704

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2006/003050 WO2007124627A1 (fr) 2006-04-29 2006-11-14 Procédé de construction de codes ldpc, procédé de décodage et système de transmission associé

Country Status (3)

Country Link
US (1) US8176383B2 (zh)
CN (1) CN100546205C (zh)
WO (1) WO2007124627A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9379740B2 (en) 2007-12-24 2016-06-28 Lg Electronics Inc. Channel coding method of variable length information using block code
TWI571884B (zh) * 2010-10-29 2017-02-21 海力士半導體股份有限公司 資料錯誤檢查電路,資料錯誤檢查方法,使用資料錯誤檢查功能之資料傳輸方法,半導體記憶體裝置與使用資料錯誤檢查功能之記憶體系統
CN107733442A (zh) * 2016-08-12 2018-02-23 中兴通讯股份有限公司 结构化ldpc码的处理方法及装置
CN111052614A (zh) * 2017-09-01 2020-04-21 上海诺基亚贝尔股份有限公司 消息处理和对应装置
CN112272029A (zh) * 2020-10-22 2021-01-26 西安空间无线电技术研究所 一种基于dvb-s2标准的ldpc译码器实现方法
US10924209B2 (en) 2007-12-24 2021-02-16 Lg Electronics Inc. Channel coding method of variable length information using block code

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8489962B2 (en) * 2007-07-04 2013-07-16 St-Ericsson Sa Shuffled LDPC decoding
CN101471672B (zh) * 2007-12-27 2011-04-13 华为技术有限公司 低密度奇偶校验码的编码方法和编码器
US8514954B1 (en) * 2008-03-04 2013-08-20 Microsoft Corporation Pilot design for wireless system
TWI469533B (zh) * 2008-11-07 2015-01-11 Realtek Semiconductor Corp 同位檢查碼解碼器及接收系統
US8397125B2 (en) * 2008-12-31 2013-03-12 Stmicroelectronics, Inc. Encoding apparatus, system, and method using low density parity check (LDPC) codes
US8578256B2 (en) * 2009-04-22 2013-11-05 Agere Systems Llc Low-latency decoder
US8397126B2 (en) * 2009-07-06 2013-03-12 Intel Corporation Systems and methods for channel coding of wireless communication
CN101873197A (zh) * 2010-06-12 2010-10-27 电子科技大学 Ldpc码固定比特位的编译码设备
CN102386995A (zh) * 2010-09-01 2012-03-21 国家广播电影电视总局广播科学研究院 低密度奇偶校验码校验矩阵构造方法及装置
JP5500379B2 (ja) * 2010-09-03 2014-05-21 ソニー株式会社 データ処理装置、及びデータ処理方法
KR20120059806A (ko) * 2010-12-01 2012-06-11 한국전자통신연구원 에러 정정 부호의 생성방법, 복호 방법 및 그 장치
CN102868483A (zh) * 2011-07-06 2013-01-09 北京新岸线无线技术有限公司 一种用于数据传输的方法及装置
WO2013004090A1 (zh) * 2011-07-06 2013-01-10 北京新岸线无线技术有限公司 一种用于数据传输的方法及装置
CN102687445B (zh) * 2011-12-30 2015-01-21 华为技术有限公司 前向纠错编、解码方法、装置及系统
US9166663B2 (en) * 2012-12-14 2015-10-20 Futurewei Technologies, Inc. System and method for open-loop MIMO communications in a SCMA communications system
US10784901B2 (en) 2015-11-12 2020-09-22 Qualcomm Incorporated Puncturing for structured low density parity check (LDPC) codes
US10454499B2 (en) * 2016-05-12 2019-10-22 Qualcomm Incorporated Enhanced puncturing and low-density parity-check (LDPC) code structure
US10469104B2 (en) * 2016-06-14 2019-11-05 Qualcomm Incorporated Methods and apparatus for compactly describing lifted low-density parity-check (LDPC) codes
CN107733440B (zh) * 2016-08-12 2022-12-02 中兴通讯股份有限公司 多边类型结构化ldpc处理方法及装置
CN107733441B (zh) * 2016-08-12 2023-05-30 中兴通讯股份有限公司 编码方法及装置、译码方法及装置
US10312939B2 (en) 2017-06-10 2019-06-04 Qualcomm Incorporated Communication techniques involving pairwise orthogonality of adjacent rows in LPDC code
CN110754042B (zh) 2017-06-15 2024-06-04 华为技术有限公司 信息处理的方法和通信装置
CN109327225B9 (zh) 2017-06-27 2021-12-10 华为技术有限公司 信息处理的方法、装置和通信设备
CN110677157B (zh) * 2017-06-27 2023-02-07 华为技术有限公司 信息处理的方法、装置和通信设备
US10680764B2 (en) * 2018-02-09 2020-06-09 Qualcomm Incorporated Low-density parity check (LDPC) parity bit storage for redundancy versions
TWI684856B (zh) * 2018-04-20 2020-02-11 慧榮科技股份有限公司 解碼方法及相關的快閃記憶體控制器與電子裝置
CN108777605B (zh) * 2018-05-24 2020-04-07 西安电子科技大学 适用于块衰落信道的多链sc-ldpc编码方法
CN111313909A (zh) * 2018-12-12 2020-06-19 北京航空航天大学 Ldpc码译码方法和编码方法
CN109600141B (zh) * 2019-01-10 2023-06-27 珠海妙存科技有限公司 一种多通道共享ldpc编码器的方法
US11784663B2 (en) * 2019-07-16 2023-10-10 Lg Electronics Inc. Method and apparatus for performing encoding on basis of parity check matrix of low density parity check code generated from protograph in wireless communication system
US10944429B1 (en) * 2020-01-02 2021-03-09 Silicon Motion, Inc. Data accessing method using data protection with aid of parity check matrix having partial sequential information, and associated apparatus
CN111162796B (zh) * 2020-01-16 2021-07-09 南京中科晶上通信技术有限公司 基于ldpc编码器的数据处理方法、装置及终端
CN115622572A (zh) * 2020-04-22 2023-01-17 华为技术有限公司 编码、译码方法、装置及设备
CN112165338B (zh) * 2020-09-30 2023-05-02 电子科技大学 一种卷积码随机交织序列交织关系的估计方法
TWI774417B (zh) * 2021-06-11 2022-08-11 瑞昱半導體股份有限公司 基於權重調整演算法參數的解碼方法與解碼系統
CN118381662B (zh) * 2024-06-21 2024-09-27 浙江省白马湖实验室有限公司 一种介于无人推耙机硬件之间的通信方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1481130A (zh) * 2002-07-26 2004-03-10 产生低密度奇偶校验码的方法和系统
US20050166133A1 (en) * 2002-07-03 2005-07-28 Hughes Electronics Corporation Method and system for decoding low density parity check (LDPC) codes
EP1589663A1 (en) * 2004-04-22 2005-10-26 Samsung Electronics Co., Ltd. System, apparatus and method for transmitting and receiving data coded by low density parity check code having variable coding rate
CN1705237A (zh) * 2004-05-31 2005-12-07 株式会社东芝 解码设备和解码电路
CN1713531A (zh) * 2004-06-23 2005-12-28 株式会社东芝 解码用ldpc码编码的数据的解码装置和方法
CN1793244A (zh) * 2004-12-22 2006-06-28 施乐公司 可固化的相变油墨组合物

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7577207B2 (en) 2002-07-03 2009-08-18 Dtvg Licensing, Inc. Bit labeling for amplitude phase shift constellation used with low density parity check (LDPC) codes
US20040019845A1 (en) 2002-07-26 2004-01-29 Hughes Electronics Method and system for generating low density parity check codes
US7178080B2 (en) * 2002-08-15 2007-02-13 Texas Instruments Incorporated Hardware-efficient low density parity check code for digital communications
KR100502609B1 (ko) 2002-11-21 2005-07-20 한국전자통신연구원 Ldpc 코드를 이용한 부호화기 및 부호화 방법
KR100996029B1 (ko) * 2003-04-29 2010-11-22 삼성전자주식회사 저밀도 패리티 검사 코드의 부호화 장치 및 방법
US7398446B2 (en) * 2003-05-29 2008-07-08 Lucent Technologies Inc. Low power operation of an address interleaver
WO2005096509A1 (en) * 2004-03-31 2005-10-13 Intel Corporation Multi-threshold message passing decoding of low-density parity check codes
WO2006073324A1 (en) * 2004-12-29 2006-07-13 Intel Corporation Channel estimation and fixed thresholds for multi-threshold decoding of low-density parity check codes

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050166133A1 (en) * 2002-07-03 2005-07-28 Hughes Electronics Corporation Method and system for decoding low density parity check (LDPC) codes
CN1481130A (zh) * 2002-07-26 2004-03-10 产生低密度奇偶校验码的方法和系统
EP1589663A1 (en) * 2004-04-22 2005-10-26 Samsung Electronics Co., Ltd. System, apparatus and method for transmitting and receiving data coded by low density parity check code having variable coding rate
CN1705237A (zh) * 2004-05-31 2005-12-07 株式会社东芝 解码设备和解码电路
CN1713531A (zh) * 2004-06-23 2005-12-28 株式会社东芝 解码用ldpc码编码的数据的解码装置和方法
CN1793244A (zh) * 2004-12-22 2006-06-28 施乐公司 可固化的相变油墨组合物

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10944505B2 (en) 2007-12-24 2021-03-09 Lg Electronics Inc. Channel coding method of variable length information using block code
US9647796B2 (en) 2007-12-24 2017-05-09 Lg Electronics Inc. Channel coding method of variable length information using block code
US11791931B2 (en) 2007-12-24 2023-10-17 Lg Electronics Inc. Channel coding method of variable length information using block code
US10361811B2 (en) 2007-12-24 2019-07-23 Lg Electronics Inc. Channel coding method of variable length information using block code
US11533125B2 (en) 2007-12-24 2022-12-20 Lg Electronics Inc. Channel coding method of variable length information using block code
US9379740B2 (en) 2007-12-24 2016-06-28 Lg Electronics Inc. Channel coding method of variable length information using block code
US10924209B2 (en) 2007-12-24 2021-02-16 Lg Electronics Inc. Channel coding method of variable length information using block code
TWI571884B (zh) * 2010-10-29 2017-02-21 海力士半導體股份有限公司 資料錯誤檢查電路,資料錯誤檢查方法,使用資料錯誤檢查功能之資料傳輸方法,半導體記憶體裝置與使用資料錯誤檢查功能之記憶體系統
CN107733442B (zh) * 2016-08-12 2022-12-02 中兴通讯股份有限公司 结构化ldpc码的处理方法及装置
CN107733442A (zh) * 2016-08-12 2018-02-23 中兴通讯股份有限公司 结构化ldpc码的处理方法及装置
CN111052614A (zh) * 2017-09-01 2020-04-21 上海诺基亚贝尔股份有限公司 消息处理和对应装置
CN111052614B (zh) * 2017-09-01 2024-03-08 上海诺基亚贝尔股份有限公司 消息处理和对应装置
CN112272029A (zh) * 2020-10-22 2021-01-26 西安空间无线电技术研究所 一种基于dvb-s2标准的ldpc译码器实现方法
CN112272029B (zh) * 2020-10-22 2024-04-09 西安空间无线电技术研究所 一种基于dvb-s2标准的ldpc译码器实现方法

Also Published As

Publication number Publication date
US8176383B2 (en) 2012-05-08
US20090100311A1 (en) 2009-04-16
CN100546205C (zh) 2009-09-30
CN1960188A (zh) 2007-05-09

Similar Documents

Publication Publication Date Title
WO2007124627A1 (fr) Procédé de construction de codes ldpc, procédé de décodage et système de transmission associé
JP7011013B2 (ja) 並列ビットインターリーバ
CN107370490B (zh) 结构化ldpc的编码、译码方法及装置
CN110943746B (zh) 接收设备及接收方法
US9871621B2 (en) Transmitting apparatus and signal processing method thereof
JP5506879B2 (ja) 低密度パリティ検査符号を使用する通信システムのチャネル復号化装置及び方法
CA2457420C (en) Bit labeling for amplitude phase shift constellation used with low density parity check (ldpc) codes
JP7273075B2 (ja) 通信方法
CN106471782B (zh) 发送设备及其交织方法
US20150200747A1 (en) Transmission method, reception method, transmitter, and receiver
KR20140145978A (ko) Ldpc 부호의 부호화 장치, 그의 부호화 방법, 복호화 장치 및 그의 복호화 방법
EA035425B1 (ru) Модуль параллельного перемежения битов
TWI325259B (en) An interleaving scheme for an ldpc coded 16apsk system
CN110061808B (zh) 一种基于素数码交织及脊髓码编码的水下抗干扰传输方法
KR102699896B1 (ko) 송신 장치 및 그의 신호 처리 방법
CA2988856A1 (en) Bit interleaver for low-density parity check codeword having length of 16200 and code rate of 2/15 and 16-symbol mapping, and bit interleaving method using same
KR20150040244A (ko) 송신 장치 및 그의 신호 처리 방법
Zhang et al. Girth-10 LDPC codes based on 3-D cyclic lattices
US20140068387A1 (en) Transmitting apparatus, receiving apparatus, transmitting method and receiving method for communicating data coded with low density parity check (ldpc) codes
KR20150134505A (ko) 송신 장치 및 그의 신호 처리 방법
KR20140145977A (ko) 패리티 검사 부호의 부호화 장치, 그의 부호화 방법, 복호화 장치 및 그의 복호화 방법
Huang et al. Novel interleave-division multiple access scheme based on QC-LDPC codes for terrestrial broadcasting return channel
Yuan et al. Other Advanced Coding Schemes
CN117938308A (zh) 基于极化码内嵌不规则qc-ldpc级联tcm编译码的光传输方法、装置及系统
Takeda A Comparison between RS+ TCM and LDPC FEC schemes for the G. fast standard

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

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2008101767

Country of ref document: EG

WWE Wipo information: entry into national phase

Ref document number: 12226808

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: DZP2008000681

Country of ref document: DZ

122 Ep: pct application non-entry in european phase

Ref document number: 06817812

Country of ref document: EP

Kind code of ref document: A1