Geoffrey, :-)) <---- really big grin In my most recent case it is a BSIM4 model that you coded, available from Silvaco, linked through by the Designer's Guide. Admittedly, it is from March 2004 (says the header - it's version 4.3.0 so it can't be older than 2003 when that model was released in C code). I've been updating it to version 4.4.0. Rest assured that you're far from the only one; among the many others I've always been doing it myself. I'll to change my ways ... :-) I'm more concerned about implementers having this implemented without considering the nitty-gritty detail of the standard. Marq Marq Kole Competence Leader Analog Simulation, Philips ED&T "Geoffrey.Coram" <Geoffrey.Coram@analog.com> Sent by: geoffrey.coram@analog.com 25-08-2006 14:57 To Marq Kole/EHV/RESEARCH/PHILIPS@PHILIPS cc verilog-ams <verilog-ams@verilog.org> Subject Re: initial_step and final_step in DC sweep Classification Marq Kole wrote: > > > The general application of the initial_step event as I have seen > in nearly all models is as an initialization block. What models have you seen this in? I've been trying to stamp out the practice. I see that PSP does not use it (it uses the initialModel block name). Mextram does use it, for the following (in mextram_504.6_TUD.va): `ifdef insideADMS @(initial_model) begin `else @(initial_step or initial_step("static")) begin `endif // Impact ionization constants (NPN - PNP) if (TYPE == 1) begin An = 7.03e7; Bn = 1.23e8; end else begin An = 1.58e8; Bn = 2.04e8; end end What should be used is localparam An = (TYPE == 1) ? 7.03e7 : 1.58e8; localparam Bn = (TYPE == 1) ? 1.23e8 : 2.04e8; though localparam is not widely accepted by current Verilog-A simulators. Of course, Mextram (and Hicum) are somewhat strange models, in that almost all the parameters are updated based on the self-heating temperature, which does depend on a circuit unknown, and thus their initialization block does not contain much code in any case. -GeoffreyReceived on Fri Aug 25 06:13:29 2006
This archive was generated by hypermail 2.1.8 : Fri Aug 25 2006 - 06:13:31 PDT