Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
layout editor.pdf
Скачиваний:
180
Добавлен:
05.06.2015
Размер:
3.04 Mб
Скачать

Virtuoso XL Layout Editor User Guide

Using Spice and CDL For Netlist Driven Layout Generation

val represents a value which may be numeric, a (variable) parameter name or a literal string enclosed in single quotes (4, -2.2, 3.75U, -3.56e-7, ppp, ‘any lit str’)

File Level Statements

First Line of File

The first line of a Spice or CDL file must be a comment.

Format (Spice or CDL) : *|$ {text} * or $ is the comment character text is an optional text string Ex : * this is a Spice or CDL file

.GLOBAL

The .Global statement is used for specifying global nets.

Format (Spice or CDL) : .GLOBAL name{:P|G} …

name is the net name

P or G are optional and represents Power or Ground

Ex : .GLOBAL vdd:P vss:g GNETA

Note: CDL will allow a * before the . of the .GLOBAL statement.

.INCLUDE

The .Include statement is used for including additional spice files from within a spice file.

The file included is treated similar to as if it were specified directly via command. There is no scoping done. However, all cells in an included file must be defined by .subckt or .model statements. If the specified file name supplied is not fully qualified, the run directory will be used as the base directory for the file.

Format (Spice or CDL) : .INCLUDE ‘filename’

filename is the file to be included

Ex : .INCLUDE ‘/cdsabc/mydir/sfile’

Note: CDL will allow a * before the . of the .INCLUDE statement.

December 2002

662

Product Version 5.0

Virtuoso XL Layout Editor User Guide

Using Spice and CDL For Netlist Driven Layout Generation

.INC

The .inc keyword is an alias for the .include keyword. See the .include keyword for details.

.OPTION

The .option statement is used for specifying option parameters.

This statement is reserved for specific Spice options, all but one of which are not used by VXL

Spice processing. These options will be read and stored. The one option processed for Spice handling is the scale. The scale factor acts as a multiplier for values such as length, width, area, etc. See the Parameter Resolution section for more details on the use of scale.

Format (Spice or CDL) : .OPTION param{=val} …

param{=val} is the parameter set to an optional, in the parameter list Ex : .OPTION scale=1.1

Note: CDL will allow a * before the . of the .OPTION statement.

.OPTIONS

The .options keyword is an alias for the .option keyword. See the .option keyword for details.

.MODEL

The .model statement is used for defining various types of model cells.

Format (Spice or CDL) : .MODEL name type {param=val}… name is the model name

type is the model type

param=val is an optional parameter set to a value, in the parameter list

The allowable model types are :

nmos and pmos for mosfet models, which will be created using the ports D,G,S,B

njf and pjf for jfet models, which will be created using ports D,G,S

nmf and pmf for mesfet models, which will be created using ports D,G,S

npn and pnp for BJT (bipolar) models, which will be created using the ports C,B,E

December 2002

663

Product Version 5.0

Virtuoso XL Layout Editor User Guide

Using Spice and CDL For Netlist Driven Layout Generation

d for diode models, which will be created using the ports PLUS,MINUS

c for capacitor models, which will be created using the ports PLUS,MINUS

r for resistor models, which will be created using the ports PLUS,MINUS

Ex: .MODEL TN nmos l = 1U w = 4U

.SUBCKT

The .subckt statement is used for defining subckt cells.

Format (Spice) : .SUBCKT name pin … {param=val}… name is the cell name

pin is a pin in the pin list

param=val is an optional parameter set to a value, in the parameter list Ex : .SUBCKT AND O A B L = 3U AS = 1.5P

Format (CDL) : .SUBCKT name {opin} … / {ipin} … {param=val}… name is the cell name

opin is a pin in the output pin list

/ is the separator between the output pin list and the input pin list ipin is a pin in the input pin list

param=val is an optional parameter set to a value, in the parameter list Ex : .SUBCKT AND O / A B L = 3U AS = 1.5P

Note: For the CDL format, there must be at least one pin in the opin or the ipin list. For Spice, port types are specified using the*PORT statement.

.MACRO

The .macro keyword is an alias for the .subckt keyword. See the .subckt keyword for details.

.ENDS

The .ends statement is used for ending a .subcktcell definition.

Format (Spice or CDL) : .ENDS

December 2002

664

Product Version 5.0

Virtuoso XL Layout Editor User Guide

Using Spice and CDL For Netlist Driven Layout Generation

.EOM

The .eom keyword is an alias for the .ends keyword. See the .ends keyword for details.

Statements Allowed at File Level or within a Subckt Cell or a Top Level Cell

.PARAM

The .param statement is used for specifying lists of parameters.

Format (Spice or CDL) : .PARAM param=val …

param=val is a parameter set to a value, in the parameter list

Ex : .PARAM w=5U p = wid str= ‘abc’

Note: CDL will allow a * before the . of the .PARAM statement.

Statements Allowed within a Subckt Cell or a Top Level Cell

* PORT

The * PORT statement is used for specifying pins as input or output pins.

Note: The *PORT statement is restricted to Spice only.

Format (Spice) : * PORT type pin …

type is the pin type and can take the values input, output, bidirect tristate, power, ground, supply, open_drain, or unknown pin is a pin in the pin list

Ex : * PORT input i1 i2

Note: For CDL, port types are specified on the.SUBCKT.

Subckt Reference

Format (Spice) : Xabc term … master {param=val}…

Xabc is the instance name

term is a terminal in the terminal list

master is the cell type (aka : master cell)

param=val is a parameter set to a value, in the parameter list

Ex : xanda a b o AND w=10U qqq=20

December 2002

665

Product Version 5.0

Virtuoso XL Layout Editor User Guide

Using Spice and CDL For Netlist Driven Layout Generation

Format (CDL) : Xabc term … {/}master {param=val}…

Xabc is the instance name

term is a terminal in the terminal list

/ is the optional separator between the term list and the cell type master is the cell type (aka : master cell)

param=val is a parameter set to a value, in the parameter list Ex : xanda a b o / AND w=10U qqq=20

Note: Subckt references must always begin with x.

Mosfet Reference

Format (Spice or CDL) : Mabc drain gate src bulk master {val1 {val2}}{param=val}… Mabc is the instance name

drain gate src bulk is the order of the terminals

master is the cell type (ie : model name) (aka : master cell) val1 is the value of the W parameter

val2 is the value of the L parameter

param=val is a parameter set to a value, in the parameter list Ex 1 : m1 vdd a q vdd TP W = 9e-7 L=1U as = 2e-12

Ex 2 : m1 vdd a q vdd TP 9e-7 1U as = 2e-12

Ex 3: m1 vdd a q vdd TP wpa L=lpa

Note: Mosfet references must always begin with m.

Jfet Reference

Format (Spice or CDL) : Jabc drain gate src master {area} {OFF} {param=val}… Jabc is the instance name

drain gate src is the order of the terminals

master is the cell type (ie : model name) (aka : master cell)

area is the optional area factor, it will be assigned to the property

“AREA”

OFF is the optional initial condition flag for dc analysis param=val is a parameter set to a value, in the parameter list

Ex : J1 vdd a q 9e-7 OFF pp = 5

December 2002

666

Product Version 5.0

Virtuoso XL Layout Editor User Guide

Using Spice and CDL For Netlist Driven Layout Generation

Note: Jfet references must always begin with j.

Mesfet Reference

Format (Spice or CDL) : Zabc drain gate src master {area} {OFF} {param=val}… Zabc is the instance name

drain gate src is the order of the terminals

master is the cell type (ie : model name) (aka : master cell)

area is the optional area factor, it will be assigned to the property

“AREA”

OFF is the optional initial condition flag for dc analysis param=val is a parameter set to a value, in the parameter list

Ex : Z1 vdd a q 9e-7 OFF pp = 5

Note: Mesfet references must always begin with z.

BJT (Bipolar) Reference

Format (Spice or CDL) :

Qabc collector base emitter substrate master {area} {OFF} {param=val}… Qabc is the instance name

collector base emitter substrate is the order of the terminals master is the cell type (ie : model name) (aka : master cell)

area is the optional area factor, it will be assigned to the property

“AREA”

OFF is the optional initial condition flag for dc analysis param=val is a parameter set to a value, in the parameter list

Ex : Q1 vdd a q 9e-7 OFF pp = 5

Note: BJT references must always begin with q.

Note: The substrate node must be specified. If it is not, a syntax error will occur.

Diode Reference

Format (Spice or CDL) : Dabc term1 term2 master {area} {OFF} {param=val}…

Dabc is the instance name

drain gate src is the order of the terminals

December 2002

667

Product Version 5.0

Virtuoso XL Layout Editor User Guide

Using Spice and CDL For Netlist Driven Layout Generation

master is the cell type (ie : model name) (aka : master cell)

area is the optional area factor, it will be assigned to the property

“AREA”

OFF is the optional initial condition flag for dc analysis param=val is a parameter set to a value, in the parameter list

Ex : D1 vdd a 9e-7 OFF pp = 5

Note: Diode references must always begin with d.

Capacitor Reference

Format (Spice or CDL) : Cabc term1 term2 {numval}{model} {param=val}… Cabc is the capacitor name

term1 term2 are the terminals

numval is the optional numerical capacitance value model is the optional model name (aka : master cell)

param=val is a parameter set to a value, in the parameter list Ex 1 : c0 gnd q 1e-14

Ex 2 : c1 gnd q capmod

Note: Either numval or model must be specified. It is allowable to specify both.

Note: Capacitor references must always begin with c.

Resistor Reference

Format (Spice or CDL) : Rabc term1 term2 {numval}{model} {param=val}… Rabc is the resistor name

term1 term2 are the terminals

numval is the optional numerical resistance value model is the optional model name (aka : master cell)

param=val is a parameter set to a value, in the parameter list Ex 1 : r0 gnd q 1e-6

Ex 2 : r1 gnd q resmod

Note: Either numval or model must be specified. It is allowable to specify both.

Note: Resistor references must always begin with r.

December 2002

668

Product Version 5.0

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]