Brainstorm: Trains, Planes, & Automobiles
How will software play a role in the development of advanced technology vehicles and/or next-gen aircraft systems?
Marc Serughetti, Synopsys, www.synopsys.com 
Advanced vehicle and aircraft systems contain a significant amount of embedded software supporting virtually every operation, from entertainment and engine control to critical safety functions. A recent IEEE Spectrum article noted that a premium-class automobile” probably contains close to 100 million lines of software code. All of that software executes on 70 to 100 microprocessor-based electronic control units (ECUs) networked throughout the body of the car. (http://spectrum.ieee.org/green-tech/advanced-cars/this-car-runs-on-code)
In the case of both aircrafts and automobiles, safe operation of the vehicle literally relies on software, so the quality of the software is paramount. The increased emphasis on software robustness requires engineering teams to consider better approaches to software development. In particular, more comprehensive and efficient software and system testing as well as use of safety standards are required (for example, ISO26262 is emerging in the automotive industry). New software tools and methodologies need to enable software and system debugging and testing to start earlier -- even before hardware is available -- and provide a more efficient platform for developers to facilitate fault injection and increase test coverage.
As with many engineering disciplines, these approaches need to rely on simulation technologies. When it comes to microprocessor-based systems, hardware virtual prototyping delivers the needed benefits for modern embedded software development and system testing. Furthermore, virtual prototyping can be extended to coexist with other simulation technologies, enabling the co-simulation of hardware and software in the context of the physical environment for maximum design productivity and accuracy.