Cadence Hints
How to: create a Component parameter for the Library
(eg.: global 'lambda' variable)
Define a CDF global parameters for components using the program
-> Tools -> CDF -> edit. Specify the library name and declare
the parameter CDF type as 'base'. Then create the desired parameter
in your library (eg. called 'lambda'), then reference the parameter
in any view with the 'Par' functions (eg. pPar("lambda")). Works
fine even with LVS. The parameter is a global for the whole
library. To set a local (master-instance) variable create a pCell
with a master cell (See parametrized cells for more info).
;To start the LVS, DRC, EXT forms with custom parameters (euge and matt 9-26-99)
;DRC:
loadContext(strcat(prependInstallPath("etc/context/") "layerProc.cxt"))
callInitProc("layerProc")
ivDRCOptionsForm->switches->value="HP05"
ivDRCOptionsForm->rulesFilePath->value="/cadence/Cadence443/techfiles/divaDRC.rul"
ivDRCOptionsForm->echoCommands->value=nil
ivDRCOptionsForm->rulesLibButton->value=nil
;EXTRACT:
ivExtOptionsForm->switches->value = "HP05"
ivExtOptionsForm->rulesFilePath->value="/cadence/Cadence443/techfiles/divaEXT.rul"
ivExtOptionsForm->echoCommands->value=nil
ivExtOptionsForm->rulesLibButton->value=nil
--------------------------------
note, 'hiiSetCurrentForm' seems to be unnecessary.
The important difference is the 'loadContext' and 'callInitProc' commands.
Note that:
loadContext(strcat(prependInstallPath("etc/context/") "layerProc.cxt"))
is equivalent to:
loadContext("/cadence/Cadence443/tools.sun4v/dfII/etc/context/layerProc.cxt")
For some reason I couldn't get this to work with LVS, it gave me weird
errors when I tried to load the LVS.cxt context and change values.
Here's some nice key bindings I use:
-------------------
; Setup the same zoom-in/zoom-out keys in layout as for schematic
; MAC 9-16-99
hiSetBindKey("Layout" "<Key>[" "hiZoomRelativeScale(hiGetCurrentWindow() 0.8)")
hiSetBindKey("Layout" "<Key>]" "hiZoomRelativeScale(hiGetCurrentWindow() 1.25)")
; One key-stroke DRC! MAC 9-16-99
hiSetBindKey("Layout" "<Key>h" "ivDRCRun()")
-------------------
You can replace the keys if you want, but keep the "<Key>" identifier in
these statements. I put these in my .cdslocal file.