目錄
一、前言
二、工程設(shè)計
2.1?設(shè)計代碼
2.2 綜合結(jié)果
?2.3 仿真結(jié)果
一、前言
????計數(shù)器是較為基礎(chǔ)的邏輯,很多其他邏輯可依靠計數(shù)器實現(xiàn),如控制器,分頻。原理為通過統(tǒng)計時鐘脈沖的個數(shù)來輸出計數(shù)值。
二、工程設(shè)計
2.1?設(shè)計代碼
工程設(shè)計以計數(shù)20的計數(shù)器為例
module Counter(clk,out,rst);
input clk,rst;
output reg [5:0] out;
always@(posedge clk,negedge rst)
begin
if(!rst)
out<=6'b0;
else if(out==6'd19) //此處設(shè)置計數(shù)值,因為計數(shù)輸出從0開始,因此如果計數(shù)20,則計數(shù)到19即結(jié)束
out<=6'b0;
else
out<=out+1'b1;
end
endmodule
測試代碼
module Counter_tb( );
reg clk,rst;
wire [5:0] out;
initial
begin
rst=1;
clk=0;
#50 rst=0;
#30 rst=1;
end
always #1 clk=~clk;
Counter Counter_test(.clk(clk),.rst(rst),.out(out));
endmodule
2.2 綜合結(jié)果
綜合后的網(wǎng)表可知,6位的計數(shù)器由6個LUT和6個FF實現(xiàn),多余的一個連接到rst的LUT1是用于取反,因為rst低電平復(fù)位
?2.3 仿真結(jié)果
下圖仿真中,計數(shù)輸出out在計數(shù)到19后從0開始,符合預(yù)期文章來源:http://www.zghlxwxcb.cn/news/detail-700474.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-700474.html
到了這里,關(guān)于Verilog基礎(chǔ)之十、計數(shù)器實現(xiàn)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!