Skip to main content

Undergraduate Courses


  • Cat. I (1/6 unit semester course, spread out evenly over A and B terms) This is a seminar-based course intended for First Year students seeking to understand the breadth of activities, career choices and technology that are considered to comprise Electrical and Computer Engineering. Students considering ECE as a major, both those who are “decided” as well as those who are “undecided” should enroll in ECE 1799. The class meets once a week during the fall semester (A & B terms). Note: There are no “recommended” or “suggested” courses for this description.


  • The objective of this course is to introduce students to the broad field of electrical and computer engineering within the context of real world applications. This course is designed for first-year students who are considering ECE as a possible major or for non-ECE students fulfilling an out-of-major degree requirement. The course will introduce basic electrical circuit theory as well as analog and digital signal processing methods currently used to solve a variety of engineering design problems in areas such as entertainment and networking media, robotics, renewable energy and biomedical applications. Laboratory experiments based on these applications are used to reinforce basic concepts and develop laboratory skills, as well as to provide system-level understanding. Circuit and system simulation analysis tools are also introduced and emphasized. Topics: Basic concepts of AC/DC and Digital electrical circuits, power, linear circuit simulation and analysis, op-amp circuits, transducers, feedback, circuit equivalents and system models, first order transients, the description of sinusoidal signals and system response, analog/digital conversion, basic digital logic gates and combinatorial circuits. Recommended Background: high school physics, and MA 1022 (concurrent).


  • Cat. I This course investigates commonly used sensors such as resistive temperature sensors, capacitive touch sensors, and inductive motion sensors and actuators. Numerous applications are presented to motivate coverage of fundamental operating principles of circuit elements such as resistors, capacitors, and inductors; model the signals produced by these sensors; and analyze the circuits and systems used to amplify and process these signals. After a review of Kirchhoff ‘s current and voltage laws, fundamental analysis techniques such as Thevenin and Norton’s theorems and the superposition principle are used to model and analyze sensors, circuits, and systems. Concepts from analysis of linear, time-invariant continuous-time signals and systems are introduced as necessary, including Fourier series and characterization of systems such as filters in both the frequency domain (bandwidth, transfer function) and time domain (rise time, step response). Capacitance, inductance and mutual inductance are explored as energy storage elements, including consideration of resonance and energy losses in power systems. Concepts will be reinforced with the use of laboratory exercises and computer simulation. Recommended background: ECE 2010, MA 1024 (or equivalent), PH 1120/21 and MA 2051 (concurrent) Note: Students who have received credit for ECE 2111 may not receive credit for ECE 2019.


  • Cat. I Digital circuits are the foundation upon which the computers, cell phones, and calculators we use every day are built. This course explores these foundations by using modern digital design techniques to design, implement and test digital circuits ranging in complexity from basic logic gates to state machines that perform useful functions like calculations, counting, timing, and a host of other applications. Students will learn modern design techniques, using a hardware description language (HDL) such as Verilog to design, simulate and implement logic systems consisting of basic gates, adders, multiplexers, latches, and counters. The function and operation of programmable logic devices, such as field programmable gate arrays (FPGAs), will be described and discussed in terms of how an HDL logic design is mapped and implemented. Experiments involving the design of combinational and sequential circuits will provide students a hands-on introduction to basic digital electrical engineering concepts and the skills needed to gain more advanced skills. In the laboratory, students will construct, troubleshoot, and test the digital circuits that they have developed using a hardware description language. These custom logic designs will be implemented using FPGAs and validated using test equipment. Topics: Number representations, Boolean algebra, design and simplification of combinational circuits, arithmetic circuits, analysis and design of sequential circuits, and synchronous state machines. Lab exercises: Design, analysis and construction of combinational and sequential circuits; use of hardware description languages to implement, test, and verify digital circuits; function and operation of FPGAs. Recommended background: Introductory Electrical and Computer Engineering concepts covered in a course such as ECE 2010 or RBE 1001, and MA 1022. Note: Students will not be able to receive credit for both ECE 2022 and ECE 2029.


  • Cat. I Embedded computers are literally everywhere in modern life. On any given day we interact with and depend on dozens of small computers to make coffee, run cell phones, take pictures, play music, control elevators, manage the emissions and antilock brakes in our automobile, control a home security system, and so on. Using popular everyday devices as case studies, students in this course are introduced to the unique computing and design challenges posed by embedded systems. Students will then solve real-world design problems using small, resource constrained (time/memory/power) computing platforms. The hardware and software structure of modern embedded devices and basic interactions between embedded computers and the physical world will also be covered in lecture and as part of laboratory experiments. In the laboratory, emphasis is placed on interfacing embedded processors with common sensors and devices (e.g. temperature sensors, keypads, LCD display, SPI ports, pulse width modulated motor controller outputs) while developing the skills needed to use embedded processors in systems design. This course is also appropriate for RBE and other engineering and CS students interested in learning about embedded system theory and design. Topics: Number/data representations, embedded system design using C, microprocessor and microcontroller architecture, program development and debugging tools for a small target processor, hardware/software dependencies, use of memory mapped peripherals, design of event driven software, time and resource management, applications case studies. Lab Exercises: Students will solve commonly encountered embedded processing problems to implement useful systems. Starting with a requirements list students will use the knowledge gained during the lectures to implement solutions to problems which explore topics such as user interfaces and interfacing with the physical world, logic flow, and timing and time constrained programming. Exercises will be performed on microcontroller and/or microprocessor based embedded systems using cross platform development tools appropriate to the target platform. Recommended Background: ECE 2010 or equivalent knowledge in basic circuits, devices and analysis; and C language programming (CS 2301 or equivalent) Suggested Background: ECE 2029 or equivalent knowledge of digital logic, logic signals and logic operations; Note: Students who have received credit for ECE 2801 may not receive credit for ECE 2049.


  • Cat. I The object of this course is a comprehensive treatment of electromagnetic engineering principles covering the entire application spectrum from static to dynamic field phenomena. The starting point will be the basic electric and magnetic field definitions of Coulomb and Biot-Savart leading to Gauss’s and Ampere’s laws. They form the foundation of electro- and magnetostatics fields. Students will examine capacitive and inductive systems and relate them to lumped element circuit models. By introducing tempora l and spatial magnetic flux variations, Faraday’s law is established. The engineering implications of this law are investigated in terms of transformer and motor actions. Incorporation of the displacement current density into Ampere’s law and combining it with Faraday’s law will then culminate in the complete set of Maxwell’s field equations. As a result of these equations, students will develop the concept of wave propagation in the time and frequency domain with practical applications such as wireless communication, radar, Global Positioning Systems, and microwave circuits. Recommended background: ECE 2019.


  • Cat. I This course is the first of a two-course sequence in electronic circuit design. It begins with a substantive treatment of the fundamental behavior of semiconductor materials and moves on to the semiconductor diode, the bipolar transistor, and the field-effect transistor. Laboratory exercises are provided to reinforce the theory of operation of these devices. Numerous circuit applications are considered, including: power supplies, transistor amplifiers, and FET switches. Topics include: the pn junction, diode operation, transducers, rectification, voltage regulation, limiting and clamping circuits, transistor operation, biasing, small-signal and large-signal models, transistors amplifiers, and switching applications. Recommended background: ECE 2019.


  • Cat. I This course provides an introduction to the broad area of communications and networking, providing the context and fundamental knowledge appropriate for all electrical and computer engineers, as well as for further study in this area. The course is organized as a systems approach to communications and networking. Topics include key concepts and terminology (delay, loss, throughput, bandwidth, etc.), types of transmission media, addressing, switching, routing, networking principles and architectures, networking protocols, regulatory and applications issues. Recommended background: ECE 2010.


  • Cat. I This course provides an introduction to time and frequency domain analysis of continuous time signals and linear systems. Topics include signal characterization and operations; singularity functions; impulse response and convolution; Fourier series; the Fourier transform and its applications; frequency-domain characterization of linear, time-invariant systems such as filters; and the Laplace transform and its applications. Recommended background: MA 2051, ECE 2019 and a prior course in computer programming such as CS 2301 or CS 1101/2/4.


  • Cat. I This course provides an introduction to the time and frequency domain analysis of discrete-time signals and linear systems. Topics include sampling and quantization, characterization of discrete-time sequences, the discrete-time Fourier transform, the discrete Fourier transform and its applications, the Z transform and its applications, convolution, characterization of FIR and IIR discrete-time systems, and the analysis and design of discrete-time filters. The course will include a focus on applications such as sampling and quantization, audio processing, navigation systems, and communications. Extensive use will be made of simulation tools including Matlab. Recommended background: MA 2051, ECE 2311 and a prior course in computer programming such as CS 2301 or CS 1101/2/4.


  • Cat. I The goal of this course is to provide experience with the design of a system, component, or process. Basic sciences, mathematics, and engineering sciences are applied to convert resources to meet a stated objective. Fundamental steps of the design process are practiced, including the establishment of objectives and criteria, synthesis, analysis, manufacturability, testing, and evaluation. Student work in small teams and are encouraged to use creativity to solve specific but open-ended problems, and then present their results. ECE 2799 is strongly recommended for all students as a preparation for the design element of the MQP. It is anticipated that ECE 2799 will be of most benefit to students when taken well in advance of the MQP (late sophomore year or early junior year). Recommended background: At least three of ECE 2019, ECE 2029, ECE 2049, ECE 2311.


  • This course provides an introduction to the analysis and design of continuous-time control systems. Topics covered in the course include: modeling in the frequency and time domain, characteristics of control systems time response, reduction of multiple subsystems, analysis of systems transient response, stability, steady-state errors, root locus techniques, design of PI, PD, and PID controllers via root locus, frequency response techniques, and design via frequency response. The course will not have a formal laboratory. It will include projects which will require the use of software such as MATLAB, Simulink, or LabVIEW for analysis and design of control systems. Recommended Background: Ordinary Differential Equations (MA 2051), Sensors, Circuits, and Systems (ECE 2019), and Continuous-time Signal and System Analysis (ECE 2311). Students may not receive credit for both ES3011 and ECE3012.


  • Cat. I This course is designed to provide students with the basic principles of radio frequency (RF) circuit design. It concentrates on topics such as designing tuning and matching networks for analog and digital communication, satellite navigation, and radar systems. After reviewing equivalent circuit representations for RF diodes, transistors, FETs, and their input/output impedance behavior, the course examines the difference between lumped and distributed parameter systems. Characteristics impedance, standing waves, reflection coefficients, insertion loss, and group delay of RF circuits will be explained. Within the context of Maxwell’s theory the course will then focus on the graphical display of the reflection coefficient (Smith Chart) and its importance in designing matching circuits. Students will learn the difference between SPICE and monolithic and microwave integrated circuit analysis, and design (MMICAD) modeling. Biasing and matching networks for single and multistage amplifiers in the 900 to 2,000 MHz range are analyzed and optimized in terms of input/output impedance matching, insertion loss, and groups delays. Recommended background: ECE 2019, ECE 3204. Suggested background: ECE 2112.


  • Cat. I This course is the second of a two-course sequence in electronic circuit design. More complex circuits are analyzed and the effects of frequency and feedback are considered in detail. The course provides a comprehensive treatment of operational amplifier operation and limitations. The use of Bode plots to describe the amplitude and phase performance of circuits as a function of operating frequency is also presented. In addition, the concepts of analog signal sampling, analog-to-digital conversion and digital-to-analog conversion are presented along with techniques for interfacing analog and digital circuitry. Laboratory exercises are provided to reinforce student facility with the application of these concepts to the design of practical circuits. Topics include: transducers; differential amplifiers, inverting/non-inverting amplifiers, summers, differentiators, integrators, passive and active filers, the Schmitt trigger, monostable and a-stable oscillators, timers, sample-and-hold circuits, A/D converters, and D/A converters. Recommended background: Introductory electronic-circuit design and analogsignal analysis as found in ECE 2201 and ECE 2311.


  • Cat. I This course is intended for students interested in obtaining a systems-level perspective of modern wireless networks. It starts with an overall understanding of telecommunication and computer communication networks. Then the fundamental theory of operation of wireless networks as well detailed description of example networks will be covered. Topics included in the course are an overview of computer networks, an overview of wireless network standards and products, radio channel modeling and medium access control, deployment of wireless infrastructures, and examples of voice- and data-oriented wireless networks using TDMA, CDMA, and CSMA access methods. With extra work, this course can be successfully completed by non- ECE students; basic concepts of radio propagation, transmission, and medium access control will be introduced as needed. Recommended background: MA 1022 and PH 1120. Suggested background: ECE 2312 and ECE 2305.


  • Cat. I This course provides an introduction to analog and digital communications systems. The bandpass transmission of analog data is motivated and typical systems are analyzed with respect to bandwidth considerations and implementation techniques. Baseband and passband digital transmission systems are introduced and investigated. Pulse shaping and intersymbol interference criteria are developed in relation to the pulse rate transmission limits of bandlimited channels. Finally, digital carrier systems and line coding are introduced in conjunction with applications to modern modem transmission schemes. Recommended background: MA 1024 and ECE 2312. Suggested background: ECE 2305.


  • Machine learning has achieved huge success in many engineering applications such as computer vision, gene discovery, financial forecasting, credit card fraud detection, autonomous vehicle navigation, biomedical signal modeling, wireless/radar/aerospace systems and others. The course will briefly review discrete-time signals and systems, including convolution and Fourier transforms. This course will introduce the fundamental concepts, algorithms, and theories in machine learning, including linear models, projection/nonlinear embedding methods, neural networks/deep learning, parametric/non-parametric methods, kernel machines, mixture models, and pattern recognition/classification. Also, the lectures will briefly summarize recent trends in the field to provide students with cutting-edge knowledge for engineering. The course will give the student the basic ideas and intuition behind these methods, as well as a more formal understanding of how and why they work. Students will have an opportunity to experiment with machine learning techniques and apply them in one or more application-based project. Recommended Background: Discrete-Time Signal and System Analysis (ECE 2312) Suggested Background: Linear Algebra (MA 2071) and Probability (MA 2621 or MA 2631)


  • Cat. I Concepts integral to the generation, transmission, storage, and use of electrical power are introduced with particular emphasis on economic, environmental, and regulatory influences that have shaped the structure of our power grid for over 100 years. Power generators, including those powered by traditional fossil fuels and renewable sources, are covered, providing a background of technology evolution that leads to distributed energy resources (DERs), energy storage systems, and smart grid solutions. Three-phase lines, loads, and generators are discussed together with the need for power factor calculation and correction. Construction and performance of high voltage transmission lines is introduced. Power flow analysis across a power network from generation to transmission to consumption is provided and modeled, including consideration of basic faults at various points in the network. Methods of energy storage are considered together with basic power grid protection techniques. These technologies converge toward the construction of robust smart grids that employ advanced data analytics and communications for real-time fault identification, load balancing, and correction. Recommended background: ECE 2010


  • The duality of electromechanical systems, which may be used to either generate or consume electrical power, is studied through examination of methods and machines that enable energy conversion to occur. The analysis and design of systems that employ coupled magnetic fields to convert electrical to mechanical energy and vice versa is explored using fundamental electromagnetic concepts, AC/DC systems analysis, and numerical simulation. Generator and motor machine components are modeled using magnetic circuits to demonstrate energy flow. Electric transformers are carefully considered to understand voltage and current conversion with corresponding device power losses. The principles of rotating single and polyphase systems are covered with application examples ranging from micro to industrial scale. AC/DC motors and generators are explored through a review of their physical construction, equivalent circuits, and performance characteristics. Power factor and power factor correction are examined to enable greater system efficiency. Special emphasis is given to synchronous machines, which comprise most of modern power generation, and induction machines, which are used in a myriad of everyday applications. This course includes simulations of motors and generators with some circuit analysis using circuit simulators, project work, and selected power system demonstrations. Recommended background: ECE 3500. Suggested background: ECE 2019, ECE 2112, and ECE 2311.


  • This course covers the systematic design of advanced digital systems using FPGAs. The emphasis is on top-down design starting with high level models using a hardware description language (such as VHDL or Verilog) as a tool for the design, synthesis, modeling, test bench development, and testing and verification of complete digital systems. These types of systems include the use of embedded soft core processors as well as lower level modules created from custom logic or imported IP blocks. Interfaces will be developed to access devices external to the FPGA such as memory or peripheral communication devices. The integration of tools and design methodologies will be addressed through a discussion of system on a chip (SOC) integration, methodologies, design for performance, and design for test. Topics: Hardware description languages, system modeling, synthesis, simulation and testing of digital circuits; Design integration to achieve specific system design goals including architecture, planning and integration, and testing; Use of soft core and IP modules to meet specific architecture and design goals. Laboratory exercises: Students will design and implement a complete sophisticated embedded digital system on an FPGA. HDL design of digital systems including lower level components and integration of higher level IP cores, simulating the design with test benches, and synthesizing and implementing these designs with FPGA development boards including interfacing to external devices. Recommended background: ECE 2029 and ECE 2049. Students who have received credit for ECE 3810 may not receive credit for ECE 3829.


  • Cat. I This course continues the embedded systems sequence by expanding on the topics of real-time software and embedded microprocessor system architecture. The software portion of this course focuses on solving real-world problems that require an embedded system to meet strict real-time constraints with limited resources. On the hardware side, this course reviews and expands upon all the major components of an embedded microprocessor system, including the CPU, buses, memory devices and peripheral interfaces. New IO standards and devices are introduced and emphasized as needed to meet system design, IO and performance goals in both the lecture and laboratory portion of the course. Topics: Cross-compiled software development, embedded system debugging, multitasking, real-time scheduling, inter-task communication, software design for deterministic execution time, software performance analysis and optimization, device drivers, CPU architecture and organization, bus interface, memory management unit, memory devices, memory controllers, peripheral interfaces, interrupts and interrupt controllers, direct memory access. Laboratory exercises: Programming real-time applications on an embedded platform running a real-time operating system (RTOS), configuring hardware interfaces to memory and peripherals, bus timing analysis, device drivers. Recommended background: ECE 2029 and ECE 2049.


  • Cat. II Introduction to biomedical signal processing and analysis. Fundamental techniques to analyze and process signals that originate from biological sources: ECGs, EMGs, EEGs, blood pressure signals, etc. Course integrates physiological knowledge with the information useful for physiologic investigation and medical diagnosis and processing. Biomedical signal characterization, time domain analysis techniques (transfer functions, convolution, auto- and cross-correlation), frequency domain (Fourier analysis), continuous and discrete signals, deterministic and stochastic signal analysis methods. Analog and digital filtering. Recommended background: ECE 2311, ECE 2312, or equivalent. This course is offered in 2016-17, and in alternating years thereafter.


  • This course builds on the fundamental knowledge of instrumentation and sensors. Lectures cover the principles of designing, building and testing analog instruments to measure and process biomedical signals. The course is intended for students interested in the design and development of electronic bioinstrumentation. Emphasis is placed on developing the student’s ability to design a simple medical device to perform real-time physiological measurements. Recommended background: BME 3012, BME 3013, ECE 2010 and ECE 2019.


  • Cat. I This course provides students with hands-on exposure to the design and implementation of modern digital communication systems using software-defined radio technology. The prototyping and real-time experimentation of these systems via software-defined radio will enable greater flexibility in the assessment of design trade-offs as well as the illustration of “real world” operational behavior. Performance comparisons with quantitative analytical techniques will be conducted in order to reinforce digital communication system design concepts. In addition to laboratory modules, a final course project will synthesize topics covered in class. Course topics include software-defined radio architectures and implementations, digital signaling and data transmission analysis in noise, digital receiver structures (matched filtering, correlation), multicarrier communication techniques, radio frequency spectrum sensing and identification (energy detection, matched filtering), and fundamentals of radio resource management. Recommended background: ECE 3311, MA 2621, familiarity with Simulink, familiarity with general programming.


  • The availability of electric power in a variety of forms is integral to modern society. Very often, electric power must be converted from one form to another to meet a specific application need – this conversion process is accomplished through the use and efficient management of power electronics. Design of power electronics is introduced first by examining the performance characteristics of basic switching devices, which enable critical management functions that include pulse width modulation (PWM) and output power regulation. Half and full-wave AC source rectification and techniques for improving the resulting DC power characteristics are covered, including polyphase AC sources. AC voltage control with applications for induction motors is studied. DC-DC power conversion is examined, covering a variety of circuit architectures, with applications in feedback control. DC to AC power inversion and resulting power quality considerations are explored. The impacts of design decisions on power electronics systems, from micro- to megawatts, are demonstrated through numerical simulation. This course includes guest lectures, project work including case-studies and selected power system demonstrations. Recommended background: ECE 3204, ECE 3501. Student who has previously received credit for ECE 3503 may not receive credit for ECE 4503.


  • Cat. I This course provides an introduction to the principles of real-time digital signal processing (DSP). The focus of this course is hands-on development of real-time signal processing algorithms using audio-based DSP kits in a laboratory environment. Basic concepts of DSP systems including sampling and quantization of continuous time signals are discussed. Tradeoffs between fixed-point and floating-point processing are exposed. Real-time considerations are discussed and efficient programming techniques leveraging the pipelined and parallel processing architecture of modern DSPs are developed. Using the audio-based DSP kits, students will implement real-time algorithms for various filtering structures and compare experimental results to theoretical predictions. Recommended background: ECE 2049, ECE 2312, some prior experience in C programming. Suggested background: ECE 3311.


  • Cat. I This course focuses on the computer organization and architectural design of standalone embedded and high-performance microprocessor systems. This course covers performance metrics, machine level representation of information, the assembly level interface, memory system organization and architecture, computer input/output,instruction set architecture (ISA) design, single cycle and multicycle CPU datapath and controlpath design as well as more advanced level topics such as pipelining, interrupts, cache and memory system design. Special attention will be paid into measuring architectural performance and into improving computer architectures at various levels of the design hierarchy to reach optimal performance. The course will include several hands-on projects and laboratory components where students will be required to perform simulations of CPU designs using architectural simulation tools such as MIPS Simulators and SimpleScalar. Recommended Background: ECE 3849. Suggested Background: ECE 3829.


  • This course provides an introduction to modern cryptography and communication security. It focuses on how cryptographic algorithms and protocols work and how to use them. The course covers the concepts of block ciphers and message authentication codes, public key encryption, digital signatures, and key establishment, as well as common examples and uses of such schemes, including the AES, RSA-OAEP, and the Digital Signature Algorithm. Basic cryptanalytic techniques and examples of practical security solutions are explored to understand how to design and evaluate modern security solutions. The course is suited for students interested in cryptography or other security related fields such as trusted computing, network and OS security, or general IT security. Recommended background: ECE 2049 Embedded Computing in Engineering Design or CS 2301 Systems Programming for Non-Majors or equivalent Suggested background: CS 2022/MA2201 Discrete Mathematics


  • Cat. II This course introduces students to the design and analysis of analog integrated circuits such as operational amplifiers, phase-locked loops, and analog multipliers. Topics: integrated circuit building blocks: current mirrors and sources, differential amplifiers, voltage references and multipliers, output circuits. Computer-aided simulation of circuits. Layout of integrated circuits. Design and analysis of such circuits as operational amplifiers, phase-locked loops, FM detectors, and analog multipliers. Laboratory exercises. Recommended background: familiarity with the analysis of linear circuits and with the theory of bipolar and MOSFET transistors. Such skills are typically acquired in ECE 3204. Suggested background: ECE 4904. This course will be offered in 2015-16, and in alternating years thereafter.


  • This course introduces fundamental concepts of CMOS (Complementary Metal Oxide Semiconductor) analog and digital circuit design, emphasizing the physical implementation of integrated circuits. To develop a fundamental understanding of CMOS integrated circuit design and layout, the course begins with an introduction to CMOS integrated circuit fabrication technology and crucial process layers. Then, resistors and capacitors in integrated circuit technology, and MOSFET capacitors and transistors are introduced, emphasizing concepts in nano-CMOS devices such as velocity saturation and drain-induced barrier lowering. Building on these concepts, the course next develops models for analog and digital integrated circuit design using MOSFETs. Next, the concept of basic digital building blocks in CMOS technology, and associated timing and loading constraints are covered. Finally, the course will explore matching and sensitivity concepts through a simple circuit example, such as a current mirror. Recommended Background: ECE 2029, and ECE 2201 Suggested Background: ECE 3204

Graduate Courses


  • Applications of probability theory and its engineering applications. Random variables, distribution and density functions. Functions of random variables, moments and characteristic functions. Sequences of random variables, stochastic convergence and the central limit theorem. Concept of a stochastic process, stationary processes and ergodicity. Correlation functions, spectral analysis and their application to linear systems. Mean square estimation. (Prerequisite: Undergraduate course in signals and systems.)


  • Discrete-time signals and systems, frequency analysis, sampling of continuous time signals, the z-transform, implementation of discrete time systems, the discrete Fourier transform, fast Fourier transform algorithms, filter design techniques. (Prerequisites: Courses in complex variables, basic signals and systems.)


  • Review of Fourier series and linear algebra. Fourier transforms, Laplace transforms, Z transforms and their interrelationship. State space modeling of continuous-time and discrete-time systems. Canonical forms, solution of state equations, controllability, observability and stability of linear systems. Pole placement via state feedback, observer design, Lyapunov stability analysis. (Prerequisite: Undergraduate course in signals and systems.)


  • This course introduces the fundamentals of computer system architecture and organization. Topics include CPU structure and function, addressing modes, instruction formats, memory system organization, memory mapping and hierarchies, concepts of cache and virtual memories, storage systems, standard local buses, high-performance I/O, computer communication, basic principles of operating systems, multiprogramming, multiprocessing, pipelining and memory management. The architecture principles underlying RISC and CISC processors are presented in detail. The course also includes a number of design projects, including simulating a target machine, architecture using a high-level language (HLL). (Prerequisites: Undergraduate course in logic circuits and microprocessor system design, as well as proficiency in assembly language and a structured high-level language such as C or Pascal.)


  • This course provides an introduction to the theory and practice of the design of computer and communications networks, including the ISO seven-layer reference model. Analysis of network topologies and protocols, including performance analysis, is treated. Current network types including local area and wide area networks are introduced, as are evolving network technologies. The theory, design and performance of local area networks are emphasized. The course includes an introduction to queueing analysis and network programming. (Prerequisites: knowledge of the C programming language is assumed. CS 504 or ECE 502 or equivalent background in CS 5084 or CS 584.)


  • This course is intended for graduate and senior-level undergraduate students. The course provides an introduction to major antennas and antenna types for wireless communications, electrical and biomedical sensors, and RF and MW engineering. Basic antenna characteristics are studied: polarization, directivity, gain, realized gain, and impedance bandwidth. Both narrowband and broadband antennas as well as linear and planar antenna arrays are considered. An emphasis is made on learning modern antenna modeling software– ANSYS HFSS and Antenna Toolbox of MATLAB. The course structure is directed toward practical antenna design and enables senior undergraduate students to take this course. Course topics include: transmitter-receiver antenna circuit models, antenna radiation and radiation parameters, dipole antenna family, patch antenna family, loop antenna family, reflector antennas, small antennas, antenna matching and tuning, antenna arrays, on-body and in-body antennas. Prerequisites: undergraduate analog electronics, college MATLAB, and basic introductory knowledge of electromagnetic theory - ECE 2019 and ECE 3113 .


  • This course is intended for graduate and senior-level undergraduate students. Modern numerical methods and major software packages are reviewed in application to modeling electrical and biomedical sensors, bioelectromagnetics, wireless communications (including wireless body area networks), and power electronics. The course begins with an introduction to computational mesh generation. Triangular surface meshes, volumetric tetrahedral meshes, voxel meshes, and computational human phantoms are studied. The boundary element method or the method-of-moments is introduced and detailed, followed by a review of the finite element method for electromagnetic problems. The finite-difference time-domain method is another major topic of the course. The course also covers ray tracing algorithms in application to wireless networks. Prerequisites: college MATLAB, differential and integral calculus.


  • This introductory course develops a comprehensive understanding of Maxwell’s field theory as applied to high-frequency radiation, propagation and circuit phenomena. Topics include radio frequency (RF) and microwave (MW) propagation modes, transmission line aspects, Smith Chart, scattering parameter analysis, microwave filters, matching networks, power flow relations, unilateral and bilateral amplifier designs, stability analysis, oscillators circuits, mixers and microwave antennas for wireless communication systems. (Prerequisites: ECE 504 or equivalent, undergraduate course in electromagnetic field analysis.)


  • The ability to see the simplicity in a complex design problem is a skill that is not usually taught in engineering classes. Some engineers, when faced with design problems, immediately fill up pages and pages of calculations, or do complex circuit simulations or finite-element analyses. One problem with this approach is that if you get an answer, you do not know if it is correct unless you have an intuitive “feel” for what the answer should be. The application of some simple rules of thumb and design techniques is a possible first step to developing intuition into the behavior of complex electrical systems. This course outlines some ways of thinking about analog circuits and systems that are intended will help to develop intuition and guide design. The lectures are a mixture of instructional sessions covering new background material, and design case studies. Prerequisites: Undergraduate background in device physics, microelectronics, control systems, electromagnetism.


  • The application of electronics to energy conversion and control. Electrical and thermal characteristics of power semiconductor devices—diodes, bipolar transistors and thyristors. Magnetic components. State-space averaging and sampled-data models. Emphasis is placed on circuit techniques. Application examples include dc-dc conversion, controlled rectifiers, high-frequency inverters, resonant converters and excitation of electric machines. (Prerequisites: ECE 3204 and undergraduate courses in modern signal theory and control theory; ECE 504 is recommended.)


  • This course is an advanced introduction to the design of analog and mixed analog-digital integrated circuits for communication and instrumentation applications. An overview of bipolar and CMOS fabrication processes shows the differences between discrete and integrated circuit design. The bipolar and MOS transistors are reviewed with basic device physics and the development of circuit models in various operating regions. The use of SPICE simulation in the design process will be covered. Integrated amplifier circuits are developed with an emphasis on understanding performance advantages and limitation in such areas as speed, noise and power dissipation. Simple circuits are combined to form the basic functional building blocks such as the op-amp, comparator, voltage reference, etc. These circuit principles will be explored in an IC design project, which may be fabricated in a commercial analog process. Examples of possible topics include sample-and hold (S/H) amplifier, analog-to-digital (A/D) and digital-to-analog (D/A) converters, phase-locked loop (PLL), voltage-controlled oscillator, phase detector, switched capacitor and continuous-time filters, and sampled current techniques. (Prerequisite: Background in analog circuits both at the transistor and functional block [op-amp, comparator, etc.] level. Also familiarity with techniques such as small-signal modeling and analysis in the s-plane using Laplace transforms. Undergraduate course equivalent background ECE 3204; ECE 4902 helpful but not essential.)


  • Courses in this group are devoted to the study of advanced topics in electronic system design. See the SUPPLEMENT section of the on-line catalog at for descriptions of courses to be offered in this academic year.


  • This course covers the fundamentals of the evolving wireless localization techniques and their relation with the wireless access infrastructures for Electrical and Computer Engineering, Computer Science or other graduate students interested in this field. The course begins with an explanation of the common ground among wireless access and localization techniques which are principles of waveform transmission in multipath rich urban and indoor areas and the deployment of the infrastructure for wireless networks. This is followed by the fundamentals of received signal strength (RSS) and Time- and Angle-of-arrival (TOA/AOA) based localization techniques, addressing applications, systems, effects of environment, performance bounds and algorithms. The course describes how wireless access methods used in wide, local and personal area networks are related to localization techniques using cellular, UWB, WiFi, and other signals of opportunity as well as mechanical sensors used in different smart phone and Robotic platforms. The emphasis on the effects of environment is on the analysis of the effects of multipath on precision of the localization techniques. The emphasis on performance evaluation is on the derivation of Cramer Rao Lower Bound (CRLB). For algorithms, the course describes fingerprinting algorithms used for RSS-based localization and super-resolution, cooperative localization, localization using multi-carrier transmission and localization using multipath diversity as well as Kalman and Particle filtering techniques used for model based localization. Examples of emerging technologies in Body Area Networking and Robotics applications are provided. Prerequisite: ECE506, CS513, or equivalent familiarity with local and wide area networks.


  • Detection of signals in noise, optimum receiver principles, M-ary detection, matched filters, orthogonal signals and representations of random processes. MAP and maximum likelihood estimation. Wiener filtering and Kalman filtering. Channel considerations: pre-whitening, fading and diversity combining. (Prerequisites: ECE 502 and ECE 504 or equivalent.)


  • This course introduces the fundamentals of information theory and discusses applications in compression and transmission of data. Measures of information, including entropy, and their properties are derived. The limits of loss less data compression are derived and practical coding schemes approaching the theoretical limits are presented. Lossy data compression tradeoffs are discussed in terms of the rate-distortion framework. The concept of reliable communication through noisy channels (channel capacity) is developed. Techniques for practical channel coding, including block and convolutional codes, are also covered. (Prerequisite: background in probability and random processes such as in ECE 502 or equivalent).


  • This course introduces a rigorous analytical treatment of modern digital communication systems, including digital modulation, demodulation, and optimal receiver design. Error performance analysis of these communication systems when operating over either noisy or band-limited channels will be conducted. Advanced topics to be covered include a subset of the following: MIMO, fading channels, multiuser communications, spread spectrum systems, and/or multicarrier transmission. (Prerequisites: An understanding of probability and random processes theory (ECE 502 or equivalent); an understanding of various analog and digital (de)modulation techniques (ECE 3311 or equivalent); familiarity with MATLAB programming.)


  • This course provides a broad introduction to medical signal analysis, particularly tailored to students who have no prior background in physiology or medicine. The course will concentrate on signal analysis of the electrical activity of the human body, providing sufficient physiologic background for study of the relevant organ systems. System-level engineering models of the electrical activity of the heart, skeletal muscles and brain will be presented and actual physiologic signals will be analyzed. Digital signal processing algorithms for analysis of these signals will be studied extensively using MATLAB. Specific signal processing topics may include: use of muscle electrical activity to command powered prostheses and/or guide rehabilitation therapy; design of filters to reject motion artifact, noise and interference; monitoring (e.g., detection and classification) of heart, brain and muscle electrical impulses; and non-invasive estimation of muscle activation level. Students may not receive credit for ECE 5341 and either ECE 443X or ECE 539D. Prerequisites: Undergraduate (or graduate) course in digital signal processing, experience with MATLAB and a course in probability.)


  • This course covers advanced topics in the theory, design and performance of computer and communications networks. Topics will be selected from such areas as local area networks, metropolitan area networks, wide area networks, queueing models of networks, routing, flow control, new technologies and protocol standards. The current literature will be used to study new networks concepts and emerging technologies. (Prerequisite: CS 513/ECE 506 and CS 533/ECE 581.)


  • Overview of wireless information networks and personal communications systems: digital cellular, wireless PBX, cordless phone, wireless LAN, and mobile data, multimedia wireless and directions of the future. Radio propagation modeling for urban and indoor radio channels, coverage interface and cell size. Modulation techniques for efficient use of bandwidth resources. Methods to increase the data rate: antenna diversity and sectorization, adaptive equalization, multirate transmission and multiamplitude phase modulation. Spread spectrum for digital cellular, personal communications and wireless LAN applications. TDMA, CDMA, ALOHA, and CSMA, DECT, GSM, USDC, JDC, IEEE 802.11, WINForum, and HIPERLAN. (Prerequisite: Background in networks. Familiarity with probability, statistics and signal processing).


  • This course presents fundamental concepts of digital image processing and an introduction to machine vision. Image processing topics will include visual perception, image formation, imaging geometries, image transform theory and applications, enhancement, restoration, encoding and compression. Machine vision topics will include feature extraction and representation, stereo vision, model-based recognition, motion and image flow, and pattern recognition. Students will be required to complete programming assignments in a high-level language. (Prerequisites: working knowledge of undergraduate level signal analysis and linear algebra; familiarity with probability theory is helpful but not necessary.)


  • This graduate level course examines the principles of Power System Analysis. It will begin with a review of AC circuit analysis. The course will then cover the topics of transmission line parameter calculation, symmetrical component analysis, transformer and load modeling, symmetrical and unsymmetrical fault analysis, power flow, and power systems stability. (Prerequisites: Knowledge of circuit analysis, basic calculus and differential equations, elementary matrix analysis and basic computer programming.)


  • This graduate level course introduces the student to the effects of electromagnetic transients in distribution systems. Topics include transient analysis, lightning and switching surges, mechanisms of transient generation, insulation coordination, grounding, surge protection devices, and shielding. (Prerequisite: ECE 5500 Power System Analysis)


  • This graduate level course will further explore alternating current circuits, three phase circuits, basics of electromagnetic field theory, magnetic circuits, inductance, and electromechanical energy conversion. Topics also include ideal transformer, iron-core transformer, voltage regulation, efficiency equivalent circuit, and three phase transformers. Induction machine construction, equivalent circuit, torque speed characteristics, and single phase motors, synchronous machine construction, equivalent circuit, power relationships phasor diagrams, and synchronous motors will be covered. Direct current machine construction, types, efficiency, power flow diagram, and external characteristics will be discussed.


  • This graduate level course seeks to provide an understanding of how interconnected power systems and their components are protected from abnormal events such as faults (short circuits), over-voltages, off-nominal frequency and unbalanced phase conditions. This subject is presented from a theoretical viewpoint, however, many practical examples and applications are included that emphasize the limitations of existing protective equipment. Course content is not specific to any particular manufacturer’s equipment. The course begins with a brief review of power system operation, three-phase system calculations and the representation (modeling) of power system elements. The modeling of current transformers under steady-state and transient conditions is presented with emphasis on the impact on protective devices. A unit on system grounding and its impact on protective device operation are included. Course emphasis then shifts to protective devices and their principles of operation. Both electromechanical and numeric relay designs are covered. The final course segments cover specific applications such as pilot protection of transmission lines, generator protection and transformer protection. (Prerequisite: ECE 5500 Power System Analysis)


  • This graduate level course is the first of a two course sequence that covers both the principles and practices of power system protective relaying. The course seeks to provide an understanding of how interconnected power systems and their components are protected from abnormal events such as faults (short circuits), over-voltages, off-nominal frequency and unbalanced phase conditions. This subject is presented from a theoretical viewpoint, however, many practical examples are included that emphasize the limitations of existing protective equipment. Course content is not specific to any particular manufacturer’s equipment. The course begins with a brief review of the nature of power system operation, power system faults and other abnormal conditions. The nature and objectives of protective relaying are covered next with emphasis on how the power system can be monitored to detect abnormal conditions. The computational tools needed to analyze system operation and apply protective relaying are covered next, including the per-unit system, phasors and symmetrical components. The modeling of current transformers under steady-state and transient conditions is presented with emphasis on the impact on protective devices. A unit on system grounding and its impact on protective device operation is included. Course emphasis then shifts to protective devices and their principles of operation. Both electromechanical and numeric relay designs are covered. (Prerequisite: ECE 5500 Power System Analysis or equivalent background experience is suggested. Familiarity with phasors, derivatives, transfer functions, poles and zeros, block diagram and the notion of feedback with basic understanding power system analysis or similar background is recommended. Note: Credit cannot be awarded for this course if credit has already been received for ECE 5520 Power System Protection and Control.)


  • This graduate level course covers advanced topics in the principles and practices of power system protective relaying. The course seeks to provide an understanding of how protective relays are applied to protect power system components. While the subject is presented from a theoretical viewpoint, many practical examples are included. Examples specific to both new installations and existing, older facilities will be included. Course content is not specific to any particular manufacturer’s equipment. The course begins with applications of protective devices to generators. This will include distributed generation as well as wind-turbine and inverter-connected sources. Transformer protection is covered next, including application procedures for older, electromechanical relays as well as modern numeric relay designs. A unit on bus protection is covered next, including all typical high-speed and time backup bus protection schemes. Transmission line and distribution feeder protection is covered in detail including both conventional and communications-assisted schemes. The course ends with a unit on other protection applications such as under frequency load shedding, reclosing and out-of-step relaying. (Prerequisite: ECE 5521 Protective Relaying. Note: Credit cannot be awarded for this course if credit has already been received for ECE 5520 Power System Protection and Control.)


  • This graduate level course is concerned with modeling, analyzing and mitigating power system stability and control problems. The course seeks to provide an understanding of the electromechanical dynamics of the interconnected electric power grid. This subject is presented from a theoretical viewpoint; however, many practical examples are included. The course begins with a description of the physics of the power system, frequency regulation during “steady-state” operation, dynamic characteristics of modern power systems, a review of feedback control systems, power system frequency regulation, and a review of protective relaying. This is followed by material on synchronous machine theory and modeling. Simulation of power system dynamic response, small signal stability, transient stability analysis using SIMULINK and effects of non-traditional power sources on systems dynamics will also be covered. Power system stabilizers, load modeling and under frequency load shedding are covered in the final lectures. (Prerequisite: Familiarity with the basics of Laplace Transforms, derivatives, transfer functions, poles and zeros, block diagram and the notion of feedback with basic understanding power system analysis topics recommended. (ECE 5500 Power System Analysis and ECE 5511 Transients in Power Systems or equivalent background experience is suggested.)


  • This graduate level course introduces the fundamentals of power distribution systems, apparatus, and practices suited to new and experienced utility distribution engineers. Topics include distribution system designs, transformers and connections, practical aspects of apparatus and protection, principles of device coordination, grounding, voltage control, and power quality. (Prerequisites: Prior courses in magnetism and three-phase circuits. An electric machines course would be recommended.)


  • This graduate-level course deals with modern operation, control and planning for power systems. Topics include: Characteristics of generating units; Economic Dispatch; Unit Commitment; Effects of the transmission system on power delivery; Optimal Power Flow and Location Marginal Pricing; Power System Security; State Estimation for Power Systems; Power System Reliability Evaluation. Software tools such as MATLAB and power system simulator software will be used both in the classroom and in some homework assignments.


  • This course introduces the characteristics and challenges of interconnecting increasing numbers of Distributed Energy Resources (DERs) to the Electric Power System (EPS). Topics include: challenges to distribution and transmission system protection; local voltage control; ride through; optimal interconnection transformer configurations; and practical engineering approaches to maintain system reliability and protection. The current and evolving interconnection standard (IEEE 1547) is included. (Prerequisites: ECE 5500 Power System Analysis plus either ECE 5520 Power System Protection and Control or ECE 5521 Protective Relaying. ECE 5530 Power Distribution highly recommended.)


  • This graduate level course focuses on the theory and current professional practice in problems of electric power transmission. It begins with a review of the theory of AC electric power transmission networks and addresses a range of challenges related to reactive power and voltage control as well as steady-state and transients stability. Students will learn in detail the principles of traditional reactive power compensation (shunt reactors and capacitors); series compensation and modern static reactive compensation like SVC, STATCOM and other Flexible AC Transmission Systems (FACTS) devices. The effects of each of these types of compensation on static and dynamic voltage control, reactive power requirement and steady-state and transient stability problems are covered from theoretical as well as practical aspects. Particular attention is given to the mathematical models and principles of operation of many types of compensation systems. Basic principles of operation and control of High-Voltage DC (HVDC) systems and their impact on steady-state and dynamics of power system will be covered as well. (Prerequisite: ECE 5500 Power System Analysis.)


  • This project-based course integrates power systems engineering theory and practice, and provides the opportunity to apply the skills and knowledge acquired in the Power Systems curriculum. The project is normally conducted in teams of two to four students. Students are encouraged to select projects with practical significance to their current and future professional responsibilities. The projects are administered, advised, and evaluated by WPI faculty as part of the learning experience, but students are also encouraged to seek mentorship from experienced colleagues in the Power Systems profession. Prerequisites: Since the Capstone Project will draw on knowledge obtained throughout the degree program, it is expected that the student will have completed most or all of the coursework within their plan of study before undertaking the capstone project.


  • VLSI Design introduces computer engineers and computer scientists to the techniques, methodologies and issues involved in conceptual and physical design of complex digital integrated circuits. The course presupposes knowledge of computer systems and hardware design such as found in ECE 505, but does not assume detailed knowledge of transistor circuits and physical electronics. (Prerequisite: ECE 505 or equivalent.)


  • This course focused on the principles and applications of using FPGAs for reconfigurable computing. The key feature of reconfigurable computing is its ability to perform computations in customized hardware, while retaining much of the flexibility of a software solution. This course provides an overview of field programmable gate array (FPGA) architecture and technology. It introduces computer-aided design tools for FPGAs including synthesis, timing, placement, and routing. The course emphasizes on the techniques to analyze algorithms and to implement them on the FPGAs. It demonstrates real-time signal and data processing in customized hardware circuits. This course also covers system-on-chip design using the embedded processors inside the FPGAs. Partially reconfiguration and runtime reconfiguration design flow are also included.


  • This Course covers techniques such as caching, hierarchical memory, pipelining and parallelism, that are used to enhance the performance of computer systems. It compares and contrast different approaches to achieving high performance in machine ranging from advanced microprocessors to vector supercomputers (CRAY, CYBER). It also illustrates how these techniques are applied in massively parallel SIMD machines (DAP, Connection Machine). In each case the focus is on the combined hardware/ software performance achieved and the interaction between application demands and hardware/software capabilities. (Prerequisites: This course assumes the material covered in ECE 505. The student should also have a background in computer programming and operating systems (CS 502). Familiarity with basic probability and statistics such as ECE 502 or MA 541 is recommended.


  • Automatic design, synthesis, verification, and modeling of complex digital systems with Verilog are the main course objectives. Verilog for modeling existing circuits, as well as Verilog for design and automatic synthesis is discussed. Using Verilog for a design that consists of a hierarchy of components that include controllers, sequential and combinational parts is focused. Design description from transistor level to software interface will be discussed. Students will learn details of hardware of processor architectures and their peripherals. The course discusses module delay adjustments using Verilog path delay and distributed delay mechanisms. Testbench development and assertion verifications will be discussed. Students will learn to simulate verify, synthesize, and program their designs on an Altera development board using advanced Altera FPGAs. Prerequisite: Undergraduate knowledge of basic logic design concepts. ECE 574 may be substituted for ECE 5720. Students may not receive credit for both ECE 574 and ECE 5720. For students not having the necessary background, online videos will be made available to cover the prerequisites.


  • This course introduces the concept of design with embedded components. Embedded processors, IP cores, and bus structures are discussed here. Embedded processor architectures, architectures for arithmetic processors, I/O interfacing modules, memory interfacing, and architectures related to busses and switch fabrics for putting a complete embedded system are discussed here. Topics include RT level design, arithmetic processors, ISA, CPU structure and function, addressing modes, instruction formats, memory system organization, memory mapping and hierarchies, concepts of cache, standard local buses, IO devices, pipelining, memory management, embedded processors, embedded environments, bus and switch fabrics, and embedded system implementation. An example embedded design environment including its configurable cores and processors and its bus structure will be presented in details. The course also includes a number of design projects, including design and simulation of an embedded processor, design of an arithmetic core, and design of a complete embedded system. Prerequisite: Familiarity with C programming, Undergraduate knowledge of basic logic design concepts, familiarity with a hardware description language. Note: For students not having the necessary background, online videos will be made available to cover the prerequisites.


  • This course discusses principles, methodologies and tools used for a modern hardware design process. Design flows and hardware languages needed for each stage of the design process are discussed. The use of transaction level modeling (TLM) for dealing with today’s complex designs is emphasized. The course starts with a discussion of the evolution of hardware design methodologies, and then discusses the use of C++ for an algorithmic description of hardware. SystemC and its TLM derivative and the role of SystemC in high-level design will be discussed. In addition, RT level interfaces and the use of SystemC for this level of design will be covered. Timed, untimed, and approximately timed TLM models and modeling schemes will be presented. Use of TLM for fast design simulation, design space exploration, and high-level synthesis will be discussed. TLM testing methods and testing of TLM based NoCs will be discussed. The course starts with a complete design project and exercises various parts of this design as methodologies, concepts, and languages are discussed. Specific topics covered are as follows: Levels of abstraction C++ for digital design SystemC RT level and above TLM methodology TLM timing aspects TLM channels TLM channels Mixed level design NoC TLM modeling System testing


  • This course discusses faults and fault modeling, test equipment, test generation for combinational and sequential circuits, fault simulation, memory testing, design for testability, built-in self-test techniques, boundary scan, IEEE 1149.1, and board and SoC test standards. Various fault simulation and ATPG methods including concurrent fault simulation, D-algorithm, and PODEM are discussed. Controllability and observability methods such as SCOAP for testability analysis are discussed. Various full-scan and partial scan methods are described and modeled in Verilog and tested with Verilog testbenches. BIST architectures for processor testing, memory testing and general RT level hardware testing are described, modeled in Verilog and simulated and evaluated for fault coverage. The course uses Verilog testbenches for simulating golden models, developing and evaluating test sets, and for mimicking testers.


  • This is an introductory course on Verilog and VHDL, two standard hardware description languages (HDLs), for students with no background or prior experience with HDLs. In this course we will examine some of the important features of Verilog and VHDL. The course will enable students to design, simulate, model and synthesize digital designs. The dataflow, structural, and behavioral modeling techniques will be discussed and related to how they are used to design combinational and sequential circuits. The use of test benches to exercise and verify the correctness of hardware models will also be described. Course Projects: Course projects will involve the modeling and sysntesis and testing of systems using Xilinx tools. We will be targeting Xilinx FPGA and CPLDs. Students will need to purchase a FPGA or CPLD development board for project assignments. (Other VHDL tools may be used if these are available to the student at their place of employment.) Students will have the choice of completing assignments in either Verilog or VHDL. (Prerequisites: Logic Circuits and experience with programming in a high-level language (such as C or Pascal) and a computer architecture course such as ECE 505.)


  • This course gives a comprehensive introduction to the field of cryptography and data security. The course begins with the introduction of the concepts of data security, where classical algorithms serve as an example. Different attacks on cryptographic systems are classified. Some pseudo-random generators are introduced. The concepts of public and private key cryptography are developed. As important representatives for secret key schemes, DES and IDEA are described. The public key schemes RSA and ElGamal, and systems based on elliptic curves are then developed. Signature algorithms, hash functions, key distribution and identification schemes are treated as advanced topics. Some advanced mathematical algorithms for attacking cryptographic schemes are discussed. Application examples will include a protocol for security in a LAN and a secure smart card system for electronic banking. Special consideration will be given to schemes which are relevant for network environments. For all schemes, implementation aspects and up-to-date security estimations will be discussed. (Prerequisites: Working knowledge of C; an interest in discrete mathematics and algorithms is highly desirable. Students interested in a further study of the underlying mathematics may register for MA 4891 [B term], where topics in modern algebra relevant to cryptography will be treated.)


  • The operation of the bipolar junction transistor (BJT) will be explored in detail, resulting in thorough understanding of observed phenomena including second-order effects that limit device performance in practical integrated circuit applications. The course begins with a review of semiconductor fundamentals and p-n junction behavior, followed by extension to the BJT, with an emphasis on effects such as temperature dependence of operation parameters, deviations from ideal behavior at high and low voltages and currents, and failure modes such as zener and avalanche breakdown. BJT behavior will be modeled for large and small signals under DC, AC, and transient conditions. Results from theoretical hand-analysis equations will be correlated with model parameters in software tools such as SPICE. Implications of fabrication technology including device scaling in submicron processes will be considered. This course is intended for students pursuing study in either integrated circuit design or device physics. (Prerequisite: undergraduate analog electronics).


  • The presentations in the graduate seminar series will be of tutorial nature and will be presented by recognized experts in various fields of electrical and computer engineering. All full-time graduate students will be required to take both seminar courses, ECE 596A and ECE 596B, once during their graduate studies in the Electrical and Computer Engineering Department. The course will be given Pass/Fail. (Prerequisite: Graduate standing.)


  • Approved study of a special subject or topics selected by the student to meet his or her particular requirements or interests. Can be technical in nature, or a review of electrical and computer engineering history and literature of importance and permanent value. (Prerequisite: B.S. in ECE or equivalent.)


  • The course will cover a set of important topics in signal and image analysis: orthogonal signal decomposition, wavelet transforms, analytic signals, time-frequency estimation, 2D FT, Hankel transform and tomographic reconstruction. In addition, the course will each year have selected current topics in signal processing, e.g., ambiguity functions in RADAR and SONAR, coded waveforms, Fourier based beamforming for 2D arrays and single value decomposition. In place of a final exam, there will be a student project. The course is intended for students working in areas such as image analysis, NDE, ultrasound, audio, speech, RADAR, SONAR and date compression. Signal/ image theory and applications will be emphasized over coding; however, Matlab-based modules for self-paced signal/image visualization and manipulation will be part of the course. (Prerequisites: ECE 504 Analysis of Deterministic Signals and Systems, undergraduate course in linear systems theory and vector calculus.)


  • This course provides deeper insight into areas of cryptography which are of great practical and theoretical importance. The three areas treated are detailed analysis and the implementation of cryptoalgorithms, advanced protocols, and modern attacks against cryptographic schemes. The first part of the lecture focuses on public key algorithms, in particular ElGamal, elliptic curves and Diffie- Hellman key exchange. The underlying theory of Galois fields will be introduced. Implementation of performance security aspects of the algorithms will be looked at. The second part of the course deals with advanced protocols. New schemes for authentication, identification and zero-knowledge proof will be introduced. Some complex protocols for real-world application— such as key distribution in networks and for smart cards—will be introduced and analyzed. The third part will look into state-of-the-art cryptoanalysis (i.e., ways to break cryptosystems). Brute force attacks based on special purpose machines, the baby-step giant-step and the Pohlig-Hellman algorithms will be discussed. (Prerequisites: ECE 578/ CS 578 or equivalent background.)