View
218
Download
2
Tags:
Embed Size (px)
Citation preview
Next Century Challenges Next Century Challenges for Computer Science and for Computer Science and
Electrical EngineeringElectrical EngineeringProfessor Randy H. Katz
United Microelectronics Corporation Distinguished Professor
CS Division, EECS DepartmentUniversity of California, BerkeleyBerkeley, CA 94720-1776 USA
AgendaAgenda
• The Information Age• EECS Department at Berkeley• Student Enrollment Pressures• Random Thoughts and Recommendations• Summary and Conclusions
AgendaAgenda
• The Information Age• EECS Department at Berkeley• Student Enrollment Pressures• Random Thoughts and Recommendations• Summary and Conclusions
A Personal Historical ViewA Personal Historical View
• 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 minaturization– 1970s: Invention of the Microprocessor/rise of microelectronics– 1980s-1990s: PCs and data communications explosion
• Power Engineering --> Communications --> Systems Engineering --> Microelectronics --> ???
Late 20th Century Rise of the Late 20th Century Rise of the “Information Age”“Information Age”
• Electronics + computing = “information technology”• Technologies crucial for manipulating large amounts of
information in electronic formats– Hardware: Semiconductors, optoelectronics, high performance
computing and networking, satellites and terrestrial wireless communications devices;
– Software: Computer programs, software engineering, software agents;– Hardware-Software Combination: Speech and vision recognition,
compression technologies;
• Information industries: assemble, distribute, and process information in a wide range of media, e.g., telephone, cable, print, and electronic media companies
• $3 trillion world wide industry by 2010
Software Jobs Go BeggingSoftware Jobs Go Begging
• “America’s New Deficit: The Shortage of Information Technology Workers,” Department of Commerce
– Job growth exceeds the available talent– 1994-2005: 1 million new information technology
workers will be needed
• “Help Wanted: The IT Workforce Gap at the Dawn of a New Century,” ITAA
– 190,000 unfilled positions for IT workers nationwide– Between 1986 and 1994, bachelor degrees in CS fell
from 42,195 to 24,200 (43%)
Robert Lucky’s Inverted Robert Lucky’s Inverted PyramidPyramid
Software
Hardware
Technology
Applications Software
System Software
Middleware Software
Embedded Software
FPGA DesignVLSI Design
Circuit Design
Device Design
ProcessDesign
Increasing Numbersof Practitioners
Algorithms
Physics
InformationTechnology
AgendaAgenda
• The Information Age• EECS Department at Berkeley• Student Enrollment Pressures• Random Thoughts and Recommendations• Summary and Conclusions
Departmental CultureDepartmental Culture
• A shared view of computing joining mathematics and physics as core of the sciences and engineering
• Large-scale interdisciplinary experimental research projects with strong industrial collaborations
– Architecture: RISC, RAID, NOW, IRAM, CNS-1, BRASS– Parallel Systems: Multipole, ScaLAPACK, Spilt-C, Titanium– Berkeley Digital Library Project: Environmental Data– InfoPad: Portable Multimedia Terminal for Classroom Use– PATH Intelligent Highway Project, FAA Center of Excellence
• Computation and algorithmic methods in EE– Circuit Simulation, Process Simulation, Optical Lithography– CAD Synthesis/Optimization, Control Systems
• Increasing collaboration with other departments in Engineering and elsewhere on campus
Historical PerspectiveHistorical Perspective
• Early-mid 1950s: Computer engineering activity grows within EE department
• Early 1960s: Separate CS Department formed within College of Letters and Science
• Early 1970s: Forced merger--semi-autonomous CS Division within single EECS Department; separate L&S CS program for undergraduates continues
• 1980s: Strong collaborations between EE and CS in VLSI, CAD• 1990s: Increasing interactions between EE systems/CS AI/vision;
EE comms/CS networking/distributed systems; Intelligent Systems/Hybrid Control Systems
• 1994-Present: Very rapid growth in CS enrollments• 1996-1999: First CS Department Chair; Goal to make symmetric
the relationship between EE and CS
Departmental StructureDepartmental Structure
ElectricalEngineering
ComputerScience
EE/CS
What happens tofaculty who work
at the intersections?
Cory Hall
EE Devicesand Circuits
EE Signalsand Systems
ComputerScience
Soda Hall
Physical
Systems
Faculty FTE BreakdownFaculty FTE Breakdown• EE
– Signal Processing: 4.5– Communication: 3.0– Networks: 2.5– CAD: 3.5– ICs: 5.0– Solid State & MEM’s: 4.5– Process Tech. & Man.: 5.0– Optoelectronics: 5.0– EM & Plasma: 2.25– Controls: 3.0– Robotics: 2.0– Bioelectronics: (1.3)– Power: 1.5– TOT: 40.75 (+1.3 P-in-R)
• CS– Sci Comp: 2.5– Architecture: 5.0– Software: 5.5– Theory: 6.0– OS/Nets: 4.5– MM/UI/Graphics: 4.0– AI: 5.5– DB: 2.0– TOT: 35 + 2 SOE Lecturers
– DEPARTMENT: 77.75 FTE83.75 Authorized (2000)3 New + 2 Continue
AgendaAgenda
• The Information Age• EECS Department at Berkeley• Student Enrollment Pressures• Random Thoughts and Recommendations• Summary and Conclusions
UG Degree History at UG Degree History at BerkeleyBerkeley
050
100150200250300350400450500
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97
BA
BS
Year
#Degrees
243
142
286
158
Abouthalf are
CS degrees
Undergraduate Enrollment Undergraduate Enrollment TrendsTrends
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 EECSA 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 EECSOld View of EECS
EEphysicscircuitssignalscontrol
PhysicalWorld
CSalgorithms
programmingcomp systems
AI
SyntheticWorld
New View of EECSNew View of EECS
EEcomponents
CSalgorithms
EECScomplex/electronics
systems
ProcessingDevicesMEMSOptoelectronicsCircuits
CADSim & Viz
ProgrammingDatabasesCS Theory
Intelligent Sys & ControlCommunications Sys Intelligent Displays
Reconfigurable SystemsComputing Systems
MultimediaUser Interfaces
Robotics/VisionInfoPadIRAM
Signal ProcControl
AISoftware
EECS
Info Mgmt& Systems
CognitiveScience
ComputationalSci & EngBioSci/Eng
Biosensors &BioInfo
MaterialsScience/
ElectronicMaterials
PhysicalSciences/
Electronics
MechESensors &
Control
DesignSci
ObservationsObservations
• 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 RedesignCurriculum 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 EECS 20: Structure and Interpretation of Systems and Interpretation of Systems and
SignalsSignals• Course Format: Three hours of lecture and three hours of
laboratory per week. • Prerequisites: Basic Calculus. • Introduction to mathematical modeling techniques used in
the design of electronic systems. Applications to communication systems, audio, video, and image processing systems, communication networks, and robotics and control systems. Modeling techniques that are 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. A Matlab-based laboratory is part of the course.
Topics CoveredTopics Covered
• Sets• Signals
– Image, Video, DTMF, Modems, Telephony
• Predicates– Events, Networks, Modeling
• Frequency– Audio, Music
• Linear Time Invarient Systems
• Filtering– Sounds, Images
• Convolution
• Transforms• Sampling• State• Composition• Determinism• State Update• Examples
– Modems, Speech models, Audio special effects, Music
EE 40: Introduction to EE 40: Introduction to Microelectronics CircuitsMicroelectronics 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 CS 61A: The Structure and Interpretation of Computer Interpretation of Computer
ProgramsPrograms• Course Format: 3 hrs lecture, 3 hrs discussion, 2.5 hrs self-
paced programming laboratory per week.
• Prerequisites: Basic calculus & some programming.
• Introduction 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 StructuresCS 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 StructuresCS 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.
Five Undergraduate ProgramsFive Undergraduate Programs
• Program I: Electronics– Electronics– Integrated Circuits– Physical Electronics– Micromechanical Systems
• Program II: Communications, Networks, Systems– Computation– Bioelectronics– Circuits and Systems
• Program III: Computer Systems• Program IV: Computer Science• Program V: General
AgendaAgenda
• The Information Age• EECS Department at Berkeley• Student Enrollment Pressures• Random Thoughts and Recommendations• Summary and Conclusions
Department’s Strategic PlanDepartment’s Strategic Plan
• Human Centered Systems– User Interfaces: Image,
graphics, audio, video, speech, natural language
– Information Management & Intelligent Processing
– Embedded and Network-connected computing
» Hardware building blocks: DSP, PGA, Comms
» High performance, low power devices, sensors, actuators
» OS and CAD» Ambient/Personalized/
Pervasive Computing
• “Software” Engineering– Design, development,
evolution, and maintenance of high-quality complex software systems
» Specification & verification
» Real time software» Scalable algorithms» Evolution &
maintenance of legacy code
21st Century Challenge for 21st Century Challenge for Computer ScienceComputer 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 21st Century Challenges for Electrical EngineeringElectrical 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 21st Century Challenges for EE and CSEE 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?
Example: AffymetrixExample: Affymetrixwww.affymetrix.comwww.affymetrix.com
• Develops chips used in the acquisition, analysis, & management of genetic information for biomedical research, genomics, & clinical diagnostics
• GeneChip system: disposable DNA probe arrays containing specific gene sequences, instruments to process the arrays, & bioinformatics software
• IC company? Software company? Bioengineering company? Biotech company?
Should EE and CS Be Should EE and CS Be Separate Departments?Separate Departments?
• EEs need extensive computing: will spawn competing Computer Engineering activity anyway
• Much productive collaborative at intersection of EE and CS: CAD, Architecture, Signal Processing, Control/Intelligent Systems, Comms/Networking
• But all quantitative fields are becoming as computational as EE; e.g., transportation systems in CivilEng
• Will natural center of gravity of CS move towards cognitive science, linguistics, economics, biology?
AgendaAgenda
• The Information Age• EECS Department at Berkeley• Student Enrollment Pressures• Random Thoughts and Recommendations• Summary and Conclusions
Summary and ConclusionsSummary 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 contribute to the Biotech revolution of the next century