IP Library Granted Patent US 8,250,449
Granted Patent B2
US 8,250,449 · App. 12/521,480 · Granted Aug 21, 2012

Decoding method for LDPC code based on BP arithmetic

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,250,449
App. No.
12/521,480
Granted
Aug 21, 2012
Kind
B2
Abstract

A decoding method for LDPC codes based on BP algorithm, includes initializing LLR (q mm ) with the received LDPC bit stream; updating the check node LLR (r mm ) and variable node LLR (q mm ): after updating the LLR (r mm ) corresponding to nonzero elements in each row in check matrix H in each iteration; immediately updating the LLR (q mm ) corresponding to all the nonzero elements in the column which has a nonzero element in the row, and repeating the updating row by row; updating LLR (q n ) on the basis of LLR (r m ); terminating decoding process if maximum number of allowed iterations is reached or the correct result obtained and outputting the final decoding result x n ; The method of the present invention may accelerate the decoding convergence, and reduce the number of iterations to increase the throughput, further reduce the power consumption and silicon area of decoding apparatus possible if LLR (q mm ) is properly approximated.

Claims (750)

1. A decoding method for low density check codes based on Belief Propagation algorithm, iteratively performing decoding between check nodes LLR(r mn ) and variable nodes LLR(q mn ) and comprising the following steps of:

110 ) initializing LLR (q mn ) using a received low density parity code bit stream;

120 ) updating the check node LLR(r mn ) and variable node LLR (q mn ): after updating the LLR(r mn ) corresponding to nonzero elements in each row in check matrix H in each iteration, immediately updating the LLR (q mn ) corresponding to all the nonzero elements in a column which corresponds to the nonzero elements in the row, and repeating the updating row by row;

130 ) updating LLR (q n ) on the basis of LLR(r mn );

140 ) processing iteration termination judgment according to a maximum number of allowed iterations or whether the equation of H{circumflex over (x)} T =0 is satisfied, and outputting the final decoding result x n ;

wherein q mn is extra-decoding information, q n is a bit likelihood ratio, r mm is extrinsic information, LLR is a log likelihood ratio and {circumflex over (x)} n is a corresponding decision result of LLR(q n ).

2. A method of claim 1 , wherein an equation

Φ

(

i

Φ

(

β

i

)

)

=

A

×

min

i

(

β

i

)

,

β

i

>

0

,

1

>

A

>

0

Φ

(

i

Φ

(

β

i

)

)

is used to simplify computation, and specifically, in said step 120 ), updating is performed according to the following pseudo code:

For

m

=

0

,

,

M

-

1

For

n

N

(

m

)

LLR

(

r

mn

)

=

(

n

N

(

M

)

\

n

α

mn

)

×

A

×

Min

n

N

(

M

)

\

n

(

β

mn

)

End

For

n

N

(

m

)

LLR

(

q

mn

)

=

LLR

(

c

n

)

+

m

M

(

n

)

\

m

LLR

(

r

m

n

)

End

End

wherein,

α mn′ =sign(LLR(q mn′ )), β mn′ =|LLR(q mn′ )|; —N(m)={n:H mn =1} means a set of subscripts of all bits joining in a m th check function; M(n)={m:H mn =1} means a set of all check functions joined by a n th bit; N(m)\n means a set of subscripts of all bits joining in the m th check function except the n th bit; m(n)\m means a set of all check functions joined by the n th bit except the m th check function;

LLR

(

c

n

)

=

log

Pr

(

x

n

=

+

1

y

n

)

Pr

(

x

n

=

-

1

y

n

)

,

wherein y n is channel output soft information obtained on the basis of the received density parity code bit stream at the time instant n, and A is a constant which is determined through simulation.

3. A method of claim 1 , wherein y n is used to approximately replace 2y n /σ 2 , and in said step 110 ), initialization is specifically performed according to the following pseudo code:

For

n

=

0

,

,

N

-

1

LLR

(

q

n

)

=

y

n

For

m

=

0

,

,

M

-

1

LLR

(

q

mn

)

=

y

n

LLR

(

r

mn

)

=

0

End

End

wherein, y n is channel output soft information at the time instant n, and σ 2 is a channel noise variance.

4. A method of claim 1 , wherein in said step 130 ), updating is specifically performed according to the following pseudo code:

For

n

=

0

,

,

N

-

1

LLR

(

q

n

)

=

LLR

(

c

n

)

+

m

M

(

n

)

LLR

(

r

mn

)

End

wherein,

LLR

(

c

n

)

=

log

Pr

(

x

n

=

+

1

y

n

)

Pr

(

x

n

=

-

1

y

n

)

,

and y n is channel output soft information obtained on the basis of the received density parity code bit stream at the time instant n.

5. A method of claim 1 , wherein said step 140 ) comprises hard decision which is performed specifically according to the following pseudo code:

For

n

=

0

,

,

N

-

1

If

(

LLR

(

q

n

)

>

0

)

x

^

n

=

0

Else

x

^

n

=

1

End

wherein, {circumflex over (x)} n is a hard decision bit, and if H{circumflex over (x)} T =0 is satisfied or a maximum number of allowed iterations has been reached, the whole decoding process is termination; otherwise, proceeding to the step 120 ) to continue to process of iteration.

6. A method of claim 2 , wherein an equation LLR(q mn )=LLR(q n )−LLR(r mn ) is used to simplify storage of LLR(q mn ), and in said steps 120 ) and 130 ), the updating is specifically performed according to the following pseudo code:

For

m

=

0

,

,

M

-

1

For

n

N

(

m

)

LLR

(

r

mn

(

k

)

)

=

(

n

N

(

M

)

\

n

sign

(

LLR

(

q

n

)

-

LLR

(

r

mn

(

k

-

1

)

)

)

×

)

A

×

Min

n

N

(

M

)

\

n

(

LLR

(

q

n

)

-

LLR

(

r

mn

(

k

-

1

)

)

)

End

For

n

N

(

m

)

LLR

(

q

n

)

=

LLR

(

q

n

)

-

LLR

(

r

mn

(

k

-

1

)

)

+

LLR

(

r

mn

(

k

)

)

End

End

7. A method of claim 1 , wherein said check matrix H is one of several low density parity check code basic matrices corresponding to a plurality of different communication standards and code rates, the low density parity check code decoding method uses several low density parity check basic matrices, and also includes selecting one low density parity check basic matrix corresponding to said received low density parity check encoded bit stream from those several low density parity check basic matrices and performing decoding.

8. A method of claim 7 , wherein said communication standard can be Mobile TV standard or IEEE standard.

9. A method of claim 4 , wherein an equation LLR(q mn )=LLR(q n )−LLR(r mn ) is used to simplify storage of LLR(q mn ), and in said steps 120 ) and 130 ), the updating is specifically performed according to the following pseudo code:

For

m

=

0

,

,

M

-

1

For

n

N

(

m

)

LLR

(

r

mn

(

k

)

)

=

(

n

N

(

M

)

\

n

sign

(

LLR

(

q

n

)

-

LLR

(

r

mn

(

k

-

1

)

)

)

×

)

A

×

Min

n

N

(

M

)

\

n

(

LLR

(

q

n

)

-

LLR

(

r

mn

(

k

-

1

)

)

)

End

For

n

N

(

m

)

LLR

(

q

n

)

=

LLR

(

q

n

)

-

LLR

(

r

mn

(

k

-

1

)

)

+

LLR

(

r

mn

(

k

)

)

End

End

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 16, 2023
From: ZTE CORPORATION
To: SANECHIPS TECHNOLOGY CO., LTD.
Reel/Frame 062777/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 26, 2009
From: WANG, JINSHAN
To: ZTE CORPORATION
Reel/Frame 022882/0954 →