AMBITIOUS AND AGILE - Institutional Strategy for Advancing Research Strengths at a Mid-sized University
SyDe
Graduiertenkolleg System Design

Forschungsthemen

Elektronische Systeme werden heutzutage in fast allen technischen Geräten verwendet – sei es in Autos, Flugzeugen, medizinischen Apparaten oder Satelliten. Der Entwurf solcher Systeme stellt mit zunehmender Größe und Komplexität eine bedeutende Herausforderung dar.

Ziele:



Im Detail:

  • Fehlertoleranz-Methoden für FPGAs
    Gökce Aydos, ZESY / DLR, betreut von Prof. Dr. Görschwin Fey

    Zuverlässigkeit ist ein wichtiger Punkt in sicherheitskritischen Systemen sowie in Raumfahrtsystemen wie z.B. Satelliten, zumal bei letzteren die Reparatur im All praktisch unmöglich ist. Zusätzlich werden solche Systeme durch die ionisierende Strahlung der Sonne belastet, die nach der Kollision mit der Materie einen Stromimpuls auf elektronischen Komponenten erzeugt. Das kann transiente und permanente Effekte auf digitalen Schaltungen hervorrufen und zu einem unerwünschtem Verhalten des Systems führen. Field-programmable Gate Arrays (FPGAs) sind integrierte Schaltkreise, in die eine logische Schaltung programmiert werden kann. Sie sind sehr populär im Avionik-Bereich für Raumfahrt, weil sie eine hohe Rechenperformanz ermöglichen, sich aber darüber hinaus reprogrammieren lassen. Leider sind FPGAs sehr anfällig gegen Strahlung. Daher soll untersucht werden, wie auf verschiedenen algorithmischen und technologischen Ebenen Fehlertoleranz erreicht werden kann, ohne dass auf sehr teure Spezialanfertigungen zurückgegriffen werden muss.

  • Automatisches Debugging von Schaltkreisen
    Mehdi Dehbashi, ZESY, betreut von Prof. Dr. Görschwin Fey

    Die Kosten des Entwurfs von hochintegrierten Schaltkreisen, wie sie in Prozessoren und anderen elektronischen Komponenten vorkommen, sind in den letzten Jahren signifikant gestiegen. Mit wachsender Komplexität der Schaltkreise wird es immer schwieriger und aufwändiger, die Entwurfskorrektheit unter harten Time-to-Market-Bedingungen zu 100% sicherzustellen. Immer häufiger wird Fehlverhalten erst spät im Entwurfsablauf oder sogar im fertigen IC festgestellt. In solchen Fällen ist es entscheidend, von den beobachteten Fehlereffekten effizient auf Fehlerursachen schließen zu können, um diese Ursachen im Entwurf zu korrigieren. Dieser Debugging-Prozess nimmt einen großen Teil der Entwurfszeit in Anspruch. Deshalb sollen Methoden entwickelt werden, die das Debugging in komplexen Schaltkreisen ermöglichen.

  • Agile Methoden im Systementwurf
    Melanie Diepenbeck, AGRA, betreut von Prof. Dr. Rolf Drechsler

    Zunehmend wird der Entwurf von Hardwaresystemen komplexer, so dass es immer schwieriger wird, ein korrekt funktionierendes System zu entwickeln. Beim konventionellen Entwurfsablauf wird das System erst nach der Implementierung verifiziert und getestet. Dadurch werden Fehler erst spät gefunden und lange Zyklen zur Korrektur sorgen für hohe Kosten. Im Gegensatz dazu treibt der Test bei agilen Entwurfsverfahren die Entwicklung des Systems voran. Daher werden neue Entwurfsmethoden untersucht, die Fehler in Systemen reduzieren bzw. sogar die Korrektheit eines Systems garantieren können. Neben dem Aufstellen der Testfälle zu Beginn der Implementierung dienen auch kurze Iterationszyklen zur Verbesserung der Qualität des Systems. Basierend auf Behavior Driven Development (BDD) soll ein neuer Entwurfsablauf entwickelt werden. Dieser soll für den Hardwareentwurf angepasst und mit einer Technik erweitert werden, die es ermöglicht, automatisch Eigenschaften aus Testfällen zu generieren.

  • Semantische Objekterkennung in 3D-Punktwolken
    Malgorzata Goldhoorn, DFKI, betreut von Prof. Dr. Frank Kirchner

    Der Bereich der Wahrnehmung hat sich zu einem wichtigen Forschungsfeld der Robotik entwickelt. Ein autonomer, mobiler Roboter, der seine Umgebung wahrnimmt und mit ihr interagiert, kann für verschiedene Aufgaben des täglichen Lebens eingesetzt werden und könnte so auf Befehle wie "Geh zum Tisch im Büro" oder "Hol mir den Karton aus dem Regal" reagieren. Um sinnvoll mit seiner Umwelt zu interagieren, ist eine semantische Objekterkennung notwendig. Allerdings ist die Verarbeitung von Bildinformationen in Echtzeit immer noch eine große Herausforderung. Innovative Sensoren wie Laserscanner oder die Kinect liefern ausreichend präzise Repräsentationen der Umgebung. Trotzdem sind Messfehler und unvollständige Daten (z.B. durch Überdeckung) ein Problem bei der weiteren Verarbeitung. Es sollen daher robuste und effiziente Methoden und Algorithmen entwickelt werden, um aus Punktwolken und zusätzlichen semantischen Informationen zuverlässig Objekte zu erkennen.

  • Echtzeitfähige Rekonfiguration von Komponentennetzwerken
    Matthias Goldhoorn, AG Robotik, betreut von Prof. Dr. Frank Kirchner

    Robotersysteme werden heutzutage stetig mobiler und autonomer. Roboter können sich selbst rekonfigurieren und organisieren. Die Herausforderungen dabei beruhen aber nicht allein auf den Algorithmen, die zur Erkennung der Umgebung und Regelung des Systems verwendet werden. Für langfristige Autonomie ist es von enormer Wichtigkeit, dass Systeme in der Lage sind, von einem Verhalten (genauer Zustand) in ein anderes Verhalten wechseln zu können. Ziel der Arbeit ist es, ein System zu entwickeln, welches die Lücke zwischen zwei Verhaltensweisen schließen kann. Ein rennender Roboter kann beispielsweise nicht einfach beginnen, seine Füße wie zum Treppensteigen zu bewegen, da er sonst umfallen würde. Ein anderes Beispiel ist der Übergang vom Laufen zum Rennen. Dieser Wechsel geschieht hier in der Regel fließend.

  • Modellbasiertes Testen von Systemen
    Christoph Hilken, AGBS, betreut von Prof. Dr. Jan Peleska

    In gängigen Vorgehensmodellen wird das System zuerst in der standardisierten Systems Modeling Language (SysML) modelliert. Diese Modelle bedürfen aber einer zusätzlichen Validierung, um sie als Basis zur Testgenerierung nutzen zu können. Alternativ kann ein zusätzliches, unabhängiges Modell zur Testgenerierung genutzt werden. Dieser Mehraufwand kann durch eine automatisierte Validierung vermieden werden. Die modellbasierte Testerzeugung ist bereits für einige praktisch relevante Probleme möglich. Die Testmodelle unterliegen dabei aber starken Beschränkungen in Bezug auf Struktur und die verfügbaren Elemente/Diagramme. Die Folge ist, dass gängige Modelle aus dem Systementwurf, auch nach der Validierung, nicht direkt genutzt werden können.

  • Konsistente Systementwicklung
    Judith Peters, AGRA, betreut von Prof. Dr. Rolf Drechsler

    Um ein System zu entwickeln, muss es zuvor - oft von Nicht-Informatikern - in natürlicher Sprache beschrieben werden. Das bedeutet jedoch nicht unbedingt, dass auch das entwickelt wird, was zuvor beschrieben wurde. Der Übertrag von einer natürlichsprachlichen Beschreibung in ein formales Modell (zumeist UML oder SysML) sowie von diesem Modell zum konkreten Code wird in der Regel manuell erledigt. Hierbei kann es zu Missverständnissen und Irrtümer kommen, beispielsweise aufgrund von Mehrdeutigkeiten. Um diese Lücken im konsistenten Systementwurf zu schließen, sollen verschiedene Methoden betrachtet werden, einschließlich der automatischen Verarbeitung natürlicher Sprache und der Code-Generierung aus formalen Modellen.

  • Reversible Logik
    Eleonora Schönborn, AGRA, betreut von Prof. Dr. Rolf Drechsler

    Mit dem Durchbruch des mobilen Internets auf Smartphones und der Integration von Sensorik und Rechenkomponenten in Alltägliche Gegenstände ist der Energieverbrauch von integrierten Schaltkreisen zu einem entscheidenden Entwurfsziel aufgerückt. Bekannte Verfahren wie das Voltage-Scaling stoßen hierbei immer häufiger an ihre Grenzen. Auch die Einbeziehung des Energieverbrauchs in den Entwurfsablauf gestaltet sich schwierig. Reversible Logik ist eine vielversprechende Alternative zu konventioneller Hardware. Sie findet Anwendung in Bereichen wie Low-Power Design oder Quantum Computing. Was für den Entwurf konventioneller Systeme gilt, kann allerdings nicht eins zu eins auf den Entwurf reversibler Schaltungen übertragen werden. Verfahren müssen überdacht oder neu entwickelt werden. In dieser Arbeit soll insbesondere der Entwurf reversibler Schaltungen mit Hardwarebeschreibungssprachen betrachtet werden.

  • Verifikation von Systemmodellen
    Julia Seiter, AGRA, betreut von Prof. Dr. Rolf Drechsler

    Durch den Einsatz von Modellierungssprachen wie z.B. UML und SysML im Systementwurf entsteht zu einem frühen Zeitpunkt eine formale Beschreibung des Systems. Diese Beschreibung kann u.a. für den Korrektheitsnachweis genutzt werden, wofür es bereits vielversprechende Ansätze gibt. Modellierungen wie Aktivitäts- oder Klassendiagramme lassen sich mit den vorhandenen Methoden nur hinsichtlich einzelner Aspekte auf ihre Korrektheit überprüfen, jedoch wird das System nicht als Ganzes betrachtet. Aussagen beispielsweise über die Vollständigkeit der Verifikation lassen sich so nicht treffen und es bleibt unklar, ob die Modellierung noch fehlerhaftes Verhalten zulässt. Daher sollen Methoden und Verifikationsverfahren erforscht werden, die das gesamte System berücksichtigen. Beispielsweise lässt sich auf der betrachteten Ebene bisher nicht feststellen, wann ein System vollständig verifiziert wurde. Weitere Aspekte sind die Äquivalenz zweier Systeme und die Erzeugung von interessanten Eigenschaften, um eine vollständige Abdeckung zu erreichen. Für diese Ziele sollen einerseits bekannte Verfahren verwendet und optimiert, aber auch neue Technologien betrachtet werden.

  • Analyse von Fehlertoleranz
    Niels Thole, ZESY / DLR, betreut von Prof. Dr. Görschwin Fey

    In der aktuellen Entwicklung werden Transistoren in Prozessoren und anderen Systemen immer kleiner. Dadurch werden sie anfälliger gegen kosmische und andere Hintergrundstrahlung. Besonders in der Raumfahrt sind die Systeme starker Strahlung ausgesetzt, weswegen in diesem Bereich noch stärker auf diese Aspekte eingegangen werden muss. Die entscheidende Frage ist: Wie wahrscheinlich ist es, dass ein Fehler im System Auswirkungen für den Benutzer hat? Erste Analysemethoden ermöglichen die Klassifizierung einzelner Schaltkreiselemente, ob sie die Funktionalität des Systems gefährden oder nicht. Hierbei ist allerdings nur eine ja/nein-Antwort möglich, das tatsächliche Risiko wird nicht ermittelt. Bestehende formale Verfahren können bisher nur auf kleine Schaltkreise angewendet werden, während simulationsbasierte Algorithmen nur Abschätzungen der Robustheit liefern. In dieser Arbeit sollen daher hilfreiche Maße entwickelt werden, sowie skalierbare Algorithmen zu deren Berechnung auf großen Schaltkreisen.





Projekte

Wie kann ich aus natürlicher Sprache ein korrektes Programm erzeugen?
Modellgetriebener Systementwurf
» Quelle: Universität Bremen, AG Rechnerarchitektur



Wie sorge ich dafür, dass mobile Systeme weniger Strom fressen?
Die Energiewende im Mikrochip
» Quelle: DFKI GmbH, Cyber-Physical Systems