Fred Harris Multirate DSP Part 2 - VT2011
Fred Harris Multirate DSP Part 2 - VT2011
Applications to
Communication Systems
fred harris
fred.harris@sdsu.edu
Part 2
Critically Sampled
Analysis/Synthesis Filter Bank
H0 (Z)
G 0 (Z)
H1 (Z)
H0 (Z)
G 1 (Z)
4-Point
IFFT
H2 (Z)
H1 (Z)
4-Point
FFT
G 2 (Z)
H3 (Z)
H2 (Z)
G 3 (Z)
H3 (Z)
Non-Critically Sampled
Analysis/Synthesis Filter Bank
H0 (Z)
G 0 (Z)
H0 (Z)
H1 (Z)
G 1 (Z)
H1 (Z)
H2 (Z)
G 2 (Z)
H3 (Z)
H4 (Z)
H2 (Z)
G 3 (Z)
8-Point
IFFT
H3 (Z)
8-Point
FFT
G4 (Z)
H4 Z)
G 5 (Z)
H5 (Z)
f
H5 (Z)
H6 (Z)
H7 (Z)
G 6 (Z)
G 7 (Z)
H6 (Z)
H7 (Z)
2
channel 1
channel 0
channel 2
0.2
-0.2
-0.2
20
40
60
80
0.1
-2
20
80
20
0.1
40
60
80
-0.1
40
60
80
-0.1
40
60
80
60
80
channel 5
20
40
60
80
-0.1
20
40
channel 7
20
20
0.1
channel 6
0.1
-0.4
channel 4
-0.1
60
0.1
channel 3
-0.1
40
20
40
60
80
dB
channel 0
-50
-100
-100
-100
-150
-1
-150
1
-1
-0.5
0.5
-0.5
0.5
0
channel 3
dB
channel 2
-50
-150
-1
-50
-100
-100
-100
0.5
-150
-1
0.5
-0.5
0.5
-150
-1
-0.5
0.5
0
channel 6
channel 7
-50
-50
-100
-100
-150
-1
channel 5
-50
-0.5
-0.5
0
channel 4
-50
-150
-1
dB
0
channel 1
-50
-0.5
0
Frequency
0.5
-150
-1
Channelized Spectra
-0.5
0
Frequency
0.5
Amplitude
1
0.5
0
-0.5
-1
-1.5
0
50
100
150
200
250
Spectrum: Reconstructed Signal
-3
-2
-1
300
350
400
dB
-50
-100
-4
0
1
Normalized Frequency (f/f BW )
h0(n)
h 1(n)
flg= 0
16 Active
Inp ut Ports
...
flg= 0
h 16(n)
.....
flg =
1
.....
h15(n)
32-PNT
IFFT
flg =
Input
Samp le Ra te
12 Mhz
p er Cha nnel
h2(n)
h30(n)
h 31(n)
hr(n)= h(r+ nM)
16 fs
FDM
H0( Z )
H0( Z )
1:16
-1
Z
1:16
....
....
....
32
H15 ( Z )
-1
H1( Z )
....
32
H1( Z )
-15
H15 ( Z )
-15
1:16
....
1:16
-30
-30
32
H30 ( Z )
-16
H16 ( Z )
....
....
-16
H16 ( Z )
H30 ( Z )
....
32
1:16
Z
1:16
32
-31
H31 ( Z )
-31
H31 ( Z )
Z
1:16
H0( Z )
H0( Z )
1:16
1:16
2
....
....
....
2
H15 ( Z )
-15
H15 ( Z )
-1
-1
H30 ( Z )
-14
-1
1:16
-1
Z
1:16
Z
1:16
-15
-1
-14
H30 ( Z )
1:16
H31 ( Z )
-15
H16 ( Z )
....
....
1:16
....
Z
1:16
1:16
H16 ( Z )
Z
1:16
....
Z
1:16
-1
H1( Z )
-1
....
H1( Z )
-1
-15
H31 ( Z )
Z
1:16
H0( Z )
....
H1( Z )
Hk(Z )
H15 ( Z )
2
-1
Z H16 ( Z )
h(k+ 32)
h(k+ 64)
....
h(k)
h(k+ 96)
h(k+ 128)
-1
Z H(k+ 16)(Z )
-1
-1
Z H30 ( Z )
h(k+ 16)
Z H31 ( Z )
h(k+ 48)
h(k+ 80)
h(k+ 112)
h(k+ 144)
IV
0
III
0
II
0
I
0
fs
flg = 1
32-PNT
IFFT
flg =
. ... .
flg= 0
flg= 0
2T
Phase Continuity
3T
4T
x(n)
y(n)
Filter
H(Z)
fs
fs
y(nM)
fs/M
fS > 2BW
Nyquist
fS = 2BW + f
harris
f
2BW
fs
0
2BW+f
fs/M
fs
Interesting Relationship
x(n)
fs
N-Tap
Lowpass
Filter
y(n)
2BW = fs /M
M-to-1
fs
y(nM)
fs
M
....
....
f
-f s /M
f s /M
0
f= (1-)fs /M
f S A(dB )
f 22
fS
; (Allowable Aliasing When Down Sampling)
M
Substitute in Filter Length at Input Sample Rate :
f = (1 )
N=
fS
A(dB)
A( dB )
1
=
(1 ) f S / M 22
(1 ) / M 22
N (Ops)
N (Ops/Output)
=
M (Input/Output) M (Input)
-6 d B/Oc tave
f
200 Hz
20 kHz
20 kHz Inp ut
Sam p le Rate
365 Tap
FIR Filter
20 kHz Output
Sa m ple Rate
-150
-100
-50
50
100
150
200
Spectrum
-20
-40
-60
-0.1
Frequency (kHz)
0.1
0.2
-80
-100
-2
-1.5
-1
-0.5
Frequency (kHz)
0.5
1.5
Prima ry
Sig na l
Prima ry
Sig na l
0
-300 -100
-10,000
100 300
10,000
Polyp ha se
Low Pa ss Filter
400 Hz
50-to -1
8-tap s
20 kHz
400 Hz
8-tap
Selec t
Pa th
Weig hts
48
49
20 kHz
2
400 Hz
Coefficient
Bank
365 Tap s
Polyp ha se
Low Pa ss Filter
400 Hz
20 kHz
Polyp ha se
Low Pa ss Filter
50-to -1
1-to-50
8-tap s
48
49
400 Hz
20 kHz
8-tap s
20 kHz
48
49
365 Tap
FIR Filter
20 kHz
Selec t
20 kHz Output
Sa m ple Ra te
20 kHz
400 Hz
8-tap
8-tap
Coeffic ient
Ba nk
Coeffic ient
Ba nk
Selec t
20kHz
20kHz
365-Tap
Lowpass
Filter
365-ops/input
White Box
400 Hz
20kHz
8-Tap
Filter
Coeffic ient
Bank
Coeffic ient
Bank
Selec t
16-ops/input
20kHz
8-Tap
Filter
Selec t
State Mac hine
20 kHz
400 Hz
8-tap
20 kHz
8-tap
16-tap
Clea n-up
Filter
Selec t
Coeffic ient
Ba nk
Coeffic ient
Selec t
Ba nk
Filter Bank
Response
f
-200
0
-100
200
100
L+ R
19-kHz
L-R
Pilot
X2
X2
19-kHz
38-kHz
76-kHz
SCA
Pilot Filter
Pilot
Attenuation
60 dB
Transition BW
4 kHz
L+ R
L-R
L-R
53
38
15 19 23
Sam ple Rate: 200
SCA
SCA
76
f(kHz)
100
Stereo FM Receiver
Composite
Stereo
The Diffic ult One
to Im plem ent
Low
Pass
19-kHz
Pilot
Filter
2L
Low
Pass
76-kHz
X2
X2
38-kHz
Low
Pass
2R
SCA
L-R
15
38
23
19
140 Tap s
FIR
Filter
L-R
f
53
100
DLY
38kHz Pilot
19 kHz Pilot
N=
fS atten(dB)
200 60
=
= 136.6 => 140
df
22
4 22
j 0k2
10
2
H0 (Z )
200 kHz
Com posite
Stereo
(Real)
j1
2
10
j2
2
10
H1 (Z )
e
x(n)
H2 (Z )
y(nM,1)
Low Pa ss
Filter
H0 (Z )
c os(2
2
10 )
H1 (Z )
2
c os(410
)
p(n)
p(nM,1)
H2 (Z )
c os(18 2 )
2
j 9 10
10
..
..
H9 (Z )
2
c os( 0 10
)
.
...
.
...
e
20 kHz
Aliased to
Baseb and
Filtered Pilot
(Complex)
20 kHz
Aliased to
Baseband
Pilot
(Com plex)
20 kHz
Frequenc y
Doubled Aliased
Baseb and Pilot
(Real)
200 kHz
Double Frequenc y
38-kHz Pilot
(Real)
H9 (Z )
200 kHz
Up Sam pled
and
Translated
38-kHz Pilot
(c omp lex)
Amplitude
0.8
0.6
Batman Filter
0.4
0.2
0
-0.2
-15
-10
-5
0
Time Samples
10
15
-20
-40
-60
-80
-100
-80
-60
-40
-20
0
Frequency (kHz)
20
40
60
80
100
Magnitude
0.8
0.6
0.4
0.2
0
0
10
15
20
25
Frequency (kHz)
30
35
40
45
50
Log-Magnitude (dB)
0.8
0.6
0.4
0.2
0
-10
-8
-6
-4
-2
0
Frequency (kHz)
10
Magnitude
1
0.8
0.6
0.4
0.2
0
-10
-8
-6
-4
-2
0
Frequency (kHz)
10
10
Magnitude
1
0.8
0.6
0.4
0.2
0
-10
-8
-6
-4
-2
0
Frequency (kHz)
Magnitude
1
0.8
0.6
0.4
0.2
0
0
10
15
20
25
Frequency (kHz)
30
35
40
45
50
35
40
45
50
Amplitude
1
0.5
0
-0.5
-1
0
10
15
20
25
Time Samples
30
Interpolators
And Interpolation
Applications
y Fixed Up-Sampler Interpolators
y Fixed Down-Sample Filters
y Reduced Cost Filtering When Large Ratio of
Gain (dB)
-20
-40
-60
-80
-30
-20
-10
0
Norm aliz ed F requenc y
10
20
30
Gain (dB)
-20
-40
-60
-80
-8
-6
-4
-2
0
2
Norm aliz ed F requenc y
Gain (dB)
-20
-40
-60
-80
-30
-20
-10
0
Norm aliz ed F requenc y
10
20
30
Gain (dB)
-20
-40
-60
-80
-8
-6
-4
-2
0
2
Norm aliz ed F requenc y
y(m )
....
....
x(n)
HM-1 (Z )
Hr (Z )
y(m )
h(0+ nM)
h(1+ nM)
h(2+ nM)
...
.. .
h(M-1+ nM)
Interpolation Options
Initial Sa m ple Positions
y(m)
H(Z)
1:M
Q:1
N/M= 4
H0 (Z )
H1 (Z )
H2 (Z )
HM-1 (Z )
y(m )
....
....
x(n)
Q:1
phs(0)
In
n
n+ 1
n+ 2
3-to-1
phs(1)
x(n)
phs(2)
phs(3)
Out
0,3
1,4
2
phs(4)
n+ 1
n+ 3
n+ 2
0 1 2 3 4 0 1 2 3 4 0 1 2 3 4 0 1 2 3 4
x x
x x
x x
x x
x x
x x
n+ 3
n
n+ 2
n+ 1
m+ 1
m+ 2
m+ 3
m+ 4
m+ 5
m+ 7
m+ 8
Error
n+ 1
Input
Sample
Nearest Available
Sample Position
n+ k/M
Desired Sample
Position n+ k/M+
n+ 1
BW= 1
0
N
Output Sam ple Rate
2N
DAC Response
BW= 1
f
N
Output Sam ple Rate
2N
DAC Response
f
N-0.5
N+ 0.5
1
1
1
1
b
:
f : | H ( ) |=
<2
2
2N
2N
N
(b 1)
7
, Say b = 8(bits ), N > 2 = 128
N >2
| H ( f ) |=
amplitude
0.2
0.1
-0.1
-5
10
15
20
25
30
35
40
45
50
time
spectral response of shaping filter
log magnitude
-20
-40
-60
-2
-1.5
-1
-0.5
0
frequency
0.5
1.5
50
100
150
200
250
0
-20
-40
-60
-80
-10
-8
-6
-4
-2
10
50
100
150
200
250
0
-20
-40
-60
-80
-10
-8
-6
-4
-2
10
f
-2 -1.5
-4
-0.5 0 0.5
1.5 2
f= 1
DC
DC
DC
DC
f
-4
-2 -1.5
-0.5 0 0.5
1.5 2
f
-1.5
-4
-8
3.5 4
-0.5 0 0.5
f= 3
DC
DC
DC
DC
f
-8
-0.5 0 0.5
-4 -3.5
3.5 4
Address Control:
Modulo Accumulator
TOUT
Inp ut
Sam ples
TIN
Outp ut
Sam ples
On Overflow,
x(n)
Insert New Input
d -acc = M
Polyp hase
Weig hts
TOut
f
= M In
TIn
fOut
...
Filter
y(m )
k(m )
(m )
ac c (m )
Mod (M)
d-a cc
-1
Int(--)
Fractional Part
(For later use)
Two Neighbor,
Linear Slope Interpolator
Right Available
Interpolated
Sample Value
Desired
Sample
Value
Left Available
Interpolated
Sample Value
Linear
Interpolator
Input
Sample
value
Interpolated
Sample Value
n+ (k+ 1)/M
n+ 1
n+ k/M
Right
Available
Input
Left Available Desired Sample
Interpolation
Sample Interpolation
Position k+
Sample Position
value Sample Position
x(k+ )
x(k) TRI(k)
k-1
M
x(k+ 1)
x(k+ 1) TRI(k+ 1)
x(k)
k
M
k+ 1
M
k+ 2
M
f
N
Outp ut Sa mp le Rate
2N
Rep ea ted
Spec tral Zeros
f
0
N
Outp ut Sa mp le Rate
2N
[ N1 f]
Tria ngle
Response
f
N-0.5
N+ 0.5
2
2
2
1
1
1
1
1
b
b / 2
| H ( f ) |= f : | H ( ) |=
<2
:
<2 :
2
N
2N
2N
2N
(b / 21)
7
, Say b = 16(bits ), N > 2 = 128
N >2
When signal is already 4-times oversampled
Need 32 stage up-sampler to suppress spectral artifacts by -96 dB
PHS-(k-2)
PHS-(k-1)
y(n+ k/M)
y(n)
PHS-(k)
y(n+ k/M)
PHS-(k+ 1)
PHS-(k+ 2)
.
Estimate y(n+k/M) & y(n+k/M)
With 2 Polyphase Filters
y(n+ k/M)
Polyphase
Matched
Filter
....
y(n+ k/ M)
k
Polyphase
Derivative
Matched
Filter
....
y(n)
.
y(n+k/M) & y(n+k/M)
With 2
Efficient Polyphase Filters
y(n+ k/ M)
y(n)
1-Stage Filter
Polyphase
Matched Filter
Coeffic ients
.
Coeffic ient
Selection
y(n+ k/M)
1-Stage Filter
Polyphase
Derivative
Matched Filter
Coeffic ients
x(n)
Filter
hk(n)
k(m )
dh=conv(h,[1 0 -1]*M/2
y(n+ k/M)
x(n)
dh=dh(2:length(dh)-1);
Filter
dhk(n)
k(m )
ac c (m)
Mod (M)
d-a cc
-1
(m )
Int(--)
200
400
600
800
1000
1200
Frequency Response
0
-20
-40
-60
-80
-100
-120
-20
-15
-10
-5
10
15
20
Half
Band
Filter
Half
Band
Filter
2
2
160 MHz
Interp
Bank
Phase
Ac c um ulator
DDS
24-Path
Polyphase
Filter
24-PNT
FFT
12-to-1
DDS
16 Channels
Interpolate
Filter
2
3.4
MHz
...
ADC
3.4
MHz
3.4
MHz
40.8
MHz
40.8
MHz
81.6
MHz
163.2
MHz
160
MHz
-50
-50
-50
-50
-100
-100
-150
-100
-150
-1.5
-1
-0.5
0.5
1.5
-100
-150
-1
-150
-1
-50
-50
-50
-50
-100
-100
-150
-100
-150
-1.5
-1
-0.5
0.5
1.5
-1
-50
-50
-50
-50
-100
-100
-100
-150
-150
-150
-150
-1.5
-1
-0.5
0.5
-1
1.5
-1
-50
-50
-50
-50
-100
-100
-100
-150
-150
-150
-150
-1
-0.5
0.5
1.5
-1
-1
-50
-50
-50
-50
-100
-100
-150
-100
-150
-1.5
-1
-0.5
0.5
1.5
-1
-50
-50
-50
-50
-100
-150
-1
-0.5
0.5
1.5
-1
-1
-1
-150
-150
-1
-100
-100
-150
-1.5
-1
-150
0
-100
-100
-150
-1
-100
-1.5
-1
0
-100
-150
-100
-150
-1
-1
-1
-2
0
2
200
-2
0
2
200
-2
0
2
200
-2
0
2
-2
0
2
200
-2
0
2
200
-2
0
2
200
-2
0
2
-2
0
2
200
-2
0
2
200
-2
0
2
200
-2
0
2
-2
0
2
200
-2
0
2
200
-2
0
2
200
-2
0
2
-2
0
2
200
-2
0
2
200
-2
0
2
200
-2
0
2
-2
0
200
-2
0
200
-2
0
200
-2
0
50
50
50
50
50
50
100
100
100
100
100
100
150
150
150
150
150
150
50
50
50
50
50
50
100
100
100
100
100
100
150
150
150
150
150
150
50
50
50
50
50
50
100
100
100
100
100
100
150
150
150
150
150
150
50
100
150
200
50
100
150
200
50
100
150
200
50
100
150
200
50
100
150
200
50
100
150
200
d bx
Enc ode
50- sec
Pre-emph
VCO
32 kHz
LPF
14 kHz
3.2 MHz
SCA
d bx
Enc ode
50- sec
Pre-emph
LPF
7.5 kHz
100
..
75- sec
Pre-emph
L+ R
BPF
15-50 kHz
IF
Output
40
..
Left
VCO
80 kHz
BPF
60-90 kHz
Left
Right
(L+ R)
(L-R)
dbx
Enc oder
IIR
IIR
75-usec
Pre-em ph
LPF
14-kHz
IIR
50-usec
Pre-emph
LPF
14-kHz
IIR
IIR
50-usec
Pre-em ph
LPF
14-kHz
48-to-293
Arb itrary
Re-Sam ple
IIR
48-to-293
Arb itrary
Re-Sample
KACC
SCA
dbx
Enc oder
48-to-293
Arb itrary
Re-Sam ple
KACC
CORDIC
DDS FM-MOD
&
Up-Converter
32 kHz
CORDIC
DDS FM-MOD
&
Up-Converter
IIR
Gain
BPF
35-kHz
Gain
IIR
BPF
30-kHz
32 kHz
Transceiver Cloc k Dom ain
Gain
Gain
75.008 Mhz
225.024 Mhz
1-to-3
Up-Sa mp le
256 Channels Ad de r
Ha lf Ba nd Pha se Shift
Even
Samp les
Od d
Samp les
DDS
50 MHz
Qua ntize
DAC
225.024 Mhz
New Directions
in
Channelized Receivers
M-Channel Channelizer
Resampled M-Path Narrowband Filter
with Rotators Replaced by M-Point IFFT
Digital
Low-Pass
Digital
Band-Pass
H(Z)
H(Ze
M-to-1
-j k
)
M-to-1
M-Path Digital -j 2 rk
e M
Polyphase
H(Z)
r
M-to-1
Channelizer Parameters
Center frequencies, hence channel spacing, and
f
Channel Spac ing
Channelizer for High Quality FDM Receiver
Transition BW
Channel BW
f
Channel Spac ing
The Winner!
InterestingVariationsofChannelizer
Fast Channelizer:
Time Series and Spectrum From Same Channelizer
Fast Channelizer:
Spectrum and Time Series from same Channelizer
Variable Bandwidth Filter:
Fast Convolution, Efficient, Low Workload
Multiple Bandwidth Channelizer
Arbitrary Channel Spacing Channelizer
fS=90 MHz
8192
Path
fBW=11 kHz
fS =11 kHz
32,768
Point
4-Fold
Folded
Window
8192
Point
16-Sets:
Channel
Phase
Rotator
Vectors
Spectral
Mask &
Channel
Selec t
Log 10
IFFT
.2
| |
Ensemble
Average
Channel
Processing
and
Multiplexing
fBW=125kHz
fS=500kHz
Low Pa ss
1
2
2
fc
DDS
1440 Ta p
Low Pa ss
2
2
2
180:1
DDS
fc
16-Copies of
Same Filter
..........
..........
fs= 90 MHz
1440 Ta p
Low Pa ss
16
2
2
fc
180:1
DDS
Samp le
Data
Buffer
2
1
720
179
180
359
1 Polyphase
Filter
Down
Samples
And Services
all Channels
360
539
540
719
Ro ta tors
2
720
Ro ta tors
......
180-to -1
1440 Ta p s
fs= 90 MHz
16-Sets of
Complex Rotators
720 Mult & Add
per Output
2
720
Ro ta tors
16
46,080 Multiplies
At 500 kHz Rate
Samp le
Data
Buffer
1
720
179
180
2
720
359
360
1440 Ta p s
180-to -1
3
720
Point
IFFT
539
540
719
......
fs= 90 MHz
720
720
2
2
DDS
fc
58,000 Multiplies at
500 kHz Rate
16 Channel Channelizer
720
Path
PolyPhase
Filter
16-Sets:
Channel
Phase
Rotator
Vec tors
49,000 Multiplies at
500 kHz Rate
720
Point
PolyPhase
Filter
IFFT
5,300 Multiplies at
500 kHz Rate
Spectrum Analyzer:
Polyphase Partition of Overlapped Window
8,192 Point IFFT
160,000 Multiplies
Per Transform
At 11-KHz Rate
y(nM,0)
H0( Z )
y(nM,1)
H1( Z )
x(n)
y(nM,2)
H2( Z )
M-Point
IFFT
....
....
y(nM,k)
y(nM,M-2)
HM-2( Z )
y(nM,M-1)
HM-1( Z )
fS=90 MHz
PolyPhase
Filter
8192
Path
fBW=11 kHz
fS =11 kHz
32,768
Point
4-Fold
Folded
Window
8192
Point
16-Sets:
Channel
Phase
Rotator
Vectors
Spectral
Mask &
Channel
Selec t
Log 10
IFFT
.2
| |
Ensemble
Average
Channel
Processing
and
Multiplexing
720
Point
PolyPhase
Filter
IFFT
Channel
Processing
and
Multiplexing
Spectral
Mask &
Channel
Selec t
Windo w
IFFT
Log 10
180 45-Bin
Spectrum Analyzers
Windo w
IFFT
Windo w
IFFT
Windo w
IFFT
.2
| |
Ensemble
Average
M-to-2 Down-Sampled
M-path Polyphase Channelizer
M-1
........
M/2
M/2+ 1
M-Point IFFT
M/2-1
....
FDM
M-2
M-1
TDM
Closing Comments
(on this Topic)
y Full Channelizers are Surprisingly