Embedded Software Load Estimation Through Operation-Route Simulation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for predicting processing load in embedded software systems, such as those used in vehicle control devices, fail to accurately estimate average processing times and often overestimate maximum processing times, leading to inefficiencies and rework due to resource constraints.
Innovation Solution
A processing load estimation system that includes a software component input unit, test suite input unit, simulation unit, and result processing unit, which estimates processing load by simulating operation routes, analyzing dynamic features, and using statistical methods to account for variations in actual usage scenarios.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If maximum processing times of individual models are accumulated according to OS scheduling results, then a maximum processing time of all models can be predicted, but the prediction becomes excessively large and inaccurate because operation routes causing maximum processing times are not necessarily executed simultaneously
Solution Approach 1:
The patent applies dynamics by transitioning from static maximum value accumulation to dynamic probabilistic analysis. Instead of simply adding maximum processing times, the system uses probability distribution functions to model the likelihood of different operation routes being executed, and calculates expected values that reflect actual system behavior under varying conditions.
Solution Approach 2:
The patent changes the parameter from fixed maximum processing time to probabilistic expected processing time. By introducing probability distribution functions and calculating expected values based on weighted averages of different operation routes, the system transforms the estimation approach to account for the fact that maximum routes are not necessarily executed simultaneously.
2Loss of time
If processing time is predicted based on theoretical maximum values of operation blocks, then a worst-case scenario can be estimated, but the average processing time cannot be accurately predicted leading to resource allocation inefficiency
Solution Approach 1:
The patent introduces feedback mechanisms by using expected value calculations that incorporate probability distributions of different operation routes. The system continuously refines processing time estimates by considering the likelihood of each route being taken, providing more accurate feedback for resource allocation decisions rather than relying on conservative maximum values.
Solution Approach 2:
The patent performs preliminary probabilistic analysis of operation routes before final processing time determination. By pre-calculating probability distribution functions for different routes and their expected values, the system prepares accurate estimation data in advance, enabling better resource allocation planning without waiting for actual execution.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A processing load estimation system includes: a software component input unit to which a software component having a different operation route according to an input value is input, the software component input unit including a plurality of operation elements for realizing a predetermined operation flow; a test suite input unit to which a test suite to be provided to the software component is input; a processing load estimation unit that estimates a processing load for each operation route; a simulation unit that performs a simulation of the software component based on the test suite and outputs a dynamic feature obtained from a plurality of simulation results; and a result processing unit that processes the dynamic feature output from the simulation unit, in which the result processing unit estimates a practical processing load of the software component based on the dynamic feature, a plurality of operation results corresponding to the input value, and the processing load for each route.