Использование always_* вместо базового always рекомендуется в SystemVerilog, так как это делает код более читаемым, безопасным и удобным для анализа инструментами. Например, если вы пишете комбинационную логику, лучше использовать always_comb, а для триггеров — always_ff. Это помогает избежать ошибок и упрощает процесс верификации.
Разница заключается в том, что always является универсальным блоком, тогда как always_comb, always_ff и always_latch предназначены для конкретных типов логики (комбинационной, триггерной и защёлочной соответственно), автоматически управляют списками чувствительности и улучшают читаемость и безопасность кода.