Chapter 16
Chapter 16
4. Suited for low-volume mass production. 4. Suited for very high-volume mass production.
5.Less energy efficient, requires more power for 5. Much more power efficient than FPGAs. Power
same function which ASIC can achieve at lower consumption of ASICs can be very minutely
power. controlled and optimized.
FPGA vs ASIC
FPGA
6. Limited in operating frequency compared to
ASIC of similar process node. The routing and ASIC
configurable logic eat up timing margin in 6. ASIC fabricated using the same process node can
FPGAs. run at much higher frequency than FPGAs since its
circuit is optimized for its specific function.
7. Analog designs are not possible with FPGAs.
Although FPGAs may contain specific analog
7. ASICs can have complete analog circuitry, for
hardware such as PLLs, ADC etc, they are not
example WiFi transceiver, on the same die along
much flexible to create for example RF
with microprocessor cores. This is the advantage
transceivers.
which FPGAs lack.
8. FPGAs are highly suited for applications such
as Radars, Cell Phone Base Stations etc where
the current design might need to be 8. ASICs are definitely not suited for application areas
upgraded to use better algorithm or to a where the design might need to be upgraded
better design. In these applications, the high- frequently or once-in-a-while.
cost of FPGAs is not the deciding factor.
Instead, programmability is the deciding 9. It is not recommended to prototype a design using
factor. ASICs unless it has been absolutely validated. Once
9. Preferred for prototyping and validating a the silicon has been taped out, almost nothing can
design or concept. Many ASICs are be done to fix a design bug (exceptions apply).
prototyped using FPGAs themselves! Major
processor manufacturers themselves use
FPGAs to validate their System-on-Chips
(SoCs). It is easier to make sure design is
working correctly as intended using FPGA
prototyping.
ASIC Design
• Design is fully automated –there are EDA tools are available
for each and every stage.
then Q <= D;
end if;
end process;
Semantic Checks:
1. Design Entry needs to be checked for
language correctness
2. This phase can also be used to check the
synthesizability of code i.e. whether the
code can lead to practical hardware
3. It is important to check synthesizability, as
RTL should be mapped to standard cells
using synthesis tools
Design Verification:
Verification is the process where the design is
tested against specification