基于Matlab的m序列生成及性能仿真
移动通信课程设计实验报告-利用matlab进行m序列直接扩频仿真

目录一、背景 (4)二、基本要求 (4)三、设计概述 (4)四、Matlab设计流程图 (5)五、Matlab程序及仿真结果图 (6)1、生成m序列及m序列性质 (6)2、生成50位随机待发送二进制比特序列,并进行扩频编码 (7)3、对扩频前后信号进行BPSK调制,观察其时域波形 (9)4、计算并观察扩频前后BPSK调制信号的频谱 (10)5、仿真经awgn信道传输后,扩频前后信号时域及频域的变化 (11)6、对比经信道前后两种信号的频谱变化 (12)7、接收机与本地恢复载波相乘,观察仿真时域波形 (14)8、与恢复载波相乘后,观察其频谱变化 (15)9、仿真观察信号经凯萨尔窗低通滤波后的频谱 (16)10、观察经过低通滤波器后无扩频与扩频系统的时域波形 (17)11、对扩频系统进行解扩,观察其时域频域 (18)12、比较扩频系统解扩前后信号带宽 (19)13、比较解扩前后信号功率谱密度 (20)14、对解扩信号进行采样、判决 (21)15、在信道中加入2040~2050Hz窄带强干扰并乘以恢复载波 (24)16、对加窄带干扰的信号进行低通滤波并解扩 (25)17、比较解扩后信号与窄带强干扰的功率谱 (27)六、误码率simulink仿真 (28)1、直接扩频系统信道模型 (28)2、加窄带干扰的直扩系统建模 (29)3、用示波器观察发送码字及解扩后码字 (30)4、直接扩频系统与无扩频系统的误码率比较 (31)5、不同扩频序列长度下的误码率比较 (32)6、扩频序列长度N=7时,不同强度窄带干扰下的误码率比较 (33)七、利用Walsh码实现码分多址技术 (34)1、产生改善的walsh码 (35)2、产生两路不同的信息序列 (36)3、用两个沃尔什码分别调制两路信号 (38)4、两路信号相加,并进行BPSK调制 (39)5、观察调制信号频谱,并经awgn信道加高斯白噪和窄带强干扰 (40)6、接收机信号乘以恢复载波,观察时域和频域 (42)7、信号经凯萨尔窗低通滤波器 (43)8、对滤波后信号分别用m1和m2进行解扩 (44)9、对两路信号分别采样,判决 (45)八、产生随机序列Gold码和正交Gold码 (47)1、产生Gold码并仿真其自相关函数 (48)2、产生正交Gold码并仿真其互相关函数 (50)九、实验心得体会 (51)直接序列扩频系统仿真一、背景直接序列扩频通信系统(DSSS)是目前应用最为广泛的系统。
基于MATLAB的m序列仿真

s1(n)=mod(sum(s1(n-r:n-1).*f1(1:r)),2);%通过模2加产生m1序列 end stem(s1); title('生成m序列') %绘制生成m序列的图形
4
基于 Matlab 的 m 序列仿真分析
2.2 m 序列的基本性质
参考文献 ......................................................... 16 附录 ............................................................. 17
基于 Matlab 的 m 序列仿真分析
1.2
系统设计流程图
本文通过软件 Matlab 编写程序,从而在 GUI 环境下看到 m 序列的产生、m 序列的自 相关和互相关函数图形,其系统设计流程图如图 1.1 所示: 开始
用 Matlab 编写程序产生两个 m 序列
对 m 序列进行自相关特性分析
对 m 序列进行互相关特性分析
用 Matlab GUI 显示仿真结果
结束 图 1.1 系统设计流程图
1
基于 Matlab 的 m 序列仿真分析
第二章
2.1 m 序列产生原理及结构
m 序列的产生及性质
伪随机序列有很多种,其中最基本最常用的一种是最长线性反馈移位寄存器序 列,也称作 m 序列,通常由反馈移位寄存器产生。 m 序列是最长线性移位寄存器序列的简称。它是由多级移位寄存器或其他延迟 元件通过线性反馈产生的最长的码序列。由于 m 序列容易产生、规律性强、有许多 优良的性能,在扩频通信中最早获得广泛的应用。 由 m 级寄存器构成的线性移位寄存器如图 2.1 所示,通常把 m 称为这个移位寄 存器的长度。每个寄存器的反馈支路都乘以 Ci。当 Ci=0 时,表示该支路断开;当 Ci=1 时,表示该支路接通。显然,长度为 m 的移位寄存器有 2n 种状态,除了全零序 列,能够输出的最长序列长度为 N=2n-1。此序列便称为最长移位寄存器序列,简称 m 序列。 m 序列每移位一次,就出现一种状态,在移位若干次后,一定能重复出现前某 一状态,其后的过程便周而复始了。反馈线位置不同将出现不同周期的不同序列, 我们希望找到线性反馈的位置,能使移存器产生的序列最长,即达到周期 P=2n-1。 按图中线路连接关系,可以写为:
基于Matlab的m序列生成及性能仿真

PN_mod8=reshape(PN—mod8,1,512); end
location=1; k=1: for i=1:length(reg_a11)
if reg__test==reg_all(i,:) location(k)=i; k=k+1:
%寻找初始状态,以验证其周期
end
end
合伪随机序列的基本性质,可以满足扩频序列的设计需求。
基于以上m序列移位寄存器结构,可在Matlab中用M语言编程
产生113序列的程序代码:
reg=[1 0 1 1 1 0 1 0 1 1 0 1];
%从高位到低位
re。gLtest=reg;
eoeff=[1 0 0 0 0 0 1 0 1 0 0 1 11;%高位到低位
%计算In序列自相关性
subplot(2,1,1);
plot(j,temp/length(n)); tide(7自相关性,);
axis([一1000 1000—0.1 1.2]);
酣d on; 同理可计算m序列互相关性程序。
运行程序后可返回D1序列相关函数如图2所示。
由图2可以看出,m序列具有良好的自相关特性和互相关性,符
关和互相关特性【”。
1.m序列简介
m序列是最长线性移位寄存序列的简称.是由带线性反馈的移存
器产生的周期最长的序列。它是周期为N=2r_1的线性伪随机序列,r
是移位寄存器阶数。 m序列的性质有闭:
a)均衡性,即在m序列的一个周期中,…1’和…0’的数目基本相等。
b)长度为k的游程数目占游程总数的24.其中“+”游程和“一”游程
i=l;
for k=1:(2^length(reg))
%计算一个周期的rfl序列输出
基于Matlab的m序列的仿真与实现

a=[1101010001110111110010011000010]; b=a; Nb=length(b); N=120; x=[1:N]; for k=1:N c=xor(a,b); D=sum(c); A=Nb-D; % R(k)=(A-D)/(A+D); b=[b(Nb),b(1:Nb-1)]; plot(k,R(k),'ro'); hold on end plot(x,R,'g'); grid 运行结果:
-5
图二 5 级线性反馈移位寄存器产生 m 序列的仿真系统 (2)利用 Simulinkm观测 m 序列时频域特性
图三 5 级线性反馈移位寄存器产生 m 序列的时域波形
图四 5 级线性反馈移位寄存器产生 m 序列的频域波形 ToWorkspace的wr5就是所得m序列,我们取它一个完整
的周期,其周期是 31,序列如下: 1101010001110111110010011000010 2.3 利用 Matlab 编程环境求 m 序列的自相关特性 程序: clear
F(x)=C +C x1+C x2+…=
01
2
(2)
(3)生成函数(亦称序列多项式)可以表示为如下形式
G(x)=a +a x1+a x2+…=
01
2
当初始状态为
a =1,a =a =…=a =0
-m
-m+1 -r+2
-1
联立式(1)、(2)、(3)可得
(3) (4)
国防工业工业出版社,2006,5. [4]查光明,熊贤祚.扩频通信[M].西安:西安电子科技
大学出版社,2002. [5]曾兴雯,刘乃安,孙献璞.扩展频谱通信及其多址技术
[M].北京:高等教育出版社,2004. [6]樊昌信,张甫翊,吴成柯.现代通信[M].北京:高等
基于Matable的扩频通信m伪随机序列的产生_图文.

*******************实践教学*******************兰州理工大学计算机与通信学院2010年秋季学期移动通信课程设计题目:基于Matable 的扩频通信m伪随机序列的产生专业班级:通信四班姓名:学号: 07250435指导教师:成绩:中文摘要伪随机信号既有优良的相关性,又有随机信号所不具备的规律性,因此,伪随机信号既易于从干扰信号中识别和分离出来,又可以方便的产生和重复,其相关函数接近于白噪声的相关函数,既有随机噪声的优点,又避免了随机噪声的缺点。
m 序列是伪随机序列中最重要的序列之一。
其具有的尖锐的自相关特性;尽可能小的互相关值;足够多的序列数;序列均衡性好;工程上易实现等的要求,使得它在扩频通信系统中得都了广泛的应用。
它可以通过移位寄存器实现,本文利用MATABLE 编码实现了m 序列的生成,通过仿真对m 序列的自相关特性及功率谱密度函数进行了分析和验证。
关键字:扩频通信;伪随机序列;m 序列;MATABLE 编码前言扩频通信因其具有抗干扰、抗多径衰落、抗侦察等优点在通信领域中得到广泛应用。
扩频序列的设计和选择是扩频通信的关键技术,扩频序列性能的优劣在很大程度上决定了通信系统的多址干扰和符号间干扰的大小,从而直接影响到系统的性能。
因此,深入研究扩频序列的性质.构造设计具有良好相关性的扩频序列,来满足扩频系统的要求,是直接序列扩频系统的核心课题。
白噪声是一种随机过程.它有极其优良的相关特性。
但至今无法实现白噪声的放大、调制、检测、同步及控制等.而只能用类似于白噪声统计特性的伪随机序列来逼近它,并作为扩频系统的扩频码。
随机码具有某种随机序列的随机特性,因为同样具有随机特性,无法从一个已经产生的序列中判断是随机序列还是伪随机序列,只能根据序列的产生办法来判断。
伪随机序列具有良好的随机性和接近白噪声的相关函数,并且有预先的可确定性和可重复性。
而这些特性正好满足了扩频通信中对扩频序列尖锐的自相关特性;尽可能小的互相关值;足够多的序列数;序列均衡性好;工程上易实现等的要求。
基于Matlab的m序列相关特性的仿真

电子信息科学与技术专业课程设计题单班级0982081学生课程名称专业课程设计课题基于Matlab的m序列相关特性的仿真设计要求基于Matlab语言编程,对m序列相关特性进行仿真,并用Matlab GUI工具设计图形界面显示结果,具体要求如下:1、给定m序列S1、S2,码长为10232、计算m序列S1的自相关函数3、计算m序列对S1、S2的互相关函数4、界面设计要有按钮控件以及一、二级菜单课题发给日期2012.07.04课程设计完成日期2012.07.29指导教师评语:评分:摘要m 序列是最长线性反馈移存器序列的简称,它是由带线性反馈的移存器产生的周期最长的一种序列。
本文主要是介绍MATLAB 在m 序列的产生及其相关特性分析方面的应用,研究了关于matlab完成m序列simulink 硬件仿真方法,并且利用MATLAB 对不同长度的几种m 序列进行相关特性的分析。
对m序列的原理、结构、性质进行了分析,在matlab中采用编程和simulink动态仿真功能2种方式实现m序列,仿真实验表明,这两种方法简单,易于实现,可移植性较强,具有可行性和设计的合理性。
[关键词]m 序列;simulink 硬件仿真;自相关目录第一章设计内容及要求第二章m序列设计方案的选择第三章m序列的产生及性质3.1 m序列的产生原理、结构及产生3.2 m序列的基本性质3.3 生成m序列的模块第四章 m序列构造其他序列第五章程序调试及运结果5.1仿真设计流程图5.2实验的调试与运行结果5.3 错误排除第六章结论参考文献附录第一章设计内容及要求基于MATLAB产生m序列要求:1.通过matlab编程产生m序列的产生原理及其产生方法。
2.对特定长度的m序列,分析其性质,及其用来构造其它序列的方法。
第二章m序列设计方案的选择2.1 方案一MATLAB编程非常简单,无需进行变量声明,可以很方便的实现m 序列。
2.2 方案二图2.1 Simulink实现m序列Simulink是MATLAB最重要的组件之一,它提供了一个动态系统建模,仿真和综合分析的集成环境。
基于MATLAB的扩频通信m序列的仿真

********************实践教学********************兰州理工大学计算机与通信学院2010年秋季学期移动通信课程设计题目:基于MATLAB的扩频通信m伪随机序列产生专业班级:通信工程07级(1)班姓名:周超学号: 07250115指导教师:贾科军成绩:目录摘要 (3)前言 (4)第一章基本原理 (5)1.1扩频调制 (5)1.2直接序列扩频(DS)原理 (8)1.3伪随机(PN)序列 (9)第二章 m序列发生器的系统分析 (12)2.1 m序列的产生 (12)2.2 m序列的反馈系数 (15)2.3 m序列发生器结构 (16)2.4 m序列的基本性质 (17)2.5 m序列的相关性 (17)第三章详细设计 (19)3.1 十阶m序列的设计框图 (19)3.2工作流程图 (20)第四章仿真测试及结论 (22)4.1 十阶m序列的仿真结果及分析 (22)4.2该设计的序列相关性仿真结果及分析 (27)参考文献 (28)总结 (29)所谓扩频通信,是扩展频谱通信技术的简称。
它是指用来传输信息的射频带宽远大于信息本身带宽的一种通信方式,扩频通信系统的出现,被誉为是通信技术的一次重大突破。
伪随机序列是具有某种随机特性的确定的序列。
它们是由移位寄存器产生确定序列,然而它们却具有某种随机序列的随机持性。
因为同样具有随机特性,无法从一个已经产生的序列的特性中判断是真随机序列,只能根据序列的产生办法来判断。
本设计运用MATLAB实现产生扩频通信中的m序列,并分析了相关性能。
关键词:扩频通信;随机序列;m序列随着社会,经济的发展,移动通信得到了越来越广泛的应用,在我国,移动通信发展的起步晚,但发展极其迅速。
移动通信的发展日新月异,从1978年第一代模拟蜂窝网电话系统的诞生至今,不过10多年,第二代全数字蜂窝网电话系统就已问世,第三代的个人通信系统的方案和实验均已开始。
在这种情况下,相应的扩频编码技术也随之诞生了。
基于MATLAB的m序列的产生及相关特性仿真(精)

XUEBAO 2009.10.20*[收稿日期]2009-07-28[作者简介]刘新永(1975-,男,解放军蚌埠坦克学院教育技术中心,讲师,研究方向:通信与网络技术。
蔡凤丽(1978-,女,安徽电子信息职业技术学院,讲师,研究方向:通信与信息系统。
裴晓根(1975-,男,解放军蚌埠坦克学院信息指挥教研室,助讲,研究方向:军事通信。
No.52009General No.44Vol.82009年第5期第8卷(总第44期安徽电子信息职业技术学院学报JOURNALOF ANHUI VOCATIONAL COLLEGE OF ELECTRONICS&INFORMATION TECHNOLOGY[文章编号]1671-802X(200905-0014-03基于MATLAB 的m 序列的产生及相关特性仿真刘新永1,蔡凤丽2,裴晓根3(1、3.解放军蚌埠坦克学院,安徽蚌埠233050;2.安徽电子信息职业技术学院,安徽蚌埠233060[摘要]本文主要是介绍MATLAB 在m 序列的产生及其相关特性分析方面的应用,研究了基于MATLAB 完成m序列simulink 硬件仿真方法,并且利用MATLAB 对不同长度的几种m 序列进行相关特性的分析。
[关键词]m 序列;simulink 硬件仿真;自相关[中图分类号]TN95[文献标识码]B一、m 序列的产生原理m 序列是最长线性反馈移存器序列的简称,它是由带线性反馈的移存器产生的周期最长的一种序列。
如图1所示为n 级移位寄存器,其中有若干级经模2加法器反馈到第1级。
不难看出,在任何一个时刻去观察移位寄存器的状态,必然是2n 个状态之一,其中每一状态代表一个n 位的二进制数字;但是,必须把全0排斥在外,因为一旦出现全0状态,则以后的序列将恒为0,所以,寄存器的起始状态可以是非全0的2n -1状态之一。
这个电路的输出序列是从寄存器移出的,尽管移位寄存器的状态每一移位节拍改变一次,但无疑是循环的。
基于Matlab产生m序列

目录前言 (1)第一章设计任务 (2)1.2设计内容 (2)1.2设计要求 (2)1.3系统框图 (2)第二章m序列的分析 (4)2.1m序列的含义 (4)2.2m序列产生的原理 (5)2.2m序列的性质 (6)2.3自相关特性 (7)第三章m序列的设计 (8)3.1特征多项式确定 (8)3.2本原多项式的确定 (9)3.3m序列的发生 (10)第四章程序调试及结果分析 (11)4.1m序列的仿真结果及分析 (12)4.2该设计的序列相关性仿真结果及分析 (13)结论 (14)参考文献 (15)附录:程序代码 (16)前言扩频通信因其具有抗干扰、抗多径衰落、抗侦察等优点在通信领域中得到广泛应用。
扩频序列的设计和选择是扩频通信的关键技术,扩频序列性能的优劣在很大程度上决定了通信系统的多址干扰和符号间干扰的大小,从而直接影响到系统的性能。
因此,深入研究扩频序列的性质,构造设计具有良好相关性的扩频序列,来满足扩频系统的要求,是直接序列扩频系统的核心课题。
白噪声是一种随机过程,它有极其优良的相关特性。
但至今无法实现白噪声的放大、调制、检测、同步及控制等,而只能用类似于白噪声统计特性的伪随机序列来逼近它,并作为扩频系统的扩频码。
常见的伪随机序列有m 序列、GOLD 序列、M 序列、Walsh 序列等。
m 序列是目前研究最为彻底的伪随机序列,m 序列容易产生,有优良的自相关和互相关特性。
序列是伪随机序列的一种情况。
他可以在很多领域中都有重要应用。
由n级移位寄存器所能产生的周期最长的序列。
这种序列必须由非线性移位寄存器产生,并且周期为2n(n为移位寄存器的级数)。
通过对伪随机码中常用的m序列的结构和性质进行了分析,本文给出了基于MATLAB平台的m序列生成算法及代码伪随机序列分析。
第一章 设计任务1.2 设计内容掌握PN 序列的相关知识,掌握m 序列的产生原理及其在matlab 中的产生方法,对特定长度的m 序列,分析其性质,及其用来构造其它序列的方法;研究伪随机序列在跳频通信中的应用方法。
直接扩频Matlab仿真实验报告m序列

西 安 邮 电 大 学实验名称:基于Matlab 直接序列扩频系统性能仿真一、 实验目的通过仿真,进一步掌握m 序列产生方法及其性能,重点掌握直接序列扩频通信系统原理及性能。
二、 实验环境Win10 Matlab2015b三、 实验内容● 产生n=7时203对应的m 序列,并给出其NRZ 波形的自相关函数;● 选用相位差16个码片的两条序列兼做地址和扩频码,构造码分系统,仿真其通信原理;●仿真AWGN 和单频干扰下系统的BER 性能。
四、 实验原理扩频通信的可行性是从香农公式引申而来2log (1+S/N)C W其中,C 为系统信道容量(bit/s );W 为系统信道带宽;N 为噪声功率S 为信号功率。
由上式可以看出,可以从两种途径提高信道容量C ,即加大带宽W 或提高信噪比S/N 。
也就是说当信道容量C 一定时,信道带宽W 和信噪比S/N 是可以互换的,增加带宽可以降低对信噪比的要求,可以使有用信号的功率接近甚至湮没在噪声功率之下。
扩频通信就是通过增加带宽来换取较低的信噪比,这就是扩频通信的基本思想和理论依据。
当信噪比无法提高时,可以加大带宽,达到提高信道容量的目的。
直接序列扩频的原理是,在发射端把有用信号与伪随机序列相乘(或者模二加),使信号的频谱展宽到一个很宽的范围,然后用扩展后的序列去调制载波。
在接收端,把接收到的信号用相同的伪随机序列相乘,有用信号与伪随机码相关,相乘后恢复为扩频前的信号。
输入的数据信息为d(t)(设基带带宽为B 1),由伪随机编码(如m 序列)调制成基带带宽为B 2的宽带信号,由于扩频信号带宽大于数据信号带宽,所以信号扩展的带宽由伪随机码控制,而与数据信号无关。
经扩频调制的信号再经射频调制后即可发送。
直扩系统的原理框图接收端收到发送来的信号,经混频得到中频信号后,首先通过同步电路捕捉并跟踪发端伪码的准确相位,由此产生与发端伪码相位完全一致的伪随机码作为扩频解扩的本地扩频码,再与中频信号进行相关解扩,恢复出扩频前的窄带信号,而在解扩处理中,干扰和噪声与伪随机码不相关故被扩展,通过滤波使之受到抑制,这样就可在较高的解扩输出信噪比条件下进行信息解调解码,最终获得信息数据。
基于MATLAB的一种m序列设计与实现

i性进行验证,对工程技术人员有很大的参考价值。
关键词m序列MATLAB相关性平衡性
1 引言
扩频技术在导航、通信、测控等领域都得到广泛 应用,扩频系统的抗干扰、保密、多址、捕获与跟踪等 都与扩频码的设计密切相关,因此扩频码的生成和 性能评估是扩频系统的关键核心技术,决定了系统
的性能甚至成败。扩频系统对扩频序列的要求是:① 尖锐的自相关特性;②尽可能小的互相关值;③足 够多的序列数;④序列平衡性好;⑤工程上易实现。
technicians.
Key words m sequence,MATLAB,correlation,equilibrium
安德鲁喜获德国iCE动车组长期合同
,7康普公司全资子公司暨全球通信系统及设备领域领袖企业安德鲁无线通信公司,近日成功斩获一项德国ICE动 车组长期合同,将为其提供更先进的无线覆盖通信系统。
N=2^n一1:
register=[zeros(1,n一1)1];%初始状态 mseqfunc l(1)=register(n); %第一个输出码元
for ii=2:N
newregister(1)=mod(sum(fbeonneetion. 水register),2);
for ij=2:n, newregister(ij)=register(iji一1);
朋汲孔A 8的
一种m
计
王雪
(北京电子职业技术学院北京100016)
一
h…’‘~‘…r 11一…,^一^’…‘1…÷…H‘…h●'-……,……’。‘^n…‘~j●J一…、……_~一一…,……
}摘要扩频码设计是扩频系统的关键技术,利用计算机实现伪随机码的
;之路。本文基于MATLAB平台编制了一种m序列生成及相关性评估程序
m序列产生和性能的MATLAB仿真

电厂检修业务的进入战略 就进入新业务战略而言,业务拓展可以分为由
点到线、由线到网的进入策略,存在着购并外部现有 企业、从头开始自创新企业以及与外部业务结盟开 展新业务3种作法,简称购并、自创、结盟。作为电 厂检修业务,浙江火电有着很强的技术基础,人员可 通过短期培训获得,且具备一定的资金实力和融资 能力,自创新企业不存在障碍,但考虑市场资源的获 得,可以考虑与拥有检修市场的单位进行结盟,提高 市场竞争能力,扩大市场规模。因此,最好的进人方 式就是以自主创新为主,以结盟为辅。
尺m)。fⅣ
’
【一1
m=壳Ⅳ_j}=o,±l,±2,…。。
。
其他m
2
MA吼AB仿真
为在MATLAB中对m序列发生器和序列性能
进行仿真,可傲絮下定义,将移位寄存器状态设置成 向量mregister=[al,a2,03,…,aN],将连接向量设 为向量g=[g,,92,93,…,gN],由图l可得模2加法 器的输进等于反馈量back,也帮是a,的下一个德,
m=zeros(1,31);
mregister=minitial; n=0:k=0:
万 方数据
水利电力机械
2007年12月
5火电施工企业业务组合和选择发展战略
从上述分析中可以看出,浙江火电宜以火电施 工业为基础,大力发展钢结构加工业和电厂检修业 务,退出物流行业。
5.1
警誉芋磊薯君翥望盏霎{娄馨等嚣喾需嚣嘉兰主
n2=[0:n一1];
subplot(2,1,1) stem(nl,m) ylabel(’m sequence') subplot(2,1,2) plot(n2,rE) ylabel(’R(m)0
基于matlab的伪随机序列生成及相关函数仿真实验

武夷学院实验报告课程名称:_扩频通信技术及应用_ 项目名称:基于matlab的伪随机序列生成及相关函数仿真实验姓名:翁开传__专业:__通信工程___ 班级:__2__学号:_40__同组成员_无___1注:1、实验预习部分包括实验环境准备和实验所需知识点准备。
2、若是单人单组实验,同组成员填无。
2注:实验过程记录要包含实验目的、实验原理、实验步骤,页码不够可自行添加。
2)函数auto_corr()计算二进制序列seq的自相关函数,并画出函数曲线。
在函数内调用了生成m序列的函数ms_generator(*)生成的m序列seq,然后在计算。
function seq=ms_generator(registers,connections)registers=[0 0 0 0 1];connections=[1 0 0 1 0 1];n=length(connections);L=2^(n-1)-1;seq(1)=registers(n-1);for i=2:Lsum=0;for m=1:(n-1)sum=mod(sum+registers(m)*connections(m+1),2);endfor k=(n-1):-1:2registers(k)=registers(k-1);endregisters(1)=sum;seq(i)=registers(n-1);endfunction auto_correlation=auto_corr(seq)registers=[1 0 0 0 0 ];%设置初始状态connections=[1 0 1 0 0 1];%设置反馈逻辑seq=ms_generator(registers,connections);seq=-1*(seq*2-1);%负逻辑映射len=length(seq);temp=[seq seq];for i=0:len-1auto_correlation(i+1)=seq*(temp(i+1: i+len))';endauto_correlationplot(0:len-1,auto_correlation);运行的结果如下3)函数cross_corr()计算二进制序列seq1和seq2的互相关函数并画出曲线。
第11组基于Matlab的m序列仿真

《移动通信》课程项目报告题目:基于MATLAB的m序列仿真专业班级电子信息0121208班组长周易德组员叶子源组员胡楗指导教师李兆玉提交日期 2015年6月15日成绩课程设计任务分配表目录一、设计目的 0二、设计要求和设计指标 0三、设计内容 03.1 伪随机码 03.2 m序列的定义 (1)3.3 m序列的生产 (2)3.4 m序列的性质 (3)3.4.1平衡性 (3)3.4.2游程特性 (3)3.4.3自相关特性 (4)3.4.4功率谱与噪声类似 (5)3.4.5 互相关特性 (6)3.5 m序列的应用 (7)3.5.1 CDMA IS-95的前向信道 (9)3.5.1 CDMA IS-95的反向信道 (9)四、本设计改进建议 (9)五、总结 (9)六、主要参考文献 (10)附录1程序清单 (11)附录2 m序列本原多项式表 (16)一、设计目的我们想通过本次课程设计提高自己对移动通信的认识,熟练Matlab软件的使用,锻炼发现问题解决问题的能力,最终提示我们的自学能力。
具体来讲,本次课程设计将通过Matlab对m序列的生产方法和性质进行深刻的讨论,需要我们去了解m序列的生产和性质。
二、设计要求和设计指标设计要求:1.了解m序列的定义和其背后的意义2.通过Matlab生产m序列3.验证m序列主要性质4.讨论m序列的主要性质在扩频中的作用设计指标:1.能通过Matlab生产任意长度的m序列2.讨论任意长度m序列的均衡性、游程性、自相关特性、互相关特性等主要性质三、设计内容3.1 伪随机码伪随机(或伪噪声,Pseudorandom Noise,PN)码序列是一种常用的地址码,它具有与白噪声类似的自相关性质的0和1所构成的编码序列。
伪随机码序列具有类似于随机序列的基本特性,是一种貌似随机但实际上是有规律的周期性二进制序列。
如果发送数据序列经过完全随机性的加扰,接收机就无法恢复原始序列。
在实际系统中使用的是一个足够随机的序列,一方面这个随机序列对非目标接收机是不可识别的,另一方面目标接收机能够识别并且很容易同步地产生这个随机序列。
m序列产生和性能的MATLAB仿真

N 级移位 寄存器
0 引 言
有 很多应 用 ( 尤其 在扩 频系 统 中 ) 会用 到伪 随机 序列 , 随机 序 列 常 以 P Ped 伪 N( suo—N s ) 示 , oi 表 e 又 称伪 码 。伪码 的构 造和 相关 性 能直 接 影 响扩 频 频谱 的带 宽 、 系统容 量及 抗干 扰 能力 等 性 能 。因此 , 对伪 随机 序 列 有 以下要 求 : 伪码 的 比特 率 满 足 扩 展带 宽 要求 ; 有尖 锐 的 自相 关 性 ; 近似 噪声 的频 谱 特 性 。 有 常采用 的伪 码 序 列 有 I 列 、 o n序 G l 列 等 , 所 有 d序 在 伪码 序 列 中 , 序 列是 最重 要 、 n I 最基 本 的一种 伪 随机 序列 , 一种 Gl 列则 是 由 I 序列 引 出的 。 另 o d序 n
s r a p c r m e u n e pe d s et u s q e c .T e c a a tro p e d s e t m e u n eaf cs t ec mmu iain q ai .I l P h h r c e fs r a p c r s q e c f t h o u e n c t u l y n al N o t
图 1 P 序 列 发 生 器 N
P N序列 发生 器 由 Ⅳ级移 位 寄存 器 、 模二 加 法器 和连接 向量 3个基 本 部分 组 成 。这个 连 接 向量具 体 定 义 了移 位 寄存 器 各 级 与 模 二 加 法器 之 间 的连 接 。
中图 分 类 号 :P 3 , 1 T 32 1 文献标识码 : A 文 章 编 号 :0 6— 4 6 2 0 )2—07 0 10 6 4 (0 7 1 10— 2
m序列伪随机码产生及应用仿真matlab

序列伪随机码产生及应用仿真matlab一、概述随机序列是一种具有随机性质的数字序列,可用于信息传输、通信系统、密码学、雷达等领域。
伪随机序列是一种经过数学算法产生的序列,其具有类似与随机序列的统计特性,但实际上是确定性的。
在通信系统中,伪随机序列广泛应用于码分多址技术、扩频通信、混沌通信等领域。
本文将介绍伪随机码的产生原理,并使用matlab进行仿真实现,以加深对该技术的理解。
二、伪随机码的产生原理伪随机码的产生主要包括线性反馈移位寄存器(LFSR)、加法(XOR)运算和乘法(AND)运算等步骤。
下面以LFSR为例,介绍伪随机码的产生原理。
1. LFSR原理LFSR是一种利用移位寄存器和反馈逻辑电路构成的伪随机码产生器。
在LFSR中,存在一个移位寄存器和一个反馈逻辑电路。
移位寄存器中存储了若干比特的信息,经过时钟信号的控制完成信息的移位操作。
而反馈逻辑电路则根据寄存器中的信息产生反馈信号,从而实现伪随机序列的产生。
2. 伪随机码的产生过程(1)初始化LFSR。
将移位寄存器中的初始状态设置为一个非零的值。
(2)循环移位寄存器。
根据时钟信号的控制,移位寄存器中的信息进行移位操作。
(3)根据反馈逻辑电路的输出,生成伪随机序列。
通过反馈逻辑电路生成的反馈信号,即为伪随机序列的一部分。
三、matlab仿真实现matlab是一种功能强大的科学计算软件,具有丰富的绘图和仿真功能。
下面将使用matlab进行伪随机码的产生和仿真实现。
1. 产生伪随机码在matlab中,可以使用shiftregister函数实现LFSR的移位寄存器功能。
结合matlab的位运算功能,可以方便地实现伪随机码的产生。
以下是一个简单的matlab代码示例:```matlab定义LFSR的初始状态state = [1 0 1 0 1];定义LFSR的反馈多项式polynomial = [5 2];产生伪随机码for i = 1:10获取LFSR的输出output = state(end);计算新的状态new_state = mod(sum(state(polynomial)), 2);更新状态state = [new_state, state(1:end-1)];显示输出disp(output);end```上述代码中,通过定义LFSR的初始状态和反馈多项式,使用循环产生了10个伪随机码的输出。
m序列的生成与仿真

M序列的生成原理与仿真1.1 m序列的生成r 级非退化的移位寄存器的组成如图1 所示,移位时钟源的频率为Rc。
r 级线性移位寄存器的反馈逻辑可用二元域GF(2)上的r 次多项式表示(1)图(1)r 级线性移位寄存器式(1)称为线性移位寄存器的特征多项式,其给出的表示反馈网络的而逻辑关系式是现行的。
因此成为线性移位寄存器。
对于动态线性移位寄存器,其反馈逻辑也可以用线性移位寄存器的递归关系式来表示(2)以式(1)为特征多项式的r 级线性反馈移位寄存器所产生的序列,其周期N≤2r−1。
假设以GF(2)域上r次多项式(1)为特征多项式的r级线性移位寄存器所产生的非零序列{ a i }的周期为N =2r−1,称序列为{ a i }是最大周期的r 级线性移位寄存器序列,简称m序列。
构造一个产生m 序列的线性移位寄存器,首先要确定本原多项式。
本原多项式确定后,根据本原多项式可构造出m 序列移位寄存器的结构逻辑图。
仿真时以n=6的6级移位寄存器为例,产生本源多项式的方法:n=6; %以6级寄存器为例,connections=gfprimfd(n,'all');f1=connections(4,:); %取一组本原多项式序列根据本院多项式确定的反馈系数做出反馈移位寄存器如图(2)所示图(2)m 序列发生器1.2 m 序列自相关函数1.2.1周期自相关函数编写周期自相关函数和非周期自相关函数,实验结果如下图(2)和(3)所示:图(2)m 序列周期自相关函数结论:周期自相关函数R (k )={63 k =0−1 otℎersm 序列周期自相关函数1.2.2非周期自相关函数图(3) m 序列非周期自相关函数1.3 m 序列的互相关函数选用的两个m 序列为一对优选对,以211作为基准本原多项式(反馈系数10001001),217作为配对本原多项式(反馈系数10001111),生成两个m 序列,求出互相关函数如图(4)和(5):、图(4)m 序列互相关函数结论:互相关函数的取值{-1,-17,15}m 序列非周期自相关函数m 序列周期互相关函数m序列非周期互相关函数图(5)m序列非周期互相关函数1.4 附:matlab代码clear;clc;%%------生成m序列-----%%n=6; %以6级寄存器为例,connections=gfprimfd(n,'all');f1=connections(4,:); %取一组本原多项式序列registers1=[1 0 0 0 0 0 ];%给定寄存器的初始状态L=2^n-1; %周期长度sum1=0;for k=1:Lseq(k)=registers1(n); %m序列for j=1:n %进行模2加sum1=sum1+f1(j+1)*registers1(j); %各级寄存器送参与模2加的值sum1=mod(sum1,2);endfor t=n:-1:2 %寄存器移位registers1(t)=registers1(t-1);endregisters1(1)=sum1;sum1=0;end% %%----------------------自相关函数-------------------------%%% %-------非周期自相关函数--------%%a=1-2*seq;b=a;for i=1:LR(i)=sum(a.*b)b=[0 b(1:62)]endplot(R)title('m序列非周期自相关函数');% %-------周期自相关函数------%%% a=1-2*seq;% b=a;% for i=1:L% R(i)=sum(a.*b)% b=[b(63) b(1:62)]% end% plot(R);% title('m序列周期自相关函数');%%-------利用公式编写自相关函数验证---------------%% % a=seq1;% b=[a(1,63),a(1,1:62)];% L=length(b);% n=400;% x=1:n;% for k=1:n% c=xor(a,b);% D=sum(c);% A=L-D;% R(k)=(A-D)/(A+D);% b=[b(L),b(1:L-1)];% end% plot(x,R);% title('gold序列的自相关函数');% xlabel('τ');% ylabel('R(τ)');% grid;。
m序列的仿真验证

m序列的仿真验证一:实验目的:利用matlab验证m序列的产生方法及其自相关特性二:实验要求:设m序列的生成多项式为g(x)=1+x3+ x4,求(1)m序列的输出及其自相关序列;(2)设脉冲成形为p(t)= 1 0<t<T s0 其他画出其m序列信号的自相关函数;(3)设脉冲波形为升余弦成形(α=0),画出其m序列信号的自相关函数。
三:实验原理:m序列即为maximal length linear feedback shift register sequence 它具有类似与随机噪声的某些统计特性,有是可以重复产生的。
四:实验源码:clear all;close all;g=19;state=8;L=1000;%m序列产生N=15;mq=mgen(g,state,L);%求序列自相关ms=conv(1-2*mq,1-2*mq(15:-1:1))/N;figure(1)subplot(222)stem(ms(15:end));axis([0 63 -0.3 1.2]);title('m序列自相关')%m序列构成的信号(矩形脉冲)N_sample=8;Tc=1;dt=Tc/N_sample;t=0:dt:Tc*L-dt;gt=ones(1,N_sample);mt=sigexpand(1-2*mq,N_sample);mt=conv(mt,gt);figure(1)subplot(221);plot(t,mt(1:length(t)));axis([0 63 -1.2 1.2]);title('m序列矩形形成信号')st=sigexpand(1-2*mq(1:15),N_sample);s=conv(st,gt);st=s(1:length(st));rt1=conv(mt,st(end:-1:1))/(N*N_sample);subplot(223);plot(t,rt1(length(st):length(st)+length(t)-1));axis([0 63 -1.2 1.2]);title('m序列矩形形成信号的自相关');xlabel('t');%sinc脉冲Tc=1;dt=Tc/N_sample;t=-20:dt:20;gt=sinc(t/Tc);mt=sigexpand(1-2*mq,N_sample);mt=conv(mt,gt);st2=sigexpand(1-2*mq(1:15),N_sample);s2=conv(st2,gt);st2=s2;rt2=conv(mt,st2(end:-1:1))/(N*N_sample);subplot(224);t1=-55+dt:dt:Tc*L-dt;%plot(t,mt(1:length(t)));plot(t1,rt2(1:length(t1)));axis([0 63 -0.5 1.2]);title('m序列sinc形成信号的自相关');xlabel('t');调用函数:sigexpand(d,M)function[out]=sigexpand(d,M)N=length(d);out=zeros(M,N);out(1,:)=d;out=reshape(out,1,M*N);五:实验结果及分析:m序列的输出波形在每次运行程序后不尽相同,这是由m序列特性决定的,它是一种伪随机序列。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
会融会贯通。Q
【参考文献】 f11申晓.回凋成员函数.电脑编程技巧与维护,2005,(01). [2】王铬.回调函数在软件设计中的应用.河南教育学院学报:自然科学版,2003
(3).
具有良好的白相关和互相关特性。
Manab是Mafia W诎s公司于1982年推出的一套高性能的数值
计算和可视化软件,集数值分析、矩阵运算、信号处理和图形显示于一
体。下面用Matlab工具来产生和分析In序列的自相关和互相关特性。
2.Matlab生成m序列
本文要产生的是符合第三代短波通信网络协议中数据传输标准
Performance
【参考文献】 [1]曾兴雯,刘乃安.扩展频谱通信及其多址技术[MI.西安:西安电子科技大学出 版社.2004.
[2]Roger L.Peterson[美].Introduction to Spread Speetrtum Communications[M].北
作者简介:周洪霞(1980一),女,硕士,海军航空工程学院青岛分院讲师,研 究方向为数字通信。短波数据传输。
i=l;
for k=1:(2^length(reg))
%计算一个周期的rfl序列输出
reg_all(k,:)=”g;
%保存所有移位寄存器的状态
a_n=reg(1);
%最高位
scale=coeff(2:length(coeff)一1);
图2 m序列相关特性
(下转第97页)
万方数据
103
科技信息
。机械与电子o
科技信息
。机械与电子o
SCⅢNCE&TECI矾0LOGY INFORMATION
2009年第33期
基于Matlab的m序列生成及性能仿真
周洪霞刘水唐金元李洪烈 (中国人民解放军海军航空工程学院青岛分院 山东 青岛266041)
【摘要】扩频通信目前在通信领域中应用非常广泛,扩频序列的设计和选择是扩频通信的关键技术,m序列是最常用的扩频序列。该文首 先简单介绍了133序列的原理、性能和构造方法,接着在Madab中用M语言编程实现它们的产生和相关性能分析。仿真结果表明m序列满足扩 频序列设计要求,具有广泛应用前景。
4.结束语
经常听到有人说设计模式之类的书看来看去,却只能依葫芦画 瓢。问题在这些书教人的都是抽象过后的经验,而且是高度抽象过后, 普适用于许多情况下的示例代码,抽象是一个过程,由简单到复杂,慢 慢提炼。这个过程也许还是一个历史过程,如果不了解隐藏在背后的 一些过程、理论或者思维方式就很难理解这些代码的用意,所以到了 实际工作中,也不能活学活用,只能生搬硬套。
训。e
【参考文献】 [1】张祉佑,石秉三.低温技术原理与装置[M】.北京:机械工业出版社,1987. [2]蒋子刚.分析测试中的数理统计与质量保证[MI.南京:华东化工学院出版社,
1991.
[3]陈允恺.,J、型空气分离设备【M】.北京:机械工业出版社,1996. [4]殷合香,王炳忠.KL一15型航空气体分离设备[M].青岛:海军航空工程学院青 岛分院出版社,1998. [5]王炳忠.KZO一60型航空气体分离设备【M].青岛:海军航空工程学院青岛分院 出版社,2002.
制转换为8进制
PN_mod8=reshape(PN—mod8,1,512); end
location=1; k=1: for i=1:length(reg_a11)
if reg__test==reg_all(i,:) location(k)=i; k=k+1:
%寻找初始状态,以验证其周期
end
end
【关键词】112序列;Madab;相关性
0.引言
扩频通信因其具有抗干扰、抗多径衰落、抗侦察等优点在通信领
域中得到广泛应用。扩频序列的设计和选择是扩频通信的关键技术, 扩频序列性能的优劣在很大程度上决定了通信系统的多址干扰和符
号间干扰的大小,从而直接影响到系统的性能。因此,深入研究扩频序
ห้องสมุดไป่ตู้
列的性质.构造设计具有良好相关性的扩频序列,来满足扩频系统的 要求,是直接序列扩频系统的核心课题。
合伪随机序列的基本性质,可以满足扩频序列的设计需求。
基于以上m序列移位寄存器结构,可在Matlab中用M语言编程
产生113序列的程序代码:
reg=[1 0 1 1 1 0 1 0 1 1 0 1];
%从高位到低位
re。gLtest=reg;
eoeff=[1 0 0 0 0 0 1 0 1 0 0 1 11;%高位到低位
[责任编辑:张新雷]
万方数据 97
[责任编辑:翟成梁]
图3制冷机电路原理
(上接第80页) def dir=”D:\\src” new File(dir).eachFile f file一> printlnmle.getNameO) ) 这段代码的作用是遍历一个目录,将此目录下的文件名都打印出
来,其中花括号括起来的部分就是块,eachFile{…1的意思在每个文件 上执行吃代码块,非常直观易用。关于块就不多说了,只说一点,块的 形式和作用类似于模板模式,但是在脚本语言中的主要目的是提高代 码的直观程度和易用性,模板模式的高层次的应用如作为框架基石估 计不是它考虑的范畴,因为脚本就是脚本,一般应用于小型软件,或者 起辅助作用.并且其动态性不但使得大部分设计模式的存在价值大打 折扣,而且如果应用于大规模软件的话,开发模式可能也会作巨大的 调整,这就不在本文的范畴之内了。
%计算In序列自相关性
subplot(2,1,1);
plot(j,temp/length(n)); tide(7自相关性,);
axis([一1000 1000—0.1 1.2]);
酣d on; 同理可计算m序列互相关性程序。
运行程序后可返回D1序列相关函数如图2所示。
由图2可以看出,m序列具有良好的自相关特性和互相关性,符
白噪声是一种随机过程.它有极其优良的相关特性。但至今无法
实现白噪声的放大、调制、检测、同步及控制等.而只能用类似于白噪
声统计特性的伪随机序列来逼近它,并作为扩频系统的扩频码。常见 的伪随机序列有m序列、GOLD序列、M序列、Walsh序列等。m序列
是目前研究最为彻底的伪随机序列,iil序列容易产生。有优良的自相
SCⅢNCE&TECHNOLOGY INFORMATION
2009年第33期
器的一对常开触头串联在操作电路中,代替组合开关的一组触头。制 冷机的水量和油压正常与否经信号灯指示。电路原理如图3所示。
制冷机电路中交流接触器1C。、lC2、1C3的型号是CJO一75TH,线 圈电压380伏;lhS,。表示4只水量讯号装置的行程开关串联在一起; lhu代表油压讯号装置的行程开关,1hi代表电触点压力表的触头; 1JO。和1JO:为两个中间继电器,型号是JZ7—44TH,线圈电压为交流 220伏。
[责任编辑:张慧]
f上接第103页)4.结束语 In序列是目前应用最广泛的伪随机序列,本文通过利用MaⅡab工 具对m序列进行了生成及相关性分析,仿真结果表明,该方法是可行
霪≤譬嚣构造出合适的扩频序列’在军事通信等领域具有广 的。分析得出m序列具有良好的相关特性,符合伪随机序列的基本性
京:电子工业出版社.2006.
3.m序列相关性能分析
对以上产生的In序列进行相关性分析,Maflab程序如下:
for j=0:length(m)-I
%m输入以上程序所产生的in序列
temp0+1)=sum(m.+nLl(i+lj+1en殍h(m)));
end
j=-length(m)+1:length(m)-1; temp=[fliplr(temp(2:length(m))),temp];
[3]John G.Proakis.现代通信系统(MATLAB版)fM].北京:电子工业出版社,2005. [4]陈顺林,杨万全,等.ITI序列在移动通信扰码中的应用及仿真叨.现代电子技 术.2002.
[5]MIL—STD一188—1lOB Military Standard Interoperability and Standards for Data MODEM.Department of Defense,Apr.2000.
在电动机I D定子绕组由Y一△换接时(1C,主触头断开,1C:主触
头闭合),由于1C:线圈通电,1C:的辅助常闭触头(119~121)断开,如 果此时制冷机油压已经达到0.16MPa以上,行程开关lhu闭合,Y一△ 换接成功,制冷机投入正常运转;如果在转换过程油压尚未达到要求, 则由于1JO,线圈断电,操作电路被切断而起动失败。制冷机正常运转 时,表示油压正常的黄色信号灯ler亮。
制冷机工作时,合上自动空气开关1DZ和组合开关lK,同时要起 动水泵.在制冷机4个冷却器的水量达到要求后,水量讯号装置行程 开关lhS,。常开触头闭合,使中间继电器1JO。线圈通电工作,1JO。的 一对常开触(113-109)闭合后,操作电路才接通电源。1JO。的另一对常 开触头(1441~127)闭合,白色信号灯亮,表示冷却系统水量正常,制冷 机可以起动。
存器的值
reg=[reg_l,a_n];
%更新的移位寄存器的值
if mod(k,8)==O
PN一8(i,:)=reg(1ength re曲一2:length(reg));
i-i+1:
end
end
for i=l:length(PN一8) PN_mod8(i,1)=PN一8(i,1)44+PN一8(i,2)42+PN一8(i,3);%二进
各占一半。
e)自相关函数近似于冲激函数8(0的形状,可以表示为:
f1,=O
pq)21土一,i:1“2一,m_1