2015-02-18 62 views
1

我需要划分两个延迟参数值,这两个参数值在ps之间。结果必须是整数值。我尝试了下面的代码,但结果不正确。 N,我在编译/阐述时需要的参数需要计算到60。链接上edaplayground对时间值的数学运算

module test #(parameter delay=3000ps, unitDelay = 50ps, integer N=$ceil(delay/unitDelay)) 
        (input logic L, output logic R); 

    initial begin 
      $display ("delay=%d, unitDelay=%d, N=%d", delay, unitDelay, N); 
      $display ("delay=%t, unitDelay=%t, N=%d", delay, unitDelay, N); 
     end 
endmodule 

回答

2

的问题是全局的时间表是1ns,所以unitDelay将为0。所以,你要么需要让你的时间表1ps,或者改变您的参数类型real