1 测试指标
衡量AD链路系统性能的参数众多,每个参数都从不同侧面展现了AD链路的性能。在实际工程中,通过对偏置误差(offset error)、增益误差(gain error)、积分非线性(INL)误差、有效位数(ENOB)和小波误差这五个关键指标的测试,可以较全面地评估整个AD链路的性能。
• 偏置误差:AD链路输入为零时的输出值。它反映了AD链路所有实际输出值相对于理想值的整体偏移。
• 增益误差:AD链路实际转换特性曲线斜率与理想转换特性曲线斜率(理想斜率为1)之间的差异。它反映了AD链路在输出与输入信号比例关系上的误差,导致输出实际值相对于理论值的放大或缩小。
• 积分非线性误差:该误差反映了AD链路在校正偏置和增益误差后,其实际输出(非线性)与理想输出(线性)之间的最大输出值偏差。
• 有效位数:是信纳比的另一种表述形式,表示在给定信号噪声和失真水平下,ADC的性能相当于多少位理想ADC的分辨率。由于噪声和其他非理想因素的影响,有效位数通常低于ADC的物理分辨率位数。
• 小波误差:指AD链路在输入较低幅值信号时,能够维持波形不发生明显失真的最小输入阈值。
2 测试目标
1. 偏置误差:向AD链路输入0V电压,计算出其输出值的平均值作为偏置误差。
2. 增益误差:向AD链路输入接近满量程的信号,先计算ADC输出的最大值和最小值之差,然后除以输入的最大值和最小值之差,得到实际转换特性曲线的斜率。接着,将此实际斜率与理想斜率(理想斜率为1)之差作为增益误差。
3. 积分非线性误差:向AD链路输入接近满量程的信号,比较每个采样点的实际输出值与理想输出值的差异,并以这些差值中的最大值作为积分非线性误差。
4. 有效位数:向AD链路输入接近满量程的信号,频率与实际应用中的最高频率相符。计算此时输出的数字信号的信纳比,然后依据信纳比与有效位数的关系公式,计算得出有效位数。
5. 小波误差:逐渐减小AD链路的输入信号幅值,直至信号出现明显失真,此时的输入幅值即为小波的阈值。
3 测试环境
软件:MATLAB、Vivado 2018.3
硬件:ADC信号采集板卡(有A、B两个通道)、信号发生器
4 测试点
信号采集板卡理论量程:-5.12V~5.12V;ADC分辨率:8位;ADC采样率:40MHz;
5 测试过程
5.1 偏置误差
1. 将ADC信号采集板卡的A、B两个通道的输入接地(等同于输入0V直流)。
2. 采集ADC输出数据,并使用MATLAB画图
A通道
B通道
3. 当AD链路输入为0V时,理论的数字输出为0。但实际上,A通道的数字输出为7 ,B通道的数字输出为6,因此A通道的偏置误差为7LSB(0.28V),B通道的偏置误差为6LSB(0.24V)。
5.2 增益误差
1. 使用信号发生器输入频率为100kHz,幅值Vinput = ±4.72V(±118LSB)的正弦波。
2. 采集ADC输出数据,然后在MATLAB中进行偏置误差矫正(减去直流偏置)并绘图。
A通道
计算出实际的转换特性曲线斜率Slopereal:
B通道
计算出实际的转换特性曲线斜率:
3.计算出增益误差
5.3 积分非线性误差
1. 使用信号发生器输入频率为100kHz,幅值Vinput = ±4.72V(±118LSB)的正弦波。
2. 采集ADC输出数据后,在MATLAB中先矫正偏置和增益误差。然后,将调整后的数据与理想正弦波的值相减,这样得出的差值即为积分非线性误差。
通道A实际输出与理想输出的差值
差值为-1.5~2
通道B实际输出与理想输出的差值
差值为-2~3
3. 积分非线性误差可通过比较AD链路的实际输出与理想输出之间的差值来计算,取这些差值的绝对值中的最大值作为误差值。通道A积分非线性误差:2LSB;通道B积分非线性误差:3LSB。
5.4 有效位数
1. 使用信号发生器输入频率为2MHz,幅值Vinput = ±4.72V(±118LSB)的正弦波。
2. 采集ADC输出数据,画出时域图和频谱图。(MATLAB代码:https://github.com/Yong12315/ADC-dynamic-parameter)
A通道
计算出信纳比(SINAD)
其中Ps为信号能量,Pn为噪声能量,Pd为谐波能量。
根据信纳比计算出有效位数(ENOB):
其中DigitalMAX为时域信号最大值,Digitalmin为时域信号最小值。
通道B
计算出信纳比(SINAD):
其中Ps为信号能量,Pn为噪声能量,Pd为谐波能量。
根据信纳比计算出有效位数(ENOB):
其中DigitalMAX为时域信号最大值,Digitalmin为时域信号最小值。
3. 尽管ADC理论的分辨率为8位,但由于量化噪声、系统噪声和谐波干扰等因素,其实际有效位数低于理论分辨率。因此,A通道的有效位数为7.34 Bits,B通道的有效位数为7.32 Bits。
5.5 小波误差
1. 使用信号发生器输入频率为2MHz,幅值不断减小的正弦波。
2. 采集ADC输出数据,并使用MATLAB画图
A通道:输入幅值为±0.2V
B通道:输入幅值为±0.2V
3. 当输入正弦波的幅值为±0.2V时,波形出现明显的失真,说明小波的阈值为±0.2V。
文章评论