The Designer's Guide Community
Forum
Welcome, Guest. Please Login or Register. Please follow the Forum guidelines.
Sep 15th, 2019, 1:28pm
Pages: 1
Send Topic Print
Passing Device operating point during transient analysis (Read 1178 times)
ElShater
New Member
*
Offline



Posts: 5
Oregon, USA
Passing Device operating point during transient analysis
May 21st, 2018, 10:48pm
 
Dear All,

I was attempting the following in Cadence Environment. I need to create a device, lets say, a resistor, whose value is function of ron (1/gds) of a MOSFET, in a transient simulation.

There are two parts to this.
1) A resistor who is function of a changing input.
Solution that works : using bsource
2) Getting the MOSFET gds to be a dynamic parameter passed to the resistor, that is where I haven't been successful.

So, all the posts I've found for days now, ask "How to plot /view/ print a device operating point in transient?" and I have successfully been able to do so using the save function in cadence. So in the results browser, I can see Mxx:gds as a signal which I can plot versus time in a transient simulation.

The bsource function mentions inputs as "netlist parameters, current simulation time, node voltages and branch currents". If only that included "device operating points", I wouldn't have been asking this question Smiley

Any one has a smart idea ? Thanks in advance.

Regards,
Ahmed

P.S.: So far, I've actually did a brute force. Have two devices with slightly different vds, and calculating the rds as DeltaVDS/DeltaID.

Works great till the point I have capacitance currents in transient messing up DeltaID through.
Back to top
 
 
View Profile   IP Logged
Ken Kundert
Global Moderator
*****
Offline



Posts: 2218
Silicon Valley
Re: Passing Device operating point during transient analysis
Reply #1 - May 21st, 2018, 11:27pm
 
It is really better to use Verilog-A for these kind of things.

You can save plot the local variables.

-Ken
Back to top
 
 
View Profile WWW   IP Logged
ElShater
New Member
*
Offline



Posts: 5
Oregon, USA
Re: Passing Device operating point during transient analysis
Reply #2 - May 21st, 2018, 11:32pm
 
Hello Ken,

Thank you for the quick reply. Can you please elaborate. So can Verilog-A extract the operating point of my BSIM MOSFET and make it available in transient simulation?

Regards,
Ahmed
Back to top
 
 
View Profile   IP Logged
ElShater
New Member
*
Offline



Posts: 5
Oregon, USA
Re: Passing Device operating point during transient analysis
Reply #3 - May 22nd, 2018, 12:34am
 
Ken Kundert wrote on May 21st, 2018, 11:27pm:
It is really better to use Verilog-A for these kind of things.

You can save plot the local variables.

-Ken


So, I took your hint and looked at VerilogA Manual. The section that looks promising to me is the " Dynamic simulation probe function ".
The $simprobe function. I will dive into this but If you think that's not the way to go, I'd appreciate a heads up!
Back to top
 
 
View Profile   IP Logged
ElShater
New Member
*
Offline



Posts: 5
Oregon, USA
Re: Passing Device operating point during transient analysis
Reply #4 - May 22nd, 2018, 1:03am
 
ElShater wrote on May 22nd, 2018, 12:34am:
Ken Kundert wrote on May 21st, 2018, 11:27pm:
It is really better to use Verilog-A for these kind of things.

You can save plot the local variables.

-Ken


So, I took your hint and looked at VerilogA Manual. The section that looks promising to me is the " Dynamic simulation probe function ".
The $simprobe function. I will dive into this but If you think that's not the way to go, I'd appreciate a heads up!



Thank you, Thank you, Thank you !!!!

Okay guys,
probe= $simprobe(Mxx,gds) in a verilogA model can parse device operating points from schematic into a real variable in real time in transient. And then you can basically do what you please with the real variable. In my case, I created an electrical output monout and sent the real output. From there, using the bsource r = 1/V(monout).

Thank you again Ken!
Back to top
 
 
View Profile   IP Logged
Ken Kundert
Global Moderator
*****
Offline



Posts: 2218
Silicon Valley
Re: Passing Device operating point during transient analysis
Reply #5 - May 23rd, 2018, 10:38am
 
That was not actually my point. I was recommending that you Verilog-A to write your model rather than using a bsource. Then you can use the results browser to plot the local variables in the Verilog-A model. I was assuming that you would make gds a local variable in the Verilog-A model and plot that.

-Ken
Back to top
 
 
View Profile WWW   IP Logged
ElShater
New Member
*
Offline



Posts: 5
Oregon, USA
Re: Passing Device operating point during transient analysis
Reply #6 - May 23rd, 2018, 12:03pm
 
Ken Kundert wrote on May 23rd, 2018, 10:38am:
That was not actually my point. I was recommending that you Verilog-A to write your model rather than using a bsource. Then you can use the results browser to plot the local variables in the Verilog-A model. I was assuming that you would make gds a local variable in the Verilog-A model and plot that.

-Ken


I understand your suggestion. But my issue was not with plotting since I could do that with the save function. My issue was letting gds available during transient to influence a dependant resistor. To be more specific, I need to model in^2=4kTgds since current models I am using is missing that for some reason. Once I got into VerilogA mode, I found I could just directly :
probe = $simprobe(Mxx,gds);
I(d,s) <+ white_noise(4*'P_K*$temperature*probe);

It works like a charm in dc, ac, transient. In pss, for some reason, it didnt work until I passed it out to a voltage and back in. Seems like forcing the analog side to generate gds as a signal.

probe = $simprobe(Mxx,gds);
V(gdsmon) = transition(probe,0,0);
I(d,s) <+ white_noise(4*'P_K*$temperature*V(gdsmon));

Now it works in pss when I add it to a small circuit. Tested S/H kT/C noise. I'm struggling with convergence now with a larger circuit. Circuit converges well w/o the verilog noise model. I am tempted to go back to bsource a resistor followed by a current controlled current source to generate the noise and see if it converges.
Back to top
 
 
View Profile   IP Logged
Pages: 1
Send Topic Print
Copyright 2002-2019 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.