IC设计后端流程初学必看
- 格式:doc
- 大小:605.12 KB
- 文档页数:30
ic电路设计流程下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。
文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by the editor. I hope that after you download them, they can help yousolve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you!In addition, our shop provides you with various types of practical materials, such as educational essays, diary appreciation, sentence excerpts, ancient poems, classic articles, topic composition, work summary, word parsing, copy excerpts,other materials and so on, want to know different data formats and writing methods, please pay attention!IC电路设计是电子工程领域中的重要环节,随着技术的不断发展和进步,IC电路设计流程也在不断优化和完善。
ic版图设计的流程下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。
文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor. I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!IC 版图设计是将电路设计转化为物理版图的过程,以下是一般的 IC 版图设计流程:1. 电路设计设计师使用电路设计工具创建电路原理图。
数字ic后端的基础概念数字集成电路(IC)后端设计涉及到电子芯片的制造和验证阶段,包括物理设计、布局、验证、封装和测试等方面。
以下是数字IC后端设计的一些基础概念:1. 物理设计:物理设计是指将逻辑设计转换为实际的物理结构,包括电路布局和布线。
这一阶段包括:•综合:将高级综合(HLS)或逻辑综合的输出转换为门级电路。
•布局:安排电路元素的物理位置,以满足性能、功耗和面积等要求。
•布线:建立电路中的互连路径,以确保信号能够正确传输。
2. 时序分析:时序分析用于评估电路中信号传输的时序特性,确保电路在规定的时钟频率下正常运行。
3. 功耗分析:对芯片的功耗进行估算和优化,以确保在预定的功耗范围内运行。
4. 静态时序分析(STA): STA 用于分析电路的时序特性,确保信号在规定的时间限制内到达目的地。
5. 时钟树合成:时钟树合成是设计时钟系统的一部分,确保时钟信号在整个芯片上均匀分布,以减小时钟信号的延迟差异。
6. 物理验证:确保物理设计满足设计规范和约束,包括设计规则检查(DRC)和佈线规则检查(LVS)。
7. 封装和测试:完成物理设计后,芯片被封装成集成电路封装,并进行测试以确保质量和性能。
8. 设计规则:设计规则是在物理设计阶段需要满足的约束,通常由制造厂商提供。
这些规则涉及到最小尺寸、最小间距等。
9. 电磁兼容性(EMC): EMC 是考虑电磁场相互影响,防止电磁干扰的重要概念。
10. 设计闭环:后端设计通常需要与前端设计进行密切合作,确保物理设计满足逻辑设计的要求。
这些是数字IC后端设计中的一些基础概念,实际的后端设计流程可能会更加复杂,具体取决于芯片的复杂性和应用领域。
数字ic设计自学流程Studying digital IC design on your own can be a challenging but rewarding endeavor. It requires dedication, patience, and perseverance to become proficient in this field. 通过自学数字ic设计可以让您在这个领域中变得更加精通,虽然这可能是一个具有挑战性但有益的努力。
One of the first steps in the self-learning process is to gain a good understanding of the basic concepts of digital IC design. This includes learning about logic gates, flip-flops, registers, and other fundamental building blocks of digital circuits. 在自学过程中的第一步是要对数字ic设计的基本概念有很好的理解。
这包括学习逻辑门、触发器、寄存器和其他数字电路的基本构建模块。
It is also essential to become familiar with the tools and software used in digital IC design, such as Verilog, VHDL, and Electronic Design Automation (EDA) tools. These tools are essential for designing, simulating, and testing digital circuits. 熟悉数字ic设计中使用的工具和软件也很重要,比如Verilog、VHDL和电子设计自动化工具。
D Z KIC设计流程--基于synopsys EDA tools一、数字IC的设计流程:图一数字IC设计流程1、立项,市场调研基本是由市场和你的老板负责制定。
2、一旦立项后下面该做的是制定spec也就是各项参数和性能,以及划分模块,验证以及协调。
3、下面就开始轮到前端的人员来干活了。
(1)首先前端人员吃时候要开始撰写你的code也就是要开始写你的RTL代码(指的是你要用来生成电路的代码),和测试代码(也就是testbench)。
业界基本是在linux下的vim中编写好各个模块的verilog文档(当然大的模块尽可能划分成许多小的模块)。
当然测试向量的编写可以通过designer的手工编写(一般采用),也可以辅助用TetraMAX 生成。
(2)接下来是验证你的代码是否语法、功能等正确此事后D Z KVCS便是用来simulation你的代码的。
如果不正确再回到vim中修改,直到RTL代码满足要求(神仙才有可能第一版就能合格的)。
(3)下面就要开始将你的RTL代码转换成门级电路的时刻了,一般业界用的design compiler (DC),但是对你的设计有什么约束就要根据各自的设计思路和经验去下constrain(一些可以通过手写编辑文档,一部分可以通过DC中的gui界面去点击,当然最终全面的文档可以通过DC吐出来)。
此时也是需要你插入scan chain的时候。
最后在工具综合满足你的面积和时序要求下可以吐出门级的verilog网表。
『此地需要fab提供standcell或者IP核的lib和db以及sdb(也可用dc中默认的,不过不推荐)等文件』(4)拿到门级的verilog网表并不代表你就直接可以用它去参与bkend工作了,现在的soc一般需要做大量的验证工作,首先是形式验证,检验你综合的门级网表是否偏离了你的设计意图。
此时用的工具是Formality;其次是静态时序分析,验证你的门级网表是否在时序上满足设计要求,此时用到的工具是PrimeTime(PT)。
IC设计的前端和后端IC设计是指集成电路设计,是一个集成芯片的整个设计过程,包括前端设计和后端设计两个阶段。
前端设计主要负责电路功能的设计和验证,后端设计则负责物理布局和相关验证。
前端设计(Front-end Design)前端设计是IC设计的第一阶段,也被称为电路设计阶段。
在这个阶段,设计工程师根据芯片规格和功能需求,设计电路的逻辑结构、电路结构以及模块之间的连接关系。
这个过程包括电路结构及逻辑设计、功能验证、性能仿真和验证等一系列步骤。
首先,设计工程师使用硬件描述语言(如VHDL或Verilog)来描述集成电路中的逻辑功能,并使用设计工具(如EDA工具)进行逻辑合成,将高级电路描述转化为低级门级描述。
接下来,通过功能验证来验证设计的正确性。
功能验证主要是通过软件仿真和硬件验证两个步骤进行。
设计工程师使用功能仿真工具对设计的英文进行仿真,验证电路功能是否符合规范和需求。
同时,还需要进行一定的硬件验证,通常使用FPGA等硬件平台进行验证。
此外,性能仿真也是前端设计的重要一环。
通过性能仿真,设计工程师可以对电路的性能进行评估和调优。
性能仿真可以提供电路的时序图、功耗等关键指标,以帮助设计工程师对电路进行优化调整。
前端设计的最终目标是得到一个功能完善、性能良好的电路设计,以供后端设计做进一步的物理布局和验证。
后端设计(Back-End Design)后端设计是IC设计的第二阶段,也被称为物理设计阶段。
在这个阶段,设计工程师将前端设计得到的逻辑电路进行物理布局和验证。
物理布局是指将逻辑电路映射到芯片上的具体位置,以及确定电路中各个元器件之间的物理连接关系。
首先,设计工程师需要根据芯片规格和布局约束,对芯片进行合理的分区划分,并确定各个区域的功能和布局要求。
然后,将逻辑电路进行细化和分解,对各个模块进行物理布局。
物理布局完成后,需要进行布局验证。
布局验证主要是验证电路的连通性、功耗分布、信号延迟等物理指标是否达到设计要求。
一般的IC设计流程可以分为两大类:全定制和半定制,这里我换一种方式来说明。
1.1 从RTL到GDSⅡ的设计流程:这个可以理解成半定制的设计流程,一般用来设计数字电路。
整个流程如下(左侧为流程,右侧为用到的相应EDA工具):一个完整的半定制设计流程应该是:RTL代码输入、功能仿真、逻辑综合、形式验证、时序/功耗/噪声分析,布局布线(物理综合)、版图验证。
至于你说的FPGA设计,开发起来更加简单,结合第三方软件(像Modelsim 和Synplify Pro),两大FPGA厂商Altera和Xilinx自带的QuartusⅡ和ISE开发平台完全可以应付与之有关的开发。
整个完整的流程可以分为前端和后端两部分,前端的流程图如下:前端的主要任务是将HDL语言描述的电路进行仿真验证、综合和时序分析,最后转换成基于工艺库的门级网表。
后端的流程图如下,这也就是从netlist到GDSⅡ的设计流程:后端的主要任务是:(1)将netlist实现成版图(自动布局布线APR)(2)证明所实现的版图满足时序要求、符合设计规则(DRC)、layout与netlist一致(LVS)。
(3)提取版图的延时信息(RC Extract),供前端做post-layout 仿真。
1.2从Schematic到GDSⅡ的设计流程:这个可以理解成全定制的设计流程,一般用于设计模拟电路和数模混合电路。
整个流程如下(左侧为流程,右侧为用到的相应EDA工具):一个完整的全定制设计流程应该是:电路图输入、电路仿真、版图设计、版图验证(DRC和LVS)、寄生参数提取、后仿真、流片。
IC设计流程和设计方法集成电路设计流程. 集成电路设计方法. 数字集成电路设计流程. 模拟集成电路设计流程. 混合信号集成电路设计流程. SoC芯片设计流程State Key Lab of ASIC & Systems, Fudan University集成电路设计流程. 集成电路设计方法. 数字集成电路设计流程. 模拟集成电路设计流程. 混合信号集成电路设计流程. SoC芯片设计流程State Key Lab of ASIC & Systems, Fudan University正向设计与反向设计State Key Lab of ASIC & Systems, Fudan University自顶向下和自底向上设计State Key Lab of ASIC & Systems, Fudan UniversityTop-Down设计–Top-Down流程在EDA工具支持下逐步成为IC主要的设计方法–从确定电路系统的性能指标开始,自系统级、寄存器传输级、逻辑级直到物理级逐级细化并逐级验证其功能和性能State Key Lab of ASIC & Systems, Fudan UniversityTop-Down设计关键技术. 需要开发系统级模型及建立模型库,这些行为模型与实现工艺无关,仅用于系统级和RTL级模拟。
1.1从RTL到GDSⅡ的设计流程:
这个可以理解成半定制的设计流程,一般用来设计数字电路。
整个流程如下(左侧为流程,右侧为用到的相应EDA工具):
一个完整的半定制设计流程应该是:RTL代码输入、功能仿真、逻辑综合、门级验证、时序/功耗/噪声分析,布局布线(物理综合)、版图验证。
整个完整的流程可以分为前端和后端两部分,
前端的流程图如下:
前端的主要任务是将HDL语言描述的电路进行仿真验证、综合和时序分析,最后转换成基于工艺库的门级网表。
后端的流程图如下,也就是从netlist到GDSⅡ的设计流程:
后端的主要任务是:
(1)将netlist实现成版图(自动布局布线APR)
(2)证明所实现的版图满足时序要求、符合设计规则(DRC)、layout与netlist一致(LVS)。
(3)提取版图的延时信息(RC Extract),供前端做post-layout仿真。
1.2从Schematic到GDSⅡ的设计流程:
这个可以理解成全定制的设计流程,一般用于设计模拟电路和数模混合电路。
整个流程如下(左侧为流程,右侧为用到的相应EDA工具):
一个完整的全定制设计流程应该是:电路图输入、电路仿真、版图设计、版图验证(DRC和LVS)、寄生参数提取、后仿真、流片。
ic设计的流程IC设计的流程IC(集成电路)设计是指将电子器件、电路和系统集成在一个芯片上的过程。
它是现代电子技术领域的重要组成部分,广泛应用于各个领域。
下面将介绍IC设计的主要流程。
1. 需求分析在IC设计之前,首先需要进行需求分析。
这一阶段主要通过与客户沟通、市场调研等方式,明确设计的目标和要求。
例如,确定芯片的功能、性能参数、功耗要求等。
2. 架构设计在需求分析的基础上,进行架构设计。
架构设计是确定整个芯片的功能模块、电路结构和数据流等的过程。
需要考虑到芯片的性能、功耗、面积等方面的平衡,确保设计的可行性和可靠性。
3. 电路设计在架构设计的基础上,进行电路设计。
电路设计是指具体设计每个功能模块的电路结构和电路参数,包括选择合适的器件、电路拓扑和电路参数等。
需要通过模拟和数字电路设计方法,确保电路的性能和稳定性。
4. 物理设计在电路设计完成后,进行物理设计。
物理设计是指将电路布局和布线,生成最终的版图。
它考虑到电路的布局约束、电路的布线规则、电路的面积利用率等因素。
物理设计需要使用专业的EDA软件,如Cadence等。
5. 验证和仿真在物理设计完成后,进行验证和仿真。
验证和仿真是为了验证设计的正确性和性能。
通过使用仿真工具,对设计进行各种电气特性和时序特性的分析和仿真,确保设计的可靠性和稳定性。
6. 制造和封装在验证和仿真通过后,进行制造和封装。
制造是将设计转化为实际的芯片产品的过程,包括光刻、薄膜沉积、离子注入等工艺步骤。
封装是将芯片封装成实际可用的封装体,如QFP、BGA等。
7. 测试和调试在制造和封装完成后,进行测试和调试。
测试是为了验证芯片的性能和功能是否符合设计要求,通过使用测试仪器对芯片进行各种电气特性和功能特性的测试。
调试是在测试过程中发现问题,并进行修复和调整。
8. 量产和市场推广在测试和调试通过后,进行量产和市场推广。
量产是指将芯片进行大规模生产,确保产品的一致性和可靠性。
icc2后端设计流程1. 逻辑综合(Logic Synthesis):在这一阶段,工程师将设计的RTL(Register Transfer Level,寄存器传输级)描述转化为逻辑门级的电路描述。
逻辑综合工具会将RTL的代码转换为等效电路,以满足电路规格和性能要求。
2. 物理布局(Physical Layout):在该阶段,工程师需要将逻辑综合生成的电路结构进行合理的布局。
物理布局涉及到将电路元件(如逻辑门、寄存器、电缆等)放置在芯片上的位置。
合理的物理布局可以提高电路的性能和可靠性。
3. 综合布局(Floorplanning):在这一阶段,工程师需要确定将电路元件放置在芯片上的具体位置和面积大小。
综合布局要考虑到电路元件之间的连线和信号传输的最短路径。
4. 时序优化(Timing Optimization):在这一步骤中,工程师会使用时序优化工具来改善电路的时序特性,以保证电路在特定的时钟频率下正常工作。
通过对逻辑电路的优化,减少路径的延迟,并对布局进行调整,以提高时序约束。
5. 连线(Routing):在电路的物理布局确定后,需要进行连线,将各个电路元件之间的信号线连接起来。
连线过程中需要考虑到信号的延迟、功耗等因素。
6. 引脚分配(Pin Assignment):在这一阶段,为电路设计分配引脚。
引脚分配需要考虑电路的输入和输出连接,以便正确与其他器件进行通信。
7. 功耗优化(Power Optimization):在电路设计完成后,工程师还需要进行功耗优化。
这包括减少电路中的冗余部分、优化电路的布局,以及采用低功耗的设计方法,以降低功耗并提高电路的能效性。
以上是ICC2后端设计流程的主要步骤。
在每个阶段中,工程师需要借助ICC2提供的工具和算法来完成任务。
这些流程顺序要根据具体的电路规模和设计要求来确定,工程师还需要进行多次迭代和调整,以优化电路设计的性能和可靠性。
通过ICC2后端设计流程,工程师可以高效地完成集成电路的设计和验证工作。
ic版图设计的流程下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。
文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor. I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!IC 版图设计是将电路设计转化为物理版图的过程,以下是一般的 IC 版图设计流程:1. 电路设计设计师使用电路设计软件创建电路原理图。
数字ic设计流程
数字IC设计流程,是指数字电路从概念到实际产品的全过程。
该流程包括需
求分析、体系结构设计、逻辑设计、物理设计、验证和测试等阶段。
首先,在需求分析阶段,设计人员要明确产品的功能、性能、功耗、面积和时钟频率等要求。
在此基础上,确定系统的体系结构,包括硬件和软件部分,定义数据通路和控制流程。
其次,进行逻辑设计。
这一阶段包括电路的抽象设计、功能验证和综合等过程。
设计人员要将需求分析的结果转化为电路逻辑结构,并进行功能验证以保证电路的正确性。
综合则是将逻辑电路转化为物理电路,包括细节的布局、定位和布线等。
第三步是物理设计。
该阶段是将电路的逻辑结构转化为物理布局,包括芯片的平面布局和线路布局等。
物理设计的目标是实现电路的可布线、可制造和可测试,同时保证电路的性能和功耗等要求。
第四步是验证,包括功能验证、时序验证、功耗验证和可靠性验证等。
在这一阶段,设计人员要进行各种类型的验证以保证电路的正确性和可靠性。
同时,需
要评估电路的功耗和时序性能,以便进一步优化设计。
最后,进行测试。
该阶段是在实际生产前,对设计的芯片进行测试,检查其性能和可靠性。
测试包括芯片的电气特性测试、功能测试和系统集成测试等。
只有通过了测试,才能将芯片投入生产。
综上所述,数字IC设计流程是一个非常复杂和严格的过程,需要设计人员具
备丰富的经验和技术知识,才能确保设计的芯片符合产品要求。
icc2后端设计流程1.电路模型提取和准备在ICC2的后端设计流程中,首先从前端设计引擎接收输入电路设计和约束条件。
然后,从输入的设计中提取电路的逻辑和时序信息,并根据实际情况进行重映射和标准化。
这一步骤通常涉及到电路综合、逻辑优化、约束检查和转换等多个子流程。
最终的目标是提供给下一步的综合器一个准确和合适的电路模型。
2.支持库生成和选择在第一步中完成了电路模型的准备后,ICC2需要根据设计要求和约束条件选择合适的支持库。
支持库是一个包含不同逻辑门、寄存器、存储单元等元件的数据库。
通过选择合适的支持库,可以实现一个同时满足设计需求和硬件要求的电路。
3.物理布局与综合物理布局是指将电路中的逻辑元件映射到物理实体上的过程。
在ICC2中,物理布局与综合通常是同时进行的,以达到更好的电路性能和面积效益。
这个步骤包括以下几个主要流程:-逻辑综合:将输入的设计转化为等效的逻辑网表-连线规划:确定元件之间的连接方式和路径,以满足电路性能和约束要求-占用和分配布局资源:确定每个元件在芯片上的放置位置,并占用和分配逻辑单元、寄存器、存储器等布局资源-物理综合:将逻辑网表和布局约束映射到芯片层次的综合结果中,生成精确的物理布局4.物理布局和优化在第三步中生成的物理布局为芯片中的不同元件提供了合适的放置和布线位置。
然而,这个布局可能不是最优的,因此需要对其进行优化。
在ICC2的后端设计流程中,通常采用以下几种方法来进行物理布局和优化:-图形优化:基于图形分析和优化算法来实现逻辑单元和连线的最优布局-缩影布线:采用一种缩影图形表示法,通过网络和约束求解器来生成最优的连线布局-锁位:根据芯片的硬件要求和设计约束,将一些元件锁定在特定的位置,以实现更好的性能和面积利用率5.线长调整和时钟树合成线长调整是指对设计中的时延进行微调,以满足时序约束和最小锁定约束。
这一步骤通常需要运用线长匹配等技术来实现。
时钟树合成是指生成芯片中各个时钟域之间的时钟连接。
基本后端流程(漂流&雪拧)----- 2010/7/3---2010/7/8 本教程将通过一个8*8的乘法器来进行一个从verilog代码到版图的整个流程(当然只是基本流程,因为真正一个大型的设计不是那么简单就完成的),此教程的目的就是为了让大家尽快了解数字IC设计的大概流程,为以后学习建立一个基础。此教程只是本人探索实验的结果,并不代表内容都是正确的,只是为了说明大概的流程,里面一定还有很多未完善并且有错误的地方,我在今后的学习当中会对其逐一完善和修正。
此后端流程大致包括以下内容: 1. 逻辑综合(逻辑综合是干吗的就不用解释了把?) 2. 设计的形式验证(工具formality) 形式验证就是功能验证,主要验证流程中的各个阶段的代码功能是否一致,包括综合前RTL代码和综合后网表的验证,因为如今IC设计的规模越来越大,如果对门级网表进行动态仿真的话,会花费较长的时间(规模大的话甚至要数星期),这对于一个对时间要求严格(设计周期短)的asic设计来说是不可容忍的,而形式验证只用几小时即可完成一个大型的验证。另外,因为版图后做了时钟树综合,时钟树的插入意味着进入布图工具的原来的网表已经被修改了,所以有必要验证与原来的网表是逻辑等价的。 3. 静态时序分析(STA),某种程度上来说,STA是ASIC设计中最重要的步骤,使用primetime对整个设计布图前的静态时序分析,没有时序违规,则进入下一步,否则重新进行综合。(PR后也需作signoff的时序分析) 4. 使用cadence公司的SOCencounter对综合后的网表进行自动布局布线(APR) 5. 自动布局以后得到具体的延时信息(sdf文件,由寄生RC和互联RC所组成)反标注到网表,再做静态时序分析,与综合类似,静态时序分析是一个迭代的过程,它与芯片布局布线的联系非常紧密,这个操作通常是需要执行许多次才能满足时序需求,如果没违规,则进入下一步。 6. APR后的门级功能仿真(如果需要) 7. 进行DRC和LVS,如果通过,则进入下一步。 8. 用abstract对此8*8乘法器进行抽取,产生一个lef文件,相当于一个hard macro。 9. 将此macro作为一个模块在另外一个top设计中进行调用。 10. 设计一个新的ASIC,第二次设计,我们需要添加PAD,因为没有PAD,就不是一个完整的芯片,具体操作下面会说。 11. 重复第4到7步 1. 逻辑综合 1) 设计的8*8verilog代码如下 module mux (clk,clr,data1,data2,dataout); input clk,clr; input [7:0] data1,data2; output reg [15:0] dataout;
always @(posedge clk) begin if(!clr) begin dataout<=0; end else begin dataout<=data1*data2; end end endmodule 2) 综合之前,我们要选取库,写好约束条件,修改dc的启动文件synopsys_dc.setup,目标库选择TSMC(此设计都是用TSMC18的库)的typical.db。(选择max库会比较好) Dc的命令众多,但是最基本的命令差不多,此设计的约束文件命令如下: create_clock -period 10 [get_ports clk] //用于时钟的创建 set_clock_latency -source -max 0.2 [get_ports clk] //外部时钟到core的clk连线延时 set_clock_latency -max 0.1 [get_ports clk] //core的clk到寄存器clk端的net连线延时 set_clock_uncertainty -setup 2 [get_ports clk] //时钟延时的不确定性,求setup违规时会被计算进去 set_clock_uncertainty –hold 1 【all_clocks】 set_input_delay -max 0.5 -clock clk [get_ports [list [remove_from_coll [all_inputs] clk] ] //输入延时,外部信号到input端的连线延时 set_output_delay -max 0.5 -clock clk [all_outputs] //输出延时
set_driving_cell -lib_cell INVX4 [all_inputs] //输入端的驱动强度 set_load -pin_load 0.0659726 [all_outputs] //输出端的驱动力
set_wire_load_model -name tsmc18_wl10 -library typical //内部net的连线模型 set_wire_load_mode enclosed //定义建模连线负载相关模式 set_max_area 0 compile report_timing report_constraint change_names -rule verilog –hier set_fix_multiple_ports_net –all write -format verilog -hier -output mux.sv //输出网表,自动布局布线需要 write -format ddc -hier -output mux.ddc //输出ddc write_sdf mux.sdf //输出延时文件,静态时序分析时需要 write_sdc mux.sdc //输出约束信息,自动布局布线需要 3) 逻辑综合 启动design_vision。Read->mux.v
File->excute script->verti.con 输入约束文件。.
之后会产生mux.sv,mux.sdc,mux.sdf,mux.ddc等文件 4) 时序分析 综合以后我们需要分析一下时序,看时序是否符合我们的要求,综合实际上是一个setup时间的满足过程,但是我们综合的时候,连线的负载只是库提供的(即上面的wire_load),并不是实际的延时,所以一般做完综合以后,时间余量(slack)应该为时钟的30%(经验值),以便为后面实际布局布线留下充足的延时空间。因为如果slack太小,甚至接近于0,虽然我们看起来是没有时序违规的,但是实际布局以后,时序肯定无法满足。 使用report_timing命令,可以查看时序分析报告: **************************************** Report : timing -path full -delay max -max_paths 1 -sort_by group Design : mux Version: D-2010.03-SP1 Date : Fri Jul 2 12:29:44 2010 ****************************************
Operating Conditions: typical Library: typical(模型库) Wire Load Model Mode: enclosed
Startpoint: data2[4] (input port clocked by clk) Endpoint: dataout_reg_15_ (rising edge-triggered flip-flop clocked by clk)
Path Group: clk Path Type: max
Des/Clust/Port Wire Load Model Library ------------------------------------------------ mux tsmc18_wl10 typical (线载模型及库)
Point Incr Path
-------------------------------------------------------------------------- clock clk (rise edge) 0.00 0.00 clock network delay (ideal) 0.00 0.00 input external delay 0.50 0.50 f data2[4] (in) 0.01 0.51 f mult_14/b[4] (mux_DW_mult_uns_0) 0.00 0.51 f mult_14/U131/Y (INVX1) 0.54 1.05 r mult_14/U161/Y (NOR2X1) 0.14 1.18 f mult_14/U39/S (CMPR42X1) 0.68 1.87 f mult_14/U12/CO (ADDFX2) 0.32 2.19 f mult_14/U11/CO (ADDFX2) 0.23 2.42 f mult_14/U10/CO (ADDFX2) 0.23 2.65 f mult_14/U9/CO (ADDFX2) 0.23 2.88 f mult_14/U8/CO (ADDFX2) 0.23 3.10 f