Cadence Spectre - vsource from file?

Discussion in 'Cadence' started by Eestavez, Sep 27, 2005.

  1. Eestavez

    Eestavez Guest

    Dear all,

    I would like to read a waveform from file and use it like a voltage
    source. In Spectre reference guide, I have find that PWL can be used
    with data files. Unfortunately, the data points from file are
    "connected" with linear "lines".
    Is there a way to interpolate them (directly in Spectre simulator)?
    Maybe I should use SpectreHDL or Verilog AMS with Spectre? Is there an
    easy way to do it?

    Any help or comment is appreciated and welcomed.

    Best regards,
    Emilio
     
    Eestavez, Sep 27, 2005
    #1
  2. Eestavez

    Eestavez Guest

    Unfortunately, I have to do it with Cadence Spectre or Ultrasim. I
    don't have access to SpiceExplorer (University...).

    Thanks anyway
     
    Eestavez, Sep 27, 2005
    #2
  3. What kind of interpolation were you after? It is interpolating them -
    linearly...

    Andrew.
     
    Andrew Beckett, Sep 27, 2005
    #3
  4. Eestavez

    Eestavez Guest

    Andrew Beckett wrote:

    - SNIP -
    :) Yes, it is! But I need some kind of "smooth" interpolation, like
    cubic, spline, ...
    I have done it with Verilog A code included in spectre netlist
    ("ahdl_include"). This solution is kinda slow, but it works :) .

    Best regards,
    Emilio
     
    Eestavez, Sep 28, 2005
    #4
  5. Andrew:

    It is often the discontinuous edges that mess up spectre/spice convergence.
    I think someone should enter a PCR to ask for this kind of feature.

    ( I am not shy, but don't currently have a sourcelink account as I am
    between Cadence
    contracts as a consultant. If no one does, I will when I can ... )
     
    Gerry Vandevalk, Sep 28, 2005
    #5
  6. Hi Gerry,

    With a PWL input, you get discontinuities in the derivative - and for normal
    short PWL sequencies it puts a breakpoint at the points which tells it to switch
    to Euler rather than Trapezoidal or Gear - which would mean that it doesn't try
    to estimate the truncation error by fitting a curve past the PWL point. There's
    a parameter to get it to adhere to this breakpoint behaviour even when there are
    large numbers of points in the waveform (something like allbreakpoints=yes?)

    Note, if the PWL is representing a pulse train, you can use the
    edgetype=halfsine option which will replace each rising or falling edge with a
    half-sine wave (this is also available for pulse sources). This smooths the
    transitions and means that the value and slope are continuous.

    If someone has a compelling need for spline fitting of the PWL data (which seems
    a bit odd to me...), then they should file a service request with a good
    justification of the need. I'm a tad busy at the moment (with customer support
    issues) so can't commit to doing this myself (and not sure what the precise need
    for it would be).

    Regards,

    Andrew.
     
    Andrew Beckett, Sep 29, 2005
    #6
  7. Thanks Andrew.

    I will checkout the edgetype=halfsine next chance I get.

    (sounds a little better "computationally" than an exponential or spline fit
    and I think all these "fits" are "poor man" solutions to the real life
    situation of
    real impedance which is usually too expensive to model)
     
    Gerry Vandevalk, Sep 30, 2005
    #7
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.