6 / 13 page

MA2909/11
6
T0
0
H
X
X
J + 1
-
-
-
-
J + 1
I(J + 1)
I(J)
T1
0
H
X
X
J + 2
-
-
-
-
J + 2
JSR A
I(J + 1)
T2
3
L
H
A
J + 3
-
-
-
-
A
I(A)
JSR A
T3
0
H
X
X
A + 1
J + 3
-
-
-
A + 1
I(A + 1)
I(A)
T4
0
H
X
X
A + 2
J + 3
-
-
-
A + 2
JSR B
I(A + 1)
T5
2
L
L
X
A + 3
J + 3
-
-
-
B
RTS
JRS B
T6
0
H
X
X
B + 1
A + 3
J + 3
-
-
A+ 3
I(A + 3)
RTS
T7
0
H
X
X
A + 4
J + 3
-
-
-
A + 4
RTS
I(A + 3)
T8
2
L
L
X
A + 5
J + 3
-
-
-
J + 3
I(J + 3)
RTS
S1, S0
FE
PUP
D
µPC
STK0
STK1
STK2
STK3
Y
(Y)
µWR
Address
J - 1
J
J + 1
J + 2
J + 3
-
-
-
-
A
A + 1
A + 2
A + 3
A + 4
-
-
-
-
B
-
CONTROL MEMORY
T9
0
H
X
X
J + 4
-
-
-
-
J + 4
I(J + 4)
I(J + 3)
Table 4: Two Nested Subroutines
Microprogram
Sequencer
Instruction
-
-
-
JSR A
-
-
-
-
-
-
-
JSR B
-
RTS
-
-
-
-
RTS
-
Execute
Cycle
T0
T1
T2
T9
T3
T4
T5
T7
T8
T6
Execute Cycle
2909 inputs
(from µWR)
Internal
Registers
2909 Output
ROM Output
Contents of µWR
(instruction
being executed)