ARM Naming Rules
The naming rules of ARM are a bit complicated, with some changes between the early and current naming conventions. For the average person, it is sufficient to understand a few major naming rules.
ARM naming is divided into instruction set architecture, processor architecture, and processor model three categories of naming rules:
1. Instruction Set Architecture
The naming format for instruction set architecture:
Armv + [n] + [variants] + [x(variants)]
Armv:Fixed character, i.e., ARM Version
n:Instruction set version number, up to now, ARM architecture version has released 9 series, so n=[1~9] variants:Variants x(variants):Indicates that the specified variant after x is not supported
ARM + [x][y][z] + [variants]
x:Processor series, with multiple series such as 6, 7, 9, 11, etc. y:Memory management/protection unit z:Cache Variants have the following optional letters: T:Supports Thumb instruction set D:Supports on-chip debugging M:Supports fast multipliers I:Supports Embedded ICE, supports embedded trace debugging E:Supports enhanced DSP instructions J:Supports Jazelle (F):Equipped with vector floating-point unit VFP -S:Synthesizable version
-
Cortex-M0, Cortex-M3, Cortex-M4
-
Cortex-R4, Cortex-R5
-
Cortex-A55, Cortex-A73

Differences Between Processors
After understanding the ARM processor naming rules, let’s look at the differences between ARM7, ARM9, S3C2410, STM32, and Cortex-M3.
1. ARM7
ARM7 is a processor series (major version, or ARM7 family), which includes many types of processors.
Most of them adopt the ARMv4T core architecture, but some processors also use ARMv3 or ARMv5TEJ cores. This series adopts the von Neumann architecture.
The ARM7 series was launched in 1993, classic ARM7 processors include ARM7TDMI, ARM7EJ-S, etc. (The early STM32 products STM7 also used the ARM7TDMI 32-bit RISC core).
2. ARM9 and S3C2410
After ARM7 comes ARM9, there is actually a transitional product ARM8 (just like Win7 jumped directly to Win10).
ARM9 was still quite popular during my studies, and even now there are many learning materials about ARM9.
The classic S3C2410 is actually a processor based on the ARM920T core, and after S3C2410, S3C2416, S3C2440, etc., can be said that students learning embedded Linux are aware of their existence, including many Linux development boards and materials are designed based on these processors.
Currently, many embedded Linux development boards are based on NXP’s iMX.6 processor (Cortex-A9).
3. STM32 and Cortex-M3
STM32 is known to friends learning microcontrollers and embedded development, it is a processor based on the Cortex-M core from ST (STMicroelectronics), which includes multiple series (STM32F0, F1, F4, L0, L1, G0, G4, etc.).
Cortex-M3 is just a core of an ARM processor, and many semiconductor companies develop their own products based on the Cortex-M3 core.
In Conclusion
Finally, for beginners, there is no need to get too hung up on the relationships and differences between these processors.
When in doubt, just choose a popular processor to learn, buy a development board, and start learning, write more code, and think more.

Project Sharing | Electric Competition Series | Artificial Intelligence | Postgraduate Entrance Examination
Essential Knowledge Points | Graduation Project | Switch Power Supply | Job Seeking
We are Nimo, the founders of Darwin, who only talk about technology and not flirt with men. Darwin is an online education platform aimed at serving 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 tiered learning content for different groups, such as commonly used knowledge points, disassembly assessments, electric competitions/intelligent cars/postgraduate entrance examinations, etc. Welcome to follow.
