The QNX Platform for ADAS provides an adaptation layer that allows interoperability with the AUTOSAR environment. The AUTOSAR adaptation layer mimics the microcontroller (MCU) so that the AUTOSAR Software Components (Application), AUTOSAR Runtime Environment (RTE), and Basic Software components run. For simplicity, we refer to the above mentioned as the AUTOSAR Environment.
The AUTOSAR stack encapsulates the AUTOSAR Runtime Environment, Services layer, Basic Software Modules (microcontroller abstraction layer, SOME/IP, operating system, and drivers. Typically, vendors write a microcontroller abstraction for different hardware components. For more information about the AUTOSAR stack see the AUTOSAR website (www.autosar.org).
Within the QNX Platform for ADAS, the AUTOSAR stack is encapsulated in a high-priority process that runs on the QNX Neutrino RTOS. Because the AUTOSAR stack runs as an isolated process, this temporal separation is provided by using the Adaptive Partition Scheduling (see the Adaptive Partitioning User's Guide). Spatial separate is achieved by using memory protection (MMU).
The Adaptation Layer emulates a microcontroller environment for the AUTOSAR stack. The layer conforms to the expectations of the stack MCAL layer and provides the services that are expected from a microcontroller, such as timer services and interrupt delivery. This technique allows third-party AUTOSAR stacks to run on the QNX Platform for ADAS. For more information about this experimental package, contact your QNX Software Systems sales representative.
SOME/IP can be used to communicate between AUTOSAR applications and QNX Neutrino-based processes. For more information, see the SOME/IP chapter.