

Shifter
Homebrew discrete logic CPU
- Size
- 100 × 100 mm
- Copper layers
- 4
- Thickness
- 1.61 mm
- Parts
- 83
- Nets
- 330
- Pads
- 1,290
- Tracks, vias
- 2,321, 284
- Pours
- 7
- Routed
- Yes
- KiCad
- KiCad 9.0 (file 20241229)
- Created
- 27 Feb 2023
- Updated
- 28 Dec 2025
Overview
Shifter is an open-source printed circuit board by bcrist, from the bcrist/vera repository on GitHub, published under the MIT licence. It is a 4-layer board of 100 × 100 mm with 83 parts on 330 nets, routed with 2,321 tracks and 284 vias.
It is built around the 74LVC2G34GW, 74LVC541AD and AP62300TWU, with the 74LVC138AD, 74CBTLV16212PAG and TLV77318PDBV among its other parts. Its parts include 46 capacitors, 22 ICs, 8 connectors, 5 resistors and 1 transistor.
Main components
874LVC2G34GW
SOT-363-40℃~+125℃ 1.65V~5.5V 2 2 2.5ns@3.3V,50pF 24mA 24mA 4uA 74LVC Power-off isolation、Level shifting Schmitt trigger Unidirectional SOT-363 Buffers, Drivers, Receivers, Transceivers ROHSMDDBuffers, Drivers, Receivers, Transceivers74LVC541AD
SO-20-300mil-40℃~+125℃ 1 1.2V~3.6V 2.9ns@3.3V,50pF 24mA 24mA 40uA 74LVC 8 Schmitt trigger Tri-State Unidirectional SO-20-300mil Buffers, Drivers, Receivers, Transceivers ROHSNexperiaBuffer/Driver/TransceiverAP62300TWU
TSOT-26-40℃~+125℃ 1 155uA 3A 4.2V~18V 750kHz 763mV~7V Adjustable Buck Buck Built-in Yes TSOT-26 DC-DC Converters ROHSDiodes IncorporatedDC-DC Converters74LVC138AD
-- Signal Switches, Multiplexers, Decoders ROHSNexperiaSignal Switches, Multiplexers, Decoders74CBTLV16212PAG
TSSOP-56-6.1mm-40℃~+85℃ 0.25ns@3.3V,50pF 10uA 2.3V~3.6V 74CBTLV Output enable high-impedance、Power-off protection、Break-before-make function Single Supply TSSOP-56-6.1mm Signal Switches, Multiplexers, Decoders ROHSRenesas ElectronicsSignal Switches / Encoders & Decoders / MultiplexersTLV77318PDBV
SOT-23-5Over Current Protection、Short Circuit Protection、Thermal Shutdown、Enable control、Input undervoltage protection、Output discharge、Built-in soft start SOT-23-5 Voltage Regulators - Linear, Low Drop Out (LDO) Regulators ROHSTexas InstrumentsUncategorisedMMST3904
SOT-323Bipolar (BJT)hongjiachengNRS5040T3R3NMGJ
SMD,4.9x4.9mm27mΩ 3.3A 3.3uH 4A ±30% SMD,4.9x4.9mm Power Inductors ROHSTaiyo YudenPower Inductors
README
readme.mdHomebrew discrete-logic CPU
"I call it Vera" - Jayne Cobb
Specs
- up to 20 MHz clock
- 4-stage pipeline (runs 4 threads simultaneously)
- 32x 32b general purpose registers (stack addressed)
- 32b ALU (2x L4C381)
- 32b logarithmic shifter
- 16b * 16b -> 32b single cycle multiplier (32b * 32b -> 32b in 5 cycles)
- 32b popcount/extension/truncation unit
- 32b virtual addresses
- 16x4x128 entry, 2 way set-associative, software filled TLB
- 4 KiB pages
- 64 MiB physical address space (24b address x 32b data)
- up to 16 MiB SRAM
- up to 16 MiB I/O space
- up to 32 MiB pipeline-private, zero-wait SDRAM
Design Constraints
Since everyone in the homebrew CPU community has their own ideas of what kinds of technology are acceptable to use, here are my self-imposed restrictions and allowances:
- Backplane/card cage construction is preferred
- This facilitates building and testing smaller parts separately
- Blinkenlights are cool, but not particularly interesting at MHz frequencies
- 3.3V LVTTL/LVCMOS signalling is preferred
- Backplane signals must not exceed 3.3V (ignoring overshoot transients)
- 5V TTL outputs are allowed within a board, when paired with an 5V-tolerant receiver
- Differential LVPECL/LVDS signalling is allowed for clocks
- All boards should locally generate their own Vcc from a common 12V supply distributed by the backplane
- SMD footprints are fine
- >= 0.5mm pitch for QFP/QFN/(T)(S)SOP
- >= 0.8mm pitch for BGA
- Modern SRAM, dual-port SRAM, and SDRAM is fine to use
- Dedicated adder/multiplier/ALU ASICs are allowed
- But "not quite microprocessor" parts like Am2901 or Am29116/7 are not allowed (except in peripheral devices)
- FPGAs are not allowed
- Designing with HDLs feels more like work than fun for me, and all of the FPGA toolchains make me want to pull my hair out
- CPLDs and other programmable logic are allowed only if I have created the entire programming toolchain myself
- Designing for CPLDs (without HDLs) is extremely similar to designing for discrete logic, but simplifies board layout significantly, and often provides better timing characteristics
- Microcontrollers or other ASICs are allowed for bootstrapping or debugging purposes, or within peripheral devices
- Absolutely none within the data or control paths of the CPU itself
Parts
83| Qty | Value | Footprint | References |
|---|---|---|---|
| 37 | 100 nF | fp:C0402 | C10, C11, C12, C13, C14, C15, C16, C17, C18, C19, C20, C21, C22, C23, C24, C25 +21 |
| 6 | JTAG | fp:Trident | J3, J4, J5, J6, J7, J8 |
| 6 | LC4032ZE | fp:TQFP-48 (7mm) | U6, U7, U16, U20, U21, U22 |
| 5 | 22 µF | fp:C0805 | C1, C4, C5, C6, C7 |
| 5 | 74LVC138 | fp:TSSOP-16 | U5, U9, U11, U12, U13 |
| 4 | 74CBTLV16212 | fp:TSSOP-56 | U14, U15, U18, U19 |
| 2 | fp:TX25-120P-LT-H1E | J1, J2 | |
| 2 | 100 nF | fp:C0805 | C45, C46 |
| 2 | 74LVC2G34 | fp:SOT323-6 | U8, U10 |
| 1 | 0 | fp:R0402 | R5 |
| 1 | 0.015 | fp:R1206 | R3 |
| 1 | 1.6 k | fp:R0402 | R4 |
| 1 | 10 k | fp:R0402 | R2 |
| 1 | 10 nF | fp:C0402 | C3 |
| 1 | 33.2 k | fp:R0402 | R1 |
| 1 | 330 nF | fp:C0402 | C2 |
| 1 | 74LVC541 | fp:TSSOP-20 | U4 |
| 1 | AP62300TWU | fp:SOT23-6 | U1 |
| 1 | EMC1702 | fp:QFN-12 (4mm x 4mm) | U2 |
| 1 | LC4128ZC | fp:BMC-149 | U17 |
| 1 | MMST3904 | fp:SOT323 | Q1 |
| 1 | NRS5040T3R3NMGJ | fp:NRS5040 | L1 |
| 1 | TLV77318PDBV | fp:SOT23-5 | U3 |
Questions
How big is the Shifter PCB?
It measures 100 × 100 mm and has 4 copper layers, 1.61 mm thick.
What parts does the Shifter use?
83 parts, built around the 74LVC2G34GW, 74LVC541AD, AP62300TWU and 74LVC138AD. 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 Shifter KiCad files?
From the bcrist/vera repository on GitHub, at the commit this page was made from: the board is boards/kicad/shifter/shifter.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Can I use the Shifter design in my own project?
Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).
More from bcrist/vera
3- 4 layers100 × 100 mm

- 4 layers100 × 100 mm

- 4 layers100 × 100 mm

Similar boards
- 2 layers230.4 × 233.5 mm

- 2 layers30 × 75 mm

- 2 layers24 × 38 mm

BSH Board
Bouni/BSH-Board
A board that interfaces the DBUS of several home appliances and brings them into Home-Assitant via ESPHome
75 parts65 - 4 layers99.1 × 91.4 mm

- 4 layers100 × 100 mm

- 4 layers100 × 50 mm

- 2 layers38.9 × 48.9 mm

- 4 layers100 × 100 mm

ModuCard mms extension pdw board
X-Lemon-X/ModuCard-mms-extension-pdw-board
This repository provides a template design for creating modules in the ModuCard system. Each module is designed to seamlessly interface with the ModuCard backplane, enabling a modular and expandable robotics platform.
161 parts