

Building a computer from scratch using 74xx logic chips
- Size
- 149.2 × 86.4 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 29
- Nets
- 86
- Pads
- 350
- Tracks, vias
- 897, 15
- Pours
- 1
- Routed
- Yes
- KiCad
- KiCad 5 (file 20171130)
- Created
- 11 Apr 2018
- Updated
- 4 May 2020
Overview
Memory is an open-source printed circuit board by DutchMaker, from the DutchMaker/TTL-computer repository on GitHub. It is a 2-layer board of 149.2 × 86.4 mm with 29 parts on 86 nets, routed with 897 tracks and 15 vias.
Its parts include 10 switches, 9 ICs, 4 connectors, 2 resistors and 2 diodes.
README
README.md74xx 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.

Parts
29| Qty | Value | Footprint | References |
|---|---|---|---|
| 8 | SW_DPDT_x2 | 74xx-Computer-Footprints:FlipSwitch | SW1, SW2, SW3, SW4, SW5, SW6, SW7, SW8 |
| 3 | 74x245 | Package_DIP:DIP-20_W7.62mm | U7, U8, U9 |
| 2 | 470 | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal | R1, R2 |
| 2 | Conn_01x08_Male | Connector_PinHeader_2.54mm:PinHeader_1x08_P2.54mm_Vertical | J3, J4 |
| 2 | LED | LED_THT:LED_D5.0mm | D1, D2 |
| 2 | SW_DPDT_x2 | 74xx-Computer-Footprints:Switch | SW9, SW10 |
| 1 | 27C512 | 74xx-Computer-Footprints:ZIF-28_Socket | U6 |
| 1 | 470 | Resistor_THT:R_Array_SIP9 | RN1 |
| 1 | 74x00 | Package_DIP:DIP-14_W7.62mm | U2 |
| 1 | 74x02 | Package_DIP:DIP-14_W7.62mm | U3 |
| 1 | 74x04 | Package_DIP:DIP-14_W7.62mm | U1 |
| 1 | 74x32 | Package_DIP:DIP-14_W7.62mm | U4 |
| 1 | Conn_01x13_Male | Connector_PinHeader_2.54mm:PinHeader_1x13_P2.54mm_Vertical | J1 |
| 1 | Conn_01x16_Male | Connector_PinHeader_2.54mm:PinHeader_1x16_P2.54mm_Vertical | J2 |
| 1 | HDSP-4830_2 | Display:HDSP-4830 | BAR1 |
| 1 | UM61512AK-15 | Package_DIP:DIP-32_W7.62mm | U5 |
Questions
How big is the Memory PCB?
It measures 149.2 × 86.4 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Memory use?
29 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 Memory KiCad files?
From the DutchMaker/TTL-computer repository on GitHub, at the commit this page was made from: the board is Circuits/KiCad/Memory/Memory.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Can I use the Memory 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 layers191.1 × 114.3 mm

- 2 layers286.4 × 484.5 mm

- 2 layers144.8 × 114.3 mm

Memory Access Register
DutchMaker/TTL-computer
Building a computer from scratch using 74xx logic chips
39 parts24 - 2 layers76.2 × 68.6 mm

- 2 layers132.1 × 86.4 mm

- 2 layers76.2 × 55.9 mm

Flags Register
DutchMaker/TTL-computer
Building a computer from scratch using 74xx logic chips
16 parts24 - 2 layers81.3 × 82.6 mm

Program Counter
DutchMaker/TTL-computer
Building a computer from scratch using 74xx logic chips
15 parts24 - 2 layers81.3 × 50.8 mm

Stack Pointer
DutchMaker/TTL-computer
Building a computer from scratch using 74xx logic chips
9 parts24 - 2 layers55.9 × 52.1 mm

- 2 layers53.3 × 52.1 mm

Instruction Register
DutchMaker/TTL-computer
Building a computer from scratch using 74xx logic chips
6 parts24
Similar boards
- 2 layers52.3 × 10.5 mm

StackLink
gusmanb/logicanalyzer
24 channel, 100Msps logic analyzer hardware and software
29 parts5.1kGPL-3.0 - 2 layers56 × 20 mm

HallEffectXY Endstop
VoronDesign/Voron-Hardware
Cool Hardware designed by the Voron Design group
29 parts1.1kGPL-3.0 - 2 layers50 × 23.2 mm

Analog
hoglet67/RGBtoHDMI
Bare-metal Raspberry Pi project that provides pixel-perfect sampling of Retro Computer RGB/YUV video and conversion to HDMI
29 parts1kGPL-3.0 - 2 layers16.8 × 13.6 mm

E Fidget Lite
hackclub/OnBoard
💡 Join 1,000 teenagers and make your first PCB with a $100 grant!
29 parts915 - 2 layers85 × 12.5 mm

TERES PCB3-TOUCH BTN Rev.A
OLIMEX/DIY-LAPTOP
Do It Yourself Open Source Hardware and Software Modular Hacker's Friendly Laptop
29 parts578Apache-2.0 - 2 layers33.7 × 97.8 mm

HAN ESP TSS721
UtilitechAS/amsreader-firmware
ESP8266 and ESP32 compatible firmware to read, interpret and publish data to MQTT from smart electrical meters, both DLMS and DSMR is supported
29 parts470 - 2 layers80 × 55 mm

- 2 layers55 × 58 mm
