Green Hills Software's embedded software technology thought-leaders will present technical sessions in the embedded world conference and demonstrate optimized solutions on our stand (Hall 4, Stand 325) to help embedded designers build and deploy software with maximum performance, absolute security, in the fastest time-to-market. Green Hills will also demonstrate its leading support for today's latest processors.
Renesas: Safe & Secure Automotive ECU Consolidation
This automotive electronics demonstration showcases the trusted consolidation of multiple eCockpit functions, including rear-view camera, heads-up display, and digital instrument cluster with rich, smooth 3D graphics.
The combination of safety-certified INTEGRITY RTOS with INTEGRITY Multivisor virtualization and the 64-bit Renesas ARMv8 R-Car H3 automotive processor provides a trusted foundation for system designers to build a single scalable platform hosting guest operating systems while concurrently running one or more safety-critical applications.
Intel: Safe & Secure Automotive ECU Consolidation
This automotive electronics demonstration showcases the trusted consolidation of multiple eCockpit functions, including in-vehicle infotainment system and digital instrument cluster.
The combination of safety-certified INTEGRITY RTOS and the Intel Atom A3900 automotive processor provides a trusted foundation for system designers to build a single scalable platform hosting guest operating systems while concurrently running one or more safety-critical
High Performance Safety-Critical Digital Instrument Clusters
This demonstration includes a wide variety of solutions for safety-critical reconfigurable instrument clusters on the latest automotive grade processors and integrated with industry-leading graphics partners.
This demonstration of ADAS intelligence features AVA, the autonomous vehicle assistant from DURA Automotive running on the INTEGRITY RTOS and Multivisor secure virtualization. AVA incorporates a centralized control module complete with software, vision, communication, and range-based sensors to enable ADAS capabilities such as pedestrian detection, collision avoidance, self parking, and blind spot detection.
Securing the Internet of Things
In collaboration with partners Qt and Clarinox, this demonstration showcases Bluetooth realtime sensor integration from Clarinox running on a Texas Instruments SensorTag device through a Qt-based human machine interface (HMI). The separation architecture of the Green Hills INTEGRITY RTOS assures freedom-from-interference.
ISS DLM TRUST Appliance
DLM TRUST offers digital signature, identity certificate, and key generation services to develop secure embedded devices. See how drag-and-drop code signing and work flows help implement secure boot that is interoperable with leading security hardware and cryptographic software libraries.
ISS DLM Over-the-Air Update Service
Using standards-based Open Media Alliance Device Management (OMA-DM) protocols, the DLM OTA Service provides software updates to connected devices over any network. DLM issues digitally signed updates which are verified by the device before being accepted.
Advanced Debugging for Linux and INTEGRITY
This demonstration shows how developers in the embedded Linux world can dramatically improve debugging productivity by using the powerful MULTI IDE and Green Hills Probe for source-level debugging of the Linux kernel, boot loaders, applications and device drivers. Flexible modes of debugging include JTAG stop-mode debugging and run-mode debugging.
The embedded world conference comprises half hour technology sessions from leading industry experts on special topics. Greg Davis, Director of Engineering, Compilers at Green Hills Software will be presenting a class on "Reliable and Hack-Proof C++ Code." Sessions are as follows:
Greg Davis Class
Writing Reliable C/C++ Code Wednesday 15th March, 10:30 - 11:30
The topics are culled from many years of working on compilers.
Data types (the types in stdint.h and stddef.h and the C++11 'auto' keyword)
Data alignment (programmers are constantly getting into trouble when casting pointers from one type to another)
Volatility (when to use it and when it does not do what you might think it does)
Aliasing (what does this mean? And when can I do it?)
Embedded Assembly (how to do this within C/C++ code in a way that works portably)
Data races (why they're dangerous even when they look safe and how to avoid them in portable C++)
Hack-Proofing Your C/C++ Code Wednesday 15th March, 11:30 - 12:30
Four main techniques will be covered:
Automatic run-time error checking
Run-time and Compile-time assertions
Descriptions for each technique will include:
A real-world example of a product bug detected by this technique
How the technique catches the bug
What the engineer needs to know to use this technique
A number of open-source and proprietary tools that can help
Other technical experts from Green Hills Software will present the following sessions:
Designing Reliable Code using MISRA C and C++ – Greg Davis Tuesday 14th March, 14:30 - 15:00
The following topics are covered in detail:
What makes C and C++ powerful and dangerous at the same time
About coding standards
Why does MISRA C/C++ apply to you
A taxonomy of the rules
Examples of rules for 'sanity'
Examples of rules for safety and security
Examples of the notorious MISRA rules
Not one size fits all
How to apply the appropriate subset to your own project.
Functional Safety on Unsafe Hardware - Does That Work? – Andre Schmitz Wednesday 15th March, 12:00 - 12:30
A lot has been done in the recent years in the area of function safety. Safety standards have been revised and extended, there are plenty of vendors for certified hardware and software, and there are plenty of different approaches to design functional safe systems. There is common sense that a safety system needs to be built on a safety certified hardware. But this is not fully correct, as it is very well possible to use uncertified, off-the-shelf CPUs to build a safety system on them. This presentation describes what the safety standards say about certified hardware and how to monitor the correct behavior of the hardware.It will show what that means for the correct design of the safety software and which software methods and techniques are needed to monitor the hardware in a standards-compliant way.
The Role of Virtualization in Safe and Secure Embedded Systems – Max Hinson Wednesday 15th March, 13:30-14:00
Systems designers are turning to virtualization in an attempt to satisfy often-conflicting embedded requirements. However, we must understand that it is not a perfect solution. Virtualization itself does not guarantee safety and security - the system around it must be properly architected.
In this session, we will discuss the current state of virtualization in system design, as well as the benefits to using virtualization. We will walk through an example system design for a secure, internet-connected embedded device. Finally, we will discuss challenges to virtualization and the important hardware, OS, hypervisor, and debugging considerations when designing and building a system with virtualization.
Guidelines for Writing Efficient C/C++ Code –Greg Davis Wednesday 15th March, 13:30-14:30
Mr. Davis has spent countless hours looking over how to optimize C and C++ code and has learned a lot about what compilers can and cannot do and the reasons for their limitations. In this session, he will present a series of topics and show that naive code and what it means for the compiler. He will then show efficient code and explain how this code, which is no more complicated than the naive code, enables the compiler to produce more efficient machine code.
For more information and to register for the embedded world conference, click here.