Midterm Review
Jason Mars
Monday, February 11, 13
Midterm Review Jason Mars Monday, February 11, 13 ISA - - - PowerPoint PPT Presentation
Midterm Review Jason Mars Monday, February 11, 13 ISA - Instruction Length Fixed Length Variable Length 32 bits shift opcode rs rt rd funct amount 32 bits opcode rs rt immediate / offset 32 bits opcode target 32 bits shift
Monday, February 11, 13
rs rt rd
shift amount
funct
rs rt immediate / offset
target
rs rt rd
shift amount
funct
rs rt immediate / offset
target
32 bits 32 bits 32 bits 32 bits 32 bits 32 bits Monday, February 11, 13
shift amount
6 bits 5 bits 5 bits 5 bits 5 bits 6 bits 6 bits 5 bits 5 bits 16 bits 6 bits 26 bits
Monday, February 11, 13
Monday, February 11, 13
Monday, February 11, 13
32 bits of data 32 bits of data 32 bits of data 32 bits of data
Monday, February 11, 13
Monday, February 11, 13
Monday, February 11, 13
Speedup
=
(X/Y)
Monday, February 11, 13
Speedup
=
(X/Y)
X = machine B Y = machine A
Monday, February 11, 13
Execution TimeX Execution TimeY
= =
n
Speedup
=
(X/Y)
X = machine B Y = machine A
Monday, February 11, 13
Execution TimeX Execution TimeY
= =
n
Speedup
=
(X/Y)
X = machine B Y = machine A
Speedup
=
(X/Y)
X = machine B Y = machine A
Monday, February 11, 13
Execution TimeX Execution TimeY
= =
n
Speedup
=
(X/Y)
X = machine B Y = machine A
Execution TimeX Execution TimeY
= =
n
Speedup
=
(X/Y)
X = machine B Y = machine A
Monday, February 11, 13
Monday, February 11, 13
Monday, February 11, 13
Monday, February 11, 13
Monday, February 11, 13
Monday, February 11, 13
Monday, February 11, 13
Monday, February 11, 13
Monday, February 11, 13
Monday, February 11, 13
Monday, February 11, 13
Monday, February 11, 13
Monday, February 11, 13
Monday, February 11, 13
Monday, February 11, 13
Monday, February 11, 13
Monday, February 11, 13
Monday, February 11, 13
Decimal
1 2 3 4 5 6 7 Twos Complement Binary 1000 1001 1010 1011 1100 1101 1110 1111 0000 0001 0010 0011 0100 0101 0110 0111
Monday, February 11, 13
Monday, February 11, 13
. . . a0 Operation CarryIn ALU0 Less CarryOut b0 a1 CarryIn ALU1 Less CarryOut b1 Result0 Result1 a2 CarryIn ALU2 Less CarryOut b2 a31 CarryIn ALU31 Less b31 Result2 Result31 . . . . . . . . . Bnegate . . . Ainvert Overflow . . . Set CarryIn . . . . . . Zero
Monday, February 11, 13
. . . a0 Operation CarryIn ALU0 Less CarryOut b0 a1 CarryIn ALU1 Less CarryOut b1 Result0 Result1 a2 CarryIn ALU2 Less CarryOut b2 a31 CarryIn ALU31 Less b31 Result2 Result31 . . . . . . . . . Bnegate . . . Ainvert Overflow . . . Set CarryIn . . . . . . Zero
Monday, February 11, 13
. . . a0 Operation CarryIn ALU0 Less CarryOut b0 a1 CarryIn ALU1 Less CarryOut b1 Result0 Result1 a2 CarryIn ALU2 Less CarryOut b2 a31 CarryIn ALU31 Less b31 Result2 Result31 . . . . . . . . . Bnegate . . . Ainvert Overflow . . . Set CarryIn . . . . . . Zero
Monday, February 11, 13
what signals accomplish: Binvert CIn Oper add? sub? and?
beq? slt?
ALU a ALU operation b CarryOut Zero Result Overflow Monday, February 11, 13
what signals accomplish: Binvert CIn Oper add? sub? and?
beq? slt?
10
ALU a ALU operation b CarryOut Zero Result Overflow Monday, February 11, 13
what signals accomplish: Binvert CIn Oper add? sub? and?
beq? slt?
10 1 1 10
ALU a ALU operation b CarryOut Zero Result Overflow Monday, February 11, 13
what signals accomplish: Binvert CIn Oper add? sub? and?
beq? slt?
10 1 1 10 00
ALU a ALU operation b CarryOut Zero Result Overflow Monday, February 11, 13
what signals accomplish: Binvert CIn Oper add? sub? and?
beq? slt?
10 1 1 10 00 01
ALU a ALU operation b CarryOut Zero Result Overflow Monday, February 11, 13
what signals accomplish: Binvert CIn Oper add? sub? and?
beq? slt?
10 1 1 10 00 01 1 1 10
ALU a ALU operation b CarryOut Zero Result Overflow Monday, February 11, 13
what signals accomplish: Binvert CIn Oper add? sub? and?
beq? slt?
10 1 1 10 00 01 1 1 10
ALU a ALU operation b CarryOut Zero Result Overflow
1 1 11
Monday, February 11, 13
add r1, r2, r3 r2 r3 r1
Monday, February 11, 13
lw r1, 1000(r2) 1000 r2 r1
Monday, February 11, 13
sw r1, 1000(r2) 1000 r2 r1
Monday, February 11, 13
beq r1, r2, 1000 r1 r2 1000
Monday, February 11, 13
Read register 1 Read register 2 Write register Write data Write data Registers ALU Add Zero Read data 1 Read data 2 Sign extend 16 32 Instruction [31–0] ALU result Add ALU result M u x M u x M u x Address Data memory Read data Shift left 2 4 Read address Instruction memory PC 1 1 1 M u x 1 ALU control Instruction [5–0] Instruction [25–21] Instruction [31–26] Instruction [15–11] Instruction [20–16] Instruction [15–0] RegDst Branch MemRead MemtoReg ALUOp MemWrite ALUSrc RegWrite Control
Monday, February 11, 13
Monday, February 11, 13
IR = Memory[PC] PC = PC + 4
Monday, February 11, 13
A = Register[IR[25-21]] B = Register[IR[20-16]] ALUOut = PC + (sign-extend (IR[15-0]) << 2)
Monday, February 11, 13
if (A == B) PC = ALUOut
Monday, February 11, 13
Monday, February 11, 13
Reg[IR[15-11]] = ALUout
Monday, February 11, 13
ALUout = A + sign-extend(IR[15-0])
Monday, February 11, 13
Monday, February 11, 13
Memory[ALUout] = B
Monday, February 11, 13
Reg[IR[20-16]] = memory-data
Monday, February 11, 13
Monday, February 11, 13
Monday, February 11, 13
5
Monday, February 11, 13
5 5
Monday, February 11, 13
5 5 3
Monday, February 11, 13
5 5 3 4
Monday, February 11, 13
5 5 3 4 4
Monday, February 11, 13
5 5 3 4 4
Monday, February 11, 13
5 5 3 4 4
Monday, February 11, 13
5 5 3 4 4
Monday, February 11, 13
5 5 3 4 4
Monday, February 11, 13
5 5 3 4 4
Monday, February 11, 13
5 5 3 4 4
Monday, February 11, 13
5 5 3 4 4
Monday, February 11, 13
5 5 3 4 4
Monday, February 11, 13
Monday, February 11, 13