2023arch 1 Ch0 Intro
2023arch 1 Ch0 Intro
2023arch 1 Ch0 Intro
1
Instructor & TA
Instructor : Jiang Xiaohong
Office : Room520, Bld. of CaoGuangBiao,
Mobile(short): 529114
Email: [email protected]
Homepage:
http://mypage.zju.edu.cn/jiangxh
2023/9/19 1.2
2
Why we learn Computer Architecture?
Hardware Course Series
计算机组成
Computer Organization
逻辑与计算机设计基础
Logic and Computer Design Fundamentals
电子线路 模拟线路
Electronic Circuits Simulation Circuis
2023/9/19 1.3
3
Why we learn Computer Architecture?
嵌入式系统
编译系统 计算机网络
计算机组成
数据库系统
大学二年级
高级数据结构与算法分析
数字逻辑设计基础
数据结构基础
计算机系统概论
大学一年级
C 语言程序设计 大学计算机基础 通识课程
2023/9/19 1.4
4
Different from Organization
Applications
O perating System
Digital Design
Circuit Design
Layout
5
Course Objectives
The objective of this course
systemically learn the fundamental concepts and design
approaches of computer architecture using quantitative
approaches from the view of the whole computer system.
Learn the ideas and approaches to improve the performance of
computer system via exploring ILP, DLP, and TLP.
Grasp the hardware design tools and environment, design and
implement the hardware with Verilog language in vivado
environment on FPGA board.
2023/9/19 1.6
6
Textbook
David A. Patterson, John L. Hennessy,
《 Computer Architecture
– A Quantitative Approach 》
2023/9/19 1.7
7
John L. Hennessy ( Stanford )
Former President of Stanford University during
2000 – 2016 ( 17 billion )
Current Alphabet Chairman
"Godfather of Silicon Valley,“
• PC • dependability
• PC Cost / Performance/power
embedded system
Server • PC
Personal mobile device
2023/9/19 warehouse-scale computers 1.10
10
Updated Course Contents
教材: 6th Edition
教材: 5th Edition Contents in 2021 备注
Contents in 2020 备注 Ch1 Fundamentals of computer
1.1 ~ 1.13
design
Ch1 Fundamentals of computer
design Ch2 Memory Hierarchy Design 2.1 ~ 2.9, app B3
App C2-C6 , 3.1 ~
AppA Instruction Set Principles MIPS
3.14
AppC Pipelining: Basic and Pipeline Ch3 ILP and its expoloitation Branch prediction
Intermediate Concepts CPU Dynamic scheduling
Speculation
AppB Review of Memory
Hierarchy Ch4 DLP in Vector, SIMD, 4.1~ 4.9
GPU Vector. SIMD. GPU
Improve
Ch2 Memory Hierarchy Design
cache perf. 5.1~ 5.11
Multiprocessor
AppD Storage Systems Ch5 Thread Level Parallelism
Cache coherence
AppI Basic concepts of Synchronization
Multiprocessor Ch6 Warehouse-scale computer
选讲
to explore RLP & DLP
2023/9/19 1.11
11 Ch7 Domain-specific
2018 interview
For pioneering a systematic, quantitative
approach to the design and evaluation of
computer architecture with enduring impact
on the microprocessor industry.
https://baijiahao.baidu.com/s?id=1607140815624945357&wfr=spider&for=pc
2023/9/19 1.12
12
How ?
2023/9/19 1.13
13
Grading Policy:
16-20%: written homework
28%
8-12%: pop quiz 2-3 times
32%: Lab assignments 60% ( <=60 )
5-10%: Bonus
lab grade = report (50%) + check(50%)
2023/9/19 1.14
14
Lectures vs. Labs
Week Theory(lectures) Labs %
1 Ch0: Course Introduction. Lab1: Enhance CPU with forwarding and predict-NT 6
2 Ch1-1: CA design Lifecycle
3 Ch1-2: trends of CA engineering
4 Ch2-1: cache optimization Lab2: Adding exception to CPU in Lab1 4
5 Ch2-2: VM and VA
6 Ch3-0: ILP--supporting multicycle OP Lab3: implement a 2-way set associative cache 3
7 Ch3-1: scoreboard
8 Ch3-2: Tomasulo Lab4: adding cache to CPU of Lab2 4
9 Ch3-3: hardware-based speculation
10 Ch3-4: multiple issue processor Lab5 : expending CPU to support multicycle OP 7
11 Ch4-1: DLP—vector processor
12 Ch4-2: SIMP , GPU
Lab6 : implement dynamic scheduling:
13 Ch5-1: TLP-multiprocessor 8
scoreboard/Tomasulo
14 Ch5-2: cache coherence
15 Ch5-3: synchronization
16 Review
2023/9/19 1.15
15
Homeworks (16-20%)
Total 4-5 times, once per chapter
Submission deadline will be normally one week after
assigned, and will be announced on course
website.
For doing homework, discussion is greatly
encouraged, but every student is required to Do and
Submit the homework individually on time.
Submission Naming rule
StID_name_hw1.doc
2023/9/19 1.16
16
Lab assignments
Lab1----Implement pipelined CPU with forwarding paths and
prediction-not-taken supporting RISC V 32i instructions.
Lab2----Implement Interruption and Exception on CPU of Lab
1).
Lab3----Implement a 2-way associative cache
Lab4----Adding the cache into the pipelined CPU in Lab 2).
Lab5----Expend the pipelined CPU to support multi-cycle
operations: integer multiplier, integer divider / remainder
operation, issue in order and complete out of order, detecting
pipeline hazards ( WAW, RAW)
Lab6----Implement the Dynamic Scheduling (Scoreboard or
2023/9/19
Tomasulo), implement a dynamic scheduling pipelined CPU.
1.17
17
Labs ( 32%)
Grading (report 50% + check 50%)/per lab
Lab1 3 weeks, 6% personally
Lab2 2 weeks, 4% personally
Lab3 1 weeks, 3% personally
Lab4 2 weeks, 4% personally
Lab5 3 weeks, 7% in group of 2 members
Lab6 4 weeks, 8% in group of 2 members
2023/9/19 1.18
18
Submission Policy:
Allthe homeworks (individually) and lab reports (in
group) are required to be submitted to the course
website on time.
Lab report and lab code are required to submit
separately using different links under different deadline.
Submission deadline will be announced on course
website.
All assignments in this course should be turned in by
the specified due date. Late assignment is NOT
accepted.
2023/9/19 1.19
19
Honest Policy
Be HONEST in your work!
2023/9/19 1.20
20
Q&A
??
2023/9/19 1.21
21