Component-Based Design and Service-Oriented Architectures in Software-Defined Radio
Software-Defined Radio (SDR) is a large field of research, and is rapidly expanding in terms of capabilities and applications. As the number of SDR platforms, deployments, and use-cases grow, interoperability, compatibility, and software re-use becomes more difficult. Additionally, advanced SDR applications require more advanced hardware and software platforms to support them, necessitating intelligent management of resources and functionality. Realizing these goals can be done using the paradigms of Component-Based Design (CBD) and Service-Oriented Architectures (SOAs).
Component-based design has been applied to the field of SDR in the past to varying levels of success. We discuss the benefits of CBD, and how to successfully use CBD for SDR. We assert that by strictly enforcing the principles of CBD, we can achieve a high level of independence from both the hardware and software platforms, and enable component compatibility and interoperability between SDR platforms and deployments. Using CBD, we also achieve the use-case of a fully distributed SDR, where multiple hardware nodes act as one cohesive radio unit.
Applying the concept of service-orientation to SDR is a novel idea, and we discuss how this enables a new radio paradigm in the form of goal-oriented autonomic radios. We define SOAs in the context of SDR, explain how our vision is different than middle-wares like CORBA, describe how SOAs can be used, and discuss the possibilities of autonomic radio systems.
This thesis also presents our work on the Cognitive Radio Open Source Systems (CROSS) project. CROSS is a free and open-source prototype architecture that uses CBD to achieve platform independence and distributed SDR deployments. CROSS also provides an experimental system for using SOAs in SDRs. Using our reference implementation of CROSS, we successfully demonstrated a distributed cognitive radio performing dynamic spectrum access to communicate with another SDR while avoiding an interferer operating in the spectrum.