IP Library Granted Patent US 9,391,640
Granted Patent B2
US 9,391,640 · App. 14/926,539 · Granted Jul 12, 2016

Encoding method, decoding method

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 9,391,640
App. No.
14/926,539
Filed
Oct 29, 2015
Granted
Jul 12, 2016
Kind
B2
Art Unit
2112
USPC
714/786
Abstract

An encoding method generates an encoded sequence by performing encoding of a given coding rate according to a predetermined parity check matrix. The predetermined parity check matrix is a first parity check matrix or a second parity check matrix. The first parity check matrix corresponds to a low-density parity check (LDPC) convolutional code using a plurality of parity check polynomials. The second parity check matrix is generated by performing at least one of row permutation and column permutation with respect to the first parity check matrix. An eth parity check polynomial that satisfies zero, of the LDPC convolutional code, is expressible by using a predetermined mathematical formula.

Claims (802)

1. An encoding method comprising

generating an encoded sequence comprising: n−1 information sequences denoted as X 1 through X n−1 ; and a parity sequence denoted as P, by encoding the n−1 information sequences at a (n−1)/n coding rate according to a predetermined parity check matrix having m×z rows and n×m×z columns, n being an integer no less than two, m being an even number no less than two, and z being a natural number, wherein

the predetermined parity check matrix is a first parity check matrix or a second parity check matrix, the first parity check matrix corresponding to a low-density parity check (LDPC) convolutional code using a plurality of parity check polynomials, the second parity check matrix generated by performing at least one of row permutation and column permutation with respect to the first parity check matrix, and

given e denoting an integer no less than zero and no greater than m×z−1, α denoting an integer no less than one and no greater than m×z, and i being a variable denoting an integer that is no less than zero and no greater than m−1 and satisfies i=e%m where % denotes a modulo operator,

when e≠α−1, an eth parity check polynomial that satisfies zero, of the LDPC convolutional code, is expressed as

(

D

b

1

,

i

+

1

)

P

(

D

)

+

k

=

1

n

-

1

{

(

1

+

j

=

1

rk

,

i

D

ak

,

i

,

j

)

X

k

(

D

)

}

=

0

(

Math

.

1

)

where b 1,i is a natural number, and

when e=α−1, the eth parity check polynomial that satisfies zero, of the LDPC convolutional code, is expressed as

P

(

D

)

+

k

=

1

n

-

1

{

(

1

+

j

=

1

rk

,

i

D

ak

,

(

α

-

1

)

%

m

,

j

)

X

k

(

D

)

}

=

0

(

Math

.

2

)

where, in Math. 1 and Math. 2,

p denotes an integer no less than one and no greater than n−1, q denotes an integer no less than one and no greater than r p,i , and r p,i denotes an integer no less than two,

D denotes a delay operator, X p (D) denotes a polynomial representation of an information sequence X p among the n−1 information sequences, and P(D) denotes a polynomial representation of the parity sequence P, and

a p,i,q denotes a natural number, and

when x and y are integers no less than one and no greater than r p,i and satisfy x≠y, a p,i,x ≠a p,i,y holds true for all x and y, and

when s=p, and v s,1 and v s,2 are odd numbers less than m, a p,i,q satisfies both a s,i,1 %m=v s,1 and a s,i,2 %m=v s,2 for all i, and

α=1.

2. A decoding method comprising:

generating an encoded sequence comprising: n−1 information sequences denoted as X 1 through X n−1 ; and a parity sequence denoted as P, by encoding the n−1 information sequences at a (n−1)/n coding rate according to a predetermined parity check matrix having m×z rows and n×m×z columns, n being an integer no less than two, m being an even number no less than two, and z being a natural number; and

decoding the encoded sequence according to the predetermined parity check matrix by employing belief propagation (BP), wherein

the predetermined parity check matrix is a first parity check matrix or a second parity check matrix, the first parity check matrix corresponding to a low-density parity check (LDPC) convolutional code using a plurality of parity check polynomials, the second parity check matrix generated by performing at least one of row permutation and column permutation with respect to the first parity check matrix, and

given e denoting an integer no less than zero and no greater than m×z−1, α denoting an integer no less than one and no greater than m×z, and i being a variable denoting an integer that is no less than zero and no greater than m−1 and satisfies i=e%m where % denotes a modulo operator,

when e≠α−1, an eth parity check polynomial that satisfies zero, of the LDPC convolutional code, is expressed as

(

D

b

1

,

i

+

1

)

P

(

D

)

+

k

=

1

n

-

1

{

(

1

+

j

=

1

rk

,

i

D

ak

,

i

,

j

)

X

k

(

D

)

}

=

0

(

Math

.

1

)

where b 1,i is a natural number, and

when e=α−1, the eth parity check polynomial that satisfies zero, of the LDPC convolutional code, is expressed as

P

(

D

)

+

k

=

1

n

-

1

{

(

1

+

j

=

1

rk

,

i

D

ak

,

(

α

-

1

)

%

m

,

j

)

X

k

(

D

)

}

=

0

(

Math

.

2

)

where, in Math. 1 and Math. 2,

p denotes an integer no less than one and no greater than n−1, q denotes an integer no less than one and no greater than r p,i , and r p,i denotes an integer no less than two,

D denotes a delay operator, X p (D) denotes a polynomial representation of an information sequence X p among the n−1 information sequences, and P(D) denotes a polynomial representation of the parity sequence P, and

a p,i,q denotes a natural number, and

when x and y are integers no less than one and no greater than r p,i and satisfy x≠y, a p,i,x ≠a p,i,y holds true for all x and y, and

when s=p, and v s,1 and v s,2 are odd numbers less than m, a p,i,q satisfies both a s,i,1 %m=v s,1 and a s,i,2 %m=v s,2 , and

α=1.

3. An encoding device comprising:

an encoder generating an encoded sequence comprising: n−1 information sequences denoted as X 1 through X n−1 ; and a parity sequence denoted as P, by encoding the n−1 information sequences at a (n−1)/n coding rate according to a predetermined parity check matrix having m×z rows and n×m×z columns, n being an integer no less than two, m being an even number no less than two, and z being a natural number, wherein

the predetermined parity check matrix is a first parity check matrix or a second parity check matrix, the first parity check matrix corresponding to a low-density parity check (LDPC) convolutional code using a plurality of parity check polynomials, the second parity check matrix generated by performing at least one of row permutation and column permutation with respect to the first parity check matrix, and

given e denoting an integer no less than zero and no greater than m×z−1, α denoting an integer no less than one and no greater than m×z, and i being a variable denoting an integer that is no less than zero and no greater than m−1 and satisfies i=e%m where % denotes a modulo operator,

when e≠α−1, an eth parity check polynomial that satisfies zero, of the LDPC convolutional code, is expressed as

(

D

b

1

,

i

+

1

)

P

(

D

)

+

k

=

1

n

-

1

{

(

1

+

j

=

1

rk

,

i

D

ak

,

i

,

j

)

X

k

(

D

)

}

=

0

(

Math

.

1

)

where b 1,i is a natural number, and

when e=α−1, the eth parity check polynomial that satisfies zero, of the LDPC convolutional code, is expressed as

P

(

D

)

+

k

=

1

n

-

1

{

(

1

+

j

=

1

rk

,

i

D

ak

,

(

α

-

1

)

%

m

,

j

)

X

k

(

D

)

}

=

0

(

Math

.

2

)

where, in Math. 1 and Math. 2,

p denotes an integer no less than one and no greater than n−1, q denotes an integer no less than one and no greater than r p,i , and r p,i denotes an integer no less than two,

D denotes a delay operator, X p (D) denotes a polynomial representation of an information sequence X p among the n−1 information sequences, and P(D) denotes a polynomial representation of the parity sequence P, and

a p,i,q denotes a natural number, and

when x and y are integers no less than one and no greater than r p,i and satisfy x≠y, a p,i,x ≠a p,i,y holds true for all x and y, and

when s=p, and v s,1 and v s,2 are odd numbers less than m, a p,i,q satisfies both a s,i,1 %m=v s,1 and a s,i,2 %m=v s,2 for all i, and

α=1.

4. A decoding device comprising:

a decoder that decodes an encoded sequence encoded according to a predetermined encoding method, the predetermined encoding method comprising:

generating the encoded sequence comprising: n−1 information sequences denoted as X 1 through X n−1 ; and a parity sequence denoted as P, by encoding the n−1 information sequences at a (n−1)/n coding rate according to a predetermined parity check matrix having m×z rows and n×m×z columns, n being an integer no less than two, m being an even number no less than two, and z being a natural number,

the decoder decoding the encoded sequence according to the predetermined parity check matrix by employing belief propagation (BP), wherein

the predetermined parity check matrix is a first parity check matrix or a second parity check matrix, the first parity check matrix corresponding to a low-density parity check (LDPC) convolutional code using a plurality of parity check polynomials, the second parity check matrix generated by performing at least one of row permutation and column permutation with respect to the first parity check matrix, and

given e denoting an integer no less than zero and no greater than m×z−1, α denoting an integer no less than one and no greater than m×z, and i being a variable denoting an integer that is no less than zero and no greater than m−1 and satisfies i=e%m where % denotes a modulo operator,

when e≠α−1, an eth parity check polynomial that satisfies zero, of the LDPC convolutional code, is expressed as

(

D

b

1

,

i

+

1

)

P

(

D

)

+

k

=

1

n

-

1

{

(

1

+

j

=

1

rk

,

i

D

ak

,

i

,

j

)

X

k

(

D

)

}

=

0

(

Math

.

1

)

where b 1,i is a natural number, and

when e=α−1, the eth parity check polynomial that satisfies zero, of the LDPC convolutional code, is expressed as

P

(

D

)

+

k

=

1

n

-

1

{

(

1

+

j

=

1

rk

,

i

D

ak

,

(

α

-

1

)

%

m

,

j

)

X

k

(

D

)

}

=

0

(

Math

.

2

)

where, in Math. 1 and Math. 2,

p denotes an integer no less than one and no greater than n−1, q denotes an integer no less than one and no greater than r p,i , and r p,i denotes an integer no less than two,

D denotes a delay operator, X p (D) denotes a polynomial representation of an information sequence X p among the n−1 information sequences, and P(D) denotes a polynomial representation of the parity sequence P, and

a p,i,q denotes a natural number, and

when x and y are integers no less than one and no greater than r p,i and satisfy x≠y, a p,i,x ≠a p,i,y holds true for all x and y, and

when s=p, and v s,1 and v s,2 are odd numbers less than m, a p,i,q satisfies both a s,i,1 %m=v s,1 and a s,i,2 %m=v s,2 , and

α=1.

5. A non-transitory computer-readable storage medium having recorded thereon a program, the program to be executed by a computer to cause the computer to perform a predetermined encoding process, the predetermined encoding process comprising:

generating an encoded sequence comprising: n−1 information sequences denoted as X 1 through X n−1 ; and a parity sequence denoted as P, by encoding the n−1 information sequences at a (n−1)/n coding rate according to a predetermined parity check matrix having m×z rows and n×m×z columns, n being an integer no less than two, m being an even number no less than two, and z being a natural number, wherein

the predetermined parity check matrix is a first parity check matrix or a second parity check matrix, the first parity check matrix corresponding to a low-density parity check (LDPC) convolutional code using a plurality of parity check polynomials, the second parity check matrix generated by performing at least one of row permutation and column permutation with respect to the first parity check matrix, and

given e denoting an integer no less than zero and no greater than m×z−1, α denoting an integer no less than one and no greater than m×z, and i being a variable denoting an integer that is no less than zero and no greater than m−1 and satisfies i=e%m where % denotes a modulo operator,

when e≠α−1, an eth parity check polynomial that satisfies zero, of the LDPC convolutional code, is expressed as

(

D

b

1

,

i

+

1

)

P

(

D

)

+

k

=

1

n

-

1

{

(

1

+

j

=

1

rk

,

i

D

ak

,

i

,

j

)

X

k

(

D

)

}

=

0

(

Math

.

1

)

where b 1,i is a natural number, and

when e=α−1, the eth parity check polynomial that satisfies zero, of the LDPC convolutional code, is expressed as

P

(

D

)

+

k

=

1

n

-

1

{

(

1

+

j

=

1

rk

,

i

D

ak

,

(

α

-

1

)

%

m

,

j

)

X

k

(

D

)

}

=

0

(

Math

.

2

)

where, in Math. 1 and Math. 2,

p denotes an integer no less than one and no greater than n−1, q denotes an integer no less than one and no greater than r p,i , and r p,i denotes an integer no less than two,

D denotes a delay operator, X p (D) denotes a polynomial representation of an information sequence X p among the n−1 information sequences, and P(D) denotes a polynomial representation of the parity sequence P, and

a p,i,q denotes a natural number, and

when x and y are integers no less than one and no greater than r p,i and satisfy x≠y, a p,i,x ≠a p,i,y holds true for all x and y, and

when s=p, and v s,1 and v s,2 are odd numbers less than m, a p,i,q satisfies both a s,i,1 %m=v s,1 and a s,i,2 %m=v s,2 for all i, and

α=1.

6. A non-transitory computer-readable storage medium having recorded thereon a program, the program to be executed by a computer to cause the computer to execute a decoding process that decodes an encoded sequence encoded by a predetermined encoding method, the predetermined encoding method comprising:

generating the encoded sequence comprising: n−1 information sequences denoted as X 1 through X n−1 ; and a parity sequence denoted as P, by encoding the n−1 information sequences at a (n−1)/n coding rate according to a predetermined parity check matrix having m×z rows and n×m×z columns, n being an integer no less than two, m being an even number no less than two, and z being a natural number,

the decoding process decoding the encoded sequence according to the predetermined parity check matrix by employing belief propagation (BP), wherein

the predetermined parity check matrix is a first parity check matrix or a second parity check matrix, the first parity check matrix corresponding to a low-density parity check (LDPC) convolutional code using a plurality of parity check polynomials, the second parity check matrix generated by performing at least one of row permutation and column permutation with respect to the first parity check matrix, and

given e denoting an integer no less than zero and no greater than m×z−1, α denoting an integer no less than one and no greater than m×z, and i being a variable denoting an integer that is no less than zero and no greater than m−1 and satisfies i=e%m where % denotes a modulo operator,

when e≠α−1, an eth parity check polynomial that satisfies zero, of the LDPC convolutional code, is expressed as

(

D

b

1

,

i

+

1

)

P

(

D

)

+

k

=

1

n

-

1

{

(

1

+

j

=

1

rk

,

i

D

ak

,

i

,

j

)

X

k

(

D

)

}

=

0

(

Math

.

1

)

where b 1,i is a natural number, and

when e=α−1, the eth parity check polynomial that satisfies zero, of the LDPC convolutional code, is expressed as

P

(

D

)

+

k

=

1

n

-

1

{

(

1

+

j

=

1

rk

,

i

D

ak

,

(

α

-

1

)

%

m

,

j

)

X

k

(

D

)

}

=

0

(

Math

.

2

)

where, in Math. 1 and Math. 2,

p denotes an integer no less than one and no greater than n−1, q denotes an integer no less than one and no greater than r p,i , and r p,i denotes an integer no less than two,

D denotes a delay operator, X p (D) denotes a polynomial representation of an information sequence X p among the n−1 information sequences, and P(D) denotes a polynomial representation of the parity sequence P, and

a p,i,q denotes a natural number, and

when x and y are integers no less than one and no greater than r p,i and satisfy x≠y, a p,i,x ≠a p,i,y holds true for all x and y, and

when s=p, and v s,1 and v s,2 are odd numbers less than m, a p,i,q satisfies both a s,i,1 %m=v s,1 and a s,i,2 %m=v s,2 , and

α=1.