Cadence Spectre - vsource from file?

E

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
 
SpiceExplorer can do it.
But it is not a Cadence software.

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

Thanks anyway
 
On 27 Sep 2005 01:06:55 -0700, "Eestavez" <eestavez@lycos.com> wrote:

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
What kind of interpolation were you after? It is interpolating them -
linearly...

Andrew.
 
Andrew Beckett wrote:

- SNIP -

What kind of interpolation were you after? It is interpolating them -
linearly...

Andrew.
:) 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
 
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 ... )

"Eestavez" <eestavez@lycos.com> wrote in message
news:1127903260.488992.208570@g43g2000cwa.googlegroups.com...
Andrew Beckett wrote:

- SNIP -

What kind of interpolation were you after? It is interpolating them -
linearly...

Andrew.

:) 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
 
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.

On Wed, 28 Sep 2005 13:02:02 -0400, "Gerry Vandevalk" <g_vandevalk@yahoo.com>
wrote:

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 ... )

"Eestavez" <eestavez@lycos.com> wrote in message
news:1127903260.488992.208570@g43g2000cwa.googlegroups.com...

Andrew Beckett wrote:

- SNIP -

What kind of interpolation were you after? It is interpolating them -
linearly...

Andrew.

:) 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
 
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)


"Andrew Beckett" <andrewb@DcEaLdEeTnEcTe.HcIoSm> wrote in message
news:m30nj153957mmcf6f9flj7j5pvqpulcb60@4ax.com...
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.

On Wed, 28 Sep 2005 13:02:02 -0400, "Gerry Vandevalk"
g_vandevalk@yahoo.com
wrote:

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 ... )

"Eestavez" <eestavez@lycos.com> wrote in message
news:1127903260.488992.208570@g43g2000cwa.googlegroups.com...

Andrew Beckett wrote:

- SNIP -

What kind of interpolation were you after? It is interpolating them -
linearly...

Andrew.

:) 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
 

Welcome to EDABoard.com

Sponsor

Back
Top