GPS CA码的捕获仿真研究 下载本文

这边对某一组进行详细论述,数字化后的输入信号和本地产生信号点对点相乘,乘积的5000个实部与虚部均方根代表某一个输出点的幅值。每隔200ns对新输入的数据执行一次上述操作,当输入电文长度为偏移5000个点后,也就是搜索了长为1ms的电文。其中含有5000个幅值点且本地信号有21个,将会产生105000个幅值,当出现一个高于阈值的幅值点时,这个最高值所在的输入电文点就是C/A码的起始点,如果fi频率分量产生了这个最高值,则这个fi即为载波频率。 3.3.2 循环相关捕获方法

循环相关能够将其当成是传统手段的简化算法,两者产生相同的结果。首先,本文先对循环相关的主要运算进行分析,具体内容如下:

如果一个输入信号经过一个线性时不变系统,卷积运算可产生时域结果,FFT可产生频域结果,如果系统脉冲响应为h?t?,则输入信号x?t?可以通过卷积得到如下的y?t?:

y?t???x?t???h???d???x???h?t???d???????

(3-7)

经过傅里叶变换,y?t?的频域响应为: Y?f??????????x???h?t???d?e??j2?ftdt ??x??????????h?t????e?j2?ftdtd??(3-8)

令t???u,则 Y?f???x???????????h?u?e?j2?fudue?2?f?d??j2?f?? ?H?f??x???e???(3-9)

d??H?f?X?f?对Y?f?进行傅里叶反变换,可得时域输出,结果如下: y?t??x?t??h?t??F?1??X?f?H?f???

(3-10)

其中,?为卷积,F?1为傅里叶反变换。

由此,我们可以看出时域的卷积等效于频域的傅里叶变换,两者关系可写为: x?t??h?t??X?f?H?f????X?f??H?f??x?t?h?t???(3-11)

可将这种特性称为傅里叶变换中卷积的二元性。

这种思想同样适用于离散系统。不同的是,响应y?n?为: y?n???x?m?h?n?m?m?0N?1(3-12)

19

其中,x?m?为输入信号,h?n?m?为离散时域系统响应,对y?n?进行DFT,结果为:

Y?k????x?m?h?n-m?e?n?0m?0N-1N-1N-1-j2?kn?N?N-1-j2??n-m?k?N??-j2?mk? ??x?m???h?n-m?e??em?0?n?0? ?H?k??x?m?e?n?0N-1-j2?mk?NN(3-13)

?X?k?H?k?

上述式3-12和式3-13称为周期卷积,它不会得出预想的线性卷积结果。

但是,卷积运算并不在捕获中使用,而是使用相关运算,x?n?和h?n?的关系为: z?n???x?m?h?n?m?m?0N?1(3-14)

其中,m前符号不同,因为它不是线性系统的脉冲响应。z?n?的DFT变换为:

Z?k????x?m?h?n?m?e?n?0m?0N-1N-1N-1-j2?kn?N?N-1-j2?n?mkN?-j2?mk? ??x?m???h?n?m?e?????e?m?0?n?0? ?H?k??x?m?e?n?0N?1-j2?mk?NN(3-15)

?H?k?X?1?k?

其中,X?1?k?是离散傅里叶反变换。式3-15还可以表示为:

Z?k????x?n?m?h?m?e?n?0m?0?N-1N-1-j2?kn?N??H?1?k?X?k?(3-16)

如果x?n?为实数,x?n??x?n?, ?表示复共轭。因此,Z?K?的幅值为:

Z?k??H??k?X?k??H?k?X??k?

(3-17)

根据式3-17可得到输入信号和本地产生信号的相关性,即提供了循环相关性。

论述了这些运算法则,输入电文通过5 MHz的数字化,只有1ms的输入电文来找到C/A码的起始点,搜索步进频率分辨率为1kHz,捕获步骤如下:

(1)对1ms的输入电文进行FFT,结果为,X?k?,其中n=k=0,1,2,...,4999; (2)取X?k?的复共轭为X??k?;

(3)利用式3-6生成21个本地码,然后采用5 MHz的采样频率执行数字化; (4)对本地码lsi?n?进行FFT得到lsi?k?;

20

(5)把X??k?和lsi?k?点对点相乘得到Rsi?k?;

(6)对Rsi?k?进行傅里叶反变换,时域中的值则为rsi?n?,则获得了105000(5000?21)个Rsi?n?;

(7)在输入电文200ns的分辨率下和载波频率为1kHz分辨率的条件下,Rsi?n?最大值中的第n个和第i个载波频率即为捕获到的C/A码,以上操作如图3-6所示:

图3-6 循环相关捕获过程图

3.3.3 延迟与累积捕获方法

为了去除输入信号中的频率数据是延迟与累积捕获方法主要目的,这样只需要用本地产生码去找到C/A码的起始点,找到起始点,就可以通过FFT或者DFT得到其载波频率。从理论上来看,这个方法是非常有效的,但是在实际处理中要考虑的问题有很多。例如,该方法要求输入信号都为复数量,而实际采集到的数据都是实数,必须要有转换成复数这一个步骤,又是一个额外计算。还有当两个含噪声的信号进行相乘时,在搜索1ms的电文时某个卫星可能不能被捕获到。但是该方法实际处理比前两种方法相对复杂,实际考虑的问题也更多。

3.4 捕获不确定性的相关处理

从1ms的电文中能够获取的分辨率为1 kHz,这个值太粗糙,用于下一步的跟踪会产生误差。因此为了得到精细频率分辨率(简称精频),可以通过相位关系来解决这个不确定性。将输入信号剥离了C/A码,输入就变为连续信号,假设在m时刻,1ms的电文中含有最高频率分量为Xm?k?(k为输入信号的频率分量),则通过DFT输出可以获的输入信号的初始相位:

?m?k??tan?1?

?Im?Xm?k????

?Re?Xm?k?????

21

(3-18)

其中,Im和Re分别表示虚部和实部。

假设在m时刻之后瞬间的n时刻,输入电文的DFT分量Xm?k?也为最强分量,因为短时间内输入分量变化不大,因此,n时刻的初始相位角和频率分量k为:

?Im?Xn?k????n?k??tan??

?Re?Xn?k??????1 (3-19)

由这两个相位角可以算得精频为: f??n?k???m?k?

2??n?m? (3-20)

其中,?n?m?为两组连续电文间的延时。

?n?k???m?k?的式3-20得到的频率分辨率比从DFT中得到的精确的多。为了保持f的唯一性,

值必须小于2?,如果大于2?,带宽为?n?m?。

但是,仅用式3-20求解精频,取DFT得第k个分量,频率分辨率为1kHz,不确定宽度也为1kHz,如果输入信号落在了两个频率分量之间,由于存在噪声,其相位无法确认,如图3-7所示。

(a) 频率相离

(b) 输入信号

图3-7 循环相关捕获示意图

为解决这种不确定性,当输入为连续信号时,我们采用幅值比较方法来处理,具体步骤如下: (1)对1ms的输入电文采用循环相关捕获方法,按照上文的操作方法可以在1 kHz的分辨率下获取C/A码的起始点和载波频率。

(2)找到最高频率分量X?k?,在同一个毫秒数据内的两个分量,一个比X?k?中的k值低

22