• 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. Include file in spectre

Stats

  • Locked Locked
  • Replies 4
  • Subscribers 143
  • Views 17877
  • 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

Include file in spectre

sdv30
sdv30 over 9 years ago

I have a very simple question.
I am trying to include a file in spectre. I have the simplest setup possible.
I am using an empty netlist (only entry is simulator lang=spectre) and using a stimulus file, where I have only one include statement:
include "RefClk.txt"
The RefClk.txt file has a pwl voltage source in spectre syntax (simulator lang=spectre at the top of the file). 
The issue is this: When I have a very low number of time/voltage pairs (e.g. 50) then the file is included and the simulation completes correctly.
When I try to include a more realistic pwl waveform with ~1000 time/voltage pairs, the simulations hangs.
Has anyone seen anything like that?
Thanks.

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

    I'm not aware of any general issues with lots of points. I just created an example with 20,000 points and it ran with no problem. So it's almost something specific to the data or your simulation settings. You provided a bunch of information, but without the circuit and the PWL stimulus file (and the version used) it's not really going to be possible to understand. Can you contact customer support?

    I would point out that your OCEAN script is setting crazy settings for the simulator:

    option( 'gmin 1e-14 'vabstol 1e-16 'reltol 1e-10 'iabstol 1e-16 )

    A reltol of 1e-10 is ridiculously tight. You then only have a few remaining digits of numerical resolution in your double precision floating point numbers. Similarly your vabstol would be trying to use the reltol for tiny signals. What this means is that if you have a signal that is even 1fV (1e-15V) it would be trying to ensure that the difference between two iterations is less than 1e-16. Or if you have a microvolt, the difference between one iteration and the next is less than 1e-16 volts. Similarly your current accuracy is very high. Why are you doing this? It suggests to me that you don't know what you're doing, I'm afraid, and have just plucked some very small numbers in the hope that it will give you a more accurate solution. More likely you're just going to kill the simulation performance and actually mean that it might start taking very short time steps to follow the signals.

    You also didn't show what your voltage source looks like - I'm hoping you don't have the allbrkpts parameter on the source set to yes.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 9 years ago

    I'm not aware of any general issues with lots of points. I just created an example with 20,000 points and it ran with no problem. So it's almost something specific to the data or your simulation settings. You provided a bunch of information, but without the circuit and the PWL stimulus file (and the version used) it's not really going to be possible to understand. Can you contact customer support?

    I would point out that your OCEAN script is setting crazy settings for the simulator:

    option( 'gmin 1e-14 'vabstol 1e-16 'reltol 1e-10 'iabstol 1e-16 )

    A reltol of 1e-10 is ridiculously tight. You then only have a few remaining digits of numerical resolution in your double precision floating point numbers. Similarly your vabstol would be trying to use the reltol for tiny signals. What this means is that if you have a signal that is even 1fV (1e-15V) it would be trying to ensure that the difference between two iterations is less than 1e-16. Or if you have a microvolt, the difference between one iteration and the next is less than 1e-16 volts. Similarly your current accuracy is very high. Why are you doing this? It suggests to me that you don't know what you're doing, I'm afraid, and have just plucked some very small numbers in the hope that it will give you a more accurate solution. More likely you're just going to kill the simulation performance and actually mean that it might start taking very short time steps to follow the signals.

    You also didn't show what your voltage source looks like - I'm hoping you don't have the allbrkpts parameter on the source set to yes.

    Regards,

    Andrew.

    • 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