Borja Losa , Pablo Parra , Antonio Da Silva , Óscar R. Polo , J. Ignacio G. Tejedor , Agustín Martínez , Sebastián Sánchez , David Guzmán
{"title":"Hardware-assisted virtualization extensions for LEON processors in mixed-criticality systems","authors":"Borja Losa , Pablo Parra , Antonio Da Silva , Óscar R. Polo , J. Ignacio G. Tejedor , Agustín Martínez , Sebastián Sánchez , David Guzmán","doi":"10.1016/j.micpro.2024.105130","DOIUrl":null,"url":null,"abstract":"<div><div>The increasing complexity of real-time embedded critical systems has driven the adoption of new methodologies to mitigate high development costs. One of the most common approaches is the implementation of mixed-criticality systems, characterized by integrating applications with different levels of criticality on the same processing unit. In these systems, applications run on a separation kernel hypervisor, a software element that controls the execution of the different operating systems, providing a virtualized environment and ensuring the necessary spatial and temporal isolation. This paper presents the design and implementation of hardware virtualization extensions for LEON processors, whose use is widespread in the field of space systems. These extensions enable the execution of virtualized applications with minimal transitions to the hypervisor, enhancing system performance. Our proposed solution defines a specific execution mode and duplicates control and status registers for the exclusive use of virtualized applications. In addition, the functionality of the hardware and software interrupt signals has been extended, allowing developers to select which ones are handled by the hypervisor and which ones by the guest operating systems directly. We have implemented the proposed extension using the LEON version 3 processor’s original VHDL code, and validated it using exhaustive tests to evaluate performance and resource consumption. The results show that the proposed modifications allow virtualized applications to execute without hypervisor intervention, matching the performance when non-virtualized while significantly outperforming existing para-virtualization solutions. Resource consumption increases by 6% to 14%, depending on the FPGA, which is low when compared to available resources. Power consumption increases by only a few milliwatts, which can be considered negligible.</div></div>","PeriodicalId":49815,"journal":{"name":"Microprocessors and Microsystems","volume":"112 ","pages":"Article 105130"},"PeriodicalIF":1.9000,"publicationDate":"2025-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Microprocessors and Microsystems","FirstCategoryId":"94","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S014193312400125X","RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q3","JCRName":"COMPUTER SCIENCE, HARDWARE & ARCHITECTURE","Score":null,"Total":0}
引用次数: 0
Abstract
The increasing complexity of real-time embedded critical systems has driven the adoption of new methodologies to mitigate high development costs. One of the most common approaches is the implementation of mixed-criticality systems, characterized by integrating applications with different levels of criticality on the same processing unit. In these systems, applications run on a separation kernel hypervisor, a software element that controls the execution of the different operating systems, providing a virtualized environment and ensuring the necessary spatial and temporal isolation. This paper presents the design and implementation of hardware virtualization extensions for LEON processors, whose use is widespread in the field of space systems. These extensions enable the execution of virtualized applications with minimal transitions to the hypervisor, enhancing system performance. Our proposed solution defines a specific execution mode and duplicates control and status registers for the exclusive use of virtualized applications. In addition, the functionality of the hardware and software interrupt signals has been extended, allowing developers to select which ones are handled by the hypervisor and which ones by the guest operating systems directly. We have implemented the proposed extension using the LEON version 3 processor’s original VHDL code, and validated it using exhaustive tests to evaluate performance and resource consumption. The results show that the proposed modifications allow virtualized applications to execute without hypervisor intervention, matching the performance when non-virtualized while significantly outperforming existing para-virtualization solutions. Resource consumption increases by 6% to 14%, depending on the FPGA, which is low when compared to available resources. Power consumption increases by only a few milliwatts, which can be considered negligible.
期刊介绍:
Microprocessors and Microsystems: Embedded Hardware Design (MICPRO) is a journal covering all design and architectural aspects related to embedded systems hardware. This includes different embedded system hardware platforms ranging from custom hardware via reconfigurable systems and application specific processors to general purpose embedded processors. Special emphasis is put on novel complex embedded architectures, such as systems on chip (SoC), systems on a programmable/reconfigurable chip (SoPC) and multi-processor systems on a chip (MPSoC), as well as, their memory and communication methods and structures, such as network-on-chip (NoC).
Design automation of such systems including methodologies, techniques, flows and tools for their design, as well as, novel designs of hardware components fall within the scope of this journal. Novel cyber-physical applications that use embedded systems are also central in this journal. While software is not in the main focus of this journal, methods of hardware/software co-design, as well as, application restructuring and mapping to embedded hardware platforms, that consider interplay between software and hardware components with emphasis on hardware, are also in the journal scope.