Begin

LRM §9.8.1.

The begin-end groups statements together, so that they execute sequentially.

Syntax:

begin [ : label
  [ local_declarations ] ]
  statement
end 

Description:

The begin-end groups statements together sequentially, so that statements are evaluated in the order they are listed. Timing controls are relative to the previous statement. The begin-end block completes when the last statement has completed.

A begin-end must have a label (name) when it contains local declarations, or will be disabled with the disable keyword.

The local declarations must be a register data type or parameter.

Example:

begin: l1
  integer I;
  for (I = 0; I < 4; I = I + 1)
    #Delay (A, B) = I;
end

Notes:

See also:

Always, Fork, Initial