Programmable logic can be used to create IoT solutions that can tolerate more power consumption in exchange for optimized processing.
The Internet of Things (IoT) has become the main topic in the technological world; it seems everybody is talking about it as the next wave in electronic systems. The scope of the IoT is so wide now, some have suggested changing the name to the Internet of Everything. We now expect all devices we use in our personal and professional lives to be connected, starting from the obvious ones in smartphones and computers, going through wearables, smart home and security devices, to industrial automation applications, and of course automotive electronics.
Creating devices for the IoT is a big challenge for engineering teams at the design and verification levels, but also at the application and data levels. As all those devices (already estimated to number in the billions, and growing) start generating their data, IoT gateways and infrastructure will need to experience a new revolution. Clouds and data farms will become a common medium not only for data storage and message exchange, but also for processing and analytics which will require much more specialized computing power.
How does FPGA design fit into the IoT? Programmable logic offers a unique opportunity to create IoT solutions that can tolerate more power consumption in exchange for accelerated hardware processing capability optimized to the task – without major investments in an ASIC. A natural first step for FPGA-based solutions on the IoT is a multi-protocol gateway node that gathers data from different sensors and controls actuators at the edge.
With best-of-breed capability for both a processor core and programmable logic, the Xilinx Zynq-7000 All-Programmable SoC is an excellent starting point for higher performance IoT gateway designs. Starting with the TySOM board based on Zynq, Aldec’s FPGA experts have implemented an IoT gateway reference design that aggregates messages coming from edge sensors, processes them, and presents results. This reference design has several goals:
What comes next? The reference design illustrates how edge and gateway tiers of an IoT network are integrated. The questions become: how to deal with all the data ingested, and how to communicate between different gateways distributed across networks, countries, or even continents? The answer is an easily configured infrastructure with scalable data storage and pervasive high-speed access, which brings us to cloud solutions.
Aldec has explored Amazon Web Services (AWS) cloud services in IoT applications; any public cloud implementation could fill a similar role. After registering a Aldec TySOM gateway in the cloud, it opens new possibilities for exchanging IoT messages between different devices quickly and easy.
Very simple examples of cloud-based IoT applications enable lighting based on Bluetooth sensor readings, or generating an alarm based on motion detector alerts. While these simple tasks can be accomplished locally using a home automation system, deploying and managing hundreds or thousands of sensors and actuators – typical of industrial IoT contexts – requires speed and scalability. Gateways deal with localized IoT device networks, while a cloud infrastructure connects them all together and provides network-wide provisioning, maintenance, monitoring, and analytics.
IoT solutions can also be much more complicated. If we add video cameras and object recognition features, not only the size of the data grows, but system throughput requirements increase as well. Providing applicable computing power to service such tasks brings us again to using FPGA technology. Much of the data processing is still done in a CPU, but with increasing needs for higher performance and lower latency some of the CPU functions and algorithms are offloaded to programmable logic for hardware acceleration.
In the Aldec TySOM IoT gateway reference design, using FPGA acceleration in the Xilinx Zynq achieves live 30fps video filtering, speeds not possible using the ARM Cortex-A9 cores inside the Zynq alone. Running sophisticated algorithms at the gateway tier optimizes data sent to the infrastructure tier for further processing and analytics.
For IoT infrastructure, FPGA boards can serve as big data accelerators providing parallel processing and DSP power in addition to regular CPU arrays. This points toward a hybrid cloud implementation, where the public cloud side provides storage, reporting, and presentation, and a private FPGA-based cloud implementation handles real-time analytics. An Aldec HES-7 with Xilinx UltraScale 440 or Virtex-7 2000 FPGAs offers a high bandwidth PCIe interface allowing for 2GB/sec host transfers, with hardware acceleration implemented in the FPGA and connected to PCIe via the well-known AMBA AXI interface.
These are exciting times as we explore using our 30 years of FPGA expertise in new ways. We see how FPGA technology can be used in the IoT gateway and infrastructure tiers, and how these applications can benefit from FPGA power and flexibility. For more information on the TySOM IoT gateway reference design and using the HES-7 in IoT infrastructure, click here.