FSM ROM Table for Opcodes 0x01-0x07
FSM ROM Table for Opcodes 0x01-0x07
FSM Output ROM Table: Fetch, Decode, and Execution States for opcodes 0x01 (ADD) through 0x07 (NOT) (additional tables for new instructions given below)
30
29
26
25
23
21
19
16
14
12
10
31
28
27
24
22
20
18
17
15
13
11
0
Hex encoding State
Encoding Hex
Unused (0)
MDRput
MDRget
MDROE
MAROE
IBWrite
MDRCE
MARCE
RegSEL
IBRead
RegLD
ANOP
AADD
PCOE
C1OE
T1OE
T2OE
T1CE
T2CE
IRCE
AOP
Q7+
Q6+
Q5+
Q4+
Q3+
Q2+
Q1+
Q0+
SXR
SYR
DR
F0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 1 2402 3801
F1 0 0 0 1 1 0 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 0 1B10 0602
F2 0 1 0 0 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 40C2 0003
Decode 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0 0 2002 2107
E0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 1 1 0 0 0 0 0 0 0 0 1 0 1 0002 B805
E1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 1 0 1 1 0 0 0 0 0 0 1 1 0 0004 7606
E2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0003 2100
Dead 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0000 0007
FSM Decode ROM Table: Main Memory Table
Address Contents
Instruction
(hex) (hex)
NOP 00 08
Address Encoding
Instruction
ADD 01 04 (hex) (hex)
MOV
SUB 02 04 0
R2 [ R15 ] 0x0320F000
03 05 NOT
MOV 1
R11 NOT [ R2 ] 0x07Bx2000
AND 04 04 MOV
2
R10 [ R15 ] 0x03A0F000
OR 05 04 SUB
3
R15 [ R10 ] – [ R11 ] 0x02FAB000
XOR 06 04
4 FFFF FFFF Illegal instruction
NOT 07 05
5 NOP 0x0000000
NEG 17 0A
NEG
6
R11 – [ R11 ] 0x17B00000
FSM Output ROM Table: NOP Instruction Execution States
30
29
26
25
23
21
19
16
14
12
10
31
28
27
24
22
20
18
17
15
13
11
0
Hex encoding State
Encoding Hex
Unused (0)
MDRput
MDRget
MDROE
MAROE
IBWrite
MDRCE
MARCE
RegSEL
IBRead
RegLD
ANOP
AADD
PCOE
C1OE
T1OE
T2OE
T1CE
T2CE
IRCE
AOP
Q7+
Q6+
Q5+
Q4+
Q3+
Q2+
Q1+
Q0+
SXR
SYR
DR
ENOP1
[8]
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0002 0009
ENOP2
[9]
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0002 0000
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
FSM Output ROM Table: NEG Instruction Execution States
30
29
26
25
23
21
19
16
14
12
10
31
28
27
24
22
20
18
17
15
13
11
0
Hex encoding State
Encoding Hex
Unused (0)
MDRput
MDRget
MDROE
MAROE
IBWrite
MDRCE
MARCE
RegSEL
IBRead
RegLD
ANOP
AADD
PCOE
C1OE
T1OE
T2OE
T1CE
T2CE
IRCE
AOP
Q7+
Q6+
Q5+
Q4+
Q3+
Q2+
Q1+
Q0+
SXR
SYR
DR
E5 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 1 1 0 0 1 0 0 0 0 0 1 0 1 1 0005 320B
E6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 0 0 0 0 1 1 0 0 0003 290C
E7 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 1 0 1 1800 060D
E8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0003 2100