Beruflich Dokumente
Kultur Dokumente
Course Overview
Zhiru Zhang
School of Electrical and Computer Engineering
Lecture 1: 1
Digital Computers are Everywhere
Lecture 1: 2
Changing Every Aspect of Our Life
Lecture 1: 3
Digital (Super)Intelligence?
Mar 2016: Google’s AlphaGo won the match against Go top player Lee Sedol
Source: http://www.economist.com/news/science-and-technology/21694
540-win-or-lose-best-five-battle-contest-another-milestone
Lecture 1: 4
How Do We Build a Complex Computer System?
MOSFET
Lecture 1: 6
Required Textbook
Lecture 1: 7
Class Resources
• Course website
– http://www.csl.cornell.edu/courses/ece2300/
– Lecture slides, syllabus, and other handouts
• Piazza
– Announcements and Q&A
– Enrollment information to come
Lecture 1: 8
Teaching Assistants
Lecture 1: 9
Seeking Help After Class
• Piazza
– Questions on lectures, assignments, and labs
– Monitored by instructor & Tas
• Staff email
– Grading related questions to instructor & TAs
• Instructor email
– Private matters/appointment
• Office hours
– Instructor: Thursday, 4:00-5:30pm, Rhodes 320
– TA office hours to be announced soon
Lecture 1: 10
A Memory Game: Dirty Bit
Lecture 1:
Grading
• Participation: 3% • Prelim 1: 12%
• Labs: 30%
Lecture 1: 12
Participation (3%)
• Participating in-class activities
– Asking & answering questions in class
– Games and bonus problems
Lecture 1: 13
Labs and Homework (42%)
• Labs (30%)
– Six labs
• Prelab: write-up of your (partial) design
• Lab section: implement and test your design
• Lab report: write up your findings
– Lab 1 starts on Monday January 29th
• Homework (12%)
– Assigned most weeks (~8 problem sets)
Lecture 1: 14
Exams and Quizzes (55%)
• Prelims (28%)
– Thursday, March 1, in class
– Tuesday, April 17, Phillips 101
• Quizzes (6%)
– You will need to answer pop quiz questions in most
lectures (using paper & pencil)
– Three lowest scores will be dropped
Lecture 1: 15
Important Policies
• Late Policy
– We collect assignments the instant they are due
• Late submissions = 0 points
• Applies to homework, prelabs, and lab reports
– You can submit up to TWO assignments after the
deadline without penalty
• Total SIX slip days; At most ONE slip day for prelab
• Intended to cover minor illnesses or “crunch time”
– If you have a serious illness or family emergency, contact me
• Regrade Policy
– Submit regrade form within one week if you feel a
grading mistake has been made
Lecture 1: 16
How to Do Well in This Class
• Come to every lecture and participate
– Put your laptop away
Lecture 1: 17
Academic Integrity
• http://cuinfo.cornell.edu/aic.cfm
Lecture 1: 19
Course Content
• Binary numbers and logic gates
• Boolean algebra and combinational logic
• Sequential logic and state machines
• Binary arithmetic Digital
• Memories logic
Computer
• Instruction set architecture
organization
• Processor organization
• Caches and virtual memory
• Input/output
• Advanced topics
Lecture 1: 20
Where This Course Sits in the “Stack”
Application
Traditional
higher levels of abstraction
Programming language CS
System software (compilers, OS)
Instruction set architecture
Computer
Chip design Computer organization
Engineering
Digital logic design
Electronic circuits
Traditional
Devices EE
Atomic physics
Lecture 1: 21
Binary Digital Systems
• Digital system: • Binary (base 2) system
Finite number of values Use two states: 0 and 1
0V “0”
Lecture 1: 22
0 and 1 Don’t Have to be Exact
• 0 and 1 represented by
voltage ranges (logic levels)
2V
“1”
1.5V
• Electronic circuits do not
need to be perfect
Lecture 1: 23
Can We Represent More Than 2 Values?
Lecture 1: 24
Positional Number Representation
• Recall positional notation for decimal numbers
329 base 10
(decimal)
102 101 100
3x100 + 2x10 + 9x1 = 329
101 base 2
(binary)
22 21 20
1x4 + 0x2 + 1x1 = 5
Lecture 1: 25
From Stones to Numbers
• White stone = 0
• Black stone = 1
1*23+1*22+0*21+1*20
= 8 + 4 + 0 + 1 = 13
Lecture 1: 26
Logic Gates
• Logic gates are functions: take one or more
binary inputs and produce a binary output
A A
A Y Y Y
B B
A Y A B Y A B Y
0 1 0 0 0 0 0 0
1 0 0 1 0 0 1 1
1 0 0 1 0 1
Truth Table
1 1 1 1 1 1
Lecture 1: 27
Build a 1-Bit Adder
• Inputs: A, B and Cin (carry-in)
• Outputs: S (sum) and Cout (carry-out)
A B Y
A B Cin Cout S 0 0 0
XOR Gate
0 0 0 0 0 0 1 1
A•B’ + A’•B
0 0 1 0 1 1 0 1
0 1 0 0 1 1 1 0
0 1 1 1 0
1 0 0 0 1
1 0 1 1 0
1 1 0 1 0
1 1 1 1 1
Lecture 1: 28
Build a Multi-Bit Adder
abstraction
A B
Cout Cin
S
a15 b15 a2 b2 a1 b1 a0 b0
A B A B A B A B
c16 c2 c1 0
Cout Cin Cout Cin Cout Cin Cout Cin
S S S S
s15 s2 s1 s0
Lecture 1: 29
Build a Programmable Microprocessor
0
1 0
Z 1
+2 0
Z’ 2
N 3 MP
1 N’ 4
SE(OFF,0) Adder C
V
5
6
MP 7
BS
Fm … F0
DR
SA RF DataA
Inst. RAM
SB M_address
Decoder
IMM LD
DataB ALU Data
PC
MB SA 0 Data_in RAM 0
FS SB 1
MD 1
DR
LD D_in VCZN
SE
MW
MB MW MD
BS
IMM
Lecture 1: 30
Build a Complete Computer
A
Y
B
Lecture 1: 31
Before Next Class
Next Time
Switching Algebra
Lecture 1: 32