2015-09-03 4 views
0

В моем OVM testbench.sv, я добавил код в нижней части модуля, чтобы заставить и освободить внутренние сигналы. Однако этот код занимает место. Какие параметры у меня есть для ввода кода в другой файл? Должен ли я помещать код в другой .sv и связывать его testbench?Где я должен помещать код вместо тестового сайта верхнего уровня?

+0

Вам нужно подробнее объяснить, в чем проблема с тем, что он занимает _space_. Это займет одно и то же место без матера, где вы его поместите, а использование ** bind ** конструкции добавит еще большую сложность. –

+0

Я понял, что тестовый стенд будет предназначен для создания экземпляра тестирующего устройства и подключения интерфейсов, а не для какой-либо логики. Логика, необходимая для этого принудительного и освобождения внутренних сигналов, принадлежала в начальном блоке. Сотрудник предположил, что этот код будет лучше вписываться в base_test, поскольку это будет сделано во всех тестах. –

+0

Так что, я думаю, я искал места, где этот код мог или должен быть. –

ответ

0

Если вы просто хотите скрыть этот код от модуля верхнего уровня, вы можете поместить его в файл include `include d модулем testbench верхнего уровня.

Вы можете поместить свой код в отдельный модуль верхнего уровня. Все иерархические ссылки на внутренние сигналы DUT начинаются с другого модуля верхнего уровня, который создает экземпляр тестируемого объекта.

Вы также можете поместить свой код в модуль или группу модулей и связать его с модулем DUT. Если вы можете разделить свой код на группы для разных блоков в тестировании, вы можете привязать каждый модуль к этому блоку. Это позволит вам повторять одни и те же иерархические пути снова и снова.

Смежные вопросы