0% found this document useful (0 votes)
53 views17 pages

Fundamentals of Computer Systems: Introductory Topics

This document provides an overview and syllabus for the "Fundamentals of Computer Systems" course at Columbia University. It introduces the different levels of abstraction that make up a computer system, from physics and devices to application software. The course will cover digital logic, computer architecture, and MIPS assembly programming through design projects. Students will complete 4 projects over the semester. The course meets twice a week and uses an online platform for materials.

Uploaded by

jake
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
53 views17 pages

Fundamentals of Computer Systems: Introductory Topics

This document provides an overview and syllabus for the "Fundamentals of Computer Systems" course at Columbia University. It introduces the different levels of abstraction that make up a computer system, from physics and devices to application software. The course will cover digital logic, computer architecture, and MIPS assembly programming through design projects. Students will complete 4 projects over the semester. The course meets twice a week and uses an online platform for materials.

Uploaded by

jake
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

Fundamentals of Computer Systems

Introductory Topics

Columbia University

1/1

Computer Systems Work Because of Abstraction


Application Software
Operating Systems
Architecture
Micro-Architecture
Logic
Digital Circuits
Analog Circuits
Devices
Physics
2/1

Computer Systems Work Because of Abstraction


Application Software

COMS 3157, 4156, et al.

Operating Systems

COMS W4118

Architecture

Second Half of 3827

Micro-Architecture

Second Half of 3827

Logic

First Half of 3827

Digital Circuits

First Half of 3827

Analog Circuits

ELEN 3331

Devices

ELEN 3106

Physics

ELEN 3106 et al.


2/1

The digital abstraction


Abstraction hides unimportant details
The digital abstraction of 0 and 1, hides physical
representation (0-5V? 0.1.8V? Physical switch? Gears?,
etc.)
On top of these 0s and 1s we represent:

numbers,

letters, and

programs!

3/1

More abstraction: gates

Logic gates are abstractions of circuits that manipulate


the physical representations of 0 and 1.

4/1

Design principles

Hierarchy

Modularity

Regularity

All used to manage complexity.

5/1

Resource Efficiency

Abstraction provides function, but performance or


efficiency may be a different story.

6/1

Course Administration

Lectures 10:1011:25 AM Tue, Thur


501 Schermerhorn Hall
Sep 6 Dec 8
Holidays: Nov 8, 24

7/1

Resources

We will use courseworks for all course materials:

syllabus,

slides,

assignments,

grades,

etc.

There is a link to Piazza which we will use for Q&A and


announcements.

8/1

Textbook
No required text, but there is a recommendation:
David Harris and Sarah Harris. Digital Design and
Computer Architecture.
Almost precisely right for the scope of this class: digital
logic and computer architecture.

9/1

Office Hours

The four (and counting) TAs and I will all offer office
hours.
Always consult the course calendar (linked from the
syllabus in courseworks) for the upcoming hours.

10 / 1

Design Projects
Over the course of the semester, you will complete four
design projects:

three hardware designs,

one software design in MIPS.

I will demo logic simulator (Logisim) and MIPS simulator


(Spim) in lecture.
There is no one right answer.
Each design will be accompanied by a brief (1-3 pages)
design report.

11 / 1

Grading Rubric

Combinational Logic Project


Sequential Logic Project
MIPS Programming Project
Microarchitecture Project

20%
20%
30%
30%

Scoring rubric for each project will be visible on


courseworks.

12 / 1

Late Policy

Projects are due by 11:59PM on their due date.


Each student gets two free late days.
Beyond that, you may submit projects up to two days
late at a penalty of 30pts/day.

13 / 1

Collaboration Policy
You may discuss projects with your classmates, but
each student should produce their own implementation.

OK: Discussing general strategies, helping


eachother debug.

Not OK: Producing a single solution on a whiteboard


and individually coding it up.

Use your judgement about outside resources. (E.g.,


Reading wikipedia is fine, but asking stackoverflow.com
to help debug your assembly code is not.)
In unclear situations, ask.
Always describe collaborations in your report.
14 / 1

Regrade Policy

Must request in writing (via private Piazza post) within


one week of scores being released.
The purpose is to correct our errors (e.g., we
mis-totaled your points, the feedback suggests the
grader overlooked part of your circuit).
Do not fish for points or argue about judgement calls
made by the grader.

15 / 1

Registration and Wait List

This class is currently full.


If we can secure a larger lecture hall, we will increase
cap.
The course is using the SSOL Waitlist, in FCFS order.
For fairness, no overrides.
It is offered every semester.

16 / 1

You might also like