差分跳频的解调窗口同步算法
摘要:差分跳频是一种数字通信系统,其频率跳变速度快,通信保密性好。接收机采用软件无线电的技术解调。解调窗口的同步是关键技术,是正确解调的前提。推导出同步算法的计算公式,给出相应的数据图表和流程图。该算法同步建立时间短,运算量小,并且可以实时调整,在仿真中取得成功。
关键词:同步算法差分跳频软件无线电
1差分跳频简介
差分跳频系统工作于短波波段(2MHz~30MHz),频率跳变速度5000跳/s,最高数据传输速度为19.2kbps。5000跳/s的频率跳变使得频率不易被跟踪,通信保密性好。差分跳频不同于传统的模拟跳频,发射机采用DDS直接合成发送频率,接收机采用软件无线电方法解调。
简单说明系统的工作方式,见图1频率转移图。系统待发数据为0110110……。当第一个bit'0'到来时,频率点由f1转移到f2,该bit'0'用频率f2发送;当第二个bit'1'到来时,频率点由f2转移到f4,以此类推解调时,将接收信号采样的数字信号,对采样数据进行快速傅立叶变换(FFT)运算,识别当前的频率点,然后保护频率转移图和前一次的频率点解调原始数据。
实际系统的参数如下:将2.56MHz~28.16MHz的频带等间隔划分为10个信道,每个信道以5kHz等间隔取256频率点。通信开始前,系统扫描10信道,动态决定一个特性最好的信道用来通信,收发双方按协议从选定信道的256个频率点中取64作为工作频率,按存储在系统中的频率转移图进行通信。该系统支持三种数据传输速率:4.8kbps、9.6kbps和19.6kbps。
2同步策略
差分跳频系统采用软件无线电的方法进行数据解调。软件无线电结构降低了系统硬件的复杂性,接收机不需要传统模拟跳频系统中的频率合成电路和硬件的同步电路。但没有硬件的同步电路后,采用何种软件算法快速实现同步成为关键技术之一。
如图2所示,接收信号经过A/D采样变为数字信号,然后对一跳时间内(以下称为解调窗口)的采样数据进行FFT运算,识别当前的频率点,依据频率转移图和前一次的频率点解调原始数据。如果解调窗口不同步,则窗口内会出现两个频率点,无法判定该用哪个工作为解调频率点。因此必须将不同步的解调窗口滑动到同步位置,才能正确解调数据。
笔者设计的同步方法简述如下:
(1)随机选择初始窗口,对采样数据作FFT运算,识别可能出现的两个频率点f1和f2以及FFT后的相应幅度P1和P2(在频域中频率点的能量与幅度的平方成正比,为简化以幅度代替能量计算)。
(2)判断这两个频率点在时域波形上的顺序。
(3)频率点f的幅度P(请注意,这里指FFT后的频域幅度)只与两个因素有关:采样前模拟信号的时域振幅和该频率点在解调窗口内点据的时间长度。模拟信号的时域振幅可以在接收端采用自动增益控制保持常数值。那么,P只要频率点在解调窗口内点据时间长度(也就是该频率点占据的采样点数目)的单值函数,只要找到这个函数,即可先由FFT计算出幅度P,反求该频率点占据的窗口长度,最后将窗口滑动适当长度即可同步。
以下假设:采样频率为fs,解调窗口总长度为N,某一频率点占据的长度为N1。
定义:α=N1/N
3实现的方式
具体实现要考虑很多复杂的情况,详细说明如下。
首先要找到(3)中提及的函数关系,这个函数关系记为P=F(α)。
在满足(f1/fs)×N1=整数的条件下,由离散傅立叶变换的性质可推出P=F(α)=A·(N/4)·α,A是A/D采样前模拟信号的时域振幅。
但实际情况更为复杂。上面提到的(f1fs)×N1=整数的条件不可能总被满足。当系统的采样频率和窗口长度确定后(这两个量是系统级的参数,
一经确定不能变更),只有有限几个频率点满足要求。而差分跳频系统需要64个工作频率点,它们是收发双方按协议从选定信道的512个频率点中选择的,也就是说512个频点都有可能成为工作频率点,绝大部分不满足工作。如果条件得不到满足,那么公式修改为P=F(α)=H(f,α)·A·(N/4)·α。因子H(f,α)依赖于频率和α。H(f,α)无法动态自适应计算,因为依赖于α,而α恰好是要求解的变量。因此,直接对采样数据进行计算的方法不太可取。
还有一点,希望该跳频系统降低对同步的敏感性,从而降低复杂性和运算量,因此希望P=F(α)是非线性函数,以改善系统特性。
可采用对采样数据预先加窗函数修正的方法。本系统采用海明窗,因为海明窗是满足要求的最简单窗函数,并且可以理论推导出P=F(α)的函数式。海明窗定义为:
W(n)=0.5+0.5cos[2(π-N/2)]n=0,1,2,…,N-1(1)
经过推导得到加窗后的P=F(α)的估计式为:
P=F(α)=0.935A·N·{α/4-sin(2πα)/(8π)+[cos(α)-1]/(8π)}(2)
图3是用Matlab仿真得出的P=F(α)的图形。该图形不是按(2)式直接绘制的,它是实际仿真得到的结果,与(2)式彼此独立,但(2)式的图形也基本是这个图形。(2)式中的系数0.93可以在(0.92~0.94)之间微调。
图3是Matlab按下述方法计算得到的:对应每一个α值,在满足采样定理前提下随机选择1000点频率,让其占据的窗口相对长度为α,计算FFT后的频域幅度,求1000点的平均值作为纵坐标。因此图3所表达的函数 《差分跳频的解调窗口同步算法》
本文链接地址:http://www.oyaya.net/fanwen/view/175907.html
关键词:同步算法差分跳频软件无线电
1差分跳频简介
差分跳频系统工作于短波波段(2MHz~30MHz),频率跳变速度5000跳/s,最高数据传输速度为19.2kbps。5000跳/s的频率跳变使得频率不易被跟踪,通信保密性好。差分跳频不同于传统的模拟跳频,发射机采用DDS直接合成发送频率,接收机采用软件无线电方法解调。
简单说明系统的工作方式,见图1频率转移图。系统待发数据为0110110……。当第一个bit'0'到来时,频率点由f1转移到f2,该bit'0'用频率f2发送;当第二个bit'1'到来时,频率点由f2转移到f4,以此类推解调时,将接收信号采样的数字信号,对采样数据进行快速傅立叶变换(FFT)运算,识别当前的频率点,然后保护频率转移图和前一次的频率点解调原始数据。
实际系统的参数如下:将2.56MHz~28.16MHz的频带等间隔划分为10个信道,每个信道以5kHz等间隔取256频率点。通信开始前,系统扫描10信道,动态决定一个特性最好的信道用来通信,收发双方按协议从选定信道的256个频率点中取64作为工作频率,按存储在系统中的频率转移图进行通信。该系统支持三种数据传输速率:4.8kbps、9.6kbps和19.6kbps。
2同步策略
差分跳频系统采用软件无线电的方法进行数据解调。软件无线电结构降低了系统硬件的复杂性,接收机不需要传统模拟跳频系统中的频率合成电路和硬件的同步电路。但没有硬件的同步电路后,采用何种软件算法快速实现同步成为关键技术之一。
如图2所示,接收信号经过A/D采样变为数字信号,然后对一跳时间内(以下称为解调窗口)的采样数据进行FFT运算,识别当前的频率点,依据频率转移图和前一次的频率点解调原始数据。如果解调窗口不同步,则窗口内会出现两个频率点,无法判定该用哪个工作为解调频率点。因此必须将不同步的解调窗口滑动到同步位置,才能正确解调数据。
笔者设计的同步方法简述如下:
(1)随机选择初始窗口,对采样数据作FFT运算,识别可能出现的两个频率点f1和f2以及FFT后的相应幅度P1和P2(在频域中频率点的能量与幅度的平方成正比,为简化以幅度代替能量计算)。
(2)判断这两个频率点在时域波形上的顺序。
(3)频率点f的幅度P(请注意,这里指FFT后的频域幅度)只与两个因素有关:采样前模拟信号的时域振幅和该频率点在解调窗口内点据的时间长度。模拟信号的时域振幅可以在接收端采用自动增益控制保持常数值。那么,P只要频率点在解调窗口内点据时间长度(也就是该频率点占据的采样点数目)的单值函数,只要找到这个函数,即可先由FFT计算出幅度P,反求该频率点占据的窗口长度,最后将窗口滑动适当长度即可同步。
以下假设:采样频率为fs,解调窗口总长度为N,某一频率点占据的长度为N1。
定义:α=N1/N
3实现的方式
具体实现要考虑很多复杂的情况,详细说明如下。
首先要找到(3)中提及的函数关系,这个函数关系记为P=F(α)。
在满足(f1/fs)×N1=整数的条件下,由离散傅立叶变换的性质可推出P=F(α)=A·(N/4)·α,A是A/D采样前模拟信号的时域振幅。
但实际情况更为复杂。上面提到的(f1fs)×N1=整数的条件不可能总被满足。当系统的采样频率和窗口长度确定后(这两个量是系统级的参数,
一经确定不能变更),只有有限几个频率点满足要求。而差分跳频系统需要64个工作频率点,它们是收发双方按协议从选定信道的512个频率点中选择的,也就是说512个频点都有可能成为工作频率点,绝大部分不满足工作。如果条件得不到满足,那么公式修改为P=F(α)=H(f,α)·A·(N/4)·α。因子H(f,α)依赖于频率和α。H(f,α)无法动态自适应计算,因为依赖于α,而α恰好是要求解的变量。因此,直接对采样数据进行计算的方法不太可取。
还有一点,希望该跳频系统降低对同步的敏感性,从而降低复杂性和运算量,因此希望P=F(α)是非线性函数,以改善系统特性。
可采用对采样数据预先加窗函数修正的方法。本系统采用海明窗,因为海明窗是满足要求的最简单窗函数,并且可以理论推导出P=F(α)的函数式。海明窗定义为:
W(n)=0.5+0.5cos[2(π-N/2)]n=0,1,2,…,N-1(1)
经过推导得到加窗后的P=F(α)的估计式为:
P=F(α)=0.935A·N·{α/4-sin(2πα)/(8π)+[cos(α)-1]/(8π)}(2)
图3是用Matlab仿真得出的P=F(α)的图形。该图形不是按(2)式直接绘制的,它是实际仿真得到的结果,与(2)式彼此独立,但(2)式的图形也基本是这个图形。(2)式中的系数0.93可以在(0.92~0.94)之间微调。
图3是Matlab按下述方法计算得到的:对应每一个α值,在满足采样定理前提下随机选择1000点频率,让其占据的窗口相对长度为α,计算FFT后的频域幅度,求1000点的平均值作为纵坐标。因此图3所表达的函数 《差分跳频的解调窗口同步算法》