При запуске моделирования Quartus анализирует все файлы, указанные в настройках проекта (доступно через меню Назначение -> Настройки -> Файлы). Но, это разрабатывает только объекты, необходимые для тестирования, начиная с объекта верхнего уровня (см. Меню Назначение -> Настройки -> Общие). Например, в моем тестовом проекте top
указывается объект объекта DUT и my_testbench
и only_for_simulation
требуются только для моделирования. Это выход из Quartus в окне сообщений после запуска моделирования:
Info (12021): Найдено 2 конструкторских подразделений, в том числе 1 лиц, в источнике файла my_testbench.vhdl
Info (12021) : Найдено 2 проектных единиц, в том числе 1 лиц, в исходном файле top.vhdl
информация (12021): Найдено 2 проектных единиц, в том числе 1 лиц, в источнике файл only_for_simulation.vhdl
в о (12127): Разрабатывая сущность «сверху» для иерархии верхнего уровня
только файлы, которые хранят объекты, найденные во время разработки автоматически добавляются в скрипт для запуска ModelSim тренажера. Таким образом, не имеет значения, указаны ли в качестве файлов проекта my_testbench
и only_for_simulation
. Дальнейшие файлы моделирования должны быть всегда, указанные в задании . Доступно через меню Назначение -> Настройки -> Моделирование -> Скомпилировать стенд -> Испытательные стенды -> Создать/Изменить. Там вы должны указать файлы, хранящие my_testbench
и only_for_simulation
. И вы должны перечислить их в правильном порядке компиляции, то есть only_for_simulation
до my_testbench
. В этом диалоговом окне вы также можете установить библиотеку от only_for_simulation
до mylib
через Свойства. Вот скриншот моей установки тестового стенда.
Сформированный ModelSim сценарий хранится в подкаталоге моделирования/ModelSim в файле с расширением .do
. В нем перечислены все файлы, которые должны быть скомпилированы ModelSim. И ModelSim компилирует их только в данном порядке.
Является ли дополнительный компонент записанным в файле testbench или отдельным файлом? –
Похоже, вы не скомпилировали 'only_for_simulation' в' mylib'. Вы скомпилировали его в библиотеку 'work' по умолчанию? –
@MartinZabel: да, его дополнительный файл @BrianDrummond: Я добавил его в 'mylib'. Если я перейду к представлению 'Design Units', этот файл находится в правой библиотеке. Но, возможно, он не компилируется. Как сказать Quartus для компиляции этого файла также только для симуляции? – alabamajack