2021/3/20 简化
之前的手写公式看着太潦草,正好今天又看到了频偏估计的定点代码,结合添加频偏的公式,再分析一波。
对一段序列添加频偏采用下面的公式。
在发端通常会设计两段相隔L的一模一样的导频序列。估计频偏时,将两段序列共轭相乘,再相加,求出该复数的角度angle。则,将上述公式反过来即可求出频偏 。
注意,此时得到的归一化频偏单位为弧度。在定点中,求出的角度单位为度,则分母中的2pi换成360。
原理分析如下:
设发端两段导频序列相隔L个数据点,导频序列为
将序列1与序列1共轭相乘,再相加,得到
求出该复数的角度angle,再利用上面的公式,归一化频偏便求出来了。
2020/11/14
还是上次的小活(求最高频偏和频偏序列长度的关系)。刚给老师看了运行结果,老师很快就指出了我求频偏的那句代码存在错误,并且给我讲解了求频偏的原理。记录下来。(我真是只小菜鸡qaq,老师威武
因此,在估计频偏时,应当对前后两段序列中的一段取共轭,之后在点乘。实现代码如下:
% x_noise是列向量
cfo_est = angle(x_noise(nn).'*conj(x_noise(nn+Nlength(i))))*360/(2*pi);
% 采用下面的代码也一样的
cfo_est = angle(x_noise(nn)'*(x_noise(nn+Nlength(i))))*360/(2*pi);
上图两种实现方式相差了一个负号。