<> <> <> <> <> <> <<>> <<-- cmos-A; lambda = 1 mu; >> <<-- compensated as for MPC; >> <<-- special split contacts>> <<>> <<-- do not edit without making a new registration keys>> <<>> cdcifgen CDCMosA -- un-register previous file ///ChipNDale/CDRemoveRegistration CDxCIFRegistrations -- set up _ &cifSpecials _ NEW[CDProperties.PropList_NIL] _ %CDProperties.PutProp[onto: $CDxCIFRegistrations, prop: $CDxCIFTechnology, val: $cmos] _ %CDProperties.PutProp[onto: $CDxCIFRegistrations, prop: $CDxCIFSpecials, val: &cifSpecials] -- cif units per lambda _ %CDProperties.PutProp[onto: $CDxCIFRegistrations, prop: $CDxCIFUnitsPerLambda, val: NEW[INT_100]] -- special objects (split contacts) _ %CDProperties.PutProp[onto: &cifSpecials, prop: $CDifShortCon, val: "25 1;\n( special setup for split-contact );\n( assuming lambda=100 cif units );\nL CD;\nB 16 16 8 8;\nL CD;\nB 16 16 8 24;\nL CPI;\nB 28 22 8 27;\nL CM;\nB 16 32 8 16;\nL CC;\nB 8 24 8 16;\n"] _ %CDProperties.PutProp[onto: &cifSpecials, prop: $CWellDifShortCon, val: "25 1;( special setup for split-contact );\n( assuming lambda=100 cif units );\nL CD;\nB 16 16 28 28;\nL CPI;\nB 28 22 28 31;\nL CNW;\nB 24 24 28 28;\nL CD;\nB 16 16 28 44;\nL CM;\nB 16 32 28 36;\nL CC;\nB 8 24 28 36;\n"] -- set up layer names _ %CDProperties.PutPropOnLayer[onto: %CMos.nwell, prop: $CDxCIFRegistrations, val: NEW[%BrandyCifter.CIFDestRec _ [cifDest: "CNW", deltaRadius: -4000 -- nm --]]] -- n-well must shrink _ %CDProperties.PutPropOnLayer[onto: %CMos.pwell, prop: $CDxCIFRegistrations, val: "CPW"] _ %CDProperties.PutPropOnLayer[onto: %CMos.imp, prop: $CDxCIFRegistrations, val: "CI"] _ %CDProperties.PutPropOnLayer[onto: %CMos.ndif, prop: $CDxCIFRegistrations, val: "CD"] _ %CDProperties.PutPropOnLayer[onto: %CMos.pwellCont, prop: $CDxCIFRegistrations, val: LIST["CD", NEW[%BrandyCifter.CIFDestRec _ [cifDest: "CPI", deltaRadius: 1500 -- nm --]]]] -- p-well contact add implant (grown) _ %CDProperties.PutPropOnLayer[onto: %CMos.pdif, prop: $CDxCIFRegistrations, val: LIST["CD", NEW[%BrandyCifter.CIFDestRec _ [cifDest: "CPI", deltaRadius: 1500 -- nm --]]]] -- p-diffusion add implant (grown) _ %CDProperties.PutPropOnLayer[onto: %CMos.nwellCont, prop: $CDxCIFRegistrations, val: "CD"] _ %CDProperties.PutPropOnLayer[onto: %CMos.bur, prop: $CDxCIFRegistrations, val: "CB"] _ %CDProperties.PutPropOnLayer[onto: %CMos.pol, prop: $CDxCIFRegistrations, val: "CP"] _ %CDProperties.PutPropOnLayer[onto: %CMos.cut, prop: $CDxCIFRegistrations, val: "CC"] _ %CDProperties.PutPropOnLayer[onto: %CMos.met, prop: $CDxCIFRegistrations, val: "CM"] _ %CDProperties.PutPropOnLayer[onto: %CMos.cut2, prop: $CDxCIFRegistrations, val: "CC2"] _ %CDProperties.PutPropOnLayer[onto: %CMos.met2, prop: $CDxCIFRegistrations, val: "CM2"] _ %CDProperties.PutPropOnLayer[onto: %CMos.ovg, prop: $CDxCIFRegistrations, val: "CG"] -- register this as last cif command file run _ %CDProperties.PutProp[onto: $CDxCIFRegistrations, prop: $CDxCIFName, val: "CMOS-A, real mask output, compensated, hierarchical, commandfile of 12-5-1985"] -- -- CMOS-A, real mask output, compensated, -- hierarchical, cifPerLambda=100 -- does not need to register a command -- please check if all commands finished successfully --