RE: [sv-ac] rules for concurrent assertion clock in procedural code

From: Bresticker, Shalom <shalom.bresticker_at_.....>
Date: Wed Jul 01 2009 - 02:46:31 PDT
The intention of this rule was to define the characteristics of an event expression that is identified as a clock in synthesizable subsets.

So Dmitry is correct that this was the intention, but you are also correct that this condition (b) is not clear enough.

This could be added to Mantis 2571, which is also about clarifiying this rule.

Thanks,
Shalom

________________________________
From: owner-sv-ac@server.eda.org [mailto:owner-sv-ac@server.eda.org] On Behalf Of Korchemny, Dmitry
Sent: Wednesday, July 01, 2009 12:38 PM
To: Daniel Mlynek; sv-ac@server.eda.org
Subject: RE: [sv-ac] rules for concurrent assertion clock in procedural code

Hi Daniel,

The clock of as1 is negedge clk. as1 inherits the clock from the event control of the always procedure.

Regards,
Dmitry

From: owner-sv-ac@server.eda.org [mailto:owner-sv-ac@server.eda.org] On Behalf Of Daniel Mlynek
Sent: Wednesday, July 01, 2009 12:21 PM
To: sv-ac@server.eda.org
Subject: [sv-ac] rules for concurent assertion clock in procedural code

Rules defined in :  16.15.6 Embedding concurrent assertions in procedural code says:

"Within the event control of the procedure, there is exactly one event expression that satisfies both of the following conditions:

a) The event expression is of the form edge_identifier expression1 [ iff expression2 ] and is not a proper subexpression of an event expression of this form.

b) No term in expression1 appears anywhere else in the body of the procedure."
My question is - what would be the clock for assertion as1  - would it be  inherited from always procedure clock? I have doubts as "clk" is used in both always procedure clock and as2 assertion clock. Is this violates rule (b) ???

...
default clocking dclk @(posedge clk);endclocking                     //<<<-------  clk  used in default clocking
always @(negedge clk) begin                         //clk used in event control in procedural code
            as1: assert property (a ##1 a);
            as2: assert property (@(posedge clk) a ##1 a);           //<<<--------  clk used inside body of the procedure
end
...

DANiel

--
This message has been scanned for viruses and
dangerous content by MailScanner<http://www.mailscanner.info/>, and is
believed to be clean.

---------------------------------------------------------------------
Intel Israel (74) Limited

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.


--
This message has been scanned for viruses and
dangerous content by MailScanner<http://www.mailscanner.info/>, and is
believed to be clean.
---------------------------------------------------------------------
Intel Israel (74) Limited

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Wed Jul 1 02:58:55 2009

This archive was generated by hypermail 2.1.8 : Wed Jul 01 2009 - 03:00:12 PDT