NASA’s Space Communication and Navigation (SCaN) Space Telecommunications Radio System (STRS) project has developed an STRS architecture standard for software-defined radios (SDRs), an open architecture for NASA space and ground radios.
Currently, most missions either use hardware radios, which cannot be modified once deployed, or SDRs with an architecture that requires dependence on the radio provider and significant effort to add new applications. The development of the Standard is part of the larger STRS program currently underway to define NASA’s application of software-defined, reconfigurable technology to meet future space communications and navigation system needs. Software-based SDRs enable advanced operations that potentially reduce mission life-cycle costs for space or ground platforms. SDR technology allows radios to be reconfigured to perform different functions without the necessity of using multiple radios to accomplish each communication function, enabling radio count reduction to reduce mass and power resources.
The STRS provides a common, consistent framework to abstract the application software from the radio platform hardware to reduce the cost and risk using complex configurable and reprogrammable radio systems across NASA missions. It achieves this objective by defining an architecture that enables the reuse of applications (waveforms and services implemented on the SDR) across heterogeneous SDR platforms and reduce dependence on a single vendor. The Standard provides a detailed description and set of requirements to implement the architecture. The Standard focuses on the key architecture components and subsystems by describing their functionality and interfaces for both the hardware and the software, including the applications.
The STRS Layer Model illustrates the different software elements used in the software execution and defines the application program interface (API) layers between an STRS application and the operating environment (OE), and between the OE and the hardware platform.
The STRS software layers are separated to enable developers to implement the software layers differently according to their requirements while still complying with the STRS architecture. A key aspect is the abstraction of the STRS application, which is either a waveform or service, from the underlying OE software to promote portability of the STRS application. The STRS software architecture uses three primary interfaces (1) the STRS API, (2) the STRS hardware abstraction layer (HAL) specification, and (3) the Portable Operating System Interface (POSIX). The STRS API provides the interfaces that allow applications to be instantiated and use platform services. These APIs also enable communication between STRS applications and the STRS infrastructure. The HAL provides a software view of the specialized hardware by abstracting the physical hardware of interfaces. It is published so that software and configurable hardware design running on the platform’s specialized hardware can integrate with the STRS infrastructure.
Figure 1. STRS Layer Model
The STRS project also provides the infrastructure and guidance for a repository of applications developed for SDRs using the Standard. Adherence to the Standard for the development of SDR platforms and applications and submittal of the applications to the repository will enable the missions to leverage earlier efforts by reusing various software components compliant with the architecture developed in other NASA programs. This will reduce the cost and risk of deploying SDRs for future NASA missions.
In this effort, Glenn has partnered with the Jet Propulsion Lab, Goddard Space Flight Center, Johnson Space Center and NASA Headquarters to form the SDR Architecture Team (SAT). Glenn’s role includes leading the definition of the architecture and technologies and the SDR prototyping. The architecture is then applied to the SDR prototypes for evaluation and refinement of the architecture.