Block Statements - 2022.1 English

Vivado Design Suite User Guide: Synthesis (UG901)

Document ID
Release Date
2022.1 English

Block statements provide a mechanism to group sets of statements together. Sequential blocks have a begin and end around the statement. The block can declare its own variables, and those variables are specific to that block. The sequential block can also have a name associated with that block. The format is as follows:

begin [: block name]



end [: block name]


begin : my_block

logic temp;

temp = in1 & in2;

out1 = temp;

end : my_block

In the previous example, the block name is also specified after the end statement. This makes the code more readable, but it is not required.

Note:   Parallel blocks (or fork join blocks) are not supported in Vivado synthesis.