Skip to content
Snippets Groups Projects
synthesis.html 10.5 KiB
Newer Older
  • Learn to ignore specific revisions
  • <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <!-- Documentation on Deployment Synthesis in AutoFOCUS3. -->
    <html>
      <head>
        <meta http-equiv="content-type" content="text/html; charset=windows-1252">
        <link rel="stylesheet" type="text/css" href="../layout/stylesheet.css">
        <title>Deployment Synthesis</title>
      </head>
      <body>
        <div class="header">
          <div class="box">
            <div class="navbar">
              <div class="dropdown"> <a href="../getting_started.html" style="padding:0;">
                  <button class="btn" id="hamburger" onclick="javascript:window.location.href='../getting_started.html'">
                    <label for="hamburger" class="hamburger"> <span class="hamburgerLine"></span>
                      <span class="hamburgerLine"></span> <span class="hamburgerLine"></span>
                    </label> </button> </a>
                <div class="dropdown-content"> <button class="dropdown-btn">Getting
                    Started<i class="caret-down"></i></button>
                  <div class="dropdown-container"> <a href=".././managing_projects.html">
                      Create, Import, Export and Load AF3-Projects</a> <a href=".././tipsAndTricks.html">Tips
                      &amp; Tricks</a> <a href=".././af3_faq.html">FAQs</a> </div>
                  <button class="dropdown-btn">Requirements Engineering<i class="caret-down"></i></button>
                  <div class="dropdown-container"> <a href="../requirements/MIRA.requirements_analysis.html">
                      Requirements Analysis Node</a> <a href="../requirements/MIRA.glossary.html">Glossary</a>
                    <a href="../requirements/MIRA.requirements.html">Requirements</a>
                  </div>
                  <button class="dropdown-btn">Modeling and Simulation<i class="caret-down"></i></button>
                  <div class="dropdown-container"> <a href="../ModandSim/model_element_attributes.html">Introduction
                      to Graphical Modeling Interface</a> <a href="../ModandSim/component_architecture.html">Component
                      Architecture Modeling</a> <a href="../ModandSim/data_dictionary.html">Data
                      Dictionary: Types and Functions</a> <a href="../ModandSim/refactoring.html">Refactoring</a>
                    <a href="../ModandSim/model_markers_view.html">On-the-fly Checks</a>
                    <button class="dropdown-btn">Behavior Modeling<i class="caret-down"></i></button>
                    <div class="dropdown-container"> <a href="../ModandSim/code_specification.html">Code
                        Specification</a> <a href="../ModandSim/state_automaton.html">State
                        Automata</a> <a href="../ModandSim/hierarchical_state_automaton.html">Hierarchical
                        State Automata</a> <a href="../ModandSim/mode_automaton.html">
                        Mode Automata</a> </div>
                    <button class="dropdown-btn">Simulation<i class="caret-down"></i></button>
                    <div class="dropdown-container"> <a href="../ModandSim/simulation_with_af3.html">Simulation</a>
                      <a href="../ModandSim/operatorpanels.html">Operator Panels</a>
                      <a href="../ModandSim/operatorpanels_advanced.html">Advanced
                        Operator Panels</a> <a href="../ModandSim/cosimulation_with_af3.html">
                        Co-Simulation and FMI Support</a> </div>
                  </div>
                  <button class="dropdown-btn">Deployment and Code Generation<i class="caret-down"></i></button>
                  <div class="dropdown-container"> <button class="dropdown-btn">Modeling
                      Technical Architectures<i class="caret-down"></i></button>
                    <div class="dropdown-container"> <a href="../ta/platform_architecture.html">Platform
                        Architecture</a> <button class="dropdown-btn">Supported
                        Platform Architectures<i class="caret-down"></i></button>
                      <div class="dropdown-container"> <a href="../ta/platform_architecture_generic.html">Generic
                          Platform Architecture</a> <a href="../ta/platform_architecture_hierarchical.html">Hierarchical
                          Platform Architecture</a> <a href="../ta/platform_architecture_raspberrypi.html">RaspberryPi
                          Platform Architecture</a> </div>
                      <a href="../ta/task_architecture.html">Task Architecture</a> <a
                        href="../ta/partition_architecture.html"> Partition
                        Architecture</a> <a href="../ta/allocations.html">
                        Deployments/Allocations</a> <a href="../ta/system_schedule.html">
                        System Schedule</a> </div>
                    <a href="../ta/code_generation.html">Code Generation</a> </div>
                  <button class="dropdown-btn">Design Space Exploration (DSE)<i class="caret-down"></i></button>
                  <div class="dropdown-container"> <a href="dse_perspective.html">DSE
                      Perspective Overview</a> <a href="dse_dashboard.html">DSE
                      Dashboard</a> <a href="constraints.html">Constraint Modeling</a>
                    <a href="objectives.html">Objective Modeling</a> <a style="background-color:#f2f2f2;">Deployment
                      Synthesis</a> <a href="schedule_synthesis.html">Schedule
                      Synthesis</a> <a href="visualization.html">Solution
                      Visualization</a> </div>
                  <button class="dropdown-btn">Assurance Case Modeling<i class="caret-down"></i></button>
                  <div class="dropdown-container"> <a href="../assuranceCases/creation.html">Modeling
                      GSN-based Assurance Cases</a> <a href="../assuranceCases/assessment.html">Quantitative
                      Assessment of Assurance Cases</a> <a href="../assuranceCases/maintenance.html">Change
                      Impact Analysis</a> </div>
                  <a href=".././furtherResources.MainPage.html">Further Resources</a>
                </div>
              </div>
              <div class="topnav-right"> <a href="mailto:af_user@lists.fortiss.org?subject=Reporting%20%27deployment_synthesis.html%27%20Documentation%20Problem%21&amp;body=%20Dear%20AutoFOCUS3%20team,%20I%20am%20reporting%20an%20issue%20related%20to%20Design%20Space%20Exploration%20%28DSE%29.%20%0A%20%20%20%20%20%20%20%7BPlease%20specify%20the%20problem%20precisely%20here.%7D.">Report
                  a Problem?</a> </div>
            </div>
          </div>
        </div>
        <div class="box">
          <h1>Synthesis</h1>
          <button onclick="topFunction()" id="upBtn" title="Go to top">Top</button>
          <p> The <b>Synthesis</b> page is your starting point for generating
            mappings from tasks to hardware execution units or to generate strictly
            time-triggered task schedules. Therefore, it allows to select
            constraints and objectives to define the design space and optimization
            goals that can be launched from this view.</p>
          <br>
          <h2>1. Selecting a Synthesis Type</h2>
          <br>
          <img src="pictures/synthesis_selection.svg" alt="" title="Synthesis Type Selection"
            style="width: 1098px; height: 600px;">&nbsp;</div>
        <div class="box">First, a synthesis type such as deployment (of tasks onto
          execution units) or (task) scheduling is selected at the top of the view.
          Afterwards, the constraints and objectives that are applicable for the
          selected synthesis types become visible. If multiple synthesis types are
          selected, the selected solver performs a joint syntheses.</div>
        <div class="box"><br>
          <h2>2. Creating Rule Sets</h2>
          <p><br>
          </p>
          <img src="pictures/synthesis_creating_rulesets.svg" alt="" title="Creating RuleSets"
            style="width: 1101px; height: 600px;"></div>
        <div class="box"><br>
        </div>
        <div class="box">Before a synthesis is launched, so-called rule sets are
          typically created. They group constraints and objectives, respectively.
          For instance, constraints on the allocation of tasks to execution units
          can be grouped together.</div>
        <div class="box">To create a rule set, the constraints or objectives
          constituting a rule set must be selected in the left-hand tables. Then,
          the "Create Rule Set" button must be pressed to create one and let it
          appear in the corresponding table on the right-hand side. There, it can be
          renamed to carry an expressive name.</div>
        <div class="box"><br>
          <h2>3. Launching a Synthesis</h2>
          <p><br>
          </p>
          <p>Two different exploration types to perform a synthesis are supported: A
            constraint-satisfying synthesis and an optimizing one that optimizes the
            system towards the selected design goals (i.e., objectives). </p>
          <p><br>
          </p>
          <img src="pictures/synthesis_start_constraints.svg" alt="" title="Start a Synthesis Considering Constraints"
            style="width: 1100px; height: 600px;"><br>
          A constraint-satisfying synthesis is started by selecting rules sets from
          the table in the blue box. In the green box, a solver must be selected
          that actually performs the synthesis. By clicking the button "Configure",
          the solver can be configured and termination criteria such as timeouts can
          be defined (see below). By clicking "Check Feasibility", a
          constraint-satisfying synthesis is launched.</div>
        <div class="box"><img src="pictures/synthesis_settings_dialog.svg" alt="" title="Solver Settings Dialog"></div>
        <div class="box"><br>
        </div>
        <div class="box">To launch an optimizing synthesis, similar steps apply that
          are described in the following.</div>
        <div class="box"><br>
        </div>
        <div class="box"><img src="pictures/synthesis_start_optimization.svg" alt=""
            title="Launch an Optimizing Synthesis" style="width: 1168px; height: 600px;"></div>
        <div class="box"><br>
        </div>
        <div class="box">In order to define the design space and goals for an
          optimizing, rule sets from both tables that are surrounded by the blue box
          must be selected. Again, a solver must be selected that can also be
          configured (green box). By clicking "Optimize", the optimizing synthesis
          is launched.</div>
        <br>
        <p>&nbsp;</p>
        <p>
          <script src="../layout/jsscript/topBtn.js"></script>
          <script src="../layout/jsscript/submenuScript.js"></script> </p>
        <div class="footer">
          <p>  2020 <a href="https://www.fortiss.org/">fortiss GmbH</a>
            &nbsp;&nbsp;&nbsp;&nbsp; <a href="https://www.fortiss.org/en/publications/software/autofocus-3#c2007">Contact</a>&nbsp;&nbsp;&nbsp;&nbsp;
            <a href="https://www.fortiss.org/en/imprint">Imprint</a> </p>
        </div>
      </body>
    </html>