You are on page 1of 17

CS-328: Computer

Architecture
Zareen Sadiq (Assistant Professor)
zareen@neduet.edu.pk
➢ Prerequisite: Digital Logic Design Course
➢ 3 credit hour course
Computer Architecture
Definition
• The programmer’s model of the machine – Instruction Set
Architecture (ISA)
➢Instruction set
➢Memory addressing
➢Addressing modes
➢Types and sizes of operands
➢Operations
➢Control Flow Instructions
➢Instruction Encoding
Computer Architecture

Motivation
➢Required for efficient programming
➢for both high level and low level language
programming
Computer Architecture
Computer Architecture
Contents
1. Advance topics in Memory System Design
• Protection – Virtual Memory
• Translation Lookaside Buffer
• Paging
• Segmentation
Computer Architecture
Contents
2. Data Level Parallelism – SIMD – Vector Processors
• Properties of Vector Processors
• Components of VMIPS Processor
• VMIPS Instruction Set
• Convoys, Chaining & Chimes
• Vector Processor advantages
• Multiple lanes
• Vector Length Register
• Vector Mask Register
• Multibank Memory
• Load And Stores With Stride
Computer Architecture
Contents
3. Data Level Parallelism – SIMD – GPUs
• Graphics Processor Unit
• NVIDIA FERMI Microarchitecture
• Kernel, Grid, Thread Blocks and Warps
• CUDA Programming Example
Computer Architecture
Contents
4. RAID Basics and Levels
5. ILP Continuation
• Data Dependence
– Flow Dependence
– Anti Dependence
– Output Dependence
• Multi Issue Architectures
• Superscalars
• VLIW Processors
Computer Architecture

Books
1. Computer Architecture: A Quantitative Approach,
Henessy and Patterson, 5th Edition, Morgan Kaufmann,
2012
2. Computer Organization and Design, Patterson and
Henessy, 3rd edition, Morgan Kaufmann, 2005
Computer Architecture

Course Learning Outcomes


1. Explore different architectural solutions for performance
improvement of computers (C3 - Application)
2. Design instruction pipelines with minimal hazards (C5 -
Synthesis)
3. Compare ways to exploit instruction and data level
parallelism for high-performance processors (C4 - Analysis)
Chapter 1
Protection – Virtual Memory

Computer Architecture: A Quantitative Approach, Henessy and


Patterson
• Section 2.4 in chapter 2
• Sections B.4 and B.5 in appendix B
Chapter 1
Protection – Virtual Memory

Some related concepts


• Process vs. Program
• Multiprogramming vs. Multiprocessing
Chapter 1
Protection – Virtual Memory

Motivation
• RAM became Rarely Adequate Memory (RAM)
• Process memory protection
=> need some efficient and simple mechanism to
manage main memory that also steer clear of
memory corruption
Chapter 1
Protection – Virtual Memory

Three important capabilities


1. Efficient main memory usage by treating it as a
cache for an address space stored on disk
2. Simplified memory management by providing
each process with a uniform address space
3. Protected address space for each process from
corruption by other processes
Chapter 1
Protection – Virtual Memory
• Why is it successful?
Ans: No intervention from application programmer
is required
• Then why study it?
Ans: Because it is:
• Central
• Powerful
• Dangerous
Virtual! How much?
Amount of Virtual memory =
total physical memory + swap space
Swap space
Space reserved on disk to provide for memory
insufficiency

You might also like