System Engineering with Multicore Systems at PSA Peugeot Citroën
Bernard Bavoux began his career developing embedded microcontrollers for satellites before moving to the aeronautic domain where he was in charge of the electronic design office for digital audio intercommunication systems. Since 16 years he has been working in the automotive industry, where he managed an electric and electronic architecture innovation team and an electronic control unit research team. Currently at PSA Peugeot Citroìn, he has been leading research and expertise for embedded electronic systems.
Mr. Bavoux, could you please tell us a bit about the work of your team as well as your own role? Why is the trend towards multi-core technologies important for you?
I am an Expert for PSA Peugeot Citroìn. This means that I have to give a vision of the future trends, to advise technically the innovation and development projects, to transmit the knowledge and knowhow, and to represent my company in my expertise field. I am working for several years in the field of embedded electronic systems, in particular to size the processors in consistency with the software needs: functions, safety and performances. The key advantage of multicore technologies is to enable more processing power at low cost. In particular this is a recurrent need for automotive engine control software
Since when have you been using multi-core technologies? What opportunities do they bring?
PSA has been using Multi-core technologies for the first time in 2002 for the development of automotive radio display (STPC including 486+GPU). Since then, for multimedia domain, multi-core and many cores are widely used to process video signals with microprocessor architecture (large external memories). Since 2013 multi-core microcontrollers have been used in all developments of enhanced engine control management compliant with Euro 6.2 emission regulations.
And what are the challenges?
The main challenge is to gain more processing power while limiting heat dissipation. Constraints are the re-use of legacy software to limit development cost (no redesign) and to fulfil the time constraints (precedence, synchronisation, response time). The opportunities are enhanced safety and security.
You will be speaking on a car manufacturer’s feedback and expectations – can you give us an insight as to what these are?
Important points to take into account are:
- Take care of the execution time of the functions: At equal frequency on a multicore, the execution time of a function implemented only one core is the same or less than in a single core processor
- Have a modular software architecture that enables a sufficient parallelism to distribute the modules on several cores, taking into account that the different cores have independent scheduling,
- Master communication between cores including synchronisation constraints for distributed tasks on several cores
- Be able to allocate data on several memories taking into account access time and tasks needs
- Vision of the future processing and memories technologies
- Better knowledge of development tools and methods for multicore technologies
What impression do you get from the automotive industry regarding the acceptance of multi-core system migration?
Multi-core is used because it’s a cheap way (serial cost) to have more processing capabilities in a single chip microcontroller, without to increase the frequency.
The advantage to stay at low frequency (300 Mhz max) is to avoid too much heat dissipation and to be compatible with relatively low peripherals (flash memories in microcontrollers …). But the development cost with multi-core is higher, for the time being, in order to cope with an increased complexity of the processor and of the software implementation.
And what about the next generation architectures? Are there any new applications you are currently excited about?
Currently the flash memory technology inside a microcontroller (CMOS based) has much longer access times than the processor cycle time: around 5 to 10 longer (15 to 30 ns for memory access time compared to 3,3 ns of cycle time at 300 Mhz). The main challenge for microarchitecture these last years has been to mitigate this inconsistency. New technologies for faster flash memories are the key issue to enhance processing power and to enable simpler and efficient microarchitectures.
Ensuring the safety and security of multi-core systems is an industry priority. What do you see as the main challenges in this field and how can they be addressed?
Using multicores as redundant cores with the second core performing the same processing (lockstep mode), is in some cases a way to enhance safety. Security can be enhanced with a dedicated core that implements in hardware a cryptographic algorithms and that manages a dedicated memory for key storage (HSM for example).
Mr. Bavoux, thank you for your time!