The Designer's Guide Community Forum
https://designers-guide.org/forum/YaBB.pl
Simulators >> Circuit Simulators >> Guides how spectre manipulates VerilogA/model files code?
https://designers-guide.org/forum/YaBB.pl?num=1451184262

Message started by JayOcad on Dec 26th, 2015, 6:44pm

Title: Guides how spectre manipulates VerilogA/model files code?
Post by JayOcad on Dec 26th, 2015, 6:44pm

I was wondering someone could point me in the direction of learning how the spectre code innards manipulates the verilogA model files(after spectre verilogA interpreter reads the code in?).  For example, in dc/ac analysis in the beginning does a function check for ddt(), the derivative function and set those to zero for all potential and current natures defined by any discipline?

I've been reading Ken's verilog-ams, and spectre/spice books and was wondering about the details in between. I'm wondering b.c., if I define an efield as two vectors with real and imaginary parts, to capture magnitude and phase info and do phase shift that way, I need to think about the algorithms that dc and ac analysis applies, so was wanting some guidance there.

Much thanks!

Title: Re: Guides how spectre manipulates VerilogA/model files code?
Post by Geoffrey_Coram on Jan 5th, 2016, 11:56am

Interesting - I just flipped through Ken's books and didn't find the details in between that you were looking for.

I'm used to seeing Verilog-A used for compact models (eg, BSIM4), a set of equations that end up with things like

 I(d,s) <+ id_chan;
 I(g,s) <+ ddt(qgs);
 I(g,d) <+ ddt(qgd);

In that case, the Verilog-A compiler for most simulators will try to adapt those equations to look like

 i(v(t)) + d/dt q(v(t)) + u(t) = 0

as in the transient analysis chapter (4) of Ken's Spice & Spectre book.

So, the ddt() expressions end up contributing to the "q" in that equation (current is the change in charge).  For dc, the simulator doesn't need any of the q equations (and may be able to partition the code so that it doesn't compute them).  For ac, it will linearize about the operating point, taking symbolic derivatives of the current and charge equations.

The Designer's Guide Community Forum » Powered by YaBB 2.2.2!
YaBB © 2000-2008. All Rights Reserved.