Edge-AI-Systeme können die Effizienz von Lagern und Fabriken verbessern, in der Landwirtschaft und im Bauwesen für mehr Sicherheit und Effizienz sorgen und intelligente Features für den Einzelhandel und Privathaushalte bereitstellen. Insbesondere folgende Systeme sind auf eine effiziente Edge-AI-Verarbeitung angewiesen:
- Fahrassistenzsysteme (Advanced Driver Assistance Systems, ADAS): Die zumeist kamerabasierten ADAS-Funktionen verarbeiten hochauflösende Bilder mit Deep-Learning- und Computer-Vision-Algorithmen, um daraus Informationen zu gewinnen und das Fahren sicherer und komfortabler zu machen.
- Autonome mobile Roboter und Drohnen: Damit Roboter kommerziell erfolgreich sein können, muss das verwendete SoC (System-on-Chip) komplexe Wahrnehmungs- und Navigations-Stacks schnell, stromsparend und zu optimierten Systemkosten verarbeiten können. Zum Erzielen einer größtmöglichen Systemeffizienz muss das SoC rechenintensive Aufgaben auslagern.
- Intelligente Einkaufswagen: Meist mit mehreren Bildsensoren bestückt, können smarte Einkaufswagen die Preise der in den Wagen gelegten Waren aufsummieren, Kaufempfehlungen geben und ein einfaches Bezahlen ermöglichen.
- Edge-AI-Boxen: Diese Einheiten sind als intelligente Ergänzungen zu den Kamerasystemen konzipiert, die im Einzelhandel sowie in Fabriken und Gebäuden installiert sind, und dienen zur intelligenten Weiterverarbeitung der von einer größeren Anzahl Kameras gelieferten Bilder.
- Machine-Vision-Kameras: Kameras für optische Zeichenerkennung, Objektidentifikation, Defekterkennung und die Steuerung von Roboterarmen nutzen eingebettete AI-Technologien, um die Produktentwicklung zu vereinfachen und die Systemgenauigkeit zu verbessern.
Wann ist ein Edge-AI-System effizient?
Damit ein AI-System effizient ist, sollte es in verschiedener Hinsicht optimiert sein:
- Performance: Der eingebaute Prozessor sollte die vom System geforderte Geschwindigkeit, Latenz und Genauigkeit bieten und gleichzeitig zuverlässig funktionieren – auch unter rauem Einsatz
- Designrestriktionen: Der eingebaute Prozessor muss mit den Rahmenbedingungen bezüglich des Stromverbrauchs und der Wärmeentwicklung zurechtkommen und beispielsweise für Designs geeignet sein, die passiv gekühlt werden oder über Stunden aus Batterien versorgt werden. Platzbedarf und Gewicht sollten ebenfalls an die Gegebenheiten angepasst sein.
- Kosten: Eine leistungsfähige und kosteneffektive Verarbeitung ergibt unter dem Strich die niedrigsten Materialkosten.
Die Wahl der richtigen Architektur
Entwickler können bei den Prozessoren zwischen homogenen und heterogenen Architekturen wählen, wobei Letztere meist spezielle Verarbeitungsfähigkeiten für bestimmte Aufgaben enthalten. Hier kommt es darauf an, dass die passenden Kerne für die jeweiligen Aufgaben vorhanden sind. Nicht alle Prozessoren mit heterogenen Architekturen sind jedoch gleich, und der Hersteller muss im Einzelfall entscheiden, welche Funktionen eingebaut werden und ob diese mit Hardwarebeschleunigung versehen oder programmierbarbar bzw. konfigurierbar gemacht werden. Die Busarchitektur und das Speichersystem sind ferner für einen effizienten Datentransfer zwischen den Kernen auszulegen.
Sichtbasierte Edge-AI-Systeme können ineffektiv sein, wenn das betreffende SoC nicht die richtigen Kerne mitbringt, zu viele Kerne ineffizient gemanagt werden oder es der Businfrastruktur und dem Speichersubsystem an Effizienz mangelt. Bei den Kernen besteht die Wahl unter CPUs, GPUs, digitalen Signalprozessoren, ASICs und FPGAs. TI bietet außerdem spezielle Vision-Prozessoren an, die eine effiziente, skalierbare AI-Verarbeitung in Anwendungen mit spezifischen Platz- und Stromverbrauchs-Restriktionen ermöglichen.
Implementierung von Edge-AI-Systemen mit Vision-Prozessoren
Die Vision-Prozessoren der Familien AM6xA und TDA4 von Texas Instruments besitzen eine SoC-Architektur mit weitreichender Integration für Vision-Systeme. Enthalten sind CPUs vom Typ Arm Cortex-A72 oder Cortex-A53, interner Speicher und Schnittstellen sowie Hardwarebeschleuniger, die für Deep-Learning-Anwendungen auf eine AI-Verarbeitungsrate von 2 bis 32 TOPS (Tera Operations Per Second) kommen.
Die AM6xA-Familie nutzt einen Arm-Cortex-A-Prozessor zum Auslagern rechenintensiver Aufgaben an spezielle Hardwarebeschleuniger und programmierbare Kerne (siehe Bild 1). Die Integration anspruchsvoller Systemkomponenten in diese Prozessoren trägt zum Rationalisieren des Bauteileaufwands bei. Insgesamt umfasst das Prozessor-Portfolio skalierbare Optionen von AM62A-Prozessoren für Low-Power-Anwendungen mit einer oder zwei Kameras bis hin zum AM68A und AM69A für bis zu acht bzw. zwölf Kameras.
Hardwarebeschleuniger für Imaging und Computer Vision
Edge-AI-SoCs der hier beschriebenen Art beschleunigen rechenintensive Pixelverarbeitungs-Aufgaben, und ein Tiefen- und Bewegungswahrnehmungs-Beschleuniger bewirkt eine schnellere Tiefenwahrnehmung für ein zügigeres Erkennen der jeweiligen Umgebung. Die Beschleunigung dieser Verarbeitungsaufgaben per Hardware sorgt für einen geringeren Stromverbrauch und reduziert den Platzbedarf. Obwohl die Beschleunigung hardwaremäßig erfolgt, sind die Funktionen konfigurierbar, um den jeweiligen Systemanforderungen bestmöglich gerecht zu werden.
Dank der Integration und Beschleunigung werden spezielle ISPs oder FPGAs entbehrlich, und außerdem wird die CPU für rechenintensive Aufgaben freigestellt. Immerhin kann ein einziger Bildverarbeitungs-Beschleuniger die Signale von bis zu acht 2-Megapixel-Kameras oder zwei 8-Megapixel-Kameras mit 30 fps verarbeiten. Ein Tiefen- und Bewegungsverarbeitungs-Beschleuniger wiederum ist in der Lage, die Tiefenabschätzung mit 80 Megapixeln/s und Bewegungsvektoren mit 150 Megapixeln/s zu verarbeiten.
Intelligente Bus- und Speicherarchitektur
Die Vision-AI-Prozessoren von TI enthalten einen breitbandigen Bus mit einer blockierungsfreien Infrastruktur sowie einen großzügig bemessenen internen Speicher. Mehrere programmierbare DMA-Einheiten automatisieren die Datenübertragung mit sehr hoher Geschwindigkeit. Neben einer hochgradigen Auslastung der Hardwarebeschleuniger ermöglicht dieses Konzept eine erhebliche Einsparung an DDR-Speicherbandbreite (Double Data Rate). Durch die wenigeren DDR-Instanzen reduziert sich auch der von DDR-Zugriffen verursachte Stromverbrauch.
Optimierter Bauteileaufwand
Die integrierten Systemkomponenten und Features der Vision-SoCs von TI führen bei den verschiedensten Arten von Edge-AI-Anwendungen zu geringeren Materialkosten:
- ISP: Der integrierte ISP-Kern macht ein externes ISP- oder FPGA-Design überflüssig. Von dieser Integration können alle AI-Anwendungen mit einer oder mehreren Kameras profitieren – von Machine-Vision-Applikationen über intelligente Einkaufswagen und Roboter bis zu ADAS-Applikationen.
- Sicherheit: Der integrierte, ASIL-D- und SIL-3-konforme Safety-Mikrocontroller mit Cortex-R5-Kernen ermöglicht die Umsetzung der jeweiligen Safety-Vorgaben. Da die übrige Verarbeitung außerdem ASIL-B- und SIL-2-konform ist, kann diese Architektur beispielsweise in ADAS- und Robotik-Anwendungen sowie Steuergeräten für das Bauwesen und die Landwirtschaft eingesetzt werden.
- Ethernet- und PCIs-Switches: Die integrierten Ethernet- und PCIe-Switches ermöglichen den Verzicht auf externe Switch-Komponenten.
- Security: Integrierte Beschleuniger bieten Security-Unterstützung nach dem neuesten Stand der Technik.
- DDR-Speicher: Fehlerkorrektur und weniger DDR-Speicherinstanzen bieten ebenfalls das Potenzial für Kostensenkungen.
Bedienungsfreundliche Softwareentwicklungs-Umgebung
Von TI wird eine umfassende Softwareumgebung (Bild 3) angeboten, mit der sich das volle Potenzial einer heterogenen Architektur ausschöpfen lässt, ohne dass man sich mit der Hardware oder der proprietären Software von TI auseinandersetzen muss. Das Abstrahieren der Hardwarebeschleuniger durch Treiber in Produktionsqualität sowie die Bereitstellung von Schnittstellen zum übergeordneten Mikroprozessor-Betriebssystem mithilfe von APIs verringern den Zeitaufwand zum Entwickeln der Software. Zusätzlich sorgt TI-Software auf einer niedrigeren Ebene dafür, dass Imaging-, Vision-, Deep-Learning- und Multimedia-Tasks den jeweils richtigen Hardwarebeschleunigern zugewiesen werden.
Insgesamt werden hierdurch optimale Voraussetzungen für leistungsstarke, wenig Strom verbrauchende und kostengünstige Edge-AI-Anwendungen geschaffen, die völlig neue Möglichkeiten erschließen. (na)