zoukankan      html  css  js  c++  java
  • always语言指导原则

    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数字系统设计教程(夏宇闻)

  • 相关阅读:
    做题总结
    关于SQLSERVER中用SQL语句查询的一些个人理解
    关于SQLSERVER联合查询一点看法
    C#中怎样实现序列化和反序列化
    java内部类的使用
    C#抽象类
    匿名类
    Foreach能够循环的本质
    C#索引器
    深入了解接口的使用
  • 原文地址:https://www.cnblogs.com/qidaiymm/p/4902995.html
Copyright © 2011-2022 走看看