Taxonomy

Start articles

conceptbeginnerconfidence 4/5
What is an FPGA

An FPGA is configurable digital logic: the design becomes hardware structure after synthesis, place-and-route and bitstream generation.

fpgadigital-logicbitstream
checklistbeginnerconfidence 4/5
How to choose your first FPGA board

Pick the first board by toolchain access, verified examples, documentation, community help and a realistic first project.

boardsbeginnerselection
comparisonbeginnerconfidence 4/5
Verilog-2001 vs SystemVerilog

Verilog-2001 is widely synthesizable; SystemVerilog adds stronger typing, interfaces, assertions and verification constructs, but tool support varies.

verilogsystemveriloghdl
conceptbeginnerconfidence 4/5
What constraint files are

Constraint files bind logical ports to package pins and define clocks, I/O standards and timing assumptions.

constraintsxdcpcfsdccst
conceptbeginnerconfidence 4/5
What timing means in FPGA

Timing answers whether signals can travel through logic and routing quickly enough for the target clock and I/O constraints.

timingstaclock
conceptintermediateconfidence 4/5
Clock domain crossing

CDC is the problem of safely moving signals between unrelated or differently timed clock domains.

cdcmetastabilityreset
conceptbeginnerconfidence 4/5
From HDL to bitstream

The practical FPGA flow is lint/simulation, synthesis, constraints, place-and-route, timing, bitstream, programming and board validation.

flowsynthesispnrbitstream
toolchain_guidebeginnerconfidence 4/5
What Yosys and nextpnr are

Yosys is an open-source synthesis tool; nextpnr is a portable place-and-route tool supporting several FPGA architectures through device databases.

yosysnextpnropen-source
toolchain_guidebeginnerconfidence 4/5
What Vivado is

Vivado is AMD's FPGA design suite for modern Xilinx/AMD FPGA and SoC families.

vivadoamd-xilinxtoolchain
toolchain_guidebeginnerconfidence 4/5
What Quartus is

Quartus Prime is Intel's FPGA design suite for Intel/Altera FPGA, CPLD and SoC FPGA devices.

quartusintel-fpgatoolchain
toolchain_guidebeginnerconfidence 4/5
What Gowin EDA is

Gowin EDA is the vendor flow for Gowin FPGA families used by Tang and Gowin starter boards.

gowintoolchaintang
board_guidebeginnerconfidence 4/5
Tang Nano 20K: where to start

Start with board recognition, exact device selection, LED example, flash/SRAM programming distinction and board-revision pinout check.

tanggowinbring-up
board_guideintermediateconfidence 3/5
Tang Primer 20K Dock: where to start

Use the Primer 20K docs to identify the core board, dock, exact memory and connector revision before using examples.

tangprimergowin
board_guidebeginnerconfidence 4/5
Arty A7: where to start

Start from Digilent's resource center, select the exact 35T or 100T variant, import constraints and run a simple Vivado design.

arty-a7vivadodigilent
board_guidebeginnerconfidence 4/5
iCEBreaker: where to start

Install the open iCE40 flow, run the LED example, verify PCF constraints and then add Pmod experiments.

icebreakerice40open-source
board_guideintermediateconfidence 3/5
ULX3S: where to start

Start by identifying the ULX3S revision and ECP5 size, then use the documented open ECP5 flow and board-specific constraints.

ulx3secp5litex
conceptbeginnerconfidence 4/5
How to read an FPGA part number

FPGA order codes encode family, density, package, speed grade, temperature range and sometimes feature variants.

part-numbermpndecoder
checklistbeginnerconfidence 4/5
How to verify pinout

Pinout verification means matching board revision, schematic, FPGA package, bank voltage, connector map and constraint file before connecting hardware.

pinoutconstraintsbring-up
troubleshootingbeginnerconfidence 4/5
Common beginner FPGA mistakes

Most beginner failures come from missing constraints, misunderstood clocks, latch inference, multiple drivers, skipped simulation and wrong board variant.

debugbeginnerpitfalls
tutorialbeginnerconfidence 4/5
Verilog simulation: minimal path

A minimal simulation has a DUT, testbench, clock/reset generation, stimulus, assertions or checks, and waveform capture only when needed.

simulationverilogtestbench
toolchain_guidebeginnerconfidence 5/5
What Verilator is

Verilator compiles synthesizable Verilog/SystemVerilog into C++ or SystemC models for fast simulation and linting.

verilatorsimulationlint
toolchain_guidebeginnerconfidence 5/5
What GHDL is

GHDL is an open-source VHDL simulator and synthesis-related tool used in VHDL verification and open FPGA flows.

ghdlvhdlsimulation
toolchain_guideintermediateconfidence 5/5
When cocotb is useful

cocotb lets Python testbenches drive HDL simulators, which is useful for protocol tests, scoreboards and integration-style verification.

cocotbverificationsimulation
conceptintermediateconfidence 5/5
Formal verification: minimal explanation

Formal verification proves properties over all possible inputs within a bounded or inductive model instead of checking selected simulation traces.

formalsbyassertions
protocol_notebeginnerconfidence 4/5
UART in FPGA projects

UART is the simplest board-visible debug channel, but it still needs clock-derived baud timing, synchronizers and a testbench.

uartdebugprotocol
protocol_notebeginnerconfidence 4/5
Pmod connectors

Pmod is a small expansion connector ecosystem; verify voltage, pin mapping and peripheral protocol before attaching modules.

pmodconnectorconstraints
project_templateintermediateconfidence 4/5
RISC-V softcore on FPGA

A RISC-V softcore project needs enough logic, memory, a debug path, firmware build flow and a board-specific memory/IO map.

risc-vsoftcoresoc
checklistprofessionalconfidence 4/5
Linux-on-FPGA board requirements

Linux-capable FPGA projects need a CPU subsystem or large softcore, external memory, storage or boot media, console and a reproducible software build.

linuxsocmemory
vendor_noteintermediateconfidence 4/5
FPGA Board Repository analysis for fpga.camp

The reference is valuable for JSON records, schema validation, part decoding, filters, comparison and PR workflow; fpga.camp adds multilingual knowledge graph behavior.

boardsdata-modelmoderation

Glossary

FPGA

Field-programmable gate array: configurable digital logic fabric programmed after manufacturing.

CPLD

Programmable logic device usually smaller and more deterministic than an FPGA.

LUT

Look-up table used as a basic FPGA logic element.

Flip-flop

Sequential storage element usually clocked by a clock edge.

BRAM

Dedicated block memory inside FPGA fabric.

DSP block

Dedicated arithmetic block for operations such as multiplication and accumulation.

PLL

Clock management block used to generate or condition clocks.

Bitstream

Configuration data loaded into an FPGA to realize a design.

Synthesis

Conversion of HDL into a gate-level or technology-mapped representation.

Place-and-route

Mapping logic to physical locations and routing signals between them.

Static timing analysis

Timing analysis that checks paths against constraints without dynamic simulation.

Slack

Timing margin between required and actual path timing.

CDC

Clock domain crossing; transfer of signals between different clock domains.

Metastability

Unstable state of a sequential element when setup or hold assumptions are violated.

Constraint file

File describing pin assignments, clocks, I/O standards and timing constraints.

XDC

AMD/Xilinx Design Constraints format used by Vivado.

SDC

Synopsys Design Constraints format used by multiple FPGA tools.

PCF

Physical constraints format commonly seen in open iCE40 flows.

QSF

Quartus Settings File used in Intel FPGA projects.

CST

Constraint format used in Gowin FPGA projects.

Pmod

Small expansion connector ecosystem popular on educational FPGA boards.

FMC

FPGA Mezzanine Card connector standard for expansion modules.

JTAG

Debug and programming interface used by many FPGA boards.

UART

Asynchronous serial interface often used for simple board debug.

SPI

Synchronous serial interface commonly used for flash and peripheral chips.

I2C

Two-wire serial bus often used for low-speed control devices.

AXI

AMBA interconnect protocol family widely used in SoC FPGA designs.

Wishbone

Open interconnect bus used in many open-source FPGA SoC projects.

Softcore CPU

Processor implemented in FPGA fabric rather than as hardened silicon.

RAG

Retrieval-augmented generation; answering with retrieved source-backed context.

KB articles and catalog records use sources, verification dates, and confidence levels. Data policy