Forschungsprojekt Propedes

Mehr Sicherheit für Fußgänger

13. April 2012, 10:04 Uhr | Von Prof. Dr. Holger Blume, Dr. Sebastian Flügel, Dr. Martin Kunert, Dr. Werner Ritter und Prof. Dr. Axel Sikora
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 9

Umsetzung auf Multi-FPGA-Hardware-Plattform

Bild 8. Bestimmung der Flächenmomente der zusammenhängenden Bereiche.
Bild 8. Bestimmung der Flächenmomente der zusammenhängenden Bereiche.

Auf diese heterogene Hardware-Architektur wurden vom IMS relevante Algorithmen der Fahrerassistenz abgebildet. Es entstanden unterschiedliche Co-Prozessoren und der Prozessor wurde um Spezialbefehle erweitert. Die Umsetzung der Hardware-Architektur erfolgte auf der oben beschriebenen Multi-FPGA-Hardware-Plattform. Ein Ziel des Propedes-Projekts war die Erforschung sowie der Vergleich der unterschiedlichen Abbildungs- und Partitionierungsvarianten der Algorithmen. Von besonderem Interesse war hierbei auch die Untersuchung der Anpassung des Prozessorkerns an die komplexen Algorithmen der videobasierten Fahrerassistenz und die daraus resultierenden Zuwächse an Rechenleistung. Diese können jedoch nur erreicht werden, wenn ein Zusammenspiel aus Prozessor-Erweiterungen und eine gleichzeitige Optimierung der Software erfolgt. Prinzipiell lassen sich die Hardware- und Software-Optimierungen wie folgt zusammenfassen:

  • Parallele Berechnung möglichst vieler Ergebnisse: Dies kann durch Single-Instruction-Multiple-Data (SIMD) oder durch neue komplexe Funktionseinheiten erreicht werden, die mehrere Einzeloperationen zu einer komplexen Operation zusammenfügen. Dies ermöglicht einen höheren Datendurchsatz, so dass das Laden von Daten zur Verarbeitung mit einer möglichst geringen Verzögerung erfolgt.
  • Maximale Wiederverwendung einmal geladener Daten: Häufig wird ein Datum in einem Algorithmus mehrfach genutzt, was zu einem Mehrfachzugriff auf den externen Speicher führen kann. Neue Datenregister, lokale Speicher und Anpassungen am Algorithmus minimieren den externen Speicherzugriff.
  • Effiziente Ausnutzung der Prozessor-Caches: Daten im externen Speicher müssen so organisiert sein, dass der Cache mit den gewählten Parametern wie Zeilenlänge oder Verdrängungsmechanismus möglichst effizient genutzt werden kann. Dies bedeutet, dass die Daten in einer Cache-Zeile möglichst alle genutzt werden, bevor die Cache-Zeile ersetzt wird.

Diese Vorgehensweise soll an folgendem Beispiel aus einer videobasierten Verkehrszeichenerkennung erläutert werden. Durch eine geeignete Vorverarbeitung wird in einem Bild ein Bildausschnitt mit einem möglichen Verkehrszeichen extrahiert. Zur Erkennung des Verkehrszeichens erfolgt eine Binarisierung des Bildes mit anschließender Indizierung zusammenhängender Bereiche im Bild. Als Merkmale zur Klassifikation werden unter anderem die Höhe und Breite sowie weitere Flächenmomente des umschließenden Rechtecks für jeden zusammenhängenden Bereich gebildet (Bild 8). Dazu wird für jeden Bereich ein Akkumulatorspeicher angelegt, der die Flächenmerkmale berechnet. Anschließend wird das Index-Bild Pixel für Pixel durchlaufen, die Multiplikationen gebildet und entsprechend der Objektzugehörigkeit zum jeweiligen Akkumulatorspeicher hinzuaddiert. Hierbei werden die oben genannten Optimierungsstrategien wie folgt beachtet:

  • Die Multiplikationen werden parallel in einer Instruktion durchgeführt. Die Prozessor-Pipeline ermöglicht es, die Zahl der Multiplizierer gering zu halten.
  • Die Akkumulatorspeicher befinden sich im lokalen Prozessorspeicher, da sie mehrfach verwendet werden. Dies reduziert den Zugriff auf den externen Speicher. Des Weiteren wird die Bestimmung der Formmerkmale mit der Indizierung der zusammenhängenden Bereiche kombiniert, so dass das Ergebnis der Indizierung sich noch in den Prozessorregistern befindet. Daher kann der Objektindex direkt für die Bestimmung der Formmerkmale verwendet werden.
  • Die pixel-weise Verarbeitung des Index-Bildes sowie die Nutzung lokaler Akkumulatorspeicher ermöglicht es, alle Werte einer Cache-Zeile zu nutzen, bevor die Cache-Zeile aus dem Cache verdrängt wird.

 


  1. Mehr Sicherheit für Fußgänger
  2. Nachtsichtassistenten der nächsten Generation
  3. NIR-Radar
  4. NIR-FIR
  5. Fusionsverfahren
  6. In Propedes entwickelte Software-/Hardware-Architekturen für mehr Rechenleistung
  7. Anbindung an das ADTF-Framework
  8. Optimale Partitionierung der Videoalgorithmen
  9. Applikationsspezifisch konfigurierbare Soft-Core-Prozessoren
  10. Umsetzung auf Multi-FPGA-Hardware-Plattform
  11. FPGA-basierter Ansatz bietet viel Potential
  12. Die Autoren

Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu Bundesministerium für Bildung und Forschung BMBF

Weitere Artikel zu Robert Bosch GmbH

Weitere Artikel zu Safety und Security