1、第8章 扩频通信的仿真试验,8.1 扩频码相关性的讨论 8.2 扩频通信原理 8.3 扩频通信系统 8.4 跳频通信系统,8.1 扩频码相关性的讨论,8.1.1 常用的伪随机序列1.m序列m序列是最大长度线性反馈移位寄存器序列的简称。它是带线性反馈的移位寄存器产生周期最长的一种序列。考虑图8-1所示的二进制序列产生器,它由线性反馈移位寄存器构成,式中ci为1表示连接,为0表示断开。加法器应用的是模2加法。公式(8-1)称为线性反馈逻辑式。它全面地描述了线性反馈移位寄存器的反馈逻辑连接。,图8-1 反馈移位寄存器原理框图,序列生成函数(亦称序列多项式)可以表示为如下形式3:G(x)=a0+a1x
2、1+a2x2+= (8-2)将线性反馈逻辑代入后,选择初始状态为a-r=1a-r+1=a-r+2=a-1=0 (8-3),可以得到上式中的F(x) 是关于ci的多项式,因此是表示序列生成器的反馈连线的特征,称为移位寄存器序列生成器的特征多项式(公式8-4)。由于r位二进制移位寄存器最多可以取2r个不同状态,因此每个移位寄存器序列 s(t) 最终都是周期序列,并且其周期n 2r ,有s(t)=s(t+n),tn式中n是某个整数。事实上,一个线性移位寄存器序列的最大周期为2r-1,因为一个进入全零状态的移位寄存器将终止于该状态。,(8-4),m序列就是具有最大周期的二进制移位寄存器序列。现已证明,
3、对任何一个r1,m序列都存在。在扩频通信中m序列被广泛地应用。这里介绍两个重要的结论。 (1)m序列具有可以担任扩频通信相关要求的特性,即具有很强的自相关特性和很弱的互相关特性,周期为2r-1的m序列可以提供2r-1个扩频地址码。(2)只有反馈连线满足特定要求的序列生成器,才能够产生m序列。而这个特定要求可以用特征多项式是本原多项式来描述。下面是关于本原多项式的定义。,若一个n次多项式f(x) 满足下列条件:(1)f(x) 为不可约的;(2)f(x) 可整除xm+1,m=2n-1;(3)f(x) 除不尽xq+1,qm,则称多项式f(x)为本原多项式。本原多项式的级次和本原多项式系数之间的关系如
4、表8-1所示。 所以,构建一个m序列的主要工作,就变成求解一个本原多项式的特征多项式问题了。计算和查表都可以完成,当然计算是比较复杂的。下面是应用MATLAB软件求解本原多项式的方法(用编程的方法得到)。,表8-1 部分本原多项式系数表,程序8-1 n=4;x=gfprimfd(n,all);%求出n=4的所有本原多项式的系数序列fori=1:size(x);%将系数序列写成解析式,循环语句是依次写出所有的本原多项式gfpretty(x(i,:)end运行结果是 1+x+x41+x3+x4,而本原多项式的系数序列ci是:1100110011可以看出:(1)系数序列与解析式的表达是完全对应的。(
5、2)ci是对称的,即c0= ci c1=cr-1,这个问题可以用下面的理论来解释:设GF(p)上的m次多项式则有f*(x)称为f(x)的互反多项式,所以本原多项式的个数总是偶数。求出了本原多项式,可以通过两种方式得到m序列。 ,a0+a1x+amxm (am0,a00),(8-5),(8-6),(1)构建反馈移位寄存器来得到m序列。图8-2所示是按照上述方法求出本原多项式的系数10011,也就是用反馈连接的方式构建的反馈移位寄存器。它产生的二进制序列就是m序列。该序列以文件名为dcl4n存在Workspace(工作空间)中。示波器与频谱仪显示了m序列的时域和频域的图形。图8-2中的频谱仪参数设
6、置见表8-4,可以看出与第3章中的表3-24一样。图8-3所示是时域图,图8-4所示是频域图。我们可以看到,它们与第3章中的图3-26和图3-27是完全一样的。这是因为我们用两种不同的方法,产生完全一样的m序列。,图8-2 反馈移位寄存器产生m序列的仿真系统,图8-3 反馈移位寄存器产生m序列的时域波形,图8-4 反馈移位寄存器产生m序列的频域波形,(2)应用PNSequenceGenerator(伪随机序列产生器)模块产生m序列。图8-5所示是伪随机序列产生器模块的参数设置对话框,它的应用是在第3章的图3-25中,参数设置在表3-23里看得更清楚。生成多项式10011就是本原多项式的系数。,
7、图8-5 PNSequenceGenerator(伪随机序列产生器)模块对话框,表8-2表8-4是得到m序列仿真模块的主要参数。当ToWorkspacetcl4n设置如表8-2时,tcl4n是如下的序列:001111010110010001111010110010,表8-2 ToWorkspace(至工作空间)的主要参数,表8-3 Scope(示波器)的主要参数,表8-4 SpectrumScope(频谱仪)的主要参数,2.Gold码Gold码是m序列的复合码。两个码长相等、采样时间相同的序列优选对(关于m序列的序列优选请参阅文献4p75)模2加以后合成。它的周期与原m序列等长。从前面的试验可
8、以看到,改变初值的设定可以得到发生位移的m序列。改变两个m序列的初值,将会得到新的Gold序列。如果说长为n的m序列可以得到n个地址,则由它们构成的Gold序列将得到n2个地址。下面介绍产生周期为63的一种Gold码的程序与方法。,(1)产生本原多项式。程序8-2n=6;x=gfprimfd(n,all)运行结果为110000111011011000011111001110110111100111,当中仅有三个是独立的,因为上面列出的六个是两两对称的:第一行与第三行;第二行与第五行;第四行与第六行。应用八进制描述,可以写成103;155;147,其中103和147构成优选对4。(2)构建反馈移
9、位寄存器,如图8-6所示。选取103、147作为组成Gold码的两个m序列。初值的设定是10000与10000。输出的Gold码序列以文件名为gold63a存在Workspace(工作空间)中。,图8-6 应用反馈移位寄存器产生Gold码,(3)应用GoldSequenceGenerator(Gold码序列产生器)模块产生Gold码。图8-7是应用GoldSequenceGenerator(Gold码序列产生器)产生Gold码的系统仿真图。图8-8所示是Gold码序列产生器模块的参数设置对话框,表8-5是主要参数设置。生成多项式1000011即103,1100111即147就是本原多项式的系数
10、。初值与反馈移位寄存器的设置完全一样。图8-9显示了Gold序列的时域图,可以看出它是以63为周期的序列。,时窗为126,刚好显示两个周期。图8-10显示了Gold序列的频域图,它与图8-4的差别仅在于:以1/63为间隔的谱线,取代了1/15为间隔的谱线。因为Gold码的周期为63,图8-4描述的m序列周期为15。应用反馈移位寄存器产生的Gold序列虽然没有安排示波器与频谱仪,由于参数设置是一样的,只要把它们搬过去即可。结果是相同的,读者可以自己验证。,图8-7 应用Gold序列产生器产生Gold码,图8-8 Gold码序列产生器模块的参数设置对话框,图8-9 Gold码时域图,图8-10 G
11、old码频域图,表8-5表8-8是产生Gold码仿真模块的主要参数。当ToWorkspaces1设置为如表8-5时s1是如下的序列:100111000011011111100100110011110011000010000000011110001111101 ,表8-5 ToWorkspace(至工作空间)的主要参数,表8-6 GoldSequenceGenerator(Gold序列产生器)的主要参数,表8-7 Scope(示波器)的主要参数,表8-8 SpectrumScope(频谱仪)的主要参数,8.1.2 常用伪随机序列的相关性讨论上面给出的m序列dcl4n和Gold序列gold63a有
12、如下的特点:(1)它们是长度为2n-1的序列,具有以下特性:在每个周期都存在2n-1个1和2n-1 -1个0;dcl4n有8个1,7个0;gold63a有32个1,31个0。(2)游程分布:随机序列中长度为1的游程数约占总游程数的1/2;长度为2的游程总数约占1/4;长度为3的游程总数约占1/8;其余依次类推。(3)具有类似于白噪声特征的自相关函数。对于m序列与Gold码,我们更为关心的是它的相关性。下面使用两段小程序,可以将存在工作空间的m序列dcl4n和Gold序列gold63a,应用指令“xcorr”得出它们的相关特性。,程序8-3 %求m序列的互相关特性sim(dcl4);%启动并运行
13、仿真系统dcl4x1=(2*dcl4n)-1;%将运行结果m序列dcl4n从单极性序列变为双极性序列y1=xcorr(x1);%求互相关性t=1:29;plot(t,y1(1:29);axis(1,30,-5,17)%绘出信号的相关grid图8-11所示是运行结果,可以在周期点15处看到很强的自相关性,其余的反映了它们的互相关性。显然,互相关性的幅度值越小越好。,图8-11 m序列的互相关函数特性,程序8-4%求Gold序列的互相关特性sim(gold6a);%启动并运行仿真系统gold6ax1=(2*gold63a)-1;%将运行结果m序列dcl4n从单极性序列变为双极性序列y1=xcorr
14、(x1);%求互相关性t=1:125;plot(t,y1(1:125);axis(0,125,-20,70)%绘出信号的相关图grid图8-12所示是运行结果,可以在周期点63处看到很强的自相关性,其余的反映了它们的互相关性。显然,互相关性的幅度值越小越好。,图8-12 Gold序列的互相关函数特性,8.2 扩频通信原理,CDMA多址技术的原理是基于扩频技术,也就是说,将需要传送的具有一定信号带宽的信息数据,用一个带宽远大于信号带宽的高速伪随机码和它相乘,使原数据信号的带宽被扩展(扩频),再经载波调制并发送出去。接收端则使用完全相同的伪随机码,对解调出来的宽带信号做相关处理,把宽带信号变换成原
15、信息数据的窄带信号(解扩),以实现信息通信。信息论的Shannon(香农)定理描述如下:,(8-7),其中C为信道容量,B为信号占用带宽,S/N为信噪比。由上式可以看出,信道容量与带宽成正比,而在一定信道容量下,如果带宽B扩大到一定程度,那么就能在较低信噪比(S/N可以取很小的数值)要求下得到很高的通信传输质量。根据通信原理,扩频增益可以表示为下式:(8-8)式中, bd为扩频以前基带信号占用带宽。由上式可见,B与bd差别越大,G越大,也就是说,扩频的增益越大。,图8-13所示是扩频通信仿真系统原理图。图中的PNSequenceGenerator(伪随机序列产生器)与第3章的图3-25一样,参
16、数设置见表3-23。频谱仪的参数设置见表8-4,所显示的频谱图与图8-4一样。示波器的主要参数见表8-9。系统中使用的Relay(继电器)主要参数见表8-10,作用是将单极性二进制码转变为双极性二进制码。系统中使用的DiscreteTimeIntegrator(离散时间积分器)的主要参数见表8-11,其作用是在m序列的周期时间范围内(15)将输入信号积分。,PulseGenerator(脉冲产生器)为积分器提供门控信号,主要参数见表8-12。 图8-14所示是(积分器)的参数设置对话框。,图8-13 扩频通信原理仿真系统,图8-14 DiscreteTimeIntegrator(离散时间积分器
17、)对话框,表8-9 Scope(示波器)的主要参数,表8-10 Relay(继电器)的主要参数,表8-11 DiscreteTimeIntegrator(离散时间积分器)的主要参数,表8-12 PulseGenerator(脉冲产生器)的主要参数,下面我们通过图8-13展示的扩频通信原理仿真系统,来讨论扩频通信原理。在图8-13中,给出了一个PN序列产生器发出的m序列,它与自己以及延迟后、取反后的各种m序列进行异或操作后,得到不同结果,并在示波器上显示出来。我们通过对示波器上的波形进行分析来了解扩频通信的扩频与解扩的原理。 观察示波器显示的波形图8-15,从上往下有五个显示的波形。下面我们分别
18、对五个波形进行介绍:,图8-15 示波器显示的五个波形,(1)全“-1”的结果表示输出的m序列与自己异或运算后得到全“0”序列,经过双极性变换后得全“-1”序列。(2)全“1”的结果表示输出的m序列与取反以后的m序列异或运算后得到全“1”序列,经过双极性变换后仍得全“1”序列。(3)图中的方波表示输出的m序列与延迟3个码元并且取反以后的m序列异或运算后得到的序列,它仍然是码元速率与m序列相同的二进制序列。试验证明,当延迟数为114时,取反与否结果是一样的码元宽度为1的双极性二进制码序列。,(4)图中的波形表示波形3序列积分后的结果(积分区间为15个码元,即m序列的周期)。因为“1”和“-1”频
19、繁地、概率相等地出现,所以积分结果在“0”附近徘徊。(5)图中的锯齿波表示输出的m序列与延迟15个码元,的m序列异或运算后得到全“0”序列,经过双极性变换后得全“-1”序列。全“-1”序列在积分15个码元周期后得到-15。试验证明,延迟0、15或者15的整数倍结果是一样的,这是m序列的周期性造成的。如果将波形2的序列积分15个码元周期后将得到15。,归纳起来说:当使用一个周期等于基带信号码元宽度的m序列对基带信号进行直接扩频时,得到的是随着基带信号变化的m序列。比如基带信号为0时,得到一个周期的m序列;基带信号为1时,得到一个周期的取反的m序列。解扩时,m序列与自己异或运算后得到全0序列,经过
20、双极性变换、积分后在判决点得到-15。m序列与取反以后的m序列异或运算后得到全1序列,经过双极性变换、积分后在判决点得到15。,用其他的m序列,即不同生成多项式产生的或者相同生成多项式产生的但是有非整数倍周期延迟的m序列扩频的信号,在解扩时积分的结果在0附近变化(如第4个波形所示)。 信号在传输过程中叠加了干扰与噪声,只会使积分绝对值小于15,但是其他的信号只会在0附近变化。m序列周期越长,扩频增益越高,即积分后的绝对值愈大,错判的概率就愈小。用与扩频时完全相同的m序列做解扩操作与用其他序列做解扩操作的输出有巨大的差别,这就是扩频通信的基础,正常解扩以后的信号与其他的扩频信号在频谱特性上的巨大
21、差距,是区分它们的重要依据。积分是一种方法。,8.3 扩频通信系统,8.3.1先扩频后调制图8-16是一个先扩频后调制的扩频通信系统框图。Subsystem(子系统)产生的二进制随机信号,采样周期为0.03,从Out1口输出。产生的二进制伪随机信号(PN码重复周期为15),采样周期为0.001,从Out口输出。子系统是自己封装的复合信号源。在一个脉冲发生器的控制下,触发产生两种采样周期的信号。,图8-16 先扩频后调制的扩频通信系统,扩频的运算是:将上述两个二进制序列直接进行异或操作。扩频后的二进制序列进入ConvolutinalEncoder(卷积编码器)。卷积编码器的Trellisstru
22、cture(格型结构)是poly2trellis(9,753561),它是IS-95CDMA正向信道卷积编码的生成多项式。经过卷积编码的二列信号经过Rebuffer(缓存器)后变为一列,以适应MDPSK(频带差分相移键控调制器)的要求。调制后的信号进入AWGN(加性高斯白噪声)SNR(信噪比)为-20dB的传输环境。以后进入接收部分,经过频带差分移频键控解调器后信号进入Rebuffer1(缓存器),又恢复为维特比卷积解码器要求的双列信号。,经过卷积解码后的二进制序列与用以扩频的二进制伪随机序列经异或操作进行解扩运算。解扩的PN码通过一个1个码元的延迟电路,是因为扩频后信号经历了缓存、卷积、解卷
23、积的运算,时间上带来了延迟,如果不加上这个延迟,将不能进行正确的解扩。图8-17是子系统打开后展示的原理框图。图8-18是Rebuffer(缓存器)参数设置对话框。表8-138-21是仿真系统中各模块的主要参数。本系统可以在SNR(信噪比)为-20dB的传输条件下得到0.2%量级的误码率。,图8-17 先扩频后调制的扩频通信系统的基带与扩频信号源,图8-18 Rebuffer(缓存器)参数设置对话框,表8-13 PulseGenerator(脉冲产生器)的主要参数,表8-14 TriggeredSignalFromWorkspace (来自工作空间的被触发的信号)的主要参数,表8-15 MDP
24、SKModulatorPassband (通带MDPSK调制器)的主要参数,表8-16 AWGNChannel (加性高斯白噪声信道)的主要参数,表8-17 ConvolutionalEncoder (卷积编码器)的主要参数,表8-18 ViterbiDecoder(维特比解码器)的主要参数,表8-19 Rebuffer(缓存器)的主要参数,表8-20 TriggeredSignalFromWorkspace (来自工作空间的被触发的信号)的主要参数,表8-21 ErrorRateCalculation(误码率计算)的主要参数,8.3.2 先调制后扩频图8-19所示是一个先调制后扩频的扩频通信
25、系统框图。RandomIntegerGenerator(随机整数发生器)产生的二进制随机信号,采样周期为0.01。信号馈入载频为3000Hz的MPSKModulatorPassband(通带MPSK调制器)调制,调制后的单列双极性的实信号被周期为31的m序列(通过Relay2(继电器)转换为双极性二进制序列)直接相乘进行扩频。扩频后的双极性二进制的信号进入AWGN(加性高斯白噪声)Es/No(信噪比)为-20dB的传输环境以后进入接收部分。信号首先进行解扩,然后进入MPSKDemodulatorPassband(通带MPSK解调器)进行解调,解调后的信号直接输入误码表。,图8-19 先调制后扩
26、频的扩频通信系统框图,扩频、解扩的方式可以使用单极性二进制码元用异或的方式,但是0的结果有时处理起来有一定困难;当信号叠加了噪声信号后已经不是二进制码时,就不能用异或方式处理。使用双极性二进制码元用相乘的方式同样可以完成扩频与解扩的运算,还可以克服上述方法的不足。表8-22表8-28分别是仿真系统中各模块的主要参数。,表8-22 PNSequenceGenerator(伪随机序列产生器)的主要参数,表8-23 RandomIntegerGenerator(随机整数发生器)的主要参数,表8-24 MPSKModulatorPassband (通带MPSK调制器)的主要参数,表8-25 MPSKD
27、emodulatorPassband (通带MPSK解调器)的主要参数,表8-26 Relay(继电器)的主要参数,表8-27 ErrorRateCalculation(误码率计算)的主要参数,表8-28 AWGNChannel(加性高斯白噪声信道)的主要参数,8.4 跳频通信系统,跳频技术与直序扩频技术完全不同,是另外一种意义上的扩频。跳频的载频受一个伪随机码的控制,在其工作带宽范围内,其频率合成器按PN伪随机码的规律不断改变频率。在接收端,接收机的频率合成器受伪随机码的控制,并保持与发射端的变化规律一致。跳频是载波频率在一定范围内不断跳变的一种扩频。跳频是瞬时的窄带通信系统,在通信的全过程
28、中工作在一个宽广的频率范围。因此跳频有着较强的抗干扰性。,图8-20所示是跳频通信的仿真系统。图8-21所示是仿真系统中MPSKModulator(调制子系统)的展开图。图8-22所示是仿真系统中MPSKDemodulator(解调子系统)的展开图。 以上两模块是在原有MPSKModulator、MPSKDemodulator的基础上改造完成的。具体方法是:(1)打开模块MPSKModulator、MPSKDemodulator,激活模块,在Edit菜单下点击Lookundermask。(2)打开模块FrequencyUpconvert、FrequencyDownconvert,方法同上。(3
29、)删去Complexcarrier(复载波)模块,将断开口接一个输入端口(in-2)。,图8-20 跳频通信的仿真系统,图8-21 跳频系统中的调制模块,图8-22 跳频系统中的解调模块,图8-23是仿真系统中Hoping(跳频)子系统的展开图。跳频信号输出就连接到上述的两个输入端口(in-2)之上。跳频信号同步地馈送到调制与解调电路的载频输入端口,从而完成了跳频系统的发射与接收任务。,图8-23 仿真系统中Hoping(跳频)子系统的展开图,跳频信号的产生过程:PNSequenceGenerator(伪随机序列发生器)产生采样周期为1/400、周期为15个码元的m序列。通过Buffer(缓存
30、器)将单列的二进制序列编排为4列二进制数,通过BittoIntegerConverter(比特到整数变换器)后变为一列十六进制整数。通过初值设为4的Unbuffer(解缓存)及ZeroOrderHold(零阶采样保持电路)(采样时间设为1/100)后,伪随机序列发生器产生的二进制序列变成了与之相应的整数,馈送到VCO(压控振荡器)的控制输入端。决定VCO的频率就是两个参数:Oscillationfrequency(振荡频率)f和Inputsensitivity(输入灵敏度)d。,它瞬时输出的频率是m=f+(d*s),式中的s就是此刻VCO的控制输入端的电压值。图8-23中设计了一个ToWork
31、space(到工作空间),接收的就是这个电压,并且取名为s。为此编了一小段程序程序8-5,可以对f、d进行赋值,更主要的目的是计算瞬时频率m,它为Transportdelay(传输延迟)即时赋值,传输延迟的时间Timedelay是1/(4*m),使得VCO输出的实信号能够与延迟/2相位的信号在RealImagtoComplex(实-虚变复数)模块中复合成复信号,再经过ZeroOrderHold零阶采样保持电路(采样时间设为1e-5)变为数字信号,以适应上述两个改造过的模块需要复信号输入的要求。,程序8-5 f=500;d=100;s=0;m=f+(d*s);sim(hop1)图8-24所示是跳
32、频系统工作时跳频信号的时域波形。上面一路是伪随机序列发生器产生相应的整数s的电压值。下面一路是与s对应的VCO压控振荡器输出的时域波形。,图8-24 跳频系统工作时跳频信号的时域波形,表8-29表8-33所示分别是仿真系统中各模块的主要参数。,表8-29 PNSequenceGenerator(伪随机序列产生器)的主要参数,表8-30 RandomIntegerGenerator(随机整数发生器)的主要参数,表8-31 MPSKModulatorPassband(通带MPSK调制器)的主要参数,表8-32 AWGNchannel(加性高斯白噪声信道)的主要参,表8-33 VCO(压控振荡器)的主要参数,此系统可以在Es/No(信噪比)为-20dB的传输环境,没有差错控制的条件下得到误码率1的通信效果。,