標題:
分頻器Verilog設計
[打印本頁]
作者:
WeTiGY
時間:
2016-11-25 22:19
標題:
分頻器Verilog設計
本帖最后由 WeTiGY 于 2016-12-4 15:04 編輯
實驗三
分頻器
一、實驗目的
1、掌握分頻器的設計原理;
2、用HDL語言設計分頻器。
二、實驗原理
分頻器與計數(shù)器類似,也是要對時鐘脈沖進行計數(shù),但其輸出的不是對時鐘脈沖個數(shù)的計數(shù)值,而是其頻率與時鐘的頻率成固定比例關系的脈沖信號。整數(shù)分頻是所有分頻器中最簡單,最容易實現(xiàn)的。我們只需要通過計數(shù)器計數(shù)就完全可以實現(xiàn)。如整數(shù)N分頻,就可以通過待分頻的時鐘觸發(fā)計數(shù)器計數(shù)當計數(shù)從0計數(shù)到N/2-1時,輸出時鐘進行反轉,并使計數(shù)器在下一個時鐘從0開始重新計數(shù),如此循環(huán)就可以實現(xiàn)任意的等占空比或占空比近似為50%的整數(shù)分頻。
三、實驗內容
設計一個分頻輸出信號的占空比近似為50%的分頻器,將50MHz輸入時鐘分頻為1Hz時鐘,在試驗箱EXT_B_A1_1
端口輸出,并用示波器觀察輸出波形。
module divider_module
(
CLK,f_Out
);
input CLK;
output f_Out;
parameter T1s=26'd50_000_000;
reg [25:0]Count1;
always @ ( posedge CLK )
if( Count1 == T1s)
Count1 <= 26'd0;
else
Count1 <= Count1 + 1'b1;
reg rf_Out;
always @ ( posedge CLK )
if( Count1 >= 26'd0 && Count1 <= 26'd25_000_000)
rf_Out <= 1'b0;
else
rf_Out <= 1'b1;
assign f_Out = rf_Out;
endmodule
復制代碼
注:使用20分頻仿真
仿真圖:
分頻器.jpg
(20.95 KB, 下載次數(shù): 82)
下載附件
2016-11-25 22:15 上傳
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1