基于Quartus II的(7,4)汉明码的编解码器的设计

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

JIANGSU TEACHERS UNIVERSITY OF TECHNOLOGY 通信原理课程设计报告

课程设计题目:基于Quartus II的(7,4)汉明码的编解码器的设计班级:

学号:

姓名:

指导教师姓名:钱志文任艳玲

设计地点:

目录

序言 (2)

第一章软件简介 (3)

第二章工作原理 (4)

第三章基于Quartus II的(7,4)汉明码的编解码器的设计的仿真实现3.1 仿真方案原理 (5)

3.2 仿真的功能程序 (6)

3.3 仿真的结果与分析 (7)

参考文件 (10)

体会与建议 (10)

附录 (10)

序言

汉明(Hamming)码是一种一种能够纠正一位错码或检测两位错码的一种效率较高的线性分组码。本次课程设计的任务就是利用EDA技术在Quartus II软件下用VHDL语言实现(7,4)汉明码的编译码的设计和仿真。从而进一步加深对汉明码编译码原理的理解。

EDA(Electronic Design Automation技术是随着集成电路和计算机技术飞速发展应运而生的一种高级、快速、有效的电子设计电动化工具。目前,VHDL语言已经成为EDA的关键技术之一,VHDL 是一种全方位的硬件描述语言,具有极强的描述能力,能支持系统行为级、寄存器传输级和逻辑门级三个不同层次的设计,支持结构、数据流、行为三种描述形式的混合描述,覆盖面广,抽象能力强,因此在实际应用中越来越广泛。

VHDL语言具有功能强大的语言结构,可用明确的代码描述复杂的控制逻辑设计,并且具有多层次的设计描述功能,支持设计库和可重复使用的原件的生成,近几十年来,EDA技术获得了飞速的发展,它以计算机为平台,根据硬件描述语言VHDL,自动地完成逻辑编译,化简为割、综合及优化,布局布线,仿真直至对特定目标芯片的适配编译,逻辑映射和编程下载等工作,以自顶向下的设计方法,使硬件设计软件化,拜托了传统手工设计的众多缺点,随着EDA技术的深入发展,基于硬件描述语言的方法将由取代传统手工设计方法的趋势。

一、Quartus II软件简介

QuartusⅡ是Altera公司推出的CPLD/FPGA的开发工具,QuartusⅡ提供了完全集成且与电路结构无关的开发环境,具有数字逻辑设计的全部特性。

Quartus Ⅱ设计软件提供完整的多平台设计环境,可以很轻松地满足特定设计的需要。

它是可编程片上系统(SOPC)设计的综合性环境,拥有FPGA 和CPLD设计的所有阶段的解决方案。

与其它EDA软件相比较QuartusⅡ软件的特点主要包括:

1、可利用原理图、结构框图、Verilog HDL、AHDL和VHDL完成电路描述,并将其保存为设计实体文件。

2、芯片(电路)平面布局连线编辑。

3、LogicLock增量设计方法,用户可建立并优化系统,然后添加对原始系统的性能影响较小或无影响的后续模块。

4、功能强大的逻辑综合工具。

5、完备的电路功能仿真与时序逻辑分析。

6、定时/时序分析与关键路径延时分析。

7、可使用SignalTap Ⅱ逻辑分析工具进行嵌入式的逻辑分析。

8、支持软件源文件的添加和创建,并将它们链接起来生成编程文件。

9、使用组合编译方式可一次完成整体设计流程。

10、自动定位编译错误。

11、高效的期间编程与验证工具。

12、可读入标准的EDIF网表文件、VHDL网表文件和Verilog网表文件。

13、能生成第三方EDA软件使用的VHDL网表文件和Verilog网表文件。

二、(7,4)汉明码的编解码器的工作原理

2.1汉明码的构造原理

线性分组码是一类重要的纠错码,应用很广泛。在(n,k )分组码中,若监督码元是按线性关系模2相加而得到的,则称其为线性分组码。

现在以(7,4)分组码为例来说明线性分组码的特点。设气码字为A=【a6,a5,a4,a3,a2,a1,a0】,前4位是信息元,后3位是监督元,可用下列线性方程组来描述该分组码产生监督元:

⎪⎭

⎪⎬⎫⎪⎩⎪⎨⎧⊕⊕=⊕⊕=⊕⊕=346035614562a a a a a a a a a a a a

显然,这3个方程式线性无关的。代入上述公式可得(7,4)码的全部码组,如表1所示。

信息位 a6a5a4a3 监督位 a2a1a0 信息位 a6a5a4a3 监督位 a2a1a0 0000 000 1000 111 0001 011 1001 100 0010 101 1010 010 0011 110 1011 001 0100 110 1100 001 0101 101 1101 010 0110 011 1110 100 0111

000

1111

111

表1 (7,4)汉明码的全部码组

由上表可知:(7,4)汉明码的最小码距d0=3,它能纠正1位错或检2位错。由此可见,汉明码是能够纠正单个错误的线性分组码,其特点是:最小码距d0=3,码长n 与监督位r 满足关系式:2r -1>=n,说明上述所说的(7,4)线性分组码就是汉明码。同时,由于码率k/n=(n-r)/n=1-r/n ,故当n 很大和r 很小时,码率接近1,可见:汉明码是一种高效码。

2.2校正子(伴随式)S

校正子与错码位置的关系,如表2所示

S1S2S3 错码位置

S1S2S3 错码位置

001 a0 101 a4 010 a1 110 a5 100 a2 111 a6 011

a3

000

无错

表2 校正子与错码位置

由上表可知:

当S=001时,则出错在0位;

相关文档
最新文档