SCLibGenCells5.mesa
Copyright Ó 1986, 1987 by Xerox Corporation. All rights reserved.
Created by: Christian Jacobi June 2, 1986 3:48:19 pm PDT
Last edited by: Christian Jacobi, December 22, 1986 12:38:27 pm PST
Last edited by: Louis Monier September 3, 1986 4:46:30 pm PDT
Bertrand Serlet March 30, 1987 10:41:49 pm PST
DIRECTORY
SCLibGen;
SCLibGenCells5: CEDAR PROGRAM
IMPORTS SCLibGen =
BEGIN
OPEN SCLibGen;
CreateCellDLatch: GeneratorProc =
BEGIN
Setup[design, "p1", "p1", "p2", "connectDiffN", "p3", "connectDiffP", "weakP1", "weakP1", "p4", "p1", "p4"];
MakeCont[row: 1, start: 2, n: 3, back: TRUE];
MakeVia[row: 1, start: 5, n: 1, back: TRUE];
MakeCont[row: 1, start: 6, n: 1, back: TRUE];
HorizontalM[rowL: 1, rowR: 4, h: 7, back: TRUE, shortEnd: FALSE];
VerticalM[row: 1, h1: 7, h2: 8, front: FALSE];
VerticalM[row: 4, h1: 7, h2: 8, front: FALSE];
MakeCont[row: 2, start: 1, n: 5];
MakeCont[row: 4, start: 2, n: 5, back: TRUE];
HorizontalM[rowL: 4, rowR: 5, h: 5];
MakeCont[row: 5, start: 6, n: 1, back: TRUE];
MakeVia[row: 5, start: 5, n: 1, back: TRUE];
HorizontalM[rowL: 5, rowR: 7, h: 7, back: TRUE];
VerticalM[row: 5, h1: 7, h2: 8, front: FALSE];
MakeCont[row: 6, start: 6, n: 1, back: TRUE];
VerticalM[row: 6, h1: 0, h2: 4, front: FALSE];
VerticalM[row: 6, h1: 0, h2: 4, front: TRUE];
HorizontalM[rowL: 6, rowR: 8, h: 8];
MakeCont[row: 7, start: 6, n: 1, back: TRUE];
MakeVia[row: 7, start: 7, n: 1, back: TRUE];
MakeCont[row: 8, start: 1, n: 6];
MakeCont[row: 9, start: 2, n: 6];
SetN[];
MakeCont[row: 1, start: 2, n: 1];
MakeVia[row: 1, start: 3, n: 1];
MakeCont[row: 1, start: 4, n: 1];
HorizontalM[rowL: 1, rowR: 3, h: 4];
MakeCont[row: 2, start: 1, n: 3];
MakeCont[row: 5, start: 2, n: 1];
MakeVia[row: 5, start: 3, n: 1];
MakeCont[row: 5, start: 4, n: 1];
HorizontalM[rowL: 5, rowR: 6, h: 4, shortEnd: FALSE];
MakeCont[row: 6, start: 3, n: 1, back: TRUE];
VerticalM[row: 6, h1: 0, h2: 2, front: FALSE];
VerticalM[row: 6, h1: 0, h2: 2, front: TRUE];
MakeCont[row: 7, start: 3, n: 1, back: TRUE];
MakeVia[row: 7, start: 4, n: 1];
VerticalM[row: 7, h1: 3, h2: 3];
MakeCont[row: 8, start: 1, n: 4];
MakeCont[row: 9, start: 2, n: 3, back: TRUE];
ContactM2[2, 4, 9];
PassMs[3, 6, 9];
Pins[9, NIL, "D", NIL, "S", NIL, NIL, NIL, NIL, "Q"];
PinOrder["D S Q Vdd Gnd"];
ob ← Finish["dLatch.mask"];
END;
Register["dLatch", CreateCellDLatch];
END.