verilog设计过程寄存器使用#1的问题

您所在的位置:网站首页 verilog语言~什么意思 verilog设计过程寄存器使用#1的问题

verilog设计过程寄存器使用#1的问题

2024-07-12 15:27| 来源: 网络整理| 查看: 265

verilog代码中使用#1延迟

有这样子的一种“神话”,为了修正非阻塞赋值的问题,要求加上#1 delay。因此在一般的非阻塞赋值中经常会看到#1的延迟,工程师的解释是为了防止非阻塞赋值奔溃。实际上,加不加#1都不会导致非阻塞赋值奔溃!在非阻塞赋值的RHS加#1延迟,既有好的原因,也有很多坏的原因。

好的原因1:在非阻塞赋值上加#1,输出变化会有一个时间单位的延迟,便于查看波形。例如,看一下下面的寄存器模型:

`timescale 1ns/1ns module delay_test ( q , d , clk , rst_n); input clk , rst_n; input d; output reg q; always@(posedge clk or negedge rst_n) begin if(!rst_n) q


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3