如果有人知道我如何以更通用的方式在 vhdl 中声明以下 case 语句,那将是非常有用的。这里 currentRdLineBuffer 和 lineBuffRdData 有 4 个元素,将来如果我想使用更多元素,我想将它声明为通用的。 我正在尝试寻找其他方式以 genri 方式声明但尚未成功。
提前致谢
signal currentRdLineBuffer : std_logic_vector(1 downto 0);
signal lineBuffRdData : std_logic_vector(3 downto 0);
process(currentRdLineBuffer,delay_rd_line_buffer)
begin
case currentRdLineBuffer is
when "00" =>
lineBuffRdData(0) <= delay_rd_line_buffer;
lineBuffRdData(1) <= delay_rd_line_buffer;
lineBuffRdData(2) <= delay_rd_line_buffer;
lineBuffRdData(3) <= '0';
when "01" =>
lineBuffRdData(0) <= '0';
lineBuffRdData(1) <= delay_rd_line_buffer;
lineBuffRdData(2) <= delay_rd_line_buffer;
lineBuffRdData(3) <= delay_rd_line_buffer;
when "10" =>
lineBuffRdData(0) <= delay_rd_line_buffer;
lineBuffRdData(1) <= '0';
lineBuffRdData(2) <= delay_rd_line_buffer;
lineBuffRdData(3) <= delay_rd_line_buffer;
when "11" =>
lineBuffRdData(0) <= delay_rd_line_buffer;
lineBuffRdData(1) <= delay_rd_line_buffer;
lineBuffRdData(2) <= '0';
lineBuffRdData(3) <= delay_rd_line_buffer;
when others => null;
end case;
end process;
如何以更通用的方式在 vhdl 中声明以下 case 语句