Co-simulation of hardware RTL and software system using FMI

Masudul H. Quraishi, Hessam Sarjoughian, Soroosh Gholami

Research output: Chapter in Book/Report/Conference proceedingConference contribution


Software-hardware co-design enabled with co-simulation is useful for building embedded computing systems. Indispensable to design is developing hardware and software simulation models at appropriate abstraction levels. Toward this goal, this paper presents a study of combined Register-Transfer-Level (RTL) and software system modeling. Specifically, composition of hardware and software models is proposed and a co-simulation environment to simulate the models is developed. The hardware and software parts of a prototypical Network on Chip (NoC) system are modeled and simulated. The hardware part is specified at RTL level using the DEVS Suite Simulator and the software part defined as a MATLAB script. A Functional Mock-up Interface (FMI) is developed for the DEVS-Suite Simulator to support hardware and software model coupling and co-simulation. This study details a modular development of hardware and software models executing on disparate environments instead of employing a monolithic modeling method supported with a monolithic simulation engine.

Original languageEnglish (US)
Title of host publicationWSC 2018 - 2018 Winter Simulation Conference
Subtitle of host publicationSimulation for a Noble Cause
PublisherInstitute of Electrical and Electronics Engineers Inc.
Number of pages12
ISBN (Electronic)9781538665725
StatePublished - Jan 31 2019
Event2018 Winter Simulation Conference, WSC 2018 - Gothenburg, Sweden
Duration: Dec 9 2018Dec 12 2018

Publication series

NameProceedings - Winter Simulation Conference
ISSN (Print)0891-7736


Conference2018 Winter Simulation Conference, WSC 2018

ASJC Scopus subject areas

  • Software
  • Modeling and Simulation
  • Computer Science Applications


Dive into the research topics of 'Co-simulation of hardware RTL and software system using FMI'. Together they form a unique fingerprint.

Cite this