你这个仿真时间要太长了,你最好吧代码里面的那些秒缩小。要不1秒根本不知道跑到什么时候。你的小时信号呢?难道你要运行个几个小时?
MAX_second ,MAX_minute,MAX_hour 多改小,这样仿真会很快出来,不改也无所谓,我testbench 运行1秒就停,之后你就一直运行吧,运行几个小时吧。
testbench 如下:
`timescale 1ns / 1ns
////////////////////////////////////////////////////////////////////////////////
// Company:
// Engineer:
//
// Create Date: 09:54:43 05/30/2013
// Design Name: Clk
// Module Name: D:/AC/ISE/Clk/Clk_test.v
// Project Name: Clk
// Target Device:
// Tool versions:
// Description:
//
// Verilog Test Fixture created by ISE for module: Clk
//
// Dependencies:
//
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
//
////////////////////////////////////////////////////////////////////////////////
module Clk_test
// Inputs
reg clk
reg rst_n
// Outputs
wire clk_second
wire clk_minute
wire clk_hour
// Instantiate the Unit Under Test (UUT)
Clk uut (
.clk(clk),
.rst_n(rst_n),
.clk_second(clk_second),
.clk_minute(clk_minute),
.clk_hour(clk_hour)
)
parameter clk_period = 4'd10
initial begin
clk = 0
forever #(clk_period) clk = ~clk//100M 时钟信号
end
initial begin
// Initialize Inputs
rst_n = 0
// Wait 100 ns for global reset to finish
#100
rst_n = 1
// Add stimulus here
#1_000_000_000 $stop // 跑1秒就停止
end
endmodule
这就是一段textbench,将激励加到module端口上 主要看altsyncram altsyncram_component后边 ,括号里边是激励 括号前边是module端口 么么哒前仿真是功能仿真,不带时延的仿真。后仿真是带时延的仿真。
一般做fpga设计,只要进行前仿真即可,后仿真要做的事情,由写给fpga的时序约束文件来保证。
后仿真一般芯片设计的时候用的多些。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)