SCTestFSMPads:
CEDAR
PROGRAM
IMPORTS CDIO, CDOps, PadFrameMaker, Rope, SC, SCTestUtil, TerminalIO =
BEGIN
cellType, padFrameCell: Core.CellType;
result: SC.Result;
cdDesign: CD.Design;
libName: Rope.ROPE ←"PLTAndPads.dale";
innerLibName: Rope.ROPE ← "OldSCTest.dale";
outputName: Rope.ROPE ← "SCTestFSMPads.dale";
hMaterial: Rope.ROPE ← "metal";
vMaterial: Rope.ROPE ← "metal2";
libDesign: CD.Design ← CDIO.ReadDesign[libName];
innerDesign: CD.Design ← CDIO.ReadDesign[innerLibName];
cellType ← SCTestUtil.CreateCoreForLogic[];
padFrameCell ← SCTestUtil.CreateCoreForPadFrame[];
IF libDesign =
NIL
THEN
SC.Signal[callingError, Rope.Cat["Unable to load library: ", libName]];
cdDesign ← CDOps.CreateDesign[libDesign.technology];
PadFrameMaker.MakePadRows[libDesign, cdDesign, padFrameCell];
IF ~CDIO.WriteDesign[cdDesign, "SCTestFSMPads"] THEN
TerminalIO.WriteRope["Error: design not written\n"];
result ← SCTestUtil.DoLayout[cellType, cdDesign, libDesign, hMaterial, vMaterial];
[] ← PadFrameMaker.MakePadRows[libDesign, cdDesign, padFrameCell, result.object];
IF
~CDIO.WriteDesign[cdDesign, outputName]
THEN
TerminalIO.WriteRope["Error: design not written\n"];
--LoadsOut.ProcessRouting[result.handle, "SCTestFSMFrank.lst"];
SCTestUtil.WriteLayout[result, cdDesign];
SC.Destroy[result.handle];
END..