伪随机序列在CDMA通信系统用的应用31概述在扩频系统中

上传人:痛*** 文档编号:92748557 上传时间:2022-05-19 格式:DOC 页数:12 大小:93.50KB
返回 下载 相关 举报
伪随机序列在CDMA通信系统用的应用31概述在扩频系统中_第1页
第1页 / 共12页
伪随机序列在CDMA通信系统用的应用31概述在扩频系统中_第2页
第2页 / 共12页
伪随机序列在CDMA通信系统用的应用31概述在扩频系统中_第3页
第3页 / 共12页
点击查看更多>>
资源描述
. -第三章 伪随机序列在CDMA通信系统用的应用3.1 概述在扩频系统中,伪随机码序列起着很重要的作用。在直扩系统中,在发送端用伪随机码(PN码)将信号频谱扩展,送入信道进展传输,在接收端用一样的PN码完成解扩。扩频系统的性能同采用的伪随机码的性能有很大关系,伪随机码性能的好坏,直接关系到整个性能的好坏。shannon编码定理指出:只要信息速率Rd小于信道容量C,则总可以找到*种编码方法,使在码字相当长的条件下,能够几乎无过失的从受到高斯白噪声干扰的信号中复制出原发送信号。高斯白噪声的理想特性为:式中为白噪声的双边噪声谱密度。从理论上讲,纯随机序列去扩展信号频谱是最理想的。但是很难实现白噪声的放大、调制、检测、同步及在接收机中为了解扩复制一个同发送端扩频码一样的副本。因此,工程上只能用伪随机码(PN码)或伪噪声序列作为扩频码。伪随机序列具有类似噪声的性质,但它又是周期性有规律的,既容易产生,又可以复制。在实际应用系统中,对伪随机序列的要求一般如下:1、易于产生;2、具有随机性;3、尽可能长的周期;4、平衡性,即随机序列中0和1的个数相等;5、自相关函数具有类似于白噪声自相关函数的性质;6、良好的互相关特性。最简单、最常用的伪随机编码是m序列。m序列有锋利的自相关特性,有较小的互相关值,码元平衡,但序列数目不多,序列复杂度不大。1976年R.Gold提出了新的一类序列:Gold序列,它与m序列的相关特性大致一样,但序列数目却大大增加,序列复杂度也有所改善,也是一种非常重要的扩频序列。随机序列的数学定义白噪声是一种随机过程,瞬时值服从正态分布,自相关函数和功率谱密度有极好的相关性,伪随机序列是针对白噪声演化而来的,只有0和1两种电平,因此伪随机编码概率分布不具备正态分布形式。但当序列足够长时,由中心极限定理可知,它趋近于正态分布,由此,伪随机序列定义如下:凡自相关函数具有:式的序列称为狭义伪随机序列。凡自相关函数具有:形式的序列,成为第一类广义伪随机序列。凡互相关系数具有式的序列,称为第二类广义伪随机序列。凡相关函数满足(1)、(2)、(3)三者之一的序列,统称为伪随机序列。由上面的四种定义可以看出,狭义伪随机序列是第一类广义伪随机序列的一种特例。3.2 M序列m序列是线性反响移位存放器的最大长度序列,它的生成可以用移位存放器序列发生器的特征多项式f(*)来确定,一个本原特征多项式对应一个最大长度序列,也就是对应一个m序列。线性反响移位存放器的构造如以下列图3-1:图3-1线性反响移位存放器构造图图中,f(*)为反响特征多项式,表示为:能够产生m序列的f(*)应满足:为不可约多项式;为本原多项式,即能被f(*)整除(P为m序列的周期,)。同时,对一个给定的移位存放器序列定义一个系数为多项式:上式中的系数就是移位存放器输出序列。相应的g(*)多项式就确定了,反之亦然。生成多项式。线性反响移位存放器序列一旦给出,其由于可以由g(*)得到an,因此g(*)称为生成多项式。m序列的表达方式一般有以下两种:直接用反响抽头位置表示:例如,反响特性多项式为,就可表示为1,5。用八进制数表示:如上例,反响特征多项式,它的系数矩阵为100011(依次由高阶向低阶表示),则用八进制表示就为43。3.2.1 m序列的特性CDMA通信要求扩频序列具有较好的伪随机特性,m序列的特性包括:在每一序列周期中,+1的码元个数和-1的码元个数仅相差1位;在每一序列周期中,连续出现+1或-1的码元长(游程)数目为u,则码元数为1的游程有u/2个,为2的有u/4个,为3的有u/8个,。其中,+l和-1的游程数目一样。序列的(周期)自相关函数是二值的,有:m序列就是能够满足上述条件的最主要也是最根本的狭义伪随机序列。它的特性还有:(1)周期为 ;(2)移位相加特性:一个m序列经移位后的序列与原序列相加得到的新序列仍为m序列。(3)相关特性:自相关函数互相关特性:同周期m序列的互相关函数的均值为1,且最大值:两个周期互素的m序列的互相关函数:3.3 Gold序列m序列优选对如果周期为的两个m序列A、B,当B=Aq,且e=gcd(n,k)与n满足n/e为奇数,则m序列A、B之间的互相关函数具有优选三值特性,为:m序列优选对的寻找方法有分圆陪集法、相关验证法、求特征根法和采样法四种。其中分圆陪集法和相关验证法在本质上都是通过一一求解两个m序列的互相关函数值,然后再根据m序列优选对的优选三值特性进展判断从而得到m序列优选对的方法,这里我们不做详细介绍了。Gold序列的生成m序列是相关特性很好的伪随机序列,它的优选对互相关值己接近Welch给出的相关特性下限。但是,它们能彼此构成优选对的数目很少,不便用于CDMA扩频通信。1967年R.Gold提出和讨论了新的一类序列-Gold序列,Gold序列的构成如下:如果序列,是周期为的m序列优选对,它们按下式构成Gold序列:其中T表示循环移位,到表示循环移位i次。A序列的循环移位序列也是m序列。则和A,B序列一起构成Gold序列集合G(A,B)。因此gold序列的根本构造如下所示:图3-2 GOLD 序列产生器上图为Gold序列发生器的模型,由同步时钟控制的两个m序列发生器的周期一样,速率也一样,因而二者保持一定的相位关系,产生的Gold序列的周期与这两个子序列的周期也一样。当改变两个m序列的相对位移时,就会得到一个新的Gold序列。Gold序列的周期和m序列一样,但每对n级m序列优选对可产生个Gold序列,序列数比m序列的数目多很多,这点有利于CDMA通信系统的用户容量的增加。而且Gold序列具有良好的自、互相关特性的一种伪随机序列。第三代移动通信系统中的WCDMA系统就采用Walsh(信道编码)+Gold序列(区分小区)和Walsh (信道编码)+Gold序列(区分用户)进展前/后向扩频编码。3.4 M序列和GOLD序列的比照分析Gold序列是由m序列优选对经过移位相加得到的,在一个Gold序列族中包含有产生这个Gold序列族的两个互为优选对的m序列本身以及它们经过移位相加得到的新序列。因此,Gold序列与m序列在相关特性上既十分相似又存在一定差异。自相关特性Gold序列族中,除了产生此族的两个m序列外,其余Gold序列的自相关特性均虽然较m序列的自相关特性稍差,但当级数n较大时,其归一化旁瓣峰值依旧很小,仍然可以认为是理想的。通过m序列添加小项的M序列的自相关特性没有m序列理想,且旁瓣峰值也较同级的Gold序列稍大,但是随着阶数n的增加M序列的自相关主峰值愈发锋利,归一化旁瓣峰值变得非常小,自相关特性趋于理想化。互相关特性任一对Gold序列的互相关函数都满足优选三值特性,但是m序列却并不都是优选对,甚至有的m序列对的互相关峰值可能到达较大的值,从而影响是否为一样m序列的判决。同时,Gold序列的数目要远大于m序列的数目。因此,在互相关特性上,Gold序列要优于m序列。M序列的互相关特性没有Gold序列好,它不具有优选三值特性。M序列与m序列相似,存在非优选三值特性的互相关函数,但是随着周期的增加,序列间的互相关特性也会更优。但是,实际系统中采用的M序列都是通过m序列添加小项得到的,序列数目和m序列一样,如果用互相关特性来区分用户,可用的地址数太少。所以,在扩频通信系统中仅利用了M序列的自相关特性(不同用户采取不同的公值),而没有用到M序列的互相关特性。进而可以认为M序列的互相关特性的好坏不会影响实际系统的性能。第四章 基于MATLAB/Simulink的CDMA系统的仿真与分析4.1 设计前言在MATLAB通信工具箱中有SLMULINK仿真模块和MATLAB函数,形成一个运算函数和仿真模块的集合体,用来进展通信领域的研究、开发、系统设计和仿真。通信工具箱中的模块可供直接使用,并允许修改,使用起来十分方便,因而完全可以满足使用者设计和运算的需要。 MATLAB通信工具箱中的系统仿真,分为用SIMULINK模块框图进展仿真和用MATLAB函数进展的仿真两种。在用SIMULINK模块框图的仿真中,每个模块,在每个时间步长上执行一次,就是说,所有的模块在每个时间步长上同时执行。这种仿真被称为时间流的仿真。而在用MATLAB函数的仿真中,函数按照数据流的顺序依次执行,意味着所处理的数据,首先要经过一个运算阶段,然后再激活下一个阶段,这种仿真被称为数据流仿真。*些特定的应用会要求采用两种仿真方式中的一种,但无论是哪种,仿真的结果是一样的。 CDMA是指在各发送端使用不一样、相互准正交的地址码调制所传送的信息,而在接收端在利用码型的准正交性,通过相关检测,从混合信号中选出相应的信号的一种技术。实现CDMA的理论根底是扩频通信,即在发送端将待发送的数据用伪随机码进展调制,实现频谱扩展,然后进展传输,而在接收端则采用同样的编码进展解扩及相关处理,恢复原始的数据信息。扩频通信有直接序列DS、跳频FH、线性调频chirp、跳时TH等方式。采用扩频通信的优点很多,如抗干扰、抗噪声、抗多径衰落的能力强,能在低功率谱密度下工作,*性好,可多址复用和任意选址及进展高度测量等等。Simulink 是 MATLAB 提供的用于对动态系统进展建模、仿真和分析的工具包。Simulink提供了专门用于显示输出信号的模块,可以在仿真过程中随时观察仿真结果。同时,通过Simulink 的存储模块,仿真数据可以方便地以各种形式保存到工作区或文件中,供用户在仿真完毕之后对数据进展分析和处理。另外,Simulink 把具有特定功能的代码组织成模块的方式,并且这些模块可以组织成具有等级构造的子系统,因此具有内在的模块化设计要求。基于上述优点,Simulink 称为一种通用的仿真建模工具,广泛应用于通信仿真、数字信号处理、模糊逻辑、神经网络、机械控制和虚拟现实等领域。 根据输出信号与输入信号的关系,Simulink 提供 3 种类型的模块:连续模块、离散模块和混合模块。连续模块是指输出信号随着输入信号发生连续变化的模块,离散模块则是输出信号以固定间隔变化的模块。对于连续模块,Simulink 采用积分方式计算输出信号的数值,因此,连续模块主要涉及导数的计算及其积分。离散模块的输出信号在下一个抽样时刻到来之前保持恒定,这时候 Simulink 只需以一定的间隔计算输出信号的数值。混合模块是根据输入信号的类型来确定输出信号类型的,它既能够产生连续输出信号,也能够产生离散输出信号。4.2 系统根本构造本文利用Simulink平台,模拟了一个小区内四个用户的码元发送,扩频,接收,解扩,判决的CDMA通信根本过程,仿真根本流程如图4-1所示:图4-1 CDMA系统在每一个仿真步长(1秒)内,每个用户发送一个信息码元,4个用户则对应发送4个用户信息码元,然后用4个P=31的m序列分别对这4个用户的信息码元进展扩频(相乘)处理,然后合路相加并参加高斯白噪声。在接收端用和发送端一样的4个m序列分别对信息码元进展解扩(相乘)处理,最后进展积分,判决,完成了对这4个用户的信息码元的恢复,即对于这4个用户中的每一个用户,一个仿真步长(1秒)内完成了一个信息码元的恢复,假设要发送5000个码元,仿真时间设置为5000秒即可,这是传统单用户检测的情况。 利用SIMULINK设计系统发射端 本系统设计的是利用MATLAB2007b来,应此对于SIMULINK模块必须用该版本的MATLAB才能翻开。其中发送端的根本构造如下:图4-2 CDMA系统的发送端用户发送的信号的模拟 为了便于观察和数据的比照,我采用发送常数信号1来作为用户的发送信号,翻开SIMULINK,添加Constant模块,来模拟用户,其具体的参数设置如下:图4-3 CONSTANT模块参数设置伪随机序列的产生在扩频调制中,我通常运用PN码来进展信号的扩频处理,这里运用Embedded MATLAB Function block编写了一个m序列发生器模块,模块有一个输入,一个输出,输出为一个P=31的m序列。PN码的产生,实际上就是利用移位存放器来实现伪随机序列,其MATLAB核心代码如下:for i= 2:L newregisters(1:len-1) = registers(2:len); newregisters(len) = mod(sum(coefficients.*registers),2); registers=newregisters; a(i)=registers(1);end利用这个模块,我们就可以参身周期为31的伪随机序列了。扩频调制设计所谓扩频调制,就是信号和PN码进展相乘,我们只要利用SIMULINK的乘法模块就可以了。图4-4 一路用户的扩频调制过程信号和路设计 重复以上的步骤,我们可以得到4个用户的扩频调制,然后我们将4路信号进展合路。并参加一个Random Number模块,生成均值是0,方差为1的高斯正态分布随机信号做为噪声。其中Random Number模块的参数设置如下:图4-5 噪声模块的参数设置 利用SIMULINK设计系统接收端系统接收端的具体构造如下:图4-6 系统的接收图解扩模块设计 解扩模块的就是扩频调制的逆运算,应此我们只要再次利用PN码来对信号相乘,得到解扩信号就可以了。信号复原模块设计 将得到的信号进展符号判决,就可以复原发送的信号了,符号判决模块的设置如下:图4-7 判决模块至此,我们完成利用SIMULINK设计了最根本的CDMA系统了。4.3 基于MATLAB的CDMA系统性能分析 上节我们介绍了利用SIMULINK建立一个简单的四用户的CDMA系统,下面我们利用MATLAB对系统的性能进展仿真。来验证系统的正确性。 下面我们主要来分析一下整个系统的代码局部:N=31; %伪随机序列的阶数R=(ones(UserNumber)+(N-1)*eye(UserNumber)/N; %相关系数矩阵b=2*randint(UserNumber,inflength)-1; %用户信息矩阵coefficients=1 0 1 0 0; %PN码生成系数mseq=mseries(coefficients); %有生成系数产生随机序列mseq=mseq(1:UserNumber,1:N); 以上代码主要功能是,产生PN码作为信号的扩频码,从而产生用于信号检测的扩频信号。 %产生噪声n1=Pn*normrnd(0,1,1,inflength*N);n=zeros(UserNumber,inflength);for j=1:inflength ntemp=n1(1,(j-1)*N+1):j*N); n(:,j)=(mseq*ntemp)/N;end 这个代码的主要作用就是产生检测信号用的噪声,将噪声添加到四个用户信号的合成信号中。 A=diag(a); y=R*A*b+n; %传统的单用户检测 ydec=inv(R)*y; %线性解相关多用户检测 ymmse=inv(R+sigma2*inv(A)*y; %最小均方误差多用户检测 for i=1:UserNumber ylen(i)=length(find(sign(real(y(i,:)-b(i,:); ydeclen(i)=length(find(sign(real(ydec(i,:)-b(i,:); ymmselen(i)=length(find(sign(real(ymmse(i,:)-b(i,:); BER_y(i)=ylen(i)/inflength; BER_ydec(i)=ydeclen(i)/inflength; BER_ymmse(i)=ymmselen(i)/inflength; end 以上代码我们主要用到了三种检测方式,1.传统的单用户检测;2.线性解相关多用户检测;3.最小均方误差多用户检测。4.4 仿真结论分析 SIMULINK仿真结论分析我们设置四个用户的发送信号都是常数1,我们来观察CDMA几个主要模块的波形情况。用户发送信号图4-8 用户发送信号1添加的噪声信号图4-9 噪声信号CDMA系统发送端信号图4-10 发送出去的信号接收到的信号图4-11 接收到的信号 通过将前后发送和接收信号的比照,我们利用普通用户信号检测的方法进展比照,可以得到如下的比照结果:图4-12 误码率 可见在连续发送的一样数据的情况下,接收端的正确率也是比拟高的,从而验证了SIMULNIK建立的模型的正确性。 MATLAB仿真结论分析测试传码5000个情况下10个用户的误码率是一个比拟传统单用户检测,线性解相关多用户检测,最小均方误差多用户检测之间的误码率性能的程序,运行本程序首先出现一个对话框,等待输入相应的仿真参数,如图4-11所示:图4-13 仿真界面其中第一行为用户数,第二行为用户信息码元个数,第三行为各个用户对应的信号功率,第四行为噪声功率,第五行为要观察的用户,默认值如图中所示。设置用户信号功率依次为1,2,3,4是由于用户距离基站的远近不同,故信号功率有差异,用此来模拟远近效应。信噪比的计算拿第一个用户作为基准,当噪声功率设置为10时,信噪比s/n=20lg(1/10)=-20dB。第五行设置为1表示要观察第一个用户,信号功率较大的用户的误码率明显低于信号功率较小的用户。表4-1 测试结果信号功率12345678噪声功率1010101010101010误码率0.29870.12550.05060.01210.00300.00020.00020无码个数2987125550612130220信噪比-20-13.979-10.457-7.958-6.021-4.437-3.098-1.938 我们可以看到,随着用户信号功率的变大,误码个数越来越少,即信号的接收正确率越高。图4-14 误码率与信号功率曲线图4.5 本章总结本章中给出了仿真测试报告,用编写好的MATLAB程序给出仿真结果,分析比拟了传统单用户检测、线性解相关多用户检测和最小均方误差多用检测之间的误码率性能;并根据编写好的Simulink仿真模型,设置好相应的仿真参数,比照了这几种不同检测方法的误码率,以到达分析它们之间性能差异的目的。. 优选-
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!