Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronic Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Register Log in

[SOLVED] LTSPICE Propagation delay calculation

Status
Not open for further replies.

Yukta2007

Junior Member level 2
Joined
Sep 13, 2020
Messages
23
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Activity points
113
Could you please tell how to calculate propagation delay in LTSPICE for CMOS circuits.
Or is there any other software for calculation of delay of CMOS circuits?

Thank you.
 

KlausST

Super Moderator
Staff member
Joined
Apr 17, 2014
Messages
18,135
Helped
4,063
Reputation
8,126
Reaction score
3,987
Trophy points
113
Activity points
119,625
Hi,

a rather general question.

So my general answer:
t_delay is from input voltage level xx to output voltage level yy.

The threshold level depend on: logic family, supply voltage, logic polarity.

Klaus
 

Yukta2007

Junior Member level 2
Joined
Sep 13, 2020
Messages
23
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Activity points
113
We are simulating this circuit in LTSPICE XVII and we are supposed to calculate the time delay for this circuit. Could you help us with that?
 

Attachments


KlausST

Super Moderator
Staff member
Joined
Apr 17, 2014
Messages
18,135
Helped
4,063
Reputation
8,126
Reaction score
3,987
Trophy points
113
Activity points
119,625
I can´t tell.... but you should know where your input and output voltage threshold levels are.

Usually they are: V_IH, V_IL, V_OH, VOL.

Klaus
 

FvM

Super Moderator
Staff member
Joined
Jan 22, 2008
Messages
47,502
Helped
14,052
Reputation
28,359
Reaction score
12,711
Trophy points
1,393
Location
Bochum, Germany
Activity points
276,222
"calculate propagation delay in LTSPICE" doesn't make much sense. The delay can be measured in simulation waveforms, dragging the cursor or use a .measure statement. Or calculated with pencil and paper using simplified transistor models.

By the way, you keep posting flawed LTspice circuits, as in your previous thread. The nodes encircled in red have either unconnected wires or are shorting voltage sources. You should fix it to be sure what the simulated circuit actually is.

1602514186842.png
 

Yukta2007

Junior Member level 2
Joined
Sep 13, 2020
Messages
23
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Activity points
113
As I was going through the forum about how to calculate delay in ltspice I came across this answer which said how to calculate delay for an inverter circuit. Could u please explain me how the spice directive commands work here and also what does {RE} refer to here.
 

Attachments


KlausST

Super Moderator
Staff member
Joined
Apr 17, 2014
Messages
18,135
Helped
4,063
Reputation
8,126
Reaction score
3,987
Trophy points
113
Activity points
119,625
Hi,
from post#2:
t_delay is from input voltage level xx to output voltage level yy.
see the 3 "MEAS" statements.
--> input level xx = 0.5 x VDD rising
--> output level yy = 0.5 x VDD falling
--> delay is the time inbetween

Klaus
 

Yukta2007

Junior Member level 2
Joined
Sep 13, 2020
Messages
23
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Activity points
113
"calculate propagation delay in LTSPICE" doesn't make much sense. The delay can be measured in simulation waveforms, dragging the cursor or use a .measure statement. Or calculated with pencil and paper using simplified transistor models.

By the way, you keep posting flawed LTspice circuits, as in your previous thread. The nodes encircled in red have either unconnected wires or are shorting voltage sources. You should fix it to be sure what the simulated circuit actually is.

View attachment 164722
Actually when we checked the error list, it shows no errors.
 

andre_teprom

Super Moderator
Staff member
Joined
Nov 7, 2006
Messages
9,181
Helped
1,141
Reputation
2,301
Reaction score
1,116
Trophy points
1,403
Location
Brazil
Activity points
53,330
Actually when we checked the error list, it shows no errors.
In fact, a wire drawn over another wire is not an error; there is no way for the software to know our intent, you are the one who must ensure that the wiring diagram is drawn correctly.
 

FvM

Super Moderator
Staff member
Joined
Jan 22, 2008
Messages
47,502
Helped
14,052
Reputation
28,359
Reaction score
12,711
Trophy points
1,393
Location
Bochum, Germany
Activity points
276,222
Actually when we checked the error list, it shows no errors.
True, the horizontal wires running into the encircled transistor terminals are unconnected. But why did you draw it? To obfuscate the circuit function? You better delete it to avoid confusing others and yourself.
--- Updated ---

Circuit schematic without unconnected wires

1602603069107.png
 
Last edited:

Yukta2007

Junior Member level 2
Joined
Sep 13, 2020
Messages
23
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Activity points
113
True, the horizontal wires running into the encircled transistor terminals are unconnected. But why did you draw it? To obfuscate the circuit function? You better delete it to avoid confusing others and yourself.
--- Updated ---

Circuit schematic without unconnected wires

View attachment 164754
--- Updated ---

Circuit schematic without unconnected wires

View attachment 164754
Thank you. Will make these changes.
--- Updated ---

Hi,
from post#2:

see the 3 "MEAS" statements.
--> input level xx = 0.5 x VDD rising
--> output level yy = 0.5 x VDD falling
--> delay is the time inbetween

Klaus
Any idea about what does {RE} refer to? And why exactly is it needed here?
 

KlausST

Super Moderator
Staff member
Joined
Apr 17, 2014
Messages
18,135
Helped
4,063
Reputation
8,126
Reaction score
3,987
Trophy points
113
Activity points
119,625
Hi,
Any idea about what does {RE} refer to? And why exactly is it needed here?
I never used it, but obviously
* RE = rising edge,
* FE = falling edge.

and you may use rising edge to falling edge (or vice versa) because you built an inverter.
Rising edge to rising edge won´t work.

Klaus
 

Yukta2007

Junior Member level 2
Joined
Sep 13, 2020
Messages
23
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Activity points
113
Hi,

I never used it, but obviously
* RE = rising edge,
* FE = falling edge.

and you may use rising edge to falling edge (or vice versa) because you built an inverter.
Rising edge to rising edge won´t work.

Klaus
Yes. I get that. But why is the value made to 1? Is there any particular reason? Or can it be taken at random?
 

KlausST

Super Moderator
Staff member
Joined
Apr 17, 2014
Messages
18,135
Helped
4,063
Reputation
8,126
Reaction score
3,987
Trophy points
113
Activity points
119,625
Hi,

again. Never used it.
Did a 5 second internet search an found out that it`s the "1st" rising (or falling) edge.

So please try an internet search on your own. It´s not difficult.
I even assume your simulation tool has a "help". Use it.

Klaus
 

FvM

Super Moderator
Staff member
Joined
Jan 22, 2008
Messages
47,502
Helped
14,052
Reputation
28,359
Reaction score
12,711
Trophy points
1,393
Location
Bochum, Germany
Activity points
276,222
Yes. I get that. But why is the value made to 1? Is there any particular reason? Or can it be taken at random?
Why not use 2nd edge and check for differences? Despite of having powerfull .measure statements, it's usually faster and less error prone to read the delay with cursors from the waveform.
 

Yukta2007

Junior Member level 2
Joined
Sep 13, 2020
Messages
23
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Activity points
113
I have used the same .meas statements to calculate the propagation delay of my xnor circuit but the value is high(0.04s but we are supposed to get in ps) . I am attaching the files for reference.
 

Attachments


Yukta2007

Junior Member level 2
Joined
Sep 13, 2020
Messages
23
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Activity points
113
Could you please help with the above query?
 

KlausST

Super Moderator
Staff member
Joined
Apr 17, 2014
Messages
18,135
Helped
4,063
Reputation
8,126
Reaction score
3,987
Trophy points
113
Activity points
119,625
If it's not like expected... why don't you simply draw the waveforms?
As already twice recommended by FvM.

It's as simple as writing a new forum post.... and get immediate response..
Don't ignore the recommendation of an experienced member.

Klaus
 

Yukta2007

Junior Member level 2
Joined
Sep 13, 2020
Messages
23
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Activity points
113
Since there are very minute changes in our waveforms, calculation of delay using cursors on waveform is not possible. So we used .MEAS statements for calculating delay. Actually we have two circuits, one is basic xnor circuit and the other one is simultaneous circuit(the output of XOR and XNOR) should have the same delay.
We have 2 doubts:
1) The delay of simultaneous ckt is supposed to be same but we are getting different delay value(0.02 for XOR and 0.04for XNOR)
2) The delay of basic xnor circuit is also coming as 0.02
The project revolves about proving that simultaneous circuits are more efficient in terms of delay but we are unable to prove that. Could you please help?
I am attaching the screenshots for your reference.
 

Attachments


KlausST

Super Moderator
Staff member
Joined
Apr 17, 2014
Messages
18,135
Helped
4,063
Reputation
8,126
Reaction score
3,987
Trophy points
113
Activity points
119,625
I don´t want to repeat the same again and again.

Thus I´m out. Good luck

Klaus
 

Status
Not open for further replies.
Toggle Sidebar

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Top