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é),,導致直接頻率合成器結(jié)構(gòu)復雜,、成本高、移相分辨率低,。本文利用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高速串行輸出,,所引起誤差將很小,。
2 系統(tǒng)硬件實現(xiàn)方案
基于TMS320VC5416 DSP的兩路輸出移相正弦波的系統(tǒng)結(jié)構(gòu)如圖1所示,。該系統(tǒng)的中央處理單元采用美國TI(德州儀器)公司的高性能定點數(shù)字信號處理芯片TMS320VC5416,TMS 320 VC54.16是TI公司專門針對便攜式設(shè)備設(shè)計的一款低功耗,、高性能定點數(shù)字信號處理器,,同C54系列其它處理器相比運行速度達到160MPIS,片內(nèi)RAM達到128K,,程序可尋址空間達到8M,,為大量數(shù)據(jù)處理提供了豐富條件,。特別是VC5416提供了多種片內(nèi)外設(shè)資源;軟件可編程等待狀態(tài)產(chǎn)生器,、可編程鎖相環(huán)時鐘產(chǎn)生器,、1個16位計時器、6通道直接內(nèi)存訪問控制器(DMA),、3個多通道緩沖串口(McBSP),、8位增強型HPI接口等。此外,,TMS320VC5416支持C和匯編語言混合編程,,高效的流水線操作和靈活的尋址方式使其特別適合高速實時信號處理。由于系統(tǒng)有兩路正弦信號輸出,,系統(tǒng)采用兩路信號分時傳輸方式,。TLC320AD50C是TI公司出品的一塊將A/D和D/A轉(zhuǎn)換功能集成在一起的模擬接口芯片,采用∑-△技術(shù)在低系統(tǒng)成本下實現(xiàn)了高精度的A/D和D/A轉(zhuǎn)換,。該芯片由一對16 b同步串行轉(zhuǎn)換通道組成,,在ADC之后有一個抽取濾波器,在DAC之前有一個插值濾波器,。TLC320AD50C支持主從兩種工作方式,,并且最多支持三個從設(shè)備。利用該特點,,系統(tǒng)將兩片TLC320AD50C串聯(lián),,使其中一個為主設(shè)備另一個為從設(shè)備,通過TMS320VC5416的多通道緩沖串口McBSP實現(xiàn)與兩片TLC320AD50C間的串行通信,。TMS320VC54.16控制兩片TLC320AD50C以時分復用方式將數(shù)據(jù)傳送給兩片TLC320AD50C進行D/A轉(zhuǎn)換輸出,。其中AD50C1的M/S接高電平,AD50C2的M/S接低電平,,并且利用VC5416的XF引腳為AD50C提供主,、次通信選擇信號。TLC320AD50被廣泛應(yīng)用于音頻數(shù)據(jù)采集處理中,,它可以與TMS320C54xDSP的McBSP無縫串行連接進行數(shù)據(jù)采集,、存儲和處理。SCLK輸出時鐘,,DIN串行輸入,,DOUT串行輸出,F(xiàn)S幀同步信號輸出,,對應(yīng)DSP的各相應(yīng)引腳,。MCBSP具有特點:①串口的接收,發(fā)送時鐘既可由外部設(shè)備提供,又可由內(nèi)部時鐘發(fā)生器提供,;②幀同步信號和數(shù)據(jù)時鐘信號的極性可編程,,內(nèi)部時鐘和幀信號發(fā)生器也可由軟件編程控制;③串口的信號發(fā)送和接收部分既可單獨運行,,又可以在一起配合工作,;④CPU的中斷信號和DMA的同步信號使得McBSP串口可由CPU控制運行,還可脫離CPU通過DMA直接存取內(nèi)存單獨運行,;⑤多通道選擇部分使得串口具備了多通道信號的通信能力,,他的多通道接收和發(fā)送能力可達128個信道;⑥數(shù)據(jù)寬度可在8b,、12b,、16b、20b,、24b,、32b中任意選擇,并可對數(shù)據(jù)進行A律和U律壓縮和擴展,。McBSP串口包括一個數(shù)據(jù)通道和一個控制通道,,數(shù)據(jù)通道完成數(shù)據(jù)的發(fā)送和接收。McBSP通過DX引腳發(fā)送數(shù)據(jù),、DR引腳接收數(shù)據(jù),。控制通道完成的任務(wù)包括內(nèi)部時鐘的產(chǎn)生,、幀同步信號的產(chǎn)生,、對這些信號的控制以及多通路的選擇等??刂仆ǖ肋€負責產(chǎn)生中斷信號送往CPU,,產(chǎn)生同步事件信號通知DMA控制器??刂菩畔t是通過控制通道以時鐘和幀同步信號的形式傳送,。
3 系統(tǒng)軟件設(shè)計及CCS仿真結(jié)果
系統(tǒng)軟件主要由BootLoader下載程序、系統(tǒng)初始化,、鍵盤顯示,、定時中斷處理等幾個模塊構(gòu)成。系統(tǒng)開始上電時首先執(zhí)行BootLoader程序,,將目標程序從外部FLASH中調(diào)入片內(nèi)RAM中執(zhí)行,。
系統(tǒng)初始化程序完成對TMS320VC5416各控制寄存器,McBSP串口控制寄存器,,定時器以及TLC320AD50C相應(yīng)寄存器的初始化設(shè)置,。主程序及定時中斷服務(wù)程序流程圖如圖2所示。
設(shè)定正弦波頻率為2 kHz,,采樣頻率40 kHz,,移相60度的CCS仿真波形如3所示。
4 結(jié)束語
本文提出了一種基于DSP數(shù)字振蕩器產(chǎn)生移相正弦波的設(shè)計方法,。實驗結(jié)果表明系統(tǒng)產(chǎn)生的波形穩(wěn)定,,抗干擾能力強,頻率,、相位和幅度調(diào)節(jié)方便,,精度高,輸出頻率范圍為20 Hz~20 kHz,,相移0~360°,,移相分辨率可高達0.001度。另外系統(tǒng)若連接高速DA轉(zhuǎn)換芯片,,可大大提高輸出頻率范圍,。該設(shè)計方案簡單可行、新穎實用,,有推廣應(yīng)用價值,。