Batteriebetriebene Geräte mit künstlicher Intelligenz benötigen MCU-Lösungen mit besonders geringer Energieaufnahme, die trotzdem die nötige Leistung für Inferenz bieten.

Batteriebetriebene Geräte mit künstlicher Intelligenz benötigen MCU-Lösungen mit besonders geringer Energieaufnahme, die trotzdem die nötige Leistung für Inferenz bieten. Das ermöglicht neue Lösungen. (Bild: Alif Semiconductor)

Der jüngste Aufstieg der künstlichen Intelligenz, oder KI, als allgegenwärtiges Gesprächsthema beruht wahrscheinlich auf den wachsenden Fähigkeiten großer KI-Engines wie OpenAI und der GPT-Architektur (Generative Pre-trained Transformer) ihres Sprachmodells. Während diese Systeme ganze Rechenzentren benötigen, bei denen GPUs die Rechenleistung liefern, können kleinere KI-Aufgaben die Leistung von Endprodukten mit erheblich eingeschränkten Ressourcen verbessern.

Als Beispiel lässt sich eine elektronische Katzenklappe mit KI hernehmen. Mit maschinellem Lernen würde dieses Gerät zuerst einmal angelernt, Katzen von anderen Tieren oder Gegenständen zu unterscheiden. Mit weiterem Training könnte sie lernen, eine bestimmte Katze von allen anderen Katzen zu unterscheiden und die Klappe nur für diese Katze zu öffnen. Damit ist die Wohnung sicher vor anderen Katzen und unsere Katze braucht kein RFID-Halsband oder eine andere lästige ältere Technologie zu tragen, um in die Wohnung zu gelangen. Hier verbessert KI erheblich die Benutzererfahrung von Haustier und Besitzer.

Wenn diese oder andere mit KI aufgewertete Embedded-Anwendungen in batteriebetriebenen Geräten laufen sollen, ist ein geringer Energieverbrauch eine der wichtigsten Anforderungen. Die meisten dieser kleinen Anwendungen mit eingeschränkten Ressourcen würden heute mit einem universellen Mikrocontroller realisiert. Nun ist es zwar möglich, die Funktionen zum Maschinenlernen mit einem Mikrocontroller zu implementieren, aber diese Komponenten haben Mühe, KI-Aufgaben schnell auszuführen, und sie verbrauchen für die KI-Funktionen zu viel Energie. Für Server vorgesehene GPUs bieten ein Vielfaches der für Embedded-Anwendungen erforderlichen Rechenleistung, überschreiten aber bei weitem den vorgesehenen Kostenrahmen und Energiebedarf.

Um ein batteriebetriebenes KI-fähiges Produkt zu realisieren, braucht der Entwickler eine wesentlich bessere Lösung zur Implementierung des Maschinenlernens, ohne die vertrauten Werkzeuge und Befehlssätze eines universellen Mikrocontrollers aufzugeben. Mit der Kombination einer seit neuestem lieferbaren Prozessorarchitektur mit einem Arm-Cortex-M-Real-Time-Kern hat Alif Semiconductor eine neue Kategorie von KI-optimierten Mikrocontrollern geschaffen, die das Problem der Implementierung von KI im Batteriebetrieb lösen könnten.

Die besonderen Merkmale von KI-Aufgaben

In großen KI-Anwendungen werden GPUs eingesetzt, denn sie können viele Prozesse parallel ausführen, was für eine effektive Lernumgebung für KI wesentlich ist. Neuronale Netzwerke lernen, indem sie mehrere große Datensätze gleichzeitig verarbeiten. So ist z. B. selbst ein einzelnes Bild eine Gruppe großer Datensätze, definiert durch die Höhe und Breite des Bilds und die Daten zu jedem einzelnen Pixel. Wird dies auf bewegte Videodaten übertragen, kommt die Änderung der Pixeldaten über die Zeit zu diesem Anlernprozess hinzu. Im Unterschied zu einer GPU zur Parallelverarbeitung verarbeitet eine Standard-CPU in einem universellen Mikrocontroller die Daten nacheinander, wobei sie jedes einzelne Pixel der Reihe nach scannt, statt wie eine GPU das gesamte Bild zu analysieren. Für die CPU des Mikrocontrollers heißt das, dass sie jedes einzelne Pixel mit sehr viel höherer Geschwindigkeit scannen muss, um dieselbe Aufgabe zur Bilderkennung – z. B. die genaue Identifizierung einer Hauskatze – so schnell wie eine vergleichsweise langsame GPU auszuführen.

Bei einer solchen Operation arbeitet der CPU-Kern für längere Zeiträume mit seiner maximalen Betriebsfrequenz. Dadurch, dass nun fast die gesamte Rechenleistung der KI-Funktion zugewiesen wird, leidet wahrscheinlich die sonstige Leistung des Mikrocontrollers. Gleichzeitig nimmt der Energieverbrauch des Geräts in einer Weise zu, wo ein Batteriebetrieb nicht mehr sinnvoll möglich ist. Das zeigt die Schwierigkeit, nützliche KI-Funktionen in Batteriegeräten mit herkömmlichen universellen Mikrocontrollern zu realisieren.

Wie TinyML den Energieverbrauch in KI-Anwendungen reduziert

Auch wenn die Realisierung eines batteriebetriebenen Geräts mit KI auf der Grundlage eines universellen Mikrocontrollers eine Herausforderung ist, so ist sie keineswegs unmöglich. Eine Lösung besteht darin, die Aufgabe weniger komplex zu machen, bis Energieverbrauch und Leistung für das Gerät beherrschbar werden. TinyML ist ein reduziertes Maschinenlernen, das im Leistungsbereich von Milliwatt anstelle der zweistelligen Wattzahlen bei GPUs für große KI-Aufgaben funktioniert. Mit eigens entwickelten Softwarebibliotheken für ein KI-Training und die Implementierung mit eingeschränkten Ressourcen ermöglicht es TinyML, auf Batteriegeräten einfache KI-Aufgaben wie die Erkennung von Gesten mit Beschleunigungsmessern auszuführen. Dieses Modell könnte in intelligenten Wearables eingesetzt werden, um zwischen verschiedenen vom Anwender ausgeführten Übungen zu unterscheiden.

Somit sind TinyML-Aufgaben einfach und benötigen sehr viel weniger Speicher und Rechenleistung als anspruchsvollere KI-Aufgaben wie eine Gesichtserkennung. Während Aufgaben für TinyML für die Bildverarbeitung, z. B. die Verfolgung eines Objekts, vorgesehen sind, reichen sie aber nicht, um bei der Katzenklappe mit KI eine bestimmte Katze zu erkennen. TinyML hat viele Vorteile, um die Benutzererfahrung eines Endprodukts zu verbessern, wobei der geringe Energieverbrauch, wie er bei Batteriegeräten gefordert wird, jedoch aufwendigere KI-Funktionen ausschließt.

Eine weitere Lösung bei der Entwicklung eines Produkts mit KI besteht darin, einen Mikrocontroller auszuwählen, der mit einem für diese Aufgabe ausgelegten Prozessorkern ausgestattet ist, z. B. den Arm Cortex-M55. Dank der neuen Vektor-Befehlssatzerweiterung – der Arm Helium-Technologie – können die Cortex-M55-Controller Rechenaufgaben parallel ausführen, wodurch sie ähnliche Operationen wie GPUs bewältigen, wenn auch in einem kleineren Rahmen. Diese und weitere Entwicklungen in der Mikrocontroller-Architektur, z. B. die Cortex-M55 Floating-Point Unit (FPU), erlauben es mit dem Cortex-M55-Kern anspruchsvollere KI-Aufgaben als typische TinyML-Anwendungen zu bewältigen. Während diese Lösung eine erhebliche Verringerung bei der Komplexität der KI-Aufgaben, die sich mit einem universellen Mikrocontroller implementieren lassen, darstellt, bleibt immer noch das Problem des Energieverbrauchs, der über das hinausgeht, was bei batteriebetriebenen Geräten realistisch ist.

Auch wenn die Realisierung eines batteriebetriebenen Geräts mit KI auf der Grundlage eines universellen Mikrocontrollers eine Herausforderung ist, so ist sie keineswegs unmöglich. Eine Lösung besteht darin, die Aufgabe weniger komplex zu machen.
Auch wenn die Realisierung eines batteriebetriebenen Geräts mit KI auf der Grundlage eines universellen Mikrocontrollers eine Herausforderung ist, so ist sie keineswegs unmöglich. Eine Lösung besteht darin, die Aufgabe weniger komplex zu machen. (Bild: Alif Semiconductor)

Eine KI-Beschleunigung für universelle Mikrocontroller

Das Geheimnis zur Lösung dieses Problems liegt in einer neuen von Arm entwickelten Prozessorarchitektur, der Ethos-U microNPU. Diese spezielle Einheit zur neuronalen Verarbeitung steigert die Leistung ihrer Cortex-M-Kerne ganz erheblich und kann zur Beschleunigung von KI/ML bei Embedded-IoT-Geräten eingesetzt werden. In einem Endprodukt mit KI, bei dem die Steuerfähigkeiten eines Cortex-M Mikrocontrollers verlangt werden, können die KI/ML-Berechnungen direkt auf dieser neuen microNPU-Architektur sehr viel effizienter als mit der Cortex-M-CPU ausgeführt werden. Eine Verlagerung der KI/ML-Aufgaben in diesen funktionsspezifischen Kern erlaubt außerdem den Betrieb des primären Cortex-M-Kerns im Sleep- oder Low-Power-Modus und spart so während der KI-Operationen erheblich Energie ein. Außerdem kann diese microNPU Daten mit KI durchforsten, sodass die höheren Funktionen des Cortex-M-Kerns erst dann Energie verbrauchen, wenn die microNPU ermittelt hat, dass dies in der Anwendung erforderlich ist. Beim Einsatz der Ethos-U microNPU, werden universelle Cortex-M-Mikrocontroller nicht mehr mit den KI/ML-Aufgaben überfordert und können Standardoperationen ohne Kompromisse bei der Leistung oder Batterielebensdauer ausführen.

Die ersten Mikrocontroller mit dieser Architektur sind die Komponenten der Ensemble-Familie von Alif Semiconductor. Bei Tests unter realen Bedingungen hat sich gezeigt, dass eine Kombination aus einem Cortex-M55-Real-Time-Kern und der Ethos-U55 microNPU den Energieverbrauch einer KI-Aufgabe im Vergleich zu anderen Cortex-M-Prozessoren um 90 Prozent reduziert. Hinzu kommen ein um 90 Prozent geringerer Bedarf an Systemspeicher und eine bis zu 75 Prozent geringere Größe des Modells zum Maschinenlernen dank der Offline-Optimierung innerhalb der microNPU und fortschrittlicher Algorithmen zur verlustfreien Modellkomprimierung. Mit der Einführung der Ensemble-Familie von Alif Semiconductor in die Welt der 32-Bit-Mikrocontroller erhalten die Entwickler Zugang zu einer neuen Klasse von Bauteilen, die die Vertrautheit des universellen Mikrocontrollers mit den Vorteilen eines energieeffizienten KI/ML-Inferencings verbindet.

Beim Einsatz der Ethos-U microNPU, werden universelle Cortex-M-Mikrocontroller nicht mehr mit den KI/ML-Aufgaben überfordert und können Standardoperationen ohne Kompromisse bei der Leistung oder Batterielebensdauer ausführen.
Beim Einsatz der Ethos-U microNPU, werden universelle Cortex-M-Mikrocontroller nicht mehr mit den KI/ML-Aufgaben überfordert und können Standardoperationen ohne Kompromisse bei der Leistung oder Batterielebensdauer ausführen. (Bild: Alif Semiconductor)

Erstellen eines universellen Mikrocontrollers für KI/ML-Aufgaben

Während die Ensemble-Familie von Alif Semiconductor für Entwickler, die KI-gestützte Funktionen für Geräte mit möglichst geringem Energieverbrauch realisieren wollen, eine aufregende Sache darstellt, können verschiedene Stufen von KI/ML-Inferencing auch mit Stacks aus mehreren Paaren von Cortex-M- und Ethos-U-Prozessoren erreicht werden.

Als Beispiel arbeitet das einfachste Bauteil der Ensemble-Familien mit nur einem Cortex-M55-Real-Time-Kern, unterstützt durch eine einzige Ethos-U55 microNPU zur Beschleunigung von KI und ML. Die Ensemble E3 ist die erste in dieser neuen Familie hardwarebeschleunigter MCUs, die in die Produktion geht. Alif hat auf dem 2021er Arm DevSummit Vorführungen und erste Daten gezeigt und seither die Anzahl der ausgewerteten Anwendungsfälle und Benchmarks erheblich erweitert. Als Beispiel wird ein MobileNet-V2-1.0-Modell, das mit dem ImageNet-Datensatz trainiert worden ist, mit der Beschleunigung durch Alifs microNPU 135-mal schneller als nur mit einer Cortex-M55-MCU ausgeführt, wobei die Ausführungszeit bei 20 ms im Vergleich zu fast 3 s mit dem Cortex-M55-Kern liegt. Zu beachten ist hierbei, dass die Cortex-M55 eine wesentlich höhere Leistung als die CM-Kerne früherer Generationen liefert. Auch die gemessene Energie pro Inferenz nimmt dramatisch ab. Der beschleunigte Betrieb ist 108-mal energieeffizienter und verbraucht nur 0,86 mJ gegenüber 62,4 mJ.

Richtig interessant wird es beim Blick auf die Dual-Core-Version, die auf den Fähigkeiten des bisherigen Mikrocontrollers beim Maschinenlernen aufbaut und zusätzlich einen zweiten leistungsfähigeren Cortex-M55-Kern mit einer eigenen proportional skalierten Ethos-U microNPU hat. In Verbindung mit dem ersten Kern kann ein Two-Tier-Inferenzsystem zur Ausführung von KI/ML-Aufgaben mit niedrigeren und höheren Anforderungen realisiert werden.

Der andere Schlüssel zur Ausführung von KI/ML-Aufgaben bei eingeschränktem Energieverbrauch sind die energiesparenden Modi der Ensemble-Bauteile, bei denen ein großer Teil des Chips heruntergefahren wird. Wenn nur noch die Echtzeituhr und die Quellen zum Wecken aktiv sind, nehmen diese Mikrocontroller ca. 1,0 µA auf und werden so zu einer ernstzunehmenden Option für batteriebetriebene Systeme. Wenn das System geweckt werden muss, kann der Cortex-M55-Kern mit äußerst geringem Energieverbrauch arbeiten, allein um die Ethos-U microNPU anzuweisen, eine Inferenzaufgabe auszuführen, mit der dann bestimmt wird, ob weitere Teile des Ensemble-Bauteils aktiviert werden sollen.

Bei der microNPU ist der beschleunigte Betrieb 108-mal energieeffizienter als bei herkömmlichen Lösungen und verbraucht nur 0,86 mJ gegenüber 62,4 mJ.
Bei der microNPU ist der beschleunigte Betrieb 108-mal energieeffizienter als bei herkömmlichen Lösungen und verbraucht nur 0,86 mJ gegenüber 62,4 mJ. (Bild: Alif Semiconductor)

Auswirkungen der Technologie

Welche Auswirkungen hat die Technologie also auf die elektronische Katzenklappe mit KI? Im vorherigen Beispiel ist anzunehmen, dass die Katze ursprünglich entweder durch eine Form der Bewegungserkennung, Videoüberwachung oder eine Kombination aus beiden erkannt wurde. Ein ständiger Videofeed und die zugehörige KI-Inferenz würde sehr viel Energie dabei verbrauchen, die Katze zu erkennen, und das unabhängig davon, ob sie sich bereits im Bild befindet. Um Energie zu sparen, könnte der Dual-Core-Mikrocontroller aus der Ensemble-Serie die Weckfunktion des ersten Cortex-M55-Kerns nutzen, um zuerst mit einem Sensor mit geringem Energieverbrauch festzustellen, ob es Bewegung vor der Katzenklappe gibt.

Wenn Bewegung erkannt wird, kann der erste Cortex-M55-Kern die Ethos-U microNPU des Inferenzsystems auf der unteren Ebene wecken, um einige Frames des Videofeeds zu erfassen und die Daten daraufhin zu analysieren, ob eine Katze anwesend ist. Es könnte sich auch um ein anderes Tier oder einen Gegenstand handeln, der den Bereich vor der Kamera passiert hat. Wenn nach der Überprüfung des Videos klar ist, dass sich eine Katze der Katzenklappe genähert hat, kann der erste Cortex-M55 die zweite Ethos-U des Inferenzsystems auf der höheren Ebene wecken, um zu prüfen, ob es sich um die richtige Katze handelt. Wenn die Katze nicht erkannt wird, kann das System Energie sparen, indem es auf die Bewegungserkennung der unteren Ebene zurückschaltet, bis ein neues Objekt im Bildfeld erscheint. Falls bestimmt wurde, dass es sich um die richtige Katze handelt, kann die zweite microNPU das zweite Cortex-M55-System aufwecken und den Mechanismus aktivieren, um die Katze hereinzulassen. Die Katze und die Familie genießen weiterhin die bessere Benutzererfahrung des Geräts mit KI-Unterstützung, aber mit einem deutlich reduzierten Energieverbrauch des Two-Tier-KI-Inferenzsystems dank des neuen Mikrocontrollers von Alif Semiconductor.

ML in batteriebetriebenen Endprodukten

Angesichts der Schwierigkeiten, Maschinenlernen in batteriebetriebenen Endprodukten zu implementieren, löst die Ensemble-Familie von Alif Semiconductor die bisherigen Probleme des hohen Energieverbrauchs und der beschränkten Rechenleistung. Neben der neuartigen Prozessorarchitektur bieten diese Bauteile weiterhin den Speicher, die Ein- und Ausgänge sowie die Peripherie, die in jedem System mit einem universellen Mikrocontroller benötigt werden, und dies mit einer umfassenden eingebauten Sicherheit als Bonus. Darüber hinaus bedeutet der Einsatz einer einzelnen Werkzeugkette mit der vertrauten Umgebung von Cortex-M und universellem Mikrocontroller, dass die Entwickler die Einführung der Fähigkeiten zum Maschinenlernen nicht als etwas völlig Neues erleben. Damit sind die Bauteile der Ensemble-Familie ein einfacher Ausgangspunkt für die Entwickler, um darüber nachzudenken, wie sie ihre Produkte mithilfe der KI verbessern können. Mit den verfügbaren Entwicklungs-Kits stellt Alif Semiconductor einen einfachen Weg zur Implementierung des Maschinenlernens in Mikrocontroller-basierten Endprodukten ohne Kompromisse bei der Leistung oder dem Energieverbrauch bereit. (na)

Sie möchten gerne weiterlesen?