Skip to main content

An open source FPGA

Project description


Build Status

kFPGA is an opensource platform for creating and programming FPGA cores.


Using pip

python3 -m pip install kfpga

From source

git clone
python3 kfpga/ install


Creating a new kFPGA core

First, create the kFPGA core

kfpga-creator createcore \
    --width 5 \
    --height 5 \
    --io 4 \
    --clocks 1 \
    --sets 1 \
    --resets 1 \
    --enables 1 \
    --interconnect_width 10 \
    --le 4 \
    --lut 4 \

Then, you can generate the RTL of the core like this

kfpga-creator generatertl \


kFPGA cores can be implemented on FPGA for testing purpose, as an ASIC or integrated in a SoC.



kFPGA cores are programmed with the kfpga-programmer command



Currently, the architecture of kFPGA core is very simple: only LUTs and interconnect. The following functionalities are planned:

  • DSP blocks
  • memory blocks
  • carry chain
  • support for generated clock, set, reset and enable signals

Project details

Release history Release notifications

This version


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for kfpga, version 0.0.1
Filename, size File type Python version Upload date Hashes
Filename, size kfpga-0.0.1-py3-none-any.whl (56.7 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size kfpga-0.0.1.tar.gz (15.5 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page