Estimating Control Program Resource Consumption via Intermediate Code

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing complexity of control programs for control devices, such as those in the automobile and aircraft industries, leads to increased storage requirements and runtime, often exceeding available resources, and existing optimization methods are time-consuming, making it difficult to adjust optimization parameters optimally.

Innovation Solution

A method that estimates resource consumption of storage space and runtime for control device program code by using an estimation unit with a resource model and optimization parameters, generating provisional program code representations to determine estimated values quickly, allowing for rapid decision-making on optimal implementation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If control programs are expanded with new functions to increase functionality, then the complexity and storage requirement of the control device program code increases, but the available storage space is exceeded

Engineering Contradiction:
ImprovefunctionalityVSAvoidstorage requirement
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent applies parameter changes by systematically varying optimization parameters (such as optimization level, code generation settings, and compilation options) to transform the control program code into different versions with varying storage characteristics. This allows the same functional code to be optimized for different storage requirements through parameter adjustment during the code generation process.

Inventive Principle:
Principle #35Parameter changes

2Loss of energy

If optimization parameters are adjusted to reduce storage space or runtime, then resource consumption is optimized, but multiple code generations are required which are time-consuming

Engineering Contradiction:
Improveresource consumptionVSAvoiddevelopment time
Core Design Contradiction:
Loss of energyVSLoss of time

Solution Approach 1:

The patent applies preliminary action by performing resource consumption estimates on intermediate program code representations before final code generation. This preliminary estimation allows developers to predict resource usage early in the development process, avoiding the need to generate multiple complete versions of the control device program code to evaluate different optimization parameters, thus saving significant development time.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If complete control device program code is generated to accurately determine resource consumption, then precise estimation is achieved, but the process becomes extremely time-consuming

Engineering Contradiction:
Improveresource consumption accuracyVSAvoidcode generation time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies segmentation by dividing the code generation process into multiple stages: generating intermediate program code representations first, then generating the complete control device program code only when necessary. Resource consumption is estimated on the intermediate representations, which are segments of the full code generation process, providing accurate estimates without requiring complete code generation for every evaluation scenario.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8850386B2Method for estimating resource consumption in the generation of a control device program code
Publication Date: 2014.09.30 DSPACE DIGITAL SIGNAL PROCESSING & CONTROL ENGINEERING GMBH
  • US8850386B2 patent drawing
  • US8850386B2 patent drawing
  • US8850386B2 patent drawing

AI summary

A method for estimating a resource consumption of storage space and/or of required runtime of a control device program code to be generated for a control program, whereby the functionality of the control program is given in an executable model. The model has a function with first functional magnitudes and first information associated with the first functional magnitudes and optimization parameters for optimizing a code generator. A program code representation is generated for part of the model comprising the function by the code generator taking into account first values of the optimization parameters. An estimation unit comprises a resource model with hardware parameters. An estimated value for the storage space requirement is determined for the control device program code and/or a runtime estimated value is determined for the control device program code by the estimation unit taking into account the hardware parameters and based on the program code representation.