• 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 Design
  3. Importing Parasitic Netlist to Virtuoso (Wrong Model Name...

Stats

  • Locked Locked
  • Replies 6
  • Subscribers 125
  • Views 17447
  • 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

Importing Parasitic Netlist to Virtuoso (Wrong Model Name)

anurans
anurans over 6 years ago

Hi All,

I have an extracted netlist with parasitics given by foundry for a standard cell library. A part of the netlist is shown below (which looks more like a .cdl than a pex.netlist) 

https://pastebin.com/CL0mBqEu

I imported the entire netlist (File->Import->Spice....) to an OA symbol library (in IC 6.1.5) by attaching to the corresponding technology library. The device mapping file looks like below:

However when I run ADE on one of the imported component, simulation fails with a list of errors like below: 

Error found by spectre in `_sub0', during circuit read-in.
ERROR (SFE-23): "input.scs" 579: c0 is an instance of an undefined model CAPACITOR.
ERROR (SFE-23): "input.scs" 580: c1 is an instance of an undefined model CAPACITOR.
ERROR (SFE-23): "input.scs" 581: c2 is an instance of an undefined model CAPACITOR.
ERROR (SFE-23): "input.scs" 582: c3 is an instance of an undefined model CAPACITOR.
ERROR (SFE-23): "input.scs" 583: r4 is an instance of an undefined model RESISTOR.
ERROR (SFE-23): "input.scs" 584: r5 is an instance of an undefined model RESISTOR.
ERROR (SFE-23): "input.scs" 585: r6 is an instance of an undefined model RESISTOR.
ERROR (SFE-23): "input.scs" 586: r7 is an instance of an undefined model RESISTOR.
ERROR (SFE-23): "input.scs" 587: r8 is an instance of an undefined model RESISTOR.
ERROR (SFE-23): "input.scs" 588: r9 is an instance of an undefined model RESISTOR.

And it looks like the parasitic components of imported cells have either RESISTOR or CAPACITOR as model name which hasn't been defined in model library. However this is not the case when Parasitics are manually extracted for a custom cell.

Any resolution for this ?

Thanks and Regards

Anuradha

  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett over 6 years ago

    Hi Anuradha,

    Because there is no subtype in the CDL netlist defined for the capacitors, it picks the default "CAPACITOR" and creates a property called subtype and model with that value. If you don't want this, add in the User Prop Mapping:

    model dummy subtype dummy2

    that will map both the properties to new names (dummy and dummy2) and will avoid the problem you're seeing.

    Andrew.

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • anurans
    anurans over 6 years ago in reply to Andrew Beckett

    One more question related to the same scenario:

    I tried to perform a monte carlo (MC) simulation on a custom made standard cell with its extracted RC parasitics (see below settings) and a cell imported from above netlist. According to the documentation, the extraction mode of the .cir netlist is similar to following settings. With these settings I created a Calibre view for the custom cell.

    In the simulation environment, I set the starting view to be "Calibre" and the stope view to be "Spectre", so that both cells are available with their parasitics. And by that I expect a fair comparison between two cells.

    With process-mismatch variations enabled, I only see the variations in the waveform for my custom cell and not the cell in cir netlist. I also see that “mf” flag of the transistors in .cir netlist is set to 1. For some reason, the waveforms of .cir cell for all the iterations look superimposed without any variations (even for low VDDs). Moreover I selected all the top level schematic blocks (of both cells) to be included for MC. What could possibly go wrong here ?

    Anuradha

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 6 years ago in reply to anurans

    Hi Anuradha,

    I'm not sure I entirely understand what your monte carlo setup looks like (I can't answer the questions about Calibre since that's a Mentor tool and I don't have access to it), but you shouldn't need to explicitly list the blocks to be included for monte carlo. The only time you typically do that is if you have multiple test benches and need the Design Under Test (DUT) to correlate between test benches.

    For the cir netlist are you including that or have you imported it into a schematic? It's really not clear what you've done here.

    Maybe contacting customer support would be wise so that an application engineer can take a look at your setup? That's probably a lot easier than asking lots of questions to understand what you've done.

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • anurans
    anurans over 6 years ago in reply to Andrew Beckett

    Hi Andrew,

    >> For the cir netlist are you including that or have you imported it into a schematic? It's really not clear what you've done here.

    Yes, I have a Symbol OA library for std cells. So I imported the cir netlist with R/C as dummy models and subtypes (as was suggested). End of the day, all the cells in OA library have mosfets and associated parasitic components. 

    I'll contact customer support for further assistance....

    Anuradha

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • anurans
    anurans over 6 years ago in reply to Andrew Beckett

    Okay, the issue seems to be in the Spice-In. The "total width" cdf parameter of FETS has not been updated and it remains in its default value. Since this is relatively a larger value, the MC variation is not significant. 

    In the cir netlist, the parameters were defined in upper case:

    M0 N_Z_M0_d N_A_M0_g N_VSS_M0_s N_VBN_M0_b N_12_LLRVT L=6e-08 W=3e-07
    + AD=5.25e-14 AS=5.25e-14 PD=9.5e-07 PS=9.5e-07 NRD=0 NRS=0 SA=1.75e-07
    + SB=1.75e-07 SCA=54.3776 SCB=0.0318625 SCC=0.00781068 $X=0.27 $Y=0.35

    Even if I place PropMap := W w L l in devMap file,  the correct W value is not assigned to "total_width". "Trigger CDF Parameter Callback" is also enabled in spiceIn (in IC 6.1.7). Any workaround for this ?

    Anuradha 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • anurans
    anurans over 6 years ago in reply to Andrew Beckett

    Okay, the issue seems to be in the Spice-In. The "total width" cdf parameter of FETS has not been updated and it remains in its default value. Since this is relatively a larger value, the MC variation is not significant. 

    In the cir netlist, the parameters were defined in upper case:

    M0 N_Z_M0_d N_A_M0_g N_VSS_M0_s N_VBN_M0_b N_12_LLRVT L=6e-08 W=3e-07
    + AD=5.25e-14 AS=5.25e-14 PD=9.5e-07 PS=9.5e-07 NRD=0 NRS=0 SA=1.75e-07
    + SB=1.75e-07 SCA=54.3776 SCB=0.0318625 SCC=0.00781068 $X=0.27 $Y=0.35

    Even if I place PropMap := W w L l in devMap file,  the correct W value is not assigned to "total_width". "Trigger CDF Parameter Callback" is also enabled in spiceIn (in IC 6.1.7). Any workaround for this ?

    Anuradha 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

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