Link to the University of Waterloo home page
2020-2021

The Undergraduate Calendar

 

 

Faculty of Engineering

Bachelor of Applied Science and Bachelor of Software Engineering Specific Degree Requirements

Computer Engineering
The field of computer engineering shares foundations from science, mathematics, and computing. Students gain the breadth and depth of understanding necessary for lifelong learning in any area of computer engineering.

The Computer Engineering plan starts out pre-structured and shares a common 1A, 1B, and 2A terms with Electrical Engineering. As students progress through the curriculum and develop their interests, the plan provides students with choices that can further define their technical focus. The goal is to graduate students with solid core engineering competencies but highly customizable depth, breadth, and focus.

Academic Curriculum

The curriculum involves a prescribed course load in each term along with some academic milestones, which must be completed at or before specified times. Laboratory sessions are compulsory where they form part of a course. Approval from the Electrical and Computer Engineering (ECE) Undergraduate Office is required for all changes from the specified plan. Permission to carry more than the normal load in any term is at the discretion of the ECE Undergraduate Office and is dependent on both the student's previous term average and their cumulative average.

There are six co-operative work terms and the normal rules of the Co-operative Education System apply, as further described in the Faculty of Engineering Work Terms section of this Calendar. With permission and co-ordination through the ECE Undergraduate Office, it is possible to create eight-month co-operative work terms by rearranging the term sequence. At least five successful work terms are required to meet the degree requirements. 

The promotion criteria used to determine progression through the plan are described in the Engineering Examinations and Promotions section of this Calendar. These include term-average requirements, course-grade requirements, and milestone requirements.

Notes

  1. Milestones have deadlines for successful completion and are shown in the terms where they are normally completed. Work-term Reflections courses (ECE 101A, ECE 101B, ECE 101C, ECE 101D, and ECE 101E) are credit/no credit (CR/NCR) as per Rule 11 of the Examinations and Promotions Rules. Further information is provided in the Work-term Reflections section.
  2. There are a total of 13 electives: eight technical electives (TEs), including three in the 3B term which must be chosen from a list, three complementary studies electives (CSEs), and two natural science electives (NSEs). Constraints on the selection of TEs, CSEs, and NSEs are explained below. As per the Engineering Examinations and Promotions rules, these electives form part of a regular course load.
  3. Students may take any Professional Development (PD) course approved by the Faculty of Engineering. Students must complete PD 19 and PD 20, as well as three PD elective courses to satisfy degree requirements. Among the three PD elective courses, students can take PD 22 to satisfy the Ethics Requirement as explained below. 
  4. During the 3B term, students must select three technical courses from a list. These courses cannot be dropped for a reduced-load term.
  5. In their 4A/4B terms, students must enrol in the ECE 498A/ECE 498B sequence or the GENE 403/GENE 404 sequence. ECE 498A/GENE 404 and ECE 498B/GENE 403 combinations are not allowed.
  6. Students in the Biomechanics Option or the Mechatronics Option must choose a compatible topic for their design project sequence in ECE 498A, ECE 498B. See the option description or option co-ordinator for details. 
  7. Special topics courses (ECE 493) are offered as resources and faculty interests permit. Students should consult the ECE Undergraduate Office or ECE website for upcoming topics. Some offerings may have laboratory meets.

Legend for the Tables Below

The tables below outline the contents of the eight academic terms and six co-operative work terms. The ordering of the terms is as described in the Study/Work Sequence section. A student is assigned to one of the two Streams: 8 or 4F. The superscripts 8 and 4F are for information specific to Stream "8" and Stream "4F", respectively. For academic terms, the average scheduled hours per week are indicated in the columns Cls for class (LEC or SEM), Tut for tutorial (TUT), and Lab for laboratory (LAB or PRJ). Most laboratories are either open or scheduled every second or third week. Further details on electives and milestones are provided below.

 Term  Course or Milestone
 Title and Notes
Cls
Tut
Lab
Academic Term
1A Fall
ECE 105
Classical Mechanics
3 2 0
ECE 150
Fundamentals of Programming
3 1 2
ECE 190
Engineering Profession and Practice
3 0 0
ECE 198
Project Studio
0 0 1.25
ENGL 192 or SPCOM 192 Communication in the Engineering Profession
3
0
0
MATH 115
Linear Algebra for Engineering
3 2 0
MATH 117
Calculus 1 for Engineering
3 2 0
Workplace Hazardous Materials Milestone (see note 1)
Academic Term
1B Winter8, Spring4F
ECE 101A4F
Work-term Reflections (see note 1)
ECE 102
Information Session
1 0 0
ECE 106
Electricity and Magnetism
3 2 1.25
ECE 108
Discrete Mathematics and Logic 1
3 1 0
ECE 124
Digital Circuits and Systems
3 1 1.25
ECE 140
Linear Circuits
3 2 1.25
ECE 192
Engineering Economics and Impact on Society
2 1 0
MATH 119
Calculus 2 for Engineering
3 2 0
Work Term
Winter4F, Spring8
COOP 1
Co-operative Work Term
PD 19
Tactics for Workplace Success
Academic Term
2A Fall8, Winter4F
ECE 101B4F
Work-term Reflections (see note 1)
ECE 101A8 Work-term Reflections (see note 1)
ECE 109 Materials Chemistry for Engineers
2 1 0
ECE 201 Information Session 1 0 0
ECE 204
Numerical Methods 3 1 1.25
ECE 205
Advanced Calculus 1 for Electrical and Computer Engineers 3
1
0
ECE 222
Digital Computers
3 1 1.25
ECE 240
Electronic Circuits 1 3 1
1.25
ECE 250
Algorithms and Data Structures 3 1 1.25
Work Term
Fall4F, Winter8
COOP 2 Co-operative Work Term
PD 20 Engineering Workplace Skills 1: Developing Reasoned Conclusions
Academic Term
2B Spring8, Fall4F
ECE 101C4F Work-term Reflections (see note 1)
ECE 101B8 Work-term Reflections (see note 1)
ECE 202
Information Session
1
0
0
ECE 203
Probability Theory and Statistics 1 3
1
0
ECE 207
Signals and Systems 3
1
0
ECE 208
Discrete Mathematics and Logic 2
3
1
0
ECE 224
Embedded Microprocessor Systems 3
1
1.25
ECE 252
Systems Programming and Concurrency
3
1
1.25
ECE 298
Instrumentation and Prototyping Laboratory 0
0
1.50
Work Term
Spring4F, Fall8
COOP 3
Co-operative Work Term
One Professional Development Elective (see note 3)
Academic Term
3A Winter8, Spring4F
ECE 101D4F
Work-term Reflections (see note 1)
ECE 101C8 Work-term Reflections (see note 1)
ECE 301
Information Session
1 0
0
ECE 318
Communication Systems 1 3 1
1.25
ECE 327
Digital Hardware Systems
3
1
1.25
ECE 350
Real-Time Operating Systems
3
1
1.25
ECE 380
Analog Control Systems
3
1
1.25
One CSE, NSE, or TE (see note 2)
Work Term
Winter4F, Spring8
COOP 4
Co-operative Work Term
One Professional Development Elective (see note 3)
Academic Term
3B Fall
ECE 101D8
Work-term Reflections (see note 1)
ECE 302
Information Session
1 0 0
ECE 307
Probability Theory and Statistics 2
3
1
0
One CSE, NSE, or TE (see note 2)
Choose two of the following four courses (see note 4)
ECE 320 Computer Architecture
3
1
1.25
ECE 351
Compilers 3
1
1.25
ECE 356
Database Systems
3
1
1.25
ECE 358
Computer Networks 3
1 1.25
Choose one additional course from ECE 313, ECE 320, ECE 331, ECE 351, ECE 356, ECE 358, ECE 360, ECE 373 that has not already been selected above provided prerequisites are met and subject to scheduling constraints.
Work Term
Winter
COOP 5
Co-operative Work Term
One Professional Development Elective (see note 3)
Academic Term 4A Spring
ECE 101E
Work-term Reflections (see note 1)
ECE 401
Information Session
1
0
0
ECE 498A/GENE 403
Engineering Design Project/Interdisciplinary Design Project 1 (see notes 5 and 6) 1
0
10
Four elective courses, CSE, NSE, or TE, as necessary (see note 2)
Work Term
Fall
COOP 6
Co-operative Work Term
One Professional Development Elective (see note 3)
Academic Term 4B Winter
ECE 402
Information Session
1
0
0
ECE 498B/GENE 404
Engineering Design Project/Interdisciplinary Design Project 2 (see notes 5 and 6)
1
0
10
Four elective courses, CSE, NSE, or TE, as necessary (see note 2)

Work-term Reflections

For each of the Work-term Reflections (ECE 101) courses, students write a short two-page report (from an online template available on the ECE website) reflecting on their work experience during the previous co-op term. Students submit it for grading in the academic term that follows the work term. If a student did not secure a co-op position, they are to reflect on what skills they used to improve their chances of a co-op position in future work terms. These courses are graded as CR/NCR.

Elective Courses

Complementary Studies Electives

Students must complete three complementary studies elective (CSE) courses to satisfy the Complementary Studies Requirements for Engineering students. These are in addition to those courses that are part of the core curriculum and contain complementary studies material, such as ECE 190, ECE 192, and the Professional Development (PD) sequence. The three CSE courses are to be chosen according to the following constraints.

  • Two from List C (Humanities and Social Sciences Courses)
  • One from any of List A (Impact Courses), List C (Humanities and Social Sciences Courses), or List D (Other Permissible Complementary Studies Courses)

Students may take up to one technique course (i.e., learning a skill or language) as part of List D. Technique courses need ECE Undergraduate Office approval to be considered as complementary studies electives.

Students may take GENE 412/PHIL 315 as a List C CSE in which case the course will also satisfy the Ethics Requirement.

Ethics Requirement

In addition to the core technical courses, students must understand and be able to apply the Engineering ethics. To meet this Ethics Requirement, students must pass one of PD 22 or GENE 412/PHIL 315.

Natural Science Electives

Students are required to complete two natural science elective (NSE) courses, and are responsible for ensuring they meet the minimum academic units (AUs). The two NSE courses must be primarily concerned with natural science and are in addition to the science components of the core curriculum, such as ECE 105, ECE 106, and ECE 109.

Course
Title
BIOL 110
Introductory Zoology
BIOL 130 and BIOL 130L
Introductory Cell Biology/Cell Biology Laboratory
BIOL 150
Organismal and Evolutionary Ecology
BIOL 165
Diversity of Life
BIOL 211
Introductory Vertebrate Zoology
BIOL 240 and BIOL 240L
Fundamentals of Microbiology/Microbiology Laboratory
BIOL 241
Introduction to Applied Microbiology
BIOL 273 Principles of Human Physiology 1
BIOL 373 and BIOL 373L Principles of Human Physiology 2/Human Physiology Laboratory
CHE 161
Engineering Biology
CHEM 123 and CHEM 123L
General Chemistry 2/General Chemistry Laboratory 2
CHEM 209
Introductory Spectroscopy and Structure
CHEM 237 and CHEM 237L
Introductory Biochemistry/Introductory Biochemistry Laboratory
CHEM 254
Introductory Chemical Thermodynamics 
CHEM 262 and CHEM 262L
Organic Chemistry for Engineering/Organic Chemistry Laboratory for Engineering Students
CHEM 266
Basic Organic Chemistry 1
CHEM 356
Introductory Quantum Mechanics
CHEM 404
Physiochemical Aspects of Natural Waters
EARTH 121
Introductory Earth Sciences
EARTH 122
Introductory Environmental Sciences
EARTH 123
Introductory Hydrology
EARTH 221
Geochemistry 1
EARTH 270
Disasters and Natural Hazards
EARTH 281
Geological Impacts on Human Health
ECE 231 Semiconductor Physics and Devices
ECE 403
Thermal Physics
ECE 404
Geometrical and Physical Optics
ECE 405
Introduction to Quantum Mechanics
ENVE 275
Environmental Chemistry
ENVS 200
Field Ecology
NE 222
Organic Chemistry for Nanotechnology Engineers
PHYS 234
Quantum Physics 1
PHYS 263
Classical Mechanics and Special Relativity
PHYS 275
Planets
PHYS 280
Introduction to Biophysics
PHYS 334
Quantum Physics 2
PHYS 335
Condensed Matter Physics
PHYS 375
Stars
PHYS 380
Molecular and Cellular Biophysics
SCI 238
Introductory Astronomy

Technical Electives

Students are required to complete a total of eight technical electives (TEs), subject to the following conditions:

  1. All of the technical courses from the 3B term (i.e., ECE 313, ECE 320, ECE 331, ECE 351, ECE 356, ECE 358, ECE 360, and ECE 373) count as TEs. At least three of these courses must be taken in the 3B term, as specified in the curriculum table above.
  2. At least three TEs must be courses chosen from ECE 406 through ECE 495 or ECE 499, normally taken during the 4A and 4B terms. A list of current 4A and 4B TEs is provided below.
  3. At least one TE, to a maximum of two, must be from another engineering (other than Electrical or Computer Engineering) plan; such courses must have sufficiently advanced engineering science or engineering design content to be allowed, and must be approved by the ECE Undergraduate Office. Some courses of interest may require prerequisite knowledge that is not part of the core curriculum in Computer Engineering. Students may require extra courses or may need to seek enrolment approval from the course instructor if the prerequisite knowledge was acquired by other means.
  4. The following courses are offered in the core curriculum in Electrical Engineering but are considered TE courses for Computer Engineering: ECE 260, ECE 340, and ECE 375. Some of these courses have prerequisites that must be met in order to enrol. 
  5. In all terms, elective availability is subject to scheduling constraints.

The following TE courses are normally offered for the spring (4A) term. The list is subject to change from year to year.


Course
 Title  Cls  Tut Lab
ECE 414
Communication Systems 2
3
1
0
ECE 417
Image Processing
3
1
1.25
ECE 433
Fabrication Technologies for Micro and Nano Devices
3
1
1.25
ECE 444
Integrated Analog Electronics
3
1
1.25
ECE 445
Integrated Digital Electronics
3
1
1.25
ECE 452
Software Design and Architectures
3
1
1.25
ECE 454
Distributed Computing
3
1
1.25
ECE 455
Embedded Software
3
1
1.25
ECE 457A
Cooperative and Adaptive Algorithms
3
1
0
ECE 458
Computer Security
3
1
1.25
ECE 462
Electrical Distribution Systems
3
1
1.25
ECE 463
Design & Applications of Power Electronic Converters 3
1 1.25
ECE 475
Radio-Wave Systems
3
1
1.25
ECE 481
Digital Control Systems
3
1
1.25
ECE 486
Robot Dynamics and Control
3
1
1.25
ECE 493
Special Topics in Electrical and Computer Engineering (see note 7)
3
1
0

The following TE courses are normally offered for the winter (4B) term. The list is subject to change from year to year.

 Course  Title Cls
Tut
 Lab
ECE 406
Algorithm Design and Analysis
3
1
1.25
ECE 409
Cryptography and System Security
3
1 0
ECE 416
Advanced Topics in Networking
3
1
1.25
ECE 423
Embedded Computer Systems
3
1
1.25
ECE 432
Radio Frequency Integrated Devices and Circuits
3
1
1.25
ECE 451
Software Requirements Specification and Analysis 3
1
1.25
ECE 453 Software Testing, Quality Assurance and Maintenance
3
1
0
ECE 457B
Fundamentals of Computational Intelligence
3
1
0
ECE 459
Programming for Performance
3
1
1.25
ECE 464
High Voltage Engineering and Power System Protection
3
1
1.25
ECE 467
Power Systems Analysis, Operations and Markets
3
1 1.25
ECE 474
Radio and Wireless Systems
3
1
1.25
ECE 477
Photonic Devices and Systems
3 1 1.25
ECE 488
Multivariable Control Systems
3
1
0
ECE 493
Special Topics in Electrical and Computer Engineering (see note 7)
3 1
0
ECE 495
Autonomous Vehicle
3
1
1.25

The following project elective is offered every term. Students may take it, at most, once as a TE course.

 Course  Title  Cls  Tut Lab
ECE 499 Engineering Project
0
0
10

Workplace Hazardous Materials Information System (WHMIS)

Under both the federal and provincial legislation, all students must take WHMIS training. Details are described in the WHMIS Requirements section of this Calendar. Students must meet this milestone in order to remain enrolled in 1A or to enrol in any academic term beyond 1A.

Available Options

The curriculum in Computer Engineering is designed to offer a well-balanced and rewarding education. Students wishing to further enrich their studies may take any option, minor, or joint degree for which they meet the eligibility requirements (see the section on Engineering Interdisciplinary Alternatives). Options typically require extra courses and/or constrain the choice of elective courses. When taking courses from a different plan, the student may need to do extra work to compensate for a different background preparation. Time beyond the normal plan duration may be necessary due to the extra requirements and constraints on space or scheduling.

Communications and Signal Processing Specialization

We take for granted remote connection to complex services, which may involve high-quality video streaming, human-machine voice interaction, biometric monitoring, image or video understanding, and rapidly evolving forms of assistance using artificial intelligence. Indeed, many are possible from a cell phone barrelling down a highway or embedded on a massive scale in sensor networks. They hold promise of meaningful impact on global problems such as aging and health care, education, social cohesion, resource and environmental management, crime prevention, and countless applications yet to be imagined. Beyond applying known algorithms, engineers need to understand fundamental principles from communications and signal processing which are at the heart of sophisticated and powerful trade-offs in design. This specialization allows students to choose that depth of learning within various combinations of its two core topics.

Requirements

Students interested in pursuing this specialization must achieve an average of at least 60% in the specialization courses, and a grade of at least 50% in each of the courses. Students who satisfy the requirements for Faculty Options, Specializations and Electives for Engineering Students will have the appropriate designation shown on their diploma and transcript.

Required Courses

ECE 313 Digital Signal Processing (formerly ECE 413, first offered as ECE 313 fall 2021)
ECE 318 Communication Systems 1

Any three courses from the following list

ECE 358 Computer Networks
ECE 414 Communication Systems 2
ECE 416 Advanced Topics in Networking
ECE 417 Image Processing
ECE 474 Radio and Wireless Systems

 


Office of the Registrar
University of Waterloo
Ira G. Needles Hall
200 University Avenue West
Waterloo, Ontario, Canada N2L 3G1
519-888-4567