基于Matlab的m序列相关特性的仿真说明书.doc

上传人:h**** 文档编号:140634 上传时间:2018-07-10 格式:DOC 页数:18 大小:183KB
下载 相关 举报
基于Matlab的m序列相关特性的仿真说明书.doc_第1页
第1页 / 共18页
基于Matlab的m序列相关特性的仿真说明书.doc_第2页
第2页 / 共18页
基于Matlab的m序列相关特性的仿真说明书.doc_第3页
第3页 / 共18页
基于Matlab的m序列相关特性的仿真说明书.doc_第4页
第4页 / 共18页
基于Matlab的m序列相关特性的仿真说明书.doc_第5页
第5页 / 共18页
点击查看更多>>
资源描述

1、 1 电子信息工程 专业 洗手 课程设计题单 洗手 洗手 班级 学生 洗手 洗手 课程名称 专业课程设计 洗手 课 题 基于 Matlab 的 m 序列相关特性的仿真 洗手 设计要求 基于 Matlab 语言编程 , 吃饭 对 m 序列相关特性进行仿真 , 吃饭 并用 Matlab GUI 工具设计图形界面显示结果 , 吃饭 具体要 求如下 : beef 洗手 1、 beef给定 m 序列 S1、 beefS2, 吃饭 码长为 1023 洗手 2、 beef计算 m 序列 S1 的自相关函数 洗手 3、 beef计算 m 序列对 S1、 beefS2 的互相关函数 洗手 4、 beef界面设计

2、要有按钮控件以及一 、 beef二级菜单 洗手 课 题 发 给 日 期 2012.6.8 洗手 课程设计完成日期 2012.6.29 洗手 指 导 教 师 洗手 评语 : beef 洗手 洗手 洗手 评分 : beef 洗手 洗手 洗手 洗手 摘要 洗手 洗手 首先 MATLAB 在通信中有很多应用 , 吃饭 功能十分强大且编程复杂度低 , 吃饭Communication 工具箱更是几乎涉及到通信的各个领域 : beef信道编码 , 吃饭 解码 , 吃饭 数字调制解调 , 吃饭 扩频技术 , 吃饭 各类接口电路等等 。 洗手 伪随机信号既有随机信号所具有的优良的相关性 ,又有随机信号所不具备的

3、规律性 .洗手 伪随机信号既易于从干扰信号中被识别和分离出来 ,又可以方便地产生和重复 ,其 相关函数接近白噪声的相关函数 , 有随机噪声的优点 ,又避免了随机噪声的缺2 点 . m 序列是伪随机序列中最重要的序列中的一种 伪随机序列具有可确定性 、 beef可重复性 ,易于实现相关接受或匹配接受 ,故有很好的抗干扰性能 . 因此伪随机序列在相关辩识 、 beef伪码测距 、 beef导航 、 beef遥控遥测 、 beef扩频通信 、 beef多址通信 、 beef分离多径 、b eef误码测试 、 beef线形系统测量 、 beef数据加扰 、 beef信号同步等方面均有广泛的应用 . 洗

4、手 m 序列是一类重要的伪随机序列 ,最早应用于扩频通信 . 可以通过移位 寄存器 ,利用 MATLAB 编程产生 m序列 。 洗手洗手 关键词 : 伪随机序 m 序列 移位寄存器 仿真 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 目 录 洗手 第一章 设计内容及要求 1洗手 洗手 第二章 m 序列设计方案选择 2洗手 2.1 方案一 2 洗手 2.2 方案二 2 洗手 洗手 第三章 m 序列产生和性质 3洗手 3 3.1 m 序列的基本性质 3 洗手 3.2 m序列的原理 、 b eef结构及产生 5洗手 3.3 生成 m 序列的模块 6 洗手

5、洗手 第四章 m 序列构造其他序列 7洗手 洗手 第五章 程序调试及运行结果分析 8洗手 5.1 仿真设计流程图 8 洗手 5.2 实验的调试与运行结果 9 洗手 5.3 错误排除 12 洗手 洗手 结论 13 洗手 参考文献 14洗手 附录 15 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 设计内容及要求 洗手 洗手 基于 Matlab 语言编程 , 吃饭 对 m序列相关特性进行仿真 , 吃饭 并用 Matlab GUI 工具设计图形界面显示结果 , 吃饭 具体要求如下 : beef 洗手 洗手 1、 b eef给定 m序列 S1、 beefS2, 吃饭 码长为

6、1023 洗手 4 洗手 2、 b eef计算 m序列 S1 的自相关函数 洗手 洗手 3、 b eef计算 m序列对 S1、 beefS2的互相关函数 洗手 洗手 4、 b eef界面设计要有按钮控件以及一 、 beef二级菜单 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 5 洗手 洗手 洗手 洗手 第二章 m 序列设计方案的选择 洗手 2.1 方案一 洗手 MATLAB 编程非常简单 , 吃饭 无需进行变量声明 , 吃饭 可以很方便的实现 m序列 。 洗手洗手 2.2 方案二 洗

7、手 洗手 图 2.1 Simulink 实现 m序列 洗手 洗手 Simulink 是 MATLAB 最重要的组件之一 , 吃饭 它提供了一个动态系统建模 , 吃饭 仿真和综合分析的集成环境 。 洗手 在此环境中无需大量书写程序 , 吃饭 而只需通过简单直观的鼠标操作 , 吃饭 就可构造出复杂的系统 。 洗手 Simulink 具有适应性广 , 吃饭 结构及流程清晰及仿真精细等优点 , 吃饭 基于以上优点 , 吃饭 Simulink 已被广泛的运用到控制理论和 数字信号处理的复杂仿真和设计 。 洗手洗手 通过比较方案一和方案二 , 吃饭 发现方案一的有点具有通用性而方案二利用 MATLAB的

8、Simulink 直接搭建模块 , 吃饭 在移位寄存器较少的情况下利用此方法比较简单 , 吃饭可是当移位寄存器的个数增多时 , 吃饭 要搭建那么多的模块就显的很繁琐了 , 吃饭 缺乏通用性 , 吃饭 因此本次实验选择方案一 。 洗手 洗手 洗手 洗手 洗手 第三章 m 序列的产生及性质 洗手 洗手 3.1 m 序列的基本性质 洗手 均衡性 。 洗手 在 m序列一个周期中 1的个数比 0要多 1 位 , 吃饭 这表明序列平均值很小 。 洗手洗手 m序列与 其移位后的序列模 2相加 , 吃饭 所得的序列还是 m序列 , 吃饭 只是相位不同而已 。洗手 例如 : beef1110100 与向又移 3

9、 位的序列 1001110 相对应模二相加后的序列为6 0111010, 吃饭 相当于原序列向右移一位后的序列 , 吃饭 仍为 m序列 。 洗手洗手 m序列发生器中移位寄存器的各种状态 , 吃饭 除全 0状态外 , 吃饭 其他状态只在 m序列中出现一次 。 洗手洗手 m序列发生器中 , 吃饭 并不是任何抽头组合都能产生 m 序列 。 洗手 理论分析指出 , 吃饭 产生的m序列数由下式决定 : b eef洗手 -表达式 3.4 洗手 其中( X)为欧拉数 。 洗手 例如 5级移位寄存器产生 31 位 m序列只有 6个 。 洗手洗手 m序列具有良好的自相关性 , 吃饭 其自相关系数 : beef洗

10、手 -表达式 3.5 洗手 从 m 序列的自相关系数可以看出 m 序列是一个狭义伪随机码 。 洗手洗手 洗手 洗手 洗手 图 3.2 m 序列信号的自相关函数 洗手 3.2 m 序列的产生原理 、 b ef结构及产生 洗手 m序列是最长线性反馈移位寄存器序列的简称 , 吃饭 m序列是由带线性反馈的移位寄存器产生的 。 洗手洗手 由 n 级串 联的移位寄存器和反馈逻辑线路可组成动态移位寄存器 , 吃饭 如果反馈逻辑线路只由模 2 和构成 , 吃饭 则称为线性反馈移位寄存器 。 洗手洗手 带线性反馈逻辑的移位寄存器设定初始状态后 , 吃饭 在时钟触发下 , 吃饭 每次移位后各级寄存器会发生变化 ,

11、 吃饭 其中任何一级寄存器的输出 , 吃饭 随着时钟节拍的推移都会产生一个序列 , 吃饭 该序列称为移位寄存器序列 。 洗手洗手 n级线性移位寄存器的如图 3.1 所示 : b eef洗手 洗手 A 洗手 洗手 洗手 洗手 图 3.1 n级线性移位寄存器 洗手 7 洗手 图中 Ci表示反馈线的两种可能连接方式 , 吃饭 Ci=1表示连线接通 , 吃饭 第 n-i级输出加入反馈中 ; b eefCi=0表示连线断开 , 吃饭 第 n-i级输出未参加反馈 。 洗手洗手 因此 , 吃饭 一般形式的线性反馈逻辑表达式为 洗手 -表达式3.1洗手 将等式左边的 an移至右 边 , 吃饭 并将 an=C0

12、an(C0=1)带入上式 , 吃饭 则上式可以写成 洗手 -表达式 3.2洗手 定义一个与上式相对应的多项式 洗手 -表达式 3.3洗手 其中 x的幂次表示元素的相应位置 。 洗手 该式为线性反馈移位寄存器的特征多项式 , 吃饭特征多项式与输出序列的周期有密切关系 。 洗手 当 F(x)满足下列三个条件时 , 吃饭 就一定能产生 m序列 : b eef洗手 F(x)是不可约的 , 吃饭 即不能再分解多项式 ; beef洗手 F( x)可整除 xn+1, 吃饭 这里 p=2n+1; beef洗手 F( x)不能整除 xn+1, 吃饭 这里 qq.洗手 满足上述条件的多项式称为本原多项式 , 吃饭

13、 这样产生 m序列的充要条件就变成了如何寻找本原多项式 。 洗手洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 8 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 3.3 生成 m序列的模块 洗手 洗手 根据 m序列的生成原理图 , 吃饭 如图 3.1所示 , 吃饭 由图可知 m序列是 多级移位寄存器通过线性反馈再进行模二相加产生的 , 吃饭 最后一位一位输出观 察其波形图 。 洗手 程序中使用的代码如下 : b eef洗手 洗手 N=2length(reg1)-1;b eef洗手 for k=1:

14、N洗手 a_n=mod(sum(reg1.*coeff1(1:length(coeff1)-1),2);b eef洗手 reg1=reg1(2:length(reg1),a_n;b eef洗手 out1(k)=reg1(1);b eef洗手 end洗手 其中 N为 m序列的长度 , 吃饭 值为( 26-1) 。 洗手 由程序已定义了移位寄存器的初始状态和抽头系数 , 吃饭 在此基础上进行反馈 , 吃饭 后进行模二加 , 吃饭 所得的结果为输出的第一个值 ,吃饭 初始状态向左移移位 , 吃饭 而所得的输出值填补上变成新的序列 , 吃饭 在进行第二次反馈和模二加 , 吃饭 依次循环 N次 , 吃饭

15、 产生 m序列 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 9 洗手 洗手 洗手 洗手 洗手 第四章 m序列构造其他序列 洗手 洗手 洗手 Gold序列具有三值互相关函数 , 吃饭 其值为 : beef洗手 2)(1,1),(1 rtpprtp(式 2.10) 洗手 这里 , 吃饭 洗手 的倍数为偶数但不是, 为奇数 421 ,21)(,12 )2(5.0)1(5.0r rrtp rrr (式 2.11) 洗手 当 r为奇数时 , 吃饭 gold序列中约有 50%的码序列归一化相关函数值为 -1/p。 洗手 当 r为偶数但又

16、不是 4的倍数是 , 吃饭 约有 75%的码序列归一化互相关函数值为 -1/p。 洗手 洗手 Gold序列是 R.Gold于 1967年提出来的 , 吃饭 它由两个 m序列按下述方法演变 而来的 : beef把 2个码长相同的 m序列移位并进行模 2加 , 吃饭 如果相加的两个 m序列是一对优选对 ,吃饭 则相加的结果为一个 Gold序列 。 洗手洗手 设有一对周期为 N=2r-1的 m序列优选对 a , 吃饭 b , 吃饭 以其中任意一个序列为基准序列 , 吃饭 如 a , 吃饭 对另一个序列 b进行移位 i次 , 吃饭 得到 b的移位序列 bi ,吃饭 然后与序列 a进行模二加得到一个新的

17、周期为 N的序列 c , 吃饭 则称新序列 c为 Gold序列 , 吃饭 既 洗手 ci = a + b i=0, 吃饭 1, 吃饭 2, 吃饭 .,N洗手 洗手 洗手 4.1 Gold序列的产生方框图 洗手 洗手 产生 gold序列的程序代码如下 : b eef洗手 gold=mod(out1+out2,2);b eef洗手 程序调试及运行结果 洗手 10 5.1仿真设计流程图 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 否 洗手 洗手 洗手 是 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 洗手 否 洗手 洗手 洗手 是 洗手 洗手 洗手 图 5.1 实验仿真流程图 洗手

18、 5.2实验的调试与运行结果 洗手 洗手 程序中把移位寄存器的初始值定义全为 1, 吃饭 抽头系数定义为 1000011和1100111,根据公式 m序列的长度 =2n-1, 吃饭 可知道所得的两个 m序列的长度都为 63,吃饭 所利用的移位寄存器为 6个 。 洗手 代码如下 : beef洗手 reg1=ones(1,6);b eef %寄存器初始状态 洗手 coeff1=1 0 0 0 0 1 1;b eef %设置系数 洗手 reg2=ones(1,7);b eef %寄存器初始状态 洗手 coeff2=1 0 0 1 1 1 1;b eef %设 置系数 洗手 洗手 仿真准备 规划程序模块 编写程序 确认程序无 误 设置仿真参数 运行,调试及数据分析 生成仿真图形 是否达到要 求 结束

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

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。