Understanding CPU, GPU, ASIC and FPGA in one article

Understanding CPU, GPU, ASIC and FPGA in one article

With the rapid development of science and technology, computing power has become an important driving force for social progress and industrial upgrading.

In this vast ocean of computing, CPU, GPU, ASIC and FPGA, as the four core forces, each plays an irreplaceable role.

Now let me lead you to explore the mysteries of these four computing units in depth.

1.CPU

Everyone must be familiar with CPU (Central Processing Unit). As the computing and control core of the computer, it is the final execution unit for information processing and program running.

The CPU is a processor based on the von Neumann architecture. Under this architecture, instructions and data need to be accessed from the same storage space and transmitted via the same bus, and cannot be executed overlappingly. This processing flow determines that the CPU is good at decision-making and control, but has low efficiency in multi-data processing tasks.

Generally speaking, the improvement of CPU computing power mainly depends on two aspects, namely clock frequency and number of cores. Computer operations are executed step by step under the control of clock signals. Each clock signal cycle completes one step of operation. The high or low clock frequency largely reflects the speed of the CPU. The CPU core is a single processing unit inside the CPU that can execute instructions.

Generally speaking, the higher the clock frequency and the more cores there are, the better the CPU performance will be. However, this will also bring about problems of excessive energy consumption and excessive heat. If the heat dissipation cannot keep up, the CPU may burn out.

As CPU computing power gradually reaches a bottleneck and is increasingly unable to meet the exponentially growing computing power demand, the direction of computing power development is increasingly turning to specialization in order to seek higher performance, lower energy consumption and costs.

02. GPU

GPU (Graphics Processing Unit), as the name suggests, is a processor that is mainly responsible for image and graphics related computing.

Here you may have a question, why do we need a GPU to handle graphics work, why can't the CPU do it?

This is because the GPU is a parallel programming model, which is completely different from the serial programming model of the CPU. Since graphics rendering tasks are highly parallel, the GPU can effectively improve processing power and memory bandwidth simply by adding parallel processing units and memory control units.

The relationship between GPU and CPU is like that between many primary school students and a university professor. Although university professors are more knowledgeable and can handle some more complicated computing problems, when it comes to processing a lot of simple calculations, the computing speed of a university professor is not as fast as that of a group of primary school students.

Of course, with the development of technology, the application scope of GPU has expanded to scientific computing, artificial intelligence, machine learning and other fields.

03.ASIC

The above CPUs and GPUs can meet the needs of general scenarios, but with the gradual subdivision of computing power scenarios, general computing power chips can no longer meet user needs, so ASIC chips have gradually begun to be used.

ASIC (Application Specific Integrated Circuit) is an integrated circuit designed for a specific application.

The design of ASIC is completely optimized for specific applications. It uses hardwiring to implement circuit functions, and can achieve higher efficiency and lower energy consumption when processing specific tasks, thus reaching the extreme in performance and efficiency.

Just like the private customization in the clothing industry, private customization of clothes can often better meet the needs of customers. Although you can wear a T-shirt and shorts to attend a party, it is inappropriate after all. Choosing a set of clothes that match the occasion will undoubtedly make you more confident and better fit in and enjoy this special night.

Of course, when it comes to private customization, the first thing that comes to mind is "expensive". The high customization of ASIC also means high R&D costs and technical barriers. Because ASIC chips are designed for specific applications, they require specialized circuit structure and layout design, which usually requires highly specialized technology and rich experience. The customized design process is complicated and time-consuming, which increases R&D costs and technical barriers. In addition, ASIC has low flexibility and is difficult to change once the design is completed. In this era of ever-changing technology, it is difficult to occupy more market share.

Therefore, ASIC is usually suitable for application scenarios with extremely high performance requirements and relatively stable demands, such as cryptocurrency mining, high-performance computing, etc.

04.FPGA

Once an ASIC chip is designed, it cannot be changed. So what should users do when they have other needs?

This brings us to FPGA (Field Programmable Gate Array). As the name suggests, FPGA is a programmable integrated circuit that can be configured by the user to perform specific tasks.

Compared with the von Neumann structure of CPU and GPU, FPGA adopts a design without instructions and does not require shared memory. The function of each logic unit is determined during reprogramming, making FPGA more energy efficient than CPU and GPU.

So how is the performance of FPGA compared to ASIC? As mentioned earlier, AISC chips are customized, so they have stronger performance and lower energy consumption. However, due to the higher technical threshold and longer design cycle, they are more expensive. However, when ASIC chips need to be used on a large scale, the cost will be significantly reduced.

FPGA can be reconfigured, so it has a significant improvement in flexibility. This is actually the same as building blocks. Fixed blocks need to go through design → mold opening → injection molding → decoration and coloring → packaging before they can be put on the market. However, intellectual building blocks only need to produce blocks of several different shapes and colors, so that consumers can build them according to their imagination and creativity. The disadvantage is that redundancy will occur in the process of building blocks, resulting in waste.

Summarize

picture

As the four cornerstones of the computing world, CPU, GPU, FPGA and ASIC play an important role in different application scenarios. They have their own advantages and together promote the progress and development of science and technology.

In the future, as technology continues to advance and application requirements continue to change, these four computing units will continue to evolve and merge, bringing us a more efficient, flexible, and intelligent computing experience. Let us look forward to the arrival of this computing era full of infinite possibilities!

<<: 

>>: 

Recommend

Online interview experience: Is it absolutely safe to use HTTPS?

[[421374]] This article is reprinted from the WeC...

[Closed] NextArray: $1.99/month KVM-1GB/10GB/1TB/Portland Data Center

[Closed] NextArray has added three new US nodes th...

BandwagonHost: $37.3/year KVM-1GB/20GB/1TB/Fremont Data Center

In January this year, BandwagonHost released a pa...

Will NB-IoT be eliminated? What is the value of connectivity?

Just as Verizon and AT&T are commercializing ...

Practical tips: Teach you step by step to solve the problem of WiFi interference

Suppose there is a large classroom that can accom...

Four factors driving 100Gbps network upgrades

According to Crehan Research, 100Gbps and 25Gbps ...

Hundreds of unicorns died in 2019: 3 reasons, 5 traps, and a mess

2019 can be called the year of naked swimming for...