这段个5.5分频的代码:
module fenpin55 (clk_in,clr,clk_out);
input clk_in;
input clr;
output reg clk_out;
reg clk1;
wire clk2;
integer count;
xor xor1(clk2,clk_in,clk1);
always@(posedge clk_out or negedge clr)
begin
if (~clr)
begin
clk1<=1'b0;
end
else
clk1<=~clk1;
end
always @(posedge clk2 or negedge clr )
begin
if (~clr)
begin
count<=0;
clk_out<=0;
end
else if(count==5)
begin
count<=0;
clk_out<=1;
end
else
begin
count<=count+1;
clk_out<=0;
end
end
endmodule
这是仿真结果:
问题来了:在最后一个always语句中clk2作为敏感信号并未发生变化,但是输出信号clk_out却发生了变化。这究竟是发生了什么~~ 求解答
|
|