[an error occurred while processing this directive]
|
Я пытался синтезировать (в Synplify Pro 7.0) такую конструкцию:
library IEEE;
use IEEE.STD_LOGIC_1164.all;
entity Test is
port(
x : in std_logic_vector (3 downto 0);
y : out std_logic);
end Test;
architecture Test_arch of Test is
begin
process(x)
begin
case x is
when "1XX0" => y <= '1';
when "0001" => y <= '1';
when others => y <= '0';
end case;
end process;
end Test_arch;
В результате синтезатор игнорирует "1XX0" и получается y = x(0)and(not(x(1))and(not(x(2))and(not(x(3))
Если строку when "0001" => y <= '1' убрать, то получается y = 0
Может кто знает способы задания в VHDL альтернатив вроде "1XX0" ?
E-mail: info@telesys.ru