<> <> <> <> <> DIRECTORY CD USING [Number], CMos USING [lambda] ; SXCMosBasicRules: CEDAR DEFINITIONS = BEGIN <> <> ndifUncSubtrContSpacing: CD.Number = 3 * CMos.lambda; -- n-Diffusion/unconnected p-substrate-contact spacing <> ndifInnWell: CD.Number = 0 * CMos.lambda; -- n-Diffusion in n-Well ndifpSubstrCont: CD.Number = 0 * CMos.lambda; -- n-Diffusion and p-substrate-contact ndifChanBurContSpacing: CD.Number = 2 * CMos.lambda; -- channel/buried-contact spacing ndifBurContChanSpacing: CD.Number = 2 * CMos.lambda; -- buried-contact/channel spacing <> <> pdifUncnWellSpacing: CD.Number = 3 * CMos.lambda; -- p-Diffusion/unconnected n-Well-contact spacing <> pdifnWellCont: CD.Number = 0 * CMos.lambda; -- p-Diffusion and n-Well-contact <> <> <> polUncDifSpacing: CD.Number = 1 * CMos.lambda; -- Poly/unconnected Diffusion spacing polDiffUncPolySpacing: CD.Number = 1 * CMos.lambda; -- Diffusion/unconnected Poly spacing polOverDiff: CD.Number = 0 * CMos.lambda; -- Poly over Diffusion polBuriedExtension: CD.Number = 0 * CMos.lambda; -- Insufficient Buried extension over Diffusion <> <> <> metCutViaSpacing: CD.Number = 0 * CMos.lambda; -- Cut to Via spacing metCutCutSpacing: CD.Number = 2 * CMos.lambda; -- Cut to Cut spacing <> <> <> <> difSep: CD.Number = 3 * CMos.lambda / 2; nDifToWell: CD.Number = 5 * CMos.lambda; nDifLayerSep: CD.Number = MAX[difSep, nDifToWell - difSep]; difToPolExtSep: CD.Number = 0; polSep: CD.Number = CMos.lambda; metSep: CD.Number = 3 * CMos.lambda / 2; m2Sep: CD.Number = 2 * CMos.lambda; difToPolSep: CD.Number = difToPolExtSep + polSep; -- not halved! contactWidth: CD.Number = 4 * CMos.lambda; END.