Lx32

potatocpu·lx32·pcb/lx32-fpga.kicad_pcb

Lx32 PCB layout, top view — open source FPGA board by potatocpu

About the Lx32 PCB

Lx32 is an open source FPGA PCB design by potatocpu, published on GitHub. It is a 4-layer board measuring 80 × 60 mm, with 49 components from 25 distinct parts.

Its main chip is the ICE40HX4K-TQ144, from the FPGA family. Other key parts include the AP2112K-3.3, W25Q32JVSS, CH340C, AP2112K-1.2 and 23K256. By type, the board carries 17 capacitors, 7 test points, 7 resistors, 6 ICs, 2 connectors and 2 diodes.

From the project

A from-scratch computing platform: custom processor, LLVM compiler backend and custom hardware.

I built a computer from scratch because ChatGPT told me "no hay huevos." So here we are.

Custom processor, custom PCB, custom compiler. The whole thing.

Zero violations. Zero unconnected items. I cried a little.

(also this is the 5th time I rewrote this README. if it still looks AI-generated I give up)

lx32 is a 32-bit CPU with a custom instruction set, running on a custom PCB, compiled by a custom LLVM backend. You can write C, compile it, and it runs on this thing.

Lx32, from the project README
From the project README

Main components on the Lx32

Lx32 bill of materials (BOM)

49 components, 25 distinct parts — part numbers from the project's BOM.

QtyPartRefs
1
ICE40HX4K-TQ144
U1
1
AP2112K-3.3
U2
1
W25Q32JVSS
U3
1
CH340C
U4
1
AP2112K-1.2
U5
1
23K256
U6
1
Crystal
Y1
1
USB_C_Receptacle_USB2.0_14P
J1
1
VGA_HDR
J2
3
Fiducial
FID1, FID2, FID3
4
MH_M3
MH1, MH2, MH3, MH4
1
VCC_3V3
TP1
1
VCC_1V2
TP2
1
GND
TP3
1
VBUS
TP4
1
USB_DP
TP5
1
USB_DM
TP6
1
CLK25
TP7
2
LED
D1, D2
12
100nF
C1, C2, C3, C4, C5, C6, C7, C8 +4
Show 5 more
QtyPartRefs
4
10uF
C13, C14, C15, C16
1
100nF
C21
2
5.1k
R1, R2
2
100R
R3, R4
3
68R
R5, R6, R7

Lx32 design files

The KiCad project lives in the potatocpu/lx32 repository on GitHub; these links point at the commit this page was built from.

Lx32: common questions

What microcontroller does the Lx32 use?

The Lx32 is built around the ICE40HX4K-TQ144, from the FPGA family.

How big is the Lx32 PCB?

The Lx32 measures 80 × 60 mm, has 4 copper layers and is 1.6 mm thick.

How many components are on the Lx32?

49 components, from 25 distinct parts, with part numbers taken from the project's own BOM. The full bill of materials is listed on this page.

Where can I download the Lx32 design files?

From the potatocpu/lx32 repository on GitHub, which has the KiCad layout, the schematic and the BOM; the links under Design files point to each one.

Can I use the Lx32 design in my own project?

The repository has no license, so all rights stay with potatocpu. Use it as a reference, and ask the author before reusing the design.

Can I test firmware for the Lx32 without the hardware?

Yes. HardLabs builds a simulation of the board from its netlist and BOM, so you can run and debug FPGA firmware against it before you order a PCB.

Similar boards