Programmable logic device is the name used to describe mainly two types of chips—complex programmable logic devices (CPLDs) and field programmable gate arrays (FPGAs).
“Programmable integrated circuits (ICs) were initially simple, logic based devices,” says Giles Peckham of Xilinx. But now the technology has advanced to a level where programmable ICs that we get these days are highly integrated and have a reduced footprint.
As in most other fields of electronics, integration and size reduction are the two major trends that manufacturers are working on.
Integrating multiple features. “An exciting development in the field of programmable ICs was the release of flash based FPGA with built-in ADCs, DSP blocks, embedded internal memory and external memory,” observes Natarajan MM of Arrow Asia-Pacific. This product caters to the mass market and opens up new markets and new segments, like automotive, industrial, the Internet of Things (IoT) and consumer electronics. He adds, “More integration of hard system/IP blocks, like hard floating point DSP blocks, high-speed SERDES (serialisers/deserialisers), hard memory blocks, analogue-to-digital converters (ADCs) and 32-bit/64-bit ARM processors, is also seen.”
Integration of the processor into an FPGA takes it to the level of a programmable system on chip (SoC). This integration allows for faster system performance and greater flexibility, and allows for designers to differentiate their end-product by customising both hardware and software. It also reduces system cost and increases productivity for designers.
Powering SoMs. In an interaction with Dilin Anand of EFY (featured in this issue of EFY), Avnet’s Bryan Fletcher, technology director for global technical marketing, and Ramani Sundaresan, managing director for India, had mentioned the immense possibilities open to a design engineer when using system on modules (SoMs)/computer on modules (CoMs), powered by FPGAs. With sequential processing capabilities of SoMs and broad massive parallel programmable logic processing capabilities of FPGAs, a programmable SoM powered by an FPGA has both sequential processing and massive parallel processing combined together in a single system. Moreover, this is tightly coupled with thousands of connections internal to the chip. So you get the benefits of a processor and that of the programmable logic, using which you can accelerate the most critical tasks, and you have these very tightly coupled inside one package. Examples of such boards are ZedBoard, MicroZed and PicoZed from Avnet, Miami SoM from Topic Embedded Products and MitySOM from Critical Links.
An interesting example of an FPGA based SoM application is sensor fusion, where inputs from different types of sensors with different interfaces and different communication protocols are processed in real-time. The processor manages all incoming data sequentially and the programmable IC processes all these inputs in parallel in real-time.
Packaging. The density of an IC package is growing. Bigger designs are made possible with smaller chips. With increased density, the number of chips required reduces. This reduces interconnectivity, thereby decreasing the complexity of the entire design, increasing flexibility and offering better clock timings.
Seamless migration. One feature programmable IC firms offer is easy migration between different models of the same brand. This gives the user the possibility to upgrade from or replace an older, low-end version to the latest, mid-range or high-end version of FPGA.
Major enhancements have been made in software tools for programmable devices. The software is now available with numerous built-in features that save a designer’s time in repeating the design process. Such advanced tools take care of so many factors that make the software much easier to use and increase the designers’ productivity by better reporting and increased performance, including common connectivity blocks to accelerate development cycle. Software flow for programmable devices is also becoming more flexible by allowing designers to adopt their own flow or architectures, like MATLAB/Simulink, ARM DS5, OpenCL and high-level synthesis (HLS).