专利名称:用于全球导航卫星系统接收器的相关运算系统及其方法
技术领域:
本发明是关于全球导航卫星系统(Global Navigation Satellite System, GNSS)接收器,特别是有关全球导航卫星系统接收器使用快速傅利叶转换(Fast FourierTransform, FFT)技术的相关运算(correlation)系统及方法。
背景技术:
快速傅利叶转换是处理数字信号熟知的技术,已应用于卫星通信领域,例如全球导航卫星系统。对全球导航卫星系统接收器而言,首次定位时间(TimetoFirst Fix, TTFT)对使用者来说一直是个至关重要的问题。首次定位时间通常指的是3D定位时找到至少4颗卫星所费的时间。为了改善首次定位时间的效率,以长时间积分获取卫星信号是不希望的。快速傅利叶转换提供有力的解决方法,能够改善相关运算的速度及信号获取、追踪的效率。
获取一颗卫星必须考虑可j见卫星(visible satellites),码相位(code phase)及多普勒频率区(Dopplerfrequencybin)等至少三个方面。包含特定卫星、特定码相位及特定多普勒频率区的一个组合称为一个假设。来自特定卫星的信号是以扩频方式编码,接收器通过将信号与延迟的扩频码,例如伪随机噪声(PseudoRandom Noise,可简称为PRN)码,进行相关运算以侦测来自特定卫星的信号。如果相关运算的相关结果够高,表示接收器命中卫星,此即称为"获取"(acquisition^随后,接收器使用延迟的扩频码与来自特定卫星的信号同步,此即称为"追踪,,(tmcking)。举例而言,对于特定卫星及特定多普勒频率区,全球定位系统GPS接收器需要搜寻1023个码相位。传统上,该1023个码相位的相关运算是以时分复用(Time Division Multiplexing, TDM)方式完成。众所周知,这将花费许多时间。而且,由于噪音及其它干扰,接收器的准确度和灵敏度会受到影响。故需要提供额外的处理程序来提高接收器的性能。快速傅利叶转换是个合适的解决方法,可以满足这些要求。快速傅利叶转换提供强大的相关运算能力,有助于快速获取信号,但是需要大量的存储器以供后续处理使用,硬件成本是一大负担。发明内容本发明提供一种用于全球导航卫星系统接收器的相关运算系统及其方法,该相关运算系统使用快速傅利叶转换引擎以执行相关运算并利用后端快速傅利
叶转换(post-FFT)来提升接收器的性能。
本发明的相关运算系统中,快速傅利叶转换引擎用以对输入的数据流执行快速傅利叶转换操作(FFT operation),并利用伪随机噪声码副本,以产生频域相关结果(frequency-domain correlation result)。快速傅利叶转换引擎并对频域相关结果执行反快速傅利叶转换操作(IFFToperation),以在相关运算的阶段为每个假设产生后端相关数据(post correlation data)。快速傅利叶转换引擎并对已选取的假设的后端相关数据执行FFT操作,以在后端相关运算的阶^殳产生后端快速傅利叶转换相关结果(post-correlation FFT result)。快速傅利叶转换引擎以可编程(programmable)的时分复用方式执行该多个操作。用以存储数据流的快速傅利叶转换数据緩冲区、用以存储频域相关结果的反快速傅利叶转换数据緩冲区以及
分成三个部分的数据緩沖区实施。相关运算系统具有强度运算单元,用以计算相关结果或快速傅利叶转换结果的强度,即在相关运算阶段及后端相关运算阶段,强度运算单元是共享的(shared)。相关运算系统还具有频谱存储器,用以存储后端快速傅利叶转换相关结果。而且,频谱存储器并用以累积相关运算结果的相参(coherent)积累结果,作为信号非相参(incoherent)积累之用。
本发明还提供另一种相关运算系统,该相关运算系统使用时域相关器,对数据流执行相关运算操作,并且使用快速傅利叶转换引擎,对相关结果执行后端快速傅利叶转换,以得到后端快速傅利叶转换相关结果,从而提升接收器的性能。该相关运算系统具有强度运算单元,用以计算后端快速傅利叶转换产生的相关结果或快速傅利叶转换结果的强度。该相关运算系统还具有频语存储器,用以存储后端快速傅利叶转换相关结果。而且,频谱存储器并用以累积相关结果的相参积累结果,作为信号非相参积累之用。
本发明并提供一种用于全球导航卫星系统接收器的相关运算方法,该相关运算方法包括对数据流执行相关运算4喿作以产生后端相关数据;累积后端相关数据以得到相参积累结果;选择后端相关数据或其相参积累结果;以及对所选择的后端相关数据或其相参积累结果进行快速傅利叶转换操作,以产生后端快速傅利叶转换相关结果。该相关运算操作可在时域或频域完成。
本发明提供的用于全球导航卫星系统接收器的相关运算系统及其方法,可以提高全球导航卫星系统接收器获取与追踪卫星信号的速度,并且通过共享一
些基本组件,可以降低硬件复杂度,同时维持接收器良好的性能。
图1显示根据本发明第一实施方式具有相关运算系统的全球导航卫星系统接收器的方框示意图。
图2显示根据本发明执行的相关运算方法的主要步骤的流程图。
图3大略显示由码相位和频率形成的二维的個i殳分布。
图4显示根据本发明第二实施方式全球导航卫星系统接收器的相关运算系统的示意图。
具体实施例方式
配合所附图式,以下将详细描述本发明。
如果输入数据的取样频率为1.023兆赫兹(MHz),则每微秒可取得1023个数据点。对于特定卫星及特定多普勒频率区,首先利用快速傅利叶转换(以下简称为FFT)将信号的数据流转换至频域,同时完成1023个码相位的相关运算操作(相乘及相加运算操作),接着将相关运算操作的结果转换回时域,此称为反快速傅利叶转换(InverseFFT,以下筒称为IFFT)。 FFT的效果与时域相关运算的效果相同。FFT的相关运算也称为前端相关快速傅利叶转换(pre-correlationFFT)。相较于时域相关运算,前端相关快速傅利叶转换完成相关运算的时间较短,但代价是必须消耗较多电力。然而,由于快速获取卫星是全球导航卫星系统接收器的基本要求,所以前端相关快速傅利叶转换是符合所需的选择。
图1显示根据本发明第一实施方式的具有相关运算系统的全球导航卫星系统接收器的方框示意图。图2显示接收器上执^f亍的相关运算方法的流程图。该接收器具有天线10,用来接收每个假设的信号(步骤S10);射频前端22,用来执行射频有关的操作(步骤S20),主要包括对信号的数据流做下变频(down-conversion)及凄t字化(digitization)的动作;多普勒移除单元24,用来移除数据流的多普勒频率部分(步骤S30)。移除多普勒频率部分后的数据流存储于数据緩沖区30(步骤S40)。由图示中可以看到,本实施方式中数据緩冲区30分成三个部分FFT数据緩冲区302、 IFFT数据緩冲区304及假设緩沖区306。由多普勒移除单元24输出的数据流被存储于FFT数据緩沖区302。由于FFT的级数(scale)以2的幂次升幂增加,对于每微秒可取得1023个数据点的取样频率来i兌,FFT数据緩沖区302需要1024点的存储器容量。选择器35是用来选取数据緩沖区30中某个緩沖区的数据,在这个阶段,选择器35选M储于FFT数据緩沖区302的数据流来用于传输。取自FFT数据緩沖区302的数据流提供至FFT引擎40。 FFT引擎40是以快速傅利叶转换核心(kemel)实施,快速傅利叶转换核心可以分成平行运算的多个子快速傅利叶转换(sub-FFT)单元以增加处理产出量(throughput)。子快速傅利叶转换单元为可编程(programmable)的单元,能够支持各种不同长度的快速傅利叶转换操作。快速傅利叶转换核心除了快速傅利叶转换操作,仅需通过调整旋转因子(twiddle factor),即能执行IFFT操作。FFT引擎40对来自FFT数据緩冲区302的数据流触发(trigger)快速傅利叶转换操作,这个阶段即所谓的"前端相关快速傅利叶转换"(步骤S52)。利用混合器(mixer) 52将快速傅利叶转换的结果与伪随机噪声(PRN)码副本相乘来得到频域相关数据。该PRN码是以离散傅利叶转换(Discrete Fourier Transform, DFT)操作处理并同样具有1024个数据点。频域相关数据接着经由路由器(router) 50存储回数据緩沖区30(步骤S54).。频域相关数据是存储于IFFT数据緩冲区304,以作为后续处理之用。为将数据流转换至时域,选择器35选择输出存储于IFFT数据緩冲区304的数据,并将该数据传送至FFT引擎40。在这个阶段,利用"走转因子来触发IFFT操作以取得后端相关数据(步骤S56),而且调整蝴蝶单元(butterflyunit)中的快速傅利叶转换系数。FFT与IFFT之间的转换关是众所周知,因此在此省略这部分的描述。经IFFT处理后的数据为时域相关数据,在此称为"后端相关数据"以方便描述。
得出的IFFT数据(即后端相关数据)经由路由器50存储于相参积累存储器(coherent integration memory) 60(步骤S70)。
强度运算单元(magnitudecalculation) 65用以作为相参积累结果的非相参积累之用。完成收集1微秒内的假设数目后,后端相关快速傅利叶转换(post-correlation FFT)被触发。
如果那些后端相关数据已被计算,以及存储于相参积累存储器60的假设被选取(步骤S75),其后端相关数据也会经由路由器50及假设选择器80传送至数据緩沖区30的假设緩冲区306,这部分稍后会进一步说明。较佳地,会考虑收集那些落在相关结果峰值附近的假设。用作后端相关快速傅利叶转换运算的码相位的范围及数据点的数目取决于相关的强度分布、搜寻频率范围及对分辨率的要求等等。路由器50用来为数据流安排路径,以指引数据流到适当的接续组件,例如混合器52、相参积累存储器60、强度运算单元65或假设选择器80。路由器50及选择器35、假设选择器80可用硬件或软件的控制功能区块实施。
9例如,路由器50及选择器35、假设选择器80可根据时间及通道多路配置(timeand channel multiplexing arrangement)分别由接收器的石更件逻辑或处理器(图中未示)控制数据路径。
如果1微秒中需要尝试1023个码相位,则每微秒中需要计算1023个码相位的相关数据。为提高接收器的性能,较佳的选择为收集具有不同频率但有相同码相位的数据点来作分析。如图3所示,码相位和频率形成二维的假设分布。例如,在频域方面,收集32或64个相同码相位的数据点,即32或64个假设被选取。已选取的假设的后端相关数据经由假设选择器80传送至假设緩冲区306存储。如果信号强度很弱,或者所关注的频率范围很窄但是对频率的分辨率要求很高,较佳的选择为收集相关数据的相参积累结果,即使用那些后端相关数据存储于相参积累存储器60的假设的相参积累。举例而言,每2微秒自相参积累存储器60取出相同码相位的相参积累结杲,以经由假设选择器80存储至假设缓冲区306。假设选择器80选择后端相关数据或后端相关数据的相参积累结果至假设緩冲区306(步骤S80)。
已选取的假设的数据接着通过选择器35传送至FFT引擎40以进行快速傅利叶转换操作,这个阶段称为"后端相关FFT"(步骤S90)。由后端相关FFT运算所得的频镨数据存储至存储器70。存储器70是用作存储频谱数据的频谱存储器以及非相参积累存储器。又或者,存储器70仅用作频谱存储器。在某些情况下,存储器70可只存储后端相关运算的频谱数据,因为相关结果的峰值及正确的码相位可由这些频谱数据推导得出。而且,也有可能仅存储最高(top)的N个频率区的频i普结果到存储器70,以降^f氐存储器容量的需求。例如,当后端相关快速傅利叶转换的输出产生时,只有最高的两个或三个频谱结果及其相应的频率位置编号存储于存储器70之中,这样做可以降低对存储器容量的需求,而且同时仍可以保留如用以处理多音干扰(multi-tone jammer)的信息。强度运算单元65是用来计算频谱数据的强度(步骤SIOO),例如因此可借着寻找峰值来确定信号是否已被获取。强度运算单元65计算来自相参积累存储器60的相参积累结果的强度,作为非相参积累之用,以及计算以时分复用(TDM)方式运作后端相关快速傅利叶转换运算取得的频镨的强度。
如上所述,前端相关快速/反快速傅利叶转换及后端相关快速傅利叶转换可共享FFT引擎40。而且,不同信道(channel)也可共享同一个FFT引擎40,共享的方式可为时分复用方式(TDM)。用作前端相关快速傅利叶转换、IFFT及后端相关快速傅利叶转换的时分复用次序可依性能最佳化或依情况所需而调
整。如果FFT引擎40在获取模式和追踪模式之间共享,特别是在后端相关快速傅利叶转换时,收集数据的倾向是不同的。在获取模式时,有必要搜寻较广的码相位范围,但是对一个特定的码相位,可以搜寻较少的数据点。在追踪模式时,码相位基本上已经确定,所以没有必要搜寻较广的码相位范围,对已确定的较小码相位范围,可以收集较多的数据点来达到较佳的性能。
根据本发明,后端相关快速傅利叶转换也可与时域相关运算一起运作。图4显示根据本发明第二实施方式的全球导航卫星系统接收器的相关运算系统的示意图。图4中,相关器(correlator) 110之前的全球导航卫星系统接收器的组件,如连接其上的天线、射频前端及多普勒移除单元,为清楚简洁起见而予以省略。同时一起参阅图2,本实施方式中,接收器具有时域的相关器110,相关器110以时分复用方式用每个假设的本地PRN码副本延迟形式(version)对输入的数据流执行相关运算操作,以取得后端相关数据(步骤S60),如本领域所泛知,该数据流已被下变频及数字化。每个4叚设的相关结果累积于相参积累存储器115(步骤S70),以作为相参积累之用。如果假设被选取(步骤S75),已选取的假设的相关结果经由假设选择器120传送至假设緩冲区130当作一个数据点。和第一实施方式一样,如果信号强度太弱或有其它考虑,假设选择器120也可选>^相参积累结果传送至4艮设緩冲区130(步骤S80)。需注意的是,所有实施方式中,可在任何适当的阶段选取假设,图2所示的流程图的步骤S75仅为示例性的安排。
存储于假设緩沖区130的数据被送至FFT引擎140, FFT引擎140可由快速傅利叶转换核心实施。FFT引擎140对存储于假设緩冲区130的数据执行快速傅利叶转换才喿作以产生后端相关快速傅利叶转换数据(步骤S卯),即假设的频i普凄史据(spectrums of the hypotheses), 也可称为后端相关步贞i普(post-correlationspectrums)。为确定相关结果的峰值,有必要利用强度运算单元150来计算频谱的强度,强度运算单元150也可共享以计算来自相参积累存储器115的相参积累结果的强度,作为非相参积累之用(步骤S100)。由FFT引擎140所得的频语及其经过强度计算得到的强度存储于存储器160,存储器160是当作频谱存储器。存储器160同时也可当作非相参积累存储器,用以同时累积相参积累结果。获取信号及追踪信号所需的信息可由后端相关频镨推导得出。因此,后端相关快速傅利叶转换提供许多有利之处来提升接收器性能。
本发明的接收器中,有一些组件是共享的,例如,FFT引擎、强度运算单元及很多存储器。因此,可以降低硬件的复杂度。
以上所述仅为本发明的较佳实施方式,凡依本发明权利要求所做的均等变化与修饰,都应属本发明的涵盖范围。
权利要求
1、一种用于全球导航卫星系统接收器的相关运算系统,该相关运算系统包含快速傅利叶转换数据缓冲区,用来存储数据流;快速傅利叶转换引擎,用来对来自该快速傅利叶转换数据缓冲区的数据流执行快速傅利叶转换操作,以产生前端相关结果;混合器,用于对该前端相关结果与转换至频域的码执行相关计算,以产生频域相关结果;反快速傅利叶转换数据缓冲区,用以存储该频域相关结果,该快速傅利叶转换引擎进一步对来自该反快速傅利叶转换数据缓冲区的频域相关结果执行反快速傅利叶转换操作,以产生后端相关数据;以及相参积累存储器,用以累积该后端相关数据,用于该数据流的相参积累。
2、 根据权利要求1所述的用于全球导航卫星系统接收器的相关运算系统,其特征在于,更包含假设緩冲区,该后端相关数据存储于该假设緩沖区。
3、 根据权利要求2所述的用于全球导航卫星系统接收器的相关运算系统,其特征在于,该快速傅利叶转换数据緩冲区、该反快速傅利叶转换数据緩沖区及该假设緩冲区是数据緩冲区的不同部分。
4、 根据权利要求3所述的用于全球导航卫星系统接收器的相关运算系统,其特征在于,当该数据流的假设被选取时,该已选取的假设的后端相关数据被传送至该快速傅利叶转换引擎,该快速傅利叶转换引擎从而产生后端快速傅利叶转换相关结果。
5、 根据权利要求4所述的用于全球导航卫星系统接收器的相关运算系统,其特征在于,更包含强度运算单元,用以计算该后端快速傅利叶转换相关结果的强度。
6、 根据权利要求5所述的用于全球导航卫星系统接收器的相关运算系统,其特征在于,该强度运算单元更用以计算该后端相关数据的强度或该后端相关数据的相参积累结果的强度。
7、 根据权利要求6所述的用于全球导航卫星系统接收器的相关运算系统,其特征在于,更包含频谱存储器,用以存储该后端快速傅利叶转换相关结果。
8、 根据权利要求7所述的用于全球导航卫星系统接收器的相关运算系统,其特征在于,该频谱存储器更用以累积来自该相参积累存储器的相参积累结果, 作为信号非相参积累之用。
9、 根据权利要求2所述的用于全球导航卫星系统接收器的相关运算系统, 其特征在于,更包含第一选择器,用以选择该数据流、该频域相关结果及该后 端相关数据其中之一,以传送至该快速傅利叶转换引擎。
10、 根据权利要求1所述的用于全球导航卫星系统接收器的相关运算系统, 其特征在于,更包含假设緩冲区,如果该数据流的假设被选取时,该已选取的 假设的后端相关数据的相参积累结果存储于该假设緩沖区。
11 、根据权利要求10所述的用于全球导航卫星系统接收器的相关运算系统, 其特征在于,该已选取的假设的相参积累结果被传送至该快速傅利叶转换引擎, 该快速傅利叶转换引擎从而产生后端快速傅利叶转换相关结果。
12、 根据权利要求11所述的用于全球导航卫星系统接收器的相关运算系统, 其特征在于,更包含第二选择器,用以选择该后端相关数据或该后端相关数据 的相参积累结果,以存储于该假设緩沖区。
13、 根据权利要求1所述的用于全球导航卫星系统接收器的相关运算系统, 其特征在于,更包含路由器,用以规划该快速傅利叶转换引擎的输出路径。
14、 根据权利要求1所述的用于全球导航卫星系统接收器的相关运算系统, 其特征在于,该快速傅利叶转换引擎包含多个子快速傅利叶转换单元。
15、 根据权利要求1所述的用于全球导航卫星系统接收器的相关运算系统, 其特征在于,该快速傅利叶转换引擎以时分复用方式执行快速傅利叶转换操作 及反快速傅利叶转换纟喿作。
16、 根据权利要求1所述的用于全球导航卫星系统接收器的相关运算系统, 其特征在于,该快速傅利叶转换引擎以时分复用方式执行于多个信道。
17、 一种用于全球导航卫星系统接收器的相关运算系统,该相关运算系统 包含相关器,用以对数据流执行相关运算操作,以产生后端相关数据; 相参积累存储器,用以累积该后端相关数据,作为该后端相关数据相参积 累之用;以及快速傅利叶转换引擎,对该数据流的已选取的多个假设,对该多个已选取 的假设的后端相关数据或其后端相关数据的相参积累结果执行快速傅利叶转换 才喿作,从而产生后端快速傅利叶转换相关结果。3
18、 根据权利要求17所述的用于全球导航卫星系统接收器的相关运算系统,其特征在于,更包含假设选择器,用以选择并将该后端相关数据或该后端相关数据的相参积累结果输入至该快速傅利叶转换引擎。
19、 根据权利要求17所述的用于全球导航卫星系统接收器的相关运算系统,其特征在于,更包含假设緩沖区,用以存储该多个已选取的假设的后端相关数据或其后端相关数据的相参积累结果。
20、 根据权利要求17所述的用于全球导航卫星系统接收器的相关运算系统,其特征在于,更包含强度运算单元,用以计算该后端快速傅利叶转换相关结果的强度。
21 、根据权利要求20所述的用于全球导航卫星系统接收器的相关运算系统,其特征在于,该强度运算单元更用以计算该后端相关数据的强度或该后端相关数据的相参积累结果的强度。
22、 根据权利要求17所述的用于全球导航卫星系统接收器的相关运算系统,其特征在于,更包含频谱存储器,用以存储该后端快速傅利叶转换相关结果。
23、 根据权利要求22所述的用于全球导航卫星系统接收器的相关运算系统,其特征在于,该频语存储器更用以累积来自该相参积累存储器的相参积累结果,作为信号非相参积累之用。
24、 根据权利要求17所述的用于全球导航卫星系统接收器的相关运算系统,其特征在于,该快速傅利叶转换引擎包含多个子快速傅利叶转换单元。
25 、根据权利要求17所述的用于全球导航卫星系统接收器的相关运算系统,其特征在于,该快速傅利叶转换引擎以时分复用方式才喿作于多个信道。
26、 一种用于全球导航卫星系统接收器的相关运算方法,该相关运算方法包含对数据流执行相关运算操作以产生后端相关数据;累积该后端相关彩:据以得到相参积累结果;选择该后端相关数据或其相参积累结果;以及对该所选择的后端相关数据或其相参积累结果进行快速傅利叶转换操作,以产生后端快速傅利叶转换相关结果。
27、 根据权利要求26所述的用于全球导航卫星系统接收器的相关运算方法,其特征在于,该相关运算操作是执行于时域。
28、 根据权利要求26所述的用于全球导航卫星系统接收器的相关运算方法,其特征在于,该相关运算操作包含对该数据流进行快速傅利叶转换操作以产生频域相关数据;以及 对该频域相关数据进行反快速傅利叶转换才喿作以产生该后端相关数据。
29、 根据权利要求26所述的用于全球导航卫星系统接收器的相关运算方法, 其特征在于,更包含计算该后端快速傅利叶转换相关结果的强度。
30、 根据权利要求26所述的用于全球导航卫星系统接收器的相关运算方法, 其特征在于,更包含选取该数据流的多个假设以及收集该多个已选取的假设的 后端相关数据以进行快速傅利叶转换操作,从而产生该后端快速傅利叶转换相 关结果。
全文摘要
一种用于全球导航卫星系统接收器的相关运算系统及其方法,利用快速傅利叶转换(FFT)引擎执行相关运算及后端快速傅利叶转换操作。该FFT引擎对输入的数据流执行FFT操作,并利用伪随机噪声码副本,产生频域相关结果,并对频域相关结果执行反快速傅利叶转换操作(IFFT),来为每个假设产生后端相关数据,并以可编程时分复用方式对已选取假设的后端相关数据执行FFT操作,以产生后端快速傅利叶转换相关结果。本发明提供的相关运算系统及其方法,可以提高全球导航卫星系统接收器获取与追踪卫星信号的速度,并且通过共享一些基本组件,可以降低硬件复杂度,同时维持接收器良好的性能。
文档编号G01S1/04GK101498779SQ200810145389
公开日2009年8月5日 申请日期2008年8月6日 优先权日2008年1月31日
发明者张志祥, 李明鸿, 魏睿民 申请人:联发科技股份有限公司