Electrical and Computer Engineering Courses (ECE)

ECE Courses

This is a list of courses with the subject code ECE. For more information, see Electrical and Computer Engineering (College of Engineering) in the catalog.

ECE:1000 First-Year Seminar 1 s.h.

Small discussion class taught by a faculty member; topics chosen by instructor; may include outside activities (e.g., films, lectures, performances, readings, visits to research facilities, field trips). Requirements: first- or second-semester standing.

ECE:2400 Linear Systems I 3 s.h.

Introduction to continuous and discrete time signals and systems with emphasis on Fourier analysis; examples of signals and systems; notion of state and finite state machines; causality; linearity and time invariance; periodicity; Fourier transforms; frequency response; convolution; IIR and FIR filters, continuous and discrete Fourier transforms; sampling and reconstruction; stability. Prerequisites: ENGR:2120 and MATH:2560.

ECE:2410 Principles of Electronic Instrumentation 4 s.h.

Principles of analog signal amplification, signal conditioning, filtering; operational amplifier circuit analysis and design; principles of operation of diodes, bipolar transistors, field effect transistors; discrete transistor amplifier analysis and design; laboratory included. Prerequisites: ENGR:2120 and PHYS:1612 and MATH:2560.

ECE:3000 Electrical and Computer Engineering Professional Seminar 1 s.h.

Professional aspects of electrical and computer engineering, and computer science, presented through lectures and discussions by guest speakers, field trips, and panel discussions. Requirements: junior standing.

ECE:3320 Introduction to Digital Design 3 s.h.

Modern design and analysis of digital switching circuits; combinational logic; sequential circuits and system controllers; interfacing and busing techniques; design methodologies using medium- and large-scale integrated circuits; lab arranged. Requirements: sophomore standing.

ECE:3330 Introduction to Software Design 3 s.h.

Design of software for engineering systems; algorithm design and structured programming; data structures; introduction to object-oriented programming in JAVA; applications to engineering problems; lab arranged. Prerequisites: ENGR:2730. Same as IGPI:3330.

ECE:3350 Computer Architecture and Organization 3 s.h.

Basic concepts; computer evolution, register transfer level design, simulation techniques, instruction sets (CISC and RISC), assembly language programming, ALU design, arithmetic algorithms and realization of arithmetic functions, hardwired and microprogrammed control, memory hierarchies, virtual memory, cache memory, interrupts and DMA, input/output; introduction to high performance techniques, pipelining, multiprocessing; introduction to hardware description languages (Verilog, VHDL); students design and simulate a simple processor. Prerequisites: ENGR:2730 and ECE:3320.

ECE:3360 Embedded Systems 3 s.h.

Microprocessors and microcontrollers as components in engineering systems; embedded system design processes; microcontroller/microprocessor architecture; interrupts and traps; memory and device interfacing; low-level and high-level software design for embedded systems; examples of embedded system architecture and design; fundamentals of operating systems; tasks and processes; context switching and scheduling; memory and file management, interprocess communication; device drivers. Prerequisites: ENGR:2730 and ECE:3320. Corequisites: ECE:2410.

ECE:3400 Linear Systems II 3 s.h.

Builds on concepts from ECE:2400 towards application in digital signal processing; lab exercises, hands-on term project; review of key linear systems concepts; MATLAB basics, tools, and functions for digital signal processing; discrete time systems, difference equations in digital signal processing; Fourier analysis of discrete time signals; transient, steady-state, and frequency response of discrete time, linear time-invariant (LTI) systems; Z-transform analysis; sampling theorem and aliasing; power spectral density and periodograms; recording and processing of sound and music; finite impulse response (FIR) and infinite impulse response (IIR) filters; designing and using filters in MATLAB. Prerequisites: ECE:2400.

ECE:3410 Electronic Circuits 4 s.h.

Design and analysis of FET and BJT amplifiers; low, midrange, high-frequency analysis; difference amplifiers; feedback amplifiers; SPICE simulation; power amplifiers; digital logic families. Prerequisites: ECE:2410 and ECE:2400.

ECE:3500 Communication Systems 3 s.h.

Introduction to analog and digital communications, with an emphasis on modulation and noise analysis; Fourier analysis, probability theory, random variable and processes, AM, FM, pulse-coded modulation, binary digital modulation, SNR analysis of AM and FM, BER analysis of digital modulation schemes. Prerequisites: ECE:2400.

ECE:3540 Communication Networks 3 s.h.

Communication networks, layered network architectures, applications, network programming interfaces (e.g., sockets), transport, congestion, routing, data link protocols, local area networks, emerging high-speed networks, multimedia networks, network security, internet protocol; technology examples. Prerequisites: ENGR:2730. Corequisites: STAT:2020.

ECE:3600 Control Systems 3 s.h.

Fundamental concepts of linear feedback control, mathematical modeling, transfer functions, system response, feedback effects, stability, root-locus and frequency response analysis and design, compensation, lab arranged. Prerequisites: ECE:2400.

ECE:3700 Electromagnetic Theory 3 s.h.

Electric and magnetic forces, Maxwell's equations, wave propagation; applications, including radiation, transmission lines, circuit theory. Prerequisites: MATH:3550 and PHYS:1612.

ECE:3720 Semiconductor Devices 3 s.h.

Fundamentals of semiconductor physics and devices; principles of the p-n junction diode, bipolar transistor, field effect transistor. Prerequisites: ECE:3410 and PHYS:1612 and PHYS:2704.

ECE:3995 Undergraduate Contemporary Topics in Electrical and Computer Engineering 3 s.h.

New topics or areas of study not offered in other electrical and computer engineering courses; based on faculty/student interest; not available for individual study.

ECE:3998 Individual Investigations: Electrical Engineering arr.

Individual projects for electrical engineering undergraduate students: laboratory study, engineering design project, analysis and simulation of an engineering system, computer software development, research.

ECE:4720 Introductory Optics 3 s.h.

Wave motion and superposition, electromagnetic theory, photons, propagation of light, geometrical and physical optics, interference, diffraction, polarization, and Fourier optics; optical components, devices, and systems. Prerequisites: (PHYS:1512 or PHYS:2703 or PHYS:1612) and (MATH:1560 or MATH:1860). Same as PHYS:4720.

ECE:4728 Introductory Solid State Physics 3 s.h.

Phenomena associated with solid state; classification of solids and crystal structures, electronic and vibrational properties in solids; thermal, optical, magnetic, dielectric properties of solids. Prerequisites: PHYS:3741. Same as PHYS:4728.

ECE:4880 Principles of Electrical and Computer Engineering Design 3 s.h.

Design problems requiring integration of subject matter from other required electrical and computer engineering courses. Prerequisites: ECE:2410 and ENGR:2730. Requirements: senior standing.

ECE:4890 Senior Electrical and Computer Engineering Design 3 s.h.

Individual or team project; demonstration of completed project and formal engineering report. Prerequisites: ECE:4880 and (3 of the following are required: ECE:3330, ECE:3350, ECE:3360, ECE:3400, ECE:3500, ECE:3600, CS:3330). Requirements: completion of three required subprogram courses.

ECE:5000 Graduate Seminar: Electrical and Computer Engineering 0 s.h.

Presentation and discussion of recent advances and research in electrical and computer engineering by guest lecturers, faculty, students. Requirements: graduate standing.

ECE:5320 High Performance Computer Architecture 3 s.h.

Problems involved in designing and analyzing current machine architectures using hardware description language (HDL) simulation and analysis, hierarchical memory design, pipeline processing, vector machines, numerical applications, multiprocessor architectures and parallel algorithm design techniques; evaluation methods to determine relationship between computer design and design goals. Prerequisites: ECE:3350 or CS:3620. Same as CS:5610.

ECE:5330 Graph Algorithms and Combinatorial Optimization 3 s.h.

Combinatorial optimization problems; time complexity; graph theory and algorithms; combinatorial optimization algorithms; complexity theory and NP-completeness; approximation algorithms; greedy algorithms and matroids. Prerequisites: ECE:3330. Same as IGPI:5331.

ECE:5410 Advanced Circuit Techniques 3 s.h.

Advanced circuit techniques and principles; analog circuit design including amplifiers, oscillators, multipliers, modulators, phase-locked loops, active filters, switching power supplies, analog to digital and digital to analog converters; lab activities include circuit simulation, design, printed circuit board (PCB) layout and fabrication, assembly, and testing. Prerequisites: ECE:3410.

ECE:5415 Radio Frequency Electronics 3 s.h.

Active and passive devices and transmission line structures at radio frequencies; analysis and design of radio frequency electronic circuits including amplifiers, mixers, multipliers, detectors, radio frequency filters, and oscillators using scattering parameters and the Smith chart; impedance matching, noise and distortion, and power amplifiers; laboratory projects include designing, simulating, building, and testing a radio frequency amplifier and other components used in a radio receiver or transmitter. Prerequisites: ECE:3410 and ECE:3700.

ECE:5420 Power Electronics 3 s.h.

Fundamental concepts and design techniques of power electronics circuits; switching power pole and various switch-mode DC to DC power conversion topologies; feedback control of switch-mode DC to DC power supplies; diode rectification of AC utility power and Power Factor Control (PFC) circuits; electromagnetic concepts and design of high-frequency inductors and transformers; electrically isolated switch-mode DC power supply topologies and soft-switching DC-DC converters and inverters; techniques for synthesis of DC and low-frequency AC sinusoidal voltages. Prerequisites: PHYS:1611 and ENGR:2120 and MATH:2560. Requirements: junior standing.

ECE:5430 Electric Drive Systems 3 s.h.

Basic characteristics of DC and AC electric motors and their associated power electronics interfaces; applications of electric machines and drives that are essential for wind turbines, electric and hybrid-electric; emphasis on vehicles; electric machines in context of overall drives and associated applications; space-vector theory used to analyze electric machines and drives; DC motor/generator characteristics and control; AC single phase and three-phase motor characteristics and feedback control, including AC synchronous and induction motors. Prerequisites: ENGR:2120 and PHYS:1611 and MATH:2560. Requirements: junior standing.

ECE:5450 Machine Learning 3 s.h.

Fundamentals of machine learning theory including regression, classification, neural networks, clustering, and principal component analysis; engineering applications. Prerequisites: ECE:2400 or BME:2200. Same as IGPI:5450.

ECE:5455 Statistical Foundations of Inference and Machine Learning 3 s.h.

Basic strategies to cope with noise in measurements with three objectives at core of most machine learning tasks—hypothesis testing (where one must choose between various hypotheses), parameter estimation (where multiple parameters whose values define how a system will behave must be estimated from noisy measurements), and filtering (where a noisy music signal must be cleaned up); topics include probability and statistics, random variables and signals, hypothesis testing, parameter estimation, discrete- and continuous-time random processes, and optimal filtering; assignments, written exams, and projects. Prerequisites: STAT:2020 and ECE:2400.

ECE:5460 Digital Signal Processing 3 s.h.

Theory, techniques used in representing discrete-time signals; system concepts in frequency and sampling domains; FIR and IIR digital filter theory, design and realization techniques; theory, application of discrete Fourier transforms/FFT. Prerequisites: ECE:3400. Same as IGPI:5460.

ECE:5470 Medical Imaging Physics 3 s.h.

Physics and data acquisition techniques of major medical imaging modalities (X-ray, CT, MR, ultrasound, PET, SPECT); physical interactions of energy with living tissue; principles and methods for acquiring imaging data and subsequent image construction; how individual modalities influence image quality; MATLAB programming required. Second in a medical imaging sequence. Prerequisites: BME:2200 and BME:2210. Same as BME:5210, IGPI:5206.

ECE:5480 Digital Image Processing 3 s.h.

Mathematical foundations and practical techniques for digital manipulation of images; image sampling, compression, enhancement, linear and nonlinear filtering and restoration; Fourier domain analysis; image pre-processing, edge detection, filtering; image segmentation. Prerequisites: ECE:2400 or BME:2200. Same as IGPI:5480.

ECE:5490 Multi-Dimensional Image Analysis Tools and Techniques 3 s.h.

Broad exposure to common tools of medical imaging analysis in commercial, clinical, and research settings, including algorithm development (using C+++ and ITK), rapid prototyping (SimpleITK, nipype, ipython notebook), statistical analysis (R), machine learning (scikit-learn, keras/tensorflow) and reproducible science tools (python, git, bash); special emphasis on big data challenges associated with volume, velocity, and veracity; real-world settings for problems include image-guided robotic surgery, dose treatment planning, and image analysis. Prerequisites: ECE:5480 and (ECE:3330 or CS:2820).

ECE:5500 Digital Communications 3 s.h.

Random processes, source coding, digital transmission at baseband, optimum receiver design for Gaussian noise, error probability and power spectrum analysis, signal design for bandlimited channels, digital carrier modulation, bandwidth/energy/error probability tradeoffs, coding for error detection and correction. Prerequisites: STAT:2020 and ECE:3500.

ECE:5520 Introduction to Information and Coding Theories 3 s.h.

Quantitative measure of information; source encoding; error detecting codes; block and convolutional codes, design of hardware and software implementations; Viterbi decoding. Prerequisites: ECE:3500 and STAT:2020.

ECE:5525 Cryptography 3 s.h.

Introduction to cryptography, steam ciphers and block ciphers, data encryption standards, public key cryptosystems, digital signatures, message authentication codes, hash functions, and key management. Prerequisites: MATH:2550 and ENGR:2730.

ECE:5550 Internet of Things 3 s.h.

Internet of things (IoT) describes the evolution of the internet to intelligent devices, sensors, actuators, controllers, and other types of internet-enabled components; soon, IoT-based applications will enable seminal advances in a wide range of areas including health and lifestyle, transportation, smart cities, environment, energy, agriculture, and industry; topics include IoT logical and physical structure, IoT-enabled internet services, IoT devices/platforms/endpoints, IoT application domains, IoT security and privacy issues, and IoT data analytic; case studies and projects focused on design and implementation of a working IoT application. Prerequisites: ENGR:2730. Requirements: background in computer networks or embedded systems.

ECE:5600 Control Theory 3 s.h.

State space approach; controllability, observability, canonical forms, Luenberger observers, feedback control via pole placement, stability, minimal realization and optimal control. Prerequisites: ECE:3600.

ECE:5620 Electric Power Systems 3 s.h.

Overview of electric power systems; single phase and three-phase representations of electric power signals and electromagnetic concepts; AC transmission lines and underground cables, power flow in a power system network, AC power transformers, High Voltage DC (HVDC) power transmission, electric power distribution, synchronous generators, voltage regulation and stability, power system transients and dynamic stability, control of interconnected power systems, transmission line faults, transient over-voltages and surge protection. Prerequisites: PHYS:1611 and ENGR:2120 and MATH:2560. Requirements: junior standing.

ECE:5630 Sustainable Energy Conversion 3 s.h.

Overview of sustainable energy conversion technologies; thermal energy conversion; Carnot and Rankine cycles; solar resource and raw energy availability, PV solar cell characteristics, solar panel construction, Maximum Power Point (MPP) tracking and utility grid interface; wind energy conversion resource and available energy, wind turbine configurations, electrical power interface electronics; ocean energy conversion tidal and wave resources and conversion technologies; tidal basin containment conversion and tidal current turbine systems. Prerequisites: ENGR:2120 and PHYS:1611 and MATH:2560. Requirements: junior standing.

ECE:5640 Computer-Based Control Systems 3 s.h.

Discrete and digital control systems; application of computers in control; sampling theorem; discrete time system models; analysis and design of discrete time systems; control design by state variable and input/output methods; advanced topics in digital controls; lab. Prerequisites: ECE:5600. Same as IGPI:5641.

ECE:5700 Advanced Electromagnetic Theory 3 s.h.

Time varying fields; plane wave propagation, reflection, refraction; waves in anisotropic media transmission lines, impedance matching, Smith chart; metallic and dielectric wave guides; resonators; antennas, antenna arrays. Prerequisites: ECE:3700.

ECE:5780 Optical Signal Processing 3 s.h.

Linear systems description of optical propagation; diffraction and angular plane wave spectrum; lenses as Fourier transformers, lens configurations as generalized optical processors; lasers, coherence, spatial frequency analysis; holography; convolvers, correlators, matched filters; synthetic aperture radar; optical computing. Requirements: for ECE:5780ECE:3700; for PHYS:4820PHYS:3812. Same as PHYS:4820.

ECE:5790 Electro Optics 3 s.h.

Wave equation solutions; optical birefringence; finite beam propagation in free space, dielectric waveguides and fibers; optical resonators; nonlinear phenomena; electro-optic, acousto-optic modulation; optical detection, noise; application to communication systems. Requirements: for ECE:5790ECE:3700; for PHYS:4726PHYS:3812. Same as PHYS:4726.

ECE:5800 Fundamentals of Software Engineering 3 s.h.

Problem analysis, requirements definition, specification, design, implementation, testing/maintenance, integration, project management; human factors; management, technical communication; design methodologies; software validation, verification; group project experience. Prerequisites: CS:2820 or ECE:3330. Same as CS:5800.

ECE:5810 Formal Methods in Software Engineering 3 s.h.

Models, methods, and their application in all phases of software engineering process; specification methods; verification of consistency, completeness of specifications; verification using tools. Prerequisites: ECE:3330 or CS:2820. Recommendations: CS:4350. Same as CS:5810.

ECE:5820 Software Engineering Languages and Tools 3 s.h.

Modern agile software development practices for cloud and web-based applications, using state-of-the-art software engineering languages, tools, and technologies; agile software development practices, software-as-a-service (SAAS), and the Ruby on Rails Development Framework. Prerequisites: ECE:3330 or CS:2820. Same as CS:5820.

ECE:5830 Software Engineering Project 3 s.h.

Team software development project using concepts and methodologies learned in earlier software engineering classes; practical aspects of large-scale software development. Prerequisites: ECE:5820. Same as CS:5830.

ECE:5840 Software Security 3 s.h.

Principles of computer security with emphasis on software development and deployment; cryptographic tools, authentication, access control, database and datacenter security, malicious software, denial of service attacks, firewalls, intrusion detection and prevention, buffer overflow attacks, and software and operating system security; case study investigations using hands-on tools. Prerequisites: ECE:3330 or CS:2820.

ECE:5845 Modern Databases 3 s.h.

Introduction to contemporary database architectures including relational, key-value, document-store, and graph databases; SQL, normalization; NoSQL models; relative strengths and weaknesses of database architectures; enterprise scalability issues; projects involving use of modern database systems (e.g., Postgres/MySQL, Redis, MongoDB, Neo4J). Prerequisites: ENGR:2730 or CS:2230.

ECE:5995 Contemporary Topics in Electrical and Computer Engineering arr.

New topics or areas of study not offered in other electrical and computer engineering courses; based on faculty/student interest; not available for individual study.

ECE:5998 Individual Investigations: Electrical and Computer Engineering arr.

Individual projects for electrical and computer engineering graduate students; laboratory study, engineering design project, analysis and simulation of an engineering system, computer software development, research. Requirements: graduate standing.

ECE:5999 Research: Electrical and Computer Engineering MS Thesis arr.

Experimental and/or analytical investigation of approved topic for partial fulfillment of requirements for MS degree with thesis in electrical and computer engineering. Requirements: graduate standing.

ECE:7470 Image Analysis and Understanding 3 s.h.

Mathematical foundations and practical techniques of digital image analysis and understanding; image segmentation (from edges and regions), object description (from boundaries, regions, scale, scale insensitive descriptions, 3D shape, texture) pattern recognition (statistical and syntactic methods, cluster analysis), image understanding (knowledge representation, control strategies, matching, context, semantics), image analysis and understanding systems; lab arranged. Prerequisites: ECE:5480. Same as IGPI:7470.

ECE:7480 Advanced Digital Image Processing 3 s.h.

Advanced local operators (scale-space imaging, advanced edge detection, line and corner detection), image morphology (binary/gray scale operators, morphological segmentation and watershed), digital topology and geometry (binary/fuzzy digital topology, distance functions, skeletonization), color spaces, wavelets and multi-resolution processing (Haar transform, multi-resolution expansions, wavelet transforms in one or two dimensions, fast wavelet transform, wavelet packets), image registration (intensity correlation, mutual information, and landmark-based deformable registration methods). Prerequisites: ECE:5460 and ECE:5480. Same as IGPI:7480.

ECE:7720 Semiconductor Physics 3 s.h.

Electronic, optical, and materials properties of semiconductors. Prerequisites: PHYS:4728 and PHYS:5742. Same as PHYS:7720.

ECE:7930 Seminar: Plasma Physics arr.

Current research. Same as PHYS:7930.

ECE:7999 Research: Electrical and Computer Engineering PhD Thesis arr.

Experimental and/or analytical investigation of approved topic for partial fulfillment of requirements for PhD in electrical and computer engineering.