(Пример: пакет FormulPro ф. MentorGraphics, пакеты фирмы Verplex, www.verplex.com)
На что проверяем:
Способ проведения проверки:
![]() |
Покрытие в электронике (Coverage) является одной из разновидностей метрик проекта, которая сообщает, если определённые аспекты проекта были правильно выполнены во время процедуры тестирования. |
Необходимое условие : Управляемость (выполняется строка или переход)
Достаточное условие : Наблюдаемость (результат исполнения влияет на выход сравниваемый с эталоном)
Команда для компиляции
vcom +cover=bcsxf -work $wlibname $name
Ключевое слово +cover и после него строка из букв каждая из которых значит следующее:
Для запуска моделирования с покрытием нужно включить следующие опции:
Simulate->Start Simulation на закладке other поставить птичку enable code coverage
Команда для запуска
vsim -coverage
Для того чтобы база данных с информацие по покрытию сохранялась в файл после завершения моделирования, нужно выполнить след команду:
coverage save -onexit
Позволяет контролировать:
Могут быть выражены с помощью PSL (Property Specification Language – теперь включен в VHDL) или с помощью SVA (подмножество SystemVerilog Assertions – работает с VHDL через модули проверок (checker modules)).
Assertions – работает с VHDL через модули проверок (checker modules)).
--@clk rising_edge(CLK); --@psl sequence ack35_s is { rose(ACK) : (ACK='1')[*3 to 5] } ; --@psl sequence dvalid24_s is { rose(DVALID) : (DVALID='1')[*2 to 4] } ; --@psl sequence dvalid2inf_s is { fell(ACK) : (DVALID='1')[*2 to inf] } ; --@psl property ackdvalid_p is { ack35_s ; dvalid24_s ; dvalid2inf_s } ; --@psl ackdvalid_c: cover(ackdvalid_p) report "Sequence ACK/DVALID covered!";
Для компиляции проекта содержащего файл верификации утверждений выполняем команду:
vcom -93 DIGITAL_BLOCK.vhd -pslfile DIGITAL_PSL.psl
После параметра -pslfilee указываем имя или путь к файлу
Для запуска моделирования проекта содержащего файл верификации утверждений выполняем команду:
vsim имя_проекта
Для отключения выполнения проверок используем параметр -nopsl
vsim имя проекта -nopsl
Кроме полноты тестирования, одной из важных характеристик тестирующей программы являются:
Пример:
Данные типа signal в VHDL занимают на порядок!! больше места, чем variable, поэтому массивы данных большого объема в тестирующих модулях лучше объявлять с использованием variable.
Verilog расходует обычно в 4 раза меньше памяти на хранение одного бита данных, чем VHDL.
1. Три отдельных процесса требуют больше времени, чем те же операции объединенные в один процесс.
2. Использование языков C,C++,SystemC позволяет не несколько раз снизить расход памяти