CN104539297B - High speed QC-LDPC encoders based on four level production lines in DTMB - Google Patents
High speed QC-LDPC encoders based on four level production lines in DTMB Download PDFInfo
- Publication number
- CN104539297B CN104539297B CN201510049687.2A CN201510049687A CN104539297B CN 104539297 B CN104539297 B CN 104539297B CN 201510049687 A CN201510049687 A CN 201510049687A CN 104539297 B CN104539297 B CN 104539297B
- Authority
- CN
- China
- Prior art keywords
- vector
- matrix
- register
- section
- rank
- 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.)
- Expired - Fee Related
Links
Abstract
The present invention provides the high speed QC LDPC encoders based on four level production lines in a kind of DTMB, the encoder include after the multiplier of 1 sparse matrix and vector, 1 I type to iterative circuit, 1 high-density matrix with after the multiplier of vector and 1 II type to iterative circuit.Sparse matrix realizes the multiplying of sparse matrix and vector with vectorial multiplier, and high-density matrix realizes high-density matrix and the multiplying of vector with vectorial multiplier, backward interative computation is all realized to iterative circuit after I types and II types.Entire cataloged procedure is divided into 4 level production lines.4/5 code check high speed QC LDPC encoders have many advantages, such as that simple in structure, at low cost, handling capacity is big in DTMB systems provided by the invention.
Description
Technical field
The present invention relates to field of channel coding, the high speed QC- based on four level production lines in more particularly to a kind of DTMB systems
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 codes
All it is the array being made of circular matrix into matrix G and check matrix H, there is stages cycle, therefore be referred to as QC-LDPC
Code.The first trip of circular matrix is footline ring shift right 1 as a result, remaining each row is all the knot of its lastrow ring shift right 1
Fruit, therefore, circular matrix are characterized completely by its first trip.In general, the first trip of circular matrix is referred to as its generator polynomial.
DTMB standards use the QC-LDPC codes of system form, and the left-half of generator matrix G is a unit matrix,
Right half part is by e × c b × b rank circular matrixes Gi,j(0≤i<e,e≤j<T, t=e+c) form array, it is as follows:
Wherein, I is b × b rank unit matrixs, and 0 is b × b rank full null matrix.Continuous b rows and the b row of G are known respectively as block
Row and block row.By formula (1) it is found that G has e blocks row and t blocks row.DTMB standards employ a kind of QC-LDPC codes of code check η=4/5,
For the code, t=59, e=48, c=11, b=127.
The existing solution of 4/5 code check QC-LDPC encoders is added based on 11 I type shift registers in DTMB standards
The serial encoder of accumulator (Type-I Shift-Register-Adder-Accumulator, SRAA-I) circuit.By 11
The serial encoder that SRAA-I circuits are formed completes coding within 6096 clock cycle.2794 registers of program needs,
1397 two inputs and door and 1397 two input XOR gates, it is also necessary to which the generation of 67056 bit ROM storage circular matrixes is multinomial
Formula.There are two shortcomings for the program:First, needing a large amount of memories, lead to circuit cost height;Second is that serial input information bit, is compiled
Code speed is slow.
Invention content
The existing implementation of 4/5 code check QC-LDPC encoders is lacked there are of high cost, coding rate is slow in DTMB systems
Point, for these technical problems, the present invention provides a kind of high speed QC-LDPC encoders based on four level production lines.
As shown in Fig. 2, the high speed QC-LDPC encoders based on four level production lines are mainly made of 4 parts in DTMB systems:
To iteration after iterative circuit, high-density matrix and the multiplier of vector and II types after the multiplier of sparse matrix and vector, I types
Circuit.4 steps of cataloged procedure point are completed:1st step calculates vector f and w using the multiplier of sparse matrix and vector;2nd step, makes
With after I types vector q and x is calculated to iterative circuit;3rd step is verified using high-density matrix and the multiplier calculating section of vector
Vectorial px;4th step obtains part verification vector p using vector y, y is calculated to iterative circuit after II types with vector q exclusive ory, so as to
It obtains verifying vectorial p=(px,py)。
4/5 code check high speed QC-LDPC coder structures are simple in DTMB systems provided by the invention, can be compiled significantly improving
Under conditions of code speed, memory is reduced, so as to reduce cost, improves handling capacity.
Advantage about the present invention can be further understood with method by following detailed description and accompanying drawings.
Description of the drawings
Fig. 1 is the structure diagram of near lower triangular check matrix after ranks exchange;
Fig. 2 is the QC-LDPC cataloged procedures based on four level production lines;
Fig. 3 is the functional block diagram of ring shift left accumulator RLA circuits;
Fig. 4 is the multiplier by a kind of high-density matrix that 1 RLA circuit is formed and vector;
Fig. 5 is the multiplier of sparse matrix and vector;
Fig. 6 gives sparse matrix and the connection relation of each multi input XOR gate and register in the multiplier of vector;
Fig. 7 is to iterative circuit after I types;
Fig. 8 gives the block position and its ring shift right digit in matrix Q where nonzero circle matrix;
Fig. 9 is to iterative circuit after II types;
Figure 10 gives the block position and its ring shift right digit in matrix Y where nonzero circle matrix;
Figure 11 summarizes each coding step of encoder and the hardware resource needed for entire cataloged procedure and processing time.
Specific embodiment
Presently preferred embodiments of the present invention is elaborated below in conjunction with the accompanying drawings, so that advantages and features of the invention can be more
It is easy to be readily appreciated by one skilled in the art, apparent is explicitly defined so as to be made to protection scope of the present invention.
The row weight and row heavy phase of circular matrix are same, are denoted as w.If w=0, then the circular matrix is full null matrix.If
W=1, then the circular matrix is replaceable, referred to as permutation matrix, it can be by several positions of unit matrix I ring shift rights
It obtains.The check matrix H of QC-LDPC codes is by c × t b × b rank circular matrixes Hj,k(1≤j≤c, 1≤k≤t, t=e+c)
The following array formed:
Under normal conditions, any circular matrix in check matrix H is either full null matrix (w=0) or is displacement square
Battle array (w=1).Enable circular matrix Hj,kFirst trip gj,k=(gj,k,1,gj,k,2,…,gj,k,b) it is its generator polynomial, wherein gj,k,m
=0 or 1 (1≤m≤b).Because H is sparse, gj,kOnly 1 ' 1 ', even without ' 1 '.
For the QC-LDPC codes of 4/5 code check in DTMB systems, corresponding preceding 48 pieces of row of H are information vector a, latter 11 pieces
It is verification vector p to arrange corresponding.Using 127 bits as one section, information vector a is divided into 48 sections, i.e. a=(a1,a2,…,a48);
Verification vector p is divided into 11 sections, i.e. p=(p1,p2,…,p11)。
To check matrix H into every trade exchange and row swap operation, it is converted near lower triangular shape HALT, such as Fig. 1 institutes
Show.The process that ranks exchange is as follows:1st step is arranged into row block and is exchanged, and preceding 9 pieces of row are exchanged with latter 48 pieces row;2nd step, into row block row
It exchanges, first trip moves to footline;All permutation matrixes are distinguished ring shift left 1 by the 3rd step.
In Fig. 1, the unit of all matrixes is all b=127 bits rather than 1 bit.A is by 9 × 48 127 × 127
Rank circular matrix is formed, and B is made of 9 × 2 127 × 127 rank circular matrixes, and T is by 9 × 9 127 × 127 rank Cyclic Moments
Battle array is formed, and C is made of 2 × 48 127 × 127 rank circular matrixes, and D is made of 2 × 2 127 × 127 rank circular matrixes, E
It is to be made of 2 × 9 127 × 127 rank circular matrixes.T is lower triangular matrix, and u=2 reflects check matrix HALTWith lower triangle
The degree of closeness of matrix.In Fig. 1, matrix A and C corresponding informance vector a, matrix B and D correspond to part verification vector px=
(p1,p2), matrix T and E then correspond to remaining verification vector py=(p3,p4,…,p11).P=(px,py).Above-mentioned matrix and vector
Meet following relationship:
px Τ=Φ (ET-1AaΤ+CaΤ) (3)
py Τ=T-1(AaΤ+Bpx Τ) (4)
Wherein, Φ=(ET-1B+D)-1, subscriptΤWith-1Transposition and inverse is represented respectively.It is well known that circular matrix it is inverse, multiply
Product and be still circular matrix.Therefore, Φ is also the array being made of circular matrix.Although matrix E, T, B and D are sparse
Matrix, but Φ is no longer sparse but highdensity under normal conditions.
Enable fT=AaT, qT=T-1fT, wT=CaT, xT=EqT+wT, px T=Φ xT, yT=T–1Bpx TAnd py T=qT+yT.To
Amount f and w can be calculated by following formula:
Wherein,
qT=T–1fTAnd xT=EqT+wTIt may make up following matrix equality:
Wherein,
Once p is calculatedx, yT=T–1Bpx TIt can be rewritten as:
[B T][px y]Τ=Y [px y]Τ=0 (9)
Wherein,
Y=[B T] (10)
Because Q and Y are lower triangular matrix as T, the y in [q x] and formula (9) in formula (7) can be used
The calculation of backward iteration.
Φ is related to high-density matrix and the multiplication of vector, and F is related to the multiplication of sparse matrix and vector, and Q and Y are related to backward
Iterative calculation.From the above discussion, a kind of QC-LDPC cataloged procedures based on four level production lines can be provided, as shown in Figure 2.
px T=Φ xTIt is equivalent to px=x ΦT.Enable x=(x1,x2,…,xu×b).Define u bit vectors sn=(xn,xn+b,…,
xn+(u-1)×b), wherein 1≤n≤b.Enable Φj(1≤j≤u) is by ΦTJth block row in all circular matrix generator polynomial structures
Into u × b rank matrixes.Then have
pj=(... ((0+s1Φj)ls(1)+s2Φj)ls(1)+…+sbΦj)ls(1) (11)
Wherein, subscriptls(1)Represent ring shift left 1.
A kind of ring shift left accumulator (Rotate-Left-Accumulator, RLA) circuit can obtain by formula (11), such as
Shown in Fig. 3.The index of look-up table is u bit vectors sn, look-up table LjIt is previously stored variable u bit vectors and fixed Φj's
Be possible to product, therefore need 2uThe read-only memory (Read-Only Memory, ROM) of b bits.B bit registers R1,
R2,…,RuIt is respectively used to the array section x of buffering vector x1,x2,…,xu, b bit registers Ru+jFor storing pxVerification section
pj.1 RLA circuit counting vectors pjNeed b clock cycle.
For DTMB systems, 2 RLA circuit countings p are usedx=(p1,p2) it is a kind of reasonable plan, height as shown in Figure 4
The multiplier of density matrix and vector.High-density matrix is with vectorial multiplier by 2 look-up table L1,L2, 4 127 bit registers
Device R3,1,R3,2,…,R3,4With 2 127 two input XOR gate X3,1,X3,2Composition.Look-up table L1,L22 variable ratios are stored respectively
Special vector and fixed matrix Φ1,Φ2Be possible to product, register R3,1,R3,2It is respectively used to the array section of buffering vector x
x1,x2, register R3,3,R3,4It is respectively used to storage pxVerification section p1,p2.2 RLA circuits need to use 127 two input exclusive or
Door, ROM and 254 register of 1016 bits.2 RLA circuit counting vectors pxNeed 127 clock cycle.Using highly dense
The multiplier for spending matrix and vector calculates vector pxThe step of it is as follows:
1st step resets register R3,3,R3,4, input vector section x1,x2, they are stored in register R respectively3,1,R3,2In;
2nd step, register R3,1,R3,2Ring shift left 1 time simultaneously, XOR gate X3,1,X3,2Respectively to look-up table L1,L2It is defeated
Go out and register R3,3,R3,4Content carry out exclusive or, exclusive or result is stored back to register R respectively after ring shift left 1 time3,3,R3,4;
3rd step, repeats the 2nd step 127 times, after the completion, register R3,3,R3,4The content of storage is verification section p respectively1,p2,
It constitutes part verification vector px。
Enable f=(f1,f2,…,f9) and w=(f10,f11), then [f w]=(f1,f2,…,f11).By formula (5) it is found that fjIt is
The jth block row and a of matrix FTProduct, i.e.,
Wherein, 1≤i≤48,1≤j≤11.fjThe n-th bit fj,n(1≤n≤127) are
Wherein, subscriptrs(n–1)Withls(n–1)Ring shift right n -1 and ring shift left n -1 are represented respectively.Since any cycle
Matrix generator polynomial gj,iOnly a small amount of ' 1 ' even complete zero, then the inner product in formula (13) can be by posting ring shift left
The tap of storage sums to realize, the multiplier of sparse matrix as shown in Figure 5 and vector.The multiplier of sparse matrix and vector
By 59 127 bit register R1,1,R1,2,…,R1,59With 11 multi input XOR gate X1,1,X1,2,…,X1,11Composition.Register
R1,1,R1,2,…,R1,48For loading and ring shift left message segment a1,a2,…,a48, register R1,49,R1,50,…,R1,59For
Store the array section f of [f w]1,f2,…,f11.All circular matrixes generation that partially connected in Fig. 5 is depended in matrix F is more
Item formula.If gj,i,m=1 (1≤m≤127), then message segment aiM bits be connected to XOR gate X1,j.Therefore, register
R1,iAll taps depend on the nonzero element positions of all circular matrix generator polynomials in i-th piece of matrix F row, and
Multi input XOR gate X1,jInput depend on matrix F jth block row in all circular matrix generator polynomials nonzero element where
Position.Fig. 6 gives sparse matrix and the connection relation of each multi input XOR gate and register in the multiplier of vector.Since
All circular matrix generator polynomials in F share α=127 ' 1 ', then the multiplier of sparse matrix and vector needs to use
(α-c)=250 two input XOR gate and calculate f simultaneously1,n,f2,n,…,f11,n.F and w can have been calculated within 127 clock cycle
Finish.The step of calculating vector f and w using the multiplier of sparse matrix and vector is as follows:
1st step, input message segment a1,a2,…,a48, they are stored in register R respectively1,1,R1,2,…,R1,48In;
2nd step, register R1,1,R1,2,…,R1,48Ring shift left 1 time simultaneously, XOR gate X1,1,X1,2,…,X1,11Respectively will
Exclusive or result is moved to left into register R1,49,R1,50,…,R1,59In;
3rd step, repeats the 2nd step 127 times, after the completion, register R1,49,R1,50,…,R1,59The content of storage be respectively to
Measure section f1,f2,…,f11, they constitute vector f and w.
Formula (7) implies backward iterative operation, it is necessary to solve vector q and x paragraph by paragraph.Define [q x]=(q1,q2,…,
q11), and it is initialized as complete zero.First, q1Exactly equal to f1.Secondly, q2It is the 2nd piece of row of matrix Q and vectorial [q x]TProduct with
f22 He of mould.Then, q3It is the 3rd piece of row of matrix Q and vectorial [q x]TProduct and f32 He of mould.It repeats the above process, until
Q is calculated11Until, to iterative circuit after I types as shown in Figure 7.To iterative circuit by 11 127 bit register R after I types2,1,
R2,2,…,R2,11With 10 multi input modulo 2 adder A2,2,A2,3,…,A2,11Composition.
To calculate qjFor (1≤j≤11).Nonzero circle matrix in check matrix H is typically the cycle of unit matrix
Move to right version.Assuming that having N number of nonzero circle matrix in the jth block row of matrix Q, their ring shift right digit is s respectivelyj,k1,
sj,k2,…,sj,kN(1≤k1,k2,…,kN<j).Then,
Because of N very littles, formula (14) can be by a multi input modulo 2 adder to inputting ring shift left in 1 clock
It calculates and finishes in period.Therefore, calculate vectorial [q x] needs 11 clock cycle altogether.Since β=29 non-zero is shared in matrix Q
Circular matrix, then need (β-c) b=2286 two input XOR gate of use to iterative circuit after I types.
Matrix Q is by 11 × 11 127 × 127 rank circular matrix Qj,kThe array that (1≤j≤11,1≤k≤11) are formed.
Nonzero circle matrix Qj,kRing shift right digit relative to 127 × 127 rank unit matrixs is sj,k, 0≤sj,k<127.For ease of
Description, complete zero circular matrix are denoted as s relative to the ring shift right digit of 127 × 127 rank circular matrixesj,k='-'.In the figure 7,
Nonzero circle matrix Qj,kCorresponding array section qkBy ring shift left sj,kMulti input modulo 2 adder A is sent into behind position2,jIn with vector
Section fjXOR operation is carried out, the corresponding array section of complete zero circular matrix is not involved in XOR operation, A2,jResult of calculation be qj, deposit
Register R2,jIn.Fig. 8 gives the block position and its ring shift right digit in matrix Q where nonzero circle matrix.Use I types
The step of backward iterative circuit calculates vector q and x is as follows:
1st step, input vector section f1, by array section q1=f1It is stored in register R2,1In;
2nd step, input vector section fj, nonzero circle matrix Qj,kCorresponding array section qkBy ring shift left sj,kIt is sent into behind position
Multi input modulo 2 adder A2,jIn with array section fjCarry out XOR operation, exclusive or result qjIt is stored into register R2,jIn, wherein, 2
≤j≤11,1≤k<J, 0≤sj,k<127;
3rd step incrementally changes the value of j with 1 for step-length, repeats the 2nd step 10 times, finally, register R2,1,R2,2,…,
R2,11Storage is array section q respectively1,q2,…,q11, they constitute vectorial q and x.
Formula (9) also implies backward iterative operation, it is necessary to solve vector y paragraph by paragraph.Define y=(y1,y2,…,y9), and just
Beginning turns to complete zero.First, y1It is the 1st piece of row of matrix Y and vector [px y]TProduct.Secondly, y2Be matrix Y the 2nd piece of row with
Vector [px y]TProduct.It repeats the above process, until having calculated y9Until, to iterative circuit after II types as shown in Figure 9.After II types
To iterative circuit by 11 127 bit register R4,1,R4,2,…,R4,11With 9 multi input modulo 2 adder A4,1,A4,2,…,
A4,9Composition.Calculate vector y needs 9 clock cycle altogether.Since ξ=27 nonzero circle matrix is shared in matrix Y, then II types
Backward iterative circuit needs to use (ξ -2c+2u) b=1143 two input XOR gate.Matrix Y is followed by 9 × 11 127 × 127 ranks
Ring matrix Yj,kThe array that (1≤j≤9,1≤k≤11) are formed.Nonzero circle matrix Yj,kRelative to 127 × 127 rank unit matrixs
Ring shift right digit be sj,k, 0≤sj,k<127.Figure 10 give block position in matrix Y where nonzero circle matrix and its
Ring shift right digit.Using as follows the step of calculating vector y to iterative circuit after II types:
1st step, input validation section p1,p2, they are stored in register R respectively4,10,R4,11In;
2nd step, nonzero circle matrix Yj,kCorresponding array section pkOr ykBy ring shift left sj,kMulti input mould 2 is sent into behind position
Adder A4,jMiddle carry out XOR operation, exclusive or result yjIt is stored into register R4,jIn, wherein, 1≤j≤9,1≤k<1+j, 0≤
sj,k<127;
3rd step incrementally changes the value of j with 1 for step-length, repeats the 2nd step 9 times, finally, register R4,1,R4,2,…,R4,9
Storage is array section y respectively1,y2,…,y9, they constitute vectorial y.
The present invention provides a kind of high speed QC-LDPC coding methods based on four level production lines, suitable for DTMB systems
4/5 code check QC-LDPC codes, coding step is described as follows:
1st step calculates vector f and w using the multiplier of sparse matrix and vector;
2nd step calculates vector q and x using after I types to iterative circuit;
3rd step uses high-density matrix and the multiplier calculating section verification vector p of vectorx;
4th step obtains part verification vector p using vector y, y is calculated to iterative circuit after II types with vector q exclusive ory, from
And it obtains verifying vectorial p=(px,py)。
When Figure 11 summarizes each coding step of encoder and hardware resource consumption needed for entire cataloged procedure and processing
Between.
It is not difficult to find out from Figure 11, when assembly line is full of, when entire cataloged procedure needs max (t-c+b, c, u+b)=175 altogether
The clock period, less than 6096 clock cycle needed for the serial encoding method based on 11 SRAA-I circuits.The former coding speed
Degree is 34.8 times of the latter.
In DTMB standards the existing solution of 4/5 code check QC-LDPC encoders need 2794 registers, 1397 two
Input and door and 1397 two input XOR gates, it is also necessary to which 67056 bit ROM store the generator polynomial of circular matrix.And this
Invention needs 11121 registers, 0 two input and door and 3933 two input XOR gates, it is only necessary to 1016 bit ROM.
To sum up, compared with traditional serial SRAA methods, it is excellent that the present invention has that coding rate is fast, memory consumption is few etc.
Point.
One of the above description is merely a specific embodiment, but protection scope of the present invention is not limited thereto,
Any those skilled in the art disclosed herein technical scope in, the change that can expect without creative work
Change or replace, should be covered by the protection scope of the present invention.Therefore, protection scope of the present invention should be with claims
Subject to the protection domain limited.
Claims (3)
1. the high speed QC-LDPC encoders based on four level production lines in a kind of DTMB, the check matrix H of 4/5 code check QC-LDPC codes
It is the array being made of c × t b × b rank circular matrix, wherein, c=11, t=59, b=127, e=t-c=48 verify square
Battle array H is transformed near lower triangular shape by ranks exchange, can be divided into 6 submatrixs,A is by 9 × 48
A b × b ranks circular matrix is formed, and B is made of 9 × 2 b × b rank circular matrixes, and lower triangular matrix T is by 9 × 9 b × b
Rank circular matrix is formed, and C is made of 2 × 48 b × b rank circular matrixes, and D is made of 2 × 2 b × b rank circular matrixes, E
It is to be made of 2 × 9 b × b rank circular matrixes, Φ=(ET-1B+D)-1It is to be made of 2 × 2 b × b rank circular matrixes, ΦjIt is
By ΦTJth block row in 2 × b rank matrixes for forming of all circular matrix generator polynomials, wherein, subscriptTWith-1It represents respectively
Transposition and inverse, 1≤j≤2,It is by 11 × 11 b × b rank circular matrixes Qj,kIt forms, wherein, I is unit matrix,
0 is full null matrix, 1≤j≤11,1≤k≤11, nonzero circle matrix Qj,kRelative to the ring shift right position of b × b rank unit matrixs
Number is sj,k, wherein, 0≤sj,k<B, Y=[B T] are by 9 × 11 b × b rank circular matrixes Yj,kIt forms, wherein, 1≤j≤9,1
≤ k≤11, nonzero circle matrix Yj,kRing shift right digit relative to b × b rank unit matrixs is sj,k, wherein, 0≤sj,k<B,
A and C corresponding informance vector a, matrix B and D correspond to part verification vector px, matrix T and E then correspond to remaining verification vector py,
Verify vector p=(px,py), using b bits as one section, information vector a is divided into 48 sections, i.e. a=(a1,a2,…,a48), verification
Vectorial p is divided into 11 sections, i.e. p=(p1,p2,…,p11), px=(p1,p2), py=(p3,p4,…,p11), vector f is divided
It is 9 sections, i.e. f=(f1,f2,…,f9), vectorial w is divided into 2 sections, i.e. w=(f10,f11), [f w]=(f1,f2,…,f11), to
Amount q is divided into 9 sections, i.e. q=(q1,q2,…,q9), vector x is divided into 2 sections, i.e. x=(p10,p11), [q x]=(q1,
q2,…,q11), vectorial y is divided into 9 sections, i.e. y=(y1,y2,…,y9), which is characterized in that the encoder is included with lower part
Part:
The multiplier of sparse matrix and vector, by 59 127 bit register R1,1,R1,2,…,R1,59With 11 multi input exclusive or
Door X1,1,X1,2,…,X1,11Composition, for calculating vector f and w;The multiplier of the sparse matrix and vector calculates vector f and w
The step of it is as follows:
1st step, input message segment a1,a2,…,a48, they are stored in register R respectively1,1,R1,2,…,R1,48In;
2nd step, register R1,1,R1,2,…,R1,48Ring shift left 1 time simultaneously, XOR gate X1,1,X1,2,…,X1,11Respectively by exclusive or
As a result it moves to left into register R1,49,R1,50,…,R1,59In;
3rd step, repeats the 2nd step 127 times, after the completion, register R1,49,R1,50,…,R1,59The content of storage is array section respectively
f1,f2,…,f11, they constitute vector f and w;
To iterative circuit after I types, by 11 127 bit register R2,1,R2,2,…,R2,11With 10 multi input modulo 2 adders
A2,2,A2,3,…,A2,11Composition, for calculating vectorial q and x;The step of calculating vector q and x to iterative circuit after the I types is such as
Under:
1st step, input vector section f1, by array section q1=f1It is stored in register R2,1In;
2nd step, input vector section fj, nonzero circle matrix Qj,kCorresponding array section qkBy ring shift left sj,kIt how defeated is sent into behind position
Enter modulo 2 adder A2,jIn with array section fjCarry out XOR operation, exclusive or result qjIt is stored into register R2,jIn, wherein, 2≤j≤
11,1≤k<J, 0≤sj,k<127;
3rd step incrementally changes the value of j with 1 for step-length, repeats the 2nd step 10 times, finally, register R2,1,R2,2,…,R2,11It deposits
Storage is array section q respectively1,q2,…,q11, they constitute vectorial q and x;
High-density matrix and the multiplier of vector, by 2 look-up table L1,L2, 4 127 bit register R3,1,R3,2,…,R3,4With
2 127 two input XOR gate X3,1,X3,2Composition, for calculating section verification vector px, look-up table L1,L2It stores respectively variable
2 bit vectors and fixed matrix Φ1,Φ2Be possible to product;The high-density matrix and the multiplier of vector calculate
Vectorial pxThe step of it is as follows:
1st step resets register R3,3,R3,4, input vector section x1,x2, they are stored in register R respectively3,1,R3,2In;
2nd step, register R3,1,R3,2Ring shift left 1 time simultaneously, XOR gate X3,1,X3,2Respectively to look-up table L1,L2Output and
Register R3,3,R3,4Content carry out exclusive or, exclusive or result is stored back to register R respectively after ring shift left 1 time3,3,R3,4;
3rd step, repeats the 2nd step 127 times, after the completion, register R3,3,R3,4The content of storage is verification section p respectively1,p2, they
Constitute part verification vector px;
To iterative circuit after II types, by 11 127 bit register R4,1,R4,2,…,R4,11With 9 multi input modulo 2 adders
A4,1,A4,2,…,A4,9Composition, for calculating vectorial y, y obtains part verification vector p with vector q exclusive ory, so as to be verified
Vectorial p=(px,py);The step of calculating vector y to iterative circuit after the II types is as follows:
1st step, input validation section p1,p2, they are stored in register R respectively4,10,R4,11In;
2nd step, nonzero circle matrix Yj,kCorresponding array section pkOr ykBy ring shift left sj,kMulti input nodulo-2 addition is sent into behind position
Device A4,jMiddle carry out XOR operation, exclusive or result yjIt is stored into register R4,jIn, wherein, 1≤j≤9,1≤k<2+j, 0≤sj,k<
127;
3rd step incrementally changes the value of j with 1 for step-length, repeats the 2nd step 9 times, finally, register R4,1,R4,2,…,R4,9Storage
Be array section y respectively1,y2,…,y9, they constitute vectorial y.
2. the high speed QC-LDPC encoders based on four level production lines, feature exist in a kind of DTMB according to claim 1
In the process that the ranks exchange is as follows:
1st step is arranged into row block and is exchanged, and preceding 9 pieces of row are exchanged with latter 48 pieces row;
2nd step, exchanges into row block row, and first trip moves to footline;
All permutation matrixes are distinguished ring shift left 1 by the 3rd step.
3. the high speed QC-LDPC coding methods based on four level production lines in a kind of DTMB, the verification square of 4/5 code check QC-LDPC codes
Battle array H is the array being made of c × t b × b rank circular matrix, wherein, c=11, t=59, b=127, e=t-c=48, verification
Matrix H is transformed near lower triangular shape by ranks exchange, can be divided into 6 submatrixs,A be by 9 ×
48 b × b ranks circular matrixes are formed, and B is made of 9 × 2 b × b rank circular matrixes, lower triangular matrix T be by 9 × 9 b ×
B ranks circular matrix is formed, and C is made of 2 × 48 b × b rank circular matrixes, and D is made of 2 × 2 b × b rank circular matrixes,
E is made of 2 × 9 b × b rank circular matrixes, Φ=(ET-1B+D)-1It is to be made of 2 × 2 b × b rank circular matrixes, ΦjIt is
By ΦTJth block row in 2 × b rank matrixes for forming of all circular matrix generator polynomials, wherein, subscriptTWith-1It represents respectively
Transposition and inverse, 1≤j≤2,It is by 11 × 11 b × b rank circular matrixes Qj,kIt forms, wherein, I is unit matrix,
0 is full null matrix, 1≤j≤11,1≤k≤11, nonzero circle matrix Qj,kRelative to the ring shift right position of b × b rank unit matrixs
Number is sj,k, wherein, 0≤sj,k<B, Y=[B T] are by 9 × 11 b × b rank circular matrixes Yj,kIt forms, wherein, 1≤j≤9,1
≤ k≤11, nonzero circle matrix Yj,kRing shift right digit relative to b × b rank unit matrixs is sj,k, wherein, 0≤sj,k<B,
A and C corresponding informance vector a, matrix B and D correspond to part verification vector px, matrix T and E then correspond to remaining verification vector py,
Verify vector p=(px,py), using b bits as one section, information vector a is divided into 48 sections, i.e. a=(a1,a2,…,a48), verification
Vectorial p is divided into 11 sections, i.e. p=(p1,p2,…,p11), px=(p1,p2), py=(p3,p4,…,p11), vector f is divided
It is 9 sections, i.e. f=(f1,f2,…,f9), vectorial w is divided into 2 sections, i.e. w=(f10,f11), [f w]=(f1,f2,…,f11), to
Amount q is divided into 9 sections, i.e. q=(q1,q2,…,q9), vector x is divided into 2 sections, i.e. x=(p10,p11), [q x]=(q1,
q2,…,q11), vectorial y is divided into 9 sections, i.e. y=(y1,y2,…,y9), which is characterized in that the coding method includes following
Step:
1st step calculates vector f and w using the multiplier of sparse matrix and vector;The multiplier meter of the sparse matrix and vector
The step of calculating vector f and w is as follows:
Input message segment a1,a2,…,a48, they are stored in register R respectively1,1,R1,2,…,R1,48In;
Register R1,1,R1,2,…,R1,48Ring shift left 1 time simultaneously, XOR gate X1,1,X1,2,…,X1,11Respectively by an exclusive or result left side
Move into register R1,49,R1,50,…,R1,59In;
Repeat previous step 127 times, after the completion, register R1,49,R1,50,…,R1,59The content of storage is array section f respectively1,
f2,…,f11, they constitute vector f and w;
2nd step calculates vector q and x using after I types to iterative circuit;The step of vector q and x is calculated after the I types to iterative circuit
It is rapid as follows:
Input vector section f1, by array section q1=f1It is stored in register R2,1In;
Input vector section fj, nonzero circle matrix Qj,kCorresponding array section qkBy ring shift left sj,kMulti input mould 2 is sent into behind position to add
Musical instruments used in a Buddhist or Taoist mass A2,jIn with array section fjCarry out XOR operation, exclusive or result qjIt is stored into register R2,jIn, wherein, 2≤j≤11,1≤k
<J, 0≤sj,k<127;
Incrementally change the value of j for step-length with 1, repeat previous step 10 times, finally, register R2,1,R2,2,…,R2,11Point of storage
It is not array section q1,q2,…,q11, they constitute vectorial q and x;
3rd step uses high-density matrix and the multiplier calculating section verification vector p of vectorx;The high-density matrix and vector
Multiplier calculate vector pxThe step of it is as follows:
Reset register R3,3,R3,4, input vector section x1,x2, they are stored in register R respectively3,1,R3,2In;
Register R3,1,R3,2Ring shift left 1 time simultaneously, XOR gate X3,1,X3,2Respectively to look-up table L1,L2Output and register
R3,3,R3,4Content carry out exclusive or, exclusive or result is stored back to register R respectively after ring shift left 1 time3,3,R3,4;
Repeat previous step 127 times, after the completion, register R3,3,R3,4The content of storage is verification section p respectively1,p2, they are constituted
Part verification vector px;
4th step obtains part verification vector p using vector y, y is calculated to iterative circuit after II types with vector q exclusive ory, so as to
To verification vector p=(px,py);The step of calculating vector y to iterative circuit after the II types is as follows:
Input validation section p1,p2, they are stored in register R respectively4,10,R4,11In;
Nonzero circle matrix Yj,kCorresponding array section pkOr ykBy ring shift left sj,kMulti input modulo 2 adder A is sent into behind position4,jIn
Carry out XOR operation, exclusive or result yjIt is stored into register R4,jIn, wherein, 1≤j≤9,1≤k<2+j, 0≤sj,k<127;
Incrementally change the value of j for step-length with 1, repeat previous step 9 times, finally, register R4,1,R4,2,…,R4,9Point of storage
It is not array section y1,y2,…,y9, they constitute vectorial y.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510049687.2A CN104539297B (en) | 2015-01-30 | 2015-01-30 | High speed QC-LDPC encoders based on four level production lines in DTMB |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510049687.2A CN104539297B (en) | 2015-01-30 | 2015-01-30 | High speed QC-LDPC encoders based on four level production lines in DTMB |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104539297A CN104539297A (en) | 2015-04-22 |
CN104539297B true CN104539297B (en) | 2018-06-19 |
Family
ID=52854783
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510049687.2A Expired - Fee Related CN104539297B (en) | 2015-01-30 | 2015-01-30 | High speed QC-LDPC encoders based on four level production lines in DTMB |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104539297B (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102122963A (en) * | 2011-04-08 | 2011-07-13 | 中国传媒大学 | Encoder and encoding method for Quasic-low-density parity-check (QC-LDPC) codes in digital television terrestrial multimedia broadcasting (DTMB) system |
CN102843147A (en) * | 2012-09-27 | 2012-12-26 | 苏州威士达信息科技有限公司 | LDPC (Low-Density Parity-Check) encoder and encoding method in DTMB (Digital Terrestrial Multimedia Broadcasting) based on cycle right shift accumulation |
CN102857235A (en) * | 2012-09-27 | 2013-01-02 | 苏州威士达信息科技有限公司 | LDPC (low-density parity-check) encoder and encoding method in DTMB (digital terrestrial multimedia broadcasting) system based on shared register |
CN102868412A (en) * | 2012-09-27 | 2013-01-09 | 苏州威士达信息科技有限公司 | Parallel filtering based LDPC (low-density parity-check) encoder and encoding method in deep space communication |
CN102932009A (en) * | 2012-11-21 | 2013-02-13 | 苏州威士达信息科技有限公司 | Lookup-table based method for parallel encoding of QC-LDPC (quasi-cyclic low-density parity-check) codes in DTMB system |
CN103929199A (en) * | 2014-04-23 | 2014-07-16 | 荣成市鼎通电子信息科技有限公司 | Full parallel input quasi-cyclic matrix multiplier based on ring shift left in DTMB |
-
2015
- 2015-01-30 CN CN201510049687.2A patent/CN104539297B/en not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102122963A (en) * | 2011-04-08 | 2011-07-13 | 中国传媒大学 | Encoder and encoding method for Quasic-low-density parity-check (QC-LDPC) codes in digital television terrestrial multimedia broadcasting (DTMB) system |
CN102843147A (en) * | 2012-09-27 | 2012-12-26 | 苏州威士达信息科技有限公司 | LDPC (Low-Density Parity-Check) encoder and encoding method in DTMB (Digital Terrestrial Multimedia Broadcasting) based on cycle right shift accumulation |
CN102857235A (en) * | 2012-09-27 | 2013-01-02 | 苏州威士达信息科技有限公司 | LDPC (low-density parity-check) encoder and encoding method in DTMB (digital terrestrial multimedia broadcasting) system based on shared register |
CN102868412A (en) * | 2012-09-27 | 2013-01-09 | 苏州威士达信息科技有限公司 | Parallel filtering based LDPC (low-density parity-check) encoder and encoding method in deep space communication |
CN102932009A (en) * | 2012-11-21 | 2013-02-13 | 苏州威士达信息科技有限公司 | Lookup-table based method for parallel encoding of QC-LDPC (quasi-cyclic low-density parity-check) codes in DTMB system |
CN103929199A (en) * | 2014-04-23 | 2014-07-16 | 荣成市鼎通电子信息科技有限公司 | Full parallel input quasi-cyclic matrix multiplier based on ring shift left in DTMB |
Also Published As
Publication number | Publication date |
---|---|
CN104539297A (en) | 2015-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103067025B (en) | LDPC encoder and coded method in CMMB based on the circulation of block row | |
CN102882532B (en) | LDPC (low density parity check) encoder in CMMB (China mobile multimedia broadcasting) based on rotate right accumulation and encoding method | |
CN102843147A (en) | LDPC (Low-Density Parity-Check) encoder and encoding method in DTMB (Digital Terrestrial Multimedia Broadcasting) based on cycle right shift accumulation | |
CN102857236A (en) | China mobile multimedia broadcasting (CMMB) low density parity check (LDPC) encoder based on summation array and coding method | |
CN105099467A (en) | QC-LDPC code coding method and device | |
CN104579366B (en) | High speed QC-LDPC encoder in WPAN based on three class pipeline | |
CN104539297B (en) | High speed QC-LDPC encoders based on four level production lines in DTMB | |
CN104579364B (en) | High speed QC-LDPC encoders based on four level production lines in CDR | |
CN104518803B (en) | High speed QC-LDPC encoders based on four level production lines in CMMB | |
CN104579365B (en) | High speed QC-LDPC encoders based on four level production lines | |
CN106982063A (en) | Quasi-cyclic LDPC encoder based on check matrix in WPAN | |
CN106972864A (en) | Quasi-cyclic LDPC encoder based on check matrix in deep space communication | |
CN106953646A (en) | Quasi-cyclic LDPC encoder based on shared mechanism | |
CN106656206A (en) | Two-level full parallel input ring left shift LDPC encoder in CDR | |
CN105141319A (en) | High-speed QC-LDPC encoder based on three-stage pipeline in deep space communication | |
CN106982066A (en) | Quasi-cyclic LDPC encoder based on shared mechanism in CDR | |
CN107196663A (en) | Second part inputs the cumulative LDPC encoder moved to left parallel in CDR | |
CN105099468A (en) | High-speed QC-LDPC (quasi-cyclic-low-density parity-check) encoder based on four-level flow lines and used for deep space communication | |
CN106982064A (en) | Quasi-cyclic LDPC encoder based on check matrix in CDR | |
CN106982062A (en) | Quasi-cyclic LDPC encoder based on shared mechanism in WPAN | |
CN105245237A (en) | High-speed QC-LDPC encoder based on three-level pipeline in DTMB | |
CN106571830A (en) | LDPC encoder for secondary level full parallel input ring shift left in deep space communication | |
CN106961281A (en) | Quasi-cyclic LDPC encoder based on shared mechanism in DTMB | |
CN106982067A (en) | Quasi-cyclic LDPC encoder based on check matrix in DTMB | |
CN106953645A (en) | Quasi-cyclic LDPC encoder based on shared mechanism in deep space communication |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180619 Termination date: 20190130 |