Processor Built With Transistor-Transistor Logic

cpu-built-from-ttl

[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.

[Thanks Raleigh]

26 thoughts on “Processor Built With Transistor-Transistor Logic

  1. omg not a hack!!! less software news!!! whar the arduino!!!

    kidding, kidding :p

    I kinda want to do something like one of these, but not if it means doing that much wirewrap :\

  2. Two thumbs up.
    I love projects like this.Kinda reminds me of some led array board projects I’ve done by hand along with the TTL control logic I wired with point to point boards.the circuit layout also reminds me of some of the discrete Logic boards in the DEC processor cards i have seen in some older mainframes.

    Good Job!!! keep it up.

  3. “Well, that is a neat project. It totally reminds of this one time I did X because I am so awesome that I could Y. Next time however, I would recommend Z’ing it like I plan to do to have a truly noteworthy hack.”

  4. I work in a steel plant which uses a TTL based computer system to perform metallurgical calculations, handles 32 interactive Terminals, 20 non-interactive terminals, 15 printers, 10 serial connections to plc and other systems and several digital i/o.

    And that with 2 Megabytes of memory and 8MHz clock speed.

    Awsome machine entirely built out of TTL circuits, the most complex one being an 74181 4-bit ALU. (ok maybe the UART chips used are more complex, but they’re only a peripheral :))

    The machine is in use since 1979 and is still working like a charm.

    I’d love to implement this thing into an FPGA…

  5. @xrazorwirex:

    College-level Digital Circuits is awesome. :)

    I’m a lab assistant for that class(among others) and I have to say it’s one of my favorites. The things you can do with basic logic chips never ceases to fascinate me.

    This makes me want to do something similar… I’m going to dig out my Digital textbook and see what I can come up with. :P

  6. If you have never wire-wrapped a logic system with only old-school logic chips then you just would not understand. These days all the jaded kids say “FPGAs are cheap and easy” and you are right, I agree life is good :-) However, wire wrap was a beautiful thing, there is a reason NASA used in on the space shuttle. Kudos sir, an exquisitely ancient hack to remind of us an era bygone.

  7. http://www.cca.org/tech/rcs/pdp12.html

    I owned a few of these in the past, that’s where you can really get some appreciation for wire-wrapping and detailed logic. And core memory!

    Among other features were the front panel with a separate light for EVERYTHING (not like the PDP-8/e which used a single row of indicators and a rotary selector so you could only see one “batch” at a time) and fully variable speed from one instruction per minute or whatever up to full, and with LINC mode it could boot from a magnetic tape with a single command from the front panel.

    The CRT tube (worked like an oscilliscope, all text characters had to be “Drawn”) could be used as a “terminal display” with only the keyboard of the usual printing terminal (teletype) used for input, saves a lot of paper that way!

    Being a “lab” machine it had A/D and D/A connections plus binding posts to six SPDT relays
    which also each had their own indicator lights on the panel!

    Great old systems, wish I still had one just to show the fancy-pants kids…

  8. I’d say the Intel 4004 provides the best example for that. Most people don’t even know the 4004 ever existed, but most people these days probably don’t know about the 8008 or 8080 either, maybe not even the Z80 at this point. 4-bit architecture gives the flexibility to deal with 8-bit bytes somewhat easily and to use some bits to indicate that an instruction is longer than just one “word” or byte without using up the whole thing.

    http://en.wikipedia.org/wiki/Intel_4004

    Interesting reading!

  9. Actually I learned on the 12-bit DEC PDP-8/L and I don’t think it had 56 separate instructions. But it didn’t have as many registers as the 4004 either.

    Let’s see…

    0, 1, 2, 3, 4, 5, and 6 were both basically instruction ‘groups’ with either a memory address or device code. Only group 7 was separate operations, and there weren’t very many of them.

    Seems to me that having 56 instruction like the 4004 would have been a step UP… Then again the PDP-8 existed since the early 1960s, or even earlier if you include the predecessor PDP-5.

  10. MCscrewdriver

    Take a look at Prof. Douglas Jones’ Ultimate RISC (http://www.cs.uiowa.edu/~jones/arch/risc/). This computer has only one instruction – MOVE. Even with that limitation, this is actually a practical computer and can do pretty much whatever any other computer can do.

    In his paper, Dr. Jones describes several commercial computers which came close to his Single Instruction Computer.

    Search Google for SISC, Single Instruction Set computer or OISC for more about computers which had only one instruction.

    Art

    >kedavis, you are right :) I was just wondering >what is the absolute minimum number of bits, and >instructions for a system?
    >
    >Posted at 10:26 am on Nov 2nd, 2009 by >MCscrewdriver

Leave a Reply to xrazorwirexCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.