Download Chapter 1. Introduction
Transcript
16 CHAPTER 1 Introduction Code gen to target C/C++ code Loadable module Compile and link Model Application Application OS OS Simulated hardware Real hardware Simics Host OS Host hardware FIGURE 1.5 Simics and autogenerated code. MODEL-DRIVEN DEVELOPMENT Model-driven development (MDD) is widely applied in the domain of control systems and is the standard development methodology for automotive, aerospace, avionics, and defense systems. A key part of MDD is to generate code from the model, as illustrated in Figure 1.5, rather than writing it manually. For Simics, whether code is generated or handwritten does not matter—it will run the same on Simics. PROCESSOR-IN-THE-LOOP TESTING In a typical model-driven workflow, a model is first tested using model-in-the-loop (MIL) testing within the modeling tool (e.g., Simulink, Labview, MATLAB, or SCADE). In MIL testing, the model of the code to be generated is tested against a model of the world it interacts with. Next, simulation-in-the-loop (SIL) testing is performed, where code is generated to run on the development host, testing the code part against the world model. This makes sure that code generation from the model works. Once this is proven, processor-in-the-loop (PIL) testing is performed