Carnegie Mellon University

Academic guide

Program details

The following applies to students entering Carnegie Mellon University Fall 2013 and later.

Minimum total units required for the BS in Electrical and Computer Engineering: 379

 

Table showing the courses included in the CIT General Requirements list for the ECE BS Degree.
Course Course Information Resources Units
99-101 Core @ CMU Stellic 3
CIT General Education
Please see the CIT General Education requirement page.
72
21-120 Differential and Integral Calculus Stellic 10
21-122 Integration and Approximation Stellic 10
XXXXX One other introductory engineering course (generally taken during first year) 12
33-141 Physics I for Engineering Students Stellic 12
33-142 Physics II for Engineering and Physics Students Stellic 12
15-112 Fundamentals of Programming and Computer Science Stellic 12
Total: 143

 

Table showing the courses included in the General Technical Requirements list for the ECE BS Degree.
Course Course Information Resources Units
xxxxx1 Two Math/Science Electives 18
21-325 OR 36-219 OR 36-225  Probability Requirement

21-325
36-219
36-225

9
18-2022 Mathematical Foundations of Electrical Engineering Stellic 12
21-127 OR 21-128 Concepts of Mathematics

21-127
21-128

123
15-122 Principles of Imperative Computation Stellic 124
Total: 63

1 The math/science electives may be satisfied by any course in the Mellon College of Science or Department of Statistics except for: 100-level courses in mathematics or statistics and courses designed for nonscience or engineering majors, such as (but not limited to) 03-132, 09-103, 09-104, 21-240, 21-257, 21-261, 21-350, 33-115, 33-120, 33-124, 33-106, 33-107, 36-200, 36-201, 36-202, 36-203, 36-207, 36-208, 36-209, 36-210, 36-247, 36-309, and 36-310. Mathematics courses of particular interest to students in ECE are: 21-228 (Discrete Mathematics), 21-241 (Matrices and Linear Transformations), 21-259 (Calculus in Three Dimensions), and 21-260 (Differential Equations).

2 This course can also be substituted by a combination of two of the following courses: 21-254, 21-259, 21-260, 21-241, 21-242, and 21-268. 

Effective Fall 2022. Prior to Fall 2022, 21-127 was 10 units.

Effective Summer 2023. Prior to Summer 2023, 15-122 was 10 units.

ECE students are required to take the following Core Courses along with their co or prerequisites.

Table showing the courses included in the Core Requirements list for the ECE BS Degree.
Course Course Information Resources Units

18-100

Introduction to Electrical and Computer Engineering Stellic
ECE Courses
12
18-200 ECE Sophomore Seminar Stellic
ECE Courses
1
18-213 Introduction to Computer Systems

Stellic
ECE Courses

12
18-220 Electronic Devices and Analog Circuits

Stellic
ECE Courses

12
18-240 Structure and Design of Digital Systems

Stellic
ECE Courses

12
18-290 Signals and Systems

Stellic
ECE Courses

12
Total: 61

To satisfy the ECE Area Requirements (36 units):

  • Two courses (24 units) must be taken from one of the areas
  • One additional course from a second area (12 units)

The following topics are the five areas of study within the ECE Department:

  • Device Science and Nanofabrication: Solid State Physics, Semiconductors, Electromagnetic Fields and Waves, Magnetics, Optics, etc.
  • Signals and Systems: Digital Signal Processing, Communication Systems, Control Systems, Power Systems, etc.
  • Circuits: Analog and Digital Circuits, Integrated Circuit Design, etc.
  • Hardware Systems: Logic Design, Computer Architecture, etc.
  • Software Systems: Programming, Embedded Systems, Data Structures, Compilers, Networks, Operating Systems, etc.

Device Science and Nanofabrication

Table showing the courses included in the Device Science and Nanofabrication area of study within the ECE BS Degree.
Course Course Information Resources Units Semester(s) offered* Course prereqs
18-300 Fundamentals of Electromagnetics Stellic
ECE Courses
12 Fall only 18-220
18-310 Fundamentals of Semiconductor Devices Stellic
ECE Courses
12 Spring only 18-220
18-416 Nano-Bio-Photonics Stellic
ECE Courses
12 Spring only 18-300

*This can be subject to change periodically. Last updated August 2, 2024.


Signals and Systems

Table showing the courses included in the Signals and Systems area of study within the ECE BS Degree.
Course Course Information Resources Units Semester(s) offered* Course prereqs
18-370 Fundamentals of Control Stellic
ECE Courses
12 Fall only 18-290 or 24352
18-372 Fundamental Electrical Power Systems Stellic
ECE Courses
12 Fall only 18-220
18-460 Optimization Stellic
ECE Courses
12 Spring only 18-202 or 21-254 or 21-259 or 21-260 & 36-219 or 36-218 or 36-225 or 21-325 & 21-241
18-461 Introduction to Machine Learning for Engineers Stellic
ECE Courses
12 Fall & Spring 18-202 and 21-127 and 15-122 and 36-218 or 36-225 or 36-219 or 21-325
18-475 Autonomous Control Systems Stellic
ECE Courses
12 Spring only 18-290
18-491 Digital Signal Processing Stellic
ECE Courses
12 Spring only 18-290

Note: 18-792, 18-793, and 18-794 satisfy Signals & Systems Area requirements for students who entered the university prior to Fall 2024.

*This can be subject to change periodically. Last updated August 2, 2024.


Circuits

Table showing the courses included in the Circuits area of study within the ECE BS Degree.
Course Course Information Resources Units Semester(s) offered* Course prereqs
18-320 Microelectronic Circuits Stellic
ECE Courses
12 Fall and Spring 18-220
18-421 Analog Integrated Circuit Design Stellic
ECE Courses
12 Fall only 18-290 & 
18-320
18-422 Digital Integrated Circuit Design Stellic
ECE Courses
12 Fall only 18-240 & 
18-320

*This can be subject to change periodically. Last updated August 2, 2024.


Hardware Systems

Table showing the courses included in the Hardware Systems area of study within the ECE BS Degree.
Course Course Information Resources Units Semester(s) offered* Course prereqs
18-340 Hardware Arithmetic for Machine Learning Stellic
ECE Courses
12 Fall only 18-240
18-344 Computer Systems and the Hardware–Software Interface Stellic
ECE Courses
12 Fall only 18-213 & 18-240
18-341 Logic Design and Verification Stellic
ECE Courses
12 Fall and Spring 18-240
18-447 Introduction to Computer Architecture Stellic
ECE Courses
12 Spring only 18-240 & 18-213 & (18-320 or 18-330 or 18-340 or 18-341 or 18-344 or 18-349)

*This can be subject to change periodically. Last updated August 2, 2024.


Software Systems

Table showing the courses included in the Software Systems area of study within the ECE BS Degree.

17-437

Web Application Development Stellic 12 Fall & Spring 18-213 or 17-214


*This can be subject to change periodically. Last updated November 18, 2024.


Course Course Information Resources Units Semester(s) offered* Course prereqs
18-330 Introduction to Computer Security Stellic
ECE Courses
12 Fall and Spring 18-213
18-344 Computer Systems and the Hardware–Software Interface Stellic
ECE Courses
12 Fall only 18-213 & 18-240
18-349 Introduction to Embedded Systems Stellic
ECE Courses
12 Fall & Spring 18-213 & 18-240
18-351 Full-Stack Software Development for Engineers

Stellic
ECE Courses

12 Fall only 18-213
18-441 Computer Networks Stellic
ECE Courses
12 Fall only 36-217 & 18-213
18-449 Distributed Embedded Systems Stellic
ECE Courses
12 Intermittently offered 18-349
18-452 Wireless Networking and Applications Stellic
ECE Courses
12 Spring Only 18-213
15-410 Operating System Design and Implementation Stellic 15 Fall & Spring 18-213
15-411 Compiler Design Stellic 15 Spring Only 18-213

15-418

Parallel Computer Architecture and Programming Stellic 12 Fall & Spring 18-213

15-440

Distributed Systems Stellic 12 Fall & Spring 18-213

15-441

Networking and the Internet Stellic 12 Fall & Spring 18-213

15-445

Database Systems Stellic 12 Fall & Spring 18-213

15-462

Computer Graphics Stellic 12 Fall & Spring 18-213 & 18-202

12 units of a Coverage Requirement are required for the ECE curriculum. Students may use this requirement to further specialize in their main area, or they may use this to explore some of the other areas within the department. Students are also encouraged to pursue undergraduate project units, or research, to fulfill this requirement.


Approved Coverage Courses

All courses offered by the ECE Department with the values 18-300 and higher are approved to count as a Coverage Requirement. You can see the ECE course list on our course list page.

Below are additional courses approved to count for this requirement that are offered outside of the ECE department.

Table showing additional courses outside of the ECE Department approved to fulfill the Coverage Requirement for the ECE BS Degree.
Course Course Information Resources Units
10-301 Introduction to Machine Learning Stellic 12
15-210 Parallel and Sequential Data Structures and Algorithms Stellic 12
15-281 Artificial Intelligence: Representation and Problem Solving Stellic 12
15-312 Foundations of Programming Languages Stellic 12
15-394 Intermediate Rapid Prototyping Stellic 5
15-410 Operating System Design and Implementation Stellic 15
15-411 Compiler Design Stellic 15
15-412 Operating System Practicum Stellic 12
15-415 Database Applications Stellic 12
15-418 Parallel Computer Architecture and Programming Stellic 12
15-440 Distributed Systems Stellic 12
15-441 Networking and the Internet Stellic 12
15-445 Database Systems Stellic 12
15-451 Algorithm Design and Analysis Stellic 12
15-453 Formal Languages, Automata, and Computability Stellic 9
15-462 Computer Graphics Stellic 12
15-463 Computational Photography Stellic 12
15-466 Computer Game Programming Stellic 12
15-494 Cognitive Robotics: The Future of Robot Toys Stellic 12
16-384 Robot Kinematics and Dynamics Stellic 12
16-385 Computer Vision Stellic 12
17-214 Principles of Software Systems Construction: Objects, Design and Concurrency Stellic 12
17-313 Foundations of Software Engineering Stellic 12
17-437 Web Application Development Stellic 12

Undergraduate research

Undergraduate ECE students are encouraged to incorporate undergraduate projects in their program. This engineering experience will enhance both their education and resume in pursuit of further education and professional employment. All undergraduate projects conceived to meet the ECE Coverage requirement must be conducted with a faculty member. Should you have any questions, please check with your academic advisor.

Visit the Student Project Tracker guide for more information on our undergraduate research program, including instructions on how to apply online.

Table showing the courses associated with Undergraduate Research as an option for students pursuing the ECE BS Degree.
Course Course Information Resources Units
18-580 Undergraduate Projects Stellic
ECE Courses
Variable
39-500 CIT Honors Research Project Stellic Variable

This requirement provides students with the opportunity for hands-on experience. Each student must complete at least one of the approved capstone design courses. The capstone design courses are intended to enhance the student's repertoire of professional problem-solving and engineering design skills in the context of realistic engineering situations. In the capstone design courses, students work in teams to formulate a problem, propose an engineering solution or a design in the presence of technical and socioeconomic constraints, and make sound professional judgments among alternative solutions. One course from the following list must be taken (12 units):

Table showing the courses included in the Capstone Design Requirement within the ECE BS Degree.
Course Course Information Resources Units Semester offered* Course prereqs
18-500 ECE Design Experience Stellic
ECE Courses
12 Fall & Spring 18-220 & 18-290 & 18-240 & 18-213, plus any two ECE Area courses
18-525 Advanced Digital Integrated Circuit Design Stellic
ECE Courses
12 Spring only 18-220 & 18-290 & 18-240 & 18-213plus
(18622 or 18623 or 18422)
18-540 Rapid Prototyping of Computer Systems Stellic
ECE Courses
12 Spring only 18-220 & 18-290 & 18-240 & 18-213 plus
(18-320 or 18-370 or 18-491) AND (18-340 or 18-341 or 18-349)
18-578 Mechatronic Design Stellic
ECE Courses
12 Spring only 18-220 & 18-290 & 18-240 & 18-213plus
(18-370 & 18-349) or (17-313 & 18-349) or (18-320 & 18-349) or (18-320 & 18-370)
* This can be subject to change periodically. Last updated July 31, 2024.

Below is a brief video showcasing the Spring 2024 18500 - ECE Capstone Design Experience Demo Day:

For most students, the curriculum above will result in a remainder of 52 units of Free Electives to achieve the 379 required total units.

A Free Elective is defined as any graded course offered by any academic unit of the university. 

Up to 9 units of courses taken as Pass/Fail credit, such as physical education or StuCo courses, may also be used toward meeting the total units requirement.

Substitutions of courses from other high-quality universities may be accepted through submission of the Transfer Credit Request form on the CIT webpage.

The large number of units without categorical constraints provides the student with the flexibility to design a rich educational program.

Combining the ECE degree with a major/minor

ECE students may combine the ECE major with other studies in one of three ways:

  1. Earn two undergraduate degrees (dual degrees)
  2. Pursue an additional major (one degree, two majors)
  3. Augment a degree major with a minor

Combinations are possible with virtually all academic departments. Computer science, biomedical engineering, engineering and public policy, business, economics, foreign language, fine arts, music, and many others have all been paired successfully with the ECE degree. You can see more information on dual degrees, additional majors, or minors in the undergraduate catalog.

Majors and minors available

You can find information on specific programs on their individual websites. Click here to be directed to the list of CMU schools and colleges.

There are a number of additional majors and minors available within the College of Engineering exclusively to engineering students. Engineering and Public Policy and Biomedical Engineering are additional majors available exclusively to other engineering majors within CIT. CIT has a list of minors available only to students within the college as well.

Introduced in 2014, the Integrative Design, Arts, and Technology (IDeATe) network offers students the opportunity to become immersed in a collaborative community of faculty and peers who share expertise, experience, and passion at the intersection of arts and technology. Students will engage in active “learning by doing” in state-of-the-art maker spaces. The program addresses current and emerging real-world challenges that require disciplinary expertise coupled with multidisciplinary perspectives and collaborative integrative approaches. Students who participate in IDeATe will be uniquely able to take a “deep dive” into their chosen discipline while connecting to the diverse areas of knowledge and skill across the university. A student can choose to enroll in an IDeATe concentration (or minor) either in their sophomore or junior year. For more information, please visit the IDeATe website.

There are a number of resources available for you to plan your course schedule. It's recommended that you make at least a tentative course plan well ahead of time, particularly if you are planning on any additional majors or minors, in order to meet your graduation timeline.

The academic advising syllabus has a number of useful tools and resources, and we strongly recommend reviewing this document for tips.

Advisors and mentors

ECE assigns each student staff and faculty members to assist them with course planning, career questions, and general academic advice. While you are encouraged to build staff and faculty relationships throughout the department, college, and university, you also have assignments within ECE to assist you.

Your academic advisor is a full-time staff member here to assist you with curriculum questions, course questions, study abroad opportunities, or anything else pertaining to your academics. Your ECE academic advisor is assigned to you once you have declared your ECE major and stays with you through the duration of your academic career in the department. The undergraduate advising office is located in Hamerschlag Hall 1116.

  • Your faculty advisor is an ECE faculty member assigned to you for the duration of your sophomore year (in addition to your academic advisor). Your faculty advisor can help you decide what areas within ECE are related to your interests, choose courses, and plan a course timeline within ECE. You are emailed information about your faculty advisor late in the spring semester of your freshman year after you have declared your ECE major. Your faculty advisor information is listed in SIO.

Sample Curriculum

You can view the ECE BS four-year curriculum by going to the Undergraduate Catalog or by viewing a sample curriculum.

Stellic Academic Audit

The academic audit is a powerful tool to help you stay on track for graduation. As of 2018, CMU has adopted a new audit/schedule planning tool named "Stellic." You can access Stellic by visiting SIO > Course Schedule and clicking the link under "Stellic Degree Audit Application."

Below is a list of frequently asked questions by ECE students. You can scroll through the page, or click on a question in the list below to be directed to that question directly.

What courses count for the math/science elective requirement?

What is Experiential Learning?

How many units do I need to graduate with a BS in ECE?

What is the minimum QPA needed to graduate?

What is the overload policy in ECE?

How do I find research opportunities as an undergraduate student?

What is the difference between my staff and faculty advisor?

How do I schedule an appointment with my advisor?

What is the IMB (Integrated Master's/Bachelor's) program, and how do I apply?

How can I find information on scholarships?

Where can I find information on transferring credit from another university?


Q: What courses count for the math/science elective requirement?

A: The math/science electives may be satisfied by any course in the Mellon College of Science or Department of Statistics except for: 100-level courses in mathematics or statistics and courses designed for nonscience or engineering majors, such as (but not limited to) 09-103, 09-104, 21-240, 21-257, 21-261, 33-115, 33-120, 33-124, 36-201, 36-202, 36-203, 36-207, 36-208, 36-209, 36-210, 36-247, 36-309, and 36-310.

Mathematics courses of particular interest to students in ECE are: 21-228 (Discrete Mathematics), 21-259 (Calculus in Three Dimensions), and 21-260 (Differential Equations).


Q: What is Experiential Learning?

A: You can find information about Experiential Learning on the CIT webpage. Your Experiential Learning advisor and a list of some of the approved events to complete this requirement can be found on the course Blackboard page. Please remember that you must register for Experiential Learning (39-210, 39-220, 39-310) in order to access the Blackboard page and complete the paperwork for this requirement.


Q: How many units do I need to graduate with a BS in ECE?

A: The ECE undergraduate curriculum is 379 units. This includes 143 units of CIT general education electives, 61 units of general technical requirements, 121 units of ECE coursework, and (typically) 54 units of free electives. Up to 9 units of pass/fail or ROTC coursework may be applied to free electives.


Q: What is the minimum QPA needed to graduate?

A: ECE students must have a cumulative, CIT, and ECE QPA of at least 2.0 in order to graduate. Your cumulative QPA consists of all factorable courses you have taken as a student at CMU. Your CIT QPA consists of all factorable courses you have taken at CMU after your first year. Your ECE QPA consists of the 121 units of ECE coursework. Please see your academic advisor if you need clarification on this policy.


Q: What is the overload policy in ECE?

A: ECE students may not overload in their first semester of sophomore year. After their first semester, ECE students must have a cumulative QPA of 3.5 or higher in order to overload (which increases your max units to up to 66 units). Students with a cumulative QPA of less than a 3.5 must attain a semester QPA of 3.5 or higher to overload and therefore need to wait until after final grades are released for the semester. Please note that overloading is not a recommended strategy - please talk to your academic advisor before overloading your schedule.


Q: How do I find research opportunities as an undergraduate student?

A: The best way to find a research opportunity is to visit the Student Project Tracker (SPT) website. ECE students can view, apply, and accept research projects on this website. If students are interested in research that is not already posted on this website, you can reach out to the faculty you are interested in working with directly to have the project posted online.


Q: What is the difference between my academic advisor and my faculty advisor?

A: We have outlined this difference on our website in the Resources for Creating a Course Schedule section.


Q: How do I schedule an appointment with my advisor?

A: To schedule an appointment with your academic advisor, please click the link available in any of the emails from any of the academic advisors, or by scheduling here. 15- or 30-minute appointments are available most days.


Q: What is the IMB (Integrated Master's/Bachelor's) program, and how do I apply?

A: The Integrated Master's/Bachelor's program (otherwise known as the IMB program) allows students who excel academically to achieve both a bachelor's and master’s degree in ECE through our Professional MS degree program without needing to apply separately. If you are a second-semester junior, have completed 270 units, and have a 3.0 or higher cumulative QPA, you must attend an IMB info session in order to sign up for the program. You can find more information on the IMB page.


Q: How can I find information on scholarships?

A: The CMU Student Financial Aid page has a list of useful links and resources. The CMU Fellowships and Scholarships Office is another helpful resource for students.


Q: Where can I find information on transferring credit from another university?

A: Please refer to the college's information on transferring courses from other universities. If you wish to take ECE major-specific courses at another university, please consult with your academic advisor.