DIRECTORY CD USING [Number], CMos USING [lambda], SX USING [CellPostProcessProc, CombineNodePropertyProc, ConversionProc, SpinifexLayerIndex, BoxMapProc, ConstraintArray, ConstraintIndex, techCIndexBase], SXOutput USING [LinkagePrintProc]; SXCMos: CEDAR DEFINITIONS = BEGIN lambda: CD.Number ~ CMos.lambda; ndifSpinifex: SX.SpinifexLayerIndex ~ SX.SpinifexLayerIndex.FIRST; pdifSpinifex: SX.SpinifexLayerIndex ~ ndifSpinifex.SUCC; polSpinifex: SX.SpinifexLayerIndex ~ pdifSpinifex.SUCC; metSpinifex: SX.SpinifexLayerIndex ~ polSpinifex.SUCC; m2Spinifex: SX.SpinifexLayerIndex ~ metSpinifex.SUCC; wellSpinifex: SX.SpinifexLayerIndex ~ m2Spinifex.SUCC; ConstraintArray: TYPE ~ SX.ConstraintArray; CIndex: TYPE ~ SX.ConstraintIndex; ndCnstr: REF ConstraintArray; -- n-Diffusion constraints ndCh: CIndex ~ SX.techCIndexBase; -- n-Diffusion channel ndBur: CIndex ~ ndCh.SUCC; -- Buried window here. pdCnstr: REF ConstraintArray; -- p-Diffusion constraints pdCh: CIndex ~ SX.techCIndexBase; -- p-Diffusion channel polCnstr: REF ConstraintArray; -- Poly constraints pExnD: CIndex ~ SX.techCIndexBase; -- Poly not allowed here because of n-Diffusion. pExpD: CIndex ~ pExnD.SUCC; -- Poly not allowed here because of p-Diffusion. pExNdCon: CIndex ~ pExpD.SUCC; -- Poly not allowed here because of n-Diffusion Contact. pExPdCon: CIndex ~ pExNdCon.SUCC; -- Poly not allowed here because of p-Diffusion Contact. pChE: CIndex ~ pExPdCon.SUCC; -- Close to Xstr Gate, (Channel Edge). pDExcl: CIndex ~ pChE.SUCC; -- No n-Diffusion Permitted here due to buried contact. pBur: CIndex ~ pDExcl.SUCC; -- Buried window here. pBurErr: CIndex ~ pBur.SUCC; -- Buried Error, diffusion emerges from wrong side. pDxorP: CIndex ~ pBurErr.SUCC; -- Diffusion XOR Poly allowed here. pDandP: CIndex ~ pDxorP.SUCC; -- Diffusion AND Poly may appear together here. metCnstr: REF ConstraintArray; -- Metal constraints mCut: CIndex ~ SX.techCIndexBase; -- Cut from Metal to dif or pol (bloated). mVia: CIndex ~ mCut.SUCC; -- Via from Metal to Metal2 (bloated). ConvTransistor: SX.ConversionProc; ConvertPDifRect: SX.ConversionProc; InitContacts: PROCEDURE; ConvertContact: SX.ConversionProc; ConvertBuriedContact: SX.ConversionProc; RoseTransistor: SXOutput.LinkagePrintProc; ThymeTransistor: SXOutput.LinkagePrintProc; CopyWellConnections: SX.CombineNodePropertyProc; CheckWellConnections: SX.CellPostProcessProc; AttachNWellContact: SX.BoxMapProc; END. $SXCMos.mesa Copyright c 1984, 1985 by Xerox Corporation. All rights reserved. Written by Shand, September 12, 1983 11:40 pm Last Edited by: Shand, March 13, 1985 3:26:20 am PST Last Edited by: Jacobi, April 8, 1985 12:33:12 pm PST Last edited by: gbb November 25, 1985 10:43:55 am PST Κ“˜code™ Kšœ Οmœ7™BK™-K™4K™5K™5—K˜šΟk ˜ Kšžœžœ ˜Kšœžœ ˜Kšœžœ’˜šKšœ žœ˜"—Ibegin˜LšΟbœžœž œ˜Lšž˜Iunit•StartOfExpansion, -- [appl: CD.ApplicationPtr, cir: REF ] -- šœžœ˜ Mšœ<žœ˜BKšœ3žœ˜8Kšœ2žœ˜7Kšœ1žœ˜6Kšœ0žœ˜5Kšœ1žœ˜6Mšœžœ˜+Mšœžœ˜"šœ žœΟc˜8Mšœ" ˜8Kšœžœ ˜1—šœ žœ ˜8Mšœ" ˜8—šœ žœ ˜2Mšœ# 0˜SKšœžœ 0˜LKšœžœ 8˜WKšœžœ 8˜ZKšœžœ &˜DKšœžœ 7˜SKšœžœ ˜2Kšœžœ 3˜PKšœžœ #˜CKšœžœ /˜M—šœ žœ ˜3Mšœ" *˜LKšœžœ &˜A—MšŸœ˜"MšŸœ˜#MšΟn œž œ˜MšŸœ˜"MšŸœ˜(MšŸœ˜*MšŸœ˜+MšŸœ˜0MšŸœ˜-MšŸœ˜"Kšžœ˜—…— x /