当前位置:文档之家› Cadence版图设计环境的建立及设计规则的验证

Cadence版图设计环境的建立及设计规则的验证

Cadence 版图设计环境的建立及设计规则的验证

王翠霞,范学峰,许维胜,余有灵,王子君

(同济大学半导体与信息技术研究所 上海 200092)

摘 要:对版图设计需要的工艺库(technology file )文件、显示(display )文件的书写进行了详细分析,并对设计规则验证(DRC)中遇到的问题进行了解释。

关键词:工艺库;显示文件;设计规则验证;版图

中图分类号:TN919.81 文献标识码:B 文章编号:1004373X (2004)1501803

Environment Setup of Layout and Verificat ion of Design Rules in Cadence

WANG Cuixia,FAN Xuefeng,XU Weisheng,YU Youling,WANG Zijun

(Institute of S emic onduc t or &Informat ion Technology,Tongji Uni versit y,Shangha i ,200092,China)

Abstr act :In this paper,the technology file and display file wer e elabor ated explained before layout ,and the problems of design rule checker wer e dea led.

Keywor ds :technology file ;display file ;design rule checker ;ter r itory

收稿日期:200404

02

基金项目:AM 基金项目(0101)

Cadence 提供的Virtuoso 版图设计及其验证工具强大的功能是任何其他EDA 工具所无法比拟的,故一直以来都受到了广大EDA 工程师的青睐[1],然而Virtuoso 工具的工艺库的建立和Dracula 的版图验证比较繁琐。本文将从Virt uoso 的工艺库的建立及Dracula 版图的设计规则验证等方面做详细介绍。

1 Technology file 与Display Resour ce File 的建立

版图设计是集成电路设计中重要的环节,是把每个元件的电路表示转换成集合表示,同时,元件间连接的线网也被转换成集合连线图形[2]。与电路设计不同的是版图设计必须考虑具体的工艺实现,因此,存放版图的库必须是工艺库或附在别的工艺库上的库。否则,用隐含的库将没有版层,即LSW 窗口是空框,无法画图。因此,在设计版图前必须先建立工艺库,且要有显示文件(display re-source file )display .drf 。

technology file 中应包含以下几部分[3]

:层定义(Lay-er definit ions)、器件定义(Device definit ions)、层物理电学规则(Layer,physical and electrical rules)、布线规则(Place and rout e rules)和特殊规则(Rules specific to indi-vidual Cadence applicat ions )。

层定义中主要包括:

(1)该层的用途设定,用来做边界线的或者是引脚标识的等,有cadence 系统保留的,也有用户设定的。

(2)工艺层,即在LSW 中显示的层。(3)层的优先权,名字相同用途不同的层按照用途的

优先权的排序。

(4)层的显示。(5)层的属性。

器件模块中可以定义一些增强型器件、耗尽型器件、柱塞器件、引脚器件等,这些器件定义好之后,在作版图

时可以直接调用该器件,从而减轻重复的工作量。

层、物理、电学规则的模块包括层与层间的规则,物

理规则和电学规则。层规则中定义了通道层与柱塞层。物

理规则中主要定义了层与层间的最小间距,层包含层的最小余量等。电学规则中规定了各种层的方块电阻、面电容、

边电容等电学性质。

布线规则主要为自动布局布线书写的,在启动自动布

局布线时,将照该模块中定义的线宽和线间距进行[4]。

书写工艺规则文件时主要应包括以下几项:

contr ols () 控制类设置在工艺文件中的参数techPa rams() 工艺文件中的参数techPer missions() 读写权限layer Def initions () 层定义techLayer s () 工艺层techPur poses() 层用途

techLayer Pur posePr ior it ies () 工艺层用途的优先权techDisplays() 工艺层的显示

techLayer Pr oper ties () 工艺层的属性devices () 器件定义

tcCr eateCDSDeviceClass () 定义新器件sym ContactDevice() 柱塞器件

18

王翠霞等:Cadence 版图设计环境的建立及设计规则的验证

r uleContactDevice() 柱塞器件规则

symEnhancementDevice() 增强型器件

symDepletionDevice() 耗尽型器件

symP inDevice() 引脚器件

symR ect PinDevice() 矩形引脚器件

cdsViaDevice() 金属间连接器件

tcCreat eDeviceClass() 用户定义器件

tcDeclareDevice() 声明器件

layer Rules() 层间规则

viaLayer s() 金属间连接

equivalent Layer s() 等价层

str eamLa yer s() 连接层

layer Functions() 功能层

physicalRules() 物理规则

spacingRules() 尺寸规则

or deredSpacingRules() 有序层尺寸规则

tableSpacingRules() 尺寸规则表

mfgGr idResolut ion() 栅格分辨率

electr icalRules() 电学规则

or deredChar acter izationR ules() 有序层特性参数

character izationRules() 无序层特性参数

tableChar acter izationR ules() 特性参数表

leRules() Virt uoso layout规则

leLswLayer s() LSW中层的排序

lxRules() Vir tuoso XL layout规则

lxExtr actLayer s() 提取生成层

lxNoOverlapLayers() 非重叠层

lxM PPT emplates() 临时层

compactor R ules() Vir tuoso紧缩设计规则

compactor Layer s() 紧缩层

symWir es() 合成线

symR ules() 合成规则

pr Rules() 布线规则

prR outingLayer s() 布线方向

prViaT ypes() 布线中默认的柱塞布线规则

prStackVias() 矩阵柱塞的规则

prMa xSta ckVias() 矩阵柱塞的最大密度

prMa st er sliceLayer s() 布线中的基准层

prViaR ules() 柱塞布局的规则

prGenViaRules() 生成柱塞的规则

prNonDefaultRules() 非缺省值规则

prR outingPit ch() 布线时的最小间距

prR outingOffset() 布线于栅格的偏差

prOver la pLayer() 重叠边界

显示对于版图设计也很重要,因此要有自己的显示文件(display resource file)display.drf。显示文件应包括以下几个部分[3]:显示器的介绍(显示器中的监控器、绘图仪等的指标)drDefineDisplay()、颜色定义(颜色的定义)drDefineColor()、条纹定义(条纹的定义)DefineSt ipple ()、线形定义(线形的定义)drDefineLineSt yle()、显示包定义(列出各层分别对应的颜色、条纹、线形)drDefinePacket()、显示包别名定义(显示包的别名) drDefinePacketAlias()。以下列出简单的显示文件以说明语法和格式:

drDefineDisplay(

;(DisplayName)

(display ))

drDefineColor(

;(DisplayName ColorName Red Gr een Blue Blink)

(display white 255 255 255))

drDefineSt ipple(

;(DisplayName StippleName Bit map)

(display stipple1 (1111111111111111)) drDefineLineSt yle(

;(DisplayName LineStyle Size P atter n)

(display lineStyle11(1111000011110000)) drDefinePacket(

;(DisplayName P acketName St ipple LineStyle Fill Out line) (display blacksolid_S solid solid black black)

2 Vir tuoso工具的使用

启动Virtuoso最简单的方法是通过CIW打开或者新建一个单元的版图视图。启动后出现Virtuoso界面及LSW窗口,从LSW窗口中选择所需要的层画图即可[5]。Virt uoso作为版图设计,其界面比较容易方便掌握。

3 设计规则的书写

电路设计师希望电路设计尽量紧凑,而工艺工程师却希望是一个高成品率的工艺。设计规则是使他们都满意的折衷[2]。所以设计规则的编写必须非常规范。设计规则是一个由用户创建的包含Dracula命令的文本文件,这些命令指定了设计中所用到的验证操作,在结构上主要包含描述块Descript ion block、层定义块Input layer block、操作命令块Operat ion block三部分。

(1)描述块Description block

这部分定义了Dracula运行于何种系统平台,也包含了要进行验证的版图的一些信息,例如:执行模式、版图模块名称、输入/输出的文件名和格式等。

*descr iption

system=ds2//版图数据格式primar y=top//要验证模块名称indisk=〈path〉//版图gds2文件存放路径out disk=drc.out//输出结果的名称printfile=dr cpr//打印输出文件的名字

(2)层定义块Input layer block

这部分用来将版图层编号或名称与Dracula层的名称联系起来,同时规定Dracula所需要的关于层的其他信息,在操作命令块中使用到这些层时,可以使用该层的名称。以下为有关层定义块的示例。

*input layer

;layer name ingds descr iption

19

《现代电子技术》2004年第15期总第182期语音图像

nwell i=1//n well定义n阱active i=4//定义有源区connect layer=psub nwl nsd psd ntap pt ap py1py2m t1 mt2//定义相连层*end

(3)操作命令块Operat ion block

这部分主要通过对已定义的层进行逻辑操作,如AND、OR等以进行器件的识别。此外,还定义将要运行的操作并对出现的错误进行标记,其中必须包含DRC命令,该命令指定Dracula进行DRC验证操作。

*oper ation

not nwelli excl nwell nwelli//非excl则为nwell not activei excl active act ivei//非excl为active and active nimp ncomp active

//与nimp则为ncomp,即n+active区;nwell r ules: //n阱规则wid nwell lt3.0 output a010161

;8.1.1nwell width=3.0//n阱的最小宽度为3.0 4 设计规则的验证

设计规则的验证是版图与具体工艺的接口,因此就显得尤为重要,Cadence中进行版图验证的工具主要有drac-ula和diva。Dracula为独立的验证工具,不仅可以进行设计规则验证(DRC),而且可以完成电学规则验证(ERC)、版图与电路验证(LVS)、寄生参数提取(LPE)等一系列验证工作,功能强于Diva[6]。

通过CIW窗口中的Export→St ream菜单,将版图转变成GDS2格式文件*.gds,并存到运行目录下。在创建了规则文件之后,就可以使用PDRACULA预处理工具对其进行编译。首先,检查规则文件中的语法错误,通过后方可对规则文件进行编译,并将结果存为可执行文件进行https://www.doczj.com/doc/a25282780.html,或https://www.doczj.com/doc/a25282780.html,,这个可执行文件包含了提交Dracula任务的命令。

在进行验证操作过程中用到的库都应位于当前运行目录或由路径指定链接到该运行目录。如果库不位于当前运行目录,则由Pdracula建立一个从库到运行目录的链接,并将其加入上述可执行文件https://www.doczj.com/doc/a25282780.html,中,经jxrun.con执行后产生的错误文件(*.DAT)。

打开要验证单元的版图界面,点击file下的Dracula Interactive,DRC,LVS,LPE等窗口弹出在菜单栏上,在DRC菜单下的setup中,给出错误文件的路径,即可将错误报告与Virt uoso的图形界面结合起来,根据错误层的提示,在图中直接修改即可。

根据错误报告的提示,修改版图的步骤为:

(1)将错误文件导入Virt uoso界面。

(2)找到错误层,根据错误提示进行修改。

(3)更新gdsII,编译规则文件,进行DRC验证,重复上述(1),(2)操作,直至版图完全通过DRC验证。

有一类错误比较隐蔽,称为offgrid错误[7]。这类错误是因为位置位于最小栅格的内部造成的,这样的版图在制版中因分辨率的限制会对尺寸四舍五入,造成数据的失真,甚至可能违反设计规则,故必须修改。在最高层的off-grid错误易于修改,移动该层或线使其位于栅格边界上,在底层的错误要descend数层后,修改inst ance才可完成。

5 结 语

在IC设计过程中,利用Virt uoso做版图的layout,用Dracula作为验证工具,这是比较完美的搭配。要想快速、准确地完成版图的Layout,就需要正确书写t echnologe file文件、display文件及设计规则文件,以及在设计规则验证时快速的定位错误并修改之,所以掌握这些技能可以减少了设计流程的反复,进而显著降低设计的成本、提高设计的可靠性。

参 考 文 献

[1] Cadence inst allation guide,Cadence company,prod-

uct Version2.1.2001,Cadence design sys

t ems.Inc.Print ed in the Unit ed St at es of America.

[2] 程未,冯勇建,杨涵.集成电路版图(layout)设计

方法与实例[J].现代电子技术,2003,26(3):75

78.

[3] T echnology file and display resource file user guide.

Product version5.0,January2003Cadence design

syst ems.Inc.Print ed in the United St at es of Amer-

ica.

[4] Virt uoso layout accelerat or user guide,product

Version4.4.6,June2000,Cadence design sys

t ems.Inc.Printed in t he United States of Ameri-

ca.

[5] Virtuoso layout edit or user guide,product Version

5.0,June2000,Cadence design syst ems.Inc.

Print ed in t he Unit ed St at es of America.

[6] 石春琦,吴金,常昌远,等.LVS版图验证方法的

研究[J].电子器件,2002,25(2):165169. [7] 孙润.Tanner集成电路设计教程[M].北京:北

京希望电子出版社,2001.

作者简介 王翠霞 女,1976年出生,硕士学位。现在同济大学半导体信息与技术研究所工作,从事I C设计行业,参加AM基金资助项目《灵巧型功率集成电路在自动控制中的应用与研究》,该项目于2003年12月通过验收。

20

王翠霞等:Cadence版图设计环境的建立及设计规则的验证

相关主题
文本预览
相关文档 最新文档