浅谈基于FPGA开发的时钟约束方法( 二 )

RTL设计与芯片的选择对于同一颗芯片,如果RTL架构合理,流水线排布高效,代码执行效率好,则能达到的时钟频率会较高;同理,相同的RTL代码,如果选择高阶的芯片,则同样能达到更高的时钟频率。

第一种情况,对电路设计者的要求较高,RTL的代码设计会相对复杂。第二种情况,选择更高阶的芯片,意味着成本的增加。所以在设计过程中,往往是在两者之间进行权衡。

时钟边沿的使用在这里需要指出一个问题,时钟的边沿使用问题。在大多数的同步电路设计中,都只会使用时钟一个边沿,上升沿或者下降沿(一般使用上升沿的较多)。

这是因为工具在进行时序分析时,会对寄存器时钟端口的反相情况进行处理。当发现下降沿和上升沿同时出现的情况,延迟会自动限制为约束时钟的一半,即时钟速度放慢一倍,这往往不是我们想要的电路综合结果。

电路速度的预估在添加时钟越是时,我们还需要对电路的速度进行合理预估,过快或者过慢的时钟约束,都不是好的约束。过慢的约束,达不到SPEC需要,设计的电路肯定不能使用。过快的约束,会增加布局布线(place & route)的难度,可能会导致拥塞,布局布线失败,或者芯片发热等后果。

推荐阅读