Today ARM is introducing two new CPU cores dubbed the Cortex-M33 and the Cortex-M23. These two new cores are aimed at IoT devices and are the first IoT cores to include ARM’s TrustZone hardware security coprocessor. Security is one of the most persistent concerns buyers have about IoT devices and this notion of the Internet of Things as a market full of hilariously insecure products has been built on a history of missing software updates from OEMs and short product lifecycles.
ARM is doing what it can to address these pressing concerns about IoT devices by taking control and making sure that consumers can have confidence that at least at a hardware level their thermostats and smart watches are secure. The big issue here is whether or not you believe that ARM’s TrustZone security scheme has already been or can be compromised.
Adding ARMv8-M and TrustZone to the Mix
Starting with the bigger of the two cores the Cortex-M33 is about 80% smaller than the old Cortex-A5 core and due to its modular design can be hooked up to the rest of ARM’s IP stack including a floating point unit, DSP, and other coprocessors. This whole package comes wrapped in a warm TrustZone flavored blanket of security. ARM believes that its Cortex-M33 core is well suited for pretty much any IoT application from lightbulbs to routers.
Compared to its other Cortex-M series cores the M33 slots in alongside the Cortex-M3 and Cortex-M4 cores both of which use the older ARMv7-M ISA. The design goal of all three of these cores is to find the knee of the curve in the performance versus efficiency equation. The Cortex-M33 is neither the lowest power core nor the highest performance core, but it is the best tradeoff between the two. The other important wrinkle here is the ARMv8-M ISA which both the Cortex-M33 and Cortex-M23 implement.
Getting Even Smaller
Moving to the Cortex-M23 we have a core that is 75% smaller than its Cortex-M33 sibling while still implementing the ARMv8-M ISA and offering TrustZone integration. By ARM’s count it’s also more than 50 percent more efficient than then the Cortex-M33. ARM envisions this core going into truly low power applications like door locks, tiny medical robots, and package trackers. The Cortex-M23 slots in next to the Cortex-M0 and Cortex-M0+ cores with the goal of offering a core that offers the lowest power consumption coupled with the smallest die size. Again the Cortex-M23 differentiated from ARM existing offerings thanks to the use of the ARMv8-M ISA and the inclusion of its TrustZone technology. More to the point the Cortex-M23 is the smallest core that offers these two features.
It’s worth noting that ARM still has yet to introduce an ARMv8-M based successor to its high performance Cortex-M core the M7. Expect to see something on this front within the next year or so.
Thinking about the Whole SoC
A solid IoT chip requires more than just good cores though and so ARM has seen to those requirements by creating basically all of the IP that a IoT OEM would need to build their own chip. The key to integrating all this IoT focused IP is ARM’s CoreLink SIE-200 network on chip which is optimized for low area and power consumption while still enabling TrustZone across the SoC. The goal here is to maintain the security of the system at a hardware level through physical isolation and memory protection. With a core and an NoC we can start adding IP blocks like ARM’s CryptoCell-312 which is cryptography accelerator, Cordio which is ARM’s Iot optimized radio IP block, memory, I/O, and of course custom IP blocks.
ARM is also trying to get Cortex-M33 products to market as fast as possible by offering what amounts to a reference design for partners which it calls CoreLink SSE-200. This pre-verified design uses two of ARM’s Cortex-M33 cores and all of the IP block I mentioned above and is a verified design. It’s also paired with ARM’s software stack and mbed OS which the company says will be offered as open source projects.
Scaling through the Product Stack
During our briefing ARM talked about designing their new Cortex-M cores to OEMs could use a single chip to scale up and down their offerings. For example, a battery-powered sensor on your wrist could use the same silicon as your wall mounted smoke alarm but each device could be optimized around different performance and power consumption goals. So while a single chip design is running at 20Mhz in product you could also use that same chip to run at 200Mhz in an another product.
In the end ARM has done its best to create a hardware solution to the IoT problem. With the Cortex-M33 and M23 they’ve addressed concerns about power, performance, and area. With TrustZone integration from core to NoC and beyond with the mbed OS ARM has also worked hard to allay security concerns. I for one can’t wait to get my hands on a Cortex-M33 powered Fitbit.S|A