У меня есть код верхнего уровня, который генерирует значения для сигнала с именем cntr.
Я пытаюсь создать простой экземпляр, который будет считывать это значение cntr, изменять это значение и отправлять его на светодиоды, чтобы я мог видетьповедение.Вот код для моего сабвуфера, написанный ниже.
В коде верхнего уровня у меня GPIO_LED определен как OUT (slv), а cntr определен как сигнал (slv).
В последней строке кода в подпрограмме вы можете увидеть экземпляр, который я поместил на верхний уровень.
Когда я компилирую, я получаю сообщение об ошибке, формального "cntr" не существует.
Как мне заставить мою сабвуфер читать сигнал, генерируемый верхним уровнем?
entity xfer is
Port (GPIO_LED: out std_logic_vector(7 downto 0));
end entity xfer;
architecture rtl of xfer is
signal cntr: std_logic_vector(31 downto 0);
begin
GPIO_LED(7 downto 0) <= cntr(27 downto 20) and "11111111";
end rtl;
--This goes in top level.
--xfer_inst: entity work.xfer port map (GPIO_LED => GPIO_LED, cntr=> cntr);