Title: Constellations in the Cloud: Simulating and Emulating Heterogeneous On-board Processing for Distributed Measurement and Multi-Satellite Missions
Presenting Author: Matthew French
Organization: USC / ISI
Co-Author(s): Marco Paolieri, Andrew G. Schmidt, Vivek Venugopalan, Thomas Flatley, Alessandro Geist, Gary Crum, Ved Chirayath, Alan Li

Emerging missions which emphasize distributed measurement and multi-satellite operations are expected to increase onboard computing requirements by an order of magnitude or more. This work presents the Virtual Constellation Engine (VCE), a software framework and run-time system designed to facilitate exploration of different remote sensing constellation and sensor web configurations from an on-board processing perspective, using the cloud. Users can launch heterogeneous constellations, describe different on-board processing configurations, and simulate and verify autonomous operations. System engineers can select different on-board configurations to be emulated on each platform by VCE, such as processor type (e.g., multicore ARM and PowerPC CPUs), memory, interfaces, sensor types, and accelerated computing devices including FPGAs (Xilinx Zynq, UltraScale, Zynq UltraScale+) and GPUs (both server-class such as Nvidia Tesla V100 and embedded-class such as Nvidia Jetson TX2).VCE eases development for applications leveraging complex compute resources and has been demonstrated on Amazon Web Services to provide speedups over 20,000x of state of practice systems. To facilitate application development and mapping to heterogeneous processors the framework provides "Hot & sPyC", a source to source translator to port Python programs for execution on GPUs and FPGAs. A heterogeneous multi-core CPU and FPGA prototype board, SpaceCube3, is being developed and integrated into the emulation framework to support higher fidelity modeling and experimentation. The system will be demonstrated using a state of the art MiDAR application. The VCE will be open sourced to facilitate broader community exploration and generation of new mission concepts.