Sie sind auf Seite 1von 32

ECE/ENGRD 2300

Digital Logic & Computer Organization


Spring 2018

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

and many more …

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?

Computer: Circuit Board (PCB): Integrated Circuit (IC):


»8 / system »8-16 / PCB Module:
Hardware & Software
1-2B devices .25M-16M devices »8-16 / IC
100K devices

MOSFET

Scheme for Cell:


representing »1K-10K / Module
information Gate: 16-64 devices
»2-16 / Cell
8 devices
Lecture 1: 5
Our Plan of Attack …
• Understand how things work, bottom-up

• Encapsulate our understanding using


appropriate abstractions

• Roll up our sleeves and design at each level of


hierarchy

Lecture 1: 6
Required Textbook

• Get 2nd edition

Lecture 1: 7
Class Resources
• Course website
– http://www.csl.cornell.edu/courses/ece2300/
– Lecture slides, syllabus, and other handouts

• CMS: Course management system


– Assignments and grades
– Electronic submissions required
– Enrollment information to come

• Piazza
– Announcements and Q&A
– Enrollment information to come
Lecture 1: 8
Teaching Assistants

• PhD TA • Undergrad TAs


– Nitish Srivastava (nks45) – Norman Chen (nyc7)
– Philip Bedoukian (pbb59) – Derek Cheng (dsc252)
– Julia Currie (jbc262)
– Giacomo Di Liberto (gvd8)
• MEng TAs
– Yiwen Huang (yh385)
– Deepak Agarwal (da475)
– Evan Kravitz (esk95)
– Adeel Mahmood (am2384)
– Kevin Ying (kzy2)

• Staff email: ece2300-staff@csl.cornell.edu

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

LET’S PLAY A GAME TO TEST


HOW GOOD YOUR MEMORY IS

Lecture 1:
Grading
• Participation: 3% • Prelim 1: 12%

• Quizzes: 6% • Prelim 2: 16%

• Homework: 12% • Final: 21%

• Labs: 30%

Lecture 1: 12
Participation (3%)
• Participating in-class activities
– Asking & answering questions in class
– Games and bonus problems

• Contributing to Piazza forum


– Asking good questions & helping other students

• A (very) rough rubric


– Very active = 3pts
– Somewhat engaged = 1~2pts
– No impression = 0pt

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

• Final Exam (21%)


– Tuesday May 22, location TBD

• 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

• Read the book sections before class

• Keep up with the week to week assignments

• Seek help if necessary

Lecture 1: 17
Academic Integrity
• http://cuinfo.cornell.edu/aic.cfm

• Discussion of homework problems and lab concepts?


YES

• Misrepresenting someone else’s work as your own is


prohibited
– Getting someone else’s work? NO
– Sharing your work with others? NO
– Finding solutions on the web? NO

• Buying or selling course materials to commercial vendors


(including Internet sites)? NO
Lecture 1: 18
Tentative Course Schedule

• Complete schedule is on course website

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

• Basic unit of information:


2V “1”
the binary digit, or bit
– Two values: 0 and 1

• 0 and 1 represented by voltages

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

• We can tolerate some noise 0.5V


“0”
and computers still work 0V

Lecture 1: 23
Can We Represent More Than 2 Values?

• Yes – just use multiple bits


– A collection of 2 bits gives 4 possible values
• 00, 01, 10, 11
– A collection of 3 bits gives 8 possible values
• 000, 001, 010, 011, 100, 101, 110, 111

• A collection of n bits gives 2n possible values

Lecture 1: 24
Positional Number Representation
• Recall positional notation for decimal numbers

329 base 10
(decimal)
102 101 100
3x100 + 2x10 + 9x1 = 329

• Similar positional system for binary

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

• Convert each row into a


decimal number

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

NOT Gate AND Gate OR Gate


NOT A, A, A’ A AND B, A•B A OR B, A+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

• Read the syllabus!


• H&H 1.1-1.4.2, 1.5-1.6.2, 2.1-2.3

Next Time

Switching Algebra

Lecture 1: 32

Das könnte Ihnen auch gefallen