KONWIHR II
KOMPETENZNETZWERK FüR TECHNISCH-WISSENSCHAFTLICHES HOCH- UND HöCHSTLEISTUNGSRECHNEN IN BAYERN
2001S02 FPGA
Arbeitsfeld:
KONWIHR Teilbereich SüdDie Lösung rechenzeitintensiver technisch-wissenschaftlicher Probleme erfolgt heutzutage häufig über die Programmiersprache C auf einem Hoch- oder Höchstleistungsrechner, da nur diese Rechner über genügend Rechenleistung verfügen. Diese Vorgehensweise ist etabliert und hat sich als sinnvoll erwiesen. Im dem industriellen Bereich, in dem die wissenschaftlichen Ergebnisse umgesetzt werden sollten, findet man eine andere Vorgehensweise vor. Bei der Entwicklung elektronischer Systeme wird die Funktionalität zuerst auf einen entsprechend großen Rechner simuliert. Dann erfolgt die Umsetzung in ein Produkt. Dabei kann man nicht mehr auf den Großrechner zurückgreifen. Hier ist eine optimierte Lösung aus spezieller Hardware mit Mikroprozessoren, ASICs und Software erforderlich. Dabei spielt das Zusammenspiel der Hardware Entwicklung in VHDL und Software Entwicklung in C eine tragende Rolle.
Eine enorme Verbesserung in der Umsetzung wissenschaftlicher Ergebnisse wäre es, wenn die Hardware auch in der Hochsprache C beschrieben werden könnte und parallele Prozesse direkt übernommen werden könnten. Neueste Entwicklungen an der Universität in Oxford bieten genau hier zu einem Ansatz. Die dort entwickelte Programmiersprache Handel C bietet die Möglichkeit in C beschriebene Systeme in ASICs zu synthetisieren und somit auf der Basis einer Problemlösung in C die Realisierungsentscheidung, ob Hardware oder Software, so weit hinaus zu zögern, bis die korrekte Funktionsweise nachgewiesen ist.
Ziel: Mit dem Zugriff auf diverse Hoch- und Höchstleistungsrechner in Bayern im Rahmen des KONWIHR wird es durch die sehr hohe Leistungsfähigkeit dieser Rechner und deren Möglichkeit der echten, parallelen Verarbeitung möglich, den Weg der Portierung parallel laufenden C Programme am Großrechner zu Handel C zu erproben und zu bewerten.
Die Ergebnisse dieses Projekts sind sowohl für die Wissenschaft als auch für die Industrie von höchster Bedeutung, da die hier untersuchte Entwicklungsmethode durch ihren hohen Abstraktionsgrad eine drastische Reduzierung der Entwicklungszeit elektronischer Systeme bedeutet. Die zwei wesentlichen Fragen betreffen den Aufwand und die Performance der Umsetzung von sequentiellen C Programmen in parallele Prozesse, die einerseits auf dem Großrechner, andererseits auf der Hardware (FPGAs) laufen können.
Erreichte Zwischenergebnisse:
Zur Bewertung der Portierungen wurde eine Kamera entwickelt, die ein FPGA zur Bildauswertung enthält. Üblicherweise übernimmt die Bildverarbeitung ein PC. Der Bildverarbeitungsteil wurde auf einem Großrechner entwickelt und auf die Kamera portiert. Da bei dieser Kamera die komplette Bilderkennung mit allen parallel laufenden Prozessen direkt auf der Kamera realisiert wurde, trägt sie die Bezeichnung: "Parallele Kamera". Sie besitzt die Größe einer Visitenkarte und ersetzt den PC mit Prozessor, Speichern, Netzwerkanbindung und Frame Grabberkarte für die jeweils einprogrammierte Aufgabe vollständig.
Als Daumenwert für erste, quantitative Messergebnisse wurde ein Vergleich mit einem Pentium III mit 1 GHz Taktfrequenz angestellt. Die Parallele Kamera erreichte mit demselben Algorithmus problemlos die gleiche Verarbeitungsleistung, allerdings bei 1/100 der Verlustleistung und Störstrahlung auf ca. 35 qcm Fläche.
Auf der IENA 2002 wurde die Parallele Kamera neben ca. 650 internationalen Erfindungen und Neuheiten der Öffentlichkeit als ein Ergebnis der KONWIHR Forschung präsentiert. Sie gewann die Silbermedaille.