民用GPS卫星导航信号发生器的设计与仿真

2019-01-17 05:49郭策安
成组技术与生产现代化 2018年3期
关键词:基带原理图顶层

王 欢,郭策安

(沈阳理工大学 装备工程学院,辽宁 沈阳 110159)

1973年,美国国防部研究建立了新一代卫星导航系统“Navigation Satellite Timing and Ranging/Global Positioning System”即“授时与测距导航系统”,通常称为“全球卫星定位系统”,简称“GPS”[1].GPS系统定位精度高,全天候开放,近年来在导航定位等多方面得到了广泛的应用.GPS领域中任何研究必须首先建立真实可靠的GPS卫星信号,然后才能推广到应用中.而真实的GPS卫星信号是高频RF(Radio Frequency)信号,并夹杂于不断变化的环境噪声中,其硬件模拟方法需要考虑高频信号的传播、延时、多径干扰等因素,导致其硬件模拟设备非常复杂,而且无法模拟多种环境下的GPS卫星信号.而基于现场可编程门阵列(Field Programmable Gate Array,FPGA)[2]的GPS卫星导航信号发生器采用Xilinx公司VirtexⅣ系列的XC3S500e-4pq208芯片,加载不同的应用程序,可以很好地解决上述问题.

本文通过分析GPS信号发生器中伪随机序列对载波的调制,以及伪随机序列与基带速率进行异或运算后生成复合码的过程,运用扩频通信的生成原理和技术理论,对GPS卫星导航信号发生器进行设计,并采用Modelsim软件进行仿真.这一研究有利于优化GPS信号发生器中数字信号基带处理过程,进一步提高其抗干扰性和保密性,对开发GPS信号发生器产品以及相关领域的研究工作都具有重要的意义.

1 GPS信号发生器的设计

1.1 顶层模块的设计

本文基于FPGA,主要对分频模块、Gold码发生器模块和二进制相移键控(Binary Phase Shift Keying,BPSK)调制模块进行设计,在实现较为精确的伪随机码同步后,用扩频模块进行频谱拓宽,加入载波,并采用BPSK的调制方式进行调制.顶层模块的原理如图1所示.

图1 顶层模块原理图

对设计程序进行综合、仿真等一系列操作后,可将具有特定功能的设计实体定义为一个元件.顶层模块的主要功能是通过元件例化[3],描述元件之间端口界面的连接状况,把电路设计元件或子模块连接成一个完整的电路.图2所示为综合FPGA程序后得到的顶层模块的综合原理图.

图2 顶层模块的综合原理图

在图2中,左边的输入信号包括时钟信号Clk、复位信号Reset,右边的输出信号为Out1和Sine(5∶0).Out1是伪随机码与基带速率异或运算后的输出,Sine(5∶0)是直接数字式频率合成器(Direct Digital Synthesizer,DDS)输出的正弦载波经BPSK调制的信号波.

1.2 分频模块的设计

时钟分频器[4]一般分为如下两种:一种是将单一频率信号的频率降低为原来的1/k(可称作k分频方法);另一种是将信号中不同频率成分的各种信号分成几个频率段.本文采用k分频的分频器,首先对100 MHz进行50分频,将其降到2 MHz,接着对2 MHz进行40分频,将频率降到50 kHz.图3所示为采用k分频方法的时钟分频电路图.图4所示为综合FPGA程序后得到的时钟分频器的综合原理图.

图3 时钟分频电路图

图4 时钟分频器的综合原理图

分频模块程序的关键语句如下:

if count1="11000" then

count1<="00000";

clk_2Mtemp <= not clk_2Mtemp ;

else

count1<=count1+"00001";

clk_2M <= clk_2Mtemp.

1.3 码发生器模块的设计

C/A码是伪随机码,又称为伪随机序列.在GPS C/A码发生器[5]中,通常采用反馈型移位寄存器来产生伪随机序列.C/A码发生器主要由一个时钟分频器和两个带反馈的线性码发生器组成.GPS信号发生器生成的C/A码的码长N=1 023位,码元宽度T0=0.977 52 μs,周期T=NT0=1 ms,基码速率为1.023 Mbit/s.C/A码的生成过程如图5所示.

图5 C/A码的生成过程

由C/A码的设计规范可知,C/A码为Gold组合码,是由两个10级移位寄存器产生的.移位寄存器G1的反馈抽头连接在第3,10级上,G2的5个反馈抽头分别为第2,3,6,9,10级.这些寄存器的状态信息由异或电路运算后反馈到第1级.

码发生器模块程序的关键语句如下:

temp1 <= G1(2) xor G1(9);

G1<=G1(8 DOWNTO 0)& temp1;

temp2 <= G2(5) xor G2(4));

G2<=G2(8 DOWNTO 0)& temp2.

图6所示为综合FPGA程序后得到的码发生器模块的综合原理图.

图6 码发生器模块的综合原理图

1.4 BPSK调制模块的设计

在二进制数字调制[6-7]中,当正弦载波的相位随二进制数字基带信号离散变化时,将产生BPSK信号.通常用一条信号载波的0°相位和180°相位分别表示二进制数字基带信号的1和0.BPSK信号的时域表达式为:

uBPSK(t)=Acos(ωct+φn)

(1)

式中:A为载波信号的振幅;ωc为载波信号的角频率;φn为载波信号第n个符号的绝对相位,且取值为0或π.当发送二进制符号1时,已调信号uBPSK(t)取0°相位,而发送二进制符号0时,uBPSK(t)取180°相位.

BPSK信号的波形如图7所示.

采用直接序列扩频得到的信号来调制正弦载波,能够输出预期的调制波信号(GPS卫星导航模拟信号).

BPSK调制模块的关键语句为:

if out2=‘0’ then

sine <= sine1;

else sine <= “111111”-sine1+“000001”.

图8所示为综合FPGA程序后得到的BPSK调制模块的综合原理图.

图7 BPSK信号的波形

图8 BPSK调制模块的综合原理图

将调制模块的复位端Reset设为“1”,当Out2为“0”且Clk为上升沿时,信号Sine波形与DDS波形相同;当Out2为“1”且Clk为上升沿时,信号Sine波形与DDS波形的相位相反,即信号Sine波形发生翻转.

2 GPS信号发生器的仿真及其结果分析

2.1 时钟分频电路仿真

采用Xilinx公司VirtexⅣ系列的XC3S500e-4pq208芯片,通过Modelsim软件进行仿真时,时钟频率设置为100 MHz,仿真时间设置为10 μs.

在时钟分频电路中,50分频模块的输入时钟信号Clk为100 MHz的系统时钟,进行50分频后,输出为2 MHz的时钟信号“Clk_2 MHz”(图9).

图9 100 MHz时钟分频至2 MHz的分频模块运行结果

经过50分频输出的“Clk_2 MHz”时钟信号,作为40分频模块的输入时钟信号,即此时的输入时钟信号为2 MHz,进行40分频后,输出为50 kHz的时钟信号“Clk_50 kHz”(图10).

图10 2 MHz时钟分频至50 kHz的分频模块运行结果

2.2 码发生器仿真

码发生器是本文获得GPS卫星导航信号发生器调制信号的基础.选择不同的卫星信号可以产生不同的C/A码,只有获得正确的C/A码才能进行后续调制.本文选择0号测试卫星的信号进行GPS卫星导航信号发生器的仿真设计与实现.

C/A码发生器模块输入的时钟信号Clkin为2 MHz,仿真运行后可得到0号卫星的伪随机码CA_OUT(图11).

图11 0号卫星的伪随机码仿真结果

2.3 顶层模块仿真

顶层模块是一个特殊的模块,经过综合可被看作电路模块的“封装”体.它的主要功能是对时钟分频电路模块、码发生器模块和BPSK调制模块进行例化封装[7],使得3个子模块连接成一个完整的电路.在顶层模块中,通过例化后3个子模块的输入和输出可检验各子模块的正确性.卫星导航信号发生器的顶层模块仿真波形如图12所示.

图12 卫星导航信号发生器的顶层模块仿真波形

由图12可知:“Clk_50 kHz”为基带速率;C/A码与基带速率的异或运算可生成“Out1”;“Sine”是分频模块和码发生器模块加入“20 MHz DDS”载波与D触发器,经BPSK调制而最终形成的信号,即GPS信号发生器发出的信号.

3 结束语

本文在分析GPS导航信号形成过程的基础上,设计了时钟分频模块、C/A码发生器模块和BPSK载波调制模块,采用硬件描述语言编程,通过FPGA/Modelsim平台仿真验证,实现了0号卫星GPS导航信号发生器的仿真设计.所设计的民用GPS卫星导航信号发生器在数字信号基带处理过程中具有较优越的性能,保密性和抗干扰性强.在硬件设计中,为便于验证、说明和调试,对信号参数进行了映射处理,这与卫星信号的实际参数不完全一致.此外,对加入噪声的情况也考虑不周.这些不足均需在今后工作中进一步完善.

猜你喜欢
基带原理图顶层
Ag元素对Ni-7at.%W合金基带织构形成的影响
浅谈STM32核心板原理图设计
汽车顶层上的乘客
电路原理图自动布图系统的设计与实现
电气CAD原理图数据提取与辅助建模
基于Protel DXP 2004层次原理图的设计
苹果10亿美元为5G买“芯”
加快顶层设计
健康卡“卡”在顶层没联网
基于FPGA的WSN数字基带成形滤波器设计