Processor built with Transistor-Transistor Logic
posted Oct 30th 2009 11:02am by Mike Szczys
filed under: classic hacks, pcs hacks
[Donn] wanted know exactly what is going on inside of a processor so naturally he built a CPU out of TTL components. He had previously built a couple of versions of a computer based on the Z80 processor. Using the troubleshooting skills he learned and a second-hand textbook, he set to work using 74LS series chips connected using the wire-wrap method we’re familiar with from other cpu projects.
The finished product runs well at 1.8 megahertz, but he also included a 2 hertz clock and a step clock for debugging. At the slower speeds, the register board (seen at the left in the picture above) lights LEDs and can be used to tell what the CPU is currently working on. Programming is accomplished through either a dumb terminal or a PC running a terminal emulator.
His writeup is from about five years ago but that didn’t prevent us from getting that fuzzy feeling in the geek-center of our brain when we read about it. It is well written and thorough so if you’re into this kind of thing there’s plenty to enjoy.
The Projects Home Page...
My Home-Built TTL Computer Processor (CPU)
This is about my homebuilt TTL computer processor. TTL stands for "transistor-transistor logic" and refers to a set of first-generation integrated circuits (I.C.'s) that contain simple logic gates, buffers, a binary adder, flip-flops, registers, decoders, multiplexors etc. These series 7400 I.C.'s are carefully designed so they can be connected together in patterns to make larger logic circuits. I built a computer central processing unit (CPU) of my own design out of these I.C.s.
I am not an engineer or computer scientist. I am a computer hobbyist. My first computer was a Sinclair ZX-80. I learned BASIC, and later Z-80 assembly language. Using the BASIC PEEK and POKE statements I wrote simple assembly language programs on this little machine. Later, I wrote some simple video games on a TRS-80.
Page 2, Design and Construction Simple Right???:O
Design and Construction
The completed computer is shown below. The central three boards (ALU, main board and control) make up what is commonly thought of as a computer processor, or central processing unit (CPU). The processor takes instructions and data from the memory-input/output, processes them, and puts data back into the memory-input/output.
Each board is a separate functional unit. The four outside boards (ALU, display, control and memory) could be tested thoroughly using a simple test board before being connected to the central main board.
Before I built this computer, I had to design it. My priority was simplicity. I did not want a processor that was fast, or complex. I wanted it to work. This processor that I designed and built is an accumulator-memory machine, that is, a single register is used in programming. I wanted an instruction set similar to those of the 8-bit microprocessors I was used to. However, the Z-80 and 6502 CPUs had complex instruction sets, with variable instruction lengths. I knew from experience that a programmer uses only a subset of these, so I designed an instruction set that was similar to this commonly-used subset. It has 16 instructions in all, with eight arithmetic-logical operations, and eight data movement and jump instructions. In retrospect, it is probably too heavy on the arithmetic-logical instructions, but I wanted to design and build a full ALU. Here is the instruction set.Read more...