|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.sun.electric.technology.Technology
com.sun.electric.technology.technologies.MoCMOS
public class MoCMOS
This is the MOSIS CMOS technology.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class com.sun.electric.technology.Technology |
---|
Technology.ArcLayer, Technology.Distance, Technology.DistanceContext, Technology.DistanceRule, Technology.MultiCutData, Technology.NodeLayer, Technology.SizeCorrector, Technology.TechPoint, Technology.TechSetting |
Field Summary | |
---|---|
static Version |
changeOfMetal6
|
static int |
DEEPRULES
Value for deep rules. |
static int |
SCMOSRULES
Value for standard SCMOS rules. |
static int |
SUBMRULES
Value for submicron rules. |
static Variable.Key |
TECH_LAST_STATE
key of Variable for saving technology state. |
Fields inherited from class com.sun.electric.technology.Technology |
---|
cachedRules, DISK_VERSION_1, DISK_VERSION_2, EMPTY_CONTEXT, EMPTY_LIST, factoryNodeGroups, foundries, LAYERS_BY_HEIGHT, LAYERS_BY_HEIGHT_LIFT_CONTACTS, LAYERS_BY_ZVALUE, N_TYPE, nodeGroups, NULL_ARRAY, oldArcNames, oldNodeNames, P_TYPE, SPECIALMENUCELL, SPECIALMENUEXPORT, SPECIALMENUHIGH, SPECIALMENUMISC, SPECIALMENUPORT, SPECIALMENUPURE, SPECIALMENUSPICE, SPECIALMENUTEXT, sysArtwork, sysFPGA, sysGeneric, sysSchematics, TECH_TMPVAR, TRANS_CONTACT, xmlTech |
Constructor Summary | |
---|---|
MoCMOS(Generic generic)
Constructs MOCMOS technology without TSMC180 foundry. |
|
MoCMOS(Generic generic,
Xml.Technology t)
|
Method Summary | |
---|---|
java.util.Map<Setting,java.lang.Object> |
convertOldVariable(java.lang.String varName,
java.lang.Object value)
Method to convert any old-style variable information to the new options. |
protected void |
dumpExtraProjectSettings(java.io.PrintWriter out)
|
Setting |
getAlternateActivePolyRulesSetting()
Returns project Setting to tell whether this Technology is using alternate Active and Poly contact rules. |
Setting |
getAnalogSetting()
Returns project Setting to tell whether this technology has layers for vertical NPN transistor pbase. |
java.lang.Object[][] |
getDefaultNodesGrouped()
Method to construct a default group of elements for the palette. |
Setting |
getDisallowStackedViasSetting()
Returns project Setting to tell whether this Technology disallows stacked vias. |
XMLRules |
getFactoryDesignRules()
Method to build "factory" design rules, given the current technology settings. |
int |
getRuleSet()
Method to tell the current rule set for this Technology if Mosis is the foundry. |
Setting |
getRuleSetSetting()
Method to set the rule set for this Technology. |
Setting |
getSecondPolysiliconSetting()
Returns project Setting to tell a second polysilicon layer in this Technology. |
protected Poly[] |
getShapeOfNode(NodeInst ni,
boolean electrical,
boolean reasonable,
Technology.NodeLayer[] primLayers,
Layer layerOverride)
Method to return a list of Polys that describe a given NodeInst. |
Technology.SizeCorrector |
getSizeCorrector(Version version,
java.util.Map<Setting,java.lang.Object> projectSettings,
boolean isJelib,
boolean keepExtendOverMin)
|
boolean |
isAlternateActivePolyRules()
Method to determine whether this Technology is using alternate Active and Poly contact rules. |
boolean |
isAnalog()
Method to tell whether this technology has layers for vertical NPN transistor pbase. |
boolean |
isDisallowStackedVias()
Method to determine whether this Technology disallows stacked vias. |
boolean |
isSecondPolysilicon()
Method to tell the number of polysilicon layers in this Technology. |
protected void |
makeRuleSets(Xml807.Technology t)
|
void |
setPrimitiveNodeSize(NodeInst ni,
double width,
double length)
Method to set the size of a transistor NodeInst in this Technology. |
void |
setRuleVariables(DRCRules newDRCRules)
Method to be called from DRC:setRules |
void |
setState()
Method to set the technology to state "newstate", which encodes the number of metal layers, whether it is a deep process, and other rules. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final int SCMOSRULES
public static final int SUBMRULES
public static final int DEEPRULES
public static final Variable.Key TECH_LAST_STATE
public static final Version changeOfMetal6
Constructor Detail |
---|
public MoCMOS(Generic generic, Xml.Technology t)
public MoCMOS(Generic generic)
Method Detail |
---|
public java.lang.Object[][] getDefaultNodesGrouped()
getDefaultNodesGrouped
in class Technology
public void setState()
setState
in class Technology
protected void dumpExtraProjectSettings(java.io.PrintWriter out)
dumpExtraProjectSettings
in class Technology
protected void makeRuleSets(Xml807.Technology t)
makeRuleSets
in class Technology
protected Poly[] getShapeOfNode(NodeInst ni, boolean electrical, boolean reasonable, Technology.NodeLayer[] primLayers, Layer layerOverride)
getShapeOfNode
in class Technology
ni
- the NodeInst to describe.electrical
- true to get the "electrical" layers.
This makes no sense for Schematics primitives.reasonable
- true to get only a minimal set of contact cuts in large contacts.
This makes no sense for Schematics primitives.primLayers
- an array of NodeLayer objects to convert to Poly objects.layerOverride
- the layer to use for all generated polygons (if not null).
public XMLRules getFactoryDesignRules()
getFactoryDesignRules
in class Technology
public Technology.SizeCorrector getSizeCorrector(Version version, java.util.Map<Setting,java.lang.Object> projectSettings, boolean isJelib, boolean keepExtendOverMin)
getSizeCorrector
in class Technology
public void setRuleVariables(DRCRules newDRCRules)
setRuleVariables
in class Technology
newDRCRules
- public int getRuleSet()
public Setting getRuleSetSetting()
public boolean isSecondPolysilicon()
public Setting getSecondPolysiliconSetting()
public boolean isDisallowStackedVias()
public Setting getDisallowStackedViasSetting()
public boolean isAlternateActivePolyRules()
public Setting getAlternateActivePolyRulesSetting()
public boolean isAnalog()
public Setting getAnalogSetting()
public java.util.Map<Setting,java.lang.Object> convertOldVariable(java.lang.String varName, java.lang.Object value)
convertOldVariable
in class Technology
varName
- name of variablevalue
- value of variable
public void setPrimitiveNodeSize(NodeInst ni, double width, double length)
setPrimitiveNodeSize
in class Technology
ni
- the NodeInstwidth
- the new width (positive values only)length
- the new length (positive values only)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |