Understanding the Performance of Microcontrollers

To avoid missing my updates, remember to check the public account in the upper right corner and set it as a star, and send me a star.

Understanding the Performance of Microcontrollers
Understanding the Performance of Microcontrollers
You may have heard that xxx microcontroller performance is poor or weak, but do you understand what this performance is?

Overview

We often hear about certain smartphones or computers’ performance scores at release events, and these scores reflect the device’s performance indicators.

When developing products with STM32, we generally consider various performance aspects of the MCU.

For MCUs, one important indicator is power consumption, and another important indicator is performance.

When we enter ST’s official microcontroller webpage, we will find that ST classifies MCUs into different levels, as shown in the figure below:

https://www.st.com/en/microcontrollers.html

Understanding the Performance of Microcontrollers

From the above hierarchical relationship, we can roughly understand the power consumption and performance of ST’s various MCUs.

STM32 CoreMark Score

The STM32 family of 32-bit microcontrollers is designed based on the ARM Cortex®-M processor, providing users with new freedom.

The products integrate high performance, real-time capabilities, digital signal processing, low power consumption, low voltage operation, and connectivity while maintaining full integration and usability.

According to performance classification, STM32’s various series of MCUs are categorized into several major product types as shown in the figure below. For specific information, please refer to the official website.

https://www.st.com/en/microcontrollers/stm32-32-bit-arm-cortex-mcus.html

Understanding the Performance of Microcontrollers

In the embedded processor field, the most well-known and common tests for CPU performance are: Dhrystone and CoreMark.

1.CoreMark is a standard used to measure the performance of the central processing unit (CPU, or microcontroller MCU) in embedded systems.

2.DMIPS: Dhrystone Million Instructions executed Per Second. It calculates the processing capability of the system in one second, measured in millions, i.e., (MIPS). It is primarily used to measure integer calculation capabilities.

How is the CoreMark Score Obtained?

CoreMark is a standard used to measure CPU performance. This standard was proposed in 2009 by Shay Gla-On of the EEMBC organization and attempts to develop into an industrial standard to replace the outdated Dhrystone standard.

Like Dhrystone, CoreMark is compact, portable, easy to understand, free, and displays a single numeric benchmark score. Unlike Dhrystone, CoreMark has specific running and reporting rules designed to avoid Dhrystone’s issues.

The CoreMark score is obtained by running C language code. It mainly includes the following operations: enumeration (searching and sorting), mathematical matrix operations (ordinary matrix calculations), and state machines (to determine if the input stream contains valid numbers), and finally includes CRC (Cyclic Redundancy Check).

In other words, CoreMark uses a set of test codes written in C language, and by running this code, we can test the performance of your MCU.

CoreMark Test Code

Here we can refer to the CoreMark official information at:

https://www.eembc.org/coremark/index.php

Understanding the Performance of Microcontrollers
This contains CoreMark-related descriptions, source code downloads, porting instructions, etc. The source code is located on Github at:
https://github.com/eembc/coremark
Understanding the Performance of Microcontrollers
The source code docs directory contains many descriptions related to the source code; interested friends can download it to test the performance of your MCU.
In fact, there are various models of STM32 with CoreMark scores and test results:
Understanding the Performance of Microcontrollers
Understanding the Performance of Microcontrollers
Some STM32 boards come with CoreMark test programs pre-installed; for example, I have an STM32F429I-Discovery board that comes with performance testing code.
Understanding the Performance of Microcontrollers
The porting process, I will not teach you here; the official provides some examples, and there are many tutorials online; interested friends can try to port and test.
END
Understanding the Performance of Microcontrollers
Recommended Reading:

Project Sharing | Electric Competition Series | Artificial Intelligence | Postgraduate Entrance Examination

Must-Know Knowledge Points | Graduation Design | Switching Power Supply | Job Seeking

We are Nimo, the founder of Darwin, and we only talk about technology, not flirting. DarwinDarwin Online Education Platform aims to serve professionals in the electronics industry, providing skill training videos covering popular topics in various subfields, such as embedded systems, FPGA, artificial intelligence, etc. It customizes layered learning content tailored to different groups, such as commonly used knowledge points, disassembly assessments, electric competitions/intelligent vehicles/postgraduate entrance examinations, etc. Welcome to follow.

Official Website: www.darwinlearns.com
Bilibili: Darwin
Understanding the Performance of Microcontrollers

Leave a Comment

×