COE 308 - Fall 2011

Computer Architecture

 

Muhamed F. Mudawar

mudawar@kfupm.edu.sa

Office: Building 22, Room 328, Phone: 4642

Schedule and Office Hours

Syllabus | Lectures | Assignments | Tools and Manuals | Fall 2009

Announcements

Final Exam: Sunday, January 15, 7:30 AM, Building 22, Room 132

Project Presentation: Saturday, December 31, 3 PM

Exam 2: Tuesday, December 13, 7 PM, Building 22, Room 119

Quiz 4: Single-Cycle Processor, Wednesday, December 7

Quiz 3: Floating Point, Saturday, November 26

Exam 1: Sunday, October 23, 7 PM, Building 24, Room 112

Quiz 2: MIPS Instruction Set, Wednesday, October 5

Quiz 1: Computer Abstraction & Technology, Wednesday, Sept 21

Final Exam: Sunday, January 15, 7:30 AM

Assistant

Ayman Hroub

Email: ahroub@gmail.com

Any question related to grading should be directed to the teaching assistant

Textbook

David A. Patterson and John L. Hennessy, Computer Organization & Design, The Hardware/Software Interface, Third Edition, Morgan Kaufmann Publishers, 2005. ISBN: 1-55860-604-1.

Course Objectives

  • In-depth understanding of the inner-workings of modern computer systems, their evolution, and tradeoffs present at the hardware-software interface.

  • Understanding the design process of a modern computer system. This includes the design of the processor datapath, control, memory system, and I/O subsystem.

Academic Honesty

View important information on academic honesty

Exam Schedule

Exam 1: Sunday, October 23, 7 PM

Exam 2: Tuesday, December 13, 7 PM

Final Exam: Sunday, January 15, 7:30 AM

Sample Exams

Exam 1 - Spring 2008

Exam 1 Solution - Spring 2008

Exam 2 - Fall 2008

Exam 2 Solution - Fall 2008

Instruction Sheet 2

Final Exam - Fall 2008

Final Exam Solution - Fall 2008

Grading

Quizzes: 10%

MIPS Programming: 15%

Design Project: 20%

Exam I: 15%

Exam II: 20%

Final Exam: 20%

Course Topics and Lecture Breakdown by Week

 

Week

Course Topics

1

Introduction to computer architecture, ISA versus organization, components, abstraction, technology improvements, chip manufacturing process.

2-4

Instruction set design, RISC design principles, MIPS registers, instruction formats, arithmetic instructions, immediate operands, bit manipulation, load and store instructions, byte ordering, addressing modes, flow control instructions, pseudo-instructions, procedures and runtime stack, call and return, MIPS register conventions, alternative IA-32 architecture.

5

CPU performance and metrics, CPI, performance equation, MIPS as a metric, Amdahl’s law, benchmarks and performance of recent Intel processors.

6-7

Integer multiplication, integer division, floating point representation, IEEE 754 standard, normalized and de-normalized numbers, zero, infinity, NaN, FP comparison, FP addition, FP multiplication, rounding and accurate arithmetic, FP instructions in MIPS.

8-9

Designing a processor, register transfer logic, datapath components, clocking methodology, single-cycle datapath, main control signals, ALU control, single-cycle delay, multi-cycle versus single-cycle instruction execution.

10

Pipelining versus serial execution, MIPS 5-stage pipeline, pipelined datapath, pipelined control, pipeline performance.

11

Pipeline hazards, structural hazards, data hazards, stalling pipeline, forwarding, load delay, compiler scheduling, hazard detection, stall and forwarding unit, control hazards, branch delay, dynamic branch prediction, branch target and prediction buffer.  

12-13

Cache memory design, locality of reference, memory hierarchy, DRAM and SRAM, direct-mapped, fully-associative, and set-associative caches, handling cache miss, write policy, write buffer, replacement policy, cache performance, CPI with memory stall cycles, AMAT, two-level caches and their performance, main memory organization and performance.

14-15

Introduction to parallel architectures

 

  Last Updated: Tuesday March 20, 2012, by Dr. Muhamed Mudawar