Event-Driven State Machine Sequencer with Priority Scheduling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing communication systems face challenges in efficiently scheduling and executing state machines in communication devices, particularly in cellular phones, due to complex event-driven processes that require flexible, scalable, and modular solutions to manage multiple state machines with varying priorities and occurrence patterns.

Innovation Solution

The method involves defining multiple state machines with relative priorities and state conditions based on events, using a sequencer to monitor and evaluate these conditions, and scheduling their execution accordingly, with the ability to trigger hardware or software modules and manage instances across different time frames within communication protocols.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple state machines are executed with flexible scheduling based on event priorities, then the responsiveness and adaptability of the communication device is improved, but the scheduling complexity and computational overhead increase

Engineering Contradiction:
Improveresponsiveness to eventsVSAvoidscheduling complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system segments the state machine execution by creating separate priority queues for different priority levels (high, medium, low). Each queue independently manages state machines of its priority level, dividing the complex scheduling problem into manageable segments that can be processed sequentially according to priority.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system changes the scheduling parameter from simple FIFO (first-in-first-out) to priority-based scheduling. Each state machine is assigned a priority parameter, and the scheduler dynamically adjusts execution order based on this parameter, allowing critical events to be processed immediately while less urgent events wait in lower-priority queues.

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If state machines are triggered based on complex event patterns over multiple time frames, then the precision of event detection is improved, but the processing time and computational load increase

Engineering Contradiction:
Improveevent detection precisionVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-configuring event patterns and their associated state machines before runtime. Event patterns spanning multiple time frames are defined in advance, allowing the sequencer to efficiently match incoming events against predefined patterns without performing complex analysis in real-time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses periodic action by evaluating event patterns at regular intervals corresponding to communication protocol time frames. The sequencer checks whether accumulated events over multiple periods match defined patterns, transforming continuous complex monitoring into discrete periodic evaluations that are computationally efficient.

Inventive Principle:
Principle #19Periodic action

3Productivity

If relative priorities are defined for different subsets of state machines based on different events, then the execution efficiency is improved, but the system configuration complexity increases

Engineering Contradiction:
Improveexecution efficiencyVSAvoidconfiguration complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system implements a universal priority assignment mechanism that works across all state machines and event types. The same priority queue structure and scheduling logic handle different event subsets uniformly, allowing the system to manage complexity through a single versatile framework rather than multiple specialized mechanisms.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The priority configuration is made dynamic, allowing different priority assignments for different event types without requiring static rigid structures. The system can adapt priority levels based on the specific event being processed, enabling efficient execution where critical events automatically receive higher priority while less critical events use lower priorities.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8930965B1Event-driven state-machine sequencer
Publication Date: 2015.01.06 MARVELL ASIA PTE LTD
  • US8930965B1 patent drawing
  • US8930965B1 patent drawing
  • US8930965B1 patent drawing

AI summary

A method includes, in a communication device, defining multiple state machines including states and respective state conditions that depend on a set of events. Relative priorities are defined, to be applied among the state machines in scheduling the state machines for execution in response to the events. The events are monitored and the state conditions are evaluated based on the monitored events. The state machines are executed based on the evaluated state conditions using a scheduling order that depends on the priorities.