Verilog: #1 Delay in RTL Designs

本文讨论了在RTL设计中如何处理延迟,特别是针对移位寄存器的时序要求。解释了建立时间、保持时间、时钟到Q延迟、污染延迟和传播延迟的概念。介绍了0延迟和非0延迟RTL分区在混合设计中的挑战,以及如何通过在Verilog中添加延迟来模拟电路的时钟到Q行为,以确保满足门级模型的保持时间要求。
摘要由CSDN通过智能技术生成

今天我想分享一些关于RTL#1延误的事情。有时,我们通过为每个非阻塞分配提供显式延迟来对设计进行建模。这样做有几个原因。

让我们看一下一个简单的移位寄存器,其传输延迟#1如下:

`timescale 1ns/1ns
`ifdef ADD_DLY
`define DLY 1
`else
`define DLY 0
`endif

module shift_reg(input d,clk,reset,output reg q);
reg a,b,c;


always @ (posedge clk or posedge reset) begin
if (reset) begin
q <= `DLY 'h0;
end
else begin
a<= #`DLY d;
b<= #`DLY a;
c<= #`DLY b;
q<= #`DLY c;
end
end

endmodule

这是一个4 位移位寄存器 ,如下所示:
 

移位寄存器

实际的电路行为会有很多的setup和hold timing限制,情况如下:

  • The setup time is the interval before the clock where the data must be held stable
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

babydream520

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值