Это похоже на проблему XY . Оператор Verilog :+
(или -:
) - это своего рода хак, чтобы обойти тот факт, что такие вещи:
S(some_variable to some_other_variable)
законно в VHDL, но это:
S[some_variable:some_other_variable]
незаконно в Верилоге. Как правило, вы хотите сделать что-то более похожее на это:
S[some_variable:some_variable-7]
но это также незаконно в Verilog. Но вы можете, как вы знаете, сделать это:
S[some_variable-:8]
вместо этого. Итак, в VHDL вам не нужен оператор +:
(или -:
), вы можете просто сделать что-то вроде этого:
S(some_variable downto some_variable-7)