码迷,mamicode.com
首页 > 编程语言 > 详细

always语言指导原则

时间:2015-10-22 22:36:59      阅读:262      评论:0      收藏:0      [点我收藏+]

标签:

1、每个always只有一个@(event-expression).

2、always块可以表示时序逻辑和组合逻辑。

3、带有posedge和negedge关键字的是表示沿触发的时序逻辑,没有的表示组合逻辑或者电平敏感的锁存器。或者两者都表示。

4、每个在always快中赋值的信号必须定义成reg型或者整形(integer[<msb> :<lsb> ] identifier)。整形变量默认是32位。

5、always块中应该避免组合反馈回路,always块中的赋值必须是明确的。否则,需要设计者在设计中加入电平敏感的锁存器,来保持赋值前的最后一个值。解释如下:

  //我们不建议这样,你懂的,容易出错。

  input a,b,c;

  reg d,e;

  always@(a or b or c)//电平敏感列表就是a,b,c

    begin

      e=d & a & b;//因为电平敏感列表里面没有d,所以在d变化时,e不能立即变化,要等到a,b,c变化时才能体现出来。也就是相当于存在一个电平敏感的透明锁存器在暂存d的数据。

      d=e|c;

    end

6、把某一信号值赋值为’bx,综合器把它解释成无关状态,综合器生成的硬件电路做简洁。

 

摘自:verilog数字系统设计教程(夏宇闻)

always语言指导原则

标签:

原文地址:http://www.cnblogs.com/qidaiymm/p/4902995.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!