Embedded Software for Extreme Requirements Pre-Process 20 Terabytes of Raw Data in the Satellite

From Hendrik Härter | Translated by AI 4 min Reading Time

Related Vendor

Pre-processing large amounts of data on site is not only a complex task for software systems. The AI algorithms required for this should work on powerful edge computing systems as well as on embedded platforms in satellites and ground stations.

Agent BigEarth is based on a novel combination of several AI modules that work together as specialized sub-agents.(Image: BIFOLD)
Agent BigEarth is based on a novel combination of several AI modules that work together as specialized sub-agents.
(Image: BIFOLD)

What used to run on mainframe computers now often has to function on resource-limited embedded platforms: from AI inference in satellites to complex routing algorithms in network hardware. The question is how computationally intensive algorithms can be optimized so that they also work reliably on embedded systems with limited computing power and energy budgets. Two current research projects at TU Berlin demonstrate exemplary solutions.

Prof. Dr. Begüm Demir, Head of the Department of Remote Sensing and Research Group Leader at BIFOLD (Berlin Institute for the Foundations of Learning and Data) at TU Berlin, and Prof. Dr. Stefan Schmid, Head of the Department of Internet Architecture and Management, have each been awarded one of the coveted Proof of Concept Grants from the European Research Council (ERC). These grants close the gap between basic research and practical application and help to translate pioneering research findings into concrete social or economic benefits.

Both projects pose particular challenges for embedded software development: the development of a digital, AI-supported assistant requires the optimization of complex algorithms for resource-constrained embedded platforms, while automated tools for resilient communication networks require real-time capable embedded networking software. The two grants are endowed with 150,000 euros each.

AI Inference at the Edge for Satellite Data

With the AI agent Agent BigEarth planned by Begüm Demir, the use of satellite data is about to reach a turning point. At the same time, it poses a complex embedded software challenge. The BIFOLD scientists want to develop Agent BigEarth to make large amounts of complex satellite data accessible not only to experts, but also to interested laypersons. Particularly challenging: the AI modules should work on powerful edge computing systems as well as on embedded platforms in satellites and ground stations.

Copernicus delivers around 20 terabytes of high-resolution earth observation data every day with its Sentinel satellites. These enormous amounts of data require highly optimized embedded software for pre-processing in the satellite itself, as complete transmission to earth is not practicable. The challenge for embedded developers: AI algorithms have to be executed on ARM-based satellite computers with severely limited resources (power consumption, memory, computing power).

Modular Embedded Architecture as the Key

Technically, Agent BigEarth is based on a novel combination of several AI modules that work together as specialized subagents. This is also referred to as a classic embedded architecture pattern. The individual modules perform different tasks and are implemented as separate tasks or threads that are coordinated via inter-process communication (IPC). A central control element acts as a real-time scheduler that coordinates the processes and ensures that complex requests are processed even under hard real-time requirements.

Embedded-specific challenges:

  • Memory management: Efficient memory management for large image data.
  • Power Optimization: Adaptive algorithms depending on the available satellite energy.
  • Fault Tolerance: Robust software for the harsh space environment.
  • Real-Time Constraints: Deterministic response times for time-critical earth observation.

"If the implementation is successful, Agent BigEarth could take on a pioneering role for Europe in AI-supported environmental information," says Begüm Demir. Of particular interest to embedded developers: the optimization techniques developed can be transferred to other resource-constrained AI applications.

Embedded Networking Under Extreme Conditions

Communication networks are a critical infrastructure of our digital society, whose embedded software components have to work under the toughest conditions. In large networks, it is inevitable that connections between network nodes will fail. When this happens, the embedded routing software must find and configure alternative paths in microseconds. However, configuring these rerouting mechanisms is extremely complex and error-prone, as the embedded network processors only have a local view of the overall system.

With his ERC Proof of Concept Grant, Stefan Schmid is developing automated software tools that run directly on embedded network processing units and SDN controllers. These tools improve the resilience of redirection mechanisms against the simultaneous failure of multiple connections and must fulfill hard real-time constraints.

Recursive Algorithms for Embedded Network Processors

A link failure can mean that communication traffic must first be routed in a different direction, i.e. away from the actual destination. Such redirections can be recursive. On the alternative backup path, a further link failure can lead to another alternative path having to be found.(Image: Stefan Schmid)
A link failure can mean that communication traffic must first be routed in a different direction, i.e. away from the actual destination. Such redirections can be recursive. On the alternative backup path, a further link failure can lead to another alternative path having to be found.
(Image: Stefan Schmid)

The software tools are based on a recursive approach: Similar to the return pass game in soccer, embedded routing algorithms initially transport data packets in a different direction if all direct connections to the destination have failed. The particular challenge is that these decisions have to be made by distributed embedded systems in real time, without a global network view.

Subscribe to the newsletter now

Don't Miss out on Our Best Content

By clicking on „Subscribe to Newsletter“ I agree to the processing and use of my data according to the consent form (please expand for details) and accept the Terms of Use. For more information, please see our Privacy Policy. The consent declaration relates, among other things, to the sending of editorial newsletters by email and to data matching for marketing purposes with selected advertising partners (e.g., LinkedIn, Google, Meta)

Unfold for details of your consent

Embedded software requirements:

  • Deterministic Execution: Routing decisions in guaranteed time windows.
  • Memory-Efficient Data Structures: Optimized routing tables for embedded RAM.
  • Distributed Coordination: Synchronization between embedded network nodes without a central instance.
  • Fault-tolerant programming: Software must also function in the event of partial hardware failures.

Professor Schmid's working group is also cooperating with Prof. Dr. Jiri Srba's group at Aalborg University in Denmark and is developing implementations specially optimized for embedded network hardware.

Simulation and Verification on Embedded Target Platforms

The approach also enables efficient "what-if analyses" directly on the embedded target platforms: A system operator can use such in-system simulations to verify whether a current network configuration will work even in the event of failures without jeopardizing the productive system. "Our development will provide a concrete basis for application-ready software that can be used immediately on existing embedded hardware," says Stefan Schmid.

Conclusion: Both projects are examples of how complex algorithms and AI systems can also be implemented on resource-constrained systems using clever embedded software architectures: from satellite computers to network processors. (heh)