Использование внешних имен в тестовом стенде VHDL

Я пишу тестовый стенд VHDL с самопроверкой и хочу отслеживать внутренний сигнал проекта, который не направляется на порт. Я хочу использовать внешние сигналы, чтобы испытательный стенд мог видеть эти сигналы, но Vivado выдает мне синтаксические ошибки. Синтаксические ошибки просто говорят «Ошибка» рядом с «‹» и «›». Я собираюсь объявить этот сигнал в своей архитектуре следующим образом:

alias DATA is <<signal .tb_filename.design_filename.signal_name : std_logic_vector(31 downto 0) >>;

Это правильный способ использования внешних имен?


person Aegabberty    schedule 30.06.2020    source источник
comment
Дали ли вы компилятору правильный переключатель, чтобы сообщить ему, что вы хотите использовать VHDL-2008?   -  person Matthew Taylor    schedule 30.06.2020
comment
@ Мэтью Тейлор, да. Я использую Vivado 2019, и цель моего проекта настроена на VHDL, поэтому я считаю, что он должен автоматически поддерживать VHDL 2008.   -  person Aegabberty    schedule 30.06.2020
comment
Нет. Вивадо нужно сказать. Vivado считает VHDL-2008 отдельным языковым вариантом для VHDL. Вам нужно настроить его для каждого файла в параметрах источника.   -  person Matthew Taylor    schedule 30.06.2020
comment
Vivado по умолчанию загружает файлы как VHDL93 (утверждает, что это 2002 год, но это не так). Вы либо должны установить его вручную в графическом интерфейсе, либо если вы используете tcl read_vhdl -vhdl2008 <file.vhd> при создании проекта. Если вы хотите установить все в проекте на 2008 год, попробуйте set_property FILE_TYPE {VHDL 2008} [get_files *.vhd]. Также удачи с VHDL2008 в симуляторе - поддержки не хватает, а поддержка синтеза, наконец, довольно хороша.   -  person Tricky    schedule 30.06.2020
comment
Если у вас все еще есть проблемы, ознакомьтесь с сообщением: stackoverflow.com/questions/48347200/ кроме того, tb_filname должно быть именем объекта testbench, а design_filename должно быть меткой экземпляра сущности файла проекта.   -  person Jim Lewis    schedule 01.07.2020
comment
UG900 Logic Simulation v2019.1 Приложение C Таблица C-1 Поддерживаемые функции VHDL 2008 (IEEE1076-2008 Говорит, что это должно поддерживаться, функция называется Hierarchical references to signal). Синтаксис в примере соответствует вашему вопросу.   -  person    schedule 01.07.2020