国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

fpga課設(shè)-多功能信號(hào)發(fā)生器

這篇具有很好參考價(jià)值的文章主要介紹了fpga課設(shè)-多功能信號(hào)發(fā)生器。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

1緒論
1.1 背景
信號(hào)發(fā)生器作為一種歷史悠久的測量儀器,早在20年代電子設(shè)備剛出現(xiàn)時(shí)就產(chǎn)生了。隨著通信和雷達(dá)技術(shù)的發(fā)展,40年代出現(xiàn)了主要用于測試各種接收機(jī)的標(biāo)準(zhǔn)信號(hào)發(fā)生器,使得信號(hào)發(fā)生器從定性分析的測試儀器發(fā)展成定量分析的測量儀器。同時(shí)還出現(xiàn)了可用來測量脈沖電路或用作脈沖調(diào)制器的脈沖信號(hào)發(fā)生器。
1.2 FPGA簡介
FPGA(Field-Programmable Gate Array),即現(xiàn)場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。
FPGA一般來說比ASIC(專用集成芯片)的速度要慢,無法完成復(fù)雜的設(shè)計(jì),但是功耗較低。但是他們也有很多的優(yōu)點(diǎn)比如可以快速成品,可以被修改來改正程序中的錯(cuò)誤和更便宜的造價(jià)。廠商也可能會(huì)提供便宜的但是編輯能力差的FPGA。因?yàn)檫@些芯片有比較差的可編輯能力,所以這些設(shè)計(jì)的開發(fā)是在普通的FPGA上完成的,然后將設(shè)計(jì)轉(zhuǎn)移到一個(gè)類似于ASIC的芯片上。
1.3 Quartus II簡介
Quartus II design 是最高級(jí)和復(fù)雜的,用于system-on-a-programmable-chip (SOPC)的設(shè)計(jì)環(huán)境。 Quartus II design 提供完善的 timing closure 和 LogicLock? 基于塊的設(shè)計(jì)流程。Quartus II design是唯一一個(gè)包括以timing closure 和 基于塊的設(shè)計(jì)流為基本特征的programmable logic device (PLD)的軟件。 Quartus II 設(shè)計(jì)軟件改進(jìn)了性能、提升了功能性、解決了潛在的設(shè)計(jì)延遲等,在工業(yè)領(lǐng)域率先提供FPGA與mask-programmed devices開發(fā)的統(tǒng)一工作流程。
Altera的Quartus II可編程邏輯軟件屬于第四代PLD開發(fā)平臺(tái)。該平臺(tái)支持一個(gè)工作組環(huán)境下的設(shè)計(jì)要求,其中包括支持基于Internet的協(xié)作設(shè)計(jì)。Quartus平臺(tái)與Cadence、ExemplarLogic、 MentorGraphics、Synopsys和Synplicity等EDA供應(yīng)商的開發(fā)工具相兼容。改進(jìn)了軟件的LogicLock模塊設(shè)計(jì)功能,增添 了FastFit編譯選項(xiàng),推進(jìn)了網(wǎng)絡(luò)編輯性能,而且提升了調(diào)試能力。
Verilog HDL在Quartus II 中的使用流程如圖1-1所示:
圖1-1 應(yīng)用流程圖

1.4 Modelsim簡介
Mentor公司的ModelSim是業(yè)界最優(yōu)秀的HDL語言仿真軟件,它能提供友好的仿真環(huán)境,是業(yè)界唯一的單內(nèi)核支持VHDL和Verilog混合仿真的仿真器。它采用直接優(yōu)化的編譯技術(shù)、Tcl/Tk技術(shù)、和單一內(nèi)核仿真技術(shù),編譯仿真速度快,編譯的代碼與平臺(tái)無關(guān),便于保護(hù)IP核,個(gè)性化的圖形界面和用戶接口,為用戶加快調(diào)錯(cuò)提供強(qiáng)有力的手段,是FPGA/ASIC設(shè)計(jì)的首選仿真軟件。

2系統(tǒng)設(shè)計(jì)方案
2.1系統(tǒng)總體設(shè)計(jì)
本系統(tǒng)以FPGA芯片為中心,外加輔助電路,選取 DDS技術(shù)。該系統(tǒng)由FPGA 主控電路,D/A轉(zhuǎn)換電路,調(diào)節(jié)按鍵和低通濾波電路,Guagle Wave—任意波形發(fā)生器,設(shè)置我們需要的波形,依次保存為mif文件,在與波形ROM關(guān)聯(lián)起來,然后經(jīng)相位累加器輸出的地址信息不斷尋址從波形ROM輸出波形數(shù)據(jù)從mif文件讀取的是離散的波形數(shù)據(jù),還得經(jīng)由數(shù)模轉(zhuǎn)換器將離散的序列轉(zhuǎn)換成連續(xù)的模擬量,再使用低通濾波器過濾諧波,輸出平滑的函數(shù)波形。課題要求是需要輸出四類波形,由此需要使用四塊ROM儲(chǔ)存器,依次放入四種波形的波形幅度量化數(shù)據(jù),然后使用一個(gè)四選一的波形選擇器,波形選擇模塊控制輸出波形形狀。

圖2-1系統(tǒng)總體設(shè)計(jì)圖

圖2-2 系統(tǒng)總體RTL視圖
2.2按鍵控制模塊
由于開發(fā)板使用的按鍵開關(guān)為機(jī)械彈性開關(guān),當(dāng)機(jī)械觸點(diǎn)斷開、閉合時(shí), 由于機(jī)械觸點(diǎn)的彈性作用,一個(gè)按鍵開關(guān)在閉合時(shí)不會(huì)馬上穩(wěn)定地接通,在斷開時(shí)也不會(huì)立刻斷開。因而在閉合及斷開的瞬間均伴隨有一連串的抖動(dòng),為了不產(chǎn)生這種現(xiàn)象而做 的措施就是按鍵消抖。由于按鍵個(gè)數(shù)較多,常用軟件方法去抖,即檢測出按鍵閉合后執(zhí)行一個(gè)延時(shí)程序,根 據(jù)抖動(dòng)的時(shí)間為 5ms~10ms,我們產(chǎn)生一個(gè) 20ms 的延時(shí),讓前沿抖動(dòng)消失后再一次檢測鍵的狀態(tài),如果仍保持閉合狀態(tài)電平,則確認(rèn)為真正有鍵按下。
2.3 DDS模塊
為了使DDS簡易信號(hào)發(fā)生器實(shí)現(xiàn)正弦波、方波、三角波和鋸齒波 4 種波形的 輸出,需要事先在波形數(shù)據(jù)表 ROM 中存入 4 種波形信號(hào)各自的完整周期波形數(shù)據(jù)。ROM 作為只讀存儲(chǔ)器,在進(jìn)行 IP 核設(shè)置時(shí)需要指定初始化文件,我們將波形數(shù)據(jù)作為初始化文 件寫入其中,文件格式為 MIF 文件。 使用 MatLab 繪制 4 種信號(hào)波形,對(duì)波形進(jìn)行等間隔采樣,以采樣次數(shù)作為 ROM 存儲(chǔ) 地址,將采集的波形幅值數(shù)據(jù)做為存儲(chǔ)數(shù)據(jù)寫入存儲(chǔ)地址對(duì)應(yīng)的存儲(chǔ)空間。在本次實(shí)驗(yàn)中 我們對(duì) 4 種信號(hào)波形進(jìn)行分別采樣,采樣次數(shù)為 2 12 = 4096 次,采集的波形幅值數(shù)據(jù)位寬 為 8bit,將采集數(shù)據(jù)保存為 MIF 文件。
2.4數(shù)模轉(zhuǎn)換模塊
由系統(tǒng)設(shè)計(jì)圖可知,要讓信號(hào)發(fā)生器系統(tǒng)輸出波形,還需要使用DA轉(zhuǎn)換模塊,這里我選擇和板卡相配套的外載ADDA模塊,外載 AD/DA 板卡的 DA 部分使用高速 DA 芯片 AD9708,AD9708 由 ANALOG 公司生 產(chǎn),屬于 TxDAC?系列高性能、低功耗 CMOS 數(shù)模轉(zhuǎn)換器(DAC)的 8 位分辨率產(chǎn)品。
AD9708 提供出色的交流和直流性能,同時(shí)支持最高 125 MSPS 的更新速率。具有靈活 的單電源工作電壓范圍(2.7 V 至 5.5 V)和低功耗特性,非常適合便攜式和低功耗應(yīng)用。 通過降低滿量程電流輸出,可以將功耗進(jìn)一步降至 45 mW,而性能不會(huì)明顯下降,

圖2.3 外載ADDA模塊

3各模塊方案驗(yàn)證
頂層模塊包括 4 部分,D/A 轉(zhuǎn)換器交由外部掛載 的高速 AD/DA 板卡處理,其他 3 部分,相位累加器、相位調(diào)制器、波形數(shù)據(jù)表 ROM 由 FPGA 負(fù)責(zé)。所以我們要建立一個(gè)單獨(dú)的模塊對(duì) DDS 部分進(jìn)行處理;實(shí)驗(yàn)?zāi)繕?biāo)還提到要使用按鍵實(shí)現(xiàn) 4 種波形的切換,按鍵消抖模塊必不可少;同時(shí)也要聲明一個(gè)按鍵控制模塊對(duì)4 個(gè)輸入按鍵進(jìn)行控制。
3.1頂層模塊
時(shí)鐘、復(fù)位和代表波形選擇的 4 個(gè)按鍵信號(hào)通過頂層傳入按鍵控制模塊(key_control),
按鍵控制模塊內(nèi)部實(shí)例化 4 個(gè)按鍵消抖模塊,對(duì)輸入的 4 路按鍵信號(hào)分別進(jìn)行消抖處理; 消抖處理后的 4 路按鍵信號(hào)組成波形選擇信號(hào)輸入 dds 模塊(dds), dds 模塊中實(shí)例化一個(gè)ROM IP核,按順序存入了一個(gè)完整周期的正弦波、方波、三角波、鋸齒波的信號(hào)波形,根據(jù)輸入波形選擇信號(hào)對(duì) rom 中對(duì)應(yīng)信號(hào)波形進(jìn)行讀取,將讀出波形的幅度數(shù)字值輸出,傳入外部掛載的高速 AD/DA 板卡的 DA 端,板卡根據(jù)輸入的數(shù)字信號(hào)生成對(duì)應(yīng)波形的模擬信號(hào)。其中,輸出信號(hào)的頻率和相位的調(diào)節(jié)可在 dds 模塊中通過修改參數(shù)實(shí)現(xiàn)。
圖3-1 系統(tǒng)總體RTL視圖
3.2 數(shù)據(jù)選擇模塊
本實(shí)驗(yàn)設(shè)計(jì)的 DDS 信號(hào)發(fā)生器,可以實(shí)現(xiàn) 4 種信號(hào)波形的輸出,使用外部物理按鍵實(shí)現(xiàn)波形的切換,一個(gè)按鍵控制一種波形,共使用 4 個(gè)按鍵。外部物理按鍵的觸發(fā)信號(hào)通過頂層模塊輸入按鍵控制模塊,按鍵控制模塊內(nèi)部實(shí)例化 4 個(gè)按鍵消抖消抖模塊,分別對(duì)4路按鍵信號(hào)做消抖處理。消抖處理后的 4 路按鍵信號(hào)組成位寬為 4bit 的波形選擇信號(hào)并輸出至 DDS 模塊。波形選擇信號(hào)初值為 4’b0000,當(dāng)某一按鍵按下,波形選擇信號(hào)對(duì)應(yīng)位電平拉高。

圖3-2 數(shù)據(jù)選擇模塊RTL視圖
3.3 DDS模塊
我們設(shè)計(jì)的 DDS 簡易信號(hào)發(fā)生器想要實(shí)現(xiàn)正弦波、方波、三角波和鋸齒波 4 種波形的 輸出,需要事先在波形數(shù)據(jù)表 ROM 中存入 4 種波形信號(hào)各自的完整周期波形數(shù)據(jù)。ROM 作為只讀存儲(chǔ)器,在進(jìn)行 IP 核設(shè)置時(shí)需要指定初始化文件,我們將波形數(shù)據(jù)作為初始化文件寫入其中,文件格式為 MIF 文件。

圖3-3 DDS模塊RTL視圖

4系統(tǒng)仿真測試
4.1按鍵消抖仿真
按鍵的抖動(dòng)會(huì)產(chǎn)生抖動(dòng),抖動(dòng)的時(shí)間是小于 10ms 的,而當(dāng)有20ms 的時(shí)間內(nèi)都沒有抖動(dòng)就說明按鍵已經(jīng)處于穩(wěn)定狀態(tài)了。仿真代碼如下:
`timescale 1ns/1ns
module tb_key_control();
parameter CNT_1MS = 20’d19 ,
CNT_11MS = 21’d69 ,
CNT_41MS = 22’d149 ,
CNT_51MS = 22’d199 ,
CNT_60MS = 22’d249 ;
wire [3:0] wave_select ;
//reg define
reg sys_clk ;
reg sys_rst_n ;
reg [21:0] tb_cnt ;
reg key_in ;
reg [1:0] cnt_key ;
reg [3:0] key ;
//defparam define
defparam key_control_inst.CNT_MAX = 24;
//sys_rst_n,sys_clk,key
initial
begin
sys_rst_n = 1’b0;
sys_clk = 1’b0;
key = 4’b0000;
#200;
sys_rst_n = 1’b1;
end
always #10 sys_clk = ~sys_clk;
always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1’b0)
tb_cnt <= 22’b0;
else if(tb_cnt == CNT_60MS)
tb_cnt <= 22’b0;
else
tb_cnt <= tb_cnt + 1’b1;
always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1’b0)
key_in <= 1’b1;
else if((tb_cnt >= CNT_1MS && tb_cnt <= CNT_11MS)
|| (tb_cnt >= CNT_41MS && tb_cnt <= CNT_51MS))
key_in <= {$random} % 2;
else if(tb_cnt >= CNT_11MS && tb_cnt <= CNT_41MS)
key_in <= 1’b0;
else
key_in <= 1’b1;
always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1’b0)
cnt_key <= 2’d0;
else if(tb_cnt == CNT_60MS)
cnt_key <= cnt_key + 1’b1;
else
cnt_key <= cnt_key;
always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1’b0)
key <= 4’b1111;
else
case(cnt_key)
0: key <= {3’b111,key_in};
1: key <= {2’b11,key_in,1’b1};
2: key <= {1’b1,key_in,2’b11};
3: key <= {key_in,3’b111};
default:key <= 4’b1111;
endcase
key_control key_control_inst
(.sys_clk (sys_clk), //系統(tǒng)時(shí)鐘,50MHz
.sys_rst_n (sys_rst_n ), //復(fù)位信號(hào),低電平有效
.key (key), //輸入4位按鍵
.wave_select (wave_select) //輸出波形選擇
);
endmodule

圖4-1 按鍵消抖模塊仿真波形圖
4.2系統(tǒng)總體仿真
整個(gè)系統(tǒng)是在前幾個(gè)個(gè)模塊的基礎(chǔ)上實(shí)現(xiàn)的,對(duì)于整個(gè)系統(tǒng)來說,輸入端口為初始時(shí)鐘激勵(lì)信號(hào)sys_clk、控制復(fù)位信號(hào)sys_rst_n,數(shù)據(jù)選擇按鍵key,輸出有DAC模塊時(shí)鐘dac_data 和DAC模塊波形數(shù)據(jù)dac_data 。下面代碼中延時(shí)后改變key信號(hào)的值來模擬按鍵的按下,達(dá)到切換波形的效果。仿真結(jié)果如圖4.2所示。仿真代碼如下:
`timescale 1ns/1ns
module tb_top_dds();
parameter CNT_1MS = 20’d19000 ,
CNT_11MS = 21’d69000 ,
CNT_41MS = 22’d149000 ,
CNT_51MS = 22’d199000 ,
CNT_60MS = 22’d249000 ;
wire dac_clk ;
wire [7:0] dac_data ;
reg sys_clk ;
reg sys_rst_n ;
reg [21:0] tb_cnt ;
reg key_in ;
reg [1:0] cnt_key ;
reg [3:0] key ;
defparam top_dds_inst.key_control_inst.CNT_MAX = 24;
initial
begin
sys_clk = 1’b0;
sys_rst_n <= 1’b0;
key <= 4’b0000;
#200;
sys_rst_n <= 1’b1;
end

always #10 sys_clk = ~sys_clk;
always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1’b0)
tb_cnt <= 22’b0;
else if(tb_cnt == CNT_60MS)
tb_cnt <= 22’b0;
else
tb_cnt <= tb_cnt + 1’b1;
always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1’b0)
key_in <= 1’b1;
else if((tb_cnt >= CNT_1MS && tb_cnt <= CNT_11MS)
|| (tb_cnt >= CNT_41MS && tb_cnt <= CNT_51MS))
key_in <= {$random} % 2;
else if(tb_cnt >= CNT_11MS && tb_cnt <= CNT_41MS)
key_in <= 1’b0;
else
key_in <= 1’b1;

always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1’b0)
cnt_key <= 2’d0;
else if(tb_cnt == CNT_60MS)
cnt_key <= cnt_key + 1’b1;
else
cnt_key <= cnt_key;

always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1’b0)
key <= 4’b1111;
else
case(cnt_key)
0: key <= {3’b111,key_in};
1: key <= {2’b11,key_in,1’b1};
2: key <= {1’b1,key_in,2’b11};
3: key <= {key_in,3’b111};
default:key <= 4’b1111;
endcase
top_dds top_dds_inst
(
.sys_clk (sys_clk ),
.sys_rst_n (sys_rst_n ),
.key (key ),
.dac_clk (dac_clk ),
.dac_data (dac_data )
);
endmodule

圖4-2 系統(tǒng)整體仿真波形圖
本次的仿真結(jié)果使用 ModelSim 軟件對(duì)頂層模塊進(jìn)行仿真,由圖可知,輸入與輸出信號(hào)額能正常傳入 傳出頂層模塊,并按照要求輸出信號(hào)。

5、程序下載與實(shí)物演示
5.1分頻模塊綜合圖

圖5.1 分頻模塊綜合圖
5.2引腳分配
本次課程設(shè)計(jì)所用的fpga開發(fā)板引腳圖如圖4-1所示:

圖5-2 fpga開發(fā)板引腳圖
5.3實(shí)物測試
將以sof為后綴的文件下載到開發(fā)板中,Quartus II的程序下載界面如圖4-3所示:

圖5-3 程序下載界面
實(shí)物效果圖如圖4-4所示:

5-4 實(shí)物圖
將外載DA模塊和板卡組合,用信號(hào)線連接DA模塊和示波器,上電后,按下按鍵,在示波器上顯示對(duì)應(yīng)的波形。
6、結(jié)論
通過上述仿真結(jié)果可以得出,基本上滿足題目要求的輸出四種波形,并能夠改變輸出波形的頻率以及幅度功能。也側(cè)面說明僅使用八位的相位累加器能夠滿足課題的條件,本系統(tǒng)采用的波形數(shù)據(jù)為8*255的數(shù)據(jù),四片ROM依次放入四種波形的數(shù)據(jù)。當(dāng)然,通過改變波形ROM的波形數(shù)據(jù),我們可以設(shè)計(jì)出輸出任意波形的信號(hào)發(fā)生器,相位累加器也可以進(jìn)行改進(jìn),比如用24位的累加器,增加波形的采樣點(diǎn)數(shù),那么輸出波形的失真度將會(huì)大大降低。
任何事情都不能一蹴而就的,畢業(yè)設(shè)計(jì)也是。在設(shè)計(jì)信號(hào)發(fā)生器的這段時(shí)間遇到了很多難題。首先就是對(duì)仿真軟件的陌生;選擇系統(tǒng)方案是的糾結(jié),起初是想是代碼實(shí)現(xiàn)波形的輸出,三角波、方波等都是線性函數(shù),我們可以編寫函數(shù),在時(shí)鐘的作用下累加,頻率控制字改變時(shí)鐘頻率,進(jìn)而改變輸出波形的頻率;設(shè)置一個(gè)最大值,幅度控制字改變最大值,累加值大于最大值就重新開始,但是最后由于正弦波信號(hào)時(shí)非線性的,而且使用這個(gè)函數(shù)法會(huì)造成比較大的波形失真,選擇放棄。第三就是仿真遇到的問題,在頂層模塊波形仿真時(shí),對(duì)各個(gè)輸入端已經(jīng)設(shè)置好了對(duì)應(yīng)的輸入,但是仿真結(jié)果是沒有輸出,復(fù)查了每個(gè)模塊,沒有找到原因。經(jīng)過不斷的嘗試后,把波形仿真的input 設(shè)置為功能仿真,并創(chuàng)建功能網(wǎng)表,才輸出正確的結(jié)果。最后在鎖定引腳,下載程序后,使用邏輯解析儀顯示設(shè)計(jì)的輸出波形,但是并沒有接觸過signalTapII,在硬件測試過程中產(chǎn)生了種種問題。不得已去論壇找資料自學(xué),終究使signalTapI顯示出正弦波、三角波、方波和鋸齒波。達(dá)到了預(yù)先的目標(biāo),證明了系統(tǒng)的準(zhǔn)確性。
在本次設(shè)計(jì)中也讓我感受到了硬件描述語言覆蓋面廣、描述能力強(qiáng)以及使用方便、便于修改的特點(diǎn),本設(shè)計(jì)也具有一定的實(shí)用價(jià)值。因?yàn)橹饕龅氖擒浖抡?,在具體硬件實(shí)現(xiàn)過程中由于器件本身存在的誤差,影響了波形采樣,致使最后輸出的波形略有失真,也側(cè)面反映了軟件和硬件必須要有良好的結(jié)合。

怎么csdn貼一張圖片這么麻煩啊?。。。。。。。。。。。?!
代碼就不放了,完全適用野火fpga征途開發(fā)板25_DDS
傳送門:https://doc.embedfire.com/products/link/zh/latest/index.html文章來源地址http://www.zghlxwxcb.cn/news/detail-752501.html

到了這里,關(guān)于fpga課設(shè)-多功能信號(hào)發(fā)生器的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • FPGA實(shí)驗(yàn)五:信號(hào)發(fā)生器設(shè)計(jì)

    目錄 一、實(shí)驗(yàn)?zāi)康?二、設(shè)計(jì)要求 三、實(shí)驗(yàn)代碼 1.代碼原理分析 2.代碼設(shè)計(jì)思路

    2024年02月12日
    瀏覽(27)
  • 基于FPGA的信號(hào)發(fā)生器(四)

    基于FPGA的信號(hào)發(fā)生器(四)

    ???? 基于FPGA的信號(hào)發(fā)生器的硬件電路通常需要以下組件: FPGA芯片:FPGA芯片是這個(gè)電路的核心部件,用于實(shí)現(xiàn)信號(hào)生成算法和控制邏輯。選擇合適規(guī)模的FPGA芯片以滿足你的信號(hào)發(fā)生器的性能和功能需求。 時(shí)鐘源:信號(hào)發(fā)生器需要一個(gè)穩(wěn)定的時(shí)鐘源,以確定信號(hào)的頻率和采

    2024年04月14日
    瀏覽(19)
  • 基于FPGA的DDS信號(hào)發(fā)生器

    基于FPGA的DDS信號(hào)發(fā)生器

    ? ? 兩個(gè)禮拜前就像寫這個(gè)文檔了,但是一直鴿到現(xiàn)在,主要是人擺了。還有個(gè)技術(shù)上的原因是,我想用串口屏顯示波形,在串口調(diào)試助手上返回的數(shù)據(jù)是對(duì)的,但是發(fā)到串口屏上啥反應(yīng)沒有,人就很麻,如果這個(gè)弄不出來,前面 HMI 串口屏的工程、人機(jī)交互界面就白做了。

    2024年02月06日
    瀏覽(20)
  • FPGA之簡易DDS信號(hào)發(fā)生器設(shè)計(jì)

    FPGA之簡易DDS信號(hào)發(fā)生器設(shè)計(jì)

    設(shè)計(jì)一個(gè)能產(chǎn)生頻率可變、相位可調(diào)的能產(chǎn)生正弦波、三角波、方波、鋸齒波的信號(hào)發(fā)生器。 DDS 是直接數(shù)字式頻率合成器(Direct Digital Synthesizer)的英文縮寫,是一項(xiàng)關(guān)鍵的數(shù)字化技術(shù)。與傳統(tǒng)的頻率合成器相比,DDS 具有低成本、低功耗、高分辨率和快速轉(zhuǎn)換時(shí)間等優(yōu)點(diǎn),

    2024年02月02日
    瀏覽(18)
  • 基于FPGA的信號(hào)發(fā)生器(三角波、方波、正弦波)

    基于FPGA的信號(hào)發(fā)生器(三角波、方波、正弦波)

    目錄 DDS實(shí)現(xiàn)原理 DDS整體設(shè)計(jì)框圖? Quartus II 仿真? modelsim仿真 頂層代碼 DDS(Direct Digital ?Frequency Synthesizer) 直接數(shù)字頻率合成器 ,也可叫DDFS。? DDS是從相位的概念直接合成所需波形的 一種頻率合成技術(shù) 。? 不僅可以產(chǎn)生不同頻率的正弦波,而且可以控制波形的初始相位。? 主

    2024年02月04日
    瀏覽(19)
  • 基于FPGA的簡易 DDS 信號(hào)發(fā)生器的設(shè)計(jì)

    基于FPGA的簡易 DDS 信號(hào)發(fā)生器的設(shè)計(jì)

    DDS 是直接數(shù)字式頻率合成器(Direct Digital Synthesizer)的英文縮寫,是一項(xiàng)關(guān)鍵的數(shù)字化技術(shù)。與傳統(tǒng)的頻率合成器相比, DDS 具有低成本、低功耗、高分辨率和快速轉(zhuǎn)換時(shí)間等優(yōu)點(diǎn),廣泛使用在電信與電子儀器領(lǐng)域,是實(shí)現(xiàn)設(shè)備全數(shù)字化的一個(gè)關(guān)鍵技術(shù)。作為設(shè)計(jì)人員,我們

    2024年02月07日
    瀏覽(40)
  • 可變頻率正弦信號(hào)發(fā)生器的FPGA實(shí)現(xiàn)(Quartus)

    可變頻率正弦信號(hào)發(fā)生器的FPGA實(shí)現(xiàn)(Quartus)

    實(shí)現(xiàn)平臺(tái):Quartus17.1、MATLAB2021a和Modelsim SE-64 10.4 1. 產(chǎn)生一個(gè)完整周期的正弦波信號(hào),并保存為*.mif文件; 2. 設(shè)計(jì)一個(gè)ROM,將正弦波信號(hào)文件初始化如該ROM中; 3. 設(shè)計(jì)一正弦波信號(hào)發(fā)生器,按照讀取步長,產(chǎn)生頻率可變的正弦波信號(hào); 4.編寫測試文件,通過modelsim查看波形。 (

    2024年01月16日
    瀏覽(28)
  • 信號(hào)發(fā)生器:Intel FPGA DDS(NCO)+雙路DAC(AD9767)輸出正余弦信號(hào)

    信號(hào)發(fā)生器:Intel FPGA DDS(NCO)+雙路DAC(AD9767)輸出正余弦信號(hào)

    Quartus18.1 小梅哥AC620開發(fā)板+ACM9767模塊 示波器 ACM9767模塊使用的是ADI公司的AD9767芯片,14位CMOS 雙通道DAC,125Msps轉(zhuǎn)換率。 輸出形式為差分電流輸出,輸出電流滿量程范圍為可設(shè)置為 2~20mA。 AD9767的兩路DA輸出都為補(bǔ)碼形式的電流輸出IoutA和IoutB。當(dāng)AD9767數(shù)字輸入為滿量程時(shí)(DAC的

    2024年03月24日
    瀏覽(19)
  • FPGA學(xué)習(xí)任意波函數(shù)信號(hào)發(fā)生器的設(shè)計(jì)(基于quartus II13.0)

    FPGA學(xué)習(xí)任意波函數(shù)信號(hào)發(fā)生器的設(shè)計(jì)(基于quartus II13.0)

    平臺(tái): quartus II 13.0 仿真:signal tap II 語言:VHDL 方式:原理圖bdf輸入 芯片:Cyclone IV E: EP4CE6E22C8 設(shè)計(jì)一任意波函數(shù)信號(hào)發(fā)生器,具備以下兩功能: ①能輸出標(biāo)準(zhǔn)正弦波波形。 ②能輸出任意函數(shù)波形。 首先明確實(shí)驗(yàn)用到的宏模塊操作是在tool——MeGaWizard Plug-In Manager中(如下圖)

    2024年02月03日
    瀏覽(45)
  • FPGA實(shí)驗(yàn)報(bào)告 Verilog HDL:7人表決器 巴克碼信號(hào)發(fā)生器 FPGA數(shù)字時(shí)鐘

    寫在前面:本文提供以下三個(gè)任務(wù)的思路講解和代碼實(shí)現(xiàn), 如需參考引腳配置說明,可以點(diǎn)擊下方鏈接跳轉(zhuǎn)查看完整實(shí)驗(yàn)報(bào)告 ;本實(shí)驗(yàn)使用的是Altera公司的cycloneⅢ類型的芯片。 Verilog HDL實(shí)現(xiàn):7人表決器 信號(hào)發(fā)生器 多功能數(shù)字時(shí)鐘 實(shí)驗(yàn)?zāi)繕?biāo):實(shí)現(xiàn)7人投票表決電路,支持人

    2024年02月05日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包