Courses

ECE241H1 - Digital Systems

Credit Value: 0.50
Hours: 38.4L/15P

Digital logic circuit design with substantial hands-on laboratory work. Algebraic and truth table representation of logic functions and variables. Optimizations of combinational logic, using "don't cares." Multi-level logic optimization. Transistor-level design of logic gates; propagation delay and timing of gates and circuits. The Verilog hardware description language. Memory in digital circuits, including latches, clocked flip-flops, and Static Random Access Memory. Set-up and hold times of sequential logic. Finite state machines - design and implementation. Binary number representation, hardware addition and multiplication. Tri-state gates, and multiplexers. There is a major lab component using Field-Programmable Gate Arrays (FPGAs) and associated computer-aided design software.

Total AUs: 50.9 (Fall), 50.9 (Winter), 101.8 (Full Year)

ECE243H1 - Computer Organization

Credit Value: 0.50
Hours: 38.4L/38.4P

Basic computer structure. Design of central processing unit. Hardwired control. Input-output and the use of interrupts. Assembly language programming. Main memory organization and caches. Peripherals and interfacing. System design considerations. The laboratory will consist of experiments involving logic systems and microprocessors and a large open project. Design activity constitutes a major portion of laboratory work.

Total AUs: 54.9 (Fall), 54.9 (Winter), 109.8 (Full Year)

ECE244H1 - Programming Fundamentals

Credit Value: 0.50
Hours: 38.4L/12.8T/25.6P

Provides a foundation in programming using an object-oriented programming language. Topics include: classes and objects, inheritance, exception handling, basic data structures (linked lists, binary trees, and hash tables), big-O complexity analysis, and testing and debugging. The laboratory assignments emphasize the use of object-oriented programming constructs in the design and implementation of reasonably large programs.



Prerequisite: APS105H1
Total AUs: 53.8 (Fall), 53.8 (Winter), 107.6 (Full Year)

ECE253H1 - Digital and Computer Systems

Credit Value: 0.50
Hours: 38.4L/38.4P

Digital system design principles. Logic circuits, logic synthesis. Registers, arithmetic circuits, counters, finite state machines, and programmable logic devices. Verilog hardware description language. Computer structure, machine language instruction execution and sequencing, addressing techniques. Processors, input/output techniques, and memory hierarchy. The laboratory work consists of exercises involving the design of logic circuits, and microprocessor systems. Modern computer-aided design tools and FPGA technology are used. Design aspects constitute a major portion of laboratory work.

Exclusion: ECE241H1
Total AUs: 54.9 (Fall), 54.9 (Winter), 109.8 (Full Year)

ECE259H1 - Electromagnetism

Credit Value: 0.50
Hours: 38.4L/12.8T

The fundamental laws of electromagnetics are covered; including Coulomb's law, Gauss' law, Poisson's and Laplace's equations, the Biot-Savart's law, Ampere's law, Faraday's law, and Maxwell's equations. Vector calculus is applied to determine the relationship between the electric and magnetic fields and their sources (charges and currents). Field-matter interaction is studied, including polarization in dielectric materials and magnetization in magnetic materials. Circuit elements such as the resistor, capacitor and inductor are introduced from an electromagnetic point of view. Other topics include: electric and magnetic forces, the electric potential, capacitance and inductance, electric and magnetic energy, magnetic circuits, boundary-value problems and transmission-lines.

Prerequisite: ECE159H1, AER210H1
Exclusion: MAT291H1/ECE221H1
Recommended Preparation: MAT292H1 and MAT185H1
Total AUs: 42.7 (Fall), 42.7 (Winter), 85.4 (Full Year)

ECE286H1 - Probability and Statistics

Credit Value: 0.50
Hours: 38.4L/12.8T

A course in probability and statistics for Engineering Science students focusing on building solid probabilistic and statistical foundations both mathematically and in terms of engineering application. Topics include: sample space, events, definitions of probability, conditional probability, Bayes' theorem, important classes of discrete and continuous random variables and their distributions, joint, conditional, and marginal distributions, expectation, moment generating and characteristic functions, transformations of random variables, central limit theorem and approximations. Graphical methods, quantile plots, point and interval estimation of population parameters, method of maximum likelihood. Hypothesis testing, simple and multiple regression, correlation analysis, and introduction to Bayesian statistics.

Exclusion: CHE223H1, CME263H1, MSE238H1, MIE236H1, MIE237H1, MIE231H1, STA286H1 or STA257H1
Total AUs: 42.7 (Fall), 42.7 (Winter), 85.4 (Full Year)

ECE295H1 - Hardware Design and Communication

Credit Value: 0.50
Hours: 25.6L/12.8T/12.8P

Introduction to engineering design processes for hardware systems. In addition to familiarizing students with hardware design practices, tools, and skill sets, it also aims to develop effective oral and written communication in a team context. Principles of engineering design, project management and teamwork are developed and applied as students work in teams to create and implement a complex hardware system comprising analog and digital electronic circuits. Students learn how to synthesize, prototype, and assemble designs realized using printed circuit board technology, as well as how to test them using modern measurement equipment. They learn about computer-aided design (CAD) and other development tools including those for electronic circuit simulation, schematic capture, board layout, version control (git), and instrument control. Students develop and apply communication skills by preparing a variety of documents and presentations, including proposals, status reports, design reviews, and presentations. ​

Prerequisite: ECE231H1, ECE241H1, APS105H1
Corequisite: ECE212H1
Exclusion: ECE297H1
Total AUs: 36.6 (Fall), 36.6 (Winter), 73.2 (Full Year)

ECE297H1 - Software Design and Communication

Credit Value: 0.50
Hours: 38.4L/12.8T/25.6P

An introduction to engineering design processes, illustrated by the design and implementation of a software system, and to effective oral and written communication in a team context. Principles of software design, project management and team work are developed in the lectures and tutorials, and students apply these concepts in the laboratories as they work in a team to design and implement a complex software system. Students learn and practice oral and written communication techniques in lectures and in meetings with their communication instructor, and apply these techniques in a variety of documents and presentations, such as short status reports and longer design proposals and design reviews. Students learn software development tools such as version control (git), debuggers, code verifiers and unit test frameworks and gain experience in graphical user interface design and algorithm development.

Prerequisite: APS105H1, ECE244H1
Exclusion: ECE295H1
Total AUs: 47.2 (Fall), 47.2 (Winter), 94.4 (Full Year)

ECE302H1 - Probability and Applications

Credit Value: 0.50
Hours: 38.4L/25.6T

Events, sample space, axioms of probability. Discrete and continuous random variables, distribution and density functions. Bernoulli trials, Binomial, geometric, Poisson, exponential and Gaussian distributions.
Expectation, moments, characteristic function and correlation coefficient. Functions of random variables. Random vectors, joint distributions, transformations. Applications will be chosen from communication theory, estimation and hypothesis testing, predictive analytics and other areas of electrical and computer engineering.

Prerequisite: MAT290H1 and MAT291H1 and ECE216H1
Exclusion: ECE286H1
Total AUs: 48.1 (Fall), 48.1 (Winter), 96.2 (Full Year)

ECE311H1 - Introduction to Control Systems

Credit Value: 0.50
Hours: 38.4L/12.8T/19.2P

An introduction to dynamic systems and their control. Differential equation models of mechanical, electrical, and electromechanical systems. State variable form. Linearization of nonlinear models and transfer functions. Use of Laplace transform to solve ordinary differential equations. Conversion of models from state variable form to transfer function representation and vice versa. Block diagrams and their manipulation. Time response: transient analysis and performance measures. Properties of feedback control systems. Steady state tracking:the notion of system type. The concept of stability of feedback systems, Routh-Hurwitz stability criterion. Frequency response and stability in the frequency domain. Root locus. Bode and Nyquist plots and their use in feedback control design.

Prerequisite: MAT290H1, MAT291H1, ECE216H1
Total AUs: 51.9 (Fall), 51.9 (Winter), 103.8 (Full Year)

ECE313H1 - Energy Systems and Distributed Generation

Credit Value: 0.50
Hours: 38.4L/12.8T/19.2P

Three-phase systems; steady-state transmission line model; symmetrical three-phase faults; power system stability; symmetrical components; unsymmetrical faults and fault current calculation; distribution network; equivalent steady-state model of voltage-sourced converter; distributed energy resources (DR); distributed energy storage; interface between DR and power system.

Exclusion: ECE413H1
Total AUs: 51.9 (Fall), 51.9 (Winter), 103.8 (Full Year)

ECE314H1 - Fundamentals of Electrical Energy Systems

Credit Value: 0.50
Hours: 38.4L/12.8T/19.2P

High-efficiency energy conversion via switched-mode power electronic circuits: design and steady-state modeling of DC/DC converters, DC/AC converters using pulse-width modulation. Transistor switch realization and basic efficiency analysis in power electronic converters. AC power quality and power factor, including non-sinusoidal currents. Energy conversion via magnetic devices: Faraday's law for time varying fields, characterization of hysteresis and eddy current losses in magnetic materials, modelling of magnetic circuits, transformer and inductor modelling and design. Introduction to electromechanical energy conversion: Lorentz Force, concepts of energy, co-energy, forces between ferromagnetic materials carrying flux, simple magnetic actuators, introduction to synchronous machines.

Prerequisite: ECE212H1 and ECE221H1 and ECE231H1
Exclusion: ECE349H1
Total AUs: 51.9 (Fall), 51.9 (Winter), 103.8 (Full Year)

ECE316H1 - Communication Systems

Credit Value: 0.50
Hours: 38.4L/12.8T/19.2P

An introductory course in analog and digital communication systems. Analog and digital signals. Signal representation and Fourier transforms; energy and power spectral densities; bandwidth. Distortionless analog communication; amplitude, frequency and phase modulation systems; frequency division multiplexing. Sampling, quantization and pulse code modulation (PCM). Baseband digital communication; intersymbol interference (ISI); Nyquist's ISI criterion; eye diagrams. Passband digital communications; amplitude-, phase- and frequency-shift keying; signal constellations. Performance analysis of analog modulation schemes in the presence of noise. Performance analysis of PCM in noise.

Prerequisite: (MAT290H1, ECE216H1) /(MAT389H1, ECE355H1)
Total AUs: 50.9 (Fall), 50.9 (Winter), 101.8 (Full Year)

ECE318H1 - Fundamentals of Optics

Credit Value: 0.50
Hours: 38.4L/12.8T/19.2P

Geometric Optics: Spherical surfaces, lenses and mirrors, optical imaging systems, matrix method, and aberrations. Polarization: Polarizer and polarizations, anisotropic materials, dichroism, birefringence, index ellipsoid, waveplates, optical activity, Faraday effect. Interference: superposition of waves, longitudinal and transverse coherence, Young's double-slit experiment, Michelson and Fabry-Perot interferometer, thin-films. Diffraction and Fourier Optics: diffraction theory, single and double slits, diffraction gratings, spatial filtering, basic optical signal processing. (Background preparation in ECE320H1 F - Fields and Waves, or ECE357H1 S - Electromagnetic Fields, is strongly recommended.)

Prerequisite: ECE221H1 or ECE259H1
Total AUs: 51.9 (Fall), 51.9 (Winter), 103.8 (Full Year)

ECE320H1 - Fields and Waves

Credit Value: 0.50
Hours: 38.4L/12.8T/19.2P

Voltage and current waves on a general transmission line, characteristic impedance, reflections from the load and source, transients on a transmission line, Smith's chart and impedance matching. Maxwell's equations, wave equation, constitutive relations, dispersion, boundary conditions. Plane wave propagation in lossless and lossy media, polarization, power flow and Poynting vector. Plane wave reflection and transmission at material boundaries. Waveguides; propagating and evanescent waveguide modes and cut-off frequencies.

Prerequisite: ECE221H1
Total AUs: 50.9 (Fall), 50.9 (Winter), 101.8 (Full Year)

ECE324H1 - Machine Intelligence, Software and Neural Networks

Credit Value: 0.50
Hours: 38.4L/12.8T

An introduction to machine learning engineering, with a focus on neural networks. The entire process of developing a machine learning solution, from data collection to software development, as well as ethics in machine learning, will be discussed. Practical techniques in machine learning will be covered, including data augmentation and the use of pre-trained networks. Topics covered will include the fundamentals of neural networks, convolutional neural networks, recurrent neural networks, generative adversarial networks and transformer networks. Students will complete a major hands-on project in machine learning.

Prerequisite: ESC190H1, ECE286H1, ECE421H1
Exclusion: APS360H1
Total AUs: 42.7 (Fall), 42.7 (Winter), 85.4 (Full Year)

ECE326H1 - Programming Languages

Credit Value: 0.50
Hours: 38.4L/12.8T/19.2P

Study of programming styles and paradigms. Included are object-oriented scripting functional and logic-based approaches. Languages that support these programming styles will be introduced. Languages treated include Python, Lisp or Scheme and Prolog.

Exclusion: CSC324H1, CSC326H1
Total AUs: 51.9 (Fall), 51.9 (Winter), 103.8 (Full Year)

ECE330H1 - Quantum and Semiconductor Physics

Credit Value: 0.50
Hours: 38.4L/25.6T

The course introduces the principles of quantum physics and uses them to understand the behaviour of semiconductors. Topics to be covered include wave-particle duality, Schrodinger's equation, energy quantization, quantum mechanical tunnelling, electrons in crystalline semiconductors and other physical concepts that form the basis for nanotechnology, microelectronics, and optoelectronics.

Prerequisite: ECE221H1/ECE231H1
Exclusion: MSE235H1
Total AUs: 48.8 (Fall), 48.8 (Winter), 97.6 (Full Year)

ECE331H1 - Analog Electronics

Credit Value: 0.50
Hours: 38.4L/12.8T/19.2P

Transistor amplifiers with an emphasis on integrated circuit (IC) design. Building blocks include differential and multistage amplifiers, IC biasing techniques, and output stage design. Frequency response of amplifiers at low, medium and high frequencies. Feedback amplifier analysis. Stability and compensation techniques for amplifiers using negative feedback.

Prerequisite: ECE212H1 and ECE231H1
Total AUs: 50.9 (Fall), 50.9 (Winter), 101.8 (Full Year)

ECE334H1 - Digital Electronics

Credit Value: 0.50
Hours: 38.4L/12.8T/19.2P

Digital design techniques for integrated circuits. The emphasis will be on the design of logic gates at the transistor level. A number of different logic families will be described, but CMOS will be emphasized. Review of: device modeling, IC processing, and Spice simulation, simplified layout rules, inverter noise margins, transient response, and power dissipation, traditional CMOS logic design, transmission gates, RC timing approximations, input-output circuits, latches and flipflops, counters and adders, decoders and muxes, dynamic gates, SRAMs, DRAMs, and EEPROMs.

Prerequisite: ECE241H1 and ECE231H1 or ECE253H1 and ECE360H1
Total AUs: 51.9 (Fall), 51.9 (Winter), 103.8 (Full Year)

ECE335H1 - Introduction to Electronic Devices

Credit Value: 0.50
Hours: 38.4L/25.6T

Electrical behaviour of semiconductor structures and devices. Metal-semiconductor contacts; pn junctions, diodes, photodetectors, LED's; bipolar junction transistors, Ebers-Moll and hybrid-pi models; field effect transistors, MOSFET, JFET/MESFET structures and models; thyristors and semiconductor lasers.

Prerequisite: MAT291H1 and ECE221H1 and ECE231H1
Exclusion: MSE335H1
Total AUs: 48.8 (Fall), 48.8 (Winter), 97.6 (Full Year)

ECE342H1 - Computer Hardware

Credit Value: 0.50
Hours: 38.4L/38.4P

Design of digital hardware components and embedded systems. Finite state machines and the algorithmic state machine representation. Timing analysis of single and multi-clock designs. Numeric representation and arithmetic circuits: binary addition, subtraction, multiplication and division; IEEE 754 floating point representation. Introduction to hardware architecture of embedded systems; on-chip buses, particularly the AMBA/AXI standard. Processor design and pipelining. Memory types, interfacing and direct memory access. Off-chip peripherals and communication protocols.

Prerequisite: ECE241H1, ECE243H1
Total AUs: 54.9 (Fall), 54.9 (Winter), 109.8 (Full Year)

ECE344H1 - Operating Systems

Credit Value: 0.50
Hours: 38.4L/38.4P

Operating system structures, concurrency, synchronization, deadlock, CPU scheduling, memory management, file systems. The laboratory exercises will require implementation of part of an operating system.

Prerequisite: ECE244H1 and ECE243H1
Exclusion: ECE353H1
Total AUs: 50.9 (Fall), 50.9 (Winter), 101.8 (Full Year)

ECE345H1 - Algorithms and Data Structures

Credit Value: 0.50
Hours: 38.4L/25.6T

Design and analysis of algorithms and data structures that are essential to engineers in every aspect of the computer hardware and software industry. Recurrences, asymptotics, summations, trees and graphs. Sorting, search trees and balanced search trees, amortized analysis, hash functions, dynamic programming, greedy algorithms, basic graph algorithms, minimum spanning trees, shortest paths, introduction to NP completeness and new trends in algorithms and data structures.

Prerequisite: ECE244H1 or equivalent with the permission of the Chair of the AI certificate/minor.
Total AUs: 48.1 (Fall), 48.1 (Winter), 96.2 (Full Year)

ECE349H1 - Introduction to Energy Systems

Credit Value: 0.50
Hours: 38.4L/12.8T/19.2P

Design and steady-state modeling of DC/DC and DC/AC (single- and three-phase) converters using modified-square-wave and pulse-width modulation. Three-phase, balanced connections and analysis of harmonics via superposition. Modeling of non-ideal components in power electronic converters to determine practical conversion ratios and efficiency. Energy conversion based on magnetic field interactions: Faraday's law for time varying fields, characterization of primary loss mechanisms (hysteresis and eddy currents) in magnetic materials, magnetic circuit analysis, transformer and inductor modeling and design. Introduction to electromechanical energy conversion: Lorentz Force, calculation of electromechanical forces in conservative systems using energy and co-energy, simple magnetic actuators and sensors, introduction to synchronous machines.

Prerequisite: ECE259H1
Exclusion: ECE314H1
Total AUs: 51.9 (Fall), 51.9 (Winter), 103.8 (Full Year)

ECE350H1 - Semiconductor Electronic Devices

Credit Value: 0.50
Hours: 38.4L/12.8T/19.2P

An explanation of the basic operation, design and limitations of semiconductor electronic devices, such as diodes and transistors. The topics covered include: electrons in semiconductors, semiconductors in equilibrium, transport of carriers, p-n diodes, metal-semiconductor contacts, bipolar junction transistors, metal-oxide-semiconductor (MOS) capacitors, and MOS field effect transistors. In addition, optoelectronic devices (e.g. photodiodes, light emitting diodes and lasers), semiconductor heterostructures, nanostructures (quantum dots, qubits) and transistor scaling will be discussed.

Prerequisite: PHY294H1
Exclusion: ECE335H1, ECE330H1
Total AUs: 51.9 (Fall), 51.9 (Winter), 103.8 (Full Year)

ECE352H1 - Computer Organization

Credit Value: 0.50
Hours: 38.4L/38.4P

A continuation of some of the topics introduced in ECE253H1. Embedded system design: Input-output and the use of interrupts, peripherals and interfacing. Processor design: pipelining, integer and floating point arithmetic, cache hierarchies and memory organization. Design of combinational and sequential circuits in Verilog.

Prerequisite: ECE253H1
Exclusion: ECE342H1
Total AUs: 54.9 (Fall), 54.9 (Winter), 109.8 (Full Year)

ECE353H1 - Systems Software

Credit Value: 0.50
Hours: 38.4L/38.4P

Operating system structure, processes, threads, synchronization, CPU scheduling, memory management, file systems, input/output, multiple processor systems, virtualization, protection, and security. The laboratory exercises will require implementation of part of an operating system.

Prerequisite: ESC190H1
Exclusion: ECE344H1, CSC369H1
Total AUs: 54.9 (Fall), 54.9 (Winter), 109.8 (Full Year)

ECE354H1 - Electronic Circuits

Credit Value: 0.50
Hours: 38.4L/12.8T/19.2P

A course on analog and digital electronic circuits. Topics include single-stage amplifiers, current mirrors, cascode amplifiers and differential pairs. Amplifier frequency response, feedback and stability are also covered. Digital CMOS logic circuits are introduced.

Prerequisite: ECE360H1
Exclusion: ECE331H1
Total AUs: 51.9 (Fall), 51.9 (Winter), 103.8 (Full Year)

ECE355H1 - Signal Analysis and Communication

Credit Value: 0.50
Hours: 38.4L/25.6T

An introduction to continuous-time and discrete-time signals and systems. Topics include characterization of linear time-invariant systems, Fourier analysis, linear filtering, sampling of continuous-time signals, and modulation techniques for communication systems.

Prerequisite: ECE286H1
Exclusion: ECE216H1
Total AUs: 48.8 (Fall), 48.8 (Winter), 97.6 (Full Year)