KI Embedded - KI-Grundlagenentwicklung mit Leitanwendungen Virtuelle Sensorik und Brennstoffzellenregelung
Abschlussbericht
Date
Editor
Advisor
Volume
Issue
Journal
Series Titel
Book Title
Publisher
Supplementary Material
Other Versions
Link to publishers' Version
Abstract
Aktuelle Werkzeuge zur Fehlersuche (Debugger) in herkömmlichen Rechnerarchitekturen gehen von einer überwiegend sequentiellen Abarbeitung von definierten Maschinenbefehlen aus, die auch mehrstufig aus einer Modell- oder Programmiersprache generiert werden. Zusätzlich werden symbolische Informationen erzeugt, welche die Rücktransformation auf die Programmiersprache zulassen. Darüber hinaus gewinnen Debugger mittels Trace-Hardware Informationen über den tatsächlich erfolgten Kontroll- und Datenfluss. Die Steuerung, Visualisierung, Fehlersuche und Testung neuartiger KI-Hardware (Datenfluss-Architektur, DFA) und den darauf ausgeführten massiv parallelen Algorithmen ist mit den auf sequentieller Abarbeitung basierenden Ansätzen aber nicht umsetzbar. Deshalb wurden neue Ansätze für das Debugging, die Laufzeitbeobachtung und den Test solcher neuartigen Beschleuniger-Hardware erforscht und entwickelt. Die verwendeten Methoden umfassen Konzeption und prototypische Implementierungen von Schnittstellen, Untersuchungen an realen Hardware-Systemen und an einem System-C - Simulator, sowie Entwurf und prototypische Implementierung von Algorithmen zur Filterung und analytischen und visuellen Aufbereitung von Laufzeitinformationen. Ergebnis ist ein erster Prototyp, welcher die Kontrolle und Beobachtung der DFA auf verschiedenen Abstraktions-Leveln vom Registerniveau bis zur grafischen Konfiguration sowie die Auswertung von Laufzeitdaten (Trace) ermöglicht. Offene Datenformate und Schnittstellen ermöglichen den einfachen Austausch von Informationen mit anderen Werkzeugen. Mit dem Ergebnis wurden die Voraussetzungen geschaffen um einsatzfähige Produkte für das Debugging, Tracing, die Visualisierung und den Test der DFA und ähnlicher Hardware bereitstellen zu können. Durch die Universalität des DFA-Ansatzes zur Berechnung von nahezu beliebigen mathematischen Algorithmen ist der Einsatz überall denkbar, wo in tief eingebetteter Hardware insbesondere KI-Methoden zum Einsatz kommen.
Current tools for debugging (debuggers) in conventional computer architectures are based on the predominantly sequential execution of defined machine instructions, which may be generated through multiple stages from a model or programming language. Additionally, symbolic information is produced to allow reverse mapping back to the original programming language. Debuggers also use trace hardware to gather information on the actual control and data flow that occurred during execution. However, for novel AI hardware — specifically dataflow architectures (DFAs) — and the massively parallel algorithms executed on them, these sequentially-based approaches are no longer viable for control, visualization, debugging, or testing. For this reason, new approaches have been researched and developed for debugging, runtime observation, and testing of such advanced accelerator hardware. The methods used include the design and prototypical implementation of interfaces, investigations using real hardware systems and a SystemC simulator, as well as the development and prototypical implementation of algorithms for filtering and the analytical and visual processing of runtime information. The result is an initial prototype that enables control and observation of the DFA across various levels of abstraction — from the register level to graphical configuration — as well as the evaluation of runtime data (traces). Open data formats and interfaces allow for easy exchange of information with other tools. With this result, the foundation has been laid for the development of deployable products for debugging, tracing, visualization, and testing of DFAs and similar hardware. Thanks to the universality of the DFA approach, which enables the execution of virtually any mathematical algorithm, it is applicable wherever deeply embedded hardware — especially involving AI methods — is used.
