• 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. Link between analog environment and schematic by ocean ...

Stats

  • Locked Locked
  • Replies 6
  • Subscribers 143
  • Views 15113
  • 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

Link between analog environment and schematic by ocean script

OLyonnais
OLyonnais over 15 years ago

 Hello !

i have a problem i would like to create a netlist from my schematic, and simulate it without doing Tool>Analog Environment ..

I have seen that when you do that by the graphic interface, it's generate automatically in your directory: simulation/spectre/cellview/schematic/netlist/

i want to do that by the ocean script, and the command createNetlist() generate only the input.scs but no the netlist file...

I think that the "design" command need to be set correctly... before i used design("/home/user/simulation/TB_netlist/spectre/schematic/netlist/netlist") but now i think i need to use design( "user_lib" "TB_netlist" "schematic" "a")isn't it?but it doesn't work on ocean, the error message explains to do that on icms or icfb window !

 ****************************HERE AN EASY TEST*******************************************************

ocnWaveformTool( 'wavescan )
simulator( 'spectre )

design( "user_lib" "TB_netlist" "schematic" "a")
resultsDir( "/home/user/simulation/TB_netlist/spectre/schematic" )

createNetlist()
definitionFile(
    "corners.scs"
)

analysis('tran ?stop "10m"  )

run()
selectResult( 'tran )
plot(getData("/Z") getData("/A") )
delay = abs(delay(VT("/A") 0.55 1 "either" VT("/Z") 0.55 1 "either" 0 0 nil nil))

 ***************************************************************************************

thank you for your answer...

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 15 years ago

    In IC61X  you can use the "ocean" executable to do this, but if using IC5141, you can't because the ocean executable does not contain netlisting capabilities.

    If you use:

    icms -nographE

    you get something which has the same capabilities as "ocean" - i.e. an ASCII prompt, but yet  you can still plot waveforms and so on. If you do it in that, then your script above will work. You probably don't need to give the fourth argument to design() - that's optional.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • OLyonnais
    OLyonnais over 15 years ago

    so i can't generate automatically a netlist with the IC5141... (?) there is no other way? or its because i use design( "" "" "") instead of design("path")

    edit: finally, i tried to use the script, lauching it under icfb terminal and it works ! in the oceanref.pdf, it noted that design("" "" "") can be used only using icms or icfb ;) but it seems to work on the IC5141...

     

    thanks a lot Andrew

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

    Yes, use "icms" or "icms -nographE" as I said earlier. You don't have to use the ocean executable to run OCEAN scripts; they run perfectly well within the icms, msfb or icfb executables.

    In IC61X, the individual executables have gone away and replaced by a common virtuoso executable, and in fact ocean is now just a wrapper around virtuoso. But in IC5141 you can do it by just picking the right executable which has netlisting capability.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • OLyonnais
    OLyonnais over 15 years ago

     ok thank you for your information ;)

    Regards

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • OLyonnais
    OLyonnais over 15 years ago

     Hello everybody !

    now, i'm front of another problem... when i generated my netlist, i lauched my ocean script on the icfb terminal and its successful until the line where i'm doing a calculation.

     -------------------------------------------------------------------------------------------------------

    ocnWaveformTool( 'wavescan )
    simulator( 'spectre )
    design(     "/home/user/simulation/TB_netlist/spectre/schematic/netlist/netlist")
    resultsDir( "/home/user/simulation/TB_netlist/spectre/schematic" )

    createNetlist()

    definitionFile(
    "models.scs"
    )
    analysis('tran ?stop "10m"  )
    temp( 27 )
    run()
    selectResult( 'tran )

    delay = abs(delay(VT("/A") 0.55 1 "either" VT("/Z") 0.55 1 "either" 0 0 nil nil))
    plot( delay ?expr '( "delay" ) )

     -----------------------------------------------------------------------------------------------

     The underline part doesn't work. The error "can't handle... abs(nil..) " there is no problem with the syntax (its exactly the "save script" from the analog...)

    ***********************CDS.log***************************

    spectre completes with 0 errors, 0 warnings, and 0 notices.
    \o
    \o simulation completed successfully.
    \o reading simulation data...
    \o       ...successful.
    \e *Error* crossMethod: can't handle crossMethod(nil 0.55 1 "either" nil time)
    \e
    \e
    \e *Error* abs: can't handle abs(nil)
    \e *Error* load: error while loading file - "netlist.ocn"

    **********************************************************

     

    Then when i do the simulation by the interface analog environment (manually), its works but there is no waveform just a black graph with nothing inside (no calculation again) and that for all my simulation which worked before !

     

     I need to reboot my icfb terminal and lauch the same simulation by the interface (manually) and its WORK with the waveform ! 

    The problem comes from my script, where i think i might change the environment... and then no calculation is possible once the script is lauched.

    i'm quite sure that it miss a file in the simulation netlist file not correctly or not generated...

    i hope you will understand my trouble !!... if you want more details about that no problem....

     

    thanks !

     

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

    Do you have the ADE window open at the same time as trying to run the OCEAN script? It's possible they're interfering with each other...

    Otherwise, it would be best to contact Customer Support so we can work through this properly and see your data.

    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