About ES 4

A few key points for the Fall 2023 offering of the course:

  • The lecture is scheduled for T/Th 1:30-2:45pm. We will meet in person both days.

  • For your final project, your team will have the choice of building a functional ARM microprocessor or any of the retro arcade game design options from previous iterations of of the course.

  • The textbook is Digital Design and Computer Architecture, ARM Edition by Sarah L. Harris and David Money Harris (ISBN 978-0128000564). It is available online through the library with no limit on the number of concurrent users. The printed version is available for about $75.

If you have questions about the course that aren’t answered on this page, please get in touch with Prof. Steven Bell (sbell AT ece.tufts.edu).

What is ES 4 about?

Any sufficiently advanced technology is indistinguishible from magic. – Arthur C. Clarke

There are few technologies for which Clarke’s statement is more true than microprocessors. Today you can find a microprocessor in almost anything electronic, and yet even those of us who can program them often have very little understanding of their inner workings. In ES 4, we will study microprocessors — and digital electronics more generally — from the ground up. You may know from other courses how computers work at the physical level (voltages and currents) and at the application level (C++ and other languages); the objective of this course is to connect the dots between the two.

To do this, we begin with the basics of manipulating zeros and ones with circuitry, and start building combinational circuits, which produce outputs based on some mathematical combination of their inputs. Then we make a major turn and explore sequential circuits, which can store information or step through a sequence of states. With these building blocks in hand, we will take a brief look at the ARM instruction set (which powers your cell phone and a few billion other devices), and learn how to build circuits which can actually interpret and execute software instructions.

When we’re done, you’ll have the skills necessary to design a complex digital system and implement it on real hardware. In short, you’ll be able to work magic.

FAQ

  • Do I need to have taken ES 3? No. ES 3 used to be a prerequisite, but that is no longer the case. This course is open to anyone who is excited to learn about digital electronics, regardless of your major or school. Some experience with circuits and programming will be helpful, but we will make sure the content is accessible even without this background.

  • I’m waitlisted for the course. What are my chances of getting in? We will make room for everyone who wants to take the course. There is still space in the “lecture” part of the course, so you can sign up for the course right now as long as you pick one of the open recitations.

  • I thought there were labs in this course. Why don’t I see them on SIS? Lab sections will not be scheduled through SIS; they will be scheduled during the first week of class once we know TA availability, lab capacity, etc.

  • Are the labs virtual, or are we going to be working with physical hardware? We’ll be using real hardware (specifically an UPduino 3.0 FPGA), and the lab sections will be in person.

  • If I don’t take ES 4 this term, when will it be offered again? ES 4 is currently offered every fall semester.