Currently, auto-motives contain a large amount of embedded electronic devices to improve the driving safety and comfort. However, the increasing number of Electronic Control Units (ECUs) and the related software is growing the vehicle system design complexity. Therefore, in order to reduce the costs and increase the reusability and unity of ECU design, automotive industrial associations are working on standards for automotive SW and HW architectures, based on which the system is predisposed to be distributed among several ECUs, in this way increasing the system’s overall complexity.  Consequently, there is a tendency of using more complex uCs which provide a greater amount of functionalities. Among these, uCs are provided also with internal safety and HW health monitors, in order to meet safety requirements and avoid catastrophic failures. These additional measures link to a high amount of pins, ports and peripheral modules in a microcontroller, which increase ECU’s complexity, but in the same time provide flexible ways of mapping peripherals to pin-ports.
However, the amount of functionality of an ECU may be restricted by the complexity of mapping peripherals to pins. As a result, it is a big challenge for the HW development to map the requested peripherals to the pins of the microcontroller.
Therefore, the main focus of the current work is pointed to development of an assisting tool which means to help in mapping peripherals to pins. The tool shall be built on an efficient mapping algorithm which is able to return a valid mapping result.
As a result, by using such a tool, there can be obtained a significant decrease in time of mapping process, as well as speeding-up the HW development and minimizing the effort required for that. Moreover, by choosing the optimal variant of microcontroller for a target project, there can be achieved an increased cost efficiency.
The tool will target Aurix TC2xx microcontroller family devices from Infineon.
The application will help the Hardware Department within the company to map the required functionalities (peripherals) to dedicated pins. Moreover, the tool shall show whether a dedicated functionality is available on a dedicated pin or not. Also, if a pin is assigned to a dedicated functionality, the tool shall show which other functionalities (assigned to the same pin) are “lost” on the pin. As an input, the user shall specify the peripherals which will be used (e.g.: 2 SPI channels, 3 CAN channels, 20 DIO ports, 10 AD ports, etc.), and the tool shall return the pins/peripheral which might be used or it can return an error log in case of misconfiguration.