30 Jun AI, Edge Computing Architecture Drive Embedded IoT Developm…
AI support in the cloud and at the edge have furthered embedded IoT development. A platform approach has emerged to span various developer skill sets.
Key takeaways from this article:
- While Cloud and embedded development styles diverge today that could change in the future.
- Field-programmable gate arrays for the cloud and the edge are now part of the embedded IoT discussion.
- The drive toward cloud-oriented embedded IoT development platforms is reshaping industry offerings.
Cloud systems have entered the realm of AI and machine learning, changing the nature of embedded IoT development, which already required an ample mix of skill sets.
As AI work moves to the edge in many Internet of Things deployments, this trend could accelerate, setting the stage for greater development in platform diversity.
Still, all roads continue to go through embedded development. Today, programming embedded devices at the edge of vast global systems remains an art form. Power and memory constraints persist, and latency demands are stringent — measured in milliseconds.
To overcome such hurdles, embedded IoT developers employ simulators, emulators, test beds, software development kits and cloud platforms from both mainline cloud providers or specialists. And their embedded developer ranks still include individuals adept with a soldering iron.
The C language remains a mainstay on embedded microcontrollers, microprocessors, and systems on chip, modules on chips and board-level systems they power. But in the cloud, where compute and storage are almost limitless, the high-level language of Python has encountered success in machine learning development.
When Worlds Collide
Cloud and embedded development styles diverge today. But that could change, according to Chris Shore, director of product marketing at Arm Semiconductors, the design house behind the Arm processor. Shore has a tenure of more than 30 years in embedded development and was one of the first to port Linux to ARM.
“There are two worlds colliding. It involves changes in expertise and changes to working practices,” Shore said. “If you run an analytical machine learning job using microservices on the cloud, you don’t have to care about how much energy it uses, or how much memory you need. But if you put such analytics on an embedded widget, you do have to worry.”
Communications trips between the edge and the cloud are a developer concern as well. Data analyzed at the point of collection can be acted on more quickly; a system need not wait for data to make a round trip to the cloud and back. So AI processing on IoT device modules has garnered attention, he said.
Several semiconductor firms are moving quickly to link AI and machine learning design to embedded systems. Earlier this year Arm, for instance, launched an Ethos-U55 neural processing unit for machine learning processing on the edge.
IoT Rapidly Evolving
Much of what falls under IoT development is familiar to the ranks of embedded developers; device measurements need to be taken, levels need to be judged — these and similar system events kick off other processes, and so on.
And connecting these embedded systems to networks is familiar, too. That is why more than a few veteran embedded developers were unsettled by the publicity generated by the Internet of Things. Count among these Jack Gansalle, independent embedded systems engineer, author and editor of The Embedded Muse newsletter.
“Devices have been connected to the network since the day I started. When IoT emerged, we had been already doing it for 20 years,” Gansalle said.
Yet, the field of embedded IoT is evolving rapidly, and few engineers know the nuances needed for globally networked distributed sensor data processing and analytics. Building from scratch is not an option.
As a result, “the engineers buy connectivity in the form of both software and hardware,” he said. Importantly, the embedded developers focused on operations now find themselves working more closely with IT teams. These teams include cloud developers versed in machine learning and other advanced analytics, Gansalle noted.
Further, he said, real-time operating systems that are bread-and-butter elements of embedded development are adding cloud capabilities.
Cloud platform providers stress the importance of embedded OSes for IoT. Consider, for instance, Amazon Web Services’ increasing activity with Amazon FreeRTOS. For AWS, easing the task of embedded system development is a crucial step to moving its cloud services out onto the Internet of Things.
For its part, Microsoft recently announced Azure RTOS embedded IoT development kits to simplify development. Azure RTOS has grown out of Microsoft’s 2019 purchase of Express Logic. The new kits are supported on development hardware from Microchip Technology, NXP, Qualcomm, Renesas and STMicroelectronics. They form an important interconnect between cloud and embedded computing.
Platforms Show Promise
As AI and machine learning have become part of the embedded IoT discussion, field-programmable gate arrays for the cloud and the edge have entered the mix.
Embedded developers can configure and reconfigure FPGAs, which are highly flexible to support a variety of machine learning models, including convolutional neural networks.
The span of development skills to program these chips for embedded systems can be broad, so tooling must be as well. While dedicated embedded system developers need software development kits, data scientists need machine learning development frameworks, according to Chetan Khona, director for vision, healthcare and science services at FPGA-maker Xilinx.
He said embedded systems that once worked in the field unchanged for 10 years — he cites the photocopier as a classic example — now may be expected to update as regularly as everything else in the digital enterprise.
That has, in Khona’s estimation, created a strong move to development platforms based on standards to handle the different layers of electronics, control, connectivity, security and AI. The goal of the platforms is to eventually unite the work of developers working at different levels of embedded design.
“We find there is no single person making the key development decisions today. There are different personas involved,” Khona said. “There are hardware developers, FPGA developers, system architects,…