API Description | Functions
STATE MACHINE API

Overview

The State Machine API consists of the TRANSITION, CONDITIONAL_TRANSITION, REGISTER_FOR_EVENT and FIRE_EVENT API calls whose primary responsibility is to create state machine transitions. The TRANSITION procedure call schedules a state machine transition solely as a function of time whereas the CONDITIONAL_TRANSITION procedure call is used to schedule a state transition that is dependent on the change of an input signal. Synchronization between state machines are handled through the use of the REGISTER_FOR_EVENT and FIRE_EVENT procedure calls.

Other procedure calls, such the CONFIGURE_COUNTER, MONITOR_RISING_EDGES, MONITOR_FALLING_EDGES, READ_FIFO_DATA, WRITE_FIFO_DATA are also loosely coupled to the State Machine API. Each call contains a transition_state parameter which has the capability of causing a state transition when an action is completed.

See also
COMMUNICATIONS API
COUNTER API
EDGE DETECTION API
SHIFT REGISTER API
STATE MACHINE CONSTRUCTION

API Description

 TRANSITION
 Procedure to schedule a state machine transition (overloaded)
 
 CONDITIONAL_TRANSITION
 Procedure for transitioning to a state machine state in response to signal change (overloaded)
 
 FIRE_EVENT
 Procedure for firing a framework event signal (overloaded)
 
 REGISTER_FOR_EVENT
 Procedure receiving a framework event signal (overloaded)
 

Procedures

  CONDITIONAL_TRANSITION(
priority_index: in PRIORITY_INTEGER
condition: in boolean
transition_state: STATE_INTEGER
signal next_state_rec: out NSR
state_reg_rec: in SRR
trigger_time: in time
)
  CONDITIONAL_TRANSITION(
priority_index: in PRIORITY_INTEGER
condition: in boolean
transition_state: STATE_INTEGER
signal next_state_rec: out NSR_ARRAY
state_reg_rec: in SRR_ARRAY
trigger_time: in time
)
  REGISTER_FOR_EVENT(
event_index: natural
transition_state: integer
signal next_state_rec: out NSR
state_reg_rec: in SRR
trigger_time: in time
)
  REGISTER_FOR_EVENT(
event_index: natural
transition_state: integer
signal next_state_rec: out NSR_ARRAY
state_reg_rec: in SRR_ARRAY
trigger_time: in time
)