When we talk about the architecture of embedded processors, we usually think of Intel's X86 architecture and ARM's ARM architecture. The biggest difference between the X86 architecture and the ARM architecture is that they use different instruction sets. The former uses the CISC instruction set, while the latter uses the RISC instruction set. Another point is that the X86 architecture uses the von Neumann structure, while the ARM architecture uses both the von Neumann structure and the Harvard structure (which has become a trend). What is architecture? These two words seem simple, just "skeleton + structure", but I personally think they are not easy to understand. Baidu divides architecture into logical architecture, physical architecture and system architecture. For processors, when they develop to a certain extent, this physical architecture will not change much. Take the CPU as an example. It is mainly composed of logic components + register components + control components. After this structure develops and stabilizes, there will not be much change. So where is the architecture version update that people often talk about mainly reflected? Instruction set. Of course, there are also factors such as memory management feature improvements. Take the ARM processor architecture as an example, as shown in Figure 1, its evolution history.
It can be seen that its architecture has evolved from version V4 to version V7, and the V7 version has three development paths, A series, R series, and M series. Looking at Figure 2, we can see the evolution of its processor instructions:
we can find that the Thumb instruction set was added in the V4T version, which just corresponds to the Thumb state of the processor. In the V5E version, enhanced DSP instructions were added. The V6 version can be said to be a major event in the evolution of ARM instructions, with the advent of Thumb-2. In fact, the previous 16-bit Thumb instruction set is a functional subset of the 32-bit ARM instruction set. In Thumb-2, with its powerful, light and efficient, 16-bit instructions coexist with 32-bit instructions for the first time, and there is no need to change the instruction set due to the change of processor mode. From the fact that ARM-Cortex-M3 entrusts all its processing power to the Thumb-2 instruction set, we can see the power of the Thunmb-2 instruction set.
What is the difference between processor architecture and processor core? The processor in "processor core" should be MCU. The processor in "processor architecture" can be a more general processing unit. When we talk about the kernel, we should first focus on a certain series of MCUs. Take the STM32 series MCUs for example, they are based on the ARM-Cortex-M3 kernel. The kernel mainly talks about its pipeline and structure. For example, the ARM7 kernel is a three-stage pipeline and von Neumann structure of 0.9MIPS/MHZ, and the ARM9 is a 5-stage pipeline Harvard structure of 1.1MIPS/MHZ. Figure 3 shows the relationship between the kernel and the MCU more intuitively.
What do ARM kernels and architectures mean, and what is the relationship between them?
ARM products are becoming more and more abundant, and there are more and more names. Many friends asked: What do ARM kernels and architectures mean? What is the relationship between kernels and architectures? For example, ARMv7 architecture, what does this architecture refer to? The editor has selected several wonderful answers! I hope it will be helpful to embedded friends when choosing to design circuits.
1. ARM kernel: From ARM7, ARM9 to Cortex-A7, A8, A9, A12, A15 and then to Cortex-A53, A57, etc., in short, different versions of ARM have different ideas. For example, Cortex A8 and A9 designed for high speed are both ARMv7a architecture; Cortex M3 and M4 are ARMv7m architecture; the former is the core, and the latter is the architecture of the instruction set.
2. ARM's architecture is based on the RISC instruction set, and its core is only the basis of the hardware architecture to implement this instruction set, a subset of the Thumb-2 instruction set architecture (ISA), including all basic 16-bit and 32-bit Thumb-2 instructions, Harvard processor architecture, which can execute instruction fetch while loading/storing data, and a three-stage pipeline with branch prediction.
3. It's like you build a house. At the beginning, it was popular to build a bungalow because of the low level. This is an architecture (V5T). Then you can design a style with an independent bathroom for this bungalow architecture. This is called the ARM7 core. Then other people (chip design companies) who want to build a house will buy your blueprint to build it. Then after a while, some people think that an independent bathroom is not enough. I also want a small yard! Well, then ARM will meet your requirements and come up with a style with a small yard (ARM9).
After a long time, the architecture of this bungalow has been changed and changed according to everyone's needs. Later, ARM found through research: Now everyone's ability to build houses has increased dramatically (including technology, design ability, clock frequency), and it is not enough to build this bungalow! Well, in order to keep these designers idle, ARM launched a style of two or three-story buildings. Because this is completely different from the design structure of bungalows, it is called a new architecture (ARMv6). Similarly, ARM also prepared styles with swimming pools and garages for everyone (ARM11). Well, continue to change and change, and later everyone has begun to have the ability to build buildings with more than ten floors. ARM has released a new style (ARMv7 architecture) as always. At this time, ARM feels that the previous names are too rustic, such as ARM5, ARM6, ARM7—both ugly and hard to remember. I want to give it a name that looks awesome, so that at least I can be considered a person who can design skyscrapers. So the subsequent cores are called Cortex.
The name change is only part of the story. With the emergence of this architecture, ARM found that the buildings built with our blueprints in the past were only residential buildings. What was the point of residential buildings? Affordability (low power consumption). Now it is different. Now the buildings built with our blueprints can not only be residential buildings, but also military bases and high-end office buildings. In the past, only Intel could design these high-end buildings! In order to meet these different needs, ARM divided the styles designed by this architecture into three series (M series, R series, and A series). The M series is designed for residential buildings, because ordinary people want to be affordable, so this design is designed to be about ten stories (low power consumption); the R series is designed for military bases, and this type of building is not high either - about ten stories, but the key is to have the ability to respond quickly to special situations (fast interruption); finally, the A series is used by business tycoons, so of course it must be high-end and classy, that is, it must have high performance, and all kinds of LED light shows.
Previous article:7 IDEs and 6 JTAG debuggers for embedded ARM processors
Next article:UART0 serial port programming (III): interrupt mode; use interrupt to write send function
- Popular Resources
- Popular amplifiers
- Detailed explanation of big data technology system: principles, architecture and practice (Dong Xicheng)
- Multi-port and shared memory architecture for high-performance ADAS SoCs
- Machine Learning: Architecture in the Age of Artificial Intelligence
- Research and design of electric vehicle drive motor ECU control software based on AUTOSAR
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- Innolux's intelligent steer-by-wire solution makes cars smarter and safer
- 8051 MCU - Parity Check
- How to efficiently balance the sensitivity of tactile sensing interfaces
- What should I do if the servo motor shakes? What causes the servo motor to shake quickly?
- 【Brushless Motor】Analysis of three-phase BLDC motor and sharing of two popular development boards
- Midea Industrial Technology's subsidiaries Clou Electronics and Hekang New Energy jointly appeared at the Munich Battery Energy Storage Exhibition and Solar Energy Exhibition
- Guoxin Sichen | Application of ferroelectric memory PB85RS2MC in power battery management, with a capacity of 2M
- Analysis of common faults of frequency converter
- In a head-on competition with Qualcomm, what kind of cockpit products has Intel come up with?
- Dalian Rongke's all-vanadium liquid flow battery energy storage equipment industrialization project has entered the sprint stage before production
- Allegro MicroSystems Introduces Advanced Magnetic and Inductive Position Sensing Solutions at Electronica 2024
- Car key in the left hand, liveness detection radar in the right hand, UWB is imperative for cars!
- After a decade of rapid development, domestic CIS has entered the market
- Aegis Dagger Battery + Thor EM-i Super Hybrid, Geely New Energy has thrown out two "king bombs"
- A brief discussion on functional safety - fault, error, and failure
- In the smart car 2.0 cycle, these core industry chains are facing major opportunities!
- The United States and Japan are developing new batteries. CATL faces challenges? How should China's new energy battery industry respond?
- Murata launches high-precision 6-axis inertial sensor for automobiles
- Ford patents pre-charge alarm to help save costs and respond to emergencies
- New real-time microcontroller system from Texas Instruments enables smarter processing in automotive and industrial applications
- Please help me see what went wrong
- Darlington and MOS selection problem?
- 0.96 inch 7-pin oled in msp430 source program
- STM32 control servo motor
- Verilog task call
- Overview of the process of programming JIC files on FPGA
- How to reset the PIC18F66J60 chip using software using the C30 compiler?
- [Evaluation of domestic FPGA Gaoyun GW1N-4 series development board]——8. Using external JTAG downloader (Black Gold USB Cable)
- 【XMC4800 Relax EtherCAT Kit Review】+XMC4800+ unboxing and power on to start the journey of infineon
- Please advise on the pulse program of STC