By Shavit Baruch
As more people learn about FPGAs, questions often arise as to how this technology works and how its benefits and advantages can be applied to the telecommunications, cloud networking, and other industries. As a company that promotes data plane offload to FPGA, Ethernity receives many questions about this technology. This series of posts is designed to answer some of those frequently asked questions and to serve as a guide to both the basic and more complex aspects of FPGAs.
What exactly is an FPGA?
An FPGA – or field-programmable gate array – is an integrated circuit that offers arrays of logic blocks that can be wired in different configurations, making it programmable “in the field.” It is this programmability that makes it very flexible to meet the needs of telecom service providers, but because it is also a piece of hardware, it offers deterministic performance in a small space and at low power. The technology has its roots in 1985, when Xilinx co-founders Ross Freeman and Bernard Vonderschmitt invented the first commercially viable FPGA.
Who manufactures FPGAs?
There are a number of companies that manufacture FPGAs. The best known among them are Xilinx (with about a 50% market share) and Intel (approximately a 40% market share). Other players in the market include Lattice Semiconductor, Microsemi, Microchip, and Achronix Semiconductor.
Where are FPGAs used?
FPGAs are used in a broad range of industries, from consumer electronics to telecommunications, automobiles, aerospace and defense, and anywhere that efficient data processing is a critical priority. Among these, telecommunications is expected to dominate due to the adoption of advanced and new services such as 5G, which is increasing demand for smart phones and high-speed internet access nearly everywhere.
How is an FPGA different from other options, such as CPUs, ASICs, or NPUs?
When you compare these options, FPGAs on the whole offer the optimal combination of data processing and flexibility. CPUs are somewhat better at control, thanks to their sequential processing capabilities, and ASICs provide the most efficient data processing due to their superior parallel processing. However, FPGAs provide high performance in both areas, as well as added agility and a shorter development cycle because of their programmability. FPGAs also optimize power consumption and space. Overall, FPGAs offer performance similar to ASICs, but are more flexible and cost-effective. Network Processing Units (NPUs) are programmable, but they are increasingly being discontinued because their performance has never lived up to expectations and because, despite their programmability, they quickly become outdated with the latest protocols and standards. Unlike FPGAs, they also are not easily portable between products, releases, or from one vendor to another.
What are the primary advantages of FPGAs?
FPGAs offer an optimal combination of the benefits of ASICs and CPUs. They can provide a higher level of deterministic performance in a smaller space, which offers significant benefits in terms of cost and power reduction when compared with CPU solutions. Their programmability and deterministic performance are their key benefits.
Why is programmability so important?
Programmability allows the hardware to be updated at the same pace as software development. Consider the example of an ASIC that is handling encryption, but a new algorithm is developed that encrypts more securely. With an ASIC, the solution developer would have to commit millions of dollars over multiple years in developing new ASICs that account for that new algorithm. With an FPGA, that upgrade can be accomplished very easily. This aligns very well with the programmable and agile network objectives of service providers.
What are the current top applications for FPGAs?
FPGAs have grown in popularity precisely because they are useful for a wide range of applications. In markets such as telecommunications, gaming, healthcare, and other industries, they are used in digital signal processing, bioinformatics, device controllers, software-defined radio, random logic, ASIC prototyping, medical imaging, computer hardware emulation, integrating multiple SPLDs (simple programmable logic devices), voice recognition, cryptography, filtering, and communication encoding.
What is the outlook for FPGAs in the telecommunications and cloud industries?
In these areas, FPGAs are being used in large quantities to handle acceleration for industry leaders Amazon and Azure, for example. These companies recognize the value of FPGAs in handling the data plane within their data centers. Generally, the cloud industry uses FPGAs for networking and as a foundation for business services and applications delivered via the cloud, such as security, Big Data analytics, and artificial intelligence. Telecommunications companies are using FPGAs for accelerating virtual networking functions that are running on their cores, access networks, and data centers. As telecom companies continue the transition from hardware-based to software-based appliances, FPGAs are being enthusiastically adopted by original device manufacturers for the telecom market.
Ethernity welcomes questions about FPGAs. It’s a topic we love to talk about. We want to spread the word about their value in providing the ever-more-important networking and processing flexibility. If you will be at CloudFest, we welcome you to visit us at Booth H21, so we can answer all your questions.