Sei sulla pagina 1di 4

;;

-*-Lisp-*;;
;; NCSU CDK Copyright (C) 2006 North Carolina State University
;;
(let
((LOCAL_CDK_DIR (getShellEnvVar "CDK_DIR")))
(if LOCAL_CDK_DIR
(if (not (boundp 'NCSU_CDK_LOADED))
(let () ; CDK needs to be loaded, so load it.
(setq NCSU_CDK_DIR LOCAL_CDK_DIR)
(procedure (prependNCSUCDKInstallPath dir)
(strcat NCSU_CDK_DIR "/" dir))
(printf "Loading NCSU CDK 1.5.1 customizations...\n")
(setq NCSU_newLayoutMenuLabels t)
(putpropq (hiGetCIWindow) 96 "maxLayerPoolSize")
(envSetVal "graphic" "drfPath" 'string
(strcat NCSU_CDK_DIR "/cdssetup/display.drf"))
(if (isFile (prependNCSUCDKInstallPath "cdssetup/cdsenv"))
(envLoadVals
?envFile (prependNCSUCDKInstallPath "cdssetup/cdsenv")
?tool "ALL"))
(if (isFile "~/.cdsenv")
(envLoadVals
?envFile "~/.cdsenv"
?tool "ALL"))
(let
((configFileList (list ; "aaConfig.il"
; "dmConfig.il"
; "dciConfig.il"
; "metConfig.il"
; "sysConfig.il"
; "uiConfig.il"
; "leConfig.il"
"schConfig.il"
"streamIn.il"
))
(path (strcat ". ~ "
(prependNCSUCDKInstallPath "skill/config_files"))

)
(saveSkillPath (getSkillPath))
file )
(setSkillPath path)
(foreach file configFileList
(if (isFile file)
(loadi file)))
(setSkillPath saveSkillPath))
(let
((bindKeyFileList (list
"common_bindkeys.il"
))
(path (strcat ". ~ "
(prependNCSUCDKInstallPath "cdssetup")))
(saveSkillPath (getSkillPath))

file )
(setSkillPath path)
(foreach file bindKeyFileList
(if (isFile file)
(loadi file)))
(setSkillPath saveSkillPath))
(sstatus writeProtect nil)
(let ((skillPathElements
(list "." "~"
(prependNCSUCDKInstallPath
(prependNCSUCDKInstallPath
(prependNCSUCDKInstallPath
(prependNCSUCDKInstallPath
(prependNCSUCDKInstallPath
(prependNCSUCDKInstallPath
(prependNCSUCDKInstallPath
(prependNCSUCDKInstallPath
(prependNCSUCDKInstallPath
sPE)

"skill")
"skill/cdf")
"skill/menus")
"skill/menus/artist")
"skill/menus/ciw")
"skill/menus/virtuoso")
"skill/misc")
"skill/pcells")
"techfile")))

(foreach sPE skillPathElements


(setSkillPath (cons sPE (getSkillPath)))))
;
;
;
;

(if (isCallable 'awvSetOptionValue)


(let ()
(awvSetOptionValue "hcDisplay" "psb" )
(awvSetOptionValue "hcTmpDir" "/tmp" )))
(if (not (boundp 'NCSU_skillAlreadyLoaded))
(let ()
(setq NCSU_skillAlreadyLoaded t)
(printf "Loading NCSU SKILL routines...\n")
(load (prependNCSUCDKInstallPath "skill/loadSkill.il"))))

;
;
;
;
;
;

(asiSetEnvOptionVal
(asiGetTool 'spectreS)
'modelPath (strcat NCSU_CDK_DIR "/models/spectre/nom/"))
(asiSetEnvOptionVal
(asiGetTool 'hspiceS)
'modelPath (strcat NCSU_CDK_DIR "/models/hspice/public/"))
(envSetVal "graphic" "drfPath" 'string
(strcat NCSU_CDK_DIR "/cdssetup/display.drf"))
(setq lePlotTemplate
(prependNCSUCDKInstallPath "cdssetup/layoutPlotTemplate"))
(setq schPlotTemplate
(prependNCSUCDKInstallPath "cdssetup/schPlotTemplate" ))
(unless (getShellEnvVar "SKIP_CDSLIB_MANAGER")
(ddsOpenLibManager))
(printf "Done loading NCSU_CDK customizations.\n")
)
(printf "NCSU CDK already loaded.\n")
)
; you get to this let if NCSU_CDK_DIR is nil
(let ()
(printf "Environment variable CDK_DIR must be defined to use\n")
(printf "the NCSU CDK. It is not defined in the calling environment\n")

(printf "so the NCSU customizations will not be performed!\n"))))


; Add these scripts to the bottom of the .cdsinit file located in your CMOSedu d
irectory
; Set Spectre as the default simulator
envSetVal("asimenv.startup" "simulator" 'string "spectre")
; Auto-hides options for all tools, such as copy, move, create instance, etc. Pr
ess F3 to show options.
; envSetVal("ui" "showOptionForms" 'boolean nil) ; Uncomment this to enable. I d
idn't want to suprise anyone with this feature.
; Auto select "Cellview" when saving/loading states. Default: nil
envSetVal("asimenv" "saveAsCellview" 'boolean t)
; Display pin names by default in layout
envSetVal("layout" "displayPinNames" 'boolean t)
; Set stop level to 32 to show everything in layout
envSetVal("layout" "stopLevel" 'int 32)
; Set default models for spectre
envSetVal("spectre.envOpts" "modelFiles" 'string "$HOME/ncsu-cdk-1.6.0.beta/mode
ls/spectre/standalone/tsmc25N.m $HOME/ncsu-cdk-1.6.0.beta/models/spectre/standal
one/tsmc25P.m")
; Disable warning for a 4-way interesection wire aka solder dot crossover
envSetVal("schematic" "srcSolderOnCrossover" 'cyclic "ignored")
; Set the graph background to white
envSetVal("viva.rectGraph" "background" 'string "white")
; Set the graph foreground to black
envSetVal("viva.rectGraph" "foreground" 'string "black")
; Help changing the default style/color/thickness of a waveform or trace in ViVA
(Cadence's waveform viewer) is found here.
; Set graph axis font and size
envSetVal("viva.axis" "font" 'string "Fixed [Misc],12,-1,5,50,0,0,0,0,0")
; Set graph marker font and size
envSetVal("viva.pointMarker" "font" 'string "Fixed [Misc],12,-1,5,50,0,0,0,0,0")

; In ViVA there is a vertical marker (bindkey v), a horizontal marker (bindkey h


), and a difference marker for each direction (bindkey d). You can modify these
markers' fonts and sizes with the following lines:

; Set vertical marker font and size (36 point font below)
envSetVal("viva.vertMarker" "font" 'string "Fixed [Misc],36,-1,5,50,0,0,0,0,0")

; Set horizontal marker font and size (36 point font below)
envSetVal("viva.horizMarker" "font" 'string "Fixed [Misc],36,-1,5,50,0,0,0,0,0")

; Set vertical and horizontal dx/dy markers' font and size (36 point font below)
envSetVal("viva.multiDeltaMarker" "font" 'string "Fixed [Misc],36,-1,5,50,0,0,0,
0,0")

;-----------------------------------------------------------------------------------; The following work for plotting expressions with the calculator
; Set line thickness to thick
envSetVal("viva.trace" "lineThickness" 'string "thick")
; Set line type to solid
envSetVal("viva.trace" "lineStyle" 'string "solid")

Potrebbero piacerti anche