1. A reconfigurable state machine comprising a current state register, for storing a current state, and at least one programmable entry per state of the state machine, wherein each programmable entry comprises: a plurality of external signal inputs; a current state tag corresponding to the respective state of the state machine; at least one next state condition associated with the current state tag; a respective next state output for each of the next state conditions in the respective entry; and a next state match circuit, which compares the current state with the current state tag and the each of the next state conditions with at least one of the external signal inputs to produce a next state match output.