History of FPGA and Its Invention by Xilinx

Semiconductor Devices which are founded around a matrix of configurable logic blocks (CLBs) and linked through programmable interconnects known as Field Programmable Gate Arrays (FPGAs). These semiconductors can be reprogrammed for the intended applications and operational necessities after manufacture. Because of this distinctive feature, FPGAs are different from Application Specific Integrated Circuits (ASICs). ASICs are custom made for particular applications. Though one-time programmable (OTP) FPGAs are there, most types are based on SRAM which can be reprogrammed as the design advances.

 

ASIC and FPGAs have various value propositions, and they require to be carefully assessed before choosing anyone over the other. Information is easily available about comparison between these two technologies. Today’s FPGAs thrust the 500MHz performance hurdle without any problem, though FPGAs used to be chosen for lower volume/speed/complexity design traditionally. With unprecedented logic density increases and a host of other features, such as embedded processors, DSP blocks, clocking, and high-speed serial at ever lower price points, FPGAs are an enthralling choice for nearly any type of design.

 

PROM (Programmable Logic Devices) and PLD (Programmable Logic Devices) are the two fields which FPGA industry germinated from. Both of these had the course of action of being programmed in groups in a factory of in the field (in case of the field programmable). Nevertheless, programmable logic was permanently connected within logic gates.

 

At the last of 1980s, Steve Casselman proposed for an experiment to build a computer which would apply six lacs re-programmable gates. This experiment was funded by the Naval Surface Warfare Center. A patent concerned to the system was issued in 1992 after a successful test by Casselman.

 

Patents were awarded to David W. Page and LuVerne R. Peterson in 1985 in which many of the industry’s foundational concepts and technologies for programmable logic arrays, gates, and logic blocks were established.

 

In 1983, Altera was established and brought the industry’s maiden reprogrammable logic device in 1984 – the EP300–which had a extra feature of quartz window in the package which allowed users to shine an ultra-violet lamp on the die to erase the EPROM cells that held the device configuration.

 

The XC2064- the first commercially viable field-programmable gate array invented in 1985 by Xilinx co-founders Ross Freeman and Bernard Vonderschmitt.

 

From technical aspect, any computable problem can be solved using field programmable gate arrays. It is trivially cleared by the reality that a soft microprocessor can be implemented by FPGA. Their benefit keeps in that they are sometimes notably quicker for a number of applications because of their parallel characteristic and optimality in terms of the number of gates utilized for a particular method.

 

FPGAs are perfectly suitable for various markets. Being the pioneer in the industry, Xilinx offers extensive solutions comprising FPGA devices, advanced software, and configurable, ready-to-use IP cores for markets and applications such as: Aerospace & Defense, ASIC Prototyping, Audio, Automotive, Broadcast, Consumer Electronics, Data Center, High Performance Computing and Data Storage, Industrial, Medical, Security, Video and image processing, wired communication and wireless communication.

FPGA Design & Programming and Comparison to ASIC

A schematic design or a hardware description language (HDL) is provided by the user to define the behavior of the FPGA. The HDL form should be used to work with huge structures because it is feasible to exactly specify them by numbers rather than having to draw every piece manually. On the other hand, simpler visualization of a design is the main advantage of schematic entry.

 

Then, utilizing an electronic design automation tool, a technology-mapped netlist is created. The netlist can then be fitted to the real FPGA architecture using a method called place-and-route, usually executed 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 methodologies. Once the design and validation process is done, the binary file generated (also using the FPGA company’s proprietary software) is used to (re)configure the FPGA. This file is shifted to the FPGA/CPLD via a serial interface (JTAG) or to an external memory device.

 

VHDL and Verilog are the most common HDLs, though in order to minimize the complexity of designing in HDLs, which are in comparison to the equiponderant to the assembly languages, there are steps to increase the abstractiveness level through the introduction of substitute languages. For targeting and programming FPGA hardware, an FPGA add-in module is available to National Instruments’ LabVIEW graphical programming language (sometimes referred to as “G”).

 

Formerly, FPGAs (Field programmable Gate Array) lagged behind than their rigid ASIC (Application-specific integrated circuit) peers in terms of operational speed, energy efficiency and overall functionality. It was demonstrated by an older research that designs executed on FPGAs require on an average 40 times as much area, pull 12 times as much dynamic power, and achieve one third the speed of resembling ASIC executions. In the modern days, FPGAs like Virtex-7 from Xilinx or Stratix 5 from Altera have taken place to contend with resembling ASIC and ASSP solutions by providing notably minimized power, extended speed, and decreased cost of materials, least execution real-estate and expanded likelihood for re-configuration ‘on-the-fly’. A design can now be attained using just one FPGA where 6-10 ASIC may have been used in the same design in the past.

 

Conveniences of FPGAs comprise the facility to reprogram in the area to fix bugs, and can comprise a briefer time for marketing and lesser non-recurring engineering expenses. A moderate road can be taken by the vendors by developing their hardware on common FPGAs, but manufacture their ultimate version as an ASIC. As a result of this, it cannot be modified any longer after the design has been implemented.

 

Specified uses of FPGAs comprise ASIC prototyping, digital signal processing, computer hardware emulation, software-defined radio, medical imaging, bioinformatics, computer vision, speech identification, cryptography, metal detection, radio astronomy and an increasing extent of other areas.

 

In the beginning, FPGAs started as challengers to CPLDs and contended in an analogous space, that of glue logic for PCBs. As their size, capacity, and speed enhanced, they started to takeover bigger and bigger functions to the point where few are now marketed as complete systems on chips (SoC). Especially with the launch of dedicated multipliers into FPGA architectures in the late 1990s, applications which had conventionally been the only reserve of DSPs started to incorporate FPGAs instead.

 

One more tendency on the usage of FPGAs is hardware acceleration, where one can use the FPGA to accelerate particular parts of an algorithm and share part of the computation between the FPGA and a general processor.

FPGA Design & Programming and Comparison to ASIC

A schematic design or a hardware description language (HDL) is provided by the user to define the behavior of the FPGA. The HDL form should be used to work with huge structures because it is feasible to exactly specify them by numbers rather than having to draw every piece manually. On the other hand, simpler visualization of a design is the main advantage of schematic entry.

 

Then, utilizing an electronic design automation tool, a technology-mapped netlist is created. The netlist can then be fitted to the real FPGA architecture using a method called place-and-route, usually executed 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 methodologies. Once the design and validation process is done, the binary file generated (also using the FPGA company’s proprietary software) is used to (re)configure the FPGA. This file is shifted to the FPGA/CPLD via a serial interface (JTAG) or to an external memory device.

 

VHDL and Verilog are the most common HDLs, though in order to minimize the complexity of designing in HDLs, which are in comparison to the equiponderant to the assembly languages, there are steps to increase the abstractiveness level through the introduction of substitute languages. For targeting and programming FPGA hardware, an FPGA add-in module is available to National Instruments’ LabVIEW graphical programming language (sometimes referred to as “G”).

 

Formerly, FPGAs (Field programmable Gate Array) lagged behind than their rigid ASIC (Application-specific integrated circuit) peers in terms of operational speed, energy efficiency and overall functionality. It was demonstrated by an older research that designs executed on FPGAs require on an average 40 times as much area, pull 12 times as much dynamic power, and achieve one third the speed of resembling ASIC executions. In the modern days, FPGAs like Virtex-7 from Xilinx or Stratix 5 from Altera have taken place to contend with resembling ASIC and ASSP solutions by providing notably minimized power, extended speed, and decreased cost of materials, least execution real-estate and expanded likelihood for re-configuration ‘on-the-fly’. A design can now be attained using just one FPGA where 6-10 ASIC may have been used in the same design in the past.

 

Conveniences of FPGAs comprise the facility to reprogram in the area to fix bugs, and can comprise a briefer time for marketing and lesser non-recurring engineering expenses. A moderate road can be taken by the vendors by developing their hardware on common FPGAs, but manufacture their ultimate version as an ASIC. As a result of this, it cannot be modified any longer after the design has been implemented.

 

Specified uses of FPGAs comprise ASIC prototyping, digital signal processing, computer hardware emulation, software-defined radio, medical imaging, bioinformatics, computer vision, speech identification, cryptography, metal detection, radio astronomy and an increasing extent of other areas.

 

In the beginning, FPGAs started as challengers to CPLDs and contended in an analogous space, that of glue logic for PCBs. As their size, capacity, and speed enhanced, they started to takeover bigger and bigger functions to the point where few are now marketed as complete systems on chips (SoC). Especially with the launch of dedicated multipliers into FPGA architectures in the late 1990s, applications which had conventionally been the only reserve of DSPs started to incorporate FPGAs instead.

 

One more tendency on the usage of FPGAs is hardware acceleration, where one can use the FPGA to accelerate particular parts of an algorithm and share part of the computation between the FPGA and a general processor.

FPGA Design & Programming

A schematic design or a hardware description language (HDL) is provided by the user to define the behavior of the FPGA. The HDL form should be used to work with huge structures because it is feasible to exactly specify them by numbers rather than having to draw every piece manually. On the other hand, simpler visualization of a design is the main advantage of schematic entry.

 

Then, utilizing an electronic design automation tool, a technology-mapped netlist is created. The netlist can then be fitted to the real FPGA architecture using a method called place-and-route, usually executed 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 methodologies. Once the design and validation process is done, the binary file generated (also using the FPGA company’s proprietary software) is used to (re)configure the FPGA. This file is shifted to the FPGA/CPLD via a serial interface (JTAG) or to an external memory device.

 

VHDL and Verilog are the most common HDLs, though in order to minimize the complexity of designing in HDLs, which are in comparison to the equiponderant to the assembly languages, there are steps to increase the abstractiveness level through the introduction of substitute languages. For targeting and programming FPGA hardware, an FPGA add-in module is available to National Instruments’ LabVIEW graphical programming language (sometimes referred to as “G”).

FPGA and it’s Technical Design

Contemporaneous field-programmable gate arrays (FPGAs) have huge provision of logic gates and RAM blocks to execute complicated digital calculations. It is a challenge to verify right timing of valid data within setup time and hold time because FPGA designs employ very fast I/Os and bidirectional data buses. For meeting these time constraints, floor planning enables resources allocation. FPGAs can be used to implement any logical function that an ASIC could perform. The ability to update the functionality after shipping, partial re-configuration of a portion of the design and the low non-recurring engineering costs relative to an ASIC design (notwithstanding the generally higher unit cost), offer advantages for many applications.

 

Some FPGAs have analog features in addition to digital functions. The most common analog feature is programmable slew rate and drive strength on each output pin, allowing the engineer to set slow rates on lightly loaded pins that would otherwise ring or couple unacceptably, and to set stronger, faster rates on heavily loaded pins on high-speed channels that would otherwise run too slowly. Another relatively common analog feature is 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. 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.

Field Programmable Gate Array Applications

From technical aspect, any computable problem can be solved using an FPGA. It is trivially cleared by the reality that a soft microprocessor can be implemented by FPGA. Their benefit keeps in that they are sometimes notably quicker for a number of applications because of their parallel characteristic and optimality in terms of the number of gates utilized for a particular method.

 

Specified uses of FPGAs comprise ASIC prototyping, digital signal processing, computer hardware emulation, software-defined radio, medical imaging, bioinformatics, computer vision, speech identification, cryptography, metal detection, radio astronomy and an increasing extent of other areas.

 

In the beginning, FPGAs started as challengers to CPLDs and contended in an analogous space, that of glue logic for PCBs. As their size, capacity, and speed enhanced, they started to takeover bigger and bigger functions to the point where few are now marketed as complete systems on chips (SoC). Especially with the launch of dedicated multipliers into FPGA architectures in the late 1990s, applications which had conventionally been the only reserve of DSPs started to incorporate FPGAs instead.

 

One more tendency on the usage of FPGAs is hardware acceleration, where one can use the FPGA to accelerate particular parts of an algorithm and share part of the computation between the FPGA and a general processor.

FPGA Design and Programming

A schematic design or a hardware description language (HDL) is provided by the user to define the behavior of the FPGA. The HDL form should be used to work with huge structures because it is feasible to exactly specify them by numbers rather than having to draw every piece manually. On the other hand, simpler visualization of a design is the main advantage of schematic entry.

 

Then, utilizing an electronic design automation tool, a technology-mapped netlist is created. The netlist can then be fitted to the real FPGA architecture using a method called place-and-route, usually executed 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 methodologies. Once the design and validation process is done, the binary file generated (also using the FPGA company’s proprietary software) is used to (re)configure the FPGA. This file is shifted to the FPGA/CPLD via a serial interface (JTAG) or to an external memory device.

 

VHDL and Verilog are the most common HDLs, though in order to minimize the complexity of designing in HDLs, which are in comparison to the equiponderant to the assembly languages, there are steps to increase the abstractiveness level through the introduction of substitute languages. For targeting and programming FPGA hardware, an FPGA add-in module is available to National Instruments’ LabVIEW graphical programming language (sometimes referred to as “G”).