PN码
定义
PN码是一类兼有确定性与随机性的序列码。它的结构或生成方式在通信开始前就已确定,收发双方都能重复造出完全相同的码流,因此可以用于同步和相干解调;与此同时,它在统计上又接近白噪声,未掌握生成方法的接收者难以从码流本身判断其规律[1][3]。
工程上一般使用二元{0,1}序列。衡量其伪随机性的常用指标包括:一个周期内 0 与 1 的数目接近相等;长度为 $k$ 的游程数量约为长度 $k+1$ 游程的两倍;以及具有二值或近似二值的自相关函数。这类序列常直接充当同步码或抗干扰码[1]。
原理
最常见的生成方式是用带反馈的移位寄存器。n 级线性反馈移位寄存器(LFSR)最多只有 $2^n$ 个状态,若初始状态全为零则输出恒为零,因此在非零初始状态下其周期不超过 $2^n-1$。当反馈抽头对应的特征多项式为本原多项式时,序列恰好取到最大周期 $2^n-1$,这种最长序列称为 m 序列[3]。反馈逻辑可写成 $a_i=c_1a_{i-1}+c_2a_{i-2}+\cdots+c_na_{i-n}$,其中的加为模 2 加[4]。
m 序列的最大长度由移位寄存器级数决定,而具体码型由反馈抽头的位置与数量决定;级数增加时硬件开销近似线性增长,周期却按指数增长,因此可用较小电路得到极长的重复周期[3]。由于单个 m 序列可提供的地址数有限,实际系统中还使用由两条等长 m 序列优选对模 2 相加构成的 Gold 序列,其族内序列数量明显多于 m 序列,且互相关特性较好[4][5]。
接收端把本地生成的同一码序列与来波相乘并积分,即相关运算。只有当本地码与接收码对齐到码片以内时,相关输出才出现明显峰值;据此可以判定信号的存在并测出时延,这一过程称为捕获,此后转入跟踪以维持对齐[6][7]。由于 PN 码的归一化相关函数在零位移处为 1、在其他位移处约为 $1/L$,其尖锐峰值同时给出了定时信息和可分离的多址能力[2]。
发展历程
伪随机序列的早期研究属于纯数学问题,可追溯到 1894 年关于 De Bruijn 序列的组合研究,20 世纪 30 年代学界关注的是环上的线性递归序列;这一阶段的研究与应用基本无关[8]。
1948 年香农建立信息论后,情况发生变化:一次一密体制要求密钥量与明文量相当,如何产生长周期、可复现的伪随机序列成为 20 世纪 50 年代早期的研究热点,线性反馈移位寄存器序列尤其是 m 序列的理论在此期间基本成形[8][9]。1969 年 Massey 关于移位寄存器综合的工作表明,线性复杂度为 n 的序列只需 2n 个连续比特即可恢复,序列研究由此转向非线性生成器[8]。
在应用一侧,扩频通信于第二次世界大战期间被构思用于军事通信,1949 年美国联邦通信实验室完成了世界上第一个直接序列扩频系统,此类系统在 1950 年被命名为噪声调制与相关检测系统;1985 年码分多址概念被提出后,PN 码从军用走向民用移动通信[10]。20 世纪 70 年代以后,GPS 等卫星导航系统采用 Gold 序列构造民用测距码,PN 码的生成也从手工连线的移位寄存器改为可编程逻辑器件实现[11][2]。
应用
在扩频通信中,高速 PN 码与信息流相乘,把窄带信号的能量摊到很宽的频带上;接收端用同一码序列解扩,窄带干扰因与本地码不相关而被抑制,不同用户则靠互相关很小的不同码序列在同一频段上区分,这就是码分多址的基本机制[10]。在第三代移动通信中,码的选择直接影响系统容量、抗干扰能力和接入速度等指标[3]。
卫星导航是另一类典型用途。GPS 的民用 C/A 码属于 Gold 序列族,码长 1023 个码片,码率 1.023 MHz,周期 1 ms,每颗卫星使用不同的码相位以便区分;接收机通过复制码与来波相关,由对齐的时延换算伪距,再解出位置[6][11]。在雷达与声呐中,PN 码用于对大功率脉冲做幅度调制,经相关处理后实现脉冲压缩,从而同时改善距离分辨率和探测灵敏度[2]。此外,PN 码还可作为正交频分复用系统的训练序列或保护间隔用于信道估计与同步,并用于误码测试中的伪随机码源与保密通信中的数据白化[12][3]。
局限
有限周期是 PN 码的固有限制。n 级线性反馈移位寄存器的周期上限为 $2^n-1$,码周期只能在寄存器级数与硬件规模之间取舍;周期越长,抗侦破能力越好,但捕获所需搜索的空间与时间也随之增加[3][13]。在低信噪比或存在较大多普勒频移时,码捕获尤其耗时,工程上需借助并行相关器、循环搜索或其它算法缩短捕获时间[6][14]。
多址能力同样受码资源约束。可用地址数取决于序列族的大小,m 序列虽然自相关特性好,但地址数偏少、容易被截获,因而在实际系统中常被 Gold 序列等族规模更大的码型替代,而 Gold 序列族中通常只有平衡码被采用[4]。不同用户码之间的互相关不可能完全为零,用户数增加会累积多址干扰,并带来远近效应,使系统性能随用户数量上升而下降[14]。
从密码学角度看,m 序列的线性复杂度过低,2n 个连续比特即可由 Berlekamp-Massey 算法重构整条序列,因此不能直接用作流密码的密钥流,需要改用非线性生成器构造的序列,并引入线性复杂度、免疫度等额外指标来评价[8]。
参见
参考资料
- PN码-学术百科-知网空间 [引用日期2026-10-29]
- Use-of-pseudo-random-codes-in-pulse-compression [引用日期2026-10-29]
- [科普中国]-伪随机二进制序列 - 版权归原作者所有,如有侵权,请联系我们 [引用日期2026-10-29]
- google.com 上的网页 [引用日期2026-10-29]
- [科普中国]-伪随机信号 [引用日期2026-10-29]
- 使用关于卫星定位系统的辅助数据的方法和装置 - 大多数GPS接收机利用相关法来计算伪距 [引用日期2026-10-29]
- WO2002061451A1 [引用日期2026-10-29]
- [科普中国]-伪随机序列 - 版权归原作者所有,如有侵权,请联系我们 [引用日期2026-10-29]
- 伪随机序列 [引用日期2026-10-29]
- 扩频通信技术 [引用日期2026-10-29]
- C/A码_百度百科 [引用日期2026-10-29]
- 伪噪声序列_百度百科 [引用日期2026-10-29]
- google.com 上的网页 [引用日期2026-10-29]
- ieee.org 上的网页 [引用日期2026-10-29]