Я разрабатываю дизайн ( VHDL ) для Intel Max II CPLD , используемого на плате разработки для тестирования. Позже это, скорее всего, будет заменено на Coolrunner II CPLD .
Я довольно новичок в этом. Basi c компиляция и симуляция с использованием Quartus Prime Lite и Modelsim работает нормально. Мой текущий дизайн выглядит следующим образом:
-- The top level entity used for synthesis.
entity foo is
port(...)
end foo;
architecture rtl of foo is
...
begin:
...
end rtl;
-- The top level entity used for simulation producing some test input signals.
entity foo_tb is
end foo_tb;
architecture behave of foo_tb is
...
component foo is
port (...);
end component foo;
begin:
UUT : foo
port map (...);
...
end behave;
Глядя на итоговое (RTL) моделирование, я не смог обнаружить никаких задержек сигнала, которые могли бы быть на реальном оборудовании, только поведение, которое я указал в architecture behave of foo_tb
и architecture rtl of foo
.
Но я ожидал, что процесс компиляции произведет синтез, а затем сгенерирует некоторый VHDL-код , содержащий что-то вроде architecture <some_name> of foo
для целей моделирования, который моделирует поведение реального оборудования с наихудшим поведением синхронизации, учитывающим синтез.
- Генерируется ли такой VHDL-код?
Если генерируется такой VHDL-код:
Где я могу найти полученные
VHDL файлы? Как я могу использовать его из
architecture behave of foo_tb
Если такой VHDL-код НЕ генерируется:
как я могу делать симуляции, используя детальную временную модель моего проекта, которая является результатом конкретного синтеза по конкретному c
CPLD ? Как я могу программно генерировать входные сигналы для такая симуляция? Как программно проверить правильность выходных сигналов такого моделирования?