five_divider.v
来自「verilog代码集锦.rar」· Verilog 代码 · 共 75 行
V
75 行
//*************************************
// file name :five_divider
// author :yilong.you
// date :October 12,2008
//*************************************
module five_divider( clk,
reset,
clk_out );
input clk ;//input clk
input reset ;//input reset
output clk_out ;//output clk
reg [2:0]i,j;
reg clk1,clk2;
assign clk_out=clk1|clk2;
always@(posedge clk or negedge reset)begin
if(!reset)begin
clk1<=0;
i<=0;
end
else if(i==3)begin
clk1<=~clk1;
i<=i+1;
end
else if(i==5)begin
clk1<=~clk1;
i<=1;
end
else i<=i+1;
end
always@(negedge clk or negedge reset)begin
if(!reset)begin
clk2<=0;
j<=0;
end
else if(j==3)begin
clk2<=~clk2;
j<=j+1;
end
else if(j==5)begin
clk2<=~clk2;
j<=1;
end
else j<=j+1;
end
endmodule
`timescale 1ns/1ns
module five_divider_tb;
reg clk,reset;
wire clk_out;
always #1 clk=~clk;
initial begin
clk=0;
reset=1;
#1 reset=0;
#2 reset=1;
#100$stop;
end
five_divider c1(.clk(clk),.reset(reset),.clk_out(clk_out));
endmodule
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?