Verilog 延时模型

本文详细介绍了Verilog中的延时模型,包括Net类型声明中的Netdelay和连续赋值过程中的延时。Netdelay允许指定上升沿、下降沿和高阻态的延时,而连续赋值延时则涉及赋值操作的延迟时间。过程赋值延时分为语句前和语句中的延时控制,影响赋值执行的时间点。文章通过实例解析了各种延时情况及其在仿真中的表现,有助于理解Verilog中的延时机制。

关于Verilog 延时模型的学习笔记。

1 连续赋值延时

给连续赋值的延时值指定了 赋值运算符右侧操作数数值改变 到 左侧操作数完成赋值 需要的时间。
变为上升沿、下降沿、高阻态的延时可以配置为不同值。

需要区分两种延时赋值:

  1. 为连续赋值语句指定延时值。延时是连续赋值的一部分。
  2. 在net声明时指定的Net delay,然后对net进行连续赋值。

1.1 Net类型声明中的定义延迟(Net delay)

IEEE Verilog 2005标准的 Net 类型定义语法:

在这里插入图片描述

每个net最多可以指定3个延时值,对于gate和net来说,当没有给定延时值,默认值default delay为0。其他情况:

  • 当给定一个延时值,这个延时指定所有传播延时。
  • 当给定两个延时值,第一个值指定上升沿延时,第二个值指定下降沿延时。信号变为高阻抗或未知时的延迟应为两个延迟值中较小的一个。
  • 当给定三个延时值:
    • 第一个延时值用于转变为1的情况(上升沿延时)
    • 第二个延时值用于转变为0的情况(下降沿延时)
    • 第三个延时值用于转变为高阻态的情况。

例子:

and #(10) a1 (out, in1, in2); // only one delay
and #(10,12) a2 (out, in1, in2); // rise and fall delays
bufif0 #(10,12,11) b3 (out, in
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ChipWeaver

觉得有用的话点个赞吧 :)

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值