FPGA-Based System Virtual Machines

FPGA-basierte Systemvirtualisierung

URN urn:nbn:de:gbv:705-opus-30747
URL
Dokumentart: Dissertation
Institut: Lehrstuhl: Technische Informatik
Fakultät: Fakultät Elektrotechnik
Hauptberichter: Prof. Dr. Bernd Klauer
Sprache: Englisch
Tag der mündlichen Prüfung: 31.03.2014
Erstellungsjahr: 2014
Publikationsdatum:
SWD-Schlagwörter: Field programmable gate array , Virtuelle Maschine , Betriebssystem
Freie Schlagwörter (Englisch): Field programmable gate array , Virtual Machine , Operating System
DDC-Sachgruppe: Informatik

Kurzfassung auf Englisch:

Nowadays, FPGAs are commonly used to take advantage of their reconfigurability as accelerator units. Moores Law still predicts increasing transistor densities for integrated circuits. Some Authors predict, that this will result in the general usage of reconfigurable areas in future computer architectures. This thesis proposes to combine those reconfigurable areas with the idea of system virtual machines. The capability of reconfigurable hardware to provide software as needed is exploited to support system virtual machines with their own hardware on demand. Firstly, the architectural requirements to take advantage of reconfigurable areas for the purpose of supporting virtual machines are discussed theoretically for the important parts of a computer: main memory, devices and processors. As a second step, a proof of concept demonstrator is developed to proof the theoretically discussed advantages of such a FPGA supported virtualization system. The ability to perform dynamic and partial reconfiguration of a FPGA is used to implement both, the static (for the host system) and the reconfigurable parts (for the guest systems) of the hardware of such a virtualization system. The demonstrator not only includes hardware, but also an full fledged operating system (an adapted Linux kernel, able to be executed on the hardware) including all necessary device drivers. Finally, the theoretically expected advantages of a FPGA based virtualization system over conventional virtualization systems are measured and therefore shown on base of the proof of concept demonstrator. Furthermore remaining problems and possible solutions will be presented.

Kurzfassung auf Deutsch:

Die Verwendung von FPGAs als rekonfigurierbare Hardwarebausteine findet bereits heute eine immer weitere Verbreitung. Das Gesetz von Moore sagt eine immer weitere Zunahme der Transistorzahlen auf immer kleineren Flächen voraus. Einige Autoren sind der Auffassung, das dies dazu führen wird, dass rekonfigurierbare Hardware fester Bestandteil zukünftiger Rechnerarchitekturen sein wird. Die vorliegende Arbeit schlägt eine Nutzungsmöglichkeit dieser dann vorhandenen rekonfigurierbaren Flächen vor, die über die heutzutage gebräuchliche Nutzung als Hardwarebeschleuniger für spezifische Berechnungsaufgaben (engl. accelerator units), hinausgeht. Die Arbeit vereinigt die Ansätze von konfigurierbarer Hardware und systemorientierten Virtuellen Maschinen. Dabei wird die Eigenschaft von konfigurierbarer Hardware, bei Bedarf die benötigte Hardwarefunktionalität bereitzustellen, genutzt, um das Erzeugen und Verwalten von systemorientierten Virtuellen Maschinen als tatsächlich vorliegende Hardware zu ermöglichen. Die Arbeit analysiert dabei zunächst theoretisch die notwendigen Voraussetzungen (Schnittstellen zwischen rekonfigurierbarer und statischer Hardware; Betriebssystemfunktionalitäten) an ein solches Virtualisierungssystem. In einem zweiten Schritt der Arbeit wird ein FPGA basierter Prototyp eines solchen Virtualisierungssystems vorgestellt. Ein FPGA bietet dabei durch Nutzung von partieller und dynamischer (Selbst)rekonfiguration die Möglichkeit, sowohl die zur Laufzeit des Systems statische, als auch die rekonfigurierbare Hardware abzubilden. Der Prototyp beinhaltet dabei nicht nur die benötigte Hardware sondern auch ein auf diese Hardware angepasstes Betriebssystem (Linux) inklusive der benötigten Gerätetreiber. Im abschließenden Teil der Arbeit werden die im theoretischen Teil erarbeiteten Vorteile eines FPGA basierten Virtualisierungssystems durch Benchmarkmessungen am Protoypen gezeigt. Weiterhin werden noch offenen Probleme und Lösungsvorschläge vorgestellt, die in weiterführenden Arbeiten bearbeitet werden können.

Hinweis zum Urheberrecht

Für Dokumente, die in elektronischer Form über Datenenetze angeboten werden, gilt uneingeschränkt das Urheberrechtsgesetz (UrhG). Insbesondere gilt:

Einzelne Vervielfältigungen, z.B. Kopien und Ausdrucke, dürfen nur zum privaten und sonstigen eigenen Gebrauch angefertigt werden (Paragraph 53 Urheberrecht). Die Herstellung und Verbreitung von weiteren Reproduktionen ist nur mit ausdrücklicher Genehmigung des Urhebers gestattet.

Der Benutzer ist für die Einhaltung der Rechtsvorschriften selbst verantwortlich und kann bei Mißbrauch haftbar gemacht werden.