微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > Verilog或者VHDL中的细节问题

Verilog或者VHDL中的细节问题

时间:10-02 整理:3721RD 点击:
请问,在 硬件描述语言中,
①  y=a+b+c+d;(“+”为或操作)
②  x=a+b
     z=c+d
     y=x+z
这两种描述的 延迟 有区别吗?
推荐 使用 那种 描述!?

如果是4个输入的话, 我个人觉得1比较好. 原因在<深入浅出玩转 FPGA 吴厚航 特权同学 高清完整版 329页 书签版>里有说明~求指点~

Y=(A+B)+(C+D)
这样比较好,3级变2级,速度得到提升

这位大哥,能不能 指点下 ,大概 在这本书的 第几章?


30页

這就是要考慮到合成後的timing跟resource 的問題了

如果是组合逻辑,在rtl是有区别,真正到了map后,都是用一个4四输入lut来时序,所以时序没有区别。如果是时序逻辑,和pipeline有关,应该用阻塞语句。

从综合的角度看,建议使用第二种表达方式。主要是timing比较好,还有使用的加法器输入位宽小。还有就是资源复用的考虑。

学习了,谢谢!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top