Der Neuronale-Netzwerke-Beschleuniger-Mikrocontroller MAX78000 erlaubt batteriebetriebenen Internet-of-Things-Geräten die Ausführung von KI-Inferenzen ohne Leistungseinbußen. Er erhöht damit effektiv die Laufzeit batteriebetriebener Applikationen und soll auch komplexe KI-Anwendungen ermöglichen, die zuvor als nicht realisierbar galten.
Laut dem Hersteller Maxim kommen diese Leistungsverbesserungen ohne Kompromiss bei Latenz und Kosten aus: So soll der MAX78000 Inferenzen 100-mal schneller ausführen als Softwarelösungen, die auf Low-Power-Mikrocontrollern laufen, und das zu einem Bruchteil der Kosten von FPGA- oder GPU-Lösungen.
„Wir haben das Stromkabel für KI an der Edge durchtrennt“, sagt Kris Ardis, Executive Director der Business Unit Micros, Security and Software bei Maxim. „Batteriebetriebene IoT-Geräte können jetzt viel mehr als nur einfaches Keyword-Spotting. Wir haben das Feld der batteriebetriebenen KI-Anwendungen revolutioniert, in dem sich bisher alles um Kompromisse zwischen der typischen Leistungsaufnahme, der Latenzzeit und den Kosten drehte.“
Leistungslimits von KI-Geräten aufheben
KI-Inferenzen an die Edge zu bringen, bedeutete früher, Daten von Sensoren, Kameras und Mikrofonen zu sammeln, für eine Schlussfolgerung (Inferenz) an die Cloud zu senden und anschließend eine Antwort zurück zur Edge zu übermitteln. Diese Architektur funktioniert, bedeutet aber aufgrund der schlechten Latenzzeiten und dem hohen Energiebedarf eine große Herausforderung für Edge-Anwendungen.
Zwar können alternativ Mikrocontroller mit niedriger Leistungsaufnahme eingesetzt werden, um einfache neuronale Netzwerke zu implementieren. Allerdings leidet hierbei die Latenz, und es sind nur einfache Aufgaben an der Edge durchführbar.
Der MAX78000 soll diese Einschränkungen aufheben, indem er einen dedizierten neuronalen Netzwerkbeschleuniger mit zwei verschiedenen Mikrocontroller-Kernen integriert. Maschinen können so komplexe Muster optisch und akustisch wahrnehmen – mit lokaler und in Echtzeit ausgeführter KI-Verarbeitung bei geringer Leistungsaufnahme. Davon profitieren unter anderem Anwendungen wie die industrielle Bildverarbeitung, Audio- und Gesichtserkennung.
Nur für Rechenoperationen Energie verbrauchen
Herzstück des MAX78000 ist eine spezialisierte Hardware, die darauf ausgelegt ist, die Leistungsaufnahme und die Latenzzeit von Convolutional Neural Networks (CNN) zu minimieren. Diese Hardware läuft, ohne dass die Mikrocontroller-Kerne stark eingreifen müssen. Energie und Zeit werden nur für die mathematischen Operationen aufgewendet, die ein CNN implementieren.
Um externe Daten effizient in die CNN-Engine zu übertragen, können Kunden einen der beiden integrierten Mikrocontroller-Kerne verwenden: den Ultra-Low-Power-ARM-Cortex-M4-Kern oder den RISC-V-Kern mit einer noch niedrigeren Leistungsaufnahme.
Für die Entwicklung stellt Maxim auch Evaluierungs-Tools zur Verfügung. Das MAX78000EVKIT# enthält Audio- und Kameraeingänge sowie sofort einsatzbereite Demos für das Keyword Spotting und die Gesichtserkennung. Eine vollständige Dokumentation soll Entwicklern dabei helfen, Netzwerke für den MAX78000 mit den für sie gewohnten Tools wie TensorFlow oder PyTorch zu trainieren.