Skip main navigation

Electrical and Computer Engineering

Current Students

Course prerequisites and corequisites

Information provided may be incomplete. Visit the course page for full details.

Course Requirements
18-100 Introduction to Electrical and Computer Engineering

Corequisites: 21-120

18-200 Emerging Trends in Electrical and Computer Engineering

Prerequisites: 18-100 and sophomore standing required.

18-202 Mathematical Foundations of Electrical Engineering

Prerequisites: 21-122 OR 21-118 OR 21-123

18-213 Introduction to Computer Systems

Prerequisites: 15-122 (Grade of C or higher is required in the prerequisites)

18-220 Electronic Devices and Analog Circuits

Corequisite: 18-202

18-240 Structure and Design of Digital Systems

Prerequisite: 18-100

18-243 Introduction to Computer Systems

Prerequisites: 15-122 or 15-123 (Grade of C or higher is required in the prerequisites)

18-290 Signals and Systems

Prerequisites: 18-100

18-300 Fundamentals of Electromagnetics

Prerequisite: 18-220 or equivalent

18-310 Fundamentals of Semiconductor Devices

Prerequisite: 18-220 (Note: the prerequisite is typically waived for MSE students who intend to pursue the Electronic Materials Minor)

18-320 Microelectronic Circuits

Prerequisite: 18-220

18-340 Digital Computation

Prerequisite: 18-240

18-341 Logic Design Using Simulation, Synthesis, and Verification Techniques

Prerequisite: 18-240

18-342 Fundamentals of Embedded Systems

Prerequisite: 18-240

18-342G Fundamentals of Embedded Systems

Prerequisite: 18-240

18-342PP Fundamentals of Embedded Systems

Prerequisite: 18-240

18-345 Introduction to Telecommunication Networks

Prerequisites: 18-240 and 36217 and 15122

18-348 Embedded System Engineering

Prerequisites: 18-240 and 18-213

18-349 Embedded Real-Time Systems

Prerequisites: 18-240 and 18-213

18-370 Fundamentals of Control

Prerequisite: 18-290

18-391 Noisy Signal Representation and Processing

Prerequisites: 18-202, 18-290, 36-217

18-401 Electromechanics

Prerequisite: 18-300

18-402 Applied Electrodynamics

Prerequisite: 18-300 or equivalent.

18-411 Computational Techniques in Engineering

Prerequisites: Math sequence 21-120, 21-122, 21-259, 21-260 or equivalent; 15-100 or equivalent

18-415 From Design to the Market for Deep Submicron ICs

Prerequisite: 18-320

18-418 Electric Energy Processing: Fundamentals and Applications

Prerequisite: 18-220

18-419 Semiconductor Device Applications - Optoelectronics and Nanoelectronics

Prerequisites: 18-310

18-421 Analysis and Design of Analog Circuits

Prerequisites: 18-290 and 18-320

18-432 Senior Projects

Prerequisite: Senior standing in Electrical and Computer Engineering

18-447 Introduction to Computer Architecture

Prerequisites: 18-240 and (15-213 or 18-243) and (18-340 or 18-341 or 18-348 or 18-349 or 18-320)

18-450 Digital Communications

Prerequisites: 18-391

18-472 Fundamentals in Electric Energy Systems

Prerequisites: 33-107 and (18-202 or equivalent)

18-482 Telecommunications, Technology Policy & Management

Prerequisites: 73-100 and junior or senior standing

18-487 Introduction to Computer and Network Security and Applied Cryptography

Prerequisite: 15-213 or 18-243

18-491 Digital Signal Processing

Prerequisite: 18-391

18-492 Special Topics in Speech Processing

Prerequisites: 15-211

18-493 Electroacoustics

Prerequisite: 18-220

18-496 Introduction to Biomedical Imaging and Image Analysis

Prerequisites: 18-290

18-510 Sensor Systems Design

Prerequisites: 18-401 or 18-402 or 18-419 or

18-513 Antenna Design for Wireless Communications

Prerequisite: 18-402 or equivalent course in electrodynamics and waves

18-513 RF Circuits and Antennas for Wireless Systems

Prerequisites: (18-300 and 18-320) or 18-402

18-513SV RF Circuits and Antennas for Wireless Systems

Prerequisites: 18-300 and 18-321 or 18-402

18-525 Integrated Circuit Design Project

Prerequisites: {18-320 AND (18-340 or 18-341 or 18-310 or 18-450 or 18-491 or 18-415)} or

18-540 Rapid Prototyping of Computer Systems

Prerequisites: (18-348 and 18-320) or (18-348 and 18-391) or (18-349 and 18-320) or (18-349 and 18-391) or (18-320 and 18-391) or (18-320 and 18-340) or (18-320 and

18-545 Advanced Digital Design Project

Prerequisites: 18-447 or {(18-340 and 18-341) or (18-340 and 18-348) or (18-340 and 18-349) or (18-340 and 18-320) or (18-341 and 18-348) or (18-341 and 18-349) or (18-341 and 18-320) or (18-348 and 18-320) or (18-349 and 18-320)}

18-578 Mechatronic Design

Prerequisites: (18-348 and 18-370) or (18-349 and 18-370) or 18-474

18-605 Innovation in Science and Engineering - Theory and Fundamentals

Prerequisites: Graduate Standing

18-606 Innovation in Science in Engineering - Application

Prerequisites: Graduate Standing and 18-605

18-610 Fundamentals of Modern CMOS Devices

Pre-requisites: 18-310.

18-614 Microelectromechanical Systems

Prerequisites: 18-300 or 18-310 or 18-321 or 18-322 or 24-351

18-615 Micro and Nano Systems Fabrication

Prerequisites: 18-310, senior standing with instructor's permission, or graduate standing

18-616 Information Storage Devices and Systems

Pre-requisites: 18-310 or 18-300

18-617 Memory Devices and Systems

Prerequisites: 18-320

18-622 Advanced Digital Integrated Circuit Design

Prerequisites: 18-422

18-623 Analog Integrated Circuit Design

Prerequisites: 18-421

18-630 Introduction to Security and Policy

Prerequisite: Graduate standing

18-630G Introduction to Computer Security

Prerequisite: Graduate standing

18-631 Introduction to Information Security

Prerequisites: The course assumes a basic working knowledge of computers, networks, C and UNIX programming, as well as an elementary mathematics background, but does not assume any prior exposure to topics in computer or communications security. Students lacking technical background (e.g., students without any prior exposure to programming) are expected to catch up through self-study.

18-639A Special Topics in Security: Intrusion Tolerance

Prerequisites: Introduction to Computer Security (15213), and it is expected that students have at least introductory notions of: computational systems and computer networks; operating systems and distributed systems.

18-639D Special Topics in Security: Wireless Network Security

Prerequisites: Introduction to Computer Security (15213), and it is expected that students have at least introductory notions of: computational systems and computer networks; operating systems and distributed systems.

18-639PP Special Topics in Security: Intrusion Tolerance

Prerequisites: Introduction to Computer Security (15213), and it is expected that students have at least introductory notions of: computational systems and computer networks; operating systems and distributed systems.

18-639SV Special Topics in Security: Wireless Network Security

Prerequisites: Introduction to Computer Security (15213), and it is expected that students have at least introductory notions of: computational systems and computer networks; operating systems and distributed systems.

18-648 Real-Time Embedded Systems

Prerequisites: (15-213 or 18-243) and 18-345 and 18-447

18-649 Distributed Embedded Systems

Prerequisites: 18-348 or 18-349 and senior or graduate standing.

18-660 Numerical Methods for Engineering Design and Optimization

Prerequisites: 18-202, 21-241, 36-217

18-667 Design of Integrated Embedded Systems

Prerequisites: Senior or graduate standing

18-669 Special Topics In Cad I: Computing and Biology: Theory and Practice

Prerequisites: Senior or graduate standing

18-699 Special Topics in Signal Processing: Neural Signal Processing

Prerequisites:

18-700 Technology Entrepreneurship

Prerequisite: Graduate standing (Preference will be given to PhD level students)

18-703 Special Topics in ECE: Obtaining Value from R&D in an Industrial Setting

Prerequisites: Graduate Student Status. IMB students may only take this course in their final year at Carnegie Mellon.

18-712 Elements of Photonics for Communication Systems

Prerequisites: 18-300 and 18-310 and (18-402 or 33-439) and senior or graduate standing.

18-713 Optical Networks

Prerequisites: Background in undergraduate probability and telecommunication networks and senior or graduate standing.

18-715 Magnetic Materials and Devices

Prerequisites: 18-300 or equivalent background in electromagnetic fields; Senior level solid state physics, electronic materials, or the equivalent, and senior or graduate standing.

18-715 Physics of Applied Magnetism

Prerequisite: 18-300 or equivalent background in electromagnetic fields; Senior level solid state physics and materials, or the equivalent, and a senior or graduate student standing.

18-716 Advanced Applied Magnetism

Prerequisite: 18-715 or equivalent upon instructor's approval and senior or graduate standing.

18-721 Advanced Analog Integrated Circuits Design

Prerequisites: 18-623 (was 18-523 before Fall 2005) and senior or graduate standing.

18-722 Advanced Digital Integrated Circuits Design

Prerequisites: 18-322 and senior or graduate standing.

18-723 RF IC Design and Implementation

Prerequisites: 18-623 (was 18-523 before Fall 2005) and senior or graduate standing.

18-724 Microelectromechanical System Design

Prerequisites: 18-614 or equivalent by petition of instructor and senior or graduate standing.

18-725 Advanced Digital Integrated Circuit Design

Prerequisites: 18-422 and 18-447

18-729C Special Topics in Circuits: Power Electronics

Prerequisite: Senior or graduate standing

18-730 Introduction to Computer Security

Prerequisites: 15-214

18-730G Introduction to Computer Security

Prerequisites: 15-211 and senior or graduate standing.

18-730PP Introduction to Computer Security

Prerequisites: 15-211 and senior or graduate standing.

18-731 Network Security

Prerequisites: 18-630 or 18-730 and senior or graduate standing.

18-731PP Network Security

Prerequisites: 18-630 or 18-730 and senior or graduate standing.

18-732 Secure Software Systems

Prerequisites: 18-730; Skills in operating systems and programming languages (C and Java), and senior or graduate standing.

18-732PP Secure Software Systems

Prerequisites: 18-730; Skills in operating systems and programming languages (C and Java), and senior or graduate standing.

18-733 Applied Cryptography

Prerequisites: 18-730 and senior or graduate standing.

18-733J Applied Cryptography

Prerequisites: 18-730 and senior or graduate standing.

18-740 Computer Architecture

Prerequisites: 18-447 or equivalent

18-741 Advanced Computer Architecture

Prerequisites: 18-347 or 18-447 and senior or graduate standing.

18-742 Parallel Computer Architecture

Prerequisites: 18-741 (previously 18-547) and senior or graduate standing.

18-743 Energy Aware Computing

Prerequisites: Senior or graduate standing

18-745 Rapid Prototyping of Computer Systems

Prerequisites: (18-348 and 18-320) or (18-348 and 18-391) or (18-349 and 18-320) or (18-349 and 18-391) or (18-320 and 18-391) or (18-320 and 18-340) or (18-320 and 18-341) or (18-391 and 18-340) or (18-391 and 18-341). Graduate standing is required under the graduate course number.

18-746 Advanced Storage Systems

Prerequisite: 18-213

18-748 Wireless Sensor Networks

Prerequisites: 18-348 or 18-349 or 15-410

18-749 Fault-Tolerant Distributed Systems

Prerequisites: Experience in programming and senior or graduate standing.

18-749PP Fault-Tolerant Distributed Systems

Prerequisites: Experience in programming and senior or graduate standing.

18-750 Fundamentals of Telecommunications Networks

Prerequisites: Graduate standing.

18-751 Applied Stochastic Processes

Prerequisites: 18-391 and senior or graduate standing.

18-752 Estimation, Detection and Identification

Prerequisites: 18-751 and senior or graduate standing.

18-752PP Estimation, Detection and Identification

Prerequisites: 18-751 and senior or graduate standing.

18-753 Information Theory and Coding

Prerequisites: 36-217 and senior or graduate standing.

18-756 Packet Switching and Computer Networks

Prerequisites: 18-345 and senior or graduate standing.

18-756G Packet Switching and Computer Networks

Prerequisites: 18-345 and senior or graduate standing.

18-756PP Packet Switching and Computer Networks

Prerequisites: 18-345 and senior or graduate standing.

18-757 Network Management and Control

Prerequisites: A course in probability; 18-756 and senior or graduate standing.

18-757PP Network Management and Control

Prerequisites: A course in probability; 18-756 and senior or graduate standing.

18-758 Wireless Communications

Prerequisites: 18-450 and senior or graduate standing.

18-759 Wireless Networks

Prerequisites: (18-345 or 15-441) and 18-391

18-759PP Wireless Networks

Prerequisites: 36-217 (Probability and Random Processes), 18-345 (Telecommunication Networks), 18-396 (Undergraduate Signals and Systems) and senior or graduate standing.

18-760 VLSI CAD: Logic to Layout

Prerequisites: 15-214 and 18-240 and 18-320

18-762 Circuit Simulation: Theory and Practice

Prerequisites: 18-320, 21-241 and 18-660 or equivalent, and graduate standing.

18-764 In Between Design and Manufacturing of Deep-Submicron Integrated Circuits

Prerequisites: 18-422 or 18-525

18-765 Digital Systems Testing and Testable Design

Prerequisites: 15-214 and 18-240 and (18-340 or 18-341)

18-771 Linear Systems

Prerequisites: 18-370 or 18-474

18-771PP Linear Systems

Prerequisite: 18-470 or 18-474, and graduate standing in CIT or MCS

18-777 Complex Large-Scale Dynamic Systems

Prerequisites: Senior or graduate standing

18-781 Speech Recognition and Understanding

Prerequisites: Sound mathematical background, knowledge of basic statistics, good computing skills. No prior experience with speech recognition is necessary. This course is primarily for graduate students in LTI, CS, Robotics, ECE, Psychology, or Computational Linguistics. Others by prior permission of instructor.

18-781SV Speech Recognition and Understanding

Prerequisites: Sound mathematical background, knowledge of basic statistics, good computing skills. No prior experience with speech recognition is necessary. This course is primarily for graduate students in LTI, CS, Robotics, ECE, Psychology, or Computational Linguistics. Others by prior permission of instructor.

18-791 Medical Imaging Analysis

Prerequisites: Knowledge of vector calculus, basic probability, and C++ or python (most lectures will use C++).

18-792 Advanced Digital Signal Processing

Prerequisites: 18-491 and 36-217

18-793 Optical Image and Radar Processing

Prerequisite: 18-396 and senior or graduate standing.

18-794 Pattern Recognition Theory

Prerequisites: 36-217, or equivalent introductory probability theory and random variables course and an introductory linear algebra course and senior or graduate standing.

18-795 Bioimage Informatics

Prerequisites: 18-290

18-797 Machine Learning for Signal Processing

Prerequisites: Linear Algebra, Basic Probability Theory, Signal Processing and Machine Learning.

18-798 Image and Video Processing

Prerequisite: 18-396 or equivalent, or permission of instructor

18-798 Image, Video, and Multimedia

Prerequisites: MATLAB or C

18-799A Special Topics in Signal Processing: Registration in Bioimaging

Prerequisites: 18-396 or permission of the instructor, working knowledge of Matlab, and some image processing experience.

18-799B Special Topics in Signal Processing: Nonlinear Optimization

Prerequisites: Undergraduate linear algebra, multivariable calculus

18-799C Special Topics in Signal Processing: Constraint Satisfaction and Optimization

Prerequisite: Senior or graduate standing.

18-799E Special Topics in Signal Processing: Biometric Recognition

Prerequisites: 36-217 and Introductory Digital Signal Processing (18-491 (new) or 18-791 (old)) and senior or graduate standing.

18-799F Special Topics in Signal Processing: Algebraic Signal Processing Theory

Prerequisites: PhD standing, 18-396, one graduate level signal processing course, and Matrix Algebra or by instructor's consent.

18-799G Special Topics in Signal Processing: Wavelets Multiresolution Techniques

Prerequisites: 18-396

18-799H New Topics in Signal Processing: Network Science: Modeling and Inference

Pre-requisites: Probability theory.

18-799K Special Topics in Signal Processing: Cognitive Video

Pre-requisites: 18-290 or instuctor approval, MATLAB or C, Calculus, and matrix computation.

18-799L Special Topics in Signal Processing: Advanced Speech Lab

Prerequisites: 18-781 or by consent by instructor

18-799PP Special Topics in Signal Processing: Nonlinear Optimization

Prerequisites: Undergraduate linear algebra and multivariable calculus

18-799SV Special Topics in Signal Processing: Statistical Discovery and Learning

Prerequisites: Students entering the class with a pre-existing working knowledge of probability, statistics and algorithms will be at an advantage, but the class has been designed so that anyone with maturity in mathematics and computer science can catch up and fully participate.

18-817 Applied Physics: Fundamentals of Semiconductors and Nanostructures

Prerequisites: 09-511, 09-701, 09-702, 18-303, 18-310, 18-402, 27-770, 33-225, 33-234 or familiarity with the material or basic concepts covered in these courses and senior or graduate standing.

18-819A Special Topics in Applied Physics: Applications of Lithographically

Prerequisites: 18-614 or 18-615 or 18-724

18-819C Special Topics in Applied Physics: Micro and Nano Systems Fabrication

Prerequisites: 18-310, senior standing with instructor's permission, or graduate standing

18-819D Special Topics in Applied Physics: Nanoscale Electronic Devices: Science, Materials, and Potential Applications

Prerequisites: Senior or graduate standing.

18-819L Special Topics in Applied Physics: Antennas for Wireless Communications

Prerequisites: 18-303 or equivalent undergraduate course in electrodynamics and senior or graduate standing.

18-842 Distributed Systems

Prerequisites: Graduate standing and (15-410 or 15-412 or 14-342 or 18-342 or 18-348 or 18-349) and (18-345 or 18-756 or 14-740)

18-842G Distributed Systems

Prerequisites: Graduate standing, (15-410 or 15-412 or 14-342 or 18-342 or 18-348 or 18-349) and (18-345 or 18-756 or 14-845)

18-842PP Distributed Sysyems

Prerequisites: Graduate standing, (15-410 or 15-412 or 14-342 or 18-342 or 18-348 or 18-349) and (18-345 or 18-756 or 14-845)

18-843 Mobile and Pervasive Computing

Prerequisites: 15-410 and senior or graduate standing.

18-845 Internet Services

Prerequisites: 18-213

18-847A Special Topics in Computer Systems: Mobile Hardware for Software Engineers

Prerequisites: Some understanding of basic electronic terminology and Java programming required; C programing desired.

18-847Z Special Topics in Computer Systems: Data Intensive Computing and Storage

Prerequisites: This class is intended for those pursuing research in its topic space. As such, it requires Ph.D. student status or permission of the instructor. Permission might be given to non-Ph.D. students, for example, who have taken and done well in 15-712 or who have demonstrated research skills in other ways.

18-848C Special Topics in Embedded Systems: Networked Cyber-Physical Systems

Pre-requisites: (15-213 or 18-243) and (18-349 or 15-410), one course on computer networks

18-849 Dependable Embedded Systems

Prerequisites: Graduate standing and one of: 18-649 or 18-749 or entrance examination.

18-859C Special Topics in Communications: Network Management and Control

Prerequisites: 18-756 (or graduate level networking course) and senior or graduate standing.

18-859D Special Topics in Communications: Error Control Coding

Prerequisites: 36-217 (or equivalent), Linear Algebra and senior or graduate standing.

18-859H Special Topics in Communications: Emerging Topics in Wireless Networks

Prerequisite: Graduate Standing

18-859H Special Topics in Communications: Emerging Topics in Wireless Networks

Prerequisite: Graduate Standing

18-869D Special Topics in CAD: Wild and Crazy Ideas in Electrical and Computer Engineering

Prerequisites: Graduate standing

18-875 Engineering and Economics of Electric Energy Systems

Prerequisites: Basic electric circuits and/or basic economics and at least graduate standing.

18-879A Special Topics in Systems and Controls: Computer Control Engineering

Prerequisites: 18-370 or 18-470

18-879H Special Topics in Systems and Control: Advanced Linear Systems and Control

Prerequisites: A standard graduate-level course in linear algebra.

18-879K Special Topics in Systems and Controls: Adaptive Control and Signal Processing

Prerequisites: This course is intended for advanced undergraduate and beginning graduate students. The prerequisites are ordinary differential equations and 18-470 - Fundamentals of Control. It is helpful, but not required, to have taken or to take concurrently: 18-771 - Linear Systems and 18-491 - Digital Signal Processing.

18-879N Special Topics in Systems and Control: Multi-Agent Systems

Prerequisites: Graduate standing, or senior standing in CIT or Computer Science, or permission of the instructors.

18-879P Special Topics in Systems and Control: Engineering and Economics of Electric Power Systems

Prerequisites: Basic electric circuits and/or basic economics and senior or graduate standing.

18-879PR Special Topics in Systems and Control: Nonlinear Systems

Prerequisite: Linear Systems (18-771 A/PP)

18-879Q Special Topics in Systems and Control: Nonlinear Dynamics, Chaos, and Control: How Systems Really Work

Prerequisites: 18-470 or equivalent and familiarity with Matlab programming.

18-879R Special Topics in Systems and Control: Electric Power Systems: Modeling, Analysis, and Control

Prerequisite: Senior or graduate standing

18-879S Special Topics in Systems and Control: Networked Control Systems

Prerequisites: Basic knowledge of linear algebra, basic probability, stochastic processes, basic graph theory, estimation and control is a plus.

18-879T Special Topics in Systems and Control: Nonlinear Systems

Prerequisite: Linear Systems (18-771 A/PP)

18-995 Practicum in Electrical and Computer Engineering

Prerequisite: Approval of Department Head





5000 Forbes Avenue / Pittsburgh, PA 15213-3890 / Phone: 412-268-7400 / Fax: 412-268-2860