The commercial success of cellular phone systems during the late 1980s and early 1990
years heralded the wireless revolution that became apparent at the turn of the 21st
century and has led the modern society to a highly interconnected world where ubiquitous
connectivity and mobility are enabled by powerful wireless terminals. Software defined
radio (SDR) technology has played a major role in accelerating the pace at which wireless
capabilities have advanced, in particular over the past 15 years, and SDRs are now
at the core of modern wireless communication systems. In this paper we give an overview
of SDRs that includes a discussion of drivers and technologies that have contributed
to their continuous advancement, and presents the theory needed to understand the
architecture and operation of current SDRs. We also review the choices for SDR platforms
and the programming options that are currently available for SDR research, development,
and teaching, and present case studies illustrating SDR use. Our hope is that the
paper will be useful as a reference to wireless researchers and developers working
in the industry or in academic settings on further advancing and refining the capabilities
of wireless systems.