11汉明码编解码实验_第1页
11汉明码编解码实验_第2页
11汉明码编解码实验_第3页
11汉明码编解码实验_第4页
11汉明码编解码实验_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

1、实验一汉明码编解码实验一、实验目的1掌握汉明码的编解码原理。2、掌握汉明码的软件仿真方法。3、掌握汉明码的硬件仿真方法。4、掌握汉明码的硬件设计方法。二、预习要求1掌握汉明码的编解码原理和方法。2、熟悉matlab的应用和仿真方法。3、熟悉Quatus的应用和FPGA的开发方法。三、实验原理1 1信道编码的概念通信信号是通过信道的传输,从信源传到信宿。由于信道有着不同的特征,这些特征将会影响传输中 的通信信号,使信宿不能正确接受和识别信源的信号。因此需要采取各种方式抗信道干扰,信道编码就是 一种广泛采用的抗信道干扰的方法。信道编码的思想是按照一定规律在待发送的信息码中加入一些冗余的 信息,接收

2、端根据这些冗余信息和信息码来恢复原来的信号。因此,信道编码的任务就是以最小的冗余代 价来换取抗干扰性能最好的码。2 2、汉明码的原理汉明码是1949年提出的一种能纠正单个错误的线性分组码。实验中采用的含明码为(7,4)汉明码,其采用的本原多项式为f(X)二Xx 1。其生成矩阵为 G=1011000, 1110100,1100010,0110001。监督矩阵为:H=1001110,0100111,0011101。当输入编码序列为I时,输出编码序列 R= IG,输出的编码序列为系统码。接收的待译码序列D= R+ E, E为错误序列。错误图样 S= DHT,根据错误图样 S可以判决得到错误序列E。将

3、错误序列和接收的待译码序列运算可以得到正确的译码输出。设(7, 4)汉明码中共有4个信息码,3个监督码。我们用a6a5a4a3a2a1a0表示这7个码元,用S1,S2,S3 表示三个监督关系式中的校正子,则S1,S2,S3的值与错码的位置的对应关系规定如下表所示:(其中 S1= ag二 a5二a4 二a2 ;S2 = a6 二 a5二a3 二c ; S3= ae二a4 二a3二a0)S1S2S3错误位置S1S2S3错误位置001a。101a4010a1110a5100a2111a011a3000无错F表是汉明码编码信息位与监督位的对应表:信息位监督位信息位监督位a6a5a4a3&2&1玄a6a

4、5a4a30000000100011100010111001100001010110100100011110101100101001101100001010110111010100110011111010001110001111111四、汉明码的波形和误码率仿真1、建立仿真文件( hammingsim.mdl)EiiqrRiiWEiiqrRiiW n nC-vicMUdionC-vicMUdionBibihulliBibihulli BinrvBinrvBitmouilllBitmouilll RlndivRlndivhntminginhntminginT T b b WortapWortap

5、 JciJciToTo1 1hjirrimiHfdAhjirrimiHfdAElmElm RJLCjilculjriitihCjilculjriitihamamAWhiAWhi Ch-Ch-innelinnelwwh-iwwh-i : :Eirsi!Eirsi! R R 出jlculjb-a-njlculjb-a-nHLhmmiAQHLhmmiAQ DwDw鈕d d白鬥T-bT-b Wdriapji-Wdriapji-EifiEifiBFMBFMMtfulJborMtfulJborBdftbjnfjBdftbjnfj6Pk6Pk&m?duMvr&m?duMvrBjnbindBjnbindErr

6、orError R R adad血AWGN Channel 的参数 SNR 设置为 SNR ;Bernoulli Binary Generator 的参数 Sample Time 设置为 SampleTime 。 2、仿真程序clear all;SampleTime=1;SNR=1; sim(hammingsim);figure(1);subplot(2,2,1); stem(hammingin);title( 编码输入序列 );subplot(2,2,2); stem(hammingen);title( 编码输出序列 );subplot(2,2,3); stem(hammingene);ti

7、tle( 解码输出序列 );subplot(2,2,4); stem(hammingde);title( 解码输出序列 );clear all;SampleTime=1/1000;for i=1:8SNR=i-3;sim(hammingsim);biterr(i)=0;for j=1:length(err)biterr(i)=biterr(i)+err(j,1);end;biterr(i)=biterr(i)/length(err);end;figure(2);semilogy(-2:5,biterr,*); hold on;semilogy(-2:5,biterr); xlabel(SNR(

8、dB); ylabel(BER);grid on;3 3、仿真结果(1) 编解码波形(2)白高斯噪声信道误码率仿真结果五、实验中的汉明码编解码程序1 1汉明编码(1)端口设置cs_hanming :输入汉明编码使能位,电平有效;datain_hanming :输入4位编码输入位;dataout_hanming :输出16位编码输出位,低 7位为编码输出位,高 9位为0。(2) 主程序if cs_ha nmin g=1the ndataout_ha nmin g(6 dow nto 3)=data in_hanmin g(3 dow nto 0);dataout_ha nmin g(0)=dat

9、ain_ha nmi ng(3) xor data in_hanmin g(1) xor datain_ha nmi ng(0);dataout_ha nmin g(1)=data in_hanmin g(3) xor data in_hanmin g(2) xor datain_ha nmi ng(0);dataout_ha nmin g(2)=datain_ha nmin g(3) xor data in_hanmin g(2) xor data in_hanmin g(1);dataout_ha nmin g(15 dow nto 7)=000000000;elsedataout_ha

10、nmin g(15 dow nto 0)=0000000000000000;end if;(3) 输出结果1313. .DODODDLDDLt|*|*| d-btAaul,.d-btAaul,. .B 厂oaaobDQOoaociLoi*oogodc如图所示:编码输入为0001,编码输出为0001011。2 2、汉明解码(1) 端口设置cs_hanming :输入汉明解码设置使能位,电平有效;datain_hanming :输入7位汉明编码位;error_hanming :输出错误标志位,当信道加错时,输出 1电平表示信道有错;dataout_hanming :输出4位汉明解码位。(2) 主要

11、程序-产生错误图样sel(2)=(data in_hanmin g(6) xor data in_hanmin g(5) xor (data in_hanmin g(4) xor datain_ha nmi ng(2); sel(1)=(datain_ha nmi ng(6) xor data in_hanmin g(5) xor (data in_hanmin g(3) xor datain_ha nmi ng(1); sel(0)=(data in_hanmin g(6) xor data in_hanmin g(4) xor (data in_hanmin g(3) xor datain

12、_ha nmi ng(0);-输出错误序列 with sel selectNafneVslutVslutIT.IT. 4 4 m mcx_hanmirLgcx_hanmirLgB B 1 1田 d d atati i iigiigB B 0001C1L0001C1L国 d.a.1d.a.1 aoaoi i ngngB B 00010001errerri i ng:ng:E E 0 0)PS10.10.Q Q nsns2020 9 93030 9 9 1 117.17. A Ai i 1X51X5;O0O1011O0O10113 3101001101001( (000000 J J% %如图所示

13、:解码输入为 0001011,解码输出为六、实验操作说明开关置ON表明输入0,OFF表明输入1;LED亮表明输出1,暗表明输出0。SW101-1out38=0000000 when 000,0000001 when 001,0000010 whe n 010,0000100 when 100,0001000 whe n 011,0010000 whe n 101,0100000 when 110,1000000 whe n 111;-输出错误标志with sel select error_flag=0 whe n 000,1 whe n others;-纠错dataout_ha nmin g(

14、3)=out38(6) xor data in_hanmin g(6); dataout_ha nmin g(2)=out38(5) xor data in_hanmin g(5); dataout_ha nmin g(1)=out38(4) xor datain_ha nmi ng(4); dataout_ha nmin g(0)=out38(3) xor data in_hanmin g(3);1 1 编码输入:由 SW101-8,SW101-7,SW101-6,SW101-5,SW101-4,SW101-3,SW101-2,可以输入由高位到低位的 8位编码输入位。2 2、编码方式选择SW

15、102-2,SW102-1,SW102-0编码方式000汉明码编码001CRC编码error_ha nmin g=error_flag;0001。010BCH码编码011卷积码编码100Turbo码编码101扩展用110扩展用111汉明码交织编码3 3、信道选择(选择加错位置)SW103-6,SW103-5,SW103-4,SW103-3加错位置0000从0位置加错0001从1位置加错0010从2位置加错0011从3位置加错1111从15位置加错4 4、加错数目选择SW103-2,SW103-1加错位置00加0位错01加1位错10加2位错11加3位错从SW103-6,SW103-5,SW103

16、-4,SW103-3 指示的位置开始,每帧加错的位数有SW103-2,SW103-1的状态决定。5 5、编码输出设置D116,D115, D114,D113, D112,D111, D110,D109,D108,D107, D106,D105,D104,D103,D102,D101为16位编码输出位。TP102和TP103分别可以测量编码输出的帧和对应该帧的时钟信号。6 6、解码方式选择SW201-3,SW201-2,SW201-1解码方式000汉明码解码001CRC解码010BCH码解码4、数字万用表。011卷积码解码100Turbo码解码101扩展用110扩展用111汉明码交织解码7 7、

17、解码数据输出端:D208,D207,D206,D205,D204,D203,D202,D201 。错误指示灯(当判断出数据有错码时就指示):D220。8 8其他:七段码显示表明维特比译码的四路路径度量。七、实验内容1、 用matalab中的simulink对(7,4)汉明码进行软件仿真,绘制(7,4)汉明码的误码率图,分析它的纠错能力和码率;2、 在Quatus中分别对(7,4)汉明码的编码和解码程序进行仿真,分析(7,4)汉明码的编解码过程;3、 在实验系统中,分别置 SW102-2,SW102-1,SW102-0 为 ”000 ”和 SW201-3,SW201-2,SW201-1 为 ”0

18、00 ” 选择汉明码编解码方式。置 SW103-6,SW103-5,SW103-4,SW103-3,SW103-2,SW103-1 为 ”00000 ” 即不加任何错。4、由 SW101-8,SW101-7,SW101-6,SW101-5,SW101-4,SW101-3,SW101-2,SW101-1 任意输入 8位数据,观察并记录 D116,D115,D114,D113,D112,D111,D110,D109,D108,D107,D106,D105, D104,D103,D102,D101 对应的编码后的输出数据。其中D115,D114,D113,D112,D111,D110,D109对应于SW101-8,SW101-7,SW101-6,SW101-5输入的四位数据的汉明码编码结果;D107,

温馨提示

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

评论

0/150

提交评论