基于高精度数据传输的时间同步方法与流程

文档序号:20839207发布日期:2020-05-22 17:16阅读:776来源:国知局
基于高精度数据传输的时间同步方法与流程

本发明涉及通信领域,具体是基于高精度数据传输的时间同步方法。



背景技术:

在无线通信系统中,为了抵抗多径传输带来的干扰,一般采用ofdm(正交频分复用)或sc-fde(单载波频域均衡)作为通信体制。尤其在现如今的遥测系统中,无人机的快速发展,使得机器的载荷能力越来越强,因此对通信速率的要求越高。

在突发通信系统中,一般采用数据辅助的方式对信号进行时间同步。通过寻找本地序列与接收信号的相关峰位置,确定ofdm信号的起始位置。ofdm高数据率传输系统的主要瓶颈在于,较高的传输数据率需要较大的带宽来实现。带宽直接决定了ofdm系统的可用子载波点数。如果可用子载波点数较大,时间同步做相关计算时对硬件的存储和运算资源需求很大,并且会带来不少的延迟。因此,国内正在积极开展传输速率在300mbit/s以上的突发传输链路的研究工作。

对于点数较大的相关计算,一般采用两种思路,第一是对接收信号和本地序列分别取符号做相关;第二是对接收信号和本地序列分别抽取到可接受的范围做相关。取符号做相关的方法受系统频偏影响较大,因此本文主要基于抽取的快速时间同步方案。基于抽取的时间同步方案主要存在的问题是抽取偏移。接收端并不知道信号的到达时刻,也无法判断当前抽取点与里面抽取点的偏移是多少,因此,如果对接收信号和本地序列都做抽取的话,会破坏序列的相关性。本文基于该问题,提出一种新的时间同步方案。该方案同步序列的相关性不受抽取偏移点的影响,并且可以大大的减少硬件实现需要的存储运算资源和处理时间。



技术实现要素:

本发明的目的在于克服现有技术的不足,提供基于高精度数据传输的时间同步方法,包括如下步骤:

步骤一,产生ns个长度为l根指数不同的zc(zadoff-chu)序列seqi,i=1,..,ns;

步骤二,将这ns个zc序列seqi首尾相连拼接成为一个长度为lns的序列seq;

步骤三,将得到的序列seq进行子载波映射,然后变换到时域,进行ns个不同偏移量的ns倍抽取,得到ns个不同的序列,将这些序列加和起来得到本地序列得到本地序列slocal;

步骤四,对接收到的ofdm信号进行ns倍抽取得到序列r,将序列r与本地序列slocal进行滑动相关计算检测,得到相关峰值;

步骤五,根据相关峰的位置确定信号的帧头起始位置。

进一步的,所述的zc序列的产生公式为:

(1)式中n表示zc序列的长度,r表示根指数,n与r是互质的整数。

进一步的,步骤三中所述的将拼接后的序列seq进行子载波映射是zc序列排列在ofdm的正负子载波上,排列方式为,zc序列的第1至ns/2个元素排列在负子载波上,第ns/2+1至ns个元素排列在正子载波上。

进一步的,所述对步骤二中得到的seq序列进行反傅里叶变换得到序列seqtime;设有ns个序列的集合{si},i=1…ns;si是由seqi补零之后得到的长度为lns的序列,其补零方式如式(2)-(5)所示:

由傅里叶变换性质可知seqtime为:

进一步的,所述步骤三中的本地序列slocal为对seqtime进行ns倍下采后,ns个偏移量产生的序列相加得到的序列为slocal,其计算方式如下:

进一步的,所述步骤四中的滑动相关的具体实现方式为,取当前滑动窗口的点及其往后l个点作为一个序列,与本地序列slocal进行相关计算,计算公式为:

其中x(i),i=1,…,n,y(i),i=1,…,n表示两个长度分别为n的复数序列。conj(a)表示对a取共轭,abs|a|表示对a取绝对值。

进一步的,所述步骤五中的相关峰的值是滑动窗口每滑动一次可得到一个相关值,若相关值大于设定值,并且是所有相关值中最大的值,该点即为相关峰位置。

附图说明

图1为一种高速数传中的快速时间同步方法流程图;

图2为时间同步方案zc序列子载波映射示意图;

图3为zc序列拼接示意图;

图4新方案偏移量为0时相关图;

图5新方案偏移量为1时相关图;

图6新方案偏移量为2时相关图;

图7新方案偏移量为3时相关图;

图8新方案偏移量为4时相关图;

图9新方案偏移量为5时相关图;

图10新方案偏移量为6时相关图;

图11新方案偏移量为7时相关图;

图12新方案偏移量为8时相关图;

图13新方案偏移量为9时相关图;

图14新方案偏移量为10时相关图;

图15新方案偏移量为11时相关图;

图16新方案偏移量为12时相关图;

图17新方案偏移量为13时相关图;

图18新方案偏移量为14时相关图;

图19新方案偏移量为15时相关图。

具体实施方式

下面结合附图进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下所述。

以300mbps高速率数据传输ofdm系统为例。系统采用tdma(时分多址)体制。系统的子载波间隔为15khz,可用子载波数为12240个,fft点数为16384点,cp(循环前缀)的长度为1152个点。采用16qam1/2码率的信道编码。一个物理层时隙的长度为1ms(毫秒),包含了14个ofdm符号,其中第一个ofdm符号为同步头,用于实现时间同步。抽取的倍数为16。

同步头组帧流程如下:

根据公式(1),产生16个长度为765,根指数分别为[171113192329313741434753596167]的zc序列,seqi,i=1,..,16。

seq1(m+1)=exp(-j*pi*m*(m+1)/765),m=0,…,764

seq2(m+1)=exp(-j*pi*7*m*(m+1)/765),m=0,…,764

seq3(m+1)=exp(-j*pi*11*m*(m+1)/765),m=0,…,764

seq4(m+1)=exp(-j*pi*13*m*(m+1)/765),m=0,…,764

seq5(m+1)=exp(-j*pi*19*m*(m+1)/765),m=0,…,764

seq6(m+1)=exp(-j*pi*23*m*(m+1)/765),m=0,…,764

seq7(m+1)=exp(-j*pi*29*m*(m+1)/765),m=0,…,764

seq8(m+1)=exp(-j*pi*31*m*(m+1)/765),m=0,…,764

seq9(m+1)=exp(-j*pi*37*m*(m+1)/765),m=0,…,764

seq10(m+1)=exp(-j*pi*41*m*(m+1)/765),m=0,…,764

seq11(m+1)=exp(-j*pi*43*m*(m+1)/765),m=0,…,764

seq12(m+1)=exp(-j*pi*47*m*(m+1)/765),m=0,…,764

seq13(m+1)=exp(-j*pi*53*m*(m+1)/765),m=0,…,764

seq14(m+1)=exp(-j*pi*59*m*(m+1)/765),m=0,…,764

seq15(m+1)=exp(-j*pi*61*m*(m+1)/765),m=0,…,764

seq16(m+1)=exp(-j*pi*67*m*(m+1)/765),m=0,…,764

将这16个长度为765的zc序列seqi,i=1,..,16按照图3所示的方式首尾拼接成一个长度为12240的序列seq。

对进行子载波映射后的seq进行16384点的ifft得到的序列为16384点的时域序列seqtime。对seqtime进行16个不同偏移量的16倍抽取,可得到16个1024长的序列,seqdi,i=1,…,16,其中

偏移量为0对应的序列为:

seqd1=[seqtime(1)seqtime(17)seqtime(33)…seqtime(16369)]

偏移量为1对应的序列为:

seqd2=[seqtime(2)seqtime(18)seqtime(34)…seqtime(16370)]

偏移量为2对应的序列为:

seqd3=[seqtime(3)seqtime(19)seqtime(35)…seqtime(16371)]

偏移量为3对应的序列为:

seqd4=[seqtime(4)seqtime(20)seqtime(36)…seqtime(16372)]

偏移量为4对应的序列为:

seqd5=[seqtime(5)seqtime(21)seqtime(37)…seqtime(16373)]

偏移量为5对应的序列为:

seqd6=[seqtime(6)seqtime(22)seqtime(38)…seqtime(16374)]

偏移量为6对应的序列为:

seqd7=[seqtime(7)seqtime(23)seqtime(39)…seqtime(16375)]

偏移量为7对应的序列为:

seqd8=[seqtime(8)seqtime(24)seqtime(40)…seqtime(16376)]

偏移量为8对应的序列为:

seqd9=[seqtime(9)seqtime(25)seqtime(41)…seqtime(16377)]

偏移量为9对应的序列为:

seqd10=[seqtime(10)seqtime(26)seqtime(42)…seqtime(16378)]

偏移量为10对应的序列为:

seqd11=[seqtime(11)seqtime(27)seqtime(43)…seqtime(16379)]

偏移量为11对应的序列为:

seqd12=[seqtime(12)seqtime(28)seqtime(44)…seqtime(16380)]

偏移量为12对应的序列为:

seqd13=[seqtime(13)seqtime(29)seqtime(45)…seqtime(16381)]

偏移量为13对应的序列为:

seqd14=[seqtime(14)seqtime(30)seqtime(46)…seqtime(16382)]

偏移量为14对应的序列为:

seqd15=[seqtime(15)seqtime(31)seqtime(47)…seqtime(16383)]

偏移量为15对应的序列为:

seqd16=[seqtime(16)seqtime(32)seqtime(48)…seqtime(16384)]

将这16个序列累加在一起组合成本地序列

接收端的同步流程主要如下:

对接收序列进行16倍抽取得到序列rd与slocal进行滑动相关。滑动相关的具体实现方式即,取当前时刻及其往后1024个点作为一个序列,与本地序列slocal进行相关计算。也就是第一次取的索引为1到1024的点与slocal进行相关。第二次取索引为2到1025的点与slocal进行相关。以此类推。每滑动一次可得到一个相关值。相关值超过10,并且是所有相关值中最大的,该点记为相关峰值。因为本地序列的长度为1024,因此与抽slocal取后的接收序列做滑动相关时,峰值对应的点为1024,才实现了正确的时间同步。

在-3db信噪比环境下,对接收序列进行16倍抽取,偏移量分别为[0123456789101112131415],得到的16个下抽后的接收序列与本地序列slocal进行相关计算的结果如图4-19。从图中可以看出,每个相关峰的位置都位于第1024个点,因此16个不同偏移量对应的下抽序列均正确实现了时间同步。由此可得,本方案的本地序列与接收序列的相关性并没有被偏移量破坏。不同偏移量场景下,相关性依然很好。因此在实际的实现过程中,可根据系统的硬件资源,设计合理的抽取倍数。既能减少硬件存储资源、运算开销和信号同步时间,又可以获得较好的时间同步性能。

以上所述仅是本发明的优选实施方式,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1