SAR ADC的量化过程相当于天平称重,假设我们有16、8、4、2、1的砝码。我们去称一个17克的物体,原则上我们是先放16克,再依次放8、4、2、1克的砝码,得到17=16+1,那么量化结果为10001. 但是这种二进制思想有个问题,如果我们第一次比较就出现问题,比如16克没放上去,即使我们后面8、4、2、1的砝码都放上了,最终结果也是8+4+2+1=15,也就是说后面的权重是补偿不回来的。
但是如果我们用冗余的思想,比如我们再添加一个4克的砝码,即使16克没放上去,我们也可以8+4+4+1=17,能把这个错误纠正过来。不过冗余能纠正回来也要付出代价,需要更多的电容硬件资源和转换步骤。
冗余主要是为了提高转换速率,比如16克的砝码放上去,需要等到天平稳定后,再放下一个砝码。如果用了冗余,那么我们就可以在天平没有完全稳定的时候添加下一个砝码(对应于DAC的setting time没有完全满足)。
原来SAR ADC 一个电压值对应唯一一个code,加了冗余位后,一个电压值对应多个code。
以天平作为模拟对象,左右两边有两个盛着不同重量液体的量杯,左边设为#1,共13L,右边设为#2,共2L,还有4L、2L、1L、0.5L的小量杯。
约定:1)左边不重于右边编码为0,否则编码为1;2)编码为1时,取出左边的液体倒向右边,编码为0时,反相操作。
第一次比较:#1重于#2,记B1=1
用4L量杯从#1中倒4L到#2
#1&#