• 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. getting your final netlist with sevNetlistFile

Stats

  • Locked Locked
  • Replies 3
  • Subscribers 143
  • Views 14842
  • 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

getting your final netlist with sevNetlistFile

swdesigner
swdesigner over 12 years ago

I see some old posts related to this. Not sure where we are today. Here's what I'm trying to do :

Generate a netlist in batch mode; generate the runSimulation file; copy the run directory; launch the sim in the copy directory with the runSimulation command. Problem is that that ocean script you get from ADE > Session > Save Ocean Script is totally inadequate.

I started off with createNetlist(?recreateAll t) but found that not all components of the design were showing in the netlist directory. Worst of all, no runSimulation file.

I searched support and found runams -netlist. But the note says it doesn't work for cellview based netlisting, only OSS.

Luckily, support also had something on  asiGetSimulationRunCommand.

This led me to sevNetlistFile. Unfortunately, when I try this

sess=asiGetCurrentSession()
sevNetlistFile(sess 'recreate)

Loading simui.cxt
*Error* slotValue: no such slot - simID

Any suggestions?

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 12 years ago

    A few points/questions:

    1. What is "totally inadequate" about the Save OCEAN Script?
    2. If the createNetlist(?recreateAll t) is missing things, then netlisting from ADE would also be missing things - and so any attempt to use sevNetlistFile would fail (I would expect). I'd want to understand why anything is missing...
    3. It is not really supported to use the "runSimulation" script yourself (although that's primarily for "interactive" mode - it puts a comment in the runSimulation file to this effect).
    4. sevNetlistFile() doesn't create the runSimulation script anyway.
    5. The reason why it fails is because sevNetlistFile is expecting a "sev" session, as returned by sevSession(hiGetCurrentWindow()) rather than an "asi" session.

    Regards,

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • swdesigner
    swdesigner over 12 years ago

    Thanks for replying.

     

    1. I won't get into this. 

    2. I thought it was missing things, but, somehow, when you hit run(), magic happens and all the stuff I would expect to be there at netlist-done time get created.

    3. I've been using ./runSimulation for years. I feel powerful being able to script and automate. GUI's are good for the first run, but we must give users control.

    4. True, this works :

    Normal 0 false false false EN-US X-NONE X-NONE MicrosoftInternetExplorer4

    /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman","serif";}

    sess=asiGetCurrentSession()

    createNetlist(?recreateAll t)

    asiGetSimulationRunCommand(sess)

     

    Question, why would the manual tell you sevNetlistFile( sess 'recreate) (which doesn't work) and not say anything about this use model?

    I understand a lot of effort has gone into building what we have. I'm not trying to disparage it. If I said it was perfect, that would be bad - coz there would be no room for improvement. From a user experience point of view, there is a LOT of room for improvement.

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

    re your question - sevNetlistFile(sess 'recreate) does work (I just tried it, in case there was a bug, but since it's used in ADE that seemed unlikely). You have to pass it the right kind of session - and obtaining that is documented in the same manual (with sevSession()). I don't understand what you mean by "not say anything about this use model". If  you mean running with runSimulation, then that's not documented because it's not the expected (or supported) use model. We do tell you how to run simulations using OCEAN (e.g. the run() function). The sev.* functions are primarily there to interface with the ADE environment.

    So I guess I don't understand (quite) your question?

    BTW, the whole point of OCEAN was to give people additional control and to be able to do things in a scripted fashion - we recognize user interfaces don't always fit everyones needs. Similarly people create netlists and run the simulation outside Virtuoso (not necessarily using the runSimulation command because they can provide the arguments to spectre themselves, or whatever). Scripting and automation is a good thing, I agree!

    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