您好,欢迎来到爱go旅游网。
搜索
您的当前位置:首页8-4扩展汉明译码器 (3)1

8-4扩展汉明译码器 (3)1

来源:爱go旅游网
(8,4)扩展汉明译码器的设计与实现

学院:通信工程学院

班级:01072班

组员:01072035 刘吉龙

01072043 雒燕柯

01072045 贾 磊

(8,4)扩展汉明译码器的设计与实现

引言:纠错码是一门新的擦错控制技术,目前已广泛应用于各种通信系统和计算机系统中。提高信息传输的有效性和可靠性,始终是通信工作所追求的目标。纠错码是提高信息传输可靠性的一种重要手段。

这次课程设计所设计的是(8,4)扩展汉明译码器。根据纠错码的相关知识(8,4)扩展汉明码是由(7,4)汉明码加一位全校验位得到的。它的码字(c7,c6,c5,c4,c3,c2,c1,c0)中的前七位码元(c7,c6,c5,c4,c3,c2,c1)是汉明码的一个码字,c0是全校验位。扩展汉明码的码长是8 的整数倍,特别适用于计算机或者微机组成的数据处理或数据传输系统。

扩展汉明吗能纠正一个错误同时发现两个错误,虽然它不是循环码,但它编译电路的主要部分与循环汉明码的译码器相同。

本次实验利用Quartus II软件和相应的FPGA开发板完成。

一、实验目的

1.学会熟练使用Quartus II软件,通过软件的使用,进一步了解数电元器件的功能,和VHDL程序的编译,以及小模块电路和程序的封装。

2.通过对(8,4)汉明译码器的设计,简单了解纠错码译码的基本实现原理。

3.进一步了解FPGA的使用,为以后的FPGA的开发打好基础。

二、(8,4)汉明译码的原理及其框图,结果图

首先将已做好的(8,4)汉明码编码器封装

(8,4)汉明码编码器

封装之后

突发噪声产生模块

突发噪声+汉明编码

输入的M序列

输入的汉明编码

噪声

加噪的汉明编码

汉明码译码模块

汉明译码

将接收到的汉明串码转换成并行码,之后进行译码。

汉明译码器的模块图

将并行码转换成串行码:

module ym_ipo11(pi_hm,clk,cb_out);

input clk;

input pi_hm;

output [7:0] cb_out;

reg [7:0] cb_out;

reg [7:0] temp;

integer counter = 0;

always @(posedge clk)

begin

if(counter ==8)

begin

cb_out <= temp;

counter = 0;

end

temp[7-counter] <= pi_hm

counter = counter + 1;

end

endmodule

校正字产生:

校正字ss与汉明码有以下关系:

s3x6x5x4x3

s2x7x5x4x2

s1x7x6x4x1

s0x7x6x5x4x3x2x1x0

s0x7x6x5x4x3x2x1x0library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned.all;

entity ss is

port (cb_out: in std_logic_vector(7 downto 0);

clk:in std_logic;

ss: out std_logic_vector(3 downto 0));

end ss;

architecture myarch of ss is

begin

process(clk,cb_out)

begin

if rising_edge(clk) then

ss(3)<=cb_out(6) xor cb_out(5) xor cb_out(4) xor cb_out(3);

ss(2)<=cb_out(7) xor cb_out(5) xor cb_out(4) xor cb_out(2);

ss(1)<=cb_out(7) xor cb_out(6) xor cb_out(4) xor cb_out(1);

ss(0)<=cb_out(7) xor cb_out(6) xor cb_out(5) xor cb_out(4) cb_out(3) xor cb_out(2) xor cb_out(1) xor cb_out(0);

end if;

end process;

end myarch;

xor

并串转换

原M序列:

加噪后汉明码

并行汉明码

并行恢复M序列

译码后恢复出M序列

在同一时间轴比较:m-out是原M序列,mm-out是译码得到的M序列

三:在完成汉明编译码系统中出现的问题及解决的方法。

在实验过程中,我们是在(7,4)汉明编译码的原理上做了稍微修改完成(8,4)汉明译码器的设计的,在实验过程中,由于对数电元件的理解不深入,造成了对于一些小问题就束手无策,最后向老师咨询后,对电路图做了进一步的修改,然后,问题虽然有所改善,经过随后对波形的分析,又不知道问题所在,经过老师指点,发现原来时钟没统一,等时钟修改好之后,输出波形的始终又出问题,耐心分析之后,在通过编码的输入,终于调出了正确的译码信息。

四:实验心得

通过这次的课程设计,对quartusII软件又有了进一步了了解,对FPGA开发板的使用又进行了复习,意识到了VHDL的强大,及它对硬件电路的完美诠释。

在设计中,运用以前做(7,4)汉明编译码器的设计方法,在电路图和程序的基础上进行很多次大大小小的修改,最终输出了正常的译码波形图。通过对数电元器件的进一步了解。这一点也让我意识到只是与知识之间是相同的,只有打好坚实的基础,由易到难,一步一个台阶,慢慢的往上走,很多看似没有头绪的问题都可以穿起来,最后连成一个整体,进而实现要完成的结果。

在设计过程中,老师耐心指导,同学的新质疑新看法不断提出,才使得看似凌乱的波形骤减清晰起来,我们意识到不懂就要更积极跟老师去沟通,以及听取别人意见的重要性,团队合作的重要性,最然这是一次比较简单的设计,但是从中体会到了不少东西,以及自己以后应该加强的哪些方面。

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

Copyright © 2019- igat.cn 版权所有

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务