RE: $finish and final_step

From: Martin O'Leary <oleary_at_.....>
Date: Fri Mar 28 2008 - 09:49:54 PDT
Xavier,
sorry if I am not clear - my point is that you cannot execute the
@final_step in isolation - you have to execute the entire analog block
that it is part of.
This would not be the case if the final_step was its own block.
Thanks,
--Martin 

-----Original Message-----
From: Xavier Bestel [mailto:Xavier_Bestel@mentor.com] 
Sent: Friday, March 28, 2008 1:41 AM
To: Martin O'Leary
Cc: David Miller; Verilog-AMS LRM Committee
Subject: RE: $finish and final_step

On Thu, 2008-03-27 at 17:17 -0700, Martin O'Leary wrote:
> oleary>final_step is not a block - it is a statement allowed in the
> analog block (which is part of the problem I think)

Well, final_step is an event, which you associate with a block:

@(final_step) begin
   if (crossings < 2)
      $strobe("Could not measure period.");
   else
      $strobe("period = %g, crossings = %d",
         latest-previous, crossings);
end

[...]
> oleary>this looks pretty complex and maybe confusing to explain. Also 
> oleary>it
> doesn't seem to cover the case of a $finish in a digital block - it 
> might be better to have a final block like system verilog does with 
> clear restrictions on what analog statements are allowed in it (e.g. 
> not contribution statements)

There should be no difference between a $finish on the digital side and
on the analogic side - IMHO.

> But maybe this is becoming too implementation specific.

Fully agreed Dave. The important question is: do we execute final_step
blocks or not ?

	Xav


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Fri Mar 28 09:50:48 2008

This archive was generated by hypermail 2.1.8 : Fri Mar 28 2008 - 09:50:52 PDT