Bild mit Unilogo
home uni uni kontakt kontakt
unilogo Universität Stuttgart
Institut für Kommunikationsnetze und Rechnersysteme (IKR)

Themenbeschreibung

Druckansicht
 

Bachelor-Arbeit / Forschungsarbeit Nr. 1089    (In Bearbeitung)   [pdf]

Implementierung einer Input-Output Memory Management Unit (IOMMU) für ein prototypisches Rechnersystem mit einem 64-Bit RISC-V Prozessor in VHDL


Methoden

Themengebiete

Entwurf digitaler Systeme
Rechnerarchitektur und Rechnerorganisation

RISC-V
Memory-Mapped-IO


Beschreibung

Hintergrund

Am IKR wird ein prototypisches Rechnersystem auf Basis eines 64-Bit RISC-V Prozessors entwickelt. Derzeit unterstützt der Prozessor verschiedene Privilegienstufen, besitzt separate Caches für Befehle und Daten, unterstützt virtuelle Speicherverwaltung und kann Exceptions und Interrupts verarbeiten. Auf dem Rechnersystem läuft das Lehrbetriebssystem Xv6. Aktuell ist die Kommunikation des Rechnersystems mit IO-Geräten nur über den virtuellen Adressbereich des Kernels möglich. Das erschwert die Anbindung von IO-Geräten mit hoher Datenübertragungsrate. Daher soll im Rahmen dieser Arbeit eine IOMMU implementiert werden, die unter anderem Direct Memory Access (DMA) von IO-Geräten auf den Speicher erlaubt. Darüber hinaus überprüft die IOMMU Speicherzugriffe von IO-Geräten, wodurch zusätzliche Sicherheitsmechanismen bereitgestellt werden, um unautorisierte oder fehlerhafte Zugriffe zu verhindern.

Aufgabenstellung

Die Arbeit gliedert sich in folgende Schritte

Einarbeitung in das bestehende prototypische Rechnersystem

Einarbeitung in die RISC-V und die IOMMU-Spezifikation

Erweiterung des prototypischen Rechnersystems um

 

einen zusätzlichen Port am Speicherinterface

 

MMIO-Register zur Interaktion mit IO-Geräten

 

Automaten zur Bearbeitung von IO-Anfragen

Anbindung bestehender IO-Geräte (z.B. Ethernet-Controller, Flash-Controller, ...)

Validierung der Funktionalität durch Testprogramme

Erworbene Kenntnisse und Fähigkeiten

Sie lernen mit RISC-V eine moderne und modulare Prozessorarchitektur kennen, deren Erfolg und Verbreitung in Forschung und Industrie ständig zunimmt. Darüber hinaus erarbeiten Sie sich fundierte Kenntnisse über die Anbindung komplexer IO-Geräte an moderne Rechnersysteme. Dabei vertiefen Sie Ihre VHDL-Kenntnisse und sind in der Lage, komplexe digitale Systeme zu realisieren.


Voraussetzungen

 

Entwurf digitaler Systeme
Rechnerarchitektur und Rechnerorganisation


Kontakt

M.Sc. Christian Koehler, Raum 1.320 (ETI II), Telefon 685-69001, [E-Mail]