文章目录
- Overview
-
- 时间线简单示意
Overview
我们来详细分析下面这段 RTL Code , sbcs_sbbusy
为什么会比 sbcs_sbbusy_nx
慢一拍(晚一个时钟周期变化)。
assign sbcs_sbbusy_nx = set_sbcs_sbbusy;
always @(posedge clk or negedge dmi_resetn) begin
if (!dmi_resetn) begin
sbcs_sbbusy <= 1'b0;
end
else begin
sbcs_sbbusy <= sbcs_sbbusy_nx;
end
end
如上代码所示:
-
sbcs_sbbusy_nx
是 组合逻辑 ,通过assign
直接连接到set_sbcs_sbbusy
-
sbcs_sbbusy
是 寄存器(reg) ,是通过 posedge clk (时钟上升沿)触发赋值的同