Next Century Challenges for

kitteninterestΤεχνίτη Νοημοσύνη και Ρομποτική

15 Νοε 2013 (πριν από 3 χρόνια και 8 μήνες)

60 εμφανίσεις

Next Century Challenges for
Computer Science and
Electrical Engineering

Professor Randy H. Katz

United Microelectronics Corporation
Distinguished Professor


CS Division, EECS Department

University of California, Berkeley

Berkeley, CA 94720
-
1776 USA

Agenda


The Information Age


Enrollment and Curriculum Challenges


Random Thoughts and Recommendations


Summary and Conclusions

Agenda


The Information Age


Enrollment and Curriculum Challenges


Random Thoughts and Recommendations


Summary and Conclusions

A Personal Historical Tour


20th Century as “Century of the Electron”


1884: Philadelphia Exposition
--
Rise of EE as a profession


1880s: Electricity harnessed for communications, power, light,
transportation


1890s: Large
-
Scale Power Plants (Niagara Falls)


1895: Marconi discovers radio transmission/wireless telegraphy


1905
-
1945: Long wave/short wave radio, television


1900s
-
1950s: Large
-
scale Systems Engineering (Power, Telecomms)


1940s
-
1950s: Invention of the Transistor & Digital Computer


1960s: Space program drives electrical component miniaturization


1970s: Invention of the Microprocessor/rise of microelectronics


1980s
-
1990s: PCs and data communications explosion


Power Engineering
--
> Communications
--
> Systems
Engineering
--
> Microelectronics
--
> ???

Robert Lucky’s Inverted Pyramid

Software

Hardware

Technology

Applications Software

System Software

Middleware Software

Embedded Software

FPGA Design

VLSI Design

Circuit Design

Device Design

Process

Design

Increasing Numbers

of Practitioners

Algorithms

Physics

Information

Technology

And software jobs go begging ...

Agenda


The Information Age


Enrollment and Curriculum Challenges


Random Thoughts and Recommendations


Summary and Conclusions

Undergraduate Enrollment Trends

0
200
400
600
800
1000
1200
1400
88
89
90
91
92
93
94
95
96
97
L&S CS

EECS/CS

CS Total

EECS/EE

Total

The trend towards CS enrollment growth continues

A New Vision for EECS

“If we want everything to stay
as it is, it will be necessary for
everything to change.”


Giuseppe Tomasi Di Lampedusa (1896
-
1957)

Old View of EECS

EE

physics

circuits

signals

control

Physical

World

CS

algorithms

programming

comp systems

AI

Synthetic

World

New View of EECS

EE

components

CS

algorithms

EECS

complex/electronics

systems

Processing

Devices

MEMS

Optoelectronics

Circuits

CAD

Sim & Viz

Programming

Databases

CS Theory

Intelligent Sys & Control

Communications Sys

Intelligent Displays

Reconfigurable Systems

Computing Systems

Multimedia

User Interfaces

Robotics/Vision

InfoPad

IRAM

Signal Proc

Control

AI

Software

EECS

Info Mgmt

& Systems

Cognitive

Science

Computational

Sci & Eng

BioSci/Eng

Biosensors &

BioInfo

Materials

Science/

Electronic

Materials

Physical

Sciences/

Electronics

MechE

Sensors &

Control

Design

Sci

Observations


Introduction to Electrical Engineering course is
really introduction to devices and circuits


Freshman engineering students extensive
experience with computing; significantly less
experience with physical systems (e.g., ham radio)


Insufficient motivation/examples in the early EE
courses; excessively mathematical and
quantitative


These factors drive students into the CS track

Curriculum Redesign


EECS 20: Signals and Systems


Every EECS student will take:


Introduction to Signals and Systems


Introduction to Electronics


Introduction to Computing (3 course sequence)


Computing emerges as a tool as important as
mathematics and physics in the engineering
curriculum


More freedom in selecting science and mathematics courses


Biology becoming increasing important

EECS 20: Structure and Interpre
-
tation of Systems and Signals


Course Format: 3 hrs lecture, 3 hrs lab per week



Prerequisites: Basic Calculus



Intro to mathematical modeling techniques used
in design of electronic systems. Apps to comm
systems, audio, video, and image processing
systems, comm networks, and robotics and control
systems. Modeling techniques introduced include
linear
-
time
-
invariant systems, elementary
nonlinear systems, discrete
-
event systems,
infinite state space models, and finite automata.
Analysis techniques introduced include frequency
domain, transfer functions, and automata theory.
Matlab
-
based lab is part of the course.


EE 40: Introduction to
Microelectronics Circuits


Course Format: Three hours of lecture, three
hours of laboratory, and one hour of discussion
per week.



Prerequisites: Calculus and Physics.



Fundamental circuit concepts and analysis
techniques in the context of digital electronic
circuits. Transient analysis of CMOS logic
gates; basic integrated
-
circuit technology and
layout.


CS 61A: The Structure and
Interpretation of Computer Programs


Course Format: 3 hrs lecture, 3 hrs discussion, 2.5 hrs
self
-
paced programming laboratory per week.


Prerequisites: Basic calculus & some programming.



Intro to programming and computer science. Exposes
students to techniques of abstraction at several levels:
(a) within a programming language, using higher
-
order
functions, manifest types, data
-
directed programming,
and message
-
passing; (b) between programming
languages, using functional and rule
-
based languages as
examples. It also relates these to practical problems of
implementation of languages and algorithms on a von
Neumann machine. Several significant programming
projects, programmed in a dialect of LISP.


CS 61B: Data Structures


Course Format: 3 hrs lecture, 1 hr discussion, 2
hrs of programming lab, average of 6 hrs of self
-
scheduled programming lab per week.


Prerequisites: Good performance in 61A or
equivalent class.


Fundamental dynamic data structures, including
linear lists, queues, trees, and other linked
structures; arrays strings, and hash tables.
Storage management. Elementary principles of
software engineering. Abstract data types.
Algorithms for sorting and searching.
Introduction to the Java programming language.

CS 61C: Machine Structures


Course Format: 2 hrs lecture, 1 hr discussion,
average of six hrs of self
-
scheduled programming
laboratory per week.


Prerequisites: 61B.


The internal organization and operation of digital
computers. Machine architecture, support for
high
-
level languages (logic, arithmetic, instruction
sequencing) and operating systems (I/O,
interrupts, memory management, process
switching). Elements of computer logic design.
Tradeoffs involved in fundamental architectural
design decisions.


Agenda


The Information Age


Enrollment and Curriculum Challenges


Random Thoughts and Recommendations


Summary and Conclusions

21st Century Challenge for
Computer Science


Avoid the mistakes of academic Math departments


Mathematics pursued as a “pure” and esoteric discipline for its
own sake (perhaps unlikely given industrial relevancy)


Faculty size dictated by large freshman/sophomore program (i.e.,
Calculus teaching) with relatively few students at the
junior/senior level


Other disciplines train and hire their own applied mathematicians


Little coordination of curriculum or faculty hiring


Computer Science MUST engage with other
departments using computing as a tool for their
discipline


Coordinated curriculum and faculty hiring via cross
-
departmental
coordinating councils

21st Century Challenges for
Electrical Engineering


Avoid the trap of Power Systems Engineering


Student interest for EE physical areas likely to continue their
decline (at least in the USA), just when the challenges for new
technologies becoming most critical

»
Beginning to see the limits of semiconductor technology?

»
What follows Silicon CMOS? Quantum dots? Cryogenics?
Optical computation? Biological substrates? Synthesis of
electrical and mechanical devices beyond transistors
(MEMS/nanotechnology)

»
Basic technology development, circuit design and production
methods


Renewed emphasis on algorithmic and mathematical
EE: Signal Processing, Control, Communications


More computing systems becoming application
-
specific


E.g., entertainment, civilian infrastructure (air traffic control), …


21st Century Challenges for

EE and CS


21st Century to be “Century of Biotechnology”?


Biomimetics: What can we learn about building complex systems
by mimicing/learning from biological systems?

»
Hybrids are crucial in biological systems; Never depend on a
single group of software developers!

»
Reliability is a new metric of system performance


Human Genome Project

»
Giant data mining application

»
Genome as “machine language” to be reverse engineered


Biological applications of MEMS technology: assay lab
-
on
-
a
-
chip,
molecular level drug delivery


Biosensors: silicon nose, silicon ear, etc.


What will be more important for 21st century
engineers to know: more physics or more biology?


Agenda


The Information Age


Enrollment and Curriculum Issues


Random Thoughts and Recommendations


Summary and Conclusions

Summary and Conclusions


Fantastic time for the IT fields of EE and CS


As we approach 2001, we are in the Information Age,

not the Space Age!


BUT, strong shift in student interest from the physical

side of EE towards the algorithmic side of CS


Challenge for CS


Avoid mistakes of math as an academic discipline


Coordinate with other fields as they add computing

expertise to their faculties


Challenge for EE


What will be the key information system implementation
technology of 21st century?


Challenge for EE and CS


How to participate in the Biotech revolution of the next century