Institute of Microelectronic Systems Studies Final exams and theses Abgeschlossene Arbeiten
Implementierung und Optimierung eines MIPS-basierten Soft-Core-Prozessorsystems zur Verkehrszeichenerkennung

Implementierung und Optimierung eines MIPS-basierten Soft-Core-Prozessorsystems zur Verkehrszeichenerkennung

Led by:  Nolting, Stephan
Team:  -
Is Finished:  yes

Besonders im Automobilbereich und im Kontext der Fahrerassistenzsysteme werden Architekturen für komplexe Berechnungen eingesetzt, die unter harten Echtzeitanforderungen arbeiten müssen. Szenenanalysen, wie Fußgänger-, Fahrbahn- oder Verkehrszeichenerkennung sind nur ein Beispiel für komplexe Systeme, die Fahrkomfort und –sicherheit steigern können. Heterogene Prozessor-architekturen bieten einen praktikablen Ansatz um die notwenige Anforderungen an die Rechenleistung zu erfüllen. Besonders die Entwicklung von sogenannten Soft-Core-Prozessoren für den Einsatz in Field Programmable Gate Arrays (FPGAs) ist Gegenstand aktueller Forschungen. Durch dedizierte Erweiterungen einer Basisarchitektur kann der Prozessor für eine bestimmte Anwendung oder ein Aufgabengebiet optimiert werden. Spätere Anpassungen der Architektur sind durch die Rekonfigurierbarkeit des FPGAs weiterhin gegeben, sodass derartige Prozessor-plattformen einen guten Abtausch zwischen Kosten, Rechenleistung und Effizienz bieten.

Die Aufgabe in dieser Arbeit ist es, eine MIPS Soft-Core-Architektur mit dedizierten Hardwarebeschleunigern zu erweitern, um die Ausführungszeit eines zuvor implementierten Algorithmus zur Verkehrszeichenerkennung zu optimieren. Diese Aufgabe erfordert die Portierung eines C++-Referenzcodes in eine MIPS-kompatible C-Fixpunktdarstellung sowie die Evaluation der erzielten Verarbeitungszeit. Ausgehend von dieser Untersuchung sollen die zeitintensiven Code-Segmente identifiziert, optimiert und gegebenenfalls als Hardwarebeschleuinger umgesetzt werden. Das gesamte Prozessorsystem soll mit Hilfe des UEMU Frameworks auf einem FPGA-Board emuliert werden. Über ein openCV-basiertes Programm auf dem Host-Rechner sollen dann Bilder an das FPGA übertragen, dort verarbeitet und die Ergebnisse zur Darstellung zurück an das Host-System geschickt werden.