An Overview of Software Defined Radio Technologies

Petri Isomäki | Nastooh Avessta
An Overview of Software Defined
Radio Technologies
TUCS Technical Report
No 652, December 2004
An Overview of Software Defined
Radio Technologies
Petri Isomäki
University of Turku, Department of Information Technology
Lemminkäisenkatu 14 A, 20520 Turku, Finland
[email protected]
Nastooh Avessta
University of Turku, Department of Information Technology
Lemminkäisenkatu 14 A, 20520 Turku, Finland
[email protected]
TUCS Technical Report
No 652, December 2004
Software Defined Radio is an emerging technology that has been an active research topic for over a decade. The terms software defined radio and software
radio are used to describe radios whose implementation is largely software-based.
These radios are reconfigurable through software updates. There are also wider
definitions of the concept.
Various military software defined radio programs were the pathfinders that
proved the viability of the concept. Latests of these projects have produced radios
that are already replacing legacy systems.
The software radio technology is rapidly advancing, at least on most fronts.
There is an ongoing standardisation process of framework architectures that enable portability of e.g. waveform processing software across radios for various
Software defined radios are beginning to find also commercial potential. When
the software defined radio becomes mainstream, the full potential of adaptability
may create possibilities for new kind of services. From the users’ point of view,
seamless operation across networks, without caring about the underlying technology, would be a very desirable feature.
Keywords: Software Defined Radio (SDR), Radio Frequency (RF) front end,
Analog-to-Digital Converter (ADC), Digital Signal Processor (DSP), Software
Communications Architecture (SCA), SWRadio, programmable, reconfigurable
TUCS Laboratory
Communication Systems Laboratory
Implementation Aspects
2.1 Radio Frequency Front End . . . . . . . . . .
2.1.1 Superheterodyne Architecture . . . .
2.1.2 Direct Conversion Architecture . . .
2.1.3 Tuned RF Receiver . . . . . . . . . .
2.1.4 Other Architectures . . . . . . . . . .
2.2 A/D and D/A Conversion . . . . . . . . . . .
2.2.1 Noise and Distortions in Converters .
2.2.2 Sampling Methods . . . . . . . . . .
2.2.3 Converter Structures . . . . . . . . .
2.3 Digital Processing . . . . . . . . . . . . . . .
2.3.1 Selection of the Processing Hardware
2.3.2 Multirate Processing . . . . . . . . .
2.3.3 Digital Generation of Signals . . . . .
2.3.4 Bandpass Waveform Processing . . .
2.3.5 Baseband Waveform Processing . . .
2.3.6 Bit-stream Processing . . . . . . . .
2.4 Reconfiguration and Resource Management .
2.5 Summary . . . . . . . . . . . . . . . . . . .
3.1 Air Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3 Middleware . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3.1 Model Driven Architecture (MDA) . . . . . . . . . . .
3.3.2 Common Object Request Broker Architecture (CORBA)
3.3.3 Interface Definition Language (IDL) . . . . . . . . . . .
3.3.4 Unified Modeling Language (UML) . . . . . . . . . . .
3.3.5 Extensible Markup Language (XML) . . . . . . . . . .
3.4 Software Communications Architecture (SCA) . . . . . . . . .
3.4.1 Application Layer . . . . . . . . . . . . . . . . . . . .
3.4.2 Waveform Development . . . . . . . . . . . . . . . . .
3.4.3 SCA Reference Implementation (SCARI) . . . . . . . .
3.5 SWRadio . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5.1 SWRadio Platform . . . . . . . . . . . . . . . . . . . .
3.5.2 SWRadio Architecture . . . . . . . . . . . . . . . . . .
3.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Software Defined Radio Projects
4.1 SPEAKeasy . . . . . . . . . . . . . . . . . . . . . . .
4.1.1 SPEAKeasy Phase I . . . . . . . . . . . . . .
4.1.2 SPEAKeasy Phase II . . . . . . . . . . . . . .
4.2 Joint Tactical Radio System (JTRS) . . . . . . . . . .
4.2.1 Background . . . . . . . . . . . . . . . . . . .
4.2.2 Architecture . . . . . . . . . . . . . . . . . . .
4.2.3 Wireless Information Transfer System (WITS)
4.2.4 SDR-3000 . . . . . . . . . . . . . . . . . . .
4.3 Other SDR Projects . . . . . . . . . . . . . . . . . . .
4.3.1 Joint Combat Information Terminal (JCIT) . .
4.3.2 CHARIOT . . . . . . . . . . . . . . . . . . .
4.3.3 SpectrumWare . . . . . . . . . . . . . . . . .
4.3.4 European Perspective: ACTS and IST Projects
4.3.5 GNU Radio . . . . . . . . . . . . . . . . . . .
4.4 Summary . . . . . . . . . . . . . . . . . . . . . . . .
Software defined radio is an emerging technology that is profoundly changing
the radio system engineering. A software defined radio consists of functional
blocks similar to other digital communication systems. However, the software
defined radio concept lays new demands on the architecture in order to be able to
provide multi-band, multi-mode operation and reconfigurability, which are needed
for supporting a configurable set of air interface standards.
This report is organised as follows: Chapter 2 discusses the implementation
aspects of software defined radios. The multi-band, multi-mode operation introduces stringent requirements on the system architecture. To achieve the required
flexibility, the boundary of digital processing should be moved as close as possible to the antenna and application specific integrated circuits should be replaced
with programmable processing elements. The exact point where the conversion
between digital and analog waveforms is done depends on the architecture.
The requirement of supporting multiple frequency bands complicates the design of the RF front end and the A/D and D/A converters. The RF front end should
be adjustable or directly suitable for different center frequencies, bandwidths and
other waveform requirements set by the different standards. The choice of the RF
front end architecture depends also on the availability of the A/D and D/A converters. In software defined radios, one of the typical places for the conversions
is between the stages of channel modulation at an intermediate frequency. The
need for reconfigurability restricts the choice of the digital processing platform,
which may be a combination of FPGAs, DSPs and general purpose processors or
a completely new type of computing environment.
Chapter 3 discusses standards related to software defined radios. Standards
are of an enormous importance considering quality, efficiency, compatibility etc.
Currently, wireless communication industry and end users have to deal with the
problems arising from the constant evolution of air interface standards and variations across the world. Software defined radios can be seen as a solution to many
of the problems.
There are several standards bodies relevant to software radios: ANSI, ARIB,
ETSI, IEEE, ISO, ITU, OMG, PCI, TIA, VSO etc. There are standards, for example, for interconnects, analog hardware, buses and backplanes, internetworking
and object oriented architectures. The expanding amount of air interface standards resulted in need to develop multi-mode radios, both for military and for
commercial applications.
Two framework architectures, the SCA and the SWRadio, have been developed. The SCA is the de facto standard for military and commercial software
defined radio development and the SWRadio is the result of an ongoing project
for building an open international industry standard using the SCA as a basis.
Chapter 4 reviews the historical perspective of software defined radio architectures and the current state of the art, by presenting a few of the most influential
projects. In addition, a few other projects related either to research of software de1
fined radio technology or to development of deployable radio sets are presented.
An interesting question is, what the architectures used in these projects have in
common, and whether there is an architecture that has proven to be optimal.
The conclusions summarise this overview of software defined radios in Chapter 5.
Implementation Aspects
A software defined radio (SDR) consists of, for the most part, the same basic
functional blocks as any digital communication system [19]. Software defined
radio lays new demands on many of these blocks in order to provide multiple band,
multiple service operation and reconfigurability needed for supporting various air
interface standards. To achieve the required flexibility, the boundary of digital
processing should be moved as close as possible to the antenna, and application
specific integrated circuits, which are used for baseband signal processing, should
be replaced with programmable implementations [8].
Functions of a typical digital communication system can be divided into bitstream processing, baseband waveform processing and bandpass processing. The
transmitter of a digital radio can be further divided into an information source, a
source encoder, an encryptor, a channel encoder, a modulator, a digital-to-analog
converter (DAC) and a radio frequency (RF) front end block. Correspondingly,
the receiver consists of an RF front end, an analog-to-digital converter (ADC), a
synchronisation block, a demodulator, a detector, a channel decoder, a decryptor,
a source decoder and an information sink [1, 2]. The exact point where the conversion between digital and analog waveforms is done depends on the architecture.
The converters have been deliberately left out from Figure 2.1. In conventional
radio architectures, the conversion is done at the baseband, whereas in software
defined radios, one of the typical places for the conversion is between the stages
of channel modulation, at an intermediate frequency.
The multi-band, multi-mode operation of an SDR introduces stringent requirements on the underlying system architecture. The requirement of supporting multiple frequency bands affects the design of the RF front end and the A/D and D/A
converters [2]. The RF front end should be adjustable or directly suitable for different center frequencies and bandwidths required by the different standards that
the SDR supports. The front end architectures differ also in suitability considering the waveform requirements of different operating modes. The RF front end
architectures are discussed in section 2.1. The choice of the RF front end architecture depends also on the availability of suitable ADCs and DACs. These data
converters are discussed in Section 2.2. The need for reconfigurability and reprogrammability restrict the choice of the digital processing platform. For instance,
the platform may be a combination of field programmable gate arrays (FPGAs),
digital signal processors (DSPs) and general purpose processors (GPPs). The aspects related to digital processing are discussed in Section 2.3. The reconfigurability and the need for resource management are discussed in Section 2.4. The
chapter is summarised in Section 2.5.
Radio Frequency Front End
Although an ideal software radio would have a very minimal analog front end,
consisting of an analog-to-digital converter at the antenna, any practical imple3
RF front end
Timing & synchronisation
Figure 2.1: Block diagram of a digital radio system
mentation still needs an RF front end, and the design of a reconfigurable RF part
remains a very complicated issue [4, 2, 7]. The receiver section is more complex than the transmitter and the ADC is the most critical part limiting the choice
of the RF front end architecture [2]. The main functions of the radio frequency
front end are down and up conversion, channel selection, interference rejection
and amplification.
The transmitter side of the RF front end takes the signal from digital-to-analog
converter, converts the signal to the transmission radio frequency, amplifies the
signal to a desired level, limits the bandwidth of the signal by filtering in order to
avoid interference and feeds the signal to the antenna [3].
The receiver side converts the signal from the antenna to a lower center frequency such that the new frequency range is compatible with the ADC, filters
out noise and undesired channels and amplifies the signal to the level suitable for
the ADC. The common part of every receiver architecture apart from fully digital
ones is that the antenna feeds signal trough an RF bandpass filter to a low noise
amplifier (LNA). Automatic gain control (AGC) keeps the signal level compatible with the ADC. Design objectives include achieving a suitable dynamic range
and minimising additive noise while minimising the power consumption. Usually
there has to be a trade-off between power consumption and the dynamic range.
The following subsections present different receiver architectures, i.e. superheterodyne, direct conversion, tuned RF and pure digital receivers. Actual
transceivers have also a transmitter section, which is also based on the single or
the dual conversion architecture. Many of the design challenges concerning the
transmitter are similar to those of the receiver, particularly the power consumption
Superheterodyne Architecture
The heterodyne receiver has been the most common RF front end architecture
[2, 3]. It was developed in order to overcome inherent disadvantages of direct
conversion receiver, also known as the zero IF or homodyne receiver. In a su4
Figure 2.2: Superheterodyne receiver
perheterodyne receiver, the received signal is translated into a fixed intermediate
frequency (IF) that is lower than the center frequency of the RF signal but higher
than the bandwidth of the desired output signal. Often the conversion is done in
two stages because of many advantages of such an architecture: it has lower filtering and quality factor requirements and relaxes the need for isolation between
mixer inputs and the local oscillator. On the other hand, the additional down conversion stage increases power consumption. Each mixer stage needs also an image
filter in order to mitigate interference caused by the mixer. The structure of a two
stage converter is shown in figure 2.2.
A typical heterodyne architecture needs passive frequency dependent components like a dielectric RF filter and surface acoustic wave and ceramic filters in
the IF stages [7]. The bandwidth or center frequency of these filters cannot be
changed. Instead, they are designed according to specific standards. Multiple
front ends or adjustable components are possible solutions but unusable because
of the size and weight. This makes the heterodyne architecture unsuitable for the
wideband RF front end of a software defined radio, at least in handsets. The double conversion receiver is most attractive when the channel spacing is small since
the architecture makes narrow filters possible.
The IF signal can also be processed digitally if the A/D conversion is done
before the last stage of down conversion. In that case, digital post processing
algorithms can be used to analyse and mitigate imperfections caused by the analog
front end [2, 4].
Direct Conversion Architecture
The direct conversion receiver (DCR) needs significantly lower number of parts
and it is conceptually attractive because of the simplicity. Despite its problems,
the DCR concept has gained again attraction as a result of its suitability for use
with multiple standards [7]. In the DCR, the received signal is directly down converted to baseband. The down converted signal is then prefiltered by a variable
frequency anti-aliasing filter and, after analog-to-digital conversion, desired channels are chosen by software filters. Figure 2.3 illustrates the structure of the analog
part of a direct conversion receiver that uses quadrature sampling.
Direct conversion receivers have been so far suitable only for modulation
methods that do not have significant part of signal energy near DC. There are
Figure 2.3: Direct conversion receiver with quadrature sampling
also problems associated with the fact that the local oscillator of a DCR is at the
signal band, including possible unauthorised emissions and internal interference.
One of the problems is that phase noise falls within the baseband. Thus, the DCR
architecture needs an extremely stable local oscillator. Some of the problems can
be compensated with digital post processing.
Apart from the possibility to switch between some specific bands and modes,
direct conversion receivers do not offer prominent flexibility. There are some air
interface standards that are very difficult to support by a direct conversion receiver.
On the other hand, the concept has been proven to be commercially usable, for at
least some purposes, by an existing GSM receiver. Some sources suggest that the
DCR is the most promising RF front end architecture for software defined radio
Tuned RF Receiver
The analog part of the tuned radio frequency receiver is composed of only an
antenna connected to a tunable RF bandpass filter and a low noise amplifier with
automatic gain control [2], as shown in Figure 2.4. The main difficulty of this
architecture is the need for an ADC with a very high sampling rate due to the
wide bandwidth of the RF filter. Additionally, the roll-off factor of the filter has to
be taken into account in order to avoid aliasing. The high sampling rate together
with high dynamic range results in a relatively high power consumption. Demands
for the RF filter are also challenging and practically the filter can only select some
larger band that has to be filtered digitally afterwards to get only the band of the
desired channel. Gain control is also more difficult than in multistage receivers.
In the tuned RF receiver, some of the biggest problems of the direct conversion
are absent [2]. It is suitable for multiple mode receiver that supports different
bands. This makes the architecture well suited for software defined radio.
Other Architectures
Pure digital RF front end architectures provide a potential advantage, i.e. the flexibility of software based solutions that is desired in all parts of software defined
Figure 2.4: Tuned RF receiver
radios. Such a solution puts an ADC at the antenna and does everything else,
including down conversion and filtering, using digital signal processing [4, 2, 3].
The architecture needs A/D conversion and digital processing at very high bandwidths, which results in a high power consumption. Furthermore, the incoming
signal cannot be equalised and as a consequence, error rates are higher. Pure
digital RF processing has yet to see any commercially viable applications.
A/D and D/A Conversion
Considering the performance and cost of a software defined radio, the analogto-digital converter and digital-to-analog converter are among the most important
components [2]. In many cases, they define the bandwidth, the dynamic range
and the power consumption of the radio. The wideband ADC is one of the most
challenging task in software radio design. The bandwidth and the dynamic range
of the analog signal has to be compatible with the ADC. An ideal software radio
would use data converters at RF, which would result in conflicting needs: a very
high sampling rate, a bandwidth up to several GHz and a high effective dynamic
range while avoiding intolerable power consumption. The physical upper bound
for capabilities of ADCs can be derived from Heisenberg’s uncertainty principle.
For instance at 1 GHz the upper limit for dynamic range is 20 bits or 120 dB
[4]. However, there are other limiting factors including aperture jitter and thermal
effects. Unfortunately, the advances in ADC performance are very slow, unlike in
many other technology areas related to software defined radio.
The Nyquist rate fs /2 determines the maximum frequency for which the analog signal can be faithfully reconstructed from the signal consisting of samples at
the sampling rate fs . Higher frequencies cause aliasing and therefore the ADC is
preceded by an anti-aliasing filter. The number of bits in the ADC defines the upper limit for achievable dynamic range. The higher is the needed dynamic range,
the higher has to be the stop-band attenuation of the filter. For instance, a 16-bit
ADC needs over 100 dB attenuation in order to reduce the power of aliased signal
under the half of the energy of the least sensitive bit (LSB) [4]. The state of the art
ADCs for wireless devices operate at bandwidth of over 100 MHz with 14-bit resolution and 100 dB spurious free dynamic range, but there is already commercial
demand for even better converters for base stations [3].
The analog front end of an ADC has a direct influence on the dynamic range.
The non-linearities of the front end cause intermodulation. The spurious free dynamic range (SFDR) denotes the difference between the minimum detectable input (noise floor) and the point where the third order distortion becomes stronger
than that [2]. Different air interface types and standards have different demands
on the dynamic range. A large SFDR is needed to allow recovery of small scale
signals when strong interferers are present.
Different types of receiver architectures need different sampling methods [3].
A superheterodyne receiver or a direct conversion receiver may have an I/Q baseband signal as the analog output, for which quadrature baseband sampling is
needed. Another possibility is an intermediate frequency analog output, for which
a suitable sampling strategy is for example IF band-pass sampling by using a
sigma-delta ADC. Direct sampling is a suitable method for low IF analog signals.
Although the ADC performance is often the limiting factor in the SDR concept and usually more widely discussed in this context, the transmit path is also
a design problem of comparable complexity [3]. The requirements for DACs include high linearity, sufficient filtering and isolation of the clock from the output,
in order to avoid distortion and out-of-band emissions.
The following subsection discusses distortions in converters and related considerations from the point of view of different air interfaces. The subsequent subsections present different sampling methods and converter structures, taking into
account issues related to the suitability for SDRs.
Noise and Distortions in Converters
Distortions in data converters include quantisation noise, overload distortion, linear transfer errors, non-linear errors, aperture jitter and thermal noise [2].
Quantisation noise denotes the unavoidable error caused by the approximation of continuous valued signal by discrete levels, modelled as a noisy source.
Its effects can be reduced by oversampling and noise shaping. Oversampling increases the SNR of the system because a part of the noise power can be removed
by filtering. The latter method is discussed in the end of this subsection.
Overload distortion is caused by input signals exceeding the allowed range
that the ADC can represent. It is difficult to fully avoid overload and, although
overload distortion may significantly reduce SNR, it is sometimes useful to allow some distortion. Lowering the gain reduces the number of bits actually used.
Also, spread spectrum signals have different requirements than non-spread signals
because of the different impact of individual symbol errors on the overall performance. The response time of the automatic gain control is a critical parameter.
Both too slow and too fast response may degrade the performance. The response
should be fast enough to allow full-scale range utilisation while avoiding overloading, but excessively fast response introduces undesired amplitude modulation. In
general, the optimal time constant depends on channel effects and waveform specific aspects [2]. Thus, the optimal automatic gain control strategy depends on
the air interface standard used, which has to be taken into account in SDR design.
Avoiding clipping due to overload may effectively use the entire most significant
bit. Therefore, the usable dynamic range may be one or two bits lower than the
resolution of ADC [4].
Offset and gain errors are linear transfer characteristic errors. Non-linearities
can be described with two measures: integral non-linearity denotes the maximum
deviation of the transfer characteristic from the ideal straight line and differential
non-linearity denotes the variation of the distances of quantisation levels from the
desired step size.
Thermal noise is an unavoidable property of resistive components. Software
defined radios work with multiple bandwidths, which results in varying noise
floor. Concerning wideband signals, thermal noise may considerably reduce the
dynamic range.
The uncertainty in spacing between sampling instances is called aperture jitter.
This causes uncertainty in the phase, deteriorates the noise floor performance and
increases intersymbol interference. Glitches are transient differences from the
correct output voltage in DACs. Aperture jitter and glitches are the most important
timing problems of ADCs and DACs.
The effective number of bits (ENOB) of a converter can be calculated from
the signal-to-noise-and-distortion (SINAD) ratio [2].
SIN AD − 1.763dB
and the SNR of a system in which other effects are negligible compared to aperture
jitter is given by [2]
SN R = −10log10 (2π 2 f 2 ∆a 2 )
where f is the frequency of input signal and ∆a 2 is the variance of the aperture
jitter. By using these equations, an upper limit of the effective number of bits at
different frequencies can be calculated. The limit is shown for one value of the
aperture jitter in Figure 2.5. Thermal noise may also be the dominant limiting
factor, whereas conversion ambiguity may become dominant at high frequencies.
The performance of currently available ADCs lies usually below the line show in
the figure. There are more detailed graphs in [4] and [2].
Dithering is a method that is used to increase spurious free dynamic range [3].
SFDR is essential from the point of view of narrow band air interfaces. Dither
is pseudo random noise that is added to the input of ADC. The main goal is to
maximise the SFDR, while minimising the effect adverse on SNR. Small-scale
dithering is used to decorrelate quantisation noise, which leads to reduction of the
harmonics caused by correlated noise. Dithering may also reduce errors caused by
differential non-linearities. There are two large-scale dithering techniques that are
used to mitigate effects of non-linearities: out-of-band dithering and subtractive
dithering [2]. In out-of-band dithering, noise is added outside the frequency band
Effective number of bits
Sampling rate
Figure 2.5: The effect of 0.5 ps aperture jitter on the performance of ADC
of the desired signal. This can be accomplished by using a band-reject filter.
The added noise can be easily filtered out in the digital domain. In subtractive
dithering, digital pseudo noise is converted to the analog domain and added to
input of ADC. Then, the noise is subtracted after the analog-to-digital conversion.
Sampling Methods
Direct sampling, or Nyquist sampling, is based on the sampling theorem, which
requires the sampling rate to be at least twice the highest frequency component
of the analog low-pass signal. In practical implementations, anti-alias filtering is
among the central issues of the converter design. By oversampling, the filtering
requirements may be relaxed. On the other hand, oversampling requires higher
speed ADCs and increases data rate in digital processing [2].
In the case of quadrature sampling, the input signal is split into in-phase and
quadrature components. Their bandwidth is half of the bandwidth of the original
signal. Thus, quadrature sampling reduces the required sampling rate. Correspondingly, the downside is the need for two phase synchronised converters. The
demodulation of phase or frequency modulated signals needs both in-phase and
quadrature samples because these components have different information. By
using digital processing, e.g. Hilbert transform filter, this splitting can also be
performed in the digital domain.
RF bands of radio systems have band-pass characteristics instead of low-pass
characteristics. Bandpass sampling, or sub-sampling, also utilises the Nyquist’s
theorem, i.e. the sampling rate has to be at least twice the bandwidth of the input
signal. In this method, images are viewed as frequency translated versions of the
desired spectrum instead of only harmful by-products. It is necessary that information in any Nyquist zone will not interfere with information in other Nyquist
zones. By using this approach, down conversion is also provided by the sampling
Converter Structures
Although there are a lot of different ADCs available, only a few widely used core
architectures exist [3]. The suitability of a particular architecture depends on the
requirements of a given system. Common converter architectures include parallel,
segmented, iterative and sigma-delta structures [2].
A flash converter consists of parallel comparators and a resistor ladder. The
benefits of this architecture are simple design and very low conversion times.
This makes flash converters an attractive choice when only a minimal dynamic
is needed. The complexity of the architecture increases exponentially as the number of bits increases, and 10 bits is the practical upper limit [3]. Another drawback
is that there are difficulties with linearity. Additional bits make this problem even
worse and the main benefit, the high speed, is lost as the effective bandwidth decreases, when more comparators are connected together.
In contrast, multistage converters are scalable, i.e. high speed, high resolution
converters can be constructed. The converted digital signal is converted back an
analog signal by a DAC between each stage. After a subtraction, only the residual
signal is fed to the next stage. Multistage ADCs have many advantages: high
precision without exponential growth of complexity or long delays. However, the
architecture has some challenges. The resolution of the DAC at the first stage has
to be greater than the resolution of the entire ADC.
The sigma-delta ADC consists of an analog filter, a comparator, a DAC and
a decimator with a digital filter, as shown in Figure 2.6. The comparator tells
the output signal if it should be increasing or decreasing. The sigma-delta ADCs
work by using oversampling. An advantage is that they remove quantisation noise
from narrowband signals. In many cases, this architecture is suitable for software
defined radios. Sigma-delta modulators can be used for both direct and bandpass
Digital Processing
Digital processing is the key part of any software defined radio, i.e. the programmable digital processing environment makes it possible to reconfigure to any
air interface. The digital processing segment of an SDR is functionally similar
to other digital communication systems. Differences include that the underlying
filter & decimator
n−bit output
Figure 2.6: Sigma-delta Analog-to-Digital Converter
hardware has to be reprogrammable and there has to be some control software for
handling the reconfiguration.
The following subsections discuss the selection of the processing platform,
techniques related to digital waveform processing and finally the bit-stream section of the SDR.
Selection of the Processing Hardware
The need for reconfigurability necessitates the use of programmable digital processing hardware. The reconfiguration may be done at several levels. There may
be parameterised components that are fixed ASICs, and in the other end, the hardware itself may be totally reconfigurable, e.g. FPGAs. There has to be done a
compromise between programmability, reconfiguration time, processing power,
power consumption, cost, etc.
The most optimised hardware implementation can be done using ASICs but it
is very inconvenient to have a dedicated chip for every operating mode. Digital
signal processors excel in programmability but they can not handle everything, at
least with a tolerable power consumption [9]. FPGAs are often used to do the
most intensive computations. Their reconfiguration time is significantly longer
than the time needed for reprogramming of DSPs and general purpose processors.
It might be desirable that a software defined radio could switch between different operating modes based on channel conditions or other changes in environment.
Customised FPGAs, called configurable computing machines (CCMs), provide
real-time paging of algorithms [9]. They use coarser granularity than traditional
FPGAs. This kind of architectures can be used as stand alone processors or as
co-processors. Low power requirement still remains a problem. There are also
other new approaches at research stage, including application specific instruction
set processors and field programmable functional arrays, which consist of configurable sections specialised for certain tasks. These and a few other approaches are
presented in [9]. In [17], there is proposed a FPGA-macro-based SDR architecture.
The total amount of processing capacity sets another limit for implementable
systems. In [4], there are presented a few simple equations for calculating the
needed processing capacity. An illustrative calculation shows that a GSM receiver
requires the capacity of over 40 millions of operations per second (in standardised
MOPS) when the IF processing is excluded. Vanu Inc. has also published a table
containing the number of operations needed by a few air interfaces implemented
in their line of SDR products. For instance, a GSM transceiver needs 96 Mcycles
per second on a Pentium III platform, whereas a 802.11b WLAN receiver requires
512 Mcycles per second [31].
Multirate Processing
Multirate signal processing is needed for many purposes in software defined radios [2]. First of all, the output of the ADC and the input to the DAC is most
conveniently performed at a fixed rate, whereas for digital processing, it is reasonable to use as low data rates as possible without loss of information in order to
avoid excessive computational burden. Also, each supported standard may have
a different symbol rate and it is desirable to use sampling rates that are integer
multiplies of the symbol rate.
Channelisation of data for parallel computing at lower sampling rate may be
useful particularly at base stations since it is a more cost effective method than
using high-speed DSPs. Multirate processing allows also a trade-off between resolution and speed in ADCs, which is useful for supporting different operating
modes of an SDR.
Digital synchronisation of sampling instant is yet another example of applications of sampling rate conversion. The idea is that the input signal is interpolated
to a higher rate and the best sampling point is chosen. Early-late gate synchronisation is a method for determining the location of the peak, i.e. the optimal sampling
The principles of sampling rate conversion can be found for example in [2].
Cascaded integrator comb (CIC) filter is a suitable structure for both interpolation
an decimation in SDRs. It has reduced computational demands and it is also
particularly suitable for FPGA implementation owing to simple basic operations.
Digital Generation of Signals
In software defined radios, the parameters of the system are required to be adjustable, even dynamically during runtime. This lays demands for versatility of
processing hardware at all stages. It is the availability of programmable, fast digital techniques that has made the concept of software defined radio a feasible architecture for implementing radio systems. The synthesis of waveforms is an essential part of any radio communication system. Particularly generation sinusoidal
signal is of a great importance. They are used for many purposes: modulation,
filtering and pulse shaping [2].
Direct digital synthesis produces purely digitally signals that are discrete in
time. In comparison to analog methods, the benefits include high accuracy, immunity to noise, ability to generate arbitrary waveforms, low switching time and
the physical size of circuits.
There are a number of approaches for generating digital signals. One of the
basic methods is to store a sampled waveform in a look-up table (LUT). The sampled values are then sent to the output periodically. Sinusoidal signals can be
generated this way. There are three sources of error in direct digital synthesis:
amplitude error due to the limited number of bits used in quantisation, phase truncation due to a limited number of bits used to address the locations of the table,
and the resolution of the DAC. The phase truncation is a significant source of error
and many methods have been developed to cure problem.
There are many approaches to reduce the size of LUT or to avoid spurious
signals caused by phase truncation. Interpolation reduces the required size significantly. There are also sine wave generators that do not need a LUT for generating
a wave of a fixed frequency. These include the CORDIC algorithm and IIR oscillators.
Bandpass Waveform Processing
In software defined radios, the typical placement of wideband ADC and DAC is
before the final IF and channelisation filters. It allows digital processing before
demodulation, and it is a cost effective solution for supporting multiple channel
access standards since IF processing is done using programmable hardware [5].
The bandpass processing segment provides the mapping between modulated
baseband signals and intermediate frequency. In a receiver, a wideband digital
filter selects the band defined by selected standard. IF processing also selects
the desired channel by filtering and down converts the signal into baseband. Because the sample rate is very high, decimation is needed before passing the signal
to baseband processing. A typical application requires about 100 operations per
sample, which results in very high total computational requirements.
Spreading and despreading in CDMA systems are also bandpass processing
functions. Like any other digital processing at IF, they are computationally intensive.
Baseband Waveform Processing
The baseband waveform segment processes digital baseband waveforms. This is
the stage where the first part of channel modulation is done [5]. Pulse modulation
produces a digital waveform from a bit-stream. Pulse shaping is used to avoid
inter symbol interference. Predistortion for non-linear channels may also be done
at the baseband processing stage. In a receiver, soft decision parameter estimation,
if used, is also done in this segment. Digital baseband modulations require also
synchronisation in the receiver.
Analog modulation methods may also be emulated using digital waveform
processing with very reasonable computational requirements.
Bit-stream Processing
The bit-stream processing segment of a transmitter handles encryption, multiplexing and coding of the bit-stream, and conversely, the receiver handles corresponding inverse functionality [5].
Different source coded bit-streams are encrypted and channel encoded and
multiplexed into one stream. Forward error control (FEC) consists of channel
coding (convolutional and/or block coding), interleaving and automatic repeat request (ARQ) functionality. Interleaving is needed for efficient use of coding for
error detection and correction.
Bit-stream processing blocks of an SDR are very similar to fixed standard
radios. As an additional requirement, they have to be parameterisable or reprogrammable in order to ensure ability to adapt to needs of different standards. In
military software radios, encryption and other information security functions are
more challenging design problems.
Reconfiguration and Resource Management
The reconfigurability, which is an essential part of the SDR concept, is a complicated and wide issue. Many aspects related to reconfiguration and resource
management are discussed in [6]. The object oriented representation of resources
is discussed, for instance, in [2]. Object broker technologies are presented in the
next chapter.
The reconfiguration can be done at multiple levels. At an early stage, software
radios were defined as radios whose air interface functionality is reconfigurable
by software. A newer definition would be a radio whose functionality is software
reconfigurable [32].
The reconfiguration can be performed by software download over the air or
by using e.g. wired connections. The reconfigurable functionality may be located
at any of the protocol layers. The low layer reconfigurability allows roaming or
bridging, whereas at the highest layers, reconfigurability enables possibilities for
new, e.g. context aware, services and applications.
In the simplest case, the requirements set by the reconfigurability of SDRs
concern only the user terminals. The previous sections discussed the issues mostly
related to the physical layer. In a more complex case, the system negotiates an optimal configuration based on the environment, the queried services and the capabilities of the user terminal an the network. Thus, the management of network reconfigurability and adaptive protocols are needed. The requirement of on-demand
service data flows with Quality of Service (QoS) parameters is a major reason for
need for parameterisable protocols [6]. The flexible provision of services calls for
open APIs and reconfiguration management.
Communication profiles are needed for the management of reconfiguration.
Profiles have to be defined for users, terminals, services and networks [6]. There
has to be also means for monitoring and identification of available air interfaces
and for the management radio resources. One of the challenges of future wireless
systems is finding means for more flexible, dynamic and efficient allocation of
spectrum. Technical and regulatory work is needed for setting rules for more
optimal spectrum management.
The implementation of software defined radios is a wide and challenging issue.
The starting point in this chapter was the general structure of digital communication systems. The requirements set by the need for multi-mode operation and
reconfigurability have effects on implementation of various parts of a radio node,
ranging from the selection of processing hardware to the RF front end. There
are a few critical points, such as the analog-to-digital conversion and the power
consumption of many of the components, that limit the choice of physical layer
architecture and, in the end, the achievable performance. The sections of this
chapter discussed these implementation aspects.
SDR has often been seen as a design problem mostly related to the low-level
implementation of a radio node capable of operating in multiple modes. Many
other issues, such as the management of resources and the handling of reconfiguration, suggest that there are also other significant aspects. The next chapter
introduces various standards related to SDRs and the current efforts related to the
standardisation process of frameworks for SDR development.
Standards are of an enormous importance considering quality, reliability, efficiency and compatibility. Information technology industry is not an exception:
standards are essential from the point of view of e.g. compatibility, portability of
software components and the development process of products in general.
Currently, wireless communication industry and end users have to deal with
the problems arising from the constant evolution of air interface standards and
different standards in different countries, incompatibilities between wireless networks, and existence of legacy devices. SDRs can be seen as a solution to many
of these problems. On the other hand, SDRs have to conform to an exceptionally
large number of standards due to the multi-mode operation.
There are several standards bodies relevant to SDRs [4]: ANSI, TIA and IEEE
are responsible for interconnect standards, e.g. serial lines and LANs. These
organisations and ETSI define standards for analog hardware, e.g. antennas, RF
connectors and cables. Bus and backplane standards bodies include VSO and PCI.
Organisation responsible for internetworking standards, e.g. TCP/IP and ATM,
include ITU, ISO, ETSI, ARIB, IEEE, TIA and ANSI. OMG and Open Group
define standards for object oriented software.
Section 3.1 discusses the role of air interface standards as a reason for the need
to develop multi-mode radios, from the point of view of military and commercial
applications. Section 3.2 presents various types of hardware standards related
to SDRs. Section 3.3 discusses middleware technologies, which are currently
on the central focus of the most significant SDR projects. Sections 3.4 and 3.5
present two framework architectures for SDRs, i.e. the SCA and the SWRadio.
The SCA is the de facto standard for military and commercial SDR development
and the SWRadio is the result of an ongoing project for building an international
commercial standard based on the SCA. The chapter is summarised in Section
Air Interfaces
In [4], there is an overview of air interface modes and related applications in the
frequency bands in the range of HF through EHF (30 MHz - 300 GHz ).
The intensive role of military organisations in the development of SDR techniques is a result from the fact that there is a huge number of global, national and
regional standards [4]. In the US, the army, the navy, and the air force have had a
great number of incompatible systems, which is a disadvantage considering joint
operations and it also results in excessive costs. For instance, the implementations
of JTRS compliant military SDRs may support over 40 modes.
Especially in the military jargon, air interface modes and standards are called
waveforms, although the support of a radio standard involves also bit-stream processing and the implementation of higher protocol layers of the standard in question. The originally planned and the actually accomplished waveform support of
the SPEAKeasy are listed for instance in [21]. The JCIT and multiple JTRS implementations are examples of military SDRs currently in field use. For the JCIT,
the provided modulation formats can be found from [4] and the operating modes
and supported radio system standards are listed in [36]. In Table 1, there is the list
of the currently approved JTRS waveforms.
Table 1: JTRS Waveforms (by priority: KPP / Threshold / Objective) [13]
An example of civilian applications of the SDR concept would be a phone that
supports modes for different areas of world and different generations of mobile
cellular standards. Actually, SDR techniques have already been deployed in base
stations. In Europe, there has not been immediate demand for true multi-mode
mobile phones since the widespread use of GSM has allowed roaming across Europe and many other areas [32], whereas in North America, there are multiple
competing digital cellular radio standards. The adoption of the third generation
mobile phone standards may somewhat change the situation.
Commercially used air interfaces supported by future reconfigurable radios
may include mobile cellular standards, audio and video broadcasts, satellite communications, local area networks, wireless local loops etc. Table 2 shows examples of these wireless systems [34]. The commercial demand for SDRs may rise
from the needs of users for roaming seamlessly across networks and getting access to services anywhere without paying attention to the underlying technology,
which is queried by the services [34, 35].
Table 2: Examples of wireless systems
local loop
Ad Hoc MWS
Even though one of the main goals of the SDR concept is to perform as many
radio functions as possible in the programmable digital domain, i.e. in software,
hardware standards still play a considerable role from the point of view of modularity. Ideally, different vendors should be able to design hardware modules using
standard interfaces.
For physically connecting separate hardware elements of the radio system, a
number of standardised buses can be used, for example VME, PCI, cPCI, PC-104,
IEEE-1394 and Ethernet [4, 11]. For instance, the SPEAKeasy Phase I used the
VME bus, while the Phase 2 used the PCI bus. A radio peripheral designed for the
GNU Software Radio [37] uses USB2 for connecting to the PC that performs most
of the digital processing. Many of the buses have various physically different or
even non-standard connectors, for instance for different form factors. Thus, signalling within the buses and the possible external connectivity are separate issues.
The VME is also a chassis standard. The standardised mechanical specifications become important when commercial of-the-shelf (COTS) components are
used. Use of COTS components has become preferable also for military radios, in
order to reduce acquisition, operation and support costs and to gain upgradeability [11]. A radio node may have serial and network interfaces. Possible physical
interfaces include for example RS-232, RS-422, RS-423, RS-485, Ethernet and
802.x [11]. At least base stations and military radios may also need different antennas or other RF components for supporting a wide range of frequency bands
and operating modes. There are standards for the required connectors, waveguides, cables etc.
Of course, the handsets of wireless cellular systems have demands different
from base stations or physically large military radios. At least currently, there
are no practical possibilities to add daughterboards or any other functional units,
apart from memory cards, after manufacturing. Therefore, the hardware standards
may seem less important in this context. Yet, the handsets have often an external
connector for data transfer, and the SDRs requiring reconfigurability may lay new
needs for standardisation. Certainly, there are also a lot of other standards related
to e.g. electronic circuit and board design, but they are usually unspecific to SDRs.
For the processing needs of SDRs, there are not yet even de facto standards
and in the most significant SDR projects, such as [11], there is a hardware abstraction layer for maximising independence from the underlying hardware. The
following section presents an object oriented method for the management and interconnection hardware elements in heterogeneous processing environments. Actually, there is still a lack of high level tools for describing the systems and then
automatically generating code, especially concerning the partitioning of the processing tasks into parts suitable for the heterogeneous processing environments of
SDRs, which include software and reconfigurable hardware [8]. There may be a
need for standardised procedures for also this kind of tasks.
In the context of computer networks, the term middleware is used to denote the
core set of functions that enable easy use of communication services and distributed application services [33]. In other words, it provides means for management of applications or services, the mapping of names to objects that provide
them, connection control, etc. In mobile communications, the middleware may
have functions for link monitoring and notifications to user or components of
significant events. The middleware is also one of the parts that is essential for
seamless use of services when multiple wireless standards are used.
Object oriented concepts can be used for partitioning of both software and
hardware. This practice provides the broadest reusability and portability. It is especially advantageous for software defined radios since reconfigurability makes
object oriented techniques and independence of the actual platform used essentially necessary.
The JTRS military radio development program chose OMG’s object management technologies for its framework for SDRs, called Software Communications
Architecture (SCA). The JTRS is discussed in the next chapter and the SCA is
treated in more detail at the end of this chapter.
The Object Management Group (OMG) is an open membership, non-profit
consortium that produces and maintains specifications for interoperable applications [10]. There are hundreds of members in the OMG, including most of the
large companies in computer industry. The next subsections introduce several
Object implementation
IDL stub
IDL skeleton
Object Request Broker
Figure 3.1: A request from client to implementation using CORBA
OMG’s specifications, by using the definitions from OMG [10, 18] and the SCA
Developer’s Guide [12]. CORBA is the OMG’s middleware that is used in the
SCA, and the other specifications are needed for utilising the middleware for development of systems with this architecture. The OMG’s own specification for
SDR development, i.e. the SWRadio, uses OMG’s Model Driven Architecture.
Model Driven Architecture (MDA)
The OMG Model Driven Architecture defines a model-based development approach to software development. The main objective of the MDA is to enable the
portability and reuse of models across different technology platforms. Software
development in the MDA starts with a Platform-Independent Model (PIM) of an
application’s functionality and behaviour, typically built in the UML. This model
remains stable as technology evolves. MDA development tools, available now
from many vendors, convert the PIM first to a Platform-Specific Model (PSM)
and then to a working implementation on virtually any middleware platform: Web
Services, XML/SOAP, EJB, C#/.Net, OMG’s own CORBA, or others. Portability and interoperability are built into the architecture. OMG’s industry-standard
modelling specifications support the MDA.
Common Object Request Broker Architecture (CORBA)
CORBA is open, vendor independent infrastructure that provides platform independent programming interfaces and models for portable distributed computing
applications. It is particularly suitable for the development of new applications
and their integration into existing systems, due to independence from program21
IDL stub
Object implementation
Object implementation
IDL stub
IDL skeleton
IDL skeleton
Object Request Broker 1
Object Request Broker 2
Figure 3.2: Interoperability of CORBA ORBs
ming languages, computing platforms and networking protocols.
A CORBA object is a virtual entity that is capable of being located by an object request broker (ORB) and having client requests invoked on it. It is virtual in
the sense that it does not really exist unless it is made concrete by an implementation written in a programming language. A target object, within the context of a
CORBA request invocation, is the CORBA object that is the target of that request.
A client is an entity that invokes a request on a CORBA object. A server is an
application in which one or more CORBA objects exist.
A request is an invocation of an operation on a CORBA object by a client, as
shown in Figure 3.1. An object reference, also known as an IOR (Interoperable
Object Reference) is a handle used to identify, locate, and address a CORBA
object. A servant is a programming language entity that realises (i.e., implements)
one or more CORBA objects. Servants are said to be incarnate CORBA objects
because they provide bodies, or implementations, for those objects. Servants exist
within the context of a server application. In C++, servants are object instances of
a particular class.
In order to invoke the remote object instance, the client first obtains its object
reference. When the ORB examines the object reference and discovers that the
target object is remote, it routes the invocation out over the network to the remote
object’s ORB, as shown in Figure 3.2. OMG has standardised this process at two
key levels: First, the client knows the type of object it’s invoking and the client
stub and object skeleton are generated from the same IDL. Second, the client’s
ORB and object’s ORB must agree on a common protocol. OMG has defined this
also - it’s the standard protocol IIOP.
Interface Definition Language (IDL)
The OMG IDL is CORBA’s fundamental abstraction mechanism for separating
object interfaces from their implementations. OMG IDL establishes a contract
between client and server that describes the types and object interfaces used by
an application. This description is independent of the implementation language,
so it does not matter whether the client is written in the same language as the
server. IDL definitions are compiled for a particular implementation language by
an IDL compiler. The compiler translates the language-independent definitions
into language-specific type definitions and APIs (Application Program Interfaces).
These type definitions and APIs are used by the developer to provide application
functionality and to interact with the ORB.
The translation algorithms for various implementation languages are specified
by CORBA and are known as language mappings. CORBA defines a number
of language mappings including those for C++, Ada, and Java (along with many
others). An IDL compiler produces source files that must be combined with application code to produce client and server executables. Details, such as the names
and numbers of generated source files, vary from ORB to ORB. However, the
concepts are the same for all ORBs and implementation languages. The outcome
of the development process is a client executable and a server executable.
Unified Modeling Language (UML)
UML is a standard modelling language for writing software blueprints. By using
UML, system builders can create models that capture their visions in a standard,
easily understandable way and communicate them to others. It may be used to
visualise, specify, construct and document software systems. The UML is more
than just a graphical language. Rather, behind every part of its graphical notation
there is a specification that provides a textual statement of the syntax and semantics of that building block. For example, behind a class icon is a specification that
provides the full set of attributes, operations (including their full signatures), and
behaviours that the class embodies; visually, that class icon might only show a
small part of this specification.
UML diagrams are used in numerous ways within the SCA, however, the focus is on two of them: to specify models from which an executable system is
constructed (forward engineering) and to reconstruct models from parts of an executable system (reverse engineering).
Extensible Markup Language (XML)
XML is a markup language designed specifically for delivering information over
the World Wide Web. XML’s definition consists of only a bare-bones syntax. By
creating an XML document, rather than using a limited set of predefined elements,
new elements can be created and any names can be assigned to them, hence the
term extensible. Therefore, XML can be used to describe virtually any type of
document, from a musical score to a reconfigurable digital radio.
XML is used within the SCA to define a profile for the domain in which waveform applications can be managed. For SCA, the extensibility of XML is limited
to the SCA-defined Document Type Definitions (DTDs). A DTD provides a list of
the elements, attributes, notations, and entities contained in a document, as well as
their relationship to one another. DTDs specify a set of rules for the structure of a
document. The DTD defines exactly what is allowed to appear inside a document.
Figure 3.3: Structure of the software architecture of the SCA [11]
Software Communications Architecture (SCA)
The Software Communication Architecture is the software architecture developed
by the US Military Joint Tactical Radio System (JTRS) Joint Program Office
(JPO) for the next generation of military radio systems [18]. Currently, various
companies are developing radio systems based on this architecture. It is considered as the de facto standard in the SDR industry.
The SCA is not a system specification and it is intended to be implementation
independent [11]. Instead, it is a set of rules for the development of SCA compliant SDR systems. The SCA is an open framework that enables management and
interconnection of software resources in an embedded distributed computing environment. It is targeted to support commercial components and interfaces. The key
element of the SCA is Operating Environment (OE) which consists of the Core
Framework (CF) and commercial of-the-shelf infrastructure software (POSIX operating system, CORBA middleware services etc). The CF is the core set of open
application layer interfaces and services that are needed by application developers for abstraction of the underlying software and hardware components in the
systems. Waveforms are applications and therefore they are not specified by the
SCA. Likewise, external networking protocols are part of waveform applications
and thereby they are also excluded from the SCA specification.
The structure of the software architecture of the SCA is shown in Figure 3.3.
It can be seen from the figure that the SCA follows the architecture described in
the previous section. The object oriented technology is used also for hardware.
The class structure of the SCA hardware is shown in Figure 3.4. The specialised
hardware supplement to the SCA specifies Hardware Abstraction Layer Connec24
Figure 3.4: Hardware Class Structure of the SCA [11]
tivity (HAL-C) for non-CORBA compliant hardware [22]. Especially high bit-rate
waveforms need specialised hardware.
The SCA has been designed also to meet commercial requirements, in addition
to military needs, and it is expected to become a standard. Standardisation is the
key to acceptance of a technology and therefore the JTRS program is cooperating
with the SDR Forum [15] and the OMG [10]. The SDR Forum is a non-profit
organisation that is dedicated to promoting the development and deployment of
technologies related to SDRs. It has been involved in the development of the SCA,
in order to ensure conformance with commercial requirements, such as avoiding
the overhead caused by military requirements. The SDR Forum is not a standardisation organisation. Therefore, the SCA has been passed to a formal specification
body, i.e. the OMG. Standards organisations maintain liaison relationships with
the OMG.
On the commercial side, one drawback of the architecture is the lack of proper
CORBA support on some of the most common FPGAs and DSPs [25]. However,
there are projects addressing also this issue [26].
Application Layer
User communication functions including digital signal processing in the modem,
link-level protocol processing, network-level protocol processing, routing, external I/O access, security, and embedded utilities are performed by Applications
[11]. They are not defined by the SCA except how they interface to the OE.
Applications are required to use the CF interfaces and services. Direct access to the Operating System is allowed only to the services specified in the SCA
POSIX Profile. Networking functionality, e.g. IP network layer, may also be implemented below the application layer. In that case, the functionality is not limited
to the profile since it is located in the kernel space.
Applications consist of Resources and use Devices. Devices are types of Resources that are used as software proxies for actual hardware devices. ModemDevice, LinkResource, SecurityDevice, I/ODevice and NetworkResource are interface extensions of the CF. They implement APIs for waveform and networking
applications. They conform to the functional entities of the SCA Software Reference Model that is based on the PMCS model.
Waveform Development
The API Supplement [22] contains requirements for the development of APIs .
Waveform APIs are located at such interfaces that provide the widest portability.
A common API for all waveforms would be too complicated and large for domains
with limited resources. Thus, there have been defined building blocks for building
the specific APIs [23].
Implementing a SCA-compliant waveform follows defined steps. The SCA
Developer’s Guide outlines the process as a checklist [12]:
1. Identify functionality to be provided by the waveform software
2. Determine which API Service Groups are needed
3. Determine what services are needed beyond the API Service Groups
4. Build UML model of interface
5. Generate IDL from UML model of interface
6. Translate IDL into language-appropriate implementation files
7. Compile code generated in step 6
8. Reverse engineer UML model from language-specific implementation files
9. Build UML model of waveform software
10. Generate language-appropriate template files for servant and user software
11. Write servant and user software
12. Write XML for each component
13. Build User Interface (optional)
14. Integrate software and hardware
15. Test resultant application
SCA Reference Implementation (SCARI)
Interpretations of specifications can easily limit interoperability between implementations. Therefore, it was useful to develop a reference implementation of the
SCA specifications for clarifying the technical aspects. The reference implementation aims to reduce the level of ambiguity of the SCA specification, to increase
the potential for interoperability, to support understanding of the architecture and
to stimulate the emergence of SDRs by reducing the cost and development time
The Military Satellite Communications Research (RMSC) group [14] of the
Communications Research Centre (CRC) was contracted by the SDR Forum to
developed an open source reference implementation of the SCA. Thus, RMSC
produced an open implementation of the SCA version 2.1. The available open
source implementation is written in Java.
The mandatory components of the SCA core framework are provided by the
reference implementation, as well as the most used other features, e.g. Core
Framework with the XML Domain Profile, tools that are needed to operate the
radio and simple demonstration of waveform applications.
The SWRadio is a specification of radio infrastructure facilities. The SWRadio
promotes portability of waveforms across SDRs [18]. The SCA has been used as
a basis for OMG’s work on the SWRadio. The SWRadio specification uses the
OMG’s Model Driven Architecture.
The specification supports an approach where the SWRadio platform provides
a standardised extensible set of software services that abstracts hardware and supports applications, such as waveforms and management applications. In the specification, there is defined a set of platform-independent interfaces. Applications
can be developed and ported onto various implementations. This approach provides a possibility for an open market where waveforms can be produced independently of platforms and their providers.
There is a physical partitioning of the SWRadio specification into three main
chapters: UML profile for SWRadio, and PIM and PSM for the CORBA IDL.
A language for modelling SWRadio elements is defined in the UML profile for
SWRadio by extending the UML language with radio domain specific definitions.
A behavioral model of an SWRadio system, standardised APIs and example component definitions that realise the interfaces are provided by the PIM. The PIM
specification is independent from the underlying middleware technology. For
modelling a software radio system defined in the PIM, UML and its extensions
provided by the UML profile for SWRadio are used. The SWRadio specification
also provides a mechanism for transforming the elements of the PIM model into
the platform specific model for the CORBA IDL.
Figure 3.5: SWRadio Layers [18]
SWRadio Platform
The SWRadio Platform consists of several layers, as shown in Figure 3.5. The
layers are [18]:
• Hardware layer that is a set of heterogeneous hardware resources including
both general purpose devices and specialised devices
• Operating Environment layer that provides operating system and middleware services
• Facilities layer that provides sets of services to the application developer
• Application layer that represents the stand-alone capabilities of the radio
There are three types of applications supported by the SWRadio Platform: Waveform applications that are the main focus, management applications and other
applications, such as network and end user applications.
SWRadio Architecture
In the SWRadio Architecture, there are two main concepts: services and waveform layering. Services depend on the provided interfaces. A component can offer
one or more services trough realisation relationships in the platform independent
model. SWRadio vendors may provide services that are required for their platform
or they can acquire services from third party vendors. For waveform functionality
grouping, the specification follows the Open System Interconnection (OSI) model
(ISO IS 7498) of the International Standard Organization, which defines that the
communications functions should be structured into a stack of seven layers.
The use of reconfigurable components through standard interfaces and well
defined modules is encouraged by the approach. The specification uses extended
OSI model which allows Management and QoS interfaces to communicate with
any layer. The focus the SWRadio architecture is only on physical and link layers.
In general, multiple aspects, such as compatibility, reliability, portability and ease
of development, call for standardisation. In the context of radio systems, the multitude of air interface standards has resulted in need for interoperable, reconfigurable systems. Different applications and systems need different air interface
modes and therefore reconfigurability is the only feasible solution to support a
great number of standards with a single radio set. There are also other emerging motives for reconfigurability, e.g. context aware services. For the hardware
required by these reconfigurable radio systems, there are standards, which were
discussed in this chapter.
A detailed architecture defined for the processing platform of SDRs would
lead to portability problems. Therefore, the focus has been on defining a common middleware that provides abstraction of the software and hardware platforms
and thus endorses portability and modularity. The SCA and the SWRadio are
open SDR framework architectures that make extensive use of object oriented
techniques, i.e. the middleware. They are the key elements leading to SDR standardisation.
The next chapter focuses on the research projects related to the SDRs. Early
projects have proven the viability of the SDR concept and there are projects in
progress, which aim to bring the SDR concept into mainstream radio architectures
by using the industry standard components discussed in this chapter.
Software Defined Radio Projects
This chapter reviews the historical perspective of the evolution of the SDR architectures and the current state of the art SDRs by presenting a few of the most influential SDR projects. Section 4.1 presents the SPEAKeasy program that proved
the potential of the SDR concept for military radios. Section 4.2 discusses the
ongoing JTRS program, which will replace the hardware intensive military radios
with the more flexible, interoperable SDRs [22]. The program is also developing
an open architecture framework for SDRs, i.e. the SCA. Section 4.3 presents a
few other projects that are either associated to research on SDR related topics or
to the development of SDR sets. Section 4.4 summarises the chapter.
The SPEAKeasy was a US Department of Defence program whose aim was, in
cooperation with industry, to prove the concept of multi-band, multi-mode software programmable radio operating from 2 MHz to 2 GHz [20]. It was intended
to be able to operate with multiple military radios by employing waveforms that
can be selected from memory, or downloaded from external storage or over-theair (OTA) [19]. The SPEAKeasy was designed as a totally open architecture that
can provide secure connections, interoperability and programmability. The benefits of the architecture include seamless connection of various radios and bridging
between different systems. Military applications include tactical radio systems
as well as voice and data communications to aircraft and onto battlefield. Civilian applications also exist: emergency communications, law enforcement radio
communications and public safety.
The SPEAKeasy program evolved from the earlier technologies of the Air
Force, i.e. Tactical Anti Jam Programmable Signal Processor (TAJPSP) initiated in 1989 and the Integrated Communications, Navigation, Identification and
Avionics (ICNIA) system, which was one of the first systems to use a digital programmable modem, from the late 1970’s [20].
SPEAKeasy Phase I
The main goal of the SPEAKeasy Phase I (1992-1995) was to develop a reconfigurable modem with an open architecture and demonstrate its feasibility. The
objectives were to prove the potential of the SDR to solve interoperability issues and problems related to product lifecycle shortening, due to rapidly evolving
technologies [2, 20]. To achieve this, the addition of new technology had to be
simplified. Related to this, an objective was to form a software architecture that
would support the addition of new waveforms.
The wide bandwidth was divided into three sub-bands with independent RF
channel components feeding the same ADCs, which was an important concept in
the sense that it became a standard procedure used in many SDR projects. Only the
Figure 4.1: SPEAKeasy Phase I Architecture [21]
midband, 30 MHz to 400 MHz , was implemented in the feasibility demonstration
The Phase 1 design included RF up- and down-converters with wide bandwidth, high speed-speed, high dynamic range ADCs, four 40 MHz Texas Instruments C40 digital signal processors and a 40 Mhz RISC information security
(INFOSEC) module called CYPRIS [20]. The INFOSEC module included both
communication security (COMSEC) and transmission security (TRANSEC). The
term COMSEC denotes the functionality for encryption of message data, whereas
the term TRANSEC denotes the support for modulation functionality designed to
protect transmissions from interception, e.g. by frequency hopping. CYPRIS was
programmable and the cryptographic algorithms were implemented in software
(however, in [2], it is mentioned that CYPRIS was not actually used until Phase
The hardware was built into a VME chassis. The VME bus was used for control and there was a specialised high-speed bus for data. A Sun SPARC workstation was used as a part of the user interface. The SPEAKeasy Phase I architecture
is shown in Figure 4.1.
The wide frequency range was divided into three sub-bands with different
analog radio parts. Wideband waveforms would have needed more processing
power than the Phase 1 equipment had, i.e. FFT (e.g. on ASICs) would have
been needed [20]. The generic narrowband waveform support of the SPEAKeasy
Phase I included the following modulation methods: support of non-hopped and
hopped amplitude modulation from 50 Hz to 20 kHz (DSB, USB-SC, LSB-SC),
non-hopped amplitude modulation (ASK, CW), frequency modulation (FM, FSK
with 2-8 tones), phase modulation (MPSK, hopped and non-hopped DPSK and
QDPSK, OQPSK), and 4, 16, 64 and 256 QAM. Data rates are supported up to
20 kbps. For digital modulations, the supported error detection and correction
methods are (16, 7) and (31, 15) Reed-Solomon and convolutional codes of K=7,
R=1/2 and T=133 or 171 [19].
The Phase 1 system was first demonstrated in August 1994 to operate with
HAVE QUICK, HF modem, automatic link establishment and SINCARS [19].
Simultaneous frequency hopping transmission on HAVE QUICK and SINCARS
as well as bridging networks that use these waveforms were also demonstrated.
Programmability was also shown by modifying a waveform on two units. At
JWID-95 interoperability demonstration the system was demonstrated on-the-air
[20]. The Phase-1 modem and software performed well but lack of ease of use
remained a disadvantage.
SPEAKeasy Phase II
The most important objective of the SPEAKeasy Phase II was to extend the operational scope from the modem to an open, modular and reconfigurable architecture
for the whole radio. To make the architecture cost-effective, commercial standards
and commercial of-the-shelf components were chosen. The capabilities were supposed to include reprogrammable security, wideband modem and continuous RF
coverage up to 2 GHz [20].
Motorola, the main contractor of the Phase 2, designed a wideband RF transceiver, which reduced distortion caused by the IF processing by using the homodyne design [20]. The signal processing hardware consisted of C40 DSPs supported by FPGAs. A commercial palmtop computer with Windows 95 was used
as the user interface. The SPEAKeasy Phase II architecture is shown in Figure
One of the challenges of the Phase 2 was to increase the number of simultaneous conversations, which required quicker reconfiguration of the INFOSEC
module in order to allow fast context switching [20]. The initially used CYPRIS
INFOSEC module had to use context switching between data encryption and generation of hop sequences for transmission security. However, advanced waveforms cannot tolerate the long switching delays. The Advanced INFOSEC Module (AIM), which was designed in order to overcome the problem, consisted of
three 100 MHz, 32-bit RISC processors [20]. As shown in Figure 4.2, resources
are attached to either the red (unencrypted) or the black (encrypted) PCI bus,
which is a typical requirement for military radios. The buses are separate and the
crypto processors (CP) of the INFOSEC services provide the inter-bus communication. The CP is required for each active channel, while the key processor (KP)
of the INFOSEC module is needed only when the channel is set up [20].
The RF subsystem of the Phase 2 architecture could transmit and receive multiple channels simultaneously and in the modem subsystem, the parameters could
be changed and the channels could be reallocated without interrupting the operation of concurrently established channels [20].
The software architecture defined modules, which include RF Control, Modem Control, Waveform Processing etc. This was a significant distinction from
Figure 4.2: SPEAKeasy Phase II Architecture [21]
the Phase1 architecture, which was based on functional flows lacking true modularity [2]. The modules communicated over the bus by using a layered protocol
[20] asynchronously without a centralised operating system [2]. The implementation units used the PCI bus. The bus formed the lowest layer of the protocol stack,
i.e. the physical layer. There were three software layers: link layer, communications layer and application layer [20]. The communications layer used the lower
layers for message passing, whereas the communication layer itself detected the
installed resources, established the links as well as performed the queueing and
buffering of the data. The application contained the waveform software that used
the APIs of the lower layer.
The Phase 2 was planned to be a four year project with model-year development versions. Enhanced model-year-1 units were field demonstrated at Army’s
TX-XX-AWE experiment in 1997. They managed to accomplish bridging aircraft HAVE QUICK UHF to Army SINCGARS VHF radios and hand-held LMR
[20]. The waveform for LMR compatibility was developed in less than 14 days
and it was downloaded to the SPEAKeasy units during the demonstration from a
laboratory far away.
The model-year-1 proved to be so successful that it went into production and
the Phase 2 had no chance to continue with further research. Therefore, a part
of the goals remain unaccomplished. The model-year-1 units did not include the
support for the full RF range, wideband waveforms, data gateways and networking [20]. The production units were limited to 20 - 400 MHz and only a few
waveforms were implemented. The speed of the cryptographic processor limited simultaneous connections because there was no opportunity to implement
the AIM. The INFOSEC module should be able to support multiple simultaneous
COMSEC and TRANSEC functions and handle the context switching at different
rates. That remained a problem [20].
Joint Tactical Radio System (JTRS)
The Joint Tactical Radio System is a family of military software radios. They
are modular, multi-band and multi-mode networked radio systems. Examples
of implementations of the JTRS for different purposes include the Navy Digital
Modular Radio (DMR) [24], WITS [23] by Motorola and the SDR-3000 [27] by
Spectrum Signal Processing Inc. and the NRL Software Radio [28], which is an
outgrowth of the JCIT. There is a group of specified domains, e.g. the hand-held
domain and fixed maritime domain, that have different needs. However, the JTRS
architecture ensures interoperability across radios designed for different domains.
The JTRS program is a process consisting of three steps that aim to define,
standardise and implement an architecture for software defined radios. The result
of step 1 was the definition of the base architecture. Step 2 refined the baseline
architecture to the SCA, which will be the basis for future military radios [2]. The
SCA has also been used as a starting point for standardisation process of commercial SDRs, as described in the previous chapter. The next subsection describes the
first two phases, whereas the last two subsections discuss two already deployed
product families.
The Programmable Modular Communications System (PMCS) team suggested
that the US Department of Defence should replace old discrete radio systems with
a single SDR family [25]. The PMCS research program was a successor of the
SPEAKeasy program. By using the knowledge and technology gained from the
SPEAKeasy as a basis, the PMCS program developed a reference model [2]. The
JTRS Joint Program Office (JTRS JPO) is a successor of the PMCS [25]. The
reference model of the PMCS was also adopted by the SDR Forum.
Three consortiums lead by Raytheon, Boeing and Motorola were contracted
to make initial proposals [2]. The Modular Software Defined Radio Consortium
(MRSC), composed of Raytheon, BAE Systems, ITT Industries and RockwellCollins, was contracted in 1999 to develop the JTRS SCA [23]. The MRSC contract integrated validation and development processes of the architecture. Seven
other contracts were awarded to other companies, in order to have a third party
validation and thus, to reduce risk. Each of the MRSC members provided a prototype for validation. For instance, the Raytheon prototype was a 4 channel radio
containing a 2 MHz - 2 GHz RF front end and an implementation of the SCA CF.
A set of waveforms was provided, e.g. VHF-AM, VHF-FM, VHF-ATC, HQ I/II,
UHF DAMA/DASA and HF-ALE ported from the Rockwell prototype.
The contract of Assurance Technology Corporation consisted of developing a
SINCGARS/ESIP waveform and a test suite. The Boieng contract included developing an open-source implementation of OE and CF requirements, validation of a
SCA 2.0 compliant CF on a testbed, and integration studies. Harris was contracted
to build a manpack domain radio and to develop a compliant CF. Motorola evaluated the SCA on their existing WITS and DMR product lines. Rockwell-Collins
validated critical timing issues of the Link-16 waveform. Thales was contracted to
evaluate impact of the SCA on military hand-held radios and to build a compliant
prototype. The Vanu Inc. was contracted to evaluate the technology and variants
of the SCA for handhelds.
The JTRS program has focused on the common infrastructure software, i.e. the
middleware, instead of a detailed architecture. The were two reasons for this
decision: Firstly, in the SPEAKeasy radios, the infrastructure code comprised one
third of the whole software. Secondly, industry pointed out that portability of
components requires interfaces between radio entities and the platform [25]. The
architecture had to be clearly defined yet flexible, in order to provide extendibility
to new waveforms and hardware by rapid insertion of technology. Thus, the SCA
is the core of the JTRS architecture.
Modular design of both software and hardware allows easy upgrades and replacement of components. Legacy waveforms and new waveforms, like the Wideband Networking Waveform, are implemented in software [22]. The waveform
software is supposed to be common for all implementations in order to ensure interoperability. The latest document of operational requirements includes 33 waveforms that each JTRS implementation should support [23]. The capabilities of the
JTRS are evolutionary in the sense that they can be increased along with technological advancements or when funding allows it.
Wireless Information Transfer System (WITS)
The WITS is Motorola’s JTRS compliant radio based on SDR Forum’s architecture [2]. The architecture of WITS has been built on the Motorola’s long-term
experience on SDRs, from the SPEAKeasy, DMR and JTRS programs and the involvement in the SDR Forum. The WITS-based systems are used by the US Navy
and the product line will also expand to the commercial market. The products
available in 2002 were two and four channel radios that could be linked together
to form a system of 128 independent channels with 108 dBm of sensitivity [2].
The architecture is an instantiation of the JTRS. The software architecture is
based on the SCA, i.e. it is layered and modular. The lowest layer is related
to the abstraction of the hardware modules. The physical entities are mapped
into the hardware modules defined by the architecture, with the exception of the
antenna and amplifiers, which are specified as external devices. The implementation of hardware is mostly composed of Line Replaceable Units (LRUs) that are
connected through a set of Compact PCI (cPCI) buses. The current LRUs include
transceivers, pre-selectors, modems, networking units and INFOSEC modules [2].
Most of the processing units consist of a combination of DSPs and ASICs. The
ASICs are mainly used for wired communication and RF processing. The ORB
supports sharing of the processing capacity of the DSPs located around the system. The INFOSEC module is the Motorola’s AIM, which was described in the
SPEAKeasy section.
Each module, including LRUs and internal ones, has to implement POSIX
APIs, which are used for interfacing with higher layers of the architecture [2].
The existing waveform software does not need any modifications, when a new
piece of hardware is added since all elements have to be POSIX-compliant. The
available RF units, which use direct down-conversion, do not support high data
rates, but for the present military applications, the WITS is very suitable and the
capabilities can be expanded [2].
The SDR-3000 software defined radio transceiver platform is a product family
designed for implementing dynamically reconfigurable, high-performance, cPCIbased SDRs [27]. Hundreds of simultaneous transmit and receive channels with
independent air interfaces are supported. An optional SCA CF is available, but the
platform is not exclusively a JTRS implementation. US DoD chose SDR-3000
development platform, including Version 2.2 of SCA CF developed by Harris
Corporation, as a commercially available JTRS representative hardware set for
waveform development [27].
In addition to the waveforms required for JTRS, the SDR-3000 platform is
able to support various mobile cellular air interface standards, including multiple
2nd generation systems and WCDMA [2]. The SDR-3000 consists of a selection
of modules, such as the PRO-3100 software defined I/O (SDIO) module, the PRO3500 baseband engine and the TM1-3300 transition module. The SDIO processor
module contains four Xilinx Virtex II FPGAs. The baseband processing module
includes two PowerPC G4 processor for modem and coding as well as expansion
slots for additional processing capacity. Differential signalling in the I/O bus at
2.4GB/s is used for achieving the peak rate of the transition module, which is the
A/D and D/A interface within a suitable range for most standard IF frequencies.
It is designed to be capable of achieving a very high SNR performance [27].
Other SDR Projects
The JCIT is another military SDR, whereas the CHARIOT and SpectrumWare
were academic projects, although funded by DARPA. European projects as well
as the GNU Radio are also discussed in the following subsections.
Joint Combat Information Terminal (JCIT)
The JCIT is a multi-band multi-mode SDR developed by the US Navy Research
Laboratory (NRL) [4]. The JCIT was designed as deployable product for Army
avionics, operating in frequency bands from HF up to 2.5 GHz. The focus of the
design was on the hardware capacity, i.e. the extensive use of FPGA and DSPs.
The radio sets include a huge number of processing elements. A wide variety
of modulation formats and standards are supported [4, 36]. The JCIT program
has also made a significant contribution to the SDR Forum’s architecture, i.e. the
domain manager, which loads waveform objects onto the resources of the system
The CHARIOT (Changeable Advanced Radio for Inter-Operable Telecommunications) was designed at Virginia Tech during the DARPA GloMo programs [2].
The Virginia Tech’s contribution to the program involved several wireless technologies. The CHARIOT is most closely related to the mobile and hand-held
domain. This domain is specially challenging from the point of view the digital
signal processing capacity, when high data rates are needed. The CHARIOT’s approach to this issue consists of a formalised structure for implementing an SDR,
using reconfigurable hardware [2]. This was challenging since the reconfiguration
time of FPGAs is prohibitevily long [2] and implementation using only DSP processors would be large and expensive [29]. Additionally, the power consumption
is an important factor in this domain. There are three new ideas used in the CHARIOT in order to solve the problems: configurable computing machines, hardware
paging and stream-based processing. These techniques enabled small hand-held
devices to maintain the reconfigurability while providing enough processing capacity for high data rates.
The focus was on the formalised architecture that allowed the use of dynamically reconfigurable hardware in SDRs [2]. The architecture was designed to be
scalable and flexible by using a layered model. The Layered Radio Architecture
for interfacing comprises three layers: the Soft Radio Interface (SRI), the Configuration Layer and the Processing Layer. The SRI Layer handles the external
interfaces as well as control of the Configuration Layer. It also decides which
waveform should be used. The Communications Layer handles the setup of data
and algorithm programming flows, and provides status information to the upper
layer. This layer also sends command messages, which form together the algorithm that is performed, to the Processing layer. The Processing layer performs
the actual computations based on the received commands.
The stream-based processing is used for communication between the layers
and in the Processing Layer. Data and programming information streams consist of packets delivered through the same paths and interfaces. This architecture
lends itself to pipelining [2]. Algorithms are divided into modules, which should
be designed in a such way that they can perform their operation independently.
By using the stream-based processing approach, new processing modules can be
easily added, i.e. system is scalable. This approach also simplifies interface design.
The stream concept can used at multiple levels: a super stream handles the
layers as modules. Control packets change the operation of modules. In order
to improve the processing capacity per physical area, the CCMs were selected to
be used in the modules for the Processing Layer [2]. A CCM is a customised
FPGA that uses a higher level of abstraction, i.e. higher granularity. They use
conventional DSP blocks that may be linked and controlled in order to implement
algorithms. The CCM developed by Virginia Tech is called STALLION. The
STALLION consists of independent reconfigurable functional units. In the run37
time reconfiguration concept, the leading packet of a stream is used to reconfigure
the unit at the head of the stream. This leads to fast distributed reconfiguration
since the streams control the flow independently [2].
The SpectrumWare project at MIT utilised the constantly advancing performance
of general purpose processors. An advantage of this processing platform is that
the radio subsystem and the applications use the same hardware and operating
system, which simplifies programming [2]. The development environment, i.e.
a UNIX OS, is widely known and mature. The core of the system consists of
the radio algorithms implemented on a workstation. The I/O between an external
wideband tuner and the workstation was a problem that had to solved.
In typical non-real-time operating system, user-space applications cannot perform even near real-time processing using I/O devices. There are many factors
that make the data transfer delays unpredictable. The SpectrumWare system uses
a modified UNIX OS and DMA-transfers pass data to buffers in kernel-space [2].
The buffers are mapped to user-space by using a virtual memory approach. The
variable delays and low capacity of the standard PCI bus resulted in need to design
a dedicated I/O solution, i.e. the General Purpose PCI I/O (GuPPI). The GuPPI
buffers data between a daughtercard and the workstation, thus relaxing the timing
issues. The transfers are performed using blocks of data.
The Signal Processing Environment for Continuous Real-Time Applications
(SPECtRA) was implemented to allow rapid development of reusable real-time
radio software [2]. The SPECtRA consists of a library of signal processing modules, a set of interface modules and a scripting language for defining SDRs. It
supports several adaptation methods based on environment and user needs. One
of the innovations was to pull data in the processing flow instead of pushing. This
makes multi-rate processing easier and decreases redundant processing.
An experimental system, which implemented a GSM base-station, was built.
In 1998, the project team left to start Vanu Inc. [3]. Vanu has build various
software implementations of waveforms, e.g. cellular standards. The signal processing software is mostly written in a high level language.
SDRs were recently recognised by the FCC as a new category of radios. The
Vanu Software Radio GSM Base Station by Vanu Inc. was the first SDR device
to fulfil the FCC’s certification process [30]. This is a positive sign for the future
of the SDR concept since regulatory issues have been seen as one of the key
challenges [4].
European Perspective: ACTS and IST Projects
In the context of the ACTS (Advanced Communications Technologies and Services) programme, the European Union has funded several R&D projects related
to SDR [33, 32]. Figure 4.3 from [33] shows the coverage and focus of the
Figure 4.3: ACTS Projects [33]
projects. There are areas where the coverage has been minimal within the ACTS
programme, i.e. the network and spectrum issues and business models.
Currently the work continues in the scope of the IST (Information Society
Technologies) programme within the EU’s Sixth Framework Programme (20022006). The TRUST project adopted a user-centric perspective by examining the
user requirements in order to identify what is needed to support reconfigurable
radios. The SCOUT project is continuing the research initiated in TRUST on
reconfigurable terminal and network architectures. The research areas of SCOUT
include a number of technical, regulatory and business issues [35].
GNU Radio
GNU Radio is a software project that, combined with a minimal hardware, can
be used for building radios whose waveform processing is defined in software
[37]. The purpose of GNU Radio is to do signal processing needed by different
radios in free software, in order to give software developers an easy access to
electromagnetic spectrum so that they can get an understanding of it and develop
new ways to utilise it. Compared to ordinary hardware radios, GNU Radio offers
reconfigurability just like any other SDR project. Currently only a couple of types
of radio have been implemented but if one has adequate understanding of a radio
system, GNU Radio can be programmed to support it.
GNU Radio consists of Gnu Radio Software and Gnu Radio Hardware. The
hardware required for building a receiver is composed of an RF Front End and
an Analog to Digital Converter. There are no kind of actual specifications of the
hardware. Any suitable components can be used. For low bandwidths, the ADC
can be a PC sound card, and there is also project for a dedicated hardware, called
Universal Software Radio Peripheral (USRP). The basic architecture of the USRP
is shown in Figure 4.4. The FPGA is used for performing the most intensive
processing, i.e. it contains up and down converters, decimators and interpolators,
in order to reduce the bit rate to a level suitable for the USB2 connection.
Gnu Radio Software is organised in a such way that a graph which describes
the data flow in the radio system is handed off to the runtime system for execution. The vertices are signal processing blocks and the edges are the connec39
Figure 4.4: Universal Software Radio Peripheral [37]
tions between them. At the moment, the only fully supported operating system
is GNU/Linux but there is ongoing work at least on Windows and Mac OSX.
The currently available Gnu Radio Software supports only FM radio and HDTV
receiving. The FM radio requires a bandwidth of about 200 kHz which is usually out of the range of PC sound cards. The HDTV support necessitates a better
ADC. With relatively little work, the support could include for example NTSC
television, AM, SSB, Telemetry and HAM packet radio.
The SPEAKeasy program was a successful feasibility demonstration of the software reconfigurable radio for military purposes. It also encompassed many important concepts for SDRs, such as the open and modular architecture as well as
the use of reconfigurable hardware. The program has had a number of successors.
The JTRS program focuses on portability of waveforms across radio platforms, interoperability among radios, reuse of common software, use of cost effective commercial components and scalability. To achieve these goals, the JTRS
program has developed the SCA, which was discussed in the previous chapter.
There are several existing implementations of the SCA, e.g. the SCARI, and complete JTRS compliant radio systems, such as the NRL Software Radio, the WITS
and the SDR-3000.
There are also several other SDR projects. A few of them were presented
in this chapter. The JCIT is another military software radio developed by the
NRL. Two significant academic projects were presented: the CHARIOT is Virginia Tech’s SDR and the SpectrumWare was developed in MIT until the project
evolved to founding of the Vanu Inc. and a commercial product line. In Europe,
many SDR related projects have been conducted within ACTS and IST technology programmes. The open source community has also launched an SDR project,
i.e. the GNU Radio.
Different radios for various application domains serve different purposes [2].
There has to be done trade-offs that depend on the domain. For example, handheld devices are limited by size and power consumption, whereas fixed station radios may e.g. relax RF front end requirements by employing multiple RF modules
or use high power DSPs. Therefore, none of the architectures proves to be better
than all the others. For instance, the WITS performs well in the main military
domains, while the CHARIOT’s approach is suitable for the low-power hand-held
radios, which need high bit-rates. Nevertheless, at a high level, the architectures
are usually very similar to reference models, such as the PMCS model.
The software defined radio is a far reaching topic, since it is an all encompassing
solution, for which only imagination limits the capabilities that can be planned.
Thus, in the scope of a short report, only a part of related items can be treated.
A relatively traditional view was chosen, omitting potential future trends like the
Cognitive Radio.
Chapter 2 discussed the implementation issues mainly focusing on the physical layer. The implementation of software defined radios is a wide and challenging
issue. The starting point of the chapter was the general structure of digital communication systems. The requirements set by the need for multi-band, multi-mode
operation and reconfigurability have implications on implementations of various
parts of a software defined radio set, ranging from the selection of processing
hardware to the RF front end.
There are a few critical points: considering the physical implementation, the
analog-to-digital conversion and the power consumption of many of the components are among the most important issues, which limit the choice of physical
layer architecture and eventually the achievable performance
Software defined radio has often been seen as a design problem, mostly related
to the low-layer air interface implementation of a radio node, capable of operating in multiple frequency bands and multiple modes. There are a lot of other
significant tasks, such as the resource management and the handling of reconfiguration, which suggest that the scope of the concept is wider. There was also a
short discussion of these topics in Chapter 2.
Chapter 3 introduced various standards related to software defined radios and
the current efforts related to the standardisation process of frameworks for efficient
development process.
In general, multiple aspects, including compatibility, portability and rapid development cycles, lay demand for standardisation. Considering radio systems, the
great number of air interface standards has resulted in the need for reconfigurable
systems capable of operating together with a wide variety of legacy systems. Different services and communication environments need different modes, thus making the reconfigurability the only feasible solution for integrating a wide range of
applications in a single radio set. There are also other emerging techniques that
need reconfigurability, such as context aware services that dynamically optimise
the air interface.
The framework architectures include the SCA and the SWRadio. They incorporate industry standard object oriented techniques into the processing environment of software defined radios. A detailed architecture defined for the processing platform would lead to weak portability of software modules. Therefore, the
focus has been on defining a common middleware that provides modular abstraction of the software and hardware platforms. The SCA and the SWRadio are open
architectures that extensively use the middleware. They are an essential path to
Chapter 4 focused on the research projects related to the software defined radios. Early projects have proven the viability of the concept and there are projects
in progress aiming to bring software defined radios into mainstream radio architectures by using the industry standard components that were discussed in the
The SPEAKeasy program was a successful feasibility demonstration of the
software reconfigurable radio for military purposes. It has had a number of successors. The JTRS program focuses on the portability of waveforms across radio platforms, interoperability among radios, reuse of common software, use of
cost effective commercial components and scalability. To achieve these goals that
are common to many projects, the JTRS program has developed the SCA, which
was discussed in Chapter 3. The SDR Forum, which is a non-profit organisation
promoting software defined radio technologies, has also contributed to the SCA.
There are several existing instantiations of the JTRS architecture, including the
WITS and the SDR-3000.
A number of other significant projects were also presented in Chapter 4. These
were the JCIT military radio, and two academic projects: Virginia Tech’s CHARIOT and MIT’s SpectrumWare. One of the main contributions of CHARIOT was
a new kind of a reconfigurable processor, i.e. the configurable computing machine called STALLION. SpectrumWare has evolved to a company called Vanu
Inc. that has a line of software radio products, which use conventional general purpose computer processors instead of more specialised hardware. In Europe, many
projects related to software defined radio have been organised within EU’s technology programmes. The open source community has also had a project called
the GNU Radio.
A few critical issues were identified. The wideband A/D conversion and power
consumption may be problematic in part of the application domains. The complexity of the management of networks, capable of supporting dynamically reconfigurable services, may at least slow down the adoption of some of the ideas.
However, the adopted systems have proven the viability of the concept of software
defined radio. None of the architectures is optimal for all applications. Instead,
different approaches serve different purposes. The problem has been addressed:
the frameworks, i.e. SCA and SWRadio, attempt to promote the portability and
reuse of software across different architectures. The FCC approval of Vanu Software Radio was a positive sign considering the future possibilities of software
reconfigurable radios.
Advanced Communications Technologies and Services
Analog-to-Digital Converter
Automatic Gain Control
Advanced INFOSEC Module
American National Standards Institute
Application Program Interface
Association of Radio Industries and Business
Automatic Repeat Request
Application Specific Integrated Circuit
Amplitude Shift Keying
Air Traffic Control
Bit-Error Rate
Configurable Computing Cachine
Code Division Multiple Access
Core Framework
Changeable Advanced Radio for Inter-Operable
Cascaded Integrator Comb
Communication Security
Common Object Request Broker Architecture
Commercial of-the-Shelf
Crypto Processor
Compact PCI
Contiuous Wave
Digital Audio Broadcasting
Digital-to-Analog Converter
Demand Assigned Multiple Access
Direct Conversion Receiver
Digital Enhanced Cordless Telecommunications
Navy Digital Modular Radio
Differential Phase Shift Keying
Double Sideband
Digital Signal Processor
Document Type Definition
Digital Video Broadcast - Handheld
Digital Video Broadcasting over Satellite
Digital Video Broadcasting - Terrestrial
Extremely High Frequency
Effective Number of Bits
Enhanced Data for GSM Evolution
European Telecommunications Standards Institute
Forward Error Control
Fast Fourier Transfer
Frequency Modulation
Field Programmable Gate Array
Frequency Shift Keying
General Purpose Processor
Global System for Mobile Communications
General Purpose PCI I/O
Hardware Abstraction Layer Connectivity
High Frequency
Integrated Communications, Navigation, Identification
and Avionics
Interface Definition Language
Institute of Electrical and Electronics Engineering
Intermediate Frequency
INFOSEC Information Security
Interoperable Object Reference
International Standard Organization
Information Society Technologies
International Telecommunication Union
Joint Combat Information Terminal
Joint Program Office
Joint Tactical Radio System
Key Processor
Key Performance Parameter
Local Area Network
Land Mobile Radio
Low Noise Amplifier
Line Replaceable Unit
Least Sensitive Bit
Lower Sideband - Suppressed Carrier
Look-Up Table
Medium Access Control
Model Driven Architecture
M-ary Phase Shift Keying
Millions of Operations Per Second
Modular Software Defined Radio Consortium
multimedia wireless systems
Operating Environment
Object Management Group
Offset Quadrature Phase Shift Keying
Object Request Broker
Open System Interconnection
Personal Area Network
Peripheral Component Interconnect
Programmable Modular Communications System
Platform-Independent Model
Phase Shift Keying
Platform-Specific Model
Quadrature Amplitude Modulation
Quadrature Differential Phase Shift Keying
Quality of Service
Reduced Instruction Set Computer
Radio Frequency
Radio Link Control
Software Communications Architecture
SCA Reference Implementation
Software Defined Radio
Spurious Free Dynamic Range
Single Channel Ground to Air Radio System
Signal-to-Noise Ratio
Signal Processing Environment for Continuous Real-Time
Soft Radio Interface
Tactical Anti Jam Programmable Signal Processor
Telecommunication Industry Association
Transmission Security
Ultra High Frequency
Unified Modeling Language
Universal Mobile Telecommunications System
Universal Serial Bus
Upper Sideband - Suppressed Carrier
Universal Software Radio Peripheral
Very High Frequency
Versa Module Europa
VITA Standards Organization
Work Force Administration
Wireless Information Transfer System
Wideband Networking Waveform
Multichannel Multipoint Distribution System
Extensible Markup Language
[1] R. E. Ziemer, R. L. Petterson, Introduction to Digital Communication, 2nd
edition, Prentice Hall, 2000
[2] J. H. Reed, Software Radio: A modern Approach to Radio Engineering,
Prentice Hall, 2002
[3] Walter Tuttlebee, Software Defined Radio: Enabling Technologies, Wiley,
[4] J. Mitola III, Software Radio Architecture, Wiley, 2000
[5] J. Mitola, “The Software Radio Architecture”, IEEE Communications Magazine, May 1995
[6] M. Dillinger, K. Madani, N. Alonistioti, Software Defined Radio: Architectures, Systems and Functions, Wiley, 2003
[7] H. Tsurumi, Y. Suzuki, ”Broadband RF Stage Architecture for SoftwareDefined Radio in Handheld Applications”, IEEE Communications Magazine, February 1999
[8] Z. Salcic, C. F. Mecklenbrauker, “Software Radio - Architectural Requirements, Research and Development Challenges”, The 8th International Conference on Communication Systems, Volume 2, November 2002
[9] S. Srikanteswara, R. C. Palat, J. H. Reed, P. Athanas, “An Overview of Configurable Computing Machines for Software Radio Handsets”, IEEE Communications Magazine, July 2003
[10] Object Management Group,
[11] Software Communications Architecture Specification V3.0, JTRS JPO, August 2004
[12] SCA Developer’s Guide Rev 1.1, Raytheon Company, 2002
[13] JTRS ORD Waveform Extract, Version a, April 2003
[14] Communications Research Centre, “SCARI”,
[15] Software Defined Radio Forum,
[16] SDR Forum, “Modular Multifunctional Information Transfer System
(MMITS) Task Group”,
[17] P. Ting, B. H. Wang, C. S. Tao et al, An Adaptive Hardware Platform for
SDR, SDR Forum Contribution, 2001
[18] PIM and PSM for Software Radio Components, Final Adopted Specification,
OMG, May 2004
[19] R. L. Lackey, D. W. Upmal, “Speakeasy: The Military Software Radio”,
IEEE Communications Magazine, May 1995
[20] P. G. Cook, W. Bonser, “Architectural Overview of the SPEAKeasy System”,
IEEE Communications Magazine, April 1999
[21] W. Bonser, SPEAKeasy Military Software Defined Radio, International Symposium on Advanced Radio Technologies, 1998
[22] JTRS JPO, “Joint Tactical Radio System”,
[23] P. A. Eyermann, M. A. Powell “Maturing the Software Communications
Architecture for JTRS”, Proceedings of the IEEE Military Communications
Conference, vol 1, 2001
[24] B. Tarver, E. Christensen, A. Miller et al, “Digital Modular Radio (DMR) as
a Maritime/Fixed Joint Tactical Radio System (JTRS)”, Proceedings of the
IEEE Military Communications Conference, vol 1, 2001
[25] J. Mitola III, “SDR Architecture Refinement for JTRS”, Proceedings of the
Military Communications Conference, vol 1, 2000
[26] L. Pucker, G. Holt, “Extending the SCA Core Framework Inside the Modem
Architecture of a Software Defined Radio”, IEEE Radio Communications,
March 2004
[27] Spectrum Signal Processing, “SDR-3000 cPCI Software Defined Radio Tranceiver Platform”
[28] Telenetics, Inc.,
[29] Mobile and Portable Radio Research Group / Virginia Tech, “Virginia Tech’s
GloMo Effort”,
[30] Vanu, Inc., “The Software in Software Radio”,
[31] J. Chapin, Overview of Vanu Software Radio, Vanu, Inc, 2002
[32] W. H. Tuttlebee, “Software Radio Technology: A European Perspective”,
IEEE Communications Magazine, February 1999
[33] D. Ikonomou, J. M. Pereira, J. da Silva,“EU funded R&D on Re-configurable
Radio Systems and Networks: The story so far”, Infowin Thematic Issue Mobile Communications, ACTS, 2000
[34] Information Society Technologies, “IST - Strategic Objectives - Mobile and
[35] SCOUT Project, “Smart user-centric communication environment”,
[36] Assurance Technology Corporation, “Joint Combat Information Terminal
[37] Free Software Foundation, “GNU Radio, The GNU Software Radio”,
Lemminkäisenkatu 14 A, 20520 Turku, Finland |
University of Turku
• Department of Information Technology
• Department of Mathematical Sciences
Åbo Akademi University
• Department of Computer Science
• Institute for Advanced Management Systems Research
Turku School of Economics and Business Administration
• Institute of Information Systems Sciences
ISBN 952-12-1486-4
ISSN 1239-1891