Re: [sv-bc] RE: [sv-ac] System functions: argument binding by name

From: Gordon Vreugdenhil <gordonv@model.com>
Date: Wed Mar 23 2011 - 08:58:46 PDT

It isn't obvious to me that this is a BC issue. System tasks
and functions are really a CC issue in terms of how a simulator
is expected to interact with them.

Unfortunately, as a whole, the LRM has ended up with a
large number of systf routines that would be very difficult
(if not impossible/unreasonable) for a user to actually
override. I've grown increasingly uncomfortable with the
number of such routines.

Personally, I'd likely be opposed to defining a by-name
convention for system tasks and functions. I'd rather have
things shift towards package based definitions or similar
such that the user overrides and pli underpinnings are
not in play.

Gord.

On 3/22/2011 10:35 AM, Korchemny, Dmitry wrote:
> Hi Srini,
>
> You should address this question to SV-BC. CC-ing them.
>
> Thanks,
> Dmitry
>
> -----Original Message-----
> From: owner-sv-ac@eda.org [mailto:owner-sv-ac@eda.org] On Behalf Of Srinivasan Venkataramanan
> Sent: Tuesday, March 22, 2011 19:19
> To: sv-ac@eda-stds.org
> Subject: [sv-ac] System functions: argument binding by name
>
> Hello,
> Here is what I was talking about during tonight's SV-AC call with
> reference to $assertcontrol arguments. In SV 1800-2005 chapter:
>
>>> 12.4.4 Argument binding by name
> ------
> function int fun( int j = 1, string s = "no" );
> ...
> endfunction
>
> The fun function can be called as follows:
> fun( .j(2), .s("yes") );
>
> -------
>
> Similar notation for $assertcontrol would make it LOT clearer for
> users - though requires little extra typing (and then there can be
> tools/smart editors assisting that part).
>
>
> Considering the template/prototype:
>
> $assertcontrol (control_type [, [assertion_type][, [directive_type][,
> [levels] [, list_of_modules_or_assertions]]]]);
>
> Positional binding as it exists today:
>
>>> $assertcontrol(2, 7, 7, 0);
>
> Named binding I seek
>
>>> $assertcontrol(.control_type(2),
> .assertion_type(7)
> .directive_type(7)
> .levels(0)
> );
>
>
> Please suggest as to how take this forward.
>
> Thanks
> Srini
> www.cvcblr.com
>

-- 
--------------------------------------------------------------------
Gordon Vreugdenhil                                503-685-0808
Model Technology (Mentor Graphics)                gordonv@model.com
-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Wed Mar 23 08:59:10 2011

This archive was generated by hypermail 2.1.8 : Wed Mar 23 2011 - 08:59:15 PDT