We will mainly introduces the differences between ARM architecture and X86 architecture.
Firstly, it introduces ARM architecture diagram, secondly, it introduces X86 architecture diagram, and finally from the aspects of performance, scalability, operating system compatibility, the convenience of software development, the diversity of available tools and power consumption are compared in detail between ARM architecture and X86 architecture.
What is ARM architecture?
ARM architecture used to be called advanced reduced instruction set Machine (AdvancedRISCMachine, earlier called AcornRISCMachine).
It is a 32-bit reduced instruction set (RISC) processor architecture, which is widely used in many embedded system designs. Due to the characteristics of energy saving, ARM processor is very suitable for the field of mobile communication, which conforms to its main design goal of low power consumption.
Today, the ARM family accounts for 75% of all 32-bit embedded processors, making it one of the most 32-bit architectures in the world.
ARM processors can be seen on many consumer electronic products, from portable devices (PDA, mobile phone, multimedia player, handheld electronic game, and computer) to computer peripherals (hard disk, desktop router) it even exists in military facilities such as missile-loaded computers.
ARM architecture diagram
It consists of 32-bit ALU, several 32-bit general purpose registers and status registers, 32 & TImes;8-bit multiplier, 32 & TImes;32-bit barrel shift register, instruction decoding and control logic, instruction pipeline, and data/address register.
- ALU: it consists of two operand latches, adders, logic functions, results and zero detection logic.
- Bucket-shaped shift register: ARM Adopts 32 & TImes;32-bit bucket-shaped shift register, which can move n bits to the left/right, the loop shift of n bits and the arithmetic shift of n bits to the right can be completed at one time.
- High-speed multiplier: the multiplier generally adopts the method of “adding one shift” to realize multiplication. In order to improve the operation speed, ARM adopts the method of two-digit multiplication to realize the operation of “adding one shift” according to the two bits of the multiplier; ARM high-speed multiplier adopts the structure of 32 & TImes;8 bits, in this way, the integration level can be reduced (the corresponding chip area is less than 1/3 of the parallel multiplier).
- Floating Point component: Floating Point component is used as an option for ARM frame. The FPA10 floating-point accelerator is connected to ARM as a co-processing method and executed through the explanation of the co-processing instruction.
- Controller: ARM controller adopts hard-wired programmable logic array PLA.
At present, most of the PC architectures are Intel’s X86 architectures, which seems to be because INTEL’s X86 architecture has long been at its peak. The X86 architecture is a computer language instruction set executed by a microprocessor.
It refers to a standard serial abbreviation of The intel general-purpose computer series and also identifies a set of general-purpose computer instruction sets.
According to different motherboards, platforms and architectures, there are slight differences.
For example, many motherboards have integrated North Bridge into CPU and South Bridge into PCH, but the general framework is still the same.
The following is a brief introduction to each content in this architecture diagram.
X86 architecture diagram
1: CPU, a term that everyone is familiar with, is the core brain of a computer, the CPU.
2: North Bridge Chipset: North Bridge is a chip on the computer motherboard, which is located beside the CPU socket and plays a connecting role.
3: South Bridge chip is an important part of the motherboard chipset, which is generally located at the bottom of the motherboard far away from the CPU slot and near the PCI slot, this layout takes into account that there are many I/O buses connected to it, and being far away from the processor is conducive to wiring.
4: Memory is one of the important components in the computer.
It is a bridge to communicate with CPU. All programs in the computer run in memory, so the performance of memory has a great impact on the computer.
5: Video card (Graphics card) is display interface card, also known as display adapter, which is one of the most basic configuration and important accessories of computer.
6: Display the interface.
7: Network card is a network component working in the link layer. It is an interface connecting the computer and the transmission medium in the LAN. It can not only realize the physical connection and the matching of electrical signals with the transmission medium in the Lan, it also involves the functions of sending and receiving frames, encapsulating and unsealing frames, media access control, data encoding and decoding, and data caching.
8: Basic function of the sound card is to convert the original sound signals from microphones, tapes and optical discs and output them to sound equipment such as earphones, loudspeakers, loudspeakers, recorders, etc, or make the instrument make a wonderful sound through the music device Digital Interface (MIDI).
9:SATA(Serial Advanced Technology Attachment) is a Serial hardware driver interface based on industry standards. It consists of Intel, IBM, Dell, APT, the hard disk interface specification proposed by Maxtor and Seagate.
10: Hard disk is one of the main storage media of computer, consisting of one or more aluminum or glass discs. The disc is covered with ferromagnetic materials.
In any case, computers with X86 structure are much faster and stronger than ARM structure systems in terms of performance. X86 CPU is more than 1g, dual-core, quad-core is popular, usually using 45nm (or even more advanced) process for production;
While ARM: CPU is usually several hundred megabytes, recently, about 1g CPU has just appeared, and the process usually uses less than 65nm Process.
It can be said that ARM is not the rival of X86 structure system in terms of performance and production process.
However, the advantage of ARM lies not in its powerful performance but in its efficiency. ARM Adopts RISC pipeline instruction set, which is fundamentally at a disadvantage in completing comprehensive work, however, in some applications with relatively fixed tasks, its advantages can be fully exerted.
2. Capacity expansion
X86-structured computers are connected to expansion devices (such as hard disks and memory) in a “bridge” way.
Moreover, X86-structured computers have appeared for nearly 30 years, there are many kinds of supporting extended devices and the price is relatively low, so X86 computers can easily expand their performance, such as adding memory and hard disks.
ARM-structured computer connects CPU with data storage device through dedicated data interface, so ARM’s storage, performance expansion such as memory is difficult to carry out (generally, the memory and data storage capacity have been determined during product design). Therefore, expansion is generally not considered for systems with ARM structure. Basically follow the principle of “enough is good.
3. Compatibility of the operating system
The X86 system is dominated by the Wintel alliance built by Microsoft and Intel. It has monopolized the personal computer operating system for nearly 30 years, forming a huge user group and deeply solidifying the usage habits of many users, at the same time, X86 system has formed a unified standard in terms of hardware and software development.
Almost all X86 hardware platforms can directly use Microsoft Windows system and almost all popular tools and software, therefore, X86 systems have incomparable advantages in compatibility.
Almost all ARM systems adopt Linux operating systems, and almost all hardware systems have to build their own systems separately, which are incompatible with other systems, resulting in the inconvenient transplantation of their application software, these 1.1 straight severely restrict the development and application of ARM system.
After GOOGLE developed the open Android system, it unified the operating system of computer with ARM structure, which enabled the newly launched computer system based on ARM structure to have a unified, open and free operating system, it provides strong support and impetus for the development of ARM.
4. Convenience of software development and diversity of available tools
It has been nearly 30 years since the X86 structure system was launched.
During this period, X86 computers have gone through a golden period of rapid development. Users’ applications, software matching, software development tools matching and compatibility, etc, it has reached a very mature or even perfect state.
Therefore, using X86 computer systems not only has a large number of third-party software to choose from, but also has a large number of software programming tools to help you complete the work you want to complete.
Due to the constraints of hardware performance, simplified operating system and system compatibility, the computer system with ARM structure, computer systems with ARM structure cannot have many programming tools and third-party software to choose from and use like X86 computer systems. ARM programming languages mostly use C and JAVA.
Comparing this point, the more direct conclusion is that the development of software based on X86 structure computer system platform is easier and simpler than ARM structure system, and the actual cost is also lower, at the same time, it is easier to find third-party software (eliminating the time and cost of self-development), and it is easier to transplant software.
From the above comparative analysis, it gives us a very clear feeling that ARM and X86 computers cannot be compared at all, and ARM is not the opponent of X86 computers at all.
Yes, if only the above aspects are considered, ARM really cannot compete with X86 computers, even without the qualification to compare.
However, in the past 1 to 2 years, ARM’s products have developed rapidly in terminal applications, especially handheld terminal applications (such as smart phones and tablet computers), its sales volume has far exceeded the sales volume of X86 computers.
It can be seen that ARM has an incomparable advantage with X86 computers. This advantage is: power consumption.
5. Power consumption
Because X86 computers need to meet the needs of various applications, their development ideas are: Performance + speed.
Over the past 20 years, the speed of X86 computers has grown from a few meters of 8088 to just a few G now, and it is also a few cores. Its speed and performance have been improved by thousands or thousands of times, technological advances have made X86 computers an indispensable part of public life.
However, the development direction and mode of X86 computer keep its power consumption high all the time. A computer is just a few hundred watts, even a laptop or netbook which is called low power consumption and energy saving, there are more than a dozen, the power consumption of more than 20 Watts cannot be compared with computers with ARM structure.