CN103220002B - A kind of quasi-cyclic LDPC code constructing method eliminating decoder access conflict - Google Patents
A kind of quasi-cyclic LDPC code constructing method eliminating decoder access conflict Download PDFInfo
- Publication number
- CN103220002B CN103220002B CN201210016995.1A CN201210016995A CN103220002B CN 103220002 B CN103220002 B CN 103220002B CN 201210016995 A CN201210016995 A CN 201210016995A CN 103220002 B CN103220002 B CN 103220002B
- Authority
- CN
- China
- Prior art keywords
- node
- quasi
- check
- ldpc code
- variable
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Error Detection And Correction (AREA)
Abstract
The present invention relates to the building method of a kind of quasi-cyclic LDPC code, quasi-cyclic LDPC code to be constructed is represented by tree graph model Tanner figure, its quasi-cyclic check matrix parameter is, the size p × p of size m of basic matrix × n, Block matrix, basic matrix variable node dimension distribution (dv);Its step includes, 1) it is distributed (d according to described basic matrix variable node dimensionv) determine check-node homogenization dimension distribution (dc), it is distributed (d according to described dimensionc) in Tanner figure, add all n variable nodes;2) adding m check-node in Tanner figure line by line and selecting to select variable node in advance, being determined the variable node reaching weight preset value by sideline weight, the variable node of described determination is an alternative set;In described alternative set, selection variables node degree of evading (ADeg) is equal to or more than time delay (DLY) point;3) according to step 2) obtained and a little determined sideline weight in Tanner figure, add corresponding edge in Tanner, obtain the quasi-cyclic LDPC of construction, code according to this Tanner figure, complete the construction of quasi-cyclic LDPC code.
Description
Technical field
The present invention relates to the building method of linear error correction code, hierarchical decoder access conflict can be eliminated particularly to a kind of
Use the building method of the quasi-cyclic LDPC code setting up check-node mode line by line.
Background technology
Initial LDPC (low-density check low-density parity-check, LDPC) decoding algorithm be by
Gallager proposes, and its confidence spread mode is the scheduling that floods (flooding schedule).Mansour et al. proposes
The confidence spread mode of a kind of Turbo decoding, the circulation way that the people such as Hocevar is this updates confidence level based on serial is called
Hierarchical decoder algorithm (Layered Decoding).Hierarchical decoder algorithm not losing performance and can reduce computational complexity
Meanwhile, make the iterations needed for decoding reduce half, therefore suffer from extensive concern.
Block row hierarchical decoder algorithm uses all row concurrent operations in block row, it is adaptable to quasi-cyclic LDPC code (Quasi-
CyclicLDPC, QC-LDPC), use layering confidence spread mode, popular in recent years.Prior art is put for this
Reliability circulation way proposes different ways of realization.When hardware realizes, the general minimum using correction and (Min-Sum) calculate
Method is combined with hierarchical algorithm, to reduce complexity.Pipelining typically to be used improves the throughput of hierarchical decoder, but same
When introduce access conflict problem.Bibliography (Sun Y, Karkooti M, Cavallaro J.High throughput,
Parallel, scalable LDPC encoder/decoder architecture for OFDM systems.Design,
Applications, Integration and Software, 2006 IEEE Dallas/CAS Workshop on,
Oct.2006:39-42) add idle beat in a pipeline and solve access conflict problem, but reduce decoder and handle up
Rate;Bibliography (Bhatt T, Sundaramurthy V, Stolpman V, et al.Pipelined Block-Serial
Decoder Architecture for Structured LDPC Codes.Speech and Signal Processing,
2006 IEEE International Conference on, 2006:225-228) in add channel information mirror image RAM, by counting
Calculate external information knots modification approximation and update channel information, improve pipeline operation efficiency, but performance is lost.Bibliography
(Rovini M, Gentile G, Rossi F, et al.A minimum-latency block-serial architecture
of a decoder for IEEE 802.11n LDPC codes.IFIP International Conference on
Very Large Scale Integration, 2007:236-241) in the scheduling order of operation of each piece of row and check node
In reason device, channel information input and output order, make the order of operation of adjacent computing row mate, can only reduce idle waiting as far as possible;
Bibliography (Jin Jie, Tsui Chi-ying.An Energy Efficient Layered Decoding
Architecture for LDPC Decoder.IEEE Trans.on VLSI, 2010,18 (8): 1185-1195) middle utilization
The feature of access conflict, utilizes coupling as much as possible to reduce reading RAM number of channel, reduces power consumption, but be also limited by school
Test matrix structure;Bibliography (Marchand C, Dore J B, Conde-Canencia L, et al.Conflict
Resolution for pipelined layeredLDPC decoders.Signal Processing Systems, 2009:
In 220-225), QC-LDPC basic matrix is divided into the little basic matrix of S*S, then rearranges, by resource contention between streamline
Looseization, but it is reduction of decoder degree of parallelism, make throughput reduce.
All solve access conflict problem above with reference to the method in document in varying degrees from design of encoder angle, but
All being limited to LDPC check matrix structure, design process complexity does not but ensure that and collision problem is completely eliminated, and needs to pay simultaneously
Go out resource or speed or performance cost.In the realization of row hierarchical decoder, the basic reason of access conflict is not account for this in code design
One problem.
Content of the invention
For now methodical deficiency, the present invention proposes and a kind of is avoided that row hierarchical decoder algorithmic variable access conflict
LDPC code building method, it is to avoid this difficult point in design of encoder, so that the realization simplification of hierarchical decoder, speed carry
Height, avoids as reducing the hardware resource that access conflict need to be paid more simultaneously.The present invention is a kind of eliminates decoder access conflict
The scheme of quasi-cyclic LDPC code constructing method is as follows, the building method of a kind of quasi-cyclic LDPC code, quasi-cyclic LDPC to be constructed
Code is represented by tree graph model Tanner figure, and its quasi-cyclic check matrix parameter is, size m of basic matrix × n, Block matrix
Size p × p, basic matrix variable node dimension distribution (dv);Its step includes,
1) it is distributed (d according to described basic matrix variable node dimensionv) determine check-node homogenization dimension distribution (dc), root
It is distributed (d according to described dimensionc) in Tanner figure, add all n variable nodes;
2) in Tanner figure, add m check-node line by line, and launch dendrogram with check-node, select to select change in advance
Amount node, is determined the variable node reaching weight preset value by sideline weight, and the variable node of described determination is an alternative collection
Close;Screening in described alternative set can make degree of evading between adjacent rows (ADeg) be equal to or more than decoding processing delay
(DLY) variable node, forms destination node;
3) according to step 2) obtained destination node determines sideline weight in Tanner figure, adds corresponding in Tanner
Limit, obtains the quasi-cyclic LDPC code of construction, completes the construction of quasi-cyclic LDPC code according to this Tanner figure.
The method that variable node is selected in selection in advance is, if the current dimension of described check-node is equal to 0, then from variable node
In randomly choose a node as purpose variable node connect, directly in Tanner add corresponding edge, the weight in sideline is
One fixed value or random value.
When launching dendrogram with check-node, described check-node dimension set is condition:
Wherein k is row dimension counter, represents and adds which bar limit, di cBeing the dimension of i-th check-node, i is verification
Node.
The step selecting variable node in advance is selected also to include, if continuing cycling through the current dimension of the described check-node of value not
Equal to 0, then launching dendrogram with i-th check-node for root node, chosen distance root node is farthest and column weight distribution increases slow
Variable node alternately node.
Judge that farthest nodal method is, be launched into the tree-shaped subgraph as l for the degree of depth with check-node for root node, until l
The current subgraph variable node set number of layer reaches N, or the variable check-node collection of l+1 layer is combined into sky, with current verification
The variable node that node does not connect is farthest node;If there is not the variable nodes not connected, then the now change in l layer
Amount node is exactly farthest node.
Further, determine that the method that column weight distribution increases slow variable node is, calculate and described pre-select variable node
Each row prostatitis weight and its expected row anharmonic ratio value Rcw, select wherein minimum of a value Rcw_min, therefrom select Rcw≤Rcw_min C,
Wherein C empirical value is 1.5, variable node as selecting variable node in advance.
Further, sideline Weight Determination is, first traversal root node to all paths selecting variable node in advance,
According to
Wherein, w represents the number of plies in current subgraph;pI, jRepresent the limit weight of path process, non-in i.e. corresponding basic matrix
The side-play amount of neutral element;S is the weight in whole path, calculates accumulated path weight s and selects sideline power according to randomly assigne
Weight p0, i.e. meet formula: mod (s-p0, all variable nodes of p) ≠ 0.
Further, decoder processing delay is relevant with concrete hierarchical decoder design, and its degree of evading (ADeg) scope 2~
10, wherein accepted value is 5 or 8.
Further, the computational methods of the degree of evading between adjacent rows (ADeg) are, two row of the adjacent process when decoding
In, the number of the nonzero element of next line common factor of residing row with the neutral element of lastrow.
Use the present invention to propose new code method for designing by the quasi-cyclic LDPC code that the present invention constructs and guarantee a yard structure energy
Avoid UjAccess conflict.CNP first can read in the U of non-recent renewal continuously from CxRAMjValue U4, U25, U28, long-time through 3T
After, it is necessary to the updated U of input the 1st row operation2, U6, U24, but they at least to get to after DLY-3T=2T again
CNP entrance, the code construction process conflict evading of the present invention is constrained to ADeg=5, thus eliminates in advance to U2The visit of equivalent
Ask conflict, so this yard can support the row hierarchical decoder streamline of DLY≤5 without the efficiently decoding of idle waiting ground.Decrease
Unnecessary delay.Decreasing the waste that often row DLY claps, and being not above row dimension, these postpone to be complicated UjScheduling Design is also
It is difficult to elimination.
It is the PEG algorithm promoted that block progressive edge increases (Block-PEG, BPEG) construction algorithm, can be used to construct this
Bright QC-LDPC code.Algorithm (with C-PEG antithesis) on R-PEG line direction is combined with BPEG algorithm, simultaneously at construction algorithm
Middle interpolation ADeg constraints, can construct row to evading block PEG algorithm (Row Direction Conflict
AvoidanceBlock PEG, RCAB-PEG) flow process.
Structured approach described in this invention obtains quasi-cyclic LDPC code, is suitable for classical layering as depicted in figs. 1 and 2 and translates
Code device.The data flow of this decoder is as follows:
1) channel information receiving from channel, is first cached in the middle of memory RAM;All external informations are initialized to 0;
2) from channel information memory, simultaneously serial is taken out in LDPC matrix in a certain layer (p row) corresponding to nonzero element
Channel information, form the data stream that width is p;
3) channel information data stream is through selecting module, then determines according to the side-play amount in quasi-cyclic LDPC code basic matrix
The circulation deviant of parallel data, is then sent through in corresponding p CNP arithmetic element;
4) from external information memory, simultaneously, read the external information corresponding to LDPC this layer of matrix, be input to CNP computing list
In Yuan;
5) CNP arithmetic unit enters row operation according to the channel information receiving and external information, the structure of arithmetic unit such as Fig. 2 institute
Showing, concrete operation is corresponding to row hierarchical decoder algorithm:
A) first channel information deducts external information and obtains the information from variable node to check-node, then enters this information
Row extraction symbol and absolute value, carry out serial XOR and comparison operation with other information corresponding to this row respectively, obtain
The symbol sum of products absolute value minimum of a value of all information of this row and sub-minimum;
B) according to the symbol product obtaining, minimum of a value, sub-minimum and through buffer scheduling information (uji) enter row operation,
External information value after renewal;
C) external information after updating and the information from variable node to check-node obtaining before carry out summation operation,
Channel information after renewal;
6) after completing the confidence spread of p row, continue successively to be iterated computing, until decoding number of times reaches maximum setting
Value or decoding convergence.
The principle of the present invention
1 LDPC code row hierarchical decoder algorithm
Quasi-cyclic LDPC code check matrix (HM×N) corresponding basic matrix is designated as Hbm×n, the corresponding submatrix of the element of basic matrix
It is designated as Blockp×p, wherein m, n represent the number of check-node and variable node in basic matrix respectively, meet M=m × p, N=n
×p。Represent the row dimension of jth row.
Algorithm flow after row hierarchical algorithm is combined with the minimum-sum algorithm of correction is as follows:
(1) Initial Channel Assignment information (Uj) and external information (vij):
vij=0,1≤i≤M, 1≤j≤N (2)
In above formulaWithRepresent the posterior probability of j-th symbol, UjIt is corresponding log-likelihood ratio,At the beginning of it
Beginning value, vijIt is the external information that check-node i passes to variable node j.
(2) confidence spread computing is carried out line by line, renewal external information:
uji=Uj-vij (3)
In above formula, N (i) is the adjacent variable node set of check-node i, N (i) j be N (i) set get rid of node j gained
Set;Symbolic operation is sought in sign () expression, and minimum computing is asked in set by min () expression;α is normalization factor, 0 < α <
1。
(3) update channel information and verify
U′j=uji+v′ij (5)
To all UjMaking decisions and calculate verification formula, if meeting verification relation, then stopping iteration.Otherwise continue to change
In generation, repeat step (2) (3) until meeting verification relation or iterations reaches preset value.
The data access conflict of 2 row hierarchical decoders
The QC-LDPC code of the cramped construction obtaining after being optimized design according to row hierarchical decoder algorithm and traditional design is translated
Code device block diagram is as shown in Figure 1.
CxRAM in Fig. 1 represents channel information UjMemory, ExRAM represents external information vijMemory, Rotation module
Represent to p UjCyclic shift according to needed for QC-LDPC code basic matrix side-play amount is carried out for the updated value.CNP is row layering computing
Device, correspondence realizes formula (3~5), and it realizes structure as shown in Figure 2 in detail.CNP group represents p CNP of concurrent operation, corresponds to
The block row of the p row composition of QC-LDPC code.Select module is used for the U reading from CxRAMjValue and the firm channel information updating it
Between select.After Select module selects, subsequent rows CNP computing U to be used immediately can bejVariable provide be not required to through
Cross the little delay passage of CxRAM.
In the typical CNP design shown in Fig. 2, u in this row can be arranged according to simulated annealing or genetic algorithmjiValue
Input and the order of output scheduling memory (SchRAM), it is achieved channel information UjUpgrade in time.In Fig. 2, M module represents use
ujiSymbol, minimum do Min computing with time minimum equivalence.Module D represents delay, to UqiEtc. seeking viq' logical delay of computing
Mate.There is pipelining delay, when input is v in realizing due to Fig. 2ij, Uj, the not corresponding formula (4 of the output of CNP simultaneously
~5) v shown inij', Uj', therefore it is labeled as viq', Uq’.In general, CNP realizes the calculating of formula (3~5), so Fig. 1
In interface macroscopically still label symbol vij', Uj', represent CNP to vij, UjRenewal computing.
In fig. 2, all U required for certain row is processedjAfter numerical value all inputs CNP, after this row operation is updated
First UjThe typical shortest time (being designated as DLY*T, T is the circuit clock cycle) that value reaches CNP entrance again is analyzed as follows.
SchRAM input M module and the streamline of adder logic thereafter, the used time is 3T, after output will through Select module with
The streamline of Rotation module composition, the used time is 2T, so UjAt least need to postpone at the complete CNP entrance that again reaches of computing
DLY*T=5T.In the design of some other low clock rate, DLY value can reach 2.High in clock rate, or p value is big parallel
Spending in high design, DLY value is up to 10.DLY is the key factor in the design of row hierarchical decoder.
Table 1
The decoder streamline U2 value access conflict that the 1st, 2 row operations all update
Table 2
The decoder streamline U2 value that the 5th, 6 row operations all update
Access Lothrus apterus
Row hierarchical decoder algorithm streamline is that (being then that block-by-block row is parallel to QC-LDPC code) enters row operation, often line by line
Run into the U that next line computing lastrow to be used just has updatedjThe situation of variable.When the operation result of lastrow can not carry in time
Confession, will occur access conflict, and this can be illustrated by Fig. 1, Fig. 2 and Biao 1, it is assumed that DLY=5T.Basic matrix Hb the 2nd row pair of table 1
In formula (3~5) row operation answered, CNP first can read in the U of non-recent renewal continuously from CxRAMjValue U4, U25, U28, through 3T
After Chang Shijian, it is necessary to the updated U of input the 1st row operation2, U6, U24But, they at least will again after DLY-3T=2T
CNP entrance can be reached, thus cause to U2The access conflict of equivalent, so now streamline is forced to insert the 2T free time etc.
Treat beat, cause unnecessary delay.The delay that the LDPC code of different structure causes is different, and when most, often row DLY to be caused claps
Waste, even more than row dimension, these wastes are very considerable, complicated UjScheduling Design also is difficult to eliminate these to postpone, thus
Need to guarantee that a yard structure is avoided that U by new code method for designingjAccess conflict.
The situation can being designed to LDPC code in table 2, basic matrix Hb the 6th row has more than or equal to DLY Uj value and the 5th
Row is avoided, and i.e. has U1, U4, U6, U24, U28 totally 5 (=DLY) individual UjValue and the 5th professional etiquette are kept away, it is possible to when to 6 row operation
Allow CNP at 5 U of inputjValue U1, after U4, U6, U24, U28, then welcomes the just updated U2 value of the 5th row operation, thus flowing water
Line does not needs idle waiting at the 5th row to the 6th row process transition period.In definition back row in nonzero element with previous row non-zero
The element number that element is in different lines is " degree of evading " (Avoidence Degree, ADeg).In such as Fig. 1, the 2nd row is to the 1st
Row degree of evading be 3, and in Fig. 2 the 5th, 6 in the ranks degree of evading be 5.As long as ADeg >=DLY can be avoided to UjThe access punching of variable
Prominent, in order to be sufficiently accurate it may be desired to ADeg=DLY, the neotectonics method that the present invention proposes will use this constraints.In terms of experience DLY value, ADeg
Scope 2 to 10, representative value is 5 or 8.
The R-PEG algorithm that 3 employing line directions are filled
It is a kind of long based on local ring that traditional progressive edge increases (progressive edge-growth, PEG) class algorithm
Maximized LDPC code building method, it is construction algorithm (Column Direction PEG, the C-setting up connection by column
PEG), construction process can take into account the distribution of row dimension and local ring length maximizes, and institute's structure code performance is excellent.ADeg constraints is base
Constraint between basic matrix row, but tradition PEG and popularization thereof are all to carry out check matrix construction according to column direction, are not easy to structure
Make the LDPC code with restriction relation in the ranks, therefore use the mode adding limit in PEG algorithm line by line instead, can be convenient
Construction meets the LDPC code requiring.Therefore the present invention proposes line direction PEG construction algorithm (Row Direction PEG, R-PEG).
R-PEG can be illustrated according to C-PEG algorithm.C-PEG flow process is summarized as follows:
Condition: j=0:N-1
If: k=0
Then select the check-node with minimum number of dimensions to set up with current variable node j to be connected, and in TANNER figure
Add corresponding limit.Otherwise, on the basis of current Tanner figure, j is cyclic variable, as the carrying out of circulation is added up.With variable
Node j, is launched into, for root node, the subgraph that the degree of depth is l, until the current subgraph check-node set number of l layer reaches M, M is
Number.
M is the number of check equations in LDPC check matrix, and the line number of check matrix.Or the verification joint of l+1 layer
Point set is combined into sky.Then the check-node being not connected in subgraph is preferentially selected,.What was certain was that this parity check nodes with work as
The figure that front variable root node j is launched does not connects, i.e. this parity check nodes and current variable node can not pass through any road
Footpath connects.Otherwise select the check-node with the minimum number of degrees to set up with root node in the check-node set of l layer to be connected, and
Add corresponding limit in Tanner figure, complete algorithm.
Fig. 3 is the contrast of the expanded view of C-PEG and R-PEG, and wherein open squares represents check-node.In conjunction with C-PEG stream
Journey and Fig. 3 find that C-PEG, when realizing adding connection, is the interpolation one by one arranging according to variable node one, are row side
It to PEG, when doing expansion process, is also to launch according to variable node (arranging).And the present invention by use R-PEG algorithm with
Antithesis, add connect press check-node a line a line interpolation, be line direction PEG, figure expansion process during algorithm process
Launch according to check-node (OK).The present invention needs row to process constraint, uses R-PEG method comparison convenient.
Brief description
Fig. 1 is typical hierarchical decoder architecture schematic diagram in the present invention.
Fig. 2 is that in Fig. 1 of the present invention, CNP realizes structural representation.
Fig. 3 is the PEG algorithm on line direction of the present invention and the comparison schematic diagram on tradition PEG algorithm column direction.
Quasi-cyclic LDPC code basic matrix schematic diagram when Fig. 4 is degree of evading ADeg=5 in one embodiment of the invention.
Fig. 5 is the bit error rate contrast simulation figure with standard code for the quasi-cyclic LDPC code of code check 0.5 in one embodiment of the invention.
Fig. 6 is quasi-cyclic LDPC code and the mark code bit error rate contrast simulation figure of code check 0.75 in one embodiment of the invention
Detailed description of the invention
According to above analyzing, for avoiding UjAccess conflict, the ADeg constraints that the basic matrix of quasi-cyclic LDPC code need to meet
As follows: in any a line of basic matrix (Hb), ADeg nonzero element at least to be had and all nonzero elements in lastrow are in
Different lines, degree of evading ADeg representative value takes 5 or 8.This section proposes relative configurations algorithm.
It is the PEG algorithm promoted that block progressive edge increases (Block-PEG, BPEG) construction algorithm, can construct QC-LDPC code.
R-PEG algorithm is combined with BPEG algorithm, in construction algorithm, adds ADeg constraints simultaneously, row can be constructed to evading block
The flow process of PEG algorithm (Row Direction Conflict Avoidance Block PEG, RCAB-PEG).In order to simply,
Algorithm flow statement does not differentiates between check-node and row, does not differentiates between variable node and row.
1. initialize LDPC check matrix parameter: size p × p, the variable of size m of basic matrix × n, Block matrix save
Point dimension distribution (dv), it is stipulated that the row order that row hierarchical decoder is processed;
2. it is distributed the homogenization dimension distribution (d determining check-node according to variable node dimensionc);Add to Tanner figure
All nn are columns the variable nodes of basic matrix.
3. in Tanner figure, add m check-node one by one, select variable node and set up connection, and determine that sideline is weighed
Weight.Concrete steps: local ring a) maximizing PEG algorithm is long, b) carry out line direction PEG side by the row and column dimension distribution of planning
Method (R-PEG) code constructs, and c) constructs QC-LDPC code, d) sets the condition of ADeg constraint.
Condition: i (i is check-node, and the line number of this row processing sequence by regulation for step check-node travels through)
(k is the counter of row dimension, represents which the bar limit added),It is i-th parity check nodes
Dimension, this step set each check-node be connected with variable node)
If a) the current dimension of this check-node is equal to 0, then from variable node, randomly choose a node as mesh
Node, K=K+1, continue cycling through;Otherwise launching bipartite graph with i-th check-node for root node, chosen distance root node is
Remote node alternately gathers S1It is launched into the subgraph as l for the degree of depth with check-node i for root node, until the current son of l layer
Figure variable node set number reaches N, or the variable check-node collection of l+1 layer is combined into sky.Do not connect with current parity check nodes i
The variable node connecing is farthest node;If there is no not having the variable nodes that connects, then now the variable node in l layer is just
It is farthest node, be corresponding with C-PEG algorithm;
B) preferentially choose row and heavily increase slow row as candidate variables node.Calculate S1Set corresponding each row prostatitis weight and its
Expected row weight ratio Rcw, selects wherein minimum of a value Rcw_min.From set S1Middle selection Rcw≤Rcw_min Cs2(Cs2Experience
Value is 1.5) variable node form alternative set S2;
C) traversal root node is to all paths of alternative variables node, according toCalculate path to tire out
Long-pending weight S;And select sideline weight p according to randomly assigne0, select S2In all paths can ensure that LDPC code occurs without a length of 4
Ring, i.e. meets formula: mod (s-p0, all variable nodes of p) ≠ 0, form alternative set S3(this step can select p repeatedly0, with
Obtain non-NULL S3).If S3For empty set, then exit circulation, return to 3;Otherwise continue step d);
D) annexation according to a upper parity check nodes, from set S3The middle variable joint selecting to support ADeg constraints
Point forms set S4.I.e. at S3During middle selection variable node, to preferentially select the element avoiding up nonzero element position.If
Choosing, less than avoid, looks into the planning of current check-node dimension, sees that also remaining a how many variable node does not connect, if follow-up also have
ADeg may be gathered enough and evade variable node, just allow S4=S3., otherwise S4Empty set.If S4For empty set, then exit circulation, return to
3;Otherwise continue;
E) from set S4In randomly choose a node, set up with the root node determining in step a) and be connected, and phase is set
Weight p answered0。
Sum up RCAB-PEG structured approach, 3-a) step embody PEG algorithm local ring length maximization;3-b) step embodiment
Line direction PEG method (R-PEG), and support to carry out code construction by the row and column dimension distribution of planning;3-c) embody QC-
LDPC code constructs;3-d) embody the requirement of ADeg constraint.The relevant factors of performance such as this algorithm preferential support ring length, take into account ADeg
Structural constraint, made code belongs to BPEG subset of codes, with the outstanding bit error rate performance of PEG code.
Description code construction is carried out as a example by useful Fig. 4 side-play amount matrix.This QC-LDPC code length 1344, code check 0.5, corresponding follows
Ring displacement submatrix is 84x84.This code is systematic code, the left 8 row correspondence check bit of basic matrix, right 8 row corresponding informance positions.In order to compile
Code realizes convenient, and this code uses double diagonal line structure, and this can add at algorithm the 2nd step initial phase, and can arrange to the 8th is inclined
Shifting amount be 84 submatrix deduct one 1, obtain coding and start with a little.Set decoding block row order for 1,2,3,4,5,6,7,
8} circulates.Construction process conflict evading is constrained to ADeg=5, such as Fig. 4 the 2nd row nonzero element position { 2,10,11,13,16}
Set, has 5 elements and the nonzero element of the 1st row does not arranges altogether, so this yard can support the row hierarchical decoder of DLY≤5
Streamline is without the efficiently decoding of idle waiting ground.
Table 3 provides the common code length of RCAB-PEG construction, the example of code check QC-LDPC code, and table includes that a yard parameter, cloth lead to
Mean iterative number of time needed for rate, row hierarchical decoder algorithm.In table, completion rate represents under existing constraints, can success structure
The number of codes made and the ratio constructing number of attempt,
The construction result of table 3 shows, RCAB-PEG algorithm is under identical code length code check, and submatrix is bigger, is more difficult to structure
Making, ADeg value is more big more is difficult to construction.RCAB-PEG carries out ADeg constraint to constructed code, the Average Iteration of the LDPC code obtaining
Number of times is basic and Block PEG algorithm code-phase is worked as.This point is also that RCAB-PEG supports ranks dimension distribution constraint and ring length
The benefit that bigization is brought.
Construction end condition be 100 LDPC code of Successful construct or number of attempt reaches 5000;Mean iterative number of time
Represent 100 LDPC code of Successful construct, (mean iterative number of time can be made to be taken at 10 using fixing typical signal to noise ratio condition
Left and right a signal to noise ratio) needed for mean iterative number of time.Mean iterative number of time can tentatively judge the LDPC code generating quickly
Performance, and select Candidate key for follow-up BER Simulation.
The construction result of table 3 shows, RCAB-PEG algorithm is under identical code length code check, and submatrix is bigger, is more difficult to structure
Making, ADeg value is more big more is difficult to construction.RCAB-PEG carries out ADeg constraint to constructed code, the Average Iteration of the LDPC code obtaining
Number of times is basic and Block PEG algorithm code-phase is worked as.This point is also that RCAB-PEG supports ranks dimension distribution constraint and ring length
The benefit that bigization is brought.
Table 3
RCAB-PEG algorithm construction common code result table
Also finding out that from table 3 RCAB-PEG algorithm adds ADeg structuring constraint, algorithm completion rate is relative to BPEG algorithm
Decreasing, this is relevant with dimension distribution, code length, code check, p value composite factor.But algorithm existence randomly chooses link, so can
Can be hit pay dirk by repeatedly trying structure.Suitably relax constraint and also can improve completion rate, suboptimal solution of also can yet be regarded as.As increased algorithm 3-
B) step Cs2Value, expands pre-selected works, weakens dimension and requires, does not deteriorate for a lot of long code performances.
Also can be by decoding circuit little for ADeg value constraint LY value.Even if Adeg value does not reaches the DLY value requiring in Fig. 1, institute
The code of the big ADeg value as far as possible obtaining also can eliminate idle beat to greatest extent.In a word, can be according to the actual requirements to RCAB-PEG
Algorithm makes reasonably adjustment.
The present invention proposes the bit error rate performance simulation scenarios of RCAB-PEG construction LDPC code, first with RCAB-PEG algorithm
Construction obtains ADeg=5, and code length is respectively 8064 (p=252), 2016 (p=84), and 64800 (p=360), code check is respectively
6 LDPC code of 0.5 and 0.75.Then with row its bit error rate performance of hierarchical decoder algorithm simulating of 20 iteration, respectively with
BPEG construct obtain 8064 code lengths, 2016 code lengths in WIMAX, the error performance of the LDPC code of 64800 code lengths enters in DVB-SII
Row contrast, result can be found in Fig. 5 and Fig. 6.
From the contrast of Fig. 5 and Fig. 6 it can be seen that the LDPC code that obtains with BPEG algorithm of LDPC code that RCAB-PEG algorithm obtains
And the LDPC code in WIMAX, DVB-SII standard has suitable performance.But the LDPC compared to the above two present invention construction
Code is structurally optimized, it is to avoid row hierarchical decoder because of solve in the ranks to evade bring throughput decline or resource
The increase taking.
Fig. 1, Fig. 2 is used to optimize structure realizing the QC-LDPC pipeline decoding device of DLY=5, comparable RCAB-PEG code
Decoding rate with general code.Use the code of Fig. 4, ADeg=5, DLY-ADeg=0 idle beat need to be inserted during entering a new line,
Row dimension dc=6, therefore often row processes required beat number is dc+DLY-ADeg=6T.And common Q C-with Fig. 4 formed objects
LDPC code typical case ADeg=3, needs to insert the idle waiting that DLY-ADeg=2 claps, and the total umber of beats required for a line is processed is dc+
DLY-ADeg=8T.So 8T/6T=1.33 times that the speed of the corresponding decoder of Fig. 4 code is general code, and Fig. 4 code is in design
During had contemplated that relation in the ranks, be not required to the Scheduling Design line by line of complexity, and the logical relation of Schedule RAM also may be used
Simple realization, make decoder realize simpler effectively.
The present invention is directed to row hierarchical decoder and calculate the intermediate variable access conflict problem of device, it is proposed that a kind of elimination row layering is translated
QC-LDPC code construction algorithm (RCAB-PEG) of code device access conflict, this algorithm uses line direction PEG algorithm, and supports in the ranks
Evade constraint.This construction algorithm eliminates access conflict problem in advance, thus hierarchical decoder not need Scheduling Design etc. relevant multiple
Miscellaneous design, eliminates relevant source rates cost.RCAB-PEG code can give full play to row point in the case of not increasing resource
Layer decoder throughput potentiality, under situation typical, use RCAB-PEG code to make decoder speed can bring up to 1.33 times.And emulate
Result shows, the LDPC code performance of generation and BPEG code, WIMAX, DVB-SII standard code performance have comparativity.The invention belongs to
In the code construction algorithm research realizing for decoder, with reference to the technical method of the present invention, can explore and be suitable to different hardware realization
The LDPC code building method of mode.
Claims (9)
1. a building method for quasi-cyclic LDPC code, quasi-cyclic LDPC code to be constructed passes through tree graph model Tanner chart
Showing, its quasi-cyclic check matrix parameter is, the size p × p of size m of basic matrix × n, Block matrix, basic matrix variable node
Dimension is distributed (dv);Its step includes,
1) it is distributed (d according to described basic matrix variable node dimensionv) determine check-node homogenization dimension distribution (dc), according to institute
State dimension distribution (dc) in Tanner figure, add all n variable nodes;
2) in Tanner figure, add m check-node line by line, and launch dendrogram with check-node, select to select variable joint in advance
Point, is determined the variable node reaching weight preset value by sideline weight, and the variable node of described determination is an alternative set;?
Screening in described alternative set can make the degree of evading (ADeg) between adjacent rows be equal to or more than decoding processing delay (DLY)
Variable node, forms destination node;
3) according to step 2) obtained destination node determines sideline weight in Tanner figure, adds corresponding edge in Tanner figure,
Obtain posttectonic quasi-cyclic LDPC code according to this Tanner figure.
2. the building method of quasi-cyclic LDPC code as claimed in claim 1, it is characterised in that launch dendrogram with check-node
When, check-node dimension set is condition:
Wherein k is row dimension counter, represents and adds which bar limit, di cBeing the dimension of i-th check-node, i is check-node.
3. the building method of quasi-cyclic LDPC code as claimed in claim 1, it is characterised in that select to select variable node in advance
Method is, if the current dimension of described check-node is equal to 0, then randomly chooses a node from variable node and becomes as purpose
Amount node connects, and directly adds corresponding edge in Tanner, and the weight in sideline is a fixed value or random value.
4. the building method of quasi-cyclic LDPC code as claimed in claim 1, it is characterised in that select to select variable node in advance
Step also includes, if the current dimension of described check-node is not equal to 0, then launches tree-shaped with i-th check-node for root node
Figure, chosen distance root node is farthest and column weight distribution increases slow variable node alternately node.
5. the building method of quasi-cyclic LDPC code as claimed in claim 4, it is characterised in that judge that farthest nodal method is,
It is launched into the tree-shaped subgraph as l for the degree of depth with check-node for root node, until the current subgraph variable node set number of l layer reaches
To N, or the variable check-node collection of l+1 layer is combined into sky, is farthest with the variable node that current parity check nodes is not connected
Node;If there is not the variable nodes not connected, then now the variable node in l layer is exactly farthest node.
6. the building method of quasi-cyclic LDPC code as claimed in claim 4, it is characterised in that determine that column weight distribution increases slow
The method of variable node is, calculates described pre-variable node of selecting and respectively arranges prostatitis weight and its expected row anharmonic ratio value Rcw, selects wherein
Minimum of a value Rcw_min, therefrom selects Rcw≤Rcw_min C, and wherein C empirical value is 1.5, variable node as selecting change in advance
Amount node.
7. the building method of quasi-cyclic LDPC code as claimed in claim 1, it is characterised in that the degree of evading between adjacent rows
(ADeg) computational methods are, in two row of the adjacent process when decoding, and the nonzero element of next line and the neutral element of lastrow
The number of the common factor of residing row.
8. the building method of quasi-cyclic LDPC code as claimed in claim 1, it is characterised in that sideline Weight Determination is,
First traversal root node to all paths selecting variable node in advance, according to
Wherein, l is the subgraph degree of depth being launched into for root node with check-node i, and w represents the number of plies in current subgraph;pi,jRepresent
The limit weight of path process, the side-play amount of nonzero element in i.e. corresponding basic matrix;S is the weight in whole path, calculates outlet
Accumulation weight s in footpath simultaneously selects sideline weight p according to randomly assigne0, i.e. meet formula: mod (s-p0, all variablees joint of p) ≠ 0
Point.
9. the interpretation method of quasi-cyclic LDPC code of building method based on the quasi-cyclic LDPC code described in claim 1,
The steps include:
1) it from channel receiving channel information, is first cached in the middle of memory RAM;Initializing all external informations is all 0;
2) while from channel information memory, in serial taking-up described LDPC construction code matrix, in any layer, nonzero element institute is right
The channel information answered, forms the data stream that width is p;This layer has p row;
3) channel information data stream is through selecting module, then determines parallel according to the side-play amount in quasi-cyclic LDPC code basic matrix
The circulation deviant of data, is then sent through in corresponding p CNP arithmetic element;
4) from external information memory, simultaneously, read the external information corresponding to quasi-cyclic LDPC code this layer of matrix, be input to CNP fortune
Calculate in unit;
5) CNP arithmetic unit enters row operation according to the channel information receiving and external information;
6) after completing the confidence spread of p row, interative computation is proceeded, until decoding number of times reaches maximum set value or translates
Code convergence.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210016995.1A CN103220002B (en) | 2012-01-18 | 2012-01-18 | A kind of quasi-cyclic LDPC code constructing method eliminating decoder access conflict |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210016995.1A CN103220002B (en) | 2012-01-18 | 2012-01-18 | A kind of quasi-cyclic LDPC code constructing method eliminating decoder access conflict |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103220002A CN103220002A (en) | 2013-07-24 |
CN103220002B true CN103220002B (en) | 2016-11-09 |
Family
ID=48817538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210016995.1A Expired - Fee Related CN103220002B (en) | 2012-01-18 | 2012-01-18 | A kind of quasi-cyclic LDPC code constructing method eliminating decoder access conflict |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103220002B (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105356891B (en) * | 2015-11-26 | 2018-11-27 | 中国地质大学(武汉) | A kind of polarity decoding batch processing method of high resource utilization |
CN108234066B (en) * | 2016-12-15 | 2020-12-15 | 华为技术有限公司 | Communication method and communication device based on LDPC |
KR102631407B1 (en) * | 2018-10-24 | 2024-01-31 | 에스케이하이닉스 주식회사 | Ldpc decoder, semiconductor memory system and operating method thereof |
CN110048805B (en) * | 2018-12-11 | 2021-08-31 | 西安电子科技大学 | Decoding control system and method for low density parity check code and wireless communication system |
CN110830050B (en) * | 2019-11-27 | 2023-09-29 | 武汉虹旭信息技术有限责任公司 | LDPC decoding method, system, electronic equipment and storage medium |
CN111865333B (en) * | 2020-08-06 | 2023-06-23 | 南京信息工程大学 | Bit level punching method based on code rate compatibility of multi-element LDPC (Low Density parity check) codes |
CN117097559B (en) * | 2023-10-17 | 2023-12-19 | 天津德科智控股份有限公司 | EPS steering angle message transmission verification method |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101299612A (en) * | 2008-06-10 | 2008-11-05 | 上海瀚讯无线技术有限公司 | Method for rapidly sorting tree graph |
WO2009143375A2 (en) * | 2008-05-21 | 2009-11-26 | The Regents Of The University Of Calfornia | Lower-complexity layered belief propagation deconding ldpc codes |
CN102088294A (en) * | 2010-09-29 | 2011-06-08 | 西安空间无线电技术研究所 | QC-LDPC (quasi-cyclic low-density parity-check codes) coder and coding method |
-
2012
- 2012-01-18 CN CN201210016995.1A patent/CN103220002B/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009143375A2 (en) * | 2008-05-21 | 2009-11-26 | The Regents Of The University Of Calfornia | Lower-complexity layered belief propagation deconding ldpc codes |
CN101299612A (en) * | 2008-06-10 | 2008-11-05 | 上海瀚讯无线技术有限公司 | Method for rapidly sorting tree graph |
CN102088294A (en) * | 2010-09-29 | 2011-06-08 | 西安空间无线电技术研究所 | QC-LDPC (quasi-cyclic low-density parity-check codes) coder and coding method |
Also Published As
Publication number | Publication date |
---|---|
CN103220002A (en) | 2013-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103220002B (en) | A kind of quasi-cyclic LDPC code constructing method eliminating decoder access conflict | |
CN102057578B (en) | Turbo ldpc decoding | |
Yuan et al. | Low-latency successive-cancellation list decoders for polar codes with multibit decision | |
CN104868925B (en) | Coding method, interpretation method, code device and the code translator of structured LDPC code | |
CN102281125B (en) | Laminated and partitioned irregular low density parity check (LDPC) code decoder and decoding method | |
CN105515590B (en) | A kind of effective low complex degree serially offsets list polarization code coding method | |
CN100425000C (en) | Double-turbine structure low-density odd-even check code decoder | |
CN101699770B (en) | High-speed LDPC code coder and coding method thereof | |
CN101159435B (en) | Low density check code check matrix constructing method based on shift matrix classified extension | |
CN109586732A (en) | Middle short code LDPC coding/decoding system and method | |
CN103199877B (en) | Method for constructing and coding structured LDPC (Low Density Parity Check) convolutional codes | |
CN109067408A (en) | A kind of design method of protograph LDPC code | |
CN101594152B (en) | LDPC code decoding method for realizing simultaneous operation of horizontal operation and vertical operation | |
CN115664899A (en) | Channel decoding method and system based on graph neural network | |
CN106788467B (en) | A kind of Raptor Code coding method, interpretation method and system based on CUDA | |
Esfahanizadeh et al. | Multi-dimensional spatially-coupled code design: Enhancing the cycle properties | |
CN101478313B (en) | Minimum value computing device for LDPC decoder and constructing method thereof | |
CN101267209B (en) | LDPC decoding circular hierarchical minimum calculation method and its realization device | |
CN111162795B (en) | LDPC coding hardware implementation method based on check sub-matrix segmentation | |
CN105871385B (en) | A kind of LDPC convolutional-code building method | |
CN100578945C (en) | Decoder device for LDPC code, and decoding method | |
CN102185615B (en) | LDPC (low density parity code) code construction method for realizing parallel decoding | |
CN116192157A (en) | Implementation method for reducing QC-LDPC code generation matrix density | |
CN113612575B (en) | Wimax protocol-oriented QC-LDPC decoder decoding method and system | |
CN113285725A (en) | QC-LDPC encoding method and encoder |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20161109 Termination date: 20200118 |
|
CF01 | Termination of patent right due to non-payment of annual fee |