Model-Based Design is founded on eight core concepts:
• Executable specification
A model that encapsulates design requirements at a specific level of detail.
• System-level simulation
The practice of simulating a model of the system to investigate system performance and component interactions
• What-if analysis
A simulation method used to test ideas and build knowledge about a system
• Model elaboration
The iterative process of turning a low-fidelity system model into a high-fidelity implementation
• Virtual prototyping
A technique that uses simulation to validate a design before hardware is available
• Continuous test and verification
The practice of simulating a design at every stage of development
The practice of using scripts and tools to perform repetitive or error-prone manual tasks
• Knowledge capture and management
The practice of using models to store all project information and to transfer that information to teams, customers, and suppliers
An executable specification is a model that encapsulates all design information, including requirements, system components, IP, and test scenarios. It can be a model of the environment with use cases that the embedded software needs to manage or a high-level algorithm model that specifies the implementation’s exact behavior.
In a system-level simulation, a model of the entire system is simulated to investigate system performance and component interactions. You can use system-level simulation to validate requirements, check the feasibility of a project, and conduct early test and verification. Simulation provides a way to verify complex, multidomain systems that are more than the sum of their parts.