Uploaded by Oussama Dahaoui

Signal-Processing-for-Software-Defined-Radio-2019-Sample-Slides

advertisement
Signal Processing for
Software Defined Radio
Sample Slides for 2019
Software Defined Radio Signal Processing
Software Research Radio: Xilinx FPGA development system
VITA 57, FPGA Mezzanine Card (FMC) [G4]:
Analog Devices RF Agile Transceiver [G5]
Advantage: Low cost, state of the art technology
Disadvantage: Steep learning curve for custom
applications.
5/25/2024
John Reyland, PhD
2
Software Defined Radio Signal Processing
Software Research Radio : Nutaq PicoSDR
Advantage: Designed for FPGA
physical layer large scale algorithm
development. PC side can run GNU
Radio, C++ or Simulink
5/25/2024
John Reyland, PhD
3
AD9361 Demo
Analog Devices AD9361 (Catalina) Transmitter
70 MHz – 6GHz
P0_D[11:0]
Data_clk
Tx_Frame
FB_Clk
Programmable LPF
Halfband LPF 1
Halfband LPF 2
Interpolating LPF
DAC
Baseband Tx LPF
Secondary Tx LPF
12 bit parallel data input, CMOS or LVDS
Master data in/out clock, BBP (baseband processor) timing reference for data transfers
Input transmit data valid when high, zeros transmitted when low. Synced to FB_Clk
BBPclock, phase locked to Data_clk, times P0_D transfers
Interpolate by 1,2,4 or bypass. Gain 0 or -6dB. Taps = 16*(DAC/input clock).
Interpolate by 2 or bypass, coef = [-53 0 313 0 -1155 0 4989 8192 4989 0 -1155 0 313 0 -55]
Interpolate by 2 or bypass, coef = [-9 0 73 128 73 0 -9]
Interpolate by 2 or 3
12 bits
Third order Butterworth LPF, 3dB corner frequency programmable 625 KHz to 32 MHz
Third order Butterworth LPF, 3dB corner frequency programmable 2.7 MHz to 100 MHz
Derived from Analog Devices UG-570, “AD9361 Reference Manual” and AD9361 data sheet
5/25/2024
© John Reyland, PhD
4
Economy SDR
NooElec R820T SDR & DVB-T NESDR Mini
5/25/2024
© John Reyland, PhD
5
GNU Radio and Simulink
GNU Radio Companion signal flow graph details
Hardware
Source
Port
(complex data)
Parameter, seen
by all blocks
Parameter setup for
radio that drives port
5/25/2024
John Reyland, PhD
Port
(real data)
Hardware
Sink
Signal processing
block, usually
written in C++
Software
(GUI) Sink
6
GNU Radio and Simulink
Simulink VHDL code generation example
Key concept: Simulink BDE, VHDL, and FPGA logic are “Bit and cycle true”
Notice the very precise fixed point attribute (FPA) “sfix24_en12”, a twos complement
fixed point signed number with 24 total bits and 12 factional bits. FPA can be different
for every signal to minimize use of FPGA resources. This is a departure from the words
and bytes of processor based computing.
5/25/2024
John Reyland, PhD
7
Software Communications Architecture (SCA)
A goal of SCA is, from [S2a]:
“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.
Any qualified company can produce
signal processing software for an SCA
radio – software becomes a commodity
and price to the government falls
5/25/2024
© John Reyland, PhD
8
Software Communications Architecture (SCA)
The SCA “Big picture”, the framework that sets up SDR applications
Note the similarity
between the CF
application factory and the
personal computer BIOS
5/25/2024
© John Reyland, PhD
9
Space Telecommunications Radio System (STRS)
Is SCA suitable for space flight radio
reconfiguration? Space communication
can have different constraints:
• Space flight radios tend to use
slightly older more “time proven”
technology – thus computational
resources and memory may be
limited .
• Deep space missions can extend
over many years - the ability to
reconfigure a waveform after
deployment may have significant
advantages for data collection.
5/25/2024
John Reyland, PhD
10
Space Telecommunications Radio System (STRS)
NASA’s Space Communications and Navigation (SCAN) Test Bed
Launched on
July 21,2012
Tanegashima
Space Center
of Japan on
the launch
vehicle H-IIB
http://spaceflightsystems.grc.nasa.gov/SOPO/SCO/SCaNTestbed/
5/25/2024
John Reyland, PhD
11
SDR Advantages
For a given Bit Error Rate, higher bandwidth efficiency requires higher Eb/N0
8
𝐶
𝑊
7
Bandwidth Efficiency
6
 Ps / R 
Eb
 10 log10 

N0
P
/
W
 n

Unattainable
Region
5
16QAM
4
8PSK
3
2
1
QPSK
BPSK
BER assumption = 10-5
~9.6 dB
5/25/2024
Eb/N0 (dB)
John Reyland, PhD
12
SDR Advantages
SDR facilitates Adaptive Coding and Modulation (ACM):
BER assumption = 10-5
5/25/2024
John Reyland, PhD
13
SDR Advantages
CPE
M
H
z
862
54 -
54
2
TV
Station
-86
6
-8
2M
54
CPE
Hz
SDR Cognitive Radio Application: IEEE 802.11af TVWS Network (see [H8])
MH
z
Inter
net
Spectrum
Sensing
Licensed Incumbent
Data Base: TV
signals, wireless
microphones, other
WRANS
BS-CPE protocol is DAMA
(Demand Assigned
Multiple Access). DL
supports 1.5 MBPS, UL
supports 384 KBPS
Spectrum
Manager
Base
Station
In
te
rn
e
100 Km max WRAN radius
255 max number of CPEs
t
TV
Station
Geolocation
Data Base
5/25/2024
CPE
CPE (Customer Premises
Equipment): Data Comm,
Spectrum Sensing,
Geolocation
John Reyland, PhD
A similar cognitive radio
application is [H9]
14
SDR Modulation Types
 F  
sin  2  c  k 


  Fs  
QPSK Quadrature
components at the
receiver
xI ( k )
p (k )
y (k )
 F  
cos  2  c  k 


  Fs  
xQ (k )
p (k )
 F   1
xi (k ) sin  2  c  k  0


  Fs  
Sine Local Osc.
 F  
sin  2  c  k 


  Fs  
xI (k )

n = 0
1
2
3
4
5
k = 0
8
16
24
32
40
6
7
48
8
56
64
 Fc  
 k 
 Fs  
Cosine Local Osc. cos  2 

0
0
5/25/2024
Tb
2Tb
3Tb
4Tb
© John Reyland, PhD
5Tb
6Tb
7Tb
8Tb
9Tb
15
SDR Modulation Types
OFDM starts by converting symbols indexed by n at rate 1/Ts
Into parallel blocks indexed by k at lower rate 1/T = 1/MTs
bi (n )  jbq (n )
In this example:
M=4 input symbols per output symbol
Symbol rate Fs
Symbols on separate frequency muxed channels
now exit at Fs . Each block is an OFDM “symbol” at
block rate Fs/M
b(4k )
b(4k  1)
b(4k  2)
IDFT
We clock in time domain symbols, however Inverse
FFT input bins correspond to the frequency domain.
b(4k  3)
Channel 0 Symbols
Channel 1 Symbols
Channel 2 Symbols
Channel 3 Symbols
n  0 1 2 3 4 5 6 7 8 9 10 11 12
k 0 0 0 0 1 1 1 1 2 2 2 2 3
5/25/2024
Input symbol indexing
© John Reyland, PhD
16
SDR Modulation Types
4 Output
samples:
First input symbol Second input symbol
modulated by 0
modulated by Fs/4
Third input symbol
modulated by Fs/2
Third input symbol
modulated by -Fs/4
s (4k )
 b(4k )e j 0  b(4k  1)e j 0
 b(4k  2)e j 0  b(4k  3)e j 0
s (4k  1)  b(4k )e j 0  b(4k  1)e j /2  b(4k  2)e j  b(4k  3)e  j /2
s (4k  2)  b(4k )e j 0  b(4k  1)e j
 b(4k  2)e j 2  b(4k  3)e  j
s (4k  3)  b(4k )e j 0  b(4k  1)e  j /2  b(4k  2)e  j  b(4k  3)e j /2
Here is the output spectrum showing orthogonal channels spaced 1/MTs apart. Note that
sampling is at the original symbol rate: Fs = 1/Ts
Important: Four time domain symbols in results in four samples out
The four samples out are four samples/symbol on 4 different orthogonal channels
5/25/2024
© John Reyland, PhD
17
SDR Modulation Types
The CCDF shows the
probability of peak
power exceeding
average power.
PAPR = peak to average
power ratio implies this
probability, usually 10-4
5/25/2024
© John Reyland, PhD
18
SDR Modulation Types
A modern Continuous Phase FSK (CPFSK) design:
 F  
cos  2  c  k 


  Fs  
xI ( k )
a ( n)
1  
0  
Antipodal
Mapping
b( n)
p ( k ) x(k )
Pulse
Forming
 
 (k )   (k  1)    x(k )
L
Phase Ramp
Recrusion
cos  (k ) 
sin (k)
y (k )
 F  
sin  2  c  k 


  Fs  
Phase to
Complex Baseband
xQ (k )
Modulator
Fb = Source bit rate
Fs = MFb = Pulse sampling rate (M = number of samples in the transmit pulse)
Fc = carrier (or intermediate) frequency
Fs = output sample frequency
2 Fc radians
2 radians Fc cycles seconds

cycle
second Fs sample
Fs sample
5/25/2024
© John Reyland, PhD
19
SDR Modulation Types
A closer look at the CPFSK antipodal mapping, pulse forming and phase ramp recursion:
       1 cycle 
 M    M    2 radians 



h
1
 1 
 
M 
x(k )
n = 0
k = 0
1
1
2
3
4
2
5
6
7
8
3
9
4
5
6
7
8
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
2

 (k )

2
0
5/25/2024
M
2M
3M
4M
5M
© John Reyland, PhD
6M
7M
8M
9M
20
SDR Modulation Types
 F  
cos  2  c  k 


  Fs  
Let’s put it all together now:
y (k )
xI ( k )
a ( n)
p ( k ) x(k )
b( n)
1  
0  
Pulse
Forming
Antipodal
Mapping
 
 (k )   (k  1)    x(k )
L
Phase Ramp
Recrusion
k = 0
1
1
2
3
4
2
5
6
7
8
3
9
sin (k)
 F  
sin  2  c  k 


  Fs  
xQ (k )
Phase to
Complex Baseband
x(k )
n = 0
cos  (k ) 
Modulator
4
10 11 12 13 14 15 16 17 18 19

 (k )
-2Fb -Fb
0
Fb
0
Fb /2
2Fb

xI ( k )
xQ (k )
-Fb /2
y (k )
0
5/25/2024
M
2M
3M
4M
5M
© John Reyland, PhD
-Fc
0
Fc
21
SDR Modulation Types
As M is decreased, GMSK has less frequency fold back than RC filtered BPSK
Also, channelization is easier with GMSK due to tighter spectrum
Comparison of GMSK, BT - 0.3 with BPSK, 60% Excess BW, Samples/Symbol = 8
10
BT=0.3
Alpha=0.6, RC
0
Power Spectral Density
-10
-20
-30
-40
-50
-60
-70
5/25/2024
0
0.25 0.5 0.75
1
1.25 1.5 1.75 2 2.25 2.5 2.75
Normalized Frequency fT
© John Reyland, PhD
3
3.25 3.5 3.75
4
22
RF Propagation Channels
Simplest large scale path loss (fading): Large scale line of sight propagation
PTx  Transmit Power
Simplest case: Line of sight (LOS)
Friis equation (not dB):
PRx  Received Power
GTx  Transmit antenna gain
 2 
PRx  PTxGTxGRx 
2 n 
16

D 

with respect to isotropic gain
GRx  Receive antenna gain
n  2 for LOS, no obstructions
  Signal wavelength
5/25/2024
© John Reyland, PhD
23
RF Propagation Channels
Diffraction, reflection, scattering can all contribute to small scale multipath fading
Multipath: Multiple paths from transmitter to receiver. Small receiver or
reflector movements can cause variations in received signal power
5/25/2024
© John Reyland, PhD
24
RF Propagation Channels
For fixed receiver and reflectors, RMS delay spread and coherence BW describe
the channel time dispersion
tavg 
2
a
 k tk
k
a
2
k
k
t 2  
avg
 average excess delay
2 2
a
 k tk
k
a
2
k
 second moment
k
 t  t  avg   tavg 
2
 t = RMS Delay Spread
Coherence Bandwidth
5/25/2024
1
1
 Bcoh 
50 t
5 t
© John Reyland, PhD
2
See [R2], page 160
25
RF Propagation Channels
Doppler spectrum is brought about by multiple reflectors
Constant velocity, constant wavelength: multiple paths result in multiple Doppler shifts:
1 direct v cos  direct 
f direct 

2 t

1 reflect 0 v cos  reflect 0 
f reflect 0 

2 t

1 reflect1 v cos  reflect1 
f reflect1 

2 t

5/25/2024
© John Reyland, PhD
Assumption: reflections
come from point sources
26
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
5/25/2024
27
Channel Equalization Techniques
Center
Pre cursors
(occur before
the center)
Post cursors
(occur after
the center)
See [E1] and [E2]
6
5
4
3
2
1
0
Post cursors
Delay 1
u
Symbol
Delay 1
Symbol
Delay 1
Symbol
Delay 1
Symbol
c1
c2
c3
c4
A decision feedback
nonlinear adaptive
equalizer
Pre cursors
slicer
ylin ( n )
Weighted and summed
precursor decisions are
feedback to cancel
postcursor ISI
yeq (n )
-
Delay 1
Symbol
Delay 1
Symbol
c1
d
c2
d
c3
d
ynonlin (n )
© John Reyland, PhD
5/25/2024
Delay 1
u
Symbol
28
Channel Equalization Techniques
Receiver Summary
Known group delay distortion introduced by receiver analog processing:
Chebyshev 8th Order Low Pass Filter
Gain (dB)
Anti-alias LPF cleans up ADC
input, however group delay
variation is 66.5% of symbol
time
0
-20
-40
-60
0
400
600
800
1000 1200 1400 1600 1800 2000 2200 2400
Group delay variation = 1.33054 (nsec), Percent of symbol time = 66.5271
Group Dly (nsecs)
This will wreck QAM
5/25/2024
200
3
2
1
0
0
200
400
600
© John Reyland, PhD
800
1000 1200 1400 1600 1800 2000 2200 2400
Frequency (MHz)
29
Channel Equalization Techniques
Frequency Domain Equalization of OFDM
OFDM requires 2-dimensional
Frequency/Time equalizer
LTE single antenna base station
transmits a reference symbol
every sixth subcarrier in the
frequency domain. In the time
domain, two symbols per slot
carry reference symbols, also
called pilots
MF = Frequency domain channel
spacing, MT = Time domain
channel spacing.
Subcarrier spacing is 15KHz so
pilot spacing is 90 KHz
© John Reyland, PhD
5/25/2024
30
Multiple Access Techniques
CDMA: Extra data symbols at a higher rate are overlayed for channelization Extra
symbols are called “Chips”. Random chip sequence results in a “Spread Spectrum”
Spreading by 4 Chips/Bit:
Two ways to implement spreading:
Exclusive OR
Customer
Spreading
Data
Code
0
0
0
1
1
0
1
1
5/25/2024
Spread
Sequence
0
1
1
0
Multiplication
Customer
Spreading
Data
Code
-1
-1
-1
+1
+1
-1
+1
+1
© John Reyland, PhD
Spread
Sequence
+1
-1
-1
+1
31
Multiple Access Techniques
IEEE 802.15.4 defines the TDMA physical layer for Wireless Sensor Networks (WSN):
Contention slots: Remotes randomly pick a slot, listen for activity and then
transmit a reservation request. This type of random access is called Carrier
Sense Multiple Access (CSMA). Collisions between remote signals are possible
Contention free slots: Network coordinator has assigned a slot for exclusive use
of a remote. Assignment is communicated to all remotes through the beacon.
5/25/2024
© John Reyland, PhD
32
Multiple Access Techniques
Basic idea behind phase array
antenna beamforming:
0 = extra distance the wavefront must travel to antenna element E1
L2= extra distance the wavefront must travel to antenna element E2
L2+L3 = extra distance the wavefront must travel to antenna element E3
For a given carrier frequency f and speed of light C, extra distance corresponds
to phase shift in radians, for example:3  2 f  L2  L3  / C
Element receivers compensate this phase to create a main lobe at any angle
5/25/2024
© John Reyland, PhD
33
Multiple Access Techniques
In general phased array antennas are
two dimensional.
Z
Y
 El
 Az
X
Antenna lies flat in the XY plane
Define azimuth and elevation angles for
any point on the incoming plane wave
5/25/2024
© John Reyland, PhD
34
Multiple Access Techniques
For nonzero elevation angle,
calculate the horizontal and vertical differential distances
  Dx cos  Az 
Lx
Lx  Dx cos  Az  cos  El 
In a similar way:
cos  El  


  El
 Az
  Dy sin  Az 
Ly
Dy
Lx Ly
Lx
cos  El  

 Dx cos  Az 
Dx
Ly
Dy sin  Az 
Ly  Dy sin  Az  cos  El 
5/25/2024
© John Reyland, PhD
35
Source and Channel Coding
Entropy coding removes redundancy, but not necessarily in real time.
Voice coding removes redundancy from, generally, real time sampled voice
Goal: Rout < Rin
Rin
Rout
The voice coder works continuously to reduce the data rate needed to represent
the sampled voice. Low latency may be important for phone conversations.
Let’s look at efficient ways to obtain the voice samples …
5/25/2024
© John Reyland, PhD
36
Source and Channel Coding
Shannon’s insight was that maximum bit rate is not limited by bandwidth alone
but rather a combination of bandwidth and signal to noise power ratio.
Channel, max
error free rate = C
Information
Source, R bits/sec
Encoder
 Ps 
C  WLog 2 1  
 Pn 
Signal and noise power are
measured within bandwidth W
AWGN
Channel
BW = W
Decoder
Information Sink
Shannon tells us for R<C an encoder exists that
allows error free transmission. He does not tell
us any other details about it.
In 1948, when data signals were simple ASK and FSK, Shannon and Hartley were able to
foresee the need for the complicated noise-like signals we use today. Good references for
Shannon limit are [C6] and [C7]
5/25/2024
© John Reyland, PhD
37
Source and Channel Coding
Shannon-Hartley Capacity Limits
Start with a BER requirement,
say 10e-5. Plot the required
EbN0 points for 4PSK, 8PSK
with no channel coding.
 W   C   
Eb
 10 Log10   2 W   1 

C
N0

 
For the same C/W, we can
operate at lower BER with
more complicated coding.
We can get close to, but
probably not reach, the
Shannon limit.
Here we show BW limited
signals. See [A19] for a more
detailed version of this chart
that also includes power
limited signals (e.g. FSK).
5/25/2024
© John Reyland, PhD
38
Source and Channel Coding
Concatenated coding for Voyager mission to Saturn and Uranus
Outer coder
Data
Source
Reed-Solomon
(255,223) block
code, 8 bit symbols
Inner coder
Interleaver
Rate ½ Viterbi
conv. code,
constraint length 7
BPSK
Modulator
Channel
Very good burst
error protection
BPSK
Demodulator
Rate ½ Viterbi
conv. code,
constraint length 7
Deinterleaver
Reed-Solomon
(255,223) block
code, 8 bit symbols
Data
Sink
Power efficiency is extremely important: Coding gain of 6dB can double the communications
range between spacecraft and earth ([C8], page 172)
Voyager telecommunications achieved 10-6 BER at EbN0 = 2.53dB, 2Mbits/sec [C23].
What system considerations are not very important?
Bandwidth efficiency and adjacent channel interference, not many other users out there.
Delay, waiting time for image reconstructions is OK
5/25/2024
© John Reyland, PhD
39
Analog Signal Processing
 Tnoise 
F  1 


Tref 

Tnoise  Tref  F  1
Tref
F
Noise Temperature:
N0
Tref = 290K = room temperature in Kelvin
F = Noise Factor of network: ratio of output to input signal to noise ratio
Tnoise= Contribution of network to overall noise. Amount by which the natural temperature
would need to increase to account for additional noise source:
1.
2.
3.
4.
5/25/2024
Measure noise power density as shown
Remove network
Raise temperature of the resister to get the same noise level
Tnoise = required temperature increase
© John Reyland, PhD
40
Analog Signal Processing
Practical application: Satellite receiving system front end noise
FLNA  1.17, GLNA  100
TLNA  290 * ( FLNA  1)  50 K
Tant  3K
Gant  20
LNA
Waveguide
Gwg  0.95
Fwg  1 / Gwg  1.053 WG reduces signal without affecting
noise; WG loss becomes SNR ratio
Tref  290 K
Twg  290(1.053  1)  15.3K
Gsys  Gant * Gwg * GLNA  1900
Gsys  20 * 0.95 *100  1900
Sat. comm.
figure of merit
Tsys  Tant  Twg  TLNA
Gsys
1900

 27.8
Tsys
68.3
 3K  15.3K  50 K  68.3K
5/25/2024
© John Reyland, PhD
41
Analog Signal Processing
For LO = 2472 MHz, High Side Injection: Image Frequency at 2542 MHz is low
side injected and lands in desired IF. Desired signal is spectrally inverted
Intermediate
Frequency = 60 MHz
5/25/2024
© John Reyland, PhD
42
Analog Signal Processing
1st Nyquist zone
100
Fs = 80
100
100
Frequency (MHz)
5/25/2024
Fs = 80
802.11g
40
20
0
60
40
After ADC sampling
802.11g
2nd Nyquist zone
frequency folding
inverts spectrum
20
Anti-alias BP filtered mixer output:
0
3rd Nyquist zone . . .
2nd Nyquist zone
© John Reyland, PhD
60
0
40
20
Mixer output:
80
60 802.11g
Anti-alias filter makes sampled signal much cleaner:
43
Analog Signal Processing
Noise power density (i.e. 1 Hz) at antenna input:
10 Log10 kTa  174dBm / Hz
k = Boltzman constant = 1.38e-23 Joules/degree Kelvin = 1.38e-23 (Watt-Sec)/Kelvin
Ta = Antenna noise temperature = 290 degree Kelvin (about 64 degree Fahrenheit)
For a parabolic dish, noise temp varies with pointing angle.
Total noise power in a bandwidth B:
Receiver
bandwidth
Pn  174dBm / Hz  10 Log10 B
For received signal power = -100 dBm, SNR at IF output:
10 Log10  Ps Pn   NFdB
 10 Log10  Ps   10 Log10  Pn   NFdB
Receiver
bandwidth
5/25/2024
 100dBm   174dBm  10 Log10 B   NFdB
NFdB
© John Reyland, PhD
44
Analog Signal Processing
ADC dynamic range details for one in-band signal:
Signal power must be
backed off by peak to
average power ratio (PAPR).
PAPR margin should also
account for expected
inband blocker power.
Minimum SNR required
by the modulation type:
 VADC min 
SNRRe q  20 log10 

 VNoiseFloorADC 
Note: ADC driver amplifier must also
have sufficient dynamic range
5/25/2024
© John Reyland, PhD
45
Analog Signal Processing
Voltage sampling in the time domain:
𝑥𝑠 (𝑛) = 𝑥(𝑡)
𝛿 𝑡 − 𝑛𝑇 = 𝑥 𝑛𝑇
𝑛
5/25/2024
© John Reyland, PhD
46
Analog Signal Processing
Make the exponent a linear function of time (a ramp) and take the conjugate:
Now the complex exponential rotates CW and has a negative frequency spectrum
5/25/2024
© John Reyland, PhD
47
Analog Signal Processing
A complex representation is required at baseband because the modulation will
cause the instantaneous phase to go positive or negation:
e j BB (t )  cos  BB (t )   j sin  BB (t ) 
After up-conversion, phase is always positive and complex exponential terms are redundant
e  RF
j 
t  BB ( t ) 
Signal now can be real:
 cos RF t   BB (t )   j sin RF t   BB (t ) 
cos RF t   BB (t )   e  RF
j 
t  BB ( t ) 
e
 j RF t  BB ( t ) 
This forces the existence of a negative RF image (ignored for most analog processing):
5/25/2024
© John Reyland, PhD
48
Analog Signal Processing
Closer look at 0 MHz intermediate frequency (IF) in a 40 MHz sampling BW
NZIF: 40 MHz IF required sampling at 80 MHz
- One ADC for one real valued signal
ZIF: 0 MHz IF requires sampling at 40 MHz
-Two ADCs for I and Q complex signal
Both NZIF and ZIF use a 40MHz sampling BW!
5/25/2024
© John Reyland, PhD
49
Analog Signal Processing
LO_Q
VGA2
ADC
Anti-alias LPF
VGA1
Anti-alias LPF
LNA
VGA2
ADC
Matching
VGA1
LO_I
Matching
LO leaking out the
antenna can turn the
receiver into a transmitter
that is more easily located
by direction finding (DF)
equipment!
Matching
A Static DC offset due to on channel local oscillator feeding back to RF input
Because RF and LO frequencies are the same, there is no filtering to
prevent LO from feeding back into receiver thru paths shown
Encode
PLL Synthesiser
Consider LO frequency 𝜔𝑅𝐹 mixing with a phase shifted version of itself:
5/25/2024
© John Reyland, PhD
50
Analog Signal Processing
IQ imbalance of quadrature
downconverting mixer causes
loss of image rejection
Quadrature mismatch can cause
interference between subcarriers
located at mirror image frequencies
in OFDM systems. See [A46]
Typical IQ imbalance spec
is 0.05 dB and 0.07 deg
5/25/2024
© John Reyland, PhD
51
Analog Signal Processing
Summary, three main indicators of radio system quality:
5/25/2024
1.
Adjacent channel emissions; how much power are we dumping into
adjacent channels?
2.
EVM (Error Vector Magnitude). This is the average tightness of the
constellation points, a good indicator of overall system performance.
3.
Power efficiency; how much transmit power do we need to achieve
specified bit error rate (BER)?
© John Reyland, PhD
52
Digital Signal Processing
For our SDR DSP discussion, we assume packetized data
After the first packet is detected, the search window can be narrowed
If packet timing is known at receiver then, to help prevent false detection,
search window can be narrow after first packet detection.
Packetizing data is very common due to many advantages, among them:
• Fits in naturally with time division multiple access (TDMA)
• Symbol timing is re-estimated every packet preamble, for short packets
continuous symbol tracking throughout the packet may be unnecessary
• Interleaving and block coding may correspond to payload data size
Packetizing data generally requires a time reference, such as GPS or the NIST time
server, to stay synchronized within a network
5/25/2024
© John Reyland, PhD
53
Digital Signal Processing
Let’s take a look at digital receiver color coded sampling rates:
•
•
•
•
FS = ADC sampling rate. FS is related to intermediate frequency location
FS/K = Complex baseband sample rate, K = 2 or 4 to reduce processing load
MFsym = Fixed number of samples/symbol. Often M = 2, 4 or 8.
Fsym = One sample/symbol. Final subsampling before decoding payload data.
FIF
ADC
FS
Automatic
Gain Control
Adjustment
IF to
Complex
Baseband
Timing
Reference
Generator
Preamble
Processing
Symbol
Rate
Resampler
Matched
Filter
FIFO
Equalizer
Carrier
Tracking
Hard/Soft
Decision
Slicing
Payload
Data
Decoding
Sample Ready
Wideband AGC to RF Front End
AGC
Control
Generally there is no integer relation between FS and Fsym.
The FIFO effects a transition between real time and non-real time processing
A DSP receiver can be looked at as a complicated downsampler!
5/25/2024
© John Reyland, PhD
54
Digital Signal Processing
Closed
Loop
Timing
Closed loop transition tracking: A simple technique used for closed loop or
feedback timing recovery. Based on observation of detector output. See [D13] for
comparison.
• Advantage: Generally more suitable for DSP than timing tones because it does not
require large amounts of fixed point precision.
• Disadvantage: Requires good decisions from detector, sensitive to high error rates. Works
well for BPSK, QPSK. May not be suitable for more complicated modulations. Can only
tolerate small amounts of carrier frequency error.
5/25/2024
© John Reyland, PhD
55
Digital Signal Processing
Closed
Loop
Timing
Band edge timing error: DTTL and Gardner are good for antipodal signaling such as
BPSK, QPSK. For higher order QAM, we can use band edge timing [D34, D32, D12]:
Shift up by Fsym
Shift down by Fsym
5/25/2024
© John Reyland, PhD
56
Digital Signal Processing
Closed
Loop
Timing
Timing error loop filter controls acquisition time
5/25/2024
© John Reyland, PhD
57
Costas
Carrier
Tracking
Digital Signal Processing
Costas loop for QPSK
LPF
(Fsym/2)
y(nTs )
+
cos(2 f c nTs  u(nTs ))
sin(2 f c nTs  u( nTs ))
I (nTs )
i (nTs )
Complex NCO
u( nTs )
v ( nTs )
Loop
Filter
_
LPF
(Fsym/2)
q(nTs )
Q (nTs )
 I (nTs )  jQ (nTs )  i (nTs )  jq(nTs )  
 I (nTs )i (nTs )  Q (nTs )q(nTs )   j  I (nTs )q(nTs )  Q (nTs )i(nTs ) 
v ( nTs )   I ( nTs ) q( nTs )  Q ( nTs )i (nTs ) 
© John Reyland, PhD
5/25/2024
58
Carrier
Tracking
Digital Signal Processing
Carrier tracking estimates the symbol by symbol
phase error by “remodulating” to produce an ideal
version of the received constellation point. The
radians of phase between the angle of actual
received symbol point – angle of corresponding
ideal point:  (k )   ( k )
From Euler’s equation
the phase error is represented by:
sin  (k )   ( k ) 
rx(k)+jry(k)
See [D12]
© John Reyland, PhD
5/25/2024
59
Carrier
Tracking
Digital Signal Processing
When loop is locked, we can linearly model carrier tracking by considering
only the phase (see [D43] and [D7], page 339)
 (k )
Z-4
I
 (k )
e( k )
KNCO
KP
Z-1
KDET
KI
Z-1
This model allows us to study the carrier tracking closed loop step response.
Note that we assume an ideal phase error detector:  ( k )   ( k )   ( k ) 
© John Reyland, PhD
5/25/2024
60
Carrier
Tracking
Digital Signal Processing
Final equation for input phase vs. feedback tracking phase:
K n K d z 4  K p  K i   K n K d K p z 5
 ( z)

 ( z ) 1  2 z 1  z 2  K n K d z 4  K p  K i   K n K d K p z 5
In Matlab code, set: Kp = 24.560, Ki =0.480, Kd = 1, Fs = 4096
PLLnum = [0 0 0 Kd*Kn*(Kp+Ki) -Kd*Kp*Kn ];
PLLden = [1 -2 1 0 Kd*Kn*(Kp+Ki) -Kd*Kp*Kn ];
PLLsys = tf(PLLnum,PLLden,Ts);
[Wn,zeta]=damp(PLLsys);
Pole
1
2
3
4
5
Frequency (Hz)
19.261
19.261
601.134
1598.34
1598.34
Damping Factor
0.707411
0.707411
1
0.46831
0.46831
Poles 1 and 2 are dominant, other poles have little effect on loop response. When damping
factor = 0.707, loop bandwidth = 4*dominant pole frequency. Thus loop bandwidth = 77 Hz
© John Reyland, PhD
5/25/2024
61
Carrier
Tracking
Digital Signal Processing
Response of
to a step change in
calculated and plotted from Matlab:
PLL for carrier tracking runs at the symbol rate.
0.3927 radians is about 22 deg.
© John Reyland, PhD
5/25/2024
62
Hard/Soft
Decision
Slicing
Digital Signal Processing
How about soft decisions for a complicated constellation like 16 APSK?
First step is to use absolute value (ABS) to map received point to first quadrant.
Keep track of original polarity to choose correct constellation points, See [D44]
Q
1000
0000
R2
Rmid
R0
1100
0100
I
© John Reyland, PhD
5/25/2024
63
Digital Signal Processing
AGC
Control
DSP gain adjustment has to wait for fast acting RF AGC to respond
Received signal envelope at ADC input
noise
Received signal envelope at DSP AGC gain output
ADC Saturation
Attack Threshold
Hang Threshold
Desired Range
Envelope Detect
RF Gain
DSP Gain
© John Reyland, PhD
5/25/2024
64
APSK Modem
APSK Modem Front End
Center Freq
= Fsss/4
IF to
complex
baseband
Ibb
Qbb
Inphase
Iadjust
Sample
interpolator
Sample
stacker
Qadjust
SampleRdy
Quad
Root raised
cosine filter
CenterIQ
UpIQ
SymRdy
Intersample
Interval
Timing loop
filter
TimingError
Timing error
generator
DnIQ
Red Sample Rate = Fsss
Green Sample Rate = Fss = Fsss/2
Critical Concept:
Blue blocks only execute when SymRdy pulses high
Blue blocks are idle when SymRdy = 0
Thus blue blocks process 4 sample/symbol vectors at the symbol rate
5/25/2024
© John Reyland, PhD
65
APSK Modem
Sample Interpolator: Intersample Interval
= 4.3 Input samples per output sample FTA = 0.5
Input
Output
4
5
FTA = 0.9
FTA = 0.3
5
FTA = 0.8
4
FTA = 0.2
FTA = 0.6
FTA = 0.1
4
4
4
4
FracAdj = 0.3
FracAdj = 0.9
FracAdj = 0.6
4
4
4
4
FracAdj = 0.2
FracAdj
FracAdj = 0.5
4
FracAdj = 0.8
4
FracAdj = 0.1
NextSample
FTA
5/25/2024
© John Reyland, PhD
66
APSK Modem
LMS Equalizer Signal Processing Diagram, let’s take this apart
5/25/2024
© John Reyland, PhD
67
APSK Modem
Delay
Delay1/2
1
Symbol
Delay
Delay1/2
1
Symbol
Delay
Delay1/2
1
Symbol
Delay
Delay1/2
1
Symbol
Delay
Delay1/2
1
Symbol
Delay
Delay1/2
1
Symbol
c1
c2
c3
c41
c5
c6
Signal Processing Diagram
yeq (n )
Practical Implementation
5/25/2024
© John Reyland, PhD
68
APSK Modem
Carrier frequency offset tracking
LMS EQ
From RC Filter
+ De-rotated constellation points
Tap Update
NCO
Loop Filter
Sin, Cos
Look Up
_
Slicer
KP
-1
KI
Z
Phase
Error
Baseband
Remodulate
Z-1
Conj
Ideal remodulated constellation points
5/25/2024
© John Reyland, PhD
69
APSK Modem
5/25/2024
QPSK Tracking (8PSK similar) showing PI Filter
© John Reyland, PhD
QPSK, 8PSK: These
constellations are the same
70
APSK Modem
Equalizer training stays simple until green line switches
Grn Line = 1, Equ uses all points
Grn Line = 0, Equ uses outer 4 points
5/25/2024
© John Reyland, PhD
71
Download