第5章_逻辑综合与dc使用.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文档。上传文档
查看更多
第5章_逻辑综合与dc使用

第五章 逻辑综合与DC使用 综合是前端模块设计中的重要步骤之一,综合的过程是将行为描述的电路、RTL级的电路转换到门级的过程;Design Compiler是Synopsys公司用于做电路综合的核心工具,它可以方便地将HDL语言描述的电路转换到基于工艺库的门级网表。本章将初步介绍综合的原理以及使用Design Compiler做电路综合的全过程。 4.1综合综述 4.1.1 综合及其在集成电路设计流程中的地位 4.1.1.1什么是综合? 综合是使用软件的方法来设计硬件,然后将门级电路实现与优化的工作留给综合工具的一种设计方法。它是根据一个系统逻辑功能与性能的要求,在一个包含众多结构、功能、性能均已知的逻辑元件的单元库的支持下,寻找出一个逻辑网络结构的最佳实现方案。即实现在满足设计电路的功能、速度及面积等限制条件下,将行为级描述转化为指定的技术库中单元电路的连接。 如图4-1所示,综合主要包括三个阶段:转换(translation)、优化(optimization)与映射(mapping)。转换阶段综合工具将高层语言描述的电路用门级的逻辑来实现,对于Synopsys的综合工具DC来说,就是使用gtech.db库中的门级单元来组成HDL语言描述的电路,从而构成初始的未优化的电路。优化与映射是综合工具对已有的初始电路进行分析,去掉电路中的冗余单元,并对不满足限制条件的路径进行优化,然后将优化之后的电路映射到由制造商提供的工艺库上。 4.1.1.2 综合在集成电路整个设计流程中的地位 图4-2是集成电路设计的整个流程图,可以看出,综合是连接电路的高层描述与物理实现的桥梁。综合结果的好坏直接决定于HDL语言的描述,综合给定的限制条件与综合之后的门级网表将送到后端工具用于布局布线;而且在使用HDL语言描述电路以及在综合的过程中就需要考虑电路的可测试性,在综合之后需要对电路的可测试性进行处理。 4.1.2 电路综合的特点与要求 4.1.2.1电路综合的特点: 综合是限制条件驱动的(constraint driven) 综合是在设计人员给定的限制条件下对电路进行优化与映射的,因此,设计人员给定的限制条件就是综合的目标。这个限制条件一般都是在系统设计时对整个系统进行时序分析之后给出的,模块的设计人员不能随意对该限制条件进行更改与调整。 综合是综合工具对电路一些的性能进行折中的结果,对于数字电路来说就是在电路的面积与功耗,面积与时序上的性能进行折中。 图4-3是综合曲线的示意图,可以看出,当路径的延迟减小到一定程度,面积上的代价就不能明显的改善时序上的性能;同样,当面积减小到一定程度,路径延迟的增大也不能明显改上面积上的性能。 综合是基于路径的 Design Compiler在做综合的时候时,会调用静态时序分析的工具Design timer对电路中的有效路径1进行静态时序分析,按照时序分析的结果来对电路进行优化。 4.1.2.2 电路综合的要求: 综合脚本的要求 综合脚本必须是可重用的。脚本的可重用主要有两方面的含义:1)在整个电路设计过程中,当后端工具提取出线负载模型2后作综合或者在布局布线完成之后再做综合,保证添加的限制条件与初始时的综合是相同的。2)当系统的一些参数改变时,比如,一个模块从16位变为32位,而模块的功能没有改变,可以不改变综合的脚本,只需要改变其中的参数就可以实现该目标。即要保证综合脚本是参数化的。 在添加限制条件时,必须对如下的对象施加限制条件: 1)、电路中需要有时钟的定义 一般情况下,希望综合之后的电路是同步的数字电路(异步电路以及模拟电路需要单独处理),而同步电路中都需要设置时钟或者虚拟时钟。 2)、保留时钟网络,不对时钟网络做综合3 2)、综合的时候需要指定线负载模型,用于估计连线延迟。 3)、限制模块中组合路径的输入输出延迟。 4)、限制输出的带负载能力(Loading budget)以及输入的驱动单元(driving cell)。 5)、模块同步输出的输出延迟(output delay)的限制,以及同步输入的输入延迟(input delay)的限制。 6)、多周期路径(multicycle path)以及非法路径(false path)的限制。 7)、工作环境的给定。 综合结果的要求 1)、综合的结果中没有时序违反(timing violation),即综合的结果必须满足时序性能的要求。 2)、综合之后的门级网表必须已经映射到工艺库上。 3)、综合之后的门级网表中应避免包含如下电路结构: 在同一个电路中同时含有触发器和锁存器两种电路单元。 在电路中出现有反馈的组合逻辑 用一个触发器的输出作为另外一个触发器的时钟 异步逻辑和模拟电路未单独处理 使用的单元电路没有影射到工艺库中 4.1.3

文档评论(0)

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

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

1亿VIP精品文档

相关文档