谢谢啦,这篇**刚才还在看呢!

[复制链接]
4748|19
 楼主| cnchip 发表于 2007-12-15 23:30 | 显示全部楼层 |阅读模式
一个N位的ADC,分辨率到底是2N还是2N-1?(N是N次方哦)<br />记得这里有位仁兄说起过,应该是2N-1,并贴了MAXIM的一个datasheet说明!<br />我找了快一晚上了,国外的一些资料里基本是2N-1,但也有少数标2N的,甚至还有大名鼎鼎的AD公司的资料里同一页有不同的表述:<br /><img src="https://bbs.21ic.com/upfiles/img/200712/20071215233032820.gif"><br />怎么样,真是郁闷!<br /><br />到底应该是什么?这应该与ADC的结构有关,几位前辈能否指点一下?<br />非常感谢!<br /><br />随便贴一份资料,就上面那份文档,《仪表放大器应用工程师指南(第二版,中文版》
xwj 发表于 2007-12-15 23:45 | 显示全部楼层

这个问题要区分是ADC还是DAC

对于ADC,应该是2^N才对,而不是2^N-1<br /><br />实际上ADC可以看成是输入和基准的in/x比较<br /><br />比如最简单的一bit的,只有0和1两种状态,要全量程的话当然是应该以1/2REF为准,<br />对于0~1/2的,判定为0;对于1/2~1的,判定为1,每个格子的范围就是1/2<br />再扩展成2bit,有(0~3)4个状态:<br />那么对于0~1/4的,判定为0;对于1/4~2/4的,判定为1;对于2/4~3/4的,判定为2...每个格子的范围就是1/4<br /><br />更多的位数时,依此类推,就可以得出结论了:<br />应该是2^N才对,而不是2^N-1<br /><br /><br />而对于DAC,结果却又不同&nbsp;<br /><br />DAC的每个格子还是1/(2^N)<br />但是由于最大输出数只能输出2^N-1,因此会造成输出数少1的现象<br /><br /><br />比如我们用8bit&nbsp;ADC采样基准,再用8bit&nbsp;DAC&nbsp;同一基准输出,会发现采样的值是255,以255输出时只能输出255/256&nbsp;倍REF!<br />因为&gt255/256~256/256这一段范围内采样的值都是255,都只能输出255/256&nbsp;倍REF。<br /><br />这就是量化带来的误差,简称量化误差<br /><br />量化误差的范围为1/2^n&nbsp;倍基准<br />&nbsp;<br />&nbsp;<br />
awey 发表于 2007-12-15 23:32 | 显示全部楼层

2N-1, N比较大时,也不在乎那个1了

  
 楼主| cnchip 发表于 2007-12-15 23:34 | 显示全部楼层

上面那份资料好像有第三版了,需要的朋友自己找一下

不过目前中文版可能还没出来!
 楼主| cnchip 发表于 2007-12-15 23:43 | 显示全部楼层

多谢前辈指点!

主要是为什么呢?虽然很小,但却是一个基本概念啊!<br /><br />从结构上如何解释?稍加分析似乎应该就是2N-1,但……晕了!还是不太懂!<br /><br />再次感谢!
xwj 发表于 2007-12-15 23:54 | 显示全部楼层

哈哈,这家伙,拿裤子来诱惑我...

  
chunyang 发表于 2007-12-15 23:58 | 显示全部楼层

小x把你的二帖合一,我就给你穿条裤子

  
程序匠人 发表于 2007-12-15 23:59 | 显示全部楼层

同意7楼chunyang

  
chunyang 发表于 2007-12-16 00:06 | 显示全部楼层

已经给穿上了

谁叫你愿意上钩?!<br /><br />刚才BBS居然卡壳两分钟,怎么回事,跟投票截止有关吗?
 楼主| cnchip 发表于 2007-12-16 00:20 | 显示全部楼层

受教受教,非常感谢几位前辈指点!

保存下来明日认真拜读,到时不懂再请教,非常感谢!<br /><br />还有一个问题,SAR型ADC的DNL是不是只能做到0.5LSB,一个LSB应该就等于分辨率吧?可为何又叫最低有效位呢?是不是一个概念被弄糊涂了!<br /><br />此外,这个DNL只能做到0.5LSB感觉是不是太差了?这误差也太大了点吧?<br />这是TI的一个页面:<br /><img src="https://bbs.21ic.com/upfiles/img/200712/2007121601827533.gif"><br /><br />再次感谢几位前辈,非常感谢!
赤铸 发表于 2007-12-16 00:24 | 显示全部楼层

什么型的ADC也不可能优于0.5LSB

这是数字阶梯和模拟直线间最大误差的最小值(能看懂吧?呵呵)
xwj 发表于 2007-12-16 00:28 | 显示全部楼层

11楼正解,量化存在格子问题啊

每个格子的大小为1LSB&nbsp;,很多ADC或补偿0.5个格子把误差分布成正负半个格子<br /><br />而这半个格子的误差(0.5LSB)已经是理想线性时的最佳状态了,怎么还可能再少呢?
 楼主| cnchip 发表于 2007-12-16 16:54 | 显示全部楼层

嘿嘿,刚弄来了一个强悍的东东:

<img src="https://bbs.21ic.com/upfiles/img/200712/20071216165312354.gif"><br /><br />昨晚从国半弄的,还没来得及细看呢,稍等,我来找找URL,然后贴上!<br />非常感谢几位前辈指点!
 楼主| cnchip 发表于 2007-12-16 17:37 | 显示全部楼层

这里有个具体的,ADC081500的页面

<a href="http://www.national.com/pf/DC/ADC081500.html" target=_blank>http://www.national.com/pf/DC/ADC081500.html</a>
赤铸 发表于 2007-12-16 18:00 | 显示全部楼层

我前面说的就当是胡说

我看的是&nbsp;INL/DNL,想的是量化误差&nbsp;:(<br />量化误差不可能小于&nbsp;0.5LSB&nbsp;的,INL/DNL&nbsp;又是一回事<br />这方面的解释好像很多了,简单说,INL/DNL&nbsp;只管数字量对应的那些离散点,不管点之间空白,所以理论上可以到&nbsp;0<br /><br />但实际上,INL&nbsp;很少有小于&nbsp;0.5LSB&nbsp;的,道理很简单的,12-bit&nbsp;的&nbsp;ADC,如果&nbsp;INL&nbsp;能达到&nbsp;0.25LSB,那只要在电阻网络上再加几个电阻,就是&nbsp;13-bit&nbsp;的了,可以卖更高价钱了。这纯属经济问题了&nbsp;:)<br /><br />DNL&nbsp;倒是有远小于&nbsp;0.5LSB&nbsp;的,7135&nbsp;就是典型
 楼主| cnchip 发表于 2007-12-16 23:18 | 显示全部楼层

谢谢、谢谢!

呵,我也在想,理论上DNL应该可以逼近0的,开始只看了TI的,那个页面怎么只有0.5LSB的,所以以为只能做到0.5LSB呢!<br />不过0.15LSB也够大呀,那不就等于说ADC转换后相邻的两个数据间相对真实值误差间的误差最大会达到15%吗?这也够夸张啊?虽然整体相对输入的模拟信号误差可能非常小。<br /><br />是不是这样?<br /><br />另,INL的“平均值”应该是0.5LSB吧?<br />比如模拟信号0V时,ADC也是00H;<br />之后逐渐升高到逼近ADC的最低位即将变为1时,此时ADC转换后仍然是0,所以INL逼近1LSB;<br />当模拟信号再次升高到ADC最低位刚好变为1时,此时的INL又是0了。<br /><br />所以如果ADC一直保持线性的话,或者说在ADC相邻的DNL值均保持一致时(这样表述好像不妥^_^),那么INL的平均值就是0.5LSB。<br /><br />唉,表达的太罗嗦,不过意思我想前辈一定明白,不知我这样理解对不对?<br />被这两个东西给搞糊涂了,还是晕!<br />能否再指点一下?非常感谢!
 楼主| cnchip 发表于 2007-12-16 23:23 | 显示全部楼层

现在感觉INL的理论极限值是0.5LSB了

唉,越想越糊涂!晕~~~
 楼主| cnchip 发表于 2007-12-17 00:51 | 显示全部楼层

谢谢啦,这篇**刚才还在看呢!

不过还没弄明白综合噪声到底有多大!<br />谢谢!
zjp8683463 发表于 2007-12-18 15:58 | 显示全部楼层

差0.5LSB又没什么大关系

放弃最后几位就可以了,特别是24位的ADC
sz_kd 发表于 2007-12-18 17:38 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

214

主题

1375

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部