ECE 5730 Introduction to Microcontrollers

“Design of real-time digital systems using microprocessor-based embedded controllers. Students working in groups of 2-3 design, debug, and construct several systems that illustrate and employ the techniques of digital system design acquired in previous courses. The content focuses on laboratory work. The lectures are used primarily for the introduction of examples, description of specific modules to be designed, and instruction in the hardware and high-level design tools to be employed.”

https://ece4760.github.io/

ECE 5725 Embedded Operating Systems

“Design of microcontroller based systems using embedded Linux. Student teams design and debug example solutions on a target microcontroller (for example, Raspberry Pi) during lab sessions. Emphasis will be on application and Linux programming skills, microcontroller systems, and discussion of external hardware. Students create a final, end-of-semester project using the microcontroller platform and development techniques discussed during the semester.”

https://skovira.ece.cornell.edu/ece5725/

ECE 4750 / CS 4420 Computer Architecture

“This course aims to provide a strong foundation for students to understand the modern eras of computer architecture (i.e., the single-core era, multi-core era, and accelerator era) and to apply these insights and principles to future computer designs. The course is structured around the three primary building blocks of general-purpose computing systems: processors, memories, and networks.”

https://www.csl.cornell.edu/courses/ece4750/

ECE 3140 Embedded Systems

“An introduction to the design of embedded systems, with an emphasis on understanding the interaction between hardware, software, and the physical world. Topics covered include assembly language programming, interrupts, I/O, concurrency management, scheduling, resource management, and real-time constraints.”

https://classes.cornell.edu/browse/roster/SP23/class/ECE/3140

CS 4410 Operating Systems

“Introduction to the design of systems programs, with emphasis on multiprogrammed operating systems. Topics include concurrency, synchronization, deadlocks, memory management, protection, input-output methods, networking, file systems and security. The impact of network and distributed computing environments on operating systems is also discussed.” https://www.cs.cornell.edu/courses/cs4410/2025sp/

CS 4780 Introduction to Machine Learning

“The course provides an introduction to machine learning, focusing on supervised learning and its theoretical foundations. Topics include regularized linear models, boosting, kernels, deep networks, generative models, online learning, and ethical questions arising in ML applications.”

https://www.cs.cornell.edu/courses/cs4780/2024sp/

CS 2110 Object-Oriented Programming and Data Structure

“Intermediate programming in a high-level language and introduction to computer science. Topics include object-oriented programming (classes, objects, subclasses, types), graphical user interfaces, algorithm analysis (asymptotic complexity, big “O” notation), recursion, testing, program correctness (loop invariants), searching/sorting, data structures (lists, trees, stacks, queues, heaps, search trees, hash tables, graphs), graph algorithms. Java is the principal programming language.”

https://www.cs.cornell.edu/courses/cs2110/2022fa/

ECE 5210 Network Systems and Games

“Network systems pervade our society in both social and technological contexts. On the one hand, social networks play a central role in the transmission of information and viruses with fundamental consequences for product marketing, technology adoption, voting decisions, spread of false news and epidemiology. On the other hand, network topology fundamentally affects the performance and resilience properties of large-scale multi-agent systems, such as the electric power grid, the internet of things, traffic or robotic sensor networks.”

https://classes.cornell.edu/browse/roster/SP25/class/SYSEN/5420

CEE 3230 Engineering Economics and Management

“Introduction to engineering and business economics investment alternatives and to project management. Intended to give students a working knowledge of money management and how to make economic comparisons of alternatives involving future benefits and cost. The impact of inflation, taxation, depreciation, financial planning, economic optimization, project scheduling, and legal and regulatory issues are introduced and applied to economic investment and planning and project-management problems.”

https://classes.cornell.edu/browse/roster/SP24/class/CEE/3230

ECE 2720 Data Science for Engineers

“An introduction to data science for engineers. The data science workflow: acquisition and cleansing, exploration and modeling, prediction and decision making, visualization and presentation. Techniques for different steps in the workflow including outlier detection, regression, change-point detection, and classification. An introduction to probability, focusing on Gaussian distributions and linear models. Methods for combining domain-agnostic data analysis tools with the types of domain-specific knowledge that are common in engineering. Programming projects in Python.”

https://classes.cornell.edu/browse/roster/SP22/class/ECE/2720

ENGRD 2300 Digital Logic and Computer Organization

“This course provides an introduction to the design and implementation of digital circuits and microprocessors. Topics include transistor network design, Boolean algebra, combinational circuits, sequential circuits, finite state machine design, processor pipelines, and memory hierarchy. Design methodology using both discrete components and hardware description languages is covered in the laboratory portion of the course.”

https://classes.cornell.edu/browse/roster/FA20/class/ENGRD/2300

ECE 4740 VLSI Design

“An introduction to digital very large-scale integration (VLSI) design from architectural considerations down to the layout level. Lecture, labs, and homework topics emphasize disciplined synchronous VLSI design and include topics of CMOS logic, layout, and timing; computer-aided design and analysis tools; electrical and performance considerations. There will also be emphasis on using Cadence.”

https://classes.cornell.edu/browse/roster/SP24/class/ECE/4740