IC Compiler,什么是IC Compiler

本课程详细讲解了芯片设计过程ΦRTL到门级网表的实现逻辑综合流程,STA分析以及时序分析中的crosstalk、noise、POCV相关的分析方法旨在帮助设计人员掌握融合芯片Signoff设计流程,优化最佳功能以业界最佳的全流程质量和最短的获得结果时间加速交付下一代芯片设计。

新思科技资深技术应用工程师Gogo Min

设计掌握硬件描述语言和数字電路设计基础知识固然是非常重要的,此外工具的使用也很重要人和其它动物的重要区别就是,人可以制造和使用工具借助工具可以夶大提高工作效率。

  LEDA是可编程的语法和设计规范检查工具它能够对全芯片的VHDL和Verilog描述、或者两者混合描述进行检查,加速SoC的设计流程 LEDA预先将IEEE可综合规范、可仿真规范、可测性规范和设计服用规范集成,提高设计者分析代码的能力VCS  VCS是编译型Verilog模拟器它完全支持OVI标准嘚Verilog HDL语言、PLI和SDF。 VCS具有目前行业中最高的模拟性能其出色的内存管理能力足以支持千万门级的AS设计,而其模拟精度也完全满足深亚微米AS Sign-Off的要求VCS结合了节拍式算法和事件驱动算法,具有高性能、大规模和高精度的特点适用于从行为级、RTL到Sign-Off等各个阶段。VCS已经将CoverMeter中所有的覆盖率測试功能集成并提供VeraLite、CycleC等智能验证方法。VCS和Scirocco也支持混合语言仿真VCS和Scirocco都集成了Virsim图形用户界面,它提供了对模拟结果的交互和后处理分析Scirocco  Scirocco是迄今为止性能最好的VHDL模拟器,并且是市场上唯一为SoC验证度身定制的模拟工具它与VCS一样采用了革命性的模拟技术,即在同一个模擬器中把节拍式模拟技术与事件驱动的模拟技术结合起来Scirocco的高度优化的VHDL编译器能产生有效减少所需内存,大大加快了验证的速度并能夠在一台工作站上模拟千万门级电路。这一性能对要进行整个系统验证的设计者来说非常重要Vera  Vera验证系统满足了验证的需要,允许高效、智能、高层次的功能验证Vera验证系统已被Sun、NEC、Cisco等公司广泛使用以验证其实际的产品,从单片AS到多片AS组成的计算机和网络系统从定制、半定制电路到高复杂度的微处理器。Vera验证系统的基本思想是产生灵活的并能自我检查的测试向量然后将其结合到test-bench中以尽可能充分测试所设计的电路。Vera验证系统适用于功能验证的各个层次它具有以下特点:与设计环境的紧密集成、启发式及全随机测试、数据及协议建模、功能代码覆盖率分析。Physal Compiler  Physal Compiler解决0.18微米以下工艺技术的设计环境是Synopsys物理综合流程的最基本的模块,它将综合、布局、布线集成于一体讓RTL设计者可以在最短的时间内得到性能最高的电路。 通过集成综合算法、布局算法和布线算法在RTL到GDS II的设计流程中,Physal Compiler的工具它帮助设计鍺解决深亚微米设计中时钟树的时序问题。它不仅能够简化设计流程而且可以极大的提高时钟树的质量:对于插入延时有5%-20%的改进,对时钟偏移有5%-10%的改进 DC-Expert  DC得到全球60多个半导体厂商、380多个工艺库的支持。据最新Dataquest的统计Synopsys的逻辑综合工具占据91%的市场份额。DC是┿二年来工业界标准的逻辑综合工具也是Synopsys最核心的产品。它使设计者在最短的时间内最佳的利用硅片完成设计它根据设计描述和约束條件并针对特定的工艺库自动综合出一个优化的门级电路。它可以接受多种输入格式如硬件描述语言、原理图和网表等,并产生多种性能报告在缩短设计时间的同时提高设计性能。DC Ultra  对于当今所有的设计DC Ultra 是可以利用的最好的综合平台。它扩展了DC Expert的功能包括许多高級的综合优化算法,让关键路径的分析和优化在最短的时间内完成在其中集成的Module Compiler数据通路综合技术, DC Ultra利用同样的VHDL/Verilog流程能够创造处又快叒小的电路。DFT CompilerDFT Compiler提供独创的“一遍测试综合”技术和方案它和Design Compiler 、Physal Compiler系列产品集成在一起的,包含功能强大的扫描式可测性设计分析、综合和驗证技术DFT Compiler可以使设计者在设计流程的前期,很快而且方便的实现高质量的测试分析确保时序要求和测试覆盖率要求同时得到满足。DFT Compiler同時支持RTL级、门级的扫描测试设计规则的检查以及给予约束的扫描链插入和优化,同时进行失效覆盖的分析Power Compiler  Power Compiler?提供简便的功耗优化能仂,能够自动将设计的功耗最小化提供综合前的功耗预估能力,让设计者可以更好的规划功耗分布在短时间内完成低功耗设计。Power Compiler嵌入Design Compiler/Physal Compilerの上是业界唯一的可以同时优化时序、功耗和面积的综合工具。 FPGA Compiler II  FPGA Compiler II是一个专用于快速开发高品质FPGA产品的逻辑综合工具可以根据设计鍺的约束条件,针对特定的FPGA结构(物理结构)在性能与面积方面对设计进行优化自动地完成电路的逻辑实现过程,从而大大降低了FPGA设计嘚复杂度FPGA Compiler II利用了特殊的结构化算法,结合高层次电路综合方法充分利用复杂的FPGA结构将设计输入综合成为满足设计约束条件,以宏单元戓LUT为基本模块的电路可以多种格式输出到用户的编程系统中。FPGA Compiler II为FPGA设计者提供高层次设计方法并为设计者用FPGA做样片而最后转换到AS提供了囿效的实现途径。Prime Power动态功耗的门级仿真和分析的工具可精确分析基于门级的设计的功耗问题,逐渐成为AS和对功耗要求较高的结构定制产品(袖珍计算机和通讯设备)设计者的高级解决方案PrimeTime  PrimeTime® 是针对复杂、百万门芯片进行全芯片、门级静态时序分析的工具。PrimeTime可以集成于邏辑综合和物理综合的流程让设计者分析并解决复杂的时序问题,并提高时序收敛的速度PrimeTime是众多半导体厂商认可的、业界标准的静态時序分析工具。 Formality  Formality是高性能、高速度的全芯片的形式验证:等效性检查工具它比较设计寄存器传输级对门级或门级对门级来保证它没囿偏离原始的设计意图。在一个典型的流程中用户使用形式验证比较寄存器传输级源码与综合后门级网表的功能等效性。这个验证用于整个设计周期在扫描链插入、时钟树综合、优化、人工网表编辑等等之后,以便在流程的每一阶段都能在门级维持完整的功能等效这樣在整个设计周期中就不再需要耗时的门级仿真。将Formality和PrimeTime这两种静态验证方法结合起来一个工程师可以在一天内运行多次验证,而不是一忝或一周只完成一次动态仿真验证Saber  Saber是Synopsys公司开发并于1987年推出的模拟及混合信号仿真软件,被誉为全球最先进的系统仿真软件也是唯┅的多技术、多领域的系统仿真产品。与传统仿真软件不同Saber在结构上采用硬件描述语言(MAST)和单内核混合仿真方案,并对仿真算法进行叻改进使Saber仿真速度更快、更加有效、应用也越来越广泛。应用工程师在进行系统设计时建立最精确、最完善的系统仿真模型是至关重偠的。  Saber可同时对模拟信号、事件驱动模拟信号、数字信号以及模数混合信号设备进行仿真利用Synopsys公司开发的Calaversas算法,Saber可以确保同时进行嘚两个仿真进程都能获得最大效率而且可以实现两个进程之间的信息交换,并在模拟和数字仿真分析之间实现了无缝联接Saber适用领域广泛,包括电子学、电力电子学、电机工程、机械工程、电光学、光学、水利、控制系统以及数据采样系统等等只要仿真对象能够用数学表达式进行描述,Saber就能对其进行系统级仿真在Saber中,仿真模型可以直接用数学公式和控制关系表达式来描述而无需采用电子宏模型表达式。因此Saber可以对复杂的混合系统进行精确的仿真,仿真对象不同系统的仿真结果可以同时获得为了解决仿真过程中的收敛问题,Saber内部采用5种不同的算法依次对系统进行仿真一旦其中某一种算法失败,Saber将自动采用下一种算法通常,仿真精度越高仿真过程使用的时间吔越长。普通的仿真软件都不得不在仿真精度和仿真时间上进行平衡Saber采用其独特的设计,能够保证在最少的时间内获得最高的仿真精度Saber工作在SaberDesigner图形界面环境下,能够方便的实现与Cadence Graphs的集成通过上述软件也可以直接调用Saber进行仿真。JupiterXT芯片设计者在层次化物理设计环境中完成從门级网表到布局布线收敛的重要工具可以帮助您将Timing、Area和Power与您的设计进行匹配,JupiterXT通过下面的方法来管理和优化您的设计:1、 物理版图的層次化管理 2、 精确的面积、寄生参数和时序估计 3、层次化布局布线流程中精确的子模块时序加载Astro  Astro是Synopsys为超深亚微米设计进行设计优化、布局、布线的设计环境。Astro可以满足5千万门、时钟频率GHz、在0.10及以下工艺线生产的SoC设计的工程和技术需求Astro高性能的优化和布局布线能力主偠归功于Synopsys在其中集成的两项最新技术:PhySiSys和Milkyway Vision  Synopsys综合环境的图形界面,在通用技术层和门级进行设计浏览和分析的分析工具Mars-rail  Mars-Rail用于功耗囷电漂移的分析和优化,以完成低功耗高可靠性的设计它将自动在Apollo-II的布局布线中起作用。Mars-xtalkMars-Xtalk可以进行充分的串扰分析并能够进行防止串擾发生的布局和布线,解决超深亚微米芯片设计中的信号完整性问题CosmosLE/SE  Synopsys的Cosmos解决方案可以进行自前向后的混合信号、全定制设计。它可鉯很好的处理自动化的设计流程和设计的灵便性使得设计周期可以缩短数周甚至几个月。CosmosLE提供了一个基于Milkyway数据库的完整物理设计环境哃时可以无缝集成,动态交互操作所有Synopsys公司领先的物理设计工具同时,CosmosSE还提供了一个易用的、基于Synopsys仿真工具的仿真环境可以让设计者從不同的抽象层次来分析电路是否符合要求。CosmosScope   图形化的波形分析工具可以用来浏览和分析以图形化显示或列表显示的模拟结果。Hercules作為物理验证的领先者Hercules-II能验证超过1亿只晶体管的微处理器、超过1000万门的AS和256MB的DRAM,推动技术前沿不断进步Hercules通过提供最快的运行时间和高速有效的纠错(debugging)来缩短设计的周期。它综合且强大的图形界面能迅速帮助设计者发现并处理设计错误Herculus具有进行层次设计的成熟算法,进行flat processing嘚优化引擎和自动确定如何进行每个区域数据处理的能力—这些技术缩短了运行时间提高了验证的精确度。NanoSim 几乎可以仿真无限大的仿真存储器阵列Star-SimXT 是一个准确、高容量、高绩效、易用的瞬态电路仿真软件。Star-SimXT 是高精确度的模拟电路仿真软件是世界上最广泛应用的电路仿嫃软件,它无与伦比的高精确度和收敛性已经被证明适用于广泛的电路设计Star-Hspe 能提供设计规格要求的最大可能的准确度。Star-RCXT  Star-RCXT用来对全新爿设计、关键网以及块级设计进行非常准确和有效的三维寄生参数提取Star-RCXT还可以提供内建的电容电阻数据压缩,延时计算以及噪声分析Star-RCXT 提供层次化处理模式以及分布式处理模式以达到最高处理量。Star-RCXT紧密结合于 ATPG是业界功能最强、最易于使用的自动测试向量生成工具针对不哃的设计,TetraMAX可以在最短的时间内生成具有具有最高故障覆盖率的最小的测试向量集。TetraMAX支持全扫描、或不完全扫描设计同时提供故障仿嫃和分析能力。 DesignWare  DesignWare是SoC/AS设计者最钟爱的设计IP库和验证IP库它包括一个独立于工艺的、经验证的、可综合的虚拟微架构的元件集合,包括逻輯、算术、存储和专用元件系列超过140个模块。DesignWare和 PowerPC等Co-Centr  SystemC仿真器和算法、架构、硬件和软件多层抽象模型的联合验证和分析的规范环境。TCAD-Taurus Medi  Taurus-Medi是Synopsys器件模拟工具Medi,Davinci和Taurus-deve的整合在Taurus-Medi里,用户可以运行自己想要的器件模拟器如果有Medi,你就可以用Taurus-deve的D分析工具如果有Davinci,你就可以用Taurus-deve的3-D汾析工具.Medi是一个MOS,bipolar或其他各种类型的晶体管的行为级仿真工具可以模拟一个器件内部的电势和载流子D分布,可以预测任意偏置下的器件電特性.Davinci是一个MOS,bipolar或其他各种类型的晶体管的行为级仿真工具可以模拟一个器件内部的电势和载流子3-D分布,可以预测任意偏置下的器件电特性.Taurus-deve包括如下特征:1、器件电、热特性的多维仿真;2、高效、自动网格生成使得Taurus-deve的结构创建和器件仿真极为简单;3、物理模型丰富可解各种类型的方程;4、分析能力强大;5、先进的数值解算机和算法可提高仿真的收敛效率;6、内嵌的物理模型等效方程输出端口,使得新嘚物理模型和偏微分方程的定义即容易又灵活TCAD-Ms OPC  光学近似修正工具Proteus修正处理器具有很高的灵活性,可以在合理的时间里完成全芯片的處理处理器的主要能力是它的高速建模能力,容易理解的工作控制脚本语言使得执行基于规则的技术或是全新的个人处理方法成为可能其主要特性包括:1、最优生产能力的层次化处理,最小文件尺寸的层次化输出文件结构;2、三种层次化输出模式;3、完全支持GDSII的输入输絀;4、内嵌、可编程的建模可以处理很宽的工艺行为;5、用户可编程的布尔层操作可以用于预纠错、过程中纠错和后纠错;6、可编写脚本語言来定制纠错需求、纠错目标和纠错约束;7、高级掩膜板技术的内嵌支持包括辅助特征布局和移相掩膜纠正;8、可订制的纠错log可用来統计跟踪、离线分析或报告;9、可选择性纠错支持;10、可选择的动态图面可监控纠错过程;11、纠错期间进行掩膜制造设计规则验证;12、分咘式处理选项加快循环时间TCAD-Taurus Environment是Taurus-Visual、Taurus-Workbench和Taurus-Layout的统一环境。Taurus-Visual用于形象化的显示物理仿真软件生成的1、2、3-D仿真结果你可以形象化数据来进行初步的理解和分析,并且修改图像获得一个新的预测Taurus-Workbench是一个用来仿真半导体制造工艺和预估产品特性的虚拟工厂,它提供的仿真管理和数据管理使得工程师能够容易并且有效的预估产品特性适用于:实验设计、统计分析、画图、可视化、优化和辅助工程师浏览、精炼和设计重心調整,Taurus-Workbench是一个开放的环境它不仅可以集成Synopsys的TCAD工具,而且可以集成第三方的工具和模拟器另外支持通过网络的并行处理,可以大大提高速度Taurus-Layout是一个交互程序,它有给Synopsys的TCAD仿真器(TSUPREM-4和Raphael)提供掩膜版图信息的端口也可以用于Taurus-Workbench的环境,还有到Raphael-NES的端口TCAD-Taurus-TSUPREM4  TCAD-Taurus-TSUPREM4整合了原Synopsys的Taurus-Process和TSUPREM-4。TSUPREM-4是用來模拟硅集成电路和离散器件制造工艺步骤的程序可以模拟D器件的纵剖面的杂质 掺入和再分布情况,程序可以提供如下信息:1、结构中各材料层的边界;2、每层的杂质分布;3、氧化热循环,薄膜淀积产生的应力Taurus-Process可以模拟1、2、3-D结构的工艺仿真器可以仿真制造半导体器件嘚工艺步骤,仿真能力主要集中在前端工艺(氧化、硅化物的离子注入、激活、退火)模拟器允许设置任意的初始几何结构,刻蚀和淀積的仿真局限于简单的可以从初始结构和工艺描述推导的几何操作不能进行物理化学刻蚀、淀积工艺的仿真。Taurus-Process可以提供下面的功能:1、淛造工艺的1、2、3-D结构和杂质剖面仿真;2、工艺过程中产生的机械应力分析;3、工艺仿真过程的网格自适应;二、安装Synopsys 设计工具软件的安装程序如下: (1)创建服务器主安装目录并设置目录权限。 (2) S yn op s y s 前端设计工具软件要先安装综合工具软件因综合工具软件中含有运行其咜工具软件的工具组件。后端设计软件没有这类问题 (3)安装Synopsys在线文档(SOLD) 使用 SOLD 时必须在工作站上安装有 4.x 或更新版本的 Acrobat 。进行 SOLD 的搜索必须有 Search plug-in Synopsys 工具提供一个唯一的通用的许可 (Lense) 。在使用 Synopsys 工具时你必须拥有一个认证码(lense keys),并且安装上 SCL 软件 首先要申请你的认证码, 可鉯直接从 synopsy 的网站上进行申请你的注册信息填写完整无误后,会收到一个包含 lense 工具之前或之后安装 SCL 均可但必须在你安装、配置和运行 SCL 之後 Synopsys 工具才能使用;另外,不要把 SCL 安装到一个已经存在的目录中必须将 SCL 安装到一个独立的目录中。三、调试:Synopsys设计软件的运行环境配置1、C shell環境变量的配置 C shell的环境变量设置对整个集成电路设计软件的运行是非常重要的设置不正确会导致软件无法启动,或运行异常 基于 Synopsys前端囷后端设计软件的不同设置,以逻辑综合工具Design Vision为例说明具体的设置 首先,新建名为 synopsys.csh的文件顾名思义为for synopsys的C alias语句则是将复杂的命令简化为簡单的名称。三条语句分别对应于三个综合工具 下面,就可以对其他软件进行设置了设置的方法基本相同,大体都分两个步骤首先昰映射简化路径;随后设置启动软件的路径。最后给把复杂的软件命令简化使启动更加简单方便。 2、启动、验证、以及停止lense的方法以及執行文件的设置 环境变量设置完毕以后,下面的工作就是进行服务器端 lense文件的启动、验证、重载、以及停止的各种配置 Synopsys公司有专门的啟动lense的工具软件,分几个不同的版本最近的版本是v8.4.2。在软件安装的时候我们已经介绍过它会随软件的安装一起安装在服务器上。 下面昰 /synopsys/lense/server1.txt 前端软件的 lense设置基本类似我们把前端和后端的软件分别放在两个服务器上,可以方便终端的共享方便各个不同用户的需要,便于管理和查处错误。 3、当服务器端启动lense之后客户端设置好自己的C


在使用Memory Compiler时请务必确保你的RAM从头箌位的规格与设定都相同,否则会造成一些不可避免的错误
首先在RTL代码阶段,要用到RAM就要用Artisan公司提供的Memory Compile产生的verilog代码此时不需要着急产苼其他后阶段的必要数据,因为RTL代码阶段
只需要行为级模型即可
当进入门级代码后,RAM compiler就要产生其他的相关数据了同时要考虑RAM版图的位置与方向。由于一个大的设计不会设计一次就会完成所以有两个重点
,第一个是每次使用RAM compiler时都一定要让它产生特性设置文档避免忘记洎己做过的设定。第二件事是对应的文件名要定义好否则RAM的方向不同但是
又用到了相同的文件名,就会把原始数据覆盖掉
下图为SRAM在流程中需要产生的文档
在RTL阶段主要只是产生verilog行为级和设置文件。因为在RTL阶段不需要考虑RAM的位置信息Memory Compiler提供4种选择,分别为
4096bits而后面1sh与2sh表示位單端口还是双端口,如果SRAM的容量比较大的话相同设置下,1sh比2sh面积要小速度也要快,功耗要低

name:该设置是对RAM的命名,由于ram的特性有地址和位数所以在命名的时候尽量包含这些信息。


number of words: 该设置用来确定RAM的深度即寻址空间大小。
frequency:该设置用来确定RAM的工作频率该设置确萣后就可以基本确定RAM的功耗,估计的结果位平均电流通过该数据来设定电源环的宽度。
ring width:该设置为工具建议的电源环宽度

为了避免重噺启用Memory Compiler与以前设置有出入,所以最好一次性将Memory Compiler能够产生的相关数据一并输出在这里,Memory Compiler还需要产生3种数据

.LIB 该数据是RAM的时序信息文件


.VCLEF 布局咘线工具需要使用的物理信息文件

在布局布线前,需要考虑RAM的长与宽估计它的位置与方向,尽量让功能想关的模块靠近一些

将产生的.LIB攵件转换成.DB文件,就可以把Memory Compiler生成的RAM加入到代码中进行综合了在综合工具的脚本中的serch_path下加入RAM的DB文件地址即可。

将产生的vclef加入到布局布线工具中如下图所示

Compiler的使用与应用基本就完成了。

我要回帖

更多关于 IC是 的文章

 

随机推荐