Modern automotive systems are highly complex, incorporating more than one CPU core, running with more than 100 MHz and consisting of millions of transistors. Similarly, software complexity is growing at an even higher rate. There is thus a high expectation in the automotive market that deliveries from μC suppliers should also contain an independent software layer - the Microcontroller Abstraction Layer - placed on the register level of the μC. The I/O drivers standardization activity, which started with the HIS (Hersteller Initiative Software), is now continued with AUTOSAR (Automotive Open System Architecture) which will standardize all layers of the ECU basic software.
The complex interaction between specifically implemented hardware features and standardized software requirements is a big challenge for software driver development. The implementation solutions need to map different software modules to the same μC resource and need to manage the complex dependency between software driver configurations.
In addition, non-standardized complex drivers need to be integrated with the standardized ones especially since they also access the same μC peripherals.
Due to the extensive configuration/dependency space, another challenge of this implementation is the verification/validation of these standardized drivers.
This paper describes the implementation and verification concepts of the AUTOSAR MCAL drivers based on Infineon's 32 bit μC from the AUDO NG family - the architecture chosen for the AUTOSAR validation platform.