verilog中的timescale

描述:

timescale是Verilog HDL 中的一种时间尺度预编译指令,它用来定义模块的仿真 时的时间单位和时间精度。格式如下:

`timescale 仿真时间单位/时间精度

注意:用于说明仿真时间单位和时间精度的 数字只能是1、10、100,不能为其它的数字。而且,时间精度不能比时间单位还要大。最多两则一样大。比如:下面定义都是对的:

`timescale 1ns/1ps

`timescale 100ns/100ns

//下面的定义是错的:

`timescale 1ps/1ns

时间精度就是模块仿真时间和延时的精确程序,比如:定义时间精度为10ns, 那么时序中所有的延时至多能精确到10ns,而8ns或者18ns是不可能做到的。
在编译过程中,timescale指令影响这一编译器指令后面所有模块中的时延值,直至遇到另一个timescale指令resetall指令。
在verilog中是没有默认timescale的,一个没有指定timescale的verilog模块就有可能错误的继承了前面编译模块的无效timescale参数.

原文链接:https://blog.csdn.net/super_haifeng/article/details/50110371

posted @ 2020-02-04 10:04  friedCoder  阅读(554)  评论(0编辑  收藏  举报