Fundamentals of Computer Systems
CSEE 3827, Fall 2014

Administrative

Lectures

Lectures will be held on TuTh 10:10am-11:25am in 501 Schermerhorn Hall

Course Staff

Prof. Martha Kim martha@cs.columbia.edu (212) 939-7094 469 CSB
TA Van Bui
TA Caleb Fujimori
TA Chae Jubb
TA Andrea Lottarini
TA Kira Ullman
TA Junjie Xu

Office Hours

Refer to course calendar.

Questions and Announcements

Please register for Piazza, where you can ask technical questions, contact TAs, and receive course-wide announcements.

Course Overview

This course examines how the 1s and 0s that form the foundation of digital computing are organized, structured, and manipulated to produce full-fledged computer systems. In bridging this gap, the course will cover many subjects beginning with binary logic, combinatorial and sequential circuit design, memory structures, instruction set architectures, and, ultimately, basic processor design.

Prerequisites

An introductory programming course, such as COMS 1004 or 1007. You need to understand the basics of imperative, sequential programming to understand the assembly language programming we will discuss.

Late Policy

Each homework assignment is due at at the beginning of lecture on the due date. Late submissions will not be accepted. We will drop each student's lowest homework grade when calculating final grades.

Collaboration Policy

We take academic honesty extremely seriously, and expect the same of you. You may discuss homework problems with your classmates, however, each student is to write up his or her own solution and is expected to be able to explain and reproduce the work she or she submits. Please note the names of your collaborators at the top of your homework submission. Apart from these exceptions, the Computer Science Department's Academic Honesty policy is in effect.

Grading Formula

Homeworks: 40%
Midterms: 30% + 30%

Textbooks

There are no required texts. Recommended texts are:

Syllabus

Date Topic(s) Reading Slides Homework Due
Sep 2 Representing Numbers
  • H+H: 1.4
  • M+K: Ch 1, 4.3-4.4, 10.7
  • P+H: 3.5
intro.pdf
union.c
Sep 4 Boolean Logic
  • H+H: 1.5, 2.1-2.7
  • M+K: 2.1-2.5, 2.8, 2.9
boolean.pdf
Sep 9

    kmap-inclass-examples.pdf
    Sep 11 Combinational Logic
    • H+H: 2.8,2.9,5.2
    • M+K: 3.1, 3.3, 3, 3.6-3.9, 4.1-4.2, 4.5, 9.4
    combinational.pdf
    Sep 16
      hw1.pdf
      hw1-solutions.pdf
      Sep 18 Sequential Logic
      • H+H: 3.1-3.3,3.5
      • M+K: 5.1-5.3, 5.6
      sequential.pdf
      Sep 23
        Sep 25 Finite State Machines
        • H+H: 3.4
        • M+K: 5.4-5.5
        fsms.pdf
        parity-check-fsms.pdf
        hw2.pdf
        hw2-solutions.pdf
        Sep 30

          snail-fsms.pdf
          Oct 2 Memory Elements
          • H+H: 5.5
          • M+K: 6.8, 7.1-7.3, 8.1-8.7
          memory.pdf
          Oct 7 Review Session

            review1.pdf
            hw3.pdf
            hw3-solutions.pdf
            Oct 9 Review Session

              review2.pdf
              Oct 14
              Midterm #1
              midterm-solutions.pdf
              Oct 16 The MIPS Instruction Set
              • H+H: 6.1-6.7
              • P+H: 2.1-2.8, 2.10
              mips-isa.pdf
              Oct 21
                Oct 23
                  Oct 28
                    Oct 30 MIPS Microarchitecture
                    • H+H: 7.1-7.3
                    • P+H: 4.1-4.4
                    mips-uarch.pdf
                    Nov 4
                    Election Holiday
                    Nov 6 A Multicycle MIPS Processor
                    • H+H: 7.4
                    mips-multicycle.pdf hw4.tar.gz
                    hw4-solution.s
                    Nov 11 Pipelining MIPS
                    • H+H: 7.5
                    • P+H: 4.5-4.8
                    mips-pipeline.pdf
                    Nov 13
                      hw5.pdf
                      hw5-solutions.pdf
                      Nov 18 Caches
                      • H+H: 8.3
                      • P+H: 5.1-5.2
                      caches.pdf
                      MIPS-QRC.pdf
                      Nov 20
                        Nov 25 Advanced Topics
                          advanced-topics.pdf
                          Nov 27
                          Thanksgiving
                          Dec 2 Review Session

                            https://docs.google.com/presentation/d/15UxSZ0kDdKXXVLRyOO3siVFeo_FzUuv-V_BDlMUKMUo/edit
                            hw6.pdf
                            hw6-solutions.pdf
                            Dec 4
                            Midterm #2
                            final2013-solutions.pdf
                            midterm2-solutions.pdf