ETD

Digital archive of theses discussed at the University of Pisa

 

Thesis etd-04082021-141242


Thesis type
Tesi di laurea magistrale
Author
BELLUARDO, LUCA
URN
etd-04082021-141242
Thesis title
Design and Implementation of a Multi-domain Software Architecture for Autonomous Driving
Department
INGEGNERIA DELL'INFORMAZIONE
Course of study
EMBEDDED COMPUTING SYSTEMS
Supervisors
relatore Dott. Biondi, Alessandro
relatore Prof. Buttazzo, Giorgio C.
Keywords
  • hypervisor
  • autonomous driving
  • autonomous car
  • apollo
  • multi-domain system
  • erika
  • real time system
Graduation session start date
30/04/2021
Availability
None
Release date
30/04/2091
Summary
In recent years, computer systems have taken hold and invaded all use areas, also the automotive world. Nowadays in a car there are multiple systems, ADAS, to help the driver and make driving safer.
This thesis considers the Apollo autonomous driving framework, which runs on Linux, a complex operating system that exposes a large surface to security attacks and safety threats.
This work aims at making Apollo safer and more secure by implementing a multi-domain architecture, where some Apollo's components are still handled by Linux, while the most safety-critical ones are handled by the Erika real-time operating system. A hypervisor is in charge of providing separation between the two domains. Specifically, the control component, a highly safety-critical part of Apollo responsible for delivering actuation commands to the autonomous car, has been ported to Erika.
The first step was to port the component outside Apollo but still within the same operating system, restoring the communication with the IPC (Inter-Process Communication) mechanism provided by Linux.
After, the version on Erika was developed, preparing the Erika environment to host the component's task and changing the IPC mechanism with a communication mechanism offered by the hypervisor KVM.
To evaluate the solution, the latency between the input messages timings and the output message timing was calculated and the time difference between the several versions is small and therefore a large delay is not introduced.
File