一、引言:为什么需要定时同步?
在数字通信系统中,接收端需要从接收到的连续信号中准确地恢复出每个符号。然而,由于信道传输时延、收发两端时钟频率偏差等因素,接收端并不知道每个符号的最佳采样时刻在哪里。
位同步(符号同步/定时同步)的目的,就是在接收端确定每个码元符号的正确起止时刻。位同步是数字通信诸多同步中首要的问题,没有位同步,就无从解出所传输的数字信息。
传统方法往往需要符号速率整数倍采样的限制,而 Gardner 算法巧妙地避开了这一约束。
二、Gardner 算法概述
Gardner 定时误差算法由Floyd M. Gardner于 1986 年提出,是一种非数据辅助(Non-Data-Aided)的定时误差检测算法。
2.1 算法核心思想
Gardner 算法的核心思想可以这样理解:通过观察“前后两个符号的中间那个点有没有归零”,来判断采样是快了还是慢了。
具体来说,算法利用码元跳变(过零点)来检测定时误差:
- 理想情况:如果一个符号是波峰,下一个是波谷,那么它们正中间的采样点(中间点)应该刚好为 0。
- 非理想情况:如果中间点不为 0,说明采样时刻偏移了。中间点偏正或偏负,结合前后符号的极性,就能算出偏移方向。
2.2 Gardner 算法的两大特点
Gardner 算法有两个显著特点:
- 每个符号只需要两个采样点(一个 strobe 点即最佳观察点,一个 midstrobe 点即两个观察点之间的采样点),且以码元速率输出误差信号。
- 估计算法独立于载波相位,不受载波相位偏移的影响,可以在载波同步之前先进行定时同步。
三、数学公式与物理意义
3.1 定时误差检测公式
Gardner 定时误差检测器(TED)的数学表达式为:
e(k)=[y(k)−y(k−1)]×y(k−1/2) e(k) = \big[y(k) - y(k-1)\big] \times y(k-1/2)e(k)=[y(k)−y(k−1)]×y(k−1/2)
其中:
- y(k)y(k)y(k)和y(k−1)y(k-1)y(k−1)是相邻两个符号的最佳采样点(strobe 点)
- y(k−1/2)y(k-1/2)y(k−1/2)是这两个采样点正中间的采样点(midstrobe 点)
- e(k)e(k)e(k)是输出的定时误差信号
另一种等价写法为:
TED=ymid×(ylate−yearly) \text{TED} = y_{\text{mid}} \times (y_{\text{late}} - y_{\text{early}})TED=ymid×(ylate−yearly)
3.2 物理意义
这个公式的物理意义非常直观:
- 当前后符号变化越大时(即y(k)−y(k−1)y(k) - y(k-1)y(k)−y(k−1)越大),中点采样值对误差的贡献就越大。
- Gardner TED 通过近似波形在假定过零点处的导数,并用过零点处的实际采样值进行加权,来构成定时误差鉴别器。
3.3 误差符号的判定
根据误差信号的正负,可以判断采样的快慢:
| 情况 | 中间点值 | 误差信号 | 含义 |
|---|---|---|---|
| 无误差 | y(k−1/2)=0y(k-1/2)=0y(k−1/2)=0 | e(k)=0e(k)=0e(k)=0 | 采样时刻完美 |
| 采样太快 | 中间点在最佳采样点左边(正数) | e(k)<0e(k)<0e(k)<0 | NCO 需要减慢 |
| 采样太慢 | 中间点在最佳采样点右边(负数) | e(k)>0e(k)>0e(k)>0 | NCO 需要加快 |
四、Gardner 环的系统结构
Gardner 定时同步环路主要由以下四个模块组成:
4.1 内插滤波器(Interpolator)
内插滤波器的作用是从非同步的采样信号中,计算出最佳采样时刻的信号值。
核心思想:我们并不真的去还原连续信号,而是直接利用现有的采样点x(mTs)x(mT_s)x(mTs)和滤波器系数进行卷积运算,直接计算出y(kTi)y(kT_i)y(kTi)。
数学表达:
y(kTi)=∑mx(mTs)⋅hI(kTi−mTs) y(kT_i) = \sum_{m} x(mT_s) \cdot h_I(kT_i - mT_s)y(kTi)=m∑x(mTs)⋅hI(kTi−mTs)
其中hI(t)h_I(t)hI(t)是内插滤波器的冲激响应。
在工程实现中,常用分段抛物线插值等低复杂度方法。
4.2 定时误差检测器(TED)
TED 是 Gardner 环的“大脑”,其功能就是计算上一节提到的误差公式:
e(k)=[y(k)−y(k−1)]×y(k−1/2) e(k) = \big[y(k) - y(k-1)\big] \times y(k-1/2)e(k)=[y(k)−y(k−1)]×y(k−1/2)
该检测器具有正弦形状的 S 曲线,其检测灵敏度与调制方式和成型脉冲的滚降系数有关。
4.3 环路滤波器(Loop Filter)
环路滤波器的作用是平滑误差信号,控制环路的收敛特性。
采用二阶比例积分(PI)结构:
w(k)=w(k−1)+C1⋅[e(k)−e(k−1)]+C2⋅e(k) w(k) = w(k-1) + C_1 \cdot \big[e(k) - e(k-1)\big] + C_2 \cdot e(k)w(k)=w(k−1)+C1⋅[e(k)−e(k−1)]+C2⋅e(k)
其中:
- C1C_1C1是比例增益(决定收敛速度)
- C2C_2C2是积分增益(决定稳态精度)
参数设计遵循数字锁相环理论,通常取阻尼系数ζ=0.707\zeta = 0.707ζ=0.707以获得最佳跟踪性能。
4.4 数控振荡器(NCO)
Gardner 环中的 NCO 与锁相环路中的 NCO 功能完全不同。这里的 NCO 作用是:
- 产生时钟,确定内插基点mkm_kmk
- 完成分数间隔μk\mu_kμk的计算,提供给内插器
NCO 的差分方程为:
η(m+1)=[η(m)−ω(m)]mod 1 \eta(m+1) = \big[\eta(m) - \omega(m)\big] \mod 1η(m+1)=[η(m)−ω(m)]mod1
其中η(m)\eta(m)η(m)是 NCO 寄存器的内容,ω(m)\omega(m)ω(m)是 NCO 的控制字(由环路滤波器输出)。
当环路达到平衡时,ω(m)\omega(m)ω(m)近似为常数,平均每隔1/ω(m)1/\omega(m)