CN102412842B - The coded method of a kind of low density parity check code and device - Google Patents

The coded method of a kind of low density parity check code and device Download PDF

Info

Publication number
CN102412842B
CN102412842B CN201010293323.6A CN201010293323A CN102412842B CN 102412842 B CN102412842 B CN 102412842B CN 201010293323 A CN201010293323 A CN 201010293323A CN 102412842 B CN102412842 B CN 102412842B
Authority
CN
China
Prior art keywords
code
matrix
tx
code word
bit
Prior art date
Application number
CN201010293323.6A
Other languages
Chinese (zh)
Other versions
CN102412842A (en
Inventor
龚贤卫
袁志锋
徐俊
李长兴
Original Assignee
中兴通讯股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Priority to CN201010293323.6A priority Critical patent/CN102412842B/en
Publication of CN102412842A publication Critical patent/CN102412842A/en
Application granted granted Critical
Publication of CN102412842B publication Critical patent/CN102412842B/en

Links

Classifications

    • HELECTRICITY
    • H03BASIC ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/116Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
    • HELECTRICITY
    • H03BASIC ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • HELECTRICITY
    • H03BASIC ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6508Flexibility, adaptability, parametrability and configurability of the implementation
    • H03M13/6516Support of multiple code parameters, e.g. generalized Reed-Solomon decoder for a variety of generator polynomials or Galois fields
    • HELECTRICITY
    • H03BASIC ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6522Intended application, e.g. transmission or communication standard
    • H03M13/6527IEEE 802.11 [WLAN]
    • HELECTRICITY
    • H03BASIC ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6577Representation or format of variables, register sizes or word-lengths and quantization
    • H03M13/658Scaling by multiplication or division
    • HELECTRICITY
    • H03BASIC ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6577Representation or format of variables, register sizes or word-lengths and quantization
    • H03M13/6591Truncation, saturation and clamping

Abstract

The invention provides the coded method of a kind of low density parity check code and device, described method includes: compare female code code check of uniform based matrix support and the size of transmission code rate, according to comparative result, it is determined that the length K ' of input information block bit; The encoder matrix of LDPC code is determined according to uniform based matrix and spreading factor; By the information block bit that the length received is K ', it is determined that information bit to be encoded; Utilize described encoder matrix that information bit to be encoded carries out LDPC coding, and female code code word bits that coding is obtained processes, and obtains code word bits waiting for transmission. The coded method of LDPC code provided by the invention and device, determine basis matrix and spreading factor, carry out input information block length according to the transmission code rate received to determine or encoder matrix process, it is met the code word of aforementioned transmission code check, the basis of best performance achieves the transmutability of code check, reduce hardware design complexity, and less costly.

Description

The coded method of a kind of low density parity check code and device

Technical field

The present invention relates to digital communicating field, particularly relate to coded method and the device of a kind of low density parity check code.

Background technology

At present, digital communication system is conventional communication system. As it is shown in figure 1, digital communication system is made up of transmitting terminal, channel and receiving terminal, wherein, transmitting terminal generally includes the parts such as information source, source encoder, channel encoder and manipulator (or writing unit); Receiving terminal generally includes demodulator (or sensing element), channel decoder, source decoder and the stay of two nights; Channel (or storage medium) is there is between transmitting terminal and receiving terminal, and channel exists noise source in digital communication systems, and channel code chain (including channel decoding, modulation /demodulation etc.) is the most critical technology of whole digital communication physical layer, which determine the validity and reliability of digital communication system bottom transmission.

Channel encoder is to resist various noises and interference in transmitting procedure, by increasing redundancy artificially so that system has the ability automatically correcting mistake, thus the reliability of guarantee information transmission. Low-density checksum (LowDensityParityCheck, LDPC) code is that a class can use very sparse parity matrix or the linear block codes of bipartite graph definition, utilize its check matrix openness just, the coding and decoding of low complex degree could be realized, so that LDPC moves towards practical.

The parity check matrix H of one M × N defines each code word with N-bit and meets the constraint of M even-odd check collection, namely encodes in the N-bit code word obtained, and has the check bit of M-bit, the information bit of N-M bit.If the parity check matrix H of LDPC code is (mb×z)×(nb× z) matrix, it is by mb×nbIndividual matrix in block form is constituted, and each matrix in block form is the different powers of the basic permutation matrix of z × z, and when basic permutation matrix is unit matrix, they are all the cyclic shift matrices of unit matrix, as moved to right, have following form:

H = P h 00 b P h 01 b P h 02 b ... P h 0 n b - 1 b P h 10 b P h 11 b P h 12 b ... P h 1 n b - 1 b ... ... ... ... ... P h m b - 10 b P h m b - 11 b P h m b - 12 b ... P h m b - 1 n b - 1 b = P H b

By such powerJust can uniquely identifying each matrix in block form, the power of unit matrix can represent with 0, and the power of null matrix represents with-1. So, if replaced by its power by each matrix in block form of H, a m is just obtainedb×nbPower matrix Hb. Here H is definedbBeing the basis matrix of H, H is called HbExtended matrix. When actual coding, the columns=N/n of z=code length/basis matrixb, it is called spreading factor. Such as, matrix

Can with the basis matrix H of following parameter z, 2 × 4bExtend with the unit matrix of a basic permutation matrix that is z × z and obtain,

Z=3 and H b = 0 1 0 - 1 2 1 2 1

Accordingly it is also possible to say that the encoder of LDPC code is by basis matrix Hb, spreading factor z and basic permutation matrix uniquely generated.

If for each different spreading factor, LDPC adopts a basis matrix, then for each different code length, the coder of LDPC code is required for one basis matrix of storage, when code length is a variety of, it is necessary to store a lot of basis matrix, it is necessary to consider the problems such as storage. Accordingly, it would be desirable to when realizing time-varying code length, in the certain limit of same code check, the LDPC code of multiple code length can use the basis matrix of same form, we call uniform based matrix this matrixDuring different code length, rightIt is modified and extends, it is possible to obtaining parity check matrix H so that the coder of generation goes for the occasion that code length is variable.

Wherein, correction is that the spreading factor utilizing different code length is to basis matrix HbOr uniform based matrixIn nonnegative value be modified so that after correction, element value is less than the spreading factor value under this code length. This is because HbOrIn element represent the power of basic permutation matrix, and basic permutation matrix, the i.e. unit matrix of z × z, every circulation primary, be equivalent to unit matrix ring shift right one, i.e. unit matrix ring shift right string, therefore foundation circulant matrix maximum cyclic shift z-1 time; If circulated z time, obtain or unit matrix, it is equal to nothing and is circulated displacement. Correction algorithm has a variety of, for instance, it is possible to adopt delivery (mod), round (scale+floor) or round off (scale+round) etc., if PijBased on matrix HbIn i-th row jth row non-negative element, Pij' for revised basis matrixIn i-th row jth row non-negative element, have:

For delivery (mod) algorithm: P i j ′ ≡ P i j mod z ≡ P i j m o d N n b ;

For rounding (scale+floor) algorithm:

For (scale+round) algorithm that rounds off: P i j ′ = R o u n d ( P i j × z z m a x ) = R o u n d ( P i j × N N m a x )

Wherein, z is the spreading factor that current code length is corresponding, i.e. the line number of block matrice of square or columns, zmaxFor maximum support code length NmaxCorresponding spreading factor. Mod is modulo operation,For lower floor operation, Round is the operation that rounds up.

Such as, for the LDPC code of code length 1152 bit, if its basis matrix HbCertain non-negative element be 93, if the maximum code length of its support is 2304, basis matrix be sized to 12 × 24, to its result being modified be:

For delivery (mod) algorithm: 93 mod 1152 24 = 93 mod 48 = 45 ;

For rounding (scale+floor) algorithm:

For (scale+round) algorithm that rounds off: R o u n d ( 93 × 1152 2304 ) = R o u n d ( 46.5 ) = 47.

The LDPC code of this specific code check variable code length is owing to having the basis matrix of same form, so completely can with an encoder/decoder, wherein the basis matrix of its same form can also be called uniform based matrix

Assume a LDPC code parity check matrix H be sized to (mb×z)×(nb× z), uniform based matrixBe sized to mb×nb, then female code code check R of this LDPC code supportm=(nb-mb)/nb;If the information block length of input is K ', after a series of process, obtain the code word bits to be transmitted that length is N ', then claim transmission code rate Rtx=K'/N'.

In IEEE802.16e, the code check of LDPC code support is 1/2,2/3,3/4,5/6, in the encoding scheme of existing LDPC code, generally adopt the LDPC encoder matrix H of different female code code check, to ensure that LDPC code has to a certain degree code check and performance flexibly, now, arise that four basis matrix Hb, hardware needs multiple LDPC coder, what can roll up hardware realizes cost; Or realize the coding and decoding of different code check with an encoder/decoder being suitable for multiple female code code check, but hardware designs can be extremely complex, can roll up hard-wired cost equally.

Summary of the invention

In view of this, present invention is primarily targeted at the coded method that a kind of LDPC code is provided and device, it is achieved that the arbitrarily coding of the LDPC code of variable bit rate.

For reaching above-mentioned purpose, the technical scheme is that and be achieved in that:

The coded method of a kind of low-density checksum LDPC code, described method comprises the steps:

Compare female code code check of uniform based matrix support and the size of transmission code rate, according to comparative result, it is determined that the length K ' of input information block bit;

The encoder matrix of LDPC code is determined according to uniform based matrix and spreading factor;

By the information block bit that the length received is K ', it is determined that information bit to be encoded;

Utilize described encoder matrix that information bit to be encoded carries out LDPC coding, and female code code word bits that coding is obtained processes, and obtains code word bits waiting for transmission.

Described method also includes: arrange uniform based matrix and the spreading factor of LDPC code.

Also include before the size of the described female code code check comparing uniform based matrix support and transmission code rate: receive current transmission code rate;

Described according to comparative result, it is determined that the length K ' of input information block bit is:

Work as Rtx≥RmTime, it is determined that the length K ' of information block bit is (nb-mb) × z; Work as Rtx< RmTime, it is determined that the length of information block bit is K'=func (mb×z×Rtx/(1-Rtx)) or K'=func (mb×z/(1-Rtx))-mb× z or K'=func (func (mb×z/(1-Rtx))×Rtx);

Wherein, RtxFor transmission code rate, RmFor female code code check, mb、nbThe respectively line number of uniform based matrix and columns, z is spreading factor, and func (x) is the one of number, downward round numbers or round numbers of rounding off that x is rounded up.

Described according to uniform based matrix and spreading factor, it is determined that the encoder matrix of LDPC code is:

Uniform based matrix is modified, according to spreading factor z, utilizes the unit matrix of z × z to be extended revising the basis matrix obtained, obtain the encoder matrix of LDPC code.

Described by the information block bit that the length received is K ', it is determined that information bit to be encoded is:

Work as Rtx≥RmTime, by the information block bit that length is K ' that receives directly as information bit to be encoded; Work as Rtx< RmTime, in the information block bit that length is K ', add filling bit, forming length is kbThe information bit to be encoded of × z.

Described female code code word bits that coding is obtained carries out process and is:

Female code code word that coding is obtained is reset, and the female code code word bits before wherein resetting is A0,A1,…,Anb×z-1, the female code code word bits after rearrangement is B0,B1,…,Bnb×z-1, rearrangement formulae is:

Wherein, kb=nb-mb, PV represents that code word resets vector, and its element set is { nb-mb,nb-mb+1,nb-mb+2,…,nb-1}, PV (x) represent that in PV vector, index is the element of x, and x is nonnegative integer;

Work as Rtx≥RmTime, the female code code word bits B after rearrangement0,B1,…,Bnb×z-1Func (K'/R is taken from small to large successively according to indextx) individual bit, as code word bits waiting for transmission;

Work as Rtx< RmTime, the described k that will addb× z-K' filling bit is from the female code code word bits B after resetting0,B1,…,Bnb×z-1In systematic bits in delete, remaining female code code word bits is as code word bits waiting for transmission.

Described determine LDPC code encoder matrix be:

Uniform based matrix is modified, according to spreading factor z, utilizes the unit matrix of z × z to be extended revising the basis matrix obtained, obtain the extended matrix of LDPC code;

Work as Rtx≥RmTime, using the extended matrix encoder matrix as LDPC code; Work as Rtx< RmTime, intercept the func (m on the right of extended matrixb×z/(1-Rtx)) row, the matrix that the obtains encoder matrix as LDPC code will be intercepted; Or,

WhenDuring for positive integer, uniform based matrix is modified, obtains revised basis matrix;

Work as Rtx≥RmTime, according to spreading factor z, utilize the unit matrix of z × z to be extended revising the basis matrix obtained, obtain the encoder matrix of LDPC code; Work as Rtx< RmTime, intercept the k ' on the right of revised basis matrixb+mbRow, according to spreading factor z, utilize the unit matrix of z × z to be extended intercepting the matrix obtained, obtain the encoder matrix of LDPC code.

Described by the information block bit that the length received is K ', it is determined that information bit to be encoded is: by information block bit that length is K ' directly as information bit to be encoded.

Described female code code word bits that coding is obtained carries out process and is:

Female code code word that coding is obtained is reset, and the female code code word bits before wherein resetting isFemale code code word bits after rearrangement isRearrangement formulae is:

Wherein,PV represents that code word resets vector, and its element set isPV (x) represents that in PV vector, index is the element of x, and x is nonnegative integer, whereinRepresent number that x is rounded up;

Work as Rtx≥RmTime, the female code code word bits after rearrangementFunc (K'/R is taken from small to large successively according to indextx) individual bit, as code word bits waiting for transmission;

Work as Rtx< RmTime, directly by from reset after female code code word bitsAs code word bits waiting for transmission.

A kind of code device of LDPC code, including coding unit, described device also includes: comparing unit, packet bit determine that unit, encoder matrix determine that unit, information bit determine unit and code word processing unit; Wherein,

Comparing unit, the size of female code code check with transmission code rate for comparing the support of uniform based matrix;

Packet bit determines unit, for the comparative result according to comparing unit, it is determined that the length K ' of input information block bit;

Encoder matrix determines unit, for determining the encoder matrix of LDPC code according to uniform based matrix and spreading factor;

Information bit determines unit, obtains, for reception, the information block bit that length is K ', and determines information bit to be encoded, is transmitted to coding unit;

Code word processing unit, the female code code word obtained for coding unit carries out LDPC coding processes, and obtains code word bits waiting for transmission.

Described device also includes: arrange unit, for arranging uniform based matrix and the spreading factor of LDPC code.

Described device also includes input block, for receiving current transmission code rate;

Described packet bit determines that unit is specifically for being R when the comparative result of comparing unittx≥RmTime, it is determined that the length K ' of information block bit is (nb-mb) × z;When the comparative result of comparing unit is Rtx< RmTime, it is determined that the length of information block bit is K'=func (mb×z×Rtx/(1-Rtx)) or K'=func (mb×z/(1-Rtx))-mb× z or K'=func (func (mb×z/(1-Rtx))×Rtx); Wherein, RtxFor transmission code rate, RmFor female code code check, mb、nbThe respectively line number of uniform based matrix and columns, z is spreading factor, and func (x) is the one of number, downward round numbers or round numbers of rounding off that x is rounded up.

Described encoder matrix determines that unit is specifically for being modified described uniform based matrix, according to spreading factor z, utilizes the unit matrix of z × z to be extended revising the basis matrix obtained, obtains the encoder matrix of LDPC code.

Described information bit determines that unit is specifically for being R when the comparative result of comparing unittx≥RmTime, by the information block bit that length is K ' that receives directly as information bit to be encoded; When the comparative result of comparing unit is Rtx< RmTime, in the information block bit that length is K ', add filling bit, forming length is kbThe information bit to be encoded of × z.

Described code word processing unit is reset specifically for female code code word that coding unit coding is obtained, and the female code code word bits before wherein resetting is A0,A1,…,Anb×z-1, the female code code word bits after rearrangement is B0,B1,…,Bnb×z-1, rearrangement formulae is:

Wherein, kb=nb-mb, PV represents that code word resets vector, and its element set is { nb-mb,nb-mb+1,nb-mb+2,…,nb-1}, PV (x) represent that in PV vector, index is the element of x, and x is nonnegative integer;

When the comparative result of comparing unit is Rtx≥RmTime, the female code code word bits B after rearrangement0,B1,…,Bnb×z-1Func (K'/R is taken from small to large successively according to indextx) individual bit, as code word bits waiting for transmission;

When the comparative result of comparing unit is Rtx< RmTime, the described k that will addb× z-K' filling bit is from the female code code word bits B after resetting0,B1,…,Bnb×z-1In systematic bits in delete, remaining female code code word bits is as code word bits waiting for transmission.

Described encoder matrix determines that unit is specifically for being modified uniform based matrix, according to spreading factor z, utilizes the unit matrix of z × z to be extended revising the basis matrix obtained, obtains the extended matrix of LDPC code; When the comparative result of comparing unit is Rtx≥RmTime, using the extended matrix encoder matrix as LDPC code; When the comparative result of comparing unit is Rtx< RmTime, intercept the func (m on the right of extended matrixb×z/(1-Rtx)) row, the matrix that the obtains encoder matrix as LDPC code will be intercepted; OrDuring for positive integer, uniform based matrix is modified, obtains revised basis matrix; When the comparative result of comparing unit is Rtx≥RmTime, according to spreading factor z, utilize the unit matrix of z × z to be extended revising the basis matrix obtained, obtain the encoder matrix of LDPC code; When the comparative result of comparing unit is Rtx< RmTime, intercept the k ' on the right of revised basis matrixb+mbRow, according to spreading factor z, utilize the unit matrix of z × z to be extended intercepting the matrix obtained, obtain the encoder matrix of LDPC code.

Described information bit determine unit specifically for the information block bit that length is K ' that will receive directly as information bit to be encoded.

Described code word processing unit is reset specifically for female code code word that coding unit is obtained, and the female code code word bits before wherein resetting isFemale code code word bits after rearrangement isRearrangement formulae is:

Wherein,PV represents that code word resets vector, and its element set isPV (x) represents that in PV vector, index is the element of x, and x is nonnegative integer;

When the comparative result of comparing unit is Rtx≥RmTime, the female code code word bits after rearrangementFunc (K'/R is taken from small to large successively according to indextx) individual bit, as code word bits waiting for transmission;

When the comparative result of comparing unit is Rtx< RmTime, directly by from reset after female code code word bitsAs code word bits waiting for transmission.

The coded method of LDPC code provided by the invention and device, determine a basis matrix and spreading factor, the determination of input information block length or the process of encoder matrix is carried out according to the transmission code rate received, it is met the code word of aforementioned transmission code check, the basis of best performance achieves the transmutability of code check, reduce the complexity of hardware designs during for realizing different code check, and realize less costly.

Accompanying drawing explanation

Fig. 1 is the structured flowchart of digital communication system;

Fig. 2 be the coded method of LDPC code provided by the invention realize schematic flow sheet;

Fig. 3 is the schematic flow sheet of the embodiment one of the coded method of LDPC code provided by the invention;

Fig. 4 is the schematic flow sheet of the embodiment two of the coded method of LDPC code provided by the invention;

Fig. 5 is the structured flowchart of the code device of LDPC code provided by the invention.

Detailed description of the invention

The basic thought of the present invention is: compare female code code check of uniform based matrix support and the size of transmission code rate, according to comparative result, it is determined that the length K ' of input information block bit; The encoder matrix of LDPC code is determined according to uniform based matrix and spreading factor; By the information block bit that the length received is K ', it is determined that information bit to be encoded; Utilize described encoder matrix that information bit to be encoded carries out LDPC coding, and female code code word bits that coding is obtained processes, and obtains code word bits waiting for transmission.

For making the object, technical solutions and advantages of the present invention clearly understand, by the following examples also with reference to accompanying drawing, the present invention is described in more detail.

Fig. 2 illustrates the flow process of the coded method of LDPC code provided by the invention, as in figure 2 it is shown, described method comprises the steps:

S201, receives the uniform based matrix of the LDPC code of the fixed size that user determinesWith spreading factor z;

In this step, user can determine one according to the actual requirements and be sized to mb×nbUniform based matrixWith largest extension factor zmax, wherein mb、nb、zmaxFor positive integer, make kb=nb-mb, then obtainThe female code code check supported is Rm=(nb-mb)/nb=kb/nb; And determine spreading factor z according to digital communication system coding code length in the transmission, and usually, realizing for the ease of hardware, spreading factor z is generally the positive integer times of the power of 2 or the power of 2.

S202, receives current transmission code check Rtx, compare RtxAnd RmSize, according to comparative result, it is determined that input information block bit length K ';

In this step, work as Rtx≥RmTime, then the length K'=k of information block bitb× z=(nb-mb) × z; Work as Rtx< RmTime, then encode the m of generationbThe check bit of × z all can be transmitted, and therefore the length K ' of information block bit can by check bit length mb× z and transmission code rate RtxDetermine, therefore K ', mb× z and RtxRelation can be, but not limited to represent by below equation: K &prime; K &prime; + m b &times; z = R t x , Or K &prime; + m b &times; z = f u n c ( m b &times; z 1 - R t x ) , OrTherefore, K ' can be, but not limited to equation below and represents: K'=func (mb×z×Rtx/(1-Rtx)) or K'=func (mb×z/(1-Rtx))-mb× z or K'=func (func (mb×z/(1-Rtx))×Rtx); Wherein func (x) can represent the one of x is rounded up number, downward round numbers or round numbers of rounding off.

S203, according to spreading factor z andDetermine the encoder matrix H of LDPC codebz;

In this step, first with above-mentioned correction algorithm and z pairIt is modified, obtains revised basis matrixAccording toExtend with the unit matrix of z and z × z and obtain (mb×z)×(nb× z) LDPC matrixBoth can be by the present inventionEncoder matrix H as LDPC codebz, it is also possible to according to RtxAnd RmComparative result, rightIntercept, obtain the encoder matrix H of LDPC codebz

S204, by the information block bit that the length received is K ', it is determined that information bit to be encoded;

Specifically, according to encoder matrix HbzSize and RtxAnd RmComparative result, information block bit is processed, obtains information bit to be encoded.

S205, by encoder matrix HbzInformation bit to be encoded is carried out LDPC coding, obtains female code code word bits, female code code word bits is processed, obtains code word bits waiting for transmission.

Specifically, according to transmission code rate RtxMay determine that the length of code word bits waiting for transmission, the length according to the code word bits waiting for transmission determined, female code code word is reset, shortens or punctured obtain code word bits waiting for transmission.

What Fig. 3 illustrated the embodiment one of the coded method of LDPC code provided by the invention realizes flow process, as it is shown on figure 3, described method comprises the steps:

S301~S302, receives the uniform based matrix of the LDPC code of the fixed size that user determinesWith largest extension factor zmax, and determine spreading factor z according to required coding code length, then perform S305;

In this step, user can determine one according to the actual requirements and be sized to mb×nbUniform based matrixWith largest extension factor zmax, wherein mb、nb、zmaxFor positive integer, make kb=nb-mb, then obtainThe female code code check supported is Rm=(nb-mb)/nb=kb/nb; And determine spreading factor z according to the coding code length that digital communication system is required in the transmission, and usually, realizing for the ease of hardware, spreading factor z is generally the positive integer times of the power of 2 or the power of 2.

S303~S304, receives current transmission code check Rtx, compare RtxAnd RmSize, according to comparative result, it is determined that input information block bit length K ';

In this step, work as Rtx≥RmTime, then the length K'=k of information block bitb× z=(nb-mb) × z; Work as Rtx< RmTime, then encode the m of generationbThe check bit of × z all can be transmitted, and therefore the length K ' of information block bit can by check bit length mb× z and transmission code rate RtxDetermine, therefore K ', mb× z and RtxRelation can be, but not limited to represent by below equation: K &prime; K &prime; + m b &times; z = R t x , Or K &prime; + m b &times; z = f u n c ( m b &times; z 1 - R t x ) , OrTherefore, K ' can be, but not limited to equation below and represents: K'=func (mb×z×Rtx/(1-Rtx)) or K'=func (mb×z/(1-Rtx))-mb× z or K'=func (func (mb×z/(1-Rtx))×Rtx); Wherein func (x) can represent the one of x is rounded up number, downward round numbers or round numbers of rounding off.

S305, to uniform based matrixIt is modified, utilizes z extension to obtain the encoder matrix H of LDPC codebz, then perform S308;

In this step, first with above-mentioned correction algorithm and z pairIt is modified, obtains revised basis matrixAccording toExtend with the unit matrix of z and z × z and obtain (mb×z)×(nb× z) LDPC matrixAnd by matrixEncoder matrix H as LDPC codebz

S306~S307, by the information block bit that the length received is K ', it is determined that information bit to be encoded;

Specifically, R is worked astx≥RmTime, by information block bit that the length of reception is K ' directly as information bit to be encoded; Work as Rtx< RmTime, in the information block bit that length is K ', add filling bit, forming length is kbThe information bit to be encoded of × z, wherein add the method for filling bit can be before information block bit, below or the mode such as alternate, the length of filling bit is kb× z-K', it addition, in order to subsequent treatment is convenient, the k of fillingb× z-K' bit is preferably full 0 bit, it is also possible to for complete 1 bit.

S308~S309, by (mb×z)×(nb× z) encoder matrix HbzInformation bit to be encoded is carried out LDPC coding, obtains female code code word bits, female code code word bits is processed, obtains code word bits waiting for transmission.

Specifically, by encoder matrix HbzLDPC coding, obtaining female code bit lengths is N=nb× z, the wherein front k of female code code word bitsb× z bit is systematic bits, rear mb× z bit is check bit.

In order to improve the reliability of codeword transmission, it is possible to first the female code code word bits obtained is carried out code word rearrangement, it is assumed that the female code code word bits before rearrangement is A0,A1,…,Anb×z-1, the female code code word bits after code word rearrangement is B0,B1,…,Bnb×z-1, then code word is reset and is represented by equation below:

Wherein, PV represents that code word resets vector, and PV includes mbIndividual different element, its element set is { nb-mb,nb-mb+1,nb-mb+2,…,nb-1}, and each element is different, and PV (x) represents that in PV vector, index is the element of x, and wherein x is nonnegative integer.

Work as Rtx≥RmTime, carry out punctured operation, namely the female code code word bits B obtained after rearrangement0,B1,…,Bnb×z-1Func (K'/R is taken from small to large successively according to indextx) individual bit, as code word bits waiting for transmission, wherein func (x) can represent the one of x is rounded up number, downward round numbers or round numbers of rounding off, and specifically according to actual applicable cases, func (x) can select suitable operation.

Work as Rtx< RmTime, carry out shortening operation, the k that will add in S304bFemale code code word bits B that × z-K' filling bit obtains after rearrangement0,B1,…,Bnb×z-1In systematic bits in delete (for the carrying out of deletion action herein, being therefore preferably filled with bit in S304 is full 0 or complete 1 bit), remaining female code code word bits is as code word bits waiting for transmission.

Below in conjunction with example, the embodiment one of the coded method of LDPC code is specifically described:

Example one:

1, the uniform based matrix of the LDPC code of 4 × 24 that user determines is receivedWith largest extension factor zmax, wherein zmax=96,As follows:

1 25 55 - 1 47 4 - 1 91 84 8 86 52 82 33 5 0 36 20 4 77 80 0 - 1 - 1 - 1 6 - 1 36 40 47 12 79 47 - 1 41 21 12 71 14 72 0 44 49 0 0 0 0 - 1 51 81 83 4 67 - 1 21 - 1 31 24 91 61 81 9 86 78 60 88 67 15 - 1 - 1 0 0 68 - 1 50 15 - 1 36 13 10 11 20 53 90 29 92 57 30 84 92 11 66 80 - 1 - 1 0

M can be drawnb=4, nb=24, kb=nb-mb=24-4=20,The female code code check supported is Rm=(nb-mb)/nb=kb/nb=20/24=5/6=0.833, separately for the ease of the coding code length of realization and actual demand, it is determined that spreading factor z=3 × 25=96.

2, current transmission code rate R is receivedtx=0.78, compare RtxAnd RmSize, due to 0.78 < 0.833, therefore can pass through K'=ceil (mb×z/(1-Rtx))-mb× z, trying to achieve K ' is 1362, and wherein ceil (x) represents number that x is rounded up.

3, unified basis matrix is revised by rounding (scale+floor) algorithm and spreading factor zObtain revised basis matrixAs follows:

1 25 55 - 1 47 4 - 1 91 84 8 86 52 82 33 5 0 36 20 4 77 80 0 - 1 - 1 - 1 6 - 1 36 40 47 12 79 47 - 1 41 21 12 71 14 72 0 44 49 0 0 0 0 - 1 51 81 83 4 67 - 1 21 - 1 31 24 91 61 81 9 86 78 60 88 67 15 - 1 - 1 0 0 68 - 1 50 15 - 1 36 13 10 11 20 53 90 29 92 57 30 84 92 11 66 80 - 1 - 1 0

According toThe LDPC matrix obtaining (4 × 96) × (24 × 96) is extended with the unit matrix of z=96 and z × zAnd by matrixEncoder matrix H as LDPC codebz

4, the information block bit that length is K ' is received, due to 0.78 < 0.833, i.e. Rtx< Rm, it is k by lengthb× z-K'=558 full 0 bit padding is before the information block bit that length is K ', and obtaining length is kbThe information bit to be encoded of × z=1920.

5, by the H of (4 × 96) × (24 × 96)bzIt is k to lengthbThe information bit to be encoded of × z=1920 carries out LDPC coding, and obtaining length is N=nbFemale code code word bits of × z=2304, wherein front 1920 bits are systematic bits, and rear 384 bits are check bit.

Female code code word bits is carried out code word rearrangement, it is assumed that the female code code word bits before rearrangement is A0,A1,…,A2303, the female code code word bits after code word rearrangement is B0,B1,…,B2303, then code word is reset and is represented by equation below:

Wherein, PV represents that code word resets vector, PV={20,21,22,23}.Again due to 0.78 < 0.833, i.e. Rtx< Rm, by 558 the full 0 bits being filled in 4 before information block bit from female code code word bits B of obtaining after resetting0,B1,…,B2303In systematic bits in delete, remaining female code code word bits B558,B559..., B2303As code word bits waiting for transmission.

Example two:

1, the uniform based matrix of the LDPC code of 4 × 24 that user determines is receivedWith largest extension factor zmax, wherein zmax=96,As follows:

1 25 55 - 1 47 4 - 1 91 84 8 86 52 82 33 5 0 36 20 4 77 80 0 - 1 - 1 - 1 6 - 1 36 40 47 12 79 47 - 1 41 21 12 71 14 72 0 44 49 0 0 0 0 - 1 51 81 83 4 67 - 1 21 - 1 31 24 91 61 81 9 86 78 60 88 67 15 - 1 - 1 0 0 68 - 1 50 15 - 1 36 13 10 11 20 53 90 29 92 57 30 84 92 11 66 80 - 1 - 1 0

M can be obtainedb=4, nb=24, kb=nb-mb=24-4=20,The female code code check supported is Rm=(nb-mb)/nb=kb/nb=20/24=5/6=0.833, separately for the ease of realizing, it is determined that spreading factor z=26=64.

2, current transmission code rate R is receivedtx=0.875, compare RtxAnd RmSize, due to 0.875 > 0.833, therefore information block length K'=kb× z=1280.

3, unified basis matrix is revised by rounding (scale+floor) algorithm and spreading factor zObtain revised basis matrixAs follows:

0 16 36 - 1 31 2 - 1 60 56 5 57 34 54 22 3 0 24 13 2 51 53 0 - 1 - 1 - 1 4 - 1 24 26 31 8 52 31 - 1 27 14 8 47 9 48 0 29 32 0 0 0 0 - 1 34 54 55 2 44 - 1 14 - 1 20 16 60 40 54 6 57 52 40 58 44 10 - 1 - 1 0 0 45 - 1 33 10 - 1 24 8 6 7 13 35 60 19 61 38 20 56 61 7 44 53 - 1 - 1 0

According toThe LDPC matrix obtaining (4 × 64) × (24 × 64) is extended with the unit matrix of z=64 and z × zAnd by matrixEncoder matrix H as LDPC codebz

4, the information block bit that length is K '=1280 is received, due to 0.875 > 0.833, it is K'=k by lengthb× z=1280 information block bit is directly as information bit to be encoded.

5, by the H of (4 × 64) × (24 × 64)bzIt is K'=k to lengthbThe information bit to be encoded of × z=1280 carries out LDPC coding, and obtaining length is N=nbFemale code code word bits of × z=1536, wherein front 1280 bits are systematic bits, and rear 256 bits are check bit.

Female code code word bits is carried out code word rearrangement, it is assumed that the female code code word bits before rearrangement is A0,A1,…,A1535, the female code code word bits after code word rearrangement is B0,B1,…,B1535, then code word is reset and is represented by equation below:

Wherein, PV represents that code word resets vector, PV={20,21,22,23}. Again due to 0.875 > 0.833, belong to Rtx≥Rm, the female code code word bits B obtained will be reset0,B1,…,B1535Floor (K'/R is taken from small to large successively according to indextx)=1462 bit, namely B0,B1,…,B1461As code word bits waiting for transmission, wherein, floor (x) represents the downward round numbers of x.

What Fig. 4 illustrated the embodiment two of the coded method of LDPC code provided by the invention realizes flow process, and as shown in Figure 4, described method comprises the steps:

S401~S402, receives the uniform based matrix of the LDPC code of the fixed size that user determinesWith largest extension factor zmax, and determine spreading factor z according to required coding code length;

In this step, user can determine one according to the actual requirements and be sized to mb×nbUniform based matrixWith largest extension factor zmax, wherein mb、nb、zmaxFor positive integer, make kb=nb-mb, then obtainThe female code code check supported is Rm=(nb-mb)/nb=kb/nb; And determine spreading factor z according to digital communication system coding code length in the transmission, and usually, realizing for the ease of hardware, spreading factor z is generally the positive integer times of the power of 2 or the power of 2.

S403, receives current transmission code check Rtx, then perform S404 and S405 respectively.

S404, compares RtxAnd RmSize, according to comparative result, it is determined that input information block bit length K ', then perform S406;

In this step, work as Rtx≥RmTime, then the length K'=k of information block bitb× z=(nb-mb) × z; Work as Rtx< RmTime, then encode the m of generationbThe check bit of × z all can be transmitted, and therefore information block length K ' can by check bit length mb× z and transmission code rate RtxDetermine, therefore K ', mb× z and RtxRelation can be, but not limited to represent by below equation: K &prime; K &prime; + m b &times; z = R t x , Or K &prime; + m b &times; z = f u n c ( m b &times; z 1 - R t x ) , OrTherefore, K ' can be, but not limited to equation below and represents: K'=func (mb×z×Rtx/(1-Rtx)) or K'=func (mb×z/(1-Rtx))-mb× z or K'=func (func (mb×z/(1-Rtx))×Rtx);Wherein func (x) can represent the one of x is rounded up number, downward round numbers or round numbers of rounding off.

S405, to uniform based matrixIt is modified, it is determined that the encoder matrix H of LDPC codebz, then perform S407;

In this step, first with above-mentioned correction algorithm and z pairIt is modified, obtains revised basis matrixAccording toExtend with the unit matrix of z and z × z and obtain (mb×z)×(nb× z) LDPC extended matrix

Work as Rtx≥RmTime, then by extended matrixEncoder matrix H as LDPC codebz; Work as Rtx< RmTime, by interceptingFunc (the m on the rightb×z/(1-Rtx)) row, it is sized to (mb×z)×func(mb×z/(1-Rtx)) encoder matrix Hbz. AgainTherefore, the encoder matrix H of now LDPC codebzBe sized to (mb×z)×(K'+mb×z)。

It addition, work asDuring for positive integer, to uniform based matrix in this stepIt is modified obtainingAfter, it is also possible to according to RtxAnd RmComparative result, to revised basis matrixAfter processing, utilize spreading factor z to be extended, obtain the encoder matrix H of LDPC codebz

Specifically, R is worked astx≥RmTime, to revised basis matrixIt is extended, obtains encoder matrix Hbz, concrete and said method obtains encoder matrix HbzProcess identical, repeat no more;

Work as Rtx< RmTime, by interceptingThe k ' on the rightb+mbRow, obtain being sized to mb×(k′b+mb) matrixAccording toWith spreading factor z, extension obtains (mb×z)×((k′b+mb) × z) the encoder matrix H of LDPC codebz. Again in S403, work as Rtx< RmTime,AgainFor positive integer, therefore can obtain, k b &prime; + m b = m b 1 - R t x , Namely ( k b &prime; + m b ) &times; z = f u n c ( m b &times; z 1 - R t x ) = K &prime; + m b &times; z , So time, the encoder matrix H of the LDPC code obtainedbzSize be also (mb×z)×(K'+mb×z)。

S406, receives the information block bit that length is K ', and by information block bit directly as information bit to be encoded;

S407~S408, by encoder matrix HbzInformation bit to be encoded is carried out LDPC coding, obtains female code code word bits, female code code word bits is processed, obtains code word bits waiting for transmission.

Specifically, R is worked astx≥RmTime, by being sized to (mb×z)×(nb× z) the encoder matrix matrix H of LDPC codebzInformation bit to be encoded is carried out LDPC coding, and the length of the female code code word bits obtained is N=K'+mb× z=nb× z, wherein front K' the bit of female code code word bits is systematic bits, rear mb× z bit is check bit, and wherein, information bit length to be encoded is K'=kb× z=(nb-mb)×z。

In order to improve the reliability of codeword transmission, first the female code code word bits obtained is carried out code word rearrangement, it is assumed that the female code code word bits before rearrangement isFemale code code word bits after code word rearrangement isThen code word is reset and is represented by equation below:

Wherein,PV represents that code word resets vector, and PV comprises mbIndividual different element, its element set isAnd each element is different, PV (x) represents that in PV vector, index is the element of x, and wherein x is nonnegative integer.

Work as Rtx≥RmTime, carry out punctured operation, namely the female code code word bits obtained after rearrangementFunc (K'/R is taken from small to large successively according to indextx) individual bit, as code word bits waiting for transmission, namelyFor code word bits waiting for transmission. Wherein func (x) can represent the one of x is rounded up number, downward round numbers or round numbers of rounding off, and specifically according to actual applicable cases, func (x) can select suitable operation.

Work as Rtx< RmTime, owing to S403 obtaining encoder matrix HbzProcess has been carried out intercept operation, therefore the female code code word bits that can obtain after resettingAs code word bits waiting for transmission.

Below in conjunction with example, the embodiment two of the coded method of LDPC code is specifically described:

Example three:

1, the uniform based matrix of the LDPC code of 6 × 24 that user determines is receivedWith largest extension factor zmax, wherein zmax=96,As follows:

6 38 3 93 - 1 - 1 - 1 30 70 - 1 86 - 1 37 38 4 11 - 1 46 48 0 - 1 - 1 - 1 - 1 62 94 19 84 - 1 92 78 - 1 15 - 1 - 1 92 - 1 45 24 32 30 - 1 - 1 0 0 - 1 - 1 - 1 71 - 1 55 - 1 12 66 45 79 - 1 78 - 1 - 1 10 - 1 22 55 70 82 - 1 - 1 0 0 - 1 - 1 38 61 - 1 66 9 73 47 64 - 1 39 61 43 - 1 - 1 - 1 - 1 95 32 0 - 1 - 1 0 0 - 1 - 1 - 1 - 1 - 1 32 52 55 80 95 22 6 51 24 90 44 20 - 1 - 1 - 1 - 1 - 1 - 1 0 0 - 1 63 31 88 20 - 1 - 1 - 1 6 40 56 16 71 53 - 1 - 1 27 26 48 - 1 - 1 - 1 - 1 0

M can be drawnb=6, nb=24, kb=nb-mb=24-6=18,The female code code check supported is Rm=(nb-mb)/nb=kb/nb=18/24=3/4=0.75, separately for the ease of the coding code length of realization and actual demand, it is determined that spreading factor z=3 × 25=96.

2, current transmission code rate R is receivedtx=0.9, compare RtxAnd RmSize, due to 0.9 > 0.75, therefore information block length K'=kb× z=1728.

3, unified basis matrix is revised by rounding (scale+floor) algorithm and spreading factor zObtain revised basis matrixAs follows:

6 38 3 93 - 1 - 1 - 1 30 70 - 1 86 - 1 37 38 4 11 - 1 46 48 0 - 1 - 1 - 1 - 1 62 94 19 84 - 1 92 78 - 1 15 - 1 - 1 92 - 1 45 24 32 30 - 1 - 1 0 0 - 1 - 1 - 1 71 - 1 55 - 1 12 66 45 79 - 1 78 - 1 - 1 10 - 1 22 55 70 82 - 1 - 1 0 0 - 1 - 1 38 61 - 1 66 9 73 47 64 - 1 39 61 43 - 1 - 1 - 1 - 1 95 32 0 - 1 - 1 0 0 - 1 - 1 - 1 - 1 - 1 32 52 55 80 95 22 6 51 24 90 44 20 - 1 - 1 - 1 - 1 - 1 - 1 0 0 - 1 63 31 88 20 - 1 - 1 - 1 6 40 56 16 71 53 - 1 - 1 27 26 48 - 1 - 1 - 1 - 1 0

According toThe LDPC matrix obtaining (6 × 96) × (24 × 96) is extended with the unit matrix of z=96 and z × zAgain 0.9 > 0.75, then by matrixEncoder matrix H as LDPC codebz

4, receive the information block bit that length is K '=1728, and be K'=k by lengthb× z=1728 information block bit is directly as information bit to be encoded.

5, by the H of (6 × 96) × (24 × 96)bzIt is K'=k to lengthbThe information bit to be encoded of × z=1728 carries out LDPC coding, and obtaining length is N=K'+mb× z=nbFemale code code word bits of × z=2304, wherein front 1728 bits are systematic bits, and rear 576 bits are check bit.

Female code code word bits is carried out code word rearrangement, it is assumed that the female code code word bits before rearrangement is A0,A1,…,A2303, the female code code word bits after code word rearrangement is B0,B1,…,B2303, then code word is reset and is represented by equation below:

Wherein,PV represents that code word resets vector, PV={18,19,20,21,22,23}. Again due to 0.9 > 0.75, belong to Rtx≥Rm, the female code code word bits B obtained will be reset0,B1,…,B2303Ceil (K'/R is taken from small to large successively according to indextx)=1920 bit, namely B0,B1,…,B1919As code word bits waiting for transmission, wherein, ceil (x) represents number that x is rounded up.

Example four:

1, the uniform based matrix of the LDPC code of 6 × 24 that user determines is receivedWith largest extension factor zmax, wherein zmax=96,As follows:

6 38 3 93 - 1 - 1 - 1 30 70 - 1 86 - 1 37 38 4 11 - 1 46 48 0 - 1 - 1 - 1 - 1 62 94 19 84 - 1 92 78 - 1 15 - 1 - 1 92 - 1 45 24 32 30 - 1 - 1 0 0 - 1 - 1 - 1 71 - 1 55 - 1 12 66 45 79 - 1 78 - 1 - 1 10 - 1 22 55 70 82 - 1 - 1 0 0 - 1 - 1 38 61 - 1 66 9 73 47 64 - 1 39 61 43 - 1 - 1 - 1 - 1 95 32 0 - 1 - 1 0 0 - 1 - 1 - 1 - 1 - 1 32 52 55 80 95 22 6 51 24 90 44 20 - 1 - 1 - 1 - 1 - 1 - 1 0 0 - 1 63 31 88 20 - 1 - 1 - 1 6 40 56 16 71 53 - 1 - 1 27 26 48 - 1 - 1 - 1 - 1 0

M can be drawnb=6, nb=24, kb=nb-mb=24-6=18,The female code code check supported is Rm=(nb-mb)/nb=kb/nb=18/24=3/4=0.75, separately for the ease of the coding code length of realization and actual demand, it is determined that spreading factor z=26=64.

2, current transmission code rate R is receivedtx=0.6, compare RtxAnd RmSize, due to 0.6 < 0.75, therefore can pass through K'=ceil (mb×z/(1-Rtx))-mb× z, trying to achieve K ' is 576, and wherein ceil (x) represents number that x is rounded up.

3, unified basis matrix is revised by rounding (scale+floor) algorithm and spreading factor zObtain revised basis matrixAs follows:

4 25 2 62 - 1 - 1 - 1 20 46 - 1 57 - 1 24 25 2 7 - 1 30 32 0 - 1 - 1 - 1 - 1 41 62 12 56 - 1 61 52 - 1 10 - 1 - 1 61 - 1 30 16 21 20 - 1 - 1 0 0 - 1 - 1 - 1 47 - 1 36 - 1 8 44 30 52 - 1 52 - 1 - 1 6 - 1 14 36 46 54 - 1 - 1 0 0 - 1 - 1 25 40 - 1 44 6 48 31 42 - 1 26 40 28 - 1 - 1 - 1 - 1 63 21 0 - 1 - 1 0 0 - 1 - 1 - 1 - 1 - 1 21 34 36 53 63 14 4 34 16 60 29 13 - 1 - 1 - 1 - 1 - 1 - 1 0 0 - 1 42 20 58 13 - 1 - 1 - 1 4 26 37 10 47 35 - 1 - 1 18 17 32 - 1 - 1 - 1 - 1 0

According toThe LDPC matrix obtaining (6 × 64) × (24 × 64) is extended with the unit matrix of z=64 and z × zAgain due to 0.6 < 0.75, therefore interceptCeil (the m on the rightb×z/(1-Rtx))=960 row, it is sized to the encoder matrix H of (6 × 64) × 960bz

It addition, this step can also so process: obtain revised basis matrixAgain due to 0.6 < 0.75,InterceptThe k ' on the rightb+mb=9+6=15 arranges, and obtains being sized to the matrix of 6 × (9+6)According toThe LDPC encoder matrix H obtaining (6 × 64) × (15 × 64) is extended with the unit matrix of z=64 and z × zbz

4, the information block bit that length is K ' is received, and by information block bit that length is K'=576 directly as information bit to be encoded.

5, by the H of (6 × 64) × (15 × 64)bzBeing that the information bit to be encoded of K'=576 carries out LDPC coding to length, obtaining length is N=K'+mb× z=nbFemale code code word bits of × z=960, wherein front 576 bits are systematic bits, and rear 384 bits are check bit.

Female code code word bits is carried out code word rearrangement, it is assumed that the female code code word bits before rearrangement is A0,A1,…,A959, the female code code word bits after code word rearrangement is B0,B1,…,B959, then code word is reset and is represented by equation below:

Wherein,PV represents that code word resets vector, PV={9,10,11,12,13,14}.Again due to 0.6 < 0.75, i.e. Rtx< Rm, in 3, obtaining encoder matrix HbzProcess has been carried out intercept operation, therefore the female code code word bits B that can obtain after resetting0,B1,…,B959As code word bits waiting for transmission.

Fig. 5 illustrates the structure of the code device of LDPC code provided by the invention, as it is shown in figure 5, described device includes: coding unit 10, comparing unit 20, packet bit determine that unit 30, encoder matrix determine that unit 40, information bit determine unit 50 and code word processing unit 60; Wherein, the size of the comparing unit 20 female code code check with transmission code rate for comparing the support of uniform based matrix; Packet bit determines that unit 30 is for the comparative result according to comparing unit, it is determined that the length K ' of input information block bit; Encoder matrix determines that unit 40 for determining the encoder matrix of LDPC code according to uniform based matrix and spreading factor; Information bit determines that unit 50 is for receiving the information bit of input, the information block bit length that unit 30 is determined is determined according to packet bit, obtain the information block bit that length is K ', and determine information bit to be encoded, and be transmitted to coding unit 10; Female code code word that code word processing unit 60 obtains for coding unit 10 carries out LDPC coding processes, and obtains code word bits waiting for transmission.

Further, described device also includes arranging unit 70, for arranging uniform based matrix and the spreading factor of LDPC code.

Further, described device also includes input block 80, for receiving current transmission code rate; Packet bit determines that unit 30 is specifically for being R when the comparative result of comparing unit 20tx≥RmTime, it is determined that the length K ' of information block bit is (nb-mb) × z; When the comparative result of comparing unit 20 is Rtx< RmTime, it is determined that the length of information block bit is K'=func (mb×z×Rtx/(1-Rtx)) or K'=func (mb×z/(1-Rtx))-mb× z or K'=func (func (mb×z/(1-Rtx))×Rtx); Wherein, RtxFor transmission code rate, RmFor female code code check, mb、nbThe respectively line number of uniform based matrix and columns, z is spreading factor, and func (x) is the one of number, downward round numbers or round numbers of rounding off that x is rounded up.

Further, encoder matrix determines that unit 40 is specifically for being modified described uniform based matrix, according to spreading factor z, utilizes the unit matrix of z × z to be extended revising the basis matrix obtained, obtains the encoder matrix of LDPC code.

Correspondingly, information bit determines that unit 50 is specifically for being R when the comparative result of comparing unit 20tx≥RmTime, by the information block bit that length is K ' that receives directly as information bit to be encoded; When the comparative result of comparing unit 20 is Rtx< RmTime, in the information block bit that length is K ', add filling bit, forming length is kbThe information bit to be encoded of × z, wherein filling bit is full 0 bit or complete 1 bit.

Correspondingly, code word processing unit 60 is reset specifically for female code code word that coding unit 10 coding is obtained, and the female code code word bits before wherein resetting is A0,A1,…,Anb×z-1, the female code code word bits after rearrangement is B0,B1,…,Bnb×z-1, rearrangement formulae is:Wherein, kb=nb-mb, PV represents that code word resets vector, and its element set is { nb-mb,nb-mb+1,nb-mb+ 2 ..., nb-1}, PV (x) represent that in PV vector, index is the element of x, and x is nonnegative integer; When the comparative result of comparing unit 20 is Rtx≥RmTime, the female code code word bits B after rearrangement0,B1,…,Bnb×z-1Func (K'/R is taken from small to large successively according to indextx) individual bit, as code word bits waiting for transmission;When the comparative result of comparing unit 20 is Rtx< RmTime, the described k that will addb× z-K' filling bit is from the female code code word bits B after resetting0,B1,…,Bnb×z-1In systematic bits in delete, remaining female code code word bits is as code word bits waiting for transmission.

Further, encoder matrix determines that unit 40 is specifically for being modified uniform based matrix, according to spreading factor z, utilizes the unit matrix of z × z to be extended revising the basis matrix obtained, obtains the extended matrix of LDPC code; When the comparative result of comparing unit 20 is Rtx≥RmTime, using the extended matrix encoder matrix as LDPC code; When the comparative result of comparing unit is Rtx< RmTime, intercept the func (m on the right of extended matrixb×z/(1-Rtx)) row, the matrix that the obtains encoder matrix as LDPC code will be intercepted; OrDuring for positive integer, uniform based matrix is modified, obtains revised basis matrix; When the comparative result of comparing unit 20 is Rtx≥RmTime, according to spreading factor z, utilize the unit matrix of z × z to be extended revising the basis matrix obtained, obtain the encoder matrix of LDPC code; When the comparative result of comparing unit 20 is Rtx< RmTime, intercept the k ' on the right of revised basis matrixb+mbRow, according to spreading factor z, utilize the unit matrix of z × z to be extended intercepting the matrix obtained, obtain the encoder matrix of LDPC code.

Correspondingly, information bit determine unit 50 specifically for the information block bit that length is K ' that will receive directly as information bit to be encoded.

Correspondingly, code word processing unit 60 is reset specifically for female code code word that coding unit 10 is obtained, and the female code code word bits before wherein resetting isFemale code code word bits after rearrangement isRearrangement formulae is:

Wherein,PV represents that code word resets vector, and its element set isPV (x) represents that in PV vector, index is the element of x, and x is nonnegative integer; When the comparative result of comparing unit 20 is Rtx≥RmTime, the female code code word bits after rearrangementFunc (K'/R is taken from small to large successively according to indextx) individual bit, as code word bits waiting for transmission; When the comparative result of comparing unit 20 is Rtx< RmTime, directly by from reset after female code code word bitsAs code word bits waiting for transmission.

Another it is to be appreciated that coding is mutually corresponding with decoding, the therefore coded method of LDPC code provided by the invention and device, its coding/decoding method also has corresponding inverse operation with decoding device, repeats no more.

The above, be only presently preferred embodiments of the present invention, is not intended to limit protection scope of the present invention.

Claims (18)

1. the coded method of a low-density checksum LDPC code, it is characterised in that described method comprises the steps:
Compare female code code check of uniform based matrix support and the size of transmission code rate, according to comparative result, it is determined that the length K ' of input information block bit: work as Rtx≥RmTime, it is determined that the length K ' of information block bit is (nb-mb) × z; Work as Rtx<RmTime, it is determined that the length of information block bit is K'=func (mb×z×Rtx/(1-Rtx)) or K'=func (mb×z/(1-Rtx))-mb× z or K'=func (func (mb×z/(1-Rtx))×Rtx); Wherein, RtxFor transmission code rate, RmFor female code code check, mb、nbThe respectively line number of uniform based matrix and columns, z is spreading factor, and func (x) is the one of number, downward round numbers or round numbers of rounding off that x is rounded up;
The encoder matrix of LDPC code is determined according to uniform based matrix and spreading factor;
By the information block bit that the length received is K ', it is determined that information bit to be encoded;
Utilize described encoder matrix that information bit to be encoded carries out LDPC coding, and female code code word bits that coding is obtained processes, and obtains code word bits waiting for transmission.
2. method according to claim 1, it is characterised in that described method also includes: uniform based matrix and the spreading factor of LDPC code are set.
3. method according to claim 1 and 2, it is characterised in that also include before the size of the described female code code check comparing uniform based matrix support and transmission code rate: receive current transmission code rate.
4. method according to claim 1 and 2, it is characterised in that described according to uniform based matrix and spreading factor, it is determined that the encoder matrix of LDPC code is:
Uniform based matrix is modified, according to spreading factor z, utilizes the unit matrix of z × z to be extended revising the basis matrix obtained, obtain the encoder matrix of LDPC code.
5. method according to claim 4, it is characterised in that described by the information block bit that the length received is K ', it is determined that information bit to be encoded is:
Work as Rtx≥RmTime, by the information block bit that length is K ' that receives directly as information bit to be encoded; Work as Rtx<RmTime, in the information block bit that length is K ', add filling bit, forming length is kbThe information bit to be encoded of × z; kb=nb-mb
6. method according to claim 5, it is characterised in that described female code code word bits that coding is obtained carries out process and is:
Female code code word that coding is obtained is reset, and the female code code word bits before wherein resetting is A0,A1,…,Anb×z-1, the female code code word bits after rearrangement is B0,B1,…,Bnb×z-1, rearrangement formulae is:
Wherein, kb=nb-mb, PV represents that code word resets vector, and its element set is { nb-mb,nb-mb+1,nb-mb+2,…,nb-1}, PV (x) represent that in PV vector, index is the element of x, and x is nonnegative integer;
Work as Rtx≥RmTime, the female code code word bits B after rearrangement0,B1,…,Bnb×z-1Func (K'/R is taken from small to large successively according to indextx) individual bit, as code word bits waiting for transmission;
Work as Rtx<RmTime, the described k that will addb× z-K' filling bit is from the female code code word bits B after resetting0,B1,…,Bnb×z-1In systematic bits in delete, remaining female code code word bits is as code word bits waiting for transmission.
7. method according to claim 3, it is characterised in that described determine LDPC code encoder matrix be:
Uniform based matrix is modified, according to spreading factor z, utilizes the unit matrix of z × z to be extended revising the basis matrix obtained, obtain the extended matrix of LDPC code;
Work as Rtx≥RmTime, using the extended matrix encoder matrix as LDPC code; Work as Rtx<RmTime, intercept the func (m on the right of extended matrixb×z/(1-Rtx)) row, the matrix that the obtains encoder matrix as LDPC code will be intercepted; Or,
WhenDuring for positive integer, uniform based matrix is modified, obtains revised basis matrix;
Work as Rtx≥RmTime, according to spreading factor z, utilize the unit matrix of z × z to be extended revising the basis matrix obtained, obtain the encoder matrix of LDPC code; Work as Rtx<RmTime, intercept the k ' on the right of revised basis matrixb+mbRow, according to spreading factor z, utilize the unit matrix of z × z to be extended intercepting the matrix obtained, obtain the encoder matrix of LDPC code.
8. method according to claim 7, it is characterised in that described by the information block bit that the length received is K ', it is determined that information bit to be encoded is: by information block bit that length is K ' directly as information bit to be encoded.
9. method according to claim 8, it is characterised in that described female code code word bits that coding is obtained carries out process and is:
Female code code word that coding is obtained is reset, and the female code code word bits before wherein resetting isFemale code code word bits after rearrangement isRearrangement formulae is:
Wherein,PV represents that code word resets vector, and its element set isPV (x) represents that in PV vector, index is the element of x, and x is nonnegative integer, whereinRepresent number that x is rounded up;
Work as Rtx≥RmTime, the female code code word bits after rearrangementFunc (K'/R is taken from small to large successively according to indextx) individual bit, as code word bits waiting for transmission;
Work as Rtx<RmTime, directly by from reset after female code code word bitsAs code word bits waiting for transmission.
10. a code device for LDPC code, including coding unit, it is characterised in that described device also includes: comparing unit, packet bit determine that unit, encoder matrix determine that unit, information bit determine unit and code word processing unit; Wherein,
Comparing unit, the size of female code code check with transmission code rate for comparing the support of uniform based matrix;
Packet bit determines unit, for the comparative result according to comparing unit, it is determined that the length K ' of input information block bit; Wherein, described packet bit determines that unit is specifically for being R when the comparative result of comparing unittx≥RmTime, it is determined that the length K ' of information block bit is (nb-mb) × z; When the comparative result of comparing unit is Rtx<RmTime, it is determined that the length of information block bit is K'=func (mb×z×Rtx/(1-Rtx)) or K'=func (mb×z/(1-Rtx))-mb× z or K'=func (func (mb×z/(1-Rtx))×Rtx); Wherein, RtxFor transmission code rate, RmFor female code code check, mb、nbThe respectively line number of uniform based matrix and columns, z is spreading factor, and func (x) is the one of number, downward round numbers or round numbers of rounding off that x is rounded up;
Encoder matrix determines unit, for determining the encoder matrix of LDPC code according to uniform based matrix and spreading factor;
Information bit determines unit, obtains, for reception, the information block bit that length is K ', and determines information bit to be encoded, is transmitted to coding unit;
Code word processing unit, the female code code word obtained for coding unit carries out LDPC coding processes, and obtains code word bits waiting for transmission.
11. device according to claim 10, it is characterised in that described device also includes: arrange unit, for arranging uniform based matrix and the spreading factor of LDPC code.
12. the device according to claim 10 or 11, it is characterised in that described device also includes input block, for receiving current transmission code rate.
13. the device according to claim 10 or 11, it is characterized in that, described encoder matrix determines that unit is specifically for being modified described uniform based matrix, according to spreading factor z, the unit matrix utilizing z × z is extended revising the basis matrix obtained, and obtains the encoder matrix of LDPC code.
14. device according to claim 13, it is characterised in that described information bit determines that unit is specifically for being R when the comparative result of comparing unittx≥RmTime, by the information block bit that length is K ' that receives directly as information bit to be encoded; When the comparative result of comparing unit is Rtx<RmTime, in the information block bit that length is K ', add filling bit, forming length is kbThe information bit to be encoded of × z; kb=nb-mb
15. device according to claim 14, it is characterised in that described code word processing unit is reset specifically for female code code word that coding unit coding is obtained, and the female code code word bits before wherein resetting is A0,A1,…,Anb×z-1, the female code code word bits after rearrangement is B0,B1,…,Bnb×z-1, rearrangement formulae is:
Wherein, kb=nb-mb, PV represents that code word resets vector, and its element set is { nb-mb,nb-mb+1,nb-mb+2,…,nb-1}, PV (x) represent that in PV vector, index is the element of x, and x is nonnegative integer;
When the comparative result of comparing unit is Rtx≥RmTime, the female code code word bits B after rearrangement0,B1,…,Bnb×z-1Func (K'/R is taken from small to large successively according to indextx) individual bit, as code word bits waiting for transmission;
When the comparative result of comparing unit is Rtx<RmTime, the described k that will addb× z-K' filling bit is from the female code code word bits B after resetting0,B1,…,Bnb×z-1In systematic bits in delete, remaining female code code word bits is as code word bits waiting for transmission.
16. device according to claim 12, it is characterized in that, described encoder matrix determines that unit is specifically for being modified uniform based matrix, according to spreading factor z, the unit matrix utilizing z × z is extended revising the basis matrix obtained, and obtains the extended matrix of LDPC code; When the comparative result of comparing unit is Rtx≥RmTime, using the extended matrix encoder matrix as LDPC code; When the comparative result of comparing unit is Rtx<RmTime, intercept the func (m on the right of extended matrixb×z/(1-Rtx)) row, the matrix that the obtains encoder matrix as LDPC code will be intercepted; OrDuring for positive integer, uniform based matrix is modified, obtains revised basis matrix; When the comparative result of comparing unit is Rtx≥RmTime, according to spreading factor z, utilize the unit matrix of z × z to be extended revising the basis matrix obtained, obtain the encoder matrix of LDPC code; When the comparative result of comparing unit is Rtx<RmTime, intercept the k ' on the right of revised basis matrixb+mbRow, according to spreading factor z, utilize the unit matrix of z × z to be extended intercepting the matrix obtained, obtain the encoder matrix of LDPC code.
17. device according to claim 16, it is characterised in that described information bit determine unit specifically for the information block bit that length is K ' that will receive directly as information bit to be encoded.
18. device according to claim 17, it is characterised in that described code word processing unit is reset specifically for female code code word that coding unit is obtained, the female code code word bits before wherein resetting isFemale code code word bits after rearrangement isRearrangement formulae is:
Wherein,PV represents that code word resets vector, and its element set isPV (x) represents that in PV vector, index is the element of x, and x is nonnegative integer;
When the comparative result of comparing unit is Rtx≥RmTime, the female code code word bits after rearrangementFunc (K'/R is taken from small to large successively according to indextx) individual bit, as code word bits waiting for transmission;
When the comparative result of comparing unit is Rtx<RmTime, directly by from reset after female code code word bitsAs code word bits waiting for transmission.
CN201010293323.6A 2010-09-25 2010-09-25 The coded method of a kind of low density parity check code and device CN102412842B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010293323.6A CN102412842B (en) 2010-09-25 2010-09-25 The coded method of a kind of low density parity check code and device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201010293323.6A CN102412842B (en) 2010-09-25 2010-09-25 The coded method of a kind of low density parity check code and device
PCT/CN2010/079103 WO2012037749A1 (en) 2010-09-25 2010-11-25 Encoding method for low density parity check code and apparatus thereof

Publications (2)

Publication Number Publication Date
CN102412842A CN102412842A (en) 2012-04-11
CN102412842B true CN102412842B (en) 2016-06-15

Family

ID=45873399

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010293323.6A CN102412842B (en) 2010-09-25 2010-09-25 The coded method of a kind of low density parity check code and device

Country Status (2)

Country Link
CN (1) CN102412842B (en)
WO (1) WO2012037749A1 (en)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104202057B (en) * 2014-02-12 2019-08-16 中兴通讯股份有限公司 Information processing method and device
CN107404322A (en) * 2014-09-17 2017-11-28 上海数字电视国家工程研究中心有限公司 Check matrix and LDPC code word for low code rate LDPC code
CN105811996B (en) 2014-12-30 2019-12-06 华为技术有限公司 data processing method and system based on quasi-cyclic LDPC
CN106685586B (en) * 2015-11-11 2020-02-14 华为技术有限公司 Method and apparatus for generating low density parity check code for transmission in a channel
CN107370489B (en) 2016-05-13 2020-07-28 中兴通讯股份有限公司 Data processing method and device for structured L DPC code
WO2017193558A1 (en) * 2016-05-13 2017-11-16 中兴通讯股份有限公司 Data processing method and device for structured ldpc code
WO2017193614A1 (en) * 2016-05-13 2017-11-16 中兴通讯股份有限公司 Encoding method and device and decoding method and device for structured ldpc
CN107566081B (en) * 2016-06-30 2020-04-03 华为技术有限公司 RM sequence generation and application method and device
CN107888198A (en) * 2016-09-30 2018-04-06 中兴通讯股份有限公司 Quasi-cyclic LDPC coding and decoding method, device and LDPC coders
CN108134648A (en) * 2016-12-01 2018-06-08 华为技术有限公司 Notice channel transmitting method, method of reseptance and equipment
CN108234064A (en) * 2016-12-09 2018-06-29 中兴通讯股份有限公司 Quasi-cyclic LDPC code data processing equipment and processing method
CN108270448A (en) * 2017-01-04 2018-07-10 中兴通讯股份有限公司 Quasi-circulating low-density parity check coding method and device
WO2018126914A1 (en) * 2017-01-09 2018-07-12 中兴通讯股份有限公司 Method and device for coding of quasi-cyclic low-density parity-check code, and storage medium
CN108429602A (en) * 2017-02-15 2018-08-21 中兴通讯股份有限公司 A kind of data processing method, device and transmitting terminal
JP2020515125A (en) * 2017-03-03 2020-05-21 華為技術有限公司Huawei Technologies Co.,Ltd. High rate long LDPC code
WO2018171043A1 (en) * 2017-03-24 2018-09-27 中兴通讯股份有限公司 Processing method and device for quasi-cyclic low density parity check coding
WO2018201912A1 (en) * 2017-05-05 2018-11-08 电信科学技术研究院有限公司 Method and device for selecting base graph for 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
CN109120374A (en) * 2017-06-26 2019-01-01 中兴通讯股份有限公司 Quasi-circulating low-density parity check code Design method and device
CN109150194A (en) * 2017-06-27 2019-01-04 华为技术有限公司 The method, apparatus and communication equipment of information processing
WO2019029690A1 (en) * 2017-08-11 2019-02-14 华为技术有限公司 Communication method and device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1953335A (en) * 2005-10-21 2007-04-25 中兴通讯股份有限公司 A coding device and method for low density parity check code of supporting any code rate/code length
CN101217337A (en) * 2007-01-01 2008-07-09 中兴通讯股份有限公司 A low density parity code encoding device and method supporting incremental redundancy hybrid automatic repeat
CN101325474A (en) * 2007-06-12 2008-12-17 中兴通讯股份有限公司 Method for encoding channel of mixed automatic request retransmission and modulation mapping of LDPC code

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7149953B2 (en) * 2004-02-03 2006-12-12 Broadcom Corporation Efficient LDPC code decoding with new minus operator in a finite precision radix system
US7188297B2 (en) * 2004-08-12 2007-03-06 Motorola, Inc. Method and apparatus for encoding and decoding data
US7996746B2 (en) * 2004-10-12 2011-08-09 Nortel Networks Limited Structured low-density parity-check (LDPC) code
CN101567697B (en) * 2009-05-25 2012-12-12 普天信息技术研究院有限公司 Coder and method for coding rate-compatible low-density parity-check codes

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1953335A (en) * 2005-10-21 2007-04-25 中兴通讯股份有限公司 A coding device and method for low density parity check code of supporting any code rate/code length
CN101217337A (en) * 2007-01-01 2008-07-09 中兴通讯股份有限公司 A low density parity code encoding device and method supporting incremental redundancy hybrid automatic repeat
CN101325474A (en) * 2007-06-12 2008-12-17 中兴通讯股份有限公司 Method for encoding channel of mixed automatic request retransmission and modulation mapping of LDPC code

Also Published As

Publication number Publication date
WO2012037749A1 (en) 2012-03-29
CN102412842A (en) 2012-04-11

Similar Documents

Publication Publication Date Title
US20200092035A1 (en) Method and Apparatus for Encoding Data Using a Polar Code
JP5801927B2 (en) Downlink control information transmission method and codeword generation method therefor
US8578249B2 (en) LDPC encoding and decoding of packets of variable sizes
JP5219552B2 (en) Apparatus and method for encoding / decoding block low density parity check code in mobile communication system
KR100678176B1 (en) Apparatus and method for coding/decoding block low density parity check code with variable block length
JP4555333B2 (en) Apparatus and method for encoding / decoding block low density parity check code having variable coding rate
KR100739510B1 (en) Apparatus and method for coding/decoding semi-systematic block low density parity check code
CN1866751B (en) Construction method and device for low density parity codes
KR100671319B1 (en) Low-density parity-check codes for multiple code rates
EP2503698B1 (en) Error correction method and device, and communication system using the same
KR101042747B1 (en) Apparatus and method for transmitting and receiving data in a communication system using structured low density parity check
WO2017025823A1 (en) Rate-compatible polar codes
AU2005239662B2 (en) Method and apparatus for generating a low-density parity check code
US8225173B2 (en) Multi-rate LDPC code system and method
JP4519902B2 (en) Apparatus and method for encoding / decoding block low density parity check code having variable block length
US7523375B2 (en) Set of irregular LDPC codes with random structure and low encoding complexity
CN101032082B (en) Method and apparatus for encoding and decoding data
US10277249B2 (en) Method and apparatus for channel encoding and decoding in a communication system using a low-density parity check code
US9197250B2 (en) Method and apparatus for channel coding and decoding in a communication system using a low-density parity-check code
JP4820368B2 (en) Encoding and decoding method using LDPC code
CN100583651C (en) Apparatus and method for decoding using channel code
US8266512B2 (en) Method and apparatus for signal transmission/reception in a communication system using an HARQ scheme
CN101217337B (en) A low density parity code encoding device and method supporting incremental redundancy hybrid automatic repeat
US8433972B2 (en) Systems and methods for constructing the base matrix of quasi-cyclic low-density parity-check codes
KR20070042850A (en) Apparatus and method for coding/decoding block low density parity check code with variable block length

Legal Events

Date Code Title Description
PB01 Publication
C06 Publication
SE01 Entry into force of request for substantive examination
C10 Entry into substantive examination
GR01 Patent grant
C14 Grant of patent or utility model