Reply by jitu007 October 24, 20072007-10-24
Hi,
     The better way to do RS decoder is to append the parity bytes after
msg bytes,and the reason for that is same what u explained..

Jitu.
    








>Dear all > >what are the advantage or disadvantage when we prepend or append the
Reed
>Solomon (RS) parity ? > >notation: >systematic RScodec (n,k,t) >n is code length >k is message length >t is correcting ability >m = message m(0)...m(k-1) >p = parity p(0)...p(2t-1) >where 0 is MSB > >append style >[m(0) ...m(k-1) p(0)..p(2t-1)] > >prepend style >[p(0)..p(2t-1) m(0) ...m(k-1) ] > >case study: WiMax 802.16d (32,24,4)GF256 >the code is shorten and puncture > >the spec is using prepend style >[p(0)...p(7) m(0) ...m(23) ] >[p(0)...p(7) 0*8 0*215 m(0)...m(23)] > >however if is append >[m(0)...m(23) p(0) ...p(7) ] >[0*215 m(0)...m(23) p(0) ...p(7) 0*8] > >from equation point of view >as long as both encoder and decoder know where the position of parity >there will be no problem to decode >because Reed Solomon codec is linear and cyclic > >from implementation point of view >in hardware, i prefer append style >append >encoder: i can output data and parity in order >decoder: i can put receive data to syndrome calculator >where everything is in order > >prepend >encoder: need to put data in somewhere after I output parity byte after >all message are encoded >decoder: need to reorder before I put receive to syndrome calculator >more waiting comparing to append style > >anyone has idea on why WiMax 802.16d using prepend style ?? >am i missing something ? >thank you > > > > > > >
Reply by AllenLee August 24, 20072007-08-24
Dear all

what are the advantage or disadvantage when we prepend or append the Reed
Solomon (RS) parity ?

notation:
systematic RScodec (n,k,t)
n is code length
k is message length
t is correcting ability
m = message m(0)...m(k-1)
p = parity  p(0)...p(2t-1)
where 0 is MSB

append style
[m(0) ...m(k-1) p(0)..p(2t-1)]

prepend style
[p(0)..p(2t-1) m(0) ...m(k-1) ]

case study: WiMax 802.16d (32,24,4)GF256
the code is shorten and puncture

the spec is using prepend style
[p(0)...p(7) m(0) ...m(23) ]
[p(0)...p(7) 0*8 0*215 m(0)...m(23)]

however if is append 
[m(0)...m(23) p(0) ...p(7) ]
[0*215 m(0)...m(23) p(0) ...p(7) 0*8]

from equation point of view
as long as both encoder and decoder know where the position of parity 
there will be no problem to decode
because Reed Solomon codec is linear and cyclic

from implementation point of view
in hardware, i prefer append style 
append
encoder: i can output data and parity in order
decoder: i can put receive data to syndrome calculator
where everything is in order

prepend
encoder: need to put data in somewhere after I output parity byte after
all message are encoded
decoder: need to reorder before I put receive to syndrome calculator
more waiting comparing to append style

anyone has idea on why WiMax 802.16d using prepend style ??
am i missing something ?
thank you