GitHub
12/19/2022, 2:23 AMMIM
is begin treated as a macro with a definition of 1
in the final version of magic/gf180cmuC.tech
.
Here's a comparison of the expected vs actual. MIMTM
has been replace with 1TM
.
width *mimcap 5000 "MiM cap top plate width < %d (MIMTM.8a)" | width *mimcap 5000 "MiM cap top plate width < %d (1TM.8a)"
spacing *mimcap *mimcap 600 touching_ok \ | spacing *mimcap *mimcap 600 touching_ok \
"MiM cap top plate spacing < %d (MIMTM.6)" | "MiM cap top plate spacing < %d (1TM.6)"
surround mimcc mimcap 390 absence_illegal \ | surround mimcc mimcap 390 absence_illegal \
"MiM cap must surround MiM cap contact by %d (MIMTM.4-VT.4)" | "MiM cap must surround MiM cap contact by %d (1TM.4-VT.4)"
spacing pad *mimcap 50 touching_illegal "MiM cap cannot overlap pad (MIM1M.X)" | spacing pad *mimcap 50 touching_illegal "MiM cap cannot overlap pad (11M.X)"
spacing mimcc mimcc 480 touching_ok "MiM cap contact spacing < %d (MIMTM.9 - VT.3)" | spacing mimcc mimcc 480 touching_ok "MiM cap contact spacing < %d (1TM.9 - VT.3)"
|
spacing via3 *mimcap 50 touching_illegal \ | spacing via3 *mimcap 50 touching_illegal \
"MiM cap cannot overlap via3 (MIMTM.10)" | "MiM cap cannot overlap via3 (1TM.10)"
spacing *mimcap *m4,rm4 1200 touching_ok \ | spacing *mimcap *m4,rm4 1200 touching_ok \
"MiM cap to Metal4 spacing < %d (MIMTM.1)" | "MiM cap to Metal4 spacing < %d (1TM.1)"
spacing *mimcap via4/m5 390 touching_illegal \ | spacing *mimcap via4/m5 390 touching_illegal \
"MiM cap spacing to via4 < %d (MIMTM.5)" | "MiM cap spacing to via4 < %d (1TM.5)"
surround *mimcap m4 600 absence_illegal \ | surround *mimcap m4 600 absence_illegal \
"Bottom plate overlap of MiM cap < %d (MIMTM.3)" | "Bottom plate overlap of MiM cap < %d (1TM.3)"
width mimcapc/m5 280 "MiM Contact width < %d (VT.1+VT.3)" | width mimcapc/m5 280 "MiM Contact width < %d (VT.1+VT.3)"
|
variants (full) | variants (full)
cifmaxwidth mim_bottom_plate_space 0 bend_illegal \ | cifmaxwidth mim_bottom_plate_space 0 bend_illegal \
"MiM bottom plate to unrelated metal < 1.2um (MIMTM.1)" | "MiM bottom plate to unrelated metal < 1.2um (1TM.1)"
cifmaxwidth mim_bot_cont_surround 0 bend_illegal \ | cifmaxwidth mim_bot_cont_surround 0 bend_illegal \
"MiM bottom plate surrounds contact < 0.4um (MIMTM.2)" | "MiM bottom plate surrounds contact < 0.4um (1TM.2)"
One solution might be to define MIM
to be MIM
instead of 1
.
RTimothyEdwards/open_pdks