4.2 PIC32CM
The PIC32CM MCUs implement either the Arm Cortex-M0+ or M23 processors. The Arm Cortex-M0+ and Cortex-M23 are both 32-bit MCU cores designed for low-power, cost-sensitive embedded applications, but they differ in architecture, features, and security capabilities.
The Cortex-M0+ is based on the Armv6-M architecture and optimized for ultra-low power and simplicity, featuring a two-stage pipeline, basic interrupt handling, and a compact instruction set. In contrast, the Cortex-M23 is based on the newer Armv8-M architecture. Cortex-M23 introduces several enhancements, like the optional Arm TrustZone technology, which enables the separation of secure and non-secure code for improved security in IoT and safety-critical applications. It also offers improved debug and trace capabilities, enhanced interrupt handling, and better support for modern embedded software development. While both cores are suitable for similar low-power applications, the Cortex-M23 is preferred when security and advanced features are required.
For additional information on Arm Cortex-M processor, refer to the product pages from the Arm website:
- Cortex-M0+—32-bit, low-power processor at an 8-bit cost
- Cortex-M23—Low-Power Microcontroller with TrustZone security
The following table provides a comparison of the PIC16F, PIC18F, and PIC32CM MCUs’ cores and architectures.
| PIC16F | PIC18F | PIC32CM M0+ | PIC32CM M23 | |
|---|---|---|---|---|
| Core | Enhanced 8-bit RISC | Enhanced 8-bit RISC | 32-bit Arm Cortex-M0+ | 32-bit Arm Cortex-M23 |
| Architecture | Harvard (separate 14-bit program/data memory) | Harvard (separate 16-bit program/data memory) | Von Neumann, 32-bit data path | Similar to M0+ with enhanced security (TrustZone®) |
| Instruction Set | 8-bit, optimized for simple, cost-effective control tasks | 8-bit, designed for more complex and performance-critical apps |
Armv6-M, efficient for low-power/cost apps |
Armv8-M, supports TrustZone® for secure execution |
| Power/ Performance | Moderate low power, up to 32 MHz | Efficient low power, up to 64 MHz | Ultra-low power, up to 48 MHz | Ultra-low power, up to 72 MHz |
| Use Cases | General-purpose, industrial, IoT | General-purpose, industrial, IoT | General-purpose, industrial, IoT | Secure IoT, hardware-based security, safety-critical |
