Integrated circuit design: which is the best choice between FPGA and ASIC?
At present, the development trend of integrated circuit design is getting better and better. Many companies are actively developing intelligent hardware that can realize mobile terminal, automobile terminal and consumer electronics terminal.
Especially for the implementation method of artificial intelligence hardware at the mobile end, there are two schools, namely FPGA school and ASIC school.
For most students majoring in microelectronics, it is a very tangled problem to choose FPGA or AISC in the graduation season. First, most of the school do FPGA projects. Second, they lack understanding of the two and do not have a correct judgment on career development.
Today, let's talk about the differences between FPGA and ASIC in various dimensions.
1、 What are the similarities and differences between FPGA and ASIC?
Many new friends subconsciously think that FPGA is a very advanced thing. Those who can master FPGA must be extremely powerful people.
In fact, this is a misunderstanding.
The FPGA we discussed is only based on the existing FPGA chips to do the back-end arrangement and combination, rather than designing and manufacturing new FPGA chips. There are only a few companies in the world that can do this.
FPGA development process follows the process of ASIC development, which is the direction of integrated circuit. The programming language and programming logic used by coding are basically the same. Most electronic hardware products can be made with FPGA or ASIC, and the same function can be realized in both ways.
2、 Comparison of FPGA and ASIC at design level
The difference between FPGA and ASIC is more reflected in some small aspects of design. The design scale of ASIC is usually much larger than that of FPGA, the running clock is also much higher than that of FPGA, and there are differences in the number of gate circuits.
Moreover, ASIC has only one chance. FPGA can be programmed, so the flexibility of coding is relatively improved. In terms of RTL design only:
(1) ASIC has higher requirements for coding style and coding technology. In order to facilitate the back-end and subsequent check, it is required that the coding style of all modules should be consistent.
(2) ASIC logic design tends to be more conservative. Any change to the code should be very cautious, and alternative choices should be made to prevent error correction. Almost any modification of RTL is incremental. Even if the previous logic is wrong, it will not be deleted, but an additional branch will be made.
(3) ASIC design pays more attention to clock and reset. In particular, the clock is very important for the design of ASIC, and reset is very important for scan chain test (DFT). ASIC in this regard need to use library to design. ASIC usually does not use counter frequency division, which will cause the clock to be unclean, unless it is a very low-frequency clock. ASIC is also cautious about signal processing across clock domain. The closing and opening of the clock also need to be strictly checked.
(4) ASIC needs to consider scan testing and BIST. Therefore, BIST insertion for SRAM and reserved interfaces for scan are required during design. Although most of them are done by tools, RTL authors often have to do some top-level work manually, such as the source of scan clock and other logic.
(5) There are many ready-made IP for FPGA, so we need to consider the rational utilization of resources on the development board, and we can't burst a certain resource, and FPGA has the problem of resource waste. ASIC seldom considers this problem. ASIC always considers performance and power consumption. In terms of logic selection, except SRAM, CLK and reset, they are handwritten. The logic is basically no waste and more compact.
3、 Differences in market demand between FPGA and ASIC.
FPGA is mainly used for fast iteration or small batch products, or as algorithm verification acceleration of ASIC.
ASIC is used to design chips with large scale and high complexity, or products with high maturity and large output.
1. Listing speed: FPGA has short listing development cycle and fast listing speed, while ASIC has long development cycle and slow listing speed.
2. Product performance: FPGA products have low performance and waste resources. ASIC products have high performance.
3. Development cost: the development cost here depends on whether it is small batch production or mass production. For a very simple example, small batch production can invite several skilled masters to buy materials and make several products by hand. However, mass production is suitable for assembly line operation, so the cost of a single product will be relatively low.
Some places that are not very price sensitive, such as enterprise applications, military and industrial electronics, etc. (it is really important to reconfigure in some places). ASIC also has a certain reconfigurable ability. When designing, the circuit can be made with some parameters adjustable. ASIC mass production leads to low cost. It is suitable for consumer electronics applications, and it is not configurable in consumer electronics.
4、 Common points between FPGA and ASIC
As for the common points, you need to understand that mastering FPGA should have the following abilities:
1. The design idea of digital logic is needed: for any specific function, how to combine the units in your device to realize it, and which units are needed? How do I connect these units? What is the order of connection between the units?
2. A set of design environment executed from beginning to end (compiler tools provided by FPGA manufacturers - lattice diamond, Intel quartus, Xilinx vivado)
3. A communication tool connecting your logical thinking and machine operation - Design Language (schematic, Verilog, VHDL, etc.).
Design ideas and language tools are also necessary in ASIC. To put it bluntly, everyone should write Verilog, and many places naturally communicate with each other.
This is why it is easier for FPGA to switch to digital IC.
At a deeper level, RTL engineers must turn to system engineers. They only go down the road of RTL and protocol without any hope.
Engineers from RTL have a little advantage in this aspect, and technically, digital IC design will only be more complex and competitive than FPGA:
Faster clock
More uniform coding style
More stringent sta
More systematic simulation
Lower power consumption
Less available resources
As for UVM simulation, even without IC, traditional FPGA engineers should master it. A systematic simulation can save immeasurable time for product development and later maintenance.
FPGA is limited by environmental factors, and ASIC / SOC must be the general trend of future development.
Wuxi Sijie Microelectronics Co., Ltd. (hereinafter referred to as "Wuxi Sijie") was established in 2017 and is located in Wuxi, Jiangsu, the national integrated circuit and Internet of things industrial base. Wuxi Sijie has been selected as a private science and technology enterprise in Jiangsu Province, and "Gazelle enterprise" has been selected and put into storage. It has successfully passed the certification of intellectual property standard implementation system in early 2021. Registered capital of the company: RMB 10 million only. Main business scope: the development and sales of integrated circuits and supporting products, and the provision of a full set of technical consulting and technical services in the above related fields.