DC学习(8)综合与优化

本文详细介绍了DC(Design Compiler)工具的综合策略,包括综合的两种主要方式:top-down和bottom-up,以及compile_ultra的三级分类。重点讨论了compile_ultra在时序优化、结构级优化、逻辑级优化和门级优化等方面的应用。还提到了其他知识点,如re-synthesis、DesignWare库、CSA算法、算术优化方法和时序优化命令的使用。综合的目的是在满足时序要求的同时优化面积,为后端布局、时钟树综合和布线做好准备。
摘要由CSDN通过智能技术生成

一:综合策略

 top-down & bottom-up

1:top-down

  层次化结构,只对顶层设计进行全面约束,针对个别模块有特殊约束;比如管理模块(clock模块,reset模块等)的综合不会与工作模块(顶层模块)放在一起综合的。

2:bottom-up

  对底层的各个模块定为current_design,进行综合,加上dont touch属性;若各层之间有group logic(如与门),还需要对group logic约束;这种风格的综合约束复杂且多。

所有top-dowm方式用得更多

3:综合里的关键字

  边界优化, ungroup(模块被打散,只能看到顶层设计),扫描链(DFT)。。。。

二:compile_ultra的三级分类

  虚拟机不支持,是对compile进行优化;

  将模块全部打散,对于后端来说,全部打散不方便后续操作,只能看到各个与或非门,无法得到具体模块与模块之间的关系或者问题。

  对关键路径优化,循环迭代优化。目标是满足时序要求的同时保证面积最小。

  分为三个阶段的优化:

                  

  主要包括:第一阶段的结构级的优化(Architectural-Level Optimization)、第二阶段的逻辑级优化(Logic-Level Optimization)、最后阶段的门级优化(Gate-Level Optimization)。

1:结构级优化(archiiture-level)

  结构级优化包括的内容如下:

                   

  包括:设计结构的优化,数据通路的优化,共享共同的子表达式,资源共享,重新排序运算符号(详见http://www.cnblogs.com/IClearner/p/6636176.html)

  例如:加法器有普通加法器,超前进位加法器,DC会根据应用场合挑选出合适的加法器。

2:逻辑级优化(logic-level)

  一个逻辑表达式可以是与非格式,也可以是或非格式,DC会选择合适的逻辑表达式来描述逻辑功能。

  逻辑优化的内容如下:

                   

  做完结构的优化后,电路的功能以GTECH的器件来表示。在逻辑级优化的过程中,可以作结构(Structuring)优化展(开)平(Flattening)优化

3:门级优化(Gate-level)

  得到网表后的优化,局部优化。

三:其他知识点

1:re-synthesis

  网表文件生成后,静态时序分析时,DC工具对路径进行分析,对关键路径进行优化,逻辑级优化与门级优化可以迭代使用(若路径延时过大,不满足设计规则,DC会resynthesis,一直到路径延迟满足要求)。

2:DesignWare Library

  IP库,包含算术操作,标准IP;优点在于设计更快更可靠;在使用compile_ultra会自动使用该库。

3:综合最基本的要求是满足时序要求;

4:CSA算法优化数据通路的设计

  

5:常见算术优化方法

  

  尤其是第五条,乘法运算改为移位运算,减少资料占用。

6:逻辑复制(logic duplication)

  

  对关键路径部分的负载放在其他路径上,减少关键路径延时,以面积换速度。

7:库分析

  一个逻辑表达式可由不同的表达方式表达,DC挑选出合适的库单元实现逻辑。

三:其他有关命令的时序优化及方法

  DC综合之后,我们查看详细的报告,如果没有违规,设计既能满足时间和面积的要求又不违犯设计规则,那么综合完成。可以把门级网表和设计约束等交给后端(backend)工具做布局(placement )、时钟树综合(clock tree synthesis)和布线(route)等工作,产生GDSII文件。如果设计不能满足时间和面积的要求或违犯设计规则等,就要分析问题所在,判断问题的大小,然后采取适当的措施解决问题。问题往往是时序的问题,发生时序违规时可以采取相应的措施,如下图所示:

  • 6
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值