Ch5 综的约束与优化.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Ch5 综的约束与优化

第五章 综合的约束与优化 综合的一个很重要的概念就是:单纯的映射是远远不够的,更重要的是设计的整体优化。一方面设计工程师为综合规定必要的约束,例如对面积、速度、功耗的要求等,从而使优化有所依据;另一方面选择合适的综合器是优化程度的决定性因素。同一个设计使用不同的综合器所得到的优化结果可以相差3~5倍。 第一节 综合约束 5-1-1 概述 综合约束是对可测量的电路特性所定义的设计目标,比如面积、速度和电容等。如果没有这些约束,Design Compiler工具将不能有效地对你的设计进行最优化。 在对设计进行优化时,Design Compiler支持两种类型的约束: 设计规则约束(Design rule constraints) 最优化约束(Optimization constraints) 设计规则约束是固有的,在工艺库里定义;这些约束条件是为了保证设计 的功能正确性,适用于使用工艺库的每一个设计;可以使这些约束比最优化约束更为严格。 最优化约束是外在的,由设计者自己定义;最优化约束描述设计指标,在整个dc_shell工作期间应用于当前设计;它们必须接近于现实情况。 Design Compiler试图同时满足设计规则约束和最优化约束,但设计规则约束必须首先被满足。设计者可以以命令行形式交互式的指定约束或者在一个约束文件里指令约束。 图5.1显示了主要的设计规则约束和最优化约束,以及如何用dc_shell界面命令来设置这些约束。 图5.1 Major Design Compiler Constraints 第二节 设置设计规则约束 这一节将讨论最常用的设计规则约束: ? 转换时间(Transition time) ? 扇出负载(Fanout load) ? 电容(Capacitance) Design Compiler给设计对象赋予属性来表示这些设计规则约束。表5.1列出了每一个设计规则约束对应的属性名。 表5.1 设计规则属性 Design Rule Constraint Attribute Name Transition time max_transition Fanout load max_fanout Capacitance max_capacitance min_capacitance Cell degradation cell_degradation Connection class connection_class 设计规则约束是工艺库里指定属性,你也可以明确地、随意地指定这些约束。如果工艺库里定义了这些属性,在进行设计编译和生成约束报告时,Design Compiler暗中将它们应用于使用那个库的任何设计。你不能移走工艺库里定义的设计规则约束,因为它们是工艺的特定要求,但你可以使它们更为严格来适应你的设计。如果内在的和外在的设计规则约束同时应用于一个设计或一条线,更为严格的值拥有优先权。 5-2-1 设置转换时间约束 线的转换时间约束是对它的驱动管脚改变逻辑值的时序要求。转换时间是以工艺库数据为基础。对于非线性延迟模型(NLDM),输出转换时间是输入转换和输出负载的函数。 通过对一个单元的每一个输出管脚赋予max_transition属性,Design Compiler和Library Compiler模拟转换时间约束。在最优化过程中,Design Compiler试图使每一条线的转换时间都小于max_transition属性值。命令set_max_transition用来改变工艺库里指定的最大转换时间约束。通过对指定的对象设置max_transition属性,这条命令给设计中所有线或与确定端口相连的线设置了最大转换时间。 比如,对设计adder中的所有线设置最大转换时间3.2,输入: dc_shell set_max_transition 3.2 find(design,adder) 利用remove_attribute命令来取消set_max_transition命令,比如,输入: dc_shell remove_attribute find(design,adder)\max_transition 5-2-2 设置扇出负载约束 线的最大扇出负载是指这条线所能驱动的最大数目的负载。 通过赋予每一个输入管脚fanout_load属性和一个单元的每一个输出管脚max_fanout属性,Design Compiler和Library Compiler模拟扇出限制。 扇出负载值不表示电容;它表示对整个扇出负载的数字上的贡献。强加于一个输入管脚的扇出负载不必是1.0。库的开发者可以指定更高的扇出负载值来模仿内在的单元负载效果。将有那个管脚驱动的所有输入的fan

文档评论(0)

qi1920809 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档