第1章 Cadence系统简介.doc_第1页
第1章 Cadence系统简介.doc_第2页
第1章 Cadence系统简介.doc_第3页
第1章 Cadence系统简介.doc_第4页
第1章 Cadence系统简介.doc_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章 Cadence系统简介1.1 Cadence系统概述1.1.1 博大精深的Cadence系统Cadence系统是一个大型的EDA软件,它几乎可以完成电子设计的方方面面,包括ASIC设计、FPGA设计和PCB板设计。与另一EDA软件Synopsys相比,Cadence的综合工具略为逊色。然而,Cadence在仿真、电路图设计、自动布局布线、版图设计及验证等方面却有着绝对的优势。Cadence与Synopsys的结合可以说是EDA设计领域的黄金搭档。此外,Cadence公司还开发了自己的编程语言skill,并为其编写了编译器。由于skill语言提供编程接口甚至与C语言的接口,故而可以Cadence为平台进行扩展,用户还可以开发自己的基于Cadence的工具。实际上,整个Cadence软件可以理解为一个搭建在skill语言平台上的可执行文件集。所有的Cadence工具都是用Skill语言编写的,但同时由于Cadence的工具太多而显得有点凌乱。这给初学者带来了更多的麻烦。Cadence包含的工具较多,包括了EDA设计的各个方面。本讲义旨在介绍Cadence的入门知识,所以不可能面面具到,只能根据ASIC设计流程,介绍ASIC设计者常用的一些工具,例如仿真工具Verilog-XL,布局布线工具Preview和Silicon Ensemble,电路图设计工具Composer,电路模拟工具Analog Artist,版图设计工具Virtuoso Layout Editor,版图验证工具Diva与Dracula,最后简单介绍一下Skill语言的编程。Cadence特点:1. 全球最大的EDA公司2. 提供系统级至版图级的全线解决方案3. 系统庞杂,工具众多,不易入手4. 除综合外,在系统设计,在前端设计输入和仿真,自动布局布线,版图设计和验证等领域居行业领先地位5. 具有广泛的应用支持6. 电子设计工程师必须掌握的工具之一Cadence功能:1. 系统级设计:System-Level Design2. 功能验证:Function Verification3. 仿真:Simulation4. 综合:Synthesis5. 布局布线:Place-and-Route6. 模拟、射频、混合信号设计:Analog,RF,and Mixed-Signal Design7. 物理验证与分析:Physical Verification and Analysis8. 打包:IC Packaging9. PCB设计:PCB DesignIC设计工具排行榜:1. VHDL仿真:CadenceIKOSVantageSynopsys2. 行为综合:SynopsysAlta3. 逻辑综合:SynopsysCompassMentor Graphics4. 可测性设计:SynopsysSunriseCompass5. 低功耗设计:SynopsysEpic6. 布局布线:CadenceAvant!Mentor Graphics7. 后仿真:SynopsysCadenceCompassIKOSVantage1.1.2 ASIC设计流程混合仿真 Verilog-XL测试生成 Test Compiler故障模拟 IKOS,Verifault逻辑综合 Design Compiler优化 Design Compiler混合仿真 Verilog-XL网表输出 Design Compiler自动布局布线 Preview版图验证 Dracula,Diva后模拟 Verilog-XL门阵列标准单元库掩模制造芯片测试测试向量版图生成功能定义设计输入Verilog,Composer,Design Compiler划分与布局规划Synopsys/Avant!行为级仿真Verilog-XL修改源代码图1.1 ASIC典型设计流程设计流程是规范设计活动的准则,好的设计流程对于产品的成功至关重要。本节将通过与具体的EDA工具(Synopsys和Cadence)相结合,概括出一个实际可行的ASIC设计的设计流程。图1.1是深亚微米实际设计过程中较常用的设计流程。在该设计流程中,高层次综合和底层的布局布线之间没有明显的界线,高层设计时必须考虑底层的物理实现(高层的划分与布局规划)。同时,由于内核(Core)的行为级模型有其物理实现的精确的延时信息,使得设计者可在设计的早期兼顾芯片的物理实现,从而可以较精确的估计互连的延时,以达到关键路径的延时要求。同时,布局布线后提取的SDF文件将被反标到综合后的门级网表中以验证其功能和时序是否正确。从该流程中可看出,在实际设计中较常用到的Cadence的工具有Verilog HDL仿真工具Verilog-XL,电路设计工具Composer,电路模拟工具Analog Artist,版图设计工具Virtuoso Layout Editor,版图验证工具Dracula和Diva以及自动布局布线工具Preview和Silicon Ensemble。1.2 Cadence使用基础1.2.1 Cadence 软件的环境设置要使用Cadence,必须在计算机上作一些相应的设置,这些设置包括很多方面,而且不同的工具都需要进行各自的设置。读者如果遇到这方面的问题,可以参考一下openbook中的Configuration Guides及各工具的user guide或者reference。作为初学者,只需进行以下几项设置:1 .cshrc文件的设置Cadence系统使用之前,首先要在.cshrc文件中设置Cadence所在的路径以及所使用的licence文件等。cshrc文件在安装Cadence时已经设置好了,此处从略。2 cds.lib文件的设置具体设计中,用户有时需要加入自己的库,此时需要修改库管理文件cds.lib。对于初次使用Cadence的用户,Cadence会在用户的当前目录下生成一个cds.lib文件,用户通过CIW生成一个库时,Cadence会自动将其加入cds.lib文件中。在具体的实验中将有关于此项的练习。3 技术库的生成技术文件库对于IC设计而言是非常重要的,其中包含了很多设计中所必需的信息。对于版图设计者而言,技术库就显得更为重要了。要生成技术文件库,必须先编写技术文件。技术文件主要包括层的定义,符号化器件的定义,层、物理以及电学规则和一些针对特定的Cadence工具的规则的定义。例如自动布局布线的一些规则,版图转换成GDSII时所用到的层号的定义。在lab8中有关于技术文件编辑的具体项目。1.2.2 启动Cadence系统1. 启动命令完成了一些必要的设置后,就可以启动Cadence软件。启动Cadence软件的命令有很多,不同的启动命令可以启动不同的工具集,常用的启动命令有icfb,icms等。也可以单独启动单个工具,例如Virtuoso Layout Editor可以用layoutPlus来启动,Silicon Ensemble可以用sedsm来启动。Cadence将许多常用工具集成在一起,以便于用户完成一些典型的任务,表1.1、1.2、1.3总结了一些常用的启动命令及其调用的工具。用户可根据自己的需要选择最少的命令集。 前端启动命令:表1.1 前端启动命令命令规模功能icdes基本数字模拟设计输入icdssicde以及数字设计环境icmss前端模拟、混合、微波设计iccaxl前端设计加布局规划 版图工具启动命令表1.2 版图工具启动命令命令规模功能Layouts基本版图设计(具有交互DRC功能)layoutPlusm基本版图设计(具有自动化设计工具和交互验证功能) 系统级启动命令表1.3 系统级启动命令命令规模功能swbsPCB设计msfbl混合型号IC设计icfbxl前端到后端大多数工具2. CIW窗口以启动命令icfb为例,先在UNIX提示符下输入icfb &,再按回车,经过一段时间,就会弹出命令解释窗口CIW(Command Interpreter Window)。从CIW窗口可以调用许多工具并完成许多具体的设计任务。CIW窗口是使用Cadence时遇到的第一个窗口,是Cadence主要的用户界面,如图1.2所示。它包括以下几个部分:图1.2 CIW窗口 标题栏(Title Bar):显示使用的软件名及log文件目录。图1.2显示为:icfb-log:/home/user1/CDS.log 菜单栏(Menu Banner):有File、Tool、Options、Technology File等选项,用于设计中选择命令之用。 输出区(Output Area):也即主窗口显示区,输出Cadence对用户命令的反应,诸如一些系统信息(如出错信息,程序运行情况等)。 输入行(Input Line):也即命令行,可用来输入Skill命令。 鼠标行(Mouse Bindings Line):显示捆绑在鼠标左、中、右三键上的快捷键。 滚动条(Scrolling bar to Scroll Through the Log File):在窗口右侧,用于辅助查看主窗口信息。3. 库文件管理启动了Cadence后,就可以利用File菜单建立自己的工作库。新建的库是一个空的库,里面什么也没有,用户可在库中生成自己所需的基本单元(lab2中有二与非门单元电路原理图设计的具体流程),以便以后设计中直接调用。例如可以生成一个CMOS反相器单元,并为其生成电路原理图(lab2)及版图(lab9),大致流程如下所示: 点击CIW窗口上的File菜单,选定其中的New lib项,弹出如图1.3所示的对话框,输入库名并选择相应的工艺库,然后选择OK,这时在CIW的显示区会出现如下提示:The lib is created successfully! 选择File菜单中的New项,并选择Cellview项,则弹出如图1.4所示的对话框,选择所需的库并输入单元名inv,并选择视图类型Schematic,再点击OK按钮,打开空白的Schematic Editing设计窗口。 使用Add、wire、Delete等菜单命令,完成Inv.原理图设计,如图1.5所示。 用同样的流程可生成inv的版图视图,如图1.6所示。 利用Tools菜单中的library manager可以对库进行管理。 图1.3 New Library窗口 图1.4 Create New File窗口 图1.5 Inverter原理图 图1.6 Inverter版图4. 文件格式转化Cadence有自己的内部数据格式,为了与其他EDA软件之间进行数据交换,Cadence提供内部数据与标准数据格式之间的转换。点击CIW的File菜单中的Import可将各种外部数据格式转换成Cadence内部数据格式,利用CIW的File菜单中的Export可将各种Cadence内部数据格式转换成外部标准数据格式。其中,Stream命令实现Stream格式与DFII(Design Framework II)之间的转换。具体实验内容参考Lab10。5. 帮助系统Cadence系统提供的帮助方式有两种: openbook在UNIX提示符下输入命令:host openbook & 点击每个工具右上角的“help”菜单。1.3 Verilog-XL介绍电子设计较常用的输入方法有两种,一种为硬件描述语言,一种为电路图输入。随着ASIC设计技术的发展,以HDL作为输入的设计方法已成为ASIC设计的主流。目前较常用的硬件描述语言有VHDL和Verilog HDL两种。相对而言,Verilog在工业上用的较为平常。作为EDA设计的主流软件之一,Cadence提供了对Verilog及VHDL的强大支持。Cadence很早就引入了Verilog,并为其开发了一整套工具。而其中最出色的当数Verilog的仿真工具Verilog-XL。Verilog-XL一直以其友好的用户界面及强大的功能而受到广大Verilog用户的青睐。由于本实验系统缺少仿真工具Verilog-XL,故而本部分只简单介绍Verilog-XL的用户界面。启动Verilog-XL后,弹出下图1.7所示的用户界面,即Verilog-XL的SimControl窗口,从该图形界面中,可控制仿真的执行。Verilog-XL的图形界面主要有以下几个窗口:图1.7 Verilog-XL 的图形界面 SimControlSimControl窗口是主要的仿真控制窗口,当用带有gui选项的verilog命令启动Verilog-XL时,就会弹出这个窗口。通过这个窗口,用户可以显示设计的模块结构,运行Verilog-XL命令,设置及显示断点,强行给变量赋值等等。通过这个窗口可以实现用户与仿真的交互,从而达到对仿真的控制。 Navigator通过点击SimControl窗口右上角的星形图标即可激活Navigator窗口。该窗口可用来图形化显示设计中各模块的层次关系,设计中的实体及其变量。此窗口用图形,在Scope Tree 中采用树的形式显示设计中各模块的层次关系。在Objects List中显出Scope Tree中被选模块的当前模拟数值和描述。 Signal Flow Browser信号波形选择。 Watch Objects Window目标(信号波形)观测。 SimWave可以用来显示已经选择并跟踪了的信号波形。1.4 电路图设计与电路模拟设计的输入除了可以用硬件描述语言(如VHDL及Verilog HDL)外,还可以用电路图输入。在早期的ASIC设计中,电路图起着更为重要的作用,作为流行的EDA软件,Cadence提供了一个优秀的电路图编辑工具Composer。Composer不但界面友好,操作方便,而且功能非常强大。电路图设计好后,其功能是否正确,性能是否优越,必须通过电路模拟才能进行验证。Cadence同样提供了一个优秀的电路模拟软件Analog Artist。Analog Artist通过Cadence与Hspice的接口调用Hspice对电路进行模拟。1.4.1 电路图设计工具ComposerComposer的启动很简单,在启动Cadence后,从CIW窗口中打开或新建一个单元的Schematic视图,就会自动启动Composer的用户界面。用户即可在其中放入单元及连线,以构成电路图。Composer是一种设计输入的工具,逻辑或者电路设计工程师,物理设计工程师甚至PCB板设计工程师可以用它来支持自己的工作。对于一般的Cadence的用户而言,可能不需要进行任何设置就可启动Composer。但有时必须设置快捷键,否则所有的快捷键就会失灵,给使用带来一些不便。在设计时,快捷键往往会有很大的作用。1. 用户界面图1.8是Composer的图形界面,在该用户界面中,大部分面积是右下角的显示区。左边的图标是一些常用的工具,读者可以自己启动Composer,然后熟悉一下Composer的用户界面。浏览Schematic Editing窗口,顶部为菜单栏(Menu),左侧为图标栏(Icon Bar),具体介绍如下: 菜单栏菜单栏中可选菜单有Tool、Design、Window、Edit、Add、Check、Sheet等项。其中常用菜单有:Tool菜单提供设计工具以及辅助命令。比如,电路仿真工具Analog Artist,就在Tool下拉菜单中。Window菜单中的各选项有调整窗口的辅助功能。比如,Zoom选项对窗口放大(Zoom in)与缩小(Zoom out),fit选项将窗口调整为居中,redraw选项为刷新。Edit菜单实现具体的编辑功能,主要有取消操作(Undo)、重复操作(Redo)、拉伸(Stretch)、拷贝(copy)、移动(Move)、删除(Delete)、旋转(Rotate)、属性(Properties)、选择(Select)、查找(Search)等子菜单,在以下实验中将大量应用。Add菜单用于添加编辑所需要的各种素材,比如元件(Instance)或输入输出端点(pin)等。图1.8 Composer的用户界面 图标栏图标栏内的所有命令都可以在菜单栏实现,图标栏提供使用频率较高的一些菜单为快捷方式,旨在提高设计效率。从上至下的图标共有:检查错误与存档(Check and Save)、放大(Zoom in)、缩小(Zoom out)、图形拉伸(Stretch)、拷贝(copy)、删除(Delete)、重复操作(Redo)、属性(Properties)、添加元件(Add Instance)、细连线(Wire Narrow)、粗连线(Wire Wide)、连线命名(Wire Label)、添加输入输出端点(Add pin)、命令选择(Command Options)等。2. 电路图设计流程 图1.9 nand2电路原理图 图1.10 nand2符号 首先使用Component命令,调用并添加符号库中的元件,如图1.9所示的nand2原理图。 添加pin,可通过add菜单中的pin项来进行添加。 布线及标线名,可通过wire命令布线,通过更改其属性来标上线名。 添加节点(在布线过程中,节点一般自动生成)。 添加注释以便于识别。 添加整体属性,如一些自动布局布线属性。3. 符号设计符号是用来代表元件的简单逻辑符号,如反相器用一个三角形表示。在Cadence系统中,当上层调用下层单元和进行上下级映射时,通常以其符号来实现调用。所以,符号在电路设计中起着很重要的作用。与启动Schematic Editor类似,通过在CIW窗口中新建或打开一个单元的symbol视图,就可启动Symbol Editor。也可以在已经设计完成的Schematic环境下,通过执行菜单命令designcreate cellview from cellview,打开Symbol Editor窗口。以下是编辑符号的一般流程: 在编辑区加入一些基本的图形,比如多边形、圆、矩形、三角形等。 加入符号的pin,比如INA、INB、OUT等。 连接基本图形与pin。 加入符号的标记,如表示二与非门的nand2。 加入选择外框,构成完整的符号图形。 加入文本注释以便于识别。 更改整体属性。通过以上步骤可以设计出nand2符号如图1.10所示。1.4.2. 电路模拟工具Analog ArtistCadence提供进行电路模拟的工具Analog Artist。Anglog Artist通过调用Hspice进行电路模拟,然后进行各种后续处理并显示结果。在运行Analog Artist之前,必须在.cshrc中设置以下语句:setenv CDS_Netlisting_Mode Analog此外,最好能从Cadence的安装目录的Analog Artist中拷贝与模拟器相应的初始化文件。Analog Artist的启动方法有很多种,可以从Composer的Tools菜单中执行,也可以从CIW的Tools菜单中执行。一般用户的Cadence系统环境缺少Analog Artist所必须的license,本实验系统采用Schematic Editor自带的仿真环境ADE,两者的仿真环境很相似,此处对Analog Artist只介绍其用户界面。图1.11是Analog Artist的用户界面,关于具体的使用方法请参考openbook中的相应手册。图1.11 Analog Artist的用户界面窗口中各菜单栏定义如下:1. Session菜单包括Schematic Window、Save State、Load State、Options等菜单项。 Schematic window项用于回到电路图。 Save State项打开相应的窗口,保存当前所设定的模拟所用到的各种参数。 Load State项打开相应的窗口,加载已经保存的状态。 Reset项重置analog artist,相当于重新打开一个模拟窗口。2. Setup菜单包括Design、Simulator/directory/host、Temperature、Model Path等菜单项。 Design项选择所要模拟的电路图。 Simulator/directory/host项选择模拟所使用的模型,系统提供的模型选项有cdsSpice、hspiceS、spectreS等。常用的是cdsSpice和spectreS。 Temperature项可以设置模拟时的温度,一般选择为27。 Model Path项设置元件模型的路径,系统会自动在所设定的路径下寻找器件model name所对应的model模型。3. Analyses菜单选择模拟类型。在cdsSpice下有ac、dc、tran、noise四个选项,分别对应的是交流分析、直流分析、瞬态分析和噪声分析。交流分析是分析电流(电压)和频率之间的关系,因此在参数范围选择时必须选择频率。直流分析是分析电流(电压)和电流(电压)间的关系。Tran分析是分析参量值随时间变化的曲线,设置时必须限定瞬态时间。在spectreS中,可供选择的分析类型有很多,常用的还是ac、dc、tran和noise,不过它们设置与cdsSpice不同。Tran的设置只需填入模拟停止时间即可。ac和dc分析的设置则更具特点:spectreS提供了变量扫描功能,其中可供选择的变量(parameter)有frequency(ac分析)、temperature、component parameter和model parameter。ac分析扫描频率(常规分析)时,只需填入起始频率和终止频率即可。而在扫描其他参数时,必须将整个电路固定在一个工作频率(at frequency)上,然后进行其它选择。要进行component parameter扫描时,先点击select component,然后在电路图上选择所需扫描的器件,这时会弹出一个列有可供扫描参量名称的菜单,在其上选择即可。进行model parameter扫描时只需填入model name和parameter name即可。4. Variables菜单包括Edit等子菜单项。Edit项可以对变量进行添加、删除、查找、复制等操作。变量(variables)既可以是电路中元器件的某一个参量,也可以是一个表达式。变量将在参量扫描(parametric analysis)时用到。5. 其它有关的菜单项Tools/Parametric Analysis子菜单提供了一种很重要的分析方法参量分析的方法,也即参量扫描。可以对温度和用户自定义的变量(variables)进行扫描,从而找出最合适的值。Outputs/To be plotted/selected on schematic子菜单用来在电路原理图上选取要显示的波形(点击连线选取节点电压,点击元件端点选取节点电流),这个菜单比较常用。需要输出的参数不仅仅是电流、电压,还有带宽、增益等需要计算的值,可以在Outputs/setup中设定其名称和表达式,在运行模拟之后,这些输出将会很直观的显示出来。1.5 自动布局布线从前面的ASIC设计流程中可看到,设计输入经过综合和优化后,就该对所生成的门级网表进行自动布局布线。自动布局布线是连接逻辑设计和物理设计之间的纽带。在自动布局布线前必须进行布局规划(floorplan),在Cadence中进行布局规划的工具为Preview,进行自动布局布线的引擎有四种:Block Ensemble、Cell Ensemble、Gate Ensemble和Silicon Ensemble。其中,Block Ensemble适用于宏单元的自动布局布线,Cell Ensemble适用于标准单元或标准单元与宏单元相混合的布局布线,Gate Ensemble适合于门阵列的布局布线,Silicon Ensemble主要用在标准单元的布局布线中。将Preview与四种引擎相结合可产生四种不同的自动布局布线环境和流程。由于Silicon Ensemble(DSM)的功能很完全,几乎可以完成所有复杂的自动布局布线的任务,在考虑自动布局布线引擎时,采用了Silicon Ensemble。SRAM编译器所生成的用于自动布局布线的端口模型为Silicon Ensemble所要求的格式。1.5.1 自动布局布线流程图1.12 自动布局布线流程图1.12为采用Preview和Silicon Ensemble进行自动布局布线的流程图。该流程主要由以下几个主要步骤组成:1. 准备自动布局布线库在进行自动布局布线之前,必须准备好相应的库。该库中含有工艺数据、自动布局布线用的库单元及显示信息。库的格式必须为Design Framework II的数据库格式,可以由用户利用版图生成工具Virtuoso Layout Editor设计产生,也可以来自一个由芯片制造厂家和EDA公司提供的LEF(Library Exchange Format)文件,或者从GDSII生成。2. 准备用来进行自动布局布线的网表用来进行布局布线的网表可以由硬件描述语言经过综合优化或由电路提取而来。所有网表在进行自动布局布线前都必须首先生成对应的autoLayout视图(view)。3. 用Preview进行布局规划Preview是 Cadence的布局规划器。它可以用来规划物理设计,从而在自动布局布线前预估物理实现的影响。在Cadence中,使用Preview与自动布局布线引擎相结合来进行自动布局布线。4. 用Silicon Ensemble进行自动布局布线5. 对完成布局布线的版图进行验证生成的版图其连接性是否正确,是否符合设计规则,是否符合时序要求等等,必须通过验证才能确定。通过点击Verify&Report菜单中的相应项,可对版图进行连接性、设计规则验证,并可生成SDF(Standard Delay Format)文件。通过反标SDF文件可对原来的门级网表进行仿真,从而确定其功能和时序是否正确。1.5.2. 用AutoAbgen进行自动布局布线库设计对于不同的自动布局布线引擎,对应的库的数据格式有所不同,用来生成库的工具也不同。本SRAM编译器选择Silicon Ensemble作为布局布线引擎,其对应的库生成工具为AutoAbgen。AutoAbgen可以用来生成与用户设计的版图或版图库所对应的Abstract(即用于自动布局布线的端口模型)。可以用AutoAbgen的AutoAbgen Flow Sequencer form来生成Abstract(对于单个版图)和LEF文件(对于整个物理库),其基本流程如下:1. 首先在局部.cdsinit中设置好AutoAbgen运行的环境,即在.cdsinit中加入以下语句:aabsInstallPath=“/tools/autoAbgen/etc/autoAbgen”load(buildstring(list(aabsInstallPath “aaicca.ile”) “/”)2. 将AutoAbgen的初始化文件.autoAbgen拷入运行目录。并用icfb &启动Cadence。3. 点击CIW窗口中的AutoAbgen菜单下的AutoAbgen Flow Sequencer项,打开Flow Sequencer Form。4. 选择合适的流程。5. 建立布局布线所需的工艺信息。如果在工艺文件中已经包含布局布线的工艺信息,可以忽略这一步。6. 建立用来生成Abstract的版图数据。如果所用的版图数据已经是DFII 的版图格式,可以忽略这一步。7. 更新单元的属性及其管脚属性。由于AutoAbgen对所操作的版图有些特殊要求,所以在生成Abstract前必须对其属性进行更新,以符合AutoAbgen的要求。8. 建立一个库单元,将所需建立Abstract的所有单元包括到里面。9. 填写环境设置表格和运行选项表格。输入输出LEF的文件名(如果是对库进行操作)。10. 选择Apply运行AutoAbgen,生成所需的Abstract。1.6 版图设计与验证Cadence的版图设计及验证工具是任何其他EDA软件所无法比拟的。Cadence的版图设计工具是Vituoso Layout Editor,即为版图编辑大师。版图大师不但界面很漂亮,而且操作方便,功能强大,可以完成版图编辑的所有任务。版图设计得好坏,其功能是否正确,必须通过验证才能确定。Cadence中进行版图验证的工具主要有Dracula和Diva。两者的主要区别是,Diva是在线的验证工具,被集成在Design Frame Work II中,可直接点击版图大师上的菜单来启动。而Dracula是一个单独的验证工具,可以独立运行。相比之下,Dracula的功能比较强大。1.6.1 版图设计大师Virtuoso Layout Editor1 设置编辑环境有很多种方法启动版图大师,最简单的办法是通过CIW打开或者新建一个单元的版图视图,这样就会自动启动版图大师。此外,也可以用layoutPlus或layout命令启动。版图大师的设置很简单,对于一般的Cadence的用户而言,可能不需要进行任何设置就可启动版图大师。在设计时,快捷键往往会有很大的作用。但有时必须设置快捷键,否则所有的快捷键就会失灵,给使用带来一些不便。与电路设计不同的是,版图设计必须考虑具体的工艺实现,因此,存放版图的库必须是工艺库或附在别的工艺库上的库。否则,用隐含的库将没有版层,即LSW窗口只有一个黑框,更无从画图了。因此,在设计版图前必须先建立自己的工艺库。此外,显示对于版图设计也很重要,因此必须有自己的显示文件display.drf。关于快捷键、工艺库、显示文件的设置,具体参考lab6、lab8的相关内容,此处从略。2 用户界面图1.13是Virtuoso Layout Editor的图形界面,在该用户界面中,大部分面积是右侧的显示区。左边的图标是一些常用的工具,浏览Virtuoso Layout Editing窗口,顶部为菜单栏(Menu),左侧为图标栏(Icon Bar),具体介绍如下:图1.13 Virtuoso Layout Editor用户界面 菜单栏菜单栏中可选菜单有Tool、Design、Window、Create、Edit、Verify、Connectivity、Options、Routing等项。其中常用菜单有:Tool菜单提供设计工具以及辅助命令。Window菜单中的各选项有调整窗口的辅助功能。比如,Zoom选项对窗口放大(Zoom in)与缩小(Zoom out),fit选项将窗口调整为居中,redraw选项为刷新,show selected set选项用于显示所选定版层的属性等。Edit菜单实现具体的编辑功能,主要有取消操作(Undo)、重复操作(Redo)、拉伸(Stretch)、拷贝(copy)、移动(Move)、删除(Delete)、旋转(Rotate)、属性(Properties)、选择(Select)、查找(Search)等子菜单,在以下实验中将大量应用。Add菜单用于添加编辑所需要的各种素材,比如元件(Instance)或输入输出端点(pin)等。 图标栏图标栏内的所有命令都可以在菜单栏实现,图标栏提供使用频率较高的一些菜单为快捷方式,旨在提高设计效率。从上至下的图标共有:存档(Save)、两倍放大(Zoom in by 2)、两倍缩小(Zoom out by 2)、图形拉伸(Stretch)、拷贝(copy)、删除(Delete)、重复操作(Redo)、属性(Properties)、添加元件(Add Instance)、连线(Wire)、连线命名(Wire Label)、添加输入输出端点(Add pin)、矩形(rectangle)、尺子(Ruler)等。1.6.2 版图验证工具Diva用Virtuoso Layout Editor编辑生成的版图是否符合设计规则、电学规则,其功能是否正确必须通过版图验证系统来验证。Cadence提供的版图验证系统有Dracula和Diva。Diva是Cadence软件中的验证工具集,用来找出并纠正设计中的错误。它除了可以处理物理版图和准备好的电气数据,从而进行版图和线路图的对查(LVS)外,还可以在设计的初期就进行版图检查,尽早发现错误并互动地把错误显示出来,有利于及时发现错误所在,易于纠正。1. Diva验证流程Diva版图验证流程主要有:DRC规则检查版图参数提取ExtractionLVS,详细流程及解释如下图1.14所示。图1.14 Diva验证流程2. Diva工具集 版图设计规则检查(DRC):对IC版图做几何尺寸检查,以确保电路能够被特定加工工艺实现。 版图寄生参数提取(LPE)从版图数据库提取电气参数(如MOS的W、L值,BJT、二极管的面积、周长、结点寄生电容等),并以Hspice网表方式表示电路。 电气规则检查(ERC):检查电源、地的短路,悬空器件和节点等电气特性。 版图与电路图一致比较(LVS):将版图与电路原理图作对比,以检查电路的连接,与MOS的宽长比是否匹配。Diva中各个组件之间是互相联系的,有时候一个组件的执行要依赖另一个组件先执行。例如:要执行LVS就先要执行DRC与Extraction。运行Diva之前,要准备好规则验证文件,这些文件有默认名称:做DRC时的文件应以divaDRC.rul命名;版图提取文件以divaEXT.rul命名;做LVS时规则文件应以divaLVS.rul命名。3. DRCDRC用户界面如图1.15所示。图1.15 DRC界面DRC界面主要菜单定义如下: Checking Method是指被检查版图的类型。Flat:检查版图中所有的图形,对子版图块不检查。(与电路图类似,最上层电路由模块组成,而模块由小电路构成。复杂的版图也是如此)。Hierarchical:利用层次之间的结构关系和模式识别优化,检查版图中每个单元块内部是否正确。hier w/o optimization:利用层次之间的结构关系而不用模式识别优化,来检查电路中每个单元块。 Checking Limit选择检查的范围,具体指哪一部分的版图需要执行DRC。Full:表示检查整个版图。Incremental:对自从上一次DRC检查以来有所改变的版图执行检查,对没有改变过的版图不予检查,以节省检查时间。by area:是指在指定区域进行DRC检查。一般版图较大时,可以有针对性地分块检查,以提高检查效率。 Switch Names在DRC文件中,所有设置的switch都会在这里出现。这个选项可以方便对版图文件进行版层化的分类检查,这在大规模电路检查中非常重要。 Rule File 指明DRC规则文件的名称,一般默认为divaDRC.rul。 MachineLocal:表示在本机上运行。Remote:表示在远程机器上运行。DRC检查以后,所有错误都会在CIW窗口中显示,也会在版图中以高亮显示,很容易观察到。另外也可以选择VerifyMarkersFind菜单来帮助找错。单击菜单后会弹出一个窗口,在这个窗口中单击Apply就可以显示第一个错误。同样,可以选择VerifyMarkersExplain来查看错误的原因提示。选中该菜单后,用鼠标左键在版图上有错误的地方单击就可以了。也可以选择VerifyMarkersDelete删除关于错误的提示。4. Extraction主要用于提取器件和互联信息、后续ERC或LVS检查、提取网表、提取有寄生参数的版图网表用于模拟等。具体流程如图1.16所示。图1.16 Extraction流程5. LVSLVS主要检查版图(Layout)与电路原理图(Schematic)的能否完全对应,具体流程如图1.17所示。图1.17 LVS流程1.6.3 版图验证工具DraculaDiva嵌入在Cadence的主体框架之中,使用较方便,但功能较之Dracula稍有逊色。Dracula为独立的版图验证系统,可以进行DRC(设计规则检查)、ERC(电学规则检查)、LVS(版图和电路比较)、LPE(版图寄生参数提取)、PRE(寄生电阻提取),其运算速度快,功能强大,能验证和提取较大的电路。使用Dracula的第一步是编写与工艺一致的命令文件,包括DRC、ERC、LVS、LPE甚至PRE文件。关于命令文件的编写,读者可参考openbook中的手册,附录1中有一套命令文件(0.5um),读者可参考。假设要验证的版图为mySRAM库中的sram256x8单元,用来进行验证的当前目录为myver,运行Dracula的命令文件为。由于Dracula的功能强大,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论