fbpx
Wikipedia

Field-programmable gate array

A field-programmable gate array (FPGA) is a type of integrated circuit that can be programmed or reprogrammed after manufacturing. It consists of an array of programmable logic block and interconnects that can be configured to perform various digital functions. FPGAs are commonly used in applications where flexibility, speed, and parallel processing capabilities are required, such as in telecommunications, automotive, aerospace, and industrial sectors.

A Stratix IV FPGA from Altera
A Spartan FPGA from Xilinx

FPGA configuration is generally specified using a hardware description language (HDL), similar to that used for an application-specific integrated circuit (ASIC). Circuit diagrams were previously used to specify the configuration, but this is increasingly rare due to the advent of electronic design automation tools.

The logic blocks of an FPGA can be configured to perform complex combinational functions, or act as simple logic gates like AND and XOR. In most FPGAs, logic blocks also include memory elements, which may be simple flip-flops or more complete blocks of memory.[1] Many FPGAs can be reprogrammed to implement different 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.[2]

History Edit

The FPGA industry sprouted from programmable read-only memory (PROM) and programmable logic devices (PLDs). PROMs and PLDs both had the option of being programmed in batches in a factory or in the field (field-programmable).[3]

Altera was founded in 1983 and delivered the industry's first reprogrammable logic device in 1984 – the EP300 – which featured a quartz window in the package that allowed users to shine an ultra-violet lamp on the die to erase the EPROM cells that held the device configuration.[4]

Xilinx produced the first commercially viable field-programmable gate array in 1985[3] – the XC2064.[5] The XC2064 had programmable gates and programmable interconnects between gates, the beginnings of a new technology and market.[6] The XC2064 had 64 configurable logic blocks (CLBs), with two three-input lookup tables (LUTs).[7]

In 1987, the Naval Surface Warfare Center funded an experiment proposed by Steve Casselman to develop a computer that would implement 600,000 reprogrammable gates. Casselman was successful and a patent related to the system was issued in 1992.[3]

Altera and Xilinx continued unchallenged and quickly grew from 1985 to the mid-1990s when competitors sprouted up, eroding a significant portion of their market share. By 1993, Actel (now Microsemi) was serving about 18 percent of the market.[6]

The 1990s were a period of rapid growth for FPGAs, both in circuit sophistication and the volume of production. In the early 1990s, FPGAs were primarily used in telecommunications and networking. By the end of the decade, FPGAs found their way into consumer, automotive, and industrial applications.[8]

By 2013, Altera (31 percent), Actel (10 percent) and Xilinx (36 percent) together represented approximately 77 percent of the FPGA market.[9]

Companies like Microsoft have started to use FPGAs to accelerate high-performance, computationally intensive systems (like the data centers that operate their Bing search engine), due to the performance per watt advantage FPGAs deliver.[10] Microsoft began using FPGAs to accelerate Bing in 2014, and in 2018 began deploying FPGAs across other data center workloads for their Azure cloud computing platform.[11]

Growth Edit

The following timelines indicate progress in different aspects of FPGA design.

Gates Edit

  • 1987: 9,000 gates, Xilinx[6]
  • 1992: 600,000, Naval Surface Warfare Department[3]
  • Early 2000s: millions[8]
  • 2013: 50 million, Xilinx[12]

Market size Edit

Design starts Edit

A design start is a new custom design for implementation on an FPGA.

Design Edit

Contemporary FPGAs have ample logic gates and RAM blocks to implement complex digital computations. FPGAs can be used to implement any logical function that an ASIC can perform. The ability to update the functionality after shipping, partial re-configuration of a portion of the design[17] and the low non-recurring engineering costs relative to an ASIC design (notwithstanding the generally higher unit cost), offer advantages for many applications.[1]

As FPGA designs employ very fast I/O rates and bidirectional data buses, it becomes a challenge to verify correct timing of valid data within setup time and hold time.[18] Floor planning helps resource allocation within FPGAs to meet these timing constraints.

Some FPGAs have analog features in addition to digital functions. The most common analog feature is a programmable slew rate on each output pin, allowing the engineer to set low rates on lightly loaded pins that would otherwise ring or couple unacceptably, and to set higher rates on heavily loaded high-speed channels that would otherwise run too slowly.[19][20] Also common are quartz-crystal oscillator driver circuitry, on-chip resistance-capacitance oscillators, and phase-locked loops with embedded voltage-controlled oscillators used for clock generation and management as well as for high-speed serializer-deserializer (SERDES) transmit clocks and receiver clock recovery. Fairly common are differential comparators on input pins designed to be connected to differential signaling channels. A few mixed signal FPGAs have integrated peripheral analog-to-digital converters (ADCs) and digital-to-analog converters (DACs) with analog signal conditioning blocks allowing them to operate as a system-on-a-chip (SoC).[21] Such devices blur the line between an FPGA, which carries digital ones and zeros on its internal programmable interconnect fabric, and field-programmable analog array (FPAA), which carries analog values on its internal programmable interconnect fabric.

Logic blocks Edit

 
Simplified example illustration of a logic cell (LUT – Lookup table, FA – Full adder, DFF – D-type flip-flop)

The most common FPGA architecture consists of an array of logic blocks called configurable logic blocks (CLBs), or logic array blocks (LABs), depending on vendor, I/O pads, and routing channels.[1] 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.

"An application circuit must be mapped into an FPGA with adequate resources. While the number of logic blocks and I/Os required is easily determined from the design, the number of routing channels needed may vary considerably even among designs with the same amount of logic. For example, a crossbar switch requires much more routing than a systolic array with the same gate count. Since unused routing channels increase the cost (and decrease the performance) of the FPGA without providing any benefit, FPGA manufacturers try to provide just enough channels so that most designs that will fit in terms of lookup tables (LUTs) and I/Os can be routed. This is determined by estimates such as those derived from Rent's rule or by experiments with existing designs."[22]

In general, a logic block consists of a few logical cells. A typical cell consists of a 4-input LUT, a full adder (FA) and a D-type flip-flop. The LUT might be split into two 3-input LUTs. In normal mode those are combined into a 4-input LUT through the first multiplexer (mux). In arithmetic mode, their outputs are fed to the adder. The selection of mode is programmed into the second mux. The output can be either synchronous or asynchronous, depending on the programming of the third mux. In practice, entire or parts of the adder are stored as functions into the LUTs in order to save space.[23][24][25]

Hard blocks Edit

Modern FPGA families expand upon the above capabilities to include higher-level functionality fixed in silicon. Having these common functions embedded in the circuit reduces the area required and gives those functions increased performance compared to building them from logical primitives. Examples of these include multipliers, generic DSP blocks, embedded processors, high-speed I/O logic and embedded memories.

Higher-end FPGAs can contain high-speed multi-gigabit transceivers and hard IP cores such as processor cores, Ethernet medium access control units, PCI or PCI Express controllers, and external memory controllers. These cores exist alongside the programmable fabric, but they are built out of transistors instead of LUTs so they have ASIC-level performance and power consumption without consuming a significant amount of fabric resources, leaving more of the fabric free for the application-specific logic. The multi-gigabit transceivers also contain high-performance signal conditioning circuitry along with high-speed serializers and deserializers, components that cannot be built out of LUTs. Higher-level physical layer (PHY) functionality such as line coding may or may not be implemented alongside the serializers and deserializers in hard logic, depending on the FPGA.

Soft core Edit

 
A Xilinx Zynq-7000 All Programmable System on a Chip

An alternate approach to using hard macro processors is to make use of soft processor IP cores that are implemented within the FPGA logic. Nios II, MicroBlaze and Mico32 are examples of popular softcore processors. Many modern FPGAs are programmed at run time, which has led to the idea of reconfigurable computing or reconfigurable systems – CPUs that reconfigure themselves to suit the task at hand. Additionally, new non-FPGA architectures are beginning to emerge. Software-configurable microprocessors such as the Stretch S5000 adopt a hybrid approach by providing an array of processor cores and FPGA-like programmable cores on the same chip.

Integration Edit

In 2012 the coarse-grained architectural approach was taken a step further by combining the logic blocks and interconnects of traditional FPGAs with embedded microprocessors and related peripherals to form a complete system on a programmable chip. Examples of such hybrid technologies can be found in the Xilinx Zynq-7000 all Programmable SoC,[26] which includes a 1.0 GHz dual-core ARM Cortex-A9 MPCore processor embedded within the FPGA's logic fabric[27] or in the Altera Arria V FPGA, which includes an 800 MHz dual-core ARM Cortex-A9 MPCore. The Atmel FPSLIC is another such device, which uses an AVR processor in combination with Atmel's programmable logic architecture. The Microsemi SmartFusion devices incorporate an ARM Cortex-M3 hard processor core (with up to 512 kB of flash and 64 kB of RAM) and analog peripherals such as a multi-channel analog-to-digital converters and digital-to-analog converters to their flash memory-based FPGA fabric.[citation needed]

Clocking Edit

Most of the logic inside of an FPGA is synchronous circuitry that requires a clock signal. FPGAs contain dedicated global and regional routing networks for clock and reset, typically implemented as an H tree, so they can be delivered with minimal skew. FPGAs may contain analog phase-locked loop or delay-locked loop components to synthesize new clock frequencies and manage jitter. Complex designs can use multiple clocks with different frequency and phase relationships, each forming separate clock domains. These clock signals can be generated locally by an oscillator or they can be recovered from a data stream. Care must be taken when building clock domain crossing circuitry to avoid metastability. Some FPGAs contain dual port RAM blocks that are capable of working with different clocks, aiding in the construction of building FIFOs and dual port buffers that bridge clock domains.

3D architectures Edit

To shrink the size and power consumption of FPGAs, vendors such as Tabula and Xilinx have introduced 3D or stacked architectures.[28][29] Following the introduction of its 28 nm 7-series FPGAs, Xilinx said that several of the highest-density parts in those FPGA product lines will be constructed using multiple dies in one package, employing technology developed for 3D construction and stacked-die assemblies.

Xilinx's approach stacks several (three or four) active FPGA dies side by side on a silicon interposer – a single piece of silicon that carries passive interconnect.[29][30] The multi-die construction also allows different parts of the FPGA to be created with different process technologies, as the process requirements are different between the FPGA fabric itself and the very high speed 28 Gbit/s serial transceivers. An FPGA built in this way is called a heterogeneous FPGA.[31]

Altera's heterogeneous approach involves using a single monolithic FPGA die and connecting other die/technologies to the FPGA using Intel's embedded multi_die interconnect bridge (EMIB) technology.[32]

Programming Edit

To define the behavior of the FPGA, the user provides a design in a hardware description language (HDL) or as a schematic design. The HDL form is more suited to work with large structures because it's possible to specify high-level functional behavior rather than drawing every piece by hand. However, schematic entry can allow for easier visualization of a design and its component modules.

Using an electronic design automation tool, a technology-mapped netlist is generated. The netlist can then be fit to the actual FPGA architecture using a process called place-and-route, usually performed by the FPGA company's proprietary place-and-route software. The user will validate the map, place and route results via timing analysis, simulation, and other verification and validation methodologies. Once the design and validation process is complete, the binary file generated, typically using the FPGA vendor's proprietary software, is used to (re-)configure the FPGA. This file is transferred to the FPGA/CPLD via a serial interface (JTAG) or to an external memory device like an EEPROM.

The most common HDLs are VHDL and Verilog as well as extensions such as SystemVerilog. However, in an attempt to reduce the complexity of designing in HDLs, which have been compared to the equivalent of assembly languages, there are moves[by whom?] to raise the abstraction level through the introduction of alternative languages. National Instruments' LabVIEW graphical programming language (sometimes referred to as G) has an FPGA add-in module available to target and program FPGA hardware. Verilog was created to simplify the process making HDL more robust and flexible. Verilog is currently the most popular. Verilog creates a level of abstraction to hide away the details of its implementation. Verilog has a C-like syntax, unlike VHDL.[33]

To simplify the design of complex systems in FPGAs, there exist libraries of predefined complex functions and circuits that have been tested and optimized to speed up the design process. These predefined circuits are commonly called intellectual property (IP) cores, and are available from FPGA vendors and third-party IP suppliers. They are rarely free, and typically released under proprietary licenses. Other predefined circuits are available from developer communities such as OpenCores (typically released under free and open source licenses such as the GPL, BSD or similar license), and other sources. Such designs are known as open-source hardware.

In a typical design flow, an FPGA application developer will simulate the design at multiple stages throughout the design process. Initially the RTL description in VHDL or Verilog is simulated by creating test benches to simulate the system and observe results. Then, after the synthesis engine has mapped the design to a netlist, the netlist is translated to a gate-level description where simulation is repeated to confirm the synthesis proceeded without errors. Finally the design is laid out in the FPGA at which point propagation delays can be added and the simulation run again with these values back-annotated onto the netlist.

More recently, OpenCL (Open Computing Language) is being used by programmers to take advantage of the performance and power efficiencies that FPGAs provide. OpenCL allows programmers to develop code in the C programming language and target FPGA functions as OpenCL kernels using OpenCL constructs.[34] For further information, see high-level synthesis and C to HDL.

Most FPGAs rely on an SRAM-based approach to be programmed. These FPGAs are in-system programmable and re-programmable, but require external boot devices. For example, flash memory or EEPROM devices may often load contents into internal SRAM that controls routing and logic. The SRAM approach is based on CMOS.

Rarer alternatives to the SRAM approach include:

  • Fuse: one-time programmable. Bipolar. Obsolete.
  • Antifuse: one-time programmable. CMOS. Examples: Actel SX and Axcelerator families; Quicklogic Eclipse II family.[35]
  • PROM: programmable read-only memory technology. One-time programmable because of plastic packaging. Obsolete.
  • EPROM: erasable programmable read-only memory technology. One-time programmable but with window, can be erased with ultraviolet (UV) light. CMOS. Obsolete.
  • EEPROM: electrically erasable 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. Example: Actel ProASIC family.[35]

Manufacturers Edit

In 2016, long-time industry rivals Xilinx (now part of AMD) and Altera (now an Intel subsidiary) were the FPGA market leaders.[36] At that time, they controlled nearly 90 percent of the market.

Both Xilinx (now AMD) and Altera (now Intel) provide proprietary electronic design automation software for Windows and Linux (ISE/Vivado and Quartus) which enables engineers to design, analyze, simulate, and synthesize (compile) their designs.[37][38]

In March 2010, Tabula announced their FPGA technology that uses time-multiplexed logic and interconnect that claims potential cost savings for high-density applications.[39] On March 24, 2015, Tabula officially shut down.[40]

On June 1, 2015, Intel announced it would acquire Altera for approximately $16.7 billion and completed the acquisition on December 30, 2015.[41]

On October 27, 2020, AMD announced it would acquire Xilinx[42] and completed the acquisition valued at about $50 billion in February 2022.[43]

Other manufacturers include:

  • Achronix, manufacturing SRAM based FPGAS with 1.5 GHz fabric speed[44]
  • Altium, provides system-on-FPGA hardware-software design environment.[45]
  • Efinix offers small to medium-sized FPGAs. They combine logic and routing interconnects into a configurable XLR cell.
  • 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.
  • Lattice Semiconductor, which manufactures low-power SRAM-based FPGAs featuring integrated configuration flash, instant-on and live reconfiguration
  • Microchip:
  • QuickLogic,[47] which manufactures Ultra Low Power Sensor Hubs, extremely low powered, low-density SRAM-based FPGAs, with display bridges MIPI & RGB inputs, MIPI, RGB and LVDS outputs

Applications Edit

An FPGA can be used to solve any problem which is computable. This is trivially proven by the fact that FPGAs can be used to implement a soft microprocessor, such as the Xilinx MicroBlaze or Altera Nios II. Their advantage lies in that they are significantly faster for some applications because of their parallel nature and optimality in terms of the number of gates used for certain processes.[48]

FPGAs originally began as competitors to CPLDs to implement glue logic for printed circuit boards. As their size, capabilities, and speed increased, FPGAs took over additional functions to the point where some are now marketed as full systems on chips (SoCs). Particularly with the introduction of dedicated multipliers into FPGA architectures in the late 1990s, applications which had traditionally been the sole reserve of digital signal processor hardware (DSPs) began to incorporate FPGAs instead.[49][50]

The evolution of FPGAs has motivated an increase in the use of these devices, whose architecture allows the development of hardware solutions optimized for complex tasks, such as 3D MRI image segmentation, 3D discrete wavelet transform, tomographic image reconstruction, or PET/MRI systems.[51][52] The developed solutions can perform intensive computation tasks with parallel processing, are dynamically reprogrammable, and have a low cost, all while meeting the hard real-time requirements associated with medical imaging.

Another trend in the use of FPGAs is hardware acceleration, where one can use the FPGA to accelerate certain parts of an algorithm and share part of the computation between the FPGA and a generic processor. The search engine Bing is noted for adopting FPGA acceleration for its search algorithm in 2014.[53] As of 2018, FPGAs are seeing increased use as AI accelerators including Microsoft's so-termed "Project Catapult"[11] and for accelerating artificial neural networks for machine learning applications.

Traditionally,[when?] FPGAs have been reserved for specific vertical applications where the volume of production is small. For these low-volume applications, the premium that companies pay in hardware cost per unit for a programmable chip is more affordable than the development resources spent on creating an ASIC. As of 2017, new cost and performance dynamics have broadened the range of viable applications.

The company Gigabyte Technology created an i-RAM card that used a Xilinx FPGA although a custom-made chip would be cheaper if made in large quantities. The FPGA was chosen to bring it quickly to market and the initial run was only to be 1000 units making an FPGA the best choice. This device allows people to use computer RAM as a hard drive.[54]

Other uses for FPGAs include:

Security Edit

FPGAs have both advantages and disadvantages as compared to ASICs or secure microprocessors, concerning hardware security. FPGAs' flexibility makes malicious modifications during fabrication a lower risk.[59] Previously, for many FPGAs, the design bitstream was exposed while the FPGA loads it from external memory (typically on every power-on). All major FPGA vendors now offer a spectrum of security solutions to designers such as bitstream encryption and authentication. For example, Altera and Xilinx offer AES encryption (up to 256-bit) for bitstreams stored in an external flash memory. Physical unclonable functions (PUFs) are integrated circuits that have their own unique signatures, due to processing, and can also be used to secure FPGAs while taking up very little hardware space.[60]

FPGAs that store their configuration internally in nonvolatile flash memory, such as Microsemi's ProAsic 3 or Lattice's XP2 programmable devices, do not expose the bitstream and do not need encryption. In addition, flash memory for a lookup table provides single event upset protection for space applications.[clarification needed] Customers wanting a higher guarantee of tamper resistance can use write-once, antifuse FPGAs from vendors such as Microsemi.

With its Stratix 10 FPGAs and SoCs, Altera introduced a Secure Device Manager and physical unclonable functions to provide high levels of protection against physical attacks.[61]

In 2012 researchers Sergei Skorobogatov and Christopher Woods demonstrated that some FPGAs can be vulnerable to hostile intent. They discovered a critical backdoor vulnerability had been manufactured in silicon as part of the Actel/Microsemi ProAsic 3 making it vulnerable on many levels such as reprogramming crypto and access keys, accessing unencrypted bitstream, modifying low-level silicon features, and extracting configuration data.[62]

In 2020 a critical vulnerability (named "Starbleed") was discovered in all Xilinx 7series FPGAs that rendered bitstream encryption useless. There is no workaround. Xilinx did not produce a hardware revision. Ultrascale and later devices, already on the market at the time, were not affected.

Similar technologies Edit

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.[63] More recently, FPGAs such as the Xilinx Virtex-7 or the Altera Stratix 5 have come to rival corresponding ASIC and ASSP ("Application-specific standard part", such as a standalone USB interface chip[64]) solutions by providing significantly reduced power usage, increased speed, lower materials cost, minimal implementation real-estate, and increased possibilities for re-configuration 'on-the-fly'. A design that included 6 to 10 ASICs can now be achieved using only one FPGA.[63]

Advantages of FPGAs include the ability to re-program when already deployed (i.e. "in the field") to fix 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.[65] Some FPGAs have the capability of partial re-configuration that lets one portion of the device be re-programmed while other portions continue running.[66][67]

The primary differences between complex programmable logic devices (CPLDs) and FPGAs are architectural. A CPLD has a comparatively restrictive structure consisting of one or more programmable sum-of-products logic arrays feeding a relatively small number of clocked registers. As a result, CPLDs are less flexible but have the advantage of more predictable timing delays and a higher logic-to-interconnect ratio.[citation needed] FPGA architectures, on the other hand, are dominated by interconnect. This makes them far more flexible (in terms of the range of designs that are practical for implementation on them) but also far more complex to design for, or at least requiring more complex electronic design automation (EDA) software. In practice, the distinction between FPGAs and CPLDs is often one of size as FPGAs are usually much larger in terms of resources than CPLDs. Typically only FPGAs contain more complex embedded functions such as adders, multipliers, memory, and serializer/deserializers. Another common distinction is that CPLDs contain embedded flash memory to store their configuration while FPGAs usually require external non-volatile memory (but not always). When a design requires simple instant-on (logic is already configured at power-up) CPLDs are generally preferred. For most other applications FPGAs are generally preferred. Sometimes both CPLDs and FPGAs are used in a single system design. In those designs, CPLDs generally perform glue logic functions and are responsible for "booting" the FPGA as well as controlling reset and boot sequence of the complete circuit board. Therefore, depending on the application it may be judicious to use both FPGAs and CPLDs in a single design.[68]

See also Edit

References Edit

  1. ^ a b c "FPGA Architecture for the Challenge". toronto.edu. University of Toronto.
  2. ^ Simpson, P. A. (2015). FPGA Design, Best Practices for Team Based Reuse, 2nd edition. Switzerland: Springer International Publishing AG. p. 16. ISBN 978-3-319-17924-7.
  3. ^ a b c d . Archived from the original on April 12, 2007. Retrieved 2013-07-11.
  4. ^ Ron Wilson (21 April 2015). . altera.com. Archived from the original on 2015-04-21.
  5. ^ a b "XCELL issue 32" (PDF). Xilinx. (PDF) from the original on 2011-01-07.
  6. ^ a b c d e f Funding Universe. "Xilinx, Inc." Retrieved January 15, 2009.
  7. ^ Clive Maxfield, Programmable Logic DesignLine, "Xilinx unveil revolutionary 65nm FPGA architecture: the Virtex-5 family 2009-12-25 at the Wayback Machine. May 15, 2006. Retrieved February 5, 2009.
  8. ^ a b Maxfield, Clive (2004). The Design Warrior's Guide to FPGAs: Devices, Tools and Flows. Elsevier. p. 4. ISBN 978-0-7506-7604-5.
  9. ^ "Top FPGA Companies For 2013". sourcetech411.com. 2013-04-28.
  10. ^ "Microsoft Supercharges Bing Search With Programmable Chips". WIRED. 16 June 2014.
  11. ^ a b "Project Catapult". Microsoft Research. July 2018.
  12. ^ Maxfield, Max. "Xilinx UltraScale FPGA Offers 50 Million Equivalent ASIC Gates". www.eetimes.com. EE Times.
  13. ^ a b Dylan McGrath, EE Times, "FPGA Market to Pass $2.7 Billion by '10, In-Stat Says". May 24, 2006. Retrieved February 5, 2009.
  14. ^ a b "Global FPGA Market Analysis And Segment Forecasts To 2020 – FPGA Industry, Outlook, Size, Application, Product, Share, Growth Prospects, Key Opportunities, Dynamics, Trends, Analysis, FPGA Report – Grand View Research Inc". grandviewresearch.com.
  15. ^ Dylan McGrath, EE Times, "Gartner Dataquest Analyst Gives ASIC, FPGA Markets Clean Bill of Health". June 13, 2005. Retrieved February 5, 2009.
  16. ^ "Virtex-4 Family Overview" (PDF). xilinx.com. (PDF) from the original on 2007-11-22. Retrieved 14 April 2018.
  17. ^ Wisniewski, Remigiusz (2009). Synthesis of compositional microprogram control units for programmable devices. Zielona Góra: University of Zielona Góra. p. 153. ISBN 978-83-7481-293-1.[permanent dead link]
  18. ^ Oklobdzija, Vojin G. (2017). Digital Design and Fabrication. CRC Press. ISBN 9780849386046.
  19. ^ . altium.com. Archived from the original on 2016-03-07. Retrieved 2010-06-15.
  20. ^ NASA: FPGA drive strength 2010-12-05 at the Wayback Machine
  21. ^ Mike Thompson (2007-07-02). "Mixed-signal FPGAs provide GREEN POWER". Design & Reuse.
  22. ^ M.b, Swami; V.p, Pawar (2014-07-31). "VLSI DESIGN: A NEW APPROACH". Journal of Intelligence Systems. 4 (1): 60–63. ISSN 2229-7057.
  23. ^ 2. CycloneII Architecture. Altera. February 2007
  24. ^ (PDF). Altera.com. 2008-06-11. Archived from the original (PDF) on 2011-09-26. Retrieved 2013-05-01.
  25. ^ Virtex-4 FPGA User Guide (December 1st, 2008). Xilinx, Inc.
  26. ^ "Xilinx Inc, Form 8-K, Current Report, Filing Date Oct 19, 2011". secdatabase.com. Retrieved May 6, 2018.
  27. ^ "Xilinx Inc, Form 10-K, Annual Report, Filing Date May 31, 2011". secdatabase.com. Retrieved May 6, 2018.
  28. ^ Dean Takahashi, VentureBeat. "Intel connection helped chip startup Tabula raise $108M." May 2, 2011. Retrieved May 13, 2011.
  29. ^ a b Lawrence Latif, The Inquirer. "." October 27, 2010. Retrieved May 12, 2011.
  30. ^ EDN Europe. "Xilinx adopts stacked-die 3D packaging 2011-02-19 at the Wayback Machine." November 1, 2010. Retrieved May 12, 2011.
  31. ^ Saban, Kirk (December 11, 2012). "Xilinx Stacked Silicon Interconnect Technology Delivers Breakthrough FPGA Capacity, Bandwidth, and Power Efficiency" (PDF). xilinx.com. (PDF) from the original on 2010-11-05. Retrieved 2018-11-30.
  32. ^ "Intel Custom Foundry EMIB". Intel.
  33. ^ . digilentinc.com. Archived from the original on 2020-12-26. Retrieved 2020-12-16.
  34. ^ . StreamComputing. 2014-09-16. Archived from the original on 2017-01-01. Retrieved 2015-07-17.
  35. ^ a b "All about FPGAs".
  36. ^ Dillien, Paul (March 6, 2017). EETimes. Archived from the original on January 5, 2019. Retrieved September 7, 2017.
  37. ^ "Xilinx ISE Design Suite". www.xilinx.com. Retrieved 2018-12-01.
  38. ^ "FPGA Design Software - Intel Quartus Prime". Intel. Retrieved 2018-12-01.
  39. ^ (PDF). Archived from the original (PDF) on 2011-04-10.
  40. ^ Tabula to shut down; 120 jobs lost at fabless chip company Silicon Valley Business Journal
  41. ^ "Intel to buy Altera for $16.7 billion in its biggest deal ever". Reuters. June 2015.
  42. ^ "AMD to Acquire Xilinx, Creating the Industry's High Performance Computing Leader". October 2020.
  43. ^ "AMD closes record chip industry deal with estimated $50 billion purchase of Xilinx". Reuters. February 2022.
  44. ^ "Achronix to Use Intel's 22nm Manufacturing". Intel Newsroom. 2010-11-01. Retrieved 2018-12-01.
  45. ^ Maxfield, Clive (16 June 2004). The Design Warrior's Guide to FPGAs. Elsevier Science. ISBN 9780080477138.
  46. ^ "Top FPGA Companies For 2013". SourceTech411. 2013-04-28. Retrieved 2018-12-01.
  47. ^ "QuickLogic — Customizable Semiconductor Solutions for Mobile Devices". www.quicklogic.com. QuickLogic Corporation. Retrieved 2018-10-07.
  48. ^ "Xilinx Inc, Form 8-K, Current Report, Filing Date Apr 26, 2006". secdatabase.com. Retrieved May 6, 2018.
  49. ^ . bdti.com. Archived from the original on 2010-08-21. Retrieved 2018-11-02.
  50. ^ LaPedus, Mark. "Xilinx aims 65-nm FPGAs at DSP applications". EETimes.
  51. ^ Alcaín, Eduardo; Fernández, Pedro R.; Nieto, Rubén; Montemayor, Antonio S.; Vilas, Jaime; Galiana-Bordera, Adrian; Martinez-Girones, Pedro Miguel; Prieto-de-la-Lastra, Carmen; Rodriguez-Vila, Borja; Bonet, Marina; Rodriguez-Sanchez, Cristina (2021-12-15). "Hardware Architectures for Real-Time Medical Imaging". Electronics. 10 (24): 3118. doi:10.3390/electronics10243118. ISSN 2079-9292.
  52. ^ Nagornov, Nikolay N.; Lyakhov, Pavel A.; Valueva, Maria V.; Bergerman, Maxim V. (2022). "RNS-Based FPGA Accelerators for High-Quality 3D Medical Image Wavelet Processing Using Scaled Filter Coefficients". IEEE Access. 10: 19215–19231. doi:10.1109/ACCESS.2022.3151361. ISSN 2169-3536. S2CID 246895876.
  53. ^ Morgan, Timothy Pricket (2014-09-03). "How Microsoft Is Using FPGAs To Speed Up Bing Search". Enterprise Tech. Retrieved 2018-09-18.
  54. ^ "Gigabyte's i-RAM: Affordable Solid State Storage". anandtech.com. 2005-07-25. Retrieved 2020-12-16.
  55. ^ "FPGA development devices for radiation-hardened space applications introduced by Microsemi". www.militaryaerospace.com. 2016-06-03. Retrieved 2018-11-02.
  56. ^ "CrypTech: Building Transparency into Cryptography t" (PDF). (PDF) from the original on 2016-08-07.
  57. ^ Mann, Tobias (2023-03-08). "While Intel XPUs are delayed, here's some more FPGAs to tide you over". The Register.
  58. ^ Leber, Christian; Geib, Benjamin; Litz, Heiner (September 2011). High Frequency Trading Acceleration Using FPGAs. International Conference on Field Programmable Logic and Applications. IEEE. doi:10.1109/FPL.2011.64.
  59. ^ Huffmire, Ted; Brotherton, Brett; Sherwood, Timothy; Kastner, Ryan; Levin, Timothy; Nguyen, Thuy D.; Irvine, Cynthia (2008). "Managing Security in FPGA-Based Embedded Systems". IEEE Design & Test of Computers. 25 (6): 590–598. doi:10.1109/MDT.2008.166. S2CID 115840.
  60. ^ Babaei, Armin; Schiele, Gregor; Zohner, Michael (2022-07-26). "Reconfigurable Security Architecture (RESA) Based on PUF for FPGA-Based IoT Devices". Sensors. 22 (15): 5577. Bibcode:2022Senso..22.5577B. doi:10.3390/s22155577. ISSN 1424-8220. PMC 9331300. PMID 35898079.
  61. ^ . Intrinsic ID. 2015-06-09. Archived from the original on 2015-07-13. Retrieved 2015-07-12.
  62. ^ Skorobogatov, Sergei; Woods, Christopher (2012). "Breakthrough Silicon Scanning Discovers Backdoor in Military Chip". Cryptographic Hardware and Embedded Systems – CHES 2012. Lecture Notes in Computer Science. Vol. 7428. pp. 23–40. doi:10.1007/978-3-642-33027-8_2. ISBN 978-3-642-33026-1.
  63. ^ a b Kuon, Ian; Rose, Jonathan (2006). (PDF). Proceedings of the international symposium on Field programmable gate arrays – FPGA'06. New York, NY: ACM. pp. 21–30. doi:10.1145/1117201.1117205. ISBN 1-59593-292-5. Archived from the original (PDF) on 2010-06-22. Retrieved 2017-10-25.
  64. ^ "ASIC, ASSP, SoC, FPGA – What's the Difference?". eetimes.com.
  65. ^ Cutress, Ian (August 27, 2019). "Xilinx Announces World Largest FPGA: Virtex Ultrascale+ VU19P with 9m Cells". AnandTech.
  66. ^ "AN 818: Static Update Partial Reconfiguration Tutorial: for Intel Stratix 10 GX FPGA Development Board". www.intel.com. Retrieved 2018-12-01.
  67. ^ "Can FPGAs dynamically modify their logic?". Electrical Engineering Stack Exchange. Retrieved 2018-12-01.
  68. ^ "CPLD vs FPGA: Differences between them and which one to use? – Numato Lab Help Center". numato.com. 2017-11-29.

Further reading Edit

  • Sadrozinski, Hartmut F.-W.; Wu, Jinyuan (2010). Applications of Field-Programmable Gate Arrays in Scientific Research. Taylor & Francis. ISBN 978-1-4398-4133-4.
  • Wirth, Niklaus (1995). Digital Circuit Design An Introduction Textbook. Springer. ISBN 978-3-540-58577-0.
  • Mitra, Jubin (2018). "An FPGA-Based Phase Measurement System". IEEE Transactions on Very Large Scale Integration (VLSI) Systems. IEEE. 26: 133–142. doi:10.1109/TVLSI.2017.2758807. S2CID 4920719.
  • Mencer, Oskar et al. (2020). "The history, status, and future of FPGAs". Communications of the ACM. ACM. Vol. 63, No. 10. doi:10.1145/3410669

External links Edit

  • What is an FPGA? on YouTube
  • Migrating from MCU to FPGA

field, programmable, gate, array, fpga, redirects, here, confused, with, flip, chip, grid, array, field, programmable, gate, array, fpga, type, integrated, circuit, that, programmed, reprogrammed, after, manufacturing, consists, array, programmable, logic, blo. FPGA redirects here Not to be confused with Flip chip pin grid array A field programmable gate array FPGA is a type of integrated circuit that can be programmed or reprogrammed after manufacturing It consists of an array of programmable logic block and interconnects that can be configured to perform various digital functions FPGAs are commonly used in applications where flexibility speed and parallel processing capabilities are required such as in telecommunications automotive aerospace and industrial sectors A Stratix IV FPGA from AlteraA Spartan FPGA from XilinxFPGA configuration is generally specified using a hardware description language HDL similar to that used for an application specific integrated circuit ASIC Circuit diagrams were previously used to specify the configuration but this is increasingly rare due to the advent of electronic design automation tools The logic blocks of an FPGA can be configured to perform complex combinational functions or act as simple logic gates like AND and XOR In most FPGAs logic blocks also include memory elements which may be simple flip flops or more complete blocks of memory 1 Many FPGAs can be reprogrammed to implement different 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 2 Contents 1 History 1 1 Growth 1 1 1 Gates 1 1 2 Market size 1 1 3 Design starts 2 Design 2 1 Logic blocks 2 2 Hard blocks 2 3 Soft core 2 4 Integration 2 5 Clocking 2 6 3D architectures 3 Programming 4 Manufacturers 5 Applications 6 Security 7 Similar technologies 8 See also 9 References 10 Further reading 11 External linksHistory EditThe FPGA industry sprouted from programmable read only memory PROM and programmable logic devices PLDs PROMs and PLDs both had the option of being programmed in batches in a factory or in the field field programmable 3 Altera was founded in 1983 and delivered the industry s first reprogrammable logic device in 1984 the EP300 which featured a quartz window in the package that allowed users to shine an ultra violet lamp on the die to erase the EPROM cells that held the device configuration 4 Xilinx produced the first commercially viable field programmable gate array in 1985 3 the XC2064 5 The XC2064 had programmable gates and programmable interconnects between gates the beginnings of a new technology and market 6 The XC2064 had 64 configurable logic blocks CLBs with two three input lookup tables LUTs 7 In 1987 the Naval Surface Warfare Center funded an experiment proposed by Steve Casselman to develop a computer that would implement 600 000 reprogrammable gates Casselman was successful and a patent related to the system was issued in 1992 3 Altera and Xilinx continued unchallenged and quickly grew from 1985 to the mid 1990s when competitors sprouted up eroding a significant portion of their market share By 1993 Actel now Microsemi was serving about 18 percent of the market 6 The 1990s were a period of rapid growth for FPGAs both in circuit sophistication and the volume of production In the early 1990s FPGAs were primarily used in telecommunications and networking By the end of the decade FPGAs found their way into consumer automotive and industrial applications 8 By 2013 Altera 31 percent Actel 10 percent and Xilinx 36 percent together represented approximately 77 percent of the FPGA market 9 Companies like Microsoft have started to use FPGAs to accelerate high performance computationally intensive systems like the data centers that operate their Bing search engine due to the performance per watt advantage FPGAs deliver 10 Microsoft began using FPGAs to accelerate Bing in 2014 and in 2018 began deploying FPGAs across other data center workloads for their Azure cloud computing platform 11 Growth Edit The following timelines indicate progress in different aspects of FPGA design Gates Edit 1987 9 000 gates Xilinx 6 1992 600 000 Naval Surface Warfare Department 3 Early 2000s millions 8 2013 50 million Xilinx 12 Market size Edit 1985 First commercial FPGA Xilinx XC2064 5 6 1987 14 million 6 c 1993 gt 385 million 6 failed verification 2005 1 9 billion 13 2010 estimates 2 75 billion 13 2013 5 4 billion 14 2020 estimate 9 8 billion 14 Design starts Edit A design start is a new custom design for implementation on an FPGA 2005 80 000 15 2008 90 000 16 Design EditContemporary FPGAs have ample logic gates and RAM blocks to implement complex digital computations FPGAs can be used to implement any logical function that an ASIC can perform The ability to update the functionality after shipping partial re configuration of a portion of the design 17 and the low non recurring engineering costs relative to an ASIC design notwithstanding the generally higher unit cost offer advantages for many applications 1 As FPGA designs employ very fast I O rates and bidirectional data buses it becomes a challenge to verify correct timing of valid data within setup time and hold time 18 Floor planning helps resource allocation within FPGAs to meet these timing constraints Some FPGAs have analog features in addition to digital functions The most common analog feature is a programmable slew rate on each output pin allowing the engineer to set low rates on lightly loaded pins that would otherwise ring or couple unacceptably and to set higher rates on heavily loaded high speed channels that would otherwise run too slowly 19 20 Also common are quartz crystal oscillator driver circuitry on chip resistance capacitance oscillators and phase locked loops with embedded voltage controlled oscillators used for clock generation and management as well as for high speed serializer deserializer SERDES transmit clocks and receiver clock recovery Fairly common are differential comparators on input pins designed to be connected to differential signaling channels A few mixed signal FPGAs have integrated peripheral analog to digital converters ADCs and digital to analog converters DACs with analog signal conditioning blocks allowing them to operate as a system on a chip SoC 21 Such devices blur the line between an FPGA which carries digital ones and zeros on its internal programmable interconnect fabric and field programmable analog array FPAA which carries analog values on its internal programmable interconnect fabric Logic blocks Edit Main article Logic block nbsp Simplified example illustration of a logic cell LUT Lookup table FA Full adder DFF D type flip flop The most common FPGA architecture consists of an array of logic blocks called configurable logic blocks CLBs or logic array blocks LABs depending on vendor I O pads and routing channels 1 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 An application circuit must be mapped into an FPGA with adequate resources While the number of logic blocks and I Os required is easily determined from the design the number of routing channels needed may vary considerably even among designs with the same amount of logic For example a crossbar switch requires much more routing than a systolic array with the same gate count Since unused routing channels increase the cost and decrease the performance of the FPGA without providing any benefit FPGA manufacturers try to provide just enough channels so that most designs that will fit in terms of lookup tables LUTs and I Os can be routed This is determined by estimates such as those derived from Rent s rule or by experiments with existing designs 22 In general a logic block consists of a few logical cells A typical cell consists of a 4 input LUT a full adder FA and a D type flip flop The LUT might be split into two 3 input LUTs In normal mode those are combined into a 4 input LUT through the first multiplexer mux In arithmetic mode their outputs are fed to the adder The selection of mode is programmed into the second mux The output can be either synchronous or asynchronous depending on the programming of the third mux In practice entire or parts of the adder are stored as functions into the LUTs in order to save space 23 24 25 Hard blocks Edit Modern FPGA families expand upon the above capabilities to include higher level functionality fixed in silicon Having these common functions embedded in the circuit reduces the area required and gives those functions increased performance compared to building them from logical primitives Examples of these include multipliers generic DSP blocks embedded processors high speed I O logic and embedded memories Higher end FPGAs can contain high speed multi gigabit transceivers and hard IP cores such as processor cores Ethernet medium access control units PCI or PCI Express controllers and external memory controllers These cores exist alongside the programmable fabric but they are built out of transistors instead of LUTs so they have ASIC level performance and power consumption without consuming a significant amount of fabric resources leaving more of the fabric free for the application specific logic The multi gigabit transceivers also contain high performance signal conditioning circuitry along with high speed serializers and deserializers components that cannot be built out of LUTs Higher level physical layer PHY functionality such as line coding may or may not be implemented alongside the serializers and deserializers in hard logic depending on the FPGA Soft core Edit nbsp A Xilinx Zynq 7000 All Programmable System on a ChipAn alternate approach to using hard macro processors is to make use of soft processor IP cores that are implemented within the FPGA logic Nios II MicroBlaze and Mico32 are examples of popular softcore processors Many modern FPGAs are programmed at run time which has led to the idea of reconfigurable computing or reconfigurable systems CPUs that reconfigure themselves to suit the task at hand Additionally new non FPGA architectures are beginning to emerge Software configurable microprocessors such as the Stretch S5000 adopt a hybrid approach by providing an array of processor cores and FPGA like programmable cores on the same chip Integration Edit In 2012 the coarse grained architectural approach was taken a step further by combining the logic blocks and interconnects of traditional FPGAs with embedded microprocessors and related peripherals to form a complete system on a programmable chip Examples of such hybrid technologies can be found in the Xilinx Zynq 7000 all Programmable SoC 26 which includes a 1 0 GHz dual core ARM Cortex A9 MPCore processor embedded within the FPGA s logic fabric 27 or in the Altera Arria V FPGA which includes an 800 MHz dual core ARM Cortex A9 MPCore The Atmel FPSLIC is another such device which uses an AVR processor in combination with Atmel s programmable logic architecture The Microsemi SmartFusion devices incorporate an ARM Cortex M3 hard processor core with up to 512 kB of flash and 64 kB of RAM and analog peripherals such as a multi channel analog to digital converters and digital to analog converters to their flash memory based FPGA fabric citation needed Clocking Edit Most of the logic inside of an FPGA is synchronous circuitry that requires a clock signal FPGAs contain dedicated global and regional routing networks for clock and reset typically implemented as an H tree so they can be delivered with minimal skew FPGAs may contain analog phase locked loop or delay locked loop components to synthesize new clock frequencies and manage jitter Complex designs can use multiple clocks with different frequency and phase relationships each forming separate clock domains These clock signals can be generated locally by an oscillator or they can be recovered from a data stream Care must be taken when building clock domain crossing circuitry to avoid metastability Some FPGAs contain dual port RAM blocks that are capable of working with different clocks aiding in the construction of building FIFOs and dual port buffers that bridge clock domains 3D architectures Edit To shrink the size and power consumption of FPGAs vendors such as Tabula and Xilinx have introduced 3D or stacked architectures 28 29 Following the introduction of its 28 nm 7 series FPGAs Xilinx said that several of the highest density parts in those FPGA product lines will be constructed using multiple dies in one package employing technology developed for 3D construction and stacked die assemblies Xilinx s approach stacks several three or four active FPGA dies side by side on a silicon interposer a single piece of silicon that carries passive interconnect 29 30 The multi die construction also allows different parts of the FPGA to be created with different process technologies as the process requirements are different between the FPGA fabric itself and the very high speed 28 Gbit s serial transceivers An FPGA built in this way is called a heterogeneous FPGA 31 Altera s heterogeneous approach involves using a single monolithic FPGA die and connecting other die technologies to the FPGA using Intel s embedded multi die interconnect bridge EMIB technology 32 Programming EditFurther information Logic synthesis Verification and validation and Place and route To define the behavior of the FPGA the user provides a design in a hardware description language HDL or as a schematic design The HDL form is more suited to work with large structures because it s possible to specify high level functional behavior rather than drawing every piece by hand However schematic entry can allow for easier visualization of a design and its component modules Using an electronic design automation tool a technology mapped netlist is generated The netlist can then be fit to the actual FPGA architecture using a process called place and route usually performed by the FPGA company s proprietary place and route software The user will validate the map place and route results via timing analysis simulation and other verification and validation methodologies Once the design and validation process is complete the binary file generated typically using the FPGA vendor s proprietary software is used to re configure the FPGA This file is transferred to the FPGA CPLD via a serial interface JTAG or to an external memory device like an EEPROM The most common HDLs are VHDL and Verilog as well as extensions such as SystemVerilog However in an attempt to reduce the complexity of designing in HDLs which have been compared to the equivalent of assembly languages there are moves by whom to raise the abstraction level through the introduction of alternative languages National Instruments LabVIEW graphical programming language sometimes referred to as G has an FPGA add in module available to target and program FPGA hardware Verilog was created to simplify the process making HDL more robust and flexible Verilog is currently the most popular Verilog creates a level of abstraction to hide away the details of its implementation Verilog has a C like syntax unlike VHDL 33 To simplify the design of complex systems in FPGAs there exist libraries of predefined complex functions and circuits that have been tested and optimized to speed up the design process These predefined circuits are commonly called intellectual property IP cores and are available from FPGA vendors and third party IP suppliers They are rarely free and typically released under proprietary licenses Other predefined circuits are available from developer communities such as OpenCores typically released under free and open source licenses such as the GPL BSD or similar license and other sources Such designs are known as open source hardware In a typical design flow an FPGA application developer will simulate the design at multiple stages throughout the design process Initially the RTL description in VHDL or Verilog is simulated by creating test benches to simulate the system and observe results Then after the synthesis engine has mapped the design to a netlist the netlist is translated to a gate level description where simulation is repeated to confirm the synthesis proceeded without errors Finally the design is laid out in the FPGA at which point propagation delays can be added and the simulation run again with these values back annotated onto the netlist More recently OpenCL Open Computing Language is being used by programmers to take advantage of the performance and power efficiencies that FPGAs provide OpenCL allows programmers to develop code in the C programming language and target FPGA functions as OpenCL kernels using OpenCL constructs 34 For further information see high level synthesis and C to HDL Most FPGAs rely on an SRAM based approach to be programmed These FPGAs are in system programmable and re programmable but require external boot devices For example flash memory or EEPROM devices may often load contents into internal SRAM that controls routing and logic The SRAM approach is based on CMOS Rarer alternatives to the SRAM approach include Fuse one time programmable Bipolar Obsolete Antifuse one time programmable CMOS Examples Actel SX and Axcelerator families Quicklogic Eclipse II family 35 PROM programmable read only memory technology One time programmable because of plastic packaging Obsolete EPROM erasable programmable read only memory technology One time programmable but with window can be erased with ultraviolet UV light CMOS Obsolete EEPROM electrically erasable 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 Example Actel ProASIC family 35 Manufacturers EditIn 2016 long time industry rivals Xilinx now part of AMD and Altera now an Intel subsidiary were the FPGA market leaders 36 At that time they controlled nearly 90 percent of the market Both Xilinx now AMD and Altera now Intel provide proprietary electronic design automation software for Windows and Linux ISE Vivado and Quartus which enables engineers to design analyze simulate and synthesize compile their designs 37 38 In March 2010 Tabula announced their FPGA technology that uses time multiplexed logic and interconnect that claims potential cost savings for high density applications 39 On March 24 2015 Tabula officially shut down 40 On June 1 2015 Intel announced it would acquire Altera for approximately 16 7 billion and completed the acquisition on December 30 2015 41 On October 27 2020 AMD announced it would acquire Xilinx 42 and completed the acquisition valued at about 50 billion in February 2022 43 Other manufacturers include Achronix manufacturing SRAM based FPGAS with 1 5 GHz fabric speed 44 Altium provides system on FPGA hardware software design environment 45 Efinix offers small to medium sized FPGAs They combine logic and routing interconnects into a configurable XLR cell 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 Lattice Semiconductor which manufactures low power SRAM based FPGAs featuring integrated configuration flash instant on and live reconfiguration SiliconBlue Technologies which provides extremely low power SRAM based FPGAs with optional integrated nonvolatile configuration memory acquired by Lattice in 2011 Microchip 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 clarification needed mentioned above 46 acquired by Microchip in 2016 QuickLogic 47 which manufactures Ultra Low Power Sensor Hubs extremely low powered low density SRAM based FPGAs with display bridges MIPI amp RGB inputs MIPI RGB and LVDS outputsApplications EditSee also Hardware acceleration An FPGA can be used to solve any problem which is computable This is trivially proven by the fact that FPGAs can be used to implement a soft microprocessor such as the Xilinx MicroBlaze or Altera Nios II Their advantage lies in that they are significantly faster for some applications because of their parallel nature and optimality in terms of the number of gates used for certain processes 48 FPGAs originally began as competitors to CPLDs to implement glue logic for printed circuit boards As their size capabilities and speed increased FPGAs took over additional functions to the point where some are now marketed as full systems on chips SoCs Particularly with the introduction of dedicated multipliers into FPGA architectures in the late 1990s applications which had traditionally been the sole reserve of digital signal processor hardware DSPs began to incorporate FPGAs instead 49 50 The evolution of FPGAs has motivated an increase in the use of these devices whose architecture allows the development of hardware solutions optimized for complex tasks such as 3D MRI image segmentation 3D discrete wavelet transform tomographic image reconstruction or PET MRI systems 51 52 The developed solutions can perform intensive computation tasks with parallel processing are dynamically reprogrammable and have a low cost all while meeting the hard real time requirements associated with medical imaging Another trend in the use of FPGAs is hardware acceleration where one can use the FPGA to accelerate certain parts of an algorithm and share part of the computation between the FPGA and a generic processor The search engine Bing is noted for adopting FPGA acceleration for its search algorithm in 2014 53 As of 2018 update FPGAs are seeing increased use as AI accelerators including Microsoft s so termed Project Catapult 11 and for accelerating artificial neural networks for machine learning applications Traditionally when FPGAs have been reserved for specific vertical applications where the volume of production is small For these low volume applications the premium that companies pay in hardware cost per unit for a programmable chip is more affordable than the development resources spent on creating an ASIC As of 2017 update new cost and performance dynamics have broadened the range of viable applications The company Gigabyte Technology created an i RAM card that used a Xilinx FPGA although a custom made chip would be cheaper if made in large quantities The FPGA was chosen to bring it quickly to market and the initial run was only to be 1000 units making an FPGA the best choice This device allows people to use computer RAM as a hard drive 54 Other uses for FPGAs include Space i e with radiation hardening 55 Hardware security modules 56 High frequency trading 57 58 Security EditFPGAs have both advantages and disadvantages as compared to ASICs or secure microprocessors concerning hardware security FPGAs flexibility makes malicious modifications during fabrication a lower risk 59 Previously for many FPGAs the design bitstream was exposed while the FPGA loads it from external memory typically on every power on All major FPGA vendors now offer a spectrum of security solutions to designers such as bitstream encryption and authentication For example Altera and Xilinx offer AES encryption up to 256 bit for bitstreams stored in an external flash memory Physical unclonable functions PUFs are integrated circuits that have their own unique signatures due to processing and can also be used to secure FPGAs while taking up very little hardware space 60 FPGAs that store their configuration internally in nonvolatile flash memory such as Microsemi s ProAsic 3 or Lattice s XP2 programmable devices do not expose the bitstream and do not need encryption In addition flash memory for a lookup table provides single event upset protection for space applications clarification needed Customers wanting a higher guarantee of tamper resistance can use write once antifuse FPGAs from vendors such as Microsemi With its Stratix 10 FPGAs and SoCs Altera introduced a Secure Device Manager and physical unclonable functions to provide high levels of protection against physical attacks 61 In 2012 researchers Sergei Skorobogatov and Christopher Woods demonstrated that some FPGAs can be vulnerable to hostile intent They discovered a critical backdoor vulnerability had been manufactured in silicon as part of the Actel Microsemi ProAsic 3 making it vulnerable on many levels such as reprogramming crypto and access keys accessing unencrypted bitstream modifying low level silicon features and extracting configuration data 62 In 2020 a critical vulnerability named Starbleed was discovered in all Xilinx 7series FPGAs that rendered bitstream encryption useless There is no workaround Xilinx did not produce a hardware revision Ultrascale and later devices already on the market at the time were not affected Similar technologies EditHistorically 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 63 More recently FPGAs such as the Xilinx Virtex 7 or the Altera Stratix 5 have come to rival corresponding ASIC and ASSP Application specific standard part such as a standalone USB interface chip 64 solutions by providing significantly reduced power usage increased speed lower materials cost minimal implementation real estate and increased possibilities for re configuration on the fly A design that included 6 to 10 ASICs can now be achieved using only one FPGA 63 Advantages of FPGAs include the ability to re program when already deployed i e in the field to fix 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 65 Some FPGAs have the capability of partial re configuration that lets one portion of the device be re programmed while other portions continue running 66 67 The primary differences between complex programmable logic devices CPLDs and FPGAs are architectural A CPLD has a comparatively restrictive structure consisting of one or more programmable sum of products logic arrays feeding a relatively small number of clocked registers As a result CPLDs are less flexible but have the advantage of more predictable timing delays and a higher logic to interconnect ratio citation needed FPGA architectures on the other hand are dominated by interconnect This makes them far more flexible in terms of the range of designs that are practical for implementation on them but also far more complex to design for or at least requiring more complex electronic design automation EDA software In practice the distinction between FPGAs and CPLDs is often one of size as FPGAs are usually much larger in terms of resources than CPLDs Typically only FPGAs contain more complex embedded functions such as adders multipliers memory and serializer deserializers Another common distinction is that CPLDs contain embedded flash memory to store their configuration while FPGAs usually require external non volatile memory but not always When a design requires simple instant on logic is already configured at power up CPLDs are generally preferred For most other applications FPGAs are generally preferred Sometimes both CPLDs and FPGAs are used in a single system design In those designs CPLDs generally perform glue logic functions and are responsible for booting the FPGA as well as controlling reset and boot sequence of the complete circuit board Therefore depending on the application it may be judicious to use both FPGAs and CPLDs in a single design 68 See also Edit nbsp Electronics portalFPGA Mezzanine Card List of HDL simulatorsReferences Edit a b c FPGA Architecture for the Challenge toronto edu University of Toronto Simpson P A 2015 FPGA Design Best Practices for Team Based Reuse 2nd edition Switzerland Springer International Publishing AG p 16 ISBN 978 3 319 17924 7 a b c d History of FPGAs Archived from the original on April 12 2007 Retrieved 2013 07 11 Ron Wilson 21 April 2015 In the Beginning altera com Archived from the original on 2015 04 21 a b XCELL issue 32 PDF Xilinx Archived PDF from the original on 2011 01 07 a b c d e f Funding Universe Xilinx Inc Retrieved January 15 2009 Clive Maxfield Programmable Logic DesignLine Xilinx unveil revolutionary 65nm FPGA architecture the Virtex 5 family Archived 2009 12 25 at the Wayback Machine May 15 2006 Retrieved February 5 2009 a b Maxfield Clive 2004 The Design Warrior s Guide to FPGAs Devices Tools and Flows Elsevier p 4 ISBN 978 0 7506 7604 5 Top FPGA Companies For 2013 sourcetech411 com 2013 04 28 Microsoft Supercharges Bing Search With Programmable Chips WIRED 16 June 2014 a b Project Catapult Microsoft Research July 2018 Maxfield Max Xilinx UltraScale FPGA Offers 50 Million Equivalent ASIC Gates www eetimes com EE Times a b Dylan McGrath EE Times FPGA Market to Pass 2 7 Billion by 10 In Stat Says May 24 2006 Retrieved February 5 2009 a b Global FPGA Market Analysis And Segment Forecasts To 2020 FPGA Industry Outlook Size Application Product Share Growth Prospects Key Opportunities Dynamics Trends Analysis FPGA Report Grand View Research Inc grandviewresearch com Dylan McGrath EE Times Gartner Dataquest Analyst Gives ASIC FPGA Markets Clean Bill of Health June 13 2005 Retrieved February 5 2009 Virtex 4 Family Overview PDF xilinx com Archived PDF from the original on 2007 11 22 Retrieved 14 April 2018 Wisniewski Remigiusz 2009 Synthesis of compositional microprogram control units for programmable devices Zielona Gora University of Zielona Gora p 153 ISBN 978 83 7481 293 1 permanent dead link Oklobdzija Vojin G 2017 Digital Design and Fabrication CRC Press ISBN 9780849386046 FPGA Signal Integrity tutorial altium com Archived from the original on 2016 03 07 Retrieved 2010 06 15 NASA FPGA drive strength Archived 2010 12 05 at the Wayback Machine Mike Thompson 2007 07 02 Mixed signal FPGAs provide GREEN POWER Design amp Reuse M b Swami V p Pawar 2014 07 31 VLSI DESIGN A NEW APPROACH Journal of Intelligence Systems 4 1 60 63 ISSN 2229 7057 2 CycloneII Architecture Altera February 2007 Documentation Stratix IV Devices PDF Altera com 2008 06 11 Archived from the original PDF on 2011 09 26 Retrieved 2013 05 01 Virtex 4 FPGA User Guide December 1st 2008 Xilinx Inc Xilinx Inc Form 8 K Current Report Filing Date Oct 19 2011 secdatabase com Retrieved May 6 2018 Xilinx Inc Form 10 K Annual Report Filing Date May 31 2011 secdatabase com Retrieved May 6 2018 Dean Takahashi VentureBeat Intel connection helped chip startup Tabula raise 108M May 2 2011 Retrieved May 13 2011 a b Lawrence Latif The Inquirer FPGA manufacturer claims to beat Moore s Law October 27 2010 Retrieved May 12 2011 EDN Europe Xilinx adopts stacked die 3D packaging Archived 2011 02 19 at the Wayback Machine November 1 2010 Retrieved May 12 2011 Saban Kirk December 11 2012 Xilinx Stacked Silicon Interconnect Technology Delivers Breakthrough FPGA Capacity Bandwidth and Power Efficiency PDF xilinx com Archived PDF from the original on 2010 11 05 Retrieved 2018 11 30 Intel Custom Foundry EMIB Intel Battle Over the FPGA VHDL vs Verilog Who is the True Champ digilentinc com Archived from the original on 2020 12 26 Retrieved 2020 12 16 Why use OpenCL on FPGAs StreamComputing 2014 09 16 Archived from the original on 2017 01 01 Retrieved 2015 07 17 a b All about FPGAs Dillien Paul March 6 2017 And the Winner of Best FPGA of 2016 is EETimes Archived from the original on January 5 2019 Retrieved September 7 2017 Xilinx ISE Design Suite www xilinx com Retrieved 2018 12 01 FPGA Design Software Intel Quartus Prime Intel Retrieved 2018 12 01 Tabula s Time Machine Micro Processor Report PDF Archived from the original PDF on 2011 04 10 Tabula to shut down 120 jobs lost at fabless chip company Silicon Valley Business Journal Intel to buy Altera for 16 7 billion in its biggest deal ever Reuters June 2015 AMD to Acquire Xilinx Creating the Industry s High Performance Computing Leader October 2020 AMD closes record chip industry deal with estimated 50 billion purchase of Xilinx Reuters February 2022 Achronix to Use Intel s 22nm Manufacturing Intel Newsroom 2010 11 01 Retrieved 2018 12 01 Maxfield Clive 16 June 2004 The Design Warrior s Guide to FPGAs Elsevier Science ISBN 9780080477138 Top FPGA Companies For 2013 SourceTech411 2013 04 28 Retrieved 2018 12 01 QuickLogic Customizable Semiconductor Solutions for Mobile Devices www quicklogic com QuickLogic Corporation Retrieved 2018 10 07 Xilinx Inc Form 8 K Current Report Filing Date Apr 26 2006 secdatabase com Retrieved May 6 2018 Publications and Presentations bdti com Archived from the original on 2010 08 21 Retrieved 2018 11 02 LaPedus Mark Xilinx aims 65 nm FPGAs at DSP applications EETimes Alcain Eduardo Fernandez Pedro R Nieto Ruben Montemayor Antonio S Vilas Jaime Galiana Bordera Adrian Martinez Girones Pedro Miguel Prieto de la Lastra Carmen Rodriguez Vila Borja Bonet Marina Rodriguez Sanchez Cristina 2021 12 15 Hardware Architectures for Real Time Medical Imaging Electronics 10 24 3118 doi 10 3390 electronics10243118 ISSN 2079 9292 Nagornov Nikolay N Lyakhov Pavel A Valueva Maria V Bergerman Maxim V 2022 RNS Based FPGA Accelerators for High Quality 3D Medical Image Wavelet Processing Using Scaled Filter Coefficients IEEE Access 10 19215 19231 doi 10 1109 ACCESS 2022 3151361 ISSN 2169 3536 S2CID 246895876 Morgan Timothy Pricket 2014 09 03 How Microsoft Is Using FPGAs To Speed Up Bing Search Enterprise Tech Retrieved 2018 09 18 Gigabyte s i RAM Affordable Solid State Storage anandtech com 2005 07 25 Retrieved 2020 12 16 FPGA development devices for radiation hardened space applications introduced by Microsemi www militaryaerospace com 2016 06 03 Retrieved 2018 11 02 CrypTech Building Transparency into Cryptography t PDF Archived PDF from the original on 2016 08 07 Mann Tobias 2023 03 08 While Intel XPUs are delayed here s some more FPGAs to tide you over The Register Leber Christian Geib Benjamin Litz Heiner September 2011 High Frequency Trading Acceleration Using FPGAs International Conference on Field Programmable Logic and Applications IEEE doi 10 1109 FPL 2011 64 Huffmire Ted Brotherton Brett Sherwood Timothy Kastner Ryan Levin Timothy Nguyen Thuy D Irvine Cynthia 2008 Managing Security in FPGA Based Embedded Systems IEEE Design amp Test of Computers 25 6 590 598 doi 10 1109 MDT 2008 166 S2CID 115840 Babaei Armin Schiele Gregor Zohner Michael 2022 07 26 Reconfigurable Security Architecture RESA Based on PUF for FPGA Based IoT Devices Sensors 22 15 5577 Bibcode 2022Senso 22 5577B doi 10 3390 s22155577 ISSN 1424 8220 PMC 9331300 PMID 35898079 EETimes on PUF Security features for non security experts Intrinsic ID Intrinsic ID 2015 06 09 Archived from the original on 2015 07 13 Retrieved 2015 07 12 Skorobogatov Sergei Woods Christopher 2012 Breakthrough Silicon Scanning Discovers Backdoor in Military Chip Cryptographic Hardware and Embedded Systems CHES 2012 Lecture Notes in Computer Science Vol 7428 pp 23 40 doi 10 1007 978 3 642 33027 8 2 ISBN 978 3 642 33026 1 a b Kuon Ian Rose Jonathan 2006 Measuring the gap between FPGAs and ASICs PDF Proceedings of the international symposium on Field programmable gate arrays FPGA 06 New York NY ACM pp 21 30 doi 10 1145 1117201 1117205 ISBN 1 59593 292 5 Archived from the original PDF on 2010 06 22 Retrieved 2017 10 25 ASIC ASSP SoC FPGA What s the Difference eetimes com Cutress Ian August 27 2019 Xilinx Announces World Largest FPGA Virtex Ultrascale VU19P with 9m Cells AnandTech AN 818 Static Update Partial Reconfiguration Tutorial for Intel Stratix 10 GX FPGA Development Board www intel com Retrieved 2018 12 01 Can FPGAs dynamically modify their logic Electrical Engineering Stack Exchange Retrieved 2018 12 01 CPLD vs FPGA Differences between them and which one to use Numato Lab Help Center numato com 2017 11 29 Further reading EditSadrozinski Hartmut F W Wu Jinyuan 2010 Applications of Field Programmable Gate Arrays in Scientific Research Taylor amp Francis ISBN 978 1 4398 4133 4 Wirth Niklaus 1995 Digital Circuit Design An Introduction Textbook Springer ISBN 978 3 540 58577 0 Mitra Jubin 2018 An FPGA Based Phase Measurement System IEEE Transactions on Very Large Scale Integration VLSI Systems IEEE 26 133 142 doi 10 1109 TVLSI 2017 2758807 S2CID 4920719 Mencer Oskar et al 2020 The history status and future of FPGAs Communications of the ACM ACM Vol 63 No 10 doi 10 1145 3410669External links EditWhat is an FPGA on YouTube Migrating from MCU to FPGA Retrieved from https en wikipedia org w index php title Field programmable gate array amp oldid 1181450815, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.