我有一个VHDL设计问题。 我有N个相似的实体需要一些输入,他们每个产生一个STD_LOGIC输出 。VHDL位聚合
实施例:
entity example1 is
begin
...
result_1 : out std_logic;
end example1;
entity example2 is
begin
...
result_2 : out std_logic;
end example2;
...
我正在寻找一种方法来聚集所有在一个UNSIGNED那些单个位结果 - 使得V(I)= result_i保持结果信号V(N 1 DOWNTO 0)。
目前,我的做法是这样的:
entity ResultAggregation is
port (
result_1 : in std_logic;
result_2 : in std_logic;
aggregate_results : out unsigned(1 downto 0)
);
end ResultAggregation;
architecture Behavioral of ResultAggregation is
begin
aggregate_results <= result_2 & result_1;
end Behavioral;
我发现这种方法相当笨拙。我正在寻找的是一个更自动的解决方案,例如,我可以提供数字N,以便生成适当的引脚。
我知道这是一个相当普遍的问题,但如果有人知道一个聪明的解决方案,请 告诉我。
由于提前,
斯文