Efficient Deployment

AutoFOCUS 3 supports an approach for supporting the system designer by generating a deployment efficiently that is the allocation of logical components to platform architecture components. This can be done according to certain criteria like timing, safety constraints and memory consumption.



Right-click on the project and open DSE (Design Space Exploration) where one can choose between Synthesis of Technical Architectures, Deployments and Schedules.



An Design Space Exploration (DSE) item opens in the Navigator View, containing already the manual deployment (from above). As we can use the DSE also for Scheduling Synthesis later on, the (Manual) Deployment is already there (if existing).

By double-click on the DSE in the Navigator a DSE Editor opens (see below). From this point on we can start doing either Technical Architecture Synthesis (left section), Deployment Synthesis (middle section), Schedule Synthesis (right section).



Efficient Deployment Synthesis (middle section)

Generation

Select the platform architecture (there can be more than one) on which the logical components should be deployed and hit Deployment Generation Wizard.

Select first the component architecture and then the top- level logical components which should be included in the deployment. A Filter on the right hand side enables to deploy just child components of the one selected, or all components in the tree.



Press the NEXT button for the next wizard page.

This page(below) allows to define allocation constraints in terms of whether a component has to be (or is not allowed to be) allocated on a certain ECU.



Press the NEXT button for the next wizard page.

This page (below) provides an overview over the component parameters such as WCET, Memory and SIL. Furthermore it provides a parameter overview for the ECUs.



Press the NEXT button for the next wizard page.

This page (below) allows to manipulate the duration of each signal.



Press the NEXT button for the next wizard page.

This page (below) allows for enabling/disabling various Constraints. If you have added Safety Specification (either traced from requirements) or by drag and dropping safety specification to components AND have added SIL Levels to hardware components by using the editor page of the top-level platform architecture, you can find for Safety-Oriented Deployments. This is a deployment, where software components do not have a SIL higher than provided by the hardware component it is mapped on.



Furthermore you can find for a single valid solution or and optimized solution w.r.t (for now) the optimization criteria of timing.



Select a Timeout for the SMT Solver and hit Generate Deployments. When finished the "Next" button is enabled to go for the next Wizard page.



This page illustrates given results. You can select all (button) or select the ones you may be interested in. Hit "Save Selected Elements" and then "Finish".

All selected results are displayed in the Navigator View, containing already a certain Schedule with a certain End-2-End latency.



Visualization

After the deployments have been calculated you can examine them in the 3D Editor Tab within a 3-dimensional coordinate system, whereby one can use color as the fourth dimension. Enter this Visualization by hitting "Visualization" at the bottom of the Editor page.

On the right side you can do some adjustments, such as defining which parameter is assigned to which axis. By rolling with the mouse over one of the deployments the data related to the deployment appears. After finding the deployment that suits one the best one can push the the "Generate Deployment" button. A generated Deployment including the given generated Schedule will be added to your model.



In case the design space of possible deployments is large, one can limit it by using the concept of planes. One can set up planes on the right side of the 3D Editor.



Another Visualization is supported by double-clicking on a certain generated Deployment in the Navigator View. All relevant information, including a Scheduling View is presented here:



History

All former DSE runs (maybe you give longer timebounds) are stored an can be loaded to the DSE Navigator later again. Then you can again visualize them, choose the one that fits your system needs and add the "generated Deployment" and "generated Schedule" to your system model. Choosing between History Elements is rather easy by clicking "switch to selected history element" (see below).