Signal Assignment StatementsRevisited (Cont.)
Concurrent signal assignment : (cont.)
- If the target of the assignment is a signal of kind bus or register, it is a guarded target -- available inside blocks
- If the keyword GUARDED appears in the signal assignment statement, there are two possibilities for the assignment semantics :
- For guarded targets :
- For non-guarded targets :
Notes:
Recalling the previous presentation of VHDL BLOCKs and GUARDs, the target of a concurrent signal assignment statement containing the keyword GUARDED and appearing within a BLOCK statement is a guarded target. The use of BLOCKs and GUARDs allows guarded targets to have their signal drivers disconnected (i.e. turned off) so that another concurrent signal assignment statement to the same target signal can determine the signal’s value without the use of a VHDL Bus Resolution Function. This mechanism is analogous to the use of tri-state bus drivers in digital hardware designs.