RS编码实例:对(15,9)型进行编码
举例如下: 假设所处的域为2^4的伽罗华域(本原多项式为x^4+x+1) 码型为(15,9),则n=15,k=9,t=3,d=7; 1 2 3 4 5 6 7 8 9 直接用matlab生成g(x) rsgenpoly(15,9) ans = GF(2^4) array. Primitive polynomial = D^4+D+1 (19 decimal) Array elements = 1 7 9 3 12 10 12 = x^6 + 7x^5 + 9x^4 + 3x^3 + 12x^2 + 10x + 12
信息多项式为: M(x) = x^8 + 2x^7 + 3x^6 + 4x^5 + 5x^4 + 6x^3 + 7x^2 + 8x^1 + 9 由于t=3,将信息多项式乘以 x^6 被除数:x^14 + 2x^13 + 3x^12 + 4x^11 + 5x^10 + 6x^9 + 7x^8 + 8x^7 + 9x^6 除数:x^6 + 7x^5 + 9x^4 + 3x^3 + 12x^2 + 10x + 12 数组长度为[NN] 将上式除以码元发生多项式g(x) x^14 x^13 x^12 x^11 x^10 x^9 x^8 x^7 x^6 x^5 x^4 x^3 x^2 x^1 x^0 1 2 3 4 5 6 7 8 9 0 0 0 0 0 0 *x^8 1 7 9 3 12 10 12 0 0 0 0 0 0 0 0 add 0 5 10 7 9 12 11 8 9 0 0 0 0 0 0 *5x^7 5 8 11 15 9 4 9 0 0 0 0 0 0 0 add 0 2 12 6 5 15 1 9 0 0 0 0 0 0 *2x^6 2 14 1 6 11 7 11 0 0 0 0 0 0 add 0 2 7 3 4 6 2 0 0 0 0 0 0 *2x^5 2 14 1 6 11 7 11 0 0 0 0 0 add 0 9 2 2 13 5 11 0 0 0 0 0 *9x^4 9 10 13 8 6 5 6 0 0 0 0 add 0 8 15 5 3 14 6 0 0 0 0 *8x^3 8 13 4 11 10 15 10 0 0 0 add 0 2 1 8 4 9 10 0 0 0 *2x^2 2 14 1 6 11 7 11 0 0 add 0 15 9 2 2 13 11 0 0 *15x^1 15 11 14 2 8 12 8 0 add 0 2 12 0 5 7 8 0 *2 2 14 1 6 11 7 11 add 0 2 1 3 12 15 11 经过以上计算,可得余数为: r(x) = 2x^5 + x^4 + 3x^3 + 12x^2 + 15x^1 + 11 则 T(x) = M(x) + r(x) = x^14 + 2x^13 + 3x^12 + 4x^11 + 5x^10 + 6x^9 + 7x^8 + 8x^7 + 9x^6 + 2x^5 + x^4 + 3x^3 + 12x^2 + 15x^1 + 11 简写为 1 2 3 4 5 6 7 8 9 2 1 3 12 15 11
序列[1 2 3 4 5 6 7 8 9] 则经过RS编码后为 [1 2 3 4 5 6 7 8 9 2 1 3 12 15 11]
GF(2^4)的本原多项式为:1+X+X^4
GF(2^4)
|
A的多项式
|
D3D2D1D0
|
对应的十进制
|
0
|
0
|
0000
|
0
|
A^0
|
A^0
|
0001
|
1
|
A^1
|
A^1
|
0010
|
2
|
A^2
|
A^2
|
0100
|
4
|
A^3
|
A^3
|
1000
|
8
|
A^4
|
A+1
|
0011
|
3
|
A^5
|
|
0110
|
6
|
A^6
|
|
1100
|
12
|
A^7
|
|
1011
|
11
|
A^8
|
|
0101
|
5
|
A^9
|
|
1010
|
10
|
A^10
|
|
0111
|
7
|
A^11
|
|
1110
|
14
|
A^12
|
|
1111
|
15
|
A^13
|
|
1101
|
13
|
A^14
|
|
1001
|
9
|
A^15
|
|
0001
|
1
|
乘法时采用指数的形式进行计算,指数相加;
加法时采用二进制或十进制的形式,进行异或运算。
|