Undergraduate Programs

CPE Technical Electives
Graduating Class of 2016

Student in design studioThe courses listed below are approved for CPE in-major and non-major technical elective credit. Actual course offerings will be based on sufficient resources, including faculty availability, and student demand. Refer to the university’s on-line timetable of classes for specific course availability information.

On this page:
In-Major Technical Electives

Non-Major Technical Electives
Mechanical Engineering Senior Engineering Design and Project
Graduate Courses Used as Technical Electives
In-Major Electives
All courses are grouped according to their inter-relatedness, but students are free to choose from multiple groups. If you are unsure of an academic focus, you are encouraged to take courses from several groupings, giving you a broader background.
Computers (ECE)

4504 Computer Organization (3C) Prereq: 2500 or CS 3214

4514 Digital Design II (4C) Prereq: 3544 if 4514 taken spring 2014 or later; 3504 if 4514 taken prior to spring 2014 (Design Technical Elective)

4520 Digital and Mixed-Signal System Testing and Testable Design (3C) Prereq: 2574, 3504 or 3544

4524 Artificial Intelligence and Engineering Applications (3C) Prereq: 2574; Co-Req: STAT 4714 (Design Technical Elective)

4530 Hardware/ Software Codesign (3C) Prereq: 3504, or 3544, 2534 (Design Technical Elective)

4540 VLSI Circuit Design (3C) Prereq: 2204, 2504 (Design Technical Elective)

4550 Real-Time Systems (3C) Prereq: 4534 or CS 3214 (Design Technical Elective)

4560 Computer and Network Security Fundamentals (3C) Prereq: 4564 (Design Technical Elective)

4564 Network Application Design (3C) Prereq: 2504, 2574 (Design Technical Elective)

4570 Wireless Networks and Mobile Systems (3C) Prereq: 4564 or CS 4254 (Design Technical Elective)

4574 Large-Scale Software Development for Engineering Systems (3C) Prereq: 3574 (Design Technical Elective)

4580 Digital Image Processing (3C) Prereq: 4624, STAT 4714

Computers (CS)

Note on CS Course Restrictions

CS 3114 Data Structures and Algorithms (3C) Prereq: CS 2104, CS 2114, CS 2505, MATH 2534

CS 3214 Computer Systems (3C) Prereq: CS 2114, CS 2506

CS 3304 Comparative Languages (3C) Prereq: CS 3114

CS 3414 (MATH 3414) Numerical Methods (3C) Prereq: Any programming course, MATH 2214, 2224

CS 3714 Mobile Software Development (3C) Prereq: CS 2114

CS 3744 Intro to GUI Programming and Graphics (3C) Prereq: CS 2114, MATH 1114, MATH 1224

CS 3824 Introduction to Computational Biology & Bioinformatics (3C) Prereq: CS 3114

CS 4104 Data and Algorithm Analysis (3C) Prereq: CS 3114, MATH 3134 or MATH 3034

CS 4114 Formal Languages (3C) Prereq: MATH 3134 or MATH 3034


CS 4124 Theory of Computation (3C) Prereq: MATH 3134 or MATH 3034

CS 4204 Computer Graphics (3C) Prereq: CS 3114, CS 3744

CS 4214 Simulation and Modeling (3C) Prereq: CS 2114

CS 4234 Parallel Computation (3C) Prereq: CS 3214

CS 4244 Internet Software Development (3C) Prereq: CS 3214

CS 4254 Network Arch Programming (3C) Prereq: CS 3214

CS 4304 Compiler Design (3C) Prereq: CS 3214

CS 4414 Issues in Scientific Computing (3C) Prereq: MATH 2214, MATH 3214

CS 4604 Introduction to Database Management Systems (3C) Prereq: CS 3114

CS 4624 Multimedia/ Hypertext (3C) Prereq: CS 3114

NOTE: The Computer Science Department restricts some of its courses to CS majors. Contact the CS department to follow their force-add procedure. CS requires a C or better in all in-major (CS or ECE) prerequisite courses. CS may accept some ECE courses as prerequisite substitutions. See the CS advisors in 114 McBryde for any clarification of prerequisite requirements. Note that many CS courses are taught in Java. If you use an ECE course as prerequisite, you will be expected to be proficient in Java before entering these upper level courses.


3614 Introduction to Communication Systems (3C) Prereq: 2704, STAT 4714

4605 Radio Engineering (3C) Prereq: 2014, 3106, 3204, 3614; Co-req: 4675

4606 Radio Engineering (3C) Prereq: 4605

4614 Telecommunication Networks (3C) Prereq: 2504, 2704, STAT 4714

4624 Digital Signal Processing and Filter Design (3C) Prereq: 2014, 3704

4634 Digital Communications (3C) Prereq: 3614, STAT 4714

4644 Satellite Communications (3C) Prereq: 3614

4664 Analog and Digital Communications Lab (1C) Prereq: 3614, Co-req: 4634

4674 Scattering Parameters Lab (1C) Prereq: 4605, 4675

4675 Radio Engineering Lab (1C) Prereq: 3106, 3204; Co-req: 4605

4676 Radio Engineering Lab (1C) Prereq: 4675; Co-req: 4606


3105 Electromagnetic Fields (3C) Prereq: 2004, MATH 2224, PHYSICS 2306

3106 Electromagnetic Fields (3C) Prereq: 3105

4104 Microwave and RF Engineering (4C) Prereq: 2014, 3106, 3204

4114 Antennas (3C) Prereq: 2014, 3106

4124 Radio Wave Propagation (3C) Prereq: 3106

4134 Fiber Optics and Applications (3C) Prereq: 3106

4144 Optical Information Processing (3C) Prereq: 3106

4154 Perils of Space: An Introduction to Space Weather (3C) Prereq: 3106

4164 Global Positioning Systems (GPS) Theory and Design (4C) Prereq: 2014, 3106


3004 AC Circuit Analysis (3C) Prereq: 2704

3074 AC Circuit Analysis Lab (1C) Prereq: 2074. Co-req: 3004

3204 Analog Electronics (3C) Prereq: 2204, 2704. Co-req: 3274

3274 Electronics Lab (1C) Prereq: 2274. Co-req: 3204

4205 Electronic Circuit Design (3C) Prereq: 3204

4206 Electronic Circuit Design (3C) Prereq: 2014, 4205

4214 Semiconductor Device Fundamentals (3C) Prereq: 2204 or MSE 3204 or PHYS 3455

4220 Analog Integrated Circuit Design (3C) Prereq: 3204

4224 Power Electronics (3C) Prereq: 2014, 3204

4234 Semiconductor Processing (3C) Prereq: 2204 or 3054

4235 Electronic Packaging (3C) Prereq: 2204

4244 Intermediate Semiconductor Wafer Processing Laboratory (3C) Prereq: 2014, 4234 or MSE 4234

4284 Power Electronics Lab (1C) Prereq: 4224

Power Systems

3304 Introduction to Power Systems (3C) Prereq: 3004

3354 Power Laboratory (1C) Prereq: 3304

4304 Design in Power Engineering (3C) Prereq: 2014, 3304

4334 Power System Analysis and Control (3C) Prereq: 3304

4344 Electric Power Quality for the Digital Economy (3C) Prereq: 3304

4354 Power System Protection (3C) Prereq: 4334

4364 Alternate Energy Systems (3C) Prereq: STAT 4714

4374 Power System Protection Lab (1C) Prereq: 4334, Coreq: 4354

Systems & Controls

3704 Continuous and Discrete System Theory (3C) Prereq: 2704

4405 Control Systems (3C) Prereq: 3704

4406 Control Systems (3C) Prereq: 4405

4704 Principles of Robotics Systems (3C) Prereq: 3704

ME 4735 Mechatronics (3C) Prereq: 2504, 2704

ME 4736 Mechatronics II (3C) Prereq: ME 4734

NOTE: ME courses are typically restricted to ME students and will need to be force-added through the ME Advising office.

Electrical and Computer Senior Engineering Design and Project

A two-semester design project, emphasizing systems engineering principles in the development of an electrical and/or computational system. A specific, substantial engineering design problem is taken from problem definition to system realization and testing to demonstrate meeting of design specifications. This represents a major design experience based on knowledge and skills acquired in earlier course work throughout the curriculum. Note: both semesters must be completed to earn credit.

ECE 4805 Engineering Design and Project (3C) Prereq: 2014

ECE 4806 Engineering Design and Project (3C) Prereq: 4805 (Design Technical Elective)

Mechanical Engineering Senior Engineering Design and Project

ECE students, with the permission of the ME department, can enroll in the ME senior engineering design and project courses. Force-adds must be approved and processed through the ME Advising Office. Note: both semesters must be completed to earn credit.

ME 4015 Engineering Design and Project (3C)

ME 4016 Engineering Design and Project (3C) (Design Technical Elective)

Non-Major Technical Electives

ECE students may take up to 3 credit hours of non-major technical electives. Students are reminded that they DO NOT have to take a non-major technical elective. All technical electives can come from the in-major list.

  1. Any 3000 or 4000 level course, except those listed in Items 2 and 3 below, in Engineering, Biology, Chemistry, Mathematics, Physics, and Statistics NOT REQUIRED FOR GRADUATION, THAT DOES NOT DUPLICATE any course in the program of study, and for which you have the appropriate prerequisite, may be used as a non-major technical elective.
  2. Non-major 4974, 4984, 4994 courses and study abroad courses must be approved for non-major technical elective credit in advance. See your advisor for guidance.
  3. REMINDER: ESM 4404 – Fundamentals of Professional Engineering – CANNOT be used as a non-major technical elective and DOES NOT COUNT TOWARDS GRADUATION.
Independent Work
& Special Studies

The courses listed below can generally be used for technical elective credit or design technical elective credit, based on the particular content of each course as it is taught in a given semester. Please discuss technical elective credit options for these courses with your advisor prior to registering for the courses.

4974 (ARR) Independent Study

4984 (ARR) Special Study

4994 (ARR) Undergraduate Research

4974, and 4994: Students must complete the College of Engineering Undergraduate Research/Independent Study Form, the ECE Undergraduate Research/Independent Study Proposal Form, and the ABET Breakdown prior to registration.

The forms are due in 340 Whittemore by 12:00 noon on the 3rd day of the first week of class for the requested semester – no exceptions. Forms are available in the ECE Student Services office in 340 Whittemore.

For purposes of satisfying the major technical elective requirements, the sum of the number of hours taken from ECE 4974, 4994 cannot exceed 6 in any one project, without prior approval.

Graduate Courses Used as Technical Electives

ECE students who meet the University requirements to enroll in graduate courses may use graduate level ECE courses as technical elective credit.

  1. Per University policy, undergraduate students must have earned a 3.0 cumulative GPA to be eligible to enroll in graduate level courses.
  2. Note that graduate student courses taken as undergraduate cannot be used toward a graduate degree in ECE at VT. Exceptions to this policy: a) students enrolled in the Accelerated UG/G program; b) students who are dual enrolled in the ECE graduate program. Please see your advisor if you have questions regarding this policy.
  3. To enroll in graduate level courses, undergraduates will need to complete an online ECE force-add request. If prerequisites are met and space permits, students will be force-added to the graduate course(s).