版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
-.z.第五章物理验证(一)教学容1.物理验证的概念;2.主流物理验证工具介绍;Calibre是MentorGraphics的IC版图验证软件,此软件包括设计规则检查(DRC)、版图与原理图一致性检查(LVS)、电气规则检查(ERC)、及版图寄生参数萃取(LPE)等验证功能。其操作界面主要分为图形模式(GUI)(graphicaluserinterface)CalibreInteractive与指令模式(mandLine),其中图形模式可以单独启动,亦可与Virtuoso等软件相连接,其操作界面皆相同。本章我们主要研究图形模式。3.主要术语SVRF---StandardVerificationRuleFormat(标准的检查文件)RVE---ResultsViewingEnvironment(显示结果用的环境窗口)SVDB---StandardVerificationDatabase(LVSresults)DRC---DesignRuleCheck(设计规则检查)ERC---ElectricalRuleChecking(电气规则检查)LVS---LayoutVersusSchematic(版图原理图一致性检查)LPE---LayoutParasiticE*traction(版图寄生参数萃取)第二节LVS版图与原理图的一致性4.CalibreLVS简介CalibreLVS是一个出色的版图与线路图对比检查工具,具有高效率、高准确度和大容量等优点。CalibreLVS不仅可以对所有的“元件”进行验证,而且还能在不影响性能的条件下,处理无效数据。主要表现在以下几个方面:(1)运行模式快捷方便:CalibreLVS有两种运行模式,即命令行模式和界面模式(CalibreInteractive-LVS)。采用命令行模式可以快速输入控制命令,快速运行,其结果精确稳定。CalibreInteractive-LVS能够自动选择验证正被编辑的单元,并且能够选择所有的Calibre运行时间选项以及标准文件的规。该验证技术,允许用户选择特定标准文件以及独立规则和规则组的任何子集。GUI可控制普通使用的LVS选项,并记录运行设置过程。当采用修改控制或冻结标准文件时,它可将运行配置数据传给Calibre。其界面友好,使用方便。我们在做LVS过程中,对于规模较小的模拟电路和数模混合电路,一般采用方便的图形界面模式(CalibreInteractive-LVS)进行对比检查,这样可以在启动RVE后,对照LVS结果文件和版图,将电路(或者网表)和版图直接对应起来检查,非常方便;对于大规模的SoC电路,由于命令行方式输入简单直接,运行速度更快,运行结果稳定精确,这次就采用了命令行方式来运行LVS,获得了极大的成功。(2)多种比较方式可选:CalibreLVS可以进行版图与电路图(layoutvsshematic)和网表与网表(netlistvsnetlist)的方式对比检查,还可以单独从版图提取网表。而且,通过v2lvs命令,可以将自动布局布线所产生的verilog网表转换成spice网表,然后与自动布局布线的版图进行对比,操作简单方便,结果精确。由此可见,可以根据不同需要,在LVS验证过程的不同阶段,灵活地选择比较方式,以获得最有效的运行和最佳的结果。(3)侦错方便快捷:当运行完LVS后,CalibreLVS会产生一个结果报告,明确指出出错类型和数目,并且可以对层次化中的每个模块都有一个完整的LVS报告,简单明了。这个报告还能明确指出短路(特别是电源和地短路的情况)、开路、浮空或孤立的nets、pinswapping以及软连接等问题。CalibreLVS还能产生一个详细的结果数据库,其中包括原理图网表、从版图抽取的网表、结果报告、版图中的器件及连接关系等。这样通过RVE来读取这些数据,就可以在版图和网表中准确地Highlight有错误的地方(图1)。由此可见,CalibreLVS所产生的结果文件结构清晰,又可以通过RVE来准确定位,能有效地帮助用户快速地消除错误以降低设计风险,这在我们项目的开发过程中得到了完全的体现。由于时间紧迫,致使后端设计的时间相当紧,正是CalibreLVS能准确无误、快速地查出短路、开路、浮空或孤立的网络、引脚、软连接等问题,还能很好地识别晶体管、门级电路和模块级电路,才使得我们按时地完成了百万门级的信息安全SoC的设计。在反复使用CalibreLVS的图形界面的运行方式和命令行方式过程中,发现CalibreLVS图形界面的运行方式方便快捷,但是其稳定性不如命令行方式好,若能加以改进,则能进一步提高验证精准度。5.物理验证的流程;SpiceSpice网表规则文件APR↓GDSⅡ版图↓↘↙CalibreLVS↓↙↘LVS错误差异报告提取的网表LVS错误数据库SVDB↘↙↓RVE+VLE版图编辑器↓↓确定报告来自于差错报告→→↑↑↑手工修改版图注:从APR工具实现的版图中提取(e*tract)出一个网表。将这个提取出的网表与APR工具要实现的网表比较,它们应该相同。如果两个网表不一样,这时手工修改版图,使之与要实现的网表相一致。6.准备工作:(1)为什么要做LVS?LVS作了些什么?APR(AutomaticplaceandRoute)自动布局布线工具作出的版图,基本上是正确的。但是,不能保证APR工具是绝对正确的,也就是说,APR工具可能会出错。为了发现并改正APR工具布线的错误,需要做LVS。另外,从版图中提取电路图,同样需要验证电路图与版图的一致性。LVS的目的就是证明版图的逻辑与网表是一致的,APR将网表实现成了版图,现在LVS要证明这个实现是正确的。(2)下面是一个简单的calibreLVSRuleFile,右边#后容是对它的解释。LAYOUTSYSTEMGDSII#指定layout的格式为gdsLAYOUTPATH“/user/joeb/proj/layout/ictr”#指定版图的路径LAYOUTPRIMARYCalibreM#版图的topcellSOURCESYSTEMSPICE#指定source的格式为spice网表SOURCEPATH“/user/joeb/proj/logic/ictr”#source的路径SOURCEPRIMARYCalibreM#source的topcellMASKRESULTSDATABASECalibreM.db#LVS的结果保存文件,将来指导改正版图LVSREPORTCalibreM.rpt#report文件layerPWELL1#读入版图的各层信息layerO*IDE2layerRES3layerPOLY4layerNPLUS5layerPPLUS6layerCONTACT7layerMETAL18layerVIA9layerMETAL210chip=e*tentnsub=chipnotpwell#进行layeroperation。gate=o*ideandpolysd=o*idenotpolyngate=gateandnpluspgate=gateandppluspsd=sdandpplusnsd=sdandnplussdm=pplusornplusconnectpsdpwell#定义连接关系connectnsdnsubconnectmetal1polynsdpsdbycontactconnectmetal2metal1byviadevicemnngatepolynsdnsdpwell[0]#提取nmosdevicemppgatepolypsdpsdnsub[0]#提取pmosCalibre根据这个RuleFile提供的信息,首先从版图中提取出一个网表,再将这个网表与APR要实现的网表进行比较,判断APR生成的版图是否正确。7.具体操作:专门建立一个新的文件夹用于此次LVS。将RuleFile拷贝至此文件夹。从版图中导出GDS文件至此文件夹下,操作同DRC时导出版图,亦可在CalibreDRC图形界面中选择从当前版图中导出GDS文件。利用AnalogEnvironment中的hspiceS从电路图中导出网表。下面是导出网表的图示。在Simulator中选择hspiceS将电路图网表拷贝至你所建立的新目录scj_lvs中与*.gds和rulefile放置在一起,此时要修改电路图网表的容,使其与layout有相同的modelname,以及把VDD!等的惊叹号去掉,以保持与layout网表的一致性。(二)实验容1.启动LVS方法(三种方法启动图形界面)●在版图的Calibre菜单下点出RUNLVS命令●在命令窗口里输入calibre–gui启动calibreGUI,再选择LVS●直接在命令窗口里输入calibre–gui-lvsRunsetFile是RUNLVS时需要填入的一些设置,方便于下次RUN。第一次由于没有,所以就选择NewRunset,等第一次RUN完后,可以将填入的设置存成一个RunsetFile。再RUNLVS时,可以将这个RunsetFileLoad进来。同RUNDRC。上面的窗口中,可以看到Rules与Inputs两个命令是红色的,表示RUNLVS需你设置的。点击Rules命令,在Calibre-LVSRulesFile的命令行里输入用来做LVS检查的文件(SVRF),这个文件里包括了一些层次及器件的定义等。在Calibre-LVSunDirectory里输入你要RUNLVS的路径,建议建一个专门的目录。可以看到这时Rules已经变成绿色,表示Rules里设置完成了。每个命令行后面的…可以帮助你选择文件。点击Inputs命令,如果选择LayoutvsNetlist,则在Layout命令行里输入你要检查的版图的GDS,假如你已经当前版图输出GDS了,可以输入已经生成的GDS。假如你还没有输出GDS,可以选下面的Importlayoutdatabasefromlayoutviewer设置,这样Calibre在RunLVS时就先把当前的版图输出GDS,名字就是你上面输入的GDS名。●PrimaryCell的命令行里就是当前的顶层单元名。●LayoutNetlist的命令行里填入版图提取出SPICE网表的名称。如果选择NetlistvsNetlist,此时layout选项中的Files不可选,则必须已经有了layout的网表,在LayoutNetlist命令行里填入layout网表的名称。如果选择NetlistE*traction,则只从layout中抽取出网表,不与电路图网表进行比对。PrimaryCell的命令行里就是当前的顶层单元名,与上面LayoutvsNetlist时相同。在Files命令行里填入逻辑网表。可以选择从电路图中自动导出,此电路图应与当前版图在同一个Library里的同一个Cell里,自动导出的网表为cdl格式。通常利用Import自动产生Sourcenetlist后,其device的modelname会与layout不匹配,因此常需要自行修正。PrimaryCell里填入逻辑的顶层单元名。使用hspice格式的网表时,由于其顶层单元不包括.subckt语句,所以就用”.”填入。因为填“.”时,LVS只读取.subckt语句之外的容。HCells是使用Hierarchical模式做LVS时才需设定,否则不需额外去做设定。使用Hierarchical模式下最常见的设定是Automatch,一般在Layout所用的CellName于Schematic的CellName不一致的情况下方需设定HCells.点击Netlist边上的H-Cells,选中Matchcellsbyname(automatch)选项。CalibreHierarchicalLVS是先完成底层单元的比对,但需要将底层单元设为H-Cells。如果一个单元只调用了一次,没必要将它设为H-Cells。但被调用了多次时,将它设为H-Cells时会大大减少LVS时间。5.点击Outputs命令选择run完LVS后检视Report。建立SVDBdatabase并在run完LVS后开启RVE来检视error。在LVSReportFile的命令行里输入LVS输出的文本文件的路径及名称。在SVDBDirectory的命令行里输入LVS输出的数据存放的路径。这个数据是用CalibreRVE来Debug时读入的数据。6.点击LVSOptions命令Setup->LVSOptions在Options里的Supply选项里选中AbortLVSonpower/groundneterrors,这个选项的目的是当电源地短路时中断LVS.如果出现电源地短路,再RUNLVS时就不选这个选项,这样LVS就不会中断并且会报出电源地短路的地方。但是不选这个选项会RUN很长时间,所以一般都会选上这个选项。在Powernets和Groundnets两个命令行里分别输入电源地的名称。一般rulefile里已经写好了,loadrulefile或runsetfile时自动会填在这里面。在Report选项里的LVSReportOptions里选中S选项。这样在LVSReportFile里会输出详细的软连接的冲突。软连接(softconnect)是将电位单向由上传至下层的layer,以用来检查是否有不同电压准位透过底层连接,或是上层电位是从底层传递过去的。在Gates选项里选中Recognizeallgates选项,目的是CalibreLVS能以所有的逻辑门(与非门、倒相器、或非门、与或非门等)为单元来比对。选中Recognizesimplegates,只能以基本的逻辑门(倒相器、与非门、或非门)比对。选中Turngaterecognitionoff时,LVS将以单管为单位来比对。当你允许逻辑门的输入可以互换时选前两个,如果你不允许时就选最后一个。当你要在RUNLVS的同时RUNERC检查时选中ERC选项,选中RunERC选项在ERCResultsFile命令行里填入ERC的结果数据的路径和名称。在ERCSummaryFile命令行里填入ERC的简述文件的路径和名称。在Connect选项里选中Connectnetswithcolon(:),当你的版图里有用TE*T加冒号来表示两条线的连接时要选中这个选项。7.点击RunControl命令RunCalibreLVS的相关option,可决定是否以64bit,远端操作,或多台server执行,一般均不改变预设值。8.点击Transcript命令Transcript记录RunLVS的过程与相关信息,若无法顺利执行,可由此看错误讯息,亦可利用Transcript->Saveas存成logfile。RunLVS执行CalibreLVScheck。8.可点击StartRVE自行以手动方式开启RVE视窗。在Report上出现笑脸符号代表LVScheck正确,RVE也将显示DesignMatch.9.LVS错误举例RVE显示有四处net错误,一处port错误,一处instance错误,一处property错误。RVE显示有四处net错误,点开第二个错误,下面显示了详细的incorrectnets的信息。LAYOUT中一条net对应着电路图中的两条net,表示电路图中有一处OpenCircuit开路错误。或者是layout中有一处ShortCircuits短路错误。双击LAYOUTNAME中的Net*89/inp,则会打开版图并高亮此net通过版图中高亮的net,找出与此错误有关系的cell,然后在电路图上在根据cell,找出有错误的net,如上图所示左右两条红线net,在版图上是连起来的,所以修正电路图如上图所示点开第三个错误,下面显示了详细的incorrectnets的信息。LAYOUT中两条net对应着电路图中的一条net,表示layout中有一处OpenCircuit开路错误。或者是电路图中有一处ShortCircuits短路错误。版图上a1和a2是两条net,而在电路图上两条线连了起来,修正后如右图所示。(1)Property错误RVE显示property参数错误,mos管的宽度不匹配。双击LAYOUT下边的*89/*8422/M0,在版图中高亮这个晶体管。电路图中multiplier参数错误。(2)Port错误RVE显示port错误,在下面可以看到,layout中的portDOUT在source中对应着DOUT_E,把名字改过来即可。(3)Instance错误从版图中可以看到M_133一端接VD33,所以其modelname应该填PD,然后在导出的spice网表中再改为P33即可从右面三图上可以看到,M_130_133上的bulk一端,layout与source上不一致,将电路图上的bulknodeconnection的值改为与版图一致的VD33即可。10.关于Calibrelvsreport?●Lvs中Input和Output的信息:●该部分主要记录calibre中的一些信息,例如layout,netlist,reportfile,运行时间以及calibre的版本信息。Lvs是否匹配最明显的标志:NOTPARED,CORRECT和INCORRECT(a)NOT
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 箱式变电站选购技巧
- 2024无固定期限简单劳动合同范本
- 2024桌椅购销合同
- 2016年江苏公务员考试申论真题A类及答案
- 市场营销与广告策略分析考核试卷
- 泊寓退房合同模板
- 油炸店面转让合同模板
- 仪器仪表制造业中的智能供应链管理考核试卷
- 兽用药品批发商的供应链金融考核试卷
- 作业现场职业危害及其安全防护考核试卷
- 胸外科术后镇痛
- 给机关领导送礼检讨书三篇
- (新版)货币鉴定师理论考试复习总题库-上(单选600题)
- 第九课-鸡蛋四块一斤课件
- 大学英语四级真题阅读练习10套(附参考答案)
- 内审员实战培训教材
- 人机料法环的分析PPT
- 垫江县国企招聘考试真题及答案
- 数字媒体艺术设计-课件
- 【基于近五年数据的云南嘉华食品实业财务报表分析15000字】
- 金属材料的塑性变形
评论
0/150
提交评论