发明内容
本发明提供了一种频偏处理方法及装置,以至少解决通过现有技术获取到的频偏估计值不能同时满足频偏估计值在精度和/或范围上的要求的问题。
根据本发明的一个方面,提供了一种频偏处理方法,包括:对频点进行多个不同参数配置的频偏估计,获得多个频偏估计值;比较所述多个频偏估计值;在所述多个频偏估计值之间的偏差小于阈值的情况下,从所述多个频偏估计值中输出至少一个频偏估计值作为频偏补偿量。
优选地,使用所述频偏补偿量进行频偏补偿;通过数控振荡器进行频偏补偿。
优选地,在所述多个频偏估计值之间的偏差不小于阈值的情况下,将频点切换至所述频点的下一频点,直到所述多个频偏估计值之间的偏差小于阈值。
优选地,获得多个频偏估计值包括:通过以下公式根据同步数据帧的下一帧的帧头位置对应的差分相关值获得频偏估计值:Δω=angle(Rn)/M,其中,Δω为所述频偏估计值,Rn为同步数据帧的下一帧的帧头位置对应的差分相关值,M为差分的阶数。
优选地,配置所述多个不同参数为获取所述差分相关值时进行差分运算的多个差分阶数;
在所述多个频偏估计值之间的偏差小于阈值的情况下,从所述多个频偏估计值中输出差分阶数大的频偏估计值作为频偏补偿量。
优选地,获取所述同步数据帧的下一帧的帧头位置对应的差分相关值包括:通过比特序列获取所述数据帧的前导序列;将所述前导序列做差分运算获得第一结果,将所述比特序列作线性运算获得第二结果,将所述第一结果与所述第二结果进行相关运算,获得所述差分相关值。
优选地,通过比特序列获取所述数据帧的前导序列包括:将所述比特序列前后各周期延拓一预定比特数;将延拓后的比特序列输入到扰码器进行扰码;根据预定规则对扰码器输出的比特序列进行映射调制得到所述前导序列。
优选地,将通过收端的接收符号与所述比特序列中的符号进行运算获得的所述差分相关值取模后获得的模值存入到滑动窗,通过在滑动窗搜索最大的所述模值,并将最大的所述模值对应的位置作为所述数据帧的帧头位置。
优选地,所述比特序列为恒包络零自相关CAZAC序列。
根据本发明的另一方面,提供了一种频偏处理装置,包括:获得模块,用于对频点进行多个不同参数配置的频偏估计,获得多个频偏估计值;比较模块,用于比较所述多个频偏估计值;输出模块,用于在所述多个频偏估计值之间的偏差小于阈值的情况下,从所述多个频偏估计值中输出至少一个频偏估计值作为频偏补偿量。
优选地,切换模块,用于在所述多个频偏估计值之间的偏差不小于阈值的情况下,将频点切换至所述频点的下一频点,直到所述多个频偏估计值之间的偏差小于阈值。
通过本发明,采用对频点进行多个不同参数配置的频偏估计,获得多个频偏估计值;比较所述多个频偏估计值;在所述多个频偏估计值之间的偏差小于阈值的情况下,从所述多个频偏估计值中输出至少一个频偏估计值作为频偏补偿量,解决了现有技术获取到的频偏估计值不能满足频偏估计值在精度上的要求,或不能在大范围进行频偏估计的问题,进而达到了获取的频偏精度高,以及能够获得较大范围内的频偏估计值的效果。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
在本实施例中提供了一种频偏处理方法,图1是根据本发明实施例的频偏处理方法的流程图,如图1所示,该流程包括如下步骤:
步骤S102,对频点进行多个不同参数配置的频偏估计,获得多个频偏估计值;
步骤S104,比较该多个频偏估计值;
步骤S106,在该多个频偏估计值之间的偏差小于阈值的情况下,从该多个频偏估计值中输出至少一个频偏估计值作为频偏补偿量。
通过上述步骤,将在频点多个不同参数配置情况下的多个频偏估计值进行比较,通过比较结果获取的频偏估计值作为频偏补偿量,解决了现有技术中扫频时间长和因扫频步长大导致的频偏捕获精度低的问题,提高了频偏估计值的精度。
使用该频偏补偿量进行频偏补偿;通过数控振荡器进行频偏补偿,即,在数控振荡器进行频偏补偿之前进行频偏估计,根据频偏估计获得的频偏补偿量作为数控振荡器的频率控制字对频偏进行补偿。在通过上述频偏估计获得了较为精确的频偏补偿量,而锁相环能够实时跟踪时钟的偏移,通过将两者获得的频偏估计结合获得的频偏估计具备较好的性能。
另一方面,在该多个频偏估计值之间的偏差不小于阈值的情况下,将频点切换至该频点的下一频点,直到该多个频偏估计值之间的偏差小于阈值。因此,通过在一个频点切换到另一频点进行频偏估计,因此可以实现在一定频段范围内的频偏估计,即通过扫频的方法获得在较大范围内精确的频偏估计值。
获得多个频偏估计值的方式可以多种,例如,根据同步数据帧的下一帧的帧头位置对应的差分相关值获得频偏估计值:通过以下数学公式:Δω=angle(Rn)/M,其中,Δω为该频偏估计值,Rn为同步数据帧的下一帧的帧头位置对应的差分相关值,M为差分的阶数。另外,在从该多个频偏估计值中输出至少一个频偏估计值作为频偏补偿量时,可以根据具体频偏估计的不同,对在不同参数配置时的不同属性(该不同属性可以根据技术人员的技术经验获得)来决定输出该频点较为精确的频偏估计值作为频偏补偿量,例如,通过在频点配置多个不同的参数时,配置该多个不同参数为获取该差分相关值时进行差分运算的多个差分阶数;在该多个频偏估计值之间的偏差小于阈值的情况下,从该多个频偏估计值中输出差分阶数大的频偏估计值作为频偏补偿量。
获取该同步数据帧的下一帧的帧头位置对应的差分相关值可以通过多种方式来实现,相关性的定义也可以根据数学或相关学科的不同而不同,下面对数学中序列的相关性为例进行说明,通过比特序列获取该数据帧的前导序列,例如,将该某一比特序列(该比特序列可以为恒包络零自相关(Const Amplitude Zero Auto-Correlation,简称为CAZAC)序列)前后各周期延拓一预定比特数;将延拓后的比特序列输入到扰码器进行扰码;根据预定规则对扰码器输出的比特序列进行映射调制得到该前导序列;将该前导序列做差分运算获得第一结果,将该比特序列作线性运算获得第二结果,将该第一结果与该第二结果进行相关运算,获得该差分相关值。
获取通过收端的接收符号与该比特序列中的符号进行运算获得的差分相关值之后,将该差分相关值取模后获得的模值存入到滑动窗,通过在滑动窗搜索最大模值,并将该最大模值对应的位置作为该数据帧的帧头位置,通过在搜索窗的方式能够快速地搜索到最大的差分相关模值,并且实施较为方便。
在本实施例中还提供了一种频偏处理装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图2是根据本发明实施例的频偏处理装置的结构框图,如图2所示,该装置包括获得模块22、比较模块24和输出模块26。下面对该装置进行说明。获得模块22,用于对频点进行多个不同参数配置的频偏估计,获得多个频偏估计值;比较模块24,连接至获得模块22,用于比较该多个频偏估计值;输出模块26,连接至比较模块24,用于在该多个频偏估计值之间的偏差小于阈值的情况下,从该多个频偏估计值中输出至少一个频偏估计值作为频偏补偿量。
图3是根据本发明优选实施例的频偏处理装置的结构框图,如图3所示,该装置除包括图2所示的所有模块外,还包括切换模块28,连接至比较模块24和输出模块26,用于在该多个频偏估计值之间的偏差不小于阈值的情况下,将频点切换至该频点的下一频点,直到该多个频偏估计值之间的偏差小于阈值。
本实施例在频偏精细校正之前进行扫频处理,即通过切换不同的频点,在不同频点上尝试正确捕获频偏值。通过本发明的实施例提供了一种支持全相位的快速扫频方法,通过两个不同范围的频偏估计器的一致性来指示扫频,加快扫频的速度,并在扫频结束输出一定精度的频偏估计值。
在本实施例中还提供了一种基于频偏检测的扫频方法,该方法包括以下步骤:
S1,配置频偏检测延迟长度M、N(M>N),配置频偏检测门限值Th,配置扫频步长Δωstep(-π/M<Δωstep<π/M),计算频点个数初始化频点状态Sfrq和初始频偏补偿量Δω=0。
S2,通信节点之间发送的数据帧格式包括前导序列(帧头)、控制字和帧体数据,利用前导序列进行帧同步。
该前导序列可以通过以下方式获得:由对长度为L的比特序列RC={lk,k=1,…,L}前后各周期延拓p bit后得到比特序列TC={tk,k=1,…,L+2p},经长度为M的扰码器再进行映射调制得到长度为M+L+2p的前导序列B={bk,k=1,…,M+L+2p},其中,对扰码器输出的每一比特用Sk=(1-2*bk)ejπ/4映射到QPSK星座点;
S3,通信节点中的接收端通过对接收到的前导序列中的符号rn做M阶差分运算后与将比特序列RC经过1-2*RC运算获得的比特序列进行相关运算得相关值
将每次计算得到的相关值求模存入长度为2p+1的滑动窗(Wk,k=1,2,…,2p+1),然后在窗内搜索最大峰值,搜索最大峰值可以通过以下方式来实现,若相关值求模后的值Wk同时满足以下条件:
1)Wp+1>V1;
2)|Wp+1-Wk|>VH(k=p+1-p1,…,p-p2,p+p2+2,…,p+1+p1,且p>p1>p2>0);
则为最大峰值,该最大峰值对应的位置即为帧头位置。若连续搜到K个帧头且相邻两个帧头间距等于帧长,则判定为帧同步状态。
其中,该门限值V1为帧同步的开窗搜峰门限值,该VH为帧同步的峰值判定门限,且V1≥VH,P1,P2为根据技术经验设置的较易获取最大峰值的附近位置。
S4,从帧同步的下一帧起用搜到的正确最大峰值(与进入帧同步状态所在帧帧头位置间距为帧长整数倍)对应的M阶差分相关值Rn计算频偏:
S5,从帧同步的下一帧起根据搜到的正确帧头所在帧的前导M+L+2p个符号计算N
阶差分相关值并以计算频偏值:
该为帧同步的下一帧开始的数据帧的前导序列的第一个符号,由bk经异或运算
得到:
S6,比较两个频偏值和若则输出估计值补偿频偏量更新为停止扫频;否则计算Sfrq对应的扫频点并下发替换Δω,然后更新频点状态Sfrq=mod(Sfrq+1,Nfrq),重复步骤S3-步骤S6,直到两个频偏的偏差小于该预定的门限值Th,并将输出其中较为精确的频偏。
本实施例提供了一种基于频偏检测的扫频方法,解决了现有技术中由于通信系统收、发端的变频频率不一致,导致收端基带信号出现频偏,并且在一定程度上解决了现有技术中锁相环能够很好地跟踪频偏,且精度高,但跟踪范围较小,需要在锁相环之前以一定精度捕获频偏。通过上述实施例及优选实施方式的扫频方法,该方法在帧同步基础上,使用不同频偏检测的一致性指示扫频,扫频步长大、速度快,且能以一定估计精度捕获频偏。
在本实施例中提供了一种无线通信系统中优选的扫频方法,图4是根据本发明实施例基于频偏检测进行扫频的方案的结构示意图,图5是根据本发明优选实施例的基于频偏检测进行扫频的流程图,该流程包括以下步骤:
步骤S502,配置频偏检测信息,在本优选实施例中以下列配置参数为例进行说明,配置频偏检测延迟长度M=6、N=5(M>N),频偏检测门限值(即预设门限值)Th=0.1,扫频步长Δωstep=0.12π,通过上述各参数计算频点个数初始化频点状态Sfrq=0和初始频偏补偿量Δω=0。
步骤S504,通信节点之间发送的数据帧格式包括前导序列(帧头)、控制字和帧体数据,判断该数据帧是否已经建立了帧同步,如果已经建立,则进行步骤S508,否则进行步骤S506;
需要指出的是,该数据帧的前导序列可以通过以下方式来获得:首先,由对长度为L的比特序列RC={lk,k=1,…,127}前后各周期延拓15bit后得到TC={tk,k=1,…,157},然后将经过周期延拓的比特序列TC输入到长度为M的扰码器。图6是根据本发明实施的扰码器的结构示意图,如图6所示,该长度为M的扰码器输入端输入的是延拓后的比特序列的157个符号,经过长度为M的扰码器后对输出结果进行映射调制,得到长度为M+157的前导序列B={bk,k=1,…,M+157},其中对扰码器输出的每个输出结果可以采用以下的规则进行映射调制,例如,将输出的每一比特用Sk=(1-2*bk)ejπ/4映射到QPSK星座点。
需要说明的是,该RC序列可以是具有良好自相关性的序列,例如,CAZAC序列:RC={1,1,1,1,1,0,1,1,0,0,1,1,0,0,0,1,1,1,0,1,1,1,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,1,1,1,1,1,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,0,0,0,1,0,0,0,1,1,1,0,0,1,1,0,0,1,0,0,0,0,0,1,0,1,0,1,0,0,1,1,1,0,1,0,0,0,1,1,0,1,0,0,0,1,1,0,1,0,1,0}。
步骤S506,对数据进行帧同步操作,实施帧同步的方式可以很多种,例如,传统相
关法、首尾定界符法、扩频码同步法、最大似然法以及基于似然比检验的方法等,在本实施
中根据数据帧的前导序列将该数据帧进行帧同步为例进行说明,接收端通过对接收到的符
号rn做M阶差分运算后与1-2*RC进行相关运算得相关值
将每次计算得到的相关值求模存入长度为31的滑动窗(Wk,k=1,2,…,31),然后在窗内搜
索最大峰值。若同时满足以下条件:
1)Wp+1>V1;
2)|W16-Wk|>VH(k=5,…,11,21,…,27);
则为最大峰值,对应的位置即为帧头位置。若连续搜到K个帧头且相邻两个帧头间距等于帧长,则判定为帧同步状态。其中,搜索最大峰值的两个门限值分别为:V1=35、VH=35,帧同步的判定参数K=5。
步骤S508,针对配置的频偏检测延迟长度M、N分别计算对应的频偏:
a)从帧同步的下一帧起用搜到的正确最大峰值(与进入帧同步状态所在帧帧头位置间距为帧长整数倍)对应的M阶差分相关值Rn计算频偏
b)从帧同步的下一帧起根据搜到的正确帧头所在帧的前导M+157个符号计算N阶
差分相关值并以计算频偏值
步骤S510,比较两个频偏值和判断是否满足如果满足则进行步骤S512,否则进行步骤S514;
步骤S512,满足的情况,输出估计值补偿频偏量更新为停止扫频;
步骤S514,不满足的情况,
计算Sfrq对应的扫频点并将其下发以替换Δω,然后更新频点状态Sfrq=mod(Sfrq+1,Nfrq)。在更新频点状态后重复执行步骤S506至步骤S514,直到两个频偏的偏差小于该预定的门限值Th,并将输出其中较为精确的频偏。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。