汉明码性能分析_Lucy_1008_2013_

汉明码编码前后在BPSK和高斯噪声下的性能比较
Lucy    2013.10.8
一.准备工作
1.弄清BPSK调制的误码率性能,调制的每个步骤都要理解,并能够用matlab程序实现。
2.了解汉明码的编解码原理
二.汉明码编解码的原理
为了纠正一位错码,在分组码中最少要加入的监督位数是我们一直考虑的问题。从提高编码效率的思想出发进行研究,产生了汉明码。汉明码是一种能够纠正一位错码且编码效率较高的线性分组码。本程序的主要思想就是对未编码和汉明编码后的信号BPSK下且有高斯噪声影响下的误码率性能进行比较。
以(7,4)汉明码为例,其主要参数如下:
码长:,这里m=3
信息位:
校验位:,且
最小距离:
其生成矩阵G(前四位为信息位,后三位为冗余位)如下:
系统码可分为消息部分和冗余部分两部分,根据生成矩阵,输出码字可按下式计算:
所以有
信息位    冗余位
由以上关系可以得到(7,4)汉明码的全部码字如下所示。
2  (7,4)汉明码的全部码字
序号
信息码元
冗余元
序号
信息码元
冗余元
0
0000
000
8
1000
111
1
0001
011
9
1001
100
2
0010
101
10
1010
010
3
0011
110
11
1011
001
4
0100
110
12
1100
001
5
0101
101
13
1101
010
6
0110
011
14
1110
100
7
0111
000
15
1111
通古斯族111
(编解码原理也可详见樊昌信版通信原理课本P335
三.汉明码编码前后在BPSK和高斯噪声下的性能比较的matlab实现详细步骤
1 .为了确保画出的图与理论接近,取信息码元数N=100000,汉明码组中监督码元数r=3,信息码元数数n=7
2 .利用randint随机产生N行,(n-r)列的只有01元素的随机矩阵m三围地图,调用格式为randintNn-r2公与淑婷厨房猛烈进出),2表示产生的整数小于2
3 .通过encode函数来对码元矩阵m进行汉明码编码产生了新的矩阵m2,调用格式为encodemnn-r);
4 .通过调用pskmod函数来随机矩阵m进行bpsk调制产生新的矩阵m1,调用格式为pskmodm2),2表示是二进制的psk调制;
5 .同样通过调用pskmod函数实现对m2矩阵的bpsk调制,调用格式为pskmodm2,2);
6 .假设接收端的输入信噪比SNRindB是从010db
7 .将假设的输入信噪比从db换算为倍数;
8 .由于SNR=S/NS是信号功率,N为噪声功率,信号的幅度假设为1,那么S=1/2,那么根据固定的SNRS便可求出接收端叠加的噪声的功率N,对N进行sqrt运算就可求出叠加上的噪声信号的幅度no1
9 .利用no1*randnN,n-r)和no1*randnN,n)分别来产生Nn-r列和Nn列的高斯噪声;
10.将未汉明码编码的bpsk信号m1叠加上噪声信号得出trx1,将汉明码编码的bpsk信号(注意此时它是Nn列而非(n-r)列)叠加上噪声得出trx2
11 .通过调用pskdemod函数对trx1trx2分别进行解调得出解调后的信号y1y2,调用格式为pskdemodtrx1,2);
12 .对解调出来的y2信号还要进行汉明码解码得到解码信号y3,调用decode函数,格式为沈阳1949decodey2网易日记nn-r);
13 .利用biterr函数来计算出解码后的信号y1(未经汉明码编码)和兴利y3(汉明码编解码)相对于初始码元序列m的错误码元数和误码率,调用格式为[num,rat]=biterr(y1,m)
14:利用for语句重复上述步骤分别得出不同SNR下的误码率;
15:利用semilogy函数分别画出未经汉明码编码和汉明码编码两种情况的SNRindB与误码率rat的函数关系图。
四.举例说明性能分析过程
以(74)汉明码为例,程序中为了得到接近理论的曲线,取发送的码元个数N=100000,在这里为了方便举例,先取N=10
第一步,产生10x4的信号码元序列m
m =
    1    0    1    0
    1    0    0    0
    0    1    0    1
    0    1    0    1
    1    0    0    0
    0    0    1    0
    1    1    0    0
    0    1    0    0
    0    1    1    0
    0    1    0    1
第二步,汉明码编码得到码元序列m2
m2 =
    0    0    1    1    0    1    0
    1    1    0    1    0    0    0
    1    1    0    0    1    0    1
    1    1    0    0    1    0    1
    1    1    0    1    0    0    0
    1    1    1    0    0    1    0
    1    0    1    1    1    0    0
    0    1    1    0    1    0    0
    1    0    0    0    1    1    0
    1    1    0    0    1    0    1
第三步,分别对汉明码编码前后的两个码元序列mm2进行bpsk
调制得到m1(未编码的bpsk信号)和m3(编码后的bpsk信号)
m1 =
  -1.0000 + 0.0000i  1.0000            -1.0000 + 0.0000i  1.0000         

本文发布于:2024-09-23 19:17:39,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/294635.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:汉明码   编码   码元   信号   进行   噪声   得到
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议