[sv-ac] severity in control tasks

From: Kulshrestha, Manisha <Manisha_Kulshrestha@mentor.com>
Date: Thu Mar 17 2011 - 01:51:52 PDT

Hi,

While defining these system tasks it seems like it is important to be
able to select assertions based on their severity. If we do not provide
this now, then later we'll have to add another systask to be able to do
this as adding new arguments will not be backward compatible. Last time
we talked about it the idea was to use an attribute based lookup. But
the idea was that user could choose any arbitrary attribute name and
later on specify that name in the task. Here is an example of that:

module test;

(* abc = 3 *) a1: assert property .....;
a2: assert property ...;

intial
begin
$assertcontrol(1, ...., "abc==3", ....); // choose assertions which have
value of abc 3
end

endmodule

Now, I am thinking if there is a way to have a predefined attribute so
that control task itself does not need to refer to the attribute name.
Instead we can have a predfined attribute e.g. severity which can have
integer values only and control task can only use integer value to
specify which assertions to choose. Here is an example:

module test;

(* severity = 3 *) a1: assert property .....;
a2: assert property ...;

intial
begin
$assertcontrol(1, ...., 3, ....); // select assertions which have
severity 3 or more
end

endmodule

Currently LRM does not have any predefined attributes but can we add one
? Or may be there is another way to achieve this ?

Or we should leave it to the tools to figure out severity and we only
define different values of severity and use them as one of the
arguments:

E.g. $assertcontrol(control_type, assert_type, directive_type, severity,
levels.....);

Where severity value 1 means info, 2 means warning, 3 means error and 4
means fatal. But this may not work if different tools define severity
differently.

Thanks.
Manisha

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Thu Mar 17 01:52:35 2011

This archive was generated by hypermail 2.1.8 : Thu Mar 17 2011 - 01:53:42 PDT