Analysable Instruction Memories for Hard Real-Time Systems

  • In safety-critical embedded real-time systems the timing behaviour is of highest importance, because applications underlie timing constraints that have to be met. Otherwise the system might fail causing harm to humans, the environment, or the system itself. Therefore, such hard real-time systems have to provide timing guarantees. Since the timing behaviour of the system does not only depend on the application itself and is also determined by the particular hardware, there is a need for predictable hardware architectures, as e.g. pipelines or memories. Within this work the focus is on first level instruction memories, which have a large influence on the performance of the system. So a predictable instruction fetch guaranteed by a timing predictable instruction memory hierarchy is crucial for a design of a safety-critical real-time system. In this work the so called dynamic instruction scratchpad (D-ISP) is proposed and its impact on hard real-time systems is examined. The D-ISPIn safety-critical embedded real-time systems the timing behaviour is of highest importance, because applications underlie timing constraints that have to be met. Otherwise the system might fail causing harm to humans, the environment, or the system itself. Therefore, such hard real-time systems have to provide timing guarantees. Since the timing behaviour of the system does not only depend on the application itself and is also determined by the particular hardware, there is a need for predictable hardware architectures, as e.g. pipelines or memories. Within this work the focus is on first level instruction memories, which have a large influence on the performance of the system. So a predictable instruction fetch guaranteed by a timing predictable instruction memory hierarchy is crucial for a design of a safety-critical real-time system. In this work the so called dynamic instruction scratchpad (D-ISP) is proposed and its impact on hard real-time systems is examined. The D-ISP features a function-based dynamic content management that ensures that the currently executed function is always contained in the scratchpad. Hence, it guarantees a predictable and instantaneous instruction fetch, once the active function is loaded. Moreover, the D-ISP eases the timing analysis of the whole system by eliminating the interferences between instruction and data memory access. For evaluation the D-ISP was verified in a cycle-accurate SystemC model and implemented into an FPGA using the hardware description language VHDL. The D-ISP was integrated into the CarCore processor, which is instruction set compatible to the Infineon TriCore, and it was used as predictable first level instruction memory of the MERASA multicore. An examination of the hardware complexity showed that the D-ISP is more hardware intense than common cache memories, but the costs are in the same order of magnitude. The advantages of the D-ISP implementation compared to a cache are the decoupling of the content and management memory structures and its minimal influence on the timing of the fetch path. To evaluate the impact of the D-ISP on the WCET estimates of the system a static timing analysis of the D-ISP and the CarCore host processor was performed. It could be shown that in comparison to other common instruction memories like caches and scratchpads with fixed content the D-ISP can provide lower WCET estimates. It can reach an up to 14% lower WCET estimate in comparison to scratchpads with fixed content and reduce the WCET estimate compared to a fully associative LRU cache by at most 29%. Furthermore, different replacement policies for the D-ISP were compared. It is shown that the FIFO replacement policy requires the lowest hardware effort, but cannot reach the WCET estimates that an LRU or a stack-based replacement policy can provide. In general the LRU policy performs best, but it cannot be implemented in hardware. The stack-based replacement policy requires up to 25% more hardware effort than the implementation of the FIFO replacement policy, but reaches similar WCET estimates as LRU. With the D-ISP a promising alternative to common first level instruction memories for safety-critical real-time systems is proposed. The performed evaluations were able to quantify the impact of the D-ISP on the hardware complexity, the WCET estimates, and the average case performance of the system.show moreshow less
  • Sicherheitskritische Echtzeitsysteme unterliegen strikten Zeitschranken, die nicht überschritten werden dürfen, da es sonst zu schwerwiegenden Schäden an Menschen, Umwelt oder dem System selbst führen kann. Daher ist es entscheidend, dass die Zeitschranken des Systems garantiert eingehalten werden. Die Ermittlung von sicheren Zeitschranken erfordert die Analyse des Zeitverhaltens des Gesamtsystems, welches aus der Anwendung selbst und der verwendeten Hardware besteht. Eine präzise Bestimmung des zeitlichen Verhaltens von Hardwarekomponenten ist nur möglich, wenn diese so entwickelt wurden, dass sie ein zeitlich vorhersagbares Verhalten zeigen. Daher beschäftigt sich diese Arbeit mit der Betrachtung und Beurteilung von Befehlsspeichern bezüglich ihrer Einsetzbarkeit in Echtzeitsystemen. Im Rahmen dieser Dissertation wurde ein dynamisches Befehlsscratchpad (D-ISP) als erste Ebene einer Speicherhierarchie entwickelt und dessen Einfluss auf das Zeitverhalten von EchtzeitsystemenSicherheitskritische Echtzeitsysteme unterliegen strikten Zeitschranken, die nicht überschritten werden dürfen, da es sonst zu schwerwiegenden Schäden an Menschen, Umwelt oder dem System selbst führen kann. Daher ist es entscheidend, dass die Zeitschranken des Systems garantiert eingehalten werden. Die Ermittlung von sicheren Zeitschranken erfordert die Analyse des Zeitverhaltens des Gesamtsystems, welches aus der Anwendung selbst und der verwendeten Hardware besteht. Eine präzise Bestimmung des zeitlichen Verhaltens von Hardwarekomponenten ist nur möglich, wenn diese so entwickelt wurden, dass sie ein zeitlich vorhersagbares Verhalten zeigen. Daher beschäftigt sich diese Arbeit mit der Betrachtung und Beurteilung von Befehlsspeichern bezüglich ihrer Einsetzbarkeit in Echtzeitsystemen. Im Rahmen dieser Dissertation wurde ein dynamisches Befehlsscratchpad (D-ISP) als erste Ebene einer Speicherhierarchie entwickelt und dessen Einfluss auf das Zeitverhalten von Echtzeitsystemen untersucht. Das D-ISP verwaltet seinen Speicherinhalt autonom und auf der Basis von Funktionen. Hierzu lädt es die jeweils aktive Funktion aus dem nachgelagerten Speicher und sichert so eine vorhersagbare und unterbrechungsfreie Ausführung von Funktionen zu. Durch die Arbeitsweise des D-ISP garantiert es weiterhin eine Isolation von Befehls- und Datenspeicherzugriffen und ermöglicht so eine Vereinfachung der Analyse des Zeitverhaltens des Echtzeitsystems. Das D-ISP wurde mittels SystemC taktgenau modelliert und via VHDL in Hardware implementiert. Als Wirtsprozessor wurde der CarCore Prozessor verwendet, welcher einen Teil des Befehlssatzes des Infineon TriCore unterstützt. Weiterhin wurde das D-ISP als echtzeitfähiger Befehlsspeicher im MERASA Mehrkernprozessor eingesetzt. Eine Abschätzung des Hardwareaufwands zeigte auf, dass das D-ISP mehr Ressourcen benötigt als klassische Caches. Im Gegensatz zu Caches entkoppelt das D-ISP jedoch die Strukturen für die Verwaltung und den Inhalt des Speichers und hat nur geringen Einfluss auf das Zeitverhalten des Befehlholepfads. Zur Bewertung der Ausführungszeit im schlechtesten Fall (WCET) wurde eine statische Analyse des Zeitverhaltens des D-ISPs und anderen gängigen Befehlsspeichern, wie Caches oder Scratchpads mit fester Zuordnung, vorgenommen. Die Ergebnisse zeigen, dass durch die Verwendung des D-ISPs eine Reduzierung der abgeschätzten WCET um bis zu 14% bzw. 29% im Vergleich zu Scratchpads mit fester Zuordnung und Caches möglich ist. Weiterhin wurden drei verschiedene Ersetzungsstrategien für das D-ISP untersucht. Es konnte gezeigt werden, dass die FIFO Ersetzungsstrategie zwar mit geringsten Kosten implementiert werden kann, jedoch die Abschätzungen der WCET von LRU und einer stackbasierten Ersetzungsstrategie in der Regel unterboten werden. Im Allgemeinen ist LRU die beste Ersetzungsstrategie, eine effiziente Implementierung ist aber nicht möglich. Die stackbasierte Ersetzungsstrategie hingegen benötigt bis zu 25% mehr Ressourcen als FIFO, erreicht aber ähnliche WCET Abschätzungen wie LRU. Es konnte gezeigt werden, dass das in dieser Arbeit vorgeschlagene funktionsbasierte D-ISP Vorteile gegenüber gängigen Befehlsspeichern für Echtzeitsysteme bietet. Die hierzu durchgeführten Evaluierungen beleuchten die Themenkomplexe der Implementierungskosten, des Zeitverhaltens im schlechtesten Fall, sowie der durchschnittlichen Ausführungsleistung.show moreshow less

Download full text files

Export metadata

Statistics

Number of document requests

Additional Services

Share in Twitter Search Google Scholar
Metadaten
Author:Stefan Metzlaff
URN:urn:nbn:de:bvb:384-opus4-20542
Frontdoor URLhttps://opus.bibliothek.uni-augsburg.de/opus4/2054
Advisor:Theo Ungerer
Type:Doctoral Thesis
Language:English
Publishing Institution:Universität Augsburg
Granting Institution:Universität Augsburg, Fakultät für Angewandte Informatik
Date of final exam:2012/07/02
Release Date:2013/03/04
GND-Keyword:Echtzeitsystem; Computerarchitektur
Institutes:Fakultät für Angewandte Informatik
Fakultät für Angewandte Informatik / Institut für Informatik
Dewey Decimal Classification:0 Informatik, Informationswissenschaft, allgemeine Werke / 00 Informatik, Wissen, Systeme / 004 Datenverarbeitung; Informatik
Licence (German):Deutsches Urheberrecht mit Print on Demand