Gemischt-kritische Systeme (Mixed-Criticality Systems, MC-Systeme) erlangen in vielen Anwendungsgebieten zunehmend an Bedeutung, bspw. in Automotive, Avionik oder Medizintechnik. Hierbei ist ein klarer Trend zu immer komplexeren Systemen zu erkennen. Infolgedessen finden heterogene Mehrkernsystem immer mehr Verwendung und verdrängen damit klassische Einkernsysteme. Von besonderem Interesse sind adaptive MPSoCs, die es ermöglichen, einzelne Tasks nicht nur auf programmierbaren Einheiten wie CPUs, GPUs oder KI-Verarbeitungseinheiten, sondern auch als dedizierte Hardware-Einheiten im FPGA-Teil solcher Systeme zu realisieren. Diese Implementierungsalternativen bieten zusätzliche Möglichkeiten, die Anforderungen von MC-Systemen zu erfüllen. Der enorme Entwurfsraum dieser Hardwareplattformen kann durch derzeitige Entwurfsmethodiken jedoch nicht vollständig erfasst werden. Das Ziel dieses Projektes ist die Entwicklung von systematischen Strategien für eine Entwurfsraumexploration sowie von Entwurfsrichtlinien zur Realisierung von MC Systemen auf heterogenen und adaptiven MPSoCs. Das Projekt zielt darauf ab, ein tiefgreifendes Verständnis dafür zu entwickeln, wie sich einzelne Entwurfsentscheidungen, sowohl bei der Nutzung der Hardwareplattform als auch bei der Implementierung von Tasks, auf ein MC-Gesamtsystem auswirken. Wir werden insbesondere drei konkrete Beiträge zum Stand der Forschung auf diesem Gebiet leisten: (1) Wir stellen einen umfassenden Satz von Modellen zur Verfügung, um die relevanten Metriken von MC-Systemen zu einem früheren Zeitpunkt im Entwurfsprozess abzuschätzen. Wir modellieren die Abhängigkeiten von Berechnungs- und Kommunikationsdesignentscheidungen und berücksichtigen die Auswirkungen von Hardwaredesignentscheidungen auf die Worst-Case-Ausführungszeit von Tasks auf der Grundlage des Konzepts der zeitlichen Kompositionalität. (2) Wir entwickeln Algorithmen und Designrichtlinien für den Einsatz von adaptiven MPSoCs in MC-Systemen. Wir stellen Task-Mapping- und Kommunikations-Mapping-Strategien für verschiedene Implementierungsalternativen, Kritikalitätszustände sowie für verschiedene funktionale Zustände bereit. (3) Wir entwickeln einen einheitlichen Ansatz zur Co-Optimierung der Hardwarebeschleuniger, der Kommunikationsinfrastruktur sowie der Zuordnung von Tasks zu heterogenen Verarbeitungseinheiten. Die Heuristiken werden speziell auf die Anforderungen von MC-Systemen zugeschnitten sein, so dass Worst-Case-Ausführungszeit und Kritikalitätsanforderungen explizit berücksichtigt werden. Mit diesen Beiträgen erwarten wir, eine solide Grundlage für den weitverbreiteten Einsatz von adaptiven MPSoCs im Bereich der MC-Systeme zu schaffen. Dadurch soll die Möglichkeit geschaffen werden, trotz des riesigen Entwurfsraums eine umfängliche Systemoptimierung vorzunehmen.
Design Space Exploration for Mixed-Criticality Systems on Adaptive MPSoC Platforms
Mixed-criticality systems (MCS) are of increasing importance in numerous fields, like automotive, avionics, or medical systems, with a clear trend towards higher complexity. As a result, system implementations are evolving from single-core platforms to modern heterogeneous multi-core architectures. Of particular interest are adaptive MPSoCs, which allow tasks to be implemented not only on heterogeneous programmable units such as CPUs, GPUs, AI processing units but also as dedicated hardware units in the FPGA part of such systems. These implementation alternatives give designers additional options to fulfill the requirements of MCSs. However, current design methodologies are insufficient to deal with the enormous design space offered by these hardware platforms. This project aims to develop systematic design space exploration heuristics and guidelines for MCSs on heterogeneous and adaptive MPSoCs. The main scientific outcome will be a deeper understanding of how design decisions regarding the hardware platform and the implementation of the tasks affect the overall system’s compliance with mixed-criticality requirements. We will provide three specific contributions to the scientific community: (1) We provide a comprehensive set of models to estimate the relevant metrics of MCSs earlier in the design process. In particular, we model interdependencies between computation and communication design decisions and consider the effects of hardware design decisions on the worst-case execution time of tasks based on the concept of timing compositionality. (2) We create algorithms and design guidelines for the utilization of adaptive MPSoCs in MCSs. We provide task mapping and communication mapping strategies for different implementation alternatives, criticality modes as well as different functional modes. (3) We develop a unified approach to co-optimize hardware accelerators, communication infrastructure and the mapping of tasks onto heterogeneous processing units in MCSs. The optimization heuristics will be tailored to the requirements of MCSs implemented on adaptive MPSoCs, so that worst-case execution time and criticality requirements are explicitly considered. With these contributions, we expect to lay a strong foundation for widespread use of adaptive MPSoCs for MCSs, enabling the designers to perform a complete system optimization, despite the vast size of the initial design space.