initial_step and final_step in DC sweep

From: Marq Kole <marq.kole_at_.....>
Date: Fri Aug 25 2006 - 05:19:31 PDT
All,

In the Verilog-AMS LRM 2.2 in section 6.7.4 (as well as in the LRM 2.3 
draft, section 6.7.2) in table 6.1 it says that the initial_step is only 
active in the first point of a DC sweep, and the final_step is only active 
in the last point of it.

The consequence would be that this behavior makes it impossible for a 
model to react on parameter changes during a DC sweep if this reaction is 
coded in the initial_step.

Is this correct?

 Instead this seems to require that a conditional statement is used with 
an analysis("static") function as its condition for the model to correctly 
handle parameter changes during a DC sweep. As the condition test in the 
conditional statement needs to be executed for each time point as well, 
this seems less efficient than to code it as a global event.

The general application of the initial_step event as I have seen in nearly 
all models is as an initialization block. If such a block is used, for 
instance, to calculate effective device length and the external length of 
the device is swept in a DC analysis, section 6.7.4 of the LRM 2.2 says 
that the user should not see any change in the effective device device 
length after the first point in the DC sweep.

I have at least one example that indeed shows this behavior, which I think 
is wrong.

I would propose to give initial_step and initial_step("dc") different 
return values in case of a DC sweep: initial_step should always return 
true, initial_step("dc") only for the first point in the sweep. The same 
goes for final_step and the last point in the DC sweep.

Marq


Marq Kole
Competence Leader Analog Simulation, Philips ED&T
Received on Fri Aug 25 05:20:26 2006

This archive was generated by hypermail 2.1.8 : Fri Aug 25 2006 - 05:20:39 PDT