The fields of computer engineering and electrical engineering have co-evolved over the past several decades into an exciting interwoven tapestry of 10 thematic subdisciplines, all sharing common foundations from science, mathematics, and computing. Students in either plan of study share foundations and a portion of each theme to gain the breadth and depth of understanding necessary for lifelong learning in any area of computer or electrical engineering.
The Computer Engineering and the Electrical Engineering plans start out pre-structured to span the 10 themes in slightly different ways while still allowing flexibility for students to choose the full depth of study in any subdiscipline or to switch between the two plans. Within the specified framework of study, students make, according to their developing interests, choices to define their technical focus, choices regarding how they enhance their science background, and choices to expand their non-technical knowledge or skills. The goal is to graduate students with solid core engineering competencies but highly customizable depth, breadth, and focus. They are employed in an extremely varied set of occupations, essentially any place where there is design activity involving electricity, electronics, computers, or software.
The Department of Electrical and Computer Engineering (ECE), which administers the Computer Engineering and the Electrical Engineering plans, is itself a richly diverse unit and is a partner in offering four other interdisciplinary undergraduate plans, namely Biomedical Engineering, Mechatronics Engineering, Nanotechnology Engineering, and Software Engineering.
The following thematic subdisciplines are covered in varying degrees by the two plans.
- Communications, modulation and coding, multimedia, and wireless systems.
- Networks and mobile/distributed computing.
- Energy distribution, motors/generators, power electronics, and energy marketing.
- Control, automation, robotics, and mechatronics.
- Computer architecture, embedded computers, and formal specification and design.
- Microelectronic devices, analog, digital and mixed-signal circuits, integrated circuits, and micro-/nano-fabrication methods.
- Microwave (radio frequency) and photonic devices and systems.
- Signal processing, computational intelligence, and soft computing.
- Software systems, components, security, and embedded software.
- Software engineering, requirements specification, software architectures, and verification.
Common elements of mathematics, science, and computing permeate these areas and tie them together with a concentration on engineering science (analysis) and engineering design (synthesis). Computer Engineering puts relatively more emphasis on digital hardware, embedded systems, software systems, and networks. Electrical Engineering puts relatively more emphasis on microwave/photonic systems, devices/fabrication, microelectronic circuits, and power. Because of commonalities between core offerings in either plan, it is relatively easy to transfer from one to the other, especially during the first three terms of study.
The curricula have elective choices in a wide array of non-technical fields, in technical areas both inside and outside of ECE, and in science. Engineered systems based on electronics or embedded computers are especially pervasive across most areas of society and it is increasingly important for students to be able to integrate their technical abilities with complementary skills. Teamwork and interdisciplinary collaboration are important aspects of the plans. The curricula places a significant emphasis on communication skills, design, and engineering professionalism. Broad-minded and deeply-trained students of computer or electrical engineering will make important contributions over the next several decades as the world addresses potential issues such as environmental quality, energy supply, better health care, etc.
The ECE Department houses committees and staff supporting curriculum development, plan operation, and student advisement. Help and information are available by contacting the ECE Undergraduate Office or browsing the ECE website.
The curricula involve 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 ECE Undergraduate Office is required for all changes from the specified plans. 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 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, in either Computer Engineering or Electrical Engineering, are described in the Engineering Examinations and Promotions section of this Calendar. These include term-average requirements, course-grade requirements, and milestone requirements.
Notes
- 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.
- There are a total of 13 electives: eight technical electives (TEs), including three in the 3B term which must be chosen from a plan-specific 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.
- Students may take any Professional Development (PD) course approved by the Faculty of Engineering. Students must complete PD 20 and PD 21, 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.
- During the 3B term, students must select three technical courses from a plan-specific list. These courses cannot be dropped for a reduced-load term.
- 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.
- 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.
- 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 Engineering section. 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.
Academic Plans
Term |
CE or EE |
Course/Milestone |
Title and Notes |
Cls
|
Tut
|
Lab |
Academic Term 1A Fall
|
both
|
ECE 105 |
Classical Mechanics
|
3 |
2 |
1.25 |
both
|
ECE 150 |
Fundamentals of Programming |
3 |
1 |
2 |
both
|
ECE 190
|
Engineering Profession and Practice
|
2 |
0 |
0 |
both |
ENGL 192 or SPCOM 192
|
Communication in the Engineering Profession
|
3
|
0
|
0 |
both |
MATH 115
|
Linear Algebra for Engineering
|
3
|
2
|
0
|
both
|
MATH 117 |
Calculus 1 for Engineering |
3 |
2 |
0 |
both
|
Workplace Hazardous Materials Milestone (see note 1)
|
Academic Term 1B Winter8, Spring4F
|
both
|
ECE 101A4F
|
Work-term Reflections (see note 1)
|
both |
ECE 102 |
Information Session |
1
|
0
|
0
|
both |
ECE 106 |
Electricity and Magnetism
|
3 |
2 |
1.25 |
both
|
ECE 108
|
Discrete Mathematics and Logic 1
|
3
|
1
|
1.25
|
both
|
ECE 124 |
Digital Circuits and Systems |
3 |
1 |
1.25 |
both
|
ECE 140
|
Linear Circuits
|
3 |
2 |
1.25 |
both
|
ECE 192
|
Engineering Economics and Impact on Society
|
2
|
1
|
0
|
both
|
MATH 119 |
Calculus 2 for Engineering |
3 |
2 |
0 |
Work Term Winter4F, Spring8
|
both
|
COOP 1 |
Co-operative Work Term |
both
|
PD 20 |
Engineering Workplace Skills I: Developing Reasoned Conclusions |
Academic Term 2A Fall8, Winter4F
|
both
|
ECE 101B4F
|
Work-term Reflections (see note 1)
|
both |
ECE 101A8 |
Work-term Reflections (see note 1) |
both |
ECE 109
|
Materials Chemistry for Engineers |
2
|
1 |
0
|
both |
ECE 201 |
Information Session
|
1
|
0
|
0
|
both |
ECE 204 |
Numerical Methods |
3
|
1
|
0
|
both |
ECE 205 |
Advanced Calculus 1 for Electrical and Computer Engineers |
3 |
1 |
0 |
both
|
ECE 222 |
Digital Computers |
3 |
1 |
1.25 |
both |
ECE 240 |
Electronic Circuits 1 |
3 |
1 |
1.25 |
both
|
ECE 250 |
Algorithms and Data Structures |
3 |
1 |
1.25 |
Work Term Fall4F, Winter8
|
both
|
COOP 2 |
Co-operative Work Term |
both
|
PD 21 |
Engineering Workplace Skills II: Developing Effective Plans |
Academic Term 2B Spring8, Fall4F
|
both
|
ECE 101C4F |
Work-term Reflections (see note 1)
|
both
|
ECE 101B8
|
Work-term Reflections (see note 1) |
both |
ECE 202 |
Information Session |
1
|
0
|
0 |
both
|
ECE 203
|
Probability Theory and Statistics 1 |
3
|
1
|
0
|
both
|
ECE 207 |
Signals and Systems |
3
|
1 |
0 |
CE |
ECE 208
|
Discrete Mathematics and Logic 2 |
3
|
1
|
0
|
CE |
ECE 224 |
Embedded Microprocessor Systems |
3
|
1
|
1.25
|
CE |
ECE 252 |
Systems Programming and Concurrency |
3
|
1
|
1.25
|
EE |
ECE 206 |
Advanced Calculus 2 for Electrical Engineering |
3 |
1 |
0 |
EE |
ECE 209 |
Electronic and Electrical Properties of Materials |
3
|
1
|
1.25
|
EE
|
ECE 260
|
Electromechanical Energy Conversion
|
3
|
1
|
1.25
|
both |
ECE 298 |
Instrumentation and Prototyping Laboratory |
0 |
0 |
1.5 |
Work Term Spring4F, Fall8
|
both |
COOP 3 |
Co-operative Work Term |
both |
One Professional Development Elective (see note 3) |
Academic Term 3A Winter8, Spring4F
|
both
|
ECE 101D4F |
Work-term Reflections (see note 1)
|
both
|
ECE 101C8
|
Work-term Reflections (see note 1) |
both |
ECE 301 |
Information Session |
1
|
0
|
0
|
both |
ECE 318 |
Communication Systems 1
|
3 |
1 |
1.25 |
CE
|
ECE 327 |
Digital Hardware Systems
|
3
|
1
|
1.25
|
CE |
ECE 350
|
Real-Time Operating Systems
|
3
|
1
|
1.25
|
EE
|
ECE 340
|
Electronic Circuits 2
|
3
|
1
|
1.25
|
EE
|
ECE 375
|
Electromagnetic Fields and Waves
|
3
|
1
|
1.25
|
both
|
ECE 380 |
Analog Control Systems |
3 |
1 |
1.25 |
both |
One CSE, NSE, or TE (see note 2) |
Work Term Winter4F, Spring8
|
both
|
COOP 4 |
Co-operative Work Term |
both |
One Professional Development Elective (see note 3) |
Academic Term 3B Fall
|
both |
ECE 101D8
|
Work-term Reflections (see note 1)
|
both
|
ECE 302 |
Information Session |
1
|
0
|
0
|
both
|
ECE 307
|
Probability Theory and Statistics 2
|
3
|
1 |
0 |
both |
One CSE, NSE, or TE (see note 2)
|
CE
|
Choose two of the following four courses (see note 4): |
CE
|
ECE 320 |
Computer Architecture
|
3
|
1
|
1.25
|
CE
|
ECE 351 |
Compilers
|
3
|
1
|
1.25
|
CE |
ECE 356 |
Database Systems |
3
|
1
|
1.25
|
CE |
ECE 358
|
Computer Networks |
3
|
1
|
1.25
|
EE
|
Choose two of the following four courses (see note 4) |
EE
|
ECE 313 |
Digital Signal Processing
|
3
|
1
|
0
|
EE
|
ECE 331
|
Electronic Devices
|
3
|
1
|
1.25
|
EE
|
ECE 360 |
Power Systems and Smart Grids |
3
|
1
|
1.25
|
EE |
ECE 373
|
Radio Frequency and Microwave Circuits
|
3 |
1 |
1.25 |
both
|
Choose one of the remaining six courses from ECE 313, ECE 320, ECE 331, ECE 351, ECE 356, ECE 358, ECE 360, ECE 373 provided prerequisites are met and subject to scheduling constraints |
Work Term Winter
|
both
|
COOP 5 |
Co-operative Work Term |
both
|
One Professional Development Elective (see note 3) |
Academic Term 4A Spring
|
both |
ECE 101E |
Work-term Reflections (see note 1)
|
both
|
ECE 401 |
Information Session
|
1
|
0
|
0
|
both
|
ECE 498A/GENE 403 |
Engineering Design Project (see note 5 and note 6) |
1 |
0 |
10 |
both
|
Four elective courses, CSE, NSE, or TE, as necessary (see note 2) |
Work Term Fall
|
both
|
COOP 6 |
Co-operative Work Term |
both |
One Professional Development Elective (see note 3) |
Academic Term 4B Winter
|
both |
ECE 402 |
Information Session
|
1 |
0 |
0 |
both |
ECE 498B/GENE 404 |
Engineering Design Project (see note 5 and note 6) |
1 |
0 |
10 |
both |
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, ENGL 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 Code of 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) using the AU calculator provided. The two NSE courses must be primarily concerned with natural science and are in addition to the science components of the core curricula, 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 2 Laboratory
|
CHE 161
|
Engineering Biology
|
CHEM 123 and CHEM 123L |
Chemical Reactions, Equilibria and Kinetics/Chemical Reaction Laboratory 2
|
CHEM 209
|
Introductory Spectroscopy and Structure
|
CHEM 217
|
Chemical Bonding
|
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 209
|
Electronic and Electrical Properties of Materials
Note that ECE 209 cannot count as an NSE for Electrical Engineering students
|
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:
- 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 academic plans above.
- At least three TEs must be courses chosen from ECE 406-ECE 493 or ECE 499, normally taken during the 4A and 4B terms. A list of current 4A and 4B TEs is provided below.
- At least one TE to a maximum of two, must be from another engineering (other than Computer or Electrical 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 or Electrical 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.
- 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.
- The following courses are offered in the core curriculum in Computer Engineering but are considered TE courses for Electrical Engineering: ECE 224, ECE 252, ECE 327, and ECE 350. Some of these courses have prerequisites that must be met in order to enrol.
- 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.5
|
ECE 418 |
Communications Networks |
3 |
1 |
0 |
ECE 432 |
Radio Frequency Integrated Devices and Circuits |
3 |
1 |
1.5 |
ECE 445 |
Integrated Digital Electronics |
3 |
1 |
1.5 |
ECE 452
|
Software Design and Architectures
|
3
|
1
|
1.5 |
ECE 454 |
Distributed Computing |
3 |
1 |
1.5 |
ECE 455 |
Embedded Software |
3 |
1 |
1.5 |
ECE 457A |
Cooperative and Adaptive Algorithms |
3 |
1 |
0 |
ECE 458 |
Computer Security |
3 |
1 |
1.5 |
ECE 462 |
Electrical Distribution Systems |
3 |
1 |
1.5 |
ECE 463 |
Design & Applications of Power Electronic Converters |
3 |
1 |
1.5 |
ECE 475 |
Radio-Wave Systems |
3 |
1 |
1.5 |
ECE 481 |
Digital Control Systems |
3 |
1 |
1.5 |
ECE 486 |
Robot Dynamics and Control |
3 |
1 |
1.5 |
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.5 |
ECE 409 |
Cryptography and System Security |
3 |
1 |
0 |
ECE 415 |
Multimedia Communications
|
3 |
1 |
1.5 |
ECE 416 |
Advanced Topics in Networking |
3 |
1 |
1.5 |
ECE 423 |
Embedded Computer Systems |
3 |
1 |
1.5 |
ECE 433 |
Fabrication Technologies for Micro and Nano Devices |
3 |
1 |
1.5 |
ECE 444 |
Integrated Analog Electronics |
3 |
1 |
1.5 |
ECE 451 |
Software Requirements Specification and Analysis |
3
|
1
|
1.5
|
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.5 |
ECE 464 |
High Voltage Engineering and Power System Protection |
3 |
1 |
1.5 |
ECE 467 |
Power Systems Analysis, Operations and Markets |
3 |
1 |
1.5 |
ECE 474 |
Radio and Wireless Systems |
3 |
1 |
1.5 |
ECE 477 |
Photonic Devices and Systems |
3 |
1 |
1.5 |
ECE 488 |
Multivariable Control Systems |
3 |
1 |
0 |
ECE 493 |
Special Topics in Electrical and Computer Engineering (see note 7) |
3 |
1 |
0 |
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 curricula in Computer Engineering and Electrical Engineering are 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
ECE 318 Communication Systems 1
Any three courses from the following list
ECE 358 Computer Networks
ECE 414 Communication Systems 2
ECE 415 Multimedia Communications
ECE 416 Advanced Topics in Networking
ECE 417 Image Processing
ECE 474 Radio and Wireless Systems