提高 IC 设计中数字逻辑速度的六种方法
出处:维库电子市场网 发布于:2023-02-25 17:00:40
综上所述,芯片的功耗和性能成反比,设计人员在为芯片编写逻辑时需要找到功耗和性能的平衡点。如前所述,芯片的速度方面对于某些应用来说是必不可少的。因此,在为此类应用程序开发逻辑时,某些方法可以通过小的逻辑优化来提高设计速度。在本文中,我们将介绍可以提高芯片设计速度的提示和技巧。
重新格式化逻辑表达式
有时,我们可以通过改变我们编写逻辑的方式来提高电路的性能。下面的图 1显示了一个这样的例子。尽管这两种代码执行相同的功能,但合成器工具以不同的方式合成这两种代码。它会影响电路的延迟。
ISE和Spartan6系列FPGA被用来分析时序性能。
图 2代码 1 的原理图显示在顶部,代码 2 的原理图显示在底部。
结论:图 3的时序分析表明,对于相同的逻辑,我们通过在右侧放置括号获得的总延迟减少了电路延迟。因此,它将提高电路的速度。
使用
提高电路时序性能的另一种方法是使用流水线寄存器。通过在它们之间添加寄存器,将长组合逻辑分解为多个单元。由于数据路径逻辑中的附加寄存器
图 4代码 3(左)和代码 4(右)具有相同的功能,但代码 4 具有流水线寄存器而代码 3 没有。
图 5在代码 3(左)和代码 4(右)的延迟比较中,电路 4 的速度优于电路 3 的速度。
结论:从图 5中可以明显看出,带有流水线寄存器的电路的速度远远高于没有流水线寄存器的电路的速度。流水线增加了延迟和面积,但也增加了操作频率。因此,当性能是标准时,它应该是。
将慢速信号放在数据路径逻辑的末尾
解决长路径问题的另一种方法是将慢的信号带到逻辑的所有路径。例如,Z = A & B & C & D 可以重新排列为 Z = ( A & C & D ) & B。这确保了信号 B 在合成完成后一路回到逻辑,有助于减少逻辑的整体延迟。
高层代码
将加法器和乘法器等算术运算留给综合工具在设计中实现通常是个好主意。在较低级别进行设计可能会导致时序问题,因此应尽可能留给合成器。
当在高层编写 RTL 代码时,加法器、时钟域交叉单元、乘法器和时钟门控单元等常用逻辑块是在使用 Synopsys DC 的 DesignWare 库的帮助下实现的。并且应该注意合成器很容易理解编写的 RTL 代码。这将产生高质量的网表。在设计中使用状态机并实现良好的层次结构将使综合结果更好。
执行合成时放宽区域限制
减少区域限制将有助于合成器工具在提供的库信息中查找与标准 VT (SVT) 单元不同的单元。更快的单元 (LVT) 有助于减少逻辑延迟,但会增加面积和功耗。在综合期间增加编译器工作将允许综合工具在生成网表之前尝试不同的组合和替换。的缺点是它增加了编译时间。
在严格的时序约束下执行综合
综合的周期时间比目标周期时间短,以确保综合工具更加努力地优化长数据路径。由于金属电容在布局和布线之前无法获得,因此综合后获得的时序分析只是一种估计。在较低的时钟周期时间运行综合可抵消后端过程中后期获得的金属电容和其他寄生效应。
遵循这些方法将有助于减少设计中的延迟并使设计以更高的频率运行。
Deekshith Krishnegowda 是 Marvell Technology 圣克拉拉办事处的 IC 设计工程师。他拥有圣何塞州立大学电气和电子工程硕士学位。
版权与免责声明
凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,//domainnameq.cn,违反者本网将追究相关法律责任。
本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。
如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。
- AD595芯片详解与技术特征2025/6/26 17:08:33
- TL431和AZ431有区别吗2025/6/20 16:51:24
- 瑞萨触摸芯片低功耗功能的多元应用2025/6/18 16:11:39
- 高温 IC 设计关键:深度剖析高结温的五大挑战2025/6/18 15:44:32
- 2.5V/9V/12V/24V输出5V/12V降压线性恒流芯片H7304A低压差低耗2025/6/16 11:30:27