请帮助了解一些与时间刻度相关的模拟器行为。 这是我的顶级模块:
module top;
//timeunit 1ns;
//timeprecision 1ps;
bit clk_62p5; // PCI write clock
always
#8 clk_62p5++;
DPSRAM_64X4096 u_MEM (
.clka(clk_62p5),
….
);
…
endmodule
`timescale 1 ns/1 ps
module DPSRAM_64X4096 (…);
…
endmodule
这是我的模拟脚本:
irun \
…
-timescale 1ns/1ps \
…
因此,当我运行模拟时,我发现clk_62p5
时钟周期是16ps而不是16ns。
你能解释为什么我有这样的行为吗?
第二个问题,timeunit,timeprecision和timecale有什么区别?
由于 Hayk酒店
答案 0 :(得分:1)
回答你的第二个问题: