Field-programmable gate array: Difference between revisions

Content deleted Content added
Ralf Moses (talk | contribs)
No edit summary
Line 12:
}}
 
A '''field-programmable gate array''' ('''FPGA''') is a type of configurable [[integrated circuit]] that can be repeatedly programmed after manufacturing. FPGAs are a subset of logic devices referred to as [[programmable logic devices]] (PLDs). They consist of an array of [[programmable logic device|programmable]] [[logic block|logic blocks]] with a connecting grid, that can be configured "in the field" to interconnect with other logic blocks to perform various digital functions. FPGAs are often used in limited (low) quantity production of custom-made products, and in research and development, where the higher cost of individual FPGAs is not as important, and where creating and manufacturing a custom circuit would not be feasible. Other applications for FPGAs include the telecommunications, automotive, aerospace, and industrial sectors, which benefit from their flexibility, high signal processing speed, and parallel processing abilities.
 
A FPGA configuration is generally written using a [[hardware description language]] (HDL) e.g. [[VHDL]], similar to the ones used for [[application-specific integrated circuit]]s (ASICs). [[Circuit diagram|Circuit diagrams]] were formerly used to write the configuration.
Line 18:
The logic blocks of an FPGA can be configured to perform complex [[combinational logic|combinational functions]], or act as simple [[logic gate]]s like [[AND gate|AND]] and [[XOR gate|XOR]]. In most FPGAs, logic blocks also include [[Memory cell (computing)|memory elements]], which may be simple [[flip-flop (electronics)|flip-flops]] or more sophisticated blocks of memory.<ref name="FPGA" /> Many FPGAs can be reprogrammed to implement different [[Boolean function|logic functions]], allowing flexible [[reconfigurable computing]] as performed in [[computer software]].
 
FPGAs also have a role in [[embedded system]] development due to their capability to start system software development simultaneously with hardware, enable system performance simulations at a very early phase of the development, and allow various system trials and design iterations before finalizing the system architecture.<ref>{{cite book |last1=Simpson |first1=P. A. |date=2015 |title=FPGA Design, Best Practices for Team Based Reuse, 2nd edition |___location=Switzerland |publisher=Springer International Publishing AG |page=16 |isbn=978-3-319-17924-7 }}</ref>
 
FPGAs are also commonly used during the development of ASICs to speed up the simulation process.
Line 73:
=== Logic blocks ===
{{Main|Logic block}}
[[File:FPGA cell example.png|thumb|Simplified example illustration of a logic cell (LUT&nbsp;&ndash; [[lookup table]], FA&nbsp;&ndash; [[full adder]], DFF&nbsp;&ndash; [[D-type flip-flop]])]]
 
The most common FPGA architecture consists of an array of [[logic block]]s called configurable logic blocks (CLBs) or logic array blocks (LABs) (depending on vendor), [[I/O address|I/O pads]], and routing channels.<ref name="FPGA" /> Generally, all the routing channels have the same width (number of signals). Multiple I/O pads may fit into the height of one row or the width of one column in the array.
Line 131:
In 2016, long-time industry rivals [[Xilinx]] (now part of [[AMD]]) and [[Altera]] (now part of [[Intel]]) were the FPGA market leaders.<ref>{{cite web |first=Paul |last=Dillien |work=EETimes | url=http://www.eetimes.com/author.asp?doc_id=1331443 | archive-url =https://web.archive.org/web/20190105015123/http://www.eetimes.com/author.asp?doc_id=1331443 |title=And the Winner of Best FPGA of 2016 is... |date=March 6, 2017 |access-date=September 7, 2017 |archive-date=January 5, 2019 }}</ref> At that time, they controlled nearly 90 percent of the market.
 
Both Xilinx (now AMD) and Altera (now Intel) provide [[proprietary software|proprietary]] [[electronic design automation]] software for [[Windows]] and [[Linux]] ([[Xilinx ISE|ISE]]/[[Vivado]] and [[Intel Quartus Prime|Quartus]]) which enables engineers to [[Hardware design|design]], analyze, [[simulate]], and [[Logic synthesis|synthesize]] ([[compile]]) their designs.<ref>{{Cite web|url=https://www.xilinx.com/products/design-tools/ise-design-suite.html|title=Xilinx ISE Design Suite|website=www.xilinx.com|access-date=2018-12-01}}</ref><ref>{{Cite web|url=https://www.altera.com/products/design-software/fpga-design/quartus-prime/overview.html|title=FPGA Design Software - Intel Quartus Prime|website=Intel|language=en|access-date=2018-12-01}}</ref>
 
In March 2010, [[Tabula (company)|Tabula]] announced their FPGA technology that uses [[Time-division multiplexing|time-multiplexed]] logic and interconnect that claims potential cost savings for high-density applications.<ref>{{cite web |title=Tabula's Time Machine&nbsp;— Micro Processor Report |url=http://www.tabula.com/news/M11_Tabula_Reprint.pdf |url-status=dead |archive-url=https://web.archive.org/web/20110410094902/http://www.tabula.com/news/M11_Tabula_Reprint.pdf |archive-date=2011-04-10}}</ref> On March 24, 2015, Tabula officially shut down.<ref>[http://www.bizjournals.com/sanjose/news/2015/02/11/tabula-to-shut-down-120-jobs-lost-at-fabless-chip.html Tabula to shut down; 120 jobs lost at fabless chip company] Silicon Valley Business Journal</ref>
Line 143:
Other manufacturers include:
 
* [[Achronix]], manufacturing SRAM based FPGAs with 1.5&nbsp;GHz fabric speed<ref>{{Cite press release |url=http://newsroom.intel.com/community/intel_newsroom/blog/2010/11/01/chip-shot-achronix-to-use-intel-s-22nm-manufacturing |title=Achronix to Use Intel's 22nm Manufacturing |date=2010-11-01 |work=Intel Newsroom |access-date=2018-12-01 |language=en-US |archive-date=2015-09-30 |archive-url=https://web.archive.org/web/20150930082224/http://newsroom.intel.com/community/intel_newsroom/blog/2010/11/01/chip-shot-achronix-to-use-intel-s-22nm-manufacturing |url-status=dead }}{{better source needed|{{subst:DATE}}|date=September 2024}}</ref>
*[[Altium]], provides system-on-FPGA hardware-software design environment.<ref>{{cite book |last1=Maxfield |first1=Clive |title=The Design Warrior's Guide to FPGAs |date=16 June 2004 |publisher=Elsevier Science |isbn=9780080477138 |url=https://books.google.com/books?id=dnuwr2xOFpUC&dq=fpga+altium&pg=PA117}}</ref>
* Cologne Chip, German government-backed designer and producer of FPGAs<ref>{{Cite web |title=About the company – Cologne Chip |url=https://colognechip.com/about-the-company/ |access-date=2024-02-27 |language=en-US}}{{better source needed|{{subst:DATE}}|date=September 2024}}</ref>
* [[Efinix]] offers small to medium-sized FPGAs. They combine logic and routing interconnects into a configurable XLR cell.{{cn|date=September 2024}}
* [[GOWIN Semiconductors]], manufacturing small and medium-sized SRAM and flash-based FPGAs. They also offer pin-compatible replacements for a few Xilinx, Altera and Lattice products.{{cn|date=September 2024}}
Line 153:
** [[Microsemi]] (previously [[Actel]]), producing antifuse, flash-based, [[mixed-signal]] FPGAs; acquired by Microchip in 2018
** [[Atmel]], a second source of some Altera-compatible devices; also FPSLIC{{Clarify|reason=|date=December 2018}} mentioned above;<ref>{{Cite news|url=http://sourcetech411.com/2013/04/top-fpga-companies-for-2013/|title=Top FPGA Companies For 2013|date=2013-04-28|work=SourceTech411|access-date=2018-12-01|language=en-US|archive-date=2018-08-24|archive-url=https://web.archive.org/web/20180824135219/https://sourcetech411.com/2013/04/top-fpga-companies-for-2013/|url-status=dead}}</ref> acquired by Microchip in 2016
* QuickLogic manufactures ultra-low-power sensor hubs, extremely-low-powered, low-density SRAM-based FPGAs, with display bridges MIPI and RGB inputs; MIPI, RGB and LVDS outputs.<ref>{{Cite web|url=http://www.quicklogic.com/|title=QuickLogic — Customizable Semiconductor Solutions for Mobile Devices|website=www.quicklogic.com|publisher=QuickLogic Corporation|language=en|access-date=2018-10-07}}{{better source needed|{{subst:DATE}}|date=September 2024}}</ref>
 
== Applications ==
Line 191:
== Similar technologies ==
 
Historically, FPGAs have been slower, less energy efficient and generally achieved less functionality than their fixed ASIC counterparts. A study from 2006 showed that designs implemented on FPGAs need on average 40 times as much area, draw 12 times as much dynamic power, and run at one third the speed of corresponding ASIC implementations.<ref name="FPGA-ASIC-comparison">{{cite conference|doi=10.1145/1117201.1117205|chapter=Measuring the gap between FPGAs and ASICs|title=Proceedings of the international symposium on Field programmable gate arrays – FPGA'06|pages=21–30|year=2006|last1=Kuon|first1=Ian|last2=Rose|first2=Jonathan|isbn=1-59593-292-5|publisher=ACM|___location=New York, NY|chapter-url=http://ece.gmu.edu/coursewebpages/ECE/ECE448/S09/viewgraphs/Gap_between_FPGAs_and_ASICs.pdf|conference=|access-date=2017-10-25|archive-date=2010-06-22|archive-url=https://web.archive.org/web/20100622170541/http://ece.gmu.edu/coursewebpages/ECE/ECE448/S09/viewgraphs/Gap_between_FPGAs_and_ASICs.pdf|url-status=dead}}</ref>
 
Advantages of FPGAs include the ability to re-program when already deployed (i.e. "in the field") to fix [[Bug (computer programming)|bugs]], and often include shorter [[time to market]] and lower [[non-recurring engineering]] costs. Vendors can also take a middle road via [[FPGA prototyping]]: developing their prototype hardware on FPGAs, but manufacture their final version as an ASIC so that it can no longer be modified after the design has been committed. This is often also the case with new processor designs.<ref>{{cite web|url=https://www.anandtech.com/show/14798/xilinx-announces-world-largest-fpga-virtex-ultrascale-vu19p-with-9m-cells|title=Xilinx Announces World Largest FPGA: Virtex Ultrascale+ VU19P with 9m Cells|first=Ian|last=Cutress|date=August 27, 2019|website=[[AnandTech]]}}</ref> Some FPGAs have the capability of [[partial re-configuration]] that lets one portion of the device be re-programmed while other portions continue running.<ref>{{Cite web|url=https://www.intel.com/content/www/us/en/programmable/documentation/ekx1496870149834.html|title=AN 818: Static Update Partial Reconfiguration Tutorial: for Intel Stratix 10 GX FPGA Development Board|website=www.intel.com|access-date=2018-12-01}}</ref><ref>{{Cite web|url=https://electronics.stackexchange.com/questions/45115/can-fpgas-dynamically-modify-their-logic|title=Can FPGAs dynamically modify their logic?|website=Electrical Engineering Stack Exchange|access-date=2018-12-01}}</ref>