Princeton University Electrical and Computer Engineering Course Catalog: A Comprehensive Overview
Princeton University's Department of Electrical and Computer Engineering (ECE) offers a wide array of courses, catering to both undergraduate and graduate students. This article provides a structured overview of the courses listed in the ECE course catalog, offering insights into the curriculum and the topics covered. The department may offer the below list of courses in a given year, but not all courses in the catalog are offered every year. Undergraduate students normally take courses in the 100 - 400 level range, and graduate students normally take courses in the 400 - 500 level range.
Introductory Courses (100 Level)
ECE 115: Introduction to Computing: Programming Autonomous Vehicles
This introductory course is designed for students with little to no prior computing experience. It focuses on teaching core programming concepts through hands-on experience with autonomous robotic vehicles. Students learn programming fundamentals such as:
- Control flow
- Iteration
- Functions
- Recursion
- Object-oriented programming
- Data structures (lists, arrays)
Integrated lab sessions allow students to apply these concepts by programming real robotic platforms.
Foundational Courses (200 Level)
ECE 201: Information Signals
This course explores signals that carry information, such as sound, images, sensor data, radar, communication signals, and robotic control signals. It teaches mathematical tools for analyzing, manipulating, and preserving these information signals. Key topics include:
- Sampling to represent continuous signals as digital signals
- Fourier transform
- Linear time-invariant systems
- Frequency domain
- Filtering
MATLAB is used for laboratory exercises. A prerequisite is knowledge of elementary calculus.
Read also: Decoding Princeton Admissions
ECE 203: Electronic Circuit Design Analysis and Implementation
This course introduces electronic circuits and systems. It covers methods of circuit analysis to create functions from devices, including resistors, capacitors, inductors, diodes, and transistors, in conjunction with op-amps. The course has a quantitative focus on DC and higher-frequency signals using linear systems theory, with major emphasis on intuition. Students pursue design (using op-amps and micro controllers), simulations (using SPICE), and analysis in labs.
ECE 206: Contemporary Logic Design (also COS 306)
This course introduces the basic concepts in logic design that form the basis of computation and communication circuits. The course starts from scratch and ends with building a working computer on which small programs are run.
ECE 273: Renewable Energy and Smart Grids (see ENE 273)
This course explores renewable energy sources and the technologies behind smart grids.
ECE 297 and 298: Sophomore Independent Work
These courses provide an opportunity for students to concentrate on a project in electrical and computer engineering. Topics may be selected from faculty suggestions or proposed by the students, with faculty advisor approval. A literature search is a normal part of most projects.
Intermediate Courses (300 Level)
ECE 301: Designing Real Systems
This course focuses on the science, engineering, and design of integrated systems. It covers analysis of systems, sub-systems, and basic principles, with emphasis on:
Read also: Affording Princeton: A Cost Breakdown
- Hardware-software optimization
- Sampling and digitization
- Signal and noise
- Feedback and control
- Communication
Prerequisites: ECE 201 and ECE 203.
ECE 302: Robotic and Autonomous Systems Lab
This comprehensive laboratory-based course focuses on electronic system design and analysis. It covers formal methods for the design and analysis of moderately complex real-world electronic systems. The course is centered around a semester-long design project involving a computer-controlled vehicle designed and constructed by teams of two students. It integrates microprocessors, communications, and control. Prerequisites: ECE 201 and ECE 203.
ECE 304: Electronic Circuits: Devices to ICs
This course covers topics related to electronic system design through the various layers of abstraction from devices to ICs. The emphasis is on understanding fundamental system-design tradeoffs related to speed, precision, and power with intuitive design methods, quantitative performance measures, and practical circuit limitations. The understanding of these fundamental concepts will prepare students for a wide range of advanced topics from circuits and systems for communication to emerging areas of sensing and biomedical electronics. Prerequisites: ECE 201 and ECE 203.
ECE 305: Mathematics for Numerical Computing and Machine Learning (also COS 302, SML 305)
This course provides a comprehensive and practical background for students interested in continuous mathematics for computer science. The goal is to prepare students for higher-level subjects in artificial intelligence, machine learning, computer vision, natural language processing, graphics, and other topics that require numerical computation. This course is intended students who wish to pursue these more advanced topics, but who have not taken (or do not feel comfortable) with university-level multivariable calculus (e.g., MAT 201/203) and probability (e.g., ORF 245 or ORF 309).
ECE 308: Electronic and Photonic Devices
This course introduces the fundamentals and operations of semiconductor devices and sensors and micro/nano fabrication technologies used to make them. Devices include field-effect transistors, photodetectors and solar cells, light-emitting diodes and lasers. Applications include: computing and microchips, optical transmission of info (the internet backbone), displays and renewable energy. Students will fabricate their own devises in a clean room and test via microprobes. Special emphasis placed on the interplay between the material properties, fabrication capabilities, device performance and ultimate system performance. Prerequisites: MAT103-104 and PHY103-104.
Read also: Princeton Transfer Guide
ECE 341: Solid-State Devices
This course delves into the physics and technology of solid-state devices, covering topics such as:
- P-N junctions and two-terminal devices
- Transistors
- Silicon controlled rectifiers
- Field effect devices
- Silicon vidicon and storage tubes
- Metal-semiconductor contacts and Schottky barrier devices
- Microwave devices
- Junction lasers
- Liquid crystal devices
- Fabrication of integrated circuits
Prerequisite: ECE 308 or equivalent.
ECE 342: Principles of Quantum Engineering
This course covers the fundamentals of quantum mechanics and statistical mechanics needed for understanding the principles of operation of modern solid state and optoelectronic devices and quantum computers. Topics covered include Schrödinger Equation, Operator and Matrix Methods, Quantum Statistics and Distribution Functions, and Approximation Methods, with examples from solid state and materials physics and quantum electronics. Prerequisites: (PHY 103 or PHY 105) and (PHY 104 or PHY 106) or EGR 151 and EGR 153. MAT 201 and MAT 202, or EGR 152 and EGR 154.
ECE 345: Introduction to Robotics (also MAE 345, COS 346, ROB345)
This course provides an introduction to the basic theoretical and algorithmic principles behind robotic systems. The course also allows students to get hands-on experience through project-based assignments on quadrotors. In the final project, students implement a vision-based obstacle avoidance controller for a quadrotor. Topics include motion planning, control, localization, mapping, and vision.
ECE 346: Intelligent Robotic Systems (also COS348, MAE346, ROB346)
This course covers the core concepts and techniques underpinning modern robot autonomy, including planning under uncertainty, imitation and reinforcement learning, multiagent interaction, and safety. The lab component introduces the Robot Operating System (ROS) framework and applies the learned theory to hands-on autonomous driving assignments on 1/16-scale robot trucks. Prerequisite: Multivariable calculus (e.g., MAT 201, 203), linear algebra (e.g., MAT 202, 204), probability (e.g., ORF 309), and programming (e.g., COS 126, ECE 115).. An introduction to robotics and control is helpful (e.g., ROB 345, ECE 302, MAE 433). Programming assignments are in Python.
ECE 351: Foundations of Photonics
This course provides students with a broad and solid background in electromagnetics, including both statics and dynamics, as described by Maxwell's equations. Fundamental concepts of diffraction theory, Fourier optics, polarization of light, and geometrical optics will be discussed. Emphasis is on engineering principles, and applications will be discussed throughout. Examples include cavities, waveguides, antennas, fiber optic communications, and imaging. Prerequisite: PHY 103 and PHY 104 or equivalent.
ECE 364: Machine Learning for Predictive Data Analytics
This course covers machine learning techniques for predictive data analytics, including:
- Information-based learning
- Similarity-based learning
- Probability-based learning
- Error-based learning
- Deep learning
- Evaluation
ECE 375: Computer Architecture and Organization (also COS 375)
This course introduces computer architecture and organization, covering topics such as:
- Instruction set design
- Basic processor implementation techniques
- Performance measurement
- Caches and virtual memory
- Pipelined processor design
- Design trade-offs among cost, performance, and complexity
Prerequisite: COS 217.
ECE 368: Introduction to Wireless Communication Systems
This course introduces students to the fundamentals of digital communication and wireless systems. Topics include concepts from information, compression, channel, modulation, radio propagation to principles of wireless cellular, and WiFi systems. At the end of the semester, students are expected to gain a deep understanding of the basis of wireless communication systems and the connection between theoretical concepts and real-world systems.
ECE 381: Networks: Friends, Money and Bytes (also COS 381)
This course is oriented around practical questions in the social, economic, and technological networks in our daily lives. In formulating and addressing these questions, the fundamental concepts behind the networking industry are introduced.
ECE 382: Statistical Signal Processing
This course introduces the fundamental statistical principles and methods that play a central role in modern signal and information processing. Specific topics include random processes, linear regression and estimation, hypothesis testing and detection, and shrinkage methods. Prerequisites: Linear Algebra and ORF 309.
ECE 396: Introduction to Quantum Computing (also COS 396)
This course introduces the matrix form of quantum mechanics and discusses the concepts underlying the theory of quantum information. Some of the important algorithms will be discussed, as well as physical systems which have been suggested for quantum computing. Prerequisite: Linear algebra at the level of MAT 202, 204, 217, or the equivalent.
ECE 398 and 399: Junior Independent Work
These courses provide an opportunity for students to concentrate on a "state-of-the-art" project in electrical and computer engineering. Topics may be selected from suggestions by faculty members or proposed by the students. The final choice must be approved by the faculty advisor.
Advanced Courses (400 & 500 Level)
ECE 404/504: Mixed-Signal Circuits and Systems
This course discusses design and simulation methodologies for realizing robust analog CMOS circuits implementing major building blocks in A/D conversion. With attention to design specifications, a comprehensive study of single-ended and differential op-amp topologies will be covered with an emphasis on: feedback and stability; linear and non-linear settling; distortion; noise; and voltage swing. Conclude with swtiched-capacitor circuits exploring impact of non-linearity and noise in sampled systems. Design projects using circuit simulators reinforce theoretical concepts. Prerequisite: ECE 304.
ECE 411: Sequential Division Analytics and Modeling (see ORF 411)
This course explores sequential division analytics and modeling techniques.
ECE 431: Solar Energy Conversion (also MAE 431/ENV 431/EGR 431/ENE 431)
This course covers the principles, designs, and economics of solar conversion systems, including:
- Quantity and availability of solar energy
- Physics and chemistry of solar energy conversion
- Methods for conversion: photovoltaics, photoelectrochemistry, photocatalysis, photosynthesis, and solar thermal conversion
- Energy collection, transport, and storage
- Economics: life cycle costing and societal value of renewable energy
Prerequisites: MAT 104, PHY 104 or EGR 153, and CHM 207.
ECE 432: Information Security (also COS 432)
This course addresses security issues in computing, communications, and electronic commerce, covering:
- Goals and vulnerabilities
- Legal and ethical issues
- Basic cryptology
- Private and authenticated communication
- Electronic commerce
- Software security
- Viruses and other malicious code
- Operating system protection
- Trusted systems design
- Network security
- Firewalls
- Policy, administration and procedures
- Auditing
- Physical security
- Disaster recovery
- Reliability
- Content protection
- Privacy
Prerequisites: COS 217 and 226.
ECE 434: Machine Learning Theory (also COS 434)
The course covers basic theories of modern machine learning: 1. statistical learning theory: generalization, uniform convergence, Rademacher complexity, VC theory, reproducing Hilbert kernel space and their applications on simple classification/regression models; 2. optimization theory: gradient descent, stochastic gradient descent and their convergence analyses for convex functions, nonconvex functions 3. deep learning theory: basic approximation, optimization and generalization results for deep neural networks; 4. reinforcement learning theory: MDP, Bellman equations, planning, and sample complexity results for value iteration/Q-learning.
ECE 435/535: Machine Learning and Pattern Recognition
This course is an introduction to the theoretical foundations of machine learning. A variety of classical and recent results in machine learning and statistical analysis are discussed, including: classification, regression, regularization.
tags: #princeton #university #course #catalog

