So far we have allowed only a single node to update or fire at any
time step. All nodes are possible candidates for update and so they
operate *asynchronously*; that is, there is no coordination
between them in time. The other extreme case occurs if we make all
nodes fire at the same time, in which case we say there is *synchronous* update. To do this, we must ensure that each nodes
previous output is available to the rest of the net until all nodes
have evaluated their activation and been updated. It is therefore
necessary to store both the current state vector *and* the next
state vector. The behaviour is now deterministic; given any state, a
state transition occurs to a well defined next state, there being no
probabilistic behaviour. The analysis, in terms of energy changes at
each update, given above no longer applies but there is now a
simplified type of state diagram in which only a single arc emerges
from any state. This allows us to predict, once again, the general
type of behaviour. In particular, state-cycles occur again but now
there is the possibility for *multiple-state cycles*.

**state diagrams for synchronous update**

These may be useful in storing sequences of events or patterns. A little thought will show that the (single) state cycles remain the same under synchronous dynamics so the single stored patterns remain the same under both dynamics.