在此提供一个三分频电路,自我认为老师所提供的这种写三分频电路的方法很值得学习,让我走出了 写分频电路就是检测时钟的边沿 的误区。
设计模块儿:
// clk_3_fenpin.v
module clk_3_fenpin (rst,clk,clk3);
input rst,clk;
output clk3;
wire clk3;
reg [2:0] sel;
assign clk3=sel[0];
always @ (posedge clk or posedge rst)
begin
if(rst)
sel<=3'b001;
else
case(sel)
3'b001 : sel<=3'b010;
3'b010 : sel<=3'b100;
3'b100 : sel<=3'b001;
endcase
end
endmodule
测试激励:
`timescale 1ns/100ps
module clk_3_fenpin_tb;
reg rst;
reg clk;
wire clk3;
clk_3_fenpin U(.rst(rst),
.clk(clk),
.clk3(clk3)
);
initial
clk=1'b1;
always #6 clk=~clk;
initial
begin
// rst=1'b0;
rst=1'b1;
#5 rst=1'b0;
end
endmodule
阅读(1423) | 评论(0) | 转发(0) |