新聞中心

EEPW首頁 > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于FPGA和DDS技術(shù)的正弦信號發(fā)生器設(shè)計(jì)

基于FPGA和DDS技術(shù)的正弦信號發(fā)生器設(shè)計(jì)

作者: 時(shí)間:2010-07-13 來源:網(wǎng)絡(luò) 收藏


2 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)及實(shí)現(xiàn)
2.1 系統(tǒng)結(jié)構(gòu)圖

系統(tǒng)結(jié)構(gòu)圖如圖2所示。

本文引用地址:http://m.butianyuan.cn/article/187877.htm


2.2 單元電路
2.2.1 單片機(jī)控制模塊實(shí)現(xiàn)方式

單片機(jī)實(shí)現(xiàn)部分主要處理數(shù)據(jù)輸入及數(shù)據(jù)顯示,此模塊以AT89S51為中心,控制鍵盤輸入和LED顯示,其中鍵盤輸入值作為頻率控制字送給處理。單片機(jī)的P1口直接與鍵盤連接,無鍵按下時(shí)為高電平,當(dāng)有鍵按下時(shí)就變?yōu)榈碗娖健?梢栽O(shè)計(jì)鍵1為“0”值鍵、鍵2為“1”值鍵,滿足頻率控制字以二進(jìn)制進(jìn)行輸入;鍵3為輸入確定鍵;鍵4和鍵5為頻率步進(jìn)控制鍵,鍵4為加100 Hz鍵,鍵5為減100 Hz鍵,當(dāng)鍵3按下時(shí)將輸入設(shè)置的頻率控制字以二進(jìn)制數(shù)形式送至P2口,然后通過串行口輸出并驅(qū)動LED靜態(tài)顯示。PO.O和PO.1及PO.2控制數(shù)據(jù)輸出的先后順序。此模塊功能具體實(shí)現(xiàn)可通過匯編語言編程后下載到單片機(jī)調(diào)試并實(shí)現(xiàn),限于篇幅,具體程序不在此展現(xiàn),只展示設(shè)計(jì)思路。
2.2.2 處理模塊
(1)處理模塊控制原理
FPGA處理模塊是本系統(tǒng)的核心,系統(tǒng)結(jié)構(gòu)圖中FPGA模塊里的基本結(jié)構(gòu)圖如圖3所示。


圖3中工作原理為:相位累加器由32位加法器與32位累加寄存器級聯(lián)構(gòu)成。在時(shí)鐘脈沖,fc的控制下,加法器將頻率控制字M與累加寄存器輸出的累加相位數(shù)據(jù)相加,把相加后的結(jié)果送到累加寄存器的數(shù)據(jù)輸入端,以使加法器在下一個(gè)時(shí)鐘脈沖的作用下繼續(xù)與頻率控制字相加。這樣,相位累加器在時(shí)鐘作用下,不斷對頻率控制字進(jìn)行線性相位累加。由此可以看出,相位累加器在每一個(gè)時(shí)鐘輸入時(shí),把頻率控制字累加一次,相位累加器輸出的數(shù)據(jù)就是合成信號的相位。
采用改變尋址的步長來改變輸出信號的頻率,步長即為對數(shù)字波形查表的相位增量,由累加器對相位增量進(jìn)行累加,累加器的值作為查表地址,這樣就可把存儲在波形存儲器內(nèi)的波形抽樣值(二進(jìn)制編碼)經(jīng)查找表查出,完成相位到幅值轉(zhuǎn)換,波形存儲器的輸出送到D/A轉(zhuǎn)換器,D/A轉(zhuǎn)換器將數(shù)字量形式的波形幅值轉(zhuǎn)換成所要求合成頻率的模擬量形式信號。低通濾波器用于濾除不需要的取樣分量,以便輸出頻譜純凈的正弦波信號。
(2)FPGA處理模塊實(shí)現(xiàn)方式
根據(jù)設(shè)計(jì)要求:要達(dá)到正弦波輸出頻率范圍(1 kHz~10 MHz)及頻率步進(jìn)值100 Hz,設(shè)相位累加器的位寬為2N,sin表的大小為2P,累加器的高P位用于尋址Sin表。根據(jù)DDS工作原理,主頻時(shí)鐘Clock的頻率為,fc=100 MHz,累加器按步進(jìn)為1進(jìn)行累加直至溢出一遍的頻率即為頻率步進(jìn)值。

以M點(diǎn)為步長(M為頻率控制字),產(chǎn)生信號的頻率:

由于頻率步進(jìn)值為100 Hz,由式(1)可計(jì)算得N=20。要使輸出頻率達(dá)到10 MHz,由式(2)可計(jì)算得M=104 857,為了使輸出的波形盡可能不失真,頻率控制字位寬取17位,高三位添000,由于設(shè)計(jì)加法器為32位,則低12位添000000000000。本系統(tǒng)中使用的D/A轉(zhuǎn)換器件的輸入位寬為10,所以只取相位累加器輸出的高10位可滿足設(shè)計(jì)要求。整個(gè)過程的實(shí)現(xiàn)過程中,本系統(tǒng)選用Altera公司的Cyclone系列芯片,采用VHDL語言描述,利用開發(fā)軟件QuartusⅡ進(jìn)行綜合,以實(shí)現(xiàn)產(chǎn)生l kHz~10 MHz頻率范圍內(nèi)的各種正弦信號。



關(guān)鍵詞: FPGA DDS 正弦信號發(fā)生器

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉