

Ctrl rom ctrl
All material related to the 16bcfs project
- Size
- 88.9 × 43.2 mm
- Copper layers
- 4
- Thickness
- 4.69 mm
- Parts
- 65
- Nets
- 124
- Pads
- 434
- Tracks, vias
- 1,365, 267
- Pours
- 759
- Routed
- Yes
- KiCad
- KiCad 7 (file 20221018)
- Created
- 2 Nov 2023
- Updated
- 20 Apr 2025
Overview
Ctrl rom ctrl is an open-source printed circuit board by eryjus, from the eryjus/16bcfs repository on GitHub. It is a 4-layer board of 88.9 × 43.2 mm with 65 parts on 124 nets, routed with 1,365 tracks and 267 vias.
It is built around the 74HC193D, 74HC157D and 74HC08D, with the 74HC00D, 74HC03D and 74HC04D among its other parts. Its parts include 21 capacitors, 19 resistors, 19 ICs and 6 connectors.
Main components
974HC193D
SO-16-40℃~+125℃ 1 18ns@6V 2V~6V 4 49MHz 500mW 74HC Asynchronous Divide-by-2 Reset function、Synchronous counting、Asynchronous parallel load、Multi-mode counting Rising Edge Synchronous Up Counter、Down Counter SO-16 Counters, Dividers ROHSNexperiaCounters / Dividers74HC157D
SO-16-40℃~+125℃ 10ns@6.0V,50pF 160uA 2V~6V 5.2mA 5.2mA 74HC 8/4 Multiplexer Single Supply SOIC-16 Signal Switches, Multiplexers, Decoders ROHSNexperiaSignal Switches / Encoders & Decoders / Multiplexers74HC08D
SOP-14-40℃~+125℃ 1.5V~4.2V 1.9V、3.7V、5.2V 100mV、400mV 2 27ns@4.5V,50pF 2V~6V 2uA 4 5.2mA 5.2mA 500mV~1.8V 74HC Series AND Gate SOIC-14 Logic Gates ROHSNexperiaLogic Gates74HC00D
SOP-14-40℃~+125℃ 1.5V、3.15V、4.2V 1.9V、3.7V、5.9V 100mV、400mV、400mV 2 2V~6V 4 40uA 5.2mA 5.2mA 500mV~1.8V 74HC Series 7ns@6V,50pF NAND Gate SOIC-14 Logic Gates ROHSNexperiaLogic Gates74HC03D
SOIC-14-40℃~+125℃ 1.5V~4.2V 16ns@6V,50pF 2 2V~6V 2uA 4 400mV 5.2mA 500mV~1.8V 74HC Series NAND Gate SOIC-14 Logic Gates ROHSNexperiaLogic Gates74HC04D
SOP-14-40℃~+125℃ 1 1.5V~4.2V 1.9V、3.7V、5.2V 100mV、400mV、400mV 14ns@6V,50pF 2V~6V 2uA 5.2mA 5.2mA 500mV~1.8V 6 74HC SOIC-14 Inverters ROHSNexperiaInverters74HC165D
SO-16-40℃~+125℃ 1 28ns@6V,50pF 2V~6V 35MHz 500mW 74HC 8 Parallel or Serial to Serial SOIC-16 Shift Registers ROHSNexperiaShift Registers74HC32D
SOP-14-40℃~+125℃ 1.5V~4.2V 1.9V、4.4V、5.9V 100mV、400mV、400mV 2 2V~6V 2uA 4 5.2mA 5.2mA 500mV~1.8V 6ns@6V,50pF 74HC Series OR Gate SOIC-14 Logic Gates ROHSNexperiaLogic Gates74HC74D
SOIC-14-40℃~+125℃ 1 15ns 2 2V~6V 3.5pF 37ns@6V,50pF 3ns、3ns、3ns 40uA 5.2mA 5.2mA 74HC Series 82MHz Asynchronous Complementary D-Type Rising Edge Set and Reset SOIC-14 Flip Flops ROHSNexperiaFlip Flops
README
README.md16-Bit Computer From Scratch
This repository contains the complete works associated with the 16-Bit Computer From Scrath (16bcfs) project.
Videos
I am documenting my 16-Bit Computer build in video form. You can find the entire playlist here.
License
See LICENSE.md.
Build System
I use tup as my primary build system. I usually will wrap tup in make commands. You can find tup here. I simply find tup to more reliable detect changed sources with less work.
Qt6_DIR Environment Variable
The Qt6_DIR Environment Variable needs to point to the installation location of Qt6, for example ~/Qt/6.6.0/gcc_64/. Your installation location may be different, so copy-and-paste is not advised.
EEPROM Programmer
I do not have a commercial EEPROM programmer. I use the TommyPROM programmer. You can find all the relevant information on TommyPROM here. In Linux, I use minicom as the interface. Hint: use sudo minicom -s to set up the defaults.
Parts
65| Qty | Value | Footprint | References |
|---|---|---|---|
| 19 | 0u1 | Capacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolder | C1, C2, C3, C4, C11, C12, C13, C14, C15, C16, C17, C18, C19, C20, C21, C22 +3 |
| 18 | 0R | Resistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolder | R16, R17, R18, R19, R20, R21, R22, R23, R27, R28, R29, R30, R31, R32, R33, R34 +2 |
| 5 | 74HC193 | Package_SO:SOIC-16_3.9x9.9mm_P1.27mm | U4, U15, U16, U17, U18 |
| 4 | 74HC157 | Package_SO:SOIC-16_3.9x9.9mm_P1.27mm | U11, U12, U13, U14 |
| 3 | 74HC08 | Package_SO:SOIC-14_3.9x8.7mm_P1.27mm | U1, U21, U22 |
| 2 | 47u | Capacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolder | C24, C25 |
| 2 | 74HC00 | Package_SO:SOIC-14_3.9x8.7mm_P1.27mm | U6, U7 |
| 2 | Power | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | J5, J6 |
| 1 | 33R | Resistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolder | R26 |
| 1 | 74HC03 | Package_SO:SOIC-14_3.9x8.7mm_P1.27mm | U3 |
| 1 | 74HC04 | Package_SO:SOIC-14_3.9x8.7mm_P1.27mm | U19 |
| 1 | 74HC165 | Package_SO:SOIC-16_3.9x9.9mm_P1.27mm | U9 |
| 1 | 74HC32 | Package_SO:SOIC-14_3.9x8.7mm_P1.27mm | U23 |
| 1 | 74HC74 | Package_SO:SOIC-14_3.9x8.7mm_P1.27mm | U2 |
| 1 | Control ROM Address | Connector_PinHeader_2.54mm:PinHeader_1x16_P2.54mm_Vertical | J2 |
| 1 | Instruction | Connector_PinHeader_2.54mm:PinHeader_1x16_P2.54mm_Vertical | J1 |
| 1 | Raw Address for Pgm ROM | Connector_PinHeader_2.54mm:PinHeader_1x16_P2.54mm_Vertical | J3 |
| 1 | Signal Header | Connector_PinHeader_2.54mm:PinHeader_1x16_P2.54mm_Vertical | J4 |
Questions
How big is the Ctrl rom ctrl PCB?
It measures 88.9 × 43.2 mm and has 4 copper layers, 4.69 mm thick.
What parts does the Ctrl rom ctrl use?
65 parts, built around the 74HC193D, 74HC157D, 74HC08D and 74HC00D. 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 Ctrl rom ctrl KiCad files?
From the eryjus/16bcfs repository on GitHub, at the commit this page was made from: the board is kicad/projects/16bcfs/ctrl-rom-ctrl/ctrl-rom-ctrl.kicad_pcb and its schematic kicad/projects/16bcfs/clock-module/adjustable.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Ctrl rom ctrl design in my own project?
Its repository states no licence, so its author keeps all rights: ask eryjus before reusing the design.
More from eryjus/16bcfs
11- 4 layers238.8 × 236.2 mm

- 4 layers86.5 × 43.2 mm

- 4 layers119.4 × 485.1 mm

- 4 layers43.2 × 21.6 mm

- 2 layers42.2 × 14.2 mm

- 4 layers43.2 × 40.6 mm

- 2 layers21.8 × 14.2 mm

- 2 layers11.7 × 14.2 mm

- 2 layers20.3 × 43.2 mm

- 2 layers20.3 × 7.6 mm

- 2 layers21.6 × 15.2 mm

Similar boards
- 2 layers178 × 711 mm

- 2 layers200 × 150 mm

- 2 layers120 × 98 mm

- 2 layers213.1 × 129 mm

- 2 layers297 × 210 mm

- 4 layers100 × 100 mm

- 2 layers245.1 × 160 mm

8-Bit CPU 32k
slu4coder/Minimal-64x4-Home-Computer
My DIY TTL home computer with VGA and PS/2 and 4x the processing power of a Commodore C64 or Apple II.
139 parts326 - 2 layers191.8 × 121.3 mm

8-Bit CPU 32k
slu4coder/Minimal-UART-Computer-1-2
Legacy: Version 1 and 2 of my TTL-only CPU featuring UART I/O, an expansion port, 512KB SSD at up to 10MHz clock speed
109 parts184