一种多体制通信时间同步算法及其FPGA实现

时间:2022-01-24 02:35:17

一种多体制通信时间同步算法及其FPGA实现

摘要:基于新一代无线通信统一平台,本文提出了一种适用于多种通信体制的时间同步算法。该算法由帧同步和位同步组成,帧同步和位同步都利用同步序列实现,只需要改变本地同步序列就可以应用于不同的通信体制。仿真结果证明,该算法是可行而且有效的,可以满足平台对时间同步算法性能、复杂读和兼容性等各方面的需求。

关键词:多模无线通信;时间同步;同步序列;FPGA

引言

随着通信技术的快速发展,无线通信体制呈现多样化趋势,各种通信系统之间互不兼容、升级能力有限等问题越来越突出。为了有效解决上述问题,清华大学无线与移动通信技术研究中心在承担的国家863项目“软硬件可重构的新一代无线通信统一平台研究”中,以上位机、通用硬件平台和宽带天线等为基础,搭建一个可以兼容多种通信体制的新一代无线通信统一平台,并通过运行GSM、TDSCDMA、WCDMA、CDMA2000、WiMAX等主流2G/3G/B3G无线通信系统,验证平台的可行性。该平台结构如图1所示。其中,上位机提供人机界面,并完成基带信号处理和系统整体控制;通用硬件平台主要完成上下变频、数模模数转换、同步等信号预处理功能。

针对需要兼容多种通信体制的新一代无线通信统一平台,传统的时间同步算法由于对载波频偏过于敏感、捕获时间长等问题,无法满足各种无线通信体制对时间同步算法的性能需求。文献介绍了一种基于前导字的快速位同步算法,但它只适用于在每个数据包前都插入前导字的突发通信系统,且一般所需较长的前导字。文献介绍了一种可以减轻载波频偏影响的帧同步算法,但它针对中国数字广播电视系统设计,不适用于其他通信体制,而且存在算法硬件实现复杂、没有考虑位同步的实现等问题。

为了解决上述问题,本文提出了一种基于同步序列的时间同步算法,只需要修改本地同步序列就可以应用于不同的通信系统。其中,帧同步分成检测和确认两个步骤,并通过采用改进的分段相关法解决帧同步对载波频偏过于敏感以及硬件实现复杂度高等问题;而位同步同样利用同步序列实现,与帧同步同时完成,从而解决位同步算法收敛速度慢的问题,使算法满足各种主流无线通信体制对时间同步算法的性能需求。

适用多体制通信的时间同步算法

为了解决传统时间同步算法不适用于多种无线通信体制且不适于硬件实现等问题,本文提出了一种改进的时间同步算法,如图2所示。在改进的时间同步算法中。本地同步序列分成和两段,从而使帧同步和位同步都可以利用接收序列与本地同步序列的相关性实现。因此,只需要改变本地同步序列。改进后的时间同步算法就可以适用于不同的通信体制。

在本地同步序列及其划分方式确定后,时间同步算法的工作原理如下:首先,系统利用本地同步序列1完成帧同步的初始检测。当检测结果认为接收到数据帧时,启动帧同步确认和位同步等模块,利用本地同步序列2完成帧同步确认和位同步调整。其中,帧同步检测使用改进的分段相关法,可以有效提高帧检测算法对载波频偏的容忍度,降低帧同步的漏同步概率,并使算法便于硬件实现。帧同步确认和位同步在帧同步检测成功后启动,通过本地同步序列2与接收序列的相关结果来确认帧同步检测结果是否正确,从而减少假同步概率,并同时利用接收序列与本地同步序列2之间的相关性完成位同步处理,大大加快了位同步的收敛速度。

帧同步检测

根据文献,基于互相关的帧同步算法对载波频偏的容忍度与本地同步序列的长度成反比。所以,为了进一步减少帧同步的漏同步概率,在将本地同步序列分成帧同步检测和帧同步确认两部分的基础上,本文的帧同步检测采用如图3所示的分段相关法。在分段相关的帧同步检测算法中,用于帧同步检测的本地同步序列1等分为检测序列1和检测序列2两段,然后用这两段检测序列同时与输入信号进行相关,只要一个相关结果大于门限,就认为帧同步检测成功。

为了使帧同步算法更适于在FPGA中实现,本文对传统相关器进行了改进,实现方法如下:

首先对接收信号进行抽样判决(即将大于0信号的判决为“1”,否则判决为“0”),将接收信号变换为由“0”和“1”组成的序列r(n),然后再与用于本地同步序列c(n)(用于帧同步检测的本地同步序列)进行相关运算。其中,相关函数可以定义为:其中,0表示同或,P表示同步序列长度。考虑到接收信号r(n)中的数据块与本地同步序列c(n)无关,并忽略噪声的影响,可以得到:

即,只有在I=0时,出现相关峰Rrc(0)=P1。

使用上述相关方法,载波频偏引起的接收信号幅度变化不会影响相关峰幅度,只有在频偏引起接收抽样序列r(n)在发生反相时,相关结果小(如当r(n)在中间位置反相时,前半段相关结果为P1/2,后半段相关结果为0,从而导致Rrc(0)=P1/2)。而由于本文的帧同步检测使用分段相关的方法,通常情况下载波频偏引起接收同步序列在每个分段都产生反相的可能性很小,所以可以有效防止载波频偏引起漏同步发生的概率。

帧同步确认

帧同步确认的主要目的是判断帧同步检测结果是否属于假同步,减少出现假同步的概率。它利用接收同步序列的后半部分与本地同步序列的后半部分(即图2中的本地同步序列2)之间的相关性实现。由于帧同步确认时,位同步、载波同步等模块同时工作,帧同步确认受载波频偏等因素的影响较小,可以采用接收序列与本地序列直接相关的算法实现。

位同步

位同步模块在帧同步检测成功后启动(与帧同步确认同时进行),利用接收同步序列的后半部分与本地同步序列的后半部分(即图2中的本地同步序列2)之间相关性,通过利用比较时钟与接收码元之间的相关差来判断本地时钟是否需要进行调整,从而实现位同步。当最佳判决点处于接收信号码元的中间位置时,位同步算法原理如图4示,其中超前时钟和滞后时钟作为比较时钟。对于最佳判决点不处于码元中间的情况,只要修改图4中超前、滞后时钟与本地时钟之间的相位差即可。

相关器采用与帧同步检测相同的相关方法式(1):当最佳判决点处于码元中间的情况,即本地时钟相位与最佳判决点一致时,超前时钟和滞后时钟相位都在最佳判决点附近,其相关结果基本相同。本地时钟产生器不需要进行调整:当本地时钟相位超前于最佳判决点时,超前时钟远离最佳判决点,其控制下相关器的输出减小为(Pr1)/2,而滞后时钟控制下相关器的输出仍为(Pr-1),判决模块通知本地时钟产生器进行滞后处理。同理,当本地时钟相位滞后于最佳判决点时,产生器进行超前处理。

FPGA实现与仿真验证

根据新一代无线通信统一平台的特点,同步功能需要在FPGA内实现。本文利用Altera的quartus设计软件,采用自顶向下的模块化设计方法,用VHDL语言完成时间同步相关的各个模块的编程设计。并利用仿真软件modelsim完成仿真验证。测试系统如图5。其中,发端主要包括成帧(frame)和上变频(duc)两个模块,将信源数据按一定标准组成帧,并调制到一定的中心频率发出:收端主要包括下变频(ddc)、低通滤波(lpf)、时钟生成(clk gen)和同步处理(recv)等模块。其中,recv包含了帧同步、位同步和载波同步等模块,duc和ddc模块为了测试存在载波频偏时的同步算法性能而加入。测试系统相关参数如下。

clk_s1:发端码元时钟,1.25MHz,即发端码元速率为1.25MHz。

clk_s2:发端duc模块时钟,80MHz(根据新一代无线通信统一平台实际参数设定)。

clk_r1:收端本地时钟产生器模块输入时钟,19.98MHz,通过可控时钟生成器(16倍分频)产生1.24875MHz的本地抽样时钟(与发送端码元速率相差1.25KHz)。

clk_r2:收端ddc模块时钟,与clk_s2同频,80MHz。

另外,发端duc输出信号中心频率为20MHz,收端ddc的本地载波频率为20.04MHzf即收发两端存在40KHz的载波频偏)。

假设帧同步序列为7阶m序列(长度为127),其仿真结果如图6示。其中,图6(a)显示了帧时间同步的过程。在帧同步检测阶段,载波频偏引起输入信号幅度的较大范围变化,并发生反相,通过采用分段相关法,帧同步检测可以正确完成:而在帧同步确认阶段,载波同步等模块开始工作,频偏等对接收信号的影响基本消除,帧同步确认模块可以正确完成预定功能,从而实现帧同步。而图6(b)显示了位同步调整过程。在位同步前。本地时钟上升沿处于接收序列码元的边缘(本地时钟相位不处于最佳判决时刻),超前或滞后时钟控制下的相关器输入序列只有一路与本地同步序列对齐。位同步模块根据两个相关器的结果对本地时钟进行调整,直到本地时钟相位与最佳判决时刻对齐。综上所述,本文的时间同步算法可以在存在载波频偏的情况下,很好完成帧同步功能,并同时利用同步序列完成位同步功能,大大缩短了位同步收敛所需的时间。

结语

本文根据新一代无线通信统一平台需要兼容多种无线通信体制以及采用FPGA完成预处理功能的特点,提出了一种适用于多种无线通信系统且硬件实现简单的时间同步算法。该算法由帧同步和位同步组成,帧同步和位同步都利用同步序列实现,适用于各种主流无线通信系统。在FPGA上实现了该算法,仿真结果证明了该算法是可行而且有效的,可以满足平台对主流无线通信体制的兼容性需求。

上一篇:LXI总线数字化仪模块设计 下一篇:MCU:集成多少模拟才足够?