主頁(http://www.130131.com):基于DSP和SOPC數(shù)字信號發(fā)生器的設(shè)計
O 引 言 數(shù)字信號發(fā)生器是在電子電路設(shè)計、自動控制系統(tǒng)和儀表測量校正調(diào)試中應(yīng)用很多的一種信號發(fā)生裝置和信號源。而正弦信號是一種頻率成分最為單一的常見信號源,任何復(fù)雜信號(例如聲音信號)都可以通過傅里葉變換分解為許多頻率不同、幅度不等的正弦信號的疊加,廣泛地應(yīng)用在電子技術(shù)試驗、自動控制系統(tǒng)和通信、儀器儀表、控制等領(lǐng)域的信號處理系統(tǒng)中及其他機械、電聲、水聲及生物等科研領(lǐng)域。 目前,常用的信號發(fā)生器絕大部分由模擬電路或數(shù)字電路構(gòu)成,體積和功耗都很大,價格也比較貴。隨著微電子技術(shù)和計算機技術(shù)的發(fā)展,以DSP微處理器及 DSP軟硬件開發(fā)系統(tǒng)(例如集成開發(fā)環(huán)境CCS)及配套產(chǎn)品為內(nèi)容已形成了龐大并極具前途的高新技術(shù)產(chǎn)業(yè),而可編程邏輯器件、SOPC等新技術(shù)的應(yīng)用迅速滲透到電子、信息、通信等領(lǐng)域。這里分別借助DSP芯片運算速度高,功耗低,實時分析的優(yōu)勢以及SOPC技術(shù)靈活的可配置性、較高的可靠性、硬件升級容易等優(yōu)點設(shè)計了正弦信號發(fā)生器,并對各自設(shè)計過程及優(yōu)缺點進(jìn)行了對比。 1 基于DSP設(shè)計正弦信號發(fā)生器 1.1 正弦波產(chǎn)生原理 一般情況,產(chǎn)生正弦波的方法有兩種:查表法和泰勒級數(shù)展開法。查表法是使用比較普遍的方法,優(yōu)點是處理速度快,調(diào)頻調(diào)相容易,精度高,但需要的存儲器容量很大。泰勒級數(shù)展開法需要的存儲單元少,具有穩(wěn)定性好,算法簡單,易于編程等優(yōu)點,而且展開的級數(shù)越多,失真度就越小。本文采用了泰勒級數(shù)展開法。一個角度為θ的正弦和余弦函數(shù),可以展開成泰勒級數(shù),取其前5項進(jìn)行近似得: 
式中:x為θ的弧度值,x=2πf/fs(fs是采樣頻率;f是所要發(fā)生的信號頻率)。 1.2 硬件設(shè)計 系統(tǒng)硬件主要由微機、DSP芯片、數(shù)/模轉(zhuǎn)換模塊組成。其中,DSP芯片采用的是TI公司性價比良好的TMS320VC5402。它有一組程序總線和三組數(shù)據(jù)總線、高度并行性的算術(shù)邏輯單元ALU、專用硬件邏輯片內(nèi)存儲器、增強型HPI口和高達(dá)100 MHz的CPU頻率。它可以在一個周期里完成兩個讀和一個寫操作,并且具有專門的硬件乘法器,廣泛采用流水線操作,提供特殊的DSP指令,可以用來快速地實現(xiàn)各種數(shù)字信號處理算法。D/A采用了一種雙極型8位、低功耗數(shù)/模轉(zhuǎn)換器DAC08,實現(xiàn)了高速同步數(shù)/模轉(zhuǎn)換。硬件結(jié)構(gòu)框圖如圖1所示。
1.3 軟件設(shè)計 軟件設(shè)計是基于CCS開發(fā)環(huán)境的。CCS是TI公司推出的為開發(fā)TMS320系列DSP軟件的集成開發(fā)環(huán)境,是目前使用最為廣泛的DSP開發(fā)軟件之一。它提供了環(huán)境配置、源文件編譯、編譯連接、程序調(diào)試、跟蹤分析等環(huán)節(jié),并把軟、硬件開發(fā)工具集成在一起,使程序的編寫、匯編、程序的軟硬件仿真和調(diào)試等開發(fā)工作在統(tǒng)一的環(huán)境中進(jìn)行,從而加速軟件開發(fā)進(jìn)程。本文采用了與硬件開發(fā)板相結(jié)合的在線編程模式,通過CCS軟件平臺上應(yīng)用C語言及C54X匯編語言來實現(xiàn)正弦信號發(fā)生裝置。 軟件設(shè)計的思想是:正弦波的波形可以看作由無數(shù)點組成,這些點與x軸的每一個角度值相對應(yīng),可以利用DSP處理器處理大量重復(fù)計算的優(yōu)勢來計算x軸每一點對應(yīng)的y的值(在x軸取N個點進(jìn)行逼近)。整個系統(tǒng)軟件由主程序和基于泰勒展開法的SIN子程序組成,相應(yīng)的軟件流程圖如圖2和圖3所示。 

程序中,N值為產(chǎn)生正弦信號一個周期的點數(shù),產(chǎn)生的正弦信號頻率與N數(shù)值大小及D/A轉(zhuǎn)換頻率fDA有關(guān),產(chǎn)生正弦波信號頻率f的計算公式為: f=fDA/N 因此,選擇每個正弦周期中的樣點數(shù),改變每個采樣點之間的延遲,即通過調(diào)節(jié)N值產(chǎn)生不同頻率的波形,同時也可以利用軟件改變輸出的離散波形值乘以相應(yīng)的縮放因子A,從而調(diào)節(jié)波形的幅度。將程序裝載到DSP目標(biāo)芯片中,波形實現(xiàn)結(jié)果可以在CCS圖形顯示界面直觀地表示出來(見圖4)或者用示波器觀察輸出結(jié)果如圖5所示。


輸出結(jié)果顯示,在CCS圖形觀察窗口得到了頻率穩(wěn)定,信號干擾小,波形失真度較小的正弦信號;利用示波器也可觀察到波形較好,穩(wěn)定的正弦信號。 電路模型設(shè)計完成后,可以利用Simulink環(huán)境的強大的圖形化仿真驗證功能,直接進(jìn)行算法級模型仿真驗證,結(jié)果如圖8所示。由于在Matlab的 Simulink中,模型仿真屬于系統(tǒng)驗證性質(zhì)的仿真,并不是RTL級仿真,與目標(biāo)器件和硬件系統(tǒng)沒有關(guān)系。因此采用Modelsim對設(shè)計電路進(jìn)行功能仿真。Modelsim是Mentor公司杰出的HDL仿真工具,以其強大的數(shù)字和模擬仿真功能而廣泛應(yīng)用,且仿真結(jié)果直觀、易懂,如圖9所示。 2 基于SOPC技術(shù)設(shè)計正弦信號發(fā)生器 盡管DSP處理器(如TI的TMS320系列)在過去很長一段時間幾乎是DSP應(yīng)用系統(tǒng)核心器件的惟一選擇。但由于其自身的局限性,例如不靈活的硬件結(jié)構(gòu),使得其很難滿足當(dāng)今迅速發(fā)展的DSP應(yīng)用市場。現(xiàn)代大容量、高速度、內(nèi)嵌有各種DSP模塊的FPGA和相應(yīng)的SOPC技術(shù)出現(xiàn),使得數(shù)字信號處理的實現(xiàn)更加容易。 2.1 DDFS原理 直接數(shù)字頻率合成(DDFS)電路由系統(tǒng)時鐘、相位累加器、頻率累加器、波形查找表、D/A轉(zhuǎn)換器和信號調(diào)理電路構(gòu)成。DDFS的工作原理是在每個時鐘周期,用頻率累加器以輸入頻率字FW為步進(jìn)進(jìn)行自增累加,累加結(jié)果的高位送相位累加器,并與輸入的相位字PW進(jìn)行累加,相位累加的輸出作為波形查找表的地址,從查找表中讀出相應(yīng)的數(shù)據(jù)送給D/A轉(zhuǎn)換器,最后經(jīng)過低通濾波器、后級放大等信號調(diào)理電路,以形成模擬量波形輸出。圖6給出系統(tǒng)結(jié)構(gòu)框圖。
(中國集群通信網(wǎng) | 責(zé)任編輯:陳曉亮) |