Swapnajit, An ignored coverbin does not modify the coverage space, it only indicates that the specified bins not be counted. Thus, your example would do the following: - Create 7 auto-bins (0..6). - Bins 0, 1, and 2 never take a hit. And, if the sampled "a" takes on all values 0-7, the coverage is 4/7 => 57.1% Answer ----- Original Message ----- From: "Swapnajit Chakraborti" <swapnaj@cadence.com> To: <sv-ec@eda.org> Sent: Friday, April 29, 2005 7:17 AM Subject: [sv-ec] Query on illegal/ignore_bins If the user specifies only ignore_bins with a coverpoint, what will be the behavior? Consider the following example: reg [2:0] a; coverpoint a { ignore_bins ig_bins = {0, 1, 2}; } LRM clearly says that (section 20.4.4) values 0, 1 & 2 will not be considered(ignored) during sampling. What LRM does not clarify is what happens for the values which are not ignored, e.g. 3, 4, 5, 6 & 7. Should we interpret the above declaration as an automatic bin declaration for coverpoint a and create bins for the values which are not ignored. This implies we create auto[3], auto[4] etc. depending on whether these values occurred during simulation and were sampled. This makes sense since if we do not create auto bins, specifying ignore_bins doesn't serve any purpose. But this is in contradiction with how automatic bins are specified. For your convenience, I have given a couple of examples of how automatic bins are specified. coverpoint a; coverpoint b { option.auto_bin_max = 7; } coverpoint c { type_option.weight = 7; } In all the above three cases, automatic bins are created. Note that the basic criteria is that no user-defined bins are specified. Now as soon as user specifies a bin with ignore_bins keyword, as per LRM its an user-defined bin. So if we create an automatic bin in this case, it may be confusing. This applies to illegal_bins as well. I believe this needs to be clarified in LRM. Thx, Swapnajit.Received on Mon May 2 16:36:19 2005
This archive was generated by hypermail 2.1.8 : Mon May 02 2005 - 16:36:35 PDT