目录
- 1. 测距码的概念与随机噪声码特性
- 2. 伪随机噪声码 (PRN) 的引入与优势
- 3. 码的两种表示形式与运算规则
- 4. m序列的产生原理:线性反馈移位寄存器
- 5. 移位寄存器的状态周期与“全零”禁区
- 6. AI 总结
1. 测距码的概念与随机噪声码特性 原片 @ 00:00*
测距码 (Ranging Code) 是 GPS 系统中用于测定卫星到接收机之间距离的二进制代码(0 和 1 组成的序列)。理解测距码的核心在于理解其自相关 (Autocorrelation) 和 互相关 (Cross-correlation) 特性。
1.1 随机码 (Random Noise Code) 的定义
- 随机性:随机码是一种二进制代码,每一位是 0 还是 1 是完全随机的,预先不可知。
- 概率模型:就像从口袋里摸球,摸到 0 和 1 的概率各为 1/2。无论前几位是什么,下一位的状态都不受影响。
1.2 理想的相关系数特性
为了精确测距,测距码需要具备优良的相关特性:
- 自相关特性 (Auto-correlation):
- 对齐时:当两个相同的随机码完全对齐(时延 \tau = 0)时,相关系数为 1(最大值)。
- 错开时:只要错开一个码元(甚至不到一个码元),相关系数迅速下降,理想情况下接近 0。
- 图形描述:自相关函数图应该是一个非常尖锐的峰。
- 物理意义:尖锐的峰值意味着接收机可以非常敏锐地判断信号是否对齐。如果错开一点点,相关值就大幅下降,这有利于高精度的测距。如果波峰宽大迟钝,则测距精度低。
Screenshot-[03:51]
提示:此处展示了自相关函数的图形。横轴是位移(码元偏移),纵轴是相关系数。可以看到在 0点处有一个尖锐的峰值(R=1),而向左或向右偏移后,数值迅速归零。这演示了理想测距码的特性。
- 互相关特性 (Cross-correlation):
- 两个完全不同的随机码,无论如何移动或对齐,它们之间的相关系数始终接近 0。
- 物理意义:这意味着不同卫星发射的信号互不干扰(多址干扰小)。
2. 伪随机噪声码 (PRN) 的引入与优势 原片 @ 09:37*
虽然随机噪声码的相关特性非常适合测距,但它在工程上有一个致命缺陷:不可复制。
2.1 随机码的缺陷
- 无法复现:卫星产生一个随机序列发射出来,但地面接收机无法产生一个一模一样的随机序列来进行比对(相关运算)。因为它是随机的,下一位是什么谁都不知道。
- 测距原理要求:测距本质是测量信号传播时间,这要求接收机必须能在本地产生一个与卫星信号结构完全一致的复制码,通过调整时延来对齐两者。
2.2 伪随机噪声码 (Pseudo-Random Noise Code, PRN)
为了解决上述问题,GPS 采用了伪随机噪声码:
- “伪” (Pseudo):它不是真正的随机。它是由特定的电路(信号发生器)或算法产生的,是有规律的。只要给定了电路结构和初值,产生的码序列就是确定的、可重复的。
- “随机”特性:虽然它是确定的,但在统计特性上(主要是自相关和互相关特性),它非常接近于随机噪声码。
- 保留优势:具有尖锐的自相关峰值,利于精确测距。
- 解决缺陷:卫星和接收机使用相同的电路参数,就能产生完全相同的码序列,从而实现信号的捕获和跟踪。
3. 码的两种表示形式与运算规则 原片 @ 12:39*
在 GPS 信号处理中,测距码有两种等效的表示方式,分别对应不同的数学运算规则。
3.1 二进制序列表示 (Binary Sequence)
- 数值:使用 0 和 1。
- 运算:模二相加 (Modulo-2 Addition)。
- 规则:0+0=0, 0+1=1, 1+0=1, 1+1=0(相当于异或运算 XOR)。
- 用于逻辑电路设计和状态分析。
3.2 图形/波形表示 (Waveform Representation)
- 数值:使用电平幅度 +1 和 -1。
- 二进制 0 对应幅度 +1。
- 二进制 1 对应幅度 -1。
- 图形:表现为矩形波(Square Wave)。
- 运算:乘法运算 (Multiplication)。
- 对应关系:
- 二进制的“模二加 0” \leftrightarrow 波形的“乘 +1” (不变)。
- 二进制的“模二加 1” \leftrightarrow 波形的“乘 -1” (反相)。
- 例如:二进制 0+0=0 对应波形 (+1) \times (+1) = +1 (即 0)。
- 例如:二进制 0+1=1 对应波形 (+1) \times (-1) = -1 (即 1)。
- 对应关系:
- 应用:在计算相关系数时,通常使用波形乘法积分的方式。
Screenshot-[13:47]
提示:图中展示了二进制码序列(0, 1…)与对应矩形波(+1, -1…)的转换关系。理解这种映射对于后续理解信号调制和解调至关重要。
4. m序列的产生原理:线性反馈移位寄存器 原片 @ 16:17*
GPS 中最基本的伪随机码产生器是基于 m序列 (Maximum Length Sequence) 的。其硬件实现依赖于 线性反馈移位寄存器 (Linear Feedback Shift Register, LFSR)。
4.1 电路结构
以一个 4级 (4-stage) 移位寄存器为例:
- 移位寄存器 (Shift Register):由多个存储单元(寄存器)串联,在时钟脉冲 (Clock Pulse) 驱动下,数据依次向右移动。
- 反馈回路 (Feedback Loop):取某些特定级(例如第3级和第4级)的输出。
- 模二相加:将取出的位进行模二相加运算。
- 输入:将运算结果反馈输入到第1级寄存器。
Screenshot-[16:32]
提示:这是一个4级线性反馈移位寄存器的原理图。可以看到四个方框代表寄存器,时钟信号驱动数据向右流动,末尾的信号被引出,与第三级的信号进行模二相加(⊕符号),结果又回到了第一级。这是产生伪随机码的核心硬件模型。
4.2 状态演变示例
假设初始状态为全 1 (1, 1, 1, 1),电路运行过程如下:
- 初始状态:1, 1, 1, 1。
- 第1个脉冲:
- 第3级(1) 和 第4级(1) 模二相加:1 \oplus 1 = 0。
- 反馈:0 进入第1级。
- 移位:原第1,2,3级的值移入第2,3,4级。
- 新状态:0, 1, 1, 1。输出原第4级的值:1。
- 第2个脉冲:
- 第3级(1) 和 第4级(1) 模二相加:1 \oplus 1 = 0。
- 反馈:0 进入第1级。
- 新状态:0, 0, 1, 1。输出原第4级的值:1。
- …以此类推,电路会遍历各种状态。
Screenshot-[18:47]
提示:这里展示了寄存器状态随时间变化的列表。每一行代表一个时钟周期后的寄存器内容(1/0状态)以及输出位。通过追踪这个表,可以验证产生的序列是否符合预期。
5. 移位寄存器的状态周期与“全零”禁区 原片 @ 22:31*
5.1 状态总数与 m 序列长度
- 对于 n 级移位寄存器,每个寄存器有 0 或 1 两种状态。
- 理论上总的状态组合有 2^n 种。
- 全零状态 (Forbidden State):状态 0, 0, 0, 0 是不允许出现的。
- 原因:如果寄存器全为 0,则反馈 0 \oplus 0 = 0,下一刻还是全 0。电路将陷入“死循环”,永远输出 0。
- 最大周期长度:排除全零状态后,m序列的最大长度(周期)为:
N = 2^n – 1 这意味着产生的码序列在 2^n – 1 位之后会重复,开始下一个循环。
5.2 实际应用举例
- 4级寄存器:周期 N = 2^4 – 1 = 15。即产生 15 位长的码序列后重复。
- 10级寄存器 (GPS C/A码):
- GPS 的 C/A 码使用 10 级移位寄存器。
- 周期 N = 2^{10} – 1 = 1023。
- 这就是为什么 C/A 码的码长是 1023 码元 (Chips)。
5.3 码率与时间
- 码率 (Chip Rate):取决于驱动移位寄存器的时钟脉冲频率。时钟频率是多少,输出码率就是多少。
- 码元宽度:时钟脉冲间隔的时间即为一个码元的持续时间(宽度)。
6. AI 总结
本节视频深入讲解了 GPS 系统中测距码的核心原理。首先介绍了随机噪声码具有理想的自相关特性(对齐时为1,错开即为0),非常适合精确测距,但因其不可复制性无法直接应用于工程。因此,GPS 引入了伪随机噪声码 (PRN),它既具备随机码优良的相关特性,又是确定且可复制的。
视频详细演示了 PRN 的产生机制——线性反馈移位寄存器 (LFSR)。重点讲解了二进制(0/1)与波形(+1/-1)的对应关系,以及模二相加运算规则。通过 4 级寄存器的实例,推导了 m 序列的生成过程,指出了全零状态会导致死循环,因此 n 级寄存器产生的 m 序列最大周期为 2^n – 1。这一数学原理直接决定了 GPS C/A 码 1023 个码长的由来。