RS 码系统 MATLAB 仿真
RS 码系统MATLAB 仿真
一. RS 码简介:
RS 码是一类纠错能力很强的多进制 BCH 码。其纠正 t 个符号错误的 RS 码的主要参
数如表一所示:
RS 码由于采用了 q 进制,所以它是多进制调制时的自然和 码长 m
n 2 =−1
方便的编码手段。因为 RS 码能够纠正 t 个 q 位二进制码,即
信息段 k 符号
可以纠正≤q 位二进制错误(当然,对于 q 位二进制码中分散
监督段 n-k=2t 符
的单个错误也能被纠正),所以适合于在衰落信道中使用,以 号
克服突发性差错。另外 RS 码也被应用在计算机存储系统中, 最小码距 D=2t+ 1
以克服这系统中存在的差错串。
表一
二. 仿真流程
本实验采用 RS (7,3 )码进行仿真,其仿真流程图如图一所示:
多 进 制 信 源
将多进制信息进行分帧
RS (7,3 )编码
8PSK 调 制
AWGN 信道
8PSK 解 调
RS (7,3 )译码
将信息帧合并一串信息
误 码 率 计 算
图 一
1
RS 码系统 MATLAB 仿真
三.模块分析
1. 多进制信源:
用 MATLAB 自带函数rand 产生随机数,乘以 M (所要产生的进制数),再经过向
下取整即可。
2. 将多进制信息进行分帧:
由于多进制信源产生的是一连串的多进制符号,为了进行编码,需将这些符号进行
分组,本实验采用 MATLAB 自带函数reshape, 将信息串(本实验采用 12000)变换成
一个矩阵,该矩阵的行数为帧数(本实验为 4000 ),列数为信息位数(本实验为 3 )。
3. RS 编码
2t 2t
j i
(1)纠t个符号错误得RS码得生成多项式g(x)= ∏(x +α ) ∑g x , α是伽逻华域
i
j 1 i 0
GF (2m )得域元素。