Orientation to Computer Engineering Dr. Bruce F. Cockburn Director of Computer Engineering ECERF Building, room W2-044 E-mail: cockburn@ece.ualberta.ca Tel: 492-3827
What is Computer Engineering? The application of programmable digital computers to enhance and control complex systems and products. Requires mastery of both: computer hardware (overlapping with Electrical Eng.) computer software (overlapping with Computer Sci.) Computer engineers work with other professionals to adapt computer technology to provide, for example: flexible and efficient programmable control sophisticated user interfaces (e.g. graphical) networked communications (e.g. to the Internet) system modeling and data analysis
What do Computer Engineers do? Few Computer Engineers make a living designing computers from basic components. Even fewer Computer Engineers are involved in designing the silicon chips that form the building blocks of computers. The majority of Computer Engineers configure and/or program existing computer subsystems in order to produce more effective and efficient products and larger integrated systems. Computer Engineers are expected to provide computer expertise (both software and hardware) to customers, to other engineers, and to organizations.
Key Technology: The Microprocessor The microprocessor (a computer on a silicon chip) is the device that underlies the computer revolution. Pentium is a registered trademark of Intel Corporation.
The Personal Computer Revolution VAIO is a registered trademark of Sony Corporation.
Cell Phones, PDAs, MP3 Players...
The World-Wide Internet
Hidden or Embedded Computers Everybody is well aware of the large number of personal computers, cell phones, game consoles, etc. However, the vast majority of computers are hidden from view, doing their work quietly and efficiently: A new model car contains dozens of computers to run the engine, brakes, entertainment system, navigation system, dashboard features, etc. Computers run the telephone network, the banks, the stock market, as well as the Internet. Computers keep people alive by running medical equipment, running diagnosis programs, and controlling implanted medical devices. etc.
Embedded Computers in Cars Dashboard of the 2004 Lexus LS Lexus is a registered trademark of Toyota Motor Corporation.
Computerized Control in Cars Ignition timing Fuel injection to ensure optimal fuel-air mixture Air bag deployment control Black box recording of speed and other factors Anti-lock brakes and anti-skid traction Dashboard controls Entertainment system Navigation system Communication systems Status indicators and diagnostic system Etc.
Computer Engineering vs. Computer Science Computer Engineering concerned with both software and hardware issues more structured curriculum in the engineering tradition e.g. specification, verification, testing, product engineering, project management, prof. ethics an accredited program that greatly facilitates acquiring the designation Professional Engineer Computer Science (or Computing Science) investigates the efficient use of computer systems mainly concerned with software (programming) issues course sequence is more flexible (no accreditation rules)
Computer Engineering vs. Electrical Engineering Electrical Engineering applications of electricity and magnetism e.g. circuit design, power systems, controls core problems tend to be analogue in nature analysis based on continuous mathematics (but communications is increasingly digital, like CE) Computer Engineering applications of computer and related technologies emerged from EE and is now a separate discipline core problems tend to be digital and algorithmic analysis based on discrete mathematics and logic software development is a major focus
What is Software Engineering? Software systems can fail unpredictably on a spectacular scale as a result of apparently minor defects/bugs. Software is makes it very easy to build complex systems that overwhelm the understanding of the designers. Software systems are increasingly responsible for controlling infrastructure and mechanisms that could cause great loss of life & property in the event of failure. Software Engineering is an emerging field that is developing appropriate methodologies for the design and construction of successful software systems. Software Engineering is offered in the Software Option.
What skills does a Computer Engineer require? solid background in math and science excellent communication skills, both oral and written ability to work in teams and to get along with others logical and systematic approach to problem solving patience, persistence, and attention to detail willingness to put in long hours when necessary a commitment to lifelong learning and retraining
Computer Engineering Careers The computer industry has its ups and downs, but the medium and long-term trends are strongly upwards. The Computer Revolution is far from over... silicon technology continues to improve dramatically computers double in speed every 18 months nanotechnology is expected to propel computer capabilities by many orders of magnitude most of the world has yet to fully apply computers exciting new applications of computers will keep appearing; entirely new careers will emerge Computer Engineering requires individuals who will enjoy an exciting (and sometimes unpredictable) ride with an important and rapidly evolving technology.
Computer Engineering Jobs in Alberta Matrikon (Edmonton) software for industrial control General Electric (Edmonton) software for industrial control Wind River Systems (Calgary) real-time software YottaYotta (Edmonton) large-scale database systems EnCana (Edmonton, Calgary) controls for gas production TransCanada Pipelines controls for gas distribution Telus (Edmonton) telecommunications Nortel Wireless (Calgary) switches for wireless networks Government of Alberta (Edmonton) service sector University of Alberta education and research Numerous smaller companies supporting resource sector Etc.
Computer Engineering at the U. of A. Faculty of Engineering Faculty of Science Dept. of Electrical and Computer Engineering Department of Computing Science Division of Computer Engineering Consultation via a Steering Committee
Undergraduate Degrees B.Sc. in Computer Engineering offers a roughly equal balance between computer hardware and computer software topics. available in both traditional (4-year) and co-operative education (5-year) versions. B.Sc. in Computer Engineering (Software Option) provides more emphasis on computer software development, and has less emphasis on electrical engineering material. an excellent educational background for a career in the emerging field of Software Engineering. available in both traditional (4-year) and co-operative education (5-year) versions.
Cooperative Education Both the traditional and software options of Computer Engineering are available in the co-op program: Computer Engineering: Traditional Option WKEXP 901 in winter term of Year 2 WKEXP 902 & 903 in winter & summer of Year 3 WKEXP 904 & 905 in summer & fall of Year 4/5 Computer Engineering: Software Option WKEXP 901 in summer term of Year 2 WKEXP 902 & 903 in winter & summer of Year 3 WKEXP 904 & 905 in winter & summer of Year 4
Year 2 - Traditional Option Term 3: Intro. to Java Programming Technical Communication Electric Circuits I Intro. to Digital Logic Design Differential Equations Calculus III Term 4: Data Structures Using Java Formal Systems and Logic Numerical Analysis Continuous Time Signals Electrical Circuits II Nontechnical Elective Note: Identical to the Term 3 in the Software Option. Note: Four courses identical to the Software Option.
Year 3 - Traditional Option Term 5: Intro. to Software Engineering Advanced C/C++ Programming Analysis of Algorithms Discrete Time Signals Electronic Devices Intro. to Microprocessors Term 6: Computer Architecture Operating Systems Digital Electronics Probability and Statistics Electricity and Magnetism Impact on Society Elective Note: A mix of both hardware and software courses. Note: Digital Electronics EE351 differs from the third year EE electronics courses.
Year 4 - Traditional Option Term 7: Computer Interfacing Advanced Digital Logic Design Computer Communications Complementary Studies Elective Technical Electives Term 8: Microprocessor Project Course Engineering Economy Engineering Management Engineering Profession Complementary Studies Elective Technical Electives Job interviews...
Year 2 - Software Option Term 3: Intro. to Java Programming Technical Communication Electric Circuits I Intro. to Digital Logic Design Differential Equations Calculus III Term 4: Software Engineering Tools Data Structures Using Java Formal Systems and Logic Numerical Analysis Electricity and Magnetism Nontechnical Elective Note: Identical to the Term 3 in the Traditional Option. Note: Four courses identical to the Software Option.
Year 3 - Software Option Term 5: Intro. to Software Engineering Software Engineering Project I Advanced C/C++ Programming Analysis of Algorithms File and Database Systems Intro. to Microprocessors Term 6: Software Test & Maintenance User Interfaces and Design Operating Systems Statistics for Engineers Technical Elective Impact on Society Elective Note: Four courses in common with the Traditional Option.
Year 4 - Software Option Term 7: Computer Architecture Computer Interfacing Software Engineering Project II Reliable and Secure Systems Computer Communications Complementary Studies Elective Term 8: Software Systems Project Course Engineering Economy Engineering Management Engineering Profession Complementary Studies Elective Technical Electives Job interviews...
Which option is right for me? If you want to keep a roughly equal balance between hardware and software... => choose the Traditional Option If you want to pursue software engineering topics in greater depth... => choose the Software Option Both options will allow you to move back and forth between software and hardware depending on the unpredictable directions of your career.
ECE Open House... Today! 5:00 to 8:00 Displays in the Solarium (West) 5:00 to 6:00 First-year Student Panel Presentation in Solarium (East) 6:00 to 8:00 Lab tours starting in Solarium (West) to ETLC & ERERF 6:00 to 8:00 Research seminars in the COLT Design Lab ETLE2-009.
Computer Engineering Night Monday, March 21 in the Solarium, starting at 5:30 and running until about 8:30 Meet with upper year students Hear from five past graduates about their career experiences in Computer Engineering Pizza and pop provided Tickets sold at the door
About the initial picture... 1 mm Silicon chip designed at U of A Contains 1.5 million transistors Chip area is about 10 sq. mm Designed by four people in 2 months Testing is just about to begin on first prototypes
For more information... Consult the University calendar Check the website at: www.ece.ualberta.ca Contact the Director of Computer Engineering Dr. Bruce F. Cockburn ECERF Building, room W2-044 E-mail: cockburn@ece.ualberta.ca Tel: 492-3827 Contact the Undergraduate Advisor Ms. Leena Vanhala ECERF Building, room W2-060 E-mail: leena@ece.ualberta.ca Tel: 492-0153