偶尔会有人问,常常是年龄较大的工程师问:在超范围情况发生时,转换器的输出数据是什么?第一次听到这个问题(许多年前)时,我觉得有点可笑。但是,一位更有经验的同事解释说,早期集成ADC通常会表现出一种称为“翻转”的行为。 多数现代高速ADC都有一个超范围(OR)标志。该输出位通常与转换器的输出数据同步,表示模拟输入样本超过了转换器的满量程输入范围。考虑一个使用偏移二进制编码的ADC。如果输入信号超过转换器的正满量程范围,ADC将钳位,输出数据将为全1(12位ADC是1111 1111 1111)。如果输入超过其负满量程范围,输出将为全0(12位ADC是0000 0000 0000)。两种情况下,OR位都会置1,表示在该采样期间输入超出范围。 相比之下,对于具有翻转行为的旧式12位转换器,如果其输入为正满量程+1 LSB,则其输出可能是0000 0000 0001,而不是全1。用户可从OR输出得知ADC已超范围,该数据应当被忽略。对于一款具有两倍输入范围的13位转换器,这些位原本是正确的低12位,但对于一款12位转换器,该输出表示输入比负满量程高1 LSB。可以想象,这在任何系统中都可能引起问题。
但是,使用ADI公司的高速转换器时请放心,您不必担心此类问题。我从1980年代开始就与这些产品打交道,所有这些年来,我们从未发布一款包含这个问题的产品。很可能是早先时候,有几位工程师被这个问题坑过,所以认真仔细地予以解决,确保它不再坑人。
|