DDS的FPGA實(shí)現(xiàn)設(shè)計(jì)
發(fā)布時(shí)間:2008/10/13 0:00:00 訪問(wèn)次數(shù):824
根據(jù)圖1,并假定相位控制字為0,這時(shí)dds的核心部分相位累加器的fpga的設(shè)計(jì)可分為如下幾個(gè)模塊:相位累加器sum99、相位寄存器reg1、正弦查找表rom和輸出數(shù)據(jù)寄存器reg2,其內(nèi)部組成框圖如圖 2所示。圖中,輸入信號(hào)有時(shí)鐘輸入clk,使能端en,復(fù)位端reset,頻率控制字k,輸出信號(hào)為q。
圖2 dds內(nèi)部組成框圖
整個(gè)dds模塊采用一個(gè)時(shí)鐘,以用來(lái)同步各個(gè)模塊的運(yùn)算速度。其中相位累加器sum99是一個(gè)帶有累加功能的10位加法器,它以設(shè)定的10位頻率控制字κ作為步長(zhǎng)來(lái)進(jìn)行加法運(yùn)算,當(dāng)其和滿時(shí),計(jì)數(shù)器清零,并進(jìn)行重新運(yùn)算。相位寄存器reg1就是一個(gè)一般的10位寄存器,它對(duì)輸入端輸入的數(shù)據(jù)進(jìn)行寄存,當(dāng)下一個(gè)時(shí)鐘到來(lái)時(shí),輸出寄存的數(shù)據(jù)。正弦查找表rom是dds最關(guān)鍵的部分,也是最復(fù)雜的部分,設(shè)計(jì)時(shí)首先需對(duì)正弦函數(shù)進(jìn)行采樣,接著將采樣的結(jié)果放到rom模塊的對(duì)應(yīng)存儲(chǔ)單元中,每一位地址對(duì)應(yīng)一個(gè)數(shù)值,輸出為9位。為了保證輸出數(shù)據(jù)的穩(wěn)定性,我們將rom的輸出數(shù)據(jù)先寄存在reg2中,待下一個(gè)時(shí)鐘到來(lái)時(shí),再將其輸出。整個(gè)系統(tǒng)各模塊是在同步時(shí)鐘信號(hào)clk的控制下協(xié)調(diào)工作的。
下面介紹一下正弦查找表rom模塊的具體設(shè)計(jì)。
首先利用matlab或c語(yǔ)言編程對(duì)正弦函數(shù)進(jìn)行采樣;然后對(duì)采樣數(shù)據(jù)進(jìn)行二進(jìn)制轉(zhuǎn)換,其結(jié)果作為查找表地址的數(shù)值。
用matlab語(yǔ)言編寫的正弦函數(shù)數(shù)據(jù)采集程序如下:
用c語(yǔ)言編寫的正弦函數(shù)數(shù)據(jù)采樣程序如下:
兩個(gè)程序運(yùn)行之后所得結(jié)果是一致的。
matlab語(yǔ)言編寫的正弦函數(shù)數(shù)據(jù)采集程序運(yùn)行結(jié)果如下:
總共是1024個(gè)數(shù)據(jù)。
歡迎轉(zhuǎn)載,信息來(lái)源維庫(kù)電子市場(chǎng)網(wǎng)(www.dzsc.com)
根據(jù)圖1,并假定相位控制字為0,這時(shí)dds的核心部分相位累加器的fpga的設(shè)計(jì)可分為如下幾個(gè)模塊:相位累加器sum99、相位寄存器reg1、正弦查找表rom和輸出數(shù)據(jù)寄存器reg2,其內(nèi)部組成框圖如圖 2所示。圖中,輸入信號(hào)有時(shí)鐘輸入clk,使能端en,復(fù)位端reset,頻率控制字k,輸出信號(hào)為q。
圖2 dds內(nèi)部組成框圖
整個(gè)dds模塊采用一個(gè)時(shí)鐘,以用來(lái)同步各個(gè)模塊的運(yùn)算速度。其中相位累加器sum99是一個(gè)帶有累加功能的10位加法器,它以設(shè)定的10位頻率控制字κ作為步長(zhǎng)來(lái)進(jìn)行加法運(yùn)算,當(dāng)其和滿時(shí),計(jì)數(shù)器清零,并進(jìn)行重新運(yùn)算。相位寄存器reg1就是一個(gè)一般的10位寄存器,它對(duì)輸入端輸入的數(shù)據(jù)進(jìn)行寄存,當(dāng)下一個(gè)時(shí)鐘到來(lái)時(shí),輸出寄存的數(shù)據(jù)。正弦查找表rom是dds最關(guān)鍵的部分,也是最復(fù)雜的部分,設(shè)計(jì)時(shí)首先需對(duì)正弦函數(shù)進(jìn)行采樣,接著將采樣的結(jié)果放到rom模塊的對(duì)應(yīng)存儲(chǔ)單元中,每一位地址對(duì)應(yīng)一個(gè)數(shù)值,輸出為9位。為了保證輸出數(shù)據(jù)的穩(wěn)定性,我們將rom的輸出數(shù)據(jù)先寄存在reg2中,待下一個(gè)時(shí)鐘到來(lái)時(shí),再將其輸出。整個(gè)系統(tǒng)各模塊是在同步時(shí)鐘信號(hào)clk的控制下協(xié)調(diào)工作的。
下面介紹一下正弦查找表rom模塊的具體設(shè)計(jì)。
首先利用matlab或c語(yǔ)言編程對(duì)正弦函數(shù)進(jìn)行采樣;然后對(duì)采樣數(shù)據(jù)進(jìn)行二進(jìn)制轉(zhuǎn)換,其結(jié)果作為查找表地址的數(shù)值。
用matlab語(yǔ)言編寫的正弦函數(shù)數(shù)據(jù)采集程序如下:
用c語(yǔ)言編寫的正弦函數(shù)數(shù)據(jù)采樣程序如下:
兩個(gè)程序運(yùn)行之后所得結(jié)果是一致的。
matlab語(yǔ)言編寫的正弦函數(shù)數(shù)據(jù)采集程序運(yùn)行結(jié)果如下:
總共是1024個(gè)數(shù)據(jù)。
歡迎轉(zhuǎn)載,信息來(lái)源維庫(kù)電子市場(chǎng)網(wǎng)(www.dzsc.com)
熱門點(diǎn)擊
- LabVIEW的寫入電子表格文件
- LabVIEW的組合框
- LabVIEW的讀取電子表格文件
- LabVIEW的寫入測(cè)量文件
- LabVIEW的文件I/O
- LabVIEW的字符串輸入控件
- LabVIEW的讀取測(cè)量文件
- LabVIEW的字符串操作函數(shù)
- LabVIEW的列表
- LabVIEW的讀取文本文件
推薦技術(shù)資料
- 聲道前級(jí)設(shè)計(jì)特點(diǎn)
- 與通常的Hi-Fi前級(jí)不同,EP9307-CRZ這臺(tái)分... [詳細(xì)]
- 電源管理 IC (PMIC)&
- I2C 接口和 PmBUS 以及 OTP/M
- MOSFET 和柵極驅(qū)動(dòng)器單
- 數(shù)字恒定導(dǎo)通時(shí)間控制模式(CO
- Power Management Buck/
- 反激變換器傳導(dǎo)和輻射電磁干擾分析和抑制技術(shù)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究