CN102932010B - The highly-parallel encoder of QC-LDPC code and coding method - Google Patents
The highly-parallel encoder of QC-LDPC code and coding method Download PDFInfo
- Publication number
- CN102932010B CN102932010B CN201210476356.3A CN201210476356A CN102932010B CN 102932010 B CN102932010 B CN 102932010B CN 201210476356 A CN201210476356 A CN 201210476356A CN 102932010 B CN102932010 B CN 102932010B
- Authority
- CN
- China
- Prior art keywords
- vector
- register
- matrix
- highly
- parallel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Abstract
The present invention relates to a kind of scheme solving QC-LDPC code highly-parallel coding, it is characterized in that, the highly-parallel encoder of the QC-LDPC code of described system primarily of register, look-up table, bc position two inputs XOR gate and b position two inputs XOR gate four part composition.The compatible multi code Rate of Chinese character of QC-LDPC highly-parallel encoder provided by the invention, the look-up table function in fpga logic resource can be made full use of, keeping effectively reducing resource requirement under the constant condition of coding rate, have control simple, resource consumption is few, power consumption is little, low cost and other advantages.
Description
Technical field
The present invention relates to the communications field, particularly the highly-parallel implementation method of QC-LDPC code coder in a kind of communication system.
Background technology
Because the various distortion that exists in transmission channel and noise can produce interference to transmission signal, receiving terminal inevitably digital signal produces the situation of error code.In order to reduce the error rate, need to adopt channel coding technology.
Low-density checksum (Low-DensityParity-Check, LDPC) code becomes the study hotspot of field of channel coding with the excellent properties that it approaches Shannon limit.Quasi-cyclic LDPC code (Quasic-LDPC, QC-LDPC) code is a kind of special LDPC code, and its coding can adopt shift register to add accumulator (Shift-Register-Adder-Accumulator, SRAA) and be realized.
SRAA method utilizes generator matrix G to encode.The generator matrix G of QC-LDPC code is by a × t b × b rank circular matrix G
i,jthe array that (1≤i≤a, 1≤j≤t) is formed, t=a+c.The a part of generator matrix corresponding with information vector is unit matrix, and the remainder generator matrix corresponding with verification vector is high-density matrix.Suppose that b is not prime number, can b=ux be broken down into.Au road highly-parallel SRAA method completes first encoding needs x+t clock cycle, needs (auc+t) b register, aucb two inputs to input XOR gate with door and aucb individual two.When adopting FPGA to realize ultrahigh speed coding, so many resource requirement means that power consumption is large, cost is high.
Summary of the invention
The large shortcoming of resources requirement existed in existing implementation for QC-LDPC code ultrahigh speed coding, the invention provides a kind of highly-parallel coding method based on look-up table, make full use of the look-up table function in fpga logic resource, can keep, under the prerequisite that coding rate is constant, effectively reducing resource requirement.
As shown in Figure 1, the highly-parallel encoder of QC-LDPC code forms primarily of 4 parts: register, look-up table, bc position two input XOR gate and b position two inputs XOR gate.Whole cataloged procedure divides 4 steps to complete: the 1st step, and input information vector s, is saved to register R
1~ R
a, reset register R
a+1~ R
t; 2nd step, register R
1~ R
aserial moves to left u position, look-up table L
1~ L
ainput vector h respectively
1~ h
awith output vector v
1~ v
a, bc position two inputs XOR gate B
1~ B
a-1to vector v
1~ v
asummation, obtains vector v
a+1, b position two inputs XOR gate A
l(1≤l≤c) is by vector v
a+1l section b bit and register R
a+lserial loop moves to left the results added of u position, and deposits back register R
a+l; 3rd step, repeats the 2nd step x time; 4th step, parallel output code word (s, p).
The compatible multi code Rate of Chinese character of QC-LDPC highly-parallel encoder provided by the invention, can keep effectively reducing resource requirement under the constant prerequisite of coding rate, thus reach the object reducing hardware cost and power consumption.
Be further understood by ensuing detailed description and accompanying drawings about the advantages and spirit of the present invention.
Accompanying drawing explanation
Fig. 1 is the highly-parallel encoder overall structure of QC-LDPC code;
Fig. 2 compares traditional au road highly-parallel SRAA method and resource consumption of the present invention.
Embodiment
Below in conjunction with the drawings and specific embodiments, the invention will be further described, but not as a limitation of the invention.
QC-LDPC code is the special LDPC code of a class, and its generator matrix G and check matrix H are all the arrays be made up of circular matrix, have stages cycle feature, therefore are called as quasi-cyclic LDPC code.From the angle of row, each provisional capital of circular matrix is the result of lastrow (first trip is footline) ring shift right one; From the angle of row, each row of circular matrix are all the results that previous column (first is terminal column) circulation moves down.The set that the row vector of circular matrix is formed is identical with the set that column vector is formed, and therefore, circular matrix can be characterized by its first trip or first completely.The generator matrix G of QC-LDPC code is by a × t b × b rank circular matrix G
i, jthe array that (1≤i≤a, 1≤j≤t) is formed:
G(or H) continuous b capable and b row be called as the capable and block row of block respectively.Suppose that the exponent number b of circular matrix is not prime number, can be broken down into b=ux, wherein, u and x is all the positive integer of non-1.So, in block capable, the rear c block of generator matrix G m(1≤m≤a) row, the front u of all circular matrixes is capable constitutes u × bc rank matrix, is referred to as sub block rows matrix, is denoted as U
m.U
mcan be considered and to be made up of bc u dimensional vector, all U
mconstitute au × bc rank sub-block matrix U.
The corresponding code word (s, p) of generator matrix G, that the front a block row of G are corresponding is information vector s, and that rear c block row are corresponding is the vectorial p of verification.Be one section with b bit, information vector s is divided into a section, i.e. s=(s
1, s
2..., s
a); Verify vectorial p and be divided into c section, be i.e. p=(p
1, p
2..., p
c).For i-th (1≤i≤a) segment information vector s
i, have s
i=(s
i, 1, s
i, 2..., s
i,b).
By the feature of formula (1), (2) and circular matrix, Fig. 1 gives the highly-parallel encoder of QC-LDPC code, it primarily of register, look-up table, bc position two inputs XOR gate and b position two inputs XOR gate four kinds of functional modules compositions.
Register R
1~ R
afor cache information vector s=(s
1, s
2..., s
a), register R
a+1~ R
tfor calculating and store the vectorial p=(p of verification
1, p
2..., p
c).
Look-up table L
1~ L
aall there is u position to input and the output of bc position, complete different u position information bits and sub block rows matrix U respectively
1~ U
aproduct.The u position information bit s of parallel input
m, un+1, s
m, un+2..., s
m, un+u(1≤m≤a, 0≤n<x) forms vectorial h
m={ s
m, un+1, s
m, un+2..., s
m, un+u.Look-up table L
minput be h
m, it is h that each road exports
mwith sub block rows matrix U
mthe product of respective column, total output constitutes vector v
m.If the unit of substantially searching of look-up table is considered as one two input and door, need acb two input and doors so altogether.
Bc position two inputs XOR gate B
1~ B
a-1by vector v
1~ v
abe added together, obtain vector v
a+1.In fact, v
a+1in each element be vector { h
1, h
2..., h
awith the product of sub-block matrix U respective column, v
a+1vector { h
1, h
2..., h
awith the product of sub-block matrix U.
B position two inputs XOR gate A
l(1≤l≤c) is by vector v
a+1continuous b bit be added to register R
a+lin.
It is acb that all bc positions two input the two input XOR gate sums that XOR gate and b position two input XOR gate.
The invention provides a kind of QC-LDPC highly-parallel coding method based on look-up table, in conjunction with the highly-parallel encoder (as shown in Figure 1) of QC-LDPC code, its coding step is described below:
1st step, input information vector s, is saved to register R
1~ R
a, reset register R
a+1~ R
t;
2nd step, register R
1~ R
aserial moves to left u position, look-up table L
1~ L
ainput vector h respectively
1~ h
awith output vector v
1~ v
a, bc position two inputs XOR gate B
1~ B
a-1to vector v
1~ v
asummation, obtains vector v
a+1, b position two inputs XOR gate A
l(1≤l≤c) is by vector v
a+1l section b bit and register R
a+lserial loop moves to left the results added of u position, and deposits back register R
a+l;
3rd step, repeats the 2nd step x time, after completing, and register R
1~ R
athat store is information vector s=(s
1, s
2..., s
a), register R
a+1~ R
tthat store is the vectorial p=(p of verification
1, p
2..., p
c);
4th step, parallel output code word (s, p).
Be not difficult to find out from above step, whole cataloged procedure needs x+t clock cycle altogether, and this is identical with traditional au road highly-parallel SRAA method.
Fig. 2 compares traditional au road highly-parallel SRAA method and resource consumption of the present invention.Note, the unit of substantially searching of look-up table is considered as one two input and door here.Can know from Fig. 2 and see, compared with the highly-parallel SRAA method of au road, present invention uses less register, XOR gate and with door, consumption is t/ (auc+t), 1/u and 1/u of au road highly-parallel SRAA method respectively.
As fully visible, compared with traditional au road highly-parallel SRAA method, the present invention maintains coding rate, can make full use of the look-up table function in fpga logic resource, have control simple, resource consumption is few, power consumption is little, low cost and other advantages.
Above-described embodiment, just the present invention's more preferably embodiment, the usual change that those skilled in the art carries out within the scope of technical solution of the present invention and replacement all should be included in protection scope of the present invention.
Claims (4)
1. a highly-parallel encoder for QC-LDPC code, the generator matrix G of QC-LDPC code is by a × t b × b rank circular matrix G
i,jthe array formed, wherein, a, t and b are all positive integer, t=a+c, 1≤i≤a, 1≤j≤t, b is broken down into b=ux, u and x is all the positive integer of non-1, the corresponding code word (s of generator matrix G, p), that the front a block row of G are corresponding is information vector s, and that rear c block row are corresponding is the vectorial p of verification, is one section with b bit, information vector s is divided into a section, i.e. s=(s
1, s
2..., s
a), the i-th segment information vector s
i=(s
i, 1, s
i, 2..., s
i,b), verify vectorial p and be divided into c section, be i.e. p=(p
1, p
2..., p
c), it is characterized in that, described encoder comprises following parts:
Register R
1~ R
t, register R
1~ R
afor cache information vector s=(s
1, s
2..., s
a), register R
a+1~ R
tfor calculating and store the vectorial p=(p of verification
1, p
2..., p
c);
Look-up table L
1~ L
a, the vectorial h of parallel input u position information bit formation respectively
m={ s
m, un+1, s
m, un+2..., s
m, un+u, parallel output b × c bit vector v
m, wherein, 1≤m≤a, 0≤n<x;
B × c position two inputs XOR gate B
1~ B
a-1, by vector v
1~ v
abe added together, obtain vector v
a+1;
B position two inputs XOR gate A
1~ A
c, A
lby vector v
a+1the continuous b bit of l section be added to register R
a+lin, wherein, 1≤l≤c.
2. highly-parallel encoder as claimed in claim 1, is characterized in that, described look-up table L
1~ L
acomplete different u position information bits and sub block rows matrix U respectively
1~ U
aproduct, look-up table L
minput be h
m, it is h that each road exports
mwith sub block rows matrix U
mthe product of respective column, total output constitutes vector v
m.
3. highly-parallel encoder as claimed in claim 1, is characterized in that, described vector v
a+1in each element be vector { h
1, h
2..., h
awith the product of sub-block matrix U respective column, v
a+1vector { h
1, h
2..., h
awith the product of sub-block matrix U.
4. a highly-parallel coding method for QC-LDPC code, the generator matrix G of QC-LDPC code is by a × t b × b rank circular matrix G
i,jthe array formed, wherein, a, t and b are all positive integer, t=a+c, 1≤i≤a, 1≤j≤t, b is broken down into b=ux, u and x is all the positive integer of non-1, the corresponding code word (s of generator matrix G, p), that the front a block row of G are corresponding is information vector s, and that rear c block row are corresponding is the vectorial p of verification, is one section with b bit, information vector s is divided into a section, i.e. s=(s
1, s
2..., s
a), the i-th segment information vector s
i=(s
i, 1, s
i, 2..., s
i,b), verify vectorial p and be divided into c section, be i.e. p=(p
1, p
2..., p
c), it is characterized in that, described coding method comprises the following steps:
1st step, input information vector s, is saved to register R
1~ R
a, reset register R
a+1~ R
t;
2nd step, register R
1~ R
aserial moves to left u position, look-up table L
1~ L
ainput vector h respectively
1~ h
awith output vector v
1~ v
a, b × c position two inputs XOR gate B
1~ B
a-1to vector v
1~ v
asummation, obtains vector v
a+1, b position two inputs XOR gate A
lby vector v
a+1l section b bit and register R
a+lserial loop moves to left the results added of u position, and deposits back register R
a+l, wherein, 1≤l≤c;
3rd step, repeats the 2nd step x time, after completing, and register R
1~ R
athat store is information vector s=(s
1, s
2..., s
a), register R
a+1~ R
tthat store is the vectorial p=(p of verification
1, p
2..., p
c);
4th step, parallel output code word (s, p).
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210476356.3A CN102932010B (en) | 2012-11-21 | 2012-11-21 | The highly-parallel encoder of QC-LDPC code and coding method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210476356.3A CN102932010B (en) | 2012-11-21 | 2012-11-21 | The highly-parallel encoder of QC-LDPC code and coding method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102932010A CN102932010A (en) | 2013-02-13 |
CN102932010B true CN102932010B (en) | 2015-11-18 |
Family
ID=47646735
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210476356.3A Expired - Fee Related CN102932010B (en) | 2012-11-21 | 2012-11-21 | The highly-parallel encoder of QC-LDPC code and coding method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102932010B (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6141788A (en) * | 1998-03-13 | 2000-10-31 | Lucent Technologies Inc. | Method and apparatus for forward error correction in packet networks |
CN1717871A (en) * | 2002-10-05 | 2006-01-04 | 数字方敦股份有限公司 | Systematic encoding and decoding of chain reaction codes |
-
2012
- 2012-11-21 CN CN201210476356.3A patent/CN102932010B/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6141788A (en) * | 1998-03-13 | 2000-10-31 | Lucent Technologies Inc. | Method and apparatus for forward error correction in packet networks |
CN1717871A (en) * | 2002-10-05 | 2006-01-04 | 数字方敦股份有限公司 | Systematic encoding and decoding of chain reaction codes |
Also Published As
Publication number | Publication date |
---|---|
CN102932010A (en) | 2013-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102932009B (en) | Based on QC-LDPC parallel encoding method in the DTMB of look-up table | |
CN102932007B (en) | QC-LDPC encoder and coded method in the deep space communication of highly-parallel | |
CN102857324B (en) | Low density parity check (LDPC) serial coder in deep space communication and based on lookup table and coding method | |
CN102857236B (en) | Based on LDPC encoder and coding method in the CMMB of sum array | |
CN102843150B (en) | Low-latency QC-LDPC (Quasi-Cyclic Low-Density Parity-Check) parallel encoder and encoding method | |
CN102857238B (en) | LDPC (Low Density Parity Check) encoder and encoding method based on summation array in deep space communication | |
CN102932011B (en) | Based on QC-LDPC parallel encoding method in the CMMB of look-up table | |
CN102857239B (en) | LDPC (Low Density Parity Check) serial encoder and encoding method based on lookup table in CMMB (China Mobile Multimedia Broadcasting) | |
CN102916706B (en) | QC-LDPC encoder and coding method in the CMMB of highly-parallel | |
CN102932008B (en) | Based on QC-LDPC parallel encoding method in the deep space communication of look-up table | |
CN102970046B (en) | QC-LDPC encoder and coding method in the near-earth communication of highly-parallel | |
CN102868412B (en) | Parallel filtering based LDPC (low-density parity-check) encoder and encoding method in deep space communication | |
CN102857240A (en) | LDPC (Low Density Parity Check) encoder and encoding method based on circulation shift right accumulation in deep space communication | |
CN102868495B (en) | Lookup table based LDPC (low-density parity-check) serial encoder and encoding method in near-earth communication | |
CN102891687B (en) | Summation array-based QC-LDPC (Quasi-Low-Density Parity-Check) parallel encoder and encoding method | |
CN102938652B (en) | Based on parallel encoder and the coding method of the QC-LDPC code of look-up table | |
CN102932013B (en) | Based on QC-LDPC parallel encoding method in the near-earth communication of look-up table | |
CN102857237B (en) | Low-delay LDPC (low-density parity-check) parallel encoder and encoding method in terrestrial communication system | |
CN102882531B (en) | Coder and coding method for LDPC (low-density parity-check) codes in DTMB (digital television terrestrial multimedia broadcasting) based on summation array | |
CN102932010B (en) | The highly-parallel encoder of QC-LDPC code and coding method | |
CN102843148B (en) | QC-LDPC (Quasi-Cyclic Low-Density Parity-Check) serial encoder and encoding method based on lookup table | |
CN104980167A (en) | QC-LDPC parallel encoder, based on summation array, in CDR | |
CN104980169A (en) | QC-LDPC encoder in highly parallel WPAN | |
CN104993836A (en) | Lookup table-based QC-LDPC serial encoder in WPAN | |
CN104980165A (en) | Low-time-delay QC-LDPC parallel encoder in WPAN |
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: 20151118 Termination date: 20161121 |
|
CF01 | Termination of patent right due to non-payment of annual fee |