Li Chen , PhD, MIEEE Associate Professor, School of Information - - PowerPoint PPT Presentation

li chen phd mieee associate professor school of
SMART_READER_LITE
LIVE PREVIEW

Li Chen , PhD, MIEEE Associate Professor, School of Information - - PowerPoint PPT Presentation

Progressive Algebraic Soft-Decision Decoding of Reed-Solomon Codes Li Chen , PhD, MIEEE Associate Professor, School of Information Science and Technology Sun Yat-sen University, China Joint work with Prof. Xiao Ma


slide-1
SLIDE 1

Progressive Algebraic Soft-Decision Decoding of Reed-Solomon Codes

Li Chen (陈立), PhD, MIEEE

Associate Professor, School of Information Science and Technology

Sun Yat-sen University, China

Joint work with Prof. Xiao Ma and Mrs. Siyun Tang

Hangzhou, China

5th, Nov, 2011

slide-2
SLIDE 2

Outline

 Introduction  Progressive ASD (PASD) algorithm  Validity analysis  Complexity analysis  Error-correction performance  Conclusions

slide-3
SLIDE 3
  • I. Introduction of list decoding

Decoding philosophy evolution of an (n, k) RS code

Unique decoding List decoding

        2 k n

unique

  1

) 1 (     k n n

list

slide-4
SLIDE 4
  • I. Overview of Enc. & Decd.

Encoding

Given a message polynomial: u(x) = u0 + u1x + ··· + uk-1xk-1

Generate the codeword of an (n, k) RS code c = (c0, c1, …, cn-1) = (u(α0), u(α1), …, u(αn-1))

Decoding

Interpolation Q(x, y) Factorization Q(x, p(x)) L

  • Reliab. Trans.

Π  M Π M Computationally expensive step! (ui ∈GF(q)) (αi ∈GF(q)\{0})

slide-5
SLIDE 5
  • I. Perf. of AHD and ASD

Algebraic hard-decision decoding (AHD) [Guruwammi99] (-GS Alg)

Algebraic soft-decision decoding (ASD) [Koetter03] (-KV Alg)

Advantage on error-correction performance

slide-6
SLIDE 6
  • I. Introduction

 Price to pay: decoding complexity

slide-7
SLIDE 7
  • I. Inspirations

The algebraic soft decoding is of high complexity. It is mainly due to the iterative interpolation process;

A modernized thinking – the decoding should be flexible (i.e., channel dependent).

Quality of the received word Complexity bad good low high

E.g., the belief propagation algorithm The current AHD/ASD system

Initialisation Horizontal step Vertical step Hard decision

c ˆ

? ˆ 

T

H c

Yes, c

ˆ

No

Iterative proc. Incremental comp. Continues validat.

slide-8
SLIDE 8
  • II. A Graphical Introduction

ASD ( )

5 l 

PASD ( )

1 2 3 4 5 l     

c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 r c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 r

5 6 7 9 10

{ , , , , } L c c c c c 

6 6 9 6 9 10 5 6 9 10 5 6 7 9 10

1 { } 2 { , } 3 { , , } 4 { , , , } 5 { , , , , } l L c l L c c l L c c c l L c c c c l L c c c c c               

Enlarging the decoding radius progressively  Enlarging the factorization OLS progressively

|L| - factorization output list size

slide-9
SLIDE 9

Ⅱ. Decoding architecture

v – iteration index; lv -- designed OLS at each iteration; lT -- designed maximal OLS (~the maximal complexity that the system can tolerate); l’– step size for updating the OLS, lv+1 = lv + l’;

Progressive

  • reliab. trans.

Progressive Interpolation Validated by CRC code!

slide-10
SLIDE 10
  • II. Progressive approach

Enlarge the decoding radius  Enlarge the OLS

Progressive decoding

Π Series of OLS: l1, l2, ……, lv-1, lv, ……, lT Series of M mtxs.: M1, M2, ……, Mv-1, Mv, ……, MT Series of Q polys.: Q(1), Q(2), ……, Q(v-1), Q(v), ……, Q(T) Question: Can the solution of Q(v) be found based on the knowledge of Q(v-1)?

slide-11
SLIDE 11
  • II. Incremental interpolation constraints

Multiplicity mij ~ interpolated point (xj, αi)

Given a polynomial Q(x, y), mij implies constraints of

Definition 1: Let Λ(mij) denote a set of interpolation constraints (r, s)ij indicated by mij, then Λ(M) denotes a collection of all the sets Λ(mij) defined by the entry mij of M

Example:

             1 2 1 1 1 2 M

Λ(M) = {(0, 0)00, (1, 0)00, (0, 1)00, (0, 0)11, (0, 0)12, (0, 0)20, (0, 0)21, (1, 0)21, (0, 1)21, (0, 0)32}

(r + s < mij) ) 1 + ( 2 1

ij ij m

m

M

slide-12
SLIDE 12

Definition 2: Let mij

v-1 and mij v denote the entries of matrix Mv-1 and Mv, the incremental

interpolation constraints introduced between the matrices are defined as a collection of all the residual sets between Λ(mij

v) and Λ(mij v-1) as: 

Example:

  • II. Incremental Interp. Constr.

             1 1 1 1 1

1

M

Λ(M2) = {(0, 0)00, (1, 0)00, (0, 1)00, (0, 0)11, (0, 0)12, (0, 0)20, (0, 0)21, (1, 0)21, (0, 1)21, (0, 0)32}

             1 2 1 1 1 2

2

M

Λ(M1) = {(0, 0)00, (0, 0)12, (0, 0) 20, (0, 0)21, (0, 0)32} Λ(ΔM2) = {(1, 0)00, (0, 1)00, (0, 0)11, (1, 0)21, (0, 1)21} 10 constraints 5 constraints 5 constraints M2 M1

slide-13
SLIDE 13
  • II. Progressive Interpolation

A big chunk of interpolation task Λ(ΜT) can be sliced into smaller pieces.

 

Λ(ΔΜv) defines the interpolation task of iteration v.

Λ(ΜT) Λ(ΔΜ1) Λ(ΔΜ2) Λ(ΔΜ3) Λ(ΔΜT) Λ(ΔΜv) ... ...

slide-14
SLIDE 14
  • II. Incremental Computations

Review on the interpolation process – iterative polynomial construction

Given Mv, the interpolation constraints are Λ(Μv)

The polynomial group is: Gv = {g0, g1, …, gv}, (degygv = lv)

The iterative process

For (r, s)ij ∈Λ(Μv) For each gt ∈ Gv

Finally, Q(v) = min{gt | gt ∈ Gv} defines the outcome of the updated group.

slide-15
SLIDE 15
  • II. Incremental Computations

From iteration v-1 to v …

The progressive interpolation can be seen as a progressive polynomial group expansion which consists of two successive stages.

Let be the outcome of iteration v-1.

During the generation of , a series of with (r, s)ij∈Λ(Μv-1) are identified and stored.

Expansion I: expand the number of polynomials of the group

Polynomials of ΔGv perform interpolation w.r.t. constraints of Λ(Μv-1);

Polynomials are re-used for the update of ΔGv.

Let be the updated outcome of ΔGv and

slide-16
SLIDE 16
  • II. Incremental Computations

Expansion II: expand the size of polynomials of the group

Polynomials of will now perform interpolation w.r.t. the incremental constraints Λ(ΔΜv), yielding .

Finally,

 Visualize the polynomial group expansion Expansion I

Expansion II

g1 g2 g3 g4 g5 g6 g1 g2 g3 g4 g5 g6

ASD PASD E.g., lv = 5

slide-17
SLIDE 17
  • II. Progressive Interpolation

The process of progressive interpolation

M1, M2, M3, … , Mv-1, Mv, …, MT-1, MT Λ(M1), Λ(M2), Λ(M3), …, Λ(Mv-1), Λ(Mv), …, Λ(MT-1), Λ(MT) G1 G2 G3 …… Gv-1 Gv GT-1 GT

Multiple factorizations are carried out in order to determine whether u(x) has been found!

Λ(ΔM2) Λ(ΔM3) Λ(ΔMv) Λ(ΔMT) ΔG2 ΔG3 ΔGv ΔGT Q(1) Q(2) Q(3) Q(v) Q(T-1) Q(T) Q(v-1) If Q(v)(x, u(x)) = 0, the decoding will be terminated.

slide-18
SLIDE 18
  • III. Validity Analysis

For any two (r1, s1)i1j1 and (r2, s2)i2j2 of Λ(ΜT): (r1, s1)i1j1 (r2, s2)i2j2 <==> (r2, s2)i2j2 (r1, s1)i1j1

The algorithm imposes a progressive interpolation order

Λ(ΜT) Λ(ΔΜ1) Λ(ΔΜ2) Λ(ΔΜ3) Λ(ΔΜT) Λ(ΔΜv) ... ... The (r, s)ij to be satisfied. The satisfied (r, s)ij.

slide-19
SLIDE 19
  • III. Validity Analysis

Decoding with an OLS of lv, the solution Q(x, y) is seen as the minimal candidate chosen from the cumulative kernel

For both of the algorithms: the same set of constraints are defined for the cumulative kernel;

Consequently, they will offer the same solution of Q(x, y).

slide-20
SLIDE 20
  • III. Validity Analysis

In the end of Expansion I,

Can and be found separately?

Recall the polynomial updating rules

  • The minimal polynomial defines the solution of one round of poly.

update w.r.t. (r, s)ij.

  • If such a group expansion procedure does not change the identity of ,

and can indeed be found separately.

slide-21
SLIDE 21
  • III. Validity Analysis

 

Expansion I: update to w.r.t. constraint of

The identity of the existing is left unchanged. Consequently, the solution of remains intact.

Therefore,

For

No update is required Update is required is in memory, Since < g*(of ΔGv) is not in memory, it will be picked up from ΔGv. will be re-used

( < )

slide-22
SLIDE 22
  • IV. Complexity Analysis

Average decoding complexity – average number of finite field arithmetic

  • peration for decoding one codeword frame;

  • -- the probability of the decoder is performing a successful decoding

with an OLS of lv;

  • -- the decoding complexity with an OLS of lv;

The average decoding complexity is:

is now channel dependent!

Decoding succ. Decoding fail.

slide-23
SLIDE 23
  • IV. Complexity Analysis

where

consists of and

since

slide-24
SLIDE 24
  • IV. Complexity Analysis

The decoding complexity increases exponentially with the OLS (dominant exponential factor of 5);

The decoding complexity is quadratic in the dimension of the code k. The decoding complexity will be smaller for a low rate code.

slide-25
SLIDE 25
  • IV. Complexity Analysis

 

The probability that the algorithm terminates at iteration v. SM1(c) ≤ Δ(C(M1)) SM2(c) ≤ Δ(C(M2)) SMv-1(c) ≤ Δ(C(Mv-1)) SMv(c) > Δ(C(Mv)) …… ……

Exit!

  • Iter. 1:
  • Iter. 2:
  • Iter. v-1:
  • Iter. v:

……

slide-26
SLIDE 26
  • IV. Complexity Analysis

Determining a closed form expression of turns out to be hard;

Motivation of the analysis: link with Π (~channel SNR);

Define , where and , with OLS greater than the above threshold, successful decoding can be guaranteed.

We therefore interpret as:

slide-27
SLIDE 27
  • IV. Complexity Analysis

Study the possible quantization of the OLS threshold

AWGN channel, we vary the SNR … In case of a ‘bad’ channel (e.g., SNR  -∞): In case of a ‘good’ channel (e.g., SNR  + ∞):

By refining , we can see the OLS threshold is a decreasing function of SNR.

Recall , will be in favor of smaller lv values by increasing SNR!

slide-28
SLIDE 28
  • IV. Complexity Analysis

Recall the average decoding complexity definition: In a sufficiently ‘good’ channel:  1 and In a ‘bad’ enough channel: …  0 and

slide-29
SLIDE 29
  • IV. Simulation Statistics

~ SNR for the (63, 47) RS code with l1 = 1, l’= 1 and lT = 5

AWGN channel

slide-30
SLIDE 30
  • IV. Simulation Results

~ SNR for the (63, 47) RS code with lT = 3, 5, 7.

AWGN channel

slide-31
SLIDE 31
  • IV. Simulation Results

~ SNR for the (15, 11) and (15, 5) RS codes with lT = 1, 3, 5, 10

AWGN channel

slide-32
SLIDE 32
  • V. Error-Correction Performance

PASD ~ ASD with same decoding parameter lT;

For PASD, decoding output is validated by CRC code;

For ASD, decoding output is validated by the ML criterion;

For the (63, 47) RS code, over AWGN channel:

slide-33
SLIDE 33
  • VI. Conclusions

A progressive algebraic soft-decision decoding approach;

Two key steps of PASD: progressive reliability transform & progressive interpolation;

Enables the complexity dominant interpolation process to be performed in an iterative manner, and the incremental computation between iterations is possible;

The average decoding complexity of the PASD algorithm is channel dependent and hence it has been optimized according to the needs;

Error-correction performance is also preserved.

A larger system memory is required.

slide-34
SLIDE 34

Acknowledgement

Project: Advanced coding technology for future storage devices; ID: 61001094; From 2011. 1 to 2013. 12.

Also funded by the Guangdong Natural Science Foundation (GNSF). Project: Research on adaptable list decoding system; ID: 10451027501005078; From 2010. 10 to 2012. 10.