




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、专业课程设计报告 题 目: 基于Matlab的m序列仿真分析姓 名:专 业:通 信 工 程班级学号:同 组 人 :指导教师: 南昌航空大学信息工程学院20 14 年 6 月 25 日 专业 课程设计任务书20 1320 14学年 第 2 学期第 16 周 19 周 题目基于Matlab的m序列仿真分析内容及要求设计内容:在MATLAB环境下制作一个GUI,利用Matlab语言生成m序列并对m序列相关特性进行仿真。基本要求:1.根据多项式生产m序列;2.分析m序列的相关性;3)利用matlab GUI显示仿真结果。进度安排 16周:相关资料收集,方案比较与选择。 17-18周:编写脚本,建立仿真
2、系统,系统调试。 19周:设计结果验收,报告初稿的撰写。学生姓名:指导时间 周一 周三 周五指导地点:E楼 607 室任务下达20 14 年 6 月3 日任务完成20 14 年 6 月 27 日考核方式1.评阅 2.答辩 3.实际操作 4.其它指导教师陈光系(部)主任李忠民注:1、此表一组一表二份,课程设计小组组长一份;任课教师授课时自带一份备查。2、课程设计结束后与“课程设计小结”、“学生成绩单”一并交院教务存档。 摘要m序列是最长线性移位寄存器序列,m序列最早应用于扩频通信,有着优良的自相关特性以及很强的抗干扰能力和很好的通信隐蔽性。本文首先介绍了扩频通信中m序列的基本性质,然后再介绍m序
3、列产生的原理以及自相关、互相关特性。通过软件Matlab来仿真分析产生的m序列及其自相关和互相关函数图形。最后通过软件仿真来验证理论分析的正确性。关键字:移位寄存器,m序列,Matlab仿真分析AbstractM sequence is the longest linear shift register sequences,it applied in spread-spectrum communication firstly,it has good autocorrelation pr- operties ,strong anti-interference ability and good c
4、ommunication conce- alment.The paper introduces the basic performance of m sequence firtly,Then introduces its generating principle,autocorrelation and cross-correlation properties. Through the Matlab to annlyze m sequences production ,the figure of its autocorrelation and cross-correlation properti
5、es. At last, the results show the correctness of the method. Keywords: shift register,m sequence,Matlab simulation and analysis目 录第一章 设计要求和引言11.1 设计内容及要求11.1.1 设计内容11.1.2设计要求11.2 系统设计流程图1第二章 m序列的产生及性质22.1 m序列产生原理及结构22.2 m序列的基本性质5第三章 系统软件设计93.1 系统结构功能设计93.2 GUI界面设计9第四章 系统调试结果分析114.1 调试过程114.1.1 调试步骤1
6、14.1.2 调试过程分析114.2 调试故障分析14第五章 实验总结与结论15参考文献16附录17基于Matlab的m序列仿真分析 第一章 设计要求和引言1.1 设计内容及要求1.1.1 设计内容在MATLAB环境下制作一个GUI,利用Matlab语言生成m序列并对m序列相关特性进行仿真。1.1.2设计要求1)根据多项式生产m序列;2)分析m序列的相关性;3)利用Matlab GUI显示仿真结果。1.2 系统设计流程图开始 用Matlab编写程序产生两个m序列对m序列进行自相关特性分析对m序列进行互相关特性分析用Matlab GUI 显示仿真结果结束第二章 m序列的产生及性质2.1 m序列产
7、生原理及结构伪随机序列有很多种,其中最基本最常用的一种是最长线性反馈移位寄存器序列,也称作m序列,通常由反馈移位寄存器产生。m序列是最长线性移位寄存器序列的简称。它是由多级移位寄存器或其他延迟元件通过线性反馈产生的最长的码序列。由于m序列容易产生、规律性强、有许多优良的性能,在扩频通信中最早获得广泛的应用。由m级寄存器构成的线性移位寄存器如图2.1所示,通常把m称为这个移位寄存器的长度。每个寄存器的反馈支路都乘以Ci。当Ci=0时,表示该支路断开;当Ci=1时,表示该支路接通。显然,长度为m的移位寄存器有2n种状态,除了全零序列,能够输出的最长序列长度为N=2n-1。此序列便称为最长移位寄存器
8、序列,简称m序列。m序列每移位一次,就出现一种状态,在移位若干次后,一定能重复出现前某一状态,其后的过程便周而复始了。反馈线位置不同将出现不同周期的不同序列,我们希望找到线性反馈的位置,能使移存器产生的序列最长,即达到周期P=2n-1。按图中线路连接关系,可以写为: 该式称为递推方程。 图2.1 m序列发生器的结构为了获得一个m序列,反馈抽头是不能任意的。在研究长度为m的序列生成及其性质时,常用一个n阶多项式f(x)描述它的反馈结构,即: 式中,c0=1,cm=1。这一方程称为特征多项式。式中xi仅指明其系数ci的值(1或0),x本身的取值并无实际意义,也不需要去计算x的值。例如,若特征方程为
9、f(x)=1+x+x4则它仅表示x0,x1和x4的系数c0=c1=c4=1,其余为零。经严格证明:若反馈移位寄存器的特征多项式为本原多项式,则移位寄存器能产生m序列。特征多项式与输出序列的周期有密切关系.当F(x)满足下列三个条件时,就一定能产生m序列:(1) F(x)是不可约的,即不能再分解多项式;(2) F(x)可整除,这里p=2n-1(3) F(x)不能整除,这里q<p。m序列发生器中,并不是任何抽头组合都能产生m序列。 一个线性反馈移动寄存器能否产生m序列,决定于它的反馈系数ci(i=0,1,2,n),表2-1中列出了部分m序列的反馈系数ci,按照下表中的系数来构造移位寄存器,就
10、能产生相应的m序列。级数周期P反馈系数(采用八进制)37134152353145,67,75663103,147,1557127203,211,217,235,277,313,325,345,3678255435,453,537,543,545,551,703,74795111021,1055,1131,1157,1167,11751010232011,2033,2157,2443,2745,34711120474005,4445,5023,5263,6211,736312409510123,11417,12515,13505,14127,1505313819120033,23261,2463
11、3,30741,32535,37505141638342103,51761,55753,60153,71147,674011532765100003,110013,120265,133663,142305表2-1 部分m序列的反馈系数表根据表2-1中的八进制的反馈系数,可以确定m序列发生器的结构。以7级m序列反馈系数Ci=(211)8为例,首先将八进制的系数转化为二进制的系数即Ci=(010001001)2,由此我们可以得到各级反馈系数分别为:C0=1、C1=0、C2=0、C3=0、C4=1、C5=0、C6=0、C7=1,由此就很容易地构造出相应的m序列发生器。根据反馈系数,其他级数的m序列的
12、构造原理与上述方法相同。需要说明的是,表2-1中列出的是部分m序列的反馈系数,将表中的反馈系数进行比特反转,即进行镜像,即可得到相应的m序列。例如,取C4=(23)8 =(10011)2 ,进行比特反转之后为(10011)2=(31)8,所以4级的m序列共有2个。其他级数m序列的反馈系数也具有相同的特性。理论分析指出,n级移位寄存器可以产生的m序列个数由下式决定: 其中,为欧拉函数,其值小于等于,并与互质的正整数的个数(包括1在内)。例如对于4级移位寄存器,则小于并与15互质的数为1、2、4、7、8、11、13、14,共8个,所以,所以4级移位寄存器最多能产生的m序列数为2。总之,移位寄存器的
13、反馈系数决定是否产生m序列,起始状态决定序列的起始点,不同的反馈系数产生不同的码序列。在Matlab的GUI环境中,程序代码如下:r=5;N=2r-1; %移位寄存器的长度和序列的长度s1(1:5)=1 0 0 0 0; %initial value 1s2(1:5)=1 0 0 0 1; %initial value 1f1=1 0 0 1 0 1; %特征多项式fx5+x2+1;f2=1 1 1 1 0 1 ; %特征多项式fx5+x4+x3+x2+1;for n=r+1:N %进行循环 s1(n)=mod(sum(s1(n-r:n-1).*f1(1:r),2);%通过模2加产生m1序列e
14、ndstem(s1); %绘制生成m序列的图形title('生成m序列')2.2 m序列的基本性质(1)平衡特性在m序列中一个周期N=2n-1内“1”的数目比“0”的数目多 l位。此特性保证了做平衡调制时,扩展频谱具有较高的载波抑制度。 (2)游程特性在表22中列出长为15位的游程分布。 游程长度(比特)游程数目所包含的比特数“1”的 “0”的 1 2 2 4 2 1 1 4 3 0 1 3 4 1 0 4 游程总数8 合计15 表22 111101011001000游程分布一般说来,m序列中长为k(1£ k £ n 2)的游程数占游程总数的l
15、/2k。仅有一个包含n-1个“0”的游程,也只有一个包含n个“1”的游程 (3)线性叠加性m序列和其移位后的序列逐位模二相加,所得的序列还是m序列,只是相移不同而已。例如1110100与向右移三位后的序列1001110逐位模二相加后的序列为0111010,相当于原序列向右移一位后的序列,仍是m序列。 (4)m序列发生器中移位寄存器的各种状态,除全0状态外,其他状态只在m序列中出现一次。 如7位m序列中顺序出现的状态为111,110,101,010,100,00l和011,然后再回到初始状态111。 (5)m序列自相关特性m序列的自相关函数由下式计算(当0时):R() =A-DA+D即A表示相同
16、的位数,D表示不同的位数(注意当m序列用±1表示,则A对应“和序列”的1,D对应“和序列”的-1)。令p =A + D = 2n 1 ,则m序列的自相关系数为:R= 1 & =0-1N 0当=0时,m序列的自相关函数R()出现峰值1;当偏离0时,相关函数曲线很快下降;当1N-1时,相关函数值为-1/N;当=N时,又出现峰值,如此周而复始。当m序列周期很大时,其自相关函数与白噪声类似。相关检测就是利用这一特性,在“有”或“无”信号相关函数值的基础上来识别信号,检测或同步自相关函数值为1的码序列。m序列的自相关函数曲线如图2.2所示:图2.2 m序列的自相关函数特性结合公式和图2
17、.2可知,当序列的周期很大时,m序列的自相关函数波形变得十分尖锐而接近冲击函数,而这正是高斯白噪声的自相关函数。在Matlab的GUI环境中,程序代码如下:r=5;N=2r-1; %移位寄存器的长度和序列的长度s1(1:5)=1 0 0 0 0; %initial value 1s2(1:5)=1 0 0 0 1; %initial value 1f1=1 0 0 1 0 1; %特征多项式fx5+x2+1;f2=1 1 1 1 0 1 ; %特征多项式fx5+x4+x3+x2+1;for n=r+1:N %进行循环 s1(n)=mod(sum(s1(n-r:n-1).*f1(1:r),2);
18、%通过模2加产生m1序列ends1=2*s1-1;%变为双极性m序列for j=0:N-1 s3(j+1)=sum(s1.*s1(1+j:M),s1(1:j)/M;%互相关函数分析endplot(j,rho);axis(-30 30 -0.5 1.5); %设定j的位置范围为(-30,30),rho的位置范围为(- 0.5,1.5)title('m序列的自相关函数')(6) m序列的互相关性其指的是相同周期N = 2n 1 的两个不同序列一致性的程度。其互相关值越接近0,说明两m序列的差别越大,其互相关性越弱。当m序列做CDMA系统的地址码时,必须选择互相关值很小的m序列组,以
19、避免用户之间相互干扰(即多址干扰MAI)。对于两个周期N=2n 1的m序列S1和S2,其互相关函数描述如下:设m序列S1与其后移位的序列S2逐位模2加所得的序列为S1+ S2+,“0”的位数为A(S1和S2相同的位数),“1”的位数为D(S1和S2不同的位数),则互相关函数可由下式计算:R() =A-DA+D在Matlab的GUI环境中,程序代码如下:r=5;N=2r-1; %移位寄存器的长度和序列的长度s1(1:5)=1 0 0 0 0; %initial value 1s2(1:5)=1 0 0 0 1; %initial value 1f1=1 0 0 1 0 1; %特征多项式fx5+
20、x2+1;f2=1 1 1 1 0 1 ; %特征多项式fx5+x4+x3+x2+1;for n=r+1:N %进行循环 s1(n)=mod(sum(s1(n-r:n-1).*f1(1:r),2);%通过模2加产生m1序列endfor n=r+1:N %进行循环 s2(n)=mod(sum(s2(n-r:n-1).*f2(1:r),2);% 通过模2加产生m2序列ends1=2*s1-1;%变为双极性m序列s2=2*s2-1;%变为双极性m序列for j=0:N-1 s3(j+1)=sum(s1.*s2(1+j:M),s2(1:j)/M;%互相关函数分析endplot(j,rho);axis(
21、-30 30 -0.5 0.5); %设定j的位置范围为(-30,30),rho的位置范围为 (-0.5,0.5) title('m序列的互相关函数')第三章 系统软件设计3.1 系统结构功能设计本系统实现的功能是通过MATLAB环境下制作一个GUI来生成m序列及m序列的自相关函数和m序列的互相关函数。系统模块设计说明:系统通过GUI界面设计生成m序列及m序列的自相关函数和m序列的互相关函数。在软件程序中,先设定m序列的移位寄存器的长度,从而得到m序列的周期长度,然后再设定两个移位寄存器序列,通过查表得到相应的两个特征多项式,通过Matlab语言相应的产生m序列以及自相关函数和
22、互相关函数,组成完整的m序列系统,编写m文件,代码如附录。3.2 GUI界面设计如图3.1所示,界面一共有一个下拉菜单popumenu1,两个静态文本框static text,一个axes1。图3.1 m序列仿真GUI界面图它们的功能描述如表3-1所示:控件名功能描述static text显示m序列仿真分析static text显示选项框popupmenu1选择axes1坐标轴要显示的图形axes1显示popupmenu1中被选择的函数的图形表3-1 GUI界面功能描述第四章 系统调试结果分析4.1 调试过程4.1.1 调试步骤第一步:打开matlab,运行m文件或者fig文件后,系统会打开“
23、基于MATLAB环境下的GUI的m序列仿真演示系统”。第二步:在Popupmenu1下拉菜单中选择生成mx序列,m序列的自相关函数和m序列的互相关函数的任一选项,即可在axes1中得到相应的要显示的图形。第三步:观察得到的图形,并与理论分析相比较,验证理论与仿真结果是否一致。4.1.2 调试过程分析整个m序列仿真过程并不是一帆风顺,刚开始由于对GUI环境的不熟悉,出现了很多错误。比如,由于不会使用GUI软件,导致一开始仿真结果不能在GUI界面中显示,最后在老师和同学的指导和热心帮助下,完成了整个仿真过程。后来仿真完成后,由于对理论知识理解的还不是特别的深刻,所以不能判断仿真结果是否正确,最后经
24、过查阅资料和书籍,验证了仿真结果的正确性。下面按照整个m序列仿真过程,选择其中一些具有重要对比意义的步骤分析系统性能及调试结果。一、打开GUI系统界面。运行m文件或fig文件后,可看到如图4.1所示界面。图4.1 GUI环境下系统运行界面二、观察m序列生成图形在下拉菜单中选择生成m序列,则得到如图4.2所示的图形界面。图4.2 生成m序列图形由输入程序知,输入的移位寄存器长度为5,所以可知得到的m序列的周期为25- 1=31,与图4.2对比,结果一致。输入的第一个移位寄存器序列为1 0 0 0 0,由理论分析知,特征多项式f1=1 0 0 1 0 1,通过公式s1(n)=mod(sum(s1(
25、n-r:n-1).*f1(1:r),2)得到m序列,经过理论分析得到与图形相一致的结果,即生成的m序列为1000010101110110001111100110100。三、观察m序列的自相关函数图形在下拉菜单中选择m序列的自相关函数,则得到如图4.3示的图形界面。图4.3 m序列的自相关函数图形由理论分析知,m序列的自相关函数的自相关系数为:R()= 1 & =0-1N 0当N=31时,则自相关系数在=0时,R()=1,0时,R()=-1/31,经与图4.3对比后,发现理论与仿真结果一致。四、观察m序列的互相关函数图形在下拉菜单中选择m序列的互相关函数,则得到如图4.4的图形界面。图4
26、.4 m序列的互相关函数图形由理论分析知,m序列的自相关函数的互相关系数为:R() =A-DA+D经过理论分析,与仿真结果对比后,发现与仿真结果一致。4.2 调试故障分析m序列产生原理是通由最长线性反馈移位寄存器序列得到,在系统调试时,一开始,发现不能运行,经过检查分析后,发现程序中输入的显示图形代码错误,经过修改后,可以得到正确的图形,但是输出的图形不能在GUI环境下生成。经过老师的指导和同学的帮助后,可以在GUI环境下运行仿真。但是在绘制三个函数的图形中,不能正确显示仿真结果。经过检查程序代码后,发现输入的特征多项式不符合移位寄存器的长度值与抽头的位置关系,经过修改后,得到了正确的仿真结果
27、图形。在最后的改进中,发现许多程序代码都是重复的,因此想到了使用多选的选择菜单,利用switch语句来精简程序代码。经过改进后,在能同样实现相同的功能情况下,程序代码简单了许多,符合程序编码的规则。最后经过检查,发现仿真结果与理论分析一致,完成了仿真调试过程。第五章 实验总结与结论本文通过MATLAB集成环境下的m文件及GUI界面工具来仿真分析m序列的生成,自相关函数及互相关函数。通过GUI界面对m序列整个过程进行了仿真分析,仿真结果与理论分析对比后,验证了理论分析的正确性。在实验过程中,充分利用了MATLAB的优势,及其精简的编写了程序代码,实现了确定了移位寄存器的长度及其具体序列后,就能生
28、成相应的m序列,并能由生成的m序列去仿真分析其自相关函数及互相关函数。由图形可更加直观明了的看出m序列的基本特性。本次课程设计很好的完成了GUI环境下应有的功能,基本达到了本次设计的要求。通过这次的课程设计,提高了对MATLAB的应用能力,了解了如何使用MATLAB语言来仿真分析我们理论上学到的专业知识,进一步加深了对MATLAB语言的理解,也学会了如何使用GUI工具。在编写程序代码时,又提高了自己编写语言的能力以及逻辑思维的能力。通过这次课程设计,进一步加深了对m序列的理解,通过理论与软件仿真的结合,提高了学习的效率,同时也锻炼了自己独立思考问题,发现问题,分析问题,解决问题的能力。通过两个
29、人的合作锻炼了我们互补互助,互相沟通交流的能力。当然,由于能力有限,本文还有许多不足。比如,可以在GUI界面下自由输入移位寄存器序列的值,从而得到相应的m序列。或者还可以输入任意长度的移位寄存器值,然后可找到相应的特征多项式,从而得到相应的m序列。作为一名大学生,我们不见要学会理论知识,更应该有探索钻研的精神,要学会不断地发现问题,更要有一种不怕吃苦,努力向上的精神。参考文献1 樊昌信. 通信原理.北京:国防工业出版社,2008.2 郝文化. MATLAB图形图像处理应用教程.北京:中国水利水电出版社,2002.3 楼顺天. 基于Matlab7.x的系统分析与设计信号处理.西安:西安电子科技大学出版 社,20054 刘树棠.现代通信系统使用MATLAB. 西安:西安交通大学出版社,2001 5查光明熊贤祚扩频通信lM西安:西安电子科技大学出版社,19906田日才扩频通信M北京:清华大学出版社,20077孙屹,李妍. MATLAB 通信仿真开发手册M. 北京:国防工业工业出版社,2006附录程序代码:(1)主程序axes(handles.axes1);mm=0;val=get(handles.popupmenu1,'value');%
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 课题开题报告:退役光伏组件回收利用机制与政策研究
- 课题开题报告:算法时代主流意识形态传播的内在机理与实践策略研究
- 高速收费站安全生产警示
- 孩子阅读能力的家庭培养方法分享
- 大数据在体育产业的应用
- 11 我是一张纸 第一课时 教学设计-2023-2024学年道德与法治二年级下册统编版
- 金融风险管理中的财务管理信息系统应用
- 2024秋七年级生物下册 10.5 人体能量的供给教学设计 (新版)苏教版
- 孩子礼仪教育在家庭中的实践
- 大数据在市场营销中的伦理问题
- 运动损伤处理中的抗痛药物选择
- (完整word版)数学中考答题卡模板
- 数学教学的跨学科整合
- 【抗肿瘤靶向药物研究进展综述报告5500字】
- GB/T 21837-2023铁磁性钢丝绳电磁检测方法
- 脑梗死治疗癫痫
- 物业供配电系统管理与维护
- 中国联通云运维管理技术规范v1.10(去年写的)
- 湘艺高中美术-美术鉴赏《21原始人的创造》课件
- 幽门螺杆菌感染与慢性胃炎不得不说的那些事
- 村民组集体资金、资产、资源使用管理办法
评论
0/150
提交评论