Добавление testbench'ей на языке Verilog в проект Vivado — различия между версиями

Материал из SRNS
Перейти к: навигация, поиск
(Написание TB'ей)
(Написание TB'ей)
Строка 25: Строка 25:
 
== Написание TB'ей ==
 
== Написание TB'ей ==
  
Накидаем через GUI новый TB, а потом перенесем его в tcl-скрипт!  
+
Накидаем через GUI новый TB, а потом перенесем его в tcl-скрипт! Начнем с TB для модуля imichnl_synthesizer.
  
 
В ''Flow Navigator'' (это панель слева в Vivado) в разделе ''Project Manager'' выбираем ''Add Sources''
 
В ''Flow Navigator'' (это панель слева в Vivado) в разделе ''Project Manager'' выбираем ''Add Sources''
Строка 32: Строка 32:
 
Далее ''Add or create simulation sources''  
 
Далее ''Add or create simulation sources''  
 
[[file:20160404_vivado_revolution4.png|center]]
 
[[file:20160404_vivado_revolution4.png|center]]
 +
 +
В следующем окне создаем новый fileset для симуляции через ''Specify simulation set -> Create Simulation Set''.
 +
 +
'''ВНИМАНИЕ''' Не занимайте и не удаляйте файлсет sim_1. Vivado его очень любит и будет создавать заново, делая при этим активным. Лучше оставить sim_1 пустым.
 +
[[file:20160404_vivado_revolution6.png|center]]
 +
 +
Новому файлсету даем осмысленное название, например, ''sim_imichnl_synthesizer''
 +
[[file:20160404_vivado_revolution7.png|center]]
  
 
== Ссылки ==
 
== Ссылки ==

Версия 18:18, 4 апреля 2016

Содержание

Пусть у нас есть дизайн для Vivado, проект которого разворачивается в соответствии со статьей Vivado и Git. Возможно, это конечный дизайн, возможно - сабмодуль для другого дизайна. Процедура добавления test bench'ей (далее TB) отличаться не будет, поэтому дальнейшее рассмотрение продолжим на примере сабмодуля imitator.


Задача - добавить TB'и для модулей imitator'а, причем

  • они должны храниться в СКВ и быть доступны всем разработчикам,
  • имеются в виду TB'и на языке Verilog для симуляторов типа Vivado Simulator, ModelSim и т.д., а не тесты на языках Си или Matlab для Verilator'а.


Подопечные

Для конкретики, будем добавлять в дизайн imitator TB'и для двух модулей:

  • imichnl_synthesizer, отвечающий за фазу несущей,
  • imitator_channel, являющийся топ-модулем для одного канала имитатора и включающий в себя первый модуль.


Наша задача разбивается на несколько этапов:

  • написать код самих TB'ей, запустить, получить результаты,
  • понять, какие файлы охватывает TB,
  • внести изменения в скрипт регенерации проекта так, чтобы сохранились все настройки и файлы TB.

Приведу один из вариантов решения подзадач, не требующий знания tcl скриптов и опирающийся по-максимуму на GUI.

Написание TB'ей

Накидаем через GUI новый TB, а потом перенесем его в tcl-скрипт! Начнем с TB для модуля imichnl_synthesizer.

В Flow Navigator (это панель слева в Vivado) в разделе Project Manager выбираем Add Sources

20160404 vivado revolution5.png

Далее Add or create simulation sources

20160404 vivado revolution4.png

В следующем окне создаем новый fileset для симуляции через Specify simulation set -> Create Simulation Set.

ВНИМАНИЕ Не занимайте и не удаляйте файлсет sim_1. Vivado его очень любит и будет создавать заново, делая при этим активным. Лучше оставить sim_1 пустым.

20160404 vivado revolution6.png

Новому файлсету даем осмысленное название, например, sim_imichnl_synthesizer

20160404 vivado revolution7.png

Ссылки

Easyelectronics:TestBench на Verilog для новичков

Персональные инструменты
Пространства имён

Варианты
Действия
SRNS Wiki
Рабочие журналы
Приватный файлсервер
QNAP Сервер
Инструменты