JAS-DSE Framework

A Joint Analytical and Simulation (JAS) based Design Space Exploration (DSE) framework, i.e. a JAS-DSE framework, is a DSE framework capable to combine the benefits of analytical and simulation based methods in DSE. Analytical methods enable fast assessment and exploration. Simulation-based methods enable accuracy and better possibility to optimize the system for given working environment.

KTH/ES is building a JAS-DSE framework which has been initially posed in the Forum for Specification and Design Languages,( FDL'13). There it is explained how this framework can serve for an efficient design of more efficient time critical systems and mixed criticality systems. The framework is sketched in the following figure: Sketch of the generic JAS-DSE flow proposed

The JAS-DSE framework integrates DSE based on worst-case analytical models (WCA-DSE) with scenario-aware and simulation-based (SAS) DSE. For the WCA-DSE, the framework relies on constraint programming.

Proof of Concept

In FDL'13, a first proof of concept demonstrator (whose sources will be available soon) was presented. For it, a proof-of-concept flow was implemented and sketched following:

Sketch of the combined DSE instance for the FDL13 paper

Such proof-of-concept flow supported the capture system model as the one sketched as follows:

sketch of the system example

A constraint on the maximum response time was imposed in a former analytical phase. That enabled to get all compliant solutions. Moreover, the Pareto set after applying only the analytical phase (in red in the following picture) was compared to the Pareto set if the same set of solutions compliant with the critical constraint (safe set or compliant set) is assessed by means of simulation to obtain a more accurate Pareto set according the environment scenario (in blue).

Graph showing how SAS-SDE phase can reveal a different Pareto set and thus more efficient solutions What this figure, and thus this proof-of-concept illustrated is that the proposed JAS-DSE can reveal a different Pareto set, regarding the one derived from the application of the analytical DSE. Therefore, the JAS-DSE can help to find more efficient solutions (in resources, power consumption, etc) without sacrificing any time guarantee already provided by the analytical phase.

Why is this improvement possible?

The following figure illustrates a main reason why a simulation-based phase can provide better accuracy.


It shows an histogram of the frequency of the response time values of one of the functions in the proof of concept example. In red, the histogram resulting from the application of 10 million random input vectors is shown. The figures overlaps an histogram which represents in green the response times of the functionality which are actually given when the whole system is stimulated by a given environment scenario. It shows that an analytical approach based on worst-case times falls in such a case in an over-pessimis. Moreover, since the worst-case workloads are considered to happen at the same time for all actors of the application, the analtical model is likely considering false paths, that is, execution paths (and thus response paths) which cannot be given for any feasible input to the system.

Moreover, the FDL'13 example did not consider the impact of communication performance modelling. However, depending on the case, it can be also very relevant, and the consideration of worst-case communication times as safe bounds in analytical models, is an additional source of overpessimism and false paths which make the SAS-DSE phase worth for the search of more efficient solutions.

Current Research

KTH/ES is generalizing and growing this framework, based on several tools associated to the ForSyDe modelling and design framework and tools from third party partners.

At the front-end, the connection with the ForSyDe-SystemC methodology is in progress. The connection with a model-driven front-end is also of interest.

For the WCA-DSE phase, the framework is relying on analytical DSE tool. This is enabling a more generic application model (acyclic and cyclic SDF graphs, multiple applications, periodic task sets), and the consideraton of a more generic predictable platform, considering a TDMA bus model. This will also enable to get the user rid of the details of the syntax of constraint-programming (which is handled in the FDL'13 proof-of-concept.

For the SAS-DSE, the framework relies on the performance estimation tool KisTA tool and the exploration tool MOST, developped by the Politecnico di Milano, which has its open counterpart in the   MExplorer tool. The integration of these tools will enable a faster JAS-DSE framework.

Many other enhancements are foreseen. An advance of the most important is given in the book of "The best from FDL'13" to be published soon.