home *** CD-ROM | disk | FTP | other *** search
Text File | 1990-07-13 | 39.1 KB | 2,501 lines |
- %{
- /*
- * $Header: edif.y,v 1.18 87/12/07 19:59:49 roger Locked $
- */
- /************************************************************************
- * *
- * edif.y *
- * *
- * EDIF 2.0.0 parser, Level 0 *
- * *
- * You are free to copy, distribute, use it, abuse it, make it *
- * write bad tracks all over the disk ... or anything else. *
- * *
- * Your friendly neighborhood Rogue Monster - roger@mips.com *
- * *
- ************************************************************************/
- #include <stdio.h>
- #include <ctype.h>
- /*
- * Local definitions.
- */
- #define IDENT_LENGTH 255
- #define Malloc(s) malloc(s)
- #define Free(p) free(p)
- #define ABS(v) ((v) < 0 ? -(v) : (v))
- #define Getc(s) getc(s)
- #define Ungetc(c) ungetc(c,Input);
- /*
- * External functions.
- */
- extern char *malloc(),*strcpy();
- extern int atoi();
- extern free();
- %}
-
- %union {
- char *s;
- }
-
- %token <s> IDENT
- %token <s> INT
- %token <s> KEYWORD
- %token <s> STR
-
- %token ANGLE
- %token BEHAVIOR
- %token CALCULATED
- %token CAPACITANCE
- %token CENTERCENTER
- %token CENTERLEFT
- %token CENTERRIGHT
- %token CHARGE
- %token CONDUCTANCE
- %token CURRENT
- %token DISTANCE
- %token DOCUMENT
- %token ENERGY
- %token EXTEND
- %token FLUX
- %token FREQUENCY
- %token GENERIC
- %token GRAPHIC
- %token INDUCTANCE
- %token INOUT
- %token INPUT
- %token LOGICMODEL
- %token LOWERCENTER
- %token LOWERLEFT
- %token LOWERRIGHT
- %token MASKLAYOUT
- %token MASS
- %token MEASURED
- %token MX
- %token MXR90
- %token MY
- %token MYR90
- %token NETLIST
- %token OUTPUT
- %token PCBLAYOUT
- %token POWER
- %token R0
- %token R180
- %token R270
- %token R90
- %token REQUIRED
- %token RESISTANCE
- %token RIPPER
- %token ROUND
- %token SCHEMATIC
- %token STRANGER
- %token SYMBOLIC
- %token TEMPERATURE
- %token TIE
- %token TIME
- %token TRUNCATE
- %token UPPERCENTER
- %token UPPERLEFT
- %token UPPERRIGHT
- %token VOLTAGE
-
- %token ACLOAD
- %token AFTER
- %token ANNOTATE
- %token APPLY
- %token ARC
- %token ARRAY
- %token ARRAYMACRO
- %token ARRAYRELATEDINFO
- %token ARRAYSITE
- %token ATLEAST
- %token ATMOST
- %token AUTHOR
- %token BASEARRAY
- %token BECOMES
- %token BETWEEN
- %token BOOLEAN
- %token BOOLEANDISPLAY
- %token BOOLEANMAP
- %token BORDERPATTERN
- %token BORDERWIDTH
- %token BOUNDINGBOX
- %token CELL
- %token CELLREF
- %token CELLTYPE
- %token CHANGE
- %token CIRCLE
- %token COLOR
- %token COMMENT
- %token COMMENTGRAPHICS
- %token COMPOUND
- %token CONNECTLOCATION
- %token CONTENTS
- %token CORNERTYPE
- %token CRITICALITY
- %token CURRENTMAP
- %token CURVE
- %token CYCLE
- %token DATAORIGIN
- %token DCFANINLOAD
- %token DCFANOUTLOAD
- %token DCMAXFANIN
- %token DCMAXFANOUT
- %token DELAY
- %token DELTA
- %token DERIVATION
- %token DESIGN
- %token DESIGNATOR
- %token DIFFERENCE
- %token DIRECTION
- %token DISPLAY
- %token DOMINATES
- %token DOT
- %token DURATION
- %token E
- %token EDIF
- %token EDIFLEVEL
- %token EDIFVERSION
- %token ENCLOSUREDISTANCE
- %token ENDTYPE
- %token ENTRY
- %token EVENT
- %token EXACTLY
- %token EXTERNAL
- %token FABRICATE
- %token FALSE
- %token FIGURE
- %token FIGUREAREA
- %token FIGUREGROUP
- %token FIGUREGROUPOBJECT
- %token FIGUREGROUPOVERRIDE
- %token FIGUREGROUPREF
- %token FIGUREPERIMETER
- %token FIGUREWIDTH
- %token FILLPATTERN
- %token FOLLOW
- %token FORBIDDENEVENT
- %token GLOBALPORTREF
- %token GREATERTHAN
- %token GRIDMAP
- %token IGNORE
- %token INCLUDEFIGUREGROUP
- %token INITIAL
- %token INSTANCE
- %token INSTANCEBACKANNOTATE
- %token INSTANCEGROUP
- %token INSTANCEMAP
- %token INSTANCEREF
- %token INTEGER
- %token INTEGERDISPLAY
- %token INTERFACE
- %token INTERFIGUREGROUPSPACING
- %token INTERSECTION
- %token INTRAFIGUREGROUPSPACING
- %token INVERSE
- %token ISOLATED
- %token JOINED
- %token JUSTIFY
- %token KEYWORDDISPLAY
- %token KEYWORDLEVEL
- %token KEYWORDMAP
- %token LESSTHAN
- %token LIBRARY
- %token LIBRARYREF
- %token LISTOFNETS
- %token LISTOFPORTS
- %token LOADDELAY
- %token LOGICASSIGN
- %token LOGICINPUT
- %token LOGICLIST
- %token LOGICMAPINPUT
- %token LOGICMAPOUTPUT
- %token LOGICONEOF
- %token LOGICOUTPUT
- %token LOGICPORT
- %token LOGICREF
- %token LOGICVALUE
- %token LOGICWAVEFORM
- %token MAINTAIN
- %token MATCH
- %token MEMBER
- %token MINOMAX
- %token MINOMAXDISPLAY
- %token MNM
- %token MULTIPLEVALUESET
- %token MUSTJOIN
- %token NAME
- %token NET
- %token NETBACKANNOTATE
- %token NETBUNDLE
- %token NETDELAY
- %token NETGROUP
- %token NETMAP
- %token NETREF
- %token NOCHANGE
- %token NONPERMUTABLE
- %token NOTALLOWED
- %token NOTCHSPACING
- %token NUMBER
- %token NUMBERDEFINITION
- %token NUMBERDISPLAY
- %token OFFPAGECONNECTOR
- %token OFFSETEVENT
- %token OPENSHAPE
- %token ORIENTATION
- %token ORIGIN
- %token OVERHANGDISTANCE
- %token OVERLAPDISTANCE
- %token OVERSIZE
- %token OWNER
- %token PAGE
- %token PAGESIZE
- %token PARAMETER
- %token PARAMETERASSIGN
- %token PARAMETERDISPLAY
- %token PATH
- %token PATHDELAY
- %token PATHWIDTH
- %token PERMUTABLE
- %token PHYSICALDESIGNRULE
- %token PLUG
- %token POINT
- %token POINTDISPLAY
- %token POINTLIST
- %token POLYGON
- %token PORT
- %token PORTBACKANNOTATE
- %token PORTBUNDLE
- %token PORTDELAY
- %token PORTGROUP
- %token PORTIMPLEMENTATION
- %token PORTINSTANCE
- %token PORTLIST
- %token PORTLISTALIAS
- %token PORTMAP
- %token PORTREF
- %token PROGRAM
- %token PROPERTY
- %token PROPERTYDISPLAY
- %token PROTECTIONFRAME
- %token PT
- %token RANGEVECTOR
- %token RECTANGLE
- %token RECTANGLESIZE
- %token RENAME
- %token RESOLVES
- %token SCALE
- %token SCALEX
- %token SCALEY
- %token SECTION
- %token SHAPE
- %token SIMULATE
- %token SIMULATIONINFO
- %token SINGLEVALUESET
- %token SITE
- %token SOCKET
- %token SOCKETSET
- %token STATUS
- %token STEADY
- %token STRING
- %token STRINGDISPLAY
- %token STRONG
- %token SYMBOL
- %token SYMMETRY
- %token TABLE
- %token TABLEDEFAULT
- %token TECHNOLOGY
- %token TEXTHEIGHT
- %token TIMEINTERVAL
- %token TIMESTAMP
- %token TIMING
- %token TRANSFORM
- %token TRANSITION
- %token TRIGGER
- %token TRUE
- %token UNCONSTRAINED
- %token UNDEFINED
- %token UNION
- %token UNIT
- %token UNUSED
- %token USERDATA
- %token VERSION
- %token VIEW
- %token VIEWLIST
- %token VIEWMAP
- %token VIEWREF
- %token VIEWTYPE
- %token VISIBLE
- %token VOLTAGEMAP
- %token WAVEVALUE
- %token WEAK
- %token WEAKJOINED
- %token WHEN
- %token WRITTEN
-
- %start Edif
-
- %%
-
- PopC : ')' { PopC(); }
- ;
-
- Edif : EDIF EdifFileName EdifVersion EdifLevel KeywordMap _Edif PopC
- ;
-
- _Edif :
- | _Edif Status
- | _Edif External
- | _Edif Library
- | _Edif Design
- | _Edif Comment
- | _Edif UserData
- ;
-
- EdifFileName : NameDef
- ;
-
- EdifLevel : EDIFLEVEL Int PopC
- ;
-
- EdifVersion : EDIFVERSION Int Int Int PopC
- ;
-
- AcLoad : ACLOAD _AcLoad PopC
- ;
-
- _AcLoad : MiNoMaValue
- | MiNoMaDisp
- ;
-
- After : AFTER _After PopC
- ;
-
- _After : MiNoMaValue
- | _After Follow
- | _After Maintain
- | _After LogicAssn
- | _After Comment
- | _After UserData
- ;
-
- Annotate : ANNOTATE _Annotate PopC
- ;
-
- _Annotate : Str
- | StrDisplay
- ;
-
- Apply : APPLY _Apply PopC
- ;
-
- _Apply : Cycle
- | _Apply LogicIn
- | _Apply LogicOut
- | _Apply Comment
- | _Apply UserData
- ;
-
- Arc : ARC PointValue PointValue PointValue PopC
- ;
-
- Array : ARRAY NameDef Int _Array PopC
- ;
-
- _Array :
- | Int
- ;
-
- ArrayMacro : ARRAYMACRO Plug PopC
- ;
-
- ArrayRelInfo : ARRAYRELATEDINFO _ArrayRelInfo PopC
- ;
-
- _ArrayRelInfo : BaseArray
- | ArraySite
- | ArrayMacro
- | _ArrayRelInfo Comment
- | _ArrayRelInfo UserData
- ;
-
- ArraySite : ARRAYSITE Socket PopC
- ;
-
- AtLeast : ATLEAST ScaledInt PopC
- ;
-
- AtMost : ATMOST ScaledInt PopC
- ;
-
- Author : AUTHOR Str PopC
- ;
-
- BaseArray : BASEARRAY PopC
- ;
-
- Becomes : BECOMES _Becomes PopC
- ;
-
- _Becomes : LogicNameRef
- | LogicList
- | LogicOneOf
- ;
-
- Between : BETWEEN __Between _Between PopC
- ;
-
- __Between : AtLeast
- | GreaterThan
- ;
-
- _Between : AtMost
- | LessThan
- ;
-
- Boolean : BOOLEAN _Boolean PopC
- ;
-
- _Boolean :
- | _Boolean BooleanValue
- | _Boolean BooleanDisp
- | _Boolean Boolean
- ;
-
- BooleanDisp : BOOLEANDISPLAY _BooleanDisp PopC
- ;
-
- _BooleanDisp : BooleanValue
- | _BooleanDisp Display
- ;
-
- BooleanMap : BOOLEANMAP BooleanValue PopC
- ;
-
- BooleanValue : True
- | False
- ;
-
- BorderPat : BORDERPATTERN Int Int Boolean PopC
- ;
-
- BorderWidth : BORDERWIDTH Int PopC
- ;
-
- BoundBox : BOUNDINGBOX Rectangle PopC
- ;
-
- Cell : CELL CellNameDef _Cell PopC
- ;
-
- _Cell : CellType
- | _Cell Status
- | _Cell ViewMap
- | _Cell View
- | _Cell Comment
- | _Cell UserData
- | _Cell Property
- ;
-
- CellNameDef : NameDef
- ;
-
- CellRef : CELLREF CellNameRef _CellRef PopC
- ;
-
- _CellRef :
- | LibraryRef
- ;
-
- CellNameRef : NameRef
- ;
-
- CellType : CELLTYPE _CellType PopC
- ;
-
- _CellType : TIE
- | RIPPER
- | GENERIC
- ;
-
- Change : CHANGE __Change _Change PopC
- ;
-
- __Change : PortNameRef
- | PortRef
- | PortList
- ;
-
- _Change :
- | Becomes
- | Transition
- ;
-
- Circle : CIRCLE PointValue PointValue _Circle PopC
- ;
-
- _Circle :
- | _Circle Property
- ;
-
- Color : COLOR ScaledInt ScaledInt ScaledInt PopC
- ;
-
- Comment : COMMENT _Comment PopC
- ;
-
- _Comment :
- | _Comment Str
- ;
-
- CommGraph : COMMENTGRAPHICS _CommGraph PopC
- ;
-
- _CommGraph :
- | _CommGraph Annotate
- | _CommGraph Figure
- | _CommGraph Instance
- | _CommGraph BoundBox
- | _CommGraph Property
- | _CommGraph Comment
- | _CommGraph UserData
- ;
-
- Compound : COMPOUND LogicNameRef PopC
- ;
-
- Contents : CONTENTS _Contents PopC
- ;
-
- _Contents :
- | _Contents Instance
- | _Contents OffPageConn
- | _Contents Figure
- | _Contents Section
- | _Contents Net
- | _Contents NetBundle
- | _Contents Page
- | _Contents CommGraph
- | _Contents PortImpl
- | _Contents Timing
- | _Contents Simulate
- | _Contents When
- | _Contents Follow
- | _Contents LogicPort
- | _Contents BoundBox
- | _Contents Comment
- | _Contents UserData
- ;
-
- ConnectLoc : CONNECTLOCATION _ConnectLoc PopC
- ;
-
- _ConnectLoc :
- | Figure
- ;
-
- CornerType : CORNERTYPE _CornerType PopC
- ;
-
- _CornerType : EXTEND
- | ROUND
- | TRUNCATE
- ;
-
- Criticality : CRITICALITY _Criticality PopC
- ;
-
- _Criticality : Int
- | IntDisplay
- ;
-
- CurrentMap : CURRENTMAP MiNoMaValue PopC
- ;
-
- Curve : CURVE _Curve PopC
- ;
-
- _Curve :
- | _Curve Arc
- | _Curve PointValue
- ;
-
- Cycle : CYCLE Int _Cycle PopC
- ;
-
- _Cycle :
- | Duration
- ;
-
- DataOrigin : DATAORIGIN Str _DataOrigin PopC
- ;
-
- _DataOrigin :
- | Version
- ;
-
- DcFanInLoad : DCFANINLOAD _DcFanInLoad PopC
- ;
-
- _DcFanInLoad : ScaledInt
- | NumbDisplay
- ;
-
- DcFanOutLoad : DCFANOUTLOAD _DcFanOutLoad PopC
- ;
-
- _DcFanOutLoad : ScaledInt
- | NumbDisplay
- ;
-
- DcMaxFanIn : DCMAXFANIN _DcMaxFanIn PopC
- ;
-
- _DcMaxFanIn : ScaledInt
- | NumbDisplay
- ;
-
- DcMaxFanOut : DCMAXFANOUT _DcMaxFanOut PopC
- ;
-
- _DcMaxFanOut : ScaledInt
- | NumbDisplay
- ;
-
- Delay : DELAY _Delay PopC
- ;
-
- _Delay : MiNoMaValue
- | MiNoMaDisp
- ;
-
- Delta : DELTA _Delta PopC
- ;
-
- _Delta :
- | _Delta PointValue
- ;
-
- Derivation : DERIVATION _Derivation PopC
- ;
-
- _Derivation : CALCULATED
- | MEASURED
- | REQUIRED
- ;
-
- Design : DESIGN DesignNameDef _Design PopC
- ;
-
- _Design : CellRef
- | _Design Status
- | _Design Comment
- | _Design Property
- | _Design UserData
- ;
-
- Designator : DESIGNATOR _Designator PopC
- ;
-
- _Designator : Str
- | StrDisplay
- ;
-
- DesignNameDef : NameDef
- ;
-
- DesignRule : PHYSICALDESIGNRULE _DesignRule PopC
- ;
-
- _DesignRule :
- | _DesignRule FigureWidth
- | _DesignRule FigureArea
- | _DesignRule RectSize
- | _DesignRule FigurePerim
- | _DesignRule OverlapDist
- | _DesignRule OverhngDist
- | _DesignRule EncloseDist
- | _DesignRule InterFigGrp
- | _DesignRule IntraFigGrp
- | _DesignRule NotchSpace
- | _DesignRule NotAllowed
- | _DesignRule FigGrp
- | _DesignRule Comment
- | _DesignRule UserData
- ;
-
- Difference : DIFFERENCE _Difference PopC
- ;
-
- _Difference : FigGrpRef
- | FigureOp
- | _Difference FigGrpRef
- | _Difference FigureOp
- ;
-
- Direction : DIRECTION _Direction PopC
- ;
-
- _Direction : INOUT
- | INPUT
- | OUTPUT
- ;
-
- Display : DISPLAY _Display _DisplayJust _DisplayOrien _DisplayOrg PopC
- ;
-
- _Display : FigGrpNameRef
- | FigGrpOver
- ;
-
- _DisplayJust :
- | Justify
- ;
-
- _DisplayOrien :
- | Orientation
- ;
-
- _DisplayOrg :
- | Origin
- ;
-
- Dominates : DOMINATES _Dominates PopC
- ;
-
- _Dominates :
- | _Dominates LogicNameRef
- ;
-
- Dot : DOT _Dot PopC
- ;
-
- _Dot : PointValue
- | _Dot Property
- ;
-
- Duration : DURATION ScaledInt PopC
- ;
-
- EncloseDist : ENCLOSUREDISTANCE RuleNameDef FigGrpObj FigGrpObj _EncloseDist
- PopC
- ;
-
- _EncloseDist : Range
- | SingleValSet
- | _EncloseDist Comment
- | _EncloseDist UserData
- ;
-
- EndType : ENDTYPE _EndType PopC
- ;
-
- _EndType : EXTEND
- | ROUND
- | TRUNCATE
- ;
-
- Entry : ENTRY ___Entry __Entry _Entry
- PopC
- ;
-
- ___Entry : Match
- | Change
- | Steady
- ;
-
- __Entry : LogicRef
- | PortRef
- | NoChange
- | Table
- ;
-
- _Entry :
- | Delay
- | LoadDelay
- ;
-
- Event : EVENT _Event PopC
- ;
-
- _Event : PortRef
- | PortList
- | PortGroup
- | NetRef
- | NetGroup
- | _Event Transition
- | _Event Becomes
- ;
-
- Exactly : EXACTLY ScaledInt PopC
- ;
-
- External : EXTERNAL LibNameDef EdifLevel _External PopC
- ;
-
- _External : Technology
- | _External Status
- | _External Cell
- | _External Comment
- | _External UserData
- ;
-
- Fabricate : FABRICATE LayerNameDef FigGrpNameRef PopC
- ;
-
- False : FALSE PopC
- ;
-
- FigGrp : FIGUREGROUP _FigGrp PopC
- ;
-
- _FigGrp : FigGrpNameDef
- | _FigGrp CornerType
- | _FigGrp EndType
- | _FigGrp PathWidth
- | _FigGrp BorderWidth
- | _FigGrp Color
- | _FigGrp FillPattern
- | _FigGrp BorderPat
- | _FigGrp TextHeight
- | _FigGrp Visible
- | _FigGrp Comment
- | _FigGrp Property
- | _FigGrp UserData
- | _FigGrp IncFigGrp
- ;
-
- FigGrpNameDef : NameDef
- ;
-
- FigGrpNameRef : NameRef
- ;
-
- FigGrpObj : FIGUREGROUPOBJECT _FigGrpObj PopC
- ;
-
- _FigGrpObj : FigGrpNameRef
- | FigGrpRef
- | FigureOp
- ;
-
- FigGrpOver : FIGUREGROUPOVERRIDE _FigGrpOver PopC
- ;
-
- _FigGrpOver : FigGrpNameRef
- | _FigGrpOver CornerType
- | _FigGrpOver EndType
- | _FigGrpOver PathWidth
- | _FigGrpOver BorderWidth
- | _FigGrpOver Color
- | _FigGrpOver FillPattern
- | _FigGrpOver BorderPat
- | _FigGrpOver TextHeight
- | _FigGrpOver Visible
- | _FigGrpOver Comment
- | _FigGrpOver Property
- | _FigGrpOver UserData
- ;
-
- FigGrpRef : FIGUREGROUPREF FigGrpNameRef _FigGrpRef PopC
- ;
-
- _FigGrpRef :
- | LibraryRef
- ;
-
- Figure : FIGURE _Figure PopC
- ;
-
- _Figure : FigGrpNameDef
- | FigGrpOver
- | _Figure Circle
- | _Figure Dot
- | _Figure OpenShape
- | _Figure Path
- | _Figure Polygon
- | _Figure Rectangle
- | _Figure Shape
- | _Figure Comment
- | _Figure UserData
- ;
-
- FigureArea : FIGUREAREA RuleNameDef FigGrpObj _FigureArea PopC
- ;
-
- _FigureArea : Range
- | SingleValSet
- | _FigureArea Comment
- | _FigureArea UserData
- ;
-
- FigureOp : Intersection
- | Union
- | Difference
- | Inverse
- | Oversize
- ;
-
- FigurePerim : FIGUREPERIMETER RuleNameDef FigGrpObj _FigurePerim PopC
- ;
-
- _FigurePerim : Range
- | SingleValSet
- | _FigurePerim Comment
- | _FigurePerim UserData
- ;
-
- FigureWidth : FIGUREWIDTH RuleNameDef FigGrpObj _FigureWidth PopC
- ;
-
- _FigureWidth : Range
- | SingleValSet
- | _FigureWidth Comment
- | _FigureWidth UserData
- ;
-
- FillPattern : FILLPATTERN Int Int Boolean PopC
- ;
-
- Follow : FOLLOW __Follow _Follow PopC
- ;
-
- __Follow : PortNameRef
- | PortRef
- ;
-
- _Follow : PortRef
- | Table
- | _Follow Delay
- | _Follow LoadDelay
- ;
-
- Forbidden : FORBIDDENEVENT _Forbidden PopC
- ;
-
- _Forbidden : TimeIntval
- | _Forbidden Event
- ;
-
- Form : Keyword _Form ')'
- ;
-
- _Form :
- | _Form Int
- | _Form Str
- | _Form Ident
- | _Form Form
- ;
-
- GlobPortRef : GLOBALPORTREF PortNameRef PopC
- ;
-
- GreaterThan : GREATERTHAN ScaledInt PopC
- ;
-
- GridMap : GRIDMAP ScaledInt ScaledInt PopC
- ;
-
- Ignore : IGNORE PopC
- ;
-
- IncFigGrp : INCLUDEFIGUREGROUP _IncFigGrp PopC
- ;
-
- _IncFigGrp : FigGrpRef
- | FigureOp
- ;
-
- Initial : INITIAL PopC
- ;
-
- Instance : INSTANCE InstNameDef _Instance PopC
- ;
-
- _Instance : ViewRef
- | ViewList
- | _Instance Transform
- | _Instance ParamAssign
- | _Instance PortInst
- | _Instance Timing
- | _Instance Designator
- | _Instance Property
- | _Instance Comment
- | _Instance UserData
- ;
-
- InstanceRef : INSTANCEREF InstNameRef _InstanceRef PopC
- ;
-
- _InstanceRef :
- | InstanceRef
- | ViewRef
- ;
-
- InstBackAn : INSTANCEBACKANNOTATE _InstBackAn PopC
- ;
-
- _InstBackAn : InstanceRef
- | _InstBackAn Designator
- | _InstBackAn Timing
- | _InstBackAn Property
- | _InstBackAn Comment
- ;
-
- InstGroup : INSTANCEGROUP _InstGroup PopC
- ;
-
- _InstGroup :
- | _InstGroup InstanceRef
- ;
-
- InstMap : INSTANCEMAP _InstMap PopC
- ;
-
- _InstMap :
- | _InstMap InstanceRef
- | _InstMap InstGroup
- | _InstMap Comment
- | _InstMap UserData
- ;
-
- InstNameDef : NameDef
- | Array
- ;
-
- InstNameRef : NameRef
- | Member
- ;
-
- IntDisplay : INTEGERDISPLAY _IntDisplay PopC
- ;
-
- _IntDisplay : Int
- | _IntDisplay Display
- ;
-
- Integer : INTEGER _Integer PopC
- ;
-
- _Integer :
- | _Integer Int
- | _Integer IntDisplay
- | _Integer Integer
- ;
-
- Interface : INTERFACE _Interface PopC
- ;
-
- _Interface :
- | _Interface Port
- | _Interface PortBundle
- | _Interface Symbol
- | _Interface ProtectFrame
- | _Interface ArrayRelInfo
- | _Interface Parameter
- | _Interface Joined
- | _Interface MustJoin
- | _Interface WeakJoined
- | _Interface Permutable
- | _Interface Timing
- | _Interface Simulate
- | _Interface Designator
- | _Interface Property
- | _Interface Comment
- | _Interface UserData
- ;
-
- InterFigGrp : INTERFIGUREGROUPSPACING RuleNameDef FigGrpObj FigGrpObj
- _InterFigGrp PopC
- ;
-
- _InterFigGrp : Range
- | SingleValSet
- | _InterFigGrp Comment
- | _InterFigGrp UserData
- ;
-
- Intersection : INTERSECTION _Intersection PopC
- ;
-
- _Intersection : FigGrpRef
- | FigureOp
- | _Intersection FigGrpRef
- | _Intersection FigureOp
- ;
-
- IntraFigGrp : INTRAFIGUREGROUPSPACING RuleNameDef FigGrpObj _IntraFigGrp PopC
- ;
-
- _IntraFigGrp : Range
- | SingleValSet
- | _IntraFigGrp Comment
- | _IntraFigGrp UserData
- ;
-
- Inverse : INVERSE _Inverse PopC
- ;
-
- _Inverse : FigGrpRef
- | FigureOp
- ;
-
- Isolated : ISOLATED PopC
- ;
-
- Joined : JOINED _Joined PopC
- ;
-
- _Joined :
- | _Joined PortRef
- | _Joined PortList
- | _Joined GlobPortRef
- ;
-
- Justify : JUSTIFY _Justify PopC
- ;
-
- _Justify : CENTERCENTER
- | CENTERLEFT
- | CENTERRIGHT
- | LOWERCENTER
- | LOWERLEFT
- | LOWERRIGHT
- | UPPERCENTER
- | UPPERLEFT
- | UPPERRIGHT
- ;
-
- KeywordDisp : KEYWORDDISPLAY _KeywordDisp PopC
- ;
-
- _KeywordDisp : KeywordName
- | _KeywordDisp Display
- ;
-
- KeywordLevel : KEYWORDLEVEL Int PopC
- ;
-
- KeywordMap : KEYWORDMAP _KeywordMap PopC
- ;
-
- _KeywordMap : KeywordLevel
- | _KeywordMap Comment
- ;
-
- KeywordName : Ident
- ;
-
- LayerNameDef : NameDef
- ;
-
- LessThan : LESSTHAN ScaledInt PopC
- ;
-
- LibNameDef : NameDef
- ;
-
- LibNameRef : NameRef
- ;
-
- Library : LIBRARY LibNameDef EdifLevel _Library PopC
- ;
-
- _Library : Technology
- | _Library Status
- | _Library Cell
- | _Library Comment
- | _Library UserData
- ;
-
- LibraryRef : LIBRARYREF LibNameRef PopC
- ;
-
- ListOfNets : LISTOFNETS _ListOfNets PopC
- ;
-
- _ListOfNets :
- | _ListOfNets Net
- ;
-
- ListOfPorts : LISTOFPORTS _ListOfPorts PopC
- ;
-
- _ListOfPorts :
- | _ListOfPorts Port
- | _ListOfPorts PortBundle
- ;
-
- LoadDelay : LOADDELAY _LoadDelay _LoadDelay PopC
- ;
-
- _LoadDelay : MiNoMaValue
- | MiNoMaDisp
- ;
-
- LogicAssn : LOGICASSIGN ___LogicAssn __LogicAssn _LogicAssn PopC
- ;
-
- ___LogicAssn : PortNameRef
- | PortRef
- ;
-
- __LogicAssn : PortRef
- | LogicRef
- | Table
- ;
-
- _LogicAssn :
- | Delay
- | LoadDelay
- ;
-
- LogicIn : LOGICINPUT _LogicIn PopC
- ;
-
- _LogicIn : PortList
- | PortRef
- | PortNameRef
- | _LogicIn LogicWave
- ;
-
- LogicList : LOGICLIST _LogicList PopC
- ;
-
- _LogicList :
- | _LogicList LogicNameRef
- | _LogicList LogicOneOf
- | _LogicList Ignore
- ;
-
- LogicMapIn : LOGICMAPINPUT _LogicMapIn PopC
- ;
-
- _LogicMapIn :
- | _LogicMapIn LogicNameRef
- ;
-
- LogicMapOut : LOGICMAPOUTPUT _LogicMapOut PopC
- ;
-
- _LogicMapOut :
- | _LogicMapOut LogicNameRef
- ;
-
- LogicNameDef : NameDef
- ;
-
- LogicNameRef : NameRef
- ;
-
- LogicOneOf : LOGICONEOF _LogicOneOf PopC
- ;
-
- _LogicOneOf :
- | _LogicOneOf LogicNameRef
- | _LogicOneOf LogicList
- ;
-
- LogicOut : LOGICOUTPUT _LogicOut PopC
- ;
-
- _LogicOut : PortList
- | PortRef
- | PortNameRef
- | _LogicOut LogicWave
- ;
-
- LogicPort : LOGICPORT _LogicPort PopC
- ;
-
- _LogicPort : PortNameDef
- | _LogicPort Property
- | _LogicPort Comment
- | _LogicPort UserData
- ;
-
- LogicRef : LOGICREF LogicNameRef _LogicRef PopC
- ;
-
- _LogicRef :
- | LibraryRef
- ;
-
- LogicValue : LOGICVALUE _LogicValue PopC
- ;
-
- _LogicValue : LogicNameDef
- | _LogicValue VoltageMap
- | _LogicValue CurrentMap
- | _LogicValue BooleanMap
- | _LogicValue Compound
- | _LogicValue Weak
- | _LogicValue Strong
- | _LogicValue Dominates
- | _LogicValue LogicMapOut
- | _LogicValue LogicMapIn
- | _LogicValue Isolated
- | _LogicValue Resolves
- | _LogicValue Property
- | _LogicValue Comment
- | _LogicValue UserData
- ;
-
- LogicWave : LOGICWAVEFORM _LogicWave PopC
- ;
-
- _LogicWave :
- | _LogicWave LogicNameRef
- | _LogicWave LogicList
- | _LogicWave LogicOneOf
- | _LogicWave Ignore
- ;
-
- Maintain : MAINTAIN __Maintain _Maintain PopC
- ;
-
- __Maintain : PortNameRef
- | PortRef
- ;
-
- _Maintain :
- | Delay
- | LoadDelay
- ;
-
- Match : MATCH __Match _Match PopC
- ;
-
- __Match : PortNameRef
- | PortRef
- | PortList
- ;
-
- _Match : LogicNameRef
- | LogicList
- | LogicOneOf
- ;
-
- Member : MEMBER NameRef _Member PopC
- ;
-
- _Member : Int
- | _Member Int
- ;
-
- MiNoMa : MINOMAX _MiNoMa PopC
- ;
-
- _MiNoMa :
- | _MiNoMa MiNoMaValue
- | _MiNoMa MiNoMaDisp
- | _MiNoMa MiNoMa
- ;
-
- MiNoMaDisp : MINOMAXDISPLAY _MiNoMaDisp PopC
- ;
-
- _MiNoMaDisp : MiNoMaValue
- | _MiNoMaDisp Display
- ;
-
- MiNoMaValue : Mnm
- | ScaledInt
- ;
-
- Mnm : MNM _Mnm _Mnm _Mnm PopC
- ;
-
- _Mnm : ScaledInt
- | Undefined
- | Unconstrained
- ;
-
- MultValSet : MULTIPLEVALUESET _MultValSet PopC
- ;
-
- _MultValSet :
- | _MultValSet RangeVector
- ;
-
- MustJoin : MUSTJOIN _MustJoin PopC
- ;
-
- _MustJoin :
- | _MustJoin PortRef
- | _MustJoin PortList
- | _MustJoin WeakJoined
- | _MustJoin Joined
- ;
-
- Name : NAME _Name PopC
- ;
-
- _Name : Ident
- | _Name Display
- ;
-
- NameDef : Ident
- | Name
- | Rename
- ;
-
- NameRef : Ident
- | Name
- ;
-
- Net : NET NetNameDef _Net PopC
- ;
-
- _Net : Joined
- | _Net Criticality
- | _Net NetDelay
- | _Net Figure
- | _Net Net
- | _Net Instance
- | _Net CommGraph
- | _Net Property
- | _Net Comment
- | _Net UserData
- ;
-
- NetBackAn : NETBACKANNOTATE _NetBackAn PopC
- ;
-
- _NetBackAn : NetRef
- | _NetBackAn NetDelay
- | _NetBackAn Criticality
- | _NetBackAn Property
- | _NetBackAn Comment
- ;
-
- NetBundle : NETBUNDLE NetNameDef _NetBundle PopC
- ;
-
- _NetBundle : ListOfNets
- | _NetBundle Figure
- | _NetBundle CommGraph
- | _NetBundle Property
- | _NetBundle Comment
- | _NetBundle UserData
- ;
-
- NetDelay : NETDELAY Derivation _NetDelay PopC
- ;
-
- _NetDelay : Delay
- | _NetDelay Transition
- | _NetDelay Becomes
- ;
-
- NetGroup : NETGROUP _NetGroup PopC
- ;
-
- _NetGroup :
- | _NetGroup NetNameRef
- | _NetGroup NetRef
- ;
-
- NetMap : NETMAP _NetMap PopC
- ;
-
- _NetMap :
- | _NetMap NetRef
- | _NetMap NetGroup
- | _NetMap Comment
- | _NetMap UserData
- ;
-
- NetNameDef : NameDef
- | Array
- ;
-
- NetNameRef : NameRef
- | Member
- ;
-
- NetRef : NETREF NetNameRef _NetRef PopC
- ;
-
- _NetRef :
- | NetRef
- | InstanceRef
- | ViewRef
- ;
-
- NoChange : NOCHANGE PopC
- ;
-
- NonPermut : NONPERMUTABLE _NonPermut PopC
- ;
-
- _NonPermut :
- | _NonPermut PortRef
- | _NonPermut Permutable
- ;
-
- NotAllowed : NOTALLOWED RuleNameDef _NotAllowed PopC
- ;
-
- _NotAllowed : FigGrpObj
- | _NotAllowed Comment
- | _NotAllowed UserData
- ;
-
- NotchSpace : NOTCHSPACING RuleNameDef FigGrpObj _NotchSpace PopC
- ;
-
- _NotchSpace : Range
- | SingleValSet
- | _NotchSpace Comment
- | _NotchSpace UserData
- ;
-
- Number : NUMBER _Number PopC
- ;
-
- _Number :
- | _Number ScaledInt
- | _Number NumbDisplay
- | _Number Number
- ;
-
- NumbDisplay : NUMBERDISPLAY _NumbDisplay PopC
- ;
-
- _NumbDisplay : ScaledInt
- | _NumbDisplay Display
- ;
-
- NumberDefn : NUMBERDEFINITION _NumberDefn PopC
- ;
-
- _NumberDefn :
- | _NumberDefn Scale
- | _NumberDefn GridMap
- | _NumberDefn Comment
- ;
-
- OffPageConn : OFFPAGECONNECTOR _OffPageConn PopC
- ;
-
- _OffPageConn : PortNameDef
- | _OffPageConn Unused
- | _OffPageConn Property
- | _OffPageConn Comment
- | _OffPageConn UserData
- ;
-
- OffsetEvent : OFFSETEVENT Event ScaledInt PopC
- ;
-
- OpenShape : OPENSHAPE _OpenShape PopC
- ;
-
- _OpenShape : Curve
- | _OpenShape Property
- ;
-
- Orientation : ORIENTATION _Orientation PopC
- ;
-
- _Orientation : R0
- | R90
- | R180
- | R270
- | MX
- | MY
- | MYR90
- | MXR90
- ;
-
- Origin : ORIGIN PointValue PopC
- ;
-
- OverhngDist : OVERHANGDISTANCE RuleNameDef FigGrpObj FigGrpObj _OverhngDist
- PopC
- ;
-
- _OverhngDist : Range
- | SingleValSet
- | _OverhngDist Comment
- | _OverhngDist UserData
- ;
-
- OverlapDist : OVERLAPDISTANCE RuleNameDef FigGrpObj FigGrpObj _OverlapDist
- PopC
- ;
-
- _OverlapDist : Range
- | SingleValSet
- | _OverlapDist Comment
- | _OverlapDist UserData
- ;
-
- Oversize : OVERSIZE Int _Oversize CornerType PopC
- ;
-
- _Oversize : FigGrpRef
- | FigureOp
- ;
-
- Owner : OWNER Str PopC
- ;
-
- Page : PAGE _Page PopC
- ;
-
- _Page : InstNameDef
- | _Page Instance
- | _Page Net
- | _Page NetBundle
- | _Page CommGraph
- | _Page PortImpl
- | _Page PageSize
- | _Page BoundBox
- | _Page Comment
- | _Page UserData
- ;
-
- PageSize : PAGESIZE Rectangle PopC
- ;
-
- ParamDisp : PARAMETERDISPLAY _ParamDisp PopC
- ;
-
- _ParamDisp : ValueNameRef
- | _ParamDisp Display
- ;
-
- Parameter : PARAMETER ValueNameDef TypedValue _Parameter PopC
- ;
-
- _Parameter :
- | Unit
- ;
-
- ParamAssign : PARAMETERASSIGN ValueNameRef TypedValue PopC
- ;
-
- Path : PATH _Path PopC
- ;
-
- _Path : PointList
- | _Path Property
- ;
-
- PathDelay : PATHDELAY _PathDelay PopC
- ;
-
- _PathDelay : Delay
- | _PathDelay Event
- ;
-
- PathWidth : PATHWIDTH Int PopC
- ;
-
- Permutable : PERMUTABLE _Permutable PopC
- ;
-
- _Permutable :
- | _Permutable PortRef
- | _Permutable Permutable
- | _Permutable NonPermut
- ;
-
- Plug : PLUG _Plug PopC
- ;
-
- _Plug :
- | _Plug SocketSet
- ;
-
- Point : POINT _Point PopC
- ;
-
- _Point :
- | _Point PointValue
- | _Point PointDisp
- | _Point Point
- ;
-
- PointDisp : POINTDISPLAY _PointDisp PopC
- ;
-
- _PointDisp : PointValue
- | _PointDisp Display
- ;
-
- PointList : POINTLIST _PointList PopC
- ;
-
- _PointList :
- | _PointList PointValue
- ;
-
- PointValue : PT Int Int PopC
- ;
-
- Polygon : POLYGON _Polygon PopC
- ;
-
- _Polygon : PointList
- | _Polygon Property
- ;
-
- Port : PORT _Port PopC
- ;
-
- _Port : PortNameDef
- | _Port Direction
- | _Port Unused
- | _Port PortDelay
- | _Port Designator
- | _Port DcFanInLoad
- | _Port DcFanOutLoad
- | _Port DcMaxFanIn
- | _Port DcMaxFanOut
- | _Port AcLoad
- | _Port Property
- | _Port Comment
- | _Port UserData
- ;
-
- PortBackAn : PORTBACKANNOTATE _PortBackAn PopC
- ;
-
- _PortBackAn : PortRef
- | _PortBackAn Designator
- | _PortBackAn PortDelay
- | _PortBackAn DcFanInLoad
- | _PortBackAn DcFanOutLoad
- | _PortBackAn DcMaxFanIn
- | _PortBackAn DcMaxFanOut
- | _PortBackAn AcLoad
- | _PortBackAn Property
- | _PortBackAn Comment
- ;
-
- PortBundle : PORTBUNDLE PortNameDef _PortBundle PopC
- ;
-
- _PortBundle : ListOfPorts
- | _PortBundle Property
- | _PortBundle Comment
- | _PortBundle UserData
- ;
-
- PortDelay : PORTDELAY Derivation _PortDelay PopC
- ;
-
- _PortDelay : Delay
- | LoadDelay
- | _PortDelay Transition
- | _PortDelay Becomes
- ;
-
- PortGroup : PORTGROUP _PortGroup PopC
- ;
-
- _PortGroup :
- | _PortGroup PortNameRef
- | _PortGroup PortRef
- ;
-
- PortImpl : PORTIMPLEMENTATION _PortImpl PopC
- ;
-
- _PortImpl : PortRef
- | PortNameRef
- | _PortImpl ConnectLoc
- | _PortImpl Figure
- | _PortImpl Instance
- | _PortImpl CommGraph
- | _PortImpl PropDisplay
- | _PortImpl KeywordDisp
- | _PortImpl Property
- | _PortImpl UserData
- | _PortImpl Comment
- ;
-
- PortInst : PORTINSTANCE _PortInst PopC
- ;
-
- _PortInst : PortRef
- | PortNameRef
- | _PortInst Unused
- | _PortInst PortDelay
- | _PortInst Designator
- | _PortInst DcFanInLoad
- | _PortInst DcFanOutLoad
- | _PortInst DcMaxFanIn
- | _PortInst DcMaxFanOut
- | _PortInst AcLoad
- | _PortInst Property
- | _PortInst Comment
- | _PortInst UserData
- ;
-
- PortList : PORTLIST _PortList PopC
- ;
-
- _PortList :
- | _PortList PortRef
- | _PortList PortNameRef
- ;
-
- PortListAls : PORTLISTALIAS PortNameDef PortList PopC
- ;
-
- PortMap : PORTMAP _PortMap PopC
- ;
-
- _PortMap :
- | _PortMap PortRef
- | _PortMap PortGroup
- | _PortMap Comment
- | _PortMap UserData
- ;
-
- PortNameDef : NameDef
- | Array
- ;
-
- PortNameRef : NameRef
- | Member
- ;
-
- PortRef : PORTREF PortNameRef _PortRef PopC
- ;
-
- _PortRef :
- | PortRef
- | InstanceRef
- | ViewRef
- ;
-
- Program : PROGRAM Str _Program PopC
- ;
-
- _Program :
- | Version
- ;
-
- PropDisplay : PROPERTYDISPLAY _PropDisplay PopC
- ;
-
- _PropDisplay : PropNameRef
- | _PropDisplay Display
- ;
-
- Property : PROPERTY PropNameDef _Property PopC
- ;
-
- _Property : TypedValue
- | _Property Owner
- | _Property Unit
- | _Property Property
- | _Property Comment
- ;
-
- PropNameDef : NameDef
- ;
-
- PropNameRef : NameRef
- ;
-
- ProtectFrame : PROTECTIONFRAME _ProtectFrame PopC
- ;
-
- _ProtectFrame :
- | _ProtectFrame PortImpl
- | _ProtectFrame Figure
- | _ProtectFrame Instance
- | _ProtectFrame CommGraph
- | _ProtectFrame BoundBox
- | _ProtectFrame PropDisplay
- | _ProtectFrame KeywordDisp
- | _ProtectFrame ParamDisp
- | _ProtectFrame Property
- | _ProtectFrame Comment
- | _ProtectFrame UserData
- ;
-
- Range : LessThan
- | GreaterThan
- | AtMost
- | AtLeast
- | Exactly
- | Between
- ;
-
- RangeVector : RANGEVECTOR _RangeVector PopC
- ;
-
- _RangeVector :
- | _RangeVector Range
- | _RangeVector SingleValSet
- ;
-
- Rectangle : RECTANGLE PointValue _Rectangle PopC
- ;
-
- _Rectangle : PointValue
- | _Rectangle Property
- ;
-
- RectSize : RECTANGLESIZE RuleNameDef FigGrpObj _RectSize PopC
- ;
-
- _RectSize : RangeVector
- | MultValSet
- | _RectSize Comment
- | _RectSize UserData
- ;
-
- Rename : RENAME __Rename _Rename PopC
- ;
-
- __Rename : Ident
- | Name
- ;
-
- _Rename : Str
- | StrDisplay
- ;
-
- Resolves : RESOLVES _Resolves PopC
- ;
-
- _Resolves :
- | _Resolves LogicNameRef
- ;
-
- RuleNameDef : NameDef
- ;
-
- Scale : SCALE ScaledInt ScaledInt Unit PopC
- ;
-
- ScaledInt : Int
- | E Int Int PopC
- ;
-
- ScaleX : SCALEX Int Int PopC
- ;
-
- ScaleY : SCALEY Int Int PopC
- ;
-
- Section : SECTION _Section PopC
- ;
-
- _Section : Str
- | _Section Section
- | _Section Str
- | _Section Instance
- ;
-
- Shape : SHAPE _Shape PopC
- ;
-
- _Shape : Curve
- | _Shape Property
- ;
-
- SimNameDef : NameDef
- ;
-
- Simulate : SIMULATE _Simulate PopC
- ;
-
- _Simulate : SimNameDef
- | _Simulate PortListAls
- | _Simulate WaveValue
- | _Simulate Apply
- | _Simulate Comment
- | _Simulate UserData
- ;
-
- SimulInfo : SIMULATIONINFO _SimulInfo PopC
- ;
-
- _SimulInfo :
- | _SimulInfo LogicValue
- | _SimulInfo Comment
- | _SimulInfo UserData
- ;
-
- SingleValSet : SINGLEVALUESET _SingleValSet PopC
- ;
-
- _SingleValSet :
- | Range
- ;
-
- Site : SITE ViewRef _Site PopC
- ;
-
- _Site :
- | Transform
- ;
-
- Socket : SOCKET _Socket PopC
- ;
-
- _Socket :
- | Symmetry
- ;
-
- SocketSet : SOCKETSET _SocketSet PopC
- ;
-
- _SocketSet : Symmetry
- | _SocketSet Site
- ;
-
- Status : STATUS _Status PopC
- ;
-
- _Status :
- | _Status Written
- | _Status Comment
- | _Status UserData
- ;
-
- Steady : STEADY __Steady _Steady PopC
- ;
-
- __Steady : PortNameRef
- | PortRef
- | PortList
- ;
-
- _Steady : Duration
- | _Steady Transition
- | _Steady Becomes
- ;
-
- StrDisplay : STRINGDISPLAY _StrDisplay PopC
- ;
-
- String : STRING _String PopC
- ;
-
- _String :
- | _String Str
- | _String StrDisplay
- | _String String
- ;
-
- _StrDisplay : Str
- | _StrDisplay Display
- ;
-
- Strong : STRONG LogicNameRef PopC
- ;
-
- Symbol : SYMBOL _Symbol PopC
- ;
-
- _Symbol :
- | _Symbol PortImpl
- | _Symbol Figure
- | _Symbol Instance
- | _Symbol CommGraph
- | _Symbol Annotate
- | _Symbol PageSize
- | _Symbol BoundBox
- | _Symbol PropDisplay
- | _Symbol KeywordDisp
- | _Symbol ParamDisp
- | _Symbol Property
- | _Symbol Comment
- | _Symbol UserData
- ;
-
- Symmetry : SYMMETRY _Symmetry PopC
- ;
-
- _Symmetry :
- | _Symmetry Transform
- ;
-
- Table : TABLE _Table PopC
- ;
-
- _Table :
- | _Table Entry
- | _Table TableDeflt
- ;
-
- TableDeflt : TABLEDEFAULT __TableDeflt _TableDeflt PopC
- ;
-
- __TableDeflt : LogicRef
- | PortRef
- | NoChange
- | Table
- ;
-
- _TableDeflt :
- | Delay
- | LoadDelay
- ;
-
- Technology : TECHNOLOGY _Technology PopC
- ;
-
- _Technology : NumberDefn
- | _Technology FigGrp
- | _Technology Fabricate
- | _Technology SimulInfo
- | _Technology DesignRule
- | _Technology Comment
- | _Technology UserData
- ;
-
- TextHeight : TEXTHEIGHT Int PopC
- ;
-
- TimeIntval : TIMEINTERVAL __TimeIntval _TimeIntval PopC
- ;
-
- __TimeIntval : Event
- | OffsetEvent
- ;
-
- _TimeIntval : Event
- | OffsetEvent
- | Duration
- ;
-
- TimeStamp : TIMESTAMP Int Int Int Int Int Int PopC
- ;
-
- Timing : TIMING _Timing PopC
- ;
-
- _Timing : Derivation
- | _Timing PathDelay
- | _Timing Forbidden
- | _Timing Comment
- | _Timing UserData
- ;
-
- Transform : TRANSFORM _TransX _TransY _TransDelta _TransOrien _TransOrg
- PopC
- ;
-
- _TransX :
- | ScaleX
- ;
-
- _TransY :
- | ScaleY
- ;
-
- _TransDelta :
- | Delta
- ;
-
- _TransOrien :
- | Orientation
- ;
-
- _TransOrg :
- | Origin
- ;
-
- Transition : TRANSITION _Transition _Transition PopC
- ;
-
- _Transition : LogicNameRef
- | LogicList
- | LogicOneOf
- ;
-
- Trigger : TRIGGER _Trigger PopC
- ;
-
- _Trigger :
- | _Trigger Change
- | _Trigger Steady
- | _Trigger Initial
- ;
-
- True : TRUE PopC
- ;
-
- TypedValue : Boolean
- | Integer
- | MiNoMa
- | Number
- | Point
- | String
- ;
-
- Unconstrained : UNCONSTRAINED PopC
- ;
-
- Undefined : UNDEFINED PopC
- ;
-
- Union : UNION _Union PopC
- ;
-
- _Union : FigGrpRef
- | FigureOp
- | _Union FigGrpRef
- | _Union FigureOp
- ;
-
- Unit : UNIT _Unit PopC
- ;
-
- _Unit : DISTANCE
- | CAPACITANCE
- | CURRENT
- | RESISTANCE
- | TEMPERATURE
- | TIME
- | VOLTAGE
- | MASS
- | FREQUENCY
- | INDUCTANCE
- | ENERGY
- | POWER
- | CHARGE
- | CONDUCTANCE
- | FLUX
- | ANGLE
- ;
-
- Unused : UNUSED PopC
- ;
-
- UserData : USERDATA _UserData PopC
- ;
-
- _UserData : Ident
- | _UserData Int
- | _UserData Str
- | _UserData Ident
- | _UserData Form
- ;
-
- ValueNameDef : NameDef
- | Array
- ;
-
- ValueNameRef : NameRef
- | Member
- ;
-
- Version : VERSION Str PopC
- ;
-
- View : VIEW ViewNameDef ViewType _View PopC
- ;
-
- _View : Interface
- | _View Status
- | _View Contents
- | _View Comment
- | _View Property
- | _View UserData
- ;
-
- ViewList : VIEWLIST _ViewList PopC
- ;
-
- _ViewList :
- | _ViewList ViewRef
- | _ViewList ViewList
- ;
-
- ViewMap : VIEWMAP _ViewMap PopC
- ;
-
- _ViewMap :
- | _ViewMap PortMap
- | _ViewMap PortBackAn
- | _ViewMap InstMap
- | _ViewMap InstBackAn
- | _ViewMap NetMap
- | _ViewMap NetBackAn
- | _ViewMap Comment
- | _ViewMap UserData
- ;
-
- ViewNameDef : NameDef
- ;
-
- ViewNameRef : NameRef
- ;
-
- ViewRef : VIEWREF ViewNameRef _ViewRef PopC
- ;
-
- _ViewRef :
- | CellRef
- ;
-
- ViewType : VIEWTYPE _ViewType PopC
- ;
-
- _ViewType : MASKLAYOUT
- | PCBLAYOUT
- | NETLIST
- | SCHEMATIC
- | SYMBOLIC
- | BEHAVIOR
- | LOGICMODEL
- | DOCUMENT
- | GRAPHIC
- | STRANGER
- ;
-
- Visible : VISIBLE BooleanValue PopC
- ;
-
- VoltageMap : VOLTAGEMAP MiNoMaValue PopC
- ;
-
- WaveValue : WAVEVALUE LogicNameDef ScaledInt LogicWave PopC
- ;
-
- Weak : WEAK LogicNameRef PopC
- ;
-
- WeakJoined : WEAKJOINED _WeakJoined PopC
- ;
-
- _WeakJoined :
- | _WeakJoined PortRef
- | _WeakJoined PortList
- | _WeakJoined Joined
- ;
-
- When : WHEN _When PopC
- ;
-
- _When : Trigger
- | _When After
- | _When Follow
- | _When Maintain
- | _When LogicAssn
- | _When Comment
- | _When UserData
- ;
-
- Written : WRITTEN _Written PopC
- ;
-
- _Written : TimeStamp
- | _Written Author
- | _Written Program
- | _Written DataOrigin
- | _Written Property
- | _Written Comment
- | _Written UserData
- ;
-
- Ident : IDENT
- { Free($1); }
- ;
-
- Str : STR
- { Free($1); }
- ;
-
- Int : INT
- { Free($1); }
- ;
-
- Keyword : KEYWORD
- { Free($1); }
- ;
-
- %%
- /*
- * xmalloc:
- *
- * Garbage function for 'alloca()'.
- */
- char *xmalloc(siz)
- int siz;
- {
- return (Malloc(siz));
- }
- /*
- * Token & context carriers:
- *
- * These are the linkage pointers for threading this context garbage
- * for converting identifiers into parser tokens.
- */
- typedef struct TokenCar {
- struct TokenCar *Next; /* pointer to next carrier */
- struct Token *Token; /* associated token */
- } TokenCar;
- typedef struct UsedCar {
- struct UsedCar *Next; /* pointer to next carrier */
- short Code; /* used '%token' value */
- } UsedCar;
- typedef struct ContextCar {
- struct ContextCar *Next; /* pointer to next carrier */
- struct Context *Context; /* associated context */
- union {
- int Single; /* single usage flag (context tree) */
- struct UsedCar *Used; /* single used list (context stack) */
- } u;
- } ContextCar;
- /*
- * Parser state variables.
- */
- static FILE *Input = NULL; /* input stream */
- static FILE *Error = NULL; /* error stream */
- extern char *InFile; /* file name on the input stream */
- static long LineNumber; /* current input line number */
- static ContextCar *CSP = NULL; /* top of context stack */
- static char yytext[IDENT_LENGTH + 1]; /* token buffer */
- static char CharBuf[IDENT_LENGTH + 1]; /* garbage buffer */
- /*
- * Token definitions:
- *
- * This associates the '%token' codings with strings which are to
- * be free standing tokens. Doesn't have to be in sorted order but the
- * strings must be in lower case.
- */
- typedef struct Token {
- char *Name; /* token name */
- int Code; /* '%token' value */
- struct Token *Next; /* hash table linkage */
- } Token;
- static Token TokenDef[] = {
- {"angle", ANGLE},
- {"behavior", BEHAVIOR},
- {"calculated", CALCULATED},
- {"capacitance", CAPACITANCE},
- {"centercenter", CENTERCENTER},
- {"centerleft", CENTERLEFT},
- {"centerright", CENTERRIGHT},
- {"charge", CHARGE},
- {"conductance", CONDUCTANCE},
- {"current", CURRENT},
- {"distance", DISTANCE},
- {"document", DOCUMENT},
- {"energy", ENERGY},
- {"extend", EXTEND},
- {"flux", FLUX},
- {"frequency", FREQUENCY},
- {"generic", GENERIC},
- {"graphic", GRAPHIC},
- {"inductance", INDUCTANCE},
- {"inout", INOUT},
- {"input", INPUT},
- {"logicmodel", LOGICMODEL},
- {"lowercenter", LOWERCENTER},
- {"lowerleft", LOWERLEFT},
- {"lowerright", LOWERRIGHT},
- {"masklayout", MASKLAYOUT},
-