General Informations

Research and Teaching

Online Resources

Tutorial 1
Exploiting Automatic Abstraction and the FMI Standard to build Cycle-accurate
Virtual Platforms from Heterogeneous IPs
Monday 18th September, 9.00 - 10.30
Organizer: Michele Lora (University of Verona, Italy)
Slides available here
A major problem when designing complex systems is the vast set of different design domains to consider. Usually, each design domain is managed by one or more team of engineers strongly specialized on the particular domain. Each team usually relies on the best-suited set of tools and techniques for modeling and simulating the components of the system the team must design. For this reason, a major obstacle to achieve holistic system simulation is the impossibility to connect different tools and heterogeneous models.
The Functional Mock-up Interface (FMI) Standard aims at tackling this problem by defining a standardized interface to connect different simulators and models. Another emerging approach addresses the issues introduced by the heterogeneity by reconciling heterogeneous models to an intermediate homogeneous representation. The approach relies on automatic translation and abstraction techniques to achieve such a target.
This tutorial combines the automatic abstraction features provided by HIFSuite, and the interfacing functions furnished by the FMI Standard, to create a cycle-accurate virtual platform of an HW/SW device. The tutorial will start with a set of heterogeneous Intellectual Property (IP) components, representing both digital and analog devices. Each IP will be translated and abstracted to produce a "basic block" of an FMI-based simulation environment: a Functional Mock-up Unit (FMU). Then, the tutorial will show how to use PyFMI, an open-source Python-based FMI Simulator, to integrate the produced FMUs to create the final model for the holistic simulation of the system. Finally, the tutorial will show how to use the obtained simulation environment when aiming at developing embedded SW running on the modeled HW platform.
Participants will work directly on a case study composed of a general purpose CPU connected to a set of heterogeneous peripherals, ranging from HW accelerators to an analog accelerometer. They will learn how to exploit the FMI Standard to integrate heterogeneous models to describe an HW/SW device. 
Furthermore, they will learn how to use PyFMI to create simulation scenarios composed by multiple FMUs. Tools utilized in the tutorial are open-source (PyFMI) or licensed by EDALab s.r.l. (HIFSuite). EDALab will donate HIFSuite for teaching, training and research purpose to participants at the end of the tutorial.

<< back to hands-on tutorials