Skip to the content
PCBKitNew board
2 layers191.1 × 114.3 mmController, the printed circuit board in 3D

Building a computer from scratch using 74xx logic chips

Size
191.1 × 114.3 mm
Copper layers
2
Thickness
1.6 mm
Parts
60
Nets
235
Pads
800
Tracks, vias
3,539, 95
Pours
1
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
11 Apr 2018
Updated
4 May 2020

Overview

Controller is an open-source printed circuit board by DutchMaker, from the DutchMaker/TTL-computer repository on GitHub. It is a 2-layer board of 191.1 × 114.3 mm with 60 parts on 235 nets, routed with 3,539 tracks and 95 vias.

Its parts include 26 ICs, 6 resistors, 3 connectors and 1 crystal.

README

README.md

74xx Computer

My attempt at building a computer from scratch with 74xxx logic chips.

Project Shelved!

I have abandoned this project, but only to reboot it with a different approach.
Make sure to check The DM-02 Computer which is my second attempt at a computer from scratch!

Status as of September 4th, 2019:

General architecture has been worked out as high level schematic.

Worked on instruction set, micro code, module documentation & general notes from time to time (see: Documentation). Only thing missing right now is some documentation on each of the modules.

The entire computer has been built in Logisim to verify that the way I had everything in mind is actually going to work.

I've built a microcode compiler for the Controller's ROM image. This takes a source file which defines all the microcode and compiles it into a binary image that is loaded into the microcode ROM.

The 74xx Computer's instruction set has been implemented, its assembly language is fully documented and I've built an assembler to convert assembly programs to machine code.

Circuit diagrams and PCBs have all been designed in KiCad and have been or are currently being produced:

  • Clock (built and tested)
  • Registers (built and tested)
  • ALU (built and tested)
  • Program Counter (built and tested)
  • Stack Pointer (built and tested)
  • Flags register (built and tested)
  • Memory (built and tested)
  • Memory Access Register (built and tested)
  • Controller (redesigned circuit to account for reset ciruitry - waiting for PCB production)
  • Main Board ( built and tested)

TODO's / Plans:

  • Build the computer in real life (IN PROGRESS)
    • First revision is based on separate PCBs that are all connected together by one large main PCB.
    • If all works out, there may be a second revision will be one large PCB that contains all modules as one circuit.
  • Write additional/updated documentation on all modules.

Assembled computer

Parts

60
QtyValueFootprintReferences
910KResistor_THT:R_Array_SIP9RN9, RN10, RN11, RN12, RN13, RN14, RN15, RN16, RN17
8470Resistor_THT:R_Array_SIP9RN1, RN2, RN3, RN4, RN5, RN6, RN7, RN8
7HDSP-4830_274xx-Computer-Footprints:Bar-Graph-10BAR1, BAR2, BAR3, BAR4, BAR5, BAR6, BAR7
674x04Package_DIP:DIP-14_W7.62mmU3, U18, U19, U21, U22, U25
674x273Package_DIP:DIP-20_W7.62mmU12, U13, U14, U15, U16, U17
474x161Package_DIP:DIP-16_W7.62mmU6, U7, U8, U27
4RResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR1, R2, R4, R5
374x02Package_DIP:DIP-14_W7.62mmU5, U23, U24
274x08Package_DIP:DIP-14_W7.62mmU1, U2
2Conn_01x24_MaleConnector_PinHeader_2.54mm:PinHeader_1x24_P2.54mm_VerticalJ2, J3
110KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR6
1470Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR3
174x138Package_DIP:DIP-16_W7.62mmU11
174x27Package_DIP:DIP-14_W7.62mmU4
174x32Package_DIP:DIP-14_W7.62mmU20
174x74Package_DIP:DIP-14_W7.62mmU9
18 MHz (max. 10 MHz)74xx-Computer-Footprints:Oscillator_DIP-8_v2Y1
1Conn_01x15_MaleConnector_PinHeader_2.54mm:PinHeader_1x15_P2.54mm_VerticalJ1
1W29C04074xx-Computer-Footprints:ZIF-32_SocketU10

Questions

How big is the Controller PCB?

It measures 191.1 × 114.3 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Controller use?

60 parts. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Controller KiCad files?

From the DutchMaker/TTL-computer repository on GitHub, at the commit this page was made from: the board is Circuits/KiCad/Controller/Controller.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Controller design in my own project?

Its repository states no licence, so its author keeps all rights: ask DutchMaker before reusing the design.

More from DutchMaker/TTL-computer

10
  • 2 layers286.4 × 484.5 mmCircuits, the printed circuit board in 3D

    Circuits

    DutchMaker/TTL-computer

    Building a computer from scratch using 74xx logic chips

    58 parts24
  • 2 layers144.8 × 114.3 mmMemory Access Register, the printed circuit board in 3D

    Memory Access Register

    DutchMaker/TTL-computer

    Building a computer from scratch using 74xx logic chips

    39 parts24
  • 2 layers76.2 × 68.6 mmClock, the printed circuit board in 3D

    Clock

    DutchMaker/TTL-computer

    Building a computer from scratch using 74xx logic chips

    38 parts24
  • 2 layers132.1 × 86.4 mmALU, the printed circuit board in 3D

    ALU

    DutchMaker/TTL-computer

    Building a computer from scratch using 74xx logic chips

    30 parts24
  • 2 layers149.2 × 86.4 mmMemory, the printed circuit board in 3D

    Memory

    DutchMaker/TTL-computer

    Building a computer from scratch using 74xx logic chips

    29 parts24
  • 2 layers76.2 × 55.9 mmFlags Register, the printed circuit board in 3D

    Flags Register

    DutchMaker/TTL-computer

    Building a computer from scratch using 74xx logic chips

    16 parts24
  • 2 layers81.3 × 82.6 mmProgram Counter, the printed circuit board in 3D

    Program Counter

    DutchMaker/TTL-computer

    Building a computer from scratch using 74xx logic chips

    15 parts24
  • 2 layers81.3 × 50.8 mmStack Pointer, the printed circuit board in 3D

    Stack Pointer

    DutchMaker/TTL-computer

    Building a computer from scratch using 74xx logic chips

    9 parts24
  • 2 layers55.9 × 52.1 mmRegister, the printed circuit board in 3D

    Register

    DutchMaker/TTL-computer

    Building a computer from scratch using 74xx logic chips

    7 parts24
  • 2 layers53.3 × 52.1 mmInstruction Register, the printed circuit board in 3D

    Instruction Register

    DutchMaker/TTL-computer

    Building a computer from scratch using 74xx logic chips

    6 parts24

Similar boards

  • 2 layers35 × 50 mmGoblin, the printed circuit board in 3D

    Goblin

    kelu124/echomods

    Open source ultrasound processing modules and building blocks

    60 parts463
  • 2 layers32.9 × 119.1 mmConnector, the printed circuit board in 3D

    Connector

    thpoll83/PolyKybd

    PolyKybd

    60 parts411CERN-OHL-W-2.0
  • 2 layers35.9 × 62.7 mmRp2040-memcard, the printed circuit board in 3D

    Rp2040-memcard

    sd2psx/pcb

    The PCB must be produced in 0.8mm thickness. Production files are provided under the "Releases" tab. These do not include the through-hole OLED module.

    60 parts241
  • 2 layers58 × 110 mmBrain ui split pulse, the printed circuit board in 3D

    Brain ui split pulse

    shmoergh/moduleur

    Fully analog DIY-friendly modular synth

    60 parts222
  • 2 layers52 × 90 mmEmu brd, the printed circuit board in 3D

    Emu brd

    rscott2049/DECstation2040

    A RP2040 based DECstation emulator

    60 parts212BSD-3-Clause
  • 2 layers42.5 × 80 mmSimplemixsmall, the printed circuit board in 3D

    Simplemixsmall

    nickajeglin/Eurorack-pcbs

    A collection of easy to solder DIY eurorack PCB's

    60 parts208
  • 2 layers57.4 × 12 mmZicada, the printed circuit board in 3D

    Zicada

    CoretechR/Zicada

    DIY Zigbee Multisensor

    60 parts205GPL-3.0
  • 2 layers87.9 × 123.9 mmBitdoglab, the printed circuit board in 3D

    Bitdoglab

    BitDogLab/BitDogLab

    Open-source educational hardware for embedded systems, programming, electronics, and physical computing.

    60 parts203