我一直在搜索,但找不到任何有用的信息,所以我想它不受支持。。。
我有一个类似的结构
SIGNAL container : STD_LOGIC_VECTOR((2*total)-1 DOWNTO 0);
SIGNAL storage : STD_LOGIC_VECTOR(total-1 DOWNTO 0);
copy : FOR a in 0 to total-1 GENERATE
first_set : IF a < 10 GENERATE
storage(a) <= container(a);
END GENERATE;
second_set : IF a > 9 GENERATE
storage(a) <= container(a+10);
END GENERATE;
END GENERATE;
所以我想把两个子向量连接成一个新的子向量,但如果first_set
条件是False
,有没有办法使用ELSE
?类似的东西
SIGNAL container : STD_LOGIC_VECTOR((2*total)-1 DOWNTO 0);
SIGNAL storage : STD_LOGIC_VECTOR(total-1 DOWNTO 0);
copy : FOR a in 0 to total-1 GENERATE
first_set : IF a < 10 GENERATE
storage(a) <= container(a);
ELSE
storage(a) <= container(a+10);
END GENERATE;
END GENERATE;
如果。。elsif。。在vhdl 2008中添加了else-generate。案例generate也被添加。