FPGA时序优化简单窍门


 

  • 尽量用硬核,比如硬件乘法器,这个应该都知道。

  • 结构上的pipeline,简言之就是“拆",最极端的情形是拆到源和目的Reg间只有基本的组合逻辑门,比如说~a & b之类...;当然FPGA里实际不必这样,打个比方,两个xbit的数据做比较,若芯片内是4输入LUT,若有pipeline的必要,那么流水级最多用[log4(x)]+1就够了。

  •  系统上的流水,也就是打拍,副作用是带来latency;这是最常见的方式之一,但有的情形下不允许。

  • 异步, 划分不同时钟域;比如说系统主体可以工作在100M-,特定的子系统要求必须工作在300M+,那么可以将特定模块划分到不同的时钟域里;但异步时钟域不宜太多。

  • 综合时使用retiming,duplication;physical synthesis优化,现在的综合器这方面已经足够聪明了。

  • 预算允许可使用速度更快的芯片;这个也许是实现 “不修改RTL又时序收敛” 的最可能的方式。


版权所有权归卿萃科技 杭州FPGA事业部,转载请注明出处

作者:杭州卿萃科技ALIFPGA

原文地址:杭州卿萃科技FPGA极客空间 微信公众号


扫描二维码关注杭州卿萃科技FPGA极客空间


 

猜你喜欢

转载自blog.csdn.net/woshifennu1234/article/details/80532977