Netlisting resistors and capacitors through HNL for hspice?

P

Paul Shepherd

Guest
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
 
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?



On Sep 9, 8:22 am, Paul Shepherd <psh...@gmail.com> wrote:
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,

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:
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?



On Sep 9, 8:22 am, Paul Shepherd<psh...@gmail.com> wrote:
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
 

Welcome to EDABoard.com

Sponsor

Back
Top