Покрытие Specman: Как охватить диапазон значений в списке?

У меня есть список структур my_list:

struct my_struct {
    comparator[2] : list of uint;
};
my_list[10] : list of my_struct;

Значения всех компараторов настраиваются время от времени. Я хотел бы собрать диапазон всех настроенных компараторов, т. Е. Не имеет значения, какой из компараторов, что-то вроде этого:

cover comparators_were_cofigured_event is {  
    item configured_comparators : uint = my_list??? using //How to define the item so the range will relate to all comparators values?
            ranges = {
               range([0..50], "Small values");
               range([51..100], "Big values");
            };
};

Как определить элемент покрытия, чтобы диапазоны работали с каждым значением в списке? Спасибо за помощь

1 ответ

Это невозможно Вы можете определять элементы только по скалярным значениям. Что вы хотите сделать, это определить элемент для каждого элемента в списке:

item configured_comparator0_0 : uint = my_list[0][0] using
  ranges = {
    range([0..50], "Small values");
    range([51..100], "Big values");
  };

// ... so on for each item

Вы можете упростить свою жизнь, используя макрос для расширения кода.

Другие вопросы по тегам