Creating a custom chip for sensors can help you add intelligence, enhance your product, and significantly reduce your BoM. By the end of 2017, it was reported that there were over 400 Cortex-M licensees. As a result, more system-on-chip (SoC) designers and manufacturers are choosing to integrate an Arm Cortex-M processor cores into analog devices for the first time, without any previous experience or knowledge of important considerations required.
This article introduces the Cortex-M processor family and their benefits, as well as an overview of the software, tools and resources available to help you bring a Cortex-M-based chip to market – faster, easier and with lower risk than you might expect.
Why use a Cortex-M processor?
The Arm Cortex-M processor family is a range of scalable, energy efficient and easy-to-use processors that meet the needs of tomorrow’s smart embedded applications. Licensed by over 400 semiconductor companies, Cortex-M processors are used in a wide range of embedded chips, helping developers deliver more features, in less time and at a lower cost.
Why are Cortex-M based devices so popular? These processors provide:
- High performance and efficiency
- Easy software development, as all Cortex-M processors are fully C-programmable
- Compact data footprint, with support for 8-bit, 16-bit and 32-bit data transfers
- Fast and power-efficient algorithm processing with DSP extensions in Cortex-M4, Cortex-M7, Cortex-M33 and Cortex-M35P processors
- Tamper-resistant protection against physical attacks with Cortex-M35P
The Armv8-M based Cortex-M processors also include TrustZone technology, which has been proven as a security foundation in billions of devices. TrustZone for the Cortex-M profile has been optimized for microcontroller class devices offering deterministic real-time interrupt response, low power and a small area with fast cross-domain calls.
What is in an Arm Cortex-M based system?
In a typical SoC with an Arm Cortex-M processor, for example, an off-the-shelf microcontroller, you will find a range of components. These include:
- Digital system components including the Cortex-M processor, advanced high-performance bus (AHB) and advanced peripheral bus (APB) infrastructure components and digital peripherals, system IP such as the direct memory access (DMA) controller.
- Memories including non-volatile memory (NVM), static random access memory (SRAM) and optional boot loader memory.
- In certain applications, analog peripherals are also included, such as analog-to-digital converters (ADC), digital-to-analog converters (DACs), voltage reference and more.
- Some smart sensor modules might utilize wireless mesh network technologies such as ZigBee or other forms of low power radio frequency solutions. With modern technologies, sometimes the wireless interface can be integrated on the sensor as a single chip designs.
- Physical IP such as clock gating, power gating cell, analog I/O pads and more.
The CPU is just one part of the story and needs to be configured with many other system components. This process can be long and costly, which is why Arm have introduced a range of IoT SoC solutions, including Arm System Design Kits.
The Arm System Design Kits provide the foundation for a complete SoC, with a fully verified subsystem, which integrates a wide range of system IP (such as bus interconnect components) with the Cortex-M processors.
What software and tools are available?
Various EDA and software tools are required to design and develop your SoC. Arm Cortex-M processors are delivered in generic Verilog RTL source, and can work with all major EDA synthesis tools.
For software development, there are many choices thanks to the vast ecosystem for Arm software development, including the Arm Development Studio and Keil Microcontroller Development Kit from Arm. There are also many third-party software development tools (including IAR Embedded Workbench for Arm) that can be used for software compilation and system testing.
The Arm MPS2 and MPS3 FPGA Prototyping Boards are commonly used to allow early software development and testing on real hardware prior to the availability of the Cortex-M based SoC.
What support and resources are available for development?
- Access to the world’s #1 ecosystem
The Cortex-M processors are supported by the largest and broadest embedded ecosystem with the widest third-party tools, RTOS and middleware support of any architecture. Using a standard processor within a design, allows Arm partners to create sensor-based devices with a consistent base, enabling them to focus on creating superior device implementations.
- Accelerate SoC design
With the help of IP reuse and reference designs such as the Arm SDK, for experienced companies, the development cycle from starting to engineering sample can be less than six months. For companies that are less experienced in chip designs, design services are available from various companies, including the Arm Approved design partners.
- Get started with proven Arm IP for $0 upfront
Arm DesignStart provides the fastest, simplest, no-risk route to proven IP for custom silicon success – so you can design with confidence and get to market quicker. You can access industry-leading Cortex-M0 and Cortex-M3 processors and system IP, for no upfront license fee.
- Reduce time-to-market
Arm provides a range of training courses to help get you and your teams up-to-speed quickly. We have hardware, software and system courses available in private, online and public classrooms to help expand your knowledge, so you can accelerate success.
To learn more about the Cortex-M processors and some of the frequently asked questions you may face when integrating the processor for the first time, download our starter’s guide to designing a SoC with an Arm Cortex-M processor.