CN106772475B - 一种基于fpga捕获微弱gps导航信号的电路及方法 - Google Patents
一种基于fpga捕获微弱gps导航信号的电路及方法 Download PDFInfo
- Publication number
- CN106772475B CN106772475B CN201611207965.3A CN201611207965A CN106772475B CN 106772475 B CN106772475 B CN 106772475B CN 201611207965 A CN201611207965 A CN 201611207965A CN 106772475 B CN106772475 B CN 106772475B
- Authority
- CN
- China
- Prior art keywords
- module
- code
- data
- clock
- intermediate frequency
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 18
- 238000005070 sampling Methods 0.000 claims abstract description 90
- 238000013500 data storage Methods 0.000 claims abstract description 37
- 238000001514 detection method Methods 0.000 claims abstract description 15
- 230000015654 memory Effects 0.000 claims description 22
- 238000009825 accumulation Methods 0.000 claims description 21
- 238000006243 chemical reaction Methods 0.000 claims description 20
- 230000021615 conjugation Effects 0.000 claims description 3
- 239000000969 carrier Substances 0.000 claims 2
- 230000035945 sensitivity Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 18
- 238000004364 calculation method Methods 0.000 description 7
- 238000013461 design Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/24—Acquisition or tracking or demodulation of signals transmitted by the system
- G01S19/29—Acquisition or tracking or demodulation of signals transmitted by the system carrier including Doppler, related
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/24—Acquisition or tracking or demodulation of signals transmitted by the system
- G01S19/30—Acquisition or tracking or demodulation of signals transmitted by the system code related
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Digital Transmission Methods That Use Modulated Carrier Waves (AREA)
- Complex Calculations (AREA)
Abstract
本发明公开了一种基于FPGA捕获微弱GPS导航信号的电路及方法。电路包括时钟发生模块、时钟分频模块、中频数据接收控制模块、中频数据接收模块、C/A码发生模块、载波生成与剥离模块、C/A码平均采样模块、C/A码平均采样数据存储模块、同相正交平均采样模块、同相正交平均采样数据存储模块、同相正交FFT模块、C/A码FFT模块、复数乘法模块、复数乘法结果存储模块、IFFT模块、相关值存储模块以及峰值检测模块;采用本方法既节省了资源,又克服了易产生时序问题;通过连续8ms信号相关结果的非相干累加检测峰值,提升了信号捕获灵敏度。平均捕获时间为110ms,精度为半个码片,实现了微弱信号的快速、精确捕获。
Description
技术领域
本发明涉及GPS导航系统,特别是涉及一种基于FPGA捕获微弱GPS导航信号的电路及方法。
背景技术
近年来,GPS导航系统在世界范围内得到了广泛的应用,同时受到了国内外科研人员的关注,其中信号捕获为该领域的技术难点和核心部分。卫星信号捕获本质上是将接收信号与本地复现的伪码和载波进行二维搜索计算相关值,从而找到初始码相位和载频。其中顺序法捕获法通过滑动来计算出相关峰值,此方法实现简单,但是非常耗费时间,不满足实时性的要求。现今捕获方法大多采用并行法,但该方法耗费更多硬件资源,实现较困难。在利用有限硬件资源的前提下开发出实时性好、精度高并且针对微弱信号具有较高捕获灵敏度的接收机满足社会生活各方面需求仍然是一项艰巨任务。
发明内容
鉴于现有技术状况,本发明提供一种基于FPGA捕获微弱GPS导航信号的电路及方法。本设计的FPGA芯片采用Xilinx公司kintex_7系列的xc7k325t,封装形式为FFG676。本设计能够成功复现出本地C/A码和频率可控的正余弦载波信号,通过基于累加点数存储器的分段累加操作实现平均采样,再通过几个分时复用的数据暂存存储器和FFT、IFFT模块以及相应的控制信号在节约硬件资源的情况下快速计算出相关结果,并通过8ms相关结果的非相干累加实现微弱信号的精确、成功捕获。
本发明采取的技术方案是:一种基于FPGA捕获微弱GPS导航信号的电路,其特征在于:包括时钟发生模块、时钟分频模块、中频数据接收控制模块、中频数据接收模块、C/A码发生模块、载波生成与剥离模块、C/A码平均采样模块、C/A码平均采样数据存储模块、同相正交平均采样模块、同相正交平均采样数据存储模块、同相正交FFT模块、C/A码FFT模块、复数乘法模块、复数乘法结果存储模块、IFFT模块、相关值存储模块以及峰值检测模块;其中时钟发生模块分别与时钟分频模块、中频数据接收控制模块、载波生成与剥离模块相连接,中频数据接收控制模块与中频数据接收模块相连接,中频数据接收模块与载波生成与剥离模块相连接,载波生成与剥离模块与同相正交平均采样模块相连接,同相正交平均采样模块与同相正交平均采样数据存储模块相连接,同相正交平均采样数据存储模块与同相正交FFT模块相连接,时钟分频模块与C/A码发生模块相连接,C/A码发生模块与C/A码平均采样模块相连接,C/A码平均采样模块与C/A码平均采样数据存储模块相连接,C/A码平均采样数据存储模块与C/A码FFT模块相连接,同相正交FFT模块和C/A码FFT模块同时与复数乘法模块相连接,复数乘法模块与复数乘法结果存储模块相连接,复数乘法结果存储模块与IFFT模块相连接,IFFT模块与相关值存储模块相连接,相关值存储模块与峰值检测模块相连接。
本发明所述的一种基于FPGA捕获微弱GPS导航信号的电路的实现方法,其特征在于:所述的时钟发生模块产生62MHZ和10.23MHZ的时钟,其中62MHZ时钟控制中频数据采样以及除C/A码发生模块外所有模块的驱动,10.23MHZ时钟通过时钟分频模块十分频后产生1.023MHZ的时钟控制C/A码发生模块;中频数据接收控制模块通过外部控制信号和内部计数控制信号的逻辑与运算精确控制1ms中频数据读入,C/A码发生模块在1.023MHZ控制下产生C/A码;载波生成与剥离模块通过每一个时钟沿将累加步长写入到32位的累加寄存器中,并根据累加寄存器高四位的数值对一个周期的载波相位进行十六等分,再根据相位值到幅度值的映射以产生频率可控的正余弦载波,并将其分别与中频数据相乘产生同相和正交数据;平均采样模块中内置一个累加点数存储器用于存储每一个平均采样数据需要的累加点数;平均采样模块根据累加点数存储器中的值将1ms的C/A码和同相正交数据由62MHZ时钟采样后分段累加成2048个采样点存入平均采样数据存储模块,存满后输出一个高脉冲连接到FFT模块的起始信号端口,并依据输入索引读取平均采样数据存储模块中的数据,当FFT模块的输出数据有效时,启动复数乘法模块,将C/A码变换结果取共轭后,与同相正交数据变换结果进行复数相乘并存入复数乘法结果存储模块,存满后启动IFFT模块,并依次读取复数乘法结果存储模块中的数据,IFFT模块的输出数据即为相关值;将连续8ms相关结果进行非相干累加后,存入相关值存储模块,最后启动相关峰值检测模块计算出主次峰值,并与设定门限进行对比判定是否捕获成功。
本发明的特点是:在中频数据接收使能控制方面采取外部信号与内部计数信号共同控制的方法,保证每次接收的中频数据长度刚好为1ms。在平均采样过程中采用块存储器储存累加点数的方法代替时钟沿累加,既节省了FPGA内宝贵的时钟资源,又克服了时钟沿累加法易产生时序问题的缺陷。在数据处理方面,FFT、IFFT模块和各存储器采用了分时复用的原则,节省了硬件资源,并且在输出和储存1ms处理结果的时候可以同时进行下1ms输入数据的计算和暂存,大大缩减了捕获的时间。通过连续8ms信号相关结果的非相干累加检测峰值,提升了信号捕获灵敏度。实验测试表明,本设计的平均捕获时间为110ms,精度为半个码片,在节省硬件资源的前提下,能够实现微弱信号的快速、精确捕获。
附图说明
图1为本发明的基本连接框图;
图2为本发明捕获微弱GPS导航信号的基本流程图;
图3为图1中的时钟发生模块引脚图;
图4为图1中的时钟分频模块引脚图;
图5为图1中的中频数据接收控制模块引脚图;
图6为图1中的中频数据接收模块引脚图;
图7为图1中的C/A码发生模块引脚图;
图8为图1中的载波发生与剥离模块引脚图;
图9为图1中的C/A码平均采样模块引脚图;
图10为图1中的同相正交平均采样模块引脚图;
图11为图1中的C/A码平均采样数据存储模块引脚图;
图12为图1中的同相正交平均采样数据存储模块引脚图;
图13为图1中的C/A码FFT模块引脚图;
图14为图1中的同相正交FFT模块引脚图;
图15为图1中的复数乘法模块引脚图;
图16为图1中的复数乘法结果存储模块引脚图;
图17为图1中的IFFT模块引脚图;
图18为图1中的相关值存储模块引脚图;
图19为图1中的峰值检测模块引脚图。
具体实施方式
以下结合附图对本发明作进一步说明:
如图1所示,本设计包括时钟发生模块、时钟分频模块、中频数据接收控制模块、中频数据接收模块、C/A码发生模块、载波生成与剥离模块、C/A码平均采样模块、C/A码平均采样数据存储模块、同相正交平均采样模块、同相正交平均采样数据存储模块、同相正交FFT(傅里叶变换)模块、C/A码FFT模块、复数乘法模块、复数乘法结果存储模块、IFFT(傅里叶反变换)模块、相关值存储模块以及峰值检测模块;其中时钟发生模块分别与时钟分频模块、中频数据接收控制模块、载波生成与剥离模块相连接,中频数据接收控制模块与中频数据接收模块相连接,中频数据接收模块与载波生成与剥离模块相连接,载波生成与剥离模块与同相正交平均采样模块相连接,同相正交平均采样模块与同相正交平均采样数据存储模块相连接,同相正交平均采样数据存储模块与同相正交FFT模块相连接,时钟分频模块与C/A码发生模块相连接,C/A码发生模块与C/A码平均采样模块相连接,C/A码平均采样模块与C/A码平均采样数据存储模块相连接,C/A码平均采样数据存储模块与C/A码FFT模块相连接,同相正交FFT模块和C/A码FFT模块同时与复数乘法模块相连接,复数乘法模块与复数乘法结果存储模块相连接,复数乘法结果存储模块与IFFT模块相连接,IFFT模块与相关值存储模块相连接,相关值存储模块与峰值检测模块相连接。
如图2所示,时钟发生模块产生62MHZ和10.23MHZ的时钟,其中62MHZ时钟控制中频数据采样以及除C/A码发生模块外所有模块的驱动,10.23MHZ时钟通过时钟分频模块十分频后产生1.023MHZ的时钟控制C/A码发生模块;中频数据接收控制模块通过外部控制信号和内部计数控制信号的逻辑与运算精确控制1ms中频数据读入,C/A码发生模块在1.023MHZ控制下产生C/A码;载波生成与剥离模块通过每一个时钟沿将累加步长写入到32位的累加寄存器中,并根据累加寄存器高四位的数值对一个周期的载波相位进行十六等分,再根据相位值到幅度值的映射以产生频率可控的正余弦载波,并将其分别与中频数据相乘产生同相和正交数据;平均采样模块中内置一个累加点数存储器用于存储每一个平均采样数据需要的累加点数;平均采样模块根据累加点数存储器中的值将1ms的C/A码和同相正交数据由62MHZ时钟采样后分段累加成2048个采样点存入平均采样数据存储模块,存满后输出一个高脉冲连接到FFT模块的起始信号端口,并依据输入索引读取平均采样数据存储模块中的数据,当FFT模块的输出数据有效时,启动复数乘法模块,将C/A码变换结果取共轭后,与同相正交数据变换结果进行复数相乘并存入复数乘法结果存储模块,存满后启动IFFT模块,并依次读取复数乘法结果存储模块中的数据,IFFT模块的输出数据即为相关值;将连续8ms相关结果进行非相干累加后,存入相关值存储模块,最后启动相关峰值检测模块计算出主次峰值,并与设定门限进行对比判定是否捕获成功。
如图3所示,时钟发生模块通过IP核实现,输出信号CLK_OUT1和CLK_OUT2分别为62MHZ和10.23MHZ的输出时钟。时钟发生模块的LOCKED为锁定信号,当输出时钟稳定时,该端口持续输出高电平。
如图4所示,时钟分频模块用于对10.23MHZ的时钟进行十分频产生稳定的1.023MHZ的时钟,用于驱动C/A码。时钟分频模块的clk_in端口为输入时钟,连接10.23MHZ时钟,模块内置计数器,当计数到5时,计数器清零,并使输出时钟翻转。时钟分频模块的re_clk_div端口为复位信号,此信号为高电平时输出时钟复位到0,并且计数器清零。时钟分频模块的clk_div_en端口为分频使能信号,连接时钟发生模块的LOCKED端口,当时钟发生模块产生稳定时钟时,时钟分频模块开始有效,时钟分频模块的clk_out输出端口为稳定的1.023MHZ时钟。
如图5所示,中频数据接收控制模块通过外部控制信号和内部计数控制信号的与运算控制中频数据的接收,clk62M输入端口连接62MHZ的时钟。rec_en端口为外部控制信号,当C/A码开始有效时置为高电平。内部计数控制信号为寄存器型,初始值为1。模块内置初值为0的计数器,当中频数据接收控制模块的rec_en端口为高电平时,此时两个控制信号的与运算即IF_en信号为高电平,此时开始接收中频数据,并且计数器在输入时钟控制下递增,当计数器计满62000个数即1ms中频数据时,内部计数控制信号置0,此时IF_en信号为低电平,停止数据接收。中频数据接收控制模块的rst_IF_rec端口为复位信号,当此信号为高电平时,内部计数控制信号恢复到低电平,且计数器清零。
如图6所示,中频数据接收模块的clk_IF端口为62MHZ输入时钟。中频数据接收模块的IF_en端口为接收有效信号,当此信号为高电平时,在输入时钟控制下产生数字10位数字中频数据IF_data。
如图7所示,C/A码发生模块的clk_1023端口为时钟驱动信号,连接1.023MHZ时钟。Sel端口为卫星号选择端口。C/A码发生模块的ca_en端口为使能信号,连接到时钟发生模块的LOCKED端口,当此信号为高电平时,模块内的两个十位移位寄存器开始进行移位,并按照卫星号确定时延进行输出结果的异或运算产生特定的C/A码,C/A码发生模块的gold_out端口为产生的C/A码,C/A码发生模块的ca_start端口为C/A码有效信号,初值为0,在C/A码发生模块的ca_en端口为高电平之后的第一个有效时钟沿置1,此时C/A码开始有效输出,此信号连接到中频数据接收控制模块的rec_en端口。C/A码发生模块的ca_rst端口为复位信号,C/A码发生模块的ca_rec_rst端口为反馈复位信号,当这两个信号其中之一出现高电平时,将移位寄存器初始化。
如图8所示,载波生成和剥离模块的carr_enable端口为使能信号,该端口连接C/A码发生模块的ca_start端口,此信号有效时,在输入的62MHZ时钟控制下,32位累加寄存器对频率控制字进行线性累加,再通过累加寄存器的高四位映射出特定幅度的正余弦值。载波的频率计算方法如下所示:
其中fclk为62MHZ的输入时钟,incr为控制步长,f为载波频率。中频频率为46.42MHZ,对应的步长为3215683579,每次多普勒搜索的步长为500HZ,对应的控制字数值变化为34637。通过此方法复现出46.42MHZ(中频频率)加上-5000HZ至+5000HZ多普勒频移的正余弦载波,并与中频数据分别相乘产生同相、正交两路数据。载波生成和剥离模块的carr_rst端口为复位信号,此信号为高电平时,累加寄存器清零。载波生成和剥离模块的carr_change端口为反馈信号,此信号有效时,将累加寄存器清零,并将频率控制字改变34637以搜索下一个多普勒频率。载波生成和剥离模块的I、Q端口分别为剥离载波后的同相、正交数据,载波发生与剥离模块的incr_out端口为此时的步进值。
如图9、图10所示,C/A码平均采样模块通过分段累加用于对1ms的C/A码和同相正交数据下采样成2048点。通过计算得出1488个平均采样数据,采用30点累加,560个平均采样数据采用31点累加,再算出每一个平均采样数据需要的累加点数,存储在深度为2048的累加点数存储器中,计算方法如下:
average=62000/2048=30.27342375 (2)
accu_ram(i)=round(average*i)-round(average*(i-1)) (3)
其中accu_ram(i)表示第i个平均采样数据的累加点数,即累加点数存储器第i个地址的值,round表示最接近的整数。C/A码平均采样模块的ca_aver_en端口和同相正交平均采样模块的IQ_aver_en端口为使能信号,连接到C/A码发生模块的ca_start端口,此信号有效时,在输入的62MHZ时钟驱动下,依据累加点数存储器的值对伪码和同相正交数据进行累加,当累加完与累加点数存储器的值个数相等数据后将地址值加一,与此同时,将C/A码平均采样模块的存储使能信号ca_ram_en和同相正交平均采样模块的IQ_ram_en端口置为高电平,并且C/A码平均采样模块和同相正交平均采样模块分别输出累加值aver_ca、aver_I和aver_Q。C/A码平均采样模块的rst_ca_aver端口和同相正交平均采样模块的rst_IQ_aver端口为复位信号,当此信号为高电平时,将地址值重新置零。
如图11、图12所示,C/A码平均采样数据存储模块和同相正交平均采样数据存储模块分别在存储使能信号ca_ram_en和IQ_ram_en为高电平期间将平均采样值aver_ca和aver_I、aver_Q读入内置的2048深度存储器,同时每存储一次数据计数器的值加一,当存满2048个数据时,C/A码平均采样数据存储模块和同相正交平均采样数据存储模块分别将指示信号ca_ram_flag和IQ_ram_flag输出一个高脉冲,开始启动FFT变换,同时将计数器置0,C/A码平均采样数据存储模块的ca_rfd和同相正交平均采样数据存储模块的IQ_rfd为读使能信号,此信号为高电平期间依据读地址索引值ca_xn_index和IQ_xn_index依次读取存储器中的数据,并分别输出到ca_out端口、I_out端口、Q_out端口。
如图13、图14所示,FFT模块采用IP核实现,为了节省硬件资源,实现结构为Radix-2Burst I/O,变换点数为2048。C/A码FFT模块的启动信号ca_start连接C/A码平均采样数据存储模块的ca_ram_flag端口,同相正交FFT模块的启动信号IQ_start连接同相正交平均采样数据存储模块的IQ_ram_flag端口。C/A码FFT模块的ca_rfd端口和同相正交FFT模块的IQ_rfd端口为读使能信号,分别连接C/A码平均采样数据存储模块和同相正交平均采样数据存储模块的ca_rfd端口和IQ_rfd端口,当C/A码FFT模块和同相正交FFT模块开始接收数据时,ca_rfd端口和IQ_rfd端口持续输出高电平,此时依照C/A码平均采样数据存储模块和同相正交平均采样数据存储模块的索引值ca_xn_index和IQ_xn_index读取存储器中的数据。C/A码FFT模块和同相正交FFT模块的ca_fwd_inv和IQ_fwd_inv信号为控制信号,当进行FFT变换时,这两个信号置为高电平,C/A码FFT模块的ca_fwd_inv_en端口和同相正交FFT模块的IQ_fwd_inv_en端口为ca_fwd_inv端口和IQ_fwd_inv端口的写使能信号,全部置为高电平。C/A码FFT模块的ca_unload端口和同相正交FFT模块的IQ_unload端口为输出结果信号,置为高电平。C/A码FFT模块和同相正交FFT模块的clk时钟信号连接62MHZ时钟,C/A码FFT模块输入数据的实部ca_xn_re信号连接C/A码平均采样数据存储模块的ca_out端口,C/A码FFT模块输入数据的虚部ca_xn_im置为低电平。同相正交FFT模块输入数据实部IQ_xn_re和虚部IQ_xn_im分别连接同相正交平均采样数据存储模块的I_out端口和Q_out端口,C/A码FFT模块和同相正交FFT模块的完成信号ca_done和IQ_done进行与运算后连接到中频数据接收控制模块、C/A码发生模块、载波生成与剥离模块、C/A码平均采样模块、同相正交平均采样模块的反馈复位信号rst_IF_rec、ca_rst、carr_rst、rst_ca_aver和rst_IQ_aver,开始处理下1ms中频数据。C/A码FFT模块和同相正交FFT模块的输出结果有效信号ca_dv和IQ_dv为高电平期间开始输出变换结果,C/A码FFT模块变换结果的实部和虚部为ca_xk_re、ca_xk_im,同相正交FFT模块变换结果的实部和虚部为IQ_xk_re和IQ_xk_im。
FFT变换之后需要对C/A码变换结果的共轭和同相正交变换结果进行复数乘法。计算方法如公式(4)和(5)所示:
qr=ar×(br+bi)+br×(ai-ar) (4)
qi=ar×(br+bi)-bi×(ai+ar) (5)
其中ar、br、ai、bi分别表示两个乘数的实部和虚部,qr和qi表示复数乘法结果的实部和虚部。
如图15所示,C/A码FFT模块的ca_xk_im端口取反后连接到复数乘法模块ai端口,复数乘法模块ar端口连接C/A码FFT模块的ca_xk_re端口。复数乘法模块的bi和br端口分别连接到同相正交FFT模块的IQ_xk_im和IQ_xk_re端口。复数乘法模块的clk62M端口连接62MHZ时钟,端口ca_dv和IQ_dv都为高电平时在输入时钟控制下接收FFT变换结果进行复数乘法运算,同时将计算结果的实部qr和虚部qi输出,并暂存到复数乘法结果存储器当中,在此期间,复数乘法模块的输出指示信号en_ifft_ram置为高电平。
如图16所示,复数乘法结果存储模块在en_ifft_ram端口为高电平期间,在62MHZ时钟驱动下,将复数乘法结果qi和qr存储到2048位存储器中。存满后将输出指示信号ifft_flag输出一个高脉冲,并连接到傅里叶反变换(IFFT)模块的起始信号start端口,复数乘法结果存储模块的ifft_rfd端口连接到IFFT模块的准备好接收数据rfd端口,复数乘法结果存储模块的ifft_xn_index端口连接到IFFT模块的数据输入索引值。在ifft_rfd端口为高电平期间,依据ifft_xn_index端口将存储的数据通过ifft_re端口和ifft_im端口依次传送到IFFT模块数据输入端口xn_re和xn_im,开始进行傅里叶反变换。
如图17所示,IFFT模块和FFT模块一样采样IP核。IFFT模块的fwd_inv信号置为低电平,表示此时进行傅里叶反变换。fwd_inv_en(fwd_inv写使能信号)和un_load(输出结果信号)信号置为高电平,输入数据xn_re端口和xn_im端口连接到复数乘法数据存储模块的ifft_re端口和ifft_im端口,IFFT变换结果的实部和虚部为ifft_xk_re和ifft_xk_im,在计算结果稳定输出期间将IFFT变换结果的实部和虚部ifft_xk_re和ifft_xk_im存入相关值存储模块。
如图18所示,相关值存储模块的ifft_dv端口连接IFFT模块的输出数据有效指示信号(dv),此信号为高电平时,将IFFT变换结果实部(ifft_xk_re)和虚部(ifft_xk_im)进行平方和后,依次存入存储器中,此结果为相关值。为了成功捕获微弱信号并克服噪声带来的影响,将连续8ms的结果进行累加之后把输出信号edge_ram_flag置为高电平,同时将累加结果acq_res依次输出,当2048个结果全部输出完毕之后,将输出信号edge_ram_flag恢复到初始的低电平状态。
如图19所示,峰值检测检测模块的test_en端口为使能信号,连接相关值存储模块的edge_ram_flag端口。在此信号为高电平期间,输入acq_res端口,并在62MHZ时钟驱动下记录主峰值和次峰值和主峰值出现的码相位,如果主次峰值比大于一定阈值并且主峰值大于设定门限时,捕获成功,此时将峰值检测检测模块的acq_flag端口置为高电平,同时输出多普勒(acq_incr)和码相位(acq_codePhase),否则将输出结果carr_change赋予一个高脉冲信号,把此端口连接到中频数据接收控制模块、C/A码发生模块、载波生成与剥离模块和平均采样模块的rst_IF_rec、ca_rst、carr_change、rst_ca_aver和rst_IQ_aver端口,修改步进值,将频率移动至下一个多普勒,同时将载波和C/A码复位进行下一个多普勒频槽的搜索,直至搜索出满足条件的结果。
Claims (1)
1.一种基于FPGA捕获微弱GPS导航信号的电路实现方法,其特征在于:所述基于FPGA捕获微弱GPS导航信号的电路包括时钟发生模块、时钟分频模块、中频数据接收控制模块、中频数据接收模块、C/A码发生模块、载波生成与剥离模块、C/A码平均采样模块、C/A码平均采样数据存储模块、同相正交平均采样模块、同相正交平均采样数据存储模块、同相正交FFT模块、C/A码FFT模块、复数乘法模块、复数乘法结果存储模块、IFFT模块、相关值存储模块以及峰值检测模块;其中时钟发生模块分别与时钟分频模块、中频数据接收控制模块、载波生成与剥离模块相连接,中频数据接收控制模块与中频数据接收模块相连接,中频数据接收模块与载波生成与剥离模块相连接,载波生成与剥离模块与同相正交平均采样模块相连接,同相正交平均采样模块与同相正交平均采样数据存储模块相连接,同相正交平均采样数据存储模块与同相正交FFT模块相连接,时钟分频模块与C/A码发生模块相连接,C/A码发生模块与C/A码平均采样模块相连接,C/A码平均采样模块与C/A码平均采样数据存储模块相连接,C/A码平均采样数据存储模块与C/A码FFT模块相连接,同相正交FFT模块和C/A码FFT模块同时与复数乘法模块相连接,复数乘法模块与复数乘法结果存储模块相连接,复数乘法结果存储模块与IFFT模块相连接,IFFT模块与相关值存储模块相连接,相关值存储模块与峰值检测模块相连接;
所述时钟发生模块产生62MHZ和10.23MHZ的时钟,其中62MHZ时钟控制中频数据采样以及除C/A码发生模块外所有模块的驱动,10.23MHZ时钟通过时钟分频模块十分频后产生1.023MHZ的时钟控制C/A码发生模块;中频数据接收控制模块通过外部控制信号和内部计数控制信号的逻辑与运算精确控制1ms中频数据读入,C/A码发生模块在1.023MHZ控制下产生C/A码;载波生成和剥离模块的 carr_enable 端口为使能信号,该端口连接 C/A 码发生模块的 ca_start 端口,使能信号有效时,在输入的 62MHZ 时钟控制下,32 位累加寄存器对频率控制字进行线性累加,再通过累加寄存器的高四位映射出特定幅度的正余弦值;中频频率为 46.42MHZ,每次多普勒搜索的步长为 500HZ,复现出中频频率加上-5000HZ 至+5000HZ 多普勒频移的正余弦载波,并将其分别与中频数据相乘产生同相和正交数据;平均采样模块中内置一个累加点数存储器用于存储每一个平均采样数据需要的累加点数;平均捕获时间为 110ms ,平均采样模块根据累加点数存储器中的值将1ms的C/A码和同相正交数据由62MHZ时钟采样后分段累加成2048个采样点存入平均采样数据存储模块,存满后输出一个高脉冲连接到FFT模块的起始信号端口,并依据输入索引读取平均采样数据存储模块中的数据,当FFT模块的输出数据有效时,启动复数乘法模块,将C/A码变换结果取共轭后,与同相正交数据变换结果进行复数相乘并存入复数乘法结果存储模块,存满后启动IFFT模块,并依次读取复数乘法结果存储模块中的数据,IFFT模块的输出数据即为相关值;将连续8ms相关结果进行非相干累加后,存入相关值存储模块,最后启动相关峰值检测模块计算出主次峰值,并与设定门限进行对比判定是否捕获成功。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611207965.3A CN106772475B (zh) | 2016-12-23 | 2016-12-23 | 一种基于fpga捕获微弱gps导航信号的电路及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611207965.3A CN106772475B (zh) | 2016-12-23 | 2016-12-23 | 一种基于fpga捕获微弱gps导航信号的电路及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106772475A CN106772475A (zh) | 2017-05-31 |
CN106772475B true CN106772475B (zh) | 2023-12-12 |
Family
ID=58919978
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611207965.3A Active CN106772475B (zh) | 2016-12-23 | 2016-12-23 | 一种基于fpga捕获微弱gps导航信号的电路及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106772475B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109031360B (zh) * | 2017-06-09 | 2020-12-04 | 中移(杭州)信息技术有限公司 | 一种gps弱信号捕获的方法和装置 |
CN108169715B (zh) * | 2017-11-23 | 2021-12-10 | 北京遥感设备研究所 | 一种同相和正交通道相位不平衡度确定方法及系统 |
CN109557568B (zh) * | 2018-11-29 | 2020-10-23 | 湖南国科微电子股份有限公司 | 一种测距码产生方法及装置 |
CN109917429B (zh) * | 2019-03-07 | 2023-09-12 | 西安开阳微电子有限公司 | 一种b1c弱信号的捕获方法、装置及计算机存储介质 |
CN110346820B (zh) * | 2019-05-07 | 2021-05-18 | 和芯星通科技(北京)有限公司 | 全球导航卫星系统中资源的调度方法和装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102353968A (zh) * | 2011-10-09 | 2012-02-15 | 东南大学 | 一种基于fpga的gps信号捕获方法及其系统 |
CN202362461U (zh) * | 2011-10-09 | 2012-08-01 | 东南大学 | 一种基于fpga的gps信号捕获装置 |
CN102798871A (zh) * | 2012-08-10 | 2012-11-28 | 清华大学 | 基于伪码重构的伪码捕获方法及装置 |
CN102841360A (zh) * | 2012-09-13 | 2012-12-26 | 中国航天科技集团公司第五研究院第五一三研究所 | 一种基于部分相关的微弱信号快速捕获方法 |
CN103364802A (zh) * | 2013-07-12 | 2013-10-23 | 北京大学 | 一种基于双通道联合利用的tddm扩频导航信号捕获方法 |
CN206387910U (zh) * | 2016-12-23 | 2017-08-08 | 天津七六四通信导航技术有限公司 | 基于fpga捕获微弱gps导航信号的电路 |
-
2016
- 2016-12-23 CN CN201611207965.3A patent/CN106772475B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102353968A (zh) * | 2011-10-09 | 2012-02-15 | 东南大学 | 一种基于fpga的gps信号捕获方法及其系统 |
CN202362461U (zh) * | 2011-10-09 | 2012-08-01 | 东南大学 | 一种基于fpga的gps信号捕获装置 |
CN102798871A (zh) * | 2012-08-10 | 2012-11-28 | 清华大学 | 基于伪码重构的伪码捕获方法及装置 |
CN102841360A (zh) * | 2012-09-13 | 2012-12-26 | 中国航天科技集团公司第五研究院第五一三研究所 | 一种基于部分相关的微弱信号快速捕获方法 |
CN103364802A (zh) * | 2013-07-12 | 2013-10-23 | 北京大学 | 一种基于双通道联合利用的tddm扩频导航信号捕获方法 |
CN206387910U (zh) * | 2016-12-23 | 2017-08-08 | 天津七六四通信导航技术有限公司 | 基于fpga捕获微弱gps导航信号的电路 |
Also Published As
Publication number | Publication date |
---|---|
CN106772475A (zh) | 2017-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106772475B (zh) | 一种基于fpga捕获微弱gps导航信号的电路及方法 | |
CN106646546B (zh) | 一种卫星信号多维快速捕获方法及系统 | |
CN110114696B (zh) | 用于卫星导航系统的信号捕获方法及接收机 | |
US7526015B2 (en) | Parallel correlator implementation using hybrid correlation in spread-spectrum communication | |
CN110045397B (zh) | 一种基于fpga的l5信号捕获方法及装置 | |
CN102540217A (zh) | 一种在fpga中实现glonass卫星信号的快速捕获系统 | |
CN106093981B (zh) | 基于优化并行码相位搜索的gps捕获电路 | |
CN105204040A (zh) | 一种卫星信号捕获系统 | |
CN100501441C (zh) | 定位全球定位系统相关峰值信号的方法和系统 | |
CN111694029A (zh) | 一种生成b1c信号伪随机噪声码的硬件实现方法 | |
CN103439718A (zh) | 一种高阶boc调制信号的无模糊跟踪单元 | |
CN113253316B (zh) | 一种通用导航信号捕获处理方法 | |
US7558312B2 (en) | Parallel correlator implementation using block integration for spread-spectrum communication | |
CN104536020A (zh) | 一种gnss信号捕获方法 | |
CN102565822B (zh) | 对gps l5信号的捕获方法及装置 | |
CN103837878A (zh) | 一种gnss卫星信号捕捉方法 | |
US20080191932A1 (en) | Method and Device for Correlation Detection in Spread Spectrum Transmission Systems by Fast Fourier Transformation | |
CN109541651A (zh) | 一种gpsl1l2双频信号联合捕获方法 | |
CN115276712B (zh) | 一种低复杂度的突发扩频信号捕获方法 | |
CN206387910U (zh) | 基于fpga捕获微弱gps导航信号的电路 | |
CN101206259A (zh) | 基于数字匹配滤波器的多星座导航弱信号的捕获方法 | |
Zeng et al. | Realization of baseband signal processing for Beidou/GPS multi-mode receiver by FPGA | |
CN109633707B (zh) | 一种基于预平均处理的变系数匹配滤波的快速捕获方法 | |
CN110376619B (zh) | 全球导航卫星系统中信号处理装置 | |
CN104833990B (zh) | 基于fpga的北斗卫星导航系统基带信号预处理方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |