目录TOC \o "1-3" \h \u HYPERLINK \l _Toc6750 前言.... PAGEREF _Toc6750 1HYPERLINK \l _Toc26804 工程概况................ PAGEREF _Toc26804 1HYPERLINK \l _Toc14622 正文.................... PAGEREF _Toc14622 2 HYPERLINK \l _Toc4430 3.1设计的目的和意义... PAGEREF _Toc4430 2HYPERLINK \l _Toc31075 3.1.1设计的目的. PAGEREF _Toc31075 2HYPERLINK \l _Toc18535 3.1.2设计的意义. PAGEREF _Toc18535 2 HYPERLINK \l _Toc31236 3.2 线性分组码的编码与译码原理 PAGEREF _Toc31236 2 HYPERLINK \l _Toc11233 3.2.1线性分组码的编码原理 PAGEREF _Toc11233 2HYPERLINK \l _Toc6682 3.2.2 线性分组码的译码原理 PAGEREF _Toc6682 3 HYPERLINK \l _Toc31791 3.3 2PSK的调制与解调原理 PAGEREF _Toc31791 4 HYPERLINK \l _Toc26402 3.3.1调制的原理. PAGEREF _Toc26402 4HYPERLINK \l _Toc27747 3.3.2解调的原理. PAGEREF _Toc27747 4 HYPERLINK \l _Toc23880 3.4 不同信噪比是的测试结果 PAGEREF _Toc23880 5 HYPERLINK \l _Toc20433 3.4.1 信噪比为1时 PAGEREF _Toc20433 5HYPERLINK \l _Toc4861 3.4.2 信噪比为5时. PAGEREF _Toc4861 5HYPERLINK \l _Toc31183 3.4.3 信噪比为10时 PAGEREF _Toc31183 6HYPERLINK \l _Toc29253 3.4.4译码时当检测到错码结果如图 PAGEREF _Toc29253 6 HYPERLINK \l _Toc2127 致谢...................... PAGEREF _Toc2127 7HYPERLINK \l _Toc30045 参考文献................ PAGEREF _Toc30045 7前言近年来,随着计算机、卫星通信及高速数据网的飞速发展,数据的交换、数据的交换理和存储技术得到了广泛的应用,人们对数据传输和存储系统的可靠性提出了越来越高的要求。
因此,如何控制差错、提高数据传输和存储的可靠性,成为现代数字通信系统设计的重要课题。
目前,绝大多数的数字计算机和数字通信系统中广泛采用二进制形式的码。
而线性分组码具有编译码简单,封闭性好等特点,采用差错控制编码技术是提高数字通信可靠性的有效方法,是目前较为流行的差错控制编码技术。
本课程设计主要讨论数字通信系统中的信道编码中的线性分组码的编译码以及2PSK调制、解调。
分组码是一组固定长度的码组,可表示为(n,k),通常它用于前向纠错。
在分组码中,监督位被加到信息位之后,形成新的码。
在编码时,k个信息位被编为n位码组长度,而n-k个监督位的作用就是实现检错与纠错。
对于长度为n的二进制线性分组码,它有种2n可能的码组,从2n种码组中,可以选择M=2k 个码组(k<n)组成一种码。
调制在时域上是用一个低频信号对一高频信号某一特征参量进行的控制。
低频信号称为调制信号,高频信号称为载波,而调制出来的信号称为已调信号,所以调制的过程在时域就是使载波的某一特征参量随调制信号的变化而变化的过程。
调制过程在频域上是一个移频的过程。
解调,调制的逆过程,即从已调波中不失真地恢复原有的低频调制信号的过程。
解调的方法可分为两类:相干解调(同步检波)和非相干解调(包络检波)。
本课程设计主要是采用Matlab仿真实现线性分组码的编译码和2PSK的调制与解调。
在加深理论知识的基础上,对Matlab仿真也有进一步的理解。
工程概况本次课程设计的主题是采用Matlab软件仿真实现线性分组码的仿真与分析。
首先要求对Matlab软件有着较为深入地了解和认识,掌握一些Matlab软件的基本函数用法。
例如:用Matlab 软件实现2PSK的调制与解调等等。
同时利用软Matlab件也能对书本上的知识进行验证,,与书本上的讲解进行对照分析和比较。
本次课程设计要求的技术对我们通信的学习起着很大的作用。
正文3.1设计的目的和意义3.1.1设计的目的1、学会查阅资资料。
2、掌握线性分组码的编码原理、编码步骤和译码方法。
3、熟悉Matlab软件的基本操作,学会用Matlab软件进行线性分组码的编码和译码。
3.1.2设计的意义通过本课程设计实验使我们掌握了Matlab的基本使用方法。
培养了我们的实际应用的能力,提高分析问题、解决问题的能力。
而且提高我们对这门课的了解深度,把理论知识和实践仿真相结合,增强了个人的动手和独立思考能力,也为以后后续课程的学习以及从事实际工作打下良好的基础。
3.2 线性分组码的编码与译码原理3.2.1线性分组码的编码原理对于码组长度为n、信息码元为k位、监督码元为r=n-k位的分组码,常记作(n,k)码,如果满足2r-1≥n,则有可能构造出纠正一位或一位以上错误的线性码。
设分组码(n,k)中,k = 11,为能纠正一位误码,要求r≥3。
现取r=4,则n=k+r=15。
该例子中,信息组为:(c14c13c12c11c10c9c8c7c6c5)码字为:(c14c13c12c11c10c9c8c7c6c5c4c3c2c1c0)。
一个系统码的生成矩阵G,其左边k行k列应是一个k阶单位方阵Ik,因此生成矩阵G表示为:G=[Ik P]由H矩阵得到(n,k)线性分组码的每一码字ci,(i=1,2,…,2k),都必须满足由H矩阵各行所确定的线性方程组,即 ci·HT=0.(15,11)码的生成矩阵G中每一行及其线性组合都是(n,k)码的码字,所以有G·HT =0。
由G和H构成的行生成的空间互为零空间,即G和H彼此正交。
H=[PT Ir]其右边r行r列组成一个单位方阵。
本文中采用的是(15,11)的线性分组码,线性分组码的编码由监督矩阵和生成矩阵实现。
监督矩阵H为(4×11)的矩阵,由监督方程和(4×4)的单位矩阵构成,生成矩阵G为(11×15)的矩阵,由(11×11)的单位矩阵和监督矩阵的转置矩阵构成。
编程时具体实现方法如下:= 1 \* GB3 ①将要编码的序列先整形,整为11列。
= 2 \* GB3 ②如果序列不能被11整除在后边补0使其能被11整除。
= 3 \* GB3 ③将整形后的序列与生成矩阵G相乘即得到编码后的码字。
3.2.2 线性分组码的译码原理两个码字之间,对应位取之不同的个数,称为汉明距离,用d表示。
一个吗的最小距离dmin 定义为dmin=min{d(ci,cj),i≠j,ci,cj∈(n,k)},两个码字之间的距离表示了它们之间差别的大小。
距离越大,两个码字的差别越大,则传送时从一个码字错成另一码字的可能性越小。
码的最小距离愈大,其抗干扰能力愈强。
对于任一个(n,k)线性分组码,若要在码字内检测出e个错误,则要求码的最小距离d≥e+1; 纠正t个错误,则要求码的最小距离d≥2t+1;(3)纠正t个错误同时检测e(≥t)个错误,则要求 d≥t+e+1。
假设接收端收到的码字为B,那么它和原来发送端发送的码字A之间就有可能存在着误差。
即在码组A={ a14 a13 a12 a11 a10 a9 a8 a7 a6 a5 a4 a3 a2 a1 a0 }中的任意一位就有可能出错。
这样我们在接收端接收到一个码组时就有可能判断错发送端原来应该要表达的意思。
为了描述数据在传输信道中出现错误的情况,引入了错误图样E,在错误图样中,0代表对应位没有传错,1代表传输错误。
实际上错误图样E就是收序列与发送序列的差。
所以在译码中用接收到的码字B模尔加错误图样E就可以得到发送端的正确码字A。
因此译码的过程就是要找到错误图样E。
定义:校正子SS = B * H EMBED Equation.3 = ( A + E ) * H EMBED Equation.3= A * H EMBED Equation.3 + E * H EMBED Equation.3 = E * H EMBED Equation.3因为A是编得的正确码字。
根据前面所叙述,它和监督矩阵的转置相乘为0。
显然,S仅与错误图样有关,它们之间是一一对应的关系。
找到了校正子S,也就可以找到E。
而与发送的码字无关。
若E=0,则S=0;因此根据S是否为0可进行码字的检错。
如果接收码字B中只有一位码元发生错误,又设错误在第i位。
即Ei-1=1,其他的Ei均为0。
在后面的译码程序中,建立了一个校正子S与错误图样E对应的表。
也就是收到一个B序列,就可以通过计算得到一个校正子,而每一个校正子都对应着一个错误图样E,再通过B模尔加上E,就可以得到正确的码字A。
因为在不同的错误序列B中,同一位码元错误时对应的E是一样的,所以可以利用00000000000这个正确的码字让它每位依次错误,来求得它的校正子。
而这时的矩阵B就是错误图样E。
在编程时本实验所采用的为(15,11)线性分组码,最小汉明距离为3,所以具有纠错1位检错两位的功能。
编程时具体实现方法如下:(设一个接收码字矩阵为R,R*H'=S (模2乘),则S为码字对应的伴随式矩阵如果S=0则说明接受码字无差错;(如果S不为0,查看矩阵S中不为0的那行所在行数,该行即收码字错误所在行i;(将S转置,将不为0的一列与H每一列进行比较,找到H中相同列,该列的列数即为错误所在列;④由步骤((得到错误具体位置,模2加对应的错误图样就可得到正确码字。
3.3 2PSK的调制与解调原理3.3.1调制的原理数字调制有三种基本调制方式:振幅键控(ASK)、频移键控(FSK)和相移键控(PSK或DPSK)。
2PSK调制利用载波的相位变化来传递数字信息,振幅和频率保持不变。
双极性的全占空矩形脉冲序列与正弦载波相乘就得到调制信号。
因此进行调制时首先进行码形变换变为双极性的,再经乘法器与载波相乘得到调制信号。