卖萌大胖胖 发表于 2014-7-13 12:44:53

用小数分频法做的时钟分频在modelsim仿真中没有输出

如题,
用小数分频写的verilog程序如下:

module clk2(reset,clk,clkout);
input reset ,clk;
output clkout;
reg clkout,delete;
always@(posedge clk)
begin:control
integer count;
if(reset==1'b0)
begin
count=0;
delete=1'b0;
end
else
begin
count=count+27;
if(count>=50)
begin
count=count-50;
delete=1'b0;
end
else
delete=1'b1;
end
end
always @(delete)
begin
    if(delete==1'b1)
       clkout=1'b1;
       else
       clkout=clk;
end
endmodule       

编写的testbench程序为


`timescale 1ns/1ns
module test;
wire clko;
reg rst,clki;
clk2 m (.reset(rst),.clk(clki),.clkout(clko));
initial begin rst=1;clki=0;#7 rst=0; #7 rst=1;
end
always #5clki=~clki;
endmodule

在modelsim中运行之后输出时钟一直是1,不知道为什么,求大神解答。

熊伟 发表于 2016-4-13 21:38:11

我也是这个问题。。。

陈飞龙 发表于 2016-4-14 10:00:20

initial begin rst=1;clki=0;#7 rst=0; #7 rst=1;
end
你把这个改成
initial begin rst=0; clki=0; #100 rst=1;
end
页: [1]
查看完整版本: 用小数分频法做的时钟分频在modelsim仿真中没有输出