您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > 一个ASIC设计流程实例
摘要:本文介绍了基于标准单元库的深亚微米数字集成电路的自动化设计流程。此流程从设计的系统行为级描述或RTL级描述开始,依次通过系统行为级的功能验证,设计综合,综合后仿真,自动化布局布线,到最后的版图后仿真。在这里,我们用Synopsys公司的VSS(VHDLSystemSimulator)工具进行各种仿真,用DesignCompiler进行综合,用Cadence公司的SiliconEnsemble进行自动布局布线。对于最后的版图后仿真,由于输出文件的限制,我们改用Active-HDL工具进行验证。本文同时用一个实例DDFS对整个流程加以了举例说明。关键词:库,仿真,约束,综合,floorplan,布局布线。前言11前前前前言言言言传统的芯片设计方法是手工全定制。随着半导体工艺的几何缩小,集成电路设计已经到了深亚微米的时代。在同一面积上,晶体管数目的迅猛增加,传统的芯片设计方已几乎变得不可能。再加上time-to-market的压力越来越大,用户要求芯片制造商在最短的时间内用最低的费用生产高性能产品。为了解决这些问题,新的方法学和工具得到了发展。近几年来,为了缓解time-to-market的压力和快速更新设计以满足用户的要求,一些高性能的工具和技术得到了发展。高级设计语言的应用,如VHDL,Verilog,取代了手画电路图,并且提高了设计重用。技术更改指令ECO(EngineeringChangeOrders)技术的发展更进一步的提高了设计重用。FormalVerification代替动态仿真,不仅提高了验证速度,更重要的是它摆脱了工艺的约束和仿真testbench的不完全性,更全面的检查了电路的功能。从行为级开始综合大大提高了设计者的设计灵活性,使设计者更进一步脱离了工艺与物理的限制。设计预算方法学的发展使设计者在较少的时间内得到了较好的QOR,并且提供了更好的环境约束。模块编译器简化和自动化了data-path设计,帮设计者解决复杂而没有规则的data-path设计。自动布局布线提高了版图生成的效率,减少了过多的人工干预所带来的不确定性。版图提取和分析加强了逻辑设计与物理设计之间的联系与信息交换,更进一步提高了逻辑综合时对版图的考虑。设计重用技术,验证技术,行为综合和逻辑综合,设计预算技术,模块编译技术,布局布线自动化,版图提取和分析等技术的应用大大提高了设计人员的设计能力,缩短了设计周期。本文讲述的是基于标准单元库的数字集成电路的设计流程和方法学。它从行为级的HDL描述开始,依次进行系统行为级仿真,RTL级仿真,逻辑综合,综合后仿真,自动化布局布线,最后是版图后仿真。所有这些步骤都是通过工具自动完成,快速而有效。我用Synopsys公司的VSS(VHDLSystemSimulator)工具进行各种仿真,用DesignCompiler进行综合,用Cadence公司的SiliconEnsemble进行自动布局布线。对于最后的版图后仿真,由于输出文件的限制,我们改用Active-HDL工具进行验证。并且解决clocktree和版图后仿真的问题。本文用DDFS,I2C,counter等实例对整个流程加以了验证。本文的第1章简要介绍了深亚微米数字集成电路的设计流程。从第2章开始我们将分章节详细介绍各个主要步骤。第2章介绍系统行为级仿真方法。第3章介绍行为级综合和模型编译。第4章解释了综合的概念,介绍了逻辑综合的实现及讨论了几个常见问题的解决方法。第5章解决了版图后仿真的实现问题,阐述了各种技术库的生成,比较了系统行为级仿真和综合后仿真的区别。第6章介绍了FormalVerification和其他辅助工具的应用。第7章详细讲述了自动化布局布线方法,解决了clocktree的生成问题。由于版图后仿真与综合后仿真在操作上没什幺区别,这里就略去不讲。EDA设计的概述11第第第第1111章章章章EEEEDDDDAAAA设设设设计计计计的的的的概概概概述述述述随着电路设计进入VLSI,甚至ULSI时代,电路规模迅速上升到几十万门甚至几百万门。根据摩尔定律,每十八个月增加一倍。而设计人员的设计能力只是一个线性增长的曲线,远远跟不上电路规模指数上升的速度。为了弥补这个差距,工业界对EDA软件和设计方法不断提出新的要求。在80年代,由美国国防部支持的VeryHighSpeedIntegratedCirciut发展计划促成了VHDL的诞生,并使之成为了国际标准。而Cadence公司的VerilogHDL在工业界获得了广泛的接受,并最终成为了国际标准。利用HDL进行设计大大方便了设计输入,提高了设计抽象程度,更有利于设计人员发挥聪明才智,因而可以大大提高设计效率,缩短了设计周期。随着电路规模的增大和系统复杂度的增加,直接用电路实现已是不可能,RTL级的HDL编码也变得越来越难以忍受。行为级综合技术的发展为设计者带来了曙光。它使设计者开始逐步摆脱繁重的RTL级编码,大大提高了设计者的设计灵活性和设计效率,减少了工艺及物理对设计的约束。为了提高设计的速度和设计成功率,利用已验证正确的设计作为新设计的一部分是现在大规模设计的常用方法。随着时代的发展,人们对产品的要求越来越高。他们要求的不仅仅是新产品的出现,更多的是要求改善旧产品的性能,增加更多的功能。为此对旧的设计的修改是必须的。为了充分利用以前的成果,减少修改的工作量,加快设计修改速度,同时尽量不影响不变部分,提高修改的成功率,技术更改指令ECO被提了出来并得到了发展。随着半导体工艺的不断进步,器件的特征尺寸越来越小,线宽越来越窄,器件的速度变得越来越快。但同时随着设计的越来越复杂,电路规模的越来越大,金属线的长度和层数不断增加,线宽也随之变小。这都导致了金属连线的延时变大。于是器件的延时不再是一个系统的主要延时,连线的延时变得越来越重要,甚至超过了器件的延时。因此以前设计系统时只考虑器件延时的观念已经行不通,设计时考虑连线的延时是必须的。设计者在设计时必须同时考虑到综合和版图,且使综合和版图尽量结合在一起。把综合后的时序信息前注释到布局布线,同时布局布线后提取寄生参数和时序延时信息后注释回综合,从而使逻辑设计和物理设计紧密的结合起来。考虑到连线延时,必须进行版图后仿真。版图后仿真必须后注释大量的版图时序延时信息。电路规模的增大导致了时钟同步的问题。时钟到达不同子模块的延时不同,这成了一个系统失败的致命弱点。为了解决时钟延时的问题,在布局布线中CLOCKTREE的技术得到了极大的发展。它较好的解决了这时钟延时的问题。随着系统规模的不断增大,功耗的问题变得越来越重要,散热成了人们的一大难题。为此,设计者在进行设计系统的时候必须考虑功耗的问题。在逻辑综合后必须进行功耗分析。设计流程基于标准单元库的数字集成电路设计方法主要流程为及工具使用如下:1.功能与规格要求;2.行为级编码,仿真testbench的准备及DFT存储器的BIST插入;3.用VSS进行系统行为级的功能验证;4.用BehavioralCompiler进行行为级综合,生成RTL级网表;5.用VSS进行RTl级仿真;6.用DesignCompiler进行初级综合;7.用DesignBudgeter进行设计约束的分配;8.用DesignCompiler进行逻辑综合与测试扫描插入;9.用VSS进行综合后时序功能验证;10.用DesignCompiler或PrimeTime版图前静态时序分析;11.用PowerCompiler进行功耗分析;12.用SiliconEnsemble进行floorplan,布局,ClockTree的插入以及全局布线;13.插入ClockTree后的网表重新读回DesignCompiler;14.用Formality验证原来的综合后网表和插入ClockTree后的网表;EDA设计的概述2215.用PrimeTime进行全局布线后静态时序分析;16.用SiliconEnsemble进行细节布线;17.用PrimeTiming进行版图后静态时序分析;18.用VCS或其他门级电路的仿真器进行版图后时序功能验证;19.流片大体的流程图如图1.1所示:由于篇幅的限制,本文将只详细讲述几个重要的工具,其他工具只讲述其流程。EDA设计的概述33功能与规格要求行为级编码行为级的功能验证行为级综合功能正确?RTL级功能验证功能正确?初级综合约束分配逻辑综合与测试扫描的插入综合后仿真功能正确?版图前STA时序满足?功耗分析floorplan,布局,CT插入和全局布线重新综合插入CT后的网表全局布线后STA时序满足?细节布线版图后STA时序满足?版图后仿真功能正确?插入CT前后的逻辑网表比较流片NOYESYESNONOYESYESNOYESNONOYESNOYESRCs,SDF图1.1数字集成电路的设计流程行为级仿真1第第第第2222章章章章行行行行为为为为级级级级仿仿仿仿真真真真2222....1111行行行行为为为为级级级级仿仿仿仿真真真真简简简简介介介介当设计完成后,为了验证功能是否正确,设计者必须对其设计源文件进行仿真。因为这时的设计文件为行为级的HDL文件,故称此仿真称为行为级仿真。当设计源文件经过行为综合,或手工编写,转换为RTL级设计文件后,设计者还必须进行RTL级仿真。因为RTL级仿真与行为级仿真在具体操作上没什么区别,本文将不再讲述RTL级仿真。2222....1111....1111工工工工具具具具介介介介绍绍绍绍::::synopsys提供了数个仿真工具:SSSScccciiiirrrrooooccccccccoooo、、、、VVVVHHHHDDDDLLLL仿仿仿仿真真真真工工工工具具具具、、、、VVVVeeeerrrriiiilllloooogggg仿仿仿仿真真真真工工工工具具具具。不同的仿真工具有不同用途和各自的优点。1111....SSSScccciiiirrrrooooccccccccooooScirocco为RTL0级功能验证提供最快最高性能的VHDL仿真。Scirocco既支持基于周期(cycle-based)的仿真也支持事件驱动(event-driven)的仿真。Scirocco使基于周期(cycle-based)的仿真有着事件驱动(event-driven)仿真的灵活性。这个技术为综合的设计优化提供了最佳性能。它支持混合语言仿真。Scirocco支持各级的设计描述,但只对行为级和寄存器级进行优化。Scirocco支持后仿真机制。支持多语言,多平台,多仿真器。Scirocco有强大的纠错能力。后后后后仿仿仿仿真真真真机机机机制制制制::::就是通过把VCD(aValueChangeDump)历史文件作为输入,对事件驱动仿真不再进行调试,而直接分析VCD文件里记录的仿真结果。2.VVVVHHHHDDDDLLLL仿仿仿仿真真真真工工工工具具具具VVVVHHHHDDDDLLLL仿仿仿仿真真真真工工工工具具具具用于Synopsys高级设计学的功能验证阶段。它包括Synopsys系统仿真器(VSS)和Cyclone。VSS是一个事件驱动仿真器,Cyclone是一个基于周期的仿真器。VSS和Cyclone都可用于确认和验证寄存器级设计,VSS还可用于验证门级设计。VHDL仿真器工具顾名思义只能对VHDL设计进行仿真,但是它可以产生Verilog目标文件,使其可用于VCS(VerilogCompiledSimulator)仿真器。同样对于Verilog设计,设计者也可通过VCS仿真器产生VHDL目标文件,使其用于VSS仿真器。这样就解决了混合语言仿真的问题。基于周期仿真器:只在每个时钟的有效沿计算设计源代码的值,而对每个周期内的其他时序信息不与考虑,即对时钟周期间的事件不进行仿真。信号在时钟沿是被假设为稳定的,因此建立时间,保持时间,脉冲宽度的违约现象都被忽略。虽然两个时钟沿间的信号和时序信息被忽略了,但是它大大加快了仿真的速度和俭省了内存空间。对复杂的大型设计,这种仿真机制有着很大的优势。事件驱动仿真器:在
本文标题:一个ASIC设计流程实例
链接地址:https://www.777doc.com/doc-4465134 .html