• 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. CDF modelname as parameter using pPar

Stats

  • Locked Locked
  • Replies 1
  • Subscribers 142
  • Views 16028
  • 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

CDF modelname as parameter using pPar

keving
keving over 9 years ago

Hi,


I'm trying to have an instance where as well as having e.g. width/length as pPar, that the model name would be pPar type as well.

The model name could be of two different vt-types, e.g. svt, ulvt.

The modelname field in the PDK is not available for edit directly when you "q" the properties of the device.  As an experiement, I have made a copy of the PDK instance into a test library and edited the CDF to make the model name editable. 


This works ok so far, but now have error that when I try to netlist schematic, it reports can not pass model name hierarchically for instance "M0"

any help would be appreciated on this?

Thanks,

Kevin

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 9 years ago

    Kevin,

    This should work fine. I just tried it with gpdk45 - from

    I did the following:

    1. Took a copy of the cell nmos1v into my own library
    2. Tools->CDF->Edit CDF, set the CDF type to Base, and picked mylib/nmos1v. Then I changed the "model" field to be editable
    3. I created a schematic for a cell called subblock, and placed two instances of mylib/nmos1v. On one instance I set the model to be pPar("themodel") and on the other I set it to pPar("othermodel")
    4. I did Create->CellView->From CellView to create a symbol (and the CDF) for subblock.
    5. I then used Tools->CDF->Edit CDF (in Base CDF mode) to set the default value for themodel to be nch, and the default value for othermodel to be nch2.
    6. I created a schematic for "topblock" and placed two instances of subblock. One I left at default and the other I set the two model parameters to be nch3 and nch4.


    I netlisted this in ADE and got:

    // Library name: mylib
    // Cell name: subblock
    // View name: schematic
    subckt subblock a b vss
    parameters othermodel="nch" themodel="nch2"
    NM1 (net1 a vss vss) analogmodel modelname=othermodel w=(120n) l=45n \
    nf=1 as=16.8f ad=16.8f ps=520n pd=520n nrd=1.16667 nrs=1.16667 \
    sa=140n sb=140n sd=160n sca=226.00151 scb=0.11734 scc=0.02767 \
    m=(1)
    NM0 (b a net1 vss) analogmodel modelname=themodel w=(120n) l=45n nf=1 \
    as=16.8f ad=16.8f ps=520n pd=520n nrd=1.16667 nrs=1.16667 sa=140n \
    sb=140n sd=160n sca=226.00151 scb=0.11734 scc=0.02767 m=(1)
    ends subblock
    // End of subcircuit definition.

    // Library name: mylib
    // Cell name: topblock
    // View name: schematic
    I1 (net2 net3 net1) subblock othermodel="nch3" themodel="nch4"
    I0 (net5 net6 net4) subblock othermodel="nch" themodel="nch2"

    As you can see, it's automatically netlisted the devices as analogmodel (see "spectre -h analogmodel" for more details). This is what should work fine in the simulator (spectre).

    So what was the exact error that you got?

    Regards,

    Andrew

    • 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