Невозможно сделать то, что вы хотите в синтезируемом коде.Кроме того, наличие большого блока ff обычно означает плохой стиль программирования verilog в любом случае.Вы должны попытаться разбить большой блок всегда на несколько отдельных меньших всегда _... блоков.
Цель синтезируемого кода verilog - описать поведение оборудования, которое вы хотите реализовать.В оборудовании нет «перерывов».Каждый блок Always_ff описывает флоп, возможно, с некоторой дополнительной логикой.Но в целом это должно выглядеть так:
always_ff @(posedge clk)
out <= in;
если вы добавите больше материала в блок, у вас должна быть очень веская причина для этого.Большие блоки FF заставят людей хмуриться.
Итак, опять же, вы должны разделить ваш Always_ff на набор флопов и комбинационной логики: always_ff и always_comb.Таким образом, вы сделаете его более читабельным и избежите множества проблем, которые могут возникнуть из-за больших блоков ff.