CN101217337A - A low density parity code encoding device and method supporting incremental redundancy hybrid automatic repeat - Google Patents
A low density parity code encoding device and method supporting incremental redundancy hybrid automatic repeat Download PDFInfo
- Publication number
- CN101217337A CN101217337A CNA2007100728080A CN200710072808A CN101217337A CN 101217337 A CN101217337 A CN 101217337A CN A2007100728080 A CNA2007100728080 A CN A2007100728080A CN 200710072808 A CN200710072808 A CN 200710072808A CN 101217337 A CN101217337 A CN 101217337A
- Authority
- CN
- China
- Prior art keywords
- code
- matrix
- extension
- bit
- mrow
- 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 123
- 239000011159 matrix material Substances 0.000 claims abstract description 241
- 238000012545 processing Methods 0.000 claims abstract description 13
- 238000004904 shortening Methods 0.000 claims abstract description 12
- 108010003272 Hyaluronate lyase Proteins 0.000 claims description 68
- 230000005540 biological transmission Effects 0.000 claims description 29
- 238000012937 correction Methods 0.000 claims description 28
- 238000004364 calculation method Methods 0.000 claims description 12
- 238000012217 deletion Methods 0.000 claims description 12
- 230000037430 deletion Effects 0.000 claims description 12
- 230000007480 spreading Effects 0.000 claims description 8
- 238000003892 spreading Methods 0.000 claims description 8
- 230000003139 buffering effect Effects 0.000 claims description 5
- 239000000203 mixture Substances 0.000 claims description 2
- 230000008569 process Effects 0.000 claims description 2
- 230000009897 systematic effect Effects 0.000 claims description 2
- 239000000470 constituent Substances 0.000 claims 1
- 238000004891 communication Methods 0.000 description 8
- 238000001514 detection method Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000010339 dilation Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 238000013144 data compression Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Landscapes
- Error Detection And Correction (AREA)
Abstract
The invention discloses an encoding method of a structured parity check code which has low density, supports any code rate and any code length, and is used for encoding any information bit sequence with length of K that is input by a channel encoder, outputting any bit sequence of a code word with length of N into a subsequent processing unit, and the length of the check bits is M, equal to the result of subtracting K from N, the code rate is r, equal to the result of K divided by N; furthermore, the method comprises the following steps: (1) a mother code set of the parity check code is determined with low density in a given code rate R0, and the mother code set consists of finite parity check codes that have low density, code rate R0 and different code length, and has a basis matrix Hb<uniform> that is in a unified form; (2) an extension factor is determined according to the length matching of information groups, the parameters and the matrixes which are required by the encoder are determined through shortening, removing or extending according to the extension factor and the basis matrix Hb<uniform>; (3) the encoder encodes the input information groups with K bits according to the parameters and the matrixes required by the encoder, generating a code word with N bits and outputting the code word.
Description
Technical Field
The present invention relates to an encoding apparatus and method for data transmission error correction in a digital communication system, and more particularly, to an encoding apparatus and method for low density parity check codes in error correction technology in the field of digital communication. Based on a mother code set, by means of extension, shortening and puncturing (puncturing) of a basic matrix, a low-density parity check code encoder with flexible code rate and code length, optimal performance and effective hardware can be obtained. The invention also relates to a method for generating the HARQ packet of the LDPC code, and the new LDPC code can be used for the method for generating the HARQ packet, thereby ensuring that the new LDPC code can well support the incremental redundancy hybrid automatic repeat request (IR HARQ). The invention also provides a novel error detection method of LDPC, which can be applied to the error detection of LDPC HARQ and ensures the best compromise between the performance of error detection and the extra cost (CRC bits).
Background
All digital communication systems require a channel encoder as shown in fig. 1. The channel encoder is used for resisting various noises and interferences in the transmission process, and ensuring the reliability of digital transmission by artificially adding redundant information to ensure that a system has the capability of automatically correcting errors. Low density parity check codes are a class of linear block codes that can be defined by a very sparse parity check matrix or bipartite graph, originally discovered by Gallager and so called Gallager codes. After decades of silence, with the development of computer hardware and related theories, MacKay and Neal have rediscovered it and demonstrated that it has performance approaching the shannon limit. Recent studies have shown that low-density parity-check codes have the following characteristics: the method has the advantages of low decoding complexity, linear time coding, performance approaching to the Shannon limit, parallel decoding and performance superior to Turbo codes under long-code long-strip conditions.
The LDPC code is a linear block code based on a sparse check matrix, and low-complexity coding and decoding can be realized by using the sparsity of the check matrix, so that the LDPC code is practical. The aforementioned Gallager code is a regular LDPC code (regular LDPCC), and Luby and Mitzenmacher et al have generalized the Gallager code to propose an irregular LDPC code (irregular LDPCC). The LDPC code has many decoding algorithms, wherein an information Passing algorithm (Message Passing algorithm) or a Belief propagation algorithm (BP algorithm) is the mainstream and basic algorithm of the LDPC code, and many improved effective decoding algorithms are currently developed.
The graphical representation of the LDPC parity check matrix is a bipartite graph.The bipartite graph and the check matrix have a one-to-one correspondence, and an M-by-N parity check matrix H defines that each codeword with N bits satisfies the constraints of M parity check sets. A bipartite graph includes N variable nodes and M parity nodes. When the m-th check involves the n-th bit, i.e. the element H in the m-th row and n-th column of Hm,nWhen 1, there will be one connection line connecting the check node m and the variable node n. In the bipartite graph, any node of the same class cannot be connected, and the total number of edges in the bipartite graph is equal to the number of non-zero elements in the check matrix.
One class of special LDPC codes is becoming mainstream applications due to their structured nature. The parity check matrix H of the LDPC code is an (M × z) × (N × z) matrix, which is formed by M × N block matrices, each block matrix is a different power of a basic permutation matrix of z × z, and when the basic permutation matrix is a unit matrix, they are cyclic shift matrices of the unit matrix (the text defaults to right shift). Having the form:
if it is not Is provided with
If h isij bIs an integer greater than or equal to 0, is defined Where P is a z × z
The standard permutation matrix of (2), as follows:
by such powers hij bEach block matrix can be uniquely identified, and the unit matrix can be raised to the power
Denoted by 0 and the zero matrix is typically denoted by-1. Thus, if each block matrix of H is replaced by its power, one m is obtainedb×nbPower matrix of (H)b. Here, definition Hbb is the basis matrix for H, H being called HbThe spreading matrix of (2). In actual coding, z is the code length/number of columns of the base matrix nbReferred to as spreading factor.
For example, the matrix H may be represented by the following parameters z and a 2 × 4 basis matrix HbExpanding to obtain:
z is 3 and
therefore, it can be said that the encoder of the LDPC code of the present invention is composed of the basis matrix HbThe spreading factor z and the selected basic permutation matrix are uniquely generated.
If a basic matrix is adopted for each different spreading factor LDPC code, the LDPC code encoder-decoder needs to store one basic matrix for each different code length, and when the code length is large, a plurality of basic matrices need to be stored, so that the problems of representation and storage can occur. Therefore, when the variable code length needs to be realized, the low-density parity check codes with various code lengths in a certain range of the same code rate use a unified basic matrix, which is defined as a unified basic matrix Hb uniform. For different code lengths, if to Hb uniformThe parity check matrix H can be obtained by performing correction and expansion, so that generation is performed
The codec of (3) is applicable to the situation with variable code length.
The correction is to use spreading factors of different code lengths to pair the basic matrix HbThe non-negative value in (1) is corrected, and the corrected element value is smaller than the spreading factor value at the code length. 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 1 element, P 'of row i and column j'ijFor after correction Hb modifiedRow i and column j of (1), having:
for the modulo (mod) method:
for the round-up (scale + floor) method:
for the round (scale + round) method:
wherein z is an expansion factor corresponding to the current code length, namely the number of rows or columns of the block square matrix; z is a radical ofmaxThe spreading factor corresponding to the maximum supported code length. mod is the operation of the modulus taking,for the rounding operation, Round is the rounding operation.
For example, for a code length 1152 bit low density parity check code, if a certain non-negative element of the basic matrix is 93, the supported maximum code length is 2304, and the size of the basic matrix is 12 × 24, the correction result is:
for the modulo (mod) method:
for the round-up (scale + floor) method:
for the round (scale + round) method:
the low-density parity check code with variable code length and specific code rate has the same basic matrix, so that one coder/decoder can be used. In ieee802.16e, the LDPC code supports code rate 1/2, code rate 2/3, code rate 3/4 and code rate 5/6, and at this time, four basic matrices appear, and it becomes difficult to implement encoding and decoding of different code rates with a unique encoder/decoder; if four codecs are required for four code rates, the hardware cost will become an application bottleneck.
Automatic repeat request, HARQ, is a link adaptation technique that is of paramount importance in wireless communication systems.
A brief description will be given below of an arq HARQ method, which includes two parts, a transmission method in a transmitter and a reception method in a receiver, and which should be general.
A transmission method of a Transmitter (Transmitter) includes:
a. the transmitter transmits a first HARQ packet in a designated HARQ channel, a new HARQ transmission starts, and a retransmission time counter is set to be 1;
b. the transmitter waits for an acknowledgement/negative acknowledgement (ACK/NAK) from the receiver;
c. after a certain delay (depending on whether the synchronous mode or the asynchronous mode, the delay is determined by a system and the like), if the sender receives the ACK, the packet is correctly received, and the HARQ transmission is finished; otherwise, the retransmission time counter is increased by 1, whether the retransmission time exceeds the maximum allowable transmission time is judged, if so, the HARQ transmission is finished, and if not, the process is switched to step d.
d. The transmitter makes another HARQ attempt again on the HARQ channel of the HARQ transmission, and the transmission time may be selected by the system, and then goes to b.
The receiving method of the receiver (receiver) comprises the following steps:
a. and receiving the HARQ packet, confirming whether the received packet is the first HARQ attempt, if so, turning to b, otherwise, turning to d.
b. Discarding all previously received HARQ attempts under this HARQ channel;
c. the packet is decoded and go to e.
d. The receiver decoder combines the original erroneous and retransmitted coded packets according to a specific combining method;
e. if the decoding is correct, sending ACK in a feedback channel after a certain delay, wherein the channel is distributed by a system; otherwise, a NAK is sent and the HARQ packet is stored.
In step d of the receiving method, the combining method may include full incremental redundancy, partial incremental redundancy, and Chase combining.
A large number of documents and books are introduced to an automatic repeat request HARQ implementation structure. Regardless of the method or structure, the generation of HARQ packets is critical, determining performance and complexity.
Since HARQ is a very important link adaptation technique, a good low density parity check code must support HARQ implementation, which is also the most important object of the present invention. The invention provides a HARQ packet generation method based on the low-density parity check code design.
For the HARQ system of low density parity check codes, error detection is necessary, and there are two typical methods. One is to directly use the parity check matrix of the low density parity check code to detect, namely, the transpose of the code word vector and the parity check matrix is multiplied, and then whether the multiplication result is a zero vector is judged, if so, the result is correct, and if not, the result is wrong.
And the other is that cyclic redundancy detection (CRC) bits are added after the information bit sequence before encoding, an LDPC encoder encodes the CRC code words to generate LDPC code words and sends the LDPC code words to a subsequent processing unit, the LDPC code words are transmitted to a receiver through a channel, LDPC soft code words output by the processing unit in the receiver before a decoder are sent to an LDPC decoder to be decoded, and information packets output by decoding are subjected to CRC detection.
Disclosure of Invention
The technical problem to be solved by the invention is to provide a new codec and a method, aiming at solving the problem that LDPC codes with different code rates and different code lengths can not use the same codec, so that the flexibility of the LDPC codes in code rate/code length, decoding speed (throughput, decoding delay), power loss, coding complexity and the like are improved. The invention is particularly suitable for supporting incremental redundancy hybrid retransmission (IR _ HARQ), can ensure the realization of low code rate by expanding (extended) unified basic matrix, ensures that LDPC code has low enough code rate such as 1/3, 1/5 and the like when supporting the complete incremental redundancy hybrid retransmission IR _ HARQ, and has the lowest complexity of the decoder.
In order to solve the above technical problem, the present invention provides a method for encoding a structured low density parity check code supporting any code rate/code length, which encodes an information bit sequence with an arbitrary length of K input by a channel encoder, and then outputs a bit sequence with an arbitrary length of N code words to a subsequent processing unit, wherein the check bit length M is N-K, and the code rate r is K/N, and the method includes the following steps:
1) determining a specific code rate R0The mother code set of the low density parity check code is formed by a limited number of code rates of R0Low density parity check code constitution with different code length, the mother code set has a unified basic matrix Hb uniform;
2) Determining an expansion factor according to the length matching of the information packet; according to the spreading factor and the basic matrix Hb uniformDetermining parameters and matrixes required by the encoder through shortening, puncturing or expanding;
3) the encoder encodes the input K bit information packet according to the parameters and the matrix required by the encoder to generate an N bit code word and output the code word.
According to the method of the invention, in step 1),
the low-density parity check code mother code set defines P same code rates R0Of different code length (N-zXn)b,K=z×kb) The low density parity check code, wherein, Zset is a set of spreading factors, the spreading factor z can be any one element in Zset, Zset is P positive integers z larger than zero1<z2<…<zk-1<zk<…<zPSet of users, P is some integer greater than 1, and the basis matrix Hb uniformAlways has code rate Wherein n isbIs a definite integer greater than 2, mbIs a determined integer greater than 1, kb=nb-mb。
According to the method of the invention, in step 2),comparing and determining that the code rate R is smaller than R0Calculating parameters and matrixes required by coding comprises the following steps:
step B1, useDetermining Δ m in the basis matrix Hb uniformIs increased by Δ m rows and increased by Δ m columns, respectively, after the last row and the last column, respectively, and expanded to form (m)b+Δm)×(nb+ Δ m) expanded basis matrix Hb uniform_extension(ii) a Here, ,represents rounding down;
step B2, determining the spreading factor by using a specific spreading factor formula, determining ztWith elements in Zset having the following relationship zk-1<zt≤zkWherein z isk-1,zkAre contiguous elements of size in Zset, the required spreading factor for the encoder is zk;
Step B3, expanding base matrix H based on unified after expansionb uniform_extensionAnd the spreading factor z ═ zkAccording to a specific correction algorithm pair Hb uniform_extensionBy performing the correction, ((n) can be calculatedb+Δm)×zk,kb×zk) Modified basis matrix H required for LDPC encodingb modifed_extension(ii) a Here, the modified base matrix is a matrix required for encoding, and the spreading factor and the matrix size parameter are parameters required for encoding.
According to the method of the invention, in step 2), the comparison determines that the code rate R is greater than or equal to R0Calculating parameters and matrixes required by coding comprises the following steps:
using spreading factors Determining a spreading factor ztDetermining ztWith elements in Zset having the following relationship zk-1<zt≤zkWherein z isk-1,zkAre contiguous elements of size in Zset, the required spreading factor for the encoder is zk(ii) a Based on unified basic matrix Hb uniformAnd a spreading factor zk(m) can be calculated according to a specific correction algorithm and the spreading factor zb×zk,nb×zk) The modified base matrix required for encoding; the modified basic matrix is the matrix required by coding, and the expansion factor and the matrix size parameter are the parameters required by coding.
According to the method of the invention, in step 3), the calculation of the coding of the information bits comprises:
step B1, add x ═ kbz-K zero bits to K information bits before forming K required for encodingb·zkGrouping information; then ((n)b+Δm)×zk,kb×zk) LDPC encoding, forming (n)b+Δm)×zkA number of coded codeword bits;
step B2, deleting the x zero bits added in step B1 from the coded codeword, if the number of bits of the deleted codeword does not match the required packet size N, then after deleting the zero bits, continuing to select a proper position, and deleting y ═ m (m ═ m) in the codewordb+Δm)×zk-N + K bits forming a coded codeword of length N.
According to the method of the present invention, the specific spreading factor in step B2 is calculated as:
according to the method of the present invention, the specific spreading factor in step B2 is calculated as: <math><mrow>
<msub>
<mi>z</mi>
<mi>t</mi>
</msub>
<mo>=</mo>
<mfrac>
<mrow>
<mi>N</mi>
<mo>-</mo>
<mi>K</mi>
</mrow>
<mrow>
<msub>
<mi>m</mi>
<mi>b</mi>
</msub>
<mo>+</mo>
<mi>Δm</mi>
</mrow>
</mfrac>
<mo>.</mo>
</mrow></math>
according to the method of the present invention, in step B1, the base matrix expansion method is:
for Hb extensionFor any matrix part that satisfies mb+1≤i≤mb+ Δ m line index i, all have
Other positions are filled with elements representing a zero square matrix, such as-1;
where i is the matrix Hb extensionThe row index and the column index all start from 1.
According to the method of the present invention, in step B1, the base matrix expansion method is:
for Hb extensionFor the row index i ═ m, for the newly added matrix part inb+1, always having
Other positions are filled with elements representing a zero square matrix, such as-1;
for any satisfy mb+2≤i≤mb+ Δ m line index i, all have
Other positions are filled with elements representing a zero square matrix, such as-1;
where i is the matrix Hb extensionThe row index and the column index all start from 1.
The invention also provides a coding device for supporting low density parity check codes with any code rate/code length, which codes the input information bit sequence of a channel coder and then outputs the code word bit sequence to a subsequent processing unit, and is characterized in that the coding device comprises: a basic matrix memory, a matrix parameter calculator, an LDPC shortened code encoder, a codeword deletion bit device, wherein,
the basic matrix memory is used for storing uniform mb×nbBasis matrix Hb uniformAnd outputting the basic matrix to a matrix parameter calculator;
the matrix parameter calculator generates a matrix and parameters required by the LDPC shortened code encoder and parameters required by the codeword bit deleting device;
the LDPC shortened code encoder encodes the information packet according to the matrix and the parameters generated by the matrix parameter calculator to generate a code word and outputs the code word to a code word deleting bit device;
and the code word bit deleting device is used for deleting a certain number of code word bits in the shortened code words and outputting the N code words obtained after deletion.
According to the apparatus of the present invention, the matrix parameter calculator comprises a comparison selector, a first type calculator, a second type calculator, wherein,
a comparison selector for comparing the actual code rate R with the code rate R of the mother code set0If R.gtoreq.R0Selecting to operate a first type of calculator; if R < R0Operating a second type calculator;
calculator of the first kind for generating R ≧ R0The matrix and the spreading factor z required by the time-LDPC shortened code encoder 604;
calculator of the second kind for generating R < R0The time LDPC shortened code encoder 604 needs the matrix, the spreading factor z.
According to the device of the invention, in the calculator of the first type,
first, the spreading factor is determined Then determining ztThe following size relationship z with the elements in Zsetk-1<zt≤zkWherein z isk-1,zkIs a neighboring element of size in Zset, then zkIs the expansion factor which needs to be output;
based on m'b=mb,n′b=nbUnified basic matrix Hb uniformAnd a spreading factor zkBy correcting, H is determinedb modified;
Will correct the matrix Hb modifiedExpansion factor zkThe sum matrix size parameter is output to the LDPC shortened code encoder 604 or to the correction matrix Hb modifiedExpanding to form parity check matrix H, and outputting the parity check matrix H and expansion factor zkAnd matrix size parameters to LDPC shortened code encoder 604.
According to the inventive arrangement, in said second class of calculators,
determining z according to a particular spreading factor calculation formulat;
According to ztSize relationship z with elements in Zsetk-1<zt≤zkDetermining an output spreading factor zkWherein z isk-1,zkAre the next-size elements in Zset;
determining m'b=mb+Δm,n′b=nb+ Δ m, pair (m)b,nb) Basis matrix Hb uniformIs expanded at Hb uniformIs increased by Δ m rows and increased by Δ m columns respectively after the last row and the last column, the expansion is obtained to (m'b,n′b) Base matrix H ofb uniform_extension;
Based on a basis matrix Hb uniform_extensionAnd a spreading factor zkTo the basis matrix Hb uniform_extensionPerforming correction to form a correction matrix Hb modified_extension;
Will correct the matrix Hb modified_extensionExpansion factor zkThe sum matrix size parameter is output to the LDPC shortened code encoder 604 or to the correction matrix Hb modified_extensionExpanding to form parity check matrix H, and outputting the parity check matrix H and expansion factor zkAnd matrix size parameters to LDPC shortened code encoder 604.
According to the inventive arrangement, said calculating ztIs calculated by the formula
According to the inventive arrangement, said calculating ztIs calculated by the formula <math><mrow>
<msub>
<mi>z</mi>
<mi>t</mi>
</msub>
<mo>=</mo>
<mfrac>
<mrow>
<mi>N</mi>
<mo>-</mo>
<mi>K</mi>
</mrow>
<mrow>
<msub>
<mi>m</mi>
<mi>b</mi>
</msub>
<mo>+</mo>
<mi>Δm</mi>
</mrow>
</mfrac>
<mo>.</mo>
</mrow></math>
According to the apparatus of the present invention, the encoding apparatus further comprises an input packet buffer for buffering the input packet and outputting it to the LDPC shortened code encoder 604.
According to the apparatus of the present invention, the encoding apparatus further comprises an output codeword grouping buffer for buffering and outputting the codeword grouping output by the erasure codeword bit apparatus 605.
According to the present invention, the codeword deleting bit device 605 selects the codeword to be deleted when y ═ m'b×zk-codeword bit erasures at N + K erasure positions.
According to the device of the invention, the shortened code encoder comprises one (m'b×z,n′bXz) LDPC mother code encoder, a zero bit adding device, a zero bit removing device, an input k bit information block and an expansion factor zkWherein
an additionZero bit means for adding x-k before k-bit information packetsb·zk-K zero bits, resulting in KbZ bits of information required for encoding are grouped and output to the next-stage encoder;
one (m'b×z,n′bXz) LDPC mother code encoder, (n'b×zk,kb×zk) The LDPC mother code encoder encodes the information packet required by encoding according to the input basic matrix and the expansion factor (or parity check matrix) to obtain n'b·zkThe code word bits of the mother code are output to a zero bit removing device;
a zero bit removing device for deleting the front x zero bits in the input mother code words to obtain shortened code words; outputting shortened codeword bits to a deleted codeword bit means, here k'b=n′b-m′b;
The invention also provides a method for generating a hybrid automatic repeat request HARQ packet of the low-density parity check code, which comprises the following steps:
C1) generating LDPC HARQ mother code words according to input K bit information groups;
C2) arranging the code word bits of the LDPC HARQ mother code, wherein the sequence of the information bits is kept, and the sequence of the check bits is changed;
C3) selecting LDPC HARQ code word bits, sequentially selecting bit sequences in sequence for the arranged code words output in the step 2), namely starting from the first systematic bit in the first transmission, and then enabling the starting position of each transmission to be closely followed by the position of the end of the last transmission, and finally obtaining a binary sequence of the HARQ packet and outputting the binary sequence to the next processing unit.
The method of the apparatus according to the invention, in step C1,
the input K bit information packet has the lowest code rate of R under the condition of complete incremental redundancyFIRIs inputted in the case of (1), wherein,RFIRIs given by the system, NFIR=K/RFIRFor the above NFIRIs preceded by K information bits and followed by MFIR=NFIR-K check bits.
According to the method of the apparatus of the present invention, in step C1, the LDPC HARQ mother code codeword generation comprises the steps of:
1) determining a specific code rate R0The mother code set of the low density parity check code is formed by a limited number of code rates of R0Low density parity check code constitution with different code length, the mother code set has a unified basic matrix Hb uniformThe method includes the steps that an arbitrary length input by a channel encoder is a K information bit sequence, an arbitrary length is an N code word bit sequence, a check bit length M is N-K, and a code rate r is K/N;
2) determining an expansion factor according to the length matching of the information packet; according to the spreading factor and the basic matrix Hb uniformDetermining parameters and matrixes required by the encoder through shortening, puncturing or expanding;
3) the encoder encodes the input K bit information packet according to the parameters and the matrix required by the encoder to generate an N bit code word and output the code word.
According to the method of the apparatus of the present invention, in step C2, the LDPC HARQ mother code codeword bit arrangement is arranged based on the following formula, the data of the ith position before arrangement is placed in the jth position after arrangement,
wherein,represents the lower rounding, i, j and l all start from 0; i is before alignmentThe bit position index of the codeword, j is the bit position index of the arranged codeword; p is a puncturing pattern of size mbIs a vector of from kbTo nb-1, a predefined arrangement of the above-mentioned elemental compositions.
According to the method of the apparatus of the present invention, in step C3, the codeword bit selection rule is selected based on the following formula, and in the codeword after bit permutation, the bits according to the obtained result position of the formula are selected to be placed in the ith bit position of the kth HARQ packet,
wherein, k is an index of the HARQ packet, and reflects the transmission frequency of the current HARQ packet, k is 0 in the first transmission, k is 1 in the second transmission, and k is added by 1 in the next transmission;
NFIRis the length of the mother code word;
Sk,iindicating the position index of the kth HARQ packet, and identifying the bit position with index i in the current HARQ packet, where the first bit corresponds to Sk,i0 (i-0), where i starts from 0;
Lkindicating the length of the kth HARQ packet.
The LDPC code coding and decoding device and method provided by the invention have the following advantages: the LDPC codes with different code rates and different code lengths have a unified codec, and the LDPC codes with different code rates and different code lengths have a unified R0 basic matrix. Most importantly, the IR _ HARQ can be effectively supported, and the lowest code rate can be much smaller than R0 when Full incremental redundancy (Full IR), which can be obtained by expanding (extension) the uniform base matrix with the code rate R0, the complexity of the decoder depends on the complexity of the LDPC code with the code rate R0 when R > R0, and the complexity of the decoder depends on the complexity of the LDPC code with the code rate R when R < R0. Compared with the existing method for shortening the puncturing, the method obviously saves the hardware cost and the calculation complexity, greatly improves the flexibility of the code body, and greatly expands the application range of the code.
The invention solves the defects of LDPC code in the aspect of variable code rate and incremental redundancy HARQ support, so that the LDPC code is not output to turbo codes in the aspect of flexibility of code rate/code length, is obviously superior to the turbo codes in the aspects of decoding speed (throughput, decoding delay), power consumption and coding and decoding complexity, and is equivalent to the turbo codes in performance (turbo codes are superior when the LDPC code is in a long code length, LDPC codes are superior when the LDPC code is in a long code length, and medium code lengths are equivalent). In general, LDPC codes are a necessary trend to replace turbo codes, and the present invention will be directed to driving this trend.
Drawings
FIG. 1 is a schematic diagram of a system in which the apparatus of the present invention is located;
FIG. 2 is (n)b×z,kbXz) codewords of the structured LDPC mother code;
FIG. 3 is a diagram of code rates less than R0At time (N, K) shortening-deleting the codeword of the LDPC code;
FIG. 4 is (n)b×z,kbXz) codewords of the structured LDPC mother code;
FIG. 5 shows a code rate greater than R0When (N, K) deletes-shortens codewords of the LDPC code;
FIG. 6 is an encoding apparatus of the (N, K) LDPC code of the present invention;
FIG. 7 is a matrix parameter calculator in the apparatus of the present invention;
FIG. 8 is an LDPC shortened code encoding apparatus of the present invention;
FIG. 9 illustrates a first basic matrix expansion (extension) method proposed by the present invention;
FIG. 10 illustrates a second basic matrix expansion (extension) method proposed by the present invention;
Detailed Description
The invention is described in detail below with reference to the figures and the specific embodiments.
The basic idea of the invention is that based on a structured LDPC code set with a specific code rate and a variable code length, the encoding and decoding of a low-density parity check code with any code length and any code rate are realized by expanding, shortening or deleting (puncutring) operations on the condition that the LDPC code has optimal frequency distribution and on the basis of the design principle that the number of actual encoding information bits or check bits is as close as possible to the number of structured LDPC information bits or check bits; the support to HARQ is realized, and the LDPC code has a low enough code rate in a complete incremental redundancy combination mode.
FIG. 1 is a schematic diagram of a system in which the apparatus of the present invention is located. The encoding apparatus of the present invention, i.e., the channel encoder in fig. 1. The channel encoder realizes channel coding: the method is to ensure the reliability of communication, and encode the data after the source coding, add redundant bits, ensure to a receiving end, and can correct errors, thereby improving the communication quality and reliability. The error correction codes or channel codes are usually referred to as LDPC codes, turbo codes, convolutional codes, RS codes, BCH codes. The source encoder realizes source coding, ensures the effectiveness of communication, converts analog signals (such as voice, images and the like) into binary digital signals, and performs data compression (such as language compression, image compression and the like). In addition, it should be noted that encoding and decoding are corresponding, so that when the encoder and the encoding method of the present invention are adopted, the decoder and the decoding method thereof have corresponding requirements, and the present invention is not described in detail.
The invention provides a low-density parity check code coding method supporting any code rate/code length, which is used for coding K information bits input by a coder to generate M check bits, wherein the information bits and the check bits form N code word bits together and then are output to a next-stage processing unit. Where M is N-K, the code rate R is K/N, and K and N may be any integer greater than zero. The method specifically comprises the following steps:
A. setting a specific code rate R0And a low density parity check code mother code set of limited code length for realizing (N ═ zXn)b,K=z×kb) Coding and decoding of low density parity check codes, wherein z is extensionThe factor, Zset is an extended set of factors, z belongs to Zset, Zset is a positive integer z greater than zero from P1<z2<…<zk-1<zk<…<zPP is some integer greater than 1. The code set having a uniform form (m)b×nb) Basis matrix Hb uniformTo realize (zXn)b,z×kb) Encoding and decoding, using specific correction operations and spreading factors z to correct the unified basic matrix Hb uniformTo obtain a corrected basis matrix Hb modifiedAccording to Hb modifiedAnd z can be expanded to obtain a parity check matrix; and a basis matrix Hb uniformAlways has code rate Wherein n isbIs a definite integer greater than 2, mbIs a determined integer greater than 1, kb=nb-mb;
B. When the code rate R is less than R0When the code length of the random information packet before coding is K, the length of the random code word after coding is N, z is an expansion factor of the structured LDPC code, the number of check bits is M-N-K, and the code rate r is K/N; the encoding method of the LDPC code for completion (N, K) is as follows:
step B1, code rate matching: computingAt Hb uniformIs increased by Δ m rows and increased by Δ m columns, respectively, after the last row and the last column, the dilation results in (m)b+Δm)×(nb+ Δ m) basis matrix Hb uniform_extension(ii) a Here, ,indicating a rounding down.
Step B2, code length matching: calculating a spreading factor Or <math><mrow>
<msub>
<mi>z</mi>
<mi>t</mi>
</msub>
<mo>=</mo>
<mfrac>
<mrow>
<mi>N</mi>
<mo>-</mo>
<mi>K</mi>
</mrow>
<mrow>
<msub>
<mi>m</mi>
<mi>b</mi>
</msub>
<mo>+</mo>
<mi>Δm</mi>
</mrow>
</mfrac>
<mo>,</mo>
</mrow></math> Determination of ztWith elements in Zset having the following relationship zk-1<zt≤zkWherein z isk-1,zkAre contiguous elements of size in Zset, the required spreading factor for the encoder is zk(ii) a Basis matrix H based on post-extension unificationb uniform_extensionAnd the calculated spreading factor z ═ zkCan obtain ((n)b+Δm)×zk,kb×zk) The LDPC mother code of (1); in addition, z is calculatedtFor recommendation Because it can prove <math><mrow>
<mfrac>
<mi>K</mi>
<msub>
<mi>k</mi>
<mi>b</mi>
</msub>
</mfrac>
<mo>≥</mo>
<mfrac>
<mrow>
<mi>N</mi>
<mo>-</mo>
<mi>K</mi>
</mrow>
<mrow>
<msub>
<mi>m</mi>
<mi>b</mi>
</msub>
<mo>+</mo>
<mi>Δm</mi>
</mrow>
</mfrac>
<mo>;</mo>
</mrow></math>
Step B3, shortening encoding: adding x ═ (k)bz-K) zero bits to K information bits before forming K required for encodingb·zkGrouping information; then ((n)b+Δm)×zk,kb×zk) LDPC encoding to obtain (n)b+Δm)×zkA number of coded codeword bits;
step B4, symbol deletion: for the above encoded codeword, x zero bits added in step B3 are deleted, and if the number of bits of the deleted codeword does not match the required packet size N, after deleting the zero bits, an appropriate position is selected, and y ═ m (m) in the deleted codewordb+Δm)×zkN + K bits, resulting in a codeword of length N.
Wherein, in the step B1, H isb uniformIs formed by increasing the last row and increasing the last column by Δ m and by Δ m columns, respectively (mb+Δm)×(nb+ Δ m) matrix Hb uniform_extensionThere are the following two extension methods, but the present invention is not limited to these two methods. The two methods are respectively as follows:
the method comprises the following steps: at Hb uniform_extensionIn the new matrix adding part, for any satisfying mb+1≤i≤mb+ Δ m line index i, all have
Here, the row column index starts at 1.
As shown in fig. 9, a specific example of the method 1 is given. The first formula produces a first sequence of zeros at 45 degrees from left to right, the second formula produces a second sequence of zeros at 45 degrees from left to right, and the third formula produces a third sequence of zeros at 45 degrees from left to right. Wherein the second zero sequence and the third zero sequence are adjacent.
The method 2 comprises the following steps: for Hb uniform_extensionIn-new matrix addition part, for row indexi=mb+1, always having
For any satisfy mb+2≤i≤mb+ Δ m line index i, all have
Here, the row column index starts at 1.
As shown in fig. 10, a specific example of the method 2 is given. For the row index i ═ mb+1=5,According to the formulas 1, 2 and 3 of the method 2, the 5 th row, 1 st column, 2 nd column and 9 th column of the expanded unified basic matrix are 0. For the row index i ≧ mb+2) ═ 6, from left to right, three zero sequences at 45 degrees, the first being calculated by the 4 th formula of method 2, the second being calculated by the 5 th formula of method 2, and the third being calculated by the 6 th formula of method 2.
It is noted that for the two expansion methods described above, the 0 element in the expanded base matrix represents the unitary matrix of the parity check matrix, and other positions in the expanded base matrix may be filled with elements representing the zero square matrix of the parity check matrix, such as-1.
C. When the code rate R is more than or equal to R0When the code length of the random information packet before coding is K, the length of the random code word after coding is N, z is an expansion factor of the structured LDPC code, and the number of check bits is M-N-K; the encoding method of the LDPC code for completion (N, K) includes:
step C1, code rate matching: calculating a spreading factor Determination of ztWith elements in Zset having the following relationship zk-1<zt≤zkWherein z isk-1,zkAre the next-size elements in Zset; based on unified basic matrix Hb uniformAnd the calculated spreading factor zkObtaining (m)b×zk,nb×zk) An LDPC mother code;
step C2, shorten encoding: adding x ═ (k)b·zk-K) zero bits to K information bits preceding the K zero bits, constituting K required for encodingb×zkGrouping information; then proceed to (m)b×zk,nb×zk) LDPC encoding to obtain mb×zkSchool deskThe parity bit, the information packet and the check bit packet form nb×zkShortening the code word;
step C3, symbol deletion: if the number of bits of the codeword after deletion does not match the required packet size N for the x zero bits added in the step C2 of deleting the shortened code codeword, then y is continuously deleted from the codeword after deleting the zero bits (m ═ mb×zkN + K) bits, resulting in a codeword of length N.
The technique of the present invention will be further described below using a practical example.
Firstly, a mother code set of the low-density parity check code is corrected to obtain a corrected basic matrix.
A specific code rate R01/2, a mother code set of LDPC codes with multiple code length structurization, the mother code set having a unified basic matrix size of mb×nb16 x 32, the spreading factor of the code set is from z in steps of 1minIncreased to z 12max640, denoted as z e Zset ═ zmin∶1∶zmax}. Since a specific code length N corresponds to a specific spreading factor z, the information packet length is kbStep size from zmin×kbIncrease to zmax×nbLet K ∈ { z ∈ [ ]min×kb∶kb∶zmax×kb-192: 16: 10240. Code rate R0Unified basis matrix H of 1/2 mother code setb uniformAs follows:
to realize (zXn)b,z×kb) The encoding and decoding of the low density parity check code requires a certain correction operation and a spreading factor z as described above to correct the unified basic matrix Hb uniformTo obtain a corrected basis matrix Hb modifiedAccording to Hb modifiedAnd z may result in a parity check matrix. In this example, the unified basic matrix is modified by using a rounding (Scale + floor) modification formula, wherein the modification is to Hb uniformRepresents the elements (h) of the non-zero square matrixij b)uniformIs carried out, here zmax=640:
By the pair of Hb uniformModified to obtain information packet length K288 and code word length N576The modified base matrix corresponding to the low density parity check code is as follows:
when the code rate R is less than R0Based on the mother code set given by the embodiment, i.e. The LDPC coding method supporting any length/code rate of the invention is detailed as follows:
code rate The length of the information packet before coding is K, the length of the code word after coding is N, z is an expansion factor of the structured LDPC code, and the number of the required check bits is M-N-K.
According to the method for coding the low-density parity-check code supporting any code rate/code length, the coding of the LDPC code of (N, K) is completed, and the steps are as follows:
step B1, code rate matching: computingAt Hb uniformIs increased by Δ m rows and increased by Δ m columns, respectively, after the last row and the last column, the dilation results in (m)b+Δm)×(nbBase matrix H of (16+ Δ m) × (32+ Δ m) + Δ mb uniform_extension(ii) a Here, ,indicating rounding up.
Step B2, code length matching: calculating a spreading factor Determination of ztWith elements in Zset having the following relationship zk-1<zt≤zkWherein z isk-1,zkAre the next-size elements in Zset; z is a radical ofkIs the spreading factor we ultimately need; basis matrix H based on unified after expansionb uniform_extensionAnd the calculated spreading factor zkCan obtain ((n)b+Δm)×zk,kb×zk)=((32+Δm)×zk,(16+Δm)×zk) The LDPC mother code of (1);
step B3, shortening encoding: adding x ═ (k)b·zk-K)=(16·zk-K) zero bits to K information bits preceding the 16 xz required for encodingkGrouping information; then ((n)b+Δm)×zk,kb×zk)=((32+Δm)×zk,(16+Δm)×zk) LDPC encoding to obtain (n)b+Δm)×zk=(32+Δm)×zkA bit codeword;
step B4, symbol deletion: deleting the x zero bits added in step B3 from the mother code codeword if the number of codeword bits deleted and the required packet size N are not equalAnd matching, after deleting zero bits, selecting a proper position, and deleting y ═ m in the code wordb+Δm)×zk-N+K=(16+Δm)×zkN + K bits, resulting in a codeword of length N.
A more specific example is given here, and the above steps are followed to implement LDPC coding with code rate R3/11, code length N1100, and information packet length K300, as follows:
step 1, code rate matching: computingAt Hb uniformIs increased by 27 rows and is increased by 27 columns to obtain m'b×n′b=(mb+Δm)×(nbBase matrix H of 43 × 59 ++ Δ m ═ mb uniform_extensionThe above expansion method is performed by method 2 in step B1 of the encoding method of the present invention;
step 2, code length matching: calculating a spreading factor Z can be determinedtWith elements in Zset having the following relationship zk-1=18<zt≤zk19, wherein zk-1,zkIs an element of contiguous size in Zset, then z ═ zk19 is the spreading factor required by the encoder;
(m) for the above (m) according to z 19b+Δm)×(nb+ Δ m) ═ 43 × 59Hb uniform_extensionCorrection by rounding down (scale + floor) is performed to obtain (m)b+Δm)×(nb+ Δ m) ═ 43 × 59Hb modified_extension(ii) a According to the spreading factor z ═ 19 and (m)b+Δm)×(nb+ Δ m) ═ 43 × 59Hb modified_extensionA parity check matrix ((m) is obtained by expanding the basic matrixb+Δm)×zk,(nb+Δm)×zk) 817 × 1121 LDPC mother code H.
Step 3, shortening coding: adding x ═ kbThe 16 xz-K-19-300 information bits are preceded by 4 zero bits to 300 information bits to form a 16 xz-304 information packet required for encoding;
based on ((m)b+Δm)×zk,(nb+Δm)×zk) When the information packet of length 304 is coded in H of 817 × 1121, the length (m) is obtainedb+Δm)×zkThe information packet and the check packet form a check packet of length (n) 817b+Δm)×zk1121 codeword.
And 4, symbol deletion: removing x-k from the 304-bit information packetbX z-K is 4 zeros and the last information packet length is K300; then from (m) aboveb+Δm)×zkSelecting y ═ m 'from 817 bit check packets'bThe x z-N + K) is punched at 17 positions 43 × 19-1100+300 (rounding), and the final check length is M (M)b+Δm)×zk-y 817-17 800; the above-mentioned K-300 bit information packet and M-800 bit check packet constitute the N-1100 bit code word that we need.
When the code rate R is more than or equal to R0Based on the mother code set given by the embodiment, i.e. <math><mrow>
<mrow>
<mo>(</mo>
<mi>R</mi>
<mo>=</mo>
<mfrac>
<mi>K</mi>
<mi>N</mi>
</mfrac>
<mo>)</mo>
</mrow>
<mo>≥</mo>
<mrow>
<mo>(</mo>
<msub>
<mi>R</mi>
<mn>0</mn>
</msub>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<mn>2</mn>
</mfrac>
<mo>)</mo>
</mrow>
<mo>,</mo>
</mrow></math> The encoding method of LDPC code supporting any length/code rate by using the invention is detailed as follows:
code rate <math><mrow>
<mrow>
<mo>(</mo>
<mi>R</mi>
<mo>=</mo>
<mfrac>
<mi>K</mi>
<mi>N</mi>
</mfrac>
<mo>)</mo>
</mrow>
<mo>≥</mo>
<mrow>
<mo>(</mo>
<msub>
<mi>R</mi>
<mn>0</mn>
</msub>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<mn>2</mn>
</mfrac>
<mo>)</mo>
</mrow>
<mo>,</mo>
</mrow></math> The length of the information packet before coding is K, the length of the code word after coding is N, z is an expansion factor of the structured LDPC code, and the number of the required check bits is M-N-K.
According to the method for coding the low-density parity-check code supporting any code rate/code length, the coding of the LDPC code of (N, K) is completed, and the steps are as follows:
step C1, code rate matching: calculating a spreading factorBased on unified basic matrix Hb uniformAnd calculating the obtained spreading factor z to obtain (n)b×z,mbX z) — (32 × z, 16 × z) LDPC mother code.
Step C2, shorten encoding: adding x ═ (k)bxz-K) — (16 xz-K) zero bits up to K information bits, constituting K required for encodingbX z-16 x z-bit information packet; then proceed (N)ldpc=nb×z=32×z,Kldpc=kbXz-16 × z) LDPC coding, resulting in nbX z-32 x z-bit code words.
Step C3, symbol deletion: deleting x zero bits added in the step C2 for the mother code word, if the number of the deleted code word bits is not equal to N, continuously deleting y-m from the code word after deleting the zero bitsbX z-N + K is 16 x z-N + KAnd finally obtaining the code word with the length of N.
It is emphasized that the selection of the erasure location is important and it is necessary to ensure that the performance of the erased code is optimal. Here, the erasure bit position may include not only the parity bit portion but also the information bit portion.
A more specific example is given here, and the above steps are followed to implement LDPC coding with code rate R of 3/4, code length N of 400, and information packet length K of 300, as follows:
step 1, firstly, calculating the expansion factor
Step 2, adding x ═ kbThe K required for coding is formed before the x z-K-16-19-300-4 zero bits to 300 information bitsbInformation packet 304 x z 16 x z;
for m as above, when z is 19b×nb16 × 32Hb uniformThe above-mentioned rounding (Scale + Floor) correction was performed to obtain mb×nb16 × 32Hb modified(ii) a According to the spreading factor z-19 and Hb modifiedA parity check matrix m is obtained by the expansion of the basic matrixbz×nbH304 × 608 z;
based on mbz×nbH304 × 608 for z, k lengthbCoding the information packet with z being 304, the length m is obtainedb304 check packets, the information packet and the check packet forming a length nbZ 608 codewords;
step 3, removing the kbX-k in a 304-bit information packetbX z-K is 4 zeros and the last information packet length is K300; then from m aboveb·zkSelecting y-m in 304-bit check packetbxz-N + K16 × 19-400+300 at 204 positionsPunching (punctiring), and finally checking that the length is M ═ MbZ-y 304 ═ 100-; the above-mentioned K-300 bit information packet and M-100 bit check packet constitute the N-400 bit code word we need.
The present invention provides an encoding apparatus for supporting low density parity check codes of any code rate/code length, which is in accordance with the above example, for channel encoding an input signal of the encoding apparatus and then forwarding to a demodulator, the encoding apparatus comprising: a base matrix memory 601, a matrix parameter calculator 602, an input information packet buffer 603, an LDPC shortened code encoder 604, a deleted codeword bit device 605, and an output codeword packet buffer 606, as shown in fig. 6. Wherein:
a base matrix memory 601 for storing unified mb×nbBasis matrix Hb uniformAnd outputs the unified basis matrix to the matrix parameter calculator 602.
1) inputting the code rate R of the current actual coding: comparing the code rate R of the selector 701 with the code rate R of the same mother code0Comparing 1/2, if R ≧ R0Entering a first type calculator 702; otherwise, enter the second calculator 703.
2) In the first type of calculator 702, the spreading factor is first calculated Then determining ztThe following size relationship z with the elements in Zsetk-1<zt≤zkWherein z isk-1,zkIs a neighboring element of size in Zset, then zkIs the expansion factor which needs to be output; calculating m'b=mb,n′b=nbBased on a unified basis matrix Hb uniformAnd the calculated spreading factor zkBy correction, H is obtainedb modified(ii) a Will correct the matrix Hb modifiedExpansion factor zkThe sum matrix size parameter is output to the LDPC shortened code encoder 604, or to Hb modifiedExpanding to obtain parity check matrix H, and outputting H and expansion factor zkAnd matrix size parameters to LDPC shortened code encoder 604;
3) in the second calculator 703, first, the calculation is performedThen calculate Determination of ztSize relationship z with elements in Zsetk-1<zt≤zkWhere z isk-1,zkIs a neighboring element of size in Zset, then zkIs the expansion factor which needs to be output; calculating m'b=mb+Δm=16+Δm,n′b=nb+ Δ m is 32+ Δ m for (m)b=16,nb32) basis matrix Hb uniformIs expanded at Hb uniformIs increased by Δ m rows and increased by Δ m columns respectively after the last row and the last column, the expansion is obtained to (m'b,n′b) Base matrix H ofb uniform_extensionBased on basic momentsMatrix Hb uniform_extensionAnd the calculated spreading factor zkBy correction, H is obtainedb modified_extension(ii) a Will correct the matrix Hb modified_extensionExpansion factor zkThe sum matrix size parameter is output to the LDPC shortened code encoder 604, or to Hb modified_extensionExpanding to obtain parity check matrix H, and outputting H and expansion factor zkAnd matrix size parameters to LDPC shortened code encoder 604; here, ,indicating rounding up.
An input packet buffer 603 for buffering the input packet and outputting it to the LDPC shortened code encoder 604.
LDPC shortened code encoder 604 encodes an information packet input from the information packet buffer based on the modified basic matrix, the spreading factor, and the matrix size parameter required for encoding input from matrix parameter calculation device 602, generates a codeword, and outputs the codeword to next-stage deleted codeword bit device 605. As shown in fig. 8, the LDPC shortened code encoder 604 includes: zero bit adding device 801, (m'b×z,n′bXz) LDPC mother code encoder 802, zero bit removal device 803. The processing steps of the LDPC shortened code encoder 604 are as follows:
inputting k-bit information packets to the add zero bit device 801, inputting the spreading factor zkTo add zero bit means 801, LDPC mother code encoder 802 and remove zero bit means 803; adding x-16. z before k-bit information packetk-K zero bits resulting in a mother code information packet of 16 · z bits; transmitting the mother code information packet to (n'b×zk,16×zk) The LDPC parent code encoder 802 encodes to obtain n'b·zkA number of mother code codeword bits; removing x zero bits added before encoding of the mother code to obtain data encoded by a shortened code encoder; outputting shortened code words to deleted code wordsBit device 605, here k'b=n′b-m′b=kb=16
A codeword deleting bit means 605 for inputting a shortened code codeword; under the condition of ensuring the performance of the deleted code, selecting y-m'b×zk-N + K deletion positions at which bits of the shortened codeword are deleted; and outputting the N code words obtained after deletion.
And an output codeword grouping buffer 606, configured to buffer and store the codeword grouping output by the erasure codeword bit apparatus 605, and finally output the codeword grouping.
The invention also provides a method for generating the LDPC HARQ packet. In the communication technology, the automatic repeat request HARQ technology includes two parts, namely a transmitting method of a transmitter and a receiving method of a receiver. In the sending method of the sender, each sending involves the generation of the HARQ packet, the method for generating the LDPC HARQ packet provides a platform for practical application for flexible low-density parity check code design, and can well support the incremental redundancy hybrid automatic repeat request HARQ.
The method for generating the LDPC HARQ packet comprises the following steps:
1. generating LDPC HARQ mother code word (heat code word) according to input K bit information packet
In this step, K-bit information packets are input, and the lowest code rate is R under the condition of complete incremental redundancyFIR1/5, calculate N-K/RFIRIf the value of N is not an integer, rounding up or rounding down is also required to obtain NFIRN is the above-mentionedFIRThe mother code codeword of (a) includes: k information bits, and MFIR=NFIR-K check bits.
Using the low density parity check code coding method and device supporting any code rate/code length, the input K bit information group is LDPC coded to generate NFIRA grouping of bit codewords.
2. LDPC HARQ mother code codeword bit arrangement (heat code bits repetition)
In this step, the sequence of the information bits will remain unchanged, and the check bit sequence needs to be changed in order to ensure that the codeword generated by the bit selection in step 3 has the optimal puncturing distribution, i.e. to ensure that the performance of the codeword generated by the bit selection is optimal.
Defining the size of the puncturing pattern P as mbIt is composed ofbTo nb-1, a specific arrangement of the above elements within the vector. E.g. HbIs m in sizeb×nbThe arrangement vector P is defined as P ═ 16 × 32 [17, 19, 21, 23, 25, 27, 29, 31, 18, 24, 22, 28, 30, 20, 26, 16 ═ P],PlRepresenting the elements of the permutation vector P with index i, starting from 0.
Let i be the bit position index of the codeword before permutation, and to implement permutation mapping, the index of the codeword bit after permutation is j accordingly. The following formula represents that the data of the ith position before arrangement is put to the jth position after arrangement:
3. LDPC HARQ codeword bit selection (codeword selection)
The codeword bit selection is used to generate the HARQ packet, with puncturing and repetition functions.
The codeword bit selection is to sequentially select a bit sequence for the arranged codewords output in step 2), and output the obtained binary sequence of the HARQ packet to the next processing unit (e.g., modulator).
Let k be the index of the HARQ packet, which reflects the number of transmissions of the current HARQ packet, where k is 0 at the time of the first transmission, k is 1 at the time of the second transmission, and k is added by 1 for the next transmission.
NFIRIs the length of the mother code codeword.
Sk,iIndicating the position index of the kth HARQ packet, and identifying the position with index of i bits in the current HARQ packet, where the first bit corresponds to S k,i0, where index i starts from 0.
LkIndicating the length of the kth HARQ packet.
The following formula describes the codeword bit selection rule, and the right formula calculation result identifies the bit positions of the output codeword of step 2). The following formula shows that, in the code word after bit arrangement, the bit of the position of the calculation result of the right formula is selected and put in the ith bit position of the kth HARQ packet.
In summary, the present invention provides an LDPC code encoding method and apparatus supporting any code length/code rate using a unified codec. The new design of the invention solves the fatal defects of the LDPC code in the aspects of variable code length and variable code rate, so that the LDPC code does not output to the turbo code in the aspect of code rate/code length flexibility and maintains excellent performance. The invention also provides a method for generating the LDPC code HARQ packet, and the LDPC code coding method and the device supporting any code length/code rate can be used for generating the mother code word of the HARQ packet generation method, thereby ensuring that the new LDPC mother code word can well support the complete incremental redundancy HARQ.
The present invention has been described herein in detail with respect to specific embodiments thereof, which are provided to enable those skilled in the art to make or use the invention, and various modifications thereof will be apparent to those skilled in the art. The present invention is not limited to these examples, or to certain aspects thereof. The scope of the invention is specified by the appended claims.
Claims (26)
1. A method for supporting any code rate/code length of a structured low-density parity check code coding method, which codes an information bit sequence with any length of K input by a channel coder, and then outputs a code word bit sequence with any length of N to a subsequent processing unit, wherein the length of a check bit M is N-K, and the code rate r is K/N, the method comprises the following steps:
1) determining a specific code rate R0The mother code set of the low density parity check code is formed by a limited number of code rates of R0Low density parity check code constitution of different code lengths, the mother codeSet of basis matrices H of uniform formb uniform;
2) Determining an expansion factor according to the length matching of the information packet; according to the spreading factor and the basic matrix Hb uniformDetermining parameters and matrixes required by the encoder through shortening, puncturing or expanding;
3) the encoder encodes the input K bit information packet according to the parameters and the matrix required by the encoder to generate an N bit code word and output the code word.
2. The method of claim 1, wherein the method comprises the following steps: in the step 1) of the process,
the low-density parity check code mother code set defines P same code rates R0Of different code length (N-zXn)b,K=z×kb) The low density parity check code, wherein, Zset is a set of spreading factors, the spreading factor z can be any one element in Zset, Zset is P positive integers z larger than zero1<z2<…<zk-1<zk<…<zPSet of constituents, P is some integer greater than 1, and the basis matrix Hb uniformAlways has code rate Wherein n isbIs a definite integer greater than 2, mbIs a determined integer greater than 1, kb=nb-mb。
3. Structured low density parity check coding supporting any code rate/code length according to claim 2A coding method, characterized by: in step 2), the comparison determines that the code rate R is less than R0Calculating parameters and matrixes required by coding comprises the following steps:
step B1, useDetermining Δ m in the basis matrix Hb uniformIs increased by Δ m rows and increased by Δ m columns, respectively, after the last row and the last column, respectively, and expanded to form (m)b+Δm)×(nb+ Δ m) expanded basis matrix Hb uniform_extension(ii) a Here, ,represents rounding down;
step B2, determining the spreading factor by using a specific spreading factor formula, determining ztWith elements in Zset having the following relationship zk-1<zt≤zkWherein z isk-1,zkAre contiguous elements of size in Zset, the required spreading factor for the encoder is zk;
Step B3, expanding base matrix H based on unified after expansionb uniform_extensionAnd the spreading factor z ═ zkAccording to a specific correction algorithm pair Hb uniform_extensionBy performing the correction, ((n) can be calculatedb+Δm)×zk,kb×zk) Modified basis matrix H required for LDPC encodingb modifed_extension(ii) a Here, the modified base matrix is a matrix required for encoding, and the spreading factor and the matrix size parameter are parameters required for encoding.
4. The method of claim 2, wherein the method comprises the following steps: in step 2), the comparison determines that the code rate R is greater than or equal to R0Calculating parameters and matrixes required by coding comprises the following steps:
using spreading factors Determining a spreading factor ztDetermining ztWith elements in Zset having the following relationship zk-1<zt≤zkWherein z isk-1,zkAre contiguous elements of size in Zset, the required spreading factor for the encoder is zk(ii) a Based on unified basic matrix Hb uniformAnd a spreading factor zk(m) can be calculated according to a specific correction algorithm and the spreading factor zb×zk,nb×zk) The modified base matrix required for encoding; the modified basic matrix is the matrix required by coding, and the expansion factor and the matrix size parameter are the parameters required by coding.
5. The method of claim 3 or 4 for encoding structured low density parity check codes supporting any code rate/code length, characterized in that: in step 3), the encoding calculation of the information bits includes:
step B1, add x ═ kbz-K zero bits to K information bits before forming K required for encodingb·zkGrouping information; then ((n)b+Δm)×zk,kb×zk) LDPC encoding, forming (n)b+Δm)×zkA number of coded codeword bits;
step B2, deleting the x zero bits added in step B1 from the coded codeword, if the number of bits of the deleted codeword does not match the required packet size N, then after deleting the zero bits, continuing to select a proper position, and deleting y ═ m (m ═ m) in the codewordb+Δm)×zk-N + K bits forming a coded codeword of length N.
6. The method of claim 3, wherein the method comprises the following steps: specific expansion in step B2The calculation formula of the spreading factor is as follows:
7. the method of claim 3, wherein the method comprises the following steps: the specific spreading factor in step B2 is calculated as: <math><mrow>
<msub>
<mi>z</mi>
<mi>t</mi>
</msub>
<mo>=</mo>
<mfrac>
<mrow>
<mi>N</mi>
<mo>-</mo>
<mi>K</mi>
</mrow>
<mrow>
<msub>
<mi>m</mi>
<mi>b</mi>
</msub>
<mo>+</mo>
<mi>Δm</mi>
</mrow>
</mfrac>
<mo>.</mo>
</mrow></math>
8. the method of claim 3, wherein the method comprises the following steps: in step B1, the method for expanding the basis matrix is:
for Hb extensionFor any matrix part that satisfies mb+1≤i≤mb+ Δ m line index i, all have
Other positions are filled with elements representing a zero square matrix, such as-1;
where i is the matrix Hb extensionThe row index and the column index all start from 1.
9. The method of claim 3, wherein the method comprises the following steps: in step B1, the method for expanding the basis matrix is:
for Hb extensionFor the row index i ═ m, for the newly added matrix part inb+1, always having
Other positions are filled with elements representing a zero square matrix, such as-1;
for any satisfy mb+2≤i≤mb+ Δ m line index i, all have
Other positions are filled with elements representing a zero square matrix, such as-1;
where i is the matrix Hb extensionThe row index and the column index all start from 1.
10. An encoding apparatus for supporting low density parity check codes of any code rate/code length, which encodes an input information bit sequence of a channel encoder and then outputs a codeword bit sequence to a subsequent processing unit, the encoding apparatus comprising: a basic matrix memory, a matrix parameter calculator, an LDPC shortened code encoder, a codeword deletion bit device, wherein,
the basic matrix memory is used for storing uniform mb×nbBasis matrix Hb uniformAnd outputting the basic matrix to a matrix parameter calculator;
the matrix parameter calculator generates a matrix and parameters required by the LDPC shortened code encoder and parameters required by the codeword bit deleting device;
the LDPC shortened code encoder encodes the information packet according to the matrix and the parameters generated by the matrix parameter calculator to generate a code word and outputs the code word to a code word deleting bit device;
and the code word bit deleting device is used for deleting a certain number of code word bits in the shortened code words and outputting the N code words obtained after deletion.
11. The encoding apparatus of claim 10, wherein the low density parity check code supporting any code rate/code length comprises: the matrix parameter calculator comprises a comparison selector, a first calculator and a second calculator, wherein,
a comparison selector for comparing the actual code rate R with the code rate R of the mother code set0If R.gtoreq.R0Selecting to operate a first type of calculator; if R < R0Operating a second type calculator;
calculator of the first kind for generating R ≧ R0The matrix and the spreading factor z required by the time-LDPC shortened code encoder 604;
calculator of the second kind for generating R < R0The time LDPC shortened code encoder 604 needs the matrix, the spreading factor z.
12. The encoding apparatus of claim 11, wherein the encoding apparatus supports low density parity check codes of any code rate/code length, further comprises: in the case of the first type of calculator,
first, the spreading factor is determined Then determining ztThe following size relationship z with the elements in Zsetk-1<zt≤zkWherein z isk-1,zkIs a neighboring element of size in Zset, then zkIs the expansion factor which needs to be output;
based on m' b ═ mb,n′b=nbUnified basic matrix Hb uniformAnd a spreading factor zkBy correcting, H is determinedb modified;
Will correct the matrix Hb modifiedExpansion factor zkThe sum matrix size parameter is output to the LDPC shortened code encoder 604 or to the correction matrix Hb modifiedExpanding to form parity check matrix H, and outputting the parity check matrix H and expansion factor zkAnd matrix size parameters to LDPC shortened code encoder 604.
13. The encoding apparatus of claim 11, wherein the encoding apparatus supports low density parity check codes of any code rate/code length, further comprises: in the case of the second type of calculator,
determining z according to a particular spreading factor calculation formulat;
According to ztSize relationship z with elements in Zsetk-1<zt≤zkDetermining an output spreading factor zkWherein z isk-1,zkAre the next-size elements in Zset;
determining m'b=mb+Δm,n′b=nb+ Δ m, pair (m)b,nb) Basis matrix Hb uniformIs expanded at Hb uniformIs increased by Δ m rows and increased by Δ m columns respectively after the last row and the last column, the expansion is obtained to (m'b,n′b) Base matrix H ofb uniform_extension;
Based on a basis matrix Hb uniform_extensionAnd a spreading factor zkTo the basis matrix Hb uniform_extensionPerforming correction to form a correction matrix Hb modified_extension;
Will correct the matrix Hb modified_estensionExpansion factor zkThe sum matrix size parameter is output to the LDPC shortened code encoder 604 or to the correction matrix Hb modified_extensionExpanding to form parity check matrix H, and outputting the parity check matrix H and expansion factor zkAnd matrix size parameters to LDPC shortened code encoder 604.
14. The encoding apparatus of claim 13, wherein the low density parity check code supporting any code rate/code length is: the calculation ztIs calculated by the formula
15. The encoding apparatus of claim 13, wherein the low density parity check code supporting any code rate/code length is: the calculation ztIs calculated by the formula <math><mrow>
<msub>
<mi>z</mi>
<mi>t</mi>
</msub>
<mo>=</mo>
<mfrac>
<mrow>
<mi>N</mi>
<mo>-</mo>
<mi>K</mi>
</mrow>
<mrow>
<msub>
<mi>m</mi>
<mi>b</mi>
</msub>
<mo>+</mo>
<mi>Δm</mi>
</mrow>
</mfrac>
<mo>.</mo>
</mrow></math>
16. The encoding apparatus of claim 10, wherein the encoding apparatus further comprises an input packet buffer for buffering and storing the input packet and outputting it to the LDPC encoder 604.
17. The encoding apparatus supporting low density parity check codes of any code rate/code length as claimed in claim 10, wherein said encoding apparatus further comprises an output codeword grouping buffer for buffering and outputting the codeword grouping output from the erasure codeword bit means 605.
18. The apparatus for encoding a low density parity check code supporting any code rate/code length as claimed in claim 10, wherein said erasure codeword bit means 605 is selected to be in y-m'b×zk-codeword bit erasures at N + K erasure positions.
19. The encoding apparatus of claim 10, wherein the low density parity check code supporting any code rate/code length comprises: the shortened code encoder comprises one (m'b×z,n′bXz) LDPC mother code encoder, a zero bit adding device, a zero bit removing device, an input k bit information block and an expansion factor zkWherein
an add zero bit device for adding x-k before k-bit information packetb·zk-K zero bits, resulting in KbZ bits of information required for encoding are grouped and output to the next-stage encoder;
one (m'b×z,n′bXz) LDPC mother code encoder, (n'b×zk,kb×zk) The LDPC mother code encoder encodes the information packet required by encoding according to the input basic matrix and the expansion factor (or parity check matrix) to obtain n'b·zkThe code word bits of the mother code are output to a zero bit removing device;
a zero bit removing device for deleting the front x zero bits in the input mother code words to obtain shortened code words; outputting shortened codeword bits to a deleted codeword bit means, here k'b=n′b-m′b;
20. A method of generating a hybrid automatic repeat request, HARQ, packet of a low density parity check code using the encoding method or apparatus of claim 1 or claim 10, the method comprising the steps of:
C1) generating LDPC HARQ mother code words according to input K bit information groups;
C2) arranging the code word bits of the LDPC HARQ mother code, wherein the sequence of the information bits is kept, and the sequence of the check bits is changed;
C3) selecting LDPC HARQ code word bits, sequentially selecting bit sequences in sequence for the arranged code words output in the step 2), namely starting from the first systematic bit in the first transmission, and then enabling the starting position of each transmission to be closely followed by the position of the end of the last transmission, and finally obtaining a binary sequence of the HARQ packet and outputting the binary sequence to the next processing unit.
21. The method according to claim 20, wherein, in step C1,
the input K bit information packet has the lowest code rate of R under the condition of complete incremental redundancyFIRIs inputted in the case of (1), wherein RFIRIs given by the system, NFIR=K/RFIRFor the above NFIRIs preceded by K information bits and followed by MFIR=NFIR-K check bits.
22. The method of claim 20, wherein in step C1, the LDPC HARQ mother code codeword generation comprises the following steps:
1) determining a specific code rate R0The mother code set of the low density parity check code is formed by a limited number of code rates of R0Low density parity check code constitution with different code length, the mother code set has a unified basic matrix Hb uniformThe method includes the steps that an arbitrary length input by a channel encoder is a K information bit sequence, an arbitrary length is an N code word bit sequence, a check bit length M is N-K, and a code rate r is K/N;
2) determining an expansion factor according to the length matching of the information packet; according to the spreading factor and the basic matrix Hb uniformDetermining parameters and matrixes required by the encoder through shortening, puncturing or expanding;
3) the encoder encodes the input K bit information packet according to the parameters and the matrix required by the encoder to generate an N bit code word and output the code word.
23. The method of claim 20, wherein in step C2, the LDPC HARQ mother code codeword bit arrangement is arranged based on the following formula, the data of the ith position before arrangement is placed at the jth position after arrangement,
wherein,represents the lower rounded, i, j and 1 all start from 0; i is the bit position index of the codeword before permutation, j is the bit position index of the codeword after permutation; p is a puncturing pattern of size mbIs a vector of from kbTo nb-1, a predefined arrangement of the above-mentioned elemental compositions.
24. The method according to claim 20, wherein in step C3, the codeword bit selection rule is selected based on the following formula, and in the codeword after bit permutation, the bits according to the obtained result position of said formula are selected to be placed in the ith bit position of the kth HARQ packet,
wherein, k is an index of the HARQ packet, and reflects the transmission frequency of the current HARQ packet, k is 0 in the first transmission, k is 1 in the second transmission, and k is added by 1 in the next transmission;
NFIRis the length of the mother code word;
Sk,iindicating the position index of the kth HARQ packet, and identifying the bit position with index i in the current HARQ packet, where the first bit corresponds to Sk,i0 (i-0), where i starts from 0;
Lkindicating the length of the kth HARQ packet.
25. A method for expanding a basic matrix of a structured LDPC code, the basic matrix HbIs m in sizeb×nbIn HbIs increased by Δ m rows and increased by Δ m columns, respectively, after the last row and the last column, form (m)b+Δm)×(nb+ Δ m) matrix Hb extensionThe method comprises the following steps:
for Hb extensionFor any matrix part that satisfies mb+1≤i≤mb+ Δ m line index i, all have
Here, the row-column index starts at 1;
other positions are filled with elements representing a zero square matrix, such as-1.
26. A method for expanding a basic matrix of a structured LDPC code, the basic matrix HbIs m in sizeb×nbIn HbIs increased by Δ m rows and increased by Δ m columns, respectively, after the last row and the last column, form (m)b+Δm)×(nb+ Δ m) matrix Hb extensionThe method comprises the following steps:
for Hb extensionFor the row index i ═ m, for the newly added matrix part inb+1, always having
Other positions are filled with elements representing a zero square matrix, such as-1;
for any satisfy mb+2≤i≤mb+ Δ m line index i, all have
Where i is the matrix Hb extensionThe row index and the column index all start from 1;
other positions are filled with elements representing a zero square matrix, such as-1.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710072808 CN101217337B (en) | 2007-01-01 | 2007-01-01 | A low density parity code encoding device and method supporting incremental redundancy hybrid automatic repeat |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710072808 CN101217337B (en) | 2007-01-01 | 2007-01-01 | A low density parity code encoding device and method supporting incremental redundancy hybrid automatic repeat |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101217337A true CN101217337A (en) | 2008-07-09 |
CN101217337B CN101217337B (en) | 2013-01-23 |
Family
ID=39623707
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200710072808 Active CN101217337B (en) | 2007-01-01 | 2007-01-01 | A low density parity code encoding device and method supporting incremental redundancy hybrid automatic repeat |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101217337B (en) |
Cited By (54)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102065523A (en) * | 2009-11-18 | 2011-05-18 | 华为技术有限公司 | Method for transmitting information according to target coding rate, base station and mobile terminal |
CN102318255A (en) * | 2008-12-17 | 2012-01-11 | 捷讯研究有限公司 | System and Method for Hybrid Automatic Repeat Request (HARQ) Functionality in a Relay Node |
WO2012037749A1 (en) * | 2010-09-25 | 2012-03-29 | 中兴通讯股份有限公司 | Encoding method for low density parity check code and apparatus thereof |
CN103636132A (en) * | 2011-05-09 | 2014-03-12 | 索尼公司 | Encoder and encoding method providing incremental reduncancy |
US8699547B2 (en) | 2008-12-19 | 2014-04-15 | Blackberry Limited | Multiple-input Multiple-output (MIMO) with relay nodes |
US8824359B2 (en) | 2008-12-19 | 2014-09-02 | Blackberry Limited | System and method for resource allocation |
US8837303B2 (en) | 2008-12-17 | 2014-09-16 | Blackberry Limited | System and method for multi-user multiplexing |
US8848594B2 (en) | 2008-12-10 | 2014-09-30 | Blackberry Limited | Method and apparatus for discovery of relay nodes |
WO2015123979A1 (en) * | 2014-02-21 | 2015-08-27 | 中兴通讯股份有限公司 | Encoding method, decoding method, encoding device and decoding device for structured ldpc |
US9191878B2 (en) | 2008-12-19 | 2015-11-17 | Blackberry Limited | System and method for relay node selection |
US9484989B2 (en) | 2008-12-17 | 2016-11-01 | Blackberry Limited | System and method for autonomous combining |
CN107181576A (en) * | 2017-07-07 | 2017-09-19 | 西安电子科技大学 | A kind of IR HARQ transmission methods of the LDPC code suitable for 5G |
CN107248904A (en) * | 2017-07-31 | 2017-10-13 | 北京理工大学 | A kind of LDPC code error control method based on combined coding |
CN107342844A (en) * | 2017-03-24 | 2017-11-10 | 华为技术有限公司 | A kind of coding method and device |
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 |
CN107404322A (en) * | 2014-09-17 | 2017-11-28 | 上海数字电视国家工程研究中心有限公司 | Check matrix and LDPC code word for low code rate LDPC code |
CN107592958A (en) * | 2015-05-18 | 2018-01-16 | 华为技术有限公司 | Ratio index table more than one and the LDPC of more ratios of spreading factor coding and decodings are used under different code length |
WO2018028469A1 (en) * | 2016-08-11 | 2018-02-15 | 电信科学技术研究院 | Ldpc encoding method and encoding device, and communication device |
CN107733440A (en) * | 2016-08-12 | 2018-02-23 | 中兴通讯股份有限公司 | Polygon type structure LDPC processing method and processing devices |
CN107733442A (en) * | 2016-08-12 | 2018-02-23 | 中兴通讯股份有限公司 | The processing method and processing device of structured LDPC code |
CN107947896A (en) * | 2016-10-13 | 2018-04-20 | 普天信息技术有限公司 | A kind of method and apparatus of information transmission |
CN108023663A (en) * | 2016-11-01 | 2018-05-11 | 武汉芯泰科技有限公司 | A kind of puncturing method and device based on configurable punctured table |
CN108023677A (en) * | 2016-11-03 | 2018-05-11 | 华为技术有限公司 | The method, apparatus and wireless telecom equipment of information processing |
CN108270448A (en) * | 2017-01-04 | 2018-07-10 | 中兴通讯股份有限公司 | Quasi-circulating low-density parity check coding method and device |
CN108289006A (en) * | 2017-01-09 | 2018-07-17 | 上海诺基亚贝尔股份有限公司 | Method and apparatus for the data processing in communication system |
CN108449090A (en) * | 2018-01-25 | 2018-08-24 | 西安电子科技大学 | A kind of configurable multi-code is long, multi code Rate of Chinese character ldpc decoder |
CN108631925A (en) * | 2017-03-24 | 2018-10-09 | 中兴通讯股份有限公司 | A kind of quasi-circulating low-density parity check code processing method and device |
CN108809509A (en) * | 2017-05-05 | 2018-11-13 | 电信科学技术研究院 | The foundation drawing selection method and device of low density parity check code |
WO2018218471A1 (en) * | 2017-05-28 | 2018-12-06 | 华为技术有限公司 | Information processing method and communication apparatus |
WO2019001263A1 (en) * | 2017-06-26 | 2019-01-03 | 中兴通讯股份有限公司 | Design method and apparatus for quasi-cyclic low-density parity-check |
CN109150197A (en) * | 2017-06-27 | 2019-01-04 | 华为技术有限公司 | The method, apparatus and communication equipment of information processing |
CN109155772A (en) * | 2016-05-11 | 2019-01-04 | Idac控股公司 | Code domain non-orthogonal multiple scheme |
EP3457574A4 (en) * | 2016-05-13 | 2019-05-08 | ZTE Corporation | Data processing method and device for structured ldpc code |
CN109756307A (en) * | 2017-11-02 | 2019-05-14 | 华为技术有限公司 | Data repeating method and device |
CN109792253A (en) * | 2016-09-30 | 2019-05-21 | Lg电子株式会社 | QC LDPC code speed matching method and device for the method |
CN110324046A (en) * | 2016-06-14 | 2019-10-11 | 高通股份有限公司 | Boosted low-density checksum (LDPC) code combined with HARQ |
US10505671B2 (en) | 2013-11-11 | 2019-12-10 | Huawei Technologies Co., Ltd. | Polar code encoding method and device |
CN110622425A (en) * | 2017-05-12 | 2019-12-27 | 高通股份有限公司 | Constructing parity check matrices with row orthogonality for rate-compatible QC-LDPC coding |
EP3624350A4 (en) * | 2017-06-03 | 2020-06-17 | Huawei Technologies Co., Ltd. | Information processing method and communication device |
CN112187288A (en) * | 2015-03-02 | 2021-01-05 | 三星电子株式会社 | Transmitting apparatus and receiving apparatus |
CN112532253A (en) * | 2016-10-21 | 2021-03-19 | 华为技术有限公司 | Method and apparatus for incremental redundancy hybrid automatic repeat request retransmission |
CN113661667A (en) * | 2019-04-04 | 2021-11-16 | 苹果公司 | Apparatus and method for determining retransmitted content |
US11190213B2 (en) | 2017-06-16 | 2021-11-30 | Huawei Technologies Co., Ltd. | Coding method, wireless device, and chip |
US11362678B2 (en) | 2011-12-30 | 2022-06-14 | Streamscale, Inc. | Accelerated erasure coding system and method |
US11368169B2 (en) | 2017-03-24 | 2022-06-21 | Zte Corporation | Processing method and device for quasi-cyclic low density parity check coding |
US11477065B2 (en) | 2015-04-15 | 2022-10-18 | Zte Corporation | Method and apparatus for code block division |
CN115280696A (en) * | 2020-03-23 | 2022-11-01 | 瑞典爱立信有限公司 | Verifying data integrity in a receiver |
US11500723B2 (en) | 2011-12-30 | 2022-11-15 | Streamscale, Inc. | Using parity data for concurrent data authentication, correction, compression, and encryption |
US11671120B2 (en) | 2015-11-12 | 2023-06-06 | Qualcomm Incorporated | Puncturing for structured low density parity check (LDPC) codes |
US11683051B2 (en) | 2016-05-13 | 2023-06-20 | Zte Corporation | Method and apparatus for data processing with structured LDPC codes |
CN117081607A (en) * | 2023-08-30 | 2023-11-17 | 白盒子(上海)微电子科技有限公司 | NR LDPC partial check matrix coding and decoding indication information acquisition method |
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 |
USRE49989E1 (en) | 2017-06-10 | 2024-05-28 | Qualcomm Incorporated | Communication techniques involving pairwise orthogonality of adjacent rows in LPDC code |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6604216B1 (en) * | 1999-12-10 | 2003-08-05 | Telefonaktiebolaget Lm Ericsson | Telecommunications system and method for supporting an incremental redundancy error handling scheme using available gross rate channels |
EP1596501A1 (en) * | 2004-05-12 | 2005-11-16 | Samsung Electronics Co., Ltd. | Apparatus and method for encoding and decoding block low density parity check codes with a variable coding rate |
CN1714512A (en) * | 2002-11-18 | 2005-12-28 | 高通股份有限公司 | Rate-compatible low-density parity-check (LDPC) codes |
CN1808955A (en) * | 2005-01-23 | 2006-07-26 | 中兴通讯股份有限公司 | Non-regular low intensity parity code based coder and its creation method |
-
2007
- 2007-01-01 CN CN 200710072808 patent/CN101217337B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6604216B1 (en) * | 1999-12-10 | 2003-08-05 | Telefonaktiebolaget Lm Ericsson | Telecommunications system and method for supporting an incremental redundancy error handling scheme using available gross rate channels |
CN1714512A (en) * | 2002-11-18 | 2005-12-28 | 高通股份有限公司 | Rate-compatible low-density parity-check (LDPC) codes |
EP1596501A1 (en) * | 2004-05-12 | 2005-11-16 | Samsung Electronics Co., Ltd. | Apparatus and method for encoding and decoding block low density parity check codes with a variable coding rate |
CN1808955A (en) * | 2005-01-23 | 2006-07-26 | 中兴通讯股份有限公司 | Non-regular low intensity parity code based coder and its creation method |
Cited By (102)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8848594B2 (en) | 2008-12-10 | 2014-09-30 | Blackberry Limited | Method and apparatus for discovery of relay nodes |
US9379804B2 (en) | 2008-12-17 | 2016-06-28 | Blackberry Limited | System and method for hybrid automatic repeat request (HARQ) functionality in a relay node |
US9484989B2 (en) | 2008-12-17 | 2016-11-01 | Blackberry Limited | System and method for autonomous combining |
CN102318255A (en) * | 2008-12-17 | 2012-01-11 | 捷讯研究有限公司 | System and Method for Hybrid Automatic Repeat Request (HARQ) Functionality in a Relay Node |
CN102318255B (en) * | 2008-12-17 | 2015-02-04 | 黑莓有限公司 | System and method for hybrid automatic repeat request (HARQ) functionality in a relay node |
US8856607B2 (en) | 2008-12-17 | 2014-10-07 | Blackberry Limited | System and method for hybrid automatic repeat request (HARQ) functionality in a relay node |
US9571179B2 (en) | 2008-12-17 | 2017-02-14 | Blackberry Limited | System and method for multi-user multiplexing |
US8837303B2 (en) | 2008-12-17 | 2014-09-16 | Blackberry Limited | System and method for multi-user multiplexing |
US9923628B2 (en) | 2008-12-19 | 2018-03-20 | Blackberry Limited | System and method for relay node selection |
US8699547B2 (en) | 2008-12-19 | 2014-04-15 | Blackberry Limited | Multiple-input Multiple-output (MIMO) with relay nodes |
US8824359B2 (en) | 2008-12-19 | 2014-09-02 | Blackberry Limited | System and method for resource allocation |
US9191878B2 (en) | 2008-12-19 | 2015-11-17 | Blackberry Limited | System and method for relay node selection |
US8526534B2 (en) | 2009-11-18 | 2013-09-03 | Huawei Technologies Co., Ltd. | Method for transmitting information according to target encoding rate, base station and mobile station |
CN102065523A (en) * | 2009-11-18 | 2011-05-18 | 华为技术有限公司 | Method for transmitting information according to target coding rate, base station and mobile terminal |
CN102412842B (en) * | 2010-09-25 | 2016-06-15 | 中兴通讯股份有限公司 | The coded method of a kind of low density parity check code and device |
WO2012037749A1 (en) * | 2010-09-25 | 2012-03-29 | 中兴通讯股份有限公司 | Encoding method for low density parity check code and apparatus thereof |
CN102412842A (en) * | 2010-09-25 | 2012-04-11 | 中兴通讯股份有限公司 | Method and device for encoding low-density parity check code |
CN103636132A (en) * | 2011-05-09 | 2014-03-12 | 索尼公司 | Encoder and encoding method providing incremental reduncancy |
US11500723B2 (en) | 2011-12-30 | 2022-11-15 | Streamscale, Inc. | Using parity data for concurrent data authentication, correction, compression, and encryption |
US11362678B2 (en) | 2011-12-30 | 2022-06-14 | Streamscale, Inc. | Accelerated erasure coding system and method |
US11736125B2 (en) | 2011-12-30 | 2023-08-22 | Streamscale, Inc. | Accelerated erasure coding system and method |
US10972216B2 (en) | 2013-11-11 | 2021-04-06 | Huawei Technologies Co., Ltd. | Polar code encoding method and device |
US10505671B2 (en) | 2013-11-11 | 2019-12-10 | Huawei Technologies Co., Ltd. | Polar code encoding method and device |
US11509418B2 (en) | 2013-11-11 | 2022-11-22 | Huawei Technologies Co., Ltd. | Polar code encoding method and device |
US10320419B2 (en) | 2014-02-21 | 2019-06-11 | Zte Corporation | Encoding method, decoding method, encoding device and decoding device for structured LDPC |
WO2015123979A1 (en) * | 2014-02-21 | 2015-08-27 | 中兴通讯股份有限公司 | Encoding method, decoding method, encoding device and decoding device for structured ldpc |
CN107404322A (en) * | 2014-09-17 | 2017-11-28 | 上海数字电视国家工程研究中心有限公司 | Check matrix and LDPC code word for low code rate LDPC code |
CN112187288B (en) * | 2015-03-02 | 2023-09-01 | 三星电子株式会社 | Transmitting apparatus and receiving apparatus |
CN112187288A (en) * | 2015-03-02 | 2021-01-05 | 三星电子株式会社 | Transmitting apparatus and receiving apparatus |
US11477065B2 (en) | 2015-04-15 | 2022-10-18 | Zte Corporation | Method and apparatus for code block division |
CN107592958A (en) * | 2015-05-18 | 2018-01-16 | 华为技术有限公司 | Ratio index table more than one and the LDPC of more ratios of spreading factor coding and decodings are used under different code length |
US11671120B2 (en) | 2015-11-12 | 2023-06-06 | Qualcomm Incorporated | Puncturing for structured low density parity check (LDPC) codes |
CN109155772A (en) * | 2016-05-11 | 2019-01-04 | Idac控股公司 | Code domain non-orthogonal multiple scheme |
WO2017193614A1 (en) * | 2016-05-13 | 2017-11-16 | 中兴通讯股份有限公司 | Encoding method and device and decoding method and device for structured ldpc |
US11139835B2 (en) | 2016-05-13 | 2021-10-05 | Zte Corporation | Method and apparatus for data processing with structured LDPC codes |
CN107370490A (en) * | 2016-05-13 | 2017-11-21 | 中兴通讯股份有限公司 | Coding, interpretation method and the device of 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 |
US10523237B2 (en) | 2016-05-13 | 2019-12-31 | Zte Corporation | Method and apparatus for data processing with structured LDPC codes |
US10892778B2 (en) | 2016-05-13 | 2021-01-12 | Zte Corporation | Encoding method and device and decoding method and device for structured LDPC |
EP3457574A4 (en) * | 2016-05-13 | 2019-05-08 | ZTE Corporation | Data processing method and device for structured ldpc code |
CN110324046A (en) * | 2016-06-14 | 2019-10-11 | 高通股份有限公司 | Boosted low-density checksum (LDPC) code combined with HARQ |
US11942964B2 (en) | 2016-06-14 | 2024-03-26 | Qualcomm Incorporated | Methods and apparatus for compactly describing lifted low-density parity-check (LDPC) codes |
US11831332B2 (en) | 2016-06-14 | 2023-11-28 | Qualcomm Incorporated | High performance, flexible, and compact low-density parity-check (LDPC) code |
WO2018028469A1 (en) * | 2016-08-11 | 2018-02-15 | 电信科学技术研究院 | Ldpc encoding method and encoding device, and communication device |
CN107733439A (en) * | 2016-08-11 | 2018-02-23 | 电信科学技术研究院 | A kind of LDPC coding methods, code device and communication equipment |
CN107733440A (en) * | 2016-08-12 | 2018-02-23 | 中兴通讯股份有限公司 | Polygon type structure LDPC processing method and processing devices |
CN107733442B (en) * | 2016-08-12 | 2022-12-02 | 中兴通讯股份有限公司 | Method and device for processing structured LDPC code |
CN107733440B (en) * | 2016-08-12 | 2022-12-02 | 中兴通讯股份有限公司 | Polygonal structured LDPC processing method and device |
CN107733442A (en) * | 2016-08-12 | 2018-02-23 | 中兴通讯股份有限公司 | The processing method and processing device of structured LDPC code |
CN109792253A (en) * | 2016-09-30 | 2019-05-21 | Lg电子株式会社 | QC LDPC code speed matching method and device for the method |
CN107947896B (en) * | 2016-10-13 | 2020-10-27 | 普天信息技术有限公司 | Information transmission method and device |
CN107947896A (en) * | 2016-10-13 | 2018-04-20 | 普天信息技术有限公司 | A kind of method and apparatus of information transmission |
CN112532253A (en) * | 2016-10-21 | 2021-03-19 | 华为技术有限公司 | Method and apparatus for incremental redundancy hybrid automatic repeat request retransmission |
CN108023663B (en) * | 2016-11-01 | 2021-04-13 | 武汉芯泰科技有限公司 | Deleting method and device based on configurable deleting table |
CN108023663A (en) * | 2016-11-01 | 2018-05-11 | 武汉芯泰科技有限公司 | A kind of puncturing method and device based on configurable punctured table |
CN108023677A (en) * | 2016-11-03 | 2018-05-11 | 华为技术有限公司 | The method, apparatus and wireless telecom equipment of information processing |
CN108023677B (en) * | 2016-11-03 | 2020-12-08 | 华为技术有限公司 | Information processing method and device and wireless communication equipment |
CN108270448B (en) * | 2017-01-04 | 2022-11-15 | 中兴通讯股份有限公司 | Quasi-cyclic low-density parity check coding method and device |
CN108270448A (en) * | 2017-01-04 | 2018-07-10 | 中兴通讯股份有限公司 | Quasi-circulating low-density parity check coding method and device |
CN108289006B (en) * | 2017-01-09 | 2021-07-16 | 上海诺基亚贝尔股份有限公司 | Method and apparatus for data processing in a communication system |
CN108289006A (en) * | 2017-01-09 | 2018-07-17 | 上海诺基亚贝尔股份有限公司 | Method and apparatus for the data processing in communication system |
CN107342844B (en) * | 2017-03-24 | 2022-09-02 | 华为技术有限公司 | Coding method and device |
CN107342844A (en) * | 2017-03-24 | 2017-11-10 | 华为技术有限公司 | A kind of coding method and device |
US11843394B2 (en) | 2017-03-24 | 2023-12-12 | Zte Corporation | 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 |
US11368169B2 (en) | 2017-03-24 | 2022-06-21 | Zte Corporation | Processing method and device for quasi-cyclic low density parity check coding |
CN108631925B (en) * | 2017-03-24 | 2022-05-03 | 中兴通讯股份有限公司 | Quasi-cyclic low-density parity check coding processing method and device |
US11190211B2 (en) | 2017-05-05 | 2021-11-30 | Datang Mobile Communications Equipment Co., Ltd. | Method and device of selecting base graph of low-density parity-check code |
CN108809509A (en) * | 2017-05-05 | 2018-11-13 | 电信科学技术研究院 | The foundation drawing selection method and device of low density parity check code |
CN110622425B (en) * | 2017-05-12 | 2024-02-20 | 高通股份有限公司 | Method and apparatus for performing Low Density Parity Check (LDPC) decoding |
CN110622425A (en) * | 2017-05-12 | 2019-12-27 | 高通股份有限公司 | Constructing parity check matrices with row orthogonality for rate-compatible QC-LDPC coding |
US11916571B2 (en) | 2017-05-12 | 2024-02-27 | Qualcomm Incorporated | Row orthogonality in LDPC rate compatible design |
CN110612679B (en) * | 2017-05-28 | 2020-12-04 | 华为技术有限公司 | Information processing method and communication device |
WO2018218471A1 (en) * | 2017-05-28 | 2018-12-06 | 华为技术有限公司 | Information processing method and communication apparatus |
CN110612679A (en) * | 2017-05-28 | 2019-12-24 | 华为技术有限公司 | Information processing method and communication device |
US11463108B2 (en) | 2017-05-28 | 2022-10-04 | Huawei Technologies Co., Ltd. | Information processing method and communications apparatus |
US11115052B2 (en) | 2017-06-03 | 2021-09-07 | Huawei Technologies Co., Ltd. | Information processing method and communications apparatus |
EP3624350A4 (en) * | 2017-06-03 | 2020-06-17 | Huawei Technologies Co., Ltd. | Information processing method and communication device |
USRE49989E1 (en) | 2017-06-10 | 2024-05-28 | Qualcomm Incorporated | Communication techniques involving pairwise orthogonality of adjacent rows in LPDC code |
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 |
US11190213B2 (en) | 2017-06-16 | 2021-11-30 | Huawei Technologies Co., Ltd. | Coding method, wireless device, and chip |
WO2019001263A1 (en) * | 2017-06-26 | 2019-01-03 | 中兴通讯股份有限公司 | Design method and apparatus for quasi-cyclic low-density parity-check |
US11159178B2 (en) | 2017-06-26 | 2021-10-26 | Zte Corporation | Method and apparatus for quasi-cyclic low-density parity-check |
US11626888B2 (en) | 2017-06-26 | 2023-04-11 | Zte Corporation | Method and apparatus for quasi-cyclic low-density parity-check |
RU2743857C1 (en) * | 2017-06-26 | 2021-03-01 | ЗедТиИ КОРПОРЕЙШН | Method and equipment for designing for quasicyclic rare parity control |
CN109150197A (en) * | 2017-06-27 | 2019-01-04 | 华为技术有限公司 | The method, apparatus and communication equipment of information processing |
CN109150197B (en) * | 2017-06-27 | 2024-05-14 | 华为技术有限公司 | Information processing method, device and communication equipment |
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 |
CN107181576A (en) * | 2017-07-07 | 2017-09-19 | 西安电子科技大学 | A kind of IR HARQ transmission methods of the LDPC code suitable for 5G |
CN107181576B (en) * | 2017-07-07 | 2020-02-21 | 西安电子科技大学 | IR-HARQ transmission method suitable for LDPC code in 5G |
CN107248904A (en) * | 2017-07-31 | 2017-10-13 | 北京理工大学 | A kind of LDPC code error control method based on combined coding |
CN107248904B (en) * | 2017-07-31 | 2020-04-17 | 北京理工大学 | LDPC code error control method based on joint coding |
CN109756307B (en) * | 2017-11-02 | 2020-11-17 | 华为技术有限公司 | Data retransmission method and device |
US11528040B2 (en) | 2017-11-02 | 2022-12-13 | Huawei Technologies Co., Ltd. | Data retransmission method and apparatus to obtain information to be transmitted and to perform Polar encoding on the information |
CN109756307A (en) * | 2017-11-02 | 2019-05-14 | 华为技术有限公司 | Data repeating method and device |
CN108449090A (en) * | 2018-01-25 | 2018-08-24 | 西安电子科技大学 | A kind of configurable multi-code is long, multi code Rate of Chinese character ldpc decoder |
CN108449090B (en) * | 2018-01-25 | 2020-06-16 | 西安电子科技大学 | LDPC decoder capable of configuring multiple code lengths and multiple code rates |
CN113661667A (en) * | 2019-04-04 | 2021-11-16 | 苹果公司 | Apparatus and method for determining retransmitted content |
CN115280696A (en) * | 2020-03-23 | 2022-11-01 | 瑞典爱立信有限公司 | Verifying data integrity in a receiver |
CN117081607A (en) * | 2023-08-30 | 2023-11-17 | 白盒子(上海)微电子科技有限公司 | NR LDPC partial check matrix coding and decoding indication information acquisition method |
CN117081607B (en) * | 2023-08-30 | 2024-03-19 | 白盒子(上海)微电子科技有限公司 | NR LDPC partial check matrix coding and decoding indication information acquisition method |
Also Published As
Publication number | Publication date |
---|---|
CN101217337B (en) | 2013-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101217337B (en) | A low density parity code encoding device and method supporting incremental redundancy hybrid automatic repeat | |
CN101005334B (en) | Method for forming mixed automatic request re-sending packet of low density parity check code | |
CN101325474B (en) | Channel coding and modulation mapping method for hybrid automatic repeat request of LDPC code | |
JP5354979B2 (en) | Low density parity check convolutional code (LDPC-CC) encoder and LDPC-CC decoder | |
KR100856235B1 (en) | Apparatus and method for encoding and decoding block low density parity check codes with a variable coding rate | |
US8458577B2 (en) | Encoder, decoder, encoding method, and decoding method | |
KR101611169B1 (en) | Apparatus and method for transmitting and receiving data in communication/broadcasting system | |
CN101453297B (en) | Encoding method and apparatus for low density generation matrix code, and decoding method and apparatus | |
EP2568612A1 (en) | LDPC encoding and decoding of packets of variable sizes | |
US20070113148A1 (en) | Decoding apparatus and method in a communication system using low density parity check codes | |
KR100984289B1 (en) | Signal transmitting/receiving apparatus for supporting variable coding rate in a communication system and method thereof | |
KR20050118056A (en) | Method and apparatus for channel encoding and decoding in mobile communication systems using multi-rate block ldpc codes | |
JP2006157926A (en) | Method and apparatus for generating low-density parity check code | |
JP5714747B2 (en) | Encoder | |
CN102714504A (en) | Method and apparatus for transmitting and receiving data in a communication system | |
KR101503653B1 (en) | Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes | |
JP5789014B2 (en) | Encoding method, encoder, decoder | |
JP4832447B2 (en) | Decoding apparatus and method using channel code | |
JP2009201084A (en) | Coder and transmission apparatus | |
JP5523064B2 (en) | Decoding apparatus and method | |
KR101265636B1 (en) | method of performing a Low-density parity-check codes decoding using a model matrix | |
JP2007329828A (en) | Decoding method, decoder and communication equipment | |
JP2009177648A (en) | Low-density parity-check convolutional code (ldpc-cc) encoder and transmitter | |
JP2009177649A (en) | Encoding method, encoder, and decoder |
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 |