具体实施方式
下面结合附图及具体实施方式或实施例对本发明定时同步保持方法做进一步的详细说明。
本发明TD-SCDMA系统定时同步保持方法,如图4所示,包括以下步骤:
步骤1:获取信道冲激响应。
1-1:初始化fn,actual_fn,inter_accu,cir_pwr_accu,将调整周期值chip_adj_period和估计周期值chip_est_period和门限值赋为预定值。
其中,fn为估计时用于累加的帧数的计数器;actual_fn为估计周期内实际接收的帧数计数器;fn和actual_fn均从0开始计数;当前允许连续接收64(也可取32)(该值包含接收的无效帧数);inter_accu为插值结果功率值累加量;cir_pwr_accu为累加的信道冲激响应功率。
1-2:接收一帧数据的midamble部分,经FFT变换到频域与本地基本midamble的FFT频域序列相除获得信道冲激响应cir,并同时获取信道冲激响应的功率cir_pwr,actual_fn=actual_fn+1。
Cir=FFT(FFT(Rxmidamble)/FFT(mid))
其中,Rxmidamble为接收数据的midamble部分(144chip中的后128chip);mid为本地基本midamble序列,长度为128chip;信道冲激响应的功率cir_pwr长度为128;actual_fn为估计周期内实际接收的帧数的计数器,actual_fn从0开始计数。
本实施例中,采用连接模式下A-DPCH信道的数据(A-DPCH为伴随DPCH,每帧都有),扩频因子SF为16,调制方式为QPSK,调整周期chip_adj_period为32,估计周期chip_est_period为16,具体的门限值后续步骤中进行详细说明。
步骤2:选取占优窗。
占优窗的选取准则是当存在比目标窗的功率更强的窗时,将其窗的信道冲激响应功率送入下一步骤chip级同步,否则,仍将目标窗视为同步所使用的窗。本实施例中,8个窗中若存在窗信号功率高于目标窗信号功率的2倍时,将该窗视为占优窗,将窗内信道冲激响应功率送入下一步骤。
其中,目标窗为网络下发的配置窗,一般情况下为首窗,即第一个窗。
2-1:在高层指令所给的目标窗(对应窗的序号记为window_target_sq)中选择功率最强径,记其功率强度为max_pwr,其在该窗中的位置记为max_pwr_pos(取值范围为1~8)。所给的目标窗位置为第一个窗,即首窗。
2-2:搜索cir(16×(i-1)+max_pwr_pos)中的最强者,记录其窗序号window_actual_sq和功率值window_max_pwr。
cir(16×(i-1)+max_pwr_pos)为长度128的信道冲激相应功率的首窗中功率最大值位置开始,每隔16chip的8个窗中首窗最大值位置的序列;窗序号window_actual_sq的范围为1~8。
2-3:判断window_max_pwr>th1×max_pwr是否成立,选取功率最强窗作为占优窗,占优窗用来作为chip级同步偏移计算和chip级以下同步偏移计算的同步窗:
1.若成立,则目标窗序号window_target_sq=功率最强窗序号window_actual_sq。并选择功率最强径,记其功率强度为max_pwr,其在该窗中的位置记为max_pwr_pos(取值范围为1~8)。
2.否则,目标窗作为占优窗,window_target_sq=window_target_sq。
本实施例中,th1为门限值,取值范围为[1,5],该处取值为2,窗长为16,窗的个数为8。
其中,window_target_sq为目标功率最强窗;window_max_pwr为功率最强窗的功率值;max_pwr为首窗中功率最强径的功率值;max_pwr_pos为功率最强径在窗中的位置,window_actual_sq为功率最强窗的序号,cir为信道冲激响应,长度为128。
利用占优窗而不是高层信令下发的配置窗进行同步偏移值的计算,避免了下行样本配置窗无数据下发导致依据常规方法获取的同步偏移值不可靠。
步骤3:计算chip级同步偏移值。
3-1:获取基准AGC,以估计周期的首帧的AGC作为基准AGC。
3-2:消除AGC后的信道冲激响应功率对位叠加:
cir_pwr_accu=cir_pwr×agc_tableagc_benchmark-agc+15+cir_pwr_accu
其中,agc_tableagc-agc_benchmark+15为agc_table中的第agc_benchmark-agc+15项;cir_pwr为同步窗的信道冲激响应;cir_pwr_accu为同步窗的累计信道冲激响应。
AGC_table的构造和格式:表1是将-/+15db的取反对数的结果,某一个值用2个word表示,低位在前,高位在后。表中第16项agc_table15对应ΔAGC=0,按10进制,par=1。为了表agc_table能用32bit表示所有各项,将原有10进制数除以2^15得到par_table,1对应0X00010000。
表1agc_table表
序号 |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
Agc值 |
0x0020 |
0x0029 |
0x0033 |
0x0041 |
0x0051 |
0x0066 |
0x0081 |
0x00A2 |
序号 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Agc值 |
0x00CC |
0x0101 |
0x0144 |
0x0198 |
0x0201 |
0x0286 |
0x032D |
0x0400 |
序号 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
Agc值 |
0x0509 |
0x0657 |
0x07FB |
0x0A0C |
0x0CA6 |
0x0FEC |
0x140C |
0x193D |
序号 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
|
Agc值 |
0x1FC6 |
0x2800 |
0x325B |
0x3F65 |
0x4FCF |
0x6479 |
0x7E7D |
|
3-3:获取chip级同步偏差调整值。
3-3-1:在由同步窗叠加的信道冲激响应功率序列中搜索最大值及其位置:在cir_pwr_accu的最强径所对应的位置stronge_path。
3-3-2:前径搜索:判断从窗的开始位置到stronge_path的径是否存在满足下列条件的径:
cir_pwr_accu(n)>th2×cir_pwr_accu(stronge_path),n=1....stronge_path
搜索满足条件的n的最小值n_min(即从窗的开始位置到最强径内搜索到的第一个满足以上条件的径),并将其赋值frist_path=n_min。
本实施例中,该处门限th2设置为1/3。
其中,cir_pwr_accu(n)为从窗的开始位置到最强径内叠加的信道冲激响应功率,cir_pwr_accu(stronge_path)为同步窗中叠加的信道冲激响应功率最强径。
3-3-3:chip级同步偏差估计。
通过首径位置first_path,获得估计的chip级偏差
est_chip=first_path-3,
若actual_fn==chip_est_period,fn=chip_est_period,将actual_fn,fn,cir_pwr_accu清零。
其中,est_chip为chip级同步偏差,first_path为同步窗中首径的位置,cir_pwr_accu为同步窗中叠加的信道冲激响应功率,fn为估计时用于累加的帧数的计数器;actual_fn为估计周期内实际接收的帧数计数器;fn和actual_fn均从0开始计数,chip_est_period为估计周期,取值为32。
本实施例中,为了防止偏窗,提前2个chip接收,根据冲激响应的结构,第3径为标准径。
本发明通过对有效数据进行Scale加权,提高了参与计算的样本信息的质量,进一步减小了同步偏移值的误差。
步骤4:计算chip级以下同步偏移值。
4-1:基本插值运算,对当前帧信道冲激响应h的2,3,4符号h(2),h(3),h(4)的复值进行3点32倍插值得到插值序列inter;其是一种现有技术,为本领域技术人员所熟知,因此,在本发明实施例中不再一一详细描述。
4-2:将当前帧插值结果inter的功率值叠加到累计插值功率序列inter_accu中,
inter_accu=inter_accu+agc_tableagc_benchmark-agc15×abs(inter).^2,
若actual_fn==chip_est_period,fn=chip_est_period,将actual_fn,fn,inter_accu清零。
agc_tableagc-agcbenchmark+15的使用同步骤3-1中chip级agc_table表。
其中,inter为3点32倍插值序列,其长度为96;abs(inter).^2为插值序列取绝对值后求平方的到插值功率序列;inter_accu为累计插值功率序列。
本实施例中,由于AGC也是与信号质量相关的量,故AGC的加权为可选项,本部分采用AGC的加权以提升信号质量。
4-3:获取chip级以下同步偏差调整值。
搜索累计插值功率序列inter_accu的最大值位置与33的差距确定chip级以下同步偏移值est_under_chip。
本实施例中33的选取是由于插值符号h(2),h(3),h(4)中是h(3)同步窗实际起始点,其经过32倍插值后的起始点位于33。
本发明通过对有效数据进行Scale加权,提高了参与计算的样本信息的质量,进一步减小了同步偏移值的误差。
步骤5:根据同步偏移量调整采样时钟进行同步调整。
5-1:若actual_fn==chip_est_period,fn=chip_est_period,则进入估计值判断部分。否则返回步骤1。
5-2:估计值判断。
5-2-1:若est_chip==0,则根据est_under_chip的情况,进行策略调整,进一步地,策略调整与实测情况有关,设置为est_under_chip<=th4不进行调整,est_under_chip>th4时按方向以1/32为步长进行偏差调整,关于调整值SyncAdjust,按照chip级以下估计偏差值进行调整SyncAdjust=est_under_chip。将fn,actual_fn,interaccu,cir_pwr_accu赋零,返回步骤1。
5-2-2:若est_chip≠0,则根据est_chip的情况,进行策略调整,进一步地,策略调整与实测情况有关,设置为est_chip>th5不进行调整,est_chip<=th5时,进行偏差调整,关于调整值SyncAdjust,按照chip级估计偏差值进行调整SyncAdjust=est_chip。将fn,actual_fn,inter_accu,cir_pwr_accu赋零,返回步骤1。
本实施例中,门限th4取值为1/32,门限th5取值为2。
其中,actual_fn估计周期内实际接收的帧数的计数器,chip_est_period为chip级同步估计和调整周期(设置为32),fn为估计时用于累加的帧数的计数器,est_chip为到达估计周期后的chip级同步偏移估计值,est_under_chip为到达估计周期后的chip级以下同步偏移估计值,SyncAdjust为调整值。
5-3:设置帧长FSyncAdjAddr=FrameLengths+SyncAdjust,调用驱动进行同步调整。
其中,FSyncAdjAddr为驱动设置同步偏移地址,FrameLengths为帧长,SyncAdjust为调整值。
进一步地,作为另一种优选实施方式,如图5,在步骤2选取占优窗之后,还包括:
步骤2A:计算峰均比,进行帧有效性判断。
峰均比类似于信噪比的计算,即信号功率与噪声功率的比值。本实施例中,占优窗中最强径功率为信号功率,最强径左侧第8到第5根径与最强径右侧第5到第8根径这8根径功率之和作为噪声功率,两者比值得到峰均比。所得峰均比用来作为判断本帧数据是否有效的度量,峰均比大于一定门限值则该帧数据判为有效,有效帧计数器fn加1,可参与chip级和chip级以下同步偏移值的计算,否则认为该帧数据无效,舍弃该帧数据不参与同步偏移值的计算。
2A-1:信号部分功率为max_pwr,即同步窗中功率最强径为信号部分功率,噪声功率为max_pwr_pos-8~max_pwr_pos-5与max_pwr_pos+5~max_pwr_pos+8的和作为噪声功率noise_pwr,即剔除功率最强径左右各4根径,最强径左侧第8到第5根径与最强径右侧第5到第8根径这8根径之和作为噪声功率。
当噪声径位置位于边缘点时,相应取值按128取模。
2A-2:求峰均比peak_aver_ratio=max_pwr/noise_pwr。
其中,max_pwr为同步窗中功率最强径;noise_pwr为噪声功率;peak_aver_ratio为近似意义上的信噪比,称为峰均比。
2A-3:数据有效性判断。
2A-3-1:若peak_aver_ratio>peak_th,则scale(fn)=peak_aver_ratio,fn=fn+1。
2A-3-2:若peak_aver_ratio<peak_th,则fn不变。
本实施例中,peak_thpeak_th取值范围为[0,2],单位为分贝db,取0db,对应实际值为1。
其中,max_pwr为同步窗中信号部分的功率,noise_pwr为功率最强窗噪声部分的功率,peak_aver_ratio为同步窗的峰均比(数据有效性判断变量),peak_th为峰均比门限(预设为1),scale(fn)为当帧同步窗的峰均比值。
2A-3-3:若Scale(fn)>th6,则进入chip级同步偏移值计算部分。
本实施例中,th6取值为1,即信号功率大于近似意义上的噪声功率则认为当帧数据有效,有效数据才能参与chip级同步偏移计算和chip级以下同步偏移计算,无效数据舍弃即不参与同步偏移计算。
通过近似信噪比概念的Scale对样本信息进行有效性判决,过滤了无效数据,使得参与chip级和chip级以下同步偏移值计算的样本信息均为有效信息,提高是样本的可靠性。
进一步地,作为另一种优选实施方式,在步骤2A计算峰均比,进行帧数据有效性判断之后,进行:
步骤3A:计算chip级同步偏移值。
本步骤中,包括利用峰均比对信号功率进行加权,在估计周期内用峰均比加权后的信号功率代替信号功率直接累加。峰均比加权后的信号功率能进一步反映该帧数据的有效程度。
3A-1:获取基准AGC,获取原则为以估计周期的首帧的agc作为基准AGC。
3A-2:消除AGC和信号质量加权后的信道冲激响应功率对位叠加:
cir_pwr_accu=cir_pwr×scale(fn)×agc_tableagc_benchmark-agc+15+cir_pwr_accu
其中:agc_tableagc-agc_benchmark+15为agc_table中的第agc_benchmark-agc+15项,agc_tableagc-agc_benchmark+15的使用同步骤3-1中chip级agc_table表;cir_pwr为同步窗的信道冲激响应;cir_pwr_accu为同步窗的累计信道冲激响应,scale(fn)为当帧同步窗的峰均比值。
3A-3:获取chip级同步偏差调整值。
3A-3-1:在由同步窗叠加的信道冲激响应功率序列中搜索最大值及其位置:在cir_pwr_accu的最强径所对应的位置stronge_path。
3A-3-2:前径搜索:判断从窗的开始位置到stronge_path的径是否存在满足下列条件的径:
cir_pwr_accu(n)>th2×cir_pwr_accu(stronge_path),n=1....stronge_path
搜索满足条件的n的最小值n_min(即从窗的开始位置到最强径内搜索到的第一个满足以上条件的径),并将其赋值frist_path=n_min。
本实施例中,门限th2设置为1/3。
其中,cir_pwr_accu(n)为从窗的开始位置到最强径内叠加的信道冲激响应功率,cir_pwr_accu(stronge_path)为同步窗中叠加的信道冲激响应功率最强径。
3A-3-3:chip级同步偏差估计。
通过首径位置first_path,获得估计的chip级偏差
est_chip=first_path-3,
若actual_fn==chip_est_period,fn=chip_est_period,将actual_fn,fn,cir_pwr_accu清零。
其中,est_chip为chip级同步偏差,first_path为同步窗中首径的位置,cir_pwr_accu为同步窗中叠加的信道冲激响应功率,fn为估计时用于累加的帧数的计数器;actual_fn为估计周期内实际接收的帧数计数器;fn和actual_fn均从0开始计数,chip_est_period为估计周期,取值为32。
本实施例中,为了防止偏窗,提前2个chip接收,根据冲激响应的结构,第3径为标准径。
进一步地,作为另一种优选实施方式,在步骤3A计算chip级同步偏移值之后,进行:
步骤4A:计算chip级以下同步偏移值。
包括利用峰均比对插值功率进行加权,在估计周期内用峰均比加权后的插值功率代替插值功率直接累加。峰均比加权后的插值功率能进一步反映该帧数据的有效程度。
4A-1:基本插值运算,对当前帧信道冲激响应h的2,3,4符号h(2),h(3),h(4)的复值进行3点32倍插值得到插值序列inter;其是一种现有技术,为本领域技术人员所熟知,因此,在本发明实施例中不再一一详细描述。
4A-2:将当前帧插值结果inter的功率值加权后叠加到累计插值功率序列inter_accu中,
inter_accu=agc_tableagc_benchmark-agc+15×scale(fn)×abs(inter).^2+inter_accu,
若actual_fn==chip_est_period,fn=chip_est_period,将actual_fn,fn,inter_accu清零。
agc_tableagc-agc_benchmark+15的使用同步骤3-1中chip级agc_table表。
其中,inter为3点32倍插值序列,其长度为96;abs(inter).^2为插值序列取绝对值后求平方的到插值功率序列;inter_accu为累计插值功率序列,scale(fn)为当帧同步窗的峰均比值。
本实施例中,由于AGC也是与信号质量相关的量,故AGC的加权为可选项,本部分采用AGC的加权以提升信号质量。
4A-3:获取chip级以下同步偏差调整值。
搜索累计插值功率序列inter_accu的最大值位置与33的差距确定chip级以下同步偏移值est_under_chip。
本实施例中33的选取是由于插值符号h(2),h(3),h(4)中是h(3)同步窗实际起始点,其经过32倍插值后的起始点位于33。
本实施例中选取符号对其进行32倍插值来作为chip级以下同步偏移的计算,提高了同步估计的精度。
本实施例中通过对有效数据进行Scale信号质量加权,提高了参与计算的样本信息的质量,进一步减小了同步偏移值的误差。
进一步地,作为优选实施方式,如图6、图7所示,进行:
步骤5A:根据同步偏移量调整采样时钟进行同步调整。
调整周期内依据有效帧数fn分4种情况来设置帧长进行同步调整。在调整周期内依据有效帧数fn采用不同的调整值进行同步调整。UE计算的同步偏移值SyncAdjust不是按照实际的偏差一次性调整到正确位置,而是按照预设的步长经过一个长时间震荡期,找到正确的同步位置。
5A-1:若fn<4,即有效帧数不足4帧,说明信道环境严重恶化,可能在进行小区切换或小区更新等操作,调整值为0,此时不做调整。
5A-2:若fn=4,即有效帧数为4帧,用此4帧数据的信道冲激响应进行chip级和chip级以下同步偏移值的计算,若计算的同步偏移值在1/8chip以内,则调整值为计算的同步偏移值,否则调整值为1/8chip。
5A-3:若4<fn<16,即有效帧数在4到16帧以内,则采用有效帧进行chip级和chip级以下同步偏移值的计算,进行方向性调整,调整步长为1/32chip,若计算的同步偏移值为正,则调整值为1/32chip,若计算的同步偏移值为负,则调整值为-1/32chip。
5A-4:若16<=fn<=32,即有效帧数在16到32帧以内,则采用有效帧进行chip级和chip级以下同步偏移值的计算,用计算的同步偏移值为调整值,进行同步调整。例如根据计算的同步偏移值为-5/32chip,则送去设置硬件时钟的调整值为-5/32chip。
本发明方法可以为TS-SCDMA系统移动终端侧提供完备的定时同步保持解决方案。本发明能够用于基于伴随DPCH信道同步的任意情形,并可在较小的数据使用量下获得理想的性能。本发明方法特别适用于移动终端侧拥有伴随DPCH信道完整训练序列信息时的情况。另外,本发明还特别适用于移动终端在低信噪比、强多径环境中进行定时同步保持,也特别适用于高层配置窗无数据且无效数据过多的情况。一般的,基站与终端间信道环境越恶劣,用户所在业务时隙占用情况越复杂,本发明相对现有技术而言,越能提高定时同步保持的性能。
本领域技术人员显然清楚并且理解,本发明方法所举的以上实施例仅用于说明本发明,而并不用于限制本发明,本发明存在许多变化,在不背离本发明的精神及其实质的情况下,相应的改变或变形均属于本发明的权利要求保护范围。