参考文献:
An IEEE 802.11a/g/p OFDM Receiver for GNU Radio
Performance Assessment of IEEE 802.11p with an Open Source SDR-Based Prototype
Robust Frequency and Timing Synchronization for OFDM——公式(8)
包检测(Frame Detection)又可以叫粗同步(Coarse Synchronization),是802.11a/g/p一些协议下特定的定时方法。原理是这些协议都会在时序最前放插入短训练序列(short training sequence/field)和长训练序列(long training sequence)。短的用来找到每个OFDM帧(frame)的起点,自动增益控制(Automatic Gain Control,AGC)以及天线选择(Diversity Selection)。长的用来精同步,信道估计。还有Signal帧包含一些信号的信息,如长度,采样率等等,后面才是真正的数据部分。由于短训练存在明显的周期性,因此可以用自相关算法求峰值得到起点的位置,同时我们在时域也可以观察到明显的周期性。
图来自:Performance Assessment of IEEE 802.11p with an Open Source SDR-Based Prototype
利用Matlab的APP “Wireless Waveform Generator”可以生成仿真信号,并且时域上开头部分显然存在周期性
加入时延10后,利用自相关算法可以得到在10附近达到阈值(一般设定为最大值的0.75左右),因此得到定位。
原理及matlab代码如下:
%% 信号x(t)做时延16的自相关。因为一个STS长为16
win_size = 300;
Pn = zeros(1, win_size);
Cn = zeros(1, win_size);
for ii=1:win_size
Pn(ii) = sum(abs(x(ii+16:ii+16+15)).^2);
Cn(ii) = x(ii:ii+15) * x(ii+16:ii+16+15)';
end
Mn = abs(Cn).^2 ./ Pn.^2;