Verilog 設(shè)計(jì)初學(xué)者例程一 時(shí)序電路設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
Verilog 設(shè)計(jì)初學(xué)者例程一 時(shí)序電路設(shè)計(jì)
By 上海 無(wú)極可米
12/13/2001
---------基礎(chǔ)-----------
1. 1/2分頻器
module halfclk(reset,clkin,clkout);
input clkin,reset;
output clkout;
reg clkout; //輸出設(shè)為reg
always @(posedge clkin) //上升沿觸發(fā)
begin
if(!reset) clkout=0; //復(fù)位
else clkout=~clkout;
end
endmodule
得到的波形
__--__--__--__--__--__--__--__
_____-----_____-----_____-----_____
-----------提高--------------
2. 1/50分頻
module f50(reset,clkin,clkout);
input clkin,reset;
output clkout;
reg clkout; //輸出設(shè)為reg
reg [7:0] j; //計(jì)數(shù)器
always @(posedge clk) //上升沿觸發(fā)
if(!reset) //低電平復(fù)位。
begin
clkout <= 0;
j <= 0;
end
else
begin
if(j==49) //對(duì)計(jì)數(shù)器進(jìn)行判斷,以確定clkout信號(hào)是否反轉(zhuǎn)。
begin
j <= 0;
clkout <= ~clkout;
end
else
j <= j+1;
end
endmodule
得到的波形
__--__--... __--__--__--__--__--__
50個(gè)clk
__________________________-----------------------
------------進(jìn)階---------------
3. 設(shè)計(jì)習(xí)題
----------
------------------ -------------------
20個(gè)clk 10個(gè)clk 20個(gè)clk
提示:因?yàn)殡娖綖?和0的時(shí)間不等,所以要用兩個(gè)計(jì)數(shù)器。
來(lái)源:0次