Comparison between ARM and x86 Architectures

Source: Internet
Author: User

Keywords: ARM architecture X86 architecture industrial control motherboard development and design Android (Android) system Linux WinCE

After the launch of Google's Android system and Apple's iPad and iPhone, ARM-based computer systems (especially terminal applications) have been widely supported and sought after by users, ARM + android has become the hottest topic in the IT and communication fields. Many chip manufacturers have launched products with various unique application functions developed based on ARM structure, recently, the "heterogeneous concept" has become the main direction of computer development in the future. The "cost-effectiveness" concept, which has been promoted for more than 20 years in the IT industry, has been fundamentally shaken and impacted. "What applies is the best", and has been accepted by more and more users.

We conduct a system analysis on the features of the ARM architecture system and the X86 architecture system, so that users can perform rational and reasonable price comparison analysis when selecting the system.

 

I. performance:

In any case, x86 computers are much faster and more powerful than ARM-based systems in terms of performance. X86 CPUs can be larger than 1 GB, dual-core, and quad-core CPUs. Generally, 45nm (or even more advanced) processes are used for production. For arm, CPUs are usually several hundred megabytes, recently, about 1 GB of CPU is available. Generally, the process is less than nm. It can be said that in terms of performance and production process, arm is not the opponent of the x86 structure system.

However, arm's strength lies not in its powerful performance but in its efficiency. Arm adopts the command line Instruction Set of the Proteus, which is at a disadvantage in completing comprehensive work, however, in some scenarios where tasks are relatively fixed, their advantages can be fully realized.

 

Ii. scalability

X86 computers use bridges to connect with extended devices (such as hard disks and memory), and x86 computers have been around for nearly 30 years, because of its wide variety of devices and low prices, x86 computers can easily expand performance, such as increasing memory and hard disks.

A computer with an arm structure connects a CPU to a data storage device through a dedicated data interface, therefore, it is difficult to expand the performance of arm storage and memory (generally, the memory and data storage capacity have been set during product design). Therefore, the system using the arm structure generally does not consider expansion. We basically stick to the principle of "enough.

 

Iii. operating system compatibility

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 base and deeply solidified the usage habits of many users, at the same time, x86 systems have formed a unified standard in terms of hardware and software development. Almost all x86 hardware platforms can directly use Microsoft's Windows system and almost all popular tool software, therefore, x86 systems have unparalleled compatibility advantages.

Almost all arm systems use Linux operating systems, and almost all hardware systems need to build their own systems separately, which is not compatible with other systems. This also makes the application software unable to be transplanted conveniently, these 1.1 cases severely restrict the development and application of the arm system. After Google developed an open Android system, It unified the operating system of the arm-structured computer and provided a unified, open, and free operating system for the new ARM-based computer system, it provides powerful support and motivation for arm's development.

 

Iv. Convenience of software development and diversity of available tools

The X86 architecture system has been launched for nearly 30 years. During this period, after the golden period of rapid development, x86 computers have worked in supporting and compatible with user applications, software and software development tools, it has reached a very mature and even perfect realm. Therefore, using the x86 computer system not only has a lot of third-party software to choose from, but also has a lot of software programming tools to help you do what you want to do.

ARM-based computer systems are constrained by hardware performance constraints, operating system streamlining, and system compatibility, computer Systems with arm structure cannot have as many programming tools and third-party software as x86 computer systems do. Most arm programming languages use C and Java.

Compared with this, the conclusion is that the development of software based on the X86 architecture computer system platform is easier, simpler, and cheaper than that of the ARM architecture system, 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 comparison and analysis above, we have a very clear feeling that computers with arm and x86 structures cannot be compared at all, and arm is not the opponent of X86 computers at all. Yes. If we only consider the numbers mentioned above, arm cannot compete with x86 computers, or even have no qualifications for comparison. However, in the past one or two years, ARM products have developed rapidly in terminal applications, especially handheld terminals (such as smartphones and tablets ), its sales volume far exceeds the sales volume of computers with x86 structures. It can be seen that arm has an incomparable advantage over x86 computers.This advantage is: power consumption.

 

V. Power Consumption

Because x86 computers need to adapt to various application requirements, their development philosophy is: performance + speed. Over the past 20 years, the speed of X86 computers has grown from 8088 MB to just a few GB now. In addition, the speed and performance of X86 computers have increased by or times, technological advances make x86 computers an indispensable part of the lives of the masses. However, the development direction and mode of X86 computers keep their power consumption high. A computer is several hundred watts at will, even if it is a portable computer or netbook that claims to be low-power and energy-saving, there is also a power consumption of more than 10 or 20 watts, Which is incomparable with the computer with an arm structure.

Arm's design and development ideas are as follows: meeting the needs of a specific application, the most powerful in a specific field (even if it is useless in other aspects ), in this way, arm is neither the strongest technology nor the most advanced manufacturing process. It produces a computer system with poor performance, but it is the best in a professional application, it is especially dominant in many terminal applications, especially mobile terminal applications,The reason is: power consumption.

High power consumption leads to a series of problems that cannot be solved by x86 systems: weak system endurance, unscalability, poor stability, and high requirements on the use environment. From this we can see that the x86 and arm systems are used in two completely different fields. There is no replacement between them. In terms of servers, workstations, and other high-performance computing applications, when the power consumption and environment conditions are not considered, x86 systems take an absolute advantage; however, given the constraints of power consumption, environment, and fixed work tasks, arm has a great advantage. In the handheld mobile terminal field, x86 power consumption makes his hero useless.

But in manyApplication TerminalFields are becoming the focus of competition between the two camps. The arm camp strives to increase the versatility of its performance and system (especially the operating system), and encroaches on some terminal application markets of x86 systems; the x86 camp strives to reduce power consumption to keep its market while intruding into the handheld mobile terminal market.

The focus of our discussion today is to compare and analyze the terminal application fields that can be covered by both camps. This type of application must be a terminal application, which has the following features:

1. The operating nature of the system is relatively fixed (such as pos, ATM, on-board computer systems, multimedia advertising playback systems, and video surveillance systems, as well as a large number of information reception, control systems and professional industrial control systems );

2. The application environment is harsh, such as: the temperature changes greatly, the high temperature exceeds 40 degrees, the low temperature reaches minus 20 degrees, and the dust and humidity;

3. There are a certain number of applications, but the number is not very large.

This application field is traditionally implemented by a low-power industrial computer (system) with x86 structure. However, the rapid development of arm systems in recent years, especially after the emergence of Android operating systems, ARM + Android is a great trend in replacing x86 systems with (Low Power Consumption) terminal applications. When considering this application comparison, we mainly consider the following factors and compare the features of arm and x86:

1. performance:

If the performance of the arm system can meet application requirements, we recommend that you use the arm structure as much as possible. Otherwise, you can only consider x86 products. Note: Do not compare the absolute performance of the two systems, but analyze the performance based on your application characteristics.

2. Number of applications:

If you have too few applications, you may not be able to develop an independent application system. However, if you have hundreds or even thousands of applications, it is worth considering developing a new system on your own. Because the development cost and manufacturing cost of arm are relatively low. If there are more than hundreds of terminal applications, the development cost should be apportioned.

If you select an x86 system, you should not develop a dedicated system separately (because the development cost is too high, it may be 10 times that of arm ), instead, select the product that best matches your needs on the market to avoid high hardware development costs and future manufacturing costs (if the number of batch production is insufficient, production Scheduling costs will also be high ).

3. Operating System

The arm operating system usually creates a Linux system separately, and the system is not compatible with the system. This seriously restricts the application extension of arm. However, when Android appears, the barriers to system compatibility are gradually disappearing, promoting system and application software compatibility, greatly expanding the number of ARM application software while expanding its application space.

4. Power Consumption and power extension issues

The advantage of ARM is low power consumption. In fact, low power consumption also means:

1) High Stability: because the higher the power consumption, the lower the stability and reliability of electronic components, as long as the quality of peripheral components is good for low-power products, the system stability will not be too big a problem;

2) Low Heat Dissipation costs and smaller product volume considerations: for High-Power Products, heat dissipation is inevitable, and the existence of Heat Dissipation Devices (or devices, this restricts the volume of the product and imposes a fatal constraint on applications in some scenarios. However, the power consumption of ARM is less than 1 W, so there is no need to consider the heat dissipation problem.

3) Low Power Consumption: almost all electronic products have higher power consumption requirements and higher power supply costs.

4) The battery with low power consumption lasts for a long period of time, which is not explained in detail.

5) Low Power Consumption: low power consumption products can be sealed and protected because they do not need to consider heat dissipation. However, high power consumption products must be cooled, and fans are even needed to help with heat dissipation, this will inevitably expose many components and lines in the air and be corroded by dust, moisture, acid and alkali substances in the air.

5. Software development costs

Arm's operating system is very small (streamlined) and cannot provide many tools. Generally, ARM-based software is mostly developed in C or Java, which is much higher than x86 systems. In addition, for most arm systems, the software industry cannot be freely used in two systems due to different operating systems, but generally: software written in C or Java can be transplanted only after being compiled in the operating system of the ARM platform.

However, software developed for Android can be run on an arm device on another device based on the same system.

6. hardware development costs

In fact, arm has integrated almost all functions in the CPU chip, and almost all lines can be pulled out directly based on the principle diagram. Generally, there are not many extended parts, so the development cost will be relatively low, generally, it can be 3 to 50 thousand.

However, x86 has a lot of external cables and requires a lot of experienced engineers, as well as bios and other designs. Therefore, the design cost of the x86 motherboard is relatively high, usually 200 thousands or 300 thousands.

7. hardware manufacturing and application costs

No matter whether it is an arm or x86 motherboard, the manufacturing cost is composed of components and processing fees. Generally, the price of an arm motherboard is similar to that of an x86 motherboard, but arm is a product that can be used independently, however, the x86 motherboard is usually added with the CPU, memory, hard disk, and even graphics card.

In addition, x86 also needs a power supply, which is much more expensive than arm's power supply.

Therefore: Obviously, the hardware Application Cost of X86 is much higher than that of arm.

 

In summary, the x86 system and arm system should be applied in two completely different fields. If the functions are single and restricted by the environment, for example: POs, ATM, multimedia advertising machine (now with ARM + DSP products), on-board computer terminals and other applications, we should first consider the arm solution, compared with x86, its power consumption and cost have great advantages.

Source: http://www.cnwit.com/bencandy.php? F id = 66 & id = 451

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.