Courses

Intro to Compilers: Optimization

This course covers advanced topics in compiler optimization: dataflow analysis and pointer analysis to perform global optimizations, and both low-level loop transformations such as loop-invariant code motion and high-level loop transformations such as loop tiling. The course also explains how compiler generate code for pointers and arrays. Students will build a compiler that performs a basic pointer analysis.

Read More…

Intro to Data Mining

This course introduces fundamental techniques in data mining, i.e., the techniques that extract useful knowledge from a large amount of data. Topics include data preprocessing, exploratory data analysis, association rule mining, clustering, classification, anomaly detection, recommendation and graph analysis. Students are expected to gain the skills to formulate data mining problems, solve the problems using data mining techniques and interpret the output.

Read More…

Intro to Electronics Packaging and Heterogeneous Integration

This course leverages both theoretical and laboratory-based instruction methods to introduce concepts needed for an introductory understanding of the design and characterization of modern electronic packages. The course is based on a 15-week online module delivery format for both lectures and labs.

Read More…

Intro to Quantum Science & Tech

This course introduces basic laws of quantum mechanics and provides an introduction to revolutionary quantum technologies. The boundary between classical and quantum physics, quantization of EM field and its consequences, quantum electromagnetic and atomic physics, and their applications in quantum communication, quantum computations, and quantum sensing are discussed. The course will allow students to develop a conceptual understanding of quantum phenomena and identifies engineering challenges of various quantum technologies.

Read More…

Introduction to Deep Learning

Read More…

Quantum Computing I: Fundamentals

This fundamentals course is part 1 of the series of quantum computing courses and covers aspects from fundamentals to present-day hardware platforms to quantum software and programming. This course provides the essential foundations required to understand computing models built from the principles of quantum mechanics.
This course requires a minimal set of engineering and science prerequisites but will allow students to develop a physical and intuitive understanding of the topics.

Read More…

Quantum Computing II: Hardware

This course is part 2 of the series of Quantum computing courses, which covers aspects from fundamentals to present-day hardware platforms to quantum software and programming.
The goal of part 2 is to provide the essential understanding of how the fundamental quantum phenomena discussed in part 1 can be realized in various material platforms and the underlying challenges faced by each platform. To this end, we will focus on how quantum bits (qubits, the building block of quantum information processing) can be defined in each platform, how such qubits are manipulated and interconnected to form larger systems, and the sources of errors in each platform.

Read More…

Semiconductor Fundamentals

Semiconductors are everywhere - inside smartphones and tablet computers, powering the Internet and communications satellites, generating electricity from the sun, and much more. This gentle introduction to semiconductor physics, chemistry, and materials science provides the background needed to understand the operation of devices such as transistors and solar cells.

Read More…

Stories of Success: From our Alums and Corporate Partners

Read More…

Random Variables and Signals

Engineering applications of probability theory; problems on events, independence, random variables, probability distribution and density functions, expectations, and characteristic functions; dependence, correlation, and regression multivariate Gaussian distribution; stochastic processes, stationarity, ergodicity, correlation functions, spectral densities, random inputs to linear systems; Gaussian processes.

Read More…

Lumped System Theory

This course provides an introduction to the fundamentals of modern control theory for linear dynamical systems. The course adopts the state-space method that builds upon the classical transfer function methods covered in undergraduate feedback control courses. The state-space framework is used in modeling and controller design for systems arising in many engineering and non-engineering disciplines.

Read More…

Electromagnetic Field Theory

Review of general concepts (Maxwell's equations, materials interaction, boundary conditions, energy flow). Statics (Laplace's equation, Poisson's equation). Distributed parameter systems (classification of solutions, transmission lines, and waveguides). Radiation and antennas (arrays, reciprocity, Huygen's principles). A selected special topic (e.g. waves in anisotropic media and optical fibers).

Read More…

Primer on RF Design

This 1-credit-hour course covers the fundamentals of RF design. It is designed as a first course for students or engineers with limited background in high-frequency electronics. Engineers that need to understand the 'RF language' and gain working knowledge of critical RF concepts will benefit from taking this course. Students in this class will learn the basic RF tools and design principles. By the end of this class students will be able to understand important RF concepts and how these are related to the design of practical RF blocks.

Read More…

RF System Design

Read More…

RF Design: Passive Active Components

Following the 'Primer on RF Design' course, this class focuses on passive and active components. We use the techniques learnt in the previous course, to design advanced RF devices including couplers, filters and amplifiers. Current research topics are discussed as appropriate.

Read More…

Solid-State Devices

This course provides a relatively broad, moderate-depth coverage of semiconductor devices and related topics. The first portion of the course presents and examines semiconductor fundamentals required in the operational analysis of solid-state devices. A detailed examination of the PN junction diode and PN junction devices follows. The final portion of the course treats heterojunction surface devices including the Schottky diode, the MOS capacitor and the MOSFET.

Read More…

Computational Models and Methods

Fundamental knowledge regarding algorithm design that is needed in more advanced courses in the computer engineering area; emphasizes understanding the classes of problems that can be solved by computers and quantifying the performance of algorithms used to solve such problems.

Read More…

Programmable Accelerator Architectures

Programmable hardware accelerators seek to fulfill the promise of continued performance and energy-efficiency gains in the era of a slowing Moore's law, larger problem sizes and an increased focused on energy-efficiency. These factors have caused hardware acceleration to become ubiquitous in today's computing world and critically important in computing's future.

Read More…

Energy Conversion

Electric machines are a technology of choice in many modern energy conversion applications, including propulsion for hybrid-electric vehicles, wind energy generation, and flywheel energy storage systems. Interest in machines is steadily increasing due in large part to the flexibility of controls offered by modern computers and power electronic devices. In this course, the tools required for analysis and design of electromechanical energy conversion are developed. Upon completion of the course, a student?s engineering toolbox should contain 1) an understanding of the basic principles of static and electromechanical energy conversion, 2) methods to control static power converters, 3) knowledge of the use of reference frame theory applied to the analysis of rotating devices, 4) an understanding of the steady-state and dynamic characteristics of induction, permanent magnet synchronous, and wound-rotor synchronous machines, and 5) state variable analysis of electromechanical devices and converter supplied electromechanical drive systems.

Read More…

Time Domain Simulation and Optimization for Design

This skills course teaches time domain simulation and multi-objective design optimization. This course will serve the needs of ECE students in power and energy system and component design but is widely applicable to all areas of engineering and does not require domain specific knowledge

Read More…