用SPICE仿真高精度數(shù)模轉(zhuǎn)換器
在這篇文章中,我們將重點(diǎn)講述系統(tǒng)性能預(yù)測及如何避免設(shè)計失敗??闪⒓从橙胄【幠X海中能避免這些失敗的術(shù)語就是“仿真”。當(dāng)前,除了數(shù)模轉(zhuǎn)換器(DAC)之外,用戶可以在SPICE仿真工具中建模并仿真模擬信號鏈組件中的絕大多數(shù)組件。借助于針對高精度DAC的SPICE模型,在實(shí)現(xiàn)實(shí)際硬件前,電路板工程師不再需要完全依賴于手算結(jié)果。
我們可提供兩款不同的SPICE模型。其中的一個使用簡單的n位寬并行接口,如圖1中所示,此模型與所有TINA-TI版本器件兼容。而另外一款模型使用一個串行SPI接口,如圖2中所示,他與工業(yè)用TINA-TI器件兼容。兩款不同的模型包括針對DAC和輸出放大器的重要直流特性,諸如偏移誤差、增益誤差、輸出電壓到電源軌擺幅、溫度漂移和靜態(tài)電流。其他交流參數(shù)特性包括轉(zhuǎn)換速率、穩(wěn)定時間、加電毛刺脈沖和穩(wěn)定性。SPI接口模型還完全復(fù)制了數(shù)字接口,并且可被用來仿真到DAC輸入的數(shù)字信號鏈。
圖1–DAC8411模型(并行)
圖2–DAC8411模型(串行)
預(yù)測和推斷DAC或運(yùn)算放大器在驅(qū)動特定負(fù)載時的運(yùn)行方式是所有設(shè)計的一個重要方面。我們來看一個示例,在這個示例中我們用DAC8411SPICE模型來模擬穩(wěn)定時間。
圖3左側(cè)顯示DAC輸出的瞬態(tài)仿真,代碼步長從?滿量程到?滿量程。在這個仿真中,DAC正在驅(qū)動一個與200pF電容器并聯(lián)的2kΩ電阻負(fù)載-同樣的負(fù)載被用來指定數(shù)據(jù)表中的穩(wěn)定時間。SPICE模型準(zhǔn)確地復(fù)制了圖3右側(cè)顯示的數(shù)據(jù)表中的典型特性曲線的穩(wěn)定時間。
圖3–DAC8411瞬態(tài)仿真
但是,如果你驅(qū)動的負(fù)載與數(shù)據(jù)表中指定的負(fù)載不同的話該怎么辦呢?圖4左側(cè)顯示了一個仿真。在這個仿真中,DAC輸出上被施加了一個更大的值為20nF電容負(fù)載。在這個情況下,瞬態(tài)仿真顯示出在DAC輸出上有相當(dāng)大的振鈴,或者說是振蕩,其原因是輸出放大器在其上有較大電容負(fù)載時所表現(xiàn)出的不穩(wěn)定性。所提供的完整SPICE模型有助于較早地捕捉到此類問題,這樣的話,在首次原型機(jī)設(shè)計時就可以將補(bǔ)償組件包含在內(nèi)。
圖4–DAC841120nF電容負(fù)載時的瞬態(tài)仿真
總的來說,針對高精度DAC的最新SPICE模型主要是為工程師和設(shè)計人員提供一個獨(dú)特的方法來仿真整個模擬信號鏈,盡早發(fā)現(xiàn)問題并且縮短上市時間。下面的兩個TI高精度設(shè)計可以使你動態(tài)地了解全新的DACSPICE模型:
1、TIPD158-低成本回路供電4-20mA發(fā)射器電磁兼容性/電磁干擾(EMC/EMI)性能已經(jīng)測試
2、TIPD160-基于數(shù)字可調(diào)倍乘數(shù)模轉(zhuǎn)換器(MDAC)的狀態(tài)可變濾波器
高精度數(shù)模轉(zhuǎn)換器(DAC)測試靜態(tài)測試方法研究
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對應(yīng)的確切電壓值。這種情況下的靜態(tài)參數(shù)測試就失去了意義。
1.2過零檢測
過零點(diǎn)檢測法是一種經(jīng)典的調(diào)制域分析方法,它通過記錄過零點(diǎn)的時間得到過零點(diǎn)的時間間隔,可以用于識別精度低于ADC步長的微弱信號。圖2簡要地描述了測試系統(tǒng)框圖:待測DAC輸出的電壓Vk,校準(zhǔn)儀提供一個標(biāo)準(zhǔn)的參考正弦波f(t)=Asin(ωt+φ),將直流電壓Vk加在參考正弦波上,將結(jié)果信號輸入高速ADC。即:
式(4)在時域圖上的表現(xiàn)如圖3所示。
圖中,虛線表示標(biāo)準(zhǔn)參考信號f(t)=Asin(ωt+φ),實(shí)線為疊加之后的信號,可以看出,tk1、tk2、tk3時刻為過零點(diǎn),Vk的大小由△tk決定。△tk的值可以通過測量過零點(diǎn)tk1、tk2、tk3得到,Vk的表達(dá)式可以推導(dǎo)如下:
其中,Nc為在時間間隔△tk內(nèi)的采樣點(diǎn)數(shù),fs為設(shè)置的ADC的采樣率。
1.3測試方法的弊端
利用以上方法,可以得到DAC輸出電壓的值Vk,進(jìn)而求出靜態(tài)參數(shù)DNL、INL的大小。需要關(guān)注的是:為了得到過零點(diǎn)序列,參考正弦波的幅值A(chǔ)必須大于DAC的滿量程電壓范圍;同樣由式(5)得到ADC的最低采樣率:
△V幅值分辨率,通過式(6)可以看出:為了確保測試的準(zhǔn)確性,△V應(yīng)該盡可能地小,并且在其他條件不變的情況下Nc的值越大越好。因為這種方法的本質(zhì)在于將幅度上的高精度測試轉(zhuǎn)移到時間上來。因此采樣率越高,測量結(jié)果越準(zhǔn)確,但是采樣率與測試設(shè)備息息相關(guān),不可能無限制提高。這種情況下,如果沒有設(shè)備能夠提供足夠高的采樣率,那么只能降低信號頻率f。但是降低信號頻率f將帶來另一個問題,就是測試時間的成倍增加。
在文獻(xiàn)中作者曾對16位且幅值為±10V的DAC進(jìn)行了實(shí)測,采用泰克TDS7404B數(shù)字示波器作為采集信號用的ADC。其主要參數(shù)為:8位分辨率、20GS/s的最高采樣率。設(shè)置△V=LSB/40,Nc=5,正弦波頻率f=100Hz,幅值A(chǔ)=11V。通過式(6)得到的采樣率高達(dá)5GS/s。每次測10個Vk對其做平均,這樣每測一個Vk花費(fèi)的時間是0.1s,即便擁有這樣的超高采樣率的設(shè)備,完整地測一個16位的DAC所需要的時間也至少需要兩個小時。
2、提出的方法
從降低測試時間的角度考慮:首先,從圖3中可以看到,利用正弦波作為參考波形至少需要3個過零點(diǎn)才能得到DAC的輸出電壓值,其次,為了降低檢測每個過零點(diǎn)所需要的時間,最直接的方法就是提高參考信號的頻率f,但是由于設(shè)備條件的限制,采樣率fs不能再提高。從式(6)中可以看出,Nc、△V都是約定值,不可變動,唯一能改變的就是參考正弦波幅值A(chǔ),但A的最小值也受到限制,因為一旦A小于被測DAC的量程范圍,DAC中大于A的輸出電壓將無法測得。實(shí)際上,A的限制是因為我們需要測試每一個代碼對應(yīng)的輸出電壓值。
但事實(shí)上,我們并不需要測試每一個Vk。對靜態(tài)測試而言,主要是了解被測DAC的線性度,如圖4所示。影響DNL的主要是相鄰兩個輸入代碼的輸出電平幅值之差與理想步長之間的偏差,即Vk+1-Vk與LSB之差。將DNL、INL的計算公式適當(dāng)變化如下:
由圖4和式(7)、(9)可以看出,只要知道輸入代碼的實(shí)際電壓與理想電壓的差值,一樣能計算出DAC的靜態(tài)參數(shù)。
基于以上認(rèn)識,設(shè)計了如下的測試系統(tǒng)架構(gòu)模型。
設(shè)參考鋸齒波的信號,其中:
參考斜坡的信號可以表示為:, []為取整函數(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是無法將其反映出來的。通過借助參考鋸齒波形在時域上的過零點(diǎn)分布卻能夠表達(dá)出來。
如果被測DAC表現(xiàn)出完美的靜態(tài)特性,那么ADC會恢復(fù)出參考鋸齒波信號,如果一旦被測DAC的輸出電壓Vk與理想值存在偏差(如圖4),則會在時域圖上明顯地反映出來,如圖6所示。
圖中△Vk代表了在輸入代碼為k時,實(shí)際測量電平與這一點(diǎn)的理想電平的差值,虛線代表參考鋸齒波信號,實(shí)線表示被測DAC與參考信號的差分信號。用一個雙通道的ADC同時對兩種信號進(jìn)行采集,通過檢測過零點(diǎn),得到△tk、△tk+1的值,不難看出:
N代表鋸齒波一個周期內(nèi)的采樣點(diǎn),A表示鋸齒波的幅值,然后有:
結(jié)果證明,在上述方法中,知道鋸齒波的幅值以及△tk內(nèi)的采樣點(diǎn)數(shù)Nc,便可得到△tk的值,在這種方法中,并不需要知道每一個Vk的值,也可以輕松地獲得DNL和INL的值。
3、仿真實(shí)驗
為了驗證此方法的可靠性,本文采用Labview虛擬儀器進(jìn)行仿真測試。仿真中采用8位DAC產(chǎn)生標(biāo)準(zhǔn)的斜坡波形和鋸齒波形,將兩種信號的加法形式作為參考波形,設(shè)置隨機(jī)白噪聲點(diǎn)逐點(diǎn)加到標(biāo)準(zhǔn)斜坡波形上,使得LSB的范圍限制為,以便用程序計算出實(shí)際仿真的DNL和INL的大小。程序的最終目的在于,將提出方法測試所得的結(jié)果和真實(shí)計算結(jié)果的偏差做一個比較。
通過編寫測試程序,可以得到以下規(guī)律:
(1)ADC的采樣率越高,實(shí)際測試得到的DNL和INL會更加接近真實(shí)的計算結(jié)果;
(2)參考鋸齒波的幅值越小,測試的結(jié)果會越精確;
(3)ADC位數(shù)與測試精度幾乎沒有關(guān)系。
需要注意的是,增加采樣點(diǎn)數(shù)會使測試時間增加,因此ADC的采樣率不可以無限制提高,但是可以根據(jù)測試的實(shí)際情況對其作最佳評估。關(guān)于幅值的設(shè)定,其最低值必須使得每個差分鋸齒波都有過零點(diǎn)。然后設(shè)置程序來比較標(biāo)準(zhǔn)鋸齒波的過零點(diǎn)和差分鋸齒波的過零點(diǎn)數(shù),當(dāng)兩者不同時,程序中的指示燈報警。
在仿真測試中,設(shè)置DAC范圍為10V,幅值為80mV;產(chǎn)生的斜坡中,每個輸入代碼重復(fù)100次,設(shè)置采樣率為1k,采集256000個點(diǎn)。設(shè)置ADC的分辨率為2位。得到結(jié)果如圖6所示。
通過比較圖6中兩個波形的過零點(diǎn)之間的采樣數(shù),比較最終得到的INL值與計算所得INL值:圖7a.實(shí)際的INL值,b.用本方法測得的INL值。
4、結(jié)束語
本文對高精度DAC的動態(tài)測試提出了新的評估方法,這個方法通過比較參考鋸齒波與實(shí)際得到的鋸齒波在時域上的過零點(diǎn),精確地獲得了DAC的靜態(tài)參數(shù)INT、DNL的值。并且在Labview仿真測試系統(tǒng)中進(jìn)行了驗證,結(jié)果證明了此方法的有效性和實(shí)用性。
-
SPICE
+關(guān)注
關(guān)注
6文章
182瀏覽量
42563 -
數(shù)模轉(zhuǎn)換器
+關(guān)注
關(guān)注
14文章
1011瀏覽量
83166 -
DAC8411
+關(guān)注
關(guān)注
1文章
4瀏覽量
8750
發(fā)布評論請先 登錄
相關(guān)推薦
評論