Finite State Machine Controller Synchronization via Readiness Voting

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Synchronizing multiple asynchronous finite state machines in systems is complicated due to differing operation times, leading to potential loss of synchronization and catastrophic failures if not managed properly.

Innovation Solution

A method where a controller determines the operational state of each finite state machine, ensuring unanimous readiness before proceeding, with machines voting on readiness and using a bias circuit to manage input and output signals, and transitioning to an offline state if incompatible, thereby preventing system malfunctions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple asynchronous finite state machines operate in parallel with differing operation times, then system functionality and productivity are improved, but synchronization complexity and reliability deteriorate

Engineering Contradiction:
Improvesystem functionalityVSAvoidsynchronization stability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements a feedback mechanism where each finite state machine reports its readiness status to a control logic unit. The control logic continuously monitors the operational state of all state machines and uses this feedback to determine when all machines are ready to proceed together. This feedback loop enables coordinated operation without requiring strict synchronous timing, thus maintaining both productivity and reliability.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The control logic unit serves as an intermediary between multiple asynchronous finite state machines. It receives readiness signals from each state machine, processes this information, and generates a unified proceed signal when all machines are ready. This intermediary coordinate mechanism allows state machines with different operation times to work together reliably without direct synchronization requirements.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If strict synchronization is enforced among finite state machines, then reliability is improved, but operation complexity and time loss increase

Engineering Contradiction:
Improvesynchronization stabilityVSAvoidcontrol complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the synchronization function into two independent parts: (1) each finite state machine independently manages its own operational state and readiness determination, and (2) the control logic independently collects readiness signals and generates the proceed signal. This segmentation eliminates the need for complex inter-machine communication and coordination protocols, reducing overall system complexity while maintaining reliability.

Inventive Principle:
Principle #1Segmentation

3Measurement precision

If readiness voting is implemented among finite state machines, then synchronization accuracy is improved, but operation time and complexity increase

Engineering Contradiction:
Improvesynchronization accuracyVSAvoidoperation time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent implements preliminary action by having each finite state machine evaluate its readiness status in advance before the coordinated operation point. Each machine prepares its readiness signal ahead of time, allowing the control logic to simply collect and evaluate these pre-prepared signals without requiring time-consuming runtime negotiations or complex voting algorithms during critical operation windows.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8266486B2Preventing erroneous operation in a system which may enable unsupported features
Publication Date: 2012.09.11 TEXAS INSTRUMENTS INC
  • US8266486B2 patent drawing
  • US8266486B2 patent drawing
  • US8266486B2 patent drawing

AI summary

This invention is a method of operating a system having multiple finite state machines and a controller controlling an operational state of each finite state machine. Upon selection by the controller of a changed operational state, each finite state machine determines if it supports the changed operational state. If the finite state machine supports the changed operational state, it enters the changed operational state. If the finite state machine does not support the changed operational state, it enters an offline state. The controller may also determine whether a changed operational state is supported by each finite state machine.