нам поручено создать некоторый код, который бы повернул два входа (A & B) и использовал следующую формулу для получения результата (X ^ 2 + 1). Мы считаем, что мы на правильном пути, но продолжаем получать код ошибки «Нет объявления функции для оператора« + »», и мы не знаем, почему добавление + 1 не работает.
library ieee;
use ieee.std_logic_1164.all;
use IEEE.math_real.all;
entity binary is
Port (A,B:in std_logic;
output:out std_logic);
end binary;
architecture behaviour of binary is
begin
process (A,B)
begin
if (A = '0') and (B = '0') then
output <= ((0 ** 2) + 1);
output <= output + 1;
elsif (A = '1') and (B = '0') then
output <= ((1 ** 2) + 1);
elsif (A = '0') and (B = '1') then
output <= ((2 ** 2) + 1);
elsif(A = '1') and (B = '1') then
output <= ((3 ** 2) + 1);
end if;
end process;
end behaviour;
Мы новички в GHDL и понятия не имеем, что делаем. Любая помощь или конструктивная критика приветствуется.
Таким образом, чтобы уточнить значение +1 ниже, каждый оператор if вызывает проблемы.