blob: 5ca41664ebdcb88ea00c34d252c48945746415ed [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_layers = mos_cap_mk.or(sab).or(esd).or(polyfuse).or(cap_mk).or(diode_mk).or(nat)
.or(v5_xtor).or(drc_bjt).or(lvs_bjt).or(fhres)
.or(fusewindow_d).or(lvs_rf).or(fusetop).or(resistor)
# pis_1p8 (1.8V PIS capacitor (outside DNWELL))
pis_1p8_gate = ngate.and(piscap).interacting(mim_l_mk).inside(nwell).not(dnwell)
.not(dualgate).not(dv2).not(piscap_exclude_layers)
# pis_1p8_dw (1.8V PIS capacitor (inside DNWEL)
pis_1p8_dw_gate = ngate.and(piscap).interacting(mim_l_mk).inside(nwell).inside(dnwell)
.not(dualgate).not(dv2).not(piscap_exclude_layers)
# pis_6p0 (6V PIS capacitor (outside DNWELL))
pis_6p0_gate = ngate.and(piscap).interacting(mim_l_mk).inside(nwell).not(dnwell)
.and(dv2).not(piscap_exclude_layers)
# pis_6p0_dw (6V PIS capacitor (inside DNWEL)
pis_6p0_dw_gate = ngate.and(piscap).interacting(mim_l_mk).inside(nwell).inside(dnwell)
.and(dv2).not(piscap_exclude_layers)