Verilog中的timescale
来源:互联网 发布:捷易通软件官方网站 编辑:程序博客网 时间:2024/06/06 06:40
在Verilog HDL 模型中,所有时延都用单位时间表述。使用`timescale
编译器指令将时间单位与实际时间相关联。该指令用于定义时延的单位和时延精度。
`timescale编译器指令格式为:
timescale time_unit / time_precision
- time_unit 单位时间
- time_precision 时间精度
time_unit 和time_precision 由值1、10、和100以及单位s、ms、us、ns、ps和fs组成。
`timescale 1ns/ 100ps module AndFunc (Z, A, B); output Z; input A, B; and # (5.22, 6.17 ) Al (Z, A, B); //规定了上升及下降时延值。 endmodule
编译器指令定义时延以ns为单位,并且时延精度为 0.1 ns(100 ps)。因此,时延值(#5.22)即代表5.22ns,5.22对应5.2 ns, 时延6.17对应6.2 ns。如果用如下的`timescale程序指令代替上例中的编译器指令,
`timescale 10ns/1ns
则基础的时间单位为10ns,精度1ns。5.22代表52.2ns,固定到精度上就是52ns。同理,6.17转换为62ns。
在编译过程中,timescale指令影响这一编译器指令后面所有模块中的时延值,直至遇到另一timescale指令或resetall指令。当一个设计中的多个模块带有自身的`timescale编译指令时将发生什么?在这种情况下,模拟器总是定位在所有模块的最小时延精度上,并且所有时延都相应地换算为最小时延精度。
在verilog中是没有默认timescale的。一个没有指定timescale的verilog模块就有可能错误的继承了前面编译模块的无效timescale参数。所以在verilog的LRM中推荐在每个module的前面指定timescale,并且相
resetall来确保timescale的局部有效。
应的在最后加一个
- verilog中的timescale
- verilog中的timescale用法
- Verilog中的timescale
- verilog中的timescale
- verilog中的timescale用法
- verilog中的timescale的解析
- verilog里的timescale以及国际单位制前缀
- `timescale
- Timescale
- timeScale
- TestBench中的timescale 时间延迟与时间精度
- TestBench中的timescale 时间延迟与时间精度
- Verilog中的内存建模
- Verilog中的函数
- verilog中的initial语句
- verilog中的点滴
- Verilog HDL中的标识符
- verilog中的task用法
- 第一次放生,感觉很奇妙
- 死锁
- 关于构造函数的两三事
- JZOJ.4301[NOIP2015模拟11.3]备用钥匙 解题报告
- Linux编程中如何避免出现僵尸进程
- Verilog中的timescale
- 完全二叉树和满二叉树的区别+完全二叉树求节点问题
- 基于ISE的设计实现基础
- bzoj 2038: [2009国家集训队]小Z的袜子(hose) 【莫队算法】
- 发放订单以便挑库时,点击立即执行,系统自动触发请求“挑库选择列表生成”出现错误
- 关于ubuntu12.04.1上修改MySQL的my.cnf参数配置文件问题
- 鸟哥私房菜linux基础学习笔记 4
- Verilog的testbench入门
- 势篇