November 21, 2019
The Cortex M0+ challenge: How low can we go?
At Audio Analytic, our mission is to give all machines a sense of hearing.
‘All machines’ means that any device, from smart speakers and smartphones to video doorbells and true wireless earbuds, can be empowered by this ability to understand audio context. Extending embedded, edge-based sound recognition into all relevant product categories is a key part of sound recognition’s second generation, which Chris blogged about.
As you’d expect, this presents a very broad range of devices both in terms of computational capability and power requirements. Designing a powerful smart speaker that is plugged in is very different from battery-powered earbuds but there are many consumer benefits if you can give both example devices the ability to understand sounds beyond just speech.
When you look at embedded microprocessors targeted at low-power products you are typically looking at chips based on Arm’s Cortex-M designs. And the smallest of this family is anything based on Cortex-M0+, which is one of Arm’s most successful.
So we set ourselves a really complicated hardware challenge with exciting potential…. to see if we can embed our class-leading software on the M0+ based chip.
To make it a bit more of a challenge it couldn’t be a lab-based PoC, it had to be ‘production ready’.
“It seems the smaller the technology, the bigger the opportunity.”
Earlier this year, Pete Warden at Google demonstrated a prototype ‘yes’ or ‘no’ word detection system running on the M4 chip using TensorFlow Lite under the banner of ‘tinyML’.
What he managed to achieve is a decent step in the right direction, but Pete admitted himself it was “still far from perfect”. We were keen to aim higher, both in terms of performance and technological constraints. Could we build something that a customer could run with and design into a product? And could we go smaller than tinyML?
The answer was a resounding yes. As you can see below in this short video, the LED changes when it detects the target baby cry sound. This is microML in action.
Technically, running on the M0+ presented a number of technical challenges which you can read more about here…
Why is deploying our ai3TM software on the M0+ chip so significant?
Sound recognition running on microprocessors as small as M0+ is really exciting. It opens up so many possibilities for our customers irrespective of the constraints that they have to work with.
- Sound recognition software can fit on the smallest of processors
Compactness is incredibly important for sound recognition. All devices have constraints in one form or another whether it’s battery life, processing capabilities, BoM or competing functions on devices. These finite restrictions are present whether you are looking to deploy software on a tiny chip like the M0+, or fitting alongside many other applications on a larger processor running on a smartphone.
On a smartphone, you can often find the M4 chip running a wake word detection module as this keeps the main applications processor free to focus on the meaty tasks. The M4 effectively wakes up its big brother when it has recognised the wake word. Sound recognition, running on the M0+, means that it could perform a similar task on smartphones but recognising a broader range of sounds than just a wake word.
- Protecting consumer privacy by running AI at the edge
Consumer privacy is a high priority for the tech sector. We’ve always run ‘at the edge’ which means all computational processing happens on the device itself. Devices with M0+ chips may be less expensive and low powered – but privacy won’t be compromised.
- Opens up new opportunities for product designers
We know that product designers have a huge number of constraints – and our job is to make it as easy as possible to work with our software. With sound recognition available, irrespective of hardware, you give developers the freedom to deploy the feature in a way that works for them.
There are big opportunities for working in ‘microML’. It seems the smaller the technology, the bigger the opportunity.
If you found this interesting, you can read more about the work we did with Vesper and Ambiq Micro running our software on a battery-powered M4 chip.
Dominic Binks is the VP of Technology at Audio Analytic, based in Cambridge, UK.