The staff of M.I.T. 6.004
NOTE: These course materials are an incomplete,
evolving, work in progress. Feedback, comments, and
errata are welcome; please direct them to
Computation Structures is an introductory course about the design and
implementation of digital systems, emphasizing structural principles
common to a wide range of technologies.
Starting at the device level, the course develops a
hierarchical set of building blocks — logic gates, combinational and
sequential circuits, finite-state machines, processors and finally
complete systems. Both hardware and software mechanisms are explored
through a series of design examples. The problem sets and lab
exercises are intended to give students hands-on experience in
designing digital systems; students complete the gate-level design
for a RISC processor during the lab exercises.