- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
移动通信课设 matlab的扩频码设计
1 背景及意义 扩展频谱通信是一种不同于常规通信系统的新调制理论和技术,简称扩频通信。其设计思想是将待传输的信息信号用特定的扩频码扩展频谱后成为宽带信号进行传输;接收时再采用相应的技术手段将频谱压缩,恢复原来待传信息信号的带宽,从而实现通信。扩频通信具有两个特点:传输信号的带宽远大于原始信息信号的带宽;传输信号的带宽主要有扩频码决定,此扩频码通常是伪随机码。伪随机码(pseudo randomcode)简称PN码,可以人为产生与复制,具有类似白噪声的性质,相关函数具有尖锐的特性,功率谱占据很宽的频带,易于从其他信号或干扰中分离出来,具有优良的抗干扰特性,其特点是:具有尖锐的自相关函数;互相关函数值应足够小;有足够长的码周期,以确保抗侦破与抗干扰的要求;码的数量足够多,以实现码分多址的要求;平衡性好, 以满足抗干扰的要求;工程上易于产生、加工、复制与控制。扩频通信的优势主要来自于伪随机码具有白噪声的统计特性。而随着扩频速率的不断提高,扩频码的长度急剧增加,利用计算机设计并验证扩频码的各项指标能大大提高效率。通过对伪随机码中常用的m序列的结构和性质进行了分析,给出了基于MATLAB平台的m序列生成算法及代码伪随机序列分析. 软件平台选择Matlab,Malab是美国Math Works公司推出的一种以矩阵为基本编程单位的高效数值计算语言。Matlab在编程效率、可读性、可移植性与可扩充性上,远远优于其他高级编程语言,是公认的最优秀的科技应用软件。基于CDMA技术的移动通信系统中扩频码起着至关重要的作用,常用的伪随机码有m序列、gold序列等,它们的产生和特性值得深入的研究。2 设计要求设计一个m序列产生器;利用仿真软件进行仿真,得出生成序列,并绘出波形。3 设计内容3.1 matlab程序实现m序列的产生m序列产生原理:m序列是最长线性移位寄存器序列的简称。它由多级移位寄存器或其延迟元件通过线性反馈产生的最长码序列。n级线性移位寄存器共有种状态,除去全“0”状态外(陷入全“0”状态后,寄存器将停滞不前)还剩下种状态,本原多项式构成的移位寄存器才能输出m序列,某些文献认为不可约多项式等价本原多项式,实际上本原多项式是不可约多项式的子集,不可约多项式只是产生m序列的必要条件。m序列的基本性质有:平衡性:m序列的一个周期中,“1”的个数比“0”的个数只多一个。移位可加性:某个m序列与相移为任意值的同一m序列的模2和是另一相移的m序列。良好的自相关与互相关特性。一个线性反馈移位寄存器能否产生m序列,取决于它的反馈系数。3.2 matlab m序列产生过程3.2.1 编写m文件function[mseq]=m_sequence(fbconnection) n=length(fbconnection); N=2^n-1; register=[zeros(1,n-1) 1]; %移位寄存器的初始状态 mseq(1)=register(n); %m序列的第一个输出码元 for i=2:Nnewregister(1)=mod(sum(fbconnection.*register),2);for j=2:nnewregister(j)=register(j-1);end;register=newregister;mseq(i)=register(n); end其中N为m序列的长度,值为。由程序已定义了移位寄存器的初始状态和抽头系数,在此基础上进行反馈,后进行模二加,所得的结果为输出的第一个值,初始状态向左移移位,而所得的输出值填补上变成新的序列,在进行第二次反馈和模二加,依次循环N次,产生m序列。3.2.2 在matlab的命令行窗口中运行输入命令primpoly(5,all)这个命令的目的是得到5阶m序列的所有本原多项式,如果想得到其他阶的m序列,自行修改数字5即可。得到的结果为3.2.3 产生m序列在matlab的命令行窗口中运行输入命令mseq([0 0 1 0 1])得到5级移位寄存器产生的m序列ans = Columns 1 through 251 0 0 0 0 1 0 0 1 0 1 1 0 0 1 1 1 1 1 0 0 0 1 1 0 Columns 26 through 311 1 1 0 1 04 matlab仿真4.1 m序列仿真设计本次仿真取n=5,本多项式系数的八进制表示为45,将45写为二进制码100 101,从右向左第一个1对应于,按系数可写出本原多项式从左向右的第一个1对应于,按系数可写出对 应的寄存器函数。4.2 仿真simulink连接图4.1.1 simulink设计本仿真设计的m序列级数为5,即其周期数为31。初始值为0 0 1 0
文档评论(0)