TECHNICAL COMPLEMENTARY COURSES - COMPUTER ENGINEERING PROGRAM
Students following the regular Computer Engineering program must take 3 courses (9 credits) from the following list. It is possible that not all the courses listed will be offered in any given year. Please refer to the up-to-date course assignments before selecting any course. Permission will not be granted to take Technical Complementary courses that are not on this list. ECSE 500 level technical complementaries are restricted to students with a minimum CGPA of 3.0 and B+ or better in the prerequisites.
Technical Complementaries
COMP 424. Artificial Intelligence.
Credits: 3
Offered by: Computer Science (Faculty of Science)
This course is not offered this catalogue year.
Description
Introduction to search methods. Knowledge representation using logic and probability. Planning and decision making under uncertainty. Introduction to machine learning.
- Restriction Note J: Open only to students registered in a Core Group* or Mathematics Group* program, or the Minor in Computer Science, or the Minor in Cognitive Science. * as defined in the SOCS section, Undergraduate Programs Calendar
- 3 hours
- Prerequisites: (COMP 206 or ECSE 321), MATH 323 or equivalent and COMP 251.
- Restriction: Not open to students who have taken or are taking ECSE 526.
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
ECSE 404. Control Systems.
Credits: 3
Offered by: Electrical & Computer Engr (Faculty of Engineering)
This course is not offered this catalogue year.
Description
Modelling and simulation of control systems; basic concepts of linear systems; open and closed loop control; classical design of controllers - specifications in the step response and the frequency domain; state space design of controllers - pole placement and LQR; sampled data systems.
- (3-1-5)
- Corequisite: ECSE 304 or ECSE 306
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
Course information not available.
ECSE 412. Discrete Time Signal Processing.
Credits: 3
Offered by: Electrical & Computer Engr (Faculty of Engineering)
This course is not offered this catalogue year.
Description
Discrete-time signals and systems; Fourier and Z-transform analysis techniques, the discrete Fourier transform; elements of FIR and IIR filter design, filter structures; FFT techniques for high speed convolution; quantization effects.
- (3-2-4)
- Prerequisite(s): ECSE 206 or ECSE 304 or ECSE 306.
- Tutorials assigned by instructor.
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
ECSE 420. Parallel Computing.
Credits: 3
Offered by: Electrical & Computer Engr (Faculty of Engineering)
This course is not offered this catalogue year.
Description
Modern parallel computing architectures for shared memory, message passing and data parallel programming models. The design of cache coherent shared memory multiprocessors. Programming techniques for multithreaded, message passing and distributed systems. Use of modern programming languages and parallel programming libraries.
- (3-2-4)
- Prerequisite: ECSE 427
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
ECSE 421. Embedded Systems.
Credits: 3
Offered by: Electrical & Computer Engr (Faculty of Engineering)
This course is not offered this catalogue year.
Description
Definition, structure and properties of embedded systems. Real-time programming: interrupts, latency, context, re-entrancy, thread and process models. Microcontroller and DSP architectures, I/O systems, timing and event management. Real-time kernels and services. Techniques for development, debugging and verification. Techniques for limited resource environments. Networking for distributed systems.
- (3-1-5)
- Prerequisites: ECSE 324
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
ECSE 422. Fault Tolerant Computing.
Credits: 3
Offered by: Electrical & Computer Engr (Faculty of Engineering)
This course is not offered this catalogue year.
Description
Introduction to fault-tolerant systems. Fault-tolerance techniques through hardware, software, information and time redundancy. Failure classification, failure semantics, failure masking. Exception handling: detection, recovery, masking and propagation, termination vs. resumption. Reliable storage, reliable communication. Process groups, synchronous and asynchronous group membership and broadcast services. Automatic redundancy management. Case studies.
- (3-1-5)
- Prerequisites: ECSE 324 and (ECSE 250 or COMP 250)
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
ECSE 424. Human-Computer Interaction.
Credits: 3
Offered by: Electrical & Computer Engr (Faculty of Engineering)
This course is not offered this catalogue year.
Description
The course highlights human-computer interaction strategies from an engineering perspective. Topics include user interfaces, novel paradigms in human-computer interaction, affordances, ecological interface design, ubiquitous computing and computer-supported cooperative work. Attention will be paid to issues of safety, usability, and performance.
- (3-4-2)
- Prerequisites: (ECSE 324 and ECSE 250) or (ECSE 324 and COMP 250) or (COMP 251 and COMP 273)
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
ECSE 428. Software Engineering Practice.
Credits: 3
Offered by: Electrical & Computer Engr (Faculty of Engineering)
This course is not offered this catalogue year.
Description
Software engineering practice in industry, related to the design and commissioning of large software systems. Ethical, social, economic, safety and legal issues. Metrics, project management, costing, marketing, control, standards, CASE tools and bugs. The course involves a large team project.
- (3-1-5)
- Students meet with the instructor and/or teaching assistant for one hour each week to discuss their project.
- Prerequisite: ECSE 321
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
ECSE 429. Software Validation.
Credits: 3
Offered by: Electrical & Computer Engr (Faculty of Engineering)
This course is not offered this catalogue year.
Description
Correct and complete implementation of software requirements. Verification and validation lifecycle. Requirements analysis, model based analysis, and design analysis. Unit and system testing, performance, risk management, software reuse. Ubiquitous computing.
- (3-2-4)
- Prerequisite: ECSE 321 or COMP 303
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
Course information not available.
Course information not available.
Course information not available.
Course information not available.
Course information not available.
ECSE 532. Computer Graphics.
Credits: 4
Offered by: Electrical & Computer Engr (Faculty of Engineering)
This course is not offered this catalogue year.
Description
Fundamental mathematical, algorithmic and representational issues in computer graphics: overview of graphics pipeline, homogeneous coordinates, projective transformations, line-drawing and rasterization, hidden surface removal, surface modelling (quadrics, bicubics, meshes), rendering (lighting, reflectance models,
ray tracing, texture mapping), compositing colour perception, and other selected topics.
- (3-0-9)
- Prerequisite: ECSE 324
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
ECSE 537. Advanced Digital Integrated Circuits.
Credits: 3
Offered by: Electrical & Computer Engr (Faculty of Engineering)
This course is not offered this catalogue year.
Description
Advanced concepts in the design, layout, and optimization (speed/power/area trade-offs) of digital integrated circuits in state-of-the-art technologies. Emphasis on the main design challenges (low power, process variations) due to device scaling into the nanometer node. Integrated-circuit design flow. Computer-aided design tools.
- (3-3-3)
- Prerequisites: (ECSE 323 or ECSE 325) and (ECSE 334 or ECSE 335)
- Restriction: Undergraduate: Restricted to Honours Electrical Engineering students
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
Course information not available.
LABORATORY COURSES - COMPUTER ENGINEERING PROGRAM
Students following the regular Computer Engineering program must take one (1) course (2 credits) from the following list. It is possible that not all the courses listed will be offered in any given year. Please refer to the up-to-date course assignments before selecting any course. Permission will not be granted to take Laboratory Complementary courses that are not on this list.
Course information not available.
Course information not available.
Course information not available.
Course information not available.
Course information not available.
Course information not available.
Course information not available.