CN106953646A - Quasi-cyclic LDPC encoder based on shared mechanism - Google Patents

Quasi-cyclic LDPC encoder based on shared mechanism Download PDF

Info

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
Application number
CN201710235853.7A
Other languages
Chinese (zh)
Inventor
刘明璐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
RONGCHENG DINGTONG ELECTRONIC INFORMATION TECHNOLOGY Co Ltd
Original Assignee
RONGCHENG DINGTONG ELECTRONIC INFORMATION TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by RONGCHENG DINGTONG ELECTRONIC INFORMATION TECHNOLOGY Co Ltd filed Critical RONGCHENG DINGTONG ELECTRONIC INFORMATION TECHNOLOGY Co Ltd
Priority to CN201710235853.7A priority Critical patent/CN106953646A/en
Publication of CN106953646A publication Critical patent/CN106953646A/en
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes

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

Quasi-cyclic LDPC encoder based on shared mechanism
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 respectively12,…,Φ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 respectively12,…,Φ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)。
CN201710235853.7A 2017-04-12 2017-04-12 Quasi-cyclic LDPC encoder based on shared mechanism Withdrawn CN106953646A (en)

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)

* Cited by examiner, † Cited by third party
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

Cited By (2)

* Cited by examiner, † Cited by third party
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