Page Contents
- Major in Electrical and Computer Engineering
- Eligibility and Academic Standards
- Concentrations
- Required Engineering Distributions
- Required Major Courses
- Required Math, Physics, and Engineering Distributions
- Foundation Courses
- Further Major Requirements
- Advanced Computing Requirement
- Projects
- Upper-level Electives
- Technical Electives Outside of Electrical and Computer Engineering
- Advisor-Approved Electives
- Advanced Programming and Engineering Communications
- Culminating Design Experience Courses
Note: This page provides a general overview. For complete and accurate information, please refer to the Engineering Undergraduate Handbook and consult with your advisor. For current course offerings and information, refer to the Cornell University Registrar: Courses of Study.
Eligibility and Academic Standards
Affiliation Eligibility Requirements
A Cornell Engineering undergraduate who meets the eligibility requirements below can affiliate with the Electrical and Computer Engineering major. Preparation for affiliation should be done thoughtfully and intentionally in advance with guidance from and coordination with the studentʼs academic advisor.
To affiliate with the electrical and computer engineering major, the student must be in good academic standing in the College of Engineering. Furthermore, the student:
- Must have completed the following courses with a grade of C+ or better
- At least one of MATH 2930, MATH 2940
- PHYS 2213
- At least one of ECE/ENGRD 2100, ECE 2720, ECE/ENGRD 2300
- Must have an average grade point average (GPA) of at least 2.5 across the following courses, if taken
- MATH 1920, 2930, 2940
- PHYS 2213
- ECE/ENGRD 2100, ECE 2720, ECE/ENGRD 2300
- CS/ENGRD 2110
- ECE 2400/ENGRD 2140
Academic Standards
Good standing requirements for electrical and computer engineering:
- Must achieve a passing grade in at least 12 credit-hours worth of course work, and make adequate progress toward the degree
- Must achieve at least a 2.3 GPA each semester
- Must achieve a grade of C- or better in any course counted toward electrical and computer engineering (ECE) major requirements, including ECE Core and Foundation courses; Upper-level ECE Electives; and Outside-ECE Technical Electives offering a letter-grade option
- No failing or missing grades
Concentrations
- Computer Architecture and Organization
- Embedded Systems Robotics
- Power Systems and Control
- Communications, Networks, Information Theory and Coding
- Signal Processing and Optimization
- Electronic Circuits, VLSI, and Optoelectronics
- Solid State Physics and devices, MEMs, Nanotechnology, Lasers
- Electromagnetics, Radio Physics, Space Sciences, and Plasmas
Required Engineering Distributions
-
ENGRD/ECE 2300
Digital Logic and Computer Organization (required)
-
ENGRD 2140 / ECE 2400
Computer Systems Programming (recommended, but not required)
Required Major Courses
-
ECE 2100
Introduction to Circuits for Electrical and Computer Engineers
-
ECE 2300
Digital Logic and Computer Organization
-
ECE 2720
Data Science for Engineers
Required Math, Physics, and Engineering Distributions
-
MATH 1910
Calculus for Engineers
-
MATH 1920
Multivariable Calculus for Engineers
-
MATH 2930
Differential Equations for Engineers
-
MATH 2940
Linear Algebra for Engineers
-
PHYS 1112 or PHYS 1116
Physics I: Mechanics & Heat or Physics II: Electromagnetism
-
PHYS 2213 or PHYS 2217
Physics II: Electromagnetism or Physics II: Electricity and Magnetism
-
PHYS 2214 or PHYS 2218
Physics III: Oscillations, Waves, and Quantum Physics or Physics III: Waves and Thermal Physics
Foundation Courses
Every Electrical and Computer Engineering major must take at least three out of five 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.
-
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)
Further Major Requirements
- At least three ECE foundation courses.
- At least one Culminating Design Experience (CDE) course.
- At least five additional ECE Electives (in addition to the CDE course) at the 3000-level or above, at least two of which must be at the 4000-level or above, totaling up to at least 17 credit hours (not including the credit hours of the CDE course).
- At least nine credits of Outside-ECE Technical Electives.
- A Culminating Design Experience 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.
Advanced Computing Requirement
Courses that satisfy ECE Foundations Courses, the ENGRD requirement, or the elective requirements, must include at least three credits of computer programming at a level above that of CS 1110 (or 1112), or an advanced computer engineering course at a level above ECE 3140. ECE 2400/ENGRD 2140 can also satisfy the advanced computing requirement.
Projects
Students may count up to three credits of work on approved large-group interdisciplinary project teams in the outside-ECE Technical Electives category. Alternatively, students may count up to three independent study credits (ECE 4999) in the outside-ECE Technical Elective category.
Upper-level Electives
Every Electrical and Computer Engineering major must take at least six 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 courses at the 4000-level or above, at least one of which is a Culminating Design Experience 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.
Technical Electives Outside of Electrical and Computer Engineering
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-Electrical and Computer Engineering math, science or engineering course at the 2000-level or above will do. A student may count a 1000-level course as an Outside-Electrical and Computer Engineering Technical Elective only if the course lists an explicit university-level prerequisite that the student has completed successfully either at Cornell or through Advanced Placement or transfer credit. For example, none of the ENGRIs are acceptable since none of them have any prerequisites. Non-technical courses such as ENGRC and pure business courses are also not acceptable. Electrical and Computer Engineering majors may, however, count ECE 5830 – Introduction to Technical Management – as an Outside-Electrical and Computer Engineering Technical Elective.
For an engineering course in a non-Electrical and Computer Engineering major to pass muster as an Outside-Electrical and Computer Engineering 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-Electrical and Computer Engineering Technical Electives category up to three (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 Electrical and Computer Engineering students. A student may, with advisor approval, count one advanced Electrical and Computer Engineering course as an Outside-Electrical and Computer Engineering 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 Electrical and Computer Engineering course work.
Advisor-Approved Electives
Unlike some engineering majors, Electrical and Computer Engineering 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 Electrical and Computer Engineering majors. Courses (technical or not), student project teams, independent study, research – all are fine.
Advanced Programming and Engineering Communications
Advanced Programming
The courses an Electrical and Computer Engineering major takes to satisfy Electrical and Computer Engineering 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 Electrical and Computer Engineering 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 Electrical and Computer Engineering petition.
Engineering Communications
An Electrical and Computer Engineering major can fulfill the Engineering Communications Requirement 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-Electrical and Computer Engineering Technical Elective will simultaneously take care of the Engineering Communications requirement. One alternative popular among Electrical and Computer Engineering 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 Electrical and Computer Engineering major completing this sequence will fulfill the ECR. For further details along with a full list of Engineering Communications Requirement options, visit the Engineering Communications page and the Cornell University Registrar: Courses of Study page.
Culminating Design Experience 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.
-
ECE 4530
Analog Integrated Circuit Design
-
ECE 4670
Digital Communication System Design
-
ECE 4740
Introduction to Digital (VLSI) Design
-
ECE 4750
Computer Architecture
-
ECE 4760
Digital Systems Design Using Microcontrollers