11.3 Electrical and Computer Engineering

In accordance with Senate's Policy Regarding Inactive Courses, the course descriptions for courses which have not been offered in the previous three academic years and which are not scheduled to be offered in the current academic year have been removed from the following listing. For information about any of these inactive courses, please contact the Head of the Department. (or the Associate Dean (Undergraduate Studies) of the Faculty in the case of ENGI courses).

Electrical and Computer Engineering courses are identified by a four-digit numbering system, the first two digits signifying the following:

The first digit denotes the academic term during which the course is normally offered.

The second digit denotes the primary areas of study, namely:

0: Design
1: Mathematics
2: Controls
3: Circuits
4: Software
5: Digital Hardware
6: Signals & Communications
7: Electromagnetism
8: Power & Machines
9: Special Topics

Electrical and Computer Engineering courses are designated by ECE.

Non-departmental Engineering courses are designated by ENGI.

ECE 3300 Circuit Analysis

(same as the former ENGI 3821) begins with a review of basic circuit analysis including dependent sources, then considers wye-delta transformation, bridge circuits, transient analysis of first- and second -order circuits, sinusoidal steady state analysis, phasor diagrams, sinusoidal steady-state power, complex power and maximum power transfer.

CR:
Physics 3550, the former ENGI 3821
LH:
eight 3-hour sessions per semester
OR:
tutorial 1 hour per week
ECE 3400 Foundations of Programming

(same as the former ENGI 3891) introduces fundamental concepts in object-oriented programming and develops vocational programming skills in C++. Topics include abstraction, types, contracts, object-oriented design, C++ language features including key elements of the standard library and practical programming and debugging skills.

CR:
Computer Science 2510, the former ENGI 3891
LH:
at least four 2-hour sessions per semester
OR:
tutorial one hour per week
PR:
ENGI 1020
ECE 3500 Digital Logic

(same as the former ENGI 3861) includes number systems and Boolean algebra; minimization techniques for Boolean functions; basic combinational logic circuit analysis and design; flip-flops, state machine design and implementation; decoders, multiplexors, registers, counters; simple arithmetic and logic units (ALUs); digital system design of small systems.

CR:
the former Computer Science 3723, the former ENGI 3861
LH:
six 3-hour sessions per semester
OR:
twelve 1-hour tutorial sessions per semester
ECE 4110 Discrete Mathematics for Computer Engineering

(same as the former ENGI 4424) is an introduction to discrete mathematics including a selection of topics such as propositional logic, introductory predicate logic, mathematical reasoning, induction, sets, relations, functions, integers, graphs, trees, and models of computation.

CR:
Computer Science 1002, or the former Computer Science 2740, the former ENGI 3422, the former ENGI 4424, Mathematics 2320
OR:
tutorial 1 hour per week
PR:
Mathematics 1001 or Mathematics 2050
ECE 4300 Electronic Circuits I

(same as the former ENGI 4854) provides an introduction to semiconductor electronic devices and circuits. Topics covered include internal structure of electronic devices; working principles, dc and small-signal models and analysis of p-n junction diodes, bipolar junction transistors and field effect transistors; introduction to digital electronics; differential and multistage amplifier circuits; Miller’s theorem; frequency response of discrete amplifiers; practical applications including power supplies, amplifiers and switching circuits. CAD tools are used to illustrate the analysis and design of electronic circuits.

CR:
the former ENGI 4854
LH:
eight 3-hour sessions per semester
OR:
tutorial 1 hour per week
ECE 4400 Data Structures

(same as the former ENGI 4892) examines fundamental data structures; recursive structures and generic programming techniques; modularity and reusability; time complexity and efficient data structures; procedural abstraction; data abstraction and precise documentation of data structures.

CO:
ECE 4110 or Mathematics 2320 or the former ENGI 4424
CR:
the former ENGI 4892
OR:
tutorial 1 hour per week
PR:
ECE 3400 or the former ENGI 3891
ECE 4500 Microprocessors

(same as the former ENGI 4862) includes microprocessor architecture; assembly language programming: addressing modes, table look up; memory mapped devices; interfacing techniques: parallel, serial; timing control; analog input and output, and computer displays.

CR:
the former ENGI 4862
LH:
eight 3-hour sessions per semester
OR:
nine 1-hour tutorial sessions per semester
PR:
ECE 3500 or the former ENGI 3861
ECE 4510 Microprocessors and Digital Logic

includes number systems, logic gates, Boolean algebra, Karnaugh maps and combinational logic design, sequential logic and state machines, microprocessor architectures, micro-processor programming, GPIO, analog input and output, and serial communication.

CR:
ECE 3500, ECE 4500
LH:
five 3-hour sessions per semester
OR:
tutorial 1 hour per week
PR:
ECE 3300 or the former ENGI 3821, ENGI 1040, ENGI 3424
ECE 4600 Introduction to Systems and Signals

(same as the former ENGI 4823) begins with an introduction to systems and signals, and includes mechanical and electrical analogues; principles of linear superposition and time-invariance; definitions, properties, and use of the delta function; applications of complex variables and functions; impulse and step responses; input-output relations of continuous-time systems in terms of convolution and transfer functions; frequency response plots; the Fourier transform and applications; Laplace transforms with application to filtering, communications, and controls.

CR:
the former ENGI 4823
OR:
tutorial 1 hour per week
ECE 4800 Electromechanical Devices

(same as the former ENGI 4841) includes an introduction to fundamental principles of energy conversion; review of single-phase AC circuits; three-phase AC circuits; magnetic fields and circuits; transformer models, performance and applications; basic concepts of rotating machines; performance and control of DC motors.

CR:
the former ENGI 4841, the former ENGI 5842
LH:
six 3-hour sessions per semester
OR:
tutorial 1 hour per week
ECE 5000 Electrical Engineering Design

(same as the former ENGI 5800) students work, normally in pairs, on small design projects that require them to follow a hierarchical design process including general product definition, specifications and requirements, functional-block diagrams, specification of functional blocks for circuit-level synthesis and implementation, system integration, simulation or modelling, testing and verification. The small projects are designed to encourage and motivate students to learn and practise the process of design. The course culminates in a large design project.

CO:
ECE 5200 or the former ENGI 5821, ECE 5300 or the former ENGI 5854. There is no co-requisite for students completing a minor in Applied Science - Electrical Engineering.
CR:
the former ENGI 5800
LC:
18 lecture hours per semester
LH:
ten 3-hour sessions per semester
OR:
meetings with project supervisor as required
PR:
ECE 4300 or the former ENGI 4854, ECE 4500 or the former ENGI 4862, ECE 4800 or the former ENGI 4841
ECE 5010 Software Design

(same as the former ENGI 5895) examines the development process: requirement analysis, design, iterative development, design documentation; an introduction to the Unified Modelling Language: use cases, class diagrams and sequence diagrams; an introduction to software design patterns: creational patterns, structural patterns and behavioural patterns; object oriented, modular decomposition. The course includes a major design project.

CR:
the former ENGI 5895
LC:
25 lecture hours per semester
LH:
six 3-hour sessions per semester
OR:
meetings with project supervisor as required
PR:
ECE 4400 or the former ENGI 4892
ECE 5100 Probability and Random Processes

(same as the former ENGI 5420) includes basic concepts in probability, random variables, multiple random variables, descriptive statistics, random processes and selected applications for engineering.

CR:

the former ENGI 5420

OR:

twelve 1-hour tutorial sessions per semester

PR:

ECE 4600 or the former ENGI 4823

ECE 5200 Control Systems I

(same as the former ENGI 5821) includes an introduction to control systems with negative feedback; mathematical modelling and transfer functions of electromechanical systems; block diagram and signal flow graphs; controller realization; transient response analysis; Routh's stability criterion; basic control actions and response of control systems; root locus analysis and design; frequency response analysis; Bode diagram; gain and phase margins; compensator design in frequency domain; Nyquist stability criterion; digital implementations of analog compensators; and an introduction to PID controller tuning methods.

CR:
the former ENGI 5821
LH:
four 3-hour sessions per semester
OR:
six 1-hour tutorials per semester
PR:
ECE 4600 or the former ENGI 4823
ECE 5300 Electronic Circuits II

(same as the former ENGI 5854) provides an introduction to circuits using operational amplifiers. Topics covered include operational amplifier configurations, analysis, and design; transient and frequency response of amplifier circuits; feedback amplifier analysis and design, stability and compensation techniques; noise and distortion in electronic circuits; analysis and design of data converters; and an introduction to analog filter design. CAD tools are used to illustrate the analysis and design of electronic circuits.

CR:
the former ENGI 5854
LH:
eight 3-hour sessions per semester
OR:
tutorial 1 hour per week
PR:
ECE 4300 or the former ENGI 4854, ECE 4600 or the former ENGI 4823. Students in the Mechatronics Engineering program may complete ECE 5610 as a corequisite instead of ECE 4600.
ECE 5400 Algorithms: Correctness and Complexity

(same as the former ENGI 5892, the former ENGI 6892) presents fundamental theories and practices for the design of correct and efficient computing systems, including specification of computing systems and their components, correctness with respect to specifications; methods of verification; algorithmic problem solving strategies (such as divide and conquer, dynamic programming); tractability and intractability of computational problems.

CR:
the former ENGI 5892, the former ENGI 6892
OR:
tutorial one hour per week
PR:
ECE 4110 or the former ENGI 4424, ECE 4400 or the former ENGI 4892
ECE 5500 Digital Systems

(same as the former ENGI 5865) includes concepts, language, tools, and issues pertaining to specification, modelling, analysis, simulation, testing and synthesis of digital systems, including PLD, FPGA, and ASIC devices. Industry standard CAD tools will be used in this course to facilitate system design and testing.

CR:
the former ENGI 5865
LH:
ten 3-hour sessions per semester
PR:
ECE 3400 or the former ENGI 3891, ECE 4500 or ECE 4510 or the former ENGI 4862
ECE 5610 Sensors and Instrumentation

involves modelling, analysis, and design of mechanical measurement systems. Topics covered include Laplace transforms, lumped parameter modelling of electro-mechanical systems, static and dynamic characteristics of sensors, sampling and anti-aliasing, classification and selection of sensors for motion and process, op-amps and signal conditioning and processing, and data acquisition system design.

CR:
ECE 4600, Mechanical and Mechatronics Engineering 7203, the former ENGI 5952, the former ENGI 7930
LH:
five 3-hour sessions per semester
OR:
tutorial 1 hour per week
PR:
ECE 3300 or the former ENGI 3821, ENGI 1040, ENGI 3424
ECE 5700 Basic Electromagnetics

(same as the former ENGI 5812) includes a review of relevant vector calculus, including the divergence, gradient and curl operators in Cartesian, cylindrical and spherical coordinates, divergence theorem, Stokes' theorem, and Laplace's and Poisson's equations. Topics in electrostatics include Coulomb's law, potential and energy, conductors, dielectrics, capacitance and electric field boundary conditions. Topics for magnetism include the steady magnetic field, the Biot-Savart law and Ampère's law.

CR:
the former ENGI 5812, Physics 3500
OR:
tutorial 1 hour per week
PR:
ECE 3300 or the former ENGI 3821, ENGI 4430
ECE 6200 Industrial Controls and Instrumentation

(same as the former ENGI 6855) examines control and instrumentation system components; transducers and signal processing circuits, linear variable differential transformers, power oscillators; electromechanical actuators, solenoids, power drives; A/D and D/A conversion, standard PC interfaces; real-time operating systems; design of discrete-time feedback controllers on a PC platform; system integration, control system tweaking and troubleshooting; programming soft-PLC's using IEC61131.

CR:
the former ENGI 6855, the former ENGI 7858
LH:
at least eight 3-hour sessions per semester
PR:
ECE 5200 or the former ENGI 5821
ECE 6400 Software Development Practice

(same as the former ENGI 6893) introduces the student to software development processes, practices, and tools. It includes software project management using agile processes; development tools and practices; architectural level design; deployment and operations; and verification via static analysis, formal verification, and testing.

CR:
the former ENGI 6893
LH:
six 3-hour sessions per semester
PR:
ECE 5010 or the former ENGI 5895, ECE 5400 or the former ENGI 5892
ECE 6500 Computer Architecture

(same as the former ENGI 6861) begins with a review of microprocessors and computer organization. Topics include fundamentals of computer design: performance metrics and cost; instruction set architecture; memory hierarchy design: cache, main memory and virtual memory; pipelining: hazards, parallelism; special purpose processors; multiprocessors and thread-level parallelism.

CR:
the former ENGI 6861
OR:
tutorial 1 hour per week
PR:
ECE 5500 or the former ENGI 5865
ECE 6600 Communication Principles

(same as the former ENGI 6871) begins with a review of signal representation and analysis and includes distortionless signal transmission, analog modulation (AM, FM and PM), super-heterodyne receiver, sampling theorem, pulse amplitude modulation (PAM), pulse code modulation (PCM), delta modulation.

CR:
the former ENGI 6871
LH:
four 3-hour sessions per term
PR:
ECE 4600 or the former ENGI 4823, ECE 5100 or the former ENGI 5420
ECE 6610 Communication Networks

(same as the former ENGI 6876) is an introduction to communication networks such as the telephone and computer networks. Topics include circuit and packet switching, network protocols and layered architecture, physical layer, data link layer, network layer, error control; local area networks, and internetworking.

CR:
the former ENGI 6876
PR:
ECE 5100 or the former ENGI 5420
ECE 6700 Electromagnetic Fields

(same as the former ENGI 6813) is a continuation of the topics started in ECE 5700, including a review of electrostatics and magnetostatics, Maxwell’s equations, Lorentz force, Poynting's theorem, plane waves, and applications including two-wire transmission lines.

CR:
the former ENGI 6813, Physics 4500
OR:
tutorial 1 hour per week
ECE 6800 Rotating Machines

(same as the former ENGI 6843) examines the fundamentals of rotating machines; design of machine windings; polyphase and single phase induction motor theory and applications; synchronous machine theory; stability and control of synchronous generators; introduction to permanent magnet machines; introduction to AC motor drives.

CR:
the former ENGI 6843
LH:
six 3-hour sessions per semester
OR:
eight 1-hour tutorial sessions per semester
PR:
ECE 4800 or the former ENGI 4841
ECE 6810 Power Electronics

(same as the former ENGI 6856) is an overview of power semiconductor switches, an introduction to energy conversion and control techniques and examination of controlled rectifiers; phase-controlled converters; switch-mode dc/dc converters; variable frequency dc/ac inverters; ac/ac converters; gate and base drive circuits; design of driver and snubber circuits; thermal models and heat sink design.

CR:
the former ENGI 6856, the former ENGI 7846
LH:
eight 3-hour sessions per semester
OR:
eight 1-hour tutorial sessions per semester
PR:
ECE 5300 or the former ENGI 5854
ECE 7000 Electrical Engineering Design Project I

(same as the former ENGI 7803) provides an opportunity for senior students to integrate the knowledge that they have acquired through the junior terms and apply it to solving an electrical engineering design problem. Students work in small teams with the assistance of a faculty mentor to define an appropriate design problem and propose a method of solution to the problem. The project is continued in ECE 8000.

CR:
the former ENGI 7800, the former ENGI 7803
LC:
at least 10 lecture hours per semester
OR:
weekly meetings with project supervisor
PR:
ENGI 4102, completion of Academic Term 6 of the Electrical Engineering program
ECE 7010 Computer Engineering Design Project I

(same as the former ENGI 7804) provides an opportunity for senior students to integrate the knowledge that they have acquired through the junior terms and apply it to solving a computer engineering design problem. Students work in small teams with the assistance of a faculty mentor to define an appropriate design problem and propose a method of solution to the problem. The project is continued in ECE 8010.

CR:
the former ENGI 7800, the former ENGI 7804
LC:
at least 10 lecture hours per semester
OR:
weekly meetings with project supervisor
PR:
ENGI 4102, completion of Academic Term 6 of the Computer Engineering program
ECE 7200 Control Systems II

(same as the former ENGI 7825) examines state space models for multi-input/output systems; observability, controllability; state feedback without and with integral controller structure, state observers; quadratic optimal regulator and tracking control strategies; discrete-time state equations; and an introduction to optimal control.

CR:
the former ENGI 6825, the former ENGI 7825
PR:
ECE 5200 or the former ENGI 5821, or Mechanical and Mechatronics Engineering 6202 or the former ENGI 6951
ECE 7210 Process Control and Instrumentation

(same as the former ENGI 8680) begins with an introduction to feedback control systems, and instrumentation. Topics include modelling thermal, gas, liquid and chemical processes; sensors and transmitters, controller design and simulation in Matlab /Simulink, industrial feedback controllers; design of feedback control loops, tuning of feedback controllers; cascade, ratio, digital controller design; feedforward control; multivariable process control; fuzzy logic control and tuning, instrumentation electronics design, and process system identification using Matlab /Simulink.

CR:
the former ENGI 8680
LH:
twelve 3-hour sessions per semester
PR:
ECE 5200 or the former ENGI 5821
ECE 7400 Concurrent Programming

(same as the former ENGI 7894) surveys parallel and distributed architectures and examines patterns of concurrent program design; correctness of concurrent programs: safety and liveness properties, proof of properties; synchronization using locks, semaphores, and monitors; communication using message passing and remote procedures; parallelization for high-performance computation and advanced topics such as scientific applications, distributed systems, model checking, and transaction processing.

CR:
the former ENGI 7894, the former ENGI 8893
PR:
ECE 5400 or the former ENGI 5892 or the former ENGI 6892
ECE 7410 Image Processing and Applications

(same as the former ENGI 7854) presents fundamental theoretical and practical concepts of image processing and analysis. These concepts include image enhancement and filtering, frequency domain analysis, morphological image operations, image segmentation, and feature extraction. The course enables the use of these concepts to automatically process and analyze images and videos from various real-world applications such as biomedical imaging, visual surveillance, and robotics.

CR:
the former Computer Science 4756, the former ENGI 7854
LH:
at least four 3-hour sessions per semester
ECE 7420 Computer Security

(same as the former ENGI 7864) introduces students to key computer security concepts for applications, hosts, networks and the Web. Students will learn to employ the primitives provided by programming languages, cryptography, operating systems and network protocols for protecting engineered systems and their users.

CR:
the former ENGI 7864
LH:
at least eight 3-hour sessions per semester
PR:
ECE 5010 or the former ENGI 5895, ECE 5400 or the former ENGI 5892 or the former ENGI 6892
ECE 7500 Introduction to VLSI Design

(same as the former ENGI 8863) is an introduction to ASICs and ASIC design methodology and includes basic concepts of digital logic design tools and ASIC technology libraries; partitioning for logic synthesis and VHDL coding; constraining designs, synthesizing, simulation and optimization; design for testability; layout and post-layout optimization and SDF generation; and static timing analysis.

CR:
the former Computer Science 4725, the former ENGI 8863
LH:
nine 3-hour sessions per semester
OR:
eight 1-hour tutorial sessions per semester
PR:
ECE 5500 or the former ENGI 5865
ECE 7600 Introduction to Digital Signal Processing

(same as the former ENGI 7824) examines sampling theory; elementary discrete-time signals; discrete-time linear and time-invariant systems; linear constant-coefficient difference equations; the convolution sum; the discrete-time Fourier series; the discrete-time Fourier transform; the z-transform; the frequency response of discrete-time systems; the discrete Fourier transform; the efficient fast Fourier transform algorithm; an introduction to digital filter design techniques; and digital signal processing applications.

CR:
the former ENGI 7824
OR:
tutorial 1 hour per week
PR:
ECE 6600 or the former ENGI 6871
ECE 7610 Communications Electronics

- inactive course.

ECE 7620 Digital Communications

(same as the former ENGI 8879) is a review of baseband transmission and basic digital modulation schemes, detection (optimum receiver, matched filter, correlator), error performance, intersymbol interference (ISI), equalization, the concept of information and entropy, source coding including Huffman coding and linear predictive coding, channel coding including block and convolutional error correcting codes, modulation and coding trade-offs, bandwidth and power efficiency.

CR:
the former ENGI 8879
PR:
ECE 6600 or the former ENGI 6871
ECE 7800 Power System Analysis

(same as the former ENGI 7844) begins with an introduction to electric power systems. Topics include per unit quantities; transmission line parameters; modelling of power system components; single line diagrams; network equations formulation; bus impedance and admittance matrices; load flow analysis and control; design of reactive power compensation for power system performance enhancement; tap changing, auto and control transformers for power system application; economic dispatch and optimal power flow studies.

CR:
the former ENGI 7844
LH:
six 3-hour sessions per semester
PR:
ECE 6800 or the former ENGI 6843
ECE 7810 Renewable Energy Systems

(same as the former ENGI 7856) examines the assessment of wind energy potential, wind turbine aerodynamics, types, modelling and control strategies; hybrid energy systems; energy storage; solar energy systems; photovoltaic, PV system engineering, stand-alone and grid connected systems, sizing and maximum power tracking; solar water pumping; micro-hydro systems and control; tidal power, wave energy converters, ocean thermal systems. Applications of hybrid energy system sizing software are also included in the course.

CR:
the former ENGI 7856
LH:
eight 3-hour sessions per semester
PR:
ECE 6800 or the former ENGI 6843
ECE 8000 Electrical Engineering Design Project II

(same as the former ENGI 8853) continues ECE 7000 and provides an opportunity for senior students to integrate the knowledge that they have acquired through the junior terms and apply it to solving an electrical engineering design problem. Students work in small teams with the assistance of a faculty mentor to complete detailed design, implementation and testing of an electrical engineering system to solve the problem as defined in ECE 7000.

CR:
the former ENGI 8800, the former ENGI 8853
LC:
0
OR:
weekly meetings with project supervisor
PR:
ECE 7000 or the former ENGI 7803
ECE 8010 Computer Engineering Design Project II

(same as the former ENGI 8854) continues ECE 7010 and provides an opportunity for senior students to integrate the knowledge that they have acquired through the junior terms and apply it to solving a computer engineering design problem. Students work in small teams with the assistance of a faculty mentor to complete detailed design, implementation and testing of an computer engineering system to solve the problem as defined in ECE 7010.

CR:
the former ENGI 8800, the former ENGI 8854
LC:
0
OR:
weekly meetings with project supervisor
PR:
ECE 7010 or the former ENGI 7804
ECE 8210 Supervisory Control and Data Acquisition

(same as the former ENGI 7680) examines data acquisition and intelligent field devices; distributed systems and fieldbus technology; programmable logic controllers and programming standards; operator control interface; supervisory control and data acquisition; and enterprise organization.

CR:
the former ENGI 7680
LH:
at least four 3-hour sessions per semester
PR:
ECE 5200 or the former ENGI 5821, or Mechanical and Mechatronics Engineering 6202 or the former ENGI 6951, or Process Engineering 7021 or the former ENGI 7621
ECE 8400 Real-time Operating Systems

(same as the former ENGI 8894) examines real-time process scheduling; memory and device management; I/O communications; real-time systems; operating system and hardware concurrency issues; kernel architectures; device drivers; and a survey of available real-time operating systems and embedded platforms.

CR:
Computer Science 4721, the former ENGI 7863, the former ENGI 8894
LH:
four 3-hour sessions per semester
PR:
ECE 6500 or the former ENGI 6861, ECE 7400 or the former ENGI 7894
ECE 8410 Computer Vision

(same as Computer Science 4301, the former ENGI 8814) studies how to develop methods that enable a machine to "understand" or analyze images. The course introduces the fundamental problems in computer vision and the state-of-the-art approaches that address them. Topics include feature detection and matching, geometric and multi-view vision, structure from X, segmentation, object tracking and visual recognition.

CR:
Computer Science 4301, the former ENGI 8814
LH:
six 3-hour sessions per semester
PR:
Computer Science 3301 or ECE 7410 or the former ENGI 7854 or permission of the instructor
ECE 8420 Cryptography

(same as the former ENGI 8868) examines the techniques used to provide security in communication networks and computer systems. The course focuses on topics in cryptography required to provide privacy, authentication, and integrity, including symmetric key ciphers, public key ciphers, message authentication, and digital signature schemes.

CR:
the former ENGI 8868
PR:
ECE 5400 or the former ENGI 5892 or the former ENGI 6892
ECE 8600 Design of Digital Signal Processing Systems

(same as the former ENGI 8821) is a review of introductory digital signal processing (DSP) principles, including sampling theory and discrete-time systems and signals. Topics include transform analysis of DSP systems; issues in the implementation of DSP systems; design of IIR and FIR digital filters; computable transforms and their use in the frequency analysis of digital signals; and design of DSP systems for current and emerging applications of digital signal processing.

CR:
the former ENGI 8821
PR:
ECE 7600 or the former ENGI 7824
ECE 8610 Filter Synthesis

(same as the former ENGI 8826) introduces analog filters. Topics include transfer functions and frequency response of filters; design of first order passive and active filters; design and analysis of filter circuits such as biquad circuit, Sallen-Key circuit, multiple feedback circuit and state variable filter; RC-CR transformation; cascade design principle; design of Butterworth, Chebyshev and elliptic filters, Bessel-Thomson filters, switched capacitor filters; and the use of Matlab for design of analog filters.

CR:
the former ENGI 8826
LH:
at least four 3-hour sessions per semester
PR:
ECE 5300 or the former ENGI 5854
ECE 8620 Wireless and Mobile Communications

(same as the former ENGI 8804, the former ENGI 8877) covers the fundamentals and main concepts of wireless and mobile communication systems focusing on the system level design and performance. Main topics to be covered include Introduction to Wireless Communication Systems, Wireless Channel Models, Frequency Reuse Concept, Wireless Multiple Access Techniques (TDMA, FDMA, CDMA), Orthogonal Frequency Division Multiplexing (OFDM), Wireless Systems (GSM, 3G, LTE, etc.).

CR:
the former ENGI 8804, the former ENGI 8877
PR:
ECE 6600 or the former ENGI 6871, ECE 6610 or the former ENGI 6876
ECE 8630 Introduction to the Internet of Things

introduces the architectures, protocols, standards, and applications of the Internet of Things (IoT). Topics include: IoT concepts, architectures, and standards, communication and networking, computing and IoT data management, security and privacy, IoT applications, digital twins, and next generation cellular networks and their impact on IoTs. Through this course, students will be able to understand the key challenges of the IoT systems and develop proper conceptual and technological solutions to real-world problems.

LH:
at least four 3-hour sessions per semester
PR:
ECE 4510, ECE 5610
ECE 8700 Antennas

(same as the former ENGI 7811) examines the fundamentals of electromagnetic radiation; potentials; small antennas and antenna parameters; thin linear wire antennas and antenna arrays; antenna impedance and ground effects; Friis transmission formula; and aperture antennas.

CR:
the former ENGI 7811
LH:
three 3-hour simulation and demonstration sessions per semester
OR:
tutorial 1 hour per week
PR:
ECE 6700 or the former ENGI 6813
ECE 8800 Power System Operation

(same as the former ENGI 8845) examines symmetrical components; power system fault analysis; power system stability; and power system protection.

CR:
the former ENGI 8845
LH:
four 3-hour sessions per semester
PR:
ECE 7800 or the former ENGI 7844
ECE 8900-8949 Special Topics in Computer Engineering

will have topics to be studied announced by the Department.

ECE 8950-8999 Special Topics in Electrical Engineering

will have topics to be studied announced by the Department.

AR = Attendance requirement as noted.

CH = Credit hours: unless otherwise noted, a course normally has a credit value of 3 credit hours.

CO = Co-requisite(s): course(s) listed must be taken concurrently with or successfully completed prior to the course being described.

CR = Credit restricted: The course being described and the course(s) listed are closely related but not equivalent.  Credit is limited to one of these courses.  Normally, these courses cannot be substituted, one for the other, to satisfy program requirements.

EQ = Equivalent: the course being described and the course(s) listed are equal for credit determination.  Credit is limited to one of these courses.  These courses can be substituted, one for the other, to satisfy program requirements.

LC = Lecture hours per week: lecture hours are 3 per week unless otherwise noted.

LH = Laboratory hours per week.

OR = Other requirements of the course such as tutorials, practical sessions, or seminars.

PR = Prerequisite(s): course(s) listed must be successfully completed prior to commencing the course being described.

UL = Usage limitation(s) as noted.