DIRECTORY CD, CDIO, Core, GC, IPMainViewer, PW, PWCore, Rope, RTCoreUtil, RTStructure, RTTestUtil; GCTestTiny: CEDAR PROGRAM IMPORTS CDIO, GC, PW, PWCore, RTCoreUtil, RTTestUtil SHARES GC = BEGIN PinFilter: RTStructure.CorePinFilterProc ~ { rules: GC.DesignRules _ NARROW[userData]; SELECT side FROM bottom, top => keepIt _ rules.horizRules.branchLayer = layer; left, right => keepIt _ rules.vertRules.branchLayer = layer; ENDCASE => keepIt _ FALSE; }; libName: Rope.ROPE _"SCLibCMOSB.dale"; hMaterial: Rope.ROPE _ "metal"; vMaterial: Rope.ROPE _ "metal2"; cellType: Core.CellType _ RTTestUtil.CreateCore[libName]; technologyKey: ATOM _ $cmosB; -- $cmosA or $cmosB name: Rope.ROPE _ "GCTestTiny"; result: GC.Result; context: GC.Context; rules: GC.DesignRules _ GC.CreateDesignRules[technologyKey, hMaterial, vMaterial]; structure: RTStructure.Structure _ GC.CreateStructure[cellType, RTCoreUtil.defaultFlatten, PinFilter, rules, PWCore.extractMode.decoration, NIL]; GC.InitialPlace[structure, CDIO.MakeName[name, "init", CDIO.GetWorkingDirectory[]]]; context _ GC.CreateContext[name, structure, rules]; -- IPMainViewer.BuildViewer[name]; -- IPMainViewer.SetTopTo[NARROW[context.topology], structure.name, FALSE]; GC.DoInitialGlobalRoute[context]; result _ GC.DoDetailRoute[context]; [] _ PW.Draw[result.object]; END. „GCTestTiny.mesa Copyright c 1986 by Xerox Corporation. All rights reserved. Last Edited by: Preas, September 8, 1986 12:39:08 pm PDT To run the general cell tiny test package: GCTestTiny.cm PROC [wire: Core.Wire, instance: CD.Instance, range: Range, side: RTBasic.Side, layer: CD.Layer, userData: REF ANY] RETURNS [keepIt: BOOLEAN _ TRUE]; RTStructure.PrintStructure[structure]; Κσ˜Jšœ™Jšœ Οmœ1™<™8Icode™—K™8J™šΟk œ˜ Jšžœžœžœžœ4˜X—J˜šΟn œžœž˜J˜Jšžœžœžœžœ ˜4Jšžœžœ˜ —˜šž˜K˜—šŸ œ#˜,Kšžœ1žœžœžœžœžœ žœžœ™•K˜Kšœžœžœ ˜)šžœž˜Kšœ>˜>Kšœ=˜=Kšžœ žœ˜—Kšœ˜K˜—Jšœžœ˜&Jšœžœ ˜Jšœžœ ˜ Jšœ9˜9Jšœžœ Οc˜3Kšœ žœ˜J˜Jšœžœ˜Jšœ žœ ˜Jšœžœžœ8˜RJšœ#žœgžœ˜‘Kšžœžœžœ˜TJšœ žœ'˜3Jšœ"˜"Jšœžœ$žœ˜JJšžœ˜!Jšœ žœ˜#Jšœ&™&Jšœžœ˜Jšžœ˜——…—2©