●时序漫谈之FPGA/CPLD逻辑布线资源
●影响时序的三个要素
●关于时序我们要检查哪些内容
●通过RTL改善时序的几个技巧之
Block Ram的输出
状态机的编码
DSP模块的使用
●IO寄存器的使用
●寄存器的clock enable
●Fanout对时序的影响
●MUX逻辑
●跨时钟域
●Setup和Hold
●时序漫谈之十四 · 看懂时序报告
时序报告的内容
时序报告告诉了我们什么?
...
在看时序报告的时候,我们经常会遇到很多条约束都不能满足设计要求,而且每条约束都有成百上千的路径有error的情况。遇到这种情况,千万不要心慌,更没有必要分析每一条不满足的路径。我们要清楚以下几点:
在时序报告中,同一个信号可能出现在多条路径上。一个寄存器的输入如果首先进入了一个4输入的组合逻辑,那这个4输入的组合逻辑的输出就出现了4个路径。对一个多级组合逻辑的而言,其路径数量可能是指数级的上升。我们修正了一条关键信号,改善的效果会影响到多个数据路径。
修正了一个时序问题可能会暴露出隐藏的其它时序问题,这个只有在改善前一个时序的基础上才能发现。
各个时序约束之间由于布线资源的原因会相互影响的。当你改善了一条约束的时序,由于这个修改释放了更多的布线资源,反过来有助于其它约束更容易满足。
因此我们在做STA的时候,一般先修正前1-2个关键路径,然后重新运行布局布线,根据新的时序报告再做相应的修改。如此来来回回的迭代,最终实现时序的收敛。所谓心急吃不了热豆腐,一口吃不成胖子。做STA的过程就像中美谈判,你不能一下子就满足对方的所有要求,那样他不知道又要出什么幺蛾子。逐步的满足他的要求,在这个过程中逐渐的了解对方的真实需求和底线。如果有缘,必然会最终走到一起的。
接下来《时序漫谈》系列将为您介绍:
案例之fanout
案例之Block RAM的寄存器输出
案例之DSP模块的流水输出
案例之分布式RAM
案例之Group
······