Home > Community > Forums > Functional Verification > per_instance coverage

Email

* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

 per_instance coverage 

Last post Wed, Oct 31 2007 6:17 AM by archive. 2 replies.
Started by archive 31 Oct 2007 06:17 AM. Topic has 2 replies and 1012 views
Page 1 of 1 (3 items)
Sort Posts:
  • Wed, Oct 31 2007 6:17 AM

    • archive
    • Top 75 Contributor
    • Joined on Fri, Jul 4 2008
    • Posts 88
    • Points 4,930
    per_instance coverage Reply

    Hello,
    My eVC has a configurable list of agents. Every agent in the list may be of kind SLAVE or MASTER.
    Of course, every agent kind has some configuration fields in common and other fields are idividual to
    SLAVE and MASTER agent kinds.  Hence,  the configuration struct looks like this:

    struct my_config_s { agent_name : agent_name_t; agent_type : agent_type_t; a : uint(bits:5); event my_cov_ev; cover my_cov_ev is { item agent_type using per_instance; item a; }; when MASTER config_s { master_b : bool; cover my_cov_ev is also { item master_b; }; }; when SLAVE config_s { slave_b : bool; cover my_cov_ev is also { item slave_b; }; }; };

    I can see in the coverage browser that every cover group instance for every agent has all possible cover items no matter of the agent kind. The strange thing is, that I see e.g. the master_b cover item incremented inside the cover group for the agent of kind SLAVE!. What I would expect is that every cover item added by e.g the MASTER "when" inheritance is left empty ( = 0) and is never incremented inside a SLAVE agent kind.

    Has somebody made the same experiance and an explanation for this behaviour? Do I miss something?

    Thanks in advance,
    bug_hunter


    Originally posted in cdnusers.org by bug_hunter
    • Post Points: 0
  • Mon, Dec 3 2007 9:21 AM

    • archive
    • Top 75 Contributor
    • Joined on Fri, Jul 4 2008
    • Posts 88
    • Points 4,930
    RE: per_instance coverage Reply

    Hello bug_hunter,

    when you write:
         . . .
         cover my_cov_ev is also {
             item master_b;
          };
          . . .
    you will extend the base coverage definition.

    What you are looking for is to do a conditional extension of the coverage
    definition, which would look like this:
          . . .
          cover my_cov_ev(agent_type==MASTER) is also {
             item master_b;
          };
          . . .

    Regards,
    -hannes 


    Originally posted in cdnusers.org by hannes
    • Post Points: 0
  • Tue, Dec 4 2007 10:54 PM

    • archive
    • Top 75 Contributor
    • Joined on Fri, Jul 4 2008
    • Posts 88
    • Points 4,930
    RE: per_instance coverage Reply

    Thanks, hannes.
    I'll try this....

    Regards,
    bug_hunter


    Originally posted in cdnusers.org by bug_hunter
    • Post Points: 0
Page 1 of 1 (3 items)
Sort Posts:
Started by archive at 31 Oct 2007 06:17 AM. Topic has 2 replies.