Decentralized Real-Time Scheduling for Master-Device Coordination

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current distributed real-time systems with centralized control architectures struggle to coordinate control functions across multiple master devices, as they lack methods to schedule real-time streams exchanged between masters, leading to inefficiencies in data synchronization and timing.

Innovation Solution

A decentralized distributed real-time system is introduced, featuring a centralized configuration device that implements a schedule generator to receive temporal properties and associations from timed functions on multiple master devices, generating schedules for coordinated execution and stream transmission between master devices.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a centralized control architecture is used with one master device, then the schedule generation is simplified, but the system cannot distribute control functions among multiple masters

Engineering Contradiction:
Improveschedule generation complexityVSAvoidcontrol function distribution capability
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The control function is segmented and distributed across multiple master devices, with each master executing a portion of the control function. The schedule generator is divided into multiple instances, one on each master device, where each instance generates schedules for its local timed functions and coordinates with other master instances through inter-master streams.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system adds a new dimension to scheduling by introducing inter-master streams that operate between master devices. This creates a hierarchical scheduling structure where each master has its own schedule for local I/O operations, and additional coordination schedules for exchanging data with other masters, enabling distributed control while maintaining temporal coherence.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Adaptability or versatility

If control functions are distributed among multiple masters, then system versatility is improved, but coordination of real-time streams between masters becomes complex

Engineering Contradiction:
Improvecontrol function distribution capabilityVSAvoidstream coordination complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

Inter-master streams act as intermediaries for communication between master devices. Each stream is associated with a timed function and has defined temporal properties that mediate the coordination between masters. The stream schedule serves as a mediator that reconciles timing requirements from multiple timed functions across different masters.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system uses temporal properties as parameters to characterize timed functions and streams. By defining and manipulating these temporal parameters (periods, offsets, deadlines), the schedule generator can automatically coordinate streams between masters without complex manual configuration, transforming a complex coordination problem into a parameter-based scheduling problem.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If multiple master devices exchange real-time data, then system functionality is improved, but timing synchronization becomes difficult

Engineering Contradiction:
Improvedata exchange efficiencyVSAvoidsynchronization timing accuracy
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The schedule generator performs preliminary calculation of synchronization points before real-time operation. It determines the timing of input latching and output updating across all masters in advance, ensuring that all distributed I/O operations are synchronized to common time references. This preliminary scheduling eliminates runtime synchronization delays and maintains timing accuracy.

Inventive Principle:
Principle #10Preliminary action

4Reliability

If a common synchronization point is used for all slaves, then input/output synchronization is achieved, but the system cannot support decentralized control

Engineering Contradiction:
ImproveI/O synchronization reliabilityVSAvoiddecentralized control capability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The synchronization mechanism is segmented to work at multiple levels: each master maintains its own local synchronization for its attached slaves, while inter-master streams provide coordination between masters. This segmentation allows each master to independently synchronize its local I/O operations while still participating in distributed control, eliminating the need for a single centralized synchronization point.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10110679B2Timed functions for distributed decentralized real time systems
Publication Date: 2018.10.23 NATIONAL INSTRUMENTS CORP
  • US10110679B2 patent drawing
  • US10110679B2 patent drawing
  • US10110679B2 patent drawing

AI summary

Generating a schedule for a distributed real time system. At least one schedule generator may receive temporal properties from respective timed functions executing on master devices, where each master device is connected to a respective plurality of slave devices. Each master includes one or more timed functions configured to control timing of physical input and/or output operations for the respective plurality of slave devices, and streams between the master device and the respective plurality of slave devices. The schedule generator may receive associations between the timed functions and streams between master devices, and generate respective schedules for the masters based at least in part on the temporal properties and the associations. The respective schedules may be distributed to the master devices, and are useable by the master devices to control execution of the timed functions and the streams between the master devices in real time in a coordinated manner.