Verilog分频器及彩灯

彩灯循环可通过计数器来实现:如当计数值为1时,out(out为8位寄存器)为00000001,为计数值为2时,out为00000010,……等等,通过对out的控制可实现多种彩灯循环方案的设计。

module div12(clk_in,reset,clk_out);
input clk_in,reset;
output clk_out;
reg[3:0] clk_temp;
assign clk_out = (clk_temp=11)?1:0;
always@(posedge clk_in)

if(~reset)

begin clk_temp=0;end

else if(clk_temp=11)

clk_temp=0;

else
begin
clk_temp = clk_temp + 1;
end

endmodule

二分频

module div_fre(clk_in,clk_out);
input clk_in;
output clk_out;
reg clk_out;
always @(posedge clk_in)
begin
clk_out = ~clk_out;
end
endmodule

module div2(clk_in,clk_out);
input clk_in;
output clk_out;
reg clk_temp;
assign clk_out = clk_temp;
always@(posedge clk_in)
begin
clk_temp = clk_temp + 1;
end
endmodule

你可能感兴趣的:(Verilog分频器及彩灯)