84扩展汉明译码器1.docVIP

  • 169
  • 0
  • 约2.64千字
  • 约 8页
  • 2016-12-09 发布于重庆
  • 举报
84扩展汉明译码器1

(8,4)扩展汉明译码器的设计与实现 学院:通信工程学院 班级:01072班 组员 刘吉龙 雒燕柯 贾 磊 (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开发板完成。 实验目的 学会熟练使用Quartus II软件,通过软件的使用,进一步了解数电元器件的功能,和VHDL程序的编译,以及小模块电路和程序的封装。 通过对(8,4)汉明译码器的设计,简单了解纠错码译码的基本实现原理。 进一步了解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与汉明码有以下关系: library 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) xor cb_out(3) xor cb_out(2) xor cb_out(1) xor cb_out(0); end if; end process; end myarch; 并串转换 原M序列: 加噪后汉明码 并行汉明码 并行恢复M序列 译码后恢复出M序列 在同一时间轴比较:m-out是原M序列,mm-

文档评论(0)

1亿VIP精品文档

相关文档