Tools in Embedded Systems Design

Here is a list of mostly open source tools for embedded systems design. It is not complete. If you have or know of other tools, which you would like to be included in this list let me know.

1. SESAME: Simulation of Embedded Systems Architectures for Multi-level Exploration
2008, University of Amsterdam
Modeling and simulation methods and tools for the efficient design space exploration of heterogeneous embedded multimedia systems.

2. ARTEMIS: System-on-Chip and SoC design
2008, University of Amsterdam
The Artemis workbench consists of a set of methods and tools conceived and integrated in a framework to allow designers to model applications and SoC-based (multiprocessor) architectures at a high level of abstraction, to map the former onto the latter, and to estimate performance numbers through co-simulation of application and architecture models.
It focuses on the design of Network-on-Chip (NoC) based MP-SoCs.
Architecture modeling. Mapping. Mapping support using multi-objective optimization.
It integrates Sesame.

3. Daedalus: System-Level Design For Multi-Processor System-on-Chip
2007, Leiden University (UL) and University of Amsterdam (UvA)
A single environment for rapid system-level architectural exploration, high-level synthesis, programming and prototyping of multimedia MP-SoC architectures. Integrates Sesame too.

4. MADNESS: Methods for predictAble Design of heterogeneous Embedded Systems with adaptivity and reliability Support
Coordinator: University of Cagliari, 2010-2013,2018
The MADNESS project aims at the definition of innovative system-level design methodologies for embedded systems, able to drive the optimal composition of an heterogeneous MPSoC architecture, according to the requirements and the features of a given target application field.
Integrates Sesame too.
Includes tools:
–Genetic algorithm for design space exploration framework
–Simulation environment for NoC-based streaming processing MPSoCs
–FPGA-based evaluation platform – Synthesized 4 processors NoC-based platform
–ICD-C compiler design tools
–Reliability-aware mapping tool for NoC-based platforms

5. ArcheOpterix: An Extendable Tool for Architecture Optimization
2008-2011, Swinburne University of Technology
ArcheOpterix is an extendable Eclipse-based tool for embedded systems architecture design, which provides a framework to implement evaluation techniques and optimization stratergies. Key features include:
–ArcheOpterix provides a generic framework for embedded software architecture design problems that require multi-objective optimization satisfying numerous design constraints.
–Extensible interfaces for further development of quality evaluation techniques.
–Provides the capability to integrate multi-objective optimization strategies for architecture design process.

6. PerOpteryx: Performance Optimizer
2008-2011, Karlsruhe Institute of Technology
PerOpteryx is an optimization framwork to improve component-based software architectures based on model-based quality prediction techniques.

7. MAPS: MPSoC Application Programming Studio (SSS)
2008-2018, Institute for Communication Technologies and Embedded Systems (ICE), Aachen University
MAPS Compiler (MPSoC Application Programming Studio), a tool framework with an Eclipse-based IDE that eases programming of heterogeneous MPSoC architectures, while ensuring optimal system performance. Its input language is CPN, an easy-to-use C extension that models concurrent processes and applications as well as legacy code.

8. DESUU: design of embedded systems under uncertainty
2015-2018, Marquette University
A tool to conduct design space exploration for solving the mapping problem in embedded systems under uncertainty. It integrates uncertainty models as a new design methodology constructed with Monte Carlo and evolutionary algorithms.
It builds on ideas from Sesame and ArcheOpterix.