RoutePrivate.mesa ///Route/RoutePrivate.mesa
Copyright © 1985 by Xerox Corporation. All rights reserved.
by Bryan Preas, July 10, 1985 11:48:30 am PDT
last edited by Bryan Preas, July 17, 1985 12:26:15 pm PDT
DIRECTORY
CD,
Rope,
Route,
RouteDiGraph;
RoutePrivate: CEDAR DEFINITIONS =
BEGIN
PQPosition:
TYPE =
RECORD[
p: Route.Number,
q: Route.Number];
PQRectRef: TYPE = REF PQRect;
PQRect:
TYPE =
RECORD[
c1, c2: PQPosition];
PQRectList: TYPE = LIST OF PQRect;
AboveOrBelow: TYPE = {above, below};
Range:
TYPE =
RECORD [
l, r: Route.Number];
RangeList: TYPE = LIST OF Range;
RefRange: TYPE = REF Range;
maxNets: NAT = 2000;
ZMaxNets: TYPE = NAT[0 .. maxNets];
MaxNets: TYPE = NAT[1 .. maxNets];
NetTab: TYPE = REF NetTabRec;
NetTabRec:
TYPE =
RECORD [
size, count: ZMaxNets,
n: ARRAY MaxNets OF Net];
Net: TYPE = REF NetRec;
NetRec:
TYPE =
RECORD[
name: Rope.ROPE ← NIL,
netNum, netPart: NAT ← 1,
branchWidth, trunkWidth: Route.Number ← 0,
pinList: Route.PinList ← NIL,
internPinList: REF ANY ← NIL,
properties: Route.PropList ← NIL];
Barrier: TYPE = REF BarrierRec;
BarrierRec:
TYPE =
RECORD[
barriers: PQRectList ← NIL,
properties: Route.PropList ← NIL];
A RoutingAreaSide describes one of the four sides of a RoutingArea.
RoutingAreaSide: TYPE = REF RoutingAreaSideRec;
RoutingAreaSides: TYPE = REF RoutingAreaSidesRec;
RoutingAreaSidesRec: TYPE = ARRAY Route.Side OF RoutingAreaSide;
RoutingLayerOrNone: TYPE = {trunk, branch, none};
RoutingLayerName: ARRAY RoutingLayerOrNone OF Rope.ROPE;
RoutingLayer: TYPE = RoutingLayerOrNone[trunk .. branch];
RoutingAreaSideRec:
TYPE =
RECORD[
side: Route.SideOrNone ← none,
sideFiducial: Route.Position,
barrierList: Route.RoutingBarrierList ← NIL,
properties: Route.PropList ← NIL];
Routing area parameters
RouterUsed: TYPE = {channel, switchBox, maze};
RoutingAreaParms: TYPE = REF RoutingAreaParmsRec;
RoutingAreaParmsRec:
TYPE =
RECORD[
object: CD.Object ← NIL,
cellName: Rope.ROPE ← NIL,
routerUsed: RouterUsed,
widestPin: Route.Number ← 0,
widestTrunk: Route.Number ← 0,
widestBranch: Route.Number ← 0,
numTracksToUse: Route.Number ← 0];
END.