Designing digital circuits used to be something that only big companies could afford
to do. It used to require creating application-specific integrated circuits (ASICs)—taking
weeks or months to produce an actual chip, and requiring piles of cash or wiring
together tons of individual chips to perform various logic functions. Then the fieldprogrammable
gate array (FPGA) was introduced. FPGAs are programmable logic
devices. Unlike an ASIC, the function an FPGA performs is determined at runtime,
so an FPGA can be configured to act like just about any digital circuit. However, it
wasn’t until recently that the cost of FPGAs has dropped to a point where they are
now affordable for even hobbyists.