Field-programmable gate array
From Wikipedia, the free encyclopedia.
A field-programmable gate array or FPGA is a gate array that can reprogrammed after it is manufactured, rather than during the manufacturing — a programmable logic device. Device manufacturers include Xilinx, Altera, Lattice Semiconductor, Actel, Cypress, Atmel and QuickLogic.
FPGAs are generally slower than their ASIC counterparts, and draw more power. However, they have several advantages such as a shorter time-to-market, and lower development costs (for quantities < 10k). An ASIC can be made that is a so-called hard copy of an FPGA - that is, an integrated circuit with the same functionality as the FPGA, but faster and consuming less power.
Many modern FPGAs have the ability to be reprogrammed at 'run time', and this is leading to the idea of reconfigurable computing or reconfigurable systems - CPUs that reconfigure themselves to suit the task at hand. Software-configurable microprocessors such as Stretch's S5000 adopt a hybrid approach by providing a processor core and an FPGA core on the same chip.
Applications of FPGAs include DSP, Software-defined radio, Aerospace and defence systems, ASIC Prototyping, Medical imaging and a growing range of other areas.
To define the behaviour of the FPGA it is required to use a Hardware Description Language (HDL). This language, when compiled, will generate a net list, that can be mapped to the actual fpga architecture. When done the binary file generated is used to (re)configure the FPGA device. Common HDL's are VHDL and Verilog.
Basic process technology types
- SRAM - based on static memory technology. In-system programmable and re-programmable. Requires external boot devices. Usually CMOS.
- Anti-fuse - One-time programmable. CMOS.
- EPROM - Electrically Programmable Read-Only Memory technology. Usually one-time programmable in production because of plastic packaging. Windowed devices can be erased with ultraviolet (UV) light. CMOS.
- EEPROM - Electrically Eraseable Programmable Read-Only Memory technology. Can be erased, even in plastic packages. Some, but not all, EEPROM devices can be in-system programmed. CMOS.
- FLASH - Flash-erase EPROM technology. Can be erased, even in plastic packages. Some, but not all, FLASH devices can be in-system programmed. Usually, a FLASH cell is smaller than an equivalent EEPROM cell and is therefore less expensive to manufacture. CMOS.
- Fuse - One-time programmable. Bipolar.
External links
- FAQ from Optimagic
- Programmable Logic Jump Station - Comprehensive links to FPGA, CPLD, and reconfigurable computing sites, from Optimagic.
- FPGA Basics by Ray Andraka
- | Fpga4Fun various fpga projects
- FPGA vendors
Note: FPGA's should not be confused with Flip-Chip Pin Grid Array, a form of integrated circuit packaging.