verilog實現計數器

2021-07-15 09:59:52 字數 822 閱讀 4736

/*********在閘門時間內對clk脈衝個數進行計數*************/

module cnt(clk,gate,cntout);

input clk;

input gate;

output [19:0] cntout ;

reg [19:0] cnt,cntout;

reg gatebuf;

always @(posedge clk)

begin

gatebuf<=gate;

endalways @(posedge clk)

begin

if((gate==1

'b1)&&(gatebuf==1

'b0))//門訊號的上公升沿

begin

cnt<=20

'd1;//開始計數

endelse

if((gate==1

'b0)&&(gatebuf==1

'b1))//門訊號的下降沿

begin

cntout<=cnt;//輸出計數結果

endelse

if(gatebuf==1

'b1)//門訊號保持高電平期間

begin

cnt<=cnt+20

'd1;//增1計數

endendendmodule

**結果

可以看出,在閘門時間內,脈衝個數為8,輸出計數結果正確

使用Verilog實現FPGA計數器功能

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

使用Verilog實現FPGA計數器功能

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

Verilog設計解碼器 計數器

實驗1 設計4 16解碼器 1.module decoder4 16a out,in output 15 0 out input 3 0 in reg 15 0 out out為16位暫存器 always in 迴圈輸入 begin case in 輸入4位十進位制數,輸出16位二進位制數 4 d0...