Lecturer/Manager | Professor Dan Rubenstein |
---|---|
Office hours: | Location: CEPSR 816 M,W 4-5pm Also at other times by appointment |
Office phone: | (212) 854-0050 |
Mailbox: | Inside 1312 Mudd |
Email address: | dsr100@columbia.edu (or danr@cs.columbia.edu or danr@ee.columbia.edu) - they all go to the same place so pick one, not all please... |
Day & Time Class
Meets on Campus: |
Tue,Thurs 9:35-10:50am |
Location: | 834 Mudd |
Credits for Course: | 3 |
Class Type: | Lecture |
Teaching Assistant: | Bong-Jun Ko (kobj@ee.columbia.edu)
|
Prerequisites: |
|
Description: |
Topics: Theory of digital systems. Digital coding of
information. Study of combinational and sequential system
design. Finite-state machines. Microcode. Computer
arithmetic. Microprocessors.
The purpose of this course is to introduce you to logic design, digital system design, and computer design. What you will learn here will give you a fundamental understanding of how computers work. We will be dealing mostly with binary operations: 1's and 0's and how these two values are applied to produce any computation that is doable on a computer. |
Required text(s): |
|
Reference text(s): |
|
Homework(s): | Unless otherwise specified, homework
will be due one week after it is assigned and should be turned in at the beginning of
class. At that time, you must turn in a physical copy of
the assignment. E-mailed homework and late assignments will
not be accepted unless approved in advance. Approval will only be
given under extreme circumstances. You are expected to produce your
work in a timely manner. You may also turn in your homework by
sliding it under Prof. Rubenstein's office door or putting it in his
mailbox before 9am on the day that it is due. After 9am,
there is no guarantee that Prof. Rubenstein will be in his office or
visit his mailbox.
You may discuss and work on questions with other students in the class. However, you should write your solutions on your own. In other words, if I were to later ask you to re-derive one of your homework solutions or to solve a similar problem when you were without your friends, you should be able to do so or have a clear understanding of how to approach the problem. This can only be learned by doing, so you should do your homework. |
Midterm exam: | Closed book, Closed note, no calculators, March 9, during classtime |
Final exam: | Date/time TBD |
Class / office-hour participation: | If you ace your tests and homeworks, you will get an A+, even if you do not participate in class or come to office hours. However, if you don't ace your tests and homeworks, but you can demonstrate to me that you have learned the material in another fashion (mainly via office-hour discussion in which you work through additional problems), you can improve by up to one letter grade (e.g., C to a B). To reiterate, it is possible to improve your grade by demonstrating an understanding of the material during the course of the term (i.e., not just when you get your midterm back). |
Grading: | Assignments 20%, midterm 35%, final 45%, class/office hour participation can improve one's grade further% |
A note on exams: | I am more interested in your gaining an understanding of and developing an intuition for why certain rules, laws, and techniques hold and are used. I am less interested in your ability to memorize these rules, laws and techniques and blindly apply them without intuition as to why they work. Thus, I will try to design the midterm and final questions to test your understanding of the concepts, not your memorization skills. I realize that some memorization will undoubtebly be required, but hopefully the memorized concepts will be those that can be rederived via your intuition. |
Computer hardware and software requirements: | None |
Date | # | Topics/chapters covered | Reading (before class) | Assigned | Due |
---|---|---|---|---|---|
1/20 | 1 | Course information; introduction; non-decimal number systems; decimal and alphanumerical codes; binary logic and gates | 1, 2.1 | ||
1/22 | 2 | Boolean algebra | 2.2 | HW #1 [PS,PDF] (due 1/29) | |
1/27 | 3 | Standard forms | 2.3 | ||
1/29 | 4 | Map simplification | 2.4 | HW #2 [PS,PDF] (due 2/5) | HW #1 [PS, PDF] |
2/3 | 5 | Map manipulation | 2.5 | ||
2/5 | 6 | Multiple Level Circuit Optimization | 2.6 | HW #2 [PDF (0.5M)] | |
2/10 | 7 | NAND, NOR, XOR, 3-State Buffers, Gates | 2.7-2.9 | HW #3 [PS,PDF] (due 2/17) | |
2/12 | 8 | Combinatorial Logic Design, PLAs, PALs | 3.1-3.6 | ||
2/17 | 9 | Decoders, Encoders, Multiplexers | 4.1-4.5 | HW #4 [PS,PDF] (due 2/26) | HW #3 [PDF (0.4M)] |
2/19 | 10 | Binary adder-subtractors; multipliers | 4.6, 5.1-5.6 | ||
2/24 | 11 | Intro to sequential circuits, latches | 6.1-6.2 | HW #5 [PS,PDF] (due 3/2) | |
2/26 | 12 | Flip-flops: master-slave; edge-triggered; characteristic tables; sequential circuit analysis | 6.3-6.4 | HW #4 [PDF (0.6M)] | |
3/2 | 13 | Sequential circuit design; design using D and JK flip-flops | 6.5-6.6 | HW #5 [PDF (0.4M)] | |
3/4 | 14 | Registers; Register Transfers and Transfer Operations | 7.1-7.3 | ||
3/9 | 15 | MIDTERM EXAM | |||
3/11 | 16 | Prof Rubenstein out of town: NO CLASS | |||
3/16 | 17 | Spring Break: NO CLASS | |||
3/18 | 18 | Spring Break: NO CLASS | |||
3/23 | 19 | Microoperations | 7.5 | HW #6 [PS,PDF] (due 4/6 EXTENDED!) | |
3/25 | 20 | Counters | 7.6 | ||
3/30 | 21 | Register Cell Design, Multiplexer and bus- and serial-based transfer | 7.7-7.9 | HW #7 [PS,PDF] (due 4/6) | HW #6 [PDF (270K)] |
4/1 | 22 | Control Unit, Algorithmic State Machines | 8.1-8.3 | ||
4/6 | 23 | Hardwired Control | 8.4 | HW #7 [PDF (450K)] | |
4/8 | 24 | Memory; RAM, SRAM | 9.1-9.4 | ||
4/13 | 24 | DRAM | 9.5-9.7 | HW #8 [PS,PDF] (due 4/20) | |
4/15 | 25 | DataPaths, ALU | 10.1-10.3 | ||
4/20 | 26 | Shifter, Datapath Rep, Control Word, Computer Arch | 10.4-10.7 | HW #8 [PDF (222K)] | |
4/22 | 27 | Single cycle hardwired control; multiple cycle microprogrammed control; | 10.8-10.9 | HW #9 [PS,PDF] (due 4/29) | |
4/27 | 28 | Instruction set architecture | 11.1-11.4 | ||
4/29 | 29 | Review | HW #9 [PDF (138K)] | ||
5/13 @ 9pm | FINAL EXAM | 825 Mudd |