当前位置:首页 > EDA > 电子设计自动化
[导读]对于Verilog HDL的初学者,经常会对语法中的几个容易混淆的地方产生困惑。下面列出几个常见问题和解决它们的小窍门。1.“=”和“<=”的区分方法前面的内容已经从原理上解释了阻塞(=)和非阻塞(<=

对于Verilog HDL的初学者,经常会对语法中的几个容易混淆的地方产生困惑。下面列出几个常见问题和解决它们的小窍门。

1.“=”和“<=”的区分方法

前面的内容已经从原理上解释了阻塞(=)和非阻塞(<=)赋值的区别,但对于初学者来说,在实际应用过程中还会产生一些困惑。下面的方法可以帮助初学者来弄清楚两种赋值符号的应用场合。在always语句中,所有的赋值符号用非阻塞的,即“<=”; 在always语句外,所有的赋值符号用阻塞的,即“=”。

2.“reg”和“wire”的区分方法

reg类型和wire类型是Verilog HDL语法中两种最常用的变量。在对module定义的端口信号进行类型描述的时候,初学者会对何时需要指定为reg型感到困惑。可以参考下面的方法。

(1)如果这个信号需要在always块里面被赋值,那么必须指定为reg类型的。

(2)如果这个信号需要在always块外面被赋值,那么必须指定为wire类型的。如果这个信号是端口信号,那么没默认的类型就是wire类型的,不需要另外指定。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭