Offene Themen

Aus den vorgeschlagenen Themen ergeben sich eine Reihe möglicher konkreter Arbeiten. Die genaue Themenstellung wird gemeinsam von Student und Betreuer vor der Arbeit abhängig von der Neigung, dem Interesse, dem Vorwissen und dem erforderlichen Umfang der Arbeit individuell festgelegt. Für andere Themen sind wir, sofern sie ins Spektrum des Instituts passen, jederzeit offen.

Echtzeitanalyse

Echtzeitanalyse für eine Motorsteuerung

Masterarbeit/Bachelorarbeit/Projektarbeit

Mit der Antwortzeitanalyse können Mono-Prozessor-Systeme, die mit festen Prioritäten gesteuert sind auf ihre Echtzeitfähigkeit überprüft werden. Dabei wird für jede Task eine maximale Antwortzeit berechnet: die Zeit die eine Task vom Zeitpunkt ihrer Anregung bis zum Vorliegen des Ergebnisses maximal benötigt. Die jeweiligen Antwortzeiten der Tasks werden anschließend mit den zugehörigen Fristen verglichen, um das System auf seine Echtzeitfähigkeit zu überprüfen.

Bei der klassischen Antwortzeitanalyse wird davon ausgegangen, dass die Ereignisse aller Tasks gleichzeitig auftreten können. Es gibt aber durch die Anwendung vorhandene Beziehungen zwischen Tasks, die vorgeben, dass die jeweiligen Ereignisse nur in einem minimalen Abstand zueinander auftreten können.

Bei Motorsteuergeräten sind diese Beziehungen sehr exakt vorgegeben. Hier werden bei einigen Tasks die Ereignisse nicht durch feste Perioden, sondern durch bestimmte Winkel-Positionen angeregt (sogenannte ratenabhängige Tasks).

In einer vorangegangenen Arbeit wurde bereits eine Analyse entwickelt, welche solche Beziehungen berücksichtigt [Feld, Slomka]. Diese Analyse ist allerdings nur für Tasksets konzipiert, welche ausschließlich aus ratenabhängigen Tasks besteht. Ziel dieser Masterarbeit ist es diese Analyse zu erweitern, so dass gemischte Tasksets (aus ratenabhängigen und periodischen Tasks) analysiert werden können.

Das Thema kann im Umfang an eine Master-, Bachelor- oder Projektarbeit angepasst werden.

Ansprechpartner: Timo Feld

Ereignisabhängigkeiten in verteilten Systemen

Masterarbeit

Um ein System analytisch auf seine Echtzeitfähigkeit zu untersuchen werden im wesentlichen drei Parameter benötigt: die Berechnungsdauern (Worst Case Execution Times), die Perioden und die Fristen der einzelnen Tasks. Bei einigen Systemen können diese Parameter dynamisch durch äußere Einflüsse variieren. Dieses Verhalten tritt insbesondere bei Motorsteuergeräten auf, bei denen die Drehzahl die genannten Parameter beeinflusst. Zusätzlich zu der Abhängigkeit von einer Drehzahl, gibt es weitere Beziehungen zwischen den Tasks, die vorgeben, dass die jeweiligen Ereignisse nur in einem minimalen Abstand zueinander auftreten können.

Der Real-Time Calculus ist ein mathematisch fundiertes Modell zur Analyse und Synthese verteilter Echtzeitsysteme. Bei diesem Modell des Task-Graphen wird durch Ankunftskurven die Anregung des Systems beschrieben. Jede Task modifiziert diese und es verbleibt die ausgehende Ereignisdichte und die verbleibende Rechenzeitkapazität.

Im Rahmen der Masterarbeit soll eine Analyse entwickelt und implementiert werden, welche sowohl die Abhängigkeiten zur Drehzahl als auch die Abhängigkeiten zwischen den Tasks berücksichtigt. Diese Analyse soll auf den Real-Time Calculus aufbauen, so dass verteilte Systeme analysiert werden können.

Ansprechpartner: Timo Feld

Echtzeitanalyse für ratenabhängige Tasks

Bachelorarbeit

Um ein System analytisch auf seine Echtzeitfähigkeit zu untersuchen werden im wesentlichen drei Parameter benötigt: die Berechnungsdauern (Worst Case Execution Times), die Perioden und die Fristen der einzelnen Tasks. Bei einigen Systemen können diese Parameter dynamisch durch äußere Einflüsse variieren. Dieses Verhalten tritt insbesondere bei Motorsteuergeräten auf, bei denen die Drehzahl die genannten Parameter beeinflusst. Im Institut wurde bereits eine Analyse für solche raten-abhängigen Tasks verwendet. Dabei wird allerdings von einem identischen Wert für die Beschleunigung und dem Abbremsen ausgegangen.

Ziel dieser Arbeit ist es, vorhandene Analysen so zu erweitern, dass unterschiedliche Werte für Beschleunigung und Bremsen angenommen werden können.

Ansprechpartner: Timo Feld

Echtzeitanalyse verteilter Systeme mit Berücksichtigung variabler Fristen

Masterarbeit

Um ein System analytisch auf seine Echtzeitfähigkeit zu untersuchen werden im wesentlichen drei Parameter benötigt: die Berechnungsdauern (Worst Case Execution Times), die Perioden und die Fristen der einzelnen Tasks. Bei einigen Systemen können diese Parameter dynamisch durch äußere Einflüsse variieren. Dieses Verhalten tritt insbesondere bei Motorsteuergeräten auf, bei denen die Drehzahl die genannten Parameter beeinflusst.  [Pollex et al]

Der Real-Time-Calculus ist ein mathematisch fundiertes Modell zur Analyse und Synthese verteilter Echtzeitsysteme. Bei diesem Modell des Task-Graphen wird durch Ankunftskurven die Anregung des Systems beschrieben. Jede Task modifiziert diese und es verbleibt die ausgehende Ereignisdichte und die verbleibende Rechenzeitkapazität.

Im Institut für Eingebettete Systeme/Echtzeitsysteme wurden bereits aufbauend auf dem Real-Time Calculus Analysen für variable Parameter entwickelt. Bei diesen Analysen wird allerdings bei jeder Tasks von der minimalen Frist ausgegangen was die Analyse pessimistischer macht.

Ziel dieser Masterarbeit ist der Entwurf und die Implementierung einer neuen (oder die Erweiterung einer vorhandenen) Analyse für verteilte Systeme, welche variable Fristen berücksichtigt und die Genauigkeit verbessert.

Ansprechpartner: Timo Feld

Echtzeitanalyse für verteilte Systeme mit variablen Taskausführungszeiten (ausgehende Ereignisdichte)

Masterarbeit

Um ein System analytisch auf seine Echtzeitfähigkeit zu untersuchen werden im wesentlichen drei Parameter benötigt: die Berechnungsdauern (Worst Case Execution Times), die Perioden und die Fristen der einzelnen Tasks. Bei einigen Systemen können diese Parameter dynamisch durch äußere Einflüsse variieren. Dieses Verhalten tritt insbesondere bei Motorsteuergeräten auf, bei denen die Drehzahl die genannten Parameter beeinflusst. Im Institut für Eingebettete Systeme/Echtzeitsysteme wurden bereits Analysen entwickelt, welche diese Problematik berücksichtigen [Pollex et al]. Diese sind allerdings für Mono-Prozessor-Systeme konzipiert.

Der Real-Time-Calculus ist ein mathematisch fundiertes Modell zur Analyse und Synthese verteilter Echtzeitsysteme. Bei diesem Modell des Task-Graphen wird durch Ankunftskurven die Anregung des Systems beschrieben. Jede Task modifiziert diese und es verbleibt die ausgehende Ereignisdichte und die verbleibende Rechenzeitkapazität. Es soll aufbauend auf dem Real-Time Calculus eine Analyse für verteilte Systeme erforscht werden, welche variable Parameter berücksichtigt.

Ziel dieser Masterarbeit ist ein Teil-Ziel hieraus: der Entwurf und die Implementierung für die Bestimmung der ausgehenden Ereignisdichte.

Ansprechpartner: Timo Feld

Echtzeitanalyse für verteilte Systeme mit variablen Taskausführungszeiten (verbleibende Rechenzeitkapazität)

Masterarbeit

Um ein System analytisch auf seine Echtzeitfähigkeit zu untersuchen werden im wesentlichen drei Parameter benötigt: die Berechnungsdauern (Worst Case Execution Times), die Perioden und die Fristen der einzelnen Tasks. Bei einigen Systemen können diese Parameter dynamisch durch äußere Einflüsse variieren. Dieses Verhalten tritt insbesondere bei Motorsteuergeräten auf, bei denen die Drehzahl die genannten Parameter beeinflusst. Im Institut für Eingebettete Systeme/Echtzeitsysteme wurden bereits Analysen entwickelt, welche diese Problematik berücksichtigten [Pollex et al]. Diese sind allerdings für Mono-Prozessor-Systeme konzipiert.

Der Real-Time-Calculus ist ein mathematisch fundiertes Modell zur Analyse und Synthese verteilter Echtzeitsysteme. Bei diesem Modell des Task-Graphen wird durch Ankunftskurven die Anregung des Systems beschrieben. Jede Task modifiziert diese und es verbleibt die ausgehende Ereignisdichte und die verbleibende Rechenzeitkapazität. Es soll aufbauend auf dem Real-Time Calculus eine Analyse für verteilte Systeme erforscht werden, welche variable Parameter berücksichtigt.

Ziel dieser Masterarbeit ist ein Teil-Ziel hieraus: der Entwurf und die Implementierung für die Bestimmung der verbleibenden Rechenzeitkapazität.

Ansprechpartner: Timo Feld

Simulation eines Motorsteuergerätes mit ChronSim

Masterarbeit

Um ein System analytisch auf seine Echtzeitfähigkeit zu untersuchen werden im wesentlichen drei Parameter benötigt: die Berechnungsdauern (Worst Case Execution Times), die Perioden und die Fristen der einzelnen Tasks. Bei Motorsteuergeräten variieren diese Parameter dynamisch in Abhängigkeit der Motordrehzahl.

Chronsim ist ein Simulationstool mit dem man das Zeitverhalten eines eingebetteten Systems simulieren kann. Im rahmen einer Masterarbeit soll ein Motorsteuergerät mit ChronSim simuliert werden. Dabei sollen die Auswirkungen der variierenden Parameter in Abhängigkeit der Motordrehzahl untersucht werden.

Ansprechpartner: Timo Feld

Implementierung und Vergleich einer Bibliothek zur min-plus und max-plus Algebra

Das Echtzeitkalkül ist ein Verfahren zur Echtzeitanalyse, welches maßgeblich Faltungs- und Entfaltungsoperationen in der min-plus und max-plus Algebra verwendet. Eine Implementation hierzu ist die RTC Toolbox. Es ist eine Bibliothek zu implementieren welche die RTC Toolbox ersetzen kann gemäß den Vorgaben aus der Veröffentlichung "An Algorithmic Toolbox for Network Calculus" von Anne Bouillard und Éric Thierry. Des Weiteren sollen die beiden Bibliotheken miteinander verglichen werden.

Ansprechpartner: Victor Pollex

Mathematischer Vergleich von Methoden der Antwortzeitanalyse und dem Echtzeitkalkül

Für die Echtzeitanalyse eines Systems existieren mehrere Methoden. Darunter befinden sich die Antwortzeitanalyse und das Echtzeitkalkül. Die Arbeiten in der Literatur zu diesen Analysemethoden befassen sich meist mit nur einer dieser Methoden. In den Arbeiten die sich mit beiden Methoden gemeinsam befassen werden diese meist empirisch miteinander verglichen. Daher sollen diese Methoden theoretisch / mathematisch verglichen werden. Die Abschlussarbeit beschränkt sich auf einzelne Aspekte dieser Methoden.

Ansprechpartner: Victor Pollex

Implementierung eines Echtzeitanalysepakets für Mathematica

In der Abschlussarbeit soll ein Paket für Mathematica implementiert werden. Das Packet soll dem Nutzer die Möglichkeit geben eine Echtzeitanalyse auf symbolischer Ebene durchführen zu können.

Ansprechpartner: Victor Pollex, Frank Slomka

Optimierung der Ausführungszeiten von eingebetteten Echtzeitsystemen mit Ereignisströmen

Masterarbeit

Um bei eingebetteten Echtzeitsystemen Energie zu sparen, probiert man unter anderem, die Prozessorleistung herabzusetzen. Damit das System noch funktioniert, müssen bestimmte Anforderungen weiterhin gültig sein. Bei Echtzeitsystemen handelt es sich hierbei in erster Linie um die fristgerechte Abarbeitung von Teilaufgaben. Für einen ideellen Prozessor bestimmte Ausführungszeiten werden mit vorgegebenen Zeitschranken verglichen und damit die Echtzeitfähigkeit des Geräts geprüft. Eine Methodik, diesen Test möglichst schnell durchzuführen und Garantien abgeben zu können, sind Ereignisströme. Aus ihnen generiert man eine Rechenzeitanforderungsfunktion, um die benötigte Rechenzeit nach oben abzuschätzen und diese mit der tatsächlich verfügbaren zu vergleichen. Aufgabe dieser Arbeit ist es, in diesen Vergleich eine Optimierung einzubauen, die die einzelnen Ausführungszeiten maximiert und die Fristen optimiert. Aufgrund der Struktur dieses Problems eignet sich hierfür eine lineare Optimierung. Sicher ist dies nicht der erste Ansatz, dieses Problem anzugehen und so ist es Teil der Aufgabenstellung, bekannte Arbeiten zu studieren und die eigene Optimierung mit den Ergebnissen der bekannten Arbeiten zu vergleichen.

Ansprechpartner:

Echtzeitkommunikationssysteme

Verbesserungen und Erweiterungen von Netzwerk-Simulatoren

Bachelorarbeit

Das Institut für Eingebettete Systeme/Echtzeitsysteme beschäftigt sich unter anderem mit der Fragestellung, wie Kommunikationsnetze echtzeitfähig realisiert werden können. Um verschiedene Ansätze zu erproben zu können, wird häufig auf Simulationen zurückgegriffen, da diese in einem frühen Stadium der Forschung Vorteile gegenüber aufwendigen Feldtests bieten.

Leider zeigen sich jedoch bei der Nutzung von Simulatoren verschiedene Defizite, die im Rahmen der folgenden Praktika beseitigt werden sollen:

  1. Auf dem Markt verfügbare Simulatoren für Netze liefern oft Routinen mit, mit denen gebräuchliche Systeme und weit verbreitete Standards (z.B. Ethernet, WLAN, usw.) simuliert werden können. Eigene Verfahren, etwa im Bereich des Medienzugriffs, lassen sich jedoch nur mit größerem Aufwand realisieren.

    Ziel des Praktikums ist es, eine Schnittstelle zu definieren, die das Einbauen eigener Verfahren nach dem Plugin-Prinzip ermöglicht.

  2. Die verfügbaren Simulationsplattformen bieten im Bereich der Eingabe von Simulationsszenarien Defizite. Insbesondere ist es beispielsweise in Fahrzeug-/Fahrzeug-Netz-Simulatoren bisher nicht üblich, eine Datenrepräsentation (eine Art Landkarte) als Eingabe zu verwenden, die sowohl Geländetopologien als auch Straßenzüge enthält. Diese Informationen wären dann an die Stellen des Simulators durchzureichen, die sie benötigen - etwa die Geländetopologie an die Funkkanal-Simulation und die Straßeninformation zusätzlich an das Bewegungsmodell.

    Ziel des Praktikums ist es, ein Eingabeformat zu definieren und zu implementieren, das es, idealerweise ergänzt um einen grafischen Editor, ermöglicht, eine umfassende Umgebungsbeschreibung (Topologie, Bebauung, Straßenkarte, usw.) in den Simulator zu geben, um so mit möglichst geringem Aufwand möglichst realitätsnah simulieren zu können.

Nützliche Vorkenntnisse:

Java und Grundlagenwissen im Bereich von Rechnernetzen oder in der Nachrichtentechnik sind von Vorteil.

Ansprechpartner:

Steffen Moser

Echtzeitkommunikation in Eingebetteten Systemen

Masterarbeit

Echtzeitkommunikation bedeutet, dass Nachrichten von einer Komponente zu einer weiteren Komponente übertragen werden, wobei von vorne herein feststeht, wie lange die Kommunikation maximal dauert. D.h. das Kommunikationssystem gibt harte Garantien bzgl. Latenz und Durchsatz. Weit verbreitete lokale Kommunikationsnetze wie Ethernet, Wireless LAN oder auch Weitverkehrsnetze wie das Internet geben solche Garantien nicht. Es gibt jedoch Anwendungen, bei denen solche harten Garantien notwendig sind, um technische Prozesse aufrecht erhalten zu können. Beispiele hierfür sind etwa steuergeräteübergreifende Regelungen im Automobil oder Leistungsregelungen in Stromnetzen. Diese Master-Arbeit beinhaltet die Grundlagen von Echtzeitkommunikation sowie den Aufbau von Komponenten eines Systems, in dem mit harten Zeitgarantien kommuniziert wird.

Ansprechpartner:

Steffen Moser

Quality of Service in Ad-hoc-Netzwerken

Masterarbeit

Mobile Ad-hoc-Netzwerke sind vermaschte drahtlose Kommunikationsnetze, zu denen sich einzelne Knoten spontan und unter Selbstkonfiguration zusammenfinden. Meist werden Datenpakete in solchen Netzen mit Hilfe von Multihop-Routing-Verfahren zugestellt, indem beispielsweise jeder Knoten Router-Funktionalitäten für die anderen Knoten übernehmen kann. Mögliche Einsatzgebiete sind Kommunikationssysteme, die ohne Infrastruktur (wie z.B. Mobilfunk-Basisstationen) auskommen müssen - wie etwa Netze für Helfer nach Naturkatastrophen oder für militärische Anwendungen. Ein weiteres Einsatzgebiet sind Fahrzeug-/Fahrzeug-Netze, sogenannte Vehicular Ad-hoc Networks (VANETs), die durch miteinander kommunizierende Fahrzeuge und mit Hilfe von Sensoren auf der Straße den Verkehr sicherer machen sollen.

Häufig wird zur Erforschung und Entwicklung solcher Ad-hoc-Netze auf vorhandene Technologien, wie etwa WLAN aufgesetzt. WLAN bietet aber zunächst keinerlei Quality-of-Service-Unterstützung an, d.h. zeitkritische Anwendungen bekommen etwa keine obere Schranke für die Zustellung einer Nachricht zugesichert. Das ist eine Eigenschaft des verwendeten Medienzugriffsverfahrens "Carrier Sense, Multiple Access with Collision Avoidance" (CSMA/CA).

Wir erforschen am Institut für Eingebettete Systeme/Echtzeitsysteme Möglichkeiten, solche Kommunikationssysteme echtzeitfähig zu realisieren. Im Rahmen dieser Arbeit sollen hierzu verschiedene neue Ansätze theoretisch analysiert und in Simulationen oder ggf. Feldtests praktisch erprobt werden.

Nützliche Vorkenntnisse:

Hilfreich sind gute Kenntnisse im Bereich der Rechnernetze bzw. des Ubiquitous Computing oder in den Grundlagen der Nachrichtentechnik. 

Ansprechpartner:

Steffen Moser

Verbesserung der Simulation der physikalischen Schicht von Kommunikationsnetzen

Masterarbeit

Für die Erforschung neuartiger komplexer Kommunikationsnetze ist der Einsatz von Simulatoren unverzichtbar geworden. Eine Simulation bietet in einem frühen Entwicklungsstadium zwei wesentliche Vorteile: Sie ist in der Regel zum einen kostengünstiger als ein vergleichbar großes reales Experiment. Zum anderen können in Simulationsumgebungen die Umweltparameter vorgegeben und systematisch untersucht werden, während man in realen Experimenten stets mit einer nicht beeinflussbaren und sich veränderbaren Größen zu kämpfen hat. Andererseits nähert eine Simulation ein reales Experiment nur dann gut an, wenn die Simulation entsprechend implementiert wurde. Genau hier gibt es oftmals Defizite, wenn etwa zu stark vereinfachte Annahmen über die Realität gemacht werden.

Für die Erforschung von Kommunikationsnetzen ist es insbesondere erforderlich, dass die physikalische Schicht, also die elektromagnetischen oder akustischen Signale, sowie der Kommunikationskanal, mit hinreichender Realitätsnähe simuliert werden.

Wir erforschen am Institut für Eingebettete Systeme/Echtzeitsysteme das Echtzeitverhalten in Ad-hoc-Netzen - sowohl funkbasiert als auch unter Wasser auf Akustikbasis. Im Rahmen dieser Arbeit soll ein vorhandenes strahlenoptisches Kanalmodell in Hinsicht auf Genauigkeit und Rechengeschwindigkeit, ggf. unter Hinzuzug von Hardware-Unterstützung, optimiert werden.

Nützliche Vorkenntnisse:

Hilfreich, aber nicht zwingend erforderlich, sind Vorkenntnisse in den Bereichen der Computergrafik (hier insbesondere im Bereich des Raytracing) und den Grundlagen der Nachrichtentechnik.

Ansprechpartner:

Steffen Moser

Fehlertolerante On-Chip-Kommunikation

Masterarbeit

Auf Grund der Tatsache, dass die Strukturgrößen in der Herstellung von Mikrochips immer kleiner werden, lassen sich nicht nur immer leistungsstärkere Prozessoren aufbauen. Vielmehr ergeben sich neuartige Anwendungen, wie beispielsweise die Integration kompletter Rechnersysteme auf einem Chip. Die Komponenten eines solchen System-on-a-Chip müssen dazu in der Lage sein, untereinander Nachrichten auszutauschen.

Wegen der Komplexität und der asynchronen Taktung der einzelnen Komponenten eines solchen Systems sind herkömmliche On-Chip-Busse nur bedingt als Kommunikationsstruktur geeignet. Stattdessen wird untersucht, inwiefern Technologien, die aus klassischen Rechnernetzen bekannt sind, für die On-Chip-Kommunikation verwendet werden können. Man spricht in diesem Zusammenhang auch von "Network-on-a-Chip" (NoC). Eine Technologie wären beispielsweise paketvermittelnde Netze, die mit einer geeigneten Switching- bzw. Routingstrategie die Nachrichten von der Quelle zur Senke leiten.

In diesem Zusammenhang ergeben sich interessante Fragestellungen, beispielsweise hinsichtlich der Fehlertoleranz und der Echtzeitfähigkeit.

Wir erforschen am Institut für Eingebettete Systeme fehlertolerante Echtzeitsysteme. Im Rahmen dieser Arbeit soll theoretisch und simulativ untersucht werden, inwiefern sich bestimmte Medienzugriffsverfahren und Routing-Strategien dazu eignen, Datenpakete in einem möglicherweise fehleranfälligen On-Chip-Netzwerk zu leiten. Eventuell wird der Aufbau einer Simulationsinfrastruktur notwendig sein. 

Nützliche Vorkenntnisse:

Hilfreich, aber keine zwingende Voraussetzung, sind gute Kenntnisse der Rechnernetze.

Ansprechpartner:

Steffen Moser

Echtzeitfähiges Ethernet

Masterarbeit

Ethernet nach IEEE 802.3 und seine Erweiterungen, wie Fast-Ethernet und Gigabit-Ethernet, sind aus der Welt der Kommunikationsnetze nicht mehr wegzudenken. Allerdings haben diese Verfahren einen Nachteil: Der Medienzugriff erfolgt mittels des Verfahrens "Carrier Sense, Multiple Access, Collision Detection" (CSMA/CD), das den Netzknoten keinerlei oberen zeitlichen Schranken gewährt. Das Problem ist zwar durch die heute üblichen Sterntopologien (gegenüber der früher üblichen Bustopologie) entschärft, dennoch gibt Ethernet auch heute keinerlei Garantien bei der Zustellung von Frames über (puffernde) Switches.

Im Rahmen dieser Arbeit soll untersucht werden, in wie fern sich andere Medienzugriffsverfahren für lokale Kommunikationsnetze eignen bzw. Kommunikationssysteme mit einem anderen Medienzugriffsverfahren  in einem Line-Sharing-Verfahren mit Ethernet kombinieren lassen.

Nützliche Vorkenntnisse:

Hilfreich, aber nicht zwingend erforderlich, sind Vorkenntnisse in den Grundlagen der Rechnernetze oder der Nachrichtentechnik.

Ansprechpartner:

Steffen Moser

Entwurfsmethodik

Hardwaremonitor zur Laufzeit- und Energiemessung von Mikrokontrollern

Masterarbeit

Eingebettete Systeme sollen optimiert entworfen werden. Das heißt, die geforderte Funktion muss erfüllt werden und dabei soll die erforderliche Hardware so kostengünstig wie möglich sein. Das bedeutet, die Rechenleistung und der Energieverbrauch eines Prozessors müssen exakt an die Anforderungen des zu entwickelnden Systems angepasst sein. Beim Entwurf eines derartigen Systems schätzt man daher die Laufzeiten von Programmen und Programmteilen ab. Das gleiche gilt für den Energieverbrauch. Diese Abschätzungen müssen dann mit Hilfe von Messungen verifiziert werden. Die elektrische Leistung eines Prozessors bei der Programmausführung zu messen, erfordert ein Messsystem, das kleine elektrische Ströme und Spannungen gleichzeitig in kurzer Zeit messen kann. Daher ist die Anforderung sowohl an die digitale als auch an die analoge Hardware hoch. Die analoge Messschaltung soll mit Hilfe einer applikationsspezifischen digitalen Schaltung auf einem FPGAs angesteuert werden, dabei soll die digitale Schaltung in der Lage sein, die Programmausführung zu monitoren und Messungen in Abhängigkeit der jeweiligen Programmausführung automatisch zu starten oder zu beenden. Die Ergebnisse sollen gespeichert werden und statistisch ausgewertet werden können.

In dieser Masterarbeit soll ein FPGA-basierter Hardwaremonitor realisiert werden. Dazu soll das FPGA die bereits digitalisierten Werte von der analogen Messschaltung einlesen. Um die Messungen aber gezielt auswerten zu können, soll der Hardwaremonitor den Adress- und den Datenbus des Mikrokontrollers auswerten. Zum einen, um die gemessenen elektrischen Parameter gezielt Befehlen zuordnen zu können, zum anderen, um später ein spezifikationsgesteuertes Monitoring mit Hilfe von SystemC aufzubauen. Neben der Verwaltung einer Tabelle zur Messwertauswertung soll im FPGA eine schnelle Hardware zur Vorauswertung der Daten aufgebaut werden, um Mittelwerte und Standardabweichungen in Echtzeit bestimmen zu können. Dazu müssen unterschiedliche Konzepte zur Anbindung schneller Speicherbausteine untersucht werden. Ziel ist es, vollständige Programmsequenzen zu monitoren und dann den Energie- und Zeitverbrauch eines Programms in unterschiedlicher Granularität zu bestimmen.

Ansprechpartner: Prof. Frank Slomka

Analoge Strom und Spannungsmessung zur Laufzeit- und Energiemessung von Mikrokontrollern

Masterarbeit

Eingebettete Systeme sollen optimiert entworfen werden. Das heißt, die geforderte Funktion muss erfüllt werden und dabei soll die erforderliche Hardware so kostengünstig wie möglich sein. Das bedeutet, die Rechenleistung und der Energieverbrauch eines Prozessors müssen exakt an die Anforderungen des zu entwickelnden Systems angepasst sein. Beim Entwurf eines derartigen Systems schätzt man daher die Laufzeiten von Programmen und Programmteilen ab. Das gleiche gilt für den Energieverbrauch. Diese Abschätzungen müssen dann mit Hilfe von Messungen verifiziert werden. Die elektrische Leistung eines Prozessors bei der Programmausführung zu messen, erfordert ein Messsystem, das kleine elektrische Ströme und Spannungen gleichzeitig in kurzer Zeit messen kann. Daher ist die Anforderung sowohl an die digitale als auch an die analoge Hardware hoch. Die analoge Messschaltung soll mit Hilfe einer applikationsspezifischen digitalen Schaltung auf einem FPGAs angesteuert werden, dabei soll die digitale Schaltung in der Lage sein, die Programmausführung zu monitoren und Messungen in Abhängigkeit der jeweiligen Programmausführung automatisch zu starten oder zu beenden. Die Ergebnisse sollen gespeichert werden und statistisch ausgewertet werden können.

Insbesondere auf der analogen Seite des Messystems ist die Schaltung sorgfältig aufzubauen. In dieser Masterarbeit sollen mehrere unterschiedliche Schaltungskonzepte zur Messung kleiner Ströme untersucht werden. Dabei sollen verschiedene analoge Standard-ICs ausgewählt werden und im Hinblick auf die Messgenauigkeit und Messgeschwindigkeit untersucht werden. Ausgehend von diesen Bausteinen sollen verschiedene Messkonzepte entwickelt und die resultierenden Schaltungen untersucht werden. Dazu sollen die Schaltungen simuliert werden. Die Simulation kann mit Spice oder auch Matlab/Simscape erfolgen. ggf. können die unterschiedlichen Simulationsprogramme verglichen werden. Ziel der Arbeit ist es, am Ende ein analoges Schaltungskonzept auszuwählen, das in der Lage ist, mehrere Messungen pro Taktzyklus eines Mikrokontrollers zu Messen. Die Realisierung der Schaltung soll dann in einer nachfolgenden Arbeit erfolgen.

 

Ansprechpartner: Prof. Frank Slomka

Automatische Ableitung einer Rechnerarchitektur aus einem Modell

Bachelorarbeit

Die Modellierung zum Entwurf eingebetteter Echtzeitsysteme erfolgt zur Zeit hauptsächlich mit den Methoden der UML (Unified Modelling Language). Allerdings ist diese Modellierungssprache ehr für reine Softwaresysteme geeeignet. Zwar existieren Erweiterungen, wie MARTE und SysML, diese sind aber kaum ausgereift. Am Institut wurde eine neue graphische Beschreibungssprache entwickelt, die insbesondere auch den Hardwareentwurf unterstützt. Da die Sprache es explizit erlaubt die Funktionen des Betriebssystems bzw. die Softwarearchitektur abstrakt zu beschreiben, ist in dieser Bachelorarbeit zu untersuchen, wie die Hardwarestruktur des Systems automatisch aus einer vorhandenen Architekturbeschreibung abgeleitet werden kann. Um derartige Algorithmen oder Transformationen angeben zu können, sind zunächst di dafür notwendigen Datenstrukturen zu spezifizieren. Auf diesen sind dann die Transformationen zu programmieren. Anhand einer vorhandenen Entwurfsstudie (Sonar-System) sind die Ergebnisse der Arbeit dann zu validieren.

Ansprechpartner: Prof. Frank Slomka

Entwurfsraumexploration eingebetteter Systeme

Masterarbeit

Jedes eingebettete System kann unterschiedlich implementiert werden. So ist es denkbar die kompletten Funktionen auf einem starken und schnellen Rechner komplett in Software zu bauen oder aber eine Hardware zu entwerfen, die alle Funktionen durchführt. Heutzutage bestehen eingebettete Systeme aus eine eng verzahnten Hardware/Software-Architektur. Die optimale Hardware/Softwarearchitektur ist schwer zu finden, so sollen die Kosten der Hardware minimiert aber die Funktionen in vorgegebene Zeitfristen ausgeführt werden. Um automatisch eine derartige Hardware/Software-Partitionierung zu finden kann man Optimierungsverfahren einsetzten, die dann eine Entwurfsraumexploration durchführen. Auf der Grundlage der am Institut entwickelten Modellierungssprache zum Entwurf eingebetteter Systeme sollen Datenstrukturen für die Anwendung mit exakten und/oder heuristischen Optimierungsverfahren spezifiziert werden und mit ihrer Hilfe soll ein Verfahren zur Exploration eingebetteter Echtzeitsysteme implementiert und bezüglich seine Leitungsfähigkeit untersucht werden.

Ansprechpartner: Prof. Frank Slomka

Graphisches Entwurfswerkzeug für eingebettete Systeme

Masterarbeit

Auf der Grundlage von iOS und Cocoa/OS-X wurde am Institut ein Werkzeug zur graphischen Modellierung eingebetteter Systeme entwickelt. Mit diesem CASE-Werkzeug (Computer Aided Software Engineering) lassen sich eingebettete Systeme elegant graphisch modellieren. Dabei kommt ein neues Entwurfsparadigma zum Einsatz: Die Entwurfskarte. In der Masterarbeit sollen neue Bedienkonzepte für CASE-Werkzeuge entwickelt und untersucht werden. Insbesondere Handgesten wie sie bei Tablet-Computern zum Einsatz kommen stehen dabei im Fokus. In der Arbeit soll das vorhandene Werkzeug um neue Funktionen für den Hardwareentwurf und die Spezifikation extrafunktionaler Anforderungen erweitert werden. Dabei sollen insbesondere neue interaktive Konzepte der Benutzerführung erforscht werden. Die Programmierung erfolgt in Objective-C unter iOS oder OS-X u.a. auch auf dem iPad.

Ansprechpartner: Prof. Frank Slomka

Smart Systems

Display des Apollo Bordcomputers (DSKY)

Bachelorarbeit

In zukünftigen Laboren des Instituts für eingebettete Echtzeitsysteme soll ein Hardware-In-The-Loop Prüfstand aufgebaut werden. Die Studierenden sollen am praktischen Beispiel lernen, wie ein typischer Entwicklungsprozess für eingebettete Systeme abläuft. Als praxisnahes Beispiel soll der historische Bordcomputer aus dem Apolloraumschiff betrachtet werden. Um einen derartigen Computer zu betreiben wird ein Benutzerinterface benötigt. Im Apollo-Projekt hiess diese Schnittstelle DSKY (DiSplayKeYbord). In dem Labor wird der Computer in einem FPGA (Field Programmable Gate Array) implementiert. In der Bachelorabeit soll nun die Hardware für eine dem originalen DSKY nachempfundene Hardware aufgebaut werden. Dazu ist ein Mikrokontroller zu programmieren, der die Informationen auf dem Display darstellt und die Tastendrücke entgegen nimmt. Dieser Mikrokontroller soll dann über eine zu wählende Schnittstelle (USB, Ethernet) mit dem Computer auf dem FPGA kommunizieren.

Ansprechpartner: Prof. Frank Slomka

Energiemanagement in autonomen Unterwasserrobotern

Masterarbeit

In autonomen, computergestützten Fahrzeugen, setzt man normalerweise konventionelle Regelungen ein. Dabei versucht man einen Kurs und eine konstante Geschwindigkeit beizubehalten. Bei der Erkundung einer Umgebung hängt die Einsatzbereitschaft aber auch von der zur Verfügung stehenden Energie ab. Ist der Treibstoff aus oder die Batterie leer kann ein Roboter die Umgebung nicht mehr erkunden. Viel schlimmer noch, in bestimmten Anwendungen ist es möglich, dass der Roboter nicht mehr an einen Ort zurückkehren kann an dem er gewartet oder mit Energie versorgt werden kann. Das Fahrzeug würde also verloren gehen. In dieser Masterarbeit sollen Konzepte entwickelt werden, den Ladungszustand der Batterie in eine autonomen Unterwasserfahrzeug bei der Regelung und Missionsdurchführung zu berücksichtigen. Darauf aufbauend soll untersucht werden wie diese Eigenschaft der Roboters bei der Missionsplanung berücksichtigt werden kann.

Ansprechpartner: Prof. Frank Slomka

Generische FPGA-Platine

Bachelorarbeit

Für den am Institut entstehenden Unterwasserroboter wurde bereits eine Rechner-Backplane aufgebaut. Diese Backplane ermöglicht es mehrerere Steuerplatinen zu einem verteilten eingebetteten System zusammen zuschalten. Für diese Backplane ist nun eine geeignete Platine für den Steuerrechner aufzubauen. Dabei sollen marktübliche FPGA-Module (Field Programmable Gate Array) verwendet wenden und unter den Vorgaben der Spezifikation der Backplane auf einer zuverlässigen Platine mit passenden I/O-Modulen integriert werden.

Ansprechpartner: Florian Hock

Lernende Kalman-Filter für Inertialnavigation

Masterarbeit

Unterwasser funktioniert kein GPS. daher ist es eine Herausforderung die Position eines Unterwasserroboters zu bestimmen. In der Regel erfolgt die Positionsbestimmung von Unterwasserfahrzeugen mittels Inertial-Navigationssystemen. Laserkreisel oder mechanische Systeme, die die erforderliche Genauigkeit bereitstellen sind sehr teuer. In dieser Arbeit sollen kostengünstige Halbleitersensoren aus dem Automobilbau dahingehend untersucht werden, ob es möglich ist, mit einem lernenden Kalman-Filter die Drift der Sensoren soweit zu reduzieren, dass es möglich wird diese in einem Inertial-Navigationssystem zu verwenden.

Ansprechpartner: Prof. Frank Slomka

Controller/Platform Co-Design

Sensitivitätsanalyse verteilter Regelsysteme

Masterarbeit

Regelapplikationen, bei denen Aktoren, Sensoren und Recheneinheiten Informationen über ein Netzwerk austauschen, nennt man verteilte Regelsysteme. Eine Herausforderung bei dem Entwurf solcher Systeme ist der Einfluss der Plattform auf die Regelgüte. Antwortzeiten von Tasks und Nachrichten verursachen Verzögerungen im Regelkreis, die im allgemeinen destruktive Auswirkungen auf die Regelgüte haben.


Die Annahme, dass die analytisch bestimmbaren schlechtesten Antwortzeiten permanent auftreten, führt zu einer pessimistischen Überschätzung. Daher wurde an dem Institut für Eingebettete Systeme / Echtzeitsysteme das Modell der Verzögerungsdichte entwickelt, dass die Summe der Verzögerungen benachbarter Samples beschreibt.


Ziel dieser Arbeit soll es sein, aus einer Performanzmetrik die maximale Verzögerungsdichte eines Regelkreises abzuleiten. Dazu soll eine MATLAB/Simulink Simulationsumgebung dafür verwendet werden, Impulsantworten eines Regelsysteme systematisch auf die Sensitivität von Verzögerungen an bestimmten Stellen zu untersuchen. Die Erkenntnisse sollen dazu führen, aus einer gegebenen Performanzanforderung eines Regelkreis eine maximale Verzögerungsdichte direkt ableiten zu können.

Nützliche Vorkenntnisse:

Kenntnisse in der Regelungstechnik, sowie Erfahrungen im Umgang mit Matlab/Simulink sind erwünscht.

Ansprechpartner:

Florian Hock

Event-Triggered Control

Masterarbeit

Das Institut für Eingebettete Systeme/Echtzeitsysteme beschäftigt sich unter anderem mit den Fragestellung der Einflussnahme von zeitlichen Einschränkungen auf das Systemverhalten von Reglern in verteilten Systemen.
Eine Regelstrategie, in der die zeitlichen Fristen und das Regelverhalten besonders stark ineinander greifen, ist die Ereignisgesteuerte Regelung (Event-Triggered Control).

Ereignisgesteuerte Regelungen versprechen eine effiziente Regelung bei stark reduziertem Rechenaufwand und geringem Verbrauch von Kommunikationsressourcen.
Dem gegenüber stehen eine nicht-periodische Abtastung und ein aufwändigerer Stabilitätsnachweis als bei konventionellen Reglern.

In der Masterarbeit soll mit Hilfe der Matlab Toolbox SimEvents solch ein Regelkreis modelliert und für einen am Institut entwickelten Prüfstand für Elektromotoren ausgelegt werden.
Dabei sollen die simulativen Erkenntnisse auf eine Zielplattform angewandt werden, sowie durch eine geeignete Hardwarebeschaltung eine flexible Ereignisgenerierung ermöglicht werden.

Nützliche Vorkenntnisse:

Kenntnisse in der Regelungstechnik, sowie Erfahrungen im Umgang mit Matlab/Simulink sind erwünscht.

Ansprechpartner:

Florian Hock

Integrierte Reglerplattform

Masterarbeit

In  Industrieanlagen  und  im  automotiven  Umfeld  werden  Regelstrecken zunehmend über Netzwerke und Bussysteme miteinander vernetzt. Diese Verteilung ermöglicht ressourcensparende Systeme und einen flexiblen Einsatz. Bei solchen verteilten Regelsystemen beein-
flussen sich Reglerfunktionalität und Hardwareplattform gegenseitig.


Die Funktionalität des Regelsystems gibt vor, in welchen Zeitintervallen Sollwertberechnungen durchgeführt werden und welche Sensor- und  Aktordaten  als  Nachrichten  verschickt  werden.  Die  Regelplattform beeinflusst die Reglerperformance, indem sich aus ihr Verzögerungen  ableiten,  die  zeitvariante  Totzeiten  im  Regelkreis  darstellen.
Um mit dieser gegenseitige Wechselwirkungen umzugehen, werden in zukünftigen Systemen die  Funktionalität  eines  Regelsystems  und die  verwendete  Regelplattform  in  einem  integrierten  Entwurf  entwickelt. Diese  Integration wird  besonders  im  automotiven  Umfeld  verlangt,  wo  durch  den  Kostendruck  eine  hohe  Auslastung  gefordert wird.


Ein  Ansatz  wäre  es,  aus  den  Kenntnissen  über  das  zu  regelnde  physikalische  System  und  den verwendeten Regelalgorithmen Aussagen über eine Reduktion der Rechenoperationen zu treffen. So wird beispielsweise  bei  der  modellprädiktiven  Regelung  zu  jedem  Abtastschritt  eine  Prädiktion  über  den  zu erwartenden Verlauf der Zustandsgrößen errechnet. Aus der Kenntnis des zu erwartenden Signalverlaufs können Eigenschaften des Zeitverhaltens der Plattformarchitektur abgeleitet werden. Ein Beispiel wäre die Reduktion  der  Stellwertberechnungen,  wenn  zu  erwarten  ist,  dass  sich  Systemzustände  nahe  des Stabilitätspunktes  befinden.  Weniger  Berechnungen  führen  zu  einer  reduzierten  Rechenzeitanforderung und somit zu einem effektiveren Systementwurf.


Im  Rahmen  der  Masterarbeit  soll  anhand  des  Beispielsystems  eines  Verladekrans  untersucht  werden, inwieweit aus der Zustandsprädiktion zeitliche Einschränkungen und Schmutzeffekte zugelassen werden können.  Diese  Erkenntnisse  sollen  dazu  verwendet  werden,  ein  neues  Anregungsmodell  der Berechnungen zu erstellen und dadurch Auswirkungen auf einen Plattformentwurf zu veranschaulichen.
Die Masterarbeit wird in Kooperation des Institutes für Mess-, Regel- und Mikrotechnik und des Institutes für Eingebettete Systeme/Echtzeitsysteme durchgeführt.
Voraussetzungen sind gute Kenntnisse der Regelungstechnik sowie Grundlagen der Echtzeitsysteme und der  Optimierung.  Alternativ  wird  der  Besuch  der  Vorlesung  „Methoden  der  Optimierung  und  optimalen Steuerung“ parallel zur Masterarbeit empfohlen.

Ansprechpartner:

Florian Hock

Digitale Lehre

Algorithmus nach Quine und McCluskey zum Zuschauen

Masterarbeit

Quine und McCluskey stellten 1952–1956 ein Verfahren vor, mit dem Schaltfunktionen minimiert werden können. Die Ausgabe des von ihnen präsentierten bzw. verbesserten Algorithmus kann zwar auch unter Verwendung eines Karnaugh-Veitch-Diagramms ermittelt werden, doch ist das Quine-McCluskey-Verfahren wesentlich besser an die Durchführung mit Computern angepasst und ist auch bei großen Mengen von Eingangsvariablen noch einfach systematisch anwendbar.

Zur Verwendung in der Lehre ist es interessant, einer Implementierung des Verfahrens nach Quine und McCluskey „bei der Arbeit zusehen“ zu können, wobei jeder Teilschritt visualisiert werden sollte. Im Rahmen dieser Masterarbeit soll einerseits untersucht werden, wie das Verfahren didaktisch am geschicktesten präsentiert werden kann, und andererseits das konzipierte Visualisierungssystem implementiert werden.

Was die konkrete Art der visuellen Umsetzung anbelangt, gibt es noch keine feste Vorgabe; eigene Vorschläge sind willkommen. Wichtiges Vorwissen umfasst neben dem natürlich essenziellen Verständnis des Quine-McCluskey-Verfahrens gute Programmierkenntnisse in höheren Programmiersprachen und Kenntnis von bzw. Erfahrung mit für die Visualisierung eingesetzten Bibliotheken, Frameworks, Hilfsprogrammen und/oder Plattformen. Etwas didaktisches Gespür ist von Vorteil. Diese Masterarbeit richtet sich speziell an Studierende der Medieninformatik, aber auch andere Interessierte sind natürlich willkommen.

Ansprechpartner: Nicolas Roeser

Sicherheit in Eingebetteten Systemen, PUFs

Untersuchung möglicher Abhängigkeiten zwischen der Entropie von PUFs und der Alterung von FPGAs.

Bachelorarbeit

Physical Unclonable Functions (PUFs) sind Schaltungen, die es ermöglichen, unterschiedliche Instanzen einzelner integrierter Schaltungen voneinander zu unterscheiden. Zwar werden alle Schaltungen im gleichen Prozess mit immer wieder denselben Masken gefertigt, trotzdem unterscheidet sich jede einzelne Schaltung auf einem Waver durch ungewollte Prozessvariationen während der Herstellung. Mit Hilfe der PUFs werden diese Variationen gemessen und aus diesen individuellen Schaltungseigenschaften wird dann ein möglichst eindeutiger geheimer Schlüssel zur Identifikation und Authentifizierung der Schaltung gewonnen.

Es gibt unterschiedliche Möglichkeiten, PUFs zu implementieren. Die bekanntesten sind die Arbiter-, die Ringoszillator- und die SRAM-basierte PUF. Inzwischen existieren unterschiedliche Implementierungen dieser Schaltungen auf FPGAs.

In der Bachelorarbeit soll untersucht werden ob eine Alterung von FPGA-Zellen einen Einfluss auf die generierten Schlüssel hat. Dazu soll eine größere Anzahl an FPGAs über einen längeren Zeitraum zyklisch neu programmiert werden. Die Implementierung von PUFs auf einem FPGA wurde bereits in einer früheren Masterarbeit entwickelt, und kann somit für den Versuchsaufbau verwendet werden.

Aufgrund der längeren Laufzeit des Versuchs (ca. 3  Monate), ist diese Arbeit als studienbegleitende Bachelorarbeit ausgelegt. Zu Beginn steht die Konzeption und der Aufbau des Versuchs. Während der Laufzeit muss dann in regelmäßigen Abständen überprüft werden ob der Versuch noch funktioniert, sowie erste Messergebnisse gesichtet werden, welches aber keine Beschäftigung mit der Arbeit in Vollzeit benötigt. Am Ende steht die Auswertung der Ergebnisse.

Ansprechpartner: Nicolas Roeser

Komplexität von PUFs

Masterarbeit

Physical Unclonable Functions (PUFs) sind Schaltungen, die es ermöglichen, unterschiedliche Instanzen einzelner integrierter Schaltungen voneinander zu unterscheiden. Zwar werden alle Schaltungen im gleichen Prozess mit immer wieder denselben Masken gefertigt, trotzdem unterscheidet sich jede einzelne Schaltung auf einem Waver durch ungewollte Prozessvariationen während der Herstellung. Mit Hilfe der PUFs werden diese Variationen gemessen und aus diesen individuellen Schaltungseigenschaften wird dann ein möglichst eindeutiger geheimer Schlüssel zur Identifikation und Authentifizierung der Schaltung gewonnen.

Es gibt unterschiedliche Möglichkeiten, PUFs zu implementieren. Die bekanntesten sind die Arbiter-, die Ringoszillator- und die SRAM-basierte PUF. Inzwischen existieren unterschiedliche Implementierungen dieser Schaltungen auf FPGAs.

In der Masterarbeit soll ein am Institut entwickeltes Komplexitätsmaß für logische Schaltungen zur Komplexitätsmessung von PUFs erweitert werden. Zum einen sind die analogen Schaltungsteile einer PUF bezüglich ihrer Komplexität zu untersuchen, zum anderen ist die Komplexitätsmetrik für analoge Transistorschaltungen zu erweitern.

Ansprechpartner: Nicolas Roeser

Unterwasserkommunikation

Unterwasserkommunikation/-navigation

Im Rahmen des Projektes U-Wave wird am Institut für Eingebettete Systeme/Echtzeitsysteme eine Lehr- und Forschungsplattform für Eingebettete Systeme in Form eines autonomen Unterwasserroboters (Autonomous Underwater Vehicle, AUV) entwickelt. Dieser Unterwasserroboter soll später als Plattform für Tests und Experimente dienen. Dabei ist der Schwerpunkt meiner Forschung, auf den modellbasierten Ansatz zur Entwicklung von Systemen zur Datenübertragung in Wasser gelegt. Diese zu übertragenden Daten variieren dabei in ihrer Größe und Wichtigkeit. Bei der Unterwasserkommunikation werden zwar zum Teil elektromagnetische Wellen zur Informationsübertragung genutzt, allerdings ist dies mit einem erheblichen Aufwand in Form der genutzten Hardware und der benötigter Leistung Verbunden. Daher wird für das AUV der Einsatz von Schall als Informationsträger bevorzugt. Doch auch diese Übertragung ist durch die Diffusion, der Reflexion, dem Doppler-Effekt, der Zeitverzögerungen, der Temperatur, dem Wasserdruck, dem Umgebungsrauschen und schlussendlich dem Übertragungsverlust komplex. Derzeit existiert ein Modell eines funktionierenden QPSK-Modems. Dieses verfügt über eine Kanalcodierung, zur Korrektur von Störungen des Übertragungskanals, die den Reed-Solomon-Codierer und den Faltungscodierer kombiniert. Des Weiteren wurde ein Workflow entwickelt um den digitalisierbaren Bereich des Modems (Hardware) automatisch zu generieren und auf einen FPGA zu testen. Dieses Modell soll nun in Folgearbeiten in den Bereichen der Software- und Hardwareentwicklung weiterentwickelt werden.

Offene Bachelor-Themen:

Entwicklung und Evaluation einer Anbindung:

Der digitale Bereich des generierten Modems benötigt eine Anbindung an den Transducer (Schallwandler). Damit verbunden ist eine Filterung und Verstärkung der Signale. Die Herausforderung in diesem Bereich liegt darin das später unterschiedliche Frequenzbereiche getestet werden sollen und die entwickelte Hardware adaptiv eingesetzt werden kann. Des Weiteren beinhaltet sie einen Verstärker, dieser soll später so gesteuert werden das die Sendeleistung der Umgebung angepasst werden kann.

Entwicklung bzw. Erweiterung des bestehenden Kommunikations-Modelles:

Für das bereits entwickelte Modell gibt derzeit nur eine Modulationsart und eine Kombination aus zwei Codieren. In weiteren Arbeiten sollen diese zum einen Erweitert werden und zum anderen auch adaptiv integriert werden. Das wären im Bereich der Modulation zum Beispiel FH-FSK und OFDM und im Bereich der Kanalcodierung zum Beispiel TCM (Trellis-Code-Modulation) und LDPC (Low-Density-Parity-Check-Codes).

Entwicklung eines Controllers:

Das entwickelte Modell benötigt für einen praktischen Einsatz eine erweiterbare Steuerung. Dazu sollte das generierte Hardware-Modell an einen Soft- oder Hardcore angebunden und zusätzlich ein Grundlegendes Konzept zur Steuerung des Modems entworfen werden.

Entwicklung eines Modems basierend auf Software:

Für einen Vergleich der Hardware mit einer reinen Softwareimplementierung auf einem FPGA muss das existierende Modell umgesetzt und im Anschluss nach spezifizierten Kriterien analysiert und evaluiert werden.

Entwicklung einer Kommunikationsbasierten Wegfindung: 

Im Rahmen von studentischen arbeiten wurde/wird ein Algorithmus entwickelt welcher den unter den gegebenen Parametern und Randbedingungen den besten Weg findet. Dieser Algorithmus soll nun so angepasst werden, dass dieser zusätzlich die besten Kommunikationspunkte bezogen auf variable Parameter Weg identifiziert und in Form eines Kommunikationsprotokolls zur Verfügung stellt.

Offene Master-Themen(Abschlussarbeiten/Projekte):

Sphärische Unterwasser Navigation und Lokalisation:

Die Navigation unter Wasser gestaltet sich durch die Bewegung und die sich ständig verändernde Umgebung als schwierig, dadurch ist der Aufbau von Unterwasser-Netzwerken eine der größten Herausforderungen in diesem Bereich. Im Rahmen dieser Arbeit soll ein Algorithmus zur relativen Positionsbestimmung der Netzwerkteilnehmer unter Wasser konzipiert und Simuliert werden.  

 

Zeit-Synchronisation für Unterwasser-AdHoc-Netzwerk-Kommunikation:

Die Zeitsynchronisation ist eine schwierige aber notwendige Aufgabe. Bei der Unterwasserkommunikation stellt sie uns aber vor ein große Herausforderung. Eine grundsätzliche Idee ist hierbei das nutzen einer virtuellen Clock über die jeder Teilnehmer verfügt. Im Rahmen dieser Arbeit soll ein Konzept zur Entwicklung und Austausch  (Kommunikations-Protokoll) der Notwendigen Daten zur erstellen der virtuellen Clock erstellt und simuliert werden.     

Konzipierung einer Unterwasser-Boje (Bouye):

Die Kommunikation unter Wasser ist durch die sich ständig ändernden Umgebungsparameter immer noch eine sehr große Herausforderung. Um Systeme, welche mittels des Modellbasierten Ansatzes Entwickelt werden, zu testen muss auch der der Kanal als solches Simuliert werden. Die derzeit verfügbaren Kanalsimulatoren für die Unterwasserkommunikation sind aber nicht in der Lage das Realistische verhalten zu simulieren und führen dazu das System mittels Prototyping sehr teuer unter echten Bedingungen  getestet und verifiziert werden müssen. In dieser Arbeit soll dazu eine Basisstation (Boje) zur Unterwasserkanal-Ausmessung konzipiert werden. Damit die Umweltdaten und das Signal-Verhalten speichert um diese für eine später Simulation zu nutzen. Die Boje soll hierbei Schwimmtauglich und adaptiv programmierbar entwickelt werden. 

Konzipierung einer Unterwasser-Sensor-Node:

Die Kommunikation unter Wasser ist durch die sich ständig ändernden Umgebungsparameter immer noch eine sehr große Herausforderung. Um Systeme, welche mittels des Modellbasierten Ansatzes Entwickelt werden, zu testen muss auch der der Kanal als solches Simuliert werden. Die derzeit verfügbaren Kanalsimulatoren für die Unterwasserkommunikation sind aber nicht in der Lage das Realistische verhalten zu simulieren und führen dazu das System mittels Prototyping sehr teuer unter echten Bedingungen  getestet und verifiziert werden müssen. In dieser Arbeit soll dazu ein günstiger Sensor-Node konzipiert werden, der die Umweltdaten und das Signal-Verhalten speichert um diese für eine später Simulation nutzbar macht. Dieser Sensor-Node soll dabei mit allen benötigten Sensoren sowie einen Impulsgeber für Bewegungen beinhalten.

Nützliche Vorkenntnisse:

Nützlich, aber nicht zwingend notwendig, wären hierfür Vorkenntnisse aus dem Bereich der Nachrichtentechnik, HDL, Matlab/Simulink und C oder C++

Ansprechpartner:

Marcel Rieß

Komplexität von Hard- und Software

Komplexität von PUFs

Masterarbeit

Physical Unclonable Functions (PUFs) sind Schaltungen, die es ermöglichen, unterschiedliche Instanzen einzelner integrierter Schaltungen voneinander zu unterscheiden. Zwar werden alle Schaltungen im gleichen Prozess mit immer wieder denselben Masken gefertigt, trotzdem unterscheidet sich jede einzelne Schaltung auf einem Waver durch ungewollte Prozessvariationen während der Herstellung. Mit Hilfe der PUFs werden diese Variationen gemessen und aus diesen individuellen Schaltungseigenschaften wird dann ein möglichst eindeutiger geheimer Schlüssel zur Identifikation und Authentifizierung der Schaltung gewonnen.

Es gibt unterschiedliche Möglichkeiten, PUFs zu implementieren. Die bekanntesten sind die Arbiter-, die Ringoszillator- und die SRAM-basierte PUF. Inzwischen existieren unterschiedliche Implementierungen dieser Schaltungen auf FPGAs.

In der Masterarbeit soll ein am Institut entwickeltes Komplexitätsmaß für logische Schaltungen zur Komplexitätsmessung von PUFs erweitert werden. Zum einen sind die analogen Schaltungsteile einer PUF bezüglich ihrer Komplexität zu untersuchen, zum anderen ist die Komplexitätsmetrik für analoge Transistorschaltungen zu erweitern.

Ansprechpartner: Nicolas Roeser

Portierung eines Verfahrens zur Hardwarekomplexitätsmessung auf Software

Masterarbeit

Möchte man eine neue Software entwickeln, ist es ratsam, zu Beginn den zu erwartenden Aufwand abzuschätzen. So kann einerseits die Realisierbarkeit des Projekts geprüft werden und können andererseits die voraussichtlich benötigten Ressourcen (Personen, Geld, Geräte usw.) eingeplant werden. Der Aufwand sollte auch im Laufe der Projektentwicklung ständig im Auge behalten werden, um schnell auf Änderungen reagieren zu können; nach Abschluss des Projektes lohnt sich das Festhalten des tatsächlichen Aufwands als Referenz für zukünftige Vorhaben.

Derzeit wird im Institut für Eingebettete Systeme/Echtzeitsysteme an einem Verfahren zur Bestimmung von Komplexität geforscht. Es unterscheidet sich wesentlich von existierenden Aufwands- bzw. Komplexitätsmetriken. Die neue Metrik ist für Aussagen über Hardware einsetzbar und soll nun über unterschiedliche Herangehensweisen auch auf Software (Computerprogramme) angewendet werden.

Die bei der Analyse von Hardwarekomponenten durchzuführenden Schritte können ähnlich auch auf Software angewendet werden, nur ist zuvor eine entsprechende Abbildung bzw. Zuordnungsvorschrift zu erstellen. Beispielsweise können Eingänge von Registern einer Hardwareschaltung als Werte von Variablen in Software auftreten. Diese Masterarbeit soll die Übertragung des Vorgehens der Hardware-Metrik auf die Software-Seite untersuchen.

Ein gutes Verständnis im Bereich technischer Informatik und speziell der Abläufe innerhalb von einfachen Rechnersystemen, wie zum Beispiel einer MIPS-Maschine, ist erforderlich. Darüber hinaus ist es eine wichtige Voraussetzung, solide Kenntnisse in einerseits Assemblerprogrammierung bzw. maschinennaher Programmierung in C und andererseits mindestens einer höheren Programmiersprache wie wiederum C oder Java oder einer Skriptsprache oder Ähnlichem zu haben.

Ansprechpartner: Nicolas Roeser

Komplexitätsanalyse von SystemC-Projekten

Masterarbeit

Vor, während und nach der Laufzeit von Entwicklungsprojekten im Hard- oder Softwarebereich ist eine Abschätzung des zu erwartenden Restaufwands bzw. des bis dahin tatsächlichen Aufwands ein Hilfsmittel für die Machbarkeitsanalyse und für die Planung, Umsetzung und Optimierung der Vorgehensweise und auch der Kosten für die Entwicklung. Die Beschreibung von Projekten erfolgt über vielfältige Mittel und Sprachen, darunter beispielsweise Verilog, VHDL, SystemC, C, UML oder nach vorgegebenen Handbüchern strukturierte Textdateien.

Im Institut für Eingebettete Systeme/Echtzeitsysteme wird zurzeit die Komplexität von Hardware und Software mit neuartigen Analyseverfahren untersucht. Außerdem gibt es ein Projekt, in dem ein vorgegebenes Echtzeitsystem mittels SystemC auf verschiedenen Entwurfsebenen mit industrierelevanten Standards modelliert wird.

In dieser Masterarbeit soll nun an SystemC-Projekte wie das gerade genannte angeknüpft und eine Komplexitätsmessung auf mehreren Entwurfsebenen durchgeführt werden. Dies erfordert unter anderem die Adaption eines vorhandenen Komplexitätsanalyseverfahrens in Richtung SystemC. Solide Vorkenntnisse in SystemC sind vonnöten bzw. sich zu Beginn zügig anzueignen.

Dieses Thema kann auch bereits als Master-Projekt begonnen werden bzw. in diesem Themenbereich ist ein Master-Projekt mit angepasstem Umfang möglich.

Ansprechpartner: Nicolas Roeser

Auswirkung der Komplexität auf Designentscheidungen

Masterarbeit

Insbesondere zu Beginn, aber auch während und nach der Umsetzung von Hardware- oder Softwareentwicklungen bietet der geschätzte Aufwand, der sich aus der Komplexität des Projekts ergibt, eine Richtschnur, um abzuschätzen, ob ein Projekt überhaupt in Angriff genommen werden kann, und, welche Teile davon umsetzbar sind und welche nicht. Nicht nur auf die Entscheidungen von Management-Ebenen, sondern auch direkt bei den Entwicklungsteams von Hard- oder Softwareprojekten hat die ermittelte Komplexität Einfluss.

Zurzeit wird im Institut für Eingebettete Systeme/Echtzeitsysteme eine neue Metrik zur Komplexitätsmessung von Hardware und Software gebildet und erprobt. Diese Metrik soll nun angewendet werden und im Rahmen einer Masterarbeit untersucht werden, inwiefern bei vordefinierten Schranken für den Aufwand eines Projekts (beispielsweise durch ein vorgegebenes Budget für Personalkosten) Designentscheidungen bezüglich Umsetzung von Projektanforderungen, Entwurf, Änderung oder Weiterentwicklung bspw. einer ALU oder CPU flexibel möglich sind oder erzwungen werden.

Vorkenntnisse und Interesse im Gebiet der Rechnerarchitektur, speziell der Konstruktion eines einfachen Rechners wie der MIPS, sind hilfreich.

Ansprechpartner: Nicolas Roeser

Komplexitätsanalyse von Zustandsautomaten

Bachelorarbeit

Die Umsetzbarkeit eines Projekts, Art und Weise der Umsetzung, die Projektdauer und der Aufwand an Personen, Geld, Tools usw. hängen direkt mit der Komplexität zusammen, die sich aus einem Vorhaben ergibt. Dies gilt schon bei sehr elementaren Projekten wie einfachen Schaltnetzen und lässt sich ebenso für größere, abstraktere oder anders formulierte Projekte fortsetzen.

Für die Analyse von Zustandsautomaten wie den aus den Grundlagen der Rechnerarchitektur bekannten Moore- und Mealy-Automaten wurde ein elementares Verfahren konzipiert, das im Rahmen dieser Bachelorarbeit benutzt und verbessert oder erweitert werden soll. Ziel ist die Implementierung eines effizienten Algorithmus zur Komplexitätsuntersuchung von Automaten in der Programmiersprache Java.

Kenntnisse der Programmierung in Java sowie solides Verständnis von Zweck, Aufbau und Transformation von Zustandsautomaten sind erforderlich, Vorkenntnisse aus verwandten Gebieten der theoretischen Informatik möglicherweise hilfreich.

Ansprechpartner: Nicolas Roeser

Visualisierung von Komplexität

Bachelorarbeit

Eine prägnante, eingängige, intuitiv verständliche visuelle Darstellung von Sachverhalten ist oft für Menschen wertvoller als lange Texte, Tabellen oder Datenkolonnen. Im Gegensatz zu Computern sind Menschen in der Lage, relativ schnell Übersichten oder Zusammenhänge aus Bildern statt aus anderen Rohdaten zu erfassen.

Zurzeit wird im Institut für Eingebettete Systeme/Echtzeitsysteme die Komplexität von Hardware und Software mit neuartigen Analysemethoden untersucht. Die dafür entwickelten (Kommandozeilen-)Hilfsprogramme schreiben während der Analyse höchstens ein paar Debugging-Meldungen ins Log und geben als Ergebnisse reine Texte bzw. Zahlenreihen aus.

Wünschenswert wäre, während der Komplexitätsanalyse „zuschauen“ zu können und das Verfahren grafisch angezeigt zu bekommen, und vor allem, im Anschluss an die Analyse durch eine übersichtliche grafische Repräsentation des analysierten Systems die für große Komplexität verantwortlichen „Hotspots“ einfach identifizieren und durch das System „zoomen“/„navigieren“ zu können. Diese Funktionalität kann im Rahmen einer Bachelorarbeit entwickelt und angeschlossen werden.

Was die Art der Visualisierung anbelangt, gibt es noch keine verbindlichen Vorgaben; speziell Studierende der Medieninformatik werden hier großartige eigene Ideen einbringen können. Programmiererfahrung mit der Programmiersprache Java sowie gute Kenntnisse von Visualisierungs-Tools, -Bibliotheken und -Frameworks sind für die Bearbeitung dieses Themas nützlich.

Ansprechpartner: Nicolas Roeser

Datenanalyse in großen Mengen von Komplexitätskennzahlen

Bachelorarbeit

Zur Bestimmung der Komplexität von Schaltungen (oder anderer Hardware) und Software (zum Beispiel Assemblercode) wird im Institut für Eingebettete Systeme/Echtzeitsysteme an einem neuen Analyseverfahren geforscht. Eine Metrik kann bzw. soll dabei für eine eingegebene Schaltung oder ein eingegebenes Stück Software die Komplexität als Kenngröße liefern. Vielfach ist es nicht direkt möglich, gleich die bestmögliche Implementierung für diese Metrik anzugeben; dies ist eher ein stufenweiser Verbesserungsprozess. Daher ist es interessant, mit einer bestehenden Metrik einige tausende oder mehr Eingaben durchzuprüfen und die Ergebnisse anschließend auf Parallelen oder Auffälligkeiten zu untersuchen; die daraus gewonnenen Erkenntnisse können dann wiederum in eine Verbesserung des Ansatzes einfließen.

In dieser Bachelorarbeit soll unter Verwendung von Algorithmen und Verfahren aus dem Data Mining ein Vergleich der Kennzahlen von großen Mengen von Schaltungen/Funktionen durchgeführt werden, die zu diesem Zweck automatisch generiert werden können. So könnte ein Rechner beispielsweise Cluster in den Daten finden und Menschen auf Zusammenhänge aufmerksam machen.

Sinnvolle Vorkenntnisse liegen im Bereich des maschinellen Verarbeitens großer Datenmengen sowie sind Kenntnisse zu Datenreduktion und Data-Mining. Solide Programmierkenntnisse in einer gängigen Skriptsprache und/oder der Programmiersprache Java oder C werden vorausgesetzt.

Ansprechpartner: Nicolas Roeser

Hardwareentwicklung auf FPGAs

FPGA-basierte Steuerung und Datenaufnahme eines hochauflösenden Fluoreszenzmikroskops

Masterarbeit

Thema

Bildgebung dynamischer Vorgänge innerhalb biologischem Gewebe oder in auch in lebenden Zellen ist eine Herausforderung im Bereich Mikroskopie. Viele Vorgänge finden auf schnellen Zeitskalen und im Bereich von Nanometern statt und erfordern Mikroskope mit schneller Datenaufnahme und hoher Auflösung.

Im Institut Biophysik entwerfen wir ein neues Fluoreszenzmikroskop, das auf dem Prinzip der stimulierten Emission (STED) basiert und einen hohen Grad an Parallelisierung vorweist. Ein Bündel aus 64 Laserstrahlen wird über eine Probe gerastert und emittierte Fluoreszenz wird mit Hilfe eines spezialangefertigten Einzelphotonendetektors gemessen, der aus einer Anordnung einzelner Detektoren besteht.

Ziele

Das Ziel der Arbeit ist der Entwurf und die Implementierung einer Einheit für Echtzeit-Datenaufnahme und -Steuerung des Mikroskops. Dies beinhaltet FPGA-Entwicklung und -Programmierung mit VHDL und schneller Hardware.

Das Projekt ist an der Schnittstelle von Echtzeitberechnungen und neuen Entwicklungen im Bereich Biophysik und biologischer Bildgebung, daher sind wir an hochmotivierten Studierenden interessiert, die sich an die Grenze von Instrumentenentwicklung und Hardwareprogrammierung begeben.

Kontakt

Nicolas Roeser, Institut für Eingebettete Systeme/Echtzeitsysteme

Uwe Jantzen, Institut für Biophysik

Prof. Frank Slomka, Institut für Eingebettete Systeme/Echtzeitsysteme

Prof. Jens Michaelis, Institut für Biophysik