Control Logic
We consider systems that have event streams as inputs and outputs, where
EventStreams = [Naturals0 → Symbols]
where Symbols is some set. The events in the event streams indicate commands or events detected in a physical process. The system itself performs sequential decision making, reacting to input events by producing output events.
Consider for example a voiceband data modem in its negotiation phase. It is natural to describe the negotiation imperatively, using a sequence of if-then-else clauses:
if (answer tone detected) {
respond with identification tone;
if (response detected) {
...
}
} else {
hang up;
}
Here, "answer tone detected" and "response detected" are events. This imperative description gives the control logic of a system. It does not, for example, say anything about how an answer tone is detected. That is the signal processing of the system.
An imperative definition based on if-then-else clauses can be difficult to analyze, particularly when system components are composed and execute concurrently. State machine models offer an alternative that yields better to formal analysis.
Up to Topics
Previous
Next