Vote + 3 friendly amendments:
Mantis 2578 __X_ Yes ____ No****
http://www.eda-stds.org/mantis/view.php?id=2578****
http://www.eda-stds.org/mantis/file_download.php?file_id=5251&type=bug****
** **
Mantis 3033 _X__ Yes ____ No****
http://www.eda-stds.org/mantis/view.php?id=3033****
http://www.eda-stds.org/mantis/file_download.php?file_id=5257&type=bug
*Friendly amendment: *
1) Example is missing an "end" statement for the module m
2) The model needs to be beautified -- below is a copy that does it
*module *m(*input logic* rst, clk, logic en, *logic*[7:0] in1, in2,
in_array [20:0]);
c1 check_outside(*posedge *clk, in1);
*always* @(*posedge *clk) begin
*automatic logic *[7:0] v1 = 0;
*if *(en) *begin*
// v1 is automatic, so current procedural value is used
c1 check_inside(posedge clk, in1, v1);
*end*
*for *(*int *i = 0; i < 4; i++) *begin*
v1 = v1 + 5;
*if *(i != 2) begin
// v1 is automatic, so current procedural value is used
c1 check_loop(*posedge *clk, in1, in_array[v1]);
*end*
*end*
*end*
*endmodule *: m
3) Change "if (rst) z <= b; // sampled value of rst" TO
if (rst) // sampled value of rst
hecker check(logic a, b, c, clk, rst);
logic x, y, z, v, t;
assign x = a; // current value of a
always_ff @(posedge clk or negedge rst) // current values of clk and rst
begin
a1: assert (b); // sampled value of b
*if (rst) z <= b; // sampled value of rst*
z <= b; // sampled value of b
else z <= !c; // sampled value of c
On Fri, Aug 5, 2011 at 2:38 PM, Seligman, Erik <erik.seligman@intel.com>wrote:
> My votes:****
>
> ** **
>
> ** **
>
> Mantis 2578 __X_ Yes ____ No****
>
> http://www.eda-stds.org/mantis/view.php?id=2578****
>
> http://www.eda-stds.org/mantis/file_download.php?file_id=5251&type=bug****
>
> ** **
>
> Mantis 3033 _X__ Yes ____ No****
>
> http://www.eda-stds.org/mantis/view.php?id=3033****
>
> http://www.eda-stds.org/mantis/file_download.php?file_id=5257&type=bug****
>
> ** **
>
> Friendly amendments:****
>
> **- **p.9, example: check_outside is missing an arg****
>
> **- **p.15, 1st bullet point: “In *always_ff *procedure” è “In *always_ff
> *procedures” ****
>
> **- **C.2.7: Rephrase 1st paragraph: “The *always *procedure
> allowed by IEEE Std 1800-2009 in checkers, but always_comb, always_latch,
> and always_ff were forbidden. The limitations imposed on the *always *procedure
> in checkers included the limitations imposed on *always_ff *procedures
> outside checkers. In this version of the standard *always_comb*, *
> always_latch*, and *always_ff have been added for checkers*. As a result
> the general *always *procedure in checkers would have imposed the same
> limitations as *always_ff *does. Therefore the usage of *always *procedures
> in checkers is deprecated and does not appear in this version of the
> standard.”****
>
> ** **
>
> Also, a question about 17.3. Since we’re adding a new limitation on
> checkers containing procedural code, is it important for us to include an
> example with a deferred assertion outside a procedure, and point out how its
> implicit always_comb prevents its checker from being instantiated by other
> checkers?****
>
> ** **
>
> --
> This message has been scanned for viruses and
> dangerous content by *MailScanner* <http://www.mailscanner.info/>, 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 Sat Aug 6 13:25:34 2011
This archive was generated by hypermail 2.1.8 : Sat Aug 06 2011 - 13:25:49 PDT