是否可以向'with select'块中的信号添加条件对齐。例如
with state select
Data <= x"00" when IDLE,
(x"01" when Count = 0 else x"10") when DATA,
x"FF" when others;
这不能编译,但是可以在这个块中包含第二个变量吗?
答案 0 :(得分:1)
简短的回答是否定的。
你可以这样做。
process (Count, state)
variable countData : std_logic_vector (7 downto 0);
begin
if Count = 0 then
countData := x"01";
else
countData := x"10";
end if;
case state is
when IDLE => Data <= x"00";
when DATA => Data <= countData;
when others => Data <= x"FF";
end case;
end process;