Wie im Bild 3 dargestellt, wird das Marktvolumen für SLAM-basierte Anwendungen auf mehr als 2 Mrd. US-Dollar in 2024 geschätzt [1]. Haupttreiber für dieses Marktwachstum sind die Fortschritte bei SLAM-Algorithmen und das Wachstum von SLAM in verschiedenen Märkten.
Die weitere technologische Entwicklung und das wachsende Bewusstsein hinsichtlich der von SLAM angebotenen Vorteile steuern in erster Linie die Marktnachfrage. Das zunehmende Interesse an der Technologie, besonders in den Bereichen autonome Fahrzeuge und Augmented Virtual Reality, hat zu einer weltweiten Verbreitung und Expansion von SLAM geführt.
Durch den Einsatz von SLAM für die Navigation von Anwendungen im Innen- und im Außenbereich eröffnet es einen breiten Einsatz in verschiedene Endverbrauchermärkte. Im Laufe der letzten fünf Jahre haben führende Technologie-Unternehmen erheblich in SLAM investiert, um verschiedene Strategien zur Geschäftserweiterung, wie neue Produktentwicklungen sowie Fusionen und Übernahmen, zu integrieren.
Bild 4 zeigt einen verallgemeinerten SLAM-Ablauf. Jeder der Blöcke basiert auf einem klassischen Ansatz der visuellen Verarbeitung. Allerdings erfordern sie verschiedene lineare Algebra- und Matrixoperationen und somit eine hohe Rechenleistung. Die Implementierung ist auf einer CPU oder GPU möglich.
Die Verwendung einer CPU ist ideal für universelle Anwendungen und Prototypen, ist aber mit gewissen Leistungseinschränkungen verbunden. Eine weitere Einschränkung ist die kleine Zahl von SIMD-Pfaden für die Parallelverarbeitung. Zweitens ist eine CPU nicht leistungseffizient und bietet dadurch keine gute Möglichkeit für eine Skalierung, und schließlich kann eine CPU in manchen Fällen keine SLAM-Echtzeitverarbeitung bieten.
Die Verwendung einer GPU ist die nächste Ausbaustufe in Bezug auf die Rechenleistung. Eine GPU bietet verschiedene Modalitäten für die Parallelverarbeitung, sodass eine höhere Leistung erreicht und die Echtzeitanforderungen erfüllt werden können. GPUs sind jedoch leistungshungrig und erzeugen viel Wärme. Außerdem können SoC-Anbieter nur schwer die Chipfläche einer GPU rechtfertigen, nur um die Verarbeitung auf diese Weise zu implementieren.
Deshalb ist ein spezialisierter DSP die bessere Lösung. DSPs sind flexibel programmierbar und benötigen nur wenig Platz, zudem sind sie für den Einsatz in vielen Geräten von unterschiedlichen Märkten skalierbar.
Der Cadence TensilicaQ7-DSP wurde mit der Absicht entwickelt, hochleistungsfähige SLAM-Anwendungen für das Edge-Computing und in anderen Geräten zu ermöglichen. Die Befehle im Hinblick auf eine höhere Leistung bei Matrixoperationen, Merkmalextraktionen und Faltungen wurden optimiert, um die höchste Leistung im Bereich der Vision DSPs zu erreichen. Denn im Edge-Bereich ist eine optimale Abstimmung zwischen hoher Leistung und niedrigem Energieverbrauch entscheidend für SLAM-Anwendungen. Bild 5 zeigt die Architektur und Hauptmerkmale dieses DSPs.
Der Vision Q7 DSP bietet unter anderem eine 512-MAC-Verarbeitung (8 Bit), einen 64-Wege-SIMD-VLIW-Prozessor, eine 1.024-Bit-Speicher-Schnittstelle mit zweifacher Lade- und Speichereinheit, eine 2x Vektor-Gleitkommaeinheit (vFPU) im Vergleich zu vorherigen DSPs, den integrierten 3D-DMA mit vier Kanälen sowie optionale Pakete für gesteigerte SLAM-Performance. Der DSP erreicht bis zu 2 TOPS (Tera-Operations pro Sekunde).
Der DSP erfüllt die Anforderungen gemäß ISO 26262 und ist eine ideale Plattform für Automobilanwendungen. Die Blockschaltung in Bild 6 zeigt verschiedene an den DSP angeschlossene Sensoren, die sich für eine SLAM-Verarbeitung eignen.
Darüber hinaus ermöglicht der DSP auch viele dezentralisierte und verteilte Systeme, wobei der DSP in der Nähe der Sensoren platziert werden kann, um die Daten zu verarbeiten, bevor diese die CPU erreichen. Dadurch lassen sich die Speicherbandbreite und die zu übertragende Datenmenge reduzieren. Dieser Ansatz wird meistens in komplexen Systemen genutzt, um die Anforderungen von sicherheitskritischen und sehr leistungsfähigen Anwendungen der nächsten Generation zu erfüllen.
Zusätzlich zur vollen Unterstützung in der Tensilica Xtensa-Xplorer-Entwicklungsumgebung nutzt der Vision Q7 DSP auch die hoch optimierte Cadence Xtensa Imaging Library. Inspiriert durch OpenCV (der C++ Computer Vision Bibliothek) hat Cadence viele der OpenCV-Funktionen portiert, wobei die Funktionsnamen und API ähnlich sind, sodass der Umstieg von OpenCV erleichtert wird.
Der Vision Q7 DSP wird durch den Tensilica Neural Network Compiler unterstützt. Dieser Compiler bildet neuronale Netze in ausführbaren und hoch optimierten leistungsfähigen Code für den Vision Q7 DSP ab, wobei eine umfangreiche Auswahl von optimierten Bibliothekfunktionen für neuronale Netze wirksam eingesetzt werden.
Für einen Leistungsvergleich wurde eine interne Implementierung von VSLAM mit einem einzelnen Kameraeingang durchgeführt und die verschiedenen Blöcke der SLAM-Pipeline sowohl auf den Vision Q7 DSP als auch auf seinen Vorgänger, den Vision Q6 DSP, portiert (siehe Bild 7).
Der Vision Q7 DSP zeigt bei verschiedenen Blöcken der SLAM-Pipeline eine Leistungssteigerung um etwa den Faktor zwei gegenüber dem Vision Q6 DSP. Verbesserte Befehle, optimierte Pakete und mehr MACs ermöglichen eine Abschätzung der Kameraposition mit einer höheren Frequenz. Außerdem lassen sich mit dem Vision Q7 DSP SLAM-basierte Anwendungen besser beschleunigen. Trotz dieser Leistungssteigerung benötigt der Vision Q7 nicht mehr Platz als der Vision Q6 und verbraucht weniger Leistung, ist also die ideale Lösung für zukünftige Produkte.
Fortschritte im Rahmen des neuen DSP wurden durch die Integrierung verschiedener CNN-Ebenen (Convolutional Neural Network) gemacht, um unter anderem die Punktübereinstimmung und die Merkmalsextraktion zu verbessern. Der Cadence Tensilica Q7 DSP unterstützt viele der bei den neuen neuronalen Netzen erforderlichen Ebenen, was eine Fusion zwischen Vision- und KI-Applikationen auf demselben DSP ermöglicht. Und diese »Harmonie« zwischen Visionsverarbeitung und KI ist entscheidend, um die nächste Generation von SLAM-basierten Anwendungen auf den Automobilmarkt einzuführen.
Literatur
[1] Bhutani, A.; Wadhwani, P.: SLAM Technology Market size worth over $2bn by 2024. Global Market Insights, 01. Oktober 2018. [Online]. Verfügbar unter: https://www.gminsights.com/pressrelease/slam-technology-market.
Der Autor
Amol Borkar
ist Senior Product Marketing Manager für die Tensilica Vision- und AI DSP-Produktlinie in der IP-Gruppe von Cadence. Früher war er in der RealSense-Group bei Intel. Amol besitzt einen Bachelor-Grad von der North Carolina State University sowie einen MS- und einen PhD-Titel der Georgia Tech University.