接收机对GPS卫星的信号处理过程,可以依次分为捕获、跟踪、位同步和帧同步4个阶段。由于位同步、帧同步均需要以数据解调为前提条件,除了幅度调制及频率调制可以采用非相干解调外,大部分调制方式都采用相干解调以获取更好的性能,而进行相干解调,接收端就必须提取相干载波。载波同步的性能直接影响着通信系统的性能。针对GPS信号的BPSK调制和强度微弱等特点,GPS接收机锁相环通常采用I/Q解调法来帮助完成对输入信号的下变频、鉴相和数据解调等任务。自同步法是工程上广泛应用的一种载波同步方式。自同步法主要有锁相环、平方环、Costas环和判决反馈环等。目前工程上最常用的抑制载波跟踪环是平方环和Costas环等。由于Costas环不需要对接收信号进行平方变换,也不需要对锁相环路中DDS输出的载波信号进行分频处理,因此实现复杂度更小些,所耗费的硬件资源也更少。模拟GPS接收机基带数字信号处理过程,首先介绍了科斯塔斯(Costas)接收机的工作原理,分析研究了基于现场可编程门阵列(field-programmable gate array,FPGA)的软件无线电载波同步技术的实现方法,并采用Costas环实现了载波同步,性能测试验证了设计的正确性和可行性,对实际应用具有一定的指导价值。
1 Costas接收机的工作原理
J. P. Costas在1956年首先提出采用同相―正交环来恢复载波信号,随后Riter证明跟踪低信噪比的抑制载波信号的最佳装置是Costas环及平方环。传统的模拟Costas环因存在同相支路与正交支路的不平衡性从而使环路的性能受到一定影响,且模拟电路还存在直流零点漂移、难以调试等缺点,而采用全数字的实现方式,则可以有效避免这些问题。
Costas环的工作原理如图 1所示,主要由数字频率合成器(direct digital frequency synthesizers,DDS)、数字鉴相器(乘法器)、伪码发生器(pn_gen)、低通滤波器(LPF)和环路滤波器(LF)等组成。由于它是由输入信号分别乘以同相和正交两路载波信号,因此常称这种环路为同相―正交环,也称为科斯塔斯环(Costas)。输入信号经上、下支路分别乘以同相和正交载波,然后再与伪码进行相乘,并通过低通滤波器后再相乘,完成鉴相功能,最后经环路滤波器输出控制本地振荡器的误差电压。
设输入BPSK调制信号为 S(t) = SBPSK(t) = PN(t) m(t) cos(wct) , 式中:PN(t)为伪码信号,m(t)为基带信号,cos(wct)为载波信号。
环路锁定时,DDS输出的是与发送信号频率相同相位差为φ的相干载波,记作 UDDS(t) = cos(wct +φ) 此信号和它经π/2相移后的正交信号分别在同相支路和正交支路,首先与输入信号进行混频可实现对输入信号的下变频,然后再与伪码进行相乘,得
i(t) = S(t) UDDS(t) PN(t)
因为 PN(t)2=1,经过低通滤波器后的输出分别为
由于q0(t)和i0(t)都包含有调制信号,因此将它们再相乘可消除调制信号的影响,得 由此可见,Costas环DDS的误差控制信号与调制信号无关,只取决于相位差。因为锁相环锁定时,相位差很小,有
所以,同相支路的输出就是解调后的基带信号。2 系统设计与实现 2.1 参数选取
全数字载波环系统参数设计为: 数据速率4 MHz;伪码速率10 MHz; 载波频率70 MHz;系统时钟100 MHz; 中频采样后的载波频率6 MHz; 信道带宽20 MHz;调制方式为BPSK。
2.2 系统设计
1)直接数字频率合成器的设计与实现
直接数字频率合成器的基本工作原理框图如图 2所示。
直接数字频率合成器(DDS)用于产生频率及相位可控的正、余弦信号。DDS的基本工作原理是在时钟信号的驱动下读取三角函数表。在FPGA实现中,通常采用ISE工具提供的DDS核来实现。
DDS的设计直接采用ISE提供的DDS核即可。设计者需要确定的主要参数有DDS相位累加字位宽(频率字位宽)BDDS、驱动时钟频率fclk、输出数据位宽A等参数。环路中,DDS的输出数据位数A通常与输入数据位数Bdata相同,即A=Bdata。当然,DDS的输出数据位数也可以根据实际情况进行调整,DDS的输出数据位数越多,则本地振荡器输出信号的旁瓣抑制比(spurious free dynamic range,SFDR)性能越好,系统所耗费的硬件资源也越多。DDS的旁瓣抑制满足A/D转换的字长效应,输出波形的位宽每增加1 bit,其旁瓣抑制比就提升6 dB。即FPGA内部的任何一点信号,每多用1 bit,其信噪比提升6 dB。DDS的驱动时钟频率fclk通常与输入数据采样速率fs相同,即fclk=fs。相位累加字位宽不仅影响到整个环路的总增益,更重要的是直接决定了更新频率字所能达到的频率分辨率,工程上通常需要频率分辨率小于1 Hz。其中频率字Δθ、输出频率fout、频率字位宽BDDS之间的关系为
这样就可以通过改变频率控制字Δθ来改变输出频率。从原理中可以看出,DDS所能产生的最小频率为fout=fclk/2Bdds,这个频率被称为是DDS的分辨率。显然,增加频率字位数BDDS,可以产生更小频率的信号,提高频率的分辨率。在设计整个载波同步环路时,环路的总增益是一个非常重要的参数,而其中DDS的增益KDDS为 式中:TDDS为DDS频率字更新周期。显然,频率字位数越多,DDS的增益越小;频率字更新周期越长,DDS增益越大。DDS的仿真波形如图 3所示。系统仿真是由Modelsim10.1a软件实现的。
2)伪码发生器的设计与实现
GPS从根本上讲是一个基于码分多址(code division multiple access,CDMA)的扩频(spread spectrum,SS)通信系统。扩频调制是通过伪随机码或伪随机序列来实现的。GPS采用的GOLD序列就是由m序列优选对产生的,其目的之一是用来实现码分多址,目的之二是用来测距。
m序列码发生器是一种反馈移位型结构的电路,它由n位移位寄存器加异或反馈网络组成,其序列长度M=2n-1,只有一个冗余状态即全0状态,所以称为最大线性码发生器。
由于其结构已定型,且反馈函数和连接形式都有一定规律,因此利用查表就可以设计出m序列码。表 1列出了部分m序列码的反馈函数和移位寄存器位数n的对应关系。如果给定一个序列信号长度M,则根据M=2n-1求出n,由n查表便可得到相应的反馈函数。
考虑用长度m=5的线性反馈移位寄存器产生一个m序列。从表 1中选择[3, 5]作为反馈连接,编写相应代码进行仿真,结果如图 4所示(初始状态为00001)。系统仿真是由Modelsim10.1a软件实现的。通过仿真波形可以看出,伪码发生器输出的序列为1000010010110011111000110111010…,码序列周期M=31。
3)低通滤波器的设计与实现
滤波器是数字信号处理中十分常用的模块之一,一般来讲,对于一些比较复杂的通用数字运算或处理需求,如果目标器件及开发工具提供相应的IP核,则一般选用IP核进行设计,这样不仅可以提高设计效率,同时也可以保证系统的性能。
Xilinx 公司作为世界上最大的 FPGA/CPLD 生产商之一,多年来一直占据行业领先的地位。Xilinx 的 FPGA/CPLD 具有高性能、高集成度和高性价比的优点,而且它还提供了功能全面的开发工具和丰富的IP核、宏功能等。ISE(intergrated synthesis environment)是Xilinx FPGA/CPLD 的综合性集成设计平台,利用该平台可完成从设计输入、仿真、逻辑综合、布局布线与实现、时序分析、程序下载与配置、功耗分析等 整个FPGA/CPLD 的开发过程,其最新版本为ISE14.7 Suit系列。ISE 13.1提供了功能十分强大的FIR核FIR Compiler v5.0。FIR核进行配置后,即可以使用。
FIR Compiler v5.0核可根据用户需要,选择生成乘/加结构(multiply-accumulate,MAC )或分布式结构(distributed arithmatic,DA)的滤波器;最多可同时支持256个通道;抽头系数从2~1 024,输入数据位宽及滤波器系数最多可支持49 bit,能够自动发掘系数的对称性来节省资源。
首先用MATLAB仿真低通滤波器系数,对滤波器系数进行n位量化,并将滤波器系数存入FPGA所需的COE文件。然后,用FIR滤波器进行设计和实现。 低通滤波器(lowpass filter,LPF)的仿真波形如图 5所示。系统仿真由Modelsim10.1a软件实现。
4)数字鉴相器的设计
数字鉴相器原理图如图 6所示。
根据图 1 Costas环的工作原理,鉴相器实际上是同相支路与正交支路的乘法运算。在FPGA实现过程中,乘法运算不仅需要耗费较大的硬件资源,且运算速度也会受到一定限制。工程上通常取同相支路的符号位作为过零检测脉冲,并与正交支路进行异或运算。
5)数字环路滤波器的设计
数字环路滤波器的结构如图 7所示。
环路滤波器在Costas接收机中起着非常重要的作用。它具有低通特性,一方面可以起低通滤波器的作用,更重要的是它对环路参数调整起着决定性的作用。在模拟电路中,常用的环路滤波器有RC积分滤波器、无源比例积分滤波器和有源比例积分滤波器。其中高增益的有源比例积分滤波器因其性能优良,是锁相环中应用最为广泛的滤波器(理想积分滤波器)。数字环路滤波器设计的关键问题在于获取滤波器系数C1、C2。 对于理想积分滤波器来讲,其数字化系统函数表示为
式中:ξ为环路无阻尼系数,对于理想二阶锁相环来讲,工程上一般取0.707;wn为环路无阻尼振荡频率(自然角频率);T为数据采样周期,T=1/fs ;K为总增益;C1、C2为环路滤波器的系数。 环路总增益是一个非常重要的参数,其计算方法为 式中:Blp为环路滤波器输出的有效数据位数,N为DDS的相位累加字位宽,TDDS为频率字更新周期,fs为数据采样时钟频率。确定好环路总增益、环路自然角频率后,就可以设计出环路滤波器的系数C1、C2,从而完成整个环路滤波器参数的设计。由于在Costas环设计中,N=34,Blp=30,取TDDS=8/fs,可计算得出K=0.785 4,C1=0.053 0,C2=0.001 1,系统函数的极点为0.979 2±0.020 4 i,因此系统是稳定的。
3 系统实现与仿真
图 8为系统设计在Xilinx ISE开发平台下实现后的仿真波形。系统仿真是由Modelsim10.1a软件实现的。根据无线电技术的惯例,以二进制数“0”代表正电平(+1),以二进制数“1”代表负电平(-1)。从I、Q支路输出波形可以看出,BPSK调制后,在伪码发生器输出“0”时,载波相位状态不变,在伪码发生器输出“1”时,载波相位会有180o跳变。
通过仿真波形还可以看出,对于不知道伪随机码(PN码)的用户而言,扩频后的信号简直就是噪声。FPGA实现后,可以在ISE界面十分方便地查看到整个系统所占用的硬件资源及最高系统运算速度。其中,Slice Registers(寄存器资源)使用了759个,占3%; Slice LUTs(查找表资源)使用了631个,占3%; BlockRAM/FIFO使用了1个,占3%;BUFG/BUFGCTRLs(全局时钟资源)使用了1个,占3%;DSP48Es使用了8个,占25%。 Minimum period: 7.958ns{1} (Maximum frequency: 125.660 MHz) 最高系统时钟频率可达125.660 MHz,显然满足设计要求的100 MHz。
4 结束语
GPS接收机对信号的跟踪主要是借助载波环和码环来完成的。载波环通过复制一个与接收载波信号的相位或频率相一致的载波,然后让接收信号与复制载波进行相乘混频,以实现对输入信号的下变频,从中获得对接收载波信号的相位或频率的测量值,并且解调出接收信号上所调制的导航电文数据比特。载波同步的性能直接影响着通信系统的性能。全数字的载波同步环对GPS接收机来讲就非常重要。
[1] | HAYKIN S. 通信系统:4版[M]. 宋铁成,等译. 北京:电子工业出版社,2012:75-89. |
[2] | 谢钢.GPS原理与接收机设计[M]. 北京:电子工业出版社,2009:16-40. |
[3] | 赵刚.扩频通信系统实用仿真技术[M]. 北京:国防工业出版社,2009:150-155. |
[4] | 杜勇.数字通信同步技术的MATLAB与FPGA实现[M].北京:电子工业出版社,2013:97-138. |
[5] | 杜勇,路建功,李元洲.数字滤波器的MATLAB与FPGA实现[M].北京:电子工业出版社, 2012: 300-342. |
[6] | 何宾. Xilinx FPGA设计权威指南[M].北京:清华大学出版社, 2012: 418-460. |
[7] | 徐文波,田耕. Xilinx FPGA开发实用教程[M].北京:清华大学出版社, 2012: 123-194. |
[8] | 杨颂华,冯毛官,孙万蓉,等.数字电子技术基础:2版[M].西安:西安电子科技大学出版社, 2009: 165-171. |
[9] | COSTAS J P. Synchronous communications[J]. Proceedings of the IRE, 1956, 44(12): 1713-1718. |
[10] | RITER S. An optimum phase reference detector for fully modulated phase shift keyed signal[J]. IEEE Transactions on Aerospace and Electronic Systems,1969, 4(7):627-631. |
[11] | MECHLENBRAUKER W F G. Remarks on the zero-input behaviour of second order digital filters designed with one magnitude truncation quantiser[J]. IEEE T-ASSP, 1975, 23(3): 240-242. |