CAO-Fall-2024-Lecture-01-Introduction-Motivation
CAO-Fall-2024-Lecture-01-Introduction-Motivation
Lecture # 01
Introduction and Motivation
Muhammad Imran
[email protected]
Welcome to
Computer Architecture and Organization
Contents
3
▪ Introduction
▪ What this course is about?
▪ Why should you take this course?
▪ Course Outline, Textbook, Grading Policy etc.
▪ What is Computer Architecture?
▪ Classical Ideas
▪ Computer Architecture Today!
Introduction
4
▪ About me …
▪ Ph.D. in Electronic and Electrical Engineering
Sungkyunkwan University, South Korea
▪ Research Interests
▪ Processing in Memory / In-Memory Computing
▪ Efficient and reliable Computing Architectures for AI
▪ Vector processor design
▪ Contact
▪ Phone: 03344921069
▪ Email: [email protected]
▪ Web: https://soc.seecs.edu.pk
▪ Office
▪ System on Chip (SoC) Lab
3rd Floor, SINES, NUST
▪ Office Hours: any time by appointment
Besides teaching and research …
5
Introduction
6
▪ Students’ Introduction
▪ Let’s get to know each other …
▪ What’s your name?
▪ Which major do you like?
▪ What are you passionate about?
▪ Anything else …
What this course is about?
How a microprocessor works at a very low level?
How do you design a microprocessor bottom up?
Why do certain programs run faster on a GPU than a
CPU?
How can we make computers better (fast, less costly,
secure etc.)?
How different programming styles impact
performance of a computer?
What are the features of a good Instruction Set
Architecture (ISA)?
Course contents in brief …
14
▪ Week 1 to Week 8
▪ Introduction & Motivation
▪ Background and design example
▪ Instruction Set Architecture (ISA)
▪ Measuring Performance
▪ Design of an Arithmetic Logic Unit (ALU)
▪ Design of Single-Cycle Processor Datapath and Control
▪ Multicycle Pipelined Processor Implementation
▪ Dealing with Pipelining Hazards
▪ Handling Interrupts and Exceptions
Mid-Semester Exam
▪ 9th Week
Lectures Plan
21
▪ Week 10 to Week 17
▪ Advanced Techniques for Instruction-Level Parallelism
▪ Out-of-Order Execution
▪ Superscalar Processors
▪ Hardware Multithreading
▪ Data-Level Parallelism for Performance
▪ Vector Architectures and GPUs
▪ Memories and Memory Hierarchy
▪ Caches
▪ Virtual Memory
▪ Thread-Level Parallelism for Performance
▪ Multicore systems
▪ Cache Coherence in Multicores
▪ Domain-Specific Architectures
▪ Processing-In Memory
▪ Assignments
▪ 10%
▪ Quizzes
▪ 10%
▪ MSE
▪ 30%
▪ ESE
▪ 50%
▪ Project
▪ 40% of Lab. grade!
▪ Make a solid contribution in evolving RISC-V ecosystem!
▪ Start looking at what’s should be next in RISC-V!
▪ Start with riscv.org …
A few words on class ethics …
23
▪ Say no to Plagiarism!
▪ Never copy others’ assignment!
▪ Better fail now or you fail later in your life!
▪ Properly cite the resources used in your assignments / project!
▪ Work Hard!
▪ Respect for all!
▪ If you have any problem, feel free to contact me!
Presence in class
24
Laptops
Digital Cameras Robots
Smartphones
Automobiles
Home Appliances
Servers, datacenters, supercomputers
and many more …
Source: images.google.com, multiple sites
With insights to undertake the design of modern
computers …
and getting your work done efficiently by a computer
…
Key ideas that shaped Computer Architecture over
time
Abstraction Layers to simplify design!
33
Application
Algorithm
Programming Language
Operating System / Virtual Machines
Instruction Set Architecture (ISA)
Microarchitecture Classical view!
Gates / Register-Transfer Level (RTL)
Circuits
Devices
Modern view!
Physics
▪ Moore’s observation
▪ The number of transistors on a denser integrated circuits doubled every
two years …
▪ Technology Scaling
▪ Make transistor smaller and smaller …
▪ Allows to integrate more circuit on same area!
▪ More function!
▪ No longer progressing at pace of Moore’s law
▪ Ending scaling
▪ Power!
Dennard Scaling
39
▪ Dynamic energy
▪ Transistor switch from 0 -> 1 or 1 -> 0
▪ ½ x Capacitive load x Voltage2
▪ Dynamic power
▪ ½ x Capacitive load x Voltage2 x Frequency switched
▪ Static energy is the energy consumed due to leakage current!
▪ Increasing leakage with smaller transistor!
▪ Proportional to number of transistors!
▪ One solution is to cut off power if a module is not in used!
Clock Rate
42
Source: Wikipedia
Understanding the conventional wisdom and
fundamental design principles with attention to current
challenges to inspire new out-of-the-box designs …
What’s the state-of-the-art research in Computer
Architecture?
Challenges with Memory System
“Across the industry, today’s chips are largely able to
execute code faster than we can feed them with instructions
and data. There are no longer performance bottlenecks in
the floating-point multiplier unit. The real design action is in
the memory subsystems – caches, buses, bandwidth, and
latency”
- Richard Sites, 1996
Architecting Memory System
49
https://www.intel.com/content/www/us/en/products/details/memory-storage/optane-memory.html
Post Von Neumann Architectures
53
▪ Processing-In Memory
▪ Implement logic within memory!
▪ Reduce costly data movement!
▪ Save energy and improve performance!
Reliable and Secure Computing
RowHammer in DRAM
56
Resistance
B Error!
0
A 1
Time
Other Reliability Challenges
60
Software Accelerator
▪ Sequential execution on a ▪ A fast parallel datapath!
processor!
Google Tensor Processing Unit (TPU)
63
https://storage.googleapis.com/nexttpu/index.html
Google Tensor Processing Unit (TPU)
64
https://storage.googleapis.com/nexttpu/index.html
Google Tensor Processing Unit (TPU)
65
https://storage.googleapis.com/nexttpu/index.html
Tesla self-driving computer (2019)
66
https://youtu.be/Ucp0TTmvqOE?t=4236
Relevant Resources
67
▪ RVFPGA Program
▪ Learning RISC-V architecture using FPGA!
▪ https://university.imgtec.com/rvfpga/