您的当前位置:首页正文

差错控制编码电路的设计与仿真

2021-11-23 来源:易榕旅网
课 《通信原理课程设计》的目的是使学生融会贯通《通信原理》课程所学的专业基础理论知识,完成一个较为完整的设计、仿真、分析及计算过程,以加深对所学理论的理解与应用。培养学生综合运用已学的基础理论知识和专业知识来解决基本工程设计问题的初步技能,全面提高学生的动手能力以及实际工程能力。 (1)每人选择1个题目,阐述所选系统的设计思路与设计步骤,并采用程设计目的 课程设计要求Matlab仿真平台验证你的设计,观点正确、论据充分,字数要求3000~5000字; (2)每人的文档应反映各自的观点,不准抄袭,若发现有两人或两人以上的雷同卷,一律退回,成绩记0分; (3)不能直接从网上或其他资料下载; (4)按时提交。 课程设计注意事项 (1)态度应端正,思想上应重视,并且遵守学校的一切教学规定; (2)独立完成设计与仿真,杜绝抄袭与COPY; (3)课程设计的附件部分应按照模板要求撰写。 课程设计内容设计线性分组码(采用汉明码或循环码)的编译码电路,并基于Matlab7.0软件仿真平台进行验证。 课 (1)选题:从8个设计项目中选择1个题目; (2)复习:系统复习通信原理的相关内容; (3)资料检索:根据所选题目收集资料,并且消化资料; (4)系统设计 (5)仿真模型的建立 (6)仿真结果与分析 (7)撰写课程设计论文 程设计简要操作步骤

课程设计心得体会通过此次试验,在老师的帮助下,学会了MATLAB的使用,懂得了用MATLAB编写简单的信号,并得出其函数图形。 知道了MATLAB软件功能的强大,了解MATLAB的由来,和基本功能,为在以后的学习中,多了一个强大的学习和计算工具。 在此次中,也看到了自己的严重不足,以后应在此处会更加努力,学好这种工具的应用。 评课程设计评语及成绩成绩语 指导教师 (签 名) 2011年6月 日 差错控制编码电路的设计与仿真

摘要 MATLAB 是很实用的数学软件它在数学类科技应用软件中在数值运 算方面首屈一指。MATLAB 可以进行运算、绘制函数和数据、实现算法、 创建用户界面、连接接其他编程语言的程序等,主要应用于工程计算、控 制设计、信号处理与通讯、金融建模设计与分析等领域。 MATLAB 的基本数据单位是矩阵,它的指令表达式与数学、工程中常 用的形式十分相似,故用 MATLAB 来解算问题要比用 C,FORTRAN 等语 言完成相同的事情简捷得多,并且 mathwork 也吸收了像 Maple 等软件的 优点,使 MATLAB 成为一个强大的数学软件。可以直接调用,用户也可以将 自己编写的实用程序导入到 MATLAB 函数库中方便自己以后调用,此外许 多的 MATLAB 爱好者都编写了一些经典的程序,用户可以直接进行下载就 可以用。

关键字 差错控制 线性分组码

目录

绪论 ...................................................................................................................................... 4

差错控制论述 ................................................................................................................ 4

差错控制分类 ................................................................................................................ 5 解决这些差错的途径 ..................................................................................................... 5 方案 ...................................................................................................................................... 5

差错控制编码的基本概念 .............................................................................................. 5 码距与纠错能力的关系.................................................................................................. 7 过程论述 ............................................................................................................................... 7

线性分组码概述............................................................................................................. 7 线性分组码具有如下性质(n,k)的性质 .................................................................... 8 线性分组码原理............................................................................................................. 8 结果分析 ............................................................................................................................. 12 结论 .................................................................................................................................... 14 致谢 .................................................................................................................................... 14 参考文献 ............................................................................................................................. 15

绪论

差错控制论述

数字信号在实际信道的传输过程中,由于信道特性的不理想和线路本身电器特性造成的随机噪声、信号幅度的衰减、频率和相位的畸变、电气信号在线路上产生反射造成的回音效应、相邻线路间的串扰以及各种外界因素(如大气中的闪电、开关的跳火、外界强电流磁场的变化、电源的波动等)都会造成信号的失真。这种失真将会使接收端收到的二进制比特和发送端实际发送的二进制比特不一致,从而造

成由“0”变成“1”或由“1”变成“0”的差错,即产生误码。 差错控制分类

随机差错:由信道的加性随机噪声引起的差错,例如正态分布的白噪声引起的差错,相应的信道称为随机信道;

突发差错:在某一段时间内出现一连串的差错,例如移动通信中信号在某一段时间内发生衰落,相应的信道称为突发信道;

混合差错:既有随机差错又有突发差错,相应的信道称为混合信道 解决这些差错的途径

1.合理设计基带信号传输码型; 2.采用均衡技术

3.提高信噪比,即加大发送功率 4.适当选择调制解调方式

5.采用差错控制编码。前四种的内容在前面各章中已经介绍过了,而且当采用这几种途径,误码率的指标仍然不能满足要求时,就需要采用差错控制编码

方案

差错控制编码的基本概念 1.几个名词解释:

(1)码字:由若干个码元组成,如10001100。

(2)码组:多个码字构成的集合。如{000000,001110,010101,011011,

100011,101101,110110,111000}

(3)码距:两个等长码字之间对应位不同的个数,也称为汉明距离,用d表示。例如码字10010和01110,有3个位置的码元不同,所以d=3。码组集合中各码字之间距离的最小值,称为最小码距,用dmin表示。

(4)码重:码字中“1”码元的个数,用W表示。例如码字11001的码重W=3。

2.纠错编码的基本原理:

(1)编码的基本思想:从一个例子来说明,例如:当某位同学收到他朋友发来的一条短信“星期二上午四点到西湖边”,他会判断这里有错,其一对方明明知道该同学星期二一天都有课,其二以前都是在上午十点见面,这样他将根据他们之间的熟悉程度(某种关联性或约束关系),就把原信息纠正为“星期日上午十点到西湖边”。但是一些机器不懂得这些自然的关联性,因此我们在发送信息时,要人为地加入类似的关联性,使接收端也能按某种约定进行判别,从而达到检、纠错的目的。这样我们不难得出差错控制编码的基本思想:在信息码序列中加入一些冗余位(监督码),使信息码元产生某些关联性。 (2)编码的基本原理:在发送端把原来的信息码序列按k位分成若干段,根据收发双方约定的关系在每段后加入r位监督码元,产生一个n=k+r位的编码,接收端按同样的约束关系进行判别,从而发现甚至纠正错误。因此不难理解不同的编码方法,有不同的检错和纠错能力,增加监督码元越多,检(纠)错能力越强。差错控制编码原则上是降低来换取可靠性的提高。

(3)编码效率:指码字中的信息码元个数与码字总长度的比值。

码距与纠错能力的关系

接下来我们以重复码来发送天气预报为例来说明码距与纠错能力之间的定量关系。

不同编码位数发送天气预报的纠错情况

从表中可知,情形1用1个bit表示两种状态,没有冗余状态,因此没有任何检、纠错能力;情形2用2个bit表示两种状态11(晴)、00(雨),常把11、00称为许用码字,还有两种不被使用的状态01、10称为禁用码字,当许用码字错一位,就变成禁用码字,因此可以判断有一位错了,但还是不知道到底哪位错了;情形3用3个bit表示两个许用码字111(晴)、000(雨),因此还有6个禁用码字,此时当发生一位错码时,例如111错成110,不仅可以检测错误,而且根据最大似然法可以纠正错误;当发生两位错码时,例如000错成101,仍然可以检测出有错误,但根据最大似然法判断成111错成101,所以不能纠2位错。造成以上三种情形不同纠检错能力的原因在于码距的不同,因此最小码距是衡量码组检错和纠错能力的依据,在这里我们不加证明地利用有关结论

过程论述

线性分组码概述

线性分组码(n,k)中许用码字(组)为个。定义线性分组码的加法为模二加法, 乘法为二进制乘法。即 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)码,如果满足 -1≥n,则有可能构造出纠正一位或一位以上错误的线性码。

下面我们通过(7,3)分组码的例子来说明如何具体构造这种线性码。设分组码(n,k)中,k = 3,为能纠正一位误码,要求 r≥3。现取 r=4,则 n=k +r=7。 该例子中, 信息组为(c6c5c4),码字为(c6c5c4c3c2c1c0).当已知信息组时, 按以下规则得到四个校验元,即

c3=c6+c4 c2=c6+c5+c4 c1=c6+c5 c0=c5+c4 这组方程称为校验方程。

线性分组码有 2 (8)个许用码字或合法码字,另有 2 -2 个禁用码 字。发送方发送的是许用码字,若接收方收到的是禁用码字,则说明传输中发生了错误。

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

Vn 的 维子空间。因此这 2 个码字完全可由 k 个线性无关的矢量所组成。 设此 k 个矢量为 c1,c2,„,ck,有生成矩阵形式为 c1 c2

G= · ·

· ck

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

ci=mi ·G=[mn-1 mn-2 „ mn-k]·G

式中,mi =[mn-1 mn-2 „mn-k ]是 k 个信息元组成的信息组。 表所示为线性分组码 信息组 000 001 010 011 100 101 110 111 码字 0000000 0011101 0100111 0111010 100110 1010011 1101001 1110100 对于表给出的线性分组码,可将写成矩阵形式

1 0 0 1 1 1 0 [c6 c5 c4 c3 c2 c1 c0]=[c6 c5 c4]· 0 1 0 0 1 1 1

0 0 1 1 1 0 1

故码的生成矩阵为 1 0 0 1 1 1 0 G= 0 1 0 0 1 1 1

0 0 1 1 1 0 1

可以看到码的8个码字中,挑选出k=3个线性无关的码字(1001110) (0100111)(00111101)作为码的一组基底,用 c=m·G 计算得码字。

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

G=[Ik P]

式中,P 是一个 k×(n-k)阶矩阵。

结果分析

通过对线性分组码中的线性分组码的编译码编程实现,了解到线性分组码的构成方式是把信息序列分成每k个码元一段,并由这k个码元按一定规则产生r个校验位,组成长度为n=k+r的码字,用(n,k)表示。信息码元与校验位之间为线性关系。并且知道了线性分组码的编码过程信息码元与校验位之间的线性关系实现起来是十分简单。对于码组长度为n、信息码元为k位、监督码元为r=n-k位的分组码,如果满足-1≥n,则有可能构造出纠正一位或一位以上错误的线性码。就像本设计的(7,3)分组码的(n,k)中,n=6,k=3,r≥3 能纠正一位误码,检测到两位误码。运用MATLAB语言进行编程,可以较明显的知道编码的过程和译码时出现的错误,码字的最小距离是3时,可以纠正一位错误,当输入特定的两位错误时,该码字还可以纠正这两位错误,这种情况在编程结果

的命令窗口中可以明显看到。线性分组码具有编译码简单,封闭性好等特点,采用差错控制编码技术是提高数字通信可靠性的有效方法,是目前较为流行的差错控制编码技术之一。

仿真系统中的示波器显示

无交织系统在不同突发干扰尺寸信道中的传输特性;

有交织系统在不同突发干扰尺寸信道中的传输特性

结论

通过这次课程设计MATLAB软件工作环境的熟悉以及掌握基本的操作,实现电路仿真的实现,我还认识到理论与实际相结合的重要性,理论知识再丰富,没有实际的操作经验是不行的,这样还可以锻炼我们的实际动手操作能力和独立思考能力。单片机知识在电子领域越来越重要了,在这次课程设计中我又了解了更多单片机的知识, 从而也对单片机仿真软件产生了兴趣,学到了书上没有的东西,为以后工作又做了一层铺垫。在课程设计过程中遇到的一些问题,通过查询资料和结合平时学到的知识,当然还有和同学的讨论得到了解决。

致谢

经过这一个周的实训,通信原理课程设计也已接近尾声,回顾这星期内和老师、同学们一起努力时的点点滴滴,不经感慨万千。在此我首先要感谢学校,是学校给我们提供了良好的硬件设施,让我们能顺利的完成实训。其次,我要感谢

我的通信原理老师—黄老师。陈老师无论在课程学习、设计上,还是在为人处事上,都给予我许多教诲,这些影响将使我终身受益。此次课程设计使我学到很多东西,不仅提高了我的动手能力及自学能力, 还知道了我的不足之处,今后应加强。这次课程设计能进展如此顺利,多亏了老师们 不辞辛苦,不厌其烦的耐心指导,同学们之间互相协作,还有我使用的参考书的 编者们的帮助,在此我诚挚地感谢您们!

同时我还要感谢和我一起完成这份课程设计的同学们,我们在学习和实践一起讨论,一起研究,我在他们身上学到了许多东西。

参考文献

[1] 孙丽华.信息论与纠错编码. 北京,电子工业出版社, 2005.

[2] 郭文彬.通信原理基于MATLAB的计算机仿真.北京,邮电大学出版社. 2006. [3] 苏金明.MATLAB 实用教程(第二版).北京,电子工业出版社, 2008 [4] 徐东艳.MATLAB 函数库查询词典.北京,中国铁道出版社, 2006 [5] 潘新民.计算机通信技术.北京,电子工业出版社,2003

[6] 吴玲达.计算机通信原理与技术.北京,国防科技大学出版社,2003 [7] 曹志刚.现代通信原理.北京,清华大学出版社,1992

[8] 梅志红.MATLAB程序设计基础及其应用.北京,清华大学出版社,2005 [9] 樊昌兴.通信原理.北京,国防工业出版社,1999

因篇幅问题不能全部显示,请点此查看更多更全内容