m 序列·

m 序列长度为 2n12^n-1,具有强自相关性和低互相关性,具体体现为对极化之后相关运算的峰均比。

m 序列由线性反馈移位寄存器(Linear Feedback Shift Register,LFSR)生成,,取决于 LFSR 的阶数和生成种子(寄存器初始状态)。

  • 阶数

例如阶数为 66 时,本原多项式x6+x+1x^6+x+1,则多项式共有 77 位,对应 LSFR66 个寄存器,

m_serial
阶数为 6 的 LFSR
  • 生成种子

生成种子不能为全 00,否则输出永远是 00.

MATLAB 仿真程序如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function [pn] = mseq(coe)
len = 2 ^ (length(coe) - 1)-1;
pn = zeros(1, len);

lfsr = randi([0 1], 1, (length(coe) - 1));
% lfsr = [zeros(1, length(coe) - 2) 1];
for i = 1: len
pn(i) = lfsr(end);
lfsr_front = 0;
for j = (length(coe) - 1): -1: 1
lfsr_front = lfsr_front + coe(j + 1) * lfsr(j);
end
lfsr_front = mod(sum(lfsr_front), 2);
lfsr = [lfsr_front lfsr(1: end - 1)];
end
end

相关峰·

在接收机的捕获模块中,以相关峰高度作为捕获性能的衡量指标,当接收信号的相位与本地码相位对齐时,相关运算的结果会出现较大的相关峰,但如果存在频偏,会导致相关峰高度下降。下面推导相关峰高度与频偏的关系:

设捕获模块的输入信号的一个符号为 rr,它被扩展为 NN 个码片,忽略随机时延,即与本地 PN 码相位对齐时,时域表达式为

r(n)=s(n)ej2πΔfnTs+w(n) r(n) = s(n) e^{j2\pi\Delta f n T_s} + w(n)

式中,s(n)s(n) 表示本地参考信号,w(n)w(n) 表示离散的加性高斯白噪声,Δf\Delta f 表示频偏,Ts=1fsT_s=\dfrac{1}{f_s} 表示采样周期。

s(n)={A,0nN10,elses(n) = \left\{ \begin{aligned} & A, 0\leq n\leq N - 1 \\ & 0, else \end{aligned} \right.

捕获的输入信号与本地参考信号的相关结果为

R(Δf)=n=0N1r(n)s(n)R(\Delta f) = \sum_{n = 0}^{N - 1} r(n)\cdot s^*(n)

忽略噪声项

R(Δf)=n=0N1s(n)2ej2πΔfnTsR(\Delta f) = \sum_{n = 0}^{N - 1} |s(n)|^2 e^{j2\pi \Delta f n T_s}

s(n)2=A2|s(n)|^2 = A^2,带入上式中得

R(Δf)=A2n=0N1ej2πΔfnTs=A21ej2πΔfTsN1ej2πΔfTs=A2ej2πΔfTs2(N1)sin(2πΔfTs2N)sin(2πΔfTs2)\begin{aligned} R(\Delta f) &= A^2 \sum_{n = 0}^{N - 1} e^{j2\pi \Delta f n T_s}\\ &= A^2\dfrac{1 - e^{j2\pi \Delta f T_s N}}{1 - e^{j2\pi\Delta f T_s}}\\ &= A^2 e^{j\frac{2\pi \Delta f T_s}{2}(N - 1)}\dfrac{\sin{(\frac{2\pi\Delta f T_s}{2}N})}{\sin{(\frac{2\pi\Delta f T_s}{2}})}\\ \end{aligned}

R(Δf)=A2sin(2πΔfTs2N)sin(2πΔfTs2)|R(\Delta f)| = A^2 \left| \dfrac{\sin{(\frac{2\pi\Delta f T_s}{2}N})}{\sin{(\frac{2\pi \Delta f T_s}{2}})}\right|

Δf\Delta f 远小于采样率 fsf_s 时,R(Δf)|R(\Delta f)| 近似为

limΔf0R(Δf)=A2Nsin(πΔfTsN)πΔfTsN=R(0)sinc(πΔfTsN)\begin{aligned} \lim_{\Delta f \to 0} { |R(\Delta f)| } & = A^2 N \dfrac{ \sin{(\pi \Delta f T_s N)} }{ \pi \Delta f T_s N }\\ & = |R(0)| \cdot |\text{sinc}{(\pi \Delta f T_s N)}|\\ \end{aligned}

Δf=0\Delta f = 0 时,峰值位置 R(0)=A2N|R(0)| = A^2N,零点位置对应

Δf=kTsN=kfsN,k=±1,±2,\Delta f = \dfrac{k}{T_s N} = \dfrac{kf_s}{N}, k = \pm1, \pm 2, \cdots

由此可以得出,相关峰随频偏的变化满足 sinc\text{sinc} 函数,并且当频偏为 RsR_s 的整数倍时,相关峰高度为 00,MATLAB 仿真结果如图所示

在捕获模块频偏搜索的精度选择上,如果以 RsR_s 为步进设置频偏通道,在 0.5Rs0.5R_s 的奇数倍时相关峰高度最低,为无频偏位置的 63.66%63.66\%,性能损失较大,如果以 0.5Rs0.5R_s 为步进设置频偏通道,在 0.25Rs0.25R_s 的奇数倍时相关峰高度最低,为无频偏位置的 90.03%90.03\%,性能损失较低,因此,综合捕获性能与资源消耗的考量,选择以 0.5Rs0.5R_s 作为频偏搜索精度。