正交编码理论与应用研究——基于MATLAB的扩频通信系统设计摘要:本文研究的是基于MATLAB的扩频通信系统设计。为我们介绍了扩频通信系统的基本原理,并对扩频系统的各个重要模块进行详细的理论介绍,如Walsh函数的产生及其特性,BPSK的调制和解调方法,以及高斯加性白噪声AWNG的特点等等。在MATLAB程序仿真部分,主要分为6大部分,分别为主函数,发送模块,接收模块,AWNG信道,Walsh函数和差错计数器。通过主函数对各个子函数的调用,实现4个用户的随机数据的发送和接收,同时生成前4个用户在整个传输过程中的各种波形变化图,并对系统信噪比与误码率关系进行分析。关键词:扩频;walsh;MATLABAbstract:Inthispaper,MATLAB-basedspreadspectrumcommunicationsystemdesign.Forustointroduceaspreadspectrumcommunicationsysteminthebasicprinciplesofspreadspectrumsystemandallimportantmodulestoconductadetailedtheoreticalintroduction,suchasWalshfunctionsanditscharacteristics,BPSKmodulationanddemodulationmethods,andthehighplaceslikethenatureofwhitenoiseAwngcharacteristicsandsoon.PartintheMATLABsimulationprocedurescanbebroadlydividedintothemajorityof6,respectively,themainfunction,sendingmodule,receivermodule,AWNGchannel,Walshfunctionanderrorcounters.ThroughthemainfunctionofeachcallFunctions,4usersrealizetherandomdatatosendandreceive,atthesametimegeneratedbeforethe4usersintheentiretransferprocesschangesinavarietyofwaveformdiagramofthesystemsignaltonoiseratioandbiterrorrateAnalysisoftherelationship.Keywords:spreadspectrum;Walsh;MATLAB1扩频通信的基本原理1.1扩频通信[1]所谓扩展频谱通信,可简单表述如下:“扩频通信技术是一种信息传输方式,其信号所占有的频带宽度远大于所传信息必需的最小带宽;频带的扩展是通过一个独立的码序列来完成,用编码及调制的方法来实现的,与所传信息数据无关;在接收端则用同样的码进行相关同步接收、解扩及恢复所传信息数据”。扩频通信的基本特点,是传输信号所占用的频带宽度(W)远大于原始信息本身实际所需的最小带宽(B),其比值称为处理增益(Gp)。总之,我们用扩展频谱的宽带信号来传输信息,就是为了提高通信的抗干扰能力,即在强干扰条件下保证可靠安全地通信。这就是扩展频谱通信的基本思想和理论依据。扩频通信的性能。扩频通信的可行性是从信息论和抗干扰理论的基本公式中引伸而来的。信息论中关于信息容量的香农(Shannon)公式为:C=Blog2(1+SN)其中:C为信道容量(即极限传输速率),B为信号频带宽度,S为信号功率,N为噪声功率。Shannon公式说明,在给定的传输速率不变的条件下,频带宽度和信噪比P可以互换,即可以通过增加频带宽度,在信噪比较低的情况下传输信息。扩展频谱以换取信噪比要求的降低,正是扩频通信的重要特点,并由此为扩频通信的应用奠定了基础。扩频通信的一个重要参数是扩频增益,反映了系统抗干扰能力的强弱,是对信噪比改善程度的度量,定义为接收机相关器输出信噪比和输入信噪比之比,即(1)其中:Rs为扩频码的传输速率,Rd为信息数据的传输速率,Bs为扩频码的带宽,Bd为信息数据的带宽。按照扩展频谱的方式不同,现有的扩频通信系统可分为直接序列(DS)扩频、跳频(FH)、跳时(TH)、线性调频(chirp)以及上述几种方式的组合。扩频通信常用的扩频码主要有PN序列、GOLD序列、WALSH码和OVSF码。PN码即伪噪声序列也称之为伪随机序列,是用确定性方法产生的序列,但它却近似具有随机产生序列所希望的某些关键随机特性。其中最常见的伪随机序列是m序列。而扩频通信调制方式一般采用频率调制(FM)或相位调制(PM)的方式来进行数据调制,在码分多址通信中,其调制多采用BPSK、DPSK、QPSK、MPSK等方式。在码分多址通信中最常用BPSK(二相移相键控)。1.2直接序列扩频直接序列扩频就是直接用具有高码率的扩频码序列在发送端去扩展信号的频谱。而在接收端,用相同的扩频码序列去进行解扩,将展宽的扩频信号还原成原始的信息。直扩通信系统原理如图1所示。图1扩频通信原理图在发送端输入的信息先经信息调制形成调频或调相数字信号,然后由扩频码发生器产生的扩频码序列去调制数字信号以展宽信号的频谱,再将展宽后的宽带信号调制到射频发送出去。在接收端,接收机接收到宽带射频信号后,首先将其变频至中频,然后通过同步电路捕捉发送来的扩频码的准确相位,由此产生与发送来的伪随机码相位完全一致的接收用的伪随机码,作为扩频解调用的本地扩频码序列,最后经信息解调,恢复成原始信息输出。由此可见,直扩通信系统要进行三次调制和相应的解调,分别为信息调制、扩频调制和射频调制,以及相应的信息解调、解扩和射频解调。与一般通信系统比较,扩频通信就是多了扩频调制和解扩部分。1.3WALSH函数WALSH函数是一种非正弦的完备正交函数系,具有理想的互相关特性,两两之间的互相关函数为0,亦即它们是正交的。因而在码分多址同心中,WALSH函数可以作为地址码使用。在本设计中,就使用了WALSH码。它仅有可能的取值:+1和-1(或0和1),比较适合于用来表达和处理数字信号。1.4BPSK二进制移相键控(BPSK)调制是载波相位按基带脉冲变化的一种数字调制方式。BPSK的信号形式一般表示为0cos6ntangtnTsXcte(2)这里,g(t)是脉宽为Ts的单个矩形脉冲,而an的统计特性为1P11Pan概率为概率为绝对移相BPSK存在相位模糊,因此实际应用中多采用相对移相2DPSK的调制方式。这只要在信号源后加一个码变换,且在解调端的抽样判决器后加一个码反变换器。BPSK信号产生的方法有调相法和相位选择法两大类。在具体实现时,我们取每码元两个载波,每载波抽样16个点,即每码元抽样32点。因此,用调相法实现时,我们可以方便地用数字乘法器实现,具体方法见图2。图2调相法1.5高斯加性白噪声(AWNG)白噪声是指功率谱密度在整个频域内均匀分布的噪声。即其功率谱密度:(为常数),(3)白噪声的自相关函数:因为,所以其自相关函数为:(4)由式(4)可知,白噪声的自相关函数仅在时才不为零;而对于其他任意的,它都为零。这说明只有在时才相关,而它在任意两个时刻上的随机变量都是不相关的。但是带限的白噪声就不是这样的自相关函数了,因为其功率谱密度是窗函数(线段),而不是一条直线。加性高斯白噪声(AWGN)从统计上而言是随机无线噪声,其特点是其通信信道上的信号分布在很宽的频带范围内。高斯白噪声的概念。白指功率谱恒定;“高斯”指幅度取各种值时的概率p(x)是高斯函数;“加性”指噪声独立于有用信号,不随信号的改变而改变。2MATLAB仿真2.1仿真原理方框图根据选题的设计要求,我们采用四个用户的数据,首先在发送端将四个用户的数据分别进行调制(包括Walsh扩频调制和BPSK调制),然后再将已调用户信号进行相加,输入带有AWNG高斯加性白噪声的信道中。在接收端,将从信道送出的信号进行解调(包括BPSK解调和Walsh解调)。最后,通过判决器输出还原后的信号,将还原信号和原始信号进行比较,用误码计数器统计误码个数。方框图如图3图3仿真系统框图2.2程序模块2.2.1Walsh函数的产生本文采用16阶哈达码对用户数据进行Walsh扩频调制,只要调用函数N=16;B=walsh(N),即可产生扩频增益为N=16的扩频码。2.2.2发送端本文把发送端的各个子模块写在一个函数中,由main函数进行调用,发送模块的函数名为send_module(nA,N,m,B),其中nA为用户A通过调用MATLAB自带的fix(unifrnd(0,255))函数,产生一个字节的随机信号;N为哈达码的阶数;m为N阶哈达码的第m行,即Walsh扩频码。函数返回两组值,[nA_2,ChannelA]中nA_2表示用户A数据从十进制转换为二进制,并分解为适合电路传输的双极性数字基带信号(例如,nA=112,则nA_2=[+1+1+1-1-1-1-1-1]),可以做为误码计数器的原始比较信号。而ChannelA表示用户A数据调制后的最终数据。图4是用户A调制过程的各个波形User1User4Walsh扩频Walsh扩频BPSK调制BPSK调制相加信道BPSK调制Walsh扩频判决User计数图4用户A直接序列扩频通信调制图5用户B直接序列扩频通信调制图6用户C直接序列扩频通信调制图7用户D直接序列扩频通信调制2.2.3信道如图8所示,是信道两端信号的波形。将用户A、B、C、D已调信号相加后,送入传输信道中,用高斯加性白噪声对信道中的信号进行干扰。本文调用MATLAB自带的awgn(Channel,snr,'measured')函数,其中,Channel是所有用户已调信号的和,snr是信道的信噪比图8awng信道发送端和接收端波形2.2.4接收端接收函数的函数名为receive_module(N,y,m),其中N为哈达码的阶数,y为接收信号,m为N阶哈达码的第m行,即Walsh扩频码。返回值receiveA表示接收对用户A发送的信号进行解调后还原的信号,作为最后差错计数器还原比较信号。如图9所示,是接收端信号解调过程中各个子模块的波形图。图9用户A直接序列扩频通信解调图10用户B直接序列扩频通信解调图11用户C直接序列扩频通信解调图12用户D直接序列扩频通信解调2.2.5差错计数器将4个用户的发送函数和接收函数的返回值逐位进行比较。3仿真结果分析3.1误码率在数字通信中,误码率是一项主要的性能指标。在实际测量数字通信系统的误码率时,一般测量结果与信源送出信号的统计特性有关。通常认为二进制信号中0和1是以等概率随机出现的,所以测量误码率时最理想的信源应是随机信号发生器。由于Walsh函数是周期性的伪随机序列,因而可作为一种较好的随机信源。扩频序列通过终端机和信道后,输出仍为扩频序列。在接收端,本地产生一个同步的扩频码,与收码序列逐位相乘再求规格化内积,再与发送端信源码进行比较,一旦有错,误码计数器加一。误码率的数学表达式为:100%eES(5)其中S是信码个数,e是误码个数,E就是误码率。3.2信噪比测量通信系统的性能时,常常要使用噪声发生器,由它给出具有所要求的统计特性和频率特性的噪声,并且可以随意控制其强度,以便得到不同信噪比条件下的系统性能。在实际测量中,往往需要用到带限高斯白噪声。本实验中的噪声主要有两类,一类是用户间相互干扰的噪声,由于用户信息经过扩频具有伪随机性,所以又可称为伪噪声;另一类是我们自己添加到信道的高斯加性白噪声AWNG,它独立于信源信号。信噪比计算是数学表达式为:222210log10log10log)sssnnsrESNRE(6)其中sE为信码发射功率,nE为噪声功率,s为信源码,r为信宿码,计算结果单位为dB。本文中,为了更好的验证系统性