blob: 6710f1df0bd215e1705bb0db69ed99a551ed2eeb [file] [log] [blame]
//::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
// This file includes SVRF/TVF Technology licensed by Siemens Industry Software Inc. and its affiliates ("SISW".
// "SVRF/TVF Technology" means SISW's Standard Verification Rule Format ("SVRF") and Tcl Verification Format
// ("TVF") proprietary languages for expressing process rules. SVRF/TVF Technology constitutes or contains trade
// secrets and confidential information of SISW, and any use is subject to the terms and conditions of the SISW
// End-User License Agreement, which may be viewed at https://www.sw.siemens.com/en-US/swterms/base/eula/ and the
// EDA Supplemental Terms which may be viewed at https://www.sw.siemens.com/en-US/sw-terms/supplements/ .
// SVRF/TVF Technology may be used solely with SISW software products, by your company's employees and on-site
// contractors, excluding EDA Competitors, who are under obligations of confidentiality and whose job performance
// requires access for your internal business purposes.
//::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
// ********************************************************
// Copyright (c) 2020 by SkyWater Technology
// SkyWater Confidential Information
// ********************************************************
/// New 3/9/2020 JAG
// ********************************************************
// Begin control statements
// ********************************************************
#DEFINE PEX
#DEFINE SKIP_EXTRACTING_DNWELL_DIODES
#DEFINE SKIP_CHECKING_DNWELL_DIODE_PARAMETERS
UNIT CAPACITANCE ff
TEXT DEPTH PRIMARY
PORT DEPTH PRIMARY
//# Source info
//SOURCE PRIMARY "top_cell"
SOURCE SYSTEM SPICE
//SOURCE PATH "top_cell.cdl"
//LVS FILTER R(cds_thru) SHORT SOURCE
//LVS FILTER R(cds_thru) SHORT LAYOUT
//LVS FILTER Dpar OPEN SOURCE
//LVS FILTER Dpar OPEN LAYOUT
//LVS FILTER Dpar(DNWDIODE_PW) OPEN SOURCE
//LVS FILTER Dpar(DNWDIODE_PW) OPEN LAYOUT
//LVS FILTER Probe OPEN SOURCE
//LVS FILTER Probe OPEN LAYOUT
LVS Filter icecap open source
//LVS Filter s8fmlt_iref_termx open source
///LVS Filter s8fmlt_neg_termx open source
//LVS Filter s8fmlt_termx open source
//LVS Filter s8fmlt_vdac_termx open source
//# diff/tap devices
//LVS FILTER diff_dev OPEN SOURCE
//LVS FILTER diff_dev OPEN LAYOUT
//LVS FILTER tap_dev OPEN SOURCE
//LVS FILTER tap_dev OPEN LAYOUT
//# dummy device to prevent empty cells from becoming subckt primitives
//LVS FILTER cad_dummy_open_device OPEN SOURCE
//LVS FILTER cad_dummy_open_device OPEN LAYOUT
//# Look further
LVS SIGNATURE MAXIMUM ALL
//# Be thorough in resolving ambiguity
LVS PROPERTY RESOLUTION MAXIMUM ALL
//# Interpret devices and arguments strictly
LVS STRICT SUBTYPES YES
LVS SPICE STRICT WL YES
LVS SPICE SLASH IS SPACE NO
LVS COMPARE CASE NO
//# allows exact m-factor comparison
LVS SPICE REPLICATE DEVICES YES
//# Should help out in making an IP spice/verilog
//# flow accurate and strict.
LVS SPICE PREFER PINS YES
LVS SPICE OVERRIDE GLOBALS YES
LVS SPICE REDEFINE PARAM YES
LVS SPICE ALLOW INLINE PARAMETERS NO
//# expanding would flatten most cells during comparison
LVS EXPAND SEED PROMOTIONS NO
LVS DISCARD PINS BY DEVICE YES
//# Cypress methodology will require setting this on a per-model basis
//# using LVS REDUCE component(model)
LVS REDUCE PARALLEL RESISTORS NO
LVS REDUCE SERIES RESISTORS NO
LVS REDUCE PARALLEL CAPACITORS NO
LVS REDUCE SERIES CAPACITORS NO
LVS REDUCE PARALLEL DIODES YES
//LVS REDUCE PARALLEL BIPOLAR NO
//LVS REDUCE PARALLEL MOS NO
LVS REDUCE SERIES MOS NO
//# Allows recoginition of logic gates. Should be NONE for good dspf.
LVS RECOGNIZE GATES NONE
LVS IGNORE PORTS NO
LVS CHECK PORT NAMES YES
//# Don't use these nets as initial bind points (convenience)
//# n<number>
LVS NON USER NAME NET "^n[0-9]*$"
//# net<number>
LVS NON USER NAME NET "^net[0-9]*$"
//# This gets disabled anyway because we have
//# MASK SVDB DIRECTORY "$PDK_HOME/PEX/xRC/svdb" QUERY XRC
//# By forcibly disabling it, we turn off a warning
LVS PUSH DEVICES NO
LVS EXECUTE ERC YES
ERC RESULTS DATABASE "erc.db" ASCII
ERC CELL NAME YES ALL CELL SPACE XFORM
//# For now, RFI is needed for xErrorSum. Will eventually change.
ERC CHECK TEXT COMMENTS RFI
ERC SUMMARY REPORT "erc.rep"
MASK SVDB DIRECTORY "svdb" QUERY XRC
LVS REPORT "lvs.rep"
//# report detailed SCONNECT conflicts
LVS REPORT OPTION S
//# disable warning about missing smashed mosfets
LVS REPORT OPTION F
//# give report on source passthroughs, same as layout does by default
LVS REPORT OPTION SP
//# maximum short isolation
LVS ISOLATE SHORTS YES BY LAYER CELL ALL
//# while the training on this seems safe enough, the documentation still
//# makes it sound like the nets get connected regardless of VIRTUAL CONNECT NAME,
//# so I will not use this directly
//#VIRTUAL CONNECT COLON YES
//# I think this is a little safer, and exactly what assura seems to do. I know
//# this will not connect the disjoint labels without VIRTUAL CONNECT NAME
LAYOUT RENAME TEXT "/:.*//"
//# go ahead and report if nets are virtually connected
VIRTUAL CONNECT REPORT YES
//# -join
VIRTUAL CONNECT NAME "?"
//# Expand Pcells
EXPAND CELL "*$$*"
// Include the Calibre LVS rules file
INCLUDE "$PDK_HOME/LVS/calibre_lvs.rul"
// Invoke the appropriate PEX files based on the desired process to execute
#IFDEF "PEX_PROCESS" HRHC
INCLUDE "$PDK_HOME/PEX/hrhc/rules.C"
INCLUDE "$PDK_HOME/PEX/hrhc/rules.R"
#ENDIF
#IFDEF "PEX_PROCESS" HRLC
INCLUDE "$PDK_HOME/PEX/hrlc/rules.C"
INCLUDE "$PDK_HOME/PEX/hrlc/rules.R"
#ENDIF
#IFDEF "PEX_PROCESS" Typical
INCLUDE "$PDK_HOME/PEX/typical/rules.C"
INCLUDE "$PDK_HOME/PEX/typical/rules.R"
#ENDIF
#IFDEF "PEX_PROCESS" LRHC
INCLUDE "$PDK_HOME/PEX/lrhc/rules.C"
INCLUDE "$PDK_HOME/PEX/lrhc/rules.R"
#ENDIF
#IFDEF "PEX_PROCESS" LRLC
INCLUDE "$PDK_HOME/PEX/lrlc/rules.C"
INCLUDE "$PDK_HOME/PEX/lrlc/rules.R"
#ENDIF