In the last decade, industrial processes using modeling techniques have been successfully applied to both Hardware (SoC and ECU) and Software development. A Virtual Platform is a software model of the hardware on which full software can be executed at high speed and with cycle and timing accuracy. The goal of this modeling phase is the same in both instances; to provide an executable golden reference specification allowing better design and functional validation before the product is available. The combined use of virtual hardware platforms, functional models and automatic code generation, with an integrated co-design approach allows for building a continuous flow. This process is used from system architecture and the design of control algorithms to embedded software development and verification, as well as performance validation.

In this paper, we will describe this complete flow, modeling the overall system using MATLAB and Simulink from The MathWorks and CoMET from VaST Systems Technology. We will demonstrate the benefits obtained from a full Model Based Co-Design approach. We will see that we can start from a Simulink design to easily perform hardware and software allocation using automatically generated code by Real-Time Workshop Embedded Coder, not only to obtain embedded software source code cross-compiled and evaluated on the VaST virtual platform (performance, size, and resource consumption,…), but also for fast prototyping of hardware specific models (ASIC, FPGA).