The Designer's Guide Community
Forum
Welcome, Guest. Please Login or Register. Please follow the Forum guidelines.
May 5th, 2024, 12:16pm
Pages: 1
Send Topic Print
How to set piecewise function (pwl) in spectre (Read 8084 times)
Vivek Chandrasekhar
Guest




How to set piecewise function (pwl) in spectre
Feb 12th, 2005, 7:08pm
 

Hi,

I had a problem setting a piecewise linear function as an input. The problem is that the input signal remains zero all the time after simulation  . In the spectre simulator, i set the time 1, voltage 1, time 2, voltage 2 accordingly. I want one of my input B0 to be 0V for 200 ps , 1.2 V  for the next 400ps, 0 for 800ps, 1.2V  for next 400 p and 0 V for next 200 ps.The total time for this one cycle is 2000ps. This waveform should continue for 100 cycles. The total time then becomes 200ns.
I notice that in my spectre simulator when i run the simulation , input signal remains zero all the time eventhough i set the values correctly in piecewise linear format.
I would be grateful to anyone who could help me solve this problem.
Thanks

Vivek
Back to top
 
 
  IP Logged
Ken Kundert
Global Moderator
*****
Offline



Posts: 2384
Silicon Valley
Re: How to set piecewise function (pwl) in spectre
Reply #1 - Feb 12th, 2005, 9:18pm
 
You have to set the type parameter on the source, to pwl I think.

-Ken
Back to top
 
 
View Profile WWW   IP Logged
Vivek Chandrasekhar
Guest




Re: How to set piecewise function (pwl) in spectre
Reply #2 - Feb 13th, 2005, 8:33am
 
Hi Ken,

Thanks for your suggestions. But, then i have already set the type parameter on the source to be pwl .

Thanks

Vivek
Back to top
 
 
  IP Logged
Andrew Beckett
Senior Fellow
******
Offline

Life, don't talk to
me about Life...

Posts: 1742
Bracknell, UK
Re: How to set piecewise function (pwl) in spectre
Reply #3 - Feb 13th, 2005, 10:00am
 
I suggest you post the source, and the analysis statement, from your netlist. That will allow us to give you some relevant advice.

I don't know if you're creating the netlist from the Analog Design Environment, or hand-writing the netlist? If using ADE, then pick the vsource component and set the type to "pwl" as Ken said, and enter the time-value pairs.

This should be quite straightforward - it's hard to know what you could have possibily got wrong!

Regards,

Andrew.
Back to top
 
 
View Profile WWW   IP Logged
Vivek Chandrasekhar
Guest




Re: How to set piecewise function (pwl) in spectre
Reply #4 - Feb 13th, 2005, 3:11pm
 
Hi Andrew,

I am using the Affirma Analog Circuit Design environment. The netlist is created from it. The simulator is spectre
My analysis is
type= tran , arguments = 0 to 2n
My source is(Analog stimulus from source)
function pwl type voltage
source type=pwl
time1= 0p
voltage1= 0.0
time2 =0.000001p
voltage2=0.0
time3=200p
voltage3=0.0
time4=200.000001p
voltage4=1.2
time5=600p
voltage5=1.2
time6=600.000001p
voltage6=0.0
time7=1400p
voltage7=0.0
time8=1400.000001p
voltage8=1.2
time9=1800p
voltage9=1.2
time10=1800.000001p
voltage10=0.0
time11=2000p
voltage11=0.0

The input signal instead of being a piecewise linear signal remains zero all the time.

Thanks

Vivek
l
Back to top
 
 
  IP Logged
Andrew Beckett
Senior Fellow
******
Offline

Life, don't talk to
me about Life...

Posts: 1742
Bracknell, UK
Re: How to set piecewise function (pwl) in spectre
Reply #5 - Feb 14th, 2005, 3:10am
 
From the way you describe it, I assume you're setting up the stimulus with Setup->Stimuli in the Analog Design Environment window, rather than using a component (such as vsource, vpwl etc from analogLib) in your schematic.

If so, I think the most likely problem is that you've not set the  "Number of pairs of points" parameter (which defaults to 2). Your first two points are at 0V, and so that would explain it.

If you had been adding the component to your schematic, this parameter controls the display of the time/voltage pair fields, and so you wouldn't have been able to set the values without increasing that. The Setup->Stimuli form is rather more primitive, and doesn't dynamically update the form based on the value of this parameter - but it _would_   be used to control how many points are netlisted, I think.

Try setting Number of pairs of points to 11, and see what happens.

Regards,

Andrew.
Back to top
 
 
View Profile WWW   IP Logged
Vivek Chandrasekhar
Guest




Re: How to set piecewise function (pwl) in spectre
Reply #6 - Feb 15th, 2005, 8:36am
 

Hi Andrew,

I changed the number of time-voltage pairs to 11. I dont have any problem right now.
Thanks a lot for  your guidance.

Vivek
Back to top
 
 
  IP Logged
Pages: 1
Send Topic Print
Copyright 2002-2024 Designer’s Guide Consulting, Inc. Designer’s Guide® is a registered trademark of Designer’s Guide Consulting, Inc. All rights reserved. Send comments or questions to editor@designers-guide.org. Consider submitting a paper or model.