RE: @above in analyses other than tran and dc sweep

From: David Smith <David.Smith_at_.....>
Date: Thu Nov 19 2009 - 09:33:31 PST
Hi Geoffrey,
I think this seems a bit confusing. 'Above generating an event would mean that there is some process somewhere that would be sensitive to this event and use it (at least that is a traditional concept of events and sensitivity). Here it is being used to do what? Disable a $strobe if it had occurred once before and the definition of occurrence is related to the execution in different DC operating point analysis performed in a DC Sweep? Interesting. Has the simulation cycle for Verilog-AMS been modified to define when this event is processed? With the merge to SystemVerilog it will be interesting to see how you define the DC Sweep in the context of the simulation cycle.

Regards
David

David W. Smith
Synopsys Scientist
 
Synopsys, Inc.
Synopsys Technology Park
2025 NW Cornelius Pass Road
Hillsboro, OR 97124

Voice: 503.547.6467
Main:  503.547.6000
Cell:    503.560.5389
FAX:   503.547.6906
Email: david.smith@synopsys.com
http://www.synopsys.com
 
Saber Accelerates Robust Design
Predictable. Repeatable. Reliable. Proven.


-----Original Message-----
From: owner-verilog-ams@eda.org [mailto:owner-verilog-ams@eda.org] On Behalf Of Geoffrey.Coram
Sent: Thursday, November 19, 2009 9:15 AM
To: David Smith
Cc: verilog-ams@eda.org
Subject: Re: @above in analyses other than tran and dc sweep

David Smith wrote:
> 
> Having one DC solution have a dependency on a different DC solution within a DC sweep seems like a bad idea to me and not consistent with the traditional definition of a DC sweep.

As mentioned before, there are circuits that have multiple
dc solutions, in particular hysteresis, so you can't say
"the" dc solution.  People do design these circuits
intentionally!

> If it means that an event is generated going from one DC solution in a DC sweep to another then a rational would be helpful to understand the need.

There is an example in the LRM of a sample and hold
that uses above to get the correct time=0 solution
when the smpl pin is initially high, but this doesn't
need an event during a dc sweep.

Not in the LRM, but in a discussion document from the
subcommittee when we added above, was a discussion about
not giving repetitive warning messages.  For example

   @above( BV - V(a,c))
     $strobe("Diode is breaking down.");

Clearly, if one does
   if( BV - V(a,c) < 0)
     $strobe("Diode is breaking down.");
then one could get this message for dozens or hundreds of
points in a dc sweep, which could be quite messy, and doesn't
give any new information.

-Geoffrey

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Thu Nov 19 09:34:24 2009

This archive was generated by hypermail 2.1.8 : Thu Nov 19 2009 - 09:34:59 PST