Students are given an overview of what this course is about and how it will be conducted.
Slides: Introduction
Videos:
Introduction (21 mins)
Moore's Law (16 mins)
Von Neumann vs Harvard Architecture (13 mins)
For the code given below, assume that the values of a, b and c are in registers $17, $18 and $19 respectively. Using this information, translate the code to MIPS:
using the bne instruction (instead of the beq instruction as shown in the video)
without using a jump instruction
if (a!=b){
c=a+b;
}
else{
c=a-b;
}
Do NOT watch before attempting the problem: Translating "if, else" to MIPS w/out Jump Instruction
Slides: MIPS ISA (Slides 1-13)
Videos:
MIPS Register Convention (24 mins)
Register File: Read/Write Operations (30 mins)
Slides: MIPS ISA (Slides 18-22)
Notes:
Videos:
Slides: MIPS ISA (Slides 24-28)
Notes: Load & Store Operations
Videos:
Big Endian, Little Endian (20 mins)
Syllabus: Contents of Class 2, 3, 4, 5 & 6
Slides: MIPS ISA
Notes:
Videos:
Translating a for loop Using beq & slti (29 mins)
Iterating Arrays in for loops (21 mins)
Translate the C code snippet given below to MIPS. Assume that the base address of A is in $s5.
for (int i=5; i<25; i+=5){
if(A[i]>i){
A[i] = i+10;
}
else{
A[i] -= A[i];
}
}
Notes: Encoding, Decoding
Videos:
Slides:
MIPS ISA (continued)
Notes: Shift Operations - sll, srl
Videos:
Loading a 32-bit Constant to a Register (14 mins)
Shift Operations - sll, srl (15 mins)
Integer Multiplication and Division (9 mins)
Syllabus: Everything covered so far
Students are asked to explain the logical reasoning behind their midterm answers. Participation in this class is mandatory for everyone who took the midterm exam.
Notes: Introduction to IEEE 754 FP Representation
Videos:
Floating Point Numbers (11 mins)
IEEE754 Single Precision Floating Point Representation (37 mins)
Notes: IEEE 754 FP to Decimal
Slides: MIPS Floating Point Instructions
Videos:
Decimal to IEEE 754 Single Precision Review + Range (13 mins)
IEEE-754 Single Precision to Decimal (19 mins)
MIPS Floating Point Instructions (12 mins)
Syllabus: Addressing Modes, Stack, Performance, IEEE 754 Floating Point Representation
Slides: Basic MIPS Architecture
Videos:
Single Cycle Datapath (36 mins)
Multicycle Datapath (25 mins)
The following instructions take place in a MIPS pipeline:
lw $s2, 8($t1)
add $t3, $s2, $t2
and $s3, $t2, $s2
sw $t3, 12($t1)
addi $s4, $s3, -8
Based on the given instructions:
Identify the hazards
Resolve the identified hazards using stalls only
Resolve the identified hazards in the most efficient manner to get the lowest CPI
Syllabus: Everything covered after the midterm