当前位置:   article > 正文

Verilog HDL(五):组合逻辑(always和assign)与时序逻辑_verilog 组合逻辑 时序逻辑

verilog 组合逻辑 时序逻辑

组合逻辑

1.概念:从电路本质上讲,组合逻辑电路的特点是输出信号只是当前时刻输入信号的函数,与其他时刻的输入状态无关,不涉及信号跳变沿的处理。无存储电路,也没有反馈电路。

2.描述:

(1)always模块的触发事件为电平敏感信号电路 :always模块中的信号必须定义为reg。

例:实现一个两输入比较器,输入分别为d1,d2,输出为f1,f2,f3。 

  1. module compare_demo(
  2. d1,d2,f1,f2,f3
  3. );
  4. input[7:0]d1,d2;
  5. output f1,f2,f3;
  6. reg f1,f2,f3;
  7. always @ (d1,d2)begin
  8. if(d1>d2)
  9. f1=1;
  10. else
  11. f1=0;
  12. if(d1=d2)
  13. f2=1;
  14. else
  15. f2=0;
  16. if(d1<d2)
  17. f3=1;
  18. else
  19. f3=0
  20. end
  21. endmodule

(2)assign语句描述的电路:利于条件“?”可以描述一些相对简单的组合逻辑电路,信号只能被定义为wire型,必须用阻塞语句。当组合逻辑比较复杂时,代码的可读性就差。

  1. module compare_demo(
  2. d1,d2,f1,f2,f3
  3. );
  4. input di,d2;
  5. output f1,f2,f3;
  6. reg f1,f2,f3;
  7. assgin f1=(d1>d2)?1:0;
  8. assgin f1=(d1==d2)?1:0;
  9. assgin f1=(d1<d2)?1:0;
  10. endmodule

(3)仿真

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/613952
推荐阅读
相关标签
  

闽ICP备14008679号