[sv-ac] Re: how should "a ##0 b throughout c " be interpreted?

From: ben cohen <hdlcohen@gmail.com>
Date: Sun Feb 21 2010 - 16:30:54 PST

Ran a test with regards to IEEE 1800-2009
Table 16-1—Operator precedence and associativity states that ## has higher
precedence over the throughout.
To me, that means that (a ##1 b throughout c ##3 d) should be interpreted as
((a ##1 b) throughout c ##3 d)

BTW,
module test;
  logic a, b, c, d, clk;
  ap_p1: assert property(@ (posedge clk)
     a ##1 b throughout c ##3 d);
endmodule : test
Compiled and the simulator started OK on one simulator.
Ben

On Sun, Feb 21, 2010 at 4:06 PM, ben cohen <hdlcohen@gmail.com> wrote:

> The question is how should "a ##0 b throughout c " be interpreted?
> IEEE 1800-2009, 16.9.1 Operator precedence shows that ## has higher
> precedence than the throughout . Thus, I believe that
> "a ##0 b throughout c " should be interpreted as
> "(a ##0 b) throughout c " // that will yield an error because the LHS of
> the throughout need a boolean and not a sequence
> rather than
> "a ##0 (b throughout c) " // A violation of the precedence rule.
>
> It is interesting that 2 tool vendors are taking the 2nd interpretation.
>
>
> http://verificationguild.com/modules.php?name=Forums&file=viewtopic&p=17467#17467
>

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Sun Feb 21 16:31:22 2010

This archive was generated by hypermail 2.1.8 : Sun Feb 21 2010 - 16:31:26 PST