

Building a computer from scratch using 74xx logic chips
- Size
- 132.1 × 86.4 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 30
- Nets
- 118
- Pads
- 345
- Tracks, vias
- 1,339, 40
- Pours
- 1
- Routed
- Yes
- KiCad
- KiCad 5 (file 20171130)
- Created
- 11 Apr 2018
- Updated
- 4 May 2020
Overview
ALU is an open-source printed circuit board by DutchMaker, from the DutchMaker/TTL-computer repository on GitHub. It is a 2-layer board of 132.1 × 86.4 mm with 30 parts on 118 nets, routed with 1,339 tracks and 40 vias.
Its parts include 12 ICs, 5 resistors, 5 diodes and 2 connectors.
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
30| Qty | Value | Footprint | References |
|---|---|---|---|
| 5 | 470 | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal | R1, R2, R3, R4, R5 |
| 3 | 470 | Resistor_THT:R_Array_SIP9 | RN1, RN2, RN3 |
| 3 | HDSP-4830_2 | Display:HDSP-4830 | BAR1, BAR2, BAR3 |
| 2 | 74x08 | Package_DIP:DIP-14_W7.62mm | U7, U10 |
| 2 | 74x181 | Package_DIP:DIP-24_W15.24mm | U4, U5 |
| 2 | 74x245 | Package_DIP:DIP-20_W7.62mm | U6, U12 |
| 2 | 74x27 | Package_DIP:DIP-14_W7.62mm | U9, U11 |
| 2 | 74x377 | Package_DIP:DIP-20_W7.62mm | U1, U2 |
| 2 | Conn_01x13_Male | Connector_PinHeader_2.54mm:PinHeader_1x13_P2.54mm_Vertical | J1, J2 |
| 1 | 74x04 | Package_DIP:DIP-14_W7.62mm | U3 |
| 1 | 74x32 | Package_DIP:DIP-14_W7.62mm | U8 |
| 1 | Fc | LED_THT:LED_D3.0mm | D4 |
| 1 | Feq | LED_THT:LED_D3.0mm | D2 |
| 1 | Fgt | LED_THT:LED_D3.0mm | D3 |
| 1 | Flt | LED_THT:LED_D3.0mm | D1 |
| 1 | Fz | LED_THT:LED_D3.0mm | D5 |
Questions
How big is the ALU PCB?
It measures 132.1 × 86.4 mm and has 2 copper layers, 1.6 mm thick.
What parts does the ALU use?
30 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 ALU KiCad files?
From the DutchMaker/TTL-computer repository on GitHub, at the commit this page was made from: the board is Circuits/KiCad/ALU/ALU.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Can I use the ALU 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 layers149.2 × 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.2 × 52.2 mm

Base promicro
google/mozc-devices
Circuit diagrams and firmware source code for Gboard DIY keyboards
30 parts3kApache-2.0 - 2 layers40.6 × 15.2 mm

- 2 layers270 × 11 mm

Daylight
VoronDesign/Voron-Hardware
Cool Hardware designed by the Voron Design group
30 parts1.1kGPL-3.0 - 2 layers65 × 30 mm

Rgb to hdmi
hoglet67/RGBtoHDMI
Bare-metal Raspberry Pi project that provides pixel-perfect sampling of Retro Computer RGB/YUV video and conversion to HDMI
30 parts1kGPL-3.0 - 2 layers40.5 × 58 mm

Initial v
tenderlove/initial-v
It's a BMW shifter converted to a Bluetooth Keyboard that you use with Vim
30 parts1kApache-2.0 - 2 layers34.3 × 41.8 mm

MotionCubeViewAllForces
hackclub/OnBoard
💡 Join 1,000 teenagers and make your first PCB with a $100 grant!
30 parts915 - 2 layers57.4 × 62 mm

- 2 layers52.1 × 46.8 mm
