版图验证工具DRACULA
- 格式:doc
- 大小:179.50 KB
- 文档页数:35
Dracula由若干个UNIX程序模块构成以完成各种检查工作。
第1步-在进行各种检查前,必须编写一个由设计规则和用户要求Dracula执行的各种操作组成的命令文件。
第2步-用户运行PDRACULA程序,由该程序读入一个或几个命令文件,并将其中的指令翻译成相应的DraculaUNIX程序。PDRACULA在读入并翻译命令文件时对其句法进行检查;如句法有错,则给出相关报告;如没有句法错误,则建立由相应的UNIXDracula可执行命令组成的运行文件来完成各种操作。PDRACULA提供的运行文件为jxrun.com和jxsub.com,
为47,这就表示该行中的四组坐标所表示的是第3类错误中的第47个错。
八、ERC简介
2━━━━━┓
┃规则文件┃
┗━━━━━┛
3------------------
1━━━━━━┓|┏━━━━━┓|
┃带节点名的┃|┃ERC┃|4
┃版图数据┃|┗━━━━━┛|
┗━━━━━━┛||
-------------------
图所用数据格式一致。用户可将该文件的内容读入所用版图设计工具,并将其作为一个子
单元按DRCPR.SUM文件第⑵部分最后给出的窗口左下角坐标插入原版图中即可排
错。
3关于DRCPR.DRC文件
DRCPR.DRC文件是一个由表示出错信息的两个线段所在位置的坐标组成的文本
文件,用户可以按照其提供的坐标在原版图中找出错误所在位置并排错。需要指出的是,
寄生电容、寄生二极管等。
5PRE
PRE是ParasiticResistanceExtraction的缩写,用于从版图中提取寄生电阻。
6InQuery
InQuery是用于观察Dracula运行后产生的出错信息的芯片级结果分析工具,也就是通常所说的出错信息反标注工具;该工具必须在Cadence提供的框架结构
3 4 1 9
┏━┓
8┃┃7
┏━╋━╋━┓
┃┃┃┃
┗━┛┗━┛
1,9 2 5 6
⑷InputCommandsListing
该部分列出了DRC检查时所用的规则文件的全部内容,用户可以从中与查出含有数
据的出错信息所在单元相对应的设计规则。
2关于DRC.OUT文件
DRC.OUT文件是一个用线段表示出错信息的图形输出文件,其数据格式和被查版
**** ERROR(S) HAS(HAVE) BEEN DETECTE ****
DO YOU WANT TO VONTINUE ({Y}/N/R)?
用户可根据相关信息进行处理,以保证运行文件jxrun.com和jxsub.com的正确产生。
jxrun.com文件由多个“步骤(stages)”组成,其第一个“步骤”是读入用户提供的版图数据文件;接下来的“步骤”是处理版图数据文件中各掩膜层,并完成规则文件中指定的各种操作,PDRACULA最多可处理80层掩膜层;最后一个“步骤”则是将按规则文件的要求生成各种输出文件。jxrun.com运行时,其产生的有关信息将显示在屏幕上。
│规则文件│
└─────┘
2━━━━━┓
┃DRC检查┃
┗━━━━━┛3
第1步-建立含有控制DRC操作的设计规则的规则文件,该文件中也应包括被检查版图
的数据文件名字及其所在目录。其后,该文件必须由PDRACULA处理以形成进行
DRC检查的运行文件。
第2步-DraculaDRC应用指定的设计规则对版图数据进行检查,并根据规则文件中指定的操作产生若干报告文件。
格式,可能无法得到正确的结果),以及CDL格式的电路网表文件。
需要指出的是,PDRACULA和LOGLVS都不是编译程序,而是解释程序;它们每次读入一行信息,并分析其中有无句法错误;如无句法错误,则读入下一行直到文件结束;
如发现句法错误,则在给出提示信息后读入下一行直到文件结束。在读入层次结构的电路网表时,必须首先定义最底层的单元,以便在上层单元调用该单元时LOGLVS可以使用该单元的相关信息。接着应定义次底层的单元,并依次类推直到最上层的主单元。
将生成*.SUM、*.DRC、*.OUT等报告出错信息的文件。
第5步-所生成的出错信息输出文件可用于排错,其中图形输出文件可以在DF-II下用InQuery排错(应用InQuery排错时,必须在Dracula运行过程中保留较多的中间数据),也可以在版图设计软件中将其转换成该软件所用数据格
式后用于排错;而文字形式的出错信息报告文件既提供了出错信息的概要,也提供了
第3步-DRC产生用于排错的、含有出错信息的文本文件DRCPR.DRC和图形文件
DRC.OUT,并产生含有出错信息种类和所在窗口范围等统计信息的文本文件
DRCPR.SUM(所产生的各种文件的名字由规则文件中相应命令指定)。
1关于DRCPR.SUM文件
DRCPR.SUM文件主要由以下四部分组成:
⑴AllErrorCellsListing
匹配。
作为LVS一部分的LVL,用于检查两个版图在节点及其连接、元器件及其参数等方
面是否匹配;而作为LVS另一部分的SVS,则用于检查两个电路网表在节点及其连接、元器件及其参数等方面是否匹配。
4LPE
LPE是LayoutParameterExtraction的缩写,用于从版图中提取元器件的参数(例如MOS管的沟道长度/沟道宽度,源漏区的周长/面积等)、
在结束规则文件编辑时,如规则文件中存在句法错误、所需的版图数据文件或网表文件不存在,PDRACULA将分别给出如下信息:
**** ERROR(S) HAS(HAVE) BEEN DETECTE ****
DO YOU WANT TO VONTINUE ({Y}/N/R)?
** ERROR : THE INDISK FILE MAY NOT EXIST : *.GDS
ENTER COMMAND
:
如显示的信息表示在文件输入时遇到了“错误”或“警告”,用户应查阅LOGLVS运行后
产生的PRINT.OUT文件,找出并排除存在的问题,然后再运行LOGLVS。通常,
文件输入时遇到“警告”信息,可以不予理睬,但仍有必要查阅PRINT.OUT文件。
七、DRC简介
1─────┐
图形间的套准间距等。
2ERC
ERC是ElectricalRuleCheck的缩写,用于检查版图的连接是否违反电气方面的规定,包括节点间的短路/开路、有无浮空的节点或元器件等。
3LVS
LVS是LayoutVersusSchematic的缩写,用于版图和电路图的一致性对照检查,也就是检查版图和电路图在节点及其连接、元器件及其参数等方面是否
图形面积之类的出错信息在该文件中不列出其坐标,用户在排除此类错误时只能依靠
DRCPR.OUT文件。此外,DRCPR.DRC文件常将几个不同类型的出错信息
坐标列在一起,此时,用户可根据该文件第2列中的数字来区分不同类型的错误,而该文
件第3列中的数字则是该类错误的第几个错,例如第2列中的数字为3,第3列中的数字
jxsub.com是在后台运行jxrun.com的运行文件,其运行时产生的有关信息保存在*.LOG文件中。
六、LOGLVS常用命令简介
LOGLVS运行时,先在屏幕上以菜单形式显示所有的命令,用户必须按其显示的顺序输入命令;命令菜单显示结束后,屏幕上显示“ENTERCOMMAND”以及命令提示符“:”,此时用户可输入有关命令。
第1步-在版图中凡有压焊点的地方加上节点名,如VDD、GND等;节点名应放在单独一层掩膜层上,而其原点应落在金属这一掩膜层的图形内,如下图所示:
━━━━━
金属
━━━━━
第2步-建立规则文件并由PDRACULA进行处理。
第3步-DraculaERC运行由PDRACULA建立的运行文件,根据规则文件的要求从版图中提取并确认元器件及其连接关系;在完成规则文件指定的检查后,按规则文件的要求输出各种文件。
出错信息的坐标,以及非法图形的有关信息。
四、Dracula运行环境和数据文件
Dracula既可在UNIX环境下运行,也可在DF-II环境下运行;运行时所需的输入文件包括GDS-II/CIF格式的版图数据文件(笔者建议用户使用GDS-II
格式的版图数据文件;根据笔者使用经验,在应用SELECT命令时,如版图数据为CIF
版图验证工具DRACULA
一、DRACULA简介
DRACULA是美国Cadence公司的产品,主要用于LSI/VLSI的版图验证,由以下几个主要模块组成:
1DRC
DRC是DesignRuleCheck的缩写,用于检查版图的几何尺寸是否满足IC芯片制造过程中根据工艺确定的规则或约束条件,包括图形的宽度、图形间的距离、
该部分列出了所有出错信息所在单元的名字,不管该单元中是否存有数据。
⑵OutputCellSummary
该部分列出了含有数据的单元名,出错信息所在窗口的范围,以及按线段计算的出错
信息的个数(由于每个出现错误的地方都用两个线段来表示,因此,在一般情况下,
错误总数应为该值的一半)。此外,该部分的最后还给出了所有出错信息所在主单元
2━━━━━━━━━┓┏━━━━━━┓
┃PDRACULA┃┃命令文件有错┃
┃规则文件处理程序┃┗━━━━━━┛
3━━━━━━━┓┗━━━━━━━━━┛
┃LOGLVS┃
┃网表处理程序┃
┗━━━━━━━┛
4━━━━━━━━┓5━━━━━━━━┓
┃Dracula┃┃出错信息报告┃
┃程序┃┃(文字/图形)┃
**** ERROR(S) HAS(HAVE) BEEN DETECTE ****
DO YOU WANT TO VONTINUE ({Y}/N/R)?
** ERROR : THE SCHEMATICC FILE MAY NOT EXIST : LVSLOGIC.DAT