the toy datapath: jump and link€¦ · the toy datapath: jump and link before execute: pc = 21 ir...
TRANSCRIPT
20
> 0
= 0
1
2
PC
CondEval
3
ALU
IR
t
s
d
op
Registers
W Data
W Addr
A Addr
B Addr
A Data
B Data
W+
Memory
W Data
R Data
Addr
W
The TOY Datapath: Jump and Link
Before fetch:pc = 20mem[20] = FF30
> 0
= 0
1
2
CondEval
5
ALU
IR
t
s
d
op
+
Memory
W Data
R Data
Addr
W
Registers
W Data
W Addr
A Addr
B Addr
A Data
B Data
W
PC
????
> 0
= 0
1
2
PC
CondEval
3
ALU
IR
t
s
d
op
Registers
W Data
W Addr
A Addr
B Addr
A Data
B Data
W+
Memory
W Data
R Data
Addr
W
The TOY Datapath: Jump and Link
Before fetch:pc = 20mem[20] = FF30
> 0
= 0
1
2
CondEval
521
FF30
21
ALU
IR
t
s
d
op20 20
+
Memory
W Data
R Data
Addr
W
21
Registers
W Data
W Addr
A Addr
B Addr
A Data
B Data
W
PC
20 ????
After fetch:pc = 21IR = FF30: R[F] 21; pc 30
FF3021
F
F
3
0
> 0
= 0
1
2
PC
CondEval
3
ALU
IR
t
s
d
op
Registers
W Data
W Addr
A Addr
B Addr
A Data
B Data
W+
Memory
W Data
R Data
Addr
W
The TOY Datapath: Jump and Link
Before execute:pc = 21IR = FF30: R[F] 21; pc 30
> 0
= 0
1
2
PC
CondEval
5
ALU
IR
t
s
d
op
+
Memory
W Data
R Data
Addr
W
21F
F
30
3
0
Registers
W Addr
A Addr
B Addr
A Data
B Data
W
W DataFF3021
> 0
= 0
1
2
PC
CondEval
3
ALU
IR
t
s
d
op
Registers
W Data
W Addr
A Addr
B Addr
A Data
B Data
W+
Memory
W Data
R Data
Addr
W
The TOY Datapath: Jump and Link
> 0
= 0
1
2
PC
CondEval
5
21
ALU
IR
t
s
d
op
+
Memory
W Data
R Data
Addr
W
21F
F
30
0030
30
3
0
Registers
W Addr
A Addr
B Addr
A Data
B Data
W
W Data
After execute:pc = 30R[F] = 21
FF302130
Before execute:pc = 21IR = FF30: R[F] 21; pc 30
21