CN105866803A - 基于fpga北斗二代卫星导航接收机基带信号快捕算法 - Google Patents
基于fpga北斗二代卫星导航接收机基带信号快捕算法 Download PDFInfo
- Publication number
- CN105866803A CN105866803A CN201610168061.8A CN201610168061A CN105866803A CN 105866803 A CN105866803 A CN 105866803A CN 201610168061 A CN201610168061 A CN 201610168061A CN 105866803 A CN105866803 A CN 105866803A
- Authority
- CN
- China
- Prior art keywords
- algorithm
- beidou
- satellite navigation
- fpga
- navigation receiver
- 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.)
- Pending
Links
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/30—Acquisition or tracking or demodulation of signals transmitted by the system code 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/35—Constructional details or hardware or software details of the signal processing chain
- G01S19/37—Hardware or software details of the signal processing chain
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
本发明提供了基于FPGA北斗二代卫星导航接收机基带信号快捕算法;该算法包括:第一步,对2ms的北斗卫星导航接收机中输入的中频信号进行降频处理;第二步,将产生的本地伪码序列与输入的中频信号进行相关累加;第三步,对得到的累加值进行DFT运算;第四步,记录并存储DFT峰值;第五步:记录不同码片处产生的码相位最大值点,并进行比较,以求出码的初相和最大频率点;本发明基于FPGA并行处理进行的硬件设计、流水处理、运行效率高,运算时间短;本算法实时性强,占用硬件资源较小,另外相对于其它基于软件仿真的快速捕获算法,能够利用FPGA硬件实现,具有很强的实际应用价值,可以直接嵌入到北斗卫星导航接收机设计中。
Description
技术领域
本发明涉及卫星导航接收机领域,具体涉及基于FPGA北斗二代卫星导航接收机基带信号快捕算法。
背景技术
卫星导航基带信号的捕获技术是导航接收机信号处理的重要组成部分,用于获取所有可见卫星信号的载波多普勒频率和码相位的粗略估计值,卫星导航接收机根据这些信号参数估计值初始化跟踪环路,进而实现卫星导航接收机对信号的跟踪,其捕获速度及多普勒频率估计误差将直接影响卫星导航接收机的性能指标。
随着我国北斗卫星导航系统的建设发展,目前已经开始对中国及周边地区提供导航、授时和短报文服务,北斗卫星导航系统将会在国民生产和生活中发挥越来越大的战略价值和经济效益;北斗卫星导航接收机作为北斗卫星导航系统应用中最主要的用户端设备,是北斗卫星导航系统面向用户的最重要的终端设备,它的性能直接决定了北斗卫星导航系统服务质量;北斗卫星导航接收机的主要性能之一就是首次定位所需时间,它包括接收机对卫星的捕获、跟踪、位同步、帧同步、数据解调、电文译码和定位解算过程,其中对导航卫星捕获的快慢直接影响首次定位所需时间;因此,为了提高北斗卫星导航接收机的性能,提高基带信号的捕获速度成为了卫星导航接收机研究的重点。
目前,对北斗卫星导航信号捕获的方法主要有时域顺序搜索捕获法和频域快速傅里叶捕获法;时域顺序搜索捕获法普遍运用在当前各种GPS接收机中,它的基本原理是不断调整本地伪码的码相位和本地载波频率来实现对接收的卫星导航信号的捕获,是一种对时域和频域同时进行二维搜索的方法,这种方法实现简单、结构清晰,时域顺序搜索捕获法主要是采用硬件相关器在时域内对输入信号进行相关,通过简单的相关器设计就能完成搜索,但时域顺序搜索捕获法的运算量较大,因此算法运算时间较长;频域快速傅里叶捕获法是以FFT算法为基础提出将时域卷积转化为频域里信号的乘积,从而达到缩短捕获时间,频域快速傅里叶捕获法执行速度快,但是频域快速傅里叶捕获法在进行硬件设计时要占用很大的硬件资源,这对于FPGA提出了较高的要求,增加了硬件成本。因此,提出一种即具有顺序捕获算法的简单、结构清晰,又具有频域快速傅里叶捕获法执行速度快优势的算法是很有必要的,而且具有很重要的意义。
发明内容
本发明的目的在于,提供一种利用C/A码的相乘和离散傅里叶变换的快速捕获算法,并利用FPGA并行处理来解决卫星导航信号传统捕获算法存在的运算时间长、占用硬件资源较大的问题,从而提高算法的运行效率。
本发明的目的是通过以下技术方案实现的:基于FPGA北斗二代卫星导航接收机基带信号快捕算法;该算法包括以下几个步骤:
第一步,对2ms的北斗卫星导航接收机中输入的中频信号进行数据降频处理;
第二步,将产生的本地伪码序列与输入的中频信号进行相关累加;
第三步,对得到的累加值进行DFT运算;
第四步,记录并存储DFT峰值;
第五步:记录不同码片处产生的码相位最大值点,并进行比较,以求出码的初相和最大频率点;
上述的基于FPGA北斗二代卫星导航接收机基带信号快捕算法,所述基带信号快捕算法采用2ms北斗二代B1频点中频采样数据进行连续快速捕获。
上述的基于FPGA北斗二代卫星导航接收机基带信号快捕算法,所述基带信号快捕算法使用Verilog HDL语言。
上基于FPGA北斗二代卫星导航接收机基带信号快捕算法,所述码相位的范围设置在为0-2045之间。
本发明的优点在于:与现有技术相比较,(1)完全基于FPGA并行处理进行的硬件设计、流水处理、运行效率高,运算时间短;(2)本算法实时性强,占用硬件资源较小,每个通道从触发开始捕获到捕获结束共需要8519544个时钟周期,整个系统是在62MHz的主时钟驱动下工作,完成一颗星捕获所需时间为(8519544/62)*10-6=137.412ms;由于系统中存在12个独立的通道,完成一颗卫星的搜索时间平均为137.412/12=11.451ms,完成B1频点所有的37颗星搜索的时间为11.451*37=423.687ms;(3)相对于其它基于软件仿真的快速捕获算法,本发明能够利用FPGA硬件实现,具有很强的实际应用价值,可以直接嵌入到北斗卫星导航接收机设计中。
附图说明
图1为本发明的原理框图;
图2为本发明实现快速捕获算法模块的总体结构框图。
具体实施方式
下面结合具体实施例对本发明的技术方案进行详细的描述,以便进一步了解本发明之目的、方案,但并非作为本发明所附权利要求保护范围的限制。
实施例1:结合图1和图2,本发明的目的在于,提供一种利用C/A码的相乘和离散傅里叶变换的快速捕获算法,并利用FPGA并行处理来解决卫星导航信号传统捕获算法存在的运算时间长、占用硬件资源较大的问题,从而提高算法的运行效率。
该算法包括以下几个步骤:
第一步,对2ms的北斗卫星导航接收机中输入的中频信号进行数据降频处理;
第二步,将产生的本地伪码序列与输入的中频信号进行相关累加;
第三步,对得到的累加值进行DFT运算;
第四步,记录并存储DFT峰值;
第五步:记录不同码片处产生的码相位最大值点,并进行比较,以求出码的初相和最大频率点;
上述的基于FPGA北斗二代卫星导航接收机基带信号快捕算法,所述基带信号快捕算法采用2ms的北斗二代B1频点中频采样数据进行连续快速捕获。
上述的基于FPGA北斗二代卫星导航接收机基带信号快捕算法,所述基带信号快捕算法使用Verilog HDL语言。
上基于FPGA北斗二代卫星导航接收机基带信号快捕算法,所述码相位的范围设置在为0-2045之间。
其中,基带信号捕获算法是指在二维空间对卫星的码与载波进行复现;在二维搜索过程中对于载波多普勒频率的搜索步长称为频带宽度fbin,每一个频带对应一个频率搜索值,对码相位的搜索步长称为码带宽度tbin,每一个码带对应着一个码相位搜索值;北斗卫星导航接收机在一个搜索单元上搜索时,所复制的载波频率与码相位值对应于该搜索单元的中心点位置;若北斗卫星导航接收机成功捕获信号,则它对该信号载波频率的估计误差不大于半个频带宽度,对码相位的估计误差同样也不大于半个码带宽度。
C/A码的相关性是指除了零延时外,所有的C/A码几乎和自身的延时都没有相关性;对于导航卫星k的自相关特性rk如式(1)所示:
式中:rk为自相关函数值;Ck为第k颗卫星的C/A码;l,m分别为不同的码相位。
离散傅里叶变换是指在在时域和频域上都呈现离散的形式;在形式上,变换时域和频域上的序列是有限长的,而实际上这两组序列都被认为是离散周期
信号的主值序列;即使对有限长的离散信号做DFT变换,也应当将其看作经过周期延拓成为周期信号再做变换。
捕获的目的是对输入信号进行解扩,并找出载波频率和码相位,接收信号与对应于某一特定的导航卫星本地伪码序列相乘,在本设计中码相位的范围为0-2045;将得到的结果通过傅里叶变换转换为频域信号,这里的傅里叶变换采用离散傅里叶变换;设计中采取将输入信号与本地C/A码进行分段相关累加的方法来对信号进行搜索;则可以得到两个长为N=64的序列的相关累加结果为z(n),如式(2)所示:
其中,x(n)指的是输入中频信号,c(m-n)指的是本地C/A码;
然后对时域得到的相关结果z(n)求DFT变换得到频域信号Z(k),如式(3)所示:
为DFT变换因子。
式中
在得到频域的结果Z(k)后,求出最大值;然后,将最大值除以平均功率并与设置的阀值进行比较,即可完成对载波频率的搜索,此时读出码数字控制振荡器NCO的相位就为码相位信息。
实施例2:本发明提供的利用C/A码的相乘和离散傅里叶变换(DFT)的捕获算法的FPGA实现方法,基于FPGA的北斗二代B1频点卫星导航信号快速捕获算法采用2ms的北斗二代B1频点中频采样数据进行连续快速捕获,算法设计中考虑动态环境下卫星导航信号的时效性,因此始终以当前最新的2ms数据进行捕获,快速捕获模块集成了12个等效并行独立通道同时进行北斗二代B1频点信号捕获处理,由于12个通道同时进行独立搜索,每个通道共用实时缓存数据。
本发明使用执行效率高,并且可以根据需要自行设计算法的逻辑运算核进行设计,在图2中的RAM1、RAM2、RAM3用来存储程序运行过程中产生的中间值结果以便于对数据的处理;在图2中的ROM是初始化的内存空间用来存储北斗导航卫星的伪码序列,当码NCO产生模块在产生伪码序列的时候可以很快的访问ROM,并且产生本地伪码序列,这里并未采用利用寄存器的方式产生本地伪码序列的方式,其目的是为了提高捕获阶段程序的执行效率;
接下来结合图2来介绍快速捕获算法的FPGA具体实现步骤如下:
步骤一:首先调用码NCO产生模块产生北斗二代B1频点伪码基频速率时钟使能信号,即2.046MHz的时钟使能信号fc_enable;
步骤二:通过fc_enable使能信号把输入的数字中频信号62MHz数据率的零中频北斗基带信号进行分段求和降频处理,生成2.046MHz的降频基带信号,这样可以减小数据量的同时与本地伪码的数据率同步;
步骤三:实时存储降频后的基带信号到双口RAM1中,RAM1的存储深度为4092点,即2ms时间内的输入中频数据量;
步骤四:利用C/A码产生模块,通过访问存储在ROM中的导航卫星伪码序列,进而产生2ms的本地伪码序列;
步骤五:读取存储在双口RAM1中的降频处理后的中频数据并与本地伪码序列对齐并进行相关累加,同时每64点累加得到一个值,并在这之前要对双口RAM中的4092点数据后面补4个零扩展至4096点,以方便获得64个相关累加值,并存储在双口RAM2,
步骤六:对于一个长度为N=64的有限长序列,则f(k)离散傅里叶变换后的F(n)可以表示为如式(5)所示:
式中: 为DFT变换因子;
若将上式写成矩阵形式,即如式(6)所示:
从DFT变换的矩阵公式可以看出,求输入序列的DFT变换时,为了求出F(n)需要利用f(k)(0≤k≤n-1)并与Wkn相乘,如果按照定义这样对信号进行DFT变换,虽然在设计时较为简单,但是会使得算法占用资源较多。于是,提出首先求出一个f(k)的所有64点DFT运算,然后将这一个f(k)的DFT变换按照矩阵中的形式存储在64位的RAM中表示64个DFT变换结果;然后,在求出下一个f(k)的DFT变换后,再与第一次存储的DFT结果进行相加运算,这样在完成了对64个点的输入信号的DFT求解,也就可以求出64点的全部结果,这样避免了重复计算节约了硬件资源和计算时间;在实际设计中,由主时钟驱动每获得一点累加值便对其进行一次64点DFT,并把结果存储在64点双口RAM中;在获得第二点累加值时,对其进行第二次64点DFT运算,并把结果累加到第一次的结果中,当完成第64次DFT运算时,即获得了完整的64点DFT结果;在进行DFT运算时需要通过载波NCO模块产生的本地载波序列进行DFT运算。
步骤七:实时计算DFT峰值能量及平均能量,并缓冲到双口RAM3中,并对DFT结果进行取模运算,等待进行捕获状态的判别;
步骤八:产生捕获完成标志,FPGA查询到此处标志有效时,读取捕获结果并进行判断和处理,若判断得到的结果大于门限值,则输出此时的捕获频率值和伪码相位,此时得到的频率的精度为499Hz,码相位的精度为0.5个码片;
步骤九:如果在判断时得到的结果小于门限,则重新读取双口RAM数据并与本地伪码序列延迟一个数据点对齐并进行相关累加,获得64点DFT结果,计算DFT峰值能量及平均能量,如此重复2046次,记录64点DFT中的峰值能量最大的一次,即可获得伪码初相、DFT峰值能量最大处频率值以及峰值能量和平均能量,进而得到最终的捕获结果;
以上结合附图对本发明做出了具体的说明,但这些说明并不能被理解为限制了本发明的范围,本发明的保护范围由随附的权利要求书限定,任何在本发明权利要求基础上的改动都是本发明的保护范围。
Claims (4)
1.基于FPGA北斗二代卫星导航接收机基带信号快捕算法,其特征在于:具体包括以下几个步骤:
第一步,对2ms的北斗卫星导航接收机中输入的中频信号进行降频处理;
第二步,将产生的本地伪码序列与输入的中频信号进行相关累加;
第三步,对得到的累加值进行DFT运算;
第四步,记录并存储DFT峰值;
第五步:记录不同码片处产生的码相位最大值点,并进行比较,以求出码的初相和最大频率点。
2.根据权利要求1所述的基于FPGA北斗二代卫星导航接收机基带信号快捕算法,其特征在于:所述基带信号快捕算法采用2ms的北斗二代B1频点中频采样数据进行连续快速捕获。
3.根据权利要求1所述的基于FPGA北斗二代卫星导航接收机基带信号快捕算法,其特征在于:所述基带信号快捕算法使用Verilog HDL语言。
4.根据权利要求1所述的基于FPGA北斗二代卫星导航接收机基带信号快捕算法,其特征在于:所述码相位的范围设置在为0-2045之间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610168061.8A CN105866803A (zh) | 2016-03-23 | 2016-03-23 | 基于fpga北斗二代卫星导航接收机基带信号快捕算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610168061.8A CN105866803A (zh) | 2016-03-23 | 2016-03-23 | 基于fpga北斗二代卫星导航接收机基带信号快捕算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105866803A true CN105866803A (zh) | 2016-08-17 |
Family
ID=56625501
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610168061.8A Pending CN105866803A (zh) | 2016-03-23 | 2016-03-23 | 基于fpga北斗二代卫星导航接收机基带信号快捕算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105866803A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106556848A (zh) * | 2016-10-24 | 2017-04-05 | 华中光电技术研究所(中国船舶重工集团公司第七七研究所) | 一种北斗二代卫星b1频点信号的快速捕获方法 |
CN111737191A (zh) * | 2020-07-20 | 2020-10-02 | 长沙海格北斗信息技术有限公司 | 共享缓存方法、基带处理单元及其芯片 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102901973A (zh) * | 2012-09-25 | 2013-01-30 | 郑州威科姆科技股份有限公司 | 基于北斗卫星的信号实时并行快速捕获方法 |
CN203086464U (zh) * | 2013-01-21 | 2013-07-24 | 西安空间无线电技术研究所 | 一种基于频域的pn码快速捕获装置 |
CN104467914A (zh) * | 2014-12-01 | 2015-03-25 | 上海无线电设备研究所 | 一种扩频测控通信中的高动态快速捕获实现方法 |
CN105162493A (zh) * | 2015-08-04 | 2015-12-16 | 北京理工大学 | 多普勒域和延迟域二维捕获方法及装置 |
CN105301608A (zh) * | 2015-10-30 | 2016-02-03 | 西安烽火电子科技有限责任公司 | 高动态接收机及其对北斗卫星信号b1频点的捕获方法 |
-
2016
- 2016-03-23 CN CN201610168061.8A patent/CN105866803A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102901973A (zh) * | 2012-09-25 | 2013-01-30 | 郑州威科姆科技股份有限公司 | 基于北斗卫星的信号实时并行快速捕获方法 |
CN203086464U (zh) * | 2013-01-21 | 2013-07-24 | 西安空间无线电技术研究所 | 一种基于频域的pn码快速捕获装置 |
CN104467914A (zh) * | 2014-12-01 | 2015-03-25 | 上海无线电设备研究所 | 一种扩频测控通信中的高动态快速捕获实现方法 |
CN105162493A (zh) * | 2015-08-04 | 2015-12-16 | 北京理工大学 | 多普勒域和延迟域二维捕获方法及装置 |
CN105301608A (zh) * | 2015-10-30 | 2016-02-03 | 西安烽火电子科技有限责任公司 | 高动态接收机及其对北斗卫星信号b1频点的捕获方法 |
Non-Patent Citations (3)
Title |
---|
成川川: "北斗导航接收机捕获技术的研究和实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
无: "北斗二代B1频点卫星导航接收机—系统方案设计说明", 《豆丁网》 * |
熊永孟 等: "一种北斗二代MEO/IGSO卫星B1频点I支路导航信号的捕获算法及其软件实现", 《中国科学院上海天文台年刊》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106556848A (zh) * | 2016-10-24 | 2017-04-05 | 华中光电技术研究所(中国船舶重工集团公司第七七研究所) | 一种北斗二代卫星b1频点信号的快速捕获方法 |
CN111737191A (zh) * | 2020-07-20 | 2020-10-02 | 长沙海格北斗信息技术有限公司 | 共享缓存方法、基带处理单元及其芯片 |
CN111737191B (zh) * | 2020-07-20 | 2021-01-15 | 长沙海格北斗信息技术有限公司 | 共享缓存方法、基带处理单元及其芯片 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103499823B (zh) | 扩频通信中二维并行捕获系统 | |
CN102520423B (zh) | 卫星导航接收机长周期伪随机扩频码的快速捕获方法 | |
CN105974442B (zh) | 卫星导航系统硬件在环实时仿真测试平台及其方法 | |
CN106855628A (zh) | 一种高动态卫星导航信号的快速捕获和跟踪系统和方法 | |
CN105577229B (zh) | Cpu辅助gpu实现扩频信号快速捕获方法 | |
CN104280750A (zh) | 基于部分匹配滤波fft算法的长码捕获系统及方法 | |
CN105717522A (zh) | “北斗二代”b1频段弱信号捕获方法 | |
CN104597434B (zh) | 改进包络移位补偿和分数阶傅里叶变换的多帧相参tbd方法 | |
CN104833988A (zh) | 大多普勒动态下高数据速率直扩信号的捕获系统及方法 | |
CN105553506B (zh) | 一种长码扩频信号的快速捕获方法及装置 | |
CN111694027A (zh) | 超大动态扩频信号捕获方法与装置 | |
CN108169772B (zh) | 一种加窗fft的卫星信号捕获方法 | |
CN103698784A (zh) | 一种p码捕获方法及装置 | |
CN106093981B (zh) | 基于优化并行码相位搜索的gps捕获电路 | |
CN106772475A (zh) | 一种基于fpga捕获微弱gps导航信号的电路及方法 | |
CN105866803A (zh) | 基于fpga北斗二代卫星导航接收机基带信号快捕算法 | |
CN102801459B (zh) | 多模卫星信号接收装置及其方法 | |
CN114280639A (zh) | 一种基于比特遍历的弹载高动态北斗b3i信号捕获方法及装置 | |
CN104536020A (zh) | 一种gnss信号捕获方法 | |
CN103837878A (zh) | 一种gnss卫星信号捕捉方法 | |
CN112578411B (zh) | 一种微弱bds-3 b1c基带信号的捕获方法及系统 | |
CN109541651A (zh) | 一种gpsl1l2双频信号联合捕获方法 | |
CN102841361B (zh) | 一种全球卫星导航定位系统信号普通测距码快速捕获方法 | |
CN110018500A (zh) | 一种基于圆周移位的北斗卫星信号捕获方法 | |
US20080191932A1 (en) | Method and Device for Correlation Detection in Spread Spectrum Transmission Systems by Fast Fourier Transformation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160817 |