Fridays, 1:25pm: lab section held by Sergio Servetto.
Summary:
Until not long ago, a typical electrical engineer interested in signal
processing and communications problems worked mostly on problems of analog
filter design, antenna design, design of codes and modulators, and other
"continuous" issues related to signaling over a gaussian channel; a
typical computer scientist however would have simply not been
interested in signal processing, and his work in communications would have
been limited to the design of protocols for data transmission over networks
that were only starting to emerge. That is, they lived in separate worlds.
But that is no longer the case. The exponential growth of the
Internet and of the World Wide Web in recent years, the steady decrease in
the cost of hardware, the maturity reached by the fields of digital
signal processing and digital communications, and the ubiquity of
low-cost connectivity, have all combined to create significant interest in
areas common to CS and EE. Today, our typical engineer must deal with
software issues that until not long ago belonged in the realm of "pure" CS,
whereas our typical computer scientist needs to be aware of properties of
the data his protocols manipulate (i.e., digital signals), so that these
protocols can deliver the quality of service required by applications.
In line with this view, our main goal in this class is the study computer
networks, but from the perspective of one particular application: the
reliable transport of coded digital signals.
Prerequisites: ECE 301/310/314 (required), ECE 302
(recommended). You might find that concurrent registration with one or
both of ECE 425 and ECE 467, and with CS 414, will be useful. You might
also find that taking ECE 468 and CS 519 next spring will be useful as
well. I would very much encourage you to do all of this, if your schedule
permits.
The two top-n lists for ECE 445
Note: as the semester unfolds, and I get to talk with all of you, I am
sure we will come up with more "reasons" to add to these
top-n-lists... So stay tuned!
Top n reasons to take the new ECE 445:
- #3: "I want to get the most bang-for-my-education-buck: I
don't want my education to become obsolete each time a new
protocol/system/component comes out, I want to learn something about
computer networks that will still be useful 10-20 years from now, and
that will allow me to impress my potential employers in
terms of how fast I can get things done." You came to the
right place: you will study the basic principles underlying the design
of a large class of modern communication systems. And you will be
able to use this knowledge to understand how a myriad of practical
implementations of these systems work.
- #2: "I would like to get an idea of whether graduate school
in the comm area is right for me." Again the right place: if you
really get it in this class, by the time we are done you will have
figured out how much original research there is to do in this
exciting area. You will know how much you don't know, and you will
get a taste of what it would be like to solve some of those really
cool problems.
And the #1 reason for taking the new ECE 445 is: "I want a real
challenge, I want to work hard, I want to learn a lot of useful stuff,
and not only that, I also want to have fun!"
Top n reasons to stay away from the new ECE 445:
- #4: "I want to learn all about
TCP/OSPF/BGP/your-favorite-protocol." You will simply not
get that. There are other courses which will give you exactly that.
Not this one.
- #3: "I want to learn all about
G.722/JPEG2000/MPEG-2/your-favorite-coding-standard." Same as
above.
- #2: "I thought ECE 310 was dreadful, I was so glad when
it was over!" Brace for impact: you
will use lots of that material here.
And the #1 reason for staying away from the new ECE 445 is: "Hey,
I thought this was going to be easy...".