Adrian Frischknecht

Eberhard-Karls-UniversitĂ€t TĂŒbingen
Wilhelm-Schickard Institut fĂŒr Informatik
Lehrstuhl Technische Informatik
Sand 13, B205
72076 TĂŒbingen

Telefon: +49 (7071) 29-75458

E-Mail: frischkn

Sprechstunde: nach Vereinbarung

Kontakt-Formular

Studentische Arbeiten

Offene Arbeiten

 

Erweiterung des TÜRI5X-Prozessorkerns um die Out-of-Order AusfĂŒhrung von Instruktionen

Derzeit können Divisions- und Multiplikationsinstruktionen parallel zueinander (superskalar) auf dem TÜRI5X-Prozessorkern ausgefĂŒhrt werden. Jedoch ist die Reihenfolge der AusfĂŒhrung der Instruktionen zur Laufzeit nicht verĂ€nderbar (In-Order). Ziel dieser Abschlussarbeit ist es die Reihenfolge der AusfĂŒhrung zur Laufzeit zu verĂ€ndern (Out-of-Order) um die Performance des TÜRI5X-Prozessorkerns weiter zu steigern.

Evaluierung unterschiedlicher Kommunikationsarchitekturen des PULPissimo SoC

In dieser Arbeit soll die Kommunikation des RI5CY-Prozessorkerns mit den PeripheriegerÀten (Speicher, Hardwarebeschleuniger, I/O) untersucht werden und eine alternative Kommunikationsarchitektur mit dem Fokus auf Energieeffizienz implementiert werden.

Entwurf und Implementierung einer Cache-Architektur fĂŒr den PULPissimo SoC

Derzeit verfĂŒgen die Prozessorkerne des PULPissimo SoC ĂŒber keine Cache-Architektur. Dies schrĂ€nkt den ansprechbaren Speicher aus technologischen GrĂŒnden stark ein. In dieser Arbeit soll eine Cache-Architektur implementiert werden um grĂ¶ĂŸere und langsamere Speicher (wie z.B. DDR) anzusprechen.

Entwurf und Implementierung einer PULPissimo Multi-Core-Architektur

Der PULPissimo SoC verfĂŒgt derzeit nur ĂŒber einen Prozessorkern. Moderne hochleistungsanwendungen profitieren jedoch stark vom Einsatz mehrerer Prozessorkerne. Ziel dieser Arbeit ist der Einbau eines weiteren Prozessorkerns in den PULPissimo SoC und Implementation eines Kommunikationsprotokolls.

Erweiterung des RI5CY-Prozessorkerns um RISC-V Vektorinstruktionen

Durch die RISC-V Foundation wurden bereits Vektorinstruktionen in einem Standard verabschiedet. In dieser Arbeit sollen diese Vektorinstruktionen in den RI5CY-Prozessorkern integriert werden.

Erweiterung eines On-Chip Instruktions-Tracers fĂŒr den RI5CY-Prozessor

Zur Performance-Analyse von Programmen ist die Rekonstruktion der Kontrollflusses von großer Bedeutung. Üblicherweise werden diese Kontrollfluss-Analysen in Simulatoren durchgefĂŒhrt, welche jedoch den Nachteil haben, dass eine Analyse sehr lange dauert. Ein On-Chip Instruktions-Tracer eröffnet die Möglichkeit solch eine Kontrollfluss-Analyse in Echtzeit durchzufĂŒhren. Ziel dieser Arbeit ist es den bestehenden Instruktions-Tracer zu erweitern und dessen Performance zu erhöhen.

Implementation einer Konfigurationsplattform fĂŒr den TÜRI5X-Prozessorkern

Der TÜRI5X-Prozessorkern liegt derzeit in unterschiedlichen Mikroarchitekturvarianten vor. In dieser Arbeit soll das PULP-SDK erweitert werden, sodass unterschiedliche Mikroarchitekturvarianten ausgewĂ€hlt und kombiniert werden können. ZusĂ€tzlich soll es möglich sein eine Konfiguration automatisch hinsichtlich der Performance, FlĂ€che und Energieeffizienz bewerten zu können.

Integration eines On-Chip CAN-Controllers in den PULPissimo SoC

FĂŒr die Kommunikation des PULPissimo SoC mit anderen GerĂ€ten soll ein On-Chip CAN-Controller in den PULPissimo SoC integriert werden. Ziel dieser Arbeit ist es einen bestehenden CAN-Controller an den On-Chip AHB-Bus anzubinden sowie einen Treiber und eine virtuelle Testumgebung zu erstellen.

Anbindung eines Off-Chip CAN-Controller an den PULPissimo SoC

FĂŒr die Kommunikation des PULPissimo SoC mit anderen GerĂ€ten soll ein Off-Chip CAN-Controller an den PULPissimo SoC angeschlossen werden. Ziel dieser Arbeit ist es einen bestehenden CAN-Controller an den SPI oder I2C-Bus anzuschließen sowie einen Treiber zu erstellen und eine Kommunikation ĂŒber Linux SocketCAN aufzubauen.

Laufende Arbeiten

Erweiterung des RI5CY-Prozessorkerns um dynamische Verfahren zur Sprungvorhersage
Bachelorarbeit, 2019, Andreas Pohl

Entwurf und Implementation einer energie- und flĂ€chensparenden ALU fĂŒr den RI5CY-Prozessorkern
Bachelorarbeit, 2019, Benjamin Basler

Implementierung einer konfigurierbaren Audioverarbeitungspipeline fĂŒr PDM-Mikrofone fĂŒr das VEGA-Board
Masterarbeit, 2019, Maximilian Schmidt

Echtzeit Audiosignalverarbeitung fĂŒr Tonhöhen- und Akkorddetektion
Bachelorarbeit, 2019, Lukas Graber

Entwurf und Implementierung eines Hardware-Beschleunigers fĂŒr 1D-CNNs
Masterarbeit, 2019, Paul Palomero-Bernardo

Implementierung und Evaluation der Minerva-Beschleuniger-Architektur fĂŒr DNN
Bachelorarbeit, 2019, Jan Huber

Abgeschlossene Arbeiten

Erweiterung des RI5CY-Cores um eine Issue Pipeline-Stufe zur superskalaren AusfĂŒhrung von Instruktionen
Bachelorarbeit, 2019, Maurizio Ruchay

Lehre

Sommersemester 2019

  • Teamprojekt: Sprachverarbeitung auf einer IoT-Plattform
  • Praktikum: Forschungsmodul, AB Eingebettete Systeme (1 Thema: Entwurf und Implementierung eines optimierten neuronalen Netzes fĂŒr Voice-Activity-Detection)

Wintersemester 2018/19

  • Vorlesung: Chip-Design
  • Praktikum: Chip-Design
  • Proseminar: Moderne Architekturen Eingebetteter Systeme
  • Schulung (TĂŒbinger Zentrum fĂŒr Wissenschaftliche Weiterbildung): Rechnerarchitektur