线性分组码(6,3)码的编译码仿真设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

*******************

实践教学

*******************

兰州理工大学

计算机与通信学院

2013年秋季学期

计算机通信课程设计

题目: 线性分组码(6,3)码的编译码仿真设计

专业班级:通信三班

姓名:

学号:

指导教师:彭铎

成绩:

线性分组码是差错控制编码的重要一种,在本次课程设计中,我们采用MATLAB对线性分组码(6,3)码进行编码与译码的仿真设计。它可以对输入的三位的信息码进行线性分组码编码,对于接收到的六位码字可以进行译码,从而译出三位信息码。当接收到的六位码字中有一位发生错误时,可以纠正一位错码;当接收到的码字有两位发生错误时,只判断是否正确,但不纠正错误。

关键字:线性分组码编码译码

前言 (1)

1 线性分组码 (2)

1.1 线性分组码编码 (2)

1.2 校验矩阵 (4)

1.3 伴随式与译码 (4)

1.3.1 码的距离及纠检错能力 (4)

1.3.2 伴随式与译码 (5)

2 MATLAB的简介 (7)

2.1 MATLAB的概况 (7)

2.2 MATLAB的语言特点 (7)

3 仿真结果及分析 (10)

3.1程序分析 (10)

3.2仿真结果 (10)

设计总结 (12)

致谢 (13)

参考文献 (14)

附录 (15)

近年来,随着计算机、卫星通信及高速数据网的飞速发展年来随着计算机、卫星通信及高速数据网的飞速发展,数据的交换、处理和存储技术得到了广泛的应用,人们对数据传输和存储系统的可靠性提出了越来越高的要求。因此,如何控制差错、提高数据传输和存储的可靠性,成为现代数字通信系统设计的重要课题。

在实际信道上传输数字信号时,由于信道传输不理想和加性噪声的影响,接收端所收到的信号不可避免的会发生错误,必须采用信道编码(即差错控制编码)将错误比特率进一步的降低,以满足系统指标的要求。所谓信道编码就是在要传输的信息序列中增加一些被称为监督码元的码组使之在接收端能够发现传输过程中是否有错并予以纠正。

目前,绝大多数的数字计算机和数字通信系统中广泛采用二进制形式的码。而线性分组码具有编译码简单,封闭性好等特点,采用差错控制编码技术是提高数字通信可靠性的有效方法,是目前较为流行的差错控制编码技术。

n,,对线性分组码即使线性码又是分组码,分组码是一组固定长度的码组,可表示为()k

其中n表示码字的长度,k表示信息位的长度,而n-k个监督位的作用就是实现检错与纠错。

1 线性分组码

即是线性码又是分组码的码称线性分组码,监督码元与本组信息码元有关的码称为分组码,监督码元与信息码元的关系可以用线性方程表示的码,因此,一个码字中的监督码元只与本码字的信息码元有关,而且这种关系可以用线性方程来表示的就是线性分组码通常用(n ,k )表示。

线性分组码(n ,k )中许用码字(组)为2k

个。定义线性分组码的加法为模二加法,乘法为二进制乘法。即1+1=0、1+0=1、0+1=1、0+0=0;1×1=1、1×0=0、0×0=0、0×1=0。 线性分组码具有如下性质(n ,k )的性质:

1、封闭性。任意两个码组的和还是许用的码组。

2、码的最小距离等于非零码的最小码重。

对于码组长度为n 、信息码元为k 位、监督码元为r =n -k 位的分组码,常记作(n ,k )码,如果满足2r -1≥n,则有可能构造出纠正一位或一位以上错误的线性码。 1.1 线性分组码编码

下面以(6,3)分组码为例,讨论线性分组码的编码原理。设分组码(n ,k )中,k = 3,为能纠正一位误码,要求r≥3。现取r =3,则n =k +r =6。该例子中,信息组为[]345c c c ,码字为[]012345c c c c c c .当已知信息组时,按以下规则得到三个校验元,即 c 2=c 5+c 4

c 1=c 3+c 4 (1-1)

c 0=c 5+c 3

这组方程称为校验方程。

(6,3)线性分组码有23(8)个许用码字或合法码字,另有26-23

个禁用码字。发送方发送的是许用码字,若接收方收到的是禁用码字,则说明传输中发生了错误。

为了深化对线性分组码的理论分析,可将其与线性空间联系起来。由于每个码字都是一个二进制的n 重,及二进制n 维线性空间n V 中的一个矢量,因此码字又称为码矢。线性分组码的一个重要参数是码率r=k/n,它说明在一个码字中信息位所占的比重,r 越大,说明信息位所占比重越大,码的传输信息的有效性越高。由于(n,k)线性分组,线性分组码的2k 个码字组成了n 维线性空间n V 的一个K 维子空间。因此这2k

个码字完全可由k 个线性无关的矢量所组成。

设此k 个矢量为ck c c 21有生成矩阵形式为

G=⎥⎥⎥⎥⎥⎥⎥⎥⎦

⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡∙∙∙ck c c 21 (1-2)

(n,k)码字中的任一码字i c ,均可由这组基底的线性组合生成,即

i c =i m ·G=[]k n n n m m m --- 21·G

式中,i m =[m n-1 m n-2 …m n-k ]是k 个信息元组成的信息组。

表1.1 (6,3)线性分组码

对于表1给出的(6,3)线性分组码,可将写成矩阵形式

[]012345c c c c c c =[]345c c c .⎥⎥⎥⎦

⎤⎢⎢⎢⎣⎡110100011010101001 故(6,3)码的生成矩阵为

G=⎥⎥⎥⎦

⎤⎢⎢⎢⎣⎡110100011010101001 可以看到,从(6,3)码的8个码字中,挑选出k=3个线性无关的码字(100101)(010110),(001011)作为码的一组基底,用c=m ·G 计算得码字。

一个系统码的生成矩阵G ,其左边k 行k 列应是一个k 阶单位方阵k I ,因此生成矩阵

G 表示为

G=[]Q I K (1-3) 式中,Q 是一个k ×(n-k)阶矩阵。

相关文档
最新文档