基于過零點檢測的高分辨率DAC靜態(tài)測試方法研究
摘要:受到現(xiàn)有測試設備的限制,高精度的D/A轉換器(數(shù)模轉換器)測試一直是混合信號測試中的難點,本文探討了高精度數(shù)模轉換器(DA C)測試的一種新方法。該方法通過在微弱被測電平上疊加參考正弦波,測試疊加后波形的過零點在時域上的分布情況,以了解DAC的靜態(tài)特性參數(shù)。該方法的優(yōu)點在于充分利用了現(xiàn)有ADC(模數(shù)轉換器)的速度優(yōu)勢,原理簡單,且易于實現(xiàn)。
關鍵詞:數(shù)模轉換器;積分非線性;差分非線性;過零點
0 引言
隨著科技的日益發(fā)展,DAC轉換精度越來越高,為了測試高精度DAC的性能,需要輔以分辨率更高的數(shù)字化ADC。然而,高精度的顯示設備在一般實驗條件下很難獲得。因此,如何利用低分辨率的ADC有效評估高精度的DAC,成為測試行業(yè)亟待解決的問題。一些文獻中提出過采樣技術、抖動技術等方法,探討減小ADC的量化誤差來提高ADC的分辨率進而測試高精度DAC,但是這些方法都存在著一定的局限性。比如,當微弱信號的幅值低于最小ADC步長即LSB時,過采樣技術無效;采用抖動技術也需要外加模擬電路,增加了測試成本和復雜程度。
D.L.Carni等在文獻中提出了一個切實可行的方案,采用一個“純”的正弦波作為參考信號,將其與待測DAC的輸出電平疊加,通過分析結果信號在時域上的過零點分布情況,得出靜態(tài)參數(shù)DNL(差分非線性)、INL(積分非線性)的值。這個方法從一定程度上解決了低精度測試高精度的問題,但是不足之處在于該方法的時間成本較高,對于很高精度的DAC,測試耗費的時間可能很長。
本文在過零檢測的基礎上提出了一種改進的測試方法,得到n位DAC的靜態(tài)參數(shù)INL、DNL值。這種方法通過改進參考信號來比較DAC的輸出和參考信號的輸出,不但使低精度ADC可以有效測試高精度DAC,更重要的是縮短了測試時間,降低了測試成本。
1 基于過零檢測的DAC靜態(tài)測試
1.1 低精度ADC不能直接用來測試高精度DAC的原因
對于DAC的靜態(tài)測試,通常測試DNL、INL這兩個參數(shù)值,方法是輸入代碼k,k=0,1,2…2n-1。得到DAC輸出的電平值Vk。計算DNL、INL的公式如下:
假如用精度低于DAC的ADC對其直接測試,如圖1所示,由于低精度ADC引入的量化誤差q(k),我們無法分辨輸入代碼k和k-1對應的確切電壓值。這種情況下的靜態(tài)參數(shù)測試就失去了意義。
1.2 過零檢測
過零點檢測法是一種經(jīng)典的調制域分析方法,它通過記錄過零點的時間得到過零點的時間間隔,可以用于識別精度低于ADC步長的微弱信號。圖2簡要地描述了測試系統(tǒng)框圖:待測DAC輸出的電壓Vk,校準儀提供一個標準的參考正弦波f(t)=Asin(ωt+φ),將直流電壓Vk加在參考正弦波上,將結果信號輸入高速ADC。即:
式(4)在時域圖上的表現(xiàn)如圖3所示。
圖中,虛線表示標準參考信號f(t)=Asin(ωt+φ),實線為疊加之后的信號,可以看出,tk1、tk2、tk3時刻為過零點,Vk的大小由△tk決定?!鱰k的值可以通過測量過零點tk1、tk2、tk3得到,Vk的表達式可以推導如下:
其中,Nc為在時間間隔△tk內的采樣點數(shù),fs為設置的ADC的采樣率。
1.3 測試方法的弊端
利用以上方法,可以得到DAC輸出電壓的值Vk,進而求出靜態(tài)參數(shù)DNL、INL的大小。需要關注的是:為了得到過零點序列,參考正弦波的幅值A必須大于DAC的滿量程電壓范圍;同樣由式(5)得到ADC的最低采樣率:
△V幅值分辨率,通過式(6)可以看出:為了確保測試的準確性,△V應該盡可能地小,并且在其他條件不變的情況下Nc的值越大越好。因為這種方法的本質在于將幅度上的高精度測試轉移到時間上來。因此采樣率越高,測量結果越準確,但是采樣率與測試設備息息相關,不可能無限制提高。這種情況下,如果沒有設備能夠提供足夠高的采樣率,那么只能降低信號頻率f。但是降低信號頻率f將帶來另一個問題,就是測試時間的成倍增加。
在文獻中作者曾對16位且幅值為±10V的DAC進行了實測,采用泰克TDS7404B數(shù)字示波器作為采集信號用的ADC。其主要參數(shù)為:8位分辨率、20GS/s的最高采樣率。設置△V=LSB/40,Nc=5,正弦波頻率f=100Hz,幅值A=11V。通過式(6)得到的采樣率高達5GS/s。每次測10個Vk對其做平均,這樣每測一個Vk花費的時間是0.1s,即便擁有這樣的超高采樣率的設備,完整地測一個16位的DAC所需要的時間也至少需要兩個小時。
2 提出的方法
從降低測試時間的角度考慮:首先,從圖3中可以看到,利用正弦波作為參考波形至少需要3個過零點才能得到DAC的輸出電壓值,其次,為了降低檢測每個過零點所需要的時間,最直接的方法就是提高參考信號的頻率f,但是由于設備條件的限制,采樣率fs不能再提高。從式(6)中可以看出,Nc、△V都是約定值,不可變動,唯一能改變的就是參考正弦波幅值A,但A的最小值也受到限制,因為一旦A小于被測DAC的量程范圍,DAC中大于A的輸出電壓將無法測得。實際上,A的限制是因為我們需要測試每一個代碼對應的輸出電壓值。
但事實上,我們并不需要測試每一個Vk。對靜態(tài)測試而言,主要是了解被測DAC的線性度,如圖4所示。影響DNL的主要是相鄰兩個輸入代碼的輸出電平幅值之差與理想步長之間的偏差,即Vk+1-Vk與LSB之差。將DNL、INL的計算公式適當變化如下:
由圖4和式(7)、(9)可以看出,只要知道輸入代碼的實際電壓與理想電壓的差值,一樣能計算出DAC的靜態(tài)參數(shù)。
基于以上認識,設計了如下的測試系統(tǒng)架構模型。
設參考鋸齒波的信號f(x)*δT(x),其中:
參考斜坡的信號可以表示為:,[]為取整函數(shù)。
令DUT產(chǎn)生的信號為g'(x),經(jīng)過疊加的均勻抖動上升的鋸齒信號為f(x)*δT(x)+g(x),ADC采集的信號就是f(x)*δT(x)+g(x)-g'(x)。顯然,g(x)-g'(x)的值代表了△Vk的大小,而△Vk很小,低精度的ADC是無法將其反映出來的。通過借助參考鋸齒波形在時域上的過零點分布卻能夠表達出來。
如果被測DAC表現(xiàn)出完美的靜態(tài)特性,那么ADC會恢復出參考鋸齒波信號,如果一旦被測DAC的輸出電壓Vk與理想值存在偏差(如圖4),則會在時域圖上明顯地反映出來,如圖6所示。
圖中△Vk代表了在輸入代碼為k時,實際測量電平與這一點的理想電平的差值,虛線代表參考鋸齒波信號,實線表示被測DAC與參考信號的差分信號。用一個雙通道的ADC同時對兩種信號進行采集,通過檢測過零點,得到△tk、△tk+1的值,不難看出:
N代表鋸齒波一個周期內的采樣點,A表示鋸齒波的幅值,然后有:
結果證明,在上述方法中,知道鋸齒波的幅值以及△tk內的采樣點數(shù)Nc,便可得到△tk的值,在這種方法中,并不需要知道每一個Vk的值,也可以輕松地獲得DNL和INL的值。
3 仿真實驗
為了驗證此方法的可靠性,本文采用Labview虛擬儀器進行仿真測試。仿真中采用8位DAC產(chǎn)生標準的斜坡波形和鋸齒波形,將兩種信號的加法形式作為參考波形,設置隨機白噪聲點逐點加到標準斜坡波形上,使得LSB的范圍限制為,以便用程序計算出實際仿真的DNL和INL的大小。程序的最終目的在于,將提出方法測試所得的結果和真實計算結果的偏差做一個比較。
通過編寫測試程序,可以得到以下規(guī)律:
(1)ADC的采樣率越高,實際測試得到的DNL和INL會更加接近真實的計算結果;
(2)參考鋸齒波的幅值越小,測試的結果會越精確;
(3)ADC位數(shù)與測試精度幾乎沒有關系。
需要注意的是,增加采樣點數(shù)會使測試時間增加,因此ADC的采樣率不可以無限制提高,但是可以根據(jù)測試的實際情況對其作最佳評估。關于幅值的設定,其最低值必須使得每個差分鋸齒波都有過零點。然后設置程序來比較標準鋸齒波的過零點和差分鋸齒波的過零點數(shù),當兩者不同時,程序中的指示燈報警。
在仿真測試中,設置DAC范圍為10V,幅值為80mV;產(chǎn)生的斜坡中,每個輸入代碼重復100次,設置采樣率為1k,采集256000個點。設置ADC的分辨率為2位。得到結果如圖6所示。
通過比較圖6中兩個波形的過零點之間的采樣數(shù),比較最終得到的INL值與計算所得INL值:圖7 a.實際的INL值,b.用本方法測得的INL值。
4 結束語
本文對高精度DAC的動態(tài)測試提出了新的評估方法,這個方法通過比較參考鋸齒波與實際得到的鋸齒波在時域上的過零點,精確地獲得了DAC的靜態(tài)參數(shù)INT、DNL的值。并且在Labview仿真測試系統(tǒng)中進行了驗證,結果證明了此方法的有效性和實用性。