and if it fails to detect it, assumes that no connection can be established and hangs up.
If it does detect the tone, then it answers with a voice-like signal that announces “I am a
modem that can communicate according to ITU standard x,” where x is one of the many
modem standard published by the International Telecommunication Union, or ITU.
The answering modem may or may not recognize the signal from the initiating modem.
The initiating modem, for example, may be a newer modem using a standard that was
Lee & Varaiya, Signals and Systems
37
1.2. SYSTEMS
established after the answering modem was manufactured. If the answering modem does
recognize the signal, then it responds with a signal that says “good, I too can communi-
cation using standard x, so let’s get started.” Otherwise, it remains silent. The initiating
modem, if it fails to get a response, tries another signal, announcing “I am a modem that
can communicate according to ITU standard y,” where y is typically now an older (and
slower) standard. This process continues until the two modems agree on a standard.
Once agreement is reached, the modems need to make measurements of the telephone
channel to compensate for its distortion. They do this by sending each other pre-agreed
signals called training signals, defined by the standard. The training signal is distorted
by the channel, and, since the receiving modem knows the signal, it can measure the
distortion. It uses this measurement to set up a device called an adaptive equalizer.
Once both modems have completed their setup, they begin to send data to one another.
As systems go, modem negotiation is fairly complex. It involves both event sequences
and voice-like signals. The voice like signals need to be analyzed in fairly sophisticated
ways, sometimes producing events in the event sequences. It will take this entire book
to analyze all parts of this system. The handling of the event sequences will be treated
using finite state machines, and the handling of the voice-like signals will be treated using
frequency-domain concepts and filtering.
1.2.5
Feedback control systems
Feedback control systems are composite systems where a plant embodies a physical pro-
cess whose behavior is guided by a control signal. A plant may be a mechanical device,
such as the power train of a car, or a chemical process, or an aircraft with certain inertial
and aerodynamic properties, for example. Sensors attached to the plant produce signals
that are fed to the controller, which then generates the control signal. This arrangement,
where the plant feeds the controller and the controller feeds the plant, is a complicated
sort of composite system called a feedback control system. It has extremely interesting
properties which we will explore in much more depth in subsequent chapters.
In this section, we construct a model of a feedback control system using the syntax of
block diagrams. The model consists of several interconnected components. We will iden-
tify the input and output signals of each component and how the components are inter-
connected, and we will argue on the basis of a common-sense physics how the overall
system will behave.
38
Lee & Varaiya, Signals and Systems
1. SIGNALS AND SYSTEMS
Example 1.20:
Consider a forced air heating system, which heats a room in a
home or office to a desired temperature. Our first task is to identify the individual
components of the heating system. These are
• a furnace/blower unit (which we will simply call the heater) that heats air and
blows the hot air through vents into a room,
• a temperature sensor that measures the temperature in a room, and
• the control system that compares the specified desired temperature with the
sensed temperature and turns the furnace/blower unit on or off depending on
whether the sensed temperature is below or above the demanded temperature.
The interconnection of these components is shown in Figure 1.18.
Our second task is to specify the input and output signals of each component sys-
tem (the domain and range of the function), ensuring the input-output matching
conditions. The heater produces hot air depending on whether it is turned on or off.
So its input signal is simply a function of time which takes one of two values, On
or Off . We call input to the heater (a signal) OnOff ,
OnOff : Time → {On, Off },
and we take Time = R+, the non-negative reals. So the input signal space is
OnOffProfiles = [R+ → {On, Off }].
(Recall that the notation [D → R] defines a function space, as explained in Section
1.2.1.) When the heater is turned on it produces heat at some rate that depends on
the capacity of the furnace and blower. We measure this heating rate in BTUs per
hour. So the output signal of the heater, which we name Heat is of the form
Heat : R+ → {0, Bc},
where Bc is the heater capacity measured in BTU/hour. If we name the output signal
space HeatProfiles, then
HeatProfiles = [R+ → {0, Bc}].
Thus the Heater system is described by a function
Heater : OnOffProfiles → HeatProfiles.
(1.13)
Lee & Varaiya, Signals and Systems
39
1.2. SYSTEMS
Common-sense physics tells us that when the heater is turned on the room will
begin to warm up and when the heater is turned off the room temperature will fall
until it reaches the outside temperature. So the room temperature depends on both
the heat delivered by the heater and the outside temperature. Thus the input signal
to the room is the pair (Heat, OutsideTemp). We can take OutsideTemp to be of the
form
OutsideTemp : R+ → [min, max],
where [min, max] is the range of possible outside temperatures, measured in degrees
Celsius, say. The output signal of the room is of course the room temperature,
RoomTemp : R+ → [min, max].
If we denote
OutsideTempProfiles = [R+ → [min, max]],
and
RoomTempProfiles = [R+ → [min, max]],
then the behavior of the Room system is described by a function
Room : HeatProfiles × OutsideTempProfiles → RoomTempProfiles
(1.14)
In a similar manner, the Sensor system is described by a function
Sensor : RoomTempProfiles → SensedTempProfiles
(1.15)
with input signal space RoomTempProfiles and output signal space
SensedTempProfiles = [R+ → [min, max]].
The Controller is described by the function
Controller : DesiredTempProfile × SensedTempProfile → OnOffProfile,
(1.16)
where
DesiredTempProfiles = [R+ → [min, max]].
We have constructed a model where the input-output matching condition is satisfied
everywhere.
40
Lee & Varaiya, Signals and Systems
1. SIGNALS AND SYSTEMS
The overall forced air heating system (the shaded part of Figure 1.18) has a pair of
input signals, desired temperature and outside temperature, and one output signal,
room temperature. So it is described by the function
ForcedHeat :
DesiredTempProfiles × OutsideTempProfiles
→ RoomTempProfiles.
If we are given the input signal values x of desired temperature and the value y of
outside temperature, we can compute the value z = ForcedHeat(x, y) by solving the
following four simultaneous equations
u =
Controller(x, w)
v =
Heater(u)
(1.17)
z =
Room(y, v)
w =
Sensor(z)
Given x and y, we must solve these four equations to determine the four unknown
functions u, v, w, z of which u, v, w are the internal signals, and z is the output signal.
Of course to solve these simultaneous equations, we need to specify the four system
functions. So far we have simply given names to those functions and identified
their domain and range. To complete the specification we must describe how those
functions assign output signals to input signals.
If the sensor is functioning properly we expect Sensor’s output signal to be the
room temperature, that is, for all z and for all t ∈ R+,
w(t) = Sensor(z)(t) = z(t).
A thermostatic controller has a simple behavior: it turns the heater on if the sensed
temperature falls below the desired temperature by a certain amount, say δ1, and
it turns the heater off if the sensed temperature rises above the desired temperature
by, say δ2. That is, for all x, w and for all t ∈ R+,
On,
if w(t) − x(t) ≤ −δ
u(t) = Controller(x, w)(t) =
1
Off ,
if w(t) − x(t) ≥ δ2
Suppose finally that the desired temperature is set to some constant, say x∗, i.e. for
all t ∈ R+,
x(t) = x∗.
Lee & Varaiya, Signals and Systems
41
1.3. SUMMARY
We can expect the behavior depicted in Figure 1.19. When x∗ − w(t) drops below −δ1,
the controller will turn on the heater, the room temperature will increase until x∗ − w(t)
rises above δ2, and then the controller will turn off the heater. Thus the room temperature
will fluctuate around the desired temperature, x∗.
1.3
Summary
Signals are functions that represent information. We studied examples of three classes of
signals. In the first class are functions of discrete or continuous time and space that occur
in human perception and eletromechanical sensors. In the second class are functions of
time and space representing attributes of physical objects or devices. The third class of
signals consist of sequences of symbols representing data or the occurrences of events. In
each case, the domain and the range can be defined precisely.
Systems are functions that transform signals. We looked at telecommunication systems,
where a network that was originally designed for carrying voice signals is used for many
other kinds of signals today. One way to accomplish this is to design systems such as
modems that transform signals so that they masquerade as voice-like signals. We also
looked at system models for signal degradation and for storage of signals. We looked
at systems that are primarily concerned with discrete events and command sequences,
and we examined a feedback control system. The telephone system and the forced air
heating system were both described using block diagrams as interconnections of simpler
component systems. In all cases, systems were given as functions where the domain and
the range are function spaces, or sets of functions.
42
Lee & Varaiya, Signals and Systems
1. SIGNALS AND SYSTEMS
Probing Further: Modems and Encrypted speech
POTS service is designed to carry speech signals. With proper encoding, however, it can
carry any signal that resembles speech in certain technical ways that we will discuss.
Data can be transmitted over POTS networks using a voiceband data modem, shown
just below the upper right in Figure 1.14. This used to provide a routine way to connect
to the Internet, but has since been supplanted (mostly) by broadband connections.
Data are represented by bit sequences, which are functions of the form
BitSequence : Indices → Binary,
where Indices ⊂ N, the natural numbers, and Binary = {0, 1}. In order for a bit sequence
to traverse a POTS phone line, it has to be transformed into something that resembles
a voice signal. Furthermore, a system is needed to transform the voice-like signal back
into a bit sequence. A modem does this. The word modem is a contraction of modu-
lator, demodulator. Pairs of modems are used at opposite ends of a POTS connection,
each with a transmitter and a receiver to achieve bidirectional (called full duplex) com-
munication.
One of the strangest uses is to transmit digitally represented and encrypted voice
signals. Here is a depiction:
voice-like
voice signal
bit sequence
bit sequence
signal
encoder
encryption
modulator
telephone
modem
network
voice signal
bit sequence
bit sequence
decoder
decryption
demodulator
voice-like
signal
What is actually sent through the telephone network sounds like hiss, which by itself
provides a modicum of privacy. Casual eavesdroppers will be unable to understand
the encoded speech.
However, this configuration also provides protection against
sophisticated listeners. A listener that is able to extract the bit sequence from this
sound will still not be able to reconstruct the voice signal because the bit sequence is
encrypted.
Lee & Varaiya, Signals and Systems
43
1.3. SUMMARY
y
OutsideTemp
DesiredTemp
OnOff
Heat
RoomTemp
Controller
Heater
Room
x
u
v
z
SensedTemp
Sensor
w
z
ForcedHeat
Figure 1.18: The interconnected components of a forced air heating system.
w
x* + d 2
x*
x* + d 1
off
on
t
Figure 1.19: With a thermostatic controller the room temperature will fluctuate
around the desired temperature setting, x∗.
44
Lee & Varaiya, Signals and Systems
1. SIGNALS AND SYSTEMS
Exercises
Each problem is annotated with the letter E, T, C which stands for exercise, requires some
thought, requires some conceptualization. Problems labeled E are usually mechanical,
those labeled T require a plan of attack, those labeled C usually have more than one
defensible answer.
1. E The function x : R → R given by
∀t ∈ R x(t) = sin(2π × 440t)
is a mathematical example of a signal in the signal space [R → R]. Give a mathe-
matical example of a signal x in each of the following signal spaces.
(a) [Z → R]
(b) [
2
R → R ]
(c) [{0, 1, · · · , 600} × {0, 1, · · · , 400} → {0, 1, · · · , 255}]
(d) Describe a practical application for the signal space [{0, 1, · · · , 600}×{0, 1, · · · , 400} →
{0,1,··· ,255}]. That is, what might a function in this space represent?
2. C For each of the continuous-time signals below, represent the signal in the form of
f : X → Y and as a sketch like Figure 1.1. Carefully identify the range and domain
in each case.
(a) The voltage across the terminals of a car battery.
(b) The closing prices on each day of a share of a company.
(c) The position of a moving vehicle on a straight one-lane road of length L.
(d) The simultaneous position of two moving vehicles on the same straight one-
lane road of length L.
(e) The sound heard in both of your ears.
3. E In digital telephony, voice is sampled at a rate of 8,000 samples/second, so the
sampling period is 1/8000 = 125 µs (microseconds). What is the sampling period
and the sampling frequency of sound in a compact disc (CD)?
Lee & Varaiya, Signals and Systems
45
EXERCISES
4. E Figure 1.4 displays the plots of two sinusoidal signals and their sum. Sketch
by hand the plots of the four functions, Step, Triangle, Sum, Diff , all with domain
[−1, 1] and range R, defined by: ∀t ∈ [−1, 1],
Triangle(t)
=
1 − |t|,
Step(t)
=
0 if t < 0, = 1 if t ≥ 0,
Sum(t)
=
Triangle(t) + Step(t),
Diff (t)
=
Triangle(t) − Step(t).
5. C The following examples of spatial information can be represented as a signal in
the form of f : X → Y . Specify a reasonable choice for the range and domain in
each case.
(a) An image impressed on photographic paper.
(b) An image stored in computer memory.
(c) The height of points on the surface of the earth.
(d) The location of the chairs in a room.
(e) The household voltage in Europe, which has frequency 50 Hz and is 210 volts
RMS.
6. C The image called Albers consists of an eight-inch yellow square in the center of
a white twelve-inch square background. Express Albers as a function, by choosing
the domain, range, and function assignment.
7. E How many bits are there in a 1024 × 768 pixel image in which each pixel is
represented as a 16-bit word? How long would it take to download this image over
a 28 Kbps voice-band modem, a 384 Kbps DSL modem, a 10 Mbps Ethernet local
area network?
8. C Represent these examples as data or event sequences. Specify reasonable choices
for the range and domain in each case.
(a) The result of 100 tosses of a coin,
(b) The sequence of button presses inside an elevator,
(c) The sequence of main events in a soda vending machine,
(d) Your response to a motorist who is asking directions,
(e) A play-by-play account of a game of chess.
46
Lee & Varaiya, Signals and Systems
1. SIGNALS AND SYSTEMS
9. C Formulate the following items of information as functions. Specify reasonable
choices for the domain and range in each case.
(a) The population of U.S. cities,
(b) The white pages in a phone book (careful: the white pages may list two iden-
tical names, and may list the same phone number under two different names),
(c) The birth dates of students in class,
(d) The broadcast frequencies of AM radio stations,
(e) The broadcast frequencies of FM radio stations, (look at your radio dial, or at
the web page:
http://www.eecs.berkeley.edu/˜eal/eecs20
/sidebars/radio/index.html.
10. E Use Matlab to plot the graph of the following continuous-time functions de-
fined over [−1, 1], and on the same plot display 11 uniformly spaced samples (0.2
seconds apart) of these functions. Are these samples good representations of the
waveforms?
(a) f : [−1, 1] → R, where for all x ∈ [−1, 1], f (x) = e−x sin(10πx).
(b) Chirp : [−1, 1] → R, where for all t ∈ [−1, 1], Chirp(t) = cos(10πt2).
11. E Suppose the pendulum of Figure 1.10 is rotating counter-clockwise at a speed
of one revolution per second over the five-second interval [0, 5]. Sketch a plot of
the resulting function: θ : [0, 5] → [−π, π). Assume θ(0) = 0. Also specify this
function mathematically. Your plot is discontinuous, but the pendulum’s motion is
continuous. Explain this apparent inconsistency.
12. T There is a large difference between the sets X , Y , and [X → Y ]. This exercise
explores some of that difference.
(a) Suppose X = {a, b, c} and Y = {0, 1}. List all the functions from X to Y , i.e.
all the elements of [X → Y ]. Note that part of the problem here is to figure out
how to list all the functions.
(b) If X has m elements and Y has n elements, how many elements does [X → Y ]
have?
Lee & Varaiya, Signals and Systems
47
EXERCISES
(c) Suppose
ColormapImages =
[DiscreteVerticalSpace × DiscreteHorizontalSpace
→ ColorMapIndexes].
Suppose the domain of each image in this set has 6,000 pixels and the range
has 256 values. How many distinct images are there? Give an approximate
answer in the form of 10n. Hint: ab = 10blog10(a).
48
Lee & Varaiya, Signals and Systems
2
Defining Signals and Systems
Contents
2.1
Defining functions . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.1
Declarative assignment . . . . . . . . . . . . . . . . . . . . .
2.1.2
Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Probing Further: Relations . . . . . . . . . . . . . . . . . . . . . . .
2.1.3
Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.4
Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.5
Composition . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.6
Declarative vs. imperative . . . . . . . . . . . . . . . . . . .
Probing Further: Declarative and imperative . . . . . . . . . . . . .
2.2
Defining signals
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.1
Declarative definitions . . . . . . . . . . . . . . . . . . . . .
2.2.2
Imperative definitions
. . . . . . . . . . . . . . . . . . . . .
2.2.3
Physical modeling . . . . . . . . . . . . . . . . . . . . . . .
2.3
Defining systems . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Probing Further: Physics of a Tuning Fork
. . . . . . . . . . . . . .
2.3.1
Memoryless systems and systems with memory . . . . . . . .
2.3.2
Differential equations . . . . . . . . . . . . . . . . . . . . . .
2.3.3
Difference equations . . . . . . . . . . . . . . . . . . . . . .
Basics: Trigonometric Identities . . . . . . . . . . . . . . . . . . . .
Basics: Summations . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.4
Composing systems using block diagrams . . . . . . . . . . .
Probing Further: Composition of graphs . . . . . . . . . . . . . . . .
2.4
Summary . . .