15
SWE3005: Introduction to Computer Architectures, Fall 2019, Jinkyu Jeong ([email protected]) SWE3005-43 Introduction to Computer Architectures Fall 2019 Jinkyu Jeong ([email protected] ) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu

SWE3005-43 Introduction to Computer Architecturescsi.skku.edu/wp-content/uploads/Lec00-intro-1.pdf · 2020. 5. 20. · SWE3005: Introduction to Computer Architectures, Fall 2019,

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SWE3005-43 Introduction to Computer Architecturescsi.skku.edu/wp-content/uploads/Lec00-intro-1.pdf · 2020. 5. 20. · SWE3005: Introduction to Computer Architectures, Fall 2019,

SWE3005: Introduction to Computer Architectures, Fall 2019, Jinkyu Jeong ([email protected])

SWE3005-43Introduction to Computer Architectures

Fall 2019

Jinkyu Jeong ([email protected])Computer Systems Laboratory

Sungkyunkwan Universityhttp://csl.skku.edu

Page 2: SWE3005-43 Introduction to Computer Architecturescsi.skku.edu/wp-content/uploads/Lec00-intro-1.pdf · 2020. 5. 20. · SWE3005: Introduction to Computer Architectures, Fall 2019,

SWE3005: Introduction to Computer Architectures, Fall 2019, Jinkyu Jeong ([email protected]) 2

Course Information

• Schedule– 12:00~13:15 (Tue.), 13:30~14:45 (Thu.)– Lecture room: #400112 (Semiconductor Bldg.)

• Instructor – Jinkyu Jeong (정진규, jinkyu AT skku.edu)– Office: #400510 (Semiconductor Bldg.)– Tel: 031-290-7692– Office Hours: 14:00 – 15:00 (Tuesday)– Email contact is preferred

Page 3: SWE3005-43 Introduction to Computer Architecturescsi.skku.edu/wp-content/uploads/Lec00-intro-1.pdf · 2020. 5. 20. · SWE3005: Introduction to Computer Architectures, Fall 2019,

SWE3005: Introduction to Computer Architectures, Fall 2019, Jinkyu Jeong ([email protected]) 3

Course Information

• (Awesome) teaching assistants– Minwoo Ahn (안민우)• [email protected]

– Sunghwan Kim (김성환)• [email protected]

– Office: #400509, Semiconductor Bldg.

Page 4: SWE3005-43 Introduction to Computer Architecturescsi.skku.edu/wp-content/uploads/Lec00-intro-1.pdf · 2020. 5. 20. · SWE3005: Introduction to Computer Architectures, Fall 2019,

SWE3005: Introduction to Computer Architectures, Fall 2019, Jinkyu Jeong ([email protected]) 4

Course Information• Course materials will be distributed through our class web

page– http://csi.skku.edu/course/swe3005f19/– Lecture slides, announcements, exam scores, projects, etc.– iCampus• DON'T waste your time in iCampus

• This is a junior-level course with the following prerequisites:– Required: Logic Design (ICE 2001) or equivalent courses– Recommended: Introduction to Computer Systems (SSE 2020),

System Programming (CSE2003),System Program (SWE 2001), or equivalent courses

Page 5: SWE3005-43 Introduction to Computer Architecturescsi.skku.edu/wp-content/uploads/Lec00-intro-1.pdf · 2020. 5. 20. · SWE3005: Introduction to Computer Architectures, Fall 2019,

SWE3005: Introduction to Computer Architectures, Fall 2019, Jinkyu Jeong ([email protected]) 5

Caution• This course covers basic organization and design of a

computer

• Other classes covering the same topic– ICE3003: Computer Architecture in the college of ICE– EEE3050: Theory on Computer Architectures in EE department

• For those who already had taken any of the classes should not take this course– Will fail this course if found– Be careful about this

Page 6: SWE3005-43 Introduction to Computer Architecturescsi.skku.edu/wp-content/uploads/Lec00-intro-1.pdf · 2020. 5. 20. · SWE3005: Introduction to Computer Architectures, Fall 2019,

SWE3005: Introduction to Computer Architectures, Fall 2019, Jinkyu Jeong ([email protected]) 6

Textbook• Computer Organization and Design – The HW/SW

Interface– Authors: David A. Patterson and John L. Hennessy [P&H]– Elsevier Inc., 2013 (5th Edition)– Available at University Bookstore (~40,000 KRW)– Also available at the Samsung Library

Original 4th Edition(OK)

Revised 4th Edition(OK)

ARM Edition (4th)(Not OK)

5th Edition(Recommended)

Page 7: SWE3005-43 Introduction to Computer Architecturescsi.skku.edu/wp-content/uploads/Lec00-intro-1.pdf · 2020. 5. 20. · SWE3005: Introduction to Computer Architectures, Fall 2019,

SWE3005: Introduction to Computer Architectures, Fall 2019, Jinkyu Jeong ([email protected]) 7

Topics

• Overview• MIPS instruction set architecture• Arithmetic for computers• Processor - Datapath & control• Processor - Pipelining and hazards• Cache memory• Virtual memory• I/O Basics• Multiprocessors

Page 8: SWE3005-43 Introduction to Computer Architecturescsi.skku.edu/wp-content/uploads/Lec00-intro-1.pdf · 2020. 5. 20. · SWE3005: Introduction to Computer Architectures, Fall 2019,

SWE3005: Introduction to Computer Architectures, Fall 2019, Jinkyu Jeong ([email protected])

Anatomy of a Computer

Touch screen:output device

Buttons:input device

Touch screen:

input device

Wiress network:network device

Page 9: SWE3005-43 Introduction to Computer Architecturescsi.skku.edu/wp-content/uploads/Lec00-intro-1.pdf · 2020. 5. 20. · SWE3005: Introduction to Computer Architectures, Fall 2019,

SWE3005: Introduction to Computer Architectures, Fall 2019, Jinkyu Jeong ([email protected]) 9

Components of a Computer• Same components for

all kinds of computer– Desktop, server,

embedded

• Input/output includes– User-interface devices• Display, keyboard, mouse– Storage devices• Hard disk, CD/DVD, flash– Network adapters• For communicating with other

computers

The BIG Picture:Logical view of a computer

Page 10: SWE3005-43 Introduction to Computer Architecturescsi.skku.edu/wp-content/uploads/Lec00-intro-1.pdf · 2020. 5. 20. · SWE3005: Introduction to Computer Architectures, Fall 2019,

SWE3005: Introduction to Computer Architectures, Fall 2019, Jinkyu Jeong ([email protected]) 10

Inside the Processor (CPU)

• AMD Barcelona: 4 processor cores

You will understand what each block does by the end of this course!

Page 11: SWE3005-43 Introduction to Computer Architecturescsi.skku.edu/wp-content/uploads/Lec00-intro-1.pdf · 2020. 5. 20. · SWE3005: Introduction to Computer Architectures, Fall 2019,

SWE3005: Introduction to Computer Architectures, Fall 2019, Jinkyu Jeong ([email protected])

Course Coverage and Schedule*

Schedule Contents Remarks(5th Edition)

Week 1 Course Outline & Introduction Ch. 1

Weeks 2~4 MIPS Instruction Set Architecture (ISA) Ch. 2

Week 5 Arithmetic for Computers Ch. 3

Week 6 Processor: Datapath & Control Ch. 4.1-4.4

Week 7 Pipelining (1) Ch. 4.5-4.6

Week 8 Midterm No Classes

Week 9 Pipelining (2) Ch. 4.7-4.8

Week 10 Advanced Instruction-Level Parallelism (ILP) Ch. 4.9-4.15

Weeks 11~13 Memory Hierarchy: Caches and Virtual Memory Ch. 5

Weeks 14~15 Multicores, Multiprocessors, and Clusters Ch. 6

Week 16 Final No Classes

* Schedule is subject to change.

Page 12: SWE3005-43 Introduction to Computer Architecturescsi.skku.edu/wp-content/uploads/Lec00-intro-1.pdf · 2020. 5. 20. · SWE3005: Introduction to Computer Architectures, Fall 2019,

SWE3005: Introduction to Computer Architectures, Fall 2019, Jinkyu Jeong ([email protected]) 12

Programming Assignments

• PA #1: MIPS assembly programming– Problem solving using an assembly language

• PA #2: Cycle-accurate MIPS simulator– Cycle accounting for pipelined execution– Branch prediction + branch history buffer

• PA #3: Cache simulator– Various cache configuration and simulation

• All assignments require fluent C programming skills

Page 13: SWE3005-43 Introduction to Computer Architecturescsi.skku.edu/wp-content/uploads/Lec00-intro-1.pdf · 2020. 5. 20. · SWE3005: Introduction to Computer Architectures, Fall 2019,

SWE3005: Introduction to Computer Architectures, Fall 2019, Jinkyu Jeong ([email protected]) 13

Class Policies (1)

• Grading system*– Attendance/Class Participation: 10%– Programming assignments: 35% (3 times)– Midterm: 25%– Final: 30%

• Class attendance policy– If you miss any of the exams, you will fail this course– No lateness is allowed– Up to three absences will be tolerated• More than three absences is F• Notification ahead of a class is accepted

* Subject to change.

Page 14: SWE3005-43 Introduction to Computer Architecturescsi.skku.edu/wp-content/uploads/Lec00-intro-1.pdf · 2020. 5. 20. · SWE3005: Introduction to Computer Architectures, Fall 2019,

SWE3005: Introduction to Computer Architectures, Fall 2019, Jinkyu Jeong ([email protected]) 14

Course Policies (2)

• Each of you will have a designated seat (aka 고정좌석제).– Take a seat you like next Tuesday (9/10) and that seat will be

yours for the first half of the semester.– We will do the same thing after the midterm if necessary.– Instructor reserves the right to reassign seats as necessary.

• TA will check the attendance by marking empty seats– Don’t be late; he may check the attendance at the beginning of

the class (or at any random time)

Page 15: SWE3005-43 Introduction to Computer Architecturescsi.skku.edu/wp-content/uploads/Lec00-intro-1.pdf · 2020. 5. 20. · SWE3005: Introduction to Computer Architectures, Fall 2019,

SWE3005: Introduction to Computer Architectures, Fall 2019, Jinkyu Jeong ([email protected]) 15

Questions?