You are on page 1of 1

Data

Input

Program
Counter

Data
Output

W-Bus

T1
T2
T3
T4
T5
T6

Address
Input

VCC

U24:A
1

VCC

3

CLR

?
?
?
?
?
?

2
Cp
Ep
Lm
CE
Li
Ei
La
Ea
Su
Eu
Lb
Lo

SW5

ADR3
ADR2
ADR1
ADR0

Start

Clear/Start
4
6

?
?
?
?
?
?
?
?
?
?
?
?

D7
D6
D5
D4
D3
D2
D1
D0

U24:B

Clear

CLR

5

VCC

OP0

OP1

OP2

OP3

OP4

OP5

OP6

OP7

W0

W1

W2

W3

W4

W5

W6

W7

PC0

PC1

PC2

PC3

D0

D1

D2

D3

D4

D5

D6

D7

ADR0

ADR1

ADR2

U24:C
9

VCC

8
10

D7
D6
D5
D4
D3
D2
D1
D0

ADR3
ADR2
ADR1
ADR0

ADR3

7400

SW6

5
6
7
8

9
10
11
12
13
14
15
16

VCC

SW1

Low

Single Step

VCC

SW3
OPCode / Data
Switches

12
11

SW4

WEram

ENmar

Write
Memory

13

VCC

Program/Run
SW2: Open=Run Closed=Program

1
2
13

12

U26:A
1

VCC

U26:D

3
2

To program:
1) Switch SW2 marked Run/Program should be DOWN in the program position.
2) Switch SW7 marked Manual/Auto should be UP in the manual position.
3) Use the 4 address and 8 data input switches to enter each line of the program.
Observe the Address and Data Input 7-segment displays to see what is being entered.
4) Press the Write Memory button once to write data to RAM.

SW7

U27:A

U27:B

13
11

Manual

1

2

3

4

U27:C

U26:B

Auto

U25:B

4
6

10
14
18
20

6

CLK

6

Note: The 555 timer circuit has been substituted with
a virtual clock source to speed up the simulation.

U25:B(C)
INIT=LOW
START=0
COUNT=-1
CLOCK=2
PC3
PC2
PC1
PC0

5

3
4
5

HLT

5

VCC

Here is a sample test program:
Address Data
0
09
1
1A
2
1b
3
2C
4
E0
5
F0

CLK

12

Manual/Auto

Once data is written, the run the program:
1) Switch the SW2 Run/Program switch UP to the run position.
2) Switch the SW7 Manual/Auto switch DOWN to start the clock.

W7 W6 W5 W4 W3 W2 W1 W0

Cp

K

5

74LS107

Q

8

J

12
Q

3

74LS107

Q

Q

5

Q

9

CLK
6

4

K

8

J

12

CLK
2

11

K

1

J

9

CLK
6

4

13

Q

R

CLK
2

1

Q

13

The program is 10h + 14h + 18h - 20h = 1Ch so the output display should show 1C
and the HLT signal should be active when the program is finished running.
Hopefully it works for you too.

74LS107
J

10

Q

U2:B

CLK

11

K

10

74LS107
3

U2:A

R

U1:B

R

U1:A

R

9
A
b
C

U25:A
HLT
7400

8
7
6
5
4
3
2
1

OFF

4
3
2
1

ON

ON

OFF

Address
Switches

U24:D

High

SW2

U3:D

U10

CLK
OE1
OE2
E1
E2
MR

D0
D1
D2
D3

CLK
OE1
OE2
E1
E2
MR

D0
D1
D2
D3

U11

74LS173
Accumulator

3
4
5
6

3
4
5
6

Q0
Q1
Q2
Q3

74LS173
Accumulator

Q0
Q1
Q2
Q3

Ep

14
13
12
11

7
1
2
9
10
15

14
13
12
11

11

74LS126

CLK
La

7
1
2
9
10
15

CLK
La

13

8

10

6

4

3

1

U3:C

12

U3:B

9

5

2

CLR

U3:A

CLK
Ea

11
12
13
14

3

2

3

5

6

2

D3
D2
D1
D0

U4

Q3
Q2
Q1
Q0

4

74LS173
Memory Address Register

4

15
10
9
2
1
7
MR
E2
E1
OE2
OE1
CLK

1

Ea

1

Lm

5

10

10

6
5
4
3

6

ADR0
ADR1
ADR2
ADR3

8

9

9

13

13

8

ENmar
11

12

12

13
14
10
11
6
5
3
2

15
1

11

4B
4A
3B
3A
2B
2A
1B
1A

E
A/B

2Y

1Y
4

7

3Y
9

4Y

74LS126
Accumulator
Output

74LS126
Accumulator
Output

74LS157
2-1 Multiplexer

12

U12:D

U13:D

U5

U49

VCC

6
4
5

E1
E2
E3

13

12

10

9

5

4

1

2

Su

13

12

9

10

Su
5

I0
I1
I2
I3
I4
I5
I6
I7

4

15
14
13
12
11
10
9
7

Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7

2

A
B
C

1

1
2
3

U15:D

U14:D

74LS86

74LS86

A
B
C

6
4
5

E1
E2
E3

11

8

6

3

11

8

7

6
2
15
11

C0

A0
A1
A2
A3

B0
B1
B2
B3

5
3
14
12

7

C4
9

S0
S1
S2
S3
4
1
13
10

12

13
11

11

74LS126

10
8

4
6

1
3

13

9

5

2

12

9

10
8

U18:D

74LS126

Eu

15
14
13
12
11
10
9
7

Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7

C0
4

3

U52

CE

5
1

74LS138
1
2
3

74LS283
Full Adder
(MSB)

U19:D

6

E1
E2
E3

U16

Carry

O0
O1
O2
O3
O4
O5
O6
O7

2

6
4
5

VCC

15
14
13
12
11
10
9
7

Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7

U17

C4

S0
S1
S2
S3
4
1
13
10

U51
A
B
C

Carry

74LS283
Full Adder
(LSB)

74HCT238
16-byte RAM
Latch Enable Decoder

1
2
3

6
2
15
11

5
3
14
12

Su

9

E1
E2
E3

I8
I9
I10
I11
I12
I13
I14
I15

B0
B1
B2
B3

15
14
13
12
11
10
9
7

Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7

A0
A1
A2
A3

A
B
C

6
4
5

WEram

3

U50
1
2
3

6

74HCT238

O8
O9
O10
O11
O12
O13
O14
O15

74LS138
16-byte RAM
Output Enable Decoder

CLK
Lb

CLK
Lb

O11
I11

1
11
3
4
7
8
13
14
17
18

O12
I12

1
11
3
4
7
8
13
14
17
18

O13
I13

1
11
3
4
7
8
13
14
17
18

O14
I14

1
11
3
4
7
8
13
14
17
18

O15
I15

1
11

7
1
2
9
10
15
CLK
OE1
OE2
E1
E2
MR

D0
D1
D2
D3
Q0
Q1
Q2
Q3
OP4
OP5
OP6
OP7

OP0
OP1
OP2
OP3
Q

CLK
6

4

K

Q

K

8

3

Q

U38:B
74LS107
1

J

9
Q

Q

9

CLK
6

4

K

8

J

12

CLK
2

11

5

Q

11

K

R

K

J

R

Q

2

Q

12

CLK

11

5

R

K

1

J

R

Q

Q

9

CLK
6

4

3

10

13

10

13

5
10

6

2

R

U31:C

8

J

CLR

U31:D
12

13
T6

OE
LE

T4

2
5
6
9
12
15
16
19

T3
T2
T1

U35:E

1
2

U32:A
1

2

4
5

LDA
ADD
SUB

U35:B

U33:A

OE
LE
D0
D1
D2
D3
D4
D5
D6
D7

2
5
6
9
12
15
16
19

OE
LE
D0
D1
D2
D3
D4
D5
D6
D7

Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7

2
5
6
9
12
15
16
19

OE
LE
D0
D1
D2
D3
D4
D5
D6
D7

Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7

2
5
6
9
12
15
16
19

OE
LE
D0
D1
D2
D3
D4
D5
D6
D7
OE
LE
74LS373

Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7

2
5
6
9
12
15
16
19

10

9

5

4

2

1

13

12

10

9

5

4

2

1

13

12

10

9

5

4

2

1

13

12

8

6

3

11

8

6

3

11

8

6

3

11

U45:B

5

4

2

1

3
4
5

1
2
13

U45:A

U46:A

U46:B

U47:B

U47:C

U47:F

Li

Ei

La

Ea

U48:A
2

12

CE

6

U48:B
U47:D

Lm

3

3
1

U47:E

Su

4

U47:A

13

12

HLT

6

U34:A

Cp Ep
Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7

U44:B

11

2
5
6
9
12
15
16
19

8

U44:A

6

Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7

U43:C

U35:F

10

D0
D1
D2
D3
D4
D5
D6
D7

8

9

6

8

U33:B

12
13

4
5

U42:D

6
3

5

4
5

1
2

U41:D

U35:C
6

9

OE
LE

U40:D

8

Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7

10

U39:D
1
2

OE
LE
D0
D1
D2
D3
D4
D5
D6
D7

9

9
10

4
5

2
5
6
9
12
15
16
19

3

4

12
13

2

2
5
6
9
12
15
16
19

OUT

1

U32:B
8

Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7

Control Matrix

U35:A
6

9
10

OE
LE
D0
D1
D2
D3
D4
D5
D6
D7

Instruction Decoder

12
13

2
5
6
9
12
15
16
19

9
10

Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7

12

D0
D1
D2
D3
D4
D5
D6
D7

U35:D
12

OE
LE

13

Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7

13

D0
D1
D2
D3
D4
D5
D6
D7

T5

5

3
4
7
8
13
14
17
18

2
5
6
9
12
15
16
19

Q

12

CLK
Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7

5

6

1
11

1

J

8

O10
I10

Q

3

3
4
7
8
13
14
17
18

74LS107

4

1
11

U38:A

74LS107

11

O9
I9

D0
D1
D2
D3
D4
D5
D6
D7

U37:B

74LS107

10

3
4
7
8
13
14
17
18

3

U37:A

74LS107

9

1
11

3

U36:B

74LS107

8

O8
I8

4
OE
LE

U36:A

5

3
4
7
8
13
14
17
18

U31:B

4

1
11

CLK

6

O7
I7

1

4
5

3
4
7
8
13
14
17
18

Ring Counter

U31:A
2

6

1
11

2
5
6
9
12
15
16
19

1

O6
I6

Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7

2

3
4
7
8
13
14
17
18

D0
D1
D2
D3
D4
D5
D6
D7

2

1
11

74LS173
Output Register

OE
LE

1
2

O5
I5

2
5
6
9
12
15
16
19

1

3
4
7
8
13
14
17
18

Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7

3

1
11

D0
D1
D2
D3
D4
D5
D6
D7

R

O4
I4

U22

3
4
5
6

Q0
Q1
Q2
Q3

74LS173
Output Register

OE
LE

13

3
4
7
8
13
14
17
18

CLK
OE1
OE2
E1
E2
MR

D0
D1
D2
D3
Q0
Q1
Q2
Q3
3
4
5
6
14
13
12
11

7
1
2
9
10
15

U23

CLK
OE1
OE2
E1
E2
MR

74LS173
Instruction
Register
(Address)

11

1
11

7
1
2
9
10
15

14
13
12
11

7
1
2
9
10
15
CLK
OE1
OE2
E1
E2
MR

D0
D1
D2
D3
Q0
Q1
Q2
Q3
3
4
5
6
11
12
13
14

U9
14
13
12
11

2
5
6
9
12
15
16
19

74LS173
Instruction
Register
(OPCode)

CLK
Lo
CLR

3
4
5
6

Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7

U8

CLK
Lo
CLR

10

O3
I3

74LS173
B Register
(MSB)

CLK
Ei
Li

D0
D1
D2
D3

OE
LE
D0
D1
D2
D3
D4
D5
D6
D7

CLK
Li
CLR

D3
D2
D1
D0

2
5
6
9
12
15
16
19

15
10
9
2
1
7

Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7

Q3
Q2
Q1
Q0

3
4
7
8
13
14
17
18

D0
D1
D2
D3
D4
D5
D6
D7

6
5
4
3

1
11

U20

OE
LE

MR
E2
E1
OE2
OE1
CLK

O2
I2

74LS173
B Register
(LSB)

2
5
6
9
12
15
16
19

11
12
13
14

3
4
7
8
13
14
17
18

Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7

D3
D2
D1
D0

1
11

D0
D1
D2
D3
D4
D5
D6
D7

Q3
Q2
Q1
Q0

O1
I1

U21

OE
LE

6
5
4
3

3
4
7
8
13
14
17
18

2
5
6
9
12
15
16
19

15
10
9
2
1
7

1
11

Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7

MR
E2
E1
OE2
OE1
CLK

O0
I0

D0
D1
D2
D3
D4
D5
D6
D7

14
13
12
11

U53
3
4
7
8
13
14
17
18

D0
D1
D2
D3
D4
D5
D6
D7

Eu

Lb

Lo