Execution Order Block for Graphical Programming Subtrees
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Graphical block diagrams often lack a clear execution order, especially when multiple subtrees exist without a single root, leading to ambiguity in execution sequence, particularly in algorithms requiring specific ordering like serial data packet receipt.
Innovation Solution
Incorporating an execution order block with variable input pins that defines the execution order of subtrees, allowing for explicit control of subtree execution through pin ordering or layout, ensuring that subtrees connected to the execution order block are executed before other blocks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If graphical blocks are arranged in parallel subtrees without a single root, then the programming flexibility and visual organization are improved, but the execution order becomes ambiguous and unreliable
Solution Approach 1:
The execution order block is placed at the beginning of the parallel subtrees structure, establishing the execution sequence before the branches diverge. This preliminary specification of execution order allows the graphical program to maintain both visual organization and deterministic execution behavior, resolving the contradiction between flexibility and reliability.
2Device complexity
If execution order is dictated solely by directional connectivity, then the graphical data flow representation is simplified, but the ability to enforce specific execution sequences is lost
Solution Approach 1:
The execution order block serves as an intermediary element that mediates between the simplified directional connectivity of graphical blocks and the requirement for specific execution sequences. It receives inputs from multiple sources and outputs to subsequent blocks, while enforcing a predetermined execution order, thus enabling both simplified representation and precise control.
3Productivity
If multiple subtrees are executed in parallel, then the processing throughput is improved, but the ability to maintain specific execution sequences is compromised
Solution Approach 1:
The graphical program is segmented into distinct parallel subtrees that can be executed concurrently, while the execution order block provides a segmentation point that divides the execution flow into ordered phases. This allows multiple subtrees to process in parallel within each phase while maintaining overall sequence reliability across phases.
Data Source
AI summary
A graphical block diagram can use an execution order block to enforce an execution order for parallel subtrees. A graphical data flow block diagram is generated that includes parallel subtrees. The parallel subtrees can be connected to input pins of the execution order block in the execution order. The parallel subtrees are processed in the execution order before other blocks connected to the parallel subtrees are processed according to the normal execution order of the graphical program. The execution order of the execution order block is not affected by the other blocks, and the normal execution order of the other blocks according to the graphical program is not affected by the execution order of the execution order block. The techniques described herein improve a model-based development platform.


