What are the differences between Cortex-M0 and Cortex-M0+?
The Cortex-M0+ processor builds on the Cortex-M0 processor, retaining the full instruction set and tool compatibility, while reducing energy consumption and increasing performance.
The following table lists the differences in the features of the two processors.
|Features||M0||M0+||Advantages of M0+ over M0|
|Pipeline||Three-stage||Two-stage||Improved response time,improved efficiency|
|Performance Efficiency||2.33 CoreMark/MHz||2.46 CoreMark/MHz||Lower power and higher performance|
|Memory Protection||Not available||Has optional Memory protection Unit||Makes system more secure by: Separating processes – Preventing tasks from corrupting stack or data memory used by other tasks Preventing unprivileged tasks from accessing peripherals that can be critical to the system security|
|Relocatable vector-table||Does not support||Supports||Allows relocating the interrupt vector table anywhere in the memory - enables different applications to use their own vector table.|
|Unprivileged/privileged mode execution||Does not support||Supports||Allows a task, such as the system calling in an operating system, to execute with more privileges than the user task or an application.|
The PSoC 4-S Series family of devices has a Cortex-M0+ CPU, whereas the previous PSoC 4 families have a Cortex-M0 CPU. Dual-CPU PSoC 6 MCU parts have an integrated Cortex-M0+ CPU that can offload the main Cortex-M4F CPU from application tasks such as communication and security.
For more information on the Cortex M0 and M0+ processor architecture, visit http://www.arm.com/products/processors/cortex-m/index.php