CSE498, Collaborative Design, Fall 2020
Computer Science and Engineering
Michigan State University

Lockheed Martin Space is one of four subdivisions of Lockheed Martin, an American defense contractor that receives over $40 billion in defense revenue, the most of any defense contractor. Lockheed Martin Space builds and deploys satellites that have various military and commercial applications. SmartSat™ is a suite of tools designed by Lockheed Martin Space to support and deploy software to their satellites.

Lockheed Martin Space’s satellites are constantly gathering data, such as images of Earth’s surface, which then need to be analyzed. Currently, most of this processing occurs on ground stations, which requires massive amounts of data being sent from satellites to earth over very slow network connections. This transfer of data can take hours or even days before it can be fully processed.

Our SmartSat™ Hetergeneous Computing in Space system combats this issue by allowing data to be processed directly on satellites, instead of requiring data to be sent all the way to earth.

Compared to a ground station, a satellite has less computation capacity, and therefore has to utilize its limited hardware in parallel, running multiple applications at the same time on different hardware components.

An integral part of our system is the Accelerator Manager, which decides what hardware should be used to complete certain tasks. Depending on the current status of the satellite, different hardware should be used in different scenarios. Our system assigns tasks to hardware in a way to minimize processing delay.

Our system reduces the time it takes to analyze data from satellites and ensures the hardware is used to its full capacity.

The back-end applications are built using Lockheed Martin’s SmartSat™ SDK. The application uses SYCL and Vitis to run accelerators on available hardware. The software utilizes CPUs, GPUs, Xilinx FPGAs and NVIDIA TX2 boards.