对于绘制硬件图时如何解释阻塞和非阻塞分配,我有些困惑。我们是否必须推断出非阻塞分配会给我们一个寄存器?那么根据此陈述c <= a+b ,c将是注册权,而不是a和b?module add (input logic clock,  output logic[7:0] f);   logic[7:0] a, b, c;  always_ff @(posedge clock)  begin     a = b + c;     b = c + a;     c <= a + b;  end   assign f = c;  endmodule
                    
                    
                3 回答
                            慕森王
                            
                                
                            
                        
                        
                                                
                    TA贡献1777条经验 获得超3个赞
传统的Verilog智慧全都错了。使用阻塞分配给局部变量没有问题。但是,切勿将阻塞分配用于同步通信,因为这是不确定的。
时钟总是块内的非阻塞分配将始终根据语义来推断触发器。
时钟内的阻塞分配是否始终阻塞会触发触发器,这完全取决于其使用方式。如果可以在分配变量之前读取该变量,则将推断出一个触发器。否则,这就像一个临时变量,它将导致一些组合逻辑。
- 3 回答
 - 0 关注
 - 736 浏览
 
添加回答
举报
0/150
	提交
		取消
	