FPGA入門實驗六 計數器 ROM和DDS

2021-08-11 08:03:46 字數 830 閱讀 9586

1.新建工程並新增verilog和bdf檔案,bdf檔案如下圖:

2.rtl圖如下:

3.用signal tap 對out訊號在bus line 模式下觀察:

回答問題:

1)電路的工作頻率是50mhz,正弦波頻率和計數器增量值的對應關係是什麼

答:設增量為m,則正弦波的頻率:f=(m/128)*50mhz

2) 你能得到的最低頻率的正弦波是多少?

答:當計數器的增量為1時,正弦波的週期最長,頻率最小設為f1,則f1=(50/128)mhz

3)能否有什麼方法能夠得到比f1頻率還低的正弦波?

答:可以降低工作電路的頻率,進而降低正弦波的最低頻率。

4)修改計數增量訊號為10位元,把計數值訊號的高7位分配為rom的位址,低3位懸空不使用,撥動撥碼開               關,觀察最低頻率有什麼變化?

答:最低頻率較原來相比會變大,變為原來的8倍,f

min=(400/128)mhz

5)請給出:輸出訊號頻率 和 電路工作時鐘頻率,計數器增量值,以及計數器資料位寬之間的表示式關係

答:假設輸出訊號頻率為f,電路工作頻率為f,計數器增量值為m,計數器資料位寬為n,

f=(m/2^n)xf 

計數器設計實驗

module cnt10 clk,rst,en,load,cout,dout,data input clk,en,rst,load input 3 0 data output 3 0 dout output cout reg 3 0 q1 reg cout assign dout q1 always...

使用Verilog實現FPGA計數器功能

編寫veriloghdl 程式,實現如下功能 利用開發板上的數碼顯示解碼器設計乙個十進位制計數器,要求該計數器具有以下功能 1.計數範圍為 0 20 計算到 20時自動清零,計數間隔時間為1s 2.具有按鍵非同步 同步清零功能 1.用乙個時鐘脈衝,分出兩個頻率,乙個為計數頻率,乙個為掃瞄頻率。2.利...

使用Verilog實現FPGA計數器功能

編寫veriloghdl 程式,實現如下功能 利用開發板上的數碼顯示解碼器設計乙個十進位制計數器,要求該計數器具有以下功能 1.計數範圍為 0 20 計算到 20時自動清零,計數間隔時間為1s 2.具有按鍵非同步 同步清零功能 1.用乙個時鐘脈衝,分出兩個頻率,乙個為計數頻率,乙個為掃瞄頻率。2.利...