Timing vectors are used to pass execution of time-dependent operations
from firmware/software to a hardware component (e.g., a state machine).
These vectors may be stored as a vector table in a data memory that is
accessible by both the firmware/software and the hardware component.
Based on the processing being performed in the system, the
firmware/software will determine that one or more operations are to be
performed at a certain time. The firmware/software stores a reference to
that time and the operation(s) in a vector. The hardware component
monitors time in the system and the vectors to determine whether the
current time matches the time associated with a given vector. When there
is a match, the hardware component causes the operation(s) associated
with the vector to be performed. The system also may perform different
operations at a given time depending on the operating condition (e.g.,
state) of the system.