May 19, 2023 Simics

8 Factors to Consider Before Choosing a Simulation Platform

By James Hui, System Simulation Product Line Manager and Richard Burgin, System Simulation Program Manager

Simulation can transform software development with unique advantages that are difficult to achieve through other means, particularly at the intelligent edge, as they allow developers to virtually construct their designs with little dependence on physical hardware. It provides developers with the flexibility to speed product development, identify and resolve issues early in the development cycle, improve portability and scalability as well as overall quality across the development cycle.

But there are many kinds of simulation technologies and several approaches to choose from. So before launching your organization’s simulation efforts, below are eight factors to consider.

8 Factors for Effective Simulation at the Intelligent Edge

Here is a high-level overview of the considerations to explore before selecting a simulation platform. For more detail on each of these factors, take a look at this white paper on the topic.

Factor 1: Simulation Project Objectives

Exploring your primary objectives for your simulation project will shape and direct the type of simulation solution you choose. It is essential to understand project timelines, costs, and qualities you want to improve in your program and how simulation will allow you to meet these objectives.

Factor 2: Simulation Needs

Once you understand the objective of the project, identify your exact simulation needs. Different levels of simulation are available, such as processor-level simulation, custom device simulation, and full-system simulation. It is also important to decide on the flexibility of the tools you require to add or exclude devices at runtime as needed.

Factor 3: Users vs. Collaborators

Keeping in focus the project complexity and how simulation will help achieve the project objectives, consider the needs of the simulation users and who they will collaborate with. Users and collaborators can include testers, developers, artifact engineers, system engineers, and end customer teams.

Factor 4: Ease of Use

Trends in cloud connectivity and collaboration have made ease of use critical for developers to be effective. Features like cloud access, DevOps integration, and user interface are key considerations.

Factor 5: Models – What, Where, How, Who

A simulation is only as good as the models available. For instance, developers may need to consider creating new board models if the design is not available in the simulation. This will impact return on investment and costs.

Factor 6: Portability and Scalability

While today’s teams are cloud connected, they should also have a choice of running the simulation on their desktop. Other portability and scalability considerations include batch mode impact on performance, checkpointing for cloning, running multiple tests in parallel, deterministic simulation results, and transferring simulation state for debugging.

Factor 7: Basic vs Advanced Features

It is important to understand not the features you want, but the features you need – whether they be basic or advanced. Basic capabilities of a simulation platform include emulation of the processor and board, use of production binary, script creation to capturing simulation knowledge, and command-line interaction for simulation control. Advanced capabilities include a built-in debugger, playback of data, deterministic simulation, multi-thread capability, dynamic linking of models, and the creation of artificial virtual environments.

Factor 8: Safety Certification

Software safety certification is an area where the use of simulation is growing as it mitigates many of the challenges of certification. For example developers can focus on pre-certification test and validation to reduce the number of iterations through this process. This reduces total certification costs and risks. Also, they can use simulation for tests that induce hardware failure as success criteria to improve confidence before hardware availability. Overall, simulation can better prepare teams for certification.

The Takeaway

Simulation offers unique advantages in software development that are difficult to achieve through other means. Before starting the simulation process, development teams should consider the above eight factors to better choose a simulation partner who will help them take advantage of today’s simulation technology. Making the right simulation choices at the start can significantly impact resources, cost, efficiencies, software quality and business outcomes.

If you need help or would like to discuss your simulation needs, let’s talk.

You can also watch our on-demand discussion on these eight factors.

Previous 7 Building Blocks for CVE Prioritization
Next The Power of Tenacity in Leadership: Unveiling Its Different Faces