2015-03-10 2 views
0
Coveegroup x; 
    C: Coverpoint a {type_option.weight=0;} 
Endgroup 

Я хочу установить значение крышки C весом 0, для всех экземпляров covergroup x. Таким образом, я использовал type_option, так как опция - это, например, конкретные настройки.Опция & type_option в System Verilog

Я создал 4 объектов данного covergroup, но в каждом объекте, C считается для расчета покрытия, несмотря на установление его вес 0.

вещи отлично работает, когда я использую вариант, вместо type_option.

Пожалуйста, объясните мне причину этого.

+0

Возможно, ваш симулятор имеет ошибку. –

ответ

0

Как правило, в зоне покрытия учитывается не только процентное количество бункеров, покрытых в каждом отдельном экземпляре данной контрольной точки, но и совокупное покрытие этой контрольной точки над всеми экземплярами. Если вы посмотрите отчет о покрытии, сгенерированный большинством инструментов (я в основном знаком с VCS, но я уверен, что другие инструменты аналогичны в своих отчетах), вы увидите охват для всех экземпляров данной обложки в целом, а затем охват каждого экземпляра, разбитого по номерам номеров для каждого экземпляра.

Здесь, где type_option.weight и option.weight входите. type_option.weight - вес для этой контрольной точки в сводном отчете; установив его на 0, совокупный охват этой точки покрытия не будет подсчитываться ничем по отношению к совокупным номерам охвата; в то время как отдельные экземпляры по-прежнему имеют вес в своих номерах индивидуального охвата. option.weight - это вес для этой контрольной точки в каждом случае, поэтому установка ее на 0 сделает эту подсчетную точку ничтожной в охвате каждого экземпляра, но покровная точка по-прежнему будет рассчитывать на охват aggragate для этой группы. Установив оба значения в 0, эта точка покрытия не имеет веса в любом количестве; что может быть полезно, если вы только заботитесь об использовании этой контрольной точки в кресте и заботитесь только о том, как покрытие появляется на этом кресте.

См. Главу 19 в IEEE-1800 2012 SystemVerilog LRM (вероятно, это 19 ранних LRM, но Im смотрит на 2012 сейчас).

+0

Yup я тоже думал то же самое, но то, что я на самом деле обнаружил при анализе отчета о покрытии, type_option не повлияло на какое-либо покрытие (так что бит также учитывался как для отдельных экземпляров, так и для агрегата.), Но набор параметров что весовой коэффициент покрытия равен 0, для всех экземпляров и агрегирования. –