Assertions
Assertions in any form are ignored by the synthesis software.
Loops
The for loop is a special case of the general loop mechanism in
VHDL and synthesis requires that the range of the loop must be
defined as a static value, globally. This means that you cannot use
variables to define the range of the for loop ‘on the fly’for synthesis.
If a while loop is implemented, then there has to be a wait state-
ment in the loop somewhere – otherwise it becomes a potentially
infinite loop.
Some interesting cases where synthesis may fail
Unfortunately, there are differences between synthesis software
packages and so care must be taken to ensure interoperability ...