GPS接收机的位同步和帧同步验证过程

2024-10-26

前言

跟踪成功搞定后,基本上难啃的骨头已经都啃完了。后面的工作就是时间的问题了,跟踪的下一步就是位同步和帧同步了。接收机在对信号保持稳定跟踪后,还需要完成位同步,即从接收信号中找到数据比特的边缘,接着再实现帧同步,即从接收信号中找到子帧起始边缘。

位同步

由于数据的速率是50bps,即每一比特电文是20ms;伪码的速率是1.023MHz,即码周期为1ms;而我们的积分清除时间是1ms,每一个伪码第一个码片产生时开始积分,并送出结果。所得的即时位积分清除结果为1ms计算一次,与一个伪码同步。因此这里需要对数据进行位同步,就是找到真实数据中每20ms的开始端,这样才能进行后面的帧同步。

考虑到导航电文中相邻数据比特之间会发生相位跳变,也就是说相邻的20ms数据之间可能会出现一次相位跳变,并且每一个宽20ms的数据比特起始沿在时间上必定与伪码周期的第一个码片起始沿重合,这与前面实时计算1ms的积分清除结果一样。所以理想情况下,相邻两个1ms宽的数据之间如果发生相位跳变,则发生跳变的地方必然是20ms数据比特的起始沿。但实际由于受到真实数据和噪声等因素的干扰,相邻1ms之间的相位跳变次数有一定的范围,所以这里采用直方图判断的方法实现,原理如下图所示。

GPS接收机的位同步和帧同步验证过程 (https://ic.work/) 技术资料 第1张

根据谢刚书上描述的方法,可以设定位同步时间为1秒钟,两个门限N1 = 25和N2 = 15。

计数器结果达到或超过门限N1,则其对应符号位的起始时刻宣布建立位同步。

需要注意的是,由于载波环采用的是二象限反正切鉴相器,所解调出来的数据存在180°相位模糊度的问题。有关如何消除180°相位模糊度的问题将下面的帧同步中做进一步介绍。

帧同步

帧同步过程是在取得码相位跟踪、载波频率跟踪和数据位同步之后的过程,主要目的是将相关器20ms历元计数器的起始位置与子帧起始位置相对应起来,从而将接收机时间与GPS时相对应起来,使得1ms与20ms历元计数器真正表达GPS时的秒内计数。同步过程另一个重要的作用就是对前面各个同步过程的一个总的校验,是数据解调之后的校验,因而也是最为严格的。

帧同步过程校验的内容包括:(参考谢刚的书)

数据位反转校验,由于上一个字最后一位校验位与本字的异或相关特性,需对该校验位进行判断并相应反转本字中的所有信息位。

遥测字(TLM)巴克码验证。

交接字(HOW)末两位全零校验码验证。

子帧号验证。

字校验位验证。

当前20ms历元计数器值验证。

GPS导航电文一共有5帧,每一帧有10个字,每1个字由30bit组成。每一帧的前两个字为TLM和HOW,各30比特,其中TLM的前8bit也就是每一帧的前8bit都为固定的“10001011”(0x8b),同时每一个字的最后6bit(24~30)为奇偶校验标志位,因此这里帧同步不仅需要寻找到“10001011”帧头,同时还要把找到的数据组成完整的帧并通过奇偶校验才能确保后面的运算正确进行。

在查找帧头的时候需要考虑180°相位模糊度的问题。在卫星实际播发的数据中,因为每一个子帧的最后两位被控制为“00”,所以每一帧的帧头不会受到奇偶校验位的影响,也就是永远都为“10001011”。因而我们可以通过对帧头的判断来消除180°相位模糊度问题。更具体的描述可以参考谢刚的书上的描述

奇偶校验

奇偶校验算法如下:

GPS接收机的位同步和帧同步验证过程 (https://ic.work/) 技术资料 第2张

总结

完成位同步和帧同步,不仅是为了把电文给解析出来,同时为伪距观测量的计算打下了基础。在位同步和帧同步的过程中,需要同时记录当前的epoch数(20ms中第几个1ms)和bit数(一帧有300个bit)以及当前帧号(一个星期100800个帧),这些计数值可以交由PL端进行维护。为后面的本地时间和伪距计算打下基础。

文章推荐

相关推荐