周鈞 陳林輝
【摘 要】本設(shè)計(jì)是將現(xiàn)場(chǎng)可編程邏輯器件FPGA 與DDS 技術(shù)相結(jié)合,以Xilinx的FPGA Basys3開發(fā)板為平臺(tái),Vivado集成開發(fā)軟件為環(huán)境,利用Verilog HDL語(yǔ)言設(shè)計(jì)出的組合波形發(fā)生器。將各波形的幅值轉(zhuǎn)化為相位并將其數(shù)字化后的數(shù)據(jù)存儲(chǔ)在ROM內(nèi),按照設(shè)定頻率,以相應(yīng)頻率控制字Fre_control為步進(jìn),對(duì)相位進(jìn)行累加,將累加相位值作為地址,通過(guò)該地址讀取存放在存儲(chǔ)器內(nèi)的波形數(shù)據(jù),經(jīng)數(shù)模轉(zhuǎn)換等外圍電路得到所需波形。
【關(guān)鍵詞】FPGA 組合波形發(fā)生器 Vivado
隨著可編程邏輯元器件的越發(fā)普及,F(xiàn)PGA在教學(xué)、生產(chǎn)等方面的用途日益增加。全球最老牌的PLD公司之一的賽靈思公司在2012年發(fā)布了Vivado集成開發(fā)環(huán)境加之近年Basys3開發(fā)設(shè)計(jì)板的問(wèn)世,使得Verilog硬件描述語(yǔ)言越發(fā)受到開發(fā)者的青睞,也使得數(shù)字信號(hào)處理等變得越發(fā)高速和高效。本作品可以產(chǎn)生正弦波,方波,三角波等基本波形及其組合波形,通過(guò)添加波形數(shù)據(jù),可實(shí)現(xiàn)任意波形。且本作品波形質(zhì)量好,精度高,指標(biāo)可媲美市場(chǎng)上出售的發(fā)生器。
1 總體的結(jié)構(gòu)
圖1所示為作品的總體結(jié)構(gòu)圖,具體表現(xiàn)為:將FPGA綜合而成的數(shù)字量輸出給外圍電路,通過(guò)DA轉(zhuǎn)換和低通濾波,使得數(shù)字信號(hào)變?yōu)槠交哪M信號(hào),后經(jīng)由前級(jí)差分放大電路和幅度調(diào)節(jié)電路,產(chǎn)生標(biāo)準(zhǔn)的輸出信號(hào)。
2 系統(tǒng)的構(gòu)成
在Vivado上利用Verilog語(yǔ)言變成實(shí)現(xiàn)下面的數(shù)字電路(圖2)。其中系統(tǒng)時(shí)鐘f為100MHz,通過(guò)鎖相環(huán)PLL倍頻后提供給系統(tǒng)的時(shí)鐘fs為200MHz,相位累加器N為28位,這樣步進(jìn)值step就是 ,為了使一個(gè)周期的采樣點(diǎn)數(shù)不少于8個(gè),我們?nèi)藶樵O(shè)定頻率控制字Fre_control為25位。設(shè)K為頻率控制字的值,則輸出頻率fo= 。圖中的wave是三位變量,那么就有=8種波形,如需添加波形,wave的位數(shù)也需要相應(yīng)增加。
我們的ROM查找表的深度為4096個(gè)點(diǎn),寬度為12位,滿足采樣精度和DA轉(zhuǎn)換精度,圖3所示為我們其中一種波形(正弦波)的仿真波形。
3 組合波形及其他波形的實(shí)現(xiàn)
組合波形的實(shí)現(xiàn)主要是由基本波形疊加而來(lái),兩兩疊加波形就是將三種基本波形幅值除以二后進(jìn)行數(shù)字累加,三種波形的疊加則除以三,這樣得到的組合波形和原來(lái)的三種基本波形是同頻同幅的。
另外要想實(shí)現(xiàn)其他波形,我們只需將波形對(duì)應(yīng)的4096個(gè)點(diǎn)添加進(jìn)ROM,在Vavido中添加選擇該波形的程序,然后綜合、實(shí)現(xiàn)、生成bit文件再下載就可以實(shí)現(xiàn)了。
4 步進(jìn)值的設(shè)計(jì)
步進(jìn)值的設(shè)計(jì)是本作品的核心和亮點(diǎn)。我們巧妙利用Basys 3開發(fā)板上的5個(gè)按鍵:將其中之一作為復(fù)位按鍵,兩個(gè)作為加和減的控制鍵,另外兩個(gè)一個(gè)能夠使步進(jìn)值以十倍的速率遞增,另一個(gè)以十倍的速率遞減。最小步進(jìn)值是0.75,然后就是7.5,75,這樣可以使頻率的調(diào)節(jié)更加方便和快捷。
5 結(jié)語(yǔ)
該組合波形發(fā)生器基于Xilinx的Basys 3開發(fā)板,性能穩(wěn)定。具有波形可調(diào),幅值可調(diào),頻率可調(diào),步進(jìn)值可調(diào)以及添加任意波形的功能。另外,我們還增加了掃頻的功能。該作品是一款功能多樣化,結(jié)構(gòu)簡(jiǎn)單,設(shè)計(jì)方便,精度準(zhǔn)確,價(jià)格低廉的作品。
參考文獻(xiàn):
[1]陳學(xué)英.李穎.FPGA應(yīng)用實(shí)驗(yàn)教程.北京:國(guó)防工業(yè)出版社,2013.
[2]何賓.Xilinx FPGA權(quán)威設(shè)計(jì)指南.北京:電子工業(yè)出版社,2015.
[3]夏宇聞.Verilog數(shù)字系統(tǒng)設(shè)計(jì)教程.北京:北京航空航天大學(xué)出版社,2013.