Forschungsgruppe Effiziente Eingebettete Systeme Hochschule Augsburg
University of Applied Sciences
HS Augsburg / Fakultät für Informatik / Forschungsgruppe EES english
Startseite
Team
Offene Stellen
Offene
Abschlussarbeiten
Labor
Forschung
ParaNut
ASTERICS
ChASA
Triokulus
e4rat
HiCoVec
Lehre
Publikationen
Impressum
<h1>ParaNut</h1>

Was ist der ParaNut?

Mit dem ParaNut-Prozessor stellt die Hochschule Augsburg eine offene, skalierbare und RISC-V-kompatible Prozessor-Architektur für FPGA-basierte Systeme bereit. Das Projekt wurde 2010 von Prof. Dr. Gundolf Kiefer ins Leben gerufen und wird seitdem kontinuierlich von Studierenden weiterentwickelt und aktiv in Lehre und Forschung eingesetzt.

Den Kern des Projektes stellt ein in SystemC modellierter, RISC-V-kompatibler Softcore-Prozessor dar. Das Hardwaremodell bietet Entwicklern Zugriff auf eine Vielzahl an Konfigurationsoptionen, wie zum Beispiel der Anzahl und Art von Prozessor- Kernen, der Cachegröße und -Optionen oder die Auswahl der unterstützten Privilegienmodi. Dies erlaubt die Definition von individuell parametrisierten Hardwareimplementationen und damit die genaue Anpassung von Hard- und Software an die Anforderungen eines Einsatzzweckes.

Die Hardwareimplementation komplementierend bietet das Projekt unterschiedliche Softwarekomponenten: Eine spezielle Bibliothek zur Nutzung ParaNut-spezifischer Befehle und Konzepte. Aktuell in Arbeit sind ein adaptiertes FreeRTOS Betriebssystem, sowie ein Konfigurationstool um einfach und schnell eine lauffähige Hardwarekonfiguration zu erstellen. Software für den ParaNut kann in der Programmiersprache C geschrieben werden, die Unterstützung von Rust wird zurzeit umgesetzt.

Aktuelle Themen

Linux Penguin

Embedded Linux

Nur wenige Open Source RISC-V Prozessoren können aktuell ein Betriebssystem wie Linux booten. Seit zwei Semestern arbeiten auch wir daran das schlanke Betriebssystem zu unterstützen. Im Zuge dessen wurde bereits virtuelles Memory Management implementiert, ein Bootloader auf Basis von OpenSBI erstellt und der Linux-Kernel für die ParaNut-Hardware konfiguriert.
PARA Logo

Anwendung: Blutzuckermessung bei Tieren

Ursprünglich war es eine Startup-Idee aus dem Seminar "Unternehmensgründung und -führung": Ein semipermantentes Implantat für Tiere mit Diabetes, zur Überwachung des Blutzuckerspiegels mittels Bluetooth. Jetzt arbeiten wir an der Umsetzung eines Prototypen dieser Idee. Die Hardware wurde um eine UART-Schnittstelle zur Kommunikation mit einem externen Bluetooth-Modul erweitert und eine Firmware erstellt. Erste Sensordaten können bereits vom ParaNut an ein Smartphone übertragen werden.
Rust Logo

Rust

Die Architektur des ParaNut verzichtet auf spekulative Befehlsausführung und ist damit robust gegen Sicherheitslücken wie Spectre und Meltdown. Zusätzliche Sicherheit wird durch die Unterstützung der Programmiersprache Rust ermöglicht. Rust ist eine moderne, wachsende Programmiersprache, die mit Augenmerk auf Sicherheit entwickelt wurde. In Rust entwickelte Programme bieten besondere Robustheit hinsichtlich Speicher- und Programmfehlern.
SystemC

SystemC-Workflow

Die Hardware des ParaNut ist zum Großteil in SystemC geschrieben. Der Einsatz dieser Hardwarebeschreibungssprache ermöglicht performante Simulation der Hardware und erleichtert damit das Debugging. Wir bemühen uns, unseren gesamten Entwicklungsprozess auf Open-Source-Software umzustellen und den Prozessor herstellerunabhängig einsetzbar zu halten.

Philosophie

Von Studierenden für Studierende

Der ParaNut-Prozessor wurde und wird von Studierenden der Hochschule Augsburg entwickelt. Das Produkt dieser Arbeit wird aktiv in der Lehre an der Hochschule eingesetzt. So trägt das ParaNut- und EES-Team zur kontinuierlichen Verbesserung der Praktika im Bereich des Schaltungs- und Systementwurfs bei und ermöglicht interessierten Studenten die Vertiefung dieser Themen an einem realen, komplexen Projekt.

Open Source Hardware

Das ParaNut Projekt ist Teil der Open-Source-Kultur. Es profitiert stark von Entwicklern und Projekten aus der ganzen Welt und trägt selbst dazu bei, die Open-Source-Community mit einem offenen, skalierbaren RISC-V-Prozessor zu bereichern. Die Hochschule Augsburg ist offizielles Mitglied von RISC-V International und kann so aktiv an der Verbesserung und Weiterentwicklung des offenen Befehlssatzes mitarbeiten.

Das Team

Team Foto

Wer wir sind

Im Wintersemester 2022/23 bestand das Team aus elf Studierenden, die in kleineren Untergruppen an diversen Projektthemen rund um das ParaNut-Projekt arbeiten. Betreut wird das Team von Prof. Dr. Gundolf Kiefer, zusätzliche Unterstützung bekommt es von Michael Schäferling.

Mitmachen

Interessenten sind jederzeit herzlich willkommen. Im Rahmen des ParaNut können Bachelor- und Master-Arbeiten oder TI5-Projekte bearbeitet werden.
Sprechen Sie uns jederzeit gerne an, wenn Sie Interesse an einer Mitarbeit oder Kooperation haben..

Weitere Informationen

"Getting Started"

Der ParaNut kann zunächst in der Simulation getestet werden. Das ist auf jedem Linux-PC möglich, es wird keine zusätzliche Hardware benötigt.
Die ersten Schritte um eine Soimulationsumgebung aufzusetzten sind auf Github beschrieben.

Aus dem Hochschulnetz kann hierzu auch eine VM oder ein Docker-Image aus dem EES-Labor bezogen werden.

Partner

25.3.2024 - Michael Schäferling