NOTE : Lecture slides uploaded before the lectures serve as pre-readings, and thus are subject to changes. The final version of the slides may be uploaded after the lectures.

This lecture schedule gives an approximate distribution of topics among the weeks of the trimester.
Week 1
Introduction to the course (course outline)    
Introduction to Computer Organization (chapter 1) Chapter 1.1-1.5  
Understand computer performance (chapter 1) Chapter 1.6-1.8  
1. course-introduction.pdf: Course Introduction and Introduction to Compute Hardware
2. notes-performance.pdf: Understanding Computer Performance
Week 2
Start Project 1 in labs.
MIPS programming 1 (chapter 2) Chapter 2.1 - 2.3  
  Chapter 2.3, 2.4  
3. notes-mips-language-1.pdf: Introduction to MIPS, using registers, accessing RAM, add, sub, lw, sw. Useful page of registers and Mnemonics.    
3. notes-mips-language-2.pdf: Signed and unsigned binary, 2's complement, endian-ness, sign extension, R-format, I-format.
Week 3
MIPS programming 2 (chapter 2) Chapter 2.5, 2.6  
  Chapter 2.6, 2.7  
3. notes-mips-language-3.pdf: Logic operations, isolating fields, conditional instructions, if-else, loops, bounds checks.    
3. notes-mips-language-4.pdf: Program efficiency, procedure calls, using the stack, register conventions, nested procedures.
Week 4
MIPS programming 3 (chapter 2) Chapter 2.8  
  Chapter 2.9, 2.10  
3. notes-mips-language-5.pdf: Global pointer, relative addressing, jump instruction, pseudo-direct addressing, branch off-set, 32bit immediates, ASCII, Unicode, OpCode and Function tables.    
3. notes-mips-language-6.pdf: Race conditions and mutex, Decker's algorithm, C translation hierarchy, Arrays vs Pointers.
Week 5
MIPS programming 4 (chapter 2)    
Combinational and sequential logic (Appendix B) Appendix B  
4. notes-combinational and sequential logic -1.pdf: Combinational logic, logic gates, design a logic block using gates, MUX, decoders.    
4. notes-combinational and sequential logic -2.pdf: 4. notes-combinational and sequential logic -2.pdf
5. notes-arithmetic and logic unit.pdf: 5. notes-arithmetic and logic unit.pdf
Week 6
Start Project 2 in labs.
Single cycle datapath (chapter 4) Chapter 4.1 - 4.3  
Single cycle datapath control (chapter 4) Chapter 4.3, 4.4  
6. notes-single cycle datapath - 1.pdf: 6. notes-single cycle datapath - 1.pdf    
7. notes-single cycle datapath control - 1.pdf: 7. notes-single cycle datapath control - 1.pdf    
Week 7
Pipelining design (chapter 4) Chapter 4.5, 4.6  
L13-pipelining.pdf: L13-pipelining.pdf https://www.youtube.com/watch?v=t0J_naOcxDs&t=224s  
L14 data hazards.pdf: L14 data hazards.pdf    
     
Week 8
Data hazards (chapter 4) Chapter 4.7  
L15 data hazards 2.pdf: L15 data hazards 2.pdf    

L16 control hazards.pdf: L16 control hazards.pdf
4.8  
Week 9
Start Project 3 in labs.
     
Memory hierarchy (chapter 5) Chapter 5  
L17 Intro to Memory.pdf: L17 Intro to Memory.pdf
Gates.pdf: Gates.pdf
Chapter 5.1-5.3  
NO LECTURE Wed, 15th May 2019 - Graduation
Week 10
NO LECTURE Tuesday, 21st May 2019    
L18 Caching.pdf: L18 Associatve Caching.pdf Chapter 5.4  
Week 11
Assignment 4 available  
L19 Caching and VM.pdf: L19 Caching and VM.pdf Chapter 5.7  
L20.pdf: L20.pdf Virtual memory and IO systems Chapter 6  
Week 12
Kris's Course review Chapter 6  
Robin's Course review    
Review lecture.pdf: Review lecture.pdf
     
Past exams and reference solutions:

nwen242-exam-2015-with-answer.pdf

Exam242_2016-with-answer.pdf

Exam242_2017-with-answer.pdf

T1-2019-NWEN342-Exam front page.pdf: T1-2019-NWEN342-Exam front page.pdf

Topic attachments
I Attachment Action Size Date Who Comment
nwen242-exam-2015-with-answer.pdfpdf nwen242-exam-2015-with-answer.pdf manage 223 K 14 May 2019 - 17:15 Main.dykstrro