CD &CommandFileDirectory CDCmosA Install CDReadCif run InsertChipwichPins _ ReadCif.technology _ $cmos _ %CDProperties.PutTechnologyProp[onto: %CD.FetchTechnology[$cmos], prop: $CDxCIFName, val: NIL] -- in case this cm file doesn't finish running _ %CDProperties.PutLayerProp[onto: %CMos.met2, prop: $CDxCIFName, val: "CM2"] _ %CDProperties.PutLayerProp[onto: %CMos.met, prop: $CDxCIFName, val: "CM"] _ %CDProperties.PutLayerProp[onto: %CMos.pol, prop: $CDxCIFName, val: "CP"] _ %CDProperties.PutLayerProp[onto: %CMos.cut2, prop: $CDxCIFName, val: NEW[%CIFIntPhase2.CIFDestRec _ [cifDest: "CC2", deltaRadius: 0 -- nm --]]] _ %CDProperties.PutLayerProp[onto: %CMos.cut, prop: $CDxCIFName, val: NEW[%CIFIntPhase2.CIFDestRec _ [cifDest: "CC", deltaRadius: 250 -- nm --]]] _ %CDProperties.PutLayerProp[onto: %CMos.nwell, prop: $CDxCIFName, val: "CNW"] _ %CDProperties.PutLayerProp[onto: %CMos.pwell, prop: $CDxCIFName, val: "CPW"] _ %CDProperties.PutLayerProp[onto: %CMos.ovg, prop: $CDxCIFName, val: "CG"] _ %CDProperties.PutLayerProp[onto: %CMos.ndif, prop: $CDxCIFName, val: NEW[%CIFIntPhase2.CIFDestRec _ [cifDest: "CPI", deltaRadius: 0 -- nm --]]] _ %CDProperties.PutLayerProp[onto: %CMos.pdif, prop: $CDxCIFName, val: NEW[%CIFIntPhase2.CIFDestRec _ [cifDest: "CD", deltaRadius: 0 -- nm --]]] _ %CDProperties.PutLayerProp[onto: %CMos.bur, prop: $CDxCIFName, val: "CX"] _ %CDProperties.PutLayerProp[onto: %CMos.imp, prop: $CDxCIFName, val: "CX"] _ %CDProperties.PutLayerProp[onto: %CMos.pwellCont, prop: $CDxCIFName, val: "CX"] _ %CDProperties.PutLayerProp[onto: %CMos.nwellCont, prop: $CDxCIFName, val: "CX"] _ %CDProperties.PutTechnologyProp[onto: %CD.FetchTechnology[$cmos], prop: $CDxCIFName, val: "Technology file for use with ReadCif to make Xerox-ED CMOS CIF viewable"] -- done βChipwichCmosACif.load Copyright Σ 1985, 1987 by Xerox Corporation. All rights reserved. by Jim Gasbarro March 12, 1985 12:38:00 pm PST Last Edited by: Gasbarro, July 20, 1987 1:39:35 pm PDT McCreight, April 14, 1986 4:31:54 pm PST Frank Bowers January 24, 1986 4:57:06 pm PST Bowers, October 15, 1985 9:59:06 am PDT Bertrand Serlet May 21, 1987 4:56:15 pm PDT This technology file works for reading files that have been generated in the standard Xerox Cif format. This format maps pdif and pwelCont into implanted n-diffusion (two separate layers, CPI and CD), and ndif and nwelCont into just n-diffusion (CD). Since Readcif does not detect rectangle intersections, it has no way of recovering the original layers. Thus pdif and pwelCont appear as overlapping n-diffusion and p-diffusion (CD -> n-diffusion, CPI -> p-diffusion), and nwel and nwelCont appear as just n-diffusion. _ %CDProperties.PutLayerProp[onto: %CMos.cut2, prop: $CDxCIFName, val: "CC2"] _ %CDProperties.PutLayerProp[onto: %CMos.cut, prop: $CDxCIFName, val: "CC"] Compensate to make 2 Lambda contact cuts Diffusion is a crock. These are unused layers, put bogus names on them to detach any previous properties ReadCif compensation example: _ %CDProperties.PutLayerProp[onto: %CMos.nwel, prop: $CDxCIFName, val: NEW[%CIFIntPhase2.CIFDestRec _ [cifDest: "CNW", deltaRadius: -4000 -- nm --]]] This line would bloat all n-well rectangles by 4 microns. The sign of deltaRadius corresponds to the tranformation applied when writing the Cif file. Thus, BrandyCIFter would use this property to shrink by 4u while ReadCif bloats by 4u. ReadCif only performs "simple-minded" shrinks, so it is possible that you will end up with disjoint rectangles that were originally connected. Sorry. ΚH˜šœ™JšœB™BJšœ.™.Jšœ6™6Icode™(K™,K™'K™+—J™J˜J˜J˜Jšœ˜J˜J˜Jšœ‰™‰J˜J˜Jšœ)Οkœ1œΟc.˜J˜JšœM˜MJšœK˜KJšœK˜KJšœM™MJšœK™KJ™(Jšœ‘˜‘Jšœ‘˜‘J™JšœN˜NJšœN˜NJšœK˜KJ˜Jšœ™Jšœ‘˜‘Jšœ˜J˜JšœR™RJšœK˜KJšœK˜KJšœQ˜QJšœQ˜QJšœ)œ}ž˜―J˜J˜Jšœ™Jšœ•™•Jšœ†™†J˜—…—0