SoC
  • Home
  • Arm
  • Arm Cortex M0/M0+
  • Arm Cortex M4
  • Arm Cortex M3
  • Contact
Reading: What is ARM Cortex-M35P?
SUBSCRIBE
SoCSoC
Font ResizerAa
  • Home
  • Arm
  • Arm Cortex M0/M0+
  • Arm Cortex M4
Search
  • Home
  • Arm
  • Arm Cortex M0/M0+
  • Arm Cortex M4
Have an existing account? Sign In
Follow US
  • Looking for Something?
  • Privacy Policy
  • About Us
  • Sitemap
  • Contact Us
© S-O-C.ORG, All Rights Reserved.
Arm

What is ARM Cortex-M35P?

Elijah Erickson
Last updated: October 5, 2023 9:34 am
Elijah Erickson 7 Min Read
Share
SHARE

The ARM Cortex-M35P is a 32-bit processor core designed for microcontroller applications by ARM Holdings. It is part of the Cortex-M series of cores, which target low-cost and low-power embedded systems.

Contents
OverviewArchitectureMemory SystemFloating Point UnitDSP ExtensionsTrustZone SecurityPerformance and PowerUse CasesDevelopment ToolsLicensing and Availability

Overview

The Cortex-M35P core is designed for embedded applications requiring high performance and power efficiency. It provides higher performance than the previous Cortex-M33 core while maintaining low power consumption. Some of the key features of Cortex-M35P include:

  • 32-bit RISC architecture
  • ArmV8-M architecture
  • Up to 300 MHz operation
  • DSP instruction extensions
  • Memory Protection Unit (MPU)
  • Low power design
  • Single precision floating point unit (FPU)
  • Optional TrustZone security extension

The Cortex-M35P is manufactured on advanced process nodes down to 5nm, enabling high performance and efficiency. It is compatible with previous Cortex-M cores to allow easy migration. The core is highly configurable via the Arm CoreSight debug architecture.

Architecture

The Cortex-M35P implements the Armv8-M architecture, which is a 32-bit RISC instruction set optimized for embedded applications. It has a compact and efficient Thumb-2 instruction set with both 16-bit and 32-bit instructions. Some key architectural features include:

  • 3-stage pipeline to achieve low latency
  • Branch prediction for improved performance
  • optional caches for instructions and data
  • Memory Protection Unit (MPU) for access control
  • Nested Vectored Interrupt Controller (NVIC)
  • Wake up Interrupt Controller (WIC) for low power
  • Single precision IEEE 754 floating point unit
  • Optional Arm TrustZone security extensions

The 3-stage pipeline enables low latency instruction execution with minimal branching delays. The MPU provides configurable memory access permissions and compartmentalization. NVIC offers flexible priority-based interrupt handling, while WIC allows wake ups from sleep modes.

Memory System

The Cortex-M35P supports Harvard architecture with separate instruction and data interfaces. This enables simultaneous access to program and data memory for higher performance. The core can be configured with instruction and data caches to optimize memory accesses. It has support for tightly coupled memories for deterministic low latency access.

Floating Point Unit

The single precision floating point unit in Cortex-M35P enables high performance mathematical computations needed in many embedded applications. It implements the IEEE 754 standard for floating point arithmetic with support for operations like add, subtract, multiply, divide, sqrt, and compare. The FPU operates concurrently with the integer pipeline for parallel execution.

DSP Extensions

The Cortex-M35P includes optional DSP extensions to accelerate digital signal processing algorithms. This adds specialized instructions for efficient fixed-point math, saturation, SIMD and other common DSP operations. The DSP extensions enhance performance for applications like audio processing, sensor fusion, motor control etc.

TrustZone Security

The optional TrustZone security extensions provide hardware-level isolation for secure and non-secure applications. It allows partitioning sensitive code, data and peripherals into a secure world that is isolated from the non-secure world. This enhances security for applications like payments, authentication, DRM etc.

Performance and Power

The Cortex-M35P delivers significantly higher performance than the older Cortex-M33 and Cortex-M23 cores. Some key performance comparisons:

  • 1.66x higher CoreMark/MHz score than Cortex-M33
  • 2x higher Dhrystone MIPS/MHz than Cortex-M33
  • Up to 40% faster machine learning inference than Cortex-M33

The improved performance comes from microarchitecture enhancements as well as the advanced process nodes. At the same time, Cortex-M35P maintains similar power characteristics as existing cores for low power operation.

Cortex-M35P is designed to scale across a wide performance range by varying factors like clock speed, core configuration and process node. At maximum configuration, it can deliver up to 300 DMIPS at 300 MHz in a TSMC 5nm process. There are also various low power modes to optimize for energy efficiency.

Use Cases

The Cortex-M35P targets a wide variety of embedded applications requiring high performance and real-time responsiveness with low power. Some example use cases include:

  • Industrial – Motor control, human-machine interface, asset tracking etc.
  • Consumer – Wearables, hearables, wireless earbuds etc.
  • Automotive – Driver assistance systems, infotainment, telematics etc.
  • Medical – Patient monitors, infusion pumps, fitness trackers etc.
  • IoT – Smart home, smart city, retail, agriculture etc.
  • Security – Hardware security modules, encryption, authentication etc.

The Cortex-M35P will enable more advanced embedded products with machine learning, computer vision, sensor fusion, voice recognition, and other high performance capabilities. The combination of power efficiency and real-time responsiveness also suits time-critical control applications.

Development Tools

The Cortex-M35P core can be programmed using standard embedded C/C++ toolchains. Arm’s free Keil MDK-ARM toolkit provides an IDE, compiler, debugger and simulation for software development.

Various 3rd party vendors also offer Cortex-M35P microcontroller solutions and development boards. These include evaluation kits from NXP, STMicroelectronics, Microchip, Renesas and others. Many vendors offer IDEs, debug probes and other tools to simplify development.

The core is supported by real-time operating systems like FreeRTOS, Zephyr, Mbed OS and others. DSP libraries provide optimized signal processing functions. ARM offers the CMSIS-DSP library and various math libraries to accelerate software development.

Licensing and Availability

The Cortex-M35P core is available as synthesizable RTL or optimized layout from Arm. It can be licensed by semiconductor companies to design custom microcontroller chips and SoCs integrated with the core.

The first Cortex-M35P silicon and development boards were made available in 2020. Microcontroller devices based on the core are now available from various Arm silicon partners. It will enable the next generation of highly efficient embedded designs across a diverse set of applications.

Newsletter Form (#3)

More ARM insights right in your inbox

 


Share This Article
Facebook Twitter Email Copy Link Print
Previous Article What is arm Cortex-M33?
Next Article What is ARM Cortex-M55?
Leave a comment Leave a comment

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

2k Followers Like
3k Followers Follow
10.1k Followers Pin
- Sponsored-
Ad image

You Might Also Like

Integrating AMBA Bus with Cortex-M1 in FPGA Designs

Integrating the AMBA (Advanced Microcontroller Bus Architecture) bus with a…

10 Min Read

What are the addressing modes used in ARM?

ARM processors support a variety of addressing modes that allow…

6 Min Read

Using the CortexA76 Cryptographic Extension

The CortexA76 processor from ARM includes a dedicated cryptographic extension…

11 Min Read

What is the processor boot sequence?

When a processor powers on, it goes through a series…

7 Min Read
SoCSoC
  • Looking for Something?
  • Privacy Policy
  • About Us
  • Sitemap
  • Contact Us
Welcome Back!

Sign in to your account