Hi Shalom, I read your document and found no issues with the new text you are adding, I'm sorry to bother you with this but I did found some other issues with the existing text which I think are worth changing, perhaps better if done in this mantis or if you know of another mantis which deals with this text (or if possible a new mantis at this time). Page 3, it is written: parameter r2 = $; property inq1(r1,r2); @(posedge clk) a ##[r1:r2] b ##1 c |=> d; endproperty assert inq1(3); I think it should be something like: (I changed "r2 = $" to "r3 = $" and also gave default to r2 in the property declaration, also changed the assert syntax which was incorrect) parameter r3 = $; property inq1(r1,r2=r3); @(posedge clk) a ##[r1:r2] b ##1 c |=> d; endproperty a1: assert property (inq1(3)); Page 8: a2: assert property (width); Should be: a2: assert property (assert_width_p); I also think the interface quiet_time_checker in the example is better to be changed,you have added the line "if (!$isunbounded(max_quiet))" right after the generate which made this checker now don't do anything in case min_quiet!=0 and max_quiet=$. I suggest changing the interface it to: interface quiet_time_checker #(parameter min_quiet = 0, parameter max_quiet = 0, parameter string warning_msg="quiet time minimum is 0 maximum is $,no check made") (input logic clk, reset_n, logic [1:0] en); generate if (!$isunbounded(max_quiet)) begin property quiet_time; @(posedge clk) disable iff (!reset_n) ($rose(en == 0)||(max_quiet==0)) |->(en == 0)[*min_quiet:max_quiet] ##1 ((en != 0)); endproperty a1: assert property (quiet_time); end else if (min_quiet == 0) initial $warning(warning_msg); else a1: assert property (disable iff (!reset_n) $rose(en==0) |-> (en==0)[*min_quiet]); endgenerate endinterface quiet_time_checker #(0, 0) quiet_never (clk,1'b1,enables); quiet_time_checker #(2, 4) quiet_in_window (clk,1'b1,enables); quiet_time_checker #(0, $) quiet_any (clk,1'b1,enables); This change is better in my opinion than the original text since: 1. nothing was done in the original checker in the case where min_quiet!=0 and max_quiet=$ 2. warning_msg was some global string whereas it is better as an interface parameter 3. used disable iff with reset instead of the check only in the first cycle 4. there was maybe some assumption that "en" is one hot or something like that which may explain the $countones(en)==1, what if en==2'b11 ? 5. unified cases where max_quiet!=$ to one assertion (tool error is expected if min_quiet>max_quiet in this case also) I would also change in the width_checker interface "(reset_n && $rose(expr)) " to "disable iff (!reset_n) $rose(expr) " (two places) but that is even less important. Regards, Yaniv -----Original Message----- From: owner-sv-ac@eda.org [mailto:owner-sv-ac@eda.org] On Behalf Of Bresticker, Shalom Sent: Monday, December 03, 2007 09:58 To: sv-bc; sv-ac@eda.org Subject: [sv-ac] Emailing: 1350_D4_$.doc <<1350_D4_$.doc>> Hi, I have been working on the handling of $ as parameter and range values. This is Manti 966, 1350, and 1982. 966 and 1982 are classed as SV-AC issues, whereas 1350 is classed as an SV-BC issue. This is work in progress, but I would like you to look at what I have done so far. The attached document attempts to integrate those 3 Manti together. The green text is incorporation of SV-AC Mantis 1549. The blue and red text are my changes, as usual. Please look only at the changes I have made, not at anything that has not been changed, unless you want to make a comment which is not already recorded in one of those Manti. Thanks, Shalom --------------------------------------------------------------------- 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. -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Mon Dec 3 04:55:23 2007
This archive was generated by hypermail 2.1.8 : Mon Dec 03 2007 - 04:58:05 PST