Equivalent Processes

-- Notes Page --


A process with a sensitivity list, as shown in the process on the left, is implemented as a wait on "sensitivity list" at the bottom of the process (as shown in the process on the right). This allows every process with a sensitivity list to execute once at the beginning of a simulation and suspend at the bottom waiting for a a relevant signal event to occur. Note that the VHDL standard prohibits the use of both process sensitivity lists and wait statements within the same process.

This should help clarify how a process works. When the simulation begins at time=0, all processes execute until a wait statement is reached. If the wait statement is at the end of the process, the behavior is exactly as if a sensitivity list were used. The wait statement prevents the process from immediately executing from the beginning again. Rather, it waits until one or more of the signals in the wait statement change value.