关键词:符号同步 定时错误检测 插值 窗函数
在数字通信系统中,为了限制被传输的数字信号的频谱,需要对其进行滚降升余弦滤波,形成基带波形,并对载波进行调制,以实现频带传输。在接收端,需要对经过相干解调、匹配滤波形进行重新采样得到相应的数字信号。根据奈奎斯特抽样值无失真准则,A/D转换器若在最佳采样时刻进行采样,得到的采样值恰好是发送端所要传递的数据。但在实际情况下,由于信道传输延时以及收发两地时钟偏移,使采样无法在最佳时刻进行,这样采集到的数据与正确的数据之间存在着偏差,需要有同步措施来调整采样时钟或对采样值进行插修正。
图1
目前数字接收机中的符号同步大多采用自同步法。其主要有两种,一种是由定时错误检测(TED)算法加环路滤波器估算采样时钟和最佳采样时刻之间的相位差,然后通过数控振荡器NCO调整采样时钟,称为同步采样恢复;另一种也使用相同的方法估算时钟相差,但它并不调整采样时钟相位,而是通过插值算法对采样值进行修正,称为异步采样恢复。由于后者不需要改变时钟相位,因此具有更好的稳定性,故得到广泛的应用。 本文提出了一种基于插值算法符号同步的硬件设计方案。在时钟相差估算环节采用了NDA-ELD算法进行定时错误检测;插值滤波器的设计则采用了理想插值算法加窗处理,与拉格朗日插值滤波器相比,具有更好的频域特性。该同步方案属于非数据辅助的同步法。这里所谓的同步,是对采样值进行插值修正,而不需要对时钟本身进行相位调整。因此它较适用于对系统时钟稳定性要求较高的场合,如全数字接收机等。
异步采样恢复的符号同步设计结构如图1所示。该方法的关键在于插值算法的准确性。针对这一点,本文提出了一种符号同步的硬件设计方案,其插值滤波器的设计采用了理想插值算法加窗处理,与目前所采用的另一种拉格朗日插值滤波器相比,具有更好的频域特性。
1 时钟相差的估算
对于最佳采样时刻和采样时钟相位差的估算,本文采用定时错误检测(TED)加环路滤波器实现。其中定时错误检测环节采用NDA-ELD算法,该算法是由最大似然估计法所推导的,它要求A/D转换器以两倍的符号频率对输入波形进行采样。公式如下
这里T是符号周期,Ts是采样间隔,Ts=T/2。e(k)表示采到第k个符号时所得到的定时误差信息。εк表示采到第k个符号时所估算出的最佳采样时刻和采样时钟之间的相位差,其范围是[-1,1],即时钟偏差最多可为1个采样间隔。y(kTs+εкTs)则是根据εк而对匹配滤波器的输出y(kTs)进行的差值修正。将e(k)通过一环路滤波器和相位溢出控制器便可得到εк+1,从而实现PID控制。相位溢出控制器主要是对εк+1进行限幅,将其控制在[-1,1]之内。由此可得到时钟相差估算的设计结构,如图2。
该算法对于一些幅度或相位调制的信号,如MQAM、BPSK、QPSK等,具有较好的同步性能。在开启时,它能自动跟踪开启的最大处,即最佳采样时刻。当存在噪声干扰时,可通过环路滤波器将其滤除,使之对时钟相差估算产生较小的影响。环路滤波器系数K1、K2的选择要视具体情况而定,取得过大,同步时间较短,但抖动方差较大;反之,则需要较长的同步时间。本设计是对64QAM信号进行符号同步,经过Matlab的仿真测试,结果表明K1、K2分别取1/512、1/256较为合适。
2 采样值插值修正
通过以上处理环节可估算出采样时钟和最佳采样时刻之间的相位差,在插值修正环节就可根据该相差进行采样值修正处理。由内插公式可知,如果采用理想插值,理论上可根据采样值得到任意时刻的信号值,即:
但理想插值滤波器需要无穷个信号采样值,这在实际应用中是无法实现的。一般情况下可对理想插值滤波器加窗处理,将其截短。
窗函数的选择要视具体情况而定。最简单的窗函数是矩形窗,即对理想插值滤波器直接截短。其优点是设计简单,具有较窄的过渡带,且对理想插值滤波器频率响应具有最好的均方逼近。但它对无限长理想冲激响应直接截取,因此存在着较为明显的吉布斯现象。此外,其最小阻带衰减为21dB,这在实际应用中也是不够的。因此直接截取方式在现实中很少采用。对理想冲激响应进行窗处理的一个较成功的办法是将窗函数的两端平滑地减小至零,以减小旁瓣高度,减轻吉布斯现象[4]。在这一思想下,目前常用的窗函数有Han ning、Hamming、Blackman、Kaiser等。本设计采用了Kaiser窗,它是一种近似最佳的窗函数。经过Matlab仿真测试,将Kaiser窗长度定为10Ts,形状参数β取为2.5248(对应的阻带最小衰减为33dB),可得到较小的插值平均误差。由此得到如下公式:
这里h(t)为插值滤波器的冲激响应,它是理想内插函数的Kaiser窗载短形式,长度为10Ts。即:
这里I0(·)表示第一类零阶修正Bessel函数。由此可得到其频率响应H(ω),它是所需理想频率响应与窗函数傅里叶变换卷积所得。H(ω)对数幅度特性如图3所示(取Ts=1)。
可见,Kaiser窗函数插值滤波器具有较好的频域特性。在通带,它能将衰减稳定在0dB;在阻带,最小衰减为33dB,且迅速增大。这些均优于目前所用的另一种拉格朗日插值滤波器,其频谱特性见文献[4]。利用该滤波器便可对采样值进行插值修正。由公式(3)可得到如图4所示的设计结构。
为了使硬件更容易实现,可将εn离散化,即将其取值空间定为{-1,-0.75,-0.5,-0.25,0,0.25,0.5,0.75,1},以取代其在[-1,1]上的连续取值。图4中,h'(εn+m)=h(εnTs+mTs),其值取决于εn控制9选1选择器,根据不同的εn输出不同的
h'(εn+m)的各自取值空间,即理想插值滤波器系数与对应的窗函数值相乘的结果。该结构中应用了移位寄存器,主要是为了避免εn改变时,所造成的算法误差。这样在输入一个y(kTs)后,经过4个采样周期的延迟,就可得到相应的输出y(kTs+εnTs),从而完成插值修正。
图4
文中提到的设计已用VerilogHDL实现,并用Design Compiler对其进行了门级综合,并用VCS进行了时序验证,所用的工艺为0.25μm。设计门数约8000门,采样时钟可达17.5MHz,平均插值误差11%左右。
评论
查看更多