Methodology

How the collection was built, and where the raw material lives in the GitHub repository.

How the data was gathered

  1. Find candidate repos: the ulx3s.github.io project list, GitHub-wide searches, and the board lists of awesome-latticeFPGAs (see the surveys below). Each search is recorded with its date and queries.
  2. Clone each chosen repo shallowly (--depth 1) and pin its commit in sources.tsv. Gateware submodules are fetched only when the repo is built around them. Non-gateware files (prebuilt bitstreams, PCB files, datasheets) are deleted locally to save disk; nothing is ever committed to the clones.
  3. Catalogue each repo by reading its Makefiles, constraint files, READMEs, license files and sources: FPGA and size, toolchain, HDL, license, functions, reusable blocks, tests. Facts cite a path at the pinned commit; anything not verified is written unknown. Nothing is built or simulated.
  4. Scan the clones with scripts: every LPF (board, revision, peripherals), testbench heuristics, Makefile test targets, and which repos copy or instantiate each reusable core.
  5. Review the repos with the most reusable gateware in depth (per-block module, ports, primitives, license, what to change for ULX3S).
  6. Publish: all data is JSON in data/; this site is generated from it (make docs). Pages are never edited by hand.

Raw material on GitHub

What Where
Catalogue of every cloned repo data/catalogue.json
Reusable cores and their usage data/cores.json, data/core_usage.json, data/functions.json
Boards data/boards.json
Every LPF in the clones data/lpfs.json
Page sources (guides, surveys, reviews) data/pages/, data/projects/
Pinned upstream commits .claude/memory/sources.tsv, submodules.tsv, history.tsv
Distilled knowledge (board, revisions, toolchain, decisions) .claude/memory/
Workflows and generator scripts .claude/skills/
Change log (what and why) .claude/COMMIT_LOG.md

Surveys

Data views


Table of contents


Back to top

Generated from the JSON in data/ by the scripts in .claude/skills. Facts cite the upstream file at the reviewed commit; verify before reuse.

This site uses Just the Docs, a documentation theme for Jekyll.