起绒工具不喜欢以下代码块,因为它认为在for..generate范围内声明的信号具有多个驱动程序。凭直觉,我希望对于每个信号声明,循环的每次迭代都存在一个信号实例。
棉绒机坏了吗,还是VHDL语言坏了?
library IEEE;
use IEEE.std_logic_1164.all;
entity demo is
end demo;
architecture rtl of demo is
type i_arr_t is array(integer range <>) of integer;
signal results: i_arr_t(0 to 1);
signal dot : integer;
begin
g_gen : for ii in 0 to 1 generate
signal sig : integer;
begin
sig <= ii * 2;
results(ii) <= sig;
end generate;
dot <= results(0) + results(1);
end rtl;
错误消息:Non-resolved signal 'sig' has multiple drivers