• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC SKILL
  3. run Calibre PEX with PCElls

Stats

  • Locked Locked
  • Replies 5
  • Subscribers 143
  • Views 15786
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

run Calibre PEX with PCElls

Mohellayali82
Mohellayali82 over 14 years ago

 dear all

i have an issue when running calibre PEX for parasitic extraction, it fails and i have this message error 

*Error* load: error while loading file - "/server2/home/WORKDIR/myp/skill1.il

and this happens with all the pcells i created , the way i load them is by putting a load in the libInit.il

 

my layout looks good but Calibre crashes with those errors

 

so my question is what may cause this

 

and as the tapeout is close i am afraid i send a wrong thing to the foundry

creating a GDS2 file successfully and communicate it to the foundry is it enough to transmit my design faithfully, or shouldi take precaution like flattening my whole design

 

please enlighten me

 

regards

  • Cancel
  • Mohellayali82
    Mohellayali82 over 14 years ago

    dear all 

     

    i managed to solve my problem

    however i would appreciate any comments from yours

     

    so my problem wasnt with the pcells but the auCore.cxt as said by the CIW

    so the reason is that   CDS_AUTO_64BIT was set to "ALL" and under the location

    <inst_dir>/tools.lnx86/dfII/etc/context/64bit there is no such auCore.ctx file.

    dost it mean that its impossible to run Mentog Graphics Calibre in 64bit ? that seems terribly frustrating

     

     

    and also in the CIW window i still have this pcDefinePCell undefined function error message, i am puzzled , should i pay more attention to this  message or just dismiss it knowing that every thing looks fine ?

     

    many thanks

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 14 years ago

    It probably would help if you gave the exact error message  (so we know which undefined function it is complaining about, to know if it's really an issue or not).

    The auCore.cxt file problem is presumably because of the interface trying to produce a CDL netlist, and auCdl netlisting was not supported in 64 bit mode (it is from IC614 onwards, when the entire virtuoso suite is supported in both 32 and 64 bit mode).

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Mohellayali82
    Mohellayali82 over 14 years ago

    Hi Andrew,

    Thank you for your reply

    For the auCore.cxt you are right because the extractor performs an LVS before so use the auCdl function to generate the schematic netlist, for that i switched to 32 bit version and i am happy with that for now

     

    about the pCell error message, here is the complete transcript:

    i did a simple StreamOut, the stream file seems OK, and whithin my SKILL code i use no printf function nor any forbidden function, all i am using is rod and db functions

     

    \o ********************************************************************************
    \o Product   : Virtuoso(R) STREAM Out
    \o Program   : @(#)$CDS: pipo.exe version 5.1.0 08/19/2008 01:14 (cicln04) $
    \o SubVersion: sub-version 5.10.41.500.5.122
    \o Started at: 28-Feb-2011  12:41:26
    \o User Name : houfaff
    \o Host Name : icestm2.ewi.utwente.nl
    \o Directory : /icestm2/home/houfaff/WORKDIR/workdir_65_534CDB
    \o CADENCE Design Systems, Inc.
    \o ********************************************************************************
    \o
    \o
    \o Reading Cadence database ...
    \o *WARNING* '/icestm2/home/houfaff/WORKDIR/workdir_65_534CDB/cds.lib', Line 33: path /icestm2/home/houfaff/xfer/PROJECT/Temp already belongs to LIB Temp.
    \o
    \o Loading libInit file of library "cmos065" ...
    \o "   Loading 'callback_common.il' ..."
    \o
    \o "   Loading 'callback_bipolar.il' ..."
    \o
    \o "   Loading 'callback_celemfringe.il' ..."
    \o
    \o "   Loading 'callback_polyCap.il' ..."
    \o
    \o "   Loading 'callback_diode.il' ..."
    \o
    \o "   Loading 'callback_gatedDiode.il' ..."
    \o
    \o "   Loading 'callback_drift.il' ..."
    \o
    \o "   Loading 'callback_mosfet.il' ..."
    \o
    \o "   Loading 'callback_resistor.il' ..."
    \o
    \o "   Loading 'callback_rnpofuse.il' ..."
    \o
    \o "   Loading 'callback_cfringe.il' ..."
    \o
    \o "   Loading 'callback_cmetal.il' ..."
    \o
    \o "   Loading 'callback_cstripe.il' ..."
    \o
    \o "   Loading 'callback_mimCap.il' ..."
    \o
    \o "   Loading 'callback_sealring.il' ..."
    \o
    \o "   Loading 'callback_pgtext.il' ..."
    \o
    \o "   Loading 'callback_stackvia.il' ..."
    \o
    \o "   Loading 'equation_common.il' ..."
    \o
    \o "   Loading 'equation_polyCap.il' ..."
    \o
    \o "   Loading 'equation_mosfet.il' ..."
    \o
    \o "   Loading 'equation_resistor.il' ..."
    \o
    \o "   Loading 'equation_cfringe.il' ..."
    \o
    \o "   Loading 'equation_cmetal.il' ..."
    \o
    \o "   Loading 'equation_cstripe.il' ..."
    \o
    \o "   Loading 'equation_mimCap.il' ..."
    \o
    \o "   Loading 'label.il' ..."
    \o
    \o "   Loading 'netlist.il' ..."
    \o
    \o "   Loading 'param.il' ..."
    \o
    \o "   Loading 'cmos065customization.il' ..."
    \o
    \o "   Loading 'cmos065contact_callback.il' ..."
    \o
    \o "   Loading 'commonPcellProcs.il' ..."
    \o
    \o "   Loading 'genericSealring.il' ..."
    \o
    \o "   Loading 'pgtext_drc_clean_function.il' ..."
    \o
    \o "   Loading 'DKPcellLib.il' ..."
    \o
    \o "   Loading 'genericTmpSealring.il' ..."
    \o
    \o "   Loading 'genericSealring_1.il' ..."
    \o
    \o "   Loading 'genericLayersAndDRs.il' ..."
    \o
    \o
    \o    Defining DRF path ...
    \o ---> defUserInitProc for le: DK_cmos065_leUserInitProc
    \o    Loading user file ...
    \o *WARNING* The directory: '/misc/icetux6/cadappl/ictools/cadence_ic/5.1.41.HF122/tools.lnx86/dfII/etc/cdslib/artist/functional' does not exist
    \o  but was defined in libFile '/icestm2/home/houfaff/WORKDIR/workdir_65_534CDB/cds.lib' for Lib 'functional'.
    \o
    \o *WARNING* '/icestm2/home/houfaff/WORKDIR/workdir_65_534CDB/cds.lib', Line 33: path /icestm2/home/houfaff/xfer/PROJECT/Temp already belongs to LIB Temp.
    \o
    \o "libInit.il OK"
    \o
    \o Loading libInit file of library "cmos065_rf" ...
    \o    Loading user file ...
    \o function DK_rpporpoInit redefined
    \o function DK_rpporpoDone redefined
    \o function DK_rppoiInit redefined
    \o function DK_rppoiDone redefined
    \o function DK_rpodrpoInit redefined
    \o function DK_rpodrpoDone redefined
    \o function DK_rnporpoInit redefined
    \o function DK_rnporpoDone redefined
    \o function DK_rnpoiInit redefined
    \o function DK_rnpoiDone redefined
    \o function DK_rnpoInit redefined
    \o function DK_rnpoDone redefined
    \o function DK_rmzInit redefined
    \o function DK_rmzDone redefined
    \o function DK_rmxInit redefined
    \o function DK_rmxDone redefined
    \o function DK_rmtInit redefined
    \o function DK_rmtDone redefined
    \o function DK_rm1Init redefined
    \o function DK_rm1Done redefined
    \o function DK_rhiporpoInit redefined
    \o function DK_rhiporpoDone redefined
    \o function DK_rapInit redefined
    \o function DK_rapDone redefined
    \o function DK_cpolppwInit redefined
    \o function DK_cpolppwDone redefined
    \o function DK_cpolpnwInit redefined
    \o function DK_cpolpnwDone redefined
    \o function DK_cpogpnwInit redefined
    \o function DK_cpogpnwDone redefined
    \o function DK_cpo25pwInit redefined
    \o function DK_cpo25pwDone redefined
    \o function DK_cpo25nwInit redefined
    \o function DK_cpo25nwDone redefined
    \o function DK_cpo18pwInit redefined
    \o function DK_cpo18pwDone redefined
    \o function DK_cpo18nwInit redefined
    \o function DK_cpo18nwDone redefined
    \o function DK_cmzmzInit redefined
    \o function DK_cmzmzDone redefined
    \o function DK_cmxmzInit redefined
    \o function DK_cmxmzDone redefined
    \o function DK_cmxmxInit redefined
    \o function DK_cmxmxDone redefined
    \o function DK_cmstrstkInit redefined
    \o function DK_cmstrstkDone redefined
    \o function DK_cmimmk4x0ynosubInit redefined
    \o function DK_cmimmk4x0ynosubDone redefined
    \o function DK_cmimmk4x0yInit redefined
    \o function DK_cmimmk4x0yDone redefined
    \o function DK_cm1mxInit redefined
    \o function DK_cm1mxDone redefined
    \o function DK_cfrm1m5shznosubInit redefined
    \o function DK_cfrm1m5shznosubDone redefined
    \o function DK_cfrm1m5shzInit redefined
    \o function DK_cfrm1m5shzDone redefined
    \o function DK_NetlistingMode redefined
    \o function DK_DefaultNetlistingMode redefined
    \o function DK_SetNetlistingModeGeometrical redefined
    \o function DK_SetNetlistingModeElectrical redefined
    \o function DK_SetNetlistingModeMixed redefined
    \o function DK_IsNetlistingModeGeometrical redefined
    \o function DK_IsNetlistingModeElectrical redefined
    \o function DK_IsNetlistingModeMixed redefined
    \o function DK_EGupdate redefined
    \o
    \o *Error* eval: undefined function - pcDefinePCell
    \o *Error* load: error while loading file - "/icestm2/hom
    \o e/houfaff/WORKDIR/myp/skillexample8.il"
    \o
    \o *Error* eval: undefined function - pcDefinePCell
    \o
    \o *Error* load: error while loading file - "/icestm2/home/houfaff/WORKDIR/myp/skille
    \o xample1.il"
    \o
    \o *Error* eval: undefined function - pcDefinePCell
    \o
    \o *Error* load: error while loading file - "/icestm2/home/houfaff/WORKDIR/myp/skillexamp
    \o le2.il"
    \o
    \o *Error* eval: undefined function - pcDefinePCell
    \o
    \o *Error* load: error while loading file - "/icestm2/home/houfaff/WORKDIR/myp/skille
    \o xample3.il"
    \o
    \o *Error* eval: undefined function - pcDefinePCell
    \o
    \o *Error* load: error while loading file - "/icestm2/home/houfaff/WORKDIR/myp/skillexampl
    \o e4.il"
    \o
    \o *Error* eval: undefined function - pcDefinePCell
    \o
    \o *Error* load: error while loading file - "/icestm2/home/houfaff/WORKDIR/myp/skil
    \o lexample5.il"
    \o
    \o *Error* eval: undefined function - pcDefinePCell
    \o
    \o *Error* load: error while loading file - "/icestm2/home/houfaff/WORKDIR/myp/skill
    \o example6.il"
    \o
    \o *Error* eval: undefined function - pcDefinePCell
    \o
    \o *Error* load: error while loading file - "/icestm2/home/houfaff/WORKDIR/myp/skille
    \o xample7.il"
    \o
    \o *Error* eval: undefined function - pcDefinePCell
    \o
    \o *Error* load: error while loading file - "/icestm2/home/houfaff/WORKDIR/myp/assemb
    \o lage_mos.il"
    \o
    \o *Error* eval: undefined function - pcDefinePCell
    \o
    \o *Error* load: error while loading file - "/icestm2/home/houfaff/WORKDIR/myp/asse
    \o mblage_mos_npn.il"
    \o
    \o *Error* eval: undefined function - pcDefinePCell
    \o
    \o *Error* load: error while loading file - "/icestm2/home/houfaff/WORKDIR/myp/my_pt
    \o ap.il"
    \o
    \o
    \o *** There were 0 error and 50 warning messages ***
    \o
    \o Statistic and more information, please check /icestm2/home/houfaff/PIPO.LOG file.
    \o
    \o NORMAL EXIT ...
    \o
    \o
    \w *WARNING* '/icestm2/home/houfaff/WORKDIR/workdir_65_534CDB/cds.lib', Line 33: path /icestm2/home/houfaff/xfer/PROJECT/Temp already belongs to LIB Temp.
    \w *WARNING* The directory: '/misc/icetux6/cadappl/ictools/cadence_ic/5.1.41.HF122/tools.lnx86/dfII/etc/cdslib/artist/functional' does not exist
    \w  but was defined in libFile '/icestm2/home/houfaff/WORKDIR/workdir_65_534CDB/cds.lib' for Lib 'functional'.
    \o PIPO STRMOUT (PID = ipc:5) completed successfully, see log file '~/PIPO.LOG' for more details.
    \o

     

    so as you can see its just complaining about pcDefinePCell nothing else
     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 14 years ago

     The problem is that you're loading the code which defines the pcell each time from the  libInit.il and you should NOT be doing that. When a pcell is defined, the code for it is stored in the database - and it's not necessary to redefine it each time (this is just as well, because it would require write access to the library otherwise). You do however need to ensure any SKILL functions that you define which are called from within your pcDefinePCell() "body" are defined from the libInit.il

    So you need to ensure you are not calling pcDefinePCell() within the libInit.il or within any file loaded from the libInit.il

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Mohellayali82
    Mohellayali82 over 14 years ago

    The error message is gone now

    Thanks a lot for the explanation Andrew

    Best regards

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information