虛擬儀器的高精度波形發(fā)生器
摘要:一種用于虛擬儀器的高精度數(shù)字式的波形發(fā)生器。采用了折線近似逼近方法和三角分解實現(xiàn)方法,給出了硬件電路結(jié)構(gòu)。
本文引用地址:http://www.ex-cimer.com/article/255626.htm關(guān)鍵詞:虛擬儀器 波形發(fā)生器 函數(shù)發(fā)生器 折線近似 三角分解 乘法DAC
隨著計算機軟硬件技術(shù)的迅速發(fā)展,20世紀(jì)90年代以來出現(xiàn)的虛擬儀器技術(shù)正日益成為現(xiàn)代電子測試儀器的主流?;赑C總線的虛擬儀器的出現(xiàn),使得使用者可以按自己的需要設(shè)計和構(gòu)建各種測試分析儀器和系統(tǒng)?,F(xiàn)代電子測試儀器進(jìn)入了使用者也能設(shè)計、開發(fā)和構(gòu)建的個人儀器時代。
虛擬儀器的通用硬件模塊主要有:高速數(shù)據(jù)采集卡、信號發(fā)生卡和邏輯分析采集卡等。本文主要討論虛擬儀器信號發(fā)生卡中(任意)波形產(chǎn)生的技術(shù)。
采用數(shù)字方法或計算機技術(shù)逼近任意波形的原理如下:DAC將數(shù)據(jù)發(fā)生器送出的數(shù)據(jù)轉(zhuǎn)換為模擬信號(電池或電壓),掃描頻率發(fā)生器控制數(shù)據(jù)發(fā)生器送出數(shù)據(jù)的步長。數(shù)據(jù)發(fā)生器大致分為兩類:存儲式和實時運算式。存儲式是將預(yù)先計算的波形采樣數(shù)據(jù)放在存儲器中,這種方式適用于周期性的或者預(yù)定的波形發(fā)生,可以達(dá)到很高的重復(fù)頻率。實時運算式則由計算機或微處理器實時計算波形采樣數(shù)據(jù),這種方式適用于非周期性的或者無法預(yù)定的波形發(fā)生。掃描頻率發(fā)生器通常用數(shù)字鎖相環(huán)或者數(shù)字頻率合成器構(gòu)成。
所產(chǎn)生的模擬波形的失真度主要取決于逼近波形的方法、數(shù)據(jù)點步長(掃描頻率、采樣周期或數(shù)據(jù)點密度)、數(shù)據(jù)的分辨率(DAC的分辨率)。
改善產(chǎn)生波形的失真度的一個途徑是采用高階的波形逼近方法。本文主要介紹采用折線近似逼近任意波形的方法(一階波形逼近方法)及其實現(xiàn)。
1 折線近似逼近任意波形方法的原理
連續(xù)的時間函數(shù)f(t)可以用函數(shù)空間的基函數(shù)的線性組合逼近:
函數(shù)空間的基函數(shù)選為自然基組{1,t,t 2,…},則有:
采用計算機技術(shù)實現(xiàn)連續(xù)時間函數(shù)f(t)的逼近時,采用等間隔T(等采樣周期)給出數(shù)據(jù)點的方法,即:
實現(xiàn)時,在(3)式中只能取有限項來逼近。實際上,階梯波逼近方法只取了零次項,即:
fo(t)→f(t),f0(t)=f(k),kT≤t(k+1)T (4)
近線近似逼近方法取了零次項和一次項,即:
f1(t)→f1(t),f1=f(k)+[f(k+1)-f(k)/T](t-kT),
kT≤t(k+1)T (5)
因此階梯波逼近方法可以稱為零階逼近方法,折線近似逼近方法可以和為一階逼近方法。當(dāng)然還可以構(gòu)造二階、三階逼近方法,達(dá)到更高的精度和失真度。但是高階逼近方法需要更復(fù)雜的電路結(jié)構(gòu),實現(xiàn)起來也更困難。
從原理從,一階逼近方法比零階逼近方法有更好的精度和失真度,如圖2所示。顯然,用折線f1(1)逼近所需波形f(t)比用階梯波f0(t)逼近所需波形有更好的失真度。但折線f1(t)不能直接實現(xiàn),常用的方法是分解為矩形和斜坡(對應(yīng)(5)式中的零次項和一次項)f10(t)和f11(t),分別由階梯波發(fā)生器和鋸齒波發(fā)生器產(chǎn)生,再合成為折線逼近波形f1(t)。這種方法在每一時鐘分點(采樣點)需要兩個數(shù)據(jù),實際電路中容易在采樣點出現(xiàn)波形銜接間斷的現(xiàn)象。
曾經(jīng)提出過一種如圖3所示的鋸齒分解方法來實現(xiàn)折線逼近波形,將每一采樣周期的波形分解為兩個直角三角形(鋸齒波),分別由兩個齒波發(fā)生器產(chǎn)生再合成為折線逼近波形。由于需要其中一個鋸齒波發(fā)生器產(chǎn)生倒鋸齒波,涉及到積分器的初值問題,電路實現(xiàn)存在困難。這種方法至今未見實際應(yīng)用。
本文提出一種新的三角分解和實現(xiàn)方法來實現(xiàn)任意波形的折線近似逼近。該方法簡述如下:首先用等距分點的折線逼近所需波形,將每一采樣周期內(nèi)的梯形分解為兩個三解形;然后用兩個峰值分別為所需波形奇數(shù)分點值和偶數(shù)分點值的三角波f11(t)和f12(t)疊加形成折線逼近波形f1(t)。兩個三角波分別由數(shù)字式三角波發(fā)生器產(chǎn)生。由于在每一時間分點上只需輸入一個新數(shù)據(jù),因此該方法即可用于存儲式數(shù)字波形發(fā)生器又可用于實時運算式數(shù)字式波形發(fā)生器。由圖4可見該方法的正確性,本文不再作繁瑣的數(shù)字推導(dǎo)和證明了。
該方法具有以下明顯的優(yōu)點:
(1)數(shù)據(jù)量小,每一時間分點只需一個數(shù)據(jù)。矩形一斜坡法則需要兩個數(shù)據(jù)。
(2)數(shù)字噪聲小,一般無需后接濾波器。
2 折線近似逼近任意波形的實現(xiàn)
本文實現(xiàn)折線近似逼近的波形發(fā)生器電路結(jié)構(gòu)如圖5所示。圖5中DAC1、OP1、CMP1與CMP2、RS觸發(fā)器、模擬開關(guān)MS1構(gòu)成一個可編程重復(fù)頻率的等幅三角波發(fā)生器,所產(chǎn)生的等幅三角波(幅度為VREF)與經(jīng)倒相器OP2產(chǎn)生的倒相等幅三角波分別供給DAC3和DAC2作為參考電壓。波形發(fā)生器的采樣頻率是等幅三角波重復(fù)頻率的兩倍,DAC1的編程數(shù)據(jù)就是波形發(fā)生器的采樣頻率數(shù)據(jù),RS觸發(fā)器產(chǎn)生的同頻率方波供給時序邏輯控制單元作為參考信號以產(chǎn)生波形發(fā)生器所需要的各個控制脈沖。乘法DAC3和DAC2(Multiplying DAC)分別產(chǎn)生前述的奇數(shù)分點值三角波和偶數(shù)分點值三角波,輸出三角波的幅值由其編程數(shù)據(jù)決定,它們分別在奇數(shù)采樣點和偶數(shù)采樣點更新編程數(shù)據(jù)。兩三角波經(jīng)加法器OP3疊加后形成所需波形。輸出波形的幅度最終由后接數(shù)字編程增益放大器(DPGA)(圖中未畫出)的編程數(shù)據(jù)決定。
圖5中DAC3和DAC2采用兩級數(shù)據(jù)鎖存以減小采樣時刻數(shù)據(jù)轉(zhuǎn)換所產(chǎn)生的數(shù)字噪聲。
波形發(fā)生器的實現(xiàn)應(yīng)當(dāng)注意一個重要問題:時間比例尺設(shè)置和幅度比例尺設(shè)置的獨立性和分離性,即二者的設(shè)置(或編程)應(yīng)當(dāng)不相關(guān)聯(lián)。階梯波逼近方法中不存在這個問題,而在折線近似逼近方法中,由于產(chǎn)生波形在兩個采樣數(shù)據(jù)點間的幅度與實際時間相關(guān)(見(5)式),需要采用比較特殊的電路解決這個問題。本文折線近似逼年的電路比較好解決了時間比例尺和幅度比例尺設(shè)置(編程)的獨立性問題。時間比例尺由DAC1的編程數(shù)據(jù)決定。幅度比例尺由后接數(shù)字編程增益放大器的編程數(shù)據(jù)決定。DAC3和DAC2的編程數(shù)據(jù)只依賴于所需波形的標(biāo)化數(shù)據(jù)(波形各采樣點幅值的相對比值),而與時間比例尺和幅度比例尺無關(guān)。加法器輸出的合成波形是標(biāo)化波形。
本文提出的采用新的三角分解方法實現(xiàn)任意波形的折線近似逼近及其電路結(jié)構(gòu)已在所研制的虛擬儀器通用信號發(fā)生卡中得到應(yīng)用。樣機測試結(jié)果表明,基于該方法的波形發(fā)生器具有較高的精度和良好的噪聲性能。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論