General Topics / Allgemeine Themengebiete
Students interested in any of these research areas are encouraged to contact the respective supervisor to discuss potential thesis projects in greater detail.
- Modellierung und Optimierung der Rechenleistung von Anwendungen auf modernen Architekturen (z.B. Intel, ARM, AMD, Nvidia) / Performance modeling and optimization of applications for modern architectures (e.g., Intel, ARM, AMD, Nvidia)
Ansprechpartner: Prof. Dr.-Ing. Dietmar Fey
- High-Level-Synthesis für HSA (HSAHLS)
Ansprechpartner: Philipp Holzinger
- Entwurf/Realisierung von eigenen Prozessoren als Beschleuniger für neuronale Netze / Design/realization of custom processors as accelerators for neural networks
Ansprechpartner: Prof. Dr.-Ing. Dietmar Fey
- Lehrinnovationen im Bereich der Rechnerarchitektur (Entwicklung von didaktischen Simulatoren, automatisierte Analyse von Lernprozessen, …)
Ansprechpartner: Tobias Baumeister
- Posit-Arithmetik als Ersatz für IEEE-Floating-Point Standard (siehe weiter unten auf dieser Seite für konkrete Themen)
Ansprechpartner: Thomas Schlögl
- Verbesserung von Open-Source Software für Chip Design (siehe weiter unten auf dieser Seite für konkrete Themen)
Ansprechpartner: Thomas Schlögl & Michael Kupfer
Concrete Thesis Topics / konkrete Themen Abschlussarbeiten
Closing the Gap: Implementation and Evaluation of Advanced Optimization Techniques in an Open-Source SRAM Compiler
Art der Arbeit:
Bachelorarbeit/Projektarbeit/Masterarbeit
Betreuer:
Lehrstuhl für Informatik 3 (Rechnerarchitektur)
Email: thomas.schloegl@fau.de
Hintergrund:
Momentan produziert Open-Source Software für den Chip Design noch schlechtere (langsamere, größere, energie-hungrigere) Designs als kommerzielle Werkzeuge, aber diese Lücke schließt sich, trotz dem jahrzehntelangem Entwicklungsvorsprung, immer weiter. In dieser Arbeit soll der Open-Source SRAM Speicher Compiler „OpenRAM“ mit fortgeschrittenen Optimierungstechniken verbessert. SRAM ist die grundlegende Speichertechnologie in modernen Prozessoren und (KI-) Beschleunigern und wird genutzt um Caches, Registerfiles oder allgemein schnelle Puffer zu implementieren.
Problemstellung:
In dieser Arbeit kann eines von drei vorgeschlagenen Themen bearbeitet werden:
- Verbesserte Routing Algorithmen: momentan verwendet OpenRAM einen recht konservativen Routing-Algorithmus, wodurch die Größe des gesamten SRAM Blocks vergrößert wird. Durch die Verwendung/Implementierung besserer Routing-Algorithmen könnte die Größe um bis zu 30% reduziert werden. Schlüsselwort: congestion-aware routing.
- Verbesserte Adressdekodier-Logik: momentan wird die anliegende Speicheradresse in 2 Stufen dekodiert. Besonders für größere SRAM Blöcke (> 500kB) wird dadurch die zeitliche Verzögerung problematisch. Durch die Verwendung eines 3-stufigen hierarchischen Dekodierers, oder durch „Transmission Gate“-Logik könnte die Verzögerung um 25% reduziert werden.
- Automatisches Einstellen der Verzögerungslogik: momentan muss für das Lesen (das Ansteuern des Sense Amplifiers) noch manuell die Verzögerungskette (delay chain) aus Puffers instantiiert werden um zum richtigen Zeitpunkt ein Enable-Signal zu setzen. Anstatt dass der Designer die Länge der Delay-Chain per Trail-&-Error zur Designzeit setzen muss, könnte dies durch eine automatische Selbstkalibrierung während der Charakterisierung des zu generierenden SRAM Blocks passieren. Dadurch würde die schnellstmögliche Lesegeschwindigkeit ohne manuelles Tuning ermöglicht werden und einer manueller Schritt während der Generierung von SRAM entfernt.
Dein Profil:
-
Grundkenntnisse in Digitaltechnik (z.B. Verständnis von Logikgattern)
- Python (OpenRAM ist in Python geschrieben) & Objekt-orientierte Programmierung
-
Interesse am Arbeiten mit Open-Source-Tools.
30% Concept
50% Implementation
20% Benchmarking
Implementierung und Evaluierung von Transformer Neuronalen Netzen mittels Posit Arithmetik
Art der Arbeit:
Bachelorarbeit/Masterarbeit/Projektarbeit
Betreuer:
Lehrstuhl für Informatik 3 (Rechnerarchitektur)
Email: thomas.schloegl@fau.de
Beschreibung:
Posits, 2017 von John L. Gustafson eingeführt, stellen eine Alternative zum IEEE-754 Gleitkomma-Arithmetik Standard dar. Laut anfänglicher Untersuchungen scheinen sie Vorteile in der Darstellung kleiner Zahlen und in ihrer dynamischen Reichweite im Vergleich zum etablierten Standard zu besitzen. In einigen Veröffentlichungen wurde schon gezeigt, dass sich Posits mit geringen Bitbreiten hervorragend für das Training von Neuronalen Netzen (z.B. Convolutional Neural Networks, CNN) eignen und sogar IEEE Floats dabei überbieten können.
In dieser Arbeit soll nun untersucht werden ob sich Posits auch für das Training von Transformer Modellen, welche die Grundlage des aktuellen KI-Booms sind, eignen und evtl. sogar mit den von Google eigens dafür entwickelten 16-Bit breiten „bfloats“ konkurieren können. Dafür soll ein einfaches Transformer-Netzwerk (z.B. für das Vorhersagen des nächsten Buchstabens in einem unvollständigen Eingabewort) implementiert und danach im Vergleich zu anderen Floating-Point Darstellungen evaluiert werden.
30% Concept
40% Implementation
30% Benchmarking
Quantifizierung der Energiekosten von Datentransfer: Eine schichtübergreifende Analyse von RISC-V-Architekturen mittels gem5 und McPAT
Art der Arbeit:
Bachelorarbeit/Masterarbeit
Betreuer:
Thomas Schlögl
Lehrstuhl für Informatik 3 (Rechnerarchitektur)
Email: thomas.schloegl@fau.de
Kontext:
Während sich die klassische Algorithmenanalyse primär auf die Zeitkomplexität (O(N)) konzentriert, hat sich der zentrale Engpass moderner Systeme auf den Energieverbrauch verlagert, insbesondere auf die Energie, die für den Datentransport innerhalb der Speicherhierarchie aufgewendet wird. Diese Arbeit entwickelt ein Simulations-Framework auf Basis von gem5, McPAT und DRAMPower, um den energetischen Fußabdruck verschiedener Algorithmen auf einer RISC-V-Plattform zu profilieren. Durch die Isolierung des Verbrauchs von L1/L2-Caches und DRAM gegenüber der CPU-Pipeline quantifiziert diese Arbeit die „Energiesteuer“ des Datentransfers und schlägt architektonische sowie algorithmische Strategien zu deren Minimierung vor.
Der Kontext:
-
Vom Rechen- zum Daten-Engpass: Jahrzehntelang war die Effizienz von Gleitkommaoperationen (FLOPs) das Hauptmaß für Softwareoptimierung. Heute befinden wir uns im Zeitalter des „Von-Neumann-Flaschenhalses“.
-
Die Energiediskrepanz: Aktuelle VLSI-Studien belegen: Eine 64-Bit-Addition verbraucht ca. 0,1 pJ – das Lesen derselben Daten aus dem DRAM hingegen 1.000 bis 10.000 pJ (1–10 nJ). Der Datentransport ist damit um 3 bis 5 Größenordnungen teurer als die eigentliche Verarbeitung.
-
Amdahls Gesetz für Energie: Wenn 80 % der Energie für Datenbewegungen aufgewendet werden, liefert die Optimierung der ALU kaum spürbare Gewinne.
-
Warum RISC-V? Als offene ISA ermöglicht RISC-V maßgeschneiderte Instruktionen und Speicherkonfigurationen. Ein tiefes Verständnis des Energieprofils ist essenziell für die nächste Generation von IoT-, Edge-AI- und HPC-Systemen.
Anforderungen:
-
Interesse an Rechnerarchitektur und Energieeffizienz.
30% Konzeption
30% Implementierung
40% Benchmarking
Implementierung, Optimierung & Evaluierung von Posit-Funktionseinheiten im Vergleich zu IEEE Floating-Point auf FPGAs und im ASIC-Entwurf
Art der Arbeit:
Bachelorarbeit/Masterarbeit
Betreuer:
Lehrstuhl für Informatik 3 (Rechnerarchitektur)
Email: thomas.schloegl@fau.de
Beschreibung der Arbeit:
Posits, 2017 von John L. Gustafson eingeführt, stellen eine Alternative zum IEEE-754 Gleitkomma-Arithmetik Standard dar. Laut anfänglicher Untersuchungen scheinen sie Vorteile in der Darstellung kleiner Zahlen und in ihrer dynamischen Reichweite im Vergleich zum etablierten Standard zu besitzen. Leider gibt es kaum Untersuchungen die einen Vorteil von Posits hinsichtlich konkreter Hardware-Implementierungen untersuchen.
Im Laufe dieser Arbeit sollen unterschiedliche Posit-Funktionseinheiten (z.B. Addition, Multiplikation) im Vergleich zu IEEE-Floating-Point-Einheiten auf Resourcenverbrauch (Anzahl LUTs auf FPGAs und Anzahl der Standardzellen im ASIC-Entwurf) und Verzögerung evaluiert und optimiert werden.
30% Konzeption
30% Implementierung
40% Benchmarking
Entwicklung und Evaluation einer Escape-Room-Aktivität zum Thema CPU-Cache
Art der Arbeit:
Bachelorarbeit
Betreuer:
Tobias Baumeister
Lehrstuhl für Informatik 3 (Rechnerarchitektur)
Email: tobias.baumeister@fau.de
Bearbeitungszeitraum:
ca. August bis Dezember 2026 (frühzeitige Interessensbekundung erwünscht!)
Beschreibung der Arbeit:
Das Thema CPU-Cache ist aufgrund seiner Vielschichtigkeit – Organisationsformen, Cache-Miss-Typen, Adressierungsmechanismen und weiteren Parametern – eine besondere Herausforderung in der Lehre. Studierende müssen viele Einzelaspekte verstehen, bevor sie diese in praktischen Kontexten anwenden können. In dieser Arbeit soll eine „unplugged“ Lernaktivität im Stil eines Escape Rooms entwickelt werden, die das Thema explorativ und spielerisch aufbereitet. Durch motivierende Einzelschritte sollen komplexe Cache-Konzepte schrittweise erarbeitet werden, wobei Teamkollaboration und Problemlösekompetenz gefördert werden.
Die Aktivität wird für Kleingruppen von 3-5 Studierenden konzipiert und soll in einer 90-minütigen Übungssession im Rahmen der Lehrveranstaltung „Rechnerarchitektur“ im Wintersemester 2026/27 erprobt werden. Dabei sollen die Studierenden durch kooperatives Lösen von Rätseln und Aufgaben ein tieferes Verständnis von Cache-Mechanismen entwickeln.
Die Arbeit umfasst folgende Aufgaben:
- Fundierte didaktische Konzeption der Escape-Room-Aktivität mit klaren Lernzielen und spielerischen Elementen
- Hochwertige Umsetzung aller benötigten Materialien (z.B. Rätsel, Spielkomponenten, Anleitungen)
- Erprobung der Aktivität im realen Übungsbetrieb
- Wissenschaftliche Evaluation der Lernaktivität hinsichtlich Lernerfolg und Studierendenwahrnehmung
Mixed-Darstellungen für ternäre CPU
Art der Arbeit:
Studien-/Bachelor-/Diplom-/Masterarbeit
Betreuer:
Fey, Dietmar
Lehrstuhl für Informatik 3 (Rechnerarchitektur)
Email: dietmar.fey@fau.de
Beschreibung der Arbeit:
Ein Kernproblem in der Digitalelektronik sind entstehende Überträge bei der Addition. Werden beispielsweise 11111 + 00001 addiert, so setzt der Übertrag von der letzten Stelle bis zur vordersten Stelle fort. Um dieses Problem zu umgehen, werden sogenannte redundante Zahlensysteme verwendet, mit denen sich eine Zahl durch mehrere Bitfolgen darstellen lässt. Am Lehrstuhl wurde deshalb ein neuer Prozessor auf RISC-V Basis entworfen, der solche redundanten Zahlendarstellungen nutzt und deswegen eine Beschleunigung erzielen kann.
Leider bieten genannte Zahlensysteme nicht nur Vorteile. Zur Abarbeitung von Sprüngen beispielsweise, kann die Nutzung o.g. Zahlendarstellung einen Zusatzaufwand bedeuten. Aus diesem Grund soll in dieser Arbeit ein hybrides Vorgehen analysiert werden. Rechenintensive Datenpfade sind mit redundanter Arithmetik zu analysieren, Kontrollpfade in klassischer Arithmetik. Die Architekturentwicklung erfolgt mittels abstrakter Beschreibungssprachen (C/C++/SystemC).
Konzeption: 40%
Architekturentwicklung: 40%
Simulation / Benchmarking: 20%
DL Beschleuniger mit ternären Datenpfaden
Art der Arbeit:
Studien-/Bachelor-/Diplom-/Masterarbeit
Betreuer:
Fey, Dietmar
Lehrstuhl für Informatik 3 (Rechnerarchitektur)
E-Mail: dietmar.fey@fau.de
Ebrahimiazandaryani, Farhad
Lehrstuhl für Informatik 3 (Rechnerarchitektur)
Email: farhad.ebrahimiazandaryani@fau.de
Beschreibung der Arbeit:
Ein Kernproblem in der Digitalelektronik sind entstehende Überträge bei der Addition. Werden beispielsweise 11111 + 00001 addiert, so setzt der Übertrag von der letzten Stelle bis zur vordersten Stelle fort. Um dieses Problem zu umgehen, werden sogenannte redundante Zahlensysteme verwendet, mit denen sich eine Zahl durch mehrere Bitfolgen darstellen lässt. Am Lehrstuhl wurde deshalb ein neuer Prozessor auf RISC-V Basis entworfen, der solche redundanten Zahlendarstellungen nutzt und deswegen eine Beschleunigung erzielen kann.
Die genannten Konzepte lassen sich jedoch nicht nur auf komplette Prozessoren, sondern auch auf Beschleunigerkerne selbst, beispielsweise für die schnelle Inferenz neuronale Netze anwenden. In dieser Abschlussarbeit soll ein Beschleunigerkern in einer abstrakten Beschreibungssprache (SystemC) mit ternären Datenpfaden entworfen werden.
Konzeption: 30%
Programmierung: 50%
Evaluation: 20%
Untersuchung des NEC Aurora TSUBASA Vektorprozessors
Art der Arbeit:
Master Thesis
Betreuer:
Fey, Dietmar
Lehrstuhl für Informatik 3 (Rechnerarchitektur)
Email: dietmar.fey@fau.de
Beschreibung der Arbeit:
In der Arbeit soll das Performance- und Energieverhalten der neuen NEC Aurora TSUBASA Architektur (https://www.nec.com/en/global/solutions/hpc/sx/vector_engine.html) mit Hilfe verschiedener, zum Teil während der Arbeit entwickelter, Benchmarks untersucht werden.
Empfohlene Vorraussetzungen: Gute Linux- und C-Kenntnisse, Aufbau von Rechnerarchitekturen (z.B. VL GRa oder RA), Erfahrung mit Benchmarking (z.B. RA-RÜ, PTfS, SoCuPra)
Schlagwörter:
Performance, Modeling, NEC, TSUBASA
Peripheral Circuitry Design for ReRAM (Resistive Random Access Memory)
Type of work:
Master’s thesis
Supervisor:
Lehrstuhl für Informatik 3 (Rechnerarchitektur)
Email: johnreuben.prabahar@fau.de
Description of the thesis:
Resistive RAMs are a class of emerging Non-Volatile Memories (NVMs) which store data as resistance. Under voltage/current stress, the resistance can be switched between a Low Resistance State (LRS) and a High Resistance State (HRS) . The word ‘memristor’ is also used by researchers to refer to a ReRAM device since such a device is basically a ‘resistor’ with a ‘memory’. ReRAM devices are arranged in rows and columsn to form memory arrays and CMOS peripheral circuits are needed to read and write into them. ReRAM technology faces some challenges like variability i.e. the resistance to which the device is programmed varies from cycle-to-cycle. This complicates the WRITE and READ process. In this work, peripheral circuits need to be designed for the ReRAM array. This includes design of variability-aware READ and WRITE circuits. Another challenge is the area- the peripheral circuits occupy much area when compared to the area occupied by the memory arrray. Design of compact peripheral circuit (especially Sense amplifier) is a very much needed. Finally, the peripheral circuits must be energy efficient.
Work estimate:
30% Conception
40% Circuit design (Analog and Mixed signal)
40% Simulation in Cadence Virtuoso.
Reference:
- A. Levisse et al., „Write Termination Circuits for RRAM: A Holistic Approach From Technology to Application Considerations,“ in IEEE Access, vol. 8, pp. 109297-109308, 2020,
- X. Zhang, B.-K. An, and T. T.-H. Kim, “A robust time-based multi-level sensing circuit for resistive memory,” IEEE Transactions on Circuits and Systems I: Regular Papers, vol. 70, no. 1, 340–352, 2023.
In-memory Computing in ReRAM (Resistive Random Access Memory)
Type of work: Master‘s thesis
Supervisor:
Lehrstuhl für Informatik 3 (Rechnerarchitektur)
Email: johnreuben.prabahar@fau.de
Description of the thesis:
Resistive RAMs are a class of emerging Non-Volatile Memories (NVMs) which store data as resistance. Under voltage/current stress, the resistance can be switched between a Low Resistance State (LRS) and a High Resistance State (HRS) . The word ‘memristor’ is also used by researchers to refer to a ReRAM device since such a device is basically a ‘resistor’ with a ‘memory’. The memory wall (von Neuman Bottleneck) faced by computer architects necessitated a paradigm shift in the way data is processed. At the moment, there is an increasing trend to move processing to the location of data i.e. in-memory computing. The term ‘in-memory computing’ is used to
refer to any effort to process data at the residence of data (i.e. in the ReRAM array) without moving them to a separate processing unit. Simple tasks like Addition and Matrix Vector multiplication have been performed in memory. In this project, we will try to implement new logic gates (e.g. XOR gate) completely in the memory or partially (a part in memory and a part in the the peripheral circuits of the memory array). Another challenge is that the peripheral circuits needed for Matrix vector multiplication like ADC/DAC occupy huge area when compared the the ReRAM array. Smart design techniques are needed to re-design the peripheral circuits to be suitable for in-memory computing.
Work estimate:
30% Conception
40% Circuit design (Analog and Mixed signal)
40% Simulation in Cadence Virtuoso.
Reference:
- A. Amirsoleimani, F. Alibart, V. Yon, J. Xu, M. R. Pazhouhandeh, S. Ecoffey, Y. Beilliard, R. Genov, and D. Drouin, “In-memory vector-matrix multiplication in monolithic complementary metal–oxide–semiconductor-memristor integrated circuits: Design choices, challenges, and perspectives,” Advanced Intelligent Systems, vol. 2, no. 11, p. 2000115, 2020.
- John Reuben and S. Pechmann, “Accelerated addition in resistive ram array using parallel-friendly majority gates,” IEEETransactions on Very Large Scale Integration (VLSI) Systems, vol. 29, no. 6, pp. 1108–1121, 2021