(最新整理)BCH编码仿真_第1页
(最新整理)BCH编码仿真_第2页
(最新整理)BCH编码仿真_第3页
(最新整理)BCH编码仿真_第4页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、(完整)bch编码仿真(完整)bch编码仿真 编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望((完整)bch编码仿真)的内容能够给您的工作和学习带来便利。同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快 业绩进步,以下为(完整)bch编码仿真的全部内容。ii摘 要本课设的主要内容是介绍了信道编码中的bch码(bch码的定义、编码、译码、解码)。bch码是一类重要的循环码,能纠正

2、多个错误,通过调用已建立的bfsk+信道编码(取bch码)在加性高斯白噪声信道下的仿真模型,利用matlab编程分析bfsk在加性高斯白噪声信道的误码率性能;通过simulink建立bfsk+信道编码(取bch码)在加性高斯白噪声信道下的仿真模型,设置好每个模块的参数,编写好主程序实现bfsk的输入,在程序运行过程中间调用bfsk仿真模型,观察没加信道编码的误码率和通过bch编码的误码率;分析随着信噪比的增加误码率的变化。看看通过信道编码后对误码率的改善程度。分析不同的纠错能力对误码率性能的影响,分析不同的纠错能力对译码复杂度的影响.关键词:bch码;matlab;simulink;bfsk目

3、 录1。课程设计目的12。课程设计要求13. 相关知识13。1 matlab 简介13.1。1 基本功能13。1.2 matlab 产品应用23.1。3 matlab 特点23。1。4 matlab系列工具优势23。2simulink简介33。2.1simulink功能33。2.2simulink 特点44. 课程设计分析54。1 bch码说明54.2 思想方法64.3 功能说明65.仿真75.1 simulink框图及参数设置75.1。1 bch系统框图75。1。2参数设置75。1.3仿真结果116.结果分析117.参考文献12iiibch编码1.课程设计目的(1)掌握bch编码。(2)通过

4、matlab仿真,加深对bch编码理解。(3)锻炼运用所学知识,独立分析问题、解决问题的综合能力。2。课程设计要求了解bch编码是建立在严格的代数数学基础上的,就有限域和扩域进行了介绍;就bch码相关的基础知识(bch码定义、码长、生成多项式等等)进行学习,了解bch码的编码和译码过程;介绍了彼得森译码算法程序框图,了解彼得森译码的过程与原理。最后利用matlab编程分析bfsk在加性高斯白噪声信道的误码率性能;通过simulink建立bfsk+信道编码(取bch码)在加性高斯白噪声信道下的仿真模型。3. 相关知识3。1 matlab 简介3.1。1 基本功能matlab是很实用的数学软件它在

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

6、程序,用户可以直接进行下载就可以用。3.1。2 matlab 产品应用matlab 产品族可以用来进行以下各种工作: 数值分析 数值和符号计算 工程与科学绘图 控制系统的设计与仿真 数字信号处理技术 通讯系统设计与仿真 3.1.3 matlab 特点此高级语言可用于技术计算 此开发环境可对代码、文件和数据进行管理 交互式工具可以按迭代的方式探查、设计及求解问题 二维和三维图形函数可用于可视化数据 各种工具可用于构建自定义的图形用户界面 3。1。4 matlab系列工具优势(1)友好的工作平台和编程环境matlab由一系列工具组成。这些工具方便用户使用matlab的函数和文件,其中许多工具采用的

7、是图形用户界面。包括matlab桌面和命令窗口、历史命令窗口、编辑器和调试器、路径搜索和用于用户浏览帮助、工作空间、文件的浏览器.随着matlab的商业化以及软件本身的不断升级,matlab的用户界面也越来越精致,更加接近windows的标准界面,人机交互性更强,操作更简单。而且新版本的matlab提供了完整的联机查询、帮助系统,极大的方便了用户的使用。简单的编程环境提供了比较完备的调试系统,程序不必经过编译就可以直接运行,而且能够及时地报告出现的错误及进行出错原因分析. (2)简单易用的程序语言matlab一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点

8、.用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程序(m文件)后再一起运行。新版本的matlab语言是基于最为流行的c语言基础上的,因此语法特征与c语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式。使之更利于非计算机专业的科技人员使用。而且这种语言可移植性好、可拓展性极强,这也是matlab能够深入到科学研究及工程计算各个领域的重要原因。 (3)强大的科学计算机数据处理能力matlab是一个包含大量计算算法的集合.其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究

9、成果,而前经过了各种优化和容错处理.在通常情况下,可以用它来代替底层编程语言,如c复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。 3.2 simulink简介3.2.1 simulink功能simulink是matlab中的一种可视化仿真工具, 是一种基于matlab的框图设计环境,是实现动态系统建模、仿真和分析的一个软件包,被广泛应用于线性系统、非线性系统、数字控制及数字信号处理的建模和仿真中.simulink可以用连续采样时间、离散采样时间或两种混合的采样时间进行建模,它也支持多速率系统,也就是系统中的不同部分具有不同的采样速率。为了创建动态系统模型,simu

10、link提供了一个建立模型方块图的图形用户接口(gui) ,这个创建过程只需单击和拖动鼠标操作就能完成,它提供了一种更快捷、直接明了的方式,而且用户可以立即看到系统的仿真结果.simulink是用于动态系统和嵌入式系统的多领域仿真和基于模型的设计工具。对各种时变系统,包括通讯、控制、信号处理、视频处理和图像处理系统,simulink提供了交互式图形化环境和可定制模块库来对其进行设计、仿真、执行和测试。.构架在simulink基础之上的其他产品扩展了simulink多领域建模功能,也提供了用于设计、执行、验证和确认任务的相应工具。simulink与matlab紧密集成,可以直接访问matlab大

11、量的工具来进行算法研发、仿真的分析和可视化、批处理脚本的创建、建模环境的定制以及信号参数和测试数据的定义.3.2.2 simulink 特点丰富的可扩充的预定义模块库交互式的图形编辑器来组合和管理直观的模块图以设计功能的层次性来分割模型,实现对复杂设计的管理通过model explorer 导航、创建、配置、搜索模型中的任意信号、参数、属性,生成模型代码提供api用于与其他仿真程序的连接或与手写代码集成使用embedded matlab 模块在simulink和嵌入式系统执行中调用matlab算法使用定步长或变步长运行仿真,根据仿真模式(normal,accelerator,rapid acc

12、elerator)来决定以解释性的方式运行或以编译c代码的形式来运行模型图形化的调试器和剖析器来检查仿真结果,诊断设计的性能和异常行为可访问matlab从而对结果进行分析与可视化,定制建模环境,定义信号参数和测试数据模型分析和诊断工具来保证模型的一致性,确定模型中的错误4. 课程设计分析4.1 bch码说明bch 码1959 年由hocquenghem、1960 年由bose和chandhari分别独立提出。bch码是能够纠正多个随机错误的循环码,可以用生成多项式g(x)的根描述. 给定任一有限域gf()及其扩域gf(), 其中q是素数或或者某一素数的幂,m为某一正整数.设=gf(),l是任意

13、整数,是gf()的本源元,若v是码元取自gf(2)上码长为n的循环码,他的生成多项式g(x)含有以下2t个根、.,则由g(x)生成的循环码称为二元bch码,若、中有一个是本原元,则g(x)生成的码称为本原bch码。要考虑g(x)能否生成本原bch码,将要考虑、中是否有一个本源元,实际上只要考虑是本原元,g(x)生成本原bch码,若不是本原元,则也一定不是本原元,因而生成本原bch码。设阶为,i=1,2,3,、,2t,则以、为根的bch码的码长若、的极小多项式分别为(x),(x),(x),生成多项式g(x)以、为根的bch码的生成多项式可以写成g(x)=lcm((x),(x),(x),由极小多项

14、式的性质可以知道,与的平方,有相同的极小多项式,因此以、为根的bch码的生成多项式可以简化成 g(x)=lcm(x),(x),(x) (3.2)这个g(x)=lcm((x),(x),(x)中多以取最小公倍,是要在(x),(x),(x)中去掉那些相同的极小多项式,既然g(x)=lcm(x),(x),(x)中已经把的极小多项式相同的去掉啦,是否可以把g(x)=lcm(x),(x),(x)中最小公倍符号省略,直接写成(x),(x),(x)的形式,回答是否定的,这是因为,虽然(x),(x),(x)中已经去掉了一些相同的极小多项式,但是不一定去掉了所有的与(x)相同的极小多项式,由g(x)=lcm(x)

15、,(x),(x)可以知道,以、为根的bch码的码长n=lcm(,.)。若的阶为,则的阶是的因子,因此码长公式可以简化为n=lcm(,)=.设是gf()的本原元,=,则的阶 (3.3)即以、为根的bch码的码长为 (3。4)4.2 思想方法先用simulink建立bfsk+信道编码(取bch码)在加性高斯白噪声信道下的仿真模型,设置好每个模块的参数,编写好主程序实现bfsk的输入,在程序运行过程中间调用bfsk仿真模型,将不同纠错能力的误码率曲线在一个仿真结果图里展现;分析随着信噪比的增加,误码率曲线的走势,在不同的纠错能力t下,分析(15。7。2)(15.5.3)的误比特率随信噪比的走势,记录

16、仿真所用的不同的时间,用时间作为译码复杂度的参数.根据仿真结果分析不同的纠错能力对编码性能的影响,不同的纠错能力对译码复杂度的影响。4。3 功能说明通过调用已建立的bfsk+信道编码(取bch码)在加性高斯白噪声信道(有突发干扰)下的仿真模型,利用matlab编程分析bfsk在加性高斯白噪声信道的误码率性能;分析不同纠错能力对误码率性能的影响和不同的纠错能力对译码复杂度的影响,根据仿真图的结果得出进行分析得出结论。5.仿真 5.1 simulink框图及参数设置5。1.1 bch系统框图图5。1 bch系统框图5.1。2参数设置bch系统参数设置如图5.1到5。8所示图5。2信号发生器参数设置

17、图5.3 bch码编码器参数设置图5.4 bpsk调制器参数设置图5。5高斯信道参数设置图5.6 bpsk解调器参数设置图5.7 bch解码器参数设置图5.8误码率计算参数设置5。1.3仿真结果仿真结果如图5。9所示图5.9仿真结果6.结果分析改变信噪比的值可以看到误比特率随着信噪比的增加在逐渐下降。通过bch编码以后的误比特率比未经过bch编码的误比特率在相同的信噪比参数下,其误比特率有明显的下降,编码性能得到改善。随着信噪比的增加误比特率在逐渐下降,当增大到一定值的时候,误比特率趋向于零。理论上在信噪比比较小的情况下,编码后的误码性能没有未编码的无码性能好,也就是在信噪比比较低的情况下,未编码和经过编码后的误比特率曲线会有交点。这次通过对bch 编码解码课设,学会了bch码的原理。而且通过此次实验更是加深了matlab在通信领域的应用,及通过matlab对信号仿真的重要性,并且提高自己的动手能力和编程能力.在此过程中,感谢老师的指导和同学们的帮助,使我能够顺利完成实验.7.参考文献1 许波,刘征,mat

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论