毕业设计(论文)基于VHDL汉明码编译码器的设计与实现.doc
《毕业设计(论文)基于VHDL汉明码编译码器的设计与实现.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于VHDL汉明码编译码器的设计与实现.doc(36页珍藏版)》请在三一办公上搜索。
1、基于VHDL汉明码编译码器的设计与实现目 录摘 要1第一章 绪论31.1研究背景与选题意义31.2研究目标与主要工作31.3论文的内容安排4第二章 汉明码及汉明码编译原理421 纠错编码的基本原理42.1.1 分组码基本原理42.1.2分组码的码重和码距52.2 汉明码编译原理8第三章 VHDL语言与集成环境1031 EDA概念103.2 Max+pluxII简介113.3 VHDL语言123.3.1基本介绍123.3.2 VHDL语言设计的特点123.3.3 VHDL语言优势13第四章 汉明码编译系统模块设计与实现1441 汉明码编译原理设计1442 系统模块设计144.2.1 16位比特序
2、列产生与分组模块144.2.2 编码模块164.3.3 加错模块164.3.4 译码与分组模块17第五章 系统仿真、调试和结果分析185.1 16位序列产生与分组模块仿真185.1.1仿真图185.1.2 结果分析195.2 编码模块仿真195.2.1仿真图195.2.2 结果分析195.3 加错模块195.3.1仿真图195.3.2 结果分析205.4 译码与分组串行模块仿真205.4.2 结果分析205.5 系统仿真205.5.1 顶层图205.5.3 结果分析25第六章 总结25参考文献26附录程序:28摘 要在通信系统中,要提高信息传输的有效性,我们将信源的输出经过信源编码用较少的符号
3、来表达信源消息,这些符号的冗余度很小,效率很高,但对噪声干扰的抵抗能力很弱。为了提高信息传输的准确性,我们引进了差错控制技术。而该技术采用可靠的,有效的信道编码方法来实现的。纠错码是一种差错控制技术,目前已广泛应用于各种通信系统和计算机系统中,纠错编码主要用于数字系统的差错控制,对于保证通信、存储、媒体播放和信息转移等数字传递过程的质量有着重要意义,是通信、信息类科知识结构中不可缺少的一部分。本文章主要研究了基于VHDL语言的(7,4)汉明码的设计。整个设计包括四个模块:16位序列产生和分组模块, 编码模块, 加错模块, 译码模块。其中加错模块是为了模拟信道干扰人为的给数据添加一位错误,然后通
4、过MAX+plusII 10.2软件进行仿真和调试,从而验证了(7,4)汉明码具有纠正一位错码的能力。 关键词:编码 译码 MAX+plusIIABSTRACTIn the communications system, to enhance the effectiveness of information transmission, we will source the output after source coding with fewer symbols to express the source of the news letter, the redundancy of these s
5、ymbols is very small, very efficient, but the noise weak resistance to interference. In order to improve the accuracy of information transmission, we introduce error control techniques. The technology uses a reliable and effective method of channel coding to achieve. Error-correcting code is an erro
6、r control techniques have been widely used in various communications systems and computer systems, mainly used for error-correcting coding errors in digital control systems, to ensure communication, storage, media players and digital transmission of information transfer the quality of the process of
7、 great significance, is the communications, information-type knowledge structure of subjects an indispensable part. This article introduces a systematic error-correcting codes in digital systems in the use and development, as well as the basic principles of error-correcting codes and meaning of comm
8、only used error-correcting codes and classified briefings, as well as Vc + +6.0, introduced the basic knowledge, and how Vc + + to achieve the application of hamming code encoder and decoder. This article mainly study the design of the (7, 4) Hamming Code based on the Very-High-Speed Integrated Circ
9、uit HardwareDescription Language . The design of hamming code consists of four modules: the 16 Sequence generation and grouping module, the encoding module, the adding one bit error module, and the decoding module. the design of the adding one bit error module is to simulate channels interference ,
10、affer testing and simulation ,thus proving that the (7, 4)Hanmming code has the ability to correct a wrong code. Key words: encode; decode; MAX+plusII第一章 绪论1.1研究背景与选题意义1、研究背景移动通信的发展日新月异,其强大的魅力之所在就是它能为众提供了固话所不及的灵活、机动、高效的通信方式,非常适合信息社会发展的需要,但同时这也使移动通信系统的研究、开发和实现比有线通信系统更复杂、更困难。实际上,移动无线信道是通信中最恶劣、最难预测的通信信
11、道之一。于是促进了信道编码技术的发展。目前信道编码已经成功地应用于各种通信系统中,并且在计算机、磁记录与各种存储器中了得到日益广泛的应用。提高数据传输效率,降低误码率是信道编码的任务。信道编码的本质是增加通信的可靠性。但信道编码会使有用的信息数据传输减少,信道编码的过程是在源数据码流中加插一些码元,从而达到在接收端进行判错和纠错的目的,这就是我们常常说的开销。这就好象我们运送一批玻璃杯一样,为了保证运送途中不出现打烂玻璃杯的情况,我们通常都用一些泡沫或海棉等物将玻璃杯包装起来,这种包装使玻璃杯所占的容积变大,原来一部车能装5000各玻璃杯的,包装后就只能装4000个了,显然包装的代价使运送玻璃
12、杯的有效个数减少了。同样,在带宽固定的信道中,总的传送码率也是固定的,由于信道编码增加了数据量,其结果只能是以降低传送有用信息码率为代价了。将有用比特数除以总比特数就等于编码效率了,不同的编码方式,其编码效率有所不同。编码涉及到的内容也比较广泛,前身纠错编码(FEC)、线性分组码(汉明码、循环码)、理德-所罗门码(RS码)、FIRE码、交织码、卷积码、TCM编码、Turbo码等都是差错控制编码的研究范畴。汉明码是由汉明于1950年提出的,具有纠正一位错误能力的线性分组码,它的突出特点是:编译码电路简单,易于硬件实现;用软件实现编译码算法时,软件效率高;而且性能比较好。2、选题意义汉明码的编码与
13、译码是通信领域的一个重要的研究内容。与一般的编码相比其具有比较高效率,同时其是分组码的典型代表,是深入研究其他分组码的基础,也是研究其他非分组码(如循环码)的基础,本课题利用EDA来实现,与实际联系很大,对将来从事实际工作和相关研究具有很大帮助。1.2研究目标与主要工作1、研究目标学习EDA集成开发工具(MAX+plus II)相关操作。包括学习VHDL编程语言、方法和仿真结果的查看、处理等。研究学习汉明码编译的原理。2、主要工作查阅资料,认真学习EDA开发工具(MAX+plus II),熟练掌握VHDL语言的编程思路与方法。对系统的结构设计有了初步的思路以后,大体绘出系统的结构框图。对系统进
14、行设计,完成程序的编写。在认真学习了汉明码编译的原理后,编写程序实现算法。对程序进行调试,对系统进行计算机仿真。对已搭建好的汉明码编译系统仿真研究,记录相应的仿真结果。1.3论文的内容安排第二章将介绍汉明码及汉明码编译原理。第三章将介绍VHDL语言,以及EDA集成开发环境MAX+plusII。第四章详细介绍了汉明码编译系统模块设计与实现。第五章对系统仿真和调试以及最后对结果进行分析。第六章对整个系统的设计进行总结与展望。最后是致谢和参考文献。第二章 汉明码及汉明码编译原理21 纠错编码的基本原理2.1.1 分组码基本原理设有一种由3位二进制数字构成的码组,它共有8种不同的可能组合。若将其全部用
15、来表示天气,则可以表示8种不同天气,例如:“000”(晴),“001”(云),“010”(阴),“011”(雨),“100”(雪),“101”(霜),“110”(雾),“111”(雹)。其中任一码组在传输中若发生一个或多个错码,则将变成另一个信息码组。这时,接收端将无法发现错误。若在上述8种码组中只准许使用4种来传送天气,例如:“000”晴 “011”云 “101”阴 “110”雨这时,虽然只能传送4种不同的天气,但是接收端却有可能发现码组中的一个错码。例如,若“000”(晴)中错了一位,则接收码组将变成“100”或“010”或“001”。这3种码组都是不准使用的,称为禁用码组。接收端在收到禁
16、用码组时,就认为发现了错码。当发生3个错码时,“000”变成了“111”,它也是禁用码组,故这种编码也能检测3个错码。但是这种码不能发现一个码组中的两个错码,因为发生两个错码后产生的是许用码组【1】。上面这种编码只能检测错码,不能纠正错码。例如,当接收码组为禁用码组“100”时,接收端将无法判断是哪一位码发生了错误,因为晴、阴、雨三者错了一位都可以变成“100”。要能够纠正错误,还要增加多余度。例如,若规定许用码组只有两个:“000”(晴),“111”(雨),其他都是禁用码组,则能够检测两个以下错码,或能够纠正一个错码。例如,当收到禁用码组“100”时,若当作仅有一个错码,则可以判断此错码发生
17、在“1”位,从而纠正为“000”(晴)。因为“111”(雨)发生任何一位错码时都不会变成“100”这种形式。但是,这时若假定错码数不超过两个,则存在两种可能性:“000”错一位和“111”错两位都可能变成“100”,因而只能检测出存在错码而无法纠正错码。将信息码分组,为每组信息码附加若干监督码的编码称为分组码 。在分组码中,监督码元仅监督本码组中的信息码元。信息位和监督位的关系举例如表2-1-1:表2-1-1 信息位与监督位的关系 信息位监督位晴000云011阴101雨110分组码的一般结构如图2-1-1:图2-1-1 分组的一般结构分组码的符号:(n, k)N 码组的总位数,又称为码组的长度
18、(码长)。k 码组中信息码元的数目。n k r 码组中的监督码元数目,或称监督位数目。 2.1.2分组码的码重和码距码重:把码组中“1”的个数目称为码组的重量,简称码重。码距:把两个码组中对应位上数字不同的位数称为码组的距离,简称码距。码距又称汉明距离。例如,“000”晴,“011”云,“101”阴,“110”雨,4个码组之间,任意两个的距离均为2。最小码距:把某种编码中各个码组之间距离的最小值称为最小码距(d0)。例如,上面的编码的最小码距d0 = 2。图2-1-2 三维空间对于3位的编码组,可以在3维空间中说明码距的几何意义。 每个码组的3个码元的值(a1, a2, a3)就是此立方体各顶
19、点的坐标。而上述码距概念在此图中就对应于各顶点之间沿立方体各边行走的几何距离。由图2-1-2可以直观看出,上例中4个准用码组之间的距离均为2。一种编码的最小码距d0的大小直接关系着这种编码的检错和纠错能力,为检测e个错码,要求最小码距d0 e + 1。2图2-1-3 汉明距离【证】设一个码组A位于O点,如图2-1-3所示。若码组A中发生一个错码,则我们可以认为A的位置将移动至以O点为圆心,以1为半径的圆上某点,但其位置不会超出此圆。若码组A中发生两位错码,则其位置不会超出以O点为圆心,以2为半径的圆。因此,只要最小码距不小于3,码组A发生两位以下错码时,不可能变成另一个准用码组,因而能检测错码
20、的位数等于2。同理,若一种编码的最小码距为d0,则将能检测(d0 - 1)个错码。反之,若要求检测e个错码,则最小码距d0至少应不小于( e + 1)。为了纠正t个错码,要求最小码距d0 2t + 1。图2-1-4 汉明距离【证】图2-1-4中画出码组A和B的距离为5。码组A或B若发生不多于两位错码,则其位置均不会超出半径为2以原位置为圆心的圆。这两个圆是不重叠的。判决规则为:若接收码组落于以A为圆心的圆上就判决收到的是码组A,若落于以B为圆心的圆上就判决为码组B。这样,就能够纠正两位错码。若这种编码中除码组A和B外,还有许多种不同码组,但任两码组之间的码距均不小于5,则以各码组的位置为中心以
21、2为半径画出之圆都不会互相重叠。这样,每种码组如果发生不超过两位错码都将能被纠正。因此,当最小码距d05时,能够纠正2个错码,且最多能纠正2个。若错码达到3个,就将落入另一圆上,从而发生错判。故一般说来,为纠正t个错码,最小码距应不小于(2t + 1)。在解释此式之前,先来分析图2.1.5所示的例子。图2-1-5 汉明距离图2-1-5中码组A和B之间距离为5。按照检错能力公式,最多能检测4个错码,即e = d0 1 = 5 1 = 4,按照纠错能力公式纠错时,能纠正2个错码。但是,不能同时作到两者,因为当错码位数超过纠错能力时,该码组立即进入另一码组的圆内而被错误地“纠正”了。例如,码组A若错
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 基于 VHDL 汉明码 译码器 设计 实现

链接地址:https://www.31ppt.com/p-2396788.html