Program Requirements

Under the tabs below you'll find detailed information about the various components of a Cornell ECE major's undergraduate curriculum. The ECE requirements afford majors considerable flexibility in their course selections, particularly at the 3000- and 4000-level. We advise every ECE major to keep a running, partially filled-out ECE Graduation Checklist while progressing through the program. Every ECE major must submit a completed Checklist prior to graduating.

If you have questions not answered here regarding program requirements, feel free to contact one of the ECE Major Consultants:

See the Courses of Study for non-ECE-specific information on academic standing, Dean's List requirements, advanced placement, transfer credit, adding and dropping courses, leaves of absence, etc. Engineering Advising can also provide guidance on such matters.

ECE curriculum components

Common Curriculum

Click to Open

The Common Curriculum comprises curricular requirements that apply to all Cornell engineering students, subject to some major-specific tweaks. You can find comprehensive information about the liberal-studies distribution requirement on the Liberal Studies page maintained by the College of Engineering.

ECE-specific Math, Physics and Engineering Distribution Requirements

Click to Open
  • Math: ECE majors must complete MATH 1910, MATH 1920, MATH 2930, and MATH 2940.
  • Physics: ECE majors must complete PHYS 1112 or PHYS 1116, PHYS 2213 or 2217, and PHYS 2214 or 2218. (Starting Fall 2021, PHYS 1112 is replaced by PHYS 1112 plus PHYS 1110).
  • Engineering Distribution: ECE majors must complete ECE/ENGRD 2300. ECE majors interested in computer engineering are strongly encouraged to take ECE/ENGRD 2400 as their second engineering distribution class.

ECE Core and Foundation Courses

Click to Open

Every ECE major must take all three ECE Core courses, all of which are offered both semesters every year:

  • ECE 2100, Introduction to Circuits for Electrical and Computer Engineers
  • ECE 2300, Digital Logic and Computer Organization
  • ECE 2720, Data Science for Engineers

Every ECE major must take at least three out of five ECE Foundation courses, including at least one of ECE 3030 and ECE 3150 and at least one of ECE 3100 and ECE 3250. A student may count as Upper-level ECE Electives any Foundation Courses taken above the minimum of three. The Foundation Courses are:

  • ECE 3030, Electromagnetic Fields and Waves, Fall
  • ECE 3100, Probability and Inference, Spring
  • ECE 3140/CS 3420, Embedded Systems, Spring
  • ECE 3150, Introduction to Microelectronics, Spring
  • ECE 3250, Mathematics of Signal and System Analysis, Fall

Upper-Level ECE Electives

Click to Open

Every ECE major must take at least six (6) technical ECE courses at the 3000-level or above in addition to the three courses used to satisfy the Foundation Course requirement. These six courses must include at least three (3) courses at the 4000-level or above, at least one (1) of which is a Culminating Design Experience (CDE) course. The six upper-level ECE elective courses must comprise at least 21 credit hours.

Important notes:

  • A course cross-listed with an ECE course number is acceptable, even if a student registers for it with a non-ECE course number.
  • Non-technical upper-level ECE courses such as ECE 3600 and ECE 5830 are not acceptable. Also unacceptable are independent project courses such as ECE 4999, student project teams, and seminar courses such as ECE 5870 and 5880. (Note: ECE 5830 counts as an Outside-ECE Technical Elective.)
  • CS 4120 (Compilers) and CS 4410 (Operating Systems), their associated practica, and CS 6210 (Advanced Compilers), are acceptable as ECE Electives at the 4000-level or above.

Culminating Design Experience (CDE) Courses

Every CDE course includes a significant and open-ended engineering design assignment with realistic constraints. The principal goal of a CDE course is to help students develop the ability to design a component, system, or process to meet desired needs taking into account some or all of the following: economics, the environment, sustainability, manufacturability, ethics, health and safety, society, and politics. Currently, the following CDE courses are offered: ECE 4530, ECE 4670, ECE 4740, ECE 4750, and ECE 4760.

Outside-ECE Technical Electives

Click to Open

Nine (9) credits minimum, among which at least three (3) credits must come from lecture course work at 3000-level or above. Courses must be taken for a letter grade unless offered S/U-only.

Courses allowed in this category must be technical courses whose technical scope lies outside the course offerings of the School of Electrical and Computer Engineering. Almost any non-ECE math, science or engineering course at the 2000-level or above will do. A student may count a 1000-level course as an Outside-ECE Technical Elective only if the course lists an explicit university-level prerequisite that the student has completed successfully either at Cornell or through AP or transfer credit. For example, none of the ENGRIs are acceptable since none of them has any prerequisites. Non-technical courses such as ENGRC and pure business courses are also not acceptable. ECE majors may, however, count ECE 5830—Introduction to Technical Management—as an Outside-ECE Technical Elective.

For an engineering course in a non-ECE major to pass muster as an Outside-ECE Technical Elective, the major offering the course must allow its own students to use the course to fulfill a technical course requirement. For example, CEE 3230 and ORIE 3150 are acceptable because they include engineering applications of the business topics they cover, and the offering majors consider them technical courses for their students. When in doubt about the suitability of any course, a student should obtain evidence that students in the major offering the course can use the course in question as a "technical course" and submit associated documentation to 223 Phillips Hall.

Students may count in the Outside-ECE Technical Electives category up to 3 credits of work that results from either (but not both)

  • Work on a student project team. For comprehensive information about student project teams, see Student Project Teams.
  • Enrollment for a letter grade in an independent-study course at the 3000- level or above (e.g. ECE 4999).

One additional option exists for ECE students. A student may, with advisor approval, count one advanced ECE course as an Outside-ECE Technical Elective provided that the course's subject matter lies outside the student's major disciplinary area as determined by the focus of the student's upper-level ECE course work.

Advisor-Approved Electives

Click to Open

Unlike some engineering majors, ECE approves these courses centrally rather than calling on individual advisors to approve them. Essentially any legitimate credit-bearing activity, with rare exceptions such as PE classes and AEW classes, works toward this 6-credit requirement for ECE majors. Courses (technical or not), student project teams, independent study, research—all are fine.

Advanced Programming and Engineering Communications

Click to Open

Advanced Programming

The courses an ECE major takes to satisfy ECE major requirements, the ENGRD requirement, or the Advisor-approved Elective requirement must include at least three credits of computer programming at a level above that of CS 1110/1112/1114/1115 and CS 1130/1132/1133/1142, or an advanced computer engineering course at a level above ECE 3140. Courses that meet this requirement include: ECE 2400, CS 2110, ENGRD 3200, AEP 4380, ECE 4740, ECE 4750, or ECE 4760. Other courses may be allowed by an ECE petition.

Engineering Communications

An ECE major can fulfill the Engineering Communications Requirement (ECR) in a variety of ways. In many cases, a course the student counts toward some graduation requirement like Liberal Studies or Advisor-approved Elective or Outside-ECE Technical Elective will simultaneously take care of the Engineering Communications requirement. One alternative popular among ECE majors: a student who has taken ECE 4760 may subsequently take the 1-credit follow-on ECE 4920, during which the student writes up their ECE 4760 project; an ECE major completing this sequence will fulfill the ECR. For further details along with a full list of ECR options, visit the Engineering Communications page and the Courses of Study page.

Academic Standards

Click to Open

To maintain good standing in the ECE major, every semester a student must achieve at least a 2.3 GPA, have no failing or missing grades, achieve a passing grade in at least 12 credit-hours' worth of course work, and make adequate progress toward the degree.

A student must achieve a grade of C- or better in any course counted toward ECE major requirements, including ECE Core and Foundation courses; Upper-level ECE Electives; and Outside-ECE Technical Electives offering a letter-grade option, unless that course is taken S/U during Spring 2020, in which case an S will suffice.