timescale使用

更新时间:2023-07-30 14:57:30 阅读: 评论:0

timescale使⽤
1.timescale的介绍
timescale包含时间单位和时间精度两部分。设定格式为`timescale timeunit / timeprecision
timeunit和timeprecision由值1、10、和100以及单位s、ms、us、ns、ps和fs组成。
2.timescale对相对时间的影响
如果设定`timescale 1ns/1ps,#100是相对时间,等价于#100ns,⽽#100.1111会被认为是#100.111ns,因为它的精度⾼于timescaled的时间精度,⽽被四舍五⼊。
3.timescale的作⽤范围
在编译过程中,`timescale指令影响这⼀编译器指令后⾯所有模块中的时延值,直⾄遇到另⼀个`timescale指令或`retall 指令。
SystemVerilog可以声明⼀个时间单位和精度,这与Verilog-2001中的`timescale编译器指令具有等价的功能。这些声明消除了使⽤编译器指令时对⽂件顺序的依赖性问题。时间单位和精度可以分别使⽤timeunit和timeprecision关键字来声明,但这个时间⽂本值必须是10的幂。
对于任何模块、程序、包或接⼝,或者在任意编译单元作⽤域内,最多只能有⼀个时间单位和⼀个时间精度。这就会定义⼀个时间作⽤域。如果指定了timeunit和timeprecision的话,那么它们应该在任何当前时间作⽤域内其它条⽬之前声明。timeunit和timeprecision声明可以作为后续条⽬重复,但必须与当前时间作⽤域内之前的声明匹配。
如下例⼦中:module A的时间单位/精度是100ps/ 1ps,module B的时间单位/精度是1ns/ 10ps,module C的时间单位/精度是1ps/ 1ps,module D的时间单位/精度是1s/1s
`timescale 1ns / 10ps
module A (...);
大象卡通图片  timeunit 100ps;
  timeprecision 1ps;
endmodule
module B (...);
帅哥头像动漫endmodule
`timescale 1ps/1ps
module C (...);
烧火龙`timescale 1s/1s
endmodule
module D (...);
endmodule
再看⼀个例⼦
`timescale 1ns/1ps
module add(input clk,input a,input b,output bit[1:0] sum);
always@(podge clk)begin
#3;
sum = a+b;
$display("1:time:%t",$realtime);//3300;3.300
$display("2:time:%f",$realtime);//3.300000;3.300000
end
endmodule
`timescale 100ps/10ps
灵官庙
module test();
wire[1:0] get_sum;
reg      input_a = 1;
reg      input_b = 1;
bit      clk;
initial begin
//$timeformat(-9,3,"",5);/*mark1*/
#1;
$display("3:time:%t",$realtime);//100;0.100
$display("4:time:%f",$realtime);//1.000000;1.000000火灾逃生
#2 clk = ~clk;字图设计
锅巴鱿鱼end
add ADD(.clk(clk),.a(input_a),.b(input_b),.sum(get_sum));
endmodule
明月峡古栈道4.使⽤$timeformat和%t统⼀时间单位/精度
timeformat_task ::= $timeformat[(units_number,precision_number,suffix_string,minimum_field_width)]
; 上述例⼦中mark1处注释掉后,打印结果为分号前结果,打开注释后,打印结果为分号后结果。
如果$timeformat没有被调⽤过,这时%t打印的时间单位是所有`timescale中的最⼩time precision

本文发布于:2023-07-30 14:57:30,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/89/1102084.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:时间   单位   精度   指令   声明   编译器   结果
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图