移动通信中m伪随机序列的产生 2.docx

上传人:b****3 文档编号:3452099 上传时间:2022-11-23 格式:DOCX 页数:18 大小:200.86KB
下载 相关 举报
移动通信中m伪随机序列的产生 2.docx_第1页
第1页 / 共18页
移动通信中m伪随机序列的产生 2.docx_第2页
第2页 / 共18页
移动通信中m伪随机序列的产生 2.docx_第3页
第3页 / 共18页
移动通信中m伪随机序列的产生 2.docx_第4页
第4页 / 共18页
移动通信中m伪随机序列的产生 2.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

移动通信中m伪随机序列的产生 2.docx

《移动通信中m伪随机序列的产生 2.docx》由会员分享,可在线阅读,更多相关《移动通信中m伪随机序列的产生 2.docx(18页珍藏版)》请在冰豆网上搜索。

移动通信中m伪随机序列的产生 2.docx

移动通信中m伪随机序列的产生2

*******************

实践教学

*******************

 

兰州理工大学

计算机与通信学院

 

2011年秋季学期

 

移动通信课程设计

 

题目:

移动通信中m伪随机序列的产生

专业班级:

姓名:

学号:

指导教师:

成绩:

 

摘要

本文简单介绍了M伪随机序列及移动通信中M伪随机序列的产生,并分析其性能。

运用MATLAB软件产生了11阶M伪随机序列,主要分析了其相关性。

关键词:

移动通信;M伪随机序列;MATLAB;

前言

互联网的飞速发展极大地丰富了人们的生活,但是由于通信中采用的一般都是采用非屏蔽双绞线,随着技术的发展,入侵者完全可以在非接触的情况下通过双绞线的电磁辐射获得通信中的信息。

这致使网络操作系统的权限管理和安全管理制度都将失效。

在移动通信中,M伪随机序列对于扩展频谱起到了重要的作用。

M序列是伪随机序列的一种。

利用移位寄存器产生的M序列具有均衡性、游程分布、移位相加性、周期性和伪随机性,并且其自相关性好,容易复制和产生。

再利用MATLAB实现扩展频谱通信的仿真。

 

目录

摘要1

前言2

第1章移动通信及其中的伪随机序列1

第2章伪随机序列2

2.1伪随机序列的概念2

2.2M序列的产生2

2.3M序列发生器4

第3章MATLAB语言6

3.1MATLAB简介6

3.2MATLAB的主要功能6

3.3MATLAB的优势6

3.4MATLAB工具箱8

第4章11阶M序列及其结果分析9

4.1反馈连接设计9

4.2反馈连接程序算法设计10

4.2.1程序算法设计10

4.2.2程序清单10

4.2.3程序运行结果及仿真分析12

第5章课程设计总结16

参考文献17

 

第1章移动通信及其中的伪随机序列

移动通信一般是指通信双方至少有一方在移动的情况下进行的信息传输和交换。

同时,它也包括通信用户的位置存在变化,但通信过程中用户不处于运行状态的情况。

现代的移动通信技术是一门复杂的前沿技术,其中包括了无线通信和有线通信的最新技术成果,同时也包含网络技术和计算机技术的许多成果。

移动通信的特点是:

(1)移动通信必须利用无线电波进行信息传输。

(2)移动通信是在复杂的干扰环境中运行的。

(3)随着移动通信业务量的需求与日俱增,移动通信可以利用的频谱资源非常有限。

(4)移动通信系统的网络结构多种多样,网络管理和控制必须有效。

(5)移动通信设备必须在移动环境中使用。

移动通信按其多址方式可以分为频分多址(FDMA),时分多址(TDMA),码分多址(CDMA)等。

码分多址给每一个用户分配一个唯一的码序列(扩频码),并用它对承载信息的信号进行编码。

知道该码序列的用户的接收机对收到的信号进行解码,并恢复出原始数据,这是因为该用户码序列与其他用户码序列的互相关是很小的。

由于码序列的带宽远大于所承载信息信号的带宽,编码过程扩展了信号的频谱,所以也成为扩频调制,其所产生的信号也成为扩频信号。

码分多址通常也用扩频多址(SSMA)来表征。

对所传信号频谱的扩展给予CDMA以多址能力。

因此,对扩频信号的产生及其性能的了解就十分重要。

扩频调制技术必须满足两个基本要求:

(1)所传信息的带宽必须远大于信息的带宽;

(2)所产生的射频信号的带宽与所传信息无关。

所传信号的带宽与信息带宽之比称为扩频系统的处理增益。

接收机采用相同的扩频码与收到的信号进行相关运算恢复出所携带的原始信息。

由于扩频信号扩展了信号的频谱所以它具有一系列不同于窄带信号的性能:

多址能力、抗多径干扰的能力、具有隐私功能、抗认为干扰的能力、具有低载获概率的性能、具有抗窄带干扰的能力。

CDMA按照其采用的扩频调制方式的不同,可以分为直接序列扩频(DS)、跳频扩频(FH)、跳时扩频(TH)和复合式扩频。

所谓跳频,简单来讲,就是用一定的码序列进行选择的多频率频移键控。

具体来讲,跳频就是给载波分配一个固定的宽频段并且把这个宽频段分成若干个频率间隙(称为频道或频隙),然后用扩频码序列去进行频移键控调制,使载波频率在这个固定的频段中不断地发生跳变。

由于这个跳变的频段范围远大于要传送信息所占的频谱宽度,故跳频技术也属于扩频。

第2章伪随机序列

2.1伪随机序列的概念

Shannon编码定理指出:

只要信息速率Ra小雨信道容量C,则总可以找到某种编码方法,使在码字相当长的条件下,能够几乎无差错的从到高斯白噪声干扰的信号中复制出原发送信息。

若要复制出原发送信息,需要满足两个条件:

一是,Ra<=C;二是,编码字足够长。

Shannon在证明编码定理时提出,用具有白噪声统计特性的信号来编码。

白噪声是一种随机过程,它的瞬时值服从正态分布,功率谱在很宽的频带内都是均匀的,它有极其优良的相关特性。

现存在的问题是,至今无法实现对白噪声的放大、调制、检测、同步及控制等,所以,只能用具有类似于带限白噪声统计特性的伪随机码来逼近白噪声,也就是暂时代替白噪声。

伪随机序列是具有某种随即特性的确定的序列。

有移位寄存器产生,根据序列的产生来进行判断,具有随机特性和接近于白噪声的相关函数,可确定性和可重复性。

这些特性是得伪随机序列得到了广泛的应用,特别是CDMA系统中作为扩频码已经成为该技术中的关键问题。

2.2M序列的产生

(1)M序列的产生原理

图2.1示出的是由n级移位寄存器构成的码序列发生器。

寄存器的状态决定于时钟控制下输入的信息(“0”或“1”),例如第i级移位寄存器状态决定于前一时钟脉冲后的第i-1级移位寄存器的状态。

图中C0,C1……Cn均为反馈线,其中C0=C1=1,表示反馈连接。

因为M序列是由循环序列发生器产生的,因此C0和Cn肯定为1,即参与反馈,而反馈系数C0,C1……Cn若为1,参与反馈;若为0,则表示断开反馈线,即开路,无反馈连线。

一个线性反馈移位寄存器能否产生M序列,决定于它的反馈Ci(C0,C1……Cn的总称)。

表示出了部分M序列的反馈系数。

最长线性寄存器序列可以由反馈逻辑的递推关系表示。

序列多项式是一个以二元有限域的元素an(n=0,1,……)为系数的多项式

(2.1)

称之为序列的生成多项式,简称序列多项式。

对于一个反馈移位寄存器来说,反馈逻辑一确定,产生的序列就确定了。

那么,序列与反馈逻辑之间有什么关系呢?

由2.1可以看出,移位寄存器第一位的下一时刻的状态是由此

 

 

图2.1N级循环序列发生器模型

时的r个移位寄存器的状态反馈后共同确定的,即有

(2.2)

由此可见,序列满足线性递归关系。

把an移到等式的右边并考虑到C0=1,则式可变为

(2.3)

(2)M序列的基本性质

均衡性

在M序列的一个周期内,“1”的数目比“0”的数目多一个。

该性质可以减小调制后的载漏,使得信号更加隐蔽,更能满足系统要求。

游程分布

把一个序列中取值相同的那些相继元素合称一个游程。

在一个游程中,元素的个数称为游程长度。

移位相加性

序列中,经过m次延迟移位产生的另一不同序列,二者模2加,得到的仍然是原序列的某次迟延移位序列。

周期性

M序列的周期为反馈移位寄存器的级数。

伪随机性

对一正态分布白噪声取样,若取样值为正,记为“+”;若取样值为负,记为“-”,则将每次取样所得极性排成序列。

可以写为

… + +—+——+———+—+——+ + + —— …

这是一个随机序列,具有如下基本性质:

序列中“+”和“—”的出现概率相等。

序列中长度为1的游程约占

,长度为2的游程约占

长度为3的游程约占

一般来说,长度为k的游程越占

,在长度为k的游程中,“+”和“—”的游程约各占一半。

由于白噪声的功率谱为常数,自相关函数为以冲激函数。

2.3M序列发生器

产生M序列需要如下条件:

(1)r级移位寄存器产生的码,周期,其特征多项式必然是不可约的。

(2)所有的次数的不可约多项式

必然能除尽。

(3)如果

是一个素数,则所有r次不可约多项式产生的线性移位寄存器序列,一定是M序列,产生这个M序列的不可约多项式称为本源多项式。

(4)除了第r阶以外,如果还有偶数个抽头的反馈结构,则产生的序列就不是最长线性移位寄存器序列。

M序列发生器的结构一般有两种形式,简单型(SSRG)和模件抽头型(MSRG)。

SSRG

SSRG的结构如图2.2所示,这种结构的反馈逻辑由特征多项式确定,这种结构的缺点在于反馈支路中的器件时延是叠加的,即等于所有支路中所有的模2加法器时延的总和。

因此限制了伪随机序列的工作速度。

提高SSRG工作速率的办法之一是利用抽头数目少的M序列,这样,还可简化序列产生器的结构。

MSRG

提高伪随机序列工作效率的另一个办法,就是采用MSRG型结构,如图2.2示。

这种结构的特点是:

在它的每一级触发器和他相邻一级的触发器之间接入一个模2加法器,反馈路径上无任何延时部件。

这种类型的序列发生器已被模件化。

这种结构的反馈总延时,只是一个模2加法器的延时时间,故能提高发生器的工作速度,SSRG型序列产生器的最高工作频率为:

(2.4)

式中:

为一级移位寄存器的传输时延;

为反馈网络中模2加时延的总和。

MSRG型序列产生器的最高工作频率为

MSRG型序列产生器的最高工作频率为:

(2.5)

式中:

为一级模2加法器的传输时延。

 

图2.2SSRG结构

 

图2.3MSRG结构

第3章MATLAB语言

3.1MATLAB简介

MATLAB是MATrixLABoratory的缩写,是一款由美国MathWorks公司出品的商业数学软件。

MATLAB是一种用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境。

除了矩阵运算、绘制函数/数据图像等常用功能外,MATLAB还可以用来创建用户界面及与调用其它语言(包括C,C++和FORTRAN)编写的程序。

尽管MATLAB主要用于数值运算,但利用为数众多的附加工具箱(Toolbox)它也适合不同领域的应用,例如控制系统设计与分析、图像处理、信号处理与通讯、金融建模和分析等。

另外还有一个配套软件包Simulink,提供了一个可视化开发环境,常用于系统模拟、动态/嵌入式系统开发等方面。

3.2MATLAB的主要功能

可用于技术计算的高级语言

可对代码、文件和数据进行管理的开发环境

可以按迭代的方式探查、设计及求解问题的交互式工具

可用于线性代数、统计、傅立叶分析、筛选、优化以及数值积分等的数学函数

可用于可视化数据的二维和三维图形函数

可用于构建自定义的图形用户界面的各种工具

可将基于MATLAB的算法与外部应用程序和语言(如C、C++、Fortran、Java、COM以及MicrosoftExcel)集成的各种函数

3.3MATLAB的优势

(1)友好的工作平台和编程环境

MATLAB由一系列工具组成。

这些工具方便用户使用MATLAB的函数和文件,其中许多工具采用的是图形用户界面。

包括MATLAB桌面和命令窗口、历史命令窗口、编辑器和调试器、路径搜索和用于用户浏览帮助、工作空间、文件的浏览器。

随着MATLAB的商业化以及软件本身的不断升级,MATLAB的用户界面也越来越精致,更加接近Windows的标准界面,人机交互性更强,操作更简单。

而且新版本的MATLAB提供了完整的联机查询、帮助系统,极大的方便了用户的使用。

简单的编程环境提供了比较完备的调试系统,程序不必经过编译就可以直接运接运行,而且能够及时地报告出现的错误及进行出错原因分析。

(2)简单易用的程序语言

MATLAB一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。

用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。

新版本的MATLAB语言是基于最为流行的C++语言基础上的,因此语法特征与C++语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式。

使之更利于非计算机专业的科技人员使用。

而且这种语言可移植性好、可拓展性极强,这也是MATLAB能够深入到科学研究及工程计算各个领域的重要原因。

(3)强大的科学计算机数据处理能力

MATLAB是一个包含大量计算算法的集合。

其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。

函数中所使用的算法都是科研和工程计算中的最新研究成果,而前经过了各种优化和容错处理。

在通常情况下,可以用它来代替底层编程语言,如C和C++。

在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。

MATLAB的这些函数集包括从最简单最基本的函数到诸如矩阵,特征向量、快速傅立叶变换的复杂函数。

函数所能解决的问题其大致包括矩阵运算和线性方程组的求解、微分方程及偏微分方程的组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。

(4)出色的图形处理功能

MATLAB自产生之日起就具有方便的数据可视化功能,以将向量和矩阵用图形表现出来,并且可以对图形进行标注和打印。

高层次的作图包括二维和三维的可视化、图象处理、动画和表达式作图。

可用于科学计算和工程绘图。

新版本的MATLAB对整个图形处理功能作了很大的改进和完善,使它不仅在一般数据可视化软件都具有的功能(例如二维曲线和三维曲面的绘制和处理等)方面更加完善,而且对于一些其他软件所没有的功能(例如图形的光照处理、色度处理以及四维数据的表现等),MATLAB同样表现了出色的处理能力。

同时对一些特殊的可视化要求,例如图形对话等,MATLAB也有相应的功能函数,保证了用户不同层次的要求。

另外新版本的MATLAB还着重在图形用户界面(GUI)的制作上作了很大的改善,对这方面有特殊要求的用户也可以得到满足。

(5)应用广泛的模块集合工具箱MATLAB对许多专门的领域都开发了功能强大的模块集和工具箱。

一般来说,它们都是由特定领域的专家开发的,用户可以直接使用工具箱学习、应用和评估不同的方法而不需要自己编写代码。

目前,MATLAB已经把工具箱延伸到了科学研究和工程应用的诸多领域,诸如数据采集、数据库接口、概率统计、样条拟合、优化算法、偏微分方程求解、神经网络、小波分析、信号处理、图像处理、系统辨识、控制系统设计、LMI控制、鲁棒控制、模型预测、模糊逻辑、金融分析、地图工具、非线性控制设计、实时快速原型及半物理仿真、嵌入式系统开发、定点仿真、DSP与通讯、电力系统仿真等,都在工具箱(Toolbox)家族中有了自己的一席之地。

(6)实用的程序接口和发布平台

新版本的MATLAB可以利用MATLAB编译器和C/C++数学库和图形库,将自己MATLAB程序自动转换为独立于MATLAB运行的C和C++代码。

允许用户编写可以和MATLAB进行交互的C或C++语言程序。

另外,MATLAB网页服务程序还容许在Web应用中使用自己MATLAB数学和图形程序。

MATLAB的一个重要特色就是具有一套程序扩展系统和一组称之为工具箱的特殊应用子程序。

工具箱是MATLAB函数的子程序库,每一个工具箱都是为某一类学科专业和应用而定制的,主要包括信号处理、控制系统、神经网络、模糊逻辑、小波分析和系统仿真等方面的应用。

(7)应用软件开发(包括用户界面)

在开发环境中,使用户更方便地控制多个文件和图形窗口;在编程方面支持了函数嵌套,有条件中断等;在图形化方面,有了更强大的图形标注和处理功能,包括对性对起连接注释等;在输入输出方面,可以直接向Excel和HDF5进行连接。

3.4MATLAB工具箱

MATLAB的一个重要特点是可扩展性。

作为Simulink和其它所有MathWorks产品的基础,MATLAB可以通过附加的工具箱(Toolbox)进行功能扩展,每一个工具箱就是实现特定功能的函数的集合。

MathWorks提供的工具箱分以下几大类:

数学和优化

统计和数据分析

控制系统设计和分析

信号处理和通讯

图像处理

测试和测量

金融建模和分析

应用程序部署

数据库连接和报表

分布式计算

这些工具箱大多是用开放式的MATLAB语言写成,用户不但可以查看源代码,还可以可根据自己的需要进行修改以及创建自定义函数。

此外,常有用户在MATLABCentral:

FileExchange发布自己编写的MATLAB程序或工具箱,供他人自由下载使用。

第4章11阶M序列及其结果分析

4.1反馈连接设计

依据以下m序列产生的条件:

r级移位寄存器产生的码,周期n=2r-1,其特征多项式必然是不可约的,即不能再因式分解而产生最长序列。

因此,反馈抽头不能随便决定,否则将会产生短码。

所有的次数r>1的不可约多项式f(x)必然能除尽1+Xn,因为aN(x)=(1+xn)/f(x)。

如果2r-1是一个素数,则所有r次不可约多项式产生的线性移位寄存器序列,一定是m序列,产生这个m序列的不可约多项式称为本原多项式。

除了第r阶以外,如果还有偶数个抽头的反馈结构,则产生的序列就不是最长线性移位寄存器序列。

一个线性反馈移位寄存器能否产生m序列,决定于它的电路反馈系数ci,也就是它的递归关系式。

不同的反馈系数,产生不同的移位寄存器序列。

r≥9时,由于m序列的条数很多,不可能在此一一列出,故只列出了一部分,反馈系数Ci是以八进制有示的。

使用该表时,首先将每位八进制数写成二进制形式。

最左边的1就是C0(C0恒为1),从此向右,依次用二进制数表示C1,C2,……Cn.有了C1,C2,……Cn值后,就可构成M序列发生器。

在11阶m序列中即n=11,本设计选取反馈系数为(4005)8转换为二进制为100000000101;对应多项式为:

(4.1)

图4.1反馈电路原理图

图中连接线均为反馈线(其中无反馈线,系数C为0,图中省略),其中C0=Cn=1,表示反馈连接。

因为m序列是由循环序列发生器产生的,因此C0和C10肯定为1,即参于反馈。

而反馈系数若为1,参于反馈;为0的,则表示断开反馈线,即开路,无反馈连线。

一个线性反馈移位寄存器能否产生m序列,决定于它的反馈系数Ci(C0,C1,……C10的总称)。

在反馈移位寄存器中可设置反馈移位寄存器的初始状态为:

minitial=[00000000001]

4.2反馈连接程序算法设计

4.2.1程序算法设计

一个线性反馈移位寄存器能否产生m序列,决定于它的电路反馈系数ci,也就是它的递归关系式。

不同的反馈系数,产生不同的移位寄存器序列。

r级移位寄存器产生的码,周期n=2r-1,其特征多项式必然是不可约的,即不能再因式分解而产生最长序列。

因此,反馈抽头不能随便决定,否则将会产生短码。

为了以更加简洁的方式表示算法我用流程图来表示其处理过程,以下表示为流程图中所用部分模块说明:

判定预先设定的流程显示内容注释

4.2.2程序清单

%linshaopenggeneratemsequencedemo.m

clearall

clc

mtaps=[00000000101];%反馈系数c1-cn

N=length(mtaps)%寄存器的个数

minitial=[00000000001]

mdata=zeros(1,2^N-1);%寄存器输出向量,初始值设为0

mregister=minitial%设定寄存器的状态为初始状态

n=0;

value=0;

whilevalue==0

n=n+1;

mdata(1,n)=mregister(1,1);

feedback=rem((mregister*mtaps'),2);%计算反馈值,对应反馈系数为c0=1;

mregister=[feedback,mregister(1,1:

N-1)]

ifmregister==minitial;%设定寄存器的状态为初始状态,循环中止

图4.2程序算法流程图

value=1;

end

end

mdata=2*mdata-1%pn序列取值从{0,1}变化{+1,-1}

Rm

(1)=sum(mdata.*mdata)/n;%求解pn序列发生器输出的自相关函数

fork=1:

n-1

Rm(k+1)=sum(mdata.*circshift(mdata,[0,k]))/n;

end

n

subplot(2,1,1);

x=[0:

n-1];

stem(x,mdata)

title('m发生器的输出')

axis([0100-1.52]);

subplot(2,1,2);

plot(x,Rm);

title('m序列的自相关系数')

axis([0200.9-0.5]);

%程序结束

4.2.3程序运行结果及仿真分析

1.M序列其中1表示1,-1表示0(为了方便绘图表示),n为周期。

mdata=

Columns1through31

-11-1-1-1-1-1-1-1-11-11-1-1-1-1-1-11-1-1-11-1-1-1-11-11

Columns32through62

-11-11-1-11-1-1-1-1-1-1-111-11-1-1-1-1-1111-1-11-1-1

Columns63through93

-111-1111-11-1111-11-11-1-1-11-11-1-1-1-11-11-1

Columns94through124

-1-11-1-11-1-1-11-11-111-11-11-1-1-1-111-1-1-1-11-1

Columns125through155

-11111-1-11-1111-1-1111-1-11-11111-1111-1-1

Columns187through217

1-1111-11-1-11-1-11-11-1-111-111-1-1-11111-11

Columns249through279

-11-111111-1-11-1-11-1-1-1111-111-11-111-11-1

Columns280through310

11-1-1-111-1-1-1111-11111-111-11-11-1-11-111

Columns311through341

-1-1-1-111-1-1111-1-1111111-11111-1-1-1-11-11

Columns

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1