Control Software for Reconfigurable Coprocessors
Hinkelbein, Christian
URL:
|
http://ub-madoc.bib.uni-mannheim.de/1138
|
URN:
|
urn:nbn:de:bsz:180-madoc-11383
|
Document Type:
|
Doctoral dissertation
|
Year of publication:
|
2005
|
The title of a journal, publication series:
|
None
|
Publishing house:
|
Universität Mannheim
|
Evaluator:
|
Männer, Reinhard
|
Date of oral examination:
|
21 October 2005
|
Publication language:
|
English
|
Institution:
|
School of Business Informatics and Mathematics > Informatik V (Männer 1992-2008)
|
Subject:
|
004 Computer science, internet
|
Classification:
|
CCS:
D.2.11 ,
|
Subject headings (SWD):
|
Softwarearchitektur , Wissenschaftlich-technische Software , Koprozessor
|
Keywords (English):
|
Field programmable gate array , Softwarearchitecture , Scientific Software , Coprocessor , High Performance Computing
|
Abstract:
|
On-line data processing at the ATLAS general purpose particle detector, which is currently under construction at Geneva, generates demands on computing power that are difficult to satisfy with commodity CPU-based computers. One of the most demanding applications is the recognition of particle tracks that originate from B-quark decays. However, this and many others applications can benefit from parallel execution on field programmable gate arrays (FPGA). After the demonstration of accelerated track recognition with big FPGA-based custom computers, the development of FPGA based coprocessors started in the late 1990's. Applications of FPGA coprocessors are usually partitioned between the host and the tightly coupled coprocessor. The objective of the research that I present in this thesis was the development of software that mediates to applications the access to FPGA coprocessors. I used a software process based on iterative prototyping to cope with the expected changing requirements. Also, I used a strict bottom-up design to create classes that model devices on the coprocessors. Using these low-level classes, I developed tools which were used for bootstrapping, debugging, and firmware update of the coprocessors during their development and maintenance. Measurements show that the software overhead introduced by object-oriented programming and software layering is small. The software-support for six different coprocessors was partitioned into corresponding independent packages, which reuse a set of packages that provide common and basic functions. The steady evolution and use of the software during more than four years shows that the software is maintainable, adaptable, and usable.
|
Translation of the title:
|
Kontrollsoftware für rekonfigurierbare Koprozessoren
(German)
|
Translation of the abstract:
|
Die on-line Datenverarbeitung am ATLAS Teilchendetektor, der zurzeit bei Genf entsteht, hat einen Bedarf an Rechenkapazität, die mit herkömmlichen CPU - basierten Rechnern schwierig zu befriedigen ist. Eine der herausfordernsten Anwendungen ist hier die Erkennung von Teilchenspuren, die vom Zerfall von B-Quarks herrühren. Jedoch kann diese und viele andere Anwendungen von der parallelen Ausführung auf Field Programmable Gate Arrays (FPGA's)profitieren. Nach der Demonstration von beschleunigter Spurerkennung mit großen FPGA - basierten Spezialrechnern begann an der Universität Mannheim in den späten 1990ern die Entwicklung von FPGA basierten Koprozessoren. Anwendungen solcher FPGA Koprozessoren sind üblicherweise zwischen dem Gastrechner und dem Koprozessor aufgeteilt. Das Ziel der hier präsentierten Arbeit war die Entwicklung von Software, die Anwendungen den Zugriff auf FPGA Koprozessoren vermittelt. Um den erwarteten wechselnden Anforderungen an die Software gerecht zu werden, habe ich einen Software Prozess gewählt, der auf iterativen Prototypen basiert. Ich habe ein striktes Bottom-Up Design benutzt, um Klassen zu entwerfen, die Komponenten des Koprozessors modellieren. Unter Benutzung dieser Klassen habe ich Werkzeuge entwickelt, die verwendet wurden um die Koprozessoren während ihrer Entwicklung und Wartung zu initialisieren, ihre Fehler zu beheben und ihre Konfigurationen zu aktualisieren. Messungen zeigen, dass der Software Overhead, der durch die objektorientierte Programmierung und die geschichtete Software Architektur bedingt ist, klein ist. Die Unterstützung der Software für sechs verschiedene Koprozessoren wurde in entsprechende Pakete gegliedert, die einen Satz von Paketen wiederverwenden welche gemeinsame Basisfunktionalität bereitstellen. Die stetige Entwicklung und Benutzung der Software über einen Zeitraum von mehr als vier Jahren zeigt, dass die Software wartbar, anpassbar und nützlich ist.
(German)
|
Additional information:
|
|
| Das Dokument wird vom Publikationsserver der Universitätsbibliothek Mannheim bereitgestellt. |
Search Authors in
You have found an error? Please let us know about your desired correction here: E-Mail
Actions (login required)
|
Show item |
|