1
00:00:00,040 --> 00:00:02,470
The following content is
provided under a Creative

2
00:00:02,470 --> 00:00:03,880
Commons license.

3
00:00:03,880 --> 00:00:06,920
Your support will help MIT
OpenCourseWare continue to

4
00:00:06,920 --> 00:00:10,570
offer high quality educational
resources for free.

5
00:00:10,570 --> 00:00:13,470
To make a donation or view
additional materials from

6
00:00:13,470 --> 00:00:19,290
hundreds of MIT courses, visit
MIT OpenCourseWare at

7
00:00:19,290 --> 00:00:20,540
ocw.mit.edu.

8
00:00:55,941 --> 00:00:58,330
ALAN V. OPPENHEIM: Last time,
we introduced the notion of

9
00:00:58,330 --> 00:01:01,120
mapping continuous time filters
to discrete time

10
00:01:01,120 --> 00:01:06,150
filters, and we developed
impulse invariance as one

11
00:01:06,150 --> 00:01:10,470
useful technique for carrying
out that type of mapping.

12
00:01:10,470 --> 00:01:15,520
What I'd like to do in this
lecture is illustrate impulse

13
00:01:15,520 --> 00:01:19,600
invariance as a design procedure
in the context of

14
00:01:19,600 --> 00:01:24,900
one specific class of filters,
namely Butterworth filters.

15
00:01:24,900 --> 00:01:29,790
And then following that, we'll
proceed on to discuss another

16
00:01:29,790 --> 00:01:33,610
very important and useful
mapping or design procedure

17
00:01:33,610 --> 00:01:36,810
referred to as the bilinear
transformation.

18
00:01:36,810 --> 00:01:42,020
So to begin, let me just discuss
briefly what the class

19
00:01:42,020 --> 00:01:44,580
of Butterworth filters is.

20
00:01:44,580 --> 00:01:49,720
And specifically, the
Butterworth filters are

21
00:01:49,720 --> 00:01:52,710
defined through their frequency

22
00:01:52,710 --> 00:01:54,390
response or transfer function.

23
00:01:54,390 --> 00:01:58,530
And I'm using capital B to
denote a Butterworth filter.

24
00:01:58,530 --> 00:02:01,080
And by definition, the magnitude
squared of the

25
00:02:01,080 --> 00:02:04,020
frequency response of a
Butterworth filter is given by

26
00:02:04,020 --> 00:02:05,310
this expression.

27
00:02:05,310 --> 00:02:09,750
And for example, if N were equal
to 1, then this would

28
00:02:09,750 --> 00:02:13,350
simply correspond to the
magnitude squared of the

29
00:02:13,350 --> 00:02:18,130
frequency response for a first
order differential equation.

30
00:02:18,130 --> 00:02:23,790
Now if you look at the frequency
response, B of omega

31
00:02:23,790 --> 00:02:25,930
for this class of filters--

32
00:02:25,930 --> 00:02:28,610
I've illustrated that below--

33
00:02:28,610 --> 00:02:35,370
and what we see is that the
frequency response starts at

34
00:02:35,370 --> 00:02:39,110
unity, because that's the way
that it's normalized, and it

35
00:02:39,110 --> 00:02:42,730
has a monotonic characteristic
in the pass band

36
00:02:42,730 --> 00:02:44,820
and in the stop band.

37
00:02:44,820 --> 00:02:49,340
At a frequency equal to the
parameter omega sub c, up

38
00:02:49,340 --> 00:02:52,800
here, which is referred to as
the cutoff frequency, the

39
00:02:52,800 --> 00:02:56,480
Butterworth filter frequency
response always goes through

40
00:02:56,480 --> 00:03:00,100
the same point, namely 0.707.

41
00:03:00,100 --> 00:03:04,130
And as the order of the
Butterworth filter, capital N,

42
00:03:04,130 --> 00:03:11,220
increases, the transition from
the pass band to the stop band

43
00:03:11,220 --> 00:03:12,780
becomes sharper and sharper.

44
00:03:12,780 --> 00:03:16,320
So for higher order filters,
then, the frequency response

45
00:03:16,320 --> 00:03:20,810
is flatter in the pass band and
drops off more quickly,

46
00:03:20,810 --> 00:03:24,950
and attenuates more
in the stop band.

47
00:03:24,950 --> 00:03:29,520
Now in designing Butterworth
filters, what we want to look

48
00:03:29,520 --> 00:03:36,060
at is the location of the poles
of the system function.

49
00:03:36,060 --> 00:03:40,780
And we can infer those from
our definition of what the

50
00:03:40,780 --> 00:03:44,050
frequency response for the
Butterworth filter is.

51
00:03:44,050 --> 00:03:48,760
In particular, we have this
expression for the magnitude

52
00:03:48,760 --> 00:03:51,190
squared of the frequency
response.

53
00:03:51,190 --> 00:03:58,170
And we recognize that, of
course, as B of j omega times

54
00:03:58,170 --> 00:04:03,240
B of minus j omega, that's what
the magnitude squared

55
00:04:03,240 --> 00:04:04,910
will be equal to.

56
00:04:04,910 --> 00:04:10,110
And in order to convert this
to an expression describing

57
00:04:10,110 --> 00:04:13,110
the system function, or in
terms of the more general

58
00:04:13,110 --> 00:04:18,000
Laplace transform variable s,
what we recognize is that j

59
00:04:18,000 --> 00:04:23,005
omega, in the more general
setting, simply corresponds to

60
00:04:23,005 --> 00:04:25,860
the Laplace transform
variable s.

61
00:04:25,860 --> 00:04:32,440
So this product, in fact, is
the Laplace transform for s

62
00:04:32,440 --> 00:04:34,070
equal to j omega.

63
00:04:34,070 --> 00:04:38,970
More generally, then, this is
the result of evaluating B of

64
00:04:38,970 --> 00:04:42,830
s times B of minus s at
s equals j omega.

65
00:04:42,830 --> 00:04:48,060
Consequently, comparing this
expression with this statement

66
00:04:48,060 --> 00:04:52,490
leads us to the conclusion that
the transfer function B

67
00:04:52,490 --> 00:04:57,730
of s of the Butterworth filter,
times B of minus s, is

68
00:04:57,730 --> 00:05:01,250
given by the expression that
I indicate here, simply

69
00:05:01,250 --> 00:05:05,490
replacing j omega by s.

70
00:05:05,490 --> 00:05:10,540
Now what we want to look at
are the poles of B of s.

71
00:05:10,540 --> 00:05:14,200
That's what we'll want
to get as we design

72
00:05:14,200 --> 00:05:15,870
a Butterworth filter.

73
00:05:15,870 --> 00:05:21,520
And we can recognize the poles
of this product simply by

74
00:05:21,520 --> 00:05:24,470
looking at the roots of the
denominative polynomial.

75
00:05:24,470 --> 00:05:26,740
And those roots are--

76
00:05:26,740 --> 00:05:29,220
just taking account of
this factor 2N--

77
00:05:29,220 --> 00:05:36,000
those roots are at j omega
sub c times the 2N

78
00:05:36,000 --> 00:05:39,450
roots of minus 1.

79
00:05:39,450 --> 00:05:43,740
Those roots, in fact, all
lie on a circle, and the

80
00:05:43,740 --> 00:05:53,140
consequence of that is that the
poles of this expression

81
00:05:53,140 --> 00:05:55,400
are on a circle.

82
00:05:55,400 --> 00:05:59,770
The circle is of radius omega
sub c, and the poles are

83
00:05:59,770 --> 00:06:02,550
distributed around the circle.

84
00:06:02,550 --> 00:06:07,130
So here I've illustrated the
poles of B of s times B of

85
00:06:07,130 --> 00:06:09,920
minus s, for this specific
case where capital

86
00:06:09,920 --> 00:06:11,320
N is equal to 3.

87
00:06:11,320 --> 00:06:15,970
So there are a total of six
poles around this circle.

88
00:06:15,970 --> 00:06:20,800
And then for this specific case,
the poles are spaced by

89
00:06:20,800 --> 00:06:22,850
60 degrees.

90
00:06:22,850 --> 00:06:26,020
Now we have B of s times
B of minus s.

91
00:06:26,020 --> 00:06:29,020
To get the system function for
the Butterworth filter, we'd

92
00:06:29,020 --> 00:06:33,320
like to get B of s, and
the question now is

93
00:06:33,320 --> 00:06:35,140
how do we get that?

94
00:06:35,140 --> 00:06:40,250
Well, the thing to recognize is
that wherever this factor

95
00:06:40,250 --> 00:06:45,590
has a root, this factor
has to have a root at

96
00:06:45,590 --> 00:06:47,420
the negative location.

97
00:06:47,420 --> 00:06:51,600
So in fact, when we look at
these poles, we compare them

98
00:06:51,600 --> 00:06:55,180
with this, for example,
associated with B of s, this

99
00:06:55,180 --> 00:06:57,560
associated with B of minus s.

100
00:06:57,560 --> 00:07:01,200
And likewise, we compare these
two together, likewise we

101
00:07:01,200 --> 00:07:03,010
compare these two together.

102
00:07:03,010 --> 00:07:07,190
And so we can extract B of s
from this product, simply by

103
00:07:07,190 --> 00:07:11,360
taking one pole out of
each of those pairs.

104
00:07:11,360 --> 00:07:15,110
Now a question, of course, is
out of each pair, which one do

105
00:07:15,110 --> 00:07:17,860
we associate with B of s, and
which do we associate with B

106
00:07:17,860 --> 00:07:19,470
of minus s?

107
00:07:19,470 --> 00:07:24,040
And the answer drops out fairly
simply if we recognize

108
00:07:24,040 --> 00:07:30,510
that if we want to design
filters that are stable, then

109
00:07:30,510 --> 00:07:33,570
B of s, the transfer function
that we're designing, must

110
00:07:33,570 --> 00:07:36,440
have all its poles in the left
half of the s plane.

111
00:07:36,440 --> 00:07:41,760
So in fact, out of each of these
pairs we would associate

112
00:07:41,760 --> 00:07:47,900
the left half plane pole with
B of s, and so the transfer

113
00:07:47,900 --> 00:07:52,170
function for the Butterworth
filter for this particular

114
00:07:52,170 --> 00:07:57,020
case, where the this designates
the parameter omega

115
00:07:57,020 --> 00:07:59,950
sub c and capital N is 3,
namely a third order

116
00:07:59,950 --> 00:08:03,850
Butterworth filter, is this
set of pole locations.

117
00:08:03,850 --> 00:08:08,020
Given those, of course, we can
figure out, simply through

118
00:08:08,020 --> 00:08:13,360
Algebraic means, what the
transfer function B of s is.

119
00:08:13,360 --> 00:08:16,700
All right, so that's what
Butterworth filters are.

120
00:08:16,700 --> 00:08:22,430
And now what I'd like to do is
talk about the design of a

121
00:08:22,430 --> 00:08:27,460
digital Butterworth filter using
the design technique

122
00:08:27,460 --> 00:08:31,680
that we introduced last time,
namely impulse invariance.

123
00:08:31,680 --> 00:08:37,360
And the context in which I will
phrase the design is the

124
00:08:37,360 --> 00:08:42,809
context of mapping a continuous
time signal to a

125
00:08:42,809 --> 00:08:47,390
discrete time signal, carrying
out filtering using the

126
00:08:47,390 --> 00:08:50,360
discrete time filter that we're
designing, and then

127
00:08:50,360 --> 00:08:51,150
mapping back.

128
00:08:51,150 --> 00:08:56,980
So we're talking about now a
discrete time filter that we

129
00:08:56,980 --> 00:09:02,240
want to design through impulse
invariance from continuous

130
00:09:02,240 --> 00:09:05,950
time Butterworth filters, and
we're going to get our design

131
00:09:05,950 --> 00:09:11,990
specifications in the context of
having considered discrete

132
00:09:11,990 --> 00:09:16,660
time processing of continuous
time signals, where we will

133
00:09:16,660 --> 00:09:23,020
map from a continuous time
signal to a sequence, carry

134
00:09:23,020 --> 00:09:26,580
out the filtering with the
discrete time filter that

135
00:09:26,580 --> 00:09:28,440
we're going to design.

136
00:09:28,440 --> 00:09:35,860
And then we will take the
resulting filtered output and

137
00:09:35,860 --> 00:09:39,920
map it back to the continuous
time signal.

138
00:09:39,920 --> 00:09:44,460
But this discrete time filter is
the one that we're talking

139
00:09:44,460 --> 00:09:45,820
about designing.

140
00:09:45,820 --> 00:09:49,780
And for a choice of parameter,
there's a sampling frequency,

141
00:09:49,780 --> 00:09:51,910
of course, involved
in this process.

142
00:09:51,910 --> 00:09:56,120
And the value that I'll pick for
the sampling frequency is

143
00:09:56,120 --> 00:09:58,840
10 kilohertz.

144
00:09:58,840 --> 00:10:02,030
OK, all fairly straightforward
so far.

145
00:10:02,030 --> 00:10:08,470
And so since we have a sampling
rate of 10 kilohertz,

146
00:10:08,470 --> 00:10:16,140
we want to first look at our
specifications on the desired

147
00:10:16,140 --> 00:10:21,400
continuous time filter and then
map those to appropriate

148
00:10:21,400 --> 00:10:24,540
specifications on the discrete
time filter.

149
00:10:24,540 --> 00:10:29,740
And what I'll pick for the
desired specifications on the

150
00:10:29,740 --> 00:10:39,470
continuous time filter is that
at 1 kilohertz, I will ask

151
00:10:39,470 --> 00:10:44,070
that the continuous time
frequency response be down by

152
00:10:44,070 --> 00:10:50,610
no more than 1 db in comparison
with its value at

153
00:10:50,610 --> 00:10:53,130
omega equals 0.

154
00:10:53,130 --> 00:10:57,580
So that, in effect, specifies
the behavior in the pass band,

155
00:10:57,580 --> 00:11:00,480
or the specifications
on the pass band.

156
00:11:00,480 --> 00:11:06,070
And for the stop band, I'll
specify that the filter is

157
00:11:06,070 --> 00:11:12,830
down by 15 db by the time we've
gotten to 1.5 kilohertz.

158
00:11:12,830 --> 00:11:16,560
So we have, essentially, the
beginning of the transition

159
00:11:16,560 --> 00:11:19,610
band-- the end of the pass
band--at 1 kilohertz, and the

160
00:11:19,610 --> 00:11:23,850
beginning of the stop band
at 1.5 kilohertz.

161
00:11:23,850 --> 00:11:27,670
And since we're talking about
designing a Butterworth

162
00:11:27,670 --> 00:11:31,420
filter, we know that the
Butterworth filter is

163
00:11:31,420 --> 00:11:36,190
monotonic in the pass band and
stop band, and so we'll have a

164
00:11:36,190 --> 00:11:40,560
filter specification, something
as I show here.

165
00:11:40,560 --> 00:11:44,940
This represents the allowable
pass band tolerance.

166
00:11:44,940 --> 00:11:48,130
This is the allowable
stop band tolerance.

167
00:11:48,130 --> 00:11:53,460
And if I can draw this without
getting myself into trouble,

168
00:11:53,460 --> 00:11:57,220
essentially we're looking for
a filter, then, that always

169
00:11:57,220 --> 00:12:04,580
stays between the specified
boundaries here.

170
00:12:07,580 --> 00:12:10,930
Now what we have to figure out
is what the corresponding

171
00:12:10,930 --> 00:12:13,820
specifications are for
the digital filter.

172
00:12:13,820 --> 00:12:19,640
And the strategy, let me
emphasize, is that we have a

173
00:12:19,640 --> 00:12:23,990
situation where we're doing
discrete time processing of

174
00:12:23,990 --> 00:12:29,350
continuous time signals,
and we have a set of

175
00:12:29,350 --> 00:12:31,850
specifications associated
with that.

176
00:12:31,850 --> 00:12:36,270
That imposes specifications on
our discrete time filter, and

177
00:12:36,270 --> 00:12:40,460
then we want to design the
discrete time filter using

178
00:12:40,460 --> 00:12:43,940
impulse invariance, and that's
the discrete time filter that

179
00:12:43,940 --> 00:12:47,360
we'll use in the
overall system.

180
00:12:47,360 --> 00:12:52,240
All right, now we want
specifications on the discrete

181
00:12:52,240 --> 00:12:58,430
time filter, and we want the
continuous overall equivalent

182
00:12:58,430 --> 00:13:04,560
system to meet certain
specifications at certain

183
00:13:04,560 --> 00:13:09,010
frequencies related to
continuous time frequencies.

184
00:13:09,010 --> 00:13:14,550
Recall that when we sample
a continuous time signal,

185
00:13:14,550 --> 00:13:17,990
there's a very specific mapping
from the continuous

186
00:13:17,990 --> 00:13:21,590
time frequency axis to the
discrete time frequency axis.

187
00:13:21,590 --> 00:13:29,120
In particular, the sampling
frequency gets mapped to 2 pi.

188
00:13:29,120 --> 00:13:32,550
Well, that means that our other
critical frequencies get

189
00:13:32,550 --> 00:13:34,500
mapped in proportion to that.

190
00:13:34,500 --> 00:13:39,000
So 1 kilohertz, which is
a 1/10 of the sampling

191
00:13:39,000 --> 00:13:42,590
frequency, would then convert
to a discrete time

192
00:13:42,590 --> 00:13:45,860
frequency of 0.2 pi.

193
00:13:45,860 --> 00:13:51,030
And 1.5 kilohertz will convert
to a discrete time

194
00:13:51,030 --> 00:13:54,620
frequency of 0.3 pi.

195
00:13:54,620 --> 00:14:00,230
So what this says is that for
the discrete time filter, we

196
00:14:00,230 --> 00:14:05,860
would like the same behavior,
but at frequencies--

197
00:14:05,860 --> 00:14:10,980
or the same specifications, but
at frequencies normalized

198
00:14:10,980 --> 00:14:14,360
to the discrete time
frequency axis.

199
00:14:14,360 --> 00:14:20,120
That means that we want the
discrete time frequency

200
00:14:20,120 --> 00:14:23,250
response magnitude to be greater
than or equal to minus

201
00:14:23,250 --> 00:14:26,770
1 db at 2/10 pi--

202
00:14:26,770 --> 00:14:30,060
corresponding to the 1 kilohertz
in continuous time--

203
00:14:30,060 --> 00:14:36,340
and for the beginning of the
stop band, that would occur at

204
00:14:36,340 --> 00:14:38,970
0.3 pi, at which point we
want this less than or

205
00:14:38,970 --> 00:14:42,230
equal to minus 15.

206
00:14:42,230 --> 00:14:45,680
So those are our discrete
time specifications.

207
00:14:45,680 --> 00:14:51,960
And we now want to design the
discrete time filter using

208
00:14:51,960 --> 00:14:54,260
impulse invariance.

209
00:14:54,260 --> 00:15:02,670
Now in impulse invariance, as
you recall, it corresponds to

210
00:15:02,670 --> 00:15:06,920
generating an impulse response
which is a sampled version of

211
00:15:06,920 --> 00:15:11,180
the continuous time impulse
response, and there is a

212
00:15:11,180 --> 00:15:16,050
temptation naturally to think
all of this parameter, capital

213
00:15:16,050 --> 00:15:25,190
T, as necessarily identical to
the sampling in the system in

214
00:15:25,190 --> 00:15:27,710
which the filter is
going to be used.

215
00:15:27,710 --> 00:15:31,200
Now this is a fairly subtle,
complicated, tongue twisting

216
00:15:31,200 --> 00:15:36,800
issue, but the bottom line on
it, the essential point, is

217
00:15:36,800 --> 00:15:41,140
that the parameter capital
T that we use in impulse

218
00:15:41,140 --> 00:15:46,060
invariant design is a totally
different, unrelated, and in

219
00:15:46,060 --> 00:15:50,660
fact, as it turns out, arbitrary
parameter, which is

220
00:15:50,660 --> 00:15:56,480
not necessarily pegged to
the sampling frequency.

221
00:15:56,480 --> 00:15:58,720
And I think it would be
difficult for me to totally

222
00:15:58,720 --> 00:16:03,180
clarify that during
the lecture.

223
00:16:03,180 --> 00:16:05,710
It's discussed more in the
book, and certainly, you

224
00:16:05,710 --> 00:16:08,850
should take plenty of time
to reflect on it.

225
00:16:08,850 --> 00:16:14,510
All right, but let's now look,
then, at where we are in our

226
00:16:14,510 --> 00:16:18,570
design procedure, and
specifically, what it is that

227
00:16:18,570 --> 00:16:21,720
we need to do in order
to design the

228
00:16:21,720 --> 00:16:26,000
digital Butterworth filter.

229
00:16:26,000 --> 00:16:30,900
Now we have a set of
specifications that we've

230
00:16:30,900 --> 00:16:35,000
generated relating, essentially,
to how we want

231
00:16:35,000 --> 00:16:38,950
the pass band of the digital
filter and the stop band of

232
00:16:38,950 --> 00:16:41,050
the digital filter to behave.

233
00:16:41,050 --> 00:16:46,170
Of course, since this isn't an
ideal filter, it has some

234
00:16:46,170 --> 00:16:50,510
transition from pass band to
stop band, and as we discussed

235
00:16:50,510 --> 00:16:54,430
last time, there is aliasing,
which we need to at

236
00:16:54,430 --> 00:16:57,140
least be aware of.

237
00:16:57,140 --> 00:17:01,500
We specified certain frequencies
along this axis

238
00:17:01,500 --> 00:17:07,420
which are easily converted by
relating to the two axes

239
00:17:07,420 --> 00:17:13,920
through this mapping, are easily
related back to the

240
00:17:13,920 --> 00:17:21,040
continuous time frequency
axis, as we have here.

241
00:17:21,040 --> 00:17:26,079
And in particular, now if we
were to simply pick that

242
00:17:26,079 --> 00:17:29,800
parameter in the impulse
invariant design, capital T,

243
00:17:29,800 --> 00:17:34,160
as equal to unity, and I
indicated just a minute ago

244
00:17:34,160 --> 00:17:37,850
that we can pick it arbitrarily,
if I pick it as

245
00:17:37,850 --> 00:17:43,580
unity, then the procedure would
consist of designing the

246
00:17:43,580 --> 00:17:47,800
continuous time Butterworth
filter with meeting or

247
00:17:47,800 --> 00:17:50,870
exceeding the appropriate
specifications and then going

248
00:17:50,870 --> 00:17:55,090
through the impulse invariant
procedure.

249
00:17:55,090 --> 00:17:58,250
All right, so let's
do that then.

250
00:18:01,070 --> 00:18:05,290
We want the discrete time
impulse response to be the

251
00:18:05,290 --> 00:18:09,750
continuous time impulse response
sampled, and for

252
00:18:09,750 --> 00:18:11,700
convenience, I'm going to
pick this parameter

253
00:18:11,700 --> 00:18:14,560
capital T equal to 1.

254
00:18:14,560 --> 00:18:20,080
That means that the frequency
normalization between the

255
00:18:20,080 --> 00:18:22,730
discrete time frequency axis
and the continuous time

256
00:18:22,730 --> 00:18:26,640
frequency axis in fact is--

257
00:18:26,640 --> 00:18:30,500
those axes are scaled
identically, because capital T

258
00:18:30,500 --> 00:18:32,000
is equal to 1.

259
00:18:32,000 --> 00:18:37,590
And so now we want the analog,
or continuous time,

260
00:18:37,590 --> 00:18:39,550
specifications.

261
00:18:39,550 --> 00:18:42,690
And so what we need to
do then is design

262
00:18:42,690 --> 00:18:44,000
a Butterworth filter.

263
00:18:44,000 --> 00:18:47,370
I'm using capital B here again
to denote the frequency

264
00:18:47,370 --> 00:18:49,400
response of the Butterworth
filter.

265
00:18:49,400 --> 00:18:53,300
The Butterworth filter to have
a magnitude which is greater

266
00:18:53,300 --> 00:18:59,590
than or equal to minus 1 db
prior to the frequency 0.2 pi,

267
00:18:59,590 --> 00:19:02,520
and less than or equal
to minus 15 at a

268
00:19:02,520 --> 00:19:07,770
frequency beyond 0.3 pi.

269
00:19:07,770 --> 00:19:14,820
And so now what we need to do
is determine capital N and

270
00:19:14,820 --> 00:19:17,910
omega sub c in order to
meet or exceed those

271
00:19:17,910 --> 00:19:19,160
specifications.

272
00:19:21,210 --> 00:19:24,300
Now if you go through the
associated algebra in doing

273
00:19:24,300 --> 00:19:27,360
that, let's say that you decide
that you want to pick

274
00:19:27,360 --> 00:19:31,040
capital N and omega sub c
to exactly meet those

275
00:19:31,040 --> 00:19:35,860
inequalities at the two
frequencies, 0.2 pi and 0.3

276
00:19:35,860 --> 00:19:40,320
pi, what you'll find after going
through the algebra is

277
00:19:40,320 --> 00:19:46,170
that they're exactly met if
capital N is 5.88 and omega

278
00:19:46,170 --> 00:19:50,320
sub c is 0.7047.

279
00:19:50,320 --> 00:19:55,560
And this obviously isn't
satisfactory as parameters for

280
00:19:55,560 --> 00:19:56,820
the Butterworth filter.

281
00:19:56,820 --> 00:19:58,720
Why is that?

282
00:19:58,720 --> 00:20:03,480
The reason is that capital N
isn't an integer, and in the

283
00:20:03,480 --> 00:20:06,320
class of Butterworth filters,
to generate a rational

284
00:20:06,320 --> 00:20:08,960
transfer function,
capital N, this

285
00:20:08,960 --> 00:20:11,420
parameter, must be an integer.

286
00:20:11,420 --> 00:20:18,480
So since it can't be 5.88, the
natural thing to do is to move

287
00:20:18,480 --> 00:20:22,510
it up to the next closest
integer, namely 6.

288
00:20:22,510 --> 00:20:26,330
And that means that we'll end
up with a filter that does

289
00:20:26,330 --> 00:20:30,100
even better than the
specifications.

290
00:20:30,100 --> 00:20:33,320
On the other hand, there's
something kind of underneath

291
00:20:33,320 --> 00:20:36,950
the surface that is inherent
in the impulse invariant

292
00:20:36,950 --> 00:20:41,350
design procedure, namely the
fact that there will always be

293
00:20:41,350 --> 00:20:42,960
some aliasing.

294
00:20:42,960 --> 00:20:46,960
So one strategy, and a natural
one, often, in impulse

295
00:20:46,960 --> 00:20:53,780
invariant design, is to choose
N as the next highest integer

296
00:20:53,780 --> 00:20:59,960
as I've done, and then choose
the parameter omega sub c so

297
00:20:59,960 --> 00:21:04,810
that the pass band
specifications are exactly

298
00:21:04,810 --> 00:21:07,940
met, and the stop band
specifications are then

299
00:21:07,940 --> 00:21:10,390
slightly exceeded, and
that will leave

300
00:21:10,390 --> 00:21:13,860
some margin for aliasing.

301
00:21:13,860 --> 00:21:18,660
All right, now continuing this
example, then, how would we

302
00:21:18,660 --> 00:21:21,910
complete the design?

303
00:21:21,910 --> 00:21:28,840
Well, we know what our two
parameters, capital N and

304
00:21:28,840 --> 00:21:31,680
omega sub c are.

305
00:21:31,680 --> 00:21:34,160
That means that we can
determine B of s

306
00:21:34,160 --> 00:21:35,970
times B of minus s.

307
00:21:35,970 --> 00:21:42,190
Those poles are located on a
circle in the complex s plane.

308
00:21:42,190 --> 00:21:47,420
And the poles on that circle
are paired, some being

309
00:21:47,420 --> 00:21:50,770
associated with B of s and
some with B of minus s.

310
00:21:50,770 --> 00:21:55,540
And in particular, to determine
B of s, we would

311
00:21:55,540 --> 00:22:00,780
simply take the poles on the
portion of the circle that's

312
00:22:00,780 --> 00:22:02,180
in the left half
of the s plane.

313
00:22:04,720 --> 00:22:11,280
Now what that gives us is a
Butterworth continuous time

314
00:22:11,280 --> 00:22:16,720
filter, which we are then
mapping through impulse

315
00:22:16,720 --> 00:22:20,960
invariance with capital
T equal to 1 to a

316
00:22:20,960 --> 00:22:22,960
discrete time filter.

317
00:22:22,960 --> 00:22:28,800
That discrete time filter to be
used in a system which has

318
00:22:28,800 --> 00:22:29,990
an associated sampling

319
00:22:29,990 --> 00:22:34,620
frequency which is 10 kilohertz.

320
00:22:34,620 --> 00:22:38,220
So to get the discrete time
filter, then, we first

321
00:22:38,220 --> 00:22:41,900
determine B of s,
as we just did--

322
00:22:41,900 --> 00:22:45,360
or at least I indicated
how to do it.

323
00:22:45,360 --> 00:22:48,940
We would then expand that out
in a partial fraction

324
00:22:48,940 --> 00:22:54,580
expansion, and then apply the
impulse invariant procedure,

325
00:22:54,580 --> 00:23:00,660
which consists of mapping the
poles in the s plane to poles

326
00:23:00,660 --> 00:23:05,230
in the z plane at locations e
to the s of k, capital T,

327
00:23:05,230 --> 00:23:07,310
capital T is equal to 1.

328
00:23:07,310 --> 00:23:10,190
And retaining the
residue, or the

329
00:23:10,190 --> 00:23:12,860
coefficient, in the expansion.

330
00:23:12,860 --> 00:23:17,050
And this, then, will give us the
transfer function for the

331
00:23:17,050 --> 00:23:20,370
discrete time filter.

332
00:23:20,370 --> 00:23:28,130
So if in fact we did that, then
the resulting frequency

333
00:23:28,130 --> 00:23:32,050
response that we would get is
what I've indicated here.

334
00:23:32,050 --> 00:23:37,310
And I indicated first on a
magnitude scale, linear

335
00:23:37,310 --> 00:23:42,580
magnitude scale, and second
on a logarithmic scale.

336
00:23:42,580 --> 00:23:47,120
And as we had originally
specified, the digital filter

337
00:23:47,120 --> 00:23:52,430
is supposed to be greater than
or equal to minus 1 db at

338
00:23:52,430 --> 00:23:55,680
point 2 pi, and less than
or equal to minus

339
00:23:55,680 --> 00:23:59,540
15 db at 0.3 pi.

340
00:23:59,540 --> 00:24:03,740
And in fact, this slightly
exceeds those specifications

341
00:24:03,740 --> 00:24:08,385
since we had purposely allowed
some margin in the stop band.

342
00:24:14,090 --> 00:24:17,540
Now this is an illustration
of the impulse invariant

343
00:24:17,540 --> 00:24:22,360
procedure, and it has a number
of very nice properties, one

344
00:24:22,360 --> 00:24:26,100
of which is that it takes
a continuous time filter

345
00:24:26,100 --> 00:24:31,630
frequency response and it
converts it to a discrete time

346
00:24:31,630 --> 00:24:35,270
frequency response, which in the
absence of aliasing, looks

347
00:24:35,270 --> 00:24:39,500
identical, except for a linear
frequency scale change.

348
00:24:39,500 --> 00:24:41,680
And in fact, if we picked
capital T equal to 1, then

349
00:24:41,680 --> 00:24:43,520
there is no scale change.

350
00:24:43,520 --> 00:24:49,950
It has the major disadvantage
that there is always aliasing,

351
00:24:49,950 --> 00:24:54,610
and for some problems, for
example, if the filter that

352
00:24:54,610 --> 00:24:59,940
we're trying to design is not
band limited or low pass, then

353
00:24:59,940 --> 00:25:04,820
the aliasing will naturally
become intolerable.

354
00:25:04,820 --> 00:25:07,340
Well, there's another design
procedure which I now want to

355
00:25:07,340 --> 00:25:11,300
introduce, which totally
avoids the problems of

356
00:25:11,300 --> 00:25:15,040
aliasing, but, obviously,
then has its own costs

357
00:25:15,040 --> 00:25:16,460
associated with it.

358
00:25:16,460 --> 00:25:20,640
And that's procedure is referred
to as the bilinear

359
00:25:20,640 --> 00:25:21,890
transformation.

360
00:25:24,430 --> 00:25:28,660
The bilinear transformation,
which I won't try to derive

361
00:25:28,660 --> 00:25:34,770
here in any detail, is a mapping
of continuous time

362
00:25:34,770 --> 00:25:40,910
filters to discrete time
filters, corresponding to

363
00:25:40,910 --> 00:25:45,110
taking the Laplace transform
variable s in the continuous

364
00:25:45,110 --> 00:25:50,220
time filter and replacing it
by what is referred to as a

365
00:25:50,220 --> 00:25:53,560
bilinear function of z.

366
00:25:53,560 --> 00:25:58,530
And so if I substitute this in
here, that will give me the

367
00:25:58,530 --> 00:26:02,370
discrete time frequency
response.

368
00:26:02,370 --> 00:26:05,670
Again in this procedure, there's
a parameter capital T,

369
00:26:05,670 --> 00:26:08,500
which again is totally
irrelevant given the approach

370
00:26:08,500 --> 00:26:11,610
that we're taking, and which
we will generally tend to

371
00:26:11,610 --> 00:26:13,570
normalize out to unity.

372
00:26:13,570 --> 00:26:19,130
And let me just say quickly and
in passing that although

373
00:26:19,130 --> 00:26:23,080
we won't go through this, the
notion that the bilinear

374
00:26:23,080 --> 00:26:29,370
transformation can be tied to
the concept of taking the

375
00:26:29,370 --> 00:26:32,730
differential equation for the
continuous time filter,

376
00:26:32,730 --> 00:26:36,560
converting it to an integral
equation by integrating enough

377
00:26:36,560 --> 00:26:42,700
times on both sides, and then
converting that to a

378
00:26:42,700 --> 00:26:47,600
difference equation by
approximating the integrals

379
00:26:47,600 --> 00:26:50,200
with the trapezoidal rule.

380
00:26:50,200 --> 00:26:54,380
And that, in effect, will
correspond to mapping the

381
00:26:54,380 --> 00:26:57,600
continuous time filter to a
discrete time filter with the

382
00:26:57,600 --> 00:26:59,930
bilinear transformation.

383
00:26:59,930 --> 00:27:04,400
Well, we'll just focus on the
properties of the mapping.

384
00:27:04,400 --> 00:27:09,190
And in particular, if we were
to substitute into the

385
00:27:09,190 --> 00:27:14,370
expression z equal to e to the
j omega corresponding to the

386
00:27:14,370 --> 00:27:20,020
unit circle, we would find
that the unit circle in

387
00:27:20,020 --> 00:27:26,510
discrete time corresponds to
mapping the j omega axis in

388
00:27:26,510 --> 00:27:30,970
continuous time, which is
exactly what we want.

389
00:27:30,970 --> 00:27:37,290
Now the mapping between the
continuous time frequency and

390
00:27:37,290 --> 00:27:43,260
the discrete time frequency is
a nonlinear mapping, which is

391
00:27:43,260 --> 00:27:44,940
given by the algebraic
expression

392
00:27:44,940 --> 00:27:46,530
that I indicate here.

393
00:27:46,530 --> 00:27:56,170
And if we plot this mapping,
what we have is this curve.

394
00:27:56,170 --> 00:28:03,510
And what this corresponds to,
then, is a mapping of the j

395
00:28:03,510 --> 00:28:07,410
omega axis, or continuous
time frequency, to

396
00:28:07,410 --> 00:28:10,270
discrete time frequency.

397
00:28:10,270 --> 00:28:14,390
And if we think more generally
of the mapping represented by

398
00:28:14,390 --> 00:28:18,730
the bilinear transformation in
the context of the s-plane and

399
00:28:18,730 --> 00:28:25,100
the z-plane, it corresponds to
mapping the j omega axis in

400
00:28:25,100 --> 00:28:31,170
the s-plane to once around the
unit circle in the z-plane.

401
00:28:31,170 --> 00:28:35,260
And you could also convince
yourself that the left half of

402
00:28:35,260 --> 00:28:39,850
the s-plane maps to the inside
of the unit circle.

403
00:28:39,850 --> 00:28:45,250
And so that means that stable
continuous time filters will

404
00:28:45,250 --> 00:28:48,690
always map to stable discrete
time filters, which is exactly

405
00:28:48,690 --> 00:28:51,310
what we desire.

406
00:28:51,310 --> 00:28:54,990
Now notice in this that there's
no issue of aliasing.

407
00:28:54,990 --> 00:28:58,320
What's happened is that we've
replaced s by a function of z,

408
00:28:58,320 --> 00:29:01,850
and it corresponds to mapping
the s-plane to the z-plane.

409
00:29:01,850 --> 00:29:05,970
In fact, the whole j omega axis
has mapped to once around

410
00:29:05,970 --> 00:29:13,150
the unit circle, which obviously
requires some type

411
00:29:13,150 --> 00:29:17,280
of nonlinear mapping, because,
look, the j omega axis is

412
00:29:17,280 --> 00:29:18,640
infinitely long.

413
00:29:18,640 --> 00:29:21,960
The unit circle has
a finite radius.

414
00:29:21,960 --> 00:29:25,720
And so essentially, what has to
happen is if you think of

415
00:29:25,720 --> 00:29:29,720
walking along the continuous
time frequency axis, and

416
00:29:29,720 --> 00:29:33,840
simultaneously walking around
the unit circle, if you walk

417
00:29:33,840 --> 00:29:37,580
at a constant rate around the
unit circle and you're

418
00:29:37,580 --> 00:29:41,330
simultaneously walking up the
j omega axis, if you want to

419
00:29:41,330 --> 00:29:45,810
get around to pi by the time,
here, you've gotten to

420
00:29:45,810 --> 00:29:50,530
infinity along the continuous
time frequency axis, you

421
00:29:50,530 --> 00:29:54,760
better start walking faster,
and faster, and faster,

422
00:29:54,760 --> 00:29:58,640
because you've got an infinite
distance to cover while you

423
00:29:58,640 --> 00:30:01,410
just go over a finite
distance here.

424
00:30:01,410 --> 00:30:07,420
Well, what all that says,
really, is that that's why, in

425
00:30:07,420 --> 00:30:10,200
fact, we're taking
the entire--

426
00:30:10,200 --> 00:30:14,850
or we're able to take the entire
omega axis and just map

427
00:30:14,850 --> 00:30:19,450
it into an interval
of length pi.

428
00:30:22,544 --> 00:30:27,640
All right, now that means that
there is a nonlinear

429
00:30:27,640 --> 00:30:31,170
distortion of the frequency
axis if we were to take a

430
00:30:31,170 --> 00:30:35,320
continuous time filter and
convert it to a discrete time

431
00:30:35,320 --> 00:30:37,860
filter with the bilinear
transformation.

432
00:30:37,860 --> 00:30:42,120
How do we account for that, or
for that matter, when can we

433
00:30:42,120 --> 00:30:44,230
really use it?

434
00:30:44,230 --> 00:30:49,050
And we can see how to both take
account of it, and what

435
00:30:49,050 --> 00:30:54,300
its limitations are, by
recognizing the following.

436
00:30:54,300 --> 00:31:02,690
Suppose that I want to design
a discrete time filter and

437
00:31:02,690 --> 00:31:06,220
what is going to happen is that
it will be mapped to a

438
00:31:06,220 --> 00:31:09,340
continuous time filter, or the
relationship between the two

439
00:31:09,340 --> 00:31:14,300
frequency axes will be
given by this curve.

440
00:31:14,300 --> 00:31:19,190
So let's suppose that the
continuous time frequency

441
00:31:19,190 --> 00:31:23,510
response looks as I've shown
here, with a pass band cutoff

442
00:31:23,510 --> 00:31:27,900
frequency and a stop band
cutoff frequency.

443
00:31:27,900 --> 00:31:34,270
If this were mapped through the
bilinear transformation to

444
00:31:34,270 --> 00:31:38,950
a discrete time filter, then
this cutoff frequency would

445
00:31:38,950 --> 00:31:44,410
fall over here, which is related
through this curve,

446
00:31:44,410 --> 00:31:49,950
and this cutoff frequency, the
stop band edge would be here.

447
00:31:49,950 --> 00:31:56,930
Again, it's these frequencies
reflected through this curve.

448
00:31:56,930 --> 00:32:02,620
So let's suppose now that what
I'd like to do is design a

449
00:32:02,620 --> 00:32:07,810
discrete time filter, where the
discrete time filter has

450
00:32:07,810 --> 00:32:11,650
certain frequency
specifications, which is what

451
00:32:11,650 --> 00:32:14,320
our previous example has.

452
00:32:14,320 --> 00:32:18,600
It has, let's say, a specified
stop band edge and a specified

453
00:32:18,600 --> 00:32:23,070
pass band edge, and a specified
stop band edge.

454
00:32:23,070 --> 00:32:29,100
The design procedure would then
correspond to mapping

455
00:32:29,100 --> 00:32:34,230
those frequencies to the
corresponding continuous time

456
00:32:34,230 --> 00:32:40,790
frequencies, designing the
continuous time filter to meet

457
00:32:40,790 --> 00:32:46,480
the specifications based on
those critical frequencies,

458
00:32:46,480 --> 00:32:51,300
then taking the continuous time
design and mapping it

459
00:32:51,300 --> 00:32:54,820
back to a discrete time filter
through the bilinear

460
00:32:54,820 --> 00:32:57,101
transformation.

461
00:32:57,101 --> 00:33:02,780
All right, now what we want to
do is again map a Butterworth

462
00:33:02,780 --> 00:33:05,460
filter, continuous time
Butterworth filter to a

463
00:33:05,460 --> 00:33:08,510
digital filter in such a way
that the digital filter

464
00:33:08,510 --> 00:33:11,050
approximately meets the

465
00:33:11,050 --> 00:33:13,720
specifications that we had before.

466
00:33:13,720 --> 00:33:16,720
And let me just remind
you of where we were.

467
00:33:16,720 --> 00:33:24,600
The critical frequencies were
at 0.2 pi and 0.3 pi.

468
00:33:24,600 --> 00:33:30,260
And what we had asked for is
that the frequency response be

469
00:33:30,260 --> 00:33:37,370
down by no more than 1 db up
to 0.2 pi, and down by at

470
00:33:37,370 --> 00:33:41,800
least 15 db at 0.3 pi.

471
00:33:41,800 --> 00:33:47,630
So we want to design the same
discrete time filter as we did

472
00:33:47,630 --> 00:33:49,780
before with impulse
invariance.

473
00:33:49,780 --> 00:33:52,900
We now want to do it with the
bilinear transformation

474
00:33:52,900 --> 00:33:56,160
applied to an appropriate
Butterworth design.

475
00:33:59,289 --> 00:34:05,970
OK, well, let's see what kind
of specifications we have.

476
00:34:05,970 --> 00:34:09,590
We know that the frequency, the
critical frequencies, are

477
00:34:09,590 --> 00:34:13,530
mapped through this curve,
or this equation.

478
00:34:13,530 --> 00:34:18,489
And I indicated again that this
parameter capital T is

479
00:34:18,489 --> 00:34:21,770
arbitrary in the design
procedure.

480
00:34:21,770 --> 00:34:26,120
That may seem confusing,
initially, but there's some

481
00:34:26,120 --> 00:34:28,719
further discussion of it in the
book, and it's true and

482
00:34:28,719 --> 00:34:31,000
important to sort out.

483
00:34:31,000 --> 00:34:35,070
So we're going to pick capital
T equal to unity.

484
00:34:35,070 --> 00:34:40,280
And that means then that the
corresponding critical

485
00:34:40,280 --> 00:34:46,650
frequencies of the continuous
time filter are at twice the

486
00:34:46,650 --> 00:34:51,690
tangent of 0.2 pi over 2,
and twice the tangent

487
00:34:51,690 --> 00:34:54,920
of 0.3 pi over 2.

488
00:34:54,920 --> 00:35:00,340
So that means then that the
specifications on our

489
00:35:00,340 --> 00:35:05,790
continuous time filter are given
by this, essentially

490
00:35:05,790 --> 00:35:09,380
pass band and stop band
edges warped through

491
00:35:09,380 --> 00:35:10,870
that nonlinear curve--

492
00:35:10,870 --> 00:35:12,620
this nonlinear curve.

493
00:35:12,620 --> 00:35:18,550
And I'm using capital G here to
denote the system function

494
00:35:18,550 --> 00:35:24,350
for the resulting continuous
time filter.

495
00:35:24,350 --> 00:35:28,760
And so now we could think of
designing a Butterworth filter

496
00:35:28,760 --> 00:35:34,430
that, let's say, exactly meets
these specifications.

497
00:35:34,430 --> 00:35:38,760
Well, if you do that, what
you'll find is that you get

498
00:35:38,760 --> 00:35:49,770
exact equality here if you pick
capital N equal to 5.3.

499
00:35:49,770 --> 00:35:55,240
And again, we have the issue
that if we want to meet or

500
00:35:55,240 --> 00:35:58,520
exceed the specifications, we
can't make the filter order

501
00:35:58,520 --> 00:36:00,440
lower, we have to
make it higher.

502
00:36:00,440 --> 00:36:03,740
And so we would make it, instead
of 5.3, we would make

503
00:36:03,740 --> 00:36:07,010
the filter order equal to 6.

504
00:36:07,010 --> 00:36:10,260
And now, again, we have several

505
00:36:10,260 --> 00:36:11,430
options and trade offs.

506
00:36:11,430 --> 00:36:15,600
Before, with impulse invariance,
we essentially

507
00:36:15,600 --> 00:36:20,930
decided to meet the pass band
specifications and exceed the

508
00:36:20,930 --> 00:36:23,530
stop band specifications
to provide

509
00:36:23,530 --> 00:36:26,940
some margin for aliasing.

510
00:36:26,940 --> 00:36:31,650
Here, we don't have any
aliasing, and we can trade

511
00:36:31,650 --> 00:36:33,470
things off anyway we'd like.

512
00:36:33,470 --> 00:36:40,390
The way that I've chosen to do
it is to exactly meet the stop

513
00:36:40,390 --> 00:36:46,910
band cut off, and exceed the
pass band specifications.

514
00:36:46,910 --> 00:36:52,490
And the result of doing that
is to choose a filter order

515
00:36:52,490 --> 00:36:57,580
capital N equal to 6, and the
parameter omega sub c in the

516
00:36:57,580 --> 00:37:04,350
Butterworth filter is
given by 0.76622.

517
00:37:04,350 --> 00:37:12,090
All right, so now we have the
parameters for the continuous

518
00:37:12,090 --> 00:37:18,920
time Butterworth filter, which
when mapped to the discrete

519
00:37:18,920 --> 00:37:23,690
time filter through the bilinear
transformation, will

520
00:37:23,690 --> 00:37:27,640
exceed our requirements in the
pass band and just meet the

521
00:37:27,640 --> 00:37:29,450
stop band cutoff.

522
00:37:29,450 --> 00:37:32,950
And so now we want to complete
the design procedure.

523
00:37:32,950 --> 00:37:41,240
And given the parameters of the
Butterworth filter, we can

524
00:37:41,240 --> 00:37:45,330
draw our appropriate circle in
the s-plane, which happens to

525
00:37:45,330 --> 00:37:49,580
be the same circle as before,
but with a different radius.

526
00:37:49,580 --> 00:37:56,800
And then associate poles on this
circle with B of s and B

527
00:37:56,800 --> 00:37:57,950
of minus s.

528
00:37:57,950 --> 00:37:59,760
In particular, take
the ones in the

529
00:37:59,760 --> 00:38:02,170
left half of the s-plane--

530
00:38:02,170 --> 00:38:05,070
same ones we had before except
we have a different value for

531
00:38:05,070 --> 00:38:07,380
omega sub c--

532
00:38:07,380 --> 00:38:11,880
and those, then, represent
B of s.

533
00:38:11,880 --> 00:38:16,810
So we can now determine
B of s.

534
00:38:16,810 --> 00:38:22,800
And once we have the transfer
function B of s, we then map

535
00:38:22,800 --> 00:38:28,060
that to a discrete time filter
by mapping through the

536
00:38:28,060 --> 00:38:30,760
bilinear transformation.

537
00:38:30,760 --> 00:38:35,790
And that then is the design
procedure which we would

538
00:38:35,790 --> 00:38:37,660
follow this example.

539
00:38:37,660 --> 00:38:41,880
All right, well, let's just see
what the result looks like

540
00:38:41,880 --> 00:38:44,260
when we're done.

541
00:38:44,260 --> 00:38:50,940
Here I show, again, on both a
linear magnitude scale and on

542
00:38:50,940 --> 00:38:55,010
a logarithmic or DB scale, the
frequency response of the

543
00:38:55,010 --> 00:38:57,440
resulting filter.

544
00:38:57,440 --> 00:39:00,310
And recall that the
specifications were that at

545
00:39:00,310 --> 00:39:05,730
0.2 pi, we should be down by no
more than 1 db, and clearly

546
00:39:05,730 --> 00:39:08,120
we've exceeded that
considerably.

547
00:39:08,120 --> 00:39:13,870
And at 0.3 pi, we should be down
by at least 15 db, and we

548
00:39:13,870 --> 00:39:17,750
chose the design so that we
would exactly meet that edge.

549
00:39:17,750 --> 00:39:21,910
So we've met this point and
exceeded this point, and this

550
00:39:21,910 --> 00:39:24,070
is our design.

551
00:39:24,070 --> 00:39:29,220
Now let's just compare this
with the impulse invariant

552
00:39:29,220 --> 00:39:31,870
design that we saw a
few minutes ago.

553
00:39:35,050 --> 00:39:41,046
The impulse invariant design
is what I indicate here.

554
00:39:41,046 --> 00:39:44,930
The bilinear transformation
design is now

555
00:39:44,930 --> 00:39:47,860
overlaid on top of it.

556
00:39:47,860 --> 00:39:51,420
It's hard to see much difference
on a linear

557
00:39:51,420 --> 00:39:54,820
magnitude scale, but let's look
on a logarithmic scale.

558
00:39:54,820 --> 00:39:58,750
And this one that I'm lifting
is the bilinear

559
00:39:58,750 --> 00:40:03,870
transformation, and this
is impulse invariance.

560
00:40:03,870 --> 00:40:08,410
And notice, in fact, something
very interesting, which is

561
00:40:08,410 --> 00:40:16,670
that the filter that we obtained
by mapping the

562
00:40:16,670 --> 00:40:19,655
Butterworth filter to a digital
filter through the

563
00:40:19,655 --> 00:40:24,740
bilinear transformation in fact
falls off in frequency

564
00:40:24,740 --> 00:40:28,900
much more rapidly than the one
that we got through impulse

565
00:40:28,900 --> 00:40:31,690
invariance.

566
00:40:31,690 --> 00:40:34,190
The question is why?

567
00:40:34,190 --> 00:40:36,600
Now one thought that might come
to mind is, well, impulse

568
00:40:36,600 --> 00:40:39,160
invariance has aliasing, the
bilinear transformation

569
00:40:39,160 --> 00:40:41,870
doesn't have aliasing,
that must be a

570
00:40:41,870 --> 00:40:44,990
consequence of aliasing.

571
00:40:44,990 --> 00:40:47,850
In fact, that's not
the reason.

572
00:40:47,850 --> 00:40:51,370
Aliasing, as it turns out in
this particular design, was

573
00:40:51,370 --> 00:40:54,460
relatively minimal in the
impulse invariant design.

574
00:40:54,460 --> 00:41:00,070
The reason has to do with this
nonlinear mapping in the

575
00:41:00,070 --> 00:41:03,710
bilinear transformation from the
continuous time frequency

576
00:41:03,710 --> 00:41:06,920
to the discrete time
frequency.

577
00:41:06,920 --> 00:41:12,070
Keep in mind that through that
mapping, as you start walking

578
00:41:12,070 --> 00:41:15,900
around the unit circle and
moving up to j omega axis, as

579
00:41:15,900 --> 00:41:18,700
you move up the j omega axis,
you have to move faster, and

580
00:41:18,700 --> 00:41:21,450
faster, and faster,
and faster.

581
00:41:21,450 --> 00:41:28,580
And what's in continuous time
frequency at infinity is what

582
00:41:28,580 --> 00:41:31,370
you get to in the discrete time
frequency by the time you

583
00:41:31,370 --> 00:41:32,920
get around to pi.

584
00:41:32,920 --> 00:41:38,870
So in fact, what we're looking
at as we look out along this

585
00:41:38,870 --> 00:41:45,340
frequency axis is we're seeing
higher, and higher, and higher

586
00:41:45,340 --> 00:41:48,520
frequencies in the continuous
time filter.

587
00:41:48,520 --> 00:41:53,550
By the time we get to pi, we
should in fact be in the

588
00:41:53,550 --> 00:41:57,560
continuous time filter
equivalently off to infinity,

589
00:41:57,560 --> 00:42:00,540
which sounds like a pretty
uncomfortable place to be.

590
00:42:04,380 --> 00:42:10,920
OK, now this was a fairly rapid
trip through a number of

591
00:42:10,920 --> 00:42:14,200
issues, in particular, some of
the issues associated with the

592
00:42:14,200 --> 00:42:20,980
bilinear transformation, and
also this issue of how you

593
00:42:20,980 --> 00:42:24,330
pick this parameter capital T,
and how it might be associated

594
00:42:24,330 --> 00:42:27,190
with a sampling frequency if
you're doing discrete time

595
00:42:27,190 --> 00:42:30,130
processing of continuous
time signals.

596
00:42:30,130 --> 00:42:35,020
And we don't have time to
explore some of those issues

597
00:42:35,020 --> 00:42:37,880
more fully in this lecture.

598
00:42:37,880 --> 00:42:41,220
But I'd like to conclude by
making a couple of comments.

599
00:42:41,220 --> 00:42:45,160
One comment is that the two
techniques that we've talked

600
00:42:45,160 --> 00:42:49,510
about, impulse invariance and
the bilinear transformation,

601
00:42:49,510 --> 00:42:54,610
are the two techniques that are
principally used when one

602
00:42:54,610 --> 00:42:58,900
thinks of mapping continuous
time filters to discrete time

603
00:42:58,900 --> 00:43:00,830
filters for whatever
application.

604
00:43:00,830 --> 00:43:05,890
And I stress again that you may
want to do that mapping

605
00:43:05,890 --> 00:43:10,080
whether or not the discrete
time filter is eventually

606
00:43:10,080 --> 00:43:11,910
going to be used for processing

607
00:43:11,910 --> 00:43:13,160
continuous time signals.

608
00:43:15,970 --> 00:43:24,020
Now impulse invariance had the
very nice characteristic that

609
00:43:24,020 --> 00:43:26,830
it corresponds to a linear
mapping between the two

610
00:43:26,830 --> 00:43:32,560
frequency axes, except for the
issue of aliasing, and that's

611
00:43:32,560 --> 00:43:36,020
a problem with it, and in
particular, limits its

612
00:43:36,020 --> 00:43:41,280
usefulness to filter designs, or
for mapping continuous time

613
00:43:41,280 --> 00:43:42,970
filters that are band limited.

614
00:43:46,610 --> 00:43:50,840
On the other hand, we have the
bilinear transformation as a

615
00:43:50,840 --> 00:43:55,830
design procedure, which totally
avoids aliasing, but

616
00:43:55,830 --> 00:44:00,210
has the disadvantage or
difficulty that it represents

617
00:44:00,210 --> 00:44:03,510
a nonlinear mapping from the
continuous time filter to the

618
00:44:03,510 --> 00:44:05,420
discrete time filter.

619
00:44:05,420 --> 00:44:10,230
Now this nonlinear distortion
is perfectly acceptable if

620
00:44:10,230 --> 00:44:13,210
we're designing or attempting
to design filters that have

621
00:44:13,210 --> 00:44:16,400
flat frequency characteristics.

622
00:44:16,400 --> 00:44:19,740
It's not acceptable if, for
example, we had a linear

623
00:44:19,740 --> 00:44:23,650
frequency characteristic that we
wanted to map to a discrete

624
00:44:23,650 --> 00:44:25,750
time filter and end up with
a linear frequency

625
00:44:25,750 --> 00:44:26,800
characteristic.

626
00:44:26,800 --> 00:44:31,480
It won't come out to be linear
because of this nonlinear

627
00:44:31,480 --> 00:44:34,320
mapping of the frequency axis.

628
00:44:34,320 --> 00:44:39,890
Now there are also a number of
other design procedures, which

629
00:44:39,890 --> 00:44:42,620
we won't go into, for designing
discrete time

630
00:44:42,620 --> 00:44:47,560
filters, and among them are
a variety of techniques,

631
00:44:47,560 --> 00:44:51,440
including, for example,
computer aided design

632
00:44:51,440 --> 00:44:52,700
procedures.

633
00:44:52,700 --> 00:44:56,460
And I invite you, if you're
interested and want to dig

634
00:44:56,460 --> 00:45:01,330
into that in more detail and
more deeply, to explore that

635
00:45:01,330 --> 00:45:08,060
topic by making reference to
various of the books listed in

636
00:45:08,060 --> 00:45:10,390
the bibliography in the text.

637
00:45:10,390 --> 00:45:11,640
Thank you.