CN106982067A - Quasi-cyclic LDPC encoder based on check matrix in DTMB - Google Patents
Quasi-cyclic LDPC encoder based on check matrix in DTMB Download PDFInfo
- Publication number
- CN106982067A CN106982067A CN201710235937.0A CN201710235937A CN106982067A CN 106982067 A CN106982067 A CN 106982067A CN 201710235937 A CN201710235937 A CN 201710235937A CN 106982067 A CN106982067 A CN 106982067A
- Authority
- CN
- China
- Prior art keywords
- matrix
- vector
- circular
- accumulator
- 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.)
- Withdrawn
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1148—Structural properties of the code parity-check or generator matrix
- H03M13/116—Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
- H03M13/1162—Array based LDPC codes, e.g. array codes
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
The invention provides the quasi-cyclic LDPC encoder based on check matrix in a kind of DTMB, the encoder includes a kind of backward iterative circuit and 1 vector and the multiplier of high-density matrix.Vector and the multiplier of high-density matrix realize vector and the multiplying of high-density matrix, and backward iterative circuit realizes backward interative computation.Whole cataloged procedure is divided into 3 level production lines, and the first order and the third level use same type of backward iterative circuit, and the second level uses vector and the multiplier of high-density matrix.4/5 code check quasi-cyclic LDPC encoder has the advantages that simple in construction, cost is low, handling capacity is big in the DTMB systems that the present invention is provided.
Description
Technical field
The present invention relates to field of channel coding, the QC-LDPC based on check matrix is compiled in more particularly to a kind of DTMB systems
Code device.
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 up of circular matrix into matrix G and check matrix H, the characteristics of with Circulant Block, therefore is 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 is characterized by its first trip completely.Generally, the first trip of circular matrix is referred to as its generator polynomial.
DTMB standards use the QC-LDPC codes of system form, and its generator matrix G left-half 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) constitute array, it is as follows:
Wherein, I is b × b rank unit matrixs, and 0 is b × b rank full null matrix.G continuous b rows and b row are known respectively as block
Row and block row.From formula (1), 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 c I type shift register in DTMB standards
The serial encoder of accumulator (Type-I Shift-Register-Adder-Accumulator, SRAA-I) circuit.By c
The serial encoder that SRAA-I circuits are constituted, completes coding within e × b clock cycle.The program needs 2 × c × b deposit
Device, c × b two inputs and door and c × b two input XOR gate, in addition it is also necessary to which e × c × b bits ROM stores the life of circular matrix
Into multinomial.The program has two shortcomings:One is to need a large amount of memories, causes circuit cost high;Two be serial input information
Bit, coding rate is slow.
The content of the invention
In DTMB systems the existing implementation of 4/5 code check QC-LDPC encoders have that cost is high, coding rate lacking slowly
Point, for these technical problems, the invention provides a kind of QC-LDPC encoders based on check matrix.
As shown in Fig. 2 the QC-LDPC encoders based on check matrix are mainly made up of 2 parts in DTMB systems:It is backward to change
For circuit and vector and the multiplier of high-density matrix.3 steps of cataloged procedure point are completed:1st step, is calculated using backward iterative circuit
Vectorial pyAnd x;2nd step, vector p is verified using vector and the multiplier calculating section of high-density matrixx;3rd step, using backward
Iterative circuit calculating section verification vector py, so as to obtain verifying vectorial p=(px,py)。
The QC-LDPC coder structures that the present invention is provided are simple, can be under conditions of coding rate is significantly improved, and reduction is deposited
Reservoir, so as to reduce cost, improves handling capacity.
Advantage on the present invention can be further understood with method by following detailed description and accompanying drawings.
Brief description of the drawings
Fig. 1 is the structural representation of near lower triangular check matrix after ranks are exchanged;
Fig. 2 is the QC-LDPC cataloged procedures based on check matrix;
Fig. 3 is backward iterative circuit;
Fig. 4 is the functional block diagram of ring shift left accumulator RLA circuits;
Fig. 5 is a kind of vector and the multiplier of high-density matrix being made up of u RLA circuit;
Fig. 6 summarizes the hardware resource and processing time needed for each coding step of encoder and whole cataloged procedure.
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 clearly 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, and it can be by some positions of unit matrix I ring shift rights
Obtain.The check matrix H of QC-LDPC codes is by c × t b × b rank circular matrixes Hi,k(1≤i≤c, 1≤k≤t, t=e+c)
The following array constituted:
Under normal circumstances, any circular matrix in check matrix H is either full null matrix (w=0) or is displacement square
Battle array (w=1).Make circular matrix Hi,kFirst trip gi,kIt is its generator polynomial.Because H is sparse, gi,kOnly 1
' 1 ', even without ' 1 '.
Corresponding H preceding e blocks row are information vector a, and corresponding rear c blocks row are verification vector p.Using b bits as one section, letter
Breath vector a is divided into e sections, i.e. a=(a1,a2,…,ae);Verification vector p is divided into c sections, i.e. p=(p1,p2,…,pc)。
Enter every trade to check matrix H to exchange and row swap operation, be converted near lower triangular shape HALT, such as Fig. 1 institutes
Show.In Fig. 1, the unit of all matrixes is all b bits rather than 1 bit.A is by (c-u) × e b × b rank circular matrix structure
Into B is made up of (c-u) × u b × b rank circular matrix, and T is made up of the individual b × b ranks circular matrixes of (c-u) × (c-u), C
To be made up of u × e b × b rank circular matrix, D is made up of u × u b × b rank circular matrix, E be by u × (c-u) individual b ×
B ranks circular matrix is constituted.T is lower triangular matrix, and u reflects check matrix HALTWith the degree of closeness of lower triangular matrix.In Fig. 1
In, matrix A and C corresponding informances vector a, matrix B part verification vector p corresponding with Dx, matrix T and E then correspond to remaining school
Test vectorial py.P=(px,py).Above-mentioned matrix and vector meet following relation:
px T=Φ (ET-1AaT+CaT) (3)
py T=T-1(AaT+Bpx T) (4)
Wherein, Φ=(ET-1B+D)-1, subscriptTWith-1Transposition is represented respectively and inverse.It is well known that circular matrix it is inverse, multiply
Product and be still circular matrix.Therefore, Φ is also the array being made up of circular matrix.Although matrix E, T, B and D are sparse
Matrix, but Φ is no longer sparse but highdensity under normal circumstances.
Make qT=T–1AaT, xT=EqT+CaTAnd px T=Φ xT(or px=x ΦT).So, formula (3) and (4) can be changed into:
With
[A B T][a px py]T=0 (6)
Because two matrixes in formula (5) and (6) are all lower triangular matrix as T, x and formula (6) in formula (5)
In pyThe calculation of backward iteration can all be used.
If px=0, then py T=T–1AaT=qT, and formula (5) is rewritable is
Wherein,
V=[a px py x] (8)
If that is, pxIt is initialized as complete zero, then x can also be calculated by formula (7).Reset matrix X diagonal
Upper all unit matrixs, can be obtained
Contrast (10) and Fig. 1 are visible, and H ' is fewer than H nonzero circle matrixes.
Deployable formula (7) is such as next group of equation:
Obviously, formula (6) is a part for formula (11), therefore, and formula (7) also can be used to calculate py。
From the above discussion, a kind of QC-LDPC cataloged procedures based on three class pipeline can be provided, as shown in Figure 2.Φ is related to
And vector and the multiplication of high-density matrix, and X is related to backward iterative calculation.The second level uses vector and the multiplication of high-density matrix
Device realizes px=x ΦT.Because X is lower triangular matrix, same type of backward iteration electricity can be used in the first order and the third level
Road calculates x and p respectivelyy.In the first order, pxIt is initialized to complete zero, pyActually q;In the third level, pxAnd pyIt is respective reality
Actual value, and x need not be calculated.
Make v=(v1,v2,…,vt+u), wherein, each section of vkAll it is v continuous b bits composition, 1≤k≤t+u.By formula
(7) understood with Fig. 1, [pyX]=(vt–c+u+1,vt–c+u+2,…,vt+u).With vt–c+u+i=vi′Exemplified by, wherein, i '=t-c+u+i,
1≤i≤c, t-c+u+1≤i '≤t+u.For given QC-LDPC codes, i ' changes synchronous with i.Because lower triangular matrix X is
Derived from from H, so Hi,i′=I, and work as k>During i ', Hi,k=0.From formula (7), X i-th piece of row and vTProduct meet
Nonzero circle matrix Hi,kRing shift right digit relative to b × b rank unit matrixs is si,k, wherein, 0≤si,k<B,
Assuming that have N number of nonzero circle matrix in H ' i-th piece of row, their block row number be respectively k1, k2 ..., kN, and 1≤k1<k2
<…<kN<i′.So, formula (12) is changed into
In other words
Wherein, subscriptrs(s)Withls(s)Represent respectively to matrix (or vector) ring shift right or ring shift left s.
If vi′Calculated successively by formula (14) according to i ' ascending orders, then pyIt can be calculated paragraph by paragraph with x.The backward iteration mistake
Journey circuit can be realized as shown in Figure 3.The backward iterative circuit is by 1 barrel shifter, 3 accumulators, 2 delayers, 2
Individual comparator, 1 multiplexer, 1 piece of read-only storage (ROM) and 1 piece of random access storage device (RAM) composition.In figure 3, bucket
Shape shift unit uses bipartite structure and streamline mechanism, and inherent delay is τ clock cycle, wherein, τ={ log2B } represent that τ is
Not less than log2B smallest positive integral.Barrel shifter is to some positions of b bit number ring shift lefts, and accumulator 1 is to barrel shift
The output of device is added up.As shown in figure 3, all nonzero circle matrixes, i.e. H in H '1,k1、H1,k2、…、H1,kN、H2,k1、
H2,k2、…、Hi,kN、Hi+1,k1、…、Hc,kNBlock row number and carry digit block-by-block row be stored in ROM.Generally, Hi,kNSubscript
KN is more than Hi+1,k1Subscript k1.Therefore, when the source address k changes that ROM is exported are small, destination address i ' and block line number i in formula (14)
Should Jia 1 simultaneously.At the same time, the content of accumulator 1, i.e. destination operand vi′It is written into RAM, is then cleared, to count
Calculate next destination operand.Delayer 1 is delayed 1 clock cycle, and it coordinates with comparator 1 judges whether k diminishes.Delayer
2 τ clock cycle of delay were to compensate for the inherent delay of barrel shifter.Accumulator 3 produces destination address i '.RAM according to
The source address k output source operands v of ROM outputsk, destination operand vi′Write destination address i '.
Theoretically, in formula (14), source address k is necessarily less than destination address i '.In fact, because delayer 2 prolongs
When τ clock cycle, it is possible that k >=i '.When this happens, the v of RAM outputskIt is invalid, because vi′
Do not calculate also, let alone vk.As k >=i ', ROM pause output new datas, and the number of feeding barrel shifter is not vk
But 0.According to the output of comparator 2, accumulator 2 produces ROM address, and multiplexer is from vkWith 0 in alternative give barrel-shaped shifting
Position device.
In the third level, if B preceding R blocks row are complete zero, then pyPreceding R sections without calculating because these sections
The p that exactly equal to first order is calculatedyPreceding R sections.Again because in the third level x need not be calculated, thus the third level without using
H ' preceding R blocks row and rear u blocks row.Assuming that in H ' and its middle (c-R-u) block row has α and β nonzero circle matrix respectively.
Due to there is path delay, x and p is calculated in first and the third levelyThe total time lower limit spent is (τ of alpha+beta+2) the individual clock cycle.
For 4/5 code check QC-LDPC codes in DTMB systems, α and β are 276 and 225 respectively.
If only considering the resource consumption of the chief component such as ROM, RAM, barrel shifter and accumulator 1 in Fig. 3, that
The backward iterative circuit needs τ b triggers, b two input XOR gates, the RAM and ({ log of (t+u) b bits2t}+
{log2B }) ROM of β bits.
Vector p is calculated using backward iterative circuityAnd the step of x is as follows:
1st step, resets accumulator 1 and accumulator 2, and initialization accumulator 3 is i '=t-c+u+1;
2nd step, the address that ROM is produced according to accumulator 2 exports source address k and carry digit si,k;
3rd step, RAM exports source operand v according to source address kk, comparator 2 judge source address k whether be less than destination address
I ', if k<I ', then the output of comparator 21, otherwise, and the output of comparator 20, delayer 1 coordinates with comparator 1 judges whether k diminishes,
If diminishing, the output of comparator 11, otherwise, the output of comparator 10, the comparator 1 of 3 pairs of τ clock cycle of delay of accumulator are exported
Added up, produce destination address i ';
4th step, according to the output of comparator 2, accumulator 2 produces ROM addresses, and multiplexer is from vkWith 0 in alternative give
Barrel shifter, if the output of comparator 2 is 1, accumulator 2 is incremented by ROM addresses, and multiplexer is vkGive barrel shifter,
Otherwise, the holding ROM of accumulator 2 addresses are constant, and multiplexer gives barrel shifter 0;
5th step, output ring shift left s of the barrel shifter to multiplexeri,kPosition, output of the accumulator 1 to barrel shifter
Added up, when delayer 2 is output as 1, the content of accumulator 1 is destination operand vi′, vi′It is written into RAM mesh
Address i ' in, at the same time, accumulator 1 is cleared, to calculate next destination operand;
6th step, repeat step 2~5, until [pyX]=(vt–c+u+1,vt–c+u+2,…,vt+u) be stored in paragraph by paragraph in RAM.
By formula (7), Fig. 1 and v=(v1,v2,…,vt+u) understand, px=(vt–c+1,vt–c+2,…,vt–c+u) and x=(vt+1,
vt+2,…,vt+u)。px T=Φ xTIt is equivalent to px=x ΦT.Make x=(x1,x2,…,xu×b).Define u bit vectors sn=(xn,
xn+b,…,xn+(u-1)×b), wherein 1≤n≤b.Make Φj(1≤j≤u) is by ΦTJth block row in the generation of all circular matrixes
U × b rank matrixes that multinomial is constituted.Then have
vt-c+j=(... ((0+s1Φj)ls(1)+s2Φj)ls(1)+…+sbΦj)ls(1) (15)
A kind of ring shift left accumulator (Rotate-Left-Accumulator, RLA) circuit can obtain by formula (15), such as
Shown in Fig. 4.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 storage (Read-Only Memory, ROM) of b bits.B bit registers R1,
R2,…,RuIt is respectively used to buffer the array section v of vector xt+1,vt+2,…,vt+u, b bit registers Ru+jFor storing pxVerification
Section vt–c+j.1 RLA circuit counting vector vt–c+jNeed b clock cycle.
For DTMB systems, p is calculated simultaneously using u=2 RLA circuitx=(vt–c+1,vt–c+2,…,vt–c+u) it is a kind of
Reasonable plan, vector and the multiplier of high-density matrix as shown in Figure 5.Vector and the multiplier of high-density matrix are looked into by u
Look for table L1,L2,…,Lu, 2u b bit registers R2,1,R2,2,…,R2,2uWith the u input XOR gate X of b positions two2,1,X2,2,…,
X2,uComposition.Look-up table L1,L2,…,LuVariable u bit vectors and fixed matrix Φ are stored respectively1,Φ2,…,ΦuInstitute
It is possible to product, register R2,1,R2,2,…,R2,uIt is respectively used to buffer the array section v of vector xt+1,vt+2,…,vt+u, register
R2,u+1,R2,u+2,…,R2,2uIt is respectively used to store pxVerification section vt–c+1,vt–c+2,…,vt–c+u.U RLA circuit need to use ub
Individual two inputs XOR gate, 2uThe ROM of ub bits and 2ub register.U RLA circuit countings vector pxNeed b clock cycle.
Vector p is calculated using vector and the multiplier of high-density matrixxThe step of it is as follows:
1st step, resets register R2,u+1,R2,u+2,…,R2,2u, input vector section vt+1,vt+2,…,vt+u, they are distinguished
It is stored in register R2,1,R2,2,…,R2,uIn;
2nd step, register R2,1,R2,2,…,R2,uRing shift left 1 time, XOR gate X simultaneously2,1,X2,2,…,X2,uIt is right respectively
Look-up table L1,L2,…,LuOutput and register R2,u+1,R2,u+2,…,R2,2uContent carry out XOR, XOR result circulated
Move to left and be stored back to register R after 1 time respectively2,u+1,R2,u+2,…,R2,2u;
3rd step, repeats the 2nd step b-1 times, after the completion of, register R2,u+1,R2,u+2,…,R2,2uThe content of storage is school respectively
Test a section vt–c+1,vt–c+2,…,vt–c+u, they constitute part verification vector px。
The invention provides a kind of QC-LDPC coding methods based on check matrix, it is adaptable to 4/5 yard in DTMB systems
Rate QC-LDPC codes, its coding step is described as follows:
1st step, vector p is calculated using backward iterative circuityAnd x;
2nd step, vector p is verified using vector and the multiplier calculating section of high-density matrixx;
3rd step, vector p is verified using backward iterative circuit calculating sectiony, so as to obtain verifying vectorial p=(px,py)。
When Fig. 6 summarizes hardware resource consumption and the processing needed for each coding step of encoder and whole cataloged procedure
Between.
It is not difficult to find out from Fig. 6, when streamline is full of, whole cataloged procedure about needs max (α+τ, b, β+τ)=293 altogether
Clock cycle, much smaller than the e × b=6096 clock cycle needed for the serial encoding method based on c SRAA-I circuit.
The existing solution of 4/5 code check QC-LDPC encoders needs e × c × b=67056 bits in DTMB standards
ROM, and the present invention needs ({ log2t}+{log2b})(α+β)+2uUb=8179 bits ROM.
As fully visible, 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 foregoing is only a specific embodiment of the invention, 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 be expected without creative work
Change or replace, should all be included within the scope of the present invention.Therefore, protection scope of the present invention should be with claims
The protection domain limited is defined.
Claims (4)
1. the quasi-cyclic LDPC encoder based on check matrix in a kind of DTMB, the check matrix H of 4/5 code check quasi-cyclic LDPC code
It 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 verify square
Battle array H is exchanged by ranks and is transformed near lower triangular shape, can be divided into 6 submatrixs,A is by (c-u)
× e b × b ranks circular matrix is constituted, and B is made up of (c-u) × u b × b rank circular matrix, and lower triangular matrix T is by (c-
U) the individual b × b ranks circular matrixes of × (c-u) are constituted, and C is made up of u × e b × b rank circular matrix, and D is by u × u b × b rank
Circular matrix is constituted, and E is made up of the individual b × b ranks circular matrixes of u × (c-u), wherein, u=2, Φ=(ET-1B+D)-1It is by u
× u b × b ranks circular matrix is constituted, ΦjIt is by ΦTJth block row in u × b for constituting of all circular matrix generator polynomials
Rank matrix, wherein, subscriptTWith-1Transposition and inverse, 1≤j≤u are represented respectively,Fewer than H nonzero circles
Matrix, is by c × t b × b rank circular matrixes Hi,kConstitute, wherein, I is unit matrix, and 0 is full null matrix, 1≤i≤c, 1≤
K≤t, i '=t-c+u+i, t-c+u+1≤i '≤t+u, nonzero circle matrix Hi,kCirculation relative to b × b rank unit matrixs is right
Carry digit is si,k, wherein, 0≤si,k<B, A and C corresponding informance vector a, matrix B part verification vector p corresponding with Dx, matrix
T and E then correspond to remaining verification vector py, verification vector p=(px,py), XvT=0, wherein,V=[a
px pyX], using b bits as one section, vector v is divided into t+u sections, i.e. v=(v1,v2,…,vt+u), then px=(vt–c+1,
vt–c+2,…,vt–c+u), py=(vt–c+u+1,vt–c+u+2,…,vt+u), x=(vt+1,vt+2,…,vt+u), it is characterised in that it is described
Encoder is included with lower component:
Backward iterative circuit, by 1 barrel shifter, 3 accumulators, 2 delayers, 2 comparators, 1 multiplexer, 1 piece
All nonzero circle matrixes, i.e. H in ROM and 1 block RAM composition, H '1,k1、H1,k2、…、H1,kN、H2,k1、H2,k2、…、Hc,kNBlock
It is stored in ROM, for calculating vectorial p row number and carry digit block-by-block rowyAnd x, wherein, 1≤k1<k2<…<kN<i′;
Vector and the multiplier of high-density matrix, by u look-up table L1,L2,…,Lu, 2u b bit registers R2,1,R2,2,…,
R2,2uWith the u input XOR gate X of b positions two2,1,X2,2,…,X2,uComposition, for calculating section verification vector px, look-up table L1,
L2,…,LuVariable u bit vectors and fixed matrix Φ are stored respectively1,Φ2,…,ΦuBe possible to product.
2. the quasi-cyclic LDPC encoder based on check matrix in a kind of DTMB according to claim 1, it is characterised in that
The backward iterative circuit calculates vector pyAnd the step of x is as follows:
1st step, resets accumulator 1 and accumulator 2, and initialization accumulator 3 is i '=t-c+u+1,;
2nd step, the address that ROM is produced according to accumulator 2 exports source address k and carry digit si,k;
3rd step, RAM exports source operand v according to source address kk, comparator 2 judge source address k whether be less than destination address i ', if
k<I ', then the output of comparator 21, otherwise, and the output of comparator 20, delayer 1 coordinates with comparator 1 judges whether k diminishes, if becoming
Small, then the output of comparator 11, otherwise, the output of comparator 10, the output of comparator 1 of 3 pairs of τ clock cycle of delay of accumulator are carried out
It is cumulative, destination address i ' is produced, wherein, τ={ log2B } represent that τ is no less than log2B smallest positive integral, barrel shifter is consolidated
It is τ clock cycle to have delay;
4th step, according to the output of comparator 2, accumulator 2 produces ROM addresses, and multiplexer is from vkWith 0 in alternative give barrel-shaped shifting
Position device, if the output of comparator 2 is 1, accumulator 2 is incremented by ROM addresses, and multiplexer is vkBarrel shifter is given, otherwise, is tired out
Plus the holding ROM of device 2 addresses are constant, multiplexer gives barrel shifter 0;
5th step, output ring shift left s of the barrel shifter to multiplexeri,kPosition, output of the accumulator 1 to barrel shifter is carried out
Cumulative, when delayer 2 is output as 1, the content of accumulator 1 is destination operand vi′, vi′It is written into RAM destination
In the i ' of location, at the same time, accumulator 1 is cleared, to calculate next destination operand;
6th step, repeat step 2~5, until [pyX]=(vt–c+u+1,vt–c+u+2,…,vt+u) be stored in paragraph by paragraph in RAM.
3. the quasi-cyclic LDPC encoder based on check matrix in a kind of DTMB according to claim 1, it is characterised in that
The vector and the multiplier of high-density matrix calculate vector pxThe step of it is as follows:
1st step, resets register R2,u+1,R2,u+2,…,R2,2u, input vector section vt+1,vt+2,…,vt+u, they are stored in respectively
Register R2,1,R2,2,…,R2,uIn;
2nd step, register R2,1,R2,2,…,R2,uRing shift left 1 time, XOR gate X simultaneously2,1,X2,2,…,X2,uRespectively to searching
Table L1,L2,…,LuOutput and register R2,u+1,R2,u+2,…,R2,2uContent carry out XOR, XOR result is by ring shift left 1
Register R is stored back to after secondary respectively2,u+1,R2,u+2,…,R2,2u;
3rd step, repeats the 2nd step b-1 times, after the completion of, register R2,u+1,R2,u+2,…,R2,2uThe content of storage is verification section respectively
vt–c+1,vt–c+2,…,vt–c+u, they constitute part verification vector px。
4. the quasi-cyclic LDPC coding method based on check matrix in a kind of DTMB, the verification square of 4/5 code check quasi-cyclic LDPC code
Battle array H 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, verification
Matrix H is exchanged by ranks and is transformed near lower triangular shape, can be divided into 6 submatrixs,A is by (c-
U) × e b × b ranks circular matrix is constituted, and B is made up of (c-u) × u b × b rank circular matrix, lower triangular matrix T be by
(c-u) the individual b × b ranks circular matrixes of × (c-u) are constituted, and C is made up of u × e b × b rank circular matrix, D be by u × u b ×
B ranks circular matrix is constituted, and E is made up of the individual b × b ranks circular matrixes of u × (c-u), wherein, u=2, Φ=(ET-1B+D)-1It is
It is made up of u × u b × b rank circular matrix, ΦjIt is by ΦTJth block row in the u that constitutes of all circular matrix generator polynomials
× b rank matrixes, wherein, subscriptTWith-1Transposition and inverse, 1≤j≤u are represented respectively,Fewer than H non-zeros are followed
Ring matrix, is by c × t b × b rank circular matrixes Hi,kConstitute, wherein, I is unit matrix, and 0 is full null matrix, 1≤i≤c, 1
≤ k≤t, i '=t-c+u+i, t-c+u+1≤i '≤t+u, nonzero circle matrix Hi,kRelative to the circulation of b × b rank unit matrixs
It is s to move to right digiti,k, wherein, 0≤si,k<B, A and C corresponding informance vector a, matrix B part verification vector p corresponding with Dx, square
Battle array T and E then corresponds to remaining verification vector py, verification vector p=(px,py), XvT=0, wherein,V=
[a px pyX], using b bits as one section, vector v is divided into t+u sections, i.e. v=(v1,v2,…,vt+u), then px=(vt–c+1,
vt–c+2,…,vt–c+u), py=(vt–c+u+1,vt–c+u+2,…,vt+u), x=(vt+1,vt+2,…,vt+u), it is characterised in that it is described
Coding method comprises the following steps:
1st step, vector p is calculated using backward iterative circuityAnd x;
2nd step, vector p is verified using vector and the multiplier calculating section of high-density matrixx;
3rd step, vector p is verified using backward iterative circuit calculating sectiony, so as to obtain verifying vectorial p=(px,py)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710235937.0A CN106982067A (en) | 2017-04-12 | 2017-04-12 | Quasi-cyclic LDPC encoder based on check matrix in DTMB |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710235937.0A CN106982067A (en) | 2017-04-12 | 2017-04-12 | Quasi-cyclic LDPC encoder based on check matrix in DTMB |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106982067A true CN106982067A (en) | 2017-07-25 |
Family
ID=59345127
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710235937.0A Withdrawn CN106982067A (en) | 2017-04-12 | 2017-04-12 | Quasi-cyclic LDPC encoder based on check matrix in DTMB |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106982067A (en) |
-
2017
- 2017-04-12 CN CN201710235937.0A patent/CN106982067A/en not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102882532B (en) | LDPC (low density parity check) encoder in CMMB (China mobile multimedia broadcasting) based on rotate right accumulation and encoding method | |
CN102857240A (en) | LDPC (Low Density Parity Check) encoder and encoding method based on circulation shift right accumulation in deep space communication | |
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 | |
CN106982067A (en) | Quasi-cyclic LDPC encoder based on check matrix in DTMB | |
CN106982069A (en) | Quasi-cyclic LDPC encoder based on check matrix in CMMB | |
CN106982064A (en) | Quasi-cyclic LDPC encoder based on check matrix in CDR | |
CN106961281A (en) | Quasi-cyclic LDPC encoder based on shared mechanism in DTMB | |
CN106982062A (en) | Quasi-cyclic LDPC encoder based on shared mechanism in WPAN | |
CN106982066A (en) | Quasi-cyclic LDPC encoder based on shared mechanism in CDR | |
CN106982068A (en) | Quasi-cyclic LDPC encoder based on shared mechanism in CMMB | |
CN106982065A (en) | Quasi-cyclic LDPC encoder based on check matrix | |
CN106953645A (en) | Quasi-cyclic LDPC encoder based on shared mechanism in deep space communication | |
CN104579366A (en) | High-speed QC (quasi-cyclic)-LDPC (low-density parity-check) encoder on basis of three levels of flow lines in WPAN (wireless personal area network) | |
CN103268214A (en) | Quasi-cyclic matrix high-speed multiplier in deep space communication based on lookup table | |
CN106571830A (en) | LDPC encoder for secondary level full parallel input ring shift left in deep space communication | |
CN106452459A (en) | Two-level all-parallel input ring shift left LDPC coder | |
CN103236849B (en) | Based on quasi cyclic matrix serial multiplier in the DTMB of shared memory mechanism | |
CN103269226B (en) | Share quasi-cyclic LDPC serial encoder in the near-earth communication of memory mechanism | |
CN105141319A (en) | High-speed QC-LDPC encoder based on three-stage pipeline in deep space communication | |
CN107196663A (en) | Second part inputs the cumulative LDPC encoder moved to left parallel in CDR | |
CN104539297B (en) | High speed QC-LDPC encoders based on four level production lines in DTMB | |
CN106788457A (en) | Second part is input into the cumulative LDPC encoder for moving to left parallel in DTMB | |
CN107181492A (en) | Second part inputs the cumulative LDPC encoder moved to left parallel in WPAN |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | 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: 20170725 |