打印

时序优化的若干策略

[复制链接]
1718|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
星星之火红|  楼主 | 2012-11-6 22:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本文总结了一些可以优化时序的方法,主要是针对xilinx的virtex系列FPGA以及ISE软件。当然,对于其他厂商的FPGA和相应的开发工具,这些方法也是有一定借鉴意义的。这些优化方法全部来自一些实际项目的实践中,具有较强的实用性,希望能给大家带来帮助,也希望各位同行能提出建议和更好的解决办法,促进大家共同进步!
优化方向一:合理使用Blcok RAM和Distributed RAM
       1.  均衡Block RAM和Distributed RAM的使用。如果Block RAM使用的过多而Distributed RAM使用的较少,建议将一些小型的FIFO用Distributed RAM来实现;如果Distributed RAM使用的过多,而Block RAM有大量富余,建议将一部分由Distributed RAM实现的FIFO改用Block RAM来实现。
       2.  当需要使用Block RAM来构建大型的FIFO用作缓存时,由于Block RAM也是分布在FPGA的不同位置,当构建一个FIFO使用的RAM太多时,会给布局布线带来很大的压力。所以建议实施的时候可以用多个中型的FIFO带代替一个大型的FIFO。
       3.  不宜使用distributed RAM构建大位宽或者大深度的FIFO。

相关帖子

沙发
星星之火红|  楼主 | 2012-11-6 22:39 | 只看该作者
优化方向二:合理放宽时序约束
       1.  当芯片设计中有多个时钟域时,对于那些通过FIFO隔开的时钟域之间,并不需要有太严格的约束。
       2.  如果这些不相关的异步时钟是通过同一个MMCM产生的,如果不对这些异步时钟单独约束,那么按照软件的默认行为,这些异步时钟之间的路径是按同步路劲的分析方法进行分析的。这种默认行为的结果就是,一些不应该那么严格约束的路劲被过约束了。
       3.  针对这种现象,一种可行的方案是:对同一个MMCM输出的多个异步时钟分别进行时序约束,并且只需约束两时钟域之间异步线路的最大布线延迟,而不需将异步线路中时序逻辑与LUT的响应时间纳入时序约束的范围。
       4.  Tip3中提及的时序约束方案的示例如下:
NET "CLKA" TNM_NET = "GRP_A";
NET "CLKB" TNM_NET = "GRP_B";
       TIMESPEC TS_Path_A_B = FROM "GRP_A" TO "GRP_B" 5 ns DATAPATHONLY;

使用特权

评论回复
板凳
星星之火红|  楼主 | 2012-11-6 22:39 | 只看该作者
优化方向三:设置合理的实现工具属性
1.  尝试将synplify->Implementation option->Device->Enable advanced LUT combining属性关闭。
2.  尝试将ISE中Map Properties->Combinatorial logic optimization属性打开。
3.  尝试将ISE中Map Properties->Register duplication 属性打开。
4.  尝试将ISE中Map Properties->Allow logic optimization across hierarchy属性打开。
5.  尝试将ISE中Map Properties->LUT conbining属性关闭。

使用特权

评论回复
地板
星星之火红|  楼主 | 2012-11-6 22:39 | 只看该作者
优化方向四:优化代码

1.  对于那些输出线扇出太大的寄存器,可以考虑在代码中手动复制。为避免复制的寄存器在综合阶段被优化掉,如果使用的是synplify综合工具,可在寄存器定义时使用综合指导属性/* synthesis syn_keep=1 */。

2.  不宜在一个寄存器前放置过多的组合逻辑,如果一个功能涉及的组合逻辑过于复杂,最好是将组合逻辑较均匀的分布在各个寄存器前面。

使用特权

评论回复
5
GoldSunMonkey| | 2012-11-6 23:05 | 只看该作者
嗯嗯,不错。

使用特权

评论回复
6
xiao6666| | 2012-11-8 00:19 | 只看该作者
;P

使用特权

评论回复
7
GoldSunMonkey| | 2012-11-8 00:30 | 只看该作者
:lol

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

101

主题

1782

帖子

22

粉丝