У меня очень простая проблема с оператором в VHDL. Я пытаюсь сравнить некоторые входы с логическими операторами, но получить сообщение об ошибке ...Проблема с логическим оператором VHDL
entity test is
port (
paddr : in std_logic_vector(15 downto 0);
psel : in std_logic;
penable : in std_logic;
pwrite : in std_logic
);
end entity test;
signal wrfifo_full : std_logic;
process (paddr, psel, penable, pwrite, wrfifo_full) is
begin
if (((paddr(8 downto 2) = "1000000")) and (psel and penable) and (pwrite and not(wrfifo_full))) then
dt_fifo_wr_i <= '1';
else
dt_fifo_wr_i <= '0';
end if;
конец процесса;
Unfortuantely, я получаю то следующее сообщение об ошибке:
если (((paddr (8 Downto 2) = "1 миллион")) и (Псел и penable) и (pwrite и (wrfifo_full))) затем | ncvhdl_p: * E, OPTYMM (ЛВП/VHDL/test.vhd, 523 | 43): оператор типа аргумента несоответствие 87 [4.3.3.2] 93 [4.3.2.2] [7,2]
Во всяком случае видит проблему?
Приветствия
Спасибо, ребята, он работает сейчас! Помните об этом! – Martin
Отлично, не могли бы вы отметить вопрос? – George