用MATLAB产生随机数进行仿真,找到相关性最好的一组训练序列。调制之后,用滑动相关计算训练序列与整个数据的相关值。计算出相关值之后,观察数据,想办法找出相关最大值。
这里面相关值的计算公式:
是接收机本地训练序列(经过调制的)与接收回来的数据,共轭相乘相加。
matlab 代码对应语句是:
A_length = length (TRAIN_moded); % A_length是训练序列的长度
leng_xcorr = length (ALL) - A_length; % 相关值的长度(leng_xcorr)= 所有数据的长度(ALL) - A_length(训练序列的长度)
for n= 1:leng_xcorr %滑动相乘,假设训练序列长度是28.比如说,第一次相乘的数据是 1:28,第二次相乘的数据是2:29 ……
xcorr_XX(n) = abs( ALL_noise((1: A_length)+n-1) * TRAIN_moded' ); %注意