#vhdl #test-bench #ghdl #gtkwave
Вопрос:
Я пытаюсь запустить следующий код на GTKWave через командную строку (используя ghdl, написанный на VHDL). Я не понимаю, как я должен написать тестовый стенд (приведенный ниже код), чтобы я мог видеть все сигналы и переменные для простого кода.
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
ENTITY q2 IS
PORT( clk, a : IN STD_LOGIC;
b,c,d,e : OUT STD_LOGIC);
END q2;
ARCHITECTURE logic OF q2 IS
SIGNAL f : STD_LOGIC;
BEGIN
PROCESS(clk,a,f)
VARIABLE g : STD_LOGIC;
BEGIN
IF rising_edge(clk) THEN
b<=a;
f<=a;
e<=f;
c<=g;
g:=a;
END IF;
d<=f;
END PROCESS;
END ARCHITECTURE logic;
Испытательный стенд:
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
ENTITY tut2q6_sim is
END ENTITY tut2q6_sim;
ARCHITECTURE sim OF tut2q6_sim IS
SIGNAL clks,as,bs,cs,ds,es : STD_LOGIC;
BEGIN
tut2q6_0: entity work.tut2q6
port map(
clk => clks,
a => as,
b => bs,
c => cs,
d => ds,
e => es
);
PROCESS
BEGIN
clks <= '0';
wait for 1 ns;
clks <= '1';
wait for 1 ns;
END PROCESS;
END ARCHITECTURE sim;
Пожалуйста, не могли бы вы сообщить мне, где я ошибся или что мне нужно добавить, чтобы наблюдать за изменениями сигналов и переменных в GTKWave,
Заранее благодарю вас!