KONWIHR Projekt FPGA

Suche


FPGA: Untersuchung der Möglichkeiten zur direkten Synthese von parallelen C-Programmen auf Hochleistungsrechnern in FPGAs

Motivation

In einem Chip laufen die Signale parallel. Prozessoren in PCs und Steuerungen arbeiten Befehle sequentiell ab. Häufig möchte man eine Software aus Geschwindigkeitsgründen in einem Chip ablaufen lassen. Dazu ist i. A. ein Neuentwurf mit einer Hardwarebeschreibungssprache nötig. Damit wird die Parallelität eingebracht. Dieser Neuentwurf ist kostspielig und fehleranfällig.

Ansatz

  • Entwicklung der Software mit Parallelität auf einem Großrechner.
  • Nutzung der komfortablen Entwicklungsumgebung.
  • Portierung dieser Software auf einen Chip, z.B. ein FPGA.

Projektziel

  • Untersuchung der Umsetzbarkeit paralleler Programme vom Hochleistungsrechner in einen Chip (FPGA).
  • Bewertung des Umsetzungsaufwands.

Stand

Erfolgreich abgeschlossen

Ergebnis Theorie

Die Arbeiten weisen einen allgemeinen Weg zur Umsetzung von C-Programmen mit OpenMP-Erweiterung auf jegliche Hardware (programmierbare Chips, FPGAs), die mit der Hardwarebeschreibungssprache Handel-C programmiert werden kann.

Mit diesem Ergebnis ist es nun möglich, unter Verwendung der komfortablen Entwicklungsumgebung der Großrechner ein System zu entwickeln, es ausgiebig zu testen und erst dann in Hardware zu portieren. Dabei entfällt der übliche, zeitraubende Neuentwurf in VHDL oder Verilog mitsamt seiner neuen Fehler und Tests. Die Qualität einer derartigen Entwicklung ist somit höher, die Entwurfszeit deutlich geringer (ca. 50% in diesem Projekt).

Ausblick

Eine Verallgemeinerung zur Umsetzung beliebiger, paralleler Software in beliebige Hardware, die mit einer C-ähnlichen Hardwarebeschreibungssprache beschrieben werden kann.

Ergebnis Praxis

Erfolgreiche Umsetzung diverser, exemplarischer C-Programme mit OpenMP-Erweiterung in Handel-C auf FPGAs.

Als Demonstrator wurde ein komplettes Bildverarbeitungssystem auf der Größe einer Visitenkarte (Intelligente Kamera) realisiert, das je nach Programmierung frei eingesetzt werden kann. Es erreichte in einer Beispielapplikation zur Verkehrszeichenerkennung die siebenfache Verarbeitungsleistung eines Pentium III (1 GHz) und ist schneller als jeder zu diesem Zeitpunkt verfügbare DSP. Dabei konnte der Stromverbrauch auf unter 10% einer vergleichbaren PC-Lösung gesenkt werden. Gleiches gilt für die EMV-Werte, da nur 17 MHz statt des 1GHz des Prozessors nötig waren.

Ausblick

Dieser Ansatz eignet sich nicht nur für die Bildverarbeitung. Eine Erweiterung der Intelligenten Kamera zum Intelligenten Sensor/Aktor wäre bei dem nun vorliegenden Know How der nächste, konsequente Schritt.

KONWIHR-Förderung

  • 01/2002 - 12/2003

Kontakt:

  • Prof. Dr. Urbanek; Institut für Elektronische Systeme, Georg-Simon-Ohm-Hochschule für angewandte Wissenschaften - Fachhochschule Nürnberg