CDxCMOSEBES.cm
last modified by McCreight, November 6, 1984 2:00:41 pm PST
run TerminalIOPackage
run ChipndalePackage
run CDCmosPackage
run CornerStitchingImpl
run TapeOpsImpl
run TapeStreamsImpl
run EBESMaskImpl
← %CDProperties.PutPropOnTechnology[onto: %CMos.cmos, prop: $CDxEBESNmPerLambda, val: NEW[INT ← 1000]]
← %CDProperties.PutPropOnTechnology[onto: %CMos.cmos, prop: $CDxEBESNmPerEBESPixel, val: NEW[INT ← 250]]
.. the die size
← %CDProperties.PutPropOnTechnology[onto: %CMos.cmos, prop: $CDxEBESXNmPerDie, val: NEW[INT ← 8130000]]
← %CDProperties.PutPropOnTechnology[onto: %CMos.cmos, prop: $CDxEBESYNmPerDie, val: NEW[INT ← 8090000]]
.. CMOS masks:
thin oxide or diffusion = 10
nwell = 21
pwell = 22
nimp = 23
pimp = 24
buried = 27
poly = 30
cut = 40
metal = 50
glass = 60
cut2 = 70
metal2 = 80
.. the scribe line
← %CDProperties.PutPropOnTechnology[onto: %CMos.cmos, prop: $CDxEBESActiveToScribeCenter, val: NEW[INT ← 105000 -- 25 um inside metal 2 ring --]]
← %CDProperties.PutPropOnTechnology[onto: %CMos.cmos, prop: $CDxEBESScribeLines, val: LIST[ NEW[%EBESMaskImpl.ScribeRec ← [maskName: "10", dieEdgeToLineCenter: 0, lineWidth: 110000 -- nm --]], NEW[%EBESMaskImpl.ScribeRec ← [maskName: "27", dieEdgeToLineCenter: 0, lineWidth: 106000 -- nm --]], NEW[%EBESMaskImpl.ScribeRec ← [maskName: "30", dieEdgeToLineCenter: 54000, lineWidth: 18000 -- nm --]], NEW[%EBESMaskImpl.ScribeRec ← [maskName: "40", dieEdgeToLineCenter: 0, lineWidth: 106000 -- nm --]], NEW[%EBESMaskImpl.ScribeRec ← [maskName: "50", dieEdgeToLineCenter: 59000, lineWidth: 20000 -- nm --]], NEW[%EBESMaskImpl.ScribeRec ← [maskName: "60", dieEdgeToLineCenter: 0, lineWidth: 80000 -- nm --]], NEW[%EBESMaskImpl.ScribeRec ← [maskName: "70", dieEdgeToLineCenter: 0, lineWidth: 80000 -- nm --]], NEW[%EBESMaskImpl.ScribeRec ← [maskName: "80", dieEdgeToLineCenter: 75000, lineWidth: 10000 -- nm --]], NEW[%EBESMaskImpl.ScribeRec ← [maskName: "23", dieEdgeToLineCenter: 0, lineWidth: 106000 -- nm --]], NEW[%EBESMaskImpl.ScribeRec ← [maskName: "24", dieEdgeToLineCenter: 0, lineWidth: 106000 -- nm --]], NEW[%EBESMaskImpl.ScribeRec ← [maskName: "21", dieEdgeToLineCenter: 0, lineWidth: 110000 -- nm --]], NEW[%EBESMaskImpl.ScribeRec ← [maskName: "22", dieEdgeToLineCenter: 0, lineWidth: 110000 -- nm --]]]]
.. how rectangles on ChipNDale levels make rectangles on EBES masks
← %CDProperties.PutPropOnLevel[onto: %CMos.nwel, prop: $CDxEBESName, val: LIST[NEW[%EBESMaskImpl.MaskDestRec ← [name: "21", deltaDiameter: -8000 -- nm --]],NEW[%EBESMaskImpl.MaskDestRec ← [name: "22", deltaDiameter: -2000 -- nm --]]]]
← %CDProperties.PutPropOnLevel[onto: %CMos.ndif, prop: $CDxEBESName, val: NEW[%EBESMaskImpl.MaskDestRec ← [name: "10", deltaDiameter: 1000 -- nm --]]]
← %CDProperties.PutPropOnLevel[onto: %CMos.pwelCont, prop: $CDxEBESName, val: LIST[NEW[%EBESMaskImpl.MaskDestRec ← [name: "10", deltaDiameter: 1000 -- nm --]], NEW[%EBESMaskImpl.MaskDestRec ← [name: "23", deltaDiameter: 3000 -- nm --]], NEW[%EBESMaskImpl.MaskDestRec ← [name: "24", deltaDiameter: 3000 -- nm --]]]]
← %CDProperties.PutPropOnLevel[onto: %CMos.pdif, prop: $CDxEBESName, val: LIST[NEW[%EBESMaskImpl.MaskDestRec ← [name: "10", deltaDiameter: 1000 -- nm --]], NEW[%EBESMaskImpl.MaskDestRec ← [name: "23", deltaDiameter: 3000 -- nm --]], NEW[%EBESMaskImpl.MaskDestRec ← [name: "24", deltaDiameter: 3000 -- nm --]]]]
← %CDProperties.PutPropOnLevel[onto: %CMos.nwelCont, prop: $CDxEBESName, val: NEW[%EBESMaskImpl.MaskDestRec ← [name: "10", deltaDiameter: 1000 -- nm --]]]
← %CDProperties.PutPropOnLevel[onto: %CMos.bur, prop: $CDxEBESName, val: "27"]
← %CDProperties.PutPropOnLevel[onto: %CMos.pol, prop: $CDxEBESName, val: "30"]
← %CDProperties.PutPropOnLevel[onto: %CMos.cut, prop: $CDxEBESName, val: "40"]
← %CDProperties.PutPropOnLevel[onto: %CMos.met, prop: $CDxEBESName, val: "50"]
← %CDProperties.PutPropOnLevel[onto: %CMos.cut2, prop: $CDxEBESName, val: "70"]
← %CDProperties.PutPropOnLevel[onto: %CMos.met2, prop: $CDxEBESName, val: "80"]
← %CDProperties.PutPropOnLevel[onto: %CMos.ovg, prop: $CDxEBESName, val: "60"]
.. the name of the mask set (until I figure out how to get it into the design)
← %CDProperties.PutPropOnAtom[$EBESMask, $CDxEBESMaskSetName, "MPC69AD"]