# VERILOG2122: "always_ff" block should not contain any blocking assignments for non-local variables ## Summary ```{raw} html
| Reliability | Security | Maintainability | Code attribute | Effort to fix | Tags |
|---|---|---|---|---|---|
| HIGH | - | - | Intentionality | Logical | 20min | synthesis, vscode, simulation, linter |
always_ff block should not contain any blocking assignments for non-local variables.
always_ff @(posedge clk) begin y = 0; // Noncompliant: Blocking assignment z <= 1; // Compliant: Non-blocking assignment int k; k = 42; // Compliant: Blocking assignment on local variable end
always_ff @(posedge clk) begin y = 0; // Compliant: Non-blocking assignment z <= 1; // Compliant: Non-blocking assignment int k; k = 42; // Compliant: Blocking assignment on local variable end