Eckdaten

Dieser Artikel erläutert, wie eine kürzlich angekündigte Lösung von NXP Semiconductors durch Reduzierung der Kosten und Verringerung der Lernkurve ein schnelleres Wachstum der Anzahl von Produkten mit integrierter Alexa-Built-in-Technologie erleichtern wird.

Im Januar 2019 erklärte Dave Limp, Senior Vice President Devices and Services bei Amazon, in einem Interview mit The Verge, dass weltweit mehr als 100 Millionen Geräte verkauft wurden, die mit Alexa Voice Service (AVS) ausgestattet sind. Diese Zahl verblasst im Vergleich zur Anzahl der Smartphones, auf denen entweder Siri oder der Google Voice Assistant (GVA) vorinstalliert ist. Hingegen entscheiden sich Menschen, die Alexa-kompatible Geräte kaufen, aktiv für Alexa, während Smartphone-Nutzer die vorinstallierten Assistenten vielleicht niemals verwenden.  Einen Sprachassistenten im Telefon zu haben, ist eine nette Funktion, aber Nutzer verfügen damit nicht über das Potenzial und die Bequemlichkeit einer Freisprechfunktion, die sie mit Produkten wie den intelligenten Amazon-Echo-Lautsprechern erhalten. Diese 100 Millionen Alexa-Geräte umfassen laut Amazon neben den eigenen Echo-Lautsprechern auch Fremdgeräte von mehr als 4500 verschiedenen Herstellern, davon über 150 Produkte mit Alexa Built-in und rund 28.000 unterschiedliche Produkte, die mit Alexa zusammenspielen.

Die auf der i.MX RT106A MCU basierende AVS-Lösung für Alexa Built in

Die auf der i.MX RT106A MCU basierende AVS-Lösung NXP

Die Hardware für Alexa Built in besteht aus zwei kleinen, 30 mm × 40 mm großen Platinen. Das MCU System-on-Module (SoM) beinhaltet den i.MX RT106A-Prozessor, Hyperflash-Speicher, ein Wi-Fi-/Bluetooth-Modul sowie optional einen Sicherheitsbaustein A71CH.

Die Hardware besteht aus zwei kleinen Platinen. Das MCU System-on-Module (SoM) beinhaltet den i.MX-RT106A-Prozessor, Hyperflash-Speicher, ein Wi-Fi-/Bluetooth-Modul sowie optional einen Sicherheitsbaustein A71CH. NXP

Das Kit wird mit Software geliefert, die alles umfasst, was Entwickler benötigen, um sich im Handumdrehen mit dem Alexa Voice Service zu verbinden und mit der Prototypenentwicklung zu beginnen.

Das Kit wird mit Software geliefert, die alles umfasst, was Entwickler benötigen, um sich im Handumdrehen mit dem Alexa Voice Service zu verbinden und mit der Prototypenentwicklung zu beginnen. NXP

Eine Lösung von NXP Semiconductors ermöglicht erstmals den Einsatz eines preisgünstigen Mikrocontrollers (MCU) für die Integration von Alexa in eine wesentlich breitere Vielfalt von Geräten. Die Notwendigkeit, einen teuren Applikationsprozessor oder einen Mikroprozessor einzusetzen, entfällt und es wird viel einfacher für viele Hersteller, ihre Produkte mit Alexa auszustatten. Wir werden auf die Unterschiede zwischen Works-with-Alexa-Produkten und denen mit Alexa Built-in eingehen. Auch mit den grundlegenden Unterschieden zwischen MCUs und MPUs werden wir uns befassen, da es für das Verständnis von entscheidender Bedeutung ist, warum die auf einer MCU basierende Bereitstellung von Alexa die Entwicklung vieler weiterer Produkte mit dieser Funktion ermöglichen wird.

Works-with-Alexa-Produkte

Es gibt heute fast zweihundertmal so viele verschiedene Works-with-Alexa-Produkte als solche mit Alexa Built-in. Das liegt daran, dass ein Hersteller relativ problemlos Alexa-Kompatibilität zu einem intelligenten, App-gesteuerten Gerät hinzufügen kann. Zudem können Geräte auch lange nach dem Verkauf und im Feld nachgerüstet werden. Works with Alexa bedeutet, dass das Gerät von Amazon zertifiziert wurde, um zu verifizieren, dass es sich mit Sprachbefehlen über den Alexa Voice Service steuert lässt, zum Beispiel über die Amazon-Echo-Lautsprecher. OEM-Hersteller ermöglichen Kunden die Steuerung ihrer Geräte mit Alexa, indem sie ihr eigenes Know-how rund um Alexa aufbauen oder auf bestehendes Alexa-Know-how zurückgreifen, beispielsweise auf die Smart Home Skill API.

Alexa-Built-in-Produkte verfügen über Mikrofone, die auf das Alexa-Weckwort lauschen und dann Befehle in die Cloud übermitteln, sowie über einen Lautsprecher, der die Reaktionen von Alexa wiedergibt. Für einen echten Freisprechbetrieb benötigen die meisten Alexa-Built-in-Geräte eine Far-field-Funktion (Abstand-Spracherkennung), mit der sie Sprachbefehle von überall im Raum aus verstehen können. Das sind in der Regel Entfernungen von bis zu 5 m. Um Sprachbefehle auch bei Hintergrundgeräuschen vernünftig extrahieren zu können, verfügt eine gute Abstands-Spracherkennung in der Regel über ein auf digitaler Signalverarbeitung (DSP) basierendes Audio-Frontend (AFE), das die Hintergrundgeräusche unterdrückt sowie Echos eliminiert. Das sogenannte Barge-in ermöglicht, dass Befehle während der Audiowiedergabe erkannt werden und bestimmt mithilfe eines aus mehreren Mikrofonen bestehenden Arrays die Richtung, aus welcher der Sprachbefehl kommt.

MPUs und MCUs

Auf Anwendungsprozessoren, auch Mikroprozessoren (MPUs) genannt, läuft ein komplexes Betriebssystem (OS) wie Windows, MacOS, iOS, Android oder Linux, das große Speicherbereiche benötigt, die aus Gigabytes (GB) von Nand-Flash- und Gigabytes von SDRAM-Speicherbausteinen bestehen. Alle diese Betriebssysteme verwalten virtuelle Speicherräume, die von einer Memory Management Unit (MMU) auf den physikalischen Speicher der Prozessoren abgebildet werden. Die heutigen MPUs haben in der Regel zwei, vier, acht oder mehr Prozessorkerne und sind in leistungsstarken Geräten zu finden, beispielsweise in Laptops, Smartphones, Tablets und Smart Screens, Videospiel-Konsolen, Netzwerkgeräten, Routern und Gateways. MPUs basieren in der Regel auf Arm-Cortex-A-CPUs (A steht für Application) und umfassen Bausteine wie den Apple A12 Bionic, der das Herzstück der aktuellen iPhone-Modelle bildet, oder das Broadcom-SoC BCM2837B0 im neuesten Raspberry Pi Board.

Mikrocontroller (MCUs) in Embedded-Designs nutzen in erster Linie ein Echtzeit-Betriebssystem (RTOS) wie Amazon Free RTOS oder Mbed OS. Diese RTOS-Implementierungen benötigen in der Regel sehr wenig Speicher, typischerweise ein Megabyte Flash und SRAM, die beide häufig schon auf dem Chip integriert sind. MCUs sind fast immer Bausteine mit nur einem Rechenkern und werden für die Embedded-Steuerung von Produkten wie Haushaltsgeräten, Elektrowerkzeugen, Spielzeug, Automobil-Subsystemen wie Motor-, Brems-, Lenkungs- und Fahrwerksteuerungen sowie viele Smart-Home-Produkte wie Lichtschalter, Smart Plugs, Thermostate und Rauchmelder eingesetzt. Heute basieren MCUs häufig auf Arm-Cortex-M-CPUs (M steht für eMbedded) wie den Kinetis MCUs von NXP, die unter anderem in den Rauchmeldern von Nest Protect sitzen.

Vor der Einführung der auf dem i.MX RT106A von NXP basierenden Lösung für den Alexa Voice Service mussten OEMs für Alexa Built-in eine leistungsfähige MPU unter Linux einsetzen, die mindestens 750 DMips liefern kann (Millionen Dhrystone-Instruktionen pro Sekunde), und das mit mehr als 50 MB Speicher. Diese Zahlen enthalten bereits den DSP für das AFE zur Abstand-Feldabdeckung. Viele Produkte, in die OEMs Alexa integrieren möchten, verwenden keine MPUs sondern MCUs. Die Integration einer zusätzlichen MPU oder der Austausch der MCU gegen eine MPU würde die Kosten erheblich in die Höhe treiben. Darüber hinaus sind viele Ingenieure bei diesen OEMs nicht so vertraut mit MPUs und Betriebssystemen wie Linux, nachdem sie sich hauptsächlich mit Embedded-Code für MCUs beschäftigt haben, und das entweder auf RTOS-Basis oder als Maschinencode.

MCU-basierende Lösung

Im Februar 2019 kündigte NXP auf der Embedded World in Nürnberg die weltweit erste MCU-basierende Implementierung eines Alexa-Clients an. Dieser basiert auf dem i.MX RT106A, einem neuen Mitglied der i.MX-RT-Crossover-Prozessorfamilie. Mit dieser neuen Lösung können OEMs erstmals Alexa in Geräte mit einem kostengünstigen und stromsparenden Mikrocontroller (MCU) integrieren; einem Baustein, wie er typischerweise schon heute in jedem vernetzten Smart-Home-Produkt benötigt wird. So können OEMs ihre Produkte nun zu äußerst geringen Mehrkosten mit Sprachfähigkeit versehen. Diese machen nicht viel mehr aus als die Kosten für Mikrofone und einen Lautsprecher. Mit Amazon Free RTOS schöpft die neue MCU-basierende AVS-Lösung von NXP das volle Potenzial des Amazon-Web-Services (AWS) IoT Cores aus, um die Prozessorressourcen zu minimieren, die für die Integration von Alexa Built-in in ein Produkt benötigt werden.

Für MCU-basierende Produkte lässt Amazon statt des kompletten AVS Device SDK auf dem physikalischen Gerät einen virtuellen Alexa-Client in der Cloud als Containerdienst-Instanz auf dem AWS IoT Core laufen. Mit dieser Implementierung läuft der gesamte HTTP/2-Kommunikationsverkehr von Cloud zu Cloud, von AWS-IoT-Core-Servern und zu AVS-Servern ab. Dadurch kann der Alexa-Client kostengünstiger und in einer MCU mit geringerer Rechenleistung implementiert werden. Für ein Update in der Cloud kommt das MQTT-Protokoll zum Einsatz. Um den AVS-Client in die Cloud zu verlagern, müssen OEMs AWS-IoT-Core-Nutzer werden. Viele Unternehmen sind das aktuell vielleicht noch nicht, aber Amazon hat sich verpflichtet, die Kosten über die Lebensdauer für den Betrieb von AVS auf AWS IoT auf einen Nominalwert zu begrenzen. Darüber hinaus können OEMs durch die Verlagerung des Clients in die Cloud von einer signifikanten Kostensenkung für die Bereitstellung von Softwareupdates auf beim Kunden befindliche Geräte profitieren und damit Einsparungen erreichen, die vermutlich die zusätzlichen AWS-IoT-Kosten mehr als kompensieren werden. Bisher mussten OEMs immer dann, wenn Amazon einen neuen AVS-Client herausgegeben hat, um einen kritischen Fehler zu beheben, ein neues Software Image mit mehreren Gigabytes auf jedes ihrer im Feld in Betrieb befindlichen Geräte aufspielen. Nun kann Amazon die in der Cloud laufenden virtuellen Gerätedienst-Instanzen problemlos aktualisieren, und das ohne Kosten für die OEMs. Da das Software Image für die MCU-basierenden Geräte mehr als zwei Größenordnungen kleiner ist als bei einer MPU, sinken auch die Kosten der OEMs für die Aktualisierung ihrer eigenen Software auf dem physikalischen Gerät.

Reduzierte Kosten und Größe

Im Vergleich zu herkömmlichen MPU-Implementierungen, die mit Linux laufen und Gigabytes von RAM und Flashspeicher benötigen, kommt die MCU-Lösung von NXP mit wenigen hundert Kilobyte Onchip-RAM und nur wenigen Megabyte Flashspeicher aus, was die Kosten und die Größe eines Designs mit Alexa Built-in deutlich reduziert. Während MCUs in der Regel kostengünstiger als MPUs sind, ist es die enorme Verringerung des Speicherbedarfs, die den Großteil der Materialkosten (BOM) ausmacht, die mit dieser MCU-basierenden Implementierung erzielt werden.

Die i.MX RT106A MCU im Herzen der AVS-Lösung von NXP verfügt über einen Cortex-M7-Prozessor mit 600 MHz Taktfrequenz, 1 MB auf dem Chip integriertes SRAM und eine Vielzahl von Kommunikations- und anderen Peripheriefunktionen. Sie wird mit einer Lizenz zur Nutzung der schlüsselfertigen AVS-qualifizierten Software von NXP geliefert, einschließlich einer Implementierung eines Soft-DSP für das AFE. Dieser wird benötigt, um die Anforderungen von Amazon an die Abstand-Spracherkennung zu erfüllen. Diese Software läuft auf einer produktionsreifen Hardwareplattform, mit der OEMs in der Lage sind Alexa schnell und unkompliziert in ihre Produktdesigns zu integrieren.

Die auf der i.MX RT106A MCU basierende AVS-Lösung kann von NXP und autorisierten Distributoren als Komplett-Kit für die Evaluation, Entwicklung und Prototypenherstellung bezogen werden. Die unverbindliche Preisempfehlung liegt bei 49,00 US-Dollar.

Die Hardware besteht aus zwei kleinen, 30 mm × 40 mm großen Platinen. Das MCU System-on-Module (SoM) beinhaltet den i.MX-RT106A-Prozessor, Hyperflash-Speicher, ein WiFi-/Bluetooth-Modul sowie optional einen NXP-Sicherheitsbaustein A71CH. Das Audioboard arbeitet mit zwei oder drei preisgünstigen, leistungsstarken MEMS-Mikrofonen und kann über den intelligenten Audioverstärker TFA9894D von NXP an einen Lautsprecher angeschlossen werden.

Alles was Entwickler benötigen

Das Kit wird mit Software geliefert, die alles umfasst, was Entwickler benötigen, um sich im Handumdrehen mit dem Alexa Voice Service zu verbinden und sofort mit der Prototypenentwicklung zu beginnen. Das Softwarepaket, bei dem Anwender alles aus einer Hand erhalten, beinhaltet die Abstands-Sprachverarbeitung im AFE (Echo- und Geräuschunterdrückung, Beam forming und Barge-in), die Amazon-Weckwort-Engine (Wake Word Engine, WWE) und entsprechende Modelle, eine AVS-Client-Anwendung, die API und alle notwendigen Treiber. Mit Ausnahme des AFE und des WWE ist alles im Quellcode enthalten, damit es Entwicklern leichtfällt, ihre Gerätesoftware von ihrer aktuellen MCU auf den i.MX RT 106A zu portieren. Um dies zu ermöglichen, bietet die AVS-Lösung von NXP dem Entwickler für die Ausführung seiner Software ein auf dem Chip integriertes RAM mit 300 kB und eine CPU, die sich mit mindestens 120 MHz takten lässt. Damit sind mehr als ausreichende Ressourcen für die meisten Embedded-Anwendungen vorhanden.

Diese einzigartige MCU-Lösung von NXP für den Alexa Voice Service schöpft das Potenzial des Amazon FreeRTOS und des AWS IoT Cores aus und wartet mit den Vorteilen einer kürzeren Markteinführungszeit, geringeren Material- und Wartungskosten über die Lebensdauer auf. Zudem basiert all das auf einer Mikrocontroller-Plattform, mit der Embedded-Entwickler vertraut sind.