基于DSP數(shù)字振蕩器的移相正弦波發(fā)生器設(shè)計
0 引 言
產(chǎn)生數(shù)字式移相信號的方法有很多。傳統(tǒng)的直接數(shù)字頻率合成(DDS)移相原理是先將正弦波信號數(shù)字化,并形成一張數(shù)據(jù)表存入兩片ROM芯片中,此后可通過兩片。D/A轉(zhuǎn)換芯片在計數(shù)器的控制下連續(xù)地循環(huán)輸出該數(shù)據(jù)表,就可獲得兩路正弦波信號。當兩片D/A轉(zhuǎn)換芯片所獲得的數(shù)據(jù)序列完全相同時,則轉(zhuǎn)換所得到的兩路正弦波信號無相位差。當兩片D/A轉(zhuǎn)換芯片所獲得的數(shù)據(jù)序列不同時,則轉(zhuǎn)換所得到的兩路正弦波信號就存在著相位差。相位差的值與數(shù)據(jù)表中數(shù)據(jù)的總個數(shù)及數(shù)據(jù)地址的偏移量有關(guān)。這種處理方式的實質(zhì)是將數(shù)據(jù)地址的偏移量映射為信號間的相位值。數(shù)據(jù)的偏差可以通過外部微處理器來獲得相應(yīng)的數(shù)字量輸入,這個數(shù)值對應(yīng)著正弦信號的移相角度。直接頻率合成方法具有頻率轉(zhuǎn)換時間短、相位噪聲性能好、精度高,產(chǎn)生的信號頻率范圍寬等優(yōu)點,但由于需要采用地址、相位計算、訪問存儲器操作等環(huán)節(jié),導(dǎo)致直接頻率合成器結(jié)構(gòu)復(fù)雜、成本高、移相分辨率低。本文利用DSP技術(shù),通過數(shù)值迭代方法,即用DSP數(shù)字振蕩器的實現(xiàn)原理獲得兩路正弦波信號。通過仿真,硬件實現(xiàn),能得到設(shè)定參數(shù)的兩路正弦波輸出,達到了設(shè)計目的,并具有調(diào)整方便靈活、分辨率高等特點。數(shù)值迭代方法能精確計算角度的正弦值,只需較小的存儲空間,選擇正弦周期中的樣點數(shù)、改變樣點間的延遲,能產(chǎn)生不同頻率的波形,可利用軟件改變波形幅度及相位。
1 波形及移相波形發(fā)生器的DSP實現(xiàn)原理
利用DSP通過運算,用疊代的方法產(chǎn)生正弦信號,即數(shù)字振蕩器。數(shù)字振蕩器的單位沖擊響應(yīng)為sin(nωT+θ)?u(n)即系統(tǒng)在δ(n)的激勵下,產(chǎn)生振蕩,輸出相位為θ的正弦序列,該系統(tǒng)的系統(tǒng)函數(shù)就是沖擊響應(yīng)的Z變換,即
則該系統(tǒng)所對應(yīng)的差分方程為
通過疊代可由差分方程求出系統(tǒng)的沖擊響應(yīng)。系統(tǒng)的輸入為x(n)=δ(n),初始條件為零。則由差分方程可得:
當n≥3時有:y(n)=2cosωT?y(n-1)-y(n-2)。在n≥3以后,y(n)能用y(n-1)和y(n-2)算出,這是一個遞歸的差分方程。因此得到如下結(jié)論:只要已知系統(tǒng)輸出正弦信號角頻率ω和采樣周期T就可以得到系統(tǒng)差分方程,系統(tǒng)只需每隔T秒時間計算一次差分方程,就可得到當前正弦采樣序列y(n)的值。設(shè)定的y(1)、y(2)初值不同,初始相位就不同。在設(shè)計中,主程序通過鍵盤輸入頻率及相位差等數(shù)據(jù),在初始化時依輸出信號頻率、采樣速率及相位差等數(shù)據(jù)先計算出兩路正弦信號的初始值y1(1)、y1(2)和y2(1)y2(2),然后開放定時器中斷。以后每次進入定時器中斷服務(wù)程序時,利用前面的y1(1)、y1(2)和y2(1)y2(2),計算出新的y1(0)和y2(0)。雖然兩次計算并輸出y1(0)和y2(0)有一定的延遲,但由于DSP的高速流水線運行及McBSP高速串行輸出,所引起誤差將很小。
評論