Electrical and Computer Engineering Courses
See beginning of Section H for abbreviations, course numbers and coding.
The *denotes labs which are held on alternate weeks.
A minimum grade of C is required for all prerequisites and all core and technical elective courses used for credit towards to B.Sc.E. degree.
NOTE: Not all technical electives are offered every year. Please check with the ECE Department and/or the online timetable.
ECE1813 | Electricity and Magnetism | 4 ch (3C 1T 2L) |
---|---|---|
ECE2214 | Digital Logic Design | 3 ch (3C 1T) |
---|---|---|
An introductory course to practical aspects of digital system design. The course covers digital logic design, including basic design concepts and implementation technology, number representation, synthesis of combinational and sequential logic, and the use of HDL and computer-based tools. Co-requisite: ECE 2215. |
ECE2215 | Digital Logic Design Laboratory | 1 ch (2L) |
---|---|---|
ECE2412 | Simulation and Engineering Analysis | 4 ch (3C 1.5L) |
---|---|---|
An introduction to modeling and numerical methods as applied in the solution of engineering problems. The solution of nonlinear equations, polynomials, curve fitting, numerical integration and difference equations. Simulation tools such as MATLAB will be used. Prerequisites: CS 1003 or CS 1073 or equivalent; ECE 1813 or EE 1813 or equivalent; MATH 1013 ; MATH 1503 or equivalent. |
ECE2683 | Electric Circuits and Machines (for non-electricals) | 4 ch (3C 1T 3*L) |
---|---|---|
Network analysis including AC. Introduction to transformers, DC machines and AC machines. Cannot be used for credit by students in the Electrical Engineering and Computer Engineering programs. Prerequisites: ECE 1813 or EE 1813 or equivalent, MATH 1013 , MATH 1503 . |
ECE2701 | Electric Circuits and Electronics (for non-electricals) | 4 ch (3C 1T 3*L) |
---|---|---|
Network analysis including AC. Introduction to electronic devices, circuits, and motors. Cannot be used for credit by students in the Electrical Engineering and Computer Engineering programs. Prerequisites: ECE 1813 or EE1813 or equivalent, MATH 1013 , MATH 1503 . |
ECE2711 | Electric Circuits | 4 ch (3C 1T 3*L) |
---|---|---|
Basic DC circuits: Network analysis and theorems. AC circuits: introduction of phasors, Network analysis and theorems applied to AC circuits. Prerequisites: MATH 1013 , ECE1813 or EE 1813 or equivalent. |
ECE2722 | Circuits and Systems | 4 ch (3C 1T 3*L) |
---|---|---|
Network analysis. Transient and steady state responses. Transfer functions, complex frequencies, poles and zeros, Laplace Transforms. Frequency Response and Bode Plots. Filters (passive and active). Prerequisites: ECE 2711 or EE 2711 and MATH 1503 or equivalent. Corequisite: MATH 3503 or equivalent. |
ECE3031 | Electrical and Computer Engineering Design | 4 ch (3C 1T 1.5L) |
---|---|---|
The emphasis is on application of design methodologies to electrical and computer engineering design problems in some major areas of Electrical Engineering. Topics include: design specifications and requirements, simulation and construction, laboratory measurement techniques, design verification, the implementation cycle, environmental impact, project management, economic evaluation and safety assessment. One or more design projects form an integral part of the course. Prerequisites: ECE 2722 or EE 2722 , ECE 2213 or CMPE 2213 or ECE 2214 and ECE 2215 , ECE 2412 or CMPE 2412 , ENGG 1001 , ENGG 1003 , ENGG 1015 . Co-requisite: ECE 3111 or EE 3111 . |
ECE3111 | Electronics I | 4 ch (3C 1T 3*L) |
---|---|---|
An introduction to analog electronics using a device-based approach. The course starts with basic nomenclature and the ideal amplifier model concept. Semiconductor diodes, BJTs and MOSFETs are then introduced followed by how these devices can be used to implement single-stage small-signal amplifiers. To compliment this overall analog approach, the use of both BJTs and MOSFETs in digital logic gates is also covered which in turn introduces the concept of noise margins. |
ECE3122 | Electronics II | 4 ch (3C 1T 3*L) |
---|---|---|
This course follows a similar approach to Electronics I ( ECE 3111 ), however in this more advanced course, the ideal devices introduced earlier are replaced with real devices. The overall theme of this course is frequency response and feedback techniques as applied to small-signal amplifiers. In addition, circuit modeling using a computer is introduced and used as a design aid. |
ECE3213 | Advanced Software Engineering | 4 ch (3C 3*L) |
---|---|---|
The methods and tools of software engineering applicable to engineering systems (such as real time or embedded systems) are considered with engineering emphasis. Topics include design tools and techniques, project management, requirements definition, specifications, testing, verification and validation, maintenance for the engineering system context. Prerequisite: CS 2033 . |
ECE3221 | Computer Organization | 4 ch (3C 1T 3*L) |
---|---|---|
Register transfer systems and datapaths, microprocessors, microprocessor architecture and operation, instruction formats, assembly language programming, procedures and parameter passing, system bus timing, interfacing memory IO ports, serial and parallel data transfer, interrupts. Prerequisites: ECE 2213 or CMPE 2213 or ECE 2214. |
ECE3232 | Embedded Systems Design | 4 ch (3c 2L) |
---|---|---|
A hardware oriented course with emphasis on the components and techniques used in the design of embedded systems. Topics include system design and methodologies and techniques, microcontroller hardware design, software design using C, testing and implementation. A team project will be used to provide the opportunity to apply the content of this course to the development of an embedded application. Most lecture material will be delivered in the context of this project. |
ECE3242 | Computer Architecture | 4 ch (3C 3*L) |
---|---|---|
Important aspects of computer architecture will be covered with a unifying theme of computer system performance. Topics include computer evolution, system busses, main memory, cache memory, memory management, CPU structure, CPU pipelining, superscalar processors, reduced instruction set computers, 64-bit processors, and parallel processing architectures. |
ECE3312 | Systems and Control | 4 ch (3C 1T 3*L) |
---|---|---|
Mathematical models of dynamic systems, linear systems, analysis in the time and frequency domain, stability, Routh-Hurwitz and Nyquist stability criteria, feedforward and feedback control, PID controllers, principles of feedback design. Prerequisites: ECE 2722 or EE 2722 , MATH 3503 , ENGG 1082 . |
ECE3511 | Signals | 4 ch (3C 1T 3*L) |
---|---|---|
Signal theory. Discrete-time (DT) and continuous-time (CT) signals. Power and energy signals. Linear time-invariant transformations and the convolution integral/sum. DT and CT Fourier Series, DT and CT Fourier Transforms and their properties. Power/energy spectrum. Sampling Theory. The Discrete Fourier Transform. Co-requisite: STAT 2593 . |
ECE3612 | Electric Machines and Design in Sustainable Energy Systems | 4 ch (3C 1T 1.5L) |
---|---|---|
Covers the basic theory of, transformers, DC motors/generators and AC polyphase machines, including synchronous and induction machines. This material is augmented with the application and design of such machines utilized in Sustainable Energy systems. Prerequisites: ENGG 1082 , MATH 2513 , ECE 2711 or EE 2711 . |
ECE3812 | Data Communications and Networking | 4 cc (3C 3*L) |
---|---|---|
Data transmission fundamentals including signal encoding, error control, flow controls, multiplexing, switching. Protocol architectures (OS, TCP/IP). Network protocols peer to peer, medium access control, routing. Local area networks: Ethernet, wireless. Prerequisites: ECE 3221 or CMPE 3221. |
ECE3821 | Electromagnetics I | 4 ch (3C 1T 1.5L) |
---|---|---|
Transmission lines, wave equation, Maxwell’s equations, uniform plane waves, radiated waves, safety standards, introduction to antennas and propagation. Prerequisites: MATH 3503 , MATH 2513 , ECE 2711 or EE 2711 . |
ECE3832 | Electromagnetics II | 4 ch (3C 1T 1.5L) |
---|---|---|
Electrostatics, magnetostatics, material properties, Smith chart, waveguides (including optical), antennas, and radar. Prerequisite: ECE 3821 or EE 3821 . |
ECE4040 | Electrical and Computer Engineering Design Project | 7 ch (1*C 6L) [W] |
---|---|---|
Working in teams, students will complete an electrical engineering design project that draws on their knowledge and skills obtained in previous courses. Student teams will design a structure, system, or process to meet a broad range of specified constraints. The development process should consider a broad range of constraints including health and safety, sustainable development and environmental stewardship. Students will manage their projects professionally, prepare a comprehensive written report, and present their design work orally. Prerequisites: CS 1023 or CS 1083, and 52 credit hours of ECE core courses. |
ECE4133 | Instrumentation Design | 4 ch (3C 3*L) |
---|---|---|
This course considers the design of a general-purpose data acquisition system. The electronic design engineer of today can no longer be thought of as a digital or analog designer. Consequently, this course melds the analog and digital electronics areas with a unified engineering approach emphasizing the practical aspects involved. Computer aided design tools are used wherever possible. Prerequisites: ECE 3122 or EE 3122 , ECE 3221 or CMPE 3221 . |
ECE4143 | Electronic Circuit Design (O) | 4 ch (3C 3*L) |
---|---|---|
Considers the philosophy and practice of the design of semiconductor circuits. Prerequisite: ECE 3122 or EE 3122 . |
ECE4173 | Devices and Circuits for VLSI | 4 ch (3C 3*L) |
---|---|---|
Introduction to circuit design and layout. Basic digital gates and clocked systems. Basic RF circuits and components and devices for RF. CAD tools for simulation and layout. Prerequisites: ECE 2213 or CMPE 2213 and ECE 3122 or EE 3122 . |
ECE4251 | Real Time Systems | 4 ch (3C 2L) |
---|---|---|
Real time system design and implementation: basic concurrency theory including scheduling, mutual exclusion and process management, task synchronization and communication, operating system kernels, real time system hardware, software for real time embedded systems. Prerequisite: ECE 3232 or CMPE 3232 . |
ECE4253 | Digital Communications | 4 ch (3C 3*L) |
---|---|---|
Covers the fundamentals of modern digital communications, coding and information theory, error detection and correction, data compression, modulation and models for telecommunications and current international standards. |
ECE4261 | Digital Systems Designs | 4 ch (3C 3*L) |
---|---|---|
Advanced study of the digital system design methodology. Design methods, models and approaches including: RTL Design, SOC design, and testing methodologies, Intellectual Property (IP), reuse, software-hardware co-design, hardware description languages (HDL), structural and behavioral models, design for low power. One or more design projects. Prerequisites: ECE 3232 or CMPE 3232 . |
ECE4273 | VLSI Systems Design | 4 ch (3C 3*L) |
---|---|---|
Methods and tools for the design of FPGA-based digital circuits with focus on large-scale systems, i.e. digital signal and arithmetic processors, microcomputers. VLSI design process, standards, constraints, implementation, technology-dependent optimization, simulation, testing, and verification. Multi-FPGA systems. FGPA-based peripheral devices. One or more design projects. Prerequisites: ECE 3232. |
ECE4323 | Modern Control Systems and Applications | 4 ch (3C 3*L) |
---|---|---|
Introduces the industrial context for the application of control theory, including system modeling (linear, nonlinear, discrete, continuous and probabilistic models) and problem definition, determining system components and architectures, dealing with limitations and constraints (nonlinearity, disturbances and uncertainties), standard and advanced controls design (linear, nonlinear, and optimal control methods) and tuning methods. Computer-aided controls engineering is emphasized (algorithms/MATLAB). |
ECE4333 | Robotics | 4 ch (3C 2L) |
---|---|---|
This is a project based course where students design a variety of subsystems that are integrated and tested on a mobile robot. Topics include: actuators, PWM, H-bridges, position and range sensors, velocity sensors, optical sensors and switches, strain gauges, position and velocity control, electro-mechanical subsystems, planning and trajectory generation, computer software and hardware interfacing. Prerequisites: ECE 3221 or CMPE 3221 or equivalent, ECE 3312 or EE 3312 or equivalent. |
ECE4343 | Haptic Robots | 4 ch (3C 3*L) |
---|---|---|
Haptics is the science and technology of creating the sensation of touch using robotic devices. This course will cover the three interelated domains of human physiology, mechatronics and control, to develop haptic robots that render a variety of environments. |
ECE4433 | Safety Critical Design | 4 ch (3C 3*L) |
---|---|---|
This elective covers the reliability, availability and fault tolerance of computer systems. It introduces topics related to fault-tolerant computing reliability of hardware and software implementation of engineering systems. It includes fail-safe and fail-operate computer systems design, qualitative analysis of safety-critical systems, risk analysis, fault tolerance techniques, reparability, and redundancy. |
ECE4523 | Communication Systems | 4 ch (3C 3*L) |
---|---|---|
Introduces analog and digital communication in the presence of noise. Techniques and application of basic information theory. Prerequisite: ECE 3511 or EE 3511 . |
ECE4531 | Digital Signal Processing I | 4 ch (3C 3*L) |
---|---|---|
Fundamentals of discrete-time processing. Difference equations and their solutions; the Z transform and its properties. Transfer function, frequency response, impulse response, and realization structures for discrete-time systems, cross-correlation and power spectral density. Discrete time filters: types, effects of pole-zero placement, the Bilinear Transform. Circular convolution and the DFT. Prerequisites: ECE 2213 or CMPE 2213 , ECE 3511 or EE 3511 . |
ECE4542 | Digital Signal Processing II | 4 ch (3C 3*L) |
---|---|---|
Fourier Methods, Fast Fourier Transform, Filter design, Windows, State Variable Methods, Estimation. Prerequisite: ECE 4531 or EE 4531 . |
ECE4553 | Introduction to Pattern Recognition | 4 ch (3C 3*L) |
---|---|---|
ECE4623 | Advanced Electrical Machines | 4 ch (3C 3*L) |
---|---|---|
Covers principles of operation, controls and applications of single phase induction motors, permanent magnet machines including permanent magnet synchronous machines and brushless DC motors, servo motors, and other special electrical machines. Prerequisite: ECE 3612 or EE 3612 . |
ECE4633 | Power System Analysis | 4 ch (3C 3*L) |
---|---|---|
Introduces many components of a power system. Prerequisites: ECE 3612 or EE 3612 , ECE 2722 or EE 2722 or ECE 3312 or EE 3312 . |
ECE4643 | Power Electronics | 4 ch (3C 3*L) |
---|---|---|
Deals with high current rectifiers and inverters. Design parameters and practical firing circuits are analyzed. |
ECE4823 | Communications and Network Engineering | 4 ch (3C 3*L) |
---|---|---|
Advanced network architectures: RSVP, MLPS, RTP. Modeling and simulation of data networks: queuing models for media access, error control and traffic management protocols, modeling of traffic and inter-arrival time, performance analysis. Communication network design. Network management and security. |
ECE4833 | Microwave Engineering | 4 ch (3C 3*L) |
---|---|---|
Topics related to modern microwave systems including design and measurement of passive microwave circuits. Prerequisite: ECE 3832 or EE 3832 . |
ECE4913 | Independent Project | 4 ch (8L) [W] |
---|---|---|
An independent project. Students work under the supervision of a chosen faculty member. Students are responsible for finding a supervisor and initiating the project. Deliverables include a comprehensive report detailing the work. Prerequisite: successful completion of 110 ch in the engineering program. |
ECE4923 | Introduction to Biomedical Engineering | 4 ch (3C 3*L) |
---|---|---|
ECE4933 | Special Studies in Electrical Engineering | 1 ch |
---|---|---|
With the approval of the Department Chair and under the guidance of a member of the faculty, a student may perform special studies and investigations related to the undergraduate program. Restricted to students in their final year of study. |
ECE4943 | Topics in Computer Engineering | 4 ch (3C 3*L) |
---|---|---|
A selected area of computer engineering with a unifying theme will be explored in depth. The topics covered are selected from one or more of the following areas: parallel processing, operating systems, concurrent system performance, network based parallel computing, embedded system issues, algorithms in real-time, computer system modeling analysis. Prerequisite: ECE 3232 or CMPE 3232 . |