$ show litex-hub/litex-boards
This repository provides board support packages for the LiteX open-source FPGA SoC builder. It contains over 150 platform definitions (pinouts, connectors, toolchain setup) and corresponding target scripts that assemble a complete SoC (CPU, memory, peripherals) for each FPGA board. The architecture is a collection of Python modules organized into `litex_boards/platforms/` and `litex_boards/targets/`, with each target being a standalone script that can be invoked via `python -m litex_boards.targets.<board> --build --load`. The system supports a wide range of FPGA families (Xilinx, Lattice, Intel/Altera, Gowin, Efinix, CologneChip) and integrates with the broader LiteX ecosystem (LiteDRAM, LiteEth, LitePCIe, etc.) for memory controllers, networking, and high-speed interfaces. Key entry points are the `main()` functions in each target file, which use `LiteXArgumentParser` for CLI argument handling and `Builder` for bitstream generation. The repository is community-maintained under litex-hub and includes CI scripts for consistency checks, board inventory generation, and regression tests.
The LLM identified 3 files worth highlighting for reuse:
A standalone Python script that audits all target files for consistent CLI option usage (e.g., default `--eth-ip`, mutual exclusion between `--with-etherbone` and `--eth-dynamic-ip`). It demonstrates a reusable pattern for enforcing conventions across a large collection of similar configuration files, and could be adapted for other multi-target projects.
Provides `OnChipOscillator` and `MFIOBasic` hardware modules for Intel/MicroFPGA boards. These are self-contained LiteX modules that abstract common on-chip oscillator and basic I/O functionality, reusable across multiple board targets without modification.
Tests the flash image building process for Lattice iCE40, Muselab iCESugar, and Fomu boards. It validates the concatenation of bitstream and BIOS with proper padding and offset, demonstrating a reusable testing pattern for any FPGA board that requires custom flash image assembly.