作者:Onur Ozbek
电子设计工程师
赛普拉斯半导体
数模转换器(DAC)的静态绝对精度可以用三种基本类型的误差来描述:偏移,增益误差和非线性。在这三种误差中线性误差的处理是最具挑战性的,因为在许多应用中,用户可以排除偏移和增益误差,或在系统设计中创建端点自动校准功能对它们进行补偿。然而,线性误差要求更为复杂的校正措施。
DAC(图1)将数字输入代码转换为成比例的模拟输出信号,这种信号可能是电流,也可能是电压。DAC分辨率指的是DAC能够产生的不同输出电平的数量。例如,具有8位分辨率的DAC能够在输出端产生28 (256)个不同的输出电平。理想情况下,每个数字代码提供相等的模拟步距。然而,由于实际器件存在非线性,这种理想情况不可能实现。
图1:8位DAC符号与作用。
DAC的线性度
在讨论如何改进DAC的积分非线性(INL)之前,我们先回顾一下如何确定DAC的线性度,如图2所示。对于DAC来说,我们主要关注两种线性度指标:差分非线性(DNL)和积分非线性(INL)。
图2:DAC线性误差——DNL和INL。
DNL指的是相邻输入代码之间的实际模拟输出步距与理想步距之间的最大偏离(Δ)。INL指的是在传输函数任何点的实际输出电平与理想电平之间的最大偏离。理想情况是从实际零点到DAC满刻度点画出的一条直线。
一般采用传统的端点校准技术来消除DAC中的增益误差。然而,增益误差在DAC的整个满刻度范围内通常不是线性的,因为硅元件存在各种系统性的非线性因素。这些系统性图案可能造成单向梯度,进而导致不良的INL性能。
造成系统性图案的主要非线性因素有:边缘效应,例如扩散长度(LOD);掺杂梯度;导致裸片上出现阈值偏移的氧化物厚度梯度;热梯度;电源线上的压降。
因此,端点校准技术不足以完全消除增益误差,从而可能导致不良的INL性能。要求绝对输出精度的应用可能要求非常小的INL。
{pagination}
固件技术
改进INL性能的方法之一是使用固件技术。这种技术充分利用了与SoC一起工作的优势,在系统中建立两点自动校准功能。在本例中,我们将使用PSoC 3系列器件,这些器件具有多达4个多范围的8位电压/电流DAC,INL约为1.5LSB。片上的20位Δ-∑ ADC工作在12位模式时具有不到1 LSB的INL。对于校准8位DAC来说已经足够。这里要求固件完成DAC输出到ADC之间的反馈环路(图3)。
图3:带ADC反馈功能的电流输出DAC(IDAC)。
INL通常在满刻度的中间达到最大值,如图4所示。如果能将这个峰值降下来,就可以显著改善INL。这个观察结论促使我们使用两点校准代替端点或单点校准技术,因为仅靠后者这种技术不足以完全消除增益误差。
图4:具有不同增益区的DAC线性度。
第一个校准点用于校准满刻度范围的前半段(公式1)。
(公式1)
同样,第二个校准点用于校准满刻度范围的后半段(公式2)。
(公式2)
图5所示算法解释如下。一开始先计算出两个增益校正值,并将它们保存在数字输入DAC值的中点和端点。这是唯一一次使用ADC的地方。因此,我们只是牺牲了测量和计算时间来实现一次性校准。
图5:两点增益校准算法流程图。
在正常工作过程中,如果小于中点的数字代码传送到DAC,在转换之前需用第一个增益校正值进行校准。如果大于中点的数字代码传送到DAC,在转换之前需用第二个增益校正值进行校准。
上述校准是通过更新增益调整寄存器在线完成的,如图3所示。如果SoC上有直接存储访问(DMA)模块的话,可以用它更快地更新寄存器。
改变满刻度范围中间的增益校正值将产生调整偏差(公式3)。
(公式3)
这种调整偏差需要在满刻度范围后半段进行补偿,如图5中的算法所示。
为了便于比较,在应用推荐的算法之前,先要对采用传统端点校准方法的8位电流DAC(IDAC)的INL性能进行测量。测量得到的INL约为1.5 LSB,见图6。在推荐算法实现后,INL被减小到0.8 LSB,见图7。
图6:采用传统端点增益校正方法的IDAC的积分非线性。
图7:采用两点增益校正的IDC的积分非线性。
本文小结
用于改进SoC中DAC积分非线性的固件技术已经非常实用。在使用PSoC 3系列产品的实现案例中也得到了成功展示,结果是切实可行的。这种推荐技术可以使PSoC 3中的电压和电流DAC的INL有85%的改善。
本文来自《电子工程专辑》2011年12月刊,版权所有,谢绝转载。