1. 程式人生 > >選擇好ADC中效能指標是設計系統執行良好的必備 轉

選擇好ADC中效能指標是設計系統執行良好的必備 轉

本文主要對影響系統性能的ADC的各誤差指標作分析及其選擇與應用作出判斷。
採用12位解析度的模擬-數字轉換器(ADC)未必意味看你的系統將具有12位的精度。很多時候,令工程師們吃驚和不解的是,資料採集系統所表現出的效能往往遠低於期望值。
如 果這個問題直到樣機執行時才被髮觀,那是措手不及,只好慌忙地改用更高效能的ADC,那大量的時間被花費在重新更改設計上,同時,試投產的日程在迅速臨近。問題出在哪裡?最初的分析中有那些因素髮生了改變?要有一個正確答案,就必須對ADC的效能指標有一個深人的瞭解,才能有助於發觀一些經常導致效能指 標不盡人意的細節所在。
對於ADC指標的理解還有助於你為你的設計選擇正確的ADC。

系統要求
可以設想,整個系統的誤差可以看作是訊號通路上每個電路元素所貢獻的誤差項的總和。因此總誤差的均方根值可由下式給出:
其 中EN代表某個特定電路元件的誤差項。在本例中,假定我們需要0.1%或者說10位的精度,這樣,只有選擇一個具有更高解析度的轉換器才有意義。如果是一 個12位的轉換器,可能會想當然地以為精度已足夠高;但是在沒有仔細檢查其規格書之前,並沒有把握得到12位的效能。舉例來說,一個具有4 LSB(最小有效位)積分非線性誤差(1NL)的12位ADC,最多隻能提供10位的精度(假設失調和增益誤差已得到修正)。一個具有0.5LSB的 INL的器件則可提供0.0122%的誤差或13位的精度(消除了增益及失調誤差以後)。要計算最佳精度,可用最大INL誤差除以2N,其中N是轉換器位 數。該舉例中,若採用0.075%誤差(或11位)的ADC,則留給其餘電路的誤差餘量只有0.025%,這其中包括感測器、前端訊號調理電路(運放、多 路複用器等等)或許還有數字—模擬轉換器(DAC)、PWM訊號或信
號通路上的其它類比電路。

另外還假設,將要測量的是一個緩慢變化的、直流型的雙極性輸入訊號,具有1kHz的頻寬,工作溫度範圍為0℃到+70℃,並在0℃至+50℃範圍內保證效能.
直流效能
微分非線性
雖 說微分非線性不被作為一項關鍵性的ADC引數,微分非線性(DNL)誤差還是進入視野的第一項指標。DNL揭示了一個輸出碼與其相鄰碼之間的間隔。這個間 隔通過測量輸入電壓的幅度變化,然後轉換為以LSB(最小有效位)為單位後得到。INL是DNL的積分,這就是為什麼DNL沒有被我們看作關鍵引數的原因 所在。一個性能優良的ADC常常聲稱“無丟碼”。這就是說當輸入電壓掃過輸入範圍時,所有輸出碼組合都會依次出現在轉換器輸出端。當DNL誤差小於引 LSB時就能夠保證沒有丟碼。DNL為-0.5LSB時,器件保證沒有丟碼。若該誤差值等於-1LSB,器件就不能保證沒有丟碼(10碼丟失)。然而,當 最大DNL誤差值為±1LSB時,大多數ADC都會特別宣告是否有丟碼。由於製造時的測試界限實際上要比規格書中所規定的更為嚴格,因此這種情況下通常都能夠保證沒有丟碼。對於一個大於-1LSB的DNL,器件就會有丟碼。隨著DNL誤差值的偏移(也就是說-1LSB,+2LSB),ADC轉換函式會發生 變化。偏移了的DNL值理論上仍然可以沒有丟碼。關鍵是要以-1LSB作為底限。DNL在一個方向上進行測量,通常是沿著轉換函式向上走。將造成碼〔N〕 跳變所需的輸入電壓值和碼〔N+1〕時相比較。如果相差為1LSB,DNL誤差就為零。如果大於1LSB,則DNL誤差為正值;如果小於1LSB,DNL 誤差則為負值。有丟碼並非一定是壞事。如果你只需要13位解析度,同時你有兩種選擇,一個是DNL指標≤±4LSB的16位ADC(相當於無丟碼的14 位),價格為5美元,另一個是DNL≤±1LSB的16位ADC,價格為15美元,這時候,購買一個低等級的ADC將大幅度地節省你的元件成本,同時又滿 足了你的系統要求。

積分非線性
積分非線性(1NL)定義為DNL誤差的積分。INL誤差告訴設計者轉換器測量結果 距離理想轉換函式值有多遠。舉例,對於一個12位系統來講,+2LSB的INL誤差相當於2/4096或0.05%的最大非線性誤差(這已佔去ADC誤差預算的2/3)。因此,有必要選用一個1LSB(或更好)的器件。對於+ILSB的INL誤差,等效精度為0.0244%,佔ADC誤差預算的 32.5%。對於0.5LSB的指標,精度為0.012%,僅佔ADC誤差預算的16%(0.0125%/0.075%)。需要注意的是,無論是1NL或 DNL帶來的誤差,都不太容易校準或修正。

失調和增益誤差
失調和增益誤差很容易利用微控制器(μC)或數字訊號處理器(DSP)修正過來。就失調誤差來講,如果轉換器允許雙極性輸入訊號的話,操作將非常簡單。對於雙極性系統,失調誤差只是平移了轉換函式,但沒有減少可用編碼的數量(圖1)。
有 兩套方法可以使雙極性誤差歸零。其一,可以將轉換函式的x或y軸平移,使負滿度點與單極性系統的零點相對準(圖2a)。利用這種方法,可以簡單地消除失調 誤差,然後,通過圍繞“新”零點旋轉轉換函式可以對增益誤差進行調節。第二種技術採用了一種迭代法。首先給ADC輸入施加一個0V電壓並執行一次轉換;轉 換結果反映了雙極性零點失調誤差。然後,通過圍繞負滿度點旋轉轉換曲線實現增益調節(圖2b)。注意此時轉換函式已繞A點轉過一定角度,使零點偏離了期望的轉換函式。因此還需要進一步的失調誤差校正。單極性系統還要複雜一些。如果失調為正值,可採用和雙極性系統相似的處理方法。不同之處在於你將失去一部分 ADC量程。如果失調為負值,你將無法簡單地通過一次轉換測得失調誤差。因為在零點以下,轉換器只能顯示出零。這樣,對於一個負失調誤差的
轉換器,你必須緩慢地增加輸人電壓,以確定在什麼地方ADC結果出現首次跳變。同樣,你將失去一部分ADC量程。回到我們的舉例,兩種情況中的失調誤差可按下述方法獲得。
2.5V 基準時+8mV的失調誤差相當於12位ADC具有13LSB的誤差(8mV/[2.5V/4096])。雖然解析度仍是12位,但是你必須從每次轉換結果 中扣除13個碼以補償失調誤差。實際上,這時的可測量滿量程值就變為了2.5V(4083/4096)=2.492V·此範圍以上的任何值都會使ADC溢 出。ADC的動態範圍或者說輸入範圍減小了。這個問題在較高解析度的ADC中尤為顯著;在16位系統中,8mV對應於210 LSB(VREF=2.5V).如果失調為-8mV(假設為單極性輸入),接近於零的小訊號輸人將不會引起任何輸出變化,一直到模擬輸入增加到+8mV。這同樣造成了ADC動態範圍的減小。增益誤差定義為滿量程誤差減去失調誤差(圖3)。滿量程誤差在轉換函式曲線上最後一次ADC跳變處進行測量並和理想 ADC的轉換函式相比較。增益誤差可通過軟體用一個簡單的線性函式y=(m1/m2)(x)進行簡單的校正,其中的m1是理想轉換函式的斜率,m2是實際 測得的轉換函式的斜率(圖3)。
增益誤差指標中可能包含或不含ADC參考電壓對於誤差的貢獻。在電氣規範中,檢查一下增益誤差的測試條件,並決定採用內部或外部基準工作是非常重要的。一般情況下,當採用片內基準時增益誤差會比較大。如果增益誤差為零,在對滿量程模擬輸入作轉換時轉換結果應為全 1(圖4)(對於本例的12位系統則為3 FFh)。
由於我們的轉換器不理想,全1轉換結果可能會在施加的輸人電壓大於滿量程(負增益誤差)或小於滿量程(正增益誤差)時出現.有兩種辦法可以調整增益誤差,其一是調節參考電壓,以便在某特定參考電壓下得到滿量程輸出或者在軟體中採用一個線性校正曲線改變
ADC轉換函式的斜率(一階線性方程或查表法)。
和 失調誤差一樣,增益誤差也會降低動態範圍。舉例來說,如果滿量程輸人電壓時轉換得到的數碼輸出為4050而非理想的4096(12位轉換器),也就是所謂 的負增益誤差,在這種情況下,高階的46個碼將無法利用。類似地,如果滿量程數碼4096出現在輸入電壓低於滿量程時,ADC的動態範圍同樣被降低了(圖 4)。對於正的滿量程誤差,無法在轉換結果變為全1的點之外對轉換器進行校準。對付失調和增益誤差最簡單的辦法就是找一個誤差值足夠低的ADC,這樣你就不必再考慮校正了。找到一個失調和增益誤差小於4LSB的12位ADC並不困難。

其它誤差源
碼沿噪聲
碼沿 噪聲是在轉換函式中恰好發生編碼跳變時出現的噪聲。通常在規格書中對該項特性不作規定。甚至對於較高解析度的轉換器(16位以上),由於更小的LSB間隔,碼沿噪聲更為顯著,通常都對這項效能未作規定。很多時候,碼沿噪聲能有幾個LSB。轉換恰好位於程式碼邊緣的模擬輸入時,程式碼會在LSB位發生跳動。如 果出現明顯的碼沿噪聲,就應該對取樣進行平均,這樣可以有效地從轉換結果中去除這種噪聲。需要對多少個取樣取平均?如果碼沿噪聲為2/3 LSBRMS,這接近於4LSBp-p。那麼要將噪聲降低到1LSBp-p,則需要對16次取樣取平均(效能的改進正比於取樣數的均方根)。

基準
採用內部或外部基準的ADC的一個最大潛在誤差源是參考電壓。很多情況下,內置於晶片內部的基準通常都沒有足夠嚴格的規格。為了理解基準所帶來的誤差源,有必要特別關注一下三項指標:溫漂,電壓噪聲,和負載調整。
溫漂
溫 漂是規格書中最容易被忽視的一項指標。下面的舉例可以說明溫度漂移是如何影響ADC效能的。對於一個12位轉換器,要在整個擴充套件級溫度範圍(-40℃ 至+85℃)內保持精度,最大允許的溫漂為4ppm/℃。不幸的是,沒有任何一個ADC包含有這樣高效能的片內基準。如果我們放鬆要求,將溫度範圍限制於 10℃以內,那麼12位ADC的參考電壓最多允許25ppm/℃的溫度漂移,這對於片內基準來講仍然是相當嚴格的要求。即便進行多次樣機測試也不能發現這 種誤差的嚴重性,因為所採用的元件通常都來自於同一批次。這樣,測試結果不能反映規格書中的極端情況,這主要是由於製造工藝的變化而導致。
對有些 系統來講,參考電壓的精度不是一個大問題,因為溫度被保持於恆定,避免了溫度漂移問題。還有一些系統採用一種比例測量方式,用同一個訊號激勵感測器和作為參考電壓,可以消除基準引起的誤差。因為激勵源和基準同時漂移,漂移誤差相互抵消。在其它系統中,採用補償手段消除基準漂移通常也很有效。另外也有一些系 統並不關注絕對精度,而注重於相對精度。這樣的系統允許基準隨著時間緩慢漂移,同時又能夠提供期望的精度。

電壓噪聲
另 外一個重要指標是電壓噪聲。它通常規定為RMS值或峰-峰值。要估計它對於效能的影響,需要將RMS值轉換為峰-峰值。如果一個2.5V基準在輸出端具有 500μV,的峰-峰電壓噪聲(或83μV RMS),該噪聲會帶來0.02%的誤差,或將系統性能限制於僅12位,而且這還沒有考慮任何其它的轉換器誤差。
理想情況下,基準的噪聲應該遠低 於一個LSB,這樣才不至於限制ADC的效能發揮。帶有片內基準的ADC通常都不規定電壓噪聲,這樣就將確定誤差的任務留給了使用者。如果你的設計沒有達到 預期效能,而你又正在使用內建基準,可嘗試採用一個高效能的外部基準,這樣你就可以確定造成效能下降的真正元凶是否是內部基準。

負載調整
最後一項指標是基準的負載調整。用於ADC的電壓基準通常具有足夠的電流可用於驅動其它器件,因此有時也被其它IC使用。
其它元件的吸取電流會影響到電壓基準,也就是說隨著吸取電流的增大,參考電壓會跌落。如果使用基準的器件被間歇性地開啟和關閉,將會導致參考電壓隨之上升或下降。
如果一個2.5V基準的負載調整率指標為0.55μV/μA,那就意味著當有另外一個器件吸取800μA必電流時,參考電壓將會改變多達440μV,這將帶來0.0176%的誤差
(440gV/2.5V),或佔去現有誤差餘量的幾乎20%。

其它溫度效應
另 外還有兩項指標通常很少有人關注,那就是失調漂移和增益漂移。這兩項指標一般只給出典型數值,使用者只能自己判斷它是否足以滿足系統要求。失調和增益的漂移可採用多種不同方法加以補償。一個辦法是仔細測出失調和增益漂移的完整資料,並在儲存器中建立一個表格,然後隨著溫度的變化調節測量值。然而,這是一項繁 重的任務,因為每個ADC必須單獨補償,而且補償工序非常費時。第二個辦法是隻在溫度發生顯著變化時才執行校準。
對於那些只作一次性溫度校準的系統,需要重點留意一下漂移指標。如果已校準了初始失調但溫度又發生了改變,因漂移的關係又會引入新的誤差,這使校準的效果被減弱。
例如,假設在溫度X下進行了一次轉換。隨後的某個時間,溫度變化10℃又作了完全相同的另一次測量。兩次讀取的轉換結果會有差異,這會使使用者對系統的可重複性也就是可靠性產生懷疑。
有很多原因促使製造商沒有給出最大界限。其中之一便是成本的增加。漂移測試需要特殊的平臺,並且還要在測試流程中增加額外的工序(這將導致額外的製造成本),以確保所有器件不超出最大漂移界限。
增 益漂移的問題更多,尤其是對於那些採用內部基準的器件。這時候,基準的漂移可以一併包含於增益漂移引數中。當採用外部基準時,IC的增益漂移一般比較小, 比如0.8ppm/℃。這樣,±10℃的溫度變化將會造成±8ppm的漂移。舉例來講,12位效能等價於 244ppm(1/4096=0.0244%=244ppm)。因此,±8ppm的漂移所造成的誤差遠低於12位系統中的一個LSB。
交流特性
有 些ADC只在輸入訊號接近於直流時能很好地工作。另外一些則能很好地處理從直流到Nyquist(尼圭斯特)頻率的訊號。僅有DNL和INL符合系統要求 並不能說明轉換器能夠同樣合格地處理交流訊號。DNL和INL是在直流測試的。要掌握其交流效能就必須瞭解交流指標。在產品規格書中有電氣引數表和典型工作特性,從中可以找到有關交流效能的線索。需要考察的關鍵指標有訊號-噪聲比(SNR),訊號-噪聲加失真比(SINAD),總諧波失真(THD),以及無雜散動態範圍(SFDR)。首先我們來看一看SINAD或SNR。訊號-噪聲加失真比(SINAD)定義為輸入正弦波訊號的RMS(均方根)值與轉換器 噪聲的RMS(均方根)值(從直流到Nyquist頻率,包括諧波[總諧波波失真]成分)。諧波發生於輸人頻率的倍數位(圖
5)。
訊號-噪聲比(SNR)類似於SINAD,只是它不包含諧波成分。因此,SNR總是好於
SINAD。SINAD和SNR一般以dB為單位。量化過程會產生誤差,對於一個理想的ADC:
SINAD=[6.02(N)+1.76](dB) (2)
其中N是轉換器的位數。對於理想的12位轉換器,SINAD為74dB。這個方程可重寫為N的表示式,新的表示式揭示了能夠獲得的資訊的位數與RMS噪聲的函式關係:
N=(SINAD-1.76)/6.02 (3)
這個方程就是等效位數的定義,即ENOB。
SINAD和輸入頻率有關。隨著頻率向Nyquist(尼圭斯特)上限逼近,SINAD逐漸下降。
如果規格書中的指標是在相對於Nyquist頻率較低的頻率下測得,在接近 Nyquist頻率時效能有可能變得很差。在規格書中的典型工作特性中可以找到ENOB曲線,可以觀察到隨著頻率的增加ENOB下降,主要是由於隨著輸入頻率的增加總諧波失真(THD)逐漸變差。
例 如,如果在感興趣的頻率SINAD的最小值為68dB,那麼可獲得的ENOB值為11。也就是說,由於轉換器的噪聲和失真,丟失了1位資訊。這也意味著 12位轉換器最多隻能達到0.05%的精度。記住INL是一項直流指標;ENOB是一項有關轉換器對於交流訊號的非線性效能指標SNR是不考慮失真成分- 所噪聲比.SNR反映了轉換器的噪聲背景。隨著輸入頻率的增加SNR可能會急劇下降,這說明該轉換器不是為該頻率的應用而設計。改善SNR的一個辦法是過取樣,這種方法提供了一定的處理增益。過取樣以遠高於訊號頻率的速度
進行取樣,以此來降低轉換器的噪聲背景。這種方法將噪聲譜擴充套件到更寬的頻域內,這樣就有效降低了一定頻段內的噪聲。兩倍率的過取樣可將噪聲背景降低3dB。
SFDR(無 寄生動態響應/範圍)定義為FFT(快速付立葉變換)圖5中,頻域內輸入正弦波的RMS(均方根)值與最高的雜散訊號的RMS(均方根)值之比。一般以 dB為單位。對於某些要求ADC動態範圍儘可能大的通訊應用,SFDR尤為重要。雜散訊號妨礙了ADC對於小輸人訊號的轉換,因為失真訊號可能會比有用信 號大很多。這就限制了ADC的動態範圍。頻域內出現一個大的雜散訊號可能對SNR不會有明顯影響,但會顯著影響SFDR。
小結回到我們一開始的 ADC舉例,假設我們將要測量直流型的訊號,並且要求ADC可接受雙極性輸入訊號。我們選擇B檔的MAXl241,它具有1LSB的DNL誤差,1LSB 的INL誤差(0.0244%),3LSB的失調誤差(3/4096=0.0732%),以及4LSB的增益誤差(0.0977%)。所有誤差相加,我們 得到總誤差為0.1953%。我們可以校正失調和增益誤差,使總誤差下降到0.0244%。只要參考電壓誤差低於0.075%- 0.024%=0051%,就不會突破我們的誤差預算。5ppm/℃的溫漂係數在50℃的溫度範圍內會產生0.025%的漂移誤差,這樣還剩下 0.026%的誤差餘量。要得到12位的效能,我們需要選用一個電壓噪聲指標遠低於1LSB的電壓基準(這相當於2.5V/4096=610μVp-p或 102μVRMS)。溫度係數5ppm/℃,寬頻電壓噪聲30μVRMS的MAX6166是一個很好的選擇。它還具有充足的供出及吸納電流的能
力,足以驅動ADC(和其它電路)。30μV噪聲指標等價於180gVp-p,只有12位級別下一個LSB的三分之一,11位級別下(我們系統的實際要求)一個LSB的六分之一。
再檢查一下MAXl241的增益漂移,資料顯示該項指標為0.25ppm/℃,50℃溫度範圍內為12.5ppm,能夠很好地滿足我們的設計要求。
現 在,我們就得到了一個可行的方案,再也不會出現由於對規格的考慮不周而造成的效能折扣。在本例中我們沒有涉及交流效能。然而,正確理解ADC的技術指標, 以及它們如何對轉換器的效能產生作用,無疑將使你具備足夠的知識,能夠從眾多產品中選擇出滿足你效能要求的適當ADC。