Netlisting resistors and capacitors through HNL for hspice?

Discussion in 'Cadence' started by Paul Shepherd, Sep 9, 2011.

  1. I am developing a PDK that must be able to work with the hierarchical
    netlister to provide hspice netlists in addition to using hspiceD
    simulation through the analogDesign environment. I have gotten my FETs
    to work for both cases by having an hspice and hspiceD view, and
    configuring the hspice view per the HSPICE/SPICE Interface reference
    document (i.e. populate the hnlHspiceFormatModel property with
    "hnlHspicePrintMOSfetModel()")

    I have also gotten FETs, resistors, and capacitors to netlist
    correctly in the hspiceD netlister by populating the CDF data for the
    cells.

    What is the missing link for resistors and capacitors in the HNL? is
    there an equivalent function to hnlHspicePrintMOSfetModel()? I tried
    hspiceDCompPrim() just in case, but that didn't do the trick.

    Thanks,
    Paul
     
    Paul Shepherd, Sep 9, 2011
    #1
  2. I have started to answer my own question, but this has made the
    situation worse... I decided that since a netlisting function is not
    documented for these components, I would write my own skill code.
    Then, right there in the help file, it shows that:

    "These functions are
    - stored in a file, whose name is that of the simulator concatenated
    with the string ".ile"
    - placed in the install_dir/tools/dfII/local/hnl directory, where
    install_dir is the directory in which the Cadence software has been
    installed

    This file must be encrypted for HNL to execute correctly on a non-
    development system."

    So in other words, if I want to add a function I have to re-create the
    entire hspice.ile file. Is Cadence really this stupid, or is there a
    workaround that I am not aware of?
     
    Paul Shepherd, Sep 14, 2011
    #2
  3. Paul,

    Take a look at the "res" or "resistor" component and the
    "cap" or "capacitor" component in the sample library, in particular at the
    cellView properties on the hspice view

    As you can see, these use hnlHspicePrintResistorElement() and
    hnlHspicePrintCapacitorElement() which I think will do what you want.

    If you did need to code additional formatting functions, then these can be
    loaded from your .simrc file; there's no need (and indeed you should not) change
    the .ile files. Those instructions are more to do with how you would add your
    own custom OSS netlister. Strictly speaking the file does not need to be
    encrypted either - it just looks for a file with the ".ile" suffix (it doesn't
    matter whether it's encrypted or not). Either way, leave the installation alone,
    and use your .simrc file to define any functions you might need for hspice
    netlisting.

    You're right in that you cannot mix hspiceD functions (which are for the ADE
    hspice direct netlister) with the hspice netlister (which is for NLP-based OSS
    netlisting direct from the schematic environment). They are different netlisters
    (for long historical legacy reasons that I won't go into here)

    Regards,

    Andrew.

    Paul Shepherd wrote, on 09/14/11 18:17:
     
    Andrew Beckett, Sep 26, 2011
    #3
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.