APOLLO181 has been completely designed and built
- in Italy, 2012 - by Gianluca G. (author of the homemade Z80/AM95 microcomputer) using early 1970s TTL technology.
He built the machine using painstakingly accurate soldering with a miniature
iron, sockets for over 60 integrated circuits,
and a single square foot perfboard. Designed and tested with the aid of a hardware simulator, APOLLO181 runs at
3 MHz.
The project
is based on the famous 74181 Integrated Circuit that is a TTL Arithmetic and Logic Unit frequently used in the 1970s during
the third generation of computers. This chip is the hub of datapath activity with its output the primary feedback path to
the registers: as early minicomputers, APOLLO181 uses the content of a memory location as one operand of the 74181 and an
accumulator as the second operand. The result is stored back in the accumulator.
APOLLO181
uses 8-bit instruction word and 8-bit address bus which can access 256 Byte of user program memory. The reason we classify
it a 4-bit processor is that the internal registers and the arithmetic logic unit perform computations on 4-bit (or nibble)
intermediate results: advantages of a shorter word are simpler circuits and higher speed. Multi-nibble instructions and operations,
however, permit powerful 8-, 16-, 24-, and even 32-bit computations (at reduced speed).
The
instruction set consists of sixteen basic commands which perform input and output
interfacing, conditional jumps and operations like addition, subtraction, increment, decrement, shift operand, magnitude comparison,
Exclusive-OR, AND, NAND, OR, NOR on 4-bit data words.
The
move time for register-to-register transfers is 2,7 microseconds, which requires two basic instructions and eight clock cycles.
Just as a performance indicator, APOLLO181 processor is able to perform a 12-bit integer multiplication (giving a 24-bit long
result) in less than 1,2 milliseconds.
APOLLO181
is a multi-chip board and its peculiarity is that each TTL component here employed has
been described in the Bugbook® I & II (LOGIC & MEMORY EXPERIMENTS USING TTL INTEGRATED CIRCUITS, written by Dr. Peter
R. Rony © 1974, 1st edition), as a Gianluca's personal tribute to these books. By happy coincidence we are also approaching
the 40 years Bugbook® publication anniversary.
This
project obviously aims to be more educational and recreational than being a practical useful processor: the major limitations,
compared with normal CPUs, are the maximum program length of only 256 instructions, the lack of subroutine calls and the absence
of memory manipulation instructions. The RAM contains only the user program but we can use up to sixteen internal registers
to store 4-bit temporary results. The processor is anyway capable of driving 16 independent input and latched output 4-bit
ports, so the theoretical areas of application of APOLLO181 could be the same as microcontrollers: small domestic appliances,
white and brown goods, security systems, toys, office equipment and industrial control applications.