This 3-day course is designed for digital signal processing engineers, RF system engineers, and managers who wish to enhance their understanding of this rapidly emerging technology. Most topics include carefully described design analysis, alternative approaches, performance analysis, and references to published research results. Many topics are illustrated by Matlab simulation demos. An extensive bibliography is included.
2. Software Defined Radio Engineering
Day 1:
• SDR Introduction
• SDR Approaches:
•
•
•
Software Communications Architecture (SCA)
NASA STRS
GNU Radio and Simulink
• SDR Advantage/Disadvantage
• Digital Modulation for SDR
Day 2:
•
•
•
•
RF Channels
Channel Equalization
Multiple Access Techniques
Source and Channel Coding
Day 3:
• Analog Signal Processing
• Digital Signal Processing
2/6/2014
John Reyland, PhD
Stop me
and ask!!!!
2
3. Software Defined Radio Engineering
Basic High Level Structure of a Software Defined Radio:
2/6/2014
John Reyland, PhD
3
5. Software Defined Radio Engineering
Economical approach to getting started in SDR
Not shown: GPP feeds back setup commands to reconfigure the radio
2/6/2014
John Reyland, PhD
5
6. Software Defined Radio Engineering
What can you make from these?
• Software defined radio?
• A radio that has a well defined configuration file system that can be setup
for any signal within the limits of available hardware. The key concept is
that hardware and configuration files are flexible enough to be used in the
future for signals and were not anticipated when the radio was first built.
• Switch defined radio?
• A radio that requires the user to choose between a set of explicitly provided
signal functionality. Also called a multimode radio.
• Software designed radio?
• A radio that depends on programed components to process a predefined
signal. A pager or Gen 2 cell phone is an example.
2/6/2014
John Reyland, PhD
6
7. Space Telecommunications Radio System (STRS)
Goal: A single architecture capable of supplying the range of NASA mission classes
NASA requirements range from a small highly optimized radio with severe
size, weight and power constraints to complex radios with multiple operating
frequencies and high data rates. From [S13]:
“The STRS standard provides a common, consistent framework to
develop, qualify, operate and maintain complex reconfigurable and
reprogrammable radio systems. ...
The standard focuses on the key architecture components and
subsystems by describing their functionality and interfaces for both the
hardware and the software including waveform applications. “
2/6/2014
John Reyland, PhD
7
9. Software Communications Architecture (SCA)
A personal computer is based on an architectural infrastructure that establishes
an set of common practices and interfaces for writing applications.
Can a radio be
designed like this?
The US Government
seems convinced!
2/6/2014
John Reyland, PhD
10. Software Communications Architecture (SCA)
A goal of SCA is, from [S2]:
“Provide for the portability of
applications between different
SCA compliant implementations.”
SCA seeks to save time and money by
enabling deployment of SCA
compliant waveform applications on
radio hardware manufactured by
various companies.
2/6/2014
John Reyland, PhD
11. GNU Radio and Simulink
Simulink and GNU Radio comparison:
Simulink runs sample by sample (or frame by frame) simulation steps. Time steps are
locked to the fastest sample rate (however, not all blocks need to change state at this
rate). For each time step, a simulation state is updated. Subtle but important:
simulation states are updated as fast as the CPU can run, but they still match how the
state progression in a hardware sampling clock implementation such as an FPGA.
GNU Radio block diagrams achieve high speed simulation by generating the largest
possible batch of output samples when the scheduler determines the input samples are
available. GNU Radio block processing is event driven, an event (i.e. output data
ready) in an upstream block triggers processing in a downstream block. Items can have
metadata time tags, however this is an add-on that slows down processing..
Both Simulink and GNU Radio are developed in BDEs running on a PC.
However, Simulink seems to have been able to take over a large part of the FPGA
development market.
2/6/2014
John Reyland, PhD
11
12. SDR Advantages
SDR Makes Possible Adaptive Coding and Modulation (ACM):
C WLog2 1
Ps
WN 0
W = Channel bandwidth limit (Hz)
C = Input data rate, not including coding (bits/second)
Ps = Signal power (watts)
N0 = Noise power spectral density (watts/Hz)
R = Actual channel data rate
R<C for arbitrarily low error rate
“Given a discrete memoryless channel [i.e. each signal symbol is
perturbed by Gaussian noise independently of the noise effects on
all other symbols] with capacity C bits per second, and an
information source with rate R bits per second, where R<C, there
exists a code such that the output of the source can be transmitted
over the channel with an arbitrarily small probability of error.”
2/6/2014
John Reyland, PhD
12
13. SDR Advantages
Adaptive Coding and Modulation (ACM):
ACM attempts to take advantage of
the extra BW efficiency available
when link conditions improve
Shannon limit graph is based
on equations from
[A19], page 388
Eb
N0
Eb
N0
2/6/2014
John Reyland, PhD
C
10 Log10
W
2W
C
1
Psignal C
Pnoise W
13
14. SDR Advantages
Adaptive Coding and Modulation:
Given a current and slowly changing set of channel conditions, select a
combination of modulation and channel coding for best throughput. Practical
ACM has two basic requirements:
1.
Current channel conditions must be accurately known and must be slowly
changing. This works best where the receiver can report performance back
to the transmitter over a return channel. Open loop approaches, based on
weather conditions or link distance computed from GPS, may also be
possible. In any case long reporting delays make the system less stable.
Note also that ACM is probably restricted to slow fading channels
2.
The radio must support multiple waveforms at multiple data rates.
2/6/2014
John Reyland, PhD
14
15. SDR Modulation Types
A standard GMSK transmitter design,
let’s discuss each block separately
2/6/2014
22. RF Propagation Channels
Doppler frequency shift and
time dilation affect RF channels
where receiver and/or
transmitter are moving relative
to each other
(t )
vr (t ) v(t )cos (t )
Fixed inertial reference frame
2/6/2014
.
v(t )
23. RF Propagation Channels
Some Definitions:
c
Speed of light, 3e8 meters/second
fc
Carrier frequency (Hz)
(t )
Angle between receiver’s forward velocity and
line of sight between transmitter and receiver
vr (t ) v(t )cos
(t )
Velocity of receiver relative to transmitter
f d (t )
Doppler carrier frequency shift at receiver
Tt (t )
Transmit symbol time
Tr (t )
Receive symbol time
2/6/2014
24. RF Propagation Channels
Example 1:
1 GHz = 1e+9 Hz
fc
350 meters/second (constant, approx. Mach 1)
v(t ) v
(t )
vr
0 (constant, worst case for Doppler shift)
v
f d (t )
Velocity of receiver relative to transmitter
fd
Tt (t ) Tt
Tr (t ) Tr
v
c
fc
1e9
1
1e 6
Tt
vTt
c
350
3e8
1e 6
10(350)
1167 Hz
3
Doppler carrier frequency shift at receiver
Transmit symbol time
(1e 6) 1
350
3e8
(1e 6)(1.000001167)
Receive symbol time
This means receive symbol time increases by 0.0001167%. - called time dilation
2/6/2014
25. RF Propagation Channels
d = distance between transmitter and receiver at leading edge of transmit pulse
d+vTt = distance between transmitter and receiver at trailing edge of transmit pulse
d
c
Propagation time at leading edge of transmit pulse
Received Pulse, duration = Tr
d vTt
c
Propagation time at trailing edge of transmit pulse
Transmit Pulse, duration = Tt
d vTt
c
Tt
vTt
c
2/6/2014
d
c
vTt
c
Tt 1
v
c
Additional time duration of pulse at the receiver
Dilated time duration of pulse at the receiver
32. Channel Equalization Techniques
Raised cosine pulses have an extremely important attribute: at the ideal
sampling points, they don’t interfere with each other
Over an ideal channel, delayed transmit signal will be observed at the receiver.
Ideal channel:
sreceived (t )
stransmit (t
)
John Reyland, PhD
2/6/2014
33. Channel Equalization Techniques
Intersymbol Interference (ISI) comes about due to imperfect channels:
yreceive (n) 0.5x n 1
x n
0.5x n 1
Green = postcursor, occurs prior to the main sample
Blue = main sample in this illustration
Yellow = precursor, occurs after the main sample
John Reyland, PhD
2/6/2014
34. Channel Equalization Techniques
For this simple channel, we can calculate the effect of ISI:
x(n-1)
x(n)
x(n+1)
Received signal, no ISI
Received signal, ISI
-1
-1
-1
-1
-2 = -0.5-1-0.5
-1
-1
1
-1
-1 = -0.5-1+0.5
-1
1
-1
1
0 = -0.5+1-0.5
-1
1
1
1
1 = -0.5+1+0.5
1
-1
-1
-1
-1 = 0.5-1-0.5
1
-1
1
-1
0 = 0.5-1+0.5
1
1
-1
1
1 = 0.5+1-0.5
1
1
1
1
2 = +0.5+1+0.5
Primary effect of ISI is to degrade the BER . Simple BER calculations are no longer valid:
P(bit error) Q
2 Eb
N0
For the non-ISI case becomes much
more complicated with ISI
John Reyland, PhD
2/6/2014
38. Digital Signal Processing
Packet payloads generally use more complicated bandwidth efficient modulation
A simple example where the packet data length is based on the interleaver size:
2/6/2014
John Reyland, PhD
39. Digital Signal Processing
We will organize the SDR DSP discussion around the receiver architecture below:
This setup is suitable for many linear modulations in common use today:
• Nonlinear demodulation would replace equalizer with phase discriminator and
also probably not have carrier tracking
• CDMA would required additional code synchronization circuits
• OFDM would require an FFT to separate subcarriers
2/6/2014
John Reyland, PhD
40. Digital Signal Processing
Intermediate center frequency Fif = 44.2368 MHz.
Does this mean sampling frequency Fs > 88.4736 MHz ?
No, we can bandpass sample, by making Fs = (4/3) Fif = 58.9824 MHz. This has advantages:
• Lower sample rate => smaller sample buffers and fewer FPGA timing problems
• Fif can be higher for the same sample rate, this may make frequency planning easier
Disadvantage is that noise in the range [Fs/2 Fs] is folded back into [0 Fs/2]
2/6/2014
John Reyland, PhD
41. Digital Signal Processing
Complex basebanding process in the frequency domain, ends with subsampled Fs = 29.491 MHz
2/6/2014
John Reyland, PhD
46. Digital Signal Processing
After subsampling to Fs = 29.491 MHz, we can filter with an arbitrary low
pass filter to reject as much noise as possible:
We can also subsample further to reduce processing load
2/6/2014
John Reyland, PhD
47. Digital Signal Processing
A popular filter and decimate circuit is the cascaded integrator comb (CIC) filter
u( z )
x( z )
1 z
1 z
1 z
1 z
2/6/2014
1
1
1 z
4
1
1 z
1 z
1 z
1
2
1
1
jz
1 z1
jz 1 1 jz
2
1
1
1
jz
1
1
John Reyland, PhD
48. Digital Signal Processing
This CIC filter has the same frequency response as a 4 tap boxcar filter, see [D2]
2/6/2014
John Reyland, PhD
49. Digital Signal Processing
Downsample by 4 shown as 2
downsamples by 2.
Two CIC problems:
• Spectral droop applied to desired
signal (blue)
• Aliasing into desired signal
bandwidth
2/6/2014
John Reyland, PhD
Editor's Notes
Hor axis is SWAP also
Each “radio supplier can encapsulate company proprietary circuit or software designs, provided the modules meet the specific architecture rules and expose the interfaces defined for each module.”
SCA is published by the Joint Program Executive Office (JPEO) of the Joint Tactical Radio System (JTRS). San Diego, CA
Zeroing out end channels makes filtering easierZeroing out center channels avoids DC offset problem
Zeroing out end channels makes filtering easierZeroing out center channels avoids DC offset problem
Zeroing out end channels makes filtering easierZeroing out center channels avoids DC offset problem
Now that we have all these receive signals, how to combine?Scan and Switch variations. Could use second receiver to monitor unselected channels
Space Time coding is provided by alternate symbol transmitssions
Now that we have all these receive signals, how to combine?Scan and Switch variations. Could use second receiver to monitor unselected channels
Traceback length must be > 5W, where W = number of symbols of memory (1 in this case). See Proakis, page 525
Example pulse has0 excess BW
Here time response is dispersed (smeared). ISI is directly related to the channelfreq response. This bandlimited channel is sometimes called a memory channel, i.e. a channel with impulse response time duration >0.
Eprob. Bit error for antipodal signaling , such as BPSK
Wider BW will capture more total noise power1 Joule = 1 Watt*Seconds = energy, Energy/time = power(Watt*Seconds )*(1/second) = wattsIf B = 1000000, NF=1, then -100 +174-60-1 = 13dB
Wider BW will capture more total noise power1 Joule = 1 Watt*Seconds = energy, Energy/time = power(Watt*Seconds )*(1/second) = wattsIf B = 1000000, NF=1, then -100 +174-60-1 = 13dB
In a receiver SNRoutwill be limited by the above calculation if the sampled intermediate frequency SNR is great than SNRout.Best to chose a sampling setup that does not dominate the SNR These calculations are valid for a sine wave only
Start of message
We will go over each block but maybe not in that order