NB-IoT系统中下行次同步信号的检测与同步方法及装置与流程

文档序号:17049218发布日期:2019-03-05 19:51阅读:324来源:国知局
NB-IoT系统中下行次同步信号的检测与同步方法及装置与流程

本发明涉及一种同步信号的检测与同步方法及装置,特别是涉及nb-iot系统中下行次同步信号的检测与同步方法及装置,属于通信技术领域。



背景技术:

nb-iot(narrowbandinternetofthings)技术是iot领域一个新兴的技术,支持低功耗设备在广域网的蜂窝数据连接。在nb-iot系统中,当用户设备接入到nb-iot小区时,必须首先进行同步信号搜索,完成时间同步、频偏估计和频偏补偿、小区搜索、帧号搜索。而定时同步过程涉及到次同步信号(narrowbandsecondarysynchronizationsignal,nsss)的搜索和识别,小区基站每20ms发送一次nsss序列。nsss同步过程就是通过相关峰值搜索nsss序列,并确定时频偏、小区id以及系统帧号的过程。

nb-iot系统中的nsss序列为zadoff-chu序列d(n),其表达式如下:

其中,

n=0,1,...,131

n′=nmod131

m=nmod128

bq(m)序列是长度为128的q序列,θf由系统帧号nf计算得

nsss同步过程中需要估计出时偏、频偏、小区和帧号。

在现有技术中,具体过程是zc序列经过ifft变换到时域,接收端接收的时域信号为srx(t),其表达式如下:

srx(δτ)=ifft(d(n))e-j2πδf(t+δτ)+nnoise,

其中δf表示接收的频偏,δτ表示接收的时偏。对接收的时域信号做fft变换到频域,不考虑噪声影响有

其中k表示频域子载波位置,l表示时域符号。用接收序列与本地共轭求互相关

r=∑drx(k,l)d*(n,id,nf),

该方法需要循环遍历搜索小区id和帧号生成本地序列,通过相关的峰值来完成估计运算。

小区id范围0至503,有504种,帧号有4种结果,循环遍历需要生成2016种zc序列,每次循环与接收序列做共轭相关需要132次乘法和加法。该算法实现需要266112次乘法和加法,虽然能够实现可靠检测,但时延大,占用的资源复杂,不利于在硬件上实现。



技术实现要素:

针对上述现有技术的不足,本发明的目的是提供一种nb-iot系统中下行次同步信号的检测与同步方法,不需要遍历小区id和帧号以减小运算量便于硬件实现。

本发明的技术方案是这样的:一种nb-iot系统中下行次同步信号的检测与同步方法,包括:s1、将接收端接收的时域信号经快速傅里叶变换到频域;s2、将步骤s1的频域序列进行二阶自相关求参数u;s3、根据步骤s2求得的u生成本地序列,并将本地序列与步骤s1的频域序列做共轭相乘;s4、根据步骤s3得到的共轭相乘结果进行一阶差分或者二维快速傅里叶变换计算得到时偏、频偏、小区id和帧号。

进一步的,所述s1将接收端接收的时域信号经快速傅里叶变换到频域,是在第一采样率下找到nsss每个符号的起始位置,并把cp去除,然后对nsss的有效符号按第二采样率采样并进行快速傅里叶变换。

进一步的,所述第一采样率为1.92mhz,第二采样率为240khz。

进一步的,所述s2、将步骤s1的频域序列进行二阶自相关求参数u时求得参数u的范围;s3、取步骤s2求得的u的范围中的一个u值生成本地序列,并将本地序列与步骤s1的频域序列做共轭相乘;s4、根据步骤s3得到的共轭相乘结果进行一阶差分或者二维快速傅里叶变换,如果一阶差分或者二维快速傅里叶变换结果峰值超过门限则计算得到时偏、频偏、小区id和帧号;如果一阶差分或者二维快速傅里叶变换结果峰值不超门限,则取步骤s2求得的u的范围中的另一个u值重复步骤s3和s4。

进一步的,所述s2、将步骤s1的频域序列进行二阶自相关求参数u包括步骤:将频域序列的有效频点序列进行二阶差分并分别与4种q值序列异或后累加取模,由取模输出的最大值确定对应q值,并根据该最大取模输出确定对应的累加结果计算u值。

进一步的,所述二阶差分为先进行间隔1点的差分,再对间隔1点的差分结果进行间隔12的差分。

进一步的,所述s2、将步骤s1的频域序列进行二阶自相关求参数u包括步骤:将频域序列的有效频点序列进行二阶差分并分别与4种q值序列异或后累加取模,由取模输出的最大值确定对应的累加结果计算u值;所述s4、根据步骤s3得到的共轭相乘结果进行一阶差分得到时偏、频偏、小区id和帧号包括步骤将步骤s3得到的共轭相乘结果进行一阶差分,一阶差分结果与4种q值序列异或后累加取模,由取模输出的最大值确定对应q值。

进一步的,步骤s4、根据步骤s3得到的共轭相乘结果进行一阶差分计算得到时偏、频偏、小区id和帧号是对由步骤s3得到的共轭相乘结果分别进行间隔12点差分并累加和间隔5点差分并累加,根据间隔12点差分的累加结果计算频偏,根据间隔5点差分的累加结果计算时偏和帧号。

本发明还提供了一种nb-iot系统中下行次同步信号的检测与同步装置,快速实现次同步信号的检测同步。技术方案是:一种nb-iot系统中下行次同步信号的检测与同步装置,包括快速傅里叶变换模块:用于将接收端接收的时域信号经快速傅里叶变换到频域;二阶差分模块:用于对频域序列进行二阶差分操作;q值序列缓存模块:用于存储4种q值序列;u值范围获取模块:根据二阶差分模块差分结果与q值序列异或累加,由累加取模的最大值对应的累加值确定u值范围;u循环遍历模块:取u值范围中一个u值生成本地序列,并将本地序列与步骤s1的频域序列做共轭相乘;门限判决模块:设定门限,并判决共轭相乘结果是否超过门限以确定u值;同步参数计算模块:根据确定u值生成本地序列,并将本地序列与步骤s1的频域序列做共轭相乘,并进行一阶差分或二维快速傅里叶变换计算时偏、频偏、小区id和帧号。

本发明的技术方案的有益效果是,该方法通过二阶自相关确定u值范围,并利用u值生成本地序列与接收序列共轭相乘,由门限进行判决确定同步参数。不需要遍历小区id和帧号,减少了运算量。同时采用该方法,在确定u值范围,以及共轭相乘后进行差分计算均运用了间隔12差分,而利用u值生成本地序列与接收序列共轭相乘与二阶自相关确定u值范围时均运用了间隔1差分,因此在硬件设计上可重复迭代使用,简化硬件结构。

附图说明

图1为nb-iot系统中下行次同步信号的检测与同步方法总体流程示意图。

图2为高信噪比时次同步信号的检测与同步方法采用一阶差分计算时频偏流程示意图。

图3为低信噪比时次同步信号的检测与同步方法采用一阶差分计算时频偏流程示意图。

图4为次同步信号的检测与同步方法采用二维快速傅里叶变换计算时频偏流程示意图。

图5为nb-iot系统中下行次同步信号的检测与同步装置结构示意图。

图6为采用差分方法估计时频偏的硬件结构图。

图7为采用二维快速傅里叶变换方法估计时频偏的硬件结构图。

具体实施方式

下面结合实施例对本发明作进一步说明,但不作为对本发明的限定。

请结合图5所示,nb-iot系统中下行次同步信号的检测与同步装置,包括快速傅里叶变换模块:用于将接收端接收的时域信号经快速傅里叶变换到频域;二阶差分模块:用于对频域序列进行二阶差分操作;q值序列缓存模块:用于存储4种q值序列;u值范围获取模块:根据二阶差分模块差分结果与q值序列异或累加,由累加取模的最大值对应的累加值确定u值范围;u循环遍历模块:取u值范围中一个u值生成本地序列,并将本地序列与步骤s1的频域序列做共轭相乘;门限判决模块:设定门限,并判决共轭相乘结果是否超过门限以确定u值;同步参数计算模块:根据确定u值生成本地序列,并将本地序列与步骤s1的频域序列做共轭相乘,并进行一阶差分或二维快速傅里叶变换计算时偏、频偏、小区id和帧号。利用该装置进行nb-iot系统中下行次同步信号的检测与同步的具体实施如下述实施例。

实施例1:

请结合图1、图2及图6所示,本实施例所涉及的nb-iot系统中下行次同步信号的检测与同步方法,包括:s1、将接收端接收的时域信号经快速傅里叶变换到频域;s2、将步骤s1的频域序列进行二阶自相关求参数u;s3、根据步骤s2求得的u生成本地序列,并将本地序列与步骤s1的频域序列做共轭相乘;s4、根据步骤s3得到的共轭相乘结果进行一阶差分计算得到时偏、频偏、小区id和帧号。

其中,s1、将接收端接收的时域信号经快速傅里叶变换到频域,具体的包括步骤,

step101:根据npss(主同步信号)精同步后启动的定时计数器,得到1.92mhz下nsss的第一个符号的起始位置。在1.92mhz的采样率下找到nsss每个符号(含循环前缀cp)的起始位置,并把cp去除(跳过cp);

step102:将nsss的每个符号中有效的128点采样通过8抽一的抽取模块抽取为16点。对降采样在240khz下的16点做fft,得到每个ofdm符号的频域信号drx,后续步骤运行在240khz的频率下。

s2、将步骤s1的频域序列进行二阶自相关求参数u,具体的包括步骤,

step202:从fft变换后的16点删除fft频点两端4个无效的频点位置,保留12点有效频点位置drx(n);

step203:将step202的drx(n)依序送入132点的缓存与同一子帧的其他ofdm符号的12点数据存放在一起,同时对drx(n)进行间隔为1点的前后差分操作得到d1(n);

step204:对d1(n)做间隔12点的差分操作,差分的结果送到1分4的解复用器中;

step205:解复用器将差分结果同时输出到4路,每路与不同的q值序列的进行异或后输出。其中q值序列为预存的4路每路128点的加扰序列bq(m)。q值对应的加扰序列分别为:q:0[11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111];q:1[1-1-11-111-1-111-11-1-11-111-11-1-111-1-11-111-11-1-11-111-1-111-11-1-11-111-11-1-111-1-11-111-11-1-11-111-1-111-11-1-11-111-11-1-111-1-11-111-11-1-11-111-1-111-11-1-11-111-11-1-111-1-11-111-1];q:2[1-1-11-111-1-111-11-1-11-111-11-1-111-1-11-111-1-111-11-1-111-1-11-111-11-1-11-111-1-111-11-1-111-1-11-111-1-111-11-1-11-111-11-1-111-1-11-111-1-111-11-1-111-1-11-111-11-1-11-111-1-111-11-1-11];q:3[1-1-11-111-1-111-11-1-11-111-11-1-111-1-11-111-1-111-11-1-111-1-11-111-11-1-11-111-1-111-11-1-11-111-11-1-111-1-11-111-11-1-11-111-1-111-11-1-111-1-11-111-1-111-11-1-11-111-11-1-111-1-11-111-1]。

step206:将step205的输出送入累加器进行累加,当累加结束(11×10)后,对4路累加器输出的复数结果进行取模输出。

step207:比较step206中4路取模输出,得到4路中的最大值及相应的q值。与该最大值对应的一路的累加结果为一个复数,根据该结果的实部和虚部的值求取相位,得到对应的u值(量化)。以该u值为中心根据候选u取值,按照数值越接近优先级越高的优先级列表获得一个大小为n的搜索范围,n可以根据情况进行修改,本实施例中定义n大小为8。当第一次搜索没有检测成功时,可以扩大搜索范围至原来的2倍即2n,以此类推,该搜索范围根据循环搜索的次数可以依次扩大。

s3、根据步骤s2求得的u生成本地序列,并将本地序列与步骤s1的频域序列做共轭相乘;具体的包括步骤,

step301:从u的搜索范围区间中选择一个u的值,根据u的值得到nsss的zc序列,长度为132。nsss的zc序列由以下公式确定:

其中,n=0,1,…,131,n′=nmod131,m=nmod128,bq(m)序列是step207确定的q值对应的q序列。

step302:将该132点zc序列逐点同step203的132点的缓存进行共轭相乘。

s4、根据步骤s3得到的共轭相乘结果进行一阶差分得到时偏、频偏、小区id和帧号;具体的包括步骤,

step401:将共轭相乘的结果依序送入12点移位寄存器中。用间隔12点的乘法器和一个间隔为5的乘法器完成两次差分相关,得到差分结果并累加。

step402:step401的间隔12点的乘法器的差分结果累加输出的峰值结果同门限进行比较,如果超过噪声判决门限,则认为该子帧nsss信号存在,同时根据间隔12点的乘法器的差分结果计算出的相位结果输出对应的频偏,根据间隔5点的乘法器的差分结果计算出的相位结果输出对应的时偏和帧号,根据u和q值确定对应的小区id信息;如果未超过门限,则继续下一个候选u,回到step301进行重复操作,直至整个u值候选集合遍历完成。当一次搜索没有检测成功时,可以回到step207扩大u值候选范围进行再次搜索。

该步骤中,由于间隔12点的数据在时频资源上对应同一子载波的不同时间的ofdm符号的值,所以差分相位结果对应频偏;间隔12差分相位结果为频偏其中fs=1.92m;间隔5点的数据在时频资源上对应同一时刻的不同子载波的值,差分相位结果对应时偏;间隔5差分相位结果时偏小区id范围0~503,相应的q值为0时小区id范围0~125,q值为1时小区id范围126~251,q值为2时小区id范围252~377,q值为3时小区id范围378~503,当u和q值确定时即确定小区

step403:如果在候选集合中所有u值遍历完成,依然未找到过门限的结果,则停止当前子帧的同步,等待10ms到下一帧重复整个nsss同步的流程。

实施例2

请结合图1、图3及图6所示,本实施例所涉及的nb-iot系统中下行次同步信号的检测与同步方法,包括:s1、将接收端接收的时域信号经快速傅里叶变换到频域;s2、将步骤s1的频域序列进行二阶自相关求参数u;s3、根据步骤s2求得的u生成本地序列,并将本地序列与步骤s1的频域序列做共轭相乘;s4、根据步骤s3得到的共轭相乘结果进行一阶差分计算得到时偏、频偏、小区id和帧号。

其中,s1、将接收端接收的时域信号经快速傅里叶变换到频域,具体的包括步骤,

step101:根据npss(主同步信号)精同步后启动的定时计数器,得到1.92mhz下nsss的第一个符号的起始位置。在1.92mhz的采样率下找到nsss每个符号(含cp)的起始位置,并把cp去除(跳过cp);

step102:将nsss的每个符号中有效的128点采样通过8抽一的抽取模块抽取为16点。对降采样在240khz下的16点做fft,得到每个ofdm符号的频域信号drx,后续步骤运行在240khz的频率下。

s2、将步骤s1的频域序列进行二阶自相关求参数u,具体的包括步骤,

step202:从fft变换后的16点删除fft频点两端4个无效的频点位置,保留12点有效频点位置drx(n);

step203:将step202的drx(n)依序送入132点的缓存与同一子帧的其他ofdm符号的12点数据存放在一起,同时对drx(n)进行间隔为1点的前后差分操作得到d1(n);

step204:对d1(n)做间隔12点的差分操作,差分的结果送到1分4的解复用器中;

step205:解复用器将差分结果同时输出到4路,每路与不同的q值序列的进行异或后输出。其中q值序列为预存的4路每路128点的加扰序列bq(m)。

step206:将step205的输出送入累加器进行累加,当累加结束(11×10)后,对4路累加器输出的复数结果进行取模输出。

step207:比较step206中4路取模输出,得到4路中的最大值。与该最大值对应的一路的累加结果为一个复数,根据该结果的实部和虚部的值求取相位,得到对应的u值(量化)。以该u值为中心根据候选u取值按照数值越接近优先级越高的优先级列表获得一个大小为n的搜索范围,n可以根据情况进行修改,本实施例中定义n大小为8。当第一次搜索没有检测成功时,可以扩大搜索范围至原来的2倍即2n,以此类推,该搜索范围根据循环搜索的次数可以依次扩大。在低信噪比下,由于噪声干扰较大,利用累加最大值估计q时容易找到错误的q值,从而影响后续估计的准确性,所以作为一种改进,本实施例在本步骤不确定q值。

s3、根据步骤s2求得的u生成本地序列,并将本地序列与步骤s1的频域序列做共轭相乘;具体的包括步骤,

step301:从u的搜索范围区间中选择一个u的值,根据u的值得到nsss的zc序列,长度为132。nsss的zc序列由以下公式确定:

其中,n=0,1,…,131,n′=nmod131,m=nmod128。

step302:将该132点zc序列逐点同step203的132点的缓存进行共轭相乘。

s4、根据步骤s3得到的共轭相乘结果进行一阶差分得到时偏、频偏、小区id和帧号;具体的包括步骤,

step401:将共轭相乘的结果依序送入12点移位寄存器中。用间隔12点的乘法器和间隔为5的乘法器完成两次差分相关,得到差分结果。

step402:差分结果进入1分4的解复用器,与4种q值的序列bq(m)相乘参与运算后将差分结果累加,以消去q对累加的影响。

step403:step402的4路间隔12点的乘法器的差分结果累加最大值输出的峰值结果同门限进行比较,如果超过门限,则认为该子帧nsss信号存在,并确定对应的q值。同时根据间隔12点的乘法器的差分结果计算出的相位结果输出对应的频偏,根据q值取对应1路的间隔5点的乘法器的差分结果计算出的相位结果输出对应的时偏和帧号,根据u和q值确定对应的小区id信息;如果未超过门限,则继续下一个候选u,回到step301进行重复操作,直至整个u值候选集合遍历完成。当一次搜索没有检测成功时,可以回到step207扩大u值候选范围进行再次搜索。

该步骤中,由于间隔12点的数据在时频资源上对应同一子载波的不同时间的ofdm符号的值,所以差分相位结果对应频偏;间隔12差分相位结果为频偏其中fs=1.92m;间隔5点的数据在时频资源上对应同一时刻的不同子载波的值,差分相位结果对应时偏;间隔5差分相位结果时偏小区id范围0~503,相应的q值为0时小区id范围0~125,q值为1时小区id范围126~251,q值为2时小区id范围252~377,q值为3时小区id范围378~503,当u和q值确定时即确定小区

step404:如果在候选集合中所有u值遍历完成,依然未找到过门限的结果,则停止当前子帧的同步,等待10ms到下一帧重复整个nsss同步的流程。

实施例3

请结合图1、图4及图7所示,本实施例所涉及的nb-iot系统中下行次同步信号的检测与同步方法,包括:s1、将接收端接收的时域信号经快速傅里叶变换到频域;s2、将步骤s1的频域序列进行二阶自相关求参数u;s3、根据步骤s2求得的u生成本地序列,并将本地序列与步骤s1的频域序列做共轭相乘;s4、根据步骤s3得到的共轭相乘结果进行二维快速傅里叶变换计算得到时偏、频偏、小区id和帧号。

其中步骤s1、s2和s3的具体过程与实施例1相同,在此不再赘述,步骤s4、根据步骤s3得到的共轭相乘结果进行二维快速傅里叶变换得到时偏、频偏、小区id和帧号。具体的包括步骤,

step401:将共轭相乘的结果送入2d-fft模块(12×11)中进行二维fft操作。

step402:step401输出的峰值结果同门限进行比较,如果超过门限,则认为该子帧nsss信号存在,同时根据计算出的相位结果输出对应的时偏、频偏、小区id和帧号等信息;如果未超过门限,则继续下一个候选u,回到step301进行重复操作,直至整个u值候选集合遍历完成。当一次搜索没有检测成功时,可以回到step207扩大u值候选范围进行再次搜索。

step403:如果在候选集合中所有u值遍历完成,依然未找到过门限的结果,则停止当前子帧的同步,等待10ms到下一帧重复整个nsss同步的流程。

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