A FPGA is an array of regular logic blocks,
which may be configured to operate within a particular logical
function. Digital logic functions can be synthesized onto
the logic blocks of the FPGA and it is then programmed with
the configuration information to perform that function. FPGA
devices are economical at small volumes because the non-repetitive
engineering (NRE) costs are lower than with an Application
Specific Integrated Circuit (ASIC). (As production volumes
rise, the longer-term cost efficiency of ASIC outweighs the
increased NRE to make custom implementation viable.) FPGAs
can also offer a time to market advantage, as the device can
be programmed and tested after the design phase more quickly
than an ASIC takes to synthesize. Design modification and
re-programming costs are also low compared to re-fabrication.
Design tool costs for FPGA development are traditionally
lower than for ASIC’s, making FPGA’s a viable
training and prototyping vehicle and opening the FPGA market
to smaller organizations. FPGA part vendors have traditionally
provided FPGA design software. However, advances in fabrication
technology have seen an explosion in FPGA logic capacity,
and this has moved the complexity beyond software provided
by FPGA tool vendors. ASIC tool vendors have now moved into
the market place to provide very high quality front-end tools
to the FPGA market at a reduced cost.
With front-end procedures being similar to digital ASIC
and System on Chip development, FPGAs are a low cost proof
of concept or training tool. EDA tools are also more financially
accessible to small organizations and educational facilities.