CN106953646A - Quasi-cyclic LDPC encoder based on shared mechanism - Google Patents
Quasi-cyclic LDPC encoder based on shared mechanism Download PDFInfo
- Publication number
- CN106953646A CN106953646A CN201710235853.7A CN201710235853A CN106953646A CN 106953646 A CN106953646 A CN 106953646A CN 201710235853 A CN201710235853 A CN 201710235853A CN 106953646 A CN106953646 A CN 106953646A
- Authority
- CN
- China
- Prior art keywords
- matrix
- vector
- rank
- accumulator
- circular
- 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
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Complex Calculations (AREA)
Abstract
The invention provides a kind of quasi-cyclic LDPC encoder based on shared mechanism, the encoder includes 1 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 stages, and first stage and phase III share backward iterative circuit, and second stage uses vector and the multiplier of high-density matrix.The quasi-cyclic LDPC encoder that the present invention is provided has the advantages that simple in construction, low cost, handling capacity are big.
Description
Technical field
The present invention relates to field of channel coding, the QC-LDPC based on shared mechanism is compiled in more particularly to a kind of communication system
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.
Communication system generally uses the QC-LDPC codes of system form, and its generator matrix G left-half is a unit square
Battle array, 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, following institute
Show:
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.
At present, what QC-LDPC codes were widely used is to be based on c I types shift register plus accumulator (Type-I Shift-
Register-Adder-Accumulator, SRAA-I) circuit serial encoder.What is be made up of c SRAA-I circuit is serial
Encoder, completes coding within e × b clock cycle.The program needs 2 × c × b register, c × b two input and door
With c × b two input XOR gate, in addition it is also necessary to which e × c × b bits ROM stores the generator polynomial of circular matrix.The program has two
Individual shortcoming:One is to need a large amount of memories, causes circuit cost high;Two be serial input information bit, and coding rate is slow.
The content of the invention
The existing implementation of QC-LDPC encoders haves the shortcomings that high cost, coding rate are slow in communication system, for
These technical problems, the invention provides a kind of QC-LDPC encoders based on shared mechanism.
As shown in Fig. 2 the QC-LDPC encoders based on shared mechanism are mainly made up of 2 parts in communication system: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 shared mechanism;
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 treatment 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)
In 1, Φ=(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 in three stages can be provided, as shown in Figure 2.Φ is related to vector
With the multiplication of high-density matrix, and X is related to backward iterative calculation.Second stage is real using vector and the multiplier of high-density matrix
Existing px=x ΦT.Because X is lower triangular matrix, first and the phase III share same backward iterative circuit calculate respectively x and
py.In the first stage, pxIt is initialized to complete zero, pyActually q;In phase III, pxAnd pyIt is respective actual value, and nothing
X need to 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 be from
H derives from, 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, subscript rs (s) and ls (s) are represented to matrix (or vector) ring shift right or ring shift left s respectively.
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 phase III, if B preceding R blocks row are complete zero, then pyPreceding R sections without calculating because these
Section is exactly equal to the p calculated the first stageyPreceding R sections.Again because x need not be calculated in the phase III, therefore in the phase III
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 β non-zero respectively
Circular matrix.Due to there is path delay, x and p is calculated in first and phase IIIyThe total time lower limit spent is (τ of alpha+beta+2)
The individual clock cycle.
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.
Since u is very small, then calculate p simultaneously using u 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 shared mechanism, it is adaptable to the QC- in communication system
LDPC code, 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, whole cataloged procedure about needs (τ of alpha+beta+2+b) the individual clock cycle altogether, much smaller than based on c
E × b the clock cycle needed for the serial encoding method of SRAA-I circuits.
The existing solution of QC-LDPC encoders needs e × c × b bit ROM in communication system, and the present invention needs
({log2t}+{log2b})β+2uUb bits ROM.Because the usual very littles of u, β be less than b or with the same magnitudes of b, so summation is far small
In e × c × b.
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 of ordinary skill 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. a kind of quasi-cyclic LDPC encoder based on shared mechanism, the check matrix H of quasi-cyclic LDPC code be by c × t b ×
The array that b ranks circular matrix is constituted, wherein, c, t and b are all positive integer, and t=e+c, check matrix H is exchanged by ranks and converted
Into near lower triangular shape, 6 submatrixs can be divided into,A is by (c-u) × e b × b rank circular matrix
Constitute, B is made up of (c-u) × u b × b rank circular matrix, and lower triangular matrix T is followed by the individual b × b ranks of (c-u) × (c-u)
Ring matrix is constituted, and C is made up of u × e b × b rank circular matrix, and D is made up of u × u b × b rank circular matrix, and E is by u
Individual b × b ranks the circular matrixes of × (c-u) are constituted, wherein, u is positive integer, Φ=(ET-1B+D)-1It is to be circulated by u × u b × b rank
Matrix is constituted, ΦjIt is by ΦTJth block row in u × b rank matrixes for constituting of all circular matrix generator polynomials, wherein, on
MarkTWith-1Transposition and inverse, 1≤j≤u are represented respectively,Fewer than H nonzero circle matrixes, are 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,kRing shift right digit relative to b × b rank unit matrixs is si,k, its
In, 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 remainder
Verification vector py, verification vector p=(px,py), XvT=0, wherein,V=[a px pyX], with b ratios
Specially for 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 the encoder is included with bottom
Part:
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. a kind of quasi-cyclic LDPC encoder based on shared mechanism according to claim 1, it is characterised in that after described
Vector p is calculated to 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 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. a kind of quasi-cyclic LDPC encoder based on shared mechanism according to claim 1, it is characterised in that it is described to
The multiplier of amount and high-density matrix calculates 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. a kind of quasi-cyclic LDPC coding method based on shared mechanism, the check matrix H of quasi-cyclic LDPC code is by c × t b
The array that × b ranks circular matrix is constituted, wherein, c, t and b are all positive integer, and t=e+c, check matrix H exchanges change by ranks
Change near lower triangular shape into, 6 submatrixs can be divided into,A is by (c-u) × e b × b rank Cyclic Moment
Battle array is constituted, and B is made up of (c-u) × u b × b rank circular matrix, and lower triangular matrix T is by the individual b × b ranks of (c-u) × (c-u)
Circular matrix is constituted, and C is made up of u × e b × b rank circular matrix, and D is made up of u × u b × b rank circular matrix, and E is
It is made up of the individual b × b ranks circular matrixes of u × (c-u), wherein, u is positive integer, Φ=(ET-1B+D)-1It is by u × u b × b rank
Circular matrix is constituted, ΦjIt is by ΦTJth block row in u × b rank matrixes for constituting of all circular matrix generator polynomials, wherein,
SubscriptTWith-1Transposition and inverse, 1≤j≤u are represented respectively,Fewer than H nonzero circle matrixes, are by c × t
Individual b × b ranks circular matrix 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,kRing shift right digit relative to b × b rank unit matrixs 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
Under verification vector py, verification vector p=(px,py), XvT=0, wherein,V=[a px pyX], with b
Bit is one section, and 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 the coding method includes following
Step:
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 |
---|---|---|---|
CN201710235853.7A CN106953646A (en) | 2017-04-12 | 2017-04-12 | Quasi-cyclic LDPC encoder based on shared mechanism |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710235853.7A CN106953646A (en) | 2017-04-12 | 2017-04-12 | Quasi-cyclic LDPC encoder based on shared mechanism |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106953646A true CN106953646A (en) | 2017-07-14 |
Family
ID=59474452
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710235853.7A Withdrawn CN106953646A (en) | 2017-04-12 | 2017-04-12 | Quasi-cyclic LDPC encoder based on shared mechanism |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106953646A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111092619A (en) * | 2018-10-24 | 2020-05-01 | 爱思开海力士有限公司 | LDPC decoder, semiconductor memory system and operating method thereof |
-
2017
- 2017-04-12 CN CN201710235853.7A patent/CN106953646A/en not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111092619A (en) * | 2018-10-24 | 2020-05-01 | 爱思开海力士有限公司 | LDPC decoder, semiconductor memory system and operating method thereof |
CN111092619B (en) * | 2018-10-24 | 2023-08-08 | 爱思开海力士有限公司 | LDPC decoder, semiconductor memory system and operating method thereof |
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 | |
CN105099467A (en) | QC-LDPC code coding method and device | |
CN102857240A (en) | LDPC (Low Density Parity Check) encoder and encoding method based on circulation shift right accumulation in deep space communication | |
CN106953646A (en) | Quasi-cyclic LDPC encoder based on shared mechanism | |
CN104579366B (en) | High speed QC-LDPC encoder in WPAN based on three class pipeline | |
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 | |
CN106982065A (en) | Quasi-cyclic LDPC encoder based on check matrix | |
CN106982062A (en) | Quasi-cyclic LDPC encoder based on shared mechanism in WPAN | |
CN106953645A (en) | Quasi-cyclic LDPC encoder based on shared mechanism in deep space communication | |
CN106982068A (en) | Quasi-cyclic LDPC encoder based on shared mechanism in CMMB | |
CN106961281A (en) | Quasi-cyclic LDPC encoder based on shared mechanism in DTMB | |
CN106982069A (en) | Quasi-cyclic LDPC encoder based on check matrix in CMMB | |
CN106982066A (en) | Quasi-cyclic LDPC encoder based on shared mechanism in CDR | |
CN106982064A (en) | Quasi-cyclic LDPC encoder based on check matrix in CDR | |
CN106982067A (en) | Quasi-cyclic LDPC encoder based on check matrix in DTMB | |
CN103268214A (en) | Quasi-cyclic matrix high-speed multiplier in deep space communication based on lookup table | |
CN104579365B (en) | High speed QC-LDPC encoders based on four level production lines | |
CN104539297B (en) | High speed QC-LDPC encoders based on four level production lines in DTMB | |
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 | |
CN104579364B (en) | High speed QC-LDPC encoders based on four level production lines in CDR | |
CN106656206A (en) | Two-level full parallel input ring left shift LDPC encoder in CDR | |
CN104518803B (en) | High speed QC-LDPC encoders based on four level production lines in CMMB | |
CN106385264A (en) | Two-level partial parallel inputting, accumulating and left-shifting LDPC encoder |
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: 20170714 |