基于Matlab的m序列发生器的设计

上传人:琴**** 文档编号:19126802 上传时间:2017-11-18 格式:DOC 页数:13 大小:311.50KB
返回 下载 相关 举报
基于Matlab的m序列发生器的设计_第1页
第1页 / 共13页
基于Matlab的m序列发生器的设计_第2页
第2页 / 共13页
基于Matlab的m序列发生器的设计_第3页
第3页 / 共13页
基于Matlab的m序列发生器的设计_第4页
第4页 / 共13页
基于Matlab的m序列发生器的设计_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《基于Matlab的m序列发生器的设计》由会员分享,可在线阅读,更多相关《基于Matlab的m序列发生器的设计(13页珍藏版)》请在金锄头文库上搜索。

1、通 信 工 程 专 业 通 信 原 理 课 程 设 计题 目 基于 MATLAB/Simulink 的 m 序列发生器的设计 学生姓名 薛 康 学号 1113024126 所 在 院 (系 ) 陕 西 理 工 学 院 物理与电信工程学院 专业班级 通 信 工 程 专 业 1104 班 指导教师 井敏英 完成地点 陕西理工学院物理与电信工程学院实验 2014 年 11 月 20 日摘要m 序列是一种典型的伪随机序列,它在扩频通信、流密码、信道编码等领域有着十分广泛的应用。本文介绍了 m 序列构造方法及基本性能,并利用 Matlab 中的Simulink 仿真系统及 M 语言编程实现它们的产生和分

2、析。仿真结果验证了该方法的正确性和可行性.关键词: m 序列; Matlab; 仿真Abstract: m sequence is a typical pseudo-random sequence, It has been widely used in spread-spectrum communications, stream cipher, channel coding, and other fields. the paper introduces m sequence construction method and the basic performance. m sequences h

3、ave been produced and analysis by Simulink System and M Programming Language of Matlab. The simulation results show correctness and feasibility of the method.Keywords: m Sequence; Matlab; Simulation引言伪随机噪声具有类似于随机噪声的某些统计特性,同时又能够重复产生。由于它具有随机噪声的优点,又避免了随机噪声的缺点,因此获得了日益广泛的实际实用。这种周期性数字序列称为随机序列,有时又称为随机信号和伪随

4、机码。m 序列是伪随机序列中最重要的序列中的一种,它不但具有易于产生的特点,还具有良好的自相关特性,在扩频通信中得到了广泛的应用。目录第一章 设计内容及要求1第二章 m 序列设计方案选择2.1 方案一 22.2 方案二 2第三章 m 序列产生和性质3.1 m 序列的原理、结构及产生33.2 m 序列的基本性质4第四章 m 序列的程序代码及运行结果4.1 m 序列程序44.2 输入本原多项式产生 m 序列54.3 m 序列自相关函数 6第五章 程序调试及运行结果分析7结论8参考文献 8- 1 -第一章 设计内容及要求基于 Matlab 的 m 序列发生器的设计:基于 Matlab 语言编程,生成

5、 m 序列,具体要求如下: 1、 m 序列的本原多项式为: 52()1Ax2、采用伽罗瓦型移位寄存器结构 3、 利用 Matlab 编程环境求 m 序列的自相关函数 第二章 m 序列设计方案选择2.1 方案一编程实现 m 序列MATLAB 编程非常简单,无需进行变量声明,可以很方便的实现 m 序列。2.2 方案二图 2.2 Simulink 实现 m 序列Simulink 实现 m 序列 (如图 2.2 所示) Simulink 是 MATLAB 最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系

6、统。Simulink 具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点 Simulink 已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。通过比较方案一和方案二,发现方案一的优点具有通用性,其中 mserises.m 相当于一个通项,根据具体的本原多项式调用它即可,而方案二利用 MATLAB 的simulink 直接搭建模块,在移位寄存器较少时利用此方法极为简单,可是当移位寄- 3 -存器的数量增多时,要搭建那么多的模块就显得很繁琐,缺乏通用性,因此本次课程设计选择方案一.第三章 m 序列产生和性质3.1 m 序列的原理、结构及产生m 序列是最长线性反

7、馈移位寄存器序列的简称,m 序列是由带线性反馈的移位寄存器产生的.由 n 级串联的移位寄存器和和反馈逻辑线路可组成动态移位寄存器,如果反馈逻辑线路只由模 2 和构成,则称为线性反馈移位寄存器。带线性反馈逻辑的移位寄存器设定初始状态后,在时钟触发下,每次移位后各级寄存器会发生变化。其中任何一级寄存器的输出,随着时钟节拍的推移都会产生一个序列,该序列称为移位寄存器序列。n 级线性移位寄存器的如图 3.1 所示:1na2n3na1c23c1nc 0 0a1输出图 3.1 n 级线性移位寄存器图中 表示反馈线的两种可能连接方式, =1 表示连线接通,第 n-i 级输出加iCiC入反馈中; =0 表示连

8、接线断开,第 n-i 级输出未参加反馈。i因此,一般形式的线性反馈逻辑表达式为 1201(mod 2)nnniaaa将等式左面的 移至右面,并将 代入上式,则上式可改写为()nC0ii定义一个与上式相对应的多项式 0()niiFx其中 x 的幂次表示元素的相应位置。式称为线性反馈移位寄存器的特征多项式,特征多项式与输出序列的周期有密切关系.当 F(x)满足下列三个条件时,就一定能产生 m 序列:(1) F(x)是不可约的,即不能再分解多项式;(2) F(x)可整除 ,这里 ;1px21n(3) F(x)不能整除 ,这里 qp.q满足上述条件的多项式称为本原多项式.这样产生 m 序列的充要条件就

9、变成了如何寻找本原多项式.3.2 m 序列的基本性质1) 均衡性. 在 m 序列中一个周期内“1”的数目比 “0”的数目多 l 位,这表明,序列平均值很小.2) m 序列和其移位后的序列逐位模 2 相加,所得的序列还是 m 序列,只是相移不同而已. 例如 1110100 与向右移 3 位后的序列 1001110 逐位模 2 相加后的序列为0111010 ,相当于原序列向右移 1 位后的序列,仍是 m 序列.3) m 序列发生器中移位寄存器的各种状态,除全 0 状态外,其他状态只在 m 序列中出现 1 次.如 7 位 m 序列中顺序出现的状态为 111 ,110 ,101 ,010 ,100 ,

10、001 和 011 ,然后再回到初始状态 111.4) m 序列发生器中,并不是任何抽头组合都能产生 m 序列. 理论分析指出,产生的m 序列数由下式决定:(2 n - 1) / n其中 ( X) 为欧拉数(即包括 1 在内的小于 X 并与它互质的正整数的个数) . 例如 5 级移位寄存器产生的 31 位 m 序列只有 6 个.5) m 序列具有良好的自相关特性,其自相关系数:从 m 序列的自相关系数可以看出,m 序列是一个狭义伪随机码.-(N+1)Tc -(N-1)Tc -Tc Tc (N-1)Tc (N+1)Tc 10()jjNRa-NTc NTc 0图 3.2 m 序列信号的自相关函数-

11、 5 -第四章 m 序列的程序代码及运行结果4.1 m 序列程序根据 m 序列的特征方程: 201 0() niifxcxcx并根据其联接多项式编写 Matlab 程序. 输入参数为由本原多项式所决定的反馈连接形式,以五阶 m 序列为例,其中用于产生 m 序列的程序代码如下:m=5an=0 0 0 0 1; %初始寄存器的内容cn=0 0 1 0 1; %cn 为移位寄存器len=length(an); %所需移位寄存器的内容an=zeros(1,len-1),1;L=2len-1; %m 序列的长度m(1)=an(1);%m 序列的第一个输出码元for i=2:Lan1(1:len-1)=a

12、n(2:len);an1(len)=mod(sum(cn.*an),2);%寄存器与反馈的模 2 和an=an1;%移位后的寄存器m(i)=an(1);%新的寄存器输出endstairs(m) %对 m 序列绘图将以上代码命名为 Untitled.m 运行结果见图 4.14.2 输入本原多项式产生 m 序列以 5 阶移位寄存器为例来产生 m 序列,由文献可知其特征多项式为本原多项式,亦及其反馈连接形式为 =0 2()1fx 1C2345C0 1 0 1;移位寄存器结构为1D23D45D0CC5Cm 序列利用 Matlab 编程环境求 m 序列的自相关特性程序:cleara=1 1 0 1 0

13、1 0 0 0 1 1 1 0 1 1 1 1 1 0 0 1 0 0 1 1 0 0 0 0 1 0;b=0 1 1 0 1 0 1 0 0 0 1 1 1 0 1 1 1 1 1 0 0 1 0 0 1 1 0 0 0 0 1;L=length(b); N=120;x=1:N;for k=1:Nc=xor(a,b);D=sum(c);A=L-D;R(k)=(A-D)/(A+D);b=b(L),b(1:L-1);plot(k,R(k);hold onendplot(x,R);grid运行结果见图 4.2- 7 -图 4.1 m 序列的输出图 4.2 5 级线性反馈移位寄存器产生 m 序列的相关特性第五章 程序调试及运行结果分析通过运行结果可以看出是由 0、1 组成的阶梯形图形, Stairs 函数功能是画阶梯形,生成一系列的 m 序列,成功实现了要求。在调试过程中遇到一些错误,例如:?Subscript indices must either be real positive integers or logicals.经过认真分析,解决了错误。结论课程设计是一个十分有价值,有意义的实践活动,把一个课题设计好不是一步到位的,是

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号