Я использую QuestaSim, который предположительно совпадает с ModelSim, но 64-разрядный. Я пытаюсь запустить тестовый стенд для завтрашнего задания в классе. Задание выполнено, и все, что мне нужно, это испытательный стенд, но QuestaSim, как обычно, раздражает.
По какой-то причине файл тестового стенда просто НЕ БУДЕТ компилироваться. Я не могу понять, почему, хотя помню, как он работал с ModelSim в последний раз, когда я пробовал это.
Вот код тестового стенда.
library ieee;
use ieee.std_logic_1164.all;
entity test_bench is
end entity test_bench;
architecture lab1atest of test_bench is
signal X, Y, M: std_logic_vector (7 downto 0);
signal s: std_logic;
begin
dut : entity lab1a
port map ( X=>X, Y=>Y, s=>s, M=>M);
stimulus : process is
begin
X <= "10101010"; Y <= "01010101"; s <= '0'; wait for 20 ns;
s <= '1'; wait for 20 ns;
X <= "11110000"; wait for 20 ns;
s <= '0'; wait for 20 ns;
Y <= "00001111";
wait;
end process stimulus;
end architecture lab1atest;
Код lab1a.vhd я не могу опубликовать, потому что он должен быть отправлен для выполнения задания, и я не хочу, чтобы меня обвиняли в плагиате, но я знаю, что сущность lab1a наверняка существует в этом файле, и я делаю обязательно сначала скомпилируйте этот файл (хотя на всякий случай я пробовал и наоборот).
В дополнение к стандартному выбору файлов и запуску компиляции я также пробовал следующее:
vlib work;
vmap work work;
vcom lab1a.vhd;
vcom lab1atest.vhdl;
vsim work.lab1atest;
Оба вызывают одну и ту же ошибку.
Если кто-нибудь из вас знает, почему я получаю сообщение об ошибке, выделенное в заголовке, дайте мне знать. Мне кажется, что это невероятно простое решение, и в настоящее время я проклинаю дизайнеров указанного продукта за то, что они сделали его настолько неинтуитивным.