Hi Ben,
In this example that you brought:
ap_illegal2: assert property( @ (posedge clk) q2(@ (posedge clk) c ##2 d).triggered);
the method .triggered is applied on a named sequence instance q2. This is exactly the same case as in the example with triggered within the body of a sequence. Therefore I think no question of legality arises about this example: it is legal. Did you miss another pair of parenthesis in your question?
ap_illegal2: assert property( @ (posedge clk) q2( (@ (posedge clk) c ##2 d).triggered ));
--------------------------------
Jacob M. Katz | jacob.katz@intel.com<mailto:jacob.katz@intel.com> | Work: +972-4-865-5726 | iNet: (8)-465-5726
From: Ben Cohen [mailto:hdlcohen@gmail.com]
Sent: Monday, February 20, 2012 15:58
To: Katz, Jacob
Cc: sv-ac@eda-stds.org
Subject: Re: [sv-ac] Quick question on .triggered and legality of constructs
Jacob,
My doubts came because the LRM examples did not show such cases.
The cases shown with the .triggered were within the body of the sequence. For example:
sequence e2_with_arg(sequence subseq);
@(posedge sysclk) reset ##1 inst ##1 subseq.triggered ##1 branch_back;
endsequence
So, one can presume that the following are legal since the actual argument, which is a an end point, is a sequence of
I needed to clarify this point.
ap_illegal2: assert property( @ (posedge clk) q2(@ (posedge clk) c ##2 d).triggered);
ap_illegal1: assert property( @ (posedge clk) q2(q.triggered));
Thanks,
Ben
On Mon, Feb 20, 2012 at 3:44 AM, Katz, Jacob <jacob.katz@intel.com<mailto:jacob.katz@intel.com>> wrote:
Hi Ben,
Why is the last one illegal?
// The following is also illegal
ap_illegal2: assert property( @ (posedge clk) q2(@ (posedge clk) c ##2 d).triggered);
--------------------------------
Jacob M. Katz | jacob.katz@intel.com<mailto:jacob.katz@intel.com> | Work: +972-4-865-5726<tel:%2B972-4-865-5726> | iNet: (8)-465-5726
From: owner-sv-ac@eda.org<mailto:owner-sv-ac@eda.org> [mailto:owner-sv-ac@eda.org<mailto:owner-sv-ac@eda.org>] On Behalf Of Ben Cohen
Sent: Monday, February 20, 2012 06:00
To: sv-ac@eda-stds.org<mailto:sv-ac@eda-stds.org>; Korchemny, Dmitry
Subject: Re: [sv-ac] Quick question on .triggered and legality of constructs
update
sequence q; @ (posedged clk) a ##1 b[->1]; endsequence
// The following is illegal
ap_illegal1: assert property( @ (posedge clk) q2(q.triggered));
-- On Sun, Feb 19, 2012 at 3:14 PM, Ben Cohen <hdlcohen@gmail.com<mailto:hdlcohen@gmail.com>> wrote: Could you please clarify for me the legality and illegality of the constructs below? This is my understanding from the LRM. My doubts are on the .triggered on the actual arguments. Thanks, Ben sequence q; a ##1 b[->1]; endsequence sequence q2(sequence k); @ (posedge clk) m ##1 k; endsequence // The following is clearly legal ap_legal1: assert property( @ (posedge clk) q2(q)); // The following is also legal ap_legal2: assert property( @ (posedge clk) q2(c ##2 d)); // equivalent to // assert property(@ (posedge clk) m ##1 c ##2 ); // The following is illegal ap_illegal1: assert property( @ (posedge clk) q2(k.triggered)); // The following is also illegal ap_illegal2: assert property( @ (posedge clk) q2(@ (posedge clk) c ##2 d).triggered); -- 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. --------------------------------------------------------------------- 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 Tue Feb 21 07:32:45 2012
This archive was generated by hypermail 2.1.8 : Tue Feb 21 2012 - 07:32:50 PST