CN106411326A - LDPC encoder of secondary full parallel input cycle left shift in DTMB - Google Patents

LDPC encoder of secondary full parallel input cycle left shift in DTMB Download PDF

Info

Publication number
CN106411326A
CN106411326A CN201610961253.4A CN201610961253A CN106411326A CN 106411326 A CN106411326 A CN 106411326A CN 201610961253 A CN201610961253 A CN 201610961253A CN 106411326 A CN106411326 A CN 106411326A
Authority
CN
China
Prior art keywords
matrix
vectorial
vector
multiplier
section
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.)
Withdrawn
Application number
CN201610961253.4A
Other languages
Chinese (zh)
Inventor
张鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
RONGCHENG DINGTONG ELECTRONIC INFORMATION TECHNOLOGY Co Ltd
Original Assignee
RONGCHENG DINGTONG ELECTRONIC INFORMATION TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by RONGCHENG DINGTONG ELECTRONIC INFORMATION TECHNOLOGY Co Ltd filed Critical RONGCHENG DINGTONG ELECTRONIC INFORMATION TECHNOLOGY Co Ltd
Priority to CN201610961253.4A priority Critical patent/CN106411326A/en
Publication of CN106411326A publication Critical patent/CN106411326A/en
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/116Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
    • H03M13/1165QC-LDPC codes as defined for the digital video broadcasting [DVB] specifications, e.g. DVB-Satellite [DVB-S2]

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Multimedia (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Complex Calculations (AREA)

Abstract

The present invention provides a LDPC encoder of secondary full parallel input cycle left shift in a DTMB. The encoder comprises a multiplier of a sparse matrix and a vector and a multiplier of a vector and a high-density matrix. The multiplier of the sparse matrix and the vector realizes the multiplication of the sparse matrix and the vector, and the multiplier of the vector and the high-density matrix employs full parallel input cycle left shift mechanism so as to realize the multiplication of the vector and the high-density matrix. The whole encoding process is divided into 2-level streamlines. The 4/5 code rate QC-LDPC (Quasi-Cyclic LDPC) encoder in the DTMB system is high in work efficiency and large in throughput, etc.

Description

The LDPC encoder of two grades of full parellel input ring shift lefts in DTMB
Technical field
The present invention relates to field of channel coding, input ring shift left particularly to two grades of full parellel in a kind of DTMB system QC-LDPC encoder.
Background technology
Low-density checksum (Low-Density Parity-Check, LDPC) code be efficient channel coding technology it One, and quasi-cyclic LDPC (Quasi-Cyclic LDPC, QC-LDPC) code is a kind of special LDPC code.The life of QC-LDPC code Become matrix G and check matrix H to be all the array being made up of circular matrix, there is stages cycle, therefore be referred to as QC-LDPC Code.The first trip of circular matrix is the result of footline ring shift right 1, and remaining each row is all the knot of its lastrow ring shift right 1 Really, therefore, circular matrix to be characterized by its first trip completely.Generally, the first trip of circular matrix is referred to as its generator polynomial.
Communication system generally adopts the QC-LDPC code of system form, and the left-half of its generator matrix G is a unit square Battle array, right half part is by e × c b × b rank circular matrix Gi,j(1≤i≤e,e<J≤t, t=e+c) array that constitutes, as follows Shown:
Wherein, I is b × b rank unit matrix, and 0 is b × b rank full null matrix.The continuous b row of G and b row are known respectively as block Row and block row.From formula (1), G has e block row and t block row.Information vector a=(a1,a2,…,ae×b).DTMB standard employs A kind of QC-LDPC code of code check η=4/5, for this code, t=59, e=48, c=11, b=127.
In DTMB standard, the existing full parellel input solution of 4/5 code check QC-LDPC encoder is as shown in figure 1, the party The major defect of case is that modulo 2 adder has e × b input, and the time delay of add operation is long, can cause the operating frequency of encoder Low, handling capacity is little.
Content of the invention
In DTMB system, the existing implementation of 4/5 code check QC-LDPC encoder has that operating frequency is low, handling capacity is little Shortcoming, for these technical problems, the invention provides a kind of QC-LDPC encoder based on two-level pipeline.
As shown in Fig. 2 the QC-LDPC encoder based on two-level pipeline is mainly made up of 2 parts in DTMB system:Sparse Matrix and vectorial multiplier and the vectorial multiplier with high-density matrix.Cataloged procedure divides 2 steps to complete:1st step, using sparse Matrix calculates vectorial s with the multiplier of vector;2nd step, calculates the vectorial p of verification using the multiplier of vector and high-density matrix.
Advantage and method with regard to the present invention can be further understood by following detailed description and accompanying drawings.
Brief description
Fig. 1 is existing full parellel input QC-LDPC encoder;
Fig. 2 is the QC-LDPC cataloged procedure based on two-level pipeline;
Fig. 3 is the multiplier of sparse matrix and vector;
Fig. 4 is a kind of vector and high-density matrix multiplier inputting ring shift left based on full parellel.
Specific embodiment
Below in conjunction with the accompanying drawings presently preferred embodiments of the present invention is elaborated, so that advantages and features of the invention can be more It is easy to be readily appreciated by one skilled in the art, thus protection scope of the present invention is made apparent clearly defining.
The row weight of circular matrix and row heavy phase are same, are denoted as w.If w=0, then this circular matrix is full null matrix.If W=1, then this circular matrix is replaceable, referred to as permutation matrix, it can be by positions some to unit matrix I ring shift right Obtain.The check matrix H of QC-LDPC code is by c × t b × b rank circular matrix Hj,k(1≤j≤c, 1≤k≤t, t=e+c) The following array constituting:
Under normal circumstances, the arbitrary circular matrix in check matrix H is full null matrix (w=0) or being displacement square Battle array (w=1).Make circular matrix Hj,kFirst trip hj,k=(hj,k,1,hj,k,2,…,hj,k,b) it is its generator polynomial, wherein hj,k,m =0 or 1 (1≤m≤b).Because H is sparse, hj,kOnly 1 ' 1 ', even without ' 1 '.
The front e block row of H are corresponding to be information vector a, and rear c block row are corresponding to be the vectorial p of verification, code word v=(a, p).With b Bit is one section, and information vector a is divided into e section, i.e. a=(a1,a2,…,ae);The vectorial p of verification is divided into c section, i.e. p= (p1,p2,…,pc).The matrix that the front e block row of H and rear c block row are constituted is denoted as C and D respectively, then
H=[C D] (3)
C is to be made up of c × e b × b rank circular matrix, and D is to be made up of c × c b × b rank circular matrix.By formula (3) and Code word v=(a, p) substitutes into HvΤ=0, arrangement can obtain
pΤΤCaΤ(4) wherein, ΦT=D–1, subscriptTWith–1Represent transposition and inverse of a matrix respectively, D must full rank. It is known that the inverse, product of circular matrix and remain circular matrix.Therefore, Φ is also the array being made up of circular matrix. But although matrix D is sparse, but Φ is generally no longer sparse but highdensity.
Make sT=CaTAnd pTTsT, then p=s Φ.Calculate the multiplication that s is related to sparse matrix and vector using C, using Φ Calculate the multiplication that p is related to vector and high-density matrix.From the above discussion, a kind of QC- based on two-level pipeline can be provided LDPC cataloged procedure, as shown in Figure 2.
Make s=(s1,s2,…,sc), then sj TIt is jth block row and a of Matrix CTProduct, that is,
Wherein, 1≤i≤e, 1≤j≤c.sjThe n-th bit sj,n(1≤n≤b) is
Wherein, subscriptrs(n–1)Withls(n–1)Represent ring shift right n 1 and ring shift left n 1 respectively.Since arbitrary circulation Matrix generator polynomial hj,iOnly a small amount of ' 1 ' even complete zero, then the inner product in formula (6) can be by posting to ring shift left The tap of storage is sued for peace and to be realized, the multiplier of sparse matrix as shown in Figure 3 and vector.Sparse matrix and vectorial multiplier By t b bit register R1,1,R1,2,…,R1,tWith c multi input XOR gate X1,1,X1,2,…,X1,cComposition.Register R1,1, R1,2,…,R1,eFor loading and ring shift left message segment a1,a2,…,ae, register R1,e+1,R1,e+2,…,R1,tFor storing s Array section s1,s2,…,sc.Partially connected in Fig. 3 depends on all circular matrix generator polynomials in Matrix C.If hj,i,m=1 (1≤m≤b), then message segment aiM bit be connected to XOR gate X1,j.Therefore, register R1,iAll take out Head is depending on the nonzero element position of all circular matrix generator polynomials in i-th piece of row of Matrix C, and multi input XOR gate X1,jInput depend on Matrix C jth block row in all circular matrix generator polynomials nonzero element position.If in C All circular matrix generator polynomials have α ' 1 ', then sparse matrix needs use (α c) individual with the multiplier of vector Two input XOR gates calculate s simultaneously1,n,s2,n,…,sc,n.S can calculate within b clock cycle and finish.Using sparse matrix with The step that the multiplier of vector calculates vectorial s is as follows:
1st step, input information section a1,a2,…,ae, they are stored in respectively register R1,1,R1,2,…,R1,eIn;
2nd step, register R1,1,R1,2,…,R1,eRing shift left 1 time simultaneously, XOR gate X1,1,X1,2,…,X1,cRespectively will XOR result moves to left into register R1,e+1,R1,e+2,…,R1,tIn;
3rd step, repeats the 2nd step b-1 time, after the completion of, register R1,e+1,R1,e+2,…,R1,tStorage content be respectively to Amount section s1,s2,…,sc, they constitute vectorial s.
pTTsTIt is equivalent to p=s Φ.Φ is by c × c b × b rank circular matrix Φj,u(1≤j≤c,1≤u≤c) The array constituting.Make circular matrix Φj,uFirst trip gj,uIt is its generator polynomial.From p=s Φ, u section verification vector is full Foot
pu=s1Φ1,u+s2Φ2,u+…+sjΦj,u+…+scΦc,u(7)
Make generator polynomial gj, u=(gj,u,1,gj,u,2,…,gj,u,b), then Φj,uCan be considered unit matrix ring shift right The weighted sum of version, that is,
Φj,u=gj,u,1Ir(0)+gj,u,2Ir(1)+…+gj,u,bIr(b-1)(8)
Wherein, subscriptr()Represent ring shift right.So, the jth item on the right of formula (7) equal sign is deployable is
Since by sjRing shift right n position is equivalent to its ring shift left b-n position, that is,Wherein, subscriptl()Table Show ring shift left, then formula (9) is rewritable to be
Formula (10) is substituted into formula (7), arrangement can obtain
Formula (11) is the process of a-multiply-add-move to left-store, and can derive and a kind of input ring shift left based on full parellel Vector and high-density matrix multiplier.Fig. 4 is its functional block diagram, by generator polynomial look-up table, b position binary multiplier, (c+1) position binary adder and four kinds of functional module compositions of shift register.Generator polynomial look-up table L1,L2,…,LcPoint Do not prestore matrix Φ the 1,2nd ..., all circular matrix generator polynomials in c block row.Generator polynomial look-up table L1,L2,…, LcOutput generator polynomial bit respectively with array section s1,s2,…,scCarry out scalar multiplication, this c scalar multiplication passes through b respectively Position binary multiplier M1,M2,…,McComplete.B position binary multiplier M1,M2,…,McProduct and shift register R interior Hold and be added, this addition passes through b (c+1) position binary adder A1,A2,…,AbComplete.(c+1) position binary adder A1, A2,…,AbAnd shift register R is stored in by the result after ring shift left 1.
Generator polynomial look-up table L1,L2,…,LcPrestore the circular matrix generator polynomial of matrix Φ.Generator polynomial is looked into Look for table L1~LcAll generator polynomials in 1~c block row of storage Φ respectively, for any block row, store the 1st successively, 2 ..., c block arranges corresponding generator polynomial.Generator polynomial look-up table L1~LcThe bit of Serial output generator polynomial.
The step calculating the vectorial p of verification using the multiplier of vector and high-density matrix is as follows:
1st step, full parellel input vector s;
2nd step, resets shift register R;
3rd step, generator polynomial look-up table L1,L2,…,LcRespectively the 1st in output matrix Φ u (1≤u≤c) block row, The generator polynomial bit of 2 ..., c block row, these generator polynomial bits pass through b position binary multiplier M respectively1,M2,…, McWith message segment s1,s2,…,scCarry out scalar multiplication, b position binary multiplier M1,M2,…,McProduct pass through b (c+1) position Binary adder A1,A2,…,AbIt is added with the content of shift register R, (c+1) position binary adder A1,A2,…,Ab's It is stored in shift register R with the result after ring shift left 1;
4th step, repeats the 3rd step b-1 time, and now, shift register R storage is verification section pu
5th step, is incremented by, with 1 for step-length, the value changing u, repeats the 2nd~4 step c-1 time, shift register R obtains successively Be verification section p1,p2,…,pc, they constitute the vectorial p=(p of verification1,p2,…,pc).
The invention provides a kind of QC-LDPC coding method based on two-level pipeline it is adaptable in DTMB system 4/5 Code check QC-LDPC code, its coding step is described as follows:
1st step, calculates vectorial s using the multiplier of sparse matrix and vector;
2nd step, calculates the vectorial p of verification using the multiplier of vector and high-density matrix.
Existing solution needs 1 e × b position modulo 2 adder, and the second level circuit of the present invention is average by nodulo-2 addition It is allocated to b (c+1) position modulo 2 adder.For 4/5 code check QC-LDPC encoder in DTMB standard, (c+1) is far smaller than e ×b.It can be seen that, the adder time delay of the present invention is much smaller than existing solution.
As fully visible, for 4/5 code check QC-LDPC encoder in DTMB standard, compared with existing solution, the present invention Highly shortened the time delay of logic circuit, have the advantages that operating frequency height, handling capacity are big.
The above, only one of specific embodiment of the present invention, but protection scope of the present invention is not limited thereto, Any those of ordinary skill in the art disclosed herein technical scope in, the change that can expect without creative work Change or replace, all should be included within the scope of the present invention.Therefore, protection scope of the present invention should be with claims The protection domain being limited is defined.

Claims (4)

1. the QC-LDPC encoder based on two-level pipeline in a kind of DTMB, the check matrix H of 4/5 code check QC-LDPC code be by The array that c × t b × b rank circular matrix is constituted, wherein, c=11, t=59, b=127, e=t-c=48, check matrix H can It is divided into 2 submatrixs, H=[C D], C are to be made up of c × e b × b rank circular matrix, D is to be circulated by c × c b × b rank Matrix is constituted, ΦT=D–1, wherein, subscriptΤWith-1Represent transposition and inverse, Matrix C corresponding informance vector a respectively, matrix D corresponds to school Test vectorial p, with b bit for one section, information vector a is divided into e section, i.e. a=(a1,a2,…,ae), vectorial p is halved for verification For c section, i.e. p=(p1,p2,…,pc), sT=CaT, p=s Φ, vectorial s is divided into c section, i.e. s=(s1,s2,…,sc), it is special Levy and be, described encoder is included with lower component:
Sparse matrix and vectorial multiplier, by t b bit register R1,1,R1,2,…,R1,tWith c multi input XOR gate X1,1,X1,2,…,X1,cComposition, for calculating vectorial s;
Vector and the multiplier of high-density matrix, input ring shift left mechanism based on full parellel, by generator polynomial look-up table, b Position binary multiplier, (c+1) position binary adder and shift register composition, for calculating the vectorial p of verification, generate multinomial Formula look-up table L1,L2,…,LcPrestore matrix Φ the 1st, 2 ... respectively, all circular matrix generator polynomials in c block row, generates Multinomial look-up table L1,L2,…,LcOutput generator polynomial bit respectively with array section s1,s2,…,scCarry out scalar multiplication, this C scalar multiplication passes through b position binary multiplier M respectively1,M2,…,McComplete, b position binary multiplier M1,M2,…,Mc's Product is added with the content of shift register R, and this addition passes through b (c+1) position binary adder A1,A2,…,AbComplete, (c + 1) position binary adder A1,A2,…,AbAnd shift register R is stored in by the result after ring shift left 1.
2. in a kind of DTMB according to claim 1 the QC-LDPC encoder based on two-level pipeline it is characterised in that Described sparse matrix is as follows with the step of the vectorial s of multiplier calculating of vector:
1st step, input information section a1,a2,…,ae, they are stored in respectively register R1,1,R1,2,…,R1,eIn;
2nd step, register R1,1,R1,2,…,R1,eRing shift left 1 time simultaneously, XOR gate X1,1,X1,2,…,X1,cRespectively by XOR Result moves to left into register R1,e+1,R1,e+2,…,R1,tIn;
3rd step, repeats the 2nd step b-1 time, after the completion of, register R1,e+1,R1,e+2,…,R1,tThe content of storage is array section respectively s1,s2,…,sc, they constitute vectorial s.
3. in a kind of DTMB according to claim 1 the QC-LDPC encoder based on two-level pipeline it is characterised in that Described vector is as follows with the step of the vectorial p of multiplier calculating verification of high-density matrix:
1st step, full parellel input vector s;
2nd step, resets shift register R;
3rd step, generator polynomial look-up table L1,L2,…,LcRespectively the 1,2nd in output matrix Φ u (1≤u≤c) block row ..., The generator polynomial bit of c block row, these generator polynomial bits pass through b position binary multiplier M respectively1,M2,…,McWith letter Breath section s1,s2,…,scCarry out scalar multiplication, b position binary multiplier M1,M2,…,McProduct pass through b (c+1) position binary system Adder A1,A2,…,AbIt is added with the content of shift register R, (c+1) position binary adder A1,A2,…,AbAnd followed The result that ring moves to left after 1 is stored in shift register R;
4th step, repeats the 3rd step b-1 time, and now, shift register R storage is verification section pu
5th step, is incremented by, with 1 for step-length, the value changing u, repeats the 2nd~4 step c-1 time, and what shift register R obtained successively is Verification section p1,p2,…,pc, they constitute the vectorial p=(p of verification1,p2,…,pc).
4. the QC-LDPC coding method based on two-level pipeline in a kind of DTMB, the check matrix H of 4/5 code check QC-LDPC code is The array being made up of c × t b × b rank circular matrix, wherein, c=11, t=59, b=127, e=t-c=48, check matrix H 2 submatrixs can be divided into, H=[C D], C are to be made up of c × e b × b rank circular matrix, and D is to be followed by c × c b × b rank Ring matrix is constituted, ΦT=D–1, wherein, subscriptΤWith-1Represent transposition and inverse, Matrix C corresponding informance vector a respectively, matrix D corresponds to The vectorial p of verification, with b bit for one section, information vector a is divided into e section, i.e. a=(a1,a2,…,ae), the vectorial p of verification by etc. It is divided into c section, i.e. p=(p1,p2,…,pc), sT=CaT, p=s Φ, vectorial s is divided into c section, i.e. s=(s1,s2,…,sc), its It is characterised by, described coding method comprises the following steps:
1st step, calculates vectorial s using the multiplier of sparse matrix and vector;
2nd step, calculates the vectorial p of verification using the multiplier of vector and high-density matrix.
CN201610961253.4A 2016-11-04 2016-11-04 LDPC encoder of secondary full parallel input cycle left shift in DTMB Withdrawn CN106411326A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610961253.4A CN106411326A (en) 2016-11-04 2016-11-04 LDPC encoder of secondary full parallel input cycle left shift in DTMB

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610961253.4A CN106411326A (en) 2016-11-04 2016-11-04 LDPC encoder of secondary full parallel input cycle left shift in DTMB

Publications (1)

Publication Number Publication Date
CN106411326A true CN106411326A (en) 2017-02-15

Family

ID=58013706

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610961253.4A Withdrawn CN106411326A (en) 2016-11-04 2016-11-04 LDPC encoder of secondary full parallel input cycle left shift in DTMB

Country Status (1)

Country Link
CN (1) CN106411326A (en)

Similar Documents

Publication Publication Date Title
CN103248372A (en) Quasi-cyclic LDPC serial encoder based on ring shift left
CN106452459A (en) Two-level all-parallel input ring shift left LDPC coder
CN106656206A (en) Two-level full parallel input ring left shift LDPC encoder in CDR
CN106571830A (en) LDPC encoder for secondary level full parallel input ring shift left in deep space communication
CN106411326A (en) LDPC encoder of secondary full parallel input cycle left shift in DTMB
CN103268214A (en) Quasi-cyclic matrix high-speed multiplier in deep space communication based on lookup table
CN106385261A (en) LDPC encoder with secondary full-parallel-input cycle leftward movement in CMMB
CN106452457A (en) Two-level full parallel input ring-shift-left LDPC (Low-Density Parity-Check) encoder in WPAN
CN103236858A (en) Rotate left-based quasi-cyclic low density parity check (LDPC) serial encoder in China mobile multimedia broadcasting (CMMB)
CN106385264A (en) Two-level partial parallel inputting, accumulating and left-shifting LDPC encoder
CN103236859B (en) Share the quasi-cyclic LDPC serial encoder of memory mechanism
CN106487390A (en) In DTMB, input moves to right cumulative LDPC encoder to second part parallel
CN106385262A (en) LDPC encoder with secondary part parallel input rightward movement accumulation in CMMB
CN106953646A (en) Quasi-cyclic LDPC encoder based on shared mechanism
CN103236851A (en) Quasi-cyclic matrix high-speed multiplier based on look-up table in CMMB (China Mobile Multimedia Broadcasting)
CN106374938A (en) Secondary part parallel input right shift accumulation LDPC encoder in deep space communication
CN106972864A (en) Quasi-cyclic LDPC encoder based on check matrix in deep space communication
CN106374939A (en) Secondary part parallel input right shift accumulation LDPC encoder
CN106982063A (en) Quasi-cyclic LDPC encoder based on check matrix in WPAN
CN106385263A (en) Two-level partial parallel inputting, accumulating and left-shifting LDPC encoder in CMMB
CN106788457A (en) Second part is input into the cumulative LDPC encoder for moving to left parallel in DTMB
CN106452458A (en) Second-level part parallel input right shift accumulated LDPC (Low-Density Parity-Check) encoder in CDR
CN106656207A (en) LDPC encoder for two-level partial parallel input right shift accumulation in WPAN
CN106385265A (en) Two-level partial parallel inputting, accumulating and left-shifting LDPC encoder in deep space communication
CN107196663A (en) Second part inputs the cumulative LDPC encoder moved to left parallel in CDR

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20170215