CN108519611A - 基于gpu的北斗b1c/b1i双频并行多通道协同捕获方法 - Google Patents

基于gpu的北斗b1c/b1i双频并行多通道协同捕获方法 Download PDF

Info

Publication number
CN108519611A
CN108519611A CN201810172639.6A CN201810172639A CN108519611A CN 108519611 A CN108519611 A CN 108519611A CN 201810172639 A CN201810172639 A CN 201810172639A CN 108519611 A CN108519611 A CN 108519611A
Authority
CN
China
Prior art keywords
code
carrier
signals
gpu
phase
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.)
Granted
Application number
CN201810172639.6A
Other languages
English (en)
Other versions
CN108519611B (zh
Inventor
张武迅
陈新
何迪
郁文贤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Jiaotong University
Original Assignee
Shanghai Jiaotong University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Jiaotong University filed Critical Shanghai Jiaotong University
Priority to CN201810172639.6A priority Critical patent/CN108519611B/zh
Publication of CN108519611A publication Critical patent/CN108519611A/zh
Application granted granted Critical
Publication of CN108519611B publication Critical patent/CN108519611B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO 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/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/13Receivers
    • G01S19/32Multimode operation in a single same satellite system, e.g. GPS L1/L2
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO 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/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/13Receivers
    • G01S19/24Acquisition or tracking or demodulation of signals transmitted by the system
    • G01S19/29Acquisition or tracking or demodulation of signals transmitted by the system carrier including Doppler, related
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO 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/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/13Receivers
    • G01S19/24Acquisition or tracking or demodulation of signals transmitted by the system
    • G01S19/30Acquisition or tracking or demodulation of signals transmitted by the system code related

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Position Fixing By Use Of Radio Waves (AREA)

Abstract

本发明提出了一种基于GPU的北斗B1C/B1I双频并行多通道协同捕获方法。其首先对B1C导频信号进行捕获,包括本地载波发生、载波剥离、本地折叠码发生、码相关、码相位模糊度消除等;根据B1C导频信号的捕获结果,对B1I信号进行位同步,利用B1C扩频码与B1I信号NH码之间的相位关系,最终实现对B1I信号的快速位同步。本发明首先对B1C导频信号进行捕获是为了克服数据跳变的影响;采用GPU对捕获进行加速,可以有效解决计算量集中的难题;采用B1C导频信号协助B1I信号位同步,是为了解决低载噪比环境下B1I信号因相干积分时间太短而无法捕获的问题,保证有足够多的卫星信号可以参与到最终的定位导航结算模块中。

Description

基于GPU的北斗B1C/B1I双频并行多通道协同捕获方法
技术领域
本发明属于无线通信技术领域,尤其涉及一种基于GPU的北斗B1C/B1I双频并行多通道协同捕获方法。
背景技术
2017年11月5日,北斗三号系统第一、二颗组网卫星的成功发射,标志着北斗三号系统已经进入全球组网的新阶段。目前已知北斗三号系统新增信号有B1C和B2a两个频点,为了进一步提升卫星信号的抗干扰能力,B1C和B2a信号均采用周期为10ms的长伪随机码作为测距码。由于B1C信号采用目前现代化GNSS信号体制普遍使用的BOC调制方式,这使得北斗系统与GPS/GALILEO系统之间可以实现兼容与互操作,对于未来多模多频点系统接收机的设计具有重大意义,并且有助于显著地提升用户终端的定位性能。
双频接收机逐渐受到研究人员关注的原因之一在于,双频能够有效估计电离层延时,从而减小伪距的测量误差以及最终的定位误差。B1I和B1C信号的调制载波频率分别是1561.098MHz和1575.42MHz,理论上B1I和B1C信号双频接收机可以达到优于B1I或B1C信号单频接收机的定位性能。另外,考虑到B1I和B1C信号使用同一个时钟基准源,且两者码相位之间存在固定的关系,因此可以基于其中一个信号的捕获信息快速实现另一个信号的位同步(精捕获),提供双频联合跟踪需要的初始化信息。
B1C信号具有更长的扩频码周期,可以作长时间的相干积分,同时导频信号不会受比特随机跳变的影响,有助于提高弱信号环境下的检测概率,因此采用B1C信号协助B1I信号进行捕获和跟踪必将成为未来的研究趋势。但是,长码捕获需要的计算量相当大,若采用常规的方法进行捕获,则很难找到计算资源足够的硬件平台,故需要对原有算法进行改进,以满足计算资源相对匮乏的软件接收机的设计要求。本发明公布的方法就是充分利用GPU的众核多线程机制来实现多通道多数据并行处理的。
发明内容
本发明所要解决的问题在于克服现有技术的不足,因此提出了一种基于GPU的北斗B1C/B1I双频并行多通道协同捕获方法。所述方法在保证捕获灵敏度的同时,通过GPU加速实现计算量的等效减少。对B1C导频信号进行捕获,既能消除随机比特跳变对相干积分值的影响,又能快速辅助B1I信号进行位同步,保证低信噪比环境下依然能捕获到较多的卫星信号,以确保用户的定位精度。
为解决上述技术问题,本发明采用的技术方案如下:
一种基于GPU的北斗B1C/B1I双频并行多通道协同捕获方法,包括步骤如下:
步骤A,采用改进的并行码相位搜索算法对B1C导频信号进行捕获,包括本地扩频码生成、本地载波生成、扩频码相关以及码相位模糊度消除;
步骤B,B1I信号位同步:根据B1C导频信号的捕获结果,利用B1C与B1I信号之间载波频率和扩频码相位的固定关系,来确定B1I位同步阶段的载波频率和码相位搜索范围,进而获得B1I信号的载波多普勒和码相位偏移估计值。
可选的,步骤A中,所述改进的并行码相位搜索算法包括步骤如下:
步骤A-1,为本地扩频码、本地载波、通道配置参数在GPU端分配全局内存空间,并采用对齐且连续合并的方式进行存储;分别在主机端和GPU端采用页锁定内存和全局内存保存输入中频数据;
步骤A-2,根据单次读入的中频信号数据量以及流处理器的占用率来确定GPU端核函数的参数,即网格内线程块数和块内线程数;
步骤A-3,预先将对应所有卫星PRN号的Weil码相位差和截取点信息保存在主机端的页锁定内存中;
步骤A-4,创建流标志符,分为数据拷贝和核函数启动两种;
步骤A-5,预先将cos/sin函数的查找表保存在页锁定内存中,并且该表中离散值的精度取决于不同接收机的性能要求;
步骤A-6,将保存所有通道的折叠次数、起始扩频码相位、起始载波相位、采样点数、多普勒频率值的空间首地址整合到统一的配置参数内存池中,同理将本地扩频码、本地载波空间首地址整合到统一的地址内存池中;
步骤A-7,将步骤A-1、A-3、A-5和A-6中保存的本地载波、本地扩频码、查找表和通道配置参数拷贝至GPU显存中,通过流来控制异步执行;
步骤A-8,根据起始扩频码相位,计算每个线程对应的码相位值,并根据预存的Weil码相位差和截取点生成对应采样点数的扩频码序列;
步骤A-9,先将全局内存中保存的cos/sin查找表读入共享内存中,然后计算每个线程对应的载波相位并生成载波,并利用它剥离中频信号中的载波成分;
步骤A-10,对步骤A-8和A-9中生成的多通道本地折叠码与剥离载波后的中频信号同时进行FFT,并采用同址运算;
步骤A-11,将步骤A-10中得到的两个FFT结果进行点乘,然后再对点乘结果取IFFT,从而得到每个折叠码相位处的相干积分结果;
步骤A-12,在通过若干次非相干累加后获得关于多普勒频移和折叠码相位的二维非相干矩阵之后,找到相关峰值的位置,其对应的行数和列数即该信号的载波多普勒和折叠码相位估计值,并记作fd_B1C和PB1C_fold
步骤A-13,采用时域相关技术来进一步确认B1C信号的真实扩频码相位,即从步骤A-12中的PB1C_fold处取经过载波剥离的中频信号,依次与不同码相位偏移的原始扩频码序列进行相关累加;
步骤A-14,最后通过寻找累加值中的最大值来判断真实的扩频码相位PB1C
可选的,步骤B中,所述B1I信号位同步包括步骤如下:
步骤B-1,基于B1C导频信号的捕获结果,即载波多普勒fd_B1C,首先计算对应B1I信号的载波多普勒fd_B1I和码多普勒fcoded估计值:
其中,fB1I和fB1C分别表示B1I和B1C信号的调制载波频率;fcode0表示B1I信号标准扩频码率。
步骤B-2,将载波多普勒、码多普勒、本地载波存储空间首地址、本地扩频码空间首地址、采样点数均保存在页锁定内存中,并异步拷贝至GPU显存中;
步骤B-3,利用GPU的多线程技术完成载波和扩频码剥离后,再通过并行规约方法完成各个通道的1ms相干积分;
步骤B-4,将NH码平均分成两部分,20个码片值依次与1ms的相干积分结果相乘,并通过非相干累加获得关于NH码相位的二维相关矩阵:
设s=[s0,s1,…,s19]表示连续20个1ms相干积分值,[n0,n1,…,n19]表示周期为20ms的NH码,取:
nh1=[n0,…,n9,n10,…,n19];
nh2=[n40,…,n19,n0,…,n9];
将s与nh1和nh2分别相乘,得到相关矩阵M:
步骤B-5,对步骤B-4中的相关矩阵M作DFT,此时变换到频域中的谱线峰值位置记为peakIdx,则对应的精确多普勒频率为:
其中,N指DFT点数,fs指数据更新率,此处应等于相干积分时间的倒数;
步骤B-6,对步骤B-5中的DFT复数结果取模累加,通过比较相关值大小确定B1I信号的码相位。
可选的,步骤B-5中,采用DFT进行载波多普勒搜索。
与现有技术相比,本发明的有益效果是:
本发明提出了一种基于GPU的北斗B1C/B1I双频并行多通道协同捕获方法,所述方法利用改进的并行码相位算法对B1C导频信号先进行捕获,然后利用B1C与B1I信号之间的固定关系协助B1C信号快速进行位同步,为接下来双频跟踪做准备;
针对B1C这样的长码信号捕获计算量集中的难题,本方法采用GPU加速技术进行大规模并行计算;
为了减小主机CPU内存与GPU显存之间的数据拷贝延迟,本发明采用了页锁定内存来存储卫星通道的相关配置信息,并通过流实现与核函数启动的并发执行;
另外,针对传统B1I信号位同步需要搜索20个NH码相位的问题,本发明利用B1C的捕获结果可以将搜索复杂度降低10倍,即只需要搜索2个NH码相位位置,同时兼顾位同步的准确率。
当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
图1为本发明一实施例的改进的并行码相位搜索算法流程图;
图2为本发明一实施例的隐藏CPU与GPU间数据拷贝延迟的流程图;
图3为本发明一实施例的载波发生kernel函数的GPUgrid结构示意图;
图4为本发明一实施例的B1C信号协助B1I信号快速位同步的流程图;
图5为本发明一实施例的B1C和B1I信号扩频码、NH码相位对齐关系。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。
如图1所示,首先对B1C导频信号进行捕获,主要包括本地载波生成、本地折叠码生成、载波剥离、码相关、峰值搜索和码相位模糊度消除等部分。由于,B1C导频信号属于长PRN码信号,捕获计算量比类似B1I信号的短码信号更大,因此本发明利用GPU的众核多线程技术来解决计算量集中的难题。而利用GPU加速捕获部分最先要考虑的就是主机内存与GPU显存之间的内存拷贝延迟,本发明为了尽可能隐藏延迟,选择一次性拷贝多个batch的数据到GPU中,此处1个batch的数据量等于1ms内的采样点数,并通过流实现与核函数启动并发执行,即同时执行本地载波发生和数据拷贝,具体方式见图2。首先从CPU端中频数据空间拷贝若干个batch的数据到GPU显存中,此过程通过数据拷贝流stream_copy引导(过程a);待通过cudaStreamSynchronize函数完成第一次拷贝后,开始启动载波剥离、码相关等kernel函数,此过程通过核函数执行流stream_copy引导(过程b);接下来,马上拷贝中频数据到GPU内另一块显存中(过程c),此过程仍然通过stream_copy引导;而对于GPU来说,过程b与c将会同时进行,过程d保证了新旧数据的调换,通过这种设计,本发明可以有效地隐藏数据拷贝延迟,有利于提高捕获的计算效率。
GPU中存在多种类型的内存,如全局内存、共享内存、寄存器、常量内存、纹理内存,以及各种缓存,从访问延迟来看,寄存器最小,只需要一个时钟周期便可完成,但是极其匮乏,无法大量使用;全局内存延迟最大,将近几百个时钟周期,但全局内存是GPU中最大的内存,也是GPU与CPU之间通信的主要方式。本发明捕获阶段本地码、载波等空间均是保存在全局内存中,而全局内存的访问方式也将直接影响到计算速度。一般来说,对全局内存采用对齐且连续合并的方式才能获得最好的传输性能,使用cudaMallocPitch函数便可以得到对齐的内存空间,支持32字节、64字节或128字节,分别表示线程束中每个线程以一个字节、16位或32位为单位读取数据。
之前在步骤A-10中,为了生成本地载波,选择将保存在全局内存中查找表读到每个block的共享内存中,待完成载波剥离后再将结果从共享内存中传回全局内存中。这样做的好处在于,充分利用共享内存访问延迟小(大约几十个时钟周期)的特点,可以进一步减少访问延时和提高计算效率。
每个通道在捕获阶段需要搜索数十个多普勒频点,因此在生成本地载波时,也需要并行生成所有待搜索频点处的载波。CUDA编程首先要考虑如何为不同的kernel函数配置合适的block数和块内线程数。block数过大将会因硬件资源不足而降低计算效率;反之,将无法充分利用硬件资源而造成计算能力的浪费。本发明采用的多频点载波生成kernel的线程结构配置如图3所示,为方便表述,接下来将以一次性处理2ms的数据进行展开。图中NC和Nf分别表示待处理卫星通道数和多普勒频点数,Blocks_Per_1ms和ThredsPerBlock表示每1ms数据分配的block数和块内线程数。Grid的X和Y维分别用于索引当前计算的采样点和通道号,CUDA提供内置变量threadIdx和blockIdx可用来获得任意时刻所处的线程ID和通道ID。假设采样率为62MHz,1ms内采样点数为62000,Blocks_Per_1ms设为4,ThreadsPerBlock设为256,则每个线程将计算约61个点,此处所给的值均不是固定的,需要具体看数据量的大小再行确定。由于本地载波、扩频码的存储方式相似,因此扩频码生成、码相关的kernel函数均可以参考图3进行设计。
本发明在设计时,还考虑到将需要拷贝进GPU显存的捕获配置参数等统一放进内存池中,而本地扩频码、载波、压缩扩频码等空间首地址也都保存在特定内存池中。这样设计的初衷也是为了尽可能避免主机与GPU端数据拷贝过于碎片化,保证数据拷贝延时仅占捕获总耗时的很小一部分。
由于扩频码具有良好的自相关和互相关特性,因此当本地生成的扩频码与输入信号的码相位严格对齐时,将会产生峰值。在码相位消除阶段,本发明采用了两个不同相位偏移的扩频码序列和与输入混频信号作相关,通过比较两个序列的非相干累加和的大小来最终确定真实码相位:
其中,PB1C_fold表示折叠码相位,sampPerT表示相干积分时间(1ms)内的采样点数。
图4给出了B1C信号辅助B1I信号位同步的大致流程,首先通过B1C导频信号的码相位PB1C_pilot来初始化起始搜索位置:
式中也表示B1I信号的码相位估计值。
如图5所示,B1C扩频码与B1I信号的扩频码和NH码具有一定的固定对齐关系,即B1I信号的1bit导航电文宽度为20ms,扩频码周期为1ms,二次调制NH码片宽度为1ms,共20个码片;而B1C扩频码周期为10ms,正好等于NH码周期的一半,因此理论上只要得到了B1C信号的码相位,那B1I信号的码相位也就只存在两个不确定位置。
根据B1C导频信号的载波多普勒fd_B1C,计算B1I信号的载波多普勒fd_B1I和码多普勒fcoded估计值:
其中,fB1I和fB1C分别表示B1I和B1C信号的调制载波频率,为1561.098MHz和1575.42MHz;fcode0表示B1I信号标准扩频码率,为2.046Mcps。利用以上载波多普勒和码多普勒初始化对应中频和码率,此处与B1C导频信号不一样,前者只需要一个频点处的本地载波,而后者需要针对所有频点生成本地载波。
接下来进行载波剥离、码相关等,具体kernel配置也可参照B1C导频信号捕获时本地载波生成的结构设置;本发明通过CUDA提供的并行规约技术可以获得1ms内的相干积分值,通过非相干累加可以得到关于NH码相位的二维相关矩阵:
设s=[s0,s1,…,s19]表示连续20个1ms相干积分值,[n0,n1,…,n19]表示周期为20ms的NH码,取:
nh1=[n0,…,n9,n10,…,n19] (5)
nh2=[n10,…,n19,n0,…,n9] (6)
将s与nh1和nh2分别相乘,得到相关矩阵M:
然后,对相关矩阵M作DFT,此时变换到频域中的谱线峰值位置记为peakIdx,则对应的精确多普勒频率为:
其中,N表示DFT点数,fs表示数据更新率,此处应等于相干积分时间的倒数。
对矩阵M中的元素进行行累加,即可得到两个值,记为Q1和Q2,则:
式中,sampPerT_1ms表示1ms的采样点数。
以上公开的本发明优选实施例只是用于更直观地阐述本发明。优选实施例并没有详尽叙述本发明的全部内容,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改变化。本说明书选取并具体描述这些实施例,是为了更好解释本发明的原理和实际应用,从而使所属技术领域人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。

Claims (4)

1.一种基于GPU的北斗B1C/B1I双频并行多通道协同捕获方法,其特征在于,包括步骤如下:
步骤A,采用改进的并行码相位搜索算法对B1C导频信号进行捕获,包括本地扩频码生成、本地载波生成、扩频码相关以及码相位模糊度消除;
步骤B,B1I信号位同步:根据B1C导频信号的捕获结果,利用B1C与B1I信号之间载波频率和扩频码相位的固定关系,来确定B1I位同步阶段的载波频率和码相位搜索范围,进而获得B1I信号的载波多普勒和码相位偏移估计值。
2.根据权利要求1所述的一种基于GPU的北斗B1C/B1I双频并行多通道协同捕获方法,其特征在于,步骤A中,所述改进的并行码相位搜索算法包括步骤如下:
步骤A-1,为本地扩频码、本地载波、通道配置参数在GPU端分配全局内存空间,并采用对齐且连续合并的方式进行存储;分别在主机端和GPU端采用页锁定内存和全局内存保存输入中频数据;
步骤A-2,根据单次读入的中频信号数据量以及流处理器的占用率来确定GPU端核函数的参数,即网格内线程块数和块内线程数;
步骤A-3,预先将对应所有卫星PRN号的Weil码相位差和截取点信息保存在主机端的页锁定内存中;
步骤A-4,创建流标志符,分为数据拷贝和核函数启动两种;
步骤A-5,预先将cos/sin函数的查找表保存在页锁定内存中,并且该表中离散值的精度取决于不同接收机的性能要求;
步骤A-6,将保存所有通道的折叠次数、起始扩频码相位、起始载波相位、采样点数、多普勒频率值的空间首地址整合到统一的配置参数内存池中,同理将本地扩频码、本地载波空间首地址整合到统一的地址内存池中;
步骤A-7,将步骤A-1、A-3、A-5和A-6中保存的本地载波、本地扩频码、查找表和通道配置参数拷贝至GPU显存中,通过流来控制异步执行;
步骤A-8,根据起始扩频码相位,计算每个线程对应的码相位值,并根据预存的Weil码相位差和截取点生成对应采样点数的扩频码序列;
步骤A-9,先将全局内存中保存的cos/sin查找表读入共享内存中,然后计算每个线程对应的载波相位并生成载波,并利用它剥离中频信号中的载波成分;
步骤A-10,对步骤A-8和A-9中生成的多通道本地折叠码与剥离载波后的中频信号同时进行FFT,并采用同址运算;
步骤A-11,将步骤A-10中得到的两个FFT结果进行点乘,然后再对点乘结果取IFFT,从而得到每个折叠码相位处的相干积分结果;
步骤A-12,在通过若干次非相干累加后获得关于多普勒频移和折叠码相位的二维非相干矩阵之后,找到相关峰值的位置,其对应的行数和列数即该信号的载波多普勒和折叠码相位估计值,并记作fd_B1C和PB1C_fold
步骤A-13,采用时域相关技术来进一步确认B1C信号的真实扩频码相位,即从步骤A-12中的PB1C_fold处取经过载波剥离的中频信号,依次与不同码相位偏移的原始扩频码序列进行相关累加;
步骤A-14,最后通过寻找累加值中的最大值来判断真实的扩频码相位PB1C
3.根据权利要求1所述的一种基于GPU的北斗B1C/B1I双频并行多通道协同捕获方法,其特征在于,步骤B中,所述B1I信号位同步包括步骤如下:
步骤B-1,基于B1C导频信号的捕获结果,即载波多普勒fd_B1C,首先计算对应B1I信号的载波多普勒fd_B1I和码多普勒fcoded估计值:
其中,fB1I和fB1C分别表示B1I和B1C信号的调制载波频率;fcode0表示B1I信号标准扩频码率。
步骤B-2,将载波多普勒、码多普勒、本地载波存储空间首地址、本地扩频码空间首地址、采样点数均保存在页锁定内存中,并异步拷贝至GPU显存中;
步骤B-3,利用GPU的多线程技术完成载波和扩频码剥离后,再通过并行规约方法完成各个通道的1ms相干积分;
步骤B-4,将NH码平均分成两部分,20个码片值依次与1ms的相干积分结果相乘,并通过非相干累加获得关于NH码相位的二维相关矩阵:
设s=[s0,s1,…,s19]表示连续20个1ms相干积分值,[n0,n1,…,n19]表示周期为20ms的NH码,取:
nh1=[n0,…,n9,n10,…,n19];
nh2=[n10,…,n19,n0,…,n9];
将s与nh1和nh2分别相乘,得到相关矩阵M:
步骤B-5,对步骤B-4中的相关矩阵M作DFT,此时变换到频域中的谱线峰值位置记为peakIdx,则对应的精确多普勒频率为:
其中,N指DFT点数,fs指数据更新率,此处应等于相干积分时间的倒数;
步骤B-6,对步骤B-5中的DFT复数结果取模累加,通过比较相关值大小确定B1I信号的码相位。
4.根据权利要求3所述的一种基于GPU的北斗B1C/B1I双频并行多通道协同捕获方法,其特征在于,步骤B-5中,采用DFT进行载波多普勒搜索。
CN201810172639.6A 2018-03-01 2018-03-01 基于gpu的北斗b1c/b1i双频并行多通道协同捕获方法 Active CN108519611B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810172639.6A CN108519611B (zh) 2018-03-01 2018-03-01 基于gpu的北斗b1c/b1i双频并行多通道协同捕获方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810172639.6A CN108519611B (zh) 2018-03-01 2018-03-01 基于gpu的北斗b1c/b1i双频并行多通道协同捕获方法

Publications (2)

Publication Number Publication Date
CN108519611A true CN108519611A (zh) 2018-09-11
CN108519611B CN108519611B (zh) 2022-06-21

Family

ID=63433408

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810172639.6A Active CN108519611B (zh) 2018-03-01 2018-03-01 基于gpu的北斗b1c/b1i双频并行多通道协同捕获方法

Country Status (1)

Country Link
CN (1) CN108519611B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109581434A (zh) * 2018-11-28 2019-04-05 西安开阳微电子有限公司 一种B2a信号捕获方法及装置
CN109597101A (zh) * 2018-11-28 2019-04-09 上海交通大学 基于fft卫星信号搜索和跟踪环路的卫星信号跟踪方法
CN109743100A (zh) * 2019-01-15 2019-05-10 北京理工大学 基于北斗短报文体制的捕获信息的多用户通道分配方法
WO2020051850A1 (zh) * 2018-09-13 2020-03-19 华为技术有限公司 一种卫星信号处理方法及装置
CN111025348A (zh) * 2018-10-09 2020-04-17 泰斗微电子科技有限公司 B1c qmboc信号的接收方法及芯片、模组
CN113093232A (zh) * 2021-03-19 2021-07-09 上海交通大学 基于相关域的gnss多频联合捕获方法
CN114020333A (zh) * 2021-10-18 2022-02-08 珠海市芯动力科技有限公司 Cuda多线程处理方法、系统及相关设备
CN114063124A (zh) * 2021-11-08 2022-02-18 北京航空航天大学合肥创新研究院(北京航空航天大学合肥研究生院) 一种北斗b1c信号快速捕获方法及存储介质
CN114089386A (zh) * 2022-01-20 2022-02-25 长沙金维信息技术有限公司 用于北斗三代导航信号的多通道入锁方法
CN117270002A (zh) * 2023-11-23 2023-12-22 中国民航大学 一种新体制北斗信号无模糊度快速捕获方法、系统及设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104749583A (zh) * 2013-12-27 2015-07-01 吴焕琅 自动适应工作模式的高精度卫星接收机

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104749583A (zh) * 2013-12-27 2015-07-01 吴焕琅 自动适应工作模式的高精度卫星接收机

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CHUHAN WANG等: "Asymmetric Dual-Band Tracking Technique for Optimal Joint Processing of BDS B1I and B1C Signals", 《SENSORS》 *
王丽黎 等: "北斗B1I信号的捕获算法", 《计算机系统应用》 *
许良备: "北斗非GEO卫星信号码并行捕获", 《测绘通报》 *

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020051850A1 (zh) * 2018-09-13 2020-03-19 华为技术有限公司 一种卫星信号处理方法及装置
CN112703426A (zh) * 2018-09-13 2021-04-23 华为技术有限公司 一种卫星信号处理方法及装置
CN112703426B (zh) * 2018-09-13 2024-01-16 华为技术有限公司 一种卫星信号处理方法及装置
CN111025348A (zh) * 2018-10-09 2020-04-17 泰斗微电子科技有限公司 B1c qmboc信号的接收方法及芯片、模组
CN109597101A (zh) * 2018-11-28 2019-04-09 上海交通大学 基于fft卫星信号搜索和跟踪环路的卫星信号跟踪方法
CN109581434A (zh) * 2018-11-28 2019-04-05 西安开阳微电子有限公司 一种B2a信号捕获方法及装置
CN109581434B (zh) * 2018-11-28 2023-08-18 西安开阳微电子有限公司 一种B2a信号捕获方法及装置
CN109743100A (zh) * 2019-01-15 2019-05-10 北京理工大学 基于北斗短报文体制的捕获信息的多用户通道分配方法
CN109743100B (zh) * 2019-01-15 2020-04-21 北京理工大学 基于北斗短报文体制的捕获信息的多用户通道分配方法
CN113093232B (zh) * 2021-03-19 2022-11-18 上海交通大学 基于相关域的gnss多频联合捕获方法
CN113093232A (zh) * 2021-03-19 2021-07-09 上海交通大学 基于相关域的gnss多频联合捕获方法
CN114020333A (zh) * 2021-10-18 2022-02-08 珠海市芯动力科技有限公司 Cuda多线程处理方法、系统及相关设备
CN114020333B (zh) * 2021-10-18 2022-05-31 珠海市芯动力科技有限公司 Cuda多线程处理方法、系统及相关设备
CN114063124A (zh) * 2021-11-08 2022-02-18 北京航空航天大学合肥创新研究院(北京航空航天大学合肥研究生院) 一种北斗b1c信号快速捕获方法及存储介质
CN114089386B (zh) * 2022-01-20 2022-04-19 长沙金维信息技术有限公司 用于北斗三代导航信号的多通道入锁方法
CN114089386A (zh) * 2022-01-20 2022-02-25 长沙金维信息技术有限公司 用于北斗三代导航信号的多通道入锁方法
CN117270002A (zh) * 2023-11-23 2023-12-22 中国民航大学 一种新体制北斗信号无模糊度快速捕获方法、系统及设备
CN117270002B (zh) * 2023-11-23 2024-03-12 中国民航大学 一种新体制北斗信号无模糊度快速捕获方法、系统及设备

Also Published As

Publication number Publication date
CN108519611B (zh) 2022-06-21

Similar Documents

Publication Publication Date Title
CN108519611A (zh) 基于gpu的北斗b1c/b1i双频并行多通道协同捕获方法
CN102608626B (zh) 一种高灵敏度卫星导航信号捕获方法及系统
CN103278829A (zh) 一种基于gpu的并行导航卫星信号跟踪方法及其系统
CN110109154B (zh) 一种BOC(n,n)移位相关无模糊捕获方法及装置
CN104536016A (zh) 一种gnss新体制信号捕获装置及方法
CN108897009B (zh) 一种boc导航信号接收机及其码跟踪方法
CN117214926B (zh) 一种宽带复合导航信号跟踪方法
CN108196274A (zh) 适用BOC(n,n)信号的无模糊度捕获方法及装置
CN105242287B (zh) 基于gpu和imu的卫星导航软件接收机及其导航方法
CN105372678B (zh) 一种正弦boc调制信号的无模糊跟踪方法
CN106526632A (zh) 一种gnss捕获相干器和信号捕获方法
KR20100034627A (ko) 위성항법시스템 수신기의 신호획득 방법 및 장치
CN109581433B (zh) 一种l5信号捕获方法、装置及计算机存储介质
CN103941269A (zh) 用于卫星导航系统的pn码捕获方法
CN102707297A (zh) 一种compass信号的快速捕获方法
CN117270002B (zh) 一种新体制北斗信号无模糊度快速捕获方法、系统及设备
CN109581434A (zh) 一种B2a信号捕获方法及装置
CN106646547B (zh) 一种多普勒补偿方法、系统及并行相关捕获引擎
CN108957492A (zh) 一种gps的l1c/a和l1c联合捕获方法及装置
Gunawardena A universal GNSS software receiver MATLAB® toolbox for education and research
CN106019328B (zh) 一种boc信号的副峰消除方法
US20120274512A1 (en) Signal Processing Method, Device and System
Yan et al. An efficient two-stage B1C signal acquisition technique for engineering implementation of the modern beidou receiver
CN110376619A (zh) 全球导航卫星系统中信号处理装置
CN106707310B (zh) 确定测距码的码相位的方法、装置及用户终端

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