关于 DWA 实现 Mismatch-Shaping 的一些理解


最近有涉及到在带通结构的 Sigma-Delta DAC 中应用 DWA (Data Weighted Averaging)算法的工作,看到有些论文解释的不算很明白,这里谈谈自己关于 DWA 动态匹配实现电路元件的 mismatch- shaping 的一些理解。

基本的 DWA 算法的原理

首先,考虑电路中存在 M 个元件,其元件序号为 0 ~ M-1,第 i 个元件实际值为 Wi,对应的误差值为 ei ,可以定义:

INL

这里可以将其理解为在无 DWA 时,电路中输入数据 X (即选择 X 个元件输出)时所带来的输出误差。

下面考虑对于基本的一阶 DWA 算法的 1-z-1 的 mismatch-shaping 特性的推导,下图所示为 M=7 时的 DWA 算法示例:

应用于低通信号的 DWA 算法示例

这里定义 Pt(k) 为第 k 个周期完成后,下一周期选择元件的起始位置序号

指针计算

为简化分析,考虑 k 次输入不使其越界(即不考虑 Mod 作用),则第 k 次输出带来的误差为:

LP DWA 输出的误差

将其转换到 Z 域,可以看到

DWA mismatch-shaping 特性

可见,DWA 等效的对电路的输出误差实现了一阶差分,也就所谓的 Mismatch-Shaping。

带通结构中 DWA 算法的实现

对于之前分析的结果,若再利用 N-path filter 的方式 (其中的单路相当于工作于 Fs/N,因此到 z -> zN 的变换),对 DWA 采用 N 个指针以时间交织的方式工作,则可以实现 1-z-N 的特性的 mismatch-shaping,对应的 notch 频率为: 0,Fs/N, 2Fs/N, 3Fs/N, … ,从而可以应用到带通结构的电路中。

进一步考虑 1+z-N 的特性, 可以看到其对应的 notch 频率在于 Fs/2N, 3Fs/2N, 5Fs/2N, … 。对比1-z-N 的特性,可见所需的指针数量减小了一半,因此对于带通特性的输入(如BP-SDM),可以采用1+z-N 方式的 Mismatch-shaping。由于之前提到类似 N-path filter 的处理方式,下面只分析 1+z-1 特性 DWA 的工作原理。

下图是实现 1+z-1 的DWA 算法示例:

用于带通电路的DWA算法示例

当 k 为奇数, Pt(k)=Pt(k-1)+X(k)-1 mod M

当 k 为偶数, Pt(k)=Pt(k-1)-X(k)+1 mod M

为方便分析,考虑 k 为偶数,且指针不发生越界(不考虑 Mod 作用),k 与 k-1 时刻输出的误差:

BP DWA K时刻输出误差

BP DWA K-1 时刻输出误差

并且有:

BP DWA mismatch-shaping 特性推导 -1

转到 Z 域,可以看到

BP DWA mismatch-shaping 特性推导 -2,

也即:

BP DWA mismatch-shaping 特性

同样考虑 k 为奇数可以得到类似的结果,只是此时 INL 考虑以-方向选取的误差,因此残留的疑问主要在于如何统合这两个结果,另外一个问题是当指针发生越界(也就是通过 mod 取余数)时具体如何分析。

当然,通过仿真结果验证这样的 DWA 算法仍然是可行的,下面给出了在 BP-SDM 输出码流加上 DWA 的结果的对比,DWA 实现的为 1+z-4 的 mismatch-shaping。

用于带通的 DWA 的 PSD 比较


版权声明: 本站文章版权所有,转载须以超链接形式标明文章原始出处和版权信息。

发表评论

电子邮件地址不会被公开。 必填项已用*标注