Фигурные скобки, перед которыми стоит параметр, называются оператором репликации .
assign result = {WIDTH{input}};
делает WIDTH
копии 1-битного input
-сигнала и присваивает его выходному сигналу WIDTH-бита result
. Это означает, что input
не влияет на параметр, как вы подозревали в своем вопросе. Скорее, этот параметр влияет на количество копий input
.
Для справки в будущем также обратитесь к SystemVerilog LRM . Простые вопросы, связанные с синтаксисом, подобные вашим, можно легко найти в этом документе. Например, взгляните на Раздел 11.4.12.1 Операция репликации в документе, на который я ссылался.