blob: aaa8d0970abf7eae9cf1d801fff5f56651c0bb42 [file] [log] [blame]
unless( getShellEnvVar("libFlag")
setShellEnvVar("libFlag=S130")
info("..................... Initializing ......................\n\n")
;; load display.drf if does not exist in local workarea
println("loading display file display.drf from S130 library")
when( (! isFile("./display.drf"))
displayFile = strcat(getShellEnvVar("PDK_HOME") "/LIBS/S130/display.drf")
when( isFile(displayFile)
if( errset(drLoadDrf(displayFile nil)) then
info("Found display.drf\n")
; info("Loading %s \n\n"
; strcat(getShellEnvVar("METAL_STACK") " display.drf"))
else
info("Failed to find display.drf\n\n")
)
)
)
;; Set up snap grid
envSetVal("layout" "xSnapSpacing" 'float 0.005)
envSetVal("layout" "ySnapSpacing" 'float 0.005)
;; Set up the model files
if( isContextLoaded("schView") then
foreach( sim list( 'ams 'spectre )
asiSetEnvOptionVal(asiGetTool(sim) "includePath"
strcat( getShellEnvVar("PDK_HOME") "/MODELS/common/spectre"))
asiSetEnvOptionVal(asiGetTool(sim) "modelFiles"
list(
list("models.all.scs" "tt")
list("#;models.scs" "")
list("#;parameters.scs" "fet_tt")
list("#;parameters.scs" "res_nom")
list("#;parameters.scs" "cap_nom")
)
)
)
)
;; Enable Layout XL generation from source number of fingers
envSetVal("layoutXL" "mfactorNames" 'string "mult")
;; Remove default scale settings from ADE Options for simulation
envSetVal("spectre.opts" "scale" 'string "")
envSetVal("spectre.opts" "scalem" 'string "")
;; load SkyWater pull-down menu
printf("Loading custom Skywater pulldown menu\n")
load(strcat(getShellEnvVar("PDK_HOME") "/PROGS/SKILL/SkyWater.il"))
info("\n")
info("................ Initialization Complete ................\n\n")
)
myFileLocation=simplifyFilename(which(get_filename(piport)))
myList=reverse(parseString(myFileLocation "/"))
libName=cadr(myList)
printf("The file being loaded is %L\n" myFileLocation)
printf("The file being loaded from Library %L\n" libName)
;; Must be loaded outside of initialization as auCdl and Stream export acts outside of
;; the current Cadence session, and these are needed for those to succeed
;; load SkyWater Pcell techData and Callbacks
println("Loading Skywater's Pcell technical data & callbacks")
load(strcat(getShellEnvVar("PDK_HOME") "/PROGS/PCELLS/S130techData.il"))
load(strcat(getShellEnvVar("PDK_HOME") "/PROGS/PCELLS/S130pcellCBs.il"))
println("Exiting libInit.il")