Eine konfigurierbare RISC-, Coprozessor-Architektur zur Echtzeitverarbeitung von Objekterkennungsverfahren
Authors
More about the book
Bisherige Prozessor-Ansätze zur echtzeitfähigen Verarbeitung komplexer Objekterkennungsanwendungen in eingebetteten Systemen bieten häufig nicht ausreichend Rechenleistung. Bei moderatem Ressourcen- und Energieaufwand ist es nicht möglich, Bildmaterial in Full-HD-Auflösung in Echtzeit mit 25 Bildern pro Sekunde zu verarbeiten. Diese Arbeit zeigt die Konzeption einer konfigurierbaren RISC/Coprozessor-Architektur. Diese ist aus einem Standard-RISC-Prozessor zur Applikationsausführung und Steuerung sowie einem für Objekterkennungsanwendungen optimierten Coprozessor zusammengesetzt. Der Coprozessor ist modular aufgebaut und besteht aus konfigurierbaren dedizierten Recheneinheiten. Rechenintensive Teilverfahren der Objekterkennung können dadurch beschleunigt prozessiert werden. Die Recheneinheiten sind mit internen und externen Speichern an einem gemeinsamen Multi-Layer-Systembus angeschlossen. Die Architektur erhält ihre Flexibilität durch die Programmierbarkeit des RISC-Prozessors und das Baukastenprinzip des Coprozessors, welches während des Entwurfs ein einfaches Hinzufügen und Austauschen von Recheneinheiten und Speicherschnittstellen zulässt. Ein spezieller RISC/Coprozessor-Synchronisationsansatz ist für einen nebenläufigen Betrieb mehrerer Recheneinheiten optimiert und führt insbesondere zu einem weitgehend unabhängigen Betrieb von RISC und Coprozessor. Er ermöglicht auch dann eine hohe Rechenleistung, wenn RISC und Coprozessor nicht in einem System-on-Chip integriert sind, da die Synchronisationszeiten zwischen RISC und Coprozessor durch das Verlagern von Synchronisationsaufgaben in die Coprozessor-Hardware reduziert werden. Die konfigurierbare RISC/Coprozessor-Architektur wird anhand der Abbildung einer komplexen Objekterkennungsapplikation zur Erkennung von Fahrzeugen auf Fahrbahnen evaluiert. Die Implementierung erfolgt auf einer Demonstrationsplattform, welche aus einem 533 MHz Intel IXP460 Prozessor und einem Xilinx Virtex-5 FPGA besteht. Als Ergebnis wird gezeigt, dass die Architektur sowohl für die Verarbeitung rechenintensiver Teilverfahren, die auf ganzen Bildern operieren, als auch für die Verarbeitung vieler kleiner Bildausschnitte (Regions-of-Interest) geeignet ist. Das exemplarische Objekterkennungsverfahren ermöglicht für eine Coprozessorkonfiguration, welche mit 100 MHz betrieben wird, bei VGA-Auflösung Bildwiederholfrequenzen von bis zu 185 Bildern pro Sekunde und bei Full-HD-Auflösung bis zu 28,7 Bildern pro Sekunde. Eine latenzoptimierte Umsetzung der exemplarischen Applikation reduziert die Verarbeitungslatenzen, so dass diese bei allen Bildauflösungen bis hin zur Full-HD-Auflösung kleiner als 55 ms sind. Ein Durchsatzvergleich zeigt, dass eine optimierte Implementierung der Objekterkennungsapplikation von einem Texas Instruments OMAP3530 bei VGA-Bildauflösung nur mit maximal 15 Bildern pro Sekunde verarbeitet wird und daher jenes Prozessorsystem für die echtzeitfähige Objekterkennung bei höheren Auflösungen nicht einsetzbar ist. Zusammengefasst zeigt diese Arbeit, dass die konfigurierbare RISC/Coprozessor-Architektur besonders geeignet ist, um komplexe Objekterkennungsapplikationen mit hohen Anforderungen an den Durchsatz und die Latenz zu verarbeiten.