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

Used to hold routing materials with extra routing design rules. More...

#include <tech.h>

Inheritance diagram for RoutingMat:
Material PolyMat

Public Member Functions

 RoutingMat (char *s)
 
void setLEFName (char *s)
 
int getPitch ()
 
int getLEFWidth ()
 
const char * getLEFName ()
 
Contact * getUpC ()
 
int getSpacing (int w)
 
int isComplexSpacing ()
 
int complexSpacingMode ()
 
int numRunLength ()
 
int getRunLength (int w)
 
RangeTable * getRunTable (int w)
 
int getEol ()
 
int getEolWithin ()
 
double getAntenna ()
 
double getAntennaDiff ()
 
int numInfluence ()
 
int * getInfluence ()
 
- Public Member Functions inherited from Material
 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

RoutingRules r
 
- Protected Attributes inherited from Material
const char * name
 drawing name in magic
 
RangeTable * width
 min width range table (indexed by length)
 
RangeTable * spacing_w
 min spacing range table (indexed by width)
 
int minarea
 
int maxarea
 
Contact * viaup
 contact/via to material that is above
 
Contact * viadn
 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 routing materials with extra routing design rules.

Constructor & Destructor Documentation

◆ RoutingMat()

RoutingMat::RoutingMat ( char *  s)
inline

Create a new routing material

Parameters
sis the name of the routing material

Member Function Documentation

◆ complexSpacingMode()

int RoutingMat::complexSpacingMode ( )
inline

Complex spacing can be of type 0 (simple parallel run length rule), or of type 1 (a twowidth rule)

Returns
the type of complex spacing rule

◆ getAntenna()

double RoutingMat::getAntenna ( )
inline
Returns
antenna ratio

◆ getAntennaDiff()

double RoutingMat::getAntennaDiff ( )
inline
Returns
antenna diffusion ratio

◆ getEol()

int RoutingMat::getEol ( )
inline
Returns
end-of-line extension

◆ getEolWithin()

int RoutingMat::getEolWithin ( )
inline
Returns
end-of-line width rule

◆ getInfluence()

int * RoutingMat::getInfluence ( )
inline
Returns
the influence table

◆ getLEFName()

const char * RoutingMat::getLEFName ( )
inline
Returns
the LEF name; if not specified, then use the normal material name

◆ getLEFWidth()

int RoutingMat::getLEFWidth ( )
inline
Returns
width to be used for the LEF file

◆ getPitch()

int RoutingMat::getPitch ( )
inline
Returns
the pitch for this routing layer

◆ getRunLength()

int RoutingMat::getRunLength ( int  w)
inline
Returns
the run length for a given width

◆ getRunTable()

RangeTable * RoutingMat::getRunTable ( int  w)
inline
Returns
the RangeTable for parallel run lengths

◆ getSpacing()

int RoutingMat::getSpacing ( int  w)
inline
Parameters
wis the width of the material
Returns
the minimum spacing given the width

◆ getUpC()

Contact * RoutingMat::getUpC ( )
inline
Returns
the name of the contact to connect up from this layer to the next routing layer

◆ isComplexSpacing()

int RoutingMat::isComplexSpacing ( )
inline
Returns
1 if this has non-trivial spacing rules that have to be recoded in the LEF

◆ numInfluence()

int RoutingMat::numInfluence ( )
inline
Returns
size of the spacing influence table

◆ numRunLength()

int RoutingMat::numRunLength ( )
inline
Returns
the size of the parallel run length table

◆ setLEFName()

void RoutingMat::setLEFName ( char *  s)
inline

Set the LEF name for this layer

Parameters
sis the LEF name

Friends And Related Function Documentation

◆ Technology

friend class Technology
friend

Member Data Documentation

◆ r

RoutingRules RoutingMat::r
protected

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