blob: 72851df833e6dd45d0883570b61357ebf03efce1 [file] [log] [blame]
################################################################################################
# Copyright 2023 GlobalFoundries PDK Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
################################################################################################
#==================================
# ------ PISCAP DERIVATIONS -------
#==================================
logger.info('Starting PISCAP DERIVATIONS')
piscap_exclude = mos_cap_mk.join(sab).join(esd)
.join(polyfuse).join(cap_mk).join(diode_mk)
.join(nat).join(v5_xtor).join(drc_bjt)
.join(lvs_bjt).join(fhres).join(fusewindow_d)
.join(lvs_rf).join(fusetop).join(resistor)
pis_ngate = nplus.and(tgate).and(nwell).and(piscap).interacting(mim_l_mk).not(piscap_exclude)
# pis_1p8 (1.8V PIS capacitor (outside DNWELL))
pis_1p8_gate = pis_ngate.not(dnwell).not(dualgate).not(dv2)
# pis_1p8_dw (1.8V PIS capacitor (inside DNWEL)
pis_1p8_dw_gate = pis_ngate.and(dnwell).not(dualgate).not(dv2)
# pis_6p0 (6V PIS capacitor (outside DNWELL))
pis_6p0_gate = pis_ngate.not(dnwell).and(dv2).not(dualgate)
# pis_6p0_dw (6V PIS capacitor (inside DNWEL)
pis_6p0_dw_gate = pis_ngate.and(dnwell).and(dv2).not(dualgate)