Table of Contents

Static expression

Definition

There are two categories of static expressions.

An expression is called locally static if every operator in the expression is an implicit defined operator, if both operands and results are scalar and every primary in the expression is a locally static primary ; locally static primaries are:

An expression is called global static (not dynamically elaborated) if every in the expression is a pure function and every primary in the expression is a global static primary ; global static primaries are:

Comment

On text places where only “static” is used, locally or globally static can be inserted.

The rules for locally and globally static expressions imply that a constant or a generic may be initialised with a nonstatic expression; the constant itself may be a locally or globally static. Only interface constants, variables and signal declarations require static initialisation expressions.