1、9电子技术研发 Electronics R&D了本原多项式,就能由它构造m序列产生器。f(x)的倒量 就是所产生的m序列,这个m序列各位的取值按f(x)式中各项的幂次自低至高取它们的系数。经过前人大量的计算,已将本原多项式列表备查,表1给出了部分本原多项式。由于本原多项式的逆多项式(即把系数倒转)也是本原多项式,所以表中对应的一个数有两个特征多项式。表1 部分本原多项式2 m序列的基本性质4(1)移位相加特性。一个m序列 与其任意次延迟移位后产生的另一个不同序列 模2相加,得到的仍是该m序列的延迟移位序列。如,0100111向右移1次产生另一个序列1010011,模2相加后的序列为111010
2、0,相当于原序列右移3次后得到的序列。(2)平衡特性。在m序列的每个2n1周期中,1码元出现的数目为次,0码元出现的数目为2n11次,即0的个数总是比1的个数少一个,这表明,序列平均值很小。(3)游程特性。游程是指在一个序列周期中连续排列的且取值相同的码元的合称,在一个游程中的码元的个数为游程长度。m序列中共有2n1个游程。其中长度为 的游程数目占总游程数的2k,长度为n的连1游程数为1,长度为n1的连0的游程数为1。(4)m序列具有优良的自相关特性,其自相关函数:从m序列的自相关函数可以看出,m序列是一个狭义的伪随机码。0 引言伪随机序列(PN)作为一种信号形式,既有随机信号所具有的良好相关
3、特性,又有随机信号所不具备的规律性。因此,伪随机信号既易于从干扰信号中被识别和分离出来,又可以方便地产生和重复。因此,伪随机序列在相关辨识、导航、误码测试、扩频跳频通信、多址通信、加密系统等方面均有广泛的应用。而m序列是一类重要的伪随机序列,最早应用于扩频通信1。1 m序列的产生原理和结构m序列是n级二进制线性反馈移位寄存器除去输出为0的状态外,产生的周期为2n-1的最大可能长度序列,又称为最大长度线性反馈移位序列。其产生的原理如图1所示。图1 序列产生器方框图PN序列发生器由n级移位寄存器,模二加法器和反馈线三个部分组成。图中,ci(i=1n)为反馈系数,若ci=1,表示有连接,有反馈,若c
4、i=0则表示断开,无反馈。ci的取值决定了移位寄存器的反馈连接和序列的结构,故是一个很重要的参量,用特征方程表示为:多项式中c0=cn=1。理论分析得出,一个n级线性反馈移位寄存器能产生m序列的充要条件是:反馈以为寄存器的特征多项式f(x)满足下列条件3:(1)f(x)为既约的;(2)f(x)可以整除 ,且 ;(3)f(x)除不尽 ,则 。满足上面三个条件的特征多项式成为本原多项式,一个本原多项式对应一个最大长度移位m序列,只要知道基于Matlab的m序列的产生和相关性能仿真 刘余霞 吕 虹(安徽工程大学电气工程学院,安徽 芜湖)摘 要:伪随机序列在流密码、信道编码和扩频通信等领域有着广泛的应
5、用,m序列是重要的伪随机序列。文中首先对m序列的原理、结构及性质进行分析,然后通过matlab仿真实现m序列,并对其相关特性进行仿真,结果表明该方法的正确性和可行性。关键词:伪随机序列;m序列;自相关;matlabSimulation of m Sequence Generation and Related Performance Based on MATLABLiu Yu-xia Lu Hong(College of Electrical Engineering,Anhui Polytechnic University,Wuhu,Anhui)Abstract:Pseudorandom seq
6、uence has been widely used in the fields of stream cipher,channel coding,and spread spectrum communication,etc.and m sequence is an important pseudorandom sequence.In the paper,the principle,structure and properties of m sequence are analyzed in detail,then m sequence is realized by MATLAB simulatio
7、n,and its correlative features are simulated.The result shows the validity and feasibility of this method.Key words:pseudorandom sequence;m sequence;autocorrelation;matlab10电子技术研发 Electronics R&D3 m序列的matlab程序仿真和实现m序列发生器的设计和实现方法很多,既可以用硬件通过加法器产生,也可以通过编程实现。就目前的趋势来看,更多的研究者偏向于软件,这是因为国内外的软件资源非常丰富,实现起来方便。
8、而matlab除了其强大的科学计算功能外,在信号处理和仿真方面的贡献也不可小觑。下面是产生序列的matlab程序段4:functionout=mgen(g,state,N)%输入g:m序列生成多项式(10进制)%state:寄存器初始状态%N:输入序列长度%test g=11,state=3,N=15gen=dec2bin(g)-48;M=length(gen);curState=dec2bin(state,M-1)-48;for k=1:Nout(k)=curState(M-1);a=rem(sum(gen(2:end).*curState),2);curState=a curState(1
9、:M-2);end例1 设m序列的生成多项式为 ,求:(1)m序列的输出及其自相关序列;(2)设脉冲波形成为矩形脉冲 ,画出m序列信号的自相关函数;(3)设脉冲波形为升余弦(滚降系数a=0),画出m序列信号的自相关函数。以下是matlab关键程序段:mq=mgen(g,state,L);ms=conv(1-2*mq,1-2*mq(15:-1:1)/N;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);st=sigexpand
10、(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)仿真结果如图2所示。图2 仿真结果由图2可以看出,m序列具有良好的自相关性,符合伪随机序列的基本性质,可以满足扩频序列的设计要求。4 结束语本文基于matlab的信号处理能力,对m序列的产生和特性进行了仿真,方法简单,易于实现,可移植性强,仿真结果和性能的分析证明该方法的正确性和可行性,并为后续的理论研究工作打下了实验基础。参考文献:1 吕虹.一种非线性最大长度伪随机序列发生器的设计 J.电子器件,2008,31
11、(3):898-900.2 王会华,李宝平.m序列发生器的设计与实现J.北京电子科技学院学报,2007,15(2):58-61.3 刘焕淋.扩展频谱通信M.北京:北京邮电大学出版社,2008.4 赵鸿图,茅艳.通信原理MATLAB仿真教程M.北京:人民邮电出版社,2010.5 陈海龙,李宏.基于MATLAB的伪随机序列的产生和 分析J.计算机仿真,2005,22(5):98-100.作者简介:刘余霞(1980),女,安徽安庆人,安徽工程大学电气工程学院,硕士研究生,研究方向:检测技术与自动化装置。手机:13955302539电子信箱:通信地址:安徽工程大学电气工程学院(241000)吕虹(1959-),女,教授,硕士生导师,研究方向:计算机应用、电子系统设计.
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2