DIRECTORY SCLibGen; SCLibGenCells4: CEDAR PROGRAM IMPORTS SCLibGen = BEGIN OPEN SCLibGen; CreateCellTristate: GeneratorProc = BEGIN Setup[design, "p3", "p1", "p1", "p2", "p4"]; MakeCont[row: 2, start: 2, n: 6, back: TRUE]; HorizontalM[rowL: 2, rowR: 4, h: 7, back: TRUE]; MakeCont[row: 3, start: 1, n: 5]; MakeCont[row: 4, start: 2, n: 6, back: TRUE]; HorizontalM[rowL: 2, rowR: 3, h: 8]; MakeCont[row: 5, start: 3, n: 6]; MakeVia[row: 5, start: 2, n: 1]; SetN[]; MakeCont[row: 1, start: 2, n: 3, back: TRUE]; HorizontalM[rowL: 1, rowR: 5, h: 4, shortStart: FALSE]; MakeCont[row: 2, start: 2, n: 2, back: TRUE]; HorizontalM[rowL: 2, rowR: 4, h: 3, shortStart: FALSE, shortEnd: FALSE]; MakeCont[row: 3, start: 1, n: 2]; MakeCont[row: 4, start: 2, n: 2, back: TRUE]; MakeVia[row: 5, start: 4, n: 1]; PassMs[5]; ContactM2[1, 2, 4]; Pins[5 , "EN", "I", NIL, "NEN", "X"]; PinOrder["EN NEN I X Vdd Gnd"]; ob _ Finish["C2BD02A.mask"]; END; CreateCellInvBuffer: GeneratorProc = -- created by LMM; needs checking BEGIN Setup[design, "p1", "p1", "p4"]; MakeCont[row: 1, start: 1, n: 6]; MakeCont[row: 2, start: 2, n: 5]; MakeCont[row: 3, start: 1, n: 4]; HorizontalM[rowL: 2, rowR: 3, h: 6]; HorizontalM[rowL: 1, rowR: 2, h: 8]; VerticalM[row: 3, h1: 6, h2: 8]; SetN[]; MakeCont[row: 1, start: 1, n: 4]; MakeCont[row: 2, start: 2, n: 3]; MakeCont[row: 3, start: 1, n: 2]; HorizontalM[rowL: 2, rowR: 3, h: 4]; PassMs[3]; ContactM2[1, 3]; Pins[3, "I", NIL, "X"]; PinOrder["I X Vdd Gnd"]; ob _ Finish["C2IV00B.mask"]; END; CreateCellC2CG03A: GeneratorProc = -- created by LMM; needs checking BEGIN Setup[design, "p1", "p1", "p1", "p1", "p4"]; MakeCont[row: 1, start: 2, n: 5]; MakeCont[row: 2, start: 1, n: 5]; MakeCont[row: 3, start: 2, n: 5]; MakeCont[row: 4, start: 3, n: 4]; MakeCont[row: 5, start: 2, n: 4]; HorizontalM[rowL: 1, rowR: 3, h: 6]; HorizontalM[rowL: 3, rowR: 5, h: 2, back: TRUE]; HorizontalM[rowL: 4, rowR: 5, h: 6]; VerticalM[row: 5, h1: 6, h2: 8]; SetN[]; MakeCont[row: 1, start: 2, n: 3]; MakeCont[row: 3, start: 1, n: 3]; MakeCont[row: 5, start: 2, n: 3]; HorizontalM[rowL: 1, rowR: 5, h: 4]; VerticalM[row: 5, h1: 4, h2: 5]; ContactM2[1, 2, 3, 4, 5]; Pins[5, "A", "B", "C", "D", "X"]; PinOrder["A B C D X Vdd Gnd"]; ob _ Finish["a22o2i.mask"]; END; CreateCellC2CG13A: GeneratorProc = -- created by LMM; needs checking BEGIN Setup[design, "p1", "p1", "p1", "p1", "p4"]; MakeCont[row: 1, start: 2, n: 5]; MakeCont[row: 3, start: 1, n: 5]; MakeCont[row: 5, start: 2, n: 5]; HorizontalM[rowL: 1, rowR: 5, h: 6]; VerticalM[row: 5, h1: 6, h2: 8]; SetN[]; MakeCont[row: 1, start: 2, n: 3]; MakeCont[row: 2, start: 1, n: 3]; MakeCont[row: 3, start: 2, n: 3]; MakeCont[row: 4, start: 3, n: 2]; MakeCont[row: 5, start: 2, n: 2]; HorizontalM[rowL: 1, rowR: 3, h: 4]; HorizontalM[rowL: 3, rowR: 5, h: 2, back: TRUE]; HorizontalM[rowL: 4, rowR: 5, h: 4]; VerticalM[row: 5, h1: 4, h2: 6]; ContactM2[1, 2, 3, 4, 5]; Pins[5, "A", "B", "C", "D", "X"]; PinOrder["A B C D X Vdd Gnd"]; ob _ Finish["o22a2i.mask"]; END; CreateCellC2CG02A: GeneratorProc = -- created by LMM; needs checking BEGIN Setup[design, "p1", "p1", "p1", "p4"]; MakeCont[row: 1, start: 2, n: 5]; MakeCont[row: 2, start: 1, n: 5]; MakeCont[row: 3, start: 2, n: 5]; MakeCont[row: 4, start: 2, n: 5]; HorizontalM[rowL: 1, rowR: 3, h: 6]; VerticalM[row: 4, h1: 6, h2: 8]; SetN[]; MakeCont[row: 1, start: 2, n: 3]; MakeCont[row: 3, start: 1, n: 3]; MakeCont[row: 4, start: 2, n: 3]; HorizontalM[rowL: 1, rowR: 4, h: 4]; VerticalM[row: 4, h1: 4, h2: 6]; ContactM2[1, 2, 3, 4]; Pins[4, "A", "B", "C", "X"]; PinOrder["A B C X Vdd Gnd"]; ob _ Finish["a21o2i.mask"]; END; Register["Tristate", CreateCellTristate]; Register["InvBuffer", CreateCellInvBuffer]; Register["a22o2i", CreateCellC2CG03A]; Register["o22a2i", CreateCellC2CG13A]; Register["a21o2i", CreateCellC2CG02A]; END. FSCLibGenCells4.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:37:58 pm PST Last edited by: Louis Monier August 23, 1986 10:26:51 pm PDT Bertrand Serlet March 30, 1987 10:41:41 pm PST Κ7˜šœ™Icode™BK™8K™CK™