Desarrollo de Sistemas Operativos Embebidos en PetaLinux para plataformas Zynq Ultrascale+ MPSoC

Bookmark (0)
Please login to bookmark Close

En este proyecto de fin de grado se va a explicar cómo desarrollar sistemas operativos embebidos para placas de desarrollo de Xilinx, más específicamente de la familia Zynq UltraScale+ MPSoC como la ZCU102. Para ello, se utilizará principalmente la herramienta proporcionada por los desarrolladores de Xilinx llamada PetaLinux, la cual permite crear y desarrollar un SO Linux funcional y personalizado según las necesidades del proyecto, de una manera más profesional.
Para poder desarrollar el sistema es de vital importancia entender las características básicas de estas placas de desarrollo, así como su arquitectura, sus fases de arranque o los posibles fallos que se pueden presentar durante el inicio. Durante el proceso de arranque intervienen numerosas fases las cuales se explicarán en detalle más adelante y su estudio permitirá realizar un profundo análisis sobre los posibles fallos que se pueden producir y cómo enfrentarlos para que el sistema sea lo más confiable posible, es decir, con la menor probabilidad de fallo.
Una vez se tiene un buen conocimiento sobre todos estos conceptos mencionados, se dará comienzo a las etapas del desarrollo del sistema, pasando por el diseño, la implementación y las pruebas.
El sistema que se desarrollará será un SO profesional donde los pilares fundamentales serán la optimización, la seguridad, la fiabilidad y la mantenibilidad del mismo. Estos pilares serán clave para el diseño e implementación de funcionalidades. Durante la etapa de implementación se abarcarán numerosos aspectos clave, pasando por las distintas configuraciones, parches, instalación de paquetes y librerías, creación o instalación de aplicaciones, sincronización de fecha y hora del sistema, generación del firmware, etc, hasta llegar a la construcción final de la imagen de arranque.
Finalmente, se abordará la fase de tests, donde se explicarán las diversas pruebas realizadas en el proyecto para validar el sistema, así como algunas de las técnicas empleadas para llevarlas a cabo.
Abstract:
The main goal of this final degree project is to understand how to develop embedded operating systems for development boards from Xilinx, specifically from the Zynq UltraScale+ MPSoC family, such as the ZCU102. For this purpose, we will mainly use the tool provided by Xilinx developers called PetaLinux, which allows us to create and develop a functional and customized Linux operating system according to the project’s needs in a more professional manner.
To develop the system, it is vital to understand the basic characteristics of these development boards, as well as their architecture, boot phases, and potential issues that may arise during startup. The boot process involves numerous phases, which will be explained in detail later. Studying these phases will allow us to conduct a thorough analysis of possible failures and how to address them to make the system as reliable as possible, with the lowest probability of failure.
Once we have a good understanding of all these concepts, we will begin the stages of operating system development, including design, implementation, and testing.
The system to be developed will be a professional operating system where the fundamental pillars will be optimization, security, reliability, and maintainability. These pillars will be key to the design and implementation of functionalities. For the implementation of the operating system, many aspects will be covered, including various configurations, patches, package and library installations, creation or installation of applications, system date and time synchronization, firmware generation, etc., until the final construction of the operating system boot image.
Finally, the testing phase will be addressed, where the various tests carried out in the project to validate the system will be explained, as well as some of the techniques used to perform them.

​En este proyecto de fin de grado se va a explicar cómo desarrollar sistemas operativos embebidos para placas de desarrollo de Xilinx, más específicamente de la familia Zynq UltraScale+ MPSoC como la ZCU102. Para ello, se utilizará principalmente la herramienta proporcionada por los desarrolladores de Xilinx llamada PetaLinux, la cual permite crear y desarrollar un SO Linux funcional y personalizado según las necesidades del proyecto, de una manera más profesional.
Para poder desarrollar el sistema es de vital importancia entender las características básicas de estas placas de desarrollo, así como su arquitectura, sus fases de arranque o los posibles fallos que se pueden presentar durante el inicio. Durante el proceso de arranque intervienen numerosas fases las cuales se explicarán en detalle más adelante y su estudio permitirá realizar un profundo análisis sobre los posibles fallos que se pueden producir y cómo enfrentarlos para que el sistema sea lo más confiable posible, es decir, con la menor probabilidad de fallo.
Una vez se tiene un buen conocimiento sobre todos estos conceptos mencionados, se dará comienzo a las etapas del desarrollo del sistema, pasando por el diseño, la implementación y las pruebas.
El sistema que se desarrollará será un SO profesional donde los pilares fundamentales serán la optimización, la seguridad, la fiabilidad y la mantenibilidad del mismo. Estos pilares serán clave para el diseño e implementación de funcionalidades. Durante la etapa de implementación se abarcarán numerosos aspectos clave, pasando por las distintas configuraciones, parches, instalación de paquetes y librerías, creación o instalación de aplicaciones, sincronización de fecha y hora del sistema, generación del firmware, etc, hasta llegar a la construcción final de la imagen de arranque.
Finalmente, se abordará la fase de tests, donde se explicarán las diversas pruebas realizadas en el proyecto para validar el sistema, así como algunas de las técnicas empleadas para llevarlas a cabo.
Abstract:
The main goal of this final degree project is to understand how to develop embedded operating systems for development boards from Xilinx, specifically from the Zynq UltraScale+ MPSoC family, such as the ZCU102. For this purpose, we will mainly use the tool provided by Xilinx developers called PetaLinux, which allows us to create and develop a functional and customized Linux operating system according to the project’s needs in a more professional manner.
To develop the system, it is vital to understand the basic characteristics of these development boards, as well as their architecture, boot phases, and potential issues that may arise during startup. The boot process involves numerous phases, which will be explained in detail later. Studying these phases will allow us to conduct a thorough analysis of possible failures and how to address them to make the system as reliable as possible, with the lowest probability of failure.
Once we have a good understanding of all these concepts, we will begin the stages of operating system development, including design, implementation, and testing.
The system to be developed will be a professional operating system where the fundamental pillars will be optimization, security, reliability, and maintainability. These pillars will be key to the design and implementation of functionalities. For the implementation of the operating system, many aspects will be covered, including various configurations, patches, package and library installations, creation or installation of applications, system date and time synchronization, firmware generation, etc., until the final construction of the operating system boot image.
Finally, the testing phase will be addressed, where the various tests carried out in the project to validate the system will be explained, as well as some of the techniques used to perform them. Read More