# Inmarsat Reed Solomon decoder

Discussion in 'VHDL' started by naliali, Aug 7, 2007.

1. ### nalialiGuest

Hi there!
I suppose to implement a Reed Solomon decoder for Inmarsat video
unfortunately I couldn't find any useful information on the net about
FEC used in Inmarsat.
- it is over GF(32) by primitive polynomial p(x) = x^5+x^2+1 = 37
- Data length is 15 and parity length is 16, so having RS(31,15, 37)

but the major problem is that I don't know it's generator polynomial
g(x). using default Matlab RS encoder, I found that Matlab uses g(x)
=
(x+a^1)(x+a^2)...(x+a^16) as generator polynomial for rs(31,15). but
I'm not sure it's the same as g(x) which used in Inmarsat standard.

any comment and remark is appreciated

naliali, Aug 7, 2007

2. ### makhanGuest

Hello,

RS Decoder design is an involved process, you need to perform
descrepency analysis, then berlekemp-Messey, Chien-Forney, and finally
exhaustive search to locate and fix the errors in your code. What is
your throughput requirements? And if you want to implement the RS
Decoder, you will have to go through all the above mentioned
algorithms and implement them in a pipeline to maximize throughput.

Now, start the search for papers describing these algos.

Hope this helps

Mak

On Aug 7, 11:36 am, naliali <> wrote:
> Hi there!
> I suppose to implement a Reed Solomon decoder for Inmarsat video
> unfortunately I couldn't find any useful information on the net about
> FEC used in Inmarsat.
> - it is over GF(32) by primitive polynomial p(x) = x^5+x^2+1 = 37
> - Data length is 15 and parity length is 16, so having RS(31,15, 37)
>
> but the major problem is that I don't know it's generator polynomial
> g(x). using default Matlab RS encoder, I found that Matlab uses g(x)
> =
> (x+a^1)(x+a^2)...(x+a^16) as generator polynomial for rs(31,15). but
> I'm not sure it's the same as g(x) which used in Inmarsat standard.
>
> any comment and remark is appreciated

makhan, Aug 13, 2007