|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
各位达人,我用modelsim仿真时,module文件为divclk3.v,测试文件为tb_divclk3.v。
在project里面,正常显示如下图:
当我仿真的时候,却出现奇怪的事情,那就是tb_divclk3并不包含divclk模块,真是郁闷啊。如下图所示。
有人知道怎么解决这个问题么,若知道就高速我,让我好好努力学习啊。真是谢谢。
后面附上这两个文件的源程序。
divclk3.v文件如下:
- `timescale 1ns/1ns
- `define DLY 0
- `define DLY1 0
- `define DLY2 0
- module divclk3(
- clk_in,
- rst_in,
- clk_out
- );
- input clk_in;
- input rst_in;
- output clk_out;
- reg clk_out;
- reg clk_n;
- reg clk_not;
- reg d1;
- reg d2;
- reg clk_s;
- always @(posedge clk_in or negedge rst_in)begin
- if(~rst_in)
- d1 <= #`DLY 1'b0;
- else
- d1 <= #`DLY clk_not;
- end
- always @(posedge clk_n or negedge rst_in)begin
- if(~rst_in)
- d2 <= #`DLY 1'b0;
- else
- d2 <= #`DLY d1;
- end
- always @(posedge clk_s or negedge rst_in)begin
- if(~rst_in)
- clk_out <= #`DLY 1'b0;
- else
- clk_out <= #`DLY d2;
- end
- always @(clk_out)
- clk_not <= #`DLY1 ~clk_out;
- always @(clk_in)
- clk_n <= #`DLY1 ~clk_in;
- always @(clk_out or clk_in or clk_n)begin
- if(clk_out)
- clk_s <= #`DLY2 clk_in;
- else
- clk_s <= #`DLY2 clk_n;
- end
- endmodule
复制代码
tb_divclk3.v文件如下:
- `timescale 1ns/1ns
- `define DLY 0
- module tb_divclk3;
- reg clk_in;
- reg rst_in;
- wire clk_out;
- divclk3 u_divclk3(
- .clk_in(clk_in),
- .rst_in(rst_in),
- .clk_out(clk_out)
- );
- always #100 clk_in <= ~clk_in;
- initial begin
- rst_in=1;
- clk_in=1;
- #200;
- rst_in=0;
- #200;
- rst_in=1;
- end
- initial begin
- $dumpfile("wave.dump");
- $dumpvars(0,tb_divclk3);
- #100000;
- $stop;
- end
- endmodule
复制代码 |
|