ACT Library
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | Friends | List of all members
Material Class Reference

Used to hold information about a material. Materials correspond to abstract geometry, and get mapped to one or more GDS layers. More details are avaiable at: https://avlsi.csl.yale.edu/act/doku.php?id=config:layout. More...

#include <tech.h>

Inheritance diagram for Material:
Contact DiffMat FetMat RoutingMat WellMat PolyMat

Public Member Functions

 Material (const char *nm=NULL)
 
virtual const char * getName ()
 
void addGDS (char **table, int sz)
 
void addGDSBloat (int *table, int sz)
 
const char * viaUpName ()
 
int minArea ()
 
int minWidth ()
 
int minSpacing ()
 

Protected Attributes

const char * name
 drawing name in magic
 
RangeTablewidth
 min width range table (indexed by length)
 
RangeTablespacing_w
 min spacing range table (indexed by width)
 
int minarea
 
int maxarea
 
Contactviaup
 contact/via to material that is above
 
Contactviadn
 contact/via to material that is below
 
list_t * gds
 GDS layer list.
 
int * gds_bloat
 GDS bloat table.
 

Friends

class Technology
 

Detailed Description

Used to hold information about a material. Materials correspond to abstract geometry, and get mapped to one or more GDS layers. More details are avaiable at: https://avlsi.csl.yale.edu/act/doku.php?id=config:layout.

Constructor & Destructor Documentation

◆ Material()

Material::Material ( const char *  nm = NULL)
inline

Create new material

Parameters
nmis the name of the material. This is typically the magic layer name for drawing

Member Function Documentation

◆ addGDS()

void Material::addGDS ( char **  table,
int  sz 
)

Given a list of GDS names, add those to the GDS layers that must be generated for this material.

Parameters
tableis an array of GDS names
szis the size of the table

◆ addGDSBloat()

void Material::addGDSBloat ( int *  table,
int  sz 
)

Store the GDS bloat table associated with the GDS table that was added for this material

Parameters
tableis the list of bloat values
szis the size of the table

◆ getName()

virtual const char * Material::getName ( )
inlinevirtual
Returns
the name of the material

◆ minArea()

int Material::minArea ( )
inline
Returns
the minimum area for this material (0 = none)

◆ minSpacing()

int Material::minSpacing ( )
inline
Returns
the minimum spacing for this material

◆ minWidth()

int Material::minWidth ( )
inline
Returns
the minimum width for this material

◆ viaUpName()

const char * Material::viaUpName ( )

This returns the name of the via to connect up from the material, if any

Returns
the name of the via

Friends And Related Function Documentation

◆ Technology

friend class Technology
friend

Member Data Documentation

◆ gds

list_t* Material::gds
protected

GDS layer list.

◆ gds_bloat

int* Material::gds_bloat
protected

GDS bloat table.

◆ maxarea

int Material::maxarea
protected

maximum area for material; 0 means no constraint

◆ minarea

int Material::minarea
protected

minimum area for material; 0 means no constraint

◆ name

const char* Material::name
protected

drawing name in magic

◆ spacing_w

RangeTable* Material::spacing_w
protected

min spacing range table (indexed by width)

◆ viadn

Contact* Material::viadn
protected

contact/via to material that is below

◆ viaup

Contact* Material::viaup
protected

contact/via to material that is above

◆ width

RangeTable* Material::width
protected

min width range table (indexed by length)


The documentation for this class was generated from the following file: