CN102412842A - Method and device for encoding low-density parity check code - Google Patents
Method and device for encoding low-density parity check code Download PDFInfo
- Publication number
- CN102412842A CN102412842A CN2010102933236A CN201010293323A CN102412842A CN 102412842 A CN102412842 A CN 102412842A CN 2010102933236 A CN2010102933236 A CN 2010102933236A CN 201010293323 A CN201010293323 A CN 201010293323A CN 102412842 A CN102412842 A CN 102412842A
- Authority
- CN
- China
- Prior art keywords
- matrix
- bits
- code
- unit
- bit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 239000011159 matrix material Substances 0.000 claims abstract description 293
- 230000005540 biological transmission Effects 0.000 claims abstract description 43
- 238000012545 processing Methods 0.000 claims abstract description 29
- 230000008707 rearrangement Effects 0.000 claims description 61
- 108010003272 Hyaluronate lyase Proteins 0.000 claims description 36
- 230000009897 systematic effect Effects 0.000 claims description 14
- 230000007480 spreading Effects 0.000 claims description 8
- 238000013461 design Methods 0.000 abstract description 3
- 238000004891 communication Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 5
- 238000012937 correction Methods 0.000 description 4
- 125000004122 cyclic group Chemical group 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 150000001875 compounds Chemical class 0.000 description 2
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/11—Error 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/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1148—Structural properties of the code parity-check or generator matrix
- H03M13/116—Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/63—Joint error correction and other techniques
- H03M13/635—Error control coding in combination with rate matching
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/65—Purpose and implementation aspects
- H03M13/6508—Flexibility, adaptability, parametrability and configurability of the implementation
- H03M13/6516—Support of multiple code parameters, e.g. generalized Reed-Solomon decoder for a variety of generator polynomials or Galois fields
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/65—Purpose and implementation aspects
- H03M13/6522—Intended application, e.g. transmission or communication standard
- H03M13/6527—IEEE 802.11 [WLAN]
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/65—Purpose and implementation aspects
- H03M13/6577—Representation or format of variables, register sizes or word-lengths and quantization
- H03M13/658—Scaling by multiplication or division
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/65—Purpose and implementation aspects
- H03M13/6577—Representation or format of variables, register sizes or word-lengths and quantization
- H03M13/6591—Truncation, saturation and clamping
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Error Detection And Correction (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
The invention provides a method and device for encoding a low-density parity check code. The method comprises the following steps of: comparing a mother code rate and a transmission code rate which are supported by a uniform basic matrix; determining the length K'of an input information grouping bit according to a comparison result; determining an encoding matrix of the low-density parity check (LDPC) code according to the uniform basic matrix and an expansion factor; determining an information bit to be encoded according to the received information grouping bit with the length of K'; and performing LDPC encoding on the information bit to be encoded by using the encoding matrix, and processing a mother code word bit obtained through encoding to acquire a code word bit to be transmitted. By the method and device for encoding the LDPC code, the basic matrix and the expansion factor are determined; the input information grouping length is determined or the encoding matrix is processed according to the received transmission code rate, so the code word which is in accordance with the transmission code rate can be acquired; on the basis of the optimal performance, the changeability of the code rate is realized; furthermore, the hardware design complexity is reduced and the cost is lower.
Description
Technical Field
The present invention relates to the field of digital communications, and in particular, to a method and an apparatus for encoding a low density parity check code.
Background
At present, digital communication systems are commonly used communication systems. As shown in fig. 1, the digital communication system is composed of a transmitting end, a channel and a receiving end, wherein the transmitting end generally includes a source, a source encoder, a channel encoder and a modulator (or a writing unit); the receiving end generally includes a demodulator (or a readout unit), a channel decoder, a source decoder, and a sink; a channel (or a storage medium) exists between a transmitting end and a receiving end, a noise source exists in the channel in the digital communication system, and a channel coding link (including channel coding and decoding, modulation and demodulation, and the like) is the most critical technology of the whole digital communication physical layer, which determines the effectiveness and reliability of the underlying transmission of the digital communication system.
The channel encoder is used for resisting various noises and interferences in the transmission process, and ensuring the reliability of information transmission by artificially adding redundant information to ensure that a system has the capability of automatically correcting errors. Low Density Parity Check (LDPC) codes are linear block codes that can be defined by a very sparse Parity Check matrix or bipartite graph, and Low-complexity encoding and decoding can be implemented by using the sparsity of the Check matrix thereof, so that the LDPC code is put to practical use.
An M × N parity check matrix H defines that each codeword with N bits satisfies the constraint of M parity check sets, i.e., N-bit codewords with M bits of check bits and N-M bits of information bits are encoded. Let the parity check matrix H of the LDPC code be (m)b×z)×(nb×z) Is a matrix of mb×nbEach block matrix is different powers of a basic permutation matrix of z × z, and when the basic permutation matrix is an identity matrix, the basic permutation matrix is a cyclic shift matrix of the identity matrix, and if the basic permutation matrix is a right shift matrix, the block matrix has the following form:
by such powersEach block matrix can be uniquely identified and the unit matrix can be represented by 0 in power and the zero matrix by-1 in power. Thus, if each block matrix of H is replaced by its power, one m is obtainedb×nbPower matrix of (H)b. Herein is defined as HbIs the basis matrix of H, H being called HbThe spreading matrix of (2). In the actual encoding, z is the code length/the number of columns of the basic matrix N/NbReferred to as spreading factor. For example, a matrix
A2 x 4 basis matrix H can be used with the following parameters zbAnd the basic permutation matrix is an identity matrix of z x z,
z is 3 and
therefore, it can also be said that the encoder of the LDPC code is composed of the basic matrix HbAnd the expansion factor z and the basic permutation matrix are generated uniquely.
If a basic matrix is adopted by the LDPC for each different spreading factor, a codec of the LDPC code needs to store one basic matrix for each different code length, and when the code length is various, a plurality of basic matrices need to be stored, and the storage and other problems need to be considered. Therefore, when the variable code length needs to be realized, the LDPC codes with various code lengths in a certain range of the same code rate use the same form of basic matrix, and the matrix is called as a uniform basic matrixDifferent code length, pairAnd correcting and expanding to obtain a parity check matrix H, so that the generated codec can be suitable for occasions with variable code length.
Wherein the modification is to use spreading factors of different code lengths to pair the basic matrix HbOr unifying the basis matricesThe non-negative value in (1) is corrected so that the corrected element value is smaller than the spreading factor value at the code length.
This is because HbOrThe element in (1) represents the power of the basic permutation matrix, and the basic permutation matrix, namely the unit matrix of z × z, is equivalent to the unit matrix circularly shifts right by one bit every cycle, namely the unit matrix circularly shifts right by one column, so that the basic cyclic matrix is circularly shifted by z-1 times at most; if the loop is cycled z times, the resulting identity matrix is again the identity matrix, which is equal to no cyclic shift. There are many kinds of correction algorithms, for example, a modulo (mod), a round (scale + floor), a round (scale + round), etc. can be used, and P is setijIs a basis matrix HbNon-negative element, P 'of row i and column j of'ijFor the modified basis matrixThe non-negative elements in the ith row and the jth column of the middle row have:
for the modulo (mod) algorithm: <math>
<mrow>
<msubsup>
<mi>P</mi>
<mi>ij</mi>
<mo>′</mo>
</msubsup>
<mo>≡</mo>
<msub>
<mi>P</mi>
<mi>ij</mi>
</msub>
<mi>mod</mi>
<mi>z</mi>
<mo>≡</mo>
<msub>
<mi>P</mi>
<mi>ij</mi>
</msub>
<mi>mod</mi>
<mfrac>
<mi>N</mi>
<msub>
<mi>n</mi>
<mi>b</mi>
</msub>
</mfrac>
<mo>;</mo>
</mrow>
</math>
for the round (scale + round) algorithm: <math>
<mrow>
<msubsup>
<mi>P</mi>
<mi>ij</mi>
<mo>′</mo>
</msubsup>
<mo>=</mo>
<mi>Round</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>P</mi>
<mi>ij</mi>
</msub>
<mo>×</mo>
<mfrac>
<mi>z</mi>
<msub>
<mi>z</mi>
<mi>max</mi>
</msub>
</mfrac>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mi>Round</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>P</mi>
<mi>ij</mi>
</msub>
<mo>×</mo>
<mfrac>
<mi>N</mi>
<msub>
<mi>N</mi>
<mi>max</mi>
</msub>
</mfrac>
<mo>)</mo>
</mrow>
</mrow>
</math>
wherein z is the spreading factor corresponding to the current code length, i.e. the number of rows or columns of the block matrix, zmaxFor the maximum supported code length NmaxThe corresponding spreading factor. mod is the operation of the modulus taking,for the rounding operation, Round is the rounding operation.
For example, for LDPC code with code length 1152 bits, let its basic matrix HbIs 93, the maximum supported code length is 2304, the size of the basic matrix is 12 × 24, and the result of correcting the basic matrix is:
for the modulo (mod) algorithm:
for the round (scale + round) algorithm: <math>
<mrow>
<mi>Round</mi>
<mrow>
<mo>(</mo>
<mn>93</mn>
<mo>×</mo>
<mfrac>
<mn>1152</mn>
<mn>2304</mn>
</mfrac>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mi>Round</mi>
<mrow>
<mo>(</mo>
<mn>46.5</mn>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mn>47</mn>
<mo>.</mo>
</mrow>
</math>
the LDPC code with variable code length of specific code rate can completely use one coder/decoder because of having the same form of basic matrix, wherein the same form of basic matrix can also be called as uniform basic matrix
Assume that the parity check matrix H of an LDPC code has a size of (m)b×z)×(nbXz), unified basis matrixIs m in sizeb×nbThen the LDPC code supports the mother code rate Rm=(nb-mb)/nb(ii) a If the length of the input information packet is K ', the code word bit to be transmitted with the length of N' is obtained after a series of processing, and the code word is called as the transmission code rate Rtx=K′/N′。
In ieee802.16e, the code rates supported by LDPC codes are 1/2, 2/3, 3/4, and 5/6, and in the encoding scheme of the existing LDPC code, LDPC encoding matrices H with different mother code rates are usually adopted to ensure that the LDPC code has a certain degree of flexible code rate and performance, and at this time, four basic matrices H appearbA plurality of LDPC codecs are required on hardware, so that the implementation cost of the hardware is greatly increased; or, a coder/decoder capable of adapting to various mother code rates is used to realize coding and decoding with different code rates, but the hardware design is very complex, and the cost of hardware implementation is also greatly increased.
Disclosure of Invention
In view of the above, the main objective of the present invention is to provide a method and an apparatus for encoding an LDPC code, which implement encoding of an LDPC code with an arbitrary variable code rate.
In order to achieve the purpose, the technical scheme of the invention is realized as follows:
a method of encoding a low density parity check, LDPC, code, the method comprising the steps of:
comparing the mother code rate supported by the unified basic matrix with the transmission code rate, and determining the length K' of the input information grouping bit according to the comparison result;
determining an encoding matrix of the LDPC code according to the unified basic matrix and the expansion factor;
determining information bits to be coded by received information packet bits with the length of K';
and performing LDPC coding on the information bits to be coded by using the coding matrix, and processing the code word bits of the mother code obtained by coding to obtain the code word bits to be transmitted.
The method further comprises the following steps: and setting a uniform basic matrix and an expansion factor of the LDPC code.
Before comparing the mother code rate supported by the uniform basic matrix with the transmission code rate, the method further comprises: receiving a current transmission code rate;
determining the length K' of the input information packet bit as follows according to the comparison result:
when R istx≥RmWhen the length K' of the information packet is determined to be (n)b-mb) Xz; when R istx<RmWhen the length of the information packet bit is determined to be K ═ func (m)b×z×Rtx/(1-Rtx) Or K ═ func (m)b×z/(1-Rtx))-mbX z, or K ═ func (func (m)b×z/(1-Rtx))×Rtx);
Wherein R istxFor transmission of code rate, RmIs the code rate of the mother code, mb、nbRespectively, the number of rows and columns of the unified basic matrix, z is a spreading factor, func (x) is one of integer up, integer down, or integer round off for x.
And determining the coding matrix of the LDPC code according to the unified basic matrix and the expansion factor as follows:
and correcting the unified basic matrix, and expanding the corrected basic matrix by using a unit matrix of z multiplied by z according to an expansion factor z to obtain an encoding matrix of the LDPC code.
The received information packet bit with the length of K' determines that the information bit to be coded is as follows:
when R istx≥RmWhen the coding is carried out, the received information grouping bit with the length of K' is directly used as the information bit to be coded; when R istx<RmThen, padding bits are added to the information packet bits of length K' to form a length KbXz information bits to be encoded.
The processing of the mother code codeword bits obtained by encoding is as follows:
rearranging the code words of the mother code obtained by encoding, wherein the code words of the mother code before rearrangement have the bit of A0,A1,…,Anb×z-1The rearranged mother code word bit is B0,B1,…,Bnb×z-1The rearrangement formula is:
wherein k isb=nb-mbPV represents a codeword rearrangement vector whose set of elements is nb-mb,nb-mb+1,nb-mb+2,…,nb-1}, PV (x) denotes an element in the PV vector with index x, x being a non-negative integer;
when R istx≥RmThen, the rearranged mother code word bit B is processed0,B1,…,Bnb×z-1Taking func (K'/R) from small to large according to the indextx) Bits as codeword bits to be transmitted;
when R istx<RmWhen k is to be addedbxz-K' padding bits from rearranged mother code codeword bits B0,B1…,Bnb×z-1The systematic bits are deleted, and the rest code word bits of the mother code are used as code word bits to be transmitted.
The determining of the encoding matrix of the LDPC code is as follows:
correcting the unified basic matrix, and expanding the corrected basic matrix by using a unit matrix of z multiplied by z according to an expansion factor z to obtain an expansion matrix of the LDPC code;
when R istx≥RmThen, taking the extended matrix as the coding matrix of the LDPC code; when R istx<RmWhile, truncating func (m) to the right of the spreading matrixb×z/(1-Rtx) Column), using the intercepted matrix as the coding matrix of the LDPC code; or,
when in useWhen the number of the base matrixes is a positive integer, correcting the unified base matrix to obtain a corrected base matrix;
when R istx≥RmThen, according to an expansion factor z, expanding the corrected basic matrix by using a unit matrix of z multiplied by z to obtain an encoding matrix of the LDPC code; when R istx<RmThen, k 'to the right of the corrected base matrix is intercepted'b+mbAnd expanding the matrix obtained by intercepting by using a unit matrix of z multiplied by z according to the expansion factor z to obtain the coding matrix of the LDPC code.
The received information packet bit with the length of K' determines that the information bit to be coded is as follows: the information packet bits with length K' are directly used as information bits to be encoded.
The processing of the mother code codeword bits obtained by encoding is as follows:
rearranging the code words of the mother code obtained by encoding, wherein the code words of the mother code before rearrangement have the bits ofThe rearranged mother code codeword bits areThe rearrangement formula is:
wherein,PV represents a codeword rearrangement vector whose elements are grouped intoPV (x) represents an element with index x in the PV vector, wherein x is a non-negative integer, andrepresenting the upward integer of x;
when R istx≥RmThen, the rearranged mother code word bits are rearrangedTaking func (K'/R) from small to large according to the indextx) Bits as codeword bits to be transmitted;
when R istx<RmThen directly decoding the rearranged mother code word bitsAs the codeword bits to be transmitted.
An apparatus for encoding an LDPC code, comprising an encoding unit, the apparatus further comprising: the device comprises a comparison unit, a grouping bit determination unit, a coding matrix determination unit, an information bit determination unit and a code word processing unit; wherein,
the comparison unit is used for comparing the mother code rate supported by the unified basic matrix with the transmission code rate;
a packet bit determination unit for determining the length K' of the input information packet bits according to the comparison result of the comparison unit;
the encoding matrix determining unit is used for determining an encoding matrix of the LDPC code according to the unified basic matrix and the expansion factor;
an information bit determining unit, configured to receive an information packet bit with a length of K', determine an information bit to be encoded, and transmit the information bit to an encoding unit;
and the code word processing unit is used for processing the mother code word obtained by LDPC coding of the coding unit to obtain the code word bit to be transmitted.
The device further comprises: and the setting unit is used for setting the uniform basic matrix and the expansion factor of the LDPC code.
The apparatus further comprises an input unit for receiving a current transmission code rate;
the grouping bit determining unit is specifically used for determining when the comparison result of the comparing unit is Rtx≥RmWhen the length K' of the information packet bit is determined to be (n)b-mb) Xz; when the comparison result of the comparison unit is Rtx<RmWhen the length of the information packet bit is determined to be K ═ func (m)b×z×Rtx/(1-Rtx) Or K ═ func (m)b×z/(1-Rtx))-mbX z, or K ═ func (func (m)b×z/(1-Rtx))×Rtx) (ii) a Wherein R istxFor transmission of code rate, RmIs the code rate of the mother code, mb、nbRespectively, the number of rows and columns of the unified basic matrix, z is a spreading factor, func (x) is one of integer up, integer down, or integer round off for x.
The coding matrix determining unit is specifically configured to modify the uniform basic matrix, and extend the modified basic matrix by using a zxz identity matrix according to an extension factor z to obtain a coding matrix of the LDPC code.
The information bit determination unit is specifically configured to determine when the comparison result of the comparison unit is Rtx≥RmThen, the received information packet bit with length of K' is alignedReceiving as information bits to be encoded; when the comparison result of the comparison unit is Rtx<RmThen, padding bits are added to the information packet bits of length K' to form a length KbXz information bits to be encoded.
The code word processing unit is specifically configured to rearrange the mother code word obtained by encoding by the encoding unit, where the mother code word bit before rearrangement is a0,A1,…,Anb×z-1The rearranged mother code word bit is B0,B1,…,Bnb×z-1The rearrangement formula is:
wherein k isb=nb-mbPV represents a codeword rearrangement vector whose set of elements is nb-mb,nb-mb+1,nb-mb+2,…,nb-1}, PV (x) denotes an element in the PV vector with index x, x being a non-negative integer;
when the comparison result of the comparison unit is Rtx≥RmThen, the rearranged mother code word bit B is processed0,B1,…,Bnb×z-1Taking func (K'/R) from small to large according to the indextx) Bits as codeword bits to be transmitted;
when the comparison result of the comparison unit is Rtx<RmWhen k is to be addedbxz-K' padding bits from rearranged mother code codeword bits B0,B1,…,Bnb×z-1The systematic bits are deleted, and the rest code word bits of the mother code are used as code word bits to be transmitted.
The encoding matrix determining unit is specifically used for correcting the uniform basic matrix, and according to an expansion factor z, expanding the corrected basic matrix by using a unit matrix of z multiplied by z to obtain an expansion matrix of the LDPC code; when comparing the ratio of the unitsThe result is Rtx≥RmThen, taking the extended matrix as the coding matrix of the LDPC code; when the comparison result of the comparison unit is Rtx<RmWhile, truncating func (m) to the right of the spreading matrixb×z/(1-Rtx) Column), using the intercepted matrix as the coding matrix of the LDPC code; or atWhen the number of the base matrixes is a positive integer, correcting the unified base matrix to obtain a corrected base matrix; when the comparison result of the comparison unit is Rtx≥RmThen, according to an expansion factor z, expanding the corrected basic matrix by using a unit matrix of z multiplied by z to obtain an encoding matrix of the LDPC code; when the comparison result of the comparison unit is Rtx<RmThen, k 'to the right of the corrected base matrix is intercepted'b+mbAnd expanding the matrix obtained by intercepting by using a unit matrix of z multiplied by z according to the expansion factor z to obtain the coding matrix of the LDPC code.
The information bit determining unit is specifically configured to directly use the received information packet bits with length K' as information bits to be encoded.
The code word processing unit is specifically configured to rearrange the mother code word obtained by the encoding unit, where the mother code word bits before rearrangement areThe rearranged mother code codeword bits areThe rearrangement formula is:
wherein,PV represents a codeword rearrangement vector, its element setIs composed ofPV (x) represents an element with an index of x in a PV vector, wherein x is a non-negative integer;
when the comparison result of the comparison unit is Rtx≥RmThen, the rearranged mother code word bits are rearrangedTaking func (K'/R) from small to large according to the indextx) Bits as codeword bits to be transmitted;
when the comparison result of the comparison unit is Rtx<RmThen directly decoding the rearranged mother code word bitsAs the codeword bits to be transmitted.
The coding method and the device of the LDPC code provided by the invention determine a basic matrix and an expansion factor, determine the length of the input information packet or process the coding matrix according to the received transmission code rate to obtain the code word meeting the transmission code rate, realize the variability of the code rate on the basis of optimal performance, reduce the complexity of hardware design for realizing different code rates and have lower realization cost.
Drawings
Fig. 1 is a block diagram of a digital communication system;
FIG. 2 is a schematic diagram of an implementation flow of a coding method of an LDPC code provided in the present invention;
FIG. 3 is a flowchart illustrating a first embodiment of a method for encoding an LDPC code according to the present invention;
FIG. 4 is a flowchart illustrating a second embodiment of an LDPC encoding method according to the present invention;
fig. 5 is a block diagram of an LDPC code encoding apparatus according to the present invention.
Detailed Description
The basic idea of the invention is as follows: comparing the mother code rate supported by the unified basic matrix with the transmission code rate, and determining the length K' of the input information grouping bit according to the comparison result; determining an encoding matrix of the LDPC code according to the unified basic matrix and the expansion factor; determining information bits to be coded by received information packet bits with the length of K'; and performing LDPC coding on the information bits to be coded by using the coding matrix, and processing the code word bits of the mother code obtained by coding to obtain the code word bits to be transmitted.
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is further described in detail below with reference to the accompanying drawings by way of examples.
Fig. 2 shows a flow of an encoding method of an LDPC code provided by the present invention, as shown in fig. 2, the method includes the following steps:
s201, receiving a uniform basic matrix of LDPC code with fixed size determined by userAnd an expansion factor z;
in this step, the user can determine a size m according to actual requirementsb×nbUnified basis matrix ofAnd a maximum spreading factor zmaxWherein m isb、nb、zmaxIs a positive integer, let kb=nb-mbThen obtainThe supported mother code rate is Rm=(nb-mb)/nb=kb/nb(ii) a And determines the spreading factor z according to the code length of the digital communication system in transmission, and generally, for the convenience of hardware implementation, the spreading factor z is a power of 2 or a positive integer multiple of the power of 2.
S202, receiving the current transmission code rate RtxComparison of RtxAnd RmDetermining the length K' of the input information packet bits according to the comparison result;
in this step, when R istx≥RmWhen the length K' of the information packet is Kb×z=(nb-mb) Xz; when R istx<RmThen, the generated m is encodedbThe xz parity bits are transmitted, so that the information packet length K' can be determined by the parity bit length mbXz and transmission code rate RtxIs determined, therefore K', mbXz and RtxCan be expressed by, but is not limited to, the following formula:orOrThus, K' may be represented by, but is not limited to, the following formula: k ═ func (m)b×z×Rtx/(1-Rtx) Or K ═ func (m)b×z/(1-Rtx))-mbX z, or K ═ func (func (m)b×z/(1-Rtx))×Rtx) (ii) a Where func (x) may represent one of integer up, integer down, or integer round off for x.
In this step, first, the correction algorithm and z pairs are usedCorrecting to obtain a corrected basic matrixAccording toAnd z and zxz are extended to obtain (m)b×z)×(nbXz) LDPC matricesIn the invention, the device can be used forCoding matrix H as LDPC codebzOr according to RtxAnd RmAs a result of the comparison ofIntercepting to obtain an encoding matrix H of the LDPC codebz。
S204, determining information bits to be coded by the received information packet bits with the length of K';
in particular, according to the coding matrix HbzSize and R oftxAnd RmAnd processing the information packet bits to obtain the information bits to be coded.
S205, encoding the matrix HbzAnd carrying out LDPC coding on the information bits to be coded to obtain mother code word bits, and processing the mother code word bits to obtain the code word bits to be transmitted.
In particular, according to the transmission code rate RtxThe length of the code word bit to be transmitted can be determined, and the code word of the mother code is rearranged, shortened or punctured according to the determined length of the code word bit to be transmittedTo the codeword bits to be transmitted.
Fig. 3 shows a flow of implementing a first embodiment of the LDPC code encoding method provided in the present invention, and as shown in fig. 3, the method includes the following steps:
S301-S302, receiving a uniform basic matrix of LDPC code with fixed size determined by userAnd a maximum spreading factor zmaxDetermining a spreading factor z according to the required code length, and then executing S305;
in this step, the user can determine a size m according to actual requirementsb×nbUnified basis matrix ofAnd a maximum spreading factor zmaxWherein m isb、nb、zmaxIs a positive integer, let kb=nb-mbThen obtainThe supported mother code rate is Rm=(nb-mb)/nb=kb/nb(ii) a And determines the spreading factor z according to the code length required by the digital communication system in transmission, and generally, for hardware implementation, the spreading factor z is a power of 2 or a positive integer multiple of the power of 2.
S303 to S304, receiving the current transmission code rate RtxComparison of RtxAnd RmDetermining the length K' of the input information packet bits according to the comparison result;
in this step, when R istx≥RmWhen the length K' of the information packet is Kb×z=(nb-mb) Xz; when R istx<RmThen, the generated m is encodedbXz parity bits are transmitted, and thus the information packet is transmittedThe length K' may be determined by the check bit length mbXz and transmission code rate RtxIs determined, therefore K', mbXz and RtxCan be expressed by, but is not limited to, the following formula:orOrThus, K' may be represented by, but is not limited to, the following formula: k ═ func (m)b×z×Rtx/(1-Rtx) Or K ═ func (m)b×z/(1-Rtx))-mbX z, or K ═ func (func (m)b×z/(1-Rtx))×Rtx) (ii) a Where func (x) may represent one of integer up, integer down, or integer round off for x.
S305, unifying the basic matrixCorrecting to obtain the coding matrix H of the LDPC code by using z expansionbzThen, S308 is executed;
in this step, first, the correction algorithm and z pairs are usedCorrecting to obtain a corrected basic matrixAccording toAnd z and zxz are extended to obtain (m)b×z)×(nbXz) LDPC matricesAnd will matrixCoding matrix H as LDPC codebz。
S306-S307, determining information bits to be coded by the received information packet bits with the length of K';
specifically, when R istx≥RmWhen the coding is carried out, the received information grouping bit with the length of K' is directly used as the information bit to be coded; when R istx<RmThen, padding bits are added to the information packet bits of length K' to form a length KbXz information bits to be coded, wherein the method for adding the padding bits can be in a mode of front of, behind or alternating with the information packet bits, and the length of the padding bits is kbxz-K', and additionally, for ease of subsequent processing, filled KbThe xz-K' bits are preferably all 0 bits, and may be all 1 bits.
S308 to S309, by (m)b×z)×(nbXz) encoding matrix HbzAnd carrying out LDPC coding on the information bits to be coded to obtain mother code word bits, and processing the mother code word bits to obtain the code word bits to be transmitted.
In particular by encoding the matrix HbzThe bit length of the mother code word is N ═ N by the LDPC codingbXz, where the first k of the mother code codeword bitsbXz bits are systematic bits, mbXz bits are parity bits.
In order to improve the reliability of codeword transmission, the obtained mother code codeword bits may be first subjected to codeword rearrangement, assuming that the mother code codeword bits before rearrangement are a0,A1,…,Anb×z-1The code word bits of the mother code after the code word rearrangement are B0,B1,…,Bnb×z-1Then the codeword rearrangement is represented by the following formula:
wherein PV represents a codeword rearrangement vector, PV includes mbA different element, whose set of elements is { n }b-mb,nb-mb+1,nb-mb+2,…,nb-1} and each element is different from the others, PV (x) denotes the element in the PV vector with index x, where x is a non-negative integer.
When R istx≥RmThen, the puncturing operation is carried out, namely the rearranged mother code word bit B is obtained0,B1,…,Bnb×z-1Taking func (K'/R) from small to large according to the indextx) And bits as codeword bits to be transmitted, where func (x) may represent a kind of integer fetching up, integer fetching down, or integer fetching by rounding up for x, and specifically, an appropriate operation may be selected for func (x) according to an actual application.
When R istx<RmThen, a shortening operation is performed to add k in S304bMother code word bit B obtained by rearranging xz-K' filling bits0,B1,,Bnb×z-1The systematic bits are deleted (for the deletion operation, the padding bits are preferably all 0 or all 1 bits in S304), and the remaining bits of the mother code codeword are used as the bits of the codeword to be transmitted.
The first embodiment of the LDPC code encoding method is specifically described below with reference to examples:
the first embodiment is as follows:
1. receiving a unified basis matrix for a 4 x 24 LDPC code determined by a userAnd a maximum spreading factor zmaxWherein z ismax=96,As follows:
can yield mb=4,nb=24,kb=nb-mb=24-4=20,The supported mother code rate is Rm=(nb-mb)/nb=kb/nbWhen 20/24 is 5/6 is 0.833, the spreading factor z is 3 × 2 for easy realization and practical code length5=96。
2. Receiving the current transmission code rate RtxCompare R0.78txAnd RmSince 0.78 < 0.833, the size of (c) can be increased by K' ═ ceil (m)b×z/(1-Rtx))-mbX z, K' is 1362, wherein ceil (x) denotes an integer up to x.
3. Correcting the unified basic matrix by a round-robin (scale + floor) algorithm and a spreading factor zObtaining a modified basis matrixAs follows:
according toAn LDPC matrix of (4 × 96) × (24 × 96) obtained by extending a unit matrix of z 96 and z × zAnd will matrixCoding matrix H as LDPC codebz。
4. The information packet bit with the length of K' is received, and R is the length of the information packet bit since 0.78 < 0.833tx<RmWill have a length of kbX z-K '558 all 0 bits are padded in front of the information packet bits of length K', resulting in a length KbInformation bits to be encoded of 1920 × z.
5. Mixing (4X 96) X (24X 96) HbzFor length of kbLDPC coding is carried out on the information bits to be coded with the length of 1920 being multiplied by z, and the length of N is obtainedb2304, where the first 1920 bits are systematic bits and the last 384 bits are parity bits.
The code word rearrangement is carried out on the code word bits of the mother code, and the code word bits of the mother code before rearrangement are assumed to be A0,A1,,A2303The code word bit of the mother code after the code word rearrangement is B0,B1,…,B2303The codeword rearrangement is represented by the following formula:
where PV denotes a codeword rearrangement vector, and PV ═ {20, 21, 22, 23 }. And because 0.78 < 0.833, namely Rtx<RmThe 558 all 0 bits filled in the front of the information packet bit in 4 are rearranged to obtain the mother code word bit B0,B1,…,B2303The rest code word bits B of the mother code are deleted from the systematic bits in the code558,B559,...,B2303As the codeword bits to be transmitted.
Example two:
1. receiving a unified basis matrix for a 4 x 24 LDPC code determined by a userAnd a maximum spreading factor zmaxWherein z ismax=96,As follows:
m can be obtainedb=4,nb=24,kb=nb-mb=24-4=20,The supported mother code rate is Rm=(nb-mb)/nb=kb/nb20/24-5/6-0.833, and for convenience of implementation, the spreading factor z is determined to be 26=64。
2. Receiving the current transmission code rate RtxCompare R to 0.875txAnd RmSince 0.875 > 0.833, the packet length K' is Kb×z=1280。
3. Correcting the unified basic matrix by a round-robin (scale + floor) algorithm and a spreading factor zObtaining a modified basis matrixAs follows:
according toAn LDPC matrix of (4 × 64) × (24 × 64) obtained by extending a unit matrix of z ═ 64 and z × zAnd will matrixCoding matrix H as LDPC codebz。
4. Receiving the information packet bit with the length of K '═ 1280, and since 0.875 is greater than 0.833, the length of K' ═ K isbThe 1280 information packet bits are directly used as information bits to be encoded.
5. Mixing (4X 64) × (24X 64) HbzFor length K ═ KbCarrying out LDPC coding on the information bits to be coded with the length of 1280 multiplied by z to obtain the length of NbX z 1536 mother code codeword bits, where the first 1280 bits are systematic bits and the last 256 bits are parity bits.
Performing code word repetition on code word bits of mother codeRow, assume the mother code codeword bits before rearrangement to be A0,A1,…,A1535The code word bits of the mother code after the code word rearrangement are B0,B1,…,B1535Then the codeword rearrangement is represented by the following formula:
where PV denotes a codeword rearrangement vector, and PV ═ {20, 21, 22, 23 }. Since 0.875 is more than 0.833, the compound belongs to Rtx≥RmThe rearranged mother code word bit B0,B1,…,B1535Taking floor (K'/R) from small to large according to the indextx) 1462 bits, i.e. B0,B1,…,B1461As the codeword bit to be transmitted, wherein floor (x) denotes taking an integer number down for x.
Fig. 4 shows a flow of implementing a second embodiment of the LDPC code encoding method provided in the present invention, and as shown in fig. 4, the method includes the following steps:
s401 to S402, receiving a uniform basic matrix of LDPC code with fixed size determined by userAnd a maximum spreading factor zmaxDetermining an expansion factor z according to the required code length;
in this step, the user can determine a size m according to actual requirementsb×nbUnified basis matrix ofAnd a maximum spreading factor zmaxWherein m isb、nb、zmaxIs a positive integer, let kb=nb-mbThen obtainThe supported mother code rate is Rm=(nb-mb)/nb=kb/nb(ii) a And determines the spreading factor z according to the code length of the digital communication system in transmission, and generally, for the convenience of hardware implementation, the spreading factor z is a power of 2 or a positive integer multiple of the power of 2.
S403, receiving the current transmission code rate RtxThen, S404 and S405 are respectively executed.
S404, comparing RtxAnd RmDetermines the length K' of the input information packet bits according to the comparison result, and then performs S406;
in this step, when R istx≥RmWhen the length K' of the information packet is Kb×z=(nb-mb) Xz; when R istx<RmThen, the generated m is encodedbThe xz parity bits are transmitted, so that the information packet length K' can be determined by the parity bit length mbXz and transmission code rate RtxIs determined, therefore K', mbXz and RtxCan be expressed by, but is not limited to, the following formula:orOr
Thus, K' may be represented by, but is not limited to, the following formula: k ═ func (m)b×z×Rtx/(1-Rtx) Or K ═ func (m)b×z/(1-Rtx))-mbX z, or K ═ func (func (m)b×z/(1-Rtx))×Rtx) (ii) a Where func (x) may represent one of integer up, integer down, or integer round off for x.
S405, for the unified basic matrixCorrecting to determine the encoding matrix H of LDPC codebzThen, S407 is executed;
in this step, first, the correction algorithm and z pairs are usedCorrecting to obtain a corrected basic matrixAccording toAnd z and zxz are extended to obtain (m)b×z)×(nbXz) LDPC spreading matrix
When R istx≥RmThen the matrix will be expandedCoding matrix H as LDPC codebz(ii) a When R istx<RmBy interceptingRight func (m)b×z/(1-Rtx) Column to obtain a size of (m)b×z)×func(mb×z/(1-Rtx) H) of a coding matrixbz. And alsoThus, the coding matrix H of the LDPC code at this timebzHas a size of (m)b×z)×(K′+mb×z)。
In addition, whenWhen it is a positive integer, the step is to unify the basic matrixIs corrected to obtainAfter that, it can also be based on RtxAnd RmTo the corrected basis matrixAfter processing, using expansion factor z to expand to obtain coding matrix H of LDPC codebz。
Specifically, when R istx≥RmThen, to the corrected basic matrixExpanding to obtain a coding matrix HbzObtaining a coding matrix H in particular according to the above methodbzThe process is the same and is not described again;
when R istx<RmBy interceptingK 'on the right'b+mbColumn, obtained with a size of mb×(k′b+mb) Of (2) matrixAccording toAnd a spreading factor z, spread to obtain (m)b×z)×((k′b+mb) Xz) of LDPC codesbz. In S403, when R istx<RmWhen the temperature of the water is higher than the set temperature,and alsoIs a positive integer and, therefore,namely, it isTherefore, the coding matrix H of the LDPC code is obtained at this timebzIs also (m)b×z)×(K′+mb×z)。
S406, receiving information grouping bits with the length of K', and directly taking the information grouping bits as information bits to be coded;
s407 to S408, by encoding matrix HbzAnd carrying out LDPC coding on the information bits to be coded to obtain mother code word bits, and processing the mother code word bits to obtain the code word bits to be transmitted.
Specifically, when R istx≥RmWhen the passage size is (m)b×z)×(nbXz) of LDPC codesbzLDPC coding is carried out on information bits to be coded, and the length of the obtained mother code codeword bit is N ═ K' + mb×z=nbXz, where the first K' bits of the mother code codeword bits are systematic bits and the last m bits are systematic bitsbXz bits are check bits, wherein the length of the information bits to be encoded is K ═ Kb×z=(nb-mb)×z。
In order to improve the reliability of code word transmission, firstly, code word rearrangement is carried out on the obtained code word bits of the mother code, and the code word bits of the mother code before rearrangement are assumed to beThe code word rearranged mother code has the code word bits ofThe codeword rearrangement is represented by the following formulaRepresents:
wherein,PV represents a codeword rearrangement vector, PV includes mbA different element, the set of elements beingAnd each element is different from the others, PV (x) denotes an element with an index x in the PV vector, where x is a non-negative integer.
When R istx≥RmThen, the puncturing operation is carried out, namely the code word bits of the mother code obtained after rearrangement are carried outTaking func (K'/R) from small to large according to the indextx) Bits as code word bits to be transmitted, i.e.Are the codeword bits to be transmitted. Wherein func (x) may represent one of upward integer fetching, downward integer fetching and integer rounding for x, and an appropriate operation may be selected for func (x) according to the actual application.
When R istx<RmThen, since the encoding matrix H is obtained in S403bzThe interception operation is performed in the process, so that the code word bits of the mother code obtained after rearrangement can be obtainedAs the codeword bits to be transmitted.
The second embodiment of the LDPC code encoding method is specifically described below with reference to examples:
example three:
1. receiving a unified basis matrix for a user-defined 6 x 24 LDPC codeAnd a maximum spreading factor zmaxWherein z ismax=96,As follows:
can yield mb=6,nb=24,kb=nb-mb=24-6=18,The supported mother code rate is Rm=(nb-mb)/nb=kb/nb18/24-3/4-0.75, and for the convenience of realization and the code length of the code required in practice, the spreading factor z is determined to be 3 × 25=96。
2. Receiving the current transmission code rate RtxCompare R0.9txAnd RmSince 0.9 > 0.75, the packet length K' K ═ Kb×z=1728。
3. By rounding (scale + floor) algorithm andspreading factor z corrects unified basis matrixObtaining a modified basis matrixAs follows:
according toAn LDPC matrix of (6 × 96) × (24 × 96) obtained by extending a unit matrix of z 96 and z × zAnd 0.9 > 0.75, then the matrix is dividedCoding matrix H as LDPC codebz。
4. Receiving information packet bits of length K1728 and converting the information packet bits of length K to KbThe 1728 information packet bits are directly used as information bits to be encoded.
5. Mixing (6X 96) X (24X 96) HbzFor length K ═ Kb1728, and performing LDPC coding to obtain the final productTo a length of N ═ K' + mb×z=nb2304, where the first 1728 bits are systematic bits and the last 576 bits are parity bits.
The code word rearrangement is carried out on the code word bits of the mother code, and the code word bits of the mother code before rearrangement are assumed to be A0,A1,…,A2303The code word bits of the mother code after the code word rearrangement are B0,B1,…,B2303Then the codeword rearrangement is represented by the following formula:
wherein,PV denotes a codeword rearrangement vector, and PV ═ 18, 19, 20, 21, 22, 23 }. Since 0.9 is more than 0.75, the compound belongs to Rtx≥RmThe rearranged mother code word bit B0,B1,…,B2303Taking ceil (K'/R) from small to large according to the indextx) 1920 bits, i.e. B0,B1,…,B1919As the codeword bits to be transmitted, ceil (x) indicates that x is taken as an integer.
Example four:
1. receiving a unified basis matrix for a user-defined 6 x 24 LDPC codeAnd a maximum spreading factor zmaxWherein z ismax=96,As follows:
can yield mb=6,nb=24,kb=nb-mb=24-6=18,The supported mother code rate is Rm=(nb-mb)/nb=kb/nb18/24-3/4-0.75, and for easy realization and practical code length, 2-2 expansion factor is determined6=64。
2. Receiving the current transmission code rate RtxR is 0.6, comparetxAnd RmSince 0.6 < 0.75, the size of (c) can be increased by K' ═ ceil (m)b×z/(1-Rtx))-mbX z, and K' is 576, wherein ceil (x) represents an integer up to x.
3. Correcting the unified basic matrix by a round-robin (scale + floor) algorithm and a spreading factor zObtaining a modified basis matrixAs follows:
according toAn LDPC matrix of (6 × 64) × (24 × 64) obtained by extending a unit matrix of z ═ 64 and z × zAnd since 0.6 < 0.75, therefore interceptCeil (m) on the rightb×z/(1-Rtx) 960 columns, resulting in a coding matrix H of size (6 × 64) × 960bz。
In addition, the step can also be processed as follows: obtaining a modified basis matrixAnd because 0.6 is less than 0.75,interceptingK 'on the right'b+mbColumn 15 with 9+6, resulting in a matrix size of 6 × (9+6)According toAnd z ═LDPC coding matrix H of (6 × 64) × (15 × 64) obtained by extending unit matrix of 64 and z × zbz。
4. Information packet bits of length K 'are received and the information packet bits of length K' 576 are directed as the information bits to be encoded.
5. Mixing (6X 64) × (15X 64) HbzLDPC coding is carried out on the information bits to be coded with the length of K '═ 576, and the length of N' + m is obtainedb×z=nbX z is 960 bits of the mother code codeword, where the first 576 bits are systematic bits and the last 384 bits are parity bits.
The code word rearrangement is carried out on the code word bits of the mother code, and the code word bits of the mother code before rearrangement are assumed to be A0,A1,…,A959The code word bits of the mother code after the code word rearrangement are B0,B1,…,B959Then the codeword rearrangement is represented by the following formula:
wherein,PV denotes a codeword rearrangement vector, and PV is {9, 10, 11, 12, 13, 14 }. And because 0.6 is less than 0.75, namely Rtx<RmSince 3 is obtaining the encoding matrix HbzThe interception operation is performed in the process, so that the code bit B of the mother code obtained after rearrangement can be obtained0,B1,…,B959As the codeword bits to be transmitted.
Fig. 5 shows a structure of an encoding apparatus of an LDPC code provided by the present invention, as shown in fig. 5, the apparatus includes: an encoding unit 10, a comparing unit 20, a grouping bit determining unit 30, an encoding matrix determining unit 40, an information bit determining unit 50, and a code word processing unit 60; the comparing unit 20 is configured to compare the mother code rate supported by the uniform basic matrix with the transmission code rate; the grouping bit determining unit 30 is used for determining the length K' of the input information grouping bit according to the comparison result of the comparing unit; the encoding matrix determining unit 40 is configured to determine an encoding matrix of the LDPC code according to the uniform basis matrix and the spreading factor; the information bit determining unit 50 is configured to receive an input information bit, obtain an information packet bit with a length K' according to the information packet bit length determined by the packet bit determining unit 30, determine an information bit to be encoded, and transmit the information bit to the encoding unit 10; the codeword processing unit 60 is configured to process a mother code codeword obtained by performing LDPC encoding on the encoding unit 10 to obtain a codeword bit to be transmitted.
Further, the apparatus further includes a setting unit 70 for setting a uniform basis matrix and a spreading factor of the LDPC code.
Further, the apparatus further comprises an input unit 80, configured to receive a current transmission code rate; the grouping bit determining unit 30 is specifically configured to determine when the comparison result of the comparing unit 20 is Rtx≥RmWhen the length K' of the information packet bit is determined to be (n)b-mb) Xz; when the comparison result of the comparison unit 20 is Rtx<RmWhen the length of the information packet bit is determined to be K ═ func (m)b×z×Rtx/(1-Rtx) Or K ═ func (m)b×z/(1-Rtx))-mbX z, or K ═ func (func (m)b×z/(1-Rtx))×Rtx) (ii) a Wherein R istxFor transmission of code rate, RmIs the code rate of the mother code, mb、nbRespectively, the number of rows and columns of the unified basic matrix, z is a spreading factor, func (x) is one of integer up, integer down, or integer round off for x.
Further, the coding matrix determining unit 40 is specifically configured to modify the uniform basic matrix, and extend the modified basic matrix by using a zxz identity matrix according to an extension factor z to obtain a coding matrix of the LDPC code.
Accordingly, the number of the first and second electrodes,the information bit determination unit 50 is specifically used when the comparison result of the comparison unit 20 is Rtx≥RmWhen the coding is carried out, the received information grouping bit with the length of K' is directly used as the information bit to be coded; when the comparison result of the comparison unit 20 is Rtx<RmThen, padding bits are added to the information packet bits of length K' to form a length KbXz, where the padding bits are all 0 bits or all 1 bits.
Accordingly, the code word processing unit 60 is specifically configured to rearrange the mother code word encoded by the encoding unit 10, where the mother code word bits before rearrangement are a0,A1,…,Anb×z-1The rearranged mother code word bit is B0,B1,…,Bnb×z-1The rearrangement formula is:wherein k isb=nb-mbPV represents a codeword rearrangement vector whose set of elements is nb-mb,nb-mb+1,nb-mb+2,…,nb-1}, PV (x) denotes an element in the PV vector with index x, x being a non-negative integer; when the comparison result of the comparison unit 20 is Rtx≥RmThen, the rearranged mother code word bit B is processed0,B1,…,Bnb×z-1Taking func (K'/R) from small to large according to the indextx) Bits as codeword bits to be transmitted; when the comparison result of the comparison unit 20 is Rtx<RmWhen k is to be addedbxz-K' padding bits from rearranged mother code codeword bits B0,B1,…,Bnb×z-1The systematic bits are deleted, and the rest code word bits of the mother code are used as code word bits to be transmitted.
Further, the coding matrix determining unit 40 is specifically configured to modify the uniform basic matrix, and according to the expansion factor z, expand the modified basic matrix by using a zxz identity matrix to obtain an LDAn extended matrix of PC codes; when the comparison result of the comparison unit 20 is Rtx≥RmThen, taking the extended matrix as the coding matrix of the LDPC code; when the comparison result of the comparison unit is Rtx<RmWhile, truncating func (m) to the right of the spreading matrixb×z/(1-Rtx) Column), using the intercepted matrix as the coding matrix of the LDPC code; or atWhen the number of the base matrixes is a positive integer, correcting the unified base matrix to obtain a corrected base matrix; when the comparison result of the comparison unit 20 is Rtx≥RmThen, according to an expansion factor z, expanding the corrected basic matrix by using a unit matrix of z multiplied by z to obtain an encoding matrix of the LDPC code; when the comparison result of the comparison unit 20 is Rtx<RmThen, k 'to the right of the corrected base matrix is intercepted'b+mbAnd expanding the matrix obtained by intercepting by using a unit matrix of z multiplied by z according to the expansion factor z to obtain the coding matrix of the LDPC code.
Accordingly, the information bit determination unit 50 is specifically configured to directly take the received information packet bits with length K' as information bits to be encoded.
Accordingly, the code word processing unit 60 is specifically configured to rearrange the mother code word obtained by the encoding unit 10, where the mother code word bits before rearrangement areThe rearranged mother code codeword bits areThe rearrangement formula is:wherein,PV represents a codeword rearrangement vector whose elements are grouped intoPV (x) represents an element with an index of x in a PV vector, wherein x is a non-negative integer; when the comparison result of the comparison unit 20 is Rtx≥RmThen, the rearranged mother code word bits are rearrangedTaking func (K'/R) from small to large according to the indextx) Bits as codeword bits to be transmitted; when the comparison result of the comparison unit 20 is Rtx<RmThen directly decoding the rearranged mother code word bitsAs the codeword bits to be transmitted.
It should be noted that encoding and decoding are corresponding to each other, so that the encoding method and the decoding device of the LDPC code provided by the present invention also have corresponding inverse operations, and are not described herein again.
The above description is only a preferred embodiment of the present invention, and is not intended to limit the scope of the present invention.
Claims (18)
1. A method of encoding a low density parity check, LDPC, code, the method comprising the steps of:
comparing the mother code rate supported by the unified basic matrix with the transmission code rate, and determining the length K' of the input information grouping bit according to the comparison result;
determining an encoding matrix of the LDPC code according to the unified basic matrix and the expansion factor;
determining information bits to be coded by received information packet bits with the length of K';
and performing LDPC coding on the information bits to be coded by using the coding matrix, and processing the code word bits of the mother code obtained by coding to obtain the code word bits to be transmitted.
2. The method of claim 1, further comprising: and setting a uniform basic matrix and an expansion factor of the LDPC code.
3. The method of claim 1 or 2, wherein comparing the mother code rate supported by the uniform basis matrix with the transmission code rate further comprises: receiving a current transmission code rate;
determining the length K' of the input information packet bit as follows according to the comparison result:
when R istx≥RmWhen the length K' of the information packet is determined to be (n)b-mb) Xz; when R istx<RmWhen the length of the information packet bit is determined to be K ═ func (m)b×z×Rtx/(1-Rtx) Or K ═ func (m)b×z/(1-Rtx))-mbX z, or K ═ func (func (m)b×z/(1-Rtx))×Rtx);
Wherein R istxFor transmission of code rate, RmIs the code rate of the mother code, mb、nbRespectively, the number of rows and columns of the unified basic matrix, z is a spreading factor, func (x) is one of integer up, integer down, or integer round off for x.
4. The method according to claim 1 or 2, wherein the determining the coding matrix of the LDPC code according to the unified base matrix and the spreading factor is:
and correcting the unified basic matrix, and expanding the corrected basic matrix by using a unit matrix of z multiplied by z according to an expansion factor z to obtain an encoding matrix of the LDPC code.
5. The method of claim 4, wherein the information bits to be encoded are determined from the received information packet bits of length K':
when R istx≥RmWhen the coding is carried out, the received information grouping bit with the length of K' is directly used as the information bit to be coded; when R istx<RmThen, padding bits are added to the information packet bits of length K' to form a length KbXz information bits to be encoded.
6. The method of claim 5, wherein the processing of the encoded mother code codeword bits is:
rearranging the code words of the mother code obtained by encoding, wherein the code words of the mother code before rearrangement have the bit of A0,A1,…,Anb×z-1The rearranged mother code word bit is B0,B1,…,Bnb×z-1The rearrangement formula is:
wherein k isb=nb-mbPV represents a codeword rearrangement vector whose set of elements is nb-mb,nb-mb+1,nb-mb+2,…,nb-1}, PV (x) denotes an element in the PV vector with index x, x being a non-negative integer;
when R istx≥RmThen, the rearranged mother code word bit B is processed0,B1,…,Bnb×z-1Taking func (K'/R) from small to large according to the indextx) Bits as codeword bits to be transmitted;
when R istx<RmWhen k is to be addedbxz-K' padding bits from rearranged mother code codeword bits B0,B1,…,Bnb×z-1The systematic bits are deleted, and the rest code word bits of the mother code are used as code word bits to be transmitted.
7. The method of claim 3, wherein determining the coding matrix of the LDPC code is:
correcting the unified basic matrix, and expanding the corrected basic matrix by using a unit matrix of z multiplied by z according to an expansion factor z to obtain an expansion matrix of the LDPC code;
when R istx≥RmThen, taking the extended matrix as the coding matrix of the LDPC code; when R istx<RmWhile, truncating func (m) to the right of the spreading matrixb×z/(1-Rtx) Column), using the intercepted matrix as the coding matrix of the LDPC code; or,
when in useWhen the number of the base matrixes is a positive integer, correcting the unified base matrix to obtain a corrected base matrix;
when R istx≥RmThen, according to an expansion factor z, expanding the corrected basic matrix by using a unit matrix of z multiplied by z to obtain an encoding matrix of the LDPC code; when R istx<RmThen, k 'to the right of the corrected base matrix is intercepted'b+mbAnd expanding the matrix obtained by intercepting by using a unit matrix of z multiplied by z according to the expansion factor z to obtain the coding matrix of the LDPC code.
8. The method of claim 7, wherein the information bits to be encoded are determined from the received information packet bits of length K': the information packet bits with length K' are directly used as information bits to be encoded.
9. The method of claim 8, wherein the processing of the encoded mother code codeword bits is:
rearranging the code words of the mother code obtained by encoding, wherein the code words of the mother code before rearrangement have the bits ofThe rearranged mother code codeword bits areThe rearrangement formula is:
wherein,PV represents a codeword rearrangement vector whose elements are grouped intoPV (x) represents an element with index x in the PV vector, wherein x is a non-negative integer, andrepresenting the upward integer of x;
10. An apparatus for encoding an LDPC code, comprising an encoding unit, the apparatus further comprising: the device comprises a comparison unit, a grouping bit determination unit, a coding matrix determination unit, an information bit determination unit and a code word processing unit; wherein,
the comparison unit is used for comparing the mother code rate supported by the unified basic matrix with the transmission code rate;
a packet bit determination unit for determining the length K' of the input information packet bits according to the comparison result of the comparison unit;
the encoding matrix determining unit is used for determining an encoding matrix of the LDPC code according to the unified basic matrix and the expansion factor;
an information bit determining unit, configured to receive an information packet bit with a length of K', determine an information bit to be encoded, and transmit the information bit to an encoding unit;
and the code word processing unit is used for processing the mother code word obtained by LDPC coding of the coding unit to obtain the code word bit to be transmitted.
11. The apparatus of claim 10, further comprising: and the setting unit is used for setting the uniform basic matrix and the expansion factor of the LDPC code.
12. The apparatus of claim 10 or 11, further comprising an input unit for receiving a current transmission code rate;
the grouping bit determining unit is specifically used for determining when the comparison result of the comparing unit is Rtx≥RmWhen the length K' of the information packet bit is determined to be (n)b-mb) Xz; when the comparison result of the comparison unit is Rtx<RmWhen the length of the information packet bit is determined to be K ═ func (m)b×z×Rtx/(1-Rtx) Or K ═ func (m)b×z/(1-Rtx))-mbX z, or K ═ func (func (m)b×z/(1-Rtx))×Rtx) (ii) a Wherein R istxFor transmission of code rate, RmIs the code rate of the mother code, mb、nbRespectively, the number of rows and columns of the unified basic matrix, z is a spreading factor, func (x) is one of integer up, integer down, or integer round off for x.
13. The apparatus according to claim 10 or 11, wherein the coding matrix determining unit is specifically configured to modify the uniform base matrix, and extend the modified base matrix by using a zxz identity matrix according to an extension factor z to obtain a coding matrix of the LDPC code.
14. The apparatus according to claim 13, wherein the information bit determining unit is specifically configured to determine when the comparison result of the comparing unit is Rtx≥RmWhen the coding is carried out, the received information grouping bit with the length of K' is directly used as the information bit to be coded; when the comparison result of the comparison unit is Rtx<RmThen, padding bits are added to the information packet bits of length K' to form a length KbXz information bits to be encoded.
15. The apparatus according to claim 14, wherein the codeword processing unit is specifically configured to rearrange the mother code codeword encoded by the encoding unit, and bits of the mother code codeword before rearrangement are a0,A1,…,Anb×z-1The rearranged mother code word bit is B0,B1,…,nb×z-1The rearrangement formula is:
wherein k isb=nb-mbPV represents a codeword rearrangement vector whose set of elements is nb-mb,nb-mb+1,nb-mb+2,…,nb-1}, PV (x) denotes an element in the PV vector with index x, x being a non-negative integer;
when the comparison result of the comparison unit is Rtx≥RmThen, the rearranged mother code word bit B is processed0,B1,…,Bnb×z-1Sequentially taking fun from small to large according to indexesc(K′/Rtx) Bits as codeword bits to be transmitted;
when the comparison result of the comparison unit is Rtx<RmWhen k is to be addedbxz-K' padding bits from rearranged mother code codeword bits B0,B1,…,Bnb×z-1The systematic bits are deleted, and the rest code word bits of the mother code are used as code word bits to be transmitted.
16. The apparatus according to claim 12, wherein the coding matrix determining unit is specifically configured to modify the uniform base matrix, and extend the modified base matrix by using a zxz identity matrix according to an extension factor z to obtain an extension matrix of the LDPC code; when the comparison result of the comparison unit is Rtx≥RmThen, taking the extended matrix as the coding matrix of the LDPC code; when the comparison result of the comparison unit is Rtx<RmWhile, truncating func (m) to the right of the spreading matrixb×z/(1-Rtx) Column), using the intercepted matrix as the coding matrix of the LDPC code; or atWhen the number of the base matrixes is a positive integer, correcting the unified base matrix to obtain a corrected base matrix; when the comparison result of the comparison unit is Rtx≥RmThen, according to an expansion factor z, expanding the corrected basic matrix by using a unit matrix of z multiplied by z to obtain an encoding matrix of the LDPC code; when the comparison result of the comparison unit is Rtx<RmThen, k 'to the right of the corrected base matrix is intercepted'b+mbAnd expanding the matrix obtained by intercepting by using a unit matrix of z multiplied by z according to the expansion factor z to obtain the coding matrix of the LDPC code.
17. The apparatus according to claim 16, wherein the information bit determining unit is specifically configured to use the received information packet bits with length K' directly as information bits to be encoded.
18. The apparatus according to claim 17, wherein the codeword processing unit is specifically configured to rearrange the mother code codeword obtained by the encoding unit, and bits of the mother code codeword before rearrangement areThe rearranged mother code codeword bits areThe rearrangement formula is:
wherein,PV represents a codeword rearrangement vector whose elements are grouped intoPV (x) represents an element with an index of x in a PV vector, wherein x is a non-negative integer;
when the comparison result of the comparison unit is Rtx≥RmThen, the rearranged mother code word bits are rearrangedTaking func (K'/R) from small to large according to the indextx) Bits as codeword bits to be transmitted;
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010293323.6A CN102412842B (en) | 2010-09-25 | 2010-09-25 | The coded method of a kind of low density parity check code and device |
PCT/CN2010/079103 WO2012037749A1 (en) | 2010-09-25 | 2010-11-25 | Encoding method for low density parity check code and apparatus thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010293323.6A CN102412842B (en) | 2010-09-25 | 2010-09-25 | The coded method of a kind of low density parity check code and device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102412842A true CN102412842A (en) | 2012-04-11 |
CN102412842B CN102412842B (en) | 2016-06-15 |
Family
ID=45873399
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010293323.6A Expired - Fee Related CN102412842B (en) | 2010-09-25 | 2010-09-25 | The coded method of a kind of low density parity check code and device |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN102412842B (en) |
WO (1) | WO2012037749A1 (en) |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015120719A1 (en) * | 2014-02-12 | 2015-08-20 | 中兴通讯股份有限公司 | Information processing method and device |
CN106685586A (en) * | 2015-11-11 | 2017-05-17 | 华为技术有限公司 | Method and device of generating low-density odd-even check codes for transmission in channel |
WO2017193558A1 (en) * | 2016-05-13 | 2017-11-16 | 中兴通讯股份有限公司 | Data processing method and device for structured ldpc code |
WO2017193614A1 (en) * | 2016-05-13 | 2017-11-16 | 中兴通讯股份有限公司 | Encoding method and device and decoding method and device for structured ldpc |
CN107370490A (en) * | 2016-05-13 | 2017-11-21 | 中兴通讯股份有限公司 | Coding, interpretation method and the device of structured LDPC |
CN107370489A (en) * | 2016-05-13 | 2017-11-21 | 中兴通讯股份有限公司 | The data processing method and device of structured LDPC code |
CN107404322A (en) * | 2014-09-17 | 2017-11-28 | 上海数字电视国家工程研究中心有限公司 | Check matrix and LDPC code word for low code rate LDPC code |
WO2018001067A1 (en) * | 2016-06-30 | 2018-01-04 | 华为技术有限公司 | Rm sequence generation and use method and device |
WO2018059588A1 (en) * | 2016-09-30 | 2018-04-05 | 中兴通讯股份有限公司 | Quasi-cyclic ldpc coding and decoding method and apparatus, and ldpc coder and decoder |
CN108134648A (en) * | 2016-12-01 | 2018-06-08 | 华为技术有限公司 | Notice channel transmitting method, method of reseptance and equipment |
WO2018103556A1 (en) * | 2016-12-09 | 2018-06-14 | 中兴通讯股份有限公司 | Quasi-cyclic ldpc code data processing apparatus and processing method |
CN108270448A (en) * | 2017-01-04 | 2018-07-10 | 中兴通讯股份有限公司 | Quasi-circulating low-density parity check coding method and device |
WO2018126914A1 (en) * | 2017-01-09 | 2018-07-12 | 中兴通讯股份有限公司 | Method and device for coding of quasi-cyclic low-density parity-check code, and storage medium |
CN108400838A (en) * | 2017-02-06 | 2018-08-14 | 华为技术有限公司 | Data processing method and equipment |
WO2018149389A1 (en) * | 2017-02-15 | 2018-08-23 | 中兴通讯股份有限公司 | Data processing method, device, and transmitting terminal |
WO2018157390A1 (en) * | 2017-03-03 | 2018-09-07 | Huawei Technologies Co., Ltd. | High-rate long ldpc codes |
WO2018171043A1 (en) * | 2017-03-24 | 2018-09-27 | 中兴通讯股份有限公司 | Processing method and device for quasi-cyclic low density parity check coding |
CN108631925A (en) * | 2017-03-24 | 2018-10-09 | 中兴通讯股份有限公司 | A kind of quasi-circulating low-density parity check code processing method and device |
CN108809487A (en) * | 2017-05-04 | 2018-11-13 | 华为技术有限公司 | Method, base station and the terminal device of transmission data |
WO2019029690A1 (en) * | 2017-08-11 | 2019-02-14 | 华为技术有限公司 | Communication method and device |
US10355711B2 (en) | 2014-12-30 | 2019-07-16 | Huawei Technologies Co., Ltd. | Data processing method and system based on quasi-cyclic LDPC |
CN111416625A (en) * | 2017-06-15 | 2020-07-14 | 华为技术有限公司 | Information processing method and communication device |
US11277153B2 (en) | 2017-06-27 | 2022-03-15 | Huawei Technologies Co., Ltd. | Method and apparatus for low density parity check channel coding in wireless communication system |
US11368241B2 (en) | 2017-08-11 | 2022-06-21 | Huawei Technologies Co., Ltd. | Communication method and communications apparatus |
US11477065B2 (en) | 2015-04-15 | 2022-10-18 | Zte Corporation | Method and apparatus for code block division |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018201912A1 (en) * | 2017-05-05 | 2018-11-08 | 电信科学技术研究院有限公司 | Method and device for selecting base graph for low-density parity-check code |
CN108809509B (en) | 2017-05-05 | 2021-01-22 | 电信科学技术研究院 | Method and device for selecting basic diagram of low-density parity check code |
CN115801191B (en) | 2017-06-26 | 2024-09-13 | 中兴通讯股份有限公司 | Quasi-cyclic low-density parity check coding design method and device |
CN109150194B (en) * | 2017-06-27 | 2022-01-14 | 华为技术有限公司 | Information processing method and device and communication equipment |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050172209A1 (en) * | 2004-02-03 | 2005-08-04 | Cameron Kelly B. | Efficient LDPC code decoding with new minus operator in a finite precision radix system |
CN1953335A (en) * | 2005-10-21 | 2007-04-25 | 中兴通讯股份有限公司 | A coding device and method for low density parity check code of supporting any code rate/code length |
CN101217337A (en) * | 2007-01-01 | 2008-07-09 | 中兴通讯股份有限公司 | A low density parity code encoding device and method supporting incremental redundancy hybrid automatic repeat |
CN101325474A (en) * | 2007-06-12 | 2008-12-17 | 中兴通讯股份有限公司 | Method for encoding channel of mixed automatic request retransmission and modulation mapping of LDPC code |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7188297B2 (en) * | 2004-08-12 | 2007-03-06 | Motorola, Inc. | Method and apparatus for encoding and decoding data |
WO2006039801A1 (en) * | 2004-10-12 | 2006-04-20 | Nortel Networks Limited | System and method for low density parity check encoding of data |
CN101567697B (en) * | 2009-05-25 | 2012-12-12 | 普天信息技术研究院有限公司 | Coder and method for coding rate-compatible low-density parity-check codes |
-
2010
- 2010-09-25 CN CN201010293323.6A patent/CN102412842B/en not_active Expired - Fee Related
- 2010-11-25 WO PCT/CN2010/079103 patent/WO2012037749A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050172209A1 (en) * | 2004-02-03 | 2005-08-04 | Cameron Kelly B. | Efficient LDPC code decoding with new minus operator in a finite precision radix system |
CN1953335A (en) * | 2005-10-21 | 2007-04-25 | 中兴通讯股份有限公司 | A coding device and method for low density parity check code of supporting any code rate/code length |
CN101217337A (en) * | 2007-01-01 | 2008-07-09 | 中兴通讯股份有限公司 | A low density parity code encoding device and method supporting incremental redundancy hybrid automatic repeat |
CN101325474A (en) * | 2007-06-12 | 2008-12-17 | 中兴通讯股份有限公司 | Method for encoding channel of mixed automatic request retransmission and modulation mapping of LDPC code |
Cited By (63)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015120719A1 (en) * | 2014-02-12 | 2015-08-20 | 中兴通讯股份有限公司 | Information processing method and device |
CN107404322A (en) * | 2014-09-17 | 2017-11-28 | 上海数字电视国家工程研究中心有限公司 | Check matrix and LDPC code word for low code rate LDPC code |
US10355711B2 (en) | 2014-12-30 | 2019-07-16 | Huawei Technologies Co., Ltd. | Data processing method and system based on quasi-cyclic LDPC |
US11477065B2 (en) | 2015-04-15 | 2022-10-18 | Zte Corporation | Method and apparatus for code block division |
CN106685586B (en) * | 2015-11-11 | 2020-02-14 | 华为技术有限公司 | Method and apparatus for generating low density parity check code for transmission in a channel |
WO2017080249A1 (en) * | 2015-11-11 | 2017-05-18 | 华为技术有限公司 | Method of generating low-density parity-check code transmitted over channel and apparatus utilizing same |
CN106685586A (en) * | 2015-11-11 | 2017-05-17 | 华为技术有限公司 | Method and device of generating low-density odd-even check codes for transmission in channel |
US10523237B2 (en) | 2016-05-13 | 2019-12-31 | Zte Corporation | Method and apparatus for data processing with structured LDPC codes |
CN111565052A (en) * | 2016-05-13 | 2020-08-21 | 中兴通讯股份有限公司 | Data processing method and device of structured LDPC code |
CN107370489B (en) * | 2016-05-13 | 2020-07-28 | 中兴通讯股份有限公司 | Data processing method and device for structured L DPC code |
CN111565052B (en) * | 2016-05-13 | 2023-03-07 | 中兴通讯股份有限公司 | Data processing method and device of structured LDPC code |
CN107370490A (en) * | 2016-05-13 | 2017-11-21 | 中兴通讯股份有限公司 | Coding, interpretation method and the device of structured LDPC |
US10892778B2 (en) | 2016-05-13 | 2021-01-12 | Zte Corporation | Encoding method and device and decoding method and device for structured LDPC |
WO2017193558A1 (en) * | 2016-05-13 | 2017-11-16 | 中兴通讯股份有限公司 | Data processing method and device for structured ldpc code |
EP3457574A4 (en) * | 2016-05-13 | 2019-05-08 | ZTE Corporation | Data processing method and device for structured ldpc code |
WO2017193614A1 (en) * | 2016-05-13 | 2017-11-16 | 中兴通讯股份有限公司 | Encoding method and device and decoding method and device for structured ldpc |
CN107370490B (en) * | 2016-05-13 | 2023-07-14 | 中兴通讯股份有限公司 | Method and device for encoding and decoding structured LDPC (Low Density parity check) |
US11683051B2 (en) | 2016-05-13 | 2023-06-20 | Zte Corporation | Method and apparatus for data processing with structured LDPC codes |
US11139835B2 (en) | 2016-05-13 | 2021-10-05 | Zte Corporation | Method and apparatus for data processing with structured LDPC codes |
CN107370489A (en) * | 2016-05-13 | 2017-11-21 | 中兴通讯股份有限公司 | The data processing method and device of structured LDPC code |
WO2018001067A1 (en) * | 2016-06-30 | 2018-01-04 | 华为技术有限公司 | Rm sequence generation and use method and device |
CN107566081B (en) * | 2016-06-30 | 2020-04-03 | 华为技术有限公司 | RM sequence generation and application method and device |
CN107566081A (en) * | 2016-06-30 | 2018-01-09 | 华为技术有限公司 | A kind of generation of RM sequences and application process, device |
US11637568B2 (en) | 2016-09-30 | 2023-04-25 | Zte Corporation | Quasi-cyclic LDPC coding and decoding method and apparatus, and LDPC coder and decoder |
CN107888198B (en) * | 2016-09-30 | 2023-05-26 | 中兴通讯股份有限公司 | Quasi-cyclic LDPC (low density parity check) coding and decoding method and device and LDPC coder and decoder |
US11133826B2 (en) | 2016-09-30 | 2021-09-28 | Zte Corporation | Quasi-cyclic LDPC coding and decoding method and apparatus, and LDPC coder and decoder |
CN107888198A (en) * | 2016-09-30 | 2018-04-06 | 中兴通讯股份有限公司 | Quasi-cyclic LDPC coding and decoding method, device and LDPC coders |
WO2018059588A1 (en) * | 2016-09-30 | 2018-04-05 | 中兴通讯股份有限公司 | Quasi-cyclic ldpc coding and decoding method and apparatus, and ldpc coder and decoder |
CN108134648A (en) * | 2016-12-01 | 2018-06-08 | 华为技术有限公司 | Notice channel transmitting method, method of reseptance and equipment |
CN108134648B (en) * | 2016-12-01 | 2020-12-22 | 华为技术有限公司 | Broadcast channel sending method, receiving method and equipment |
CN108234064B (en) * | 2016-12-09 | 2022-05-03 | 中兴通讯股份有限公司 | Quasi-cyclic LDPC code data processing device and method |
CN108234064A (en) * | 2016-12-09 | 2018-06-29 | 中兴通讯股份有限公司 | Quasi-cyclic LDPC code data processing equipment and processing method |
WO2018103556A1 (en) * | 2016-12-09 | 2018-06-14 | 中兴通讯股份有限公司 | Quasi-cyclic ldpc code data processing apparatus and processing method |
CN108270448A (en) * | 2017-01-04 | 2018-07-10 | 中兴通讯股份有限公司 | Quasi-circulating low-density parity check coding method and device |
WO2018126788A1 (en) * | 2017-01-04 | 2018-07-12 | 中兴通讯股份有限公司 | Quasi-cyclic low-density parity check encoding method and device, and storage medium |
CN108270448B (en) * | 2017-01-04 | 2022-11-15 | 中兴通讯股份有限公司 | Quasi-cyclic low-density parity check coding method and device |
WO2018126914A1 (en) * | 2017-01-09 | 2018-07-12 | 中兴通讯股份有限公司 | Method and device for coding of quasi-cyclic low-density parity-check code, and storage medium |
US11133832B2 (en) | 2017-02-06 | 2021-09-28 | Huawei Technologies Co., Ltd. | Data processing method and device |
CN108400838B (en) * | 2017-02-06 | 2021-05-18 | 华为技术有限公司 | Data processing method and device |
CN108400838A (en) * | 2017-02-06 | 2018-08-14 | 华为技术有限公司 | Data processing method and equipment |
WO2018149389A1 (en) * | 2017-02-15 | 2018-08-23 | 中兴通讯股份有限公司 | Data processing method, device, and transmitting terminal |
US11082061B2 (en) | 2017-03-03 | 2021-08-03 | Huawei Technologies Co., Ltd. | High-rate long LDPC codes |
CN110249536A (en) * | 2017-03-03 | 2019-09-17 | 华为技术有限公司 | The long LDPC code of high code rate |
US11671115B2 (en) | 2017-03-03 | 2023-06-06 | Huawei Technologies Co., Ltd. | High-rate long LDPC codes |
CN110249536B (en) * | 2017-03-03 | 2021-07-20 | 华为技术有限公司 | Long LDPC code with high code rate |
WO2018157390A1 (en) * | 2017-03-03 | 2018-09-07 | Huawei Technologies Co., Ltd. | High-rate long ldpc codes |
CN108631925B (en) * | 2017-03-24 | 2022-05-03 | 中兴通讯股份有限公司 | Quasi-cyclic low-density parity check coding processing method and device |
CN108631925A (en) * | 2017-03-24 | 2018-10-09 | 中兴通讯股份有限公司 | A kind of quasi-circulating low-density parity check code processing method and device |
WO2018171043A1 (en) * | 2017-03-24 | 2018-09-27 | 中兴通讯股份有限公司 | Processing method and device for quasi-cyclic low density parity check coding |
US11368169B2 (en) | 2017-03-24 | 2022-06-21 | Zte Corporation | Processing method and device for quasi-cyclic low density parity check coding |
US11843394B2 (en) | 2017-03-24 | 2023-12-12 | Zte Corporation | Processing method and device for quasi-cyclic low density parity check coding |
US11588576B2 (en) | 2017-05-04 | 2023-02-21 | Huawei Technologies Co., Ltd. | Data transmission method, base station, and terminal device |
CN108809487A (en) * | 2017-05-04 | 2018-11-13 | 华为技术有限公司 | Method, base station and the terminal device of transmission data |
CN111416625B (en) * | 2017-06-15 | 2021-03-23 | 华为技术有限公司 | Information processing method and communication device |
US11611356B2 (en) | 2017-06-15 | 2023-03-21 | Huawei Technologies Co., Ltd. | Method and apparatus for low density parity check channel coding in wireless communication system |
US11296726B2 (en) | 2017-06-15 | 2022-04-05 | Huawei Technologies Co., Ltd. | Method and apparatus for low density parity check channel coding in wireless communication system |
CN111416625A (en) * | 2017-06-15 | 2020-07-14 | 华为技术有限公司 | Information processing method and communication device |
US11996863B2 (en) | 2017-06-15 | 2024-05-28 | Huawei Technologies Co., Ltd. | Method and apparatus for low density parity check channel coding in wireless communication system |
US11277153B2 (en) | 2017-06-27 | 2022-03-15 | Huawei Technologies Co., Ltd. | Method and apparatus for low density parity check channel coding in wireless communication system |
US11671116B2 (en) | 2017-06-27 | 2023-06-06 | Huawei Technologies Co., Ltd. | Method and apparatus for low density parity check channel coding in wireless communication system |
US12047096B2 (en) | 2017-06-27 | 2024-07-23 | Huawei Technologies Co., Ltd. | Method and apparatus for low density parity check channel coding in wireless communication system |
WO2019029690A1 (en) * | 2017-08-11 | 2019-02-14 | 华为技术有限公司 | Communication method and device |
US11368241B2 (en) | 2017-08-11 | 2022-06-21 | Huawei Technologies Co., Ltd. | Communication method and communications apparatus |
Also Published As
Publication number | Publication date |
---|---|
WO2012037749A1 (en) | 2012-03-29 |
CN102412842B (en) | 2016-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102412842B (en) | The coded method of a kind of low density parity check code and device | |
US8185797B2 (en) | Basic matrix, coder/encoder and generation method of the low density parity check codes | |
US8782499B2 (en) | Apparatus and method for transmitting and receiving data in communication/broadcasting system | |
JP4602418B2 (en) | Parity check matrix generation method, encoding method, decoding method, communication apparatus, encoder, and decoder | |
RU2341894C2 (en) | Device and method of encoding/decoding discharged even-parity check with variable block length | |
AU2005239662B2 (en) | Method and apparatus for generating a low-density parity check code | |
CN102638274B (en) | Operate the Apparatus and method for of transmitter using the structured LDPC design of vector line packet | |
CN102714504B (en) | Transmit and receive the method and apparatus of data in a communications system | |
US8656244B1 (en) | Rate adaptive nonbinary LDPC codes with low encoding complexity | |
US7757150B2 (en) | Structured puncturing of irregular low-density parity-check (LDPC) codes | |
US9432052B2 (en) | Puncture-aware low density parity check (LDPC) decoding | |
JP2012231474A (en) | Ldpc encoding and decoding of packets of variable sizes | |
CN101796488A (en) | Generation of parity-check matrices | |
CN112583419B (en) | Decoding method and device | |
RU2743857C1 (en) | Method and equipment for designing for quasicyclic rare parity control | |
CN101373976A (en) | Method and equipment for generating LDPC check matrix | |
CN104106230B (en) | A kind of method and device for data transfer | |
US9379847B2 (en) | Method and apparatus for transmitting and receiving in a communication/broadcasting system | |
KR102635532B1 (en) | Method and apparatus for transmitting and receiving a signal using polar coding in a communication system | |
KR102482110B1 (en) | Apparatus and method for channel encoding/decoding in communication or broadcasting system | |
WO2018126914A1 (en) | Method and device for coding of quasi-cyclic low-density parity-check code, and storage medium | |
CN116054844B (en) | Check matrix construction method, system, electronic equipment and computer storage medium | |
KR20180122911A (en) | Apparatus and method for channel encoding/decoding in communication or broadcasting system | |
KR20190000768A (en) | Apparatus and method for channel encoding/decoding in communication or broadcasting system | |
KR20180071923A (en) | Apparatus and method for channel encoding/decoding in communication or broadcasting system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160615 Termination date: 20190925 |