Design Compiler 综合】的更多相关文章

综合(synthesis) = 转换(translation) + 优化(logic optimization) + 映射(gate mapping): 转换阶段将HDL语言描述的电路用门级逻辑实现.对于DC使用gtech.db库中的门级单元来实现HDL语言描述的电路,得到初始的未优化的电路.优化与映射时综合工具对初始电路进行分析,去掉冗余单元.并根据约束条件(环境约束和设计约束)对路径进行优化,将优化后的电路映射到由制造商提供的工艺库上. 综合的特点 1. 综合是限制条件驱动的,限制条件就是综…
本文如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 概述 前面也讲了一些综合后的需要进行的一些工作,这里就集中讲一下DC完成综合了,产生了一些文件,我们就要查看它生成的网表和信息,下面就来介绍DC综合完成之后要进行哪些工作: 也就是说,DC一般完成综合后,主要生成.ddc..def..v和.sdc格式的文件(当然还有各种报告和log) .sdc文件:标准延时约束文件: 里面都是一些约束,用来给后端的…
本文如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 前面一直说到综合库/工艺库这些东西,现在就来讲讲讲综合库里面有什么东西,同时也讲讲synopsys的Design Ware库.主要内容分为三个部分:标准单元库.DC的设计对象.Design Ware库. (1)标准单元库 绝大多数的数字设计流程都是基于标准单元的半定制设计流程.标准单元库包含了反相器.缓冲.与非.或非.与或非.锁存器.触发器等等逻辑…
1.逻辑综合的概述 synthesis = translation + logic optimization + gate mapping . DC工作流程主要分为这三步 Translation : 翻译,主要把描述RTL级的HDL语言,在约束下转换成DC内部的统一用门级描述的电路(Generic Boolean Gates)(DC自己的库表现),以GTECH或者没有映射的ddc形式展现. Logic optimization :逻辑优化, 就是把统一用门级描述的电路进行优化,就是把路径调整一下…
本文属于原创手打(有参考文献),如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 本文的主要内容是讲解(约束针对的是逻辑综合下的约束,而实战部分则是在DC的拓扑模式下进行): ·环境属性的约束 ·设计规则的约束 ·面积的约束 ·实战(部分)环境属性的约束 1.工作环境属性约束 输入/输出端口及其驱动属性是设计规格的一部分,工作环境的约束,是对这个规格约束的一部分. 工作环境约束一方面是设置DC的工作环…
本文属于原创手打(有参考文献),如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 对进行时序路径.工作环境.设计规则等进行约束完成之后,DC就可以进行综合.优化时序了,DC的优化步骤将在下面进行讲解.然而,当普通模式下不能进行优化的,就需要我们进行编写脚本来改进DC的优化来达到时序要求.理论部分以逻辑综合为主,不涉及物理库信息.在实战部分,我们将在DC的拓扑模式下进行.(本文主要参考虞希清的<专用集成…
本文如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 前面介绍的设计都不算很复杂,都是使用时钟的默认行为作为电路的约束,都存在有路径给你约束,即信号的变化要在一个时钟周期内完成,并达到稳定值,以满足寄存器的建立和保持的要求.此外进行可测性设计(design for test)时,为了提高测试的覆盖率,我们经常使用多路(multiplex,简称mux)传输电路的控制时钟,使电路的时钟信号可以由输入端直接…
本文如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 本文将描述在Design Compliler中常用到的命令,这些命令按照流程的顺序进行嵌套讲解,主要是列举例子:大概的讲解布局如下所示: 大概有11个部分,下面我们逐个部分进行(简单的)介绍的举例. 1.tcl的命令和结构 tcl的命令和结构请参照第二节的内容: http://www.cnblogs.com/IClearner/p/6617207.…
在Design Compiler中,Verilog文件可以用read_verilog命令读入,用link命令连接.以下是连接两个文件RegisterFile.v和Test.v的脚本: # Read design files file mkdir ./work define_design_lib WORK -path ./work read_verilog {RegisterFile.v Test.v} current_design Test link 其中define_design_lib指定中…
已经学习DC的使用有一段时间了,在学习期间,参考了一些书,写了一些总结.我也不把总结藏着掖着了,记录在博客园里面,一方面是记录自己的学习记录,另一方面是分享给大家,希望大家能够得到帮助.参考的书籍有很多,大概如下: 虞希清老师的<专用集成电路设计实用教程> 西电出版社的<数字IC系统设计> 好像还有<SoC设计方法与实现> <数字集成电路设计与技术> 当然,还有synopsys公司的Design Compiler 1 workshop 基本上是参考上面几本书…
本文属于原创手打(有参考文献),如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 1.基本流程概述 首先给三个图,一个图是高层次设计的流程图: 下面是我对这张图的理解: ① 设计之前,准备好库.HDL代码的思想.约束生成:然后根据设计思想用 RTL 源码详细地.完整地为设计建立模型.定义设计中寄存器结构和数目.定义设计中的组合电路功能.定义设计中寄存器时钟等等的设计规格和实现. ② 完成 RTL 源码…
本文属于原创手打(有参考文献),如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 这里来讲一下formality的使用,貌似跟tcl和DC没有很强的联系:然而说没有联系,也是不正确的.在综合完成之后,可以进行形式验证.此外这里不是专门讲解formality的使用的,因此只会简单地实践一下它的用法. formality是Synopsys公司的形式验证工具,上一节我们得到了综合后的设计,这里我们就要验证综…
本文属于原创手打(有参考文献),如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 主要内容有: ·启动环境的概述 ·路径变量的定义与解释 ·库的指定与解释 (1)启动环境配置简述 我们按照前面的基本流程使用DC进行设置,但是这里主要使用的是脚本,因此不能一条一条命令进行演示其效果.在启动DC之前,首先要配置DC的启动环境,也就是那些库的设定.配置DC的启动环境主要是.synopsys_dc.setup…
本文属于原创手打(有参考文献),如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 时序约束可以很复杂,这里我们先介绍基本的时序路径约束,复杂的时序约束我们将在后面进行介绍. 在本节的主要内容如下所示: ·时序路径和关键路径的介绍 ·建立时间.保持时间简述 ·时钟的约束(寄存器-寄存器之间的路径约束) ·输入延时的约束 ·输出延时的约束 ·组合逻辑的约束 ·结合设计规格进行实战 RTL代码描述了电路的时…
本文属于原创手打(有参考文献),如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 之前讲了基本的时序路径约束,现在我们来看一下其他的约束,然后通过实战来讲解一些其他的约束.实战中也没有前面的"理论"中的约束类型,但是可以通过实战来了解其他的约束.本文的具体内容是: ·多时钟同步约束 ·门控时钟的约束 (实战:) ·正负边沿触发器的约束 ·输入输出延时的非默认约束 ·输入输出有多个路径驱动(类…
Design Compiler and the Design Flow 步骤 将HDL描述的设计输入到Design Compiler中 Design Compiler使用technology libraries, synthetic or DesignWare libraries, and symbol libraries执行综合过程,并展示综合结果. 将HDL翻译为门级描述之后,Design Compiler优化和映射设计到指定的工艺库. 优化之后准备测试综合结果,查看是否满足设计要求. 综合…
       综合技术是提高设计产能的一个很重要的技术,没有综合技术的发展就不可能用HDL实现电路的设计,因为HDL开始是用来供电路仿真建模使用的,到了后来才把其中一部分子集作为可综合的语言,也就是RTL CODE.很多人入门都用HDL做设计,就以为HDL就只是用来做设计的,没有看到HDL最初始的一面,所以在验证时,就无法用好HDL另外一部分强大的功能.有时间还是可以看看Writing Testbench这本书,增强对HDL语言在验证方面作用的了解,也是提高对HDL认识很好的补充.       …
ASIC DC综合的理解 DC综合流程 输入设计文件+指定的工艺库文件+约束文件 经过DC的综合,输出满足期望的门级网表及综合报告 输入输出数据 输入文件:设计文件(verilog等).工艺库(db).约束文件 输出文件:网表(Netlist).report DC对输入数据的理解 设计对象 DC将读入的设计进行解析,分成不同的设计对象. DC将设计对象分为八种不同的类型: 设计(Design) 单元(Cell) 引用(Reference) 端口(Port) 连线(Net) 时钟(Clock) 库…
1 Target Library Design Compiler uses the target library to build a circuit. During mapping, Design Compiler selects functionally correct gates from the target library. It also calculates the timing of the circuit, using the vendor-supplied timing da…
1 synthesis steps 1) Search Paths rc:/> set_attribute lib_search_path path / rc:/> set_attribute script_search_path path /  rc:/> set_attribute hdl_search_path path / 2) Target Technology Library rc:/> set_attribute   library  lib_name.lib  - …
#****************************************************************************** # File : syn_example.tcl # Author : Lyu Yang # Date : 2018-12-09 # Description : Design Compiler #************************************************************************…
转载:https://www.cnblogs.com/IClearner/p/6617207.html 1.逻辑综合的概述 synthesis = translation + logic optimization + gate mapping . DC工作流程主要分为这三步 Translation : 翻译,主要把描述RTL级的HDL语言,在约束下转换成DC内部的统一用门级描述的电路(Generic Boolean Gates)(DC自己的库表现),以GTECH或者没有映射的ddc形式展现. L…
静态时序分析(static timing analysis,STA)会检测所有可能的路径来查找设计中是否存在时序违规(timing violation).但STA只会去分析合适的时序,而不去管逻辑操作的正确性. 其实每一个设计的目的都相同,使用Design Compiler和IC Compile来得到最快的速度,最小的面积和最少的耗能.根据设计者提供的约束,这些工具会在面积,速度和耗能上做出权衡. 更深层的来看,STA一直都寻找一个问题的答案 : 在所有条件下,当时钟沿到达时,数据会正确地在每个…
在PD之后,netlist中会多出很多DCAP元件(去耦电容,减少IR-Drop)或者filter cell(保证芯片均匀度要求) 还有一些antenna cell也就是一些diode用来泻流,防止天线效应(生产中裸露的metal,收集电荷,击穿栅极) 版图一般由两层组成:base layer和metal layer. base layer由p-substrate和n-well组成. 封装前的芯片叫做die,长满die的晶圆叫做wafer GDS相对于RTL的要求: RTL+SDC经过synth…
*作者: Ian11122840    时间: 2010-9-27 09:04                                                                                                                                                                * *标题: 菜鸟做设计必看!有关如何做设计的整体思路,以及能否综合的笔记             …
IC前端设计(逻辑设计)和后端设计(物理设计)的区分:以设计是否与工艺有关来区分二者:从设计程度上来讲,前端设计的结果就是得到了芯片的门级网表电路. 前端设计的流程及使用的EDA工具例如以下: 1.架构的设计与验证:依照要求,对总体的设计划分模块. 架构模型的仿真能够使用Synopsys公司的CoCentric软件,它是基于System C的仿真工具. 2.HDL设计输入:设计输入方法有:HDL语言(Verilog或VHDL)输入.电路图输入.状态转移图输入. 使用的工具有:Active-HDL…
PS:字丑,禁止转载!!! 首先先写出大概的流程,然后是一些教材的理论知识总结,最后是进行lab2的一些流程概述. 教材的理论知识总结主要是:数字集成电路物理设计学习总结--布图规划和布局 -->数据准备(设置).加载设计并切换到floorplan模式 --> 创建拐角(Corner)和电源地(P/G)单元并定义他们pad的位置 -->创建floorplan -->在电源/接地信号和I / O焊盘,宏和标准单元的所有电源/接地引脚之间建立"逻辑"连接 -->…
前面学习了进行低功耗的目的个功耗的构成,今天就来分享一下功耗的分析.由于是面向数字IC前端设计的学习,所以这里的功耗分析是基于DC中的power compiler工具:更精确的功耗分析可以采用PT,关于PT的功耗分析可以查阅其他资料,这里不涉及使用PT的进行功耗分析. (1)功耗分析与流程概述 上一个小节中讲解了功耗的构成,并且结合工艺库进行简要地介绍了功耗的计算.但是实际上,我们根本不可能人工地计算实际的大规模集成电路的功耗,我们往往借助EDA工具帮我们分析电路的功耗.这里我们就介绍一下EDA…
前面讲解了使用EDA工具(主要是power compiler)进行功耗分析的流程,这里我们将介绍在数字IC中进行低功耗设计的方法,同时也结合EDA工具(主要是Design Compiler)如何实现.我们的讲解的低功耗设计主要是自顶向下的设计,也就是说,我们首先介绍在系统架构层面上如何进行低功耗设计(或者可以从哪些方面进行低功耗设计):然后我们在RTL层面和门级层面上介绍低功耗设计的方法,这两个种方法主要是依靠RTL代码和Design Compiler实现的,这是我们前端设计人员进行低功耗设计与…
二.RTL级低功耗设计(续) 前面一篇博文我记录了操作数隔离等低功耗设计,这里就主要介绍一下使用门控时钟进行低功耗设计. (4)门控时钟 门控时钟在我的第一篇博客中有简单的描述,这里就进行比较详细的描述吧.我们主要学习门控时钟电路是什么.什么使用门控时钟.综合库里的门控时钟.如何使用门控时钟.对门控时钟的一些处理.手动插入门控时钟.我们重点介绍如何使用门控时钟和门控时钟的处理. ①门控时钟概述 门控时钟有两种方案:一种直接针对寄存器的时钟进行门控,一种对模块级别的时钟进行门控.相比之下,直接对寄…