У меня в основном есть два вектора (тип: целое, подписанное, неподписанное, std_logic_vector, на самом деле не имеет значения для элементализации).Сумма динамического количества векторов
Vector 1 имеет статический размер 16 (равный 1 слову). Вектор 2 имеет динамический размер X * 16 (равно X словам) X - динамический параметр.
Теперь я хочу, чтобы иметь конструкцию, где я могу подвести X слова из вектора 2 в зависимости от параметра X.
STH. например:
vector_1 <= for i in 0 to X generate
vector_2(X*16+15 downto X*16) +
end generate;
Любой может представить себе что-то подобное в VHDL?
Приветствия, Штеффен
EDIT: Может быть, чтобы сделать его более ясным, что я хочу иметь:
accumulated_data <= std_logic_vector(signed(data_vector(0*16+15 downto 0*16)) +
signed(data_vector(1*16+15 downto 1*16)) +
...
signed(data_vector(X*16+15 downto X*16))
);
X является статическим на синтезаторе.
Должно ли 'X' быть в состоянии изменить во время выполнения? У вас не может быть синтезируемой конструкции VHDL, размер которой динамичен во время выполнения. –
нет, X статичен при синтезе – Spyro
Насколько велика была бы 'X'? Можно ли использовать ресурс блока памяти Vector 2? –