IEC 61499 Execution Engine with Parallel Environment Creation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing IEC 61499-compatible computing apparatuses face inefficiencies in resource utilization due to statefulness of execution engines and execution control charts, leading to blocking and reduced system throughput.

Innovation Solution

The implementation of a stateless event-function assignment mechanism and a second state control apparatus that allows the execution engine to create a second execution environment data set while a functional block is executed, enabling efficient resource utilization and preventing blocking.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of energy

If the execution engine is designed to be stateful and reuse existing execution environment data sets, then resource utilization efficiency improves, but system throughput deteriorates due to blocking when execution environments are occupied

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidsystem throughput
Core Design Contradiction:
Loss of energyVSProductivity

Solution Approach 1:

The execution engine is divided into multiple instances (first execution engine instance and second execution engine instance), each capable of independently creating and managing execution environment data sets. This segmentation allows parallel processing of different functional blocks without mutual blocking, as each instance can operate on different execution environments simultaneously.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The execution engine is designed to create a second execution environment data set in advance (before the first execution environment is fully utilized or while it is still being used). This preliminary creation of execution environments eliminates waiting time and prevents blocking, allowing functional blocks to be assigned to pre-prepared execution environments immediately when needed.

Inventive Principle:
Principle #10Preliminary action

2Stability of the object's composition

If the execution engine waits for the first execution environment to be free before creating a second one, then resource stability is maintained, but system responsiveness deteriorates due to waiting times

Engineering Contradiction:
Improveexecution environment stabilityVSAvoidwaiting time
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The execution engine creates the second execution environment data set before the first execution environment becomes free. This preliminary action eliminates the need for waiting, as the second execution environment is already prepared and available when needed, thus reducing loss of time while maintaining system stability through controlled concurrent creation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system transitions from a static, sequential execution model to a dynamic, concurrent model where multiple execution environment data sets can be created and managed simultaneously. The execution engine dynamically adjusts resource allocation by allowing overlapping creation and usage of execution environments, improving responsiveness without sacrificing stability.

Inventive Principle:
Principle #15Dynamics

3Productivity

If the execution control chart state is changed from occupied to free immediately upon function call, then system throughput improves by enabling concurrent executions, but reliability deteriorates due to potential premature state release

Engineering Contradiction:
Improvesystem throughputVSAvoidexecution control reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The execution control mechanism is segmented into separate state control apparatus for each execution engine instance and execution control chart. This segmentation allows independent state management, where the first execution engine instance and second execution engine instance can manage their respective execution control charts without interfering with each other, enabling concurrent operations while maintaining reliable state tracking for each instance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A second state control apparatus acts as an intermediary to manage the state transitions of execution control charts. This intermediary ensures that state changes from occupied to free are handled correctly and concurrently, preventing premature release while enabling parallel executions. The state control apparatus coordinates state management across multiple execution engine instances, maintaining reliability through controlled state transitions.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20250199514A1IEC 61499-part-compatible computing apparatus and operating method therefor
Publication Date: 2025.06.19 SCHNEIDER ELECTRIC IND SAS
  • US20250199514A1 patent drawing
  • US20250199514A1 patent drawing
  • US20250199514A1 patent drawing

AI summary

An IEC 61499-part-compatible computing apparatus has an arithmetic logic unit, a RAM, a ROM, an operating system memory, one or more interfaces for the input and/or output of data and signals and a bus connecting one or more or all of the above and/or the following components. A program memory is adapted to store a program that has one or more functional blocks, wherein a functional block has one or more programmed functions and can have a programmed execution control chart. An execution engine is adapted to create a first execution environment data set for configuring an execution environment for executing a functional block of a program. Said execution engine is also adapted to create a second execution environment data set while or before a functional block or a function is executed in an execution environment that is configured by a first execution environment data set previously created by the execution engine.