模數(shù)轉(zhuǎn)換器(ADC)有多種規(guī)格描述(specification)。根據(jù)應用需求,其中一些規(guī)范可能比其他規(guī)范更重要。比如:在直流規(guī)格中,如失調(diào)誤差、增益誤差、積分非線性(INL)和差分非線性(DNL),在使用ADC對慢速移動信號(如應變片和溫度傳感器的信號)進行數(shù)字化處理的儀器儀表應用中尤為重要。
本文深入探討失調(diào)和增益誤差規(guī)格。
模數(shù)轉(zhuǎn)換器傳遞函數(shù)
3-bit單極性ADC的理想傳遞函數(shù)如圖1所示。
圖1. 3-bit單極性ADC的數(shù)字輸出與模擬輸入(傳遞函數(shù))
理想情況下,ADC具有均勻的階梯輸入-輸出特性。請注意,輸出編碼不對應于單個模擬輸入值。相反,每個輸出碼代表一個小的輸入電壓范圍,寬度等于一個LSB(最低有效位)。如上圖所示,第一次輸出碼轉(zhuǎn)換發(fā)生在0.5 LSB,此后每個連續(xù)的轉(zhuǎn)換發(fā)生在上一個轉(zhuǎn)換的1 LSB處。最后一次躍遷發(fā)生在低于滿量程(FS)值1.5 LSB處。
由于使用有限數(shù)量的數(shù)字碼來表示連續(xù)范圍的模擬值,因此ADC表現(xiàn)出階梯響應,這本質(zhì)上是非線性的。在評估某些非理想效應(如失調(diào)誤差、增益誤差和非線性)時,通過穿過階躍中點的直線對ADC傳遞函數(shù)進行建模非常有用。這條線可以用以下等式表示:
[Y_{Linear}=frac{V_{in}}{FS} imes2^{N}]
其中 Vin是輸入電壓,N表示位數(shù)。如果我們不斷提高ADC分辨率(或輸出代碼的位數(shù)),階梯響應將越來越接近線性模型。因此,直線可以被視為具有無限數(shù)量輸出代碼的理想ADC的傳遞函數(shù)。然而,在實踐中,我們知道ADC分辨率是有限的,直線只是實際響應的線性模型。
ADC失調(diào)誤差和傳遞函數(shù)
由于內(nèi)部元件不匹配等非理想效應,ADC的實際傳遞函數(shù)會偏離理想的階梯響應。偏移誤差沿水平軸移動傳遞函數(shù),從而導致代碼轉(zhuǎn)換點偏移。圖2中的紫色曲線顯示了失調(diào)為+1 LSB的ADC的響應。
圖2. 顯示 +1 LSB 偏移、實際響應和理想響應的圖表。
對于單極性三位理想ADC,第一次轉(zhuǎn)換應發(fā)生在0.5 LSB,將輸出從000變?yōu)?01。但是,在上述響應下,ADC輸出在0.5 LSB時從001轉(zhuǎn)換到010。理想情況下,001到010的躍遷應該發(fā)生在1.5 LSB處。因此,與理想特性相比,非理想響應向左移動1 LSB。這稱為+1 LSB失調(diào)誤差??紤]非理想響應的線性模型(圖中的橙色曲線),我們還可以觀察到,對于0V輸入,系統(tǒng)輸出001,對應于+1 LSB失調(diào)。 圖3顯示了失調(diào)誤差為-1.5 LSB的ADC的響應。 ?
圖3. 具有-1.5 LSB失調(diào)誤差的ADC響應。
由于失調(diào)誤差將整個傳遞函數(shù)偏移相同的值,因此可以通過從ADC輸出中減去失調(diào)值來輕松校準。為了確定失調(diào)誤差,通常測量第一次代碼轉(zhuǎn)換,并將其與理想響應的相應轉(zhuǎn)換進行比較。使用第一個代碼轉(zhuǎn)換(而不是下一個代碼轉(zhuǎn)換)可以產(chǎn)生更準確的測量,因為根據(jù)定義,失調(diào)誤差是指零伏輸入時與理想響應的偏差。
查找ADC失調(diào)誤差示例
考慮滿量程值為FS = 5 V的10位ADC。如果從全零輸出代碼過渡到 00...01發(fā)生在8 mV的輸入電壓下,ADC的失調(diào)誤差是多少?
對于FS = 5 V的10位ADC,LSB值為4.88 mV,計算如下:
[LSB=frac{FS}{2^{N}}=frac{5}{2^{10}}=4.88,mV]
理想情況下,第一次躍遷應在0.5 LSB = 2.44 mV時發(fā)生,而測得的響應在8 mV時發(fā)生這種躍遷。因此,ADC的失調(diào)值為-5.56 mV。失調(diào)誤差也可以表示為LSB的倍數(shù),如下所示:
[Offset,Error,(in,LSB)=frac{Offset,Error,(in, Volts)}{LSB,Value,(in, Volts)} = frac{-5.56,mV}{4.88,mV}=-1.14,LSB]
模數(shù)轉(zhuǎn)換器增益誤差
消除失調(diào)誤差后,實際響應的第一次轉(zhuǎn)換與理想特性的轉(zhuǎn)換一致。但是,這并不能保證兩條特征曲線的其他轉(zhuǎn)換也將在相同的輸入值下發(fā)生。增益誤差指定上次躍遷與理想值的偏差。圖4說明了增益誤差概念。
圖4. 顯示增益誤差概念的圖表。
讓我們將上一次轉(zhuǎn)換上方的一半LSB定義為“增益點”。消除失調(diào)誤差后,理想增益點與實際增益點之差決定了增益誤差。
在上例中,非理想特性的增益誤差為+0.5 LSB。上圖中的橙色曲線是非理想響應的線性模型。如您所見,測量增益點和理想增益點之間的差異實際上會改變系統(tǒng)線性模型的斜率。圖5顯示了具有-1 LSB增益誤差的ADC的響應。
圖5. 具有-1 LSB增益誤差的ADC的響應。
請注意,一些技術(shù)文檔將增益誤差定義為理想ADC的實際增益點與直線模型之間的垂直差。在本例中,繼續(xù)圖 5 中描述的示例,我們得到圖 6 中的圖表。
圖6. 增益誤差為ADC實際增益點與直線模型之間的垂直差值。
垂直和水平差異產(chǎn)生相同的結(jié)果,因為理想線性模型的斜率為 1。
查找ADC增益誤差示例
假設(shè)滿量程值為FS = 5 V的10位ADC在4.995 V時從3FE的十六進制值最后一次轉(zhuǎn)換到3FF。假設(shè)失調(diào)誤差為零,計算ADC增益誤差。
ADC的LSB為4.88 mV,如上例所示。理想情況下,最后一次轉(zhuǎn)換應發(fā)生在FS -1.5 LSB = 4992.68 mV時。發(fā)生躍遷時的測量值為4995 mV。因此,ADC的增益誤差為-2.32 mV或-0.48 LSB。
用滿量程誤差表示增益誤差
基于上述概念,我們可以根據(jù)滿量程誤差來定義增益誤差。如圖 7 所示。
圖7.滿量程誤差。圖片由Microchip提供
在上圖中,實際響應受到失調(diào)和增益誤差的影響。因此,實際最后一次轉(zhuǎn)換與理想最后一次轉(zhuǎn)換的偏差(用滿量程誤差表示)包含失調(diào)和增益誤差。為了找到增益誤差,我們可以從滿量程誤差中減去失調(diào)誤差:
[Gain Error,=,Full scale Error,-,Offset Error]
這相當于首先補償失調(diào)誤差,然后測量與理想響應的最后一次躍遷的偏差,以得出增益誤差。請注意,在本例中,增益誤差為正,失調(diào)誤差為負,導致滿量程誤差小于增益誤差。
定義中的一些ADC規(guī)格不一致
值得一提的是,一些ADC規(guī)格在技術(shù)文獻中定義不一致。一個令人困惑的不一致是失調(diào)和增益誤差的標志。例如,雖然Microchip和Maxim Integrated與本文中使用的定義一致,但一些制造商,如STMicroelectronics(ST)有所不同。ST以相反的方式定義這些誤差項的符號。來自同一芯片制造商的文檔之間也觀察到不一致。例如,圖 8 取自此德州儀器?(TI) 文檔,該文檔使用相反的符號約定。
圖8.TI 的 ADC 增益誤差示例。圖片由TI提供
但是,圖 9(同樣來自 TI)使用的定義與本文中使用的定義一致。
圖9.TI 失調(diào)誤差示例。圖片(改編)由 TI 提供
圖 9(以及整篇本文)中使用的符號約定似乎在各種技術(shù)文獻中得到了更廣泛的接受。這種不一致可能會導致混淆,但如果您掌握了本文中討論的基本概念,則可以解決此類問題。例如,如果您測量ADC,并觀察到其第一次轉(zhuǎn)換發(fā)生在0.5 LSB以上(類似于圖3中描述的情況),則無論使用何種符號約定,都應在ADC讀數(shù)中添加適當?shù)恼狄匝a償失調(diào)誤差。
審核編輯:湯梓紅
評論
查看更多