FPGA实战演练逻辑篇45:减少关键路径的逻辑等级

2020-02-17 19:50发布

减少关键路径的逻辑等级本文节选自特权同学的图书《FPGA设计实战演练(逻辑篇)》配套例程下载链接:http://pan.baidu.com/s/1pJ5bCtt          下面要列举的代码示例是一些能够起到系统性能提升的代码风格。在逻辑电路的设计过程中,同样的功能,可以由多种不同的逻辑电路来可以实现,那么就存在这些电路中孰优孰劣的讨论。因此,带着这样的疑问,我们也一同来探讨一下几种常见的能够提升系统性能的编码技巧。请注意,本知识点所涉及的代码更多的是希望能够授人以“渔”而非授人以“鱼”,大家重点掌握前后不同代码所实现出来的逻辑结构,在不用的应用场合下,可能会有不同的逻辑结构需求,那么大家就要学会灵活应变并写出适合需求的代码。(特权同学,版权所有)① 减少关键路径的逻辑等级         在时序设计过程中遇到一些无法收敛(即时序达不到要求)的情况,很多时候只是某一两条关键路径(这些路径在器件内部的走线或逻辑门延时太长)太糟糕。因此,设计者往往只要通过优化这些关键路径就可以改善时序性能。而这些关键路径所经过的逻辑门过多往往是设计者在代码编写时误导综合工具所导致的,那么,举一个简单的例子,看看两段不同的代码,关键路径是如何明显得到改善的。(特权同学,版权所有)这个一个简单的例子要实现如下的逻辑运算:y = ((~a & b& c) | ~d) & ~e;他们的运算真值表如表5.2所示。(特权同学,版权所有)表5.2 运算真值表  输入  输出abcdeyxxxx10xxX0011xx100x0x100xx0100011101
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。