What is an FPGA?
FPGA is a hardware reconfigurable architecture. Its full English name is Field Programmable Gate Array.
FPGA is a chip that can be programmed to change its internal structure. FPGA has been used for many years as a low-volume replacement for application-specific chips (ASIC), and it is also deployed on a large scale in the data centers of major companies to provide powerful computing power at the same time. and enough flexibility.
Programmable FPGA technology was invented by Xilinx Company in the United States in the early 1980s.
FPGA has been monopolized by the four giants Xilinx, Altera, Lattice, and Microsemi for many years. Among them, Xilinx is the world's leading supplier of complete programmable logic solutions. Xilinx develops, manufactures and sells a broad range of advanced integrated circuits, software design tools and IP cores as predefined system-level functions.
FPGA application scenarios
FPGA is a small field in the large integrated circuit industry. With the help of 5G, autonomous driving, and AI, the demand for FPGA is still increasing, and the future space is still huge.
1. Communication field
The field of communication requires a high-speed communication protocol processing method. On the other hand, the communication protocol is modified at any time, and it is not suitable to be made into a special chip, so the FPGA with flexible functions has become the first choice.
2. Algorithm field
FPGA is very capable of processing complex signals and can handle multi-dimensional signals.
3. Embedded field
Use FPGA to build an embedded low-level environment, and then write some embedded software on it, the transactional operations are more complicated, and the operations on the FPGA are less.
4. In the field of security monitoring
At present, it is difficult for CPU to perform multi-channel processing and only detection and analysis, but it can be easily solved after adding FPGA, especially in the field of graphics algorithms, it has unique advantages.
5. In the field of industrial automation
FPGA can achieve multi-channel motor control. At present, motor power consumption accounts for the bulk of global energy consumption. Under the trend of energy saving and environmental protection, various types of precision control motors will be used in the future, and a single FPGA can control a large number of motors.
The most important concept of FPGA is IP core.
IP (Intelligent Property) core is the general term for integrated circuit cores with intellectual property cores. It is a macro module with specific functions that has been repeatedly verified. It has nothing to do with the chip manufacturing process and can be transplanted into different semiconductor processes.
For example, Xilinx has designed UDP core, PCIE xDMA core, and UART core based on FPGA. We only need to add other people's cores to our project, which means that our board has already supported this function.
For FPGA development software, the richer the IP cores it provides, the more convenient the user's design, and the higher its market occupancy rate.
The above is an FPGA architecture of lattice
FPGA and 'circuit board' are different after all. FPGA can be reprogrammed, which is equivalent to a circuit board that can be rewired.
Why is FPGA efficiency so high?
Both CPU and GPU belong to the von Neumann structure, with instruction decoding and execution, and shared memory. FPGAs are inherently instructionless, no shared memory architectures.
If many algorithms are realized by pure software, many instructions are needed to complete them. If FPGAs are used, they can be completed within a few hours, which is very fast.