All Simulations Are Not Created Equal

All Simulations Are Not Created Equal

April 17, 2018
Whether checking out a new chip before it’s available or testing machine learning for self-driving cars, simulation has embedded itself in the embedded-development process.

Simulations are extremely useful in all aspects of embedded development, from checking the power and timing of new chips to running software on chips yet to exist. They allow airplanes to be designed so that assemblies work the first time they’re constructed. Simulations can also provide test environments for applications like self-driving cars, where the consequences of premature real-world testing have been deadly.

Simulations are approximations, and the depth and quality of the simulation dictates the compute requirements needed to deliver the simulation. Even our growing cloud-computing resources pale in comparison to the actual requirements of simulating even part of our world, let alone Matrix-style virtual reality.

Selecting the proper level of detail for simulations affects the performance requirements. It’s often unnecessary to simulate all aspects of the environment to the same degree to get good results. For example, foveated rendering is now used in virtual-reality rendering. The approach uses eye-tracking feedback to determine where a person is looking; therefore, the software can spend more time to generate a better image in that area while spending less time rendering the image areas only viewed peripherally.

Metamoto is one of many companies delivering multi-sensor simulation for automotive applications (see figure) that will be critical to the success of self-driving cars. These simulation environments need to support LiDAR, radar, ultrasonic, and camera device inputs in addition to GPS signals so that the hardware and software being developed for the vehicle can be tested. Having self-driving cars running around real streets may seem high tech, but rarely do these platforms have sufficient testing done before they hit the real road.

Quanergy and Metamoto collaborated to create a self-driving car simulation. Check out the video below:

Real-world testing used to be the only way to go because simulations were often inadequate. In many cases, that’s still true, but developers need to consider what’s possible and how to take advantage of simulation since it’s safer and usually more cost-effective in the long run. 

The challenge of simulated environments is creating a path for collaboration with industry sources of hardware and software related to the simulation environment. For example, Metamoto works with companies like LiDAR provider Quanergy to develop simulated models that match the performance of real hardware being delivered by LiDAR companies. The models needn’t simulate how the devices work internally—only how they relate and perform with respect to the other software and hardware in the simulation.

All simulations are not created equal, but most can be very useful in the right context.

About the Author

William G. Wong | Senior Content Director - Electronic Design and Microwaves & RF

I am Editor of Electronic Design focusing on embedded, software, and systems. As Senior Content Director, I also manage Microwaves & RF and I work with a great team of editors to provide engineers, programmers, developers and technical managers with interesting and useful articles and videos on a regular basis. Check out our free newsletters to see the latest content.

You can send press releases for new products for possible coverage on the website. I am also interested in receiving contributed articles for publishing on our website. Use our template and send to me along with a signed release form. 

Check out my blog, AltEmbedded on Electronic Design, as well as his latest articles on this site that are listed below. 

You can visit my social media via these links:

I earned a Bachelor of Electrical Engineering at the Georgia Institute of Technology and a Masters in Computer Science from Rutgers University. I still do a bit of programming using everything from C and C++ to Rust and Ada/SPARK. I do a bit of PHP programming for Drupal websites. I have posted a few Drupal modules.  

I still get a hand on software and electronic hardware. Some of this can be found on our Kit Close-Up video series. You can also see me on many of our TechXchange Talk videos. I am interested in a range of projects from robotics to artificial intelligence. 

Sponsored Recommendations

Comments

To join the conversation, and become an exclusive member of Electronic Design, create an account today!