Configurable hardware.
WHAT AN FPGA IS
A chip containing configurable logic blocks and interconnect, programmed to implement a circuit.
WHAT THAT PROVIDES
Hardware performance without manufacturing a chip Reconfiguration after deployment Rapid iteration
WHAT IT COSTS
Lower performance and higher power than a custom chip Higher unit cost at volume Limited capacity
WHAT THEY SUIT
Low and medium volumes Prototyping designs destined for custom chips Applications where the algorithm changes Signal processing Hardware acceleration of specific operations
WHAT THE DEVELOPMENT FLOW IS
Design description Simulation Synthesis into logic Placement and routing Timing analysis Generating a configuration file Programming the device
WHAT TAKES THE TIME
Placement and routing, which can take hours on large designs.
WHY THAT MATTERS
Iteration is far slower than software development.
WHAT TO DO ABOUT IT
Verify thoroughly in simulation before building.
WHAT HIGH-LEVEL SYNTHESIS PROVIDES
Generating hardware from higher-level descriptions.
WHAT IT ACHIEVES
Faster development, with results typically less efficient than hand-written designs.